prettier / prettier/plugin-php

Parse Error: unexpected T_CLASS for `new class {}::class;`

Open
#2,444 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
PHP
Stars
1.9k
Forks
139
PR merge metrics
No merged PRs in 30d

Description

@prettier/plugin-php v0.24.0
Playground link

Input:

<?php

new class {}::class;

Output:

Parse Error : syntax error, unexpected 'class' (T_CLASS) on line 3

  1 | <?php
  2 |
> 3 | new class {}::class;
    |              ^

Workaround I recommend to use for now:

get_class(new class {});

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the linked Playground reproduction for new class {}::class; and compare it with the documented get_class(new class {}); workaround. Trace the parser or formatter entry point reached by this input. Done means the input no longer produces the reported unexpected T_CLASS parse error.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.