<?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: Understanding GCC in LPCXpresso IDE</title>
    <link>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579566#M24166</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by RA1981 on Fri Jun 03 05:19:23 MST 2011&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi John,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: &lt;/STRONG&gt;&lt;BR /&gt;Since your [I]UART_PUTTXT [/I]function receives char strings then you&amp;nbsp; should use the appropriate type which is char *.&lt;/SPAN&gt;&lt;HR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Done ;)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: &lt;/STRONG&gt;&lt;BR /&gt;When you need to pass&amp;nbsp; in more then one type then you can use a void pointer in the parameter&amp;nbsp; to avoid needing to typecast the value passed in. &lt;/SPAN&gt;&lt;HR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Hm... That would be something I have to play a little with :)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Ralf&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 15 Jun 2016 23:58:14 GMT</pubDate>
    <dc:creator>lpcware</dc:creator>
    <dc:date>2016-06-15T23:58:14Z</dc:date>
    <item>
      <title>Understanding GCC</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579555#M24155</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by RA1981 on Thu Jun 02 00:24:13 MST 2011&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm still getting familiar with Cortex-M controllers, currently still on a beginners level, moving from 8-bit 8051/8052 derivates to Cortex :)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm having trouble to find a GCC manual regarding how GCC manages variables and their types etc. I searched the online documentation (&lt;/SPAN&gt;&lt;A href="http://"&gt;http://gcc.gnu.org/onlinedocs/gcc/index.html&lt;/A&gt;&lt;SPAN&gt;) but couldn't find any answers - this documentation is very large and I assume it's perhaps the wrong documentation for me.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The current problem is as follows:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I want to write some UART functions for sending and receiving characters.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Simple test program which simply echoes back the incoming data works well.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;But transmitting hardcoded texts throws a warning on build process:&lt;/SPAN&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: &lt;/STRONG&gt;&lt;BR /&gt;pointer targets in passing argument 1 of 'UART_PUTTXT' differ in signedness&lt;/SPAN&gt;&lt;HR /&gt;&lt;SPAN&gt;The function prototype:&lt;/SPAN&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: &lt;/STRONG&gt;&lt;BR /&gt;void UART_PUTTXT(uint8_t *ucpData);&lt;/SPAN&gt;&lt;HR /&gt;&lt;SPAN&gt;The function call:&lt;/SPAN&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: &lt;/STRONG&gt;&lt;BR /&gt;UART_PUTTXT("Hello World");&lt;/SPAN&gt;&lt;HR /&gt;&lt;SPAN&gt;This worked many times well on the 8-bitters...&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Changing to 'int8_t' doesn't help, but changing to 'char' removed the warning. A function which only sends a single character accepts 'uint8_t'.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;So there are a few question:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- why is 'char' accepted without warning but uint8_t/int8_t are not accepted? I thought a 'char' is the same as 'int8_t', which is declared in 'stdint.h' as signed char? So I have to know more about the interna of GCC :)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- where can I find a tutorial/manual or something similar which enables me to solve such problems myself?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Ralf&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 23:58:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579555#M24155</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T23:58:07Z</dc:date>
    </item>
    <item>
      <title>Re: Understanding GCC</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579556#M24156</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by TheFallGuy on Thu Jun 02 01:11:50 MST 2011&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;I don't think this is anything to do with GCC, but more to do with it being ARM.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;See&lt;/SPAN&gt;&lt;BR /&gt;&lt;A href="http://"&gt;http://www.network-theory.co.uk/docs/gccintro/gccintro_71.html&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Where it states that:&lt;/SPAN&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: &lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;The C and C++ standards allows the character type char to be signed or unsigned, depending on the platform and compiler.&amp;nbsp; Most systems, including x86 GNU/Linux and Microsoft Windows, use signed char, but those based on PowerPC and ARM processors typically use unsigned char.(29)&amp;nbsp; This can lead to unexpected results when porting programs between platforms which have different defaults for the type of char.&lt;BR /&gt;&lt;/SPAN&gt;&lt;HR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 23:58:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579556#M24156</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T23:58:08Z</dc:date>
    </item>
    <item>
      <title>Re: Understanding GCC</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579557#M24157</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by RA1981 on Thu Jun 02 01:37:34 MST 2011&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi TheFallGuy,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;thank you for your answer. The link seems to be helpful, giving a deeper insight of GCC.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I think I'll look for the german version and buy the book :)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Regarding the statement I don't understand why wether uint8_t nor int8_t works - from the statement I'd assume that one of these should work because they're typedefs of char.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Ralf&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 23:58:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579557#M24157</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T23:58:08Z</dc:date>
    </item>
    <item>
      <title>Re: Understanding GCC</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579558#M24158</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by Rob65 on Thu Jun 02 02:09:34 MST 2011&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;I've got the same 'problem'.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;If you program something like this:&lt;/SPAN&gt;&lt;BR /&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca"&gt; &lt;PRE&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; signed char *a;
