Skip to main content
BParh.1
Senior III
October 14, 2021
Solved

Which C++ std compiler version used in TouchGFX Designer and MSVC simulator?

  • October 14, 2021
  • 3 replies
  • 2310 views

I have questions:

  1. Which C++ std used when building code in TouchGFX Designer? c++11, c++14, c++17?
  2. Which C++ std used when building code in MSVC simulator? c++11, c++14, c++17?
  3. Which c++ std ST used to verify and release TouchGFX?
  4. Can user change and modify the std? Any risk/ side effects to consider?

Best answer by LouisB

Hello @CTapp.1 ,

Concerning the version of C++, TouchGFX only uses C++98 language features. Therefore, compiling the project using newer language versions should be safe. 

I hope that answers your question.
Regards,
 

3 replies

CTapp.1
Senior III
February 11, 2024

Did you ever find out which versions are supported?

My generated STM32Cube project uses C++14, but I would like to use C++17.

The project builds without errors using C++17.

All posts are made in a personal capacityMISRA C++ ChairMISRA C WG MemberDirector The MISRA Consortium Limited (TMCL)
ST Employee
February 14, 2024

Hello,

There's no standard library used in TouchGFX, but you can enable it in your Toolchain (STM32CubeIDE or Keil ...) project properties for your project's code.

 

Regards,

CTapp.1
Senior III
February 14, 2024

Hi Louis,

Thanks, but the question was about which version of the C++ language (as standardised in ISO 14882) the TouchGFX code was written against.

It's unlikely to matter (as long as a "modern" version is used - C++14 and later), but there are some subtle changes in behaviour that may get in the way if they are not considered.

All posts are made in a personal capacityMISRA C++ ChairMISRA C WG MemberDirector The MISRA Consortium Limited (TMCL)
CTapp.1
Senior III
February 16, 2024

Thanks, that's good to hear :)

All posts are made in a personal capacityMISRA C++ ChairMISRA C WG MemberDirector The MISRA Consortium Limited (TMCL)
ST Employee
February 22, 2024

No problem :), I'll mark it as best answer.