Improve cache configurations: per-equation, better conflict handling

Issue #279 new
Jesper Öqvist created an issue

In JastAdd 2.2.3 it is only possible to use cache configurations for attribute declarations, not equations.

For example, the first cache configuration in this example works, but the second one does not work:

aspect Test {
  syn int A.x() = 1;
  eq B.x() = 2;
  cache A.x(); // OK!
  cache B.x(); // Nope.
}

Additionally, the check for conflicting cache declarations does not consider the typename of the attribute, so a conflicting cache declaration error is generated in the following example:

aspect Test {
  syn int A.x() = 1;
  eq B.x() = 2;
  cache A.x();
  uncache B.x(); // Error: conflicting cache declaration.
}

Comments (1)

  1. Log in to comment