]> git.draconx.ca Git - gob-dx.git/commitdiff
Release 2.0.2 v2.0.2
authorGeorge Lebl <jirka@5z.com>
Wed, 21 Aug 2002 03:53:00 +0000 (19:53 -0800)
committerNick Bowler <nbowler@draconx.ca>
Tue, 19 Feb 2019 17:33:21 +0000 (12:33 -0500)
19 files changed:
ChangeLog
Makefile.in
NEWS
aclocal.m4
configure
configure.in
doc/Makefile.in
doc/gob2.1.in
doc/makehtml.pl
examples/Makefile.in
gob2.spec
gob2.spec.in
missing
src/Makefile.in
src/main.c
src/parse.c
src/parse.h
src/parse.y
src/test.gob

index 73b1e6a6985a516e190f9edbc92e841010e95193..ad0fe5fa6787e5755b6f51d647fdf0ff70c699e7 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,34 @@
-Wed Jul 17 10:53:22 2002  George Lebl <jirka@5z.com>
+Tue Aug 20 11:01:52 2002  George Lebl <jirka@5z.com>
+
+       * Release 2.0.2
+
+Tue Aug 06 12:30:15 2002  George Lebl <jirka@5z.com>
+
+       * doc/gob2.1.in: escape all ' characters, to fix debian
+         bug 155577.  Also add the homepage to the last section
+
+       * doc/makehtml.pl: improve handling of some troff and add
+         automatic urlization of email and web addresses
+
+Tue Aug 06 12:08:20 2002  George Lebl <jirka@5z.com>
+
+       * src/test.gob: further tests
+
+Tue Aug 06 12:06:07 2002  George Lebl <jirka@5z.com>
+
+       * src/main.c: damnit s/shutdown/dispose/, why does glib change
+         these on me.  I think there is an evil anti-gob plot in place.
+
+       * src/test.gob: add a test for unrefwith (should have been there in
+         the first place to catch this)
+
+       * doc/gob2.1.in: update the unref/unrefwith section
+
+Mon Aug 05 11:11:01 2002  George Lebl <jirka@5z.com>
+
+       * src/parse.y: properly link the BOXED type (use g_value_set_boxed)
+
+Wed Jul 17 11:01:40 2002  George Lebl <jirka@5z.com>
 
        * Release 2.0.1
 
index 0b189b97281c365561797ae4970158776f266b14..7de39fe80dcd491397fe162de673044d6d28c544 100644 (file)
@@ -1,4 +1,4 @@
-# Makefile.in generated automatically by automake 1.4-p5 from Makefile.am
+# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
 
 # Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
 # This Makefile.in is free software; the Free Software Foundation
diff --git a/NEWS b/NEWS
index 94dc3302056911feb1db05dc9b5a71662b36bfcc..772a1489a00701490ed7cedad8f3d24b29e22ca6 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,10 @@
+2.0.2
+       * Properly link BOXED type
+       * unref/unrefwith works now since shtdown changed into dispose
+       * Update documentation
+       * man page escapes all ' chars (fix debian bug 155577)
+       * Further tests in test.gob
+
 2.0.1
        * Fixed property types for all the types that require an extra
          GObject type
index cb6ce01282adbb602656eadce12fda4c1b88291e..ed792125713e436f4bf6fa7bdbc434d4e34a7a1d 100644 (file)
@@ -1,4 +1,4 @@
-dnl aclocal.m4 generated automatically by aclocal 1.4-p5
+dnl aclocal.m4 generated automatically by aclocal 1.4-p6
 
 dnl Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
@@ -43,7 +43,8 @@ dnl Usage:
 dnl AM_INIT_AUTOMAKE(package,version, [no-define])
 
 AC_DEFUN([AM_INIT_AUTOMAKE],
-[AC_REQUIRE([AC_PROG_INSTALL])
+[AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
+AC_REQUIRE([AC_PROG_INSTALL])
 PACKAGE=[$1]
 AC_SUBST(PACKAGE)
 VERSION=[$2]
@@ -59,13 +60,42 @@ AC_REQUIRE([AM_SANITY_CHECK])
 AC_REQUIRE([AC_ARG_PROGRAM])
 dnl FIXME This is truly gross.
 missing_dir=`cd $ac_aux_dir && pwd`
-AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
+AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}, $missing_dir)
 AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
-AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
+AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}, $missing_dir)
 AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
 AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
 AC_REQUIRE([AC_PROG_MAKE_SET])])
 
+# Copyright 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
+
+# AM_AUTOMAKE_VERSION(VERSION)
+# ----------------------------
+# Automake X.Y traces this macro to ensure aclocal.m4 has been
+# generated from the m4 files accompanying Automake X.Y.
+AC_DEFUN([AM_AUTOMAKE_VERSION],[am__api_version="1.4"])
+
+# AM_SET_CURRENT_AUTOMAKE_VERSION
+# -------------------------------
+# Call AM_AUTOMAKE_VERSION so it can be traced.
+# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
+AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
+        [AM_AUTOMAKE_VERSION([1.4-p6])])
+
 #
 # Check to make sure that the build environment is sane.
 #
index be5d0f200f81be7a2df0cc833726ab999f5e6173..8a82f076142da13c03f3c5a94da40527a54796b8 100755 (executable)
--- a/configure
+++ b/configure
@@ -933,6 +933,7 @@ ac_config_headers="$ac_config_headers config.h"
 
 ac_config_commands="$ac_config_commands default-1"
 
+am__api_version="1.4"
 ac_aux_dir=
 for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
   if test -f $ac_dir/install-sh; then
@@ -950,7 +951,7 @@ for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
   fi
 done
 if test -z "$ac_aux_dir"; then
