I have tested mediawiki/phan-taint-check-plugin 3.1.0 against core and it now shows:
float|int passed to foreach instead of array
for following code in PPTemplateFrame_Hash.php
$args = $this->numberedArgs + $this->namedArgs; foreach ( $args as $name => $value ) { if ( $first ) { $first = false; } else { $s .= ', '; } $s .= "\"$name\":\"" . str_replace( '"', '\\"', $value->__toString() ) . '"'; }
It is possible that taint is not assume the corret type here with the array plus?
There is no @var on the class properties, but taint could should be strong about the fact?
Phan without taint does not warn on this foreach.