🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.std.c
Article #2587

Re: The Preprocessor and tokens

#2587
From: Henry Spencer
Date: Mon, 25 Mar 1991 19:01
20 lines
1372 bytes
In article <3137@wyse.wyse.com> cmills@wyse.wyse.com () writes:
>...I was under the impression
>that the preprocessor and the compiler agreed on what constituted a
>token... 

Unfortunately, no.  There is a separate notion of a "preprocessing token",
which is like a real token in a lot of ways but has a much more generous
syntax for numbers.  This is what you're running afoul of.

The problem is that there are demented people who want to use vile and
disgusting perversions like token concatenation to actually put numbers
together out of pieces at preprocessing time.  The lexical syntax of C
numbers is really ugly, and trying to produce a lexical definition of a
valid *piece* of a number is agonizing.  X3J11 therefore came up with
the notion of a "preprocessing number" which covers anything vaguely
number-like, and stipulated full lexical validation of numbers only
after preprocessing.
-- 
"[Some people] positively *wish* to     | Henry Spencer @ U of Toronto Zoology
believe ill of the modern world."-R.Peto|  henry@zoo.toronto.edu  utzoo!henry
Technical Details
Message-ID: <1991Mar25.190133.16977@zoo.toronto.edu>
Path: arc1-ca.pugleaf.net!utzoo!henry
References: <3137@wyse.wyse.com>

Show Full Headers
Complete Article Headers
Newsgroups: comp.std.c
Path: arc1-ca.pugleaf.net!utzoo!henry
From: henry@zoo.toronto.edu (Henry Spencer)
Subject: Re: The Preprocessor and tokens
Message-ID: <1991Mar25.190133.16977@zoo.toronto.edu>
Date: Mon, 25 Mar 1991 19:01:33 GMT
References: <3137@wyse.wyse.com>
Organization: U of Toronto Zoology