waneck / testrepo

0 stars 0 forks source link

Issue 963 - Recent Regression issue - haxe #963

Closed waneck closed 11 years ago

waneck commented 11 years ago

[Google Issue #963 : http://code.google.com/haxe/issues/detail?id=963] by ncanna...@gmail.com, at 2012-06-19T08:40:31.000Z The following no longer works :

The compilation server aborts because of an assert in codegen.ml : the type Std is not found in context, which seems strange.

Looks like Columbo has one more mystery to solve.

--interp might be the culprit, although I'm not sure.

waneck commented 11 years ago

[comment from simon.kr...@simn.de, published at 2012-06-19T13:41:40.000Z] Minimal example:

class Main { static public function main() { cast("foo", String); test(); }

@:macro static public function test() {
    return macro "foo";
}

}

Compile twice with haxe -main Main --interp --connect 6000

The modules are reused within macro context: Reusing cached module Std (macro = true) Reusing cached module haxe.macro.Expr (macro = true) ...

But that's as far as I get in terms of investigation, not really sure how the different contexts, the cache and com.types are supposed to interact.

waneck commented 11 years ago

[comment from ncanna...@gmail.com, published at 2012-06-19T19:58:35.000Z] Could you confirm that it comes from our changes in --interp ?

waneck commented 11 years ago

[comment from simon.kr...@simn.de, published at 2012-06-19T20:58:16.000Z] Before the change above example didn't even compile once due to the DynArray exception. Same for the unit tests, all macro calls in there used to be within #if macro ... #end, so this is actually not a regression.

waneck commented 11 years ago

[comment from ncanna...@gmail.com, published at 2012-06-20T12:15:37.000Z] That actually prevents me from compiling unit tests under FlashDevelop since it's configured to use compilation server by default.

waneck commented 11 years ago

[comment from simon.kr...@simn.de, published at 2012-06-20T12:54:08.000Z] I have reverted the --interp changes, maybe try again later.