-  { { echo "$as_me:953: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
+  { { echo "$as_me:954: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
 echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;}
    { (exit 1); exit 1; }; }
 fi
@@ -970,7 +971,7 @@ ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
 # AFS /usr/afsws/bin/install, which mishandles nonexistent args
 # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
 # ./install, which can be erroneously created by make from ./install.sh.
-echo "$as_me:973: checking for a BSD compatible install" >&5
+echo "$as_me:974: checking for a BSD compatible install" >&5
 echo $ECHO_N "checking for a BSD compatible install... $ECHO_C" >&6
 if test -z "$INSTALL"; then
 if test "${ac_cv_path_install+set}" = set; then
@@ -1019,7 +1020,7 @@ fi
     INSTALL=$ac_install_sh
   fi
 fi
-echo "$as_me:1022: result: $INSTALL" >&5
+echo "$as_me:1023: result: $INSTALL" >&5
 echo "${ECHO_T}$INSTALL" >&6
 
 # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
@@ -1030,7 +1031,7 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
 
 test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 
-echo "$as_me:1033: checking whether build environment is sane" >&5
+echo "$as_me:1034: checking whether build environment is sane" >&5
 echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6
 # Just in case
 sleep 1
@@ -1053,7 +1054,7 @@ if (
       # if, for instance, CONFIG_SHELL is bash and it inherits a
       # broken ls alias from the environment.  This has actually
       # happened.  Such a system could not be considered "sane".
-      { { echo "$as_me:1056: error: ls -t appears to fail.  Make sure there is not a broken
+      { { echo "$as_me:1057: error: ls -t appears to fail.  Make sure there is not a broken
 alias in your environment" >&5
 echo "$as_me: error: ls -t appears to fail.  Make sure there is not a broken
 alias in your environment" >&2;}
@@ -1066,14 +1067,14 @@ then
    # Ok.
    :
 else
-   { { echo "$as_me:1069: error: newly created file is older than distributed files!
+   { { echo "$as_me:1070: error: newly created file is older than distributed files!
 Check your system clock" >&5
 echo "$as_me: error: newly created file is older than distributed files!
 Check your system clock" >&2;}
    { (exit 1); exit 1; }; }
 fi
 rm -f conftest*
-echo "$as_me:1076: result: yes" >&5
+echo "$as_me:1077: result: yes" >&5
 echo "${ECHO_T}yes" >&6
 test "$program_prefix" != NONE &&
   program_transform_name="s,^,$program_prefix,;$program_transform_name"
@@ -1088,7 +1089,7 @@ _ACEOF
 program_transform_name=`echo $program_transform_name | sed -f conftest.sed`
 rm conftest.sed
 
-echo "$as_me:1091: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo "$as_me:1092: checking whether ${MAKE-make} sets \${MAKE}" >&5
 echo $ECHO_N "checking whether ${MAKE-make} sets \${MAKE}... $ECHO_C" >&6
 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,./+-,__p_,'`
 if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
@@ -1108,21 +1109,21 @@ fi
 rm -f conftest.make
 fi
 if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
-  echo "$as_me:1111: result: yes" >&5
+  echo "$as_me:1112: result: yes" >&5
 echo "${ECHO_T}yes" >&6
   SET_MAKE=
 else
-  echo "$as_me:1115: result: no" >&5
+  echo "$as_me:1116: result: no" >&5
 echo "${ECHO_T}no" >&6
   SET_MAKE="MAKE=${MAKE-make}"
 fi
 
 PACKAGE=gob2
 
-VERSION=2.0.1
+VERSION=2.0.2
 
 if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
-  { { echo "$as_me:1125: error: source directory already configured; run \"make distclean\" there first" >&5
+  { { echo "$as_me:1126: error: source directory already configured; run \"make distclean\" there first" >&5
 echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;}
    { (exit 1); exit 1; }; }
 fi
@@ -1136,82 +1137,82 @@ cat >>confdefs.h <<EOF
 EOF
 
 missing_dir=`cd $ac_aux_dir && pwd`
-echo "$as_me:1139: checking for working aclocal" >&5
-echo $ECHO_N "checking for working aclocal... $ECHO_C" >&6
+echo "$as_me:1140: checking for working aclocal-${am__api_version}" >&5
+echo $ECHO_N "checking for working aclocal-${am__api_version}... $ECHO_C" >&6
 # Run test in a subshell; some versions of sh will print an error if
 # an executable is not found, even if stderr is redirected.
 # Redirect stdin to placate older versions of autoconf.  Sigh.
-if (aclocal --version) < /dev/null > /dev/null 2>&1; then
-   ACLOCAL=aclocal
-   echo "$as_me:1146: result: found" >&5
+if (aclocal-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then
+   ACLOCAL=aclocal-${am__api_version}
+   echo "$as_me:1147: result: found" >&5
 echo "${ECHO_T}found" >&6
 else
-   ACLOCAL="$missing_dir/missing aclocal"
-   echo "$as_me:1150: result: missing" >&5
+   ACLOCAL="$missing_dir/missing aclocal-${am__api_version}"
+   echo "$as_me:1151: result: missing" >&5
 echo "${ECHO_T}missing" >&6
 fi
 
-echo "$as_me:1154: checking for working autoconf" >&5
+echo "$as_me:1155: checking for working autoconf" >&5
 echo $ECHO_N "checking for working autoconf... $ECHO_C" >&6
 # Run test in a subshell; some versions of sh will print an error if
 # an executable is not found, even if stderr is redirected.
 # Redirect stdin to placate older versions of autoconf.  Sigh.
 if (autoconf --version) < /dev/null > /dev/null 2>&1; then
    AUTOCONF=autoconf
-   echo "$as_me:1161: result: found" >&5
+   echo "$as_me:1162: result: found" >&5
 echo "${ECHO_T}found" >&6
 else
    AUTOCONF="$missing_dir/missing autoconf"
-   echo "$as_me:1165: result: missing" >&5
+   echo "$as_me:1166: result: missing" >&5
 echo "${ECHO_T}missing" >&6
 fi
 
-echo "$as_me:1169: checking for working automake" >&5
-echo $ECHO_N "checking for working automake... $ECHO_C" >&6
+echo "$as_me:1170: checking for working automake-${am__api_version}" >&5
+echo $ECHO_N "checking for working automake-${am__api_version}... $ECHO_C" >&6
 # Run test in a subshell; some versions of sh will print an error if
 # an executable is not found, even if stderr is redirected.
 # Redirect stdin to placate older versions of autoconf.  Sigh.
-if (automake --version) < /dev/null > /dev/null 2>&1; then
-   AUTOMAKE=automake
-   echo "$as_me:1176: result: found" >&5
+if (automake-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then
+   AUTOMAKE=automake-${am__api_version}
+   echo "$as_me:1177: result: found" >&5
 echo "${ECHO_T}found" >&6
 else
-   AUTOMAKE="$missing_dir/missing automake"
-   echo "$as_me:1180: result: missing" >&5
+   AUTOMAKE="$missing_dir/missing automake-${am__api_version}"
+   echo "$as_me:1181: result: missing" >&5
 echo "${ECHO_T}missing" >&6
 fi
 
-echo "$as_me:1184: checking for working autoheader" >&5
+echo "$as_me:1185: checking for working autoheader" >&5
 echo $ECHO_N "checking for working autoheader... $ECHO_C" >&6
 # Run test in a subshell; some versions of sh will print an error if
 # an executable is not found, even if stderr is redirected.
 # Redirect stdin to placate older versions of autoconf.  Sigh.
 if (autoheader --version) < /dev/null > /dev/null 2>&1; then
    AUTOHEADER=autoheader
-   echo "$as_me:1191: result: found" >&5
+   echo "$as_me:1192: result: found" >&5
 echo "${ECHO_T}found" >&6
 else
    AUTOHEADER="$missing_dir/missing autoheader"
-   echo "$as_me:1195: result: missing" >&5
+   echo "$as_me:1196: result: missing" >&5
 echo "${ECHO_T}missing" >&6
 fi
 
-echo "$as_me:1199: checking for working makeinfo" >&5
+echo "$as_me:1200: checking for working makeinfo" >&5
 echo $ECHO_N "checking for working makeinfo... $ECHO_C" >&6
 # Run test in a subshell; some versions of sh will print an error if
 # an executable is not found, even if stderr is redirected.
 # Redirect stdin to placate older versions of autoconf.  Sigh.
 if (makeinfo --version) < /dev/null > /dev/null 2>&1; then
    MAKEINFO=makeinfo
-   echo "$as_me:1206: result: found" >&5
+   echo "$as_me:1207: result: found" >&5
 echo "${ECHO_T}found" >&6
 else
    MAKEINFO="$missing_dir/missing makeinfo"
-   echo "$as_me:1210: result: missing" >&5
+   echo "$as_me:1211: result: missing" >&5
 echo "${ECHO_T}missing" >&6
 fi
 
-echo "$as_me:1214: checking whether to enable maintainer-specific portions of Makefiles" >&5
+echo "$as_me:1215: checking whether to enable maintainer-specific portions of Makefiles" >&5
 echo $ECHO_N "checking whether to enable maintainer-specific portions of Makefiles... $ECHO_C" >&6
     # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
 if test "${enable_maintainer_mode+set}" = set; then
@@ -1220,7 +1221,7 @@ if test "${enable_maintainer_mode+set}" = set; then
 else
   USE_MAINTAINER_MODE=no
 fi;
-  echo "$as_me:1223: result: $USE_MAINTAINER_MODE" >&5
+  echo "$as_me:1224: result: $USE_MAINTAINER_MODE" >&5
 echo "${ECHO_T}$USE_MAINTAINER_MODE" >&6
 
 if test $USE_MAINTAINER_MODE = yes; then
@@ -1237,7 +1238,7 @@ GLIB_REQUIRED=1.3.12
 if test -f ../NOINST_GOB ; then
   DOINSTGOB=
   NOINSTGOB=gob2
-  echo "$as_me:1240: result: *** NOT Going to install GOB ***" >&5
+  echo "$as_me:1241: result: *** NOT Going to install GOB ***" >&5
 echo "${ECHO_T}*** NOT Going to install GOB ***" >&6
   SUBDIRS="src examples"
 
@@ -1256,7 +1257,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}gcc; ac_word=$2
-echo "$as_me:1259: checking for $ac_word" >&5
+echo "$as_me:1260: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1271,7 +1272,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_CC="${ac_tool_prefix}gcc"
-echo "$as_me:1274: found $ac_dir/$ac_word" >&5
+echo "$as_me:1275: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -1279,10 +1280,10 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  echo "$as_me:1282: result: $CC" >&5
+  echo "$as_me:1283: result: $CC" >&5
 echo "${ECHO_T}$CC" >&6
 else
-  echo "$as_me:1285: result: no" >&5
+  echo "$as_me:1286: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -1291,7 +1292,7 @@ if test -z "$ac_cv_prog_CC"; then
   ac_ct_CC=$CC
   # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
-echo "$as_me:1294: checking for $ac_word" >&5
+echo "$as_me:1295: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1306,7 +1307,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_ac_ct_CC="gcc"
-echo "$as_me:1309: found $ac_dir/$ac_word" >&5
+echo "$as_me:1310: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -1314,10 +1315,10 @@ fi
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  echo "$as_me:1317: result: $ac_ct_CC" >&5
+  echo "$as_me:1318: result: $ac_ct_CC" >&5
 echo "${ECHO_T}$ac_ct_CC" >&6
 else
-  echo "$as_me:1320: result: no" >&5
+  echo "$as_me:1321: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -1330,7 +1331,7 @@ if test -z "$CC"; then
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}cc; ac_word=$2
-echo "$as_me:1333: checking for $ac_word" >&5
+echo "$as_me:1334: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1345,7 +1346,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_CC="${ac_tool_prefix}cc"
-echo "$as_me:1348: found $ac_dir/$ac_word" >&5
+echo "$as_me:1349: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -1353,10 +1354,10 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  echo "$as_me:1356: result: $CC" >&5
+  echo "$as_me:1357: result: $CC" >&5
 echo "${ECHO_T}$CC" >&6
 else
-  echo "$as_me:1359: result: no" >&5
+  echo "$as_me:1360: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -1365,7 +1366,7 @@ if test -z "$ac_cv_prog_CC"; then
   ac_ct_CC=$CC
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
-echo "$as_me:1368: checking for $ac_word" >&5
+echo "$as_me:1369: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1380,7 +1381,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_ac_ct_CC="cc"
-echo "$as_me:1383: found $ac_dir/$ac_word" >&5
+echo "$as_me:1384: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -1388,10 +1389,10 @@ fi
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  echo "$as_me:1391: result: $ac_ct_CC" >&5
+  echo "$as_me:1392: result: $ac_ct_CC" >&5
 echo "${ECHO_T}$ac_ct_CC" >&6
 else
-  echo "$as_me:1394: result: no" >&5
+  echo "$as_me:1395: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -1404,7 +1405,7 @@ fi
 if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
-echo "$as_me:1407: checking for $ac_word" >&5
+echo "$as_me:1408: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1424,7 +1425,7 @@ if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
   continue
 fi
 ac_cv_prog_CC="cc"
-echo "$as_me:1427: found $ac_dir/$ac_word" >&5
+echo "$as_me:1428: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -1446,10 +1447,10 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  echo "$as_me:1449: result: $CC" >&5
+  echo "$as_me:1450: result: $CC" >&5
 echo "${ECHO_T}$CC" >&6
 else
-  echo "$as_me:1452: result: no" >&5
+  echo "$as_me:1453: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -1460,7 +1461,7 @@ if test -z "$CC"; then
   do
     # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:1463: checking for $ac_word" >&5
+echo "$as_me:1464: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1475,7 +1476,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-echo "$as_me:1478: found $ac_dir/$ac_word" >&5
+echo "$as_me:1479: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -1483,10 +1484,10 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  echo "$as_me:1486: result: $CC" >&5
+  echo "$as_me:1487: result: $CC" >&5
 echo "${ECHO_T}$CC" >&6
 else
-  echo "$as_me:1489: result: no" >&5
+  echo "$as_me:1490: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -1499,7 +1500,7 @@ if test -z "$CC"; then
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-echo "$as_me:1502: checking for $ac_word" >&5
+echo "$as_me:1503: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1514,7 +1515,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_ac_ct_CC="$ac_prog"
-echo "$as_me:1517: found $ac_dir/$ac_word" >&5
+echo "$as_me:1518: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -1522,10 +1523,10 @@ fi
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  echo "$as_me:1525: result: $ac_ct_CC" >&5
+  echo "$as_me:1526: result: $ac_ct_CC" >&5
 echo "${ECHO_T}$ac_ct_CC" >&6
 else
-  echo "$as_me:1528: result: no" >&5
+  echo "$as_me:1529: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -1537,32 +1538,32 @@ fi
 
 fi
 
-test -z "$CC" && { { echo "$as_me:1540: error: no acceptable cc found in \$PATH" >&5
+test -z "$CC" && { { echo "$as_me:1541: error: no acceptable cc found in \$PATH" >&5
 echo "$as_me: error: no acceptable cc found in \$PATH" >&2;}
    { (exit 1); exit 1; }; }
 
 # Provide some information about the compiler.
-echo "$as_me:1545:" \
+echo "$as_me:1546:" \
      "checking for C compiler version" >&5
 ac_compiler=`set X $ac_compile; echo $2`
-{ (eval echo "$as_me:1548: \"$ac_compiler --version </dev/null >&5\"") >&5
+{ (eval echo "$as_me:1549: \"$ac_compiler --version </dev/null >&5\"") >&5
   (eval $ac_compiler --version </dev/null >&5) 2>&5
   ac_status=$?
-  echo "$as_me:1551: \$? = $ac_status" >&5
+  echo "$as_me:1552: \$? = $ac_status" >&5
   (exit $ac_status); }
-{ (eval echo "$as_me:1553: \"$ac_compiler -v </dev/null >&5\"") >&5
+{ (eval echo "$as_me:1554: \"$ac_compiler -v </dev/null >&5\"") >&5
   (eval $ac_compiler -v </dev/null >&5) 2>&5
   ac_status=$?
-  echo "$as_me:1556: \$? = $ac_status" >&5
+  echo "$as_me:1557: \$? = $ac_status" >&5
   (exit $ac_status); }
-{ (eval echo "$as_me:1558: \"$ac_compiler -V </dev/null >&5\"") >&5
+{ (eval echo "$as_me:1559: \"$ac_compiler -V </dev/null >&5\"") >&5
   (eval $ac_compiler -V </dev/null >&5) 2>&5
   ac_status=$?
-  echo "$as_me:1561: \$? = $ac_status" >&5
+  echo "$as_me:1562: \$? = $ac_status" >&5
   (exit $ac_status); }
 
 cat >conftest.$ac_ext <<_ACEOF
-#line 1565 "configure"
+#line 1566 "configure"
 #include "confdefs.h"
 
 int
@@ -1578,13 +1579,13 @@ ac_clean_files="$ac_clean_files a.out a.exe"
 # Try to create an executable without -o first, disregard a.out.
 # It will help us diagnose broken compilers, and finding out an intuition
 # of exeext.
-echo "$as_me:1581: checking for C compiler default output" >&5
+echo "$as_me:1582: checking for C compiler default output" >&5
 echo $ECHO_N "checking for C compiler default output... $ECHO_C" >&6
 ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-if { (eval echo "$as_me:1584: \"$ac_link_default\"") >&5
+if { (eval echo "$as_me:1585: \"$ac_link_default\"") >&5
   (eval $ac_link_default) 2>&5
   ac_status=$?
-  echo "$as_me:1587: \$? = $ac_status" >&5
+  echo "$as_me:1588: \$? = $ac_status" >&5
   (exit $ac_status); }; then
   # Find the output, starting from the most likely.  This scheme is
 # not robust to junk in `.', hence go to wildcards (a.*) only as a last
@@ -1607,34 +1608,34 @@ done
 else
   echo "$as_me: failed program was:" >&5
 cat conftest.$ac_ext >&5
-{ { echo "$as_me:1610: error: C compiler cannot create executables" >&5
+{ { echo "$as_me:1611: error: C compiler cannot create executables" >&5
 echo "$as_me: error: C compiler cannot create executables" >&2;}
    { (exit 77); exit 77; }; }
 fi
 
 ac_exeext=$ac_cv_exeext
-echo "$as_me:1616: result: $ac_file" >&5
+echo "$as_me:1617: result: $ac_file" >&5
 echo "${ECHO_T}$ac_file" >&6
 
 # Check the compiler produces executables we can run.  If not, either
 # the compiler is broken, or we cross compile.
-echo "$as_me:1621: checking whether the C compiler works" >&5
+echo "$as_me:1622: checking whether the C compiler works" >&5
 echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
 # FIXME: These cross compiler hacks should be removed for Autoconf 3.0
 # If not cross compiling, check that we can run a simple program.
 if test "$cross_compiling" != yes; then
   if { ac_try='./$ac_file'
-  { (eval echo "$as_me:1627: \"$ac_try\"") >&5
+  { (eval echo "$as_me:1628: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:1630: \$? = $ac_status" >&5
+  echo "$as_me:1631: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
     cross_compiling=no
   else
     if test "$cross_compiling" = maybe; then
        cross_compiling=yes
     else
-       { { echo "$as_me:1637: error: cannot run C compiled programs.
+       { { echo "$as_me:1638: error: cannot run C compiled programs.
 If you meant to cross compile, use \`--host'." >&5
 echo "$as_me: error: cannot run C compiled programs.
 If you meant to cross compile, use \`--host'." >&2;}
@@ -1642,24 +1643,24 @@ If you meant to cross compile, use \`--host'." >&2;}
     fi
   fi
 fi
-echo "$as_me:1645: result: yes" >&5
+echo "$as_me:1646: result: yes" >&5
 echo "${ECHO_T}yes" >&6
 
 rm -f a.out a.exe conftest$ac_cv_exeext
 ac_clean_files=$ac_clean_files_save
 # Check the compiler produces executables we can run.  If not, either
 # the compiler is broken, or we cross compile.
-echo "$as_me:1652: checking whether we are cross compiling" >&5
+echo "$as_me:1653: checking whether we are cross compiling" >&5
 echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
-echo "$as_me:1654: result: $cross_compiling" >&5
+echo "$as_me:1655: result: $cross_compiling" >&5
 echo "${ECHO_T}$cross_compiling" >&6
 
-echo "$as_me:1657: checking for executable suffix" >&5
+echo "$as_me:1658: checking for executable suffix" >&5
 echo $ECHO_N "checking for executable suffix... $ECHO_C" >&6
-if { (eval echo "$as_me:1659: \"$ac_link\"") >&5
+if { (eval echo "$as_me:1660: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:1662: \$? = $ac_status" >&5
+  echo "$as_me:1663: \$? = $ac_status" >&5
   (exit $ac_status); }; then
   # If both `conftest.exe' and `conftest' are `present' (well, observable)
 # catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
@@ -1675,25 +1676,25 @@ for ac_file in `(ls conftest.exe; ls conftest; ls conftest.*) 2>/dev/null`; do
   esac
 done
 else
-  { { echo "$as_me:1678: error: cannot compute EXEEXT: cannot compile and link" >&5
+  { { echo "$as_me:1679: error: cannot compute EXEEXT: cannot compile and link" >&5
 echo "$as_me: error: cannot compute EXEEXT: cannot compile and link" >&2;}
    { (exit 1); exit 1; }; }
 fi
 
 rm -f conftest$ac_cv_exeext
-echo "$as_me:1684: result: $ac_cv_exeext" >&5
+echo "$as_me:1685: result: $ac_cv_exeext" >&5
 echo "${ECHO_T}$ac_cv_exeext" >&6
 
 rm -f conftest.$ac_ext
 EXEEXT=$ac_cv_exeext
 ac_exeext=$EXEEXT
-echo "$as_me:1690: checking for object suffix" >&5
+echo "$as_me:1691: checking for object suffix" >&5
 echo $ECHO_N "checking for object suffix... $ECHO_C" >&6
 if test "${ac_cv_objext+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 1696 "configure"
+#line 1697 "configure"
 #include "confdefs.h"
 
 int
@@ -1705,10 +1706,10 @@ main ()
 }
 _ACEOF
 rm -f conftest.o conftest.obj
-if { (eval echo "$as_me:1708: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:1709: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:1711: \$? = $ac_status" >&5
+  echo "$as_me:1712: \$? = $ac_status" >&5
   (exit $ac_status); }; then
   for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
   case $ac_file in
@@ -1720,24 +1721,24 @@ done
 else
   echo "$as_me: failed program was:" >&5
 cat conftest.$ac_ext >&5
-{ { echo "$as_me:1723: error: cannot compute OBJEXT: cannot compile" >&5
+{ { echo "$as_me:1724: error: cannot compute OBJEXT: cannot compile" >&5
 echo "$as_me: error: cannot compute OBJEXT: cannot compile" >&2;}
    { (exit 1); exit 1; }; }
 fi
 
 rm -f conftest.$ac_cv_objext conftest.$ac_ext
 fi
-echo "$as_me:1730: result: $ac_cv_objext" >&5
+echo "$as_me:1731: result: $ac_cv_objext" >&5
 echo "${ECHO_T}$ac_cv_objext" >&6
 OBJEXT=$ac_cv_objext
 ac_objext=$OBJEXT
-echo "$as_me:1734: checking whether we are using the GNU C compiler" >&5
+echo "$as_me:1735: checking whether we are using the GNU C compiler" >&5
 echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
 if test "${ac_cv_c_compiler_gnu+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 1740 "configure"
+#line 1741 "configure"
 #include "confdefs.h"
 
 int
@@ -1752,16 +1753,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1755: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:1756: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:1758: \$? = $ac_status" >&5
+  echo "$as_me:1759: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:1761: \"$ac_try\"") >&5
+  { (eval echo "$as_me:1762: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:1764: \$? = $ac_status" >&5
+  echo "$as_me:1765: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_compiler_gnu=yes
 else
@@ -1773,19 +1774,19 @@ rm -f conftest.$ac_objext conftest.$ac_ext
 ac_cv_c_compiler_gnu=$ac_compiler_gnu
 
 fi
-echo "$as_me:1776: result: $ac_cv_c_compiler_gnu" >&5
+echo "$as_me:1777: result: $ac_cv_c_compiler_gnu" >&5
 echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
 GCC=`test $ac_compiler_gnu = yes && echo yes`
 ac_test_CFLAGS=${CFLAGS+set}
 ac_save_CFLAGS=$CFLAGS
 CFLAGS="-g"
-echo "$as_me:1782: checking whether $CC accepts -g" >&5
+echo "$as_me:1783: checking whether $CC accepts -g" >&5
 echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
 if test "${ac_cv_prog_cc_g+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 1788 "configure"
+#line 1789 "configure"
 #include "confdefs.h"
 
 int
@@ -1797,16 +1798,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1800: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:1801: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:1803: \$? = $ac_status" >&5
+  echo "$as_me:1804: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:1806: \"$ac_try\"") >&5
+  { (eval echo "$as_me:1807: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:1809: \$? = $ac_status" >&5
+  echo "$as_me:1810: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_prog_cc_g=yes
 else
@@ -1816,7 +1817,7 @@ ac_cv_prog_cc_g=no
 fi
 rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-echo "$as_me:1819: result: $ac_cv_prog_cc_g" >&5
+echo "$as_me:1820: result: $ac_cv_prog_cc_g" >&5
 echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
 if test "$ac_test_CFLAGS" = set; then
   CFLAGS=$ac_save_CFLAGS
@@ -1843,16 +1844,16 @@ cat >conftest.$ac_ext <<_ACEOF
 #endif
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1846: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:1847: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:1849: \$? = $ac_status" >&5
+  echo "$as_me:1850: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:1852: \"$ac_try\"") >&5
+  { (eval echo "$as_me:1853: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:1855: \$? = $ac_status" >&5
+  echo "$as_me:1856: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   for ac_declaration in \
    ''\
@@ -1864,7 +1865,7 @@ if { (eval echo "$as_me:1846: \"$ac_compile\"") >&5
    'void exit (int);'
 do
   cat >conftest.$ac_ext <<_ACEOF
-#line 1867 "configure"
+#line 1868 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 $ac_declaration
@@ -1877,16 +1878,16 @@ exit (42);
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1880: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:1881: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:1883: \$? = $ac_status" >&5
+  echo "$as_me:1884: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:1886: \"$ac_try\"") >&5
+  { (eval echo "$as_me:1887: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:1889: \$? = $ac_status" >&5
+  echo "$as_me:1890: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   :
 else
@@ -1896,7 +1897,7 @@ continue
 fi
 rm -f conftest.$ac_objext conftest.$ac_ext
   cat >conftest.$ac_ext <<_ACEOF
-#line 1899 "configure"
+#line 1900 "configure"
 #include "confdefs.h"
 $ac_declaration
 int
@@ -1908,16 +1909,16 @@ exit (42);
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:1911: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:1912: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:1914: \$? = $ac_status" >&5
+  echo "$as_me:1915: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:1917: \"$ac_try\"") >&5
+  { (eval echo "$as_me:1918: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:1920: \$? = $ac_status" >&5
+  echo "$as_me:1921: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   break
 else
@@ -1944,7 +1945,7 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
-        echo "$as_me:1947: checking for strerror in -lcposix" >&5
+        echo "$as_me:1948: checking for strerror in -lcposix" >&5
 echo $ECHO_N "checking for strerror in -lcposix... $ECHO_C" >&6
 if test "${ac_cv_lib_cposix_strerror+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -1952,7 +1953,7 @@ else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lcposix  $LIBS"
 cat >conftest.$ac_ext <<_ACEOF
-#line 1955 "configure"
+#line 1956 "configure"
 #include "confdefs.h"
 
 /* Override any gcc2 internal prototype to avoid an error.  */
@@ -1971,16 +1972,16 @@ strerror ();
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:1974: \"$ac_link\"") >&5
+if { (eval echo "$as_me:1975: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:1977: \$? = $ac_status" >&5
+  echo "$as_me:1978: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:1980: \"$ac_try\"") >&5
+  { (eval echo "$as_me:1981: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:1983: \$? = $ac_status" >&5
+  echo "$as_me:1984: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_lib_cposix_strerror=yes
 else
@@ -1991,7 +1992,7 @@ fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-echo "$as_me:1994: result: $ac_cv_lib_cposix_strerror" >&5
+echo "$as_me:1995: result: $ac_cv_lib_cposix_strerror" >&5
 echo "${ECHO_T}$ac_cv_lib_cposix_strerror" >&6
 if test $ac_cv_lib_cposix_strerror = yes; then
   LIBS="$LIBS -lcposix"
@@ -2005,7 +2006,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}gcc; ac_word=$2
-echo "$as_me:2008: checking for $ac_word" >&5
+echo "$as_me:2009: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2020,7 +2021,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_CC="${ac_tool_prefix}gcc"
-echo "$as_me:2023: found $ac_dir/$ac_word" >&5
+echo "$as_me:2024: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -2028,10 +2029,10 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  echo "$as_me:2031: result: $CC" >&5
+  echo "$as_me:2032: result: $CC" >&5
 echo "${ECHO_T}$CC" >&6
 else
-  echo "$as_me:2034: result: no" >&5
+  echo "$as_me:2035: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -2040,7 +2041,7 @@ if test -z "$ac_cv_prog_CC"; then
   ac_ct_CC=$CC
   # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
-echo "$as_me:2043: checking for $ac_word" >&5
+echo "$as_me:2044: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2055,7 +2056,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_ac_ct_CC="gcc"
-echo "$as_me:2058: found $ac_dir/$ac_word" >&5
+echo "$as_me:2059: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -2063,10 +2064,10 @@ fi
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  echo "$as_me:2066: result: $ac_ct_CC" >&5
+  echo "$as_me:2067: result: $ac_ct_CC" >&5
 echo "${ECHO_T}$ac_ct_CC" >&6
 else
-  echo "$as_me:2069: result: no" >&5
+  echo "$as_me:2070: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -2079,7 +2080,7 @@ if test -z "$CC"; then
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}cc; ac_word=$2
-echo "$as_me:2082: checking for $ac_word" >&5
+echo "$as_me:2083: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2094,7 +2095,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_CC="${ac_tool_prefix}cc"
-echo "$as_me:2097: found $ac_dir/$ac_word" >&5
+echo "$as_me:2098: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -2102,10 +2103,10 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  echo "$as_me:2105: result: $CC" >&5
+  echo "$as_me:2106: result: $CC" >&5
 echo "${ECHO_T}$CC" >&6
 else
-  echo "$as_me:2108: result: no" >&5
+  echo "$as_me:2109: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -2114,7 +2115,7 @@ if test -z "$ac_cv_prog_CC"; then
   ac_ct_CC=$CC
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
-echo "$as_me:2117: checking for $ac_word" >&5
+echo "$as_me:2118: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2129,7 +2130,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_ac_ct_CC="cc"
-echo "$as_me:2132: found $ac_dir/$ac_word" >&5
+echo "$as_me:2133: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -2137,10 +2138,10 @@ fi
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  echo "$as_me:2140: result: $ac_ct_CC" >&5
+  echo "$as_me:2141: result: $ac_ct_CC" >&5
 echo "${ECHO_T}$ac_ct_CC" >&6
 else
-  echo "$as_me:2143: result: no" >&5
+  echo "$as_me:2144: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -2153,7 +2154,7 @@ fi
 if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
-echo "$as_me:2156: checking for $ac_word" >&5
+echo "$as_me:2157: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2173,7 +2174,7 @@ if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
   continue
 fi
 ac_cv_prog_CC="cc"
-echo "$as_me:2176: found $ac_dir/$ac_word" >&5
+echo "$as_me:2177: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -2195,10 +2196,10 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  echo "$as_me:2198: result: $CC" >&5
+  echo "$as_me:2199: result: $CC" >&5
 echo "${ECHO_T}$CC" >&6
 else
-  echo "$as_me:2201: result: no" >&5
+  echo "$as_me:2202: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -2209,7 +2210,7 @@ if test -z "$CC"; then
   do
     # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-echo "$as_me:2212: checking for $ac_word" >&5
+echo "$as_me:2213: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2224,7 +2225,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-echo "$as_me:2227: found $ac_dir/$ac_word" >&5
+echo "$as_me:2228: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -2232,10 +2233,10 @@ fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  echo "$as_me:2235: result: $CC" >&5
+  echo "$as_me:2236: result: $CC" >&5
 echo "${ECHO_T}$CC" >&6
 else
-  echo "$as_me:2238: result: no" >&5
+  echo "$as_me:2239: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -2248,7 +2249,7 @@ if test -z "$CC"; then
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-echo "$as_me:2251: checking for $ac_word" >&5
+echo "$as_me:2252: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2263,7 +2264,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_ac_ct_CC="$ac_prog"
-echo "$as_me:2266: found $ac_dir/$ac_word" >&5
+echo "$as_me:2267: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -2271,10 +2272,10 @@ fi
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  echo "$as_me:2274: result: $ac_ct_CC" >&5
+  echo "$as_me:2275: result: $ac_ct_CC" >&5
 echo "${ECHO_T}$ac_ct_CC" >&6
 else
-  echo "$as_me:2277: result: no" >&5
+  echo "$as_me:2278: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -2286,37 +2287,37 @@ fi
 
 fi
 
-test -z "$CC" && { { echo "$as_me:2289: error: no acceptable cc found in \$PATH" >&5
+test -z "$CC" && { { echo "$as_me:2290: error: no acceptable cc found in \$PATH" >&5
 echo "$as_me: error: no acceptable cc found in \$PATH" >&2;}
    { (exit 1); exit 1; }; }
 
 # Provide some information about the compiler.
-echo "$as_me:2294:" \
+echo "$as_me:2295:" \
      "checking for C compiler version" >&5
 ac_compiler=`set X $ac_compile; echo $2`
-{ (eval echo "$as_me:2297: \"$ac_compiler --version </dev/null >&5\"") >&5
+{ (eval echo "$as_me:2298: \"$ac_compiler --version </dev/null >&5\"") >&5
   (eval $ac_compiler --version </dev/null >&5) 2>&5
   ac_status=$?
-  echo "$as_me:2300: \$? = $ac_status" >&5
+  echo "$as_me:2301: \$? = $ac_status" >&5
   (exit $ac_status); }
-{ (eval echo "$as_me:2302: \"$ac_compiler -v </dev/null >&5\"") >&5
+{ (eval echo "$as_me:2303: \"$ac_compiler -v </dev/null >&5\"") >&5
   (eval $ac_compiler -v </dev/null >&5) 2>&5
   ac_status=$?
-  echo "$as_me:2305: \$? = $ac_status" >&5
+  echo "$as_me:2306: \$? = $ac_status" >&5
   (exit $ac_status); }
-{ (eval echo "$as_me:2307: \"$ac_compiler -V </dev/null >&5\"") >&5
+{ (eval echo "$as_me:2308: \"$ac_compiler -V </dev/null >&5\"") >&5
   (eval $ac_compiler -V </dev/null >&5) 2>&5
   ac_status=$?
-  echo "$as_me:2310: \$? = $ac_status" >&5
+  echo "$as_me:2311: \$? = $ac_status" >&5
   (exit $ac_status); }
 
-echo "$as_me:2313: checking whether we are using the GNU C compiler" >&5
+echo "$as_me:2314: checking whether we are using the GNU C compiler" >&5
 echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
 if test "${ac_cv_c_compiler_gnu+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 2319 "configure"
+#line 2320 "configure"
 #include "confdefs.h"
 
 int
@@ -2331,16 +2332,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:2334: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:2335: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:2337: \$? = $ac_status" >&5
+  echo "$as_me:2338: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:2340: \"$ac_try\"") >&5
+  { (eval echo "$as_me:2341: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:2343: \$? = $ac_status" >&5
+  echo "$as_me:2344: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_compiler_gnu=yes
 else
@@ -2352,19 +2353,19 @@ rm -f conftest.$ac_objext conftest.$ac_ext
 ac_cv_c_compiler_gnu=$ac_compiler_gnu
 
 fi
-echo "$as_me:2355: result: $ac_cv_c_compiler_gnu" >&5
+echo "$as_me:2356: result: $ac_cv_c_compiler_gnu" >&5
 echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
 GCC=`test $ac_compiler_gnu = yes && echo yes`
 ac_test_CFLAGS=${CFLAGS+set}
 ac_save_CFLAGS=$CFLAGS
 CFLAGS="-g"
-echo "$as_me:2361: checking whether $CC accepts -g" >&5
+echo "$as_me:2362: checking whether $CC accepts -g" >&5
 echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
 if test "${ac_cv_prog_cc_g+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 2367 "configure"
+#line 2368 "configure"
 #include "confdefs.h"
 
 int
@@ -2376,16 +2377,16 @@ main ()
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:2379: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:2380: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:2382: \$? = $ac_status" >&5
+  echo "$as_me:2383: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:2385: \"$ac_try\"") >&5
+  { (eval echo "$as_me:2386: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:2388: \$? = $ac_status" >&5
+  echo "$as_me:2389: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_prog_cc_g=yes
 else
@@ -2395,7 +2396,7 @@ ac_cv_prog_cc_g=no
 fi
 rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-echo "$as_me:2398: result: $ac_cv_prog_cc_g" >&5
+echo "$as_me:2399: result: $ac_cv_prog_cc_g" >&5
 echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
 if test "$ac_test_CFLAGS" = set; then
   CFLAGS=$ac_save_CFLAGS
@@ -2422,16 +2423,16 @@ cat >conftest.$ac_ext <<_ACEOF
 #endif
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:2425: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:2426: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:2428: \$? = $ac_status" >&5
+  echo "$as_me:2429: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:2431: \"$ac_try\"") >&5
+  { (eval echo "$as_me:2432: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:2434: \$? = $ac_status" >&5
+  echo "$as_me:2435: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   for ac_declaration in \
    ''\
@@ -2443,7 +2444,7 @@ if { (eval echo "$as_me:2425: \"$ac_compile\"") >&5
    'void exit (int);'
 do
   cat >conftest.$ac_ext <<_ACEOF
-#line 2446 "configure"
+#line 2447 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 $ac_declaration
@@ -2456,16 +2457,16 @@ exit (42);
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:2459: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:2460: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:2462: \$? = $ac_status" >&5
+  echo "$as_me:2463: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:2465: \"$ac_try\"") >&5
+  { (eval echo "$as_me:2466: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:2468: \$? = $ac_status" >&5
+  echo "$as_me:2469: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   :
 else
@@ -2475,7 +2476,7 @@ continue
 fi
 rm -f conftest.$ac_objext conftest.$ac_ext
   cat >conftest.$ac_ext <<_ACEOF
-#line 2478 "configure"
+#line 2479 "configure"
 #include "confdefs.h"
 $ac_declaration
 int
@@ -2487,16 +2488,16 @@ exit (42);
 }
 _ACEOF
 rm -f conftest.$ac_objext
-if { (eval echo "$as_me:2490: \"$ac_compile\"") >&5
+if { (eval echo "$as_me:2491: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  echo "$as_me:2493: \$? = $ac_status" >&5
+  echo "$as_me:2494: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest.$ac_objext'
-  { (eval echo "$as_me:2496: \"$ac_try\"") >&5
+  { (eval echo "$as_me:2497: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:2499: \$? = $ac_status" >&5
+  echo "$as_me:2500: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   break
 else
@@ -2528,7 +2529,7 @@ ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
-echo "$as_me:2531: checking how to run the C preprocessor" >&5
+echo "$as_me:2532: checking how to run the C preprocessor" >&5
 echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6
 # On Suns, sometimes $CPP names a directory.
 if test -n "$CPP" && test -d "$CPP"; then
@@ -2549,18 +2550,18 @@ do
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp. "Syntax error" is here to catch this case.
   cat >conftest.$ac_ext <<_ACEOF
-#line 2552 "configure"
+#line 2553 "configure"
 #include "confdefs.h"
 #include <assert.h>
                      Syntax error
 _ACEOF
-if { (eval echo "$as_me:2557: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:2558: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:2563: \$? = $ac_status" >&5
+  echo "$as_me:2564: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_c_preproc_warn_flag
@@ -2583,17 +2584,17 @@ rm -f conftest.err conftest.$ac_ext
   # OK, works on sane cases.  Now check whether non-existent headers
   # can be detected and how.
   cat >conftest.$ac_ext <<_ACEOF
-#line 2586 "configure"
+#line 2587 "configure"
 #include "confdefs.h"
 #include <ac_nonexistent.h>
 _ACEOF
-if { (eval echo "$as_me:2590: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:2591: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:2596: \$? = $ac_status" >&5
+  echo "$as_me:2597: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_c_preproc_warn_flag
@@ -2630,7 +2631,7 @@ fi
 else
   ac_cv_prog_CPP=$CPP
 fi
-echo "$as_me:2633: result: $CPP" >&5
+echo "$as_me:2634: result: $CPP" >&5
 echo "${ECHO_T}$CPP" >&6
 ac_preproc_ok=false
 for ac_c_preproc_warn_flag in '' yes
@@ -2640,18 +2641,18 @@ do
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp. "Syntax error" is here to catch this case.
   cat >conftest.$ac_ext <<_ACEOF
-#line 2643 "configure"
+#line 2644 "configure"
 #include "confdefs.h"
 #include <assert.h>
                      Syntax error
 _ACEOF
-if { (eval echo "$as_me:2648: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:2649: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:2654: \$? = $ac_status" >&5
+  echo "$as_me:2655: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_c_preproc_warn_flag
@@ -2674,17 +2675,17 @@ rm -f conftest.err conftest.$ac_ext
   # OK, works on sane cases.  Now check whether non-existent headers
   # can be detected and how.
   cat >conftest.$ac_ext <<_ACEOF
-#line 2677 "configure"
+#line 2678 "configure"
 #include "confdefs.h"
 #include <ac_nonexistent.h>
 _ACEOF
-if { (eval echo "$as_me:2681: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:2682: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:2687: \$? = $ac_status" >&5
+  echo "$as_me:2688: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_c_preproc_warn_flag
@@ -2712,7 +2713,7 @@ rm -f conftest.err conftest.$ac_ext
 if $ac_preproc_ok; then
   :
 else
-  { { echo "$as_me:2715: error: C preprocessor \"$CPP\" fails sanity check" >&5
+  { { echo "$as_me:2716: error: C preprocessor \"$CPP\" fails sanity check" >&5
 echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check" >&2;}
    { (exit 1); exit 1; }; }
 fi
@@ -2723,13 +2724,13 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
-echo "$as_me:2726: checking for ANSI C header files" >&5
+echo "$as_me:2727: checking for ANSI C header files" >&5
 echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
 if test "${ac_cv_header_stdc+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 2732 "configure"
+#line 2733 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 #include <stdarg.h>
@@ -2737,13 +2738,13 @@ else
 #include <float.h>
 
 _ACEOF
-if { (eval echo "$as_me:2740: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:2741: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:2746: \$? = $ac_status" >&5
+  echo "$as_me:2747: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_c_preproc_warn_flag
@@ -2765,7 +2766,7 @@ rm -f conftest.err conftest.$ac_ext
 if test $ac_cv_header_stdc = yes; then
   # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
   cat >conftest.$ac_ext <<_ACEOF
-#line 2768 "configure"
+#line 2769 "configure"
 #include "confdefs.h"
 #include <string.h>
 
@@ -2783,7 +2784,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 <<_ACEOF
-#line 2786 "configure"
+#line 2787 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 
@@ -2804,7 +2805,7 @@ if test $ac_cv_header_stdc = yes; then
   :
 else
   cat >conftest.$ac_ext <<_ACEOF
-#line 2807 "configure"
+#line 2808 "configure"
 #include "confdefs.h"
 #include <ctype.h>
 #if ((' ' & 0x0FF) == 0x020)
@@ -2830,15 +2831,15 @@ main ()
 }
 _ACEOF
 rm -f conftest$ac_exeext
-if { (eval echo "$as_me:2833: \"$ac_link\"") >&5
+if { (eval echo "$as_me:2834: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:2836: \$? = $ac_status" >&5
+  echo "$as_me:2837: \$? = $ac_status" >&5
   (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (eval echo "$as_me:2838: \"$ac_try\"") >&5
+  { (eval echo "$as_me:2839: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:2841: \$? = $ac_status" >&5
+  echo "$as_me:2842: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   :
 else
@@ -2851,7 +2852,7 @@ rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
 fi
 fi
 fi
-echo "$as_me:2854: result: $ac_cv_header_stdc" >&5
+echo "$as_me:2855: result: $ac_cv_header_stdc" >&5
 echo "${ECHO_T}$ac_cv_header_stdc" >&6
 if test $ac_cv_header_stdc = yes; then
 
@@ -2865,7 +2866,7 @@ for ac_prog in 'bison -y' byacc
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-echo "$as_me:2868: checking for $ac_word" >&5
+echo "$as_me:2869: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_YACC+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2880,7 +2881,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_YACC="$ac_prog"
-echo "$as_me:2883: found $ac_dir/$ac_word" >&5
+echo "$as_me:2884: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -2888,10 +2889,10 @@ fi
 fi
 YACC=$ac_cv_prog_YACC
 if test -n "$YACC"; then
-  echo "$as_me:2891: result: $YACC" >&5
+  echo "$as_me:2892: result: $YACC" >&5
 echo "${ECHO_T}$YACC" >&6
 else
-  echo "$as_me:2894: result: no" >&5
+  echo "$as_me:2895: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -2904,7 +2905,7 @@ for ac_prog in flex lex
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-echo "$as_me:2907: checking for $ac_word" >&5
+echo "$as_me:2908: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_LEX+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2919,7 +2920,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_LEX="$ac_prog"
-echo "$as_me:2922: found $ac_dir/$ac_word" >&5
+echo "$as_me:2923: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -2927,10 +2928,10 @@ fi
 fi
 LEX=$ac_cv_prog_LEX
 if test -n "$LEX"; then
-  echo "$as_me:2930: result: $LEX" >&5
+  echo "$as_me:2931: result: $LEX" >&5
 echo "${ECHO_T}$LEX" >&6
 else
-  echo "$as_me:2933: result: no" >&5
+  echo "$as_me:2934: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -2942,7 +2943,7 @@ for ac_prog in flex lex
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-echo "$as_me:2945: checking for $ac_word" >&5
+echo "$as_me:2946: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_prog_LEX+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2957,7 +2958,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   $as_executable_p "$ac_dir/$ac_word" || continue
 ac_cv_prog_LEX="$ac_prog"
-echo "$as_me:2960: found $ac_dir/$ac_word" >&5
+echo "$as_me:2961: found $ac_dir/$ac_word" >&5
 break
 done
 
@@ -2965,10 +2966,10 @@ fi
 fi
 LEX=$ac_cv_prog_LEX
 if test -n "$LEX"; then
-  echo "$as_me:2968: result: $LEX" >&5
+  echo "$as_me:2969: result: $LEX" >&5
 echo "${ECHO_T}$LEX" >&6
 else
-  echo "$as_me:2971: result: no" >&5
+  echo "$as_me:2972: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -2978,7 +2979,7 @@ test -n "$LEX" || LEX=":"
 
 if test -z "$LEXLIB"
 then
-  echo "$as_me:2981: checking for yywrap in -lfl" >&5
+  echo "$as_me:2982: checking for yywrap in -lfl" >&5
 echo $ECHO_N "checking for yywrap in -lfl... $ECHO_C" >&6
 if test "${ac_cv_lib_fl_yywrap+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -2986,7 +2987,7 @@ else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lfl  $LIBS"
 cat >conftest.$ac_ext <<_ACEOF
-#line 2989 "configure"
+#line 2990 "configure"
 #include "confdefs.h"
 
 /* Override any gcc2 internal prototype to avoid an error.  */
@@ -3005,16 +3006,16 @@ yywrap ();
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:3008: \"$ac_link\"") >&5
+if { (eval echo "$as_me:3009: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:3011: \$? = $ac_status" >&5
+  echo "$as_me:3012: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:3014: \"$ac_try\"") >&5
+  { (eval echo "$as_me:3015: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:3017: \$? = $ac_status" >&5
+  echo "$as_me:3018: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_lib_fl_yywrap=yes
 else
@@ -3025,12 +3026,12 @@ fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-echo "$as_me:3028: result: $ac_cv_lib_fl_yywrap" >&5
+echo "$as_me:3029: result: $ac_cv_lib_fl_yywrap" >&5
 echo "${ECHO_T}$ac_cv_lib_fl_yywrap" >&6
 if test $ac_cv_lib_fl_yywrap = yes; then
   LEXLIB="-lfl"
 else
-  echo "$as_me:3033: checking for yywrap in -ll" >&5
+  echo "$as_me:3034: checking for yywrap in -ll" >&5
 echo $ECHO_N "checking for yywrap in -ll... $ECHO_C" >&6
 if test "${ac_cv_lib_l_yywrap+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3038,7 +3039,7 @@ else
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ll  $LIBS"
 cat >conftest.$ac_ext <<_ACEOF
-#line 3041 "configure"
+#line 3042 "configure"
 #include "confdefs.h"
 
 /* Override any gcc2 internal prototype to avoid an error.  */
@@ -3057,16 +3058,16 @@ yywrap ();
 }
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:3060: \"$ac_link\"") >&5
+if { (eval echo "$as_me:3061: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:3063: \$? = $ac_status" >&5
+  echo "$as_me:3064: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:3066: \"$ac_try\"") >&5
+  { (eval echo "$as_me:3067: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:3069: \$? = $ac_status" >&5
+  echo "$as_me:3070: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_lib_l_yywrap=yes
 else
@@ -3077,7 +3078,7 @@ fi
 rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-echo "$as_me:3080: result: $ac_cv_lib_l_yywrap" >&5
+echo "$as_me:3081: result: $ac_cv_lib_l_yywrap" >&5
 echo "${ECHO_T}$ac_cv_lib_l_yywrap" >&6
 if test $ac_cv_lib_l_yywrap = yes; then
   LEXLIB="-ll"
@@ -3088,7 +3089,7 @@ fi
 fi
 
 if test "x$LEX" != "x:"; then
-  echo "$as_me:3091: checking lex output file root" >&5
+  echo "$as_me:3092: checking lex output file root" >&5
 echo $ECHO_N "checking lex output file root... $ECHO_C" >&6
 if test "${ac_cv_prog_lex_root+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3102,16 +3103,16 @@ if test -f lex.yy.c; then
 elif test -f lexyy.c; then
   ac_cv_prog_lex_root=lexyy
 else
-  { { echo "$as_me:3105: error: cannot find output from $LEX; giving up" >&5
+  { { echo "$as_me:3106: error: cannot find output from $LEX; giving up" >&5
 echo "$as_me: error: cannot find output from $LEX; giving up" >&2;}
    { (exit 1); exit 1; }; }
 fi
 fi
-echo "$as_me:3110: result: $ac_cv_prog_lex_root" >&5
+echo "$as_me:3111: result: $ac_cv_prog_lex_root" >&5
 echo "${ECHO_T}$ac_cv_prog_lex_root" >&6
 LEX_OUTPUT_ROOT=$ac_cv_prog_lex_root
 
-echo "$as_me:3114: checking whether yytext is a pointer" >&5
+echo "$as_me:3115: checking whether yytext is a pointer" >&5
 echo $ECHO_N "checking whether yytext is a pointer... $ECHO_C" >&6
 if test "${ac_cv_prog_lex_yytext_pointer+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3127,16 +3128,16 @@ cat >conftest.$ac_ext <<_ACEOF
 `cat $LEX_OUTPUT_ROOT.c`
 _ACEOF
 rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:3130: \"$ac_link\"") >&5
+if { (eval echo "$as_me:3131: \"$ac_link\"") >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  echo "$as_me:3133: \$? = $ac_status" >&5
+  echo "$as_me:3134: \$? = $ac_status" >&5
   (exit $ac_status); } &&
          { ac_try='test -s conftest$ac_exeext'
-  { (eval echo "$as_me:3136: \"$ac_try\"") >&5
+  { (eval echo "$as_me:3137: \"$ac_try\"") >&5
   (eval $ac_try) 2>&5
   ac_status=$?
-  echo "$as_me:3139: \$? = $ac_status" >&5
+  echo "$as_me:3140: \$? = $ac_status" >&5
   (exit $ac_status); }; }; then
   ac_cv_prog_lex_yytext_pointer=yes
 else
@@ -3148,7 +3149,7 @@ LIBS=$ac_save_LIBS
 rm -f "${LEX_OUTPUT_ROOT}.c"
 
 fi
-echo "$as_me:3151: result: $ac_cv_prog_lex_yytext_pointer" >&5
+echo "$as_me:3152: result: $ac_cv_prog_lex_yytext_pointer" >&5
 echo "${ECHO_T}$ac_cv_prog_lex_yytext_pointer" >&6
 if test $ac_cv_prog_lex_yytext_pointer = yes; then
 
@@ -3172,7 +3173,7 @@ fi
 # AFS /usr/afsws/bin/install, which mishandles nonexistent args
 # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
 # ./install, which can be erroneously created by make from ./install.sh.
-echo "$as_me:3175: checking for a BSD compatible install" >&5
+echo "$as_me:3176: checking for a BSD compatible install" >&5
 echo $ECHO_N "checking for a BSD compatible install... $ECHO_C" >&6
 if test -z "$INSTALL"; then
 if test "${ac_cv_path_install+set}" = set; then
@@ -3221,7 +3222,7 @@ fi
     INSTALL=$ac_install_sh
   fi
 fi
-echo "$as_me:3224: result: $INSTALL" >&5
+echo "$as_me:3225: result: $INSTALL" >&5
 echo "${ECHO_T}$INSTALL" >&6
 
 # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
@@ -3237,7 +3238,7 @@ ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
-echo "$as_me:3240: checking how to run the C preprocessor" >&5
+echo "$as_me:3241: checking how to run the C preprocessor" >&5
 echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6
 # On Suns, sometimes $CPP names a directory.
 if test -n "$CPP" && test -d "$CPP"; then
@@ -3258,18 +3259,18 @@ do
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp. "Syntax error" is here to catch this case.
   cat >conftest.$ac_ext <<_ACEOF
-#line 3261 "configure"
+#line 3262 "configure"
 #include "confdefs.h"
 #include <assert.h>
                      Syntax error
 _ACEOF
-if { (eval echo "$as_me:3266: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:3267: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:3272: \$? = $ac_status" >&5
+  echo "$as_me:3273: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_c_preproc_warn_flag
@@ -3292,17 +3293,17 @@ rm -f conftest.err conftest.$ac_ext
   # OK, works on sane cases.  Now check whether non-existent headers
   # can be detected and how.
   cat >conftest.$ac_ext <<_ACEOF
-#line 3295 "configure"
+#line 3296 "configure"
 #include "confdefs.h"
 #include <ac_nonexistent.h>
 _ACEOF
-if { (eval echo "$as_me:3299: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:3300: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:3305: \$? = $ac_status" >&5
+  echo "$as_me:3306: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_c_preproc_warn_flag
@@ -3339,7 +3340,7 @@ fi
 else
   ac_cv_prog_CPP=$CPP
 fi
-echo "$as_me:3342: result: $CPP" >&5
+echo "$as_me:3343: result: $CPP" >&5
 echo "${ECHO_T}$CPP" >&6
 ac_preproc_ok=false
 for ac_c_preproc_warn_flag in '' yes
@@ -3349,18 +3350,18 @@ do
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp. "Syntax error" is here to catch this case.
   cat >conftest.$ac_ext <<_ACEOF
-#line 3352 "configure"
+#line 3353 "configure"
 #include "confdefs.h"
 #include <assert.h>
                      Syntax error
 _ACEOF
-if { (eval echo "$as_me:3357: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:3358: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:3363: \$? = $ac_status" >&5
+  echo "$as_me:3364: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_c_preproc_warn_flag
@@ -3383,17 +3384,17 @@ rm -f conftest.err conftest.$ac_ext
   # OK, works on sane cases.  Now check whether non-existent headers
   # can be detected and how.
   cat >conftest.$ac_ext <<_ACEOF
-#line 3386 "configure"
+#line 3387 "configure"
 #include "confdefs.h"
 #include <ac_nonexistent.h>
 _ACEOF
-if { (eval echo "$as_me:3390: \"$ac_cpp conftest.$ac_ext\"") >&5
+if { (eval echo "$as_me:3391: \"$ac_cpp conftest.$ac_ext\"") >&5
   (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
   ac_status=$?
   egrep -v '^ *\+' conftest.er1 >conftest.err
   rm -f conftest.er1
   cat conftest.err >&5
-  echo "$as_me:3396: \$? = $ac_status" >&5
+  echo "$as_me:3397: \$? = $ac_status" >&5
   (exit $ac_status); } >/dev/null; then
   if test -s conftest.err; then
     ac_cpp_err=$ac_c_preproc_warn_flag
@@ -3421,7 +3422,7 @@ rm -f conftest.err conftest.$ac_ext
 if $ac_preproc_ok; then
   :
 else
-  { { echo "$as_me:3424: error: C preprocessor \"$CPP\" fails sanity check" >&5
+  { { echo "$as_me:3425: error: C preprocessor \"$CPP\" fails sanity check" >&5
 echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check" >&2;}
    { (exit 1); exit 1; }; }
 fi
@@ -3434,7 +3435,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 # Extract the first word of "rm", so it can be a program name with args.
 set dummy rm; ac_word=$2
-echo "$as_me:3437: checking for $ac_word" >&5
+echo "$as_me:3438: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_path_RM+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3451,7 +3452,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   if $as_executable_p "$ac_dir/$ac_word"; then
    ac_cv_path_RM="$ac_dir/$ac_word"
-   echo "$as_me:3454: found $ac_dir/$ac_word" >&5
+   echo "$as_me:3455: found $ac_dir/$ac_word" >&5
    break
 fi
 done
@@ -3463,16 +3464,16 @@ fi
 RM=$ac_cv_path_RM
 
 if test -n "$RM"; then
-  echo "$as_me:3466: result: $RM" >&5
+  echo "$as_me:3467: result: $RM" >&5
 echo "${ECHO_T}$RM" >&6
 else
-  echo "$as_me:3469: result: no" >&5
+  echo "$as_me:3470: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
 # Extract the first word of "mv", so it can be a program name with args.
 set dummy mv; ac_word=$2
-echo "$as_me:3475: checking for $ac_word" >&5
+echo "$as_me:3476: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_path_MV+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3489,7 +3490,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   if $as_executable_p "$ac_dir/$ac_word"; then
    ac_cv_path_MV="$ac_dir/$ac_word"
-   echo "$as_me:3492: found $ac_dir/$ac_word" >&5
+   echo "$as_me:3493: found $ac_dir/$ac_word" >&5
    break
 fi
 done
@@ -3501,16 +3502,16 @@ fi
 MV=$ac_cv_path_MV
 
 if test -n "$MV"; then
-  echo "$as_me:3504: result: $MV" >&5
+  echo "$as_me:3505: result: $MV" >&5
 echo "${ECHO_T}$MV" >&6
 else
-  echo "$as_me:3507: result: no" >&5
+  echo "$as_me:3508: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
 # Extract the first word of "tar", so it can be a program name with args.
 set dummy tar; ac_word=$2
-echo "$as_me:3513: checking for $ac_word" >&5
+echo "$as_me:3514: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_path_TAR+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3527,7 +3528,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   if $as_executable_p "$ac_dir/$ac_word"; then
    ac_cv_path_TAR="$ac_dir/$ac_word"
-   echo "$as_me:3530: found $ac_dir/$ac_word" >&5
+   echo "$as_me:3531: found $ac_dir/$ac_word" >&5
    break
 fi
 done
@@ -3539,10 +3540,10 @@ fi
 TAR=$ac_cv_path_TAR
 
 if test -n "$TAR"; then
-  echo "$as_me:3542: result: $TAR" >&5
+  echo "$as_me:3543: result: $TAR" >&5
 echo "${ECHO_T}$TAR" >&6
 else
-  echo "$as_me:3545: result: no" >&5
+  echo "$as_me:3546: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -3551,7 +3552,7 @@ fi
   if test -z "$PKG_CONFIG"; then
     # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-echo "$as_me:3554: checking for $ac_word" >&5
+echo "$as_me:3555: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
 if test "${ac_cv_path_PKG_CONFIG+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
@@ -3568,7 +3569,7 @@ for ac_dir in $ac_dummy; do
   test -z "$ac_dir" && ac_dir=.
   if $as_executable_p "$ac_dir/$ac_word"; then
    ac_cv_path_PKG_CONFIG="$ac_dir/$ac_word"
-   echo "$as_me:3571: found $ac_dir/$ac_word" >&5
+   echo "$as_me:3572: found $ac_dir/$ac_word" >&5
    break
 fi
 done
@@ -3580,10 +3581,10 @@ fi
 PKG_CONFIG=$ac_cv_path_PKG_CONFIG
 
 if test -n "$PKG_CONFIG"; then
-  echo "$as_me:3583: result: $PKG_CONFIG" >&5
+  echo "$as_me:3584: result: $PKG_CONFIG" >&5
 echo "${ECHO_T}$PKG_CONFIG" >&6
 else
-  echo "$as_me:3586: result: no" >&5
+  echo "$as_me:3587: result: no" >&5
 echo "${ECHO_T}no" >&6
 fi
 
@@ -3597,24 +3598,24 @@ fi
   else
      PKG_CONFIG_MIN_VERSION=0.9.0
      if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then
-        echo "$as_me:3600: checking for glib-2.0 >= $GLIB_REQUIRED" >&5
+        echo "$as_me:3601: checking for glib-2.0 >= $GLIB_REQUIRED" >&5
 echo $ECHO_N "checking for glib-2.0 >= $GLIB_REQUIRED... $ECHO_C" >&6
 
         if $PKG_CONFIG --exists "glib-2.0 >= $GLIB_REQUIRED" ; then
-            echo "$as_me:3604: result: yes" >&5
+            echo "$as_me:3605: result: yes" >&5
 echo "${ECHO_T}yes" >&6
             succeeded=yes
 
-            echo "$as_me:3608: checking GLIB_CFLAGS" >&5
+            echo "$as_me:3609: checking GLIB_CFLAGS" >&5
 echo $ECHO_N "checking GLIB_CFLAGS... $ECHO_C" >&6
             GLIB_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= $GLIB_REQUIRED"`
-            echo "$as_me:3611: result: $GLIB_CFLAGS" >&5
+            echo "$as_me:3612: result: $GLIB_CFLAGS" >&5
 echo "${ECHO_T}$GLIB_CFLAGS" >&6
 
-            echo "$as_me:3614: checking GLIB_LIBS" >&5
+            echo "$as_me:3615: checking GLIB_LIBS" >&5
 echo $ECHO_N "checking GLIB_LIBS... $ECHO_C" >&6
             GLIB_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= $GLIB_REQUIRED"`
-            echo "$as_me:3617: result: $GLIB_LIBS" >&5
+            echo "$as_me:3618: result: $GLIB_LIBS" >&5
 echo "${ECHO_T}$GLIB_LIBS" >&6
         else
             GLIB_CFLAGS=""
@@ -3634,7 +3635,7 @@ echo "${ECHO_T}$GLIB_LIBS" >&6
   if test $succeeded = yes; then
      :
   else
-     { { echo "$as_me:3637: error: Library requirements (glib-2.0 >= $GLIB_REQUIRED) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them." >&5
+     { { echo "$as_me:3638: error: Library requirements (glib-2.0 >= $GLIB_REQUIRED) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them." >&5
 echo "$as_me: error: Library requirements (glib-2.0 >= $GLIB_REQUIRED) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them." >&2;}
    { (exit 1); exit 1; }; }
   fi
@@ -3719,7 +3720,7 @@ DEFS=-DHAVE_CONFIG_H
 : ${CONFIG_STATUS=./config.status}
 ac_clean_files_save=$ac_clean_files
 ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ echo "$as_me:3722: creating $CONFIG_STATUS" >&5
+{ echo "$as_me:3723: creating $CONFIG_STATUS" >&5
 echo "$as_me: creating $CONFIG_STATUS" >&6;}
 cat >$CONFIG_STATUS <<_ACEOF
 #! $SHELL
@@ -3895,7 +3896,7 @@ cat >>$CONFIG_STATUS <<\EOF
     echo "$ac_cs_version"; exit 0 ;;
   --he | --h)
     # Conflict between --help and --header
-    { { echo "$as_me:3898: error: ambiguous option: $1
+    { { echo "$as_me:3899: error: ambiguous option: $1
 Try \`$0 --help' for more information." >&5
 echo "$as_me: error: ambiguous option: $1
 Try \`$0 --help' for more information." >&2;}
@@ -3914,7 +3915,7 @@ Try \`$0 --help' for more information." >&2;}
     ac_need_defaults=false;;
 
   # This is an error.
-  -*) { { echo "$as_me:3917: error: unrecognized option: $1
+  -*) { { echo "$as_me:3918: error: unrecognized option: $1
 Try \`$0 --help' for more information." >&5
 echo "$as_me: error: unrecognized option: $1
 Try \`$0 --help' for more information." >&2;}
@@ -3964,7 +3965,7 @@ do
   "doc/gob2.1" ) CONFIG_FILES="$CONFIG_FILES doc/gob2.1" ;;
   "default-1" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;;
   "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
-  *) { { echo "$as_me:3967: error: invalid argument: $ac_config_target" >&5
+  *) { { echo "$as_me:3968: error: invalid argument: $ac_config_target" >&5
 echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
    { (exit 1); exit 1; }; };;
   esac
@@ -4196,7 +4197,7 @@ done; }
   esac
 
   if test x"$ac_file" != x-; then
-    { echo "$as_me:4199: creating $ac_file" >&5
+    { echo "$as_me:4200: creating $ac_file" >&5
 echo "$as_me: creating $ac_file" >&6;}
     rm -f "$ac_file"
   fi
@@ -4214,7 +4215,7 @@ echo "$as_me: creating $ac_file" >&6;}
       -) echo $tmp/stdin ;;
       [\\/$]*)
          # Absolute (can't be DOS-style, as IFS=:)
-         test -f "$f" || { { echo "$as_me:4217: error: cannot find input file: $f" >&5
+         test -f "$f" || { { echo "$as_me:4218: error: cannot find input file: $f" >&5
 echo "$as_me: error: cannot find input file: $f" >&2;}
    { (exit 1); exit 1; }; }
          echo $f;;
@@ -4227,7 +4228,7 @@ echo "$as_me: error: cannot find input file: $f" >&2;}
            echo $srcdir/$f
          else
            # /dev/null tree
-           { { echo "$as_me:4230: error: cannot find input file: $f" >&5
+           { { echo "$as_me:4231: error: cannot find input file: $f" >&5
 echo "$as_me: error: cannot find input file: $f" >&2;}
    { (exit 1); exit 1; }; }
          fi;;
@@ -4288,7 +4289,7 @@ for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
   * )   ac_file_in=$ac_file.in ;;
   esac
 
-  test x"$ac_file" != x- && { echo "$as_me:4291: creating $ac_file" >&5
+  test x"$ac_file" != x- && { echo "$as_me:4292: creating $ac_file" >&5
 echo "$as_me: creating $ac_file" >&6;}
 
   # First look for the input files in the build tree, otherwise in the
@@ -4299,7 +4300,7 @@ echo "$as_me: creating $ac_file" >&6;}
       -) echo $tmp/stdin ;;
       [\\/$]*)
          # Absolute (can't be DOS-style, as IFS=:)
-         test -f "$f" || { { echo "$as_me:4302: error: cannot find input file: $f" >&5
+         test -f "$f" || { { echo "$as_me:4303: error: cannot find input file: $f" >&5
 echo "$as_me: error: cannot find input file: $f" >&2;}
    { (exit 1); exit 1; }; }
          echo $f;;
@@ -4312,7 +4313,7 @@ echo "$as_me: error: cannot find input file: $f" >&2;}
            echo $srcdir/$f
          else
            # /dev/null tree
-           { { echo "$as_me:4315: error: cannot find input file: $f" >&5
+           { { echo "$as_me:4316: error: cannot find input file: $f" >&5
 echo "$as_me: error: cannot find input file: $f" >&2;}
    { (exit 1); exit 1; }; }
          fi;;
@@ -4429,7 +4430,7 @@ cat >>$CONFIG_STATUS <<\EOF
   rm -f $tmp/in
   if test x"$ac_file" != x-; then
     if cmp -s $ac_file $tmp/config.h 2>/dev/null; then
-      { echo "$as_me:4432: $ac_file is unchanged" >&5
+      { echo "$as_me:4433: $ac_file is unchanged" >&5
 echo "$as_me: $ac_file is unchanged" >&6;}
     else
       ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
index 812c1ed891fd0c869ed61d3e4062fbf5b98c2ec9..9a9008ce8f7298f63fc368ec753e2c9de95ca612 100644 (file)
@@ -2,7 +2,7 @@ dnl Process this file with autoconf to produce a configure script.
 AC_PREREQ(2.2)
 AC_INIT(src/treefuncs.h)
 AM_CONFIG_HEADER(config.h)
-AM_INIT_AUTOMAKE(gob2,2.0.1)
+AM_INIT_AUTOMAKE(gob2,2.0.2)
 AM_MAINTAINER_MODE
 
 GLIB_REQUIRED=1.3.12
index 4f28fd1e629fc6579a5174617cdb3175a40e505d..c81e65f4b2561030960d6f7c94cb86045ff6fe1c 100644 (file)
@@ -1,4 +1,4 @@
-# Makefile.in generated automatically by automake 1.4-p5 from Makefile.am
+# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
 
 # Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
 # This Makefile.in is free software; the Free Software Foundation
index 4af57f130029e931b11bfb5227d309d1c43f528f..1f11512121a31fedaccd187cff8496b474971525 100644 (file)
@@ -49,10 +49,10 @@ Never generate any code with GNU C extensions.  However all the GNU C
 extensions are always wrapped in #ifdef __GNUC__, so code using them compiles
 correctly even on non-GNU compilers.  This option is for purists only.
 (using GNU extensions some warnings are eliminated, some ugly hacks and there
-is better argument type safety, so it's good to use them)
+is better argument type safety, so it\'s good to use them)
 .TP
 .B --no-touch-headers
-Don't touch the generated header file unless it really changed, this avoids
+Don\'t touch the generated header file unless it really changed, this avoids
 spurious rebuilds, but can confuse some make systems (automake in particular),
 so it is not enabled by default.  Private header is still touched even if
 unchanged however.
@@ -80,7 +80,7 @@ Print directory that will be searched for m4 files.
 Do not write any output files, just check syntax of the input file.
 .TP
 .B --no-lines
-Do not print out the '#line' statements into the output.  Useful for debugging
+Do not print out the \'#line\' statements into the output.  Useful for debugging
 the auto-generated generated code.
 .TP
 .B --no-self-alias
@@ -99,7 +99,7 @@ private data members without breaking binary compatibility.
 .PP
 Because we need to parse out different parts of the typename, sometimes you
 need to specify the typename with some special syntax.  Types are specified in
-capitalized form and words are separated by ':'.  The first word of the type
+capitalized form and words are separated by \':\'.  The first word of the type
 (which can be empty) is the "namespace".  This fact is for example used for the
 type checking macro and the type macro.  For "Gtk:New:Button", the macros will
 be GTK_IS_NEW_BUTTON and GTK_TYPE_NEW_BUTTON.  This colon separated format of
@@ -109,7 +109,7 @@ types.
 .SH OUTPUT FILES
 .PP
 The filenames are created from the typename.  The words are
-separated by '-' and all in lower case.  For example for an object named
+separated by \'-\' and all in lower case.  For example for an object named
 "Gtk:New:Button", the files are \fBgtk-new-button.c\fR and
 \fBgtk-new-button.h\fR.
 If you are using C++ mode, the output .c file will in fact be a .cc file.
@@ -125,19 +125,19 @@ you should only edit the .gob file.
 
 .SH INCLUDING NORMAL C CODE IN THE OUTPUT FILES
 .PP
-To include some code directly in the output C file begin with '%{'
-on an empty line and end the code with a '%}' on an empty line.  These
+To include some code directly in the output C file begin with \'%{\'
+on an empty line and end the code with a \'%}\' on an empty line.  These
 sections will appear in the output files in the order they are given.
 There are several other \fIsections\fR to which you can put code.  You can
-put it in the 'header' section (which can be abbreviated 'h') and it will
-go into the public header file.  You can also put it in the 'privateheader'
-section (abbreviated 'ph') which will make the code go into the private
+put it in the \'header\' section (which can be abbreviated \'h\') and it will
+go into the public header file.  You can also put it in the \'privateheader\'
+section (abbreviated \'ph\') which will make the code go into the private
 header file.  Sometimes you want some code (other includes) to appear before
 the extern "C" and the protecting define.  To do this you can put them
-into the 'headertop' (or 'ht') section.  You may wish to include code or
-comments in all the files, which you can do by putting them into the 'all'
-(or 'a') section.  Similarly, code you wish to appear at the top of all
-files go in the 'alltop' (or 'at') section.  For example:
+into the \'headertop\' (or \'ht\') section.  You may wish to include code or
+comments in all the files, which you can do by putting them into the \'all\'
+(or \'a\') section.  Similarly, code you wish to appear at the top of all
+files go in the \'alltop\' (or \'at\') section.  For example:
 .nf
 
   %alltop{
@@ -184,7 +184,7 @@ that will be called \fB<basename>-private.h\fR.  Same rule as above applies
 for this just as it does for the regular header file.  If you do explicitly
 include the regular header file, you should always include this private
 header file below it.  That is, if you use any private data members.  If you
-don't, the private header file automatically includes the public header file,
+don\'t, the private header file automatically includes the public header file,
 and thus the public header file will be indirectly included at the very top
 of the file.
 
@@ -210,7 +210,7 @@ There are five types of data members.  Three of them are normal data numbers,
 one is class wide (global) in scope and one is a virtual one, usually linked to
 a normal data member or a class wide data member.  The three normal data
 members are public, protected and private.  Public and protected are basically
-just entries in the object structure, while private has it's own dynamically
+just entries in the object structure, while private has it\'s own dynamically
 allocated private structure.  Protected members are always put after the public
 one in the structure and are marked protected in the header file.  There is
 only one identifier allowed per typename unlike in normal C.  Example:
@@ -223,7 +223,7 @@ only one identifier allowed per typename unlike in normal C.  Example:
 .fi
 .PP
 Public and protected data members are accessed normally as members of
-the object struct.  Example where 'i' is as above a public data member:
+the object struct.  Example where \'i\' is as above a public data member:
 .nf
 
   object->i = 1;
@@ -233,14 +233,14 @@ the object struct.  Example where 'i' is as above a public data member:
 The private data members are defined in a structure which is only available
 inside the .c file, or by including a private header file.  You must access
 them using the structure _priv.  Example
-where 'h' is the private data member (as in the above example):
+where \'h\' is the private data member (as in the above example):
 .nf
 
   object->_priv->h = NULL;
 
 .fi
 The _priv structure is defined in the \fB<basename>-private.h\fR.
-This file is automatically included if you don't include it yourself.  You
+This file is automatically included if you don\'t include it yourself.  You
 should always explicitly include it in your .gob file if you explicitly also
 include the main header file.  The reason it is a separate header file is
 that you can also include it in other places that need to access this objects
@@ -279,7 +279,7 @@ object and casting it to your class pointer.  Thus the following would work:
 You can automatically initialize the public private and protected data members
 without having to add an init method.  The advantage here is that
 initialization is kept close to the definition of the data member and thus
-it's easier to check.  To do this, just add a '=' followed by a number or
+it\'s easier to check.  To do this, just add a \'=\' followed by a number or
 a token.  It is also possible to include arbitrary C code for more elaborate
 initializations by putting it all in curly braces.  Note that the curly braces
 will not be printed into the output, but since gob does not C parsing it needs
@@ -299,7 +299,7 @@ of "hello".
 Most data stored as pointers needs to have a function called when the object
 is finalized to either free the data.  Gob will let you
 define a function to be called on the data the object is finalized.  This is
-achieved by putting 'destroywith' followed by a function name after the
+achieved by putting \'destroywith\' followed by a function name after the
 variable definition.  It is only called if the data you defined this on
 is not NULL, so you cans specify functions which do not handle NULL.  It
 is very much like the GDestroyNotify function used in GTK+ and glib in many
@@ -339,9 +339,9 @@ a helper routine or the following code:
 
 .fi
 The thing to remember with these is that there are many ways to do this
-and you'd better be consistent in your code in how you use the above things.
+and you\'d better be consistent in your code in how you use the above things.
 Also defining a helper routine that will do the destruction will be a nicer
-thing to do if that's a possibility.  The "destroy" keyword with code does
+thing to do if that\'s a possibility.  The "destroy" keyword with code does
 take up more space in the file and it may become more cluttered.
 .PP
 The data is zeroed out after being destroyed.  This is to make debugging easier
@@ -355,11 +355,11 @@ have to do this in your own finalize override function.
 .B "Automatic Unreffing:"
 .PP
 This is very much like the automatic destruction, but is instead run in the
-shutdown method (which is called from the "destroy" method of GtkObject).
-All data and other objects that you need to unref should be done here, and
-not at finalize time.  The semantics are otherwise the same as for the
-"destroywith" and "destroy" keywords, except that you use "unrefwith"
-and "unref".
+dispose method (it is among other places called from the "destroy" method of
+GtkObject).  All data and other objects that you need to unref should be
+done here, and not at finalize time.  The semantics are otherwise the same
+as for the "destroywith" and "destroy" keywords, except that you use
+"unrefwith" and "unref".
 .nf
 
   public G:Object *foo = NULL
@@ -387,8 +387,8 @@ You can also use the
 identifier "self" as pointer to the object instance.  The type is defined as
 one of the GObject type enums, but without the G_TYPE_ prefix.  There are
 also some attributes of a property which you can set.  For example the
-following is a definition of an integer property 'height' which will
-be synchronized with a private integer data member also of the name 'height'.
+following is a definition of an integer property \'height\' which will
+be synchronized with a private integer data member also of the name \'height\'.
 .nf
 
   private int height;
@@ -405,50 +405,50 @@ be synchronized with a private integer data member also of the name 'height'.
 .PP
 The attributes are really optional though you should at least set some
 of them.
-All property types have a 'nick' and a 'blurb' attribute and you should
+All property types have a \'nick\' and a \'blurb\' attribute and you should
 set those accordingly.  This will make runtime querying the object
 nicer as things such as gui editors and class browsers can be more
-verbose about the class itself.  You can use the '_("string")' notation
+verbose about the class itself.  You can use the \'_("string")\' notation
 instead of just "string", and that will mark the string for translation.
 .PP
-Almost all types also have a 'default_value' attribute which sets the initial
+Almost all types also have a \'default_value\' attribute which sets the initial
 value of this property (on object initialization, the set handler will be run
 automatically with this value).  This value will be overriden if the user 
 sets a value of this property on the call to g_object_new.
 .PP
-All the numeric types (including CHAR) have 'minimum' and 'maximum'
+All the numeric types (including CHAR) have \'minimum\' and \'maximum\'
 attributes which can restrict the range.  If you do not specify these
 the range will be the full range that the data type can handle.
 .PP
-Types such as UNICHAR and BOOLEAN only have the 'nick', 'blurb' and
-'default_value' attributes.
+Types such as UNICHAR and BOOLEAN only have the \'nick\', \'blurb\' and
+\'default_value\' attributes.
 .PP
-The ENUM type has an 'enum_type' attribute which is the exact
+The ENUM type has an \'enum_type\' attribute which is the exact
 type of the enum.  This is so that the property knows which exact
 type you can set, rather then just knowing it is an enum.  You should
 always create an enum type specific for the enum itself (see section
 on the enum types)
 .PP
-Similarly FLAGS type has a 'flags_type' which again you should set to
+Similarly FLAGS type has a \'flags_type\' which again you should set to
 the specific type of this flags data member.
 .PP
-There is a STRING type which has only the extra 'default_value' attribute.
+There is a STRING type which has only the extra \'default_value\' attribute.
 .PP
-The OBJECT type is one of the types that doesn't have a 'default_value' and it
-only has an 'object_type' attribute (in addition to nick and blurb of course)
+The OBJECT type is one of the types that doesn\'t have a \'default_value\' and it
+only has an \'object_type\' attribute (in addition to nick and blurb of course)
 that is the exact object type that this property accepts.
 .PP
 There is a BOXED type which is a pointer which has a boxed type defined
 (such that GObject knows how to copy and destroy this pointer).  Here
-you will need to specify the 'boxed_type' attribute with the specific
+you will need to specify the \'boxed_type\' attribute with the specific
 type of the boxed pointer.
 .PP
-There is also a POINTER type, which has only the 'nick' and 'blurb'
+There is also a POINTER type, which has only the \'nick\' and \'blurb\'
 attributes.  This is for storing arbitrary pointers.  You should be
 careful with this one, as GObject knows nothing about the data
-stored at this pointer.  It is somewhat like a 'void *' type.
+stored at this pointer.  It is somewhat like a \'void *\' type.
 .PP
-There is also the PARAM type for storing parameters with a 'param_type'
+There is also the PARAM type for storing parameters with a \'param_type\'
 attribute.
 .PP
 You should notice that this list is pretty much like the list of g_param_spec_*
@@ -457,8 +457,8 @@ arguments of those functions.  Note however that value array is NOT supported
 yet.
 .PP
 You can also specify extra flags, such as CONSTRUCT or CONSTRUCT_ONLY using the
-'flags' attribute.  You can specify multiple flags by oring them together with
-'|'.  These flags correspond to the GParamFlags enumeration except do not
+\'flags\' attribute.  You can specify multiple flags by oring them together with
+\'|\'.  These flags correspond to the GParamFlags enumeration except do not
 include the G_PARAM_ prefix.  So for example to define an enumeration property,
 which is a CONSTRUCT_ONLY property, we could do the following:
 .nf
@@ -475,7 +475,7 @@ which is a CONSTRUCT_ONLY property, we could do the following:
 .fi
 .PP
 The above example also gives an example of automatic linking to a standard data
-memember.  By including the attribute 'link' a get and set handlers will be
+memember.  By including the attribute \'link\' a get and set handlers will be
 automatically added without having to type them by hand.  This is useful for a
 vast majority data types that are just linked to some standard data member and
 do not need to do anything extra on get or set.
@@ -483,7 +483,7 @@ do not need to do anything extra on get or set.
 Another extra feature of properties is the possibility of automatically
 exporing methods to get and set the property.  That is without having to
 use g_object_set and g_object_get.  This is achieved by adding an
-'export' attribute to the list of property attributes.
+\'export\' attribute to the list of property attributes.
 .PP
 If you do not define a set or get handler, the property will automatically
 be only readable or writable as appropriate.
@@ -513,10 +513,10 @@ And for getting, you would use:
 Note however that the type safety only works completely on GNU C compilers.
 The code will compile on other compilers but with minimal type safety.
 For complete type safety it is useful to use the get/set methods that
-are defined by using the 'export' attribute.
+are defined by using the \'export\' attribute.
 .PP
 To get bettery type safety on some of the property types, you can specify
-the 'type' attribute which will add casts where appropriate in code dealing
+the \'type\' attribute which will add casts where appropriate in code dealing
 with this property.  This is especially useful for POINTER types.  But
 even for others.
 
@@ -533,8 +533,8 @@ file.  Then there are signal, virtual and override methods.  More on those
 later.  You can also
 define init and class_init methods with a special definition if you want
 to add code to the constructors or you can just leave them out.
-You can also not define a body for a method, by just using ';' instead of a
-body.  This will define an empty function.  You can't do this for non-void
+You can also not define a body for a method, by just using \';\' instead of a
+body.  This will define an empty function.  You can\'t do this for non-void
 regular public, private or protected methods, however it is acceptable for
 non-void virtual, signal and override methods.
 .PP
@@ -545,7 +545,7 @@ following syntax for arguments.  The first argument can be just "self",
 which gob will translate into a pointer to the object instance.  The rest
 of the arguments are very similar to normal C arguments.  If the
 typename is an object pointer you should use the syntax defined above
-with the words separated by ':'
+with the words separated by \':\'
 .nf
 <type> <argument id>
 or
@@ -589,16 +589,16 @@ output, they just delimit the string.  For example:
 
 .fi
 The onerror value is also used in overrides that have a return value, in
-case there isn't a parent method, PARENT_HANDLER will return it.  More about
+case there isn\'t a parent method, PARENT_HANDLER will return it.  More about
 this later.
 .PP
 .B "Default return:"
 .PP
 Some signal and virtual methods have a return type.  But what happens if
 there is no default handler and no one connects to a signal.  GOB2 will
-normally have the wrappers return whatever you specify with onerror or '0'
-if you haven't specified anything.  You can also specify a default
-return value with the keyword 'defreturn'.  It's use is identical to the
+normally have the wrappers return whatever you specify with onerror or \'0\'
+if you haven\'t specified anything.  You can also specify a default
+return value with the keyword \'defreturn\'.  It\'s use is identical to the
 use of onerror, and you can in fact use both at the same time.  Example
 .nf
 
@@ -614,7 +614,7 @@ There are two methods that handle the construction of an object, init and
 class_init.  You define them by just using the init or class_init keyword 
 with an untyped argument in the argument list.  The argument will be
 usable in your function as a pointer to your object or class depending if
-it's init or class_init.
+it\'s init or class_init.
 For example:
 .nf
 
@@ -642,7 +642,7 @@ so that one can override the method in derived methods.  That is to implement
 the method in a derived class, you must then use an override method (more
 on those later).
 They can be empty
-(if you put ';' instead of the C code).  A wrapper will also be defined
+(if you put \';\' instead of the C code).  A wrapper will also be defined
 which makes calling the methods he same as public methods.  This type of
 method is just a little bit "slower" then normal functions, but not as
 slow as signals.  You define them by using "virtual" keyword before the
@@ -683,12 +683,12 @@ or
 
 .fi
 .PP
-If you don't want the wrapper that emits the signal to be public, you can
+If you don\'t want the wrapper that emits the signal to be public, you can
 include the keyword "private" after the "signal" keyword.  This will make
 the wrapper a normal private method.  You can also make a protected wrapper
 by using "protected" instead of "private".
 .PP
-If you don't define a "first" or a "last", the default will be taken as
+If you don\'t define a "first" or a "last", the default will be taken as
 "last".
 .PP
 You can also add additional flags.  You do this just like with the argument
@@ -732,7 +732,7 @@ of some class in the parent tree of the new object), you can define and
 override method.  After the "override" keyword, you should put the
 typename of the class you are overriding a method from.  Other then that
 it is the same as for other methods.  The "self" pointer in this case
-should be the type of the method you are overriding so that you don't
+should be the type of the method you are overriding so that you don\'t
 get warnings during compilation.  Also to call the method of the parent
 class, you can use the PARENT_HANDLER macro with your arguments.  Example:
 .nf
@@ -751,7 +751,7 @@ you can use.  It will return whatever the parent handler returned, or the
 .PP
 .B "Method names:"
 .PP
-Inside the code, aliases are set for the methods, so that you don't
+Inside the code, aliases are set for the methods, so that you don\'t
 have to type the class name before each call, just type \fBself_\fR instead
 of the name of the class.  So to call a method called \fBblah\fR, you
 would use the name \fBself_blah\fR.
@@ -820,18 +820,18 @@ In your generated C file, you can use the defines GOB_VERSION_MAJOR
 GOB_VERSION_MINOR and GOB_VERSION_PATCHLEVEL if you wish to for example
 use a feature that is only available in some newer gob version.  Note however
 that you can only use these defines in the C code portions of your .gob file,
-and #ifdef's cannot span multiple functions.  Check the BUGS section
+and #ifdef\'s cannot span multiple functions.  Check the BUGS section
 for more on using the C preprocessor and gob.
 .PP
 .B "Minimum version requires:"
 .PP
 You can also make your .gob file require at least certain version of gob.  You
-do this by putting 'requires x.y.z' (where x.y.z is the version number) outside
-of any C block, comment or class, usually you should make this the first line
-in the file or close to the top.  If gob finds this and the version of gob used
-to compile the code is lower then that listed in the require, gob will generate
-an error and exit.  For example to require that gob2 version 2.0.0 or higher
-be used to compile a file, put this at the top of that file:
+do this by putting \'requires x.y.z\' (where x.y.z is the version number)
+outside of any C block, comment or class, usually you should make this the
+first line in the file or close to the top.  If gob finds this and the version
+of gob used to compile the code is lower then that listed in the require, gob
+will generate an error and exit.  For example to require that gob2 version
+2.0.0 or higher be used to compile a file, put this at the top of that file:
 .nf
 
   requires 2.0.0
@@ -843,14 +843,14 @@ be used to compile a file, put this at the top of that file:
 You can create new GObject ENUM, FLAGS and GError types for use in your
 classes easily.  Glib includes some utilities for handling these, however
 it may be cleaner to use the below specified way in your classes.  It also
-then doesn't require any Makefile setup.  Make sure this is defined in the same
-section as the class, that is not in any of the '%?{' '%}' sections.
-.PP
-You use the keywords 'enum' 'flags' and 'error' as you would use the 'class'
-keyword.  Then you give a prefix for the values in the enumeration.  Then
-you define a list of values just like in C.  For 'enum' types you can also
-specify the values assigned to each string.  Then you specify the type
-in the standard gob style of specifying types.  Here are a few examples
+then doesn\'t require any Makefile setup.  Make sure this is defined in the
+same section as the class, that is not in any of the \'%?{\' \'%}\' sections.
+.PP
+You use the keywords \'enum\' \'flags\' and \'error\' as you would use the
+\'class\' keyword.  Then you give a prefix for the values in the enumeration.
+Then you define a list of values just like in C.  For \'enum\' types you can
+also specify the values assigned to each string.  Then you specify the type in
+the standard gob style of specifying types.  Here are a few examples
 of all of these:
 .nf
 
@@ -891,7 +891,7 @@ There is a C++ mode so that gob creates C++ compiler friendly files.  You need
 to use the --for-cpp argument to gob.  This will make the generated file have
 a .cc instead of a .c extension, and several things will be adjusted to
 make it all work for a C++ compiler.  One thing that will be missing is an
-alias to the new method, as that clashes with C++, so instead you'll have to
+alias to the new method, as that clashes with C++, so instead you\'ll have to
 use the full name of the method inside your code.  Also note that gob does
 not use any C++ features, this option will just make the generated code
 compile with a C++ compiler.
@@ -917,12 +917,12 @@ get_type, with no arguments.  Example:
 .SH INTERFACES
 .PP
 Currently gob will only allow you to implement interfaces (that is, define new
-classes which implement an interface) and doesn't yet have support for making
+classes which implement an interface) and doesn\'t yet have support for making
 new interfaces, but this will be coming at some point in the future.
 .PP
-To define a class that implements an interface add a class flag 'interface'
+To define a class that implements an interface add a class flag \'interface\'
 with the type name of the interface as an argument.  Then to implement
-a specific method of the interface, just add 'interface <typename>'
+a specific method of the interface, just add \'interface <typename>\'
 before the method definition.  The method can, and probably should be,
 private.
 .PP
@@ -994,12 +994,12 @@ with a method fooBar that takes a single string:
   }
 
 .fi
-Note that the implementation method can be private, in fact that's probably
-a good idea to do.  It won't work to make this a signal, it can however
+Note that the implementation method can be private, in fact that\'s probably
+a good idea to do.  It won\'t work to make this a signal, it can however
 be a virtual.  Note that the method prototype must match the one from the
 interface header file, or you will get a bad assignment warning.  You should
 check the header file generated by orbit-idl and see the epv structure
-for the correct prototypes if you can't figure them out from the idl itself.
+for the correct prototypes if you can\'t figure them out from the idl itself.
 Also note that the first argument is not "self", but the servant and you must
 use bonobo_object_from_servant function to get the actual object pointer.
 
@@ -1008,18 +1008,18 @@ use bonobo_object_from_servant function to get the actual object pointer.
 Gob will need to define some local variables and functions in the generated
 files, so you need to take some precaution not to conflict with these.  The
 general rule of thumb is that all of these start with three underscores.  There
-is one, "parent_class" which doesn't because it's intended for use in your
+is one, "parent_class" which doesn\'t because it\'s intended for use in your
 code.  For virtuals or signals, you cannot use the identifier __parent__
 which is used for the parent of the object.  You should actually never access
 __parent__ either as it not guaranteed that it will stay named this way.
 Data members cannot be named __parent__ nor _priv.  For methods, you cannot
 use the identifiers "init" or "class_init" unless you mean the constructor
-methods.  You shouldn't generally use 3 underscores even in override method
+methods.  You shouldn\'t generally use 3 underscores even in override method
 argument lists and virtual and signal method names as it might confuse the
 PARENT_HANDLER macro.  In fact avoiding all names with three underscores is
 the best policy when working with gob.
 .PP
-There are a couple of defines which you shouldn't be redefining in the code
+There are a couple of defines which you shouldn\'t be redefining in the code
 or other headers.  These are SELF, IS_SELF, SELF_CLASS, SELF_TYPE, ARG, VAR,
 PARENT_HANDLER, GET_NEW, GOB_VERSION_MAJOR, GOB_VERSION_MINOR and
 GOB_VERSION_PATCHLEVEL.
@@ -1067,7 +1067,7 @@ that signal.
 .SH DEALING WITH CIRCULAR HEADERS
 .PP
 Sometimes you may need to use an object of type MyObjectA in the MyObjectB
-class and vice versa.  Obviously you can't include headers for both.  So you
+class and vice versa.  Obviously you can\'t include headers for both.  So you
 need to just declare the typedef in the header of A for B, and the other way
 around as well.  The headers generated include a protecting
 define before it declares the typedef.  This define is the
@@ -1082,11 +1082,11 @@ this:
 
 .fi
 Now instead of including my-object-a.h in the header section of
-my-object-b.gob, just copy the above code there and you're set for using
+my-object-b.gob, just copy the above code there and you\'re set for using
 MyObjectA as a type in the method parameters and public types.
 .PP
 Another way to get out of this problem is if you can use those types only
-in the private members, in which case they won't be in the generated public
+in the private members, in which case they won\'t be in the generated public
 header.
 
 .SH BUILDING WITH MAKE
@@ -1094,7 +1094,7 @@ header.
 If you are using normal makefiles, what you need to do is to add a generic
 rule for .gob files.  So you would include the following in the Makefile
 and then just use the .c and .h files as usual (make sure the space
-before the 'gob2' is a tab, not spaces):
+before the \'gob2\' is a tab, not spaces):
 .nf
 
   %.c %.h %-private.h: %.gob
@@ -1146,7 +1146,7 @@ with a pretty name of the method.
 .SH M4 SUPPORT
 .PP
 It is possible to have your .gob file also preprocessed by m4.  This is useful
-if you have a lot of files and you'd like to have some preprocessor put in
+if you have a lot of files and you\'d like to have some preprocessor put in
 some common features.  All you have to do is add --m4 to the command line
 of gob2 and gob2 will first run your file through m4.  You can print the
 directory that is searched for m4 files by running "gob2 --m4-dir"
@@ -1157,13 +1157,13 @@ options to pass to m4.
 
 .SH BUGS
 .PP
-The lexer does not actually parse the C code, so I'm sure that some corner
+The lexer does not actually parse the C code, so I\'m sure that some corner
 cases or maybe even some not so corner cases of C syntax might confuse gob
-completely.  If you find any, send me the source that makes it go gaga and I'll
-try to make the lexer try to handle it properly, but no promises.
+completely.  If you find any, send me the source that makes it go gaga and
+I\'ll try to make the lexer try to handle it properly, but no promises.
 .PP
 Another thing is that gob ignores preprocessor macros.  Since gob counts
-braces, the following code won't work:
+braces, the following code won\'t work:
 .nf
 
   #ifdef SOME_DEFINE
@@ -1175,7 +1175,7 @@ braces, the following code won't work:
   }
 
 .fi
-To make this work, you'd have to do this:
+To make this work, you\'d have to do this:
 .nf
 
   #ifdef SOME_DEFINE
@@ -1190,8 +1190,8 @@ To make this work, you'd have to do this:
 .fi
 There is no real good way we can handle this without parsing C code, so we
 probably never will.  In the future, I might add #if 0 as a comment but
-that's about as far as I can really take it and even that is problematic.
-Basically, if you use gob, just don't use the C preprocessor too extensively.
+that\'s about as far as I can really take it and even that is problematic.
+Basically, if you use gob, just don\'t use the C preprocessor too extensively.
 And if you use it make sure that you do not cross the boundaries of the C
 code segments.
 .PP
@@ -1200,7 +1200,7 @@ This is not the case for gtk-doc style comments which are supported.
 .PP
 The short name aliases are actually implemented as pointers to functions.  Thus
 if you want to get the pointer of a function using the short name alias you
-can't use the '&'.  Thus:
+can\'t use the \'&\'.  Thus:
 .nf
 
   void (*foo)(Self *);
@@ -1220,3 +1220,5 @@ can't use the '&'.  Thus:
 .SH AUTHOR
 .PP
 George Lebl <jirka@5z.com>
+.PP
+GOB2 Homepage: http://www.jirka.org/gob.html
index 5b77ed2c4ce0a829b941ca8f5ec4fd82294dd7bf..cfaed9dbda9a54e5b42617ff28e75c955adf4115 100755 (executable)
@@ -5,6 +5,8 @@ while (<>) {
        s/&/&amp;/g;
        s/\</&lt;/g;
        s/\>/&gt;/g;
+       s/\\'/'/g;
+       s/\\-/-/g;
        if ($printtable == 1) {
                $printtable = 2;
        } elsif ($printtable == 2) {
@@ -38,6 +40,12 @@ while (<>) {
                        print "</TD></TR></TABLE>\n";
                }
                print "<P>\n";
+       } elsif (/^\.IP/) {
+               if ($printtable == 3) {
+                       $printtable = 0;
+                       print "</TD></TR></TABLE>\n";
+               }
+               print "<P>\n";
        } elsif (/^\.B "(.*)"$/) {
                print "<B>$1</B>\n";
        } elsif (/^\.B (.*)$/) {
@@ -78,7 +86,8 @@ while (<>) {
        } else {
                s/\\fB([^\\]*)\\fR/<B>\1<\/B>/gm;
                s/\\fI([^\\]*)\\fR/<I>\1<\/I>/gm;
-               s/\\(.)/\1>/g;
+               s/&lt;([a-zA-Z0-9.]+\@[a-zA-Z0-9.]+)&gt;/&lt;<a href=\"mailto:\1\">\1<\/a>&gt;/g;
+               s/(http:\/\/[a-zA-Z0-9.\/~]+\.html)/<a href=\"\1\">\1<\/a>/g;
                print;
        }
 }
index 03db21985e0c042545c8dd5423f70cd1d033227b..770dc4351418fcce68d94c83f184cdd80ce3f0bb 100644 (file)
@@ -1,4 +1,4 @@
-# Makefile.in generated automatically by automake 1.4-p5 from Makefile.am
+# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
 
 # Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
 # This Makefile.in is free software; the Free Software Foundation
index 01fd06c35190da2de01a36cbbed37991039ead0c..6e227f185ebb62c4eb1b4444bd37f991a3efd580 100644 (file)
--- a/gob2.spec
+++ b/gob2.spec
@@ -1,4 +1,4 @@
-%define  ver     2.0.1
+%define  ver     2.0.2
 %define  rel     1
 %define  prefix  /usr
 
index c90c857a62869e5311378ca4fb493689ca9e2ba7..1d07aae41d917b10d23453c2748b4bbae3e35406 100644 (file)
@@ -1,5 +1,5 @@
 %define  ver     @VERSION@
-%define  rel     SNAP
+%define  rel     1
 %define  prefix  /usr
 
 Summary: GOB2, The GObject Builder
diff --git a/missing b/missing
index d46f79f64da74e24a68d2ec91f952f695afc0e8c..22e101ab1b08c028dd6774e833f46e9ec225977d 100755 (executable)
--- a/missing
+++ b/missing
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Common stub for a few missing GNU programs while installing.
-# Copyright (C) 1996, 1997, 2001 Free Software Foundation, Inc.
+# Copyright (C) 1996, 1997, 2001, 2002 Free Software Foundation, Inc.
 # Franc,ois Pinard <pinard@iro.umontreal.ca>, 1996.
 
 # This program is free software; you can redistribute it and/or modify
@@ -66,7 +66,7 @@ Supported PROGRAM values:
     exit 1
     ;;
 
-  aclocal)
+  aclocal*)
     echo 1>&2 "\
 WARNING: \`$1' is missing on your system.  You should only need it if
          you modified \`acinclude.m4' or \`$configure_ac'.  You might want
@@ -103,7 +103,7 @@ WARNING: \`$1' is missing on your system.  You should only need it if
     touch $touch_files
     ;;
 
-  automake)
+  automake*)
     echo 1>&2 "\
 WARNING: \`$1' is missing on your system.  You should only need it if
          you modified \`Makefile.am', \`acinclude.m4' or \`$configure_ac'.
index 147104d2a0dcdf6a8eb2941dc9d5ad524f84416f..bf5e7ea7409c458f8ac8d275fb38a57b47c37861 100644 (file)
@@ -1,4 +1,4 @@
-# Makefile.in generated automatically by automake 1.4-p5 from Makefile.am
+# Makefile.in generated automatically by automake 1.4-p6 from Makefile.am
 
 # Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc.
 # This Makefile.in is free software; the Free Software Foundation
@@ -369,7 +369,7 @@ distclean-generic:
        -rm -f config.cache config.log stamp-h stamp-h[0-9]*
 
 maintainer-clean-generic:
-       -test -z "lexerlparsehparsec$(BUILT_SOURCES)" || rm -f lexerl parseh parsec $(BUILT_SOURCES)
+       -test -z "lexercparsehparsec$(BUILT_SOURCES)" || rm -f lexerc parseh parsec $(BUILT_SOURCES)
 mostlyclean-am:  mostlyclean-binPROGRAMS mostlyclean-noinstPROGRAMS \
                mostlyclean-compile mostlyclean-tags \
                mostlyclean-generic
index fce8cb00774037ef6ae82508204a0648832462d0..7ece9fb6481228e7757add93c2ed5cced65667d0 100644 (file)
@@ -82,8 +82,8 @@ static gboolean made_aliases = FALSE;  /* if we made any shorthand aliases
 static gboolean special_array[SPECIAL_LAST] = {0};
 static gboolean any_special = FALSE;
 
-static gboolean need_shutdown = FALSE;
-static Method * shutdown_handler = NULL;
+static gboolean need_dispose = FALSE;
+static Method * dispose_handler = NULL;
 
 static gboolean need_finalize = FALSE;
 static Method * finalize_handler = NULL;
@@ -636,30 +636,30 @@ make_inits(Class *cl)
 }
 
 static void
-find_shutdown(Class *cl)
+find_dispose(Class *cl)
 {
        GList *li;
 
-       shutdown_handler = NULL;
+       dispose_handler = NULL;
        for(li=cl->nodes;li;li=g_list_next(li)) {
                Node *n = li->data;
                if(n->type == METHOD_NODE) {
                        Method *m = (Method *)n;
                        if(m->method == OVERRIDE_METHOD &&
-                          strcmp(m->id, "shutdown")==0) {
+                          strcmp(m->id, "dispose")==0) {
                                if(strcmp(m->otype, "G:Object") != 0) {
                                        error_print(GOB_ERROR, m->line_no,
-                                                   "shutdown method override "
+                                                   "dispose method override "
                                                    "of class other then "
                                                    "G:Object");
                                }
                                if(g_list_length(m->args) != 1) {
                                        error_print(GOB_ERROR, m->line_no,
-                                                   "shutdown method override "
+                                                   "dispose method override "
                                                    "with more then one "
                                                    "parameter");
                                }
-                               shutdown_handler = m;
+                               dispose_handler = m;
                                break;
                        }
                }
@@ -1371,11 +1371,11 @@ set_def_handlers(Class *c, const char *oname)
                        s = replace_sep (m->otype, '_');
                        g_strdown (s);
 
-                       if (need_shutdown &&
-                           shutdown_handler != NULL &&
-                           strcmp (m->id, "shutdown") == 0)
-                               out_printf (out, "\tg_object_class->shutdown "
-                                           "= ___shutdown;\n");
+                       if (need_dispose &&
+                           dispose_handler != NULL &&
+                           strcmp (m->id, "dispose") == 0)
+                               out_printf (out, "\tg_object_class->dispose "
+                                           "= ___dispose;\n");
                        else if (need_finalize &&
                                finalize_handler &&
                                strcmp(m->id, "finalize") == 0)
@@ -1995,13 +1995,13 @@ print_destructor (Variable *v)
 }
 
 static void
-add_shutdown (Class *c)
+add_dispose (Class *c)
 {
        out_printf(out, "\nstatic void\n"
-                  "___shutdown (GObject *obj_self)\n"
+                  "___dispose (GObject *obj_self)\n"
                   "{\n");
        out_printf(out,
-                  "#define __GOB_FUNCTION__ \"%s::shutdown\"\n",
+                  "#define __GOB_FUNCTION__ \"%s::dispose\"\n",
                   c->otype);
 
        if (unreftors > 0) {
@@ -2009,18 +2009,18 @@ add_shutdown (Class *c)
                            typebase, macrobase);
        }
 
-       if (shutdown_handler != NULL) {
+       if (dispose_handler != NULL) {
                /* so we get possible bad argument warning */
-               if (shutdown_handler->line_no > 0)
-                       out_addline_infile (out, shutdown_handler->line_no);
-               out_printf (out, "\t___%x_%s_shutdown(obj_self);\n",
-                           (guint)shutdown_handler->unique_id, funcbase);
-               if (shutdown_handler->line_no > 0)
+               if (dispose_handler->line_no > 0)
+                       out_addline_infile (out, dispose_handler->line_no);
+               out_printf (out, "\t___%x_%s_dispose(obj_self);\n",
+                           (guint)dispose_handler->unique_id, funcbase);
+               if (dispose_handler->line_no > 0)
                        out_addline_outfile (out);
        } else {
                out_printf (out,
-                           "\tif (G_OBJECT_CLASS (parent_class)->shutdown) \\\n"
-                           "\t\t(* G_OBJECT_CLASS (parent_class)->shutdown) (obj_self);\n");
+                           "\tif (G_OBJECT_CLASS (parent_class)->dispose) \\\n"
+                           "\t\t(* G_OBJECT_CLASS (parent_class)->dispose) (obj_self);\n");
        }
 
        if (unreftors > 0) {
@@ -2194,7 +2194,7 @@ add_inits(Class *c)
                        if (set_properties > 0 ||
                            get_properties > 0 ||
                            signals > 0 ||
-                           need_shutdown ||
+                           need_dispose ||
                            need_finalize) {
                                out_printf(out,
                                           "\tGObjectClass *"
@@ -2236,9 +2236,9 @@ add_inits(Class *c)
 
                        /* if there are no handlers for these things, we
                         * need to set them up here */
-                       if(need_shutdown && !shutdown_handler)
-                               out_printf(out, "\tg_object_class->shutdown "
-                                          "= ___shutdown;\n");
+                       if(need_dispose && !dispose_handler)
+                               out_printf(out, "\tg_object_class->dispose "
+                                          "= ___dispose;\n");
                        if(need_finalize && !finalize_handler)
                                out_printf(out, "\tg_object_class->finalize = "
                                           "___finalize;\n");
@@ -3354,8 +3354,8 @@ print_class_block(Class *c)
                    no_gnu ? "" : " G_GNUC_UNUSED",
                    typebase, typebase, typebase, funcbase);
 
-       if (need_shutdown)
-               add_shutdown (c);
+       if (need_dispose)
+               add_dispose (c);
 
        if (need_finalize)
                add_finalize (c);
@@ -4061,8 +4061,8 @@ main(int argc, char *argv[])
        make_bases ();
        make_inits ((Class *)class);
        if(unreftors > 0) {
-               need_shutdown = TRUE;
-               find_shutdown ((Class *)class);
+               need_dispose = TRUE;
+               find_dispose ((Class *)class);
        }
        if (destructors > 0 ||
            privates > 0) {
index 948309fb36641ec9fda1d9e7b40aec40ae397aa0..85d2b225954d59af96a2b3de1a098a0c20ce3eb6 100644 (file)
@@ -1,59 +1,58 @@
-
-/*  A Bison parser, made from parse.y
-    by GNU Bison version 1.28  */
+/* A Bison parser, made from parse.y
+   by GNU bison 1.35.  */
 
 #define YYBISON 1  /* Identify Bison output.  */
 
-#define        CLASS   257
-#define        FROM    258
-#define        CONST   259
-#define        VOID    260
-#define        STRUCT  261
-#define        UNION   262
-#define        ENUM    263
-#define        THREEDOTS       264
-#define        SIGNED  265
-#define        UNSIGNED        266
-#define        LONG    267
-#define        SHORT   268
-#define        INT     269
-#define        FLOAT   270
-#define        DOUBLE  271
-#define        CHAR    272
-#define        TOKEN   273
-#define        NUMBER  274
-#define        TYPETOKEN       275
-#define        ARRAY_DIM       276
-#define        SINGLE_CHAR     277
-#define        CCODE   278
-#define        HTCODE  279
-#define        PHCODE  280
-#define        HCODE   281
-#define        ACODE   282
-#define        ATCODE  283
-#define        STRING  284
-#define        PUBLIC  285
-#define        PRIVATE 286
-#define        PROTECTED       287
-#define        CLASSWIDE       288
-#define        PROPERTY        289
-#define        ARGUMENT        290
-#define        VIRTUAL 291
-#define        SIGNAL  292
-#define        OVERRIDE        293
-#define        NICK    294
-#define        BLURB   295
-#define        MAXIMUM 296
-#define        MINIMUM 297
-#define        DEFAULT_VALUE   298
-#define        ERROR   299
-#define        FLAGS   300
-#define        TYPE    301
-#define        FLAGS_TYPE      302
-#define        ENUM_TYPE       303
-#define        PARAM_TYPE      304
-#define        BOXED_TYPE      305
-#define        OBJECT_TYPE     306
+# define       CLASS   257
+# define       FROM    258
+# define       CONST   259
+# define       VOID    260
+# define       STRUCT  261
+# define       UNION   262
+# define       ENUM    263
+# define       THREEDOTS       264
+# define       SIGNED  265
+# define       UNSIGNED        266
+# define       LONG    267
+# define       SHORT   268
+# define       INT     269
+# define       FLOAT   270
+# define       DOUBLE  271
+# define       CHAR    272
+# define       TOKEN   273
+# define       NUMBER  274
+# define       TYPETOKEN       275
+# define       ARRAY_DIM       276
+# define       SINGLE_CHAR     277
+# define       CCODE   278
+# define       HTCODE  279
+# define       PHCODE  280
+# define       HCODE   281
+# define       ACODE   282
+# define       ATCODE  283
+# define       STRING  284
+# define       PUBLIC  285
+# define       PRIVATE 286
+# define       PROTECTED       287
+# define       CLASSWIDE       288
+# define       PROPERTY        289
+# define       ARGUMENT        290
+# define       VIRTUAL 291
+# define       SIGNAL  292
+# define       OVERRIDE        293
+# define       NICK    294
+# define       BLURB   295
+# define       MAXIMUM 296
+# define       MINIMUM 297
+# define       DEFAULT_VALUE   298
+# define       ERROR   299
+# define       FLAGS   300
+# define       TYPE    301
+# define       FLAGS_TYPE      302
+# define       ENUM_TYPE       303
+# define       PARAM_TYPE      304
+# define       BOXED_TYPE      305
+# define       OBJECT_TYPE     306
 
 #line 22 "parse.y"
 
@@ -572,7 +571,7 @@ property_link_and_export (Node *node)
                                              root, prop->name,
                                              prop->extra_gtktype,
                                              root, prop->name);
-                       get = g_strdup_printf("g_value_set_object (VAL, %s->%s);",
+                       get = g_strdup_printf("g_value_set_boxed (VAL, %s->%s);",
                                              root, prop->name);
                } else {
                        char *set_func;
@@ -650,23 +649,19 @@ ensure_property (void)
 
 
 #line 616 "parse.y"
+#ifndef YYSTYPE
 typedef union {
        char *id;
        GString *cbuf;
        GList *list;
        int line;
        int sigtype;
-} YYSTYPE;
-#ifndef YYDEBUG
-#define YYDEBUG 1
-#endif
-
-#include <stdio.h>
-
-#ifndef __cplusplus
-#ifndef __STDC__
-#define const
+} yystype;
+# define YYSTYPE yystype
+# define YYSTYPE_IS_TRIVIAL 1
 #endif
+#ifndef YYDEBUG
+# define YYDEBUG 1
 #endif
 
 
@@ -675,470 +670,497 @@ typedef union {
 #define        YYFLAG          -32768
 #define        YYNTBASE        66
 
+/* YYTRANSLATE(YYLEX) -- Bison token number corresponding to YYLEX. */
 #define YYTRANSLATE(x) ((unsigned)(x) <= 306 ? yytranslate[x] : 118)
 
-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,    64,     2,     2,     2,     2,     2,     2,    55,
-    56,    61,     2,    59,    65,     2,     2,     2,     2,     2,
-     2,     2,     2,     2,     2,     2,     2,     2,    57,    63,
-    58,    62,     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,    53,    60,    54,     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,    18,    19,    20,    21,    22,    23,    24,    25,    26,
-    27,    28,    29,    30,    31,    32,    33,    34,    35,    36,
-    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
-    47,    48,    49,    50,    51,    52
+/* 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,    64,     2,     2,     2,     2,     2,     2,
+      55,    56,    61,     2,    59,    65,     2,     2,     2,     2,
+       2,     2,     2,     2,     2,     2,     2,     2,     2,    57,
+      63,    58,    62,     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,    53,    60,    54,     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,    18,    19,    20,    21,    22,    23,    24,    25,
+      26,    27,    28,    29,    30,    31,    32,    33,    34,    35,
+      36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
+      46,    47,    48,    49,    50,    51,    52
 };
 
-#if YYDEBUG != 0
-static const short yyprhs[] = {     0,
-     0,     4,     7,    10,    12,    14,    16,    18,    20,    22,
-    24,    27,    30,    33,    36,    38,    40,    42,    44,    49,
-    53,    59,    60,    66,    72,    78,    81,    83,    85,    88,
-    92,    94,    96,    98,   100,   102,   104,   106,   108,   111,
-   115,   118,   122,   125,   128,   130,   132,   133,   139,   146,
-   159,   169,   176,   180,   181,   193,   202,   208,   212,   213,
-   217,   219,   221,   226,   228,   230,   234,   238,   242,   246,
-   250,   254,   258,   262,   266,   270,   274,   278,   282,   286,
-   290,   294,   298,   300,   306,   308,   312,   313,   317,   319,
-   322,   324,   326,   328,   331,   334,   337,   341,   345,   348,
-   351,   354,   356,   359,   361,   364,   366,   368,   370,   372,
-   374,   376,   378,   380,   382,   384,   386,   388,   390,   393,
-   396,   400,   403,   405,   409,   413,   416,   418,   423,   427,
-   429,   432,   434,   445,   457,   467,   477,   486,   498,   507,
-   513,   516,   521,   522,   524,   527,   529,   531,   534,   537,
-   541,   546,   551,   553,   557,   559,   563,   565,   568,   572,
-   579,   587,   590,   592,   594,   597,   600,   604,   608,   612,
-   616,   624,   633,   637,   639,   643,   645,   653,   662,   666,
-   668,   676,   685,   689,   691,   693,   696,   698
+#if YYDEBUG
+static const short yyprhs[] =
+{
+       0,     0,     4,     7,    10,    12,    14,    16,    18,    20,
+      22,    24,    27,    30,    33,    36,    38,    40,    42,    44,
+      49,    53,    59,    60,    66,    72,    78,    81,    83,    85,
+      88,    92,    94,    96,    98,   100,   102,   104,   106,   108,
+     111,   115,   118,   122,   125,   128,   130,   132,   133,   139,
+     146,   159,   169,   176,   180,   181,   193,   202,   208,   212,
+     213,   217,   219,   221,   226,   228,   230,   234,   238,   242,
+     246,   250,   254,   258,   262,   266,   270,   274,   278,   282,
+     286,   290,   294,   298,   300,   306,   308,   312,   313,   317,
+     319,   322,   324,   326,   328,   331,   334,   337,   341,   345,
+     348,   351,   354,   356,   359,   361,   364,   366,   368,   370,
+     372,   374,   376,   378,   380,   382,   384,   386,   388,   390,
+     393,   396,   400,   403,   405,   409,   413,   416,   418,   423,
+     427,   429,   432,   434,   445,   457,   467,   477,   486,   498,
+     507,   513,   516,   521,   522,   524,   527,   529,   531,   534,
+     537,   541,   546,   551,   553,   557,   559,   563,   565,   568,
+     572,   579,   587,   590,   592,   594,   597,   600,   604,   608,
+     612,   616,   624,   633,   637,   639,   643,   645,   653,   662,
+     666,   668,   676,   685,   689,   691,   693,   696,   698
 };
-
-static const short yyrhs[] = {    68,
-    69,    68,     0,    69,    68,     0,    68,    69,     0,    69,
-     0,    24,     0,    27,     0,    25,     0,    26,     0,    28,
-     0,    29,     0,    68,    67,     0,    68,   110,     0,    68,
-   113,     0,    68,   115,     0,    67,     0,   110,     0,   113,
-     0,   115,     0,    70,    53,    72,    54,     0,    70,    53,
-    54,     0,     3,    21,     4,    21,    71,     0,     0,    55,
-    19,    19,    56,    71,     0,    55,    19,    21,    56,    71,
-     0,    55,    19,    20,    56,    71,     0,    72,    73,     0,
-    73,     0,   101,     0,    19,   101,     0,    19,    21,   101,
-     0,    78,     0,    79,     0,    81,     0,    57,     0,    31,
-     0,    32,     0,    33,     0,    34,     0,    19,    19,     0,
-    19,    53,    24,     0,    58,   117,     0,    58,    53,    24,
-     0,    75,    76,     0,    76,    75,     0,    76,     0,    75,
-     0,     0,    74,    90,    19,    77,    57,     0,    74,    90,
-    19,    22,    77,    57,     0,    36,    88,    87,    19,    80,
-    19,    53,    24,    19,    53,    24,    57,     0,    36,    88,
-    87,    19,    80,    19,    53,    24,    57,     0,    36,    88,
-    87,    19,    80,    19,     0,    55,    19,    56,     0,     0,
-    35,    19,    19,    82,    19,    53,    24,    19,    53,    24,
-    57,     0,    35,    19,    19,    82,    19,    53,    24,    57,
-     0,    35,    19,    19,    82,    57,     0,    55,    83,    56,
-     0,     0,    83,    59,    86,     0,    86,     0,    30,     0,
-    19,    55,    30,    56,     0,   117,     0,    84,     0,    40,
-    58,    84,     0,    41,    58,    84,     0,    42,    58,   117,
-     0,    43,    58,   117,     0,    44,    58,    85,     0,    46,
-    58,    89,     0,    47,    58,    90,     0,    48,    58,    21,
-     0,    48,    58,    19,     0,    49,    58,    21,     0,    49,
-    58,    19,     0,    50,    58,    21,     0,    50,    58,    19,
-     0,    51,    58,    21,     0,    51,    58,    19,     0,    52,
-    58,    21,     0,    52,    58,    19,     0,    19,     0,    19,
-    55,    19,    90,    56,     0,    19,     0,    55,    89,    56,
-     0,     0,    19,    60,    89,     0,    19,     0,    91,    95,
-     0,    91,     0,    92,     0,    19,     0,     5,    19,     0,
-    19,     5,     0,    94,    19,     0,     5,    94,    19,     0,
-    94,    19,     5,     0,    93,    92,     0,    21,    92,     0,
-     5,    92,     0,    21,     0,    21,     5,     0,    93,     0,
-    93,     5,     0,     6,     0,    18,     0,    14,     0,    15,
-     0,    13,     0,    16,     0,    17,     0,    11,     0,    12,
-     0,     7,     0,     8,     0,     9,     0,    61,     0,    61,
-     5,     0,    61,    95,     0,    61,     5,    95,     0,    19,
-    98,     0,    98,     0,    74,    19,    98,     0,    19,    74,
-    98,     0,    74,    98,     0,    96,     0,    19,    55,    99,
-    56,     0,    99,    59,    19,     0,    19,     0,    53,    24,
-     0,    57,     0,    38,    88,    97,    90,    19,    55,   104,
-    56,   102,   100,     0,    74,    38,    88,    96,    90,    19,
-    55,   104,    56,   102,   100,     0,    37,    74,    90,    19,
-    55,   104,    56,   102,   100,     0,    74,    37,    90,    19,
-    55,   104,    56,   102,   100,     0,    37,    90,    19,    55,
-   104,    56,   102,   100,     0,    39,    55,    21,    56,    90,
-    19,    55,   104,    56,   102,   100,     0,    74,    90,    19,
-    55,   104,    56,   102,   100,     0,    19,    55,    19,    56,
-   100,     0,    19,   103,     0,    19,   103,    19,   103,     0,
-     0,   117,     0,    53,    24,     0,     6,     0,    19,     0,
-    19,     5,     0,     5,    19,     0,    19,    59,   105,     0,
-    19,     5,    59,   105,     0,     5,    19,    59,   105,     0,
-   105,     0,   106,    59,    10,     0,   106,     0,   106,    59,
-   107,     0,   107,     0,    90,    19,     0,    90,    19,    22,
-     0,    90,    19,    55,    19,   108,    56,     0,    90,    19,
-    22,    55,    19,   108,    56,     0,   108,   109,     0,   109,
-     0,    19,     0,    62,   117,     0,    63,   117,     0,    62,
-    58,   117,     0,    63,    58,   117,     0,    58,    58,   117,
-     0,    64,    58,   117,     0,     9,    19,    53,   111,    54,
-    21,    57,     0,     9,    19,    53,   111,    59,    54,    21,
-    57,     0,   111,    59,   112,     0,   112,     0,    19,    58,
-   117,     0,    19,     0,    46,    19,    53,   114,    54,    21,
-    57,     0,    46,    19,    53,   114,    59,    54,    21,    57,
-     0,   114,    59,    19,     0,    19,     0,    45,    19,    53,
-   116,    54,    21,    57,     0,    45,    19,    53,   116,    59,
-    54,    21,    57,     0,   116,    59,    19,     0,    19,     0,
-    20,     0,    65,    20,     0,    23,     0,    19,     0
+static const short yyrhs[] =
+{
+      68,    69,    68,     0,    69,    68,     0,    68,    69,     0,
+      69,     0,    24,     0,    27,     0,    25,     0,    26,     0,
+      28,     0,    29,     0,    68,    67,     0,    68,   110,     0,
+      68,   113,     0,    68,   115,     0,    67,     0,   110,     0,
+     113,     0,   115,     0,    70,    53,    72,    54,     0,    70,
+      53,    54,     0,     3,    21,     4,    21,    71,     0,     0,
+      55,    19,    19,    56,    71,     0,    55,    19,    21,    56,
+      71,     0,    55,    19,    20,    56,    71,     0,    72,    73,
+       0,    73,     0,   101,     0,    19,   101,     0,    19,    21,
+     101,     0,    78,     0,    79,     0,    81,     0,    57,     0,
+      31,     0,    32,     0,    33,     0,    34,     0,    19,    19,
+       0,    19,    53,    24,     0,    58,   117,     0,    58,    53,
+      24,     0,    75,    76,     0,    76,    75,     0,    76,     0,
+      75,     0,     0,    74,    90,    19,    77,    57,     0,    74,
+      90,    19,    22,    77,    57,     0,    36,    88,    87,    19,
+      80,    19,    53,    24,    19,    53,    24,    57,     0,    36,
+      88,    87,    19,    80,    19,    53,    24,    57,     0,    36,
+      88,    87,    19,    80,    19,     0,    55,    19,    56,     0,
+       0,    35,    19,    19,    82,    19,    53,    24,    19,    53,
+      24,    57,     0,    35,    19,    19,    82,    19,    53,    24,
+      57,     0,    35,    19,    19,    82,    57,     0,    55,    83,
+      56,     0,     0,    83,    59,    86,     0,    86,     0,    30,
+       0,    19,    55,    30,    56,     0,   117,     0,    84,     0,
+      40,    58,    84,     0,    41,    58,    84,     0,    42,    58,
+     117,     0,    43,    58,   117,     0,    44,    58,    85,     0,
+      46,    58,    89,     0,    47,    58,    90,     0,    48,    58,
+      21,     0,    48,    58,    19,     0,    49,    58,    21,     0,
+      49,    58,    19,     0,    50,    58,    21,     0,    50,    58,
+      19,     0,    51,    58,    21,     0,    51,    58,    19,     0,
+      52,    58,    21,     0,    52,    58,    19,     0,    19,     0,
+      19,    55,    19,    90,    56,     0,    19,     0,    55,    89,
+      56,     0,     0,    19,    60,    89,     0,    19,     0,    91,
+      95,     0,    91,     0,    92,     0,    19,     0,     5,    19,
+       0,    19,     5,     0,    94,    19,     0,     5,    94,    19,
+       0,    94,    19,     5,     0,    93,    92,     0,    21,    92,
+       0,     5,    92,     0,    21,     0,    21,     5,     0,    93,
+       0,    93,     5,     0,     6,     0,    18,     0,    14,     0,
+      15,     0,    13,     0,    16,     0,    17,     0,    11,     0,
+      12,     0,     7,     0,     8,     0,     9,     0,    61,     0,
+      61,     5,     0,    61,    95,     0,    61,     5,    95,     0,
+      19,    98,     0,    98,     0,    74,    19,    98,     0,    19,
+      74,    98,     0,    74,    98,     0,    96,     0,    19,    55,
+      99,    56,     0,    99,    59,    19,     0,    19,     0,    53,
+      24,     0,    57,     0,    38,    88,    97,    90,    19,    55,
+     104,    56,   102,   100,     0,    74,    38,    88,    96,    90,
+      19,    55,   104,    56,   102,   100,     0,    37,    74,    90,
+      19,    55,   104,    56,   102,   100,     0,    74,    37,    90,
+      19,    55,   104,    56,   102,   100,     0,    37,    90,    19,
+      55,   104,    56,   102,   100,     0,    39,    55,    21,    56,
+      90,    19,    55,   104,    56,   102,   100,     0,    74,    90,
+      19,    55,   104,    56,   102,   100,     0,    19,    55,    19,
+      56,   100,     0,    19,   103,     0,    19,   103,    19,   103,
+       0,     0,   117,     0,    53,    24,     0,     6,     0,    19,
+       0,    19,     5,     0,     5,    19,     0,    19,    59,   105,
+       0,    19,     5,    59,   105,     0,     5,    19,    59,   105,
+       0,   105,     0,   106,    59,    10,     0,   106,     0,   106,
+      59,   107,     0,   107,     0,    90,    19,     0,    90,    19,
+      22,     0,    90,    19,    55,    19,   108,    56,     0,    90,
+      19,    22,    55,    19,   108,    56,     0,   108,   109,     0,
+     109,     0,    19,     0,    62,   117,     0,    63,   117,     0,
+      62,    58,   117,     0,    63,    58,   117,     0,    58,    58,
+     117,     0,    64,    58,   117,     0,     9,    19,    53,   111,
+      54,    21,    57,     0,     9,    19,    53,   111,    59,    54,
+      21,    57,     0,   111,    59,   112,     0,   112,     0,    19,
+      58,   117,     0,    19,     0,    46,    19,    53,   114,    54,
+      21,    57,     0,    46,    19,    53,   114,    59,    54,    21,
+      57,     0,   114,    59,    19,     0,    19,     0,    45,    19,
+      53,   116,    54,    21,    57,     0,    45,    19,    53,   116,
+      59,    54,    21,    57,     0,   116,    59,    19,     0,    19,
+       0,    20,     0,    65,    20,     0,    23,     0,    19,     0
 };
 
 #endif
 
-#if YYDEBUG != 0
-static const short yyrline[] = { 0,
-   637,   638,   639,   640,   643,   652,   661,   670,   679,   688,
-   699,   700,   701,   702,   703,   704,   705,   706,   709,   714,
-   721,   735,   736,   748,   757,   771,   772,   775,   776,   785,
-   797,   798,   799,   800,   803,   804,   805,   806,   809,   829,
-   853,   857,   865,   866,   867,   868,   869,   875,   878,   883,
-   951,  1005,  1093,  1101,  1106,  1154,  1190,  1206,  1207,  1210,
-  1211,  1214,  1215,  1227,  1228,  1231,  1237,  1243,  1249,  1255,
-  1261,  1267,  1274,  1280,  1286,  1292,  1298,  1304,  1310,  1316,
-  1322,  1328,  1334,  1354,  1363,  1369,  1370,  1373,  1376,  1382,
-  1389,  1398,  1401,  1404,  1408,  1412,  1416,  1421,  1429,  1433,
-  1438,  1442,  1445,  1449,  1452,  1457,  1458,  1459,  1460,  1461,
-  1462,  1463,  1464,  1465,  1468,  1469,  1470,  1473,  1474,  1475,
-  1479,  1486,  1498,  1504,  1516,  1528,  1531,  1537,  1542,  1545,
-  1550,  1551,  1555,  1571,  1587,  1603,  1619,  1630,  1636,  1646,
-  1669,  1680,  1699,  1705,  1706,  1712,  1713,  1724,  1735,  1746,
-  1756,  1766,  1776,  1779,  1780,  1783,  1784,  1787,  1790,  1793,
-  1801,  1811,  1812,  1815,  1832,  1839,  1846,  1853,  1860,  1867,
-  1876,  1885,  1896,  1897,  1900,  1920,  1930,  1939,  1950,  1953,
-  1958,  1967,  1978,  1981,  1987,  1988,  1992,  1993
+#if YYDEBUG
+/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
+static const short yyrline[] =
+{
+       0,   637,   638,   639,   640,   643,   652,   661,   670,   679,
+     688,   699,   700,   701,   702,   703,   704,   705,   706,   709,
+     714,   721,   735,   736,   748,   757,   771,   772,   775,   776,
+     785,   797,   798,   799,   800,   803,   804,   805,   806,   809,
+     829,   853,   857,   865,   866,   867,   868,   869,   875,   878,
+     883,   951,  1005,  1093,  1101,  1106,  1154,  1190,  1206,  1207,
+    1210,  1211,  1214,  1215,  1227,  1228,  1231,  1237,  1243,  1249,
+    1255,  1261,  1267,  1274,  1280,  1286,  1292,  1298,  1304,  1310,
+    1316,  1322,  1328,  1334,  1354,  1363,  1369,  1370,  1373,  1376,
+    1382,  1389,  1398,  1401,  1404,  1408,  1412,  1416,  1421,  1429,
+    1433,  1438,  1442,  1445,  1449,  1452,  1457,  1458,  1459,  1460,
+    1461,  1462,  1463,  1464,  1465,  1468,  1469,  1470,  1473,  1474,
+    1475,  1479,  1486,  1498,  1504,  1516,  1528,  1531,  1537,  1542,
+    1545,  1550,  1551,  1555,  1571,  1587,  1603,  1619,  1630,  1636,
+    1646,  1669,  1680,  1699,  1705,  1706,  1712,  1713,  1724,  1735,
+    1746,  1756,  1766,  1776,  1779,  1780,  1783,  1784,  1787,  1790,
+    1793,  1801,  1811,  1812,  1815,  1832,  1839,  1846,  1853,  1860,
+    1867,  1876,  1885,  1896,  1897,  1900,  1920,  1930,  1939,  1950,
+    1953,  1958,  1967,  1978,  1981,  1987,  1988,  1992,  1993
 };
 #endif
 
 
-#if YYDEBUG != 0 || defined (YYERROR_VERBOSE)
-
-static const char * const yytname[] = {   "$","error","$undefined.","CLASS",
-"FROM","CONST","VOID","STRUCT","UNION","ENUM","THREEDOTS","SIGNED","UNSIGNED",
-"LONG","SHORT","INT","FLOAT","DOUBLE","CHAR","TOKEN","NUMBER","TYPETOKEN","ARRAY_DIM",
-"SINGLE_CHAR","CCODE","HTCODE","PHCODE","HCODE","ACODE","ATCODE","STRING","PUBLIC",
-"PRIVATE","PROTECTED","CLASSWIDE","PROPERTY","ARGUMENT","VIRTUAL","SIGNAL","OVERRIDE",
-"NICK","BLURB","MAXIMUM","MINIMUM","DEFAULT_VALUE","ERROR","FLAGS","TYPE","FLAGS_TYPE",
-"ENUM_TYPE","PARAM_TYPE","BOXED_TYPE","OBJECT_TYPE","'{'","'}'","'('","')'",
-"';'","'='","','","'|'","'*'","'>'","'<'","'!'","'-'","prog","ccode","ccodes",
-"class","classdec","classflags","classcode","thing","scope","destructor","initializer",
-"varoptions","variable","argument","export","property","param_spec","param_spec_list",
-"string","anyval","param_spec_value","argtype","flags","flaglist","type","specifier_list",
-"spec_list","specifier","strunionenum","pointer","simplesigtype","fullsigtype",
-"sigtype","tokenlist","codenocode","method","returnvals","retcode","funcargs",
-"arglist","arglist1","arg","checklist","check","enumcode","enumvals","enumval",
-"flagcode","flagvals","errorcode","errorvals","numtok", NULL
+#if (YYDEBUG) || defined YYERROR_VERBOSE
+
+/* YYTNAME[TOKEN_NUM] -- String name of the token TOKEN_NUM. */
+static const char *const yytname[] =
+{
+  "$", "error", "$undefined.", "CLASS", "FROM", "CONST", "VOID", "STRUCT", 
+  "UNION", "ENUM", "THREEDOTS", "SIGNED", "UNSIGNED", "LONG", "SHORT", 
+  "INT", "FLOAT", "DOUBLE", "CHAR", "TOKEN", "NUMBER", "TYPETOKEN", 
+  "ARRAY_DIM", "SINGLE_CHAR", "CCODE", "HTCODE", "PHCODE", "HCODE", 
+  "ACODE", "ATCODE", "STRING", "PUBLIC", "PRIVATE", "PROTECTED", 
+  "CLASSWIDE", "PROPERTY", "ARGUMENT", "VIRTUAL", "SIGNAL", "OVERRIDE", 
+  "NICK", "BLURB", "MAXIMUM", "MINIMUM", "DEFAULT_VALUE", "ERROR", 
+  "FLAGS", "TYPE", "FLAGS_TYPE", "ENUM_TYPE", "PARAM_TYPE", "BOXED_TYPE", 
+  "OBJECT_TYPE", "'{'", "'}'", "'('", "')'", "';'", "'='", "','", "'|'", 
+  "'*'", "'>'", "'<'", "'!'", "'-'", "prog", "ccode", "ccodes", "class", 
+  "classdec", "classflags", "classcode", "thing", "scope", "destructor", 
+  "initializer", "varoptions", "variable", "argument", "export", 
+  "property", "param_spec", "param_spec_list", "string", "anyval", 
+  "param_spec_value", "argtype", "flags", "flaglist", "type", 
+  "specifier_list", "spec_list", "specifier", "strunionenum", "pointer", 
+  "simplesigtype", "fullsigtype", "sigtype", "tokenlist", "codenocode", 
+  "method", "returnvals", "retcode", "funcargs", "arglist", "arglist1", 
+  "arg", "checklist", "check", "enumcode", "enumvals", "enumval", 
+  "flagcode", "flagvals", "errorcode", "errorvals", "numtok", 0
 };
 #endif
 
-static const short yyr1[] = {     0,
-    66,    66,    66,    66,    67,    67,    67,    67,    67,    67,
-    68,    68,    68,    68,    68,    68,    68,    68,    69,    69,
-    70,    71,    71,    71,    71,    72,    72,    73,    73,    73,
-    73,    73,    73,    73,    74,    74,    74,    74,    75,    75,
-    76,    76,    77,    77,    77,    77,    77,    78,    78,    79,
-    79,    79,    80,    80,    81,    81,    81,    82,    82,    83,
-    83,    84,    84,    85,    85,    86,    86,    86,    86,    86,
-    86,    86,    86,    86,    86,    86,    86,    86,    86,    86,
-    86,    86,    86,    87,    87,    88,    88,    89,    89,    90,
-    90,    91,    91,    91,    91,    91,    91,    91,    92,    92,
-    92,    92,    92,    92,    92,    93,    93,    93,    93,    93,
-    93,    93,    93,    93,    94,    94,    94,    95,    95,    95,
-    95,    96,    96,    97,    97,    97,    97,    98,    99,    99,
-   100,   100,   101,   101,   101,   101,   101,   101,   101,   101,
-   102,   102,   102,   103,   103,   104,   104,   104,   104,   104,
-   104,   104,   104,   105,   105,   106,   106,   107,   107,   107,
-   107,   108,   108,   109,   109,   109,   109,   109,   109,   109,
-   110,   110,   111,   111,   112,   112,   113,   113,   114,   114,
-   115,   115,   116,   116,   117,   117,   117,   117
+/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
+static const short yyr1[] =
+{
+       0,    66,    66,    66,    66,    67,    67,    67,    67,    67,
+      67,    68,    68,    68,    68,    68,    68,    68,    68,    69,
+      69,    70,    71,    71,    71,    71,    72,    72,    73,    73,
+      73,    73,    73,    73,    73,    74,    74,    74,    74,    75,
+      75,    76,    76,    77,    77,    77,    77,    77,    78,    78,
+      79,    79,    79,    80,    80,    81,    81,    81,    82,    82,
+      83,    83,    84,    84,    85,    85,    86,    86,    86,    86,
+      86,    86,    86,    86,    86,    86,    86,    86,    86,    86,
+      86,    86,    86,    86,    87,    87,    88,    88,    89,    89,
+      90,    90,    91,    91,    91,    91,    91,    91,    91,    92,
+      92,    92,    92,    92,    92,    92,    93,    93,    93,    93,
+      93,    93,    93,    93,    93,    94,    94,    94,    95,    95,
+      95,    95,    96,    96,    97,    97,    97,    97,    98,    99,
+      99,   100,   100,   101,   101,   101,   101,   101,   101,   101,
+     101,   102,   102,   102,   103,   103,   104,   104,   104,   104,
+     104,   104,   104,   104,   105,   105,   106,   106,   107,   107,
+     107,   107,   108,   108,   109,   109,   109,   109,   109,   109,
+     109,   110,   110,   111,   111,   112,   112,   113,   113,   114,
+     114,   115,   115,   116,   116,   117,   117,   117,   117
 };
 
-static const short yyr2[] = {     0,
-     3,     2,     2,     1,     1,     1,     1,     1,     1,     1,
-     2,     2,     2,     2,     1,     1,     1,     1,     4,     3,
-     5,     0,     5,     5,     5,     2,     1,     1,     2,     3,
-     1,     1,     1,     1,     1,     1,     1,     1,     2,     3,
-     2,     3,     2,     2,     1,     1,     0,     5,     6,    12,
-     9,     6,     3,     0,    11,     8,     5,     3,     0,     3,
-     1,     1,     4,     1,     1,     3,     3,     3,     3,     3,
-     3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
-     3,     3,     1,     5,     1,     3,     0,     3,     1,     2,
-     1,     1,     1,     2,     2,     2,     3,     3,     2,     2,
-     2,     1,     2,     1,     2,     1,     1,     1,     1,     1,
-     1,     1,     1,     1,     1,     1,     1,     1,     2,     2,
-     3,     2,     1,     3,     3,     2,     1,     4,     3,     1,
-     2,     1,    10,    11,     9,     9,     8,    11,     8,     5,
-     2,     4,     0,     1,     2,     1,     1,     2,     2,     3,
-     4,     4,     1,     3,     1,     3,     1,     2,     3,     6,
-     7,     2,     1,     1,     2,     2,     3,     3,     3,     3,
-     7,     8,     3,     1,     3,     1,     7,     8,     3,     1,
-     7,     8,     3,     1,     1,     2,     1,     1
+/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
+static const short yyr2[] =
+{
+       0,     3,     2,     2,     1,     1,     1,     1,     1,     1,
+       1,     2,     2,     2,     2,     1,     1,     1,     1,     4,
+       3,     5,     0,     5,     5,     5,     2,     1,     1,     2,
+       3,     1,     1,     1,     1,     1,     1,     1,     1,     2,
+       3,     2,     3,     2,     2,     1,     1,     0,     5,     6,
+      12,     9,     6,     3,     0,    11,     8,     5,     3,     0,
+       3,     1,     1,     4,     1,     1,     3,     3,     3,     3,
+       3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
+       3,     3,     3,     1,     5,     1,     3,     0,     3,     1,
+       2,     1,     1,     1,     2,     2,     2,     3,     3,     2,
+       2,     2,     1,     2,     1,     2,     1,     1,     1,     1,
+       1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
+       2,     3,     2,     1,     3,     3,     2,     1,     4,     3,
+       1,     2,     1,    10,    11,     9,     9,     8,    11,     8,
+       5,     2,     4,     0,     1,     2,     1,     1,     2,     2,
+       3,     4,     4,     1,     3,     1,     3,     1,     2,     3,
+       6,     7,     2,     1,     1,     2,     2,     3,     3,     3,
+       3,     7,     8,     3,     1,     3,     1,     7,     8,     3,
+       1,     7,     8,     3,     1,     1,     2,     1,     1
 };
 
-static const short yydefact[] = {     0,
-     0,     0,     5,     7,     8,     6,     9,    10,     0,     0,
-    15,     0,     4,     0,    16,    17,    18,     0,     0,     0,
-     0,    11,     3,    12,    13,    14,     2,     0,     0,     0,
-     0,     0,     1,     0,    35,    36,    37,    38,     0,    87,
-     0,    87,     0,    20,    34,     0,    27,     0,    31,    32,
-    33,    28,    22,   176,     0,   174,   184,     0,   180,     0,
-     0,     0,     0,     0,    29,     0,     0,     0,     0,   106,
-   115,   116,   117,   113,   114,   110,   108,   109,   111,   112,
-   107,    93,   102,     0,     0,    91,    92,   104,     0,     0,
-     0,    19,    26,     0,    87,     0,     0,    21,     0,     0,
-     0,     0,     0,     0,     0,    30,     0,     0,    59,    89,
-     0,    85,     0,     0,    94,   101,     0,    95,   103,   100,
-     0,     0,   118,    90,   105,    99,    96,     0,     0,   127,
-     0,   123,     0,     0,     0,    47,     0,   188,   185,   187,
-     0,   175,     0,     0,   173,     0,   183,     0,     0,   179,
-     0,     0,     0,     0,     0,     0,    86,     0,    54,    97,
-     0,     0,   119,   120,    98,     0,     0,     0,   122,     0,
-   126,     0,     0,     0,     0,     0,     0,    47,     0,     0,
-    46,    45,     0,     0,     0,     0,   186,   171,     0,   181,
-     0,   177,     0,     0,   132,   140,    83,     0,     0,     0,
-     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-    61,     0,    57,    88,     0,     0,     0,     0,     0,   106,
-    93,     0,     0,   153,   155,   157,   121,   130,     0,   125,
-   124,     0,     0,     0,     0,    39,     0,     0,     0,     0,
-    41,    43,    44,    48,    22,    22,    22,   172,   182,   178,
-   131,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,     0,    58,     0,     0,     0,     0,    52,     0,
-    94,    95,     0,   158,   143,     0,   128,     0,     0,     0,
-     0,     0,    40,    49,   143,    42,    23,    25,    24,     0,
-    62,    66,    67,    68,    69,   188,    65,    70,    64,    71,
-    72,    74,    73,    76,    75,    78,    77,    80,    79,    82,
-    81,    60,     0,    84,    53,     0,   143,     0,     0,   150,
-   159,     0,     0,     0,   154,   156,   129,     0,     0,   143,
-     0,     0,     0,     0,    56,     0,     0,   152,   151,     0,
-     0,     0,   141,   144,   137,   143,     0,     0,     0,   139,
-     0,     0,     0,    51,   135,     0,   164,     0,     0,     0,
-     0,     0,   163,   145,     0,     0,   143,   136,   143,    63,
-     0,     0,     0,     0,     0,   165,     0,   166,     0,   160,
-   162,   142,   133,     0,     0,    55,     0,   161,   169,   167,
-   168,   170,   138,   134,    50,     0,     0,     0
+/* 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,     0,     0,     5,     7,     8,     6,     9,    10,     0,
+       0,    15,     0,     4,     0,    16,    17,    18,     0,     0,
+       0,     0,    11,     3,    12,    13,    14,     2,     0,     0,
+       0,     0,     0,     1,     0,    35,    36,    37,    38,     0,
+      87,     0,    87,     0,    20,    34,     0,    27,     0,    31,
+      32,    33,    28,    22,   176,     0,   174,   184,     0,   180,
+       0,     0,     0,     0,     0,    29,     0,     0,     0,     0,
+     106,   115,   116,   117,   113,   114,   110,   108,   109,   111,
+     112,   107,    93,   102,     0,     0,    91,    92,   104,     0,
+       0,     0,    19,    26,     0,    87,     0,     0,    21,     0,
+       0,     0,     0,     0,     0,     0,    30,     0,     0,    59,
+      89,     0,    85,     0,     0,    94,   101,     0,    95,   103,
+     100,     0,     0,   118,    90,   105,    99,    96,     0,     0,
+     127,     0,   123,     0,     0,     0,    47,     0,   188,   185,
+     187,     0,   175,     0,     0,   173,     0,   183,     0,     0,
+     179,     0,     0,     0,     0,     0,     0,    86,     0,    54,
+      97,     0,     0,   119,   120,    98,     0,     0,     0,   122,
+       0,   126,     0,     0,     0,     0,     0,     0,    47,     0,
+       0,    46,    45,     0,     0,     0,     0,   186,   171,     0,
+     181,     0,   177,     0,     0,   132,   140,    83,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,    61,     0,    57,    88,     0,     0,     0,     0,     0,
+     106,    93,     0,     0,   153,   155,   157,   121,   130,     0,
+     125,   124,     0,     0,     0,     0,    39,     0,     0,     0,
+       0,    41,    43,    44,    48,    22,    22,    22,   172,   182,
+     178,   131,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,    58,     0,     0,     0,     0,    52,
+       0,    94,    95,     0,   158,   143,     0,   128,     0,     0,
+       0,     0,     0,    40,    49,   143,    42,    23,    25,    24,
+       0,    62,    66,    67,    68,    69,   188,    65,    70,    64,
+      71,    72,    74,    73,    76,    75,    78,    77,    80,    79,
+      82,    81,    60,     0,    84,    53,     0,   143,     0,     0,
+     150,   159,     0,     0,     0,   154,   156,   129,     0,     0,
+     143,     0,     0,     0,     0,    56,     0,     0,   152,   151,
+       0,     0,     0,   141,   144,   137,   143,     0,     0,     0,
+     139,     0,     0,     0,    51,   135,     0,   164,     0,     0,
+       0,     0,     0,   163,   145,     0,     0,   143,   136,   143,
+      63,     0,     0,     0,     0,     0,   165,     0,   166,     0,
+     160,   162,   142,   133,     0,     0,    55,     0,   161,   169,
+     167,   168,   170,   138,   134,    50,     0,     0,     0
 };
 
-static const short yydefgoto[] = {   396,
-    11,    12,    13,    14,    98,    46,    47,    48,   181,   182,
-   183,    49,    50,   217,    51,   155,   210,   292,   298,   211,
-   113,    68,   111,   222,    86,    87,    88,    89,   124,   130,
-   131,   132,   229,   196,    52,   324,   343,   223,   224,   225,
-   226,   362,   363,    15,    55,    56,    16,    60,    17,    58,
-   344
+static const short yydefgoto[] =
+{
+     396,    11,    12,    13,    14,    98,    46,    47,    48,   181,
+     182,   183,    49,    50,   217,    51,   155,   210,   292,   298,
+     211,   113,    68,   111,   222,    86,    87,    88,    89,   124,
+     130,   131,   132,   229,   196,    52,   324,   343,   223,   224,
+     225,   226,   362,   363,    15,    55,    56,    16,    60,    17,
+      58,   344
 };
 
-static const short yypact[] = {   137,
-    16,    24,-32768,-32768,-32768,-32768,-32768,-32768,    45,    99,
--32768,   137,   170,    72,-32768,-32768,-32768,   106,    73,    81,
-    98,-32768,   170,-32768,-32768,-32768,   170,   154,   111,   151,
-   183,   186,   170,   215,-32768,-32768,-32768,-32768,   187,   158,
-   310,   158,   182,-32768,-32768,   188,-32768,   276,-32768,-32768,
--32768,-32768,   195,   210,    69,-32768,-32768,   113,-32768,   115,
-   214,   301,   190,   276,-32768,   248,   252,   254,   357,-32768,
--32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
--32768,   269,   425,   374,   267,   235,-32768,   439,   284,   444,
-   290,-32768,-32768,   374,   158,   293,   311,-32768,    74,   315,
-    76,   316,    84,   339,    90,-32768,   321,   348,   329,   334,
-   345,   356,   399,   453,-32768,-32768,   409,-32768,   453,-32768,
-   413,   378,     2,-32768,   453,-32768,   429,   224,   416,-32768,
-   374,-32768,   392,   428,   430,   126,   220,-32768,-32768,-32768,
-   441,-32768,   405,   451,-32768,   422,-32768,   452,   423,-32768,
-   460,   -32,   427,   258,    21,   252,-32768,   464,   431,-32768,
-   432,   391,   235,-32768,-32768,   433,   465,   466,-32768,    -6,
--32768,   470,   374,   435,    -6,   374,    26,     0,   391,     7,
-   434,   472,   436,   438,   440,   442,-32768,-32768,   443,-32768,
-   445,-32768,   446,   471,-32768,-32768,-32768,   447,   448,   449,
-   450,   454,   455,   456,   457,   458,   459,   461,   462,    91,
--32768,   468,-32768,-32768,   374,   478,   480,   391,   408,   467,
-     6,   482,   469,-32768,   463,-32768,-32768,-32768,   112,-32768,
--32768,   473,   485,   391,   490,-32768,   486,   474,   476,   487,
--32768,-32768,-32768,-32768,   195,   195,   195,-32768,-32768,-32768,
--32768,     1,     1,    74,    74,     9,   252,   374,   139,   157,
-   191,   209,   212,-32768,   258,   494,   477,   479,   481,   483,
-   121,   144,   374,    94,   505,   340,-32768,   507,   391,   475,
-   484,   488,-32768,-32768,   505,-32768,-32768,-32768,-32768,   489,
--32768,-32768,-32768,-32768,-32768,   489,-32768,-32768,-32768,-32768,
--32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
--32768,-32768,    47,-32768,-32768,   503,   505,   374,   374,-32768,
-   491,   510,    27,   -32,-32768,-32768,-32768,   492,   391,   505,
-   391,   -32,   506,   496,-32768,    54,   -32,-32768,-32768,   518,
-    57,   514,   522,-32768,-32768,   505,   495,   -32,   497,-32768,
-   498,   521,   499,-32768,-32768,    57,-32768,   500,    64,    66,
-   501,    50,-32768,-32768,    27,   -32,   505,-32768,   505,-32768,
-   493,   523,    79,    74,    74,-32768,    74,-32768,    74,-32768,
--32768,-32768,-32768,   -32,   -32,-32768,   504,-32768,-32768,-32768,
--32768,-32768,-32768,-32768,-32768,   542,   555,-32768
+static const short yypact[] =
+{
+     137,    16,    24,-32768,-32768,-32768,-32768,-32768,-32768,    45,
+      99,-32768,   137,   170,    72,-32768,-32768,-32768,   106,    73,
+      81,    98,-32768,   170,-32768,-32768,-32768,   170,   154,   111,
+     151,   183,   186,   170,   215,-32768,-32768,-32768,-32768,   187,
+     158,   310,   158,   182,-32768,-32768,   188,-32768,   276,-32768,
+  -32768,-32768,-32768,   195,   210,    69,-32768,-32768,   113,-32768,
+     115,   214,   301,   190,   276,-32768,   248,   252,   254,   357,
+  -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
+  -32768,-32768,   269,   425,   374,   267,   235,-32768,   439,   284,
+     444,   290,-32768,-32768,   374,   158,   293,   311,-32768,    74,
+     315,    76,   316,    84,   339,    90,-32768,   321,   348,   329,
+     334,   345,   356,   399,   453,-32768,-32768,   409,-32768,   453,
+  -32768,   413,   378,     2,-32768,   453,-32768,   429,   224,   416,
+  -32768,   374,-32768,   392,   428,   430,   126,   220,-32768,-32768,
+  -32768,   441,-32768,   405,   451,-32768,   422,-32768,   452,   423,
+  -32768,   460,   -32,   427,   258,    21,   252,-32768,   464,   431,
+  -32768,   432,   391,   235,-32768,-32768,   433,   465,   466,-32768,
+      -6,-32768,   470,   374,   435,    -6,   374,    26,     0,   391,
+       7,   434,   472,   436,   438,   440,   442,-32768,-32768,   443,
+  -32768,   445,-32768,   446,   471,-32768,-32768,-32768,   447,   448,
+     449,   450,   454,   455,   456,   457,   458,   459,   461,   462,
+      91,-32768,   468,-32768,-32768,   374,   478,   480,   391,   408,
+     467,     6,   482,   469,-32768,   463,-32768,-32768,-32768,   112,
+  -32768,-32768,   473,   485,   391,   490,-32768,   486,   474,   476,
+     487,-32768,-32768,-32768,-32768,   195,   195,   195,-32768,-32768,
+  -32768,-32768,     1,     1,    74,    74,     9,   252,   374,   139,
+     157,   191,   209,   212,-32768,   258,   494,   477,   479,   481,
+     483,   121,   144,   374,    94,   505,   340,-32768,   507,   391,
+     475,   484,   488,-32768,-32768,   505,-32768,-32768,-32768,-32768,
+     489,-32768,-32768,-32768,-32768,-32768,   489,-32768,-32768,-32768,
+  -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
+  -32768,-32768,-32768,    47,-32768,-32768,   503,   505,   374,   374,
+  -32768,   491,   510,    27,   -32,-32768,-32768,-32768,   492,   391,
+     505,   391,   -32,   506,   496,-32768,    54,   -32,-32768,-32768,
+     518,    57,   514,   522,-32768,-32768,   505,   495,   -32,   497,
+  -32768,   498,   521,   499,-32768,-32768,    57,-32768,   500,    64,
+      66,   501,    50,-32768,-32768,    27,   -32,   505,-32768,   505,
+  -32768,   493,   523,    79,    74,    74,-32768,    74,-32768,    74,
+  -32768,-32768,-32768,-32768,   -32,   -32,-32768,   504,-32768,-32768,
+  -32768,-32768,-32768,-32768,-32768,-32768,   542,   555,-32768
 };
 
-static const short yypgoto[] = {-32768,
-   202,   104,   544,-32768,    17,-32768,   511,   -29,   380,   379,
-   385,-32768,-32768,-32768,-32768,-32768,-32768,   -52,-32768,   299,
--32768,   -27,  -152,   -40,-32768,   -66,-32768,   -60,  -107,   437,
--32768,   -93,-32768,  -314,   -20,  -279,   200,  -177,  -218,-32768,
-   291,   213,  -266,   205,-32768,   502,   232,-32768,   239,-32768,
-   -99
+static const short yypgoto[] =
+{
+  -32768,   202,   104,   544,-32768,    17,-32768,   511,   -29,   380,
+     379,   385,-32768,-32768,-32768,-32768,-32768,-32768,   -52,-32768,
+     299,-32768,   -27,  -152,   -40,-32768,   -66,-32768,   -60,  -107,
+     437,-32768,   -93,-32768,  -314,   -20,  -279,   200,  -177,  -218,
+  -32768,   291,   213,  -266,   205,-32768,   502,   232,-32768,   239,
+  -32768,   -99
 };
 
 
 #define        YYLAST          603
 
 
-static const short yytable[] = {   142,
-    85,   239,   116,   214,    64,   332,   163,    96,   117,   345,
-   272,    84,   166,    65,    90,   164,   120,   350,   177,   290,
-   194,   126,   355,   108,   195,   138,   139,   296,   139,   140,
-   291,   140,    64,   368,   169,   171,    18,   337,   291,   212,
-   270,   106,    19,   121,   236,   138,   139,   116,   167,   140,
-   348,   383,   116,   134,   320,   227,   281,   180,   116,   240,
-   129,  -147,   123,    20,   273,   334,   366,   135,   357,   393,
-   394,   141,   353,   141,   230,   357,   231,   213,   237,   342,
-   241,   169,   138,   139,   138,   139,   140,   384,   140,   385,
-   172,   141,   138,   139,    54,   381,   140,   357,   168,   338,
-   339,   328,   147,   335,   300,   380,   381,   358,   150,    29,
-   354,   359,   360,   361,   358,   321,    27,    21,   359,   360,
-   361,   375,   100,   377,    28,    30,    33,   101,   141,   144,
-   141,    53,   233,    31,   388,   235,   358,   148,   141,     1,
-   359,   360,   361,   151,   177,     2,   264,   178,   322,   265,
-    32,   347,   116,   349,   294,   295,   299,   302,   117,   303,
-     3,     4,     5,     6,     7,     8,   102,   277,   104,    54,
-   278,   103,    34,   105,   267,   304,  -149,   305,     2,   318,
-   179,     9,    10,   180,    35,    36,    37,    38,    39,    40,
-    41,    42,    43,     3,     4,     5,     6,     7,     8,  -148,
-   293,    57,   319,   297,    59,    66,    34,    44,   107,   306,
-    45,   307,    67,    22,     9,    10,    24,   301,    35,    36,
-    37,    38,    39,    40,    41,    42,    43,   308,    22,   309,
-   310,    24,   311,    61,    22,    62,    91,    24,   184,   185,
-   186,    92,   166,    25,    45,    35,    36,    37,    38,    97,
-    26,    41,    42,    43,    35,    36,    37,    38,    25,   376,
-   378,   287,   288,   289,    25,    26,   109,    99,    63,    63,
-   110,    26,   112,   118,   389,   390,   197,   391,   167,   392,
-    69,    70,    71,    72,    73,   122,    74,    75,    76,    77,
-    78,    79,    80,    81,    82,   123,    83,   198,   199,   200,
-   201,   202,   127,   203,   204,   205,   206,   207,   208,   209,
-   133,   136,    94,    95,    69,    70,    71,    72,    73,    61,
-    74,    75,    76,    77,    78,    79,    80,    81,    82,   137,
-    83,    35,    36,    37,    38,   143,   146,    41,    42,    43,
-    35,    36,    37,    38,    69,    70,    71,    72,    73,   325,
-    74,    75,    76,    77,    78,    79,    80,    81,    82,   149,
-    83,   114,    70,    71,    72,    73,   153,    74,    75,    76,
-    77,    78,    79,    80,    81,   115,   152,    83,    69,    70,
-    71,    72,    73,   154,    74,    75,    76,    77,    78,    79,
-    80,    81,    82,   156,    83,   219,   220,    71,    72,    73,
-   157,    74,    75,    76,    77,    78,    79,    80,    81,   221,
-   158,    83,   114,    70,    71,    72,    73,   159,    74,    75,
-    76,    77,    78,    79,    80,    81,   271,   160,    83,   119,
-    70,   161,   162,   165,   170,    74,    75,    76,    77,    78,
-    79,    80,    81,   125,    70,    83,   174,   173,   175,    74,
-    75,    76,    77,    78,    79,    80,    81,   114,    70,    83,
-   187,   188,   128,    74,    75,    76,    77,    78,    79,    80,
-    81,   189,   191,    83,    35,    36,    37,    38,   190,   192,
-   193,   179,   215,   228,   166,   216,   218,   167,   232,   234,
-   177,   180,   244,   245,   251,   246,   268,   247,   269,   248,
-   274,   249,   250,   280,   252,   253,   254,   255,   282,   283,
-   286,   256,   257,   258,   259,   260,   261,   313,   262,   263,
-   266,   276,  -146,   323,   275,   327,   336,   279,   341,   329,
-   284,   285,   314,   316,   315,   351,   356,   364,   317,   330,
-   365,   397,   331,   333,   371,   340,   387,   346,   352,   386,
-   367,   372,   369,   370,   398,    23,    93,   374,   379,   242,
-   395,   243,   238,   312,   382,     0,   326,     0,   373,     0,
-     0,   176,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-     0,     0,   145
+static const short yytable[] =
+{
+     142,    85,   239,   116,   214,    64,   332,   163,    96,   117,
+     345,   272,    84,   166,    65,    90,   164,   120,   350,   177,
+     290,   194,   126,   355,   108,   195,   138,   139,   296,   139,
+     140,   291,   140,    64,   368,   169,   171,    18,   337,   291,
+     212,   270,   106,    19,   121,   236,   138,   139,   116,   167,
+     140,   348,   383,   116,   134,   320,   227,   281,   180,   116,
+     240,   129,  -147,   123,    20,   273,   334,   366,   135,   357,
+     393,   394,   141,   353,   141,   230,   357,   231,   213,   237,
+     342,   241,   169,   138,   139,   138,   139,   140,   384,   140,
+     385,   172,   141,   138,   139,    54,   381,   140,   357,   168,
+     338,   339,   328,   147,   335,   300,   380,   381,   358,   150,
+      29,   354,   359,   360,   361,   358,   321,    27,    21,   359,
+     360,   361,   375,   100,   377,    28,    30,    33,   101,   141,
+     144,   141,    53,   233,    31,   388,   235,   358,   148,   141,
+       1,   359,   360,   361,   151,   177,     2,   264,   178,   322,
+     265,    32,   347,   116,   349,   294,   295,   299,   302,   117,
+     303,     3,     4,     5,     6,     7,     8,   102,   277,   104,
+      54,   278,   103,    34,   105,   267,   304,  -149,   305,     2,
+     318,   179,     9,    10,   180,    35,    36,    37,    38,    39,
+      40,    41,    42,    43,     3,     4,     5,     6,     7,     8,
+    -148,   293,    57,   319,   297,    59,    66,    34,    44,   107,
+     306,    45,   307,    67,    22,     9,    10,    24,   301,    35,
+      36,    37,    38,    39,    40,    41,    42,    43,   308,    22,
+     309,   310,    24,   311,    61,    22,    62,    91,    24,   184,
+     185,   186,    92,   166,    25,    45,    35,    36,    37,    38,
+      97,    26,    41,    42,    43,    35,    36,    37,    38,    25,
+     376,   378,   287,   288,   289,    25,    26,   109,    99,    63,
+      63,   110,    26,   112,   118,   389,   390,   197,   391,   167,
+     392,    69,    70,    71,    72,    73,   122,    74,    75,    76,
+      77,    78,    79,    80,    81,    82,   123,    83,   198,   199,
+     200,   201,   202,   127,   203,   204,   205,   206,   207,   208,
+     209,   133,   136,    94,    95,    69,    70,    71,    72,    73,
+      61,    74,    75,    76,    77,    78,    79,    80,    81,    82,
+     137,    83,    35,    36,    37,    38,   143,   146,    41,    42,
+      43,    35,    36,    37,    38,    69,    70,    71,    72,    73,
+     325,    74,    75,    76,    77,    78,    79,    80,    81,    82,
+     149,    83,   114,    70,    71,    72,    73,   153,    74,    75,
+      76,    77,    78,    79,    80,    81,   115,   152,    83,    69,
+      70,    71,    72,    73,   154,    74,    75,    76,    77,    78,
+      79,    80,    81,    82,   156,    83,   219,   220,    71,    72,
+      73,   157,    74,    75,    76,    77,    78,    79,    80,    81,
+     221,   158,    83,   114,    70,    71,    72,    73,   159,    74,
+      75,    76,    77,    78,    79,    80,    81,   271,   160,    83,
+     119,    70,   161,   162,   165,   170,    74,    75,    76,    77,
+      78,    79,    80,    81,   125,    70,    83,   174,   173,   175,
+      74,    75,    76,    77,    78,    79,    80,    81,   114,    70,
+      83,   187,   188,   128,    74,    75,    76,    77,    78,    79,
+      80,    81,   189,   191,    83,    35,    36,    37,    38,   190,
+     192,   193,   179,   215,   228,   166,   216,   218,   167,   232,
+     234,   177,   180,   244,   245,   251,   246,   268,   247,   269,
+     248,   274,   249,   250,   280,   252,   253,   254,   255,   282,
+     283,   286,   256,   257,   258,   259,   260,   261,   313,   262,
+     263,   266,   276,  -146,   323,   275,   327,   336,   279,   341,
+     329,   284,   285,   314,   316,   315,   351,   356,   364,   317,
+     330,   365,   397,   331,   333,   371,   340,   387,   346,   352,
+     386,   367,   372,   369,   370,   398,    23,    93,   374,   379,
+     242,   395,   243,   238,   312,   382,     0,   326,     0,   373,
+       0,     0,   176,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,   145
 };
 
-static const short yycheck[] = {    99,
-    41,   179,    69,   156,    34,   285,     5,    48,    69,   324,
-     5,    41,    19,    34,    42,   123,    83,   332,    19,    19,
-    53,    88,   337,    64,    57,    19,    20,    19,    20,    23,
-    30,    23,    62,   348,   128,   129,    21,   317,    30,    19,
-   218,    62,    19,    84,    19,    19,    20,   114,    55,    23,
-   330,   366,   119,    94,   273,   163,   234,    58,   125,    53,
-    90,    56,    61,    19,    59,    19,   346,    95,    19,   384,
-   385,    65,    19,    65,   168,    19,   170,    57,    53,    53,
-   180,   175,    19,    20,    19,    20,    23,   367,    23,   369,
-   131,    65,    19,    20,    19,   362,    23,    19,   128,   318,
-   319,   279,    19,    57,   257,    56,   373,    58,    19,     4,
-    57,    62,    63,    64,    58,    22,    13,    19,    62,    63,
-    64,    58,    54,    58,    53,    53,    23,    59,    65,    54,
-    65,    21,   173,    53,    56,   176,    58,    54,    65,     3,
-    62,    63,    64,    54,    19,     9,    56,    22,    55,    59,
-    53,   329,   219,   331,   254,   255,   256,    19,   219,    21,
-    24,    25,    26,    27,    28,    29,    54,    56,    54,    19,
-    59,    59,    19,    59,   215,    19,    56,    21,     9,    59,
-    55,    45,    46,    58,    31,    32,    33,    34,    35,    36,
-    37,    38,    39,    24,    25,    26,    27,    28,    29,    56,
-   253,    19,    59,   256,    19,    19,    19,    54,    19,    19,
-    57,    21,    55,    12,    45,    46,    12,   258,    31,    32,
-    33,    34,    35,    36,    37,    38,    39,    19,    27,    21,
-    19,    27,    21,    19,    33,    21,    55,    33,    19,    20,
-    21,    54,    19,    12,    57,    31,    32,    33,    34,    55,
-    12,    37,    38,    39,    31,    32,    33,    34,    27,   359,
-   360,   245,   246,   247,    33,    27,    19,    58,    55,    55,
-    19,    33,    19,     5,   374,   375,    19,   377,    55,   379,
-     5,     6,     7,     8,     9,    19,    11,    12,    13,    14,
-    15,    16,    17,    18,    19,    61,    21,    40,    41,    42,
-    43,    44,    19,    46,    47,    48,    49,    50,    51,    52,
-    21,    19,    37,    38,     5,     6,     7,     8,     9,    19,
-    11,    12,    13,    14,    15,    16,    17,    18,    19,    19,
-    21,    31,    32,    33,    34,    21,    21,    37,    38,    39,
-    31,    32,    33,    34,     5,     6,     7,     8,     9,    10,
-    11,    12,    13,    14,    15,    16,    17,    18,    19,    21,
-    21,     5,     6,     7,     8,     9,    19,    11,    12,    13,
-    14,    15,    16,    17,    18,    19,    56,    21,     5,     6,
-     7,     8,     9,    55,    11,    12,    13,    14,    15,    16,
-    17,    18,    19,    60,    21,     5,     6,     7,     8,     9,
-    56,    11,    12,    13,    14,    15,    16,    17,    18,    19,
-    55,    21,     5,     6,     7,     8,     9,    19,    11,    12,
-    13,    14,    15,    16,    17,    18,    19,    19,    21,     5,
-     6,    19,    55,     5,    19,    11,    12,    13,    14,    15,
-    16,    17,    18,     5,     6,    21,    19,    56,    19,    11,
-    12,    13,    14,    15,    16,    17,    18,     5,     6,    21,
-    20,    57,    19,    11,    12,    13,    14,    15,    16,    17,
-    18,    21,    21,    21,    31,    32,    33,    34,    57,    57,
-    21,    55,    19,    19,    19,    55,    55,    55,    19,    55,
-    19,    58,    57,    56,    24,    56,    19,    56,    19,    57,
-    19,    57,    57,    19,    58,    58,    58,    58,    19,    24,
-    24,    58,    58,    58,    58,    58,    58,    24,    58,    58,
-    53,    59,    56,    19,    56,    19,    24,    55,    19,    55,
-    57,    56,    56,    53,    56,    30,    19,    24,    56,    56,
-    19,     0,    55,    55,    24,    55,    24,    56,    53,    57,
-    56,    53,    56,    56,     0,    12,    46,    58,    58,   181,
-    57,   182,   178,   265,   365,    -1,   276,    -1,   356,    -1,
-    -1,   135,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-    -1,    -1,   101
+static const short yycheck[] =
+{
+      99,    41,   179,    69,   156,    34,   285,     5,    48,    69,
+     324,     5,    41,    19,    34,    42,   123,    83,   332,    19,
+      19,    53,    88,   337,    64,    57,    19,    20,    19,    20,
+      23,    30,    23,    62,   348,   128,   129,    21,   317,    30,
+      19,   218,    62,    19,    84,    19,    19,    20,   114,    55,
+      23,   330,   366,   119,    94,   273,   163,   234,    58,   125,
+      53,    90,    56,    61,    19,    59,    19,   346,    95,    19,
+     384,   385,    65,    19,    65,   168,    19,   170,    57,    53,
+      53,   180,   175,    19,    20,    19,    20,    23,   367,    23,
+     369,   131,    65,    19,    20,    19,   362,    23,    19,   128,
+     318,   319,   279,    19,    57,   257,    56,   373,    58,    19,
+       4,    57,    62,    63,    64,    58,    22,    13,    19,    62,
+      63,    64,    58,    54,    58,    53,    53,    23,    59,    65,
+      54,    65,    21,   173,    53,    56,   176,    58,    54,    65,
+       3,    62,    63,    64,    54,    19,     9,    56,    22,    55,
+      59,    53,   329,   219,   331,   254,   255,   256,    19,   219,
+      21,    24,    25,    26,    27,    28,    29,    54,    56,    54,
+      19,    59,    59,    19,    59,   215,    19,    56,    21,     9,
+      59,    55,    45,    46,    58,    31,    32,    33,    34,    35,
+      36,    37,    38,    39,    24,    25,    26,    27,    28,    29,
+      56,   253,    19,    59,   256,    19,    19,    19,    54,    19,
+      19,    57,    21,    55,    12,    45,    46,    12,   258,    31,
+      32,    33,    34,    35,    36,    37,    38,    39,    19,    27,
+      21,    19,    27,    21,    19,    33,    21,    55,    33,    19,
+      20,    21,    54,    19,    12,    57,    31,    32,    33,    34,
+      55,    12,    37,    38,    39,    31,    32,    33,    34,    27,
+     359,   360,   245,   246,   247,    33,    27,    19,    58,    55,
+      55,    19,    33,    19,     5,   374,   375,    19,   377,    55,
+     379,     5,     6,     7,     8,     9,    19,    11,    12,    13,
+      14,    15,    16,    17,    18,    19,    61,    21,    40,    41,
+      42,    43,    44,    19,    46,    47,    48,    49,    50,    51,
+      52,    21,    19,    37,    38,     5,     6,     7,     8,     9,
+      19,    11,    12,    13,    14,    15,    16,    17,    18,    19,
+      19,    21,    31,    32,    33,    34,    21,    21,    37,    38,
+      39,    31,    32,    33,    34,     5,     6,     7,     8,     9,
+      10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
+      21,    21,     5,     6,     7,     8,     9,    19,    11,    12,
+      13,    14,    15,    16,    17,    18,    19,    56,    21,     5,
+       6,     7,     8,     9,    55,    11,    12,    13,    14,    15,
+      16,    17,    18,    19,    60,    21,     5,     6,     7,     8,
+       9,    56,    11,    12,    13,    14,    15,    16,    17,    18,
+      19,    55,    21,     5,     6,     7,     8,     9,    19,    11,
+      12,    13,    14,    15,    16,    17,    18,    19,    19,    21,
+       5,     6,    19,    55,     5,    19,    11,    12,    13,    14,
+      15,    16,    17,    18,     5,     6,    21,    19,    56,    19,
+      11,    12,    13,    14,    15,    16,    17,    18,     5,     6,
+      21,    20,    57,    19,    11,    12,    13,    14,    15,    16,
+      17,    18,    21,    21,    21,    31,    32,    33,    34,    57,
+      57,    21,    55,    19,    19,    19,    55,    55,    55,    19,
+      55,    19,    58,    57,    56,    24,    56,    19,    56,    19,
+      57,    19,    57,    57,    19,    58,    58,    58,    58,    19,
+      24,    24,    58,    58,    58,    58,    58,    58,    24,    58,
+      58,    53,    59,    56,    19,    56,    19,    24,    55,    19,
+      55,    57,    56,    56,    53,    56,    30,    19,    24,    56,
+      56,    19,     0,    55,    55,    24,    55,    24,    56,    53,
+      57,    56,    53,    56,    56,     0,    12,    46,    58,    58,
+     181,    57,   182,   178,   265,   365,    -1,   276,    -1,   356,
+      -1,    -1,   135,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+      -1,    -1,    -1,   101
 };
 /* -*-C-*-  Note some compilers choke on comments on `#line' lines.  */
-#line 3 "/usr/lib/bison.simple"
-/* This file comes from bison-1.28.  */
+#line 3 "/usr/share/bison/bison.simple"
 
 /* Skeleton output parser for bison,
-   Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.
+
+   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
@@ -1160,62 +1182,131 @@ static const short yycheck[] = {    99,
    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.  */
+/* 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 <stdlib.h> /* 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)
 
-#ifndef YYSTACK_USE_ALLOCA
-#ifdef alloca
-#define YYSTACK_USE_ALLOCA
-#else /* alloca not defined */
-#ifdef __GNUC__
-#define YYSTACK_USE_ALLOCA
-#define alloca __builtin_alloca
-#else /* not GNU C.  */
-#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi) || (defined (__sun) && defined (__i386))
-#define YYSTACK_USE_ALLOCA
-#include <alloca.h>
-#else /* not sparc */
-/* We think this test detects Watcom and Microsoft C.  */
-/* This used to test MSDOS, but that is a bad idea
-   since that symbol is in the user namespace.  */
-#if (defined (_MSDOS) || defined (_MSDOS_)) && !defined (__TURBOC__)
-#if 0 /* No need for malloc.h, which pollutes the namespace;
-        instead, just don't use alloca.  */
-#include <malloc.h>
 #endif
-#else /* not MSDOS, or __TURBOC__ */
-#if defined(_AIX)
-/* I don't know what this was needed for, but it pollutes the namespace.
-   So I turned it off.   rms, 2 May 1997.  */
-/* #include <malloc.h>  */
- #pragma alloca
-#define YYSTACK_USE_ALLOCA
-#else /* not MSDOS, or __TURBOC__, or _AIX */
-#if 0
-#ifdef __hpux /* haible@ilog.fr says this works for HPUX 9.05 and up,
-                and on HPUX 10.  Eventually we can turn this on.  */
-#define YYSTACK_USE_ALLOCA
-#define alloca __builtin_alloca
-#endif /* __hpux */
+
+
+#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
+# define YYSIZE_T __SIZE_TYPE__
 #endif
-#endif /* not _AIX */
-#endif /* not MSDOS, or __TURBOC__ */
-#endif /* not sparc */
-#endif /* not GNU C */
-#endif /* alloca not defined */
-#endif /* YYSTACK_USE_ALLOCA not defined */
-
-#ifdef YYSTACK_USE_ALLOCA
-#define YYSTACK_ALLOC alloca
-#else
-#define YYSTACK_ALLOC malloc
+#if ! defined (YYSIZE_T) && defined (size_t)
+# define YYSIZE_T size_t
+#endif
+#if ! defined (YYSIZE_T)
+# if defined (__STDC__) || defined (__cplusplus)
+#  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
+#  define YYSIZE_T size_t
+# endif
+#endif
+#if ! defined (YYSIZE_T)
+# define YYSIZE_T unsigned int
 #endif
-
-/* Note: there must be only one dollar sign in this file.
-   It is replaced by the list of actions, each action
-   as one case of the switch.  */
 
 #define yyerrok                (yyerrstatus = 0)
 #define yyclearin      (yychar = YYEMPTY)
@@ -1224,131 +1315,161 @@ static const short yycheck[] = {    99,
 #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.
+/* 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) \
+#define YYBACKUP(Token, Value)                                 \
 do                                                             \
   if (yychar == YYEMPTY && yylen == 1)                         \
-    { yychar = (token), yylval = (value);                      \
+    {                                                          \
+      yychar = (Token);                                                \
+      yylval = (Value);                                                \
       yychar1 = YYTRANSLATE (yychar);                          \
       YYPOPSTACK;                                              \
       goto yybackup;                                           \
     }                                                          \
   else                                                         \
-    { yyerror ("syntax error: cannot back up"); YYERROR; }     \
+    {                                                          \
+      yyerror ("syntax error: cannot back up");                        \
+      YYERROR;                                                 \
+    }                                                          \
 while (0)
 
 #define YYTERROR       1
 #define YYERRCODE      256
 
-#ifndef YYPURE
-#define YYLEX          yylex()
-#endif
 
-#ifdef YYPURE
-#ifdef YYLSP_NEEDED
-#ifdef YYLEX_PARAM
-#define YYLEX          yylex(&yylval, &yylloc, YYLEX_PARAM)
-#else
-#define YYLEX          yylex(&yylval, &yylloc)
-#endif
-#else /* not YYLSP_NEEDED */
-#ifdef YYLEX_PARAM
-#define YYLEX          yylex(&yylval, YYLEX_PARAM)
-#else
-#define YYLEX          yylex(&yylval)
-#endif
-#endif /* not YYLSP_NEEDED */
-#endif
-
-/* If nonreentrant, generate the variables here */
-
-#ifndef YYPURE
-
-int    yychar;                 /*  the lookahead symbol                */
-YYSTYPE        yylval;                 /*  the semantic value of the           */
-                               /*  lookahead symbol                    */
+/* YYLLOC_DEFAULT -- Compute the default location (before the actions
+   are run).
 
-#ifdef YYLSP_NEEDED
-YYLTYPE yylloc;                        /*  location data for the lookahead     */
-                               /*  symbol                              */
-#endif
-
-int yynerrs;                   /*  number of parse errors so far       */
-#endif  /* not YYPURE */
+   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.  */
 
-#if YYDEBUG != 0
-int yydebug;                   /*  nonzero means print parse trace     */
-/* Since this is uninitialized, it does not stop multiple parsers
-   from coexisting.  */
+#ifndef YYLLOC_DEFAULT
+# define YYLLOC_DEFAULT(Current, Rhs, N)               \
+   Current.last_line   = Rhs[N].last_line;     \
+   Current.last_column = Rhs[N].last_column;
 #endif
 
-/*  YYINITDEPTH indicates the initial size of the parser's stacks      */
 
+/* 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 <stdio.h> /* 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
+# define YYINITDEPTH 200
 #endif
 
-/*  YYMAXDEPTH is the maximum size the stacks can grow to
-    (effective only if the built-in stack extension method is used).  */
+/* 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
+# undef YYMAXDEPTH
 #endif
 
 #ifndef YYMAXDEPTH
-#define YYMAXDEPTH 10000
+# define YYMAXDEPTH 10000
 #endif
 \f
-/* Define __yy_memcpy.  Note that the size argument
-   should be passed with type unsigned int, because that is what the non-GCC
-   definitions require.  With GCC, __builtin_memcpy takes an arg
-   of type size_t, but it can handle unsigned int.  */
-
-#if __GNUC__ > 1               /* GNU C and GNU C++ define this.  */
-#define __yy_memcpy(TO,FROM,COUNT)     __builtin_memcpy(TO,FROM,COUNT)
-#else                          /* not GNU C or C++ */
-#ifndef __cplusplus
-
-/* This is the most reliable way to avoid incompatibilities
-   in available built-in functions on various systems.  */
-static void
-__yy_memcpy (to, from, count)
-     char *to;
-     char *from;
-     unsigned int count;
-{
-  register char *f = from;
-  register char *t = to;
-  register int i = count;
+#ifdef YYERROR_VERBOSE
 
-  while (i-- > 0)
-    *t++ = *f++;
+# 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;
 }
-
-#else /* __cplusplus */
-
-/* This is the most reliable way to avoid incompatibilities
-   in available built-in functions on various systems.  */
-static void
-__yy_memcpy (char *to, char *from, unsigned int count)
+#  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 *t = to;
-  register char *f = from;
-  register int i = count;
+  register char *yyd = yydest;
+  register const char *yys = yysrc;
 
-  while (i-- > 0)
-    *t++ = *f++;
-}
+  while ((*yyd++ = *yys++) != '\0')
+    continue;
 
-#endif
+  return yyd - 1;
+}
+#  endif
+# endif
 #endif
 \f
-#line 217 "/usr/lib/bison.simple"
+#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 *.
@@ -1357,76 +1478,121 @@ __yy_memcpy (char *to, char *from, unsigned int count)
    to the proper pointer type.  */
 
 #ifdef YYPARSE_PARAM
-#ifdef __cplusplus
-#define YYPARSE_PARAM_ARG void *YYPARSE_PARAM
-#define YYPARSE_PARAM_DECL
-#else /* not __cplusplus */
-#define YYPARSE_PARAM_ARG YYPARSE_PARAM
-#define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
-#endif /* not __cplusplus */
-#else /* not YYPARSE_PARAM */
-#define YYPARSE_PARAM_ARG
-#define YYPARSE_PARAM_DECL
-#endif /* not 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
+# ifdef YYPARSE_PARAM
 int yyparse (void *);
-#else
+# 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 (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;
-  register YYSTYPE *yyvsp;
-  int yyerrstatus;     /*  number of tokens to shift before error messages enabled */
-  int yychar1 = 0;             /*  lookahead token as an internal (translated) token number */
-
-  short        yyssa[YYINITDEPTH];     /*  the state stack                     */
-  YYSTYPE yyvsa[YYINITDEPTH];  /*  the semantic value stack            */
 
-  short *yyss = yyssa;         /*  refer to the stacks thru separate pointers */
-  YYSTYPE *yyvs = yyvsa;       /*  to allow yyoverflow to reallocate them elsewhere */
+  /* The semantic value stack.  */
+  YYSTYPE yyvsa[YYINITDEPTH];
+  YYSTYPE *yyvs = yyvsa;
+  register YYSTYPE *yyvsp;
 
-#ifdef YYLSP_NEEDED
-  YYLTYPE yylsa[YYINITDEPTH];  /*  the location stack                  */
+#if YYLSP_NEEDED
+  /* The location stack.  */
+  YYLTYPE yylsa[YYINITDEPTH];
   YYLTYPE *yyls = yylsa;
   YYLTYPE *yylsp;
+#endif
 
-#define YYPOPSTACK   (yyvsp--, yyssp--, yylsp--)
+#if YYLSP_NEEDED
+# define YYPOPSTACK   (yyvsp--, yyssp--, yylsp--)
 #else
-#define YYPOPSTACK   (yyvsp--, yyssp--)
+# define YYPOPSTACK   (yyvsp--, yyssp--)
 #endif
 
-  int yystacksize = YYINITDEPTH;
-  int yyfree_stacks = 0;
+  YYSIZE_T yystacksize = YYINITDEPTH;
 
-#ifdef YYPURE
-  int yychar;
-  YYSTYPE yylval;
-  int yynerrs;
-#ifdef YYLSP_NEEDED
-  YYLTYPE yylloc;
-#endif
-#endif
 
-  YYSTYPE yyval;               /*  the variable used to return         */
-                               /*  semantic values from the action     */
-                               /*  routines                            */
+  /* 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;
 
-#if YYDEBUG != 0
-  if (yydebug)
-    fprintf(stderr, "Starting parse\n");
-#endif
+  YYDPRINTF ((stderr, "Starting parse\n"));
 
   yystate = 0;
   yyerrstatus = 0;
@@ -1438,110 +1604,110 @@ yyparse(YYPARSE_PARAM_ARG)
      so that they stay on the same level as the state stack.
      The wasted elements are never initialized.  */
 
-  yyssp = yyss - 1;
+  yyssp = yyss;
   yyvsp = yyvs;
-#ifdef YYLSP_NEEDED
+#if YYLSP_NEEDED
   yylsp = yyls;
 #endif
+  goto yysetstate;
 
-/* Push a new state, which is found in  yystate  .  */
-/* In all cases, when you get here, the value and location stacks
-   have just been pushed. so pushing a state here evens the stacks.  */
-yynewstate:
+/*------------------------------------------------------------.
+| 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++;
 
-  *++yyssp = yystate;
+ yysetstate:
+  *yyssp = yystate;
 
   if (yyssp >= yyss + yystacksize - 1)
     {
-      /* 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;
-#ifdef YYLSP_NEEDED
-      YYLTYPE *yyls1 = yyls;
-#endif
-
       /* Get the current used size of the three stacks, in elements.  */
-      int size = yyssp - yyss + 1;
+      YYSIZE_T yysize = yyssp - yyss + 1;
 
 #ifdef yyoverflow
-      /* Each stack pointer address is followed by the size of
-        the data in use in that stack, in bytes.  */
-#ifdef YYLSP_NEEDED
-      /* 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, size * sizeof (*yyssp),
-                &yyvs1, size * sizeof (*yyvsp),
-                &yyls1, size * sizeof (*yylsp),
-                &yystacksize);
-#else
-      yyoverflow("parser stack overflow",
-                &yyss1, size * sizeof (*yyssp),
-                &yyvs1, size * sizeof (*yyvsp),
-                &yystacksize);
-#endif
-
-      yyss = yyss1; yyvs = yyvs1;
-#ifdef YYLSP_NEEDED
-      yyls = yyls1;
-#endif
+      {
+       /* 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)
-       {
-         yyerror("parser stack overflow");
-         if (yyfree_stacks)
-           {
-             free (yyss);
-             free (yyvs);
-#ifdef YYLSP_NEEDED
-             free (yyls);
-#endif
-           }
-         return 2;
-       }
+       goto yyoverflowlab;
       yystacksize *= 2;
       if (yystacksize > YYMAXDEPTH)
        yystacksize = YYMAXDEPTH;
-#ifndef YYSTACK_USE_ALLOCA
-      yyfree_stacks = 1;
-#endif
-      yyss = (short *) YYSTACK_ALLOC (yystacksize * sizeof (*yyssp));
-      __yy_memcpy ((char *)yyss, (char *)yyss1,
-                  size * (unsigned int) sizeof (*yyssp));
-      yyvs = (YYSTYPE *) YYSTACK_ALLOC (yystacksize * sizeof (*yyvsp));
-      __yy_memcpy ((char *)yyvs, (char *)yyvs1,
-                  size * (unsigned int) sizeof (*yyvsp));
-#ifdef YYLSP_NEEDED
-      yyls = (YYLTYPE *) YYSTACK_ALLOC (yystacksize * sizeof (*yylsp));
-      __yy_memcpy ((char *)yyls, (char *)yyls1,
-                  size * (unsigned int) sizeof (*yylsp));
-#endif
+
+      {
+       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 + size - 1;
-      yyvsp = yyvs + size - 1;
-#ifdef YYLSP_NEEDED
-      yylsp = yyls + size - 1;
+      yyssp = yyss + yysize - 1;
+      yyvsp = yyvs + yysize - 1;
+#if YYLSP_NEEDED
+      yylsp = yyls + yysize - 1;
 #endif
 
-#if YYDEBUG != 0
-      if (yydebug)
-       fprintf(stderr, "Stack size increased to %d\n", yystacksize);
-#endif
+      YYDPRINTF ((stderr, "Stack size increased to %lu\n",
+                 (unsigned long int) yystacksize));
 
       if (yyssp >= yyss + yystacksize - 1)
        YYABORT;
     }
 
-#if YYDEBUG != 0
-  if (yydebug)
-    fprintf(stderr, "Entering state %d\n", yystate);
-#endif
+  YYDPRINTF ((stderr, "Entering state %d\n", yystate));
 
   goto yybackup;
- yybackup:
+
+
+/*-----------.
+| yybackup.  |
+`-----------*/
+yybackup:
 
 /* Do appropriate processing given the current state.  */
 /* Read a lookahead token if we need one and don't already have one.  */
@@ -1560,10 +1726,7 @@ yynewstate:
 
   if (yychar == YYEMPTY)
     {
-#if YYDEBUG != 0
-      if (yydebug)
-       fprintf(stderr, "Reading a token: ");
-#endif
+      YYDPRINTF ((stderr, "Reading a token: "));
       yychar = YYLEX;
     }
 
@@ -1574,25 +1737,25 @@ yynewstate:
       yychar1 = 0;
       yychar = YYEOF;          /* Don't call YYLEX any more */
 
-#if YYDEBUG != 0
-      if (yydebug)
-       fprintf(stderr, "Now at end of input.\n");
-#endif
+      YYDPRINTF ((stderr, "Now at end of input.\n"));
     }
   else
     {
-      yychar1 = YYTRANSLATE(yychar);
+      yychar1 = YYTRANSLATE (yychar);
 
-#if YYDEBUG != 0
+#if YYDEBUG
+     /* We have to keep this `#if YYDEBUG', since we use variables
+       which are defined only if `YYDEBUG' is set.  */
       if (yydebug)
        {
-         fprintf (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
+         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
-         fprintf (stderr, ")\n");
+# endif
+         YYFPRINTF (stderr, ")\n");
        }
 #endif
     }
@@ -1624,74 +1787,96 @@ yynewstate:
     YYACCEPT;
 
   /* Shift the lookahead token.  */
-
-#if YYDEBUG != 0
-  if (yydebug)
-    fprintf(stderr, "Shifting token %d (%s), ", yychar, yytname[yychar1]);
-#endif
+  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;
-#ifdef YYLSP_NEEDED
+#if YYLSP_NEEDED
   *++yylsp = yylloc;
 #endif
 
-  /* count tokens shifted since error; after three, turn off error status.  */
-  if (yyerrstatus) yyerrstatus--;
+  /* Count tokens shifted since error; after three, turn off error
+     status.  */
+  if (yyerrstatus)
+    yyerrstatus--;
 
   yystate = yyn;
   goto yynewstate;
 
-/* Do the default action for the current state.  */
-yydefault:
 
+/*-----------------------------------------------------------.
+| yydefault -- do the default action for the current state.  |
+`-----------------------------------------------------------*/
+yydefault:
   yyn = yydefact[yystate];
   if (yyn == 0)
     goto yyerrlab;
+  goto yyreduce;
+
 
-/* Do a reduction.  yyn is the number of a rule to reduce with.  */
+/*-----------------------------.
+| yyreduce -- Do a reduction.  |
+`-----------------------------*/
 yyreduce:
+  /* yyn is the number of a rule to reduce with.  */
   yylen = yyr2[yyn];
-  if (yylen > 0)
-    yyval = yyvsp[1-yylen]; /* implement default value of the action */
 
-#if YYDEBUG != 0
+  /* 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 i;
+      int yyi;
 
-      fprintf (stderr, "Reducing via rule %d (line %d), ",
-              yyn, yyrline[yyn]);
+      YYFPRINTF (stderr, "Reducing via rule %d (line %d), ",
+                yyn, yyrline[yyn]);
 
       /* Print the symbols being reduced, and their result.  */
-      for (i = yyprhs[yyn]; yyrhs[i] > 0; i++)
-       fprintf (stderr, "%s ", yytname[yyrhs[i]]);
-      fprintf (stderr, " -> %s\n", yytname[yyr1[yyn]]);
+      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 1:
 #line 637 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 2:
 #line 638 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 3:
 #line 639 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 4:
 #line 640 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 5:
 #line 643 "parse.y"
 {
@@ -1702,8 +1887,8 @@ case 5:
                                               NULL);
                        nodes = g_list_append(nodes,node);
                        g_string_free(yyvsp[0].cbuf,FALSE);
-                                       ;
-    break;}
+                                       }
+    break;
 case 6:
 #line 652 "parse.y"
 {
@@ -1714,8 +1899,8 @@ case 6:
                                               NULL);
                        nodes = g_list_append(nodes,node);
                        g_string_free(yyvsp[0].cbuf,FALSE);
-                                       ;
-    break;}
+                                       }
+    break;
 case 7:
 #line 661 "parse.y"
 {
@@ -1726,8 +1911,8 @@ case 7:
                                               NULL);
                        nodes = g_list_append(nodes,node);
                        g_string_free(yyvsp[0].cbuf,FALSE);
-                                       ;
-    break;}
+                                       }
+    break;
 case 8:
 #line 670 "parse.y"
 {
@@ -1738,8 +1923,8 @@ case 8:
                                               NULL);
                        nodes = g_list_append(nodes,node);
                        g_string_free(yyvsp[0].cbuf,FALSE);
-                                       ;
-    break;}
+                                       }
+    break;
 case 9:
 #line 679 "parse.y"
 {
@@ -1750,8 +1935,8 @@ case 9:
                                               NULL);
                        nodes = g_list_append(nodes,node);
                        g_string_free(yyvsp[0].cbuf,FALSE);
-                                       ;
-    break;}
+                                       }
+    break;
 case 10:
 #line 688 "parse.y"
 {
@@ -1762,56 +1947,56 @@ case 10:
                                               NULL);
                        nodes = g_list_append(nodes,node);
                        g_string_free(yyvsp[0].cbuf,FALSE);
-                                       ;
-    break;}
+                                       }
+    break;
 case 11:
 #line 699 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 12:
 #line 700 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 13:
 #line 701 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 14:
 #line 702 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 15:
 #line 703 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 16:
 #line 704 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 17:
 #line 705 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 18:
 #line 706 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 19:
 #line 709 "parse.y"
 {
                        ((Class *)class)->nodes = class_nodes;
                        class_nodes = NULL;
                        nodes = g_list_append(nodes,class);
-                                               ;
-    break;}
+                                               }
+    break;
 case 20:
 #line 714 "parse.y"
 {
                        ((Class *)class)->nodes = NULL;
                        class_nodes = NULL;
                        nodes = g_list_append(nodes,class);
-                                               ;
-    break;}
+                                               }
+    break;
 case 21:
 #line 721 "parse.y"
 {
@@ -1825,8 +2010,8 @@ case 21:
                        bonobo_object_class = NULL;
                        chunk_size = NULL;
                        interfaces = NULL;
-                                               ;
-    break;}
+                                               }
+    break;
 case 23:
 #line 736 "parse.y"
 {
@@ -1840,8 +2025,8 @@ case 23:
                                yyerror(_("parse error"));
                                YYERROR;
                        }
-               ;
-    break;}
+               }
+    break;
 case 24:
 #line 748 "parse.y"
 {
@@ -1852,8 +2037,8 @@ case 24:
                                yyerror(_("parse error"));
                                YYERROR;
                        }
-               ;
-    break;}
+               }
+    break;
 case 25:
 #line 757 "parse.y"
 {
@@ -1867,20 +2052,20 @@ case 25:
                                yyerror(_("parse error"));
                                YYERROR;
                        }
-               ;
-    break;}
+               }
+    break;
 case 26:
 #line 771 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 27:
 #line 772 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 28:
 #line 775 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 29:
 #line 776 "parse.y"
 {
@@ -1891,8 +2076,8 @@ case 29:
                        }
                        g_free (yyvsp[-1].id);
                        last_added_method->bonobo_object_func = TRUE;
-                                               ;
-    break;}
+                                               }
+    break;
 case 30:
 #line 785 "parse.y"
 {
@@ -1906,40 +2091,40 @@ case 30:
                        node_set ((Node *)last_added_method,
                                  "interface:steal", yyvsp[-1].id,
                                  NULL);
-                                               ;
-    break;}
+                                               }
+    break;
 case 31:
 #line 797 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 32:
 #line 798 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 33:
 #line 799 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 34:
 #line 800 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 35:
 #line 803 "parse.y"
-{ the_scope = PUBLIC_SCOPE; ;
-    break;}
+{ the_scope = PUBLIC_SCOPE; }
+    break;
 case 36:
 #line 804 "parse.y"
-{ the_scope = PRIVATE_SCOPE; ;
-    break;}
+{ the_scope = PRIVATE_SCOPE; }
+    break;
 case 37:
 #line 805 "parse.y"
-{ the_scope = PROTECTED_SCOPE; ;
-    break;}
+{ the_scope = PROTECTED_SCOPE; }
+    break;
 case 38:
 #line 806 "parse.y"
-{ the_scope = CLASS_SCOPE; ;
-    break;}
+{ the_scope = CLASS_SCOPE; }
+    break;
 case 39:
 #line 809 "parse.y"
 {
@@ -1961,8 +2146,8 @@ case 39:
                                yyerror (_("parse error"));
                                YYERROR;
                        }
-                               ;
-    break;}
+                               }
+    break;
 case 40:
 #line 829 "parse.y"
 {
@@ -1986,58 +2171,58 @@ case 40:
                                yyerror (_("parse error"));
                                YYERROR;
                        }
-                                       ;
-    break;}
+                                       }
+    break;
 case 41:
 #line 853 "parse.y"
 {
                        initializer = yyvsp[0].id;
                        initializer_line = ccode_line;
-                               ;
-    break;}
+                               }
+    break;
 case 42:
 #line 857 "parse.y"
 {
                        initializer = (yyvsp[0].cbuf)->str;
                        initializer_line = ccode_line;
                        g_string_free(yyvsp[0].cbuf, FALSE);
-                               ;
-    break;}
+                               }
+    break;
 case 43:
 #line 865 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 44:
 #line 866 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 45:
 #line 867 "parse.y"
-{ destructor = NULL; ;
-    break;}
+{ destructor = NULL; }
+    break;
 case 46:
 #line 868 "parse.y"
-{ initializer = NULL; ;
-    break;}
+{ initializer = NULL; }
+    break;
 case 47:
 #line 869 "parse.y"
 {
                        destructor = NULL;
                        initializer = NULL;
-                                       ;
-    break;}
+                                       }
+    break;
 case 48:
 #line 875 "parse.y"
 {
                        push_variable(yyvsp[-2].id, the_scope,yyvsp[-4].line, NULL);
-                                               ;
-    break;}
+                                               }
+    break;
 case 49:
 #line 878 "parse.y"
 {
                        push_variable(yyvsp[-3].id, the_scope, yyvsp[-5].line, yyvsp[-2].id);
-                                               ;
-    break;}
+                                               }
+    break;
 case 50:
 #line 883 "parse.y"
 {
@@ -2107,8 +2292,8 @@ case 50:
                                g_free (yyvsp[-7].id);
                        } 
 
