Java Exception on PHP short tags

Hi there,

I am using a local Windows installation of SonarQube Community edition v10.6 with the mebedded database.

I am scanning a PHP project in which I us PHP short tags, e.g. <?= $myInteger++ ?> . My sonar.properties file looks like this:

sonar.host.url=http://localhost:9000
sonar.projectKey=MyApp
sonar.projectName=MyApp
sonar.token=sqp_858b4f58660128e7747fc22a67d0c007b02f08dc
sonar.language=php
sonar.sources=src
sonar.tests=tests
sonar.projectVersion=3.8.2
sonar.sourceEncoding=UTF-8
sonar.exclusions=src/addons/**/*.*, src/fonts/**/*.*, src/js/**/*.*, src/sql/**/*.*, src/themes/**/*.*, src/vendor/**, src/upload/**/*.*, dist/**/*.*

The scanner produces a Java exception on these short tags:

17:42:33.602 ERROR Cannot analyze file src/views/permissions.php
java.lang.NumberFormatException: For input string: "<?= $tabindex++; ?>"
        at java.base/jdk.internal.math.FloatingDecimal.readJavaFormatString(Unknown Source)
        at java.base/jdk.internal.math.FloatingDecimal.parseDouble(Unknown Source)
        at java.base/java.lang.Double.parseDouble(Unknown Source)
        at org.sonar.plugins.html.api.accessibility.AccessibilityUtils.isFocusableElement(AccessibilityUtils.java:53)
        at org.sonar.plugins.html.checks.accessibility.NoAriaHiddenOnFocusableCheck.startElement(NoAriaHiddenOnFocusableCheck.java:39)
        at org.sonar.plugins.html.visitor.HtmlAstScanner.scanElementTag(HtmlAstScanner.java:111)
        at org.sonar.plugins.html.visitor.HtmlAstScanner.scanElement(HtmlAstScanner.java:90)
        at org.sonar.plugins.html.visitor.HtmlAstScanner.scan(HtmlAstScanner.java:74)
        at org.sonar.plugins.html.visitor.HtmlAstScanner.scan(HtmlAstScanner.java:57)
        at org.sonar.plugins.html.core.HtmlSensor.execute(HtmlSensor.java:121)
        at org.sonar.scanner.sensor.AbstractSensorWrapper.analyse(AbstractSensorWrapper.java:64)
        at org.sonar.scanner.sensor.ModuleSensorsExecutor.execute(ModuleSensorsExecutor.java:88)
        at org.sonar.scanner.sensor.ModuleSensorsExecutor.lambda$execute$1(ModuleSensorsExecutor.java:61)
        at org.sonar.scanner.sensor.ModuleSensorsExecutor.withModuleStrategy(ModuleSensorsExecutor.java:79)
        at org.sonar.scanner.sensor.ModuleSensorsExecutor.execute(ModuleSensorsExecutor.java:61)
        at org.sonar.scanner.scan.SpringModuleScanContainer.doAfterStart(SpringModuleScanContainer.java:82)
        at org.sonar.core.platform.SpringComponentContainer.startComponents(SpringComponentContainer.java:226)
        at org.sonar.core.platform.SpringComponentContainer.execute(SpringComponentContainer.java:205)
        at org.sonar.scanner.scan.SpringProjectScanContainer.scan(SpringProjectScanContainer.java:204)
        at org.sonar.scanner.scan.SpringProjectScanContainer.scanRecursively(SpringProjectScanContainer.java:200)
        at org.sonar.scanner.scan.SpringProjectScanContainer.doAfterStart(SpringProjectScanContainer.java:173)
        at org.sonar.core.platform.SpringComponentContainer.startComponents(SpringComponentContainer.java:226)
        at org.sonar.core.platform.SpringComponentContainer.execute(SpringComponentContainer.java:205)
        at org.sonar.scanner.bootstrap.SpringScannerContainer.doAfterStart(SpringScannerContainer.java:351)
        at org.sonar.core.platform.SpringComponentContainer.startComponents(SpringComponentContainer.java:226)
        at org.sonar.core.platform.SpringComponentContainer.execute(SpringComponentContainer.java:205)
        at org.sonar.scanner.bootstrap.SpringGlobalContainer.doAfterStart(SpringGlobalContainer.java:144)
        at org.sonar.core.platform.SpringComponentContainer.startComponents(SpringComponentContainer.java:226)
        at org.sonar.core.platform.SpringComponentContainer.execute(SpringComponentContainer.java:205)
        at org.sonar.scanner.bootstrap.ScannerMain.runScannerEngine(ScannerMain.java:149)
        at org.sonar.scanner.bootstrap.ScannerMain.run(ScannerMain.java:66)
        at org.sonar.scanner.bootstrap.ScannerMain.main(ScannerMain.java:52)

How can I fix that?

Best regards,
George

Hi,

Welcome to the community!

Unfortunately, this is likely to be something we have to fix. Can you provide a compact reproducer? I.e. the minimum file to reproduce this error?

 
Thx,
Ann

sonartest.zip (1.1 KB)
I have put together this simple set of two files for which I get the same error running the sonar-scanner CLI.
Best regards,
George

1 Like

Hi,

Thanks for that. I’ve flagged this for the language experts.

 
Ann

Hi George,

this is a bug in our analyzer, here is a ticket to fix it

https://sonarsource.atlassian.net/browse/SONARHTML-250