Bug 430082 - IllegalArgumentException on compiling when an primitive is incremented in an if-clause withing a string switch
Summary: IllegalArgumentException on compiling when an primitive is incremented in an ...
Status: NEW
Alias: None
Product: AspectJ
Classification: Tools
Component: Compiler (show other bugs)
Version: 1.7.4   Edit
Hardware: PC Windows 7
: P3 normal with 1 vote (vote)
Target Milestone: ---   Edit
Assignee: aspectj inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-03-11 06:13 EDT by Frans Oosterhof CLA
Modified: 2014-10-07 21:57 EDT (History)
1 user (show)

See Also:


Attachments
Non-compiling test case (373 bytes, application/octet-stream)
2014-03-11 06:13 EDT, Frans Oosterhof CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Frans Oosterhof CLA 2014-03-11 06:13:36 EDT
Created attachment 240751 [details]
Non-compiling test case

The compiler fails with the following error:

Internal compiler error: java.lang.IllegalArgumentException: info cannot be null at org.aspectj.org.eclipse.jdt.internal.compiler.codegen.StackMapFrame.addStackItem(StackMapFrame.java:81)

I've isolated this problem and the reason it does not compile is because of primitive that's incremented inline in an if statement. This statement is contained into an case statement in a string switch.

When extracting the increment outside the if statement it compiles well. Also when the switch statement switches on a primitive it compiles fine.

I've attached my test code.
Comment 1 Paul Dillon CLA 2014-10-07 21:57:15 EDT
It also occurs when a primitive is incremented inline within the body of a while statement.