-
Notifications
You must be signed in to change notification settings - Fork 44
Open
Labels
area:preprocessorRelated to C preprocessorRelated to C preprocessorarea:standard-supportRelated to the C standard supportRelated to the C standard supportkind:featureNew feature or requestNew feature or requeststatus:help-wantedOpen for contributorsOpen for contributors
Description
The section 6.10 Preprocessing directives of the C standard defines the requirements to the C preprocessor. We should fulfill them.
TODO
- Preprocessor: flow-through the actual source information #525
- Preprocessor: fix handling of multi-line macro parameters #538
- 6.10 Preprocessing directives
- 6.10.1 Conditional inclusion
- 6.10.2 Source file inclusion
- 6.10.3 Binary resource inclusion
- 6.10.4 Macro replacement
- Preprocessor:
...and__VA_ARGS__support #429 - Preprocessor: support __VA_OPT__ #541
- Preprocessor: figure out the rules aroung
__VA_ARGS__and###542 - 6.10.4.1 Argument substitution
- 6.10.4.2 The # operator
- 6.10.4.3 The ## operator
- 6.10.4.4 Rescanning and further replacement
- 6.10.4.5 Scope of macro definitions
- Preprocessor:
- 6.10.5 Line control
- 6.10.6 Diagnostic directives
-
#error -
#warning
-
- 6.10.7 Pragma directive
- 6.10.8 Null directive
- 6.10.9 Predefined macro names
- 6.10.9.1 Mandatory macros
- 6.10.9.2 Environment macros
- 6.10.9.3 Conditional feature macros
- 6.10.10 Pragma operator
Look for the number 77 in the code to find clues to implement this feature.
Metadata
Metadata
Assignees
Labels
area:preprocessorRelated to C preprocessorRelated to C preprocessorarea:standard-supportRelated to the C standard supportRelated to the C standard supportkind:featureNew feature or requestNew feature or requeststatus:help-wantedOpen for contributorsOpen for contributors