&amp;nbsp;&amp;nbsp;&amp;nbsp; unsigned char *b;

&amp;nbsp;&amp;nbsp;&amp;nbsp; char *c;

&amp;nbsp;&amp;nbsp;&amp;nbsp; a = "test";
&amp;nbsp;&amp;nbsp;&amp;nbsp; b = "test";
&amp;nbsp;&amp;nbsp;&amp;nbsp; c = "test";
&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;then GCC will give a warning on both assignments of a and b, not on c.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Fair enough: if the standard choosen by the compiler can be either signed or unsigned it makes sense to warn about the assignment of a char (without classification) to one with classification.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;But in the case of:&lt;/SPAN&gt;&lt;BR /&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca"&gt; &lt;PRE&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; signed char a;
&amp;nbsp;&amp;nbsp;&amp;nbsp; unsigned char b;

&amp;nbsp;&amp;nbsp;&amp;nbsp; char c;

&amp;nbsp;&amp;nbsp;&amp;nbsp; a = 'a';
&amp;nbsp;&amp;nbsp;&amp;nbsp; b = 'b';
&amp;nbsp;&amp;nbsp;&amp;nbsp; c = 'c';
&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR /&gt;&lt;SPAN&gt;I would assume similar warnings but here GCC is perfectly happy with my code.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Apparently pointers to char are more strict than chars :confused:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Rob&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 23:58:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579558#M24158</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T23:58:09Z</dc:date>
    </item>
    <item>
      <title>Re: Understanding GCC</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579559#M24159</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by TheFallGuy on Thu Jun 02 02:55:33 MST 2011&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;According to the C standard, single-character constants (i.e. 'c') have the type int. Thus, your assignments are actually&lt;/SPAN&gt;&lt;BR /&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca"&gt; &lt;PRE&gt;
