This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
RE: Macro problem with gcc and eCos
- To: "'Daniel dot Andersson at combitechsystems dot com'" <Daniel dot Andersson at combitechsystems dot com>, crossgcc at sourceware dot cygnus dot com
- Subject: RE: [ECOS] Macro problem with gcc and eCos
- From: Nielsen Linus <Linus dot Nielsen at elema dot siemens dot se>
- Date: Thu, 19 Apr 2001 15:09:05 +0200
- Cc: ecos-discuss at sources dot redhat dot com
This looks like a CR/LF problem. AFAIK, the GCC preprocessor isn't
always too happy about text files that end with CR/LF.
Try to remove the CR's and compile again.
/Linus
> Hi,
>
> I have problems when I compile my application together with eCos
> using gcc for ARM. When I try to compile the code section with
> VC++ it works without problem.
>
<snippe
> The eCos code I got problem with looks like this:
>
> ------snip--------
> #define CYG_MACRO_START do{
> #define CYG_MACRO_END }while (0)
>
> #define CYG_EMPTY_STATEMENT CYG_MACRO_START CYG_MACRO_END
>
> #define CYG_UNUSED_PARAM( _type_, _name_ ) CYG_MACRO_START \
> _type_ __tmp1 = (_name_); \
> _type_ __tmp2 = __tmp1; \
> __tmp1 = __tmp2; \
> CYG_MACRO_END
> -------end snip----
>
>
> It gives me the following error:
>
> ------snip--------
> arm-elf-gcc -mcpu=arm7tdmi -c -o
> twothreads.o -g
> -Wall -I/ecos-work/include -ffunct
> ion-sections -fdata-sections twothreads.c
> In file included from /ecos-work/include/cyg/kernel/kapi.h:53,
> from twothreads.c:1:
> /ecos-work/include/cyg/infra/cyg_type.h:169: parse error
> before `__tmp1'
> /ecos-work/include/cyg/infra/cyg_type.h:169: warning: type
> defaults to `int'
> in declaration of `__tmp1'
> /ecos-work/include/cyg/infra/cyg_type.h:169: `_name_'
> undeclared here (not
> in a function)
> /ecos-work/include/cyg/infra/cyg_type.h:169: warning: data
> definition has no
> type or storage class
> -------end snip----
>
> Does anyone know what the problem is?
>
> /Daniel
>