-                                               ;
-    break;}
+                                               }
+    break;
 case 51:
 #line 951 "parse.y"
 {
@@ -2164,8 +2349,8 @@ case 51:
                                                  arg->line_no);
                                g_free (yyvsp[-4].id);
                        } 
-                                               ;
-    break;}
+                                               }
+    break;
 case 52:
 #line 1005 "parse.y"
 {
@@ -2253,8 +2438,8 @@ case 52:
                        } 
 
                        class_nodes = g_list_append (class_nodes, node);
-                                               ;
-    break;}
+                                               }
+    break;
 case 53:
 #line 1093 "parse.y"
 {
@@ -2264,14 +2449,14 @@ case 53:
                                YYERROR;
                        }
                        yyval.id = yyvsp[-1].id;
-                                               ;
-    break;}
+                                               }
+    break;
 case 54:
 #line 1101 "parse.y"
 {
                        yyval.id = NULL;
-                                               ;
-    break;}
+                                               }
+    break;
 case 55:
 #line 1106 "parse.y"
 {
@@ -2321,8 +2506,8 @@ case 55:
                                                             property);
                                property = NULL;
                        }
-               ;
-    break;}
+               }
+    break;
 case 56:
 #line 1154 "parse.y"
 {
@@ -2360,8 +2545,8 @@ case 56:
                                                             property);
                                property = NULL;
                        }
