Какие флаги нужны мне в командной строке, чтобы отключить оптимизацию возвращаемого значения, автоматически включенную компилятором g++?
Ответ 1
-fno-elide-constructors
Стандарт С++ позволяет реализации опускать создание временного объекта, который используется только для инициализации другого объекта того же типа. Указание этого параметра отключает эту оптимизацию и заставляет g++ вызывать конструктор копирования во всех случаях. [Источник: man gcc]