|
23 | 23 |
|
24 | 24 | import static lombok.core.handlers.HandlerUtil.*; |
25 | 25 | import static lombok.javac.Javac.*; |
| 26 | +import static lombok.javac.JavacAugments.JCTree_keepPosition; |
26 | 27 | import static lombok.javac.JavacTreeMaker.TypeTag.*; |
27 | 28 | import static lombok.javac.handlers.JavacHandlerUtil.*; |
28 | 29 |
|
|
47 | 48 | import lombok.spi.Provides; |
48 | 49 |
|
49 | 50 | import com.sun.tools.javac.code.Flags; |
50 | | -import com.sun.tools.javac.tree.JCTree; |
51 | 51 | import com.sun.tools.javac.tree.JCTree.JCAnnotation; |
52 | 52 | import com.sun.tools.javac.tree.JCTree.JCBinary; |
53 | 53 | import com.sun.tools.javac.tree.JCTree.JCBlock; |
@@ -229,18 +229,9 @@ public JCMethodDecl createGetter(long access, JavacNode field, JavacTreeMaker tr |
229 | 229 | boolean makeFinal = shouldMakeFinal(field, accessors); |
230 | 230 |
|
231 | 231 | List<JCStatement> statements; |
232 | | - JCTree toClearOfMarkers = null; |
233 | | - int[] methodArgPos = null; |
234 | 232 | boolean addSuppressWarningsUnchecked = false; |
235 | 233 | if (lazy && !inNetbeansEditor(field)) { |
236 | | - toClearOfMarkers = fieldNode.init; |
237 | | - if (toClearOfMarkers instanceof JCMethodInvocation) { |
238 | | - List<JCExpression> args = ((JCMethodInvocation) toClearOfMarkers).args; |
239 | | - methodArgPos = new int[args.length()]; |
240 | | - for (int i = 0; i < methodArgPos.length; i++) { |
241 | | - methodArgPos[i] = args.get(i).pos; |
242 | | - } |
243 | | - } |
| 234 | + JCTree_keepPosition.set(fieldNode.init, true); |
244 | 235 | statements = createLazyGetterBody(treeMaker, field, source); |
245 | 236 | addSuppressWarningsUnchecked = LombokOptionsFactory.getDelombokOptions(field.getContext()).getFormatPreferences().generateSuppressWarnings(); |
246 | 237 | } else { |
@@ -268,12 +259,6 @@ public JCMethodDecl createGetter(long access, JavacNode field, JavacTreeMaker tr |
268 | 259 | JCMethodDecl decl = recursiveSetGeneratedBy(treeMaker.MethodDef(treeMaker.Modifiers(access, annsOnMethod), methodName, methodType, |
269 | 260 | methodGenericParams, parameters, throwsClauses, methodBody, annotationMethodDefaultValue), source); |
270 | 261 |
|
271 | | - if (toClearOfMarkers != null) recursiveSetGeneratedBy(toClearOfMarkers, null); |
272 | | - if (methodArgPos != null) { |
273 | | - for (int i = 0; i < methodArgPos.length; i++) { |
274 | | - ((JCMethodInvocation) toClearOfMarkers).args.get(i).pos = methodArgPos[i]; |
275 | | - } |
276 | | - } |
277 | 262 | decl.mods.annotations = decl.mods.annotations.appendList(delegates); |
278 | 263 | if (addSuppressWarningsUnchecked) { |
279 | 264 | ListBuffer<JCExpression> suppressions = new ListBuffer<JCExpression>(); |
|
0 commit comments