cross-compiler OAOOM ugliness
authorNikodemus Siivola <nikodemus@random-state.net>
Tue, 12 Jun 2012 20:49:09 +0000 (23:49 +0300)
committerNikodemus Siivola <nikodemus@random-state.net>
Fri, 1 Feb 2013 20:30:10 +0000 (22:30 +0200)
  Couple of conditions for easier debugging of
  the build.

src/code/cross-condition.lisp

index c487980..a5f8b2b 100644 (file)
@@ -60,6 +60,24 @@ please submit a bug report to the developers' mailing list, details of ~
 which can be found at <http://sbcl.sourceforge.net/>.~:@>"
              ()))))
 
+;;; OAOOM...
+(define-condition compiler-macro-keyword-problem ()
+  ((argument :initarg :argument :reader compiler-macro-keyword-argument))
+  (:report (lambda (condition stream)
+             (format stream "~@<Argument ~S in keyword position is not ~
+                             a self-evaluating symbol, preventing compiler-macro ~
+                             expansion.~@:>"
+                     (compiler-macro-keyword-argument condition)))))
+
+;;; OAOOM...
+(define-condition duplicate-definition (reference-condition warning)
+  ((name :initarg :name :reader duplicate-definition-name))
+  (:report (lambda (c s)
+             (format s "~@<Duplicate definition for ~S found in ~
+                        one file.~@:>"
+                     (duplicate-definition-name c))))
+  (:default-initargs :references (list '(:ansi-cl :section (3 2 2 3)))))
+
 ;;; These are should never be instantiated before the real definitions
 ;;; come in.
 (deftype package-lock-violation () nil)