On Fri, Jul 05, 2024 at 02:51:09PM -0400, Taylor Blau wrote: > But ebd2e4a13a has a typo where instead of writing: > > ifneq ($(or ($filter ...),$(filter ...)),) > > we wrote: > > ifneq (($or ($filter ...),$(filter ...)),) Good catch. Your fix is obviously the right thing. But one thing that puzzled me... > Causing our Makefile (when invoked with DEVELOPER=1, and a sufficiently > recent compiler version) to barf: > > $ make DEVELOPER=1 > config.mak.dev:13: extraneous text after 'ifneq' directive > [...] > > Correctly combine the results of the two "$(filter ...)" operations by > using "$(or ...)", not "$or". ...why don't I see this error? Based on the bug, I think that we'll always pass -Wpedantic, even for old compilers (because our weird "or" will never be the empty string). So I could understand if the symptom was then that when you have an old compiler, we feed it -Wpedantic and it complains (though the fact that nobody noticed such a behavior makes me wonder if we even care about such old compilers now?). But why does make complain here only sometimes? Does it depend on the version of make? -Peff