Why is C90 enforced in KDE?

Thomas L├╝bking thomas.luebking at gmail.com
Mon Dec 7 15:33:37 GMT 2015

On Montag, 7. Dezember 2015 15:54:40 CEST, Luca Beltrame wrote:

> Given you've said this multiple times, with my packager hat on I'll just 
> mention this: just don't make it harder *for us* to work just because 
> you're targeting another platform.

I actually don't think this related at all.

Compiling C99 (beyond some minor additions like the comments, but that's not guaranteed to be the only usage) on MSVC is a general problem to begin with (if you care about elder versions of what MS calls a "compiler"), so Boudewijn's primary problem is the usage of flex/yacc to begin with and he'll prefer pre-translated C-fixed-to-90 (hello sed ;-) OR flex/yacc being translated to *.cpp (where "i build every shit and just guess what the developer meant" MSVC still sucks, but not that much)

Distros and notably self-builders would probably prefer such as well (less build time dependency, yeah!), so there's no conflict.

Otoh, developers will prefer to have flex/yacc in the CI and will require a cmake rule to include *.l & *.y in the source list (so it's regenerated on local changes) but otherwise there's (afaik) no strong reason to not simply ship the pre-translated sources (along the lex sources which are usually not invoked on build)

The situation is (afaik) slightly different w/ *.moc since you might run into "the moc that generated this header is too old" issues (latter happens, so we can/should not ship pre-built mocs; but I'm not sure whether such problems can show up with lex as well)

Thomas, Baseball cap - I've not hats.

More information about the kde-core-devel mailing list