по кодогенерации - очень похоже. с каждой отсечкой улучшается lto -
эта оптимизация активно развивается. Эффект в том что со свежими
ветками транка добавляется поддержка новых фич С++ стандарта и это
находит отражение в stl. а это эффективность уже кода который
человек пишет. как пример - раньше многие эффективные алгоритмы и
методы програмирования были в boost, теперь в многом это есть в
stl. к примеру написать простую консоль для микроконтроллера,
которая будет работать через любую последовательную дырку контролдлера - один шаблончик которому автоматом добавляются обработчики хелки и прочие бантики. на С я бы закопался все это автоматизировать да и код изз этого скорее всего на выходе был бы хуже. сложные объекты с большим количеством связей в рукопашную на С - это глупо и ненадежно.