Consider code like this: ----- import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; public class TestTA { public void test() { try { System.err.println("adf"); } catch (@TA1 Exception e) { } catch (@TA2 Throwable t) { } } } @Target(ElementType.TYPE_USE) @Retention(RetentionPolicy.RUNTIME) @interface TA1 { } @Target(ElementType.TYPE_USE) @Retention(RetentionPolicy.RUNTIME) @interface TA2 { } ----- When compiled like this: $ javac -g:vars TestTA.java The result is: ----- public void test(); descriptor: ()V flags: ACC_PUBLIC Code: stack=2, locals=2, args_size=1 0: getstatic #2 // Field java/lang/System.err:Ljava/io/PrintStream; 3: ldc #3 // String adf 5: invokevirtual #4 // Method java/io/PrintStream.println:(Ljava/lang/String;)V 8: goto 16 11: astore_1 12: goto 16 15: astore_1 16: return Exception table: from to target type 0 8 11 Class java/lang/Exception 0 8 15 Class java/lang/Throwable LocalVariableTable: Start Length Slot Name Signature 12 0 1 e Ljava/lang/Exception; 16 0 1 t Ljava/lang/Throwable; 0 17 0 this LTestTA; StackMapTable: number_of_entries = 3 frame_type = 75 /* same_locals_1_stack_item */ stack = [ class java/lang/Exception ] frame_type = 67 /* same_locals_1_stack_item */ stack = [ class java/lang/Throwable ] frame_type = 0 /* same */ RuntimeVisibleTypeAnnotations: 0: #22(): EXCEPTION_PARAMETER, exception_index=0 1: #23(): EXCEPTION_PARAMETER, exception_index=1 ----- Which appears to be correct, but when compiled like this: $ javac -g:none TestTA.java The result is (just the relevant attribute): ----- RuntimeVisibleTypeAnnotations: 0: #15(): EXCEPTION_PARAMETER, exception_index=0 1: #16(): EXCEPTION_PARAMETER, exception_index=0 ----- Note the "exception_index", which is incorrect for the second attribute. The problem appears to be in Code.putVar:~2195, the: var.sym.hasTypeAnnotations() should read: !var.sym.hasTypeAnnotations() This was using: $ javac -fullversion javac full version "1.8.0-ea-b116"