Huge performance improvements for taint analysis #806
Annotations
10 errors
LessSpecificImplementedReturnType:
examples/plugins/TaintActiveRecords.php#L30
examples/plugins/TaintActiveRecords.php:30:16: LessSpecificImplementedReturnType: The inherited return type 'int<0, max>' for Psalm\Plugin\EventHandler\AddTaintsInterface::addTaints is more specific than the implemented return type for Psalm\Example\Plugin\TaintActiveRecords::addtaints 'int' (see https://psalm.dev/166)
|
PropertyTypeCoercion:
src/Psalm/Internal/Analyzer/CommentAnalyzer.php#L246
src/Psalm/Internal/Analyzer/CommentAnalyzer.php:246:17: PropertyTypeCoercion: $var_comment->removed_taints expects 'int<0, max>', parent type 'int' provided (see https://psalm.dev/198)
|
PropertyTypeCoercion:
src/Psalm/Internal/Analyzer/Statements/Expression/ArrayAnalyzer.php#L489
src/Psalm/Internal/Analyzer/Statements/Expression/ArrayAnalyzer.php:489:49: PropertyTypeCoercion: $taint_source->taints expects 'int<0, max>', parent type 'int' provided (see https://psalm.dev/198)
|
PropertyTypeCoercion:
src/Psalm/Internal/Analyzer/Statements/Expression/Assignment/InstancePropertyAssignmentAnalyzer.php#L512
src/Psalm/Internal/Analyzer/Statements/Expression/Assignment/InstancePropertyAssignmentAnalyzer.php:512:45: PropertyTypeCoercion: $taint_source->taints expects 'int<0, max>', parent type 'int' provided (see https://psalm.dev/198)
|
PropertyTypeCoercion:
src/Psalm/Internal/Analyzer/Statements/Expression/Assignment/InstancePropertyAssignmentAnalyzer.php#L614
src/Psalm/Internal/Analyzer/Statements/Expression/Assignment/InstancePropertyAssignmentAnalyzer.php:614:37: PropertyTypeCoercion: $taint_source->taints expects 'int<0, max>', parent type 'int' provided (see https://psalm.dev/198)
|
ArgumentTypeCoercion:
src/Psalm/Internal/Analyzer/Statements/Expression/AssignmentAnalyzer.php#L454
src/Psalm/Internal/Analyzer/Statements/Expression/AssignmentAnalyzer.php:454:13: ArgumentTypeCoercion: Argument 11 of Psalm\Internal\Analyzer\Statements\Expression\AssignmentAnalyzer::analyzeAssignment expects int<0, max>, but parent type int-mask-of<class-constant(Psalm\Type\TaintKind::*)> provided (see https://psalm.dev/193)
|
ArgumentTypeCoercion:
src/Psalm/Internal/Analyzer/Statements/Expression/AssignmentAnalyzer.php#L505
src/Psalm/Internal/Analyzer/Statements/Expression/AssignmentAnalyzer.php:505:17: ArgumentTypeCoercion: Argument 8 of Psalm\Internal\Analyzer\Statements\Expression\AssignmentAnalyzer::analyzeAssignValueDataFlow expects int<0, max>, but parent type int-mask-of<class-constant(Psalm\Type\TaintKind::*)> provided (see https://psalm.dev/193)
|
ReferenceConstraintViolation:
src/Psalm/Internal/Analyzer/Statements/Expression/AssignmentAnalyzer.php#L615
src/Psalm/Internal/Analyzer/Statements/Expression/AssignmentAnalyzer.php:615:14: ReferenceConstraintViolation: Variable $removed_taints is limited to values of type int-mask-of<class-constant(Psalm\Type\TaintKind::*)> because it is passed by reference, int<0, max> type found. Use @param-out to specify a different output type (see https://psalm.dev/086)
|
ReferenceConstraintViolation:
src/Psalm/Internal/Analyzer/Statements/Expression/AssignmentAnalyzer.php#L618
src/Psalm/Internal/Analyzer/Statements/Expression/AssignmentAnalyzer.php:618:13: ReferenceConstraintViolation: Variable $removed_taints is limited to values of type int-mask-of<class-constant(Psalm\Type\TaintKind::*)> because it is passed by reference, int<0, max> type found. Use @param-out to specify a different output type (see https://psalm.dev/086)
|
ReferenceConstraintViolation:
src/Psalm/Internal/Analyzer/Statements/Expression/AssignmentAnalyzer.php#L647
src/Psalm/Internal/Analyzer/Statements/Expression/AssignmentAnalyzer.php:647:13: ReferenceConstraintViolation: Variable $removed_taints is limited to values of type int-mask-of<class-constant(Psalm\Type\TaintKind::*)> because it is passed by reference, int<0, max> type found. Use @param-out to specify a different output type (see https://psalm.dev/086)
|