Visual C akzeptiert die falsche Anzahl von Argumenten?
Warum wird diese Kompilierung in Visual Studio ausgeführt:
void foo(int a) {}
int main() {
foo(1,2);
}
Es gibt eine Warnung
source_file.c(4) : warning C4020: 'foo' : too many actual parameters
Aber warum ist es kein Fehler, wie es bei gcc / clang der Fall ist?
Ich kenne die Funktionsdefinitionen im K & R-Stil, aber das würde nur für @ geltefoo()
was eine variable Anzahl von Argumenten annehmen würde.
Zitate aus dem Standard, die dies erlauben, wären sehr dankbar.