TestDescription
1 FAILS : No support for aspect classes in JastAdd2
2AST: explicit inheritance from ASTNode in grammar
3AST: implicit inheritance from ASTNode in grammar
4AST: single token, explicit type
5 AST: single token, implicit type
6 AST: single token, explicit primitive type
7 AST: single child
8 AST: single named child
9 AST: multiple nodes of the same type
10 AST: multiple named children
11 AST: list of children
12 AST: adding nodes to a list of children
13 FAILS Semantic error: No root node available("Node ::= Node* <Name>")
14 AST: optional child
15 AST: optional named child
16 Syn: synthesized attribute with initializing equation
17 Syn: synthesized attribute with initializing equation, overriden in subclass
18 Syn: synthesized attribute with initializing equation, overriden in subclass
19 Syn: synthesized attribute in abstract class with overriding equation in subclass
20 Syn: parameterized synthesized attribute with overriding equation in subclass
21 Inh: inherited attribute with single equation
22 Inh: inherited attribute with multiple equations
23 Inh: inherited attribute with multiple equations in different types (oo-inheritance)
24 Inh: inherited attribute with equations being overridden in one path only
25 Inh: inherited attribute with equation for optionals
26 Inh: inherited attribute with equation for lists
27 Inh: inherited attribute with equation for lists using index in equations
28 Larger example using the following features:
syn paramterized attributes with/without initializer + overriding + declarative/imparative equations
inh paramterized attributes using list child index
29 Rewrite: always rewrite node B into new C with common supertype
30 Rewrite: rewrite node B into new C using multiple matching rewrites choosing using lexical order
31 Rewrite: rewrite node B into new C using multiple matching rewrite clauses choosing using lexical order
32 Rewrite: rewrite node B into new C using conditional rewrite short form
33 Nodecopy: check that node is copied including is$Final attribute
34 Nodecopy: check that getNumChild() works 'as expected'
35 LAZY: check that lazy is used for syn and inh decl
36 NTA: non terminal attribute implemented using syn eq
37 NTA: check that NTA is not included in generic traversal
38 Intertype declarations: introduce method
39 FAILS Intertype declarations: introduce method
Syntax error in test/Test39.jrag at line 11, column 27
40 FAILS Intertype declarations: introduce field
Syntax error in test/Test40.jrag at line 2, column 29
41 Intertype declarations: introduce constructor
42 Intertype declarations: implement interface
43 Boxing/Unboxing used when caching attribute values
44 Attributes: check that revisited attributes throws an exception
45 Rewrites: rewrite each C in A's B-list to two Ds
46-49 No tests for these numbers
50 Circular: test syntax for syn/inh circular declarations
51 Circular: self circular synthesized attribute
52 Circular: two mutually circular attributes that terminate immediately
53 Circular: two mutually circular attributes that may require an iteration before termination
54 Circular: a self-circular inherited attribute
55 Circular: two mutually circular attributes that may require an iteration before termination
56 Circular: two mutually circular parameterized attributes
(changed option "-no_cache_cycle" (JastAdd3) to "--noCacheCyle")
57 Circular: avoid re-computation of potentially circular attributes
58 Circular: no stack of strongly connected components
(changed option "-no_component_check" (JastAdd3) to "--noComponentCheck")
59 Circular: stack strongly connected components
60 Circular: inherited attrs, no stack of strongly connected components
(changed option "-no_component_check" (JastAdd3) to "--noComponentCheck")
Note: JastAdd2 produces the same result, but evaluates attributes more times than JastAdd3. BUG?
61 Circular: inherited attrs, stack strongly connected components
Note: JastAdd2 produces the same result, but evaluates attributes more times than JastAdd3. BUG?
62 Circular: two mutually circular paramterized attributes
63 Circular: two mutually circular paramterized attributes
64 Inh: inherited attribute defined using getChild()
65 Refinement of syn equations that uses refined() to invoke old implementation
Had to move inner static aspects (supported by JastAdd3) to simple sibling aspects and remove "public" from syn attributes in aspect A1.
66 Refinement of inh equations that uses refined() to invoke old implementation
Had to move inner static aspects (supported by JastAdd3) to simple sibling aspects.
67 FAILS Refinement of inh equations that uses refined() to invoke old implementation
Not supported by JastAdd2: "Cannot find symbol" index in refine method. BUG?
68 FAILS Refinement of inh equations that uses refined() to invoke old implementation
Not supported by JastAdd2: "Cannot find symbol" i and index in refine method. BUG?
69 NTA: Create a non-terminal attribute with an argument
70 FAILS Inh: different parameter name in inh equation than in declaration
Not supported by JastAdd2.
71 testing collection attributes
Had to change inner static aspect to a toplevel aspect.
72 FAILS testing various errors for collection attributes
JastAdd2 doesn't capture the same number of errors as JastAdd3 and syntax errors stops the automated test class.
73 FAILS ensure that attributes and rewrites only operate on AST nodes
Semantic error: No root node available. This test case does not have a grammar file.
74 Enhanced for using getBList()
75 NTA: Caching
76 Circular: Circularly computed hash set
77 FAILS Aspect: Requires aspect variables. Not supported by JastAdd2.
78 Inh: Equation values
79 NTA: Declared nta:s must be subtypes of ASTNode
80 Implements on classes in aspect
Had to remove "static" in front of class "C"
81 FAILS No result file for this test in JastAdd3. JastAdd2 gives semantic errors.
82 FAILS Applies attributes and rewrites to ASTNode, Opt and List
This test does not have a grammar which causes JastAdd2 to fail. Not supported by JastAdd2.