Skip to content

Raw "Not_found" error when matching optional enum abstract arg #13025

Description

@tobil4sk
enum abstract FlxMouseButtonID(Int) {
	var LEFT;
}

enum FlxMouseInputType {
	Button(?id:FlxMouseButtonID);
}

class Test {
	function test(input:FlxMouseInputType) {
		switch input {
			case Button(LEFT):
		}
	}
}
$ haxe Test
[ERROR] (unknown position)

   | Not_found

If FlxMouseButtonID is turned into a regular enum, then it gives a proper error:

[ERROR] Test.hx:12: characters 16-20

 12 |    case Button(LEFT):
    |                ^^^^
    | Unmatched patterns: Button(null)

The same error occurs on 3.4.7, so it is not a regression.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions