37

How do I enable support for the new C++ standard on the Eclipse CDT indexer in Juno/Kepler/Luna?

1 Answers1

88

Note that this question (and answer) only deals with the Eclipse indexer which is used to highlight errors before compilation takes place. The C++ compiler settings are not changed! (Thus, compilation could still fail because of missing C++11 settings, but have a look at the "Related" section)

To change the Eclipse indexer settings go to Project properties -> C/C++ General -> Preprocessor Include Paths, Macros etc. -> tab Providers -> CDT GCC Built-in Compiler Settings

and append -std=c++0x (or -std=c++11) to Command to get compiler specs:

Afterwards it should look something like:

${COMMAND} -E -P -v -dD ${INPUTS} -std=c++0x

Screenshot of the configuration pane with the change applied

Sources

Related

Update

Successfully tested with Eclipse

  • Kepler (CDT 8.2)
  • Luna (CDT 8.4)
Community
  • 1
  • 1
  • 17
    Additionally, I had to restart Eclipse, before the changes took affect! – abergmeier Dec 30 '12 at 14:52
  • 3
    In case anyone else can't get this to work, I also had to add this symbol to Eclipse for some reason: __GXX_EXPERIMENTAL_CXX0X__ – KyleL Dec 05 '13 at 20:05
  • 5
    Under Kepler, after doing this, I still got the same errors, I needed to rebuild the index before the results were visible to the IDE: http://stackoverflow.com/questions/3008293/clean-eclipse-index-it-is-out-of-sync-with-code – mseddon Feb 07 '14 at 22:26
  • For Eclipse 4.4 Luna you also have to modify compiler settings: http://stackoverflow.com/a/24561615/1169741 – Trismegistos Jul 03 '14 at 19:22
  • @Trismegistos: Please not that this question is specifically about the indexer and not about the other parts that might be configured to use C++11. Thus, the answer remains the same. – Nobody moving away from SE Aug 19 '14 at 16:38
  • 2
    Yay! worked nicely here after index-rebuild + eclipse-restart. I am using Kepler: Version: Kepler Service Release 2. Build id: 20140224-0627. – JohnTortugo Dec 10 '14 at 03:21