Uploaded image for project: 'Groovy'
  1. Groovy
  2. GROOVY-7647

Incorrect line information for debug

    XMLWordPrintableJSON

Details

    Description

      Try to debug the code:

      boolean boolVar = false; //line 15
      if (boolVar) { // set breakpoint here and step over //line 16
          print "ok"; //line 17
      } // end of file //line 18
      

      It steps over to the line with print even though it is not executed.

      Seems that compiler does not generate line info for the last block (line 18):

       public java.lang.Object run();
          descriptor: ()Ljava/lang/Object;
          flags: ACC_PUBLIC
          Code:
            stack=3, locals=3, args_size=1
               0: invokestatic  #18                 // Method $getCallSiteArray:()[Lorg/codehaus/groovy/runtime/callsite/CallSite;
               3: astore_1
               4: iconst_0
               5: istore_2
               6: iload_2
               7: pop
               8: iload_2
               9: ifeq          28
              12: aload_1
              13: ldc           #41                 // int 1
              15: aaload
              16: aload_0
              17: ldc           #43                 // String ok
              19: invokeinterface #47,  3           // InterfaceMethod org/codehaus/groovy/runtime/callsite/CallSite.callCurrent:(Lgroovy/lang/GroovyObject;Ljava/lang/Object;)Ljava/lang/Object;
              24: areturn
              25: goto          30
              28: aconst_null
              29: areturn
              30: aconst_null
              31: areturn
            LocalVariableTable:
              Start  Length  Slot  Name   Signature
                  0      30     0  this   Lsdfklajsdlkjas/test;
                  6      24     2 boolVar   Z
            LineNumberTable:
              line 15: 4
              line 16: 8
              line 17: 12
      

      Attachments

        Issue Links

          Activity

            People

              paulk Paul King
              gorrus Egor Ushakov
              Votes:
              3 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: