;ELC   
;;; Compiled
;;; in Emacs version 29.4
;;; with all optimizations.



(byte-code "\300\301!\210\302\303\304\305\306\307\310\311&\207" [require icons custom-declare-group warnings nil "Log and display warnings." :version "22.1" :group lisp] 8)#@633 List of severity level definitions for `display-warning'.
Each element looks like (LEVEL STRING FUNCTION) and
defines LEVEL as a severity level.  STRING specifies the
description of this level.  STRING should use `%s' to
specify where to put the warning type information,
or it can omit the `%s' so as not to include that information.

The optional FUNCTION, if non-nil, is a function to call
with no arguments, to get the user's attention.

The standard levels are :emergency, :error, :warning and :debug.
See `display-warning' for documentation of their meanings.
Level :debug is ignored by default (see `warning-minimum-level').
(defvar warning-levels '((:emergency "Emergency%s: " ding) (:error "Error%s: ") (:warning "Warning%s: ") (:debug "Debug%s: ")) (#$ . 258))
(put 'warning-levels 'risky-local-variable t)#@218 Alist of aliases for severity levels for `display-warning'.
Each element looks like (ALIAS . LEVEL) and defines ALIAS as
equivalent to LEVEL.  LEVEL must be defined in `warning-levels';
it may not itself be an alias.
(defvar warning-level-aliases '((emergency . :emergency) (error . :error) (warning . :warning) (notice . :warning) (info . :warning) (critical . :emergency) (alarm . :emergency)) (#$ . 1081))
(byte-code "\300\301\302\303#\210\304\305\306\307#\210\310\211\203. \211@\305N\203' \306N\204' \311\306\305N#\210A\266\202\202 \210\300\305\306\303#\210\312\306\313\314\315DD\316\317\320\321\322&\210\304\323\324\307#\210\310\211\203l \211@\323N\203e \324N\204e \311\324\323N#\210A\266\202\202K \210\300\323\324\303#\210\312\324\313\314\325DD\326\317\327\321\322&\210\312\330\313\314\331DD\332\317\333\321\322&\210\312\334\313\314\335DD\336\317\337\321\322&\207" [make-obsolete-variable warning-level-aliases warning-levels "28.1" defvaralias display-warning-minimum-level warning-minimum-level nil (saved-value saved-variable-comment) put custom-declare-variable funcall function #[0 "\300\207" [:warning] 1 #1=""] "Minimum severity level for displaying the warning buffer.\nIf a warning's severity level is lower than this,\nthe warning is logged in the warnings buffer, but the buffer\nis not immediately displayed.  See also `warning-minimum-log-level'." :type (choice (const :emergency) (const :error) (const :warning) (const :debug)) :version "22.1" log-warning-minimum-level warning-minimum-log-level #[0 "\300\207" [:warning] 1 #1#] "Minimum severity level for logging a warning.\nIf a warning severity level is lower than this,\nthe warning is completely ignored.\nValue must be lower or equal than `warning-minimum-level',\nbecause warnings not logged aren't displayed either." (choice (const :emergency) (const :error) (const :warning) (const :debug)) warning-suppress-log-types #[0 "\300\207" [nil] 1 #1#] "List of warning types that should not be logged.\nIf any element of this list matches the TYPE argument to `display-warning',\nthe warning is completely ignored.\nThe element must match the first elements of TYPE.\nThus, (foo bar) as an element matches (foo bar)\nor (foo bar ANYTHING...) as TYPE.\nIf TYPE is a symbol FOO, that is equivalent to the list (FOO),\nso only the element (FOO) will match it." (repeat (repeat symbol)) warning-suppress-types #[0 "\300\207" [nil] 1 #1#] "List of warning types not to display immediately.\nIf any element of this list matches the TYPE argument to `display-warning',\nthe warning is logged nonetheless, but the warnings buffer is\nnot immediately displayed.\nThe element must match an initial segment of the list TYPE.\nThus, (foo bar) as an element matches (foo bar)\nor (foo bar ANYTHING...) as TYPE.\nIf TYPE is a symbol FOO, that is equivalent to the list (FOO),\nso only the element (FOO) will match it.\nSee also `warning-suppress-log-types'." (repeat (repeat symbol))] 8)#@358 Function to generate warning prefixes.
This function, if non-nil, is called with two arguments,
the severity level and its entry in `warning-levels',
and should return the entry that should actually be used.
The warnings buffer is current when this function is called
and the function can insert text in it.  This text becomes
the beginning of the warning.
(defvar warning-prefix-function nil (#$ . 4050))#@408 Non-nil means treat multiple `display-warning' calls as a series.
A marker indicates a position in the warnings buffer
which is the start of the current series; it means that
additional warnings in the same buffer should not move point.
If t, the next warning begins a series (and stores a marker here).
A symbol with a function definition is like t, except
also call that function before the next warning.
(defvar warning-series nil (#$ . 4462))
(put 'warning-series 'risky-local-variable t)#@74 Non-nil means fill each warning text using this string as `fill-prefix'.
(defvar warning-fill-prefix nil (#$ . 4960))#@55 Value to use for `fill-column' when filling warnings.
(defvar warning-fill-column 78 (#$ . 5083))#@189 Format for displaying the warning type in the warning message.
The result of formatting the type this way gets included in the
message under the control of the string in `warning-levels'.
(defvar warning-type-format (purecopy " (%s)") (#$ . 5187))#@75 Return a numeric measure of the warning severity level LEVEL.

(fn LEVEL)
(defalias 'warning-numeric-level #[257 "\211\236\211>\211G\207" [warning-levels] 4 (#$ . 5440)])#@144 Non-nil if a warning with type TYPE should be suppressed.
SUPPRESS-LIST is the list of kinds of warnings to suppress.

(fn TYPE SUPPRESS-LIST)
(defalias 'warning-suppress-p #[514 "\300\211\203Q \211@9\203$ \211:\203J \211@=\203J \211A\204J \301\262\202J \301\203A @@\232\2046 \300\262A\262A\262\202' \211\203H \301\262\266A\266\202\202 \210\207" [nil t] 10 (#$ . 5619)])
(byte-code "\302\303\304\305\306\307=\203 	\204 \310\202 \311D\312BB\313\314%\207" [system-type window-system icons--register warnings-suppress button (emoji "⛔") symbol windows-nt " » " " ■ " ((text " stop ")) "Suppress warnings." (:version "29.1" :help-echo "Click to suppress this warning type")] 7)#@13 

(fn TYPE)
(defalias 'warnings-suppress #[257 "\302\303\304\"\305\303\306\"D\307B\"@\211\310\267\202; \311\300:\203\" B\202& CB\"\207\311\301:\2035 	B\2029 C	B\"\207\312\313!\207" [warning-suppress-log-types warning-suppress-types read-multiple-choice format "Suppress `%s' warnings? " 121 "yes, ignore `%s' warnings completely" ((110 "no, just disable showing them") (113 "quit and do nothing")) #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (121 21 110 40)) customize-save-variable message "Exiting"] 7 (#$ . 6325)])#@1441 Display a warning message, MESSAGE.
TYPE is the warning type: either a custom group name (a symbol),
or a list of symbols whose first element is a custom group name.
(The rest of the symbols represent subcategories, for warning purposes
only, and you can use whatever symbols you like.)

LEVEL should be either :debug, :warning, :error, or :emergency
(but see `warning-minimum-level' and `warning-minimum-log-level').
Default is :warning.

:emergency -- a problem that will seriously impair Emacs operation soon
	      if you do not attend to it promptly.
:error     -- data or circumstances that are inherently wrong.
:warning   -- data or circumstances that are not inherently wrong,
	      but raise suspicion of a possible problem.
:debug     -- info for debugging only.

BUFFER-NAME, if specified, is the name of the buffer for logging
the warning.  By default, it is `*Warnings*'.  If this function
has to create the buffer, it disables undo in the buffer.

See the `warnings' custom group for user customization features.

See also `warning-series', `warning-prefix-function',
`warning-fill-prefix', and `warning-fill-column' for additional
programming features.

This will also display buttons allowing the user to permanently
disable automatic display of the warning or disable the warning
entirely by setting `warning-suppress-types' or
`warning-suppress-log-types' on their behalf.

(fn TYPE MESSAGE &optional LEVEL BUFFER-NAME)
(defalias 'display-warning #[1026 "\204 	\204 \306 \204 \307$\207\204 \310\262\211\204\" \311\262\n\236A\211\2054 \312\313#\210\211\211\262\266\314!\314!W\206\231\315\f\"\206\231:\203Q @\202R \316!\211\206\\ \317!\236\320\321!\203i \321\202j \322\323\211rq\210\204\203 \320\324!\203} \324 \210\325\211*+db\210,\203\240 ,9\203\240 \326 ,\325=\204\236 , \210,\325-n\204\252  \210`\262	\204\304 \n\327=\204\304 \330\331\332!\332#\333\261\210.\203\321 .	\"\262\334A@\334/\n\"\"\n\261\210 \2100\203\335\336\"\204	\2040123\337`\"*\210`)\262\340,!\203\341,!=\203,b\210)\3428\203'\3428 \210	\203Brq\210\212\211b\210n\203:\343u\210\344\345`{\"*\207\306 \203c\204c\344\345rq\210\212b\210n\203]\343u\210`{*\"\207\314	!\3144!W\206\227\3155\"\206\227\346!\340,!\203\222\341,!=\203\222\347,\"\210\350\351!\262\266\207\207" [after-init-time noninteractive warning-level-aliases warning-minimum-log-level warning-suppress-log-types warning-levels daemonp delay-warning :warning "*Warnings*" warn "Warning level `%s' is obsolete; use `%s' instead" warning-numeric-level warning-suppress-p get-buffer get-buffer-create fboundp newline #[0 "\300c\207" ["\n"] 1] nil special-mode t point-marker bytecomp buttonize icon-string warnings-suppress " " format string-search "\n" fill-region markerp marker-buffer 2 -1 message "%s" display-buffer set-window-start sit-for 0 buffer-read-only buffer-undo-list warning-series inhibit-read-only warning-prefix-function warning-type-format warning-fill-prefix warning-fill-column fill-column fill-prefix warning-minimum-level warning-suppress-types] 17 (#$ . 6901)])#@816 Display a warning message made from (format-message MESSAGE ARGS...).
\<special-mode-map>
Aside from generating the message with `format-message',
this is equivalent to `display-warning'.

TYPE is the warning type: either a custom group name (a symbol),
or a list of symbols whose first element is a custom group name.
(The rest of the symbols represent subcategories and
can be whatever you like.)

LEVEL should be either :debug, :warning, :error, or :emergency
(but see `warning-minimum-level' and `warning-minimum-log-level').

:emergency -- a problem that will seriously impair Emacs operation soon
	      if you do not attend to it promptly.
:error     -- invalid data or circumstances.
:warning   -- suspicious data or circumstances.
:debug     -- info for debugging only.

(fn TYPE LEVEL MESSAGE &rest ARGS)
(defalias 'lwarn #[899 "\300\301\302##\207" [display-warning apply format-message] 10 (#$ . 10044)])#@249 Display a warning message made from (format-message MESSAGE ARGS...).
Aside from generating the message with `format-message',
this is equivalent to `display-warning', using
`emacs' as the type and `:warning' as the level.

(fn MESSAGE &rest ARGS)
(defalias 'warn #[385 "\300\301\302\303#\"\207" [display-warning emacs apply format-message] 8 (#$ . 10970)])
(provide 'warnings)
