Skip to content

False Positive: WARNING Code after the EXIT statement on line [...] cannot be executed #3638

Closed
@jcvignoli

Description

@jcvignoli

Describe the bug
False Positive is thrown: WARNING Code after the EXIT statement on line [...] cannot be executed while it is a conditional exit statement.

Code sample

$get_text = filter_input( INPUT_POST, 'text', FILTER_SANITIZE_STRING );
$text = $get_text !== false ? $get_text : die( 'Cannot add this text' );
[further code follows..]

Custom ruleset

<?xml version="1.0"?>
	<ruleset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="wikileaks_phpcs" xsi:noNamespaceSchemaLocation="https://raw.githubusercontent.com/squizlabs/PHP_CodeSniffer/master/phpcs.xsd">
	<rule ref="NeutronStandard">
		<exclude name="Generic.Commenting.Todo"/>
		<exclude name="Squiz.PHP.CommentedOutCode"/>
		<exclude name="NeutronStandard.Functions.LongFunction.LongFunction"/>
		<exclude name="NeutronStandard.AssignAlign.DisallowAssignAlign"/>
		<exclude name="Squiz.PHP.EmbeddedPhp"/>
		<exclude name="Generic.Formatting.MultipleStatementAlignment.NotSameWarning"/>
		<!-- Exclude those rules, specific to WordPress -->
		<exclude name="WordPress.DB.PreparedSQLPlaceholders" />
		<exclude name="WordPress.DB.PreparedSQL"/>
		<exclude name="WordPress.DB.RestrictedFunctions"/>
		<exclude name="WordPress.DB.RestrictedClasses"/>
		<exclude name="WordPress.NamingConventions.ValidVariableName"/>
		<exclude name="WordPress.Files.FileName"/>
	</rule> 

	<!-- Include the WordPress-Extra standard.-->
	<rule ref="WordPress-Extra">
		<exclude name="Generic.Arrays.DisallowShortArraySyntax"/>
		<exclude name="WordPress.PHP.YodaConditions"/>
		<exclude name="WordPress.WhiteSpace.ControlStructureSpacing"/>
		<!-- Exclude those rules, specific to WordPress -->
		<exclude name="WordPress.Security.NonceVerification"/>
		<exclude name="WordPress.Security.EscapeOutput"/>
		<exclude name="WordPress.Security.SafeRedirect"/>
		<exclude name="WordPress.WP.EnqueuedResources"/>
		<exclude name="WordPress.WP.EnqueuedResourceParameters"/>
		<exclude name="WordPress.WP.GlobalVariablesOverride"/>
		<exclude name="WordPress.WP.AlternativeFunctions"/>
	</rule> 
	<rule ref="WordPress.Arrays.MultipleStatementAlignment">
		<properties>
			<property name="maxColumn" value="60"/>
			<property name="exact" value="true" phpcs-only="true"/>
		</properties>
	</rule>
	<rule ref="Generic.Strings.UnnecessaryStringConcat">
		<type>warning</type>
	</rule>
</ruleset>

Expected behavior
Since it is a conditional exit, PHPCS shouldn't report a warning.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions