| Summary: | NPE in Xbase compiler for method with inferred return type and recursive method call | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | [Modeling] TMF | Reporter: | Christian Weisskopf <christian.weisskopf> | ||||||
| Component: | Xtext | Assignee: | Project Inbox <tmf.xtext-inbox> | ||||||
| Status: | CLOSED FIXED | QA Contact: | |||||||
| Severity: | minor | ||||||||
| Priority: | P3 | CC: | sebastian.zarnekow, sven.efftinge | ||||||
| Version: | unspecified | Flags: | sebastian.zarnekow:
indigo+
|
||||||
| Target Milestone: | SR2 | ||||||||
| Hardware: | All | ||||||||
| OS: | All | ||||||||
| Whiteboard: | |||||||||
| Attachments: |
|
||||||||
Created attachment 203590 [details]
Xtend class
Created attachment 203591 [details]
Stack trace
Pushed to master. Closing all bugs that were set to RESOLVED before Neon.0 Closing all bugs that were set to RESOLVED before Neon.0 |
Build Identifier: 2.0.1.v201108020636 The attached Xtend class (using the Xtend tutorial project) does not compile to java due to a NPE thrown in the Xtend/Xbase compiler. The call hierarchy to reproduce the error is as follows: - recursiveMethod (Return type declared) - method1 (Return type declared) - method2 (No return type declared) - recursiveMethod (Return type declared) The circumstances are very specific and in any of the following cases, no NPE is thrown: - In case of a declared return type for method2 - In case of a direct call to method2 from the recursiveMethod - In case of no call to recusriveMethod in method2 See the attached files for more details and the stack trace. Reproducible: Always Steps to Reproduce: 1. Import the Xtend tutorial project 2. Copy the attached Xtend class in to the xtend.tutorial.basics package 3. Check the Eclipse .log-file for an NPE