From: arjen Date: Sat, 27 Jul 2002 06:45:29 +0000 (+0000) Subject: Improved XML library config X-Git-Tag: V0_3~18 X-Git-Url: http://www.andromeda.nl/gitweb/?p=AXE.git;a=commitdiff_plain;h=dadac529fa3d34929382be1206cde8e7d809d467 Improved XML library config --- diff --git a/AXE.html b/AXE.html index 962c394..43e322d 100644 --- a/AXE.html +++ b/AXE.html @@ -24,12 +24,19 @@ and buttons. A few utility classes handle strings, times and dates.

+

Download

-You can download the AXE tarball which +You can download the AXE tarball which contains the source and the (slghtly outdated) documentation. To get you started, read the tutorial.

+

Patches

+ + +

If you encounter any problems or if you want to make suggestions, please don't hesitate to drop me an Email diff --git a/ChangeLog b/ChangeLog index c5e2916..3902e25 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +Jul 27, 2002 - Patch 0.2.1 +--------------------------- + + - Improved the XML library configuration. + - BUG FIX: testaxe crashed without a config file. + - Reinstated the metronome demo + - BUG FIX: acltest.cpp included the obsolete complex number test. + Jul 25, 2002 - Release 0.2 =========================== diff --git a/configure b/configure index 2a44db0..1a49826 100755 --- a/configure +++ b/configure @@ -2507,13 +2507,15 @@ fi XML_CFLAGS=`$XML_CONFIG --cflags` +XML_LFLAGS=`$XML_CONFIG --libs` LIBS="$LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS" +LDFLAGS="$LDFLAGS -L/usr/local/lib $XML_LFLAGS" CFLAGS="$CFLAGS $X_CFLAGS $XML_CFLAGS" CXXFLAGS="$CXXFLAGS $X_CFLAGS $XML_CFLAGS" echo $ac_n "checking for XOpenDisplay in -lX11""... $ac_c" 1>&6 -echo "configure:2517: checking for XOpenDisplay in -lX11" >&5 +echo "configure:2519: checking for XOpenDisplay in -lX11" >&5 ac_lib_var=`echo X11'_'XOpenDisplay | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2521,7 +2523,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lX11 $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2538: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2560,7 +2562,7 @@ else fi echo $ac_n "checking for XpmCreatePixmapFromData in -lXpm""... $ac_c" 1>&6 -echo "configure:2564: checking for XpmCreatePixmapFromData in -lXpm" >&5 +echo "configure:2566: checking for XpmCreatePixmapFromData in -lXpm" >&5 ac_lib_var=`echo Xpm'_'XpmCreatePixmapFromData | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2568,7 +2570,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lXpm $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2585: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2607,7 +2609,7 @@ else fi echo $ac_n "checking for pthread_create in -lpthread""... $ac_c" 1>&6 -echo "configure:2611: checking for pthread_create in -lpthread" >&5 +echo "configure:2613: checking for pthread_create in -lpthread" >&5 ac_lib_var=`echo pthread'_'pthread_create | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2615,7 +2617,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lpthread $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2632: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2654,7 +2656,7 @@ else fi echo $ac_n "checking for xmlParseFile in -lxml""... $ac_c" 1>&6 -echo "configure:2658: checking for xmlParseFile in -lxml" >&5 +echo "configure:2660: checking for xmlParseFile in -lxml" >&5 ac_lib_var=`echo xml'_'xmlParseFile | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2662,7 +2664,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lxml $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2679: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2706,12 +2708,12 @@ for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6 -echo "configure:2710: checking for $ac_hdr that defines DIR" >&5 +echo "configure:2712: checking for $ac_hdr that defines DIR" >&5 if eval "test \"`echo '$''{'ac_cv_header_dirent_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include <$ac_hdr> @@ -2719,7 +2721,7 @@ int main() { DIR *dirp = 0; ; return 0; } EOF -if { (eval echo configure:2723: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2725: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_header_dirent_$ac_safe=yes" else @@ -2744,7 +2746,7 @@ done # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix. if test $ac_header_dirent = dirent.h; then echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6 -echo "configure:2748: checking for opendir in -ldir" >&5 +echo "configure:2750: checking for opendir in -ldir" >&5 ac_lib_var=`echo dir'_'opendir | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2752,7 +2754,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ldir $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2769: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2785,7 +2787,7 @@ fi else echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6 -echo "configure:2789: checking for opendir in -lx" >&5 +echo "configure:2791: checking for opendir in -lx" >&5 ac_lib_var=`echo x'_'opendir | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2793,7 +2795,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lx $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2810: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2827,12 +2829,12 @@ fi fi echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 -echo "configure:2831: checking for ANSI C header files" >&5 +echo "configure:2833: checking for ANSI C header files" >&5 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -2840,7 +2842,7 @@ else #include EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2844: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2846: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2857,7 +2859,7 @@ rm -f conftest* if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat > conftest.$ac_ext < EOF @@ -2875,7 +2877,7 @@ fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat > conftest.$ac_ext < EOF @@ -2896,7 +2898,7 @@ if test "$cross_compiling" = yes; then : else cat > conftest.$ac_ext < #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') @@ -2907,7 +2909,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); exit (0); } EOF -if { (eval echo configure:2911: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2913: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then : else @@ -2934,17 +2936,17 @@ for ac_hdr in unistd.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:2938: checking for $ac_hdr" >&5 +echo "configure:2940: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2948: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2950: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2972,12 +2974,12 @@ done echo $ac_n "checking for working const""... $ac_c" 1>&6 -echo "configure:2976: checking for working const" >&5 +echo "configure:2978: checking for working const" >&5 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3032: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_const=yes else @@ -3050,12 +3052,12 @@ fi for ac_func in strtod strtol strtoul do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:3054: checking for $ac_func" >&5 +echo "configure:3056: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3084: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else diff --git a/configure.in b/configure.in index a470fcd..c7bafe5 100644 --- a/configure.in +++ b/configure.in @@ -20,8 +20,10 @@ dnl Checks for libraries. AC_PATH_XTRA XML_CFLAGS=`$XML_CONFIG --cflags` +XML_LFLAGS=`$XML_CONFIG --libs` LIBS="$LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS" +LDFLAGS="$LDFLAGS -L/usr/local/lib $XML_LFLAGS" CFLAGS="$CFLAGS $X_CFLAGS $XML_CFLAGS" CXXFLAGS="$CXXFLAGS $X_CFLAGS $XML_CFLAGS" diff --git a/src/Makefile.in b/src/Makefile.in index 397f07e..6570ea7 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -117,8 +117,7 @@ CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ HEADERS = $(include_HEADERS) -DIST_COMMON = ChangeLog Makefile.am Makefile.in dateyacc.c install-sh \ -missing mkinstalldirs +DIST_COMMON = Makefile.am Makefile.in dateyacc.c DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) diff --git a/src/dateyacc.c b/src/dateyacc.c deleted file mode 100644 index ddc9c07..0000000 --- a/src/dateyacc.c +++ /dev/null @@ -1,1588 +0,0 @@ -/* A Bison parser, made from dateyacc.y - by GNU bison 1.35. */ - -#define YYBISON 1 /* Identify Bison output. */ - -# define DAY_NAME 257 -# define MONTH_NAME 258 -# define NUM9 259 -# define NUM23 260 -# define NUM59 261 -# define NUM99 262 -# define NUM2359 263 -# define NUM9999 264 -# define NUM235959 265 -# define NUM991231 266 -# define NUM99991231 267 -# define AMPM 268 -# define STD_ZONE 269 -# define DST_ZONE 270 -# define DST_SUFFIX 271 - -#line 37 "dateyacc.y" - -#ifdef RCSIDENT -static char rcsident[] = "$Header: /cvsroot/lib/AXE/src/Attic/dateyacc.c,v 1.1 2002-07-25 08:01:26 arjen Exp $"; -#endif RCSIDENT - -#include -#include "parsedate.h" -struct parseddate yyans; - -/* No error routine is needed here. */ -#define yyerror(s) - -#line 50 "dateyacc.y" -#ifndef YYSTYPE -typedef union { - int IntVal; -} yystype; -# define YYSTYPE yystype -# define YYSTYPE_IS_TRIVIAL 1 -#endif -#ifndef YYDEBUG -# define YYDEBUG 0 -#endif - - - -#define YYFINAL 189 -#define YYFLAG -32768 -#define YYNTBASE 23 - -/* YYTRANSLATE(YYLEX) -- Bison token number corresponding to YYLEX. */ -#define YYTRANSLATE(x) ((unsigned)(x) <= 271 ? yytranslate[x] : 42) - -/* YYTRANSLATE[YYLEX] -- Bison token number corresponding to YYLEX. */ -static const char yytranslate[] = -{ - 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 22, 2, 19, 18, 20, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 21, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 1, 3, 4, 5, - 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, - 16, 17 -}; - -#if YYDEBUG -static const short yyprhs[] = -{ - 0, 0, 2, 4, 6, 8, 10, 13, 17, 22, - 26, 31, 34, 38, 43, 47, 52, 54, 57, 61, - 64, 68, 71, 75, 80, 83, 87, 91, 95, 99, - 102, 106, 111, 113, 116, 120, 125, 128, 132, 136, - 140, 144, 147, 151, 156, 158, 161, 165, 168, 172, - 176, 181, 186, 190, 195, 200, 202, 204, 208, 212, - 217, 219, 221, 224, 227, 231, 237, 241, 244, 248, - 254, 258, 260, 262, 264, 267, 270, 273, 277, 281, - 285, 289, 293, 295, 297, 299, 301, 303, 305, 308, - 310, 313, 316, 320, 322, 324, 328, 332, 338, 344, - 348, 352, 358, 364, 368, 372, 374, 376, 378, 381, - 384, 388, 390, 393, 396, 400, 403, 407, 409, 413, - 417, 419, 423, 427, 429 -}; -static const short yyrhs[] = -{ - 6, 0, 7, 0, 5, 0, 23, 0, 30, 0, - 30, 26, 0, 30, 26, 35, 0, 30, 26, 35, - 33, 0, 30, 26, 33, 0, 30, 26, 33, 35, - 0, 30, 35, 0, 30, 35, 26, 0, 30, 35, - 26, 33, 0, 30, 35, 33, 0, 30, 35, 33, - 26, 0, 27, 0, 27, 26, 0, 27, 26, 35, - 0, 27, 35, 0, 27, 35, 26, 0, 26, 30, - 0, 26, 30, 35, 0, 26, 30, 35, 33, 0, - 26, 27, 0, 26, 27, 35, 0, 26, 35, 30, - 0, 26, 35, 27, 0, 26, 35, 28, 0, 26, - 28, 0, 26, 28, 35, 0, 26, 33, 35, 30, - 0, 35, 0, 35, 30, 0, 35, 30, 26, 0, - 35, 30, 26, 33, 0, 35, 27, 0, 35, 27, - 26, 0, 35, 26, 30, 0, 35, 26, 27, 0, - 35, 26, 28, 0, 35, 28, 0, 35, 28, 26, - 0, 35, 33, 26, 30, 0, 28, 0, 28, 26, - 0, 28, 26, 35, 0, 28, 35, 0, 28, 35, - 26, 0, 33, 26, 30, 0, 33, 26, 30, 35, - 0, 33, 26, 35, 30, 0, 33, 35, 30, 0, - 33, 35, 30, 26, 0, 33, 35, 26, 30, 0, - 9, 0, 26, 0, 29, 18, 41, 0, 29, 18, - 35, 0, 29, 18, 35, 26, 0, 1, 0, 3, - 0, 3, 18, 0, 30, 33, 0, 31, 19, 33, - 0, 24, 19, 24, 19, 33, 0, 32, 20, 33, - 0, 33, 30, 0, 33, 19, 31, 0, 33, 19, - 24, 19, 24, 0, 33, 20, 32, 0, 29, 0, - 12, 0, 13, 0, 24, 34, 0, 34, 24, 0, - 24, 24, 0, 24, 19, 34, 0, 34, 19, 24, - 0, 24, 20, 34, 0, 34, 20, 24, 0, 24, - 20, 24, 0, 7, 0, 6, 0, 8, 0, 9, - 0, 10, 0, 4, 0, 4, 18, 0, 37, 0, - 36, 38, 0, 36, 39, 0, 36, 38, 39, 0, - 9, 0, 37, 0, 5, 21, 23, 0, 5, 18, - 23, 0, 5, 21, 23, 21, 23, 0, 5, 18, - 23, 18, 23, 0, 6, 21, 23, 0, 6, 18, - 23, 0, 6, 21, 23, 21, 23, 0, 6, 18, - 23, 18, 23, 0, 9, 21, 23, 0, 9, 18, - 23, 0, 11, 0, 14, 0, 15, 0, 15, 17, - 0, 19, 15, 0, 19, 15, 17, 0, 16, 0, - 19, 16, 0, 22, 40, 0, 19, 22, 40, 0, - 19, 40, 0, 19, 19, 40, 0, 5, 0, 5, - 21, 23, 0, 5, 18, 23, 0, 6, 0, 6, - 21, 23, 0, 6, 18, 23, 0, 9, 0, 9, - 0 -}; - -#endif - -#if YYDEBUG -/* YYRLINE[YYN] -- source line where rule number YYN was defined. */ -static const short yyrline[] = -{ - 0, 72, 74, 77, 79, 82, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, - 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 138, 139, 140, 141, - 142, 148, 151, 155, 157, 158, 160, 163, 165, 166, - 168, 169, 172, 179, 186, 189, 191, 195, 198, 202, - 205, 207, 211, 214, 216, 218, 220, 224, 227, 231, - 233, 234, 235, 238, 244, 247, 253, 258, 263, 268, - 273, 278, 283, 288, 293, 298, 305, 315, 318, 320, - 322, 324, 326, 328, 330, 332, 334, 338, 341, 343, - 345, 347, 349, 351, 355 -}; -#endif - - -#if (YYDEBUG) || defined YYERROR_VERBOSE - -/* YYTNAME[TOKEN_NUM] -- String name of the token TOKEN_NUM. */ -static const char *const yytname[] = -{ - "$", "error", "$undefined.", "DAY_NAME", "MONTH_NAME", "NUM9", "NUM23", - "NUM59", "NUM99", "NUM2359", "NUM9999", "NUM235959", "NUM991231", - "NUM99991231", "AMPM", "STD_ZONE", "DST_ZONE", "DST_SUFFIX", "'.'", - "'-'", "'/'", "':'", "'+'", "num59", "num", "goal", "dayname", - "date.year", "year.date", "yymmdd", "date", "hyphen.date", "slash.date", - "year", "month.name", "time", "hour", "hour.alone", "am.pm", "zone", - "zone.offset", "time2359", 0 -}; -#endif - -/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ -static const short yyr1[] = -{ - 0, 23, 23, 24, 24, 25, 25, 25, 25, 25, - 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, - 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, - 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, - 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, - 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, - 25, 26, 26, 27, 27, 27, 27, 28, 28, 28, - 28, 28, 29, 29, 30, 30, 30, 31, 31, 32, - 32, 32, 33, 33, 33, 33, 33, 34, 34, 35, - 35, 35, 35, 36, 36, 37, 37, 37, 37, 37, - 37, 37, 37, 37, 37, 37, 38, 39, 39, 39, - 39, 39, 39, 39, 39, 39, 39, 40, 40, 40, - 40, 40, 40, 40, 41 -}; - -/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ -static const short yyr2[] = -{ - 0, 1, 1, 1, 1, 1, 2, 3, 4, 3, - 4, 2, 3, 4, 3, 4, 1, 2, 3, 2, - 3, 2, 3, 4, 2, 3, 3, 3, 3, 2, - 3, 4, 1, 2, 3, 4, 2, 3, 3, 3, - 3, 2, 3, 4, 1, 2, 3, 2, 3, 3, - 4, 4, 3, 4, 4, 1, 1, 3, 3, 4, - 1, 1, 2, 2, 3, 5, 3, 2, 3, 5, - 3, 1, 1, 1, 2, 2, 2, 3, 3, 3, - 3, 3, 1, 1, 1, 1, 1, 1, 2, 1, - 2, 2, 3, 1, 1, 3, 3, 5, 5, 3, - 3, 5, 5, 3, 3, 1, 1, 1, 2, 2, - 3, 1, 2, 2, 3, 2, 3, 1, 3, 3, - 1, 3, 3, 1, 1 -}; - -/* YYDEFACT[S] -- default rule to reduce with in state S when YYTABLE - doesn't specify something else to do. Zero means the default is an - error. */ -static const short yydefact[] = -{ - 0, 60, 61, 87, 3, 1, 2, 84, 85, 86, - 105, 72, 73, 4, 0, 56, 16, 44, 71, 5, - 0, 0, 0, 0, 32, 0, 89, 62, 88, 0, - 0, 0, 0, 0, 0, 3, 1, 2, 0, 0, - 76, 74, 85, 24, 29, 71, 21, 0, 0, 0, - 0, 93, 17, 19, 45, 47, 0, 83, 82, 6, - 63, 11, 0, 0, 1, 0, 0, 0, 0, 67, - 0, 0, 0, 0, 75, 1, 85, 0, 36, 41, - 33, 0, 106, 107, 111, 0, 0, 90, 91, 96, - 95, 100, 99, 104, 103, 0, 77, 81, 79, 25, - 30, 22, 0, 27, 28, 26, 0, 18, 20, 46, - 48, 93, 58, 57, 9, 7, 83, 12, 14, 64, - 66, 0, 68, 0, 0, 70, 0, 49, 0, 0, - 52, 78, 80, 39, 40, 38, 37, 42, 34, 0, - 108, 117, 120, 123, 109, 112, 0, 0, 115, 113, - 92, 0, 0, 0, 0, 0, 23, 31, 59, 10, - 8, 13, 15, 0, 50, 51, 54, 53, 35, 43, - 0, 0, 0, 0, 110, 116, 114, 98, 97, 102, - 101, 65, 69, 119, 118, 122, 121, 0, 0, 0 -}; - -static const short yydefgoto[] = -{ - 13, 67, 187, 15, 16, 17, 45, 69, 20, 21, - 60, 70, 24, 25, 26, 87, 88, 148, 113 -}; - -static const short yypact[] = -{ - 255,-32768, -6, 16, 14, 22, 46,-32768, 84,-32768, - -32768,-32768,-32768,-32768, 231, 276, 307, 307, 18, 298, - -3, 36, 148, -2, 266, 305, 314,-32768,-32768, 40, - 40, 40, 40, 40, 40,-32768,-32768,-32768, 370, 370, - -32768,-32768, 102, 238, 238,-32768, 345, 207, 287, 14, - 24, 83, 238, 55, 238, 55, 352, 24,-32768, 345, - -32768, 331, 358, 358, 24, 370, 370, 370, 338,-32768, - 218, 366, 218, 218,-32768, 57,-32768, 287, 55, 55, - 331, 90,-32768, 47,-32768, 183, 156, 92,-32768, 51, - 50, 58, 54,-32768,-32768, 62,-32768,-32768,-32768,-32768, - -32768, 358, 370,-32768,-32768, 358, 235,-32768,-32768,-32768, - -32768, 1, 55,-32768, 238, 358,-32768, 358, 55,-32768, - -32768, 67,-32768, 72, 93,-32768, 105, 238, 370, 370, - 55,-32768,-32768,-32768,-32768, 358,-32768,-32768, 358, 370, - -32768, 101, 118,-32768, 109,-32768, 156, 156,-32768,-32768, - -32768, 40, 40, 40, 40, 358,-32768,-32768,-32768,-32768, - -32768,-32768,-32768, 370,-32768,-32768,-32768,-32768,-32768,-32768, - 40, 40, 40, 40,-32768,-32768,-32768,-32768,-32768,-32768, - -32768,-32768,-32768,-32768,-32768,-32768,-32768, 134, 137,-32768 -}; - -static const short yypgoto[] = -{ - -23, 0,-32768, 116, 5, 6, 142, 44, 79, 94, - 26, 13, 163,-32768,-32768,-32768, 69, -84,-32768 -}; - - -#define YYLAST 377 - - -static const short yytable[] = -{ - 14, -124, 149, 35, 36, 37, 89, 90, 91, 92, - 93, 94, 27, 23, 40, 14, 62, 72, 73, 33, - 43, 44, 34, 74, 14, -83, 22, 41, 23, 78, - 79, -83, 29, -83, 28, 30, 56, 23, 95, 97, - 31, 47, 31, 32, 19, 32, 36, 37, 14, -82, - 81, 96, 98, 103, 104, -82, 63, -82, 2, 46, - -83, 23, 175, 176, 140, 121, 124, 40, 80, 151, - 74, 152, 131, 132, 106, 154, 153, 14, 123, 126, - 41, 155, 133, 134, -55, 114, 163, 118, 119, 120, - 23, 72, 105, 2, 3, 35, 36, 37, -93, -93, - -93, 33, 33, 106, 34, 34, -93, 83, 84, 65, - 66, 85, 127, 39, 86, 130, -93, -93, -93, 170, - 33, 135, 171, 34, -93, 73, 174, 156, 177, 178, - 179, 180, 52, 54, 188, 59, 172, 189, 68, 173, - 77, 160, 18, 161, 122, 0, 157, 183, 184, 185, - 186, 2, 3, 4, 64, 37, 150, 51, 0, 10, - 125, 141, 142, 182, 168, 143, 0, 65, 66, 108, - 0, 110, 165, 166, 0, 0, 96, 117, 48, 53, - 55, 181, 61, 169, 0, 71, 0, 129, 141, 142, - 0, 0, 143, 0, 136, 137, 138, 139, 144, 145, - 0, 0, 146, 0, 0, 147, 99, 100, 0, 101, - 102, 3, 4, 64, 37, 107, 51, 109, 10, 112, - 0, 0, 115, 35, 36, 37, 65, 66, 158, 0, - 0, 128, 0, 0, 162, 3, 35, 36, 37, 3, - 35, 36, 37, 49, 50, 0, 167, 51, 0, 10, - 38, 39, 0, 0, 65, 66, 1, 0, 2, 3, - 4, 5, 6, 7, 8, 9, 10, 11, 12, 2, - 3, 35, 75, 6, 7, 76, 9, 159, 11, 12, - 3, 4, 5, 6, 7, 42, 9, 10, 11, 12, - 164, 3, 35, 75, 6, 7, 76, 9, 0, 11, - 12, 2, 0, 49, 57, 58, 7, 42, 9, 10, - 2, 0, 49, 50, 0, 0, 51, 0, 10, 82, - 83, 84, 0, 0, 85, 0, 0, 86, -94, -94, - -94, 0, 0, -94, 2, 0, -94, 116, 58, 7, - 76, 9, 3, 4, 64, 37, 0, 51, 0, 10, - 49, 57, 58, 7, 42, 9, 10, 49, 50, 0, - 0, 111, 0, 10, 116, 58, 7, 76, 9, 2, - 3, 35, 36, 37, 3, 35, 36, 37 -}; - -static const short yycheck[] = -{ - 0, 0, 86, 5, 6, 7, 29, 30, 31, 32, - 33, 34, 18, 0, 14, 15, 19, 19, 20, 18, - 15, 15, 21, 23, 24, 3, 0, 14, 15, 24, - 24, 9, 18, 11, 18, 21, 18, 24, 38, 39, - 18, 15, 18, 21, 0, 21, 6, 7, 48, 3, - 24, 38, 39, 48, 48, 9, 20, 11, 3, 15, - 3, 48, 146, 147, 17, 65, 66, 67, 24, 18, - 70, 21, 72, 73, 48, 21, 18, 77, 65, 66, - 67, 19, 77, 77, 0, 59, 19, 61, 62, 63, - 77, 19, 48, 3, 4, 5, 6, 7, 14, 15, - 16, 18, 18, 77, 21, 21, 22, 15, 16, 19, - 20, 19, 68, 20, 22, 71, 14, 15, 16, 18, - 18, 77, 21, 21, 22, 20, 17, 101, 151, 152, - 153, 154, 16, 17, 0, 19, 18, 0, 22, 21, - 24, 115, 0, 117, 65, -1, 102, 170, 171, 172, - 173, 3, 4, 5, 6, 7, 87, 9, -1, 11, - 66, 5, 6, 163, 138, 9, -1, 19, 20, 53, - -1, 55, 128, 129, -1, -1, 163, 61, 15, 16, - 17, 155, 19, 139, -1, 22, -1, 71, 5, 6, - -1, -1, 9, -1, 78, 79, 80, 81, 15, 16, - -1, -1, 19, -1, -1, 22, 43, 44, -1, 46, - 47, 4, 5, 6, 7, 52, 9, 54, 11, 56, - -1, -1, 59, 5, 6, 7, 19, 20, 112, -1, - -1, 68, -1, -1, 118, 4, 5, 6, 7, 4, - 5, 6, 7, 5, 6, -1, 130, 9, -1, 11, - 19, 20, -1, -1, 19, 20, 1, -1, 3, 4, - 5, 6, 7, 8, 9, 10, 11, 12, 13, 3, - 4, 5, 6, 7, 8, 9, 10, 114, 12, 13, - 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, - 127, 4, 5, 6, 7, 8, 9, 10, -1, 12, - 13, 3, -1, 5, 6, 7, 8, 9, 10, 11, - 3, -1, 5, 6, -1, -1, 9, -1, 11, 14, - 15, 16, -1, -1, 19, -1, -1, 22, 14, 15, - 16, -1, -1, 19, 3, -1, 22, 6, 7, 8, - 9, 10, 4, 5, 6, 7, -1, 9, -1, 11, - 5, 6, 7, 8, 9, 10, 11, 5, 6, -1, - -1, 9, -1, 11, 6, 7, 8, 9, 10, 3, - 4, 5, 6, 7, 4, 5, 6, 7 -}; -/* -*-C-*- Note some compilers choke on comments on `#line' lines. */ -#line 3 "/usr/share/bison/bison.simple" - -/* Skeleton output parser for bison, - - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002 Free Software - Foundation, Inc. - - This program 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 2, or (at your option) - any later version. - - This program 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 this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ - -/* As a special exception, when this file is copied by Bison into a - Bison output file, you may use that output file without restriction. - This special exception was added by the Free Software Foundation - in version 1.24 of Bison. */ - -/* This is the parser code that is written into each bison parser when - the %semantic_parser declaration is not specified in the grammar. - It was written by Richard Stallman by simplifying the hairy parser - used when %semantic_parser is specified. */ - -/* All symbols defined below should begin with yy or YY, to avoid - infringing on user name space. This should be done even for local - variables, as they might otherwise be expanded by user macros. - There are some unavoidable exceptions within include files to - define necessary library symbols; they are noted "INFRINGES ON - USER NAME SPACE" below. */ - -#if ! defined (yyoverflow) || defined (YYERROR_VERBOSE) - -/* The parser invokes alloca or malloc; define the necessary symbols. */ - -# if YYSTACK_USE_ALLOCA -# define YYSTACK_ALLOC alloca -# else -# ifndef YYSTACK_USE_ALLOCA -# if defined (alloca) || defined (_ALLOCA_H) -# define YYSTACK_ALLOC alloca -# else -# ifdef __GNUC__ -# define YYSTACK_ALLOC __builtin_alloca -# endif -# endif -# endif -# endif - -# ifdef YYSTACK_ALLOC - /* Pacify GCC's `empty if-body' warning. */ -# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) -# else -# if defined (__STDC__) || defined (__cplusplus) -# include /* INFRINGES ON USER NAME SPACE */ -# define YYSIZE_T size_t -# endif -# define YYSTACK_ALLOC malloc -# define YYSTACK_FREE free -# endif -#endif /* ! defined (yyoverflow) || defined (YYERROR_VERBOSE) */ - - -#if (! defined (yyoverflow) \ - && (! defined (__cplusplus) \ - || (YYLTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) - -/* A type that is properly aligned for any stack member. */ -union yyalloc -{ - short yyss; - YYSTYPE yyvs; -# if YYLSP_NEEDED - YYLTYPE yyls; -# endif -}; - -/* The size of the maximum gap between one aligned stack and the next. */ -# define YYSTACK_GAP_MAX (sizeof (union yyalloc) - 1) - -/* The size of an array large to enough to hold all stacks, each with - N elements. */ -# if YYLSP_NEEDED -# define YYSTACK_BYTES(N) \ - ((N) * (sizeof (short) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \ - + 2 * YYSTACK_GAP_MAX) -# else -# define YYSTACK_BYTES(N) \ - ((N) * (sizeof (short) + sizeof (YYSTYPE)) \ - + YYSTACK_GAP_MAX) -# endif - -/* Copy COUNT objects from FROM to TO. The source and destination do - not overlap. */ -# ifndef YYCOPY -# if 1 < __GNUC__ -# define YYCOPY(To, From, Count) \ - __builtin_memcpy (To, From, (Count) * sizeof (*(From))) -# else -# define YYCOPY(To, From, Count) \ - do \ - { \ - register YYSIZE_T yyi; \ - for (yyi = 0; yyi < (Count); yyi++) \ - (To)[yyi] = (From)[yyi]; \ - } \ - while (0) -# endif -# endif - -/* Relocate STACK from its old location to the new one. The - local variables YYSIZE and YYSTACKSIZE give the old and new number of - elements in the stack, and YYPTR gives the new location of the - stack. Advance YYPTR to a properly aligned location for the next - stack. */ -# define YYSTACK_RELOCATE(Stack) \ - do \ - { \ - YYSIZE_T yynewbytes; \ - YYCOPY (&yyptr->Stack, Stack, yysize); \ - Stack = &yyptr->Stack; \ - yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAX; \ - yyptr += yynewbytes / sizeof (*yyptr); \ - } \ - while (0) - -#endif - - -#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__) -# define YYSIZE_T __SIZE_TYPE__ -#endif -#if ! defined (YYSIZE_T) && defined (size_t) -# define YYSIZE_T size_t -#endif -#if ! defined (YYSIZE_T) -# if defined (__STDC__) || defined (__cplusplus) -# include /* INFRINGES ON USER NAME SPACE */ -# define YYSIZE_T size_t -# endif -#endif -#if ! defined (YYSIZE_T) -# define YYSIZE_T unsigned int -#endif - -#define yyerrok (yyerrstatus = 0) -#define yyclearin (yychar = YYEMPTY) -#define YYEMPTY -2 -#define YYEOF 0 -#define YYACCEPT goto yyacceptlab -#define YYABORT goto yyabortlab -#define YYERROR goto yyerrlab1 -/* Like YYERROR except do call yyerror. This remains here temporarily - to ease the transition to the new meaning of YYERROR, for GCC. - Once GCC version 2 has supplanted version 1, this can go. */ -#define YYFAIL goto yyerrlab -#define YYRECOVERING() (!!yyerrstatus) -#define YYBACKUP(Token, Value) \ -do \ - if (yychar == YYEMPTY && yylen == 1) \ - { \ - yychar = (Token); \ - yylval = (Value); \ - yychar1 = YYTRANSLATE (yychar); \ - YYPOPSTACK; \ - goto yybackup; \ - } \ - else \ - { \ - yyerror ("syntax error: cannot back up"); \ - YYERROR; \ - } \ -while (0) - -#define YYTERROR 1 -#define YYERRCODE 256 - - -/* YYLLOC_DEFAULT -- Compute the default location (before the actions - are run). - - When YYLLOC_DEFAULT is run, CURRENT is set the location of the - first token. By default, to implement support for ranges, extend - its range to the last symbol. */ - -#ifndef YYLLOC_DEFAULT -# define YYLLOC_DEFAULT(Current, Rhs, N) \ - Current.last_line = Rhs[N].last_line; \ - Current.last_column = Rhs[N].last_column; -#endif - - -/* YYLEX -- calling `yylex' with the right arguments. */ - -#if YYPURE -# if YYLSP_NEEDED -# ifdef YYLEX_PARAM -# define YYLEX yylex (&yylval, &yylloc, YYLEX_PARAM) -# else -# define YYLEX yylex (&yylval, &yylloc) -# endif -# else /* !YYLSP_NEEDED */ -# ifdef YYLEX_PARAM -# define YYLEX yylex (&yylval, YYLEX_PARAM) -# else -# define YYLEX yylex (&yylval) -# endif -# endif /* !YYLSP_NEEDED */ -#else /* !YYPURE */ -# define YYLEX yylex () -#endif /* !YYPURE */ - - -/* Enable debugging if requested. */ -#if YYDEBUG - -# ifndef YYFPRINTF -# include /* INFRINGES ON USER NAME SPACE */ -# define YYFPRINTF fprintf -# endif - -# define YYDPRINTF(Args) \ -do { \ - if (yydebug) \ - YYFPRINTF Args; \ -} while (0) -/* Nonzero means print parse trace. It is left uninitialized so that - multiple parsers can coexist. */ -int yydebug; -#else /* !YYDEBUG */ -# define YYDPRINTF(Args) -#endif /* !YYDEBUG */ - -/* YYINITDEPTH -- initial size of the parser's stacks. */ -#ifndef YYINITDEPTH -# define YYINITDEPTH 200 -#endif - -/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only - if the built-in stack extension method is used). - - Do not make this value too large; the results are undefined if - SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH) - evaluated with infinite-precision integer arithmetic. */ - -#if YYMAXDEPTH == 0 -# undef YYMAXDEPTH -#endif - -#ifndef YYMAXDEPTH -# define YYMAXDEPTH 10000 -#endif - -#ifdef YYERROR_VERBOSE - -# ifndef yystrlen -# if defined (__GLIBC__) && defined (_STRING_H) -# define yystrlen strlen -# else -/* Return the length of YYSTR. */ -static YYSIZE_T -# if defined (__STDC__) || defined (__cplusplus) -yystrlen (const char *yystr) -# else -yystrlen (yystr) - const char *yystr; -# endif -{ - register const char *yys = yystr; - - while (*yys++ != '\0') - continue; - - return yys - yystr - 1; -} -# endif -# endif - -# ifndef yystpcpy -# if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE) -# define yystpcpy stpcpy -# else -/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in - YYDEST. */ -static char * -# if defined (__STDC__) || defined (__cplusplus) -yystpcpy (char *yydest, const char *yysrc) -# else -yystpcpy (yydest, yysrc) - char *yydest; - const char *yysrc; -# endif -{ - register char *yyd = yydest; - register const char *yys = yysrc; - - while ((*yyd++ = *yys++) != '\0') - continue; - - return yyd - 1; -} -# endif -# endif -#endif - -#line 315 "/usr/share/bison/bison.simple" - - -/* The user can define YYPARSE_PARAM as the name of an argument to be passed - into yyparse. The argument should have type void *. - It should actually point to an object. - Grammar actions can access the variable by casting it - to the proper pointer type. */ - -#ifdef YYPARSE_PARAM -# if defined (__STDC__) || defined (__cplusplus) -# define YYPARSE_PARAM_ARG void *YYPARSE_PARAM -# define YYPARSE_PARAM_DECL -# else -# define YYPARSE_PARAM_ARG YYPARSE_PARAM -# define YYPARSE_PARAM_DECL void *YYPARSE_PARAM; -# endif -#else /* !YYPARSE_PARAM */ -# define YYPARSE_PARAM_ARG -# define YYPARSE_PARAM_DECL -#endif /* !YYPARSE_PARAM */ - -/* Prevent warning if -Wstrict-prototypes. */ -#ifdef __GNUC__ -# ifdef YYPARSE_PARAM -int yyparse (void *); -# else -int yyparse (void); -# endif -#endif - -/* YY_DECL_VARIABLES -- depending whether we use a pure parser, - variables are global, or local to YYPARSE. */ - -#define YY_DECL_NON_LSP_VARIABLES \ -/* The lookahead symbol. */ \ -int yychar; \ - \ -/* The semantic value of the lookahead symbol. */ \ -YYSTYPE yylval; \ - \ -/* Number of parse errors so far. */ \ -int yynerrs; - -#if YYLSP_NEEDED -# define YY_DECL_VARIABLES \ -YY_DECL_NON_LSP_VARIABLES \ - \ -/* Location data for the lookahead symbol. */ \ -YYLTYPE yylloc; -#else -# define YY_DECL_VARIABLES \ -YY_DECL_NON_LSP_VARIABLES -#endif - - -/* If nonreentrant, generate the variables here. */ - -#if !YYPURE -YY_DECL_VARIABLES -#endif /* !YYPURE */ - -int -yyparse (YYPARSE_PARAM_ARG) - YYPARSE_PARAM_DECL -{ - /* If reentrant, generate the variables here. */ -#if YYPURE - YY_DECL_VARIABLES -#endif /* !YYPURE */ - - register int yystate; - register int yyn; - int yyresult; - /* Number of tokens to shift before error messages enabled. */ - int yyerrstatus; - /* Lookahead token as an internal (translated) token number. */ - int yychar1 = 0; - - /* Three stacks and their tools: - `yyss': related to states, - `yyvs': related to semantic values, - `yyls': related to locations. - - Refer to the stacks thru separate pointers, to allow yyoverflow - to reallocate them elsewhere. */ - - /* The state stack. */ - short yyssa[YYINITDEPTH]; - short *yyss = yyssa; - register short *yyssp; - - /* The semantic value stack. */ - YYSTYPE yyvsa[YYINITDEPTH]; - YYSTYPE *yyvs = yyvsa; - register YYSTYPE *yyvsp; - -#if YYLSP_NEEDED - /* The location stack. */ - YYLTYPE yylsa[YYINITDEPTH]; - YYLTYPE *yyls = yylsa; - YYLTYPE *yylsp; -#endif - -#if YYLSP_NEEDED -# define YYPOPSTACK (yyvsp--, yyssp--, yylsp--) -#else -# define YYPOPSTACK (yyvsp--, yyssp--) -#endif - - YYSIZE_T yystacksize = YYINITDEPTH; - - - /* The variables used to return semantic value and location from the - action routines. */ - YYSTYPE yyval; -#if YYLSP_NEEDED - YYLTYPE yyloc; -#endif - - /* When reducing, the number of symbols on the RHS of the reduced - rule. */ - int yylen; - - YYDPRINTF ((stderr, "Starting parse\n")); - - yystate = 0; - yyerrstatus = 0; - yynerrs = 0; - yychar = YYEMPTY; /* Cause a token to be read. */ - - /* Initialize stack pointers. - Waste one element of value and location stack - so that they stay on the same level as the state stack. - The wasted elements are never initialized. */ - - yyssp = yyss; - yyvsp = yyvs; -#if YYLSP_NEEDED - yylsp = yyls; -#endif - goto yysetstate; - -/*------------------------------------------------------------. -| yynewstate -- Push a new state, which is found in yystate. | -`------------------------------------------------------------*/ - yynewstate: - /* In all cases, when you get here, the value and location stacks - have just been pushed. so pushing a state here evens the stacks. - */ - yyssp++; - - yysetstate: - *yyssp = yystate; - - if (yyssp >= yyss + yystacksize - 1) - { - /* Get the current used size of the three stacks, in elements. */ - YYSIZE_T yysize = yyssp - yyss + 1; - -#ifdef yyoverflow - { - /* Give user a chance to reallocate the stack. Use copies of - these so that the &'s don't force the real ones into - memory. */ - YYSTYPE *yyvs1 = yyvs; - short *yyss1 = yyss; - - /* Each stack pointer address is followed by the size of the - data in use in that stack, in bytes. */ -# if YYLSP_NEEDED - YYLTYPE *yyls1 = yyls; - /* This used to be a conditional around just the two extra args, - but that might be undefined if yyoverflow is a macro. */ - yyoverflow ("parser stack overflow", - &yyss1, yysize * sizeof (*yyssp), - &yyvs1, yysize * sizeof (*yyvsp), - &yyls1, yysize * sizeof (*yylsp), - &yystacksize); - yyls = yyls1; -# else - yyoverflow ("parser stack overflow", - &yyss1, yysize * sizeof (*yyssp), - &yyvs1, yysize * sizeof (*yyvsp), - &yystacksize); -# endif - yyss = yyss1; - yyvs = yyvs1; - } -#else /* no yyoverflow */ -# ifndef YYSTACK_RELOCATE - goto yyoverflowlab; -# else - /* Extend the stack our own way. */ - if (yystacksize >= YYMAXDEPTH) - goto yyoverflowlab; - yystacksize *= 2; - if (yystacksize > YYMAXDEPTH) - yystacksize = YYMAXDEPTH; - - { - short *yyss1 = yyss; - union yyalloc *yyptr = - (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); - if (! yyptr) - goto yyoverflowlab; - YYSTACK_RELOCATE (yyss); - YYSTACK_RELOCATE (yyvs); -# if YYLSP_NEEDED - YYSTACK_RELOCATE (yyls); -# endif -# undef YYSTACK_RELOCATE - if (yyss1 != yyssa) - YYSTACK_FREE (yyss1); - } -# endif -#endif /* no yyoverflow */ - - yyssp = yyss + yysize - 1; - yyvsp = yyvs + yysize - 1; -#if YYLSP_NEEDED - yylsp = yyls + yysize - 1; -#endif - - YYDPRINTF ((stderr, "Stack size increased to %lu\n", - (unsigned long int) yystacksize)); - - if (yyssp >= yyss + yystacksize - 1) - YYABORT; - } - - YYDPRINTF ((stderr, "Entering state %d\n", yystate)); - - goto yybackup; - - -/*-----------. -| yybackup. | -`-----------*/ -yybackup: - -/* Do appropriate processing given the current state. */ -/* Read a lookahead token if we need one and don't already have one. */ -/* yyresume: */ - - /* First try to decide what to do without reference to lookahead token. */ - - yyn = yypact[yystate]; - if (yyn == YYFLAG) - goto yydefault; - - /* Not known => get a lookahead token if don't already have one. */ - - /* yychar is either YYEMPTY or YYEOF - or a valid token in external form. */ - - if (yychar == YYEMPTY) - { - YYDPRINTF ((stderr, "Reading a token: ")); - yychar = YYLEX; - } - - /* Convert token to internal form (in yychar1) for indexing tables with */ - - if (yychar <= 0) /* This means end of input. */ - { - yychar1 = 0; - yychar = YYEOF; /* Don't call YYLEX any more */ - - YYDPRINTF ((stderr, "Now at end of input.\n")); - } - else - { - yychar1 = YYTRANSLATE (yychar); - -#if YYDEBUG - /* We have to keep this `#if YYDEBUG', since we use variables - which are defined only if `YYDEBUG' is set. */ - if (yydebug) - { - YYFPRINTF (stderr, "Next token is %d (%s", - yychar, yytname[yychar1]); - /* Give the individual parser a way to print the precise - meaning of a token, for further debugging info. */ -# ifdef YYPRINT - YYPRINT (stderr, yychar, yylval); -# endif - YYFPRINTF (stderr, ")\n"); - } -#endif - } - - yyn += yychar1; - if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1) - goto yydefault; - - yyn = yytable[yyn]; - - /* yyn is what to do for this token type in this state. - Negative => reduce, -yyn is rule number. - Positive => shift, yyn is new state. - New state is final state => don't bother to shift, - just return success. - 0, or most negative number => error. */ - - if (yyn < 0) - { - if (yyn == YYFLAG) - goto yyerrlab; - yyn = -yyn; - goto yyreduce; - } - else if (yyn == 0) - goto yyerrlab; - - if (yyn == YYFINAL) - YYACCEPT; - - /* Shift the lookahead token. */ - YYDPRINTF ((stderr, "Shifting token %d (%s), ", - yychar, yytname[yychar1])); - - /* Discard the token being shifted unless it is eof. */ - if (yychar != YYEOF) - yychar = YYEMPTY; - - *++yyvsp = yylval; -#if YYLSP_NEEDED - *++yylsp = yylloc; -#endif - - /* Count tokens shifted since error; after three, turn off error - status. */ - if (yyerrstatus) - yyerrstatus--; - - yystate = yyn; - goto yynewstate; - - -/*-----------------------------------------------------------. -| yydefault -- do the default action for the current state. | -`-----------------------------------------------------------*/ -yydefault: - yyn = yydefact[yystate]; - if (yyn == 0) - goto yyerrlab; - goto yyreduce; - - -/*-----------------------------. -| yyreduce -- Do a reduction. | -`-----------------------------*/ -yyreduce: - /* yyn is the number of a rule to reduce with. */ - yylen = yyr2[yyn]; - - /* If YYLEN is nonzero, implement the default value of the action: - `$$ = $1'. - - Otherwise, the following line sets YYVAL to the semantic value of - the lookahead token. This behavior is undocumented and Bison - users should not rely upon it. Assigning to YYVAL - unconditionally makes the parser a bit smaller, and it avoids a - GCC warning that YYVAL may be used uninitialized. */ - yyval = yyvsp[1-yylen]; - -#if YYLSP_NEEDED - /* Similarly for the default location. Let the user run additional - commands if for instance locations are ranges. */ - yyloc = yylsp[1-yylen]; - YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen); -#endif - -#if YYDEBUG - /* We have to keep this `#if YYDEBUG', since we use variables which - are defined only if `YYDEBUG' is set. */ - if (yydebug) - { - int yyi; - - YYFPRINTF (stderr, "Reducing via rule %d (line %d), ", - yyn, yyrline[yyn]); - - /* Print the symbols being reduced, and their result. */ - for (yyi = yyprhs[yyn]; yyrhs[yyi] > 0; yyi++) - YYFPRINTF (stderr, "%s ", yytname[yyrhs[yyi]]); - YYFPRINTF (stderr, " -> %s\n", yytname[yyr1[yyn]]); - } -#endif - - switch (yyn) { - -case 55: -#line 134 "dateyacc.y" -{ yyans.hour = yyvsp[0].IntVal / 100; - yyans.minute = yyvsp[0].IntVal % 100; - yyans.second = -1; /* unspecified */ - ; - break;} -case 60: -#line 143 "dateyacc.y" -{ extern char *yyinbuf; - if (yyans.error == NULL) yyans.error = yyinbuf; - ; - break;} -case 61: -#line 150 "dateyacc.y" -{ yyans.c_weekday = yyvsp[0].IntVal; ; - break;} -case 62: -#line 152 "dateyacc.y" -{ yyans.c_weekday = yyvsp[-1].IntVal; ; - break;} -case 65: -#line 159 "dateyacc.y" -{ yyans.day = yyvsp[-4].IntVal; yyans.month = yyvsp[-2].IntVal; ; - break;} -case 69: -#line 167 "dateyacc.y" -{ yyans.day = yyvsp[0].IntVal; yyans.month = yyvsp[-2].IntVal; ; - break;} -case 72: -#line 174 "dateyacc.y" -{ yyans.year = (yyvsp[0].IntVal / 10000) + 1900; /* ajs */ - yyans.month = (yyvsp[0].IntVal % 10000) / 100; /* ajs */ - yyans.day = (yyvsp[0].IntVal % 100); /* ajs */ - ; - break;} -case 73: -#line 180 "dateyacc.y" -{ yyans.year = (yyvsp[0].IntVal / 10000); /* ajs */ - yyans.month = (yyvsp[0].IntVal % 10000) / 100; /* ajs */ - yyans.day = (yyvsp[0].IntVal % 100); /* ajs */ - ; - break;} -case 74: -#line 188 "dateyacc.y" -{ yyans.day = yyvsp[-1].IntVal; ; - break;} -case 75: -#line 190 "dateyacc.y" -{ yyans.day = yyvsp[0].IntVal; ; - break;} -case 76: -#line 192 "dateyacc.y" -{ yyans.month = yyvsp[-1].IntVal; yyans.day = yyvsp[0].IntVal; ; - break;} -case 77: -#line 197 "dateyacc.y" -{ yyans.day = yyvsp[-2].IntVal; ; - break;} -case 78: -#line 199 "dateyacc.y" -{ yyans.day = yyvsp[0].IntVal; ; - break;} -case 79: -#line 204 "dateyacc.y" -{ yyans.day = yyvsp[-2].IntVal; ; - break;} -case 80: -#line 206 "dateyacc.y" -{ yyans.day = yyvsp[0].IntVal; ; - break;} -case 81: -#line 208 "dateyacc.y" -{ yyans.month = yyvsp[-2].IntVal; yyans.day = yyvsp[0].IntVal; ; - break;} -case 82: -#line 213 "dateyacc.y" -{ yyans.year = 2000 + yyvsp[0].IntVal; ; - break;} -case 83: -#line 215 "dateyacc.y" -{ yyans.year = 2000 + yyvsp[0].IntVal; ; - break;} -case 84: -#line 217 "dateyacc.y" -{ yyans.year = 1900 + yyvsp[0].IntVal; ; - break;} -case 85: -#line 219 "dateyacc.y" -{ yyans.year = yyvsp[0].IntVal; ; - break;} -case 86: -#line 221 "dateyacc.y" -{ yyans.year = yyvsp[0].IntVal; ; - break;} -case 87: -#line 226 "dateyacc.y" -{ yyans.month = yyvsp[0].IntVal; ; - break;} -case 88: -#line 228 "dateyacc.y" -{ yyans.month = yyvsp[-1].IntVal; ; - break;} -case 93: -#line 240 "dateyacc.y" -{ yyans.hour = yyvsp[0].IntVal / 100; - yyans.minute = yyvsp[0].IntVal % 100; - yyans.second = -1; /* unspecified */ - ; - break;} -case 95: -#line 249 "dateyacc.y" -{ yyans.hour = yyvsp[-2].IntVal; - yyans.minute = yyvsp[0].IntVal; - yyans.second = -1; /* unspecified */ - ; - break;} -case 96: -#line 254 "dateyacc.y" -{ yyans.hour = yyvsp[-2].IntVal; - yyans.minute = yyvsp[0].IntVal; - yyans.second = -1; /* unspecified */ - ; - break;} -case 97: -#line 259 "dateyacc.y" -{ yyans.hour = yyvsp[-4].IntVal; - yyans.minute = yyvsp[-2].IntVal; - yyans.second = yyvsp[0].IntVal; - ; - break;} -case 98: -#line 264 "dateyacc.y" -{ yyans.hour = yyvsp[-4].IntVal; - yyans.minute = yyvsp[-2].IntVal; - yyans.second = yyvsp[0].IntVal; - ; - break;} -case 99: -#line 269 "dateyacc.y" -{ yyans.hour = yyvsp[-2].IntVal; - yyans.minute = yyvsp[0].IntVal; - yyans.second = -1; /* unspecified */ - ; - break;} -case 100: -#line 274 "dateyacc.y" -{ yyans.hour = yyvsp[-2].IntVal; - yyans.minute = yyvsp[0].IntVal; - yyans.second = -1; /* unspecified */ - ; - break;} -case 101: -#line 279 "dateyacc.y" -{ yyans.hour = yyvsp[-4].IntVal; - yyans.minute = yyvsp[-2].IntVal; - yyans.second = yyvsp[0].IntVal; - ; - break;} -case 102: -#line 284 "dateyacc.y" -{ yyans.hour = yyvsp[-4].IntVal; - yyans.minute = yyvsp[-2].IntVal; - yyans.second = yyvsp[0].IntVal; - ; - break;} -case 103: -#line 289 "dateyacc.y" -{ yyans.hour = yyvsp[-2].IntVal / 100; - yyans.minute = yyvsp[-2].IntVal % 100; - yyans.second = yyvsp[0].IntVal; - ; - break;} -case 104: -#line 294 "dateyacc.y" -{ yyans.hour = yyvsp[-2].IntVal / 100; - yyans.minute = yyvsp[-2].IntVal % 100; - yyans.second = yyvsp[0].IntVal; - ; - break;} -case 105: -#line 299 "dateyacc.y" -{ yyans.hour = yyvsp[0].IntVal / 10000; - yyans.minute = (yyvsp[0].IntVal % 10000) / 100; - yyans.second = yyvsp[0].IntVal % 100; - ; - break;} -case 106: -#line 307 "dateyacc.y" -{ if (yyans.hour < 1 || yyans.hour > 12) - yyans.hour = -1; /* invalid */ - else - { if (yyans.hour == 12) yyans.hour = 0; - yyans.hour += yyvsp[0].IntVal; /* 0 for AM, 12 for PM */ - } ; - break;} -case 107: -#line 317 "dateyacc.y" -{ yyans.zone = yyvsp[0].IntVal; yyans.dst = 0; ; - break;} -case 108: -#line 319 "dateyacc.y" -{ yyans.zone = yyvsp[-1].IntVal + 60; yyans.dst = 1; ; - break;} -case 109: -#line 321 "dateyacc.y" -{ yyans.zone = yyvsp[0].IntVal; yyans.dst = 0; ; - break;} -case 110: -#line 323 "dateyacc.y" -{ yyans.zone = yyvsp[-1].IntVal + 60; yyans.dst = 1; ; - break;} -case 111: -#line 325 "dateyacc.y" -{ yyans.zone = yyvsp[0].IntVal; yyans.dst = 1; ; - break;} -case 112: -#line 327 "dateyacc.y" -{ yyans.zone = yyvsp[0].IntVal; yyans.dst = 1; ; - break;} -case 113: -#line 329 "dateyacc.y" -{ yyans.zone = yyvsp[0].IntVal; yyans.dst = 0; ; - break;} -case 114: -#line 331 "dateyacc.y" -{ yyans.zone = yyvsp[0].IntVal; yyans.dst = 0; ; - break;} -case 115: -#line 333 "dateyacc.y" -{ yyans.zone = - yyvsp[0].IntVal; yyans.dst = 0; ; - break;} -case 116: -#line 335 "dateyacc.y" -{ yyans.zone = - yyvsp[0].IntVal; yyans.dst = 0; ; - break;} -case 117: -#line 340 "dateyacc.y" -{ yyval.IntVal = 60 * yyvsp[0].IntVal; ; - break;} -case 118: -#line 342 "dateyacc.y" -{ yyval.IntVal = 60 * yyvsp[-2].IntVal + yyvsp[0].IntVal; ; - break;} -case 119: -#line 344 "dateyacc.y" -{ yyval.IntVal = 60 * yyvsp[-2].IntVal + yyvsp[0].IntVal; ; - break;} -case 120: -#line 346 "dateyacc.y" -{ yyval.IntVal = 60 * yyvsp[0].IntVal; ; - break;} -case 121: -#line 348 "dateyacc.y" -{ yyval.IntVal = 60 * yyvsp[-2].IntVal + yyvsp[0].IntVal; ; - break;} -case 122: -#line 350 "dateyacc.y" -{ yyval.IntVal = 60 * yyvsp[-2].IntVal + yyvsp[0].IntVal; ; - break;} -case 123: -#line 352 "dateyacc.y" -{ yyval.IntVal = 60 * (yyvsp[0].IntVal / 100) | (yyvsp[0].IntVal % 100); ; - break;} -case 124: -#line 357 "dateyacc.y" -{ yyans.hour = yyvsp[0].IntVal / 100; /* ajs */ - yyans.minute = yyvsp[0].IntVal % 100; /* ajs */ - yyans.second = -1; /* ajs */ - ; - break;} -} - -#line 705 "/usr/share/bison/bison.simple" - - - yyvsp -= yylen; - yyssp -= yylen; -#if YYLSP_NEEDED - yylsp -= yylen; -#endif - -#if YYDEBUG - if (yydebug) - { - short *yyssp1 = yyss - 1; - YYFPRINTF (stderr, "state stack now"); - while (yyssp1 != yyssp) - YYFPRINTF (stderr, " %d", *++yyssp1); - YYFPRINTF (stderr, "\n"); - } -#endif - - *++yyvsp = yyval; -#if YYLSP_NEEDED - *++yylsp = yyloc; -#endif - - /* Now `shift' the result of the reduction. Determine what state - that goes to, based on the state we popped back to and the rule - number reduced by. */ - - yyn = yyr1[yyn]; - - yystate = yypgoto[yyn - YYNTBASE] + *yyssp; - if (yystate >= 0 && yystate <= YYLAST && yycheck[yystate] == *yyssp) - yystate = yytable[yystate]; - else - yystate = yydefgoto[yyn - YYNTBASE]; - - goto yynewstate; - - -/*------------------------------------. -| yyerrlab -- here on detecting error | -`------------------------------------*/ -yyerrlab: - /* If not already recovering from an error, report this error. */ - if (!yyerrstatus) - { - ++yynerrs; - -#ifdef YYERROR_VERBOSE - yyn = yypact[yystate]; - - if (yyn > YYFLAG && yyn < YYLAST) - { - YYSIZE_T yysize = 0; - char *yymsg; - int yyx, yycount; - - yycount = 0; - /* Start YYX at -YYN if negative to avoid negative indexes in - YYCHECK. */ - for (yyx = yyn < 0 ? -yyn : 0; - yyx < (int) (sizeof (yytname) / sizeof (char *)); yyx++) - if (yycheck[yyx + yyn] == yyx) - yysize += yystrlen (yytname[yyx]) + 15, yycount++; - yysize += yystrlen ("parse error, unexpected ") + 1; - yysize += yystrlen (yytname[YYTRANSLATE (yychar)]); - yymsg = (char *) YYSTACK_ALLOC (yysize); - if (yymsg != 0) - { - char *yyp = yystpcpy (yymsg, "parse error, unexpected "); - yyp = yystpcpy (yyp, yytname[YYTRANSLATE (yychar)]); - - if (yycount < 5) - { - yycount = 0; - for (yyx = yyn < 0 ? -yyn : 0; - yyx < (int) (sizeof (yytname) / sizeof (char *)); - yyx++) - if (yycheck[yyx + yyn] == yyx) - { - const char *yyq = ! yycount ? ", expecting " : " or "; - yyp = yystpcpy (yyp, yyq); - yyp = yystpcpy (yyp, yytname[yyx]); - yycount++; - } - } - yyerror (yymsg); - YYSTACK_FREE (yymsg); - } - else - yyerror ("parse error; also virtual memory exhausted"); - } - else -#endif /* defined (YYERROR_VERBOSE) */ - yyerror ("parse error"); - } - goto yyerrlab1; - - -/*--------------------------------------------------. -| yyerrlab1 -- error raised explicitly by an action | -`--------------------------------------------------*/ -yyerrlab1: - if (yyerrstatus == 3) - { - /* If just tried and failed to reuse lookahead token after an - error, discard it. */ - - /* return failure if at end of input */ - if (yychar == YYEOF) - YYABORT; - YYDPRINTF ((stderr, "Discarding token %d (%s).\n", - yychar, yytname[yychar1])); - yychar = YYEMPTY; - } - - /* Else will try to reuse lookahead token after shifting the error - token. */ - - yyerrstatus = 3; /* Each real token shifted decrements this */ - - goto yyerrhandle; - - -/*-------------------------------------------------------------------. -| yyerrdefault -- current state does not do anything special for the | -| error token. | -`-------------------------------------------------------------------*/ -yyerrdefault: -#if 0 - /* This is wrong; only states that explicitly want error tokens - should shift them. */ - - /* If its default is to accept any token, ok. Otherwise pop it. */ - yyn = yydefact[yystate]; - if (yyn) - goto yydefault; -#endif - - -/*---------------------------------------------------------------. -| yyerrpop -- pop the current state because it cannot handle the | -| error token | -`---------------------------------------------------------------*/ -yyerrpop: - if (yyssp == yyss) - YYABORT; - yyvsp--; - yystate = *--yyssp; -#if YYLSP_NEEDED - yylsp--; -#endif - -#if YYDEBUG - if (yydebug) - { - short *yyssp1 = yyss - 1; - YYFPRINTF (stderr, "Error: state stack now"); - while (yyssp1 != yyssp) - YYFPRINTF (stderr, " %d", *++yyssp1); - YYFPRINTF (stderr, "\n"); - } -#endif - -/*--------------. -| yyerrhandle. | -`--------------*/ -yyerrhandle: - yyn = yypact[yystate]; - if (yyn == YYFLAG) - goto yyerrdefault; - - yyn += YYTERROR; - if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != YYTERROR) - goto yyerrdefault; - - yyn = yytable[yyn]; - if (yyn < 0) - { - if (yyn == YYFLAG) - goto yyerrpop; - yyn = -yyn; - goto yyreduce; - } - else if (yyn == 0) - goto yyerrpop; - - if (yyn == YYFINAL) - YYACCEPT; - - YYDPRINTF ((stderr, "Shifting error token, ")); - - *++yyvsp = yylval; -#if YYLSP_NEEDED - *++yylsp = yylloc; -#endif - - yystate = yyn; - goto yynewstate; - - -/*-------------------------------------. -| yyacceptlab -- YYACCEPT comes here. | -`-------------------------------------*/ -yyacceptlab: - yyresult = 0; - goto yyreturn; - -/*-----------------------------------. -| yyabortlab -- YYABORT comes here. | -`-----------------------------------*/ -yyabortlab: - yyresult = 1; - goto yyreturn; - -/*---------------------------------------------. -| yyoverflowab -- parser overflow comes here. | -`---------------------------------------------*/ -yyoverflowlab: - yyerror ("parser stack overflow"); - yyresult = 2; - /* Fall through. */ - -yyreturn: -#ifndef yyoverflow - if (yyss != yyssa) - YYSTACK_FREE (yyss); -#endif - return yyresult; -} -#line 363 "dateyacc.y" -