Warum ist ein zusätzliches Komma in einer Parameterliste nicht zulässig, wenn es in einer Klammerinitialisierung zulässig ist?

Follow-up auf eine alte Frage von mir Ist am Ende einer geschweiften Klammer eine Relevanz für ein zusätzliches "," vorhanden?)

Gibt es technische Gründe, warum die Parameterliste in Funktionsdeklarationen und Funktionsaufrufen nicht wie die Klammerinitialisierung codegenerierungsfreundlich gestaltet wurde?

Was ich meine ist

Das ist ok, das extra, wird ignoriert:

int generated_array[] = {
  1,
  2,
  3,
};

äre es aus Gründen der Konsistenz nicht auch sinnvoll, dies zuzulasse

int someFunc(
  int v1,
  int v2,
  int v3,
){...}

int ret_val = someFunc(
  1,
  2,
  3,
);

Ich kann nicht sehen, wie es die Kompilierung komplizierter machen würde, aber vielleicht gibt es etwas, an das ich nicht denke. Ich würde vermuten, es würde es tatsächlich ein wenig vereinfachen.

atürlich kann man argumentieren, dass es nicht so nützlich ist wie die Klammerinitialisierung, aber es sollte Fälle geben, in denen die Codegenerierung zumindest ein bisschen einfacher wäre, wenn dies erlaubt wär

Antworten auf die Frage(8)

Ihre Antwort auf die Frage