-               ;
-    break;}
+               }
+    break;
 case 57:
 #line 1190 "parse.y"
 {
@@ -2377,28 +2562,28 @@ case 57:
                                                             property);
                                property = NULL;
                        }
-               ;
-    break;}
+               }
+    break;
 case 58:
 #line 1206 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 59:
 #line 1207 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 60:
 #line 1210 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 61:
 #line 1211 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 62:
 #line 1214 "parse.y"
-{ yyval.id = yyvsp[0].id; ;
-    break;}
+{ yyval.id = yyvsp[0].id; }
+    break;
 case 63:
 #line 1215 "parse.y"
 {
@@ -2410,16 +2595,16 @@ case 63:
                        g_free (yyvsp[-3].id);
                        yyval.id = g_strconcat ("_(", yyvsp[-1].id, ")", NULL);
                        g_free (yyvsp[-1].id);
-               ;
-    break;}
+               }
+    break;
 case 64:
 #line 1227 "parse.y"
-{ yyval.id = yyvsp[0].id; ;
-    break;}
+{ yyval.id = yyvsp[0].id; }
+    break;
 case 65:
 #line 1228 "parse.y"
-{ yyval.id = yyvsp[0].id; ;
-    break;}
+{ yyval.id = yyvsp[0].id; }
+    break;
 case 66:
 #line 1231 "parse.y"
 {
@@ -2427,8 +2612,8 @@ case 66:
                node_set ((Node *)property,
                          "nick:steal", yyvsp[0].id,
                          NULL);
-                 ;
-    break;}
+                 }
+    break;
 case 67:
 #line 1237 "parse.y"
 {
@@ -2436,8 +2621,8 @@ case 67:
                node_set ((Node *)property,
                          "blurb:steal", yyvsp[0].id,
                          NULL);
-                 ;
-    break;}
+                 }
+    break;
 case 68:
 #line 1243 "parse.y"
 {
@@ -2445,8 +2630,8 @@ case 68:
                node_set ((Node *)property,
                          "maximum:steal", yyvsp[0].id,
                          NULL);
-                 ;
-    break;}
+                 }
+    break;
 case 69:
 #line 1249 "parse.y"
 {
@@ -2454,8 +2639,8 @@ case 69:
                node_set ((Node *)property,
                          "minimum:steal", yyvsp[0].id,
                          NULL);
-                 ;
-    break;}
+                 }
+    break;
 case 70:
 #line 1255 "parse.y"
 {
@@ -2463,8 +2648,8 @@ case 70:
                node_set ((Node *)property,
                          "default_value:steal", yyvsp[0].id,
                          NULL);
-                 ;
-    break;}
+                 }
+    break;
 case 71:
 #line 1261 "parse.y"
 {
@@ -2472,8 +2657,8 @@ case 71:
                node_set ((Node *)property,
                          "flags:steal", yyvsp[0].list,
                          NULL);
-                 ;
-    break;}
+                 }
+    break;
 case 72:
 #line 1267 "parse.y"
 {
@@ -2482,8 +2667,8 @@ case 72:
                node_set ((Node *)property,
                          "ptype:steal", type,
                          NULL);
-                 ;
-    break;}
+                 }
+    break;
 case 73:
 #line 1274 "parse.y"
 {
@@ -2491,8 +2676,8 @@ case 73:
                node_set ((Node *)property,
                          "extra_gtktype:steal", yyvsp[0].id,
                          NULL);
-                 ;
-    break;}
+                 }
+    break;
 case 74:
 #line 1280 "parse.y"
 {
@@ -2500,8 +2685,8 @@ case 74:
                node_set ((Node *)property,
                          "extra_gtktype:steal", yyvsp[0].id,
                          NULL);
-                 ;
-    break;}
+                 }
+    break;
 case 75:
 #line 1286 "parse.y"
 {
@@ -2509,8 +2694,8 @@ case 75:
                node_set ((Node *)property,
                          "extra_gtktype:steal", yyvsp[0].id,
                          NULL);
-                 ;
-    break;}
+                 }
+    break;
 case 76:
 #line 1292 "parse.y"
 {
@@ -2518,8 +2703,8 @@ case 76:
                node_set ((Node *)property,
                          "extra_gtktype:steal", yyvsp[0].id,
                          NULL);
-                 ;
-    break;}
+                 }
+    break;
 case 77:
 #line 1298 "parse.y"
 {
@@ -2527,8 +2712,8 @@ case 77:
                node_set ((Node *)property,
                          "extra_gtktype:steal", yyvsp[0].id,
                          NULL);
-                 ;
-    break;}
+                 }
+    break;
 case 78:
 #line 1304 "parse.y"
 {
@@ -2536,8 +2721,8 @@ case 78:
                node_set ((Node *)property,
                          "extra_gtktype:steal", yyvsp[0].id,
                          NULL);
-                 ;
-    break;}
+                 }
+    break;
 case 79:
 #line 1310 "parse.y"
 {
@@ -2545,8 +2730,8 @@ case 79:
                node_set ((Node *)property,
                          "extra_gtktype:steal", yyvsp[0].id,
                          NULL);
-                 ;
-    break;}
+                 }
+    break;
 case 80:
 #line 1316 "parse.y"
 {
@@ -2554,8 +2739,8 @@ case 80:
                node_set ((Node *)property,
                          "extra_gtktype:steal", yyvsp[0].id,
                          NULL);
-                 ;
-    break;}
+                 }
+    break;
 case 81:
 #line 1322 "parse.y"
 {
@@ -2563,8 +2748,8 @@ case 81:
                node_set ((Node *)property,
                          "extra_gtktype:steal", yyvsp[0].id,
                          NULL);
-                 ;
-    break;}
+                 }
+    break;
 case 82:
 #line 1328 "parse.y"
 {
@@ -2572,8 +2757,8 @@ case 82:
                node_set ((Node *)property,
                          "extra_gtktype:steal", yyvsp[0].id,
                          NULL);
-                 ;
-    break;}
+                 }
+    break;
 case 83:
 #line 1334 "parse.y"
 {
@@ -2593,8 +2778,8 @@ case 83:
                        yyerror(_("parse error"));
                        YYERROR;
                }
