Originally posted by pal666
View Post
your wording is bad. module system does not "use" even compiler parser, module is at least preparsed. but it can export macros for example.
template instantiation in any template heavy code takes orders of magnitude more time.
and (fast)code generation also takes orders of magnitude more time.
the issue with preprocessor is that it is not c++, it is just some dumb text replacement which knows nothing about your program.
contracts is largest feature adopted by c++20 so far. contracts are assert on steroids, they complement testing. and they affect code generation (they give information to compiler)
Comment