With named arguments in php 8.0, it's important that php's modules
or PECL extensions using gen_stub.php don't generate functions
with duplicate names.
Warn if a parameter name is repeated,
even if the last occurrence is a variadic parameter
Closes GH-6035
}
}
+ $varNameSet = [];
$args = [];
$numRequiredArgs = 0;
$foundVariadic = false;
$preferRef = !empty($paramMeta[$varName]['preferRef']);
unset($paramMeta[$varName]);
+ if (isset($varNameSet[$varName])) {
+ throw new Exception("Duplicate parameter name $varName for function $name");
+ }
+ $varNameSet[$varName] = true;
+
if ($preferRef) {
$sendBy = ArgInfo::SEND_PREFER_REF;
} else if ($param->byRef) {