VLA は C++11 の一部ではないことを理解しており、GCC によるこの誤りを見てきました。それが Clang に切り替えた理由の一部です。しかし、今ではClangも見ています。私はclang 3.2(最新のものより1つ遅れています)を使用しており、 -pedanticおよび-std = c ++ 11でコンパイルしています
テストがコンパイルされず、まだコンパイルされて実行されていないことを期待しています。
int myArray[ func_returning_random_int_definitely_not_constexpr( ) ];
これはコンパイラのバグですか、それとも何か不足していますか?
コメントへの応答として、ここに random_int_function() があります
#include <random>
int random_int_function(int i)
{
std::default_random_engine generator;
std::uniform_int_distribution<int> distribution(1,100);
int random_int = distribution(generator);
return i + random_int;
}