The C program below fails to compile with gcc due to an error about the size of test_array not being a compile time constant. Why?
struct HWND__ { int unused; };
typedef struct HWND__ *HWND;
void test()
{
static int test_array[ (unsigned long long)((HWND)1) ];
}
Error produced is:
test.c: In function ‘test’:
test.c:5:14: error: storage size of ‘test_array’ isn’t constant
static int test_array[ (unsigned long long)((HWND)1) ];
^