Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 3 May 1995 08:17:40 +0200 (MET DST)
From:      J Wunsch <j@uriah.heep.sax.de>
To:        rpt@miles.sso.loral.com (Richard Toren)
Cc:        hackers@FreeBSD.org
Subject:   Re: GNU cpp bug with pthreads
Message-ID:  <199505030617.IAA18293@uriah.heep.sax.de>
In-Reply-To: <Pine.SUN.3.91.950502211904.11432A-100000@miles> from "Richard Toren" at May 2, 95 09:35:49 pm

next in thread | previous in thread | raw e-mail | index | archive | help
As Richard Toren wrote:
> 
> cpp, when expanding the concatenate operator '##' seems to append a 
> couple (3) blanks after the substitution. Here is a piece of pthreads and 
> an abbreviated command line to test. Line 8 is the one munged up.

I'm not sure if it's a bug or a feature, nor does reading the `bible'
enlighten me more.

> #ifdef __STDC__

Note: this should be ``#if __STDC__'' anyway.  Some preprocessors do
define this macro to 0 when running in `traditional' mode.  ANSI says
it is ``the constant 1'' in a standard-conforming environment.

> #define SYSCALL(x)                  \
>     .globl _machdep_sys_##x;        \
>                                     \
> _machdep_sys_##x:;                  \
>                                     \
>     movl $(SYS_##x), %eax;          \

This works:

#define SYSCALL(x)                  \
    .globl _machdep_sys_##x##;      \
                                    \
_machdep_sys_##x##:;                \
                                    \
    movl $(SYS_##x##), %eax;        \

-- 
cheers, J"org

joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/
Never trust an operating system you don't have sources for. ;-)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199505030617.IAA18293>