a = 97; 
b = 98; 
c = 99;
&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;SPAN&gt;Which don't cause any problems. You would have problems if you started assigning signed values to unsigned types. e.g. &lt;/SPAN&gt;&lt;BR /&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca"&gt; &lt;PRE&gt;
b = -1 ;
&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;BTW: This is all standard C and is nothing 'peculiar' about GCC.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 23:58:10 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579559#M24159</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T23:58:10Z</dc:date>
    </item>
    <item>
      <title>Re: Understanding GCC</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579560#M24160</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by CodeRedSupport on Thu Jun 02 03:02:27 MST 2011&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;There are two options in GCC for controlling the type of a 'char':&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;From the docs:&lt;/SPAN&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: &lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;-funsigned-char&lt;BR /&gt;Let the type char be unsigned, like unsigned char.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Each kind of machine has a default for what char should be.&amp;nbsp; It is either like unsigned char by default or like signed char by default.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;Ideally, a portable program should always use signed char or unsigned char when it depends on the signedness of an object.&amp;nbsp; But many programs have been written to use plain char and expect it to be signed, or expect it to be unsigned, depending on the machines they were written for.&amp;nbsp; This option, and its inverse, let you make such a program work with the opposite default.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;The type char is always a distinct type from each of signed char or unsigned char, even though its behavior is always just like one of those two.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;BR /&gt;-fsigned-char&lt;BR /&gt;Let the type char be signed, like signed char.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Note that this is equivalent to -fno-unsigned-char, which is the negative form of -funsigned-char.&amp;nbsp; Likewise, the option -fno-signed-char is equivalent to -funsigned-char.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;HR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 23:58:10 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579560#M24160</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T23:58:10Z</dc:date>
    </item>
    <item>
      <title>Re: Understanding GCC</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579561#M24161</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by atomicdog on Thu Jun 02 13:06:46 MST 2011&lt;/STRONG&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: RA1981&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;Changing to 'int8_t' doesn't help, but changing to 'char' removed the warning. A function which only sends a single character accepts 'uint8_t'.&lt;BR /&gt;So there are a few question:&lt;BR /&gt;- why is 'char' accepted without warning but uint8_t/int8_t are not accepted? I thought a 'char' is the same as 'int8_t', which is declared in 'stdint.h' as signed char? So I have to know more about the interna of GCC :)&lt;BR /&gt;- where can I find a tutorial/manual or something similar which enables me to solve such problems myself?&lt;BR /&gt;&lt;BR /&gt;Regards,&lt;BR /&gt;&lt;BR /&gt;Ralf&lt;/SPAN&gt;&lt;HR /&gt;&lt;SPAN&gt; This has to do with the C standard (C99). There is actually three char types. char, unsigned char, and signed char. You can set char to [U]behave[/U] like a signed/unsigned char but it's still a separate type.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;"hello World" is a char string literal which is neither a signed char or unsigned char type so you get a warning.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 23:58:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579561#M24161</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T23:58:11Z</dc:date>
    </item>
    <item>
      <title>Re: Understanding GCC</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579562#M24162</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by larryvc on Thu Jun 02 13:26:38 MST 2011&lt;/STRONG&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: atomicdog&lt;/STRONG&gt;&lt;BR /&gt;This has to do with the C standard (C99). &lt;/SPAN&gt;&lt;HR /&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm not disagreeing with you John, just asking for clarification.:)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Is the GCC used with the LPCXpresso IDE C99 compliant?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I know that Redlib is C90 and Newlib is C99.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 23:58:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579562#M24162</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T23:58:11Z</dc:date>
    </item>
    <item>
      <title>Re: Understanding GCC</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579563#M24163</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by atomicdog on Thu Jun 02 14:18:33 MST 2011&lt;/STRONG&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: larryvc&lt;/STRONG&gt;&lt;BR /&gt;I'm not disagreeing with you John, just asking for clarification.:)&lt;BR /&gt; &lt;BR /&gt;Is the GCC used with the LPCXpresso IDE C99 compliant?&lt;BR /&gt; &lt;BR /&gt;I know that Redlib is C90 and Newlib is C99.&lt;/SPAN&gt;&lt;HR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Yeah, the C compiler for gcc has supported C99 for a while now. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;LPCXpresso 3.6.3.117 uses gcc version 4.3.3.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;It may also be in the previous standards but I've never read them.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 23:58:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579563#M24163</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T23:58:12Z</dc:date>
    </item>
    <item>
      <title>Re: Understanding GCC</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579564#M24164</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by RA1981 on Thu Jun 02 22:23:48 MST 2011&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi all,&amp;nbsp; thank you for your answers.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; So, what would be best way to solve my "problem"? Since it's machine-depending I'd assume to use simply char instead of uint8_t/int8_t. For my text transmission functions it doesn't matter using simply char. And for other functions where signedness is relevant I use uint8_t/int8_t :)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank you all for the help.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; Regards,&amp;nbsp; Ralf&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 23:58:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579564#M24164</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T23:58:12Z</dc:date>
    </item>
    <item>
      <title>Re: Understanding GCC</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579565#M24165</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by atomicdog on Thu Jun 02 23:01:39 MST 2011&lt;/STRONG&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: RA1981&lt;/STRONG&gt;&lt;BR /&gt;Hi all,&amp;nbsp; thank you for your answers.&lt;BR /&gt;&lt;BR /&gt; So, what would be best way to solve my "problem"? Since it's machine-depending I'd assume to use simply char instead of uint8_t/int8_t. For my text transmission functions it doesn't matter using simply char. And for other functions where signedness is relevant I use uint8_t/int8_t :)&lt;BR /&gt;&lt;BR /&gt;Thank you all for the help.&lt;BR /&gt;&lt;BR /&gt; Regards,&amp;nbsp; Ralf&lt;/SPAN&gt;&lt;HR /&gt;&lt;SPAN&gt; This issue isn't machine-depended (although related) it only has to do with the C standard. Some other compilers will also give similar warnings.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Your function parameter should match the type of value you're passing to it.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Since your [I]UART_PUTTXT [/I]function receives char strings then you should use the appropriate type which is char *. When you need to pass in more then one type then you can use a void pointer in the parameter to avoid needing to typecast the value passed in.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 23:58:13 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579565#M24165</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T23:58:13Z</dc:date>
    </item>
    <item>
      <title>Re: Understanding GCC</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579566#M24166</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by RA1981 on Fri Jun 03 05:19:23 MST 2011&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi John,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: &lt;/STRONG&gt;&lt;BR /&gt;Since your [I]UART_PUTTXT [/I]function receives char strings then you&amp;nbsp; should use the appropriate type which is char *.&lt;/SPAN&gt;&lt;HR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Done ;)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: &lt;/STRONG&gt;&lt;BR /&gt;When you need to pass&amp;nbsp; in more then one type then you can use a void pointer in the parameter&amp;nbsp; to avoid needing to typecast the value passed in. &lt;/SPAN&gt;&lt;HR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Hm... That would be something I have to play a little with :)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Ralf&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 23:58:14 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Understanding-GCC/m-p/579566#M24166</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T23:58:14Z</dc:date>
    </item>
  </channel>
</rss>

