В настоящее время я изучаю lvalue, rvalue, семантику перемещения и идеальную пересылку. Для лучшего понимания я хочу отключить все оптимизации, но компилятор Visual Studio 2017 не предоставляет эту функцию. Параметр /Od
доступен, но он не отключает nrvo
, rvo
и другие «опорные» оптимизации. Мне повезло найти параметр -fno-elide-constructors
, но он работает только для G CC, а не для MinGW-W64 8.1.0
Вопросы:
- Что является аналогом "-fno-elide-constructors" для MinGW?
- Если MinGW не предоставляет эту функцию, то для чего мне использовать компилятор на Windows?
- Может быть, существует академический c компилятор, который не выполняет никаких оптимизаций и предназначен только для изучения?