blob: 48d4023946a027f1d986081de2b748c683b49f1e [file] [log] [blame]
/* { dg-additional-options "-Wno-analyzer-double-free" } */
#define DOUBLE_FREE() \
do { \
void *p = __builtin_malloc (1024); \
__builtin_free (p); \
__builtin_free (p); \
} while (0)
#define DOUBLE_FREE_x_10() \
do { \
DOUBLE_FREE(); \
DOUBLE_FREE(); \
DOUBLE_FREE(); \
DOUBLE_FREE(); \
DOUBLE_FREE(); \
DOUBLE_FREE(); \
DOUBLE_FREE(); \
DOUBLE_FREE(); \
DOUBLE_FREE(); \
DOUBLE_FREE(); \
} while (0)
#define DOUBLE_FREE_x_100() \
do { \
DOUBLE_FREE_x_10(); \
DOUBLE_FREE_x_10(); \
DOUBLE_FREE_x_10(); \
DOUBLE_FREE_x_10(); \
DOUBLE_FREE_x_10(); \
DOUBLE_FREE_x_10(); \
DOUBLE_FREE_x_10(); \
DOUBLE_FREE_x_10(); \
DOUBLE_FREE_x_10(); \
DOUBLE_FREE_x_10(); \
} while (0)
#define DOUBLE_FREE_x_1000() \
do { \
DOUBLE_FREE_x_100(); \
DOUBLE_FREE_x_100(); \
DOUBLE_FREE_x_100(); \
DOUBLE_FREE_x_100(); \
DOUBLE_FREE_x_100(); \
DOUBLE_FREE_x_100(); \
DOUBLE_FREE_x_100(); \
DOUBLE_FREE_x_100(); \
DOUBLE_FREE_x_100(); \
DOUBLE_FREE_x_100(); \
} while (0)
void test_1 (void)
{
DOUBLE_FREE_x_1000 ();
}