-                 ;
-    break;}
+                 }
+    break;
 case 84:
 #line 1354 "parse.y"
 {
@@ -2605,35 +2790,35 @@ case 84:
                                YYERROR;
                        }
                        yyval.id = debool (yyvsp[-4].id);
-                                               ;
-    break;}
+                                               }
+    break;
 case 85:
 #line 1363 "parse.y"
 {
                        yyval.id = debool (yyvsp[0].id);
                        typestack = g_list_prepend(typestack,NULL);
-                                               ;
-    break;}
+                                               }
+    break;
 case 86:
 #line 1369 "parse.y"
-{ yyval.list = yyvsp[-1].list; ;
-    break;}
+{ yyval.list = yyvsp[-1].list; }
+    break;
 case 87:
 #line 1370 "parse.y"
-{ yyval.list = NULL; ;
-    break;}
+{ yyval.list = NULL; }
+    break;
 case 88:
 #line 1373 "parse.y"
 {
                        yyval.list = g_list_append(yyvsp[0].list,yyvsp[-2].id);
-                                               ;
-    break;}
+                                               }
+    break;
 case 89:
 #line 1376 "parse.y"
 {
                        yyval.list = g_list_append(NULL,yyvsp[0].id);
-                                               ;
-    break;}
+                                               }
+    break;
 case 90:
 #line 1382 "parse.y"
 {
@@ -2642,8 +2827,8 @@ case 90:
                                               "pointer:steal", yyvsp[0].id,
                                               NULL);
                        typestack = g_list_prepend(typestack,node);
