Hi Patrick,
I have trouble reproducing your problem. Which revision of the IntraFlow
module are you using? I'm using r769, and then r9236 for the JastAddJ
frontend. I tested to run your example but I get contributions for all
roots: BodyDecl, Stmt and Expr. I'm attaching the example so that you
can compare. The example program ("Analyzer.java") will print the
content of "cdd()" and "def()" for expression nodes in methods. Hope
this helps.
Regards,
Emma
On 03/23/2012 08:19 AM, Patrick Lam wrote:
> Hi,
>
> Thanks for the work on JastAdd. It makes certain things a lot easier
> to express.
>
> Using code from SVN, I'm encountering something strange.
>
> In particular I'm using r9236 of the Java1.4Frontend, and I'm trying
> to use def() from the IntraFlow extension. But I can reproduce the
> problem with the following two lines:
>
> coll SmallSet CFGNode.cdd() [emptySmallSet().mutable()] with add
> root BodyDecl;
> VarAccess contributes decl() when isDest() to CFGNode.cdd() for this;
>
>
> I'm not getting any contributions from VarAccess with a simple method
> like this one:
>
> class Foo {
> public Foo fob() {
> Foo tt, rr;
> tt = this;
> rr = tt;
> return rr;
> }
> }
>
> def() from JavaDeadAssigns doesn't seem to work right either; it only
> catches VariableDeclaration and not VarAccess.
>
> In particular, if I collect on Stmt, then I get a bunch of
> contributions. But if I collect on Expr or any descendant, I get
> nothing. Am I doing something wrong?
>
> Thanks!
>
> pat
> _______________________________________________
> JastAdd mailing list
> JastAdd_at_cs.lth.se
> https://mail1.cs.lth.se/cgi-bin/mailman/listinfo/jastadd
Received on Fri Mar 23 2012 - 13:51:26 CET