diff --git a/tests/misc/projects/Issue11128/InitMacro.hx b/tests/misc/projects/Issue11128/InitMacro.hx new file mode 100644 index 00000000000..32fcea44bac --- /dev/null +++ b/tests/misc/projects/Issue11128/InitMacro.hx @@ -0,0 +1,25 @@ +import haxe.macro.Compiler; +import haxe.macro.Context; +import haxe.macro.Type; + +class InitMacro { + static function setup() { + switch (Compiler.getConfiguration().platform) { + case CustomTarget("mylang"): {} + case _: throw "this shouldnt happen."; + } + + Context.onAfterTyping(check); + } + + static function check(types:Array) { + for (m in types) { + switch (m) { + case TClassDecl(_.get() => c): + for (f in c.fields.get()) f.expr(); + + case _: + } + } + } +} diff --git a/tests/misc/projects/Issue11128/Main2.hx b/tests/misc/projects/Issue11128/Main2.hx new file mode 100644 index 00000000000..a71cf3b3e00 --- /dev/null +++ b/tests/misc/projects/Issue11128/Main2.hx @@ -0,0 +1 @@ +function main() {} diff --git a/tests/misc/projects/Issue11128/compile5.hxml b/tests/misc/projects/Issue11128/compile5.hxml new file mode 100644 index 00000000000..33c3a1a1ca8 --- /dev/null +++ b/tests/misc/projects/Issue11128/compile5.hxml @@ -0,0 +1,3 @@ +-main Main2 +--custom-target mylang=out +--macro InitMacro.setup() diff --git a/tests/misc/projects/Issue11128/mylang/Init.hx b/tests/misc/projects/Issue11128/mylang/Init.hx new file mode 100644 index 00000000000..7a4649b31e7 --- /dev/null +++ b/tests/misc/projects/Issue11128/mylang/Init.hx @@ -0,0 +1,6 @@ +package mylang; + +class Init { + public static function init() { + } +}