Legato and C++ 11 support?

#1

Hi, does the standard legato project support C++ 11? If not how do I go about adding it? Do the build tools support all of the C++ 11 features?

Thanks,
Karl

0 Likes

#2

All C++11 features are working for me (legato 16.07).
You can enable it by editing .cdef file in your app project, just add these lines:

cxxflags: {
	-std=c++11
}

I am using C++14 and it works too.

0 Likes

#3

Thanks, I had found that in the manual… but it is not clear whether all C++11 features are supported? However, I think my problem relates to something else… I will dig around a bit more. Thanks for replying!

0 Likes

#4

Hi, that allows me to build a certain amount of C++, but not 11 features. When I check the __cplusplus define its value is stil 199711L. So all new C++ features are disabled. How do I get DS to update this value so that I can develop using those values?

0 Likes

#5

Go to your project properties.
C/C++ General -> Preprocessor Include Paths, Macros, etc.
In “entries” tab choose “GNU C++” and choose “CDT User Settings Entries”, Push “Add…” button, choose "Preprocessor macro"
enter name: __cplusplus
enter value: 201403L
check “treat as built-in” box -> OK
Then rebuild your project index, everything should work fine now.

0 Likes

#6

Thanks, that did it!

0 Likes