src/main/java/org/apache/bcel/verifier/structurals/InstConstraintVisitor.java (20 lines):
- line 43: * satisfied. TODO: Currently, the JVM's behavior concerning monitors (MONITORENTER, MONITOREXIT) is not modeled in
- line 149: public void setConstantPoolGen(final ConstantPoolGen cpg) { // TODO could be package-protected?
- line 160: public void setFrame(final Frame f) { // TODO could be package-protected?
- line 332: // FIXME: maybe not the best way to handle this
- line 935: // TODO: This can possibly only be checked using Staerk-et-al's "set-of-object types", not
- line 1062: // TODO: One day move to Staerk-et-al's "Set of object types" instead of "wider" object types
- line 1073: // TODO: Could go into Pass 3a.
- line 1079: // FIXME: maybe not the best way to handle this
- line 1561: // TODO: Do we want to do anything with it?
- line 1589: // TODO: This can only be checked when using Staerk-et-al's "set of object types"
- line 1620: // TODO: This can only be checked if we're using Staerk-et-al's "set of object types"
- line 1659: // TODO: This can possibly only be checked when using Staerk-et-al's "set of object types" instead
- line 1725: // FIXME: maybe not the best way to handle this
- line 1739: // FIXME: maybe not the best way to handle this
- line 1777: // FIXME: maybe not the best way to handle this
- line 2438: // TODO: Could go into Pass 3a.
- line 2444: // FIXME: maybe not the best way to handle this
- line 2457: // FIXME: maybe not the best way to handle this
- line 2515: // TODO: This can only be checked if using Staerk-et-al's "set of object types" instead of a
- line 2583: * method to be called two or three times. [TODO: Fix this.]
src/main/java/org/apache/bcel/verifier/statics/Pass3aVerifier.java (17 lines):
- line 220: // FIXME: maybe not the best way to handle this
- line 330: // FIXME: maybe not the best way to handle this
- line 378: // FIXME: maybe not the best way to handle this
- line 452: // TODO: From time to time check if BCEL allows to detect if the
- line 518: // FIXME: maybe not the best way to handle this
- line 571: // FIXME: maybe not the best way to handle this
- line 596: // FIXME: maybe not the best way to handle this
- line 626: // FIXME: maybe not the best way to handle this
- line 831: // FIXME: maybe not the best way to handle this
- line 918: // TODO: Make this a binary search! The instructionPositions array is naturally ordered!
- line 1021: // TODO:
- line 1060: // FIXME: maybe not the best way to handle this
- line 1100: // TODO: Check how BCEL handles (and will handle) instructions like IMPDEP1, IMPDEP2,
- line 1143: // TODO: see the do_verify() comments. Maybe we should really work on the
- line 1145: // TODO: Review Exception API, possibly build in some "offending instruction" thing
- line 1149: // TODO: Implement as much as possible here. BCEL does _not_ check everything.
- line 1181: // FIXME: maybe not the best way to handle this
src/main/java/org/apache/bcel/verifier/statics/Pass2Verifier.java (10 lines):
- line 224: // TODO: rework it.
- line 320: // FIXME: this might not be the best way to handle missing classes.
- line 549: // FIXME: this might not be the best way to handle missing classes.
- line 675: // [marked TODO in JustIce]
- line 1174: * TODO: implement. Are there any restrictions?
- line 1275: // FIXME: this might not be the best way to handle missing classes.
- line 1317: // FIXME: this might not be the best way to handle missing classes.
- line 1365: // FIXME: this might not be the best way to handle missing classes.
- line 1387: // FIXME: this might not be the best way to handle missing classes.
- line 1433: // FIXME: this might not be the best way to handle missing classes.
src/main/java/org/apache/bcel/generic/Select.java (7 lines):
- line 40: protected int[] match; // matches, i.e., case 1: ... TODO could be package-protected?
- line 46: protected int[] indices; // target offsets TODO could be package-protected?
- line 52: protected InstructionHandle[] targets; // target objects in instruction list TODO could be package-protected?
- line 58: protected int fixed_length; // fixed length defined by subclasses TODO could be package-protected?
- line 64: protected int match_length; // number of cases TODO could be package-protected?
- line 70: protected int padding; // number of pad bytes for alignment TODO could be package-protected?
- line 289: public void setTarget(final int i, final InstructionHandle target) { // TODO could be package-protected?
src/main/java/org/apache/bcel/generic/MethodGen.java (6 lines):
- line 639: // J5TODO: Should paramAnnotations be an array of arrays? Rather than an array of lists, this
- line 1051: public void setClassName(final String className) { // TODO could be package-protected?
- line 1055: public void setInstructionList(final InstructionList il) { // TODO could be package-protected?
- line 1062: public void setMaxLocals() { // TODO could be package-protected? (some tests would need repackaging)
- line 1095: public void setMaxStack() { // TODO could be package-protected? (some tests would need repackaging)
- line 1106: public void setMaxStack(final int m) { // TODO could be package-protected?
src/main/java/org/apache/bcel/generic/ReferenceType.java (6 lines):
- line 58: * TODO: Above sounds a little arbitrary. On the other hand, there is no object referenced by Type.NULL so we can also
- line 65: // TODO: Is there a proof of OBJECT being the direct ancestor of every ArrayType?
- line 89: * TODO: Above sounds a little arbitrary. On the other hand, there is no object referenced by Type.NULL so we can also
- line 106: // TODO: Is there a proof of OBJECT being the direct ancestor of every ArrayType?
- line 115: // TODO: The above line is correct comparing to the vmspec2. But one could
- line 227: // TODO: Check if this is still valid or find a way to dynamically find out which
src/main/java/org/apache/bcel/classfile/LocalVariable.java (5 lines):
- line 136: // TODO should this throw?
- line 229: public void setIndex(final int index) { // TODO unused
- line 243: public void setNameIndex(final int nameIndex) { // TODO unused
- line 250: public void setSignatureIndex(final int signatureIndex) { // TODO unused
- line 257: public void setStartPC(final int startPc) { // TODO unused
src/main/java/org/apache/bcel/generic/ClassGen.java (5 lines):
- line 116: // J5TODO: Could make unpacking lazy, done on first reference
- line 285: // J5TODO: Should we make calling unpackAnnotations() lazy and put it in here?
- line 336: // TODO: Sometime later, trash any attributes called 'RuntimeVisibleAnnotations' or 'RuntimeInvisibleAnnotations'
- line 482: public void setMajor(final int major) { // TODO could be package-protected - only called by test code
- line 500: public void setMinor(final int minor) { // TODO could be package-protected - only called by test code
src/main/java/org/apache/bcel/verifier/structurals/Pass3bVerifier.java (4 lines):
- line 57: * TODO: Throughout pass 3b, upper halves of LONG and DOUBLE are represented by Type.UNKNOWN. This should be changed in
- line 249: // TODO: the "oldchain" and "newchain" is used to determine the subroutine
- line 273: // TODO: This is buggy, we check only the top-level return instructions this way.
- line 338: // FIXME: maybe not the best way to handle this
src/main/java/org/apache/bcel/generic/FieldGenOrMethodGen.java (4 lines):
- line 61: protected FieldGenOrMethodGen(final int accessFlags) { // TODO could this be package protected?
- line 156: public void setConstantPool(final ConstantPoolGen cp) { // TODO could be package-protected?
- line 161: public void setName(final String name) { // TODO could be package-protected?
- line 166: public void setType(final Type type) { // TODO could be package-protected?
src/main/java/org/apache/bcel/generic/ConstantPoolGen.java (4 lines):
- line 202: // // TODO should this be handled somehow?
- line 204: // // TODO should this be handled somehow?
- line 206: // // TODO should this be handled somehow?
- line 208: // // TODO should this be handled somehow?
src/main/java/org/apache/bcel/verifier/structurals/Subroutines.java (4 lines):
- line 54: * TODO: refer to the paper.
- line 145: // TODO: Implement caching.
- line 397: public final Subroutine TOPLEVEL; // TODO can this be made private?
- line 480: * top-level code, too. [why top-level? TODO: Refer to the special JustIce notion of subroutines.]
src/main/java/org/apache/bcel/verifier/structurals/ControlFlowGraph.java (4 lines):
- line 96: // TODO: implement caching!
- line 109: //TODO: remove. Only JustIce must not use it, but foreign users of the ControlFlowGraph
- line 327: // TODO: Can be performance-improved.
- line 352: // TODO: Put information in the brackets, e.g.
src/main/java/org/apache/bcel/classfile/Attribute.java (4 lines):
- line 229: protected int name_index; // Points to attribute name in constant pool TODO make private (has getter & setter)
- line 235: protected int length; // Content length of attribute field TODO make private (has getter & setter)
- line 241: protected byte tag; // Tag to distinguish subclasses TODO make private & final; supposed to be immutable
- line 247: protected ConstantPool constant_pool; // TODO make private (has getter & setter)
src/main/java/org/apache/bcel/verifier/structurals/ExecutionVisitor.java (3 lines):
- line 90: public void setConstantPoolGen(final ConstantPoolGen cpg) { // TODO could be package-protected?
- line 100: public void setFrame(final Frame f) { // TODO could be package-protected?
- line 232: // TODO: One could use a sophisticated analysis here to check
src/main/java/org/apache/bcel/generic/CodeExceptionGen.java (3 lines):
- line 123: public void setEndPC(final InstructionHandle endPc) { // TODO could be package-protected?
- line 133: public void setHandlerPC(final InstructionHandle handlerPc) { // TODO could be package-protected?
- line 143: public void setStartPC(final InstructionHandle startPc) { // TODO could be package-protected?
src/main/java/org/apache/bcel/classfile/CodeException.java (3 lines):
- line 129: // TODO should this throw?
- line 192: public void setHandlerPC(final int handlerPc) { // TODO unused
- line 199: public void setStartPC(final int startPc) { // TODO unused
src/main/java/org/apache/bcel/verifier/VerifierAppFrame.java (3 lines):
- line 115: // FIXME: report the error using the GUI
- line 242: // FIXME: handle the error
- line 271: // FIXME: handle the error
src/main/java/org/apache/bcel/classfile/InnerClass.java (3 lines):
- line 88: // TODO should this throw?
- line 151: public void setInnerNameIndex(final int innerNameIndex) { // TODO unused
- line 158: public void setOuterClassIndex(final int outerClassIndex) { // TODO unused
src/main/java/org/apache/bcel/verifier/structurals/LocalVariables.java (3 lines):
- line 176: * TODO if ((locals[i] instanceof org.apache.bcel.generic.ReturnaddressType) && (lv.locals[i] instanceof
- line 183: // FIXME: maybe not the best way to handle this
- line 194: public void set(final int slotIndex, final Type type) { // TODO could be package-protected?
src/main/java/org/apache/bcel/classfile/ElementValue.java (3 lines):
- line 111: // TODO isRuntimeVisible
- line 136: protected int type; // TODO should be final
- line 141: protected ConstantPool cpool; // TODO should be final
src/main/java/org/apache/bcel/generic/LocalVariableInstruction.java (2 lines):
- line 160: * Set the local variable index. also updates opcode and length TODO Why?
- line 165: public void setIndex(final int n) { // TODO could be package-protected?
src/main/java/org/apache/bcel/generic/LocalVariableGen.java (2 lines):
- line 180: public void setEnd(final InstructionHandle end) { // TODO could be package-protected?
- line 198: public void setStart(final InstructionHandle start) { // TODO could be package-protected?
src/main/java/org/apache/bcel/classfile/ModuleExports.java (2 lines):
- line 67: // TODO add more getters and setters?
- line 76: // TODO should this throw?
src/main/java/org/apache/bcel/classfile/StackMapEntry.java (2 lines):
- line 338: public void setNumberOfLocals(final int n) { // TODO unused
- line 346: public void setNumberOfStackItems(final int n) { // TODO unused
src/main/java/org/apache/bcel/generic/Type.java (2 lines):
- line 302: protected byte type; // TODO should be final (and private)
- line 308: protected String signature; // signature for the type TODO should be private
src/main/java/org/apache/bcel/verifier/statics/Pass1Verifier.java (2 lines):
- line 151: // TODO: Maybe change Repository's behavior to throw a LoadingException instead of just returning "null"
- line 165: // FIXME: currently, Pass1Verifier treats jc == null as a special
src/main/java/org/apache/bcel/classfile/JavaClass.java (2 lines):
- line 410: * TODO: Check if assignment compatibility is sufficient. What does Sun do?
- line 832: public void setRepository(final org.apache.bcel.util.Repository repository) { // TODO make protected?
src/main/java/org/apache/bcel/generic/InstructionHandle.java (2 lines):
- line 220: public void setInstruction(final Instruction i) { // Overridden in BranchHandle TODO could be package-protected?
- line 266: // TODO remove this method in any redesign of BCEL
src/main/java/org/apache/bcel/classfile/ModuleProvides.java (2 lines):
- line 65: // TODO add more getters and setters?
- line 74: // TODO should this throw?
src/main/java/org/apache/bcel/classfile/ConstantCP.java (2 lines):
- line 44: protected int class_index; // TODO make private (has getter & setter)
- line 51: protected int name_and_type_index; // TODO make private (has getter & setter)
src/main/java/org/apache/bcel/classfile/ModuleRequires.java (2 lines):
- line 62: // TODO add more getters and setters?
- line 71: // TODO should this throw?
src/main/java/org/apache/bcel/classfile/Code.java (2 lines):
- line 62: private int maxStack; // Maximum size of stack used by this method // TODO this could be made final (setter is not used)
- line 63: private int maxLocals; // Number of local variables // TODO this could be made final (setter is not used)
src/main/java/org/apache/bcel/generic/LineNumberGen.java (2 lines):
- line 82: public void setInstruction(final InstructionHandle instructionHandle) { // TODO could be package-protected?
- line 88: public void setSourceLine(final int srcLine) { // TODO could be package-protected?
src/main/java/org/apache/bcel/classfile/ModuleOpens.java (2 lines):
- line 67: // TODO add more getters and setters?
- line 76: // TODO should this throw?
src/main/java/org/apache/bcel/classfile/Constant.java (2 lines):
- line 125: protected byte tag; // TODO should be private & final
- line 156: // TODO should this throw?
src/main/java/org/apache/bcel/classfile/MethodParameter.java (1 line):
- line 71: // TODO should this throw?
src/main/java/org/apache/bcel/classfile/BootstrapMethod.java (1 line):
- line 87: // TODO should this throw?
src/main/java/org/apache/bcel/verifier/structurals/OperandStack.java (1 line):
- line 163: // FIXME: maybe not the best way to handle this
src/main/java/org/apache/bcel/classfile/InnerClasses.java (1 line):
- line 100: // TODO this could be recoded to use a lower level constructor after creating a copy of the inner classes
src/main/java/org/apache/bcel/generic/CPInstruction.java (1 line):
- line 107: public void setIndex(final int index) { // TODO could be package-protected?
src/main/java/org/apache/bcel/classfile/ConstantUtf8.java (1 line):
- line 85: // TODO these should perhaps be AtomicInt?
src/main/java/org/apache/bcel/generic/BranchHandle.java (1 line):
- line 65: public void setInstruction(final Instruction i) { // TODO could be package-protected?
src/conf/spotbugs-exclude-filter.xml (1 line):
- line 66:
src/main/java/org/apache/bcel/classfile/AnnotationEntry.java (1 line):
- line 121: // TODO return List
src/main/java/org/apache/bcel/classfile/LineNumber.java (1 line):
- line 87: // TODO should this throw?
src/main/java/org/apache/bcel/classfile/StackMapType.java (1 line):
- line 90: // TODO should this throw?
src/main/java/org/apache/bcel/classfile/Module.java (1 line):
- line 112: // TODO add more getters and setters?
src/main/java/org/apache/bcel/classfile/AccessFlags.java (1 line):
- line 30: protected int access_flags; // TODO not used externally at present
src/main/java/org/apache/bcel/classfile/BootstrapMethods.java (1 line):
- line 37: private BootstrapMethod[] bootstrapMethods; // TODO this could be made final (setter is not used)
src/main/java/org/apache/bcel/classfile/ConstantPool.java (1 line):
- line 221: // TODO should this throw?
src/main/java/org/apache/bcel/generic/ElementValueGen.java (1 line):
- line 115: // TODO: isRuntimeVisible ??????????
src/main/java/org/apache/bcel/verifier/exc/LinkingConstraintException.java (1 line):
- line 27: * the above mentioned book. TODO: At this time, this class is not used in JustIce.
src/main/java/org/apache/bcel/verifier/VerifyDialog.java (1 line):
- line 533: // FIXME: report the error
src/main/java/org/apache/bcel/classfile/LineNumberTable.java (1 line):
- line 98: // TODO could use the lower level constructor and thereby allow
src/main/java/org/apache/bcel/classfile/Annotations.java (1 line):
- line 89: // TODO Auto-generated method stub
src/main/java/org/apache/bcel/generic/Instruction.java (1 line):
- line 557: this.length = (short) length; // TODO check range?
src/main/java/org/apache/bcel/Constants.java (1 line):
- line 2420: // TODO: mutable public array!!
src/main/java/org/apache/bcel/classfile/LocalVariableTypeTable.java (1 line):
- line 56: // J5TODO: Needs some testing !
src/main/java/org/apache/bcel/classfile/ParameterAnnotationEntry.java (1 line):
- line 59: // TODO isRuntimeVisible
src/main/java/org/apache/bcel/generic/InstructionList.java (1 line):
- line 1070: public void setPositions() { // TODO could be package-protected? (some test code would need to be repackaged)
src/main/java/org/apache/bcel/generic/LDC.java (1 line):
- line 69: if (super.getLength() == 2) { // TODO useless check?
src/main/java/org/apache/bcel/util/ClassQueue.java (1 line):
- line 32: protected LinkedList vec = new LinkedList<>(); // TODO not used externally
src/main/java/org/apache/bcel/generic/ArrayElementValueGen.java (1 line):
- line 31: // J5TODO: Should we make this an array or a list? A list would be easier to
src/main/java/org/apache/bcel/generic/InstructionComparator.java (1 line):
- line 37: // } else if (i1 == i2) { TODO consider adding this shortcut