%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/share/emacs/27.2/lisp/progmodes/
Upload File :
Create Path :
Current File : //usr/local/share/emacs/27.2/lisp/progmodes/cc-fonts.elc

;ELC
;;; Compiled
;;; in Emacs version 27.2
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\300\301!\210\300\302!\210\300\303!\210\304\305!\210\300\306!\207" [require cc-defs cc-vars cc-engine provide cc-fonts font-lock] 2)
(defconst c-preprocessor-face-name (byte-code "\301\211\302 >)\203\f\301\207\303\211\302 >)\203\303\207\304\207" [facename font-lock-preprocessor-face face-list font-lock-builtin-face font-lock-reference-face] 3))
(defconst c-label-face-name (byte-code "\302\211\303 >)\203\f\302\207\301\211\303 >)\203	\301=\203\301\207\304\207" [facename font-lock-constant-face font-lock-label-face face-list font-lock-reference-face] 3))
(defconst c-constant-face-name (byte-code "\301\211\303 >)\203	\301=\203\301\207\n\207" [facename font-lock-constant-face c-label-face-name face-list] 3))
(defconst c-reference-face-name (byte-code "\301\211\303 >)\203	\301=\203\301\207\n\207" [facename font-lock-reference-face c-label-face-name face-list] 3))
(defconst c-doc-face-name (byte-code "\301\211\302 >)\203\f\301\207\303\211\302 >)\203\303\207\304\207" [facename font-lock-doc-string-face face-list font-lock-doc-face font-lock-comment-face] 3))
(defconst c-doc-markup-face-name (byte-code "\302\211\303 >)\203\f\302\207	\207" [facename c-label-face-name font-lock-doc-markup-face face-list] 3))
(defconst c-negation-char-face-name (byte-code "\301\211\302 >)\205\301\207" [facename font-lock-negation-char-face face-list] 3))
(defalias 'c-make-inverse-face #[(oldface newface) "\302	\"\210\303\304!\203\304!?\205'\305	!\207\303\306!\205'\306\307\"?\205'\305	!\207" [oldface newface copy-face fboundp face-inverse-video-p invert-face face-property-instance reverse] 3])
(defvar c-annotation-face 'c-annotation-face)
(custom-declare-face 'c-annotation-face '((default :inherit font-lock-constant-face)) "Face for highlighting annotations in Java mode and similar modes." :version "24.1" :group 'c)
(defvar c-font-lock-context nil)
(make-variable-buffer-local 'c-font-lock-context)
(defalias 'c-put-font-lock-face '(macro . #[(from to face) "\303\304!\203\f\304	\nF\207\305	\306\n\257\207" [from to face fboundp font-lock-set-face put-text-property 'face] 5]))
(defalias 'c-remove-font-lock-face '(macro . #[(from to) "\302\303!\203\303	E\207\304	\305BBB\207" [from to fboundp font-lock-remove-face remove-text-properties ('(face nil))] 4]))
(defalias 'c-put-font-lock-string-face '(macro . #[(from to) "\302	\303BBB\207" [from to c-put-font-lock-face ('font-lock-string-face)] 4]))
(defalias 'c-fontify-types-and-refs '(macro . #[(varlist &rest body) "\302\303\304BB\305\306	B\307BBE\207" [varlist body let (c-record-type-identifiers t) c-record-ref-identifiers prog1 progn ((c-fontify-recorded-types-and-refs))] 5]))
(put 'c-fontify-types-and-refs 'lisp-indent-function 1)
(defalias 'c-skip-comments-and-strings #[(limit) "`\305\n\306\"\211:\203$\203 @	>\204 A\211\204\202'	>+\205e\307`\306\310\f$b\210`\fW\203d`\305\n\306\"\211:\203]\203Y@	>\204YA\211\204K\202`	>+\204+\311\207" [c-literal-faces faces pos pos-faces limit get-text-property face next-single-property-change nil t] 6])
(defalias 'c-make-syntactic-matcher #[(regexp) "\301\302\303\304\305\306\307\310\311\312\313BBE\314BBD\315BBBE!\207" [regexp byte-compile lambda (limit) let (res) while and setq res re-search-forward (limit t) ((progn (goto-char (match-beginning 0)) (or (c-skip-comments-and-strings limit) (progn (goto-char (match-end 0)) nil)))) (res)] 12])
(defalias 'c-make-font-lock-search-form #[(regexp highlights &optional check-point) "\303\203\304\305\306	\307BBE\202\306	\310BB\311\312\313\314\315\n\"BBBE\207" [check-point regexp highlights while and (< (point) limit) re-search-forward (limit t) (limit t) unless (progn (goto-char (match-beginning 0)) (c-skip-comments-and-strings limit)) (goto-char (match-end 0)) mapcar #[(highlight) "@\250\203.\3018\302=\204\303\304\"\210\3058\203\303\306\"\210\307\310\311@D\312@D\313\234FD\207\3058\2039\303\314\"\210\315A@\307@D\3018F\207" [highlight 2 t error "The override flag must currently be t in %s" 3 "The laxmatch flag may currently not be set in %s" save-match-data c-put-font-lock-face match-beginning match-end 1 "Match highlights currently not supported in %s" progn] 6]] 8])
(defalias 'c-make-font-lock-search-function #[(regexp &rest highlights) "\302\303\304\305\306\307	\"E\310BBB!\207" [regexp highlights byte-compile lambda (limit) let ((parse-sexp-lookup-properties (cc-eval-when-compile (boundp 'parse-sexp-lookup-properties)))) c-make-font-lock-search-form (nil)] 8])
(defalias 'c-make-font-lock-BO-decl-search-function #[(regexp &rest highlights) "\302\303\304\305\306\307\310	\"F\311BBB!\207" [regexp highlights byte-compile lambda (limit) let ((parse-sexp-lookup-properties (cc-eval-when-compile (boundp 'parse-sexp-lookup-properties))) (BOD-limit (c-determine-limit 1000))) (goto-char (let ((here (point))) (if (eq (car (c-beginning-of-decl-1 BOD-limit)) 'same) (point) here))) c-make-font-lock-search-form (nil)] 9])
(defalias 'c-make-font-lock-context-search-function #[(normal &rest state-stanzas) "\302\303\304\305\306\307\310\311\"\312	@	A\313#\314B\"BBE!\207" [state-stanzas normal byte-compile lambda (limit) let ((parse-sexp-lookup-properties (cc-eval-when-compile (boundp 'parse-sexp-lookup-properties)))) append mapcar #[(stanza) "@A@\3058AAA\306\307\310\311\fDE\312\313DC\314\n	\"EE,\207" [stanza highlights regexp lim state 2 if eq c-font-lock-context quote let limit c-make-font-lock-search-form] 7] c-make-font-lock-search-form t (nil)] 11])
(byte-code "\300\301\302\303#\210\300\304\302\303#\210\300\305\302\303#\210\300\306\302\307#\210\300\310\302\303#\210\300\311\302\312#\207" [put c-put-font-lock-face edebug-form-spec t c-remove-font-lock-face c-put-font-lock-string-face c-fontify-types-and-refs let* c-make-syntactic-matcher c-make-font-lock-search-function (form &rest &or ("quote" (&rest form)) ("`" (&rest form)) form)] 4)
(defalias 'c-fontify-recorded-types-and-refs #[nil "\304	:\203	@	A\305@A\306\307$\210\202\n\205/\n@\nA\305@A\306$\210\202)\207" [elem c-record-type-identifiers c-record-ref-identifiers c-reference-face-name nil put-text-property face font-lock-type-face] 5])
(byte-code "\300\301\302\303B\304B\"\207" [c-define-lang-constant c-cpp-matchers t #[nil "\306\307\310\311\"\205\305\312\313!\307\314\315\"\307\316\317\"\306\307\320\321\"\205(\307\322\323\"\205(\324\307\325\326\"\205M\327\330\307\325\331\"\"\313\f!\307\310\332\"\f\333R\334	
\335#*\336BBC\307\337\340\"\205\227\327\341\307\337\342\"\"\313\f!\343\307\310\344\"\f\307\345\346\"\347\260\334	
\n\335$\350B\351\352\353\334	
\n\335$DD\354\355\356\334	
\n\335$DDDD\357BB\360B#*CC\307\361\362\"\205\343\307\310\363\"\307\361\364\"\307\365\366\"\367\307\370\371\"\372\260\373\353\334\374	\307\375\376\"$D\377\201B\353\334\335	#D\356\334\335	#D\201CBBB\201D\356\334\374	\307\375\201E\"$DD\201FBBB\201B\353\334\335	#D\356\334\335	#D\201GBBBFC\"CC\307\201H\201I\"\205\202\307\201J\201K\"\205\202\327\201L\307\201H\201M\"\"\327\201L\307\201J\201N\"\"@A\201O\307\310\201P\"A\201QR\351\201R\201S\201T@\201UBB\201VBBE\201D\356	TDDDD\201W\201X@\201YBBB\"*CC\343\367\307\310\201Z\"\201[\307\201\\\201]\"\201^\260	T\201_B\"C\201`\201a\201b\307\310\201c\"\201dQ!	T\201eBBBBD&,\201f\201g!\205\322\201h\201i#\207" [noncontinued-line-end ncle-depth sws-depth nsws-depth re re-depth append c-get-lang-constant c-opt-cpp-prefix (cc-langs) "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)" regexp-opt-depth c-syntactic-ws-depth (cc-langs) c-nonempty-syntactic-ws-depth (cc-langs) c-block-comment-starter (cc-langs) c-line-comment-starter (cc-langs) (c-maybe-font-lock-wrong-style-comments) c-cpp-message-directives (cc-langs) c-make-keywords-re appendable (cc-langs) (cc-langs) "\\s +\\(.*\\)$" + 1 (font-lock-string-face t) c-cpp-include-directives (cc-langs) nil (cc-langs) c-make-font-lock-search-function (cc-langs) c-syntactic-ws (cc-langs) "\\(<[^>\n
]*>?\\)" (font-lock-string-face t) let beg match-beginning end 1- match-end ((if (eq (char-after end) 62) (progn (c-mark-<-as-paren beg) (c-mark->-as-paren end)) (c-unmark-<->-as-paren beg))) (nil) c-opt-cpp-macro-define (cc-langs) (cc-langs) (cc-langs) c-nonempty-syntactic-ws (cc-langs) "\\(" c-symbol-key (cc-langs) "\\)\\(\\((\\)\\|\\([^(]\\|$\\)\\)" if 3 c-symbol-key-depth (cc-langs) save-restriction cef-re ced-re c-put-font-lock-face ('font-lock-function-name-face) goto-char (cc-langs) ((narrow-to-region (point-min) limit) (while (and (progn (c-forward-syntactic-ws) (looking-at c-symbol-key)) (progn (c-put-font-lock-face (match-beginning 0) (match-end 0) 'font-lock-variable-name-face) (goto-char (match-end 0)) (c-forward-syntactic-ws) (eq (char-after) 44))) (forward-char))) ('font-lock-variable-name-face) c-cpp-expr-directives (cc-langs) c-cpp-expr-functions (cc-langs) t (cc-langs) (cc-langs) c-make-font-lock-context-search-function (cc-langs) "\\(\\\\\\(.\\|[\n
]\\)\\|[^\n
]\\)*" ((limit (match-end 0))) while re-search-forward (limit 'move) ((c-put-font-lock-face (match-beginning 1) (match-end 1) c-preprocessor-face-name)) in-cpp-expr (save-excursion (c-end-of-macro) (point)) ((1 c-preprocessor-face-name t)) (cc-langs) "[" c-symbol-chars (cc-langs) "]+\\)" (c-preprocessor-face-name t) eval list c-make-syntactic-matcher (cc-langs) "if\\(n\\)def\\>" (c-negation-char-face-name 'append) c-lang-major-mode-is pike-mode ((eval list "\\`#![^\n
]*" 0 c-preprocessor-face-name)) ((eval list "\240" 0 (progn (unless (c-face-name-p 'c-nonbreakable-space-face) (c-make-inverse-face 'font-lock-warning-face 'c-nonbreakable-space-face)) ''c-nonbreakable-space-face)))] 20] nil] 4)
(defalias 'c-font-lock-invalid-single-quotes #[(limit) "\306 \307\211\211\211\203Ab\210`\fW\203]`\310`\f\307\211\211\311&`	b\210\312w\210`W\203P\313`\311\"\314\232\203J\313`\315\"\204J\316``T\317
$\210\307u\210\202(\310\f\307\211\n\311&\210\202,\307\207" [end beg state limits limit font-lock-warning-face c-literal-limits nil parse-partial-sexp syntax-table "^'" get-text-property (1) c-digit-separator put-text-property face] 8])
(defalias 'c-maybe-font-lock-wrong-style-comments #[(limit) "\203\303\306`!\211@	A@\203Z	A@\307=\203&\310`\311\211\n\312&\202Z\f\204P	A@\313=\203P\310`\311\211\n\312&\314\n8\204Z\315`
GZ`\316$\210\202Z\310`\311\211\n\312&`W\203\302\310`\311\211\n\312&\317\n8\204\203\314\n8\203\220\320\n8\f?\205\321=\203\220\310`\311\211\n\312&\202Z\314\n8\203Z\315\322\n8`\316$\210\310`\311\211\n\312&\f\204Z\314\n8\204Z\315`
GZ`\316$\210\202Z*\311\207" [c-mark-wrong-style-of-comment lit s limit c-block-comment-flag c-block-comment-ender c-semi-pp-to-literal string parse-partial-sexp nil syntax-table c 4 put-text-property face 3 7 1 8 font-lock-warning-face] 8])
(byte-code "\300\301\302\303B\304B\"\207" [c-define-lang-constant c-basic-matchers-before t #[nil "\302\303\304\305\306!\205\n\307\310\311\312\"\2059\313\314\310\311\315\"\"\305\316!\203-\317\320\321\322Q\323BBBC\2028\317\320\324\322Q\325BBBC)\305\316!\203J\326\310\327\330\"P\331B\202R\332\310\327\333\"P\334BC\310\335\336\"\205\334\305\337!\203\232\340\310\335\341\"\310\342\343\"\344\345	\346\310\347\350\"\351\260R\352\353\354\355\356\357\360\361\362\363\364\365\310\347\366\"D\367BB\257\370BBB\371BBF\372B\"C\202\334\373\374\375\355\376\377\310\201@\201A\"\201B\310\342\201C\"\344\310\335\201D\"\310\342\201E\"\201F\310\201G\201H\"\201B\260\n\201IBB\201JBBE!CC\305\201K!\205\365\340\201L\201M\"\340\201N\201O\"D\201P&BB\207" [re c-upper ("\\s|" 0 font-lock-warning-face t nil) c-font-lock-invalid-single-quotes append c-lang-major-mode-is c++-mode (c-font-lock-raw-strings) c-get-lang-constant c-constant-kwds (cc-langs) c-make-keywords-re nil (cc-langs) pike-mode eval list "\\(\\=.?\\|[^>]\\|[^-]>\\)\\<\\(" "\\)\\>" (2 c-constant-face-name) "\\<\\(" (1 c-constant-face-name) "\\(\\=.?\\|[^>]\\|[^-]>\\)\\<" c-regular-keywords-regexp (cc-langs) (2 font-lock-keyword-face) "\\<" (cc-langs) (1 font-lock-keyword-face) c-opt-identifier-concat-key (cc-langs) java-mode c-make-font-lock-search-function (cc-langs) c-simple-ws (cc-langs) "*" "\\([" "][" c-symbol-chars (cc-langs) "]*\\|\\*\\)" let (id-end) (goto-char (1+ (match-beginning 0))) while and (eq (char-before) 46) progn (backward-char) (c-backward-syntactic-ws) (setq id-end (point)) < skip-chars-backward (cc-langs) (0) ((not (get-text-property (point) 'face))) ((c-put-font-lock-face (point) id-end c-reference-face-name) (c-backward-syntactic-ws)) (nil (goto-char (match-end 0))) byte-compile lambda (limit) re-search-forward "\\(\\<\\(" c-symbol-key (cc-langs) "\\)" (cc-langs) (cc-langs) (cc-langs) "*\\)\\(" c-opt-after-id-concat-key (cc-langs) (limit t) ((unless (progn (goto-char (match-beginning 0)) (c-skip-comments-and-strings limit)) (or (get-text-property (match-beginning 2) 'face) (c-put-font-lock-face (match-beginning 2) (match-end 2) c-reference-face-name)) (goto-char (match-end 1)))) objc-mode "\\[" ((c-fontify-types-and-refs nil (c-forward-syntactic-ws limit) (let ((start (point))) (when (eq (c-forward-type) 'known) (goto-char start) (let ((c-promote-possible-types t)) (c-forward-type)))) (if (> (point) limit) (goto-char limit)))) "\\<\\(@\\(?:i\\(?:mplementation\\|nterface\\)\\|protocol\\)\\)\\>" ((c-fontify-types-and-refs ((parse-sexp-lookup-properties (cc-eval-when-compile (boundp 'parse-sexp-lookup-properties)))) (c-forward-objc-directive) nil) (goto-char (match-beginning 0))) ((eval list "\\(!\\)[^=]" 1 c-negation-char-face-name))] 23] nil] 4)
(defalias 'c-font-lock-complex-decl-prepare #[(limit) "o\203\306\307\310\311\312$\313	!\210`	W\205|\212`\314 \210\315o\204/\316`S\317\"\320>\203/`S\2020\n	\321#\210*\322 \210\212\314 \210o?\205F\316`S\317\")\211\323>\203g\214e	\206Ud}\210\324 \210)\325	\326\327=\330`!?$\210)\212\f\205y\331 \205y\332\f!\205y\333)\312\207" [c-found-types limit pos prop c-cpp-expr-intro-re c-font-lock-context make-hash-table :test equal :weakness nil c-skip-comments-and-strings c-backward-sws remove-text-properties get-text-property c-type (c-decl-arg-start c-decl-end c-decl-id-start c-decl-type-start) (c-type nil) c-parse-state (c-decl-id-start c-decl-type-start) c-forward-sws c-font-lock-declarators t c-decl-type-start c-bs-at-toplevel-p c-beginning-of-macro looking-at in-cpp-expr] 7])
(defalias 'c-font-lock-<>-arglists #[(limit) "\306!\210`W\203\345\307\211\310\211\211\211\211\211`W\203\343\311\307#\203\343\312\224\312\225`
b\210\306!\204\310\211\313
\314\"\211\315\267\202h\202\335\316 !\203\335\317\312!!\320!\"\")\211\202\201\321 \210`Sf\322>\203\200\313`S\323\"\324=\204\200\307\307\203\335\nSb\210\306!\204\307\310#$\325	\326%\211&%N*!\203\323'\203\323\313
\314\"\204\323\327 \210\316'!\203\305\330
\f\314($\210\202\323\310f\331=\204\323\330
\f\314\332$\210\333 \210*\nb\210\202\nb\210\202.\310\207" [limit kwd-sym pos id-face id-end id-start c-skip-comments-and-strings t nil re-search-forward 1 get-text-property face #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (font-lock-type-face 77 font-lock-keyword-face 80)) looking-at match-string intern-soft c-backward-sws (40 44) c-type c-decl-arg-start c-forward-<>-arglist c-<>-type-kwds c-forward-sws put-text-property 40 font-lock-type-face c-fontify-recorded-types-and-refs c-restricted-<>-arglists c-parse-and-markup-<>-arglists parse-sexp-lookup-properties c-opt-<>-arglist-start c-opt-<>-sexp-key keyword c-keywords-obarray c-record-ref-identifiers c-record-type-identifiers lang-constant keyword-sym c-opt-identifier-concat-key c-reference-face-name] 9])
(defalias 'c-font-lock-declarators #[(limit list types not-top &optional template-class) "\306\307\310\n\f
\203\311\202\312\313%\210\307\314 \210*\207" [c-record-ref-identifiers c-record-type-identifiers limit list not-top types t nil c-do-declarators c-decl-type-start c-decl-id-start #[(id-start _id-end end-pos _not-top is-function init-char) "\203\306\nb\210\307 \210)\202-\203-\310@\311\"\204-\312@A\311\f\203*\313\202+\314$\210
\205I\315=\205Ib\210\316\317\320#\210\306\307\306!)\207" [types c-promote-possible-types id-start c-last-identifier-range is-function template-class t c-forward-type get-text-property face put-text-property font-lock-function-name-face font-lock-variable-name-face 61 c-forward-token-2 1 nil init-char end-pos limit] 5] c-fontify-recorded-types-and-refs] 6])
(defalias 'c-get-fontification-context #[(match-pos not-front-decl &optional toplev) "eV\205\306S\307\"\206`Sf\310>\204\"\n\205\311\312B\202\215\206'`Sf\313=\203b\212b\210\314u\210\315 \210\316!\203D\312\211B\202^\316\f!\204W\316
!\204W\3160!\203]\312\317B\202^\312)\206\215eX\203n\320\317B\202\215	\321\267\202\200\322\312B\202\215\323\312B\202\2151\324=\203\311\206\214`Sf\313=\203\311\212b\210\315 \210\3251\247\326`\314\"b0\202\254\210\312\202\261\205\261\327 )\203\311S2\3302\211T\307\331$\210)\322\312B\202\215\206\316`Sf\332=\203\364\333S\334 A\312#\203\364S2\3302\211T\307\335$\210)\323\312B\202\215\206\371`Sf\332=\203\n\n\205\311\312B\202\215	\336=\204\206`Sf\337=\203\"\340\312B\202\215	\203,\320\317B\202\2151\324=\203\220\2068`Sf\313=\203\220\212b\210\315\341!\342U\205\206\3163!\205\206`\34345\3065\344\"\2116:\203\2006\203{6@4>\204{6A\2116\204i6\202\20564>+)\203\220\323\312B\202\2157\203\2708\203\244\212b\210\345 )\204\270S2\3302\211T\307\331$\210)\322\312B\202\215\206\275`Sf\313=\203\344\212b\210\315 \342U\203\326\312f\313=\204\310\3169!)\203\344\312\211B\202\215\206\351`Sf\346=\2031\324=\203\212b\210\345 )\203S2\3302\211T\307\335$\210)\323\312B\202\215\212b\210\206`Sf\347>\205\200\214`\350Ze]\2036`\350Ze]d}\210\3511C\352\314\353#0\202E\210\312)\211:\205Q:b\210\317)\205\200\312f\313=\205\200\306`\307\"\211\354>\206\355 \210\356 \205\355 \210o\206\306`S\307\"\211\357>))\203\212\322\312B\202\215\320\317B)\207" [match-pos type toplev c-paren-stmt-key c-block-stmt-2-key c-block-stmt-1-2-key get-text-property c-type (40 44 91 60 123) top nil 40 -1 c-backward-token-2 looking-at t arglist #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (c-decl-arg-start 116 c-not-decl 122)) decl not-decl c++-mode (error) scan-sexps c-looking-at-c++-lambda-capture-list put-text-property c-decl-arg-start 123 c-inside-bracelist-p c-parse-state c-not-decl c-<>-arg-sep 60 <> 2 0 (font-lock-variable-name-face) face c-back-over-member-initializers 44 (40 44) 2000 (error) scan-lists 1 (c-decl-arg-start c-decl-type-start) c-backward-sws c-back-over-compound-identifier (c-decl-arg-start c-decl-type-start) c-typeof-key c-buffer-is-cc-mode -pos- c-identifier-start faces pos pos-faces not-front-decl c-recognize-paren-inits c-arithmetic-op-regexp dest] 6])
(defalias 'c-font-lock-single-decl #[(limit decl-or-cast match-pos context toplev) "\212AA@\205\256\214\306\307!\203\306\307!d}\210\3101\"\311`\312\313#0\202$\210\314)\211\205.	b\210\315)\205\256\314f\316=\205\256\317 \210\320\321!\322W\204u\n\323=\205\256`\324\314x\322W\203m\325\314x\322W\203m\326\f!\203m\322\225Y\203m\315\202qb\210\314)\205\256\326
!\205\256$b\210`Sf\327=\203\251\3301\224\311`\312\322#0\202\226\210\314\211\205\237	b\210	)\203\251\317 \210\202`Sf\331=)\203\321%:\205\300AAA@%\236\211&\203\316\332&%\"%)\315\207@b\210'\333>\2042$\206\342`Sf\316=\2053\212$Sb\210\317 \210\320\321!\322W\204+\n\323=\205.`\324\314x\322W\203#\325\314x\322W\203#\326\f!\203#\322\225Y\203#\315\202'b\210\314)\205.\326
!)\2023\315'\334=\205G\212$b\210\335 \210\326(!))\211*\203p\212\317 \210o\204o`S+\336+\211T\337A@\203k\340\202l\341$\210))\342,d^*A@-?)%\210*\343 \210\314\207" [decl-or-cast dest c-buffer-is-cc-mode pos c-symbol-key c-paren-stmt-key c-determine-limit 500 (error) scan-lists -1 1 nil t 40 c-backward-sws skip-syntax-backward "w_" 0 pike-mode "-!%&*+/<=>^|~[]()" "`" looking-at 41 (error) 59 c-delq-from-dotted-list (nil top) <> c-forward-sws put-text-property c-type c-decl-type-start c-decl-id-start c-font-lock-declarators c-fontify-recorded-types-and-refs match-pos c-record-type-identifiers elt context c-template-typename-key template-class decl-list -pos- limit toplev] 7])
(defalias 'c-font-lock-declarations #[(limit) "\306!\210`W\205Q\214\307\211\211\211\310\211\211\307\311\307\211\311\211\312\313!X\203Ce\212b\210\307w\210`)}\210\314\315!\316$\210.\307\207" [limit parse-sexp-lookup-properties c-parse-and-markup-<>-arglists c-record-ref-identifiers label-type c-record-type-identifiers c-skip-comments-and-strings nil 0 t line-beginning-position 2 c-find-decl-spots eval #[(match-pos inside-macro &optional toplev) "`\306`\307\"\310=\203\311	!\204-\n\203\311\n!\204-\312\211\f\203&
\202((W)#\211*@+*A,)\311-!\204O\313 \210\314 \210\311-!\204Ob\210.\315=\203g\311\316/\317Q!\203g\320\225b\210\321 \210+\322=\203\215\3230\324\3251d^\326\327$\203\213`S2\3302\211T\331\332$\210)\323\207\333+3#0\206\233`Sf\334=\203\3444V\203\344\212b\210\314 \210\323f\334=\203\343\212\314 \210\3115!?\205\326\313 \210`Sf\335>\205\326\306`S\331\"\336=?),\337\323!)\203\343`4)0\340=\203\363`3\341 \210\323\2070\203)\f\203`
V\203`\202`(V\203`(b\210\34210+)\206%\34308%\202*\327\205mb\210\344\327\323#\2116\205m6\345\267\202i\3307@@7@A\3078$\210\202i\3307@@7@A\307\310$\210\202i\346\3477\"\210\3237\327\207" [start-pos c-not-decl-init-keywords c-macro-with-semi-re match-pos inside-macro max-type-decl-end-before-token get-text-property face font-lock-keyword-face looking-at c-get-fontification-context c-backward-sws c-backward-token-2 c++-mode "\\(more\\)\\([^" "]\\|$\\)" 1 c-forward-sws not-decl nil c-syntactic-re-search-forward "," at-limit t put-text-property c-type c-not-decl c-forward-decl-or-cast-1 60 (40 44) c-decl-arg-start c-forward-<>-arglist cast c-fontify-recorded-types-and-refs c-font-lock-single-decl 4 c-forward-label #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (goto-target 322 qt-1kwd-colon 339 qt-2kwds-colon 355)) mapc #[(kwd) "\301@A\302\303$\207" [kwd put-text-property face font-lock-keyword-face] 5] max-type-decl-end toplev got-context context c-restricted-<>-arglists c-typedef-key c-buffer-is-cc-mode c-symbol-chars decl-or-cast limit -pos- last-cast-end max-<>-end c-opt-<>-sexp-key label-type c-record-ref-identifiers c-label-face-name] 8] c-restricted-<>-arglists max-<>-end max-type-decl-end-before-token max-type-decl-end decl-or-cast last-cast-end context start-pos c-nonsymbol-chars c-decl-start-re c-maybe-decl-faces] 13])
(defalias 'c-font-lock-enum-body #[(limit) "`W\203%\302	\303#\203%\212\304u\210\305 )\203\306 \210\307\303\310\303$\210\202\310\207" [limit c-enum-clause-introduction-re search-forward-regexp t -1 c-backward-over-enum-header c-forward-sws c-font-lock-declarators nil] 5])
(defalias 'c-font-lock-enum-tail #[(limit) "\304!\210`W\203C\305 \306	!\211\203B\nf\307=\203B\212\nb\210\310 )\203B\311\312\313\314#\210`S\315\211T\316\317$\210)\320 \210\321\314\313\314$\210*\313\207" [limit paren-state encl-pos -pos- c-skip-comments-and-strings c-parse-state c-most-enclosing-brace 123 c-backward-over-enum-header c-syntactic-skip-backward "^{," nil t put-text-property c-type c-decl-id-start c-forward-sws c-font-lock-declarators] 6])
(defalias 'c-font-lock-cut-off-declarators #[(limit) "\306!\210`W\205\340`\307\310!\311\211\211\211\211\211\211\211\211 !\"#$\212\312`\313Ze]!\204\335m\204@\314\315!\204@\311u\210\316\317#\320#\210`Sf\321=\203s\3221\\\323`\324\325#0\202^\210\311\211%\203k%b\210%\210)\316\317#\320#\210o\204`Sf\326>\203\335` \214e$\206\212d}\210\327 \210)`$W\203\335`\330 \"\331\"!\211!\203\257!f\332=\203\335\333 \334 \311#\211&@&A)\335 \311#\211:\203\335\fb\210\336
 %\210.\f\311\207" [limit c-recognize-knr-p c-restricted-<>-arglists top-level start-pos decl-or-cast c-skip-comments-and-strings c-determine-limit 1000 nil c-back-over-member-initializers 2000 looking-at "\\s(\\|\\s)" c-syntactic-skip-backward "^;{}" t 125 (error) scan-lists -1 0 (59 123 125) c-forward-sws c-parse-state c-most-enclosing-brace 123 c-at-toplevel-p c-get-fontification-context c-forward-decl-or-cast-1 c-font-lock-single-decl context token-end encl-pos paren-state decl-search-lim here dest got-context] 12])
(defalias 'c-font-lock-enclosing-decls #[(limit) "\306!\210`W\205u\307 \310\311!\312\211	\205t	@	A\f:\204\ff\313=\203\fb\210\314\315\n\"\210\316 \210\317
!\211\203A\320 \210\203\317!\203\fb\210\3211]\322`\323\"b0\202a\210\202\203\316 \210\324\325\326`!?$\210\202,\207" [limit paren-state decl-search-lim in-typedef ps-elt c-typedef-key c-skip-comments-and-strings c-parse-state c-determine-limit 1000 nil 123 c-syntactic-skip-backward "^;{}" c-forward-sws looking-at c-forward-over-token-and-ws (error) scan-sexps 1 c-font-lock-declarators t c-bs-at-toplevel-p c-opt-block-decls-with-vars-key] 7])
(defalias 'c-font-lock-raw-strings #[(limit) "\306`!\211A@\307=\205AA@\211\2059\212	b\210\212\310f\311=\203'\310u\210\202/`Sf\311=\2052\312\n!*\2059\313\314!\211\205?``
W\203\203k\315\316\317!\320Q
\305#\203f\321\f\314\224\322\323$\210\324\314\224`\325#\210\310\202@\315\326
\305#\203@\327\330\224\322\"\331>\204@m\203\213\327`S\322\"\332=\204\250\327`\322\"\333=\203\250\327\334\225\335\"\336\232\203@\327\314\224\335\"\337\232\203@\327`S\335\"\211$\203\375\321\330\224\330\225\322\332$\210$\340\232\203\f`\211%
W\203\343\327%\335\"\341\232\204\343\342%\335\310
$\211%\202\307%
W\205\363%b\210\315\343!\210`)\204\f
b\210\202\f\324\330\224\334\225\325#\210\313\334!\330\225)\202@,\310\207" [state string-start c-c++-raw-string-opener-1-re raw-id content-start limit c-semi-pp-to-literal string nil 82 looking-at match-string-no-properties 1 search-forward-regexp ")\\(" regexp-quote "\\)\"" put-text-property face font-lock-string-face remove-text-properties (face nil) "R\\(\"\\)\\([^ ()\\\n
	]\\{0,16\\}\\)(" get-text-property 0 (font-lock-comment-face font-lock-comment-delimiter-face font-lock-string-face) font-lock-warning-face font-lock-comment-face 2 syntax-table (1) (1) (15) (15) next-single-property-change "\\(\n\\|.\\)" paren-prop place] 6])
(defalias 'c-font-lock-c++-lambda-captures #[(limit) "\306\211\211\211\211\211\211#`$W\203X\307\310$\311#\203X\312u\210\313 \306u\210\203\314 \210\306f\315>\2056\306f\211#\203_\306u\210\314 \210\306f\316>\203\\#\306f\317=\203_\306u\210\314 \210\202_\320 \210\321\322!\204I`$W\203I\306f\323=\203\323#\306u\210\314 \210\202\202\324#\325 \203.`\306u\210\326 \210`\314 \210\306f\324=\211\203\245\306u\210\314 \210``$W\203\266\327\330$\311\211$\204\350\214$\203\301e$}\210\3311\316\332`\333\211#0\202\320\210\306)\211%\205\334%b\210\311)\203\356`Sf\334=\203\356\312u\210\202\362$b\210\n\203\212`	b\210\335!\210)\336\f\337\n\203
\340\202)
\203#
=\203\341\202)#\324=\203(&\202)\340$\210\2026\327\330$\342\311$\210\314 \210\306f\317=\203_\306u\210\314 \210\202_\306`$W\203\306u\210\202.\306\207" [sub-end sub-begin declaration id-end id-start capture-default nil search-forward "[" t -1 c-looking-at-c++-lambda-capture-list c-forward-sws (61 38) (44 93) 44 c-backward-token-2 looking-at "\\s)" 38 61 c-on-identifier c-end-of-current-token c-syntactic-re-search-forward "," (error) scan-lists 1 93 c-font-lock-c++-lambda-captures put-text-property face font-lock-variable-name-face font-lock-warning-face bound mode limit dest font-lock-constant-face] 8])
(byte-code "\300\301\302\303B\304B\"\210\300\305\302\306B\304B\"\207" [c-define-lang-constant c-simple-decl-matchers t #[nil "\302\303\304!\205\305\306\307\"\310\311!\312BDC\313\314\315\316\317\320#EC\305\321\322\"\205^\323\324\305\321\325\"\"\326\327\330!\305\331\332\"#\315\333\334\305\335\336\"\337\340\305\341\342\"\334Q\260	\343B\344\345\346\347	DD\350BB\346\347	DDE#*CC\305\351\352\"\205s\315\333\353\305\351\354\"!\355Q\356\"CC\305\357\360\"\205{\361%\207" [prefix-re type-match append c-lang-major-mode-is objc-mode c-get-lang-constant c-opt-method-key (cc-langs) byte-compile #[(limit) "\302\214e	}\210\303 \210*\304\207" [parse-sexp-lookup-properties limit t c-font-lock-objc-method nil] 2] ((goto-char (match-end 1))) eval list c-make-font-lock-search-function c-known-type-key (1 'font-lock-type-face t) ((c-font-lock-declarators limit t nil nil) (save-match-data (goto-char (match-end 1)) (c-forward-syntactic-ws)) (goto-char (match-end 1))) c-type-prefix-kwds (cc-langs) c-make-keywords-re nil (cc-langs) + 2 regexp-opt-depth c-simple-ws-depth (cc-langs) "\\<\\(" "\\)" c-simple-ws (cc-langs) "+" "\\(" c-symbol-key (cc-langs) ('font-lock-type-face t) (c-font-lock-declarators limit t nil nil) save-match-data goto-char match-end ((c-forward-syntactic-ws)) c-typeless-decl-kwds (cc-langs) regexp-opt (cc-langs) "\\)\\>" ((c-font-lock-declarators limit t nil nil) (save-match-data (goto-char (match-end 1)) (c-forward-syntactic-ws)) (goto-char (match-end 1))) c-recognize-colon-labels (cc-langs) (c-font-lock-labels)] 13] nil c-complex-decl-matchers #[nil "\301\302\303\304!\205\305\306\307\310\311\302\312\313\314\"\312\315\316\"\317#\"\"\320\"\321B\322\312\323\324\"\205'\325\303\326!\205.\327\306\317\312\330\331\"\"\303\332!\203E\333\334Q\335B\202K\336\334Q\337B)C\303\326!\205T\340&B\207" [re c-font-lock-complex-decl-prepare append c-lang-major-mode-is objc-mode c-make-font-lock-search-function c-make-keywords-re t delete "@class" c-get-lang-constant c-protection-kwds (cc-langs) c-other-decl-kwds (cc-langs) nil ((c-put-char-property (1- (match-end 1)) 'c-type 'c-decl-end)) (c-font-lock-objc-methods) (c-font-lock-cut-off-declarators c-font-lock-declarations c-font-lock-enclosing-decls) c-recognize-<>-arglists (cc-langs) (c-font-lock-<>-arglists) c++-mode (c-font-lock-c++-lambda-captures) c-primitive-type-kwds (cc-langs) pike-mode "\\(\\=.?\\|[^>]\\|[^-]>\\)\\<\\(" "\\)\\>" (2 font-lock-type-face) "\\<\\(" (1 'font-lock-type-face) (("\\<new\\>" (c-font-lock-c++-new)))] 12]] 4)
(defalias 'c-font-lock-labels #[(limit) "\306\211\307\310\311\307#\203p`\312\224b\210\313!\204\314 \210\315 \211\203j\316	\317\"\204j	b\210\314 \210`Sf\320>\204Z`Sf\321=\203U\322u\210\314 \210o\204U\316`S\317\"\f=\204Z\323 \203j	b\210\324
!\210\325\312\224\312\225\317\f$\210\nb\210\202+\306\207" [parse-sexp-lookup-properties id-start continue-pos limit c-label-face-name c-symbol-key nil t re-search-forward ":[^:]" 0 c-skip-comments-and-strings c-backward-sws c-on-identifier get-text-property face (125 123 59) 58 -1 c-after-conditional looking-at put-text-property] 5])
(byte-code "\300\301\302\303B\304B\"\210\300\305\302\306B\304B\"\210\300\307\302\310B\304B\"\210\300\311\302\312B\304B\"\207" [c-define-lang-constant c-basic-matchers-after t #[nil "\301\302\303\304\"\205	\305\302\306\307\"\2051\310\311\312\302\306\313\"\"\314\315\316\302\317\320\"\321\260\314\322!\323\\\324BBE)BC\302\325\326\"\204F\302\327\330\"\204F\302\331\332\"\205_\333\315\311\312\301\302\325\334\"\302\327\335\"\302\331\336\"#\"\337Q\340\"CC\302\341\342\"\205u\343\315\311\312\302\341\344\"\"\337Q\345\"CC\346\347!\205|\350%\207" [c-before-label-re append c-get-lang-constant c-brace-list-decl-kwds (cc-langs) (c-font-lock-enum-tail c-font-lock-enum-body) c-before-label-kwds (cc-langs) eval c-make-keywords-re nil (cc-langs) list "\\<\\(" "\\)\\>\\s *\\(" c-symbol-key (cc-langs) "\\)" regexp-opt-depth 2 (c-label-face-name nil t) c-type-list-kwds (cc-langs) c-ref-list-kwds (cc-langs) c-colon-type-list-kwds (cc-langs) c-make-font-lock-BO-decl-search-function (cc-langs) (cc-langs) (cc-langs) "\\)\\>" ((c-fontify-types-and-refs ((c-promote-possible-types t)) (c-forward-keyword-clause 1) (if (> (point) limit) (goto-char limit)))) c-paren-type-kwds (cc-langs) c-make-font-lock-search-function (cc-langs) ((c-fontify-types-and-refs ((c-promote-possible-types t)) (c-forward-keyword-clause 1) (if (> (point) limit) (goto-char limit)))) c-lang-major-mode-is java-mode ((eval list "\\<\\(@[a-zA-Z0-9]+\\)\\>" 1 c-annotation-face))] 13] nil c-matchers-1 #[nil "\300\301!\207" [c-get-lang-constant c-cpp-matchers] 2] c-matchers-2 #[nil "\300\301\302!\301\303!\301\304!\301\305!$\207" [append c-get-lang-constant c-matchers-1 c-basic-matchers-before c-simple-decl-matchers c-basic-matchers-after] 6] c-matchers-3 #[nil "\300\301\302!\301\303!\301\304!\301\305!$\207" [append c-get-lang-constant c-matchers-1 c-basic-matchers-before c-complex-decl-matchers c-basic-matchers-after] 6]] 4)
(defalias 'c-get-doc-comment-style #[nil "\242:\203	\236\206\302\236\243\207\207" [c-doc-comment-style c-buffer-is-cc-mode other] 2])
(defalias 'c-compose-keywords-list #[(base-list) "	>\204\n	B\305 \306\307\n<\203\n\202\nC\"\244\310\f>\203.\310\311\310\312\f\313\"\"B\f*\207" [c-doc-face-name c-literal-faces doc-keywords base-list list c-get-doc-comment-style mapcan #[(doc-style) "\302\303!\304P!\305	!\203	 \202\306	!\205\307\310	!\311\")\207" [doc-style sym intern symbol-name "-font-lock-keywords" fboundp boundp append eval nil] 3] c-font-lock-complex-decl-prepare delq append nil] 6])
(defalias 'c-override-default-keywords #[(def-var) "\301!\205J\302\303\304\305\"B>\205\306!\207" [def-var boundp nil mapcar #[(suffix) "\303\304!	P!\305\n!\205\nJ)\207" [def-var suffix sym intern symbol-name boundp] 3] ("-1" "-2" "-3") makunbound] 5])
(c-override-default-keywords 'c-font-lock-keywords)
#@143 Minimal font locking for C mode.
Fontifies only preprocessor directives (in addition to the syntactic
fontification of strings and comments).
(defconst c-font-lock-keywords-1 (byte-code "\301=\203\302\207\303\304\305\306#\207" [c-version-sym 5\.34\.1 (c-maybe-font-lock-wrong-style-comments ("\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:error\\|warning\\)\\)\\s +\\(.*\\)$" 4 font-lock-string-face t) (#[#1=(limit) "\306\300!\307\310	\311#\203i\312\224b\210\313	!\204\312\225b\210\314 \315\216\316\317\224\317\225\320$\210*\314 \321\216\317\224\317\225S\ff\322=\203Y
\316\211T\323\324$\210)\f\316\211T\323\325$\210)\202e
\326\211T\327#\210),\202)\330\207" [parse-sexp-lookup-properties limit save-match-data-internal font-lock-string-face end beg boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(?:include\\)\\(\\s \\|[\n
]\\)*\\(\\(//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)\\(\\s \\|[\n
]\\)*\\)*\\(<[^>\n
]*>?\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 8 face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 62 category c-<-as-paren-syntax c->-as-paren-syntax remove-text-properties (category nil) nil -pos- pos] 5]) (#[#1# "\304\300!\305\306	\307#\203m\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\224\203`\214\315\316\224\316\225\317\320$\210\314\225b\210e	}\210\321 \210\322!\203\\\315\310\224\310\225\317\323$\210\310\225b\210\321 \210\324f\325=\203\\\324u\210\2026)\202i\315\316\224\316\225\317\323$\210*\202)\324\207" [parse-sexp-lookup-properties limit save-match-data-internal c-symbol-key boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *define\\(\\(\\s \\|[\n
]\\)\\|//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)+\\([[:alpha:]_][[:alnum:]_$]*\\)\\(\\((\\)\\|\\([^(]\\|$\\)\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 8 put-text-property 6 face font-lock-function-name-face c-forward-sws looking-at font-lock-variable-name-face nil 44] 5]) (#[(limit) "\305\300!	\306=\203:\212\307 \210`)\310\311\n\312#\2039\313\224b\210\314\n!\204\313\225b\210\315 \316\216\317\320\224\320\225\321\f$\210*\202)`\nW\203z\310\322\n\312#\203z\313\224b\210\314\n!\204:\313\225b\210\323\225b\210\315 \324\216\313\225\310\311\n\325#\203v\317\320\224\320\225\321\f$\210\202b+\202:)\326\207" [parse-sexp-lookup-properties c-font-lock-context limit save-match-data-internal c-preprocessor-face-name boundp in-cpp-expr c-end-of-macro re-search-forward "\\(\\(?:defined\\)\\)\\([^[:alnum:]_$]\\|$\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:\\(?:el\\)?if\\)\\)\\([^[:alnum:]_$]\\|$\\)\\(\\\\\\(.\\|[\n
]\\)\\|[^\n
]\\)*" 3 #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] move nil] 5]) (#[#1# "\304\300!\305\306	\307#\203,\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\315\224\315\225\316$\210*\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal c-preprocessor-face-name boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\(\\s *#\\s *[[:alnum:]_$]+\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 3 face nil] 5]) (eval list #[(limit) "\302\303\304	\305#\211\203\306\224b\210\307	!\204\306\225b\210)\207" [res limit nil re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *if\\(n\\)def\\>" t 0 c-skip-comments-and-strings] 4] 3 c-negation-char-face-name 'append) (eval list "\240" 0 (progn (unless (c-face-name-p 'c-nonbreakable-space-face) (c-make-inverse-face 'font-lock-warning-face 'c-nonbreakable-space-face)) ''c-nonbreakable-space-face))) c-get-lang-constant c-matchers-1 nil c-mode] 4) (#$ . 34399))
#@287 Fast normal font locking for C mode.
In addition to `c-font-lock-keywords-1', this adds fontification of
keywords, simple types, declarations that are easy to recognize, the
user defined types on `c-font-lock-extra-types', and the doc comment
styles specified by `c-doc-comment-style'.
(defconst c-font-lock-keywords-2 (byte-code "\301=\203\302\207\303\304\305\306#\207" [c-version-sym 5\.34\.1 (c-maybe-font-lock-wrong-style-comments ("\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:error\\|warning\\)\\)\\s +\\(.*\\)$" 4 font-lock-string-face t) (#[#1=(limit) "\306\300!\307\310	\311#\203i\312\224b\210\313	!\204\312\225b\210\314 \315\216\316\317\224\317\225\320$\210*\314 \321\216\317\224\317\225S\ff\322=\203Y
\316\211T\323\324$\210)\f\316\211T\323\325$\210)\202e
\326\211T\327#\210),\202)\330\207" [parse-sexp-lookup-properties limit save-match-data-internal font-lock-string-face end beg boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(?:include\\)\\(\\s \\|[\n
]\\)*\\(\\(//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)\\(\\s \\|[\n
]\\)*\\)*\\(<[^>\n
]*>?\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 8 face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 62 category c-<-as-paren-syntax c->-as-paren-syntax remove-text-properties (category nil) nil -pos- pos] 5]) (#[#1# "\304\300!\305\306	\307#\203m\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\224\203`\214\315\316\224\316\225\317\320$\210\314\225b\210e	}\210\321 \210\322!\203\\\315\310\224\310\225\317\323$\210\310\225b\210\321 \210\324f\325=\203\\\324u\210\2026)\202i\315\316\224\316\225\317\323$\210*\202)\324\207" [parse-sexp-lookup-properties limit save-match-data-internal c-symbol-key boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *define\\(\\(\\s \\|[\n
]\\)\\|//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)+\\([[:alpha:]_][[:alnum:]_$]*\\)\\(\\((\\)\\|\\([^(]\\|$\\)\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 8 put-text-property 6 face font-lock-function-name-face c-forward-sws looking-at font-lock-variable-name-face nil 44] 5]) (#[(limit) "\305\300!	\306=\203:\212\307 \210`)\310\311\n\312#\2039\313\224b\210\314\n!\204\313\225b\210\315 \316\216\317\320\224\320\225\321\f$\210*\202)`\nW\203z\310\322\n\312#\203z\313\224b\210\314\n!\204:\313\225b\210\323\225b\210\315 \324\216\313\225\310\311\n\325#\203v\317\320\224\320\225\321\f$\210\202b+\202:)\326\207" [parse-sexp-lookup-properties c-font-lock-context limit save-match-data-internal c-preprocessor-face-name boundp in-cpp-expr c-end-of-macro re-search-forward "\\(\\(?:defined\\)\\)\\([^[:alnum:]_$]\\|$\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:\\(?:el\\)?if\\)\\)\\([^[:alnum:]_$]\\|$\\)\\(\\\\\\(.\\|[\n
]\\)\\|[^\n
]\\)*" 3 #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] move nil] 5]) (#[#1# "\304\300!\305\306	\307#\203,\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\315\224\315\225\316$\210*\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal c-preprocessor-face-name boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\(\\s *#\\s *[[:alnum:]_$]+\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 3 face nil] 5]) (eval list #[(limit) "\302\303\304	\305#\211\203\306\224b\210\307	!\204\306\225b\210)\207" [res limit nil re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *if\\(n\\)def\\>" t 0 c-skip-comments-and-strings] 4] 3 c-negation-char-face-name 'append) (eval list "\240" 0 (progn (unless (c-face-name-p 'c-nonbreakable-space-face) (c-make-inverse-face 'font-lock-warning-face 'c-nonbreakable-space-face)) ''c-nonbreakable-space-face)) ("\\s|" 0 font-lock-warning-face t nil) c-font-lock-invalid-single-quotes (eval list "\\<\\(\\(?:NULL\\|\\(?:fals\\|tru\\)e\\)\\)\\>" 1 c-constant-face-name) ("\\<\\(\\(?:__\\(?:a\\(?:\\(?:sm\\|ttribute\\)__\\)\\|declspec\\)\\|a\\(?:sm\\|uto\\)\\|break\\|c\\(?:ase\\|on\\(?:st\\|tinue\\)\\)\\|d\\(?:efault\\|o\\)\\|e\\(?:lse\\|num\\|xtern\\)\\|for\\|goto\\|i\\(?:f\\|nline\\)\\|re\\(?:gister\\|strict\\|turn\\)\\|s\\(?:izeof\\|t\\(?:atic\\|ruct\\)\\|witch\\)\\|type\\(?:\\(?:de\\|o\\)f\\)\\|union\\|\\(?:volat\\|wh\\)ile\\)\\)\\([^[:alnum:]_$]\\|$\\)" 1 font-lock-keyword-face) (eval list "\\(!\\)[^=]" 1 c-negation-char-face-name) (eval list #[#1# "\304\300!\305	\n\306#\203J\307\224b\210\310\n!\204\307\225b\210\311 \312\216\313\314\224\314\225\315\316$\210*\311 \317\216\314\225b\210\320 \210*\311 \321\216\322\n\306\323\211$\210*\314\225b\210\202)\323\207" [parse-sexp-lookup-properties c-known-type-key limit save-match-data-internal boundp re-search-forward t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face font-lock-type-face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-forward-sws #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-font-lock-declarators nil] 5]) (#[#1# "\303\300!\304\305	\306#\203J\307\224b\210\310	!\204\307\225b\210\311 \312\216\313\314\224\314\225\315\316$\210*\311 \317\216\314\225b\210\320 \210*\311 \321\216\322	\306\323\211$\210*\314\225b\210\202)\323\207" [parse-sexp-lookup-properties limit save-match-data-internal boundp re-search-forward "\\<\\(\\(?:enum\\|struct\\|union\\)\\)\\(\\s \\|[\n
]\\)+\\([[:alpha:]_][[:alnum:]_$]*\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 3 face font-lock-type-face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-forward-sws #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-font-lock-declarators nil] 5]) (#[#1# "\303\300!\304\305	\306#\203;\307\224b\210\310	!\204\307\225b\210\311 \312\216\313\225b\210\314 \210*\311 \315\216\316	\306\317\211$\210*\313\225b\210\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal boundp re-search-forward "\\<\\(\\(?:enum\\|struct\\|union\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 1 c-forward-sws #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-font-lock-declarators nil] 5]) c-font-lock-labels c-font-lock-enum-tail c-font-lock-enum-body (eval list "\\<\\(\\(?:goto\\)\\)\\>\\s *\\([[:alpha:]_][[:alnum:]_$]*\\)" (list 2 c-label-face-name nil t))) c-get-lang-constant c-matchers-2 nil c-mode] 4) (#$ . 38586))
#@226 Accurate normal font locking for C mode.
Like the variable `c-font-lock-keywords-2' but detects declarations in a more
accurate way that works in most cases for arbitrary types without the
need for `c-font-lock-extra-types'.
(defconst c-font-lock-keywords-3 (byte-code "\301=\203\302\207\303\304\305\306#\207" [c-version-sym 5\.34\.1 (c-maybe-font-lock-wrong-style-comments ("\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:error\\|warning\\)\\)\\s +\\(.*\\)$" 4 font-lock-string-face t) (#[#1=(limit) "\306\300!\307\310	\311#\203i\312\224b\210\313	!\204\312\225b\210\314 \315\216\316\317\224\317\225\320$\210*\314 \321\216\317\224\317\225S\ff\322=\203Y
\316\211T\323\324$\210)\f\316\211T\323\325$\210)\202e
\326\211T\327#\210),\202)\330\207" [parse-sexp-lookup-properties limit save-match-data-internal font-lock-string-face end beg boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(?:include\\)\\(\\s \\|[\n
]\\)*\\(\\(//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)\\(\\s \\|[\n
]\\)*\\)*\\(<[^>\n
]*>?\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 8 face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 62 category c-<-as-paren-syntax c->-as-paren-syntax remove-text-properties (category nil) nil -pos- pos] 5]) (#[#1# "\304\300!\305\306	\307#\203m\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\224\203`\214\315\316\224\316\225\317\320$\210\314\225b\210e	}\210\321 \210\322!\203\\\315\310\224\310\225\317\323$\210\310\225b\210\321 \210\324f\325=\203\\\324u\210\2026)\202i\315\316\224\316\225\317\323$\210*\202)\324\207" [parse-sexp-lookup-properties limit save-match-data-internal c-symbol-key boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *define\\(\\(\\s \\|[\n
]\\)\\|//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)+\\([[:alpha:]_][[:alnum:]_$]*\\)\\(\\((\\)\\|\\([^(]\\|$\\)\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 8 put-text-property 6 face font-lock-function-name-face c-forward-sws looking-at font-lock-variable-name-face nil 44] 5]) (#[(limit) "\305\300!	\306=\203:\212\307 \210`)\310\311\n\312#\2039\313\224b\210\314\n!\204\313\225b\210\315 \316\216\317\320\224\320\225\321\f$\210*\202)`\nW\203z\310\322\n\312#\203z\313\224b\210\314\n!\204:\313\225b\210\323\225b\210\315 \324\216\313\225\310\311\n\325#\203v\317\320\224\320\225\321\f$\210\202b+\202:)\326\207" [parse-sexp-lookup-properties c-font-lock-context limit save-match-data-internal c-preprocessor-face-name boundp in-cpp-expr c-end-of-macro re-search-forward "\\(\\(?:defined\\)\\)\\([^[:alnum:]_$]\\|$\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:\\(?:el\\)?if\\)\\)\\([^[:alnum:]_$]\\|$\\)\\(\\\\\\(.\\|[\n
]\\)\\|[^\n
]\\)*" 3 #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] move nil] 5]) (#[#1# "\304\300!\305\306	\307#\203,\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\315\224\315\225\316$\210*\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal c-preprocessor-face-name boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\(\\s *#\\s *[[:alnum:]_$]+\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 3 face nil] 5]) (eval list #[(limit) "\302\303\304	\305#\211\203\306\224b\210\307	!\204\306\225b\210)\207" [res limit nil re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *if\\(n\\)def\\>" t 0 c-skip-comments-and-strings] 4] 3 c-negation-char-face-name 'append) (eval list "\240" 0 (progn (unless (c-face-name-p 'c-nonbreakable-space-face) (c-make-inverse-face 'font-lock-warning-face 'c-nonbreakable-space-face)) ''c-nonbreakable-space-face)) ("\\s|" 0 font-lock-warning-face t nil) c-font-lock-invalid-single-quotes (eval list "\\<\\(\\(?:NULL\\|\\(?:fals\\|tru\\)e\\)\\)\\>" 1 c-constant-face-name) ("\\<\\(\\(?:__\\(?:a\\(?:\\(?:sm\\|ttribute\\)__\\)\\|declspec\\)\\|a\\(?:sm\\|uto\\)\\|break\\|c\\(?:ase\\|on\\(?:st\\|tinue\\)\\)\\|d\\(?:efault\\|o\\)\\|e\\(?:lse\\|num\\|xtern\\)\\|for\\|goto\\|i\\(?:f\\|nline\\)\\|re\\(?:gister\\|strict\\|turn\\)\\|s\\(?:izeof\\|t\\(?:atic\\|ruct\\)\\|witch\\)\\|type\\(?:\\(?:de\\|o\\)f\\)\\|union\\|\\(?:volat\\|wh\\)ile\\)\\)\\([^[:alnum:]_$]\\|$\\)" 1 font-lock-keyword-face) (eval list "\\(!\\)[^=]" 1 c-negation-char-face-name) c-font-lock-complex-decl-prepare c-font-lock-cut-off-declarators c-font-lock-declarations c-font-lock-enclosing-decls ("\\<\\(\\(?:_\\(?:Bool\\|Complex\\|Imaginary\\)\\|char\\|double\\|float\\|int\\|long\\|s\\(?:hort\\|igned\\)\\|\\(?:unsigne\\|voi\\)d\\)\\)\\>" 1 'font-lock-type-face) c-font-lock-enum-tail c-font-lock-enum-body (eval list "\\<\\(\\(?:goto\\)\\)\\>\\s *\\([[:alpha:]_][[:alnum:]_$]*\\)" (list 2 c-label-face-name nil t))) c-get-lang-constant c-matchers-3 nil c-mode] 4) (#$ . 45772))
#@45 Default expressions to highlight in C mode.
(defvar c-font-lock-keywords c-font-lock-keywords-3 (#$ . 51113))
(defalias 'c-font-lock-keywords-2 #[nil "\301!\207" [c-font-lock-keywords-2 c-compose-keywords-list] 2])
(defalias 'c-font-lock-keywords-3 #[nil "\301!\207" [c-font-lock-keywords-3 c-compose-keywords-list] 2])
(defalias 'c-font-lock-keywords #[nil "\301!\207" [c-font-lock-keywords c-compose-keywords-list] 2])
(defalias 'c-font-lock-c++-new #[(limit) "\306!\204A\212\3072?\310\211\311\310\311\312 \210\310f\313=\2038`T\3141/\315`\316\"b0\2024\210\317\307\311\"\210\312 \210`T\310f\313=\204M\311\320 )\204M\310
\203;\f\204b
b\210\311\320 \210)\202;\f\206g`Sf\313=\203;\310\211
b\210\320 \211\203\210\321\322!\204\210\310\fb\210\320 \211\203\307\321\322!\204\234\310\3231\251\324`\316\211#0\202\253\210\310\211\205\266b\210\311)\203\307\312 \210\310f\313=\203\307\310\325>\204:\326>\204:\327=\204:\327=\204:\330=\203\367\311
b\210\320 \210)\202:\330=\203\311\fb\210\320 \210)\202:\331=\203$\204$\311
b\210\320 \210)\202:\204:\331=\203:\311\fb\210\320 \210)*\332 -0\210)\310\207" [limit parse-sexp-lookup-properties c-record-ref-identifiers c-record-type-identifiers expr2-pos expr1-pos c-skip-comments-and-strings false-alarm nil t c-forward-sws 40 (scan-error) scan-sexps 1 throw c-forward-type looking-at "[[:alpha:]_]\\|[*:)[]" (error) scan-lists (t known prefix) (t known prefix) decltype found maybe c-fontify-recorded-types-and-refs c-promote-possible-types expr2-res expr1-res dest] 6])
(c-override-default-keywords 'c++-font-lock-keywords)
#@145 Minimal font locking for C++ mode.
Fontifies only preprocessor directives (in addition to the syntactic
fontification of strings and comments).
(defconst c++-font-lock-keywords-1 (byte-code "\301=\203\302\207\303\304\305\306#\207" [c-version-sym 5\.34\.1 (c-maybe-font-lock-wrong-style-comments ("\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:error\\|warning\\)\\)\\s +\\(.*\\)$" 4 font-lock-string-face t) (#[#1=(limit) "\306\300!\307\310	\311#\203i\312\224b\210\313	!\204\312\225b\210\314 \315\216\316\317\224\317\225\320$\210*\314 \321\216\317\224\317\225S\ff\322=\203Y
\316\211T\323\324$\210)\f\316\211T\323\325$\210)\202e
\326\211T\327#\210),\202)\330\207" [parse-sexp-lookup-properties limit save-match-data-internal font-lock-string-face end beg boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(?:include\\)\\(\\s \\|[\n
]\\)*\\(\\(//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)\\(\\s \\|[\n
]\\)*\\)*\\(<[^>\n
]*>?\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 8 face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 62 category c-<-as-paren-syntax c->-as-paren-syntax remove-text-properties (category nil) nil -pos- pos] 5]) (#[#1# "\304\300!\305\306	\307#\203m\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\224\203`\214\315\316\224\316\225\317\320$\210\314\225b\210e	}\210\321 \210\322!\203\\\315\310\224\310\225\317\323$\210\310\225b\210\321 \210\324f\325=\203\\\324u\210\2026)\202i\315\316\224\316\225\317\323$\210*\202)\324\207" [parse-sexp-lookup-properties limit save-match-data-internal c-symbol-key boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *define\\(\\(\\s \\|[\n
]\\)\\|//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)+\\([[:alpha:]_][[:alnum:]_$]*\\)\\(\\((\\)\\|\\([^(]\\|$\\)\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 8 put-text-property 6 face font-lock-function-name-face c-forward-sws looking-at font-lock-variable-name-face nil 44] 5]) (#[(limit) "\305\300!	\306=\203:\212\307 \210`)\310\311\n\312#\2039\313\224b\210\314\n!\204\313\225b\210\315 \316\216\317\320\224\320\225\321\f$\210*\202)`\nW\203z\310\322\n\312#\203z\313\224b\210\314\n!\204:\313\225b\210\323\225b\210\315 \324\216\313\225\310\311\n\325#\203v\317\320\224\320\225\321\f$\210\202b+\202:)\326\207" [parse-sexp-lookup-properties c-font-lock-context limit save-match-data-internal c-preprocessor-face-name boundp in-cpp-expr c-end-of-macro re-search-forward "\\(\\(?:defined\\)\\)\\([^[:alnum:]_$]\\|$\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:\\(?:el\\)?if\\)\\)\\([^[:alnum:]_$]\\|$\\)\\(\\\\\\(.\\|[\n
]\\)\\|[^\n
]\\)*" 3 #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] move nil] 5]) (#[#1# "\304\300!\305\306	\307#\203,\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\315\224\315\225\316$\210*\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal c-preprocessor-face-name boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\(\\s *#\\s *[[:alnum:]_$]+\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 3 face nil] 5]) (eval list #[(limit) "\302\303\304	\305#\211\203\306\224b\210\307	!\204\306\225b\210)\207" [res limit nil re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *if\\(n\\)def\\>" t 0 c-skip-comments-and-strings] 4] 3 c-negation-char-face-name 'append) (eval list "\240" 0 (progn (unless (c-face-name-p 'c-nonbreakable-space-face) (c-make-inverse-face 'font-lock-warning-face 'c-nonbreakable-space-face)) ''c-nonbreakable-space-face))) c-get-lang-constant c-matchers-1 nil c++-mode] 4) (#$ . 52774))
#@293 Fast normal font locking for C++ mode.
In addition to `c++-font-lock-keywords-1', this adds fontification of
keywords, simple types, declarations that are easy to recognize, the
user defined types on `c++-font-lock-extra-types', and the doc comment
styles specified by `c-doc-comment-style'.
(defconst c++-font-lock-keywords-2 (byte-code "\301=\203\302\207\303\304\305\306#\207" [c-version-sym 5\.34\.1 (c-maybe-font-lock-wrong-style-comments ("\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:error\\|warning\\)\\)\\s +\\(.*\\)$" 4 font-lock-string-face t) (#[#1=(limit) "\306\300!\307\310	\311#\203i\312\224b\210\313	!\204\312\225b\210\314 \315\216\316\317\224\317\225\320$\210*\314 \321\216\317\224\317\225S\ff\322=\203Y
\316\211T\323\324$\210)\f\316\211T\323\325$\210)\202e
\326\211T\327#\210),\202)\330\207" [parse-sexp-lookup-properties limit save-match-data-internal font-lock-string-face end beg boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(?:include\\)\\(\\s \\|[\n
]\\)*\\(\\(//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)\\(\\s \\|[\n
]\\)*\\)*\\(<[^>\n
]*>?\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 8 face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 62 category c-<-as-paren-syntax c->-as-paren-syntax remove-text-properties (category nil) nil -pos- pos] 5]) (#[#1# "\304\300!\305\306	\307#\203m\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\224\203`\214\315\316\224\316\225\317\320$\210\314\225b\210e	}\210\321 \210\322!\203\\\315\310\224\310\225\317\323$\210\310\225b\210\321 \210\324f\325=\203\\\324u\210\2026)\202i\315\316\224\316\225\317\323$\210*\202)\324\207" [parse-sexp-lookup-properties limit save-match-data-internal c-symbol-key boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *define\\(\\(\\s \\|[\n
]\\)\\|//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)+\\([[:alpha:]_][[:alnum:]_$]*\\)\\(\\((\\)\\|\\([^(]\\|$\\)\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 8 put-text-property 6 face font-lock-function-name-face c-forward-sws looking-at font-lock-variable-name-face nil 44] 5]) (#[(limit) "\305\300!	\306=\203:\212\307 \210`)\310\311\n\312#\2039\313\224b\210\314\n!\204\313\225b\210\315 \316\216\317\320\224\320\225\321\f$\210*\202)`\nW\203z\310\322\n\312#\203z\313\224b\210\314\n!\204:\313\225b\210\323\225b\210\315 \324\216\313\225\310\311\n\325#\203v\317\320\224\320\225\321\f$\210\202b+\202:)\326\207" [parse-sexp-lookup-properties c-font-lock-context limit save-match-data-internal c-preprocessor-face-name boundp in-cpp-expr c-end-of-macro re-search-forward "\\(\\(?:defined\\)\\)\\([^[:alnum:]_$]\\|$\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:\\(?:el\\)?if\\)\\)\\([^[:alnum:]_$]\\|$\\)\\(\\\\\\(.\\|[\n
]\\)\\|[^\n
]\\)*" 3 #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] move nil] 5]) (#[#1# "\304\300!\305\306	\307#\203,\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\315\224\315\225\316$\210*\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal c-preprocessor-face-name boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\(\\s *#\\s *[[:alnum:]_$]+\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 3 face nil] 5]) (eval list #[(limit) "\302\303\304	\305#\211\203\306\224b\210\307	!\204\306\225b\210)\207" [res limit nil re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *if\\(n\\)def\\>" t 0 c-skip-comments-and-strings] 4] 3 c-negation-char-face-name 'append) (eval list "\240" 0 (progn (unless (c-face-name-p 'c-nonbreakable-space-face) (c-make-inverse-face 'font-lock-warning-face 'c-nonbreakable-space-face)) ''c-nonbreakable-space-face)) ("\\s|" 0 font-lock-warning-face t nil) c-font-lock-invalid-single-quotes c-font-lock-raw-strings (eval list "\\<\\(\\(?:NULL\\|false\\|nullptr\\|true\\)\\)\\>" 1 c-constant-face-name) ("\\<\\(\\(?:__\\(?:a\\(?:\\(?:sm\\|ttribute\\)__\\)\\|declspec\\)\\|a\\(?:lignof\\|nd\\(?:_eq\\)?\\|sm\\|uto\\)\\|b\\(?:it\\(?:and\\|or\\)\\|reak\\)\\|c\\(?:a\\(?:se\\|tch\\)\\|lass\\|o\\(?:mpl\\|n\\(?:st\\(?:_cast\\|expr\\)?\\|tinue\\)\\)\\)\\|d\\(?:e\\(?:cltype\\|fault\\|lete\\)\\|o\\|ynamic_cast\\)\\|e\\(?:lse\\|num\\|x\\(?:plicit\\|tern\\)\\)\\|f\\(?:inal\\|or\\|riend\\)\\|goto\\|i\\(?:f\\|nline\\)\\|mutable\\|n\\(?:amespace\\|ew\\|o\\(?:except\\|t\\(?:_eq\\)?\\)\\)\\|o\\(?:perator\\|r\\(?:_eq\\)?\\|verride\\)\\|p\\(?:r\\(?:ivate\\|otected\\)\\|ublic\\)\\|re\\(?:gister\\|interpret_cast\\|turn\\)\\|s\\(?:izeof\\|t\\(?:atic\\(?:_cast\\)?\\|ruct\\)\\|witch\\)\\|t\\(?:emplate\\|h\\(?:is\\|r\\(?:ead_local\\|ow\\)\\)\\|ry\\|ype\\(?:def\\|id\\|name\\|of\\)\\)\\|u\\(?:nion\\|sing\\)\\|v\\(?:irtual\\|olatile\\)\\|while\\|xor\\(?:_eq\\)?\\)\\)\\([^[:alnum:]_$]\\|$\\)" 1 font-lock-keyword-face) (#[(limit) "\302\303\304#\205*\305\224b\210\306!\204\307\310\224\311\"\204#\312\310\224\310\225\311	$\210\313\225b\210\202\207" [limit c-reference-face-name re-search-forward "\\(\\<\\([[:alpha:]_][[:alnum:]_$]*\\)\\(\\s \\|[\n
]\\)*\\(\\(?:::\\)\\)\\(\\s \\|[\n
]\\)*\\)\\([[:alpha:]_]\\|\\([*~]\\)\\)" t 0 c-skip-comments-and-strings get-text-property 2 face put-text-property 1] 5]) (eval list "\\(!\\)[^=]" 1 c-negation-char-face-name) (eval list #[#1# "\304\300!\305	\n\306#\203J\307\224b\210\310\n!\204\307\225b\210\311 \312\216\313\314\224\314\225\315\316$\210*\311 \317\216\314\225b\210\320 \210*\311 \321\216\322\n\306\323\211$\210*\314\225b\210\202)\323\207" [parse-sexp-lookup-properties c-known-type-key limit save-match-data-internal boundp re-search-forward t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face font-lock-type-face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-forward-sws #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-font-lock-declarators nil] 5]) (#[#1# "\303\300!\304\305	\306#\203J\307\224b\210\310	!\204\307\225b\210\311 \312\216\313\314\224\314\225\315\316$\210*\311 \317\216\314\225b\210\320 \210*\311 \321\216\322	\306\323\211$\210*\314\225b\210\202)\323\207" [parse-sexp-lookup-properties limit save-match-data-internal boundp re-search-forward "\\<\\(\\(?:class\\|enum\\|struct\\|typename\\|union\\)\\)\\(\\s \\|[\n
]\\)+\\([[:alpha:]_][[:alnum:]_$]*\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 3 face font-lock-type-face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-forward-sws #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-font-lock-declarators nil] 5]) (#[#1# "\303\300!\304\305	\306#\203;\307\224b\210\310	!\204\307\225b\210\311 \312\216\313\225b\210\314 \210*\311 \315\216\316	\306\317\211$\210*\313\225b\210\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal boundp re-search-forward "\\<\\(\\(?:auto\\|class\\|enum\\|struct\\|union\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 1 c-forward-sws #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-font-lock-declarators nil] 5]) c-font-lock-labels c-font-lock-enum-tail c-font-lock-enum-body (eval list "\\<\\(\\(?:goto\\)\\)\\>\\s *\\([[:alpha:]_][[:alnum:]_$]*\\)" (list 2 c-label-face-name nil t)) (#[(limit) "\306\301!\307\310!`\311!@\312=\203`\202\n)b\210\313\314\315#\203R\316\224b\210\317!\204\316\225b\210\320 \321\216\315\322\315\323\324!\210`V\203Kb\210\325 \210-\202*\322\207" [BOD-limit parse-sexp-lookup-properties here limit save-match-data-internal c-promote-possible-types boundp c-determine-limit 1000 c-beginning-of-decl-1 same re-search-forward "\\<\\(\\(?:class\\|namespace\\|operator\\|struct\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-keyword-clause 1 c-fontify-recorded-types-and-refs c-record-ref-identifiers c-record-type-identifiers] 4]) (#[#1# "\306\300!\307\310	\311#\2039\312\224b\210\313	!\204\312\225b\210\314 \315\216\311\316\311\317\320!\210`	V\2032	b\210\321 \210-\202)\316\207" [parse-sexp-lookup-properties limit save-match-data-internal c-promote-possible-types c-record-ref-identifiers c-record-type-identifiers boundp re-search-forward "\\<\\(\\(?:throw\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-keyword-clause 1 c-fontify-recorded-types-and-refs] 4])) c-get-lang-constant c-matchers-2 nil c++-mode] 4) (#$ . 56967))
#@232 Accurate normal font locking for C++ mode.
Like the variable `c++-font-lock-keywords-2' but detects declarations in a more
accurate way that works in most cases for arbitrary types without the
need for `c++-font-lock-extra-types'.
(defconst c++-font-lock-keywords-3 (byte-code "\301=\203\302\207\303\304\305\306#\207" [c-version-sym 5\.34\.1 (c-maybe-font-lock-wrong-style-comments ("\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:error\\|warning\\)\\)\\s +\\(.*\\)$" 4 font-lock-string-face t) (#[#1=(limit) "\306\300!\307\310	\311#\203i\312\224b\210\313	!\204\312\225b\210\314 \315\216\316\317\224\317\225\320$\210*\314 \321\216\317\224\317\225S\ff\322=\203Y
\316\211T\323\324$\210)\f\316\211T\323\325$\210)\202e
\326\211T\327#\210),\202)\330\207" [parse-sexp-lookup-properties limit save-match-data-internal font-lock-string-face end beg boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(?:include\\)\\(\\s \\|[\n
]\\)*\\(\\(//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)\\(\\s \\|[\n
]\\)*\\)*\\(<[^>\n
]*>?\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 8 face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 62 category c-<-as-paren-syntax c->-as-paren-syntax remove-text-properties (category nil) nil -pos- pos] 5]) (#[#1# "\304\300!\305\306	\307#\203m\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\224\203`\214\315\316\224\316\225\317\320$\210\314\225b\210e	}\210\321 \210\322!\203\\\315\310\224\310\225\317\323$\210\310\225b\210\321 \210\324f\325=\203\\\324u\210\2026)\202i\315\316\224\316\225\317\323$\210*\202)\324\207" [parse-sexp-lookup-properties limit save-match-data-internal c-symbol-key boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *define\\(\\(\\s \\|[\n
]\\)\\|//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)+\\([[:alpha:]_][[:alnum:]_$]*\\)\\(\\((\\)\\|\\([^(]\\|$\\)\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 8 put-text-property 6 face font-lock-function-name-face c-forward-sws looking-at font-lock-variable-name-face nil 44] 5]) (#[(limit) "\305\300!	\306=\203:\212\307 \210`)\310\311\n\312#\2039\313\224b\210\314\n!\204\313\225b\210\315 \316\216\317\320\224\320\225\321\f$\210*\202)`\nW\203z\310\322\n\312#\203z\313\224b\210\314\n!\204:\313\225b\210\323\225b\210\315 \324\216\313\225\310\311\n\325#\203v\317\320\224\320\225\321\f$\210\202b+\202:)\326\207" [parse-sexp-lookup-properties c-font-lock-context limit save-match-data-internal c-preprocessor-face-name boundp in-cpp-expr c-end-of-macro re-search-forward "\\(\\(?:defined\\)\\)\\([^[:alnum:]_$]\\|$\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:\\(?:el\\)?if\\)\\)\\([^[:alnum:]_$]\\|$\\)\\(\\\\\\(.\\|[\n
]\\)\\|[^\n
]\\)*" 3 #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] move nil] 5]) (#[#1# "\304\300!\305\306	\307#\203,\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\315\224\315\225\316$\210*\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal c-preprocessor-face-name boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\(\\s *#\\s *[[:alnum:]_$]+\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 3 face nil] 5]) (eval list #[(limit) "\302\303\304	\305#\211\203\306\224b\210\307	!\204\306\225b\210)\207" [res limit nil re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *if\\(n\\)def\\>" t 0 c-skip-comments-and-strings] 4] 3 c-negation-char-face-name 'append) (eval list "\240" 0 (progn (unless (c-face-name-p 'c-nonbreakable-space-face) (c-make-inverse-face 'font-lock-warning-face 'c-nonbreakable-space-face)) ''c-nonbreakable-space-face)) ("\\s|" 0 font-lock-warning-face t nil) c-font-lock-invalid-single-quotes c-font-lock-raw-strings (eval list "\\<\\(\\(?:NULL\\|false\\|nullptr\\|true\\)\\)\\>" 1 c-constant-face-name) ("\\<\\(\\(?:__\\(?:a\\(?:\\(?:sm\\|ttribute\\)__\\)\\|declspec\\)\\|a\\(?:lignof\\|nd\\(?:_eq\\)?\\|sm\\|uto\\)\\|b\\(?:it\\(?:and\\|or\\)\\|reak\\)\\|c\\(?:a\\(?:se\\|tch\\)\\|lass\\|o\\(?:mpl\\|n\\(?:st\\(?:_cast\\|expr\\)?\\|tinue\\)\\)\\)\\|d\\(?:e\\(?:cltype\\|fault\\|lete\\)\\|o\\|ynamic_cast\\)\\|e\\(?:lse\\|num\\|x\\(?:plicit\\|tern\\)\\)\\|f\\(?:inal\\|or\\|riend\\)\\|goto\\|i\\(?:f\\|nline\\)\\|mutable\\|n\\(?:amespace\\|ew\\|o\\(?:except\\|t\\(?:_eq\\)?\\)\\)\\|o\\(?:perator\\|r\\(?:_eq\\)?\\|verride\\)\\|p\\(?:r\\(?:ivate\\|otected\\)\\|ublic\\)\\|re\\(?:gister\\|interpret_cast\\|turn\\)\\|s\\(?:izeof\\|t\\(?:atic\\(?:_cast\\)?\\|ruct\\)\\|witch\\)\\|t\\(?:emplate\\|h\\(?:is\\|r\\(?:ead_local\\|ow\\)\\)\\|ry\\|ype\\(?:def\\|id\\|name\\|of\\)\\)\\|u\\(?:nion\\|sing\\)\\|v\\(?:irtual\\|olatile\\)\\|while\\|xor\\(?:_eq\\)?\\)\\)\\([^[:alnum:]_$]\\|$\\)" 1 font-lock-keyword-face) (#[(limit) "\302\303\304#\205*\305\224b\210\306!\204\307\310\224\311\"\204#\312\310\224\310\225\311	$\210\313\225b\210\202\207" [limit c-reference-face-name re-search-forward "\\(\\<\\([[:alpha:]_][[:alnum:]_$]*\\)\\(\\s \\|[\n
]\\)*\\(\\(?:::\\)\\)\\(\\s \\|[\n
]\\)*\\)\\([[:alpha:]_]\\|\\([*~]\\)\\)" t 0 c-skip-comments-and-strings get-text-property 2 face put-text-property 1] 5]) (eval list "\\(!\\)[^=]" 1 c-negation-char-face-name) c-font-lock-complex-decl-prepare c-font-lock-cut-off-declarators c-font-lock-declarations c-font-lock-enclosing-decls c-font-lock-<>-arglists c-font-lock-c++-lambda-captures ("\\<\\(\\(?:bool\\|char\\(?:\\(?:16\\|32\\)_t\\)?\\|double\\|float\\|int\\|long\\|s\\(?:hort\\|igned\\)\\|unsigned\\|void\\|wchar_t\\)\\)\\>" 1 'font-lock-type-face) ("\\<new\\>" (c-font-lock-c++-new)) c-font-lock-enum-tail c-font-lock-enum-body (eval list "\\<\\(\\(?:goto\\)\\)\\>\\s *\\([[:alpha:]_][[:alnum:]_$]*\\)" (list 2 c-label-face-name nil t)) (#[(limit) "\306\301!\307\310!`\311!@\312=\203`\202\n)b\210\313\314\315#\203R\316\224b\210\317!\204\316\225b\210\320 \321\216\315\322\315\323\324!\210`V\203Kb\210\325 \210-\202*\322\207" [BOD-limit parse-sexp-lookup-properties here limit save-match-data-internal c-promote-possible-types boundp c-determine-limit 1000 c-beginning-of-decl-1 same re-search-forward "\\<\\(\\(?:class\\|namespace\\|operator\\|struct\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-keyword-clause 1 c-fontify-recorded-types-and-refs c-record-ref-identifiers c-record-type-identifiers] 4]) (#[#1# "\306\300!\307\310	\311#\2039\312\224b\210\313	!\204\312\225b\210\314 \315\216\311\316\311\317\320!\210`	V\2032	b\210\321 \210-\202)\316\207" [parse-sexp-lookup-properties limit save-match-data-internal c-promote-possible-types c-record-ref-identifiers c-record-type-identifiers boundp re-search-forward "\\<\\(\\(?:throw\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-keyword-clause 1 c-fontify-recorded-types-and-refs] 4])) c-get-lang-constant c-matchers-3 nil c++-mode] 4) (#$ . 66332))
#@47 Default expressions to highlight in C++ mode.
(defvar c++-font-lock-keywords c++-font-lock-keywords-3 (#$ . 73908))
(defalias 'c++-font-lock-keywords-2 #[nil "\301!\207" [c++-font-lock-keywords-2 c-compose-keywords-list] 2])
(defalias 'c++-font-lock-keywords-3 #[nil "\301!\207" [c++-font-lock-keywords-3 c-compose-keywords-list] 2])
(defalias 'c++-font-lock-keywords #[nil "\301!\207" [c++-font-lock-keywords c-compose-keywords-list] 2])
(defalias 'c-font-lock-objc-method #[nil "\306\307\306\211\310 \210\307f\311=\203:\307u\210\310 \210\312 \210\3131(\314`\315\211#0\202*\210\307\211\2053\fb\210\306)\310 \210\202;\306\205\316
!\205\317\225b\210\320\317\224`\321	\203U\322\202V\323$\210\310 \210\316
!\203p\317\225b\210\320\317\224`\321\322$\210\310 \210\307f\324=\205\307u\210\307\202\325 \210,\207" [c-promote-possible-types first c-record-ref-identifiers c-record-type-identifiers dest c-symbol-key t nil c-forward-sws 40 c-forward-type (error) scan-lists 1 looking-at 0 put-text-property face font-lock-function-name-face font-lock-variable-name-face 58 c-fontify-recorded-types-and-refs] 6])
(defalias 'c-font-lock-objc-methods #[(limit) "\302\303	\304\305\306$\210)\305\207" [parse-sexp-lookup-properties limit t c-find-decl-spots "[-+]" nil #[(_match-pos _inside-macro &optional _top-level) "\300u\210\301 \207" [nil c-font-lock-objc-method] 1]] 5])
(c-override-default-keywords 'objc-font-lock-keywords)
#@149 Minimal font locking for Objective-C mode.
Fontifies only compiler directives (in addition to the syntactic
fontification of strings and comments).
(defconst objc-font-lock-keywords-1 (byte-code "\301=\203\302\207\303\304\305\306#\207" [c-version-sym 5\.34\.1 (c-maybe-font-lock-wrong-style-comments ("\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:error\\|warning\\)\\)\\s +\\(.*\\)$" 4 font-lock-string-face t) (#[#1=(limit) "\306\300!\307\310	\311#\203i\312\224b\210\313	!\204\312\225b\210\314 \315\216\316\317\224\317\225\320$\210*\314 \321\216\317\224\317\225S\ff\322=\203Y
\316\211T\323\324$\210)\f\316\211T\323\325$\210)\202e
\326\211T\327#\210),\202)\330\207" [parse-sexp-lookup-properties limit save-match-data-internal font-lock-string-face end beg boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(?:i\\(?:mport\\|nclude\\)\\)\\(\\s \\|[\n
]\\)*\\(\\(//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)\\(\\s \\|[\n
]\\)*\\)*\\(<[^>\n
]*>?\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 8 face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 62 category c-<-as-paren-syntax c->-as-paren-syntax remove-text-properties (category nil) nil -pos- pos] 5]) (#[#1# "\304\300!\305\306	\307#\203m\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\224\203`\214\315\316\224\316\225\317\320$\210\314\225b\210e	}\210\321 \210\322!\203\\\315\310\224\310\225\317\323$\210\310\225b\210\321 \210\324f\325=\203\\\324u\210\2026)\202i\315\316\224\316\225\317\323$\210*\202)\324\207" [parse-sexp-lookup-properties limit save-match-data-internal c-symbol-key boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *define\\(\\(\\s \\|[\n
]\\)\\|//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)+\\([[:alpha:]_@][[:alnum:]_$@]*\\)\\(\\((\\)\\|\\([^(]\\|$\\)\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 8 put-text-property 6 face font-lock-function-name-face c-forward-sws looking-at font-lock-variable-name-face nil 44] 5]) (#[(limit) "\305\300!	\306=\203:\212\307 \210`)\310\311\n\312#\2039\313\224b\210\314\n!\204\313\225b\210\315 \316\216\317\320\224\320\225\321\f$\210*\202)`\nW\203z\310\322\n\312#\203z\313\224b\210\314\n!\204:\313\225b\210\323\225b\210\315 \324\216\313\225\310\311\n\325#\203v\317\320\224\320\225\321\f$\210\202b+\202:)\326\207" [parse-sexp-lookup-properties c-font-lock-context limit save-match-data-internal c-preprocessor-face-name boundp in-cpp-expr c-end-of-macro re-search-forward "\\(\\(?:defined\\)\\)\\([^[:alnum:]_$@]\\|$\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:\\(?:el\\)?if\\)\\)\\([^[:alnum:]_$@]\\|$\\)\\(\\\\\\(.\\|[\n
]\\)\\|[^\n
]\\)*" 3 #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] move nil] 5]) (#[#1# "\304\300!\305\306	\307#\203,\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\315\224\315\225\316$\210*\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal c-preprocessor-face-name boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\(\\s *#\\s *[[:alnum:]_$@]+\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 3 face nil] 5]) (eval list #[(limit) "\302\303\304	\305#\211\203\306\224b\210\307	!\204\306\225b\210)\207" [res limit nil re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *if\\(n\\)def\\>" t 0 c-skip-comments-and-strings] 4] 3 c-negation-char-face-name 'append) (eval list "\240" 0 (progn (unless (c-face-name-p 'c-nonbreakable-space-face) (c-make-inverse-face 'font-lock-warning-face 'c-nonbreakable-space-face)) ''c-nonbreakable-space-face))) c-get-lang-constant c-matchers-1 nil objc-mode] 4) (#$ . 75356))
#@303 Fast normal font locking for Objective-C mode.
In addition to `objc-font-lock-keywords-1', this adds fontification of
keywords, simple types, declarations that are easy to recognize, the
user defined types on `objc-font-lock-extra-types', and the doc
comment styles specified by `c-doc-comment-style'.
(defconst objc-font-lock-keywords-2 (byte-code "\301=\203\302\207\303\304\305\306#\207" [c-version-sym 5\.34\.1 (c-maybe-font-lock-wrong-style-comments ("\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:error\\|warning\\)\\)\\s +\\(.*\\)$" 4 font-lock-string-face t) (#[#1=(limit) "\306\300!\307\310	\311#\203i\312\224b\210\313	!\204\312\225b\210\314 \315\216\316\317\224\317\225\320$\210*\314 \321\216\317\224\317\225S\ff\322=\203Y
\316\211T\323\324$\210)\f\316\211T\323\325$\210)\202e
\326\211T\327#\210),\202)\330\207" [parse-sexp-lookup-properties limit save-match-data-internal font-lock-string-face end beg boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(?:i\\(?:mport\\|nclude\\)\\)\\(\\s \\|[\n
]\\)*\\(\\(//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)\\(\\s \\|[\n
]\\)*\\)*\\(<[^>\n
]*>?\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 8 face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 62 category c-<-as-paren-syntax c->-as-paren-syntax remove-text-properties (category nil) nil -pos- pos] 5]) (#[#1# "\304\300!\305\306	\307#\203m\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\224\203`\214\315\316\224\316\225\317\320$\210\314\225b\210e	}\210\321 \210\322!\203\\\315\310\224\310\225\317\323$\210\310\225b\210\321 \210\324f\325=\203\\\324u\210\2026)\202i\315\316\224\316\225\317\323$\210*\202)\324\207" [parse-sexp-lookup-properties limit save-match-data-internal c-symbol-key boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *define\\(\\(\\s \\|[\n
]\\)\\|//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)+\\([[:alpha:]_@][[:alnum:]_$@]*\\)\\(\\((\\)\\|\\([^(]\\|$\\)\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 8 put-text-property 6 face font-lock-function-name-face c-forward-sws looking-at font-lock-variable-name-face nil 44] 5]) (#[(limit) "\305\300!	\306=\203:\212\307 \210`)\310\311\n\312#\2039\313\224b\210\314\n!\204\313\225b\210\315 \316\216\317\320\224\320\225\321\f$\210*\202)`\nW\203z\310\322\n\312#\203z\313\224b\210\314\n!\204:\313\225b\210\323\225b\210\315 \324\216\313\225\310\311\n\325#\203v\317\320\224\320\225\321\f$\210\202b+\202:)\326\207" [parse-sexp-lookup-properties c-font-lock-context limit save-match-data-internal c-preprocessor-face-name boundp in-cpp-expr c-end-of-macro re-search-forward "\\(\\(?:defined\\)\\)\\([^[:alnum:]_$@]\\|$\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:\\(?:el\\)?if\\)\\)\\([^[:alnum:]_$@]\\|$\\)\\(\\\\\\(.\\|[\n
]\\)\\|[^\n
]\\)*" 3 #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] move nil] 5]) (#[#1# "\304\300!\305\306	\307#\203,\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\315\224\315\225\316$\210*\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal c-preprocessor-face-name boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\(\\s *#\\s *[[:alnum:]_$@]+\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 3 face nil] 5]) (eval list #[(limit) "\302\303\304	\305#\211\203\306\224b\210\307	!\204\306\225b\210)\207" [res limit nil re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *if\\(n\\)def\\>" t 0 c-skip-comments-and-strings] 4] 3 c-negation-char-face-name 'append) (eval list "\240" 0 (progn (unless (c-face-name-p 'c-nonbreakable-space-face) (c-make-inverse-face 'font-lock-warning-face 'c-nonbreakable-space-face)) ''c-nonbreakable-space-face)) ("\\s|" 0 font-lock-warning-face t nil) c-font-lock-invalid-single-quotes (eval list "\\<\\(\\(?:N\\(?:O\\|S_\\(?:DURING\\|\\(?:END\\)?HANDLER\\)\\|il\\)\\|YES\\|nil\\)\\)\\>" 1 c-constant-face-name) ("\\<\\(\\(?:@\\(?:c\\(?:atch\\|lass\\)\\|defs\\|en\\(?:code\\|d\\)\\|finally\\|i\\(?:mplementation\\|nterface\\)\\|p\\(?:r\\(?:ivate\\|ot\\(?:ected\\|ocol\\)\\)\\|ublic\\)\\|s\\(?:elector\\|ynchronized\\)\\|t\\(?:hrow\\|ry\\)\\)\\|auto\\|b\\(?:reak\\|y\\(?:copy\\|ref\\)\\)\\|c\\(?:ase\\|on\\(?:st\\|tinue\\)\\)\\|d\\(?:efault\\|o\\)\\|e\\(?:lse\\|num\\|xtern\\)\\|for\\|goto\\|i\\(?:nout\\|[fn]\\)\\|o\\(?:neway\\|ut\\)\\|return\\|s\\(?:elf\\|t\\(?:atic\\|ruct\\)\\|uper\\|witch\\)\\|typedef\\|union\\|\\(?:volat\\|wh\\)ile\\)\\)\\([^[:alnum:]_$@]\\|$\\)" 1 font-lock-keyword-face) #[#1# "\306\300!\307\310	\311#\203T\312\224b\210\313	!\204\312\225b\210\314 \315\216\311\316\214e	\206*d}\210\317 \210)`\320 \321=\203C
b\210\311\320 \210))`	V\203M	b\210\322 \210,\202)\316\207" [parse-sexp-lookup-properties limit save-match-data-internal c-record-ref-identifiers c-record-type-identifiers start boundp re-search-forward "\\[" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-sws c-forward-type known c-fontify-recorded-types-and-refs c-promote-possible-types] 4] #[#1# "\305\300!\306\307	\310#\2035\311\224b\210\312	!\204\311\225b\210\311\224b\210\313 \314\216\310\315\305\300!\316 \210\317 \210-\202)\315\207" [parse-sexp-lookup-properties limit save-match-data-internal c-record-ref-identifiers c-record-type-identifiers boundp re-search-forward "\\<\\(@\\(?:i\\(?:mplementation\\|nterface\\)\\|protocol\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-objc-directive c-fontify-recorded-types-and-refs] 4] (eval list "\\(!\\)[^=]" 1 c-negation-char-face-name) ("^\\s *\\([+-]\\)\\(\\s \\|[\n
]\\)*\\(([^)]*)\\(\\s \\|[\n
]\\)*\\)?\\([[:alpha:]_@][[:alnum:]_$@]*\\)" (#[(limit) "\302\214e	}\210\303 \210*\304\207" [parse-sexp-lookup-properties limit t c-font-lock-objc-method nil] 2] (goto-char (match-end 1)))) (eval list #[#1# "\304\300!\305	\n\306#\203J\307\224b\210\310\n!\204\307\225b\210\311 \312\216\313\314\224\314\225\315\316$\210*\311 \317\216\314\225b\210\320 \210*\311 \321\216\322\n\306\323\211$\210*\314\225b\210\202)\323\207" [parse-sexp-lookup-properties c-known-type-key limit save-match-data-internal boundp re-search-forward t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face font-lock-type-face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-forward-sws #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-font-lock-declarators nil] 5]) (#[#1# "\303\300!\304\305	\306#\203;\307\224b\210\310	!\204\307\225b\210\311 \312\216\313\225b\210\314 \210*\311 \315\216\316	\306\317\211$\210*\313\225b\210\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal boundp re-search-forward "\\<\\(\\(?:@\\(?:i\\(?:mplementation\\|nterface\\)\\|protocol\\)\\|enum\\|struct\\|union\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 1 c-forward-sws #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-font-lock-declarators nil] 5]) c-font-lock-labels c-font-lock-enum-tail c-font-lock-enum-body (eval list "\\<\\(\\(?:goto\\)\\)\\>\\s *\\([[:alpha:]_@][[:alnum:]_$@]*\\)" (list 2 c-label-face-name nil t)) (#[(limit) "\306\301!\307\310!`\311!@\312=\203`\202\n)b\210\313\314\315#\203R\316\224b\210\317!\204\316\225b\210\320 \321\216\315\322\315\323\324!\210`V\203Kb\210\325 \210-\202*\322\207" [BOD-limit parse-sexp-lookup-properties here limit save-match-data-internal c-promote-possible-types boundp c-determine-limit 1000 c-beginning-of-decl-1 same re-search-forward "\\<\\(\\(?:@class\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-keyword-clause 1 c-fontify-recorded-types-and-refs c-record-ref-identifiers c-record-type-identifiers] 4]) (#[#1# "\306\300!\307\310	\311#\2039\312\224b\210\313	!\204\312\225b\210\314 \315\216\311\316\311\317\320!\210`	V\2032	b\210\321 \210-\202)\316\207" [parse-sexp-lookup-properties limit save-match-data-internal c-promote-possible-types c-record-ref-identifiers c-record-type-identifiers boundp re-search-forward "\\<\\(\\(?:@defs\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-keyword-clause 1 c-fontify-recorded-types-and-refs] 4])) c-get-lang-constant c-matchers-2 nil objc-mode] 4) (#$ . 79576))
#@242 Accurate normal font locking for Objective-C mode.
Like the variable `objc-font-lock-keywords-2' but detects declarations in a more
accurate way that works in most cases for arbitrary types without the
need for `objc-font-lock-extra-types'.
(defconst objc-font-lock-keywords-3 (byte-code "\301=\203\302\207\303\304\305\306#\207" [c-version-sym 5\.34\.1 (c-maybe-font-lock-wrong-style-comments ("\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:error\\|warning\\)\\)\\s +\\(.*\\)$" 4 font-lock-string-face t) (#[#1=(limit) "\306\300!\307\310	\311#\203i\312\224b\210\313	!\204\312\225b\210\314 \315\216\316\317\224\317\225\320$\210*\314 \321\216\317\224\317\225S\ff\322=\203Y
\316\211T\323\324$\210)\f\316\211T\323\325$\210)\202e
\326\211T\327#\210),\202)\330\207" [parse-sexp-lookup-properties limit save-match-data-internal font-lock-string-face end beg boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(?:i\\(?:mport\\|nclude\\)\\)\\(\\s \\|[\n
]\\)*\\(\\(//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)\\(\\s \\|[\n
]\\)*\\)*\\(<[^>\n
]*>?\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 8 face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 62 category c-<-as-paren-syntax c->-as-paren-syntax remove-text-properties (category nil) nil -pos- pos] 5]) (#[#1# "\304\300!\305\306	\307#\203m\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\224\203`\214\315\316\224\316\225\317\320$\210\314\225b\210e	}\210\321 \210\322!\203\\\315\310\224\310\225\317\323$\210\310\225b\210\321 \210\324f\325=\203\\\324u\210\2026)\202i\315\316\224\316\225\317\323$\210*\202)\324\207" [parse-sexp-lookup-properties limit save-match-data-internal c-symbol-key boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *define\\(\\(\\s \\|[\n
]\\)\\|//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)+\\([[:alpha:]_@][[:alnum:]_$@]*\\)\\(\\((\\)\\|\\([^(]\\|$\\)\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 8 put-text-property 6 face font-lock-function-name-face c-forward-sws looking-at font-lock-variable-name-face nil 44] 5]) (#[(limit) "\305\300!	\306=\203:\212\307 \210`)\310\311\n\312#\2039\313\224b\210\314\n!\204\313\225b\210\315 \316\216\317\320\224\320\225\321\f$\210*\202)`\nW\203z\310\322\n\312#\203z\313\224b\210\314\n!\204:\313\225b\210\323\225b\210\315 \324\216\313\225\310\311\n\325#\203v\317\320\224\320\225\321\f$\210\202b+\202:)\326\207" [parse-sexp-lookup-properties c-font-lock-context limit save-match-data-internal c-preprocessor-face-name boundp in-cpp-expr c-end-of-macro re-search-forward "\\(\\(?:defined\\)\\)\\([^[:alnum:]_$@]\\|$\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:\\(?:el\\)?if\\)\\)\\([^[:alnum:]_$@]\\|$\\)\\(\\\\\\(.\\|[\n
]\\)\\|[^\n
]\\)*" 3 #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] move nil] 5]) (#[#1# "\304\300!\305\306	\307#\203,\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\315\224\315\225\316$\210*\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal c-preprocessor-face-name boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\(\\s *#\\s *[[:alnum:]_$@]+\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 3 face nil] 5]) (eval list #[(limit) "\302\303\304	\305#\211\203\306\224b\210\307	!\204\306\225b\210)\207" [res limit nil re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *if\\(n\\)def\\>" t 0 c-skip-comments-and-strings] 4] 3 c-negation-char-face-name 'append) (eval list "\240" 0 (progn (unless (c-face-name-p 'c-nonbreakable-space-face) (c-make-inverse-face 'font-lock-warning-face 'c-nonbreakable-space-face)) ''c-nonbreakable-space-face)) ("\\s|" 0 font-lock-warning-face t nil) c-font-lock-invalid-single-quotes (eval list "\\<\\(\\(?:N\\(?:O\\|S_\\(?:DURING\\|\\(?:END\\)?HANDLER\\)\\|il\\)\\|YES\\|nil\\)\\)\\>" 1 c-constant-face-name) ("\\<\\(\\(?:@\\(?:c\\(?:atch\\|lass\\)\\|defs\\|en\\(?:code\\|d\\)\\|finally\\|i\\(?:mplementation\\|nterface\\)\\|p\\(?:r\\(?:ivate\\|ot\\(?:ected\\|ocol\\)\\)\\|ublic\\)\\|s\\(?:elector\\|ynchronized\\)\\|t\\(?:hrow\\|ry\\)\\)\\|auto\\|b\\(?:reak\\|y\\(?:copy\\|ref\\)\\)\\|c\\(?:ase\\|on\\(?:st\\|tinue\\)\\)\\|d\\(?:efault\\|o\\)\\|e\\(?:lse\\|num\\|xtern\\)\\|for\\|goto\\|i\\(?:nout\\|[fn]\\)\\|o\\(?:neway\\|ut\\)\\|return\\|s\\(?:elf\\|t\\(?:atic\\|ruct\\)\\|uper\\|witch\\)\\|typedef\\|union\\|\\(?:volat\\|wh\\)ile\\)\\)\\([^[:alnum:]_$@]\\|$\\)" 1 font-lock-keyword-face) #[#1# "\306\300!\307\310	\311#\203T\312\224b\210\313	!\204\312\225b\210\314 \315\216\311\316\214e	\206*d}\210\317 \210)`\320 \321=\203C
b\210\311\320 \210))`	V\203M	b\210\322 \210,\202)\316\207" [parse-sexp-lookup-properties limit save-match-data-internal c-record-ref-identifiers c-record-type-identifiers start boundp re-search-forward "\\[" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-sws c-forward-type known c-fontify-recorded-types-and-refs c-promote-possible-types] 4] #[#1# "\305\300!\306\307	\310#\2035\311\224b\210\312	!\204\311\225b\210\311\224b\210\313 \314\216\310\315\305\300!\316 \210\317 \210-\202)\315\207" [parse-sexp-lookup-properties limit save-match-data-internal c-record-ref-identifiers c-record-type-identifiers boundp re-search-forward "\\<\\(@\\(?:i\\(?:mplementation\\|nterface\\)\\|protocol\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-objc-directive c-fontify-recorded-types-and-refs] 4] (eval list "\\(!\\)[^=]" 1 c-negation-char-face-name) c-font-lock-complex-decl-prepare #[#1# "\304\300!\305\306	\307#\203/\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\225S\315\211T\316\317$\210+\202)\320\207" [parse-sexp-lookup-properties limit save-match-data-internal -pos- boundp re-search-forward "\\(\\(?:@\\(?:defs\\|end\\|p\\(?:r\\(?:ivate\\|otected\\)\\|ublic\\)\\)\\)\\)\\([^[:alnum:]_$@]\\|$\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 1 put-text-property c-type c-decl-end nil] 5] c-font-lock-objc-methods c-font-lock-cut-off-declarators c-font-lock-declarations c-font-lock-enclosing-decls c-font-lock-<>-arglists ("\\<\\(\\(?:BOOL\\|Class\\|IMP\\|SEL\\|char\\|double\\|float\\|i\\(?:d\\|nt\\)\\|long\\|s\\(?:hort\\|igned\\)\\|\\(?:unsigne\\|voi\\)d\\)\\)\\>" 1 'font-lock-type-face) c-font-lock-enum-tail c-font-lock-enum-body (eval list "\\<\\(\\(?:goto\\)\\)\\>\\s *\\([[:alpha:]_@][[:alnum:]_$@]*\\)" (list 2 c-label-face-name nil t)) (#[(limit) "\306\301!\307\310!`\311!@\312=\203`\202\n)b\210\313\314\315#\203R\316\224b\210\317!\204\316\225b\210\320 \321\216\315\322\315\323\324!\210`V\203Kb\210\325 \210-\202*\322\207" [BOD-limit parse-sexp-lookup-properties here limit save-match-data-internal c-promote-possible-types boundp c-determine-limit 1000 c-beginning-of-decl-1 same re-search-forward "\\<\\(\\(?:@class\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-keyword-clause 1 c-fontify-recorded-types-and-refs c-record-ref-identifiers c-record-type-identifiers] 4]) (#[#1# "\306\300!\307\310	\311#\2039\312\224b\210\313	!\204\312\225b\210\314 \315\216\311\316\311\317\320!\210`	V\2032	b\210\321 \210-\202)\316\207" [parse-sexp-lookup-properties limit save-match-data-internal c-promote-possible-types c-record-ref-identifiers c-record-type-identifiers boundp re-search-forward "\\<\\(\\(?:@defs\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-keyword-clause 1 c-fontify-recorded-types-and-refs] 4])) c-get-lang-constant c-matchers-3 nil objc-mode] 4) (#$ . 88879))
#@55 Default expressions to highlight in Objective-C mode.
(defvar objc-font-lock-keywords objc-font-lock-keywords-3 (#$ . 97362))
(defalias 'objc-font-lock-keywords-2 #[nil "\301!\207" [objc-font-lock-keywords-2 c-compose-keywords-list] 2])
(defalias 'objc-font-lock-keywords-3 #[nil "\301!\207" [objc-font-lock-keywords-3 c-compose-keywords-list] 2])
(defalias 'objc-font-lock-keywords #[nil "\301!\207" [objc-font-lock-keywords c-compose-keywords-list] 2])
(byte-code "\301\302\303\"\304\"\305\232\203\306\307\310!\207" [objc-font-lock-extra-types sort append nil string-lessp ("BOOL" "Class" "IMP" "SEL") ("[[:upper:]]\\sw*") c-override-default-keywords java-font-lock-keywords] 4)
#@115 Minimal font locking for Java mode.
Fontifies nothing except the syntactic fontification of strings and
comments.
(defconst java-font-lock-keywords-1 (byte-code "\301=\203\302\207\303\304\305\306#\207" [c-version-sym 5\.34\.1 ((eval list "\240" 0 (progn (unless (c-face-name-p 'c-nonbreakable-space-face) (c-make-inverse-face 'font-lock-warning-face 'c-nonbreakable-space-face)) ''c-nonbreakable-space-face))) c-get-lang-constant c-matchers-1 nil java-mode] 4) (#$ . 98057))
#@296 Fast normal font locking for Java mode.
In addition to `java-font-lock-keywords-1', this adds fontification of
keywords, simple types, declarations that are easy to recognize, the
user defined types on `java-font-lock-extra-types', and the doc
comment styles specified by `c-doc-comment-style'.
(defconst java-font-lock-keywords-2 (byte-code "\301=\203\302\207\303\304\305\306#\207" [c-version-sym 5\.34\.1 ((eval list "\240" 0 (progn (unless (c-face-name-p 'c-nonbreakable-space-face) (c-make-inverse-face 'font-lock-warning-face 'c-nonbreakable-space-face)) ''c-nonbreakable-space-face)) ("\\s|" 0 font-lock-warning-face t nil) c-font-lock-invalid-single-quotes (eval list "\\<\\(\\(?:false\\|null\\|true\\)\\)\\>" 1 c-constant-face-name) ("\\<\\(\\(?:@interface\\|abstract\\|break\\|c\\(?:a\\(?:se\\|tch\\)\\|lass\\|on\\(?:st\\|tinue\\)\\)\\|d\\(?:efault\\|o\\)\\|e\\(?:lse\\|num\\|xtends\\)\\|f\\(?:inal\\(?:ly\\)?\\|or\\)\\|goto\\|i\\(?:f\\|mp\\(?:lements\\|ort\\)\\|n\\(?:stanceof\\|terface\\)\\)\\|n\\(?:ative\\|ew\\)\\|p\\(?:ackage\\|r\\(?:ivate\\|otected\\)\\|ublic\\)\\|return\\|s\\(?:t\\(?:atic\\|rictfp\\)\\|uper\\|witch\\|ynchronized\\)\\|t\\(?:h\\(?:is\\|rows?\\)\\|r\\(?:ansient\\|y\\)\\)\\|\\(?:volat\\|wh\\)ile\\)\\)\\([^[:alnum:]_$]\\|$\\)" 1 font-lock-keyword-face) #[#1=(limit) "\305\300!\306\307	\310#\203Z\311\224b\210\312	!\204\311\225b\210\313 \314\216\315\311\224Tb\210`Sf\316=\203R\317u\210\320 \210`\321\315x\311W\203R\322`\323\"\204R\324`\323\f$\210\320 \210\202&+\311\225b\210\202)\315\207" [parse-sexp-lookup-properties limit save-match-data-internal id-end c-reference-face-name boundp re-search-forward "\\(\\.\\)\\(\\s \\|[\n
]\\)*\\([[:upper:]][[:alnum:]_$]*\\|\\*\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil 46 -1 c-backward-sws "[:alnum:]_$" get-text-property face put-text-property] 5] (eval list "\\(!\\)[^=]" 1 c-negation-char-face-name) (eval list #[#1# "\304\300!\305	\n\306#\203J\307\224b\210\310\n!\204\307\225b\210\311 \312\216\313\314\224\314\225\315\316$\210*\311 \317\216\314\225b\210\320 \210*\311 \321\216\322\n\306\323\211$\210*\314\225b\210\202)\323\207" [parse-sexp-lookup-properties c-known-type-key limit save-match-data-internal boundp re-search-forward t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face font-lock-type-face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-forward-sws #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-font-lock-declarators nil] 5]) (#[#1# "\303\300!\304\305	\306#\203;\307\224b\210\310	!\204\307\225b\210\311 \312\216\313\225b\210\314 \210*\311 \315\216\316	\306\317\211$\210*\313\225b\210\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal boundp re-search-forward "\\<\\(\\(?:@interface\\|class\\|enum\\|interface\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 1 c-forward-sws #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-font-lock-declarators nil] 5]) c-font-lock-labels c-font-lock-enum-tail c-font-lock-enum-body (eval list "\\<\\(\\(?:break\\|continue\\|goto\\)\\)\\>\\s *\\([[:alpha:]_@][[:alnum:]_$]*\\)" (list 2 c-label-face-name nil t)) (#[(limit) "\306\301!\307\310!`\311!@\312=\203`\202\n)b\210\313\314\315#\203R\316\224b\210\317!\204\316\225b\210\320 \321\216\315\322\315\323\324!\210`V\203Kb\210\325 \210-\202*\322\207" [BOD-limit parse-sexp-lookup-properties here limit save-match-data-internal c-promote-possible-types boundp c-determine-limit 1000 c-beginning-of-decl-1 same re-search-forward "\\<\\(\\(?:extends\\|imp\\(?:lements\\|ort\\)\\|new\\|package\\|super\\|throws\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-keyword-clause 1 c-fontify-recorded-types-and-refs c-record-ref-identifiers c-record-type-identifiers] 4]) (eval list "\\<\\(@[a-zA-Z0-9]+\\)\\>" 1 c-annotation-face)) c-get-lang-constant c-matchers-2 nil java-mode] 4) (#$ . 98542))
#@231 Accurate normal font locking for Java mode.
Like variable `java-font-lock-keywords-2' but detects declarations in a more
accurate way that works in most cases for arbitrary types without the
need for `java-font-lock-extra-types'.
(defconst java-font-lock-keywords-3 (byte-code "\301=\203\302\207\303\304\305\306#\207" [c-version-sym 5\.34\.1 ((eval list "\240" 0 (progn (unless (c-face-name-p 'c-nonbreakable-space-face) (c-make-inverse-face 'font-lock-warning-face 'c-nonbreakable-space-face)) ''c-nonbreakable-space-face)) ("\\s|" 0 font-lock-warning-face t nil) c-font-lock-invalid-single-quotes (eval list "\\<\\(\\(?:false\\|null\\|true\\)\\)\\>" 1 c-constant-face-name) ("\\<\\(\\(?:@interface\\|abstract\\|break\\|c\\(?:a\\(?:se\\|tch\\)\\|lass\\|on\\(?:st\\|tinue\\)\\)\\|d\\(?:efault\\|o\\)\\|e\\(?:lse\\|num\\|xtends\\)\\|f\\(?:inal\\(?:ly\\)?\\|or\\)\\|goto\\|i\\(?:f\\|mp\\(?:lements\\|ort\\)\\|n\\(?:stanceof\\|terface\\)\\)\\|n\\(?:ative\\|ew\\)\\|p\\(?:ackage\\|r\\(?:ivate\\|otected\\)\\|ublic\\)\\|return\\|s\\(?:t\\(?:atic\\|rictfp\\)\\|uper\\|witch\\|ynchronized\\)\\|t\\(?:h\\(?:is\\|rows?\\)\\|r\\(?:ansient\\|y\\)\\)\\|\\(?:volat\\|wh\\)ile\\)\\)\\([^[:alnum:]_$]\\|$\\)" 1 font-lock-keyword-face) #[(limit) "\305\300!\306\307	\310#\203Z\311\224b\210\312	!\204\311\225b\210\313 \314\216\315\311\224Tb\210`Sf\316=\203R\317u\210\320 \210`\321\315x\311W\203R\322`\323\"\204R\324`\323\f$\210\320 \210\202&+\311\225b\210\202)\315\207" [parse-sexp-lookup-properties limit save-match-data-internal id-end c-reference-face-name boundp re-search-forward "\\(\\.\\)\\(\\s \\|[\n
]\\)*\\([[:upper:]][[:alnum:]_$]*\\|\\*\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil 46 -1 c-backward-sws "[:alnum:]_$" get-text-property face put-text-property] 5] (eval list "\\(!\\)[^=]" 1 c-negation-char-face-name) c-font-lock-complex-decl-prepare c-font-lock-cut-off-declarators c-font-lock-declarations c-font-lock-enclosing-decls c-font-lock-<>-arglists ("\\<\\(\\(?:b\\(?:oolean\\|yte\\)\\|char\\|double\\|float\\|int\\|long\\|short\\|void\\)\\)\\>" 1 'font-lock-type-face) c-font-lock-enum-tail c-font-lock-enum-body (eval list "\\<\\(\\(?:break\\|continue\\|goto\\)\\)\\>\\s *\\([[:alpha:]_@][[:alnum:]_$]*\\)" (list 2 c-label-face-name nil t)) (#[(limit) "\306\301!\307\310!`\311!@\312=\203`\202\n)b\210\313\314\315#\203R\316\224b\210\317!\204\316\225b\210\320 \321\216\315\322\315\323\324!\210`V\203Kb\210\325 \210-\202*\322\207" [BOD-limit parse-sexp-lookup-properties here limit save-match-data-internal c-promote-possible-types boundp c-determine-limit 1000 c-beginning-of-decl-1 same re-search-forward "\\<\\(\\(?:extends\\|imp\\(?:lements\\|ort\\)\\|new\\|package\\|super\\|throws\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-keyword-clause 1 c-fontify-recorded-types-and-refs c-record-ref-identifiers c-record-type-identifiers] 4]) (eval list "\\<\\(@[a-zA-Z0-9]+\\)\\>" 1 c-annotation-face)) c-get-lang-constant c-matchers-3 nil java-mode] 4) (#$ . 102856))
#@48 Default expressions to highlight in Java mode.
(defvar java-font-lock-keywords java-font-lock-keywords-3 (#$ . 106057))
(defalias 'java-font-lock-keywords-2 #[nil "\301!\207" [java-font-lock-keywords-2 c-compose-keywords-list] 2])
(defalias 'java-font-lock-keywords-3 #[nil "\301!\207" [java-font-lock-keywords-3 c-compose-keywords-list] 2])
(defalias 'java-font-lock-keywords #[nil "\301!\207" [java-font-lock-keywords c-compose-keywords-list] 2])
(c-override-default-keywords 'idl-font-lock-keywords)
#@120 Minimal font locking for CORBA IDL mode.
Fontifies nothing except the syntactic fontification of strings and
comments.
(defconst idl-font-lock-keywords-1 (byte-code "\301=\203\302\207\303\304\305\306#\207" [c-version-sym 5\.34\.1 (c-maybe-font-lock-wrong-style-comments ("\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:error\\)\\)\\s +\\(.*\\)$" 4 font-lock-string-face t) (#[#1=(limit) "\306\300!\307\310	\311#\203i\312\224b\210\313	!\204\312\225b\210\314 \315\216\316\317\224\317\225\320$\210*\314 \321\216\317\224\317\225S\ff\322=\203Y
\316\211T\323\324$\210)\f\316\211T\323\325$\210)\202e
\326\211T\327#\210),\202)\330\207" [parse-sexp-lookup-properties limit save-match-data-internal font-lock-string-face end beg boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(?:include\\)\\(\\s \\|[\n
]\\)*\\(\\(//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)\\(\\s \\|[\n
]\\)*\\)*\\(<[^>\n
]*>?\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 8 face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 62 category c-<-as-paren-syntax c->-as-paren-syntax remove-text-properties (category nil) nil -pos- pos] 5]) (#[#1# "\304\300!\305\306	\307#\203m\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\224\203`\214\315\316\224\316\225\317\320$\210\314\225b\210e	}\210\321 \210\322!\203\\\315\310\224\310\225\317\323$\210\310\225b\210\321 \210\324f\325=\203\\\324u\210\2026)\202i\315\316\224\316\225\317\323$\210*\202)\324\207" [parse-sexp-lookup-properties limit save-match-data-internal c-symbol-key boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *define\\(\\(\\s \\|[\n
]\\)\\|//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)+\\([[:alpha:]_][[:alnum:]_$]*\\)\\(\\((\\)\\|\\([^(]\\|$\\)\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 8 put-text-property 6 face font-lock-function-name-face c-forward-sws looking-at font-lock-variable-name-face nil 44] 5]) (#[(limit) "\305\300!	\306=\203:\212\307 \210`)\310\311\n\312#\2039\313\224b\210\314\n!\204\313\225b\210\315 \316\216\317\320\224\320\225\321\f$\210*\202)`\nW\203z\310\322\n\312#\203z\313\224b\210\314\n!\204:\313\225b\210\323\225b\210\315 \324\216\313\225\310\311\n\325#\203v\317\320\224\320\225\321\f$\210\202b+\202:)\326\207" [parse-sexp-lookup-properties c-font-lock-context limit save-match-data-internal c-preprocessor-face-name boundp in-cpp-expr c-end-of-macro re-search-forward "\\(\\(?:defined\\)\\)\\([^[:alnum:]_$]\\|$\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:\\(?:el\\)?if\\)\\)\\([^[:alnum:]_$]\\|$\\)\\(\\\\\\(.\\|[\n
]\\)\\|[^\n
]\\)*" 3 #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] move nil] 5]) (#[#1# "\304\300!\305\306	\307#\203,\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\315\224\315\225\316$\210*\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal c-preprocessor-face-name boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\(\\s *#\\s *[[:alnum:]_$]+\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 3 face nil] 5]) (eval list #[(limit) "\302\303\304	\305#\211\203\306\224b\210\307	!\204\306\225b\210)\207" [res limit nil re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *if\\(n\\)def\\>" t 0 c-skip-comments-and-strings] 4] 3 c-negation-char-face-name 'append) (eval list "\240" 0 (progn (unless (c-face-name-p 'c-nonbreakable-space-face) (c-make-inverse-face 'font-lock-warning-face 'c-nonbreakable-space-face)) ''c-nonbreakable-space-face))) c-get-lang-constant c-matchers-1 nil idl-mode] 4) (#$ . 106570))
#@299 Fast normal font locking for CORBA IDL mode.
In addition to `idl-font-lock-keywords-1', this adds fontification of
keywords, simple types, declarations that are easy to recognize, the
user defined types on `idl-font-lock-extra-types', and the doc comment
styles specified by `c-doc-comment-style'.
(defconst idl-font-lock-keywords-2 (byte-code "\301=\203\302\207\303\304\305\306#\207" [c-version-sym 5\.34\.1 (c-maybe-font-lock-wrong-style-comments ("\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:error\\)\\)\\s +\\(.*\\)$" 4 font-lock-string-face t) (#[#1=(limit) "\306\300!\307\310	\311#\203i\312\224b\210\313	!\204\312\225b\210\314 \315\216\316\317\224\317\225\320$\210*\314 \321\216\317\224\317\225S\ff\322=\203Y
\316\211T\323\324$\210)\f\316\211T\323\325$\210)\202e
\326\211T\327#\210),\202)\330\207" [parse-sexp-lookup-properties limit save-match-data-internal font-lock-string-face end beg boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(?:include\\)\\(\\s \\|[\n
]\\)*\\(\\(//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)\\(\\s \\|[\n
]\\)*\\)*\\(<[^>\n
]*>?\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 8 face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 62 category c-<-as-paren-syntax c->-as-paren-syntax remove-text-properties (category nil) nil -pos- pos] 5]) (#[#1# "\304\300!\305\306	\307#\203m\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\224\203`\214\315\316\224\316\225\317\320$\210\314\225b\210e	}\210\321 \210\322!\203\\\315\310\224\310\225\317\323$\210\310\225b\210\321 \210\324f\325=\203\\\324u\210\2026)\202i\315\316\224\316\225\317\323$\210*\202)\324\207" [parse-sexp-lookup-properties limit save-match-data-internal c-symbol-key boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *define\\(\\(\\s \\|[\n
]\\)\\|//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)+\\([[:alpha:]_][[:alnum:]_$]*\\)\\(\\((\\)\\|\\([^(]\\|$\\)\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 8 put-text-property 6 face font-lock-function-name-face c-forward-sws looking-at font-lock-variable-name-face nil 44] 5]) (#[(limit) "\305\300!	\306=\203:\212\307 \210`)\310\311\n\312#\2039\313\224b\210\314\n!\204\313\225b\210\315 \316\216\317\320\224\320\225\321\f$\210*\202)`\nW\203z\310\322\n\312#\203z\313\224b\210\314\n!\204:\313\225b\210\323\225b\210\315 \324\216\313\225\310\311\n\325#\203v\317\320\224\320\225\321\f$\210\202b+\202:)\326\207" [parse-sexp-lookup-properties c-font-lock-context limit save-match-data-internal c-preprocessor-face-name boundp in-cpp-expr c-end-of-macro re-search-forward "\\(\\(?:defined\\)\\)\\([^[:alnum:]_$]\\|$\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:\\(?:el\\)?if\\)\\)\\([^[:alnum:]_$]\\|$\\)\\(\\\\\\(.\\|[\n
]\\)\\|[^\n
]\\)*" 3 #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] move nil] 5]) (#[#1# "\304\300!\305\306	\307#\203,\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\315\224\315\225\316$\210*\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal c-preprocessor-face-name boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\(\\s *#\\s *[[:alnum:]_$]+\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 3 face nil] 5]) (eval list #[(limit) "\302\303\304	\305#\211\203\306\224b\210\307	!\204\306\225b\210)\207" [res limit nil re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *if\\(n\\)def\\>" t 0 c-skip-comments-and-strings] 4] 3 c-negation-char-face-name 'append) (eval list "\240" 0 (progn (unless (c-face-name-p 'c-nonbreakable-space-face) (c-make-inverse-face 'font-lock-warning-face 'c-nonbreakable-space-face)) ''c-nonbreakable-space-face)) ("\\s|" 0 font-lock-warning-face t nil) c-font-lock-invalid-single-quotes (eval list "\\<\\(\\(?:\\(?:FALS\\|TRU\\)E\\)\\)\\>" 1 c-constant-face-name) ("\\<\\(\\(?:a\\(?:bstract\\|s\\|ttribute\\)\\|bindsTo\\|c\\(?:a\\(?:se\\|talog\\)\\|o\\(?:mpo\\(?:nent\\|sition\\)\\|n\\(?:s\\(?:t\\|umes\\)\\|text\\)\\)\\|ustom\\)\\|de\\(?:fault\\|legatesTo\\)\\|e\\(?:mits\\|n\\(?:tity\\|um\\)\\|venttype\\|x\\(?:ception\\|ecutor\\)\\)\\|f\\(?:ac\\(?:et\\|tory\\)\\|inder\\)\\|getraises\\|home\\|i\\(?:mp\\(?:lements\\|ort\\)\\|n\\(?:out\\|terface\\)?\\)\\|key\\|local\\|m\\(?:anages\\|\\(?:odu\\|ultip\\)le\\)\\|native\\|o\\(?:f\\|neway\\|ut\\)\\|p\\(?:r\\(?:i\\(?:mary\\(?:key\\)?\\|vate\\)\\|o\\(?:cess\\|vides\\|xy\\)\\)\\|ubli\\(?:c\\|shes\\)\\)\\|r\\(?:aises\\|eadonly\\)\\|s\\(?:cope\\|e\\(?:gment\\|rvice\\|ssion\\|traises\\)\\|t\\(?:ate\\|or\\(?:age\\(?:\\(?:hom\\|typ\\)e\\)?\\|e\\(?:dOn\\|s\\)\\)\\|ruct\\)\\|upports\\|witch\\)\\|t\\(?:runcatable\\|ype\\(?:def\\|id\\|prefix\\)\\)\\|u\\(?:nion\\|ses\\)\\|valuetype\\)\\)\\([^[:alnum:]_$]\\|$\\)" 1 font-lock-keyword-face) (#[(limit) "\302\303\304#\205*\305\224b\210\306!\204\307\310\224\311\"\204#\312\310\224\310\225\311	$\210\313\225b\210\202\207" [limit c-reference-face-name re-search-forward "\\(\\<\\([[:alpha:]_][[:alnum:]_$]*\\)\\(\\s \\|[\n
]\\)*\\(\\(?:::\\)\\)\\(\\s \\|[\n
]\\)*\\)\\([[:alpha:]_]\\)" t 0 c-skip-comments-and-strings get-text-property 2 face put-text-property 1] 5]) (eval list "\\(!\\)[^=]" 1 c-negation-char-face-name) (eval list #[#1# "\304\300!\305	\n\306#\203J\307\224b\210\310\n!\204\307\225b\210\311 \312\216\313\314\224\314\225\315\316$\210*\311 \317\216\314\225b\210\320 \210*\311 \321\216\322\n\306\323\211$\210*\314\225b\210\202)\323\207" [parse-sexp-lookup-properties c-known-type-key limit save-match-data-internal boundp re-search-forward t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face font-lock-type-face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-forward-sws #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-font-lock-declarators nil] 5]) (#[#1# "\303\300!\304\305	\306#\203;\307\224b\210\310	!\204\307\225b\210\311 \312\216\313\225b\210\314 \210*\311 \315\216\316	\306\317\211$\210*\313\225b\210\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal boundp re-search-forward "\\<\\(\\(?:c\\(?:atalog\\|omponent\\)\\|e\\(?:num\\|venttype\\|x\\(?:ception\\|ecutor\\)\\)\\|f\\(?:ac\\(?:et\\|tory\\)\\|inder\\)\\|home\\|interface\\|key\\|manages\\|native\\|s\\(?:egment\\|t\\(?:or\\(?:age\\(?:\\(?:hom\\|typ\\)e\\)\\|es\\)\\|ruct\\)\\)\\|union\\|valuetype\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 1 c-forward-sws #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-font-lock-declarators nil] 5]) c-font-lock-enum-tail c-font-lock-enum-body (#[(limit) "\306\301!\307\310!`\311!@\312=\203`\202\n)b\210\313\314\315#\203R\316\224b\210\317!\204\316\225b\210\320 \321\216\315\322\315\323\324!\210`V\203Kb\210\325 \210-\202*\322\207" [BOD-limit parse-sexp-lookup-properties here limit save-match-data-internal c-promote-possible-types boundp c-determine-limit 1000 c-beginning-of-decl-1 same re-search-forward "\\<\\(\\(?:as\\|compo\\(?:nent\\|sition\\)\\|eventtype\\|home\\|i\\(?:mp\\(?:lements\\|ort\\)\\|nterface\\)\\|m\\(?:anages\\|odule\\)\\|native\\|of\\|primarykey\\|s\\(?:cope\\|torage\\(?:\\(?:hom\\|typ\\)e\\)\\|upports\\)\\|valuetype\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-keyword-clause 1 c-fontify-recorded-types-and-refs c-record-ref-identifiers c-record-type-identifiers] 4]) (#[#1# "\306\300!\307\310	\311#\2039\312\224b\210\313	!\204\312\225b\210\314 \315\216\311\316\311\317\320!\210`	V\2032	b\210\321 \210-\202)\316\207" [parse-sexp-lookup-properties limit save-match-data-internal c-promote-possible-types c-record-ref-identifiers c-record-type-identifiers boundp re-search-forward "\\<\\(\\(?:switch\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-keyword-clause 1 c-fontify-recorded-types-and-refs] 4])) c-get-lang-constant c-matchers-2 nil idl-mode] 4) (#$ . 110729))
#@238 Accurate normal font locking for CORBA IDL mode.
Like the variable `idl-font-lock-keywords-2' but detects declarations in a more
accurate way that works in most cases for arbitrary types without the
need for `idl-font-lock-extra-types'.
(defconst idl-font-lock-keywords-3 (byte-code "\301=\203\302\207\303\304\305\306#\207" [c-version-sym 5\.34\.1 (c-maybe-font-lock-wrong-style-comments ("\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:error\\)\\)\\s +\\(.*\\)$" 4 font-lock-string-face t) (#[#1=(limit) "\306\300!\307\310	\311#\203i\312\224b\210\313	!\204\312\225b\210\314 \315\216\316\317\224\317\225\320$\210*\314 \321\216\317\224\317\225S\ff\322=\203Y
\316\211T\323\324$\210)\f\316\211T\323\325$\210)\202e
\326\211T\327#\210),\202)\330\207" [parse-sexp-lookup-properties limit save-match-data-internal font-lock-string-face end beg boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(?:include\\)\\(\\s \\|[\n
]\\)*\\(\\(//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)\\(\\s \\|[\n
]\\)*\\)*\\(<[^>\n
]*>?\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 8 face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 62 category c-<-as-paren-syntax c->-as-paren-syntax remove-text-properties (category nil) nil -pos- pos] 5]) (#[#1# "\304\300!\305\306	\307#\203m\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\224\203`\214\315\316\224\316\225\317\320$\210\314\225b\210e	}\210\321 \210\322!\203\\\315\310\224\310\225\317\323$\210\310\225b\210\321 \210\324f\325=\203\\\324u\210\2026)\202i\315\316\224\316\225\317\323$\210*\202)\324\207" [parse-sexp-lookup-properties limit save-match-data-internal c-symbol-key boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *define\\(\\(\\s \\|[\n
]\\)\\|//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)+\\([[:alpha:]_][[:alnum:]_$]*\\)\\(\\((\\)\\|\\([^(]\\|$\\)\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 8 put-text-property 6 face font-lock-function-name-face c-forward-sws looking-at font-lock-variable-name-face nil 44] 5]) (#[(limit) "\305\300!	\306=\203:\212\307 \210`)\310\311\n\312#\2039\313\224b\210\314\n!\204\313\225b\210\315 \316\216\317\320\224\320\225\321\f$\210*\202)`\nW\203z\310\322\n\312#\203z\313\224b\210\314\n!\204:\313\225b\210\323\225b\210\315 \324\216\313\225\310\311\n\325#\203v\317\320\224\320\225\321\f$\210\202b+\202:)\326\207" [parse-sexp-lookup-properties c-font-lock-context limit save-match-data-internal c-preprocessor-face-name boundp in-cpp-expr c-end-of-macro re-search-forward "\\(\\(?:defined\\)\\)\\([^[:alnum:]_$]\\|$\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:\\(?:el\\)?if\\)\\)\\([^[:alnum:]_$]\\|$\\)\\(\\\\\\(.\\|[\n
]\\)\\|[^\n
]\\)*" 3 #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] move nil] 5]) (#[#1# "\304\300!\305\306	\307#\203,\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\315\224\315\225\316$\210*\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal c-preprocessor-face-name boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\(\\s *#\\s *[[:alnum:]_$]+\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 3 face nil] 5]) (eval list #[(limit) "\302\303\304	\305#\211\203\306\224b\210\307	!\204\306\225b\210)\207" [res limit nil re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *if\\(n\\)def\\>" t 0 c-skip-comments-and-strings] 4] 3 c-negation-char-face-name 'append) (eval list "\240" 0 (progn (unless (c-face-name-p 'c-nonbreakable-space-face) (c-make-inverse-face 'font-lock-warning-face 'c-nonbreakable-space-face)) ''c-nonbreakable-space-face)) ("\\s|" 0 font-lock-warning-face t nil) c-font-lock-invalid-single-quotes (eval list "\\<\\(\\(?:\\(?:FALS\\|TRU\\)E\\)\\)\\>" 1 c-constant-face-name) ("\\<\\(\\(?:a\\(?:bstract\\|s\\|ttribute\\)\\|bindsTo\\|c\\(?:a\\(?:se\\|talog\\)\\|o\\(?:mpo\\(?:nent\\|sition\\)\\|n\\(?:s\\(?:t\\|umes\\)\\|text\\)\\)\\|ustom\\)\\|de\\(?:fault\\|legatesTo\\)\\|e\\(?:mits\\|n\\(?:tity\\|um\\)\\|venttype\\|x\\(?:ception\\|ecutor\\)\\)\\|f\\(?:ac\\(?:et\\|tory\\)\\|inder\\)\\|getraises\\|home\\|i\\(?:mp\\(?:lements\\|ort\\)\\|n\\(?:out\\|terface\\)?\\)\\|key\\|local\\|m\\(?:anages\\|\\(?:odu\\|ultip\\)le\\)\\|native\\|o\\(?:f\\|neway\\|ut\\)\\|p\\(?:r\\(?:i\\(?:mary\\(?:key\\)?\\|vate\\)\\|o\\(?:cess\\|vides\\|xy\\)\\)\\|ubli\\(?:c\\|shes\\)\\)\\|r\\(?:aises\\|eadonly\\)\\|s\\(?:cope\\|e\\(?:gment\\|rvice\\|ssion\\|traises\\)\\|t\\(?:ate\\|or\\(?:age\\(?:\\(?:hom\\|typ\\)e\\)?\\|e\\(?:dOn\\|s\\)\\)\\|ruct\\)\\|upports\\|witch\\)\\|t\\(?:runcatable\\|ype\\(?:def\\|id\\|prefix\\)\\)\\|u\\(?:nion\\|ses\\)\\|valuetype\\)\\)\\([^[:alnum:]_$]\\|$\\)" 1 font-lock-keyword-face) (#[(limit) "\302\303\304#\205*\305\224b\210\306!\204\307\310\224\311\"\204#\312\310\224\310\225\311	$\210\313\225b\210\202\207" [limit c-reference-face-name re-search-forward "\\(\\<\\([[:alpha:]_][[:alnum:]_$]*\\)\\(\\s \\|[\n
]\\)*\\(\\(?:::\\)\\)\\(\\s \\|[\n
]\\)*\\)\\([[:alpha:]_]\\)" t 0 c-skip-comments-and-strings get-text-property 2 face put-text-property 1] 5]) (eval list "\\(!\\)[^=]" 1 c-negation-char-face-name) c-font-lock-complex-decl-prepare c-font-lock-cut-off-declarators c-font-lock-declarations c-font-lock-enclosing-decls c-font-lock-<>-arglists ("\\<\\(\\(?:Object\\|ValueBase\\|any\\|boolean\\|char\\|double\\|f\\(?:ixed\\|loat\\)\\|long\\|octet\\|ref\\|s\\(?:equence\\|hort\\|tr\\(?:[io]ng\\)\\)\\|unsigned\\|void\\|w\\(?:char\\|string\\)\\)\\)\\>" 1 'font-lock-type-face) c-font-lock-enum-tail c-font-lock-enum-body (#[(limit) "\306\301!\307\310!`\311!@\312=\203`\202\n)b\210\313\314\315#\203R\316\224b\210\317!\204\316\225b\210\320 \321\216\315\322\315\323\324!\210`V\203Kb\210\325 \210-\202*\322\207" [BOD-limit parse-sexp-lookup-properties here limit save-match-data-internal c-promote-possible-types boundp c-determine-limit 1000 c-beginning-of-decl-1 same re-search-forward "\\<\\(\\(?:as\\|compo\\(?:nent\\|sition\\)\\|eventtype\\|home\\|i\\(?:mp\\(?:lements\\|ort\\)\\|nterface\\)\\|m\\(?:anages\\|odule\\)\\|native\\|of\\|primarykey\\|s\\(?:cope\\|torage\\(?:\\(?:hom\\|typ\\)e\\)\\|upports\\)\\|valuetype\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-keyword-clause 1 c-fontify-recorded-types-and-refs c-record-ref-identifiers c-record-type-identifiers] 4]) (#[#1# "\306\300!\307\310	\311#\2039\312\224b\210\313	!\204\312\225b\210\314 \315\216\311\316\311\317\320!\210`	V\2032	b\210\321 \210-\202)\316\207" [parse-sexp-lookup-properties limit save-match-data-internal c-promote-possible-types c-record-ref-identifiers c-record-type-identifiers boundp re-search-forward "\\<\\(\\(?:switch\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-keyword-clause 1 c-fontify-recorded-types-and-refs] 4])) c-get-lang-constant c-matchers-3 nil idl-mode] 4) (#$ . 119550))
#@53 Default expressions to highlight in CORBA IDL mode.
(defvar idl-font-lock-keywords idl-font-lock-keywords-3 (#$ . 127165))
(defalias 'idl-font-lock-keywords-2 #[nil "\301!\207" [idl-font-lock-keywords-2 c-compose-keywords-list] 2])
(defalias 'idl-font-lock-keywords-3 #[nil "\301!\207" [idl-font-lock-keywords-3 c-compose-keywords-list] 2])
(defalias 'idl-font-lock-keywords #[nil "\301!\207" [idl-font-lock-keywords c-compose-keywords-list] 2])
(c-override-default-keywords 'pike-font-lock-keywords)
#@146 Minimal font locking for Pike mode.
Fontifies only preprocessor directives (in addition to the syntactic
fontification of strings and comments).
(defconst pike-font-lock-keywords-1 (byte-code "\301=\203\302\207\303\304\305\306#\207" [c-version-sym 5\.34\.1 (c-maybe-font-lock-wrong-style-comments ("\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:error\\|warning\\)\\)\\s +\\(.*\\)$" 4 font-lock-string-face t) (#[#1=(limit) "\306\300!\307\310	\311#\203i\312\224b\210\313	!\204\312\225b\210\314 \315\216\316\317\224\317\225\320$\210*\314 \321\216\317\224\317\225S\ff\322=\203Y
\316\211T\323\324$\210)\f\316\211T\323\325$\210)\202e
\326\211T\327#\210),\202)\330\207" [parse-sexp-lookup-properties limit save-match-data-internal font-lock-string-face end beg boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(?:include\\)\\(\\s \\|[\n
]\\)*\\(\\(//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)\\(\\s \\|[\n
]\\)*\\)*\\(<[^>\n
]*>?\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 8 face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 62 category c-<-as-paren-syntax c->-as-paren-syntax remove-text-properties (category nil) nil -pos- pos] 5]) (#[#1# "\304\300!\305\306	\307#\203m\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\224\203`\214\315\316\224\316\225\317\320$\210\314\225b\210e	}\210\321 \210\322!\203\\\315\310\224\310\225\317\323$\210\310\225b\210\321 \210\324f\325=\203\\\324u\210\2026)\202i\315\316\224\316\225\317\323$\210*\202)\324\207" [parse-sexp-lookup-properties limit save-match-data-internal c-symbol-key boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *define\\(\\(\\s \\|[\n
]\\)\\|//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)+\\([[:alpha:]_][[:alnum:]_$]*\\|\\(?:`\\(?:()\\|\\+=\\|->=?\\|<<\\|==\\|>>\\|\\[]=?\\|`\\(?:<<\\|>>\\|[%&*+/|^-]\\)\\|[!%&*+/<>|~^-]\\)\\)\\)\\(\\((\\)\\|\\([^(]\\|$\\)\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 8 put-text-property 6 face font-lock-function-name-face c-forward-sws looking-at font-lock-variable-name-face nil 44] 5]) (#[(limit) "\305\300!	\306=\203:\212\307 \210`)\310\311\n\312#\2039\313\224b\210\314\n!\204\313\225b\210\315 \316\216\317\320\224\320\225\321\f$\210*\202)`\nW\203z\310\322\n\312#\203z\313\224b\210\314\n!\204:\313\225b\210\323\225b\210\315 \324\216\313\225\310\311\n\325#\203v\317\320\224\320\225\321\f$\210\202b+\202:)\326\207" [parse-sexp-lookup-properties c-font-lock-context limit save-match-data-internal c-preprocessor-face-name boundp in-cpp-expr c-end-of-macro re-search-forward "\\(\\(?:constant\\|defined\\|efun\\)\\)\\([^[:alnum:]_$]\\|$\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:\\(?:el\\)?if\\)\\)\\([^[:alnum:]_$]\\|$\\)\\(\\\\\\(.\\|[\n
]\\)\\|[^\n
]\\)*" 3 #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] move nil] 5]) (#[#1# "\304\300!\305\306	\307#\203,\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\315\224\315\225\316$\210*\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal c-preprocessor-face-name boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\(\\s *#\\s *[[:alnum:]_$]+\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 3 face nil] 5]) (eval list #[(limit) "\302\303\304	\305#\211\203\306\224b\210\307	!\204\306\225b\210)\207" [res limit nil re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *if\\(n\\)def\\>" t 0 c-skip-comments-and-strings] 4] 3 c-negation-char-face-name 'append) (eval list "\\`#![^\n
]*" 0 c-preprocessor-face-name) (eval list "\240" 0 (progn (unless (c-face-name-p 'c-nonbreakable-space-face) (c-make-inverse-face 'font-lock-warning-face 'c-nonbreakable-space-face)) ''c-nonbreakable-space-face))) c-get-lang-constant c-matchers-1 nil pike-mode] 4) (#$ . 127676))
#@296 Fast normal font locking for Pike mode.
In addition to `pike-font-lock-keywords-1', this adds fontification of
keywords, simple types, declarations that are easy to recognize, the
user defined types on `pike-font-lock-extra-types', and the doc
comment styles specified by `c-doc-comment-style'.
(defconst pike-font-lock-keywords-2 (byte-code "\301=\203\302\207\303\304\305\306#\207" [c-version-sym 5\.34\.1 (c-maybe-font-lock-wrong-style-comments ("\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:error\\|warning\\)\\)\\s +\\(.*\\)$" 4 font-lock-string-face t) (#[#1=(limit) "\306\300!\307\310	\311#\203i\312\224b\210\313	!\204\312\225b\210\314 \315\216\316\317\224\317\225\320$\210*\314 \321\216\317\224\317\225S\ff\322=\203Y
\316\211T\323\324$\210)\f\316\211T\323\325$\210)\202e
\326\211T\327#\210),\202)\330\207" [parse-sexp-lookup-properties limit save-match-data-internal font-lock-string-face end beg boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(?:include\\)\\(\\s \\|[\n
]\\)*\\(\\(//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)\\(\\s \\|[\n
]\\)*\\)*\\(<[^>\n
]*>?\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 8 face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 62 category c-<-as-paren-syntax c->-as-paren-syntax remove-text-properties (category nil) nil -pos- pos] 5]) (#[#1# "\304\300!\305\306	\307#\203m\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\224\203`\214\315\316\224\316\225\317\320$\210\314\225b\210e	}\210\321 \210\322!\203\\\315\310\224\310\225\317\323$\210\310\225b\210\321 \210\324f\325=\203\\\324u\210\2026)\202i\315\316\224\316\225\317\323$\210*\202)\324\207" [parse-sexp-lookup-properties limit save-match-data-internal c-symbol-key boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *define\\(\\(\\s \\|[\n
]\\)\\|//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)+\\([[:alpha:]_][[:alnum:]_$]*\\|\\(?:`\\(?:()\\|\\+=\\|->=?\\|<<\\|==\\|>>\\|\\[]=?\\|`\\(?:<<\\|>>\\|[%&*+/|^-]\\)\\|[!%&*+/<>|~^-]\\)\\)\\)\\(\\((\\)\\|\\([^(]\\|$\\)\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 8 put-text-property 6 face font-lock-function-name-face c-forward-sws looking-at font-lock-variable-name-face nil 44] 5]) (#[(limit) "\305\300!	\306=\203:\212\307 \210`)\310\311\n\312#\2039\313\224b\210\314\n!\204\313\225b\210\315 \316\216\317\320\224\320\225\321\f$\210*\202)`\nW\203z\310\322\n\312#\203z\313\224b\210\314\n!\204:\313\225b\210\323\225b\210\315 \324\216\313\225\310\311\n\325#\203v\317\320\224\320\225\321\f$\210\202b+\202:)\326\207" [parse-sexp-lookup-properties c-font-lock-context limit save-match-data-internal c-preprocessor-face-name boundp in-cpp-expr c-end-of-macro re-search-forward "\\(\\(?:constant\\|defined\\|efun\\)\\)\\([^[:alnum:]_$]\\|$\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:\\(?:el\\)?if\\)\\)\\([^[:alnum:]_$]\\|$\\)\\(\\\\\\(.\\|[\n
]\\)\\|[^\n
]\\)*" 3 #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] move nil] 5]) (#[#1# "\304\300!\305\306	\307#\203,\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\315\224\315\225\316$\210*\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal c-preprocessor-face-name boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\(\\s *#\\s *[[:alnum:]_$]+\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 3 face nil] 5]) (eval list #[(limit) "\302\303\304	\305#\211\203\306\224b\210\307	!\204\306\225b\210)\207" [res limit nil re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *if\\(n\\)def\\>" t 0 c-skip-comments-and-strings] 4] 3 c-negation-char-face-name 'append) (eval list "\\`#![^\n
]*" 0 c-preprocessor-face-name) (eval list "\240" 0 (progn (unless (c-face-name-p 'c-nonbreakable-space-face) (c-make-inverse-face 'font-lock-warning-face 'c-nonbreakable-space-face)) ''c-nonbreakable-space-face)) ("\\s|" 0 font-lock-warning-face t nil) c-font-lock-invalid-single-quotes (eval list "\\(\\=.?\\|[^>]\\|[^-]>\\)\\<\\(\\(?:UNDEFINED\\)\\)\\>" 2 c-constant-face-name) ("\\(\\=.?\\|[^>]\\|[^-]>\\)\\<\\(\\(?:break\\|c\\(?:a\\(?:se\\|tch\\)\\|lass\\|on\\(?:stant\\|tinue\\)\\)\\|d\\(?:efault\\|o\\)\\|e\\(?:lse\\|num\\)\\|f\\(?:inal\\|or\\(?:each\\)?\\)\\|g\\(?:auge\\|lobal\\|oto\\)\\|i\\(?:f\\|mport\\|n\\(?:herit\\|line\\)\\)\\|l\\(?:ambda\\|ocal\\)\\|nomask\\|optional\\|p\\(?:r\\(?:edef\\|ivate\\|otected\\)\\|ublic\\)\\|return\\|s\\(?:tatic\\|witch\\)\\|t\\(?:h\\(?:is\\|row\\)\\|ypedef\\)\\|variant\\|while\\)\\)\\([^[:alnum:]_$]\\|$\\)" 2 font-lock-keyword-face) (#[(limit) "\302\303\304#\205*\305\224b\210\306!\204\307\310\224\311\"\204#\312\310\224\310\225\311	$\210\313\225b\210\202\207" [limit c-reference-face-name re-search-forward "\\(\\<\\([[:alpha:]_][[:alnum:]_$]*\\|\\(?:`\\(?:()\\|\\+=\\|->=?\\|<<\\|==\\|>>\\|\\[]=?\\|`\\(?:<<\\|>>\\|[%&*+/|^-]\\)\\|[!%&*+/<>|~^-]\\)\\)\\)\\(\\s \\|[\n
]\\)*\\(\\(?:\\.\\|::\\)\\)\\(\\s \\|[\n
]\\)*\\)\\([[:alpha:]_`]\\)" t 0 c-skip-comments-and-strings get-text-property 2 face put-text-property 1] 5]) (eval list "\\(!\\)[^=]" 1 c-negation-char-face-name) (eval list #[#1# "\304\300!\305	\n\306#\203J\307\224b\210\310\n!\204\307\225b\210\311 \312\216\313\314\224\314\225\315\316$\210*\311 \317\216\314\225b\210\320 \210*\311 \321\216\322\n\306\323\211$\210*\314\225b\210\202)\323\207" [parse-sexp-lookup-properties c-known-type-key limit save-match-data-internal boundp re-search-forward t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face font-lock-type-face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-forward-sws #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-font-lock-declarators nil] 5]) (#[#1# "\303\300!\304\305	\306#\203;\307\224b\210\310	!\204\307\225b\210\311 \312\216\313\225b\210\314 \210*\311 \315\216\316	\306\317\211$\210*\313\225b\210\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal boundp re-search-forward "\\<\\(\\(?:c\\(?:lass\\|onstant\\)\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 1 c-forward-sws #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] c-font-lock-declarators nil] 5]) c-font-lock-labels c-font-lock-enum-tail c-font-lock-enum-body (eval list "\\<\\(\\(?:break\\|continue\\|goto\\)\\)\\>\\s *\\([[:alpha:]_][[:alnum:]_$]*\\|\\(?:`\\(?:()\\|\\+=\\|->=?\\|<<\\|==\\|>>\\|\\[]=?\\|`\\(?:<<\\|>>\\|[%&*+/|^-]\\)\\|[!%&*+/<>|~^-]\\)\\)\\)" (list 2 c-label-face-name nil t)) (#[(limit) "\306\301!\307\310!`\311!@\312=\203`\202\n)b\210\313\314\315#\203R\316\224b\210\317!\204\316\225b\210\320 \321\216\315\322\315\323\324!\210`V\203Kb\210\325 \210-\202*\322\207" [BOD-limit parse-sexp-lookup-properties here limit save-match-data-internal c-promote-possible-types boundp c-determine-limit 1000 c-beginning-of-decl-1 same re-search-forward "\\<\\(\\(?:i\\(?:\\(?:mpor\\|nheri\\)t\\)\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-keyword-clause 1 c-fontify-recorded-types-and-refs c-record-ref-identifiers c-record-type-identifiers] 4]) (#[#1# "\306\300!\307\310	\311#\2039\312\224b\210\313	!\204\312\225b\210\314 \315\216\311\316\311\317\320!\210`	V\2032	b\210\321 \210-\202)\316\207" [parse-sexp-lookup-properties limit save-match-data-internal c-promote-possible-types c-record-ref-identifiers c-record-type-identifiers boundp re-search-forward "\\<\\(\\(?:array\\|function\\|int\\|m\\(?:apping\\|ultiset\\)\\|object\\|program\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-keyword-clause 1 c-fontify-recorded-types-and-refs] 4])) c-get-lang-constant c-matchers-2 nil pike-mode] 4) (#$ . 132054))
#@235 Accurate normal font locking for Pike mode.
Like the variable `pike-font-lock-keywords-2' but detects declarations in a more
accurate way that works in most cases for arbitrary types without the
need for `pike-font-lock-extra-types'.
(defconst pike-font-lock-keywords-3 (byte-code "\301=\203\302\207\303\304\305\306#\207" [c-version-sym 5\.34\.1 (c-maybe-font-lock-wrong-style-comments ("\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:error\\|warning\\)\\)\\s +\\(.*\\)$" 4 font-lock-string-face t) (#[#1=(limit) "\306\300!\307\310	\311#\203i\312\224b\210\313	!\204\312\225b\210\314 \315\216\316\317\224\317\225\320$\210*\314 \321\216\317\224\317\225S\ff\322=\203Y
\316\211T\323\324$\210)\f\316\211T\323\325$\210)\202e
\326\211T\327#\210),\202)\330\207" [parse-sexp-lookup-properties limit save-match-data-internal font-lock-string-face end beg boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(?:include\\)\\(\\s \\|[\n
]\\)*\\(\\(//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)\\(\\s \\|[\n
]\\)*\\)*\\(<[^>\n
]*>?\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 8 face #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 62 category c-<-as-paren-syntax c->-as-paren-syntax remove-text-properties (category nil) nil -pos- pos] 5]) (#[#1# "\304\300!\305\306	\307#\203m\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\224\203`\214\315\316\224\316\225\317\320$\210\314\225b\210e	}\210\321 \210\322!\203\\\315\310\224\310\225\317\323$\210\310\225b\210\321 \210\324f\325=\203\\\324u\210\2026)\202i\315\316\224\316\225\317\323$\210*\202)\324\207" [parse-sexp-lookup-properties limit save-match-data-internal c-symbol-key boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *define\\(\\(\\s \\|[\n
]\\)\\|//[^\n
]*[\n
]\\|/\\*[^*\n
]*\\(\\*+[^*\n
/][^*\n
]*\\)*\\*+/\\|\\\\[\n
]\\|\\s!\\S!*\\s!\\)+\\([[:alpha:]_][[:alnum:]_$]*\\|\\(?:`\\(?:()\\|\\+=\\|->=?\\|<<\\|==\\|>>\\|\\[]=?\\|`\\(?:<<\\|>>\\|[%&*+/|^-]\\)\\|[!%&*+/<>|~^-]\\)\\)\\)\\(\\((\\)\\|\\([^(]\\|$\\)\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] 8 put-text-property 6 face font-lock-function-name-face c-forward-sws looking-at font-lock-variable-name-face nil 44] 5]) (#[(limit) "\305\300!	\306=\203:\212\307 \210`)\310\311\n\312#\2039\313\224b\210\314\n!\204\313\225b\210\315 \316\216\317\320\224\320\225\321\f$\210*\202)`\nW\203z\310\322\n\312#\203z\313\224b\210\314\n!\204:\313\225b\210\323\225b\210\315 \324\216\313\225\310\311\n\325#\203v\317\320\224\320\225\321\f$\210\202b+\202:)\326\207" [parse-sexp-lookup-properties c-font-lock-context limit save-match-data-internal c-preprocessor-face-name boundp in-cpp-expr c-end-of-macro re-search-forward "\\(\\(?:constant\\|defined\\|efun\\)\\)\\([^[:alnum:]_$]\\|$\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 1 face "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *\\(\\(?:\\(?:el\\)?if\\)\\)\\([^[:alnum:]_$]\\|$\\)\\(\\\\\\(.\\|[\n
]\\)\\|[^\n
]\\)*" 3 #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] move nil] 5]) (#[#1# "\304\300!\305\306	\307#\203,\310\224b\210\311	!\204\310\225b\210\312 \313\216\314\315\224\315\225\316$\210*\202)\317\207" [parse-sexp-lookup-properties limit save-match-data-internal c-preprocessor-face-name boundp re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\(\\s *#\\s *[[:alnum:]_$]+\\)" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] put-text-property 3 face nil] 5]) (eval list #[(limit) "\302\303\304	\305#\211\203\306\224b\210\307	!\204\306\225b\210)\207" [res limit nil re-search-forward "\\(\\=\\|\\(\\=\\|[^\\]\\)[\n
]\\)\\s *#\\s *if\\(n\\)def\\>" t 0 c-skip-comments-and-strings] 4] 3 c-negation-char-face-name 'append) (eval list "\\`#![^\n
]*" 0 c-preprocessor-face-name) (eval list "\240" 0 (progn (unless (c-face-name-p 'c-nonbreakable-space-face) (c-make-inverse-face 'font-lock-warning-face 'c-nonbreakable-space-face)) ''c-nonbreakable-space-face)) ("\\s|" 0 font-lock-warning-face t nil) c-font-lock-invalid-single-quotes (eval list "\\(\\=.?\\|[^>]\\|[^-]>\\)\\<\\(\\(?:UNDEFINED\\)\\)\\>" 2 c-constant-face-name) ("\\(\\=.?\\|[^>]\\|[^-]>\\)\\<\\(\\(?:break\\|c\\(?:a\\(?:se\\|tch\\)\\|lass\\|on\\(?:stant\\|tinue\\)\\)\\|d\\(?:efault\\|o\\)\\|e\\(?:lse\\|num\\)\\|f\\(?:inal\\|or\\(?:each\\)?\\)\\|g\\(?:auge\\|lobal\\|oto\\)\\|i\\(?:f\\|mport\\|n\\(?:herit\\|line\\)\\)\\|l\\(?:ambda\\|ocal\\)\\|nomask\\|optional\\|p\\(?:r\\(?:edef\\|ivate\\|otected\\)\\|ublic\\)\\|return\\|s\\(?:tatic\\|witch\\)\\|t\\(?:h\\(?:is\\|row\\)\\|ypedef\\)\\|variant\\|while\\)\\)\\([^[:alnum:]_$]\\|$\\)" 2 font-lock-keyword-face) (#[(limit) "\302\303\304#\205*\305\224b\210\306!\204\307\310\224\311\"\204#\312\310\224\310\225\311	$\210\313\225b\210\202\207" [limit c-reference-face-name re-search-forward "\\(\\<\\([[:alpha:]_][[:alnum:]_$]*\\|\\(?:`\\(?:()\\|\\+=\\|->=?\\|<<\\|==\\|>>\\|\\[]=?\\|`\\(?:<<\\|>>\\|[%&*+/|^-]\\)\\|[!%&*+/<>|~^-]\\)\\)\\)\\(\\s \\|[\n
]\\)*\\(\\(?:\\.\\|::\\)\\)\\(\\s \\|[\n
]\\)*\\)\\([[:alpha:]_`]\\)" t 0 c-skip-comments-and-strings get-text-property 2 face put-text-property 1] 5]) (eval list "\\(!\\)[^=]" 1 c-negation-char-face-name) c-font-lock-complex-decl-prepare c-font-lock-cut-off-declarators c-font-lock-declarations c-font-lock-enclosing-decls ("\\(\\=.?\\|[^>]\\|[^-]>\\)\\<\\(\\(?:array\\|f\\(?:loat\\|unction\\)\\|int\\|m\\(?:apping\\|ixed\\|ultiset\\)\\|object\\|program\\|string\\|this_program\\|void\\)\\)\\>" 2 font-lock-type-face) c-font-lock-enum-tail c-font-lock-enum-body (eval list "\\<\\(\\(?:break\\|continue\\|goto\\)\\)\\>\\s *\\([[:alpha:]_][[:alnum:]_$]*\\|\\(?:`\\(?:()\\|\\+=\\|->=?\\|<<\\|==\\|>>\\|\\[]=?\\|`\\(?:<<\\|>>\\|[%&*+/|^-]\\)\\|[!%&*+/<>|~^-]\\)\\)\\)" (list 2 c-label-face-name nil t)) (#[(limit) "\306\301!\307\310!`\311!@\312=\203`\202\n)b\210\313\314\315#\203R\316\224b\210\317!\204\316\225b\210\320 \321\216\315\322\315\323\324!\210`V\203Kb\210\325 \210-\202*\322\207" [BOD-limit parse-sexp-lookup-properties here limit save-match-data-internal c-promote-possible-types boundp c-determine-limit 1000 c-beginning-of-decl-1 same re-search-forward "\\<\\(\\(?:i\\(?:\\(?:mpor\\|nheri\\)t\\)\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-keyword-clause 1 c-fontify-recorded-types-and-refs c-record-ref-identifiers c-record-type-identifiers] 4]) (#[#1# "\306\300!\307\310	\311#\2039\312\224b\210\313	!\204\312\225b\210\314 \315\216\311\316\311\317\320!\210`	V\2032	b\210\321 \210-\202)\316\207" [parse-sexp-lookup-properties limit save-match-data-internal c-promote-possible-types c-record-ref-identifiers c-record-type-identifiers boundp re-search-forward "\\<\\(\\(?:array\\|function\\|int\\|m\\(?:apping\\|ultiset\\)\\|object\\|program\\)\\)\\>" t 0 c-skip-comments-and-strings match-data #[nil "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3] nil c-forward-keyword-clause 1 c-fontify-recorded-types-and-refs] 4])) c-get-lang-constant c-matchers-3 nil pike-mode] 4) (#$ . 140665))
#@48 Default expressions to highlight in Pike mode.
(defvar pike-font-lock-keywords pike-font-lock-keywords-3 (#$ . 148233))
(defalias 'pike-font-lock-keywords-2 #[nil "\301 \210\302!\207" [pike-font-lock-keywords-2 c-set-doc-comment-res c-compose-keywords-list] 2])
(defalias 'pike-font-lock-keywords-3 #[nil "\301 \210\302!\207" [pike-font-lock-keywords-3 c-set-doc-comment-res c-compose-keywords-list] 2])
(defalias 'pike-font-lock-keywords #[nil "\301 \210\302!\207" [pike-font-lock-keywords c-set-doc-comment-res c-compose-keywords-list] 2])
(defalias 'c-set-doc-comment-re-element '(macro . #[(suffix) "\302\303P!\304\305\306\307\310\311\312\313\314\315\316\317\320EDDC\321BBE\322BBE\323\324\325\310\326\327\330	DD\331BB\332\330	DDF\257)\207" [suffix var intern "c-doc" let* ((styles (c-get-doc-comment-style)) elts) (when (atom styles) (setq styles (list styles))) setq elts mapcar lambda (style) let sym intern-soft concat (symbol-name style) ((and sym (boundp sym) (symbol-value sym))) (styles) (setq elts (delq nil elts)) (setq elts (and elts (concat "\\(" (mapconcat #'identity elts "\\|") "\\)"))) if set make-local-variable quote (elts) kill-local-variable] 14]))
(defalias 'c-set-doc-comment-char-list '(macro . #[(suffix) "\302\303P!\304\305\306\307\310\311\312\313\314\315\316\317\320EDDC\321BBE\322BBE\323\324\310\325\326\327	DD\330BB\331\327	DDF\257)\207" [suffix var intern "c-doc" let* ((styles (c-get-doc-comment-style)) elts) (when (atom styles) (setq styles (list styles))) setq elts mapcar lambda (style) let sym intern-soft concat (symbol-name style) ((and sym (boundp sym) (symbol-value sym))) (styles) (setq elts (delq nil elts)) if set make-local-variable quote (elts) kill-local-variable] 14]))
(defalias 'c-set-doc-comment-res #[nil "\305 \306:\204
C\307\310\"\311\306	\"\211\205#\312\313\314	\315#\316Q\211\2031\317\302!\210	\2025\320\302!\210*\305 \306:\204CC\307\321\"\311\306	\"\211\205Y\312\313\314	\315#\316Q\211\203g\317\303!\210	\202k\320\303!\210*\305 \306:\204yC\307\322\"\311\306	\"\211\203\221\317\304!\210	\211\202\224\320\304!*\207" [styles elts c-doc-line-join-re c-doc-bright-comment-start-re c-doc-line-join-end-ch c-get-doc-comment-style nil mapcar #[#1=(style) "\302\303!\304P!\211\205\305	!\205	J)\207" [style sym intern-soft symbol-name "-line-join-re" boundp] 4] delq "\\(" mapconcat identity "\\|" "\\)" make-local-variable kill-local-variable #[#1# "\302\303!\304P!\211\205\305	!\205	J)\207" [style sym intern-soft symbol-name "-bright-comment-start-re" boundp] 4] #[(style) "\302\303!\304P!\211\205\305	!\205	J)\207" [style sym intern-soft symbol-name "-line-join-end-ch" boundp] 4]] 6])
(defalias 'c-font-lock-doc-comments #[(prefix limit keywords) "\306\211\307`\310\"\311>\203\"\312 `\n\203\nb\210\313!\203!`)	\204\273\314\f\315#\203\265\316\224\211
\307\310\"\211:\203_\203Z@>\204ZA\211\204H\202d>+\203\260	eU\204\265	S
\307\310\"\211:\203\235\203\230@>\204\230A\211\204\206\202\242>+\203\265\212	b\210\317 )\203\265\306\202&	\211\203\217\320	\211\321\\\"\322\234\203\351	b\210\323 \210\324	`\310$\210\325\326!\210``\fW\203\367\313!\204\311\202\367	b\210\323 \210\324	`\310$\210`\fV\203\fb\210\306`\306\211\211 !\"#\214#TV\203+#b\210\327u\210\313\330!\203+`##}\210\"\203\206\"@!\"A\"!@ b\210 ;\203W\314 #\315#\202\\ #!\2030!A\211@:\203~\203G\331@!\210A\211\202l\331!\210\202G#b\210.\202\"*\306\207" [region-beg comment-beg start prefix limit c-literal-faces nil get-text-property face (font-lock-comment-face font-lock-comment-delimiter-face) c-literal-start looking-at re-search-forward t 0 c-in-literal parse-partial-sexp 2 7 c-forward-single-comment put-text-property skip-syntax-forward " " -2 "\\*/" #[257 "\211@\211\224\225\3008\204\3018\206\231\302\303#\202\231\304A@!\211\242\305=\2035\306AA#\210\211A@\262\211\204C\307=\204C\310\202\227\204Y\311\305\310$\206\227\312\305$\202\227\313\267\202\203\312\305$\202\227\314\305$\202\227\315\305$\202\227\316\305$\202\227?\205\227\311\305\310$\206\227\312\305$\262\207" [2 3 error "No match %d in highlight %S" eval face add-text-properties t nil text-property-not-all put-text-property #s(hash-table size 4 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (t 95 prepend 104 append 113 keep 122)) font-lock-prepend-text-property font-lock-append-text-property font-lock-fillin-text-property] 11 2173197] faces pos pos-faces c-doc-face-name keywords highlights matcher keyword keylist region-end] 6])
(put 'c-font-lock-doc-comments 'lisp-indent-function 2)
(defalias 'c-find-invalid-doc-markup #[(regexp limit) "\304\305	\n\306#\203\307\310\224\211\311\"=?\202\304\211\204\205-\312\313!\313T!D!\210\306)\207" [start regexp limit c-doc-face-name nil re-search-forward t get-text-property 0 face store-match-data copy-marker] 4])
(defconst gtkdoc-font-lock-doc-comments (byte-code "\303\304\305	\306R\307\n\310BBB	\311P\312\n\313BBB\314	\315R\307\n\316BBB\317	P\312\n\320BBBF*\207" [header symbol c-doc-markup-face-name "[a-zA-Z0-9_]+" "^ \\* " "\\(" "\\):[ 	]*$" 1 (prepend nil) "()" 0 (prepend nil) "\\(@" "\\):" (prepend nil) "[#%@]" (prepend nil)] 7))
(defconst gtkdoc-font-lock-doc-protection (byte-code "\301\302\303BBBC\207" [c-doc-markup-face-name "< \\(public\\|private\\|protected\\) >" 1 (prepend nil)] 4))
(defconst gtkdoc-font-lock-keywords (byte-code "\300CC\207" [#[(limit) "\303\304	#\210\303\305\n#\207" [limit gtkdoc-font-lock-doc-comments gtkdoc-font-lock-doc-protection c-font-lock-doc-comments "/\\*\\*\\([^*/\n
].*\\)?$" "/\\*< "] 4]] 1))
(defconst javadoc-font-lock-doc-comments (byte-code "\301\302\303BBB\304\305\306BBB\307\302\310BBB\311\302\312BBB\313\314B\257\207" [c-doc-markup-face-name "{@[a-z]+[^}\n
]*}" 0 (prepend nil) "^\\(/\\*\\)?\\(\\s \\|\\*\\)*\\(@[a-z]+\\)" 3 (prepend nil) "</?\\sw\\(\\sw\\|\\s \\|[=\n
*.:]\\|\"[^\"]*\"\\|'[^']*'\\)*>" (prepend nil) "&\\(\\sw\\|[.:]\\)+;" (prepend nil) #[(limit) "\301\302\"\207" [limit c-find-invalid-doc-markup "[<>&]\\|{@"] 3] (0 'font-lock-warning-face prepend nil)] 7))
(defconst javadoc-font-lock-keywords (byte-code "\300CC\207" [#[(limit) "\302\303	#\207" [limit javadoc-font-lock-doc-comments c-font-lock-doc-comments "/\\*\\*"] 4]] 1))
(defconst autodoc-decl-keywords "\\(\\(?:@\\(?:decl\\|elem\\|index\\|member\\)\\)\\)\\([^[:alnum:]_$]\\|$\\)")
(defconst autodoc-decl-type-keywords "\\(\\(?:@\\(?:elem\\|member\\)\\)\\)\\([^[:alnum:]_$]\\|$\\)")
(defalias 'autodoc-font-lock-line-markup #[(limit) "\306\307Q	\nD`
W\203\370\310\f
\311#\203\370\312\225b\210\313!\203\316`\312\225\211 \314!\315` \316$\210 S\"\315\"\211T\317\320$\210) b\210\314\210`!`Sf\321=\203\206m\204\206\314u\210\322\323!\210\313!\203\206\324\225b\210\325 !S\326#\210\315!S!\316$\210` \202J\325 `Td^\326#\210b\210\310\327!\330#\203\250\315\324\224`\316\331$\210\202\224b\210\313#!\203\312\311\314\311$%&b\210\332 \210\333 \210\334 \210+,\202	\315`\314\210`\316$\210`Sf\321=\203	m\204	\314u\210\322\323!\210\313!\203	\324\225b\210\202\316*\314\207" [c-current-comment-prefix c-doc-markup-face-name c-doc-face-name markup-faces line-re limit "^\\(\\(/\\*!\\|\\s *\\(" "\\)\\)\\s *\\)@[A-Za-z_-]+\\(\\s \\|$\\)" re-search-forward t 1 looking-at nil put-text-property face c-type c-decl-end 64 skip-syntax-forward " " 0 remove-text-properties (face nil) "\"\\([^\\\"]\\|\\\\.\\)*\"\\|'\\([^\\']\\|\\\\.\\)*'" move font-lock-string-face c-forward-sws c-forward-type c-fontify-recorded-types-and-refs autodoc-decl-keywords kwd-pos start pos end -pos- autodoc-decl-type-keywords c-promote-possible-types c-record-ref-identifiers c-record-type-identifiers] 6])
(defconst autodoc-font-lock-doc-comments (byte-code "\301\302\303BBB\304\305\306BE\207" [c-doc-markup-face-name "@\\(\\w+{\\|\\[\\([^]@\n
]\\|@@\\)*\\]\\|[@}]\\|$\\)" 0 (prepend nil) (autodoc-font-lock-line-markup) #[(limit) "\301\302\"\207" [limit c-find-invalid-doc-markup "@"] 3] (0 'font-lock-warning-face prepend nil)] 4))
(defconst autodoc-line-join-re "@[\n
][ 	]*/[/*]!")
(defconst autodoc-bright-comment-start-re "/[/*]!")
(defconst autodoc-line-join-end-ch 33)
(defalias 'autodoc-font-lock-keywords #[nil "\301\302CC\207" [c-type-decl-end-used t #[(limit) "\302\303	#\207" [limit autodoc-font-lock-doc-comments c-font-lock-doc-comments "/[*/]!"] 4]] 1])
(provide 'cc-fonts)

Zerion Mini Shell 1.0