Odd syntax error in juce_AudioProcessor.cpp

Hey guys -

Not sure exactly why this is a syntax error, but on line 693 of juce_AudioProcessor.cpp I get:


for (auto q : manageParameters)
    jassert(q == nullptr || q = p || paramId != getParameterID(q->parameterIndex));

Compile time Error: syntax error ‘}’

When compiling (the _sharedCode):
Windows VS2015
VC140 and x64
linking: static
and standard multiThread Debug Runtime

Project was built (and rebuilt just now) with a recent (though not quite the latest) ProJucer.
This is in a plugin (which also happens to be a host, though I’m not sure that should matter).

In any event … adding { } around the jassert fixes the issue, so thought you might want to know. Perhaps someone even knows why the error comes up?

This doesn’t happen in other plugins that have the same configuration … so I’m totally stumped why the error comes up on this one project.

I think several people reported this, and it was fixed some time ago. Did you use the latest JUCE release?

Well, I’m not using the dev branch, just the standard release, but up to date.

I’m leery of using the dev branch since I release often and want to use the latest “stable” branch.

If it’s advisable to use it though, then I can start.

We also fixed it on master and in the downloads.


Ah, good, looks like I have it now.