This has never seemed like such a clear distinction to me. A language is essentially just an instruction set for a compiler.
This has never seemed like such a clear distinction to me. A language is essentially just an instruction set for a compiler.
It being a compiler problem, you can just accept the performance/size penalty and leave your code as is, but hope that in the future it will eventually change and the eventually really smart compiler will accept your current code as is and produce output without the penalty.
Language problem would means you have to rewrite it differently.
And as other comments call out, it is important to not conflate the two. A language issue is one that can't be easily fixed without breaking backwards compatibility. Compiler optimizations can be made (and is done all the time) without breaking the language.