diff options
author | Reinier Zwitserloot <reinier@tipit.to> | 2009-06-23 06:01:13 +0200 |
---|---|---|
committer | Reinier Zwitserloot <reinier@tipit.to> | 2009-06-23 06:01:13 +0200 |
commit | 6c82a3c780539825157f721fcfe1a8894e73b161 (patch) | |
tree | f98ea3a9f826d40f0351f3752b1d96596d0fd10d /src/lombok/javac/JavacAST.java | |
parent | 4ee8e7a3d2513420e0f7affcca61d916c2a7374b (diff) | |
download | lombok-6c82a3c780539825157f721fcfe1a8894e73b161.tar.gz lombok-6c82a3c780539825157f721fcfe1a8894e73b161.tar.bz2 lombok-6c82a3c780539825157f721fcfe1a8894e73b161.zip |
This is a 3-day bughunt that ended up being something extremely simple:
** DO NOT REUSE TYPEREFERENCE OBJECTS **
because that makes the binding process go pearshaped - after hte first run, that TypeReference object's binding parameter is set, and as its set, the resolver won't bother re-resolving it.
However, each parse run starts with new scope objects, and any 2 bindings created by different scopes aren't equal to each other. urrrrrrgh!
Fortunately, a lot of code that 'fixed' methods by adding bindings and scope have all been removed, as the parser patch point is well before these bindings are created. Thus:
** NEVER CREATE YOUR OWN BINDINGS AND SCOPE OBJECTS **
because if it comes down to that, you're doing it entirely wrong. That's eclipse's job. We're patching where we are so you don't have to do this.
Diffstat (limited to 'src/lombok/javac/JavacAST.java')
0 files changed, 0 insertions, 0 deletions