# BISON language definition file
#
# Author: Andre Simon
#   Mail: andre.simon1@gmx.de
#   Date: 15.04.2004
# Update: 11.09.2008
# ------------------------------------------
# This file is a part of highlight, a free source code converter released under the GPL.
#
# The file is used to describe keywords and special symbols of programming languages.
# See README in the highlight directory for details.
#
# New definition files for future releases of highlight are always appreciated ;)
#
# ----------
# andre.simon1@gmx.de
# http:/www.andre-simon.de/

$DESCRIPTION=Bison

$KEYWORDS(kwa)=error YYABORT YYACCEPT YYBACKUP YYERROR YYERROR_VERBOSE YYINITDEPTH YYLEX_PARAM 
YYLTYPE yyltype YYMAXDEPTH YYPARSE_PARAM YYRECOVERING YYSTACK_USE_ALLOCA YYSTYPE
yychar yyclearin yydebug yyerrok yyerror yylex yylval yylloc yynerrs yyparse


$KEYWORDS(kwb)=int long short char void signed unsigned float double size_t wchar_t
ptrdiff_t  sig_atomic_t fpos_t clock_t time_t va_list jmp_buf FILE DIR div_t ldiv_t static
const bool struct union enum size_t wchar_t ptrdiff_t sig_atomic_t fpos_t clock_t time_t
va_list jmp_buf FILE DIR div_t ldiv_t mbstate_t wctrans_t wint_t wctype_t bool complex
int8_t int16_t int32_t int64_t uint8_t uint16_t uint32_t uint64_t int_least8_t int_least16_t
int_least32_t int_least64_t uint_least8_t uint_least16_t uint_least32_t uint_least64_t
int_fast8_t int_fast16_t int_fast32_t int_fast64_t uint_fast8_t uint_fast16_t uint_fast32_t
uint_fast64_t intptr_t uintptr_t intmax_t uintmax_t string

$KEYWORDS(kwb)=regex(\$[\w\$]+)

#$KW_PREFIX(kwc)=%
$KEYWORDS(kwc)=regex(%\S+)

$KEYWORDS(kwd)=regex(^\w+:)

$STRINGDELIMITERS=" '

$ESCCHAR=regex(\\[ntvbrfa\\\?'"])

$DIRECTIVE=#

$ML_COMMENT=/* */
$SL_COMMENT=//

$IGNORECASE=false

$SYMBOLS= ( ) [ ] { } , ; : & | < > !  = / * + -
