Thursday, April 2, 2015

LocalVariableInfoInconsistentException

com.sun.org.apache.bcel.internal.verifier.exc.LocalVariableInfoInconsistentException

LocalVariableInfoInconsistentException is described in the javadoc comments as:

A LocalVariableInfoInconsistentException instance is thrown by the LocalVariableInfo class when it detects that the information it holds is inconsistent; this is normally due to inconsistent LocalVariableTable entries in the Code attribute of a certain Method object.
version: $Id: LocalVariableInfoInconsistentException.java,v 1.1.1.1 2001/10/29 20:00:33 jvanzyl Exp $ author: Enver Haase

Where is this exception thrown?

Following, is a list of exception messages cross-referenced to the source code responsible for throwing them. Click on the method link to view the code and see how the exception is thrown.

How is this exception thrown?

The following sub-sections identify where this exception is thrown, and how (or why) the code is throwing the exception.

Any source code quoted in this section is subject to the Java Research License unless stated otherwise.

com.sun.org.apache.bcel.internal.verifier.statics.LocalVariableInfo.add(int, String, Type)

/**
  * Adds information about name and type for a given offset.
  * @throws LocalVariableInfoInconsistentException if the new information conflicts
  *         with already gathered information.
  */
private void add(int offset, String name, Type t) throws LocalVariableInfoInconsistentException {
    if (getName(offset) != null) {
        if (!getName(offset).equals(name)) {
            throw new LocalVariableInfoInconsistentException('At bytecode offset '' + offset + '' a local variable has two different names: '' + getName(offset) + '' and '' + name + ''.');
        }
    }
    if (getType(offset) != null) {
        if (!getType(offset).equals(t)) {
            throw new LocalVariableInfoInconsistentException('At bytecode offset '' + offset + '' a local variable has two different types: '' + getType(offset) + '' and '' + t + ''.');
        }
    }
    setName(offset, name);
    setType(offset, t);
}

Source: "Java SE Downloads: Java SE 6 JDK Source Code", at: http://www.oracle.com/technetwork/java/javase/downloads/index.html

No comments:

Post a Comment