Details | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 1186 | savelij | 1 | #ifndef _SYMFLAGS_H |
| 2 | #define _SYMFLAGS_H |
||
| 3 | /* symflags.h */ |
||
| 4 | /*****************************************************************************/ |
||
| 5 | /* SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only */ |
||
| 6 | /* */ |
||
| 7 | /* AS */ |
||
| 8 | /* */ |
||
| 9 | /* Symbol Flags Used in Symbol Table and TempResult */ |
||
| 10 | /* */ |
||
| 11 | /*****************************************************************************/ |
||
| 12 | |||
| 13 | typedef enum eSymbolFlags |
||
| 14 | { |
||
| 15 | eSymbolFlag_None = 0, |
||
| 16 | eSymbolFlag_NextLabelAfterBSR = 1 << 0, |
||
| 17 | eSymbolFlag_StringSingleQuoted = 1 << 1, |
||
| 18 | |||
| 19 | /* Hinweisflag: evtl. im ersten Pass unbe- |
||
| 20 | kanntes Symbol, Ausdruck nicht ausgewertet */ |
||
| 21 | |||
| 22 | eSymbolFlag_FirstPassUnknown = 1 << 2, |
||
| 23 | |||
| 24 | /* Hinweisflag: Dadurch, dass Phasenfehler |
||
| 25 | aufgetreten sind, ist dieser Symbolwert evtl. |
||
| 26 | nicht mehr aktuell */ |
||
| 27 | |||
| 28 | eSymbolFlag_Questionable = 1 << 3, |
||
| 29 | |||
| 30 | /* Hinweisflag: benutzt Vorwaertsdefinitionen */ |
||
| 31 | |||
| 32 | eSymbolFlag_UsesForwards = 1 << 4, |
||
| 33 | |||
| 34 | eSymbolFlag_Label = 1 << 5, |
||
| 35 | |||
| 36 | eSymbolFlag_UserShort = 1 << 6, |
||
| 37 | eSymbolFlag_UserMedium = 1 << 7, |
||
| 38 | eSymbolFlag_UserLong = 1 << 8, |
||
| 39 | |||
| 40 | eSymbolFlags_Promotable = eSymbolFlag_FirstPassUnknown | eSymbolFlag_Questionable |
||
| 41 | | eSymbolFlag_UsesForwards |
||
| 42 | | eSymbolFlag_UserShort | eSymbolFlag_UserMedium | eSymbolFlag_UserLong |
||
| 43 | } tSymbolFlags; |
||
| 44 | |||
| 45 | #ifdef __cplusplus |
||
| 46 | #include "cppops.h" |
||
| 47 | DefCPPOps_Mask(tSymbolFlags) |
||
| 48 | #endif |
||
| 49 | |||
| 50 | #define mFirstPassUnknown(Flags) (!!((Flags) & eSymbolFlag_FirstPassUnknown)) |
||
| 51 | |||
| 52 | #define mSymbolQuestionable(Flags) (!!((Flags) & eSymbolFlag_Questionable)) |
||
| 53 | |||
| 54 | #define mFirstPassUnknownOrQuestionable(Flags) (!!((Flags) & (eSymbolFlag_FirstPassUnknown | eSymbolFlag_Questionable))) |
||
| 55 | |||
| 56 | #define mUsesForwards(Flags) (!!((Flags) & eSymbolFlag_UsesForwards)) |
||
| 57 | |||
| 58 | #endif /* _SYMFLAGS_H */ |