[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: spaces in macro args



    From:	Paul Haahr <haahr@mv.us.adobe.com>
    Date:	Wed, 21 Oct 1992 09:48:07 +1000
    To:	noel@es.su.oz.au
    Cc:	es@hawkwind.utcs.toronto.edu
    Subject: Re: spaces in macro args
    Received: from mail-relay-1.mv.us.adobe.com ([130.248.1.1]) by quux.es.su.oz.au with SMTP id <14630>; Wed, 21 Oct 1992 09:48:44 +1000
    Received: by mail-relay-1.mv.us.adobe.com; id AA09516; Tue, 20 Oct 92 16:48:24 -0700
    Received: by utopia.mv.us.adobe.com (NeXT-1.0 (From Sendmail 5.52)/NX3.0S)
    	id AA07618; Tue, 20 Oct 92 16:48:07 PDT
    Message-Id: <9210202348.AA07618@utopia.mv.us.adobe.com>

    > i am getting this problem on a sparc, sunos 4.1.2. it is not
    > just `CONCAT' but the `RefXXX' macros as well.

    ugh.  that makes Ref*() -- which use CONCAT -- really ugly.
    i'm beginning to regret promising reiser cpp support.

    oh well; probably fixed in 0.75, but i don't like it.

another thing to make your hair stand on end: the following line

	assert(streq(t->CAR->u[0].s, "%heredoc"));

doesn't work with -DREISER_CPP. the problem is the STRING macro:

#define STRING(s)      "s"

#define assert(expr) \
        if (expr) ; else { \
                eprint("%s:%d: assertion failed (%s)\n", \
                       __FILE__, __LINE__, STRING(expr)); \
                ABORT(); \
        }

heredoc.c is the only place where it happens.