269241c15fa42d4f1d5bb896c3d8a328e9420506
[sbcl.git] / src / code / cross-condition.lisp
1 ;;;; cross-compiler-only versions of conditions
2
3 ;;;; This software is part of the SBCL system. See the README file for
4 ;;;; more information.
5 ;;;;
6 ;;;; This software is derived from the CMU CL system, which was
7 ;;;; written at Carnegie Mellon University and released into the
8 ;;;; public domain. The software is in the public domain and is
9 ;;;; provided with absolutely no warranty. See the COPYING and CREDITS
10 ;;;; files for more information.
11
12 (in-package "SB!KERNEL")
13
14 (define-condition simple-style-warning (simple-condition style-warning) ())
15 (define-condition format-too-few-args-warning (simple-warning) ())
16 ;;; in the cross-compiler, this is a full warning.  In the target
17 ;;; compiler, it will only be a style-warning.
18 (define-condition format-too-many-args-warning (simple-warning) ())
19
20 (define-condition encapsulated-condition () ())
21
22 (define-condition bug (simple-error)
23   ()
24   (:report
25    (lambda (condition stream)
26      (format stream
27              "~@<  ~? ~:@_~?~:>"
28              (simple-condition-format-control condition)
29              (simple-condition-format-arguments condition)
30              "~@<If you see this and are an SBCL ~
31 developer, then it is probable that you have made a change to the ~
32 system that has broken the ability for SBCL to compile, usually by ~
33 removing an assumed invariant of the system, but sometimes by making ~
34 an averrance that is violated (check your code!). If you are a user, ~
35 please submit a bug report to the developers' mailing list, details of ~
36 which can be found at <http://sbcl.sourceforge.net/>.~:@>"
37              ()))))
38
39 ;;; These are should never be instantiated before the real definitions
40 ;;; come in.
41 (deftype package-lock-violation () nil)
42 (deftype package-locked-error () nil)
43 (deftype symbol-package-locked-error () nil)