-                                                       ;
-    break;}
+                                                       }
+    break;
 case 91:
 #line 1389 "parse.y"
 {
@@ -2651,174 +2836,174 @@ case 91:
                                               "name:steal", yyvsp[0].id,
                                               NULL);
                        typestack = g_list_prepend(typestack,node);
-                                                       ;
-    break;}
+                                                       }
+    break;
 case 92:
 #line 1398 "parse.y"
 {
                        yyval.id = yyvsp[0].id;
-                                                       ;
-    break;}
+                                                       }
+    break;
 case 93:
 #line 1401 "parse.y"
 {
                        yyval.id = yyvsp[0].id;
-                                                       ;
-    break;}
+                                                       }
+    break;
 case 94:
 #line 1404 "parse.y"
 {
                        yyval.id = g_strconcat("const ", yyvsp[0].id, NULL);
                        g_free(yyvsp[0].id);
-                                                       ;
-    break;}
+                                                       }
+    break;
 case 95:
 #line 1408 "parse.y"
 {
                        yyval.id = g_strconcat(yyvsp[-1].id, " const", NULL);
                        g_free(yyvsp[-1].id);
-                                                       ;
-    break;}
+                                                       }
+    break;
 case 96:
 #line 1412 "parse.y"
 {
                        yyval.id = g_strconcat(yyvsp[-1].id, " ", yyvsp[0].id, NULL);
                        g_free(yyvsp[0].id);
-                                                       ;
-    break;}
+                                                       }
+    break;
 case 97:
 #line 1416 "parse.y"
 {
                        yyval.id = g_strconcat("const ", yyvsp[-1].id, " ",
                                             yyvsp[0].id, NULL);
                        g_free(yyvsp[0].id);
-                                                       ;
-    break;}
+                                                       }
+    break;
 case 98:
 #line 1421 "parse.y"
 {
                        yyval.id = g_strconcat(yyvsp[-2].id, " ",
                                             yyvsp[-1].id, " const", NULL);
                        g_free(yyvsp[-1].id);
-                                                       ;
-    break;}
+                                                       }
+    break;
 case 99:
 #line 1429 "parse.y"
 {
                        yyval.id = g_strconcat(yyvsp[-1].id, " ", yyvsp[0].id, NULL);
                        g_free(yyvsp[0].id);
-                                                       ;
-    break;}
+                                                       }
+    break;
 case 100:
 #line 1433 "parse.y"
 {
                        yyval.id = g_strconcat(yyvsp[-1].id, " ", yyvsp[0].id, NULL);
                        g_free(yyvsp[-1].id);
                        g_free(yyvsp[0].id);
-                                                       ;
-    break;}
+                                                       }
+    break;
 case 101:
 #line 1438 "parse.y"
 {
                        yyval.id = g_strconcat("const ", yyvsp[0].id, NULL);
                        g_free(yyvsp[0].id);
-                                                       ;
-    break;}
+                                                       }
+    break;
 case 102:
 #line 1442 "parse.y"
 {
                        yyval.id = yyvsp[0].id;
-                                                       ;
-    break;}
+                                                       }
+    break;
 case 103:
 #line 1445 "parse.y"
 {
                        yyval.id = g_strconcat(yyvsp[-1].id, " const", NULL);
                        g_free(yyvsp[-1].id);
-                                                       ;
-    break;}
+                                                       }
+    break;
 case 104:
 #line 1449 "parse.y"
 {
                        yyval.id = g_strdup(yyvsp[0].id);
-                                                       ;
-    break;}
+                                                       }
+    break;
 case 105:
 #line 1452 "parse.y"
 {
                        yyval.id = g_strconcat(yyvsp[-1].id, " const", NULL);
-                                                       ;
-    break;}
+                                                       }
+    break;
 case 106:
 #line 1457 "parse.y"
