check flags: building check-recursive Making check in . make[1]: Entering directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706' building all-local /nix/store/p2ilyhcckkkab8y0bph6n4lkzkvh20z4-strategoxt-0.17pre18269-a0f0wy0j/bin/xtc -r /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/BUILDTIME_XTC import /nix/store/5rqry3rr7jy0daqfbg68h6ws66mxavqb-java-front-0.9pre1823618236-frb8zh7m/share/java-front/XTC /nix/store/p2ilyhcckkkab8y0bph6n4lkzkvh20z4-strategoxt-0.17pre18269-a0f0wy0j/bin/xtc -r /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/BUILDTIME_XTC import /nix/store/g2sk68xqg5727nbwihn5wxz728fxmmly-dryad-0.2pre1835518355-1ydq94zz/share/dryad/XTC Tools registered in repository /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/BUILDTIME_XTC: Data registered in repository /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/BUILDTIME_XTC: dryad-compiler.m4 make[1]: Leaving directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706' Making check in syntax make[1]: Entering directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/syntax' building all-local Tools registered in repository /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/BUILDTIME_XTC: Data registered in repository /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/BUILDTIME_XTC: Bytecode.def Bytecode.tbl Java-Bytecode.def Java-Bytecode.tbl Stratego-Java-Bytecode.def Stratego-Java-Bytecode.tbl Bytecode.str Bytecode.rtree Java-Bytecode.str Java-Bytecode.rtree Bytecode.def Bytecode.tbl Java-Bytecode.def Java-Bytecode.tbl Stratego-Java-Bytecode.def Stratego-Java-Bytecode.tbl Bytecode-Classes.sdf Bytecode-Constants.sdf Bytecode-Flags.sdf Bytecode-Identifiers.sdf Bytecode-Instructions.sdf Bytecode-Members.sdf Bytecode-Signatures.sdf Bytecode-Tags.sdf Bytecode-Types.sdf Bytecode.sdf Compatible-Bytecode.sdf Java-Bytecode.sdf Stratego-Java-Bytecode.sdf make[1]: Leaving directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/syntax' Making check in lib make[1]: Entering directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/lib' building all-local Tools registered in repository /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/BUILDTIME_XTC: Data registered in repository /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/BUILDTIME_XTC: dryad-compiler.rtree dryad-compiler/backend/asm.rtree dryad-compiler/backend/emit.rtree dryad-compiler/backend/optimize.rtree dryad-compiler/backend/unasm.rtree dryad-compiler/backend/verify.rtree dryad-compiler/backend/asm/catch-wraps.rtree dryad-compiler/backend/asm/common.rtree dryad-compiler/backend/asm/debug-info.rtree dryad-compiler/backend/asm/jump-labels.rtree dryad-compiler/backend/asm/matching.rtree dryad-compiler/backend/asm/method-body.rtree dryad-compiler/backend/asm/register-locals.rtree dryad-compiler/backend/asm/type-check.rtree dryad-compiler/backend/asm/verify-locals.rtree dryad-compiler/backend/asm/optimize/dead-code.rtree dryad-compiler/backend/asm/optimize/patterns.rtree dryad-compiler/backend/asm/transform/flatten.rtree dryad-compiler/backend/asm/transform/flow-state.rtree dryad-compiler/backend/asm/transform/traverse.rtree dryad-compiler/backend/asm/instructions/common.rtree dryad-compiler/backend/asm/instructions/invokes.rtree dryad-compiler/backend/asm/instructions/simple.rtree dryad-compiler/backend/asm/instructions/specialized.rtree dryad-compiler/backend/emit/arrays.rtree dryad-compiler/backend/emit/assertions.rtree dryad-compiler/backend/emit/bytecode.rtree dryad-compiler/backend/emit/common.rtree dryad-compiler/backend/emit/conversions.rtree dryad-compiler/backend/emit/exceptions.rtree dryad-compiler/backend/emit/fields.rtree dryad-compiler/backend/emit/initializers.rtree dryad-compiler/backend/emit/inner-classes.rtree dryad-compiler/backend/emit/invokes.rtree dryad-compiler/backend/emit/literals.rtree dryad-compiler/backend/emit/locals.rtree dryad-compiler/backend/emit/methods.rtree dryad-compiler/backend/emit/modules.rtree dryad-compiler/backend/emit/operators.rtree dryad-compiler/backend/emit/statements.rtree dryad-compiler/backend/emit/this.rtree dryad-compiler/backend/emit/types.rtree dryad-compiler/backend/unasm/instructions.rtree dryad-compiler/backend/unasm/jump-labels.rtree dryad-compiler/backend/unasm/locals.rtree dryad-compiler/backend/unasm/signatures.rtree dryad-compiler/frontend/errors.rtree dryad-compiler/frontend/expand.rtree dryad-compiler/frontend/front.rtree dryad-compiler/frontend/parse.rtree dryad-compiler/frontend/type-checker.rtree dryad-compiler/util/errors.rtree dryad-compiler/util/eval.rtree dryad-compiler/util/io.rtree dryad-compiler/util/options.rtree dryad-compiler/util/pretty-print.rtree dryad-compiler/util/trace/flatten.rtree dryad-compiler/util/trace/rewrite.rtree dryad-compiler/util/trace/traverse.rtree dryad-compiler/lib-ext/common.rtree dryad-compiler/lib-ext/debug.rtree dryad-compiler/lib-ext/java.rtree dryad-compiler/lib-ext/list.rtree dryad-compiler/lib-ext/tests.rtree dryad-compiler/lib-ext/xtc.rtree libdryad-compiler.rtree make[1]: Leaving directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/lib' Making check in xtc make[1]: Entering directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/xtc' building all-local Tools registered in repository /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/BUILDTIME_XTC: dryad-compiler dryad-back javac-pp auto-dryad-compiler dryad-compiler-pp Data registered in repository /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/BUILDTIME_XTC: make[1]: Leaving directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/xtc' Making check in tests make[1]: Entering directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/tests' building all-local /nix/store/p2ilyhcckkkab8y0bph6n4lkzkvh20z4-strategoxt-0.17pre18269-a0f0wy0j/bin/xtc -r /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/BUILDTIME_XTC import /nix/store/g2sk68xqg5727nbwihn5wxz728fxmmly-dryad-0.2pre1835518355-1ydq94zz/share/dryad/XTC Tools registered in repository /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/BUILDTIME_XTC: test-main Data registered in repository /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/BUILDTIME_XTC: building check-am make check-TESTS make[2]: Entering directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/tests' building check-TESTS test suite: All tests ======================================================================= Utility strategies strc scoping strip-bytecode-tags (1) strip-bytecode-tags (2) strip-bytecode-tags (3) strip-trace-tags (1) strip-trace-tags (2) strip-trace-tags (3) strip-bytecode-tags (label) flatten-bytecode flatten-bytecode (label) bc-maybe-apply-to-wrap (list) bc-maybe-apply-to-wrap (single item) bc-number-wrapped ignores empty list bc-number-wrapped does not count labels bc-number-wrapped includes wraps in traversal (but does not count them) bc-number-wrapped does post-order traversal for wraps add-bytecode-embedding-tag: expression add-bytecode-embedding-tag: expression with return add-bytecode-embedding-tag: statement add-bytecode-embedding-tag: statement with return add-bytecode-embedding-tag: input returns value add-bytecode-embedding-tag: input causes stack underflow if-switch-on - on by default if-switch-on - on by user if-switch-on - off by user bc-unify-types - string is object bc-unify-types - string with charsequence = object bc-unify-types - charsequence is charsequence bc-unify-types - charsequence is object bc-unify-types - object is object bc-unify-types - reader is common supertype bc-unify-types - reader is common supertype (2) bc-unify-types - object is common supertype bc-unify-types - Int is Int bc-unify-types - Int is Byte bc-unify-types - Int is not Long bc-unify-types - Int is not an object bc-unify-types - null is String bc-unify-types - null is Object bc-unify-types - null is Reader bc-unify-types - null is not Int is-bc-subtype - null is String is-bc-subtype - String is not null is-bc-subtype - null is not Int is-bc-subtype - int is not null ======================================================================= Frontend Simple Java integer expression (dryad-front library) Simple Java integer expression (integrated frontend) Simple bytecode integer expression Integer expression with if Integer with bad stack depth/type Unreachable expression push Unreachable statement Bytecode expression using Java local Bytecode expression using unexisting Java local Bytecode expression using out-of-scope Java local Bytecode expression using renamed Java local Typing Java local in Java-in-bytecode-in-Java Typing Java-in-bytecode local in bytecode Typing bytecode-in-Java local in Java Typing bytecode-in-Java-in-... local in Java Typing bytecode-in-Java local in Java-in-bytecode-in-Java 'As' operator as Java-in-bytecode-in-Java Typing of inner Java in outer bytecode Variable type determined after jump (front) Typing of inner Java in class file Typing of bytecode method in Java class No typing occurs in traced code No complaints about lack of typing in traced code Frontend error for: int i = `pop Frontend error for: int i = `nop Frontend error for: int i = `push `undeclared; No frontend error for: int i = `push `1; ======================================================================= Analysis Pop empty stack Empty bytecode statement If with empty condition If with condition on stack If with required push in one arm If with required push both arms Argument that implements two interfaces Local that implements two interfaces Invoke on unimplemented interface Invoke with unimplemented interface on argument Method does not return a value. ADD does not work on strings Bytecode expression using multiply defined Java local Bytecode expression using 2 multiply defined Java locals Bytecode local with same name as scoped Java local Bytecode local with same name as scoped Java local (2) Bytecode can use Java parameter Bytecode can use Java parameter (2) No warning for nameless parameter when emitting Warning for nameless for parameter when verifying rich bytecode 'As' operator as Java-in-bytecode-in-Java Variable type determined after jump (analysis) Bytecode expression using undeclared Java local Assigned in one arm of if Assigned in both arms of if Assigned after jumps Final assigned for second time in if Final assigned for second time after if Final assigned for unreachable second time Final parameter assigned for second time Exception handler gets exception on stack Exception handler requires exception on stack Variable not definitely assigned in try block Nested exception handlers are treated equally Variable not definitely assigned in Java try block Fail gracefully on malformed class Emit errors don't affect container construct ======================================================================= Optimization Superfluous dup/pop in assignment Superfluous dup/pop in field assignment Superfluous jumps No pattern optimization for unreachable jump No pattern optimization for load with two incoming paths ======================================================================= Assembly Int: ADD -> IADD Double: LDC -> LDC2_W; REM -> DREM Int: X2I -> removed NEWARRAY(string), ALOAD -> ANEWARRAY, AALOAD NEWARRAY(int), ALOAD -> NEWARRAY, IALOAD NEWARRAY(double), ALOAD -> NEWARRAY, DALOAD NEWARRAY(string), ASTORE -> ANEWARRAY, AASTORE NEWARRAY(object), ASTORE(string) ======================================================================= Debug info Three lines of code Three lines of code (optimizations enabled) Three lines of code, with a catch Three lines of code, many instructions, and a catch ======================================================================= Unassembly Name local variables Integer increment Name local variables Name overlapping local variables 'this' is always named 'this' If with labels Web of jump statements; asm->unasm->asm Unasm class signature Unasm class signature without supertype Unasm method signature without named param Unasm complete method Unasm succeeds for Java class Emit activates unasm Unasm succeeds for already unassembled class Unasm succeeds for already unassembled instructions Unasm of class not previously loaded with define-compilation-unit ======================================================================= Emit modules Empty class Empty class with supers Empty interface with supers Class with empty if Class with vars in initializers Class with instance field Class with static field Classes with super field Class with assignments in (field) initializers Class with assignments in (field) initializers ======================================================================= Emit methods Empty Java method Bytecode method returning null Java method with exceptions Java method with unthrowable exceptions ======================================================================= Emit operators Complement int Complement long Add ints Add int and byte Add bytes [ lt-test-main | warning ] Incompatible types. [ lt-test-main | warning ] b = 1 1 + "string" new Integer(1) + "string" Primitive cast to long Primitive cast to byte Post-increment int Pre-increment long Pre-increment long field Post-increment int field Pre-decrement long Post-increment byte (with truncation) [ lt-test-main | warning ] Incompatible types. [ lt-test-main | warning ] b = 0 Integer equality Smaller-than Greater-than Greater-equals (long) Add-assign int XOR-assign byte [ lt-test-main | warning ] Incompatible types. [ lt-test-main | warning ] b = 0 Add-assign byte [ lt-test-main | warning ] Incompatible types. [ lt-test-main | warning ] b = 0 Add-assign field Declaration and primitive cast Declaration and boxing conversion Reference cast instanceof String[] instanceof Iterable never applies to an array instanceof Iterable applies to an object Equality to null Iterable.class void.class int.class ======================================================================= Emit arrays new int[3]; new int[5][] new int[3][4][5]; new int[] { 1,2,3 }; args[0] = null; array[g][h] = null disallow: args[0l] ======================================================================= Emit statements Null declaration String declaration, null assignment Char declaration [ lt-test-main | warning ] Incompatible types. [ lt-test-main | warning ] c = 666 Final declaration If with == If with == for a long If with > Simple for loop For loop with void counting expression Empty for loop Simple while loop Simple do-while loop Web of jump statements Break to label Assign object to 'this' Foreach loop with autocasting Foreach loop with autoboxing Dead jump in left arm of if is eliminated. Assert statement Assert statement with message Assert statement generates new field Assert statement generates new initializer Assert statement does not conflict with existing static initializer ======================================================================= Emit inner classes Member class calling static outer method No inner classes attribute for static inner class Attributes of nested static classes No fields set in nested static classes Inner classes are well-formatted Inner class gets a this$N field Inner class invokes outer method using this$N Inner class invokes outer method using outer class Attributes of nested instance classes Fields of nested instance classes Fields set in nested instance classes Member class instantiated from other sibling class ======================================================================= Emit invocations Simple println Static invoke Invoke with boxing conversion Invoke with operator Simple constructor invoke super.toString() Qualified.super.toString() in static inner class Qualified.super.toString() in instance inner class super(1) this(1) ======================================================================= Emit try/catch Empty try/catch block try/catch block with exception thrown Nested try/catch block try/multi-catch block try/catch/finally block try/finally block with return in both blocks try/finally block with conditional jump ======================================================================= Eval "foo" + "bar" 1 + 2 1.0 : float + 2.0 : float 1 < 2 2 >= 2 null 2 <= 1 Invoke(Method(Lit(Class(ClassOrInterfaceType(TypeName(Id("Object")),None))),None,Id("getName")),[]) ldc "foo" xreturn ldc 1 : int xreturn { trace (int a = 4;) [ int a = 5; ] return a; } int c = 5; return c; { int c; for(c = 0; c < 5; c++) ; return c; } { int c = 0; while(c < 5) c++; return c; } { int c = 0; do c++; while(c < 5); return c; } Evaluate an already-compiled expression Count number of compile/evaluations per second total: 29 successes: 265 failures: 0 PASS: test-main ================== All 1 tests passed ================== make[2]: Leaving directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/tests' building Bytecode-Classes.runtestsuite /nix/store/p2ilyhcckkkab8y0bph6n4lkzkvh20z4-strategoxt-0.17pre18269-a0f0wy0j/bin/parse-unit --no-heuristic-filters -i Bytecode-Classes.testsuite -p "`XTC_REPOSITORY="/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/BUILDTIME_XTC" /nix/store/p2ilyhcckkkab8y0bph6n4lkzkvh20z4-strategoxt-0.17pre18269-a0f0wy0j/bin/xtc get Java-Bytecode.tbl`" ----------------------------------------------------------------------- executing testsuite Bytecode-Classes with 15 tests ----------------------------------------------------------------------- * OK : test 1 (Empty class) * OK : test 2 (Class with extends) * OK : test 3 (Class with extends and implements) * OK : test 4 (Class with extends and methods) * OK : test 5 (Class with implements and empty method) * OK : test 6 (Class with implements and undefined method) * OK : test 7 (Type void[] doesn't exist) * OK : test 8 (Class with implements and fields) * OK : test 9 (Class with implements and attributes) * OK : test 10 (Class with embedded Java) * OK : test 11 (Class with insane embedded Java and bytecode) * OK : test 12 (Class with embedded Java method) * OK : test 13 (Class with inner classes) * OK : test 14 (Java class with trace tags) * OK : test 15 (Java class with end trace tags) ----------------------------------------------------------------------- results testsuite Bytecode-Classes successes : 15 failures : 0 ----------------------------------------------------------------------- building check-nutshell sh test-nutshell.sh *************************************************************** Warning: nutshell test suite not found; skipping optional tests *************************************************************** make[1]: Leaving directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/tests' Making check in samples make[1]: Entering directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples' building check-recursive Making check in syntax make[2]: Entering directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/syntax' building all-local Tools registered in repository /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/BUILDTIME_XTC: Data registered in repository /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/BUILDTIME_XTC: Java-Traits.def Java-Traits.tbl Stratego-Java-Traits.def Stratego-Java-Traits.tbl Mini-Java-CSharp.def Mini-Java-CSharp.tbl Stratego-Mini-Java-CSharp.def Stratego-Mini-Java-CSharp.tbl Java-Traits.str Java-Traits.rtree Mini-Java-CSharp.str Mini-Java-CSharp.rtree Java-Traits.def Java-Traits.tbl Stratego-Java-Traits.def Stratego-Java-Traits.tbl Mini-Java-CSharp.def Mini-Java-CSharp.tbl Stratego-Mini-Java-CSharp.def Stratego-Mini-Java-CSharp.tbl Java-Traits.sdf Mini-Java-CSharp-Mix.sdf Mini-Java-CSharp.sdf Stratego-Java-Traits.sdf Stratego-Mini-Java-CSharp.sdf make[2]: Leaving directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/syntax' Making check in trans make[2]: Entering directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/trans' building all-local /nix/store/p2ilyhcckkkab8y0bph6n4lkzkvh20z4-strategoxt-0.17pre18269-a0f0wy0j/bin/xtc -r /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/BUILDTIME_XTC import /nix/store/g2sk68xqg5727nbwihn5wxz728fxmmly-dryad-0.2pre1835518355-1ydq94zz/share/dryad/XTC /nix/store/p2ilyhcckkkab8y0bph6n4lkzkvh20z4-strategoxt-0.17pre18269-a0f0wy0j/bin/xtc -r /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/BUILDTIME_XTC import /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706//BUILDTIME_XTC Tools registered in repository /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/BUILDTIME_XTC: java-traits mini-java-csharp Data registered in repository /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/BUILDTIME_XTC: make[2]: Leaving directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/trans' Making check in tests make[2]: Entering directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/tests' building all-local /nix/store/p2ilyhcckkkab8y0bph6n4lkzkvh20z4-strategoxt-0.17pre18269-a0f0wy0j/bin/xtc -r /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/BUILDTIME_XTC import /nix/store/g2sk68xqg5727nbwihn5wxz728fxmmly-dryad-0.2pre1835518355-1ydq94zz/share/dryad/XTC /nix/store/p2ilyhcckkkab8y0bph6n4lkzkvh20z4-strategoxt-0.17pre18269-a0f0wy0j/bin/xtc -r /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/BUILDTIME_XTC import /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706//BUILDTIME_XTC Tools registered in repository /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/BUILDTIME_XTC: test-java-traits test-mini-java-csharp Data registered in repository /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/BUILDTIME_XTC: building check-am make check-TESTS make[3]: Entering directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/tests' building check-TESTS test suite: Java trait tests ======================================================================= Rewrite to Java class Foo with Bar {} trait Bar { void bar() {} } class Foo with Bar {} trait Bar with Baz {} trait Baz { void baz() {} } class Foo with Bar minus Baz {} trait Bar with Baz {} trait Baz { void baz() {} } class Foo with Bar { void required() {} } trait Bar { void required(); } ======================================================================= Rewrite to classes class Foo with Bar {} trait Bar { void bar() {} } ======================================================================= Traits from classfiles ["class Foo with Bar {}",FILE("$Trait_Bar.class")] ======================================================================= Error reporting class Foo with Undeclared {} class Foo with Bar {} trait Bar { void required(); } trait Loop1 with Loop2 {} trait Loop2 with Loop1 {} successes: 9 failures: 0 PASS: test-java-traits test suite: mini-java-csharp tests ======================================================================= as operator "a" as String "a" as Integer [ lt-test-mini-java-csharp | warning ] Input can never be of type: java.lang.Integer [ lt-test-mini-java-csharp | warning ] return "\"" + `[ `[ java.lang.Object r_53 = "a"; ] push `r_53 instanceof java.lang.Integer ? (java.lang.Integer)r_53 : null ] + "\""; [ lt-test-mini-java-csharp | warning ] Input can never be of type: java.lang.Integer [ lt-test-mini-java-csharp | warning ] return "\"" + `[ `[ java.lang.Object r_53 = "a"; ] push `r_53 instanceof java.lang.Integer ? (java.lang.Integer)r_53 : null ] + "\""; 1 as Object.toString() 1 as Integer.intValue() (Object)"a" as String ======================================================================= var var v = 1; return v; var v = 1; return v + "2"; var v = 1.0 : float; while(v < 4.0 : float) v++; return v; ======================================================================= ?? operator "a" ?? "b" "a" ?? null null ?? "b" String a = "a"; return a ?? "b"; String a = null; return a ?? "b"; ======================================================================= error reporting undeclared ?? "b" "string" as int successes: 15 failures: 0 PASS: test-mini-java-csharp ================== All 2 tests passed ================== make[3]: Leaving directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/tests' make[2]: Leaving directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/tests' make[2]: Entering directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples' building all-local /nix/store/p2ilyhcckkkab8y0bph6n4lkzkvh20z4-strategoxt-0.17pre18269-a0f0wy0j/bin/xtc -r /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/BUILDTIME_XTC import /nix/store/5rqry3rr7jy0daqfbg68h6ws66mxavqb-java-front-0.9pre1823618236-frb8zh7m/share/java-front/XTC /nix/store/p2ilyhcckkkab8y0bph6n4lkzkvh20z4-strategoxt-0.17pre18269-a0f0wy0j/bin/xtc -r /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/BUILDTIME_XTC import /nix/store/g2sk68xqg5727nbwihn5wxz728fxmmly-dryad-0.2pre1835518355-1ydq94zz/share/dryad/XTC /nix/store/p2ilyhcckkkab8y0bph6n4lkzkvh20z4-strategoxt-0.17pre18269-a0f0wy0j/bin/xtc -r /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/BUILDTIME_XTC import /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706//BUILDTIME_XTC Tools registered in repository /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/BUILDTIME_XTC: Data registered in repository /tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples/BUILDTIME_XTC: make[2]: Leaving directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples' make[1]: Leaving directory `/tmp/nix-build-sazn1sizinvkibcczcnjgknjffiw1vs9-dryad-compiler.drv-0/dryad-compiler-0.1pre18706/samples'