;;; semantic/bovine/c-by.el --- Generated parser support file -*- lexical-binding:t -*-
;; Copyright (C) 1999-2022 Free Software Foundation, Inc.
;; This file is part of GNU Emacs.
;; GNU Emacs is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs. If not, see .
;;; Commentary:
;;
;; This file was generated from admin/grammars/c.by.
;;; Code:
(require 'semantic/lex)
(eval-when-compile (require 'semantic/bovine))
;;; Prologue
;;
(declare-function semantic-c-reconstitute-token "semantic/bovine/c"
(tokenpart declmods typedecl))
(declare-function semantic-c-reconstitute-template "semantic/bovine/c"
(tag specifier))
(declare-function semantic-expand-c-tag "semantic/bovine/c" (tag))
(declare-function semantic-parse-region "semantic"
(start end &optional nonterminal depth returnonerror))
;;; Declarations
;;
(eval-and-compile (defconst semantic-c-by--expected-conflicts
nil
"The number of expected shift/reduce conflicts in this grammar."))
(defconst semantic-c-by--keyword-table
(semantic-lex-make-keyword-table
'(("extern" . EXTERN)
("static" . STATIC)
("const" . CONST)
("volatile" . VOLATILE)
("register" . REGISTER)
("signed" . SIGNED)
("unsigned" . UNSIGNED)
("inline" . INLINE)
("virtual" . VIRTUAL)
("mutable" . MUTABLE)
("explicit" . EXPLICIT)
("struct" . STRUCT)
("union" . UNION)
("enum" . ENUM)
("typedef" . TYPEDEF)
("class" . CLASS)
("typename" . TYPENAME)
("namespace" . NAMESPACE)
("using" . USING)
("new" . NEW)
("delete" . DELETE)
("template" . TEMPLATE)
("throw" . THROW)
("reentrant" . REENTRANT)
("try" . TRY)
("catch" . CATCH)
("operator" . OPERATOR)
("public" . PUBLIC)
("private" . PRIVATE)
("protected" . PROTECTED)
("friend" . FRIEND)
("if" . IF)
("else" . ELSE)
("do" . DO)
("while" . WHILE)
("for" . FOR)
("switch" . SWITCH)
("case" . CASE)
("default" . DEFAULT)
("return" . RETURN)
("break" . BREAK)
("continue" . CONTINUE)
("sizeof" . SIZEOF)
("void" . VOID)
("char" . CHAR)
("wchar_t" . WCHAR)
("short" . SHORT)
("int" . INT)
("long" . LONG)
("float" . FLOAT)
("double" . DOUBLE)
("bool" . BOOL)
("_P" . UNDERP)
("__P" . UNDERUNDERP))
'(("__P" summary "Common macro to eliminate prototype compatibility on some compilers")
("_P" summary "Common macro to eliminate prototype compatibility on some compilers")
("bool" summary "Primitive boolean type")
("double" summary "Primitive floating-point type (double-precision 64-bit IEEE 754)")
("float" summary "Primitive floating-point type (single-precision 32-bit IEEE 754)")
("long" summary "Integral primitive type (-9223372036854775808 to 9223372036854775807)")
("int" summary "Integral Primitive Type: (-2147483648 to 2147483647)")
("short" summary "Integral Primitive Type: (-32768 to 32767)")
("wchar_t" summary "Wide Character Type")
("char" summary "Integral Character Type: (0 to 256)")
("void" summary "Built in type: void")
("sizeof" summary "Compile time macro: sizeof() // size in bytes")
("continue" summary "Non-local continue within a loop (for, do/while): continue;")
("break" summary "Non-local exit within a loop or switch (for, do/while, switch): break;")
("return" summary "return ;")
("default" summary "switch () { case : code; ... default: code; }")
("case" summary "switch () { case : code; ... default: code; }")
("switch" summary "switch () { case : code; ... default: code; }")
("for" summary "for(; ; ) { code }")
("while" summary "do { code } while (); or while () { code };")
("do" summary " do { code } while ();")
("else" summary "if () { code } [ else { code } ]")
("if" summary "if () { code } [ else { code } ]")
("friend" summary "friend class ")
("catch" summary "try { } catch { }")
("try" summary "try { } catch { }")
("reentrant" summary " () reentrant ...")
("throw" summary " () throw () ...")
("template" summary "template TYPE_OR_FUNCTION")
("delete" summary "delete