https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61380
--- Comment #2 from Markus Ilmola <markus.ilmola at pp dot inet.fi> --- I am not a c++ expert, but I think that the code should NOT compile. The point of the code was to create a function template that only accepts non-nested arrays (arrays with order of 1). So F(c) should not compile. Only F(b) should compile. Tested clang and vc++ (using http://rextester.com/runcode) and they both compile only F(b) (and reject F(c)). So bug here is the segmentation fault, not that the code was rejected (if you can call segmentation fault a way of rejecting code)