> Ok, I made a script to grep all the `#define` and `#undef` symbols in 
> `config.h` and Geany appears to be fairly careful using `ifdef` `ifndef` or 
> `defined()`,

Good :)

> Scintilla has at least one place where it compares a symbol to 0, but I think 
> its its own internal one so fine.

Fine as well.

> But ctags!!!! `if HAVE_FOO && HAVE_BAR && HAVE_BLETCH` all over the place. 
> This relies on the identifiers having been defined `1` or it would become `if 
> && &&` after the defined but empty identifiers were substituted. Sigh!!!

Feel like making a PR upstream? :)

> So I guess we have no choice but to continue defining `1` until C23 when 
> `true` will be accepted :-)

Well meson would just emit an empty `#define FOO` if you use 
`cfg_data.set('FOO', true)` -- e.g. when using a boolean, it emits either an 
empty `#define` or a `#undef`.  So kinda irrelevant :)

-- 
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/pull/3642#issuecomment-1775104024
You are receiving this because you are subscribed to this thread.

Message ID: <geany/geany/pull/3642/[email protected]>

Reply via email to