Sigh ---- i just figured out (by accident) that the solution is to put the left curly brace on the same line as the conditional.
Since I don't generally write my code that way (I don't understand why anyone does, actually), it didn't occur to me that this would be a syntax issue.

So, for others who may run into this --- instead of writing

!contains(HEADERS, bar.h)
{
}

you have to write

!contains(HEADERS, bar.h){
}



Yuk!