Lexilla doesn't create lexers itself at load time
AFAICT from a quick look Geany only calls `CreateLexer()` when the filetype of a Scintilla editor widget is set, so only as needed. So if Lexilla has no globals (or static members, same thing for these purposes) with non-trivial constructors then little or no code will be paged in at startup to initialise them.
The initialization code for all the lexer modules should be collected into one initialization segment or similar
And as you say its all dependent on what the compiler/linker does, which may have changed since I looked in detail. To be clear my "experience" of this level of detail is only in one case where it was a problem, in all other cases it has never mattered so it hasn't been examined in detail.
But the point is to note that it is never safe to assume it works like C!!!! :grin: