Compiler tests
Current task
Compiled9 and family
- Compiled9.fss: coercions
- Compiled9.a.fsi: name space / shadowing
- Compiled9.b.fss: name space / shadowing
- Compiled9.c.fss: name space / shadowing
- Compiled9.d.fsi: name space / shadowing
- Compiled9.e.fss: name space / shadowing
- Compiled9.f.fss: name space / shadowing
- Compiled9.g.fss: local function (previously static_tests/LocalFnRef.fss)
- Compiled9.h.fss: true (previously static_tests/DXXNonVoidBlock.fss)
- Compiled9.i.fss: true (previously static_tests/DXXSpawnInsideAtomicBlock.fss)
- Compiled9.j.fss: true (previously static_tests/IfThenElse.fss)
- Compiled9.k.fss: true (previously static_tests/AtomicDo.fss)
- Compiled9.l.fss: true (previously static_tests/AtomicExpr.fss)
- Compiled9.m.fss: true (previously static_tests/MutualLetFn.fss)
- Compiled9.n.fss: true (previously static_tests/DoFronts.fss)
- Compiled9.o.fss: true (previously static_tests/IfThen.fss)
- Compiled9.p.fss: true (previously static_tests/TupleAssignment.fss)
- Compiled9.q.fss: true (previously static_tests/DXXIfThenNotVoid.fss)
- Compiled9.r.fss: true (previously static_tests/DXXVoidTest.fss)
- Compiled9.s.fss: LetFn (previously static_tests/DXXAllVoidButLast.fss)
- Compiled9.t.fss: Label (previously static_tests/Label.fss)
- Compiled9.u.fss: Label (previously static_tests/ExitWithoutTarget.fss)
- Compiled9.v.fss: Label (previously static_tests/DXXExitTargetOutOfScope.fss)
- Compiled9.w.fss: Label (previously static_tests/DXXExitThroughSpawn.fss)
- Compiled9.x.fss: Label (previously static_tests/DXXExitTargetInvalid.fss)
- Compiled9.y.fss: operator imports
- Compiled9.Overriding.fss: overriding
- Compiled9.AsString.fss: getter
- Compiled9.ParametricFields.fss: parametric field
- Compiled9.z.fss: comprises clauses with generic traits
- Compiled9.aa.fss: Throw (previously static_tests/DXXThrowTest1.fss)
- Compiled9.ab.fss: Throw (previously static_tests/ThrowTest.fss)
- Compiled9.ac.fss: Try (previously static_tests/TryTest.fss)
- Compiled9.ad.fss: Try (previously static_tests/DXXTryTest.fss)
- Compiled9.ae.fss: Try (previously static_tests/DXXTryTestCatchNotExn.fss)
- Compiled9.af.fss: Try (previously static_tests/DXXTryTestFinally.fss)
- Compiled9.ag.fss: Try (previously static_tests/DXXTryTestForbid.fss)
- Compiled9.SimpleOverriding.fss: simple overriding
- Compiled9.DiamondOverriding.fss: diamond overriding
- Compiled9.MultipleOverriding.fss: multiple overriding
- Compiled9.RedundantOverriding.fss: redundant overriding
- Compiled9.CompiledCoercions.fss: simple coercions
- Compiled9.ah.fss: case
- Compiled9.ai.fss: case
- Compiled9.aj.fss: AND (previously static_tests/UseConditionalOp.fss)
Future tasks
Compiled10 and beyond
- Compiled10.fss: generic top-level functions
- Compiled11.fss: generic top-level functions using generic types
- Compiled12.fss: generic trait
- Compiled13.fss: generic object
- Compiled14.fss: generic top-level overloaded functions
- Compiled15.fss: generic dotted methods
- Compiled16.fss: generic functional methods
- Compiled17.fss: generic methods of generic types
- Compiled18.fss: Comprehensions2
- Compiled10.Comprehensions3.fss: Comprehensions3
- Compiled10.Comprehensions4.fss: Comprehensions4
- Compiled70.fss: local non-generic overloading
- Compiled80.fss: asif
- Compiled90.fss: higher-order function
- Compiled100.fss: dotted method
- Compiled110.fss: object field and field reference
- Compiled120.fss: local variable initialization and assignment
- Compiled130.fss: while
- Compiled140.fss: case
- Compiled150.fss: array and for loop
- Compiled160.fss: spawn
- Compiled170.fss: atomic block
- Compiled180.fss: generic local overloaded function
- Compiled190.fss: Any
- Compiled200.fss: dotted method on singleton object (codegen: #340)
- Compiled210.fss: simple typecase
- Compiled220.fss: ??? (codegen) / Assignment
- Compiled230.fss: singleton object reference (codegen)
- Compiled240.fss: abstract function declarations (codegen)
- Compiled250.fss: incomplete / coverage (static checker)
- Compiled260.fss: overloading & coverage
- Compiled270.fss: coercion of tuples
- Compiled280.fss: set library
Previous tasks
Compiled0 and family
- Compiled0.fss: single native call
- Compiled0.a.fss: mismatch in component/API name and its enclosing file name
- Compiled0.b.fss: wrong API in an export statement
- Compiled0.c.fss: undefined variable reference
- Compiled0.d.fss: unmatched delimiter
- Compiled0.e.fss: unmatched delimiter
- Compiled0.f.fss: unmatched delimiter
- Compiled0.g.fss: unmatched delimiter
- Compiled0.h.fss: unmatched delimiter
- Compiled0.i.fss: unmatched delimiter
- Compiled0.j.fss: unmatched delimiter
- Compiled0.k.fss: unmatched delimiter
- Compiled0.l.fss: unmatched delimiter
- Compiled0.m.fss: unmatched delimiter
- Compiled0.n.fss: ill-typed function body
- Compiled0.o.fss: missing function body
- Compiled0.p.fss: export checking (missing declaration)
- Compiled0.q.fss: export checking (missing declaration)
- Compiled0.r.fss: export checking (missing declaration)
- Compiled0.s.fss: nested component
- Compiled0.t.fss: import and export the same API
- Compiled0.u.fss: unmatched delimiter
- Compiled0.v.fss: export checking (multiple declaration)
- Compiled0.w.fss: object extension (previously static_tests/DXXCantExtendObject.fss)
- Compiled0.x.fss: object extension (previously static_tests/DXXCantExtendObject2.fss)
- Compiled0.y.fss: object extension (previously static_tests/DXXCantExtendObject3.fss)
Compiled1 and family
- Compiled1.fss: function call
- Compiled1.a.fss: unmatched delimiter
- Compiled1.b.fss: export checking (missing declaration)
- Compiled1.c.fss: unmatched delimiter
- Compiled1.d.fss: unmatched delimiter
- Compiled1.e.fss: unmatched delimiter
- Compiled1.f.fss: unmatched delimiter
- Compiled1.g.fss: undefined variable references
- Compiled1.h.fss: unmatched delimiter
- Compiled1.i.fss: export checking (multiple declarations)
- Compiled1.j.fss: two consecutive ^ (previously static_tests/DXXDoubleExponentiation.fss)
- Compiled1.k.fss: exponentiation followed by subscripting (previously static_tests/DXXExpThenSubscript.fss)
- Compiled1.l.fss: undefined imported type reference (previously static_tests/XXXApiDisambiguation.fss)
- Compiled1.m.fss: exit outside of a label with no target (previously static_tests/XXXExitWithoutTarget.fss)
- Compiled1.n.fss: undefined type reference in extends (previously static_tests/XXXGarbageExtendsClause.fss)
- Compiled1.o.fss: illegal shadowing (previously static_tests/XXXIllegalShadowing.fss)
- Compiled1.p.fss: undefined int argument (previously static_tests/XXXIntArgUndefined.fss)
- Compiled1.q.fss: multiple undefined variable references (previously static_tests/XXXMultipleRefErrors.fss)
- Compiled1.r.fss: mutually recursive, nonconsecutive local function definitions (previously static_tests/XXXMutualSeperateLetFn.fss)
- Compiled1.s.fss: missing function body (previously static_tests/XXXParseErrorMissingEnd.fss)
- Compiled1.t.fss: shadowed function parameter (previously static_tests/XXXShadowedFunctionParam.fss)
- Compiled1.u.fss: shadowed method name (previously static_tests/XXXShadowedMethodName.fss)
- Compiled1.v.fss: shadowed method name (previously static_tests/XXXShadowedMethodName2.fss)
- Compiled1.w.fss: shadowed object parameter (previously static_tests/XXXShadowedObjectParam.fss)
- Compiled1.x.fss: shadowed variable reference (previously static_tests/XXXShadowedVar.fss)
- Compiled1.y.fss: undefined type argument (previously static_tests/XXXTypeArgUndefined.fss)
- Compiled1.z.fss: undefined array reference (previously static_tests/XXXUndefinedArrayRef.fss)
- Compiled1.aa.fss: undefined initializer (previously static_tests/XXXUndefinedInitializer.fss)
- Compiled1.ab.fss: undefined nested reference (previously static_tests/XXXUndefinedNestedRef.fss)
- Compiled1.ac.fss: undefined reference in a loop (previously static_tests/XXXUndefinedRefInLoop.fss)
- Compiled1.ad.fss: undefined top-level variable reference (previously static_tests/XXXUndefinedTopLevelVar.fss)
- Compiled1.ae.fss: undefined type reference in extends (previously static_tests/XXXUndefinedTypeInExtendsClause.fss)
- Compiled1.af.fss: undefined variable reference (previously static_tests/XXXUndefinedVar.fss)
- Compiled1.ag.fss: self type (previously static_tests/TypesAreSame.fss)
- Compiled1.ah.fss: nat type (previously static_tests/SingletonVar.fss)
- Compiled1.ai.fss: type variable as a return type (previously static_tests/VarTypeAsReturn.fss)
- Compiled1.aj.fss: simple trait (previously static_tests/SimpleTrait.fss)
- Compiled1.ak.fss: singleton object (previously static_tests/ObjectFromInterface.fss)
- Compiled1.al.fss: tight juxt syntax error (previously static_tests/DXXNoParenTightJuxt.fss)
- Compiled1.am.fss: spawn inside atomic (previously static_tests/DXXSpawnInsideAtomic.fss)
- Compiled1.an.fss: unmatched declarations (previously static_tests/DXXmatchingDecls.fss)
- Compiled1.ao.fss: missing declaration (previously static_tests/DXXmatchingFnDecls.fss)
- Compiled1.ap.fss: spawn inside tryatomic (previously static_tests/DXXSpawnInsideTryAtomic.fss)
- Compiled1.aq.fss: ill-typed top-level variable declaration (previously static_tests/DXXMaltypedTopLevelVar.fss)
- Compiled1.ar.fss: matrix unpasting
- Compiled1.as.fss: chain expression (previously static_tests/ChainTest.fss)
- Compiled1.au.fss: operator application (previously static_tests/OpTest.fss)
- Compiled1.av.fss: nat parameter in as an expression (previously static_tests/NatParamAsExpr.fss)
Compiled2 and family
- Compiled2.fss: operator functional method call with command-line input
- Compiled2.a.fss: export checking (missing declaration)
- Compiled2.b.fss: cyclic type hierarchy
- Compiled2.c.fss: cyclic type hierarchy
- Compiled2.d.fss: cyclic type hierarchy
- Compiled2.e.fss: cyclic type hierarchy
- Compiled2.f.fss: invalid overloading
- Compiled2.g.fss: valid overloading
- Compiled2.h.fss: unmatched delimiter
- Compiled2.i.fss: unmatched delimiter
- Compiled2.j.fss: unmatched delimiter
- Compiled2.k.fss: unmatched delimiter
- Compiled2.l.fss: unmatched delimiter
- Compiled2.m.fss: unmatched delimiter
- Compiled2.n.fss: unmatched delimiter
- Compiled2.o.fss: unmatched delimiter
- Compiled2.p.fss: unmatched delimiter
- Compiled2.q.fss: unmatched delimiter
- Compiled2.r.fss: unmatched delimiter
- Compiled2.s.fss: unmatched delimiter
- Compiled2.t.fss: type checking variable declarations
- Compiled2PreTest.fss: operator functional method call
Compiled3 and family
- Compiled3.fss: if and recursion
- Compiled3.a.fss: invalid function declaration
- Compiled3.b.fss: valid overloading
- Compiled3.c.fss: valid overloading
- Compiled3.d.fss: valid overloading
- Compiled3.e.fss: valid overloading
- Compiled3.f.fss: export checking (trait/object members)
- Compiled3.g.fss: export checking (unmatched declaration)
- Compiled3.h.fss: exclusion relationship for type variables
- Compiled3.i.fss: exclusion relationship for type variables
- Compiled3.j.fss: exclusion relationship for type variables
- Compiled3.k.fss: declared exclusion relationship
- Compiled3.l.fss: invalid overloading
- Compiled3.m.fss: declared exclusion relationship
- Compiled3.n.fss: invalid overloading
- Compiled3.o.fss: invalid overloading
- Compiled3.p.fss: declared exclusion relationship
- Compiled3.q.fss: simple comprises
- Compiled3.r.fss: invalid comprises
- Compiled3.s.fss: invalid comprises
- Compiled3.t.fss: inferred exclusion relationship using comprises
- Compiled3.u.fss: ill-typed function arguments
- Compiled3.v.fss: valid comprises
- Compiled3.w.fsi: invalid overloading
- Compiled3.x.fss: strToInt
Compiled4 and family
- Compiled4.fss: factorial operator with parsed command-line input
- Compiled4.a.fss: export checking (missing declaration), ill-typed function argument
- Compiled4.b.fss: unmatched delimiter
- Compiled4.c.fss: unmatched delimiter
Compiled5 and family
- Compiled5.fss: parallelism
- Compiled5.a.fss: export checking (unmatched declaration)
- Compiled5.e.fss: overloading/comprises
- Compiled5.f.fss: invalid type name
- Compiled5.h.fss: multiple function calls
- Compiled5.j.fss: overloading/comprises
- Compiled5.k.fss: mutable variable declaration without type annotation
- NYI.Compiled5.n.fss: invalid component/API name
- Compiled5.o.fss: typecase
- Compiled5.p.fss: typecase
- Compiled5.q.fss: typecase
- Compiled5.r.fss: typecase
- Compiled5.s.fss: typecase
- Compiled5.t.fss: typecase
- Compiled5.u.fss: ^ used as a nofix operator
- Compiled5.v.fss: ^ used as a postfix operator
- Compiled5.w.fss: ^ used as a prefix operator
- Compiled5.x.fsi: comprises ...
- Compiled5.y.fss: comprises ...
- Compiled5.z.fss: singleton object with a contract
- Compiled5.aa.fss: abstract method in an object
- Compiled5.ab.fss: abstract method in an object expression
- Compiled5.ac.fss: equality testing in a block (previously static_tests/DXXEqualityTesting.fss)
- Compiled5.ad.fss: chain expression (previously static_tests/DXXChainTest1.fss)
- Compiled5.ae.fss: chain expression (previously static_tests/DXXChainTest2.fss)
- Compiled5.af.fss: generic function call (previously static_tests/DXXStaticParamFunctionCall.fss)
- Compiled5.ag.fss: type ascription (previously static_tests/DXXInvertedAsExpr.fss)
- Compiled5.ah.fss: type ascription (previously static_tests/AsExpr.fss)
- Compiled5.ai.fss: type assumption (previously static_tests/AsIf.fss)
- Compiled5.aj.fss: local variable reference (previously static_tests/LocalVarRef.fss)
- Compiled5.ak.fss: generic singleton object (previously static_tests/GenericSingleton.fss)
- Compiled5.al.fss: simple object (previously static_tests/SimpleObject.fss)
- Compiled5.am.fss: local variable declaration
- Compiled5.an.fss: local variable declaration
- Compiled5.ao.fss: naked type variables
- Compiled5.ap.fss: extending exclusive types
- Compiled5.aq.fss: extending exclusive types
- Compiled5.ar.fss: compound APIs
- Compiled5.as.fss: API generator test
- Compiled5.at.fss: operator declarations within blocks
- Compiled5.au.fss: empty comprises clause
- Compiled5.av.fss: operator declaration within a block
- Compiled5.aw.fss: operator declaration with wrong parameters
- Compiled5.ax.A.fss: compound APIs
- Compiled5.ax.A1.fss: compound APIs
- Compiled5.ay.fss: compound APIs
- Compiled5.az.fss: subscripted assignment operator declaration with wrong return type
- Compiled5.ba.fss: simple ASCII conversion
- Compiled5.bb.fss: delimiter checker with compound operator
- Compiled5.bc.fss: export checking (non-overloaded abstract function declaration)
- Compiled5.bd.fss: method invocation (previously static_tests/DXXStaticParamMethodCall.fss)
- Compiled5.be.fss: method invocation (previously static_tests/DXXMethodInvocationOnTuple.fss)
- Compiled5.bf.fss: method invocation (previously static_tests/InheritedMethodStatic.fss)
- Compiled5.bg.fss: method invocation (previously static_tests/MethodInheritance.fss)
- Compiled5.bh.fss: method invocation (previously static_tests/MethodOnTypeVar.fss)
- Compiled5.bi.fss: method invocation (previously static_tests/MethodOnIntersection.fss)
- Compiled5.bj.fss: field reference (previously static_tests/Equals.fss)
- Compiled5.bk.fss: type extractor from exported APIs
- Compiled5.bl.fss: function expression (previously static_tests/DXXLooseJuxt.fss)
- Compiled5.bm.fss: function return type inference
- Compiled5.bn.fss: function return type inference
- Compiled5.bo.fss: function return type inference
- Compiled5.bp.fss: invalid comprises clause
- Compiled5.bq.fss: invalid comprises clause
- Compiled5.br.fss: invalid comprises clause
- Compiled5.bu.fss: parameter type inference of FnExpr
- Compiled5.seq.fss: sequential version of fib with local variable
- Compiled5.Elif.fss: elif
- Compiled5.Binding.fss: multiple variable definition
Compiled6 and family
- Compiled6.fss: simple higher-order function to simulate sequential generator
- Compiled6.a.fss: invalid typecase syntax
- Compiled6.b.fss: hidden but settable field in a trait
- Compiled6.c.fss: invalid comprises
- Compiled6.d.fss: invalid import statement
- Compiled6.e.fss: export checking (unmatched declaration)
- Compiled6.f.fss: invalid import statements
- Compiled6.g.fss: invalid setter declaration
- Compiled6.h.fss: invalid setter declaration
- Compiled6.i.fss: invalid overloading
- Compiled6.j.fss: invalid setter declaration
- Compiled6.k.fss: invalid getter declaration
- Compiled6.l.fss: invalid getter and setter declarations
- Compiled6.m.fss: undefined inherited abstract method in an object
- Compiled6.n.fss: invalid coercion declarations
- Compiled6.o.fss: after Scala type checking is online
- Compiled6.p.fss: cyclic type hierarchy with coercion
- Compiled6.q.fss: ill-formed type
- Compiled6.r.fss: type checking bug (#339)
- Compiled6.u.fss: operator application
- Compiled6.x.fss: getter call syntax
- Compiled6.y.fss: getter call syntax
- Compiled6.z.fss: getter call syntax
- Compiled6.aa.fss: keyword value as an identifier
- Compiled6.ab.fss: missing static argument in a type reference
- Compiled6.ac.fss: local variables
- Compiled6.ad.fss: generic getters (previously static_tests/GenericGetterInSuper.fss)
- Compiled6.ae.fss: generic trait declarations (previously static_tests/FieldTestGeneric.fss)
- Compiled6.af.fss: generic function calls (previously static_tests/GenericFunctionCall.fss)
- Compiled6.ag.fss: static argument inference (previously static_tests/static_arg_inference/opr_arg_1/InOp.fss)
- Compiled6.ah.fss: static argument inference (previously static_tests/static_arg_inference/simple_arg_1/InSimple.fss)
- Compiled6.ai.fss: object expressions (previously static_tests/AngelinaTest.fss)
- Compiled6.aj.fss: new function expression syntax
- Compiled6.ak.fss: invalid overloading
- Compiled6.al.fss: tight juxtaposition (previously static_tests/TightJuxt.fss)
- Compiled6.an.fss: new functional methods in an object expression
- Compiled6.ao.fss: assignment (previously static_tests/AssignmentTest.fss)
- Compiled6.ap.fss: assignment
- Compiled6.aq.fss: assignment
- Compiled6.ar.fss: assignment
- Compiled6.as.fss: assignment
- Compiled6.at.fss: assignment
- Compiled6.au.fss: missing comma
- Compiled6.av.fss: assignment and typecase (previously static_tests/Typecase.fss)
- Compiled6.aw.fss: assignment and tryatomic (previously static_tests/TryAtomic.fss)
- Compiled6.ax.fss: assignment (previously static_tests/SimpleFunctionCall.fss)
- Compiled6.ay.fss: assignment (previously static_tests/PlusEq.fss)
- Compiled6.az.fss: assignment (previously static_tests/NoTypeDecl.fss)
- Compiled6.ba.fss: assignment (previously static_tests/MethodInvocationStaticInfer1.fss)
- Compiled6.bb.fss: assignment (previously static_tests/FnExpr.fss)
- Compiled6.bc.fss: assignment (previously static_tests/FieldTest.fss)
- Compiled6.bd.fss: assignment (previously static_tests/FieldFromSuper.fss)
- Compiled6.be.fss: assignment (previously static_tests/SetterTest.fss)
- Compiled6.bf.fss: assignment (previously static_tests/VarParam.fss)
- Compiled6.bg.fss: assignment (previously static_tests/ObjectExpr.fss)
- Compiled6.bh.fss: assignment (previously static_tests/DXXPlusEq.fss)
- Compiled6.bi.fss: assignment (previously static_tests/DXXPlusEq2.fss)
- Compiled6.bj.fss: assignment (previously static_tests/DXXSetterTest.fss)
- Compiled6.bk.fss: assignment (previously static_tests/DXXSubscriptAssign.fss)
- Compiled6.bl.fss: assignment (previously static_tests/DXXTypecaseMutable.fss)
- Compiled6.bm.fss: assignment (previously static_tests/DXXTypecaseTuple.fss)
- Compiled6.bn.fss: assignment (previously static_tests/DXXTypecaseTuple2.fss)
- Compiled6.bo.fss: assignment (previously static_tests/DXXAssignmentTest.fss)
- Compiled6.bp.fss: assignment (previously static_tests/DXXAssignmentTest2.fss)
- Compiled6.bq.fss: assignment (previously static_tests/DXXField.fss)
- Compiled6.br.fss: assignment (previously static_tests/DXXFnExpr.fss)
- Compiled6.bs.fss: assignment (previously static_tests/DXXMethodInvocationSimple.fss)
- Compiled6.bt.fss: assignment (previously static_tests/DXXMethodInvocationSimple2.fss)
- Compiled6.bu.fss: assignment (previously static_tests/DXXMethodInvocationStaticInfer1.fss)
- Compiled6.bv.fss: assignment (previously static_tests/DXXMethodInvocationStaticInfer2.fss)
- Compiled6.bw.fss: assignment (previously static_tests/DXXNoTypeDecl.fss)
- Compiled6.bx.fss: assignment (previously static_tests/DXXObjectExpr.fss)
- Compiled6.by.fss: getter call syntax
- Compiled6.bz.fss: getter call syntax
Compiled7 and family
- Compiled7.fss: higher-order functions on no args (short cut or) and on RR64, in both cases returning useful results in parallel
- Compiled7.a.fss: invalid overloading with renamed import
- Compiled7.b.fss: invalid overloading with renamed import
- Compiled7.c.fss: invalid overloading with renamed import
- Compiled7.d.fss: invalid overloading with renamed import
- Compiled7.e.fss: invalid overloading with renamed import
- Compiled7.f.fss: abstract functional method
- Compiled7.g.fss: concrete method with more specific return type
- Compiled7.h.fss: namespace
- Compiled7.Comprehensions1.fss: Comprehensions1
- Compiled7.Print17.fss: First-order version of Compiled7
- Compiled7.ForLoops.fss: for loop
- Compiled7.ApplicationErrors.fss: function applications

