diff options
Diffstat (limited to 'gdb/testsuite/gdb.base/macscp1.c')
-rw-r--r-- | gdb/testsuite/gdb.base/macscp1.c | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.base/macscp1.c b/gdb/testsuite/gdb.base/macscp1.c new file mode 100644 index 0000000..89a1b07 --- /dev/null +++ b/gdb/testsuite/gdb.base/macscp1.c @@ -0,0 +1,80 @@ +#include <stdio.h> + +#define SPLICE(a, b) INNER_SPLICE(a, b) +#define INNER_SPLICE(a, b) a ## b +#define STRINGIFY(a) INNER_STRINGIFY(a) +#define INNER_STRINGIFY(a) #a + +/* A macro named UNTIL_<func> is #defined until just before the + definition of the function <func>. + + A macro named BEFORE_<func> is not #defined until just before the + definition of <func>. + + The macro WHERE is redefined before each function <func> to the + token list ``before <func>''. + + The macscp IN_MACSCP2_H and IN_MACSCP3_H are defined while + processing those header files; macscp4.h uses them to choose + appropriate function names, output strings, and macro definitions. */ + +#define UNTIL_MACSCP1_1 +#define UNTIL_MACSCP2_1 +#define UNTIL_MACSCP4_1_FROM_MACSCP2 +#define UNTIL_MACSCP4_2_FROM_MACSCP2 +#define UNTIL_MACSCP2_2 +#define UNTIL_MACSCP1_2 +#define UNTIL_MACSCP3_1 +#define UNTIL_MACSCP4_1_FROM_MACSCP3 +#define UNTIL_MACSCP4_2_FROM_MACSCP3 +#define UNTIL_MACSCP3_2 +#define UNTIL_MACSCP1_3 + +#define WHERE before macscp1_1 +#define BEFORE_MACSCP1_1 +#undef UNTIL_MACSCP1_1 +void +macscp1_1 () +{ + puts ("macscp1_1"); +} + +#include "macscp2.h" + +#undef WHERE +#define WHERE before macscp1_2 +#define BEFORE_MACSCP1_2 +#undef UNTIL_MACSCP1_2 +void +macscp1_2 () +{ + puts ("macscp1_2"); +} + +#include "macscp3.h" + +#undef WHERE +#define WHERE before macscp1_3 +#define BEFORE_MACSCP1_3 +#undef UNTIL_MACSCP1_3 +void +macscp1_3 () +{ + puts ("macscp1_3"); +} + +int +main (int argc, char **argv) +{ + macscp1_1 (); + macscp2_1 (); + macscp4_1_from_macscp2 (); + macscp4_2_from_macscp2 (); + macscp2_2 (); + macscp1_2 (); + macscp3_1 (); + macscp4_1_from_macscp3 (); + macscp4_2_from_macscp3 (); + macscp3_2 (); + macscp1_3 (); +} |