3 ms·
That does not change the interface of the function. Function type compatibility looks at the adjusted parameter types, so the parameter is always treated as a s
by LegionMammal978 4y ago
That does not change the interface of the function. Function type compatibility looks at the adjusted parameter types, so the parameter is always treated as a simple pointer. Therefore, all of these declarations could be used to refer to the function:
static void qux(int n, int *a);
static void qux(int n, int a[]);
static void qux(int n, int a[*]);
static void qux(int n, int a[n]);
static void qux(int n, int a[12345]);
Weird interface problems mainly come when you have VLA types behind pointers.