Changeset 13046


Ignore:
Timestamp:
11/25/10 13:15:18 (13 years ago)
Author:
ehuelsmann
Message:

Fix ANSI regressions caused by the implementation
of the new class writer.

Found by: Mark Evenson
Patch by: me

Location:
trunk/abcl/src/org/armedbear/lisp
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/abcl/src/org/armedbear/lisp/compile-file.lisp

    r13013 r13046  
    675675
    676676(defconstant +fasl-classloader+
    677   (jvm::make-class-name "org.armedbear.lisp.FaslClassLoader"))
     677  (jvm::make-jvm-class-name "org.armedbear.lisp.FaslClassLoader"))
    678678
    679679(defun generate-loader-function ()
     
    694694       (let* ((class (%format nil "org/armedbear/lisp/~A_~A"
    695695                                                basename i))
    696                                 (class-name (jvm::make-class-name class)))
     696                                (class-name (jvm::make-jvm-class-name class)))
    697697                           `(,(1- i)
    698698                              (jvm::with-inline-code ()
  • trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp

    r13043 r13046  
    796796(defun make-constructor (class)
    797797  (let* ((*compiler-debug* nil)
    798          (method (make-method :constructor :void nil
    799                               :flags '(:public)))
     798         (method (make-jvm-method :constructor :void nil
     799          :flags '(:public)))
    800800         ;; We don't normally need to see debugging output for constructors.
    801801         (super (class-file-superclass class))
     
    910910(defun make-static-initializer (class)
    911911  (let ((*compiler-debug* nil)
    912         (method (make-method :static-initializer
    913                             :void nil :flags '(:public :static))))
     912        (method (make-jvm-method :static-initializer
     913        :void nil :flags '(:public :static))))
    914914    ;; We don't normally need to see debugging output for <clinit>.
    915915    (with-code-to-method (class method)
     
    67626762
    67636763         (arg-types (analyze-args compiland))
    6764          (method (make-method "execute" +lisp-object+ arg-types
    6765                                :flags '(:final :public)))
     6764         (method (make-jvm-method "execute" +lisp-object+ arg-types
     6765          :flags '(:final :public)))
    67666766         (*visible-variables* *visible-variables*)
    67676767
  • trunk/abcl/src/org/armedbear/lisp/jvm-class-file.lisp

    r13025 r13046  
    8181|#
    8282
    83 (defstruct (class-name (:conc-name class-)
    84                        (:constructor %make-class-name))
     83(defstruct (jvm-class-name (:conc-name class-)
     84         (:constructor %make-jvm-class-name))
    8585  "Used for class identification.
    8686
     
    9797  )
    9898
    99 (defun make-class-name (name)
     99(defun make-jvm-class-name (name)
    100100  "Creates a `class-name' structure for the class or interface `name'.
    101101
     
    103103to 'internal' (JVM) representation by this function."
    104104  (setf name (substitute #\/ #\. name))
    105   (%make-class-name :name-internal name
    106                     :ref (concatenate 'string "L" name ";")))
     105  (%make-jvm-class-name :name-internal name
     106      :ref (concatenate 'string "L" name ";")))
    107107
    108108(defun class-array (class-name)
     
    121121    (let ((name-and-ref (concatenate 'string "[" (class-ref class-name))))
    122122      (setf (class-array-class class-name)
    123             (%make-class-name :name-internal name-and-ref
    124                               :ref name-and-ref))))
     123            (%make-jvm-class-name :name-internal name-and-ref
     124          :ref name-and-ref))))
    125125  (class-array-class class-name))
    126126
     
    128128  "Convenience macro to define constants for `class-name' structures,
    129129initialized from the `java-dotted-name'."
    130   `(defconstant ,symbol (make-class-name ,java-dotted-name)
     130  `(defconstant ,symbol (make-jvm-class-name ,java-dotted-name)
    131131     ,documentation))
    132132
     
    836836
    837837
    838 (defstruct (method (:constructor %make-method)
    839                    (:conc-name method-))
     838(defstruct (jvm-method (:constructor %make-jvm-method)
     839           (:conc-name method-))
    840840  "Holds information on the properties of methods in the class(-file)."
    841841  access-flags
     
    859859    (t name)))
    860860
    861 (defun make-method (name return args &key (flags '(:public)))
     861(defun make-jvm-method (name return args &key (flags '(:public)))
    862862  "Creates a method for addition to a class file."
    863   (%make-method :descriptor (cons return args)
    864                 :access-flags flags
    865                 :name (map-method-name name)))
     863  (%make-jvm-method :descriptor (cons return args)
     864        :access-flags flags
     865        :name (map-method-name name)))
    866866
    867867(defun method-add-attribute (method attribute)
  • trunk/abcl/src/org/armedbear/lisp/jvm.lisp

    r13025 r13046  
    139139                (char= (char name i) #\Space))
    140140        (setf (char name i) #\_)))
    141     (make-class-name
     141    (make-jvm-class-name
    142142     (concatenate 'string "org.armedbear.lisp." name))))
    143143
     
    145145  "Creates a random class name for use with a `class-file' structure's
    146146`class' slot."
    147   (make-class-name
     147  (make-jvm-class-name
    148148   (concatenate 'string "abcl_"
    149149                (substitute #\_ #\-
  • trunk/abcl/src/org/armedbear/lisp/known-symbols.lisp

    r12918 r13046  
    3939  (defun initialize-known-symbols (source ht)
    4040    (let* ((source-class (java:jclass source))
    41            (class-designator (jvm::make-class-name source))
     41           (class-designator (jvm::make-jvm-class-name source))
    4242           (symbol-class (java:jclass "org.armedbear.lisp.Symbol"))
    4343           (fields (java:jclass-fields source-class :declared t :public t)))
Note: See TracChangeset for help on using the changeset viewer.