prettier / prettier/plugin-php

Unexpected syntax error with multi-level scope resolution

Offen
#2,175 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

bug upstream
Vorherrschende Sprache
PHP
Sterne
1.9k
Forks
139
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

@prettier/plugin-php v0.19.4
Playground link

Input:

<?php
enum Bar: int {
    case test = 42;
}

class Foo
{
	const BarInFoo = Bar::test;
}

print Foo::BarInFoo::class; //Prints Bar
?>

Output:

Parse Error : syntax error, unexpected '::' (T_DOUBLE_COLON) on line 11

   9 | }
  10 |
> 11 | print Foo::BarInFoo::class; //Prints Bar
     |                   ^
  12 | ?>

Expected behavior:

No error reported.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Reproduziere den Syntaxfehler mit dem verlinkten Playground-Beispiel und der bereitgestellten PHP-Eingabe. Verfolge, wie das Plugin den verketteten Ausdruck Foo::BarInFoo::class analysiert, füge anschließend eine Regressionstestabdeckung für die erwartete erfolgreiche Analyse hinzu und überprüfe, dass kein Fehler gemeldet wird.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
php
Bereich
compilers
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.