I just felt like I had to share this because I consider it an achievement! ^_^
Btw, the same code compiles fine with Visual C++ and clang.
g++ -std=c++1y -O -fopenmp -fdump-tree-ompexp -lboost_math_tr1 -I . -o recursive_omp_gcc recursive_omp_solution.cpp -g
In file included from recursive_omp_solution.cpp:7:0:
./Stuff/Statistics.hpp:28:8: internal compiler error: in gen_type_die_with_usage, at dwarf2out.c:19486
class XStatistics
^
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.8/README.Bugs> for instructions.
Preprocessed source stored into /tmp/ccOXYWdn.out file, please attach this to your bugreport.
Interestingly enough, removing the "-g" flag causes the compiler to compile fine (but the program still crashes and I don't know why; it works fine with clang and VC).
For those interested, here's a link to the source of the code that crashed the compiler. It will a nice little note in the history books.