diff --git a/modules/juce_audio_processors/processors/juce_AudioProcessor.cpp b/modules/juce_audio_processors/processors/juce_AudioProcessor.cpp index 6242374cea..866d8f6110 100644 --- a/modules/juce_audio_processors/processors/juce_AudioProcessor.cpp +++ b/modules/juce_audio_processors/processors/juce_AudioProcessor.cpp @@ -682,6 +682,14 @@ void AudioProcessor::addParameter (AudioProcessorParameter* p) // if you're using parameter objects, then you must not override the // deprecated getNumParameters() method! jassert (getNumParameters() == AudioProcessor::getNumParameters()); + + // check that no two parameters have the same id + #ifdef JUCE_DEBUG + auto paramId = getParameterID (p->parameterIndex); + + for (auto q : managedParameters) + jassert (q == nullptr || q == p || paramId != getParameterID (q->parameterIndex)); + #endif } void AudioProcessor::suspendProcessing (const bool shouldBeSuspended)