Hi SDCC users.
I'm trying to compile my port of TinyOS using SDCC*, but I'm running
into some problems. One problem is the following: one program runs fine
with the default memory mode (small i presume), but fails with the
following error when switching to large:
...
?ASxxxx-Error-<mp> in line 4627 of build/cc2430em/app.asm
<m> multiple definitions error
<p> phase error: label location changing between passes 2
and 3
?ASxxxx-Error-<m> in line 4630 of build/cc2430em/app.asm
<m> multiple definitions error
removing build/cc2430em/app.rel
...
In the example above it turns out to be a char constant that ends up
being multiply defined in the asm output. I've reproduced the problem
int the attached .c file.
* Interested parties can take a look here:
http://www.tinyos8051wg.net
--
Regards Martin Leopold.
Dept. of Computer Science, University of Copenhagen
http://www.diku.dk/~leopold
static char const *c = (char const *)"Booting";
extern int strlen(char * ) ;
int main(void) {
char *_cil_inline_tmp_218 ;
int _cil_inline_tmp_219 ;
_cil_inline_tmp_218 = (char *)c;
_cil_inline_tmp_219 = strlen(_cil_inline_tmp_218);
return 0;
}
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Sdcc-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sdcc-user