Changeset 13221
- Timestamp:
- 02/14/11 23:03:12 (13 years ago)
- Location:
- trunk/abcl
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/abcl/pom.xml
r13213 r13221 14 14 <groupId>org.armedbear.lisp</groupId> 15 15 <artifactId>abcl</artifactId> 16 <version>0.24.0</version> 16 17 <packaging>jar</packaging> 17 18 <name>ABCL - Armed Bear Common Lisp</name> 18 <version>0.24.0</version>19 19 <description>Common Lisp implementation running on the JVM</description> 20 20 <url>http://common-lisp/project/armedbear</url> -
trunk/abcl/src/org/armedbear/lisp/Java.java
r13213 r13221 92 92 93 93 { 94 // FIXME Verify that CONDITION-SYMBOL is a symbol that names a condition.94 LispClass lispClass = (LispClass) LispClass.findClass(symbol, true); 95 95 // FIXME Signal a continuable error if the exception is already registered. 96 if ( (symbol instanceof Symbol) && isJavaException(LispClass.findClass((Symbol) symbol))) {96 if (isJavaException(lispClass)) { 97 97 registeredExceptions.put(classForName(className.getStringValue()), 98 98 (Symbol)symbol); … … 123 123 }; 124 124 125 static Symbol getCondition(Class cl) 126 { 127 Class o = classForName("java.lang.Object"); 128 for (Class c = cl ; c != o ; c = c.getSuperclass()) { 125 static Symbol getCondition(Class cl) { 126 Class o = classForName("java.lang.Object"); 127 for (Class c = cl ; c != o ; c = c.getSuperclass()) { 129 128 Object object = registeredExceptions.get(c); 130 if (object != null && isJavaException(LispClass.findClass((Symbol) object))) { 131 return (Symbol) object; 129 if (object instanceof Symbol) { 130 LispClass lispClass = (LispClass) LispClass.findClass((Symbol) object, true); 131 if(isJavaException(lispClass)) { 132 return (Symbol) object; 133 } 132 134 } 133 135 } -
trunk/abcl/src/org/armedbear/lisp/LispClass.java
r12956 r13221 288 288 public boolean subclassp(LispObject obj) 289 289 { 290 return false;290 return subclassp(this, obj); 291 291 } 292 292 … … 306 306 cpl = ((Cons)cpl).cdr; 307 307 } 308 309 if (cls instanceof LispClass)310 // additional checks (currently because of JavaClass)311 return ((LispClass)cls).subclassp(obj);312 313 308 return false; 314 309 }
Note: See TracChangeset
for help on using the changeset viewer.