Hope this helps.
Code:
$ cat star.c
#define MAX_POINTS 2000000

void run() {
  double ds[MAX_POINTS];
  ds[0] = 1.;
}

int main() {
  run();
  return 0;
}
$ gcc -c -fstack-usage star.c
$ cat star.su 
star.c:3:6:run	15999896	static
star.c:8:5:main	16	static
$ ./a.out 
Segmentation fault (core dumped)

$ gcc -c -Wstack-usage=10000 star.c
star.c: In function ‘run’:
star.c:6:1: warning: stack usage is 15999896 bytes [-Wstack-usage=]
 }
 ^