;ELC   
;;; compiled by jimb@geech.gnu.ai.mit.edu on Mon Jul  5 22:05:19 1993
;;; from file /gd/gnu/emacs/19.0/lisp/ada.el
;;; emacs version 19.15.16.
;;; bytecomp version FSF 2.10
;;; optimization is on.
;;; this file uses opcodes which do not exist in Emacs 18.

(if (and (boundp 'emacs-version)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19")))
    (error "This file was compiled for Emacs 19"))

(byte-code "ÀÁB\nBÁ‡" ["\\.ada$" ada-mode auto-mode-alist] 2)
(defvar ada-mode-syntax-table nil "\
Syntax table in use in Ada-mode buffers.")
(byte-code "À ÂÃÄ	#ˆÂÅÄ	#ˆÂÆÇ	#ˆÂÈÉ	#ˆÂÊË	#ˆÂÌË	#ˆÂÍË	#ˆÂÎË	#ˆÂÏË	#ˆÂÐË	#ˆÂÑË	#ˆÂÒË	#ˆÂÓË	#ˆÂÔË	#ˆÂÕË	#ˆÂÖË	#ˆÂ×Ë	#ˆÂØË	#ˆÂÙË	#ˆÂÚË	#ˆÂÛË	#ˆÂÜË	#ˆÂÝË	#ˆÂÞß	#ˆ	 )À‡" [make-syntax-table table modify-syntax-entry 95 "_" 35 40 "()" 41 ")(" 36 "." 42 47 43 45 61 38 124 60 62 91 93 123 125 46 92 58 59 39 34 "\"" ada-mode-syntax-table] 4)
(defvar ada-mode-map nil "\
Keymap used in Ada mode.")
(byte-code "À Â	ÃÄ#ˆÂ	ÅÆ#ˆÂ	ÇÈ#ˆÂ	ÉÊ#ˆÂ	ËÌ#ˆÂ	ÍÎ#ˆÂ	ÏÐ#ˆÂ	ÑÒ#ˆÂ	ÓÔ#ˆÂ	ÕÖ#ˆÂ	×Ø#ˆÂ	ÙÚ#ˆÂ	ÛÜ#ˆÂ	ÝÞ#ˆÂ	ßà#ˆÂ	áâ#ˆÂ	ãä#ˆÂ	åæ#ˆÂ	çè#ˆÂ	éê#ˆÂ	ëì#ˆÂ	íî#ˆÂ	ïð#ˆÂ	ñò#ˆÂ	óô#ˆÂ	õö#ˆÂ	÷ø#ˆÂ	ùú#ˆÂ	ûü#ˆÂ	ýþ#ˆÂ	ÿ�@ #ˆÂ	�A �B #ˆÂ	�C �D #ˆÂ	�E �F #ˆÂ	�G �H #ˆÂ	�I �J #ˆÂ	�K �L #ˆÂ	�M �N #ˆ	O)À‡" [make-sparse-keymap map define-key "" ada-newline "" backward-delete-char-untabify "	" ada-tab "	" ada-untab "<" ada-backward-to-same-indent ">" ada-forward-to-same-indent "h" ada-header "(" ada-paired-parens "-" ada-inline-comment "" ada-array "b" ada-exception-block "d" ada-declare-block "" ada-exception "c" ada-case "" ada-package-spec "k" ada-package-body "" ada-procedure-spec "p" ada-subprogram-body "" ada-function-spec "f" ada-for-loop "l" ada-loop "i" ada-if "I" ada-elsif "e" ada-else "" ada-private "" ada-record "" ada-subtype "s" ada-separate "" ada-type "t" ada-tabsize "w" ada-while-loop "" ada-when "x" ada-exit "C" ada-compile "B" ada-bind "E" ada-find-listing "L" ada-library-name "O" ada-options-for-bind ada-mode-map] 4)
(defvar ada-indent 4 "\
*Value is the number of columns to indent in Ada-Mode.")
(defalias 'ada-mode #[nil "À ˆÁ\n!ˆÃÅÇÈ!ˆÉÇÊ!ˆË\nÌ!ˆÇÎ!ˆÏPÇÑ!ˆÇÒ!ˆÓÇÔ!ˆÓÇÕ!ˆÖÇ×!ˆØÇÈ!ˆÉÇÙ!ˆÚÇÛ!ˆÜÇÝ!ˆÓÞß!‡" [kill-all-local-variables use-local-map ada-mode-map ada-mode major-mode "Ada" mode-name make-local-variable comment-column 41 end-comment-column 72 set-syntax-table ada-mode-syntax-table paragraph-start "^$\\|" page-delimiter paragraph-separate paragraph-ignore-fill-prefix t require-final-newline comment-start "--" comment-end "" comment-start-skip "--+ *" comment-indent-function c-comment-indent parse-sexp-ignore-comments run-hooks ada-mode-hook] 2 "\
This is a mode intended to support program development in Ada.
Most control constructs and declarations of Ada can be inserted in the buffer
by typing Control-C followed by a character mnemonic for the construct.

\\<ada-mode-map>\\[ada-array] array         	\\[ada-exception-block]    exception block
\\[ada-exception]  exception      \\[ada-declare-block]    declare block
\\[ada-package-spec]  package spec   \\[ada-package-body]    package body
\\[ada-procedure-spec]  procedure spec \\[ada-subprogram-body]    proc/func body
\\[ada-function-spec]  func spec      \\[ada-for-loop]    for loop
                        \\[ada-if]    if
                        \\[ada-elsif]    elsif
                        \\[ada-else]    else
\\[ada-private]  private        \\[ada-loop]    loop
\\[ada-record]  record         \\[ada-case]    case
\\[ada-subtype]  subtype        \\[ada-separate]    separate
\\[ada-type]  type           \\[ada-tabsize]    tab spacing for indents
\\[ada-when]  when           \\[ada-while]    while
                        \\[ada-exit]    exit
\\[ada-paired-parens]    paired parens  \\[ada-inline-comment]    inline comment
                        \\[ada-header]    header spec
\\[ada-compile]    compile        \\[ada-bind]    bind
\\[ada-find-listing]    find error list
\\[ada-library-name]    name library   \\[ada-options-for-bind]    options for bind

\\[ada-backward-to-same-indent] and \\[ada-forward-to-same-indent] move backward and forward respectively to the next line
having the same (or lesser) level of indentation.

Variable `ada-indent' controls the number of spaces for indent/undent." nil])
(defalias 'ada-tabsize #[(s) "‰‡" [s ada-indent] 2 "\
Changes spacing used for indentation.
The prefix argument is used as the new spacing." "p"])
(defalias 'ada-newline #[nil "À Â ˆ	j)‡" [current-indentation ada-cc newline] 1 "\
Start new line and indent to current tab stop." nil])
(defalias 'ada-tab #[nil "À 	¥T	_j‡" [current-indentation ada-indent] 2 "\
Indent to next tab stop." nil])
(defalias 'ada-untab #[nil "À	Â\"‡" [backward-delete-char-untabify ada-indent nil] 3 "\
Delete backwards to previous tab stop." nil])
(defalias 'ada-go-to-this-indent #[(step indent-level) "yÁU…* ÂÃ!„  ÂÄ!„  ÂÅ!„  ÂÆ!„  Ç V…* ‚  ‡" [step 0 looking-at "^[ 	]*$" "^[ 	]*--" "^<<[A-Za-z0-9_]+>>" "^[A-Za-z0-9_]+:" current-indentation indent-level] 2 "\
Move point repeatedly by STEP lines until the current line has
given INDENT-LEVEL or less, or the start or end of the buffer is reached.
Ignore blank lines, statement labels and block or loop names."])
(defalias 'ada-backward-to-same-indent #[nil "ÀÁÂ \"ˆÃ ‡" [ada-go-to-this-indent -1 current-indentation back-to-indentation] 3 "\
Move point backwards to nearest line with same indentation or less.
If not found, point is left at the top of the buffer." nil])
(defalias 'ada-forward-to-same-indent #[nil "ÀÁÂ \"ˆÃ ‡" [ada-go-to-this-indent 1 current-indentation back-to-indentation] 3 "\
Move point forwards to nearest line with same indentation or less.
If not found, point is left at the start of the last line in the buffer." nil])
(defalias 'ada-array #[nil "ÀcˆÁ ˆÂÃ!cˆÄˆÅcˆÁ ˆÂÆ!cˆÄ‡" ["array ()" backward-char read-string "index subtype[s]: " nil " of ;" "component-type: "] 2 "\
Insert array type definition.  Uses the minibuffer to prompt
for component type and index subtypes." nil])
(defalias 'ada-case #[nil "ÀcˆÁÂ!Ã±ˆÄ ˆÄ ˆÅcˆÆˆÇ ˆÇ ˆÈ ‡" ["case " read-string "selector expression: " " is" ada-newline "end case;" 0 ada-tab ada-when] 2 "\
Build skeleton case statement.
Uses the minibuffer to prompt for the selector expression.
Also builds the first when clause." nil])
(defalias 'ada-declare-block #[nil "ÀÁ!Ãcˆ\nÄ˜„  ÅyˆÆÇ!ˆ\nÈ±ˆÉÇ!ˆÊˆË ˆË ˆÌcˆË ˆË ˆ\nÄ˜ƒ; Ícˆ‚A Î\nÏ±ˆ)ÐˆÑ ‡" [read-string "[block name]: " ada-block-name "declare" "" 0 open-line 1 ":" next-line nil ada-newline "begin" "end;" "end " ";" -2 ada-tab] 3 "\
Insert a block with a declare part.
Indent for the first declaration." nil])
(defalias 'ada-exception-block #[nil "ÀÁ!Ãcˆ\nÄ˜„  ÅyˆÆÇ!ˆ\nÈ±ˆÉÇ!ˆÊˆË ˆË ˆÌcˆË ˆË ˆ\nÄ˜ƒ; Ícˆ‚A Î\nÏ±ˆ)ÐˆÑ ‡" [read-string "[block name]: " block-name "begin" "" 0 open-line 1 ":" next-line nil ada-newline "exception" "end;" "end " ";" -2 ada-tab] 3 "\
Insert a block with an exception part.
Indent for the first line of code." nil])
(defalias 'ada-exception #[nil "À ˆÁcˆÂ ˆÃ ‡" [ada-untab "exception" ada-newline ada-tab] 1 "\
Insert an indented exception part into a block." nil])
(defalias 'ada-else #[nil "À ˆÁcˆÂ ˆÃ ‡" [ada-untab "else" ada-newline ada-tab] 1 "\
Add an else clause inside an if-then-end-if clause." nil])
(defalias 'ada-exit #[nil "ÀcˆÁÂ!‰Ä˜„ Å±ˆ)ÁÆ!‰Ä˜„5 ÈÉ\"ƒ/ Å±ˆ‚5 Ê±ˆ)Ëc‡" ["exit" read-string "[name of loop to exit]: " ada-loop-name "" " " "[exit condition]: " ada-exit-condition string-match "^ *[Ww][Hh][Ee][Nn] +" " when " ";"] 4 "\
Insert an exit statement, prompting for loop name and condition." nil])
(defalias 'ada-when #[nil "À ˆÁcˆÂÃ!Ä±ˆÅ ˆÆ ‡" [ada-untab "when " read-string "'|'-delimited choice list: " " =>" ada-newline ada-tab] 2 "\
Start a case statement alternative with a when clause." nil])
(defalias 'ada-for-loop #[nil "ÀcˆÁÂ!‰Ä˜?‰ƒ# ÆyˆÇÈ!ˆÉ±ˆÊÈ!ˆÈˆÁË!Ì±ˆÁÍ!Î±ˆÏ ˆÏ ˆÐcˆƒC Ñ±ˆÒcˆ*ÆˆÓ ‡" ["for " read-string "[loop name]: " ada-loop-name "" ada-loop-is-named 0 open-line 1 ":" next-line "loop variable: " " in " "range: " " loop" ada-newline "end loop" " " ";" ada-tab] 3 "\
Build a skeleton for-loop statement, prompting for the loop parameters." nil])
(defalias 'ada-header #[nil "ÀcˆÁÂ!cˆÃÄ ±ˆÅÆ ±ˆÇÈ ÉÊ Ë±‡" ["--\n--  Title: 	" read-string "Title: " "\n--  Created:	" current-time-string "\n--  Author: 	" user-full-name "\n--		<" user-login-name "@" system-name ">\n--\n"] 5 "\
Insert a comment block containing the module title, author, etc." nil])
(defalias 'ada-if #[nil "ÀcˆÁÂ!Ã±ˆÄ ˆÄ ˆÅcˆÆˆÇ ‡" ["if " read-string "condition: " " then" ada-newline "end if;" 0 ada-tab] 2 "\
Insert skeleton if statment, prompting for a boolean-expression." nil])
(defalias 'ada-elsif #[nil "À ˆÁcˆÂÃ!Ä±ˆÅ ˆÆ ‡" [ada-untab "elsif " read-string "condition: " " then" ada-newline ada-tab] 2 "\
Add an elsif clause to an if statement, prompting for the boolean-expression." nil])
(defalias 'ada-loop #[nil "ÀcˆÁÂ!‰Ä˜?‰ƒ\" ÆyˆÇÈ!ˆÉ±ˆÈyˆÈˆÊ ˆÊ ˆËcˆƒ4 Ì±ˆÍcˆ*ÆˆÎ ‡" ["loop " read-string "[loop name]: " ada-loop-name "" ada-loop-is-named 0 open-line 1 ":" ada-newline "end loop" " " ";" ada-tab] 3 "\
Insert a skeleton loop statement.  The exit statement is added by hand." nil])
(defalias 'ada-package-spec #[nil "ÀcˆÁÂ!‰Ä±ˆÅ ˆÅ ˆÆÇ±ˆÈˆÉ )‡" ["package " read-string "package name: " ada-package-name " is" ada-newline "end " ";" 0 ada-tab] 4 "\
Insert a skeleton package specification." nil])
(defalias 'ada-package-body #[nil "ÀcˆÁÂ!‰Ä±ˆÅ ˆÅ ˆÆcˆÅ ˆÇÈ±ˆÉˆÊ )‡" ["package body " read-string "package name: " ada-package-name " is" ada-newline "begin" "end " ";" -1 ada-tab] 4 "\
Insert a skeleton package body --  includes a begin statement." nil])
(defalias 'ada-private #[nil "À ˆÁcˆÂ ˆÃ ‡" [ada-untab "private" ada-newline ada-tab] 1 "\
Undent and start a private section of a package spec. Reindent." nil])
(defalias 'ada-get-arg-list #[nil "ÀcˆiÁÂ!Å˜ƒ ÆÇ!‚0 ÈÉ\"ƒ, cˆÊ ˆjˆÁË!‚ Ì±*‡" [" (" read-string "[arguments]: " ada-args ada-arg-indent "" backward-delete-char 2 string-match ";$" newline "next argument: " ")"] 3 "\
Read from the user a procedure or function argument list.
Add parens unless arguments absent, and insert into buffer.
Individual arguments are arranged vertically if entered one at a time.
Arguments ending with `;' are presumed single and stacked."])
(defalias 'ada-function-spec #[nil "ÀcˆÁÂ!cˆÃ ˆÄcˆÁÅ!c‡" ["function " read-string "function name: " ada-get-arg-list " return " "result type: "] 2 "\
Insert a function specification.  Prompts for name and arguments." nil])
(defalias 'ada-procedure-spec #[nil "ÀcˆÁÂ!cˆÃ ‡" ["procedure " read-string "procedure name: " ada-get-arg-list] 2 "\
Insert a procedure specification, prompting for its name and arguments." nil])
(defalias 'get-ada-subprogram-name #[nil "ŠÀÂÃÄÅ#ƒ1 ÆÇ!„ ÆÈ!ƒ, iÉvˆ`\nËvˆ`\n{	)B‚4 Ì ‚4 Í	B*‡" [0 ada-proc-indent re-search-backward "[PpFf][RrUu][OoNn][Cc][EeTt][DdIi][UuOo][RrNn]" nil t looking-at "\\<[Pp][Rr][Oo][Cc][Ee][Dd][Uu][Rr][Ee]\\>" "\\<[Ff][Uu][Nn][Cc][Tt][Ii][Oo][Nn]\\>" 2 p2 -1 get-ada-subprogram-name "NAME?"] 4 "\
Return (without moving point or mark) a pair whose CAR is the name of
the function or procedure whose spec immediately precedes point, and whose
CDR is the column number where the procedure/function keyword was found."])
(defalias 'ada-subprogram-body #[nil "ÀcˆÁ Ã ˆ\nAjˆÄ ˆÅcˆÄ ˆÄ ˆÆ\n@Ç±ˆ)ÈˆÉ ‡" [" is" get-ada-subprogram-name ada-subprogram-name-col newline ada-newline "begin" "end " ";" -2 ada-tab] 3 "\
Insert frame for subprogram body.
Invoke right after `ada-function-spec' or `ada-procedure-spec'." nil])
(defalias 'ada-separate #[nil "ÀcˆÁ ˆÂ ˆÃcˆÁ ˆÄ ‡" [" is" ada-newline ada-tab "separate;" ada-untab] 1 "\
Finish a body stub with `is separate'." nil])
(defalias 'ada-record #[nil "ÀcˆÁ ˆÁ ˆÂcˆÃˆÄ ‡" ["record" ada-newline "end record;" 0 ada-tab] 1 "\
Insert a skeleton record type declaration." nil])
(defalias 'ada-subtype #[nil "ÀÁÂ!Ã±ˆÄ ˆÅÆ!‡" ["subtype " read-string "subtype name: " " is ;" backward-char message "insert subtype indication."] 3 "\
Start insertion of a subtype declaration, prompting for the subtype name." nil])
(defalias 'ada-type #[nil "ÀÁÂ!±ˆÁÃ!‰Å˜„ ÆÇ±ˆ)ÈcˆÉÊ!‡" ["type " read-string "type name: " "discriminant specs: " disc-part "" "(" ")" " is " message "insert type definition."] 4 "\
Start insertion of a type declaration, prompting for the type name." nil])
(defalias (quote ada-while-loop) #[nil "ÀcˆÁÂ!‰Ä˜?‰ƒ# ÆyˆÇÈ!ˆÉ±ˆÊÈ!ˆÈˆÁË!Ì±ˆÍ ˆÍ ˆÎcˆƒ< Ï±ˆÐcˆ*ÆˆÑ ‡" ["while " read-string "loop name: " ada-loop-name "" ada-loop-is-named 0 open-line 1 ":" next-line "entry condition: " " loop" ada-newline "end loop" " " ";" ada-tab] 3 nil nil])
(defalias 'ada-paired-parens #[nil "ÀcˆÁ ‡" ["()" backward-char] 1 "\
Insert a pair of round parentheses, placing point between them." nil])
(defalias 'ada-inline-comment #[nil "Àˆi	Vƒ Â ˆiWƒ jˆÄc‡" [nil end-comment-column newline comment-column " -- "] 2 "\
Start a comment after the end of the line, indented at least
`comment-column' spaces.  If starting after `end-comment-column',
start a new line." nil])
(defalias 'ada-display-comment #[nil "ÀcˆÁ‡" ["--\n-- \n--" 0] 1 "\
Inserts three comment lines, making a display comment." nil])
(defvar ada-lib-dir-name "lib" "\
*Current Ada program library directory.")
(defvar ada-bind-opts "" "\
*Options to supply for binding.")
(defalias 'ada-library-name #[(ada-lib-name) "‰‡" [ada-lib-name ada-lib-dir-name] 2 "\
Specify name of Ada library directory for later compilations." "DName of Ada library directory: "])
(defalias 'ada-options-for-bind #[nil "ÀÁ!‰‡" [read-string "-m and -i options for `ada-bind': " ada-bind-opts] 2 "\
Specify options, such as -m and -i, needed for `ada-bind'."])
(defalias 'ada-compile #[(arg) "„ Á‚	 ÂÄ ÆÇÈ	Ê°!*‡" [arg "" "-n " ada-init buffer-name ada-source-file compile "adacomp " "-l " ada-lib-dir-name " "] 7 "\
Save the current buffer and compile it into the current program library.
Initialize the library if a prefix arg is given." "P"])
(defalias 'ada-find-listing #[nil "ÀÁ ÂÃOÄP!ˆÅÆ!‡" [find-file-other-window buffer-name 0 -4 ".lis" search-forward "*** ERROR"] 4 "\
Find listing file for ada source in current buffer, using other window." nil])
(defalias 'ada-bind #[nil "ÀÁ\nÃR!‡" [compile "adabind " ada-bind-opts " " ada-lib-dir-name] 5 "\
Bind the current program library, using the current binding options." nil])
