void TestFnc(int value) { } void TestFnc(array<int> values) { } ... TestFnc({1,2,3});
results in
--------------------------- Compile error --------------------------- [...] Array initialization of non-array type
for the line that tries to call the function.
I guess the compiler tries to match the wrong function overload which causes this error down the line. If ONLY the array overload exits this works fine. The ordering of functions does not matter.
The expected behavior would be {1,2,3} creates an array<int> instance, which is taken to match the function overloads - and thus the array variant is called.