[ https://issues.apache.org/jira/browse/NETBEANS-6414?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Olexandr Ponomarenko updated NETBEANS-6414: ------------------------------------------- Environment: Windows 10 64-bit NetBeans 12.6 binaries PHP 7.4.27 was: ** Windows 10 64-bit NetBeans 12.6 binaries PHP 7.4.27 > Go to declaration does not work in some circumstances > ----------------------------------------------------- > > Key: NETBEANS-6414 > URL: https://issues.apache.org/jira/browse/NETBEANS-6414 > Project: NetBeans > Issue Type: Bug > Components: php - Navigation > Affects Versions: 12.6 > Environment: Windows 10 64-bit > NetBeans 12.6 binaries > PHP 7.4.27 > Reporter: Olexandr Ponomarenko > Priority: Trivial > > The issue seems appears for class file that has "use" statement that has > first part of namespace and imported class file the same (MyTest in the > following examples). I will describe some strange cases which happen when > inclusion of such class name is used. In the following examples > resolved/unresolved means class file can or cannot be navigated to in > NetBeans using Ctrl-B key binding. Content of included files does not matter. > > 1. With that contents TestHistory is not resolved: > {code:php} > <?php > namespace MyTest\Controller; > use MyTest\Entity\MyTest; > use MyTest\Entity\TestHistory; > use MyTest\Entity\TestOne; > use MyTest\Entity\TestStatus; > use MyTest\Entity\TestTwo; > class TestController > { > } > {code} > 2. Adding comment in line with "use MyTest\Entity\MyTest;" makes TestStatus > not resolved but others resolvable: > {code:php} > <?php > namespace MyTest\Controller; > use MyTest\Entity\MyTest; // test > use MyTest\Entity\TestHistory; > use MyTest\Entity\TestOne; > use MyTest\Entity\TestStatus; > use MyTest\Entity\TestTwo; > class TestController > { > } > {code} > 3. Using "declare(strict_types=1);" makes TestOne not resolved: > {code:php} > <?php > declare(strict_types=1); > namespace MyTest\Controller; > use MyTest\Entity\MyTest; > use MyTest\Entity\TestHistory; > use MyTest\Entity\TestOne; > use MyTest\Entity\TestStatus; > use MyTest\Entity\TestTwo; > class TestController > { > } > {code} > 4. Placing strict types declaration right after opening php tag makes only > TestTwo not resolved: > {code:php} > <?php declare(strict_types=1); > namespace MyTest\Controller; > use MyTest\Entity\MyTest; > use MyTest\Entity\TestHistory; > use MyTest\Entity\TestOne; > use MyTest\Entity\TestStatus; > use MyTest\Entity\TestTwo; > class TestController > { > } > {code} > 5. Commenting strict types declaration with single comment makes any imported > class after line with "use MyTest\Entity\MyTest;" not resolved: > {code:php} > <?php > //declare(strict_types=1); > namespace MyTest\Controller; > use MyTest\Entity\MyTest; > use MyTest\Entity\TestHistory; > use MyTest\Entity\TestOne; > use MyTest\Entity\TestStatus; > use MyTest\Entity\TestTwo; > class TestController > { > } > {code} > 6. Adding multi line comment before "use MyTest\Entity\MyTest;" also makes > any imported class not resolved (but behaved differently during previous > checks yielding only to some classes resolved and some not): > {code:php} > <?php > /** > * > */ > declare(strict_types=1); > namespace MyTest\Controller; > use MyTest\Entity\MyTest; > use MyTest\Entity\TestHistory; > use MyTest\Entity\TestOne; > use MyTest\Entity\TestStatus; > use MyTest\Entity\TestTwo; > class TestController > { > } > {code} > There could be other combinations possible but I'm not gonna try every > possible scenario as weird behavior is proven to be reproducible. -- This message was sent by Atlassian Jira (v8.20.1#820001) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@netbeans.apache.org For additional commands, e-mail: commits-h...@netbeans.apache.org For further information about the NetBeans mailing lists, visit: https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists