#include <stdio.h>
#include <string.h>

void foo(int num)
{
    int array[num];
    printf("inside foo(): sizeof(array) is %u! oh, mother fucking god!\n", sizeof(array));
}

void bar(int num)
{
    int array[num];
    printf("inside bar()\n");
    memset(array, 0x55, sizeof(array));
}

int main(void)
{
    setvbuf(stdout, NULL, _IONBF, 0);
    
    const int num = 0x3fffffff;

    printf("before foo()\n");
    foo(num);
    printf("after  foo()\n");

    printf("before bar()\n");
    bar(num);
    printf("after  bar()\n");

    return 0;
}