-{ yyval.id = "void"; ;
-    break;}
+{ yyval.id = "void"; }
+    break;
 case 107:
 #line 1458 "parse.y"
-{ yyval.id = "char"; ;
-    break;}
+{ yyval.id = "char"; }
+    break;
 case 108:
 #line 1459 "parse.y"
-{ yyval.id = "short"; ;
-    break;}
+{ yyval.id = "short"; }
+    break;
 case 109:
 #line 1460 "parse.y"
-{ yyval.id = "int"; ;
-    break;}
+{ yyval.id = "int"; }
+    break;
 case 110:
 #line 1461 "parse.y"
-{ yyval.id = "long"; ;
-    break;}
+{ yyval.id = "long"; }
+    break;
 case 111:
 #line 1462 "parse.y"
-{ yyval.id = "float"; ;
-    break;}
+{ yyval.id = "float"; }
+    break;
 case 112:
 #line 1463 "parse.y"
-{ yyval.id = "double"; ;
-    break;}
+{ yyval.id = "double"; }
+    break;
 case 113:
 #line 1464 "parse.y"
-{ yyval.id = "signed"; ;
-    break;}
+{ yyval.id = "signed"; }
+    break;
 case 114:
 #line 1465 "parse.y"
-{ yyval.id = "unsigned"; ;
-    break;}
+{ yyval.id = "unsigned"; }
+    break;
 case 115:
 #line 1468 "parse.y"
