This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Macro problem with gcc and eCos
- To: crossgcc at sourceware dot cygnus dot com
- Subject: [ECOS] Macro problem with gcc and eCos
- From: Daniel dot Andersson at combitechsystems dot com
- Date: Thu, 19 Apr 2001 14:58:29 +0200
- Cc: ecos-discuss at sources dot redhat dot com
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.
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