This is a well-documented feature, see e.g.: http://sdcc.sourceforge.net/doc/sdccman.html/node182.html
"Certain words that are valid identifiers in the standard may be reserved words in SDCC unless the --std-c89 or --std-c99 command line options are used. These may include (depending on the selected processor): [...] 'data' [...]. Compliant equivalents of these keywords are always available in a form that begin with two underscores, f.e. '__data' instead of 'data'." Jan Waclawek ----- Original Message --------------- Subject: [Sdcc-user] Another compiler glitch: Is 'data' a pre-definedkeyword? From: Gordon Henderson <[email protected]> Date: Mon, 16 Nov 2009 09:36:10 +0000 (GMT) To: [email protected] > >This (contrived example) fails to compile: > > void test (int data) > { > int i ; > i = data ; > } > >Compile command: > > sdcc -mpic16 -p18f4685 -c test.c > >Gives: > > test.c:5: syntax error: token -> 'data' ; column 10 > test.c:6: error 159: in function test: name omitted for parameter 1 > >Compiles fine with gcc, so wondering if 'data' is pre-defined as a keyword >somewhere? > >Noticed this when porting code from an AVR platform (using gcc-avr) - it's >not drastically important, as I've just renamed 'data' in my code to >something else which then compiles and works fine, but FYI... > >Thanks, > >Gordon ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Sdcc-user mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/sdcc-user
