blob: 6b5c85557c991c1cc130035598513948abf916c9 [file] [log] [blame]
struct st
{
const char *m_filename;
int m_line;
const char *m_function;
};
extern void debug (struct st *);
#define TEST_x_1(NAME) \
do \
{ \
static struct st NAME = { __FILE__, __LINE__, __func__ }; \
debug (&NAME); \
} \
while (0)
#define TEST_x_10(PREFIX) \
do \
{ \
TEST_x_1(PREFIX ## _1); \
TEST_x_1(PREFIX ## _2); \
TEST_x_1(PREFIX ## _3); \
TEST_x_1(PREFIX ## _4); \
TEST_x_1(PREFIX ## _5); \
TEST_x_1(PREFIX ## _6); \
TEST_x_1(PREFIX ## _7); \
TEST_x_1(PREFIX ## _8); \
TEST_x_1(PREFIX ## _9); \
TEST_x_1(PREFIX ## _10); \
} \
while(0)
#define TEST_x_100(PREFIX) \
do \
{ \
TEST_x_10(PREFIX ## _1); \
TEST_x_10(PREFIX ## _2); \
TEST_x_10(PREFIX ## _3); \
TEST_x_10(PREFIX ## _4); \
TEST_x_10(PREFIX ## _5); \
TEST_x_10(PREFIX ## _6); \
TEST_x_10(PREFIX ## _7); \
TEST_x_10(PREFIX ## _8); \
TEST_x_10(PREFIX ## _9); \
TEST_x_10(PREFIX ## _10); \
} \
while(0)
#define TEST_x_1000(PREFIX) \
do \
{ \
TEST_x_100(PREFIX ## _1); \
TEST_x_100(PREFIX ## _2); \
TEST_x_100(PREFIX ## _3); \
TEST_x_100(PREFIX ## _4); \
TEST_x_100(PREFIX ## _5); \
TEST_x_100(PREFIX ## _6); \
TEST_x_100(PREFIX ## _7); \
TEST_x_100(PREFIX ## _8); \
TEST_x_100(PREFIX ## _9); \
TEST_x_100(PREFIX ## _10); \
} \
while(0)
void test_many (void)
{
TEST_x_1000(s);
}