<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Which C/C++ dialect is MCUXpresso using by default? in MCUXpresso IDE</title>
    <link>https://community.nxp.com/t5/MCUXpresso-IDE/Which-C-C-dialect-is-MCUXpresso-using-by-default/m-p/748994#M1652</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The GCC documentation matching the version of GCC supplied in MCUXpresso IDE can be found within the IDE's Built in help system.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Help -&amp;gt; Help Contents -&amp;gt; Tools (Compilers, Debugger, Utilities) -&amp;gt; Using the GNU Compilers&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The simplest way to double check the GCC version supplied is probably to:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Right click on a project in the Project Explorer view&lt;/LI&gt;&lt;LI&gt;Select Utilities -&amp;gt; Open command prompt here&lt;/LI&gt;&lt;LI&gt;Enter:&amp;nbsp;&lt;EM&gt;&lt;STRONG&gt;arm-none-eabi-gcc --version&lt;/STRONG&gt;&lt;/EM&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;One thing to be aware of if you want to make use of functionality introduced&amp;nbsp;in more recent C standards is that by default C projects link against the "Redlib" C library, which is a C90 standard library with some C99 extensions. This is fine if you only want language functionality added in latter standards, but if you want library functionality beyond this standard, you need to switch to Newlib / NewlibNano. For more details, please see the MCUXpresso IDE v10.1 User Guide, chapter 13, "C/C++ Library Support".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;MCUXpresso IDE Support&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 16 Feb 2018 08:38:59 GMT</pubDate>
    <dc:creator>lpcxpresso_supp</dc:creator>
    <dc:date>2018-02-16T08:38:59Z</dc:date>
    <item>
      <title>Which C/C++ dialect is MCUXpresso using by default?</title>
      <link>https://community.nxp.com/t5/MCUXpresso-IDE/Which-C-C-dialect-is-MCUXpresso-using-by-default/m-p/748993#M1651</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I'm using&amp;nbsp;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;MCUXpresso IDE and SDK shipped with it. The IDE also installs the required toolchains, so I don't&lt;SPAN&gt;&amp;nbsp;have to worry about all the parts and the setup.&amp;nbsp;While this provides a solid base to start working with, it sometimes hides away some interesting details.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;&lt;SPAN&gt; For example, the C/C++ dialect used in the current project is set in the project settings (&lt;EM&gt;C/C++ Build &amp;gt; Settings &amp;gt; Tool Settings &amp;gt; Dialect&lt;/EM&gt;) as "Compiler default". Regarding "gcc", the default depends on the compiler version used but I don't know which version of gcc the IDE installed.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;&lt;SPAN&gt;To find out which compiler is used for the current project, I clicked "&lt;EM&gt;Utilities &amp;gt; Open command prompt&lt;/EM&gt;" in the context menu. Running "&lt;SPAN style="font-family: 'andale mono', monospace;"&gt;gcc --version&lt;/SPAN&gt;" reports "&lt;SPAN style="font-family: 'andale mono', monospace;"&gt;6.3.1 20170620&lt;/SPAN&gt;".&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;&lt;SPAN&gt;Google didn't have the manual for exactly this gcc version but for version 6.4.0, the &lt;A href="https://gcc.gnu.org/onlinedocs/gcc-6.4.0/gcc/Standards.html#C-Language"&gt;official manual &lt;/A&gt;states:&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;SPAN&gt;The default, if no C language dialect options are given, is -std=gnu11.&lt;/SPAN&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;and&amp;nbsp;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;The default, if no C++ language dialect options are given, is -std=gnu++14.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Can I correctly assume that these are the C/C++ dialects used for my current project?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 16 Feb 2018 07:59:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-IDE/Which-C-C-dialect-is-MCUXpresso-using-by-default/m-p/748993#M1651</guid>
      <dc:creator>danielholala</dc:creator>
      <dc:date>2018-02-16T07:59:07Z</dc:date>
    </item>
    <item>
      <title>Re: Which C/C++ dialect is MCUXpresso using by default?</title>
      <link>https://community.nxp.com/t5/MCUXpresso-IDE/Which-C-C-dialect-is-MCUXpresso-using-by-default/m-p/748994#M1652</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The GCC documentation matching the version of GCC supplied in MCUXpresso IDE can be found within the IDE's Built in help system.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Help -&amp;gt; Help Contents -&amp;gt; Tools (Compilers, Debugger, Utilities) -&amp;gt; Using the GNU Compilers&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The simplest way to double check the GCC version supplied is probably to:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Right click on a project in the Project Explorer view&lt;/LI&gt;&lt;LI&gt;Select Utilities -&amp;gt; Open command prompt here&lt;/LI&gt;&lt;LI&gt;Enter:&amp;nbsp;&lt;EM&gt;&lt;STRONG&gt;arm-none-eabi-gcc --version&lt;/STRONG&gt;&lt;/EM&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;One thing to be aware of if you want to make use of functionality introduced&amp;nbsp;in more recent C standards is that by default C projects link against the "Redlib" C library, which is a C90 standard library with some C99 extensions. This is fine if you only want language functionality added in latter standards, but if you want library functionality beyond this standard, you need to switch to Newlib / NewlibNano. For more details, please see the MCUXpresso IDE v10.1 User Guide, chapter 13, "C/C++ Library Support".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;MCUXpresso IDE Support&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 16 Feb 2018 08:38:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-IDE/Which-C-C-dialect-is-MCUXpresso-using-by-default/m-p/748994#M1652</guid>
      <dc:creator>lpcxpresso_supp</dc:creator>
      <dc:date>2018-02-16T08:38:59Z</dc:date>
    </item>
    <item>
      <title>Re: Which C/C++ dialect is MCUXpresso using by default?</title>
      <link>https://community.nxp.com/t5/MCUXpresso-IDE/Which-C-C-dialect-is-MCUXpresso-using-by-default/m-p/748995#M1653</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks &lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/lpcxpresso_support"&gt;lpcxpresso_support&lt;/A&gt;, for the immediate response which is very helpful.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Of course you are correct, I did run &lt;STRONG&gt;"&lt;EM style="background-color: #f6f6f6;"&gt;arm-none-eabi-gcc&lt;/EM&gt;&lt;EM style="background-color: #f6f6f6;"&gt; --version" &lt;/EM&gt;&lt;/STRONG&gt;&amp;nbsp;and not just "gcc --version" to gather version information. The gcc manual from the built-in help system agrees with the more current manual quoted above.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for mentioning that the different C libraries are supporting different C standards. I checked the MCUXpresso IDE User Guide and the built in help system. There I found the complete API of Newlib C library:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Help -&amp;gt; Help Contents -&amp;gt; Tools -&amp;gt; Newlib&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Great, however, I failed to find the documentation for "Redlib" C library (which is recommend for C projects by default).&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IDE User Guide, chapter 13.1.1 vaguely mentions that Redlib C "implements a number of extensions" but does not specify if the listed three extensions are conclusive.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any advise?&lt;/P&gt;&lt;P&gt;Thanks.&lt;BR /&gt;Daniel&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 16 Feb 2018 09:23:00 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-IDE/Which-C-C-dialect-is-MCUXpresso-using-by-default/m-p/748995#M1653</guid>
      <dc:creator>danielholala</dc:creator>
      <dc:date>2018-02-16T09:23:00Z</dc:date>
    </item>
    <item>
      <title>Re: Which C/C++ dialect is MCUXpresso using by default?</title>
      <link>https://community.nxp.com/t5/MCUXpresso-IDE/Which-C-C-dialect-is-MCUXpresso-using-by-default/m-p/748996#M1654</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Sorry, the only documentation we have for the specific implementation details of Redlib is supplied in the IDE User Guide. Beyond that - its "just a C library" and generally most website or text book reference material should be usable.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;MCUXpresso IDE Support&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 19 Feb 2018 10:00:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-IDE/Which-C-C-dialect-is-MCUXpresso-using-by-default/m-p/748996#M1654</guid>
      <dc:creator>lpcxpresso_supp</dc:creator>
      <dc:date>2018-02-19T10:00:49Z</dc:date>
    </item>
  </channel>
</rss>

