Bug 160352

Summary: COMPACT mode doesn't work for exception table in the disassembler
Product: [Eclipse Project] JDT Reporter: Olivier Thomann <Olivier_Thomann>
Component: CoreAssignee: Olivier Thomann <Olivier_Thomann>
Status: VERIFIED FIXED QA Contact:
Severity: normal    
Priority: P3    
Version: 3.2   
Target Milestone: 3.3 M3   
Hardware: PC   
OS: Windows XP   
Whiteboard:

Description Olivier Thomann CLA 2006-10-10 13:09:38 EDT
public class X {
	
	void foo() {
		try {
			System.out.println("Hello");
		} catch(Exception e) {
			e.printStackTrace();
		}
	}
}

Once this code is disassembled using the COMPACT mode, I still get a full qualified name for the exception type in the exception table.

  // Method descriptor #6 ()V
  // Stack: 2, Locals: 2
  void foo();
     0  getstatic System.out : PrintStream [15]
     3  ldc <String "Hello"> [21]
     5  invokevirtual PrintStream.println(String) : void [23]
     8  goto 16
    11  astore_1 [e]
    12  aload_1 [e]
    13  invokevirtual Exception.printStackTrace() : void [29]
    16  return
      Exception Table:
        [pc: 0, pc: 8] -> 11 when : java.lang.Exception  <== should be Exception
      Line numbers:
        [pc: 0, line: 5]
        [pc: 11, line: 6]
        [pc: 12, line: 7]
        [pc: 16, line: 9]
      Local variable table:
        [pc: 0, pc: 17] local: this index: 0 type: X
        [pc: 12, pc: 16] local: e index: 1 type: Exception
Comment 1 Olivier Thomann CLA 2006-10-10 13:30:18 EDT
Released for 3.3M3.
org.eclipse.jdt.core.tests.compiler.regression.ClassFileReaderTest_1_4#test076
Comment 2 David Audel CLA 2006-10-30 06:00:47 EST
Verified for 3.3 M3 using build I20061030-0010