Ok dzięki faktycznie po zmianie kompilatora akceptuje :D. Zmiennej globalnej użyłem w drodze wyjątku, zazwyczaj ich unikam ;). Zastanawia mnie jedno: Dlaczego ten sam program kompilowany przez g++ 4.3.2 zajmuje niecałe 3MB a przez np gcc 6.3 ponad 15MB pamięci?