-{ yyval.id = "struct"; ;
-    break;}
+{ yyval.id = "struct"; }
+    break;
 case 116:
 #line 1469 "parse.y"
-{ yyval.id = "union"; ;
-    break;}
+{ yyval.id = "union"; }
+    break;
 case 117:
 #line 1470 "parse.y"
-{ yyval.id = "enum"; ;
-    break;}
+{ yyval.id = "enum"; }
+    break;
 case 118:
 #line 1473 "parse.y"
-{ yyval.id = g_strdup("*"); ;
-    break;}
+{ yyval.id = g_strdup("*"); }
+    break;
 case 119:
 #line 1474 "parse.y"
-{ yyval.id = g_strdup("* const"); ;
-    break;}
+{ yyval.id = g_strdup("* const"); }
+    break;
 case 120:
 #line 1475 "parse.y"
 {
                                yyval.id = g_strconcat("*", yyvsp[0].id, NULL);
                                g_free(yyvsp[0].id);
-                                       ;
-    break;}
+                                       }
+    break;
 case 121:
 #line 1479 "parse.y"
 {
                                yyval.id = g_strconcat("* const", yyvsp[0].id, NULL);
                                g_free(yyvsp[0].id);
-                                       ;
-    break;}
+                                       }
+    break;
 case 122:
 #line 1486 "parse.y"
 {
@@ -2832,14 +3017,14 @@ case 122:
                                YYERROR;
                        }
                        g_free(yyvsp[-1].id);
-                                       ;
-    break;}
+                                       }
+    break;
 case 123:
 #line 1498 "parse.y"
 {
                        yyval.sigtype = SIGNAL_LAST_METHOD;
-                                       ;
-    break;}
+                                       }
+    break;
 case 124:
 #line 1504 "parse.y"
 {
@@ -2853,8 +3038,8 @@ case 124:
                                YYERROR;
                        }
                        g_free(yyvsp[-1].id);
-                                       ;
-    break;}
+                                       }
+    break;
 case 125:
 #line 1516 "parse.y"
 {
@@ -2868,47 +3053,47 @@ case 125:
                                YYERROR;
                        }
                        g_free(yyvsp[-2].id);
-                                       ;
-    break;}
+                                       }
+    break;
 case 126:
 #line 1528 "parse.y"
 {
                        yyval.sigtype = SIGNAL_LAST_METHOD;
-                                       ;
-    break;}
+                                       }
+    break;
 case 127:
 #line 1531 "parse.y"
 {
                        /* the_scope was default thus public */
                        the_scope = PUBLIC_SCOPE;
-                                       ;
-    break;}
+                                       }
+    break;
 case 128:
 #line 1537 "parse.y"
 {
                        gtktypes = g_list_prepend(gtktypes, debool (yyvsp[-3].id));
-                                               ;
-    break;}
+                                               }
+    break;
 case 129:
 #line 1542 "parse.y"
 {
                        gtktypes = g_list_append(gtktypes, debool (yyvsp[0].id));
-                                               ;
-    break;}
+                                               }
+    break;
 case 130:
 #line 1545 "parse.y"
 { 
                        gtktypes = g_list_append(gtktypes, debool (yyvsp[0].id));
-                                                       ;
-    break;}
+                                                       }
+    break;
 case 131:
 #line 1550 "parse.y"
-{ yyval.cbuf = yyvsp[0].cbuf; ;
-    break;}
+{ yyval.cbuf = yyvsp[0].cbuf; }
+    break;
 case 132:
 #line 1551 "parse.y"
-{ yyval.cbuf = NULL; ;
-    break;}
+{ yyval.cbuf = NULL; }
+    break;
 case 133:
 #line 1555 "parse.y"
 {
@@ -2926,8 +3111,8 @@ case 133:
                        push_function(the_scope, yyvsp[-7].sigtype,NULL,
                                      yyvsp[-5].id, yyvsp[0].cbuf,yyvsp[-9].line,
                                      ccode_line, vararg, yyvsp[-8].list);
-                                                                       ;
-    break;}
+                                                                       }
+    break;
 case 134:
 #line 1571 "parse.y"
 {
@@ -2945,8 +3130,8 @@ case 134:
                        push_function(the_scope, yyvsp[-7].sigtype, NULL,
                                      yyvsp[-5].id, yyvsp[0].cbuf, yyvsp[-9].line,
                                      ccode_line, vararg, yyvsp[-8].list);
-                                                                       ;
-    break;}
+                                                                       }
+    break;
 case 135:
 #line 1587 "parse.y"
 {
@@ -2964,8 +3149,8 @@ case 135:
                        push_function(the_scope, VIRTUAL_METHOD, NULL, yyvsp[-5].id,
                                      yyvsp[0].cbuf, yyvsp[-8].line,
                                      ccode_line, vararg, NULL);
-                                                                       ;
-    break;}
+                                                                       }
+    break;
 case 136:
 #line 1603 "parse.y"
 {
@@ -2983,8 +3168,8 @@ case 136:
                        push_function(the_scope, VIRTUAL_METHOD, NULL, yyvsp[-5].id,
                                      yyvsp[0].cbuf, yyvsp[-7].line,
                                      ccode_line, vararg, NULL);
-                                                                       ;
-    break;}
+                                                                       }
+    break;
 case 137:
 #line 1619 "parse.y"
 {
@@ -2997,8 +3182,8 @@ case 137:
                        push_function(PUBLIC_SCOPE, VIRTUAL_METHOD, NULL,
                                      yyvsp[-5].id, yyvsp[0].cbuf, yyvsp[-7].line,
                                      ccode_line, vararg, NULL);
-                                                                       ;
-    break;}
+                                                                       }
+    break;
 case 138:
 #line 1630 "parse.y"
 {
@@ -3006,8 +3191,8 @@ case 138:
                                      yyvsp[-5].id, yyvsp[0].cbuf,
                                      yyvsp[-10].line, ccode_line,
                                      vararg, NULL);
-                                                                       ;
-    break;}
+                                                                       }
+    break;
 case 139:
 #line 1636 "parse.y"
 {
@@ -3019,8 +3204,8 @@ case 139:
                        push_function(the_scope, REGULAR_METHOD, NULL, yyvsp[-5].id,
                                      yyvsp[0].cbuf, yyvsp[-7].line, ccode_line,
                                      vararg, NULL);
-                                                               ;
-    break;}
+                                                               }
+    break;
 case 140:
 #line 1646 "parse.y"
 {
@@ -3043,8 +3228,8 @@ case 140:
                                          "class_init)"));
                                YYERROR;
                        }
-                                               ;
-    break;}
+                                               }
+    break;
 case 141:
 #line 1669 "parse.y"
 {
@@ -3057,8 +3242,8 @@ case 141:
                                YYERROR;
                        }
                        g_free(yyvsp[-1].id);
-                                       ;
-    break;}
+                                       }
+    break;
 case 142:
 #line 1680 "parse.y"
 {
@@ -3079,30 +3264,30 @@ case 142:
                        }
                        g_free(yyvsp[-3].id);
                        g_free(yyvsp[-1].id);
-                                               ;
-    break;}
+                                               }
+    break;
 case 143:
 #line 1699 "parse.y"
 {
                        g_free(onerror); onerror = NULL;
                        g_free(defreturn); defreturn = NULL;
-                                       ;
-    break;}
+                                       }
+    break;
 case 144:
 #line 1705 "parse.y"
-{ yyval.id = yyvsp[0].id; ;
-    break;}
+{ yyval.id = yyvsp[0].id; }
+    break;
 case 145:
 #line 1706 "parse.y"
 {
                        yyval.id = (yyvsp[1].cbuf)->str;
                        g_string_free(yyvsp[1].cbuf, FALSE);
-                                       ;
-    break;}
+                                       }
+    break;
 case 146:
 #line 1712 "parse.y"
-{ vararg = FALSE; has_self = FALSE; ;
-    break;}
+{ vararg = FALSE; has_self = FALSE; }
+    break;
 case 147:
 #line 1713 "parse.y"
 {
@@ -3115,8 +3300,8 @@ case 147:
                                yyerror(_("parse error"));
                                YYERROR;
                        }
-                                               ;
-    break;}
+                                               }
+    break;
 case 148:
 #line 1724 "parse.y"
 {
@@ -3129,8 +3314,8 @@ case 148:
                                yyerror(_("parse error"));
                                YYERROR;
                        }
-                                               ;
-    break;}
+                                               }
+    break;
 case 149:
 #line 1735 "parse.y"
 {
@@ -3143,8 +3328,8 @@ case 149:
                                yyerror(_("parse error"));
                                YYERROR;
                        }
-                                               ;
-    break;}
+                                               }
+    break;
 case 150:
 #line 1746 "parse.y"
 {
@@ -3156,8 +3341,8 @@ case 150:
                                yyerror(_("parse error"));
                                YYERROR;
                        }
-                                       ;
-    break;}
+                                       }
+    break;
 case 151:
 #line 1756 "parse.y"
 {
@@ -3169,8 +3354,8 @@ case 151:
                                yyerror(_("parse error"));
                                YYERROR;
                        }
-                                       ;
-    break;}
+                                       }
+    break;
 case 152:
 #line 1766 "parse.y"
 {
@@ -3182,40 +3367,40 @@ case 152:
                                yyerror(_("parse error"));
                                YYERROR;
                        }
-                                       ;
-    break;}
+                                       }
+    break;
 case 153:
 #line 1776 "parse.y"
-{ has_self = FALSE; ;
-    break;}
+{ has_self = FALSE; }
+    break;
 case 154:
 #line 1779 "parse.y"
-{ vararg = TRUE; ;
-    break;}
+{ vararg = TRUE; }
+    break;
 case 155:
 #line 1780 "parse.y"
-{ vararg = FALSE; ;
-    break;}
+{ vararg = FALSE; }
+    break;
 case 156:
 #line 1783 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 157:
 #line 1784 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 158:
 #line 1787 "parse.y"
 {
                        push_funcarg(yyvsp[0].id,NULL);
-                                                               ;
-    break;}
+                                                               }
+    break;
 case 159:
 #line 1790 "parse.y"
 {
                        push_funcarg(yyvsp[-1].id,yyvsp[0].id);
-                                                               ;
-    break;}
+                                                               }
+    break;
 case 160:
 #line 1793 "parse.y"
 {
@@ -3225,8 +3410,8 @@ case 160:
                        }
                        g_free(yyvsp[-2].id);
                        push_funcarg(yyvsp[-4].id,NULL);
-                                                               ;
-    break;}
+                                                               }
+    break;
 case 161:
 #line 1801 "parse.y"
 {
@@ -3236,16 +3421,16 @@ case 161:
                        }
                        g_free(yyvsp[-2].id);
                        push_funcarg(yyvsp[-5].id,yyvsp[-4].id);
-                                                               ;
-    break;}
+                                                               }
+    break;
 case 162:
 #line 1811 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 163:
 #line 1812 "parse.y"
-{ ; ;
-    break;}
+{ ; }
+    break;
 case 164:
 #line 1815 "parse.y"
 {
@@ -3264,8 +3449,8 @@ case 164:
                                YYERROR;
                        }
                        g_free(yyvsp[0].id);
-                                       ;
-    break;}
+                                       }
+    break;
 case 165:
 #line 1832 "parse.y"
 {
@@ -3274,8 +3459,8 @@ case 165:
                                               "number:steal", yyvsp[0].id,
                                               NULL);
                        checks = g_list_append(checks,node);
-                                       ;
-    break;}
+                                       }
+    break;
 case 166:
 #line 1839 "parse.y"
 {
@@ -3284,8 +3469,8 @@ case 166:
                                               "number:steal", yyvsp[0].id,
                                               NULL);
                        checks = g_list_append(checks,node);
-                                       ;
-    break;}
+                                       }
+    break;
 case 167:
 #line 1846 "parse.y"
 {
@@ -3294,8 +3479,8 @@ case 167:
                                               "number:steal", yyvsp[0].id,
                                               NULL);
                        checks = g_list_append(checks,node);
-                                       ;
-    break;}
+                                       }
+    break;
 case 168:
 #line 1853 "parse.y"
 {
@@ -3304,8 +3489,8 @@ case 168:
                                               "number:steal", yyvsp[0].id,
                                               NULL);
                        checks = g_list_append(checks,node);
-                                       ;
-    break;}
+                                       }
+    break;
 case 169:
 #line 1860 "parse.y"
 {
@@ -3314,8 +3499,8 @@ case 169:
                                               "number:steal", yyvsp[0].id,
                                               NULL);
                        checks = g_list_append(checks,node);
-                                       ;
-    break;}
+                                       }
+    break;
 case 170:
 #line 1867 "parse.y"
 {
@@ -3324,8 +3509,8 @@ case 170:
                                               "number:steal", yyvsp[0].id,
                                               NULL);
                        checks = g_list_append(checks,node);
-                                       ;
-    break;}
+                                       }
+    break;
 case 171:
 #line 1876 "parse.y"
 {
@@ -3336,8 +3521,8 @@ case 171:
                                               NULL);
                        enum_vals = NULL;
                        nodes = g_list_append (nodes, node);
-                       ;
-    break;}
+                       }
+    break;
 case 172:
 #line 1885 "parse.y"
 {
@@ -3348,16 +3533,16 @@ case 172:
                                               NULL);
                        enum_vals = NULL;
                        nodes = g_list_append (nodes, node);
-                       ;
-    break;}
+                       }
+    break;
 case 173:
 #line 1896 "parse.y"
-{;;
-    break;}
+{;}
+    break;
 case 174:
 #line 1897 "parse.y"
-{;;
-    break;}
+{;}
+    break;
 case 175:
 #line 1900 "parse.y"
 {
@@ -3379,8 +3564,8 @@ case 175:
                                         "value:steal", num,
                                         NULL);
                        enum_vals = g_list_append (enum_vals, node);
-                       ;
-    break;}
+                       }
+    break;
 case 176:
 #line 1920 "parse.y"
 {
@@ -3390,8 +3575,8 @@ case 176:
                                         "name:steal", yyvsp[0].id,
                                         NULL);
                        enum_vals = g_list_append (enum_vals, node);
-       ;
-    break;}
+       }
+    break;
 case 177:
 #line 1930 "parse.y"
 {
@@ -3402,8 +3587,8 @@ case 177:
                                               NULL);
                        flag_vals = NULL;
                        nodes = g_list_append (nodes, node);
-                       ;
-    break;}
+                       }
+    break;
 case 178:
 #line 1939 "parse.y"
 {
@@ -3414,20 +3599,20 @@ case 178:
                                               NULL);
                        flag_vals = NULL;
                        nodes = g_list_append (nodes, node);
-                       ;
-    break;}
+                       }
+    break;
 case 179:
 #line 1950 "parse.y"
 {
                        flag_vals = g_list_append (flag_vals, yyvsp[0].id);
-               ;
-    break;}
+               }
+    break;
 case 180:
 #line 1953 "parse.y"
 {
                        flag_vals = g_list_append (flag_vals, yyvsp[0].id);
-               ;
-    break;}
+               }
+    break;
 case 181:
 #line 1958 "parse.y"
 {
@@ -3438,8 +3623,8 @@ case 181:
                                               NULL);
                        error_vals = NULL;
                        nodes = g_list_append (nodes, node);
-                       ;
-    break;}
+                       }
+    break;
 case 182:
 #line 1967 "parse.y"
 {
@@ -3450,83 +3635,69 @@ case 182:
                                               NULL);
                        error_vals = NULL;
                        nodes = g_list_append (nodes, node);
-                       ;
-    break;}
+                       }
+    break;
 case 183:
 #line 1978 "parse.y"
 {
                        error_vals = g_list_append (error_vals, yyvsp[0].id);
-               ;
-    break;}
+               }
+    break;
 case 184:
 #line 1981 "parse.y"
 {
                        error_vals = g_list_append (error_vals, yyvsp[0].id);
-               ;
-    break;}
+               }
+    break;
 case 185:
 #line 1987 "parse.y"
-{ yyval.id = yyvsp[0].id; ;
-    break;}
+{ yyval.id = yyvsp[0].id; }
+    break;
 case 186:
 #line 1988 "parse.y"
 {
                        yyval.id = g_strconcat("-",yyvsp[0].id,NULL);
                        g_free(yyvsp[0].id);
-                                       ;
-    break;}
+                                       }
+    break;
 case 187:
 #line 1992 "parse.y"
-{ yyval.id = yyvsp[0].id; ;
-    break;}
+{ yyval.id = yyvsp[0].id; }
+    break;
 case 188:
 #line 1993 "parse.y"
-{ yyval.id = yyvsp[0].id; ;
-    break;}
+{ yyval.id = yyvsp[0].id; }
+    break;
 }
-   /* the action file gets copied in in place of this dollarsign */
-#line 543 "/usr/lib/bison.simple"
+
+#line 705 "/usr/share/bison/bison.simple"
+
 \f
   yyvsp -= yylen;
   yyssp -= yylen;
-#ifdef YYLSP_NEEDED
+#if YYLSP_NEEDED
   yylsp -= yylen;
 #endif
 
-#if YYDEBUG != 0
+#if YYDEBUG
   if (yydebug)
     {
-      short *ssp1 = yyss - 1;
-      fprintf (stderr, "state stack now");
-      while (ssp1 != yyssp)
-       fprintf (stderr, " %d", *++ssp1);
-      fprintf (stderr, "\n");
+      short *yyssp1 = yyss - 1;
+      YYFPRINTF (stderr, "state stack now");
+      while (yyssp1 != yyssp)
+       YYFPRINTF (stderr, " %d", *++yyssp1);
+      YYFPRINTF (stderr, "\n");
     }
 #endif
 
   *++yyvsp = yyval;
-
-#ifdef YYLSP_NEEDED
-  yylsp++;
-  if (yylen == 0)
-    {
-      yylsp->first_line = yylloc.first_line;
-      yylsp->first_column = yylloc.first_column;
-      yylsp->last_line = (yylsp-1)->last_line;
-      yylsp->last_column = (yylsp-1)->last_column;
-      yylsp->text = 0;
-    }
-  else
-    {
-      yylsp->last_line = (yylsp+yylen-1)->last_line;
-      yylsp->last_column = (yylsp+yylen-1)->last_column;
-    }
+#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.  */
+  /* 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];
 
@@ -3538,10 +3709,13 @@ case 188:
 
   goto yynewstate;
 
-yyerrlab:   /* here on detecting error */
 
-  if (! yyerrstatus)
-    /* If not already recovering from an error, report this error.  */
+/*------------------------------------.
+| yyerrlab -- here on detecting error |
+`------------------------------------*/
+yyerrlab:
+  /* If not already recovering from an error, report this error.  */
+  if (!yyerrstatus)
     {
       ++yynerrs;
 
@@ -3550,102 +3724,121 @@ yyerrlab:   /* here on detecting error */
 
       if (yyn > YYFLAG && yyn < YYLAST)
        {
-         int size = 0;
-         char *msg;
-         int x, count;
-
-         count = 0;
-         /* Start X at -yyn if nec to avoid negative indexes in yycheck.  */
-         for (x = (yyn < 0 ? -yyn : 0);
-              x < (sizeof(yytname) / sizeof(char *)); x++)
-           if (yycheck[x + yyn] == x)
-             size += strlen(yytname[x]) + 15, count++;
-         msg = (char *) malloc(size + 15);
-         if (msg != 0)
+         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)
            {
-             strcpy(msg, "parse error");
+             char *yyp = yystpcpy (yymsg, "parse error, unexpected ");
+             yyp = yystpcpy (yyp, yytname[YYTRANSLATE (yychar)]);
 
-             if (count < 5)
+             if (yycount < 5)
                {
-                 count = 0;
-                 for (x = (yyn < 0 ? -yyn : 0);
-                      x < (sizeof(yytname) / sizeof(char *)); x++)
-                   if (yycheck[x + yyn] == x)
+                 yycount = 0;
+                 for (yyx = yyn < 0 ? -yyn : 0;
+                      yyx < (int) (sizeof (yytname) / sizeof (char *));
+                      yyx++)
+                   if (yycheck[yyx + yyn] == yyx)
                      {
-                       strcat(msg, count == 0 ? ", expecting `" : " or `");
-                       strcat(msg, yytname[x]);
-                       strcat(msg, "'");
-                       count++;
+                       const char *yyq = ! yycount ? ", expecting " : " or ";
+                       yyp = yystpcpy (yyp, yyq);
+                       yyp = yystpcpy (yyp, yytname[yyx]);
+                       yycount++;
                      }
                }
-             yyerror(msg);
-             free(msg);
+             yyerror (yymsg);
+             YYSTACK_FREE (yymsg);
            }
          else
-           yyerror ("parse error; also virtual memory exceeded");
+           yyerror ("parse error; also virtual memory exhausted");
        }
       else
-#endif /* YYERROR_VERBOSE */
-       yyerror("parse error");
+#endif /* defined (YYERROR_VERBOSE) */
+       yyerror ("parse error");
     }
-
   goto yyerrlab1;
-yyerrlab1:   /* here on error raised explicitly by an action */
 
+
+/*--------------------------------------------------.
+| 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.  */
+      /* 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;
-
-#if YYDEBUG != 0
-      if (yydebug)
-       fprintf(stderr, "Discarding token %d (%s).\n", yychar, yytname[yychar1]);
-#endif
-
+      YYDPRINTF ((stderr, "Discarding token %d (%s).\n",
+                 yychar, yytname[yychar1]));
       yychar = YYEMPTY;
     }
 
-  /* Else will try to reuse lookahead token
-     after shifting the error token.  */
+  /* 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 -- 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.  */
-  yyn = yydefact[yystate];  /* If its default is to accept any token, ok.  Otherwise pop it.*/
-  if (yyn) goto yydefault;
+
+  /* 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 */
 
-  if (yyssp == yyss) YYABORT;
+/*---------------------------------------------------------------.
+| yyerrpop -- pop the current state because it cannot handle the |
+| error token                                                    |
+`---------------------------------------------------------------*/
+yyerrpop:
+  if (yyssp == yyss)
+    YYABORT;
   yyvsp--;
   yystate = *--yyssp;
-#ifdef YYLSP_NEEDED
+#if YYLSP_NEEDED
   yylsp--;
 #endif
 
-#if YYDEBUG != 0
+#if YYDEBUG
   if (yydebug)
     {
-      short *ssp1 = yyss - 1;
-      fprintf (stderr, "Error: state stack now");
-      while (ssp1 != yyssp)
-       fprintf (stderr, " %d", *++ssp1);
-      fprintf (stderr, "\n");
+      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;
@@ -3668,42 +3861,45 @@ yyerrhandle:
   if (yyn == YYFINAL)
     YYACCEPT;
 
-#if YYDEBUG != 0
-  if (yydebug)
-    fprintf(stderr, "Shifting error token, ");
-#endif
+  YYDPRINTF ((stderr, "Shifting error token, "));
 
   *++yyvsp = yylval;
-#ifdef YYLSP_NEEDED
+#if YYLSP_NEEDED
   *++yylsp = yylloc;
 #endif
 
   yystate = yyn;
   goto yynewstate;
 
- yyacceptlab:
-  /* YYACCEPT comes here.  */
-  if (yyfree_stacks)
-    {
-      free (yyss);
-      free (yyvs);
-#ifdef YYLSP_NEEDED
-      free (yyls);
-#endif
-    }
-  return 0;
 
- yyabortlab:
-  /* YYABORT comes here.  */
-  if (yyfree_stacks)
-    {
-      free (yyss);
-      free (yyvs);
-#ifdef YYLSP_NEEDED
-      free (yyls);
+/*-------------------------------------.
+| 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 1;
+  return yyresult;
 }
 #line 1996 "parse.y"
 
index af83451aa4ac98ea889dbc2cf0e51ac8897a4256..e9453708008006971e6c4b141f46c872e92700c1 100644 (file)
@@ -1,60 +1,69 @@
+#ifndef BISON_Y_TAB_H
+# define BISON_Y_TAB_H
+
+#ifndef YYSTYPE
 typedef union {
        char *id;
        GString *cbuf;
        GList *list;
        int line;
        int sigtype;
-} YYSTYPE;
-#define        CLASS   257
-#define        FROM    258
-#define        CONST   259
-#define        VOID    260
-#define        STRUCT  261
-#define        UNION   262
-#define        ENUM    263
-#define        THREEDOTS       264
-#define        SIGNED  265
-#define        UNSIGNED        266
-#define        LONG    267
-#define        SHORT   268
-#define        INT     269
-#define        FLOAT   270
-#define        DOUBLE  271
-#define        CHAR    272
-#define        TOKEN   273
-#define        NUMBER  274
-#define        TYPETOKEN       275
-#define        ARRAY_DIM       276
-#define        SINGLE_CHAR     277
-#define        CCODE   278
-#define        HTCODE  279
-#define        PHCODE  280
-#define        HCODE   281
-#define        ACODE   282
-#define        ATCODE  283
-#define        STRING  284
-#define        PUBLIC  285
-#define        PRIVATE 286
-#define        PROTECTED       287
-#define        CLASSWIDE       288
-#define        PROPERTY        289
-#define        ARGUMENT        290
-#define        VIRTUAL 291
-#define        SIGNAL  292
-#define        OVERRIDE        293
-#define        NICK    294
-#define        BLURB   295
-#define        MAXIMUM 296
-#define        MINIMUM 297
-#define        DEFAULT_VALUE   298
-#define        ERROR   299
-#define        FLAGS   300
-#define        TYPE    301
-#define        FLAGS_TYPE      302
-#define        ENUM_TYPE       303
-#define        PARAM_TYPE      304
-#define        BOXED_TYPE      305
-#define        OBJECT_TYPE     306
+} yystype;
+# define YYSTYPE yystype
+# define YYSTYPE_IS_TRIVIAL 1
+#endif
+# define       CLASS   257
+# define       FROM    258
+# define       CONST   259
+# define       VOID    260
+# define       STRUCT  261
+# define       UNION   262
+# define       ENUM    263
+# define       THREEDOTS       264
+# define       SIGNED  265
+# define       UNSIGNED        266
+# define       LONG    267
+# define       SHORT   268
+# define       INT     269
+# define       FLOAT   270
+# define       DOUBLE  271
+# define       CHAR    272
+# define       TOKEN   273
+# define       NUMBER  274
+# define       TYPETOKEN       275
+# define       ARRAY_DIM       276
+# define       SINGLE_CHAR     277
+# define       CCODE   278
+# define       HTCODE  279
+# define       PHCODE  280
+# define       HCODE   281
+# define       ACODE   282
+# define       ATCODE  283
+# define       STRING  284
+# define       PUBLIC  285
+# define       PRIVATE 286
+# define       PROTECTED       287
+# define       CLASSWIDE       288
+# define       PROPERTY        289
+# define       ARGUMENT        290
+# define       VIRTUAL 291
+# define       SIGNAL  292
+# define       OVERRIDE        293
+# define       NICK    294
+# define       BLURB   295
+# define       MAXIMUM 296
+# define       MINIMUM 297
+# define       DEFAULT_VALUE   298
+# define       ERROR   299
+# define       FLAGS   300
+# define       TYPE    301
+# define       FLAGS_TYPE      302
+# define       ENUM_TYPE       303
+# define       PARAM_TYPE      304
+# define       BOXED_TYPE      305
+# define       OBJECT_TYPE     306
 
 
 extern YYSTYPE yylval;
+
+#endif /* not BISON_Y_TAB_H */
index c7c0847e8d02a0333a72457cea04d80a8f59fa2e..e6600bf5538b48e749206a78bbd69a340507b752 100644 (file)
@@ -535,7 +535,7 @@ property_link_and_export (Node *node)
                                              root, prop->name,
                                              prop->extra_gtktype,
                                              root, prop->name);
-                       get = g_strdup_printf("g_value_set_object (VAL, %s->%s);",
+                       get = g_strdup_printf("g_value_set_boxed (VAL, %s->%s);",
                                              root, prop->name);
                } else {
                        char *set_func;
index 9dca3c87f57ef7994f3fc3813142ebf13a606ab7..776c035cc20cdb1454b7fc47f89b6e841a80c713 100644 (file)
@@ -108,9 +108,13 @@ class Test:Object from G:Object
        argument POINTER testingstring stringlink;
 
        public Test:Object * testingobj
-               destroywith g_object_unref;
+               unrefwith g_object_unref;
        argument POINTER testingobj objectlink;
 
+       public Test:Object * testingobjfoo
+               unref { if (VAR) g_object_unref (VAR); };
+       argument POINTER testingobjfoo objectlink;
+
        classwide int foo = 20;
        argument INT foo link;