- edited description
Node type only used as NTA treated as root
When a node type is only used in an NTA using the syn nta syntax, then any inherited equations not defined on it for its children will generate warnings, as if the node type was a root type.
Example: ex.ast:
A ::= C;
B ::= C;
C;
ex.jrag:
aspect ex {
syn nta A.b() = new B(new C());
inh int C.x();
eq A.getChild().x() = 1;
}
This will give:
Warning at ex.jrag:3: missing inherited equation for attribute x in class C when being child of B (path: B->C)
This is likely related to issue #217.
Comments (8)
-
Account Deactivated reporter -
Account Deactivated reporter - edited description
-
Account Deactivated reporter - edited description
-
- changed status to resolved
Fixed by commit 3dd5b3f
-
Improve synthesized NTA handling wrt inh attrs
Pure synthesized NTAs are now treated more like child NTAs with respect to inherited attributes.
A node type only used in synthesized NTA equations should no longer be treated as a root node, and warnings for missing inherited equations are reported for synthesized NTA children.
fixes
#224(bitbucket) fixes#217(bitbucket)→ <<cset 219ce5df9e04>>
-
Improve synthesized NTA handling wrt inh attrs
Pure synthesized NTAs are now treated more like child NTAs with respect to inherited attributes.
A node type only used in synthesized NTA equations should no longer be treated as a root node, and warnings for missing inherited equations are reported for synthesized NTA children.
fixes
#224and#217(bitbucket)→ <<cset 4aec461916dd>>
-
Improve synthesized NTA handling wrt inh attrs
Pure synthesized NTAs are now treated more like child NTAs with respect to inherited attributes.
A node type only used in synthesized NTA equations should no longer be treated as a root node, and warnings for missing inherited equations are reported for synthesized NTA children.
→ <<cset f0af9897e5b2>>
-
Improve synthesized NTA handling wrt inh attrs
Pure synthesized NTAs are now treated more like child NTAs with respect to inherited attributes.
A node type only used in synthesized NTA equations should no longer be treated as a root node, and warnings for missing inherited equations are reported for synthesized NTA children.
fixes
#224(bitbucket) fixes#217(bitbucket)→ <<cset 3dd5b3f12489>>
- Log in to comment