From: <fra...@us...> - 2009-08-28 03:26:45
|
Revision: 1863 http://javapathfinder.svn.sourceforge.net/javapathfinder/?rev=1863&view=rev Author: frankrimlinger Date: 2009-08-28 03:26:37 +0000 (Fri, 28 Aug 2009) Log Message: ----------- Another tweak to ATHROWCREATOR. The issue is whether or not the originating instruction of the throw is an invocation or not. If it is an invocation, then a frame has already been set up for the called method, and we need to pop that frame *before* setting up the exception. But if the originating instruction is NOT an invocation, then ATHROWCREATE just puts the exception on the current frame. NB: this has nothing to do with an exception thrown but not caught within the called method. These are handled by a different mechanism. This issue has been bouncing around all summer. I finally get it. Modified Paths: -------------- branches/mango/Mango/Mango/src/mango/worker/Worker.java branches/mango/Mango/javapathfinder-mango-bridge/mango/scanner/bytecode/ATHROWCREATOR.java branches/mango/Mango/mangoUserHome/frank/rules/rulebase.zip branches/mango/Mango/mangoUserHome/frank/sessions/Casting/cast(DFILI;)LI;/objI is undefined.zip branches/mango/Mango/mangoUserHome/frank/sessions/java/lang/Class_MangoFormal/forName(Ljava.lang.String_MangoFormal;)Ljava.lang.Class_MangoFormal;/Final case. className is undefined.zip branches/mango/Mango/mangoUserHome/frank/sessions/java/lang/Class_MangoFormal/forName(Ljava.lang.String_MangoFormal;)Ljava.lang.Class_MangoFormal;/className is defined.zip branches/mango/Mango/mangoUserHome/frank/sessions/systemTests/ClassTests/getComponentType(Ljava.lang.Class_MangoFormal;)Ljava.lang.Class_MangoFormal;/Final case. clazz is an array.zip branches/mango/Mango/mangoUserHome/frank/sessions/systemTests/ClassTests/getComponentType(Ljava.lang.Class_MangoFormal;)Ljava.lang.Class_MangoFormal;/clazz is not an array.zip branches/mango/Mango/mangoUserHome/frank/sessions/systemTests/ClassTests/getComponentType(Ljava.lang.Class_MangoFormal;)Ljava.lang.Class_MangoFormal;/clazz is undefined.zip branches/mango/Mango/mangoUserHome/frank/sessions/systemTests/ClassTests/getName()Ljava.lang.String_MangoFormal;/Final case.zip branches/mango/Mango/mangoUserHome/frank/sessions/systemTests/ClassTests/intComponentTest2()Ljava.lang.String_MangoFormal;/Final case.zip branches/mango/Mango/mangoUserHome/frank/sessions/systemTests/ClassTests/isPrimitive(Ljava.lang.Class_MangoFormal;)Z/clazz is defined.zip Added Paths: ----------- branches/mango/Mango/mangoUserHome/frank/sessions/Casting/<init>()V/Final case.zip branches/mango/Mango/mangoUserHome/frank/sessions/Casting/cast(DFILI;)LI;/Final case. objI may be cast to I.zip branches/mango/Mango/mangoUserHome/frank/sessions/Casting/cast(DFILI;)LI;/objI may not be cast to I.zip branches/mango/Mango/mangoUserHome/frank/sessions/I/<init>()V/Final case.zip branches/mango/Mango/mangoUserHome/frank/sessions/systemTests/ClassTests/isInterface(Ljava.lang.Class_MangoFormal;)Z/Final case. clazz is undefined.zip branches/mango/Mango/mangoUserHome/frank/sessions/systemTests/ClassTests/isInterface(Ljava.lang.Class_MangoFormal;)Z/clazz is defined.zip branches/mango/Mango/mangoUserHome/frank/sessions/systemTests/ClassTests/isInterfaceIsFalse()Z/Final case.zip branches/mango/Mango/mangoUserHome/frank/sessions/systemTests/ClassTests/isInterfaceIsTrue()Z/Final case.zip branches/mango/Mango/mangoUserHome/frank/sessions/systemTests/ClassTests/isPrimitive(Ljava.lang.Class_MangoFormal;)Z/Final case. clazz is undefined.zip branches/mango/Mango/mangoUserHome/frank/sessions/systemTests/ClassTests/isPrimitiveFalse()Z/Final case.zip branches/mango/Mango/mangoUserHome/frank/sessions/systemTests/ClassTests/isPrimitiveTrue()Z/Final case.zip Removed Paths: ------------- branches/mango/Mango/mangoUserHome/frank/sessions/Casting/<init>()V/case.zip branches/mango/Mango/mangoUserHome/frank/sessions/Casting/cast(DFILI;)LI;/Class name of objI may be cast to I.zip branches/mango/Mango/mangoUserHome/frank/sessions/Casting/cast(DFILI;)LI;/Class name of objI may not be cast to I.zip branches/mango/Mango/mangoUserHome/frank/sessions/I/<init>()V/case.zip branches/mango/Mango/mangoUserHome/frank/sessions/I/compareTo(LI;)I/case.zip branches/mango/Mango/mangoUserHome/frank/sessions/I/compareTo(Ljava.lang.Object_MangoFormal;)I/Class name of compareTo_LocalVar_at_offset_1_lineNumber_1 may be cast to I.zip branches/mango/Mango/mangoUserHome/frank/sessions/I/compareTo(Ljava.lang.Object_MangoFormal;)I/Class name of compareTo_LocalVar_at_offset_1_lineNumber_1 may not be cast to I.zip branches/mango/Mango/mangoUserHome/frank/sessions/I/compareTo(Ljava.lang.Object_MangoFormal;)I/compareTo_LocalVar_at_offset_1_lineNumber_1 is undefined.zip branches/mango/Mango/mangoUserHome/frank/sessions/I/whatHappens()Ljava.lang.Class_MangoFormal;/case.zip branches/mango/Mango/mangoUserHome/frank/sessions/I/whatHappens1()Ljava.lang.Class_MangoFormal;/case.zip branches/mango/Mango/mangoUserHome/frank/sessions/I/whatHappens2()Ljava.lang.Class_MangoFormal;/case.zip branches/mango/Mango/mangoUserHome/frank/sessions/I/whatHappens3()Ljava.lang.Class_MangoFormal;/case.zip branches/mango/Mango/mangoUserHome/frank/sessions/systemTests/ClassTests/isPrimitive(Ljava.lang.Class_MangoFormal;)Z/clazz is undefined.zip This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |