Changeset 15596
- Timestamp:
- 11/26/22 08:35:27 (10 months ago)
- Location:
- trunk/abcl/src/org/armedbear/lisp
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/abcl/src/org/armedbear/lisp/autoloads-gen.lisp
r14490 r15596 146 146 ;; EXPORTS 147 147 (IN-PACKAGE :SYSTEM) 148 (EXPORT (QUOTE (CONCATENATE-FASLS AVER *COMPILER-DIAGNOSTIC* COMPILE-FILE-IF-NEEDED GROVEL-JAVA-DEFINITIONS-IN-FILE COMPILER-UNSUPPORTED INTERNAL-COMPILER-ERROR COMPILER-ERROR COMPILER- WARN COMPILER-STYLE-WARN *COMPILER-ERROR-CONTEXT* COMPILER-MACROEXPAND DEFKNOWN FUNCTION-RESULT-TYPE COMPILER-SUBTYPEP MAKE-COMPILER-TYPE JAVA-LONG-TYPE-P INTEGER-CONSTANT-VALUE FIXNUM-CONSTANT-VALUE FIXNUM-TYPE-P +INTEGER-TYPE+ +FIXNUM-TYPE+ MAKE-INTEGER-TYPE %MAKE-INTEGER-TYPE INTEGER-TYPE-P INTEGER-TYPE-HIGH INTEGER-TYPE-LOW +FALSE-TYPE+ +TRUE-TYPE+ COMPILER-DEFSTRUCT DESCRIBE-COMPILER-POLICY PARSE-BODY DUMP-UNINTERNED-SYMBOL-INDEX DUMP-FORM LOOKUP-KNOWN-SYMBOL STANDARD-INSTANCE-ACCESS SLOT-DEFINITION FORWARD-REFERENCED-CLASS LOGICAL-HOST-P *INLINE-DECLARATIONS* FTYPE-RESULT-TYPE PROCLAIMED-FTYPE PROCLAIMED-TYPE CHECK-DECLARATION-TYPE PROCESS-KILL PROCESS-EXIT-CODE PROCESS-WAIT PROCESS-ALIVE-P PROCESS-ERROR PROCESS-OUTPUT PROCESS-INPUT PROCESS-P PROCESS RUN-PROGRAM SIMPLE-SEARCH EXPAND-SOURCE-TRANSFORM DEFINE-SOURCE-TRANSFORM SOURCE-TRANSFORM UNTRACED-FUNCTION)))148 (EXPORT (QUOTE (CONCATENATE-FASLS AVER *COMPILER-DIAGNOSTIC* COMPILE-FILE-IF-NEEDED GROVEL-JAVA-DEFINITIONS-IN-FILE COMPILER-UNSUPPORTED INTERNAL-COMPILER-ERROR COMPILER-ERROR COMPILER-BYTECODE-LENGTH-ERROR COMPILER-WARN COMPILER-STYLE-WARN *COMPILER-ERROR-CONTEXT* COMPILER-MACROEXPAND DEFKNOWN FUNCTION-RESULT-TYPE COMPILER-SUBTYPEP MAKE-COMPILER-TYPE JAVA-LONG-TYPE-P INTEGER-CONSTANT-VALUE FIXNUM-CONSTANT-VALUE FIXNUM-TYPE-P +INTEGER-TYPE+ +FIXNUM-TYPE+ MAKE-INTEGER-TYPE %MAKE-INTEGER-TYPE INTEGER-TYPE-P INTEGER-TYPE-HIGH INTEGER-TYPE-LOW +FALSE-TYPE+ +TRUE-TYPE+ COMPILER-DEFSTRUCT DESCRIBE-COMPILER-POLICY PARSE-BODY DUMP-UNINTERNED-SYMBOL-INDEX DUMP-FORM LOOKUP-KNOWN-SYMBOL STANDARD-INSTANCE-ACCESS SLOT-DEFINITION FORWARD-REFERENCED-CLASS LOGICAL-HOST-P *INLINE-DECLARATIONS* FTYPE-RESULT-TYPE PROCLAIMED-FTYPE PROCLAIMED-TYPE CHECK-DECLARATION-TYPE PROCESS-KILL PROCESS-EXIT-CODE PROCESS-WAIT PROCESS-ALIVE-P PROCESS-ERROR PROCESS-OUTPUT PROCESS-INPUT PROCESS-P PROCESS RUN-PROGRAM SIMPLE-SEARCH EXPAND-SOURCE-TRANSFORM DEFINE-SOURCE-TRANSFORM SOURCE-TRANSFORM UNTRACED-FUNCTION))) 149 149 150 150 ;; FUNCTIONS -
trunk/abcl/src/org/armedbear/lisp/compile-file.lisp
r15583 r15596 102 102 (when args 103 103 args))) 104 104 105 105 106 106 (declaim (ftype (function (t) t) verify-load)) … … 881 881 (when (eq form in) 882 882 (return)) 883 (cond 884 ((>= (length (format nil "~a" form)) 65536) 885 ;; Following the solution propose here: 886 ;; see https://github.com/armedbear/abcl/issues/246#issuecomment-698854437 887 ;; just include the offending interpreted form in the loader 888 ;; using it instead of the compiled representation 889 (diag "Falling back to interpreted version of top-level form longer ~ 883 884 (handler-case (process-toplevel-form form out nil) 885 (compiler-bytecode-length-error () 886 ;; Following the solution propose here: 887 ;; see https://github.com/armedbear/abcl/issues/246#issuecomment-698854437 888 ;; just include the offending interpreted form in the loader 889 ;; using it instead of the compiled representation 890 (diag "Falling back to interpreted version of top-level form longer ~ 890 891 than 65535 bytes") 891 (write (ext:macroexpand-all form *compile-file-environment*) 892 :stream out)) 893 (t 894 (process-toplevel-form form out nil)))))) 892 (write (ext:macroexpand-all form *compile-file-environment*) 893 :stream out))) 894 ))) 895 895 (finalize-fasl-output) 896 896 (dolist (name *fbound-names*) -
trunk/abcl/src/org/armedbear/lisp/compiler-error.lisp
r15004 r15596 36 36 compiler-warn 37 37 compiler-error 38 compiler-bytecode-length-error 38 39 internal-compiler-error 39 40 compiler-unsupported)) … … 42 43 43 44 (define-condition compiler-error (error) ()) 45 (define-condition compiler-bytecode-length-error (error) ()) 44 46 (define-condition internal-compiler-error (compiler-error) ()) 45 47 (define-condition compiler-unsupported-feature-error (compiler-error) ()) … … 61 63 62 64 (defun internal-compiler-error (format-control &rest format-arguments) 63 (cerror "Eventually use interpreted form instead" 65 (cerror "Eventually use interpreted form instead" 64 66 'internal-compiler-error 65 67 :format-control format-control -
trunk/abcl/src/org/armedbear/lisp/jvm-class-file.lisp
r15569 r15596 268 268 (princ ret-string s)) 269 269 str) 270 ;; (format nil "(~{~A~})~A" 270 ;; (format nil "(~{~A~})~A" 271 271 ;; (internal-field-ref return-type)) 272 272 ) … … 804 804 (let ((interface-refs nil)) 805 805 (dolist (interface (class-file-interfaces class)) 806 (push 806 (push 807 807 (pool-add-class (class-file-constants class) 808 808 interface) … … 1276 1276 (c labels) 1277 1277 (code-bytes c) 1278 (assert (< 0 (length c) 65536)) 1278 (unless (< 0 (length c) 65536) 1279 (signal 'sys:compiler-bytecode-length-error)) 1279 1280 (setf (code-code code) c 1280 1281 (code-labels code) labels))) … … 1735 1736 - add code to the code attribute 1736 1737 - finalize the code attribute contents (blocking it for further addition) 1737 - 1738 - 1738 1739 1739 1740
Note: See TracChangeset
for help on using the changeset viewer.