chaitanyav added a comment. test outputs for C, C++
_Complex float invalid2 = { 1, 2, 3 }; ^ test.cpp:2:34: error: excess elements in scalar initializer _Complex double dd = {1.0, 2.0 , 3.0}; ^~~ test.cpp:3:32: error: excess elements in scalar initializer _Complex float fd = {1.0, 2.0, 3.0, 4.0, 5.0}; ^~~ test.cpp:4:42: error: excess elements in scalar initializer constexpr _Complex double d = {1.0, 2.0, 3.0, 45}; ^~~ test.cpp:11:23: error: no viable conversion from 'foo' to 'double' _Complex double ds = {f, 1.0, b}; ^ test.cpp:13:28: error: no viable conversion from 'foo' to 'double' _Complex double fg = {1.0, f}; ^ test.cpp:15:33: error: excess elements in scalar initializer _Complex double gg = {1.0, 2.0, f}; ^ 7 errors generated. test.c:1:35: warning: excess elements in scalar initializer [-Wexcess-initializers] _Complex float invalid2 = { 1, 2, 3 }; ^ test.c:2:34: warning: excess elements in scalar initializer [-Wexcess-initializers] _Complex double dd = {1.0, 2.0 , 3.0}; ^~~ test.c:3:32: warning: excess elements in scalar initializer [-Wexcess-initializers] _Complex float fd = {1.0, 2.0, 3.0, 4.0, 5.0}; ^~~ test.c:4:38: warning: excess elements in scalar initializer [-Wexcess-initializers] const _Complex double d = {1.0, 2.0, 3.0, 45}; ^~~ test.c:11:23: error: initializing 'double' with an expression of incompatible type 'struct foo' _Complex double ds = {f, 1.0, b}; ^ test.c:13:28: error: initializing 'double' with an expression of incompatible type 'struct foo' _Complex double fg = {1.0, f}; ^ test.c:15:33: warning: excess elements in scalar initializer [-Wexcess-initializers] _Complex double gg = {1.0, 2.0, f}; ^ test.c:19:22: error: scalar initializer cannot be empty _Complex double dx = {}; Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D146503/new/ https://reviews.llvm.org/D146503 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits