To Reproduce
Steps to reproduce the behavior: copy-paste this script to the IDE
<?php
declare(strict_types=1);
namespace ns1\ns2;
class Test40 {}
function fn1($a) {echo $a;}
$var1 = 10;
enum Test40b: string {
case Hearts = "H";
case Diamonds = "D";
case Clubs = "C";
case Spades = "S";
case Case1; // already correct error trigger
case Case2 = "H"; // this statement must trigger error
case Case3 = "foo"."bar"; // OK
case Case4 = Test40::class; // OK
case Case5 = 10; // this statement must trigger error
case Case6 = 10*20; // this statement must trigger error
case Case7 = 10*$var1; // this statement must trigger error
case Case8 = [10]; // this statement must trigger error
case Case9 = $var1[10]; // this statement must trigger error
case Case10 = true; // this statement must trigger error
case Case11 = null; // this statement must trigger error
case Case12 = new Test40(); // this statement must trigger error
case Case13 = new Test40("foo"); // this statement must trigger error
case Case14 = fn($a) => $a*2; // this statement must trigger error
case Case15 = $var1 > 100; // this statement must trigger error
case Case16 = $var1 > 100 ? "foo" : "bar"; // this statement must trigger error
case Case17 = $var1 ?? "foo"; // this statement must trigger error
case Case18 = match ($var1) { // this statement must trigger error
10 => "foo",
20 => "bar",
30 => "baz",
};
}
Bug Description Missing error on duplicate, invalid, or missing value of backed enum.
Eclipse environment Version: 2023-06 (4.28.0) Build id: 20230608-1333 PDT: 8.0.0.202306050832
System
To Reproduce Steps to reproduce the behavior: copy-paste this script to the IDE