langtools/src/share/classes/com/sun/tools/javac/jvm/ClassReader.java
changeset 24403 f2ce14657001
parent 24396 3c36c6afcbca
child 24604 7f68545b5128
equal deleted inserted replaced
24402:96a0a92dc38d 24403:f2ce14657001
  1538             return position;
  1538             return position;
  1539         }
  1539         }
  1540         // local variable
  1540         // local variable
  1541         case LOCAL_VARIABLE: {
  1541         case LOCAL_VARIABLE: {
  1542             final int table_length = nextChar();
  1542             final int table_length = nextChar();
       
  1543             final int[] newLvarOffset = new int[table_length];
       
  1544             final int[] newLvarLength = new int[table_length];
       
  1545             final int[] newLvarIndex = new int[table_length];
       
  1546 
       
  1547             for (int i = 0; i < table_length; ++i) {
       
  1548                 newLvarOffset[i] = nextChar();
       
  1549                 newLvarLength[i] = nextChar();
       
  1550                 newLvarIndex[i] = nextChar();
       
  1551             }
       
  1552 
  1543             final TypeAnnotationPosition position =
  1553             final TypeAnnotationPosition position =
  1544                 TypeAnnotationPosition.localVariable(readTypePath());
  1554                     TypeAnnotationPosition.localVariable(readTypePath());
  1545 
  1555             position.lvarOffset = newLvarOffset;
  1546             position.lvarOffset = new int[table_length];
  1556             position.lvarLength = newLvarLength;
  1547             position.lvarLength = new int[table_length];
  1557             position.lvarIndex = newLvarIndex;
  1548             position.lvarIndex = new int[table_length];
       
  1549 
       
  1550             for (int i = 0; i < table_length; ++i) {
       
  1551                 position.lvarOffset[i] = nextChar();
       
  1552                 position.lvarLength[i] = nextChar();
       
  1553                 position.lvarIndex[i] = nextChar();
       
  1554             }
       
  1555             return position;
  1558             return position;
  1556         }
  1559         }
  1557         // resource variable
  1560         // resource variable
  1558         case RESOURCE_VARIABLE: {
  1561         case RESOURCE_VARIABLE: {
  1559             final int table_length = nextChar();
  1562             final int table_length = nextChar();
       
  1563             final int[] newLvarOffset = new int[table_length];
       
  1564             final int[] newLvarLength = new int[table_length];
       
  1565             final int[] newLvarIndex = new int[table_length];
       
  1566 
       
  1567             for (int i = 0; i < table_length; ++i) {
       
  1568                 newLvarOffset[i] = nextChar();
       
  1569                 newLvarLength[i] = nextChar();
       
  1570                 newLvarIndex[i] = nextChar();
       
  1571             }
       
  1572 
  1560             final TypeAnnotationPosition position =
  1573             final TypeAnnotationPosition position =
  1561                 TypeAnnotationPosition.resourceVariable(readTypePath());
  1574                     TypeAnnotationPosition.resourceVariable(readTypePath());
  1562 
  1575             position.lvarOffset = newLvarOffset;
  1563             position.lvarOffset = new int[table_length];
  1576             position.lvarLength = newLvarLength;
  1564             position.lvarLength = new int[table_length];
  1577             position.lvarIndex = newLvarIndex;
  1565             position.lvarIndex = new int[table_length];
       
  1566 
       
  1567             for (int i = 0; i < table_length; ++i) {
       
  1568                 position.lvarOffset[i] = nextChar();
       
  1569                 position.lvarLength[i] = nextChar();
       
  1570                 position.lvarIndex[i] = nextChar();
       
  1571             }
       
  1572             return position;
  1578             return position;
  1573         }
  1579         }
  1574         // exception parameter
  1580         // exception parameter
  1575         case EXCEPTION_PARAMETER: {
  1581         case EXCEPTION_PARAMETER: {
  1576             final int exception_index = nextChar();
  1582             final int exception_index = nextChar();