On Wed, Aug 04, 2021 at 02:00:42PM +0100, Richard Earnshaw wrote: > We don't want to have to resort to macros. Not least because at some > point we want to replace the content of arm_neon.h with a single #pragma > directive to remove all the parsing of the header that's needed. What's > more, if we had a suitable pragma we'd stand a fighting chance of being > able to extend support to other languages as well that don't use the > pre-processor, such as Fortran or Ada (not that that is on the cards > right now).
So how do you want to handle constants-that-are-not-yet-constant, say before inlining? And how do you want to deal with those possibly not ever becoming constant, perhaps because you used a too low "n" in -On (but there are very many random other causes)? And, what *is* a constant, anyway? This is even more fuzzy if you consider those other languages as well. (Does skipping parsing of some trivial header save so much time? Huh!) Segher