extern void cb(const char code[]);
extern void cb2(char code[]);
template<typename T>
void f2(const T& expected) {
}
void f() {
char code[] = ""; // no warning
cb(code);
char code2[] = ""; // no warning
cb2(code2);
char code3[] = ""; // warning
f2(code3);
char code4[] = ""; // warning
char code5[1] = ""; // no warning
cb(code5);
}
https://godbolt.org/z/ed7r531Ec