🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.gcc.bug
Article #551

Macro stringification and line continuation problem?

#551
From: Greg Satz
Date: Sun, 27 Aug 1989 23:43
28 lines
1285 bytes
The following program when run through the GNU preprocessor doesn't quite
behave like I would expect.

#ifdef __GNUC__
#define D(s) #s
#else
#define	D(s)	"s"
#endif

char *c = D(now is the time foo all testing to formkwlkcxmnemwcwerndsgfwer\
foo bar testing 1 2 3);

Following are the results on a Sun 3/280 with gcc -E -v foo.c

gcc version 1.32
 /usr/src/gnu/gcc-1.35/cpp -v -undef -D__GNUC__ -Dmc68000 -Dsun -Dunix -D__mc68000__ -D__sun__ -D__unix__ -D__HAVE_68881__ -Dmc68020 foo.c
# 1 "foo.c"

char *c = "now is the time foo all testing to formkwlkcxmnemwcwerndsgfwer\oo bar testing 1 2 3" ;
GNU CPP version 1.35

Note that the gcc driver is 1.32 but the preprocessor in question is 1.35.
It looks like the cpp stringification code manages to lose the newline of
the continuation line. Am I misunderstanding stringification or is this a
bug?

Greg Satz
cisco
Technical Details
Message-ID: <8908272344.AA04443@life.ai.mit.edu>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!tut.cis.ohio-state.edu!CISCO.COM!satz

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!tut.cis.ohio-state.edu!CISCO.COM!satz
From: satz@CISCO.COM (Greg Satz)
Newsgroups: gnu.gcc.bug
Subject: Macro stringification and line continuation problem?
Message-ID: <8908272344.AA04443@life.ai.mit.edu>
Date: 27 Aug 89 23:43:09 GMT
Sender: daemon@tut.cis.ohio-state.edu
Distribution: gnu
Organization: GNUs Not Usenet
Lines: 28