Jon Jagger
jon@jaggersoft.com
Table of Contents 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 Notes DownloadECMA-334 C# Language Specificationpreviousnextprevious at this levelnext at this level 9 Lexical structureprevious at this levelnext at this level 9.5 Pre-processing directivesprevious at this levelnext at this level 9.5.1 Conditional compilation symbols Paragraph 11 The conditional compilation functionality provided by the #if, #elif, #else, and #endif directives is controlled through pre-processing expressions (§9.5.2) and conditional compilation symbols. conditional-symbol :: Any identifier-or-keyword except true or false Paragraph 21 A conditional compilation symbol has two possible states: defined or undefined. 2 At the beginning of the lexical processing of a source file, a conditional compilation symbol is undefined unless it has been explicitly defined by an external mechanism (such as a command-line compiler option). 3 When a #define directive is processed, the conditional compilation symbol named in that directive becomes defined in that source file. 4 The symbol remains defined until an #undef directive for that same symbol is processed, or until the end of the source file is reached. 5 An implication of this is that #define and #undef directives in one source file have no effect on other source files in the same program. Paragraph 31 The name space for conditional compilation symbols is distinct and separate from all other named entities in a C# program. 2 Conditional compilation symbols can only be referenced in #define and #undef directives and in pre-processing expressions.
{ JSL }
Jagger Software Ltd
Company # 4070126
VAT # 762 5213 42
Valid HTML 4.01Valid CSS