Java Solaris Communities Sun Store Join SDN My Profile Why Join?
 
Bug Database
Bug Detail
Quick Lists
Top 25 Bugs
Top 25 RFE's
Recently Closed Bugs
Printable Page Printable Page


Bug Database
Bug ID: 6491544
Votes 2
Synopsis Compiling try-finally within code size limit
Category java:compiler
Reported Against
Release Fixed
State 6-Fix Understood, request for enhancement
Priority: 4-Low
Related Bugs 4640034 , 4739388 , 6464451
Submit Date 09-NOV-2006
Description
The amount of code per method is limited to 64K bytes by the sizes of the indices 
in the exception_table of the Code attribute, in the LineNumberTable attribute, 
in the LocalVariableTable attribute, and in the StackMapTable attribute (JVMS 2nd
edition 4.10).

After inlining subroutine code (4640034), some applications with extreme styles 
such as deeply nested finally blocks, or huge amount of exiting paths in try or
synchronized blocks, would fail to compile because code size exceeds limit. 
It was temporarily fixed in JDK 1.4.2 by introducing a command-line flag to 
control how much inlining happens for finally blocks (4739388). After jsr/ret
instructions are eliminated in JDK 6, the above workaround will no longer work.
Posted Date : 2006-11-09 00:22:03.0
Work Around
N/A
Evaluation
We need a general solution to ensure backward compatibility. More specifically, 
a souce code compiled in older javac should still be able to compile in current
javac.
Posted Date : 2006-11-09 00:22:03.0
Comments
  
  Include a link with my name & email   


PLEASE NOTE: JDK6 is formerly known as Project Mustang