Related articles |
---|
C99 translation phases DrDiettrich1@netscape.net (Hans-Peter Diettrich) (2017-05-25) |
Re: C99 translation phases 686-678-9105@kylheku.com (Kaz Kylheku) (2017-05-25) |
From: | Hans-Peter Diettrich <DrDiettrich1@netscape.net> |
Newsgroups: | comp.compilers |
Date: | Thu, 25 May 2017 13:09:58 +0200 |
Organization: | Compilers Central |
Injection-Info: | miucha.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="63362"; mail-complaints-to="abuse@iecc.com" |
Keywords: | C, question |
Posted-Date: | 25 May 2017 10:59:36 EDT |
The standard specifies translation phase 4 as:
"Preprocessing directives are executed, macro invocations are
expanded, and _Pragma unary operator expressions are executed. ..."
Does this mean a strict sequence of these actions?
At least this example seems to suggest a specific sequence:
EXAMPLE In:
#define EMPTY
EMPTY # include <file.h>
the sequence of preprocessing tokens on the second line is not
a preprocessing directive, because it does not begin with a #
at the start of translation phase 4, even though it will do so after the
macro EMPTY has been replaced.
DoDi
Return to the
comp.compilers page.
Search the
comp.compilers archives again.