]> git.draconx.ca Git - gob-dx.git/commitdiff
Release 2.0.20 upstream-2.x v2.0.20
authorGeorge Lebl <jirka@5z.com>
Sun, 15 Dec 2013 05:43:00 +0000 (21:43 -0800)
committerNick Bowler <nbowler@draconx.ca>
Tue, 19 Feb 2019 17:35:26 +0000 (12:35 -0500)
29 files changed:
ChangeLog
INSTALL
Makefile.in
NEWS
aclocal.m4
configure
configure.in
depcomp
doc/Makefile.in
doc/gob2.1.in
examples/Makefile.in
gob2.spec
install-sh
missing
src/Makefile.am
src/Makefile.in
src/lexer.c
src/lexer.l
src/main.c
src/parse.c
src/parse.h
src/parse.y
src/test.gob
src/treefuncs.c
src/treefuncs.def
src/treefuncs.h
src/util.c
src/util.h
ylwrap

index e12228ee00ab7f590ea0c5145878feddc3b85121..15fa3224b2e01870e692d2bb96a3f6e12630d54f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+Sat Dec 14 14:56:00 2013  Jiri (George) Lebl <jirka@5z.com>
+
+       * Release 2.0.20
+
+Sat Dec 14 14:55:05 2013  Jiri (George) Lebl <jirka@5z.com>
+
+       * src/*.[ch]: apply patches from Pedro L. Lucas to implement support
+         for gtk3 and add names to properties and signals
+
+       * NEWS: update
+
 Tue Dec 18 21:13:09 2012  Jiri (George) Lebl <jirka@5z.com>
 
        * Release 2.0.19
diff --git a/INSTALL b/INSTALL
index a1e89e18ad20c227845f2099cb9894c799265d19..007e9396d0a2492cd2d6e17d42f359655dfe0b5e 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -1,7 +1,7 @@
 Installation Instructions
 *************************
 
-Copyright (C) 1994-1996, 1999-2002, 2004-2011 Free Software Foundation,
+Copyright (C) 1994-1996, 1999-2002, 2004-2013 Free Software Foundation,
 Inc.
 
    Copying and distribution of this file, with or without modification,
@@ -309,9 +309,10 @@ causes the specified `gcc' to be used as the C compiler (unless it is
 overridden in the site shell script).
 
 Unfortunately, this technique does not work for `CONFIG_SHELL' due to
-an Autoconf bug.  Until the bug is fixed you can use this workaround:
+an Autoconf limitation.  Until the limitation is lifted, you can use
+this workaround:
 
-     CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
+     CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash
 
 `configure' Invocation
 ======================
@@ -367,4 +368,3 @@ operates.
 
 `configure' also accepts some other, not widely useful, options.  Run
 `configure --help' for more details.
-
index 7ffb420b951d3acb2168ca1268a43adec7c55b77..c3849896c88c6224581d4b43755259fb2041587b 100644 (file)
@@ -1,9 +1,8 @@
-# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 @SET_MAKE@
 
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -50,10 +77,11 @@ NORMAL_UNINSTALL = :
 PRE_UNINSTALL = :
 POST_UNINSTALL = :
 subdir = .
-DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
-       $(srcdir)/Makefile.in $(srcdir)/config.h.in \
-       $(srcdir)/gob2.spec.in $(top_srcdir)/configure AUTHORS COPYING \
-       ChangeLog INSTALL NEWS TODO depcomp install-sh missing ylwrap
+DIST_COMMON = INSTALL NEWS README AUTHORS ChangeLog \
+       $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+       $(top_srcdir)/configure $(am__configure_deps) \
+       $(srcdir)/config.h.in $(srcdir)/gob2.spec.in COPYING TODO \
+       depcomp install-sh missing ylwrap
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/configure.in
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
@@ -64,15 +92,28 @@ mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = config.h
 CONFIG_CLEAN_FILES = gob2.spec
 CONFIG_CLEAN_VPATH_FILES =
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN     " $@;
+am__v_GEN_1 = 
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 = 
 SOURCES =
 DIST_SOURCES =
-RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
-       html-recursive info-recursive install-data-recursive \
-       install-dvi-recursive install-exec-recursive \
-       install-html-recursive install-info-recursive \
-       install-pdf-recursive install-ps-recursive install-recursive \
-       installcheck-recursive installdirs-recursive pdf-recursive \
-       ps-recursive uninstall-recursive
+RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
+       ctags-recursive dvi-recursive html-recursive info-recursive \
+       install-data-recursive install-dvi-recursive \
+       install-exec-recursive install-html-recursive \
+       install-info-recursive install-pdf-recursive \
+       install-ps-recursive install-recursive installcheck-recursive \
+       installdirs-recursive pdf-recursive ps-recursive \
+       tags-recursive uninstall-recursive
 am__can_run_installinfo = \
   case $$AM_UPDATE_INFO_DIR in \
     n|no|NO) false;; \
@@ -109,11 +150,33 @@ am__installdirs = "$(DESTDIR)$(m4dir)"
 DATA = $(m4_DATA)
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive        \
   distclean-recursive maintainer-clean-recursive
-AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
-       $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
-       distdir dist dist-all distcheck
+am__recursive_targets = \
+  $(RECURSIVE_TARGETS) \
+  $(RECURSIVE_CLEAN_TARGETS) \
+  $(am__extra_recursive_targets)
+AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
+       cscope distdir dist dist-all distcheck
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
+       $(LISP)config.h.in
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
+CSCOPE = cscope
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 distdir = $(PACKAGE)-$(VERSION)
 top_distdir = $(distdir)
@@ -123,6 +186,7 @@ am__remove_distdir = \
       && rm -rf "$(distdir)" \
       || { sleep 5 && rm -rf "$(distdir)"; }; \
   else :; fi
+am__post_remove_distdir = $(am__remove_distdir)
 am__relativize = \
   dir0=`pwd`; \
   sed_first='s,^\([^/]*\)/.*$$,\1,'; \
@@ -150,12 +214,14 @@ am__relativize = \
   reldir="$$dir2"
 DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.xz
 GZIP_ENV = --best
+DIST_TARGETS = dist-xz dist-gzip
 distuninstallcheck_listfiles = find . -type f -print
 am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
   | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
 distcleancheck_listfiles = find . -type f -print
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 AUTOCONF = @AUTOCONF@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
@@ -337,22 +403,25 @@ uninstall-m4DATA:
        dir='$(DESTDIR)$(m4dir)'; $(am__uninstall_files_from_dir)
 
 # This directory's subdirectories are mostly independent; you can cd
-# into them and run `make' without going through this Makefile.
-# To change the values of `make' variables: instead of editing Makefiles,
-# (1) if the variable is set in `config.status', edit `config.status'
-#     (which will cause the Makefiles to be regenerated when you run `make');
-# (2) otherwise, pass the desired values on the `make' command line.
-$(RECURSIVE_TARGETS):
-       @fail= failcom='exit 1'; \
-       for f in x $$MAKEFLAGS; do \
-         case $$f in \
-           *=* | --[!k]*);; \
-           *k*) failcom='fail=yes';; \
-         esac; \
-       done; \
+# into them and run 'make' without going through this Makefile.
+# To change the values of 'make' variables: instead of editing Makefiles,
+# (1) if the variable is set in 'config.status', edit 'config.status'
+#     (which will cause the Makefiles to be regenerated when you run 'make');
+# (2) otherwise, pass the desired values on the 'make' command line.
+$(am__recursive_targets):
+       @fail=; \
+       if $(am__make_keepgoing); then \
+         failcom='fail=yes'; \
+       else \
+         failcom='exit 1'; \
+       fi; \
        dot_seen=no; \
        target=`echo $@ | sed s/-recursive//`; \
-       list='$(SUBDIRS)'; for subdir in $$list; do \
+       case "$@" in \
+         distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+         *) list='$(SUBDIRS)' ;; \
+       esac; \
+       for subdir in $$list; do \
          echo "Making $$target in $$subdir"; \
          if test "$$subdir" = "."; then \
            dot_seen=yes; \
@@ -367,57 +436,12 @@ $(RECURSIVE_TARGETS):
          $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
        fi; test -z "$$fail"
 
-$(RECURSIVE_CLEAN_TARGETS):
-       @fail= failcom='exit 1'; \
-       for f in x $$MAKEFLAGS; do \
-         case $$f in \
-           *=* | --[!k]*);; \
-           *k*) failcom='fail=yes';; \
-         esac; \
-       done; \
-       dot_seen=no; \
-       case "$@" in \
-         distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
-         *) list='$(SUBDIRS)' ;; \
-       esac; \
-       rev=''; for subdir in $$list; do \
-         if test "$$subdir" = "."; then :; else \
-           rev="$$subdir $$rev"; \
-         fi; \
-       done; \
-       rev="$$rev ."; \
-       target=`echo $@ | sed s/-recursive//`; \
-       for subdir in $$rev; do \
-         echo "Making $$target in $$subdir"; \
-         if test "$$subdir" = "."; then \
-           local_target="$$target-am"; \
-         else \
-           local_target="$$target"; \
-         fi; \
-         ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-         || eval $$failcom; \
-       done && test -z "$$fail"
-tags-recursive:
-       list='$(SUBDIRS)'; for subdir in $$list; do \
-         test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
-       done
-ctags-recursive:
-       list='$(SUBDIRS)'; for subdir in $$list; do \
-         test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
-       done
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-recursive
+TAGS: tags
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
        if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
@@ -433,12 +457,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
              set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
          fi; \
        done; \
-       list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -450,15 +469,11 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-recursive
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -467,9 +482,31 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscope: cscope.files
+       test ! -s cscope.files \
+         || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS)
+clean-cscope:
+       -rm -f cscope.files
+cscope.files: clean-cscope cscopelist
+cscopelist: cscopelist-recursive
+
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
+       case "$(srcdir)" in \
+         [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+         *) sdir=$(subdir)/$(srcdir) ;; \
+       esac; \
+       for i in $$list; do \
+         if test -f "$$i"; then \
+           echo "$(subdir)/$$i"; \
+         else \
+           echo "$$sdir/$$i"; \
+         fi; \
+       done >> $(top_builddir)/cscope.files
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+       -rm -f cscope.out cscope.in.out cscope.po.out cscope.files
 
 distdir: $(DISTFILES)
        $(am__remove_distdir)
@@ -540,40 +577,35 @@ distdir: $(DISTFILES)
        || chmod -R a+r "$(distdir)"
 dist-gzip: distdir
        tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
-       $(am__remove_distdir)
+       $(am__post_remove_distdir)
 
 dist-bzip2: distdir
        tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
-       $(am__remove_distdir)
+       $(am__post_remove_distdir)
 
 dist-lzip: distdir
        tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
-       $(am__remove_distdir)
-
-dist-lzma: distdir
-       tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
-       $(am__remove_distdir)
+       $(am__post_remove_distdir)
 dist-xz: distdir
        tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
-       $(am__remove_distdir)
+       $(am__post_remove_distdir)
 
 dist-tarZ: distdir
        tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
-       $(am__remove_distdir)
+       $(am__post_remove_distdir)
 
 dist-shar: distdir
        shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
-       $(am__remove_distdir)
+       $(am__post_remove_distdir)
 
 dist-zip: distdir
        -rm -f $(distdir).zip
        zip -rq $(distdir).zip $(distdir)
-       $(am__remove_distdir)
+       $(am__post_remove_distdir)
 
-dist dist-all: distdir
-       tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
-       tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
-       $(am__remove_distdir)
+dist dist-all:
+       $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
+       $(am__post_remove_distdir)
 
 # This target untars the dist file and tries a VPATH configuration.  Then
 # it guarantees that the distribution is self-contained by making another
@@ -584,8 +616,6 @@ distcheck: dist
          GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
        *.tar.bz2*) \
          bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
-       *.tar.lzma*) \
-         lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
        *.tar.lz*) \
          lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
        *.tar.xz*) \
@@ -597,9 +627,9 @@ distcheck: dist
        *.zip*) \
          unzip $(distdir).zip ;;\
        esac
-       chmod -R a-w $(distdir); chmod u+w $(distdir)
-       mkdir $(distdir)/_build
-       mkdir $(distdir)/_inst
+       chmod -R a-w $(distdir)
+       chmod u+w $(distdir)
+       mkdir $(distdir)/_build $(distdir)/_inst
        chmod a-w $(distdir)
        test -d $(distdir)/_build || exit 0; \
        dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
@@ -631,7 +661,7 @@ distcheck: dist
          && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
          && cd "$$am__cwd" \
          || exit 1
-       $(am__remove_distdir)
+       $(am__post_remove_distdir)
        @(echo "$(distdir) archives ready for distribution: "; \
          list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
          sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
@@ -768,13 +798,12 @@ ps-am:
 
 uninstall-am: uninstall-m4DATA
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \
-       ctags-recursive install-am install-strip tags-recursive
+.MAKE: $(am__recursive_targets) all install-am install-strip
 
-.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
-       all all-am am--refresh check check-am clean clean-generic \
-       ctags ctags-recursive dist dist-all dist-bzip2 dist-gzip \
-       dist-hook dist-lzip dist-lzma dist-shar dist-tarZ dist-xz \
+.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
+       am--refresh check check-am clean clean-cscope clean-generic \
+       cscope cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \
+       dist-gzip dist-hook dist-lzip dist-shar dist-tarZ dist-xz \
        dist-zip distcheck distclean distclean-generic distclean-hdr \
        distclean-tags distcleancheck distdir distuninstallcheck dvi \
        dvi-am html html-am info info-am install install-am \
@@ -785,7 +814,7 @@ uninstall-am: uninstall-m4DATA
        install-strip installcheck installcheck-am installdirs \
        installdirs-am maintainer-clean maintainer-clean-generic \
        mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \
-       tags-recursive uninstall uninstall-am uninstall-m4DATA
+       tags-am uninstall uninstall-am uninstall-m4DATA
 
 
 dist-hook: gob2.spec
diff --git a/NEWS b/NEWS
index 77fe3e3a9b5d5250580f0b6407cf67db010df79f..6433e2cd5b5524bf7f0368c35204f5b8421afad2 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,9 @@
+2.0.20:
+       * Require glib 2.4, and change use of the _take_ownership functions
+         to _take_ functions
+       * Support for GTK3 (Pedro L. Lucas)
+       * names on properties and signals (Pedro L. Lucas)
+
 2.0.19:
        * Print unreftors and destructors before calling parent finalize and
          dispose as is the proper ordering (thanks to Dmitri Toubelis)
index 3cbfd4ed511ce96ebf142960ed18a2a3e508564a..2e1f89564159edbdc315d7ada33a498eaac87804 100644 (file)
@@ -1,8 +1,7 @@
-# generated automatically by aclocal 1.11.6 -*- Autoconf -*-
+# generated automatically by aclocal 1.13.4 -*- Autoconf -*-
+
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation,
-# Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 # PARTICULAR PURPOSE.
 
+m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.68],,
-[m4_warning([this file was generated for autoconf 2.68.
+m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
+[m4_warning([this file was generated for autoconf 2.69.
 You have another version of autoconf.  It may work, but is not guaranteed to.
 If you have problems, you may need to regenerate the build system entirely.
-To do so, use the procedure documented by the package, typically `autoreconf'.])])
+To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 
 # pkg.m4 - Macros to locate and utilise pkg-config.            -*- Autoconf -*-
 # serial 1 (pkg-config-0.24)
@@ -48,7 +48,8 @@ To do so, use the procedure documented by the package, typically `autoreconf'.])
 # ----------------------------------
 AC_DEFUN([PKG_PROG_PKG_CONFIG],
 [m4_pattern_forbid([^_?PKG_[A-Z_]+$])
-m4_pattern_allow([^PKG_CONFIG(_PATH)?$])
+m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
+m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
 AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
 AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
 AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
@@ -94,7 +95,8 @@ m4_define([_PKG_CONFIG],
     pkg_cv_[]$1="$$1"
  elif test -n "$PKG_CONFIG"; then
     PKG_CHECK_EXISTS([$3],
-                     [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`],
+                     [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`
+                     test "x$?" != "x0" && pkg_failed=yes ],
                     [pkg_failed=yes])
  else
     pkg_failed=untried
@@ -142,9 +144,9 @@ if test $pkg_failed = yes; then
        AC_MSG_RESULT([no])
         _PKG_SHORT_ERRORS_SUPPORTED
         if test $_pkg_short_errors_supported = yes; then
-               $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$2" 2>&1`
+               $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
         else 
-               $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors "$2" 2>&1`
+               $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
         fi
        # Put the nasty error message in config.log where it belongs
        echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
@@ -157,7 +159,7 @@ $$1_PKG_ERRORS
 Consider adjusting the PKG_CONFIG_PATH environment variable if you
 installed software in a non-standard prefix.
 
-_PKG_TEXT])
+_PKG_TEXT])[]dnl
         ])
 elif test $pkg_failed = untried; then
        AC_MSG_RESULT([no])
@@ -168,7 +170,7 @@ path to pkg-config.
 
 _PKG_TEXT
 
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.])
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
         ])
 else
        $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
@@ -178,25 +180,77 @@ else
 fi[]dnl
 ])# PKG_CHECK_MODULES
 
-# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008, 2011 Free Software
-# Foundation, Inc.
+
+# PKG_INSTALLDIR(DIRECTORY)
+# -------------------------
+# Substitutes the variable pkgconfigdir as the location where a module
+# should install pkg-config .pc files. By default the directory is
+# $libdir/pkgconfig, but the default can be changed by passing
+# DIRECTORY. The user can override through the --with-pkgconfigdir
+# parameter.
+AC_DEFUN([PKG_INSTALLDIR],
+[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])])
+m4_pushdef([pkg_description],
+    [pkg-config installation directory @<:@]pkg_default[@:>@])
+AC_ARG_WITH([pkgconfigdir],
+    [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],,
+    [with_pkgconfigdir=]pkg_default)
+AC_SUBST([pkgconfigdir], [$with_pkgconfigdir])
+m4_popdef([pkg_default])
+m4_popdef([pkg_description])
+]) dnl PKG_INSTALLDIR
+
+
+# PKG_NOARCH_INSTALLDIR(DIRECTORY)
+# -------------------------
+# Substitutes the variable noarch_pkgconfigdir as the location where a
+# module should install arch-independent pkg-config .pc files. By
+# default the directory is $datadir/pkgconfig, but the default can be
+# changed by passing DIRECTORY. The user can override through the
+# --with-noarch-pkgconfigdir parameter.
+AC_DEFUN([PKG_NOARCH_INSTALLDIR],
+[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])])
+m4_pushdef([pkg_description],
+    [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@])
+AC_ARG_WITH([noarch-pkgconfigdir],
+    [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],,
+    [with_noarch_pkgconfigdir=]pkg_default)
+AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir])
+m4_popdef([pkg_default])
+m4_popdef([pkg_description])
+]) dnl PKG_NOARCH_INSTALLDIR
+
+
+# PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
+# [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+# -------------------------------------------
+# Retrieves the value of the pkg-config variable for the given module.
+AC_DEFUN([PKG_CHECK_VAR],
+[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
+AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
+
+_PKG_CONFIG([$1], [variable="][$3]["], [$2])
+AS_VAR_COPY([$1], [pkg_cv_][$1])
+
+AS_VAR_IF([$1], [""], [$5], [$4])dnl
+])# PKG_CHECK_VAR
+
+# Copyright (C) 2002-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 1
-
 # 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.
 # (This private macro should not be called outside this file.)
 AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.11'
+[am__api_version='1.13'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.11.6], [],
+m4_if([$1], [1.13.4], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -212,24 +266,22 @@ m4_define([_AM_AUTOCONF_VERSION], [])
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.11.6])dnl
+[AM_AUTOMAKE_VERSION([1.13.4])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 1
-
 # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
-# $ac_aux_dir to `$srcdir/foo'.  In other projects, it is set to
-# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
+# $ac_aux_dir to '$srcdir/foo'.  In other projects, it is set to
+# '$srcdir', '$srcdir/..', or '$srcdir/../..'.
 #
 # Of course, Automake must honor this variable whenever it calls a
 # tool from the auxiliary directory.  The problem is that $srcdir (and
@@ -248,7 +300,7 @@ _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 #
 # The reason of the latter failure is that $top_srcdir and $ac_aux_dir
 # are both prefixed by $srcdir.  In an in-source build this is usually
-# harmless because $srcdir is `.', but things will broke when you
+# harmless because $srcdir is '.', but things will broke when you
 # start a VPATH build or use an absolute $srcdir.
 #
 # So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
@@ -274,22 +326,19 @@ am_aux_dir=`cd $ac_aux_dir && pwd`
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008
-# Free Software Foundation, Inc.
+# Copyright (C) 1997-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 9
-
 # AM_CONDITIONAL(NAME, SHELL-CONDITION)
 # -------------------------------------
 # Define a conditional.
 AC_DEFUN([AM_CONDITIONAL],
-[AC_PREREQ(2.52)dnl
ifelse([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],
-       [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
+[AC_PREREQ([2.52])dnl
m4_if([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],
+       [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
 AC_SUBST([$1_TRUE])dnl
 AC_SUBST([$1_FALSE])dnl
 _AM_SUBST_NOTMAKE([$1_TRUE])dnl
@@ -308,16 +357,14 @@ AC_CONFIG_COMMANDS_PRE(
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009,
-# 2010, 2011 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 12
 
-# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
+# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be
 # written in clear, in which case automake, when reading aclocal.m4,
 # will think it sees a *use*, and therefore will trigger all it's
 # C support machinery.  Also note that it means that autoscan, seeing
@@ -327,7 +374,7 @@ fi])])
 # _AM_DEPENDENCIES(NAME)
 # ----------------------
 # See how the compiler implements dependency checking.
-# NAME is "CC", "CXX", "GCJ", or "OBJC".
+# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC".
 # We try a few techniques and use that to set a single cache variable.
 #
 # We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
@@ -340,12 +387,13 @@ AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
 AC_REQUIRE([AM_MAKE_INCLUDE])dnl
 AC_REQUIRE([AM_DEP_TRACK])dnl
 
-ifelse([$1], CC,   [depcc="$CC"   am_compiler_list=],
-       [$1], CXX,  [depcc="$CXX"  am_compiler_list=],
-       [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
-       [$1], UPC,  [depcc="$UPC"  am_compiler_list=],
-       [$1], GCJ,  [depcc="$GCJ"  am_compiler_list='gcc3 gcc'],
-                   [depcc="$$1"   am_compiler_list=])
+m4_if([$1], [CC],   [depcc="$CC"   am_compiler_list=],
+      [$1], [CXX],  [depcc="$CXX"  am_compiler_list=],
+      [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
+      [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'],
+      [$1], [UPC],  [depcc="$UPC"  am_compiler_list=],
+      [$1], [GCJ],  [depcc="$GCJ"  am_compiler_list='gcc3 gcc'],
+                    [depcc="$$1"   am_compiler_list=])
 
 AC_CACHE_CHECK([dependency style of $depcc],
                [am_cv_$1_dependencies_compiler_type],
@@ -353,8 +401,8 @@ AC_CACHE_CHECK([dependency style of $depcc],
   # We make a subdir and do the tests there.  Otherwise we can end up
   # making bogus files that we don't know about and never remove.  For
   # instance it was reported that on HP-UX the gcc test will end up
-  # making a dummy file named `D' -- because `-MD' means `put the output
-  # in D'.
+  # making a dummy file named 'D' -- because '-MD' means "put the output
+  # in D".
   rm -rf conftest.dir
   mkdir conftest.dir
   # Copy depcomp to subdir because otherwise we won't find it if we're
@@ -394,16 +442,16 @@ AC_CACHE_CHECK([dependency style of $depcc],
     : > sub/conftest.c
     for i in 1 2 3 4 5 6; do
       echo '#include "conftst'$i'.h"' >> sub/conftest.c
-      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
-      # Solaris 8's {/usr,}/bin/sh.
-      touch sub/conftst$i.h
+      # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
+      # Solaris 10 /bin/sh.
+      echo '/* dummy */' > sub/conftst$i.h
     done
     echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
 
-    # We check with `-c' and `-o' for the sake of the "dashmstdout"
+    # We check with '-c' and '-o' for the sake of the "dashmstdout"
     # mode.  It turns out that the SunPro C++ compiler does not properly
-    # handle `-M -o', and we need to detect this.  Also, some Intel
-    # versions had trouble with output in subdirs
+    # handle '-M -o', and we need to detect this.  Also, some Intel
+    # versions had trouble with output in subdirs.
     am__obj=sub/conftest.${OBJEXT-o}
     am__minus_obj="-o $am__obj"
     case $depmode in
@@ -412,8 +460,8 @@ AC_CACHE_CHECK([dependency style of $depcc],
       test "$am__universal" = false || continue
       ;;
     nosideeffect)
-      # after this tag, mechanisms are not by side-effect, so they'll
-      # only be used when explicitly requested
+      # After this tag, mechanisms are not by side-effect, so they'll
+      # only be used when explicitly requested.
       if test "x$enable_dependency_tracking" = xyes; then
        continue
       else
@@ -421,7 +469,7 @@ AC_CACHE_CHECK([dependency style of $depcc],
       fi
       ;;
     msvc7 | msvc7msys | msvisualcpp | msvcmsys)
-      # This compiler won't grok `-c -o', but also, the minuso test has
+      # This compiler won't grok '-c -o', but also, the minuso test has
       # not run yet.  These depmodes are late enough in the game, and
       # so weak that their functioning should not be impacted.
       am__obj=conftest.${OBJEXT-o}
@@ -469,7 +517,7 @@ AM_CONDITIONAL([am__fastdep$1], [
 # AM_SET_DEPDIR
 # -------------
 # Choose a directory name for dependency files.
-# This macro is AC_REQUIREd in _AM_DEPENDENCIES
+# This macro is AC_REQUIREd in _AM_DEPENDENCIES.
 AC_DEFUN([AM_SET_DEPDIR],
 [AC_REQUIRE([AM_SET_LEADING_DOT])dnl
 AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
@@ -479,9 +527,13 @@ AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
 # AM_DEP_TRACK
 # ------------
 AC_DEFUN([AM_DEP_TRACK],
-[AC_ARG_ENABLE(dependency-tracking,
-[  --disable-dependency-tracking  speeds up one-time build
-  --enable-dependency-tracking   do not reject slow dependency extractors])
+[AC_ARG_ENABLE([dependency-tracking], [dnl
+AS_HELP_STRING(
+  [--enable-dependency-tracking],
+  [do not reject slow dependency extractors])
+AS_HELP_STRING(
+  [--disable-dependency-tracking],
+  [speeds up one-time build])])
 if test "x$enable_dependency_tracking" != xno; then
   am_depcomp="$ac_aux_dir/depcomp"
   AMDEPBACKSLASH='\'
@@ -496,20 +548,18 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008
-# Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-#serial 5
 
 # _AM_OUTPUT_DEPENDENCY_COMMANDS
 # ------------------------------
 AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
 [{
-  # Autoconf 2.62 quotes --file arguments for eval, but not when files
+  # Older Autoconf quotes --file arguments for eval, but not when files
   # are listed without --file.  Let's play safe and only enable the eval
   # if we detect the quoting.
   case $CONFIG_FILES in
@@ -522,7 +572,7 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
     # Strip MF so we end up with the name of the file.
     mf=`echo "$mf" | sed -e 's/:.*$//'`
     # Check whether this is an Automake generated Makefile or not.
-    # We used to match only the files named `Makefile.in', but
+    # We used to match only the files named 'Makefile.in', but
     # some people rename them; so instead we look at the file content.
     # Grep'ing the first line is not enough: some people post-process
     # each Makefile.in and add a new line on top of each file to say so.
@@ -534,21 +584,19 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
       continue
     fi
     # Extract the definition of DEPDIR, am__include, and am__quote
-    # from the Makefile without running `make'.
+    # from the Makefile without running 'make'.
     DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
     test -z "$DEPDIR" && continue
     am__include=`sed -n 's/^am__include = //p' < "$mf"`
-    test -z "am__include" && continue
+    test -z "$am__include" && continue
     am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
-    # When using ansi2knr, U may be empty or an underscore; expand it
-    U=`sed -n 's/^U = //p' < "$mf"`
     # Find all dependency output files, they are included files with
     # $(DEPDIR) in their names.  We invoke sed twice because it is the
     # simplest approach to changing $(DEPDIR) to its actual value in the
     # expansion.
     for file in `sed -n "
       s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
-        sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+        sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
       # Make sure the directory exists.
       test -f "$dirpart/$file" && continue
       fdir=`AS_DIRNAME(["$file"])`
@@ -566,7 +614,7 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
 # This macro should only be invoked once -- use via AC_REQUIRE.
 #
 # This code is only required when automatic dependency tracking
-# is enabled.  FIXME.  This creates each `.P' file that we will
+# is enabled.  FIXME.  This creates each '.P' file that we will
 # need in order to bootstrap the dependency handling code.
 AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
 [AC_CONFIG_COMMANDS([depfiles],
@@ -574,29 +622,14 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
      [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
 ])
 
-# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
-# Free Software Foundation, Inc.
-#
-# This file is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# serial 8
-
-# AM_CONFIG_HEADER is obsolete.  It has been replaced by AC_CONFIG_HEADERS.
-AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)])
-
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006, 2008, 2009 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 16
-
 # This macro actually does too much.  Some checks are only needed if
 # your package does certain things.  But this isn't really a big deal.
 
@@ -612,7 +645,7 @@ AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)])
 # arguments mandatory, and then we can depend on a new Autoconf
 # release and drop the old call support.
 AC_DEFUN([AM_INIT_AUTOMAKE],
-[AC_PREREQ([2.62])dnl
+[AC_PREREQ([2.65])dnl
 dnl Autoconf wants to disallow AM_ names.  We explicitly allow
 dnl the ones we care about.
 m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
@@ -641,31 +674,40 @@ AC_SUBST([CYGPATH_W])
 # Define the identity of the package.
 dnl Distinguish between old-style and new-style calls.
 m4_ifval([$2],
-[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
+[AC_DIAGNOSE([obsolete],
+             [$0: two- and three-arguments forms are deprecated.])
+m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
  AC_SUBST([PACKAGE], [$1])dnl
  AC_SUBST([VERSION], [$2])],
 [_AM_SET_OPTIONS([$1])dnl
 dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
-m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,,
+m4_if(
+  m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
+  [ok:ok],,
   [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
  AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
  AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
 
 _AM_IF_OPTION([no-define],,
-[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
- AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
+[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])
+ AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl
 
 # Some tools Automake needs.
 AC_REQUIRE([AM_SANITY_CHECK])dnl
 AC_REQUIRE([AC_ARG_PROGRAM])dnl
-AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
-AM_MISSING_PROG(AUTOCONF, autoconf)
-AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
-AM_MISSING_PROG(AUTOHEADER, autoheader)
-AM_MISSING_PROG(MAKEINFO, makeinfo)
+AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
+AM_MISSING_PROG([AUTOCONF], [autoconf])
+AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
+AM_MISSING_PROG([AUTOHEADER], [autoheader])
+AM_MISSING_PROG([MAKEINFO], [makeinfo])
 AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
 AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
-AC_REQUIRE([AM_PROG_MKDIR_P])dnl
+AC_REQUIRE([AC_PROG_MKDIR_P])dnl
+# For better backward compatibility.  To be removed once Automake 1.9.x
+# dies out for good.  For more background, see:
+# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
+# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
+AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
 # We need awk for the "check" target.  The system "awk" is bad on
 # some platforms.
 AC_REQUIRE([AC_PROG_AWK])dnl
@@ -676,28 +718,32 @@ _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
                             [_AM_PROG_TAR([v7])])])
 _AM_IF_OPTION([no-dependencies],,
 [AC_PROVIDE_IFELSE([AC_PROG_CC],
-                 [_AM_DEPENDENCIES(CC)],
-                 [define([AC_PROG_CC],
-                         defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
+                 [_AM_DEPENDENCIES([CC])],
+                 [m4_define([AC_PROG_CC],
+                            m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl
 AC_PROVIDE_IFELSE([AC_PROG_CXX],
-                 [_AM_DEPENDENCIES(CXX)],
-                 [define([AC_PROG_CXX],
-                         defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
+                 [_AM_DEPENDENCIES([CXX])],
+                 [m4_define([AC_PROG_CXX],
+                            m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl
 AC_PROVIDE_IFELSE([AC_PROG_OBJC],
-                 [_AM_DEPENDENCIES(OBJC)],
-                 [define([AC_PROG_OBJC],
-                         defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
+                 [_AM_DEPENDENCIES([OBJC])],
+                 [m4_define([AC_PROG_OBJC],
+                            m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
+AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
+                 [_AM_DEPENDENCIES([OBJCXX])],
+                 [m4_define([AC_PROG_OBJCXX],
+                            m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
 ])
-_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
-dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
-dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This macro
-dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
+AC_REQUIRE([AM_SILENT_RULES])dnl
+dnl The testsuite driver may need to know about EXEEXT, so add the
+dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This
+dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
 AC_CONFIG_COMMANDS_PRE(dnl
 [m4_provide_if([_AM_COMPILER_EXEEXT],
   [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
 ])
 
-dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
+dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
 dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
 dnl mangled by Autoconf and run in a shell conditional statement.
 m4_define([_AC_COMPILER_EXEEXT],
@@ -725,15 +771,12 @@ for _am_header in $config_headers :; do
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001, 2003, 2005, 2008, 2011 Free Software Foundation,
-# Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 1
-
 # AM_PROG_INSTALL_SH
 # ------------------
 # Define $install_sh.
@@ -747,16 +790,14 @@ if test x"${install_sh}" != xset; then
     install_sh="\${SHELL} $am_aux_dir/install-sh"
   esac
 fi
-AC_SUBST(install_sh)])
+AC_SUBST([install_sh])])
 
-# Copyright (C) 2003, 2005  Free Software Foundation, Inc.
+# Copyright (C) 2003-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 2
-
 # Check whether the underlying file-system supports filenames
 # with a leading dot.  For instance MS-DOS doesn't.
 AC_DEFUN([AM_SET_LEADING_DOT],
@@ -770,21 +811,18 @@ fi
 rmdir .tst 2>/dev/null
 AC_SUBST([am__leading_dot])])
 
-# Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2005
-# Free Software Foundation, Inc.
+# Copyright (C) 1998-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 5
-
 # AM_PROG_LEX
 # -----------
 # Autoconf leaves LEX=: if lex or flex can't be found.  Change that to a
 # "missing" invocation, for better error output.
 AC_DEFUN([AM_PROG_LEX],
-[AC_PREREQ(2.50)dnl
+[AC_PREREQ([2.50])dnl
 AC_REQUIRE([AM_MISSING_HAS_RUN])dnl
 AC_REQUIRE([AC_PROG_LEX])dnl
 if test "$LEX" = :; then
@@ -794,20 +832,17 @@ fi])
 # Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
 # From Jim Meyering
 
-# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008,
-# 2011 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 5
-
 # AM_MAINTAINER_MODE([DEFAULT-MODE])
 # ----------------------------------
 # Control maintainer-specific portions of Makefiles.
-# Default is to disable them, unless `enable' is passed literally.
-# For symmetry, `disable' may be passed as well.  Anyway, the user
+# Default is to disable them, unless 'enable' is passed literally.
+# For symmetry, 'disable' may be passed as well.  Anyway, the user
 # can override the default with the --enable/--disable switch.
 AC_DEFUN([AM_MAINTAINER_MODE],
 [m4_case(m4_default([$1], [disable]),
@@ -818,10 +853,11 @@ AC_DEFUN([AM_MAINTAINER_MODE],
 AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
   dnl maintainer-mode's default is 'disable' unless 'enable' is passed
   AC_ARG_ENABLE([maintainer-mode],
-[  --][am_maintainer_other][-maintainer-mode  am_maintainer_other make rules and dependencies not useful
-                         (and sometimes confusing) to the casual installer],
-      [USE_MAINTAINER_MODE=$enableval],
-      [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
+    [AS_HELP_STRING([--]am_maintainer_other[-maintainer-mode],
+      am_maintainer_other[ make rules and dependencies not useful
+      (and sometimes confusing) to the casual installer])],
+    [USE_MAINTAINER_MODE=$enableval],
+    [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
   AC_MSG_RESULT([$USE_MAINTAINER_MODE])
   AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
   MAINT=$MAINTAINER_MODE_TRUE
@@ -829,18 +865,14 @@ AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
 ]
 )
 
-AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
-
 # Check to see how 'make' treats includes.                 -*- Autoconf -*-
 
-# Copyright (C) 2001, 2002, 2003, 2005, 2009  Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 4
-
 # AM_MAKE_INCLUDE()
 # -----------------
 # Check to see how make treats includes.
@@ -858,7 +890,7 @@ am__quote=
 _am_result=none
 # First try GNU make style include.
 echo "include confinc" > confmf
-# Ignore all kinds of additional output from `make'.
+# Ignore all kinds of additional output from 'make'.
 case `$am_make -s -f confmf 2> /dev/null` in #(
 *the\ am__doit\ target*)
   am__include=include
@@ -885,15 +917,12 @@ rm -f confinc confmf
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008
-# Free Software Foundation, Inc.
+# Copyright (C) 1997-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 6
-
 # AM_MISSING_PROG(NAME, PROGRAM)
 # ------------------------------
 AC_DEFUN([AM_MISSING_PROG],
@@ -901,11 +930,10 @@ AC_DEFUN([AM_MISSING_PROG],
 $1=${$1-"${am_missing_run}$2"}
 AC_SUBST($1)])
 
-
 # AM_MISSING_HAS_RUN
 # ------------------
-# Define MISSING if not defined so far and test if it supports --run.
-# If it does, set am_missing_run to use it, otherwise, to nothing.
+# Define MISSING if not defined so far and test if it is modern enough.
+# If it is, set am_missing_run to use it, otherwise, to nothing.
 AC_DEFUN([AM_MISSING_HAS_RUN],
 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
 AC_REQUIRE_AUX_FILE([missing])dnl
@@ -918,54 +946,51 @@ if test x"${MISSING+set}" != xset; then
   esac
 fi
 # Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
-  am_missing_run="$MISSING --run "
+if eval "$MISSING --is-lightweight"; then
+  am_missing_run="$MISSING "
 else
   am_missing_run=
-  AC_MSG_WARN([`missing' script is too old or missing])
+  AC_MSG_WARN(['missing' script is too old or missing])
 fi
 ])
 
-# Copyright (C) 2003, 2004, 2005, 2006, 2011 Free Software Foundation,
-# Inc.
+#  -*- Autoconf -*-
+# Obsolete and "removed" macros, that must however still report explicit
+# error messages when used, to smooth transition.
+#
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 1
-
-# AM_PROG_MKDIR_P
-# ---------------
-# Check for `mkdir -p'.
-AC_DEFUN([AM_PROG_MKDIR_P],
-[AC_PREREQ([2.60])dnl
-AC_REQUIRE([AC_PROG_MKDIR_P])dnl
-dnl Automake 1.8 to 1.9.6 used to define mkdir_p.  We now use MKDIR_P,
-dnl while keeping a definition of mkdir_p for backward compatibility.
-dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
-dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of
-dnl Makefile.ins that do not define MKDIR_P, so we do our own
-dnl adjustment using top_builddir (which is defined more often than
-dnl MKDIR_P).
-AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl
-case $mkdir_p in
-  [[\\/$]]* | ?:[[\\/]]*) ;;
-  */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
-esac
-])
+AC_DEFUN([AM_CONFIG_HEADER],
+[AC_DIAGNOSE([obsolete],
+['$0': this macro is obsolete.
+You should use the 'AC][_CONFIG_HEADERS' macro instead.])dnl
+AC_CONFIG_HEADERS($@)])
+
+AC_DEFUN([AM_PROG_CC_STDC],
+[AC_PROG_CC
+am_cv_prog_cc_stdc=$ac_cv_prog_cc_stdc
+AC_DIAGNOSE([obsolete],
+['$0': this macro is obsolete.
+You should simply use the 'AC][_PROG_CC' macro instead.
+Also, your code should no longer depend upon 'am_cv_prog_cc_stdc',
+but upon 'ac_cv_prog_cc_stdc'.])])
+
+AC_DEFUN([AM_C_PROTOTYPES],
+         [AC_FATAL([automatic de-ANSI-fication support has been removed])])
+AU_DEFUN([fp_C_PROTOTYPES], [AM_C_PROTOTYPES])
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001, 2002, 2003, 2005, 2008, 2010 Free Software
-# Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 5
-
 # _AM_MANGLE_OPTION(NAME)
 # -----------------------
 AC_DEFUN([_AM_MANGLE_OPTION],
@@ -975,7 +1000,7 @@ AC_DEFUN([_AM_MANGLE_OPTION],
 # --------------------
 # Set option NAME.  Presently that only means defining a flag for this option.
 AC_DEFUN([_AM_SET_OPTION],
-[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
+[m4_define(_AM_MANGLE_OPTION([$1]), [1])])
 
 # _AM_SET_OPTIONS(OPTIONS)
 # ------------------------
@@ -991,22 +1016,16 @@ AC_DEFUN([_AM_IF_OPTION],
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
-# Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 5
-
 # AM_SANITY_CHECK
 # ---------------
 AC_DEFUN([AM_SANITY_CHECK],
 [AC_MSG_CHECKING([whether build environment is sane])
-# Just in case
-sleep 1
-echo timestamp > conftest.file
 # Reject unsafe characters in $srcdir or the absolute working directory
 # name.  Accept space and tab only in the latter.
 am_lf='
@@ -1017,32 +1036,40 @@ case `pwd` in
 esac
 case $srcdir in
   *[[\\\"\#\$\&\'\`$am_lf\ \   ]]*)
-    AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
+    AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
 esac
 
-# Do `set' in a subshell so we don't clobber the current shell's
+# Do 'set' in a subshell so we don't clobber the current shell's
 # arguments.  Must try -L first in case configure is actually a
 # symlink; some systems play weird games with the mod time of symlinks
 # (eg FreeBSD returns the mod time of the symlink's containing
 # directory).
 if (
-   set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
-   if test "$[*]" = "X"; then
-      # -L didn't work.
-      set X `ls -t "$srcdir/configure" conftest.file`
-   fi
-   rm -f conftest.file
-   if test "$[*]" != "X $srcdir/configure conftest.file" \
-      && test "$[*]" != "X conftest.file $srcdir/configure"; then
-
-      # If neither matched, then we have a broken ls.  This can happen
-      # 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".
-      AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
-alias in your environment])
-   fi
-
+   am_has_slept=no
+   for am_try in 1 2; do
+     echo "timestamp, slept: $am_has_slept" > conftest.file
+     set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
+     if test "$[*]" = "X"; then
+       # -L didn't work.
+       set X `ls -t "$srcdir/configure" conftest.file`
+     fi
+     if test "$[*]" != "X $srcdir/configure conftest.file" \
+       && test "$[*]" != "X conftest.file $srcdir/configure"; then
+
+       # If neither matched, then we have a broken ls.  This can happen
+       # 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".
+       AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
+  alias in your environment])
+     fi
+     if test "$[2]" = conftest.file || test $am_try -eq 2; then
+       break
+     fi
+     # Just in case.
+     sleep 1
+     am_has_slept=yes
+   done
    test "$[2]" = conftest.file
    )
 then
@@ -1052,46 +1079,118 @@ else
    AC_MSG_ERROR([newly created file is older than distributed files!
 Check your system clock])
 fi
-AC_MSG_RESULT(yes)])
+AC_MSG_RESULT([yes])
+# If we didn't sleep, we still need to ensure time stamps of config.status and
+# generated files are strictly newer.
+am_sleep_pid=
+if grep 'slept: no' conftest.file >/dev/null 2>&1; then
+  ( sleep 1 ) &
+  am_sleep_pid=$!
+fi
+AC_CONFIG_COMMANDS_PRE(
+  [AC_MSG_CHECKING([that generated files are newer than configure])
+   if test -n "$am_sleep_pid"; then
+     # Hide warnings about reused PIDs.
+     wait $am_sleep_pid 2>/dev/null
+   fi
+   AC_MSG_RESULT([done])])
+rm -f conftest.file
+])
 
-# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc.
+# Copyright (C) 2009-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 1
+# AM_SILENT_RULES([DEFAULT])
+# --------------------------
+# Enable less verbose build rules; with the default set to DEFAULT
+# ("yes" being less verbose, "no" or empty being verbose).
+AC_DEFUN([AM_SILENT_RULES],
+[AC_ARG_ENABLE([silent-rules], [dnl
+AS_HELP_STRING(
+  [--enable-silent-rules],
+  [less verbose build output (undo: "make V=1")])
+AS_HELP_STRING(
+  [--disable-silent-rules],
+  [verbose build output (undo: "make V=0")])dnl
+])
+case $enable_silent_rules in @%:@ (((
+  yes) AM_DEFAULT_VERBOSITY=0;;
+   no) AM_DEFAULT_VERBOSITY=1;;
+    *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
+esac
+dnl
+dnl A few 'make' implementations (e.g., NonStop OS and NextStep)
+dnl do not support nested variable expansions.
+dnl See automake bug#9928 and bug#10237.
+am_make=${MAKE-make}
+AC_CACHE_CHECK([whether $am_make supports nested variables],
+   [am_cv_make_support_nested_variables],
+   [if AS_ECHO([['TRUE=$(BAR$(V))
+BAR0=false
+BAR1=true
+V=1
+am__doit:
+       @$(TRUE)
+.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then
+  am_cv_make_support_nested_variables=yes
+else
+  am_cv_make_support_nested_variables=no
+fi])
+if test $am_cv_make_support_nested_variables = yes; then
+  dnl Using '$V' instead of '$(V)' breaks IRIX make.
+  AM_V='$(V)'
+  AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
+else
+  AM_V=$AM_DEFAULT_VERBOSITY
+  AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
+fi
+AC_SUBST([AM_V])dnl
+AM_SUBST_NOTMAKE([AM_V])dnl
+AC_SUBST([AM_DEFAULT_V])dnl
+AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl
+AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
+AM_BACKSLASH='\'
+AC_SUBST([AM_BACKSLASH])dnl
+_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
+])
+
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
 
 # AM_PROG_INSTALL_STRIP
 # ---------------------
-# One issue with vendor `install' (even GNU) is that you can't
+# One issue with vendor 'install' (even GNU) is that you can't
 # specify the program used to strip binaries.  This is especially
 # annoying in cross-compiling environments, where the build's strip
 # is unlikely to handle the host's binaries.
 # Fortunately install-sh will honor a STRIPPROG variable, so we
-# always use install-sh in `make install-strip', and initialize
+# always use install-sh in "make install-strip", and initialize
 # STRIPPROG with the value of the STRIP variable (set by the user).
 AC_DEFUN([AM_PROG_INSTALL_STRIP],
 [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'.  However `strip' might not be the right
+# Installed binaries are usually stripped using 'strip' when the user
+# run "make install-strip".  However 'strip' might not be the right
 # tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
-dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
+# will honor the 'STRIP' environment variable to overrule this program.
+dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.
 if test "$cross_compiling" != no; then
   AC_CHECK_TOOL([STRIP], [strip], :)
 fi
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006, 2008, 2010 Free Software Foundation, Inc.
+# Copyright (C) 2006-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 3
-
 # _AM_SUBST_NOTMAKE(VARIABLE)
 # ---------------------------
 # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
@@ -1105,18 +1204,16 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004, 2005, 2012 Free Software Foundation, Inc.
+# Copyright (C) 2004-2013 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 2
-
 # _AM_PROG_TAR(FORMAT)
 # --------------------
 # Check how to create a tarball in format FORMAT.
-# FORMAT should be one of `v7', `ustar', or `pax'.
+# FORMAT should be one of 'v7', 'ustar', or 'pax'.
 #
 # Substitute a variable $(am__tar) that is a command
 # writing to stdout a FORMAT-tarball containing the directory
@@ -1126,76 +1223,114 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
 # Substitute a variable $(am__untar) that extract such
 # a tarball read from stdin.
 #     $(am__untar) < result.tar
+#
 AC_DEFUN([_AM_PROG_TAR],
 [# Always define AMTAR for backward compatibility.  Yes, it's still used
 # in the wild :-(  We should find a proper way to deprecate it ...
 AC_SUBST([AMTAR], ['$${TAR-tar}'])
-m4_if([$1], [v7],
-     [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
-     [m4_case([$1], [ustar],, [pax],,
-              [m4_fatal([Unknown tar format])])
-AC_MSG_CHECKING([how to create a $1 tar archive])
-# Loop over all known methods to create a tar archive until one works.
+
+# We'll loop over all known methods to create a tar archive until one works.
 _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
-_am_tools=${am_cv_prog_tar_$1-$_am_tools}
-# Do not fold the above two line into one, because Tru64 sh and
-# Solaris sh will not grok spaces in the rhs of `-'.
-for _am_tool in $_am_tools
-do
-  case $_am_tool in
-  gnutar)
-    for _am_tar in tar gnutar gtar;
-    do
-      AM_RUN_LOG([$_am_tar --version]) && break
-    done
-    am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
-    am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
-    am__untar="$_am_tar -xf -"
-    ;;
-  plaintar)
-    # Must skip GNU tar: if it does not support --format= it doesn't create
-    # ustar tarball either.
-    (tar --version) >/dev/null 2>&1 && continue
-    am__tar='tar chf - "$$tardir"'
-    am__tar_='tar chf - "$tardir"'
-    am__untar='tar xf -'
-    ;;
-  pax)
-    am__tar='pax -L -x $1 -w "$$tardir"'
-    am__tar_='pax -L -x $1 -w "$tardir"'
-    am__untar='pax -r'
-    ;;
-  cpio)
-    am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
-    am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
-    am__untar='cpio -i -H $1 -d'
-    ;;
-  none)
-    am__tar=false
-    am__tar_=false
-    am__untar=false
-    ;;
-  esac
 
-  # If the value was cached, stop now.  We just wanted to have am__tar
-  # and am__untar set.
-  test -n "${am_cv_prog_tar_$1}" && break
+m4_if([$1], [v7],
+  [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
+
+  [m4_case([$1],
+    [ustar],
+     [# The POSIX 1988 'ustar' format is defined with fixed-size fields.
+      # There is notably a 21 bits limit for the UID and the GID.  In fact,
+      # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
+      # and bug#13588).
+      am_max_uid=2097151 # 2^21 - 1
+      am_max_gid=$am_max_uid
+      # The $UID and $GID variables are not portable, so we need to resort
+      # to the POSIX-mandated id(1) utility.  Errors in the 'id' calls
+      # below are definitely unexpected, so allow the users to see them
+      # (that is, avoid stderr redirection).
+      am_uid=`id -u || echo unknown`
+      am_gid=`id -g || echo unknown`
+      AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
+      if test $am_uid -le $am_max_uid; then
+         AC_MSG_RESULT([yes])
+      else
+         AC_MSG_RESULT([no])
+         _am_tools=none
+      fi
+      AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
+      if test $am_gid -le $am_max_gid; then
+         AC_MSG_RESULT([yes])
+      else
+        AC_MSG_RESULT([no])
+        _am_tools=none
+      fi],
+
+  [pax],
+    [],
+
+  [m4_fatal([Unknown tar format])])
+
+  AC_MSG_CHECKING([how to create a $1 tar archive])
+
+  # Go ahead even if we have the value already cached.  We do so because we
+  # need to set the values for the 'am__tar' and 'am__untar' variables.
+  _am_tools=${am_cv_prog_tar_$1-$_am_tools}
+
+  for _am_tool in $_am_tools; do
+    case $_am_tool in
+    gnutar)
+      for _am_tar in tar gnutar gtar; do
+        AM_RUN_LOG([$_am_tar --version]) && break
+      done
+      am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
+      am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
+      am__untar="$_am_tar -xf -"
+      ;;
+    plaintar)
+      # Must skip GNU tar: if it does not support --format= it doesn't create
+      # ustar tarball either.
+      (tar --version) >/dev/null 2>&1 && continue
+      am__tar='tar chf - "$$tardir"'
+      am__tar_='tar chf - "$tardir"'
+      am__untar='tar xf -'
+      ;;
+    pax)
+      am__tar='pax -L -x $1 -w "$$tardir"'
+      am__tar_='pax -L -x $1 -w "$tardir"'
+      am__untar='pax -r'
+      ;;
+    cpio)
+      am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
+      am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
+      am__untar='cpio -i -H $1 -d'
+      ;;
+    none)
+      am__tar=false
+      am__tar_=false
+      am__untar=false
+      ;;
+    esac
 
-  # tar/untar a dummy directory, and stop if the command works
-  rm -rf conftest.dir
-  mkdir conftest.dir
-  echo GrepMe > conftest.dir/file
-  AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
+    # If the value was cached, stop now.  We just wanted to have am__tar
+    # and am__untar set.
+    test -n "${am_cv_prog_tar_$1}" && break
+
+    # tar/untar a dummy directory, and stop if the command works.
+    rm -rf conftest.dir
+    mkdir conftest.dir
+    echo GrepMe > conftest.dir/file
+    AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
+    rm -rf conftest.dir
+    if test -s conftest.tar; then
+      AM_RUN_LOG([$am__untar <conftest.tar])
+      AM_RUN_LOG([cat conftest.dir/file])
+      grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
+    fi
+  done
   rm -rf conftest.dir
-  if test -s conftest.tar; then
-    AM_RUN_LOG([$am__untar <conftest.tar])
-    grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
-  fi
-done
-rm -rf conftest.dir
 
-AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
-AC_MSG_RESULT([$am_cv_prog_tar_$1])])
+  AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
+  AC_MSG_RESULT([$am_cv_prog_tar_$1])])
+
 AC_SUBST([am__tar])
 AC_SUBST([am__untar])
 ]) # _AM_PROG_TAR
index 335630a98737f8216252c75a541069858376b8bd..589a482cb74644154d490437065ae938893e385c 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,11 +1,9 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.68 for gob2 2.0.19.
+# Generated by GNU Autoconf 2.69 for gob2 2.0.20.
 #
 #
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
-# Foundation, Inc.
+# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
 #
 #
 # This configure script is free software; the Free Software Foundation
@@ -134,6 +132,31 @@ export LANGUAGE
 # CDPATH.
 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 
+# Use a proper internal environment variable to ensure we don't fall
+  # into an infinite loop, continuously re-executing ourselves.
+  if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
+    _as_can_reexec=no; export _as_can_reexec;
+    # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+  *v*x* | *x*v* ) as_opts=-vx ;;
+  *v* ) as_opts=-v ;;
+  *x* ) as_opts=-x ;;
+  * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+as_fn_exit 255
+  fi
+  # We don't want this to propagate to other subprocesses.
+          { _as_can_reexec=; unset _as_can_reexec;}
 if test "x$CONFIG_SHELL" = x; then
   as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
   emulate sh
@@ -167,7 +190,8 @@ if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
 else
   exitcode=1; echo positional parameters were not saved.
 fi
-test x\$exitcode = x0 || exit 1"
+test x\$exitcode = x0 || exit 1
+test -x / || exit 1"
   as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
   as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
   eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
@@ -212,21 +236,25 @@ IFS=$as_save_IFS
 
 
       if test "x$CONFIG_SHELL" != x; then :
-  # We cannot yet assume a decent shell, so we have to provide a
-       # neutralization value for shells without unset; and this also
-       # works around shells that cannot unset nonexistent variables.
-       # Preserve -v and -x to the replacement shell.
-       BASH_ENV=/dev/null
-       ENV=/dev/null
-       (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-       export CONFIG_SHELL
-       case $- in # ((((
-         *v*x* | *x*v* ) as_opts=-vx ;;
-         *v* ) as_opts=-v ;;
-         *x* ) as_opts=-x ;;
-         * ) as_opts= ;;
-       esac
-       exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"}
+  export CONFIG_SHELL
+             # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+  *v*x* | *x*v* ) as_opts=-vx ;;
+  *v* ) as_opts=-v ;;
+  *x* ) as_opts=-x ;;
+  * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+exit 255
 fi
 
     if test x$as_have_required = xno; then :
@@ -328,6 +356,14 @@ $as_echo X"$as_dir" |
 
 
 } # as_fn_mkdir_p
+
+# as_fn_executable_p FILE
+# -----------------------
+# Test if FILE is an executable regular file.
+as_fn_executable_p ()
+{
+  test -f "$1" && test -x "$1"
+} # as_fn_executable_p
 # as_fn_append VAR VALUE
 # ----------------------
 # Append the text in VALUE to the end of the definition contained in VAR. Take
@@ -449,6 +485,10 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits
   chmod +x "$as_me.lineno" ||
     { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
 
+  # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
+  # already done that, so ensure we don't try to do so again and fall
+  # in an infinite loop.  This has already happened in practice.
+  _as_can_reexec=no; export _as_can_reexec
   # Don't try to exec as it changes $[0], causing all sort of problems
   # (the dirname of $[0] is not the place where we might find the
   # original and so on.  Autoconf is especially sensitive to this).
@@ -483,16 +523,16 @@ if (echo >conf$$.file) 2>/dev/null; then
     # ... but there are two gotchas:
     # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
     # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-    # In both cases, we have to default to `cp -p'.
+    # In both cases, we have to default to `cp -pR'.
     ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-      as_ln_s='cp -p'
+      as_ln_s='cp -pR'
   elif ln conf$$.file conf$$ 2>/dev/null; then
     as_ln_s=ln
   else
-    as_ln_s='cp -p'
+    as_ln_s='cp -pR'
   fi
 else
-  as_ln_s='cp -p'
+  as_ln_s='cp -pR'
 fi
 rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
 rmdir conf$$.dir 2>/dev/null
@@ -504,28 +544,8 @@ else
   as_mkdir_p=false
 fi
 
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-       test -d "$1/.";
-      else
-       case $1 in #(
-       -*)set "./$1";;
-       esac;
-       case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
-       ???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
+as_test_x='test -x'
+as_executable_p=as_fn_executable_p
 
 # Sed expression to map a string onto a valid CPP name.
 as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
@@ -557,8 +577,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='gob2'
 PACKAGE_TARNAME='gob2'
-PACKAGE_VERSION='2.0.19'
-PACKAGE_STRING='gob2 2.0.19'
+PACKAGE_VERSION='2.0.20'
+PACKAGE_STRING='gob2 2.0.20'
 PACKAGE_BUGREPORT=''
 PACKAGE_URL=''
 
@@ -606,6 +626,10 @@ NOINSTGOB_TRUE
 MAINT
 MAINTAINER_MODE_FALSE
 MAINTAINER_MODE_TRUE
+AM_BACKSLASH
+AM_DEFAULT_VERBOSITY
+AM_DEFAULT_V
+AM_V
 am__untar
 am__tar
 AMTAR
@@ -670,6 +694,7 @@ SHELL'
 ac_subst_files=''
 ac_user_opts='
 enable_option_checking
+enable_silent_rules
 enable_maintainer_mode
 enable_dependency_tracking
 '
@@ -1144,8 +1169,6 @@ target=$target_alias
 if test "x$host_alias" != x; then
   if test "x$build_alias" = x; then
     cross_compiling=maybe
-    $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
-    If a cross compiler is detected then cross compile mode will be used" >&2
   elif test "x$build_alias" != "x$host_alias"; then
     cross_compiling=yes
   fi
@@ -1231,7 +1254,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures gob2 2.0.19 to adapt to many kinds of systems.
+\`configure' configures gob2 2.0.20 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1297,7 +1320,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of gob2 2.0.19:";;
+     short | recursive ) echo "Configuration of gob2 2.0.20:";;
    esac
   cat <<\_ACEOF
 
@@ -1305,10 +1328,15 @@ Optional Features:
   --disable-option-checking  ignore unrecognized --enable/--with options
   --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
   --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
-  --enable-maintainer-mode  enable make rules and dependencies not useful
-                         (and sometimes confusing) to the casual installer
-  --disable-dependency-tracking  speeds up one-time build
-  --enable-dependency-tracking   do not reject slow dependency extractors
+  --enable-silent-rules   less verbose build output (undo: "make V=1")
+  --disable-silent-rules  verbose build output (undo: "make V=0")
+  --enable-maintainer-mode
+                          enable make rules and dependencies not useful (and
+                          sometimes confusing) to the casual installer
+  --enable-dependency-tracking
+                          do not reject slow dependency extractors
+  --disable-dependency-tracking
+                          speeds up one-time build
 
 Some influential environment variables:
   CC          C compiler command
@@ -1399,10 +1427,10 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-gob2 configure 2.0.19
-generated by GNU Autoconf 2.68
+gob2 configure 2.0.20
+generated by GNU Autoconf 2.69
 
-Copyright (C) 2010 Free Software Foundation, Inc.
+Copyright (C) 2012 Free Software Foundation, Inc.
 This configure script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it.
 _ACEOF
@@ -1478,7 +1506,7 @@ $as_echo "$ac_try_echo"; } >&5
         test ! -s conftest.err
        } && test -s conftest$ac_exeext && {
         test "$cross_compiling" = yes ||
-        $as_test_x conftest$ac_exeext
+        test -x conftest$ac_exeext
        }; then :
   ac_retval=0
 else
@@ -1579,8 +1607,8 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by gob2 $as_me 2.0.19, which was
-generated by GNU Autoconf 2.68.  Invocation command line was
+It was created by gob2 $as_me 2.0.20, which was
+generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
 
@@ -1928,7 +1956,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 
 
-am__api_version='1.11'
+am__api_version='1.13'
 
 ac_aux_dir=
 for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
@@ -1996,7 +2024,7 @@ case $as_dir/ in #((
     # by default.
     for ac_prog in ginstall scoinst install; do
       for ac_exec_ext in '' $ac_executable_extensions; do
-       if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
+       if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
          if test $ac_prog = install &&
            grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
            # AIX install.  It has an incompatible calling convention.
@@ -2054,9 +2082,6 @@ test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
 $as_echo_n "checking whether build environment is sane... " >&6; }
-# Just in case
-sleep 1
-echo timestamp > conftest.file
 # Reject unsafe characters in $srcdir or the absolute working directory
 # name.  Accept space and tab only in the latter.
 am_lf='
@@ -2067,32 +2092,40 @@ case `pwd` in
 esac
 case $srcdir in
   *[\\\"\#\$\&\'\`$am_lf\ \    ]*)
-    as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5;;
+    as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;;
 esac
 
-# Do `set' in a subshell so we don't clobber the current shell's
+# Do 'set' in a subshell so we don't clobber the current shell's
 # arguments.  Must try -L first in case configure is actually a
 # symlink; some systems play weird games with the mod time of symlinks
 # (eg FreeBSD returns the mod time of the symlink's containing
 # directory).
 if (
-   set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
-   if test "$*" = "X"; then
-      # -L didn't work.
-      set X `ls -t "$srcdir/configure" conftest.file`
-   fi
-   rm -f conftest.file
-   if test "$*" != "X $srcdir/configure conftest.file" \
-      && test "$*" != "X conftest.file $srcdir/configure"; then
-
-      # If neither matched, then we have a broken ls.  This can happen
-      # 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".
-      as_fn_error $? "ls -t appears to fail.  Make sure there is not a broken
-alias in your environment" "$LINENO" 5
-   fi
-
+   am_has_slept=no
+   for am_try in 1 2; do
+     echo "timestamp, slept: $am_has_slept" > conftest.file
+     set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
+     if test "$*" = "X"; then
+       # -L didn't work.
+       set X `ls -t "$srcdir/configure" conftest.file`
+     fi
+     if test "$*" != "X $srcdir/configure conftest.file" \
+       && test "$*" != "X conftest.file $srcdir/configure"; then
+
+       # If neither matched, then we have a broken ls.  This can happen
+       # 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".
+       as_fn_error $? "ls -t appears to fail.  Make sure there is not a broken
+  alias in your environment" "$LINENO" 5
+     fi
+     if test "$2" = conftest.file || test $am_try -eq 2; then
+       break
+     fi
+     # Just in case.
+     sleep 1
+     am_has_slept=yes
+   done
    test "$2" = conftest.file
    )
 then
@@ -2104,6 +2137,16 @@ Check your system clock" "$LINENO" 5
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 $as_echo "yes" >&6; }
+# If we didn't sleep, we still need to ensure time stamps of config.status and
+# generated files are strictly newer.
+am_sleep_pid=
+if grep 'slept: no' conftest.file >/dev/null 2>&1; then
+  ( sleep 1 ) &
+  am_sleep_pid=$!
+fi
+
+rm -f conftest.file
+
 test "$program_prefix" != NONE &&
   program_transform_name="s&^&$program_prefix&;$program_transform_name"
 # Use a double $ so make ignores it.
@@ -2126,12 +2169,12 @@ if test x"${MISSING+set}" != xset; then
   esac
 fi
 # Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
-  am_missing_run="$MISSING --run "
+if eval "$MISSING --is-lightweight"; then
+  am_missing_run="$MISSING "
 else
   am_missing_run=
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5
-$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
+$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
 fi
 
 if test x"${install_sh}" != xset; then
@@ -2143,10 +2186,10 @@ if test x"${install_sh}" != xset; then
   esac
 fi
 
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'.  However `strip' might not be the right
+# Installed binaries are usually stripped using 'strip' when the user
+# run "make install-strip".  However 'strip' might not be the right
 # tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
+# will honor the 'STRIP' environment variable to overrule this program.
 if test "$cross_compiling" != no; then
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
@@ -2165,7 +2208,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_STRIP="${ac_tool_prefix}strip"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2205,7 +2248,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_STRIP="strip"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2256,7 +2299,7 @@ do
   test -z "$as_dir" && as_dir=.
     for ac_prog in mkdir gmkdir; do
         for ac_exec_ext in '' $ac_executable_extensions; do
-          { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue
+          as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue
           case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
             'mkdir (GNU coreutils) '* | \
             'mkdir (coreutils) '* | \
@@ -2285,12 +2328,6 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
 $as_echo "$MKDIR_P" >&6; }
 
-mkdir_p="$MKDIR_P"
-case $mkdir_p in
-  [\\/$]* | ?:[\\/]*) ;;
-  */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
-esac
-
 for ac_prog in gawk mawk nawk awk
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
@@ -2309,7 +2346,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_AWK="$ac_prog"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2373,6 +2410,45 @@ else
 fi
 rmdir .tst 2>/dev/null
 
+# Check whether --enable-silent-rules was given.
+if test "${enable_silent_rules+set}" = set; then :
+  enableval=$enable_silent_rules;
+fi
+
+case $enable_silent_rules in # (((
+  yes) AM_DEFAULT_VERBOSITY=0;;
+   no) AM_DEFAULT_VERBOSITY=1;;
+    *) AM_DEFAULT_VERBOSITY=1;;
+esac
+am_make=${MAKE-make}
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
+$as_echo_n "checking whether $am_make supports nested variables... " >&6; }
+if ${am_cv_make_support_nested_variables+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if $as_echo 'TRUE=$(BAR$(V))
+BAR0=false
+BAR1=true
+V=1
+am__doit:
+       @$(TRUE)
+.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then
+  am_cv_make_support_nested_variables=yes
+else
+  am_cv_make_support_nested_variables=no
+fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
+$as_echo "$am_cv_make_support_nested_variables" >&6; }
+if test $am_cv_make_support_nested_variables = yes; then
+    AM_V='$(V)'
+  AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
+else
+  AM_V=$AM_DEFAULT_VERBOSITY
+  AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
+fi
+AM_BACKSLASH='\'
+
 if test "`cd $srcdir && pwd`" != "`pwd`"; then
   # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
   # is not polluted with repeated "-I."
@@ -2395,7 +2471,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='gob2'
- VERSION='2.0.19'
+ VERSION='2.0.20'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -2423,12 +2499,22 @@ AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
 
 MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
 
+# For better backward compatibility.  To be removed once Automake 1.9.x
+# dies out for good.  For more background, see:
+# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
+# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
+mkdir_p='$(MKDIR_P)'
+
 # We need awk for the "check" target.  The system "awk" is bad on
 # some platforms.
 # Always define AMTAR for backward compatibility.  Yes, it's still used
 # in the wild :-(  We should find a proper way to deprecate it ...
 AMTAR='$${TAR-tar}'
 
+
+# We'll loop over all known methods to create a tar archive until one works.
+_am_tools='gnutar  pax cpio none'
+
 am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'
 
 
@@ -2436,6 +2522,7 @@ am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'
 
 
 
+
 ac_config_headers="$ac_config_headers config.h"
 
 
@@ -2462,7 +2549,7 @@ fi
 
 
 
-GLIB_REQUIRED=2.0.0
+GLIB_REQUIRED=2.4.0
 
 
  if test -f ../NOINST_GOB; then
@@ -2502,7 +2589,7 @@ am__quote=
 _am_result=none
 # First try GNU make style include.
 echo "include confinc" > confmf
-# Ignore all kinds of additional output from `make'.
+# Ignore all kinds of additional output from 'make'.
 case `$am_make -s -f confmf 2> /dev/null` in #(
 *the\ am__doit\ target*)
   am__include=include
@@ -2568,7 +2655,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="${ac_tool_prefix}gcc"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2608,7 +2695,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CC="gcc"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2661,7 +2748,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="${ac_tool_prefix}cc"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2702,7 +2789,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
        ac_prog_rejected=yes
        continue
@@ -2760,7 +2847,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2804,7 +2891,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CC="$ac_prog"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -3250,8 +3337,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <stdarg.h>
 #include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
+struct stat;
 /* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
 struct buf { int x; };
 FILE * (*rcsopen) (struct buf *, struct stat *, int);
@@ -3347,8 +3433,8 @@ else
   # We make a subdir and do the tests there.  Otherwise we can end up
   # making bogus files that we don't know about and never remove.  For
   # instance it was reported that on HP-UX the gcc test will end up
-  # making a dummy file named `D' -- because `-MD' means `put the output
-  # in D'.
+  # making a dummy file named 'D' -- because '-MD' means "put the output
+  # in D".
   rm -rf conftest.dir
   mkdir conftest.dir
   # Copy depcomp to subdir because otherwise we won't find it if we're
@@ -3383,16 +3469,16 @@ else
     : > sub/conftest.c
     for i in 1 2 3 4 5 6; do
       echo '#include "conftst'$i'.h"' >> sub/conftest.c
-      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
-      # Solaris 8's {/usr,}/bin/sh.
-      touch sub/conftst$i.h
+      # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
+      # Solaris 10 /bin/sh.
+      echo '/* dummy */' > sub/conftst$i.h
     done
     echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
 
-    # We check with `-c' and `-o' for the sake of the "dashmstdout"
+    # We check with '-c' and '-o' for the sake of the "dashmstdout"
     # mode.  It turns out that the SunPro C++ compiler does not properly
-    # handle `-M -o', and we need to detect this.  Also, some Intel
-    # versions had trouble with output in subdirs
+    # handle '-M -o', and we need to detect this.  Also, some Intel
+    # versions had trouble with output in subdirs.
     am__obj=sub/conftest.${OBJEXT-o}
     am__minus_obj="-o $am__obj"
     case $depmode in
@@ -3401,8 +3487,8 @@ else
       test "$am__universal" = false || continue
       ;;
     nosideeffect)
-      # after this tag, mechanisms are not by side-effect, so they'll
-      # only be used when explicitly requested
+      # After this tag, mechanisms are not by side-effect, so they'll
+      # only be used when explicitly requested.
       if test "x$enable_dependency_tracking" = xyes; then
        continue
       else
@@ -3410,7 +3496,7 @@ else
       fi
       ;;
     msvc7 | msvc7msys | msvisualcpp | msvcmsys)
-      # This compiler won't grok `-c -o', but also, the minuso test has
+      # This compiler won't grok '-c -o', but also, the minuso test has
       # not run yet.  These depmodes are late enough in the game, and
       # so weak that their functioning should not be impacted.
       am__obj=conftest.${OBJEXT-o}
@@ -3543,7 +3629,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="${ac_tool_prefix}gcc"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -3583,7 +3669,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CC="gcc"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -3636,7 +3722,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="${ac_tool_prefix}cc"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -3677,7 +3763,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
        ac_prog_rejected=yes
        continue
@@ -3735,7 +3821,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -3779,7 +3865,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CC="$ac_prog"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -3975,8 +4061,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <stdarg.h>
 #include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
+struct stat;
 /* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
 struct buf { int x; };
 FILE * (*rcsopen) (struct buf *, struct stat *, int);
@@ -4072,8 +4157,8 @@ else
   # We make a subdir and do the tests there.  Otherwise we can end up
   # making bogus files that we don't know about and never remove.  For
   # instance it was reported that on HP-UX the gcc test will end up
-  # making a dummy file named `D' -- because `-MD' means `put the output
-  # in D'.
+  # making a dummy file named 'D' -- because '-MD' means "put the output
+  # in D".
   rm -rf conftest.dir
   mkdir conftest.dir
   # Copy depcomp to subdir because otherwise we won't find it if we're
@@ -4108,16 +4193,16 @@ else
     : > sub/conftest.c
     for i in 1 2 3 4 5 6; do
       echo '#include "conftst'$i'.h"' >> sub/conftest.c
-      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
-      # Solaris 8's {/usr,}/bin/sh.
-      touch sub/conftst$i.h
+      # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
+      # Solaris 10 /bin/sh.
+      echo '/* dummy */' > sub/conftst$i.h
     done
     echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
 
-    # We check with `-c' and `-o' for the sake of the "dashmstdout"
+    # We check with '-c' and '-o' for the sake of the "dashmstdout"
     # mode.  It turns out that the SunPro C++ compiler does not properly
-    # handle `-M -o', and we need to detect this.  Also, some Intel
-    # versions had trouble with output in subdirs
+    # handle '-M -o', and we need to detect this.  Also, some Intel
+    # versions had trouble with output in subdirs.
     am__obj=sub/conftest.${OBJEXT-o}
     am__minus_obj="-o $am__obj"
     case $depmode in
@@ -4126,8 +4211,8 @@ else
       test "$am__universal" = false || continue
       ;;
     nosideeffect)
-      # after this tag, mechanisms are not by side-effect, so they'll
-      # only be used when explicitly requested
+      # After this tag, mechanisms are not by side-effect, so they'll
+      # only be used when explicitly requested.
       if test "x$enable_dependency_tracking" = xyes; then
        continue
       else
@@ -4135,7 +4220,7 @@ else
       fi
       ;;
     msvc7 | msvc7msys | msvisualcpp | msvcmsys)
-      # This compiler won't grok `-c -o', but also, the minuso test has
+      # This compiler won't grok '-c -o', but also, the minuso test has
       # not run yet.  These depmodes are late enough in the game, and
       # so weak that their functioning should not be impacted.
       am__obj=conftest.${OBJEXT-o}
@@ -4343,7 +4428,7 @@ do
     for ac_prog in grep ggrep; do
     for ac_exec_ext in '' $ac_executable_extensions; do
       ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
+      as_fn_executable_p "$ac_path_GREP" || continue
 # Check for GNU ac_path_GREP and select it if it is found.
   # Check for GNU $ac_path_GREP
 case `"$ac_path_GREP" --version 2>&1` in
@@ -4409,7 +4494,7 @@ do
     for ac_prog in egrep; do
     for ac_exec_ext in '' $ac_executable_extensions; do
       ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
+      as_fn_executable_p "$ac_path_EGREP" || continue
 # Check for GNU ac_path_EGREP and select it if it is found.
   # Check for GNU $ac_path_EGREP
 case `"$ac_path_EGREP" --version 2>&1` in
@@ -4587,7 +4672,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_YACC="$ac_prog"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -4630,7 +4715,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_LEX="$ac_prog"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -4662,7 +4747,8 @@ a { ECHO; }
 b { REJECT; }
 c { yymore (); }
 d { yyless (1); }
-e { yyless (input () != 0); }
+e { /* IRIX 6.5 flex 2.5.4 underquotes its yyless argument.  */
+    yyless ((input () != 0)); }
 f { unput (yytext[0]); }
 . { BEGIN INITIAL; }
 %%
@@ -4929,7 +5015,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_path_RM="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -4970,7 +5056,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_path_MV="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -5011,7 +5097,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_path_TAR="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -5040,6 +5126,7 @@ fi
 
 
 
+
 if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
        if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
@@ -5060,7 +5147,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -5103,7 +5190,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -5168,6 +5255,7 @@ if test -n "$GLIB_CFLAGS"; then
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_GLIB_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= $GLIB_REQUIRED" 2>/dev/null`
+                     test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
 fi
@@ -5184,6 +5272,7 @@ if test -n "$GLIB_LIBS"; then
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_GLIB_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= $GLIB_REQUIRED" 2>/dev/null`
+                     test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
 fi
@@ -5203,9 +5292,9 @@ else
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-               GLIB_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "glib-2.0 >= $GLIB_REQUIRED" 2>&1`
+               GLIB_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "glib-2.0 >= $GLIB_REQUIRED" 2>&1`
         else
-               GLIB_PKG_ERRORS=`$PKG_CONFIG --print-errors "glib-2.0 >= $GLIB_REQUIRED" 2>&1`
+               GLIB_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "glib-2.0 >= $GLIB_REQUIRED" 2>&1`
         fi
        # Put the nasty error message in config.log where it belongs
        echo "$GLIB_PKG_ERRORS" >&5
@@ -5220,7 +5309,6 @@ installed software in a non-standard prefix.
 Alternatively, you may set the environment variables GLIB_CFLAGS
 and GLIB_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details." "$LINENO" 5
-
 elif test $pkg_failed = untried; then
        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
@@ -5236,7 +5324,6 @@ See the pkg-config man page for more details.
 
 To get pkg-config, see <http://pkg-config.freedesktop.org/>.
 See \`config.log' for more details" "$LINENO" 5; }
-
 else
        GLIB_CFLAGS=$pkg_cv_GLIB_CFLAGS
        GLIB_LIBS=$pkg_cv_GLIB_LIBS
@@ -5350,7 +5437,6 @@ DEFS=-DHAVE_CONFIG_H
 
 ac_libobjs=
 ac_ltlibobjs=
-U=
 for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
   # 1. Remove the extension, and $U if already installed.
   ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
@@ -5365,6 +5451,14 @@ LIBOBJS=$ac_libobjs
 LTLIBOBJS=$ac_ltlibobjs
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5
+$as_echo_n "checking that generated files are newer than configure... " >&6; }
+   if test -n "$am_sleep_pid"; then
+     # Hide warnings about reused PIDs.
+     wait $am_sleep_pid 2>/dev/null
+   fi
+   { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5
+$as_echo "done" >&6; }
  if test -n "$EXEEXT"; then
   am__EXEEXT_TRUE=
   am__EXEEXT_FALSE='#'
@@ -5691,16 +5785,16 @@ if (echo >conf$$.file) 2>/dev/null; then
     # ... but there are two gotchas:
     # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
     # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-    # In both cases, we have to default to `cp -p'.
+    # In both cases, we have to default to `cp -pR'.
     ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-      as_ln_s='cp -p'
+      as_ln_s='cp -pR'
   elif ln conf$$.file conf$$ 2>/dev/null; then
     as_ln_s=ln
   else
-    as_ln_s='cp -p'
+    as_ln_s='cp -pR'
   fi
 else
-  as_ln_s='cp -p'
+  as_ln_s='cp -pR'
 fi
 rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
 rmdir conf$$.dir 2>/dev/null
@@ -5760,28 +5854,16 @@ else
   as_mkdir_p=false
 fi
 
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-       test -d "$1/.";
-      else
-       case $1 in #(
-       -*)set "./$1";;
-       esac;
-       case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
-       ???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
+
+# as_fn_executable_p FILE
+# -----------------------
+# Test if FILE is an executable regular file.
+as_fn_executable_p ()
+{
+  test -f "$1" && test -x "$1"
+} # as_fn_executable_p
+as_test_x='test -x'
+as_executable_p=as_fn_executable_p
 
 # Sed expression to map a string onto a valid CPP name.
 as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
@@ -5802,8 +5884,8 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by gob2 $as_me 2.0.19, which was
-generated by GNU Autoconf 2.68.  Invocation command line was
+This file was extended by gob2 $as_me 2.0.20, which was
+generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
   CONFIG_HEADERS  = $CONFIG_HEADERS
@@ -5868,11 +5950,11 @@ _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-gob2 config.status 2.0.19
-configured by $0, generated by GNU Autoconf 2.68,
+gob2 config.status 2.0.20
+configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
-Copyright (C) 2010 Free Software Foundation, Inc.
+Copyright (C) 2012 Free Software Foundation, Inc.
 This config.status script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it."
 
@@ -5963,7 +6045,7 @@ fi
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 if \$ac_cs_recheck; then
-  set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
+  set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
   shift
   \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
   CONFIG_SHELL='$SHELL'
@@ -6601,7 +6683,7 @@ $as_echo "$as_me: executing $ac_file commands" >&6;}
 
   case $ac_file$ac_mode in
     "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
-  # Autoconf 2.62 quotes --file arguments for eval, but not when files
+  # Older Autoconf quotes --file arguments for eval, but not when files
   # are listed without --file.  Let's play safe and only enable the eval
   # if we detect the quoting.
   case $CONFIG_FILES in
@@ -6614,7 +6696,7 @@ $as_echo "$as_me: executing $ac_file commands" >&6;}
     # Strip MF so we end up with the name of the file.
     mf=`echo "$mf" | sed -e 's/:.*$//'`
     # Check whether this is an Automake generated Makefile or not.
-    # We used to match only the files named `Makefile.in', but
+    # We used to match only the files named 'Makefile.in', but
     # some people rename them; so instead we look at the file content.
     # Grep'ing the first line is not enough: some people post-process
     # each Makefile.in and add a new line on top of each file to say so.
@@ -6648,21 +6730,19 @@ $as_echo X"$mf" |
       continue
     fi
     # Extract the definition of DEPDIR, am__include, and am__quote
-    # from the Makefile without running `make'.
+    # from the Makefile without running 'make'.
     DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
     test -z "$DEPDIR" && continue
     am__include=`sed -n 's/^am__include = //p' < "$mf"`
-    test -z "am__include" && continue
+    test -z "$am__include" && continue
     am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
-    # When using ansi2knr, U may be empty or an underscore; expand it
-    U=`sed -n 's/^U = //p' < "$mf"`
     # Find all dependency output files, they are included files with
     # $(DEPDIR) in their names.  We invoke sed twice because it is the
     # simplest approach to changing $(DEPDIR) to its actual value in the
     # expansion.
     for file in `sed -n "
       s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
-        sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+        sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
       # Make sure the directory exists.
       test -f "$dirpart/$file" && continue
       fdir=`$as_dirname -- "$file" ||
index d5efb443c2708c1bac0e1d4d05192b54c222449c..543a4c0f44d4057f36ad6996cc61b35ed015441f 100644 (file)
@@ -1,12 +1,12 @@
 dnl Process this file with autoconf to produce a configure script.
-AC_INIT([gob2], [2.0.19])
+AC_INIT([gob2], [2.0.20])
 AC_CONFIG_SRCDIR([src/treefuncs.h])
 AM_INIT_AUTOMAKE([dist-xz])
 
 AM_CONFIG_HEADER(config.h)
 AM_MAINTAINER_MODE
 
-GLIB_REQUIRED=2.0.0
+GLIB_REQUIRED=2.4.0
 
 dnl
 dnl  An utter hack to allow embedding of gob inside other packages.
diff --git a/depcomp b/depcomp
index 25a39e6cd5c82d7276f6ccc62ef5e7ba1cc9776f..4ebd5b3a2f2d689de95251c9424e2763aa159de5 100755 (executable)
--- a/depcomp
+++ b/depcomp
@@ -1,10 +1,9 @@
 #! /bin/sh
 # depcomp - compile a program generating dependencies as side-effects
 
-scriptversion=2012-03-27.16; # UTC
+scriptversion=2013-05-30.07; # UTC
 
-# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009, 2010,
-# 2011, 2012 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 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
@@ -28,9 +27,9 @@ scriptversion=2012-03-27.16; # UTC
 
 case $1 in
   '')
-     echo "$0: No command.  Try '$0 --help' for more information." 1>&2
-     exit 1;
-     ;;
+    echo "$0: No command.  Try '$0 --help' for more information." 1>&2
+    exit 1;
+    ;;
   -h | --h*)
     cat <<\EOF
 Usage: depcomp [--help] [--version] PROGRAM [ARGS]
@@ -57,11 +56,65 @@ EOF
     ;;
 esac
 
+# Get the directory component of the given path, and save it in the
+# global variables '$dir'.  Note that this directory component will
+# be either empty or ending with a '/' character.  This is deliberate.
+set_dir_from ()
+{
+  case $1 in
+    */*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;;
+      *) dir=;;
+  esac
+}
+
+# Get the suffix-stripped basename of the given path, and save it the
+# global variable '$base'.
+set_base_from ()
+{
+  base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'`
+}
+
+# If no dependency file was actually created by the compiler invocation,
+# we still have to create a dummy depfile, to avoid errors with the
+# Makefile "include basename.Plo" scheme.
+make_dummy_depfile ()
+{
+  echo "#dummy" > "$depfile"
+}
+
+# Factor out some common post-processing of the generated depfile.
+# Requires the auxiliary global variable '$tmpdepfile' to be set.
+aix_post_process_depfile ()
+{
+  # If the compiler actually managed to produce a dependency file,
+  # post-process it.
+  if test -f "$tmpdepfile"; then
+    # Each line is of the form 'foo.o: dependency.h'.
+    # Do two passes, one to just change these to
+    #   $object: dependency.h
+    # and one to simply output
+    #   dependency.h:
+    # which is needed to avoid the deleted-header problem.
+    { sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile"
+      sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile"
+    } > "$depfile"
+    rm -f "$tmpdepfile"
+  else
+    make_dummy_depfile
+  fi
+}
+
 # A tabulation character.
 tab='  '
 # A newline character.
 nl='
 '
+# Character ranges might be problematic outside the C locale.
+# These definitions help.
+upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ
+lower=abcdefghijklmnopqrstuvwxyz
+digits=0123456789
+alpha=${upper}${lower}
 
 if test -z "$depmode" || test -z "$source" || test -z "$object"; then
   echo "depcomp: Variables source, object and depmode must be set" 1>&2
@@ -75,6 +128,9 @@ tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
 
 rm -f "$tmpdepfile"
 
+# Avoid interferences from the environment.
+gccflag= dashmflag=
+
 # Some modes work just like other modes, but use different flags.  We
 # parameterize here, but still list the modes in the big case below,
 # to make depend.m4 easier to write.  Note that we *cannot* use a case
@@ -86,32 +142,32 @@ if test "$depmode" = hp; then
 fi
 
 if test "$depmode" = dashXmstdout; then
-   # This is just like dashmstdout with a different argument.
-   dashmflag=-xM
-   depmode=dashmstdout
+  # This is just like dashmstdout with a different argument.
+  dashmflag=-xM
+  depmode=dashmstdout
 fi
 
 cygpath_u="cygpath -u -f -"
 if test "$depmode" = msvcmsys; then
-   # This is just like msvisualcpp but w/o cygpath translation.
-   # Just convert the backslash-escaped backslashes to single forward
-   # slashes to satisfy depend.m4
-   cygpath_u='sed s,\\\\,/,g'
-   depmode=msvisualcpp
+  # This is just like msvisualcpp but w/o cygpath translation.
+  # Just convert the backslash-escaped backslashes to single forward
+  # slashes to satisfy depend.m4
+  cygpath_u='sed s,\\\\,/,g'
+  depmode=msvisualcpp
 fi
 
 if test "$depmode" = msvc7msys; then
-   # This is just like msvc7 but w/o cygpath translation.
-   # Just convert the backslash-escaped backslashes to single forward
-   # slashes to satisfy depend.m4
-   cygpath_u='sed s,\\\\,/,g'
-   depmode=msvc7
+  # This is just like msvc7 but w/o cygpath translation.
+  # Just convert the backslash-escaped backslashes to single forward
+  # slashes to satisfy depend.m4
+  cygpath_u='sed s,\\\\,/,g'
+  depmode=msvc7
 fi
 
 if test "$depmode" = xlc; then
-   # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency informations.
-   gccflag=-qmakedep=gcc,-MF
-   depmode=gcc
+  # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information.
+  gccflag=-qmakedep=gcc,-MF
+  depmode=gcc
 fi
 
 case "$depmode" in
@@ -134,8 +190,7 @@ gcc3)
   done
   "$@"
   stat=$?
-  if test $stat -eq 0; then :
-  else
+  if test $stat -ne 0; then
     rm -f "$tmpdepfile"
     exit $stat
   fi
@@ -143,13 +198,17 @@ gcc3)
   ;;
 
 gcc)
+## Note that this doesn't just cater to obsosete pre-3.x GCC compilers.
+## but also to in-use compilers like IMB xlc/xlC and the HP C compiler.
+## (see the conditional assignment to $gccflag above).
 ## There are various ways to get dependency output from gcc.  Here's
 ## why we pick this rather obscure method:
 ## - Don't want to use -MD because we'd like the dependencies to end
 ##   up in a subdir.  Having to rename by hand is ugly.
 ##   (We might end up doing this anyway to support other compilers.)
 ## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
-##   -MM, not -M (despite what the docs say).
+##   -MM, not -M (despite what the docs say).  Also, it might not be
+##   supported by the other compilers which use the 'gcc' depmode.
 ## - Using -M directly means running the compiler twice (even worse
 ##   than renaming).
   if test -z "$gccflag"; then
@@ -157,15 +216,14 @@ gcc)
   fi
   "$@" -Wp,"$gccflag$tmpdepfile"
   stat=$?
-  if test $stat -eq 0; then :
-  else
+  if test $stat -ne 0; then
     rm -f "$tmpdepfile"
     exit $stat
   fi
   rm -f "$depfile"
   echo "$object : \\" > "$depfile"
-  alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
-## The second -e expression handles DOS-style file names with drive letters.
+  # The second -e expression handles DOS-style file names with drive
+  # letters.
   sed -e 's/^[^:]*: / /' \
       -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
 ## This next piece of magic avoids the "deleted header file" problem.
@@ -174,15 +232,15 @@ gcc)
 ## typically no way to rebuild the header).  We avoid this by adding
 ## dummy dependencies for each header file.  Too bad gcc doesn't do
 ## this for us directly.
-  tr ' ' "$nl" < "$tmpdepfile" |
 ## Some versions of gcc put a space before the ':'.  On the theory
 ## that the space means something, we add a space to the output as
 ## well.  hp depmode also adds that space, but also prefixes the VPATH
 ## to the object.  Take care to not repeat it in the output.
 ## Some versions of the HPUX 10.20 sed can't process this invocation
 ## correctly.  Breaking it into two sed invocations is a workaround.
-    sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
-      | sed -e 's/$/ :/' >> "$depfile"
+  tr ' ' "$nl" < "$tmpdepfile" \
+    | sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
+    | sed -e 's/$/ :/' >> "$depfile"
   rm -f "$tmpdepfile"
   ;;
 
@@ -200,8 +258,7 @@ sgi)
     "$@" -MDupdate "$tmpdepfile"
   fi
   stat=$?
-  if test $stat -eq 0; then :
-  else
+  if test $stat -ne 0; then
     rm -f "$tmpdepfile"
     exit $stat
   fi
@@ -209,7 +266,6 @@ sgi)
 
   if test -f "$tmpdepfile"; then  # yes, the sourcefile depend on other files
     echo "$object : \\" > "$depfile"
-
     # Clip off the initial element (the dependent).  Don't try to be
     # clever and replace this with sed code, as IRIX sed won't handle
     # lines with more than a fixed number of characters (4096 in
@@ -217,19 +273,15 @@ sgi)
     # the IRIX cc adds comments like '#:fec' to the end of the
     # dependency line.
     tr ' ' "$nl" < "$tmpdepfile" \
-    | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
-    tr "$nl" ' ' >> "$depfile"
+      | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \
+      | tr "$nl" ' ' >> "$depfile"
     echo >> "$depfile"
-
     # The second pass generates a dummy entry for each header file.
     tr ' ' "$nl" < "$tmpdepfile" \
-   | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
-   >> "$depfile"
+      | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
+      >> "$depfile"
   else
-    # The sourcefile does not contain any dependencies, so just
-    # store a dummy comment line, to avoid errors with the Makefile
-    # "include basename.Plo" scheme.
-    echo "#dummy" > "$depfile"
+    make_dummy_depfile
   fi
   rm -f "$tmpdepfile"
   ;;
@@ -247,9 +299,8 @@ aix)
   # current directory.  Also, the AIX compiler puts '$object:' at the
   # start of each line; $object doesn't have directory information.
   # Version 6 uses the directory in both cases.
-  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
-  test "x$dir" = "x$object" && dir=
-  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+  set_dir_from "$object"
+  set_base_from "$object"
   if test "$libtool" = yes; then
     tmpdepfile1=$dir$base.u
     tmpdepfile2=$base.u
@@ -262,9 +313,7 @@ aix)
     "$@" -M
   fi
   stat=$?
-
-  if test $stat -eq 0; then :
-  else
+  if test $stat -ne 0; then
     rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
     exit $stat
   fi
@@ -273,65 +322,113 @@ aix)
   do
     test -f "$tmpdepfile" && break
   done
-  if test -f "$tmpdepfile"; then
-    # Each line is of the form 'foo.o: dependent.h'.
-    # Do two passes, one to just change these to
-    # '$object: dependent.h' and one to simply 'dependent.h:'.
-    sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
-    sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
-  else
-    # The sourcefile does not contain any dependencies, so just
-    # store a dummy comment line, to avoid errors with the Makefile
-    # "include basename.Plo" scheme.
-    echo "#dummy" > "$depfile"
+  aix_post_process_depfile
+  ;;
+
+tcc)
+  # tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26
+  # FIXME: That version still under development at the moment of writing.
+  #        Make that this statement remains true also for stable, released
+  #        versions.
+  # It will wrap lines (doesn't matter whether long or short) with a
+  # trailing '\', as in:
+  #
+  #   foo.o : \
+  #    foo.c \
+  #    foo.h \
+  #
+  # It will put a trailing '\' even on the last line, and will use leading
+  # spaces rather than leading tabs (at least since its commit 0394caf7
+  # "Emit spaces for -MD").
+  "$@" -MD -MF "$tmpdepfile"
+  stat=$?
+  if test $stat -ne 0; then
+    rm -f "$tmpdepfile"
+    exit $stat
   fi
+  rm -f "$depfile"
+  # Each non-empty line is of the form 'foo.o : \' or ' dep.h \'.
+  # We have to change lines of the first kind to '$object: \'.
+  sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile"
+  # And for each line of the second kind, we have to emit a 'dep.h:'
+  # dummy dependency, to avoid the deleted-header problem.
+  sed -n -e 's|^  *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile"
   rm -f "$tmpdepfile"
   ;;
 
-icc)
-  # Intel's C compiler anf tcc (Tiny C Compiler) understand '-MD -MF file'.
-  # However on
-  #    $CC -MD -MF foo.d -c -o sub/foo.o sub/foo.c
-  # ICC 7.0 will fill foo.d with something like
-  #    foo.o: sub/foo.c
-  #    foo.o: sub/foo.h
-  # which is wrong.  We want
-  #    sub/foo.o: sub/foo.c
-  #    sub/foo.o: sub/foo.h
-  #    sub/foo.c:
-  #    sub/foo.h:
-  # ICC 7.1 will output
+## The order of this option in the case statement is important, since the
+## shell code in configure will try each of these formats in the order
+## listed in this file.  A plain '-MD' option would be understood by many
+## compilers, so we must ensure this comes after the gcc and icc options.
+pgcc)
+  # Portland's C compiler understands '-MD'.
+  # Will always output deps to 'file.d' where file is the root name of the
+  # source file under compilation, even if file resides in a subdirectory.
+  # The object file name does not affect the name of the '.d' file.
+  # pgcc 10.2 will output
   #    foo.o: sub/foo.c sub/foo.h
-  # and will wrap long lines using '\':
+  # and will wrap long lines using '\' :
   #    foo.o: sub/foo.c ... \
   #     sub/foo.h ... \
   #     ...
-  # tcc 0.9.26 (FIXME still under development at the moment of writing)
-  # will emit a similar output, but also prepend the continuation lines
-  # with horizontal tabulation characters.
-  "$@" -MD -MF "$tmpdepfile"
-  stat=$?
-  if test $stat -eq 0; then :
-  else
+  set_dir_from "$object"
+  # Use the source, not the object, to determine the base name, since
+  # that's sadly what pgcc will do too.
+  set_base_from "$source"
+  tmpdepfile=$base.d
+
+  # For projects that build the same source file twice into different object
+  # files, the pgcc approach of using the *source* file root name can cause
+  # problems in parallel builds.  Use a locking strategy to avoid stomping on
+  # the same $tmpdepfile.
+  lockdir=$base.d-lock
+  trap "
+    echo '$0: caught signal, cleaning up...' >&2
+    rmdir '$lockdir'
+    exit 1
+  " 1 2 13 15
+  numtries=100
+  i=$numtries
+  while test $i -gt 0; do
+    # mkdir is a portable test-and-set.
+    if mkdir "$lockdir" 2>/dev/null; then
+      # This process acquired the lock.
+      "$@" -MD
+      stat=$?
+      # Release the lock.
+      rmdir "$lockdir"
+      break
+    else
+      # If the lock is being held by a different process, wait
+      # until the winning process is done or we timeout.
+      while test -d "$lockdir" && test $i -gt 0; do
+        sleep 1
+        i=`expr $i - 1`
+      done
+    fi
+    i=`expr $i - 1`
+  done
+  trap - 1 2 13 15
+  if test $i -le 0; then
+    echo "$0: failed to acquire lock after $numtries attempts" >&2
+    echo "$0: check lockdir '$lockdir'" >&2
+    exit 1
+  fi
+
+  if test $stat -ne 0; then
     rm -f "$tmpdepfile"
     exit $stat
   fi
   rm -f "$depfile"
-  # Each line is of the form 'foo.o: dependent.h',
-  # or 'foo.o: dep1.h dep2.h \', or ' dep3.h dep4.h \'.
+  # Each line is of the form `foo.o: dependent.h',
+  # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
   # Do two passes, one to just change these to
-  # '$object: dependent.h' and one to simply 'dependent.h:'.
-  sed -e "s/^[ $tab][ $tab]*/  /" -e "s,^[^:]*:,$object :," \
-    < "$tmpdepfile" > "$depfile"
-  sed '
-    s/[ '"$tab"'][ '"$tab"']*/ /g
-    s/^ *//
-    s/ *\\*$//
-    s/^[^:]*: *//
-    /^$/d
-    /:$/d
-    s/$/ :/
-  ' < "$tmpdepfile" >> "$depfile"
+  # `$object: dependent.h' and one to simply `dependent.h:'.
+  sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
+  # Some versions of the HPUX 10.20 sed can't process this invocation
+  # correctly.  Breaking it into two sed invocations is a workaround.
+  sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \
+    | sed -e 's/$/ :/' >> "$depfile"
   rm -f "$tmpdepfile"
   ;;
 
@@ -342,9 +439,8 @@ hp2)
   # 'foo.d', which lands next to the object file, wherever that
   # happens to be.
   # Much of this is similar to the tru64 case; see comments there.
-  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
-  test "x$dir" = "x$object" && dir=
-  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+  set_dir_from  "$object"
+  set_base_from "$object"
   if test "$libtool" = yes; then
     tmpdepfile1=$dir$base.d
     tmpdepfile2=$dir.libs/$base.d
@@ -355,8 +451,7 @@ hp2)
     "$@" +Maked
   fi
   stat=$?
-  if test $stat -eq 0; then :
-  else
+  if test $stat -ne 0; then
      rm -f "$tmpdepfile1" "$tmpdepfile2"
      exit $stat
   fi
@@ -366,76 +461,61 @@ hp2)
     test -f "$tmpdepfile" && break
   done
   if test -f "$tmpdepfile"; then
-    sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
+    sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile"
     # Add 'dependent.h:' lines.
     sed -ne '2,${
-              s/^ *//
-              s/ \\*$//
-              s/$/:/
-              p
-            }' "$tmpdepfile" >> "$depfile"
+               s/^ *//
+               s/ \\*$//
+               s/$/:/
+               p
+             }' "$tmpdepfile" >> "$depfile"
   else
-    echo "#dummy" > "$depfile"
+    make_dummy_depfile
   fi
   rm -f "$tmpdepfile" "$tmpdepfile2"
   ;;
 
 tru64)
-   # The Tru64 compiler uses -MD to generate dependencies as a side
-   # effect.  'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
-   # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
-   # dependencies in 'foo.d' instead, so we check for that too.
-   # Subdirectories are respected.
-   dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
-   test "x$dir" = "x$object" && dir=
-   base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
-
-   if test "$libtool" = yes; then
-      # With Tru64 cc, shared objects can also be used to make a
-      # static library.  This mechanism is used in libtool 1.4 series to
-      # handle both shared and static libraries in a single compilation.
-      # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
-      #
-      # With libtool 1.5 this exception was removed, and libtool now
-      # generates 2 separate objects for the 2 libraries.  These two
-      # compilations output dependencies in $dir.libs/$base.o.d and
-      # in $dir$base.o.d.  We have to check for both files, because
-      # one of the two compilations can be disabled.  We should prefer
-      # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
-      # automatically cleaned when .libs/ is deleted, while ignoring
-      # the former would cause a distcleancheck panic.
-      tmpdepfile1=$dir.libs/$base.lo.d   # libtool 1.4
-      tmpdepfile2=$dir$base.o.d          # libtool 1.5
-      tmpdepfile3=$dir.libs/$base.o.d    # libtool 1.5
-      tmpdepfile4=$dir.libs/$base.d      # Compaq CCC V6.2-504
-      "$@" -Wc,-MD
-   else
-      tmpdepfile1=$dir$base.o.d
-      tmpdepfile2=$dir$base.d
-      tmpdepfile3=$dir$base.d
-      tmpdepfile4=$dir$base.d
-      "$@" -MD
-   fi
-
-   stat=$?
-   if test $stat -eq 0; then :
-   else
-      rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
-      exit $stat
-   fi
-
-   for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
-   do
-     test -f "$tmpdepfile" && break
-   done
-   if test -f "$tmpdepfile"; then
-      sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
-      sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
-   else
-      echo "#dummy" > "$depfile"
-   fi
-   rm -f "$tmpdepfile"
-   ;;
+  # The Tru64 compiler uses -MD to generate dependencies as a side
+  # effect.  'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
+  # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
+  # dependencies in 'foo.d' instead, so we check for that too.
+  # Subdirectories are respected.
+  set_dir_from  "$object"
+  set_base_from "$object"
+
+  if test "$libtool" = yes; then
+    # Libtool generates 2 separate objects for the 2 libraries.  These
+    # two compilations output dependencies in $dir.libs/$base.o.d and
+    # in $dir$base.o.d.  We have to check for both files, because
+    # one of the two compilations can be disabled.  We should prefer
+    # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
+    # automatically cleaned when .libs/ is deleted, while ignoring
+    # the former would cause a distcleancheck panic.
+    tmpdepfile1=$dir$base.o.d          # libtool 1.5
+    tmpdepfile2=$dir.libs/$base.o.d    # Likewise.
+    tmpdepfile3=$dir.libs/$base.d      # Compaq CCC V6.2-504
+    "$@" -Wc,-MD
+  else
+    tmpdepfile1=$dir$base.d
+    tmpdepfile2=$dir$base.d
+    tmpdepfile3=$dir$base.d
+    "$@" -MD
+  fi
+
+  stat=$?
+  if test $stat -ne 0; then
+    rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
+    exit $stat
+  fi
+
+  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
+  do
+    test -f "$tmpdepfile" && break
+  done
+  # Same post-processing that is required for AIX mode.
+  aix_post_process_depfile
+  ;;
 
 msvc7)
   if test "$libtool" = yes; then
@@ -446,8 +526,7 @@ msvc7)
   "$@" $showIncludes > "$tmpdepfile"
   stat=$?
   grep -v '^Note: including file: ' "$tmpdepfile"
-  if test "$stat" = 0; then :
-  else
+  if test $stat -ne 0; then
     rm -f "$tmpdepfile"
     exit $stat
   fi
@@ -473,6 +552,7 @@ $ {
   G
   p
 }' >> "$depfile"
+  echo >> "$depfile" # make sure the fragment doesn't end with a backslash
   rm -f "$tmpdepfile"
   ;;
 
@@ -524,13 +604,14 @@ dashmstdout)
   # in the target name.  This is to cope with DOS-style filenames:
   # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.
   "$@" $dashmflag |
-    sed 's:^['"$tab"' ]*[^:'"$tab"' ][^:][^:]*\:['"$tab"' ]*:'"$object"'\: :' > "$tmpdepfile"
+    sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile"
   rm -f "$depfile"
   cat < "$tmpdepfile" > "$depfile"
-  tr ' ' "$nl" < "$tmpdepfile" | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly.  Breaking it into two sed invocations is a workaround.
-    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+  # Some versions of the HPUX 10.20 sed can't process this sed invocation
+  # correctly.  Breaking it into two sed invocations is a workaround.
+  tr ' ' "$nl" < "$tmpdepfile" \
+    | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
+    | sed -e 's/$/ :/' >> "$depfile"
   rm -f "$tmpdepfile"
   ;;
 
@@ -583,10 +664,12 @@ makedepend)
   # makedepend may prepend the VPATH from the source file name to the object.
   # No need to regex-escape $object, excess matching of '.' is harmless.
   sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
-  sed '1,2d' "$tmpdepfile" | tr ' ' "$nl" | \
-## Some versions of the HPUX 10.20 sed can't process this invocation
-## correctly.  Breaking it into two sed invocations is a workaround.
-    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+  # Some versions of the HPUX 10.20 sed can't process the last invocation
+  # correctly.  Breaking it into two sed invocations is a workaround.
+  sed '1,2d' "$tmpdepfile" \
+    | tr ' ' "$nl" \
+    | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
+    | sed -e 's/$/ :/' >> "$depfile"
   rm -f "$tmpdepfile" "$tmpdepfile".bak
   ;;
 
@@ -622,10 +705,10 @@ cpp)
     esac
   done
 
-  "$@" -E |
-    sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
-       -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
-    sed '$ s: \\$::' > "$tmpdepfile"
+  "$@" -E \
+    sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
+             -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
+    sed '$ s: \\$::' > "$tmpdepfile"
   rm -f "$depfile"
   echo "$object : \\" > "$depfile"
   cat < "$tmpdepfile" >> "$depfile"
@@ -657,15 +740,15 @@ msvisualcpp)
       shift
       ;;
     "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
-       set fnord "$@"
-       shift
-       shift
-       ;;
+        set fnord "$@"
+        shift
+        shift
+        ;;
     *)
-       set fnord "$@" "$arg"
-       shift
-       shift
-       ;;
+        set fnord "$@" "$arg"
+        shift
+        shift
+        ;;
     esac
   done
   "$@" -E 2>/dev/null |
index 1a82ce1ceac51cbfb3db4cdd744182b24f2611b4..b6741140f085af274654bbbca14de3fdcef6150f 100644 (file)
@@ -1,9 +1,8 @@
-# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
 @SET_MAKE@
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
+    esac; \
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -49,7 +76,7 @@ NORMAL_UNINSTALL = :
 PRE_UNINSTALL = :
 POST_UNINSTALL = :
 subdir = doc
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
        $(srcdir)/gob2.1.in
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/configure.in
@@ -59,15 +86,28 @@ mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES = gob2.1
 CONFIG_CLEAN_VPATH_FILES =
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN     " $@;
+am__v_GEN_1 = 
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 = 
 SOURCES =
 DIST_SOURCES =
-RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
-       html-recursive info-recursive install-data-recursive \
-       install-dvi-recursive install-exec-recursive \
-       install-html-recursive install-info-recursive \
-       install-pdf-recursive install-ps-recursive install-recursive \
-       installcheck-recursive installdirs-recursive pdf-recursive \
-       ps-recursive uninstall-recursive
+RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
+       ctags-recursive dvi-recursive html-recursive info-recursive \
+       install-data-recursive install-dvi-recursive \
+       install-exec-recursive install-html-recursive \
+       install-info-recursive install-pdf-recursive \
+       install-ps-recursive install-recursive installcheck-recursive \
+       installdirs-recursive pdf-recursive ps-recursive \
+       tags-recursive uninstall-recursive
 am__can_run_installinfo = \
   case $$AM_UPDATE_INFO_DIR in \
     n|no|NO) false;; \
@@ -106,9 +146,29 @@ NROFF = nroff
 MANS = $(man_MANS)
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive        \
   distclean-recursive maintainer-clean-recursive
-AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
-       $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+am__recursive_targets = \
+  $(RECURSIVE_TARGETS) \
+  $(RECURSIVE_CLEAN_TARGETS) \
+  $(am__extra_recursive_targets)
+AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
        distdir
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
@@ -140,6 +200,7 @@ am__relativize = \
   reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 AUTOCONF = @AUTOCONF@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
@@ -321,22 +382,25 @@ uninstall-man1:
        dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
 
 # This directory's subdirectories are mostly independent; you can cd
-# into them and run `make' without going through this Makefile.
-# To change the values of `make' variables: instead of editing Makefiles,
-# (1) if the variable is set in `config.status', edit `config.status'
-#     (which will cause the Makefiles to be regenerated when you run `make');
-# (2) otherwise, pass the desired values on the `make' command line.
-$(RECURSIVE_TARGETS):
-       @fail= failcom='exit 1'; \
-       for f in x $$MAKEFLAGS; do \
-         case $$f in \
-           *=* | --[!k]*);; \
-           *k*) failcom='fail=yes';; \
-         esac; \
-       done; \
+# into them and run 'make' without going through this Makefile.
+# To change the values of 'make' variables: instead of editing Makefiles,
+# (1) if the variable is set in 'config.status', edit 'config.status'
+#     (which will cause the Makefiles to be regenerated when you run 'make');
+# (2) otherwise, pass the desired values on the 'make' command line.
+$(am__recursive_targets):
+       @fail=; \
+       if $(am__make_keepgoing); then \
+         failcom='fail=yes'; \
+       else \
+         failcom='exit 1'; \
+       fi; \
        dot_seen=no; \
        target=`echo $@ | sed s/-recursive//`; \
-       list='$(SUBDIRS)'; for subdir in $$list; do \
+       case "$@" in \
+         distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+         *) list='$(SUBDIRS)' ;; \
+       esac; \
+       for subdir in $$list; do \
          echo "Making $$target in $$subdir"; \
          if test "$$subdir" = "."; then \
            dot_seen=yes; \
@@ -351,57 +415,12 @@ $(RECURSIVE_TARGETS):
          $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
        fi; test -z "$$fail"
 
-$(RECURSIVE_CLEAN_TARGETS):
-       @fail= failcom='exit 1'; \
-       for f in x $$MAKEFLAGS; do \
-         case $$f in \
-           *=* | --[!k]*);; \
-           *k*) failcom='fail=yes';; \
-         esac; \
-       done; \
-       dot_seen=no; \
-       case "$@" in \
-         distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
-         *) list='$(SUBDIRS)' ;; \
-       esac; \
-       rev=''; for subdir in $$list; do \
-         if test "$$subdir" = "."; then :; else \
-           rev="$$subdir $$rev"; \
-         fi; \
-       done; \
-       rev="$$rev ."; \
-       target=`echo $@ | sed s/-recursive//`; \
-       for subdir in $$rev; do \
-         echo "Making $$target in $$subdir"; \
-         if test "$$subdir" = "."; then \
-           local_target="$$target-am"; \
-         else \
-           local_target="$$target"; \
-         fi; \
-         ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-         || eval $$failcom; \
-       done && test -z "$$fail"
-tags-recursive:
-       list='$(SUBDIRS)'; for subdir in $$list; do \
-         test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
-       done
-ctags-recursive:
-       list='$(SUBDIRS)'; for subdir in $$list; do \
-         test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
-       done
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-recursive
+TAGS: tags
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
        if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
@@ -417,12 +436,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
          fi; \
        done; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -434,15 +448,11 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-recursive
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -451,24 +461,26 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-recursive
+
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
+       case "$(srcdir)" in \
+         [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+         *) sdir=$(subdir)/$(srcdir) ;; \
+       esac; \
+       for i in $$list; do \
+         if test -f "$$i"; then \
+           echo "$(subdir)/$$i"; \
+         else \
+           echo "$$sdir/$$i"; \
+         fi; \
+       done >> $(top_builddir)/cscope.files
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
 distdir: $(DISTFILES)
-       @list='$(MANS)'; if test -n "$$list"; then \
-         list=`for p in $$list; do \
-           if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
-           if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
-         if test -n "$$list" && \
-           grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
-           echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
-           grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/         /' >&2; \
-           echo "       to fix them, install help2man, remove and regenerate the man pages;" >&2; \
-           echo "       typically \`make maintainer-clean' will remove them" >&2; \
-           exit 1; \
-         else :; fi; \
-       else :; fi
        @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        list='$(DISTFILES)'; \
@@ -627,22 +639,20 @@ uninstall-am: uninstall-man
 
 uninstall-man: uninstall-man1
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
-       install-am install-strip tags-recursive
-
-.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
-       all all-am check check-am clean clean-generic ctags \
-       ctags-recursive distclean distclean-generic distclean-tags \
-       distdir dvi dvi-am html html-am info info-am install \
-       install-am install-data install-data-am install-dvi \
-       install-dvi-am install-exec install-exec-am install-html \
-       install-html-am install-info install-info-am install-man \
-       install-man1 install-pdf install-pdf-am install-ps \
-       install-ps-am install-strip installcheck installcheck-am \
-       installdirs installdirs-am maintainer-clean \
-       maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
-       pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \
-       uninstall-man uninstall-man1
+.MAKE: $(am__recursive_targets) install-am install-strip
+
+.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
+       check-am clean clean-generic cscopelist-am ctags ctags-am \
+       distclean distclean-generic distclean-tags distdir dvi dvi-am \
+       html html-am info info-am install install-am install-data \
+       install-data-am install-dvi install-dvi-am install-exec \
+       install-exec-am install-html install-html-am install-info \
+       install-info-am install-man install-man1 install-pdf \
+       install-pdf-am install-ps install-ps-am install-strip \
+       installcheck installcheck-am installdirs installdirs-am \
+       maintainer-clean maintainer-clean-generic mostlyclean \
+       mostlyclean-generic pdf pdf-am ps ps-am tags tags-am uninstall \
+       uninstall-am uninstall-man uninstall-man1
 
 
 html: gob2.1
index 31f7bfb260dfc9d5c610804e3c85e0c7ce5fe1c5..f39238425c2a56365db1c86cc8bf0018226cb74d 100644 (file)
@@ -106,6 +106,9 @@ The directory into which output should be placed.
 .B \-\-file\-sep[=c]
 Replace default \'\-\' file name separator.  If no separator character
 is given then none is used.  Only one character can be used.
+.TP
+.B \-\-gtk3
+Use gtk3.
 
 .SH TYPENAMES
 .PP
@@ -425,7 +428,9 @@ be synchronized with a private integer data member also of the name \'height\'.
 
   private int height;
   property INT height
-         (nick = _("Short nickname"),
+         (
+          name = "height",
+          nick = _("Short nickname"),
           blurb = _("Long description"),
           minimum = 10,
           maximum = 200,
@@ -440,7 +445,13 @@ of them.
 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.
+.PP
+The \'name\' property is canonical name of property. It is useful when you try to
+implement properties with no C names like \'vertical-scroll\'. The \'name\'
+property can be omitted.
+.PP
+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
@@ -782,6 +793,17 @@ or
 
   signal last NONE (NONE) void foo (self);
 
+.fi
+.PP
+You can include name of signal, if this name is not a C variable name. Example:
+.nf
+
+  signal first INT "do-something" (POINTER, INT)
+  int do_something (self, Gtk:Widget *w (check null type), int length)
+  {
+         ...
+  }
+  
 .fi
 .PP
 If you don\'t want the wrapper that emits the signal to be public, you can
index baa72bc161bf463f2f3436f7c3d9466823d0ab42..693f931a5a5aedc434669b5cf48184ce9dae5807 100644 (file)
@@ -1,9 +1,8 @@
-# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
 @SET_MAKE@
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -49,7 +76,7 @@ NORMAL_UNINSTALL = :
 PRE_UNINSTALL = :
 POST_UNINSTALL = :
 subdir = examples
-DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am README
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/configure.in
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
@@ -58,15 +85,28 @@ mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
 CONFIG_CLEAN_VPATH_FILES =
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN     " $@;
+am__v_GEN_1 = 
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 = 
 SOURCES =
 DIST_SOURCES =
-RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
-       html-recursive info-recursive install-data-recursive \
-       install-dvi-recursive install-exec-recursive \
-       install-html-recursive install-info-recursive \
-       install-pdf-recursive install-ps-recursive install-recursive \
-       installcheck-recursive installdirs-recursive pdf-recursive \
-       ps-recursive uninstall-recursive
+RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
+       ctags-recursive dvi-recursive html-recursive info-recursive \
+       install-data-recursive install-dvi-recursive \
+       install-exec-recursive install-html-recursive \
+       install-info-recursive install-pdf-recursive \
+       install-ps-recursive install-recursive installcheck-recursive \
+       installdirs-recursive pdf-recursive ps-recursive \
+       tags-recursive uninstall-recursive
 am__can_run_installinfo = \
   case $$AM_UPDATE_INFO_DIR in \
     n|no|NO) false;; \
@@ -74,9 +114,29 @@ am__can_run_installinfo = \
   esac
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive        \
   distclean-recursive maintainer-clean-recursive
-AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
-       $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+am__recursive_targets = \
+  $(RECURSIVE_TARGETS) \
+  $(RECURSIVE_CLEAN_TARGETS) \
+  $(am__extra_recursive_targets)
+AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
        distdir
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
@@ -108,6 +168,7 @@ am__relativize = \
   reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 AUTOCONF = @AUTOCONF@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
@@ -252,22 +313,25 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 $(am__aclocal_m4_deps):
 
 # This directory's subdirectories are mostly independent; you can cd
-# into them and run `make' without going through this Makefile.
-# To change the values of `make' variables: instead of editing Makefiles,
-# (1) if the variable is set in `config.status', edit `config.status'
-#     (which will cause the Makefiles to be regenerated when you run `make');
-# (2) otherwise, pass the desired values on the `make' command line.
-$(RECURSIVE_TARGETS):
-       @fail= failcom='exit 1'; \
-       for f in x $$MAKEFLAGS; do \
-         case $$f in \
-           *=* | --[!k]*);; \
-           *k*) failcom='fail=yes';; \
-         esac; \
-       done; \
+# into them and run 'make' without going through this Makefile.
+# To change the values of 'make' variables: instead of editing Makefiles,
+# (1) if the variable is set in 'config.status', edit 'config.status'
+#     (which will cause the Makefiles to be regenerated when you run 'make');
+# (2) otherwise, pass the desired values on the 'make' command line.
+$(am__recursive_targets):
+       @fail=; \
+       if $(am__make_keepgoing); then \
+         failcom='fail=yes'; \
+       else \
+         failcom='exit 1'; \
+       fi; \
        dot_seen=no; \
        target=`echo $@ | sed s/-recursive//`; \
-       list='$(SUBDIRS)'; for subdir in $$list; do \
+       case "$@" in \
+         distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+         *) list='$(SUBDIRS)' ;; \
+       esac; \
+       for subdir in $$list; do \
          echo "Making $$target in $$subdir"; \
          if test "$$subdir" = "."; then \
            dot_seen=yes; \
@@ -282,57 +346,12 @@ $(RECURSIVE_TARGETS):
          $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
        fi; test -z "$$fail"
 
-$(RECURSIVE_CLEAN_TARGETS):
-       @fail= failcom='exit 1'; \
-       for f in x $$MAKEFLAGS; do \
-         case $$f in \
-           *=* | --[!k]*);; \
-           *k*) failcom='fail=yes';; \
-         esac; \
-       done; \
-       dot_seen=no; \
-       case "$@" in \
-         distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
-         *) list='$(SUBDIRS)' ;; \
-       esac; \
-       rev=''; for subdir in $$list; do \
-         if test "$$subdir" = "."; then :; else \
-           rev="$$subdir $$rev"; \
-         fi; \
-       done; \
-       rev="$$rev ."; \
-       target=`echo $@ | sed s/-recursive//`; \
-       for subdir in $$rev; do \
-         echo "Making $$target in $$subdir"; \
-         if test "$$subdir" = "."; then \
-           local_target="$$target-am"; \
-         else \
-           local_target="$$target"; \
-         fi; \
-         ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-         || eval $$failcom; \
-       done && test -z "$$fail"
-tags-recursive:
-       list='$(SUBDIRS)'; for subdir in $$list; do \
-         test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
-       done
-ctags-recursive:
-       list='$(SUBDIRS)'; for subdir in $$list; do \
-         test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
-       done
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-recursive
+TAGS: tags
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
        if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
@@ -348,12 +367,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
          fi; \
        done; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -365,15 +379,11 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-recursive
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -382,6 +392,21 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-recursive
+
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
+       case "$(srcdir)" in \
+         [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+         *) sdir=$(subdir)/$(srcdir) ;; \
+       esac; \
+       for i in $$list; do \
+         if test -f "$$i"; then \
+           echo "$(subdir)/$$i"; \
+         else \
+           echo "$$sdir/$$i"; \
+         fi; \
+       done >> $(top_builddir)/cscope.files
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -542,21 +567,19 @@ ps-am:
 
 uninstall-am:
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
-       install-am install-strip tags-recursive
-
-.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
-       all all-am check check-am clean clean-generic ctags \
-       ctags-recursive distclean distclean-generic distclean-tags \
-       distdir dvi dvi-am html html-am info info-am install \
-       install-am install-data install-data-am install-dvi \
-       install-dvi-am install-exec install-exec-am install-html \
-       install-html-am install-info install-info-am install-man \
-       install-pdf install-pdf-am install-ps install-ps-am \
-       install-strip installcheck installcheck-am installdirs \
-       installdirs-am maintainer-clean maintainer-clean-generic \
-       mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \
-       tags-recursive uninstall uninstall-am
+.MAKE: $(am__recursive_targets) install-am install-strip
+
+.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
+       check-am clean clean-generic cscopelist-am ctags ctags-am \
+       distclean distclean-generic distclean-tags distdir dvi dvi-am \
+       html html-am info info-am install install-am install-data \
+       install-data-am install-dvi install-dvi-am install-exec \
+       install-exec-am install-html install-html-am install-info \
+       install-info-am install-man install-pdf install-pdf-am \
+       install-ps install-ps-am install-strip installcheck \
+       installcheck-am installdirs installdirs-am maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+       pdf-am ps ps-am tags tags-am uninstall uninstall-am
 
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
index bbeb7a5c961011fa889ff6b1ad98baceeefc868e..806fd3ad333e4d5c7859b94450608a5f78af8b25 100644 (file)
--- a/gob2.spec
+++ b/gob2.spec
@@ -1,4 +1,4 @@
-%define  ver     2.0.19
+%define  ver     2.0.20
 %define  rel     1
 %define  prefix  /usr
 
index a9244eb0786534553fdd9eb0050bb4b172bad0a3..377bb8687ffe16bfc79ea25c8667cabf72aaf2c2 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # install - install a program, script, or datafile
 
-scriptversion=2011-01-19.21; # UTC
+scriptversion=2011-11-20.07; # UTC
 
 # This originates from X11R5 (mit/util/scripts/install.sh), which was
 # later released in X11R6 (xc/config/util/install.sh) with the
@@ -35,7 +35,7 @@ scriptversion=2011-01-19.21; # UTC
 # FSF changes to this file are in the public domain.
 #
 # Calling this script install-sh is preferred over install.sh, to prevent
-# `make' implicit rules from creating a file called install from it
+# 'make' implicit rules from creating a file called install from it
 # when there is no Makefile.
 #
 # This script is compatible with the BSD install script, but was written
@@ -156,7 +156,7 @@ while test $# -ne 0; do
     -s) stripcmd=$stripprog;;
 
     -t) dst_arg=$2
-       # Protect names problematic for `test' and other utilities.
+       # Protect names problematic for 'test' and other utilities.
        case $dst_arg in
          -* | [=\(\)!]) dst_arg=./$dst_arg;;
        esac
@@ -190,7 +190,7 @@ if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
     fi
     shift # arg
     dst_arg=$arg
-    # Protect names problematic for `test' and other utilities.
+    # Protect names problematic for 'test' and other utilities.
     case $dst_arg in
       -* | [=\(\)!]) dst_arg=./$dst_arg;;
     esac
@@ -202,7 +202,7 @@ if test $# -eq 0; then
     echo "$0: no input file specified." >&2
     exit 1
   fi
-  # It's OK to call `install-sh -d' without argument.
+  # It's OK to call 'install-sh -d' without argument.
   # This can happen when creating conditional directories.
   exit 0
 fi
@@ -240,7 +240,7 @@ fi
 
 for src
 do
-  # Protect names problematic for `test' and other utilities.
+  # Protect names problematic for 'test' and other utilities.
   case $src in
     -* | [=\(\)!]) src=./$src;;
   esac
@@ -354,7 +354,7 @@ do
              if test -z "$dir_arg" || {
                   # Check for POSIX incompatibilities with -m.
                   # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
-                  # other-writeable bit of parent directory when it shouldn't.
+                  # other-writable bit of parent directory when it shouldn't.
                   # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
                   ls_ld_tmpdir=`ls -ld "$tmpdir"`
                   case $ls_ld_tmpdir in
diff --git a/missing b/missing
index 86a8fc31e3c2aa268688a5be47d161c586772e78..cdea514931f558be2bcc47ef2d52e14ab395520b 100755 (executable)
--- a/missing
+++ b/missing
@@ -1,11 +1,10 @@
 #! /bin/sh
-# Common stub for a few missing GNU programs while installing.
+# Common wrapper for a few potentially missing GNU programs.
 
-scriptversion=2012-01-06.13; # UTC
+scriptversion=2012-06-26.16; # UTC
 
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
-# 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
-# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
+# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
 
 # 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
@@ -26,68 +25,40 @@ scriptversion=2012-01-06.13; # UTC
 # the same distribution terms that you use for the rest of that program.
 
 if test $# -eq 0; then
-  echo 1>&2 "Try \`$0 --help' for more information"
+  echo 1>&2 "Try '$0 --help' for more information"
   exit 1
 fi
 
-run=:
-sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
-sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
-
-# In the cases where this matters, `missing' is being run in the
-# srcdir already.
-if test -f configure.ac; then
-  configure_ac=configure.ac
-else
-  configure_ac=configure.in
-fi
+case $1 in
 
-msg="missing on your system"
+  --is-lightweight)
+    # Used by our autoconf macros to check whether the available missing
+    # script is modern enough.
+    exit 0
+    ;;
 
-case $1 in
---run)
-  # Try to run requested program, and just exit if it succeeds.
-  run=
-  shift
-  "$@" && exit 0
-  # Exit code 63 means version mismatch.  This often happens
-  # when the user try to use an ancient version of a tool on
-  # a file that requires a minimum version.  In this case we
-  # we should proceed has if the program had been absent, or
-  # if --run hadn't been passed.
-  if test $? = 63; then
-    run=:
-    msg="probably too old"
-  fi
-  ;;
+  --run)
+    # Back-compat with the calling convention used by older automake.
+    shift
+    ;;
 
   -h|--h|--he|--hel|--help)
     echo "\
 $0 [OPTION]... PROGRAM [ARGUMENT]...
 
-Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
-error status if there is no known handling for PROGRAM.
+Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
+to PROGRAM being missing or too old.
 
 Options:
   -h, --help      display this help and exit
   -v, --version   output version information and exit
-  --run           try to run the given command, and emulate it if it fails
 
 Supported PROGRAM values:
-  aclocal      touch file \`aclocal.m4'
-  autoconf     touch file \`configure'
-  autoheader   touch file \`config.h.in'
-  autom4te     touch the output file, or create a stub one
-  automake     touch all \`Makefile.in' files
-  bison        create \`y.tab.[ch]', if possible, from existing .[ch]
-  flex         create \`lex.yy.c', if possible, from existing .c
-  help2man     touch the output file
-  lex          create \`lex.yy.c', if possible, from existing .c
-  makeinfo     touch the output file
-  yacc         create \`y.tab.[ch]', if possible, from existing .[ch]
+  aclocal   autoconf  autoheader   autom4te  automake  makeinfo
+  bison     yacc      flex         lex       help2man
 
-Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
-\`g' are ignored when checking the name.
+Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
+'g' are ignored when checking the name.
 
 Send bug reports to <bug-automake@gnu.org>."
     exit $?
@@ -99,228 +70,141 @@ Send bug reports to <bug-automake@gnu.org>."
     ;;
 
   -*)
-    echo 1>&2 "$0: Unknown \`$1' option"
-    echo 1>&2 "Try \`$0 --help' for more information"
+    echo 1>&2 "$0: unknown '$1' option"
+    echo 1>&2 "Try '$0 --help' for more information"
     exit 1
     ;;
 
 esac
 
-# normalize program name to check for.
-program=`echo "$1" | sed '
-  s/^gnu-//; t
-  s/^gnu//; t
-  s/^g//; t'`
-
-# Now exit if we have it, but it failed.  Also exit now if we
-# don't have it and --version was passed (most likely to detect
-# the program).  This is about non-GNU programs, so use $1 not
-# $program.
-case $1 in
-  lex*|yacc*)
-    # Not GNU programs, they don't have --version.
-    ;;
-
-  *)
-    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
-       # We have it, but it failed.
-       exit 1
-    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
-       # Could not run --version or --help.  This is probably someone
-       # running `$TOOL --version' or `$TOOL --help' to check whether
-       # $TOOL exists and not knowing $TOOL uses missing.
-       exit 1
-    fi
-    ;;
-esac
-
-# If it does not exist, or fails to run (possibly an outdated version),
-# try to emulate it.
-case $program in
-  aclocal*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`acinclude.m4' or \`${configure_ac}'.  You might want
-         to install the \`Automake' and \`Perl' packages.  Grab them from
-         any GNU archive site."
-    touch aclocal.m4
-    ;;
-
-  autoconf*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`${configure_ac}'.  You might want to install the
-         \`Autoconf' and \`GNU m4' packages.  Grab them from any GNU
-         archive site."
-    touch configure
-    ;;
-
-  autoheader*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`acconfig.h' or \`${configure_ac}'.  You might want
-         to install the \`Autoconf' and \`GNU m4' packages.  Grab them
-         from any GNU archive site."
-    files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
-    test -z "$files" && files="config.h"
-    touch_files=
-    for f in $files; do
-      case $f in
-      *:*) touch_files="$touch_files "`echo "$f" |
-                                      sed -e 's/^[^:]*://' -e 's/:.*//'`;;
-      *) touch_files="$touch_files $f.in";;
-      esac
-    done
-    touch $touch_files
-    ;;
-
-  automake*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
-         You might want to install the \`Automake' and \`Perl' packages.
-         Grab them from any GNU archive site."
-    find . -type f -name Makefile.am -print |
-          sed 's/\.am$/.in/' |
-          while read f; do touch "$f"; done
-    ;;
-
-  autom4te*)
-    echo 1>&2 "\
-WARNING: \`$1' is needed, but is $msg.
-         You might have modified some files without having the
-         proper tools for further handling them.
-         You can get \`$1' as part of \`Autoconf' from any GNU
-         archive site."
-
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -f "$file"; then
-       touch $file
-    else
-       test -z "$file" || exec >$file
-       echo "#! /bin/sh"
-       echo "# Created by GNU Automake missing as a replacement of"
-       echo "#  $ $@"
-       echo "exit 0"
-       chmod +x $file
-       exit 1
-    fi
-    ;;
-
-  bison*|yacc*)
-    echo 1>&2 "\
-WARNING: \`$1' $msg.  You should only need it if
-         you modified a \`.y' file.  You may need the \`Bison' package
-         in order for those modifications to take effect.  You can get
-         \`Bison' from any GNU archive site."
-    rm -f y.tab.c y.tab.h
-    if test $# -ne 1; then
-        eval LASTARG=\${$#}
-       case $LASTARG in
-       *.y)
-           SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
-           if test -f "$SRCFILE"; then
-                cp "$SRCFILE" y.tab.c
-           fi
-           SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
-           if test -f "$SRCFILE"; then
-                cp "$SRCFILE" y.tab.h
-           fi
-         ;;
-       esac
-    fi
-    if test ! -f y.tab.h; then
-       echo >y.tab.h
-    fi
-    if test ! -f y.tab.c; then
-       echo 'main() { return 0; }' >y.tab.c
-    fi
-    ;;
-
-  lex*|flex*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified a \`.l' file.  You may need the \`Flex' package
-         in order for those modifications to take effect.  You can get
-         \`Flex' from any GNU archive site."
-    rm -f lex.yy.c
-    if test $# -ne 1; then
-        eval LASTARG=\${$#}
-       case $LASTARG in
-       *.l)
-           SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
-           if test -f "$SRCFILE"; then
-                cp "$SRCFILE" lex.yy.c
-           fi
-         ;;
-       esac
-    fi
-    if test ! -f lex.yy.c; then
-       echo 'main() { return 0; }' >lex.yy.c
-    fi
-    ;;
-
-  help2man*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-        you modified a dependency of a manual page.  You may need the
-        \`Help2man' package in order for those modifications to take
-        effect.  You can get \`Help2man' from any GNU archive site."
-
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -f "$file"; then
-       touch $file
-    else
-       test -z "$file" || exec >$file
-       echo ".ab help2man is required to generate this page"
-       exit $?
-    fi
-    ;;
-
-  makeinfo*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified a \`.texi' or \`.texinfo' file, or any other file
-         indirectly affecting the aspect of the manual.  The spurious
-         call might also be the consequence of using a buggy \`make' (AIX,
-         DU, IRIX).  You might want to install the \`Texinfo' package or
-         the \`GNU make' package.  Grab either from any GNU archive site."
-    # The file to touch is that specified with -o ...
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -z "$file"; then
-      # ... or it is the one specified with @setfilename ...
-      infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
-      file=`sed -n '
-       /^@setfilename/{
-         s/.* \([^ ]*\) *$/\1/
-         p
-         q
-       }' $infile`
-      # ... or it is derived from the source name (dir/f.texi becomes f.info)
-      test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
-    fi
-    # If the file does not exist, the user really needs makeinfo;
-    # let's fail without touching anything.
-    test -f $file || exit 1
-    touch $file
-    ;;
+# Run the given program, remember its exit status.
+"$@"; st=$?
+
+# If it succeeded, we are done.
+test $st -eq 0 && exit 0
+
+# Also exit now if we it failed (or wasn't found), and '--version' was
+# passed; such an option is passed most likely to detect whether the
+# program is present and works.
+case $2 in --version|--help) exit $st;; esac
+
+# Exit code 63 means version mismatch.  This often happens when the user
+# tries to use an ancient version of a tool on a file that requires a
+# minimum version.
+if test $st -eq 63; then
+  msg="probably too old"
+elif test $st -eq 127; then
+  # Program was missing.
+  msg="missing on your system"
+else
+  # Program was found and executed, but failed.  Give up.
+  exit $st
+fi
 
-  *)
-    echo 1>&2 "\
-WARNING: \`$1' is needed, and is $msg.
-         You might have modified some files without having the
-         proper tools for further handling them.  Check the \`README' file,
-         it often tells you about the needed prerequisites for installing
-         this package.  You may also peek at any GNU archive site, in case
-         some other package would contain this missing \`$1' program."
-    exit 1
+perl_URL=http://www.perl.org/
+flex_URL=http://flex.sourceforge.net/
+gnu_software_URL=http://www.gnu.org/software
+
+program_details ()
+{
+  case $1 in
+    aclocal|automake)
+      echo "The '$1' program is part of the GNU Automake package:"
+      echo "<$gnu_software_URL/automake>"
+      echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
+      echo "<$gnu_software_URL/autoconf>"
+      echo "<$gnu_software_URL/m4/>"
+      echo "<$perl_URL>"
+      ;;
+    autoconf|autom4te|autoheader)
+      echo "The '$1' program is part of the GNU Autoconf package:"
+      echo "<$gnu_software_URL/autoconf/>"
+      echo "It also requires GNU m4 and Perl in order to run:"
+      echo "<$gnu_software_URL/m4/>"
+      echo "<$perl_URL>"
+      ;;
+  esac
+}
+
+give_advice ()
+{
+  # Normalize program name to check for.
+  normalized_program=`echo "$1" | sed '
+    s/^gnu-//; t
+    s/^gnu//; t
+    s/^g//; t'`
+
+  printf '%s\n' "'$1' is $msg."
+
+  configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
+  case $normalized_program in
+    autoconf*)
+      echo "You should only need it if you modified 'configure.ac',"
+      echo "or m4 files included by it."
+      program_details 'autoconf'
+      ;;
+    autoheader*)
+      echo "You should only need it if you modified 'acconfig.h' or"
+      echo "$configure_deps."
+      program_details 'autoheader'
+      ;;
+    automake*)
+      echo "You should only need it if you modified 'Makefile.am' or"
+      echo "$configure_deps."
+      program_details 'automake'
+      ;;
+    aclocal*)
+      echo "You should only need it if you modified 'acinclude.m4' or"
+      echo "$configure_deps."
+      program_details 'aclocal'
+      ;;
+   autom4te*)
+      echo "You might have modified some maintainer files that require"
+      echo "the 'automa4te' program to be rebuilt."
+      program_details 'autom4te'
+      ;;
+    bison*|yacc*)
+      echo "You should only need it if you modified a '.y' file."
+      echo "You may want to install the GNU Bison package:"
+      echo "<$gnu_software_URL/bison/>"
+      ;;
+    lex*|flex*)
+      echo "You should only need it if you modified a '.l' file."
+      echo "You may want to install the Fast Lexical Analyzer package:"
+      echo "<$flex_URL>"
+      ;;
+    help2man*)
+      echo "You should only need it if you modified a dependency" \
+           "of a man page."
+      echo "You may want to install the GNU Help2man package:"
+      echo "<$gnu_software_URL/help2man/>"
     ;;
-esac
-
-exit 0
+    makeinfo*)
+      echo "You should only need it if you modified a '.texi' file, or"
+      echo "any other file indirectly affecting the aspect of the manual."
+      echo "You might want to install the Texinfo package:"
+      echo "<$gnu_software_URL/texinfo/>"
+      echo "The spurious makeinfo call might also be the consequence of"
+      echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
+      echo "want to install GNU make:"
+      echo "<$gnu_software_URL/make/>"
+      ;;
+    *)
+      echo "You might have modified some files without having the proper"
+      echo "tools for further handling them.  Check the 'README' file, it"
+      echo "often tells you about the needed prerequisites for installing"
+      echo "this package.  You may also peek at any GNU archive site, in"
+      echo "case some other package contains this missing '$1' program."
+      ;;
+  esac
+}
+
+give_advice "$1" | sed -e '1s/^/WARNING: /' \
+                       -e '2,$s/^/         /' >&2
+
+# Propagate the correct exit status (expected to be 127 for a program
+# not found, 63 for a program that failed due to version mismatch).
+exit $st
 
 # Local variables:
 # eval: (add-hook 'write-file-hooks 'time-stamp)
index e72178f013935b490897ffa3fdaf58253f111981..291dfb8527dacd947ddc42850cf4ad13e8f5cd39 100644 (file)
@@ -61,7 +61,7 @@ EXTRA_DIST = $(BUILT_SOURCES) test.gob generate_treefuncs.pl treefuncs.def str.g
 #      test -f y.tab.h && mv -f y.tab.h parse.h
 
 test: test-object.c test-object.h
-       $(CC) -g -O -W -Wall -Wunused -Wuninitialized -Wdeclaration-after-statement -Wshadow -Wwrite-strings -Wunreachable-code -Wbad-function-cast -pedantic `pkg-config --cflags gobject-2.0 gtk+-2.0` -c test-object.c
+       $(CC) -g -O -W -Wall -Wunused -Wuninitialized -Wdeclaration-after-statement -Wshadow -Wwrite-strings -Wunreachable-code -Wbad-function-cast `pkg-config --cflags gobject-2.0 gtk+-2.0` -c test-object.c
 
 test-object.c test-object.h: test.gob gob2
        ./gob2 test.gob
@@ -69,7 +69,7 @@ test-object.c test-object.h: test.gob gob2
 # can't depend on the header file as that would break the above rule
 # since it's just for testing, who cares
 testcpp: test-object.cc
-       g++ -g -O -W -Wall -Wunused -Wuninitialized  -Wwrite-strings -Wunreachable-code -pedantic `pkg-config --cflags gobject-2.0 gtk+-2.0` -c test-object.cc
+       g++ -g -O -W -Wall -Wunused -Wuninitialized  -Wwrite-strings -Wunreachable-code `pkg-config --cflags gobject-2.0 gtk+-2.0` -c test-object.cc
 
 test-object.cc: test.gob gob2
        ./gob2 --for-cpp test.gob
index 97029bf189282305cb8a1de5b716710f785128c2..280c2d33a336423c9ebda1bf1ea34e2cbdf2e5c8 100644 (file)
@@ -1,9 +1,8 @@
-# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# Makefile.in generated by automake 1.13.4 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
-# Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
+
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 @SET_MAKE@
 
 VPATH = @srcdir@
-am__make_dryrun = \
-  { \
-    am__dry=no; \
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
+am__make_running_with_option = \
+  case $${target_option-} in \
+      ?) ;; \
+      *) echo "am__make_running_with_option: internal error: invalid" \
+              "target option '$${target_option-}' specified" >&2; \
+         exit 1;; \
+  esac; \
+  has_opt=no; \
+  sane_makeflags=$$MAKEFLAGS; \
+  if $(am__is_gnu_make); then \
+    sane_makeflags=$$MFLAGS; \
+  else \
     case $$MAKEFLAGS in \
       *\\[\ \  ]*) \
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-      *) \
-        for am__flg in $$MAKEFLAGS; do \
-          case $$am__flg in \
-            *=*|--*) ;; \
-            *n*) am__dry=yes; break;; \
-          esac; \
-        done;; \
+        bs=\\; \
+        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+          | sed "s/$$bs$$bs[$$bs $$bs  ]*//g"`;; \
+    esac; \
+  fi; \
+  skip_next=no; \
+  strip_trailopt () \
+  { \
+    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+  }; \
+  for flg in $$sane_makeflags; do \
+    test $$skip_next = yes && { skip_next=no; continue; }; \
+    case $$flg in \
+      *=*|--*) continue;; \
+        -*I) strip_trailopt 'I'; skip_next=yes;; \
+      -*I?*) strip_trailopt 'I';; \
+        -*O) strip_trailopt 'O'; skip_next=yes;; \
+      -*O?*) strip_trailopt 'O';; \
+        -*l) strip_trailopt 'l'; skip_next=yes;; \
+      -*l?*) strip_trailopt 'l';; \
+      -[dEDm]) skip_next=yes;; \
+      -[JT]) skip_next=yes;; \
+    esac; \
+    case $$flg in \
+      *$$target_option*) has_opt=yes; break;; \
     esac; \
-    test $$am__dry = yes; \
-  }
+  done; \
+  test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -53,8 +80,8 @@ POST_UNINSTALL = :
 @NOINSTGOB_FALSE@bin_PROGRAMS = gob2$(EXEEXT)
 EXTRA_PROGRAMS = gob2$(EXEEXT)
 subdir = src
-DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in lexer.c \
-       parse.c parse.h
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am parse.h \
+       parse.c lexer.c $(top_srcdir)/depcomp $(top_srcdir)/ylwrap
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/configure.in
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
@@ -71,28 +98,59 @@ am_gob2_OBJECTS = main.$(OBJEXT) treefuncs.$(OBJEXT) out.$(OBJEXT) \
 gob2_OBJECTS = $(am_gob2_OBJECTS)
 am__DEPENDENCIES_1 =
 gob2_DEPENDENCIES = $(am__DEPENDENCIES_1)
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo "  GEN     " $@;
+am__v_GEN_1 = 
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 = 
 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
 depcomp = $(SHELL) $(top_srcdir)/depcomp
 am__depfiles_maybe = depfiles
 am__mv = mv -f
 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
        $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+AM_V_CC = $(am__v_CC_@AM_V@)
+am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
+am__v_CC_0 = @echo "  CC      " $@;
+am__v_CC_1 = 
 CCLD = $(CC)
 LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+AM_V_CCLD = $(am__v_CCLD_@AM_V@)
+am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
+am__v_CCLD_0 = @echo "  CCLD    " $@;
+am__v_CCLD_1 = 
 @MAINTAINER_MODE_FALSE@am__skiplex = test -f $@ ||
 LEXCOMPILE = $(LEX) $(AM_LFLAGS) $(LFLAGS)
+AM_V_LEX = $(am__v_LEX_@AM_V@)
+am__v_LEX_ = $(am__v_LEX_@AM_DEFAULT_V@)
+am__v_LEX_0 = @echo "  LEX     " $@;
+am__v_LEX_1 = 
 YLWRAP = $(top_srcdir)/ylwrap
 @MAINTAINER_MODE_FALSE@am__skipyacc = test -f $@ ||
+am__yacc_c2h = sed -e s/cc$$/hh/ -e s/cpp$$/hpp/ -e s/cxx$$/hxx/ \
+                  -e s/c++$$/h++/ -e s/c$$/h/
 YACCCOMPILE = $(YACC) $(AM_YFLAGS) $(YFLAGS)
+AM_V_YACC = $(am__v_YACC_@AM_V@)
+am__v_YACC_ = $(am__v_YACC_@AM_DEFAULT_V@)
+am__v_YACC_0 = @echo "  YACC    " $@;
+am__v_YACC_1 = 
 SOURCES = $(gob2_SOURCES)
 DIST_SOURCES = $(gob2_SOURCES)
-RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
-       html-recursive info-recursive install-data-recursive \
-       install-dvi-recursive install-exec-recursive \
-       install-html-recursive install-info-recursive \
-       install-pdf-recursive install-ps-recursive install-recursive \
-       installcheck-recursive installdirs-recursive pdf-recursive \
-       ps-recursive uninstall-recursive
+RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
+       ctags-recursive dvi-recursive html-recursive info-recursive \
+       install-data-recursive install-dvi-recursive \
+       install-exec-recursive install-html-recursive \
+       install-info-recursive install-pdf-recursive \
+       install-ps-recursive install-recursive installcheck-recursive \
+       installdirs-recursive pdf-recursive ps-recursive \
+       tags-recursive uninstall-recursive
 am__can_run_installinfo = \
   case $$AM_UPDATE_INFO_DIR in \
     n|no|NO) false;; \
@@ -100,9 +158,29 @@ am__can_run_installinfo = \
   esac
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive        \
   distclean-recursive maintainer-clean-recursive
-AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
-       $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+am__recursive_targets = \
+  $(RECURSIVE_TARGETS) \
+  $(RECURSIVE_CLEAN_TARGETS) \
+  $(am__extra_recursive_targets)
+AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
        distdir
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+# Read a list of newline-separated strings from the standard input,
+# and print each of them once, without duplicates.  Input order is
+# *not* preserved.
+am__uniquify_input = $(AWK) '\
+  BEGIN { nonempty = 0; } \
+  { items[$$0] = 1; nonempty = 1; } \
+  END { if (nonempty) { for (i in items) print i; }; } \
+'
+# Make sure the list of sources is unique.  This is necessary because,
+# e.g., the same source file might be shared among _SOURCES variables
+# for different programs/libraries.
+am__define_uniq_tagged_files = \
+  list='$(am__tagged_files)'; \
+  unique=`for i in $$list; do \
+    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+  done | $(am__uniquify_input)`
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
@@ -134,6 +212,7 @@ am__relativize = \
   reldir="$$dir2"
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 AUTOCONF = @AUTOCONF@
 AUTOHEADER = @AUTOHEADER@
 AUTOMAKE = @AUTOMAKE@
@@ -322,10 +401,11 @@ install-binPROGRAMS: $(bin_PROGRAMS)
        fi; \
        for p in $$list; do echo "$$p $$p"; done | \
        sed 's/$(EXEEXT)$$//' | \
-       while read p p1; do if test -f $$p; \
-         then echo "$$p"; echo "$$p"; else :; fi; \
+       while read p p1; do if test -f $$p \
+         then echo "$$p"; echo "$$p"; else :; fi; \
        done | \
-       sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+       sed -e 'p;s,.*/,,;n;h' \
+           -e 's|.*|.|' \
            -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
        sed 'N;N;N;s,\n, ,g' | \
        $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
@@ -346,7 +426,8 @@ uninstall-binPROGRAMS:
        @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
        files=`for p in $$list; do echo "$$p"; done | \
          sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
-             -e 's/$$/$(EXEEXT)/' `; \
+             -e 's/$$/$(EXEEXT)/' \
+       `; \
        test -n "$$list" || exit 0; \
        echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
        cd "$(DESTDIR)$(bindir)" && rm -f $$files
@@ -359,9 +440,10 @@ clean-noinstPROGRAMS:
 parse.h: parse.c
        @if test ! -f $@; then rm -f parse.c; else :; fi
        @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) parse.c; else :; fi
+
 gob2$(EXEEXT): $(gob2_OBJECTS) $(gob2_DEPENDENCIES) $(EXTRA_gob2_DEPENDENCIES) 
        @rm -f gob2$(EXEEXT)
-       $(LINK) $(gob2_OBJECTS) $(gob2_LDADD) $(LIBS)
+       $(AM_V_CCLD)$(LINK) $(gob2_OBJECTS) $(gob2_LDADD) $(LIBS)
 
 mostlyclean-compile:
        -rm -f *.$(OBJEXT)
@@ -378,42 +460,45 @@ distclean-compile:
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/util.Po@am__quote@
 
 .c.o:
-@am__fastdepCC_TRUE@   $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@   $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(COMPILE) -c $<
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c $<
 
 .c.obj:
-@am__fastdepCC_TRUE@   $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
-@am__fastdepCC_TRUE@   $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@      source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@am__fastdepCC_TRUE@   $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
+@am__fastdepCC_TRUE@   $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@      $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@  $(COMPILE) -c `$(CYGPATH_W) '$<'`
+@am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
 
 .l.c:
-       $(am__skiplex) $(SHELL) $(YLWRAP) $< $(LEX_OUTPUT_ROOT).c $@ -- $(LEXCOMPILE)
+       $(AM_V_LEX)$(am__skiplex) $(SHELL) $(YLWRAP) $< $(LEX_OUTPUT_ROOT).c $@ -- $(LEXCOMPILE)
 
 .y.c:
-       $(am__skipyacc) $(SHELL) $(YLWRAP) $< y.tab.c $@ y.tab.h $*.h y.output $*.output -- $(YACCCOMPILE)
+       $(AM_V_YACC)$(am__skipyacc) $(SHELL) $(YLWRAP) $< y.tab.c $@ y.tab.h `echo $@ | $(am__yacc_c2h)` y.output $*.output -- $(YACCCOMPILE)
 
 # This directory's subdirectories are mostly independent; you can cd
-# into them and run `make' without going through this Makefile.
-# To change the values of `make' variables: instead of editing Makefiles,
-# (1) if the variable is set in `config.status', edit `config.status'
-#     (which will cause the Makefiles to be regenerated when you run `make');
-# (2) otherwise, pass the desired values on the `make' command line.
-$(RECURSIVE_TARGETS):
-       @fail= failcom='exit 1'; \
-       for f in x $$MAKEFLAGS; do \
-         case $$f in \
-           *=* | --[!k]*);; \
-           *k*) failcom='fail=yes';; \
-         esac; \
-       done; \
+# into them and run 'make' without going through this Makefile.
+# To change the values of 'make' variables: instead of editing Makefiles,
+# (1) if the variable is set in 'config.status', edit 'config.status'
+#     (which will cause the Makefiles to be regenerated when you run 'make');
+# (2) otherwise, pass the desired values on the 'make' command line.
+$(am__recursive_targets):
+       @fail=; \
+       if $(am__make_keepgoing); then \
+         failcom='fail=yes'; \
+       else \
+         failcom='exit 1'; \
+       fi; \
        dot_seen=no; \
        target=`echo $@ | sed s/-recursive//`; \
-       list='$(SUBDIRS)'; for subdir in $$list; do \
+       case "$@" in \
+         distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+         *) list='$(SUBDIRS)' ;; \
+       esac; \
+       for subdir in $$list; do \
          echo "Making $$target in $$subdir"; \
          if test "$$subdir" = "."; then \
            dot_seen=yes; \
@@ -428,57 +513,12 @@ $(RECURSIVE_TARGETS):
          $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
        fi; test -z "$$fail"
 
-$(RECURSIVE_CLEAN_TARGETS):
-       @fail= failcom='exit 1'; \
-       for f in x $$MAKEFLAGS; do \
-         case $$f in \
-           *=* | --[!k]*);; \
-           *k*) failcom='fail=yes';; \
-         esac; \
-       done; \
-       dot_seen=no; \
-       case "$@" in \
-         distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
-         *) list='$(SUBDIRS)' ;; \
-       esac; \
-       rev=''; for subdir in $$list; do \
-         if test "$$subdir" = "."; then :; else \
-           rev="$$subdir $$rev"; \
-         fi; \
-       done; \
-       rev="$$rev ."; \
-       target=`echo $@ | sed s/-recursive//`; \
-       for subdir in $$rev; do \
-         echo "Making $$target in $$subdir"; \
-         if test "$$subdir" = "."; then \
-           local_target="$$target-am"; \
-         else \
-           local_target="$$target"; \
-         fi; \
-         ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-         || eval $$failcom; \
-       done && test -z "$$fail"
-tags-recursive:
-       list='$(SUBDIRS)'; for subdir in $$list; do \
-         test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
-       done
-ctags-recursive:
-       list='$(SUBDIRS)'; for subdir in $$list; do \
-         test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
-       done
+ID: $(am__tagged_files)
+       $(am__define_uniq_tagged_files); mkid -fID $$unique
+tags: tags-recursive
+TAGS: tags
 
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
-       list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
-       mkid -fID $$unique
-tags: TAGS
-
-TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
+tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
        set x; \
        here=`pwd`; \
        if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
@@ -494,12 +534,7 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
          fi; \
        done; \
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       $(am__define_uniq_tagged_files); \
        shift; \
        if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
@@ -511,15 +546,11 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
              $$unique; \
          fi; \
        fi
-ctags: CTAGS
-CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
-               $(TAGS_FILES) $(LISP)
-       list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
-       unique=`for i in $$list; do \
-           if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
-         done | \
-         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
-             END { if (nonempty) { for (i in files) print i; }; }'`; \
+ctags: ctags-recursive
+
+CTAGS: ctags
+ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
+       $(am__define_uniq_tagged_files); \
        test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
             $$unique
@@ -528,6 +559,21 @@ GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
          && $(am__cd) $(top_srcdir) \
          && gtags -i $(GTAGS_ARGS) "$$here"
+cscopelist: cscopelist-recursive
+
+cscopelist-am: $(am__tagged_files)
+       list='$(am__tagged_files)'; \
+       case "$(srcdir)" in \
+         [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
+         *) sdir=$(subdir)/$(srcdir) ;; \
+       esac; \
+       for i in $$list; do \
+         if test -f "$$i"; then \
+           echo "$(subdir)/$$i"; \
+         else \
+           echo "$$sdir/$$i"; \
+         fi; \
+       done >> $(top_builddir)/cscope.files
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -702,24 +748,23 @@ ps-am:
 
 uninstall-am: uninstall-binPROGRAMS
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all check \
-       ctags-recursive install install-am install-strip \
-       tags-recursive
-
-.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
-       all all-am check check-am clean clean-binPROGRAMS \
-       clean-generic clean-noinstPROGRAMS ctags ctags-recursive \
-       distclean distclean-compile distclean-generic distclean-tags \
-       distdir dvi dvi-am html html-am info info-am install \
-       install-am install-binPROGRAMS install-data install-data-am \
-       install-dvi install-dvi-am install-exec install-exec-am \
-       install-html install-html-am install-info install-info-am \
-       install-man install-pdf install-pdf-am install-ps \
-       install-ps-am install-strip installcheck installcheck-am \
-       installdirs installdirs-am maintainer-clean \
-       maintainer-clean-generic mostlyclean mostlyclean-compile \
-       mostlyclean-generic pdf pdf-am ps ps-am tags tags-recursive \
-       uninstall uninstall-am uninstall-binPROGRAMS
+.MAKE: $(am__recursive_targets) all check install install-am \
+       install-strip
+
+.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
+       check-am clean clean-binPROGRAMS clean-generic \
+       clean-noinstPROGRAMS cscopelist-am ctags ctags-am distclean \
+       distclean-compile distclean-generic distclean-tags distdir dvi \
+       dvi-am html html-am info info-am install install-am \
+       install-binPROGRAMS install-data install-data-am install-dvi \
+       install-dvi-am install-exec install-exec-am install-html \
+       install-html-am install-info install-info-am install-man \
+       install-pdf install-pdf-am install-ps install-ps-am \
+       install-strip installcheck installcheck-am installdirs \
+       installdirs-am maintainer-clean maintainer-clean-generic \
+       mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \
+       ps ps-am tags tags-am uninstall uninstall-am \
+       uninstall-binPROGRAMS
 
 
 # parse.h parse.c: parse.y
@@ -728,7 +773,7 @@ uninstall-am: uninstall-binPROGRAMS
 #      test -f y.tab.h && mv -f y.tab.h parse.h
 
 test: test-object.c test-object.h
-       $(CC) -g -O -W -Wall -Wunused -Wuninitialized -Wdeclaration-after-statement -Wshadow -Wwrite-strings -Wunreachable-code -Wbad-function-cast -pedantic `pkg-config --cflags gobject-2.0 gtk+-2.0` -c test-object.c
+       $(CC) -g -O -W -Wall -Wunused -Wuninitialized -Wdeclaration-after-statement -Wshadow -Wwrite-strings -Wunreachable-code -Wbad-function-cast `pkg-config --cflags gobject-2.0 gtk+-2.0` -c test-object.c
 
 test-object.c test-object.h: test.gob gob2
        ./gob2 test.gob
@@ -736,7 +781,7 @@ test-object.c test-object.h: test.gob gob2
 # can't depend on the header file as that would break the above rule
 # since it's just for testing, who cares
 testcpp: test-object.cc
-       g++ -g -O -W -Wall -Wunused -Wuninitialized  -Wwrite-strings -Wunreachable-code -pedantic `pkg-config --cflags gobject-2.0 gtk+-2.0` -c test-object.cc
+       g++ -g -O -W -Wall -Wunused -Wuninitialized  -Wwrite-strings -Wunreachable-code `pkg-config --cflags gobject-2.0 gtk+-2.0` -c test-object.cc
 
 test-object.cc: test.gob gob2
        ./gob2 --for-cpp test.gob
index 4441572dfbfb897539b640e5f1786b4b71312cb5..4d15ce3406be2e5df49c99a1bd3df0f1d5932387 100644 (file)
@@ -8,7 +8,7 @@
 #define FLEX_SCANNER
 #define YY_FLEX_MAJOR_VERSION 2
 #define YY_FLEX_MINOR_VERSION 5
-#define YY_FLEX_SUBMINOR_VERSION 35
+#define YY_FLEX_SUBMINOR_VERSION 37
 #if YY_FLEX_SUBMINOR_VERSION > 0
 #define FLEX_BETA
 #endif
@@ -53,7 +53,6 @@ typedef int flex_int32_t;
 typedef unsigned char flex_uint8_t; 
 typedef unsigned short int flex_uint16_t;
 typedef unsigned int flex_uint32_t;
-#endif /* ! C99 */
 
 /* Limits of integral types. */
 #ifndef INT8_MIN
@@ -84,6 +83,8 @@ typedef unsigned int flex_uint32_t;
 #define UINT32_MAX             (4294967295U)
 #endif
 
+#endif /* ! C99 */
+
 #endif /* ! FLEXINT_H */
 
 #ifdef __cplusplus
@@ -152,7 +153,12 @@ typedef unsigned int flex_uint32_t;
 typedef struct yy_buffer_state *YY_BUFFER_STATE;
 #endif
 
-extern int yyleng;
+#ifndef YY_TYPEDEF_YY_SIZE_T
+#define YY_TYPEDEF_YY_SIZE_T
+typedef size_t yy_size_t;
+#endif
+
+extern yy_size_t yyleng;
 
 extern FILE *yyin, *yyout;
 
@@ -178,11 +184,6 @@ extern FILE *yyin, *yyout;
 
 #define unput(c) yyunput( c, (yytext_ptr)  )
 
-#ifndef YY_TYPEDEF_YY_SIZE_T
-#define YY_TYPEDEF_YY_SIZE_T
-typedef size_t yy_size_t;
-#endif
-
 #ifndef YY_STRUCT_YY_BUFFER_STATE
 #define YY_STRUCT_YY_BUFFER_STATE
 struct yy_buffer_state
@@ -200,7 +201,7 @@ struct yy_buffer_state
        /* Number of characters read into yy_ch_buf, not including EOB
         * characters.
         */
-       int yy_n_chars;
+       yy_size_t yy_n_chars;
 
        /* Whether we "own" the buffer - i.e., we know we created it,
         * and can realloc() it to grow it, and should free() it to
@@ -270,8 +271,8 @@ static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */
 
 /* yy_hold_char holds the character lost when yytext is formed. */
 static char yy_hold_char;
-static int yy_n_chars;         /* number of characters read into yy_ch_buf */
-int yyleng;
+static yy_size_t yy_n_chars;           /* number of characters read into yy_ch_buf */
+yy_size_t yyleng;
 
 /* Points to current character in buffer. */
 static char *yy_c_buf_p = (char *) 0;
@@ -299,7 +300,7 @@ static void yy_init_buffer (YY_BUFFER_STATE b,FILE *file  );
 
 YY_BUFFER_STATE yy_scan_buffer (char *base,yy_size_t size  );
 YY_BUFFER_STATE yy_scan_string (yyconst char *yy_str  );
-YY_BUFFER_STATE yy_scan_bytes (yyconst char *bytes,int len  );
+YY_BUFFER_STATE yy_scan_bytes (yyconst char *bytes,yy_size_t len  );
 
 void *yyalloc (yy_size_t  );
 void *yyrealloc (void *,yy_size_t  );
@@ -359,8 +360,8 @@ static void yy_fatal_error (yyconst char msg[]  );
        *yy_cp = '\0'; \
        (yy_c_buf_p) = yy_cp;
 
-#define YY_NUM_RULES 122
-#define YY_END_OF_BUFFER 123
+#define YY_NUM_RULES 124
+#define YY_END_OF_BUFFER 125
 /* This struct is not used in this scanner,
    but its presence is necessary. */
 struct yy_trans_info
@@ -368,83 +369,83 @@ struct yy_trans_info
        flex_int32_t yy_verify;
        flex_int32_t yy_nxt;
        };
-static yyconst flex_int16_t yy_acclist[653] =
+static yyconst flex_int16_t yy_acclist[660] =
     {   0,
-      123,  120,  122,  118,  120,  122,    1,  119,  122,  119,
-      120,  122,  120,  122,  120,  122,  120,  122,  107,  120,
-      122,  107,  120,  122,  120,  122,  111,  120,  122,  111,
-      120,  122,  111,  120,  122,  111,  120,  122,  118,  120,
-      122,  120,  122,  120,  122,  111,  120,  122,  111,  120,
-      122,   29,  120,  122,    1,   30,  119,  122,   29,  119,
-      120,  122,   29,  120,  122,   29,  120,  122,   29,  120,
-      122,   55,  120,  122,    1,   56,  119,  122,   55,  119,
-      120,  122,   47,   55,  120,  122,   55,  120,  122,   55,
-      120,  122,   55,  120,  122,   53,   55,  120,  122,   54,
-
-       55,  120,  122,   55,  120,  122,   55,  120,  122,   51,
-      120,  122,    1,   52,  119,  122,   51,  119,  120,  122,
-       50,   51,  120,  122,   51,  120,  122,   51,  120,  122,
-       64,  120,  122,  120,  122,  111,  120,  122,  111,  120,
-      122,  111,  120,  122,  115,  120,  122,   67,  120,  122,
-        1,   68,  119,  122,   67,  119,  120,  122,   66,   67,
-      120,  122,   67,  120,  122,   67,  120,  122,  120,  122,
-      120,  122,  120,  122,  120,  122,  111,  120,  122,  111,
-      120,  122,  111,  120,  122,  111,  120,  122,  111,  120,
-      122,  111,  120,  122,  111,  120,  122,  111,  120,  122,
-
-      111,  120,  122,  111,  120,  122,  111,  120,  122,  111,
-      120,  122,  116,  120,  122,  117,  120,  122,  104,  120,
-      122,   48,  120,  122,  105,  120,  122,  106,  120,  122,
-      120,  122,  111,  120,  122,  111,  120,  122,  111,  120,
-      122,  111,  120,  122,  111,  120,  122,  111,  120,  122,
-      111,  120,  122,  111,  120,  122,  111,  120,  122,  111,
-      120,  122,  111,  120,  122,  111,  120,  122,   10,  120,
-      122,   10,  119,  120,  122,   10,  120,  122,   10,  120,
-      122,   10,  120,  122,   10,  120,  122,   15,  120,  122,
-       15,  119,  120,  122,   15,  120,  122,   15,  120,  122,
-
-       15,  120,  122,   15,  120,  122,   18,  120,  122,   18,
-      119,  120,  122,   18,  120,  122,   18,  120,  122,  107,
-       23,  107,  107,  110,  111,  111,  111,  111,  111,   36,
-      111,  111,   28,   24,   46,   39,   49,   25,  111,  111,
-      111,   65,   26,  114,  113,  111,  111,  111,  111,  111,
-      111,  111,  111,  111,  111,  111,  111,  111,  111,  111,
-      111,  111,  111,   27,  111,  111,  111,  111,  111,  111,
-      111,  111,  111,  111,  111,  111,    9,    7,   14,   13,
-       11,   12,   14,   17,   16,  112,  112,  107,    3,  107,
-      107,  110,  108,  109,  111,  111,  111,  111,   31,   35,
-
-      111,  111,   44,   40,   42,   19,   20,  111,  111,  111,
-       82,   21,  111,  111,  111,  111,  111,  111,  111,   77,
-      111,  111,  111,  111,  111,  111,  111,  111,  111,  111,
-      111,  111,  111,   22,  111,  111,  111,  111,  111,  111,
-      111,  111,  111,  111,  111,  111,   12,  110,  108,  109,
-      111,   59,  111,  111,  111,   38,   32,   37,   33,   34,
-      111,  111,   45,   41,   43,  111,   63,  111,   62,  111,
-        6,  111,   80,  111,  111,  111,  111,   72,  111,  111,
-       75,  111,  111,  111,  111,  111,  111,  111,  111,  111,
-      111,  111,  111,   69,  111,  111,  111,  111,   72,  111,
-
-      111,  111,  111,   92,  111,  111,  111,  111,   98,  111,
-        8,  110,   57,  111,   58,  111,   60,  111,  111,  111,
-      111,   62,  111,   81,  111,  111,   78,  111,  111,  111,
-      111,  111,  111,   76,  111,  111,  111,  111,   71,  111,
-      111,  111,   93,  111,  111,  111,  111,   97,  111,  111,
-      111,  111,  111,  111,  111,  111,  111,   79,  111,  111,
-      111,  111,  111,   83,  111,   89,  111,   73,  111,   70,
-      111,  111,  111,  111,  111,  111,  111,  111,  111,  111,
-      111,    4,  111,  111,  111,  111,  111,   84,  111,  111,
-      111,  111,   88,  111,  111,  111,  111,  111,   94,  111,
-
-       95,  111,  111,  111,  111,  111,   87,  111,  111,   90,
-      111,   91,  111,  111,   74,  111,  111,  111,  111,  111,
-      111,  111,   86,  111,   85,  111,  111,  111,  100,  111,
-      111,  111,  111,    4,    2,  102,  111,  111,   99,  111,
-      111,  101,  111,  121,    5,  111,  103,  111,  111,   96,
-      111,   61
+      125,  122,  124,  120,  122,  124,    1,  121,  124,  121,
+      122,  124,  122,  124,  122,  124,  122,  124,  109,  122,
+      124,  109,  122,  124,  122,  124,  113,  122,  124,  113,
+      122,  124,  113,  122,  124,  113,  122,  124,  120,  122,
+      124,  122,  124,  122,  124,  113,  122,  124,  113,  122,
+      124,   29,  122,  124,    1,   30,  121,  124,   29,  121,
+      122,  124,   29,  122,  124,   29,  122,  124,   29,  122,
+      124,   55,  122,  124,    1,   56,  121,  124,   55,  121,
+      122,  124,   47,   55,  122,  124,   55,  122,  124,   55,
+      122,  124,   55,  122,  124,   53,   55,  122,  124,   54,
+
+       55,  122,  124,   55,  122,  124,   55,  122,  124,   51,
+      122,  124,    1,   52,  121,  124,   51,  121,  122,  124,
+       50,   51,  122,  124,   51,  122,  124,   51,  122,  124,
+       64,  122,  124,  122,  124,  113,  122,  124,  113,  122,
+      124,  113,  122,  124,  117,  122,  124,   67,  122,  124,
+        1,   68,  121,  124,   67,  121,  122,  124,   66,   67,
+      122,  124,   67,  122,  124,   67,  122,  124,   69,  122,
+      124,  122,  124,  122,  124,  122,  124,  122,  124,  113,
+      122,  124,  113,  122,  124,  113,  122,  124,  113,  122,
+      124,  113,  122,  124,  113,  122,  124,  113,  122,  124,
+
+      113,  122,  124,  113,  122,  124,  113,  122,  124,  113,
+      122,  124,  113,  122,  124,  118,  122,  124,  119,  122,
+      124,  106,  122,  124,   48,  122,  124,  107,  122,  124,
+      108,  122,  124,  122,  124,  113,  122,  124,  113,  122,
+      124,  113,  122,  124,  113,  122,  124,  113,  122,  124,
+      113,  122,  124,  113,  122,  124,  113,  122,  124,  113,
+      122,  124,  113,  122,  124,  113,  122,  124,  113,  122,
+      124,   10,  122,  124,   10,  121,  122,  124,   10,  122,
+      124,   10,  122,  124,   10,  122,  124,   10,  122,  124,
+       15,  122,  124,   15,  121,  122,  124,   15,  122,  124,
+
+       15,  122,  124,   15,  122,  124,   15,  122,  124,   18,
+      122,  124,   18,  121,  122,  124,   18,  122,  124,   18,
+      122,  124,  109,   23,  109,  109,  112,  113,  113,  113,
+      113,  113,   36,  113,  113,   28,   24,   46,   39,   49,
+       25,  113,  113,  113,   65,   26,  116,  115,  113,  113,
+      113,  113,  113,  113,  113,  113,  113,  113,  113,  113,
+      113,  113,  113,  113,  113,  113,   27,  113,  113,  113,
+      113,  113,  113,  113,  113,  113,  113,  113,  113,  113,
+        9,    7,   14,   13,   11,   12,   14,   17,   16,  114,
+      114,  109,    3,  109,  109,  112,  110,  111,  113,  113,
+
+      113,  113,   31,   35,  113,  113,   44,   40,   42,   19,
+       20,  113,  113,  113,   83,   21,  113,  113,  113,  113,
+      113,  113,  113,   78,  113,  113,  113,  113,  113,  113,
+      113,  113,  113,  113,  113,  113,  113,   22,  113,  113,
+      113,  113,  113,  113,  113,  113,  113,  113,  113,  113,
+      113,   12,  112,  110,  111,  113,   59,  113,  113,  113,
+       38,   32,   37,   33,   34,  113,  113,   45,   41,   43,
+      113,   63,  113,   62,  113,    6,  113,   81,  113,  113,
+      113,  113,   73,  113,  113,   76,  113,  113,  113,  113,
+      113,  113,  113,  113,  113,  113,  113,  113,   70,  113,
+
+      113,  113,  113,   73,  113,  113,  113,  113,   94,  113,
+       93,  113,  113,  113,  113,  100,  113,    8,  112,   57,
+      113,   58,  113,   60,  113,  113,  113,  113,   62,  113,
+       82,  113,  113,   79,  113,  113,  113,  113,  113,  113,
+       77,  113,  113,  113,  113,   72,  113,  113,  113,   95,
+      113,  113,  113,  113,   99,  113,  113,  113,  113,  113,
+      113,  113,  113,  113,   80,  113,  113,  113,  113,  113,
+       84,  113,   90,  113,   74,  113,   71,  113,  113,  113,
+      113,  113,  113,  113,  113,  113,  113,  113,    4,  113,
+      113,  113,  113,  113,   85,  113,  113,  113,  113,   89,
+
+      113,  113,  113,  113,  113,   96,  113,   97,  113,  113,
+      113,  113,  113,   88,  113,  113,   91,  113,   92,  113,
+      113,   75,  113,  113,  113,  113,  113,  113,  113,   87,
+      113,   86,  113,  113,  113,  102,  113,  113,  113,  113,
+        4,    2,  104,  113,  113,  101,  113,  113,  103,  113,
+      123,    5,  113,  105,  113,  113,   98,  113,   61
     } ;
 
-static yyconst flex_int16_t yy_accept[567] =
+static yyconst flex_int16_t yy_accept[571] =
     {   0,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
@@ -454,60 +455,60 @@ static yyconst flex_int16_t yy_accept[567] =
        72,   75,   79,   83,   87,   90,   93,   96,  100,  104,
       107,  110,  113,  117,  121,  125,  128,  131,  134,  136,
       139,  142,  145,  148,  151,  155,  159,  163,  166,  169,
-      171,  173,  175,  177,  180,  183,  186,  189,  192,  195,
+      172,  174,  176,  178,  180,  183,  186,  189,  192,  195,
       198,  201,  204,  207,  210,  213,  216,  219,  222,  225,
 
-      228,  231,  233,  236,  239,  242,  245,  248,  251,  254,
-      257,  260,  263,  266,  269,  272,  276,  279,  282,  285,
-      288,  291,  295,  298,  301,  304,  307,  310,  314,  317,
-      320,  320,  320,  321,  322,  322,  322,  323,  323,  323,
-      324,  325,  326,  326,  327,  328,  329,  330,  330,  330,
-      330,  330,  330,  330,  330,  330,  330,  331,  332,  333,
-      334,  334,  334,  334,  334,  334,  335,  335,  336,  336,
-      336,  337,  338,  339,  339,  340,  341,  342,  343,  343,
-      344,  344,  345,  345,  345,  346,  347,  348,  349,  350,
-      351,  352,  353,  354,  355,  356,  357,  358,  359,  360,
-
-      361,  362,  363,  364,  365,  365,  366,  367,  368,  369,
-      370,  371,  372,  373,  374,  375,  376,  377,  378,  378,
-      378,  378,  379,  379,  380,  380,  380,  381,  382,  382,
-      384,  385,  386,  387,  387,  388,  389,  389,  390,  391,
-      392,  393,  393,  394,  395,  396,  397,  398,  399,  399,
-      399,  399,  399,  399,  399,  399,  400,  400,  400,  400,
-      401,  401,  401,  402,  403,  403,  404,  404,  404,  404,
-      405,  406,  406,  407,  407,  407,  408,  409,  410,  411,
-      412,  412,  412,  413,  413,  413,  414,  415,  416,  417,
-      418,  419,  420,  422,  423,  424,  425,  426,  427,  428,
-
-      429,  430,  431,  432,  433,  434,  434,  435,  436,  437,
-      438,  439,  440,  441,  442,  443,  444,  445,  446,  447,
-      447,  448,  448,  449,  450,  450,  451,  451,  452,  454,
-      455,  456,  456,  456,  456,  457,  457,  457,  458,  458,
-      459,  459,  460,  461,  461,  462,  463,  463,  464,  465,
-      466,  466,  467,  469,  471,  471,  472,  473,  475,  476,
-      477,  478,  480,  481,  483,  484,  485,  486,  487,  488,
-      489,  490,  491,  492,  493,  494,  496,  497,  498,  499,
-      501,  502,  503,  504,  506,  507,  508,  509,  511,  511,
-      512,  512,  512,  513,  515,  517,  519,  519,  519,  519,
-
-      519,  519,  519,  519,  519,  520,  521,  521,  521,  522,
-      524,  526,  527,  529,  530,  531,  532,  533,  534,  536,
-      537,  538,  539,  541,  542,  543,  545,  546,  547,  548,
-      550,  551,  552,  553,  554,  554,  554,  554,  554,  554,
-      554,  554,  555,  556,  556,  556,  557,  558,  560,  561,
-      562,  563,  564,  566,  568,  570,  572,  573,  574,  575,
-      576,  577,  578,  579,  580,  581,  582,  582,  582,  583,
-      583,  583,  583,  584,  585,  585,  585,  586,  587,  588,
-      590,  591,  592,  593,  595,  596,  597,  598,  599,  601,
-      603,  604,  605,  605,  605,  605,  605,  605,  605,  606,
-
-      607,  607,  607,  609,  610,  612,  614,  615,  617,  618,
-      619,  620,  621,  622,  623,  623,  623,  623,  623,  623,
-      623,  623,  623,  623,  623,  623,  625,  627,  628,  629,
-      631,  632,  633,  634,  634,  635,  635,  635,  635,  635,
-      635,  636,  636,  638,  639,  641,  642,  644,  644,  644,
-      645,  645,  645,  646,  647,  649,  649,  649,  650,  650,
-      650,  652,  652,  652,  653,  653
+      228,  231,  234,  236,  239,  242,  245,  248,  251,  254,
+      257,  260,  263,  266,  269,  272,  275,  279,  282,  285,
+      288,  291,  294,  298,  301,  304,  307,  310,  313,  317,
+      320,  323,  323,  323,  324,  325,  325,  325,  326,  326,
+      326,  327,  328,  329,  329,  330,  331,  332,  333,  333,
+      333,  333,  333,  333,  333,  333,  333,  333,  334,  335,
+      336,  337,  337,  337,  337,  337,  337,  338,  338,  339,
+      339,  339,  340,  341,  342,  342,  343,  344,  345,  346,
+      346,  347,  347,  348,  348,  348,  349,  350,  351,  352,
+      353,  354,  355,  356,  357,  358,  359,  360,  361,  362,
+
+      363,  364,  365,  366,  367,  368,  368,  369,  370,  371,
+      372,  373,  374,  375,  376,  377,  378,  379,  380,  381,
+      382,  382,  382,  382,  383,  383,  384,  384,  384,  385,
+      386,  386,  388,  389,  390,  391,  391,  392,  393,  393,
+      394,  395,  396,  397,  397,  398,  399,  400,  401,  402,
+      403,  403,  403,  403,  403,  403,  403,  403,  404,  404,
+      404,  404,  405,  405,  405,  406,  407,  407,  408,  408,
+      408,  408,  409,  410,  410,  411,  411,  411,  412,  413,
+      414,  415,  416,  416,  416,  417,  417,  417,  418,  419,
+      420,  421,  422,  423,  424,  426,  427,  428,  429,  430,
+
+      431,  432,  433,  434,  435,  436,  437,  438,  438,  439,
+      440,  441,  442,  443,  444,  445,  446,  447,  448,  449,
+      450,  451,  452,  452,  453,  453,  454,  455,  455,  456,
+      456,  457,  459,  460,  461,  461,  461,  461,  462,  462,
+      462,  463,  463,  464,  464,  465,  466,  466,  467,  468,
+      468,  469,  470,  471,  471,  472,  474,  476,  476,  477,
+      478,  480,  481,  482,  483,  485,  486,  488,  489,  490,
+      491,  492,  493,  494,  495,  496,  497,  498,  499,  501,
+      502,  503,  504,  506,  507,  508,  509,  511,  513,  514,
+      515,  516,  518,  518,  519,  519,  519,  520,  522,  524,
+
+      526,  526,  526,  526,  526,  526,  526,  526,  526,  527,
+      528,  528,  528,  529,  531,  533,  534,  536,  537,  538,
+      539,  540,  541,  543,  544,  545,  546,  548,  549,  550,
+      552,  553,  554,  555,  557,  558,  559,  560,  561,  561,
+      561,  561,  561,  561,  561,  561,  562,  563,  563,  563,
+      564,  565,  567,  568,  569,  570,  571,  573,  575,  577,
+      579,  580,  581,  582,  583,  584,  585,  586,  587,  588,
+      589,  589,  589,  590,  590,  590,  590,  591,  592,  592,
+      592,  593,  594,  595,  597,  598,  599,  600,  602,  603,
+      604,  605,  606,  608,  610,  611,  612,  612,  612,  612,
+
+      612,  612,  612,  613,  614,  614,  614,  616,  617,  619,
+      621,  622,  624,  625,  626,  627,  628,  629,  630,  630,
+      630,  630,  630,  630,  630,  630,  630,  630,  630,  630,
+      632,  634,  635,  636,  638,  639,  640,  641,  641,  642,
+      642,  642,  642,  642,  642,  643,  643,  645,  646,  648,
+      649,  651,  651,  651,  652,  652,  652,  653,  654,  656,
+      656,  656,  657,  657,  657,  659,  659,  659,  660,  660
     } ;
 
 static yyconst flex_int32_t yy_ec[256] =
@@ -552,147 +553,149 @@ static yyconst flex_int32_t yy_meta[60] =
         9,    9,    9,    9,    9,    9,    9,    1,    1
     } ;
 
-static yyconst flex_int16_t yy_base[600] =
+static yyconst flex_int16_t yy_base[604] =
     {   0,
         0,   58,   58,   65,   69,  126,   80,   85,   74,   87,
-       93,  113,  172, 1354,  131,  136,  225, 1353,  100,  147,
-      135,  159,  175,  190, 1360, 1363, 1363, 1363, 1363, 1329,
-      225,   62,  231,  237,    0, 1338,   42,  150,   60,  232,
-       63,  164,  156,   77, 1363, 1363, 1363, 1342,  173, 1328,
-     1363, 1363, 1363, 1363,  245,  104,    0, 1363, 1363,  279,
-     1296, 1363, 1363, 1363, 1363,    0,  262, 1363,  144,  110,
-      161,  143, 1363, 1363, 1363, 1363, 1363,    0,  282,  275,
-      214,  279,  283,  171,  285,  263,  182,  138,  219,  266,
-      213,  287,  295,  270,  292, 1363, 1363, 1363, 1363, 1363,
-
-     1363,  296,  297,  298,  311,  288,  170,  310,  301,  326,
-      329,  330,  299,  307, 1363, 1363, 1339,  351,  322,  366,
-     1363, 1363, 1338,  361,  353,  373, 1349, 1348,  243,  381,
-     1340, 1339,  373, 1363, 1345,  377,  384,  390,    0,  396,
-     1327, 1326, 1325,  332,  358,  379,  385,  371, 1294, 1306,
-      414, 1301,  386, 1289,  389,  377, 1363,  198,  403, 1363,
-        0, 1330,  373, 1329, 1328, 1363, 1334, 1363,  431, 1290,
-     1363, 1363, 1363, 1332,  415,  408,  416, 1363, 1320, 1320,
-     1329,  443,  447, 1300, 1301,   62,  420,  423,  422,  414,
-      426,  429,  419,  431,  237,  449,  450,  434,  453,  430,
-
-      454,  462,  463, 1363, 1326,  465,  466,  468,  467,  469,
-      471,  473,  474,  479,  478,  487,  477, 1363,  511,  508,
-      527, 1363,  529, 1363,  532,  534,  540, 1363, 1313, 1363,
-     1363, 1363, 1363, 1317, 1316,  534, 1322, 1363,  538,    0,
-     1304,    0, 1303, 1302,  488,  503,  521,  524, 1284, 1271,
-     1273, 1260, 1265, 1272, 1257, 1363,  511, 1281, 1255, 1363,
-     1254, 1270,  539,  540, 1283, 1363, 1299, 1298, 1297, 1363,
-     1363, 1303, 1363, 1270, 1301, 1363,  541,  542,  544, 1363,
-      564, 1300, 1363, 1271,  557,  545,  551,  557,  558,  481,
-      559,  561, 1281,  560,  562,  563,  566,  341,  565,  564,
-
-      569,  576,  570,  577,  571, 1297, 1363,  580,  582,  583,
-      586,  585,  593,  600,  601,  605,  606,  607,  608,  630,
-     1363,  645, 1279, 1278, 1277, 1276, 1275,  615, 1274,  617,
-      618, 1260, 1239, 1254, 1363, 1253,  588, 1363, 1241, 1363,
-     1252, 1363, 1363, 1233,  629,  623, 1260, 1363, 1363, 1363,
-     1241,  632, 1264, 1263,  652, 1363,  636, 1262,  637,  639,
-      640, 1261,  641, 1260,  642,  643,  645,  648,  654,  650,
-      657,  651,  652,  658,  655, 1259,  667,  660,  659,  679,
-      669,  680,  683, 1258,  684,  685,  686, 1257,  707, 1363,
-      712,  731, 1256, 1255, 1254, 1253, 1228, 1230,  715, 1220,
-
-     1222, 1210, 1230, 1233,  687,  696,    0, 1212,  702,  704,
-     1244,  706, 1243,  707,  709,  715,  716,  718, 1242,  720,
-      721,  722, 1241,  724,  725, 1240,  730,  727,  729,  734,
-      732,  735,  740,  736, 1215, 1208,  761, 1221, 1208, 1205,
-     1202,  749,  752, 1229, 1216,  753,  756, 1231,  755,  763,
-      762,  764, 1230, 1229, 1228, 1227,  766,  767,  770,  773,
-      774,  775,  778,  781,  785,  782, 1199, 1203,  802, 1201,
-      754, 1193,  789,  787, 1218, 1191,  790,  793,  795, 1198,
-      808,  810,  813, 1187,  815,  816,  819,  817, 1186, 1171,
-      821,  820, 1155, 1138, 1181, 1137, 1086, 1082,  844,  849,
-
-      826,  850, 1083,  833, 1077, 1068,  839, 1058,  834,  837,
-      841,  838,  840,  842,  874,  877, 1061, 1008,  927,  936,
-      882,  887,  891,  899,  864,  952,  951,  875,  848,  950,
-      876,  846,  882,  962, 1363,  917,  934,  918,  909,  926,
-     1363,  907,  872,  843,  483,  902,  480,  409,  944, 1363,
-      914,  933, 1363,  921,  302,  178,  935,  928,  127,  940,
-      117,  960,  958, 1363, 1363,  979,  989,  999, 1009, 1019,
-     1029, 1039, 1049, 1052, 1056, 1065, 1075, 1085, 1090, 1100,
-     1110, 1115, 1118, 1121, 1130, 1140, 1150, 1160, 1165, 1175,
-     1184, 1186, 1190, 1194, 1202, 1206, 1215, 1225, 1235
-
+       93,  113,  179, 1361,  129,  138,  232, 1360,  100,  149,
+      145,  166,  175,  187, 1367, 1370, 1370, 1370, 1370, 1336,
+      185,   62,  232,  238,    0, 1345,   42,  161,   60,  239,
+       63,  257,   97,   77, 1370, 1370, 1370, 1349,  216, 1335,
+     1370, 1370, 1370, 1370,  176,  146,    0, 1370, 1370,  257,
+     1303, 1370, 1370, 1370, 1370,    0,  256, 1370,  150,  169,
+      110,  157, 1370, 1370, 1370, 1370, 1370,    0,  259, 1370,
+      277,  206,  290,  294,  178,  279,  162,  190,  185,  282,
+      284,  171,  222,  294,  296,  297, 1370, 1370, 1370, 1370,
+
+     1370, 1370,  305,  301,  307,  302,  304,  220,  310,  320,
+      321,  332,  316,   62,  312, 1370, 1370, 1346,  356,  327,
+      361, 1370, 1370, 1345,  364,  372,  377, 1356, 1355,  357,
+      379, 1347, 1346,  370, 1370, 1352,  377,  383,  389,    0,
+      395, 1334, 1333, 1332,  371,  117,  378,  397,  413, 1301,
+     1313,  416, 1308,  388, 1296,  373,  231, 1370,  400,  204,
+     1370,    0, 1337,  377, 1336, 1335, 1370, 1341, 1370,  427,
+     1297, 1370, 1370, 1370, 1339,  401,  407,  418, 1370, 1327,
+     1327, 1336,  425,  431, 1307, 1308,  419,  431,  432,  433,
+      425,  435,  436,  437,  446,  447,  449,  452,  450,  454,
+
+      453,  457,  455,  460, 1370, 1333,  456,  317,  461,  462,
+      467,  465,  471,  474,  475,  482,  484,  486,  487, 1370,
+      510,  524,  526, 1370,  534, 1370,  536,  541,  549, 1370,
+     1320, 1370, 1370, 1370, 1370, 1324, 1323,  541, 1329, 1370,
+      545,    0, 1311,    0, 1310, 1309,  502,  500,  519,  511,
+     1291, 1278, 1280, 1267, 1272, 1279, 1264, 1370,  518, 1288,
+     1262, 1370, 1261, 1277,  513,  521, 1290, 1370, 1306, 1305,
+     1304, 1370, 1370, 1310, 1370, 1277, 1308, 1370,  528,  547,
+      548, 1370,  567, 1307, 1370, 1278,  564,  551,  552,  555,
+      557,  564,  558,  567, 1288,  566,  565,  568,  569,  570,
+
+      573,  574,  571,  581,  577,  587,  576, 1304, 1370,  590,
+      589,  596,  591,  593,  605,  607,  610,  599,  613,  611,
+      614,  615,  635, 1370,  651, 1286, 1285, 1284, 1283, 1282,
+      623, 1281,  625,  629, 1267, 1246, 1261, 1370, 1260,  604,
+     1370, 1248, 1370, 1259, 1370, 1370, 1240,  638,  631, 1267,
+     1370, 1370, 1370, 1248,  639, 1271, 1270,  661, 1370,  641,
+     1269,  645,  646,  648, 1268,  649, 1267,  650,  651,  656,
+      657,  658,  653,  669,  668,  661,  665,  659, 1266,  663,
+      675,  667,  689,  671,  688,  690, 1265, 1264,  693,  694,
+      695, 1263,  721, 1370,  723,  728, 1262, 1261, 1260, 1259,
+
+     1234, 1236,  136, 1226, 1228, 1216, 1236, 1239,  696,  697,
+        0, 1218,  699,  698, 1250,  717, 1249,  718,  721,  722,
+      725,  726, 1248,  724,  728,  729, 1247,  730,  732, 1246,
+      731,  735,  736,  737,  738,  742,  746,  750, 1221, 1214,
+      783, 1227, 1214, 1211, 1208,  747,  755, 1230, 1216,  751,
+      763, 1224,  754,  766,  757,  758, 1223, 1222, 1212, 1201,
+      776,  764,  760,  767,  773,  785,  786,  787,  791,  794,
+     1173, 1168,  822, 1167,  763, 1166,  798,  796, 1191, 1149,
+      797,  800,  805, 1127,  802,  806,  809, 1116,  807,  824,
+      814,  815, 1097, 1091,  828,  830, 1067, 1041, 1075, 1031,
+
+      942,  948,  849,  851,  848,  852,  967,  840,  966,  965,
+      832,  964,  841,  843,  853,  850,  854,  855,  876,  877,
+      976,  937,  919,  914,  889,  898,  902,  910,  878,  930,
+      929,  856,  861,  921,  864,  876,  872,  932, 1370,  862,
+      869,  928,  919,  936, 1370,  903,  866,  868,  498,  903,
+      493,  475,  954, 1370,  945,  936, 1370,  912,  355,  245,
+      952,  922,  224,  956,   81,  974,  976, 1370, 1370,  993,
+     1003, 1013, 1023, 1033, 1043, 1053, 1063, 1066, 1070, 1079,
+     1089, 1099, 1104, 1114, 1124, 1129, 1132, 1135, 1144, 1154,
+     1164, 1174, 1179, 1189, 1198, 1200, 1204, 1208, 1216, 1220,
+
+     1229, 1239, 1249
     } ;
 
-static yyconst flex_int16_t yy_def[600] =
+static yyconst flex_int16_t yy_def[604] =
     {   0,
-      565,    1,  566,  566,  567,  567,  568,  568,    1,    1,
-      569,  569,    1,   13,    1,    1,    1,   17,  570,  570,
-      571,  571,  572,  572,  565,  565,  565,  565,  565,  573,
-      565,  565,  565,  565,  574,  575,  575,  575,  575,  565,
-      565,  565,  575,  575,  565,  565,  565,  565,  565,  565,
-      565,  565,  565,  565,  565,  565,  576,  565,  565,  565,
-      565,  565,  565,  565,  565,  577,  565,  565,  565,  575,
-      575,  575,  565,  565,  565,  565,  565,  578,  565,  565,
-      565,  574,  579,  575,  575,  575,  575,  575,  575,  575,
-      575,  575,  575,  575,  575,  565,  565,  565,  565,  565,
-
-      565,  565,  575,  575,  575,  575,  575,  575,  575,  575,
-      575,  575,  575,  575,  565,  565,  565,  565,  565,  565,
-      565,  565,  565,  565,  565,  565,  565,  565,  565,  565,
-      565,  580,  565,  565,  581,  565,  565,  565,  582,  565,
-      583,  575,  584,  575,  575,  575,  575,  565,  565,  565,
-      565,  565,  565,  565,  565,  565,  565,  575,  575,  565,
-      585,  565,  565,  565,  565,  565,  586,  565,  565,  565,
-      565,  565,  565,  587,  575,  575,  575,  565,  565,  565,
-      588,  565,  565,  589,  565,  575,  575,  575,  575,  575,
-      575,  575,  575,  575,  575,  575,  575,  575,  575,  575,
-
-      575,  575,  575,  565,  590,  575,  575,  575,  575,  575,
-      575,  575,  575,  575,  575,  575,  575,  565,  565,  565,
-      565,  565,  591,  565,  565,  565,  565,  565,  565,  565,
-      565,  565,  565,  565,  565,  565,  581,  565,  565,  582,
-      583,  592,  593,  594,  575,  575,  575,  575,  565,  565,
-      565,  565,  565,  565,  565,  565,  565,  565,  565,  565,
-      565,  565,  575,  575,  565,  565,  565,  565,  565,  565,
-      565,  586,  565,  565,  587,  565,  575,  575,  575,  565,
-      565,  588,  565,  589,  579,  575,  575,  575,  575,  575,
-      575,  575,  575,  575,  575,  575,  575,  575,  575,  575,
-
-      575,  575,  575,  575,  575,  590,  565,  575,  575,  575,
-      575,  575,  575,  575,  575,  575,  575,  575,  575,  595,
-      565,  565,  596,  593,  565,  594,  584,  575,  575,  575,
-      575,  565,  565,  565,  565,  565,  565,  565,  565,  565,
-      565,  565,  565,  565,  575,  575,  565,  565,  565,  565,
-      565,  575,  575,  575,  565,  565,  575,  575,  575,  575,
-      575,  575,  575,  575,  575,  575,  575,  575,  575,  575,
-      575,  575,  575,  575,  575,  575,  575,  575,  575,  575,
-      575,  575,  575,  575,  575,  575,  575,  575,  565,  565,
-      595,  565,  596,  575,  575,  575,  565,  565,  565,  565,
-
-      565,  565,  565,  565,  575,  575,  597,  565,  575,  575,
-      575,  575,  575,  575,  575,  575,  575,  575,  575,  575,
-      575,  575,  575,  575,  575,  575,  575,  575,  575,  575,
-      575,  575,  575,  575,  565,  565,  565,  565,  565,  565,
-      565,  575,  575,  565,  565,  575,  575,  575,  575,  575,
-      575,  575,  575,  575,  575,  575,  575,  575,  575,  575,
-      575,  575,  575,  575,  575,  575,  565,  565,  565,  565,
-      565,  565,  575,  575,  565,  565,  575,  575,  575,  575,
-      575,  575,  575,  575,  575,  575,  575,  575,  575,  575,
-      575,  575,  565,  565,  565,  565,  565,  565,  575,  575,
-
-      565,  565,  575,  575,  575,  575,  575,  575,  575,  575,
-      575,  575,  575,  575,  565,  565,  598,  565,  565,  565,
-      565,  565,  565,  565,  565,  575,  575,  575,  575,  575,
-      575,  575,  575,  598,  565,  565,  565,  565,  565,  565,
-      565,  599,  575,  575,  575,  575,  575,  565,  565,  565,
-      565,  599,  565,  575,  575,  565,  565,  575,  565,  565,
-      575,  565,  565,  565,    0,  565,  565,  565,  565,  565,
-      565,  565,  565,  565,  565,  565,  565,  565,  565,  565,
-      565,  565,  565,  565,  565,  565,  565,  565,  565,  565,
-      565,  565,  565,  565,  565,  565,  565,  565,  565
-
+      569,    1,  570,  570,  571,  571,  572,  572,    1,    1,
+      573,  573,    1,   13,    1,    1,    1,   17,  574,  574,
+      575,  575,  576,  576,  569,  569,  569,  569,  569,  577,
+      569,  569,  569,  569,  578,  579,  579,  579,  579,  569,
+      569,  569,  579,  579,  569,  569,  569,  569,  569,  569,
+      569,  569,  569,  569,  569,  569,  580,  569,  569,  569,
+      569,  569,  569,  569,  569,  581,  569,  569,  569,  579,
+      579,  579,  569,  569,  569,  569,  569,  582,  569,  569,
+      569,  569,  578,  583,  579,  579,  579,  579,  579,  579,
+      579,  579,  579,  579,  579,  579,  569,  569,  569,  569,
+
+      569,  569,  569,  579,  579,  579,  579,  579,  579,  579,
+      579,  579,  579,  579,  579,  569,  569,  569,  569,  569,
+      569,  569,  569,  569,  569,  569,  569,  569,  569,  569,
+      569,  569,  584,  569,  569,  585,  569,  569,  569,  586,
+      569,  587,  579,  588,  579,  579,  579,  579,  569,  569,
+      569,  569,  569,  569,  569,  569,  569,  569,  579,  579,
+      569,  589,  569,  569,  569,  569,  569,  590,  569,  569,
+      569,  569,  569,  569,  591,  579,  579,  579,  569,  569,
+      569,  592,  569,  569,  593,  569,  579,  579,  579,  579,
+      579,  579,  579,  579,  579,  579,  579,  579,  579,  579,
+
+      579,  579,  579,  579,  569,  594,  579,  579,  579,  579,
+      579,  579,  579,  579,  579,  579,  579,  579,  579,  569,
+      569,  569,  569,  569,  595,  569,  569,  569,  569,  569,
+      569,  569,  569,  569,  569,  569,  569,  569,  585,  569,
+      569,  586,  587,  596,  597,  598,  579,  579,  579,  579,
+      569,  569,  569,  569,  569,  569,  569,  569,  569,  569,
+      569,  569,  569,  569,  579,  579,  569,  569,  569,  569,
+      569,  569,  569,  590,  569,  569,  591,  569,  579,  579,
+      579,  569,  569,  592,  569,  593,  583,  579,  579,  579,
+      579,  579,  579,  579,  579,  579,  579,  579,  579,  579,
+
+      579,  579,  579,  579,  579,  579,  579,  594,  569,  579,
+      579,  579,  579,  579,  579,  579,  579,  579,  579,  579,
+      579,  579,  599,  569,  569,  600,  597,  569,  598,  588,
+      579,  579,  579,  579,  569,  569,  569,  569,  569,  569,
+      569,  569,  569,  569,  569,  569,  569,  579,  579,  569,
+      569,  569,  569,  569,  579,  579,  579,  569,  569,  579,
+      579,  579,  579,  579,  579,  579,  579,  579,  579,  579,
+      579,  579,  579,  579,  579,  579,  579,  579,  579,  579,
+      579,  579,  579,  579,  579,  579,  579,  579,  579,  579,
+      579,  579,  569,  569,  599,  569,  600,  579,  579,  579,
+
+      569,  569,  569,  569,  569,  569,  569,  569,  579,  579,
+      601,  569,  579,  579,  579,  579,  579,  579,  579,  579,
+      579,  579,  579,  579,  579,  579,  579,  579,  579,  579,
+      579,  579,  579,  579,  579,  579,  579,  579,  569,  569,
+      569,  569,  569,  569,  569,  579,  579,  569,  569,  579,
+      579,  579,  579,  579,  579,  579,  579,  579,  579,  579,
+      579,  579,  579,  579,  579,  579,  579,  579,  579,  579,
+      569,  569,  569,  569,  569,  569,  579,  579,  569,  569,
+      579,  579,  579,  579,  579,  579,  579,  579,  579,  579,
+      579,  579,  579,  579,  579,  579,  569,  569,  569,  569,
+
+      569,  569,  579,  579,  569,  569,  579,  579,  579,  579,
+      579,  579,  579,  579,  579,  579,  579,  579,  569,  569,
+      602,  569,  569,  569,  569,  569,  569,  569,  569,  579,
+      579,  579,  579,  579,  579,  579,  579,  602,  569,  569,
+      569,  569,  569,  569,  569,  603,  579,  579,  579,  579,
+      579,  569,  569,  569,  569,  603,  569,  579,  579,  569,
+      569,  579,  569,  569,  579,  569,  569,  569,    0,  569,
+      569,  569,  569,  569,  569,  569,  569,  569,  569,  569,
+      569,  569,  569,  569,  569,  569,  569,  569,  569,  569,
+      569,  569,  569,  569,  569,  569,  569,  569,  569,  569,
+
+      569,  569,  569
     } ;
 
-static yyconst flex_int16_t yy_nxt[1423] =
+static yyconst flex_int16_t yy_nxt[1430] =
     {   0,
        26,   27,   28,   27,   29,   27,   26,   26,   26,   30,
        26,   26,   26,   31,   32,   33,   34,   34,   34,   35,
@@ -700,160 +703,160 @@ static yyconst flex_int16_t yy_nxt[1423] =
        26,   36,   36,   36,   37,   36,   38,   39,   36,   36,
        36,   36,   36,   36,   36,   36,   36,   36,   36,   36,
        36,   36,   36,   36,   36,   36,   36,   26,   26,   40,
-       46,  143,   47,   40,  151,   41,   42,   46,  151,   47,
-       48,   52,   49,   53,  134,   54,  135,   48,   55,  143,
-       68,  143,   63,   56,   64,  144,   65,   63,   69,   64,
-       50,   65,   67,   68,   41,   75,  143,   76,   57,   77,
-
-      286,   69,   28,  147,  116,   43,  152,   44,   70,   66,
-       36,   71,  117,  159,   66,   75,  166,   76,  167,   77,
-       79,   70,   78,   36,   71,   72,   58,   59,   52,  143,
-       53,   73,   54,   60,   61,   55,  143,   28,   72,  122,
-       56,   98,   78,   41,   73,   26,   98,  123,  118,   28,
-       26,  116,  118,  175,  119,   57,  173,  143,  174,  120,
-      124,   28,  143,  122,  124,   36,  125,   36,   36,  143,
-       36,  126,   36,   36,  151,  143,  261,   28,  151,  128,
-      143,  192,  177,   58,   59,   80,   81,  129,   96,  143,
-      143,   82,   28,   96,  128,  145,  153,  130,  154,  146,
-
-       83,  143,  129,  155,   84,  158,   85,   86,   87,   88,
-      176,  156,   89,  210,  559,   90,  152,  143,   91,   92,
-      186,  157,   93,   72,   94,   95,  180,  191,  181,   96,
-       97,   99,  143,  148,  263,  100,  101,  148,  143,  102,
-      133,  133,  133,  133,  136,  231,  137,  137,  137,  138,
-      136,  162,  140,  140,  140,  140,  143,  232,  103,  104,
-      105,  106,  107,  151,  193,   89,  195,  151,   90,  108,
-      109,  110,  111,  295,  163,  112,  113,   94,  114,  149,
-      169,  150,  143,  151,  169,  143,  139,  151,  179,  143,
-      133,  133,  133,  133,  182,  182,  182,  182,  183,  183,
-
-      183,  183,  164,  165,  143,  152,  143,  143,  204,  190,
-      205,  143,  194,  185,  143,  201,  143,  143,  143,  170,
-      143,  143,  152,  151,  187,  152,  143,  151,  188,  143,
-      143,  189,  202,  209,  198,  199,  196,  187,  203,  197,
-      206,  213,  211,  207,  189,  143,  200,  208,  143,  143,
-      212,  143,  219,  203,  151,  217,  219,  190,  151,  214,
-      143,  215,  225,  220,  245,  152,  225,  221,  222,  198,
-      216,  223,  148,  226,  227,  228,  148,  143,  227,  267,
-      218,  200,  151,  231,  369,  229,  151,  230,  236,  236,
-      236,  236,  239,  239,  239,  239,  152,  136,  143,  137,
-
-      137,  137,  138,  136,  143,  138,  138,  138,  138,  136,
-      246,  140,  140,  140,  140,  151,  261,  248,  149,  151,
-      150,  252,  143,  253,  152,  258,  262,  143,  247,  254,
-      268,  269,  169,  143,  143,  143,  169,  255,  143,  143,
-      259,  143,  143,  256,  556,  143,  260,  277,  143,  143,
-      143,  264,  287,  143,  278,  288,  279,  152,  182,  182,
-      182,  182,  183,  183,  183,  183,  290,  289,  143,  143,
-      293,  170,  143,  143,  152,  292,  294,  185,  291,  301,
-      299,  143,  143,  298,  143,  143,  143,  143,  143,  296,
-      143,  300,  143,  143,  302,  297,  143,  143,  143,  143,
-
-      143,  312,  143,  305,  303,  310,  143,  143,  315,  221,
-      222,  304,  219,  223,  361,  292,  219,  308,  314,  311,
-      316,  309,  143,  220,  319,  318,  313,  317,  221,  222,
-      221,  222,  221,  225,  221,  227,  228,  225,  328,  227,
-      143,  322,  228,  143,  226,  322,  229,  329,  321,  236,
-      236,  236,  236,  239,  239,  239,  239,  339,  143,  143,
-      143,  143,  331,  143,  143,  355,  356,  330,  340,  355,
-      143,  345,  183,  183,  183,  183,  143,  143,  143,  143,
-      143,  143,  143,  143,  143,  143,  353,  185,  143,  143,
-      143,  352,  346,  363,  354,  143,  143,  357,  364,  143,
-
-      358,  143,  143,  362,  143,  143,  376,  359,  360,  371,
-      374,  365,  143,  367,  370,  379,  366,  368,  378,  143,
-      143,  372,  373,  381,  143,  143,  143,  143,  375,  377,
-      380,  389,  390,  382,  143,  389,  143,  143,  386,  401,
-      383,  385,  143,  384,  388,  256,  322,  228,  143,  392,
-      322,  143,  387,  355,  356,  143,  143,  355,  143,  143,
-      143,  143,  143,  406,  143,  394,  395,  143,  396,  143,
-      143,  143,  405,  143,  143,  415,  143,  143,  143,  143,
-      409,  416,  354,  412,  417,  422,  143,  410,  143,  420,
-      411,  414,  413,  421,  418,  427,  424,  423,  143,  143,
-
-      426,  419,  143,  143,  143,  143,  143,  425,  389,  390,
-      429,  428,  389,  389,  390,  143,  437,  389,  433,  430,
-      437,  143,  421,  143,  431,  143,  143,  432,  143,  434,
-      442,  392,  389,  390,  143,  143,  389,  143,  446,  143,
-      143,  143,  448,  143,  143,  443,  143,  449,  143,  143,
-      452,  143,  453,  143,  143,  143,  455,  458,  447,  143,
-      450,  459,  437,  454,  451,  462,  437,  466,  143,  457,
-      460,  143,  143,  456,  143,  143,  469,  469,  469,  469,
-      461,  143,  143,  143,  463,  143,  143,  464,  474,  143,
-      479,  465,  143,  143,  143,  473,  478,  143,  477,  480,
-
-      143,  143,  483,  495,  143,  497,  143,  495,  143,  143,
-      484,  260,  143,  481,  143,  482,  491,  469,  469,  469,
-      469,  485,  489,  499,  486,  490,  488,  143,  504,  143,
-      487,  505,  143,  492,  143,  143,  143,  500,  143,  143,
-      143,  503,  523,  524,  524,  521,  507,  510,  508,  521,
-      522,  525,  143,  143,  522,  525,  143,  143,  143,  143,
-      143,  143,  143,  143,  506,  143,  511,  143,  143,  526,
-      542,  509,  513,  512,  527,  521,  514,  530,  522,  521,
-      544,  528,  522,  521,  542,  531,  554,  521,  522,  533,
-      529,  143,  522,  546,  143,  143,  532,  538,  538,  538,
-
-      538,  143,  539,  539,  539,  539,  540,  540,  540,  540,
-      541,  543,  545,  553,  540,  540,  540,  540,  547,  549,
-      550,  143,  551,  549,  539,  539,  539,  539,  553,  557,
-      557,  557,  557,  538,  538,  538,  538,  541,  555,  553,
-      143,  540,  540,  540,  540,  549,  550,  143,  560,  549,
-      557,  557,  557,  557,  553,  562,  562,  562,  562,  563,
-      564,  563,  564,  563,  561,  563,  548,  252,  535,  143,
-      143,  143,  537,  558,  259,  562,  562,  562,  562,   45,
-       45,   45,   45,   45,   45,   45,   45,   45,   45,   51,
-       51,   51,   51,   51,   51,   51,   51,   51,   51,   62,
-
-       62,   62,   62,   62,   62,   62,   62,   62,   62,   74,
-       74,   74,   74,   74,   74,   74,   74,   74,   74,  115,
-      115,  115,  115,  115,  115,  115,  115,  115,  115,  121,
-      121,  121,  121,  121,  121,  121,  121,  121,  121,  127,
-      127,  127,  127,  127,  127,  127,  127,  127,  127,  131,
-      131,  536,  131,  131,  131,  131,  131,  131,  131,  141,
-      141,  142,  142,  142,  142,  168,  168,  535,  168,  168,
-      168,  168,  168,  168,  168,  172,  172,  143,  172,  172,
-      172,  172,  172,  172,  172,  178,  178,  143,  178,  178,
-      178,  178,  178,  178,  178,  184,  143,  184,  184,  184,
-
-      234,  234,  143,  234,  234,  234,  234,  234,  234,  234,
-      237,  237,  237,  237,  237,  237,  237,  237,  237,  237,
-      240,  520,  240,  241,  241,  241,  241,  244,  244,  244,
-      265,  265,  519,  265,  265,  265,  265,  265,  265,  265,
-      272,  272,  272,  272,  272,  272,  272,  272,  272,  272,
-      275,  275,  275,  275,  275,  275,  275,  275,  275,  275,
-      282,  282,  282,  282,  282,  282,  282,  282,  282,  282,
-      284,  518,  284,  284,  284,  306,  306,  306,  306,  306,
-      306,  306,  306,  306,  306,  320,  320,  517,  516,  515,
-      143,  320,  320,  323,  323,  324,  324,  324,  324,  326,
-
-      326,  326,  326,  391,  391,  143,  143,  391,  391,  391,
-      391,  393,  393,  393,  393,  444,  444,  143,  444,  444,
-      444,  444,  444,  444,  444,  534,  534,  502,  501,  498,
-      534,  534,  534,  534,  534,  552,  552,  496,  552,  494,
-      552,  552,  552,  552,  552,  493,  143,  143,  143,  143,
-      143,  476,  475,  472,  471,  255,  470,  468,  467,  143,
-      143,  143,  143,  143,  445,  441,  440,  340,  439,  438,
-      436,  435,  143,  143,  143,  242,  143,  143,  143,  143,
-      143,  143,  143,  143,  408,  407,  404,  403,  402,  400,
-      399,  398,  397,  143,  565,  327,  243,  325,  242,  307,
-
-      143,  185,  283,  276,  351,  273,  350,  349,  348,  347,
-      344,  343,  342,  341,  338,  337,  336,  335,  334,  333,
-      332,  327,  325,  242,  238,  233,  233,  321,  307,  285,
-      185,  283,  281,  280,  276,  274,  273,  271,  270,  266,
-      257,  251,  250,  249,  243,  143,  242,  238,  235,  233,
-      231,  231,  224,  218,  171,  161,  160,  143,  132,  565,
-       41,   41,   25,  565,  565,  565,  565,  565,  565,  565,
-      565,  565,  565,  565,  565,  565,  565,  565,  565,  565,
-      565,  565,  565,  565,  565,  565,  565,  565,  565,  565,
-      565,  565,  565,  565,  565,  565,  565,  565,  565,  565,
-
-      565,  565,  565,  565,  565,  565,  565,  565,  565,  565,
-      565,  565,  565,  565,  565,  565,  565,  565,  565,  565,
-      565,  565
+       46,  144,   47,   40,  152,   41,   42,   46,  152,   47,
+       48,   52,   49,   53,  135,   54,  136,   48,   55,  144,
+       68,  144,   63,   56,   64,  145,   65,   63,   69,   64,
+       50,   65,   67,   68,   41,   75,  144,   76,   57,   77,
+
+      144,   69,   28,  148,  117,   43,  153,   44,   70,   66,
+       36,   71,  118,  160,   66,   75,  144,   76,  219,   77,
+       79,   70,   78,   36,   71,   72,   58,   59,   52,  144,
+       53,   73,   54,   60,   61,   55,  144,  441,   72,   99,
+       56,  441,   78,   26,   73,   41,  159,   28,   99,  123,
+      119,   28,   26,  117,  119,   57,  120,  124,  167,  177,
+      168,  121,  174,   36,  175,   36,   36,  125,   28,  248,
+      123,  125,   36,  126,   36,   36,  144,   28,  127,  129,
+      144,  144,  163,   58,   59,   80,   97,  130,  144,   28,
+      144,  129,   81,   82,  131,   97,  178,  144,   83,  130,
+
+      134,  134,  134,  134,  144,  164,  146,   84,  191,  144,
+      147,   85,  176,   86,   87,   88,   89,  152,  181,   90,
+      182,  152,   91,  144,  196,   92,   93,  187,  193,   94,
+       72,   95,   96,  165,  166,  192,   97,   98,  100,  144,
+      149,  144,  101,  102,  149,  137,  103,  138,  138,  138,
+      139,  137,  266,  141,  141,  141,  141,  152,  170,  153,
+      152,  152,  170,  211,  152,  104,  105,  106,  107,  108,
+      263,  197,   90,  263,  198,   91,  109,  110,  111,  112,
+      264,  563,  113,  114,   95,  115,  150,  140,  151,  154,
+      180,  155,  134,  134,  134,  134,  156,  171,  144,  153,
+
+      153,  144,  153,  144,  157,  183,  183,  183,  183,  184,
+      184,  184,  184,  144,  158,  144,  144,  205,  188,  206,
+      144,  144,  189,  144,  186,  190,  144,  194,  152,  144,
+      195,  144,  152,  199,  200,  144,  144,  203,  209,  144,
+      144,  202,  212,  204,  207,  201,  188,  208,  191,  210,
+      213,  144,  214,  190,  216,  199,  218,  221,  204,  233,
+      215,  221,  223,  224,  217,  227,  225,  201,  222,  227,
+      153,  234,  311,  152,  144,  220,  228,  152,  229,  230,
+      152,  233,  229,  269,  152,  238,  238,  238,  238,  231,
+      144,  232,  241,  241,  241,  241,  137,  144,  138,  138,
+
+      138,  139,  137,  247,  139,  139,  139,  139,  137,  260,
+      141,  141,  141,  141,  149,  153,  144,  152,  149,  144,
+      144,  152,  153,  254,  261,  255,  144,  249,  170,  250,
+      262,  256,  170,  279,  270,  271,  265,  144,  144,  257,
+      183,  183,  183,  183,  144,  258,  184,  184,  184,  184,
+      144,  144,  144,  280,  144,  144,  144,  288,  281,  153,
+      150,  186,  151,  289,  290,  144,  144,  171,  144,  144,
+      153,  144,  144,  144,  144,  144,  144,  292,  291,  144,
+      144,  144,  294,  297,  144,  300,  144,  293,  295,  298,
+      144,  296,  302,  144,  144,  299,  301,  304,  312,  314,
+
+      307,  144,  303,  144,  306,  144,  144,  305,  310,  318,
+      560,  221,  144,  294,  313,  221,  316,  144,  317,  144,
+      315,  144,  222,  319,  321,  223,  224,  223,  224,  225,
+      144,  223,  144,  320,  322,  223,  224,  227,  144,  223,
+      144,  227,  229,  230,  332,  348,  229,  144,  228,  334,
+      325,  230,  331,  231,  325,  324,  238,  238,  238,  238,
+      241,  241,  241,  241,  342,  333,  144,  144,  358,  359,
+      144,  144,  358,  349,  144,  343,  144,  144,  355,  184,
+      184,  184,  184,  144,  144,  144,  144,  144,  144,  144,
+      144,  356,  144,  144,  186,  144,  144,  364,  357,  366,
+
+      144,  361,  365,  360,  367,  362,  144,  363,  144,  144,
+      144,  379,  144,  372,  368,  144,  370,  377,  144,  374,
+      371,  369,  373,  375,  144,  381,  144,  376,  382,  144,
+      144,  384,  144,  144,  144,  383,  393,  394,  378,  380,
+      393,  388,  144,  390,  144,  385,  387,  386,  144,  389,
+      144,  392,  325,  230,  396,  405,  325,  144,  144,  391,
+      144,  258,  358,  359,  144,  144,  358,  144,  144,  144,
+      144,  410,  144,  398,  399,  144,  144,  144,  144,  400,
+      144,  409,  144,  419,  144,  413,  144,  144,  144,  357,
+      144,  416,  420,  421,  144,  414,  430,  415,  422,  418,
+
+      417,  424,  426,  428,  423,  425,  427,  144,  144,  144,
+      431,  429,  144,  144,  144,  144,  144,  144,  144,  432,
+      433,  434,  393,  394,  393,  394,  393,  437,  393,  393,
+      394,  425,  435,  393,  436,  450,  144,  144,  438,  446,
+      144,  144,  396,  144,  144,  144,  447,  144,  144,  144,
+      144,  144,  451,  452,  144,  144,  144,  144,  453,  456,
+      457,  144,  463,  459,  462,  144,  144,  458,  466,  144,
+      144,  455,  454,  144,  144,  461,  144,  144,  464,  144,
+      460,  470,  144,  144,  441,  144,  144,  465,  441,  483,
+      467,  478,  144,  477,  468,  144,  481,  469,  473,  473,
+
+      473,  473,  484,  482,  144,  144,  144,  488,  485,  486,
+      144,  489,  487,  144,  501,  144,  144,  144,  490,  144,
+      262,  144,  495,  499,  144,  144,  144,  499,  144,  491,
+      493,  494,  503,  144,  144,  508,  492,  473,  473,  473,
+      473,  509,  511,  144,  512,  496,  504,  144,  507,  144,
+      525,  144,  526,  529,  525,  514,  526,  529,  510,  144,
+      144,  515,  144,  513,  527,  528,  528,  531,  144,  144,
+      144,  516,  144,  144,  144,  144,  530,  525,  526,  517,
+      144,  525,  526,  144,  546,  144,  518,  144,  532,  534,
+      525,  144,  547,  548,  525,  144,  533,  535,  546,  526,
+
+      549,  552,  537,  526,  542,  542,  542,  542,  551,  557,
+      536,  558,  254,  543,  543,  543,  543,  544,  544,  544,
+      544,  545,  144,  550,  557,  544,  544,  544,  544,  553,
+      554,  144,  555,  553,  543,  543,  543,  543,  539,  559,
+      144,  144,  557,  542,  542,  542,  542,  545,  144,  144,
+      541,  544,  544,  544,  544,  553,  554,  557,  565,  553,
+      561,  561,  561,  561,  562,  564,  261,  561,  561,  561,
+      561,  566,  566,  566,  566,  567,  568,  567,  568,  567,
+      540,  567,  539,  144,  144,  144,  144,  524,  523,  566,
+      566,  566,  566,   45,   45,   45,   45,   45,   45,   45,
+
+       45,   45,   45,   51,   51,   51,   51,   51,   51,   51,
+       51,   51,   51,   62,   62,   62,   62,   62,   62,   62,
+       62,   62,   62,   74,   74,   74,   74,   74,   74,   74,
+       74,   74,   74,  116,  116,  116,  116,  116,  116,  116,
+      116,  116,  116,  122,  122,  122,  122,  122,  122,  122,
+      122,  122,  122,  128,  128,  128,  128,  128,  128,  128,
+      128,  128,  128,  132,  132,  522,  132,  132,  132,  132,
+      132,  132,  132,  142,  142,  143,  143,  143,  143,  169,
+      169,  521,  169,  169,  169,  169,  169,  169,  169,  173,
+      173,  520,  173,  173,  173,  173,  173,  173,  173,  179,
+
+      179,  519,  179,  179,  179,  179,  179,  179,  179,  185,
+      144,  185,  185,  185,  236,  236,  144,  236,  236,  236,
+      236,  236,  236,  236,  239,  239,  239,  239,  239,  239,
+      239,  239,  239,  239,  242,  144,  242,  243,  243,  243,
+      243,  246,  246,  246,  267,  267,  144,  267,  267,  267,
+      267,  267,  267,  267,  274,  274,  274,  274,  274,  274,
+      274,  274,  274,  274,  277,  277,  277,  277,  277,  277,
+      277,  277,  277,  277,  284,  284,  284,  284,  284,  284,
+      284,  284,  284,  284,  286,  506,  286,  286,  286,  308,
+      308,  308,  308,  308,  308,  308,  308,  308,  308,  323,
+
+      323,  505,  502,  500,  498,  323,  323,  326,  326,  327,
+      327,  327,  327,  329,  329,  329,  329,  395,  395,  497,
+      144,  395,  395,  395,  395,  397,  397,  397,  397,  448,
+      448,  144,  448,  448,  448,  448,  448,  448,  448,  538,
+      538,  144,  144,  144,  538,  538,  538,  538,  538,  556,
+      556,  480,  556,  479,  556,  556,  556,  556,  556,  476,
+      475,  257,  474,  472,  471,  144,  144,  144,  144,  144,
+      449,  445,  444,  343,  443,  442,  440,  439,  144,  144,
+      144,  244,  144,  144,  144,  144,  144,  144,  144,  144,
+      144,  412,  411,  408,  407,  406,  404,  403,  402,  401,
+
+      144,  569,  330,  245,  328,  244,  309,  144,  186,  285,
+      278,  354,  275,  353,  352,  351,  350,  347,  346,  345,
+      344,  341,  340,  339,  338,  337,  336,  335,  330,  328,
+      244,  240,  235,  235,  324,  309,  287,  186,  285,  283,
+      282,  278,  276,  275,  273,  272,  268,  259,  253,  252,
+      251,  245,  144,  244,  240,  237,  235,  233,  233,  226,
+      220,  172,  162,  161,  144,  133,  569,   41,   41,   25,
+      569,  569,  569,  569,  569,  569,  569,  569,  569,  569,
+      569,  569,  569,  569,  569,  569,  569,  569,  569,  569,
+      569,  569,  569,  569,  569,  569,  569,  569,  569,  569,
+
+      569,  569,  569,  569,  569,  569,  569,  569,  569,  569,
+      569,  569,  569,  569,  569,  569,  569,  569,  569,  569,
+      569,  569,  569,  569,  569,  569,  569,  569,  569
     } ;
 
-static yyconst flex_int16_t yy_chk[1423] =
+static yyconst flex_int16_t yy_chk[1430] =
     {   0,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
@@ -863,155 +866,155 @@ static yyconst flex_int16_t yy_chk[1423] =
         1,    1,    1,    1,    1,    1,    1,    1,    1,    2,
         3,   37,    3,    2,   41,    2,    2,    4,   41,    4,
         3,    5,    4,    5,   32,    5,   32,    4,    5,   39,
-        9,  186,    7,    5,    7,   37,    7,    8,    9,    8,
+        9,  114,    7,    5,    7,   37,    7,    8,    9,    8,
         4,    8,    8,   10,   10,   11,   44,   11,    5,   11,
 
-      186,   10,   19,   39,   19,    2,   41,    2,    9,    7,
-        9,    9,   19,   44,    8,   12,   56,   12,   56,   12,
-       12,   10,   11,   10,   10,    9,    5,    5,    6,   70,
-        6,    9,    6,    6,    6,    6,  561,   21,   10,   21,
-        6,   15,   12,   16,   10,   15,   16,   21,   20,   20,
-       16,   20,   20,   70,   20,    6,   69,   88,   69,   20,
-       22,   22,   72,   22,   22,   15,   22,   15,   15,   38,
-       16,   22,   16,   16,   49,   43,  559,   23,   49,   23,
-       71,   88,   72,    6,    6,   13,   13,   23,   15,  107,
-       84,   13,   24,   16,   24,   38,   42,   24,   42,   38,
-
-       13,   87,   24,   42,   13,   43,   13,   13,   13,   13,
-       71,   42,   13,  107,  556,   13,   49,  158,   13,   13,
-       84,   42,   13,   13,   13,   13,   81,   87,   81,   13,
-       13,   17,   91,   40,  158,   17,   17,   40,   89,   17,
-       31,   31,   31,   31,   33,  129,   33,   33,   33,   33,
-       34,   55,   34,   34,   34,   34,  195,  129,   17,   17,
-       17,   17,   17,   67,   89,   17,   91,   67,   17,   17,
-       17,   17,   17,  195,   55,   17,   17,   17,   17,   40,
-       60,   40,   86,   79,   60,   90,   33,   79,   80,   94,
-       80,   80,   80,   80,   82,   82,   82,   82,   83,   83,
-
-       83,   83,   55,   55,   85,   67,   92,  106,  102,   86,
-      102,   95,   90,   83,   93,   94,  103,  104,  113,   60,
-      109,  555,   60,  119,   85,   79,  114,  119,   85,  108,
-      105,   85,   95,  106,   93,   93,   92,  104,   95,   92,
-      103,  109,  108,  103,  104,  110,   93,  105,  111,  112,
-      108,  144,  118,  114,  125,  113,  118,  105,  125,  110,
-      298,  111,  124,  118,  144,  119,  124,  120,  120,  112,
-      112,  120,  148,  124,  126,  126,  148,  145,  126,  163,
-      120,  112,  130,  130,  298,  126,  130,  126,  133,  133,
-      133,  133,  136,  136,  136,  136,  125,  137,  146,  137,
-
-      137,  137,  137,  138,  147,  138,  138,  138,  138,  140,
-      145,  140,  140,  140,  140,  151,  156,  147,  148,  151,
-      148,  153,  159,  153,  130,  155,  156,  176,  146,  153,
-      163,  163,  169,  190,  175,  177,  169,  153,  193,  187,
-      155,  189,  188,  153,  548,  191,  155,  175,  192,  200,
-      194,  159,  187,  198,  176,  188,  177,  151,  182,  182,
-      182,  182,  183,  183,  183,  183,  190,  189,  196,  197,
-      193,  169,  199,  201,  169,  192,  194,  183,  191,  200,
-      198,  202,  203,  197,  206,  207,  209,  208,  210,  196,
-      211,  199,  212,  213,  201,  196,  217,  215,  214,  547,
-
-      290,  210,  545,  203,  201,  208,  216,  245,  213,  220,
-      220,  202,  219,  220,  290,  210,  219,  206,  212,  209,
-      214,  207,  246,  219,  217,  216,  211,  215,  221,  221,
-      223,  223,  221,  225,  223,  226,  226,  225,  245,  226,
-      247,  227,  227,  248,  225,  227,  226,  246,  226,  236,
-      236,  236,  236,  239,  239,  239,  239,  257,  263,  264,
-      277,  278,  248,  279,  286,  281,  281,  247,  257,  281,
-      287,  263,  285,  285,  285,  285,  288,  289,  291,  294,
-      292,  295,  296,  300,  299,  297,  278,  285,  301,  303,
-      305,  277,  264,  292,  279,  302,  304,  286,  294,  308,
-
-      287,  309,  310,  291,  312,  311,  305,  288,  289,  300,
-      303,  295,  313,  297,  299,  310,  296,  297,  309,  314,
-      315,  301,  302,  312,  316,  317,  318,  319,  304,  308,
-      311,  320,  320,  313,  328,  320,  330,  331,  317,  337,
-      314,  316,  346,  315,  319,  337,  322,  322,  345,  320,
-      322,  352,  318,  355,  355,  357,  359,  355,  360,  361,
-      363,  365,  366,  346,  367,  328,  330,  368,  331,  370,
-      372,  373,  345,  369,  375,  366,  371,  374,  379,  378,
-      357,  367,  352,  361,  368,  372,  377,  359,  381,  371,
-      360,  365,  363,  371,  369,  378,  374,  373,  380,  382,
-
-      377,  370,  383,  385,  386,  387,  405,  375,  389,  389,
-      380,  379,  389,  391,  391,  406,  399,  391,  385,  381,
-      399,  409,  387,  410,  382,  412,  414,  383,  415,  386,
-      405,  391,  392,  392,  416,  417,  392,  418,  409,  420,
-      421,  422,  412,  424,  425,  406,  428,  414,  429,  427,
-      417,  431,  418,  430,  432,  434,  421,  425,  410,  433,
-      415,  427,  437,  420,  416,  430,  437,  434,  442,  424,
-      428,  443,  446,  422,  449,  447,  437,  437,  437,  437,
-      429,  451,  450,  452,  431,  457,  458,  432,  443,  459,
-      449,  433,  460,  461,  462,  442,  447,  463,  446,  450,
-
-      464,  466,  457,  469,  465,  471,  474,  469,  473,  477,
-      458,  471,  478,  451,  479,  452,  465,  469,  469,  469,
-      469,  459,  463,  473,  460,  464,  462,  481,  478,  482,
-      461,  479,  483,  466,  485,  486,  488,  474,  487,  492,
-      491,  477,  501,  501,  501,  499,  482,  486,  483,  499,
-      500,  502,  504,  509,  500,  502,  510,  512,  507,  513,
-      511,  514,  544,  499,  481,  532,  487,  529,  500,  504,
-      525,  485,  491,  488,  507,  515,  492,  511,  516,  515,
-      529,  509,  516,  521,  525,  512,  544,  521,  522,  514,
-      510,  543,  522,  532,  528,  531,  513,  521,  521,  521,
-
-      521,  533,  522,  522,  522,  522,  523,  523,  523,  523,
-      524,  528,  531,  542,  524,  524,  524,  524,  533,  538,
-      538,  546,  539,  538,  539,  539,  539,  539,  542,  551,
-      551,  551,  551,  538,  538,  538,  538,  540,  546,  552,
-      554,  540,  540,  540,  540,  549,  549,  558,  557,  549,
-      557,  557,  557,  557,  552,  560,  560,  560,  560,  563,
-      563,  562,  562,  563,  558,  562,  537,  536,  534,  530,
-      527,  526,  520,  554,  519,  562,  562,  562,  562,  566,
-      566,  566,  566,  566,  566,  566,  566,  566,  566,  567,
-      567,  567,  567,  567,  567,  567,  567,  567,  567,  568,
-
-      568,  568,  568,  568,  568,  568,  568,  568,  568,  569,
-      569,  569,  569,  569,  569,  569,  569,  569,  569,  570,
-      570,  570,  570,  570,  570,  570,  570,  570,  570,  571,
-      571,  571,  571,  571,  571,  571,  571,  571,  571,  572,
-      572,  572,  572,  572,  572,  572,  572,  572,  572,  573,
-      573,  518,  573,  573,  573,  573,  573,  573,  573,  574,
-      574,  575,  575,  575,  575,  576,  576,  517,  576,  576,
-      576,  576,  576,  576,  576,  577,  577,  508,  577,  577,
-      577,  577,  577,  577,  577,  578,  578,  506,  578,  578,
-      578,  578,  578,  578,  578,  579,  505,  579,  579,  579,
-
-      580,  580,  503,  580,  580,  580,  580,  580,  580,  580,
-      581,  581,  581,  581,  581,  581,  581,  581,  581,  581,
-      582,  498,  582,  583,  583,  583,  583,  584,  584,  584,
-      585,  585,  497,  585,  585,  585,  585,  585,  585,  585,
-      586,  586,  586,  586,  586,  586,  586,  586,  586,  586,
-      587,  587,  587,  587,  587,  587,  587,  587,  587,  587,
-      588,  588,  588,  588,  588,  588,  588,  588,  588,  588,
-      589,  496,  589,  589,  589,  590,  590,  590,  590,  590,
-      590,  590,  590,  590,  590,  591,  591,  495,  494,  493,
-      490,  591,  591,  592,  592,  593,  593,  593,  593,  594,
-
-      594,  594,  594,  595,  595,  489,  484,  595,  595,  595,
-      595,  596,  596,  596,  596,  597,  597,  480,  597,  597,
-      597,  597,  597,  597,  597,  598,  598,  476,  475,  472,
-      598,  598,  598,  598,  598,  599,  599,  470,  599,  468,
-      599,  599,  599,  599,  599,  467,  456,  455,  454,  453,
-      448,  445,  444,  441,  440,  439,  438,  436,  435,  426,
-      423,  419,  413,  411,  408,  404,  403,  402,  401,  400,
-      398,  397,  396,  395,  394,  393,  388,  384,  376,  364,
-      362,  358,  354,  353,  351,  347,  344,  341,  339,  336,
-      334,  333,  332,  329,  327,  326,  325,  324,  323,  306,
-
-      293,  284,  282,  275,  274,  272,  269,  268,  267,  265,
-      262,  261,  259,  258,  255,  254,  253,  252,  251,  250,
-      249,  244,  243,  241,  237,  235,  234,  229,  205,  185,
-      184,  181,  180,  179,  174,  170,  167,  165,  164,  162,
-      154,  152,  150,  149,  143,  142,  141,  135,  132,  131,
-      128,  127,  123,  117,   61,   50,   48,   36,   30,   25,
-       18,   14,  565,  565,  565,  565,  565,  565,  565,  565,
-      565,  565,  565,  565,  565,  565,  565,  565,  565,  565,
-      565,  565,  565,  565,  565,  565,  565,  565,  565,  565,
-      565,  565,  565,  565,  565,  565,  565,  565,  565,  565,
-
-      565,  565,  565,  565,  565,  565,  565,  565,  565,  565,
-      565,  565,  565,  565,  565,  565,  565,  565,  565,  565,
-      565,  565
+      565,   10,   19,   39,   19,    2,   41,    2,    9,    7,
+        9,    9,   19,   44,    8,   12,   43,   12,  114,   12,
+       12,   10,   11,   10,   10,    9,    5,    5,    6,   71,
+        6,    9,    6,    6,    6,    6,  146,  403,   10,   15,
+        6,  403,   12,   15,   10,   16,   43,   21,   16,   21,
+       20,   20,   16,   20,   20,    6,   20,   21,   56,   71,
+       56,   20,   69,   15,   69,   15,   15,   22,   22,  146,
+       22,   22,   16,   22,   16,   16,   72,   23,   22,   23,
+       38,   87,   55,    6,    6,   13,   15,   23,   70,   24,
+       92,   24,   13,   13,   24,   16,   72,   85,   13,   24,
+
+       31,   31,   31,   31,   89,   55,   38,   13,   87,   88,
+       38,   13,   70,   13,   13,   13,   13,   49,   82,   13,
+       82,   49,   13,  160,   92,   13,   13,   85,   89,   13,
+       13,   13,   13,   55,   55,   88,   13,   13,   17,  108,
+       40,   93,   17,   17,   40,   33,   17,   33,   33,   33,
+       33,   34,  160,   34,   34,   34,   34,   67,   60,   49,
+       79,   67,   60,  108,   79,   17,   17,   17,   17,   17,
+      157,   93,   17,  563,   93,   17,   17,   17,   17,   17,
+      157,  560,   17,   17,   17,   17,   40,   33,   40,   42,
+       81,   42,   81,   81,   81,   81,   42,   60,   86,   67,
+
+       60,   90,   79,   91,   42,   83,   83,   83,   83,   84,
+       84,   84,   84,   94,   42,   95,   96,  103,   86,  103,
+      104,  106,   86,  107,   84,   86,  105,   90,  120,  109,
+       91,  115,  120,   94,   94,  113,  208,   96,  106,  110,
+      111,   95,  109,   96,  104,   94,  105,  104,  106,  107,
+      109,  112,  110,  105,  111,  113,  113,  119,  115,  130,
+      110,  119,  121,  121,  112,  125,  121,  113,  119,  125,
+      120,  130,  208,  126,  559,  121,  125,  126,  127,  127,
+      131,  131,  127,  164,  131,  134,  134,  134,  134,  127,
+      145,  127,  137,  137,  137,  137,  138,  147,  138,  138,
+
+      138,  138,  139,  145,  139,  139,  139,  139,  141,  156,
+      141,  141,  141,  141,  149,  126,  148,  152,  149,  159,
+      176,  152,  131,  154,  156,  154,  177,  147,  170,  148,
+      156,  154,  170,  176,  164,  164,  159,  178,  187,  154,
+      183,  183,  183,  183,  191,  154,  184,  184,  184,  184,
+      188,  189,  190,  177,  192,  193,  194,  187,  178,  152,
+      149,  184,  149,  188,  189,  195,  196,  170,  197,  199,
+      170,  198,  201,  200,  203,  207,  202,  191,  190,  204,
+      209,  210,  193,  196,  212,  198,  211,  192,  194,  197,
+      213,  195,  200,  214,  215,  197,  199,  202,  209,  211,
+
+      204,  216,  201,  217,  203,  218,  219,  202,  207,  215,
+      552,  221,  551,  211,  210,  221,  213,  549,  214,  248,
+      212,  247,  221,  216,  218,  222,  222,  223,  223,  222,
+      250,  223,  265,  217,  219,  225,  225,  227,  249,  225,
+      266,  227,  228,  228,  248,  265,  228,  279,  227,  250,
+      229,  229,  247,  228,  229,  228,  238,  238,  238,  238,
+      241,  241,  241,  241,  259,  249,  280,  281,  283,  283,
+      288,  289,  283,  266,  290,  259,  291,  293,  279,  287,
+      287,  287,  287,  292,  297,  296,  294,  298,  299,  300,
+      303,  280,  301,  302,  287,  307,  305,  292,  281,  294,
+
+      304,  289,  293,  288,  296,  290,  306,  291,  311,  310,
+      313,  307,  314,  300,  297,  312,  299,  305,  318,  302,
+      299,  298,  301,  303,  315,  311,  316,  304,  312,  317,
+      320,  314,  319,  321,  322,  313,  323,  323,  306,  310,
+      323,  318,  331,  320,  333,  315,  317,  316,  334,  319,
+      349,  322,  325,  325,  323,  340,  325,  348,  355,  321,
+      360,  340,  358,  358,  362,  363,  358,  364,  366,  368,
+      369,  349,  373,  331,  333,  370,  371,  372,  378,  334,
+      376,  348,  380,  369,  377,  360,  382,  375,  374,  355,
+      384,  364,  370,  371,  381,  362,  380,  363,  372,  368,
+
+      366,  374,  375,  377,  373,  374,  376,  385,  383,  386,
+      381,  378,  389,  390,  391,  409,  410,  414,  413,  382,
+      383,  384,  393,  393,  395,  395,  393,  389,  395,  396,
+      396,  391,  385,  396,  386,  413,  416,  418,  390,  409,
+      419,  420,  395,  424,  421,  422,  410,  425,  426,  428,
+      431,  429,  414,  416,  432,  433,  434,  435,  418,  421,
+      422,  436,  431,  425,  429,  437,  446,  424,  434,  438,
+      450,  420,  419,  453,  447,  428,  455,  456,  432,  463,
+      426,  438,  451,  462,  441,  454,  464,  433,  441,  453,
+      435,  447,  465,  446,  436,  461,  450,  437,  441,  441,
+
+      441,  441,  454,  451,  466,  467,  468,  462,  455,  456,
+      469,  463,  461,  470,  475,  478,  481,  477,  464,  482,
+      475,  485,  469,  473,  483,  486,  489,  473,  487,  465,
+      467,  468,  477,  491,  492,  482,  466,  473,  473,  473,
+      473,  483,  486,  490,  487,  470,  478,  495,  481,  496,
+      503,  511,  504,  506,  503,  490,  504,  506,  485,  508,
+      513,  491,  514,  489,  505,  505,  505,  511,  503,  516,
+      504,  492,  515,  517,  518,  532,  508,  519,  520,  495,
+      533,  519,  520,  535,  529,  547,  496,  548,  513,  515,
+      525,  537,  532,  533,  525,  536,  514,  516,  529,  526,
+
+      535,  541,  518,  526,  525,  525,  525,  525,  537,  546,
+      517,  548,  540,  526,  526,  526,  526,  527,  527,  527,
+      527,  528,  550,  536,  546,  528,  528,  528,  528,  542,
+      542,  558,  543,  542,  543,  543,  543,  543,  538,  550,
+      534,  562,  556,  542,  542,  542,  542,  544,  531,  530,
+      524,  544,  544,  544,  544,  553,  553,  556,  562,  553,
+      555,  555,  555,  555,  558,  561,  523,  561,  561,  561,
+      561,  564,  564,  564,  564,  566,  566,  567,  567,  566,
+      522,  567,  521,  512,  510,  509,  507,  502,  501,  566,
+      566,  566,  566,  570,  570,  570,  570,  570,  570,  570,
+
+      570,  570,  570,  571,  571,  571,  571,  571,  571,  571,
+      571,  571,  571,  572,  572,  572,  572,  572,  572,  572,
+      572,  572,  572,  573,  573,  573,  573,  573,  573,  573,
+      573,  573,  573,  574,  574,  574,  574,  574,  574,  574,
+      574,  574,  574,  575,  575,  575,  575,  575,  575,  575,
+      575,  575,  575,  576,  576,  576,  576,  576,  576,  576,
+      576,  576,  576,  577,  577,  500,  577,  577,  577,  577,
+      577,  577,  577,  578,  578,  579,  579,  579,  579,  580,
+      580,  499,  580,  580,  580,  580,  580,  580,  580,  581,
+      581,  498,  581,  581,  581,  581,  581,  581,  581,  582,
+
+      582,  497,  582,  582,  582,  582,  582,  582,  582,  583,
+      494,  583,  583,  583,  584,  584,  493,  584,  584,  584,
+      584,  584,  584,  584,  585,  585,  585,  585,  585,  585,
+      585,  585,  585,  585,  586,  488,  586,  587,  587,  587,
+      587,  588,  588,  588,  589,  589,  484,  589,  589,  589,
+      589,  589,  589,  589,  590,  590,  590,  590,  590,  590,
+      590,  590,  590,  590,  591,  591,  591,  591,  591,  591,
+      591,  591,  591,  591,  592,  592,  592,  592,  592,  592,
+      592,  592,  592,  592,  593,  480,  593,  593,  593,  594,
+      594,  594,  594,  594,  594,  594,  594,  594,  594,  595,
+
+      595,  479,  476,  474,  472,  595,  595,  596,  596,  597,
+      597,  597,  597,  598,  598,  598,  598,  599,  599,  471,
+      460,  599,  599,  599,  599,  600,  600,  600,  600,  601,
+      601,  459,  601,  601,  601,  601,  601,  601,  601,  602,
+      602,  458,  457,  452,  602,  602,  602,  602,  602,  603,
+      603,  449,  603,  448,  603,  603,  603,  603,  603,  445,
+      444,  443,  442,  440,  439,  430,  427,  423,  417,  415,
+      412,  408,  407,  406,  405,  404,  402,  401,  400,  399,
+      398,  397,  392,  388,  387,  379,  367,  365,  361,  357,
+      356,  354,  350,  347,  344,  342,  339,  337,  336,  335,
+
+      332,  330,  329,  328,  327,  326,  308,  295,  286,  284,
+      277,  276,  274,  271,  270,  269,  267,  264,  263,  261,
+      260,  257,  256,  255,  254,  253,  252,  251,  246,  245,
+      243,  239,  237,  236,  231,  206,  186,  185,  182,  181,
+      180,  175,  171,  168,  166,  165,  163,  155,  153,  151,
+      150,  144,  143,  142,  136,  133,  132,  129,  128,  124,
+      118,   61,   50,   48,   36,   30,   25,   18,   14,  569,
+      569,  569,  569,  569,  569,  569,  569,  569,  569,  569,
+      569,  569,  569,  569,  569,  569,  569,  569,  569,  569,
+      569,  569,  569,  569,  569,  569,  569,  569,  569,  569,
+
+      569,  569,  569,  569,  569,  569,  569,  569,  569,  569,
+      569,  569,  569,  569,  569,  569,  569,  569,  569,  569,
+      569,  569,  569,  569,  569,  569,  569,  569,  569
     } ;
 
 extern int yy_flex_debug;
@@ -1057,7 +1060,7 @@ char *yytext;
  */
 #line 24 "lexer.l"
 
-#include "config.h"
+#include "config.h" 
 #include <stdlib.h>
 #include <string.h>
 #include <ctype.h>
@@ -1147,7 +1150,7 @@ int yywrap(void) { return 1; }
 
 
 
-#line 1151 "lexer.c"
+#line 1154 "lexer.c"
 
 #define INITIAL 0
 #define COMMENT 1
@@ -1197,7 +1200,7 @@ FILE *yyget_out (void );
 
 void yyset_out  (FILE * out_str  );
 
-int yyget_leng (void );
+yy_size_t yyget_leng (void );
 
 char *yyget_text (void );
 
@@ -1258,7 +1261,7 @@ static int input (void );
        if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
                { \
                int c = '*'; \
-               unsigned n; \
+               size_t n; \
                for ( n = 0; n < max_size && \
                             (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
                        buf[n] = (char) c; \
@@ -1354,7 +1357,7 @@ yy_current_state = 0;
 
 
 
-#line 1358 "lexer.c"
+#line 1361 "lexer.c"
 
        if ( !(yy_init) )
                {
@@ -1413,14 +1416,14 @@ yy_match:
                        while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
                                {
                                yy_current_state = (int) yy_def[yy_current_state];
-                               if ( yy_current_state >= 566 )
+                               if ( yy_current_state >= 570 )
                                        yy_c = yy_meta[(unsigned int) yy_c];
                                }
                        yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
                        *(yy_state_ptr)++ = yy_current_state;
                        ++yy_cp;
                        }
-               while ( yy_base[yy_current_state] != 1363 );
+               while ( yy_base[yy_current_state] != 1370 );
 
 yy_find_action:
                yy_current_state = *--(yy_state_ptr);
@@ -2130,185 +2133,199 @@ YY_RULE_SETUP
 case 69:
 YY_RULE_SETUP
 #line 517 "lexer.l"
-{return VOID;}
+{
+                       BEGIN(CLASS_STRING);
+                       before_string = CLASS_CODE_I;
+                       add_to_cbuf(yytext);
+               }
        YY_BREAK
 case 70:
 YY_RULE_SETUP
-#line 518 "lexer.l"
-{return STRUCT;}
+#line 523 "lexer.l"
+{return VOID;}
        YY_BREAK
 case 71:
 YY_RULE_SETUP
-#line 519 "lexer.l"
-{return UNION;}
+#line 524 "lexer.l"
+{return STRUCT;}
        YY_BREAK
 case 72:
 YY_RULE_SETUP
-#line 520 "lexer.l"
-{return ENUM;}
+#line 525 "lexer.l"
+{return UNION;}
        YY_BREAK
 case 73:
 YY_RULE_SETUP
-#line 521 "lexer.l"
-{return SIGNED;}
+#line 526 "lexer.l"
+{return ENUM;}
        YY_BREAK
 case 74:
 YY_RULE_SETUP
-#line 522 "lexer.l"
-{return UNSIGNED;}
+#line 527 "lexer.l"
+{return SIGNED;}
        YY_BREAK
 case 75:
 YY_RULE_SETUP
-#line 523 "lexer.l"
-{return LONG;}
+#line 528 "lexer.l"
+{return UNSIGNED;}
        YY_BREAK
 case 76:
 YY_RULE_SETUP
-#line 524 "lexer.l"
-{return SHORT;}
+#line 529 "lexer.l"
+{return LONG;}
        YY_BREAK
 case 77:
 YY_RULE_SETUP
-#line 525 "lexer.l"
-{return INT;}
+#line 530 "lexer.l"
+{return SHORT;}
        YY_BREAK
 case 78:
 YY_RULE_SETUP
-#line 526 "lexer.l"
-{return FLOAT;}
+#line 531 "lexer.l"
+{return INT;}
        YY_BREAK
 case 79:
 YY_RULE_SETUP
-#line 527 "lexer.l"
-{return DOUBLE;}
+#line 532 "lexer.l"
+{return FLOAT;}
        YY_BREAK
 case 80:
 YY_RULE_SETUP
-#line 528 "lexer.l"
-{return CHAR;}
+#line 533 "lexer.l"
+{return DOUBLE;}
        YY_BREAK
 case 81:
 YY_RULE_SETUP
-#line 529 "lexer.l"
-{return CONST;}
+#line 534 "lexer.l"
+{return CHAR;}
        YY_BREAK
 case 82:
 YY_RULE_SETUP
-#line 531 "lexer.l"
-{return THREEDOTS;}
+#line 535 "lexer.l"
+{return CONST;}
        YY_BREAK
 case 83:
 YY_RULE_SETUP
-#line 533 "lexer.l"
-{yylval.line = line_no; return PUBLIC;}
+#line 537 "lexer.l"
+{return THREEDOTS;}
        YY_BREAK
 case 84:
 YY_RULE_SETUP
-#line 534 "lexer.l"
-{yylval.line = line_no; return PRIVATE;}
+#line 539 "lexer.l"
+{yylval.line = line_no; return PUBLIC;}
        YY_BREAK
 case 85:
 YY_RULE_SETUP
-#line 535 "lexer.l"
-{yylval.line = line_no; return PROTECTED;}
+#line 540 "lexer.l"
+{yylval.line = line_no; return PRIVATE;}
        YY_BREAK
 case 86:
 YY_RULE_SETUP
-#line 536 "lexer.l"
-{yylval.line = line_no; return CLASSWIDE;}
+#line 541 "lexer.l"
+{yylval.line = line_no; return PROTECTED;}
        YY_BREAK
 case 87:
 YY_RULE_SETUP
-#line 537 "lexer.l"
-{yylval.line = line_no; return ARGUMENT;}
+#line 542 "lexer.l"
+{yylval.line = line_no; return CLASSWIDE;}
        YY_BREAK
 case 88:
 YY_RULE_SETUP
-#line 538 "lexer.l"
-{yylval.line = line_no; return VIRTUAL;}
+#line 543 "lexer.l"
+{yylval.line = line_no; return ARGUMENT;}
        YY_BREAK
 case 89:
 YY_RULE_SETUP
-#line 539 "lexer.l"
-{yylval.line = line_no; return SIGNAL;}
+#line 544 "lexer.l"
+{yylval.line = line_no; return VIRTUAL;}
        YY_BREAK
 case 90:
 YY_RULE_SETUP
-#line 540 "lexer.l"
-{yylval.line = line_no; return OVERRIDE;}
+#line 545 "lexer.l"
+{yylval.line = line_no; return SIGNAL;}
        YY_BREAK
 case 91:
 YY_RULE_SETUP
-#line 541 "lexer.l"
+#line 546 "lexer.l"
+{yylval.line = line_no; return OVERRIDE;}
+       YY_BREAK
+case 92:
+YY_RULE_SETUP
+#line 547 "lexer.l"
 {
                                yylval.line = line_no;
                                BEGIN(PROPERTY_CODE);
                                return PROPERTY;
                        }
        YY_BREAK
-case 92:
+case 93:
 YY_RULE_SETUP
-#line 546 "lexer.l"
+#line 552 "lexer.l"
 { yylval.line = line_no; return NICK; }
        YY_BREAK
-case 93:
+case 94:
 YY_RULE_SETUP
-#line 547 "lexer.l"
+#line 553 "lexer.l"
+{ yylval.line = line_no; return NAME; }
+       YY_BREAK
+case 95:
+YY_RULE_SETUP
+#line 554 "lexer.l"
 { yylval.line = line_no; return BLURB; }
        YY_BREAK
-case 94:
+case 96:
 YY_RULE_SETUP
-#line 548 "lexer.l"
+#line 555 "lexer.l"
 { yylval.line = line_no; return MAXIMUM; }
        YY_BREAK
-case 95:
+case 97:
 YY_RULE_SETUP
-#line 549 "lexer.l"
+#line 556 "lexer.l"
 { yylval.line = line_no; return MINIMUM; }
        YY_BREAK
-case 96:
+case 98:
 YY_RULE_SETUP
-#line 550 "lexer.l"
+#line 557 "lexer.l"
 { yylval.line = line_no; return DEFAULT_VALUE; }
        YY_BREAK
-case 97:
+case 99:
 YY_RULE_SETUP
-#line 551 "lexer.l"
+#line 558 "lexer.l"
 { yylval.line = line_no; return FLAGS; }
        YY_BREAK
-case 98:
+case 100:
 YY_RULE_SETUP
-#line 552 "lexer.l"
+#line 559 "lexer.l"
 { yylval.line = line_no; return TYPE; }
        YY_BREAK
-case 99:
+case 101:
 YY_RULE_SETUP
-#line 553 "lexer.l"
+#line 560 "lexer.l"
 { yylval.line = line_no; return FLAGS_TYPE; }
        YY_BREAK
-case 100:
+case 102:
 YY_RULE_SETUP
-#line 554 "lexer.l"
+#line 561 "lexer.l"
 { yylval.line = line_no; return ENUM_TYPE; }
        YY_BREAK
-case 101:
+case 103:
 YY_RULE_SETUP
-#line 555 "lexer.l"
+#line 562 "lexer.l"
 { yylval.line = line_no; return PARAM_TYPE; }
        YY_BREAK
-case 102:
+case 104:
 YY_RULE_SETUP
-#line 556 "lexer.l"
+#line 563 "lexer.l"
 { yylval.line = line_no; return BOXED_TYPE; }
        YY_BREAK
-case 103:
+case 105:
 YY_RULE_SETUP
-#line 557 "lexer.l"
+#line 564 "lexer.l"
 { yylval.line = line_no; return OBJECT_TYPE; }
        YY_BREAK
-case 104:
+case 106:
 YY_RULE_SETUP
-#line 558 "lexer.l"
+#line 565 "lexer.l"
 {
                yylval.line = line_no;
                property_paren_depth = 1;
@@ -2316,18 +2333,18 @@ YY_RULE_SETUP
                return '(';
                        }
        YY_BREAK
-case 105:
+case 107:
 YY_RULE_SETUP
-#line 564 "lexer.l"
+#line 571 "lexer.l"
 {
                yylval.line = line_no;
                property_paren_depth++;
                return '(';
                        }
        YY_BREAK
-case 106:
+case 108:
 YY_RULE_SETUP
-#line 569 "lexer.l"
+#line 576 "lexer.l"
 {
                yylval.line = line_no;
                property_paren_depth--;
@@ -2337,17 +2354,17 @@ YY_RULE_SETUP
                return ')';
                        }
        YY_BREAK
-case 107:
+case 109:
 YY_RULE_SETUP
-#line 578 "lexer.l"
+#line 585 "lexer.l"
 {
                        yylval.id = g_strdup(yytext);
                        return NUMBER;
                }
        YY_BREAK
-case 108:
+case 110:
 YY_RULE_SETUP
-#line 582 "lexer.l"
+#line 589 "lexer.l"
 {
                        /* This is cpp kind of token thingie */
                        if (for_cpp) {
@@ -2358,68 +2375,68 @@ YY_RULE_SETUP
                        }
                }
        YY_BREAK
-case 109:
+case 111:
 YY_RULE_SETUP
-#line 591 "lexer.l"
+#line 598 "lexer.l"
 {
                        /* this one is for a classname with a namespace */
                        yylval.id = g_strdup(yytext);
                        return TYPETOKEN;
                }
        YY_BREAK
-case 110:
+case 112:
 YY_RULE_SETUP
-#line 596 "lexer.l"
+#line 603 "lexer.l"
 {
                        /* this is for a classname with an empty namespace */
                        yylval.id = g_strdup(yytext);
                        return TYPETOKEN;
                }
        YY_BREAK
-case 111:
+case 113:
 YY_RULE_SETUP
-#line 601 "lexer.l"
+#line 608 "lexer.l"
 {
                        yylval.id = g_strdup(yytext);
                        return TOKEN;
                }
        YY_BREAK
-case 112:
+case 114:
 YY_RULE_SETUP
-#line 605 "lexer.l"
+#line 612 "lexer.l"
 {
                        yylval.id = g_strdup(yytext);
                        return SINGLE_CHAR;
                }
        YY_BREAK
-case 113:
+case 115:
 YY_RULE_SETUP
-#line 610 "lexer.l"
+#line 617 "lexer.l"
 {
                        yylval.id = g_strdup(yytext);
                        return ARRAY_DIM;
                }
        YY_BREAK
-case 114:
+case 116:
 YY_RULE_SETUP
-#line 614 "lexer.l"
+#line 621 "lexer.l"
 {
                        /* cheat for bitfield */
                        yylval.id = g_strdup(yytext);
                        return ARRAY_DIM;
                }
        YY_BREAK
-case 115:
+case 117:
 YY_RULE_SETUP
-#line 619 "lexer.l"
+#line 626 "lexer.l"
 {
                        BEGIN(CLASS_CODE_I);
                        return '{';
                }
        YY_BREAK
-case 116:
+case 118:
 YY_RULE_SETUP
-#line 623 "lexer.l"
+#line 630 "lexer.l"
 {
                        BEGIN(C_CODE);
                        parenth_depth=1;
@@ -2430,39 +2447,39 @@ YY_RULE_SETUP
                        return '{';
                }
        YY_BREAK
-case 117:
+case 119:
 YY_RULE_SETUP
-#line 632 "lexer.l"
+#line 639 "lexer.l"
 {
                                BEGIN(INITIAL);
                                return '}';
                        }
        YY_BREAK
-case 118:
+case 120:
 YY_RULE_SETUP
-#line 637 "lexer.l"
+#line 644 "lexer.l"
 ;  /*ignore*/
        YY_BREAK
-case 119:
-/* rule 119 can match eol */
+case 121:
+/* rule 121 can match eol */
 YY_RULE_SETUP
-#line 639 "lexer.l"
+#line 646 "lexer.l"
 ;  /*ignore*/
        YY_BREAK
-case 120:
+case 122:
 YY_RULE_SETUP
-#line 642 "lexer.l"
+#line 649 "lexer.l"
 {
                        yylval.line = line_no;
                        return yytext[0];
                }
        YY_BREAK
-case 121:
+case 123:
 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
 (yy_c_buf_p) = yy_cp -= 1;
 YY_DO_BEFORE_ACTION; /* set up yytext again */
 YY_RULE_SETUP
-#line 647 "lexer.l"
+#line 654 "lexer.l"
 {
                        char *p;
                        int t;
@@ -2472,12 +2489,12 @@ YY_RULE_SETUP
                        prealloc=t;
                }
        YY_BREAK
-case 122:
+case 124:
 YY_RULE_SETUP
-#line 656 "lexer.l"
+#line 663 "lexer.l"
 ECHO;
        YY_BREAK
-#line 2481 "lexer.c"
+#line 2498 "lexer.c"
                        case YY_STATE_EOF(INITIAL):
                        case YY_STATE_EOF(COMMENT):
                        case YY_STATE_EOF(C_CODE):
@@ -2674,7 +2691,7 @@ static int yy_get_next_buffer (void)
 
        else
                {
-                       int num_to_read =
+                       yy_size_t num_to_read =
                        YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
 
                while ( num_to_read <= 0 )
@@ -2690,7 +2707,7 @@ static int yy_get_next_buffer (void)
 
                /* Read in more data. */
                YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
-                       (yy_n_chars), (size_t) num_to_read );
+                       (yy_n_chars), num_to_read );
 
                YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
                }
@@ -2750,7 +2767,7 @@ static int yy_get_next_buffer (void)
                while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
                        {
                        yy_current_state = (int) yy_def[yy_current_state];
-                       if ( yy_current_state >= 566 )
+                       if ( yy_current_state >= 570 )
                                yy_c = yy_meta[(unsigned int) yy_c];
                        }
                yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
@@ -2773,15 +2790,15 @@ static int yy_get_next_buffer (void)
        while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
                {
                yy_current_state = (int) yy_def[yy_current_state];
-               if ( yy_current_state >= 566 )
+               if ( yy_current_state >= 570 )
                        yy_c = yy_meta[(unsigned int) yy_c];
                }
        yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
-       yy_is_jam = (yy_current_state == 565);
+       yy_is_jam = (yy_current_state == 569);
        if ( ! yy_is_jam )
                *(yy_state_ptr)++ = yy_current_state;
 
-       return yy_is_jam ? 0 : yy_current_state;
+               return yy_is_jam ? 0 : yy_current_state;
 }
 
     static void yyunput (int c, register char * yy_bp )
@@ -2796,7 +2813,7 @@ static int yy_get_next_buffer (void)
        if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
                { /* need to shift things up to make room */
                /* +2 for EOB chars. */
-               register int number_to_move = (yy_n_chars) + 2;
+               register yy_size_t number_to_move = (yy_n_chars) + 2;
                register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[
                                        YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];
                register char *source =
@@ -2845,7 +2862,7 @@ static int yy_get_next_buffer (void)
 
                else
                        { /* need more input */
-                       int offset = (yy_c_buf_p) - (yytext_ptr);
+                       yy_size_t offset = (yy_c_buf_p) - (yytext_ptr);
                        ++(yy_c_buf_p);
 
                        switch ( yy_get_next_buffer(  ) )
@@ -3007,10 +3024,6 @@ static void yy_load_buffer_state  (void)
        yyfree((void *) b  );
 }
 
-#ifndef __cplusplus
-extern int isatty (int );
-#endif /* __cplusplus */
-    
 /* Initializes or reinitializes a buffer.
  * This function is sometimes called more than once on the same buffer,
  * such as during a yyrestart() or at EOF.
@@ -3123,7 +3136,7 @@ void yypop_buffer_state (void)
  */
 static void yyensure_buffer_stack (void)
 {
-       int num_to_alloc;
+       yy_size_t num_to_alloc;
     
        if (!(yy_buffer_stack)) {
 
@@ -3215,17 +3228,17 @@ YY_BUFFER_STATE yy_scan_string (yyconst char * yystr )
 
 /** Setup the input buffer state to scan the given bytes. The next call to yylex() will
  * scan from a @e copy of @a bytes.
- * @param bytes the byte buffer to scan
- * @param len the number of bytes in the buffer pointed to by @a bytes.
+ * @param yybytes the byte buffer to scan
+ * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
  * 
  * @return the newly allocated buffer state object.
  */
-YY_BUFFER_STATE yy_scan_bytes  (yyconst char * yybytes, int  _yybytes_len )
+YY_BUFFER_STATE yy_scan_bytes  (yyconst char * yybytes, yy_size_t  _yybytes_len )
 {
        YY_BUFFER_STATE b;
        char *buf;
        yy_size_t n;
-       int i;
+       yy_size_t i;
     
        /* Get memory for full buffer, including space for trailing EOB's. */
        n = _yybytes_len + 2;
@@ -3307,7 +3320,7 @@ FILE *yyget_out  (void)
 /** Get the length of the current token.
  * 
  */
-int yyget_leng  (void)
+yy_size_t yyget_leng  (void)
 {
         return yyleng;
 }
@@ -3463,7 +3476,7 @@ void yyfree (void * ptr )
 
 #define YYTABLES_NAME "yytables"
 
-#line 656 "lexer.l"
+#line 663 "lexer.l"
 
 
 
index 0dc3cda655189c32184acc1609cd52989d2a7c15..d59a3d96b4b2707de33df8041dbdbfd674303a7e 100644 (file)
@@ -22,7 +22,7 @@
  */
 %{
 
-#include "config.h"
+#include "config.h" 
 #include <stdlib.h>
 #include <string.h>
 #include <ctype.h>
@@ -514,6 +514,12 @@ flags              { return FLAGS; }
 <CLASS_STRING>.        { add_to_cbuf(yytext); }
 <CLASS_STRING>\n       { add_to_cbuf(yytext); }
 
+<CLASS_CODE_I>\"       {
+                       BEGIN(CLASS_STRING);
+                       before_string = CLASS_CODE_I;
+                       add_to_cbuf(yytext);
+               }
+
 <CLASS_CODE_I,PROPERTY_CODE_I>void     {return VOID;}
 <CLASS_CODE_I,PROPERTY_CODE_I>struct   {return STRUCT;}
 <CLASS_CODE_I,PROPERTY_CODE_I>union    {return UNION;}
@@ -544,6 +550,7 @@ flags               { return FLAGS; }
                                return PROPERTY;
                        }
 <PROPERTY_CODE_I>nick  { yylval.line = line_no; return NICK; }
+<PROPERTY_CODE_I>name  { yylval.line = line_no; return NAME; }
 <PROPERTY_CODE_I>blurb { yylval.line = line_no; return BLURB; }
 <PROPERTY_CODE_I>maximum       { yylval.line = line_no; return MAXIMUM; }
 <PROPERTY_CODE_I>minimum       { yylval.line = line_no; return MINIMUM; }
index b4d1b270f4332b126da8e0c428cf6aa081742217..9a9a1ac1c5d7957ad7403691511b0b7c49a640a8 100644 (file)
@@ -120,8 +120,12 @@ gboolean no_write = FALSE;
 gboolean no_lines = FALSE;
 gboolean no_self_alias = FALSE;
 gboolean always_private_struct = FALSE;
+gboolean gtk3_ok = FALSE;
+
 gint prealloc = 0;
 
+
+
 gboolean use_m4 = FALSE; /* preprocess sources with m4 */
 gboolean use_m4_clean = FALSE; /* preprocess sources with m4, no m4 flags */
 char *m4_commandline = NULL;
@@ -929,10 +933,10 @@ add_signal_prots(Method *m)
                        /* hack because glib is braindamaged */
                        set_func = g_strdup ("g_value_set_uint");
                else
-                       set_func = g_strdup_printf ("g_value_set_%s%s",
-                                                   (char *)m->gtktypes->data,
+                       set_func = g_strdup_printf ("g_value_%s_%s",
                                                    take_ownership ?
-                                                   "_take_ownership" : ""); 
+                                                   "take" : "set",
+                                                   (char *)m->gtktypes->data);
                gob_strdown (set_func);
 
                out_printf (out, "\n\t%s (return_value, v_return);\n",
@@ -1047,17 +1051,26 @@ add_interface_inits (Class *c)
                char *name = replace_sep (interface, '_');
                char *type = remove_sep (interface);
 
-               /* EEEK! evil, we should have some sort of option
-                * to force this for arbitrary interfaces, since
-                * some are Class and some are Iface.  Glib is shite
-                * in consistency. */
-               if (strcmp (type, "GtkEditable") == 0 ||
-                   strcmp (type, "GTypePlugin") == 0)
-                       end = "Class";
+               if(!gtk3_ok)
+               {
+                       /* EEEK! evil, we should have some sort of option
+                        * to force this for arbitrary interfaces, since
+                        * some are Class and some are Iface.  Glib is shite
+                        * in consistency. */
+               
+                       if (strcmp (type, "GtkEditable") == 0 ||
+                           strcmp (type, "GTypePlugin") == 0)
+                               end = "Class";
+                       else
+                               // We'll assume Iface is the standard ending 
+                               end = "Iface";
+                       }
                else
-                       /* We'll assume Iface is the standard ending */
-                       end = "Iface";
-
+               {
+                       /*GTK3 doesn't need Iface end*/
+                       end="Interface";
+               }
+               
                out_printf (out, "\nstatic void\n"
                            "___%s_init (%s%s *iface)\n"
                            "{\n",
@@ -1350,14 +1363,14 @@ add_signals(Class *c)
                gob_strup (sig);
                flags = make_run_signal_flags (m, last);
                out_printf (out, "\tobject_signals[%s_SIGNAL] =\n"
-                           "\t\tg_signal_new (\"%s\",\n"
+                           "\t\tg_signal_new (%s,\n"
                            "\t\t\tG_TYPE_FROM_CLASS (g_object_class),\n"
                            "\t\t\t(GSignalFlags)(%s),\n"
                            "\t\t\tG_STRUCT_OFFSET (%sClass, %s),\n"
                            "\t\t\tNULL, NULL,\n"
                            "\t\t\t%s,\n"
                            "\t\t\tG_TYPE_%s, %d",
-                           sig, m->id,
+                           sig, m->signal_name /*m->id* if not given signal_name*/,
                            flags,
                            typebase, m->id, mar,
                            (char *)m->gtktypes->data,
@@ -1680,7 +1693,7 @@ make_property (Property *p)
                gob_strup (s);
                out_printf (out, "\tg_object_class_override_property (g_object_class,\n"
                            "\t\tPROP_%s,\n"
-                           "\t\t\"%s\");\n", s, p->name);
+                           "\t\t\"%s\");\n", s, value_for_print (p->canonical_name, p->name) );
                g_free (s);
        } else {
                GString *flags;
@@ -1732,7 +1745,7 @@ make_property (Property *p)
                                    "\t\t %s /* maximum */,\n"
                                    "\t\t %s /* default_value */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    value_for_print (p->minimum, "-128"),
@@ -1748,7 +1761,7 @@ make_property (Property *p)
                                    "\t\t %s /* maximum */,\n"
                                    "\t\t %s /* default_value */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    value_for_print (p->minimum, "0"),
@@ -1762,7 +1775,7 @@ make_property (Property *p)
                                    "\t\t %s /* blurb */,\n"
                                    "\t\t %s /* default_value */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    value_for_print (p->default_value, "FALSE"),
@@ -1776,7 +1789,7 @@ make_property (Property *p)
                                    "\t\t %s /* maximum */,\n"
                                    "\t\t %s /* default_value */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    value_for_print (p->minimum, "G_MININT"),
@@ -1792,7 +1805,7 @@ make_property (Property *p)
                                    "\t\t %s /* maximum */,\n"
                                    "\t\t %s /* default_value */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    value_for_print (p->minimum, "0"),
@@ -1808,7 +1821,7 @@ make_property (Property *p)
                                    "\t\t %s /* maximum */,\n"
                                    "\t\t %s /* default_value */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    value_for_print (p->minimum, "G_MINLONG"),
@@ -1824,7 +1837,7 @@ make_property (Property *p)
                                    "\t\t %s /* maximum */,\n"
                                    "\t\t %s /* default_value */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    value_for_print (p->minimum, "0"),
@@ -1840,7 +1853,7 @@ make_property (Property *p)
                                    "\t\t %s /* maximum */,\n"
                                    "\t\t %s /* default_value */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    value_for_print (p->minimum, "G_MININT64"),
@@ -1856,7 +1869,7 @@ make_property (Property *p)
                                    "\t\t %s /* maximum */,\n"
                                    "\t\t %s /* default_value */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    value_for_print (p->minimum, "0"),
@@ -1870,7 +1883,7 @@ make_property (Property *p)
                                    "\t\t %s /* blurb */,\n"
                                    "\t\t %s /* default_value */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    value_for_print (p->default_value, "0"),
@@ -1885,7 +1898,7 @@ make_property (Property *p)
                                    "\t\t %s /* enum_type */,\n"
                                    "\t\t %s /* default_value */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    type,
@@ -1902,7 +1915,7 @@ make_property (Property *p)
                                    "\t\t %s /* flags_type */,\n"
                                    "\t\t %s /* default_value */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    type,
@@ -1918,7 +1931,7 @@ make_property (Property *p)
                                    "\t\t %s /* maximum */,\n"
                                    "\t\t %s /* default_value */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    value_for_print (p->minimum, "-G_MAXFLOAT"),
@@ -1934,7 +1947,7 @@ make_property (Property *p)
                                    "\t\t %s /* maximum */,\n"
                                    "\t\t %s /* default_value */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    value_for_print (p->minimum, "-G_MAXDOUBLE"),
@@ -1948,7 +1961,7 @@ make_property (Property *p)
                                    "\t\t %s /* blurb */,\n"
                                    "\t\t %s /* default_value */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    value_for_print (p->default_value, "NULL"),
@@ -1962,7 +1975,7 @@ make_property (Property *p)
                                    "\t\t %s /* blurb */,\n"
                                    "\t\t %s /* param_type */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    type,
@@ -1977,7 +1990,7 @@ make_property (Property *p)
                                    "\t\t %s /* blurb */,\n"
                                    "\t\t %s /* boxed_type */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    type,
@@ -1989,7 +2002,7 @@ make_property (Property *p)
                                    "\t\t %s /* nick */,\n"
                                    "\t\t %s /* blurb */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    flags->str);
@@ -2000,7 +2013,7 @@ make_property (Property *p)
                                    "\t\t %s /* nick */,\n"
                                    "\t\t %s /* blurb */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    flags->str);
@@ -2013,7 +2026,7 @@ make_property (Property *p)
                                    "\t\t %s /* blurb */,\n"
                                    "\t\t %s /* object_type */,\n"
                                    "\t\t %s);\n",
-                                   p->name,
+                                   value_for_print (p->canonical_name, p->name),
                                    value_for_print (p->nick, "NULL"),
                                    value_for_print (p->blurb, "NULL"),
                                    type,
@@ -4282,7 +4295,9 @@ print_help(void)
                "\t-o,--output-dir         The directory where output "
                                          "should be placed\n"
                "\t--file-sep[=c]          replace default \'-\' file "
-                                         "name separator\n\n");
+                                         "name separator\n\n"
+               "\t--gtk3                  Use gtk+3\n"
+               );
        fprintf(stderr, "End world hunger, donate to the World Food Programme, http://www.wfp.org\n");
 }
 
@@ -4416,6 +4431,8 @@ parse_options(int argc, char *argv[])
                        } else {
                                file_sep = 0;
                        }
+               } else if(strcmp(argv[i], "--gtk3")==0) {
+                       gtk3_ok = TRUE;
                } else if(strcmp(argv[i], "--")==0) {
                        /*further arguments are files*/
                        no_opts = TRUE;
index 0c3a4ad8c8879271154d0b85c3f3b8a04f75ad56..3e007ba83634d6126826415e7aff888b5699a261 100644 (file)
@@ -1,8 +1,8 @@
-/* A Bison parser, made by GNU Bison 2.5.  */
+/* A Bison parser, made by GNU Bison 2.7.  */
 
 /* Bison implementation for Yacc-like parsers in C
    
-      Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc.
+      Copyright (C) 1984, 1989-1990, 2000-2012 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
@@ -44,7 +44,7 @@
 #define YYBISON 1
 
 /* Bison version.  */
-#define YYBISON_VERSION "2.5"
+#define YYBISON_VERSION "2.7"
 
 /* Skeleton name.  */
 #define YYSKELETON_NAME "yacc.c"
 /* Pull parsers.  */
 #define YYPULL 1
 
-/* Using locations.  */
-#define YYLSP_NEEDED 0
 
 
 
 /* Copy the first part of user declarations.  */
-
-/* Line 268 of yacc.c  */
+/* Line 371 of yacc.c  */
 #line 23 "parse.y"
 
 
@@ -117,6 +114,7 @@ static char *onerror = NULL;
 static char *defreturn = NULL;
 
 static GList *gtktypes = NULL;
+static char *signal_name=NULL;
 
 static Property *property = NULL;
 
@@ -249,6 +247,13 @@ push_function (int scope, int method, char *oid, char *id,
        } else
                c_cbuf = NULL;
 
+       if (signal_name == NULL )
+       {
+               GString * buffer=g_string_new("");
+               g_string_printf(buffer, "\"%s\"", id);
+               signal_name = buffer->str;
+               g_string_free(buffer, FALSE);
+       }
        node = node_new (METHOD_NODE,
                         "scope", scope,
                         "method", method,
@@ -257,6 +262,7 @@ push_function (int scope, int method, char *oid, char *id,
                         "gtktypes:steal", gtktypes,
                         "flags:steal", flags,
                         "id:steal", id,
+                        "signal_name:steal", signal_name,
                         "args:steal", funcargs,
                         "funcattrs:steal", funcattrs,
                         "onerror:steal", onerror,
@@ -276,8 +282,8 @@ push_function (int scope, int method, char *oid, char *id,
                                above */
                              c_cbuf?FALSE:TRUE);
        gtktypes = NULL;
+       signal_name = NULL;
        funcargs = NULL;
-
        funcattrs = NULL;
        onerror = NULL;
        defreturn = NULL;
@@ -726,14 +732,16 @@ ensure_property (void)
 }
 
 
+/* Line 371 of yacc.c  */
+#line 737 "parse.c"
 
-/* Line 268 of yacc.c  */
-#line 732 "parse.c"
-
-/* Enabling traces.  */
-#ifndef YYDEBUG
-# define YYDEBUG 1
-#endif
+# ifndef YY_NULL
+#  if defined __cplusplus && 201103L <= __cplusplus
+#   define YY_NULL nullptr
+#  else
+#   define YY_NULL 0
+#  endif
+# endif
 
 /* Enabling verbose error messages.  */
 #ifdef YYERROR_VERBOSE
@@ -743,11 +751,17 @@ ensure_property (void)
 # define YYERROR_VERBOSE 0
 #endif
 
-/* Enabling the token table.  */
-#ifndef YYTOKEN_TABLE
-# define YYTOKEN_TABLE 0
+/* In a future release of Bison, this section will be replaced
+   by #include "y.tab.h".  */
+#ifndef YY_YY_PARSE_H_INCLUDED
+# define YY_YY_PARSE_H_INCLUDED
+/* Enabling traces.  */
+#ifndef YYDEBUG
+# define YYDEBUG 1
+#endif
+#if YYDEBUG
+extern int yydebug;
 #endif
-
 
 /* Tokens.  */
 #ifndef YYTOKENTYPE
@@ -794,19 +808,20 @@ ensure_property (void)
      VIRTUAL = 294,
      SIGNAL = 295,
      OVERRIDE = 296,
-     NICK = 297,
-     BLURB = 298,
-     MAXIMUM = 299,
-     MINIMUM = 300,
-     DEFAULT_VALUE = 301,
-     ERROR = 302,
-     FLAGS = 303,
-     TYPE = 304,
-     FLAGS_TYPE = 305,
-     ENUM_TYPE = 306,
-     PARAM_TYPE = 307,
-     BOXED_TYPE = 308,
-     OBJECT_TYPE = 309
+     NAME = 297,
+     NICK = 298,
+     BLURB = 299,
+     MAXIMUM = 300,
+     MINIMUM = 301,
+     DEFAULT_VALUE = 302,
+     ERROR = 303,
+     FLAGS = 304,
+     TYPE = 305,
+     FLAGS_TYPE = 306,
+     ENUM_TYPE = 307,
+     PARAM_TYPE = 308,
+     BOXED_TYPE = 309,
+     OBJECT_TYPE = 310
    };
 #endif
 /* Tokens.  */
@@ -849,29 +864,28 @@ ensure_property (void)
 #define VIRTUAL 294
 #define SIGNAL 295
 #define OVERRIDE 296
-#define NICK 297
-#define BLURB 298
-#define MAXIMUM 299
-#define MINIMUM 300
-#define DEFAULT_VALUE 301
-#define ERROR 302
-#define FLAGS 303
-#define TYPE 304
-#define FLAGS_TYPE 305
-#define ENUM_TYPE 306
-#define PARAM_TYPE 307
-#define BOXED_TYPE 308
-#define OBJECT_TYPE 309
-
+#define NAME 297
+#define NICK 298
+#define BLURB 299
+#define MAXIMUM 300
+#define MINIMUM 301
+#define DEFAULT_VALUE 302
+#define ERROR 303
+#define FLAGS 304
+#define TYPE 305
+#define FLAGS_TYPE 306
+#define ENUM_TYPE 307
+#define PARAM_TYPE 308
+#define BOXED_TYPE 309
+#define OBJECT_TYPE 310
 
 
 
 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
 typedef union YYSTYPE
 {
-
-/* Line 293 of yacc.c  */
-#line 683 "parse.y"
+/* Line 387 of yacc.c  */
+#line 692 "parse.y"
 
        char *id;
        GString *cbuf;
@@ -880,21 +894,36 @@ typedef union YYSTYPE
        int sigtype;
 
 
-
-/* Line 293 of yacc.c  */
-#line 886 "parse.c"
+/* Line 387 of yacc.c  */
+#line 899 "parse.c"
 } YYSTYPE;
 # define YYSTYPE_IS_TRIVIAL 1
 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
 # define YYSTYPE_IS_DECLARED 1
 #endif
 
+extern YYSTYPE yylval;
 
-/* Copy the second part of user declarations.  */
+#ifdef YYPARSE_PARAM
+#if defined __STDC__ || defined __cplusplus
+int yyparse (void *YYPARSE_PARAM);
+#else
+int yyparse ();
+#endif
+#else /* ! YYPARSE_PARAM */
+#if defined __STDC__ || defined __cplusplus
+int yyparse (void);
+#else
+int yyparse ();
+#endif
+#endif /* ! YYPARSE_PARAM */
+
+#endif /* !YY_YY_PARSE_H_INCLUDED  */
 
+/* Copy the second part of user declarations.  */
 
-/* Line 343 of yacc.c  */
-#line 898 "parse.c"
+/* Line 390 of yacc.c  */
+#line 927 "parse.c"
 
 #ifdef short
 # undef short
@@ -947,24 +976,24 @@ typedef short int yytype_int16;
 # if defined YYENABLE_NLS && YYENABLE_NLS
 #  if ENABLE_NLS
 #   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
-#   define YY_(msgid) dgettext ("bison-runtime", msgid)
+#   define YY_(Msgid) dgettext ("bison-runtime", Msgid)
 #  endif
 # endif
 # ifndef YY_
-#  define YY_(msgid) msgid
+#  define YY_(Msgid) Msgid
 # endif
 #endif
 
 /* Suppress unused-variable warnings by "using" E.  */
 #if ! defined lint || defined __GNUC__
-# define YYUSE(e) ((void) (e))
+# define YYUSE(E) ((void) (E))
 #else
-# define YYUSE(e) /* empty */
+# define YYUSE(E) /* empty */
 #endif
 
 /* Identity function, used to suppress warnings about constant conditions.  */
 #ifndef lint
-# define YYID(n) (n)
+# define YYID(N) (N)
 #else
 #if (defined __STDC__ || defined __C99__FUNC__ \
      || defined __cplusplus || defined _MSC_VER)
@@ -1000,6 +1029,7 @@ YYID (yyi)
 #    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
      || defined __cplusplus || defined _MSC_VER)
 #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
+      /* Use EXIT_SUCCESS as a witness for stdlib.h.  */
 #     ifndef EXIT_SUCCESS
 #      define EXIT_SUCCESS 0
 #     endif
@@ -1091,20 +1121,20 @@ union yyalloc
 #endif
 
 #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
-/* Copy COUNT objects from FROM to TO.  The source and destination do
+/* Copy COUNT objects from SRC to DST.  The source and destination do
    not overlap.  */
 # ifndef YYCOPY
 #  if defined __GNUC__ && 1 < __GNUC__
-#   define YYCOPY(To, From, Count) \
-      __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
+#   define YYCOPY(Dst, Src, Count) \
+      __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src)))
 #  else
-#   define YYCOPY(To, From, Count)             \
-      do                                       \
-       {                                       \
-         YYSIZE_T yyi;                         \
-         for (yyi = 0; yyi < (Count); yyi++)   \
-           (To)[yyi] = (From)[yyi];            \
-       }                                       \
+#   define YYCOPY(Dst, Src, Count)              \
+      do                                        \
+        {                                       \
+          YYSIZE_T yyi;                         \
+          for (yyi = 0; yyi < (Count); yyi++)   \
+            (Dst)[yyi] = (Src)[yyi];            \
+        }                                       \
       while (YYID (0))
 #  endif
 # endif
@@ -1113,20 +1143,20 @@ union yyalloc
 /* YYFINAL -- State number of the termination state.  */
 #define YYFINAL  25
 /* YYLAST -- Last index in YYTABLE.  */
-#define YYLAST   641
+#define YYLAST   612
 
 /* YYNTOKENS -- Number of terminals.  */
-#define YYNTOKENS  68
+#define YYNTOKENS  69
 /* YYNNTS -- Number of nonterminals.  */
 #define YYNNTS  53
 /* YYNRULES -- Number of rules.  */
-#define YYNRULES  198
+#define YYNRULES  200
 /* YYNRULES -- Number of states.  */
-#define YYNSTATES  418
+#define YYNSTATES  425
 
 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
 #define YYUNDEFTOK  2
-#define YYMAXUTOK   309
+#define YYMAXUTOK   310
 
 #define YYTRANSLATE(YYX)                                               \
   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
@@ -1137,16 +1167,16 @@ static const yytype_uint8 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,    66,     2,     2,     2,     2,     2,     2,
-      57,    58,    63,     2,    61,    67,     2,     2,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     2,     2,    59,
-      65,    60,    64,     2,     2,     2,     2,     2,     2,     2,
+       2,     2,     2,    67,     2,     2,     2,     2,     2,     2,
+      58,    59,    64,     2,    62,    68,     2,     2,     2,     2,
+       2,     2,     2,     2,     2,     2,     2,     2,     2,    60,
+      66,    61,    65,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
-       2,     2,     2,    55,    62,    56,     2,     2,     2,     2,
+       2,     2,     2,    56,    63,    57,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
@@ -1164,7 +1194,8 @@ static const yytype_uint8 yytranslate[] =
       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,    53,    54
+      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
+      55
 };
 
 #if YYDEBUG
@@ -1181,127 +1212,130 @@ static const yytype_uint16 yyprhs[] =
      203,   213,   220,   224,   225,   237,   246,   252,   256,   257,
      261,   263,   265,   270,   272,   274,   278,   282,   286,   290,
      294,   298,   302,   306,   310,   314,   318,   322,   326,   330,
-     334,   338,   342,   344,   350,   352,   356,   357,   361,   363,
-     366,   368,   370,   372,   375,   378,   381,   385,   389,   392,
-     395,   398,   400,   403,   405,   408,   410,   412,   414,   416,
-     418,   420,   422,   424,   426,   428,   430,   432,   434,   437,
-     440,   444,   447,   449,   453,   457,   460,   462,   467,   471,
-     473,   476,   478,   489,   501,   511,   521,   530,   542,   551,
-     557,   560,   565,   572,   573,   575,   578,   580,   582,   585,
-     588,   592,   597,   602,   604,   608,   610,   614,   616,   619,
-     623,   630,   638,   641,   643,   645,   648,   651,   655,   659,
-     663,   667,   675,   684,   688,   690,   694,   696,   704,   713,
-     717,   719,   727,   736,   740,   742,   744,   747,   749
+     334,   338,   342,   346,   348,   354,   356,   360,   361,   365,
+     367,   370,   372,   374,   376,   379,   382,   385,   389,   393,
+     396,   399,   402,   404,   407,   409,   412,   414,   416,   418,
+     420,   422,   424,   426,   428,   430,   432,   434,   436,   438,
+     441,   444,   448,   451,   453,   457,   461,   464,   466,   471,
+     477,   481,   483,   486,   488,   499,   511,   521,   531,   540,
+     552,   561,   567,   570,   575,   582,   583,   585,   588,   590,
+     592,   595,   598,   602,   607,   612,   614,   618,   620,   624,
+     626,   629,   633,   640,   648,   651,   653,   655,   658,   661,
+     665,   669,   673,   677,   685,   694,   698,   700,   704,   706,
+     714,   723,   727,   729,   737,   746,   750,   752,   754,   757,
+     759
 };
 
 /* YYRHS -- A `-1'-separated list of the rules' RHS.  */
 static const yytype_int8 yyrhs[] =
 {
-      69,     0,    -1,    71,    72,    71,    -1,    72,    71,    -1,
-      71,    72,    -1,    72,    -1,    24,    -1,    26,    -1,    29,
+      70,     0,    -1,    72,    73,    72,    -1,    73,    72,    -1,
+      72,    73,    -1,    73,    -1,    24,    -1,    26,    -1,    29,
       -1,    27,    -1,    28,    -1,    30,    -1,    31,    -1,    25,
-      -1,    71,    70,    -1,    71,   113,    -1,    71,   116,    -1,
-      71,   118,    -1,    70,    -1,   113,    -1,   116,    -1,   118,
-      -1,    73,    55,    75,    56,    -1,    73,    55,    56,    -1,
-       3,    21,     4,    21,    74,    -1,    -1,    57,    19,    58,
-      74,    -1,    57,    19,    19,    58,    74,    -1,    57,    19,
-      21,    58,    74,    -1,    57,    19,    20,    58,    74,    -1,
-      57,    19,    32,    32,    58,    74,    -1,    57,    19,    32,
-      32,    32,    58,    74,    -1,    57,    19,    19,    32,    58,
-      74,    -1,    57,    19,    19,    32,    32,    58,    74,    -1,
-      75,    76,    -1,    76,    -1,   104,    -1,    19,   104,    -1,
-      19,    21,   104,    -1,    81,    -1,    82,    -1,    84,    -1,
-      59,    -1,    33,    -1,    34,    -1,    35,    -1,    36,    -1,
-      19,    19,    -1,    19,    55,    24,    -1,    60,   120,    -1,
-      60,    55,    24,    -1,    78,    79,    -1,    79,    78,    -1,
-      79,    -1,    78,    -1,    19,    -1,    -1,    77,    93,    19,
-      80,    59,    -1,    77,    93,    19,    22,    80,    59,    -1,
-      38,    91,    90,    19,    83,    19,    55,    24,    19,    55,
-      24,    59,    -1,    38,    91,    90,    19,    83,    19,    55,
-      24,    59,    -1,    38,    91,    90,    19,    83,    19,    -1,
-      57,    19,    58,    -1,    -1,    37,    19,    19,    85,    19,
-      55,    24,    19,    55,    24,    59,    -1,    37,    19,    19,
-      85,    19,    55,    24,    59,    -1,    37,    19,    19,    85,
-      59,    -1,    57,    86,    58,    -1,    -1,    86,    61,    89,
-      -1,    89,    -1,    32,    -1,    19,    57,    32,    58,    -1,
-     120,    -1,    87,    -1,    42,    60,    87,    -1,    43,    60,
-      87,    -1,    44,    60,   120,    -1,    45,    60,   120,    -1,
-      46,    60,    88,    -1,    48,    60,    92,    -1,    49,    60,
-      93,    -1,    50,    60,    21,    -1,    50,    60,    19,    -1,
-      51,    60,    21,    -1,    51,    60,    19,    -1,    52,    60,
-      21,    -1,    52,    60,    19,    -1,    53,    60,    21,    -1,
-      53,    60,    19,    -1,    54,    60,    21,    -1,    54,    60,
-      19,    -1,    19,    -1,    19,    57,    19,    93,    58,    -1,
-      19,    -1,    57,    92,    58,    -1,    -1,    19,    62,    92,
-      -1,    19,    -1,    94,    98,    -1,    94,    -1,    95,    -1,
-      19,    -1,     5,    19,    -1,    19,     5,    -1,    97,    19,
-      -1,     5,    97,    19,    -1,    97,    19,     5,    -1,    96,
-      95,    -1,    21,    95,    -1,     5,    95,    -1,    21,    -1,
-      21,     5,    -1,    96,    -1,    96,     5,    -1,     6,    -1,
-      18,    -1,    14,    -1,    15,    -1,    13,    -1,    16,    -1,
-      17,    -1,    11,    -1,    12,    -1,     7,    -1,     8,    -1,
-       9,    -1,    63,    -1,    63,     5,    -1,    63,    98,    -1,
-      63,     5,    98,    -1,    19,   101,    -1,   101,    -1,    77,
-      19,   101,    -1,    19,    77,   101,    -1,    77,   101,    -1,
-      99,    -1,    19,    57,   102,    58,    -1,   102,    61,    19,
-      -1,    19,    -1,    55,    24,    -1,    59,    -1,    40,    91,
-     100,    93,    19,    57,   107,    58,   105,   103,    -1,    77,
-      40,    91,    99,    93,    19,    57,   107,    58,   105,   103,
-      -1,    39,    77,    93,    19,    57,   107,    58,   105,   103,
-      -1,    77,    39,    93,    19,    57,   107,    58,   105,   103,
-      -1,    39,    93,    19,    57,   107,    58,   105,   103,    -1,
-      41,    57,    21,    58,    93,    19,    57,   107,    58,   105,
-     103,    -1,    77,    93,    19,    57,   107,    58,   105,   103,
-      -1,    19,    57,    19,    58,   103,    -1,    19,   106,    -1,
-      19,   106,    19,   106,    -1,    19,   106,    19,   106,    19,
-     106,    -1,    -1,   120,    -1,    55,    24,    -1,     6,    -1,
-      19,    -1,    19,     5,    -1,     5,    19,    -1,    19,    61,
-     108,    -1,    19,     5,    61,   108,    -1,     5,    19,    61,
-     108,    -1,   108,    -1,   109,    61,    10,    -1,   109,    -1,
-     109,    61,   110,    -1,   110,    -1,    93,    19,    -1,    93,
-      19,    22,    -1,    93,    19,    57,    19,   111,    58,    -1,
-      93,    19,    22,    57,    19,   111,    58,    -1,   111,   112,
-      -1,   112,    -1,    19,    -1,    64,   120,    -1,    65,   120,
-      -1,    64,    60,   120,    -1,    65,    60,   120,    -1,    60,
-      60,   120,    -1,    66,    60,   120,    -1,     9,    19,    55,
-     114,    56,    21,    59,    -1,     9,    19,    55,   114,    61,
-      56,    21,    59,    -1,   114,    61,   115,    -1,   115,    -1,
-      19,    60,   120,    -1,    19,    -1,    48,    19,    55,   117,
-      56,    21,    59,    -1,    48,    19,    55,   117,    61,    56,
-      21,    59,    -1,   117,    61,    19,    -1,    19,    -1,    47,
-      19,    55,   119,    56,    21,    59,    -1,    47,    19,    55,
-     119,    61,    56,    21,    59,    -1,   119,    61,    19,    -1,
-      19,    -1,    20,    -1,    67,    20,    -1,    23,    -1,    19,
+      -1,    72,    71,    -1,    72,   114,    -1,    72,   117,    -1,
+      72,   119,    -1,    71,    -1,   114,    -1,   117,    -1,   119,
+      -1,    74,    56,    76,    57,    -1,    74,    56,    57,    -1,
+       3,    21,     4,    21,    75,    -1,    -1,    58,    19,    59,
+      75,    -1,    58,    19,    19,    59,    75,    -1,    58,    19,
+      21,    59,    75,    -1,    58,    19,    20,    59,    75,    -1,
+      58,    19,    32,    32,    59,    75,    -1,    58,    19,    32,
+      32,    32,    59,    75,    -1,    58,    19,    19,    32,    59,
+      75,    -1,    58,    19,    19,    32,    32,    59,    75,    -1,
+      76,    77,    -1,    77,    -1,   105,    -1,    19,   105,    -1,
+      19,    21,   105,    -1,    82,    -1,    83,    -1,    85,    -1,
+      60,    -1,    33,    -1,    34,    -1,    35,    -1,    36,    -1,
+      19,    19,    -1,    19,    56,    24,    -1,    61,   121,    -1,
+      61,    56,    24,    -1,    79,    80,    -1,    80,    79,    -1,
+      80,    -1,    79,    -1,    19,    -1,    -1,    78,    94,    19,
+      81,    60,    -1,    78,    94,    19,    22,    81,    60,    -1,
+      38,    92,    91,    19,    84,    19,    56,    24,    19,    56,
+      24,    60,    -1,    38,    92,    91,    19,    84,    19,    56,
+      24,    60,    -1,    38,    92,    91,    19,    84,    19,    -1,
+      58,    19,    59,    -1,    -1,    37,    19,    19,    86,    19,
+      56,    24,    19,    56,    24,    60,    -1,    37,    19,    19,
+      86,    19,    56,    24,    60,    -1,    37,    19,    19,    86,
+      60,    -1,    58,    87,    59,    -1,    -1,    87,    62,    90,
+      -1,    90,    -1,    32,    -1,    19,    58,    32,    59,    -1,
+     121,    -1,    88,    -1,    42,    61,    88,    -1,    43,    61,
+      88,    -1,    44,    61,    88,    -1,    45,    61,   121,    -1,
+      46,    61,   121,    -1,    47,    61,    89,    -1,    49,    61,
+      93,    -1,    50,    61,    94,    -1,    51,    61,    21,    -1,
+      51,    61,    19,    -1,    52,    61,    21,    -1,    52,    61,
+      19,    -1,    53,    61,    21,    -1,    53,    61,    19,    -1,
+      54,    61,    21,    -1,    54,    61,    19,    -1,    55,    61,
+      21,    -1,    55,    61,    19,    -1,    19,    -1,    19,    58,
+      19,    94,    59,    -1,    19,    -1,    58,    93,    59,    -1,
+      -1,    19,    63,    93,    -1,    19,    -1,    95,    99,    -1,
+      95,    -1,    96,    -1,    19,    -1,     5,    19,    -1,    19,
+       5,    -1,    98,    19,    -1,     5,    98,    19,    -1,    98,
+      19,     5,    -1,    97,    96,    -1,    21,    96,    -1,     5,
+      96,    -1,    21,    -1,    21,     5,    -1,    97,    -1,    97,
+       5,    -1,     6,    -1,    18,    -1,    14,    -1,    15,    -1,
+      13,    -1,    16,    -1,    17,    -1,    11,    -1,    12,    -1,
+       7,    -1,     8,    -1,     9,    -1,    64,    -1,    64,     5,
+      -1,    64,    99,    -1,    64,     5,    99,    -1,    19,   102,
+      -1,   102,    -1,    78,    19,   102,    -1,    19,    78,   102,
+      -1,    78,   102,    -1,   100,    -1,    19,    58,   103,    59,
+      -1,    19,    32,    58,   103,    59,    -1,   103,    62,    19,
+      -1,    19,    -1,    56,    24,    -1,    60,    -1,    40,    92,
+     101,    94,    19,    58,   108,    59,   106,   104,    -1,    78,
+      40,    92,   100,    94,    19,    58,   108,    59,   106,   104,
+      -1,    39,    78,    94,    19,    58,   108,    59,   106,   104,
+      -1,    78,    39,    94,    19,    58,   108,    59,   106,   104,
+      -1,    39,    94,    19,    58,   108,    59,   106,   104,    -1,
+      41,    58,    21,    59,    94,    19,    58,   108,    59,   106,
+     104,    -1,    78,    94,    19,    58,   108,    59,   106,   104,
+      -1,    19,    58,    19,    59,   104,    -1,    19,   107,    -1,
+      19,   107,    19,   107,    -1,    19,   107,    19,   107,    19,
+     107,    -1,    -1,   121,    -1,    56,    24,    -1,     6,    -1,
+      19,    -1,    19,     5,    -1,     5,    19,    -1,    19,    62,
+     109,    -1,    19,     5,    62,   109,    -1,     5,    19,    62,
+     109,    -1,   109,    -1,   110,    62,    10,    -1,   110,    -1,
+     110,    62,   111,    -1,   111,    -1,    94,    19,    -1,    94,
+      19,    22,    -1,    94,    19,    58,    19,   112,    59,    -1,
+      94,    19,    22,    58,    19,   112,    59,    -1,   112,   113,
+      -1,   113,    -1,    19,    -1,    65,   121,    -1,    66,   121,
+      -1,    65,    61,   121,    -1,    66,    61,   121,    -1,    61,
+      61,   121,    -1,    67,    61,   121,    -1,     9,    19,    56,
+     115,    57,    21,    60,    -1,     9,    19,    56,   115,    62,
+      57,    21,    60,    -1,   115,    62,   116,    -1,   116,    -1,
+      19,    61,   121,    -1,    19,    -1,    49,    19,    56,   118,
+      57,    21,    60,    -1,    49,    19,    56,   118,    62,    57,
+      21,    60,    -1,   118,    62,    19,    -1,    19,    -1,    48,
+      19,    56,   120,    57,    21,    60,    -1,    48,    19,    56,
+     120,    62,    57,    21,    60,    -1,   120,    62,    19,    -1,
+      19,    -1,    20,    -1,    68,    20,    -1,    23,    -1,    19,
       -1
 };
 
 /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
 static const yytype_uint16 yyrline[] =
 {
-       0,   704,   704,   705,   706,   707,   710,   719,   728,   737,
-     746,   755,   764,   773,   784,   785,   786,   787,   788,   789,
-     790,   791,   794,   799,   806,   823,   824,   832,   844,   853,
-     865,   874,   883,   892,   903,   904,   907,   908,   917,   929,
-     930,   931,   932,   935,   936,   937,   938,   941,   961,   985,
-     989,   997,   998,   999,  1000,  1001,  1009,  1015,  1018,  1023,
-    1091,  1145,  1234,  1242,  1247,  1295,  1331,  1347,  1348,  1351,
-    1352,  1355,  1356,  1368,  1369,  1372,  1378,  1384,  1390,  1396,
-    1402,  1408,  1415,  1421,  1427,  1433,  1439,  1445,  1451,  1457,
-    1463,  1469,  1475,  1500,  1509,  1515,  1516,  1519,  1522,  1528,
-    1535,  1544,  1547,  1550,  1554,  1558,  1562,  1567,  1575,  1579,
-    1584,  1588,  1591,  1595,  1598,  1603,  1604,  1605,  1606,  1607,
-    1608,  1609,  1610,  1611,  1614,  1615,  1616,  1619,  1620,  1621,
-    1625,  1632,  1644,  1650,  1662,  1674,  1677,  1683,  1688,  1691,
-    1696,  1697,  1701,  1724,  1747,  1770,  1793,  1811,  1824,  1834,
-    1874,  1886,  1906,  1937,  1944,  1945,  1951,  1952,  1963,  1974,
-    1985,  1995,  2005,  2015,  2018,  2019,  2022,  2023,  2026,  2029,
-    2032,  2040,  2050,  2051,  2054,  2071,  2078,  2085,  2092,  2099,
-    2106,  2115,  2124,  2135,  2136,  2139,  2159,  2169,  2178,  2189,
-    2192,  2197,  2206,  2217,  2220,  2226,  2227,  2231,  2232
+       0,   713,   713,   714,   715,   716,   719,   728,   737,   746,
+     755,   764,   773,   782,   793,   794,   795,   796,   797,   798,
+     799,   800,   803,   808,   815,   832,   833,   841,   853,   862,
+     874,   883,   892,   901,   912,   913,   916,   917,   926,   938,
+     939,   940,   941,   944,   945,   946,   947,   950,   970,   994,
+     998,  1006,  1007,  1008,  1009,  1010,  1018,  1024,  1027,  1032,
+    1100,  1154,  1243,  1251,  1256,  1304,  1340,  1356,  1357,  1360,
+    1361,  1364,  1365,  1377,  1378,  1381,  1387,  1393,  1399,  1405,
+    1411,  1417,  1423,  1430,  1436,  1442,  1448,  1454,  1460,  1466,
+    1472,  1478,  1484,  1490,  1515,  1524,  1530,  1531,  1534,  1537,
+    1543,  1550,  1559,  1562,  1565,  1569,  1573,  1577,  1582,  1590,
+    1594,  1599,  1603,  1606,  1610,  1613,  1618,  1619,  1620,  1621,
+    1622,  1623,  1624,  1625,  1626,  1629,  1630,  1631,  1634,  1635,
+    1636,  1640,  1647,  1659,  1665,  1677,  1689,  1692,  1698,  1701,
+    1707,  1710,  1715,  1716,  1720,  1743,  1766,  1789,  1812,  1830,
+    1843,  1853,  1893,  1905,  1925,  1956,  1963,  1964,  1970,  1971,
+    1982,  1993,  2004,  2014,  2024,  2034,  2037,  2038,  2041,  2042,
+    2045,  2048,  2051,  2059,  2069,  2070,  2073,  2090,  2097,  2104,
+    2111,  2118,  2125,  2134,  2143,  2154,  2155,  2158,  2178,  2188,
+    2197,  2208,  2211,  2216,  2225,  2236,  2239,  2245,  2246,  2250,
+    2251
 };
 #endif
 
-#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
+#if YYDEBUG || YYERROR_VERBOSE || 0
 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
    First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
 static const char *const yytname[] =
@@ -1312,7 +1346,7 @@ static const char *const yytname[] =
   "TYPETOKEN", "ARRAY_DIM", "SINGLE_CHAR", "CCODE", "CTCODE", "ADCODE",
   "HTCODE", "PHCODE", "HCODE", "ACODE", "ATCODE", "STRING", "PUBLIC",
   "PRIVATE", "PROTECTED", "CLASSWIDE", "PROPERTY", "ARGUMENT", "VIRTUAL",
-  "SIGNAL", "OVERRIDE", "NICK", "BLURB", "MAXIMUM", "MINIMUM",
+  "SIGNAL", "OVERRIDE", "NAME", "NICK", "BLURB", "MAXIMUM", "MINIMUM",
   "DEFAULT_VALUE", "ERROR", "FLAGS", "TYPE", "FLAGS_TYPE", "ENUM_TYPE",
   "PARAM_TYPE", "BOXED_TYPE", "OBJECT_TYPE", "'{'", "'}'", "'('", "')'",
   "';'", "'='", "','", "'|'", "'*'", "'>'", "'<'", "'!'", "'-'", "$accept",
@@ -1325,7 +1359,7 @@ static const char *const yytname[] =
   "tokenlist", "codenocode", "method", "methodmods", "retcode", "funcargs",
   "arglist", "arglist1", "arg", "checklist", "check", "enumcode",
   "enumvals", "enumval", "flagcode", "flagvals", "errorcode", "errorvals",
-  "numtok", 0
+  "numtok", YY_NULL
 };
 #endif
 
@@ -1339,34 +1373,35 @@ static const yytype_uint16 yytoknum[] =
      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
-     305,   306,   307,   308,   309,   123,   125,    40,    41,    59,
-      61,    44,   124,    42,    62,    60,    33,    45
+     305,   306,   307,   308,   309,   310,   123,   125,    40,    41,
+      59,    61,    44,   124,    42,    62,    60,    33,    45
 };
 # endif
 
 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
 static const yytype_uint8 yyr1[] =
 {
-       0,    68,    69,    69,    69,    69,    70,    70,    70,    70,
-      70,    70,    70,    70,    71,    71,    71,    71,    71,    71,
-      71,    71,    72,    72,    73,    74,    74,    74,    74,    74,
-      74,    74,    74,    74,    75,    75,    76,    76,    76,    76,
-      76,    76,    76,    77,    77,    77,    77,    78,    78,    79,
-      79,    80,    80,    80,    80,    80,    80,    81,    81,    82,
-      82,    82,    83,    83,    84,    84,    84,    85,    85,    86,
-      86,    87,    87,    88,    88,    89,    89,    89,    89,    89,
-      89,    89,    89,    89,    89,    89,    89,    89,    89,    89,
-      89,    89,    89,    90,    90,    91,    91,    92,    92,    93,
-      93,    94,    94,    94,    94,    94,    94,    94,    95,    95,
-      95,    95,    95,    95,    95,    96,    96,    96,    96,    96,
-      96,    96,    96,    96,    97,    97,    97,    98,    98,    98,
-      98,    99,    99,   100,   100,   100,   100,   101,   102,   102,
-     103,   103,   104,   104,   104,   104,   104,   104,   104,   104,
-     105,   105,   105,   105,   106,   106,   107,   107,   107,   107,
-     107,   107,   107,   107,   108,   108,   109,   109,   110,   110,
-     110,   110,   111,   111,   112,   112,   112,   112,   112,   112,
-     112,   113,   113,   114,   114,   115,   115,   116,   116,   117,
-     117,   118,   118,   119,   119,   120,   120,   120,   120
+       0,    69,    70,    70,    70,    70,    71,    71,    71,    71,
+      71,    71,    71,    71,    72,    72,    72,    72,    72,    72,
+      72,    72,    73,    73,    74,    75,    75,    75,    75,    75,
+      75,    75,    75,    75,    76,    76,    77,    77,    77,    77,
+      77,    77,    77,    78,    78,    78,    78,    79,    79,    80,
+      80,    81,    81,    81,    81,    81,    81,    82,    82,    83,
+      83,    83,    84,    84,    85,    85,    85,    86,    86,    87,
+      87,    88,    88,    89,    89,    90,    90,    90,    90,    90,
+      90,    90,    90,    90,    90,    90,    90,    90,    90,    90,
+      90,    90,    90,    90,    91,    91,    92,    92,    93,    93,
+      94,    94,    95,    95,    95,    95,    95,    95,    95,    96,
+      96,    96,    96,    96,    96,    96,    97,    97,    97,    97,
+      97,    97,    97,    97,    97,    98,    98,    98,    99,    99,
+      99,    99,   100,   100,   101,   101,   101,   101,   102,   102,
+     103,   103,   104,   104,   105,   105,   105,   105,   105,   105,
+     105,   105,   106,   106,   106,   106,   107,   107,   108,   108,
+     108,   108,   108,   108,   108,   108,   109,   109,   110,   110,
+     111,   111,   111,   111,   112,   112,   113,   113,   113,   113,
+     113,   113,   113,   114,   114,   115,   115,   116,   116,   117,
+     117,   118,   118,   119,   119,   120,   120,   121,   121,   121,
+     121
 };
 
 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
@@ -1381,17 +1416,18 @@ static const yytype_uint8 yyr2[] =
        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,     6,     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
+       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,     5,
+       3,     1,     2,     1,    10,    11,     9,     9,     8,    11,
+       8,     5,     2,     4,     6,     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
 };
 
 /* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
@@ -1403,263 +1439,259 @@ static const yytype_uint8 yydefact[] =
       12,     0,     0,     0,    18,     0,     5,     0,    19,    20,
       21,     0,     0,     0,     0,     1,    14,     4,    15,    16,
       17,     3,     0,     0,     0,     0,     0,     2,     0,    43,
-      44,    45,    46,     0,    96,     0,    96,     0,    23,    42,
-       0,    35,     0,    39,    40,    41,    36,    25,   186,     0,
-     184,   194,     0,   190,     0,     0,     0,     0,     0,    37,
-       0,     0,     0,     0,   115,   124,   125,   126,   122,   123,
-     119,   117,   118,   120,   121,   116,   102,   111,     0,     0,
-     100,   101,   113,     0,     0,     0,    22,    34,     0,    96,
+      44,    45,    46,     0,    97,     0,    97,     0,    23,    42,
+       0,    35,     0,    39,    40,    41,    36,    25,   188,     0,
+     186,   196,     0,   192,     0,     0,     0,     0,     0,    37,
+       0,     0,     0,     0,   116,   125,   126,   127,   123,   124,
+     120,   118,   119,   121,   122,   117,   103,   112,     0,     0,
+     101,   102,   114,     0,     0,     0,    22,    34,     0,    97,
        0,     0,    24,     0,     0,     0,     0,     0,     0,     0,
-      38,     0,     0,    68,    98,     0,    94,     0,     0,   103,
-     110,     0,   104,   112,   109,     0,     0,   127,    99,   114,
-     108,   105,     0,     0,   136,     0,   132,     0,     0,     0,
-      56,     0,   198,   195,   197,     0,   185,     0,     0,   183,
-       0,   193,     0,     0,   189,     0,     0,     0,     0,     0,
-       0,    95,     0,    63,   106,     0,     0,   128,   129,   107,
-       0,     0,     0,   131,     0,   135,     0,     0,     0,     0,
-       0,    55,    56,     0,     0,    54,    53,     0,     0,     0,
-       0,     0,    25,   196,   181,     0,   191,     0,   187,     0,
-       0,   141,   149,    92,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,    70,     0,    66,
-      97,     0,     0,     0,     0,     0,   115,   102,     0,     0,
-     163,   165,   167,   130,   139,     0,   134,   133,     0,     0,
-       0,     0,    47,     0,     0,     0,     0,    49,    51,     0,
-      52,    57,     0,    25,    25,    25,     0,    26,   182,   192,
-     188,   140,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,     0,    67,     0,     0,     0,     0,    61,
-       0,   103,   104,     0,   168,   153,     0,   137,     0,     0,
-       0,     0,     0,    48,    58,   153,    50,     0,    25,    27,
-      29,    28,     0,    25,     0,    71,    75,    76,    77,    78,
-     198,    74,    79,    73,    80,    81,    83,    82,    85,    84,
-      87,    86,    89,    88,    91,    90,    69,     0,    93,    62,
-       0,   153,     0,     0,   160,   169,     0,     0,     0,   164,
-     166,   138,     0,     0,   153,     0,     0,    25,    32,    25,
-      30,     0,     0,    65,     0,     0,   162,   161,     0,     0,
-       0,   150,   154,   146,   153,     0,     0,     0,   148,    33,
-      31,     0,     0,     0,    60,   144,     0,   174,     0,     0,
-       0,     0,     0,   173,   155,     0,     0,   153,   145,   153,
-      72,     0,     0,     0,     0,     0,   175,     0,   176,     0,
-     170,   172,   151,   142,     0,     0,    64,     0,   171,   179,
-     177,   178,   180,     0,   147,   143,    59,   152
+      38,     0,     0,    68,    99,     0,    95,     0,     0,   104,
+     111,     0,   105,   113,   110,     0,     0,   128,   100,   115,
+     109,   106,     0,     0,   137,     0,   133,     0,     0,     0,
+      56,     0,   200,   197,   199,     0,   187,     0,     0,   185,
+       0,   195,     0,     0,   191,     0,     0,     0,     0,     0,
+       0,    96,     0,    63,   107,     0,     0,   129,   130,   108,
+       0,     0,     0,     0,   132,     0,   136,     0,     0,     0,
+       0,     0,    55,    56,     0,     0,    54,    53,     0,     0,
+       0,     0,     0,    25,   198,   183,     0,   193,     0,   189,
+       0,     0,   143,   151,    93,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,     0,    70,
+       0,    66,    98,     0,     0,     0,     0,     0,   116,   103,
+       0,     0,   165,   167,   169,   131,     0,   141,     0,   135,
+     134,     0,     0,     0,     0,    47,     0,     0,     0,     0,
+      49,    51,     0,    52,    57,     0,    25,    25,    25,     0,
+      26,   184,   194,   190,   142,     0,     0,     0,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,     0,    67,     0,
+       0,     0,     0,    61,     0,   104,   105,     0,   170,   155,
+       0,     0,   138,     0,     0,     0,     0,     0,    48,    58,
+     155,    50,     0,    25,    27,    29,    28,     0,    25,     0,
+      71,    75,    76,    77,    78,    79,   200,    74,    80,    73,
+      81,    82,    84,    83,    86,    85,    88,    87,    90,    89,
+      92,    91,    69,     0,    94,    62,     0,   155,     0,     0,
+     162,   171,     0,     0,     0,   166,   168,   139,   140,     0,
+       0,   155,     0,     0,    25,    32,    25,    30,     0,     0,
+      65,     0,     0,   164,   163,     0,     0,     0,   152,   156,
+     148,   155,     0,     0,     0,   150,    33,    31,     0,     0,
+       0,    60,   146,     0,   176,     0,     0,     0,     0,     0,
+     175,   157,     0,     0,   155,   147,   155,    72,     0,     0,
+       0,     0,     0,   177,     0,   178,     0,   172,   174,   153,
+     144,     0,     0,    64,     0,   173,   181,   179,   180,   182,
+       0,   149,   145,    59,   154
 };
 
 /* YYDEFGOTO[NTERM-NUM].  */
 static const yytype_int16 yydefgoto[] =
 {
       -1,    13,    14,    15,    16,    17,   102,    50,    51,    52,
-     185,   186,   187,    53,    54,   223,    55,   159,   216,   306,
-     312,   217,   117,    72,   115,   228,    90,    91,    92,    93,
-     128,   134,   135,   136,   235,   202,    56,   338,   361,   229,
-     230,   231,   232,   382,   383,    18,    59,    60,    19,    64,
-      20,    62,   362
+     186,   187,   188,    53,    54,   225,    55,   159,   218,   311,
+     318,   219,   117,    72,   115,   230,    90,    91,    92,    93,
+     128,   134,   135,   136,   238,   203,    56,   344,   368,   231,
+     232,   233,   234,   389,   390,    18,    59,    60,    19,    64,
+      20,    62,   369
 };
 
 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
    STATE-NUM.  */
-#define YYPACT_NINF -360
+#define YYPACT_NINF -334
 static const yytype_int16 yypact[] =
 {
-     162,    -2,     6,  -360,  -360,  -360,  -360,  -360,  -360,  -360,
-    -360,    16,    90,   131,  -360,   162,   210,    77,  -360,  -360,
-    -360,   156,   126,   160,   167,  -360,  -360,   210,  -360,  -360,
-    -360,   210,   161,   223,   153,   230,   231,   210,   226,  -360,
-    -360,  -360,  -360,   244,   207,   309,   207,   214,  -360,  -360,
-     192,  -360,   292,  -360,  -360,  -360,  -360,   215,   242,   -28,
-    -360,  -360,   151,  -360,   152,   255,   300,   310,   292,  -360,
-     319,   330,   336,   376,  -360,  -360,  -360,  -360,  -360,  -360,
-    -360,  -360,  -360,  -360,  -360,  -360,   351,   444,   393,   338,
-     295,  -360,   458,   360,   327,   365,  -360,  -360,   393,   207,
-     377,   384,  -360,     7,   392,    92,   399,    98,   409,   100,
-    -360,   379,   428,   394,   390,   395,   397,   447,   472,  -360,
-    -360,   448,  -360,   472,  -360,   449,   423,     5,  -360,   472,
-    -360,   476,   149,   463,  -360,   393,  -360,   433,   473,   475,
-      58,   184,  -360,  -360,  -360,   477,  -360,   436,   478,  -360,
-     437,  -360,   479,   439,  -360,   480,   159,   445,   236,    -4,
-     330,  -360,   484,   450,  -360,   451,   410,   295,  -360,  -360,
-     452,   485,   486,  -360,    69,  -360,   487,   393,   453,    69,
-     393,   115,    -3,   410,    18,   454,   492,   456,   117,   455,
-     459,   488,   215,  -360,  -360,   457,  -360,   460,  -360,   462,
-     494,  -360,  -360,  -360,   464,   465,   466,   467,   468,   469,
-     470,   471,   474,   481,   482,   483,   185,  -360,   489,  -360,
-    -360,   393,   493,   503,   410,   427,   490,     8,   504,   491,
-    -360,   495,  -360,  -360,  -360,   212,  -360,  -360,   496,   513,
-     410,   514,  -360,   511,   498,   497,   512,  -360,  -360,   115,
-    -360,  -360,   120,   215,   215,   215,   121,  -360,  -360,  -360,
-    -360,  -360,   110,   110,     7,     7,    63,   330,   393,   119,
-     202,   235,   274,   333,  -360,   236,   515,   500,   501,   499,
-     502,   289,   290,   393,    -8,   518,   359,  -360,   519,   410,
-     505,   506,   508,  -360,  -360,   518,  -360,   509,   215,  -360,
-    -360,  -360,   510,   215,   516,  -360,  -360,  -360,  -360,  -360,
-     516,  -360,  -360,  -360,  -360,  -360,  -360,  -360,  -360,  -360,
-    -360,  -360,  -360,  -360,  -360,  -360,  -360,    13,  -360,  -360,
-     521,   518,   393,   393,  -360,   517,   527,    70,   159,  -360,
-    -360,  -360,   520,   410,   518,   410,   159,   215,  -360,   215,
-    -360,   529,   522,  -360,    65,   159,  -360,  -360,   528,    32,
-     526,   532,  -360,  -360,   518,   523,   159,   524,  -360,  -360,
-    -360,   525,   539,   530,  -360,  -360,    32,  -360,   531,    27,
-      83,   533,    56,  -360,  -360,    70,   159,   518,  -360,   518,
-    -360,   507,   545,    81,     7,     7,  -360,     7,  -360,     7,
-    -360,  -360,   551,  -360,   159,   159,  -360,   535,  -360,  -360,
-    -360,  -360,  -360,    70,  -360,  -360,  -360,  -360
+     169,    10,    22,  -334,  -334,  -334,  -334,  -334,  -334,  -334,
+    -334,    82,    99,   133,  -334,   169,   220,    96,  -334,  -334,
+    -334,   181,   134,   135,   145,  -334,  -334,   220,  -334,  -334,
+    -334,   220,   170,   205,   183,   212,   213,   220,   237,  -334,
+    -334,  -334,  -334,   223,   196,   341,   196,   203,  -334,  -334,
+     200,  -334,   324,  -334,  -334,  -334,  -334,   204,   192,   -30,
+    -334,  -334,   102,  -334,   125,   208,   332,   256,   324,  -334,
+     262,   263,   278,   390,  -334,  -334,  -334,  -334,  -334,  -334,
+    -334,  -334,  -334,  -334,  -334,  -334,   300,   458,   407,   292,
+     257,  -334,   472,   315,   274,   246,  -334,  -334,   407,   196,
+     325,   342,  -334,    76,   348,    68,   349,    69,   372,    73,
+    -334,   351,   381,   359,   364,   375,   386,   432,   486,  -334,
+    -334,   442,  -334,   486,  -334,   446,   408,     4,  -334,   486,
+    -334,   462,   255,   449,  -334,   407,  -334,   421,   463,   475,
+       3,   154,  -334,  -334,  -334,   461,  -334,   435,   484,  -334,
+     436,  -334,   485,   448,  -334,   488,   128,   452,   273,     7,
+     263,  -334,   492,   454,  -334,   455,   424,   257,  -334,  -334,
+      -2,   456,   496,   497,  -334,    27,  -334,   498,   407,   460,
+      27,   407,    92,    -6,   424,    -5,   459,   500,   464,    65,
+     466,   467,   489,   204,  -334,  -334,   468,  -334,   469,  -334,
+     470,   499,  -334,  -334,  -334,   471,   473,   474,   476,   477,
+     478,   479,   480,   481,   482,   483,   487,   490,   153,  -334,
+     491,  -334,  -334,   407,   503,   508,   424,   441,   493,    14,
+     512,   494,  -334,   495,  -334,  -334,   496,  -334,   161,  -334,
+    -334,   501,   514,   424,   517,  -334,   521,   502,   504,   522,
+    -334,  -334,    92,  -334,  -334,    80,   204,   204,   204,   121,
+    -334,  -334,  -334,  -334,  -334,   144,   144,   144,    76,    76,
+      16,   263,   407,   195,   275,   281,   285,   293,  -334,   273,
+     525,   505,   506,   510,   509,   162,   163,   407,    88,   531,
+     373,   193,  -334,   535,   424,   511,   513,   515,  -334,  -334,
+     531,  -334,   516,   204,  -334,  -334,  -334,   518,   204,   520,
+    -334,  -334,  -334,  -334,  -334,  -334,   520,  -334,  -334,  -334,
+    -334,  -334,  -334,  -334,  -334,  -334,  -334,  -334,  -334,  -334,
+    -334,  -334,  -334,     9,  -334,  -334,   532,   531,   407,   407,
+    -334,   523,   536,    30,   128,  -334,  -334,  -334,  -334,   524,
+     424,   531,   424,   128,   204,  -334,   204,  -334,   526,   528,
+    -334,    23,   128,  -334,  -334,   541,    75,   537,   548,  -334,
+    -334,   531,   527,   128,   529,  -334,  -334,  -334,   530,   546,
+     534,  -334,  -334,    75,  -334,   519,    70,    86,   533,    62,
+    -334,  -334,    30,   128,   531,  -334,   531,  -334,   538,   547,
+      84,    76,    76,  -334,    76,  -334,    76,  -334,  -334,   555,
+    -334,   128,   128,  -334,   539,  -334,  -334,  -334,  -334,  -334,
+      30,  -334,  -334,  -334,  -334
 };
 
 /* YYPGOTO[NTERM-NUM].  */
 static const yytype_int16 yypgoto[] =
 {
-    -360,  -360,    21,    15,   537,  -360,  -190,  -360,   534,   -27,
-     354,   386,   398,  -360,  -360,  -360,  -360,  -360,  -360,   -90,
-    -360,   297,  -360,   -37,  -155,   -44,  -360,   -70,  -360,   -67,
-     -23,   440,  -360,    -5,  -360,  -326,    85,  -288,  -278,  -179,
-    -262,  -360,   301,   199,  -359,   237,  -360,   536,   238,  -360,
-     322,  -360,  -103
+    -334,  -334,   146,   165,   561,  -334,  -186,  -334,   542,   -28,
+     392,   396,   402,  -334,  -334,  -334,  -334,  -334,  -334,  -233,
+    -334,   308,  -334,   -34,  -155,   -44,  -334,   -71,  -334,   -69,
+     -47,   457,  -334,   -18,   355,  -333,    94,  -294,  -285,  -181,
+    -264,  -334,   303,   214,  -281,   228,  -334,   507,   248,  -334,
+     249,  -334,  -103
 };
 
 /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
    positive, shift that token.  If negative, reduce the rule which
    number is the opposite.  If YYTABLE_NINF, syntax error.  */
-#define YYTABLE_NINF -160
+#define YYTABLE_NINF -162
 static const yytype_int16 yytable[] =
 {
-     146,    89,   257,   120,   245,   220,   121,   346,   100,    94,
-     167,    68,   363,   282,   335,   218,   181,   124,    88,    21,
-     368,   334,   130,   401,   112,    22,   142,   143,   104,   375,
-     144,    31,   352,   105,   401,    23,    26,   142,   143,    68,
-     388,   144,    37,   355,   125,   280,   142,   143,   120,   336,
-     144,   377,    26,   120,   138,   219,   366,   184,    26,   120,
-     403,   291,   139,   299,   300,   301,  -157,   133,   127,   283,
-     356,   357,   353,   246,   145,   377,   386,   181,   414,   415,
-     182,   247,   310,   143,   373,   145,   144,   395,   170,   142,
-     143,   176,   378,   144,   145,   305,   379,   380,   381,   404,
-     377,   405,   142,   143,   168,   172,   144,   402,   348,    24,
-     342,    58,   314,   350,   400,   183,   378,   151,   184,   154,
-     379,   380,   381,    69,   374,   360,   171,   173,   175,   304,
-     145,    25,    32,   239,   242,   417,   241,   145,   316,   408,
-     317,   378,   305,   397,   233,   379,   380,   381,   148,   252,
-     145,   110,   297,   302,   152,   120,   155,   369,   121,   370,
-      33,   308,   309,   313,   365,     1,   367,   236,   170,   237,
-     243,     2,    58,   307,   173,   253,   311,   277,   298,   303,
-      38,    34,    39,    40,    41,    42,     3,     4,     5,     6,
-       7,     8,     9,    10,    39,    40,    41,    42,    43,    44,
-      45,    46,    47,   188,   189,   190,   171,   106,   108,    11,
-      12,    38,   107,   109,   200,    35,   191,    48,   201,     2,
-      49,   318,    36,   319,   315,    39,    40,    41,    42,    43,
-      44,    45,    46,    47,     3,     4,     5,     6,     7,     8,
-       9,    10,   192,   274,    57,    65,   275,    66,    96,    61,
-      63,    49,    28,    29,   320,   203,   321,    11,    12,    39,
-      40,    41,    42,    70,    71,    45,    46,    47,    28,    29,
-     287,    95,   101,   288,    28,    29,   396,   398,   204,   205,
-     206,   207,   208,    67,   209,   210,   211,   212,   213,   214,
-     215,   409,   410,   322,   411,   323,   412,    73,    74,    75,
-      76,    77,   103,    78,    79,    80,    81,    82,    83,    84,
-      85,    86,    67,    87,    73,    74,    75,    76,    77,    65,
-      78,    79,    80,    81,    82,    83,    84,    85,    86,   111,
-      87,    98,    99,    39,    40,    41,    42,    30,   113,    45,
-      46,    47,    39,    40,    41,    42,   132,  -159,  -158,   114,
-     332,   333,   324,    30,   325,   116,   122,   126,   127,    30,
-      39,    40,    41,    42,    73,    74,    75,    76,    77,   339,
-      78,    79,    80,    81,    82,    83,    84,    85,    86,   131,
-      87,   118,    74,    75,    76,    77,   137,    78,    79,    80,
-      81,    82,    83,    84,    85,   119,   140,    87,    73,    74,
-      75,    76,    77,   141,    78,    79,    80,    81,    82,    83,
-      84,    85,    86,   147,    87,   225,   226,    75,    76,    77,
-     150,    78,    79,    80,    81,    82,    83,    84,    85,   227,
-     153,    87,   118,    74,    75,    76,    77,   156,    78,    79,
-      80,    81,    82,    83,    84,    85,   281,   157,    87,   123,
-      74,   158,   160,   161,   162,    78,    79,    80,    81,    82,
-      83,    84,    85,   129,    74,    87,   163,   164,   165,    78,
-      79,    80,    81,    82,    83,    84,    85,   118,    74,    87,
-     166,   169,   174,    78,    79,    80,    81,    82,    83,    84,
-      85,   177,   178,    87,   179,   194,   196,   193,   198,   195,
-     197,   199,   183,   221,   234,   170,   238,   222,   224,   171,
-     240,   249,   278,   254,   184,   251,   258,   255,   261,   259,
-     256,   260,   279,   284,   262,   263,   264,   265,   266,   267,
-     268,   269,   290,   292,   270,   293,   296,   337,   341,   327,
-     250,   271,   272,   273,   276,   354,   359,   376,  -156,   285,
-     384,   385,    27,   289,   330,   295,   286,   294,   328,   329,
-     331,   371,   343,   391,   344,   345,   406,   347,   349,   407,
-     413,   248,   326,   351,   358,   393,     0,   372,   364,   180,
-     244,   387,   389,   390,    97,   392,     0,   340,     0,     0,
-       0,   394,     0,   399,   416,     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,     0,     0,     0,     0,     0,
+     146,    89,   120,   248,   121,   222,   353,   260,   100,   167,
+      68,   370,    94,   182,   142,   143,   124,    88,   144,   286,
+     375,   130,   182,   340,   112,   183,   220,   104,   359,   382,
+     171,    21,   105,   312,   313,   316,   143,   317,    68,   144,
+     395,    22,   380,   362,   125,   284,   170,   120,   310,   142,
+     143,   249,   120,   144,   138,   185,   172,   373,   120,   171,
+     410,   184,   296,   145,   185,   139,   133,   221,   127,   360,
+     304,   305,   306,  -159,   363,   364,   287,   393,   421,   422,
+     168,   384,   250,   381,   145,   172,   367,    58,   151,   142,
+     143,   177,   154,   144,   384,   142,   143,   255,   145,   144,
+     411,    23,   412,   384,   173,   142,   143,   409,   408,   144,
+     341,   245,   302,   349,   174,   176,   320,   355,    24,   408,
+     235,   407,   357,   385,   256,   148,   152,   386,   387,   388,
+     155,   402,    69,    25,   242,   424,   385,   244,   145,   303,
+     386,   387,   388,   415,   145,   385,   342,   404,   246,   386,
+     387,   388,    32,   307,   145,   239,   120,   240,   121,   106,
+     110,    26,   174,   309,   107,   314,   315,   319,   376,   372,
+     377,   374,     1,   189,   190,   191,   310,    26,     2,   281,
+     308,    31,   108,    26,   201,    33,   192,   109,   202,    38,
+      34,    35,    37,     3,     4,     5,     6,     7,     8,     9,
+      10,    36,    58,    39,    40,    41,    42,    43,    44,    45,
+      46,    47,   278,   193,   322,   279,   323,    11,    12,    38,
+     292,  -161,  -160,   293,   338,   339,    57,    48,   321,     2,
+      49,    61,    63,    39,    40,    41,    42,    43,    44,    45,
+      46,    47,    70,    28,     3,     4,     5,     6,     7,     8,
+       9,    10,   347,   103,    71,   293,    65,    96,    66,    28,
+      49,    95,   101,    29,    30,    28,    67,   137,    11,    12,
+      39,    40,    41,    42,   170,   111,    45,    46,    47,    29,
+      30,   113,   114,   403,   405,    29,    30,   171,    39,    40,
+      41,    42,   204,   132,   324,    67,   325,   116,   416,   417,
+     326,   418,   327,   419,   328,   122,   329,    39,    40,    41,
+      42,   126,   330,   172,   331,   205,   206,   207,   208,   209,
+     210,   127,   211,   212,   213,   214,   215,   216,   217,    73,
+      74,    75,    76,    77,   131,    78,    79,    80,    81,    82,
+      83,    84,    85,    86,   140,    87,    73,    74,    75,    76,
+      77,    65,    78,    79,    80,    81,    82,    83,    84,    85,
+      86,   141,    87,    98,    99,    39,    40,    41,    42,   147,
+     150,    45,    46,    47,    39,    40,    41,    42,    73,    74,
+      75,    76,    77,   345,    78,    79,    80,    81,    82,    83,
+      84,    85,    86,   153,    87,   118,    74,    75,    76,    77,
+     157,    78,    79,    80,    81,    82,    83,    84,    85,   119,
+     156,    87,    73,    74,    75,    76,    77,   158,    78,    79,
+      80,    81,    82,    83,    84,    85,    86,   160,    87,   227,
+     228,    75,    76,    77,   161,    78,    79,    80,    81,    82,
+      83,    84,    85,   229,   162,    87,   118,    74,    75,    76,
+      77,   163,    78,    79,    80,    81,    82,    83,    84,    85,
+     285,   164,    87,   123,    74,   165,   166,   169,   175,    78,
+      79,    80,    81,    82,    83,    84,    85,   129,    74,    87,
+     178,   194,   179,    78,    79,    80,    81,    82,    83,    84,
+      85,   118,    74,    87,   180,   195,   197,    78,    79,    80,
+      81,    82,    83,    84,    85,   196,   198,    87,   199,   200,
+     184,   223,   224,   226,   236,   237,   170,   241,   243,   252,
+     185,   259,   282,   264,   254,   257,   258,   283,   261,   262,
+     263,   288,   265,   295,   266,   267,   297,   268,   269,   270,
+     271,   272,   273,   274,   275,   298,   301,   280,   276,   333,
+     343,   277,  -158,   289,   348,   366,   361,   290,   378,   294,
+     383,   391,   299,   300,   334,   335,   336,   392,   337,   350,
+     398,   414,   351,   352,   420,   354,    27,   356,   358,   253,
+     401,   365,   251,   371,   379,   247,   394,   332,   396,   397,
+     399,   291,    97,   346,   406,     0,   181,   400,   413,   423,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   149
+       0,     0,   149
 };
 
-#define yypact_value_is_default(yystate) \
-  ((yystate) == (-360))
+#define yypact_value_is_default(Yystate) \
+  (!!((Yystate) == (-334)))
 
-#define yytable_value_is_error(yytable_value) \
+#define yytable_value_is_error(Yytable_value) \
   YYID (0)
 
 static const yytype_int16 yycheck[] =
 {
-     103,    45,   192,    73,   183,   160,    73,   295,    52,    46,
-       5,    38,   338,     5,    22,    19,    19,    87,    45,    21,
-     346,   283,    92,   382,    68,    19,    19,    20,    56,   355,
-      23,    16,    19,    61,   393,    19,    15,    19,    20,    66,
-     366,    23,    27,   331,    88,   224,    19,    20,   118,    57,
-      23,    19,    31,   123,    98,    59,   344,    60,    37,   129,
-     386,   240,    99,   253,   254,   255,    58,    94,    63,    61,
-     332,   333,    59,    55,    67,    19,   364,    19,   404,   405,
-      22,   184,    19,    20,    19,    67,    23,    60,    19,    19,
-      20,   135,    60,    23,    67,    32,    64,    65,    66,   387,
-      19,   389,    19,    20,   127,   132,    23,   385,   298,    19,
-     289,    19,   267,   303,    58,    57,    60,    19,    60,    19,
-      64,    65,    66,    38,    59,    55,    57,   132,   133,    19,
-      67,     0,    55,   177,    19,   413,   180,    67,    19,    58,
-      21,    60,    32,    60,   167,    64,    65,    66,    56,    32,
-      67,    66,    32,    32,    56,   225,    56,   347,   225,   349,
-       4,   264,   265,   266,   343,     3,   345,   172,    19,   174,
-      55,     9,    19,   263,   179,    58,   266,   221,    58,    58,
-      19,    55,    33,    34,    35,    36,    24,    25,    26,    27,
-      28,    29,    30,    31,    33,    34,    35,    36,    37,    38,
-      39,    40,    41,    19,    20,    21,    57,    56,    56,    47,
-      48,    19,    61,    61,    55,    55,    32,    56,    59,     9,
-      59,    19,    55,    21,   268,    33,    34,    35,    36,    37,
-      38,    39,    40,    41,    24,    25,    26,    27,    28,    29,
-      30,    31,    58,    58,    21,    19,    61,    21,    56,    19,
-      19,    59,    15,    15,    19,    19,    21,    47,    48,    33,
-      34,    35,    36,    19,    57,    39,    40,    41,    31,    31,
-      58,    57,    57,    61,    37,    37,   379,   380,    42,    43,
-      44,    45,    46,    57,    48,    49,    50,    51,    52,    53,
-      54,   394,   395,    19,   397,    21,   399,     5,     6,     7,
-       8,     9,    60,    11,    12,    13,    14,    15,    16,    17,
-      18,    19,    57,    21,     5,     6,     7,     8,     9,    19,
-      11,    12,    13,    14,    15,    16,    17,    18,    19,    19,
-      21,    39,    40,    33,    34,    35,    36,    15,    19,    39,
-      40,    41,    33,    34,    35,    36,    19,    58,    58,    19,
-      61,    61,    19,    31,    21,    19,     5,    19,    63,    37,
-      33,    34,    35,    36,     5,     6,     7,     8,     9,    10,
-      11,    12,    13,    14,    15,    16,    17,    18,    19,    19,
-      21,     5,     6,     7,     8,     9,    21,    11,    12,    13,
-      14,    15,    16,    17,    18,    19,    19,    21,     5,     6,
-       7,     8,     9,    19,    11,    12,    13,    14,    15,    16,
+     103,    45,    73,   184,    73,   160,   300,   193,    52,     5,
+      38,   344,    46,    19,    19,    20,    87,    45,    23,     5,
+     353,    92,    19,   287,    68,    22,    19,    57,    19,   362,
+      32,    21,    62,   266,   267,    19,    20,   270,    66,    23,
+     373,    19,    19,   337,    88,   226,    19,   118,    32,    19,
+      20,    56,   123,    23,    98,    61,    58,   351,   129,    32,
+     393,    58,   243,    68,    61,    99,    94,    60,    64,    60,
+     256,   257,   258,    59,   338,   339,    62,   371,   411,   412,
+     127,    19,   185,    60,    68,    58,    56,    19,    19,    19,
+      20,   135,    19,    23,    19,    19,    20,    32,    68,    23,
+     394,    19,   396,    19,   132,    19,    20,   392,   389,    23,
+      22,    19,    32,   294,   132,   133,   271,   303,    19,   400,
+     167,    59,   308,    61,    59,    57,    57,    65,    66,    67,
+      57,    61,    38,     0,   178,   420,    61,   181,    68,    59,
+      65,    66,    67,    59,    68,    61,    58,    61,    56,    65,
+      66,    67,    56,    32,    68,   173,   227,   175,   227,    57,
+      66,    15,   180,    19,    62,   268,   269,   270,   354,   350,
+     356,   352,     3,    19,    20,    21,    32,    31,     9,   223,
+      59,    16,    57,    37,    56,     4,    32,    62,    60,    19,
+      56,    56,    27,    24,    25,    26,    27,    28,    29,    30,
+      31,    56,    19,    33,    34,    35,    36,    37,    38,    39,
+      40,    41,    59,    59,    19,    62,    21,    48,    49,    19,
+      59,    59,    59,    62,    62,    62,    21,    57,   272,     9,
+      60,    19,    19,    33,    34,    35,    36,    37,    38,    39,
+      40,    41,    19,    15,    24,    25,    26,    27,    28,    29,
+      30,    31,    59,    61,    58,    62,    19,    57,    21,    31,
+      60,    58,    58,    15,    15,    37,    58,    21,    48,    49,
+      33,    34,    35,    36,    19,    19,    39,    40,    41,    31,
+      31,    19,    19,   386,   387,    37,    37,    32,    33,    34,
+      35,    36,    19,    19,    19,    58,    21,    19,   401,   402,
+      19,   404,    21,   406,    19,     5,    21,    33,    34,    35,
+      36,    19,    19,    58,    21,    42,    43,    44,    45,    46,
+      47,    64,    49,    50,    51,    52,    53,    54,    55,     5,
+       6,     7,     8,     9,    19,    11,    12,    13,    14,    15,
+      16,    17,    18,    19,    19,    21,     5,     6,     7,     8,
+       9,    19,    11,    12,    13,    14,    15,    16,    17,    18,
+      19,    19,    21,    39,    40,    33,    34,    35,    36,    21,
+      21,    39,    40,    41,    33,    34,    35,    36,     5,     6,
+       7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
       17,    18,    19,    21,    21,     5,     6,     7,     8,     9,
-      21,    11,    12,    13,    14,    15,    16,    17,    18,    19,
-      21,    21,     5,     6,     7,     8,     9,    58,    11,    12,
-      13,    14,    15,    16,    17,    18,    19,    19,    21,     5,
-       6,    57,    62,    58,    57,    11,    12,    13,    14,    15,
-      16,    17,    18,     5,     6,    21,    19,    19,    19,    11,
+      19,    11,    12,    13,    14,    15,    16,    17,    18,    19,
+      59,    21,     5,     6,     7,     8,     9,    58,    11,    12,
+      13,    14,    15,    16,    17,    18,    19,    63,    21,     5,
+       6,     7,     8,     9,    59,    11,    12,    13,    14,    15,
+      16,    17,    18,    19,    58,    21,     5,     6,     7,     8,
+       9,    19,    11,    12,    13,    14,    15,    16,    17,    18,
+      19,    19,    21,     5,     6,    19,    58,     5,    19,    11,
       12,    13,    14,    15,    16,    17,    18,     5,     6,    21,
-      57,     5,    19,    11,    12,    13,    14,    15,    16,    17,
-      18,    58,    19,    21,    19,    59,    59,    20,    59,    21,
-      21,    21,    57,    19,    19,    19,    19,    57,    57,    57,
-      57,    19,    19,    58,    60,    59,    59,    58,    24,    59,
-      32,    59,    19,    19,    60,    60,    60,    60,    60,    60,
-      60,    60,    19,    19,    60,    24,    24,    19,    19,    24,
-     186,    60,    60,    60,    55,    24,    19,    19,    58,    58,
-      24,    19,    15,    57,    55,    58,    61,    59,    58,    58,
-      58,    32,    57,    24,    58,    57,    59,    58,    58,    24,
-      19,   185,   275,    57,    57,   376,    -1,    55,    58,   139,
-     182,    58,    58,    58,    50,    55,    -1,   286,    -1,    -1,
-      -1,    60,    -1,    60,    59,    -1,    -1,    -1,    -1,    -1,
+      59,    20,    19,    11,    12,    13,    14,    15,    16,    17,
+      18,     5,     6,    21,    19,    60,    60,    11,    12,    13,
+      14,    15,    16,    17,    18,    21,    21,    21,    60,    21,
+      58,    19,    58,    58,    58,    19,    19,    19,    58,    19,
+      61,    32,    19,    24,    60,    59,    59,    19,    60,    60,
+      60,    19,    61,    19,    61,    61,    19,    61,    61,    61,
+      61,    61,    61,    61,    61,    24,    24,    56,    61,    24,
+      19,    61,    59,    59,    19,    19,    24,    62,    32,    58,
+      19,    24,    60,    59,    59,    59,    56,    19,    59,    58,
+      24,    24,    59,    58,    19,    59,    15,    59,    58,   187,
+      61,    58,   186,    59,    56,   183,    59,   279,    59,    59,
+      56,   236,    50,   290,    61,    -1,   139,   383,    60,    60,
       -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,
-      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
-      -1,   105
+      -1,    -1,   105
 };
 
 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
@@ -1667,47 +1699,48 @@ static const yytype_int16 yycheck[] =
 static const yytype_uint8 yystos[] =
 {
        0,     3,     9,    24,    25,    26,    27,    28,    29,    30,
-      31,    47,    48,    69,    70,    71,    72,    73,   113,   116,
-     118,    21,    19,    19,    19,     0,    70,    72,   113,   116,
-     118,    71,    55,     4,    55,    55,    55,    71,    19,    33,
-      34,    35,    36,    37,    38,    39,    40,    41,    56,    59,
-      75,    76,    77,    81,    82,    84,   104,    21,    19,   114,
-     115,    19,   119,    19,   117,    19,    21,    57,    77,   104,
-      19,    57,    91,     5,     6,     7,     8,     9,    11,    12,
-      13,    14,    15,    16,    17,    18,    19,    21,    77,    93,
-      94,    95,    96,    97,    91,    57,    56,    76,    39,    40,
-      93,    57,    74,    60,    56,    61,    56,    61,    56,    61,
-     104,    19,    93,    19,    19,    92,    19,    90,     5,    19,
-      95,    97,     5,     5,    95,    93,    19,    63,    98,     5,
-      95,    19,    19,    77,    99,   100,   101,    21,    93,    91,
-      19,    19,    19,    20,    23,    67,   120,    21,    56,   115,
-      21,    19,    56,    21,    19,    56,    58,    19,    57,    85,
-      62,    58,    57,    19,    19,    19,    57,     5,    98,     5,
-      19,    57,    77,   101,    19,   101,    93,    58,    19,    19,
-      99,    19,    22,    57,    60,    78,    79,    80,    19,    20,
-      21,    32,    58,    20,    59,    21,    59,    21,    59,    21,
-      55,    59,   103,    19,    42,    43,    44,    45,    46,    48,
-      49,    50,    51,    52,    53,    54,    86,    89,    19,    59,
-      92,    19,    57,    83,    57,     5,     6,    19,    93,   107,
-     108,   109,   110,    98,    19,   102,   101,   101,    19,    93,
-      57,    93,    19,    55,    80,   107,    55,   120,    79,    19,
-      78,    59,    32,    58,    58,    58,    32,    74,    59,    59,
-      59,    24,    60,    60,    60,    60,    60,    60,    60,    60,
-      60,    60,    60,    60,    58,    61,    55,    93,    19,    19,
-     107,    19,     5,    61,    19,    58,    61,    58,    61,    57,
-      19,   107,    19,    24,    59,    58,    24,    32,    58,    74,
-      74,    74,    32,    58,    19,    32,    87,    87,   120,   120,
-      19,    87,    88,   120,    92,    93,    19,    21,    19,    21,
-      19,    21,    19,    21,    19,    21,    89,    24,    58,    58,
-      55,    58,    61,    61,   108,    22,    57,    19,   105,    10,
-     110,    19,   107,    57,    58,    57,   105,    58,    74,    58,
-      74,    57,    19,    59,    24,   105,   108,   108,    57,    19,
-      55,   106,   120,   103,    58,   107,   105,   107,   103,    74,
-      74,    32,    55,    19,    59,   103,    19,    19,    60,    64,
-      65,    66,   111,   112,    24,    19,   105,    58,   103,    58,
-      58,    24,    55,   111,    60,    60,   120,    60,   120,    60,
-      58,   112,   106,   103,   105,   105,    59,    24,    58,   120,
-     120,   120,   120,    19,   103,   103,    59,   106
+      31,    48,    49,    70,    71,    72,    73,    74,   114,   117,
+     119,    21,    19,    19,    19,     0,    71,    73,   114,   117,
+     119,    72,    56,     4,    56,    56,    56,    72,    19,    33,
+      34,    35,    36,    37,    38,    39,    40,    41,    57,    60,
+      76,    77,    78,    82,    83,    85,   105,    21,    19,   115,
+     116,    19,   120,    19,   118,    19,    21,    58,    78,   105,
+      19,    58,    92,     5,     6,     7,     8,     9,    11,    12,
+      13,    14,    15,    16,    17,    18,    19,    21,    78,    94,
+      95,    96,    97,    98,    92,    58,    57,    77,    39,    40,
+      94,    58,    75,    61,    57,    62,    57,    62,    57,    62,
+     105,    19,    94,    19,    19,    93,    19,    91,     5,    19,
+      96,    98,     5,     5,    96,    94,    19,    64,    99,     5,
+      96,    19,    19,    78,   100,   101,   102,    21,    94,    92,
+      19,    19,    19,    20,    23,    68,   121,    21,    57,   116,
+      21,    19,    57,    21,    19,    57,    59,    19,    58,    86,
+      63,    59,    58,    19,    19,    19,    58,     5,    99,     5,
+      19,    32,    58,    78,   102,    19,   102,    94,    59,    19,
+      19,   100,    19,    22,    58,    61,    79,    80,    81,    19,
+      20,    21,    32,    59,    20,    60,    21,    60,    21,    60,
+      21,    56,    60,   104,    19,    42,    43,    44,    45,    46,
+      47,    49,    50,    51,    52,    53,    54,    55,    87,    90,
+      19,    60,    93,    19,    58,    84,    58,     5,     6,    19,
+      94,   108,   109,   110,   111,    99,    58,    19,   103,   102,
+     102,    19,    94,    58,    94,    19,    56,    81,   108,    56,
+     121,    80,    19,    79,    60,    32,    59,    59,    59,    32,
+      75,    60,    60,    60,    24,    61,    61,    61,    61,    61,
+      61,    61,    61,    61,    61,    61,    61,    61,    59,    62,
+      56,    94,    19,    19,   108,    19,     5,    62,    19,    59,
+      62,   103,    59,    62,    58,    19,   108,    19,    24,    60,
+      59,    24,    32,    59,    75,    75,    75,    32,    59,    19,
+      32,    88,    88,    88,   121,   121,    19,    88,    89,   121,
+      93,    94,    19,    21,    19,    21,    19,    21,    19,    21,
+      19,    21,    90,    24,    59,    59,    56,    59,    62,    62,
+     109,    22,    58,    19,   106,    10,   111,    59,    19,   108,
+      58,    59,    58,   106,    59,    75,    59,    75,    58,    19,
+      60,    24,   106,   109,   109,    58,    19,    56,   107,   121,
+     104,    59,   108,   106,   108,   104,    75,    75,    32,    56,
+      19,    60,   104,    19,    19,    61,    65,    66,    67,   112,
+     113,    24,    19,   106,    59,   104,    59,    59,    24,    56,
+     112,    61,    61,   121,    61,   121,    61,    59,   113,   107,
+     104,   106,   106,    60,    24,    59,   121,   121,   121,   121,
+      19,   104,   104,    60,   107
 };
 
 #define yyerrok                (yyerrstatus = 0)
@@ -1737,62 +1770,35 @@ static const yytype_uint8 yystos[] =
 
 #define YYRECOVERING()  (!!yyerrstatus)
 
-#define YYBACKUP(Token, Value)                                 \
-do                                                             \
-  if (yychar == YYEMPTY && yylen == 1)                         \
-    {                                                          \
-      yychar = (Token);                                                \
-      yylval = (Value);                                                \
-      YYPOPSTACK (1);                                          \
-      goto yybackup;                                           \
-    }                                                          \
-  else                                                         \
-    {                                                          \
+#define YYBACKUP(Token, Value)                                  \
+do                                                              \
+  if (yychar == YYEMPTY)                                        \
+    {                                                           \
+      yychar = (Token);                                         \
+      yylval = (Value);                                         \
+      YYPOPSTACK (yylen);                                       \
+      yystate = *yyssp;                                         \
+      goto yybackup;                                            \
+    }                                                           \
+  else                                                          \
+    {                                                           \
       yyerror (YY_("syntax error: cannot back up")); \
       YYERROR;                                                 \
     }                                                          \
 while (YYID (0))
 
-
+/* Error token number */
 #define YYTERROR       1
 #define YYERRCODE      256
 
 
-/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
-   If N is 0, then set CURRENT to the empty location which ends
-   the previous symbol: RHS[0] (always defined).  */
-
-#define YYRHSLOC(Rhs, K) ((Rhs)[K])
-#ifndef YYLLOC_DEFAULT
-# define YYLLOC_DEFAULT(Current, Rhs, N)                               \
-    do                                                                 \
-      if (YYID (N))                                                    \
-       {                                                               \
-         (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \
-         (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \
-         (Current).last_line    = YYRHSLOC (Rhs, N).last_line;         \
-         (Current).last_column  = YYRHSLOC (Rhs, N).last_column;       \
-       }                                                               \
-      else                                                             \
-       {                                                               \
-         (Current).first_line   = (Current).last_line   =              \
-           YYRHSLOC (Rhs, 0).last_line;                                \
-         (Current).first_column = (Current).last_column =              \
-           YYRHSLOC (Rhs, 0).last_column;                              \
-       }                                                               \
-    while (YYID (0))
-#endif
-
-
 /* This macro is provided for backward compatibility. */
-
 #ifndef YY_LOCATION_PRINT
 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
 #endif
 
 
 /* YYLEX -- calling `yylex' with the right arguments.  */
-
 #ifdef YYLEX_PARAM
 # define YYLEX yylex (YYLEX_PARAM)
 #else
@@ -1842,6 +1848,8 @@ yy_symbol_value_print (yyoutput, yytype, yyvaluep)
     YYSTYPE const * const yyvaluep;
 #endif
 {
+  FILE *yyo = yyoutput;
+  YYUSE (yyo);
   if (!yyvaluep)
     return;
 # ifdef YYPRINT
@@ -1853,7 +1861,7 @@ yy_symbol_value_print (yyoutput, yytype, yyvaluep)
   switch (yytype)
     {
       default:
-       break;
+        break;
     }
 }
 
@@ -2093,12 +2101,11 @@ static int
 yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
                 yytype_int16 *yyssp, int yytoken)
 {
-  YYSIZE_T yysize0 = yytnamerr (0, yytname[yytoken]);
+  YYSIZE_T yysize0 = yytnamerr (YY_NULL, yytname[yytoken]);
   YYSIZE_T yysize = yysize0;
-  YYSIZE_T yysize1;
   enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
   /* Internationalized format string. */
-  const char *yyformat = 0;
+  const char *yyformat = YY_NULL;
   /* Arguments of yyformat. */
   char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
   /* Number of reported tokens (one for the "unexpected", one per
@@ -2158,11 +2165,13 @@ yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
                     break;
                   }
                 yyarg[yycount++] = yytname[yyx];
-                yysize1 = yysize + yytnamerr (0, yytname[yyx]);
-                if (! (yysize <= yysize1
-                       && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
-                  return 2;
-                yysize = yysize1;
+                {
+                  YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULL, yytname[yyx]);
+                  if (! (yysize <= yysize1
+                         && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
+                    return 2;
+                  yysize = yysize1;
+                }
               }
         }
     }
@@ -2182,10 +2191,12 @@ yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
 # undef YYCASE_
     }
 
-  yysize1 = yysize + yystrlen (yyformat);
-  if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
-    return 2;
-  yysize = yysize1;
+  {
+    YYSIZE_T yysize1 = yysize + yystrlen (yyformat);
+    if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
+      return 2;
+    yysize = yysize1;
+  }
 
   if (*yymsg_alloc < yysize)
     {
@@ -2245,32 +2256,27 @@ yydestruct (yymsg, yytype, yyvaluep)
     {
 
       default:
-       break;
+        break;
     }
 }
 
 
-/* Prevent warnings from -Wmissing-prototypes.  */
-#ifdef YYPARSE_PARAM
-#if defined __STDC__ || defined __cplusplus
-int yyparse (void *YYPARSE_PARAM);
-#else
-int yyparse ();
-#endif
-#else /* ! YYPARSE_PARAM */
-#if defined __STDC__ || defined __cplusplus
-int yyparse (void);
-#else
-int yyparse ();
-#endif
-#endif /* ! YYPARSE_PARAM */
 
 
 /* The lookahead symbol.  */
 int yychar;
 
+
+#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
+# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
+# define YY_IGNORE_MAYBE_UNINITIALIZED_END
+#endif
+#ifndef YY_INITIAL_VALUE
+# define YY_INITIAL_VALUE(Value) /* Nothing. */
+#endif
+
 /* The semantic value of the lookahead symbol.  */
-YYSTYPE yylval;
+YYSTYPE yylval YY_INITIAL_VALUE(yyval_default);
 
 /* Number of syntax errors so far.  */
 int yynerrs;
@@ -2310,7 +2316,7 @@ yyparse ()
        `yyss': related to states.
        `yyvs': related to semantic values.
 
-       Refer to the stacks thru separate pointers, to allow yyoverflow
+       Refer to the stacks through separate pointers, to allow yyoverflow
        to reallocate them elsewhere.  */
 
     /* The state stack.  */
@@ -2328,7 +2334,7 @@ yyparse ()
   int yyn;
   int yyresult;
   /* Lookahead token as an internal (translated) token number.  */
-  int yytoken;
+  int yytoken = 0;
   /* The variables used to return semantic value and location from the
      action routines.  */
   YYSTYPE yyval;
@@ -2346,9 +2352,8 @@ yyparse ()
      Keep to zero when no symbol should be popped.  */
   int yylen = 0;
 
-  yytoken = 0;
-  yyss = yyssa;
-  yyvs = yyvsa;
+  yyssp = yyss = yyssa;
+  yyvsp = yyvs = yyvsa;
   yystacksize = YYINITDEPTH;
 
   YYDPRINTF ((stderr, "Starting parse\n"));
@@ -2357,14 +2362,6 @@ yyparse ()
   yyerrstatus = 0;
   yynerrs = 0;
   yychar = YYEMPTY; /* Cause a token to be read.  */
-
-  /* Initialize stack pointers.
-     Waste one element of value and location stack
-     so that they stay on the same level as the state stack.
-     The wasted elements are never initialized.  */
-  yyssp = yyss;
-  yyvsp = yyvs;
-
   goto yysetstate;
 
 /*------------------------------------------------------------.
@@ -2505,7 +2502,9 @@ yybackup:
   yychar = YYEMPTY;
 
   yystate = yyn;
+  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
   *++yyvsp = yylval;
+  YY_IGNORE_MAYBE_UNINITIALIZED_END
 
   goto yynewstate;
 
@@ -2542,37 +2541,32 @@ yyreduce:
   switch (yyn)
     {
         case 2:
-
-/* Line 1806 of yacc.c  */
-#line 704 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 713 "parse.y"
     { ; }
     break;
 
   case 3:
-
-/* Line 1806 of yacc.c  */
-#line 705 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 714 "parse.y"
     { ; }
     break;
 
   case 4:
-
-/* Line 1806 of yacc.c  */
-#line 706 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 715 "parse.y"
     { ; }
     break;
 
   case 5:
-
-/* Line 1806 of yacc.c  */
-#line 707 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 716 "parse.y"
     { ; }
     break;
 
   case 6:
-
-/* Line 1806 of yacc.c  */
-#line 710 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 719 "parse.y"
     {
                        Node *node = node_new (CCODE_NODE,
                                               "cctype", C_CCODE,
@@ -2585,9 +2579,8 @@ yyreduce:
     break;
 
   case 7:
-
-/* Line 1806 of yacc.c  */
-#line 719 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 728 "parse.y"
     {
                        Node *node = node_new (CCODE_NODE,
                                               "cctype", AD_CCODE,
@@ -2600,9 +2593,8 @@ yyreduce:
     break;
 
   case 8:
-
-/* Line 1806 of yacc.c  */
-#line 728 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 737 "parse.y"
     {
                        Node *node = node_new (CCODE_NODE,
                                               "cctype", H_CCODE,
@@ -2615,9 +2607,8 @@ yyreduce:
     break;
 
   case 9:
-
-/* Line 1806 of yacc.c  */
-#line 737 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 746 "parse.y"
     {
                        Node *node = node_new (CCODE_NODE,
                                               "cctype", HT_CCODE,
@@ -2630,9 +2621,8 @@ yyreduce:
     break;
 
   case 10:
-
-/* Line 1806 of yacc.c  */
-#line 746 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 755 "parse.y"
     {
                        Node *node = node_new (CCODE_NODE,
                                               "cctype", PH_CCODE,
@@ -2645,9 +2635,8 @@ yyreduce:
     break;
 
   case 11:
-
-/* Line 1806 of yacc.c  */
-#line 755 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 764 "parse.y"
     {
                        Node *node = node_new (CCODE_NODE,
                                               "cctype", A_CCODE,
@@ -2660,9 +2649,8 @@ yyreduce:
     break;
 
   case 12:
-
-/* Line 1806 of yacc.c  */
-#line 764 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 773 "parse.y"
     {
                        Node *node = node_new (CCODE_NODE,
                                               "cctype", AT_CCODE,
@@ -2675,9 +2663,8 @@ yyreduce:
     break;
 
   case 13:
-
-/* Line 1806 of yacc.c  */
-#line 773 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 782 "parse.y"
     {
                        Node *node = node_new (CCODE_NODE,
                                               "cctype", CT_CCODE,
@@ -2690,65 +2677,56 @@ yyreduce:
     break;
 
   case 14:
-
-/* Line 1806 of yacc.c  */
-#line 784 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 793 "parse.y"
     { ; }
     break;
 
   case 15:
-
-/* Line 1806 of yacc.c  */
-#line 785 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 794 "parse.y"
     { ; }
     break;
 
   case 16:
-
-/* Line 1806 of yacc.c  */
-#line 786 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 795 "parse.y"
     { ; }
     break;
 
   case 17:
-
-/* Line 1806 of yacc.c  */
-#line 787 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 796 "parse.y"
     { ; }
     break;
 
   case 18:
-
-/* Line 1806 of yacc.c  */
-#line 788 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 797 "parse.y"
     { ; }
     break;
 
   case 19:
-
-/* Line 1806 of yacc.c  */
-#line 789 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 798 "parse.y"
     { ; }
     break;
 
   case 20:
-
-/* Line 1806 of yacc.c  */
-#line 790 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 799 "parse.y"
     { ; }
     break;
 
   case 21:
-
-/* Line 1806 of yacc.c  */
-#line 791 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 800 "parse.y"
     { ; }
     break;
 
   case 22:
-
-/* Line 1806 of yacc.c  */
-#line 794 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 803 "parse.y"
     {
                        ((Class *)class)->nodes = class_nodes;
                        class_nodes = NULL;
@@ -2757,9 +2735,8 @@ yyreduce:
     break;
 
   case 23:
-
-/* Line 1806 of yacc.c  */
-#line 799 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 808 "parse.y"
     {
                        ((Class *)class)->nodes = NULL;
                        class_nodes = NULL;
@@ -2768,9 +2745,8 @@ yyreduce:
     break;
 
   case 24:
-
-/* Line 1806 of yacc.c  */
-#line 806 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 815 "parse.y"
     {
                        class = node_new (CLASS_NODE,
                                          "otype:steal", (yyvsp[(2) - (5)].id),
@@ -2789,9 +2765,8 @@ yyreduce:
     break;
 
   case 26:
-
-/* Line 1806 of yacc.c  */
-#line 824 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 833 "parse.y"
     {
                        if(strcmp((yyvsp[(2) - (4)].id),"abstract") == 0) {
                                abstract = TRUE;
@@ -2803,9 +2778,8 @@ yyreduce:
     break;
 
   case 27:
-
-/* Line 1806 of yacc.c  */
-#line 832 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 841 "parse.y"
     {
                        if(strcmp((yyvsp[(2) - (5)].id),"chunks") == 0) {
                                g_free (chunk_size);
@@ -2821,9 +2795,8 @@ yyreduce:
     break;
 
   case 28:
-
-/* Line 1806 of yacc.c  */
-#line 844 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 853 "parse.y"
     {
                        if (strcmp ((yyvsp[(2) - (5)].id), "interface") == 0) {
                                interfaces = g_list_append (interfaces,
@@ -2836,9 +2809,8 @@ yyreduce:
     break;
 
   case 29:
-
-/* Line 1806 of yacc.c  */
-#line 853 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 862 "parse.y"
     {
                        if(strcmp((yyvsp[(2) - (5)].id),"chunks") == 0) {
                                g_free (chunk_size);
@@ -2854,9 +2826,8 @@ yyreduce:
     break;
 
   case 30:
-
-/* Line 1806 of yacc.c  */
-#line 865 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 874 "parse.y"
     {
                        if (strcmp ((yyvsp[(2) - (6)].id), "GladeXML") == 0) {
                                glade_xml = TRUE;
@@ -2869,9 +2840,8 @@ yyreduce:
     break;
 
   case 31:
-
-/* Line 1806 of yacc.c  */
-#line 874 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 883 "parse.y"
     {
                        if (strcmp ((yyvsp[(2) - (7)].id), "GladeXML") == 0) {
                                glade_xml = TRUE;
@@ -2884,9 +2854,8 @@ yyreduce:
     break;
 
   case 32:
-
-/* Line 1806 of yacc.c  */
-#line 883 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 892 "parse.y"
     {
                        if (strcmp ((yyvsp[(2) - (6)].id), "GladeXML") == 0) {
                                glade_xml = TRUE;
@@ -2899,9 +2868,8 @@ yyreduce:
     break;
 
   case 33:
-
-/* Line 1806 of yacc.c  */
-#line 892 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 901 "parse.y"
     {
                        if (strcmp ((yyvsp[(2) - (7)].id), "GladeXML") == 0) {
                                glade_xml = TRUE;
@@ -2914,30 +2882,26 @@ yyreduce:
     break;
 
   case 34:
-
-/* Line 1806 of yacc.c  */
-#line 903 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 912 "parse.y"
     { ; }
     break;
 
   case 35:
-
-/* Line 1806 of yacc.c  */
-#line 904 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 913 "parse.y"
     { ; }
     break;
 
   case 36:
-
-/* Line 1806 of yacc.c  */
-#line 907 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 916 "parse.y"
     { ; }
     break;
 
   case 37:
-
-/* Line 1806 of yacc.c  */
-#line 908 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 917 "parse.y"
     {
                        if (strcmp ((yyvsp[(1) - (2)].id), "BonoboObject") != 0) {
                                g_free ((yyvsp[(1) - (2)].id));
@@ -2950,9 +2914,8 @@ yyreduce:
     break;
 
   case 38:
-
-/* Line 1806 of yacc.c  */
-#line 917 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 926 "parse.y"
     {
                        if (strcmp ((yyvsp[(1) - (3)].id), "interface") != 0) {
                                g_free ((yyvsp[(1) - (3)].id));
@@ -2968,65 +2931,56 @@ yyreduce:
     break;
 
   case 39:
-
-/* Line 1806 of yacc.c  */
-#line 929 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 938 "parse.y"
     { ; }
     break;
 
   case 40:
-
-/* Line 1806 of yacc.c  */
-#line 930 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 939 "parse.y"
     { ; }
     break;
 
   case 41:
-
-/* Line 1806 of yacc.c  */
-#line 931 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 940 "parse.y"
     { ; }
     break;
 
   case 42:
-
-/* Line 1806 of yacc.c  */
-#line 932 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 941 "parse.y"
     { ; }
     break;
 
   case 43:
-
-/* Line 1806 of yacc.c  */
-#line 935 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 944 "parse.y"
     { the_scope = PUBLIC_SCOPE; }
     break;
 
   case 44:
-
-/* Line 1806 of yacc.c  */
-#line 936 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 945 "parse.y"
     { the_scope = PRIVATE_SCOPE; }
     break;
 
   case 45:
-
-/* Line 1806 of yacc.c  */
-#line 937 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 946 "parse.y"
     { the_scope = PROTECTED_SCOPE; }
     break;
 
   case 46:
-
-/* Line 1806 of yacc.c  */
-#line 938 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 947 "parse.y"
     { the_scope = CLASS_SCOPE; }
     break;
 
   case 47:
-
-/* Line 1806 of yacc.c  */
-#line 941 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 950 "parse.y"
     {
                        if (strcmp ((yyvsp[(1) - (2)].id), "destroywith") == 0) {
                                g_free ((yyvsp[(1) - (2)].id));
@@ -3050,9 +3004,8 @@ yyreduce:
     break;
 
   case 48:
-
-/* Line 1806 of yacc.c  */
-#line 961 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 970 "parse.y"
     {
                        if (strcmp ((yyvsp[(1) - (3)].id), "destroy") == 0) {
                                g_free((yyvsp[(1) - (3)].id));
@@ -3078,9 +3031,8 @@ yyreduce:
     break;
 
   case 49:
-
-/* Line 1806 of yacc.c  */
-#line 985 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 994 "parse.y"
     {
                        initializer = (yyvsp[(2) - (2)].id);
                        initializer_line = ccode_line;
@@ -3088,9 +3040,8 @@ yyreduce:
     break;
 
   case 50:
-
-/* Line 1806 of yacc.c  */
-#line 989 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 998 "parse.y"
     {
                        initializer = ((yyvsp[(3) - (3)].cbuf))->str;
                        initializer_line = ccode_line;
@@ -3099,37 +3050,32 @@ yyreduce:
     break;
 
   case 51:
-
-/* Line 1806 of yacc.c  */
-#line 997 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1006 "parse.y"
     { ; }
     break;
 
   case 52:
-
-/* Line 1806 of yacc.c  */
-#line 998 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1007 "parse.y"
     { ; }
     break;
 
   case 53:
-
-/* Line 1806 of yacc.c  */
-#line 999 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1008 "parse.y"
     { destructor = NULL; }
     break;
 
   case 54:
-
-/* Line 1806 of yacc.c  */
-#line 1000 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1009 "parse.y"
     { initializer = NULL; }
     break;
 
   case 55:
-
-/* Line 1806 of yacc.c  */
-#line 1001 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1010 "parse.y"
     {
                        if (strcmp ((yyvsp[(1) - (1)].id), "GladeXML") == 0) {
                                glade_widget = TRUE;
@@ -3141,9 +3087,8 @@ yyreduce:
     break;
 
   case 56:
-
-/* Line 1806 of yacc.c  */
-#line 1009 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1018 "parse.y"
     {
                        destructor = NULL;
                        initializer = NULL;
@@ -3151,27 +3096,24 @@ yyreduce:
     break;
 
   case 57:
-
-/* Line 1806 of yacc.c  */
-#line 1015 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1024 "parse.y"
     {
                        push_variable((yyvsp[(3) - (5)].id), the_scope,(yyvsp[(1) - (5)].line), NULL);
                                                }
     break;
 
   case 58:
-
-/* Line 1806 of yacc.c  */
-#line 1018 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1027 "parse.y"
     {
                        push_variable((yyvsp[(3) - (6)].id), the_scope, (yyvsp[(1) - (6)].line), (yyvsp[(4) - (6)].id));
                                                }
     break;
 
   case 59:
-
-/* Line 1806 of yacc.c  */
-#line 1023 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1032 "parse.y"
     {
                        Node *node = NULL;
                        if(strcmp((yyvsp[(6) - (12)].id),"get")==0 &&
@@ -3243,9 +3185,8 @@ yyreduce:
     break;
 
   case 60:
-
-/* Line 1806 of yacc.c  */
-#line 1091 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1100 "parse.y"
     {
                        Node *node = NULL;
                        if(strcmp((yyvsp[(6) - (9)].id), "get") == 0) {
@@ -3303,9 +3244,8 @@ yyreduce:
     break;
 
   case 61:
-
-/* Line 1806 of yacc.c  */
-#line 1145 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1154 "parse.y"
     {
                        Node *node;
                        char *get, *set = NULL;
@@ -3396,9 +3336,8 @@ yyreduce:
     break;
 
   case 62:
-
-/* Line 1806 of yacc.c  */
-#line 1234 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1243 "parse.y"
     {
                        if (strcmp ((yyvsp[(2) - (3)].id), "export")!=0) {
                                g_free ((yyvsp[(2) - (3)].id)); 
@@ -3410,18 +3349,16 @@ yyreduce:
     break;
 
   case 63:
-
-/* Line 1806 of yacc.c  */
-#line 1242 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1251 "parse.y"
     {
                        (yyval.id) = NULL;
                                                }
     break;
 
   case 64:
-
-/* Line 1806 of yacc.c  */
-#line 1247 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1256 "parse.y"
     {
                        ensure_property ();
                        node_set ((Node *)property,
@@ -3473,9 +3410,8 @@ yyreduce:
     break;
 
   case 65:
-
-/* Line 1806 of yacc.c  */
-#line 1295 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1304 "parse.y"
     {
                        ensure_property ();
                        node_set ((Node *)property,
@@ -3515,9 +3451,8 @@ yyreduce:
     break;
 
   case 66:
-
-/* Line 1806 of yacc.c  */
-#line 1331 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1340 "parse.y"
     {
                        ensure_property ();
                        node_set ((Node *)property,
@@ -3535,44 +3470,38 @@ yyreduce:
     break;
 
   case 67:
-
-/* Line 1806 of yacc.c  */
-#line 1347 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1356 "parse.y"
     { ; }
     break;
 
   case 68:
-
-/* Line 1806 of yacc.c  */
-#line 1348 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1357 "parse.y"
     { ; }
     break;
 
   case 69:
-
-/* Line 1806 of yacc.c  */
-#line 1351 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1360 "parse.y"
     { ; }
     break;
 
   case 70:
-
-/* Line 1806 of yacc.c  */
-#line 1352 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1361 "parse.y"
     { ; }
     break;
 
   case 71:
-
-/* Line 1806 of yacc.c  */
-#line 1355 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1364 "parse.y"
     { (yyval.id) = (yyvsp[(1) - (1)].id); }
     break;
 
   case 72:
-
-/* Line 1806 of yacc.c  */
-#line 1356 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1365 "parse.y"
     {
                        if (strcmp ((yyvsp[(1) - (4)].id), "_") != 0) {
                                g_free ((yyvsp[(1) - (4)].id));
@@ -3586,120 +3515,109 @@ yyreduce:
     break;
 
   case 73:
-
-/* Line 1806 of yacc.c  */
-#line 1368 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1377 "parse.y"
     { (yyval.id) = (yyvsp[(1) - (1)].id); }
     break;
 
   case 74:
-
-/* Line 1806 of yacc.c  */
-#line 1369 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1378 "parse.y"
     { (yyval.id) = (yyvsp[(1) - (1)].id); }
     break;
 
   case 75:
-
-/* Line 1806 of yacc.c  */
-#line 1372 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1381 "parse.y"
     {
                ensure_property ();
                node_set ((Node *)property,
-                         "nick:steal", (yyvsp[(3) - (3)].id),
+                         "canonical_name:steal", gob_str_delete_quotes((yyvsp[(3) - (3)].id)),
                          NULL);
                  }
     break;
 
   case 76:
-
-/* Line 1806 of yacc.c  */
-#line 1378 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1387 "parse.y"
     {
                ensure_property ();
                node_set ((Node *)property,
-                         "blurb:steal", (yyvsp[(3) - (3)].id),
+                         "nick:steal", (yyvsp[(3) - (3)].id),
                          NULL);
                  }
     break;
 
   case 77:
-
-/* Line 1806 of yacc.c  */
-#line 1384 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1393 "parse.y"
     {
                ensure_property ();
                node_set ((Node *)property,
-                         "maximum:steal", (yyvsp[(3) - (3)].id),
+                         "blurb:steal", (yyvsp[(3) - (3)].id),
                          NULL);
                  }
     break;
 
   case 78:
-
-/* Line 1806 of yacc.c  */
-#line 1390 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1399 "parse.y"
     {
                ensure_property ();
                node_set ((Node *)property,
-                         "minimum:steal", (yyvsp[(3) - (3)].id),
+                         "maximum:steal", (yyvsp[(3) - (3)].id),
                          NULL);
                  }
     break;
 
   case 79:
-
-/* Line 1806 of yacc.c  */
-#line 1396 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1405 "parse.y"
     {
                ensure_property ();
                node_set ((Node *)property,
-                         "default_value:steal", (yyvsp[(3) - (3)].id),
+                         "minimum:steal", (yyvsp[(3) - (3)].id),
                          NULL);
                  }
     break;
 
   case 80:
-
-/* Line 1806 of yacc.c  */
-#line 1402 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1411 "parse.y"
     {
                ensure_property ();
                node_set ((Node *)property,
-                         "flags:steal", (yyvsp[(3) - (3)].list),
+                         "default_value:steal", (yyvsp[(3) - (3)].id),
                          NULL);
                  }
     break;
 
   case 81:
-
-/* Line 1806 of yacc.c  */
-#line 1408 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1417 "parse.y"
     {
-               Type *type = pop_type ();
                ensure_property ();
                node_set ((Node *)property,
-                         "ptype:steal", type,
+                         "flags:steal", (yyvsp[(3) - (3)].list),
                          NULL);
                  }
     break;
 
   case 82:
-
-/* Line 1806 of yacc.c  */
-#line 1415 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1423 "parse.y"
     {
+               Type *type = pop_type ();
                ensure_property ();
                node_set ((Node *)property,
-                         "extra_gtktype:steal", (yyvsp[(3) - (3)].id),
+                         "ptype:steal", type,
                          NULL);
                  }
     break;
 
   case 83:
-
-/* Line 1806 of yacc.c  */
-#line 1421 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1430 "parse.y"
     {
                ensure_property ();
                node_set ((Node *)property,
@@ -3709,9 +3627,8 @@ yyreduce:
     break;
 
   case 84:
-
-/* Line 1806 of yacc.c  */
-#line 1427 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1436 "parse.y"
     {
                ensure_property ();
                node_set ((Node *)property,
@@ -3721,9 +3638,8 @@ yyreduce:
     break;
 
   case 85:
-
-/* Line 1806 of yacc.c  */
-#line 1433 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1442 "parse.y"
     {
                ensure_property ();
                node_set ((Node *)property,
@@ -3733,9 +3649,8 @@ yyreduce:
     break;
 
   case 86:
-
-/* Line 1806 of yacc.c  */
-#line 1439 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1448 "parse.y"
     {
                ensure_property ();
                node_set ((Node *)property,
@@ -3745,9 +3660,8 @@ yyreduce:
     break;
 
   case 87:
-
-/* Line 1806 of yacc.c  */
-#line 1445 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1454 "parse.y"
     {
                ensure_property ();
                node_set ((Node *)property,
@@ -3757,9 +3671,8 @@ yyreduce:
     break;
 
   case 88:
-
-/* Line 1806 of yacc.c  */
-#line 1451 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1460 "parse.y"
     {
                ensure_property ();
                node_set ((Node *)property,
@@ -3769,9 +3682,8 @@ yyreduce:
     break;
 
   case 89:
-
-/* Line 1806 of yacc.c  */
-#line 1457 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1466 "parse.y"
     {
                ensure_property ();
                node_set ((Node *)property,
@@ -3781,9 +3693,8 @@ yyreduce:
     break;
 
   case 90:
-
-/* Line 1806 of yacc.c  */
-#line 1463 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1472 "parse.y"
     {
                ensure_property ();
                node_set ((Node *)property,
@@ -3793,9 +3704,8 @@ yyreduce:
     break;
 
   case 91:
-
-/* Line 1806 of yacc.c  */
-#line 1469 "parse.y"
+/* Line 1792 of yacc.c  */
+#line 1478 "parse.y"
     {
                ensure_property ();
                node_set ((Node *)property,
@@ -3805,9 +3715,19 @@ yyreduce:
     break;
 
   case 92:
+/* Line 1792 of yacc.c  */
+#line 1484 "parse.y"
+    {
+               ensure_property ();
+               node_set ((Node *)property,
+                         "extra_gtktype:steal", (yyvsp[(3) - (3)].id),
+                         NULL);
+                 }
+    break;
 
-/* Line 1806 of yacc.c  */
-#line 1475 "parse.y"
+  case 93:
+/* Line 1792 of yacc.c  */
+#line 1490 "parse.y"
     {
                ensure_property ();
                if (strcmp ((yyvsp[(1) - (1)].id), "override") == 0) {
@@ -3833,10 +3753,9 @@ yyreduce:
                  }
     break;
 
-  case 93:
-
-/* Line 1806 of yacc.c  */
-#line 1500 "parse.y"
+  case 94:
+/* Line 1792 of yacc.c  */
+#line 1515 "parse.y"
     {
                        if(strcmp((yyvsp[(3) - (5)].id),"type")!=0) {
                                g_free((yyvsp[(1) - (5)].id));
@@ -3848,52 +3767,46 @@ yyreduce:
                                                }
     break;
 
-  case 94:
-
-/* Line 1806 of yacc.c  */
-#line 1509 "parse.y"
+  case 95:
+/* Line 1792 of yacc.c  */
+#line 1524 "parse.y"
     {
                        (yyval.id) = debool ((yyvsp[(1) - (1)].id));
                        typestack = g_list_prepend(typestack,NULL);
                                                }
     break;
 
-  case 95:
-
-/* Line 1806 of yacc.c  */
-#line 1515 "parse.y"
+  case 96:
+/* Line 1792 of yacc.c  */
+#line 1530 "parse.y"
     { (yyval.list) = (yyvsp[(2) - (3)].list); }
     break;
 
-  case 96:
-
-/* Line 1806 of yacc.c  */
-#line 1516 "parse.y"
+  case 97:
+/* Line 1792 of yacc.c  */
+#line 1531 "parse.y"
     { (yyval.list) = NULL; }
     break;
 
-  case 97:
-
-/* Line 1806 of yacc.c  */
-#line 1519 "parse.y"
+  case 98:
+/* Line 1792 of yacc.c  */
+#line 1534 "parse.y"
     {
                        (yyval.list) = g_list_append((yyvsp[(3) - (3)].list),(yyvsp[(1) - (3)].id));
                                                }
     break;
 
-  case 98:
-
-/* Line 1806 of yacc.c  */
-#line 1522 "parse.y"
+  case 99:
+/* Line 1792 of yacc.c  */
+#line 1537 "parse.y"
     {
                        (yyval.list) = g_list_append(NULL,(yyvsp[(1) - (1)].id));
                                                }
     break;
 
-  case 99:
-
-/* Line 1806 of yacc.c  */
-#line 1528 "parse.y"
+  case 100:
+/* Line 1792 of yacc.c  */
+#line 1543 "parse.y"
     {
                        Node *node = node_new (TYPE_NODE, 
                                               "name:steal", (yyvsp[(1) - (2)].id),
@@ -3903,11 +3816,10 @@ yyreduce:
                                                        }
     break;
 
-  case 100:
-
-/* Line 1806 of yacc.c  */
-#line 1535 "parse.y"
-    {
+  case 101:
+/* Line 1792 of yacc.c  */
+#line 1550 "parse.y"
+    {
                        Node *node = node_new (TYPE_NODE, 
                                               "name:steal", (yyvsp[(1) - (1)].id),
                                               NULL);
@@ -3915,58 +3827,52 @@ yyreduce:
                                                        }
     break;
 
-  case 101:
-
-/* Line 1806 of yacc.c  */
-#line 1544 "parse.y"
+  case 102:
+/* Line 1792 of yacc.c  */
+#line 1559 "parse.y"
     {
                        (yyval.id) = (yyvsp[(1) - (1)].id);
                                                        }
     break;
 
-  case 102:
-
-/* Line 1806 of yacc.c  */
-#line 1547 "parse.y"
+  case 103:
+/* Line 1792 of yacc.c  */
+#line 1562 "parse.y"
     {
                        (yyval.id) = (yyvsp[(1) - (1)].id);
                                                        }
     break;
 
-  case 103:
-
-/* Line 1806 of yacc.c  */
-#line 1550 "parse.y"
+  case 104:
+/* Line 1792 of yacc.c  */
+#line 1565 "parse.y"
     {
                        (yyval.id) = g_strconcat("const ", (yyvsp[(2) - (2)].id), NULL);
                        g_free((yyvsp[(2) - (2)].id));
                                                        }
     break;
 
-  case 104:
-
-/* Line 1806 of yacc.c  */
-#line 1554 "parse.y"
+  case 105:
+/* Line 1792 of yacc.c  */
+#line 1569 "parse.y"
     {
                        (yyval.id) = g_strconcat((yyvsp[(1) - (2)].id), " const", NULL);
                        g_free((yyvsp[(1) - (2)].id));
                                                        }
     break;
 
-  case 105:
-
-/* Line 1806 of yacc.c  */
-#line 1558 "parse.y"
+  case 106:
+/* Line 1792 of yacc.c  */
+#line 1573 "parse.y"
     {
                        (yyval.id) = g_strconcat((yyvsp[(1) - (2)].id), " ", (yyvsp[(2) - (2)].id), NULL);
                        g_free((yyvsp[(2) - (2)].id));
                                                        }
     break;
 
-  case 106:
-
-/* Line 1806 of yacc.c  */
-#line 1562 "parse.y"
+  case 107:
+/* Line 1792 of yacc.c  */
+#line 1577 "parse.y"
     {
                        (yyval.id) = g_strconcat("const ", (yyvsp[(2) - (3)].id), " ",
                                             (yyvsp[(3) - (3)].id), NULL);
@@ -3974,10 +3880,9 @@ yyreduce:
                                                        }
     break;
 
-  case 107:
-
-/* Line 1806 of yacc.c  */
-#line 1567 "parse.y"
+  case 108:
+/* Line 1792 of yacc.c  */
+#line 1582 "parse.y"
     {
                        (yyval.id) = g_strconcat((yyvsp[(1) - (3)].id), " ",
                                             (yyvsp[(2) - (3)].id), " const", NULL);
@@ -3985,20 +3890,18 @@ yyreduce:
                                                        }
     break;
 
-  case 108:
-
-/* Line 1806 of yacc.c  */
-#line 1575 "parse.y"
+  case 109:
+/* Line 1792 of yacc.c  */
+#line 1590 "parse.y"
     {
                        (yyval.id) = g_strconcat((yyvsp[(1) - (2)].id), " ", (yyvsp[(2) - (2)].id), NULL);
                        g_free((yyvsp[(2) - (2)].id));
                                                        }
     break;
 
-  case 109:
-
-/* Line 1806 of yacc.c  */
-#line 1579 "parse.y"
+  case 110:
+/* Line 1792 of yacc.c  */
+#line 1594 "parse.y"
     {
                        (yyval.id) = g_strconcat((yyvsp[(1) - (2)].id), " ", (yyvsp[(2) - (2)].id), NULL);
                        g_free((yyvsp[(1) - (2)].id));
@@ -4006,175 +3909,153 @@ yyreduce:
                                                        }
     break;
 
-  case 110:
-
-/* Line 1806 of yacc.c  */
-#line 1584 "parse.y"
+  case 111:
+/* Line 1792 of yacc.c  */
+#line 1599 "parse.y"
     {
                        (yyval.id) = g_strconcat("const ", (yyvsp[(2) - (2)].id), NULL);
                        g_free((yyvsp[(2) - (2)].id));
                                                        }
     break;
 
-  case 111:
-
-/* Line 1806 of yacc.c  */
-#line 1588 "parse.y"
+  case 112:
+/* Line 1792 of yacc.c  */
+#line 1603 "parse.y"
     {
                        (yyval.id) = (yyvsp[(1) - (1)].id);
                                                        }
     break;
 
-  case 112:
-
-/* Line 1806 of yacc.c  */
-#line 1591 "parse.y"
+  case 113:
+/* Line 1792 of yacc.c  */
+#line 1606 "parse.y"
     {
                        (yyval.id) = g_strconcat((yyvsp[(1) - (2)].id), " const", NULL);
                        g_free((yyvsp[(1) - (2)].id));
                                                        }
     break;
 
-  case 113:
-
-/* Line 1806 of yacc.c  */
-#line 1595 "parse.y"
+  case 114:
+/* Line 1792 of yacc.c  */
+#line 1610 "parse.y"
     {
                        (yyval.id) = g_strdup((yyvsp[(1) - (1)].id));
                                                        }
     break;
 
-  case 114:
-
-/* Line 1806 of yacc.c  */
-#line 1598 "parse.y"
+  case 115:
+/* Line 1792 of yacc.c  */
+#line 1613 "parse.y"
     {
                        (yyval.id) = g_strconcat((yyvsp[(1) - (2)].id), " const", NULL);
                                                        }
     break;
 
-  case 115:
-
-/* Line 1806 of yacc.c  */
-#line 1603 "parse.y"
+  case 116:
+/* Line 1792 of yacc.c  */
+#line 1618 "parse.y"
     { (yyval.id) = "void"; }
     break;
 
-  case 116:
-
-/* Line 1806 of yacc.c  */
-#line 1604 "parse.y"
+  case 117:
+/* Line 1792 of yacc.c  */
+#line 1619 "parse.y"
     { (yyval.id) = "char"; }
     break;
 
-  case 117:
-
-/* Line 1806 of yacc.c  */
-#line 1605 "parse.y"
+  case 118:
+/* Line 1792 of yacc.c  */
+#line 1620 "parse.y"
     { (yyval.id) = "short"; }
     break;
 
-  case 118:
-
-/* Line 1806 of yacc.c  */
-#line 1606 "parse.y"
+  case 119:
+/* Line 1792 of yacc.c  */
+#line 1621 "parse.y"
     { (yyval.id) = "int"; }
     break;
 
-  case 119:
-
-/* Line 1806 of yacc.c  */
-#line 1607 "parse.y"
+  case 120:
+/* Line 1792 of yacc.c  */
+#line 1622 "parse.y"
     { (yyval.id) = "long"; }
     break;
 
-  case 120:
-
-/* Line 1806 of yacc.c  */
-#line 1608 "parse.y"
+  case 121:
+/* Line 1792 of yacc.c  */
+#line 1623 "parse.y"
     { (yyval.id) = "float"; }
     break;
 
-  case 121:
-
-/* Line 1806 of yacc.c  */
-#line 1609 "parse.y"
+  case 122:
+/* Line 1792 of yacc.c  */
+#line 1624 "parse.y"
     { (yyval.id) = "double"; }
     break;
 
-  case 122:
-
-/* Line 1806 of yacc.c  */
-#line 1610 "parse.y"
+  case 123:
+/* Line 1792 of yacc.c  */
+#line 1625 "parse.y"
     { (yyval.id) = "signed"; }
     break;
 
-  case 123:
-
-/* Line 1806 of yacc.c  */
-#line 1611 "parse.y"
+  case 124:
+/* Line 1792 of yacc.c  */
+#line 1626 "parse.y"
     { (yyval.id) = "unsigned"; }
     break;
 
-  case 124:
-
-/* Line 1806 of yacc.c  */
-#line 1614 "parse.y"
+  case 125:
+/* Line 1792 of yacc.c  */
+#line 1629 "parse.y"
     { (yyval.id) = "struct"; }
     break;
 
-  case 125:
-
-/* Line 1806 of yacc.c  */
-#line 1615 "parse.y"
+  case 126:
+/* Line 1792 of yacc.c  */
+#line 1630 "parse.y"
     { (yyval.id) = "union"; }
     break;
 
-  case 126:
-
-/* Line 1806 of yacc.c  */
-#line 1616 "parse.y"
+  case 127:
+/* Line 1792 of yacc.c  */
+#line 1631 "parse.y"
     { (yyval.id) = "enum"; }
     break;
 
-  case 127:
-
-/* Line 1806 of yacc.c  */
-#line 1619 "parse.y"
+  case 128:
+/* Line 1792 of yacc.c  */
+#line 1634 "parse.y"
     { (yyval.id) = g_strdup("*"); }
     break;
 
-  case 128:
-
-/* Line 1806 of yacc.c  */
-#line 1620 "parse.y"
+  case 129:
+/* Line 1792 of yacc.c  */
+#line 1635 "parse.y"
     { (yyval.id) = g_strdup("* const"); }
     break;
 
-  case 129:
-
-/* Line 1806 of yacc.c  */
-#line 1621 "parse.y"
+  case 130:
+/* Line 1792 of yacc.c  */
+#line 1636 "parse.y"
     {
                                (yyval.id) = g_strconcat("*", (yyvsp[(2) - (2)].id), NULL);
                                g_free((yyvsp[(2) - (2)].id));
                                        }
     break;
 
-  case 130:
-
-/* Line 1806 of yacc.c  */
-#line 1625 "parse.y"
+  case 131:
+/* Line 1792 of yacc.c  */
+#line 1640 "parse.y"
     {
                                (yyval.id) = g_strconcat("* const", (yyvsp[(3) - (3)].id), NULL);
                                g_free((yyvsp[(3) - (3)].id));
                                        }
     break;
 
-  case 131:
-
-/* Line 1806 of yacc.c  */
-#line 1632 "parse.y"
+  case 132:
+/* Line 1792 of yacc.c  */
+#line 1647 "parse.y"
     {
                        if(strcmp((yyvsp[(1) - (2)].id), "first")==0)
                                (yyval.sigtype) = SIGNAL_FIRST_METHOD;
@@ -4189,19 +4070,17 @@ yyreduce:
                                        }
     break;
 
-  case 132:
-
-/* Line 1806 of yacc.c  */
-#line 1644 "parse.y"
+  case 133:
+/* Line 1792 of yacc.c  */
+#line 1659 "parse.y"
     {
                        (yyval.sigtype) = SIGNAL_LAST_METHOD;
                                        }
     break;
 
-  case 133:
-
-/* Line 1806 of yacc.c  */
-#line 1650 "parse.y"
+  case 134:
+/* Line 1792 of yacc.c  */
+#line 1665 "parse.y"
     {
                        if(strcmp((yyvsp[(2) - (3)].id),"first")==0)
                                (yyval.sigtype) = SIGNAL_FIRST_METHOD;
@@ -4216,10 +4095,9 @@ yyreduce:
                                        }
     break;
 
-  case 134:
-
-/* Line 1806 of yacc.c  */
-#line 1662 "parse.y"
+  case 135:
+/* Line 1792 of yacc.c  */
+#line 1677 "parse.y"
     {
                        if(strcmp((yyvsp[(1) - (3)].id),"first")==0)
                                (yyval.sigtype) = SIGNAL_FIRST_METHOD;
@@ -4234,70 +4112,71 @@ yyreduce:
                                        }
     break;
 
-  case 135:
-
-/* Line 1806 of yacc.c  */
-#line 1674 "parse.y"
+  case 136:
+/* Line 1792 of yacc.c  */
+#line 1689 "parse.y"
     {
                        (yyval.sigtype) = SIGNAL_LAST_METHOD;
                                        }
     break;
 
-  case 136:
-
-/* Line 1806 of yacc.c  */
-#line 1677 "parse.y"
+  case 137:
+/* Line 1792 of yacc.c  */
+#line 1692 "parse.y"
     {
                        /* the_scope was default thus public */
                        the_scope = PUBLIC_SCOPE;
                                        }
     break;
 
-  case 137:
-
-/* Line 1806 of yacc.c  */
-#line 1683 "parse.y"
+  case 138:
+/* Line 1792 of yacc.c  */
+#line 1698 "parse.y"
     {
                        gtktypes = g_list_prepend(gtktypes, debool ((yyvsp[(1) - (4)].id)));
                                                }
     break;
 
-  case 138:
+  case 139:
+/* Line 1792 of yacc.c  */
+#line 1701 "parse.y"
+    {
+                       gtktypes = g_list_prepend(gtktypes, debool ((yyvsp[(1) - (5)].id)));
+                       signal_name=(yyvsp[(2) - (5)].id);
+                                               }
+    break;
 
-/* Line 1806 of yacc.c  */
-#line 1688 "parse.y"
+  case 140:
+/* Line 1792 of yacc.c  */
+#line 1707 "parse.y"
     {
                        gtktypes = g_list_append(gtktypes, debool ((yyvsp[(3) - (3)].id)));
                                                }
     break;
 
-  case 139:
-
-/* Line 1806 of yacc.c  */
-#line 1691 "parse.y"
+  case 141:
+/* Line 1792 of yacc.c  */
+#line 1710 "parse.y"
     { 
                        gtktypes = g_list_append(gtktypes, debool ((yyvsp[(1) - (1)].id)));
                                                        }
     break;
 
-  case 140:
-
-/* Line 1806 of yacc.c  */
-#line 1696 "parse.y"
+  case 142:
+/* Line 1792 of yacc.c  */
+#line 1715 "parse.y"
     { (yyval.cbuf) = (yyvsp[(2) - (2)].cbuf); }
     break;
 
-  case 141:
-
-/* Line 1806 of yacc.c  */
-#line 1697 "parse.y"
+  case 143:
+/* Line 1792 of yacc.c  */
+#line 1716 "parse.y"
     { (yyval.cbuf) = NULL; }
     break;
 
-  case 142:
-
-/* Line 1806 of yacc.c  */
-#line 1701 "parse.y"
+  case 144:
+/* Line 1792 of yacc.c  */
+#line 1720 "parse.y"
     {
                        if(!has_self) {
                                yyerror(_("signal without 'self' as "
@@ -4323,10 +4202,9 @@ yyreduce:
                                                                        }
     break;
 
-  case 143:
-
-/* Line 1806 of yacc.c  */
-#line 1724 "parse.y"
+  case 145:
+/* Line 1792 of yacc.c  */
+#line 1743 "parse.y"
     {
                        if(!has_self) {
                                yyerror(_("signal without 'self' as "
@@ -4352,10 +4230,9 @@ yyreduce:
                                                                        }
     break;
 
-  case 144:
-
-/* Line 1806 of yacc.c  */
-#line 1747 "parse.y"
+  case 146:
+/* Line 1792 of yacc.c  */
+#line 1766 "parse.y"
     {
                        if(!has_self) {
                                yyerror(_("virtual method without 'self' as "
@@ -4381,10 +4258,9 @@ yyreduce:
                                                                        }
     break;
 
-  case 145:
-
-/* Line 1806 of yacc.c  */
-#line 1770 "parse.y"
+  case 147:
+/* Line 1792 of yacc.c  */
+#line 1789 "parse.y"
     {
                        if(!has_self) {
                                yyerror(_("virtual method without 'self' as "
@@ -4410,10 +4286,9 @@ yyreduce:
                                                                        }
     break;
 
-  case 146:
-
-/* Line 1806 of yacc.c  */
-#line 1793 "parse.y"
+  case 148:
+/* Line 1792 of yacc.c  */
+#line 1812 "parse.y"
     {
                        if(!has_self) {
                                yyerror(_("virtual method without 'szelf' as "
@@ -4434,10 +4309,9 @@ yyreduce:
                                                                        }
     break;
 
-  case 147:
-
-/* Line 1806 of yacc.c  */
-#line 1811 "parse.y"
+  case 149:
+/* Line 1792 of yacc.c  */
+#line 1830 "parse.y"
     {
                        if (funcattrs != NULL) {
                                char *error = g_strdup_printf
@@ -4453,10 +4327,9 @@ yyreduce:
                                                                        }
     break;
 
-  case 148:
-
-/* Line 1806 of yacc.c  */
-#line 1824 "parse.y"
+  case 150:
+/* Line 1792 of yacc.c  */
+#line 1843 "parse.y"
     {
                        if(the_scope == CLASS_SCOPE) {
                                yyerror(_("a method cannot be of class scope"));
@@ -4469,10 +4342,9 @@ yyreduce:
                                                                }
     break;
 
-  case 149:
-
-/* Line 1806 of yacc.c  */
-#line 1834 "parse.y"
+  case 151:
+/* Line 1792 of yacc.c  */
+#line 1853 "parse.y"
     {
                        if(strcmp((yyvsp[(1) - (5)].id), "init")==0) {
                                push_init_arg((yyvsp[(3) - (5)].id),FALSE);
@@ -4513,10 +4385,9 @@ yyreduce:
                                                }
     break;
 
-  case 150:
-
-/* Line 1806 of yacc.c  */
-#line 1874 "parse.y"
+  case 152:
+/* Line 1792 of yacc.c  */
+#line 1893 "parse.y"
     {
                        g_free(funcattrs); funcattrs = NULL;
                        g_free(onerror); onerror = NULL;
@@ -4531,10 +4402,9 @@ yyreduce:
                                        }
     break;
 
-  case 151:
-
-/* Line 1806 of yacc.c  */
-#line 1886 "parse.y"
+  case 153:
+/* Line 1792 of yacc.c  */
+#line 1905 "parse.y"
     {
                        g_free(funcattrs); funcattrs = NULL;
                        g_free(onerror); onerror = NULL;
@@ -4557,10 +4427,9 @@ yyreduce:
                                                }
     break;
 
-  case 152:
-
-/* Line 1806 of yacc.c  */
-#line 1906 "parse.y"
+  case 154:
+/* Line 1792 of yacc.c  */
+#line 1925 "parse.y"
     {
                        g_free(funcattrs); funcattrs = NULL;
                        g_free(onerror); onerror = NULL;
@@ -4594,10 +4463,9 @@ yyreduce:
                                                }
     break;
 
-  case 153:
-
-/* Line 1806 of yacc.c  */
-#line 1937 "parse.y"
+  case 155:
+/* Line 1792 of yacc.c  */
+#line 1956 "parse.y"
     {
                        g_free(funcattrs); funcattrs = NULL;
                        g_free(onerror); onerror = NULL;
@@ -4605,34 +4473,30 @@ yyreduce:
                                        }
     break;
 
-  case 154:
-
-/* Line 1806 of yacc.c  */
-#line 1944 "parse.y"
+  case 156:
+/* Line 1792 of yacc.c  */
+#line 1963 "parse.y"
     { (yyval.id) = (yyvsp[(1) - (1)].id); }
     break;
 
-  case 155:
-
-/* Line 1806 of yacc.c  */
-#line 1945 "parse.y"
+  case 157:
+/* Line 1792 of yacc.c  */
+#line 1964 "parse.y"
     {
                        (yyval.id) = ((yyvsp[(2) - (2)].cbuf))->str;
                        g_string_free((yyvsp[(2) - (2)].cbuf), FALSE);
                                        }
     break;
 
-  case 156:
-
-/* Line 1806 of yacc.c  */
-#line 1951 "parse.y"
+  case 158:
+/* Line 1792 of yacc.c  */
+#line 1970 "parse.y"
     { vararg = FALSE; has_self = FALSE; }
     break;
 
-  case 157:
-
-/* Line 1806 of yacc.c  */
-#line 1952 "parse.y"
+  case 159:
+/* Line 1792 of yacc.c  */
+#line 1971 "parse.y"
     {
                        vararg = FALSE;
                        has_self = TRUE;
@@ -4646,10 +4510,9 @@ yyreduce:
                                                }
     break;
 
-  case 158:
-
-/* Line 1806 of yacc.c  */
-#line 1963 "parse.y"
+  case 160:
+/* Line 1792 of yacc.c  */
+#line 1982 "parse.y"
     {
                        vararg = FALSE;
                        has_self = TRUE;
@@ -4663,10 +4526,9 @@ yyreduce:
                                                }
     break;
 
-  case 159:
-
-/* Line 1806 of yacc.c  */
-#line 1974 "parse.y"
+  case 161:
+/* Line 1792 of yacc.c  */
+#line 1993 "parse.y"
     {
                        vararg = FALSE;
                        has_self = TRUE;
@@ -4680,10 +4542,9 @@ yyreduce:
                                                }
     break;
 
-  case 160:
-
-/* Line 1806 of yacc.c  */
-#line 1985 "parse.y"
+  case 162:
+/* Line 1792 of yacc.c  */
+#line 2004 "parse.y"
     {
                        has_self = TRUE;
                        if(strcmp((yyvsp[(1) - (3)].id),"self")==0)
@@ -4696,10 +4557,9 @@ yyreduce:
                                        }
     break;
 
-  case 161:
-
-/* Line 1806 of yacc.c  */
-#line 1995 "parse.y"
+  case 163:
+/* Line 1792 of yacc.c  */
+#line 2014 "parse.y"
     {
                        has_self = TRUE;
                        if(strcmp((yyvsp[(1) - (4)].id),"self")==0)
@@ -4712,10 +4572,9 @@ yyreduce:
                                        }
     break;
 
-  case 162:
-
-/* Line 1806 of yacc.c  */
-#line 2005 "parse.y"
+  case 164:
+/* Line 1792 of yacc.c  */
+#line 2024 "parse.y"
     {
                        has_self = TRUE;
                        if(strcmp((yyvsp[(2) - (4)].id),"self")==0)
@@ -4728,63 +4587,55 @@ yyreduce:
                                        }
     break;
 
-  case 163:
-
-/* Line 1806 of yacc.c  */
-#line 2015 "parse.y"
+  case 165:
+/* Line 1792 of yacc.c  */
+#line 2034 "parse.y"
     { has_self = FALSE; }
     break;
 
-  case 164:
-
-/* Line 1806 of yacc.c  */
-#line 2018 "parse.y"
+  case 166:
+/* Line 1792 of yacc.c  */
+#line 2037 "parse.y"
     { vararg = TRUE; }
     break;
 
-  case 165:
-
-/* Line 1806 of yacc.c  */
-#line 2019 "parse.y"
+  case 167:
+/* Line 1792 of yacc.c  */
+#line 2038 "parse.y"
     { vararg = FALSE; }
     break;
 
-  case 166:
-
-/* Line 1806 of yacc.c  */
-#line 2022 "parse.y"
+  case 168:
+/* Line 1792 of yacc.c  */
+#line 2041 "parse.y"
     { ; }
     break;
 
-  case 167:
-
-/* Line 1806 of yacc.c  */
-#line 2023 "parse.y"
+  case 169:
+/* Line 1792 of yacc.c  */
+#line 2042 "parse.y"
     { ; }
     break;
 
-  case 168:
-
-/* Line 1806 of yacc.c  */
-#line 2026 "parse.y"
+  case 170:
+/* Line 1792 of yacc.c  */
+#line 2045 "parse.y"
     {
                        push_funcarg((yyvsp[(2) - (2)].id),NULL);
                                                                }
     break;
 
-  case 169:
-
-/* Line 1806 of yacc.c  */
-#line 2029 "parse.y"
+  case 171:
+/* Line 1792 of yacc.c  */
+#line 2048 "parse.y"
     {
                        push_funcarg((yyvsp[(2) - (3)].id),(yyvsp[(3) - (3)].id));
                                                                }
     break;
 
-  case 170:
-
-/* Line 1806 of yacc.c  */
-#line 2032 "parse.y"
+  case 172:
+/* Line 1792 of yacc.c  */
+#line 2051 "parse.y"
     {
                        if(strcmp((yyvsp[(4) - (6)].id),"check")!=0) {
                                yyerror(_("parse error"));
@@ -4795,10 +4646,9 @@ yyreduce:
                                                                }
     break;
 
-  case 171:
-
-/* Line 1806 of yacc.c  */
-#line 2040 "parse.y"
+  case 173:
+/* Line 1792 of yacc.c  */
+#line 2059 "parse.y"
     {
                        if(strcmp((yyvsp[(5) - (7)].id),"check")!=0) {
                                yyerror(_("parse error"));
@@ -4809,24 +4659,21 @@ yyreduce:
                                                                }
     break;
 
-  case 172:
-
-/* Line 1806 of yacc.c  */
-#line 2050 "parse.y"
+  case 174:
+/* Line 1792 of yacc.c  */
+#line 2069 "parse.y"
     { ; }
     break;
 
-  case 173:
-
-/* Line 1806 of yacc.c  */
-#line 2051 "parse.y"
+  case 175:
+/* Line 1792 of yacc.c  */
+#line 2070 "parse.y"
     { ; }
     break;
 
-  case 174:
-
-/* Line 1806 of yacc.c  */
-#line 2054 "parse.y"
+  case 176:
+/* Line 1792 of yacc.c  */
+#line 2073 "parse.y"
     {
                        if(strcmp((yyvsp[(1) - (1)].id),"type")==0) {
                                Node *node = node_new (CHECK_NODE,
@@ -4846,10 +4693,9 @@ yyreduce:
                                        }
     break;
 
-  case 175:
-
-/* Line 1806 of yacc.c  */
-#line 2071 "parse.y"
+  case 177:
+/* Line 1792 of yacc.c  */
+#line 2090 "parse.y"
     {
                        Node *node = node_new (CHECK_NODE,
                                               "chtype", GT_CHECK,
@@ -4859,10 +4705,9 @@ yyreduce:
                                        }
     break;
 
-  case 176:
-
-/* Line 1806 of yacc.c  */
-#line 2078 "parse.y"
+  case 178:
+/* Line 1792 of yacc.c  */
+#line 2097 "parse.y"
     {
                        Node *node = node_new (CHECK_NODE,
                                               "chtype", LT_CHECK,
@@ -4872,10 +4717,9 @@ yyreduce:
                                        }
     break;
 
-  case 177:
-
-/* Line 1806 of yacc.c  */
-#line 2085 "parse.y"
+  case 179:
+/* Line 1792 of yacc.c  */
+#line 2104 "parse.y"
     {
                        Node *node = node_new (CHECK_NODE,
                                               "chtype", GE_CHECK,
@@ -4885,10 +4729,9 @@ yyreduce:
                                        }
     break;
 
-  case 178:
-
-/* Line 1806 of yacc.c  */
-#line 2092 "parse.y"
+  case 180:
+/* Line 1792 of yacc.c  */
+#line 2111 "parse.y"
     {
                        Node *node = node_new (CHECK_NODE,
                                               "chtype", LE_CHECK,
@@ -4898,10 +4741,9 @@ yyreduce:
                                        }
     break;
 
-  case 179:
-
-/* Line 1806 of yacc.c  */
-#line 2099 "parse.y"
+  case 181:
+/* Line 1792 of yacc.c  */
+#line 2118 "parse.y"
     {
                        Node *node = node_new (CHECK_NODE,
                                               "chtype", EQ_CHECK,
@@ -4911,10 +4753,9 @@ yyreduce:
                                        }
     break;
 
-  case 180:
-
-/* Line 1806 of yacc.c  */
-#line 2106 "parse.y"
+  case 182:
+/* Line 1792 of yacc.c  */
+#line 2125 "parse.y"
     {
                        Node *node = node_new (CHECK_NODE,
                                               "chtype", NE_CHECK,
@@ -4924,10 +4765,9 @@ yyreduce:
                                        }
     break;
 
-  case 181:
-
-/* Line 1806 of yacc.c  */
-#line 2115 "parse.y"
+  case 183:
+/* Line 1792 of yacc.c  */
+#line 2134 "parse.y"
     {
                        Node *node = node_new (ENUMDEF_NODE,
                                               "etype:steal", (yyvsp[(6) - (7)].id),
@@ -4939,10 +4779,9 @@ yyreduce:
                        }
     break;
 
-  case 182:
-
-/* Line 1806 of yacc.c  */
-#line 2124 "parse.y"
+  case 184:
+/* Line 1792 of yacc.c  */
+#line 2143 "parse.y"
     {
                        Node *node = node_new (ENUMDEF_NODE,
                                               "etype:steal", (yyvsp[(7) - (8)].id),
@@ -4954,24 +4793,21 @@ yyreduce:
                        }
     break;
 
-  case 183:
-
-/* Line 1806 of yacc.c  */
-#line 2135 "parse.y"
+  case 185:
+/* Line 1792 of yacc.c  */
+#line 2154 "parse.y"
     {;}
     break;
 
-  case 184:
-
-/* Line 1806 of yacc.c  */
-#line 2136 "parse.y"
+  case 186:
+/* Line 1792 of yacc.c  */
+#line 2155 "parse.y"
     {;}
     break;
 
-  case 185:
-
-/* Line 1806 of yacc.c  */
-#line 2139 "parse.y"
+  case 187:
+/* Line 1792 of yacc.c  */
+#line 2158 "parse.y"
     {
                        Node *node;
                        char *num = (yyvsp[(3) - (3)].id);
@@ -4994,10 +4830,9 @@ yyreduce:
                        }
     break;
 
-  case 186:
-
-/* Line 1806 of yacc.c  */
-#line 2159 "parse.y"
+  case 188:
+/* Line 1792 of yacc.c  */
+#line 2178 "parse.y"
     {
                        Node *node;
 
@@ -5008,10 +4843,9 @@ yyreduce:
        }
     break;
 
-  case 187:
-
-/* Line 1806 of yacc.c  */
-#line 2169 "parse.y"
+  case 189:
+/* Line 1792 of yacc.c  */
+#line 2188 "parse.y"
     {
                        Node *node = node_new (FLAGS_NODE,
                                               "ftype:steal", (yyvsp[(6) - (7)].id),
@@ -5023,10 +4857,9 @@ yyreduce:
                        }
     break;
 
-  case 188:
-
-/* Line 1806 of yacc.c  */
-#line 2178 "parse.y"
+  case 190:
+/* Line 1792 of yacc.c  */
+#line 2197 "parse.y"
     {
                        Node *node = node_new (FLAGS_NODE,
                                               "ftype:steal", (yyvsp[(7) - (8)].id),
@@ -5038,28 +4871,25 @@ yyreduce:
                        }
     break;
 
-  case 189:
-
-/* Line 1806 of yacc.c  */
-#line 2189 "parse.y"
+  case 191:
+/* Line 1792 of yacc.c  */
+#line 2208 "parse.y"
     {
                        flag_vals = g_list_append (flag_vals, (yyvsp[(3) - (3)].id));
                }
     break;
 
-  case 190:
-
-/* Line 1806 of yacc.c  */
-#line 2192 "parse.y"
+  case 192:
+/* Line 1792 of yacc.c  */
+#line 2211 "parse.y"
     {
                        flag_vals = g_list_append (flag_vals, (yyvsp[(1) - (1)].id));
                }
     break;
 
-  case 191:
-
-/* Line 1806 of yacc.c  */
-#line 2197 "parse.y"
+  case 193:
+/* Line 1792 of yacc.c  */
+#line 2216 "parse.y"
     {
                        Node *node = node_new (ERROR_NODE,
                                               "etype:steal", (yyvsp[(6) - (7)].id),
@@ -5071,10 +4901,9 @@ yyreduce:
                        }
     break;
 
-  case 192:
-
-/* Line 1806 of yacc.c  */
-#line 2206 "parse.y"
+  case 194:
+/* Line 1792 of yacc.c  */
+#line 2225 "parse.y"
     {
                        Node *node = node_new (ERROR_NODE,
                                               "etype:steal", (yyvsp[(7) - (8)].id),
@@ -5086,59 +4915,52 @@ yyreduce:
                        }
     break;
 
-  case 193:
-
-/* Line 1806 of yacc.c  */
-#line 2217 "parse.y"
+  case 195:
+/* Line 1792 of yacc.c  */
+#line 2236 "parse.y"
     {
                        error_vals = g_list_append (error_vals, (yyvsp[(3) - (3)].id));
                }
     break;
 
-  case 194:
-
-/* Line 1806 of yacc.c  */
-#line 2220 "parse.y"
+  case 196:
+/* Line 1792 of yacc.c  */
+#line 2239 "parse.y"
     {
                        error_vals = g_list_append (error_vals, (yyvsp[(1) - (1)].id));
                }
     break;
 
-  case 195:
-
-/* Line 1806 of yacc.c  */
-#line 2226 "parse.y"
+  case 197:
+/* Line 1792 of yacc.c  */
+#line 2245 "parse.y"
     { (yyval.id) = (yyvsp[(1) - (1)].id); }
     break;
 
-  case 196:
-
-/* Line 1806 of yacc.c  */
-#line 2227 "parse.y"
+  case 198:
+/* Line 1792 of yacc.c  */
+#line 2246 "parse.y"
     {
                        (yyval.id) = g_strconcat("-",(yyvsp[(2) - (2)].id),NULL);
                        g_free((yyvsp[(2) - (2)].id));
                                        }
     break;
 
-  case 197:
-
-/* Line 1806 of yacc.c  */
-#line 2231 "parse.y"
+  case 199:
+/* Line 1792 of yacc.c  */
+#line 2250 "parse.y"
     { (yyval.id) = (yyvsp[(1) - (1)].id); }
     break;
 
-  case 198:
-
-/* Line 1806 of yacc.c  */
-#line 2232 "parse.y"
+  case 200:
+/* Line 1792 of yacc.c  */
+#line 2251 "parse.y"
     { (yyval.id) = (yyvsp[(1) - (1)].id); }
     break;
 
 
-
-/* Line 1806 of yacc.c  */
-#line 5142 "parse.c"
+/* Line 1792 of yacc.c  */
+#line 4964 "parse.c"
       default: break;
     }
   /* User semantic actions sometimes alter yychar, and that requires
@@ -5301,7 +5123,9 @@ yyerrlab1:
       YY_STACK_PRINT (yyss, yyssp);
     }
 
+  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
   *++yyvsp = yylval;
+  YY_IGNORE_MAYBE_UNINITIALIZED_END
 
 
   /* Shift the error token.  */
@@ -5325,7 +5149,7 @@ yyabortlab:
   yyresult = 1;
   goto yyreturn;
 
-#if !defined(yyoverflow) || YYERROR_VERBOSE
+#if !defined yyoverflow || YYERROR_VERBOSE
 /*-------------------------------------------------.
 | yyexhaustedlab -- memory exhaustion comes here.  |
 `-------------------------------------------------*/
@@ -5367,8 +5191,6 @@ yyreturn:
 }
 
 
-
-/* Line 2067 of yacc.c  */
-#line 2235 "parse.y"
-
+/* Line 2055 of yacc.c  */
+#line 2254 "parse.y"
 
index 0ecf7235142985a4b0ce6538282678be550ac2e9..e07616e8528562b2394fc65905be671a79650562 100644 (file)
@@ -1,8 +1,8 @@
-/* A Bison parser, made by GNU Bison 2.5.  */
+/* A Bison parser, made by GNU Bison 2.7.  */
 
 /* Bison interface for Yacc-like parsers in C
    
-      Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc.
+      Copyright (C) 1984, 1989-1990, 2000-2012 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
    This special exception was added by the Free Software Foundation in
    version 2.2 of Bison.  */
 
+#ifndef YY_YY_PARSE_H_INCLUDED
+# define YY_YY_PARSE_H_INCLUDED
+/* Enabling traces.  */
+#ifndef YYDEBUG
+# define YYDEBUG 1
+#endif
+#if YYDEBUG
+extern int yydebug;
+#endif
 
 /* Tokens.  */
 #ifndef YYTOKENTYPE
      VIRTUAL = 294,
      SIGNAL = 295,
      OVERRIDE = 296,
-     NICK = 297,
-     BLURB = 298,
-     MAXIMUM = 299,
-     MINIMUM = 300,
-     DEFAULT_VALUE = 301,
-     ERROR = 302,
-     FLAGS = 303,
-     TYPE = 304,
-     FLAGS_TYPE = 305,
-     ENUM_TYPE = 306,
-     PARAM_TYPE = 307,
-     BOXED_TYPE = 308,
-     OBJECT_TYPE = 309
+     NAME = 297,
+     NICK = 298,
+     BLURB = 299,
+     MAXIMUM = 300,
+     MINIMUM = 301,
+     DEFAULT_VALUE = 302,
+     ERROR = 303,
+     FLAGS = 304,
+     TYPE = 305,
+     FLAGS_TYPE = 306,
+     ENUM_TYPE = 307,
+     PARAM_TYPE = 308,
+     BOXED_TYPE = 309,
+     OBJECT_TYPE = 310
    };
 #endif
 /* Tokens.  */
 #define VIRTUAL 294
 #define SIGNAL 295
 #define OVERRIDE 296
-#define NICK 297
-#define BLURB 298
-#define MAXIMUM 299
-#define MINIMUM 300
-#define DEFAULT_VALUE 301
-#define ERROR 302
-#define FLAGS 303
-#define TYPE 304
-#define FLAGS_TYPE 305
-#define ENUM_TYPE 306
-#define PARAM_TYPE 307
-#define BOXED_TYPE 308
-#define OBJECT_TYPE 309
-
+#define NAME 297
+#define NICK 298
+#define BLURB 299
+#define MAXIMUM 300
+#define MINIMUM 301
+#define DEFAULT_VALUE 302
+#define ERROR 303
+#define FLAGS 304
+#define TYPE 305
+#define FLAGS_TYPE 306
+#define ENUM_TYPE 307
+#define PARAM_TYPE 308
+#define BOXED_TYPE 309
+#define OBJECT_TYPE 310
 
 
 
 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
 typedef union YYSTYPE
 {
-
-/* Line 2068 of yacc.c  */
-#line 683 "parse.y"
+/* Line 2058 of yacc.c  */
+#line 692 "parse.y"
 
        char *id;
        GString *cbuf;
@@ -162,9 +171,8 @@ typedef union YYSTYPE
        int sigtype;
 
 
-
-/* Line 2068 of yacc.c  */
-#line 168 "parse.h"
+/* Line 2058 of yacc.c  */
+#line 176 "parse.h"
 } YYSTYPE;
 # define YYSTYPE_IS_TRIVIAL 1
 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
@@ -173,4 +181,18 @@ typedef union YYSTYPE
 
 extern YYSTYPE yylval;
 
+#ifdef YYPARSE_PARAM
+#if defined __STDC__ || defined __cplusplus
+int yyparse (void *YYPARSE_PARAM);
+#else
+int yyparse ();
+#endif
+#else /* ! YYPARSE_PARAM */
+#if defined __STDC__ || defined __cplusplus
+int yyparse (void);
+#else
+int yyparse ();
+#endif
+#endif /* ! YYPARSE_PARAM */
 
+#endif /* !YY_YY_PARSE_H_INCLUDED  */
index 5c8cc98a74d6679da35d49f59083c0814528810c..1831ad067cd6eb8d7fae0d1b351bfd24142c93a8 100644 (file)
@@ -70,6 +70,7 @@ static char *onerror = NULL;
 static char *defreturn = NULL;
 
 static GList *gtktypes = NULL;
+static char *signal_name=NULL;
 
 static Property *property = NULL;
 
@@ -202,6 +203,13 @@ push_function (int scope, int method, char *oid, char *id,
        } else
                c_cbuf = NULL;
 
+       if (signal_name == NULL )
+       {
+               GString * buffer=g_string_new("");
+               g_string_printf(buffer, "\"%s\"", id);
+               signal_name = buffer->str;
+               g_string_free(buffer, FALSE);
+       }
        node = node_new (METHOD_NODE,
                         "scope", scope,
                         "method", method,
@@ -210,6 +218,7 @@ push_function (int scope, int method, char *oid, char *id,
                         "gtktypes:steal", gtktypes,
                         "flags:steal", flags,
                         "id:steal", id,
+                        "signal_name:steal", signal_name,
                         "args:steal", funcargs,
                         "funcattrs:steal", funcattrs,
                         "onerror:steal", onerror,
@@ -229,8 +238,8 @@ push_function (int scope, int method, char *oid, char *id,
                                above */
                              c_cbuf?FALSE:TRUE);
        gtktypes = NULL;
+       signal_name = NULL;
        funcargs = NULL;
-
        funcattrs = NULL;
        onerror = NULL;
        defreturn = NULL;
@@ -696,7 +705,7 @@ ensure_property (void)
 %token <cbuf> CCODE CTCODE ADCODE HTCODE PHCODE HCODE ACODE ATCODE STRING
 %token <line> PUBLIC PRIVATE PROTECTED CLASSWIDE PROPERTY ARGUMENT
 %token <line> VIRTUAL SIGNAL OVERRIDE
-%token <line> NICK BLURB MAXIMUM MINIMUM DEFAULT_VALUE ERROR FLAGS TYPE
+%token <line> NAME NICK BLURB MAXIMUM MINIMUM DEFAULT_VALUE ERROR FLAGS TYPE
 %token <line> FLAGS_TYPE ENUM_TYPE PARAM_TYPE BOXED_TYPE OBJECT_TYPE
 
 %%
@@ -1369,7 +1378,13 @@ anyval:          numtok          { $<id>$ = $<id>1; }
        |       string          { $<id>$ = $<id>1; }
        ;
 
-param_spec_value: NICK '=' string              {
+param_spec_value: NAME '=' string              {
+               ensure_property ();
+               node_set ((Node *)property,
+                         "canonical_name:steal", gob_str_delete_quotes($<id>3),
+                         NULL);
+                 }
+       |       NICK '=' string         {
                ensure_property ();
                node_set ((Node *)property,
                          "nick:steal", $<id>3,
@@ -1683,6 +1698,10 @@ fullsigtype:     scope TOKEN sigtype     {
 sigtype:       TOKEN '(' tokenlist ')'         {
                        gtktypes = g_list_prepend(gtktypes, debool ($<id>1));
                                                }
+       |       TOKEN STRING '(' tokenlist ')'          {
+                       gtktypes = g_list_prepend(gtktypes, debool ($<id>1));
+                       signal_name=$<id>2;
+                                               }
        ;
 
 tokenlist:     tokenlist ',' TOKEN             {
index 25e2e8f66c8afea96d36177a5544e246ca4d395a..9c981eb23dbbba8fbbe857686dd16a8fb4b37e6c 100644 (file)
@@ -168,7 +168,9 @@ class Test:Object from /*G:Object*/ Gtk:Container
 
        private char a_property;
        property CHAR a_property
-               (nick = _("Nick"),
+               (
+                name="a-property",
+                nick = _("Nick"),
                 blurb = _("Blurb"),
                 minimum = 'a',
                 maximum = 'Z',
@@ -257,7 +259,9 @@ class Test:Object from /*G:Object*/ Gtk:Container
        init(object) {
                object->i=0;
        }
-       class_init(klass);
+       class_init(klass) {
+               /*IN CLASS INIT  */
+       }
 
        /**
         * new:
@@ -292,7 +296,7 @@ class Test:Object from /*G:Object*/ Gtk:Container
         *
         * Returns: new object
         **/
-       signal last STRING (POINTER, INT)
+       signal last STRING "bleh-signal" (POINTER, INT)
        char * bleh(self, G:Object * wid (check null type),
                        int h (check > 0)) {
                return self_blah(self,wid,h) > 0 ? g_strdup ("foo") : g_strdup ("bar");
index ac2fd0127c1223c906f17d236075f5e346064e38..24b17e80f0346464f791d4674b39f250652f40c8 100644 (file)
@@ -133,6 +133,8 @@ enum {
        QUARK_set,
        QUARK_set_STEAL,
        QUARK_set_line,
+       QUARK_canonical_name,
+       QUARK_canonical_name_STEAL,
        QUARK_nick,
        QUARK_nick_STEAL,
        QUARK_blurb,
@@ -154,6 +156,8 @@ enum {
        QUARK_mtype_STEAL,
        QUARK_gtktypes,
        QUARK_gtktypes_STEAL,
+       QUARK_signal_name,
+       QUARK_signal_name_STEAL,
        QUARK_id,
        QUARK_id_STEAL,
        QUARK_args,
@@ -243,6 +247,8 @@ ensure_quarks (void)
        g_hash_table_insert (quark_ht, "set", GINT_TO_POINTER (QUARK_set));
        g_hash_table_insert (quark_ht, "set:steal", GINT_TO_POINTER (QUARK_set_STEAL));
        g_hash_table_insert (quark_ht, "set_line", GINT_TO_POINTER (QUARK_set_line));
+       g_hash_table_insert (quark_ht, "canonical_name", GINT_TO_POINTER (QUARK_canonical_name));
+       g_hash_table_insert (quark_ht, "canonical_name:steal", GINT_TO_POINTER (QUARK_canonical_name_STEAL));
        g_hash_table_insert (quark_ht, "nick", GINT_TO_POINTER (QUARK_nick));
        g_hash_table_insert (quark_ht, "nick:steal", GINT_TO_POINTER (QUARK_nick_STEAL));
        g_hash_table_insert (quark_ht, "blurb", GINT_TO_POINTER (QUARK_blurb));
@@ -264,6 +270,8 @@ ensure_quarks (void)
        g_hash_table_insert (quark_ht, "mtype:steal", GINT_TO_POINTER (QUARK_mtype_STEAL));
        g_hash_table_insert (quark_ht, "gtktypes", GINT_TO_POINTER (QUARK_gtktypes));
        g_hash_table_insert (quark_ht, "gtktypes:steal", GINT_TO_POINTER (QUARK_gtktypes_STEAL));
+       g_hash_table_insert (quark_ht, "signal_name", GINT_TO_POINTER (QUARK_signal_name));
+       g_hash_table_insert (quark_ht, "signal_name:steal", GINT_TO_POINTER (QUARK_signal_name_STEAL));
        g_hash_table_insert (quark_ht, "id", GINT_TO_POINTER (QUARK_id));
        g_hash_table_insert (quark_ht, "id:steal", GINT_TO_POINTER (QUARK_id_STEAL));
        g_hash_table_insert (quark_ht, "args", GINT_TO_POINTER (QUARK_args));
@@ -453,6 +461,7 @@ copy_method (Method * self)
        new->otype = g_strdup (self->otype);
        new->gtktypes = g_list_copy (self->gtktypes); COPY_LIST_VALS(new->gtktypes, g_strdup);
        new->flags = g_list_copy (self->flags); COPY_LIST_VALS(new->flags, g_strdup);
+       new->signal_name = g_strdup (self->signal_name);
        new->id = g_strdup (self->id);
        new->args = node_list_copy (self->args);
        new->funcattrs = g_strdup (self->funcattrs);
@@ -480,6 +489,7 @@ copy_property (Property * self)
        new->ptype = copy_type (self->ptype);
        new->flags = g_list_copy (self->flags); COPY_LIST_VALS(new->flags, g_strdup);
        new->name = g_strdup (self->name);
+       new->canonical_name = g_strdup (self->canonical_name);
        new->nick = g_strdup (self->nick);
        new->blurb = g_strdup (self->blurb);
        new->minimum = g_strdup (self->minimum);
@@ -643,6 +653,7 @@ free_method (Method * self)
        g_free (self->otype);
        g_list_foreach (self->gtktypes, (GFunc)g_free, NULL); g_list_free (self->gtktypes);
        g_list_foreach (self->flags, (GFunc)g_free, NULL); g_list_free (self->flags);
+       g_free (self->signal_name);
        g_free (self->id);
        node_list_free (self->args);
        g_free (self->funcattrs);
@@ -662,6 +673,7 @@ free_property (Property * self)
        free_type (self->ptype);
        g_list_foreach (self->flags, (GFunc)g_free, NULL); g_list_free (self->flags);
        g_free (self->name);
+       g_free (self->canonical_name);
        g_free (self->nick);
        g_free (self->blurb);
        g_free (self->minimum);
@@ -1283,6 +1295,18 @@ setv_method (Method * self, va_list __ap)
                        self->flags = flags;
                        break;
                }
+               case QUARK_signal_name: {
+                       char * signal_name = va_arg (__ap, char *);
+                       char * __old_value = self->signal_name;
+                       self->signal_name = g_strdup (signal_name);
+                       g_free (__old_value);
+                       break;
+               }
+               case QUARK_signal_name_STEAL: {
+                       char * signal_name = va_arg (__ap, char *);
+                       self->signal_name = signal_name;
+                       break;
+               }
                case QUARK_id: {
                        char * id = va_arg (__ap, char *);
                        char * __old_value = self->id;
@@ -1456,6 +1480,18 @@ setv_property (Property * self, va_list __ap)
                        self->name = name;
                        break;
                }
+               case QUARK_canonical_name: {
+                       char * canonical_name = va_arg (__ap, char *);
+                       char * __old_value = self->canonical_name;
+                       self->canonical_name = g_strdup (canonical_name);
+                       g_free (__old_value);
+                       break;
+               }
+               case QUARK_canonical_name_STEAL: {
+                       char * canonical_name = va_arg (__ap, char *);
+                       self->canonical_name = canonical_name;
+                       break;
+               }
                case QUARK_nick: {
                        char * nick = va_arg (__ap, char *);
                        char * __old_value = self->nick;
index 76e5e02b14bd77adea0f84dfc9164b2b912b1325..83b1d6296d8c40957946444046a95ded7d815886 100644 (file)
@@ -104,6 +104,7 @@ CLASS Property
   TYPE         ptype
   STRINGLIST   flags
   STRING       name
+  STRING       canonical_name
   STRING       nick
   STRING       blurb
   STRING       minimum
@@ -127,6 +128,7 @@ CLASS Method
   STRING       otype           # for override methods
   STRINGLIST   gtktypes        # GObject types for a signal
   STRINGLIST   flags           # G_SIGNAL_* flags for a signal
+  STRING       signal_name     # Name of signal
   STRING       id
   NODELIST     args
   STRING        funcattrs       # GLib function attribute macros
index 27c7c43f360b4fb1b289b057549c783af4d132ba..325eb98fabe74189a42cf55b1d42a4306b1fed30 100644 (file)
@@ -168,6 +168,7 @@ struct _Method {
        char * otype;
        GList * gtktypes;
        GList * flags;
+       char * signal_name;
        char * id;
        GList * args;
        char * funcattrs;
@@ -188,6 +189,7 @@ struct _Property {
        Type * ptype;
        GList * flags;
        char * name;
+       char * canonical_name;
        char * nick;
        char * blurb;
        char * minimum;
index 86e44b88caec516ad053256321e2f9cc6b974ea1..6405190d703ed4b35ec752adf6150c610fb818ac 100644 (file)
@@ -407,6 +407,25 @@ gob_strdown (char *str)
        return str;
 }
 
+char *
+gob_str_delete_quotes(char *str)
+{
+       char *p, *i;
+       p=i=str;
+       while(*p!='\0')
+       {
+               if(*p=='\"')
+               {
+                       p++;
+                       continue;
+               }
+               *i=*p;
+               p++; i++;
+       }
+       *i=*p;
+       return str;
+}
+
 char *
 make_me_type (const char *type, const char *alt)
 {
index b4dfde5e99ce557ca399bbad27d43086ef533a5b..daf6cf560c3e544536ff14f886da20714fc3a9fe 100644 (file)
@@ -39,6 +39,7 @@ char * remove_sep(const char *base);
 char * replace_sep(const char *base, char r);
 char * gob_strup (char *s);
 char * gob_strdown (char *s);
+char * gob_str_delete_quotes(char *str);
 
 /*separate the namespace part and then replace rest of
   separators with r*/
diff --git a/ylwrap b/ylwrap
index 92536350cba49fa4cc8e76c1655488b5924a5c82..1c4d77612c57115342fc14a86ab853a7d026b05b 100755 (executable)
--- a/ylwrap
+++ b/ylwrap
@@ -1,10 +1,9 @@
 #! /bin/sh
 # ylwrap - wrapper for lex/yacc invocations.
 
-scriptversion=2011-08-25.18; # UTC
+scriptversion=2012-12-21.17; # UTC
 
-# Copyright (C) 1996, 1997, 1998, 1999, 2001, 2002, 2003, 2004, 2005,
-# 2007, 2009, 2010, 2011 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 #
 # Written by Tom Tromey <tromey@cygnus.com>.
 #
@@ -30,9 +29,41 @@ scriptversion=2011-08-25.18; # UTC
 # bugs to <bug-automake@gnu.org> or send patches to
 # <automake-patches@gnu.org>.
 
+get_dirname ()
+{
+  case $1 in
+    */*|*\\*) printf '%s\n' "$1" | sed -e 's|\([\\/]\)[^\\/]*$|\1|';;
+    # Otherwise,  we want the empty string (not ".").
+  esac
+}
+
+# guard FILE
+# ----------
+# The CPP macro used to guard inclusion of FILE.
+guard()
+{
+  printf '%s\n' "$1"                                                    \
+    | sed                                                               \
+        -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'   \
+        -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'                        \
+        -e 's/__*/_/g'
+}
+
+# quote_for_sed [STRING]
+# ----------------------
+# Return STRING (or stdin) quoted to be used as a sed pattern.
+quote_for_sed ()
+{
+  case $# in
+    0) cat;;
+    1) printf '%s\n' "$1";;
+  esac \
+    | sed -e 's|[][\\.*]|\\&|g'
+}
+
 case "$1" in
   '')
-    echo "$0: No files given.  Try \`$0 --help' for more information." 1>&2
+    echo "$0: No files given.  Try '$0 --help' for more information." 1>&2
     exit 1
     ;;
   --basedir)
@@ -67,6 +98,8 @@ esac
 # The input.
 input="$1"
 shift
+# We'll later need for a correct munging of "#line" directives.
+input_sub_rx=`get_dirname "$input" | quote_for_sed`
 case "$input" in
   [\\/]* | ?:[\\/]*)
     # Absolute path; do nothing.
@@ -76,15 +109,47 @@ case "$input" in
     input="`pwd`/$input"
     ;;
 esac
+input_rx=`get_dirname "$input" | quote_for_sed`
+
+# Since DOS filename conventions don't allow two dots,
+# the DOS version of Bison writes out y_tab.c instead of y.tab.c
+# and y_tab.h instead of y.tab.h. Test to see if this is the case.
+y_tab_nodot=false
+if test -f y_tab.c || test -f y_tab.h; then
+  y_tab_nodot=true
+fi
+
+# The parser itself, the first file, is the destination of the .y.c
+# rule in the Makefile.
+parser=$1
+
+# A sed program to s/FROM/TO/g for all the FROM/TO so that, for
+# instance, we rename #include "y.tab.h" into #include "parse.h"
+# during the conversion from y.tab.c to parse.c.
+sed_fix_filenames=
+
+# Also rename header guards, as Bison 2.7 for instance uses its header
+# guard in its implementation file.
+sed_fix_header_guards=
 
-pairlist=
 while test "$#" -ne 0; do
   if test "$1" = "--"; then
     shift
     break
   fi
-  pairlist="$pairlist $1"
+  from=$1
+  # Handle y_tab.c and y_tab.h output by DOS
+  if $y_tab_nodot; then
+    case $from in
+      "y.tab.c") from=y_tab.c;;
+      "y.tab.h") from=y_tab.h;;
+    esac
+  fi
   shift
+  to=$1
+  shift
+  sed_fix_filenames="${sed_fix_filenames}s|"`quote_for_sed "$from"`"|$to|g;"
+  sed_fix_header_guards="${sed_fix_header_guards}s|"`guard "$from"`"|"`guard "$to"`"|g;"
 done
 
 # The program to run.
@@ -115,98 +180,56 @@ esac
 ret=$?
 
 if test $ret -eq 0; then
-  set X $pairlist
-  shift
-  first=yes
-  # Since DOS filename conventions don't allow two dots,
-  # the DOS version of Bison writes out y_tab.c instead of y.tab.c
-  # and y_tab.h instead of y.tab.h. Test to see if this is the case.
-  y_tab_nodot="no"
-  if test -f y_tab.c || test -f y_tab.h; then
-    y_tab_nodot="yes"
-  fi
-
-  # The directory holding the input.
-  input_dir=`echo "$input" | sed -e 's,\([\\/]\)[^\\/]*$,\1,'`
-  # Quote $INPUT_DIR so we can use it in a regexp.
-  # FIXME: really we should care about more than `.' and `\'.
-  input_rx=`echo "$input_dir" | sed 's,\\\\,\\\\\\\\,g;s,\\.,\\\\.,g'`
-
-  while test "$#" -ne 0; do
-    from="$1"
-    # Handle y_tab.c and y_tab.h output by DOS
-    if test $y_tab_nodot = "yes"; then
-      if test $from = "y.tab.c"; then
-        from="y_tab.c"
-      else
-        if test $from = "y.tab.h"; then
-          from="y_tab.h"
-        fi
-      fi
-    fi
+  for from in *
+  do
+    to=`printf '%s\n' "$from" | sed "$sed_fix_filenames"`
     if test -f "$from"; then
       # If $2 is an absolute path name, then just use that,
-      # otherwise prepend `../'.
-      case "$2" in
-        [\\/]* | ?:[\\/]*) target="$2";;
-        *) target="../$2";;
+      # otherwise prepend '../'.
+      case $to in
+        [\\/]* | ?:[\\/]*) target=$to;;
+        *) target="../$to";;
       esac
 
-      # We do not want to overwrite a header file if it hasn't
-      # changed.  This avoid useless recompilations.  However the
-      # parser itself (the first file) should always be updated,
-      # because it is the destination of the .y.c rule in the
-      # Makefile.  Divert the output of all other files to a temporary
-      # file so we can compare them to existing versions.
-      if test $first = no; then
+      # Do not overwrite unchanged header files to avoid useless
+      # recompilations.  Always update the parser itself: it is the
+      # destination of the .y.c rule in the Makefile.  Divert the
+      # output of all other files to a temporary file so we can
+      # compare them to existing versions.
+      if test $from != $parser; then
         realtarget="$target"
-        target="tmp-`echo $target | sed s/.*[\\/]//g`"
+        target=tmp-`printf '%s\n' "$target" | sed 's|.*[\\/]||g'`
       fi
-      # Edit out `#line' or `#' directives.
-      #
-      # We don't want the resulting debug information to point at
-      # an absolute srcdir; it is better for it to just mention the
-      # .y file with no path.
-      #
-      # We want to use the real output file name, not yy.lex.c for
-      # instance.
-      #
-      # We want the include guards to be adjusted too.
-      FROM=`echo "$from" | sed \
-            -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'\
-            -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'`
-      TARGET=`echo "$2" | sed \
-            -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'\
-            -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'`
-
-      sed -e "/^#/!b" -e "s,$input_rx,," -e "s,$from,$2," \
-          -e "s,$FROM,$TARGET," "$from" >"$target" || ret=$?
-
-      # Check whether header files must be updated.
-      if test $first = no; then
+
+      # Munge "#line" or "#" directives.  Don't let the resulting
+      # debug information point at an absolute srcdir.  Use the real
+      # output file name, not yy.lex.c for instance.  Adjust the
+      # include guards too.
+      sed -e "/^#/!b"                           \
+          -e "s|$input_rx|$input_sub_rx|"       \
+          -e "$sed_fix_filenames"               \
+          -e "$sed_fix_header_guards"           \
+        "$from" >"$target" || ret=$?
+
+      # Check whether files must be updated.
+      if test "$from" != "$parser"; then
         if test -f "$realtarget" && cmp -s "$realtarget" "$target"; then
-          echo "$2" is unchanged
+          echo "$to is unchanged"
           rm -f "$target"
         else
-          echo updating "$2"
+          echo "updating $to"
           mv -f "$target" "$realtarget"
         fi
       fi
     else
-      # A missing file is only an error for the first file.  This
-      # is a blatant hack to let us support using "yacc -d".  If -d
-      # is not specified, we don't want an error when the header
-      # file is "missing".
-      if test $first = yes; then
+      # A missing file is only an error for the parser.  This is a
+      # blatant hack to let us support using "yacc -d".  If -d is not
+      # specified, don't fail when the header file is "missing".
+      if test "$from" = "$parser"; then
         ret=1
       fi
     fi
-    shift
-    shift
-    first=no
   done
-else
-  ret=$?
 fi
 
 # Remove the directory.