|
17 | 17 | // Define macros
|
18 | 18 | #ifdef DEFINE_DIAGNOSTIC_MACROS
|
19 | 19 |
|
20 |
| -#if !(defined(DIAG) || (defined(ERROR) && defined(WARNING) && defined(NOTE) && \ |
21 |
| - defined(REMARK))) |
22 |
| -#error Must define either DIAG or the set {ERROR,WARNING,NOTE,REMARK} |
| 20 | +#if !(defined(DIAG) || (defined(GROUPED_ERROR) && defined(GROUPED_WARNING) && \ |
| 21 | + defined(NOTE) && defined(REMARK))) |
| 22 | +#error Must define either DIAG or the set {GROUPED_ERROR,GROUPED_WARNING,NOTE,REMARK} |
| 23 | +#endif |
| 24 | + |
| 25 | +#ifndef GROUPED_ERROR |
| 26 | +#define GROUPED_ERROR(ID, Group, Options, Text, Signature) \ |
| 27 | + DIAG(ERROR, ID, Group, Options, Text, Signature) |
23 | 28 | #endif
|
24 | 29 |
|
25 | 30 | #ifndef ERROR
|
26 | 31 | #define ERROR(ID, Options, Text, Signature) \
|
27 |
| - DIAG(ERROR, ID, Options, Text, Signature) |
| 32 | + GROUPED_ERROR(ID, no_group, Options, Text, Signature) |
| 33 | +#endif |
| 34 | + |
| 35 | +#ifndef GROUPED_WARNING |
| 36 | +#define GROUPED_WARNING(ID, Group, Options, Text, Signature) \ |
| 37 | + DIAG(WARNING, ID, Group, Options, Text, Signature) |
28 | 38 | #endif
|
29 | 39 |
|
30 | 40 | #ifndef WARNING
|
31 | 41 | #define WARNING(ID, Options, Text, Signature) \
|
32 |
| - DIAG(WARNING, ID, Options, Text, Signature) |
| 42 | + GROUPED_WARNING(ID, no_group, Options, Text, Signature) |
33 | 43 | #endif
|
34 | 44 |
|
35 | 45 | #ifndef NOTE
|
36 | 46 | #define NOTE(ID, Options, Text, Signature) \
|
37 |
| - DIAG(NOTE, ID, Options, Text, Signature) |
| 47 | + DIAG(NOTE, ID, no_group, Options, Text, Signature) |
38 | 48 | #endif
|
39 | 49 |
|
40 | 50 | #ifndef REMARK
|
41 | 51 | #define REMARK(ID, Options, Text, Signature) \
|
42 |
| - DIAG(REMARK, ID, Options, Text, Signature) |
| 52 | + DIAG(REMARK, ID, no_group, Options, Text, Signature) |
43 | 53 | #endif
|
44 | 54 |
|
45 | 55 | #ifndef FIXIT
|
|
61 | 71 | #undef REMARK
|
62 | 72 | #undef NOTE
|
63 | 73 | #undef WARNING
|
| 74 | +#undef GROUPED_WARNING |
64 | 75 | #undef ERROR
|
| 76 | +#undef GROUPED_ERROR |
65 | 77 | #undef FIXIT
|
66 | 78 |
|
67 | 79 | #endif
|
|
0 commit comments