2 ms·
> The C++ compiler does exceptionally few transformations that can change the behavior of a well-formed program. So all of those conversions between numeric, p
by notacoward 8y ago
> The C++ compiler does exceptionally few transformations that can change the behavior of a well-formed program.
So all of those conversions between numeric, pointer, or string-ish types are just figments of my imagination? The rules for which constructor to use, which template or overload to apply, aren't a form of inference? "Auto" doesn't exist? Maybe there's some class of transformations and some definition of "well formed" for which your statement is true, but I can't imagine what those are.
- ncmncm 8y agoThose are all things you asked to have. The topic was things you coded, but that the compiler did not generate code to do. To be precise: by the object model, a constructor and destructor were supposed to be called. The compiler, by special dispensation, avoided calling them. You may complain that the object model is whatever the standard says the compiler must do, in which case the statement would be vacuous: no transformations.