pgpool2.git / summary / log / commit / refs

commit    2295a0dd22a545552dcd0d0dbfb8a92d5eec2690
Author:   User yamaguti <yamaguti at pgfoundry.org>
Date:     Thu May 17 06:46:03 2007 +0000

    * Support HBA authentication.
    * Support log_connections
    * Support log_hostname
    * Support "ps" status display
    * Fixed compiler warning in pool_query_cache.c
    * sample/pgpool.pam: PAM service configuration file. It will be
      installed to "$PREFIX/share/"
    * doc/pgpool-ja.html: Added pool_hba description.
    * doc/pgpool-en.html: Added pool_hba description.
    * Updated ChangeLog


ChangeLog | 11 + Makefile.am | 11 +- Makefile.in | 43 +- aclocal.m4 | 73 +- child.c | 73 +- config.h.in | 57 + configure | 10082 +++++++++++++++++++++++++++++++------------------ configure.in | 35 +- doc/pgpool-en.html | 127 +- doc/pgpool-ja.html | 128 +- main.c | 31 +- parser/Makefile.in | 20 +- parser/gram.c | 5576 ++++++++++++++------------- parser/gram.h | 43 +- parser/pool_parser.h | 21 +- pcp/Makefile.in | 15 +- pcp_child.c | 17 +- pgpool.conf.sample | 15 + pool.h | 34 + pool_config.c | 1402 ++++--- pool_config.l | 41 +- pool_process_query.c | 71 + pool_query_cache.c | 2 +- pool_type.h | 107 + sample/pgpool.pam | 3 + 25 files changed, 11020 insertions(+), 7018 deletions(-) diff --git a/ChangeLog b/ChangeLog index 89a448d65..3a333d67d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,14 @@ +2007-05-17 Taiki Yamaguchi <yamaguchi@sraoss.co.jp> + + * Support HBA authentication. + * Support log_connections + * Support log_hostname + * Support "ps" status display + * sample/pgpool.pam: PAM service configuration file. It will be + installed to "$PREFIX/share/" + * doc/pgpool-ja.html: Added pool_hba description. + * doc/pgpool-en.html: Added pool_hba description. + 2007-04-26 Yoshiyuki Asaba <y-asaba@sraoss.co.jp> * pool_connection_pool.c: Retry connect() when it is interrupted diff --git a/Makefile.am b/Makefile.am index 67af46fbb..19f13f55b 100644 --- a/Makefile.am +++ b/Makefile.am @@ -7,15 +7,17 @@ pgpool_SOURCES = pool.h pool_type.h version.h pgpool.conf.sample \ pool_signal.h pool_signal.c pcp_child.c md5.c md5.h pcp.conf.sample \ pool_ipc.h pool_shmem.c pool_sema.c pool_system.c \ pool_rewrite_query.c pool_rewrite_query.h pool_rewrite_outfuncs.c \ - pool_query_cache.c + pool_query_cache.c pool_hba.conf.sample pgpool.pam\ + pool_hba.c pool_path.h pool_path.c pool_ip.h pool_ip.c pool_type.h \ + ps_status.c strlcpy.c pg_md5_SOURCES = pg_md5.c md5.c md5.h DEFS = @DEFS@ \ -DDEFAULT_CONFIGDIR=\"$(sysconfdir)\" -sysconf_DATA = pgpool.conf.sample pcp.conf.sample -data_DATA = sql/system_db.sql +sysconf_DATA = pgpool.conf.sample pcp.conf.sample pool_hba.conf.sample +data_DATA = sql/system_db.sql sample/pgpool.pam AM_CPPFLAGS = -Wall -Wmissing-prototypes -Wmissing-declarations -D_GNU_SOURCE -I @PGSQL_INCLUDE_DIR@ @@ -34,9 +36,8 @@ pgpool.8: pgpool.8.in sed 's,@sysconfdir\@,$(sysconfdir),g' $? >$@ CLEANFILES = pgpool.8 -EXTRA_DIST = pgpool.8.in sql/system_db.sql doc/pgpool-ja.html doc/pgpool-en.html \ +EXTRA_DIST = pgpool.8.in sql/system_db.sql sample/pgpool.pam doc/pgpool-ja.html doc/pgpool-en.html \ doc/tutorial-ja.html doc/tutorial-en.html doc/pgpool.css \ sample/dist_def_pgbench.sql SUBDIRS = parser pcp - diff --git a/Makefile.in b/Makefile.in index fc70f18f7..65fb082a9 100644 --- a/Makefile.in +++ b/Makefile.in @@ -45,7 +45,8 @@ DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ missing mkinstalldirs pool_config.c subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/configure.in +am__aclocal_m4_deps = $(top_srcdir)/ac_func_accept_argtypes.m4 \ + $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ @@ -60,8 +61,6 @@ PROGRAMS = $(bin_PROGRAMS) am_pg_md5_OBJECTS = pg_md5.$(OBJEXT) md5.$(OBJEXT) pg_md5_OBJECTS = $(am_pg_md5_OBJECTS) pg_md5_LDADD = $(LDADD) -pg_md5_DEPENDENCIES = parser/libsql-parser.a pcp/libpcp.la \ - parser/nodes.o am_pgpool_OBJECTS = main.$(OBJEXT) child.$(OBJEXT) pool_auth.$(OBJEXT) \ pool_config.$(OBJEXT) pool_error.$(OBJEXT) \ pool_process_query.$(OBJEXT) pool_stream.$(OBJEXT) \ @@ -69,9 +68,10 @@ am_pgpool_OBJECTS = main.$(OBJEXT) child.$(OBJEXT) pool_auth.$(OBJEXT) \ pool_signal.$(OBJEXT) pcp_child.$(OBJEXT) md5.$(OBJEXT) \ pool_shmem.$(OBJEXT) pool_sema.$(OBJEXT) pool_system.$(OBJEXT) \ pool_rewrite_query.$(OBJEXT) pool_rewrite_outfuncs.$(OBJEXT) \ - pool_query_cache.$(OBJEXT) + pool_query_cache.$(OBJEXT) pool_hba.$(OBJEXT) \ + pool_path.$(OBJEXT) pool_ip.$(OBJEXT) ps_status.$(OBJEXT) \ + strlcpy.$(OBJEXT) pgpool_OBJECTS = $(am_pgpool_OBJECTS) -pgpool_LDADD = $(LDADD) pgpool_DEPENDENCIES = parser/libsql-parser.a pcp/libpcp.la \ parser/nodes.o DEFAULT_INCLUDES = -I. -I$(srcdir) -I. @@ -152,6 +152,7 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ F77 = @F77@ FFLAGS = @FFLAGS@ +GREP = @GREP@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ @@ -183,12 +184,10 @@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ YACC = @YACC@ -ac_ct_AR = @ac_ct_AR@ +YFLAGS = @YFLAGS@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ ac_ct_F77 = @ac_ct_F77@ -ac_ct_RANLIB = @ac_ct_RANLIB@ -ac_ct_STRIP = @ac_ct_STRIP@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ @@ -205,6 +204,9 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ enable_rpath_FALSE = @enable_rpath_FALSE@ enable_rpath_TRUE = @enable_rpath_TRUE@ exec_prefix = @exec_prefix@ @@ -213,17 +215,21 @@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ +htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ +localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ +psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ sysconfdir = @sysconfdir@ @@ -235,23 +241,25 @@ pgpool_SOURCES = pool.h pool_type.h version.h pgpool.conf.sample \ pool_signal.h pool_signal.c pcp_child.c md5.c md5.h pcp.conf.sample \ pool_ipc.h pool_shmem.c pool_sema.c pool_system.c \ pool_rewrite_query.c pool_rewrite_query.h pool_rewrite_outfuncs.c \ - pool_query_cache.c + pool_query_cache.c pool_hba.conf.sample pgpool.pam\ + pool_hba.c pool_path.h pool_path.c pool_ip.h pool_ip.c pool_type.h \ + ps_status.c strlcpy.c pg_md5_SOURCES = pg_md5.c md5.c md5.h -sysconf_DATA = pgpool.conf.sample pcp.conf.sample -data_DATA = sql/system_db.sql +sysconf_DATA = pgpool.conf.sample pcp.conf.sample pool_hba.conf.sample +data_DATA = sql/system_db.sql sample/pgpool.pam AM_CPPFLAGS = -Wall -Wmissing-prototypes -Wmissing-declarations -D_GNU_SOURCE -I @PGSQL_INCLUDE_DIR@ -@enable_rpath_FALSE@pgpool_LDFLAGS = -lpq -L@PGSQL_LIB_DIR@ -@enable_rpath_TRUE@pgpool_LDFLAGS = -lpq -L@PGSQL_LIB_DIR@ -Wl,-rpath,@PGSQL_LIB_DIR@ +pgpool_LDADD = -L@PGSQL_LIB_DIR@ -lpq parser/libsql-parser.a pcp/libpcp.la parser/nodes.o +@enable_rpath_FALSE@pgpool_LDFLAGS = +@enable_rpath_TRUE@pgpool_LDFLAGS = -rpath @PGSQL_LIB_DIR@ -rpath $(libdir) AM_YFLAGS = -d man_MANS = pgpool.8 CLEANFILES = pgpool.8 -EXTRA_DIST = pgpool.8.in sql/system_db.sql doc/pgpool-ja.html doc/pgpool-en.html \ +EXTRA_DIST = pgpool.8.in sql/system_db.sql sample/pgpool.pam doc/pgpool-ja.html doc/pgpool-en.html \ doc/tutorial-ja.html doc/tutorial-en.html doc/pgpool.css \ sample/dist_def_pgbench.sql SUBDIRS = parser pcp -LDADD = parser/libsql-parser.a pcp/libpcp.la parser/nodes.o all: config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive @@ -357,7 +365,10 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pool_config.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pool_connection_pool.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pool_error.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pool_hba.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pool_ip.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pool_params.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pool_path.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pool_process_query.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pool_query_cache.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pool_rewrite_outfuncs.Po@am__quote@ @@ -367,6 +378,8 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pool_signal.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pool_stream.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pool_system.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ps_status.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strlcpy.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ diff --git a/aclocal.m4 b/aclocal.m4 index dd819f5db..cca83c4dd 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -13,7 +13,7 @@ # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- -# serial 48 AC_PROG_LIBTOOL +# serial 48 Debian 1.5.22-4 AC_PROG_LIBTOOL # AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED) @@ -1397,18 +1397,6 @@ freebsd1*) dynamic_linker=no ;; -kfreebsd*-gnu) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='GNU ld.so' - ;; - freebsd* | dragonfly*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. @@ -1564,7 +1552,7 @@ linux*oldld* | linux*aout* | linux*coff*) ;; # This must be Linux ELF. -linux*) +linux* | k*bsd*-gnu) version_type=linux need_lib_prefix=no need_version=no @@ -1578,27 +1566,10 @@ linux*) # before this can be enabled. hardcode_into_libs=yes - # find out which ABI we are using - libsuff= - case "$host_cpu" in - x86_64*|s390x*|powerpc64*) - echo '[#]line __oline__ "configure"' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then - case `/usr/bin/file conftest.$ac_objext` in - *64-bit*) - libsuff=64 - sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" - ;; - esac - fi - rm -rf conftest* - ;; - esac - # Append ld.so.conf contents to the search path if test -f /etc/ld.so.conf; then lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` - sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" + sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" fi # We used to test for /lib/ld.so.1 and disable shared libraries on @@ -1610,7 +1581,7 @@ linux*) dynamic_linker='GNU/Linux ld.so' ;; -knetbsd*-gnu) +netbsdelf*-gnu) version_type=linux need_lib_prefix=no need_version=no @@ -1619,7 +1590,7 @@ knetbsd*-gnu) shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes - dynamic_linker='GNU ld.so' + dynamic_linker='NetBSD ld.elf_so' ;; netbsd*) @@ -2327,7 +2298,7 @@ darwin* | rhapsody*) lt_cv_deplibs_check_method=pass_all ;; -freebsd* | kfreebsd*-gnu | dragonfly*) +freebsd* | dragonfly*) if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then case $host_cpu in i*86 ) @@ -2381,11 +2352,11 @@ irix5* | irix6* | nonstopux*) ;; # This must be Linux ELF. -linux*) +linux* | k*bsd*-gnu) lt_cv_deplibs_check_method=pass_all ;; -netbsd*) +netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' else @@ -3133,7 +3104,7 @@ case $host_os in freebsd-elf*) _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no ;; - freebsd* | kfreebsd*-gnu | dragonfly*) + freebsd* | dragonfly*) # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF # conventions _LT_AC_TAGVAR(ld_shlibs, $1)=yes @@ -3292,7 +3263,7 @@ case $host_os in _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir' _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: ;; - linux*) + linux* | k*bsd*-gnu) case $cc_basename in KCC*) # Kuck and Associates, Inc. (KAI) C++ Compiler @@ -3394,7 +3365,7 @@ case $host_os in ;; esac ;; - netbsd*) + netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' wlarc= @@ -4659,7 +4630,7 @@ hpux*) # Its linker distinguishes data from code symbols lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" ;; -linux*) +linux* | k*bsd*-gnu) if test "$host_cpu" = ia64; then symcode='[[ABCDGIRSTW]]' lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" @@ -4932,7 +4903,7 @@ AC_MSG_CHECKING([for $compiler option to produce PIC]) ;; esac ;; - freebsd* | kfreebsd*-gnu | dragonfly*) + freebsd* | dragonfly*) # FreeBSD uses GNU C++ ;; hpux9* | hpux10* | hpux11*) @@ -4975,7 +4946,7 @@ AC_MSG_CHECKING([for $compiler option to produce PIC]) ;; esac ;; - linux*) + linux* | k*bsd*-gnu) case $cc_basename in KCC*) # KAI C++ Compiler @@ -5018,7 +4989,7 @@ AC_MSG_CHECKING([for $compiler option to produce PIC]) ;; esac ;; - netbsd*) + netbsd* | netbsdelf*-gnu) ;; osf3* | osf4* | osf5*) case $cc_basename in @@ -5229,7 +5200,7 @@ AC_MSG_CHECKING([for $compiler option to produce PIC]) _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' ;; - linux*) + linux* | k*bsd*-gnu) case $cc_basename in icc* | ecc*) _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' @@ -5370,6 +5341,9 @@ ifelse([$1],[CXX],[ cygwin* | mingw*) _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]] /s/.* \([[^ ]]*\)/\1 DATA/;/^.* __nm__/s/^.* __nm__\([[^ ]]*\) [[^ ]]*/\1 DATA/;/^I /d;/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols' ;; + linux* | k*bsd*-gnu) + _LT_AC_TAGVAR(link_all_deplibs, $1)=no + ;; *) _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' ;; @@ -5540,7 +5514,7 @@ EOF _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; - linux*) + linux* | k*bsd*-gnu) if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then tmp_addflag= case $cc_basename,$host_cpu in @@ -5566,12 +5540,13 @@ EOF $echo "local: *; };" >> $output_objdir/$libname.ver~ $CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' fi + _LT_AC_TAGVAR(link_all_deplibs, $1)=no else _LT_AC_TAGVAR(ld_shlibs, $1)=no fi ;; - netbsd*) + netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= @@ -5901,7 +5876,7 @@ _LT_EOF ;; # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd* | kfreebsd*-gnu | dragonfly*) + freebsd* | dragonfly*) _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_AC_TAGVAR(hardcode_direct, $1)=yes @@ -6003,7 +5978,7 @@ _LT_EOF _LT_AC_TAGVAR(link_all_deplibs, $1)=yes ;; - netbsd*) + netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else diff --git a/child.c b/child.c index 9b0447b2c..cf08d7075 100644 --- a/child.c +++ b/child.c @@ -27,6 +27,8 @@ #include <sys/socket.h> #include <netinet/in.h> #include <sys/un.h> +#include <arpa/inet.h> +#include <netdb.h> #ifdef HAVE_NETINET_TCP_H #include <netinet/tcp.h> #endif @@ -45,6 +47,7 @@ #endif #include "pool.h" +#include "pool_ip.h" #include "md5.h" #ifdef NONE_BLOCK @@ -71,6 +74,10 @@ static int exit_request; static int idle; /* non 0 means this child is in idle state */ +extern int myargc; +extern char **myargv; + +char remote_ps_data[NI_MAXHOST]; /* used for set_ps_display */ /* * child main loop @@ -87,9 +94,13 @@ void do_child(int unix_fd, int inet_fd) int connections_count = 0; /* used if child_max_connections > 0 */ int first_ready_for_query_received; /* for master/slave mode */ int found; + char psbuf[NI_MAXHOST + 128]; pool_debug("I am %d", getpid()); + /* Identify myself via ps */ + init_ps_display("", "", "", ""); + /* set up signal handlers */ signal(SIGALRM, SIG_DFL); signal(SIGTERM, die); @@ -235,6 +246,29 @@ void do_child(int unix_fd, int inet_fd) goto retry_startup; } + if (pool_config->enable_pool_hba) + { + /* + * do client authentication. + * Note that ClientAuthentication does not return if frontend + * was rejected; it simply terminates this process. + */ + frontend->protoVersion = sp->major; + frontend->database = strdup(sp->database); + if (frontend->database == NULL) + { + pool_error("do_child: strdup failed: %s\n", strerror(errno)); + exit(1); + } + frontend->username = strdup(sp->user); + if (frontend->username == NULL) + { + pool_error("do_child: strdup failed: %s\n", strerror(errno)); + exit(1); + } + ClientAuthentication(frontend); + } + /* * Ok, negotiaton with frontend has been done. Let's go to the next step. */ @@ -357,6 +391,12 @@ void do_child(int unix_fd, int inet_fd) connected = 1; + /* show ps status */ + sp = MASTER_CONNECTION(backend)->sp; + snprintf(psbuf, sizeof(psbuf), "%s %s %s idle", + sp->user, sp->database, remote_ps_data); + set_ps_display(psbuf, false); + /* query process loop */ for (;;) { @@ -510,8 +550,7 @@ static POOL_CONNECTION *do_accept(int unix_fd, int inet_fd, struct timeval *time fd_set readmask; int fds; - struct sockaddr addr; - socklen_t addrlen; + SockAddr saddr; int fd = 0; int afd; int inet = 0; @@ -524,6 +563,11 @@ static POOL_CONNECTION *do_accept(int unix_fd, int inet_fd, struct timeval *time struct timeval *timeoutval; struct timeval tv1, tv2, tmback; + char remote_host[NI_MAXHOST]; + char remote_port[NI_MAXSERV]; + + set_ps_display("wait for connection request", false); + FD_ZERO(&readmask); FD_SET(unix_fd, &readmask); if (inet_fd) @@ -608,12 +652,13 @@ static POOL_CONNECTION *do_accept(int unix_fd, int inet_fd, struct timeval *time * Note that some SysV systems do not work here. For those * systems, we need some locking mechanism for the fd. */ - addrlen = sizeof(addr); + memset(&saddr, 0, sizeof(saddr)); + saddr.salen = sizeof(saddr.addr); #ifdef ACCEPT_PERFORMANCE gettimeofday(&now1,0); #endif - afd = accept(fd, &addr, &addrlen); + afd = accept(fd, (struct sockaddr *)&saddr.addr, &saddr.salen); if (afd < 0) { /* @@ -727,6 +772,20 @@ static POOL_CONNECTION *do_accept(int unix_fd, int inet_fd, struct timeval *time pool_debug("I am %d accept fd %d", getpid(), afd); + pool_getnameinfo_all(&saddr, remote_host, remote_port); + snprintf(remote_ps_data, sizeof(remote_ps_data), + remote_port[0] == '\0' ? "%s" : "%s(%s)", + remote_host, remote_port); + + set_ps_display("accept connection", false); + + /* log who is connecting */ + if (pool_config->log_connections) + { + pool_log("connection received: host=%s%s%s", + remote_host, remote_port[0] ? " port=" : "", remote_port); + } + /* set NODELAY and KEEPALIVE options if INET connection */ if (inet) { @@ -755,6 +814,12 @@ static POOL_CONNECTION *do_accept(int unix_fd, int inet_fd, struct timeval *time close(afd); return NULL; } + + /* save ip addres for hba */ + memcpy(&cp->raddr, &saddr, sizeof(SockAddr)); + if (cp->raddr.addr.ss_family == 0) + cp->raddr.addr.ss_family = AF_UNIX; + return cp; } diff --git a/config.h.in b/config.h.in index f78c1a62a..d67a6ab13 100644 --- a/config.h.in +++ b/config.h.in @@ -1,5 +1,17 @@ /* config.h.in. Generated from configure.in by autoheader. */ +/* Define to the type of arg 1 of 'accept' */ +#undef ACCEPT_TYPE_ARG1 + +/* Define to the type of arg 2 of 'accept' */ +#undef ACCEPT_TYPE_ARG2 + +/* Define to the type of arg 3 of 'accept' */ +#undef ACCEPT_TYPE_ARG3 + +/* Define to the return type of 'accept' */ +#undef ACCEPT_TYPE_RETURN + /* Define to 1 if you have the `asprintf' function. */ #undef HAVE_ASPRINTF @@ -12,9 +24,15 @@ /* Define to 1 if you have the <fcntl.h> header file. */ #undef HAVE_FCNTL_H +/* Define to 1 if you have the `gai_strerror' function. */ +#undef HAVE_GAI_STRERROR + /* Define to 1 if you have the <getopt.h> header file. */ #undef HAVE_GETOPT_H +/* Define to 1 if you have the `hstrerror' function. */ +#undef HAVE_HSTRERROR + /* Define to 1 if you have the <inttypes.h> header file. */ #undef HAVE_INTTYPES_H @@ -39,6 +57,9 @@ /* Define to 1 if you have the `nsl' library (-lnsl). */ #undef HAVE_LIBNSL +/* Define to 1 if you have the `pam' library (-lpam). */ +#undef HAVE_LIBPAM + /* Define to 1 if you have the `pq' library (-lpq). */ #undef HAVE_LIBPQ @@ -54,15 +75,24 @@ /* Define to 1 if you have the <memory.h> header file. */ #undef HAVE_MEMORY_H +/* Define to 1 if you have the <netdb.h> header file. */ +#undef HAVE_NETDB_H + /* Define to 1 if you have the <netinet/in.h> header file. */ #undef HAVE_NETINET_IN_H /* Define to 1 if you have the <netinet/tcp.h> header file. */ #undef HAVE_NETINET_TCP_H +/* Define to 1 if you have the <pam/pam_appl.h> header file. */ +#undef HAVE_PAM_PAM_APPL_H + /* Define to 1 if you have the `PQprepare' function. */ #undef HAVE_PQPREPARE +/* Define to 1 if you have the <security/pam_appl.h> header file. */ +#undef HAVE_SECURITY_PAM_APPL_H + /* Define to 1 if you have the `select' function. */ #undef HAVE_SELECT @@ -99,6 +129,24 @@ /* Define to 1 if you have the `strtok' function. */ #undef HAVE_STRTOK +/* Define to 1 if `sa_len' is member of `struct sockaddr'. */ +#undef HAVE_STRUCT_SOCKADDR_SA_LEN + +/* Define to 1 if the system has the type `struct sockaddr_storage'. */ +#undef HAVE_STRUCT_SOCKADDR_STORAGE + +/* Define to 1 if `ss_family' is member of `struct sockaddr_storage'. */ +#undef HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY + +/* Define to 1 if `ss_len' is member of `struct sockaddr_storage'. */ +#undef HAVE_STRUCT_SOCKADDR_STORAGE_SS_LEN + +/* Define to 1 if `__ss_family' is member of `struct sockaddr_storage'. */ +#undef HAVE_STRUCT_SOCKADDR_STORAGE___SS_FAMILY + +/* Define to 1 if `__ss_len' is member of `struct sockaddr_storage'. */ +#undef HAVE_STRUCT_SOCKADDR_STORAGE___SS_LEN + /* Define to 1 if you have the <sys/param.h> header file. */ #undef HAVE_SYS_PARAM_H @@ -108,6 +156,9 @@ /* Define to 1 if you have the <sys/shm.h> header file. */ #undef HAVE_SYS_SHM_H +/* Define to 1 if you have the <sys/socket.h> header file. */ +#undef HAVE_SYS_SOCKET_H + /* Define to 1 if you have the <sys/stat.h> header file. */ #undef HAVE_SYS_STAT_H @@ -117,6 +168,9 @@ /* Define to 1 if you have the <sys/types.h> header file. */ #undef HAVE_SYS_TYPES_H +/* Define to 1 if you have the <sys/un.h> header file. */ +#undef HAVE_SYS_UN_H + /* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */ #undef HAVE_SYS_WAIT_H @@ -160,6 +214,9 @@ /* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */ #undef TIME_WITH_SYS_TIME +/* Define to 1 to build with PAM support. (--with-pam) */ +#undef USE_PAM + /* Version number of package */ #undef VERSION diff --git a/configure b/configure index f6bb70a49..53c95e6b0 100755 --- a/configure +++ b/configure @@ -1,8 +1,9 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.59. +# Generated by GNU Autoconf 2.60. # -# Copyright (C) 2003 Free Software Foundation, Inc. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, +# 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. ## --------------------- ## @@ -16,11 +17,35 @@ if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac fi +BIN_SH=xpg4; export BIN_SH # for Tru64 DUALCASE=1; export DUALCASE # for MKS sh + +# PATH needs CR +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh +fi + # Support unset when possible. if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then as_unset=unset @@ -29,8 +54,43 @@ else fi +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +as_nl=' +' +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +case $0 in + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break +done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + { (exit 1); exit 1; } +fi + # Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH +for as_var in ENV MAIL MAILPATH +do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +done PS1='$ ' PS2='> ' PS4='+ ' @@ -44,18 +104,19 @@ do if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then eval $as_var=C; export $as_var else - $as_unset $as_var + ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var fi done # Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false @@ -63,157 +124,386 @@ fi # Name of the executable. -as_me=`$as_basename "$0" || +as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || + X"$0" : 'X\(/\)' \| . 2>/dev/null || echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` +# CDPATH. +$as_unset CDPATH -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh +if test "x$CONFIG_SHELL" = x; then + if (eval ":") 2>/dev/null; then + as_have_required=yes +else + as_have_required=no +fi + + if test $as_have_required = yes && (eval ": +(as_func_return () { + (exit \$1) +} +as_func_success () { + as_func_return 0 +} +as_func_failure () { + as_func_return 1 +} +as_func_ret_success () { + return 0 +} +as_func_ret_failure () { + return 1 +} + +exitcode=0 +if as_func_success; then + : +else + exitcode=1 + echo as_func_success failed. fi +if as_func_failure; then + exitcode=1 + echo as_func_failure succeeded. +fi - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done +if as_func_ret_success; then + : +else + exitcode=1 + echo as_func_ret_success failed. +fi - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') +if as_func_ret_failure; then + exitcode=1 + echo as_func_ret_failure succeeded. +fi + +if ( set x; as_func_ret_success y && test x = \"\$1\" ); then + : +else + exitcode=1 + echo positional parameters were not saved. +fi + +test \$exitcode = 0) || { (exit 1); exit 1; } + +( + as_lineno_1=\$LINENO + as_lineno_2=\$LINENO + test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" && + test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; } +") 2> /dev/null; then + : +else + as_candidate_shells= as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH +for as_dir in /usr/bin/posix$PATH_SEPARATOR/bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in + case $as_dir in /*) - if ("$as_dir/$as_base" -c ' + for as_base in sh bash ksh sh5; do + as_candidate_shells="$as_candidate_shells $as_dir/$as_base" + done;; + esac +done +IFS=$as_save_IFS + + + for as_shell in $as_candidate_shells $SHELL; do + # Try only shells that exist, to save several forks. + if { test -f "$as_shell" || test -f "$as_shell.exe"; } && + { ("$as_shell") 2> /dev/null <<\_ASEOF +# Be Bourne compatible +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac +fi +BIN_SH=xpg4; export BIN_SH # for Tru64 +DUALCASE=1; export DUALCASE # for MKS sh + +: +_ASEOF +}; then + CONFIG_SHELL=$as_shell + as_have_required=yes + if { "$as_shell" 2> /dev/null <<\_ASEOF +# Be Bourne compatible +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac +fi +BIN_SH=xpg4; export BIN_SH # for Tru64 +DUALCASE=1; export DUALCASE # for MKS sh + +: +(as_func_return () { + (exit $1) +} +as_func_success () { + as_func_return 0 +} +as_func_failure () { + as_func_return 1 +} +as_func_ret_success () { + return 0 +} +as_func_ret_failure () { + return 1 +} + +exitcode=0 +if as_func_success; then + : +else + exitcode=1 + echo as_func_success failed. +fi + +if as_func_failure; then + exitcode=1 + echo as_func_failure succeeded. +fi + +if as_func_ret_success; then + : +else + exitcode=1 + echo as_func_ret_success failed. +fi + +if as_func_ret_failure; then + exitcode=1 + echo as_func_ret_failure succeeded. +fi + +if ( set x; as_func_ret_success y && test x = "$1" ); then + : +else + exitcode=1 + echo positional parameters were not saved. +fi + +test $exitcode = 0) || { (exit 1); exit 1; } + +( as_lineno_1=$LINENO as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac + test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; } + +_ASEOF +}; then + break +fi + +fi + + done + + if test "x$CONFIG_SHELL" != x; then + for as_var in BASH_ENV ENV + do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var + done + export CONFIG_SHELL + exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"} +fi + + + if test $as_have_required = no; then + echo This script requires a shell more modern than all the + echo shells that I found on your system. Please install a + echo modern shell, or manually run the script under such a + echo shell if you do have one. + { (exit 1); exit 1; } +fi + + +fi + +fi + + + +(eval "as_func_return () { + (exit \$1) +} +as_func_success () { + as_func_return 0 +} +as_func_failure () { + as_func_return 1 +} +as_func_ret_success () { + return 0 +} +as_func_ret_failure () { + return 1 +} + +exitcode=0 +if as_func_success; then + : +else + exitcode=1 + echo as_func_success failed. +fi + +if as_func_failure; then + exitcode=1 + echo as_func_failure succeeded. +fi + +if as_func_ret_success; then + : +else + exitcode=1 + echo as_func_ret_success failed. +fi + +if as_func_ret_failure; then + exitcode=1 + echo as_func_ret_failure succeeded. +fi + +if ( set x; as_func_ret_success y && test x = \"\$1\" ); then + : +else + exitcode=1 + echo positional parameters were not saved. +fi + +test \$exitcode = 0") || { + echo No shell found that supports shell functions. + echo Please tell autoconf@gnu.org about your system, + echo including any error possibly output before this + echo message +} + + + + as_lineno_1=$LINENO + as_lineno_2=$LINENO + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { # Create $as_me.lineno as a copy of $as_myself, but with $LINENO # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. + # line-number line after each line using $LINENO; the second 'sed' + # does the real work. The second script uses 'N' to pair each + # line-number line with the line containing $LINENO, and appends + # trailing '-' during substitution so that $LINENO is not a special + # case at line end. # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | + # scripts with optimization help from Paolo Bonzini. Blame Lee + # E. McMahon (1931-1989) for sed's syntax. :-) + sed -n ' + p + /[$]LINENO/= + ' <$as_myself | sed ' + s/[$]LINENO.*/&-/ + t lineno + b + :lineno N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, + :loop + s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ t loop - s,-$,, - s,^['$as_cr_digits']*\n,, + s/-\n.*// ' >$as_me.lineno && - chmod +x $as_me.lineno || + chmod +x "$as_me.lineno" || { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 { (exit 1); exit 1; }; } # 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 sensible to this). - . ./$as_me.lineno + # original and so on. Autoconf is especially sensitive to this). + . "./$as_me.lineno" # Exit status is that of the last command. exit } -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in +-n*) + case `echo 'x\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + *) ECHO_C='\c';; + esac;; +*) + ECHO_N='-n';; esac -if expr a : '\(a\)' >/dev/null 2>&1; then +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir +fi echo >conf$$.file if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links + as_ln_s='ln -s' + # ... 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'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' fi -rm -f conf$$ conf$$.exe conf$$.file +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null if mkdir -p . 2>/dev/null; then as_mkdir_p=: @@ -222,7 +512,19 @@ else as_mkdir_p=false fi -as_executable_p="test -f" +# Find out whether ``test -x'' works. Don't use a zero-byte file, as +# systems may use methods other than mode bits to determine executability. +cat >conf$$.file <<_ASEOF +#! /bin/sh +exit 0 +_ASEOF +chmod +x conf$$.file +if test -x conf$$.file >/dev/null 2>&1; then + as_executable_p="test -x" +else + as_executable_p=: +fi +rm -f conf$$.file # 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'" @@ -231,15 +533,6 @@ as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - # Check that we are running under the correct shell. @@ -395,29 +688,26 @@ tagnames=${tagnames+${tagnames},}CXX tagnames=${tagnames+${tagnames},}F77 +exec 7<&0 </dev/null 6>&1 + # Name of the host. # hostname on some systems (SVR3.2, Linux) returns a bogus exit status, # so uname gets run too. ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` -exec 6>&1 - # # Initializations. # ac_default_prefix=/usr/local +ac_clean_files= ac_config_libobj_dir=. +LIBOBJS= cross_compiling=no subdirs= MFLAGS= MAKEFLAGS= SHELL=${CONFIG_SHELL-/bin/sh} -# Maximum number of lines to put in a shell here document. -# This variable seems obsolete. It should probably be removed, and -# only ac_max_sed_lines should be used. -: ${ac_max_here_lines=38} - # Identity of this package. PACKAGE_NAME= PACKAGE_TARNAME= @@ -453,17 +743,144 @@ ac_includes_default="\ #endif #if HAVE_INTTYPES_H # include <inttypes.h> -#else -# if HAVE_STDINT_H -# include <stdint.h> -# endif +#endif +#if HAVE_STDINT_H +# include <stdint.h> #endif #if HAVE_UNISTD_H # include <unistd.h> #endif" -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE RANLIB ac_ct_RANLIB build build_cpu build_vendor build_os host host_cpu host_vendor host_os EGREP LN_S ECHO AR ac_ct_AR CPP CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL LEX LEXLIB LEX_OUTPUT_ROOT YACC PGCONFIG PGSQL_INCLUDE_DIR PGSQL_LIB_DIR enable_rpath_TRUE enable_rpath_FALSE LIBOBJS LTLIBOBJS' +ac_subst_vars='SHELL +PATH_SEPARATOR +PACKAGE_NAME +PACKAGE_TARNAME +PACKAGE_VERSION +PACKAGE_STRING +PACKAGE_BUGREPORT +exec_prefix +prefix +program_transform_name +bindir +sbindir +libexecdir +datarootdir +datadir +sysconfdir +sharedstatedir +localstatedir +includedir +oldincludedir +docdir +infodir +htmldir +dvidir +pdfdir +psdir +libdir +localedir +mandir +DEFS +ECHO_C +ECHO_N +ECHO_T +LIBS +build_alias +host_alias +target_alias +CC +CFLAGS +LDFLAGS +CPPFLAGS +ac_ct_CC +EXEEXT +OBJEXT +INSTALL_PROGRAM +INSTALL_SCRIPT +INSTALL_DATA +CYGPATH_W +PACKAGE +VERSION +ACLOCAL +AUTOCONF +AUTOMAKE +AUTOHEADER +MAKEINFO +install_sh +STRIP +INSTALL_STRIP_PROGRAM +mkdir_p +AWK +SET_MAKE +am__leading_dot +AMTAR +am__tar +am__untar +DEPDIR +am__include +am__quote +AMDEP_TRUE +AMDEP_FALSE +AMDEPBACKSLASH +CCDEPMODE +am__fastdepCC_TRUE +am__fastdepCC_FALSE +RANLIB +build +build_cpu +build_vendor +build_os +host +host_cpu +host_vendor +host_os +GREP +EGREP +LN_S +ECHO +AR +CPP +CXX +CXXFLAGS +ac_ct_CXX +CXXDEPMODE +am__fastdepCXX_TRUE +am__fastdepCXX_FALSE +CXXCPP +F77 +FFLAGS +ac_ct_F77 +LIBTOOL +LEX +LEXLIB +LEX_OUTPUT_ROOT +YACC +YFLAGS +PGCONFIG +PGSQL_INCLUDE_DIR +PGSQL_LIB_DIR +enable_rpath_TRUE +enable_rpath_FALSE +LIBOBJS +LTLIBOBJS' ac_subst_files='' + ac_precious_vars='build_alias +host_alias +target_alias +CC +CFLAGS +LDFLAGS +CPPFLAGS +CPP +CXX +CXXFLAGS +CCC +CXXCPP +F77 +FFLAGS +YACC +YFLAGS' + # Initialize some variables set by options. ac_init_help= @@ -490,34 +907,48 @@ x_libraries=NONE # and all the variables that are supposed to be based on exec_prefix # by default will actually change. # Use braces instead of parens because sh, perl, etc. also accept them. +# (The list follows the same order as the GNU Coding Standards.) bindir='${exec_prefix}/bin' sbindir='${exec_prefix}/sbin' libexecdir='${exec_prefix}/libexec' -datadir='${prefix}/share' +datarootdir='${prefix}/share' +datadir='${datarootdir}' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' -libdir='${exec_prefix}/lib' includedir='${prefix}/include' oldincludedir='/usr/include' -infodir='${prefix}/info' -mandir='${prefix}/man' +docdir='${datarootdir}/doc/${PACKAGE}' +infodir='${datarootdir}/info' +htmldir='${docdir}' +dvidir='${docdir}' +pdfdir='${docdir}' +psdir='${docdir}' +libdir='${exec_prefix}/lib' +localedir='${datarootdir}/locale' +mandir='${datarootdir}/man' ac_prev= +ac_dashdash= for ac_option do # If the previous option needs an argument, assign it. if test -n "$ac_prev"; then - eval "$ac_prev=\$ac_option" + eval $ac_prev=\$ac_option ac_prev= continue fi - ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` + case $ac_option in + *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; + *) ac_optarg=yes ;; + esac # Accept the important Cygnus configure options, so we can diagnose typos. - case $ac_option in + case $ac_dashdash$ac_option in + --) + ac_dashdash=yes ;; -bindir | --bindir | --bindi | --bind | --bin | --bi) ac_prev=bindir ;; @@ -539,12 +970,18 @@ do --config-cache | -C) cache_file=config.cache ;; - -datadir | --datadir | --datadi | --datad | --data | --dat | --da) + -datadir | --datadir | --datadi | --datad) ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ - | --da=*) + -datadir=* | --datadir=* | --datadi=* | --datad=*) datadir=$ac_optarg ;; + -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ + | --dataroo | --dataro | --datar) + ac_prev=datarootdir ;; + -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ + | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) + datarootdir=$ac_optarg ;; + -disable-* | --disable-*) ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. @@ -552,7 +989,17 @@ do { echo "$as_me: error: invalid feature name: $ac_feature" >&2 { (exit 1); exit 1; }; } ac_feature=`echo $ac_feature | sed 's/-/_/g'` - eval "enable_$ac_feature=no" ;; + eval enable_$ac_feature=no ;; + + -docdir | --docdir | --docdi | --doc | --do) + ac_prev=docdir ;; + -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) + docdir=$ac_optarg ;; + + -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) + ac_prev=dvidir ;; + -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) + dvidir=$ac_optarg ;; -enable-* | --enable-*) ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` @@ -561,11 +1008,7 @@ do { echo "$as_me: error: invalid feature name: $ac_feature" >&2 { (exit 1); exit 1; }; } ac_feature=`echo $ac_feature | sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "enable_$ac_feature='$ac_optarg'" ;; + eval enable_$ac_feature=\$ac_optarg ;; -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ @@ -592,6 +1035,12 @@ do -host=* | --host=* | --hos=* | --ho=*) host_alias=$ac_optarg ;; + -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) + ac_prev=htmldir ;; + -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ + | --ht=*) + htmldir=$ac_optarg ;; + -includedir | --includedir | --includedi | --included | --include \ | --includ | --inclu | --incl | --inc) ac_prev=includedir ;; @@ -616,13 +1065,16 @@ do | --libexe=* | --libex=* | --libe=*) libexecdir=$ac_optarg ;; + -localedir | --localedir | --localedi | --localed | --locale) + ac_prev=localedir ;; + -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) + localedir=$ac_optarg ;; + -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst \ - | --locals | --local | --loca | --loc | --lo) + | --localstate | --localstat | --localsta | --localst | --locals) ac_prev=localstatedir ;; -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* \ - | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) + | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) localstatedir=$ac_optarg ;; -mandir | --mandir | --mandi | --mand | --man | --ma | --m) @@ -687,6 +1139,16 @@ do | --progr-tra=* | --program-tr=* | --program-t=*) program_transform_name=$ac_optarg ;; + -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) + ac_prev=pdfdir ;; + -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) + pdfdir=$ac_optarg ;; + + -psdir | --psdir | --psdi | --psd | --ps) + ac_prev=psdir ;; + -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) + psdir=$ac_optarg ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) silent=yes ;; @@ -743,11 +1205,7 @@ do { echo "$as_me: error: invalid package name: $ac_package" >&2 { (exit 1); exit 1; }; } ac_package=`echo $ac_package| sed 's/-/_/g'` - case $ac_option in - *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; - *) ac_optarg=yes ;; - esac - eval "with_$ac_package='$ac_optarg'" ;; + eval with_$ac_package=\$ac_optarg ;; -without-* | --without-*) ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` @@ -756,7 +1214,7 @@ do { echo "$as_me: error: invalid package name: $ac_package" >&2 { (exit 1); exit 1; }; } ac_package=`echo $ac_package | sed 's/-/_/g'` - eval "with_$ac_package=no" ;; + eval with_$ac_package=no ;; --x) # Obsolete; use --with-x. @@ -787,8 +1245,7 @@ Try \`$0 --help' for more information." >&2 expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 { (exit 1); exit 1; }; } - ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` - eval "$ac_envvar='$ac_optarg'" + eval $ac_envvar=\$ac_optarg export $ac_envvar ;; *) @@ -808,27 +1265,19 @@ if test -n "$ac_prev"; then { (exit 1); exit 1; }; } fi -# Be sure to have absolute paths. -for ac_var in exec_prefix prefix +# Be sure to have absolute directory names. +for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ + datadir sysconfdir sharedstatedir localstatedir includedir \ + oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ + libdir localedir mandir do - eval ac_val=$`echo $ac_var` + eval ac_val=\$$ac_var case $ac_val in - [\\/$]* | ?:[\\/]* | NONE | '' ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; - esac -done - -# Be sure to have absolute paths. -for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ - localstatedir libdir includedir oldincludedir infodir mandir -do - eval ac_val=$`echo $ac_var` - case $ac_val in - [\\/$]* | ?:[\\/]* ) ;; - *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; };; + [\\/$]* | ?:[\\/]* ) continue;; + NONE | '' ) case $ac_var in *prefix ) continue;; esac;; esac + { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 + { (exit 1); exit 1; }; } done # There might be people who depend on the old broken behavior: `$host' @@ -855,95 +1304,77 @@ test -n "$host_alias" && ac_tool_prefix=$host_alias- test "$silent" = yes && exec 6>/dev/null +ac_pwd=`pwd` && test -n "$ac_pwd" && +ac_ls_di=`ls -di .` && +ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || + { echo "$as_me: error: Working directory cannot be determined" >&2 + { (exit 1); exit 1; }; } +test "X$ac_ls_di" = "X$ac_pwd_ls_di" || + { echo "$as_me: error: pwd does not report name of working directory" >&2 + { (exit 1); exit 1; }; } + + # Find the source files, if location was not specified. if test -z "$srcdir"; then ac_srcdir_defaulted=yes - # Try the directory containing this script, then its parent. - ac_confdir=`(dirname "$0") 2>/dev/null || + # Try the directory containing this script, then the parent directory. + ac_confdir=`$as_dirname -- "$0" || $as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$0" : 'X\(//\)[^/]' \| \ X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || + X"$0" : 'X\(/\)' \| . 2>/dev/null || echo X"$0" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` srcdir=$ac_confdir - if test ! -r $srcdir/$ac_unique_file; then + if test ! -r "$srcdir/$ac_unique_file"; then srcdir=.. fi else ac_srcdir_defaulted=no fi -if test ! -r $srcdir/$ac_unique_file; then - if test "$ac_srcdir_defaulted" = yes; then - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 +if test ! -r "$srcdir/$ac_unique_file"; then + test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." + { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 { (exit 1); exit 1; }; } - else - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 - { (exit 1); exit 1; }; } - fi fi -(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || - { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 +ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" +ac_abs_confdir=`( + cd "$srcdir" && test -r "./$ac_unique_file" || { echo "$as_me: error: $ac_msg" >&2 { (exit 1); exit 1; }; } -srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` -ac_env_build_alias_set=${build_alias+set} -ac_env_build_alias_value=$build_alias -ac_cv_env_build_alias_set=${build_alias+set} -ac_cv_env_build_alias_value=$build_alias -ac_env_host_alias_set=${host_alias+set} -ac_env_host_alias_value=$host_alias -ac_cv_env_host_alias_set=${host_alias+set} -ac_cv_env_host_alias_value=$host_alias -ac_env_target_alias_set=${target_alias+set} -ac_env_target_alias_value=$target_alias -ac_cv_env_target_alias_set=${target_alias+set} -ac_cv_env_target_alias_value=$target_alias -ac_env_CC_set=${CC+set} -ac_env_CC_value=$CC -ac_cv_env_CC_set=${CC+set} -ac_cv_env_CC_value=$CC -ac_env_CFLAGS_set=${CFLAGS+set} -ac_env_CFLAGS_value=$CFLAGS -ac_cv_env_CFLAGS_set=${CFLAGS+set} -ac_cv_env_CFLAGS_value=$CFLAGS -ac_env_LDFLAGS_set=${LDFLAGS+set} -ac_env_LDFLAGS_value=$LDFLAGS -ac_cv_env_LDFLAGS_set=${LDFLAGS+set} -ac_cv_env_LDFLAGS_value=$LDFLAGS -ac_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_env_CPPFLAGS_value=$CPPFLAGS -ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set} -ac_cv_env_CPPFLAGS_value=$CPPFLAGS -ac_env_CPP_set=${CPP+set} -ac_env_CPP_value=$CPP -ac_cv_env_CPP_set=${CPP+set} -ac_cv_env_CPP_value=$CPP -ac_env_CXX_set=${CXX+set} -ac_env_CXX_value=$CXX -ac_cv_env_CXX_set=${CXX+set} -ac_cv_env_CXX_value=$CXX -ac_env_CXXFLAGS_set=${CXXFLAGS+set} -ac_env_CXXFLAGS_value=$CXXFLAGS -ac_cv_env_CXXFLAGS_set=${CXXFLAGS+set} -ac_cv_env_CXXFLAGS_value=$CXXFLAGS -ac_env_CXXCPP_set=${CXXCPP+set} -ac_env_CXXCPP_value=$CXXCPP -ac_cv_env_CXXCPP_set=${CXXCPP+set} -ac_cv_env_CXXCPP_value=$CXXCPP -ac_env_F77_set=${F77+set} -ac_env_F77_value=$F77 -ac_cv_env_F77_set=${F77+set} -ac_cv_env_F77_value=$F77 -ac_env_FFLAGS_set=${FFLAGS+set} -ac_env_FFLAGS_value=$FFLAGS -ac_cv_env_FFLAGS_set=${FFLAGS+set} -ac_cv_env_FFLAGS_value=$FFLAGS - + pwd)` +# When building in place, set srcdir=. +if test "$ac_abs_confdir" = "$ac_pwd"; then + srcdir=. +fi +# Remove unnecessary trailing slashes from srcdir. +# Double slashes in file names in object file debugging info +# mess up M-x gdb in Emacs. +case $srcdir in +*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; +esac +for ac_var in $ac_precious_vars; do + eval ac_env_${ac_var}_set=\${${ac_var}+set} + eval ac_env_${ac_var}_value=\$${ac_var} + eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} + eval ac_cv_env_${ac_var}_value=\$${ac_var} +done + # # Report the --help message. # @@ -971,9 +1402,6 @@ Configuration: -n, --no-create do not create output files --srcdir=DIR find the sources in DIR [configure dir or \`..'] -_ACEOF - - cat <<_ACEOF Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX [$ac_default_prefix] @@ -991,15 +1419,22 @@ Fine tuning of the installation directories: --bindir=DIR user executables [EPREFIX/bin] --sbindir=DIR system admin executables [EPREFIX/sbin] --libexecdir=DIR program executables [EPREFIX/libexec] - --datadir=DIR read-only architecture-independent data [PREFIX/share] --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] - --infodir=DIR info documentation [PREFIX/info] - --mandir=DIR man documentation [PREFIX/man] + --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] + --datadir=DIR read-only architecture-independent data [DATAROOTDIR] + --infodir=DIR info documentation [DATAROOTDIR/info] + --localedir=DIR locale-dependent data [DATAROOTDIR/locale] + --mandir=DIR man documentation [DATAROOTDIR/man] + --docdir=DIR documentation root [DATAROOTDIR/doc/PACKAGE] + --htmldir=DIR html documentation [DOCDIR] + --dvidir=DIR dvi documentation [DOCDIR] + --pdfdir=DIR pdf documentation [DOCDIR] + --psdir=DIR ps documentation [DOCDIR] _ACEOF cat <<\_ACEOF @@ -1024,10 +1459,8 @@ Optional Features: --enable-FEATURE[=ARG] include FEATURE [ARG=yes] --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors - --enable-shared[=PKGS] - build shared libraries [default=yes] - --enable-static[=PKGS] - build static libraries [default=yes] + --enable-shared[=PKGS] build shared libraries [default=yes] + --enable-static[=PKGS] build static libraries [default=yes] --enable-fast-install[=PKGS] optimize for fast installation [default=yes] --disable-libtool-lock avoid locking (might break parallel builds) @@ -1039,142 +1472,115 @@ Optional Packages: --with-gnu-ld assume the C compiler uses GNU ld [default=no] --with-pic try to use only PIC/non-PIC objects [default=use both] - --with-tags[=TAGS] - include additional configurations [automatic] + --with-tags[=TAGS] include additional configurations [automatic] --with-pgsql=DIR site header files for PostgreSQL in DIR --with-pgsql-includedir=DIR site header files for PostgreSQL in DIR --with-pgsql-libdir=DIR site library files for PostgreSQL in DIR + --with-pam build with PAM support Some influential environment variables: CC C compiler command CFLAGS C compiler flags LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a nonstandard directory <lib dir> - CPPFLAGS C/C++ preprocessor flags, e.g. -I<include dir> if you have - headers in a nonstandard directory <include dir> + CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I<include dir> if + you have headers in a nonstandard directory <include dir> CPP C preprocessor CXX C++ compiler command CXXFLAGS C++ compiler flags CXXCPP C++ preprocessor F77 Fortran 77 compiler command FFLAGS Fortran 77 compiler flags + YACC The `Yet Another C Compiler' implementation to use. Defaults to + the first program found out of: `bison -y', `byacc', `yacc'. + YFLAGS The list of arguments that will be passed by default to $YACC. + This script will default YFLAGS to the empty string to avoid a + default value of `-d' given by some make applications. Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. _ACEOF +ac_status=$? fi if test "$ac_init_help" = "recursive"; then # If there are subdirs, report their specific --help. - ac_popdir=`pwd` for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue - test -d $ac_dir || continue + test -d "$ac_dir" || continue ac_builddir=. -if test "$ac_dir" != .; then +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix case $srcdir in - .) # No --srcdir option. We are building in place. + .) # We are building in place. ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac - -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac - - cd $ac_dir - # Check for guested configure; otherwise get Cygnus style configure. - if test -f $ac_srcdir/configure.gnu; then - echo - $SHELL $ac_srcdir/configure.gnu --help=recursive - elif test -f $ac_srcdir/configure; then - echo - $SHELL $ac_srcdir/configure --help=recursive - elif test -f $ac_srcdir/configure.ac || - test -f $ac_srcdir/configure.in; then - echo - $ac_configure --help +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + cd "$ac_dir" || { ac_status=$?; continue; } + # Check for guested configure. + if test -f "$ac_srcdir/configure.gnu"; then + echo && + $SHELL "$ac_srcdir/configure.gnu" --help=recursive + elif test -f "$ac_srcdir/configure"; then + echo && + $SHELL "$ac_srcdir/configure" --help=recursive else echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 - fi - cd $ac_popdir + fi || ac_status=$? + cd "$ac_pwd" || { ac_status=$?; break; } done fi -test -n "$ac_init_help" && exit 0 +test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF +configure +generated by GNU Autoconf 2.60 -Copyright (C) 2003 Free Software Foundation, Inc. +Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, +2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF - exit 0 + exit fi -exec 5>config.log -cat >&5 <<_ACEOF +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 $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was +generated by GNU Autoconf 2.60. Invocation command line was $ $0 $@ _ACEOF +exec 5>>config.log { cat <<_ASUNAME ## --------- ## @@ -1193,7 +1599,7 @@ uname -v = `(uname -v) 2>/dev/null || echo unknown` /bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` -hostinfo = `(hostinfo) 2>/dev/null || echo unknown` +/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` /bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` @@ -1207,6 +1613,7 @@ do test -z "$as_dir" && as_dir=. echo "PATH: $as_dir" done +IFS=$as_save_IFS } >&5 @@ -1228,7 +1635,6 @@ _ACEOF ac_configure_args= ac_configure_args0= ac_configure_args1= -ac_sep= ac_must_keep_next=false for ac_pass in 1 2 do @@ -1239,7 +1645,7 @@ do -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) continue ;; - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) + *\'*) ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in @@ -1261,9 +1667,7 @@ do -* ) ac_must_keep_next=true ;; esac fi - ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" - # Get rid of the leading space. - ac_sep=" " + ac_configure_args="$ac_configure_args '$ac_arg'" ;; esac done @@ -1274,8 +1678,8 @@ $as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_ # When interrupted or exit'd, cleanup temporary files, and complete # config.log. We remove comments because anyway the quotes in there # would cause problems or look ugly. -# WARNING: Be sure not to use single quotes in there, as some shells, -# such as our DU 5.0 friend, will then `close' the trap. +# WARNING: Use '\'' to represent an apostrophe within the trap. +# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. trap 'exit_status=$? # Save into config.log some information that might help in debugging. { @@ -1288,20 +1692,34 @@ trap 'exit_status=$? _ASBOX echo # The following way of writing the cache mishandles newlines in values, -{ +( + for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5 +echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + *) $as_unset $ac_var ;; + esac ;; + esac + done (set) 2>&1 | - case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in - *ac_space=\ *) + case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( + *${as_nl}ac_space=\ *) sed -n \ - "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" - ;; + "s/'\''/'\''\\\\'\'''\''/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" + ;; #( *) - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; - esac; -} + esac | + sort +) echo cat <<\_ASBOX @@ -1312,22 +1730,28 @@ _ASBOX echo for ac_var in $ac_subst_vars do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + echo "$ac_var='\''$ac_val'\''" done | sort echo if test -n "$ac_subst_files"; then cat <<\_ASBOX -## ------------- ## -## Output files. ## -## ------------- ## +## ------------------- ## +## File substitutions. ## +## ------------------- ## _ASBOX echo for ac_var in $ac_subst_files do - eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + echo "$ac_var='\''$ac_val'\''" done | sort echo fi @@ -1339,26 +1763,24 @@ _ASBOX ## ----------- ## _ASBOX echo - sed "/^$/d" confdefs.h | sort + cat confdefs.h echo fi test "$ac_signal" != 0 && echo "$as_me: caught signal $ac_signal" echo "$as_me: exit $exit_status" } >&5 - rm -f core *.core && - rm -rf conftest* confdefs* conf$$* $ac_clean_files && + rm -f core *.core core.conftest.* && + rm -f -r conftest* confdefs* conf$$* $ac_clean_files && exit $exit_status - ' 0 +' 0 for ac_signal in 1 2 13 15; do trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal done ac_signal=0 # confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -rf conftest* confdefs.h -# AIX cpp loses on an empty file, so make sure it contains at least a newline. -echo >confdefs.h +rm -f -r conftest* confdefs.h # Predefined preprocessor variables. @@ -1389,14 +1811,17 @@ _ACEOF # Let the site file select an alternate cache file if it wants to. # Prefer explicitly selected file to automatically selected ones. -if test -z "$CONFIG_SITE"; then - if test "x$prefix" != xNONE; then - CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" - else - CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" - fi +if test -n "$CONFIG_SITE"; then + set x "$CONFIG_SITE" +elif test "x$prefix" != xNONE; then + set x "$prefix/share/config.site" "$prefix/etc/config.site" +else + set x "$ac_default_prefix/share/config.site" \ + "$ac_default_prefix/etc/config.site" fi -for ac_site_file in $CONFIG_SITE; do +shift +for ac_site_file +do if test -r "$ac_site_file"; then { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 echo "$as_me: loading site script $ac_site_file" >&6;} @@ -1412,8 +1837,8 @@ if test -r "$cache_file"; then { echo "$as_me:$LINENO: loading cache $cache_file" >&5 echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in - [\\/]* | ?:[\\/]* ) . $cache_file;; - *) . ./$cache_file;; + [\\/]* | ?:[\\/]* ) . "$cache_file";; + *) . "./$cache_file";; esac fi else @@ -1425,12 +1850,11 @@ fi # Check that the precious variables saved in the cache have kept the same # value. ac_cache_corrupted=false -for ac_var in `(set) 2>&1 | - sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do +for ac_var in $ac_precious_vars; do eval ac_old_set=\$ac_cv_env_${ac_var}_set eval ac_new_set=\$ac_env_${ac_var}_set - eval ac_old_val="\$ac_cv_env_${ac_var}_value" - eval ac_new_val="\$ac_env_${ac_var}_value" + eval ac_old_val=\$ac_cv_env_${ac_var}_value + eval ac_new_val=\$ac_env_${ac_var}_value case $ac_old_set,$ac_new_set in set,) { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 @@ -1455,8 +1879,7 @@ echo "$as_me: current value: $ac_new_val" >&2;} # Pass precious variables to config.status. if test "$ac_new_set" = set; then case $ac_new_val in - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) - ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; + *\'*) ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; *) ac_arg=$ac_var=$ac_new_val ;; esac case " $ac_configure_args " in @@ -1473,12 +1896,6 @@ echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start ov { (exit 1); exit 1; }; } fi -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - @@ -1495,6 +1912,11 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu @@ -1506,8 +1928,8 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -1520,32 +1942,34 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}gcc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 + { echo "$as_me:$LINENO: result: $CC" >&5 +echo "${ECHO_T}$CC" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -1558,36 +1982,51 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="gcc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 + { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 +echo "${ECHO_T}$ac_ct_CC" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi - CC=$ac_ct_CC + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&5 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&2;} +ac_tool_warned=yes ;; +esac + CC=$ac_ct_CC + fi else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -1600,74 +2039,34 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 -else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then - ac_cv_prog_ac_ct_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 + { echo "$as_me:$LINENO: result: $CC" >&5 +echo "${ECHO_T}$CC" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi - CC=$ac_ct_CC -else - CC="$ac_cv_prog_CC" -fi + fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -1681,7 +2080,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_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 @@ -1692,6 +2091,7 @@ do fi done done +IFS=$as_save_IFS if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. @@ -1709,22 +2109,23 @@ fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 + { echo "$as_me:$LINENO: result: $CC" >&5 +echo "${ECHO_T}$CC" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then - for ac_prog in cl + for ac_prog in cl.exe do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -1737,36 +2138,38 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6 + { echo "$as_me:$LINENO: result: $CC" >&5 +echo "${ECHO_T}$CC" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC - for ac_prog in cl + for ac_prog in cl.exe do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -1779,29 +2182,45 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6 + { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 +echo "${ECHO_T}$ac_ct_CC" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + test -n "$ac_ct_CC" && break done - CC=$ac_ct_CC + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&5 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&2;} +ac_tool_warned=yes ;; +esac + CC=$ac_ct_CC + fi fi fi @@ -1814,21 +2233,35 @@ See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } # Provide some information about the compiler. -echo "$as_me:$LINENO:" \ - "checking for C compiler version" >&5 +echo "$as_me:$LINENO: checking for C compiler version" >&5 ac_compiler=`set X $ac_compile; echo $2` -{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5 - (eval $ac_compiler --version </dev/null >&5) 2>&5 +{ (ac_try="$ac_compiler --version >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler --version >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5 - (eval $ac_compiler -v </dev/null >&5) 2>&5 +{ (ac_try="$ac_compiler -v >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler -v >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5 - (eval $ac_compiler -V </dev/null >&5) 2>&5 +{ (ac_try="$ac_compiler -V >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler -V >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } @@ -1853,46 +2286,70 @@ ac_clean_files="$ac_clean_files a.out a.exe b.out" # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. -echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 -echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 +echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6; } ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` -if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5 - (eval $ac_link_default) 2>&5 +# +# List of possible output files, starting from the most likely. +# The algorithm is not robust to junk in `.', hence go to wildcards (a.*) +# only as a last resort. b.out is created by i960 compilers. +ac_files='a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out' +# +# The IRIX 6 linker writes into existing files which may not be +# executable, retaining their permissions. Remove them first so a +# subsequent execution test works. +ac_rmfiles= +for ac_file in $ac_files +do + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;; + * ) ac_rmfiles="$ac_rmfiles $ac_file";; + esac +done +rm -f $ac_rmfiles + +if { (ac_try="$ac_link_default" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link_default") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - # Find the output, starting from the most likely. This scheme is -# not robust to junk in `.', hence go to wildcards (a.*) only as a last -# resort. - -# Be careful to initialize this variable, since it used to be cached. -# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile. -ac_cv_exeext= -# b.out is created by i960 compilers. -for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out + # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. +# So ignore a value of `no', otherwise this would lead to `EXEEXT = no' +# in a Makefile. We should not override ac_cv_exeext if it was cached, +# so that the user can short-circuit this test for compilers unknown to +# Autoconf. +for ac_file in $ac_files do test -f "$ac_file" || continue case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) - ;; - conftest.$ac_ext ) - # This is the source file. + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;; [ab].out ) # We found the default executable, but exeext='' is most # certainly right. break;; *.* ) - ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - # FIXME: I believe we export ac_cv_exeext for Libtool, - # but it would be cool to find out if it's true. Does anybody - # maintain Libtool? --akim. - export ac_cv_exeext + if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; + then :; else + ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + fi + # We set ac_cv_exeext here because the later test for it is not + # safe: cross compilers may not add the suffix if given an `-o' + # argument, so we may need to know it at that point already. + # Even if this section looks crufty: it has the advantage of + # actually working. break;; * ) break;; esac done +test "$ac_cv_exeext" = no && ac_cv_exeext= + else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 @@ -1905,19 +2362,23 @@ See \`config.log' for more details." >&2;} fi ac_exeext=$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_file" >&5 -echo "${ECHO_T}$ac_file" >&6 +{ echo "$as_me:$LINENO: result: $ac_file" >&5 +echo "${ECHO_T}$ac_file" >&6; } -# Check the compiler produces executables we can run. If not, either +# Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether the C compiler works" >&5 -echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether the C compiler works" >&5 +echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6; } # FIXME: These cross compiler hacks should be removed for Autoconf 3.0 # If not cross compiling, check that we can run a simple program. if test "$cross_compiling" != yes; then if { ac_try='./$ac_file' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -1936,22 +2397,27 @@ See \`config.log' for more details." >&2;} fi fi fi -echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 +{ echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } rm -f a.out a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save -# Check the compiler produces executables we can run. If not, either +# Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. -echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 -echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6 -echo "$as_me:$LINENO: result: $cross_compiling" >&5 -echo "${ECHO_T}$cross_compiling" >&6 - -echo "$as_me:$LINENO: checking for suffix of executables" >&5 -echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6 -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 +{ echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 +echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6; } +{ echo "$as_me:$LINENO: result: $cross_compiling" >&5 +echo "${ECHO_T}$cross_compiling" >&6; } + +{ echo "$as_me:$LINENO: checking for suffix of executables" >&5 +echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6; } +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then @@ -1962,9 +2428,8 @@ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 for ac_file in conftest.exe conftest conftest.*; do test -f "$ac_file" || continue case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - export ac_cv_exeext break;; * ) break;; esac @@ -1978,14 +2443,14 @@ See \`config.log' for more details." >&2;} fi rm -f conftest$ac_cv_exeext -echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 -echo "${ECHO_T}$ac_cv_exeext" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 +echo "${ECHO_T}$ac_cv_exeext" >&6; } rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT -echo "$as_me:$LINENO: checking for suffix of object files" >&5 -echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for suffix of object files" >&5 +echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6; } if test "${ac_cv_objext+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -2005,14 +2470,20 @@ main () } _ACEOF rm -f conftest.o conftest.obj -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do + for ac_file in conftest.o conftest.obj conftest.*; do + test -f "$ac_file" || continue; case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;; + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf ) ;; *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` break;; esac @@ -2030,12 +2501,12 @@ fi rm -f conftest.$ac_cv_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 -echo "${ECHO_T}$ac_cv_objext" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 +echo "${ECHO_T}$ac_cv_objext" >&6; } OBJEXT=$ac_cv_objext ac_objext=$OBJEXT -echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 -echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 +echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6; } if test "${ac_cv_c_compiler_gnu+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -2058,24 +2529,36 @@ main () } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -2084,24 +2567,28 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_compiler_gnu=no + ac_compiler_gnu=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi -echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 -echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 +echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6; } GCC=`test $ac_compiler_gnu = yes && echo yes` ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS -CFLAGS="-g" -echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 -echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 +echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6; } if test "${ac_cv_prog_cc_g+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - cat >conftest.$ac_ext <<_ACEOF + ac_save_c_werror_flag=$ac_c_werror_flag + ac_c_werror_flag=yes + ac_cv_prog_cc_g=no + CFLAGS="-g" + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -2117,24 +2604,147 @@ main () } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_prog_cc_g=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + CFLAGS="" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + : +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_c_werror_flag=$ac_save_c_werror_flag + CFLAGS="-g" + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -2143,12 +2753,20 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_prog_cc_g=no + fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_c_werror_flag=$ac_save_c_werror_flag fi -echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 +echo "${ECHO_T}$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then @@ -2164,12 +2782,12 @@ else CFLAGS= fi fi -echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 -echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 -if test "${ac_cv_prog_cc_stdc+set}" = set; then +{ echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5 +echo $ECHO_N "checking for $CC option to accept ISO C89... $ECHO_C" >&6; } +if test "${ac_cv_prog_cc_c89+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - ac_cv_prog_cc_stdc=no + ac_cv_prog_cc_c89=no ac_save_CC=$CC cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -2203,12 +2821,17 @@ static char *f (char * (*g) (char **, int), char **p, ...) /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated - as 'x'. The following induces an error, until -std1 is added to get + as 'x'. The following induces an error, until -std is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something - that's true only with -std1. */ + that's true only with -std. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; +/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters + inside strings and character constants. */ +#define FOO(x) 'x' +int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; + int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; @@ -2223,205 +2846,74 @@ return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; return 0; } _ACEOF -# Don't try gcc -ansi; that turns off useful extensions and -# breaks some systems' header files. -# AIX -qlanglvl=ansi -# Ultrix and OSF/1 -std1 -# HP-UX 10.20 and later -Ae -# HP-UX older versions -Aa -D_HPUX_SOURCE -# SVR4 -Xc -D__EXTENSIONS__ -for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" +for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ + -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_prog_cc_stdc=$ac_arg -break + ac_cv_prog_cc_c89=$ac_arg else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 + fi -rm -f conftest.err conftest.$ac_objext + +rm -f core conftest.err conftest.$ac_objext + test "x$ac_cv_prog_cc_c89" != "xno" && break done -rm -f conftest.$ac_ext conftest.$ac_objext +rm -f conftest.$ac_ext CC=$ac_save_CC fi - -case "x$ac_cv_prog_cc_stdc" in - x|xno) - echo "$as_me:$LINENO: result: none needed" >&5 -echo "${ECHO_T}none needed" >&6 ;; +# AC_CACHE_VAL +case "x$ac_cv_prog_cc_c89" in + x) + { echo "$as_me:$LINENO: result: none needed" >&5 +echo "${ECHO_T}none needed" >&6; } ;; + xno) + { echo "$as_me:$LINENO: result: unsupported" >&5 +echo "${ECHO_T}unsupported" >&6; } ;; *) - echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 - CC="$CC $ac_cv_prog_cc_stdc" ;; + CC="$CC $ac_cv_prog_cc_c89" + { echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5 +echo "${ECHO_T}$ac_cv_prog_cc_c89" >&6; } ;; esac -# Some people use a C++ compiler to compile C. Since we use `exit', -# in C++ we need to declare it. In case someone uses the same compiler -# for both compiling C and C++ we need to have the C++ compiler decide -# the declaration of exit, since it's the most demanding environment. -cat >conftest.$ac_ext <<_ACEOF -#ifndef __cplusplus - choke me -#endif -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - for ac_declaration in \ - '' \ - 'extern "C" void std::exit (int) throw (); using std::exit;' \ - 'extern "C" void std::exit (int); using std::exit;' \ - 'extern "C" void exit (int) throw ();' \ - 'extern "C" void exit (int);' \ - 'void exit (int);' -do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -#include <stdlib.h> -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -continue -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_declaration -int -main () -{ -exit (42); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; } && - { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -rm -f conftest* -if test -n "$ac_declaration"; then - echo '#ifdef __cplusplus' >>confdefs.h - echo $ac_declaration >>confdefs.h - echo '#endif' >>confdefs.h -fi - -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -2431,29 +2923,35 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu am__api_version="1.9" ac_aux_dir= -for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do - if test -f $ac_dir/install-sh; then +for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do + if test -f "$ac_dir/install-sh"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install-sh -c" break - elif test -f $ac_dir/install.sh; then + elif test -f "$ac_dir/install.sh"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install.sh -c" break - elif test -f $ac_dir/shtool; then + elif test -f "$ac_dir/shtool"; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/shtool install -c" break fi done if test -z "$ac_aux_dir"; then - { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5 -echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;} + { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&5 +echo "$as_me: error: cannot find install-sh or install.sh in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" >&2;} { (exit 1); exit 1; }; } fi -ac_config_guess="$SHELL $ac_aux_dir/config.guess" -ac_config_sub="$SHELL $ac_aux_dir/config.sub" -ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure. + +# These three variables are undocumented and unsupported, +# and are intended to be withdrawn in a future Autoconf release. +# They can cause serious problems if a builder's source tree is in a directory +# whose full name contains unusual characters. +ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. +ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. +ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. + # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or @@ -2468,8 +2966,8 @@ ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure. # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. -echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 -echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 +echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6; } if test -z "$INSTALL"; then if test "${ac_cv_path_install+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -2491,7 +2989,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 $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then + if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_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. @@ -2510,21 +3008,22 @@ case $as_dir/ in ;; esac done +IFS=$as_save_IFS fi if test "${ac_cv_path_install+set}" = set; then INSTALL=$ac_cv_path_install else - # As a last resort, use the slow shell script. We don't cache a - # path for INSTALL within a source directory, because that will + # As a last resort, use the slow shell script. Don't cache a + # value for INSTALL within a source directory, because that will # break other packages using the cache if that directory is - # removed, or if the path is relative. + # removed, or if the value is a relative name. INSTALL=$ac_install_sh fi fi -echo "$as_me:$LINENO: result: $INSTALL" >&5 -echo "${ECHO_T}$INSTALL" >&6 +{ echo "$as_me:$LINENO: result: $INSTALL" >&5 +echo "${ECHO_T}$INSTALL" >&6; } # Use test -z because SunOS4 sh mishandles braces in ${var-val}. # It thinks the first close brace ends the variable substitution. @@ -2534,8 +3033,8 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' -echo "$as_me:$LINENO: checking whether build environment is sane" >&5 -echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether build environment is sane" >&5 +echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6; } # Just in case sleep 1 echo timestamp > conftest.file @@ -2577,20 +3076,20 @@ echo "$as_me: error: newly created file is older than distributed files! Check your system clock" >&2;} { (exit 1); exit 1; }; } fi -echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 +{ echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } test "$program_prefix" != NONE && - program_transform_name="s,^,$program_prefix,;$program_transform_name" + program_transform_name="s&^&$program_prefix&;$program_transform_name" # Use a double $ so make ignores it. test "$program_suffix" != NONE && - program_transform_name="s,\$,$program_suffix,;$program_transform_name" + program_transform_name="s&\$&$program_suffix&;$program_transform_name" # Double any \ or $. echo might interpret backslashes. # By default was `s,x,x', remove it if useless. cat <<\_ACEOF >conftest.sed s/[\\$]/&&/g;s/;s,x,x,$// _ACEOF program_transform_name=`echo $program_transform_name | sed -f conftest.sed` -rm conftest.sed +rm -f conftest.sed # expand $ac_aux_dir to an absolute path am_aux_dir=`cd $ac_aux_dir && pwd` @@ -2642,8 +3141,8 @@ 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. set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_AWK+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -2656,54 +3155,57 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_AWK="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi AWK=$ac_cv_prog_AWK if test -n "$AWK"; then - echo "$as_me:$LINENO: result: $AWK" >&5 -echo "${ECHO_T}$AWK" >&6 + { echo "$as_me:$LINENO: result: $AWK" >&5 +echo "${ECHO_T}$AWK" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + test -n "$AWK" && break done -echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 -echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6 -set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'` -if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then +{ echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 +echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6; } +set x ${MAKE-make}; ac_make=`echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` +if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.make <<\_ACEOF +SHELL = /bin/sh all: - @echo 'ac_maketemp="$(MAKE)"' + @echo '@@@%%%=$(MAKE)=@@@%%%' _ACEOF # GNU make sometimes prints "make[1]: Entering...", which would confuse us. -eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=` -if test -n "$ac_maketemp"; then - eval ac_cv_prog_make_${ac_make}_set=yes -else - eval ac_cv_prog_make_${ac_make}_set=no -fi +case `${MAKE-make} -f conftest.make 2>/dev/null` in + *@@@%%%=?*=@@@%%%*) + eval ac_cv_prog_make_${ac_make}_set=yes;; + *) + eval ac_cv_prog_make_${ac_make}_set=no;; +esac rm -f conftest.make fi -if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 +if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then + { echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } SET_MAKE= else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } SET_MAKE="MAKE=${MAKE-make}" fi @@ -2718,7 +3220,7 @@ rmdir .tst 2>/dev/null DEPDIR="${am__leading_dot}deps" - ac_config_commands="$ac_config_commands depfiles" +ac_config_commands="$ac_config_commands depfiles" am_make=${MAKE-make} @@ -2728,8 +3230,8 @@ am__doit: .PHONY: am__doit END # If we don't find an include directive, just comment out the code. -echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5 -echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5 +echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6; } am__include="#" am__quote= _am_result=none @@ -2756,15 +3258,15 @@ if test "$am__include" = "#"; then fi -echo "$as_me:$LINENO: result: $_am_result" >&5 -echo "${ECHO_T}$_am_result" >&6 +{ echo "$as_me:$LINENO: result: $_am_result" >&5 +echo "${ECHO_T}$_am_result" >&6; } rm -f confinc confmf -# Check whether --enable-dependency-tracking or --disable-dependency-tracking was given. +# Check whether --enable-dependency-tracking was given. if test "${enable_dependency_tracking+set}" = set; then - enableval="$enable_dependency_tracking" + enableval=$enable_dependency_tracking; +fi -fi; if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' @@ -2839,8 +3341,8 @@ 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. set dummy ${ac_tool_prefix}strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_STRIP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -2853,32 +3355,34 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then - echo "$as_me:$LINENO: result: $STRIP" >&5 -echo "${ECHO_T}$STRIP" >&6 + { echo "$as_me:$LINENO: result: $STRIP" >&5 +echo "${ECHO_T}$STRIP" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + fi if test -z "$ac_cv_prog_STRIP"; then ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -2891,27 +3395,41 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_STRIP="strip" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS - test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":" fi fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then - echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 -echo "${ECHO_T}$ac_ct_STRIP" >&6 + { echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 +echo "${ECHO_T}$ac_ct_STRIP" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi - STRIP=$ac_ct_STRIP + if test "x$ac_ct_STRIP" = x; then + STRIP=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&5 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&2;} +ac_tool_warned=yes ;; +esac + STRIP=$ac_ct_STRIP + fi else STRIP="$ac_cv_prog_STRIP" fi @@ -2932,8 +3450,8 @@ am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -' depcc="$CC" am_compiler_list= -echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 -echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 +echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6; } if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -3022,8 +3540,8 @@ else fi fi -echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5 -echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6 +{ echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5 +echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6; } CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type @@ -3043,8 +3561,8 @@ fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_RANLIB+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -3057,32 +3575,34 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi RANLIB=$ac_cv_prog_RANLIB if test -n "$RANLIB"; then - echo "$as_me:$LINENO: result: $RANLIB" >&5 -echo "${ECHO_T}$RANLIB" >&6 + { echo "$as_me:$LINENO: result: $RANLIB" >&5 +echo "${ECHO_T}$RANLIB" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + fi if test -z "$ac_cv_prog_RANLIB"; then ac_ct_RANLIB=$RANLIB # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -3095,35 +3615,48 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_RANLIB="ranlib" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS - test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":" fi fi ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB if test -n "$ac_ct_RANLIB"; then - echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 -echo "${ECHO_T}$ac_ct_RANLIB" >&6 + { echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 +echo "${ECHO_T}$ac_ct_RANLIB" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi - RANLIB=$ac_ct_RANLIB + if test "x$ac_ct_RANLIB" = x; then + RANLIB=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&5 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&2;} +ac_tool_warned=yes ;; +esac + RANLIB=$ac_ct_RANLIB + fi else RANLIB="$ac_cv_prog_RANLIB" fi -# Check whether --enable-shared or --disable-shared was given. +# Check whether --enable-shared was given. if test "${enable_shared+set}" = set; then - enableval="$enable_shared" - p=${PACKAGE-default} + enableval=$enable_shared; p=${PACKAGE-default} case $enableval in yes) enable_shared=yes ;; no) enable_shared=no ;; @@ -3142,12 +3675,12 @@ if test "${enable_shared+set}" = set; then esac else enable_shared=yes -fi; +fi -# Check whether --enable-static or --disable-static was given. + +# Check whether --enable-static was given. if test "${enable_static+set}" = set; then - enableval="$enable_static" - p=${PACKAGE-default} + enableval=$enable_static; p=${PACKAGE-default} case $enableval in yes) enable_static=yes ;; no) enable_static=no ;; @@ -3166,12 +3699,12 @@ if test "${enable_static+set}" = set; then esac else enable_static=yes -fi; +fi -# Check whether --enable-fast-install or --disable-fast-install was given. + +# Check whether --enable-fast-install was given. if test "${enable_fast_install+set}" = set; then - enableval="$enable_fast_install" - p=${PACKAGE-default} + enableval=$enable_fast_install; p=${PACKAGE-default} case $enableval in yes) enable_fast_install=yes ;; no) enable_fast_install=no ;; @@ -3190,64 +3723,94 @@ if test "${enable_fast_install+set}" = set; then esac else enable_fast_install=yes -fi; +fi + # Make sure we can run config.sub. -$ac_config_sub sun4 >/dev/null 2>&1 || - { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5 -echo "$as_me: error: cannot run $ac_config_sub" >&2;} +$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || + { { echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5 +echo "$as_me: error: cannot run $SHELL $ac_aux_dir/config.sub" >&2;} { (exit 1); exit 1; }; } -echo "$as_me:$LINENO: checking build system type" >&5 -echo $ECHO_N "checking build system type... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking build system type" >&5 +echo $ECHO_N "checking build system type... $ECHO_C" >&6; } if test "${ac_cv_build+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - ac_cv_build_alias=$build_alias -test -z "$ac_cv_build_alias" && - ac_cv_build_alias=`$ac_config_guess` -test -z "$ac_cv_build_alias" && + ac_build_alias=$build_alias +test "x$ac_build_alias" = x && + ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` +test "x$ac_build_alias" = x && { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 echo "$as_me: error: cannot guess build type; you must specify one" >&2;} { (exit 1); exit 1; }; } -ac_cv_build=`$ac_config_sub $ac_cv_build_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;} +ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || + { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&5 +echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&2;} { (exit 1); exit 1; }; } fi -echo "$as_me:$LINENO: result: $ac_cv_build" >&5 -echo "${ECHO_T}$ac_cv_build" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_build" >&5 +echo "${ECHO_T}$ac_cv_build" >&6; } +case $ac_cv_build in +*-*-*) ;; +*) { { echo "$as_me:$LINENO: error: invalid value of canonical build" >&5 +echo "$as_me: error: invalid value of canonical build" >&2;} + { (exit 1); exit 1; }; };; +esac build=$ac_cv_build -build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - -echo "$as_me:$LINENO: checking host system type" >&5 -echo $ECHO_N "checking host system type... $ECHO_C" >&6 +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_build +shift +build_cpu=$1 +build_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +build_os=$* +IFS=$ac_save_IFS +case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac + + +{ echo "$as_me:$LINENO: checking host system type" >&5 +echo $ECHO_N "checking host system type... $ECHO_C" >&6; } if test "${ac_cv_host+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - ac_cv_host_alias=$host_alias -test -z "$ac_cv_host_alias" && - ac_cv_host_alias=$ac_cv_build_alias -ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || - { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5 -echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} + if test "x$host_alias" = x; then + ac_cv_host=$ac_cv_build +else + ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || + { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&5 +echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&2;} { (exit 1); exit 1; }; } +fi fi -echo "$as_me:$LINENO: result: $ac_cv_host" >&5 -echo "${ECHO_T}$ac_cv_host" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_host" >&5 +echo "${ECHO_T}$ac_cv_host" >&6; } +case $ac_cv_host in +*-*-*) ;; +*) { { echo "$as_me:$LINENO: error: invalid value of canonical host" >&5 +echo "$as_me: error: invalid value of canonical host" >&2;} + { (exit 1); exit 1; }; };; +esac host=$ac_cv_host -host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - - -echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5 -echo $ECHO_N "checking for a sed that does not truncate output... $ECHO_C" >&6 +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_host +shift +host_cpu=$1 +host_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +host_os=$* +IFS=$ac_save_IFS +case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac + + +{ echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5 +echo $ECHO_N "checking for a sed that does not truncate output... $ECHO_C" >&6; } if test "${lt_cv_path_SED+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -3300,37 +3863,184 @@ done fi SED=$lt_cv_path_SED -echo "$as_me:$LINENO: result: $SED" >&5 -echo "${ECHO_T}$SED" >&6 +{ echo "$as_me:$LINENO: result: $SED" >&5 +echo "${ECHO_T}$SED" >&6; } + +{ echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5 +echo $ECHO_N "checking for grep that handles long lines and -e... $ECHO_C" >&6; } +if test "${ac_cv_path_GREP+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + # Extract the first word of "grep ggrep" to use in msg output +if test -z "$GREP"; then +set dummy grep ggrep; ac_prog_name=$2 +if test "${ac_cv_path_GREP+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_path_GREP_found=false +# Loop through the user's path and test for each of PROGNAME-LIST +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + 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_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 +*GNU*) + ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; +*) + ac_count=0 + echo $ECHO_N "0123456789$ECHO_C" >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + echo 'GREP' >> "conftest.nl" + "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + ac_count=`expr $ac_count + 1` + if test $ac_count -gt ${ac_path_GREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_GREP="$ac_path_GREP" + ac_path_GREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + + $ac_path_GREP_found && break 3 + done +done + +done +IFS=$as_save_IFS + + +fi + +GREP="$ac_cv_path_GREP" +if test -z "$GREP"; then + { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 +echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} + { (exit 1); exit 1; }; } +fi + +else + ac_cv_path_GREP=$GREP +fi + -echo "$as_me:$LINENO: checking for egrep" >&5 -echo $ECHO_N "checking for egrep... $ECHO_C" >&6 -if test "${ac_cv_prog_egrep+set}" = set; then +fi +{ echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5 +echo "${ECHO_T}$ac_cv_path_GREP" >&6; } + GREP="$ac_cv_path_GREP" + + +{ echo "$as_me:$LINENO: checking for egrep" >&5 +echo $ECHO_N "checking for egrep... $ECHO_C" >&6; } +if test "${ac_cv_path_EGREP+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 + then ac_cv_path_EGREP="$GREP -E" + else + # Extract the first word of "egrep" to use in msg output +if test -z "$EGREP"; then +set dummy egrep; ac_prog_name=$2 +if test "${ac_cv_path_EGREP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - if echo a | (grep -E '(a|b)') >/dev/null 2>&1 - then ac_cv_prog_egrep='grep -E' - else ac_cv_prog_egrep='egrep' + ac_path_EGREP_found=false +# Loop through the user's path and test for each of PROGNAME-LIST +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + 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_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 +*GNU*) + ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; +*) + ac_count=0 + echo $ECHO_N "0123456789$ECHO_C" >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + echo 'EGREP' >> "conftest.nl" + "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + ac_count=`expr $ac_count + 1` + if test $ac_count -gt ${ac_path_EGREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_EGREP="$ac_path_EGREP" + ac_path_EGREP_max=$ac_count fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + + $ac_path_EGREP_found && break 3 + done +done + +done +IFS=$as_save_IFS + + +fi + +EGREP="$ac_cv_path_EGREP" +if test -z "$EGREP"; then + { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 +echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} + { (exit 1); exit 1; }; } +fi + +else + ac_cv_path_EGREP=$EGREP +fi + + + fi fi -echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5 -echo "${ECHO_T}$ac_cv_prog_egrep" >&6 - EGREP=$ac_cv_prog_egrep +{ echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5 +echo "${ECHO_T}$ac_cv_path_EGREP" >&6; } + EGREP="$ac_cv_path_EGREP" -# Check whether --with-gnu-ld or --without-gnu-ld was given. +# Check whether --with-gnu-ld was given. if test "${with_gnu_ld+set}" = set; then - withval="$with_gnu_ld" - test "$withval" = no || with_gnu_ld=yes + withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes else with_gnu_ld=no -fi; +fi + ac_prog=ld if test "$GCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. - echo "$as_me:$LINENO: checking for ld used by $CC" >&5 -echo $ECHO_N "checking for ld used by $CC... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for ld used by $CC" >&5 +echo $ECHO_N "checking for ld used by $CC... $ECHO_C" >&6; } case $host in *-*-mingw*) # gcc leaves a trailing carriage return which upsets mingw @@ -3359,11 +4069,11 @@ echo $ECHO_N "checking for ld used by $CC... $ECHO_C" >&6 ;; esac elif test "$with_gnu_ld" = yes; then - echo "$as_me:$LINENO: checking for GNU ld" >&5 -echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for GNU ld" >&5 +echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6; } else - echo "$as_me:$LINENO: checking for non-GNU ld" >&5 -echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for non-GNU ld" >&5 +echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6; } fi if test "${lt_cv_path_LD+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -3396,17 +4106,17 @@ fi LD="$lt_cv_path_LD" if test -n "$LD"; then - echo "$as_me:$LINENO: result: $LD" >&5 -echo "${ECHO_T}$LD" >&6 + { echo "$as_me:$LINENO: result: $LD" >&5 +echo "${ECHO_T}$LD" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi test -z "$LD" && { { echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5 echo "$as_me: error: no acceptable ld found in \$PATH" >&2;} { (exit 1); exit 1; }; } -echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5 -echo $ECHO_N "checking if the linker ($LD) is GNU ld... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5 +echo $ECHO_N "checking if the linker ($LD) is GNU ld... $ECHO_C" >&6; } if test "${lt_cv_prog_gnu_ld+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -3420,20 +4130,20 @@ case `$LD -v 2>&1 </dev/null` in ;; esac fi -echo "$as_me:$LINENO: result: $lt_cv_prog_gnu_ld" >&5 -echo "${ECHO_T}$lt_cv_prog_gnu_ld" >&6 +{ echo "$as_me:$LINENO: result: $lt_cv_prog_gnu_ld" >&5 +echo "${ECHO_T}$lt_cv_prog_gnu_ld" >&6; } with_gnu_ld=$lt_cv_prog_gnu_ld -echo "$as_me:$LINENO: checking for $LD option to reload object files" >&5 -echo $ECHO_N "checking for $LD option to reload object files... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $LD option to reload object files" >&5 +echo $ECHO_N "checking for $LD option to reload object files... $ECHO_C" >&6; } if test "${lt_cv_ld_reload_flag+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else lt_cv_ld_reload_flag='-r' fi -echo "$as_me:$LINENO: result: $lt_cv_ld_reload_flag" >&5 -echo "${ECHO_T}$lt_cv_ld_reload_flag" >&6 +{ echo "$as_me:$LINENO: result: $lt_cv_ld_reload_flag" >&5 +echo "${ECHO_T}$lt_cv_ld_reload_flag" >&6; } reload_flag=$lt_cv_ld_reload_flag case $reload_flag in "" | " "*) ;; @@ -3450,8 +4160,8 @@ case $host_os in ;; esac -echo "$as_me:$LINENO: checking for BSD-compatible nm" >&5 -echo $ECHO_N "checking for BSD-compatible nm... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for BSD-compatible nm" >&5 +echo $ECHO_N "checking for BSD-compatible nm... $ECHO_C" >&6; } if test "${lt_cv_path_NM+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -3499,23 +4209,23 @@ else test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm fi fi -echo "$as_me:$LINENO: result: $lt_cv_path_NM" >&5 -echo "${ECHO_T}$lt_cv_path_NM" >&6 +{ echo "$as_me:$LINENO: result: $lt_cv_path_NM" >&5 +echo "${ECHO_T}$lt_cv_path_NM" >&6; } NM="$lt_cv_path_NM" -echo "$as_me:$LINENO: checking whether ln -s works" >&5 -echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether ln -s works" >&5 +echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6; } LN_S=$as_ln_s if test "$LN_S" = "ln -s"; then - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 + { echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } else - echo "$as_me:$LINENO: result: no, using $LN_S" >&5 -echo "${ECHO_T}no, using $LN_S" >&6 + { echo "$as_me:$LINENO: result: no, using $LN_S" >&5 +echo "${ECHO_T}no, using $LN_S" >&6; } fi -echo "$as_me:$LINENO: checking how to recognise dependent libraries" >&5 -echo $ECHO_N "checking how to recognise dependent libraries... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking how to recognise dependent libraries" >&5 +echo $ECHO_N "checking how to recognise dependent libraries... $ECHO_C" >&6; } if test "${lt_cv_deplibs_check_method+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -3565,7 +4275,7 @@ darwin* | rhapsody*) lt_cv_deplibs_check_method=pass_all ;; -freebsd* | kfreebsd*-gnu | dragonfly*) +freebsd* | dragonfly*) if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then case $host_cpu in i*86 ) @@ -3619,11 +4329,11 @@ irix5* | irix6* | nonstopux*) ;; # This must be Linux ELF. -linux*) +linux* | k*bsd*-gnu) lt_cv_deplibs_check_method=pass_all ;; -netbsd*) +netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' else @@ -3690,8 +4400,8 @@ sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) esac fi -echo "$as_me:$LINENO: result: $lt_cv_deplibs_check_method" >&5 -echo "${ECHO_T}$lt_cv_deplibs_check_method" >&6 +{ echo "$as_me:$LINENO: result: $lt_cv_deplibs_check_method" >&5 +echo "${ECHO_T}$lt_cv_deplibs_check_method" >&6; } file_magic_cmd=$lt_cv_file_magic_cmd deplibs_check_method=$lt_cv_deplibs_check_method test -z "$deplibs_check_method" && deplibs_check_method=unknown @@ -3709,11 +4419,11 @@ LTCFLAGS=${LTCFLAGS-"$CFLAGS"} compiler=$CC -# Check whether --enable-libtool-lock or --disable-libtool-lock was given. +# Check whether --enable-libtool-lock was given. if test "${enable_libtool_lock+set}" = set; then - enableval="$enable_libtool_lock" + enableval=$enable_libtool_lock; +fi -fi; test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes # Some flags need to be propagated to the compiler or linker for good @@ -3740,7 +4450,7 @@ ia64-*-hpux*) ;; *-*-irix6*) # Find out which ABI we are using. - echo '#line 3743 "configure"' > conftest.$ac_ext + echo '#line 4453 "configure"' > conftest.$ac_ext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -3825,8 +4535,8 @@ x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*) # On SCO OpenServer 5, we need -belf to get full-featured binaries. SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -belf" - echo "$as_me:$LINENO: checking whether the C compiler needs -belf" >&5 -echo $ECHO_N "checking whether the C compiler needs -belf... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking whether the C compiler needs -belf" >&5 +echo $ECHO_N "checking whether the C compiler needs -belf... $ECHO_C" >&6; } if test "${lt_cv_cc_needs_belf+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -3852,24 +4562,36 @@ main () } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -3878,9 +4600,10 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -lt_cv_cc_needs_belf=no + lt_cv_cc_needs_belf=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -3889,8 +4612,8 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ ac_compiler_gnu=$ac_cv_c_compiler_gnu fi -echo "$as_me:$LINENO: result: $lt_cv_cc_needs_belf" >&5 -echo "${ECHO_T}$lt_cv_cc_needs_belf" >&6 +{ echo "$as_me:$LINENO: result: $lt_cv_cc_needs_belf" >&5 +echo "${ECHO_T}$lt_cv_cc_needs_belf" >&6; } if test x"$lt_cv_cc_needs_belf" != x"yes"; then # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf CFLAGS="$SAVE_CFLAGS" @@ -3927,8 +4650,8 @@ ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu -echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 -echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 +echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6; } # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= @@ -3962,8 +4685,13 @@ cat >>conftest.$ac_ext <<_ACEOF #endif Syntax error _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -3988,9 +4716,10 @@ sed 's/^/| /' conftest.$ac_ext >&5 # Broken: fails on valid input. continue fi + rm -f conftest.err conftest.$ac_ext - # OK, works on sane cases. Now check whether non-existent headers + # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -4000,8 +4729,13 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <ac_nonexistent.h> _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -4028,6 +4762,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_preproc_ok=: break fi + rm -f conftest.err conftest.$ac_ext done @@ -4045,8 +4780,8 @@ fi else ac_cv_prog_CPP=$CPP fi -echo "$as_me:$LINENO: result: $CPP" >&5 -echo "${ECHO_T}$CPP" >&6 +{ echo "$as_me:$LINENO: result: $CPP" >&5 +echo "${ECHO_T}$CPP" >&6; } ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do @@ -4069,8 +4804,13 @@ cat >>conftest.$ac_ext <<_ACEOF #endif Syntax error _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -4095,9 +4835,10 @@ sed 's/^/| /' conftest.$ac_ext >&5 # Broken: fails on valid input. continue fi + rm -f conftest.err conftest.$ac_ext - # OK, works on sane cases. Now check whether non-existent headers + # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -4107,8 +4848,13 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <ac_nonexistent.h> _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -4135,6 +4881,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_preproc_ok=: break fi + rm -f conftest.err conftest.$ac_ext done @@ -4157,8 +4904,8 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ ac_compiler_gnu=$ac_cv_c_compiler_gnu -echo "$as_me:$LINENO: checking for ANSI C header files" >&5 -echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for ANSI C header files" >&5 +echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6; } if test "${ac_cv_header_stdc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -4182,24 +4929,36 @@ main () } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -4208,9 +4967,10 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_header_stdc=no + ac_cv_header_stdc=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. @@ -4266,6 +5026,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <ctype.h> +#include <stdlib.h> #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) @@ -4285,18 +5046,27 @@ main () for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) - exit(2); - exit (0); + return 2; + return 0; } _ACEOF rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -4309,12 +5079,14 @@ sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) ac_cv_header_stdc=no fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi + + fi fi -echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 -echo "${ECHO_T}$ac_cv_header_stdc" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 +echo "${ECHO_T}$ac_cv_header_stdc" >&6; } if test $ac_cv_header_stdc = yes; then cat >>confdefs.h <<\_ACEOF @@ -4337,9 +5109,9 @@ for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ inttypes.h stdint.h unistd.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then +{ echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -4353,24 +5125,36 @@ $ac_includes_default #include <$ac_header> _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -4379,12 +5163,14 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -eval "$as_ac_Header=no" + eval "$as_ac_Header=no" fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 +ac_res=`eval echo '${'$as_ac_Header'}'` + { echo "$as_me:$LINENO: result: $ac_res" >&5 +echo "${ECHO_T}$ac_res" >&6; } if test `eval echo '${'$as_ac_Header'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 @@ -4399,18 +5185,19 @@ done for ac_header in dlfcn.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + { echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 +ac_res=`eval echo '${'$as_ac_Header'}'` + { echo "$as_me:$LINENO: result: $ac_res" >&5 +echo "${ECHO_T}$ac_res" >&6; } else # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking $ac_header usability" >&5 +echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -4421,24 +5208,36 @@ $ac_includes_default #include <$ac_header> _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -4447,15 +5246,16 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_header_compiler=no + ac_header_compiler=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +echo "${ECHO_T}$ac_header_compiler" >&6; } # Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking $ac_header presence" >&5 +echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -4464,8 +5264,13 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <$ac_header> _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -4489,9 +5294,10 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi + rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 +{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +echo "${ECHO_T}$ac_header_preproc" >&6; } # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in @@ -4515,25 +5321,19 @@ echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\ echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 + ;; esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then +{ echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 else eval "$as_ac_Header=\$ac_header_preproc" fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 +ac_res=`eval echo '${'$as_ac_Header'}'` + { echo "$as_me:$LINENO: result: $ac_res" >&5 +echo "${ECHO_T}$ac_res" >&6; } fi if test `eval echo '${'$as_ac_Header'}'` = yes; then @@ -4545,18 +5345,22 @@ fi done -ac_ext=cc +ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu -if test -n "$ac_tool_prefix"; then - for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC +if test -z "$CXX"; then + if test -n "$CCC"; then + CXX=$CCC + else + if test -n "$ac_tool_prefix"; then + for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_CXX+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -4569,36 +5373,38 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi CXX=$ac_cv_prog_CXX if test -n "$CXX"; then - echo "$as_me:$LINENO: result: $CXX" >&5 -echo "${ECHO_T}$CXX" >&6 + { echo "$as_me:$LINENO: result: $CXX" >&5 +echo "${ECHO_T}$CXX" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + test -n "$CXX" && break done fi if test -z "$CXX"; then ac_ct_CXX=$CXX - for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC + for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -4611,55 +5417,85 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CXX="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi ac_ct_CXX=$ac_cv_prog_ac_ct_CXX if test -n "$ac_ct_CXX"; then - echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5 -echo "${ECHO_T}$ac_ct_CXX" >&6 + { echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5 +echo "${ECHO_T}$ac_ct_CXX" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + test -n "$ac_ct_CXX" && break done -test -n "$ac_ct_CXX" || ac_ct_CXX="g++" - CXX=$ac_ct_CXX + if test "x$ac_ct_CXX" = x; then + CXX="g++" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&5 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&2;} +ac_tool_warned=yes ;; +esac + CXX=$ac_ct_CXX + fi fi - + fi +fi # Provide some information about the compiler. -echo "$as_me:$LINENO:" \ - "checking for C++ compiler version" >&5 +echo "$as_me:$LINENO: checking for C++ compiler version" >&5 ac_compiler=`set X $ac_compile; echo $2` -{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5 - (eval $ac_compiler --version </dev/null >&5) 2>&5 +{ (ac_try="$ac_compiler --version >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler --version >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5 - (eval $ac_compiler -v </dev/null >&5) 2>&5 +{ (ac_try="$ac_compiler -v >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler -v >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5 - (eval $ac_compiler -V </dev/null >&5) 2>&5 +{ (ac_try="$ac_compiler -V >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler -V >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } -echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5 -echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5 +echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6; } if test "${ac_cv_cxx_compiler_gnu+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -4682,24 +5518,36 @@ main () } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -4708,24 +5556,28 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_compiler_gnu=no + ac_compiler_gnu=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_cxx_compiler_gnu=$ac_compiler_gnu fi -echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5 -echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5 +echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6; } GXX=`test $ac_compiler_gnu = yes && echo yes` ac_test_CXXFLAGS=${CXXFLAGS+set} ac_save_CXXFLAGS=$CXXFLAGS -CXXFLAGS="-g" -echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5 -echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5 +echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6; } if test "${ac_cv_prog_cxx_g+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - cat >conftest.$ac_ext <<_ACEOF + ac_save_cxx_werror_flag=$ac_cxx_werror_flag + ac_cxx_werror_flag=yes + ac_cv_prog_cxx_g=no + CXXFLAGS="-g" + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -4741,24 +5593,36 @@ main () } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -4767,70 +5631,53 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_prog_cxx_g=no -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5 -echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6 -if test "$ac_test_CXXFLAGS" = set; then - CXXFLAGS=$ac_save_CXXFLAGS -elif test $ac_cv_prog_cxx_g = yes; then - if test "$GXX" = yes; then - CXXFLAGS="-g -O2" - else - CXXFLAGS="-g" - fi -else - if test "$GXX" = yes; then - CXXFLAGS="-O2" - else - CXXFLAGS= - fi -fi -for ac_declaration in \ - '' \ - 'extern "C" void std::exit (int) throw (); using std::exit;' \ - 'extern "C" void std::exit (int); using std::exit;' \ - 'extern "C" void exit (int) throw ();' \ - 'extern "C" void exit (int);' \ - 'void exit (int);' -do - cat >conftest.$ac_ext <<_ACEOF + CXXFLAGS="" + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -$ac_declaration -#include <stdlib.h> + int main () { -exit (42); + ; return 0; } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -4839,62 +5686,92 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -continue -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext - cat >conftest.$ac_ext <<_ACEOF + ac_cxx_werror_flag=$ac_save_cxx_werror_flag + CXXFLAGS="-g" + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -$ac_declaration + int main () { -exit (42); + ; return 0; } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - break + ac_cv_prog_cxx_g=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 + fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -done -rm -f conftest* -if test -n "$ac_declaration"; then - echo '#ifdef __cplusplus' >>confdefs.h - echo $ac_declaration >>confdefs.h - echo '#endif' >>confdefs.h + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -ac_ext=cc +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_cxx_werror_flag=$ac_save_cxx_werror_flag +fi +{ echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5 +echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6; } +if test "$ac_test_CXXFLAGS" = set; then + CXXFLAGS=$ac_save_CXXFLAGS +elif test $ac_cv_prog_cxx_g = yes; then + if test "$GXX" = yes; then + CXXFLAGS="-g -O2" + else + CXXFLAGS="-g" + fi +else + if test "$GXX" = yes; then + CXXFLAGS="-O2" + else + CXXFLAGS= + fi +fi +ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' @@ -4902,8 +5779,8 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu depcc="$CXX" am_compiler_list= -echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 -echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 +echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6; } if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -4992,8 +5869,8 @@ else fi fi -echo "$as_me:$LINENO: result: $am_cv_CXX_dependencies_compiler_type" >&5 -echo "${ECHO_T}$am_cv_CXX_dependencies_compiler_type" >&6 +{ echo "$as_me:$LINENO: result: $am_cv_CXX_dependencies_compiler_type" >&5 +echo "${ECHO_T}$am_cv_CXX_dependencies_compiler_type" >&6; } CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type @@ -5014,13 +5891,13 @@ fi if test -n "$CXX" && ( test "X$CXX" != "Xno" && ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || (test "X$CXX" != "Xg++"))) ; then - ac_ext=cc + ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_cxx_compiler_gnu -echo "$as_me:$LINENO: checking how to run the C++ preprocessor" >&5 -echo $ECHO_N "checking how to run the C++ preprocessor... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking how to run the C++ preprocessor" >&5 +echo $ECHO_N "checking how to run the C++ preprocessor... $ECHO_C" >&6; } if test -z "$CXXCPP"; then if test "${ac_cv_prog_CXXCPP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -5050,8 +5927,13 @@ cat >>conftest.$ac_ext <<_ACEOF #endif Syntax error _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -5076,9 +5958,10 @@ sed 's/^/| /' conftest.$ac_ext >&5 # Broken: fails on valid input. continue fi + rm -f conftest.err conftest.$ac_ext - # OK, works on sane cases. Now check whether non-existent headers + # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -5088,8 +5971,13 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <ac_nonexistent.h> _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -5116,6 +6004,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_preproc_ok=: break fi + rm -f conftest.err conftest.$ac_ext done @@ -5133,8 +6022,8 @@ fi else ac_cv_prog_CXXCPP=$CXXCPP fi -echo "$as_me:$LINENO: result: $CXXCPP" >&5 -echo "${ECHO_T}$CXXCPP" >&6 +{ echo "$as_me:$LINENO: result: $CXXCPP" >&5 +echo "${ECHO_T}$CXXCPP" >&6; } ac_preproc_ok=false for ac_cxx_preproc_warn_flag in '' yes do @@ -5157,8 +6046,13 @@ cat >>conftest.$ac_ext <<_ACEOF #endif Syntax error _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -5183,9 +6077,10 @@ sed 's/^/| /' conftest.$ac_ext >&5 # Broken: fails on valid input. continue fi + rm -f conftest.err conftest.$ac_ext - # OK, works on sane cases. Now check whether non-existent headers + # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -5195,8 +6090,13 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <ac_nonexistent.h> _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -5223,6 +6123,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_preproc_ok=: break fi + rm -f conftest.err conftest.$ac_ext done @@ -5238,7 +6139,7 @@ See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi -ac_ext=cc +ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' @@ -5252,12 +6153,12 @@ ac_compile='$F77 -c $FFLAGS conftest.$ac_ext >&5' ac_link='$F77 -o conftest$ac_exeext $FFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_f77_compiler_gnu if test -n "$ac_tool_prefix"; then - for ac_prog in g77 f77 xlf frt pgf77 fort77 fl32 af77 f90 xlf90 pgf90 epcf90 f95 fort xlf95 ifc efc pgf95 lf95 gfortran + for ac_prog in g77 f77 xlf frt pgf77 cf77 fort77 fl32 af77 f90 xlf90 pgf90 pghpf epcf90 gfortran g95 f95 fort xlf95 ifort ifc efc pgf95 lf95 ftn do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_F77+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -5270,36 +6171,38 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_F77="$ac_tool_prefix$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi F77=$ac_cv_prog_F77 if test -n "$F77"; then - echo "$as_me:$LINENO: result: $F77" >&5 -echo "${ECHO_T}$F77" >&6 + { echo "$as_me:$LINENO: result: $F77" >&5 +echo "${ECHO_T}$F77" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + test -n "$F77" && break done fi if test -z "$F77"; then ac_ct_F77=$F77 - for ac_prog in g77 f77 xlf frt pgf77 fort77 fl32 af77 f90 xlf90 pgf90 epcf90 f95 fort xlf95 ifc efc pgf95 lf95 gfortran + for ac_prog in g77 f77 xlf frt pgf77 cf77 fort77 fl32 af77 f90 xlf90 pgf90 pghpf epcf90 gfortran g95 f95 fort xlf95 ifort ifc efc pgf95 lf95 ftn do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_ac_ct_F77+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -5312,48 +6215,78 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_F77="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi ac_ct_F77=$ac_cv_prog_ac_ct_F77 if test -n "$ac_ct_F77"; then - echo "$as_me:$LINENO: result: $ac_ct_F77" >&5 -echo "${ECHO_T}$ac_ct_F77" >&6 + { echo "$as_me:$LINENO: result: $ac_ct_F77" >&5 +echo "${ECHO_T}$ac_ct_F77" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + test -n "$ac_ct_F77" && break done - F77=$ac_ct_F77 + if test "x$ac_ct_F77" = x; then + F77="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&5 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&2;} +ac_tool_warned=yes ;; +esac + F77=$ac_ct_F77 + fi fi # Provide some information about the compiler. -echo "$as_me:5342:" \ - "checking for Fortran 77 compiler version" >&5 +echo "$as_me:$LINENO: checking for Fortran 77 compiler version" >&5 ac_compiler=`set X $ac_compile; echo $2` -{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5 - (eval $ac_compiler --version </dev/null >&5) 2>&5 +{ (ac_try="$ac_compiler --version >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler --version >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5 - (eval $ac_compiler -v </dev/null >&5) 2>&5 +{ (ac_try="$ac_compiler -v >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler -v >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } -{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5 - (eval $ac_compiler -V </dev/null >&5) 2>&5 +{ (ac_try="$ac_compiler -V >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compiler -V >&5") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } @@ -5363,8 +6296,8 @@ rm -f a.out # input file. (Note that this only needs to work for GNU compilers.) ac_save_ext=$ac_ext ac_ext=F -echo "$as_me:$LINENO: checking whether we are using the GNU Fortran 77 compiler" >&5 -echo $ECHO_N "checking whether we are using the GNU Fortran 77 compiler... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether we are using the GNU Fortran 77 compiler" >&5 +echo $ECHO_N "checking whether we are using the GNU Fortran 77 compiler... $ECHO_C" >&6; } if test "${ac_cv_f77_compiler_gnu+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -5377,24 +6310,36 @@ else end _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_f77_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_f77_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -5403,20 +6348,21 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_compiler_gnu=no + ac_compiler_gnu=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_f77_compiler_gnu=$ac_compiler_gnu fi -echo "$as_me:$LINENO: result: $ac_cv_f77_compiler_gnu" >&5 -echo "${ECHO_T}$ac_cv_f77_compiler_gnu" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_f77_compiler_gnu" >&5 +echo "${ECHO_T}$ac_cv_f77_compiler_gnu" >&6; } ac_ext=$ac_save_ext ac_test_FFLAGS=${FFLAGS+set} ac_save_FFLAGS=$FFLAGS FFLAGS= -echo "$as_me:$LINENO: checking whether $F77 accepts -g" >&5 -echo $ECHO_N "checking whether $F77 accepts -g... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether $F77 accepts -g" >&5 +echo $ECHO_N "checking whether $F77 accepts -g... $ECHO_C" >&6; } if test "${ac_cv_prog_f77_g+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -5427,24 +6373,36 @@ cat >conftest.$ac_ext <<_ACEOF end _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_f77_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_f77_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -5453,13 +6411,14 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_prog_f77_g=no + ac_cv_prog_f77_g=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_prog_f77_g" >&5 -echo "${ECHO_T}$ac_cv_prog_f77_g" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_prog_f77_g" >&5 +echo "${ECHO_T}$ac_cv_prog_f77_g" >&6; } if test "$ac_test_FFLAGS" = set; then FFLAGS=$ac_save_FFLAGS elif test $ac_cv_prog_f77_g = yes; then @@ -5488,8 +6447,8 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu # Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers! # find the maximum length of command line arguments -echo "$as_me:$LINENO: checking the maximum length of command line arguments" >&5 -echo $ECHO_N "checking the maximum length of command line arguments... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking the maximum length of command line arguments" >&5 +echo $ECHO_N "checking the maximum length of command line arguments... $ECHO_C" >&6; } if test "${lt_cv_sys_max_cmd_len+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -5597,19 +6556,19 @@ else fi if test -n $lt_cv_sys_max_cmd_len ; then - echo "$as_me:$LINENO: result: $lt_cv_sys_max_cmd_len" >&5 -echo "${ECHO_T}$lt_cv_sys_max_cmd_len" >&6 + { echo "$as_me:$LINENO: result: $lt_cv_sys_max_cmd_len" >&5 +echo "${ECHO_T}$lt_cv_sys_max_cmd_len" >&6; } else - echo "$as_me:$LINENO: result: none" >&5 -echo "${ECHO_T}none" >&6 + { echo "$as_me:$LINENO: result: none" >&5 +echo "${ECHO_T}none" >&6; } fi # Check for command to grab the raw symbol name followed by C symbol from nm. -echo "$as_me:$LINENO: checking command to parse $NM output from $compiler object" >&5 -echo $ECHO_N "checking command to parse $NM output from $compiler object... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking command to parse $NM output from $compiler object" >&5 +echo $ECHO_N "checking command to parse $NM output from $compiler object... $ECHO_C" >&6; } if test "${lt_cv_sys_global_symbol_pipe+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -5644,7 +6603,7 @@ hpux*) # Its linker distinguishes data from code symbols lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" ;; -linux*) +linux* | k*bsd*-gnu) if test "$host_cpu" = ia64; then symcode='[ABCDGIRSTW]' lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" @@ -5813,15 +6772,15 @@ if test -z "$lt_cv_sys_global_symbol_pipe"; then lt_cv_sys_global_symbol_to_cdecl= fi if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then - echo "$as_me:$LINENO: result: failed" >&5 -echo "${ECHO_T}failed" >&6 + { echo "$as_me:$LINENO: result: failed" >&5 +echo "${ECHO_T}failed" >&6; } else - echo "$as_me:$LINENO: result: ok" >&5 -echo "${ECHO_T}ok" >&6 + { echo "$as_me:$LINENO: result: ok" >&5 +echo "${ECHO_T}ok" >&6; } fi -echo "$as_me:$LINENO: checking for objdir" >&5 -echo $ECHO_N "checking for objdir... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for objdir" >&5 +echo $ECHO_N "checking for objdir... $ECHO_C" >&6; } if test "${lt_cv_objdir+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -5835,8 +6794,8 @@ else fi rmdir .libs 2>/dev/null fi -echo "$as_me:$LINENO: result: $lt_cv_objdir" >&5 -echo "${ECHO_T}$lt_cv_objdir" >&6 +{ echo "$as_me:$LINENO: result: $lt_cv_objdir" >&5 +echo "${ECHO_T}$lt_cv_objdir" >&6; } objdir=$lt_cv_objdir @@ -5887,8 +6846,8 @@ with_gnu_ld="$lt_cv_prog_gnu_ld" if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. set dummy ${ac_tool_prefix}ar; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_AR+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -5901,32 +6860,34 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_AR="${ac_tool_prefix}ar" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi AR=$ac_cv_prog_AR if test -n "$AR"; then - echo "$as_me:$LINENO: result: $AR" >&5 -echo "${ECHO_T}$AR" >&6 + { echo "$as_me:$LINENO: result: $AR" >&5 +echo "${ECHO_T}$AR" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + fi if test -z "$ac_cv_prog_AR"; then ac_ct_AR=$AR # Extract the first word of "ar", so it can be a program name with args. set dummy ar; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_ac_ct_AR+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -5939,27 +6900,41 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_AR="ar" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS - test -z "$ac_cv_prog_ac_ct_AR" && ac_cv_prog_ac_ct_AR="false" fi fi ac_ct_AR=$ac_cv_prog_ac_ct_AR if test -n "$ac_ct_AR"; then - echo "$as_me:$LINENO: result: $ac_ct_AR" >&5 -echo "${ECHO_T}$ac_ct_AR" >&6 + { echo "$as_me:$LINENO: result: $ac_ct_AR" >&5 +echo "${ECHO_T}$ac_ct_AR" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi - AR=$ac_ct_AR + if test "x$ac_ct_AR" = x; then + AR="false" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&5 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&2;} +ac_tool_warned=yes ;; +esac + AR=$ac_ct_AR + fi else AR="$ac_cv_prog_AR" fi @@ -5967,8 +6942,8 @@ fi if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_RANLIB+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -5981,32 +6956,34 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi RANLIB=$ac_cv_prog_RANLIB if test -n "$RANLIB"; then - echo "$as_me:$LINENO: result: $RANLIB" >&5 -echo "${ECHO_T}$RANLIB" >&6 + { echo "$as_me:$LINENO: result: $RANLIB" >&5 +echo "${ECHO_T}$RANLIB" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + fi if test -z "$ac_cv_prog_RANLIB"; then ac_ct_RANLIB=$RANLIB # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -6019,27 +6996,41 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_RANLIB="ranlib" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS - test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":" fi fi ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB if test -n "$ac_ct_RANLIB"; then - echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 -echo "${ECHO_T}$ac_ct_RANLIB" >&6 + { echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 +echo "${ECHO_T}$ac_ct_RANLIB" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi - RANLIB=$ac_ct_RANLIB + if test "x$ac_ct_RANLIB" = x; then + RANLIB=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&5 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&2;} +ac_tool_warned=yes ;; +esac + RANLIB=$ac_ct_RANLIB + fi else RANLIB="$ac_cv_prog_RANLIB" fi @@ -6047,8 +7038,8 @@ fi 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. set dummy ${ac_tool_prefix}strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_STRIP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -6061,32 +7052,34 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then - echo "$as_me:$LINENO: result: $STRIP" >&5 -echo "${ECHO_T}$STRIP" >&6 + { echo "$as_me:$LINENO: result: $STRIP" >&5 +echo "${ECHO_T}$STRIP" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + fi if test -z "$ac_cv_prog_STRIP"; then ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -6099,27 +7092,41 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_STRIP="strip" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS - test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":" fi fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then - echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 -echo "${ECHO_T}$ac_ct_STRIP" >&6 + { echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 +echo "${ECHO_T}$ac_ct_STRIP" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi - STRIP=$ac_ct_STRIP + if test "x$ac_ct_STRIP" = x; then + STRIP=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&5 +echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +whose name does not start with the host triplet. If you think this +configuration is useful to you, please write to autoconf@gnu.org." >&2;} +ac_tool_warned=yes ;; +esac + STRIP=$ac_ct_STRIP + fi else STRIP="$ac_cv_prog_STRIP" fi @@ -6178,8 +7185,8 @@ cc_basename=`$echo "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"` case $deplibs_check_method in file_magic*) if test "$file_magic_cmd" = '$MAGIC_CMD'; then - echo "$as_me:$LINENO: checking for ${ac_tool_prefix}file" >&5 -echo $ECHO_N "checking for ${ac_tool_prefix}file... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for ${ac_tool_prefix}file" >&5 +echo $ECHO_N "checking for ${ac_tool_prefix}file... $ECHO_C" >&6; } if test "${lt_cv_path_MAGIC_CMD+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -6231,17 +7238,17 @@ fi MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if test -n "$MAGIC_CMD"; then - echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5 -echo "${ECHO_T}$MAGIC_CMD" >&6 + { echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5 +echo "${ECHO_T}$MAGIC_CMD" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi if test -z "$lt_cv_path_MAGIC_CMD"; then if test -n "$ac_tool_prefix"; then - echo "$as_me:$LINENO: checking for file" >&5 -echo $ECHO_N "checking for file... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for file" >&5 +echo $ECHO_N "checking for file... $ECHO_C" >&6; } if test "${lt_cv_path_MAGIC_CMD+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -6293,11 +7300,11 @@ fi MAGIC_CMD="$lt_cv_path_MAGIC_CMD" if test -n "$MAGIC_CMD"; then - echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5 -echo "${ECHO_T}$MAGIC_CMD" >&6 + { echo "$as_me:$LINENO: result: $MAGIC_CMD" >&5 +echo "${ECHO_T}$MAGIC_CMD" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi else @@ -6312,21 +7319,21 @@ esac enable_dlopen=no enable_win32_dll=no -# Check whether --enable-libtool-lock or --disable-libtool-lock was given. +# Check whether --enable-libtool-lock was given. if test "${enable_libtool_lock+set}" = set; then - enableval="$enable_libtool_lock" + enableval=$enable_libtool_lock; +fi -fi; test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes -# Check whether --with-pic or --without-pic was given. +# Check whether --with-pic was given. if test "${with_pic+set}" = set; then - withval="$with_pic" - pic_mode="$withval" + withval=$with_pic; pic_mode="$withval" else pic_mode=default -fi; +fi + test -z "$pic_mode" && pic_mode=default # Use C for the default configuration in the libtool script @@ -6384,8 +7391,8 @@ if test "$GCC" = yes; then lt_prog_compiler_no_builtin_flag=' -fno-builtin' -echo "$as_me:$LINENO: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 -echo $ECHO_N "checking if $compiler supports -fno-rtti -fno-exceptions... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 +echo $ECHO_N "checking if $compiler supports -fno-rtti -fno-exceptions... $ECHO_C" >&6; } if test "${lt_cv_prog_compiler_rtti_exceptions+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -6402,11 +7409,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:6405: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7412: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:6409: \$? = $ac_status" >&5 + echo "$as_me:7416: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -6419,8 +7426,8 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 -echo "${ECHO_T}$lt_cv_prog_compiler_rtti_exceptions" >&6 +{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 +echo "${ECHO_T}$lt_cv_prog_compiler_rtti_exceptions" >&6; } if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions" @@ -6434,8 +7441,8 @@ lt_prog_compiler_wl= lt_prog_compiler_pic= lt_prog_compiler_static= -echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5 -echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5 +echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6; } if test "$GCC" = yes; then lt_prog_compiler_wl='-Wl,' @@ -6564,7 +7571,7 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 lt_prog_compiler_static='-Bstatic' ;; - linux*) + linux* | k*bsd*-gnu) case $cc_basename in icc* | ecc*) lt_prog_compiler_wl='-Wl,' @@ -6644,16 +7651,16 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 esac fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_pic" >&5 -echo "${ECHO_T}$lt_prog_compiler_pic" >&6 +{ echo "$as_me:$LINENO: result: $lt_prog_compiler_pic" >&5 +echo "${ECHO_T}$lt_prog_compiler_pic" >&6; } # # Check to make sure the PIC flag actually works. # if test -n "$lt_prog_compiler_pic"; then -echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5 -echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic works... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5 +echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic works... $ECHO_C" >&6; } if test "${lt_prog_compiler_pic_works+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -6670,11 +7677,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:6673: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7680: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:6677: \$? = $ac_status" >&5 + echo "$as_me:7684: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -6687,8 +7694,8 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works" >&5 -echo "${ECHO_T}$lt_prog_compiler_pic_works" >&6 +{ echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works" >&5 +echo "${ECHO_T}$lt_prog_compiler_pic_works" >&6; } if test x"$lt_prog_compiler_pic_works" = xyes; then case $lt_prog_compiler_pic in @@ -6715,8 +7722,8 @@ esac # Check to make sure the static flag actually works. # wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\" -echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5 -echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5 +echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6; } if test "${lt_prog_compiler_static_works+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -6743,8 +7750,8 @@ else LDFLAGS="$save_LDFLAGS" fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works" >&5 -echo "${ECHO_T}$lt_prog_compiler_static_works" >&6 +{ echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works" >&5 +echo "${ECHO_T}$lt_prog_compiler_static_works" >&6; } if test x"$lt_prog_compiler_static_works" = xyes; then : @@ -6753,8 +7760,8 @@ else fi -echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5 -echo $ECHO_N "checking if $compiler supports -c -o file.$ac_objext... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5 +echo $ECHO_N "checking if $compiler supports -c -o file.$ac_objext... $ECHO_C" >&6; } if test "${lt_cv_prog_compiler_c_o+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -6774,11 +7781,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:6777: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7784: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:6781: \$? = $ac_status" >&5 + echo "$as_me:7788: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -6800,23 +7807,23 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_c_o" >&5 -echo "${ECHO_T}$lt_cv_prog_compiler_c_o" >&6 +{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_c_o" >&5 +echo "${ECHO_T}$lt_cv_prog_compiler_c_o" >&6; } hard_links="nottested" if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then # do not overwrite the value of need_locks provided by the user - echo "$as_me:$LINENO: checking if we can lock with hard links" >&5 -echo $ECHO_N "checking if we can lock with hard links... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking if we can lock with hard links" >&5 +echo $ECHO_N "checking if we can lock with hard links... $ECHO_C" >&6; } hard_links=yes $rm conftest* ln conftest.a conftest.b 2>/dev/null && hard_links=no touch conftest.a ln conftest.a conftest.b 2>&5 || hard_links=no ln conftest.a conftest.b 2>/dev/null && hard_links=no - echo "$as_me:$LINENO: result: $hard_links" >&5 -echo "${ECHO_T}$hard_links" >&6 + { echo "$as_me:$LINENO: result: $hard_links" >&5 +echo "${ECHO_T}$hard_links" >&6; } if test "$hard_links" = no; then { echo "$as_me:$LINENO: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} @@ -6826,8 +7833,8 @@ else need_locks=no fi -echo "$as_me:$LINENO: checking whether the $compiler linker ($LD) supports shared libraries" >&5 -echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared libraries... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared libraries... $ECHO_C" >&6; } runpath_var= allow_undefined_flag= @@ -7003,7 +8010,7 @@ EOF archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; - linux*) + linux* | k*bsd*-gnu) if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then tmp_addflag= case $cc_basename,$host_cpu in @@ -7029,12 +8036,13 @@ EOF $echo "local: *; };" >> $output_objdir/$libname.ver~ $CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' fi + link_all_deplibs=no else ld_shlibs=no fi ;; - netbsd*) + netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= @@ -7242,24 +8250,36 @@ main () } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -7273,8 +8293,10 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 + fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi @@ -7303,24 +8325,36 @@ main () } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -7334,8 +8368,10 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 + fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi @@ -7466,7 +8502,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd* | kfreebsd*-gnu | dragonfly*) + freebsd* | dragonfly*) archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes @@ -7568,7 +8604,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi link_all_deplibs=yes ;; - netbsd*) + netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else @@ -7784,8 +8820,8 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi esac fi -echo "$as_me:$LINENO: result: $ld_shlibs" >&5 -echo "${ECHO_T}$ld_shlibs" >&6 +{ echo "$as_me:$LINENO: result: $ld_shlibs" >&5 +echo "${ECHO_T}$ld_shlibs" >&6; } test "$ld_shlibs" = no && can_build_shared=no # @@ -7805,8 +8841,8 @@ x|xyes) # Test whether the compiler implicitly links with -lc since on some # systems, -lgcc has to come before -lc. If gcc already passes -lc # to ld, don't add -lc before -lgcc. - echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5 -echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5 +echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6; } $rm conftest* printf "$lt_simple_compile_test_code" > conftest.$ac_ext @@ -7843,16 +8879,16 @@ echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >& cat conftest.err 1>&5 fi $rm conftest* - echo "$as_me:$LINENO: result: $archive_cmds_need_lc" >&5 -echo "${ECHO_T}$archive_cmds_need_lc" >&6 + { echo "$as_me:$LINENO: result: $archive_cmds_need_lc" >&5 +echo "${ECHO_T}$archive_cmds_need_lc" >&6; } ;; esac fi ;; esac -echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5 -echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5 +echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6; } library_names_spec= libname_spec='lib$name' soname_spec= @@ -8058,18 +9094,6 @@ freebsd1*) dynamic_linker=no ;; -kfreebsd*-gnu) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='GNU ld.so' - ;; - freebsd* | dragonfly*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. @@ -8225,7 +9249,7 @@ linux*oldld* | linux*aout* | linux*coff*) ;; # This must be Linux ELF. -linux*) +linux* | k*bsd*-gnu) version_type=linux need_lib_prefix=no need_version=no @@ -8239,31 +9263,10 @@ linux*) # before this can be enabled. hardcode_into_libs=yes - # find out which ABI we are using - libsuff= - case "$host_cpu" in - x86_64*|s390x*|powerpc64*) - echo '#line 8246 "configure"' > conftest.$ac_ext - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - case `/usr/bin/file conftest.$ac_objext` in - *64-bit*) - libsuff=64 - sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" - ;; - esac - fi - rm -rf conftest* - ;; - esac - # Append ld.so.conf contents to the search path if test -f /etc/ld.so.conf; then lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` - sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" + sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" fi # We used to test for /lib/ld.so.1 and disable shared libraries on @@ -8275,7 +9278,7 @@ linux*) dynamic_linker='GNU/Linux ld.so' ;; -knetbsd*-gnu) +netbsdelf*-gnu) version_type=linux need_lib_prefix=no need_version=no @@ -8284,7 +9287,7 @@ knetbsd*-gnu) shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes - dynamic_linker='GNU ld.so' + dynamic_linker='NetBSD ld.elf_so' ;; netbsd*) @@ -8460,8 +9463,8 @@ uts4*) dynamic_linker=no ;; esac -echo "$as_me:$LINENO: result: $dynamic_linker" >&5 -echo "${ECHO_T}$dynamic_linker" >&6 +{ echo "$as_me:$LINENO: result: $dynamic_linker" >&5 +echo "${ECHO_T}$dynamic_linker" >&6; } test "$dynamic_linker" = no && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" @@ -8469,8 +9472,8 @@ if test "$GCC" = yes; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi -echo "$as_me:$LINENO: checking how to hardcode library paths into programs" >&5 -echo $ECHO_N "checking how to hardcode library paths into programs... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking how to hardcode library paths into programs" >&5 +echo $ECHO_N "checking how to hardcode library paths into programs... $ECHO_C" >&6; } hardcode_action= if test -n "$hardcode_libdir_flag_spec" || \ test -n "$runpath_var" || \ @@ -8494,8 +9497,8 @@ else # directories. hardcode_action=unsupported fi -echo "$as_me:$LINENO: result: $hardcode_action" >&5 -echo "${ECHO_T}$hardcode_action" >&6 +{ echo "$as_me:$LINENO: result: $hardcode_action" >&5 +echo "${ECHO_T}$hardcode_action" >&6; } if test "$hardcode_action" = relink; then # Fast installation is not supported @@ -8508,29 +9511,29 @@ fi striplib= old_striplib= -echo "$as_me:$LINENO: checking whether stripping libraries is possible" >&5 -echo $ECHO_N "checking whether stripping libraries is possible... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether stripping libraries is possible" >&5 +echo $ECHO_N "checking whether stripping libraries is possible... $ECHO_C" >&6; } if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" test -z "$striplib" && striplib="$STRIP --strip-unneeded" - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 + { echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } else # FIXME - insert some real tests, host_os isn't really good enough case $host_os in darwin*) if test -n "$STRIP" ; then striplib="$STRIP -x" - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 + { echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi ;; *) - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } ;; esac fi @@ -8562,8 +9565,8 @@ else darwin*) # if libdl is installed we need to link against it - echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5 -echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5 +echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6; } if test "${ac_cv_lib_dl_dlopen+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -8576,40 +9579,52 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char dlopen (); int main () { -dlopen (); +return dlopen (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -8618,14 +9633,15 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_dl_dlopen=no + ac_cv_lib_dl_dlopen=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5 +echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6; } if test $ac_cv_lib_dl_dlopen = yes; then lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" else @@ -8639,8 +9655,8 @@ fi ;; *) - echo "$as_me:$LINENO: checking for shl_load" >&5 -echo $ECHO_N "checking for shl_load... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for shl_load" >&5 +echo $ECHO_N "checking for shl_load... $ECHO_C" >&6; } if test "${ac_cv_func_shl_load+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -8667,53 +9683,59 @@ cat >>conftest.$ac_ext <<_ACEOF #undef shl_load -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" -{ #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char shl_load (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ -#if defined (__stub_shl_load) || defined (__stub___shl_load) +#if defined __stub_shl_load || defined __stub___shl_load choke me -#else -char (*f) () = shl_load; -#endif -#ifdef __cplusplus -} #endif int main () { -return f != shl_load; +return shl_load (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -8722,18 +9744,19 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_func_shl_load=no + ac_cv_func_shl_load=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_func_shl_load" >&5 -echo "${ECHO_T}$ac_cv_func_shl_load" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_func_shl_load" >&5 +echo "${ECHO_T}$ac_cv_func_shl_load" >&6; } if test $ac_cv_func_shl_load = yes; then lt_cv_dlopen="shl_load" else - echo "$as_me:$LINENO: checking for shl_load in -ldld" >&5 -echo $ECHO_N "checking for shl_load in -ldld... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for shl_load in -ldld" >&5 +echo $ECHO_N "checking for shl_load in -ldld... $ECHO_C" >&6; } if test "${ac_cv_lib_dld_shl_load+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -8746,40 +9769,52 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char shl_load (); int main () { -shl_load (); +return shl_load (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -8788,19 +9823,20 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_dld_shl_load=no + ac_cv_lib_dld_shl_load=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5 -echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_dld_shl_load" >&5 +echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6; } if test $ac_cv_lib_dld_shl_load = yes; then lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld" else - echo "$as_me:$LINENO: checking for dlopen" >&5 -echo $ECHO_N "checking for dlopen... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for dlopen" >&5 +echo $ECHO_N "checking for dlopen... $ECHO_C" >&6; } if test "${ac_cv_func_dlopen+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -8827,53 +9863,59 @@ cat >>conftest.$ac_ext <<_ACEOF #undef dlopen -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" -{ #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char dlopen (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ -#if defined (__stub_dlopen) || defined (__stub___dlopen) +#if defined __stub_dlopen || defined __stub___dlopen choke me -#else -char (*f) () = dlopen; -#endif -#ifdef __cplusplus -} #endif int main () { -return f != dlopen; +return dlopen (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -8882,18 +9924,19 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_func_dlopen=no + ac_cv_func_dlopen=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_func_dlopen" >&5 -echo "${ECHO_T}$ac_cv_func_dlopen" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_func_dlopen" >&5 +echo "${ECHO_T}$ac_cv_func_dlopen" >&6; } if test $ac_cv_func_dlopen = yes; then lt_cv_dlopen="dlopen" else - echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5 -echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for dlopen in -ldl" >&5 +echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6; } if test "${ac_cv_lib_dl_dlopen+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -8906,40 +9949,52 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char dlopen (); int main () { -dlopen (); +return dlopen (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -8948,19 +10003,20 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_dl_dlopen=no + ac_cv_lib_dl_dlopen=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlopen" >&5 +echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6; } if test $ac_cv_lib_dl_dlopen = yes; then lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" else - echo "$as_me:$LINENO: checking for dlopen in -lsvld" >&5 -echo $ECHO_N "checking for dlopen in -lsvld... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for dlopen in -lsvld" >&5 +echo $ECHO_N "checking for dlopen in -lsvld... $ECHO_C" >&6; } if test "${ac_cv_lib_svld_dlopen+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -8973,40 +10029,52 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char dlopen (); int main () { -dlopen (); +return dlopen (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -9015,19 +10083,20 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_svld_dlopen=no + ac_cv_lib_svld_dlopen=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_svld_dlopen" >&5 -echo "${ECHO_T}$ac_cv_lib_svld_dlopen" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_svld_dlopen" >&5 +echo "${ECHO_T}$ac_cv_lib_svld_dlopen" >&6; } if test $ac_cv_lib_svld_dlopen = yes; then lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" else - echo "$as_me:$LINENO: checking for dld_link in -ldld" >&5 -echo $ECHO_N "checking for dld_link in -ldld... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for dld_link in -ldld" >&5 +echo $ECHO_N "checking for dld_link in -ldld... $ECHO_C" >&6; } if test "${ac_cv_lib_dld_dld_link+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -9040,40 +10109,52 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char dld_link (); int main () { -dld_link (); +return dld_link (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -9082,14 +10163,15 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_dld_dld_link=no + ac_cv_lib_dld_dld_link=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5 -echo "${ECHO_T}$ac_cv_lib_dld_dld_link" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_dld_dld_link" >&5 +echo "${ECHO_T}$ac_cv_lib_dld_dld_link" >&6; } if test $ac_cv_lib_dld_dld_link = yes; then lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld" fi @@ -9129,8 +10211,8 @@ fi save_LIBS="$LIBS" LIBS="$lt_cv_dlopen_libs $LIBS" - echo "$as_me:$LINENO: checking whether a program can dlopen itself" >&5 -echo $ECHO_N "checking whether a program can dlopen itself... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking whether a program can dlopen itself" >&5 +echo $ECHO_N "checking whether a program can dlopen itself... $ECHO_C" >&6; } if test "${lt_cv_dlopen_self+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -9140,7 +10222,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 9143 "configure" +#line 10225 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -9224,13 +10306,13 @@ rm -fr conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_dlopen_self" >&5 -echo "${ECHO_T}$lt_cv_dlopen_self" >&6 +{ echo "$as_me:$LINENO: result: $lt_cv_dlopen_self" >&5 +echo "${ECHO_T}$lt_cv_dlopen_self" >&6; } if test "x$lt_cv_dlopen_self" = xyes; then wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" - echo "$as_me:$LINENO: checking whether a statically linked program can dlopen itself" >&5 -echo $ECHO_N "checking whether a statically linked program can dlopen itself... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking whether a statically linked program can dlopen itself" >&5 +echo $ECHO_N "checking whether a statically linked program can dlopen itself... $ECHO_C" >&6; } if test "${lt_cv_dlopen_self_static+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -9240,7 +10322,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 9243 "configure" +#line 10325 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -9324,8 +10406,8 @@ rm -fr conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_dlopen_self_static" >&5 -echo "${ECHO_T}$lt_cv_dlopen_self_static" >&6 +{ echo "$as_me:$LINENO: result: $lt_cv_dlopen_self_static" >&5 +echo "${ECHO_T}$lt_cv_dlopen_self_static" >&6; } fi CPPFLAGS="$save_CPPFLAGS" @@ -9347,13 +10429,13 @@ fi # Report which library types will actually be built -echo "$as_me:$LINENO: checking if libtool supports shared libraries" >&5 -echo $ECHO_N "checking if libtool supports shared libraries... $ECHO_C" >&6 -echo "$as_me:$LINENO: result: $can_build_shared" >&5 -echo "${ECHO_T}$can_build_shared" >&6 +{ echo "$as_me:$LINENO: checking if libtool supports shared libraries" >&5 +echo $ECHO_N "checking if libtool supports shared libraries... $ECHO_C" >&6; } +{ echo "$as_me:$LINENO: result: $can_build_shared" >&5 +echo "${ECHO_T}$can_build_shared" >&6; } -echo "$as_me:$LINENO: checking whether to build shared libraries" >&5 -echo $ECHO_N "checking whether to build shared libraries... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether to build shared libraries" >&5 +echo $ECHO_N "checking whether to build shared libraries... $ECHO_C" >&6; } test "$can_build_shared" = "no" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and @@ -9373,15 +10455,15 @@ aix4* | aix5*) fi ;; esac -echo "$as_me:$LINENO: result: $enable_shared" >&5 -echo "${ECHO_T}$enable_shared" >&6 +{ echo "$as_me:$LINENO: result: $enable_shared" >&5 +echo "${ECHO_T}$enable_shared" >&6; } -echo "$as_me:$LINENO: checking whether to build static libraries" >&5 -echo $ECHO_N "checking whether to build static libraries... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether to build static libraries" >&5 +echo $ECHO_N "checking whether to build static libraries... $ECHO_C" >&6; } # Make sure either enable_shared or enable_static is yes. test "$enable_shared" = yes || enable_static=yes -echo "$as_me:$LINENO: result: $enable_static" >&5 -echo "${ECHO_T}$enable_static" >&6 +{ echo "$as_me:$LINENO: result: $enable_static" >&5 +echo "${ECHO_T}$enable_static" >&6; } # The else clause should only fire when bootstrapping the # libtool distribution, otherwise you forgot to ship ltmain.sh @@ -9873,11 +10955,11 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu CC="$lt_save_CC" -# Check whether --with-tags or --without-tags was given. +# Check whether --with-tags was given. if test "${with_tags+set}" = set; then - withval="$with_tags" - tagnames="$withval" -fi; + withval=$with_tags; tagnames="$withval" +fi + if test -f "$ltmain" && test -n "$tagnames"; then if test ! -f "${ofile}"; then @@ -9931,7 +11013,7 @@ echo "$as_me: error: tag name \"$tagname\" already exists" >&2;} if test -n "$CXX" && ( test "X$CXX" != "Xno" && ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || (test "X$CXX" != "Xg++"))) ; then - ac_ext=cc + ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' @@ -10050,18 +11132,18 @@ if test "$GXX" = yes; then # Set up default GNU C++ configuration -# Check whether --with-gnu-ld or --without-gnu-ld was given. +# Check whether --with-gnu-ld was given. if test "${with_gnu_ld+set}" = set; then - withval="$with_gnu_ld" - test "$withval" = no || with_gnu_ld=yes + withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes else with_gnu_ld=no -fi; +fi + ac_prog=ld if test "$GCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. - echo "$as_me:$LINENO: checking for ld used by $CC" >&5 -echo $ECHO_N "checking for ld used by $CC... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for ld used by $CC" >&5 +echo $ECHO_N "checking for ld used by $CC... $ECHO_C" >&6; } case $host in *-*-mingw*) # gcc leaves a trailing carriage return which upsets mingw @@ -10090,11 +11172,11 @@ echo $ECHO_N "checking for ld used by $CC... $ECHO_C" >&6 ;; esac elif test "$with_gnu_ld" = yes; then - echo "$as_me:$LINENO: checking for GNU ld" >&5 -echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for GNU ld" >&5 +echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6; } else - echo "$as_me:$LINENO: checking for non-GNU ld" >&5 -echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for non-GNU ld" >&5 +echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6; } fi if test "${lt_cv_path_LD+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 @@ -10127,17 +11209,17 @@ fi LD="$lt_cv_path_LD" if test -n "$LD"; then - echo "$as_me:$LINENO: result: $LD" >&5 -echo "${ECHO_T}$LD" >&6 + { echo "$as_me:$LINENO: result: $LD" >&5 +echo "${ECHO_T}$LD" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi test -z "$LD" && { { echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5 echo "$as_me: error: no acceptable ld found in \$PATH" >&2;} { (exit 1); exit 1; }; } -echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5 -echo $ECHO_N "checking if the linker ($LD) is GNU ld... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5 +echo $ECHO_N "checking if the linker ($LD) is GNU ld... $ECHO_C" >&6; } if test "${lt_cv_prog_gnu_ld+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -10151,8 +11233,8 @@ case `$LD -v 2>&1 </dev/null` in ;; esac fi -echo "$as_me:$LINENO: result: $lt_cv_prog_gnu_ld" >&5 -echo "${ECHO_T}$lt_cv_prog_gnu_ld" >&6 +{ echo "$as_me:$LINENO: result: $lt_cv_prog_gnu_ld" >&5 +echo "${ECHO_T}$lt_cv_prog_gnu_ld" >&6; } with_gnu_ld=$lt_cv_prog_gnu_ld @@ -10202,8 +11284,8 @@ else fi # PORTME: fill in a description of your system's C++ link characteristics -echo "$as_me:$LINENO: checking whether the $compiler linker ($LD) supports shared libraries" >&5 -echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared libraries... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared libraries... $ECHO_C" >&6; } ld_shlibs_CXX=yes case $host_os in aix3*) @@ -10315,24 +11397,36 @@ main () } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -10346,8 +11440,10 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 + fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi @@ -10377,24 +11473,36 @@ main () } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_cxx_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_cxx_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -10408,8 +11516,10 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 + fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi @@ -10557,7 +11667,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi freebsd-elf*) archive_cmds_need_lc_CXX=no ;; - freebsd* | kfreebsd*-gnu | dragonfly*) + freebsd* | dragonfly*) # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF # conventions ld_shlibs_CXX=yes @@ -10716,7 +11826,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir' hardcode_libdir_separator_CXX=: ;; - linux*) + linux* | k*bsd*-gnu) case $cc_basename in KCC*) # Kuck and Associates, Inc. (KAI) C++ Compiler @@ -10818,7 +11928,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; esac ;; - netbsd*) + netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then archive_cmds_CXX='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' wlarc= @@ -11140,8 +12250,8 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ld_shlibs_CXX=no ;; esac -echo "$as_me:$LINENO: result: $ld_shlibs_CXX" >&5 -echo "${ECHO_T}$ld_shlibs_CXX" >&6 +{ echo "$as_me:$LINENO: result: $ld_shlibs_CXX" >&5 +echo "${ECHO_T}$ld_shlibs_CXX" >&6; } test "$ld_shlibs_CXX" = no && can_build_shared=no GCC_CXX="$GXX" @@ -11280,8 +12390,8 @@ lt_prog_compiler_wl_CXX= lt_prog_compiler_pic_CXX= lt_prog_compiler_static_CXX= -echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5 -echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5 +echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6; } # C++ specific cases for pic, static, wl, etc. if test "$GXX" = yes; then @@ -11385,7 +12495,7 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 ;; esac ;; - freebsd* | kfreebsd*-gnu | dragonfly*) + freebsd* | dragonfly*) # FreeBSD uses GNU C++ ;; hpux9* | hpux10* | hpux11*) @@ -11428,7 +12538,7 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 ;; esac ;; - linux*) + linux* | k*bsd*-gnu) case $cc_basename in KCC*) # KAI C++ Compiler @@ -11471,7 +12581,7 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 ;; esac ;; - netbsd*) + netbsd* | netbsdelf*-gnu) ;; osf3* | osf4* | osf5*) case $cc_basename in @@ -11554,16 +12664,16 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 esac fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_CXX" >&5 -echo "${ECHO_T}$lt_prog_compiler_pic_CXX" >&6 +{ echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_CXX" >&5 +echo "${ECHO_T}$lt_prog_compiler_pic_CXX" >&6; } # # Check to make sure the PIC flag actually works. # if test -n "$lt_prog_compiler_pic_CXX"; then -echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5 -echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5 +echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... $ECHO_C" >&6; } if test "${lt_prog_compiler_pic_works_CXX+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -11580,11 +12690,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:11583: $lt_compile\"" >&5) + (eval echo "\"\$as_me:12693: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:11587: \$? = $ac_status" >&5 + echo "$as_me:12697: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -11597,8 +12707,8 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works_CXX" >&5 -echo "${ECHO_T}$lt_prog_compiler_pic_works_CXX" >&6 +{ echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works_CXX" >&5 +echo "${ECHO_T}$lt_prog_compiler_pic_works_CXX" >&6; } if test x"$lt_prog_compiler_pic_works_CXX" = xyes; then case $lt_prog_compiler_pic_CXX in @@ -11625,8 +12735,8 @@ esac # Check to make sure the static flag actually works. # wl=$lt_prog_compiler_wl_CXX eval lt_tmp_static_flag=\"$lt_prog_compiler_static_CXX\" -echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5 -echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5 +echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6; } if test "${lt_prog_compiler_static_works_CXX+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -11653,8 +12763,8 @@ else LDFLAGS="$save_LDFLAGS" fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works_CXX" >&5 -echo "${ECHO_T}$lt_prog_compiler_static_works_CXX" >&6 +{ echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works_CXX" >&5 +echo "${ECHO_T}$lt_prog_compiler_static_works_CXX" >&6; } if test x"$lt_prog_compiler_static_works_CXX" = xyes; then : @@ -11663,8 +12773,8 @@ else fi -echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5 -echo $ECHO_N "checking if $compiler supports -c -o file.$ac_objext... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5 +echo $ECHO_N "checking if $compiler supports -c -o file.$ac_objext... $ECHO_C" >&6; } if test "${lt_cv_prog_compiler_c_o_CXX+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -11684,11 +12794,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:11687: $lt_compile\"" >&5) + (eval echo "\"\$as_me:12797: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:11691: \$? = $ac_status" >&5 + echo "$as_me:12801: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -11710,23 +12820,23 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_c_o_CXX" >&5 -echo "${ECHO_T}$lt_cv_prog_compiler_c_o_CXX" >&6 +{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_c_o_CXX" >&5 +echo "${ECHO_T}$lt_cv_prog_compiler_c_o_CXX" >&6; } hard_links="nottested" if test "$lt_cv_prog_compiler_c_o_CXX" = no && test "$need_locks" != no; then # do not overwrite the value of need_locks provided by the user - echo "$as_me:$LINENO: checking if we can lock with hard links" >&5 -echo $ECHO_N "checking if we can lock with hard links... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking if we can lock with hard links" >&5 +echo $ECHO_N "checking if we can lock with hard links... $ECHO_C" >&6; } hard_links=yes $rm conftest* ln conftest.a conftest.b 2>/dev/null && hard_links=no touch conftest.a ln conftest.a conftest.b 2>&5 || hard_links=no ln conftest.a conftest.b 2>/dev/null && hard_links=no - echo "$as_me:$LINENO: result: $hard_links" >&5 -echo "${ECHO_T}$hard_links" >&6 + { echo "$as_me:$LINENO: result: $hard_links" >&5 +echo "${ECHO_T}$hard_links" >&6; } if test "$hard_links" = no; then { echo "$as_me:$LINENO: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} @@ -11736,8 +12846,8 @@ else need_locks=no fi -echo "$as_me:$LINENO: checking whether the $compiler linker ($LD) supports shared libraries" >&5 -echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared libraries... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared libraries... $ECHO_C" >&6; } export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' case $host_os in @@ -11756,13 +12866,16 @@ echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared librar cygwin* | mingw*) export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS] /s/.* \([^ ]*\)/\1 DATA/;/^.* __nm__/s/^.* __nm__\([^ ]*\) [^ ]*/\1 DATA/;/^I /d;/^[AITW] /s/.* //'\'' | sort | uniq > $export_symbols' ;; + linux* | k*bsd*-gnu) + link_all_deplibs_CXX=no + ;; *) export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' ;; esac -echo "$as_me:$LINENO: result: $ld_shlibs_CXX" >&5 -echo "${ECHO_T}$ld_shlibs_CXX" >&6 +{ echo "$as_me:$LINENO: result: $ld_shlibs_CXX" >&5 +echo "${ECHO_T}$ld_shlibs_CXX" >&6; } test "$ld_shlibs_CXX" = no && can_build_shared=no # @@ -11782,8 +12895,8 @@ x|xyes) # Test whether the compiler implicitly links with -lc since on some # systems, -lgcc has to come before -lc. If gcc already passes -lc # to ld, don't add -lc before -lgcc. - echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5 -echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5 +echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6; } $rm conftest* printf "$lt_simple_compile_test_code" > conftest.$ac_ext @@ -11820,16 +12933,16 @@ echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >& cat conftest.err 1>&5 fi $rm conftest* - echo "$as_me:$LINENO: result: $archive_cmds_need_lc_CXX" >&5 -echo "${ECHO_T}$archive_cmds_need_lc_CXX" >&6 + { echo "$as_me:$LINENO: result: $archive_cmds_need_lc_CXX" >&5 +echo "${ECHO_T}$archive_cmds_need_lc_CXX" >&6; } ;; esac fi ;; esac -echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5 -echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5 +echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6; } library_names_spec= libname_spec='lib$name' soname_spec= @@ -12035,18 +13148,6 @@ freebsd1*) dynamic_linker=no ;; -kfreebsd*-gnu) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='GNU ld.so' - ;; - freebsd* | dragonfly*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. @@ -12202,7 +13303,7 @@ linux*oldld* | linux*aout* | linux*coff*) ;; # This must be Linux ELF. -linux*) +linux* | k*bsd*-gnu) version_type=linux need_lib_prefix=no need_version=no @@ -12216,31 +13317,10 @@ linux*) # before this can be enabled. hardcode_into_libs=yes - # find out which ABI we are using - libsuff= - case "$host_cpu" in - x86_64*|s390x*|powerpc64*) - echo '#line 12223 "configure"' > conftest.$ac_ext - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - case `/usr/bin/file conftest.$ac_objext` in - *64-bit*) - libsuff=64 - sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" - ;; - esac - fi - rm -rf conftest* - ;; - esac - # Append ld.so.conf contents to the search path if test -f /etc/ld.so.conf; then lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` - sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" + sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" fi # We used to test for /lib/ld.so.1 and disable shared libraries on @@ -12252,7 +13332,7 @@ linux*) dynamic_linker='GNU/Linux ld.so' ;; -knetbsd*-gnu) +netbsdelf*-gnu) version_type=linux need_lib_prefix=no need_version=no @@ -12261,7 +13341,7 @@ knetbsd*-gnu) shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes - dynamic_linker='GNU ld.so' + dynamic_linker='NetBSD ld.elf_so' ;; netbsd*) @@ -12437,8 +13517,8 @@ uts4*) dynamic_linker=no ;; esac -echo "$as_me:$LINENO: result: $dynamic_linker" >&5 -echo "${ECHO_T}$dynamic_linker" >&6 +{ echo "$as_me:$LINENO: result: $dynamic_linker" >&5 +echo "${ECHO_T}$dynamic_linker" >&6; } test "$dynamic_linker" = no && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" @@ -12446,8 +13526,8 @@ if test "$GCC" = yes; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi -echo "$as_me:$LINENO: checking how to hardcode library paths into programs" >&5 -echo $ECHO_N "checking how to hardcode library paths into programs... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking how to hardcode library paths into programs" >&5 +echo $ECHO_N "checking how to hardcode library paths into programs... $ECHO_C" >&6; } hardcode_action_CXX= if test -n "$hardcode_libdir_flag_spec_CXX" || \ test -n "$runpath_var_CXX" || \ @@ -12471,8 +13551,8 @@ else # directories. hardcode_action_CXX=unsupported fi -echo "$as_me:$LINENO: result: $hardcode_action_CXX" >&5 -echo "${ECHO_T}$hardcode_action_CXX" >&6 +{ echo "$as_me:$LINENO: result: $hardcode_action_CXX" >&5 +echo "${ECHO_T}$hardcode_action_CXX" >&6; } if test "$hardcode_action_CXX" = relink; then # Fast installation is not supported @@ -12997,13 +14077,13 @@ done cc_basename=`$echo "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"` -echo "$as_me:$LINENO: checking if libtool supports shared libraries" >&5 -echo $ECHO_N "checking if libtool supports shared libraries... $ECHO_C" >&6 -echo "$as_me:$LINENO: result: $can_build_shared" >&5 -echo "${ECHO_T}$can_build_shared" >&6 +{ echo "$as_me:$LINENO: checking if libtool supports shared libraries" >&5 +echo $ECHO_N "checking if libtool supports shared libraries... $ECHO_C" >&6; } +{ echo "$as_me:$LINENO: result: $can_build_shared" >&5 +echo "${ECHO_T}$can_build_shared" >&6; } -echo "$as_me:$LINENO: checking whether to build shared libraries" >&5 -echo $ECHO_N "checking whether to build shared libraries... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether to build shared libraries" >&5 +echo $ECHO_N "checking whether to build shared libraries... $ECHO_C" >&6; } test "$can_build_shared" = "no" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and @@ -13022,15 +14102,15 @@ aix4* | aix5*) fi ;; esac -echo "$as_me:$LINENO: result: $enable_shared" >&5 -echo "${ECHO_T}$enable_shared" >&6 +{ echo "$as_me:$LINENO: result: $enable_shared" >&5 +echo "${ECHO_T}$enable_shared" >&6; } -echo "$as_me:$LINENO: checking whether to build static libraries" >&5 -echo $ECHO_N "checking whether to build static libraries... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether to build static libraries" >&5 +echo $ECHO_N "checking whether to build static libraries... $ECHO_C" >&6; } # Make sure either enable_shared or enable_static is yes. test "$enable_shared" = yes || enable_static=yes -echo "$as_me:$LINENO: result: $enable_static" >&5 -echo "${ECHO_T}$enable_static" >&6 +{ echo "$as_me:$LINENO: result: $enable_static" >&5 +echo "${ECHO_T}$enable_static" >&6; } GCC_F77="$G77" LD_F77="$LD" @@ -13039,8 +14119,8 @@ lt_prog_compiler_wl_F77= lt_prog_compiler_pic_F77= lt_prog_compiler_static_F77= -echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5 -echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5 +echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6; } if test "$GCC" = yes; then lt_prog_compiler_wl_F77='-Wl,' @@ -13169,7 +14249,7 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 lt_prog_compiler_static_F77='-Bstatic' ;; - linux*) + linux* | k*bsd*-gnu) case $cc_basename in icc* | ecc*) lt_prog_compiler_wl_F77='-Wl,' @@ -13249,16 +14329,16 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 esac fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_F77" >&5 -echo "${ECHO_T}$lt_prog_compiler_pic_F77" >&6 +{ echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_F77" >&5 +echo "${ECHO_T}$lt_prog_compiler_pic_F77" >&6; } # # Check to make sure the PIC flag actually works. # if test -n "$lt_prog_compiler_pic_F77"; then -echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic_F77 works" >&5 -echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic_F77 works... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic_F77 works" >&5 +echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic_F77 works... $ECHO_C" >&6; } if test "${lt_prog_compiler_pic_works_F77+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -13275,11 +14355,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:13278: $lt_compile\"" >&5) + (eval echo "\"\$as_me:14358: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:13282: \$? = $ac_status" >&5 + echo "$as_me:14362: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -13292,8 +14372,8 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works_F77" >&5 -echo "${ECHO_T}$lt_prog_compiler_pic_works_F77" >&6 +{ echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works_F77" >&5 +echo "${ECHO_T}$lt_prog_compiler_pic_works_F77" >&6; } if test x"$lt_prog_compiler_pic_works_F77" = xyes; then case $lt_prog_compiler_pic_F77 in @@ -13320,8 +14400,8 @@ esac # Check to make sure the static flag actually works. # wl=$lt_prog_compiler_wl_F77 eval lt_tmp_static_flag=\"$lt_prog_compiler_static_F77\" -echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5 -echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5 +echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6; } if test "${lt_prog_compiler_static_works_F77+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -13348,8 +14428,8 @@ else LDFLAGS="$save_LDFLAGS" fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works_F77" >&5 -echo "${ECHO_T}$lt_prog_compiler_static_works_F77" >&6 +{ echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works_F77" >&5 +echo "${ECHO_T}$lt_prog_compiler_static_works_F77" >&6; } if test x"$lt_prog_compiler_static_works_F77" = xyes; then : @@ -13358,8 +14438,8 @@ else fi -echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5 -echo $ECHO_N "checking if $compiler supports -c -o file.$ac_objext... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5 +echo $ECHO_N "checking if $compiler supports -c -o file.$ac_objext... $ECHO_C" >&6; } if test "${lt_cv_prog_compiler_c_o_F77+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -13379,11 +14459,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:13382: $lt_compile\"" >&5) + (eval echo "\"\$as_me:14462: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:13386: \$? = $ac_status" >&5 + echo "$as_me:14466: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -13405,23 +14485,23 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_c_o_F77" >&5 -echo "${ECHO_T}$lt_cv_prog_compiler_c_o_F77" >&6 +{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_c_o_F77" >&5 +echo "${ECHO_T}$lt_cv_prog_compiler_c_o_F77" >&6; } hard_links="nottested" if test "$lt_cv_prog_compiler_c_o_F77" = no && test "$need_locks" != no; then # do not overwrite the value of need_locks provided by the user - echo "$as_me:$LINENO: checking if we can lock with hard links" >&5 -echo $ECHO_N "checking if we can lock with hard links... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking if we can lock with hard links" >&5 +echo $ECHO_N "checking if we can lock with hard links... $ECHO_C" >&6; } hard_links=yes $rm conftest* ln conftest.a conftest.b 2>/dev/null && hard_links=no touch conftest.a ln conftest.a conftest.b 2>&5 || hard_links=no ln conftest.a conftest.b 2>/dev/null && hard_links=no - echo "$as_me:$LINENO: result: $hard_links" >&5 -echo "${ECHO_T}$hard_links" >&6 + { echo "$as_me:$LINENO: result: $hard_links" >&5 +echo "${ECHO_T}$hard_links" >&6; } if test "$hard_links" = no; then { echo "$as_me:$LINENO: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} @@ -13431,8 +14511,8 @@ else need_locks=no fi -echo "$as_me:$LINENO: checking whether the $compiler linker ($LD) supports shared libraries" >&5 -echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared libraries... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared libraries... $ECHO_C" >&6; } runpath_var= allow_undefined_flag_F77= @@ -13608,7 +14688,7 @@ EOF archive_expsym_cmds_F77='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; - linux*) + linux* | k*bsd*-gnu) if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then tmp_addflag= case $cc_basename,$host_cpu in @@ -13634,12 +14714,13 @@ EOF $echo "local: *; };" >> $output_objdir/$libname.ver~ $CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' fi + link_all_deplibs_F77=no else ld_shlibs_F77=no fi ;; - netbsd*) + netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then archive_cmds_F77='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= @@ -13837,24 +14918,36 @@ _LT_EOF end _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_f77_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_f77_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -13868,8 +14961,10 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 + fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi @@ -13888,24 +14983,36 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi end _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_f77_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_f77_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -13919,8 +15026,10 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 + fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi @@ -14051,7 +15160,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd* | kfreebsd*-gnu | dragonfly*) + freebsd* | dragonfly*) archive_cmds_F77='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' hardcode_libdir_flag_spec_F77='-R$libdir' hardcode_direct_F77=yes @@ -14153,7 +15262,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi link_all_deplibs_F77=yes ;; - netbsd*) + netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then archive_cmds_F77='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else @@ -14369,8 +15478,8 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi esac fi -echo "$as_me:$LINENO: result: $ld_shlibs_F77" >&5 -echo "${ECHO_T}$ld_shlibs_F77" >&6 +{ echo "$as_me:$LINENO: result: $ld_shlibs_F77" >&5 +echo "${ECHO_T}$ld_shlibs_F77" >&6; } test "$ld_shlibs_F77" = no && can_build_shared=no # @@ -14390,8 +15499,8 @@ x|xyes) # Test whether the compiler implicitly links with -lc since on some # systems, -lgcc has to come before -lc. If gcc already passes -lc # to ld, don't add -lc before -lgcc. - echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5 -echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5 +echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6; } $rm conftest* printf "$lt_simple_compile_test_code" > conftest.$ac_ext @@ -14428,16 +15537,16 @@ echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >& cat conftest.err 1>&5 fi $rm conftest* - echo "$as_me:$LINENO: result: $archive_cmds_need_lc_F77" >&5 -echo "${ECHO_T}$archive_cmds_need_lc_F77" >&6 + { echo "$as_me:$LINENO: result: $archive_cmds_need_lc_F77" >&5 +echo "${ECHO_T}$archive_cmds_need_lc_F77" >&6; } ;; esac fi ;; esac -echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5 -echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5 +echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6; } library_names_spec= libname_spec='lib$name' soname_spec= @@ -14643,18 +15752,6 @@ freebsd1*) dynamic_linker=no ;; -kfreebsd*-gnu) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='GNU ld.so' - ;; - freebsd* | dragonfly*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. @@ -14810,7 +15907,7 @@ linux*oldld* | linux*aout* | linux*coff*) ;; # This must be Linux ELF. -linux*) +linux* | k*bsd*-gnu) version_type=linux need_lib_prefix=no need_version=no @@ -14824,31 +15921,10 @@ linux*) # before this can be enabled. hardcode_into_libs=yes - # find out which ABI we are using - libsuff= - case "$host_cpu" in - x86_64*|s390x*|powerpc64*) - echo '#line 14831 "configure"' > conftest.$ac_ext - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - case `/usr/bin/file conftest.$ac_objext` in - *64-bit*) - libsuff=64 - sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" - ;; - esac - fi - rm -rf conftest* - ;; - esac - # Append ld.so.conf contents to the search path if test -f /etc/ld.so.conf; then lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` - sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" + sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" fi # We used to test for /lib/ld.so.1 and disable shared libraries on @@ -14860,7 +15936,7 @@ linux*) dynamic_linker='GNU/Linux ld.so' ;; -knetbsd*-gnu) +netbsdelf*-gnu) version_type=linux need_lib_prefix=no need_version=no @@ -14869,7 +15945,7 @@ knetbsd*-gnu) shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes - dynamic_linker='GNU ld.so' + dynamic_linker='NetBSD ld.elf_so' ;; netbsd*) @@ -15045,8 +16121,8 @@ uts4*) dynamic_linker=no ;; esac -echo "$as_me:$LINENO: result: $dynamic_linker" >&5 -echo "${ECHO_T}$dynamic_linker" >&6 +{ echo "$as_me:$LINENO: result: $dynamic_linker" >&5 +echo "${ECHO_T}$dynamic_linker" >&6; } test "$dynamic_linker" = no && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" @@ -15054,8 +16130,8 @@ if test "$GCC" = yes; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi -echo "$as_me:$LINENO: checking how to hardcode library paths into programs" >&5 -echo $ECHO_N "checking how to hardcode library paths into programs... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking how to hardcode library paths into programs" >&5 +echo $ECHO_N "checking how to hardcode library paths into programs... $ECHO_C" >&6; } hardcode_action_F77= if test -n "$hardcode_libdir_flag_spec_F77" || \ test -n "$runpath_var_F77" || \ @@ -15079,8 +16155,8 @@ else # directories. hardcode_action_F77=unsupported fi -echo "$as_me:$LINENO: result: $hardcode_action_F77" >&5 -echo "${ECHO_T}$hardcode_action_F77" >&6 +{ echo "$as_me:$LINENO: result: $hardcode_action_F77" >&5 +echo "${ECHO_T}$hardcode_action_F77" >&6; } if test "$hardcode_action_F77" = relink; then # Fast installation is not supported @@ -15517,7 +16593,6 @@ CC="$lt_save_CC" if test -n "$GCJ" && test "X$GCJ" != "Xno"; then - # Source file extension for Java test sources. ac_ext=java @@ -15585,8 +16660,8 @@ if test "$GCC" = yes; then lt_prog_compiler_no_builtin_flag_GCJ=' -fno-builtin' -echo "$as_me:$LINENO: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 -echo $ECHO_N "checking if $compiler supports -fno-rtti -fno-exceptions... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 +echo $ECHO_N "checking if $compiler supports -fno-rtti -fno-exceptions... $ECHO_C" >&6; } if test "${lt_cv_prog_compiler_rtti_exceptions+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -15603,11 +16678,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:15606: $lt_compile\"" >&5) + (eval echo "\"\$as_me:16681: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:15610: \$? = $ac_status" >&5 + echo "$as_me:16685: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -15620,8 +16695,8 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 -echo "${ECHO_T}$lt_cv_prog_compiler_rtti_exceptions" >&6 +{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 +echo "${ECHO_T}$lt_cv_prog_compiler_rtti_exceptions" >&6; } if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then lt_prog_compiler_no_builtin_flag_GCJ="$lt_prog_compiler_no_builtin_flag_GCJ -fno-rtti -fno-exceptions" @@ -15635,8 +16710,8 @@ lt_prog_compiler_wl_GCJ= lt_prog_compiler_pic_GCJ= lt_prog_compiler_static_GCJ= -echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5 -echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $compiler option to produce PIC" >&5 +echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6; } if test "$GCC" = yes; then lt_prog_compiler_wl_GCJ='-Wl,' @@ -15765,7 +16840,7 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 lt_prog_compiler_static_GCJ='-Bstatic' ;; - linux*) + linux* | k*bsd*-gnu) case $cc_basename in icc* | ecc*) lt_prog_compiler_wl_GCJ='-Wl,' @@ -15845,16 +16920,16 @@ echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6 esac fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_GCJ" >&5 -echo "${ECHO_T}$lt_prog_compiler_pic_GCJ" >&6 +{ echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_GCJ" >&5 +echo "${ECHO_T}$lt_prog_compiler_pic_GCJ" >&6; } # # Check to make sure the PIC flag actually works. # if test -n "$lt_prog_compiler_pic_GCJ"; then -echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic_GCJ works" >&5 -echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic_GCJ works... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking if $compiler PIC flag $lt_prog_compiler_pic_GCJ works" >&5 +echo $ECHO_N "checking if $compiler PIC flag $lt_prog_compiler_pic_GCJ works... $ECHO_C" >&6; } if test "${lt_prog_compiler_pic_works_GCJ+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -15871,11 +16946,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:15874: $lt_compile\"" >&5) + (eval echo "\"\$as_me:16949: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:15878: \$? = $ac_status" >&5 + echo "$as_me:16953: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -15888,8 +16963,8 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works_GCJ" >&5 -echo "${ECHO_T}$lt_prog_compiler_pic_works_GCJ" >&6 +{ echo "$as_me:$LINENO: result: $lt_prog_compiler_pic_works_GCJ" >&5 +echo "${ECHO_T}$lt_prog_compiler_pic_works_GCJ" >&6; } if test x"$lt_prog_compiler_pic_works_GCJ" = xyes; then case $lt_prog_compiler_pic_GCJ in @@ -15916,8 +16991,8 @@ esac # Check to make sure the static flag actually works. # wl=$lt_prog_compiler_wl_GCJ eval lt_tmp_static_flag=\"$lt_prog_compiler_static_GCJ\" -echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5 -echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking if $compiler static flag $lt_tmp_static_flag works" >&5 +echo $ECHO_N "checking if $compiler static flag $lt_tmp_static_flag works... $ECHO_C" >&6; } if test "${lt_prog_compiler_static_works_GCJ+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -15944,8 +17019,8 @@ else LDFLAGS="$save_LDFLAGS" fi -echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works_GCJ" >&5 -echo "${ECHO_T}$lt_prog_compiler_static_works_GCJ" >&6 +{ echo "$as_me:$LINENO: result: $lt_prog_compiler_static_works_GCJ" >&5 +echo "${ECHO_T}$lt_prog_compiler_static_works_GCJ" >&6; } if test x"$lt_prog_compiler_static_works_GCJ" = xyes; then : @@ -15954,8 +17029,8 @@ else fi -echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5 -echo $ECHO_N "checking if $compiler supports -c -o file.$ac_objext... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking if $compiler supports -c -o file.$ac_objext" >&5 +echo $ECHO_N "checking if $compiler supports -c -o file.$ac_objext... $ECHO_C" >&6; } if test "${lt_cv_prog_compiler_c_o_GCJ+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -15975,11 +17050,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:15978: $lt_compile\"" >&5) + (eval echo "\"\$as_me:17053: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:15982: \$? = $ac_status" >&5 + echo "$as_me:17057: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -16001,23 +17076,23 @@ else $rm conftest* fi -echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_c_o_GCJ" >&5 -echo "${ECHO_T}$lt_cv_prog_compiler_c_o_GCJ" >&6 +{ echo "$as_me:$LINENO: result: $lt_cv_prog_compiler_c_o_GCJ" >&5 +echo "${ECHO_T}$lt_cv_prog_compiler_c_o_GCJ" >&6; } hard_links="nottested" if test "$lt_cv_prog_compiler_c_o_GCJ" = no && test "$need_locks" != no; then # do not overwrite the value of need_locks provided by the user - echo "$as_me:$LINENO: checking if we can lock with hard links" >&5 -echo $ECHO_N "checking if we can lock with hard links... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking if we can lock with hard links" >&5 +echo $ECHO_N "checking if we can lock with hard links... $ECHO_C" >&6; } hard_links=yes $rm conftest* ln conftest.a conftest.b 2>/dev/null && hard_links=no touch conftest.a ln conftest.a conftest.b 2>&5 || hard_links=no ln conftest.a conftest.b 2>/dev/null && hard_links=no - echo "$as_me:$LINENO: result: $hard_links" >&5 -echo "${ECHO_T}$hard_links" >&6 + { echo "$as_me:$LINENO: result: $hard_links" >&5 +echo "${ECHO_T}$hard_links" >&6; } if test "$hard_links" = no; then { echo "$as_me:$LINENO: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} @@ -16027,8 +17102,8 @@ else need_locks=no fi -echo "$as_me:$LINENO: checking whether the $compiler linker ($LD) supports shared libraries" >&5 -echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared libraries... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +echo $ECHO_N "checking whether the $compiler linker ($LD) supports shared libraries... $ECHO_C" >&6; } runpath_var= allow_undefined_flag_GCJ= @@ -16204,7 +17279,7 @@ EOF archive_expsym_cmds_GCJ='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; - linux*) + linux* | k*bsd*-gnu) if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then tmp_addflag= case $cc_basename,$host_cpu in @@ -16230,12 +17305,13 @@ EOF $echo "local: *; };" >> $output_objdir/$libname.ver~ $CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' fi + link_all_deplibs_GCJ=no else ld_shlibs_GCJ=no fi ;; - netbsd*) + netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then archive_cmds_GCJ='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= @@ -16443,24 +17519,36 @@ main () } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -16474,8 +17562,10 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 + fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi @@ -16504,24 +17594,36 @@ main () } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -16535,8 +17637,10 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 + fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi @@ -16667,7 +17771,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; # FreeBSD 3 and greater uses gcc -shared to do shared libraries. - freebsd* | kfreebsd*-gnu | dragonfly*) + freebsd* | dragonfly*) archive_cmds_GCJ='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' hardcode_libdir_flag_spec_GCJ='-R$libdir' hardcode_direct_GCJ=yes @@ -16769,7 +17873,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi link_all_deplibs_GCJ=yes ;; - netbsd*) + netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then archive_cmds_GCJ='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else @@ -16985,8 +18089,8 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi esac fi -echo "$as_me:$LINENO: result: $ld_shlibs_GCJ" >&5 -echo "${ECHO_T}$ld_shlibs_GCJ" >&6 +{ echo "$as_me:$LINENO: result: $ld_shlibs_GCJ" >&5 +echo "${ECHO_T}$ld_shlibs_GCJ" >&6; } test "$ld_shlibs_GCJ" = no && can_build_shared=no # @@ -17006,8 +18110,8 @@ x|xyes) # Test whether the compiler implicitly links with -lc since on some # systems, -lgcc has to come before -lc. If gcc already passes -lc # to ld, don't add -lc before -lgcc. - echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5 -echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5 +echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6; } $rm conftest* printf "$lt_simple_compile_test_code" > conftest.$ac_ext @@ -17044,16 +18148,16 @@ echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >& cat conftest.err 1>&5 fi $rm conftest* - echo "$as_me:$LINENO: result: $archive_cmds_need_lc_GCJ" >&5 -echo "${ECHO_T}$archive_cmds_need_lc_GCJ" >&6 + { echo "$as_me:$LINENO: result: $archive_cmds_need_lc_GCJ" >&5 +echo "${ECHO_T}$archive_cmds_need_lc_GCJ" >&6; } ;; esac fi ;; esac -echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5 -echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking dynamic linker characteristics" >&5 +echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6; } library_names_spec= libname_spec='lib$name' soname_spec= @@ -17259,18 +18363,6 @@ freebsd1*) dynamic_linker=no ;; -kfreebsd*-gnu) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='GNU ld.so' - ;; - freebsd* | dragonfly*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. @@ -17426,7 +18518,7 @@ linux*oldld* | linux*aout* | linux*coff*) ;; # This must be Linux ELF. -linux*) +linux* | k*bsd*-gnu) version_type=linux need_lib_prefix=no need_version=no @@ -17440,31 +18532,10 @@ linux*) # before this can be enabled. hardcode_into_libs=yes - # find out which ABI we are using - libsuff= - case "$host_cpu" in - x86_64*|s390x*|powerpc64*) - echo '#line 17447 "configure"' > conftest.$ac_ext - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - case `/usr/bin/file conftest.$ac_objext` in - *64-bit*) - libsuff=64 - sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" - ;; - esac - fi - rm -rf conftest* - ;; - esac - # Append ld.so.conf contents to the search path if test -f /etc/ld.so.conf; then lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` - sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" + sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" fi # We used to test for /lib/ld.so.1 and disable shared libraries on @@ -17476,7 +18547,7 @@ linux*) dynamic_linker='GNU/Linux ld.so' ;; -knetbsd*-gnu) +netbsdelf*-gnu) version_type=linux need_lib_prefix=no need_version=no @@ -17485,7 +18556,7 @@ knetbsd*-gnu) shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes - dynamic_linker='GNU ld.so' + dynamic_linker='NetBSD ld.elf_so' ;; netbsd*) @@ -17661,8 +18732,8 @@ uts4*) dynamic_linker=no ;; esac -echo "$as_me:$LINENO: result: $dynamic_linker" >&5 -echo "${ECHO_T}$dynamic_linker" >&6 +{ echo "$as_me:$LINENO: result: $dynamic_linker" >&5 +echo "${ECHO_T}$dynamic_linker" >&6; } test "$dynamic_linker" = no && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" @@ -17670,8 +18741,8 @@ if test "$GCC" = yes; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi -echo "$as_me:$LINENO: checking how to hardcode library paths into programs" >&5 -echo $ECHO_N "checking how to hardcode library paths into programs... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking how to hardcode library paths into programs" >&5 +echo $ECHO_N "checking how to hardcode library paths into programs... $ECHO_C" >&6; } hardcode_action_GCJ= if test -n "$hardcode_libdir_flag_spec_GCJ" || \ test -n "$runpath_var_GCJ" || \ @@ -17695,8 +18766,8 @@ else # directories. hardcode_action_GCJ=unsupported fi -echo "$as_me:$LINENO: result: $hardcode_action_GCJ" >&5 -echo "${ECHO_T}$hardcode_action_GCJ" >&6 +{ echo "$as_me:$LINENO: result: $hardcode_action_GCJ" >&5 +echo "${ECHO_T}$hardcode_action_GCJ" >&6; } if test "$hardcode_action_GCJ" = relink; then # Fast installation is not supported @@ -18132,7 +19203,6 @@ CC="$lt_save_CC" RC) - # Source file extension for RC test sources. ac_ext=rc @@ -18668,8 +19738,8 @@ for ac_prog in flex lex do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_LEX+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -18682,33 +19752,35 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_LEX="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi LEX=$ac_cv_prog_LEX if test -n "$LEX"; then - echo "$as_me:$LINENO: result: $LEX" >&5 -echo "${ECHO_T}$LEX" >&6 + { echo "$as_me:$LINENO: result: $LEX" >&5 +echo "${ECHO_T}$LEX" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + test -n "$LEX" && break done test -n "$LEX" || LEX=":" if test -z "$LEXLIB" then - echo "$as_me:$LINENO: checking for yywrap in -lfl" >&5 -echo $ECHO_N "checking for yywrap in -lfl... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for yywrap in -lfl" >&5 +echo $ECHO_N "checking for yywrap in -lfl... $ECHO_C" >&6; } if test "${ac_cv_lib_fl_yywrap+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -18721,40 +19793,52 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char yywrap (); int main () { -yywrap (); +return yywrap (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -18763,19 +19847,20 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_fl_yywrap=no + ac_cv_lib_fl_yywrap=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_fl_yywrap" >&5 -echo "${ECHO_T}$ac_cv_lib_fl_yywrap" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_fl_yywrap" >&5 +echo "${ECHO_T}$ac_cv_lib_fl_yywrap" >&6; } if test $ac_cv_lib_fl_yywrap = yes; then LEXLIB="-lfl" else - echo "$as_me:$LINENO: checking for yywrap in -ll" >&5 -echo $ECHO_N "checking for yywrap in -ll... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking for yywrap in -ll" >&5 +echo $ECHO_N "checking for yywrap in -ll... $ECHO_C" >&6; } if test "${ac_cv_lib_l_yywrap+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -18788,40 +19873,52 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char yywrap (); int main () { -yywrap (); +return yywrap (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -18830,14 +19927,15 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_l_yywrap=no + ac_cv_lib_l_yywrap=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_l_yywrap" >&5 -echo "${ECHO_T}$ac_cv_lib_l_yywrap" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_l_yywrap" >&5 +echo "${ECHO_T}$ac_cv_lib_l_yywrap" >&6; } if test $ac_cv_lib_l_yywrap = yes; then LEXLIB="-ll" fi @@ -18847,8 +19945,8 @@ fi fi if test "x$LEX" != "x:"; then - echo "$as_me:$LINENO: checking lex output file root" >&5 -echo $ECHO_N "checking lex output file root... $ECHO_C" >&6 + { echo "$as_me:$LINENO: checking lex output file root" >&5 +echo $ECHO_N "checking lex output file root... $ECHO_C" >&6; } if test "${ac_cv_prog_lex_root+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -18858,8 +19956,13 @@ cat >conftest.l <<_ACEOF %% %% _ACEOF -{ (eval echo "$as_me:$LINENO: \"$LEX conftest.l\"") >&5 - (eval $LEX conftest.l) 2>&5 +{ (ac_try="$LEX conftest.l" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$LEX conftest.l") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } @@ -18873,13 +19976,13 @@ echo "$as_me: error: cannot find output from $LEX; giving up" >&2;} { (exit 1); exit 1; }; } fi fi -echo "$as_me:$LINENO: result: $ac_cv_prog_lex_root" >&5 -echo "${ECHO_T}$ac_cv_prog_lex_root" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_prog_lex_root" >&5 +echo "${ECHO_T}$ac_cv_prog_lex_root" >&6; } rm -f conftest.l LEX_OUTPUT_ROOT=$ac_cv_prog_lex_root -echo "$as_me:$LINENO: checking whether yytext is a pointer" >&5 -echo $ECHO_N "checking whether yytext is a pointer... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether yytext is a pointer" >&5 +echo $ECHO_N "checking whether yytext is a pointer... $ECHO_C" >&6; } if test "${ac_cv_prog_lex_yytext_pointer+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -18894,24 +19997,36 @@ cat >conftest.$ac_ext <<_ACEOF `cat $LEX_OUTPUT_ROOT.c` _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -18920,15 +20035,17 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 + fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_save_LIBS rm -f "${LEX_OUTPUT_ROOT}.c" fi -echo "$as_me:$LINENO: result: $ac_cv_prog_lex_yytext_pointer" >&5 -echo "${ECHO_T}$ac_cv_prog_lex_yytext_pointer" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_prog_lex_yytext_pointer" >&5 +echo "${ECHO_T}$ac_cv_prog_lex_yytext_pointer" >&6; } if test $ac_cv_prog_lex_yytext_pointer = yes; then cat >>confdefs.h <<\_ACEOF @@ -18945,8 +20062,8 @@ for ac_prog in 'bison -y' byacc do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } if test "${ac_cv_prog_YACC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -18959,33 +20076,35 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_YACC="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done +IFS=$as_save_IFS fi fi YACC=$ac_cv_prog_YACC if test -n "$YACC"; then - echo "$as_me:$LINENO: result: $YACC" >&5 -echo "${ECHO_T}$YACC" >&6 + { echo "$as_me:$LINENO: result: $YACC" >&5 +echo "${ECHO_T}$YACC" >&6; } else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } fi + test -n "$YACC" && break done test -n "$YACC" || YACC="yacc" -echo "$as_me:$LINENO: checking for main in -lm" >&5 -echo $ECHO_N "checking for main in -lm... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for main in -lm" >&5 +echo $ECHO_N "checking for main in -lm... $ECHO_C" >&6; } if test "${ac_cv_lib_m_main+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -19002,30 +20121,42 @@ cat >>conftest.$ac_ext <<_ACEOF int main () { -main (); +return main (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -19034,14 +20165,15 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_m_main=no + ac_cv_lib_m_main=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_m_main" >&5 -echo "${ECHO_T}$ac_cv_lib_m_main" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_m_main" >&5 +echo "${ECHO_T}$ac_cv_lib_m_main" >&6; } if test $ac_cv_lib_m_main = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBM 1 @@ -19052,8 +20184,8 @@ _ACEOF fi -echo "$as_me:$LINENO: checking for main in -lnsl" >&5 -echo $ECHO_N "checking for main in -lnsl... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for main in -lnsl" >&5 +echo $ECHO_N "checking for main in -lnsl... $ECHO_C" >&6; } if test "${ac_cv_lib_nsl_main+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -19070,30 +20202,42 @@ cat >>conftest.$ac_ext <<_ACEOF int main () { -main (); +return main (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -19102,14 +20246,15 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_nsl_main=no + ac_cv_lib_nsl_main=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_nsl_main" >&5 -echo "${ECHO_T}$ac_cv_lib_nsl_main" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_nsl_main" >&5 +echo "${ECHO_T}$ac_cv_lib_nsl_main" >&6; } if test $ac_cv_lib_nsl_main = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBNSL 1 @@ -19120,8 +20265,8 @@ _ACEOF fi -echo "$as_me:$LINENO: checking for main in -lsocket" >&5 -echo $ECHO_N "checking for main in -lsocket... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for main in -lsocket" >&5 +echo $ECHO_N "checking for main in -lsocket... $ECHO_C" >&6; } if test "${ac_cv_lib_socket_main+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -19138,30 +20283,42 @@ cat >>conftest.$ac_ext <<_ACEOF int main () { -main (); +return main (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -19170,14 +20327,15 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_socket_main=no + ac_cv_lib_socket_main=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_socket_main" >&5 -echo "${ECHO_T}$ac_cv_lib_socket_main" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_socket_main" >&5 +echo "${ECHO_T}$ac_cv_lib_socket_main" >&6; } if test $ac_cv_lib_socket_main = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBSOCKET 1 @@ -19188,8 +20346,8 @@ _ACEOF fi -echo "$as_me:$LINENO: checking for main in -lipc" >&5 -echo $ECHO_N "checking for main in -lipc... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for main in -lipc" >&5 +echo $ECHO_N "checking for main in -lipc... $ECHO_C" >&6; } if test "${ac_cv_lib_ipc_main+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -19206,30 +20364,42 @@ cat >>conftest.$ac_ext <<_ACEOF int main () { -main (); +return main (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -19238,14 +20408,15 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_ipc_main=no + ac_cv_lib_ipc_main=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_ipc_main" >&5 -echo "${ECHO_T}$ac_cv_lib_ipc_main" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_ipc_main" >&5 +echo "${ECHO_T}$ac_cv_lib_ipc_main" >&6; } if test $ac_cv_lib_ipc_main = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBIPC 1 @@ -19256,8 +20427,8 @@ _ACEOF fi -echo "$as_me:$LINENO: checking for main in -lIPC" >&5 -echo $ECHO_N "checking for main in -lIPC... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for main in -lIPC" >&5 +echo $ECHO_N "checking for main in -lIPC... $ECHO_C" >&6; } if test "${ac_cv_lib_IPC_main+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -19274,30 +20445,42 @@ cat >>conftest.$ac_ext <<_ACEOF int main () { -main (); +return main (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -19306,14 +20489,15 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_IPC_main=no + ac_cv_lib_IPC_main=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_IPC_main" >&5 -echo "${ECHO_T}$ac_cv_lib_IPC_main" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_IPC_main" >&5 +echo "${ECHO_T}$ac_cv_lib_IPC_main" >&6; } if test $ac_cv_lib_IPC_main = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBIPC 1 @@ -19324,8 +20508,8 @@ _ACEOF fi -echo "$as_me:$LINENO: checking for main in -llc" >&5 -echo $ECHO_N "checking for main in -llc... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for main in -llc" >&5 +echo $ECHO_N "checking for main in -llc... $ECHO_C" >&6; } if test "${ac_cv_lib_lc_main+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -19342,30 +20526,42 @@ cat >>conftest.$ac_ext <<_ACEOF int main () { -main (); +return main (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -19374,14 +20570,15 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_lc_main=no + ac_cv_lib_lc_main=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_lc_main" >&5 -echo "${ECHO_T}$ac_cv_lib_lc_main" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_lc_main" >&5 +echo "${ECHO_T}$ac_cv_lib_lc_main" >&6; } if test $ac_cv_lib_lc_main = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBLC 1 @@ -19392,8 +20589,8 @@ _ACEOF fi -echo "$as_me:$LINENO: checking for main in -lcompat" >&5 -echo $ECHO_N "checking for main in -lcompat... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for main in -lcompat" >&5 +echo $ECHO_N "checking for main in -lcompat... $ECHO_C" >&6; } if test "${ac_cv_lib_compat_main+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -19410,30 +20607,42 @@ cat >>conftest.$ac_ext <<_ACEOF int main () { -main (); +return main (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -19442,14 +20651,15 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_compat_main=no + ac_cv_lib_compat_main=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_compat_main" >&5 -echo "${ECHO_T}$ac_cv_lib_compat_main" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_compat_main" >&5 +echo "${ECHO_T}$ac_cv_lib_compat_main" >&6; } if test $ac_cv_lib_compat_main = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBCOMPAT 1 @@ -19460,8 +20670,8 @@ _ACEOF fi -echo "$as_me:$LINENO: checking for main in -lBSD" >&5 -echo $ECHO_N "checking for main in -lBSD... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for main in -lBSD" >&5 +echo $ECHO_N "checking for main in -lBSD... $ECHO_C" >&6; } if test "${ac_cv_lib_BSD_main+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -19478,30 +20688,42 @@ cat >>conftest.$ac_ext <<_ACEOF int main () { -main (); +return main (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -19510,14 +20732,15 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_BSD_main=no + ac_cv_lib_BSD_main=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_BSD_main" >&5 -echo "${ECHO_T}$ac_cv_lib_BSD_main" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_BSD_main" >&5 +echo "${ECHO_T}$ac_cv_lib_BSD_main" >&6; } if test $ac_cv_lib_BSD_main = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBBSD 1 @@ -19528,8 +20751,8 @@ _ACEOF fi -echo "$as_me:$LINENO: checking for main in -lgen" >&5 -echo $ECHO_N "checking for main in -lgen... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for main in -lgen" >&5 +echo $ECHO_N "checking for main in -lgen... $ECHO_C" >&6; } if test "${ac_cv_lib_gen_main+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -19546,30 +20769,42 @@ cat >>conftest.$ac_ext <<_ACEOF int main () { -main (); +return main (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -19578,14 +20813,15 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_gen_main=no + ac_cv_lib_gen_main=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_gen_main" >&5 -echo "${ECHO_T}$ac_cv_lib_gen_main" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_gen_main" >&5 +echo "${ECHO_T}$ac_cv_lib_gen_main" >&6; } if test $ac_cv_lib_gen_main = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBGEN 1 @@ -19596,8 +20832,8 @@ _ACEOF fi -echo "$as_me:$LINENO: checking for main in -lPW" >&5 -echo $ECHO_N "checking for main in -lPW... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for main in -lPW" >&5 +echo $ECHO_N "checking for main in -lPW... $ECHO_C" >&6; } if test "${ac_cv_lib_PW_main+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -19614,30 +20850,42 @@ cat >>conftest.$ac_ext <<_ACEOF int main () { -main (); +return main (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -19646,14 +20894,15 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_PW_main=no + ac_cv_lib_PW_main=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_PW_main" >&5 -echo "${ECHO_T}$ac_cv_lib_PW_main" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_PW_main" >&5 +echo "${ECHO_T}$ac_cv_lib_PW_main" >&6; } if test $ac_cv_lib_PW_main = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBPW 1 @@ -19664,8 +20913,8 @@ _ACEOF fi -echo "$as_me:$LINENO: checking for main in -lresolv" >&5 -echo $ECHO_N "checking for main in -lresolv... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for main in -lresolv" >&5 +echo $ECHO_N "checking for main in -lresolv... $ECHO_C" >&6; } if test "${ac_cv_lib_resolv_main+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -19682,30 +20931,42 @@ cat >>conftest.$ac_ext <<_ACEOF int main () { -main (); +return main (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -19714,14 +20975,15 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_resolv_main=no + ac_cv_lib_resolv_main=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_resolv_main" >&5 -echo "${ECHO_T}$ac_cv_lib_resolv_main" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_resolv_main" >&5 +echo "${ECHO_T}$ac_cv_lib_resolv_main" >&6; } if test $ac_cv_lib_resolv_main = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBRESOLV 1 @@ -19732,8 +20994,8 @@ _ACEOF fi -echo "$as_me:$LINENO: checking for ANSI C header files" >&5 -echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for ANSI C header files" >&5 +echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6; } if test "${ac_cv_header_stdc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -19757,24 +21019,36 @@ main () } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -19783,9 +21057,10 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_header_stdc=no + ac_cv_header_stdc=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. @@ -19841,6 +21116,7 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <ctype.h> +#include <stdlib.h> #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) @@ -19860,18 +21136,27 @@ main () for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) - exit(2); - exit (0); + return 2; + return 0; } _ACEOF rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -19884,12 +21169,14 @@ sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) ac_cv_header_stdc=no fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi + + fi fi -echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 -echo "${ECHO_T}$ac_cv_header_stdc" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 +echo "${ECHO_T}$ac_cv_header_stdc" >&6; } if test $ac_cv_header_stdc = yes; then cat >>confdefs.h <<\_ACEOF @@ -19898,8 +21185,8 @@ _ACEOF fi -echo "$as_me:$LINENO: checking for sys/wait.h that is POSIX.1 compatible" >&5 -echo $ECHO_N "checking for sys/wait.h that is POSIX.1 compatible... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for sys/wait.h that is POSIX.1 compatible" >&5 +echo $ECHO_N "checking for sys/wait.h that is POSIX.1 compatible... $ECHO_C" >&6; } if test "${ac_cv_header_sys_wait_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -19912,7 +21199,7 @@ cat >>conftest.$ac_ext <<_ACEOF #include <sys/types.h> #include <sys/wait.h> #ifndef WEXITSTATUS -# define WEXITSTATUS(stat_val) ((unsigned)(stat_val) >> 8) +# define WEXITSTATUS(stat_val) ((unsigned int) (stat_val) >> 8) #endif #ifndef WIFEXITED # define WIFEXITED(stat_val) (((stat_val) & 255) == 0) @@ -19929,24 +21216,36 @@ main () } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -19955,12 +21254,13 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_header_sys_wait_h=no + ac_cv_header_sys_wait_h=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_header_sys_wait_h" >&5 -echo "${ECHO_T}$ac_cv_header_sys_wait_h" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_header_sys_wait_h" >&5 +echo "${ECHO_T}$ac_cv_header_sys_wait_h" >&6; } if test $ac_cv_header_sys_wait_h = yes; then cat >>confdefs.h <<\_ACEOF @@ -19979,21 +21279,25 @@ fi -for ac_header in fcntl.h unistd.h getopt.h netinet/tcp.h netinet/in.h sys/param.h sys/types.h sys/time.h sys/sem.h sys/shm.h + + + +for ac_header in fcntl.h unistd.h getopt.h netinet/tcp.h netinet/in.h netdb.h sys/param.h sys/types.h sys/socket.h sys/un.h sys/time.h sys/sem.h sys/shm.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if eval "test \"\${$as_ac_Header+set}\" = set"; then - echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + { echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 +ac_res=`eval echo '${'$as_ac_Header'}'` + { echo "$as_me:$LINENO: result: $ac_res" >&5 +echo "${ECHO_T}$ac_res" >&6; } else # Is the header compilable? -echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking $ac_header usability" >&5 +echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -20004,24 +21308,36 @@ $ac_includes_default #include <$ac_header> _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -20030,15 +21346,16 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_header_compiler=no + ac_header_compiler=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6 + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +echo "${ECHO_T}$ac_header_compiler" >&6; } # Is the header present? -echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking $ac_header presence" >&5 +echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF @@ -20047,8 +21364,13 @@ cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <$ac_header> _ACEOF -if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 - (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 @@ -20072,9 +21394,10 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi + rm -f conftest.err conftest.$ac_ext -echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6 +{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +echo "${ECHO_T}$ac_header_preproc" >&6; } # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in @@ -20098,25 +21421,19 @@ echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\ echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( - cat <<\_ASBOX -## ------------------------------------------ ## -## Report this to the AC_PACKAGE_NAME lists. ## -## ------------------------------------------ ## -_ASBOX - ) | - sed "s/^/$as_me: WARNING: /" >&2 + ;; esac -echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 -if eval "test \"\${$as_ac_Header+set}\" = set"; then +{ echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 else eval "$as_ac_Header=\$ac_header_preproc" fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 +ac_res=`eval echo '${'$as_ac_Header'}'` + { echo "$as_me:$LINENO: result: $ac_res" >&5 +echo "${ECHO_T}$ac_res" >&6; } fi if test `eval echo '${'$as_ac_Header'}'` = yes; then @@ -20129,8 +21446,8 @@ fi done -echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5 -echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5 +echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6; } if test "${ac_cv_c_const+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -20170,6 +21487,7 @@ main () char const *s = 0 ? (char *) 0 : (char const *) 0; *t++ = 0; + if (s) return 0; } { /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */ int x[] = {25, 17}; @@ -20188,7 +21506,9 @@ main () } { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */ const int foo = 10; + if (!foo) return 0; } + return !x[0] && !zero.x; #endif ; @@ -20196,24 +21516,36 @@ main () } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -20222,12 +21554,13 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_c_const=no + ac_cv_c_const=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5 -echo "${ECHO_T}$ac_cv_c_const" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5 +echo "${ECHO_T}$ac_cv_c_const" >&6; } if test $ac_cv_c_const = no; then cat >>confdefs.h <<\_ACEOF @@ -20236,8 +21569,8 @@ _ACEOF fi -echo "$as_me:$LINENO: checking for pid_t" >&5 -echo $ECHO_N "checking for pid_t... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for pid_t" >&5 +echo $ECHO_N "checking for pid_t... $ECHO_C" >&6; } if test "${ac_cv_type_pid_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -20248,36 +21581,49 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default +typedef pid_t ac__type_new_; int main () { -if ((pid_t *) 0) +if ((ac__type_new_ *) 0) return 0; -if (sizeof (pid_t)) +if (sizeof (ac__type_new_)) return 0; ; return 0; } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -20286,12 +21632,13 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_type_pid_t=no + ac_cv_type_pid_t=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_type_pid_t" >&5 -echo "${ECHO_T}$ac_cv_type_pid_t" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_type_pid_t" >&5 +echo "${ECHO_T}$ac_cv_type_pid_t" >&6; } if test $ac_cv_type_pid_t = yes; then : else @@ -20302,8 +21649,8 @@ _ACEOF fi -echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5 -echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5 +echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6; } if test "${ac_cv_header_time+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -20327,24 +21674,36 @@ return 0; } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -20353,12 +21712,13 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_header_time=no + ac_cv_header_time=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5 -echo "${ECHO_T}$ac_cv_header_time" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5 +echo "${ECHO_T}$ac_cv_header_time" >&6; } if test $ac_cv_header_time = yes; then cat >>confdefs.h <<\_ACEOF @@ -20367,9 +21727,34 @@ _ACEOF fi -echo "$as_me:$LINENO: checking for union semun" >&5 -echo $ECHO_N "checking for union semun... $ECHO_C" >&6 -if test "${ac_cv_type_union_semun+set}" = set; then + +# $PostgreSQL: pgsql/config/ac_func_accept_argtypes.m4,v 1.6 2003/11/29 19:51:17 pgsql Exp $ +# This comes from the official Autoconf macro archive at +# <http://research.cys.de/autoconf-archive/> +# (I removed the $ before the Id CVS keyword below.) + + + +# PostgreSQL local changes: In the original version ACCEPT_TYPE_ARG3 +# is a pointer type. That's kind of useless because then you can't +# use the macro to define a corresponding variable. We also make the +# reasonable(?) assumption that you can use arg3 for getsocktype etc. +# as well (i.e., anywhere POSIX.2 has socklen_t). +# +# arg2 can also be `const' (e.g., RH 4.2). Change the order of tests +# for arg3 so that `int' is first, in case there is no prototype at all. +# +# Solaris 7 and 8 have arg3 as 'void *' (disguised as 'Psocklen_t' +# which is *not* 'socklen_t *'). If we detect that, then we assume +# 'int' as the result, because that ought to work best. +# +# On Win32, accept() returns 'unsigned int PASCAL' + + + +{ echo "$as_me:$LINENO: checking for struct sockaddr_storage" >&5 +echo $ECHO_N "checking for struct sockaddr_storage... $ECHO_C" >&6; } +if test "${ac_cv_type_struct_sockaddr_storage+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -20379,66 +21764,81 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <sys/types.h> -#include <sys/ipc.h> -#include <sys/sem.h> +#ifdef HAVE_SYS_SOCKET_H +#include <sys/socket.h> +#endif + +typedef struct sockaddr_storage ac__type_new_; int main () { -if ((union semun *) 0) +if ((ac__type_new_ *) 0) return 0; -if (sizeof (union semun)) +if (sizeof (ac__type_new_)) return 0; ; return 0; } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_type_union_semun=yes + ac_cv_type_struct_sockaddr_storage=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_type_union_semun=no + ac_cv_type_struct_sockaddr_storage=no fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: $ac_cv_type_union_semun" >&5 -echo "${ECHO_T}$ac_cv_type_union_semun" >&6 -if test $ac_cv_type_union_semun = yes; then +{ echo "$as_me:$LINENO: result: $ac_cv_type_struct_sockaddr_storage" >&5 +echo "${ECHO_T}$ac_cv_type_struct_sockaddr_storage" >&6; } +if test $ac_cv_type_struct_sockaddr_storage = yes; then cat >>confdefs.h <<_ACEOF -#define HAVE_UNION_SEMUN 1 +#define HAVE_STRUCT_SOCKADDR_STORAGE 1 _ACEOF fi - -echo "$as_me:$LINENO: checking return type of signal handlers" >&5 -echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6 -if test "${ac_cv_type_signal+set}" = set; then +{ echo "$as_me:$LINENO: checking for struct sockaddr_storage.ss_family" >&5 +echo $ECHO_N "checking for struct sockaddr_storage.ss_family... $ECHO_C" >&6; } +if test "${ac_cv_member_struct_sockaddr_storage_ss_family+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -20448,165 +21848,142 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <sys/types.h> -#include <signal.h> -#ifdef signal -# undef signal -#endif -#ifdef __cplusplus -extern "C" void (*signal (int, void (*)(int)))(int); -#else -void (*signal ()) (); +#ifdef HAVE_SYS_SOCKET_H +#include <sys/socket.h> #endif + int main () { -int i; +static struct sockaddr_storage ac_aggr; +if (ac_aggr.ss_family) +return 0; ; return 0; } _ACEOF rm -f conftest.$ac_objext -if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>conftest.er1 +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_type_signal=void + ac_cv_member_struct_sockaddr_storage_ss_family=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_type_signal=int -fi -rm -f conftest.err conftest.$ac_objext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_type_signal" >&5 -echo "${ECHO_T}$ac_cv_type_signal" >&6 - -cat >>confdefs.h <<_ACEOF -#define RETSIGTYPE $ac_cv_type_signal -_ACEOF - - - -for ac_func in vprintf -do -as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_func" >&5 -echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 -if eval "test \"\${$as_ac_var+set}\" = set"; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func. - For example, HP-UX 11i <limits.h> declares gettimeofday. */ -#define $ac_func innocuous_$ac_func - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer <limits.h> to <assert.h> if __STDC__ is defined, since - <limits.h> exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include <limits.h> -#else -# include <assert.h> +#include <sys/types.h> +#ifdef HAVE_SYS_SOCKET_H +#include <sys/socket.h> #endif -#undef $ac_func - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_$ac_func) || defined (__stub___$ac_func) -choke me -#else -char (*f) () = $ac_func; -#endif -#ifdef __cplusplus -} -#endif int main () { -return f != $ac_func; +static struct sockaddr_storage ac_aggr; +if (sizeof ac_aggr.ss_family) +return 0; ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -s conftest.$ac_objext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - eval "$as_ac_var=yes" + ac_cv_member_struct_sockaddr_storage_ss_family=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -eval "$as_ac_var=no" + ac_cv_member_struct_sockaddr_storage_ss_family=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 -if test `eval echo '${'$as_ac_var'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_sockaddr_storage_ss_family" >&5 +echo "${ECHO_T}$ac_cv_member_struct_sockaddr_storage_ss_family" >&6; } +if test $ac_cv_member_struct_sockaddr_storage_ss_family = yes; then + +cat >>confdefs.h <<_ACEOF +#define HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY 1 _ACEOF -echo "$as_me:$LINENO: checking for _doprnt" >&5 -echo $ECHO_N "checking for _doprnt... $ECHO_C" >&6 -if test "${ac_cv_func__doprnt+set}" = set; then + +fi +{ echo "$as_me:$LINENO: checking for struct sockaddr_storage.__ss_family" >&5 +echo $ECHO_N "checking for struct sockaddr_storage.__ss_family... $ECHO_C" >&6; } +if test "${ac_cv_member_struct_sockaddr_storage___ss_family+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -20615,104 +21992,144 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Define _doprnt to an innocuous variant, in case <limits.h> declares _doprnt. - For example, HP-UX 11i <limits.h> declares gettimeofday. */ -#define _doprnt innocuous__doprnt - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char _doprnt (); below. - Prefer <limits.h> to <assert.h> if __STDC__ is defined, since - <limits.h> exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include <limits.h> -#else -# include <assert.h> +#include <sys/types.h> +#ifdef HAVE_SYS_SOCKET_H +#include <sys/socket.h> #endif -#undef _doprnt - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -{ -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char _doprnt (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub__doprnt) || defined (__stub____doprnt) -choke me -#else -char (*f) () = _doprnt; -#endif -#ifdef __cplusplus -} -#endif int main () { -return f != _doprnt; +static struct sockaddr_storage ac_aggr; +if (ac_aggr.__ss_family) +return 0; ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -s conftest.$ac_objext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_func__doprnt=yes + ac_cv_member_struct_sockaddr_storage___ss_family=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_func__doprnt=no -fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -echo "$as_me:$LINENO: result: $ac_cv_func__doprnt" >&5 -echo "${ECHO_T}$ac_cv_func__doprnt" >&6 -if test $ac_cv_func__doprnt = yes; then + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <sys/types.h> +#ifdef HAVE_SYS_SOCKET_H +#include <sys/socket.h> +#endif -cat >>confdefs.h <<\_ACEOF -#define HAVE_DOPRNT 1 + +int +main () +{ +static struct sockaddr_storage ac_aggr; +if (sizeof ac_aggr.__ss_family) +return 0; + ; + return 0; +} _ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_member_struct_sockaddr_storage___ss_family=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + ac_cv_member_struct_sockaddr_storage___ss_family=no fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -done +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_sockaddr_storage___ss_family" >&5 +echo "${ECHO_T}$ac_cv_member_struct_sockaddr_storage___ss_family" >&6; } +if test $ac_cv_member_struct_sockaddr_storage___ss_family = yes; then -echo "$as_me:$LINENO: checking for wait3 that fills in rusage" >&5 -echo $ECHO_N "checking for wait3 that fills in rusage... $ECHO_C" >&6 -if test "${ac_cv_func_wait3_rusage+set}" = set; then +cat >>confdefs.h <<_ACEOF +#define HAVE_STRUCT_SOCKADDR_STORAGE___SS_FAMILY 1 +_ACEOF + + +fi +{ echo "$as_me:$LINENO: checking for struct sockaddr_storage.ss_len" >&5 +echo $ECHO_N "checking for struct sockaddr_storage.ss_len... $ECHO_C" >&6; } +if test "${ac_cv_member_struct_sockaddr_storage_ss_len+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "$cross_compiling" = yes; then - ac_cv_func_wait3_rusage=no else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ @@ -20721,89 +22138,142 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <sys/types.h> -#include <sys/time.h> -#include <sys/resource.h> -#include <stdio.h> -/* HP-UX has wait3 but does not fill in rusage at all. */ +#ifdef HAVE_SYS_SOCKET_H +#include <sys/socket.h> +#endif + + int main () { - struct rusage r; - int i; - /* Use a field that we can force nonzero -- - voluntary context switches. - For systems like NeXT and OSF/1 that don't set it, - also use the system CPU time. And page faults (I/O) for Linux. */ - r.ru_nvcsw = 0; - r.ru_stime.tv_sec = 0; - r.ru_stime.tv_usec = 0; - r.ru_majflt = r.ru_minflt = 0; - switch (fork ()) - { - case 0: /* Child. */ - sleep(1); /* Give up the CPU. */ - _exit(0); - break; - case -1: /* What can we do? */ - _exit(0); - break; - default: /* Parent. */ - wait3(&i, 0, &r); - /* Avoid "text file busy" from rm on fast HP-UX machines. */ - sleep(2); - exit (r.ru_nvcsw == 0 && r.ru_majflt == 0 && r.ru_minflt == 0 - && r.ru_stime.tv_sec == 0 && r.ru_stime.tv_usec == 0); - } +static struct sockaddr_storage ac_aggr; +if (ac_aggr.ss_len) +return 0; + ; + return 0; } _ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - ac_cv_func_wait3_rusage=yes + ac_cv_member_struct_sockaddr_storage_ss_len=yes else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 + echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -( exit $ac_status ) -ac_cv_func_wait3_rusage=no -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi -fi -echo "$as_me:$LINENO: result: $ac_cv_func_wait3_rusage" >&5 -echo "${ECHO_T}$ac_cv_func_wait3_rusage" >&6 -if test $ac_cv_func_wait3_rusage = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_WAIT3 1 + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ _ACEOF - -fi - - +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <sys/types.h> +#ifdef HAVE_SYS_SOCKET_H +#include <sys/socket.h> +#endif +int +main () +{ +static struct sockaddr_storage ac_aggr; +if (sizeof ac_aggr.ss_len) +return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_member_struct_sockaddr_storage_ss_len=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + ac_cv_member_struct_sockaddr_storage_ss_len=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_sockaddr_storage_ss_len" >&5 +echo "${ECHO_T}$ac_cv_member_struct_sockaddr_storage_ss_len" >&6; } +if test $ac_cv_member_struct_sockaddr_storage_ss_len = yes; then +cat >>confdefs.h <<_ACEOF +#define HAVE_STRUCT_SOCKADDR_STORAGE_SS_LEN 1 +_ACEOF -for ac_func in setsid select socket sigprocmask strdup strerror strftime strtok asprintf -do -as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_func" >&5 -echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 -if eval "test \"\${$as_ac_var+set}\" = set"; then +fi +{ echo "$as_me:$LINENO: checking for struct sockaddr_storage.__ss_len" >&5 +echo $ECHO_N "checking for struct sockaddr_storage.__ss_len... $ECHO_C" >&6; } +if test "${ac_cv_member_struct_sockaddr_storage___ss_len+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -20812,200 +22282,1544 @@ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func. - For example, HP-UX 11i <limits.h> declares gettimeofday. */ -#define $ac_func innocuous_$ac_func - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer <limits.h> to <assert.h> if __STDC__ is defined, since - <limits.h> exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include <limits.h> -#else -# include <assert.h> +#include <sys/types.h> +#ifdef HAVE_SYS_SOCKET_H +#include <sys/socket.h> #endif -#undef $ac_func -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" +int +main () { -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined (__stub_$ac_func) || defined (__stub___$ac_func) -choke me -#else -char (*f) () = $ac_func; -#endif -#ifdef __cplusplus +static struct sockaddr_storage ac_aggr; +if (ac_aggr.__ss_len) +return 0; + ; + return 0; } +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_member_struct_sockaddr_storage___ss_len=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <sys/types.h> +#ifdef HAVE_SYS_SOCKET_H +#include <sys/socket.h> #endif + int main () { -return f != $ac_func; +static struct sockaddr_storage ac_aggr; +if (sizeof ac_aggr.__ss_len) +return 0; ; return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -s conftest.$ac_objext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then - eval "$as_ac_var=yes" + ac_cv_member_struct_sockaddr_storage___ss_len=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -eval "$as_ac_var=no" + ac_cv_member_struct_sockaddr_storage___ss_len=no fi -rm -f conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 -if test `eval echo '${'$as_ac_var'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -done +{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_sockaddr_storage___ss_len" >&5 +echo "${ECHO_T}$ac_cv_member_struct_sockaddr_storage___ss_len" >&6; } +if test $ac_cv_member_struct_sockaddr_storage___ss_len = yes; then + +cat >>confdefs.h <<_ACEOF +#define HAVE_STRUCT_SOCKADDR_STORAGE___SS_LEN 1 +_ACEOF -for ac_prog in pg_config -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -if test "${ac_cv_prog_PGCONFIG+set}" = set; then +fi +{ echo "$as_me:$LINENO: checking for struct sockaddr.sa_len" >&5 +echo $ECHO_N "checking for struct sockaddr.sa_len... $ECHO_C" >&6; } +if test "${ac_cv_member_struct_sockaddr_sa_len+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else - if test -n "$PGCONFIG"; then - ac_cv_prog_PGCONFIG="$PGCONFIG" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <sys/types.h> +#ifdef HAVE_SYS_SOCKET_H +#include <sys/socket.h> +#endif + + +int +main () +{ +static struct sockaddr ac_aggr; +if (ac_aggr.sa_len) +return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_member_struct_sockaddr_sa_len=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <sys/types.h> +#ifdef HAVE_SYS_SOCKET_H +#include <sys/socket.h> +#endif + + +int +main () +{ +static struct sockaddr ac_aggr; +if (sizeof ac_aggr.sa_len) +return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_member_struct_sockaddr_sa_len=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_member_struct_sockaddr_sa_len=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_sockaddr_sa_len" >&5 +echo "${ECHO_T}$ac_cv_member_struct_sockaddr_sa_len" >&6; } +if test $ac_cv_member_struct_sockaddr_sa_len = yes; then + +cat >>confdefs.h <<_ACEOF +#define HAVE_STRUCT_SOCKADDR_SA_LEN 1 +_ACEOF + + +fi + + +{ echo "$as_me:$LINENO: checking for union semun" >&5 +echo $ECHO_N "checking for union semun... $ECHO_C" >&6; } +if test "${ac_cv_type_union_semun+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <sys/types.h> +#include <sys/ipc.h> +#include <sys/sem.h> + +typedef union semun ac__type_new_; +int +main () +{ +if ((ac__type_new_ *) 0) + return 0; +if (sizeof (ac__type_new_)) + return 0; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_type_union_semun=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_union_semun=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ echo "$as_me:$LINENO: result: $ac_cv_type_union_semun" >&5 +echo "${ECHO_T}$ac_cv_type_union_semun" >&6; } +if test $ac_cv_type_union_semun = yes; then + +cat >>confdefs.h <<_ACEOF +#define HAVE_UNION_SEMUN 1 +_ACEOF + + +fi + + +{ echo "$as_me:$LINENO: checking return type of signal handlers" >&5 +echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6; } +if test "${ac_cv_type_signal+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <sys/types.h> +#include <signal.h> + +int +main () +{ +return *(signal (0, 0)) (0) == 1; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_type_signal=int +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_type_signal=void +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ echo "$as_me:$LINENO: result: $ac_cv_type_signal" >&5 +echo "${ECHO_T}$ac_cv_type_signal" >&6; } + +cat >>confdefs.h <<_ACEOF +#define RETSIGTYPE $ac_cv_type_signal +_ACEOF + + + +for ac_func in vprintf +do +as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ echo "$as_me:$LINENO: checking for $ac_func" >&5 +echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func. + For example, HP-UX 11i <limits.h> declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer <limits.h> to <assert.h> if __STDC__ is defined, since + <limits.h> exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include <limits.h> +#else +# include <assert.h> +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + eval "$as_ac_var=yes" +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval echo '${'$as_ac_var'}'` + { echo "$as_me:$LINENO: result: $ac_res" >&5 +echo "${ECHO_T}$ac_res" >&6; } +if test `eval echo '${'$as_ac_var'}'` = yes; then + cat >>confdefs.h <<_ACEOF +#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +{ echo "$as_me:$LINENO: checking for _doprnt" >&5 +echo $ECHO_N "checking for _doprnt... $ECHO_C" >&6; } +if test "${ac_cv_func__doprnt+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define _doprnt to an innocuous variant, in case <limits.h> declares _doprnt. + For example, HP-UX 11i <limits.h> declares gettimeofday. */ +#define _doprnt innocuous__doprnt + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char _doprnt (); below. + Prefer <limits.h> to <assert.h> if __STDC__ is defined, since + <limits.h> exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include <limits.h> +#else +# include <assert.h> +#endif + +#undef _doprnt + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char _doprnt (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub__doprnt || defined __stub____doprnt +choke me +#endif + +int +main () +{ +return _doprnt (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_func__doprnt=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_func__doprnt=no +fi + +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +{ echo "$as_me:$LINENO: result: $ac_cv_func__doprnt" >&5 +echo "${ECHO_T}$ac_cv_func__doprnt" >&6; } +if test $ac_cv_func__doprnt = yes; then + +cat >>confdefs.h <<\_ACEOF +#define HAVE_DOPRNT 1 +_ACEOF + +fi + +fi +done + + +{ echo "$as_me:$LINENO: checking for wait3 that fills in rusage" >&5 +echo $ECHO_N "checking for wait3 that fills in rusage... $ECHO_C" >&6; } +if test "${ac_cv_func_wait3_rusage+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test "$cross_compiling" = yes; then + ac_cv_func_wait3_rusage=no +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +#include <sys/time.h> +#include <sys/resource.h> +/* HP-UX has wait3 but does not fill in rusage at all. */ +int +main () +{ + struct rusage r; + int i; + /* Use a field that we can force nonzero -- + voluntary context switches. + For systems like NeXT and OSF/1 that don't set it, + also use the system CPU time. And page faults (I/O) for Linux. */ + r.ru_nvcsw = 0; + r.ru_stime.tv_sec = 0; + r.ru_stime.tv_usec = 0; + r.ru_majflt = r.ru_minflt = 0; + switch (fork ()) + { + case 0: /* Child. */ + sleep(1); /* Give up the CPU. */ + _exit(0); + break; + case -1: /* What can we do? */ + _exit(0); + break; + default: /* Parent. */ + wait3(&i, 0, &r); + /* Avoid "text file busy" from rm on fast HP-UX machines. */ + sleep(2); + return (r.ru_nvcsw == 0 && r.ru_majflt == 0 && r.ru_minflt == 0 + && r.ru_stime.tv_sec == 0 && r.ru_stime.tv_usec == 0); + } +} +_ACEOF +rm -f conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_func_wait3_rusage=yes +else + echo "$as_me: program exited with status $ac_status" >&5 +echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +ac_cv_func_wait3_rusage=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + + +fi +{ echo "$as_me:$LINENO: result: $ac_cv_func_wait3_rusage" >&5 +echo "${ECHO_T}$ac_cv_func_wait3_rusage" >&6; } +if test $ac_cv_func_wait3_rusage = yes; then + +cat >>confdefs.h <<\_ACEOF +#define HAVE_WAIT3 1 +_ACEOF + +fi + +{ echo "$as_me:$LINENO: checking types of arguments for accept()" >&5 +echo $ECHO_N "checking types of arguments for accept()... $ECHO_C" >&6; } + if test "${ac_cv_func_accept_return+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test "${ac_cv_func_accept_arg1+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test "${ac_cv_func_accept_arg2+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test "${ac_cv_func_accept_arg3+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + for ac_cv_func_accept_return in 'int' 'unsigned int PASCAL'; do + for ac_cv_func_accept_arg1 in 'int' 'unsigned int'; do + for ac_cv_func_accept_arg2 in 'struct sockaddr *' 'const struct sockaddr *' 'void *'; do + for ac_cv_func_accept_arg3 in 'int' 'size_t' 'socklen_t' 'unsigned int' 'void'; do + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#ifdef HAVE_SYS_TYPES_H +#include <sys/types.h> +#endif +#ifdef HAVE_SYS_SOCKET_H +#include <sys/socket.h> +#endif +extern $ac_cv_func_accept_return accept ($ac_cv_func_accept_arg1, $ac_cv_func_accept_arg2, $ac_cv_func_accept_arg3 *); +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_not_found=no; break 4 +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_not_found=yes +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done + done + done + done + if test "$ac_not_found" = yes; then + { { echo "$as_me:$LINENO: error: could not determine argument types" >&5 +echo "$as_me: error: could not determine argument types" >&2;} + { (exit 1); exit 1; }; } + fi + if test "$ac_cv_func_accept_arg3" = "void"; then + ac_cv_func_accept_arg3=int + fi + +fi + +fi + +fi + +fi + { echo "$as_me:$LINENO: result: $ac_cv_func_accept_return, $ac_cv_func_accept_arg1, $ac_cv_func_accept_arg2, $ac_cv_func_accept_arg3 *" >&5 +echo "${ECHO_T}$ac_cv_func_accept_return, $ac_cv_func_accept_arg1, $ac_cv_func_accept_arg2, $ac_cv_func_accept_arg3 *" >&6; } + +cat >>confdefs.h <<_ACEOF +#define ACCEPT_TYPE_RETURN $ac_cv_func_accept_return +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define ACCEPT_TYPE_ARG1 $ac_cv_func_accept_arg1 +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define ACCEPT_TYPE_ARG2 $ac_cv_func_accept_arg2 +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define ACCEPT_TYPE_ARG3 $ac_cv_func_accept_arg3 +_ACEOF + + + + + + + + + + + + + +for ac_func in setsid select socket sigprocmask strdup strerror strftime strtok asprintf gai_strerror hstrerror +do +as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` +{ echo "$as_me:$LINENO: checking for $ac_func" >&5 +echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func. + For example, HP-UX 11i <limits.h> declares gettimeofday. */ +#define $ac_func innocuous_$ac_func + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $ac_func (); below. + Prefer <limits.h> to <assert.h> if __STDC__ is defined, since + <limits.h> exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include <limits.h> +#else +# include <assert.h> +#endif + +#undef $ac_func + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $ac_func (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$ac_func || defined __stub___$ac_func +choke me +#endif + +int +main () +{ +return $ac_func (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + eval "$as_ac_var=yes" +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval "$as_ac_var=no" +fi + +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +ac_res=`eval echo '${'$as_ac_var'}'` + { echo "$as_me:$LINENO: result: $ac_res" >&5 +echo "${ECHO_T}$ac_res" >&6; } +if test `eval echo '${'$as_ac_var'}'` = yes; then + cat >>confdefs.h <<_ACEOF +#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +fi +done + + +for ac_prog in pg_config +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } +if test "${ac_cv_prog_PGCONFIG+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$PGCONFIG"; then + ac_cv_prog_PGCONFIG="$PGCONFIG" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do - if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_PGCONFIG="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi -done -done - -fi +done +done +IFS=$as_save_IFS + +fi +fi +PGCONFIG=$ac_cv_prog_PGCONFIG +if test -n "$PGCONFIG"; then + { echo "$as_me:$LINENO: result: $PGCONFIG" >&5 +echo "${ECHO_T}$PGCONFIG" >&6; } +else + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } +fi + + + test -n "$PGCONFIG" && break +done + + +if test -z $PGCONFIG +then + PGSQL_INCLUDE_DIR=/usr/local/pgsql/include + PGSQL_LIB_DIR=/usr/local/pgsql/lib +else + PGSQL_INCLUDE_DIR=`pg_config --includedir` + PGSQL_LIB_DIR=`pg_config --libdir` +fi + + + +# Check whether --with-pgsql was given. +if test "${with_pgsql+set}" = set; then + withval=$with_pgsql; + case "$withval" in + "" | y | ye | yes | n | no) + { { echo "$as_me:$LINENO: error: *** You must supply an argument to the --with-pgsql option." >&5 +echo "$as_me: error: *** You must supply an argument to the --with-pgsql option." >&2;} + { (exit 1); exit 1; }; } + ;; + esac + PGSQL_INCLUDE_DIR="$withval"/include + PGSQL_LIB_DIR="$withval"/lib + +fi + + + +# Check whether --with-pgsql-includedir was given. +if test "${with_pgsql_includedir+set}" = set; then + withval=$with_pgsql_includedir; + case "$withval" in + "" | y | ye | yes | n | no) + { { echo "$as_me:$LINENO: error: *** You must supply an argument to the --with-pgsql-includedir option." >&5 +echo "$as_me: error: *** You must supply an argument to the --with-pgsql-includedir option." >&2;} + { (exit 1); exit 1; }; } + ;; + esac + PGSQL_INCLUDE_DIR="$withval" + +fi + + + +# Check whether --with-pgsql-libdir was given. +if test "${with_pgsql_libdir+set}" = set; then + withval=$with_pgsql_libdir; + case "$withval" in + "" | y | ye | yes | n | no) + { { echo "$as_me:$LINENO: error: *** You must supply an argument to the --with-pgsql-libdir option." >&5 +echo "$as_me: error: *** You must supply an argument to the --with-pgsql-libdir option." >&2;} + { (exit 1); exit 1; }; } + ;; + esac + PGSQL_LIB_DIR="$withval" + +fi + + + +# Check whether --with-pam was given. +if test "${with_pam+set}" = set; then + withval=$with_pam; +cat >>confdefs.h <<\_ACEOF +#define USE_PAM 1 +_ACEOF + +fi + +if test "$with_pam" = yes ; then + +{ echo "$as_me:$LINENO: checking for pam_start in -lpam" >&5 +echo $ECHO_N "checking for pam_start in -lpam... $ECHO_C" >&6; } +if test "${ac_cv_lib_pam_pam_start+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lpam $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char pam_start (); +int +main () +{ +return pam_start (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest$ac_exeext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_lib_pam_pam_start=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_pam_pam_start=no +fi + +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ echo "$as_me:$LINENO: result: $ac_cv_lib_pam_pam_start" >&5 +echo "${ECHO_T}$ac_cv_lib_pam_pam_start" >&6; } +if test $ac_cv_lib_pam_pam_start = yes; then + cat >>confdefs.h <<_ACEOF +#define HAVE_LIBPAM 1 +_ACEOF + + LIBS="-lpam $LIBS" + +else + { { echo "$as_me:$LINENO: error: library 'pam' is required for PAM" >&5 +echo "$as_me: error: library 'pam' is required for PAM" >&2;} + { (exit 1); exit 1; }; } +fi + + +for ac_header in security/pam_appl.h +do +as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + { echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +fi +ac_res=`eval echo '${'$as_ac_Header'}'` + { echo "$as_me:$LINENO: result: $ac_res" >&5 +echo "${ECHO_T}$ac_res" >&6; } +else + # Is the header compilable? +{ echo "$as_me:$LINENO: checking $ac_header usability" >&5 +echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +#include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_header_compiler=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_compiler=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +echo "${ECHO_T}$ac_header_compiler" >&6; } + +# Is the header present? +{ echo "$as_me:$LINENO: checking $ac_header presence" >&5 +echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <$ac_header> +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null; then + if test -s conftest.err; then + ac_cpp_err=$ac_c_preproc_warn_flag + ac_cpp_err=$ac_cpp_err$ac_c_werror_flag + else + ac_cpp_err= + fi +else + ac_cpp_err=yes +fi +if test -z "$ac_cpp_err"; then + ac_header_preproc=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no +fi + +rm -f conftest.err conftest.$ac_ext +{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +echo "${ECHO_T}$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) + { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} + + ;; +esac +{ echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + eval "$as_ac_Header=\$ac_header_preproc" +fi +ac_res=`eval echo '${'$as_ac_Header'}'` + { echo "$as_me:$LINENO: result: $ac_res" >&5 +echo "${ECHO_T}$ac_res" >&6; } + +fi +if test `eval echo '${'$as_ac_Header'}'` = yes; then + cat >>confdefs.h <<_ACEOF +#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +else + +for ac_header in pam/pam_appl.h +do +as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + { echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +fi +ac_res=`eval echo '${'$as_ac_Header'}'` + { echo "$as_me:$LINENO: result: $ac_res" >&5 +echo "${ECHO_T}$ac_res" >&6; } +else + # Is the header compilable? +{ echo "$as_me:$LINENO: checking $ac_header usability" >&5 +echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +#include <$ac_header> +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_header_compiler=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_compiler=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +echo "${ECHO_T}$ac_header_compiler" >&6; } + +# Is the header present? +{ echo "$as_me:$LINENO: checking $ac_header presence" >&5 +echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; } +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <$ac_header> +_ACEOF +if { (ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null; then + if test -s conftest.err; then + ac_cpp_err=$ac_c_preproc_warn_flag + ac_cpp_err=$ac_cpp_err$ac_c_werror_flag + else + ac_cpp_err= + fi +else + ac_cpp_err=yes fi -PGCONFIG=$ac_cv_prog_PGCONFIG -if test -n "$PGCONFIG"; then - echo "$as_me:$LINENO: result: $PGCONFIG" >&5 -echo "${ECHO_T}$PGCONFIG" >&6 +if test -z "$ac_cpp_err"; then + ac_header_preproc=yes else - echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no fi - test -n "$PGCONFIG" && break -done +rm -f conftest.err conftest.$ac_ext +{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +echo "${ECHO_T}$ac_header_preproc" >&6; } +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in + yes:no: ) + { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 +echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 +echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 +echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 +echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 +echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 +echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 +echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} + { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 +echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} -if test -z $PGCONFIG -then - PGSQL_INCLUDE_DIR=/usr/local/pgsql/include - PGSQL_LIB_DIR=/usr/local/pgsql/lib + ;; +esac +{ echo "$as_me:$LINENO: checking for $ac_header" >&5 +echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } +if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then + echo $ECHO_N "(cached) $ECHO_C" >&6 else - PGSQL_INCLUDE_DIR=`pg_config --includedir` - PGSQL_LIB_DIR=`pg_config --libdir` + eval "$as_ac_Header=\$ac_header_preproc" fi +ac_res=`eval echo '${'$as_ac_Header'}'` + { echo "$as_me:$LINENO: result: $ac_res" >&5 +echo "${ECHO_T}$ac_res" >&6; } +fi +if test `eval echo '${'$as_ac_Header'}'` = yes; then + cat >>confdefs.h <<_ACEOF +#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF - -# Check whether --with-pgsql or --without-pgsql was given. -if test "${with_pgsql+set}" = set; then - withval="$with_pgsql" - - case "$withval" in - "" | y | ye | yes | n | no) - { { echo "$as_me:$LINENO: error: *** You must supply an argument to the --with-pgsql option." >&5 -echo "$as_me: error: *** You must supply an argument to the --with-pgsql option." >&2;} - { (exit 1); exit 1; }; } - ;; - esac - PGSQL_INCLUDE_DIR="$withval"/include - PGSQL_LIB_DIR="$withval"/lib - -fi; - - -# Check whether --with-pgsql-includedir or --without-pgsql-includedir was given. -if test "${with_pgsql_includedir+set}" = set; then - withval="$with_pgsql_includedir" - - case "$withval" in - "" | y | ye | yes | n | no) - { { echo "$as_me:$LINENO: error: *** You must supply an argument to the --with-pgsql-includedir option." >&5 -echo "$as_me: error: *** You must supply an argument to the --with-pgsql-includedir option." >&2;} +else + { { echo "$as_me:$LINENO: error: header file <security/pam_appl.h> or <pam/pam_appl.h> is required for PAM." >&5 +echo "$as_me: error: header file <security/pam_appl.h> or <pam/pam_appl.h> is required for PAM." >&2;} { (exit 1); exit 1; }; } - ;; - esac - PGSQL_INCLUDE_DIR="$withval" - -fi; +fi +done -# Check whether --with-pgsql-libdir or --without-pgsql-libdir was given. -if test "${with_pgsql_libdir+set}" = set; then - withval="$with_pgsql_libdir" +fi - case "$withval" in - "" | y | ye | yes | n | no) - { { echo "$as_me:$LINENO: error: *** You must supply an argument to the --with-pgsql-libdir option." >&5 -echo "$as_me: error: *** You must supply an argument to the --with-pgsql-libdir option." >&2;} - { (exit 1); exit 1; }; } - ;; - esac - PGSQL_LIB_DIR="$withval" +done -fi; +fi OLD_LDFLAGS="$LDFLAGS" LDFLAGS="-L$PGSQL_LIB_DIR" OLD_LIBS="$LIBS" -echo "$as_me:$LINENO: checking for PQexecPrepared in -lpq" >&5 -echo $ECHO_N "checking for PQexecPrepared in -lpq... $ECHO_C" >&6 +{ echo "$as_me:$LINENO: checking for PQexecPrepared in -lpq" >&5 +echo $ECHO_N "checking for PQexecPrepared in -lpq... $ECHO_C" >&6; } if test "${ac_cv_lib_pq_PQexecPrepared+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else @@ -21018,40 +23832,52 @@ cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char PQexecPrepared (); int main () { -PQexecPrepared (); +return PQexecPrepared (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -21060,14 +23886,15 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -ac_cv_lib_pq_PQexecPrepared=no + ac_cv_lib_pq_PQexecPrepared=no fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -echo "$as_me:$LINENO: result: $ac_cv_lib_pq_PQexecPrepared" >&5 -echo "${ECHO_T}$ac_cv_lib_pq_PQexecPrepared" >&6 +{ echo "$as_me:$LINENO: result: $ac_cv_lib_pq_PQexecPrepared" >&5 +echo "${ECHO_T}$ac_cv_lib_pq_PQexecPrepared" >&6; } if test $ac_cv_lib_pq_PQexecPrepared = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBPQ 1 @@ -21085,9 +23912,9 @@ fi for ac_func in PQprepare do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` -echo "$as_me:$LINENO: checking for $ac_func" >&5 -echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 -if eval "test \"\${$as_ac_var+set}\" = set"; then +{ echo "$as_me:$LINENO: checking for $ac_func" >&5 +echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; } +if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF @@ -21113,53 +23940,59 @@ cat >>conftest.$ac_ext <<_ACEOF #undef $ac_func -/* Override any gcc2 internal prototype to avoid an error. */ +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ #ifdef __cplusplus extern "C" -{ #endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ -#if defined (__stub_$ac_func) || defined (__stub___$ac_func) +#if defined __stub_$ac_func || defined __stub___$ac_func choke me -#else -char (*f) () = $ac_func; -#endif -#ifdef __cplusplus -} #endif int main () { -return f != $ac_func; +return $ac_func (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>conftest.er1 +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_link") 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -z "$ac_c_werror_flag" - || test ! -s conftest.err' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 + { (case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 + (eval "$ac_try") 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then @@ -21168,13 +24001,15 @@ else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -eval "$as_ac_var=no" + eval "$as_ac_var=no" fi -rm -f conftest.err conftest.$ac_objext \ + +rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi -echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 -echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 +ac_res=`eval echo '${'$as_ac_var'}'` + { echo "$as_me:$LINENO: result: $ac_res" >&5 +echo "${ECHO_T}$ac_res" >&6; } if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 @@ -21190,17 +24025,17 @@ LIBS="$OLD_LIBS" # --enable(disable)-rpath option -# Check whether --enable-rpath or --disable-rpath was given. +# Check whether --enable-rpath was given. if test "${enable_rpath+set}" = set; then - enableval="$enable_rpath" - case "${enableval}" in + enableval=$enable_rpath; case "${enableval}" in yes) rpath=yes ;; no) rpath=no ;; esac else rpath=yes -fi; +fi + if test x$rpath = xyes; then @@ -21212,10 +24047,11 @@ else fi - ac_config_headers="$ac_config_headers config.h" +ac_config_headers="$ac_config_headers config.h" - ac_config_files="$ac_config_files Makefile parser/Makefile pcp/Makefile" +ac_config_files="$ac_config_files Makefile parser/Makefile pcp/Makefile" + cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure @@ -21234,39 +24070,58 @@ _ACEOF # The following way of writing the cache mishandles newlines in values, # but we know of no workaround that is simple, portable, and efficient. -# So, don't put newlines in cache variables' values. +# So, we kill variables containing newlines. # Ultrix sh set writes to stderr and can't be redirected directly, # and sets the high bit in the cache file unless we assign to the vars. -{ +( + for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5 +echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + *) $as_unset $ac_var ;; + esac ;; + esac + done + (set) 2>&1 | - case `(ac_space=' '; set | grep ac_space) 2>&1` in - *ac_space=\ *) + case $as_nl`(ac_space=' '; set) 2>&1` in #( + *${as_nl}ac_space=\ *) # `set' does not quote correctly, so add quotes (double-quote # substitution turns \\\\ into \\, and sed turns \\ into \). sed -n \ "s/'/'\\\\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; + ;; #( *) # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" ;; - esac; -} | + esac | + sort +) | sed ' + /^ac_cv_env_/b end t clear - : clear + :clear s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ t end - /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - : end' >>confcache -if diff $cache_file confcache >/dev/null 2>&1; then :; else - if test -w $cache_file; then - test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" + s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ + :end' >>confcache +if diff "$cache_file" confcache >/dev/null 2>&1; then :; else + if test -w "$cache_file"; then + test "x$cache_file" != "x/dev/null" && + { echo "$as_me:$LINENO: updating cache $cache_file" >&5 +echo "$as_me: updating cache $cache_file" >&6;} cat confcache >$cache_file else - echo "not updating unwritable cache $cache_file" + { echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5 +echo "$as_me: not updating unwritable cache $cache_file" >&6;} fi fi rm -f confcache @@ -21275,32 +24130,18 @@ test "x$prefix" = xNONE && prefix=$ac_default_prefix # Let make expand exec_prefix. test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' -# VPATH may cause trouble with some makes, so we remove $(srcdir), -# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and -# trailing colons and then remove the whole line if VPATH becomes empty -# (actually we leave an empty line to preserve line numbers). -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/; -s/:*\${srcdir}:*/:/; -s/:*@srcdir@:*/:/; -s/^\([^=]*=[ ]*\):*/\1/; -s/:*$//; -s/^[^=]*=[ ]*$//; -}' -fi - DEFS=-DHAVE_CONFIG_H ac_libobjs= ac_ltlibobjs= for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue # 1. Remove the extension, and $U if already installed. - ac_i=`echo "$ac_i" | - sed 's/\$U\././;s/\.o$//;s/\.obj$//'` - # 2. Add them. - ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" - ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' + ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' + ac_i=`echo "$ac_i" | sed "$ac_script"` + # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR + # will be set to the directory where LIBOBJS objects are built. + ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext" + ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo' done LIBOBJS=$ac_libobjs @@ -21366,11 +24207,35 @@ if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' -elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then - set -o posix + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac fi +BIN_SH=xpg4; export BIN_SH # for Tru64 DUALCASE=1; export DUALCASE # for MKS sh + +# PATH needs CR +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh +fi + # Support unset when possible. if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then as_unset=unset @@ -21379,8 +24244,43 @@ else fi +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +as_nl=' +' +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +case $0 in + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break +done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + { (exit 1); exit 1; } +fi + # Work around bugs in pre-3.0 UWIN ksh. -$as_unset ENV MAIL MAILPATH +for as_var in ENV MAIL MAILPATH +do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +done PS1='$ ' PS2='> ' PS4='+ ' @@ -21394,18 +24294,19 @@ do if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then eval $as_var=C; export $as_var else - $as_unset $as_var + ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var fi done # Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1; then +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi -if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then as_basename=basename else as_basename=false @@ -21413,159 +24314,120 @@ fi # Name of the executable. -as_me=`$as_basename "$0" || +as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)$' \| \ - . : '\(.\)' 2>/dev/null || + X"$0" : 'X\(/\)' \| . 2>/dev/null || echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } - /^X\/\(\/\/\)$/{ s//\1/; q; } - /^X\/\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - - -# PATH needs CR, and LINENO needs CR and PATH. -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi +# CDPATH. +$as_unset CDPATH - as_lineno_1=$LINENO - as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" || { - # Find who we are. Look in the path if we contain no path at all - # relative or not. - case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done - ;; - esac - # We did not find ourselves, most probably we were run as `sh COMMAND' - # in which case we are not to be found in the path. - if test "x$as_myself" = x; then - as_myself=$0 - fi - if test ! -f "$as_myself"; then - { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 -echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} - { (exit 1); exit 1; }; } - fi - case $CONFIG_SHELL in - '') - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for as_base in sh bash ksh sh5; do - case $as_dir in - /*) - if ("$as_dir/$as_base" -c ' as_lineno_1=$LINENO as_lineno_2=$LINENO - as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && - test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then - $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } - $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } - CONFIG_SHELL=$as_dir/$as_base - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$0" ${1+"$@"} - fi;; - esac - done -done -;; - esac + test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { # Create $as_me.lineno as a copy of $as_myself, but with $LINENO # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line before each line; the second 'sed' does the real - # work. The second script uses 'N' to pair each line-number line - # with the numbered line, and appends trailing '-' during - # substitution so that $LINENO is not a special case at line end. + # line-number line after each line using $LINENO; the second 'sed' + # does the real work. The second script uses 'N' to pair each + # line-number line with the line containing $LINENO, and appends + # trailing '-' during substitution so that $LINENO is not a special + # case at line end. # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) - sed '=' <$as_myself | + # scripts with optimization help from Paolo Bonzini. Blame Lee + # E. McMahon (1931-1989) for sed's syntax. :-) + sed -n ' + p + /[$]LINENO/= + ' <$as_myself | sed ' + s/[$]LINENO.*/&-/ + t lineno + b + :lineno N - s,$,-, - : loop - s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, + :loop + s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ t loop - s,-$,, - s,^['$as_cr_digits']*\n,, + s/-\n.*// ' >$as_me.lineno && - chmod +x $as_me.lineno || - { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 -echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} + chmod +x "$as_me.lineno" || + { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 { (exit 1); exit 1; }; } # 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 sensible to this). - . ./$as_me.lineno + # original and so on. Autoconf is especially sensitive to this). + . "./$as_me.lineno" # Exit status is that of the last command. exit } -case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in - *c*,-n*) ECHO_N= ECHO_C=' -' ECHO_T=' ' ;; - *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; - *) ECHO_N= ECHO_C='\c' ECHO_T= ;; +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in +-n*) + case `echo 'x\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + *) ECHO_C='\c';; + esac;; +*) + ECHO_N='-n';; esac -if expr a : '\(a\)' >/dev/null 2>&1; then +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr else as_expr=false fi rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir +fi echo >conf$$.file if ln -s conf$$.file conf$$ 2>/dev/null; then - # We could just check for DJGPP; but this test a) works b) is more generic - # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). - if test -f conf$$.exe; then - # Don't use ln at all; we don't have any links + as_ln_s='ln -s' + # ... 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'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || as_ln_s='cp -p' - else - as_ln_s='ln -s' - fi elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' fi -rm -f conf$$ conf$$.exe conf$$.file +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null if mkdir -p . 2>/dev/null; then as_mkdir_p=: @@ -21574,7 +24436,19 @@ else as_mkdir_p=false fi -as_executable_p="test -f" +# Find out whether ``test -x'' works. Don't use a zero-byte file, as +# systems may use methods other than mode bits to determine executability. +cat >conf$$.file <<_ASEOF +#! /bin/sh +exit 0 +_ASEOF +chmod +x conf$$.file +if test -x conf$$.file >/dev/null 2>&1; then + as_executable_p="test -x" +else + as_executable_p=: +fi +rm -f conf$$.file # 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'" @@ -21582,32 +24456,15 @@ as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - -# IFS -# We need space, tab and new line, in precisely that order. -as_nl=' -' -IFS=" $as_nl" - -# CDPATH. -$as_unset CDPATH - -exec 6>&1 - -# Open the log real soon, to keep \$[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. Logging --version etc. is OK. -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX -} >&5 -cat >&5 <<_CSEOF - + +exec 6>&1 + +# Save the log message, to keep $[0] and so on meaningful, and to +# report actual input values of CONFIG_FILES etc. instead of their +# values after options handling. +ac_log=" This file was extended by $as_me, which was -generated by GNU Autoconf 2.59. Invocation command line was +generated by GNU Autoconf 2.60. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS @@ -21615,30 +24472,20 @@ generated by GNU Autoconf 2.59. Invocation command line was CONFIG_COMMANDS = $CONFIG_COMMANDS $ $0 $@ -_CSEOF -echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 -echo >&5 +on `(hostname || uname -n) 2>/dev/null | sed 1q` +" + _ACEOF +cat >>$CONFIG_STATUS <<_ACEOF # Files that config.status was made for. -if test -n "$ac_config_files"; then - echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_headers"; then - echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_links"; then - echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS -fi +config_files="$ac_config_files" +config_headers="$ac_config_headers" +config_commands="$ac_config_commands" -if test -n "$ac_config_commands"; then - echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS -fi +_ACEOF cat >>$CONFIG_STATUS <<\_ACEOF - ac_cs_usage="\ \`$as_me' instantiates files from templates according to the current configuration. @@ -21665,19 +24512,21 @@ Configuration commands: $config_commands Report bugs to <bug-autoconf@gnu.org>." -_ACEOF +_ACEOF cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ config.status -configured by $0, generated by GNU Autoconf 2.59, - with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" +configured by $0, generated by GNU Autoconf 2.60, + with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" -Copyright (C) 2003 Free Software Foundation, Inc. +Copyright (C) 2006 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." -srcdir=$srcdir -INSTALL="$INSTALL" + +ac_pwd='$ac_pwd' +srcdir='$srcdir' +INSTALL='$INSTALL' _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF @@ -21688,39 +24537,24 @@ while test $# != 0 do case $1 in --*=*) - ac_option=`expr "x$1" : 'x\([^=]*\)='` - ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` ac_shift=: ;; - -*) + *) ac_option=$1 ac_optarg=$2 ac_shift=shift ;; - *) # This is not an option, so the user has probably given explicit - # arguments. - ac_option=$1 - ac_need_defaults=false;; esac case $ac_option in # Handling of the options. -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) ac_cs_recheck=: ;; - --version | --vers* | -V ) - echo "$ac_cs_version"; exit 0 ;; - --he | --h) - # Conflict between --help and --header - { { echo "$as_me:$LINENO: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2;} - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit 0 ;; - --debug | --d* | -d ) + --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) + echo "$ac_cs_version"; exit ;; + --debug | --debu | --deb | --de | --d | -d ) debug=: ;; --file | --fil | --fi | --f ) $ac_shift @@ -21730,18 +24564,24 @@ Try \`$0 --help' for more information." >&2;} $ac_shift CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" ac_need_defaults=false;; + --he | --h) + # Conflict between --help and --header + { echo "$as_me: error: ambiguous option: $1 +Try \`$0 --help' for more information." >&2 + { (exit 1); exit 1; }; };; + --help | --hel | -h ) + echo "$ac_cs_usage"; exit ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil | --si | --s) ac_cs_silent=: ;; # This is an error. - -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&5 -echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2;} + -*) { echo "$as_me: error: unrecognized option: $1 +Try \`$0 --help' for more information." >&2 { (exit 1); exit 1; }; } ;; - *) ac_config_targets="$ac_config_targets $1" ;; + *) ac_config_targets="$ac_config_targets $1" + ac_need_defaults=false ;; esac shift @@ -21757,39 +24597,51 @@ fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF if \$ac_cs_recheck; then - echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 - exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion + echo "running CONFIG_SHELL=$SHELL $SHELL $0 "$ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 + CONFIG_SHELL=$SHELL + export CONFIG_SHELL + exec $SHELL "$0"$ac_configure_args \$ac_configure_extra_args --no-create --no-recursion fi _ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF +exec 5>>config.log +{ + echo + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX +## Running $as_me. ## +_ASBOX + echo "$ac_log" +} >&5 +_ACEOF cat >>$CONFIG_STATUS <<_ACEOF # -# INIT-COMMANDS section. +# INIT-COMMANDS # - AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" _ACEOF - - cat >>$CONFIG_STATUS <<\_ACEOF + +# Handling of arguments. for ac_config_target in $ac_config_targets do - case "$ac_config_target" in - # Handling of arguments. - "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; - "parser/Makefile" ) CONFIG_FILES="$CONFIG_FILES parser/Makefile" ;; - "pcp/Makefile" ) CONFIG_FILES="$CONFIG_FILES pcp/Makefile" ;; - "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; - "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; + case $ac_config_target in + "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; + "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; + "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; + "parser/Makefile") CONFIG_FILES="$CONFIG_FILES parser/Makefile" ;; + "pcp/Makefile") CONFIG_FILES="$CONFIG_FILES pcp/Makefile" ;; + *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 echo "$as_me: error: invalid argument: $ac_config_target" >&2;} { (exit 1); exit 1; }; };; esac done + # If the user did not use the arguments to specify the items to instantiate, # then the envvar interface is used. Set only those that are not. # We use the long form for the default assignment because of an extremely @@ -21801,360 +24653,467 @@ if $ac_need_defaults; then fi # Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason to put it here, and in addition, +# simply because there is no reason against having it here, and in addition, # creating and moving files from /tmp can sometimes cause problems. -# Create a temporary directory, and hook for its removal unless debugging. +# Hook for its removal unless debugging. +# Note that there is a small window in which the directory will not be cleaned: +# after its creation but before its name has been assigned to `$tmp'. $debug || { - trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 + tmp= + trap 'exit_status=$? + { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status +' 0 trap '{ (exit 1); exit 1; }' 1 2 13 15 } - # Create a (secure) tmp directory for tmp files. { - tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && + tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" } || { - tmp=./confstat$$-$RANDOM - (umask 077 && mkdir $tmp) + tmp=./conf$$-$RANDOM + (umask 077 && mkdir "$tmp") } || { echo "$me: cannot create a temporary directory in ." >&2 { (exit 1); exit 1; } } -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF - # -# CONFIG_FILES section. +# Set up the sed scripts for CONFIG_FILES section. # # No need to generate the scripts if there are no CONFIG_FILES. # This happens for instance when ./config.status config.h -if test -n "\$CONFIG_FILES"; then - # Protect against being on the right side of a sed subst in config.status. - sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; - s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF -s,@SHELL@,$SHELL,;t t -s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t -s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t -s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t -s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t -s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t -s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t -s,@exec_prefix@,$exec_prefix,;t t -s,@prefix@,$prefix,;t t -s,@program_transform_name@,$program_transform_name,;t t -s,@bindir@,$bindir,;t t -s,@sbindir@,$sbindir,;t t -s,@libexecdir@,$libexecdir,;t t -s,@datadir@,$datadir,;t t -s,@sysconfdir@,$sysconfdir,;t t -s,@sharedstatedir@,$sharedstatedir,;t t -s,@localstatedir@,$localstatedir,;t t -s,@libdir@,$libdir,;t t -s,@includedir@,$includedir,;t t -s,@oldincludedir@,$oldincludedir,;t t -s,@infodir@,$infodir,;t t -s,@mandir@,$mandir,;t t -s,@build_alias@,$build_alias,;t t -s,@host_alias@,$host_alias,;t t -s,@target_alias@,$target_alias,;t t -s,@DEFS@,$DEFS,;t t -s,@ECHO_C@,$ECHO_C,;t t -s,@ECHO_N@,$ECHO_N,;t t -s,@ECHO_T@,$ECHO_T,;t t -s,@LIBS@,$LIBS,;t t -s,@CC@,$CC,;t t -s,@CFLAGS@,$CFLAGS,;t t -s,@LDFLAGS@,$LDFLAGS,;t t -s,@CPPFLAGS@,$CPPFLAGS,;t t -s,@ac_ct_CC@,$ac_ct_CC,;t t -s,@EXEEXT@,$EXEEXT,;t t -s,@OBJEXT@,$OBJEXT,;t t -s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t -s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t -s,@INSTALL_DATA@,$INSTALL_DATA,;t t -s,@CYGPATH_W@,$CYGPATH_W,;t t -s,@PACKAGE@,$PACKAGE,;t t -s,@VERSION@,$VERSION,;t t -s,@ACLOCAL@,$ACLOCAL,;t t -s,@AUTOCONF@,$AUTOCONF,;t t -s,@AUTOMAKE@,$AUTOMAKE,;t t -s,@AUTOHEADER@,$AUTOHEADER,;t t -s,@MAKEINFO@,$MAKEINFO,;t t -s,@install_sh@,$install_sh,;t t -s,@STRIP@,$STRIP,;t t -s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t -s,@INSTALL_STRIP_PROGRAM@,$INSTALL_STRIP_PROGRAM,;t t -s,@mkdir_p@,$mkdir_p,;t t -s,@AWK@,$AWK,;t t -s,@SET_MAKE@,$SET_MAKE,;t t -s,@am__leading_dot@,$am__leading_dot,;t t -s,@AMTAR@,$AMTAR,;t t -s,@am__tar@,$am__tar,;t t -s,@am__untar@,$am__untar,;t t -s,@DEPDIR@,$DEPDIR,;t t -s,@am__include@,$am__include,;t t -s,@am__quote@,$am__quote,;t t -s,@AMDEP_TRUE@,$AMDEP_TRUE,;t t -s,@AMDEP_FALSE@,$AMDEP_FALSE,;t t -s,@AMDEPBACKSLASH@,$AMDEPBACKSLASH,;t t -s,@CCDEPMODE@,$CCDEPMODE,;t t -s,@am__fastdepCC_TRUE@,$am__fastdepCC_TRUE,;t t -s,@am__fastdepCC_FALSE@,$am__fastdepCC_FALSE,;t t -s,@RANLIB@,$RANLIB,;t t -s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t -s,@build@,$build,;t t -s,@build_cpu@,$build_cpu,;t t -s,@build_vendor@,$build_vendor,;t t -s,@build_os@,$build_os,;t t -s,@host@,$host,;t t -s,@host_cpu@,$host_cpu,;t t -s,@host_vendor@,$host_vendor,;t t -s,@host_os@,$host_os,;t t -s,@EGREP@,$EGREP,;t t -s,@LN_S@,$LN_S,;t t -s,@ECHO@,$ECHO,;t t -s,@AR@,$AR,;t t -s,@ac_ct_AR@,$ac_ct_AR,;t t -s,@CPP@,$CPP,;t t -s,@CXX@,$CXX,;t t -s,@CXXFLAGS@,$CXXFLAGS,;t t -s,@ac_ct_CXX@,$ac_ct_CXX,;t t -s,@CXXDEPMODE@,$CXXDEPMODE,;t t -s,@am__fastdepCXX_TRUE@,$am__fastdepCXX_TRUE,;t t -s,@am__fastdepCXX_FALSE@,$am__fastdepCXX_FALSE,;t t -s,@CXXCPP@,$CXXCPP,;t t -s,@F77@,$F77,;t t -s,@FFLAGS@,$FFLAGS,;t t -s,@ac_ct_F77@,$ac_ct_F77,;t t -s,@LIBTOOL@,$LIBTOOL,;t t -s,@LEX@,$LEX,;t t -s,@LEXLIB@,$LEXLIB,;t t -s,@LEX_OUTPUT_ROOT@,$LEX_OUTPUT_ROOT,;t t -s,@YACC@,$YACC,;t t -s,@PGCONFIG@,$PGCONFIG,;t t -s,@PGSQL_INCLUDE_DIR@,$PGSQL_INCLUDE_DIR,;t t -s,@PGSQL_LIB_DIR@,$PGSQL_LIB_DIR,;t t -s,@enable_rpath_TRUE@,$enable_rpath_TRUE,;t t -s,@enable_rpath_FALSE@,$enable_rpath_FALSE,;t t -s,@LIBOBJS@,$LIBOBJS,;t t -s,@LTLIBOBJS@,$LTLIBOBJS,;t t -CEOF - -_ACEOF - - cat >>$CONFIG_STATUS <<\_ACEOF - # Split the substitutions into bite-sized pieces for seds with - # small command number limits, like on Digital OSF/1 and HP-UX. - ac_max_sed_lines=48 - ac_sed_frag=1 # Number of current file. - ac_beg=1 # First line for current file. - ac_end=$ac_max_sed_lines # Line after last line for current file. - ac_more_lines=: - ac_sed_cmds= - while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - else - sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - fi - if test ! -s $tmp/subs.frag; then - ac_more_lines=false - else - # The purpose of the label and of the branching condition is to - # speed up the sed processing (if there are no `@' at all, there - # is no need to browse any of the substitutions). - # These are the two extra sed commands mentioned above. - (echo ':t - /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" - else - ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" - fi - ac_sed_frag=`expr $ac_sed_frag + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_lines` - fi - done - if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat +if test -n "$CONFIG_FILES"; then + +_ACEOF + + + +ac_delim='%!_!# ' +for ac_last_try in false false false false false :; do + cat >conf$$subs.sed <<_ACEOF +SHELL!$SHELL$ac_delim +PATH_SEPARATOR!$PATH_SEPARATOR$ac_delim +PACKAGE_NAME!$PACKAGE_NAME$ac_delim +PACKAGE_TARNAME!$PACKAGE_TARNAME$ac_delim +PACKAGE_VERSION!$PACKAGE_VERSION$ac_delim +PACKAGE_STRING!$PACKAGE_STRING$ac_delim +PACKAGE_BUGREPORT!$PACKAGE_BUGREPORT$ac_delim +exec_prefix!$exec_prefix$ac_delim +prefix!$prefix$ac_delim +program_transform_name!$program_transform_name$ac_delim +bindir!$bindir$ac_delim +sbindir!$sbindir$ac_delim +libexecdir!$libexecdir$ac_delim +datarootdir!$datarootdir$ac_delim +datadir!$datadir$ac_delim +sysconfdir!$sysconfdir$ac_delim +sharedstatedir!$sharedstatedir$ac_delim +localstatedir!$localstatedir$ac_delim +includedir!$includedir$ac_delim +oldincludedir!$oldincludedir$ac_delim +docdir!$docdir$ac_delim +infodir!$infodir$ac_delim +htmldir!$htmldir$ac_delim +dvidir!$dvidir$ac_delim +pdfdir!$pdfdir$ac_delim +psdir!$psdir$ac_delim +libdir!$libdir$ac_delim +localedir!$localedir$ac_delim +mandir!$mandir$ac_delim +DEFS!$DEFS$ac_delim +ECHO_C!$ECHO_C$ac_delim +ECHO_N!$ECHO_N$ac_delim +ECHO_T!$ECHO_T$ac_delim +LIBS!$LIBS$ac_delim +build_alias!$build_alias$ac_delim +host_alias!$host_alias$ac_delim +target_alias!$target_alias$ac_delim +CC!$CC$ac_delim +CFLAGS!$CFLAGS$ac_delim +LDFLAGS!$LDFLAGS$ac_delim +CPPFLAGS!$CPPFLAGS$ac_delim +ac_ct_CC!$ac_ct_CC$ac_delim +EXEEXT!$EXEEXT$ac_delim +OBJEXT!$OBJEXT$ac_delim +INSTALL_PROGRAM!$INSTALL_PROGRAM$ac_delim +INSTALL_SCRIPT!$INSTALL_SCRIPT$ac_delim +INSTALL_DATA!$INSTALL_DATA$ac_delim +CYGPATH_W!$CYGPATH_W$ac_delim +PACKAGE!$PACKAGE$ac_delim +VERSION!$VERSION$ac_delim +ACLOCAL!$ACLOCAL$ac_delim +AUTOCONF!$AUTOCONF$ac_delim +AUTOMAKE!$AUTOMAKE$ac_delim +AUTOHEADER!$AUTOHEADER$ac_delim +MAKEINFO!$MAKEINFO$ac_delim +install_sh!$install_sh$ac_delim +STRIP!$STRIP$ac_delim +INSTALL_STRIP_PROGRAM!$INSTALL_STRIP_PROGRAM$ac_delim +mkdir_p!$mkdir_p$ac_delim +AWK!$AWK$ac_delim +SET_MAKE!$SET_MAKE$ac_delim +am__leading_dot!$am__leading_dot$ac_delim +AMTAR!$AMTAR$ac_delim +am__tar!$am__tar$ac_delim +am__untar!$am__untar$ac_delim +DEPDIR!$DEPDIR$ac_delim +am__include!$am__include$ac_delim +am__quote!$am__quote$ac_delim +AMDEP_TRUE!$AMDEP_TRUE$ac_delim +AMDEP_FALSE!$AMDEP_FALSE$ac_delim +AMDEPBACKSLASH!$AMDEPBACKSLASH$ac_delim +CCDEPMODE!$CCDEPMODE$ac_delim +am__fastdepCC_TRUE!$am__fastdepCC_TRUE$ac_delim +am__fastdepCC_FALSE!$am__fastdepCC_FALSE$ac_delim +RANLIB!$RANLIB$ac_delim +build!$build$ac_delim +build_cpu!$build_cpu$ac_delim +build_vendor!$build_vendor$ac_delim +build_os!$build_os$ac_delim +host!$host$ac_delim +host_cpu!$host_cpu$ac_delim +host_vendor!$host_vendor$ac_delim +host_os!$host_os$ac_delim +GREP!$GREP$ac_delim +EGREP!$EGREP$ac_delim +LN_S!$LN_S$ac_delim +ECHO!$ECHO$ac_delim +AR!$AR$ac_delim +CPP!$CPP$ac_delim +CXX!$CXX$ac_delim +CXXFLAGS!$CXXFLAGS$ac_delim +ac_ct_CXX!$ac_ct_CXX$ac_delim +CXXDEPMODE!$CXXDEPMODE$ac_delim +am__fastdepCXX_TRUE!$am__fastdepCXX_TRUE$ac_delim +am__fastdepCXX_FALSE!$am__fastdepCXX_FALSE$ac_delim +CXXCPP!$CXXCPP$ac_delim +F77!$F77$ac_delim +_ACEOF + + if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then + break + elif $ac_last_try; then + { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 +echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} + { (exit 1); exit 1; }; } + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi -fi # test -n "$CONFIG_FILES" +done + +ac_eof=`sed -n '/^CEOF[0-9]*$/s/CEOF/0/p' conf$$subs.sed` +if test -n "$ac_eof"; then + ac_eof=`echo "$ac_eof" | sort -nru | sed 1q` + ac_eof=`expr $ac_eof + 1` +fi + +cat >>$CONFIG_STATUS <<_ACEOF +cat >"\$tmp/subs-1.sed" <<\CEOF$ac_eof +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b +_ACEOF +sed ' +s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g +s/^/s,@/; s/!/@,|#_!!_#|/ +:n +t n +s/'"$ac_delim"'$/,g/; t +s/$/\\/; p +N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n +' >>$CONFIG_STATUS <conf$$subs.sed +rm -f conf$$subs.sed +cat >>$CONFIG_STATUS <<_ACEOF +CEOF$ac_eof +_ACEOF + + +ac_delim='%!_!# ' +for ac_last_try in false false false false false :; do + cat >conf$$subs.sed <<_ACEOF +FFLAGS!$FFLAGS$ac_delim +ac_ct_F77!$ac_ct_F77$ac_delim +LIBTOOL!$LIBTOOL$ac_delim +LEX!$LEX$ac_delim +LEXLIB!$LEXLIB$ac_delim +LEX_OUTPUT_ROOT!$LEX_OUTPUT_ROOT$ac_delim +YACC!$YACC$ac_delim +YFLAGS!$YFLAGS$ac_delim +PGCONFIG!$PGCONFIG$ac_delim +PGSQL_INCLUDE_DIR!$PGSQL_INCLUDE_DIR$ac_delim +PGSQL_LIB_DIR!$PGSQL_LIB_DIR$ac_delim +enable_rpath_TRUE!$enable_rpath_TRUE$ac_delim +enable_rpath_FALSE!$enable_rpath_FALSE$ac_delim +LIBOBJS!$LIBOBJS$ac_delim +LTLIBOBJS!$LTLIBOBJS$ac_delim +_ACEOF + if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 15; then + break + elif $ac_last_try; then + { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 +echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} + { (exit 1); exit 1; }; } + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " + fi +done + +ac_eof=`sed -n '/^CEOF[0-9]*$/s/CEOF/0/p' conf$$subs.sed` +if test -n "$ac_eof"; then + ac_eof=`echo "$ac_eof" | sort -nru | sed 1q` + ac_eof=`expr $ac_eof + 1` +fi + +cat >>$CONFIG_STATUS <<_ACEOF +cat >"\$tmp/subs-2.sed" <<\CEOF$ac_eof +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end +_ACEOF +sed ' +s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g +s/^/s,@/; s/!/@,|#_!!_#|/ +:n +t n +s/'"$ac_delim"'$/,g/; t +s/$/\\/; p +N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n +' >>$CONFIG_STATUS <conf$$subs.sed +rm -f conf$$subs.sed +cat >>$CONFIG_STATUS <<_ACEOF +:end +s/|#_!!_#|//g +CEOF$ac_eof _ACEOF + + +# VPATH may cause trouble with some makes, so we remove $(srcdir), +# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and +# trailing colons and then remove the whole line if VPATH becomes empty +# (actually we leave an empty line to preserve line numbers). +if test "x$srcdir" = x.; then + ac_vpsub='/^[ ]*VPATH[ ]*=/{ +s/:*\$(srcdir):*/:/ +s/:*\${srcdir}:*/:/ +s/:*@srcdir@:*/:/ +s/^\([^=]*=[ ]*\):*/\1/ +s/:*$// +s/^[^=]*=[ ]*$// +}' +fi + cat >>$CONFIG_STATUS <<\_ACEOF -for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; +fi # test -n "$CONFIG_FILES" + + +for ac_tag in :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS +do + case $ac_tag in + :[FHLC]) ac_mode=$ac_tag; continue;; + esac + case $ac_mode$ac_tag in + :[FHL]*:*);; + :L* | :C*:*) { { echo "$as_me:$LINENO: error: Invalid tag $ac_tag." >&5 +echo "$as_me: error: Invalid tag $ac_tag." >&2;} + { (exit 1); exit 1; }; };; + :[FH]-) ac_tag=-:-;; + :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; + esac + ac_save_IFS=$IFS + IFS=: + set x $ac_tag + IFS=$ac_save_IFS + shift + ac_file=$1 + shift + + case $ac_mode in + :L) ac_source=$1;; + :[FH]) + ac_file_inputs= + for ac_f + do + case $ac_f in + -) ac_f="$tmp/stdin";; + *) # Look for the file first in the build tree, then in the source tree + # (if the path is not absolute). The absolute path cannot be DOS-style, + # because $ac_f cannot contain `:'. + test -f "$ac_f" || + case $ac_f in + [\\/$]*) false;; + *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; + esac || + { { echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 +echo "$as_me: error: cannot find input file: $ac_f" >&2;} + { (exit 1); exit 1; }; };; + esac + ac_file_inputs="$ac_file_inputs $ac_f" + done + + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ + configure_input="Generated from "`IFS=: + echo $* | sed 's|^[^:]*/||;s|:[^:]*/|, |g'`" by configure." + if test x"$ac_file" != x-; then + configure_input="$ac_file. $configure_input" + { echo "$as_me:$LINENO: creating $ac_file" >&5 +echo "$as_me: creating $ac_file" >&6;} + fi + + case $ac_tag in + *:-:* | *:-) cat >"$tmp/stdin";; + esac + ;; esac - # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. - ac_dir=`(dirname "$ac_file") 2>/dev/null || + ac_dir=`$as_dirname -- "$ac_file" || $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || + X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + { as_dir="$ac_dir" + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || + while :; do + case $as_dir in #( + *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 +echo "$as_me: error: cannot create directory $as_dir" >&2;} { (exit 1); exit 1; }; }; } - ac_builddir=. -if test "$ac_dir" != .; then +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix case $srcdir in - .) # No --srcdir option. We are building in place. + .) # We are building in place. ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac + case $ac_mode in + :F) + # + # CONFIG_FILE + # case $INSTALL in [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_builddir$INSTALL ;; + *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; esac +_ACEOF - if test x"$ac_file" != x-; then - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - configure_input= - else - configure_input="$ac_file. " - fi - configure_input=$configure_input"Generated from `echo $ac_file_in | - sed 's,.*/,,'` by configure." - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } +cat >>$CONFIG_STATUS <<\_ACEOF +# If the template does not know about datarootdir, expand it. +# FIXME: This hack should be removed a few years after 2.60. +ac_datarootdir_hack=; ac_datarootdir_seen= + +case `sed -n '/datarootdir/ { + p + q +} +/@datadir@/p +/@docdir@/p +/@infodir@/p +/@localedir@/p +/@mandir@/p +' $ac_file_inputs` in +*datarootdir*) ac_datarootdir_seen=yes;; +*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) + { echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 +echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF + ac_datarootdir_hack=' + s&@datadir@&$datadir&g + s&@docdir@&$docdir&g + s&@infodir@&$infodir&g + s&@localedir@&$localedir&g + s&@mandir@&$mandir&g + s&\\\${datarootdir}&$datarootdir&g' ;; +esac _ACEOF + +# Neutralize VPATH when `$srcdir' = `.'. +# Shell code in configure.ac might set extrasub. +# FIXME: do we really want to maintain this feature? cat >>$CONFIG_STATUS <<_ACEOF sed "$ac_vpsub $extrasub @@ -22162,248 +25121,130 @@ _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF :t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s,@configure_input@,$configure_input,;t t -s,@srcdir@,$ac_srcdir,;t t -s,@abs_srcdir@,$ac_abs_srcdir,;t t -s,@top_srcdir@,$ac_top_srcdir,;t t -s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t -s,@builddir@,$ac_builddir,;t t -s,@abs_builddir@,$ac_abs_builddir,;t t -s,@top_builddir@,$ac_top_builddir,;t t -s,@abs_top_builddir@,$ac_abs_top_builddir,;t t -s,@INSTALL@,$ac_INSTALL,;t t -" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out - rm -f $tmp/stdin - if test x"$ac_file" != x-; then - mv $tmp/out $ac_file - else - cat $tmp/out - rm -f $tmp/out - fi - -done -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -# -# CONFIG_HEADER section. -# - -# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where -# NAME is the cpp macro being defined and VALUE is the value it is being given. -# -# ac_d sets the value in "#define NAME VALUE" lines. -ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' -ac_dB='[ ].*$,\1#\2' -ac_dC=' ' -ac_dD=',;t' -# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". -ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_uB='$,\1#\2define\3' -ac_uC=' ' -ac_uD=',;t' - -for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". +s&@configure_input@&$configure_input&;t t +s&@top_builddir@&$ac_top_builddir_sub&;t t +s&@srcdir@&$ac_srcdir&;t t +s&@abs_srcdir@&$ac_abs_srcdir&;t t +s&@top_srcdir@&$ac_top_srcdir&;t t +s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t +s&@builddir@&$ac_builddir&;t t +s&@abs_builddir@&$ac_abs_builddir&;t t +s&@abs_top_builddir@&$ac_abs_top_builddir&;t t +s&@INSTALL@&$ac_INSTALL&;t t +$ac_datarootdir_hack +" $ac_file_inputs | sed -f "$tmp/subs-1.sed" | sed -f "$tmp/subs-2.sed" >$tmp/out + +test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && + { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && + { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && + { echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined." >&5 +echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined." >&2;} + + rm -f "$tmp/stdin" case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; + -) cat "$tmp/out"; rm -f "$tmp/out";; + *) rm -f "$ac_file"; mv "$tmp/out" $ac_file;; esac + ;; + :H) + # + # CONFIG_HEADER + # +_ACEOF - test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [\\/$]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - # Do quote $f, to prevent DOS paths from being IFS'd. - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 -echo "$as_me: error: cannot find input file: $f" >&2;} - { (exit 1); exit 1; }; } - fi;; - esac - done` || { (exit 1); exit 1; } - # Remove the trailing spaces. - sed 's/[ ]*$//' $ac_file_inputs >$tmp/in - -_ACEOF - -# Transform confdefs.h into two sed scripts, `conftest.defines' and -# `conftest.undefs', that substitutes the proper values into -# config.h.in to produce config.h. The first handles `#define' -# templates, and the second `#undef' templates. -# And first: Protect against being on the right side of a sed subst in -# config.status. Protect against being in an unquoted here document -# in config.status. -rm -f conftest.defines conftest.undefs -# Using a here document instead of a string reduces the quoting nightmare. -# Putting comments in sed scripts is not portable. -# -# `end' is used to avoid that the second main sed command (meant for -# 0-ary CPP macros) applies to n-ary macro definitions. -# See the Autoconf documentation for `clear'. -cat >confdef2sed.sed <<\_ACEOF -s/[\\&,]/\\&/g -s,[\\$`],\\&,g -t clear -: clear -s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp -t end -s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp -: end -_ACEOF -# If some macros were called several times there might be several times -# the same #defines, which is useless. Nevertheless, we may not want to -# sort them, since we want the *last* AC-DEFINE to be honored. -uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines -sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs -rm -f confdef2sed.sed - -# This sed command replaces #undef with comments. This is necessary, for +# Transform confdefs.h into a sed script `conftest.defines', that +# substitutes the proper values into config.h.in to produce config.h. +rm -f conftest.defines conftest.tail +# First, append a space to every undef/define line, to ease matching. +echo 's/$/ /' >conftest.defines +# Then, protect against being on the right side of a sed subst, or in +# an unquoted here document, in config.status. If some macros were +# called several times there might be several #defines for the same +# symbol, which is useless. But do not sort them, since the last +# AC_DEFINE must be honored. +ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* +# These sed commands are passed to sed as "A NAME B PARAMS C VALUE D", where +# NAME is the cpp macro being defined, VALUE is the value it is being given. +# PARAMS is the parameter list in the macro definition--in most cases, it's +# just an empty string. +ac_dA='s,^\\([ #]*\\)[^ ]*\\([ ]*' +ac_dB='\\)[ (].*,\\1define\\2' +ac_dC=' ' +ac_dD=' ,' + +uniq confdefs.h | + sed -n ' + t rset + :rset + s/^[ ]*#[ ]*define[ ][ ]*// + t ok + d + :ok + s/[\\&,]/\\&/g + s/^\('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/ '"$ac_dA"'\1'"$ac_dB"'\2'"${ac_dC}"'\3'"$ac_dD"'/p + s/^\('"$ac_word_re"'\)[ ]*\(.*\)/'"$ac_dA"'\1'"$ac_dB$ac_dC"'\2'"$ac_dD"'/p + ' >>conftest.defines + +# Remove the space that was appended to ease matching. +# Then replace #undef with comments. This is necessary, for # example, in the case of _POSIX_SOURCE, which is predefined and required # on some systems where configure will not decide to define it. -cat >>conftest.undefs <<\_ACEOF -s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */, -_ACEOF - -# Break up conftest.defines because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS -echo ' if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS -echo ' # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS -echo ' :' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.defines >/dev/null +# (The regexp can be short, since the line contains either #define or #undef.) +echo 's/ $// +s,^[ #]*u.*,/* & */,' >>conftest.defines + +# Break up conftest.defines: +ac_max_sed_lines=50 + +# First sed command is: sed -f defines.sed $ac_file_inputs >"$tmp/out1" +# Second one is: sed -f defines.sed "$tmp/out1" >"$tmp/out2" +# Third one will be: sed -f defines.sed "$tmp/out2" >"$tmp/out1" +# et cetera. +ac_in='$ac_file_inputs' +ac_out='"$tmp/out1"' +ac_nxt='"$tmp/out2"' + +while : do - # Write a limited-size here document to $tmp/defines.sed. - echo ' cat >$tmp/defines.sed <<CEOF' >>$CONFIG_STATUS - # Speed up: don't consider the non `#define' lines. - echo '/^[ ]*#[ ]*define/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS + # Write a here document: + cat >>$CONFIG_STATUS <<_ACEOF + # First, check the format of the line: + cat >"\$tmp/defines.sed" <<\\CEOF +/^[ ]*#[ ]*undef[ ][ ]*$ac_word_re[ ]*\$/b def +/^[ ]*#[ ]*define[ ][ ]*$ac_word_re[( ]/b def +b +:def +_ACEOF + sed ${ac_max_sed_lines}q conftest.defines >>$CONFIG_STATUS echo 'CEOF - sed -f $tmp/defines.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail + sed -f "$tmp/defines.sed"' "$ac_in >$ac_out" >>$CONFIG_STATUS + ac_in=$ac_out; ac_out=$ac_nxt; ac_nxt=$ac_in + sed 1,${ac_max_sed_lines}d conftest.defines >conftest.tail + grep . conftest.tail >/dev/null || break rm -f conftest.defines mv conftest.tail conftest.defines done -rm -f conftest.defines -echo ' fi # grep' >>$CONFIG_STATUS -echo >>$CONFIG_STATUS - -# Break up conftest.undefs because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #undef templates' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.undefs >/dev/null -do - # Write a limited-size here document to $tmp/undefs.sed. - echo ' cat >$tmp/undefs.sed <<CEOF' >>$CONFIG_STATUS - # Speed up: don't consider the non `#undef' - echo '/^[ ]*#[ ]*undef/!b' >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS - echo 'CEOF - sed -f $tmp/undefs.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail - rm -f conftest.undefs - mv conftest.tail conftest.undefs -done -rm -f conftest.undefs +rm -f conftest.defines conftest.tail +echo "ac_result=$ac_in" >>$CONFIG_STATUS cat >>$CONFIG_STATUS <<\_ACEOF - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - echo "/* Generated by configure. */" >$tmp/config.h - else - echo "/* $ac_file. Generated by configure. */" >$tmp/config.h - fi - cat $tmp/in >>$tmp/config.h - rm -f $tmp/in if test x"$ac_file" != x-; then - if diff $ac_file $tmp/config.h >/dev/null 2>&1; then + echo "/* $configure_input */" >"$tmp/config.h" + cat "$ac_result" >>"$tmp/config.h" + if diff $ac_file "$tmp/config.h" >/dev/null 2>&1; then { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 echo "$as_me: $ac_file is unchanged" >&6;} else - ac_dir=`(dirname "$ac_file") 2>/dev/null || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - rm -f $ac_file - mv $tmp/config.h $ac_file + mv "$tmp/config.h" $ac_file fi else - cat $tmp/config.h - rm -f $tmp/config.h + echo "/* $configure_input */" + cat "$ac_result" fi + rm -f "$tmp/out12" # Compute $ac_file's index in $config_headers. _am_stamp_count=1 for _am_header in $config_headers :; do @@ -22414,135 +25255,39 @@ for _am_header in $config_headers :; do _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done -echo "timestamp for $ac_file" >`(dirname $ac_file) 2>/dev/null || +echo "timestamp for $ac_file" >`$as_dirname -- $ac_file || $as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X$ac_file : 'X\(//\)[^/]' \| \ X$ac_file : 'X\(//\)$' \| \ - X$ac_file : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || + X$ac_file : 'X\(/\)' \| . 2>/dev/null || echo X$ac_file | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'`/stamp-h$_am_stamp_count -done -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF - -# -# CONFIG_COMMANDS section. -# -for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue - ac_dest=`echo "$ac_file" | sed 's,:.*,,'` - ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'` - ac_dir=`(dirname "$ac_dest") 2>/dev/null || -$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_dest" : 'X\(//\)[^/]' \| \ - X"$ac_dest" : 'X\(//\)$' \| \ - X"$ac_dest" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$ac_dest" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p "$ac_dir" - else - as_dir="$ac_dir" - as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 -echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} - { (exit 1); exit 1; }; }; } - - ac_builddir=. - -if test "$ac_dir" != .; then - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi - -case $srcdir in - .) # No --srcdir option. We are building in place. - ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [\\/]* | ?:[\\/]* ) # Absolute path. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; -esac + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'`/stamp-h$_am_stamp_count + ;; -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -case `pwd` in -.) ac_abs_builddir="$ac_dir";; -*) - case "$ac_dir" in - .) ac_abs_builddir=`pwd`;; - [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; - *) ac_abs_builddir=`pwd`/"$ac_dir";; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_builddir=${ac_top_builddir}.;; -*) - case ${ac_top_builddir}. in - .) ac_abs_top_builddir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; - *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_srcdir=$ac_srcdir;; -*) - case $ac_srcdir in - .) ac_abs_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; - *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; - esac;; -esac -case $ac_abs_builddir in -.) ac_abs_top_srcdir=$ac_top_srcdir;; -*) - case $ac_top_srcdir in - .) ac_abs_top_srcdir=$ac_abs_builddir;; - [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; - *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; - esac;; -esac + :C) { echo "$as_me:$LINENO: executing $ac_file commands" >&5 +echo "$as_me: executing $ac_file commands" >&6;} + ;; + esac - { echo "$as_me:$LINENO: executing $ac_dest commands" >&5 -echo "$as_me: executing $ac_dest commands" >&6;} - case $ac_dest in - depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do + case $ac_file$ac_mode in + "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do # 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. @@ -22552,18 +25297,29 @@ echo "$as_me: executing $ac_dest commands" >&6;} # each Makefile.in and add a new line on top of each file to say so. # So let's grep whole file. if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then - dirpart=`(dirname "$mf") 2>/dev/null || + dirpart=`$as_dirname -- "$mf" || $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$mf" : 'X\(//\)[^/]' \| \ X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || + X"$mf" : 'X\(/\)' \| . 2>/dev/null || echo X"$mf" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` else continue fi @@ -22585,53 +25341,79 @@ echo X"$mf" | sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue - fdir=`(dirname "$file") 2>/dev/null || + fdir=`$as_dirname -- "$file" || $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$file" : 'X\(//\)[^/]' \| \ X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || + X"$file" : 'X\(/\)' \| . 2>/dev/null || echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` - { if $as_mkdir_p; then - mkdir -p $dirpart/$fdir - else - as_dir=$dirpart/$fdir + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + { as_dir=$dirpart/$fdir + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { as_dirs= - while test ! -d "$as_dir"; do - as_dirs="$as_dir $as_dirs" - as_dir=`(dirname "$as_dir") 2>/dev/null || + while :; do + case $as_dir in #( + *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } - /^X\(\/\/\)[^/].*/{ s//\1/; q; } - /^X\(\/\/\)$/{ s//\1/; q; } - /^X\(\/\).*/{ s//\1/; q; } - s/.*/./; q'` + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break done - test ! -n "$as_dirs" || mkdir $as_dirs - fi || { { echo "$as_me:$LINENO: error: cannot create directory $dirpart/$fdir" >&5 -echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;} + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 +echo "$as_me: error: cannot create directory $as_dir" >&2;} { (exit 1); exit 1; }; }; } - # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done ;; + esac -done -_ACEOF +done # for ac_tag -cat >>$CONFIG_STATUS <<\_ACEOF { (exit 0); exit 0; } _ACEOF diff --git a/configure.in b/configure.in index 798232734..462331fee 100644 --- a/configure.in +++ b/configure.in @@ -27,12 +27,32 @@ AC_CHECK_LIB(resolv, main) dnl Checks for header files. AC_HEADER_STDC AC_HEADER_SYS_WAIT -AC_CHECK_HEADERS(fcntl.h unistd.h getopt.h netinet/tcp.h netinet/in.h sys/param.h sys/types.h sys/time.h sys/sem.h sys/shm.h) +AC_CHECK_HEADERS(fcntl.h unistd.h getopt.h netinet/tcp.h netinet/in.h netdb.h sys/param.h sys/types.h sys/socket.h sys/un.h sys/time.h sys/sem.h sys/shm.h) dnl Checks for typedefs, structures, and compiler characteristics. AC_C_CONST AC_TYPE_PID_T AC_HEADER_TIME + +dnl Checks for sockaddr_storage structure, members and necessary types +m4_include([ac_func_accept_argtypes.m4]) +AC_CHECK_TYPES([struct sockaddr_storage], [], [], +[#include <sys/types.h> +#ifdef HAVE_SYS_SOCKET_H +#include <sys/socket.h> +#endif +]) +AC_CHECK_MEMBERS([struct sockaddr_storage.ss_family, + struct sockaddr_storage.__ss_family, + struct sockaddr_storage.ss_len, + struct sockaddr_storage.__ss_len, + struct sockaddr.sa_len], [], [], +[#include <sys/types.h> +#ifdef HAVE_SYS_SOCKET_H +#include <sys/socket.h> +#endif +]) + AC_CHECK_TYPES([union semun],[],[],[#include <sys/types.h> #include <sys/ipc.h> #include <sys/sem.h>]) @@ -41,7 +61,8 @@ dnl Checks for library functions. AC_TYPE_SIGNAL AC_FUNC_VPRINTF AC_FUNC_WAIT3 -AC_CHECK_FUNCS(setsid select socket sigprocmask strdup strerror strftime strtok asprintf) +AC_FUNC_ACCEPT_ARGTYPES +AC_CHECK_FUNCS(setsid select socket sigprocmask strdup strerror strftime strtok asprintf gai_strerror hstrerror) dnl Checks for pg_config command. AC_CHECK_PROGS(PGCONFIG, pg_config) @@ -90,6 +111,16 @@ AC_ARG_WITH(pgsql-libdir, PGSQL_LIB_DIR="$withval" ]) +AC_ARG_WITH(pam, + [ --with-pam build with PAM support], + [AC_DEFINE([USE_PAM], 1, [Define to 1 to build with PAM support. (--with-pam)])]) +if test "$with_pam" = yes ; then + AC_CHECK_LIB(pam, pam_start, [], [AC_MSG_ERROR([library 'pam' is required for PAM])]) + AC_CHECK_HEADERS(security/pam_appl.h, [], + [AC_CHECK_HEADERS(pam/pam_appl.h, [], + [AC_MSG_ERROR([header file <security/pam_appl.h> or <pam/pam_appl.h> is required for PAM.])])]) +fi + OLD_LDFLAGS="$LDFLAGS" LDFLAGS="-L$PGSQL_LIB_DIR" OLD_LIBS="$LIBS" diff --git a/doc/pgpool-en.html b/doc/pgpool-en.html index ebd6ce5fe..eb3ab89e6 100644 --- a/doc/pgpool-en.html +++ b/doc/pgpool-en.html @@ -6,11 +6,9 @@ <title>pgpool-II README</title> </head> -<!-- hhmts start --> -Last modified: Thu Feb 8 22:02:45 JST 2007 -<!-- hhmts end --> +<!-- hhmts start -->Last modified: Thu May 17 14:40:43 JST 2007 <!-- hhmts end --> <body bgcolor="#ffffff"> -<a name"top"></a> +<a name="top"></a> <table border="0" cellpadding="2" cellspacing="1"> <tr> @@ -42,7 +40,7 @@ Last modified: Thu Feb 8 22:02:45 JST 2007 -<h1>What is pgpool-II?<a name="whatis"></h1> +<h1>What is pgpool-II?<a name="whatis"></a></h1> <p> pgpool-II is a middleware that works between PostgreSQL servers and a PostgreSQL database client. It provides following features.</p> @@ -99,7 +97,7 @@ existing database application can be used with pgpool-II almost without a change to its sources.</p> -<h1>Supported Platforms<a name="platform"></h1> +<h1>Supported Platforms<a name="platform"></a></h1> <p>pgpool-II works on Linux, Solaris, FreeBSD, and most of the UNIX-like architectures. Windows is not supported. Supported @@ -107,14 +105,14 @@ PostgreSQL server's versions are 6.4 and higher. To use the parallel query, however, 7.4 and higher must be used.</p> -<h1>pgpool-II Installation<a name="install"></h1> +<h1>pgpool-II Installation<a name="install"></a></h1> <p>Installing pgpool-II requires gcc 2.9 or higher, and GNU make. Also, pgpool-II links libpq library, so it must be installed on a machine used to build pgpool-II.</p> <dl> -<dt>configure +<dt>configure</dt> <dd> <p> After extracting the source tar ball, execute the configure script. @@ -134,8 +132,9 @@ directory. Default value is <code>/usr/local</code></li> installed. Default values is obtained by <code>pg_config</code></li> </ul> </p> +</dd> -<dt>make +<dt>make</dt> <dd> <p> <pre> @@ -143,9 +142,11 @@ make make install </pre> will install pgpool-II. (If you use FreeBSD, replace make with gmake) +</p> +</dd> </dl> -<h1>Configuring pgpool-II<a name="config"></h1> +<h1>Configuring pgpool-II<a name="config"></a></h1> <p>Configuration files for pgpool-II are <code>/usr/local/etc/pgpool.conf</code> and @@ -439,6 +440,30 @@ servers.</p> debug option was not passed to pgpool-II at the startup.</p> </dd> + <dt>log_hostname</dt> + <dd> + <p> + If true, ps command status will show the client's hostname instead + of an IP address. Also, if log_connections is enabled, hostname will + be logged. + </p> + </dd> + + <dt>log_connections</dt> + <dd> + <p> + If true, all incoming connections will be printed to the log. + </p> + </dd> + + <dt>enable_pool_hba</dt> + <dd> + <p> + If true, use pool_hba.conf for client authentication. See <a href="#hba"> + Setting up pool_hba.conf for client authentication</a>. + </p> + </dd> + <dt>backend_hostname</dt> <dd> <p>Specifies the host name of the PostgreSQL backend. The empty @@ -817,7 +842,83 @@ ELSE 2 END' LANGUAGE SQL; </pre> -<h1>Starting/Stopping pgpool-II<a name="start"></h1> +<h2><a name="hba"></a>Setting up pool_hba.conf for client authentication (HBA)</h2> +<p> + Just like pg_hba.conf with PostgreSQL, pgpool supports a similar + client authentication function using a configuration file called + "pool_hba.conf". +</p> +<p> + When you install pgpool, pool_hba.conf.sample will be installed in + "/usr/local/etc", which is the default directory for configuration + files. Copy pool_hba.conf.sample as pool_hba.conf and edit it if necessary. + By default, pool_hba authentication is enabled. See "6. Setting up + pgpool.conf" for more detail. +</p> +<p> + The format of pool_hba.conf file follows very closely to pg_hba.conf. +</p> +<pre> + local DATABASE USER METHOD [OPTION] + host DATABASE USER CIDR-ADDRESS METHOD [OPTION] +</pre> +<p> + See "pool_hba.conf.sample" for details of each field. +</p> +<p> + Here are the limitations of pool_hba. +<ul> +<li>"hostssl" connection type is not supported</li> +<p> + "hostssl" is invalid since pgpool currently does not support SSL + connections. +</p> +<li>"samegroup" for DATABASE field is not supported</li> +<p> + Since pgpool does not know anything about users in the backend server, + database name is simply checked against the entries in the DATABASE + field of pool_hba.conf. +</p> +<li>group names following "+" for USER field is not supported</li> +<p> + This is the same reason as in the "samegroup" described above. A + user name is simply checked against the entries in the USER field + of pool_hba.conf. +</p> +<li>IPv6 for IP address/mask is not supported</li> +<p> + pgpool currently does not support IPv6. +</p> +<li>Only "trust", "reject" and "pam" for METHOD field are supported</li> +<p> + Again, this is the same reason as in the "samegroup" described above. + pgpool does not hold user/password information. +</p> +</ul> +<p> + Note that everything described in this section is about a client authen- + tication between a client and pgpool; a client still have to go through + an authentication process with PostgreSQL. As far as pool_hba is concerned, + it does not matter if a user name and/or database name given by a client + (i.e. psql -U testuser testdb) really exist in the backend. pool_hba only + cares if a match in the pool_hba.conf is found or not. +</p> +<p> + PAM authenticaion is supported using user information on the host where + pgpool is executed. To enable PAM support in pgpool, specify "--with-pam" + option to configure: +</p> +<pre> + configure --with-pam +</pre> +<p> + To enable PAM authentication, you need to create a + service-configuration file for pgpool in the system's PAM + configuration directory (which is usually at "/etc/pam.d"). A sample + service-configuration file is installed as "share/pgpool.pam" under + the install directory. +</p> +<h1>Starting/Stopping pgpool-II<a name="start"></a></h1> <p>All the backends and the System DB (if necessary) must be started before starting pgpool-II. @@ -850,7 +951,7 @@ pgpool [-f config_file][-F pcp_config_file] [-m {s[mart]|f[ast]|i[mmediate]}] st <tr><td><code>-m i[mmediate]</code></td><td>the same as <code>'-m f'</code></td></tr> </table> -<h1>Restrictions<a name="restriction"></h1> +<h1>Restrictions<a name="restriction"></a></h1> <p> <h2>Authentication / Access Controls</h2> @@ -1051,7 +1152,7 @@ invalidate old query cache automatically when the data is updated.</p> <h2>Compatibility with pgpool</h2> -<h1>References<a name="reference"></h1> +<h1>References<a name="reference"></a></h1> <h2>PCP Command Reference</h2> <h3>PCP Command List</h3> diff --git a/doc/pgpool-ja.html b/doc/pgpool-ja.html index e296f98f0..8d49b7b13 100644 --- a/doc/pgpool-ja.html +++ b/doc/pgpool-ja.html @@ -7,12 +7,10 @@ </head> <body> -<!-- hhmts start --> -<!--Last modified: Mon Aug 28 22:47:51 JST 2006--> -<!-- hhmts end --> +<!-- hhmts start -->Last modified: Thu May 17 14:39:41 JST 2007 <!-- hhmts end --> <body bgcolor="#ffffff"> -<a name"top"></a> +<a name="top"></a> <table border="0" cellpadding="2" cellspacing="1"> <tr> @@ -45,7 +43,7 @@ -<h1>pgpool-II$B$H$O(B<a name="whatis"></h1> +<h1>pgpool-II$B$H$O(B<a name="whatis"></a></h1> <p> pgpool-II$B$O(BPostgreSQL$B@lMQ$N%_%I%k%&%'%"$G!$(BPostgreSQL$B$N%G!<%?%Y!<%9%/%i(B $B%$%"%s%H$H(BPostgreSQL$B%5!<%P$N4V$K3d$j9~$`7A$GF0:n$7!$(BPostgrSQL$B$K0J2<$N$h(B @@ -110,7 +108,7 @@ pgpool-II$B$O(BPostgreSQL$B%P%C%/%(%s%I$H%U%m%s%H%(%s%I$NDL?.%W%m%H%3%k$rM}2r $B$K$[$H$s$I<j$r2C$($k$3$H$J$/!$(Bpgpool-II$B$N5!G=$,MxMQ$G$-$^$9!%(B </p> -<h1>pgpool-II$B$N2TF/4D6-(B<a name="platform"></h1> +<h1>pgpool-II$B$N2TF/4D6-(B<a name="platform"></a></h1> <p> pgpool-II$B$O!$(BLinux$B$r$O$8$a!$(BSolaris$B$d(BFreeBSD$B$J$I$N$[$H$s$I$N(BUNIX$B4D6-$GF0:n(B $B$7$^$9!%(BWindows$B$G$OF0$-$^$;$s!%BP1~$9$k(BPostgreSQL$B$N%P!<%8%g%s$O!$(B @@ -118,7 +116,7 @@ PostgreSQL$B$N(B6.4$B0J9_$G$9!%$?$@$7%Q%i%l%k%/%(%j%b!<%I$r;HMQ$9$k$H$-$O(B PostgreSQL 7.4$B0J9_$r$*;H$$$/$@$5$$!%(B </p> -<h1>pgpool-II$B$N%$%s%9%H!<%k(B<a name="install"></h1> +<h1>pgpool-II$B$N%$%s%9%H!<%k(B<a name="install"></a></h1> <p> pgpool-II$B$N%$%s%9%H!<%k$K$O!$(Bgcc 2.9$B0J>e!$$*$h$S(BGNU make$B$,I,MW$G$9!%(B $B$^$?!$(Bpgpool-II$B$O(Blibpq$B$r;HMQ$9$k$N$G!$%S%k%I$r9T$&%^%7%s>e$K(Blibpq$B$,%$%s%9%H!<(B @@ -158,7 +156,7 @@ make install make$B$r(Bgmake$B$KFI$_BX$($F$/$@$5$$(B)$B!%(B </dl> -<h1>pgpool-II$B$N@_Dj(B<a name="config"></h1> +<h1>pgpool-II$B$N@_Dj(B<a name="config"></a></h1> <p> pgpool-II$B$N@_Dj%U%!%$%k$O%G%U%)%k%H$G$O(B/usr/local/etc/pgpool.conf$B$*$h$S(B /usr/local/etc/pcp.conf$B$G$9!%(Bpgpool-II$B$OF0:n%b!<%I$K$h$C$F;HMQ$G$-$k5!G=$H!$(B @@ -447,6 +445,28 @@ prefork$B$9$k(Bpgpool-II$B$N%5!<%P%W%m%;%9$N?t$G$9!%%G%U%)%k%HCM$O(B32$B$K$ $BLd$$9g$o$;$r%m%0=PNO$7$FD4$Y$k$3$H$,$G$-$k$N$GJXMx$G$9!%(B </p> +<dt>log_hostname +<dd> +<p> + true$B$J$i$P!$(Bps$B%3%^%s%I$G$N>uBVI=<(;~$K(BIP$B%"%I%l%9$G$O$J$/!$%[%9%HL>(B + $B$rI=<($7$^$9!%$^$?!$(Blog_connections$B$,M-8z$J>l9g$K$O%m%0$K%[%9%HL>$r(B + $B=PNO$7$^$9!%(B +</p> + +<dt>log_connections +<dd> +<p> + true$B$J$i$P!"A4$F$N%/%i%$%"%s%H@\B3$r%m%0$X=PNO$7$^$9!#(B +</p> + +<dt>enable_pool_hba +<dd> +<p> + true$B$J$i$P!"(Bpool_hba.conf$B$K=>$C$F%/%i%$%"%s%HG'>Z$r9T$$$^$9!#(B + $B>\:Y$O(B<a href="#hba">$B%/%i%$%"%s%HG'>Z(B(HBA)$B$N$?$a$N(Bpool_hba.conf$B@_Dj(B + $BJ}K!(B</a>$B$r;2>H$7$F$/$@$5$$!#(B +</p> + <dt>backend_hostname <dd> <p> @@ -879,7 +899,89 @@ CREATE OR REPLACE FUNCTION pgpool_catalog.dist_def_tellers (val ANYELEMENT) RETU END' LANGUAGE SQL; </pre> -<h1>pgpool-II$B$N5/F0$HDd;_(B<a name="start"></h1> +<h2><a name="hba"></a>$B%/%i%$%"%s%HG'>Z(B(HBA)$B$N$?$a$N(B pool_hba.conf $B@_DjJ}K!(B</h2> +<p> + PostgreSQL$B$N(Bpg_hba.conf$B$HF1$8$h$&$K(Bpgpool$B$G$b(Bpool_config.conf$B%U%!%$(B + $B%k$r;H$C$?%/%i%$%"%s%HG'>Z$,%5%]!<%H$5$l$F$$$^$9!#(B +</p> +<p> + pgpool$B$r%$%s%9%H!<%k$9$k$H%G%U%)%k%H%$%s%9%H!<%k@h$N@_Dj%U%!%$%k%G%#(B + $B%l%/%H%j(B"/usr/local/etc"$B$K(Bpool_hba.conf.sample$B$,0l=o$K%$%s%9%H!<%k(B + $B$5$l$^$9!#$3$N(Bpool_hba.conf.sample$B%U%!%$%k$r(Bpool_hba.conf$B$H$7$F%3%T!<(B + $B$7!"I,MW$G$"$l$PJT=8$7$F$/$@$5$$!#%G%U%)%k%H$G$O(Bpool_hba$B$K$h$kG'>Z$OM-(B + $B8z$K$J$C$F$$$^$9!#(B +</p> +<p> + pool_hba.conf$B$N%U%)!<%^%C%H$O(Bpg_hba.conf$B$N$b$N$H$[$H$s$IF1$8$G$9!#(B +</p> +<pre> + local DATABASE USER METHOD [OPTION] + host DATABASE USER CIDR-ADDRESS METHOD [OPTION] +</pre> +<p> + $B3F%U%#!<%k%I$G@_Dj$G$-$kCM$N>\:Y$O(B"pool_hba.conf.sample"$B$r;2>H$7$F(B + $B$/$@$5$$!#(B +</p> +<p> + $B0J2<$O(Bpool_hba$B$N@)8B;v9`$G$9!#(B + +<ul> +<li>"hostssl"$B@\B3%?%$%W$O%5%]!<%H$5$l$^$;$s(B</li> +<p> + $B8=:_(Bpgpool$B$O(BSSL$B@\B3$r%5%]!<%H$7$F$$$J$$$N$G(B"hostssl"$B$O;XDj$9$k$3(B + $B$H$,$G$-$^$;$s!#(B +</p> +<li>DATABASE$B%U%#!<%k%ICM$H$7$F(B"samegroup"$B$O%5%]!<%H$5$l$^$;$s(B</li> +<p> + pgpool$B$O%P%C%/%(%s%I%5!<%P$K$"$k%f!<%6>pJs$r;vA0$KCN$k;v$,$G$-$J(B + $B$$$?$a!"%G!<%?%Y!<%9L>$O(Bpool_hba.conf$B$K$"$kCM$N$_$HHf3S$5$l$^$9!#(B + $B$J$N$G%0%k!<%W$K4X$9$kG'>Z$O(Bpool_hba$B$G9T$&$3$H$,$G$-$^$;$s!#(B +</p> +<li>USER$B%U%#!<%k%ICM$H$7$F(B"+"$B$r;H$C$?%0%k!<%W;XDj$O%5%]!<%H$5$l$^$;$s(B</li> +<p> + $B>e5-$N(B"samegroup"$B$HF1$8M}M3$G!"%f!<%6L>$O(Bpool_hba.conf$B$K$"$kCM$N(B + $B$_$HHf3S$5$l$^$9!#%0%k!<%W$K4X$9$kG'>Z$O(Bpool_hba$B$G9T$&$3$H$O$G$-(B + $B$^$;$s!#(B +</p> +<li>IPv6$B%"%I%l%9(B/$B%^%9%/I=5-K!$O%5%]!<%H$5$l$^$;$s(B</li> +<p> + $B8=:_(Bpgpool$B$O(BIPv6$B$r%5%]!<%H$7$F$$$^$;$s!#(B +</p> +<li>"trust", "reject", "pam"$B0J30$N%a%=%C%I$O%5%]!<%H$5$l$^$;$s(B</li> +<p> + $B$3$l$b>e5-$N(B"samegroup"$B$HF1$8M}M3$K$h$k$b$N$G$9!#(Bpgpool$B$O%P%C%/%((B + $B%s%I$N%f!<%6(B/$B%Q%9%o!<%I>pJs$r;}$C$F$$$J$$$N$G!"%P%C%/%(%s%I$KJ]B8(B + $B$5$l$F$$$k%Q%9%o!<%I$r;H$C$?G'>Z$r9T$&$3$H$,$G$-$^$;$s!#(B +</p> +</ul> +</p> +<p> + $B$3$3$G@bL@$5$l$?5!G=!"@)8B$O%/%i%$%"%s%H$H(Bpgpool$B4V$G9T$o$l$k%/%i%$(B + $B%"%s%HG'>Z$K$D$$$F$@$H$$$&$3$H$KCm0U$7$F$/$@$5$$!#%/%i%$%s%"%s%H$O(B + pgpool$B$N%/%i%$%"%s%HG'>Z$K@.8y$7$?$H$7$F$b!"(BPostgreSQL$B$K$h$k%/%i%$(B + $B%"%s%HG'>Z$K@.8y$7$J$$$H@\B3>uBV$H$J$j$^$;$s!#(Bpool_hba$B$K$H$C$F$O%/(B + $B%i%$%"%s%H$K;XDj$5$l$?%f!<%6L>$d%G!<%?%Y!<%9L>(B + ($BNc(B. psql -U testuser testdb)$B$,<B:]$K%P%C%/%(%s%I>e$KB8:_$9$k$+$I$&(B + $B$+$OLdBj$G$O$"$j$^$;$s!#$=$l$,(Bpool_hba.conf$B$NCM$H%^%C%A$9$k$+$I$&$+(B + $B$G%A%'%C%/$,9T$o$l$^$9!#(B +</p> +<p> + pgpool$B$,2TF/$9$k%[%9%H>e$N%f!<%6>pJs$r;H$C$?(BPAM$BG'>Z$rMxMQ$9$k$3$H$,(B + $B$G$-$^$9!#(Bpgpool$B$r(BPAM$B%5%]!<%HIU$-$G%S%k%I$9$k$K$O(Bconfigure$B%*%W%7%g(B + $B%s$K(B"--with-pam"$B$r;XDj$7$F$/$@$5$$!#(B +</p> +<pre> + ./configure --with-pam +</pre> +<p> + $B<B:]$K(BPAM$BG'>Z$rM-8z$K$9$k$K$O!"(Bpool_hba.conf$B$G(B"pam"$B%a%=%C%I$r@_Dj$9(B + $B$k$N$K2C$(!"(Bpgpool$B$N%5!<%S%9@_Dj%U%!%$%k$r%7%9%F%`$N(BPAM$B@_Dj%G%#%l%/%H(B + $B%j!JDL>o$O(B /etc/pam.d $B$K:n@.$9$kI,MW$,$"$j$^$9!#%5!<%S%9@_Dj%U%!%$(B + $B%k$NNc$O%$%s%9%H!<%k%G%#%l%/%H%j$N(B"share/pgpool.pam"$B$r;29M$K$7$F$/(B + $B$@$5$$!#(B +</p> + +<h1>pgpool-II$B$N5/F0$HDd;_(B<a name="start"></a></h1> <p> $B0J>e$G@_Dj$,=*$o$C$?$N$G!$3F(BDB$B%N!<%I$r5/F0$7!$I,MW$J$i$P%7%9%F%`(BDB$B$b5/F0(B $B$7$F$+$i(Bpgpool-II$B$r5/F0$7$^$9!%(B @@ -909,7 +1011,7 @@ pgpool [-f config_file][-F pcp_config_file] [-m {s[mart]|f[ast]|i[mmediate]}] st </table> </p> -<h1>$B@)8B;v9`(B<a name="restriction"></h1> +<h1>$B@)8B;v9`(B<a name="restriction"></a></h1> <p> <h2>$BG'>Z!&%"%/%;%9@)8fJ}<0(B</h2> <p> @@ -1159,7 +1261,7 @@ pgpool $B$N>l9g(B /*STRICT*/ $B$J$I!"(Bpgpool $B$r@)8f$9$kFC<l$J%3%a%s%H$r= </p> -<h1>$B%j%U%!%l%s%9(B<a name="reference"></h1> +<h1>$B%j%U%!%l%s%9(B<a name="reference"></a></h1> <h2>PCP$B%3%^%s%I%j%U%!%l%s%9(B</h2> <h3>PCP$B%3%^%s%I0lMw(B</h3> @@ -1405,7 +1507,7 @@ pgpool $B$N>l9g(B /*STRICT*/ $B$J$I!"(Bpgpool $B$r@)8f$9$kFC<l$J%3%a%s%H$r= </pre> </p> -<h1>$BFbIt>pJs(B<a name="internal"></h1> +<h1>$BFbIt>pJs(B<a name="internal"></a></h1> <h2>$B%Q%i%l%k<B9T%(%s%8%s(B</h2> <p> @@ -1762,7 +1864,7 @@ count(*) $B$r;H$C$?%/%(%j$O!"0J2<$N$h$&$K=q$-49$($,9T$o$l$^$9!#(B $B%C%/%(%s%I$G$N<B9T7k2L$r$=$N$^$^%U%m%s%H%(%s%I$KJV5Q$7$^$9!#(B </p> -<h1>$B%j%j!<%9%N!<%H(B<a name="release"></h1> +<h1>$B%j%j!<%9%N!<%H(B<a name="release"></a></h1> <h2>1.0.2 (suboshi) 2007/02/13</h2> <ul> diff --git a/main.c b/main.c index 0ba959ba7..a8d4e558b 100644 --- a/main.c +++ b/main.c @@ -101,6 +101,9 @@ POOL_REQUEST_INFO *Req_info; /* request info area in shared memory */ int my_proc_id; +int myargc; +char **myargv; + /* * pgpool main program */ @@ -108,6 +111,7 @@ int main(int argc, char **argv) { int opt; char conf_file[POOLMAXPATHLEN+1]; + char hba_file[POOLMAXPATHLEN+1]; int i; int pid; int size; @@ -115,13 +119,26 @@ int main(int argc, char **argv) int retrycnt; int sys_retrycnt; + myargc = argc; + myargv = argv; + snprintf(conf_file, sizeof(conf_file), "%s/%s", DEFAULT_CONFIGDIR, POOL_CONF_FILE_NAME); snprintf(pcp_conf_file, sizeof(pcp_conf_file), "%s/%s", DEFAULT_CONFIGDIR, PCP_PASSWD_FILE_NAME); + snprintf(hba_file, sizeof(hba_file), "%s/%s", DEFAULT_CONFIGDIR, HBA_CONF_FILE_NAME); - while ((opt = getopt(argc, argv, "cdf:F:hm:n")) != -1) + while ((opt = getopt(argc, argv, "a:cdf:F:hm:n")) != -1) { switch (opt) { + case 'a': /* specify hba configuration file */ + if (!optarg) + { + usage(); + exit(1); + } + strncpy(hba_file, optarg, sizeof(hba_file)); + break; + case 'c': /* clear cache option */ clear_cache = 1; break; @@ -188,6 +205,9 @@ int main(int argc, char **argv) exit(1); } + if (pool_config->enable_pool_hba) + load_hba(hba_file); + /* * if a non-switch argument remains, then it should be either "stop" or "switch" */ @@ -469,11 +489,12 @@ static void usage(void) { fprintf(stderr, "%s version %s(%s),\n", PACKAGE, VERSION, PGPOOLVERSION); fprintf(stderr, " a generic connection pool/replication/load balance server for PostgreSQL\n\n"); - fprintf(stderr, "usage: pgpool [-c][-f config_file][-F pcp_config_file][-n][-d]\n"); - fprintf(stderr, "usage: pgpool [-f config_file][-F pcp_config_file] [-m {s[mart]|f[ast]|i[mmediate]}] stop\n"); + fprintf(stderr, "usage: pgpool [-c][-f config_file][-F pcp_config_file][-a hba_file][-n][-d]\n"); + fprintf(stderr, "usage: pgpool [-f config_file][-F pcp_config_file][-a hba_file] [-m {s[mart]|f[ast]|i[mmediate]}] stop\n"); fprintf(stderr, "usage: pgpool -h\n"); fprintf(stderr, " config_file default path: %s/%s\n",DEFAULT_CONFIGDIR, POOL_CONF_FILE_NAME); fprintf(stderr, " pcp_config_file default path: %s/%s\n", DEFAULT_CONFIGDIR, PCP_PASSWD_FILE_NAME); + fprintf(stderr, " hba_file default path: %s/%s\n",DEFAULT_CONFIGDIR, HBA_CONF_FILE_NAME); fprintf(stderr, " -c: clears query cache. enable_query_cache must be on\n"); fprintf(stderr, " -n: don't run in daemon mode. does not detatch control tty\n"); fprintf(stderr, " -d: debug mode. lots of debug information will be printed\n"); @@ -620,6 +641,8 @@ pid_t pcp_fork_a_child(int unix_fd, int inet_fd, char *pcp_conf_file) if (pid == 0) { + myargv = save_ps_display_args(myargc, myargv); + /* call PCP child main */ POOL_SETMASK(&UnBlockSig); pcp_do_child(unix_fd, inet_fd, pcp_conf_file); @@ -643,6 +666,8 @@ pid_t fork_a_child(int unix_fd, int inet_fd, int id) if (pid == 0) { + myargv = save_ps_display_args(myargc, myargv); + /* call child main */ POOL_SETMASK(&UnBlockSig); my_proc_id = id; diff --git a/parser/Makefile.in b/parser/Makefile.in index ed16b20e1..293f6bdfe 100644 --- a/parser/Makefile.in +++ b/parser/Makefile.in @@ -40,7 +40,8 @@ subdir = parser DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in gram.c \ gram.h ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/configure.in +am__aclocal_m4_deps = $(top_srcdir)/ac_func_accept_argtypes.m4 \ + $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs @@ -53,7 +54,7 @@ libsql_parser_a_LIBADD = am_libsql_parser_a_OBJECTS = gram.$(OBJEXT) list.$(OBJEXT) \ makefuncs.$(OBJEXT) nodes.$(OBJEXT) parser.$(OBJEXT) \ pool_memory.$(OBJEXT) pool_string.$(OBJEXT) value.$(OBJEXT) \ - keywords.$(OBJEXT) outfuncs.$(OBJEXT) + keywords.$(OBJEXT) outfuncs.$(OBJEXT) copyfuncs.$(OBJEXT) libsql_parser_a_OBJECTS = $(am_libsql_parser_a_OBJECTS) DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp @@ -103,6 +104,7 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ F77 = @F77@ FFLAGS = @FFLAGS@ +GREP = @GREP@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ @@ -134,12 +136,10 @@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ YACC = @YACC@ -ac_ct_AR = @ac_ct_AR@ +YFLAGS = @YFLAGS@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ ac_ct_F77 = @ac_ct_F77@ -ac_ct_RANLIB = @ac_ct_RANLIB@ -ac_ct_STRIP = @ac_ct_STRIP@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ @@ -156,6 +156,9 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ enable_rpath_FALSE = @enable_rpath_FALSE@ enable_rpath_TRUE = @enable_rpath_TRUE@ exec_prefix = @exec_prefix@ @@ -164,23 +167,27 @@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ +htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ +localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ +psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ noinst_LIBRARIES = libsql-parser.a -libsql_parser_a_SOURCES = gram.y gramparse.h list.c makefuncs.c makefuncs.h memnodes.h nodes.h nodes.c parsenodes.h parser.c parser.h pg_list.h pool_memory.c pool_memory.h pool_string.c pool_string.h primnodes.h scansup.h value.c value.h keywords.h keywords.c pool_parser.h outfuncs.c +libsql_parser_a_SOURCES = gram.y gramparse.h list.c makefuncs.c makefuncs.h memnodes.h nodes.h nodes.c parsenodes.h parser.c parser.h pg_list.h pool_memory.c pool_memory.h pool_string.c pool_string.h primnodes.h scansup.h value.c value.h keywords.h keywords.c pool_parser.h outfuncs.c copyfuncs.c EXTRA_DIST = scan.c scan.l AM_CPPFLAGS = -Wall -Wmissing-prototypes -Wmissing-declarations -D_GNU_SOURCE -I .. -I @PGSQL_INCLUDE_DIR@ AM_YFLAGS = -d @@ -236,6 +243,7 @@ mostlyclean-compile: distclean-compile: -rm -f *.tab.c +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/copyfuncs.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gram.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/keywords.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/list.Po@am__quote@ diff --git a/parser/gram.c b/parser/gram.c index 5db3451fa..8f12c7c3a 100644 --- a/parser/gram.c +++ b/parser/gram.c @@ -1,7 +1,9 @@ -/* A Bison parser, made by GNU Bison 1.875. */ +/* A Bison parser, made by GNU Bison 2.3. */ -/* Skeleton parser for Yacc-like parsing with Bison, - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002 Free Software Foundation, Inc. +/* Skeleton implementation for Bison's Yacc-like parsers in C + + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + 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 @@ -15,16 +17,24 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. */ + +/* As a special exception, you may create a larger work that contains + part or all of the Bison parser skeleton and distribute that work + under terms of your choice, so long as that work isn't itself a + parser generator using the skeleton or a modified version thereof + as a parser skeleton. Alternatively, if you modify or redistribute + the parser skeleton itself, you may (at your option) remove this + special exception, which will cause the skeleton and the resulting + Bison output files to be licensed under the GNU General Public + License without this special exception. -/* As a special exception, when this file is copied by Bison into a - Bison output file, you may use that output file without restriction. - This special exception was added by the Free Software Foundation - in version 1.24 of Bison. */ + This special exception was added by the Free Software Foundation in + version 2.2 of Bison. */ -/* Written by Richard Stallman by simplifying the original so called - ``semantic'' parser. */ +/* C LALR(1) parser skeleton written by Richard Stallman, by + simplifying the original so-called "semantic" parser. */ /* All symbols defined below should begin with yy or YY, to avoid infringing on user name space. This should be done even for local @@ -36,6 +46,9 @@ /* Identify Bison output. */ #define YYBISON 1 +/* Bison version. */ +#define YYBISON_VERSION "2.3" + /* Skeleton name. */ #define YYSKELETON_NAME "yacc.c" @@ -401,6 +414,7 @@ TYPECAST = 603 }; #endif +/* Tokens. */ #define ABORT_P 258 #define ABSOLUTE_P 259 #define ACCESS 260 @@ -869,9 +883,15 @@ static void doNegateFloat(Value *v); # define YYERROR_VERBOSE 0 #endif -#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) +/* Enabling the token table. */ +#ifndef YYTOKEN_TABLE +# define YYTOKEN_TABLE 0 +#endif + +#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED +typedef union YYSTYPE #line 106 "gram.y" -typedef union YYSTYPE { +{ int ival; char chr; char *str; @@ -902,9 +922,10 @@ typedef union YYSTYPE { InsertStmt *istmt; VariableSetStmt *vsetstmt; -} YYSTYPE; -/* Line 191 of yacc.c. */ -#line 907 "gram.c" +} +/* Line 193 of yacc.c. */ +#line 928 "gram.c" + YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 # define YYSTYPE_IS_TRIVIAL 1 @@ -915,49 +936,171 @@ typedef union YYSTYPE { /* Copy the second part of user declarations. */ -/* Line 214 of yacc.c. */ -#line 919 "gram.c" +/* Line 216 of yacc.c. */ +#line 941 "gram.c" -#if ! defined (yyoverflow) || YYERROR_VERBOSE +#ifdef short +# undef short +#endif -/* The parser invokes alloca or malloc; define the necessary symbols. */ +#ifdef YYTYPE_UINT8 +typedef YYTYPE_UINT8 yytype_uint8; +#else +typedef unsigned char yytype_uint8; +#endif -# if YYSTACK_USE_ALLOCA -# define YYSTACK_ALLOC alloca +#ifdef YYTYPE_INT8 +typedef YYTYPE_INT8 yytype_int8; +#elif (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +typedef signed char yytype_int8; +#else +typedef short int yytype_int8; +#endif + +#ifdef YYTYPE_UINT16 +typedef YYTYPE_UINT16 yytype_uint16; +#else +typedef unsigned short int yytype_uint16; +#endif + +#ifdef YYTYPE_INT16 +typedef YYTYPE_INT16 yytype_int16; +#else +typedef short int yytype_int16; +#endif + +#ifndef YYSIZE_T +# ifdef __SIZE_TYPE__ +# define YYSIZE_T __SIZE_TYPE__ +# elif defined size_t +# define YYSIZE_T size_t +# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +# include <stddef.h> /* INFRINGES ON USER NAME SPACE */ +# define YYSIZE_T size_t # else -# ifndef YYSTACK_USE_ALLOCA -# if defined (alloca) || defined (_ALLOCA_H) -# define YYSTACK_ALLOC alloca +# define YYSIZE_T unsigned int +# endif +#endif + +#define YYSIZE_MAXIMUM ((YYSIZE_T) -1) + +#ifndef YY_ +# if YYENABLE_NLS +# if ENABLE_NLS +# include <libintl.h> /* INFRINGES ON USER NAME SPACE */ +# define YY_(msgid) dgettext ("bison-runtime", msgid) +# endif +# endif +# ifndef YY_ +# define YY_(msgid) msgid +# endif +#endif + +/* Suppress unused-variable warnings by "using" E. */ +#if ! defined lint || defined __GNUC__ +# define YYUSE(e) ((void) (e)) +#else +# define YYUSE(e) /* empty */ +#endif + +/* Identity function, used to suppress warnings about constant conditions. */ +#ifndef lint +# define YYID(n) (n) +#else +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static int +YYID (int i) +#else +static int +YYID (i) + int i; +#endif +{ + return i; +} +#endif + +#if ! defined yyoverflow || YYERROR_VERBOSE + +/* The parser invokes alloca or malloc; define the necessary symbols. */ + +# ifdef YYSTACK_USE_ALLOCA +# if YYSTACK_USE_ALLOCA +# ifdef __GNUC__ +# define YYSTACK_ALLOC __builtin_alloca +# elif defined __BUILTIN_VA_ARG_INCR +# include <alloca.h> /* INFRINGES ON USER NAME SPACE */ +# elif defined _AIX +# define YYSTACK_ALLOC __alloca +# elif defined _MSC_VER +# include <malloc.h> /* INFRINGES ON USER NAME SPACE */ +# define alloca _alloca # else -# ifdef __GNUC__ -# define YYSTACK_ALLOC __builtin_alloca +# define YYSTACK_ALLOC alloca +# if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ +# ifndef _STDLIB_H +# define _STDLIB_H 1 +# endif # endif # endif # endif # endif # ifdef YYSTACK_ALLOC - /* Pacify GCC's `empty if-body' warning. */ -# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) + /* Pacify GCC's `empty if-body' warning. */ +# define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0)) +# ifndef YYSTACK_ALLOC_MAXIMUM + /* The OS might guarantee only one guard page at the bottom of the stack, + and a page size can be as small as 4096 bytes. So we cannot safely + invoke alloca (N) if N exceeds 4096. Use a slightly smaller number + to allow for a few compiler-allocated temporary stack slots. */ +# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */ +# endif # else -# if defined (__STDC__) || defined (__cplusplus) +# define YYSTACK_ALLOC YYMALLOC +# define YYSTACK_FREE YYFREE +# ifndef YYSTACK_ALLOC_MAXIMUM +# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM +# endif +# if (defined __cplusplus && ! defined _STDLIB_H \ + && ! ((defined YYMALLOC || defined malloc) \ + && (defined YYFREE || defined free))) # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ -# define YYSIZE_T size_t +# ifndef _STDLIB_H +# define _STDLIB_H 1 +# endif +# endif +# ifndef YYMALLOC +# define YYMALLOC malloc +# if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ +# endif +# endif +# ifndef YYFREE +# define YYFREE free +# if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +void free (void *); /* INFRINGES ON USER NAME SPACE */ +# endif # endif -# define YYSTACK_ALLOC malloc -# define YYSTACK_FREE free # endif -#endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */ +#endif /* ! defined yyoverflow || YYERROR_VERBOSE */ -#if (! defined (yyoverflow) \ - && (! defined (__cplusplus) \ - || (YYSTYPE_IS_TRIVIAL))) +#if (! defined yyoverflow \ + && (! defined __cplusplus \ + || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) /* A type that is properly aligned for any stack member. */ union yyalloc { - short yyss; + yytype_int16 yyss; YYSTYPE yyvs; }; @@ -967,24 +1110,24 @@ union yyalloc /* The size of an array large to enough to hold all stacks, each with N elements. */ # define YYSTACK_BYTES(N) \ - ((N) * (sizeof (short) + sizeof (YYSTYPE)) \ + ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ + YYSTACK_GAP_MAXIMUM) /* Copy COUNT objects from FROM to TO. The source and destination do not overlap. */ # ifndef YYCOPY -# if 1 < __GNUC__ +# if defined __GNUC__ && 1 < __GNUC__ # define YYCOPY(To, From, Count) \ __builtin_memcpy (To, From, (Count) * sizeof (*(From))) # else # define YYCOPY(To, From, Count) \ do \ { \ - register YYSIZE_T yyi; \ + YYSIZE_T yyi; \ for (yyi = 0; yyi < (Count); yyi++) \ (To)[yyi] = (From)[yyi]; \ } \ - while (0) + while (YYID (0)) # endif # endif @@ -1002,39 +1145,33 @@ union yyalloc yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ yyptr += yynewbytes / sizeof (*yyptr); \ } \ - while (0) + while (YYID (0)) #endif -#if defined (__STDC__) || defined (__cplusplus) - typedef signed char yysigned_char; -#else - typedef short yysigned_char; -#endif - -/* YYFINAL -- State number of the termination state. */ +/* YYFINAL -- State number of the termination state. */ #define YYFINAL 555 /* YYLAST -- Last index in YYTABLE. */ #define YYLAST 34910 -/* YYNTOKENS -- Number of terminals. */ +/* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 366 -/* YYNNTS -- Number of nonterminals. */ +/* YYNNTS -- Number of nonterminals. */ #define YYNNTS 391 -/* YYNRULES -- Number of rules. */ +/* YYNRULES -- Number of rules. */ #define YYNRULES 1613 -/* YYNRULES -- Number of states. */ +/* YYNRULES -- Number of states. */ #define YYNSTATES 2807 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 #define YYMAXUTOK 603 -#define YYTRANSLATE(YYX) \ +#define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */ -static const unsigned short yytranslate[] = +static const yytype_uint16 yytranslate[] = { 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -1102,7 +1239,7 @@ static const unsigned short yytranslate[] = #if YYDEBUG /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in YYRHS. */ -static const unsigned short yyprhs[] = +static const yytype_uint16 yyprhs[] = { 0, 0, 3, 5, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, @@ -1268,8 +1405,8 @@ static const unsigned short yyprhs[] = 5010, 5012, 5014, 5016 }; -/* YYRHS -- A `-1'-separated list of the rules' RHS. */ -static const short yyrhs[] = +/* YYRHS -- A `-1'-separated list of the rules' RHS. */ +static const yytype_int16 yyrhs[] = { 367, 0, -1, 368, -1, 368, 363, 369, -1, 369, -1, 590, -1, 591, -1, 596, -1, 548, -1, 382, @@ -1776,7 +1913,7 @@ static const short yyrhs[] = }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ -static const unsigned short yyrline[] = +static const yytype_uint16 yyrline[] = { 0, 478, 478, 482, 488, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, @@ -1943,174 +2080,173 @@ static const unsigned short yyrline[] = }; #endif -#if YYDEBUG || YYERROR_VERBOSE -/* YYTNME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. - First, the terminals, then, starting at YYNTOKENS, nonterminals. */ +#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE +/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + First, the terminals, then, starting at YYNTOKENS, nonterminals. */ static const char *const yytname[] = { - "$end", "error", "$undefined", "ABORT_P", "ABSOLUTE_P", "ACCESS", - "ACTION", "ADD", "ADMIN", "AFTER", "AGGREGATE", "ALL", "ALSO", "ALTER", - "ANALYSE", "ANALYZE", "AND", "ANY", "ARRAY", "AS", "ASC", "ASSERTION", - "ASSIGNMENT", "ASYMMETRIC", "AT", "AUTHORIZATION", "BACKWARD", "BEFORE", - "BEGIN_P", "BETWEEN", "BIGINT", "BINARY", "BIT", "BOOLEAN_P", "BOTH", - "BY", "CACHE", "CALLED", "CASCADE", "CASE", "CAST", "CHAIN", "CHAR_P", - "CHARACTER", "CHARACTERISTICS", "CHECK", "CHECKPOINT", "CLASS", "CLOSE", - "CLUSTER", "COALESCE", "COLLATE", "COLUMN", "COMMENT", "COMMIT", - "COMMITTED", "CONNECTION", "CONSTRAINT", "CONSTRAINTS", "CONVERSION_P", - "CONVERT", "COPY", "CREATE", "CREATEDB", "CREATEROLE", "CREATEUSER", - "CROSS", "CSV", "CURRENT_DATE", "CURRENT_ROLE", "CURRENT_TIME", - "CURRENT_TIMESTAMP", "CURRENT_USER", "CURSOR", "CYCLE", "DATABASE", - "DAY_P", "DEALLOCATE", "DEC", "DECIMAL_P", "DECLARE", "DEFAULT", - "DEFAULTS", "DEFERRABLE", "DEFERRED", "DEFINER", "DELETE_P", - "DELIMITER", "DELIMITERS", "DESC", "DISABLE_P", "DISTINCT", "DO", - "DOMAIN_P", "DOUBLE_P", "DROP", "EACH", "ELSE", "ENABLE_P", "ENCODING", - "ENCRYPTED", "END_P", "ESCAPE", "EXCEPT", "EXCLUDING", "EXCLUSIVE", - "EXECUTE", "EXISTS", "EXPLAIN", "EXTERNAL", "EXTRACT", "FALSE_P", - "FETCH", "FIRST_P", "FLOAT_P", "FOR", "FORCE", "FOREIGN", "FORWARD", - "FREEZE", "FROM", "FULL", "FUNCTION", "GLOBAL", "GRANT", "GRANTED", - "GREATEST", "GROUP_P", "HANDLER", "HAVING", "HEADER", "HOLD", "HOUR_P", - "ILIKE", "IMMEDIATE", "IMMUTABLE", "IMPLICIT_P", "IN_P", "INCLUDING", - "INCREMENT", "INDEX", "INHERIT", "INHERITS", "INITIALLY", "INNER_P", - "INOUT", "INPUT_P", "INSENSITIVE", "INSERT", "INSTEAD", "INT_P", - "INTEGER", "INTERSECT", "INTERVAL", "INTO", "INVOKER", "IS", "ISNULL", - "ISOLATION", "JOIN", "KEY", "LANCOMPILER", "LANGUAGE", "LARGE_P", - "LAST_P", "LEADING", "LEAST", "LEFT", "LEVEL", "LIKE", "LIMIT", - "LISTEN", "LOAD", "LOCAL", "LOCALTIME", "LOCALTIMESTAMP", "LOCATION", - "LOCK_P", "LOGIN_P", "MATCH", "MAXVALUE", "MINUTE_P", "MINVALUE", - "MODE", "MONTH_P", "MOVE", "NAMES", "NATIONAL", "NATURAL", "NCHAR", - "NEW", "NEXT", "NO", "NOCREATEDB", "NOCREATEROLE", "NOCREATEUSER", - "NOINHERIT", "NOLOGIN_P", "NONE", "NOSUPERUSER", "NOT", "NOTHING", - "NOTIFY", "NOTNULL", "NOWAIT", "NULL_P", "NULLIF", "NUMERIC", - "OBJECT_P", "OF", "OFF", "OFFSET", "OIDS", "OLD", "ON", "ONLY", - "OPERATOR", "OPTION", "OR", "ORDER", "OUT_P", "OUTER_P", "OVERLAPS", - "OVERLAY", "OWNER", "PARTIAL", "PASSWORD", "PLACING", "POSITION", - "PRECISION", "PRESERVE", "PREPARE", "PREPARED", "PRIMARY", "PRIOR", - "PRIVILEGES", "PROCEDURAL", "PROCEDURE", "QUOTE", "READ", "REAL", - "RECHECK", "REFERENCES", "REINDEX", "RELATIVE_P", "RELEASE", "RENAME", - "REPEATABLE", "REPLACE", "RESET", "RESTART", "RESTRICT", "RETURNS", - "REVOKE", "RIGHT", "ROLE", "ROLLBACK", "ROW", "ROWS", "RULE", - "SAVEPOINT", "SCHEMA", "SCROLL", "SECOND_P", "SECURITY", "SELECT", - "SEQUENCE", "SERIALIZABLE", "SESSION", "SESSION_USER", "SET", "SETOF", - "SHARE", "SHOW", "SIMILAR", "SIMPLE", "SMALLINT", "SOME", "STABLE", - "START", "STATEMENT", "STATISTICS", "STDIN", "STDOUT", "STORAGE", - "STRICT_P", "SUBSTRING", "SUPERUSER_P", "SYMMETRIC", "SYSID", - "SYSTEM_P", "TABLE", "TABLESPACE", "TEMP", "TEMPLATE", "TEMPORARY", - "THEN", "TIME", "TIMESTAMP", "TO", "TOAST", "TRAILING", "TRANSACTION", - "TREAT", "TRIGGER", "TRIM", "TRUE_P", "TRUNCATE", "TRUSTED", "TYPE_P", - "UNCOMMITTED", "UNENCRYPTED", "UNION", "UNIQUE", "UNKNOWN", "UNLISTEN", - "UNTIL", "UPDATE", "USER", "USING", "VACUUM", "VALID", "VALIDATOR", - "VALUES", "VARCHAR", "VARYING", "VERBOSE", "VIEW", "VOLATILE", "WHEN", - "WHERE", "WITH", "WITHOUT", "WORK", "WRITE", "YEAR_P", "ZONE", - "UNIONJOIN", "IDENT", "FCONST", "SCONST", "BCONST", "XCONST", "Op", - "ICONST", "PARAM", "'='", "'<'", "'>'", "POSTFIXOP", "'+'", "'-'", - "'*'", "'/'", "'%'", "'^'", "UMINUS", "'['", "']'", "'('", "')'", - "TYPECAST", "'.'", "';'", "','", "':'", "$accept", "stmtblock", - "stmtmulti", "stmt", "CreateRoleStmt", "opt_with", "OptRoleList", - "OptRoleElem", "CreateUserStmt", "AlterRoleStmt", "AlterRoleSetStmt", - "AlterUserStmt", "AlterUserSetStmt", "DropRoleStmt", "DropUserStmt", - "CreateGroupStmt", "AlterGroupStmt", "add_drop", "DropGroupStmt", - "CreateSchemaStmt", "OptSchemaName", "OptSchemaEltList", "schema_stmt", - "VariableSetStmt", "set_rest", "var_name", "var_list_or_default", - "var_list", "var_value", "iso_level", "opt_boolean", "zone_value", - "opt_encoding", "ColId_or_Sconst", "VariableShowStmt", - "VariableResetStmt", "ConstraintsSetStmt", "constraints_set_list", - "constraints_set_mode", "CheckPointStmt", "AlterTableStmt", - "alter_table_cmds", "alter_table_cmd", "alter_rel_cmds", - "alter_rel_cmd", "alter_column_default", "opt_drop_behavior", - "alter_using", "ClosePortalStmt", "CopyStmt", "copy_from", - "copy_file_name", "copy_opt_list", "copy_opt_item", "opt_binary", - "opt_oids", "copy_delimiter", "opt_using", "CreateStmt", "OptTemp", - "OptTableElementList", "TableElementList", "TableElement", "columnDef", - "ColQualList", "ColConstraint", "ColConstraintElem", "ConstraintAttr", - "TableLikeClause", "like_including_defaults", "TableConstraint", - "ConstraintElem", "opt_column_list", "columnList", "columnElem", - "key_match", "key_actions", "key_update", "key_delete", "key_action", - "OptInherit", "OptWithOids", "OnCommitOption", "OptTableSpace", - "OptConsTableSpace", "CreateAsStmt", "WithOidsAs", "OptCreateAs", - "CreateAsList", "CreateAsElement", "CreateSeqStmt", "AlterSeqStmt", - "OptSeqList", "OptSeqElem", "opt_by", "NumericOnly", "FloatOnly", - "IntegerOnly", "CreatePLangStmt", "opt_trusted", "handler_name", - "opt_validator", "opt_lancompiler", "DropPLangStmt", "opt_procedural", - "CreateTableSpaceStmt", "OptTableSpaceOwner", "DropTableSpaceStmt", - "CreateTrigStmt", "TriggerActionTime", "TriggerEvents", - "TriggerOneEvent", "TriggerForSpec", "TriggerForOpt", "TriggerForType", - "TriggerFuncArgs", "TriggerFuncArg", "OptConstrFromTable", - "ConstraintAttributeSpec", "ConstraintDeferrabilitySpec", - "ConstraintTimeSpec", "DropTrigStmt", "CreateAssertStmt", - "DropAssertStmt", "DefineStmt", "definition", "def_list", "def_elem", - "def_arg", "CreateOpClassStmt", "opclass_item_list", "opclass_item", - "opt_default", "opt_recheck", "DropOpClassStmt", "DropStmt", - "drop_type", "any_name_list", "any_name", "attrs", "TruncateStmt", - "CommentStmt", "comment_type", "comment_text", "FetchStmt", - "fetch_direction", "from_in", "GrantStmt", "RevokeStmt", "privileges", - "privilege_list", "privilege", "privilege_target", "grantee_list", - "grantee", "opt_grant_grant_option", "function_with_argtypes_list", - "function_with_argtypes", "GrantRoleStmt", "RevokeRoleStmt", - "opt_grant_admin_option", "opt_granted_by", "IndexStmt", - "index_opt_unique", "access_method_clause", "index_params", - "index_elem", "opt_class", "CreateFunctionStmt", "opt_or_replace", - "func_args", "func_args_list", "func_arg", "arg_class", "param_name", - "func_return", "func_type", "createfunc_opt_list", - "common_func_opt_item", "createfunc_opt_item", "func_as", - "opt_definition", "AlterFunctionStmt", "alterfunc_opt_list", - "opt_restrict", "RemoveFuncStmt", "RemoveAggrStmt", "aggr_argtype", - "RemoveOperStmt", "oper_argtypes", "any_operator", "CreateCastStmt", - "cast_context", "DropCastStmt", "ReindexStmt", "reindex_type", - "opt_force", "RenameStmt", "opt_column", "AlterObjectSchemaStmt", - "AlterOwnerStmt", "RuleStmt", "@1", "RuleActionList", "RuleActionMulti", - "RuleActionStmt", "RuleActionStmtOrEmpty", "event", "opt_instead", - "DropRuleStmt", "NotifyStmt", "ListenStmt", "UnlistenStmt", - "TransactionStmt", "opt_transaction", "transaction_mode_item", - "transaction_mode_list", "transaction_mode_list_or_empty", "ViewStmt", - "LoadStmt", "CreatedbStmt", "createdb_opt_list", "createdb_opt_item", - "opt_equal", "AlterDatabaseStmt", "AlterDatabaseSetStmt", - "alterdb_opt_list", "alterdb_opt_item", "DropdbStmt", - "CreateDomainStmt", "AlterDomainStmt", "opt_as", "CreateConversionStmt", - "ClusterStmt", "VacuumStmt", "AnalyzeStmt", "analyze_keyword", - "opt_verbose", "opt_full", "opt_freeze", "opt_name_list", "ExplainStmt", - "ExplainableStmt", "opt_analyze", "PrepareStmt", "prep_type_clause", - "prep_type_list", "PreparableStmt", "ExecuteStmt", - "execute_param_clause", "DeallocateStmt", "InsertStmt", "insert_rest", - "insert_column_list", "insert_column_item", "DeleteStmt", - "using_clause", "LockStmt", "opt_lock", "lock_type", "opt_nowait", - "UpdateStmt", "DeclareCursorStmt", "cursor_options", "opt_hold", - "SelectStmt", "select_with_parens", "select_no_parens", "select_clause", - "simple_select", "into_clause", "OptTempTableName", "opt_table", - "opt_all", "opt_distinct", "opt_sort_clause", "sort_clause", - "sortby_list", "sortby", "select_limit", "opt_select_limit", - "select_limit_value", "select_offset_value", "group_clause", - "having_clause", "for_locking_clause", "opt_for_locking_clause", - "locked_rels_list", "from_clause", "from_list", "table_ref", - "joined_table", "alias_clause", "join_type", "join_outer", "join_qual", - "relation_expr", "func_table", "where_clause", "TableFuncElementList", - "TableFuncElement", "Typename", "opt_array_bounds", "SimpleTypename", - "ConstTypename", "GenericType", "Numeric", "opt_float", "opt_numeric", - "opt_decimal", "Bit", "ConstBit", "BitWithLength", "BitWithoutLength", - "Character", "ConstCharacter", "CharacterWithLength", - "CharacterWithoutLength", "character", "opt_varying", "opt_charset", - "ConstDatetime", "ConstInterval", "opt_timezone", "opt_interval", - "a_expr", "b_expr", "c_expr", "func_expr", "row", "sub_type", "all_Op", - "MathOp", "qual_Op", "qual_all_Op", "subquery_Op", "expr_list", - "extract_list", "type_list", "array_expr_list", "array_expr", - "extract_arg", "overlay_list", "overlay_placing", "position_list", - "substr_list", "substr_from", "substr_for", "trim_list", "in_expr", - "case_expr", "when_clause_list", "when_clause", "case_default", - "case_arg", "columnref", "indirection_el", "indirection", - "opt_indirection", "opt_asymmetric", "target_list", "target_el", - "update_target_list", "update_target_el", "insert_target_list", - "insert_target_el", "relation_name", "qualified_name_list", - "qualified_name", "name_list", "name", "database_name", "access_method", - "attr_name", "index_name", "file_name", "func_name", "AexprConst", - "Iconst", "Sconst", "RoleId", "SignedIconst", "ColId", "type_name", - "function_name", "ColLabel", "unreserved_keyword", "col_name_keyword", - "func_name_keyword", "reserved_keyword", "SpecialRuleRelation", 0 + "$end", "error", "$undefined", "ABORT_P", "ABSOLUTE_P", "ACCESS", + "ACTION", "ADD", "ADMIN", "AFTER", "AGGREGATE", "ALL", "ALSO", "ALTER", + "ANALYSE", "ANALYZE", "AND", "ANY", "ARRAY", "AS", "ASC", "ASSERTION", + "ASSIGNMENT", "ASYMMETRIC", "AT", "AUTHORIZATION", "BACKWARD", "BEFORE", + "BEGIN_P", "BETWEEN", "BIGINT", "BINARY", "BIT", "BOOLEAN_P", "BOTH", + "BY", "CACHE", "CALLED", "CASCADE", "CASE", "CAST", "CHAIN", "CHAR_P", + "CHARACTER", "CHARACTERISTICS", "CHECK", "CHECKPOINT", "CLASS", "CLOSE", + "CLUSTER", "COALESCE", "COLLATE", "COLUMN", "COMMENT", "COMMIT", + "COMMITTED", "CONNECTION", "CONSTRAINT", "CONSTRAINTS", "CONVERSION_P", + "CONVERT", "COPY", "CREATE", "CREATEDB", "CREATEROLE", "CREATEUSER", + "CROSS", "CSV", "CURRENT_DATE", "CURRENT_ROLE", "CURRENT_TIME", + "CURRENT_TIMESTAMP", "CURRENT_USER", "CURSOR", "CYCLE", "DATABASE", + "DAY_P", "DEALLOCATE", "DEC", "DECIMAL_P", "DECLARE", "DEFAULT", + "DEFAULTS", "DEFERRABLE", "DEFERRED", "DEFINER", "DELETE_P", "DELIMITER", + "DELIMITERS", "DESC", "DISABLE_P", "DISTINCT", "DO", "DOMAIN_P", + "DOUBLE_P", "DROP", "EACH", "ELSE", "ENABLE_P", "ENCODING", "ENCRYPTED", + "END_P", "ESCAPE", "EXCEPT", "EXCLUDING", "EXCLUSIVE", "EXECUTE", + "EXISTS", "EXPLAIN", "EXTERNAL", "EXTRACT", "FALSE_P", "FETCH", + "FIRST_P", "FLOAT_P", "FOR", "FORCE", "FOREIGN", "FORWARD", "FREEZE", + "FROM", "FULL", "FUNCTION", "GLOBAL", "GRANT", "GRANTED", "GREATEST", + "GROUP_P", "HANDLER", "HAVING", "HEADER", "HOLD", "HOUR_P", "ILIKE", + "IMMEDIATE", "IMMUTABLE", "IMPLICIT_P", "IN_P", "INCLUDING", "INCREMENT", + "INDEX", "INHERIT", "INHERITS", "INITIALLY", "INNER_P", "INOUT", + "INPUT_P", "INSENSITIVE", "INSERT", "INSTEAD", "INT_P", "INTEGER", + "INTERSECT", "INTERVAL", "INTO", "INVOKER", "IS", "ISNULL", "ISOLATION", + "JOIN", "KEY", "LANCOMPILER", "LANGUAGE", "LARGE_P", "LAST_P", "LEADING", + "LEAST", "LEFT", "LEVEL", "LIKE", "LIMIT", "LISTEN", "LOAD", "LOCAL", + "LOCALTIME", "LOCALTIMESTAMP", "LOCATION", "LOCK_P", "LOGIN_P", "MATCH", + "MAXVALUE", "MINUTE_P", "MINVALUE", "MODE", "MONTH_P", "MOVE", "NAMES", + "NATIONAL", "NATURAL", "NCHAR", "NEW", "NEXT", "NO", "NOCREATEDB", + "NOCREATEROLE", "NOCREATEUSER", "NOINHERIT", "NOLOGIN_P", "NONE", + "NOSUPERUSER", "NOT", "NOTHING", "NOTIFY", "NOTNULL", "NOWAIT", "NULL_P", + "NULLIF", "NUMERIC", "OBJECT_P", "OF", "OFF", "OFFSET", "OIDS", "OLD", + "ON", "ONLY", "OPERATOR", "OPTION", "OR", "ORDER", "OUT_P", "OUTER_P", + "OVERLAPS", "OVERLAY", "OWNER", "PARTIAL", "PASSWORD", "PLACING", + "POSITION", "PRECISION", "PRESERVE", "PREPARE", "PREPARED", "PRIMARY", + "PRIOR", "PRIVILEGES", "PROCEDURAL", "PROCEDURE", "QUOTE", "READ", + "REAL", "RECHECK", "REFERENCES", "REINDEX", "RELATIVE_P", "RELEASE", + "RENAME", "REPEATABLE", "REPLACE", "RESET", "RESTART", "RESTRICT", + "RETURNS", "REVOKE", "RIGHT", "ROLE", "ROLLBACK", "ROW", "ROWS", "RULE", + "SAVEPOINT", "SCHEMA", "SCROLL", "SECOND_P", "SECURITY", "SELECT", + "SEQUENCE", "SERIALIZABLE", "SESSION", "SESSION_USER", "SET", "SETOF", + "SHARE", "SHOW", "SIMILAR", "SIMPLE", "SMALLINT", "SOME", "STABLE", + "START", "STATEMENT", "STATISTICS", "STDIN", "STDOUT", "STORAGE", + "STRICT_P", "SUBSTRING", "SUPERUSER_P", "SYMMETRIC", "SYSID", "SYSTEM_P", + "TABLE", "TABLESPACE", "TEMP", "TEMPLATE", "TEMPORARY", "THEN", "TIME", + "TIMESTAMP", "TO", "TOAST", "TRAILING", "TRANSACTION", "TREAT", + "TRIGGER", "TRIM", "TRUE_P", "TRUNCATE", "TRUSTED", "TYPE_P", + "UNCOMMITTED", "UNENCRYPTED", "UNION", "UNIQUE", "UNKNOWN", "UNLISTEN", + "UNTIL", "UPDATE", "USER", "USING", "VACUUM", "VALID", "VALIDATOR", + "VALUES", "VARCHAR", "VARYING", "VERBOSE", "VIEW", "VOLATILE", "WHEN", + "WHERE", "WITH", "WITHOUT", "WORK", "WRITE", "YEAR_P", "ZONE", + "UNIONJOIN", "IDENT", "FCONST", "SCONST", "BCONST", "XCONST", "Op", + "ICONST", "PARAM", "'='", "'<'", "'>'", "POSTFIXOP", "'+'", "'-'", "'*'", + "'/'", "'%'", "'^'", "UMINUS", "'['", "']'", "'('", "')'", "TYPECAST", + "'.'", "';'", "','", "':'", "$accept", "stmtblock", "stmtmulti", "stmt", + "CreateRoleStmt", "opt_with", "OptRoleList", "OptRoleElem", + "CreateUserStmt", "AlterRoleStmt", "AlterRoleSetStmt", "AlterUserStmt", + "AlterUserSetStmt", "DropRoleStmt", "DropUserStmt", "CreateGroupStmt", + "AlterGroupStmt", "add_drop", "DropGroupStmt", "CreateSchemaStmt", + "OptSchemaName", "OptSchemaEltList", "schema_stmt", "VariableSetStmt", + "set_rest", "var_name", "var_list_or_default", "var_list", "var_value", + "iso_level", "opt_boolean", "zone_value", "opt_encoding", + "ColId_or_Sconst", "VariableShowStmt", "VariableResetStmt", + "ConstraintsSetStmt", "constraints_set_list", "constraints_set_mode", + "CheckPointStmt", "AlterTableStmt", "alter_table_cmds", + "alter_table_cmd", "alter_rel_cmds", "alter_rel_cmd", + "alter_column_default", "opt_drop_behavior", "alter_using", + "ClosePortalStmt", "CopyStmt", "copy_from", "copy_file_name", + "copy_opt_list", "copy_opt_item", "opt_binary", "opt_oids", + "copy_delimiter", "opt_using", "CreateStmt", "OptTemp", + "OptTableElementList", "TableElementList", "TableElement", "columnDef", + "ColQualList", "ColConstraint", "ColConstraintElem", "ConstraintAttr", + "TableLikeClause", "like_including_defaults", "TableConstraint", + "ConstraintElem", "opt_column_list", "columnList", "columnElem", + "key_match", "key_actions", "key_update", "key_delete", "key_action", + "OptInherit", "OptWithOids", "OnCommitOption", "OptTableSpace", + "OptConsTableSpace", "CreateAsStmt", "WithOidsAs", "OptCreateAs", + "CreateAsList", "CreateAsElement", "CreateSeqStmt", "AlterSeqStmt", + "OptSeqList", "OptSeqElem", "opt_by", "NumericOnly", "FloatOnly", + "IntegerOnly", "CreatePLangStmt", "opt_trusted", "handler_name", + "opt_validator", "opt_lancompiler", "DropPLangStmt", "opt_procedural", + "CreateTableSpaceStmt", "OptTableSpaceOwner", "DropTableSpaceStmt", + "CreateTrigStmt", "TriggerActionTime", "TriggerEvents", + "TriggerOneEvent", "TriggerForSpec", "TriggerForOpt", "TriggerForType", + "TriggerFuncArgs", "TriggerFuncArg", "OptConstrFromTable", + "ConstraintAttributeSpec", "ConstraintDeferrabilitySpec", + "ConstraintTimeSpec", "DropTrigStmt", "CreateAssertStmt", + "DropAssertStmt", "DefineStmt", "definition", "def_list", "def_elem", + "def_arg", "CreateOpClassStmt", "opclass_item_list", "opclass_item", + "opt_default", "opt_recheck", "DropOpClassStmt", "DropStmt", "drop_type", + "any_name_list", "any_name", "attrs", "TruncateStmt", "CommentStmt", + "comment_type", "comment_text", "FetchStmt", "fetch_direction", + "from_in", "GrantStmt", "RevokeStmt", "privileges", "privilege_list", + "privilege", "privilege_target", "grantee_list", "grantee", + "opt_grant_grant_option", "function_with_argtypes_list", + "function_with_argtypes", "GrantRoleStmt", "RevokeRoleStmt", + "opt_grant_admin_option", "opt_granted_by", "IndexStmt", + "index_opt_unique", "access_method_clause", "index_params", "index_elem", + "opt_class", "CreateFunctionStmt", "opt_or_replace", "func_args", + "func_args_list", "func_arg", "arg_class", "param_name", "func_return", + "func_type", "createfunc_opt_list", "common_func_opt_item", + "createfunc_opt_item", "func_as", "opt_definition", "AlterFunctionStmt", + "alterfunc_opt_list", "opt_restrict", "RemoveFuncStmt", "RemoveAggrStmt", + "aggr_argtype", "RemoveOperStmt", "oper_argtypes", "any_operator", + "CreateCastStmt", "cast_context", "DropCastStmt", "ReindexStmt", + "reindex_type", "opt_force", "RenameStmt", "opt_column", + "AlterObjectSchemaStmt", "AlterOwnerStmt", "RuleStmt", "@1", + "RuleActionList", "RuleActionMulti", "RuleActionStmt", + "RuleActionStmtOrEmpty", "event", "opt_instead", "DropRuleStmt", + "NotifyStmt", "ListenStmt", "UnlistenStmt", "TransactionStmt", + "opt_transaction", "transaction_mode_item", "transaction_mode_list", + "transaction_mode_list_or_empty", "ViewStmt", "LoadStmt", "CreatedbStmt", + "createdb_opt_list", "createdb_opt_item", "opt_equal", + "AlterDatabaseStmt", "AlterDatabaseSetStmt", "alterdb_opt_list", + "alterdb_opt_item", "DropdbStmt", "CreateDomainStmt", "AlterDomainStmt", + "opt_as", "CreateConversionStmt", "ClusterStmt", "VacuumStmt", + "AnalyzeStmt", "analyze_keyword", "opt_verbose", "opt_full", + "opt_freeze", "opt_name_list", "ExplainStmt", "ExplainableStmt", + "opt_analyze", "PrepareStmt", "prep_type_clause", "prep_type_list", + "PreparableStmt", "ExecuteStmt", "execute_param_clause", + "DeallocateStmt", "InsertStmt", "insert_rest", "insert_column_list", + "insert_column_item", "DeleteStmt", "using_clause", "LockStmt", + "opt_lock", "lock_type", "opt_nowait", "UpdateStmt", "DeclareCursorStmt", + "cursor_options", "opt_hold", "SelectStmt", "select_with_parens", + "select_no_parens", "select_clause", "simple_select", "into_clause", + "OptTempTableName", "opt_table", "opt_all", "opt_distinct", + "opt_sort_clause", "sort_clause", "sortby_list", "sortby", + "select_limit", "opt_select_limit", "select_limit_value", + "select_offset_value", "group_clause", "having_clause", + "for_locking_clause", "opt_for_locking_clause", "locked_rels_list", + "from_clause", "from_list", "table_ref", "joined_table", "alias_clause", + "join_type", "join_outer", "join_qual", "relation_expr", "func_table", + "where_clause", "TableFuncElementList", "TableFuncElement", "Typename", + "opt_array_bounds", "SimpleTypename", "ConstTypename", "GenericType", + "Numeric", "opt_float", "opt_numeric", "opt_decimal", "Bit", "ConstBit", + "BitWithLength", "BitWithoutLength", "Character", "ConstCharacter", + "CharacterWithLength", "CharacterWithoutLength", "character", + "opt_varying", "opt_charset", "ConstDatetime", "ConstInterval", + "opt_timezone", "opt_interval", "a_expr", "b_expr", "c_expr", + "func_expr", "row", "sub_type", "all_Op", "MathOp", "qual_Op", + "qual_all_Op", "subquery_Op", "expr_list", "extract_list", "type_list", + "array_expr_list", "array_expr", "extract_arg", "overlay_list", + "overlay_placing", "position_list", "substr_list", "substr_from", + "substr_for", "trim_list", "in_expr", "case_expr", "when_clause_list", + "when_clause", "case_default", "case_arg", "columnref", "indirection_el", + "indirection", "opt_indirection", "opt_asymmetric", "target_list", + "target_el", "update_target_list", "update_target_el", + "insert_target_list", "insert_target_el", "relation_name", + "qualified_name_list", "qualified_name", "name_list", "name", + "database_name", "access_method", "attr_name", "index_name", "file_name", + "func_name", "AexprConst", "Iconst", "Sconst", "RoleId", "SignedIconst", + "ColId", "type_name", "function_name", "ColLabel", "unreserved_keyword", + "col_name_keyword", "func_name_keyword", "reserved_keyword", + "SpecialRuleRelation", 0 }; #endif # ifdef YYPRINT /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to token YYLEX-NUM. */ -static const unsigned short yytoknum[] = +static const yytype_uint16 yytoknum[] = { 0, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, @@ -2153,7 +2289,7 @@ static const unsigned short yytoknum[] = # endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ -static const unsigned short yyr1[] = +static const yytype_uint16 yyr1[] = { 0, 366, 367, 368, 368, 369, 369, 369, 369, 369, 369, 369, 369, 369, 369, 369, 369, 369, 369, 369, @@ -2320,7 +2456,7 @@ static const unsigned short yyr1[] = }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ -static const unsigned char yyr2[] = +static const yytype_uint8 yyr2[] = { 0, 2, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -2489,7 +2625,7 @@ static const unsigned char yyr2[] = /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state STATE-NUM when YYTABLE doesn't specify something else to do. Zero means the default is an error. */ -static const unsigned short yydefact[] = +static const yytype_uint16 yydefact[] = { 88, 705, 0, 759, 758, 705, 199, 0, 752, 0, 705, 256, 271, 0, 0, 0, 382, 705, 0, 776, @@ -2774,8 +2910,8 @@ static const unsigned short yydefact[] = 676, 405, 449, 668, 0, 443, 388 }; -/* YYDEFGOTO[NTERM-NUM]. */ -static const short yydefgoto[] = +/* YYDEFGOTO[NTERM-NUM]. */ +static const yytype_int16 yydefgoto[] = { -1, 44, 45, 46, 47, 891, 1405, 1804, 48, 49, 50, 51, 52, 53, 54, 55, 56, 913, 57, 58, @@ -3108,7 +3244,7 @@ static const int yypact[] = }; /* YYPGOTO[NTERM-NUM]. */ -static const short yypgoto[] = +static const yytype_int16 yypgoto[] = { -2400, -2400, -2400, 1726, -2400, -579, -324, -2400, -2400, -2400, -2400, -2400, -2400, -2400, -2400, -2400, -2400, -2400, -2400, -2400, @@ -3157,7 +3293,7 @@ static const short yypgoto[] = number is the opposite. If zero, do what YYDEFACT says. If YYTABLE_NINF, syntax error. */ #define YYTABLE_NINF -1457 -static const short yytable[] = +static const yytype_int16 yytable[] = { 131, 725, 1132, 554, 670, 436, 614, 1098, 130, 1538, 591, 1529, 595, 1512, 1109, 545, 1548, 598, 695, 587, @@ -6653,7 +6789,7 @@ static const short yytable[] = 435 }; -static const short yycheck[] = +static const yytype_int16 yycheck[] = { 0, 501, 694, 43, 424, 12, 146, 670, 0, 1135, 139, 1125, 141, 1113, 677, 39, 1153, 143, 452, 138, @@ -10151,7 +10287,7 @@ static const short yycheck[] = /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ -static const unsigned short yystos[] = +static const yytype_uint16 yystos[] = { 0, 3, 13, 14, 15, 28, 46, 48, 49, 53, 54, 61, 62, 77, 80, 86, 95, 101, 106, 108, @@ -10436,22 +10572,6 @@ static const unsigned short yystos[] = 363, 359, 360, 572, 481, 499, 360 }; -#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__) -# define YYSIZE_T __SIZE_TYPE__ -#endif -#if ! defined (YYSIZE_T) && defined (size_t) -# define YYSIZE_T size_t -#endif -#if ! defined (YYSIZE_T) -# if defined (__STDC__) || defined (__cplusplus) -# include <stddef.h> /* INFRINGES ON USER NAME SPACE */ -# define YYSIZE_T size_t -# endif -#endif -#if ! defined (YYSIZE_T) -# define YYSIZE_T unsigned int -#endif - #define yyerrok (yyerrstatus = 0) #define yyclearin (yychar = YYEMPTY) #define YYEMPTY (-2) @@ -10459,7 +10579,7 @@ static const unsigned short yystos[] = #define YYACCEPT goto yyacceptlab #define YYABORT goto yyabortlab -#define YYERROR goto yyerrlab1 +#define YYERROR goto yyerrorlab /* Like YYERROR except do call yyerror. This remains here temporarily @@ -10477,30 +10597,63 @@ do \ yychar = (Token); \ yylval = (Value); \ yytoken = YYTRANSLATE (yychar); \ - YYPOPSTACK; \ + YYPOPSTACK (1); \ goto yybackup; \ } \ else \ - { \ - yyerror ("syntax error: cannot back up");\ + { \ + yyerror (YY_("syntax error: cannot back up")); \ YYERROR; \ } \ -while (0) +while (YYID (0)) + #define YYTERROR 1 #define YYERRCODE 256 -/* YYLLOC_DEFAULT -- Compute the default location (before the actions - are run). */ +/* 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) \ - Current.first_line = Rhs[1].first_line; \ - Current.first_column = Rhs[1].first_column; \ - Current.last_line = Rhs[N].last_line; \ - Current.last_column = Rhs[N].last_column; +# 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 + +/* YY_LOCATION_PRINT -- Print the location on the stream. + This macro was not mandated originally: define only if we know + we won't break user code: when these are the locations we know. */ + +#ifndef YY_LOCATION_PRINT +# if YYLTYPE_IS_TRIVIAL +# define YY_LOCATION_PRINT(File, Loc) \ + fprintf (File, "%d.%d-%d.%d", \ + (Loc).first_line, (Loc).first_column, \ + (Loc).last_line, (Loc).last_column) +# else +# define YY_LOCATION_PRINT(File, Loc) ((void) 0) +# endif +#endif + + /* YYLEX -- calling `yylex' with the right arguments. */ #ifdef YYLEX_PARAM @@ -10521,42 +10674,96 @@ while (0) do { \ if (yydebug) \ YYFPRINTF Args; \ -} while (0) +} while (YYID (0)) -# define YYDSYMPRINT(Args) \ -do { \ - if (yydebug) \ - yysymprint Args; \ -} while (0) +# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \ +do { \ + if (yydebug) \ + { \ + YYFPRINTF (stderr, "%s ", Title); \ + yy_symbol_print (stderr, \ + Type, Value); \ + YYFPRINTF (stderr, "\n"); \ + } \ +} while (YYID (0)) -# define YYDSYMPRINTF(Title, Token, Value, Location) \ -do { \ - if (yydebug) \ - { \ - YYFPRINTF (stderr, "%s ", Title); \ - yysymprint (stderr, \ - Token, Value); \ - YYFPRINTF (stderr, "\n"); \ - } \ -} while (0) + +/*--------------------------------. +| Print this symbol on YYOUTPUT. | +`--------------------------------*/ + +/*ARGSUSED*/ +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static void +yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) +#else +static void +yy_symbol_value_print (yyoutput, yytype, yyvaluep) + FILE *yyoutput; + int yytype; + YYSTYPE const * const yyvaluep; +#endif +{ + if (!yyvaluep) + return; +# ifdef YYPRINT + if (yytype < YYNTOKENS) + YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); +# else + YYUSE (yyoutput); +# endif + switch (yytype) + { + default: + break; + } +} + + +/*--------------------------------. +| Print this symbol on YYOUTPUT. | +`--------------------------------*/ + +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static void +yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) +#else +static void +yy_symbol_print (yyoutput, yytype, yyvaluep) + FILE *yyoutput; + int yytype; + YYSTYPE const * const yyvaluep; +#endif +{ + if (yytype < YYNTOKENS) + YYFPRINTF (yyoutput, "token %s (", yytname[yytype]); + else + YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]); + + yy_symbol_value_print (yyoutput, yytype, yyvaluep); + YYFPRINTF (yyoutput, ")"); +} /*------------------------------------------------------------------. | yy_stack_print -- Print the state stack from its BOTTOM up to its | -| TOP (cinluded). | +| TOP (included). | `------------------------------------------------------------------*/ -#if defined (__STDC__) || defined (__cplusplus) +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) static void -yy_stack_print (short *bottom, short *top) +yy_stack_print (yytype_int16 *bottom, yytype_int16 *top) #else static void yy_stack_print (bottom, top) - short *bottom; - short *top; + yytype_int16 *bottom; + yytype_int16 *top; #endif { YYFPRINTF (stderr, "Stack now"); - for (/* Nothing. */; bottom <= top; ++bottom) + for (; bottom <= top; ++bottom) YYFPRINTF (stderr, " %d", *bottom); YYFPRINTF (stderr, "\n"); } @@ -10565,45 +10772,52 @@ yy_stack_print (bottom, top) do { \ if (yydebug) \ yy_stack_print ((Bottom), (Top)); \ -} while (0) +} while (YYID (0)) /*------------------------------------------------. | Report that the YYRULE is going to be reduced. | `------------------------------------------------*/ -#if defined (__STDC__) || defined (__cplusplus) +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) static void -yy_reduce_print (int yyrule) +yy_reduce_print (YYSTYPE *yyvsp, int yyrule) #else static void -yy_reduce_print (yyrule) +yy_reduce_print (yyvsp, yyrule) + YYSTYPE *yyvsp; int yyrule; #endif { + int yynrhs = yyr2[yyrule]; int yyi; - unsigned int yylineno = yyrline[yyrule]; - YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ", - yyrule - 1, yylineno); - /* Print the symbols being reduced, and their result. */ - for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++) - YYFPRINTF (stderr, "%s ", yytname [yyrhs[yyi]]); - YYFPRINTF (stderr, "-> %s\n", yytname [yyr1[yyrule]]); + unsigned long int yylno = yyrline[yyrule]; + YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n", + yyrule - 1, yylno); + /* The symbols being reduced. */ + for (yyi = 0; yyi < yynrhs; yyi++) + { + fprintf (stderr, " $%d = ", yyi + 1); + yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi], + &(yyvsp[(yyi + 1) - (yynrhs)]) + ); + fprintf (stderr, "\n"); + } } # define YY_REDUCE_PRINT(Rule) \ do { \ if (yydebug) \ - yy_reduce_print (Rule); \ -} while (0) + yy_reduce_print (yyvsp, Rule); \ +} while (YYID (0)) /* Nonzero means print parse trace. It is left uninitialized so that multiple parsers can coexist. */ int yydebug; #else /* !YYDEBUG */ # define YYDPRINTF(Args) -# define YYDSYMPRINT(Args) -# define YYDSYMPRINTF(Title, Token, Value, Location) +# define YY_SYMBOL_PRINT(Title, Type, Value, Location) # define YY_STACK_PRINT(Bottom, Top) # define YY_REDUCE_PRINT(Rule) #endif /* !YYDEBUG */ @@ -10618,13 +10832,9 @@ int yydebug; if the built-in stack extension method is used). Do not make this value too large; the results are undefined if - SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH) + YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH) evaluated with infinite-precision integer arithmetic. */ -#if YYMAXDEPTH == 0 -# undef YYMAXDEPTH -#endif - #ifndef YYMAXDEPTH # define YYMAXDEPTH 10000 #endif @@ -10634,45 +10844,47 @@ int yydebug; #if YYERROR_VERBOSE # ifndef yystrlen -# if defined (__GLIBC__) && defined (_STRING_H) +# if defined __GLIBC__ && defined _STRING_H # define yystrlen strlen # else /* Return the length of YYSTR. */ +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) static YYSIZE_T -# if defined (__STDC__) || defined (__cplusplus) yystrlen (const char *yystr) -# else +#else +static YYSIZE_T yystrlen (yystr) - const char *yystr; -# endif + const char *yystr; +#endif { - register const char *yys = yystr; - - while (*yys++ != '\0') + YYSIZE_T yylen; + for (yylen = 0; yystr[yylen]; yylen++) continue; - - return yys - yystr - 1; + return yylen; } # endif # endif # ifndef yystpcpy -# if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE) +# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE # define yystpcpy stpcpy # else /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in YYDEST. */ +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) static char * -# if defined (__STDC__) || defined (__cplusplus) yystpcpy (char *yydest, const char *yysrc) -# else +#else +static char * yystpcpy (yydest, yysrc) - char *yydest; - const char *yysrc; -# endif + char *yydest; + const char *yysrc; +#endif { - register char *yyd = yydest; - register const char *yys = yysrc; + char *yyd = yydest; + const char *yys = yysrc; while ((*yyd++ = *yys++) != '\0') continue; @@ -10682,70 +10894,192 @@ yystpcpy (yydest, yysrc) # endif # endif -#endif /* !YYERROR_VERBOSE */ +# ifndef yytnamerr +/* Copy to YYRES the contents of YYSTR after stripping away unnecessary + quotes and backslashes, so that it's suitable for yyerror. The + heuristic is that double-quoting is unnecessary unless the string + contains an apostrophe, a comma, or backslash (other than + backslash-backslash). YYSTR is taken from yytname. If YYRES is + null, do not copy; instead, return the length of what the result + would have been. */ +static YYSIZE_T +yytnamerr (char *yyres, const char *yystr) +{ + if (*yystr == '"') + { + YYSIZE_T yyn = 0; + char const *yyp = yystr; + + for (;;) + switch (*++yyp) + { + case '\'': + case ',': + goto do_not_strip_quotes; + + case '\\': + if (*++yyp != '\\') + goto do_not_strip_quotes; + /* Fall through. */ + default: + if (yyres) + yyres[yyn] = *yyp; + yyn++; + break; + + case '"': + if (yyres) + yyres[yyn] = '\0'; + return yyn; + } + do_not_strip_quotes: ; + } - + if (! yyres) + return yystrlen (yystr); -#if YYDEBUG -/*--------------------------------. -| Print this symbol on YYOUTPUT. | -`--------------------------------*/ + return yystpcpy (yyres, yystr) - yyres; +} +# endif -#if defined (__STDC__) || defined (__cplusplus) -static void -yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep) -#else -static void -yysymprint (yyoutput, yytype, yyvaluep) - FILE *yyoutput; - int yytype; - YYSTYPE *yyvaluep; -#endif +/* Copy into YYRESULT an error message about the unexpected token + YYCHAR while in state YYSTATE. Return the number of bytes copied, + including the terminating null byte. If YYRESULT is null, do not + copy anything; just return the number of bytes that would be + copied. As a special case, return 0 if an ordinary "syntax error" + message will do. Return YYSIZE_MAXIMUM if overflow occurs during + size calculation. */ +static YYSIZE_T +yysyntax_error (char *yyresult, int yystate, int yychar) { - /* Pacify ``unused variable'' warnings. */ - (void) yyvaluep; + int yyn = yypact[yystate]; - if (yytype < YYNTOKENS) - { - YYFPRINTF (yyoutput, "token %s (", yytname[yytype]); -# ifdef YYPRINT - YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); -# endif - } + if (! (YYPACT_NINF < yyn && yyn <= YYLAST)) + return 0; else - YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]); - - switch (yytype) { - default: - break; + int yytype = YYTRANSLATE (yychar); + YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]); + YYSIZE_T yysize = yysize0; + YYSIZE_T yysize1; + int yysize_overflow = 0; + enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; + char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; + int yyx; + +# if 0 + /* This is so xgettext sees the translatable formats that are + constructed on the fly. */ + YY_("syntax error, unexpected %s"); + YY_("syntax error, unexpected %s, expecting %s"); + YY_("syntax error, unexpected %s, expecting %s or %s"); + YY_("syntax error, unexpected %s, expecting %s or %s or %s"); + YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"); +# endif + char *yyfmt; + char const *yyf; + static char const yyunexpected[] = "syntax error, unexpected %s"; + static char const yyexpecting[] = ", expecting %s"; + static char const yyor[] = " or %s"; + char yyformat[sizeof yyunexpected + + sizeof yyexpecting - 1 + + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2) + * (sizeof yyor - 1))]; + char const *yyprefix = yyexpecting; + + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST - yyn + 1; + int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + int yycount = 1; + + yyarg[0] = yytname[yytype]; + yyfmt = yystpcpy (yyformat, yyunexpected); + + for (yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) + { + if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) + { + yycount = 1; + yysize = yysize0; + yyformat[sizeof yyunexpected - 1] = '\0'; + break; + } + yyarg[yycount++] = yytname[yyx]; + yysize1 = yysize + yytnamerr (0, yytname[yyx]); + yysize_overflow |= (yysize1 < yysize); + yysize = yysize1; + yyfmt = yystpcpy (yyfmt, yyprefix); + yyprefix = yyor; + } + + yyf = YY_(yyformat); + yysize1 = yysize + yystrlen (yyf); + yysize_overflow |= (yysize1 < yysize); + yysize = yysize1; + + if (yysize_overflow) + return YYSIZE_MAXIMUM; + + if (yyresult) + { + /* Avoid sprintf, as that infringes on the user's name space. + Don't have undefined behavior even if the translation + produced a string with the wrong number of "%s"s. */ + char *yyp = yyresult; + int yyi = 0; + while ((*yyp = *yyf) != '\0') + { + if (*yyp == '%' && yyf[1] == 's' && yyi < yycount) + { + yyp += yytnamerr (yyp, yyarg[yyi++]); + yyf += 2; + } + else + { + yyp++; + yyf++; + } + } + } + return yysize; } - YYFPRINTF (yyoutput, ")"); } +#endif /* YYERROR_VERBOSE */ + -#endif /* ! YYDEBUG */ /*-----------------------------------------------. | Release the memory associated to this symbol. | `-----------------------------------------------*/ -#if defined (__STDC__) || defined (__cplusplus) +/*ARGSUSED*/ +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) static void -yydestruct (int yytype, YYSTYPE *yyvaluep) +yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep) #else static void -yydestruct (yytype, yyvaluep) +yydestruct (yymsg, yytype, yyvaluep) + const char *yymsg; int yytype; YYSTYPE *yyvaluep; #endif { - /* Pacify ``unused variable'' warnings. */ - (void) yyvaluep; + YYUSE (yyvaluep); + + if (!yymsg) + yymsg = "Deleting"; + YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp); switch (yytype) { default: - break; + break; } } @@ -10753,13 +11087,13 @@ yydestruct (yytype, yyvaluep) /* Prevent warnings from -Wmissing-prototypes. */ #ifdef YYPARSE_PARAM -# if defined (__STDC__) || defined (__cplusplus) +#if defined __STDC__ || defined __cplusplus int yyparse (void *YYPARSE_PARAM); -# else +#else int yyparse (); -# endif +#endif #else /* ! YYPARSE_PARAM */ -#if defined (__STDC__) || defined (__cplusplus) +#if defined __STDC__ || defined __cplusplus int yyparse (void); #else int yyparse (); @@ -10768,10 +11102,10 @@ int yyparse (); -/* The lookahead symbol. */ +/* The look-ahead symbol. */ int yychar; -/* The semantic value of the lookahead symbol. */ +/* The semantic value of the look-ahead symbol. */ YYSTYPE yylval; /* Number of syntax errors so far. */ @@ -10784,14 +11118,18 @@ int yynerrs; `----------*/ #ifdef YYPARSE_PARAM -# if defined (__STDC__) || defined (__cplusplus) -int yyparse (void *YYPARSE_PARAM) -# else -int yyparse (YYPARSE_PARAM) - void *YYPARSE_PARAM; -# endif +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +int +yyparse (void *YYPARSE_PARAM) +#else +int +yyparse (YYPARSE_PARAM) + void *YYPARSE_PARAM; +#endif #else /* ! YYPARSE_PARAM */ -#if defined (__STDC__) || defined (__cplusplus) +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) int yyparse (void) #else @@ -10802,13 +11140,19 @@ yyparse () #endif { - register int yystate; - register int yyn; + int yystate; + int yyn; int yyresult; /* Number of tokens to shift before error messages enabled. */ int yyerrstatus; - /* Lookahead token as an internal (translated) token number. */ + /* Look-ahead token as an internal (translated) token number. */ int yytoken = 0; +#if YYERROR_VERBOSE + /* Buffer for error messages, and its allocated size. */ + char yymsgbuf[128]; + char *yymsg = yymsgbuf; + YYSIZE_T yymsg_alloc = sizeof yymsgbuf; +#endif /* Three stacks and their tools: `yyss': related to states, @@ -10819,18 +11163,18 @@ yyparse () to reallocate them elsewhere. */ /* The state stack. */ - short yyssa[YYINITDEPTH]; - short *yyss = yyssa; - register short *yyssp; + yytype_int16 yyssa[YYINITDEPTH]; + yytype_int16 *yyss = yyssa; + yytype_int16 *yyssp; /* The semantic value stack. */ YYSTYPE yyvsa[YYINITDEPTH]; YYSTYPE *yyvs = yyvsa; - register YYSTYPE *yyvsp; + YYSTYPE *yyvsp; -#define YYPOPSTACK (yyvsp--, yyssp--) +#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)) YYSIZE_T yystacksize = YYINITDEPTH; @@ -10839,9 +11183,9 @@ yyparse () YYSTYPE yyval; - /* When reducing, the number of symbols on the RHS of the reduced - rule. */ - int yylen; + /* The number of symbols on the RHS of the reduced rule. + Keep to zero when no symbol should be popped. */ + int yylen = 0; YYDPRINTF ((stderr, "Starting parse\n")); @@ -10865,8 +11209,7 @@ yyparse () `------------------------------------------------------------*/ yynewstate: /* In all cases, when you get here, the value and location stacks - have just been pushed. so pushing a state here evens the stacks. - */ + have just been pushed. So pushing a state here evens the stacks. */ yyssp++; yysetstate: @@ -10879,18 +11222,18 @@ yyparse () #ifdef yyoverflow { - /* Give user a chance to reallocate the stack. Use copies of + /* Give user a chance to reallocate the stack. Use copies of these so that the &'s don't force the real ones into memory. */ YYSTYPE *yyvs1 = yyvs; - short *yyss1 = yyss; + yytype_int16 *yyss1 = yyss; /* Each stack pointer address is followed by the size of the data in use in that stack, in bytes. This used to be a conditional around just the two extra args, but that might be undefined if yyoverflow is a macro. */ - yyoverflow ("parser stack overflow", + yyoverflow (YY_("memory exhausted"), &yyss1, yysize * sizeof (*yyssp), &yyvs1, yysize * sizeof (*yyvsp), @@ -10901,21 +11244,21 @@ yyparse () } #else /* no yyoverflow */ # ifndef YYSTACK_RELOCATE - goto yyoverflowlab; + goto yyexhaustedlab; # else /* Extend the stack our own way. */ if (YYMAXDEPTH <= yystacksize) - goto yyoverflowlab; + goto yyexhaustedlab; yystacksize *= 2; if (YYMAXDEPTH < yystacksize) yystacksize = YYMAXDEPTH; { - short *yyss1 = yyss; + yytype_int16 *yyss1 = yyss; union yyalloc *yyptr = (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); if (! yyptr) - goto yyoverflowlab; + goto yyexhaustedlab; YYSTACK_RELOCATE (yyss); YYSTACK_RELOCATE (yyvs); @@ -10946,19 +11289,17 @@ yyparse () `-----------*/ yybackup: -/* Do appropriate processing given the current state. */ -/* Read a lookahead token if we need one and don't already have one. */ -/* yyresume: */ - - /* First try to decide what to do without reference to lookahead token. */ + /* Do appropriate processing given the current state. Read a + look-ahead token if we need one and don't already have one. */ + /* First try to decide what to do without reference to look-ahead token. */ yyn = yypact[yystate]; if (yyn == YYPACT_NINF) goto yydefault; - /* Not known => get a lookahead token if don't already have one. */ + /* Not known => get a look-ahead token if don't already have one. */ - /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */ + /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol. */ if (yychar == YYEMPTY) { YYDPRINTF ((stderr, "Reading a token: ")); @@ -10973,7 +11314,7 @@ yybackup: else { yytoken = YYTRANSLATE (yychar); - YYDSYMPRINTF ("Next token is", yytoken, &yylval, &yylloc); + YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc); } /* If the proper action on seeing token YYTOKEN is to reduce or to @@ -10993,22 +11334,21 @@ yybackup: if (yyn == YYFINAL) YYACCEPT; - /* Shift the lookahead token. */ - YYDPRINTF ((stderr, "Shifting token %s, ", yytname[yytoken])); - - /* Discard the token being shifted unless it is eof. */ - if (yychar != YYEOF) - yychar = YYEMPTY; - - *++yyvsp = yylval; - - /* Count tokens shifted since error; after three, turn off error status. */ if (yyerrstatus) yyerrstatus--; + /* Shift the look-ahead token. */ + YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); + + /* Discard the shifted token unless it is eof. */ + if (yychar != YYEOF) + yychar = YYEMPTY; + yystate = yyn; + *++yyvsp = yylval; + goto yynewstate; @@ -11045,30 +11385,30 @@ yyreduce: { case 2: #line 478 "gram.y" - { parsetree = yyvsp[0].list; } + { parsetree = (yyvsp[(1) - (1)].list); } break; case 3: #line 483 "gram.y" - { if (yyvsp[0].node != NULL) - yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); + { if ((yyvsp[(3) - (3)].node) != NULL) + (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); else - yyval.list = yyvsp[-2].list; + (yyval.list) = (yyvsp[(1) - (3)].list); } break; case 4: #line 489 "gram.y" - { if (yyvsp[0].node != NULL) - yyval.list = list_make1(yyvsp[0].node); + { if ((yyvsp[(1) - (1)].node) != NULL) + (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); else - yyval.list = NIL; + (yyval.list) = NIL; } break; case 88: #line 581 "gram.y" - { yyval.node = NULL; } + { (yyval.node) = NULL; } break; case 89: @@ -11076,9 +11416,9 @@ yyreduce: { CreateRoleStmt *n = makeNode(CreateRoleStmt); n->stmt_type = ROLESTMT_ROLE; - n->role = yyvsp[-2].str; - n->options = yyvsp[0].list; - yyval.node = (Node *)n; + n->role = (yyvsp[(3) - (5)].str); + n->options = (yyvsp[(5) - (5)].list); + (yyval.node) = (Node *)n; } break; @@ -11094,91 +11434,91 @@ yyreduce: case 92: #line 612 "gram.y" - { yyval.list = lappend(yyvsp[-1].list, yyvsp[0].defelt); } + { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); } break; case 93: #line 613 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 94: #line 618 "gram.y" { - yyval.defelt = makeDefElem("password", - (Node *)makeString(yyvsp[0].str)); + (yyval.defelt) = makeDefElem("password", + (Node *)makeString((yyvsp[(2) - (2)].str))); } break; case 95: #line 623 "gram.y" { - yyval.defelt = makeDefElem("encryptedPassword", - (Node *)makeString(yyvsp[0].str)); + (yyval.defelt) = makeDefElem("encryptedPassword", + (Node *)makeString((yyvsp[(3) - (3)].str))); } break; case 96: #line 628 "gram.y" { - yyval.defelt = makeDefElem("unencryptedPassword", - (Node *)makeString(yyvsp[0].str)); + (yyval.defelt) = makeDefElem("unencryptedPassword", + (Node *)makeString((yyvsp[(3) - (3)].str))); } break; case 97: #line 633 "gram.y" { - yyval.defelt = makeDefElem("superuser", (Node *)makeInteger(TRUE)); + (yyval.defelt) = makeDefElem("superuser", (Node *)makeInteger(TRUE)); } break; case 98: #line 637 "gram.y" { - yyval.defelt = makeDefElem("superuser", (Node *)makeInteger(FALSE)); + (yyval.defelt) = makeDefElem("superuser", (Node *)makeInteger(FALSE)); } break; case 99: #line 641 "gram.y" { - yyval.defelt = makeDefElem("inherit", (Node *)makeInteger(TRUE)); + (yyval.defelt) = makeDefElem("inherit", (Node *)makeInteger(TRUE)); } break; case 100: #line 645 "gram.y" { - yyval.defelt = makeDefElem("inherit", (Node *)makeInteger(FALSE)); + (yyval.defelt) = makeDefElem("inherit", (Node *)makeInteger(FALSE)); } break; case 101: #line 649 "gram.y" { - yyval.defelt = makeDefElem("createdb", (Node *)makeInteger(TRUE)); + (yyval.defelt) = makeDefElem("createdb", (Node *)makeInteger(TRUE)); } break; case 102: #line 653 "gram.y" { - yyval.defelt = makeDefElem("createdb", (Node *)makeInteger(FALSE)); + (yyval.defelt) = makeDefElem("createdb", (Node *)makeInteger(FALSE)); } break; case 103: #line 657 "gram.y" { - yyval.defelt = makeDefElem("createrole", (Node *)makeInteger(TRUE)); + (yyval.defelt) = makeDefElem("createrole", (Node *)makeInteger(TRUE)); } break; case 104: #line 661 "gram.y" { - yyval.defelt = makeDefElem("createrole", (Node *)makeInteger(FALSE)); + (yyval.defelt) = makeDefElem("createrole", (Node *)makeInteger(FALSE)); } break; @@ -11186,84 +11526,84 @@ yyreduce: #line 665 "gram.y" { /* For backwards compatibility, synonym for SUPERUSER */ - yyval.defelt = makeDefElem("superuser", (Node *)makeInteger(TRUE)); + (yyval.defelt) = makeDefElem("superuser", (Node *)makeInteger(TRUE)); } break; case 106: #line 670 "gram.y" { - yyval.defelt = makeDefElem("superuser", (Node *)makeInteger(FALSE)); + (yyval.defelt) = makeDefElem("superuser", (Node *)makeInteger(FALSE)); } break; case 107: #line 674 "gram.y" { - yyval.defelt = makeDefElem("canlogin", (Node *)makeInteger(TRUE)); + (yyval.defelt) = makeDefElem("canlogin", (Node *)makeInteger(TRUE)); } break; case 108: #line 678 "gram.y" { - yyval.defelt = makeDefElem("canlogin", (Node *)makeInteger(FALSE)); + (yyval.defelt) = makeDefElem("canlogin", (Node *)makeInteger(FALSE)); } break; case 109: #line 682 "gram.y" { - yyval.defelt = makeDefElem("connectionlimit", (Node *)makeInteger(yyvsp[0].ival)); + (yyval.defelt) = makeDefElem("connectionlimit", (Node *)makeInteger((yyvsp[(3) - (3)].ival))); } break; case 110: #line 686 "gram.y" { - yyval.defelt = makeDefElem("validUntil", (Node *)makeString(yyvsp[0].str)); + (yyval.defelt) = makeDefElem("validUntil", (Node *)makeString((yyvsp[(3) - (3)].str))); } break; case 111: #line 691 "gram.y" { - yyval.defelt = makeDefElem("rolemembers", (Node *)yyvsp[0].list); + (yyval.defelt) = makeDefElem("rolemembers", (Node *)(yyvsp[(2) - (2)].list)); } break; case 112: #line 696 "gram.y" { - yyval.defelt = makeDefElem("sysid", (Node *)makeInteger(yyvsp[0].ival)); + (yyval.defelt) = makeDefElem("sysid", (Node *)makeInteger((yyvsp[(2) - (2)].ival))); } break; case 113: #line 700 "gram.y" { - yyval.defelt = makeDefElem("adminmembers", (Node *)yyvsp[0].list); + (yyval.defelt) = makeDefElem("adminmembers", (Node *)(yyvsp[(2) - (2)].list)); } break; case 114: #line 704 "gram.y" { - yyval.defelt = makeDefElem("rolemembers", (Node *)yyvsp[0].list); + (yyval.defelt) = makeDefElem("rolemembers", (Node *)(yyvsp[(2) - (2)].list)); } break; case 115: #line 708 "gram.y" { - yyval.defelt = makeDefElem("addroleto", (Node *)yyvsp[0].list); + (yyval.defelt) = makeDefElem("addroleto", (Node *)(yyvsp[(3) - (3)].list)); } break; case 116: #line 712 "gram.y" { - yyval.defelt = makeDefElem("addroleto", (Node *)yyvsp[0].list); + (yyval.defelt) = makeDefElem("addroleto", (Node *)(yyvsp[(3) - (3)].list)); } break; @@ -11272,9 +11612,9 @@ yyreduce: { CreateRoleStmt *n = makeNode(CreateRoleStmt); n->stmt_type = ROLESTMT_USER; - n->role = yyvsp[-2].str; - n->options = yyvsp[0].list; - yyval.node = (Node *)n; + n->role = (yyvsp[(3) - (5)].str); + n->options = (yyvsp[(5) - (5)].list); + (yyval.node) = (Node *)n; } break; @@ -11282,10 +11622,10 @@ yyreduce: #line 744 "gram.y" { AlterRoleStmt *n = makeNode(AlterRoleStmt); - n->role = yyvsp[-2].str; + n->role = (yyvsp[(3) - (5)].str); n->action = +1; /* add, if there are members */ - n->options = yyvsp[0].list; - yyval.node = (Node *)n; + n->options = (yyvsp[(5) - (5)].list); + (yyval.node) = (Node *)n; } break; @@ -11293,10 +11633,10 @@ yyreduce: #line 755 "gram.y" { AlterRoleSetStmt *n = makeNode(AlterRoleSetStmt); - n->role = yyvsp[-2].str; - n->variable = yyvsp[0].vsetstmt->name; - n->value = yyvsp[0].vsetstmt->args; - yyval.node = (Node *)n; + n->role = (yyvsp[(3) - (5)].str); + n->variable = (yyvsp[(5) - (5)].vsetstmt)->name; + n->value = (yyvsp[(5) - (5)].vsetstmt)->args; + (yyval.node) = (Node *)n; } break; @@ -11304,10 +11644,10 @@ yyreduce: #line 763 "gram.y" { AlterRoleSetStmt *n = makeNode(AlterRoleSetStmt); - n->role = yyvsp[-1].str; - n->variable = ((VariableResetStmt *)yyvsp[0].node)->name; + n->role = (yyvsp[(3) - (4)].str); + n->variable = ((VariableResetStmt *)(yyvsp[(4) - (4)].node))->name; n->value = NIL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -11315,10 +11655,10 @@ yyreduce: #line 781 "gram.y" { AlterRoleStmt *n = makeNode(AlterRoleStmt); - n->role = yyvsp[-2].str; + n->role = (yyvsp[(3) - (5)].str); n->action = +1; /* add, if there are members */ - n->options = yyvsp[0].list; - yyval.node = (Node *)n; + n->options = (yyvsp[(5) - (5)].list); + (yyval.node) = (Node *)n; } break; @@ -11326,10 +11666,10 @@ yyreduce: #line 793 "gram.y" { AlterRoleSetStmt *n = makeNode(AlterRoleSetStmt); - n->role = yyvsp[-2].str; - n->variable = yyvsp[0].vsetstmt->name; - n->value = yyvsp[0].vsetstmt->args; - yyval.node = (Node *)n; + n->role = (yyvsp[(3) - (5)].str); + n->variable = (yyvsp[(5) - (5)].vsetstmt)->name; + n->value = (yyvsp[(5) - (5)].vsetstmt)->args; + (yyval.node) = (Node *)n; } break; @@ -11337,10 +11677,10 @@ yyreduce: #line 801 "gram.y" { AlterRoleSetStmt *n = makeNode(AlterRoleSetStmt); - n->role = yyvsp[-1].str; - n->variable = ((VariableResetStmt *)yyvsp[0].node)->name; + n->role = (yyvsp[(3) - (4)].str); + n->variable = ((VariableResetStmt *)(yyvsp[(4) - (4)].node))->name; n->value = NIL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -11348,8 +11688,8 @@ yyreduce: #line 822 "gram.y" { DropRoleStmt *n = makeNode(DropRoleStmt); - n->roles = yyvsp[0].list; - yyval.node = (Node *)n; + n->roles = (yyvsp[(3) - (3)].list); + (yyval.node) = (Node *)n; } break; @@ -11357,8 +11697,8 @@ yyreduce: #line 840 "gram.y" { DropRoleStmt *n = makeNode(DropRoleStmt); - n->roles = yyvsp[0].list; - yyval.node = (Node *)n; + n->roles = (yyvsp[(3) - (3)].list); + (yyval.node) = (Node *)n; } break; @@ -11367,9 +11707,9 @@ yyreduce: { CreateRoleStmt *n = makeNode(CreateRoleStmt); n->stmt_type = ROLESTMT_GROUP; - n->role = yyvsp[-2].str; - n->options = yyvsp[0].list; - yyval.node = (Node *)n; + n->role = (yyvsp[(3) - (5)].str); + n->options = (yyvsp[(5) - (5)].list); + (yyval.node) = (Node *)n; } break; @@ -11377,30 +11717,30 @@ yyreduce: #line 874 "gram.y" { AlterRoleStmt *n = makeNode(AlterRoleStmt); - n->role = yyvsp[-3].str; - n->action = yyvsp[-2].ival; + n->role = (yyvsp[(3) - (6)].str); + n->action = (yyvsp[(4) - (6)].ival); n->options = list_make1(makeDefElem("rolemembers", - (Node *)yyvsp[0].list)); - yyval.node = (Node *)n; + (Node *)(yyvsp[(6) - (6)].list))); + (yyval.node) = (Node *)n; } break; case 128: #line 884 "gram.y" - { yyval.ival = +1; } + { (yyval.ival) = +1; } break; case 129: #line 885 "gram.y" - { yyval.ival = -1; } + { (yyval.ival) = -1; } break; case 130: #line 898 "gram.y" { DropRoleStmt *n = makeNode(DropRoleStmt); - n->roles = yyvsp[0].list; - yyval.node = (Node *)n; + n->roles = (yyvsp[(3) - (3)].list); + (yyval.node) = (Node *)n; } break; @@ -11409,13 +11749,13 @@ yyreduce: { CreateSchemaStmt *n = makeNode(CreateSchemaStmt); /* One can omit the schema name or the authorization id. */ - if (yyvsp[-3].str != NULL) - n->schemaname = yyvsp[-3].str; + if ((yyvsp[(3) - (6)].str) != NULL) + n->schemaname = (yyvsp[(3) - (6)].str); else - n->schemaname = yyvsp[-1].str; - n->authid = yyvsp[-1].str; - n->schemaElts = yyvsp[0].list; - yyval.node = (Node *)n; + n->schemaname = (yyvsp[(5) - (6)].str); + n->authid = (yyvsp[(5) - (6)].str); + n->schemaElts = (yyvsp[(6) - (6)].list); + (yyval.node) = (Node *)n; } break; @@ -11424,57 +11764,57 @@ yyreduce: { CreateSchemaStmt *n = makeNode(CreateSchemaStmt); /* ...but not both */ - n->schemaname = yyvsp[-1].str; + n->schemaname = (yyvsp[(3) - (4)].str); n->authid = NULL; - n->schemaElts = yyvsp[0].list; - yyval.node = (Node *)n; + n->schemaElts = (yyvsp[(4) - (4)].list); + (yyval.node) = (Node *)n; } break; case 133: #line 937 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 134: #line 938 "gram.y" - { yyval.str = NULL; } + { (yyval.str) = NULL; } break; case 135: #line 942 "gram.y" - { yyval.list = lappend(yyvsp[-1].list, yyvsp[0].node); } + { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); } break; case 136: #line 943 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 143: #line 971 "gram.y" { - VariableSetStmt *n = yyvsp[0].vsetstmt; + VariableSetStmt *n = (yyvsp[(2) - (2)].vsetstmt); n->is_local = false; - yyval.node = (Node *) n; + (yyval.node) = (Node *) n; } break; case 144: #line 977 "gram.y" { - VariableSetStmt *n = yyvsp[0].vsetstmt; + VariableSetStmt *n = (yyvsp[(3) - (3)].vsetstmt); n->is_local = true; - yyval.node = (Node *) n; + (yyval.node) = (Node *) n; } break; case 145: #line 983 "gram.y" { - VariableSetStmt *n = yyvsp[0].vsetstmt; + VariableSetStmt *n = (yyvsp[(3) - (3)].vsetstmt); n->is_local = false; - yyval.node = (Node *) n; + (yyval.node) = (Node *) n; } break; @@ -11482,9 +11822,9 @@ yyreduce: #line 991 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); - n->name = yyvsp[-2].str; - n->args = yyvsp[0].list; - yyval.vsetstmt = n; + n->name = (yyvsp[(1) - (3)].str); + n->args = (yyvsp[(3) - (3)].list); + (yyval.vsetstmt) = n; } break; @@ -11492,9 +11832,9 @@ yyreduce: #line 998 "gram.y" { VariableSetStmt *n = makeNode(VariableSetStmt); - n->name = yyvsp[-2].str; - n->args = yyvsp[0].list; - yyval.vsetstmt = n; + n->name = (yyvsp[(1) - (3)].str); + n->args = (yyvsp[(3) - (3)].list); + (yyval.vsetstmt) = n; } break; @@ -11503,9 +11843,9 @@ yyreduce: { VariableSetStmt *n = makeNode(VariableSetStmt); n->name = "timezone"; - if (yyvsp[0].node != NULL) - n->args = list_make1(yyvsp[0].node); - yyval.vsetstmt = n; + if ((yyvsp[(3) - (3)].node) != NULL) + n->args = list_make1((yyvsp[(3) - (3)].node)); + (yyval.vsetstmt) = n; } break; @@ -11514,8 +11854,8 @@ yyreduce: { VariableSetStmt *n = makeNode(VariableSetStmt); n->name = "TRANSACTION"; - n->args = yyvsp[0].list; - yyval.vsetstmt = n; + n->args = (yyvsp[(2) - (2)].list); + (yyval.vsetstmt) = n; } break; @@ -11524,8 +11864,8 @@ yyreduce: { VariableSetStmt *n = makeNode(VariableSetStmt); n->name = "SESSION CHARACTERISTICS"; - n->args = yyvsp[0].list; - yyval.vsetstmt = n; + n->args = (yyvsp[(5) - (5)].list); + (yyval.vsetstmt) = n; } break; @@ -11534,9 +11874,9 @@ yyreduce: { VariableSetStmt *n = makeNode(VariableSetStmt); n->name = "client_encoding"; - if (yyvsp[0].str != NULL) - n->args = list_make1(makeStringConst(yyvsp[0].str, NULL)); - yyval.vsetstmt = n; + if ((yyvsp[(2) - (2)].str) != NULL) + n->args = list_make1(makeStringConst((yyvsp[(2) - (2)].str), NULL)); + (yyval.vsetstmt) = n; } break; @@ -11545,8 +11885,8 @@ yyreduce: { VariableSetStmt *n = makeNode(VariableSetStmt); n->name = "role"; - n->args = list_make1(makeStringConst(yyvsp[0].str, NULL)); - yyval.vsetstmt = n; + n->args = list_make1(makeStringConst((yyvsp[(2) - (2)].str), NULL)); + (yyval.vsetstmt) = n; } break; @@ -11555,8 +11895,8 @@ yyreduce: { VariableSetStmt *n = makeNode(VariableSetStmt); n->name = "session_authorization"; - n->args = list_make1(makeStringConst(yyvsp[0].str, NULL)); - yyval.vsetstmt = n; + n->args = list_make1(makeStringConst((yyvsp[(3) - (3)].str), NULL)); + (yyval.vsetstmt) = n; } break; @@ -11566,208 +11906,208 @@ yyreduce: VariableSetStmt *n = makeNode(VariableSetStmt); n->name = "session_authorization"; n->args = NIL; - yyval.vsetstmt = n; + (yyval.vsetstmt) = n; } break; case 155: #line 1058 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 156: #line 1060 "gram.y" { - int qLen = strlen(yyvsp[-2].str); - char* qualName = palloc(qLen + strlen(yyvsp[0].str) + 2); - strcpy(qualName, yyvsp[-2].str); + int qLen = strlen((yyvsp[(1) - (3)].str)); + char* qualName = palloc(qLen + strlen((yyvsp[(3) - (3)].str)) + 2); + strcpy(qualName, (yyvsp[(1) - (3)].str)); qualName[qLen] = '.'; - strcpy(qualName + qLen + 1, yyvsp[0].str); - yyval.str = qualName; + strcpy(qualName + qLen + 1, (yyvsp[(3) - (3)].str)); + (yyval.str) = qualName; } break; case 157: #line 1071 "gram.y" - { yyval.list = yyvsp[0].list; } + { (yyval.list) = (yyvsp[(1) - (1)].list); } break; case 158: #line 1072 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 159: #line 1075 "gram.y" - { yyval.list = list_make1(yyvsp[0].node); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); } break; case 160: #line 1076 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; case 161: #line 1080 "gram.y" - { yyval.node = makeStringConst(yyvsp[0].str, NULL); } + { (yyval.node) = makeStringConst((yyvsp[(1) - (1)].str), NULL); } break; case 162: #line 1082 "gram.y" - { yyval.node = makeStringConst(yyvsp[0].str, NULL); } + { (yyval.node) = makeStringConst((yyvsp[(1) - (1)].str), NULL); } break; case 163: #line 1084 "gram.y" - { yyval.node = makeAConst(yyvsp[0].value); } + { (yyval.node) = makeAConst((yyvsp[(1) - (1)].value)); } break; case 164: #line 1087 "gram.y" - { yyval.str = "read uncommitted"; } + { (yyval.str) = "read uncommitted"; } break; case 165: #line 1088 "gram.y" - { yyval.str = "read committed"; } + { (yyval.str) = "read committed"; } break; case 166: #line 1089 "gram.y" - { yyval.str = "repeatable read"; } + { (yyval.str) = "repeatable read"; } break; case 167: #line 1090 "gram.y" - { yyval.str = "serializable"; } + { (yyval.str) = "serializable"; } break; case 168: #line 1094 "gram.y" - { yyval.str = "true"; } + { (yyval.str) = "true"; } break; case 169: #line 1095 "gram.y" - { yyval.str = "false"; } + { (yyval.str) = "false"; } break; case 170: #line 1096 "gram.y" - { yyval.str = "on"; } + { (yyval.str) = "on"; } break; case 171: #line 1097 "gram.y" - { yyval.str = "off"; } + { (yyval.str) = "off"; } break; case 172: #line 1110 "gram.y" { - yyval.node = makeStringConst(yyvsp[0].str, NULL); + (yyval.node) = makeStringConst((yyvsp[(1) - (1)].str), NULL); } break; case 173: #line 1114 "gram.y" { - yyval.node = makeStringConst(yyvsp[0].str, NULL); + (yyval.node) = makeStringConst((yyvsp[(1) - (1)].str), NULL); } break; case 174: #line 1118 "gram.y" { - A_Const *n = (A_Const *) makeStringConst(yyvsp[-1].str, yyvsp[-2].typnam); - if (yyvsp[0].ival != INTERVAL_FULL_RANGE) + A_Const *n = (A_Const *) makeStringConst((yyvsp[(2) - (3)].str), (yyvsp[(1) - (3)].typnam)); + if ((yyvsp[(3) - (3)].ival) != INTERVAL_FULL_RANGE) { - if ((yyvsp[0].ival & ~(INTERVAL_MASK(HOUR) | INTERVAL_MASK(MINUTE))) != 0) + if (((yyvsp[(3) - (3)].ival) & ~(INTERVAL_MASK(HOUR) | INTERVAL_MASK(MINUTE))) != 0) ereport(ERROR, (errcode(ERRCODE_SYNTAX_ERROR), errmsg("time zone interval must be HOUR or HOUR TO MINUTE"))); - n->typename->typmod = INTERVAL_TYPMOD(INTERVAL_FULL_PRECISION, yyvsp[0].ival); + n->typename->typmod = INTERVAL_TYPMOD(INTERVAL_FULL_PRECISION, (yyvsp[(3) - (3)].ival)); } - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; case 175: #line 1131 "gram.y" { - A_Const *n = (A_Const *) makeStringConst(yyvsp[-1].str, yyvsp[-5].typnam); - if (yyvsp[-3].ival < 0) + A_Const *n = (A_Const *) makeStringConst((yyvsp[(5) - (6)].str), (yyvsp[(1) - (6)].typnam)); + if ((yyvsp[(3) - (6)].ival) < 0) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("INTERVAL(%d) precision must not be negative", - yyvsp[-3].ival))); - if (yyvsp[-3].ival > MAX_INTERVAL_PRECISION) + (yyvsp[(3) - (6)].ival)))); + if ((yyvsp[(3) - (6)].ival) > MAX_INTERVAL_PRECISION) { ereport(WARNING, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("INTERVAL(%d) precision reduced to maximum allowed, %d", - yyvsp[-3].ival, MAX_INTERVAL_PRECISION))); - yyvsp[-3].ival = MAX_INTERVAL_PRECISION; + (yyvsp[(3) - (6)].ival), MAX_INTERVAL_PRECISION))); + (yyvsp[(3) - (6)].ival) = MAX_INTERVAL_PRECISION; } - if ((yyvsp[0].ival != INTERVAL_FULL_RANGE) - && ((yyvsp[0].ival & ~(INTERVAL_MASK(HOUR) | INTERVAL_MASK(MINUTE))) != 0)) + if (((yyvsp[(6) - (6)].ival) != INTERVAL_FULL_RANGE) + && (((yyvsp[(6) - (6)].ival) & ~(INTERVAL_MASK(HOUR) | INTERVAL_MASK(MINUTE))) != 0)) ereport(ERROR, (errcode(ERRCODE_SYNTAX_ERROR), errmsg("time zone interval must be HOUR or HOUR TO MINUTE"))); - n->typename->typmod = INTERVAL_TYPMOD(yyvsp[-3].ival, yyvsp[0].ival); + n->typename->typmod = INTERVAL_TYPMOD((yyvsp[(3) - (6)].ival), (yyvsp[(6) - (6)].ival)); - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; case 176: #line 1157 "gram.y" - { yyval.node = makeAConst(yyvsp[0].value); } + { (yyval.node) = makeAConst((yyvsp[(1) - (1)].value)); } break; case 177: #line 1158 "gram.y" - { yyval.node = NULL; } + { (yyval.node) = NULL; } break; case 178: #line 1159 "gram.y" - { yyval.node = NULL; } + { (yyval.node) = NULL; } break; case 179: #line 1163 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 180: #line 1164 "gram.y" - { yyval.str = NULL; } + { (yyval.str) = NULL; } break; case 181: #line 1165 "gram.y" - { yyval.str = NULL; } + { (yyval.str) = NULL; } break; case 182: #line 1169 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 183: #line 1170 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 184: #line 1176 "gram.y" { VariableShowStmt *n = makeNode(VariableShowStmt); - n->name = yyvsp[0].str; - yyval.node = (Node *) n; + n->name = (yyvsp[(2) - (2)].str); + (yyval.node) = (Node *) n; } break; @@ -11776,7 +12116,7 @@ yyreduce: { VariableShowStmt *n = makeNode(VariableShowStmt); n->name = "timezone"; - yyval.node = (Node *) n; + (yyval.node) = (Node *) n; } break; @@ -11785,7 +12125,7 @@ yyreduce: { VariableShowStmt *n = makeNode(VariableShowStmt); n->name = "transaction_isolation"; - yyval.node = (Node *) n; + (yyval.node) = (Node *) n; } break; @@ -11794,7 +12134,7 @@ yyreduce: { VariableShowStmt *n = makeNode(VariableShowStmt); n->name = "session_authorization"; - yyval.node = (Node *) n; + (yyval.node) = (Node *) n; } break; @@ -11803,7 +12143,7 @@ yyreduce: { VariableShowStmt *n = makeNode(VariableShowStmt); n->name = "all"; - yyval.node = (Node *) n; + (yyval.node) = (Node *) n; } break; @@ -11811,8 +12151,8 @@ yyreduce: #line 1209 "gram.y" { VariableResetStmt *n = makeNode(VariableResetStmt); - n->name = yyvsp[0].str; - yyval.node = (Node *) n; + n->name = (yyvsp[(2) - (2)].str); + (yyval.node) = (Node *) n; } break; @@ -11821,7 +12161,7 @@ yyreduce: { VariableResetStmt *n = makeNode(VariableResetStmt); n->name = "timezone"; - yyval.node = (Node *) n; + (yyval.node) = (Node *) n; } break; @@ -11830,7 +12170,7 @@ yyreduce: { VariableResetStmt *n = makeNode(VariableResetStmt); n->name = "transaction_isolation"; - yyval.node = (Node *) n; + (yyval.node) = (Node *) n; } break; @@ -11839,7 +12179,7 @@ yyreduce: { VariableResetStmt *n = makeNode(VariableResetStmt); n->name = "session_authorization"; - yyval.node = (Node *) n; + (yyval.node) = (Node *) n; } break; @@ -11848,7 +12188,7 @@ yyreduce: { VariableResetStmt *n = makeNode(VariableResetStmt); n->name = "all"; - yyval.node = (Node *) n; + (yyval.node) = (Node *) n; } break; @@ -11856,37 +12196,37 @@ yyreduce: #line 1243 "gram.y" { ConstraintsSetStmt *n = makeNode(ConstraintsSetStmt); - n->constraints = yyvsp[-1].list; - n->deferred = yyvsp[0].boolean; - yyval.node = (Node *) n; + n->constraints = (yyvsp[(3) - (4)].list); + n->deferred = (yyvsp[(4) - (4)].boolean); + (yyval.node) = (Node *) n; } break; case 195: #line 1252 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 196: #line 1253 "gram.y" - { yyval.list = yyvsp[0].list; } + { (yyval.list) = (yyvsp[(1) - (1)].list); } break; case 197: #line 1257 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 198: #line 1258 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 199: #line 1267 "gram.y" { CheckPointStmt *n = makeNode(CheckPointStmt); - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -11894,10 +12234,10 @@ yyreduce: #line 1282 "gram.y" { AlterTableStmt *n = makeNode(AlterTableStmt); - n->relation = yyvsp[-1].range; - n->cmds = yyvsp[0].list; + n->relation = (yyvsp[(3) - (4)].range); + n->cmds = (yyvsp[(4) - (4)].list); n->relkind = OBJECT_TABLE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -11905,21 +12245,21 @@ yyreduce: #line 1290 "gram.y" { AlterTableStmt *n = makeNode(AlterTableStmt); - n->relation = yyvsp[-1].range; - n->cmds = yyvsp[0].list; + n->relation = (yyvsp[(3) - (4)].range); + n->cmds = (yyvsp[(4) - (4)].list); n->relkind = OBJECT_INDEX; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; case 202: #line 1300 "gram.y" - { yyval.list = list_make1(yyvsp[0].node); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); } break; case 203: #line 1301 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; case 204: @@ -11927,8 +12267,8 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_AddColumn; - n->def = yyvsp[0].node; - yyval.node = (Node *)n; + n->def = (yyvsp[(3) - (3)].node); + (yyval.node) = (Node *)n; } break; @@ -11937,9 +12277,9 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_ColumnDefault; - n->name = yyvsp[-1].str; - n->def = yyvsp[0].node; - yyval.node = (Node *)n; + n->name = (yyvsp[(3) - (4)].str); + n->def = (yyvsp[(4) - (4)].node); + (yyval.node) = (Node *)n; } break; @@ -11948,8 +12288,8 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_DropNotNull; - n->name = yyvsp[-3].str; - yyval.node = (Node *)n; + n->name = (yyvsp[(3) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -11958,8 +12298,8 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_SetNotNull; - n->name = yyvsp[-3].str; - yyval.node = (Node *)n; + n->name = (yyvsp[(3) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -11968,9 +12308,9 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_SetStatistics; - n->name = yyvsp[-3].str; - n->def = (Node *) yyvsp[0].value; - yyval.node = (Node *)n; + n->name = (yyvsp[(3) - (6)].str); + n->def = (Node *) (yyvsp[(6) - (6)].value); + (yyval.node) = (Node *)n; } break; @@ -11979,9 +12319,9 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_SetStorage; - n->name = yyvsp[-3].str; - n->def = (Node *) makeString(yyvsp[0].str); - yyval.node = (Node *)n; + n->name = (yyvsp[(3) - (6)].str); + n->def = (Node *) makeString((yyvsp[(6) - (6)].str)); + (yyval.node) = (Node *)n; } break; @@ -11990,9 +12330,9 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_DropColumn; - n->name = yyvsp[-1].str; - n->behavior = yyvsp[0].dbehavior; - yyval.node = (Node *)n; + n->name = (yyvsp[(3) - (4)].str); + n->behavior = (yyvsp[(4) - (4)].dbehavior); + (yyval.node) = (Node *)n; } break; @@ -12001,10 +12341,10 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_AlterColumnType; - n->name = yyvsp[-3].str; - n->def = (Node *) yyvsp[-1].typnam; - n->transform = yyvsp[0].node; - yyval.node = (Node *)n; + n->name = (yyvsp[(3) - (6)].str); + n->def = (Node *) (yyvsp[(5) - (6)].typnam); + n->transform = (yyvsp[(6) - (6)].node); + (yyval.node) = (Node *)n; } break; @@ -12013,8 +12353,8 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_AddConstraint; - n->def = yyvsp[0].node; - yyval.node = (Node *)n; + n->def = (yyvsp[(2) - (2)].node); + (yyval.node) = (Node *)n; } break; @@ -12023,9 +12363,9 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_DropConstraint; - n->name = yyvsp[-1].str; - n->behavior = yyvsp[0].dbehavior; - yyval.node = (Node *)n; + n->name = (yyvsp[(3) - (4)].str); + n->behavior = (yyvsp[(4) - (4)].dbehavior); + (yyval.node) = (Node *)n; } break; @@ -12034,7 +12374,7 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_DropOids; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -12043,7 +12383,7 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_ToastTable; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -12052,8 +12392,8 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_ClusterOn; - n->name = yyvsp[0].str; - yyval.node = (Node *)n; + n->name = (yyvsp[(3) - (3)].str); + (yyval.node) = (Node *)n; } break; @@ -12063,7 +12403,7 @@ yyreduce: AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_DropCluster; n->name = NULL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -12072,8 +12412,8 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_EnableTrig; - n->name = yyvsp[0].str; - yyval.node = (Node *)n; + n->name = (yyvsp[(3) - (3)].str); + (yyval.node) = (Node *)n; } break; @@ -12082,7 +12422,7 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_EnableTrigAll; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -12091,7 +12431,7 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_EnableTrigUser; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -12100,8 +12440,8 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_DisableTrig; - n->name = yyvsp[0].str; - yyval.node = (Node *)n; + n->name = (yyvsp[(3) - (3)].str); + (yyval.node) = (Node *)n; } break; @@ -12110,7 +12450,7 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_DisableTrigAll; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -12119,25 +12459,25 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_DisableTrigUser; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; case 224: #line 1471 "gram.y" { - yyval.node = yyvsp[0].node; + (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 225: #line 1477 "gram.y" - { yyval.list = list_make1(yyvsp[0].node); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); } break; case 226: #line 1478 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; case 227: @@ -12145,8 +12485,8 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_ChangeOwner; - n->name = yyvsp[0].str; - yyval.node = (Node *)n; + n->name = (yyvsp[(3) - (3)].str); + (yyval.node) = (Node *)n; } break; @@ -12155,8 +12495,8 @@ yyreduce: { AlterTableCmd *n = makeNode(AlterTableCmd); n->subtype = AT_SetTableSpace; - n->name = yyvsp[0].str; - yyval.node = (Node *)n; + n->name = (yyvsp[(3) - (3)].str); + (yyval.node) = (Node *)n; } break; @@ -12164,49 +12504,49 @@ yyreduce: #line 1503 "gram.y" { /* Treat SET DEFAULT NULL the same as DROP DEFAULT */ - if (exprIsNullConstant(yyvsp[0].node)) - yyval.node = NULL; + if (exprIsNullConstant((yyvsp[(3) - (3)].node))) + (yyval.node) = NULL; else - yyval.node = yyvsp[0].node; + (yyval.node) = (yyvsp[(3) - (3)].node); } break; case 230: #line 1510 "gram.y" - { yyval.node = NULL; } + { (yyval.node) = NULL; } break; case 231: #line 1514 "gram.y" - { yyval.dbehavior = DROP_CASCADE; } + { (yyval.dbehavior) = DROP_CASCADE; } break; case 232: #line 1515 "gram.y" - { yyval.dbehavior = DROP_RESTRICT; } + { (yyval.dbehavior) = DROP_RESTRICT; } break; case 233: #line 1516 "gram.y" - { yyval.dbehavior = DROP_RESTRICT; /* default */ } + { (yyval.dbehavior) = DROP_RESTRICT; /* default */ } break; case 234: #line 1520 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(2) - (2)].node); } break; case 235: #line 1521 "gram.y" - { yyval.node = NULL; } + { (yyval.node) = NULL; } break; case 236: #line 1535 "gram.y" { ClosePortalStmt *n = makeNode(ClosePortalStmt); - n->portalname = yyvsp[0].str; - yyval.node = (Node *)n; + n->portalname = (yyvsp[(2) - (2)].str); + (yyval.node) = (Node *)n; } break; @@ -12214,164 +12554,164 @@ yyreduce: #line 1555 "gram.y" { CopyStmt *n = makeNode(CopyStmt); - n->relation = yyvsp[-7].range; - n->attlist = yyvsp[-6].list; - n->is_from = yyvsp[-4].boolean; - n->filename = yyvsp[-3].str; + n->relation = (yyvsp[(3) - (10)].range); + n->attlist = (yyvsp[(4) - (10)].list); + n->is_from = (yyvsp[(6) - (10)].boolean); + n->filename = (yyvsp[(7) - (10)].str); n->options = NIL; /* Concatenate user-supplied flags */ - if (yyvsp[-8].defelt) - n->options = lappend(n->options, yyvsp[-8].defelt); - if (yyvsp[-5].defelt) - n->options = lappend(n->options, yyvsp[-5].defelt); - if (yyvsp[-2].defelt) - n->options = lappend(n->options, yyvsp[-2].defelt); - if (yyvsp[0].list) - n->options = list_concat(n->options, yyvsp[0].list); - yyval.node = (Node *)n; + if ((yyvsp[(2) - (10)].defelt)) + n->options = lappend(n->options, (yyvsp[(2) - (10)].defelt)); + if ((yyvsp[(5) - (10)].defelt)) + n->options = lappend(n->options, (yyvsp[(5) - (10)].defelt)); + if ((yyvsp[(8) - (10)].defelt)) + n->options = lappend(n->options, (yyvsp[(8) - (10)].defelt)); + if ((yyvsp[(10) - (10)].list)) + n->options = list_concat(n->options, (yyvsp[(10) - (10)].list)); + (yyval.node) = (Node *)n; } break; case 238: #line 1577 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 239: #line 1578 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 240: #line 1587 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 241: #line 1588 "gram.y" - { yyval.str = NULL; } + { (yyval.str) = NULL; } break; case 242: #line 1589 "gram.y" - { yyval.str = NULL; } + { (yyval.str) = NULL; } break; case 243: #line 1595 "gram.y" - { yyval.list = lappend(yyvsp[-1].list, yyvsp[0].defelt); } + { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); } break; case 244: #line 1596 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 245: #line 1602 "gram.y" { - yyval.defelt = makeDefElem("binary", (Node *)makeInteger(TRUE)); + (yyval.defelt) = makeDefElem("binary", (Node *)makeInteger(TRUE)); } break; case 246: #line 1606 "gram.y" { - yyval.defelt = makeDefElem("oids", (Node *)makeInteger(TRUE)); + (yyval.defelt) = makeDefElem("oids", (Node *)makeInteger(TRUE)); } break; case 247: #line 1610 "gram.y" { - yyval.defelt = makeDefElem("delimiter", (Node *)makeString(yyvsp[0].str)); + (yyval.defelt) = makeDefElem("delimiter", (Node *)makeString((yyvsp[(3) - (3)].str))); } break; case 248: #line 1614 "gram.y" { - yyval.defelt = makeDefElem("null", (Node *)makeString(yyvsp[0].str)); + (yyval.defelt) = makeDefElem("null", (Node *)makeString((yyvsp[(3) - (3)].str))); } break; case 249: #line 1618 "gram.y" { - yyval.defelt = makeDefElem("csv", (Node *)makeInteger(TRUE)); + (yyval.defelt) = makeDefElem("csv", (Node *)makeInteger(TRUE)); } break; case 250: #line 1622 "gram.y" { - yyval.defelt = makeDefElem("header", (Node *)makeInteger(TRUE)); + (yyval.defelt) = makeDefElem("header", (Node *)makeInteger(TRUE)); } break; case 251: #line 1626 "gram.y" { - yyval.defelt = makeDefElem("quote", (Node *)makeString(yyvsp[0].str)); + (yyval.defelt) = makeDefElem("quote", (Node *)makeString((yyvsp[(3) - (3)].str))); } break; case 252: #line 1630 "gram.y" { - yyval.defelt = makeDefElem("escape", (Node *)makeString(yyvsp[0].str)); + (yyval.defelt) = makeDefElem("escape", (Node *)makeString((yyvsp[(3) - (3)].str))); } break; case 253: #line 1634 "gram.y" { - yyval.defelt = makeDefElem("force_quote", (Node *)yyvsp[0].list); + (yyval.defelt) = makeDefElem("force_quote", (Node *)(yyvsp[(3) - (3)].list)); } break; case 254: #line 1638 "gram.y" { - yyval.defelt = makeDefElem("force_notnull", (Node *)yyvsp[0].list); + (yyval.defelt) = makeDefElem("force_notnull", (Node *)(yyvsp[(4) - (4)].list)); } break; case 255: #line 1647 "gram.y" { - yyval.defelt = makeDefElem("binary", (Node *)makeInteger(TRUE)); + (yyval.defelt) = makeDefElem("binary", (Node *)makeInteger(TRUE)); } break; case 256: #line 1650 "gram.y" - { yyval.defelt = NULL; } + { (yyval.defelt) = NULL; } break; case 257: #line 1655 "gram.y" { - yyval.defelt = makeDefElem("oids", (Node *)makeInteger(TRUE)); + (yyval.defelt) = makeDefElem("oids", (Node *)makeInteger(TRUE)); } break; case 258: #line 1658 "gram.y" - { yyval.defelt = NULL; } + { (yyval.defelt) = NULL; } break; case 259: #line 1664 "gram.y" { - yyval.defelt = makeDefElem("delimiter", (Node *)makeString(yyvsp[0].str)); + (yyval.defelt) = makeDefElem("delimiter", (Node *)makeString((yyvsp[(3) - (3)].str))); } break; case 260: #line 1667 "gram.y" - { yyval.defelt = NULL; } + { (yyval.defelt) = NULL; } break; case 261: @@ -12388,15 +12728,15 @@ yyreduce: #line 1685 "gram.y" { CreateStmt *n = makeNode(CreateStmt); - yyvsp[-7].range->istemp = yyvsp[-9].boolean; - n->relation = yyvsp[-7].range; - n->tableElts = yyvsp[-5].list; - n->inhRelations = yyvsp[-3].list; + (yyvsp[(4) - (11)].range)->istemp = (yyvsp[(2) - (11)].boolean); + n->relation = (yyvsp[(4) - (11)].range); + n->tableElts = (yyvsp[(6) - (11)].list); + n->inhRelations = (yyvsp[(8) - (11)].list); n->constraints = NIL; - n->hasoids = yyvsp[-2].withoids; - n->oncommit = yyvsp[-1].oncommit; - n->tablespacename = yyvsp[0].str; - yyval.node = (Node *)n; + n->hasoids = (yyvsp[(9) - (11)].withoids); + n->oncommit = (yyvsp[(10) - (11)].oncommit); + n->tablespacename = (yyvsp[(11) - (11)].str); + (yyval.node) = (Node *)n; } break; @@ -12407,146 +12747,146 @@ yyreduce: * by our inheritance capabilities. Let's try it... */ CreateStmt *n = makeNode(CreateStmt); - yyvsp[-8].range->istemp = yyvsp[-10].boolean; - n->relation = yyvsp[-8].range; - n->tableElts = yyvsp[-4].list; - n->inhRelations = list_make1(yyvsp[-6].range); + (yyvsp[(4) - (12)].range)->istemp = (yyvsp[(2) - (12)].boolean); + n->relation = (yyvsp[(4) - (12)].range); + n->tableElts = (yyvsp[(8) - (12)].list); + n->inhRelations = list_make1((yyvsp[(6) - (12)].range)); n->constraints = NIL; - n->hasoids = yyvsp[-2].withoids; - n->oncommit = yyvsp[-1].oncommit; - n->tablespacename = yyvsp[0].str; - yyval.node = (Node *)n; + n->hasoids = (yyvsp[(10) - (12)].withoids); + n->oncommit = (yyvsp[(11) - (12)].oncommit); + n->tablespacename = (yyvsp[(12) - (12)].str); + (yyval.node) = (Node *)n; } break; case 265: #line 1723 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 266: #line 1724 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 267: #line 1725 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 268: #line 1726 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 269: #line 1727 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 270: #line 1728 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 271: #line 1729 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 272: #line 1733 "gram.y" - { yyval.list = yyvsp[0].list; } + { (yyval.list) = (yyvsp[(1) - (1)].list); } break; case 273: #line 1734 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 274: #line 1739 "gram.y" { - yyval.list = list_make1(yyvsp[0].node); + (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); } break; case 275: #line 1743 "gram.y" { - yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); + (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; case 276: #line 1749 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 277: #line 1750 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 278: #line 1751 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 279: #line 1755 "gram.y" { ColumnDef *n = makeNode(ColumnDef); - n->colname = yyvsp[-2].str; - n->typename = yyvsp[-1].typnam; - n->constraints = yyvsp[0].list; + n->colname = (yyvsp[(1) - (3)].str); + n->typename = (yyvsp[(2) - (3)].typnam); + n->constraints = (yyvsp[(3) - (3)].list); n->is_local = true; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; case 280: #line 1766 "gram.y" - { yyval.list = lappend(yyvsp[-1].list, yyvsp[0].node); } + { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); } break; case 281: #line 1767 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 282: #line 1772 "gram.y" { - switch (nodeTag(yyvsp[0].node)) + switch (nodeTag((yyvsp[(3) - (3)].node))) { case T_Constraint: { - Constraint *n = (Constraint *)yyvsp[0].node; - n->name = yyvsp[-1].str; + Constraint *n = (Constraint *)(yyvsp[(3) - (3)].node); + n->name = (yyvsp[(2) - (3)].str); } break; case T_FkConstraint: { - FkConstraint *n = (FkConstraint *)yyvsp[0].node; - n->constr_name = yyvsp[-1].str; + FkConstraint *n = (FkConstraint *)(yyvsp[(3) - (3)].node); + n->constr_name = (yyvsp[(2) - (3)].str); } break; default: break; } - yyval.node = yyvsp[0].node; + (yyval.node) = (yyvsp[(3) - (3)].node); } break; case 283: #line 1792 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 284: #line 1793 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 285: @@ -12559,7 +12899,7 @@ yyreduce: n->cooked_expr = NULL; n->keys = NULL; n->indexspace = NULL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -12573,7 +12913,7 @@ yyreduce: n->cooked_expr = NULL; n->keys = NULL; n->indexspace = NULL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -12586,8 +12926,8 @@ yyreduce: n->raw_expr = NULL; n->cooked_expr = NULL; n->keys = NULL; - n->indexspace = yyvsp[0].str; - yyval.node = (Node *)n; + n->indexspace = (yyvsp[(2) - (2)].str); + (yyval.node) = (Node *)n; } break; @@ -12600,8 +12940,8 @@ yyreduce: n->raw_expr = NULL; n->cooked_expr = NULL; n->keys = NULL; - n->indexspace = yyvsp[0].str; - yyval.node = (Node *)n; + n->indexspace = (yyvsp[(3) - (3)].str); + (yyval.node) = (Node *)n; } break; @@ -12611,11 +12951,11 @@ yyreduce: Constraint *n = makeNode(Constraint); n->contype = CONSTR_CHECK; n->name = NULL; - n->raw_expr = yyvsp[-1].node; + n->raw_expr = (yyvsp[(3) - (4)].node); n->cooked_expr = NULL; n->keys = NULL; n->indexspace = NULL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -12625,19 +12965,19 @@ yyreduce: Constraint *n = makeNode(Constraint); n->contype = CONSTR_DEFAULT; n->name = NULL; - if (exprIsNullConstant(yyvsp[0].node)) + if (exprIsNullConstant((yyvsp[(2) - (2)].node))) { /* DEFAULT NULL should be reported as empty expr */ n->raw_expr = NULL; } else { - n->raw_expr = yyvsp[0].node; + n->raw_expr = (yyvsp[(2) - (2)].node); } n->cooked_expr = NULL; n->keys = NULL; n->indexspace = NULL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -12646,15 +12986,15 @@ yyreduce: { FkConstraint *n = makeNode(FkConstraint); n->constr_name = NULL; - n->pktable = yyvsp[-3].range; + n->pktable = (yyvsp[(2) - (5)].range); n->fk_attrs = NIL; - n->pk_attrs = yyvsp[-2].list; - n->fk_matchtype = yyvsp[-1].ival; - n->fk_upd_action = (char) (yyvsp[0].ival >> 8); - n->fk_del_action = (char) (yyvsp[0].ival & 0xFF); + n->pk_attrs = (yyvsp[(3) - (5)].list); + n->fk_matchtype = (yyvsp[(4) - (5)].ival); + n->fk_upd_action = (char) ((yyvsp[(5) - (5)].ival) >> 8); + n->fk_del_action = (char) ((yyvsp[(5) - (5)].ival) & 0xFF); n->deferrable = FALSE; n->initdeferred = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -12663,7 +13003,7 @@ yyreduce: { Constraint *n = makeNode(Constraint); n->contype = CONSTR_ATTR_DEFERRABLE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -12672,7 +13012,7 @@ yyreduce: { Constraint *n = makeNode(Constraint); n->contype = CONSTR_ATTR_NOT_DEFERRABLE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -12681,7 +13021,7 @@ yyreduce: { Constraint *n = makeNode(Constraint); n->contype = CONSTR_ATTR_DEFERRED; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -12690,7 +13030,7 @@ yyreduce: { Constraint *n = makeNode(Constraint); n->contype = CONSTR_ATTR_IMMEDIATE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -12698,55 +13038,55 @@ yyreduce: #line 1951 "gram.y" { InhRelation *n = makeNode(InhRelation); - n->relation = yyvsp[-1].range; - n->including_defaults = yyvsp[0].boolean; + n->relation = (yyvsp[(2) - (3)].range); + n->including_defaults = (yyvsp[(3) - (3)].boolean); - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; case 297: #line 1961 "gram.y" - { yyval.boolean = true; } + { (yyval.boolean) = true; } break; case 298: #line 1962 "gram.y" - { yyval.boolean = false; } + { (yyval.boolean) = false; } break; case 299: #line 1963 "gram.y" - { yyval.boolean = false; } + { (yyval.boolean) = false; } break; case 300: #line 1973 "gram.y" { - switch (nodeTag(yyvsp[0].node)) + switch (nodeTag((yyvsp[(3) - (3)].node))) { case T_Constraint: { - Constraint *n = (Constraint *)yyvsp[0].node; - n->name = yyvsp[-1].str; + Constraint *n = (Constraint *)(yyvsp[(3) - (3)].node); + n->name = (yyvsp[(2) - (3)].str); } break; case T_FkConstraint: { - FkConstraint *n = (FkConstraint *)yyvsp[0].node; - n->constr_name = yyvsp[-1].str; + FkConstraint *n = (FkConstraint *)(yyvsp[(3) - (3)].node); + n->constr_name = (yyvsp[(2) - (3)].str); } break; default: break; } - yyval.node = yyvsp[0].node; + (yyval.node) = (yyvsp[(3) - (3)].node); } break; case 301: #line 1993 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 302: @@ -12755,10 +13095,10 @@ yyreduce: Constraint *n = makeNode(Constraint); n->contype = CONSTR_CHECK; n->name = NULL; - n->raw_expr = yyvsp[-1].node; + n->raw_expr = (yyvsp[(3) - (4)].node); n->cooked_expr = NULL; n->indexspace = NULL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -12770,9 +13110,9 @@ yyreduce: n->name = NULL; n->raw_expr = NULL; n->cooked_expr = NULL; - n->keys = yyvsp[-2].list; - n->indexspace = yyvsp[0].str; - yyval.node = (Node *)n; + n->keys = (yyvsp[(3) - (5)].list); + n->indexspace = (yyvsp[(5) - (5)].str); + (yyval.node) = (Node *)n; } break; @@ -12784,9 +13124,9 @@ yyreduce: n->name = NULL; n->raw_expr = NULL; n->cooked_expr = NULL; - n->keys = yyvsp[-2].list; - n->indexspace = yyvsp[0].str; - yyval.node = (Node *)n; + n->keys = (yyvsp[(4) - (6)].list); + n->indexspace = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -12795,49 +13135,49 @@ yyreduce: { FkConstraint *n = makeNode(FkConstraint); n->constr_name = NULL; - n->pktable = yyvsp[-4].range; - n->fk_attrs = yyvsp[-7].list; - n->pk_attrs = yyvsp[-3].list; - n->fk_matchtype = yyvsp[-2].ival; - n->fk_upd_action = (char) (yyvsp[-1].ival >> 8); - n->fk_del_action = (char) (yyvsp[-1].ival & 0xFF); - n->deferrable = (yyvsp[0].ival & 1) != 0; - n->initdeferred = (yyvsp[0].ival & 2) != 0; - yyval.node = (Node *)n; + n->pktable = (yyvsp[(7) - (11)].range); + n->fk_attrs = (yyvsp[(4) - (11)].list); + n->pk_attrs = (yyvsp[(8) - (11)].list); + n->fk_matchtype = (yyvsp[(9) - (11)].ival); + n->fk_upd_action = (char) ((yyvsp[(10) - (11)].ival) >> 8); + n->fk_del_action = (char) ((yyvsp[(10) - (11)].ival) & 0xFF); + n->deferrable = ((yyvsp[(11) - (11)].ival) & 1) != 0; + n->initdeferred = ((yyvsp[(11) - (11)].ival) & 2) != 0; + (yyval.node) = (Node *)n; } break; case 306: #line 2047 "gram.y" - { yyval.list = yyvsp[-1].list; } + { (yyval.list) = (yyvsp[(2) - (3)].list); } break; case 307: #line 2048 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 308: #line 2052 "gram.y" - { yyval.list = list_make1(yyvsp[0].node); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); } break; case 309: #line 2053 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; case 310: #line 2057 "gram.y" { - yyval.node = (Node *) makeString(yyvsp[0].str); + (yyval.node) = (Node *) makeString((yyvsp[(1) - (1)].str)); } break; case 311: #line 2063 "gram.y" { - yyval.ival = FKCONSTR_MATCH_FULL; + (yyval.ival) = FKCONSTR_MATCH_FULL; } break; @@ -12847,147 +13187,147 @@ yyreduce: ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), errmsg("MATCH PARTIAL not yet implemented"))); - yyval.ival = FKCONSTR_MATCH_PARTIAL; + (yyval.ival) = FKCONSTR_MATCH_PARTIAL; } break; case 313: #line 2074 "gram.y" { - yyval.ival = FKCONSTR_MATCH_UNSPECIFIED; + (yyval.ival) = FKCONSTR_MATCH_UNSPECIFIED; } break; case 314: #line 2078 "gram.y" { - yyval.ival = FKCONSTR_MATCH_UNSPECIFIED; + (yyval.ival) = FKCONSTR_MATCH_UNSPECIFIED; } break; case 315: #line 2091 "gram.y" - { yyval.ival = (yyvsp[0].ival << 8) | (FKCONSTR_ACTION_NOACTION & 0xFF); } + { (yyval.ival) = ((yyvsp[(1) - (1)].ival) << 8) | (FKCONSTR_ACTION_NOACTION & 0xFF); } break; case 316: #line 2093 "gram.y" - { yyval.ival = (FKCONSTR_ACTION_NOACTION << 8) | (yyvsp[0].ival & 0xFF); } + { (yyval.ival) = (FKCONSTR_ACTION_NOACTION << 8) | ((yyvsp[(1) - (1)].ival) & 0xFF); } break; case 317: #line 2095 "gram.y" - { yyval.ival = (yyvsp[-1].ival << 8) | (yyvsp[0].ival & 0xFF); } + { (yyval.ival) = ((yyvsp[(1) - (2)].ival) << 8) | ((yyvsp[(2) - (2)].ival) & 0xFF); } break; case 318: #line 2097 "gram.y" - { yyval.ival = (yyvsp[0].ival << 8) | (yyvsp[-1].ival & 0xFF); } + { (yyval.ival) = ((yyvsp[(2) - (2)].ival) << 8) | ((yyvsp[(1) - (2)].ival) & 0xFF); } break; case 319: #line 2099 "gram.y" - { yyval.ival = (FKCONSTR_ACTION_NOACTION << 8) | (FKCONSTR_ACTION_NOACTION & 0xFF); } + { (yyval.ival) = (FKCONSTR_ACTION_NOACTION << 8) | (FKCONSTR_ACTION_NOACTION & 0xFF); } break; case 320: #line 2102 "gram.y" - { yyval.ival = yyvsp[0].ival; } + { (yyval.ival) = (yyvsp[(3) - (3)].ival); } break; case 321: #line 2105 "gram.y" - { yyval.ival = yyvsp[0].ival; } + { (yyval.ival) = (yyvsp[(3) - (3)].ival); } break; case 322: #line 2109 "gram.y" - { yyval.ival = FKCONSTR_ACTION_NOACTION; } + { (yyval.ival) = FKCONSTR_ACTION_NOACTION; } break; case 323: #line 2110 "gram.y" - { yyval.ival = FKCONSTR_ACTION_RESTRICT; } + { (yyval.ival) = FKCONSTR_ACTION_RESTRICT; } break; case 324: #line 2111 "gram.y" - { yyval.ival = FKCONSTR_ACTION_CASCADE; } + { (yyval.ival) = FKCONSTR_ACTION_CASCADE; } break; case 325: #line 2112 "gram.y" - { yyval.ival = FKCONSTR_ACTION_SETNULL; } + { (yyval.ival) = FKCONSTR_ACTION_SETNULL; } break; case 326: #line 2113 "gram.y" - { yyval.ival = FKCONSTR_ACTION_SETDEFAULT; } + { (yyval.ival) = FKCONSTR_ACTION_SETDEFAULT; } break; case 327: #line 2116 "gram.y" - { yyval.list = yyvsp[-1].list; } + { (yyval.list) = (yyvsp[(3) - (4)].list); } break; case 328: #line 2117 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 329: #line 2121 "gram.y" - { yyval.withoids = MUST_HAVE_OIDS; } + { (yyval.withoids) = MUST_HAVE_OIDS; } break; case 330: #line 2122 "gram.y" - { yyval.withoids = MUST_NOT_HAVE_OIDS; } + { (yyval.withoids) = MUST_NOT_HAVE_OIDS; } break; case 331: #line 2123 "gram.y" - { yyval.withoids = DEFAULT_OIDS; } + { (yyval.withoids) = DEFAULT_OIDS; } break; case 332: #line 2126 "gram.y" - { yyval.oncommit = ONCOMMIT_DROP; } + { (yyval.oncommit) = ONCOMMIT_DROP; } break; case 333: #line 2127 "gram.y" - { yyval.oncommit = ONCOMMIT_DELETE_ROWS; } + { (yyval.oncommit) = ONCOMMIT_DELETE_ROWS; } break; case 334: #line 2128 "gram.y" - { yyval.oncommit = ONCOMMIT_PRESERVE_ROWS; } + { (yyval.oncommit) = ONCOMMIT_PRESERVE_ROWS; } break; case 335: #line 2129 "gram.y" - { yyval.oncommit = ONCOMMIT_NOOP; } + { (yyval.oncommit) = ONCOMMIT_NOOP; } break; case 336: #line 2132 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(2) - (2)].str); } break; case 337: #line 2133 "gram.y" - { yyval.str = NULL; } + { (yyval.str) = NULL; } break; case 338: #line 2136 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(4) - (4)].str); } break; case 339: #line 2137 "gram.y" - { yyval.str = NULL; } + { (yyval.str) = NULL; } break; case 340: @@ -13000,59 +13340,59 @@ yyreduce: * to find it. Similarly, the output column names must * be attached to that Select's target list. */ - SelectStmt *n = findLeftmostSelect((SelectStmt *) yyvsp[0].node); + SelectStmt *n = findLeftmostSelect((SelectStmt *) (yyvsp[(7) - (7)].node)); if (n->into != NULL) ereport(ERROR, (errcode(ERRCODE_SYNTAX_ERROR), errmsg("CREATE TABLE AS may not specify INTO"))); - yyvsp[-3].range->istemp = yyvsp[-5].boolean; - n->into = yyvsp[-3].range; - n->intoColNames = yyvsp[-2].list; - n->intoHasOids = yyvsp[-1].withoids; - yyval.node = yyvsp[0].node; + (yyvsp[(4) - (7)].range)->istemp = (yyvsp[(2) - (7)].boolean); + n->into = (yyvsp[(4) - (7)].range); + n->intoColNames = (yyvsp[(5) - (7)].list); + n->intoHasOids = (yyvsp[(6) - (7)].withoids); + (yyval.node) = (yyvsp[(7) - (7)].node); } break; case 341: #line 2176 "gram.y" - { yyval.withoids = MUST_HAVE_OIDS; } + { (yyval.withoids) = MUST_HAVE_OIDS; } break; case 342: #line 2177 "gram.y" - { yyval.withoids = MUST_NOT_HAVE_OIDS; } + { (yyval.withoids) = MUST_NOT_HAVE_OIDS; } break; case 343: #line 2178 "gram.y" - { yyval.withoids = DEFAULT_OIDS; } + { (yyval.withoids) = DEFAULT_OIDS; } break; case 344: #line 2182 "gram.y" - { yyval.list = yyvsp[-1].list; } + { (yyval.list) = (yyvsp[(2) - (3)].list); } break; case 345: #line 2183 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 346: #line 2187 "gram.y" - { yyval.list = list_make1(yyvsp[0].node); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); } break; case 347: #line 2188 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; case 348: #line 2193 "gram.y" { ColumnDef *n = makeNode(ColumnDef); - n->colname = yyvsp[0].str; + n->colname = (yyvsp[(1) - (1)].str); n->typename = NULL; n->inhcount = 0; n->is_local = true; @@ -13061,7 +13401,7 @@ yyreduce: n->cooked_default = NULL; n->constraints = NIL; n->support = NULL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -13069,10 +13409,10 @@ yyreduce: #line 2219 "gram.y" { CreateSeqStmt *n = makeNode(CreateSeqStmt); - yyvsp[-1].range->istemp = yyvsp[-3].boolean; - n->sequence = yyvsp[-1].range; - n->options = yyvsp[0].list; - yyval.node = (Node *)n; + (yyvsp[(4) - (5)].range)->istemp = (yyvsp[(2) - (5)].boolean); + n->sequence = (yyvsp[(4) - (5)].range); + n->options = (yyvsp[(5) - (5)].list); + (yyval.node) = (Node *)n; } break; @@ -13080,89 +13420,89 @@ yyreduce: #line 2230 "gram.y" { AlterSeqStmt *n = makeNode(AlterSeqStmt); - n->sequence = yyvsp[-1].range; - n->options = yyvsp[0].list; - yyval.node = (Node *)n; + n->sequence = (yyvsp[(3) - (4)].range); + n->options = (yyvsp[(4) - (4)].list); + (yyval.node) = (Node *)n; } break; case 351: #line 2238 "gram.y" - { yyval.list = lappend(yyvsp[-1].list, yyvsp[0].defelt); } + { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); } break; case 352: #line 2239 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 353: #line 2243 "gram.y" { - yyval.defelt = makeDefElem("cache", (Node *)yyvsp[0].value); + (yyval.defelt) = makeDefElem("cache", (Node *)(yyvsp[(2) - (2)].value)); } break; case 354: #line 2247 "gram.y" { - yyval.defelt = makeDefElem("cycle", (Node *)makeInteger(TRUE)); + (yyval.defelt) = makeDefElem("cycle", (Node *)makeInteger(TRUE)); } break; case 355: #line 2251 "gram.y" { - yyval.defelt = makeDefElem("cycle", (Node *)makeInteger(FALSE)); + (yyval.defelt) = makeDefElem("cycle", (Node *)makeInteger(FALSE)); } break; case 356: #line 2255 "gram.y" { - yyval.defelt = makeDefElem("increment", (Node *)yyvsp[0].value); + (yyval.defelt) = makeDefElem("increment", (Node *)(yyvsp[(3) - (3)].value)); } break; case 357: #line 2259 "gram.y" { - yyval.defelt = makeDefElem("maxvalue", (Node *)yyvsp[0].value); + (yyval.defelt) = makeDefElem("maxvalue", (Node *)(yyvsp[(2) - (2)].value)); } break; case 358: #line 2263 "gram.y" { - yyval.defelt = makeDefElem("minvalue", (Node *)yyvsp[0].value); + (yyval.defelt) = makeDefElem("minvalue", (Node *)(yyvsp[(2) - (2)].value)); } break; case 359: #line 2267 "gram.y" { - yyval.defelt = makeDefElem("maxvalue", NULL); + (yyval.defelt) = makeDefElem("maxvalue", NULL); } break; case 360: #line 2271 "gram.y" { - yyval.defelt = makeDefElem("minvalue", NULL); + (yyval.defelt) = makeDefElem("minvalue", NULL); } break; case 361: #line 2275 "gram.y" { - yyval.defelt = makeDefElem("start", (Node *)yyvsp[0].value); + (yyval.defelt) = makeDefElem("start", (Node *)(yyvsp[(3) - (3)].value)); } break; case 362: #line 2279 "gram.y" { - yyval.defelt = makeDefElem("restart", (Node *)yyvsp[0].value); + (yyval.defelt) = makeDefElem("restart", (Node *)(yyvsp[(3) - (3)].value)); } break; @@ -13178,42 +13518,42 @@ yyreduce: case 365: #line 2289 "gram.y" - { yyval.value = yyvsp[0].value; } + { (yyval.value) = (yyvsp[(1) - (1)].value); } break; case 366: #line 2290 "gram.y" - { yyval.value = yyvsp[0].value; } + { (yyval.value) = (yyvsp[(1) - (1)].value); } break; case 367: #line 2293 "gram.y" - { yyval.value = makeFloat(yyvsp[0].str); } + { (yyval.value) = makeFloat((yyvsp[(1) - (1)].str)); } break; case 368: #line 2295 "gram.y" { - yyval.value = makeFloat(yyvsp[0].str); - doNegateFloat(yyval.value); + (yyval.value) = makeFloat((yyvsp[(2) - (2)].str)); + doNegateFloat((yyval.value)); } break; case 369: #line 2301 "gram.y" - { yyval.value = makeInteger(yyvsp[0].ival); } + { (yyval.value) = makeInteger((yyvsp[(1) - (1)].ival)); } break; case 370: #line 2314 "gram.y" { CreatePLangStmt *n = makeNode(CreatePLangStmt); - n->plname = yyvsp[0].str; + n->plname = (yyvsp[(5) - (5)].str); /* parameters are all to be supplied by system */ n->plhandler = NIL; n->plvalidator = NIL; n->pltrusted = false; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -13221,62 +13561,62 @@ yyreduce: #line 2325 "gram.y" { CreatePLangStmt *n = makeNode(CreatePLangStmt); - n->plname = yyvsp[-4].str; - n->plhandler = yyvsp[-2].list; - n->plvalidator = yyvsp[-1].list; - n->pltrusted = yyvsp[-7].boolean; + n->plname = (yyvsp[(5) - (9)].str); + n->plhandler = (yyvsp[(7) - (9)].list); + n->plvalidator = (yyvsp[(8) - (9)].list); + n->pltrusted = (yyvsp[(2) - (9)].boolean); /* LANCOMPILER is now ignored entirely */ - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; case 372: #line 2337 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 373: #line 2338 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 374: #line 2346 "gram.y" - { yyval.list = list_make1(makeString(yyvsp[0].str)); } + { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); } break; case 375: #line 2347 "gram.y" - { yyval.list = lcons(makeString(yyvsp[-1].str), yyvsp[0].list); } + { (yyval.list) = lcons(makeString((yyvsp[(1) - (2)].str)), (yyvsp[(2) - (2)].list)); } break; case 376: #line 2351 "gram.y" - { yyval.list = yyvsp[0].list; } + { (yyval.list) = (yyvsp[(2) - (2)].list); } break; case 377: #line 2352 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 378: #line 2356 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(2) - (2)].str); } break; case 379: #line 2357 "gram.y" - { yyval.str = NULL; } + { (yyval.str) = NULL; } break; case 380: #line 2362 "gram.y" { DropPLangStmt *n = makeNode(DropPLangStmt); - n->plname = yyvsp[-1].str; - n->behavior = yyvsp[0].dbehavior; - yyval.node = (Node *)n; + n->plname = (yyvsp[(4) - (5)].str); + n->behavior = (yyvsp[(5) - (5)].dbehavior); + (yyval.node) = (Node *)n; } break; @@ -13294,29 +13634,29 @@ yyreduce: #line 2383 "gram.y" { CreateTableSpaceStmt *n = makeNode(CreateTableSpaceStmt); - n->tablespacename = yyvsp[-3].str; - n->owner = yyvsp[-2].str; - n->location = yyvsp[0].str; - yyval.node = (Node *) n; + n->tablespacename = (yyvsp[(3) - (6)].str); + n->owner = (yyvsp[(4) - (6)].str); + n->location = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *) n; } break; case 384: #line 2392 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(2) - (2)].str); } break; case 385: #line 2393 "gram.y" - { yyval.str = NULL; } + { (yyval.str) = NULL; } break; case 386: #line 2407 "gram.y" { DropTableSpaceStmt *n = makeNode(DropTableSpaceStmt); - n->tablespacename = yyvsp[0].str; - yyval.node = (Node *) n; + n->tablespacename = (yyvsp[(3) - (3)].str); + (yyval.node) = (Node *) n; } break; @@ -13324,18 +13664,18 @@ yyreduce: #line 2426 "gram.y" { CreateTrigStmt *n = makeNode(CreateTrigStmt); - n->trigname = yyvsp[-11].str; - n->relation = yyvsp[-7].range; - n->funcname = yyvsp[-3].list; - n->args = yyvsp[-1].list; - n->before = yyvsp[-10].boolean; - n->row = yyvsp[-6].boolean; - memcpy(n->actions, yyvsp[-9].str, 4); + n->trigname = (yyvsp[(3) - (14)].str); + n->relation = (yyvsp[(7) - (14)].range); + n->funcname = (yyvsp[(11) - (14)].list); + n->args = (yyvsp[(13) - (14)].list); + n->before = (yyvsp[(4) - (14)].boolean); + n->row = (yyvsp[(8) - (14)].boolean); + memcpy(n->actions, (yyvsp[(5) - (14)].str), 4); n->isconstraint = FALSE; n->deferrable = FALSE; n->initdeferred = FALSE; n->constrrel = NULL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -13343,38 +13683,38 @@ yyreduce: #line 2446 "gram.y" { CreateTrigStmt *n = makeNode(CreateTrigStmt); - n->trigname = yyvsp[-15].str; - n->relation = yyvsp[-11].range; - n->funcname = yyvsp[-3].list; - n->args = yyvsp[-1].list; + n->trigname = (yyvsp[(4) - (19)].str); + n->relation = (yyvsp[(8) - (19)].range); + n->funcname = (yyvsp[(16) - (19)].list); + n->args = (yyvsp[(18) - (19)].list); n->before = FALSE; n->row = TRUE; - memcpy(n->actions, yyvsp[-13].str, 4); + memcpy(n->actions, (yyvsp[(6) - (19)].str), 4); n->isconstraint = TRUE; - n->deferrable = (yyvsp[-9].ival & 1) != 0; - n->initdeferred = (yyvsp[-9].ival & 2) != 0; + n->deferrable = ((yyvsp[(10) - (19)].ival) & 1) != 0; + n->initdeferred = ((yyvsp[(10) - (19)].ival) & 2) != 0; - n->constrrel = yyvsp[-10].range; - yyval.node = (Node *)n; + n->constrrel = (yyvsp[(9) - (19)].range); + (yyval.node) = (Node *)n; } break; case 389: #line 2465 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 390: #line 2466 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 391: #line 2471 "gram.y" { char *e = palloc(4); - e[0] = yyvsp[0].chr; e[1] = '\0'; - yyval.str = e; + e[0] = (yyvsp[(1) - (1)].chr); e[1] = '\0'; + (yyval.str) = e; } break; @@ -13382,8 +13722,8 @@ yyreduce: #line 2477 "gram.y" { char *e = palloc(4); - e[0] = yyvsp[-2].chr; e[1] = yyvsp[0].chr; e[2] = '\0'; - yyval.str = e; + e[0] = (yyvsp[(1) - (3)].chr); e[1] = (yyvsp[(3) - (3)].chr); e[2] = '\0'; + (yyval.str) = e; } break; @@ -13391,30 +13731,30 @@ yyreduce: #line 2483 "gram.y" { char *e = palloc(4); - e[0] = yyvsp[-4].chr; e[1] = yyvsp[-2].chr; e[2] = yyvsp[0].chr; e[3] = '\0'; - yyval.str = e; + e[0] = (yyvsp[(1) - (5)].chr); e[1] = (yyvsp[(3) - (5)].chr); e[2] = (yyvsp[(5) - (5)].chr); e[3] = '\0'; + (yyval.str) = e; } break; case 394: #line 2491 "gram.y" - { yyval.chr = 'i'; } + { (yyval.chr) = 'i'; } break; case 395: #line 2492 "gram.y" - { yyval.chr = 'd'; } + { (yyval.chr) = 'd'; } break; case 396: #line 2493 "gram.y" - { yyval.chr = 'u'; } + { (yyval.chr) = 'u'; } break; case 397: #line 2498 "gram.y" { - yyval.boolean = yyvsp[0].boolean; + (yyval.boolean) = (yyvsp[(3) - (3)].boolean); } break; @@ -13425,7 +13765,7 @@ yyreduce: * If ROW/STATEMENT not specified, default to * STATEMENT, per SQL */ - yyval.boolean = FALSE; + (yyval.boolean) = FALSE; } break; @@ -13441,144 +13781,144 @@ yyreduce: case 401: #line 2517 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 402: #line 2518 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 403: #line 2522 "gram.y" - { yyval.list = list_make1(yyvsp[0].value); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].value)); } break; case 404: #line 2523 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].value); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].value)); } break; case 405: #line 2524 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 406: #line 2529 "gram.y" { char buf[64]; - snprintf(buf, sizeof(buf), "%d", yyvsp[0].ival); - yyval.value = makeString(pstrdup(buf)); + snprintf(buf, sizeof(buf), "%d", (yyvsp[(1) - (1)].ival)); + (yyval.value) = makeString(pstrdup(buf)); } break; case 407: #line 2534 "gram.y" - { yyval.value = makeString(yyvsp[0].str); } + { (yyval.value) = makeString((yyvsp[(1) - (1)].str)); } break; case 408: #line 2535 "gram.y" - { yyval.value = makeString(yyvsp[0].str); } + { (yyval.value) = makeString((yyvsp[(1) - (1)].str)); } break; case 409: #line 2536 "gram.y" - { yyval.value = makeString(yyvsp[0].str); } + { (yyval.value) = makeString((yyvsp[(1) - (1)].str)); } break; case 410: #line 2537 "gram.y" - { yyval.value = makeString(yyvsp[0].str); } + { (yyval.value) = makeString((yyvsp[(1) - (1)].str)); } break; case 411: #line 2538 "gram.y" - { yyval.value = makeString(yyvsp[0].str); } + { (yyval.value) = makeString((yyvsp[(1) - (1)].str)); } break; case 412: #line 2542 "gram.y" - { yyval.range = yyvsp[0].range; } + { (yyval.range) = (yyvsp[(2) - (2)].range); } break; case 413: #line 2543 "gram.y" - { yyval.range = NULL; } + { (yyval.range) = NULL; } break; case 414: #line 2548 "gram.y" - { yyval.ival = yyvsp[0].ival; } + { (yyval.ival) = (yyvsp[(1) - (1)].ival); } break; case 415: #line 2550 "gram.y" { - if (yyvsp[-1].ival == 0 && yyvsp[0].ival != 0) + if ((yyvsp[(1) - (2)].ival) == 0 && (yyvsp[(2) - (2)].ival) != 0) ereport(ERROR, (errcode(ERRCODE_SYNTAX_ERROR), errmsg("constraint declared INITIALLY DEFERRED must be DEFERRABLE"))); - yyval.ival = yyvsp[-1].ival | yyvsp[0].ival; + (yyval.ival) = (yyvsp[(1) - (2)].ival) | (yyvsp[(2) - (2)].ival); } break; case 416: #line 2558 "gram.y" { - if (yyvsp[0].ival != 0) - yyval.ival = 3; + if ((yyvsp[(1) - (1)].ival) != 0) + (yyval.ival) = 3; else - yyval.ival = 0; + (yyval.ival) = 0; } break; case 417: #line 2565 "gram.y" { - if (yyvsp[0].ival == 0 && yyvsp[-1].ival != 0) + if ((yyvsp[(2) - (2)].ival) == 0 && (yyvsp[(1) - (2)].ival) != 0) ereport(ERROR, (errcode(ERRCODE_SYNTAX_ERROR), errmsg("constraint declared INITIALLY DEFERRED must be DEFERRABLE"))); - yyval.ival = yyvsp[-1].ival | yyvsp[0].ival; + (yyval.ival) = (yyvsp[(1) - (2)].ival) | (yyvsp[(2) - (2)].ival); } break; case 418: #line 2573 "gram.y" - { yyval.ival = 0; } + { (yyval.ival) = 0; } break; case 419: #line 2577 "gram.y" - { yyval.ival = 0; } + { (yyval.ival) = 0; } break; case 420: #line 2578 "gram.y" - { yyval.ival = 1; } + { (yyval.ival) = 1; } break; case 421: #line 2582 "gram.y" - { yyval.ival = 0; } + { (yyval.ival) = 0; } break; case 422: #line 2583 "gram.y" - { yyval.ival = 2; } + { (yyval.ival) = 2; } break; case 423: #line 2589 "gram.y" { DropPropertyStmt *n = makeNode(DropPropertyStmt); - n->relation = yyvsp[-1].range; - n->property = yyvsp[-3].str; - n->behavior = yyvsp[0].dbehavior; + n->relation = (yyvsp[(5) - (6)].range); + n->property = (yyvsp[(3) - (6)].str); + n->behavior = (yyvsp[(6) - (6)].dbehavior); n->removeType = OBJECT_TRIGGER; - yyval.node = (Node *) n; + (yyval.node) = (Node *) n; } break; @@ -13586,17 +13926,17 @@ yyreduce: #line 2611 "gram.y" { CreateTrigStmt *n = makeNode(CreateTrigStmt); - n->trigname = yyvsp[-5].str; - n->args = list_make1(yyvsp[-2].node); + n->trigname = (yyvsp[(3) - (8)].str); + n->args = list_make1((yyvsp[(6) - (8)].node)); n->isconstraint = TRUE; - n->deferrable = (yyvsp[0].ival & 1) != 0; - n->initdeferred = (yyvsp[0].ival & 2) != 0; + n->deferrable = ((yyvsp[(8) - (8)].ival) & 1) != 0; + n->initdeferred = ((yyvsp[(8) - (8)].ival) & 2) != 0; ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), errmsg("CREATE ASSERTION is not yet implemented"))); - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -13605,13 +13945,13 @@ yyreduce: { DropPropertyStmt *n = makeNode(DropPropertyStmt); n->relation = NULL; - n->property = yyvsp[-1].str; - n->behavior = yyvsp[0].dbehavior; + n->property = (yyvsp[(3) - (4)].str); + n->behavior = (yyvsp[(4) - (4)].dbehavior); n->removeType = OBJECT_TRIGGER; /* XXX */ ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), errmsg("DROP ASSERTION is not yet implemented"))); - yyval.node = (Node *) n; + (yyval.node) = (Node *) n; } break; @@ -13620,9 +13960,9 @@ yyreduce: { DefineStmt *n = makeNode(DefineStmt); n->kind = OBJECT_AGGREGATE; - n->defnames = yyvsp[-1].list; - n->definition = yyvsp[0].list; - yyval.node = (Node *)n; + n->defnames = (yyvsp[(3) - (4)].list); + n->definition = (yyvsp[(4) - (4)].list); + (yyval.node) = (Node *)n; } break; @@ -13631,9 +13971,9 @@ yyreduce: { DefineStmt *n = makeNode(DefineStmt); n->kind = OBJECT_OPERATOR; - n->defnames = yyvsp[-1].list; - n->definition = yyvsp[0].list; - yyval.node = (Node *)n; + n->defnames = (yyvsp[(3) - (4)].list); + n->definition = (yyvsp[(4) - (4)].list); + (yyval.node) = (Node *)n; } break; @@ -13642,9 +13982,9 @@ yyreduce: { DefineStmt *n = makeNode(DefineStmt); n->kind = OBJECT_TYPE; - n->defnames = yyvsp[-1].list; - n->definition = yyvsp[0].list; - yyval.node = (Node *)n; + n->defnames = (yyvsp[(3) - (4)].list); + n->definition = (yyvsp[(4) - (4)].list); + (yyval.node) = (Node *)n; } break; @@ -13655,106 +13995,106 @@ yyreduce: RangeVar *r = makeNode(RangeVar); /* can't use qualified_name, sigh */ - switch (list_length(yyvsp[-4].list)) + switch (list_length((yyvsp[(3) - (7)].list))) { case 1: r->catalogname = NULL; r->schemaname = NULL; - r->relname = strVal(linitial(yyvsp[-4].list)); + r->relname = strVal(linitial((yyvsp[(3) - (7)].list))); break; case 2: r->catalogname = NULL; - r->schemaname = strVal(linitial(yyvsp[-4].list)); - r->relname = strVal(lsecond(yyvsp[-4].list)); + r->schemaname = strVal(linitial((yyvsp[(3) - (7)].list))); + r->relname = strVal(lsecond((yyvsp[(3) - (7)].list))); break; case 3: - r->catalogname = strVal(linitial(yyvsp[-4].list)); - r->schemaname = strVal(lsecond(yyvsp[-4].list)); - r->relname = strVal(lthird(yyvsp[-4].list)); + r->catalogname = strVal(linitial((yyvsp[(3) - (7)].list))); + r->schemaname = strVal(lsecond((yyvsp[(3) - (7)].list))); + r->relname = strVal(lthird((yyvsp[(3) - (7)].list))); break; default: ereport(ERROR, (errcode(ERRCODE_SYNTAX_ERROR), errmsg("improper qualified name (too many dotted names): %s", - NameListToString(yyvsp[-4].list)))); + NameListToString((yyvsp[(3) - (7)].list))))); break; } n->typevar = r; - n->coldeflist = yyvsp[-1].list; - yyval.node = (Node *)n; + n->coldeflist = (yyvsp[(6) - (7)].list); + (yyval.node) = (Node *)n; } break; case 430: #line 2711 "gram.y" - { yyval.list = yyvsp[-1].list; } + { (yyval.list) = (yyvsp[(2) - (3)].list); } break; case 431: #line 2714 "gram.y" - { yyval.list = list_make1(yyvsp[0].defelt); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); } break; case 432: #line 2715 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].defelt); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); } break; case 433: #line 2719 "gram.y" { - yyval.defelt = makeDefElem(yyvsp[-2].str, (Node *)yyvsp[0].node); + (yyval.defelt) = makeDefElem((yyvsp[(1) - (3)].str), (Node *)(yyvsp[(3) - (3)].node)); } break; case 434: #line 2723 "gram.y" { - yyval.defelt = makeDefElem(yyvsp[0].str, NULL); + (yyval.defelt) = makeDefElem((yyvsp[(1) - (1)].str), NULL); } break; case 435: #line 2729 "gram.y" - { yyval.node = (Node *)yyvsp[0].typnam; } + { (yyval.node) = (Node *)(yyvsp[(1) - (1)].typnam); } break; case 436: #line 2730 "gram.y" - { yyval.node = (Node *)yyvsp[0].list; } + { (yyval.node) = (Node *)(yyvsp[(1) - (1)].list); } break; case 437: #line 2731 "gram.y" - { yyval.node = (Node *)yyvsp[0].value; } + { (yyval.node) = (Node *)(yyvsp[(1) - (1)].value); } break; case 438: #line 2732 "gram.y" - { yyval.node = (Node *)makeString(yyvsp[0].str); } + { (yyval.node) = (Node *)makeString((yyvsp[(1) - (1)].str)); } break; case 439: #line 2747 "gram.y" { CreateOpClassStmt *n = makeNode(CreateOpClassStmt); - n->opclassname = yyvsp[-8].list; - n->isDefault = yyvsp[-7].boolean; - n->datatype = yyvsp[-4].typnam; - n->amname = yyvsp[-2].str; - n->items = yyvsp[0].list; - yyval.node = (Node *) n; + n->opclassname = (yyvsp[(4) - (12)].list); + n->isDefault = (yyvsp[(5) - (12)].boolean); + n->datatype = (yyvsp[(8) - (12)].typnam); + n->amname = (yyvsp[(10) - (12)].str); + n->items = (yyvsp[(12) - (12)].list); + (yyval.node) = (Node *) n; } break; case 440: #line 2759 "gram.y" - { yyval.list = list_make1(yyvsp[0].node); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); } break; case 441: #line 2760 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; case 442: @@ -13762,11 +14102,11 @@ yyreduce: { CreateOpClassItem *n = makeNode(CreateOpClassItem); n->itemtype = OPCLASS_ITEM_OPERATOR; - n->name = yyvsp[-1].list; + n->name = (yyvsp[(3) - (4)].list); n->args = NIL; - n->number = yyvsp[-2].ival; - n->recheck = yyvsp[0].boolean; - yyval.node = (Node *) n; + n->number = (yyvsp[(2) - (4)].ival); + n->recheck = (yyvsp[(4) - (4)].boolean); + (yyval.node) = (Node *) n; } break; @@ -13775,11 +14115,11 @@ yyreduce: { CreateOpClassItem *n = makeNode(CreateOpClassItem); n->itemtype = OPCLASS_ITEM_OPERATOR; - n->name = yyvsp[-4].list; - n->args = yyvsp[-2].list; - n->number = yyvsp[-5].ival; - n->recheck = yyvsp[0].boolean; - yyval.node = (Node *) n; + n->name = (yyvsp[(3) - (7)].list); + n->args = (yyvsp[(5) - (7)].list); + n->number = (yyvsp[(2) - (7)].ival); + n->recheck = (yyvsp[(7) - (7)].boolean); + (yyval.node) = (Node *) n; } break; @@ -13788,10 +14128,10 @@ yyreduce: { CreateOpClassItem *n = makeNode(CreateOpClassItem); n->itemtype = OPCLASS_ITEM_FUNCTION; - n->name = yyvsp[-1].list; - n->args = extractArgTypes(yyvsp[0].list); - n->number = yyvsp[-2].ival; - yyval.node = (Node *) n; + n->name = (yyvsp[(3) - (4)].list); + n->args = extractArgTypes((yyvsp[(4) - (4)].list)); + n->number = (yyvsp[(2) - (4)].ival); + (yyval.node) = (Node *) n; } break; @@ -13800,39 +14140,39 @@ yyreduce: { CreateOpClassItem *n = makeNode(CreateOpClassItem); n->itemtype = OPCLASS_ITEM_STORAGETYPE; - n->storedtype = yyvsp[0].typnam; - yyval.node = (Node *) n; + n->storedtype = (yyvsp[(2) - (2)].typnam); + (yyval.node) = (Node *) n; } break; case 446: #line 2802 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 447: #line 2803 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 448: #line 2806 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 449: #line 2807 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 450: #line 2813 "gram.y" { RemoveOpClassStmt *n = makeNode(RemoveOpClassStmt); - n->opclassname = yyvsp[-3].list; - n->amname = yyvsp[-1].str; - n->behavior = yyvsp[0].dbehavior; - yyval.node = (Node *) n; + n->opclassname = (yyvsp[(4) - (7)].list); + n->amname = (yyvsp[(6) - (7)].str); + n->behavior = (yyvsp[(7) - (7)].dbehavior); + (yyval.node) = (Node *) n; } break; @@ -13840,89 +14180,89 @@ yyreduce: #line 2832 "gram.y" { DropStmt *n = makeNode(DropStmt); - n->removeType = yyvsp[-2].objtype; - n->objects = yyvsp[-1].list; - n->behavior = yyvsp[0].dbehavior; - yyval.node = (Node *)n; + n->removeType = (yyvsp[(2) - (4)].objtype); + n->objects = (yyvsp[(3) - (4)].list); + n->behavior = (yyvsp[(4) - (4)].dbehavior); + (yyval.node) = (Node *)n; } break; case 452: #line 2841 "gram.y" - { yyval.objtype = OBJECT_TABLE; } + { (yyval.objtype) = OBJECT_TABLE; } break; case 453: #line 2842 "gram.y" - { yyval.objtype = OBJECT_SEQUENCE; } + { (yyval.objtype) = OBJECT_SEQUENCE; } break; case 454: #line 2843 "gram.y" - { yyval.objtype = OBJECT_VIEW; } + { (yyval.objtype) = OBJECT_VIEW; } break; case 455: #line 2844 "gram.y" - { yyval.objtype = OBJECT_INDEX; } + { (yyval.objtype) = OBJECT_INDEX; } break; case 456: #line 2845 "gram.y" - { yyval.objtype = OBJECT_TYPE; } + { (yyval.objtype) = OBJECT_TYPE; } break; case 457: #line 2846 "gram.y" - { yyval.objtype = OBJECT_DOMAIN; } + { (yyval.objtype) = OBJECT_DOMAIN; } break; case 458: #line 2847 "gram.y" - { yyval.objtype = OBJECT_CONVERSION; } + { (yyval.objtype) = OBJECT_CONVERSION; } break; case 459: #line 2848 "gram.y" - { yyval.objtype = OBJECT_SCHEMA; } + { (yyval.objtype) = OBJECT_SCHEMA; } break; case 460: #line 2852 "gram.y" - { yyval.list = list_make1(yyvsp[0].list); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].list)); } break; case 461: #line 2853 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].list); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list)); } break; case 462: #line 2856 "gram.y" - { yyval.list = list_make1(makeString(yyvsp[0].str)); } + { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); } break; case 463: #line 2857 "gram.y" - { yyval.list = lcons(makeString(yyvsp[-1].str), yyvsp[0].list); } + { (yyval.list) = lcons(makeString((yyvsp[(1) - (2)].str)), (yyvsp[(2) - (2)].list)); } break; case 464: #line 2861 "gram.y" - { yyval.list = list_make1(makeString(yyvsp[0].str)); } + { (yyval.list) = list_make1(makeString((yyvsp[(2) - (2)].str))); } break; case 465: #line 2863 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, makeString(yyvsp[0].str)); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), makeString((yyvsp[(3) - (3)].str))); } break; case 466: #line 2876 "gram.y" { TruncateStmt *n = makeNode(TruncateStmt); - n->relations = yyvsp[0].list; - yyval.node = (Node *)n; + n->relations = (yyvsp[(3) - (3)].list); + (yyval.node) = (Node *)n; } break; @@ -13930,11 +14270,11 @@ yyreduce: #line 2902 "gram.y" { CommentStmt *n = makeNode(CommentStmt); - n->objtype = yyvsp[-3].objtype; - n->objname = yyvsp[-2].list; + n->objtype = (yyvsp[(3) - (6)].objtype); + n->objname = (yyvsp[(4) - (6)].list); n->objargs = NIL; - n->comment = yyvsp[0].str; - yyval.node = (Node *) n; + n->comment = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *) n; } break; @@ -13943,10 +14283,10 @@ yyreduce: { CommentStmt *n = makeNode(CommentStmt); n->objtype = OBJECT_AGGREGATE; - n->objname = yyvsp[-5].list; - n->objargs = list_make1(yyvsp[-3].typnam); - n->comment = yyvsp[0].str; - yyval.node = (Node *) n; + n->objname = (yyvsp[(4) - (9)].list); + n->objargs = list_make1((yyvsp[(6) - (9)].typnam)); + n->comment = (yyvsp[(9) - (9)].str); + (yyval.node) = (Node *) n; } break; @@ -13955,10 +14295,10 @@ yyreduce: { CommentStmt *n = makeNode(CommentStmt); n->objtype = OBJECT_FUNCTION; - n->objname = yyvsp[-3].list; - n->objargs = extractArgTypes(yyvsp[-2].list); - n->comment = yyvsp[0].str; - yyval.node = (Node *) n; + n->objname = (yyvsp[(4) - (7)].list); + n->objargs = extractArgTypes((yyvsp[(5) - (7)].list)); + n->comment = (yyvsp[(7) - (7)].str); + (yyval.node) = (Node *) n; } break; @@ -13967,10 +14307,10 @@ yyreduce: { CommentStmt *n = makeNode(CommentStmt); n->objtype = OBJECT_OPERATOR; - n->objname = yyvsp[-5].list; - n->objargs = yyvsp[-3].list; - n->comment = yyvsp[0].str; - yyval.node = (Node *) n; + n->objname = (yyvsp[(4) - (9)].list); + n->objargs = (yyvsp[(6) - (9)].list); + n->comment = (yyvsp[(9) - (9)].str); + (yyval.node) = (Node *) n; } break; @@ -13979,10 +14319,10 @@ yyreduce: { CommentStmt *n = makeNode(CommentStmt); n->objtype = OBJECT_CONSTRAINT; - n->objname = lappend(yyvsp[-2].list, makeString(yyvsp[-4].str)); + n->objname = lappend((yyvsp[(6) - (8)].list), makeString((yyvsp[(4) - (8)].str))); n->objargs = NIL; - n->comment = yyvsp[0].str; - yyval.node = (Node *) n; + n->comment = (yyvsp[(8) - (8)].str); + (yyval.node) = (Node *) n; } break; @@ -13991,10 +14331,10 @@ yyreduce: { CommentStmt *n = makeNode(CommentStmt); n->objtype = OBJECT_RULE; - n->objname = lappend(yyvsp[-2].list, makeString(yyvsp[-4].str)); + n->objname = lappend((yyvsp[(6) - (8)].list), makeString((yyvsp[(4) - (8)].str))); n->objargs = NIL; - n->comment = yyvsp[0].str; - yyval.node = (Node *) n; + n->comment = (yyvsp[(8) - (8)].str); + (yyval.node) = (Node *) n; } break; @@ -14004,10 +14344,10 @@ yyreduce: /* Obsolete syntax supported for awhile for compatibility */ CommentStmt *n = makeNode(CommentStmt); n->objtype = OBJECT_RULE; - n->objname = list_make1(makeString(yyvsp[-2].str)); + n->objname = list_make1(makeString((yyvsp[(4) - (6)].str))); n->objargs = NIL; - n->comment = yyvsp[0].str; - yyval.node = (Node *) n; + n->comment = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *) n; } break; @@ -14016,10 +14356,10 @@ yyreduce: { CommentStmt *n = makeNode(CommentStmt); n->objtype = OBJECT_TRIGGER; - n->objname = lappend(yyvsp[-2].list, makeString(yyvsp[-4].str)); + n->objname = lappend((yyvsp[(6) - (8)].list), makeString((yyvsp[(4) - (8)].str))); n->objargs = NIL; - n->comment = yyvsp[0].str; - yyval.node = (Node *) n; + n->comment = (yyvsp[(8) - (8)].str); + (yyval.node) = (Node *) n; } break; @@ -14028,10 +14368,10 @@ yyreduce: { CommentStmt *n = makeNode(CommentStmt); n->objtype = OBJECT_OPCLASS; - n->objname = yyvsp[-4].list; - n->objargs = list_make1(makeString(yyvsp[-2].str)); - n->comment = yyvsp[0].str; - yyval.node = (Node *) n; + n->objname = (yyvsp[(5) - (9)].list); + n->objargs = list_make1(makeString((yyvsp[(7) - (9)].str))); + n->comment = (yyvsp[(9) - (9)].str); + (yyval.node) = (Node *) n; } break; @@ -14040,10 +14380,10 @@ yyreduce: { CommentStmt *n = makeNode(CommentStmt); n->objtype = OBJECT_LARGEOBJECT; - n->objname = list_make1(yyvsp[-2].value); + n->objname = list_make1((yyvsp[(5) - (7)].value)); n->objargs = NIL; - n->comment = yyvsp[0].str; - yyval.node = (Node *) n; + n->comment = (yyvsp[(7) - (7)].str); + (yyval.node) = (Node *) n; } break; @@ -14052,10 +14392,10 @@ yyreduce: { CommentStmt *n = makeNode(CommentStmt); n->objtype = OBJECT_CAST; - n->objname = list_make1(yyvsp[-5].typnam); - n->objargs = list_make1(yyvsp[-3].typnam); - n->comment = yyvsp[0].str; - yyval.node = (Node *) n; + n->objname = list_make1((yyvsp[(5) - (10)].typnam)); + n->objargs = list_make1((yyvsp[(7) - (10)].typnam)); + n->comment = (yyvsp[(10) - (10)].str); + (yyval.node) = (Node *) n; } break; @@ -14064,80 +14404,80 @@ yyreduce: { CommentStmt *n = makeNode(CommentStmt); n->objtype = OBJECT_LANGUAGE; - n->objname = yyvsp[-2].list; + n->objname = (yyvsp[(5) - (7)].list); n->objargs = NIL; - n->comment = yyvsp[0].str; - yyval.node = (Node *) n; + n->comment = (yyvsp[(7) - (7)].str); + (yyval.node) = (Node *) n; } break; case 479: #line 3015 "gram.y" - { yyval.objtype = OBJECT_COLUMN; } + { (yyval.objtype) = OBJECT_COLUMN; } break; case 480: #line 3016 "gram.y" - { yyval.objtype = OBJECT_DATABASE; } + { (yyval.objtype) = OBJECT_DATABASE; } break; case 481: #line 3017 "gram.y" - { yyval.objtype = OBJECT_SCHEMA; } + { (yyval.objtype) = OBJECT_SCHEMA; } break; case 482: #line 3018 "gram.y" - { yyval.objtype = OBJECT_INDEX; } + { (yyval.objtype) = OBJECT_INDEX; } break; case 483: #line 3019 "gram.y" - { yyval.objtype = OBJECT_SEQUENCE; } + { (yyval.objtype) = OBJECT_SEQUENCE; } break; case 484: #line 3020 "gram.y" - { yyval.objtype = OBJECT_TABLE; } + { (yyval.objtype) = OBJECT_TABLE; } break; case 485: #line 3021 "gram.y" - { yyval.objtype = OBJECT_TYPE; } + { (yyval.objtype) = OBJECT_TYPE; } break; case 486: #line 3022 "gram.y" - { yyval.objtype = OBJECT_TYPE; } + { (yyval.objtype) = OBJECT_TYPE; } break; case 487: #line 3023 "gram.y" - { yyval.objtype = OBJECT_VIEW; } + { (yyval.objtype) = OBJECT_VIEW; } break; case 488: #line 3024 "gram.y" - { yyval.objtype = OBJECT_CONVERSION; } + { (yyval.objtype) = OBJECT_CONVERSION; } break; case 489: #line 3028 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 490: #line 3029 "gram.y" - { yyval.str = NULL; } + { (yyval.str) = NULL; } break; case 491: #line 3040 "gram.y" { - FetchStmt *n = (FetchStmt *) yyvsp[-2].node; - n->portalname = yyvsp[0].str; + FetchStmt *n = (FetchStmt *) (yyvsp[(2) - (4)].node); + n->portalname = (yyvsp[(4) - (4)].str); n->ismove = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -14147,19 +14487,19 @@ yyreduce: FetchStmt *n = makeNode(FetchStmt); n->direction = FETCH_FORWARD; n->howMany = 1; - n->portalname = yyvsp[0].str; + n->portalname = (yyvsp[(2) - (2)].str); n->ismove = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; case 493: #line 3056 "gram.y" { - FetchStmt *n = (FetchStmt *) yyvsp[-2].node; - n->portalname = yyvsp[0].str; + FetchStmt *n = (FetchStmt *) (yyvsp[(2) - (4)].node); + n->portalname = (yyvsp[(4) - (4)].str); n->ismove = TRUE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -14169,9 +14509,9 @@ yyreduce: FetchStmt *n = makeNode(FetchStmt); n->direction = FETCH_FORWARD; n->howMany = 1; - n->portalname = yyvsp[0].str; + n->portalname = (yyvsp[(2) - (2)].str); n->ismove = TRUE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -14181,7 +14521,7 @@ yyreduce: FetchStmt *n = makeNode(FetchStmt); n->direction = FETCH_FORWARD; n->howMany = 1; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -14191,7 +14531,7 @@ yyreduce: FetchStmt *n = makeNode(FetchStmt); n->direction = FETCH_FORWARD; n->howMany = 1; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -14201,7 +14541,7 @@ yyreduce: FetchStmt *n = makeNode(FetchStmt); n->direction = FETCH_BACKWARD; n->howMany = 1; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -14211,7 +14551,7 @@ yyreduce: FetchStmt *n = makeNode(FetchStmt); n->direction = FETCH_ABSOLUTE; n->howMany = 1; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -14221,7 +14561,7 @@ yyreduce: FetchStmt *n = makeNode(FetchStmt); n->direction = FETCH_ABSOLUTE; n->howMany = -1; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -14230,8 +14570,8 @@ yyreduce: { FetchStmt *n = makeNode(FetchStmt); n->direction = FETCH_ABSOLUTE; - n->howMany = yyvsp[0].ival; - yyval.node = (Node *)n; + n->howMany = (yyvsp[(2) - (2)].ival); + (yyval.node) = (Node *)n; } break; @@ -14240,8 +14580,8 @@ yyreduce: { FetchStmt *n = makeNode(FetchStmt); n->direction = FETCH_RELATIVE; - n->howMany = yyvsp[0].ival; - yyval.node = (Node *)n; + n->howMany = (yyvsp[(2) - (2)].ival); + (yyval.node) = (Node *)n; } break; @@ -14250,8 +14590,8 @@ yyreduce: { FetchStmt *n = makeNode(FetchStmt); n->direction = FETCH_FORWARD; - n->howMany = yyvsp[0].ival; - yyval.node = (Node *)n; + n->howMany = (yyvsp[(1) - (1)].ival); + (yyval.node) = (Node *)n; } break; @@ -14261,7 +14601,7 @@ yyreduce: FetchStmt *n = makeNode(FetchStmt); n->direction = FETCH_FORWARD; n->howMany = FETCH_ALL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -14271,7 +14611,7 @@ yyreduce: FetchStmt *n = makeNode(FetchStmt); n->direction = FETCH_FORWARD; n->howMany = 1; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -14280,8 +14620,8 @@ yyreduce: { FetchStmt *n = makeNode(FetchStmt); n->direction = FETCH_FORWARD; - n->howMany = yyvsp[0].ival; - yyval.node = (Node *)n; + n->howMany = (yyvsp[(2) - (2)].ival); + (yyval.node) = (Node *)n; } break; @@ -14291,7 +14631,7 @@ yyreduce: FetchStmt *n = makeNode(FetchStmt); n->direction = FETCH_FORWARD; n->howMany = FETCH_ALL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -14301,7 +14641,7 @@ yyreduce: FetchStmt *n = makeNode(FetchStmt); n->direction = FETCH_BACKWARD; n->howMany = 1; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -14310,8 +14650,8 @@ yyreduce: { FetchStmt *n = makeNode(FetchStmt); n->direction = FETCH_BACKWARD; - n->howMany = yyvsp[0].ival; - yyval.node = (Node *)n; + n->howMany = (yyvsp[(2) - (2)].ival); + (yyval.node) = (Node *)n; } break; @@ -14321,7 +14661,7 @@ yyreduce: FetchStmt *n = makeNode(FetchStmt); n->direction = FETCH_BACKWARD; n->howMany = FETCH_ALL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -14340,12 +14680,12 @@ yyreduce: { GrantStmt *n = makeNode(GrantStmt); n->is_grant = true; - n->privileges = yyvsp[-5].list; - n->objtype = (yyvsp[-3].privtarget)->objtype; - n->objects = (yyvsp[-3].privtarget)->objs; - n->grantees = yyvsp[-1].list; - n->grant_option = yyvsp[0].boolean; - yyval.node = (Node*)n; + n->privileges = (yyvsp[(2) - (7)].list); + n->objtype = ((yyvsp[(4) - (7)].privtarget))->objtype; + n->objects = ((yyvsp[(4) - (7)].privtarget))->objs; + n->grantees = (yyvsp[(6) - (7)].list); + n->grant_option = (yyvsp[(7) - (7)].boolean); + (yyval.node) = (Node*)n; } break; @@ -14355,12 +14695,12 @@ yyreduce: GrantStmt *n = makeNode(GrantStmt); n->is_grant = false; n->grant_option = false; - n->privileges = yyvsp[-5].list; - n->objtype = (yyvsp[-3].privtarget)->objtype; - n->objects = (yyvsp[-3].privtarget)->objs; - n->grantees = yyvsp[-1].list; - n->behavior = yyvsp[0].dbehavior; - yyval.node = (Node *)n; + n->privileges = (yyvsp[(2) - (7)].list); + n->objtype = ((yyvsp[(4) - (7)].privtarget))->objtype; + n->objects = ((yyvsp[(4) - (7)].privtarget))->objs; + n->grantees = (yyvsp[(6) - (7)].list); + n->behavior = (yyvsp[(7) - (7)].dbehavior); + (yyval.node) = (Node *)n; } break; @@ -14370,58 +14710,58 @@ yyreduce: GrantStmt *n = makeNode(GrantStmt); n->is_grant = false; n->grant_option = true; - n->privileges = yyvsp[-5].list; - n->objtype = (yyvsp[-3].privtarget)->objtype; - n->objects = (yyvsp[-3].privtarget)->objs; - n->grantees = yyvsp[-1].list; - n->behavior = yyvsp[0].dbehavior; - yyval.node = (Node *)n; + n->privileges = (yyvsp[(5) - (10)].list); + n->objtype = ((yyvsp[(7) - (10)].privtarget))->objtype; + n->objects = ((yyvsp[(7) - (10)].privtarget))->objs; + n->grantees = (yyvsp[(9) - (10)].list); + n->behavior = (yyvsp[(10) - (10)].dbehavior); + (yyval.node) = (Node *)n; } break; case 515: #line 3247 "gram.y" - { yyval.list = yyvsp[0].list; } + { (yyval.list) = (yyvsp[(1) - (1)].list); } break; case 516: #line 3249 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 517: #line 3251 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 518: #line 3255 "gram.y" - { yyval.list = list_make1(makeString(yyvsp[0].str)); } + { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); } break; case 519: #line 3257 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, makeString(yyvsp[0].str)); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), makeString((yyvsp[(3) - (3)].str))); } break; case 520: #line 3260 "gram.y" - { yyval.str = pstrdup(yyvsp[0].keyword); } + { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); } break; case 521: #line 3261 "gram.y" - { yyval.str = pstrdup(yyvsp[0].keyword); } + { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); } break; case 522: #line 3262 "gram.y" - { yyval.str = pstrdup(yyvsp[0].keyword); } + { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); } break; case 523: #line 3263 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 524: @@ -14429,8 +14769,8 @@ yyreduce: { PrivTarget *n = makeNode(PrivTarget); n->objtype = ACL_OBJECT_RELATION; - n->objs = yyvsp[0].list; - yyval.privtarget = n; + n->objs = (yyvsp[(1) - (1)].list); + (yyval.privtarget) = n; } break; @@ -14439,8 +14779,8 @@ yyreduce: { PrivTarget *n = makeNode(PrivTarget); n->objtype = ACL_OBJECT_RELATION; - n->objs = yyvsp[0].list; - yyval.privtarget = n; + n->objs = (yyvsp[(2) - (2)].list); + (yyval.privtarget) = n; } break; @@ -14449,8 +14789,8 @@ yyreduce: { PrivTarget *n = makeNode(PrivTarget); n->objtype = ACL_OBJECT_FUNCTION; - n->objs = yyvsp[0].list; - yyval.privtarget = n; + n->objs = (yyvsp[(2) - (2)].list); + (yyval.privtarget) = n; } break; @@ -14459,8 +14799,8 @@ yyreduce: { PrivTarget *n = makeNode(PrivTarget); n->objtype = ACL_OBJECT_DATABASE; - n->objs = yyvsp[0].list; - yyval.privtarget = n; + n->objs = (yyvsp[(2) - (2)].list); + (yyval.privtarget) = n; } break; @@ -14469,8 +14809,8 @@ yyreduce: { PrivTarget *n = makeNode(PrivTarget); n->objtype = ACL_OBJECT_LANGUAGE; - n->objs = yyvsp[0].list; - yyval.privtarget = n; + n->objs = (yyvsp[(2) - (2)].list); + (yyval.privtarget) = n; } break; @@ -14479,8 +14819,8 @@ yyreduce: { PrivTarget *n = makeNode(PrivTarget); n->objtype = ACL_OBJECT_NAMESPACE; - n->objs = yyvsp[0].list; - yyval.privtarget = n; + n->objs = (yyvsp[(2) - (2)].list); + (yyval.privtarget) = n; } break; @@ -14489,19 +14829,19 @@ yyreduce: { PrivTarget *n = makeNode(PrivTarget); n->objtype = ACL_OBJECT_TABLESPACE; - n->objs = yyvsp[0].list; - yyval.privtarget = n; + n->objs = (yyvsp[(2) - (2)].list); + (yyval.privtarget) = n; } break; case 531: #line 3324 "gram.y" - { yyval.list = list_make1(yyvsp[0].node); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); } break; case 532: #line 3325 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; case 533: @@ -14509,11 +14849,11 @@ yyreduce: { PrivGrantee *n = makeNode(PrivGrantee); /* This hack lets us avoid reserving PUBLIC as a keyword*/ - if (strcmp(yyvsp[0].str, "public") == 0) + if (strcmp((yyvsp[(1) - (1)].str), "public") == 0) n->rolname = NULL; else - n->rolname = yyvsp[0].str; - yyval.node = (Node *)n; + n->rolname = (yyvsp[(1) - (1)].str); + (yyval.node) = (Node *)n; } break; @@ -14522,41 +14862,41 @@ yyreduce: { PrivGrantee *n = makeNode(PrivGrantee); /* Treat GROUP PUBLIC as a synonym for PUBLIC */ - if (strcmp(yyvsp[0].str, "public") == 0) + if (strcmp((yyvsp[(2) - (2)].str), "public") == 0) n->rolname = NULL; else - n->rolname = yyvsp[0].str; - yyval.node = (Node *)n; + n->rolname = (yyvsp[(2) - (2)].str); + (yyval.node) = (Node *)n; } break; case 535: #line 3352 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 536: #line 3353 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 537: #line 3357 "gram.y" - { yyval.list = list_make1(yyvsp[0].funwithargs); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].funwithargs)); } break; case 538: #line 3359 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].funwithargs); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].funwithargs)); } break; case 539: #line 3364 "gram.y" { FuncWithArgs *n = makeNode(FuncWithArgs); - n->funcname = yyvsp[-1].list; - n->funcargs = extractArgTypes(yyvsp[0].list); - yyval.funwithargs = n; + n->funcname = (yyvsp[(1) - (2)].list); + n->funcargs = extractArgTypes((yyvsp[(2) - (2)].list)); + (yyval.funwithargs) = n; } break; @@ -14565,11 +14905,11 @@ yyreduce: { GrantRoleStmt *n = makeNode(GrantRoleStmt); n->is_grant = true; - n->granted_roles = yyvsp[-4].list; - n->grantee_roles = yyvsp[-2].list; - n->admin_opt = yyvsp[-1].boolean; - n->grantor = yyvsp[0].str; - yyval.node = (Node*)n; + n->granted_roles = (yyvsp[(2) - (6)].list); + n->grantee_roles = (yyvsp[(4) - (6)].list); + n->admin_opt = (yyvsp[(5) - (6)].boolean); + n->grantor = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node*)n; } break; @@ -14579,10 +14919,10 @@ yyreduce: GrantRoleStmt *n = makeNode(GrantRoleStmt); n->is_grant = false; n->admin_opt = false; - n->granted_roles = yyvsp[-4].list; - n->grantee_roles = yyvsp[-2].list; - n->behavior = yyvsp[0].dbehavior; - yyval.node = (Node*)n; + n->granted_roles = (yyvsp[(2) - (6)].list); + n->grantee_roles = (yyvsp[(4) - (6)].list); + n->behavior = (yyvsp[(6) - (6)].dbehavior); + (yyval.node) = (Node*)n; } break; @@ -14592,134 +14932,134 @@ yyreduce: GrantRoleStmt *n = makeNode(GrantRoleStmt); n->is_grant = false; n->admin_opt = true; - n->granted_roles = yyvsp[-4].list; - n->grantee_roles = yyvsp[-2].list; - n->behavior = yyvsp[0].dbehavior; - yyval.node = (Node*)n; + n->granted_roles = (yyvsp[(5) - (9)].list); + n->grantee_roles = (yyvsp[(7) - (9)].list); + n->behavior = (yyvsp[(9) - (9)].dbehavior); + (yyval.node) = (Node*)n; } break; case 543: #line 3414 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 544: #line 3415 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 545: #line 3418 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(3) - (3)].str); } break; case 546: #line 3419 "gram.y" - { yyval.str = NULL; } + { (yyval.str) = NULL; } break; case 547: #line 3436 "gram.y" { IndexStmt *n = makeNode(IndexStmt); - n->unique = yyvsp[-10].boolean; - n->idxname = yyvsp[-8].str; - n->relation = yyvsp[-6].range; - n->accessMethod = yyvsp[-5].str; - n->indexParams = yyvsp[-3].list; - n->tableSpace = yyvsp[-1].str; - n->whereClause = yyvsp[0].node; - yyval.node = (Node *)n; + n->unique = (yyvsp[(2) - (12)].boolean); + n->idxname = (yyvsp[(4) - (12)].str); + n->relation = (yyvsp[(6) - (12)].range); + n->accessMethod = (yyvsp[(7) - (12)].str); + n->indexParams = (yyvsp[(9) - (12)].list); + n->tableSpace = (yyvsp[(11) - (12)].str); + n->whereClause = (yyvsp[(12) - (12)].node); + (yyval.node) = (Node *)n; } break; case 548: #line 3450 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 549: #line 3451 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 550: #line 3455 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(2) - (2)].str); } break; case 551: #line 3456 "gram.y" - { yyval.str = DEFAULT_INDEX_TYPE; } + { (yyval.str) = DEFAULT_INDEX_TYPE; } break; case 552: #line 3459 "gram.y" - { yyval.list = list_make1(yyvsp[0].ielem); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].ielem)); } break; case 553: #line 3460 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].ielem); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].ielem)); } break; case 554: #line 3469 "gram.y" { - yyval.ielem = makeNode(IndexElem); - yyval.ielem->name = yyvsp[-1].str; - yyval.ielem->expr = NULL; - yyval.ielem->opclass = yyvsp[0].list; + (yyval.ielem) = makeNode(IndexElem); + (yyval.ielem)->name = (yyvsp[(1) - (2)].str); + (yyval.ielem)->expr = NULL; + (yyval.ielem)->opclass = (yyvsp[(2) - (2)].list); } break; case 555: #line 3476 "gram.y" { - yyval.ielem = makeNode(IndexElem); - yyval.ielem->name = NULL; - yyval.ielem->expr = yyvsp[-1].node; - yyval.ielem->opclass = yyvsp[0].list; + (yyval.ielem) = makeNode(IndexElem); + (yyval.ielem)->name = NULL; + (yyval.ielem)->expr = (yyvsp[(1) - (2)].node); + (yyval.ielem)->opclass = (yyvsp[(2) - (2)].list); } break; case 556: #line 3483 "gram.y" { - yyval.ielem = makeNode(IndexElem); - yyval.ielem->name = NULL; - yyval.ielem->expr = yyvsp[-2].node; - yyval.ielem->opclass = yyvsp[0].list; + (yyval.ielem) = makeNode(IndexElem); + (yyval.ielem)->name = NULL; + (yyval.ielem)->expr = (yyvsp[(2) - (4)].node); + (yyval.ielem)->opclass = (yyvsp[(4) - (4)].list); } break; case 557: #line 3491 "gram.y" - { yyval.list = yyvsp[0].list; } + { (yyval.list) = (yyvsp[(1) - (1)].list); } break; case 558: #line 3492 "gram.y" - { yyval.list = yyvsp[0].list; } + { (yyval.list) = (yyvsp[(2) - (2)].list); } break; case 559: #line 3493 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 560: #line 3510 "gram.y" { CreateFunctionStmt *n = makeNode(CreateFunctionStmt); - n->replace = yyvsp[-7].boolean; - n->funcname = yyvsp[-5].list; - n->parameters = yyvsp[-4].list; - n->returnType = yyvsp[-2].typnam; - n->options = yyvsp[-1].list; - n->withClause = yyvsp[0].list; - yyval.node = (Node *)n; + n->replace = (yyvsp[(2) - (9)].boolean); + n->funcname = (yyvsp[(4) - (9)].list); + n->parameters = (yyvsp[(5) - (9)].list); + n->returnType = (yyvsp[(7) - (9)].typnam); + n->options = (yyvsp[(8) - (9)].list); + n->withClause = (yyvsp[(9) - (9)].list); + (yyval.node) = (Node *)n; } break; @@ -14727,54 +15067,54 @@ yyreduce: #line 3522 "gram.y" { CreateFunctionStmt *n = makeNode(CreateFunctionStmt); - n->replace = yyvsp[-5].boolean; - n->funcname = yyvsp[-3].list; - n->parameters = yyvsp[-2].list; + n->replace = (yyvsp[(2) - (7)].boolean); + n->funcname = (yyvsp[(4) - (7)].list); + n->parameters = (yyvsp[(5) - (7)].list); n->returnType = NULL; - n->options = yyvsp[-1].list; - n->withClause = yyvsp[0].list; - yyval.node = (Node *)n; + n->options = (yyvsp[(6) - (7)].list); + n->withClause = (yyvsp[(7) - (7)].list); + (yyval.node) = (Node *)n; } break; case 562: #line 3535 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 563: #line 3536 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 564: #line 3539 "gram.y" - { yyval.list = yyvsp[-1].list; } + { (yyval.list) = (yyvsp[(2) - (3)].list); } break; case 565: #line 3540 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 566: #line 3544 "gram.y" - { yyval.list = list_make1(yyvsp[0].fun_param); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].fun_param)); } break; case 567: #line 3545 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].fun_param); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].fun_param)); } break; case 568: #line 3560 "gram.y" { FunctionParameter *n = makeNode(FunctionParameter); - n->name = yyvsp[-1].str; - n->argType = yyvsp[0].typnam; - n->mode = yyvsp[-2].fun_param_mode; - yyval.fun_param = n; + n->name = (yyvsp[(2) - (3)].str); + n->argType = (yyvsp[(3) - (3)].typnam); + n->mode = (yyvsp[(1) - (3)].fun_param_mode); + (yyval.fun_param) = n; } break; @@ -14782,10 +15122,10 @@ yyreduce: #line 3568 "gram.y" { FunctionParameter *n = makeNode(FunctionParameter); - n->name = yyvsp[-2].str; - n->argType = yyvsp[0].typnam; - n->mode = yyvsp[-1].fun_param_mode; - yyval.fun_param = n; + n->name = (yyvsp[(1) - (3)].str); + n->argType = (yyvsp[(3) - (3)].typnam); + n->mode = (yyvsp[(2) - (3)].fun_param_mode); + (yyval.fun_param) = n; } break; @@ -14793,10 +15133,10 @@ yyreduce: #line 3576 "gram.y" { FunctionParameter *n = makeNode(FunctionParameter); - n->name = yyvsp[-1].str; - n->argType = yyvsp[0].typnam; + n->name = (yyvsp[(1) - (2)].str); + n->argType = (yyvsp[(2) - (2)].typnam); n->mode = FUNC_PARAM_IN; - yyval.fun_param = n; + (yyval.fun_param) = n; } break; @@ -14805,9 +15145,9 @@ yyreduce: { FunctionParameter *n = makeNode(FunctionParameter); n->name = NULL; - n->argType = yyvsp[0].typnam; - n->mode = yyvsp[-1].fun_param_mode; - yyval.fun_param = n; + n->argType = (yyvsp[(2) - (2)].typnam); + n->mode = (yyvsp[(1) - (2)].fun_param_mode); + (yyval.fun_param) = n; } break; @@ -14816,30 +15156,30 @@ yyreduce: { FunctionParameter *n = makeNode(FunctionParameter); n->name = NULL; - n->argType = yyvsp[0].typnam; + n->argType = (yyvsp[(1) - (1)].typnam); n->mode = FUNC_PARAM_IN; - yyval.fun_param = n; + (yyval.fun_param) = n; } break; case 573: #line 3602 "gram.y" - { yyval.fun_param_mode = FUNC_PARAM_IN; } + { (yyval.fun_param_mode) = FUNC_PARAM_IN; } break; case 574: #line 3603 "gram.y" - { yyval.fun_param_mode = FUNC_PARAM_OUT; } + { (yyval.fun_param_mode) = FUNC_PARAM_OUT; } break; case 575: #line 3604 "gram.y" - { yyval.fun_param_mode = FUNC_PARAM_INOUT; } + { (yyval.fun_param_mode) = FUNC_PARAM_INOUT; } break; case 576: #line 3605 "gram.y" - { yyval.fun_param_mode = FUNC_PARAM_INOUT; } + { (yyval.fun_param_mode) = FUNC_PARAM_INOUT; } break; case 578: @@ -14849,187 +15189,187 @@ yyreduce: * but for now better to silently swallow typmod, etc. * - thomas 2000-03-22 */ - yyval.typnam = yyvsp[0].typnam; + (yyval.typnam) = (yyvsp[(1) - (1)].typnam); } break; case 579: #line 3629 "gram.y" - { yyval.typnam = yyvsp[0].typnam; } + { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); } break; case 580: #line 3631 "gram.y" { - yyval.typnam = makeNode(TypeName); - yyval.typnam->names = lcons(makeString(yyvsp[-3].str), yyvsp[-2].list); - yyval.typnam->pct_type = true; - yyval.typnam->typmod = -1; + (yyval.typnam) = makeNode(TypeName); + (yyval.typnam)->names = lcons(makeString((yyvsp[(1) - (4)].str)), (yyvsp[(2) - (4)].list)); + (yyval.typnam)->pct_type = true; + (yyval.typnam)->typmod = -1; } break; case 581: #line 3638 "gram.y" { - yyval.typnam = makeNode(TypeName); - yyval.typnam->names = lcons(makeString(yyvsp[-3].str), yyvsp[-2].list); - yyval.typnam->pct_type = true; - yyval.typnam->typmod = -1; - yyval.typnam->setof = TRUE; + (yyval.typnam) = makeNode(TypeName); + (yyval.typnam)->names = lcons(makeString((yyvsp[(2) - (5)].str)), (yyvsp[(3) - (5)].list)); + (yyval.typnam)->pct_type = true; + (yyval.typnam)->typmod = -1; + (yyval.typnam)->setof = TRUE; } break; case 582: #line 3650 "gram.y" - { yyval.list = list_make1(yyvsp[0].defelt); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); } break; case 583: #line 3651 "gram.y" - { yyval.list = lappend(yyvsp[-1].list, yyvsp[0].defelt); } + { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); } break; case 584: #line 3659 "gram.y" { - yyval.defelt = makeDefElem("strict", (Node *)makeInteger(FALSE)); + (yyval.defelt) = makeDefElem("strict", (Node *)makeInteger(FALSE)); } break; case 585: #line 3663 "gram.y" { - yyval.defelt = makeDefElem("strict", (Node *)makeInteger(TRUE)); + (yyval.defelt) = makeDefElem("strict", (Node *)makeInteger(TRUE)); } break; case 586: #line 3667 "gram.y" { - yyval.defelt = makeDefElem("strict", (Node *)makeInteger(TRUE)); + (yyval.defelt) = makeDefElem("strict", (Node *)makeInteger(TRUE)); } break; case 587: #line 3671 "gram.y" { - yyval.defelt = makeDefElem("volatility", (Node *)makeString("immutable")); + (yyval.defelt) = makeDefElem("volatility", (Node *)makeString("immutable")); } break; case 588: #line 3675 "gram.y" { - yyval.defelt = makeDefElem("volatility", (Node *)makeString("stable")); + (yyval.defelt) = makeDefElem("volatility", (Node *)makeString("stable")); } break; case 589: #line 3679 "gram.y" { - yyval.defelt = makeDefElem("volatility", (Node *)makeString("volatile")); + (yyval.defelt) = makeDefElem("volatility", (Node *)makeString("volatile")); } break; case 590: #line 3683 "gram.y" { - yyval.defelt = makeDefElem("security", (Node *)makeInteger(TRUE)); + (yyval.defelt) = makeDefElem("security", (Node *)makeInteger(TRUE)); } break; case 591: #line 3687 "gram.y" { - yyval.defelt = makeDefElem("security", (Node *)makeInteger(FALSE)); + (yyval.defelt) = makeDefElem("security", (Node *)makeInteger(FALSE)); } break; case 592: #line 3691 "gram.y" { - yyval.defelt = makeDefElem("security", (Node *)makeInteger(TRUE)); + (yyval.defelt) = makeDefElem("security", (Node *)makeInteger(TRUE)); } break; case 593: #line 3695 "gram.y" { - yyval.defelt = makeDefElem("security", (Node *)makeInteger(FALSE)); + (yyval.defelt) = makeDefElem("security", (Node *)makeInteger(FALSE)); } break; case 594: #line 3702 "gram.y" { - yyval.defelt = makeDefElem("as", (Node *)yyvsp[0].list); + (yyval.defelt) = makeDefElem("as", (Node *)(yyvsp[(2) - (2)].list)); } break; case 595: #line 3706 "gram.y" { - yyval.defelt = makeDefElem("language", (Node *)makeString(yyvsp[0].str)); + (yyval.defelt) = makeDefElem("language", (Node *)makeString((yyvsp[(2) - (2)].str))); } break; case 596: #line 3710 "gram.y" { - yyval.defelt = yyvsp[0].defelt; + (yyval.defelt) = (yyvsp[(1) - (1)].defelt); } break; case 597: #line 3715 "gram.y" - { yyval.list = list_make1(makeString(yyvsp[0].str)); } + { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); } break; case 598: #line 3717 "gram.y" { - yyval.list = list_make2(makeString(yyvsp[-2].str), makeString(yyvsp[0].str)); + (yyval.list) = list_make2(makeString((yyvsp[(1) - (3)].str)), makeString((yyvsp[(3) - (3)].str))); } break; case 599: #line 3723 "gram.y" - { yyval.list = yyvsp[0].list; } + { (yyval.list) = (yyvsp[(2) - (2)].list); } break; case 600: #line 3724 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 601: #line 3737 "gram.y" { AlterFunctionStmt *n = makeNode(AlterFunctionStmt); - n->func = yyvsp[-2].funwithargs; - n->actions = yyvsp[-1].list; - yyval.node = (Node *) n; + n->func = (yyvsp[(3) - (5)].funwithargs); + n->actions = (yyvsp[(4) - (5)].list); + (yyval.node) = (Node *) n; } break; case 602: #line 3747 "gram.y" - { yyval.list = list_make1(yyvsp[0].defelt); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); } break; case 603: #line 3748 "gram.y" - { yyval.list = lappend(yyvsp[-1].list, yyvsp[0].defelt); } + { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); } break; case 606: #line 3770 "gram.y" { RemoveFuncStmt *n = makeNode(RemoveFuncStmt); - n->funcname = yyvsp[-2].list; - n->args = extractArgTypes(yyvsp[-1].list); - n->behavior = yyvsp[0].dbehavior; - yyval.node = (Node *)n; + n->funcname = (yyvsp[(3) - (5)].list); + n->args = extractArgTypes((yyvsp[(4) - (5)].list)); + n->behavior = (yyvsp[(5) - (5)].dbehavior); + (yyval.node) = (Node *)n; } break; @@ -15037,31 +15377,31 @@ yyreduce: #line 3781 "gram.y" { RemoveAggrStmt *n = makeNode(RemoveAggrStmt); - n->aggname = yyvsp[-4].list; - n->aggtype = yyvsp[-2].typnam; - n->behavior = yyvsp[0].dbehavior; - yyval.node = (Node *)n; + n->aggname = (yyvsp[(3) - (7)].list); + n->aggtype = (yyvsp[(5) - (7)].typnam); + n->behavior = (yyvsp[(7) - (7)].dbehavior); + (yyval.node) = (Node *)n; } break; case 608: #line 3791 "gram.y" - { yyval.typnam = yyvsp[0].typnam; } + { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); } break; case 609: #line 3792 "gram.y" - { yyval.typnam = NULL; } + { (yyval.typnam) = NULL; } break; case 610: #line 3797 "gram.y" { RemoveOperStmt *n = makeNode(RemoveOperStmt); - n->opname = yyvsp[-4].list; - n->args = yyvsp[-2].list; - n->behavior = yyvsp[0].dbehavior; - yyval.node = (Node *)n; + n->opname = (yyvsp[(3) - (7)].list); + n->args = (yyvsp[(5) - (7)].list); + n->behavior = (yyvsp[(7) - (7)].dbehavior); + (yyval.node) = (Node *)n; } break; @@ -15077,38 +15417,38 @@ yyreduce: case 612: #line 3815 "gram.y" - { yyval.list = list_make2(yyvsp[-2].typnam, yyvsp[0].typnam); } + { (yyval.list) = list_make2((yyvsp[(1) - (3)].typnam), (yyvsp[(3) - (3)].typnam)); } break; case 613: #line 3817 "gram.y" - { yyval.list = list_make2(NULL, yyvsp[0].typnam); } + { (yyval.list) = list_make2(NULL, (yyvsp[(3) - (3)].typnam)); } break; case 614: #line 3819 "gram.y" - { yyval.list = list_make2(yyvsp[-2].typnam, NULL); } + { (yyval.list) = list_make2((yyvsp[(1) - (3)].typnam), NULL); } break; case 615: #line 3824 "gram.y" - { yyval.list = list_make1(makeString(yyvsp[0].str)); } + { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); } break; case 616: #line 3826 "gram.y" - { yyval.list = lcons(makeString(yyvsp[-2].str), yyvsp[0].list); } + { (yyval.list) = lcons(makeString((yyvsp[(1) - (3)].str)), (yyvsp[(3) - (3)].list)); } break; case 617: #line 3838 "gram.y" { CreateCastStmt *n = makeNode(CreateCastStmt); - n->sourcetype = yyvsp[-7].typnam; - n->targettype = yyvsp[-5].typnam; - n->func = yyvsp[-1].funwithargs; - n->context = (CoercionContext) yyvsp[0].ival; - yyval.node = (Node *)n; + n->sourcetype = (yyvsp[(4) - (11)].typnam); + n->targettype = (yyvsp[(6) - (11)].typnam); + n->func = (yyvsp[(10) - (11)].funwithargs); + n->context = (CoercionContext) (yyvsp[(11) - (11)].ival); + (yyval.node) = (Node *)n; } break; @@ -15116,37 +15456,37 @@ yyreduce: #line 3848 "gram.y" { CreateCastStmt *n = makeNode(CreateCastStmt); - n->sourcetype = yyvsp[-6].typnam; - n->targettype = yyvsp[-4].typnam; + n->sourcetype = (yyvsp[(4) - (10)].typnam); + n->targettype = (yyvsp[(6) - (10)].typnam); n->func = NULL; - n->context = (CoercionContext) yyvsp[0].ival; - yyval.node = (Node *)n; + n->context = (CoercionContext) (yyvsp[(10) - (10)].ival); + (yyval.node) = (Node *)n; } break; case 619: #line 3858 "gram.y" - { yyval.ival = COERCION_IMPLICIT; } + { (yyval.ival) = COERCION_IMPLICIT; } break; case 620: #line 3859 "gram.y" - { yyval.ival = COERCION_ASSIGNMENT; } + { (yyval.ival) = COERCION_ASSIGNMENT; } break; case 621: #line 3860 "gram.y" - { yyval.ival = COERCION_EXPLICIT; } + { (yyval.ival) = COERCION_EXPLICIT; } break; case 622: #line 3865 "gram.y" { DropCastStmt *n = makeNode(DropCastStmt); - n->sourcetype = yyvsp[-4].typnam; - n->targettype = yyvsp[-2].typnam; - n->behavior = yyvsp[0].dbehavior; - yyval.node = (Node *)n; + n->sourcetype = (yyvsp[(4) - (8)].typnam); + n->targettype = (yyvsp[(6) - (8)].typnam); + n->behavior = (yyvsp[(8) - (8)].dbehavior); + (yyval.node) = (Node *)n; } break; @@ -15154,10 +15494,10 @@ yyreduce: #line 3887 "gram.y" { ReindexStmt *n = makeNode(ReindexStmt); - n->kind = yyvsp[-2].objtype; - n->relation = yyvsp[-1].range; + n->kind = (yyvsp[(2) - (4)].objtype); + n->relation = (yyvsp[(3) - (4)].range); n->name = NULL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -15166,11 +15506,11 @@ yyreduce: { ReindexStmt *n = makeNode(ReindexStmt); n->kind = OBJECT_DATABASE; - n->name = yyvsp[-1].str; + n->name = (yyvsp[(3) - (4)].str); n->relation = NULL; n->do_system = true; n->do_user = false; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -15179,32 +15519,32 @@ yyreduce: { ReindexStmt *n = makeNode(ReindexStmt); n->kind = OBJECT_DATABASE; - n->name = yyvsp[-1].str; + n->name = (yyvsp[(3) - (4)].str); n->relation = NULL; n->do_system = true; n->do_user = true; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; case 626: #line 3917 "gram.y" - { yyval.objtype = OBJECT_INDEX; } + { (yyval.objtype) = OBJECT_INDEX; } break; case 627: #line 3918 "gram.y" - { yyval.objtype = OBJECT_TABLE; } + { (yyval.objtype) = OBJECT_TABLE; } break; case 628: #line 3921 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 629: #line 3922 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 630: @@ -15212,10 +15552,10 @@ yyreduce: { RenameStmt *n = makeNode(RenameStmt); n->renameType = OBJECT_AGGREGATE; - n->object = yyvsp[-6].list; - n->objarg = list_make1(yyvsp[-4].typnam); - n->newname = yyvsp[0].str; - yyval.node = (Node *)n; + n->object = (yyvsp[(3) - (9)].list); + n->objarg = list_make1((yyvsp[(5) - (9)].typnam)); + n->newname = (yyvsp[(9) - (9)].str); + (yyval.node) = (Node *)n; } break; @@ -15224,9 +15564,9 @@ yyreduce: { RenameStmt *n = makeNode(RenameStmt); n->renameType = OBJECT_CONVERSION; - n->object = yyvsp[-3].list; - n->newname = yyvsp[0].str; - yyval.node = (Node *)n; + n->object = (yyvsp[(3) - (6)].list); + n->newname = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -15235,9 +15575,9 @@ yyreduce: { RenameStmt *n = makeNode(RenameStmt); n->renameType = OBJECT_DATABASE; - n->subname = yyvsp[-3].str; - n->newname = yyvsp[0].str; - yyval.node = (Node *)n; + n->subname = (yyvsp[(3) - (6)].str); + n->newname = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -15246,10 +15586,10 @@ yyreduce: { RenameStmt *n = makeNode(RenameStmt); n->renameType = OBJECT_FUNCTION; - n->object = yyvsp[-4].list; - n->objarg = extractArgTypes(yyvsp[-3].list); - n->newname = yyvsp[0].str; - yyval.node = (Node *)n; + n->object = (yyvsp[(3) - (7)].list); + n->objarg = extractArgTypes((yyvsp[(4) - (7)].list)); + n->newname = (yyvsp[(7) - (7)].str); + (yyval.node) = (Node *)n; } break; @@ -15258,9 +15598,9 @@ yyreduce: { RenameStmt *n = makeNode(RenameStmt); n->renameType = OBJECT_ROLE; - n->subname = yyvsp[-3].str; - n->newname = yyvsp[0].str; - yyval.node = (Node *)n; + n->subname = (yyvsp[(3) - (6)].str); + n->newname = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -15269,9 +15609,9 @@ yyreduce: { RenameStmt *n = makeNode(RenameStmt); n->renameType = OBJECT_LANGUAGE; - n->subname = yyvsp[-3].str; - n->newname = yyvsp[0].str; - yyval.node = (Node *)n; + n->subname = (yyvsp[(3) - (6)].str); + n->newname = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -15280,10 +15620,10 @@ yyreduce: { RenameStmt *n = makeNode(RenameStmt); n->renameType = OBJECT_OPCLASS; - n->object = yyvsp[-5].list; - n->subname = yyvsp[-3].str; - n->newname = yyvsp[0].str; - yyval.node = (Node *)n; + n->object = (yyvsp[(4) - (9)].list); + n->subname = (yyvsp[(6) - (9)].str); + n->newname = (yyvsp[(9) - (9)].str); + (yyval.node) = (Node *)n; } break; @@ -15292,9 +15632,9 @@ yyreduce: { RenameStmt *n = makeNode(RenameStmt); n->renameType = OBJECT_SCHEMA; - n->subname = yyvsp[-3].str; - n->newname = yyvsp[0].str; - yyval.node = (Node *)n; + n->subname = (yyvsp[(3) - (6)].str); + n->newname = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -15303,10 +15643,10 @@ yyreduce: { RenameStmt *n = makeNode(RenameStmt); n->renameType = OBJECT_TABLE; - n->relation = yyvsp[-3].range; + n->relation = (yyvsp[(3) - (6)].range); n->subname = NULL; - n->newname = yyvsp[0].str; - yyval.node = (Node *)n; + n->newname = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -15315,10 +15655,10 @@ yyreduce: { RenameStmt *n = makeNode(RenameStmt); n->renameType = OBJECT_INDEX; - n->relation = yyvsp[-3].range; + n->relation = (yyvsp[(3) - (6)].range); n->subname = NULL; - n->newname = yyvsp[0].str; - yyval.node = (Node *)n; + n->newname = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -15327,10 +15667,10 @@ yyreduce: { RenameStmt *n = makeNode(RenameStmt); n->renameType = OBJECT_COLUMN; - n->relation = yyvsp[-5].range; - n->subname = yyvsp[-2].str; - n->newname = yyvsp[0].str; - yyval.node = (Node *)n; + n->relation = (yyvsp[(3) - (8)].range); + n->subname = (yyvsp[(6) - (8)].str); + n->newname = (yyvsp[(8) - (8)].str); + (yyval.node) = (Node *)n; } break; @@ -15339,10 +15679,10 @@ yyreduce: { RenameStmt *n = makeNode(RenameStmt); n->renameType = OBJECT_TRIGGER; - n->relation = yyvsp[-3].range; - n->subname = yyvsp[-5].str; - n->newname = yyvsp[0].str; - yyval.node = (Node *)n; + n->relation = (yyvsp[(5) - (8)].range); + n->subname = (yyvsp[(3) - (8)].str); + n->newname = (yyvsp[(8) - (8)].str); + (yyval.node) = (Node *)n; } break; @@ -15351,9 +15691,9 @@ yyreduce: { RenameStmt *n = makeNode(RenameStmt); n->renameType = OBJECT_ROLE; - n->subname = yyvsp[-3].str; - n->newname = yyvsp[0].str; - yyval.node = (Node *)n; + n->subname = (yyvsp[(3) - (6)].str); + n->newname = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -15362,9 +15702,9 @@ yyreduce: { RenameStmt *n = makeNode(RenameStmt); n->renameType = OBJECT_ROLE; - n->subname = yyvsp[-3].str; - n->newname = yyvsp[0].str; - yyval.node = (Node *)n; + n->subname = (yyvsp[(3) - (6)].str); + n->newname = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -15373,20 +15713,20 @@ yyreduce: { RenameStmt *n = makeNode(RenameStmt); n->renameType = OBJECT_TABLESPACE; - n->subname = yyvsp[-3].str; - n->newname = yyvsp[0].str; - yyval.node = (Node *)n; + n->subname = (yyvsp[(3) - (6)].str); + n->newname = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; case 645: #line 4061 "gram.y" - { yyval.ival = COLUMN; } + { (yyval.ival) = COLUMN; } break; case 646: #line 4062 "gram.y" - { yyval.ival = 0; } + { (yyval.ival) = 0; } break; case 647: @@ -15394,10 +15734,10 @@ yyreduce: { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); n->objectType = OBJECT_AGGREGATE; - n->object = yyvsp[-6].list; - n->objarg = list_make1(yyvsp[-4].typnam); - n->newschema = yyvsp[0].str; - yyval.node = (Node *)n; + n->object = (yyvsp[(3) - (9)].list); + n->objarg = list_make1((yyvsp[(5) - (9)].typnam)); + n->newschema = (yyvsp[(9) - (9)].str); + (yyval.node) = (Node *)n; } break; @@ -15406,9 +15746,9 @@ yyreduce: { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); n->objectType = OBJECT_DOMAIN; - n->object = yyvsp[-3].list; - n->newschema = yyvsp[0].str; - yyval.node = (Node *)n; + n->object = (yyvsp[(3) - (6)].list); + n->newschema = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -15417,10 +15757,10 @@ yyreduce: { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); n->objectType = OBJECT_FUNCTION; - n->object = yyvsp[-4].list; - n->objarg = extractArgTypes(yyvsp[-3].list); - n->newschema = yyvsp[0].str; - yyval.node = (Node *)n; + n->object = (yyvsp[(3) - (7)].list); + n->objarg = extractArgTypes((yyvsp[(4) - (7)].list)); + n->newschema = (yyvsp[(7) - (7)].str); + (yyval.node) = (Node *)n; } break; @@ -15429,9 +15769,9 @@ yyreduce: { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); n->objectType = OBJECT_SEQUENCE; - n->relation = yyvsp[-3].range; - n->newschema = yyvsp[0].str; - yyval.node = (Node *)n; + n->relation = (yyvsp[(3) - (6)].range); + n->newschema = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -15440,9 +15780,9 @@ yyreduce: { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); n->objectType = OBJECT_TABLE; - n->relation = yyvsp[-3].range; - n->newschema = yyvsp[0].str; - yyval.node = (Node *)n; + n->relation = (yyvsp[(3) - (6)].range); + n->newschema = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -15451,9 +15791,9 @@ yyreduce: { AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt); n->objectType = OBJECT_TYPE; - n->object = yyvsp[-3].list; - n->newschema = yyvsp[0].str; - yyval.node = (Node *)n; + n->object = (yyvsp[(3) - (6)].list); + n->newschema = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -15462,10 +15802,10 @@ yyreduce: { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); n->objectType = OBJECT_AGGREGATE; - n->object = yyvsp[-6].list; - n->objarg = list_make1(yyvsp[-4].typnam); - n->newowner = yyvsp[0].str; - yyval.node = (Node *)n; + n->object = (yyvsp[(3) - (9)].list); + n->objarg = list_make1((yyvsp[(5) - (9)].typnam)); + n->newowner = (yyvsp[(9) - (9)].str); + (yyval.node) = (Node *)n; } break; @@ -15474,9 +15814,9 @@ yyreduce: { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); n->objectType = OBJECT_CONVERSION; - n->object = yyvsp[-3].list; - n->newowner = yyvsp[0].str; - yyval.node = (Node *)n; + n->object = (yyvsp[(3) - (6)].list); + n->newowner = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -15485,9 +15825,9 @@ yyreduce: { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); n->objectType = OBJECT_DATABASE; - n->object = list_make1(yyvsp[-3].str); - n->newowner = yyvsp[0].str; - yyval.node = (Node *)n; + n->object = list_make1((yyvsp[(3) - (6)].str)); + n->newowner = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -15496,9 +15836,9 @@ yyreduce: { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); n->objectType = OBJECT_DOMAIN; - n->object = yyvsp[-3].list; - n->newowner = yyvsp[0].str; - yyval.node = (Node *)n; + n->object = (yyvsp[(3) - (6)].list); + n->newowner = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -15507,10 +15847,10 @@ yyreduce: { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); n->objectType = OBJECT_FUNCTION; - n->object = yyvsp[-4].list; - n->objarg = extractArgTypes(yyvsp[-3].list); - n->newowner = yyvsp[0].str; - yyval.node = (Node *)n; + n->object = (yyvsp[(3) - (7)].list); + n->objarg = extractArgTypes((yyvsp[(4) - (7)].list)); + n->newowner = (yyvsp[(7) - (7)].str); + (yyval.node) = (Node *)n; } break; @@ -15519,10 +15859,10 @@ yyreduce: { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); n->objectType = OBJECT_OPERATOR; - n->object = yyvsp[-6].list; - n->objarg = yyvsp[-4].list; - n->newowner = yyvsp[0].str; - yyval.node = (Node *)n; + n->object = (yyvsp[(3) - (9)].list); + n->objarg = (yyvsp[(5) - (9)].list); + n->newowner = (yyvsp[(9) - (9)].str); + (yyval.node) = (Node *)n; } break; @@ -15531,10 +15871,10 @@ yyreduce: { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); n->objectType = OBJECT_OPCLASS; - n->object = yyvsp[-5].list; - n->addname = yyvsp[-3].str; - n->newowner = yyvsp[0].str; - yyval.node = (Node *)n; + n->object = (yyvsp[(4) - (9)].list); + n->addname = (yyvsp[(6) - (9)].str); + n->newowner = (yyvsp[(9) - (9)].str); + (yyval.node) = (Node *)n; } break; @@ -15543,9 +15883,9 @@ yyreduce: { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); n->objectType = OBJECT_SCHEMA; - n->object = list_make1(yyvsp[-3].str); - n->newowner = yyvsp[0].str; - yyval.node = (Node *)n; + n->object = list_make1((yyvsp[(3) - (6)].str)); + n->newowner = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -15554,9 +15894,9 @@ yyreduce: { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); n->objectType = OBJECT_TYPE; - n->object = yyvsp[-3].list; - n->newowner = yyvsp[0].str; - yyval.node = (Node *)n; + n->object = (yyvsp[(3) - (6)].list); + n->newowner = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -15565,9 +15905,9 @@ yyreduce: { AlterOwnerStmt *n = makeNode(AlterOwnerStmt); n->objectType = OBJECT_TABLESPACE; - n->object = list_make1(yyvsp[-3].str); - n->newowner = yyvsp[0].str; - yyval.node = (Node *)n; + n->object = list_make1((yyvsp[(3) - (6)].str)); + n->newowner = (yyvsp[(6) - (6)].str); + (yyval.node) = (Node *)n; } break; @@ -15580,105 +15920,105 @@ yyreduce: #line 4227 "gram.y" { RuleStmt *n = makeNode(RuleStmt); - n->replace = yyvsp[-12].boolean; - n->relation = yyvsp[-4].range; - n->rulename = yyvsp[-10].str; - n->whereClause = yyvsp[-3].node; - n->event = yyvsp[-6].ival; - n->instead = yyvsp[-1].boolean; - n->actions = yyvsp[0].list; - yyval.node = (Node *)n; + n->replace = (yyvsp[(2) - (14)].boolean); + n->relation = (yyvsp[(10) - (14)].range); + n->rulename = (yyvsp[(4) - (14)].str); + n->whereClause = (yyvsp[(11) - (14)].node); + n->event = (yyvsp[(8) - (14)].ival); + n->instead = (yyvsp[(13) - (14)].boolean); + n->actions = (yyvsp[(14) - (14)].list); + (yyval.node) = (Node *)n; QueryIsRule=FALSE; } break; case 665: #line 4242 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 666: #line 4243 "gram.y" - { yyval.list = list_make1(yyvsp[0].node); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); } break; case 667: #line 4244 "gram.y" - { yyval.list = yyvsp[-1].list; } + { (yyval.list) = (yyvsp[(2) - (3)].list); } break; case 668: #line 4250 "gram.y" - { if (yyvsp[0].node != NULL) - yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); + { if ((yyvsp[(3) - (3)].node) != NULL) + (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); else - yyval.list = yyvsp[-2].list; + (yyval.list) = (yyvsp[(1) - (3)].list); } break; case 669: #line 4256 "gram.y" - { if (yyvsp[0].node != NULL) - yyval.list = list_make1(yyvsp[0].node); + { if ((yyvsp[(1) - (1)].node) != NULL) + (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); else - yyval.list = NIL; + (yyval.list) = NIL; } break; case 675: #line 4272 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 676: #line 4273 "gram.y" - { yyval.node = NULL; } + { (yyval.node) = NULL; } break; case 677: #line 4277 "gram.y" - { yyval.ival = CMD_SELECT; } + { (yyval.ival) = CMD_SELECT; } break; case 678: #line 4278 "gram.y" - { yyval.ival = CMD_UPDATE; } + { (yyval.ival) = CMD_UPDATE; } break; case 679: #line 4279 "gram.y" - { yyval.ival = CMD_DELETE; } + { (yyval.ival) = CMD_DELETE; } break; case 680: #line 4280 "gram.y" - { yyval.ival = CMD_INSERT; } + { (yyval.ival) = CMD_INSERT; } break; case 681: #line 4284 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 682: #line 4285 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 683: #line 4286 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 684: #line 4292 "gram.y" { DropPropertyStmt *n = makeNode(DropPropertyStmt); - n->relation = yyvsp[-1].range; - n->property = yyvsp[-3].str; - n->behavior = yyvsp[0].dbehavior; + n->relation = (yyvsp[(5) - (6)].range); + n->property = (yyvsp[(3) - (6)].str); + n->behavior = (yyvsp[(6) - (6)].dbehavior); n->removeType = OBJECT_RULE; - yyval.node = (Node *) n; + (yyval.node) = (Node *) n; } break; @@ -15686,8 +16026,8 @@ yyreduce: #line 4312 "gram.y" { NotifyStmt *n = makeNode(NotifyStmt); - n->relation = yyvsp[0].range; - yyval.node = (Node *)n; + n->relation = (yyvsp[(2) - (2)].range); + (yyval.node) = (Node *)n; } break; @@ -15695,8 +16035,8 @@ yyreduce: #line 4320 "gram.y" { ListenStmt *n = makeNode(ListenStmt); - n->relation = yyvsp[0].range; - yyval.node = (Node *)n; + n->relation = (yyvsp[(2) - (2)].range); + (yyval.node) = (Node *)n; } break; @@ -15704,8 +16044,8 @@ yyreduce: #line 4329 "gram.y" { UnlistenStmt *n = makeNode(UnlistenStmt); - n->relation = yyvsp[0].range; - yyval.node = (Node *)n; + n->relation = (yyvsp[(2) - (2)].range); + (yyval.node) = (Node *)n; } break; @@ -15716,7 +16056,7 @@ yyreduce: n->relation = makeNode(RangeVar); n->relation->relname = "*"; n->relation->schemaname = NULL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -15726,7 +16066,7 @@ yyreduce: TransactionStmt *n = makeNode(TransactionStmt); n->kind = TRANS_STMT_ROLLBACK; n->options = NIL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -15735,8 +16075,8 @@ yyreduce: { TransactionStmt *n = makeNode(TransactionStmt); n->kind = TRANS_STMT_BEGIN; - n->options = yyvsp[0].list; - yyval.node = (Node *)n; + n->options = (yyvsp[(3) - (3)].list); + (yyval.node) = (Node *)n; } break; @@ -15745,8 +16085,8 @@ yyreduce: { TransactionStmt *n = makeNode(TransactionStmt); n->kind = TRANS_STMT_START; - n->options = yyvsp[0].list; - yyval.node = (Node *)n; + n->options = (yyvsp[(3) - (3)].list); + (yyval.node) = (Node *)n; } break; @@ -15756,7 +16096,7 @@ yyreduce: TransactionStmt *n = makeNode(TransactionStmt); n->kind = TRANS_STMT_COMMIT; n->options = NIL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -15766,7 +16106,7 @@ yyreduce: TransactionStmt *n = makeNode(TransactionStmt); n->kind = TRANS_STMT_COMMIT; n->options = NIL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -15776,7 +16116,7 @@ yyreduce: TransactionStmt *n = makeNode(TransactionStmt); n->kind = TRANS_STMT_ROLLBACK; n->options = NIL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -15786,8 +16126,8 @@ yyreduce: TransactionStmt *n = makeNode(TransactionStmt); n->kind = TRANS_STMT_SAVEPOINT; n->options = list_make1(makeDefElem("savepoint_name", - (Node *)makeString(yyvsp[0].str))); - yyval.node = (Node *)n; + (Node *)makeString((yyvsp[(2) - (2)].str)))); + (yyval.node) = (Node *)n; } break; @@ -15797,8 +16137,8 @@ yyreduce: TransactionStmt *n = makeNode(TransactionStmt); n->kind = TRANS_STMT_RELEASE; n->options = list_make1(makeDefElem("savepoint_name", - (Node *)makeString(yyvsp[0].str))); - yyval.node = (Node *)n; + (Node *)makeString((yyvsp[(3) - (3)].str)))); + (yyval.node) = (Node *)n; } break; @@ -15808,8 +16148,8 @@ yyreduce: TransactionStmt *n = makeNode(TransactionStmt); n->kind = TRANS_STMT_RELEASE; n->options = list_make1(makeDefElem("savepoint_name", - (Node *)makeString(yyvsp[0].str))); - yyval.node = (Node *)n; + (Node *)makeString((yyvsp[(2) - (2)].str)))); + (yyval.node) = (Node *)n; } break; @@ -15819,8 +16159,8 @@ yyreduce: TransactionStmt *n = makeNode(TransactionStmt); n->kind = TRANS_STMT_ROLLBACK_TO; n->options = list_make1(makeDefElem("savepoint_name", - (Node *)makeString(yyvsp[0].str))); - yyval.node = (Node *)n; + (Node *)makeString((yyvsp[(5) - (5)].str)))); + (yyval.node) = (Node *)n; } break; @@ -15830,8 +16170,8 @@ yyreduce: TransactionStmt *n = makeNode(TransactionStmt); n->kind = TRANS_STMT_ROLLBACK_TO; n->options = list_make1(makeDefElem("savepoint_name", - (Node *)makeString(yyvsp[0].str))); - yyval.node = (Node *)n; + (Node *)makeString((yyvsp[(4) - (4)].str)))); + (yyval.node) = (Node *)n; } break; @@ -15840,8 +16180,8 @@ yyreduce: { TransactionStmt *n = makeNode(TransactionStmt); n->kind = TRANS_STMT_PREPARE; - n->gid = yyvsp[0].str; - yyval.node = (Node *)n; + n->gid = (yyvsp[(3) - (3)].str); + (yyval.node) = (Node *)n; } break; @@ -15850,8 +16190,8 @@ yyreduce: { TransactionStmt *n = makeNode(TransactionStmt); n->kind = TRANS_STMT_COMMIT_PREPARED; - n->gid = yyvsp[0].str; - yyval.node = (Node *)n; + n->gid = (yyvsp[(3) - (3)].str); + (yyval.node) = (Node *)n; } break; @@ -15860,8 +16200,8 @@ yyreduce: { TransactionStmt *n = makeNode(TransactionStmt); n->kind = TRANS_STMT_ROLLBACK_PREPARED; - n->gid = yyvsp[0].str; - yyval.node = (Node *)n; + n->gid = (yyvsp[(3) - (3)].str); + (yyval.node) = (Node *)n; } break; @@ -15882,40 +16222,40 @@ yyreduce: case 706: #line 4467 "gram.y" - { yyval.defelt = makeDefElem("transaction_isolation", - makeStringConst(yyvsp[0].str, NULL)); } + { (yyval.defelt) = makeDefElem("transaction_isolation", + makeStringConst((yyvsp[(3) - (3)].str), NULL)); } break; case 707: #line 4470 "gram.y" - { yyval.defelt = makeDefElem("transaction_read_only", + { (yyval.defelt) = makeDefElem("transaction_read_only", makeIntConst(TRUE)); } break; case 708: #line 4473 "gram.y" - { yyval.defelt = makeDefElem("transaction_read_only", + { (yyval.defelt) = makeDefElem("transaction_read_only", makeIntConst(FALSE)); } break; case 709: #line 4480 "gram.y" - { yyval.list = list_make1(yyvsp[0].defelt); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); } break; case 710: #line 4482 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].defelt); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); } break; case 711: #line 4484 "gram.y" - { yyval.list = lappend(yyvsp[-1].list, yyvsp[0].defelt); } + { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); } break; case 713: #line 4490 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 714: @@ -15923,11 +16263,11 @@ yyreduce: { ViewStmt *n = makeNode(ViewStmt); n->replace = false; - n->view = yyvsp[-3].range; - n->view->istemp = yyvsp[-5].boolean; - n->aliases = yyvsp[-2].list; - n->query = (Query *) yyvsp[0].node; - yyval.node = (Node *) n; + n->view = (yyvsp[(4) - (7)].range); + n->view->istemp = (yyvsp[(2) - (7)].boolean); + n->aliases = (yyvsp[(5) - (7)].list); + n->query = (Query *) (yyvsp[(7) - (7)].node); + (yyval.node) = (Node *) n; } break; @@ -15936,11 +16276,11 @@ yyreduce: { ViewStmt *n = makeNode(ViewStmt); n->replace = true; - n->view = yyvsp[-3].range; - n->view->istemp = yyvsp[-5].boolean; - n->aliases = yyvsp[-2].list; - n->query = (Query *) yyvsp[0].node; - yyval.node = (Node *) n; + n->view = (yyvsp[(6) - (9)].range); + n->view->istemp = (yyvsp[(4) - (9)].boolean); + n->aliases = (yyvsp[(7) - (9)].list); + n->query = (Query *) (yyvsp[(9) - (9)].node); + (yyval.node) = (Node *) n; } break; @@ -15948,8 +16288,8 @@ yyreduce: #line 4533 "gram.y" { LoadStmt *n = makeNode(LoadStmt); - n->filename = yyvsp[0].str; - yyval.node = (Node *)n; + n->filename = (yyvsp[(2) - (2)].str); + (yyval.node) = (Node *)n; } break; @@ -15957,103 +16297,103 @@ yyreduce: #line 4549 "gram.y" { CreatedbStmt *n = makeNode(CreatedbStmt); - n->dbname = yyvsp[-2].str; - n->options = yyvsp[0].list; - yyval.node = (Node *)n; + n->dbname = (yyvsp[(3) - (5)].str); + n->options = (yyvsp[(5) - (5)].list); + (yyval.node) = (Node *)n; } break; case 718: #line 4558 "gram.y" - { yyval.list = lappend(yyvsp[-1].list, yyvsp[0].defelt); } + { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); } break; case 719: #line 4559 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 720: #line 4564 "gram.y" { - yyval.defelt = makeDefElem("tablespace", (Node *)makeString(yyvsp[0].str)); + (yyval.defelt) = makeDefElem("tablespace", (Node *)makeString((yyvsp[(3) - (3)].str))); } break; case 721: #line 4568 "gram.y" { - yyval.defelt = makeDefElem("tablespace", NULL); + (yyval.defelt) = makeDefElem("tablespace", NULL); } break; case 722: #line 4572 "gram.y" { - yyval.defelt = makeDefElem("location", (Node *)makeString(yyvsp[0].str)); + (yyval.defelt) = makeDefElem("location", (Node *)makeString((yyvsp[(3) - (3)].str))); } break; case 723: #line 4576 "gram.y" { - yyval.defelt = makeDefElem("location", NULL); + (yyval.defelt) = makeDefElem("location", NULL); } break; case 724: #line 4580 "gram.y" { - yyval.defelt = makeDefElem("template", (Node *)makeString(yyvsp[0].str)); + (yyval.defelt) = makeDefElem("template", (Node *)makeString((yyvsp[(3) - (3)].str))); } break; case 725: #line 4584 "gram.y" { - yyval.defelt = makeDefElem("template", NULL); + (yyval.defelt) = makeDefElem("template", NULL); } break; case 726: #line 4588 "gram.y" { - yyval.defelt = makeDefElem("encoding", (Node *)makeString(yyvsp[0].str)); + (yyval.defelt) = makeDefElem("encoding", (Node *)makeString((yyvsp[(3) - (3)].str))); } break; case 727: #line 4592 "gram.y" { - yyval.defelt = makeDefElem("encoding", (Node *)makeInteger(yyvsp[0].ival)); + (yyval.defelt) = makeDefElem("encoding", (Node *)makeInteger((yyvsp[(3) - (3)].ival))); } break; case 728: #line 4596 "gram.y" { - yyval.defelt = makeDefElem("encoding", NULL); + (yyval.defelt) = makeDefElem("encoding", NULL); } break; case 729: #line 4600 "gram.y" { - yyval.defelt = makeDefElem("connectionlimit", (Node *)makeInteger(yyvsp[0].ival)); + (yyval.defelt) = makeDefElem("connectionlimit", (Node *)makeInteger((yyvsp[(4) - (4)].ival))); } break; case 730: #line 4604 "gram.y" { - yyval.defelt = makeDefElem("owner", (Node *)makeString(yyvsp[0].str)); + (yyval.defelt) = makeDefElem("owner", (Node *)makeString((yyvsp[(3) - (3)].str))); } break; case 731: #line 4608 "gram.y" { - yyval.defelt = makeDefElem("owner", NULL); + (yyval.defelt) = makeDefElem("owner", NULL); } break; @@ -16071,9 +16411,9 @@ yyreduce: #line 4630 "gram.y" { AlterDatabaseStmt *n = makeNode(AlterDatabaseStmt); - n->dbname = yyvsp[-2].str; - n->options = yyvsp[0].list; - yyval.node = (Node *)n; + n->dbname = (yyvsp[(3) - (5)].str); + n->options = (yyvsp[(5) - (5)].list); + (yyval.node) = (Node *)n; } break; @@ -16081,10 +16421,10 @@ yyreduce: #line 4640 "gram.y" { AlterDatabaseSetStmt *n = makeNode(AlterDatabaseSetStmt); - n->dbname = yyvsp[-2].str; - n->variable = yyvsp[0].vsetstmt->name; - n->value = yyvsp[0].vsetstmt->args; - yyval.node = (Node *)n; + n->dbname = (yyvsp[(3) - (5)].str); + n->variable = (yyvsp[(5) - (5)].vsetstmt)->name; + n->value = (yyvsp[(5) - (5)].vsetstmt)->args; + (yyval.node) = (Node *)n; } break; @@ -16092,27 +16432,27 @@ yyreduce: #line 4648 "gram.y" { AlterDatabaseSetStmt *n = makeNode(AlterDatabaseSetStmt); - n->dbname = yyvsp[-1].str; - n->variable = ((VariableResetStmt *)yyvsp[0].node)->name; + n->dbname = (yyvsp[(3) - (4)].str); + n->variable = ((VariableResetStmt *)(yyvsp[(4) - (4)].node))->name; n->value = NIL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; case 737: #line 4659 "gram.y" - { yyval.list = lappend(yyvsp[-1].list, yyvsp[0].defelt); } + { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); } break; case 738: #line 4660 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 739: #line 4665 "gram.y" { - yyval.defelt = makeDefElem("connectionlimit", (Node *)makeInteger(yyvsp[0].ival)); + (yyval.defelt) = makeDefElem("connectionlimit", (Node *)makeInteger((yyvsp[(4) - (4)].ival))); } break; @@ -16120,8 +16460,8 @@ yyreduce: #line 4679 "gram.y" { DropdbStmt *n = makeNode(DropdbStmt); - n->dbname = yyvsp[0].str; - yyval.node = (Node *)n; + n->dbname = (yyvsp[(3) - (3)].str); + (yyval.node) = (Node *)n; } break; @@ -16129,10 +16469,10 @@ yyreduce: #line 4695 "gram.y" { CreateDomainStmt *n = makeNode(CreateDomainStmt); - n->domainname = yyvsp[-3].list; - n->typename = yyvsp[-1].typnam; - n->constraints = yyvsp[0].list; - yyval.node = (Node *)n; + n->domainname = (yyvsp[(3) - (6)].list); + n->typename = (yyvsp[(5) - (6)].typnam); + n->constraints = (yyvsp[(6) - (6)].list); + (yyval.node) = (Node *)n; } break; @@ -16141,9 +16481,9 @@ yyreduce: { AlterDomainStmt *n = makeNode(AlterDomainStmt); n->subtype = 'T'; - n->typename = yyvsp[-1].list; - n->def = yyvsp[0].node; - yyval.node = (Node *)n; + n->typename = (yyvsp[(3) - (4)].list); + n->def = (yyvsp[(4) - (4)].node); + (yyval.node) = (Node *)n; } break; @@ -16152,8 +16492,8 @@ yyreduce: { AlterDomainStmt *n = makeNode(AlterDomainStmt); n->subtype = 'N'; - n->typename = yyvsp[-3].list; - yyval.node = (Node *)n; + n->typename = (yyvsp[(3) - (6)].list); + (yyval.node) = (Node *)n; } break; @@ -16162,8 +16502,8 @@ yyreduce: { AlterDomainStmt *n = makeNode(AlterDomainStmt); n->subtype = 'O'; - n->typename = yyvsp[-3].list; - yyval.node = (Node *)n; + n->typename = (yyvsp[(3) - (6)].list); + (yyval.node) = (Node *)n; } break; @@ -16172,9 +16512,9 @@ yyreduce: { AlterDomainStmt *n = makeNode(AlterDomainStmt); n->subtype = 'C'; - n->typename = yyvsp[-2].list; - n->def = yyvsp[0].node; - yyval.node = (Node *)n; + n->typename = (yyvsp[(3) - (5)].list); + n->def = (yyvsp[(5) - (5)].node); + (yyval.node) = (Node *)n; } break; @@ -16183,10 +16523,10 @@ yyreduce: { AlterDomainStmt *n = makeNode(AlterDomainStmt); n->subtype = 'X'; - n->typename = yyvsp[-4].list; - n->name = yyvsp[-1].str; - n->behavior = yyvsp[0].dbehavior; - yyval.node = (Node *)n; + n->typename = (yyvsp[(3) - (7)].list); + n->name = (yyvsp[(6) - (7)].str); + n->behavior = (yyvsp[(7) - (7)].dbehavior); + (yyval.node) = (Node *)n; } break; @@ -16204,12 +16544,12 @@ yyreduce: #line 4768 "gram.y" { CreateConversionStmt *n = makeNode(CreateConversionStmt); - n->conversion_name = yyvsp[-6].list; - n->for_encoding_name = yyvsp[-4].str; - n->to_encoding_name = yyvsp[-2].str; - n->func_name = yyvsp[0].list; - n->def = yyvsp[-8].boolean; - yyval.node = (Node *)n; + n->conversion_name = (yyvsp[(4) - (10)].list); + n->for_encoding_name = (yyvsp[(6) - (10)].str); + n->to_encoding_name = (yyvsp[(8) - (10)].str); + n->func_name = (yyvsp[(10) - (10)].list); + n->def = (yyvsp[(2) - (10)].boolean); + (yyval.node) = (Node *)n; } break; @@ -16217,9 +16557,9 @@ yyreduce: #line 4790 "gram.y" { ClusterStmt *n = makeNode(ClusterStmt); - n->relation = yyvsp[0].range; - n->indexname = yyvsp[-2].str; - yyval.node = (Node*)n; + n->relation = (yyvsp[(4) - (4)].range); + n->indexname = (yyvsp[(2) - (4)].str); + (yyval.node) = (Node*)n; } break; @@ -16227,9 +16567,9 @@ yyreduce: #line 4797 "gram.y" { ClusterStmt *n = makeNode(ClusterStmt); - n->relation = yyvsp[0].range; + n->relation = (yyvsp[(2) - (2)].range); n->indexname = NULL; - yyval.node = (Node*)n; + (yyval.node) = (Node*)n; } break; @@ -16239,7 +16579,7 @@ yyreduce: ClusterStmt *n = makeNode(ClusterStmt); n->relation = NULL; n->indexname = NULL; - yyval.node = (Node*)n; + (yyval.node) = (Node*)n; } break; @@ -16249,12 +16589,12 @@ yyreduce: VacuumStmt *n = makeNode(VacuumStmt); n->vacuum = true; n->analyze = false; - n->full = yyvsp[-2].boolean; - n->freeze = yyvsp[-1].boolean; - n->verbose = yyvsp[0].boolean; + n->full = (yyvsp[(2) - (4)].boolean); + n->freeze = (yyvsp[(3) - (4)].boolean); + n->verbose = (yyvsp[(4) - (4)].boolean); n->relation = NULL; n->va_cols = NIL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -16264,24 +16604,24 @@ yyreduce: VacuumStmt *n = makeNode(VacuumStmt); n->vacuum = true; n->analyze = false; - n->full = yyvsp[-3].boolean; - n->freeze = yyvsp[-2].boolean; - n->verbose = yyvsp[-1].boolean; - n->relation = yyvsp[0].range; + n->full = (yyvsp[(2) - (5)].boolean); + n->freeze = (yyvsp[(3) - (5)].boolean); + n->verbose = (yyvsp[(4) - (5)].boolean); + n->relation = (yyvsp[(5) - (5)].range); n->va_cols = NIL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; case 755: #line 4845 "gram.y" { - VacuumStmt *n = (VacuumStmt *) yyvsp[0].node; + VacuumStmt *n = (VacuumStmt *) (yyvsp[(5) - (5)].node); n->vacuum = true; - n->full = yyvsp[-3].boolean; - n->freeze = yyvsp[-2].boolean; - n->verbose |= yyvsp[-1].boolean; - yyval.node = (Node *)n; + n->full = (yyvsp[(2) - (5)].boolean); + n->freeze = (yyvsp[(3) - (5)].boolean); + n->verbose |= (yyvsp[(4) - (5)].boolean); + (yyval.node) = (Node *)n; } break; @@ -16293,10 +16633,10 @@ yyreduce: n->analyze = true; n->full = false; n->freeze = false; - n->verbose = yyvsp[0].boolean; + n->verbose = (yyvsp[(2) - (2)].boolean); n->relation = NULL; n->va_cols = NIL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -16308,10 +16648,10 @@ yyreduce: n->analyze = true; n->full = false; n->freeze = false; - n->verbose = yyvsp[-2].boolean; - n->relation = yyvsp[-1].range; - n->va_cols = yyvsp[0].list; - yyval.node = (Node *)n; + n->verbose = (yyvsp[(2) - (4)].boolean); + n->relation = (yyvsp[(3) - (4)].range); + n->va_cols = (yyvsp[(4) - (4)].list); + (yyval.node) = (Node *)n; } break; @@ -16327,104 +16667,104 @@ yyreduce: case 760: #line 4888 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 761: #line 4889 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 762: #line 4892 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 763: #line 4893 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 764: #line 4896 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 765: #line 4897 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 766: #line 4901 "gram.y" - { yyval.list = yyvsp[-1].list; } + { (yyval.list) = (yyvsp[(2) - (3)].list); } break; case 767: #line 4902 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 768: #line 4914 "gram.y" { ExplainStmt *n = makeNode(ExplainStmt); - n->analyze = yyvsp[-2].boolean; - n->verbose = yyvsp[-1].boolean; - n->query = (Query*)yyvsp[0].node; - yyval.node = (Node *)n; + n->analyze = (yyvsp[(2) - (4)].boolean); + n->verbose = (yyvsp[(3) - (4)].boolean); + n->query = (Query*)(yyvsp[(4) - (4)].node); + (yyval.node) = (Node *)n; } break; case 775: #line 4933 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 776: #line 4934 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 777: #line 4945 "gram.y" { PrepareStmt *n = makeNode(PrepareStmt); - n->name = yyvsp[-3].str; - n->argtypes = yyvsp[-2].list; - n->query = (Query *) yyvsp[0].node; - yyval.node = (Node *) n; + n->name = (yyvsp[(2) - (5)].str); + n->argtypes = (yyvsp[(3) - (5)].list); + n->query = (Query *) (yyvsp[(5) - (5)].node); + (yyval.node) = (Node *) n; } break; case 778: #line 4954 "gram.y" - { yyval.list = yyvsp[-1].list; } + { (yyval.list) = (yyvsp[(2) - (3)].list); } break; case 779: #line 4955 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 780: #line 4958 "gram.y" - { yyval.list = list_make1(yyvsp[0].typnam); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].typnam)); } break; case 781: #line 4960 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].typnam); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].typnam)); } break; case 786: #line 4978 "gram.y" { ExecuteStmt *n = makeNode(ExecuteStmt); - n->name = yyvsp[-1].str; - n->params = yyvsp[0].list; + n->name = (yyvsp[(2) - (3)].str); + n->params = (yyvsp[(3) - (3)].list); n->into = NULL; - yyval.node = (Node *) n; + (yyval.node) = (Node *) n; } break; @@ -16432,35 +16772,35 @@ yyreduce: #line 4986 "gram.y" { ExecuteStmt *n = makeNode(ExecuteStmt); - n->name = yyvsp[-1].str; - n->params = yyvsp[0].list; - yyvsp[-5].range->istemp = yyvsp[-7].boolean; - n->into = yyvsp[-5].range; - if (yyvsp[-4].list) + n->name = (yyvsp[(8) - (9)].str); + n->params = (yyvsp[(9) - (9)].list); + (yyvsp[(4) - (9)].range)->istemp = (yyvsp[(2) - (9)].boolean); + n->into = (yyvsp[(4) - (9)].range); + if ((yyvsp[(5) - (9)].list)) ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), errmsg("column name list not allowed in CREATE TABLE / AS EXECUTE"))); /* ... because it's not implemented, but it could be */ - yyval.node = (Node *) n; + (yyval.node) = (Node *) n; } break; case 788: #line 5001 "gram.y" - { yyval.list = yyvsp[-1].list; } + { (yyval.list) = (yyvsp[(2) - (3)].list); } break; case 789: #line 5002 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 790: #line 5013 "gram.y" { DeallocateStmt *n = makeNode(DeallocateStmt); - n->name = yyvsp[0].str; - yyval.node = (Node *) n; + n->name = (yyvsp[(2) - (2)].str); + (yyval.node) = (Node *) n; } break; @@ -16468,86 +16808,86 @@ yyreduce: #line 5019 "gram.y" { DeallocateStmt *n = makeNode(DeallocateStmt); - n->name = yyvsp[0].str; - yyval.node = (Node *) n; + n->name = (yyvsp[(3) - (3)].str); + (yyval.node) = (Node *) n; } break; case 792: #line 5035 "gram.y" { - yyvsp[0].istmt->relation = yyvsp[-1].range; - yyval.node = (Node *) yyvsp[0].istmt; + (yyvsp[(4) - (4)].istmt)->relation = (yyvsp[(3) - (4)].range); + (yyval.node) = (Node *) (yyvsp[(4) - (4)].istmt); } break; case 793: #line 5043 "gram.y" { - yyval.istmt = makeNode(InsertStmt); - yyval.istmt->cols = NIL; - yyval.istmt->targetList = yyvsp[-1].list; - yyval.istmt->selectStmt = NULL; + (yyval.istmt) = makeNode(InsertStmt); + (yyval.istmt)->cols = NIL; + (yyval.istmt)->targetList = (yyvsp[(3) - (4)].list); + (yyval.istmt)->selectStmt = NULL; } break; case 794: #line 5050 "gram.y" { - yyval.istmt = makeNode(InsertStmt); - yyval.istmt->cols = NIL; - yyval.istmt->targetList = NIL; - yyval.istmt->selectStmt = NULL; + (yyval.istmt) = makeNode(InsertStmt); + (yyval.istmt)->cols = NIL; + (yyval.istmt)->targetList = NIL; + (yyval.istmt)->selectStmt = NULL; } break; case 795: #line 5057 "gram.y" { - yyval.istmt = makeNode(InsertStmt); - yyval.istmt->cols = NIL; - yyval.istmt->targetList = NIL; - yyval.istmt->selectStmt = yyvsp[0].node; + (yyval.istmt) = makeNode(InsertStmt); + (yyval.istmt)->cols = NIL; + (yyval.istmt)->targetList = NIL; + (yyval.istmt)->selectStmt = (yyvsp[(1) - (1)].node); } break; case 796: #line 5064 "gram.y" { - yyval.istmt = makeNode(InsertStmt); - yyval.istmt->cols = yyvsp[-5].list; - yyval.istmt->targetList = yyvsp[-1].list; - yyval.istmt->selectStmt = NULL; + (yyval.istmt) = makeNode(InsertStmt); + (yyval.istmt)->cols = (yyvsp[(2) - (7)].list); + (yyval.istmt)->targetList = (yyvsp[(6) - (7)].list); + (yyval.istmt)->selectStmt = NULL; } break; case 797: #line 5071 "gram.y" { - yyval.istmt = makeNode(InsertStmt); - yyval.istmt->cols = yyvsp[-2].list; - yyval.istmt->targetList = NIL; - yyval.istmt->selectStmt = yyvsp[0].node; + (yyval.istmt) = makeNode(InsertStmt); + (yyval.istmt)->cols = (yyvsp[(2) - (4)].list); + (yyval.istmt)->targetList = NIL; + (yyval.istmt)->selectStmt = (yyvsp[(4) - (4)].node); } break; case 798: #line 5081 "gram.y" - { yyval.list = list_make1(yyvsp[0].target); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].target)); } break; case 799: #line 5083 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].target); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].target)); } break; case 800: #line 5088 "gram.y" { - yyval.target = makeNode(ResTarget); - yyval.target->name = yyvsp[-1].str; - yyval.target->indirection = yyvsp[0].list; - yyval.target->val = NULL; + (yyval.target) = makeNode(ResTarget); + (yyval.target)->name = (yyvsp[(1) - (2)].str); + (yyval.target)->indirection = (yyvsp[(2) - (2)].list); + (yyval.target)->val = NULL; } break; @@ -16555,21 +16895,21 @@ yyreduce: #line 5105 "gram.y" { DeleteStmt *n = makeNode(DeleteStmt); - n->relation = yyvsp[-2].range; - n->usingClause = yyvsp[-1].list; - n->whereClause = yyvsp[0].node; - yyval.node = (Node *)n; + n->relation = (yyvsp[(3) - (5)].range); + n->usingClause = (yyvsp[(4) - (5)].list); + n->whereClause = (yyvsp[(5) - (5)].node); + (yyval.node) = (Node *)n; } break; case 802: #line 5115 "gram.y" - { yyval.list = yyvsp[0].list; } + { (yyval.list) = (yyvsp[(2) - (2)].list); } break; case 803: #line 5116 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 804: @@ -16577,82 +16917,82 @@ yyreduce: { LockStmt *n = makeNode(LockStmt); - n->relations = yyvsp[-2].list; - n->mode = yyvsp[-1].ival; - n->nowait = yyvsp[0].boolean; - yyval.node = (Node *)n; + n->relations = (yyvsp[(3) - (5)].list); + n->mode = (yyvsp[(4) - (5)].ival); + n->nowait = (yyvsp[(5) - (5)].boolean); + (yyval.node) = (Node *)n; } break; case 805: #line 5130 "gram.y" - { yyval.ival = yyvsp[-1].ival; } + { (yyval.ival) = (yyvsp[(2) - (3)].ival); } break; case 806: #line 5131 "gram.y" - { yyval.ival = AccessExclusiveLock; } + { (yyval.ival) = AccessExclusiveLock; } break; case 807: #line 5134 "gram.y" - { yyval.ival = AccessShareLock; } + { (yyval.ival) = AccessShareLock; } break; case 808: #line 5135 "gram.y" - { yyval.ival = RowShareLock; } + { (yyval.ival) = RowShareLock; } break; case 809: #line 5136 "gram.y" - { yyval.ival = RowExclusiveLock; } + { (yyval.ival) = RowExclusiveLock; } break; case 810: #line 5137 "gram.y" - { yyval.ival = ShareUpdateExclusiveLock; } + { (yyval.ival) = ShareUpdateExclusiveLock; } break; case 811: #line 5138 "gram.y" - { yyval.ival = ShareLock; } + { (yyval.ival) = ShareLock; } break; case 812: #line 5139 "gram.y" - { yyval.ival = ShareRowExclusiveLock; } + { (yyval.ival) = ShareRowExclusiveLock; } break; case 813: #line 5140 "gram.y" - { yyval.ival = ExclusiveLock; } + { (yyval.ival) = ExclusiveLock; } break; case 814: #line 5141 "gram.y" - { yyval.ival = AccessExclusiveLock; } + { (yyval.ival) = AccessExclusiveLock; } break; case 815: #line 5144 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 816: #line 5145 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 817: #line 5160 "gram.y" { UpdateStmt *n = makeNode(UpdateStmt); - n->relation = yyvsp[-4].range; - n->targetList = yyvsp[-2].list; - n->fromClause = yyvsp[-1].list; - n->whereClause = yyvsp[0].node; - yyval.node = (Node *)n; + n->relation = (yyvsp[(2) - (6)].range); + n->targetList = (yyvsp[(4) - (6)].list); + n->fromClause = (yyvsp[(5) - (6)].list); + n->whereClause = (yyvsp[(6) - (6)].node); + (yyval.node) = (Node *)n; } break; @@ -16660,216 +17000,216 @@ yyreduce: #line 5178 "gram.y" { DeclareCursorStmt *n = makeNode(DeclareCursorStmt); - n->portalname = yyvsp[-5].str; - n->options = yyvsp[-4].ival; - n->query = yyvsp[0].node; - if (yyvsp[-2].boolean) + n->portalname = (yyvsp[(2) - (7)].str); + n->options = (yyvsp[(3) - (7)].ival); + n->query = (yyvsp[(7) - (7)].node); + if ((yyvsp[(5) - (7)].boolean)) n->options |= CURSOR_OPT_HOLD; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; case 819: #line 5189 "gram.y" - { yyval.ival = 0; } + { (yyval.ival) = 0; } break; case 820: #line 5190 "gram.y" - { yyval.ival = yyvsp[-2].ival | CURSOR_OPT_NO_SCROLL; } + { (yyval.ival) = (yyvsp[(1) - (3)].ival) | CURSOR_OPT_NO_SCROLL; } break; case 821: #line 5191 "gram.y" - { yyval.ival = yyvsp[-1].ival | CURSOR_OPT_SCROLL; } + { (yyval.ival) = (yyvsp[(1) - (2)].ival) | CURSOR_OPT_SCROLL; } break; case 822: #line 5192 "gram.y" - { yyval.ival = yyvsp[-1].ival | CURSOR_OPT_BINARY; } + { (yyval.ival) = (yyvsp[(1) - (2)].ival) | CURSOR_OPT_BINARY; } break; case 823: #line 5193 "gram.y" - { yyval.ival = yyvsp[-1].ival | CURSOR_OPT_INSENSITIVE; } + { (yyval.ival) = (yyvsp[(1) - (2)].ival) | CURSOR_OPT_INSENSITIVE; } break; case 824: #line 5196 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 825: #line 5197 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 826: #line 5198 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 829: #line 5251 "gram.y" - { yyval.node = yyvsp[-1].node; } + { (yyval.node) = (yyvsp[(2) - (3)].node); } break; case 830: #line 5252 "gram.y" - { yyval.node = yyvsp[-1].node; } + { (yyval.node) = (yyvsp[(2) - (3)].node); } break; case 831: #line 5262 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 832: #line 5264 "gram.y" { - insertSelectOptions((SelectStmt *) yyvsp[-1].node, yyvsp[0].list, NULL, + insertSelectOptions((SelectStmt *) (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].list), NULL, NULL, NULL); - yyval.node = yyvsp[-1].node; + (yyval.node) = (yyvsp[(1) - (2)].node); } break; case 833: #line 5270 "gram.y" { - insertSelectOptions((SelectStmt *) yyvsp[-3].node, yyvsp[-2].list, yyvsp[-1].node, - list_nth(yyvsp[0].list, 0), list_nth(yyvsp[0].list, 1)); - yyval.node = yyvsp[-3].node; + insertSelectOptions((SelectStmt *) (yyvsp[(1) - (4)].node), (yyvsp[(2) - (4)].list), (yyvsp[(3) - (4)].node), + list_nth((yyvsp[(4) - (4)].list), 0), list_nth((yyvsp[(4) - (4)].list), 1)); + (yyval.node) = (yyvsp[(1) - (4)].node); } break; case 834: #line 5276 "gram.y" { - insertSelectOptions((SelectStmt *) yyvsp[-3].node, yyvsp[-2].list, yyvsp[0].node, - list_nth(yyvsp[-1].list, 0), list_nth(yyvsp[-1].list, 1)); - yyval.node = yyvsp[-3].node; + insertSelectOptions((SelectStmt *) (yyvsp[(1) - (4)].node), (yyvsp[(2) - (4)].list), (yyvsp[(4) - (4)].node), + list_nth((yyvsp[(3) - (4)].list), 0), list_nth((yyvsp[(3) - (4)].list), 1)); + (yyval.node) = (yyvsp[(1) - (4)].node); } break; case 835: #line 5284 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 836: #line 5285 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 837: #line 5315 "gram.y" { SelectStmt *n = makeNode(SelectStmt); - n->distinctClause = yyvsp[-6].list; - n->targetList = yyvsp[-5].list; - n->into = yyvsp[-4].range; + n->distinctClause = (yyvsp[(2) - (8)].list); + n->targetList = (yyvsp[(3) - (8)].list); + n->into = (yyvsp[(4) - (8)].range); n->intoColNames = NIL; n->intoHasOids = DEFAULT_OIDS; - n->fromClause = yyvsp[-3].list; - n->whereClause = yyvsp[-2].node; - n->groupClause = yyvsp[-1].list; - n->havingClause = yyvsp[0].node; - yyval.node = (Node *)n; + n->fromClause = (yyvsp[(5) - (8)].list); + n->whereClause = (yyvsp[(6) - (8)].node); + n->groupClause = (yyvsp[(7) - (8)].list); + n->havingClause = (yyvsp[(8) - (8)].node); + (yyval.node) = (Node *)n; } break; case 838: #line 5329 "gram.y" { - yyval.node = makeSetOp(SETOP_UNION, yyvsp[-1].boolean, yyvsp[-3].node, yyvsp[0].node); + (yyval.node) = makeSetOp(SETOP_UNION, (yyvsp[(3) - (4)].boolean), (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node)); } break; case 839: #line 5333 "gram.y" { - yyval.node = makeSetOp(SETOP_INTERSECT, yyvsp[-1].boolean, yyvsp[-3].node, yyvsp[0].node); + (yyval.node) = makeSetOp(SETOP_INTERSECT, (yyvsp[(3) - (4)].boolean), (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node)); } break; case 840: #line 5337 "gram.y" { - yyval.node = makeSetOp(SETOP_EXCEPT, yyvsp[-1].boolean, yyvsp[-3].node, yyvsp[0].node); + (yyval.node) = makeSetOp(SETOP_EXCEPT, (yyvsp[(3) - (4)].boolean), (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node)); } break; case 841: #line 5343 "gram.y" - { yyval.range = yyvsp[0].range; } + { (yyval.range) = (yyvsp[(2) - (2)].range); } break; case 842: #line 5344 "gram.y" - { yyval.range = NULL; } + { (yyval.range) = NULL; } break; case 843: #line 5353 "gram.y" { - yyval.range = yyvsp[0].range; - yyval.range->istemp = true; + (yyval.range) = (yyvsp[(3) - (3)].range); + (yyval.range)->istemp = true; } break; case 844: #line 5358 "gram.y" { - yyval.range = yyvsp[0].range; - yyval.range->istemp = true; + (yyval.range) = (yyvsp[(3) - (3)].range); + (yyval.range)->istemp = true; } break; case 845: #line 5363 "gram.y" { - yyval.range = yyvsp[0].range; - yyval.range->istemp = true; + (yyval.range) = (yyvsp[(4) - (4)].range); + (yyval.range)->istemp = true; } break; case 846: #line 5368 "gram.y" { - yyval.range = yyvsp[0].range; - yyval.range->istemp = true; + (yyval.range) = (yyvsp[(4) - (4)].range); + (yyval.range)->istemp = true; } break; case 847: #line 5373 "gram.y" { - yyval.range = yyvsp[0].range; - yyval.range->istemp = true; + (yyval.range) = (yyvsp[(4) - (4)].range); + (yyval.range)->istemp = true; } break; case 848: #line 5378 "gram.y" { - yyval.range = yyvsp[0].range; - yyval.range->istemp = true; + (yyval.range) = (yyvsp[(4) - (4)].range); + (yyval.range)->istemp = true; } break; case 849: #line 5383 "gram.y" { - yyval.range = yyvsp[0].range; - yyval.range->istemp = false; + (yyval.range) = (yyvsp[(2) - (2)].range); + (yyval.range)->istemp = false; } break; case 850: #line 5388 "gram.y" { - yyval.range = yyvsp[0].range; - yyval.range->istemp = false; + (yyval.range) = (yyvsp[(1) - (1)].range); + (yyval.range)->istemp = false; } break; @@ -16885,122 +17225,122 @@ yyreduce: case 853: #line 5398 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 854: #line 5399 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 855: #line 5400 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 856: #line 5407 "gram.y" - { yyval.list = list_make1(NIL); } + { (yyval.list) = list_make1(NIL); } break; case 857: #line 5408 "gram.y" - { yyval.list = yyvsp[-1].list; } + { (yyval.list) = (yyvsp[(4) - (5)].list); } break; case 858: #line 5409 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 859: #line 5410 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 860: #line 5414 "gram.y" - { yyval.list = yyvsp[0].list;} + { (yyval.list) = (yyvsp[(1) - (1)].list);} break; case 861: #line 5415 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 862: #line 5419 "gram.y" - { yyval.list = yyvsp[0].list; } + { (yyval.list) = (yyvsp[(3) - (3)].list); } break; case 863: #line 5423 "gram.y" - { yyval.list = list_make1(yyvsp[0].sortby); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].sortby)); } break; case 864: #line 5424 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].sortby); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].sortby)); } break; case 865: #line 5428 "gram.y" { - yyval.sortby = makeNode(SortBy); - yyval.sortby->node = yyvsp[-2].node; - yyval.sortby->sortby_kind = SORTBY_USING; - yyval.sortby->useOp = yyvsp[0].list; + (yyval.sortby) = makeNode(SortBy); + (yyval.sortby)->node = (yyvsp[(1) - (3)].node); + (yyval.sortby)->sortby_kind = SORTBY_USING; + (yyval.sortby)->useOp = (yyvsp[(3) - (3)].list); } break; case 866: #line 5435 "gram.y" { - yyval.sortby = makeNode(SortBy); - yyval.sortby->node = yyvsp[-1].node; - yyval.sortby->sortby_kind = SORTBY_ASC; - yyval.sortby->useOp = NIL; + (yyval.sortby) = makeNode(SortBy); + (yyval.sortby)->node = (yyvsp[(1) - (2)].node); + (yyval.sortby)->sortby_kind = SORTBY_ASC; + (yyval.sortby)->useOp = NIL; } break; case 867: #line 5442 "gram.y" { - yyval.sortby = makeNode(SortBy); - yyval.sortby->node = yyvsp[-1].node; - yyval.sortby->sortby_kind = SORTBY_DESC; - yyval.sortby->useOp = NIL; + (yyval.sortby) = makeNode(SortBy); + (yyval.sortby)->node = (yyvsp[(1) - (2)].node); + (yyval.sortby)->sortby_kind = SORTBY_DESC; + (yyval.sortby)->useOp = NIL; } break; case 868: #line 5449 "gram.y" { - yyval.sortby = makeNode(SortBy); - yyval.sortby->node = yyvsp[0].node; - yyval.sortby->sortby_kind = SORTBY_ASC; /* default */ - yyval.sortby->useOp = NIL; + (yyval.sortby) = makeNode(SortBy); + (yyval.sortby)->node = (yyvsp[(1) - (1)].node); + (yyval.sortby)->sortby_kind = SORTBY_ASC; /* default */ + (yyval.sortby)->useOp = NIL; } break; case 869: #line 5460 "gram.y" - { yyval.list = list_make2(yyvsp[0].node, yyvsp[-2].node); } + { (yyval.list) = list_make2((yyvsp[(4) - (4)].node), (yyvsp[(2) - (4)].node)); } break; case 870: #line 5462 "gram.y" - { yyval.list = list_make2(yyvsp[-2].node, yyvsp[0].node); } + { (yyval.list) = list_make2((yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].node)); } break; case 871: #line 5464 "gram.y" - { yyval.list = list_make2(NULL, yyvsp[0].node); } + { (yyval.list) = list_make2(NULL, (yyvsp[(2) - (2)].node)); } break; case 872: #line 5466 "gram.y" - { yyval.list = list_make2(yyvsp[0].node, NULL); } + { (yyval.list) = list_make2((yyvsp[(2) - (2)].node), NULL); } break; case 873: @@ -17016,17 +17356,17 @@ yyreduce: case 874: #line 5478 "gram.y" - { yyval.list = yyvsp[0].list; } + { (yyval.list) = (yyvsp[(1) - (1)].list); } break; case 875: #line 5480 "gram.y" - { yyval.list = list_make2(NULL,NULL); } + { (yyval.list) = list_make2(NULL,NULL); } break; case 876: #line 5484 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 877: @@ -17035,43 +17375,43 @@ yyreduce: /* LIMIT ALL is represented as a NULL constant */ A_Const *n = makeNode(A_Const); n->val.type = T_Null; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; case 878: #line 5495 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 879: #line 5499 "gram.y" - { yyval.list = yyvsp[0].list; } + { (yyval.list) = (yyvsp[(3) - (3)].list); } break; case 880: #line 5500 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 881: #line 5504 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(2) - (2)].node); } break; case 882: #line 5505 "gram.y" - { yyval.node = NULL; } + { (yyval.node) = NULL; } break; case 883: #line 5510 "gram.y" { LockingClause *n = makeNode(LockingClause); - n->lockedRels = yyvsp[-1].list; + n->lockedRels = (yyvsp[(3) - (4)].list); n->forUpdate = TRUE; - n->nowait = yyvsp[0].boolean; - yyval.node = (Node *) n; + n->nowait = (yyvsp[(4) - (4)].boolean); + (yyval.node) = (Node *) n; } break; @@ -17079,70 +17419,70 @@ yyreduce: #line 5518 "gram.y" { LockingClause *n = makeNode(LockingClause); - n->lockedRels = yyvsp[-1].list; + n->lockedRels = (yyvsp[(3) - (4)].list); n->forUpdate = FALSE; - n->nowait = yyvsp[0].boolean; - yyval.node = (Node *) n; + n->nowait = (yyvsp[(4) - (4)].boolean); + (yyval.node) = (Node *) n; } break; case 885: #line 5525 "gram.y" - { yyval.node = NULL; } + { (yyval.node) = NULL; } break; case 886: #line 5529 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 887: #line 5530 "gram.y" - { yyval.node = NULL; } + { (yyval.node) = NULL; } break; case 888: #line 5534 "gram.y" - { yyval.list = yyvsp[0].list; } + { (yyval.list) = (yyvsp[(2) - (2)].list); } break; case 889: #line 5535 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 890: #line 5547 "gram.y" - { yyval.list = yyvsp[0].list; } + { (yyval.list) = (yyvsp[(2) - (2)].list); } break; case 891: #line 5548 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 892: #line 5552 "gram.y" - { yyval.list = list_make1(yyvsp[0].node); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); } break; case 893: #line 5553 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; case 894: #line 5564 "gram.y" { - yyval.node = (Node *) yyvsp[0].range; + (yyval.node) = (Node *) (yyvsp[(1) - (1)].range); } break; case 895: #line 5568 "gram.y" { - yyvsp[-1].range->alias = yyvsp[0].alias; - yyval.node = (Node *) yyvsp[-1].range; + (yyvsp[(1) - (2)].range)->alias = (yyvsp[(2) - (2)].alias); + (yyval.node) = (Node *) (yyvsp[(1) - (2)].range); } break; @@ -17150,9 +17490,9 @@ yyreduce: #line 5573 "gram.y" { RangeFunction *n = makeNode(RangeFunction); - n->funccallnode = yyvsp[0].node; + n->funccallnode = (yyvsp[(1) - (1)].node); n->coldeflist = NIL; - yyval.node = (Node *) n; + (yyval.node) = (Node *) n; } break; @@ -17160,10 +17500,10 @@ yyreduce: #line 5580 "gram.y" { RangeFunction *n = makeNode(RangeFunction); - n->funccallnode = yyvsp[-1].node; - n->alias = yyvsp[0].alias; + n->funccallnode = (yyvsp[(1) - (2)].node); + n->alias = (yyvsp[(2) - (2)].alias); n->coldeflist = NIL; - yyval.node = (Node *) n; + (yyval.node) = (Node *) n; } break; @@ -17171,9 +17511,9 @@ yyreduce: #line 5588 "gram.y" { RangeFunction *n = makeNode(RangeFunction); - n->funccallnode = yyvsp[-4].node; - n->coldeflist = yyvsp[-1].list; - yyval.node = (Node *) n; + n->funccallnode = (yyvsp[(1) - (5)].node); + n->coldeflist = (yyvsp[(4) - (5)].list); + (yyval.node) = (Node *) n; } break; @@ -17182,11 +17522,11 @@ yyreduce: { RangeFunction *n = makeNode(RangeFunction); Alias *a = makeNode(Alias); - n->funccallnode = yyvsp[-5].node; - a->aliasname = yyvsp[-3].str; + n->funccallnode = (yyvsp[(1) - (6)].node); + a->aliasname = (yyvsp[(3) - (6)].str); n->alias = a; - n->coldeflist = yyvsp[-1].list; - yyval.node = (Node *) n; + n->coldeflist = (yyvsp[(5) - (6)].list); + (yyval.node) = (Node *) n; } break; @@ -17195,11 +17535,11 @@ yyreduce: { RangeFunction *n = makeNode(RangeFunction); Alias *a = makeNode(Alias); - n->funccallnode = yyvsp[-4].node; - a->aliasname = yyvsp[-3].str; + n->funccallnode = (yyvsp[(1) - (5)].node); + a->aliasname = (yyvsp[(2) - (5)].str); n->alias = a; - n->coldeflist = yyvsp[-1].list; - yyval.node = (Node *) n; + n->coldeflist = (yyvsp[(4) - (5)].list); + (yyval.node) = (Node *) n; } break; @@ -17221,7 +17561,7 @@ yyreduce: (errcode(ERRCODE_SYNTAX_ERROR), errmsg("subquery in FROM must have an alias"), errhint("For example, FROM (SELECT ...) [AS] foo."))); - yyval.node = NULL; + (yyval.node) = NULL; } break; @@ -17229,31 +17569,31 @@ yyreduce: #line 5634 "gram.y" { RangeSubselect *n = makeNode(RangeSubselect); - n->subquery = yyvsp[-1].node; - n->alias = yyvsp[0].alias; - yyval.node = (Node *) n; + n->subquery = (yyvsp[(1) - (2)].node); + n->alias = (yyvsp[(2) - (2)].alias); + (yyval.node) = (Node *) n; } break; case 903: #line 5641 "gram.y" { - yyval.node = (Node *) yyvsp[0].jexpr; + (yyval.node) = (Node *) (yyvsp[(1) - (1)].jexpr); } break; case 904: #line 5645 "gram.y" { - yyvsp[-2].jexpr->alias = yyvsp[0].alias; - yyval.node = (Node *) yyvsp[-2].jexpr; + (yyvsp[(2) - (4)].jexpr)->alias = (yyvsp[(4) - (4)].alias); + (yyval.node) = (Node *) (yyvsp[(2) - (4)].jexpr); } break; case 905: #line 5671 "gram.y" { - yyval.jexpr = yyvsp[-1].jexpr; + (yyval.jexpr) = (yyvsp[(2) - (3)].jexpr); } break; @@ -17264,11 +17604,11 @@ yyreduce: JoinExpr *n = makeNode(JoinExpr); n->jointype = JOIN_INNER; n->isNatural = FALSE; - n->larg = yyvsp[-3].node; - n->rarg = yyvsp[0].node; + n->larg = (yyvsp[(1) - (4)].node); + n->rarg = (yyvsp[(4) - (4)].node); n->using = NIL; n->quals = NULL; - yyval.jexpr = n; + (yyval.jexpr) = n; } break; @@ -17281,11 +17621,11 @@ yyreduce: JoinExpr *n = makeNode(JoinExpr); n->jointype = JOIN_UNION; n->isNatural = FALSE; - n->larg = yyvsp[-2].node; - n->rarg = yyvsp[0].node; + n->larg = (yyvsp[(1) - (3)].node); + n->rarg = (yyvsp[(3) - (3)].node); n->using = NIL; n->quals = NULL; - yyval.jexpr = n; + (yyval.jexpr) = n; } break; @@ -17293,15 +17633,15 @@ yyreduce: #line 5701 "gram.y" { JoinExpr *n = makeNode(JoinExpr); - n->jointype = yyvsp[-3].jtype; + n->jointype = (yyvsp[(2) - (5)].jtype); n->isNatural = FALSE; - n->larg = yyvsp[-4].node; - n->rarg = yyvsp[-1].node; - if (yyvsp[0].node != NULL && IsA(yyvsp[0].node, List)) - n->using = (List *) yyvsp[0].node; /* USING clause */ + n->larg = (yyvsp[(1) - (5)].node); + n->rarg = (yyvsp[(4) - (5)].node); + if ((yyvsp[(5) - (5)].node) != NULL && IsA((yyvsp[(5) - (5)].node), List)) + n->using = (List *) (yyvsp[(5) - (5)].node); /* USING clause */ else - n->quals = yyvsp[0].node; /* ON clause */ - yyval.jexpr = n; + n->quals = (yyvsp[(5) - (5)].node); /* ON clause */ + (yyval.jexpr) = n; } break; @@ -17312,13 +17652,13 @@ yyreduce: JoinExpr *n = makeNode(JoinExpr); n->jointype = JOIN_INNER; n->isNatural = FALSE; - n->larg = yyvsp[-3].node; - n->rarg = yyvsp[-1].node; - if (yyvsp[0].node != NULL && IsA(yyvsp[0].node, List)) - n->using = (List *) yyvsp[0].node; /* USING clause */ + n->larg = (yyvsp[(1) - (4)].node); + n->rarg = (yyvsp[(3) - (4)].node); + if ((yyvsp[(4) - (4)].node) != NULL && IsA((yyvsp[(4) - (4)].node), List)) + n->using = (List *) (yyvsp[(4) - (4)].node); /* USING clause */ else - n->quals = yyvsp[0].node; /* ON clause */ - yyval.jexpr = n; + n->quals = (yyvsp[(4) - (4)].node); /* ON clause */ + (yyval.jexpr) = n; } break; @@ -17326,13 +17666,13 @@ yyreduce: #line 5728 "gram.y" { JoinExpr *n = makeNode(JoinExpr); - n->jointype = yyvsp[-2].jtype; + n->jointype = (yyvsp[(3) - (5)].jtype); n->isNatural = TRUE; - n->larg = yyvsp[-4].node; - n->rarg = yyvsp[0].node; + n->larg = (yyvsp[(1) - (5)].node); + n->rarg = (yyvsp[(5) - (5)].node); n->using = NIL; /* figure out which columns later... */ n->quals = NULL; /* fill later */ - yyval.jexpr = n; + (yyval.jexpr) = n; } break; @@ -17343,95 +17683,95 @@ yyreduce: JoinExpr *n = makeNode(JoinExpr); n->jointype = JOIN_INNER; n->isNatural = TRUE; - n->larg = yyvsp[-3].node; - n->rarg = yyvsp[0].node; + n->larg = (yyvsp[(1) - (4)].node); + n->rarg = (yyvsp[(4) - (4)].node); n->using = NIL; /* figure out which columns later... */ n->quals = NULL; /* fill later */ - yyval.jexpr = n; + (yyval.jexpr) = n; } break; case 912: #line 5754 "gram.y" { - yyval.alias = makeNode(Alias); - yyval.alias->aliasname = yyvsp[-3].str; - yyval.alias->colnames = yyvsp[-1].list; + (yyval.alias) = makeNode(Alias); + (yyval.alias)->aliasname = (yyvsp[(2) - (5)].str); + (yyval.alias)->colnames = (yyvsp[(4) - (5)].list); } break; case 913: #line 5760 "gram.y" { - yyval.alias = makeNode(Alias); - yyval.alias->aliasname = yyvsp[0].str; + (yyval.alias) = makeNode(Alias); + (yyval.alias)->aliasname = (yyvsp[(2) - (2)].str); } break; case 914: #line 5765 "gram.y" { - yyval.alias = makeNode(Alias); - yyval.alias->aliasname = yyvsp[-3].str; - yyval.alias->colnames = yyvsp[-1].list; + (yyval.alias) = makeNode(Alias); + (yyval.alias)->aliasname = (yyvsp[(1) - (4)].str); + (yyval.alias)->colnames = (yyvsp[(3) - (4)].list); } break; case 915: #line 5771 "gram.y" { - yyval.alias = makeNode(Alias); - yyval.alias->aliasname = yyvsp[0].str; + (yyval.alias) = makeNode(Alias); + (yyval.alias)->aliasname = (yyvsp[(1) - (1)].str); } break; case 916: #line 5777 "gram.y" - { yyval.jtype = JOIN_FULL; } + { (yyval.jtype) = JOIN_FULL; } break; case 917: #line 5778 "gram.y" - { yyval.jtype = JOIN_LEFT; } + { (yyval.jtype) = JOIN_LEFT; } break; case 918: #line 5779 "gram.y" - { yyval.jtype = JOIN_RIGHT; } + { (yyval.jtype) = JOIN_RIGHT; } break; case 919: #line 5780 "gram.y" - { yyval.jtype = JOIN_INNER; } + { (yyval.jtype) = JOIN_INNER; } break; case 920: #line 5784 "gram.y" - { yyval.node = NULL; } + { (yyval.node) = NULL; } break; case 921: #line 5785 "gram.y" - { yyval.node = NULL; } + { (yyval.node) = NULL; } break; case 922: #line 5797 "gram.y" - { yyval.node = (Node *) yyvsp[-1].list; } + { (yyval.node) = (Node *) (yyvsp[(3) - (4)].list); } break; case 923: #line 5798 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(2) - (2)].node); } break; case 924: #line 5804 "gram.y" { /* default inheritance */ - yyval.range = yyvsp[0].range; - yyval.range->inhOpt = INH_DEFAULT; - yyval.range->alias = NULL; + (yyval.range) = (yyvsp[(1) - (1)].range); + (yyval.range)->inhOpt = INH_DEFAULT; + (yyval.range)->alias = NULL; } break; @@ -17439,9 +17779,9 @@ yyreduce: #line 5811 "gram.y" { /* inheritance query */ - yyval.range = yyvsp[-1].range; - yyval.range->inhOpt = INH_YES; - yyval.range->alias = NULL; + (yyval.range) = (yyvsp[(1) - (2)].range); + (yyval.range)->inhOpt = INH_YES; + (yyval.range)->alias = NULL; } break; @@ -17449,9 +17789,9 @@ yyreduce: #line 5818 "gram.y" { /* no inheritance */ - yyval.range = yyvsp[0].range; - yyval.range->inhOpt = INH_NO; - yyval.range->alias = NULL; + (yyval.range) = (yyvsp[(2) - (2)].range); + (yyval.range)->inhOpt = INH_NO; + (yyval.range)->alias = NULL; } break; @@ -17459,38 +17799,38 @@ yyreduce: #line 5825 "gram.y" { /* no inheritance, SQL99-style syntax */ - yyval.range = yyvsp[-1].range; - yyval.range->inhOpt = INH_NO; - yyval.range->alias = NULL; + (yyval.range) = (yyvsp[(3) - (4)].range); + (yyval.range)->inhOpt = INH_NO; + (yyval.range)->alias = NULL; } break; case 928: #line 5834 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 929: #line 5839 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(2) - (2)].node); } break; case 930: #line 5840 "gram.y" - { yyval.node = NULL; } + { (yyval.node) = NULL; } break; case 931: #line 5846 "gram.y" { - yyval.list = list_make1(yyvsp[0].node); + (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); } break; case 932: #line 5850 "gram.y" { - yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); + (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; @@ -17498,28 +17838,28 @@ yyreduce: #line 5856 "gram.y" { ColumnDef *n = makeNode(ColumnDef); - n->colname = yyvsp[-1].str; - n->typename = yyvsp[0].typnam; + n->colname = (yyvsp[(1) - (2)].str); + n->typename = (yyvsp[(2) - (2)].typnam); n->constraints = NIL; n->is_local = true; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; case 934: #line 5877 "gram.y" { - yyval.typnam = yyvsp[-1].typnam; - yyval.typnam->arrayBounds = yyvsp[0].list; + (yyval.typnam) = (yyvsp[(1) - (2)].typnam); + (yyval.typnam)->arrayBounds = (yyvsp[(2) - (2)].list); } break; case 935: #line 5882 "gram.y" { - yyval.typnam = yyvsp[-1].typnam; - yyval.typnam->arrayBounds = yyvsp[0].list; - yyval.typnam->setof = TRUE; + (yyval.typnam) = (yyvsp[(2) - (3)].typnam); + (yyval.typnam)->arrayBounds = (yyvsp[(3) - (3)].list); + (yyval.typnam)->setof = TRUE; } break; @@ -17527,8 +17867,8 @@ yyreduce: #line 5888 "gram.y" { /* SQL99's redundant syntax */ - yyval.typnam = yyvsp[-4].typnam; - yyval.typnam->arrayBounds = list_make1(makeInteger(yyvsp[-1].ival)); + (yyval.typnam) = (yyvsp[(1) - (5)].typnam); + (yyval.typnam)->arrayBounds = list_make1(makeInteger((yyvsp[(4) - (5)].ival))); } break; @@ -17536,214 +17876,214 @@ yyreduce: #line 5894 "gram.y" { /* SQL99's redundant syntax */ - yyval.typnam = yyvsp[-4].typnam; - yyval.typnam->arrayBounds = list_make1(makeInteger(yyvsp[-1].ival)); - yyval.typnam->setof = TRUE; + (yyval.typnam) = (yyvsp[(2) - (6)].typnam); + (yyval.typnam)->arrayBounds = list_make1(makeInteger((yyvsp[(5) - (6)].ival))); + (yyval.typnam)->setof = TRUE; } break; case 938: #line 5904 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, makeInteger(-1)); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), makeInteger(-1)); } break; case 939: #line 5906 "gram.y" - { yyval.list = lappend(yyvsp[-3].list, makeInteger(yyvsp[-1].ival)); } + { (yyval.list) = lappend((yyvsp[(1) - (4)].list), makeInteger((yyvsp[(3) - (4)].ival))); } break; case 940: #line 5908 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 941: #line 5920 "gram.y" - { yyval.typnam = yyvsp[0].typnam; } + { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); } break; case 942: #line 5921 "gram.y" - { yyval.typnam = yyvsp[0].typnam; } + { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); } break; case 943: #line 5922 "gram.y" - { yyval.typnam = yyvsp[0].typnam; } + { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); } break; case 944: #line 5923 "gram.y" - { yyval.typnam = yyvsp[0].typnam; } + { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); } break; case 945: #line 5924 "gram.y" - { yyval.typnam = yyvsp[0].typnam; } + { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); } break; case 946: #line 5926 "gram.y" { - yyval.typnam = yyvsp[-1].typnam; - if (yyvsp[0].ival != INTERVAL_FULL_RANGE) - yyval.typnam->typmod = INTERVAL_TYPMOD(INTERVAL_FULL_PRECISION, yyvsp[0].ival); + (yyval.typnam) = (yyvsp[(1) - (2)].typnam); + if ((yyvsp[(2) - (2)].ival) != INTERVAL_FULL_RANGE) + (yyval.typnam)->typmod = INTERVAL_TYPMOD(INTERVAL_FULL_PRECISION, (yyvsp[(2) - (2)].ival)); } break; case 947: #line 5932 "gram.y" { - yyval.typnam = yyvsp[-4].typnam; - if (yyvsp[-2].ival < 0) + (yyval.typnam) = (yyvsp[(1) - (5)].typnam); + if ((yyvsp[(3) - (5)].ival) < 0) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("INTERVAL(%d) precision must not be negative", - yyvsp[-2].ival))); - if (yyvsp[-2].ival > MAX_INTERVAL_PRECISION) + (yyvsp[(3) - (5)].ival)))); + if ((yyvsp[(3) - (5)].ival) > MAX_INTERVAL_PRECISION) { ereport(WARNING, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("INTERVAL(%d) precision reduced to maximum allowed, %d", - yyvsp[-2].ival, MAX_INTERVAL_PRECISION))); - yyvsp[-2].ival = MAX_INTERVAL_PRECISION; + (yyvsp[(3) - (5)].ival), MAX_INTERVAL_PRECISION))); + (yyvsp[(3) - (5)].ival) = MAX_INTERVAL_PRECISION; } - yyval.typnam->typmod = INTERVAL_TYPMOD(yyvsp[-2].ival, yyvsp[0].ival); + (yyval.typnam)->typmod = INTERVAL_TYPMOD((yyvsp[(3) - (5)].ival), (yyvsp[(5) - (5)].ival)); } break; case 948: #line 5950 "gram.y" { - yyval.typnam = makeNode(TypeName); - yyval.typnam->names = lcons(makeString(yyvsp[-1].str), yyvsp[0].list); - yyval.typnam->typmod = -1; + (yyval.typnam) = makeNode(TypeName); + (yyval.typnam)->names = lcons(makeString((yyvsp[(1) - (2)].str)), (yyvsp[(2) - (2)].list)); + (yyval.typnam)->typmod = -1; } break; case 949: #line 5967 "gram.y" - { yyval.typnam = yyvsp[0].typnam; } + { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); } break; case 950: #line 5968 "gram.y" - { yyval.typnam = yyvsp[0].typnam; } + { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); } break; case 951: #line 5969 "gram.y" - { yyval.typnam = yyvsp[0].typnam; } + { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); } break; case 952: #line 5970 "gram.y" - { yyval.typnam = yyvsp[0].typnam; } + { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); } break; case 953: #line 5971 "gram.y" - { yyval.typnam = yyvsp[0].typnam; } + { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); } break; case 954: #line 5976 "gram.y" { - yyval.typnam = makeTypeName(yyvsp[0].str); + (yyval.typnam) = makeTypeName((yyvsp[(1) - (1)].str)); } break; case 955: #line 5987 "gram.y" { - yyval.typnam = SystemTypeName("int4"); + (yyval.typnam) = SystemTypeName("int4"); } break; case 956: #line 5991 "gram.y" { - yyval.typnam = SystemTypeName("int4"); + (yyval.typnam) = SystemTypeName("int4"); } break; case 957: #line 5995 "gram.y" { - yyval.typnam = SystemTypeName("int2"); + (yyval.typnam) = SystemTypeName("int2"); } break; case 958: #line 5999 "gram.y" { - yyval.typnam = SystemTypeName("int8"); + (yyval.typnam) = SystemTypeName("int8"); } break; case 959: #line 6003 "gram.y" { - yyval.typnam = SystemTypeName("float4"); + (yyval.typnam) = SystemTypeName("float4"); } break; case 960: #line 6007 "gram.y" { - yyval.typnam = yyvsp[0].typnam; + (yyval.typnam) = (yyvsp[(2) - (2)].typnam); } break; case 961: #line 6011 "gram.y" { - yyval.typnam = SystemTypeName("float8"); + (yyval.typnam) = SystemTypeName("float8"); } break; case 962: #line 6015 "gram.y" { - yyval.typnam = SystemTypeName("numeric"); - yyval.typnam->typmod = yyvsp[0].ival; + (yyval.typnam) = SystemTypeName("numeric"); + (yyval.typnam)->typmod = (yyvsp[(2) - (2)].ival); } break; case 963: #line 6020 "gram.y" { - yyval.typnam = SystemTypeName("numeric"); - yyval.typnam->typmod = yyvsp[0].ival; + (yyval.typnam) = SystemTypeName("numeric"); + (yyval.typnam)->typmod = (yyvsp[(2) - (2)].ival); } break; case 964: #line 6025 "gram.y" { - yyval.typnam = SystemTypeName("numeric"); - yyval.typnam->typmod = yyvsp[0].ival; + (yyval.typnam) = SystemTypeName("numeric"); + (yyval.typnam)->typmod = (yyvsp[(2) - (2)].ival); } break; case 965: #line 6030 "gram.y" { - yyval.typnam = SystemTypeName("bool"); + (yyval.typnam) = SystemTypeName("bool"); } break; case 966: #line 6036 "gram.y" { - if (yyvsp[-1].ival < 1) + if ((yyvsp[(2) - (3)].ival) < 1) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("precision for type float must be at least 1 bit"))); - else if (yyvsp[-1].ival <= 24) - yyval.typnam = SystemTypeName("float4"); - else if (yyvsp[-1].ival <= 53) - yyval.typnam = SystemTypeName("float8"); + else if ((yyvsp[(2) - (3)].ival) <= 24) + (yyval.typnam) = SystemTypeName("float4"); + else if ((yyvsp[(2) - (3)].ival) <= 53) + (yyval.typnam) = SystemTypeName("float8"); else ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), @@ -17754,38 +18094,38 @@ yyreduce: case 967: #line 6051 "gram.y" { - yyval.typnam = SystemTypeName("float8"); + (yyval.typnam) = SystemTypeName("float8"); } break; case 968: #line 6058 "gram.y" { - if (yyvsp[-3].ival < 1 || yyvsp[-3].ival > NUMERIC_MAX_PRECISION) + if ((yyvsp[(2) - (5)].ival) < 1 || (yyvsp[(2) - (5)].ival) > NUMERIC_MAX_PRECISION) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("NUMERIC precision %d must be between 1 and %d", - yyvsp[-3].ival, NUMERIC_MAX_PRECISION))); - if (yyvsp[-1].ival < 0 || yyvsp[-1].ival > yyvsp[-3].ival) + (yyvsp[(2) - (5)].ival), NUMERIC_MAX_PRECISION))); + if ((yyvsp[(4) - (5)].ival) < 0 || (yyvsp[(4) - (5)].ival) > (yyvsp[(2) - (5)].ival)) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("NUMERIC scale %d must be between 0 and precision %d", - yyvsp[-1].ival, yyvsp[-3].ival))); + (yyvsp[(4) - (5)].ival), (yyvsp[(2) - (5)].ival)))); - yyval.ival = ((yyvsp[-3].ival << 16) | yyvsp[-1].ival) + VARHDRSZ; + (yyval.ival) = (((yyvsp[(2) - (5)].ival) << 16) | (yyvsp[(4) - (5)].ival)) + VARHDRSZ; } break; case 969: #line 6073 "gram.y" { - if (yyvsp[-1].ival < 1 || yyvsp[-1].ival > NUMERIC_MAX_PRECISION) + if ((yyvsp[(2) - (3)].ival) < 1 || (yyvsp[(2) - (3)].ival) > NUMERIC_MAX_PRECISION) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("NUMERIC precision %d must be between 1 and %d", - yyvsp[-1].ival, NUMERIC_MAX_PRECISION))); + (yyvsp[(2) - (3)].ival), NUMERIC_MAX_PRECISION))); - yyval.ival = (yyvsp[-1].ival << 16) + VARHDRSZ; + (yyval.ival) = ((yyvsp[(2) - (3)].ival) << 16) + VARHDRSZ; } break; @@ -17793,38 +18133,38 @@ yyreduce: #line 6083 "gram.y" { /* Insert "-1" meaning "no limit" */ - yyval.ival = -1; + (yyval.ival) = -1; } break; case 971: #line 6091 "gram.y" { - if (yyvsp[-3].ival < 1 || yyvsp[-3].ival > NUMERIC_MAX_PRECISION) + if ((yyvsp[(2) - (5)].ival) < 1 || (yyvsp[(2) - (5)].ival) > NUMERIC_MAX_PRECISION) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("DECIMAL precision %d must be between 1 and %d", - yyvsp[-3].ival, NUMERIC_MAX_PRECISION))); - if (yyvsp[-1].ival < 0 || yyvsp[-1].ival > yyvsp[-3].ival) + (yyvsp[(2) - (5)].ival), NUMERIC_MAX_PRECISION))); + if ((yyvsp[(4) - (5)].ival) < 0 || (yyvsp[(4) - (5)].ival) > (yyvsp[(2) - (5)].ival)) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("DECIMAL scale %d must be between 0 and precision %d", - yyvsp[-1].ival, yyvsp[-3].ival))); + (yyvsp[(4) - (5)].ival), (yyvsp[(2) - (5)].ival)))); - yyval.ival = ((yyvsp[-3].ival << 16) | yyvsp[-1].ival) + VARHDRSZ; + (yyval.ival) = (((yyvsp[(2) - (5)].ival) << 16) | (yyvsp[(4) - (5)].ival)) + VARHDRSZ; } break; case 972: #line 6106 "gram.y" { - if (yyvsp[-1].ival < 1 || yyvsp[-1].ival > NUMERIC_MAX_PRECISION) + if ((yyvsp[(2) - (3)].ival) < 1 || (yyvsp[(2) - (3)].ival) > NUMERIC_MAX_PRECISION) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("DECIMAL precision %d must be between 1 and %d", - yyvsp[-1].ival, NUMERIC_MAX_PRECISION))); + (yyvsp[(2) - (3)].ival), NUMERIC_MAX_PRECISION))); - yyval.ival = (yyvsp[-1].ival << 16) + VARHDRSZ; + (yyval.ival) = ((yyvsp[(2) - (3)].ival) << 16) + VARHDRSZ; } break; @@ -17832,36 +18172,36 @@ yyreduce: #line 6116 "gram.y" { /* Insert "-1" meaning "no limit" */ - yyval.ival = -1; + (yyval.ival) = -1; } break; case 974: #line 6128 "gram.y" { - yyval.typnam = yyvsp[0].typnam; + (yyval.typnam) = (yyvsp[(1) - (1)].typnam); } break; case 975: #line 6132 "gram.y" { - yyval.typnam = yyvsp[0].typnam; + (yyval.typnam) = (yyvsp[(1) - (1)].typnam); } break; case 976: #line 6140 "gram.y" { - yyval.typnam = yyvsp[0].typnam; + (yyval.typnam) = (yyvsp[(1) - (1)].typnam); } break; case 977: #line 6144 "gram.y" { - yyval.typnam = yyvsp[0].typnam; - yyval.typnam->typmod = -1; + (yyval.typnam) = (yyvsp[(1) - (1)].typnam); + (yyval.typnam)->typmod = -1; } break; @@ -17870,19 +18210,19 @@ yyreduce: { char *typname; - typname = yyvsp[-3].boolean ? "varbit" : "bit"; - yyval.typnam = SystemTypeName(typname); - if (yyvsp[-1].ival < 1) + typname = (yyvsp[(2) - (5)].boolean) ? "varbit" : "bit"; + (yyval.typnam) = SystemTypeName(typname); + if ((yyvsp[(4) - (5)].ival) < 1) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("length for type %s must be at least 1", typname))); - else if (yyvsp[-1].ival > (MaxAttrSize * BITS_PER_BYTE)) + else if ((yyvsp[(4) - (5)].ival) > (MaxAttrSize * BITS_PER_BYTE)) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("length for type %s cannot exceed %d", typname, MaxAttrSize * BITS_PER_BYTE))); - yyval.typnam->typmod = yyvsp[-1].ival; + (yyval.typnam)->typmod = (yyvsp[(4) - (5)].ival); } break; @@ -17890,15 +18230,15 @@ yyreduce: #line 6173 "gram.y" { /* bit defaults to bit(1), varbit to no limit */ - if (yyvsp[0].boolean) + if ((yyvsp[(2) - (2)].boolean)) { - yyval.typnam = SystemTypeName("varbit"); - yyval.typnam->typmod = -1; + (yyval.typnam) = SystemTypeName("varbit"); + (yyval.typnam)->typmod = -1; } else { - yyval.typnam = SystemTypeName("bit"); - yyval.typnam->typmod = 1; + (yyval.typnam) = SystemTypeName("bit"); + (yyval.typnam)->typmod = 1; } } break; @@ -17906,21 +18246,21 @@ yyreduce: case 980: #line 6194 "gram.y" { - yyval.typnam = yyvsp[0].typnam; + (yyval.typnam) = (yyvsp[(1) - (1)].typnam); } break; case 981: #line 6198 "gram.y" { - yyval.typnam = yyvsp[0].typnam; + (yyval.typnam) = (yyvsp[(1) - (1)].typnam); } break; case 982: #line 6204 "gram.y" { - yyval.typnam = yyvsp[0].typnam; + (yyval.typnam) = (yyvsp[(1) - (1)].typnam); } break; @@ -17933,300 +18273,300 @@ yyreduce: * of one, but should not be constrained if the length * was not specified. */ - yyval.typnam = yyvsp[0].typnam; - yyval.typnam->typmod = -1; + (yyval.typnam) = (yyvsp[(1) - (1)].typnam); + (yyval.typnam)->typmod = -1; } break; case 984: #line 6221 "gram.y" { - if ((yyvsp[0].str != NULL) && (strcmp(yyvsp[0].str, "sql_text") != 0)) + if (((yyvsp[(5) - (5)].str) != NULL) && (strcmp((yyvsp[(5) - (5)].str), "sql_text") != 0)) { char *type; - type = palloc(strlen(yyvsp[-4].str) + 1 + strlen(yyvsp[0].str) + 1); - strcpy(type, yyvsp[-4].str); + type = palloc(strlen((yyvsp[(1) - (5)].str)) + 1 + strlen((yyvsp[(5) - (5)].str)) + 1); + strcpy(type, (yyvsp[(1) - (5)].str)); strcat(type, "_"); - strcat(type, yyvsp[0].str); - yyvsp[-4].str = type; + strcat(type, (yyvsp[(5) - (5)].str)); + (yyvsp[(1) - (5)].str) = type; } - yyval.typnam = SystemTypeName(yyvsp[-4].str); + (yyval.typnam) = SystemTypeName((yyvsp[(1) - (5)].str)); - if (yyvsp[-2].ival < 1) + if ((yyvsp[(3) - (5)].ival) < 1) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("length for type %s must be at least 1", - yyvsp[-4].str))); - else if (yyvsp[-2].ival > MaxAttrSize) + (yyvsp[(1) - (5)].str)))); + else if ((yyvsp[(3) - (5)].ival) > MaxAttrSize) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("length for type %s cannot exceed %d", - yyvsp[-4].str, MaxAttrSize))); + (yyvsp[(1) - (5)].str), MaxAttrSize))); /* we actually implement these like a varlen, so * the first 4 bytes is the length. (the difference * between these and "text" is that we blank-pad and * truncate where necessary) */ - yyval.typnam->typmod = VARHDRSZ + yyvsp[-2].ival; + (yyval.typnam)->typmod = VARHDRSZ + (yyvsp[(3) - (5)].ival); } break; case 985: #line 6256 "gram.y" { - if ((yyvsp[0].str != NULL) && (strcmp(yyvsp[0].str, "sql_text") != 0)) + if (((yyvsp[(2) - (2)].str) != NULL) && (strcmp((yyvsp[(2) - (2)].str), "sql_text") != 0)) { char *type; - type = palloc(strlen(yyvsp[-1].str) + 1 + strlen(yyvsp[0].str) + 1); - strcpy(type, yyvsp[-1].str); + type = palloc(strlen((yyvsp[(1) - (2)].str)) + 1 + strlen((yyvsp[(2) - (2)].str)) + 1); + strcpy(type, (yyvsp[(1) - (2)].str)); strcat(type, "_"); - strcat(type, yyvsp[0].str); - yyvsp[-1].str = type; + strcat(type, (yyvsp[(2) - (2)].str)); + (yyvsp[(1) - (2)].str) = type; } - yyval.typnam = SystemTypeName(yyvsp[-1].str); + (yyval.typnam) = SystemTypeName((yyvsp[(1) - (2)].str)); /* char defaults to char(1), varchar to no limit */ - if (strcmp(yyvsp[-1].str, "char") == 0) - yyval.typnam->typmod = VARHDRSZ + 1; + if (strcmp((yyvsp[(1) - (2)].str), "char") == 0) + (yyval.typnam)->typmod = VARHDRSZ + 1; else - yyval.typnam->typmod = -1; + (yyval.typnam)->typmod = -1; } break; case 986: #line 6279 "gram.y" - { yyval.str = yyvsp[0].boolean ? "varchar": "char"; } + { (yyval.str) = (yyvsp[(2) - (2)].boolean) ? "varchar": "char"; } break; case 987: #line 6281 "gram.y" - { yyval.str = yyvsp[0].boolean ? "varchar": "char"; } + { (yyval.str) = (yyvsp[(2) - (2)].boolean) ? "varchar": "char"; } break; case 988: #line 6283 "gram.y" - { yyval.str = "varchar"; } + { (yyval.str) = "varchar"; } break; case 989: #line 6285 "gram.y" - { yyval.str = yyvsp[0].boolean ? "varchar": "char"; } + { (yyval.str) = (yyvsp[(3) - (3)].boolean) ? "varchar": "char"; } break; case 990: #line 6287 "gram.y" - { yyval.str = yyvsp[0].boolean ? "varchar": "char"; } + { (yyval.str) = (yyvsp[(3) - (3)].boolean) ? "varchar": "char"; } break; case 991: #line 6289 "gram.y" - { yyval.str = yyvsp[0].boolean ? "varchar": "char"; } + { (yyval.str) = (yyvsp[(2) - (2)].boolean) ? "varchar": "char"; } break; case 992: #line 6293 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 993: #line 6294 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 994: #line 6298 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(3) - (3)].str); } break; case 995: #line 6299 "gram.y" - { yyval.str = NULL; } + { (yyval.str) = NULL; } break; case 996: #line 6304 "gram.y" { - if (yyvsp[0].boolean) - yyval.typnam = SystemTypeName("timestamptz"); + if ((yyvsp[(5) - (5)].boolean)) + (yyval.typnam) = SystemTypeName("timestamptz"); else - yyval.typnam = SystemTypeName("timestamp"); + (yyval.typnam) = SystemTypeName("timestamp"); /* XXX the timezone field seems to be unused * - thomas 2001-09-06 */ - yyval.typnam->timezone = yyvsp[0].boolean; - if (yyvsp[-2].ival < 0) + (yyval.typnam)->timezone = (yyvsp[(5) - (5)].boolean); + if ((yyvsp[(3) - (5)].ival) < 0) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("TIMESTAMP(%d)%s precision must not be negative", - yyvsp[-2].ival, (yyvsp[0].boolean ? " WITH TIME ZONE": "")))); - if (yyvsp[-2].ival > MAX_TIMESTAMP_PRECISION) + (yyvsp[(3) - (5)].ival), ((yyvsp[(5) - (5)].boolean) ? " WITH TIME ZONE": "")))); + if ((yyvsp[(3) - (5)].ival) > MAX_TIMESTAMP_PRECISION) { ereport(WARNING, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("TIMESTAMP(%d)%s precision reduced to maximum allowed, %d", - yyvsp[-2].ival, (yyvsp[0].boolean ? " WITH TIME ZONE": ""), + (yyvsp[(3) - (5)].ival), ((yyvsp[(5) - (5)].boolean) ? " WITH TIME ZONE": ""), MAX_TIMESTAMP_PRECISION))); - yyvsp[-2].ival = MAX_TIMESTAMP_PRECISION; + (yyvsp[(3) - (5)].ival) = MAX_TIMESTAMP_PRECISION; } - yyval.typnam->typmod = yyvsp[-2].ival; + (yyval.typnam)->typmod = (yyvsp[(3) - (5)].ival); } break; case 997: #line 6330 "gram.y" { - if (yyvsp[0].boolean) - yyval.typnam = SystemTypeName("timestamptz"); + if ((yyvsp[(2) - (2)].boolean)) + (yyval.typnam) = SystemTypeName("timestamptz"); else - yyval.typnam = SystemTypeName("timestamp"); + (yyval.typnam) = SystemTypeName("timestamp"); /* XXX the timezone field seems to be unused * - thomas 2001-09-06 */ - yyval.typnam->timezone = yyvsp[0].boolean; + (yyval.typnam)->timezone = (yyvsp[(2) - (2)].boolean); } break; case 998: #line 6341 "gram.y" { - if (yyvsp[0].boolean) - yyval.typnam = SystemTypeName("timetz"); + if ((yyvsp[(5) - (5)].boolean)) + (yyval.typnam) = SystemTypeName("timetz"); else - yyval.typnam = SystemTypeName("time"); - if (yyvsp[-2].ival < 0) + (yyval.typnam) = SystemTypeName("time"); + if ((yyvsp[(3) - (5)].ival) < 0) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("TIME(%d)%s precision must not be negative", - yyvsp[-2].ival, (yyvsp[0].boolean ? " WITH TIME ZONE": "")))); - if (yyvsp[-2].ival > MAX_TIME_PRECISION) + (yyvsp[(3) - (5)].ival), ((yyvsp[(5) - (5)].boolean) ? " WITH TIME ZONE": "")))); + if ((yyvsp[(3) - (5)].ival) > MAX_TIME_PRECISION) { ereport(WARNING, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("TIME(%d)%s precision reduced to maximum allowed, %d", - yyvsp[-2].ival, (yyvsp[0].boolean ? " WITH TIME ZONE": ""), + (yyvsp[(3) - (5)].ival), ((yyvsp[(5) - (5)].boolean) ? " WITH TIME ZONE": ""), MAX_TIME_PRECISION))); - yyvsp[-2].ival = MAX_TIME_PRECISION; + (yyvsp[(3) - (5)].ival) = MAX_TIME_PRECISION; } - yyval.typnam->typmod = yyvsp[-2].ival; + (yyval.typnam)->typmod = (yyvsp[(3) - (5)].ival); } break; case 999: #line 6363 "gram.y" { - if (yyvsp[0].boolean) - yyval.typnam = SystemTypeName("timetz"); + if ((yyvsp[(2) - (2)].boolean)) + (yyval.typnam) = SystemTypeName("timetz"); else - yyval.typnam = SystemTypeName("time"); + (yyval.typnam) = SystemTypeName("time"); } break; case 1000: #line 6372 "gram.y" - { yyval.typnam = SystemTypeName("interval"); } + { (yyval.typnam) = SystemTypeName("interval"); } break; case 1001: #line 6376 "gram.y" - { yyval.boolean = TRUE; } + { (yyval.boolean) = TRUE; } break; case 1002: #line 6377 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 1003: #line 6378 "gram.y" - { yyval.boolean = FALSE; } + { (yyval.boolean) = FALSE; } break; case 1004: #line 6382 "gram.y" - { yyval.ival = INTERVAL_MASK(YEAR); } + { (yyval.ival) = INTERVAL_MASK(YEAR); } break; case 1005: #line 6383 "gram.y" - { yyval.ival = INTERVAL_MASK(MONTH); } + { (yyval.ival) = INTERVAL_MASK(MONTH); } break; case 1006: #line 6384 "gram.y" - { yyval.ival = INTERVAL_MASK(DAY); } + { (yyval.ival) = INTERVAL_MASK(DAY); } break; case 1007: #line 6385 "gram.y" - { yyval.ival = INTERVAL_MASK(HOUR); } + { (yyval.ival) = INTERVAL_MASK(HOUR); } break; case 1008: #line 6386 "gram.y" - { yyval.ival = INTERVAL_MASK(MINUTE); } + { (yyval.ival) = INTERVAL_MASK(MINUTE); } break; case 1009: #line 6387 "gram.y" - { yyval.ival = INTERVAL_MASK(SECOND); } + { (yyval.ival) = INTERVAL_MASK(SECOND); } break; case 1010: #line 6389 "gram.y" - { yyval.ival = INTERVAL_MASK(YEAR) | INTERVAL_MASK(MONTH); } + { (yyval.ival) = INTERVAL_MASK(YEAR) | INTERVAL_MASK(MONTH); } break; case 1011: #line 6391 "gram.y" - { yyval.ival = INTERVAL_MASK(DAY) | INTERVAL_MASK(HOUR); } + { (yyval.ival) = INTERVAL_MASK(DAY) | INTERVAL_MASK(HOUR); } break; case 1012: #line 6393 "gram.y" - { yyval.ival = INTERVAL_MASK(DAY) | INTERVAL_MASK(HOUR) + { (yyval.ival) = INTERVAL_MASK(DAY) | INTERVAL_MASK(HOUR) | INTERVAL_MASK(MINUTE); } break; case 1013: #line 6396 "gram.y" - { yyval.ival = INTERVAL_MASK(DAY) | INTERVAL_MASK(HOUR) + { (yyval.ival) = INTERVAL_MASK(DAY) | INTERVAL_MASK(HOUR) | INTERVAL_MASK(MINUTE) | INTERVAL_MASK(SECOND); } break; case 1014: #line 6399 "gram.y" - { yyval.ival = INTERVAL_MASK(HOUR) | INTERVAL_MASK(MINUTE); } + { (yyval.ival) = INTERVAL_MASK(HOUR) | INTERVAL_MASK(MINUTE); } break; case 1015: #line 6401 "gram.y" - { yyval.ival = INTERVAL_MASK(HOUR) | INTERVAL_MASK(MINUTE) + { (yyval.ival) = INTERVAL_MASK(HOUR) | INTERVAL_MASK(MINUTE) | INTERVAL_MASK(SECOND); } break; case 1016: #line 6404 "gram.y" - { yyval.ival = INTERVAL_MASK(MINUTE) | INTERVAL_MASK(SECOND); } + { (yyval.ival) = INTERVAL_MASK(MINUTE) | INTERVAL_MASK(SECOND); } break; case 1017: #line 6405 "gram.y" - { yyval.ival = INTERVAL_FULL_RANGE; } + { (yyval.ival) = INTERVAL_FULL_RANGE; } break; case 1018: #line 6431 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 1019: #line 6433 "gram.y" - { yyval.node = makeTypeCast(yyvsp[-2].node, yyvsp[0].typnam); } + { (yyval.node) = makeTypeCast((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].typnam)); } break; case 1020: @@ -18234,101 +18574,101 @@ yyreduce: { FuncCall *n = makeNode(FuncCall); n->funcname = SystemFuncName("timezone"); - n->args = list_make2(yyvsp[0].node, yyvsp[-4].node); + n->args = list_make2((yyvsp[(5) - (5)].node), (yyvsp[(1) - (5)].node)); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *) n; + (yyval.node) = (Node *) n; } break; case 1021: #line 6453 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", NULL, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", NULL, (yyvsp[(2) - (2)].node)); } break; case 1022: #line 6455 "gram.y" - { yyval.node = doNegate(yyvsp[0].node); } + { (yyval.node) = doNegate((yyvsp[(2) - (2)].node)); } break; case 1023: #line 6457 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1024: #line 6459 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "-", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "-", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1025: #line 6461 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "*", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "*", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1026: #line 6463 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "/", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "/", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1027: #line 6465 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "%", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "%", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1028: #line 6467 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "^", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "^", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1029: #line 6469 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "<", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1030: #line 6471 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, ">", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, ">", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1031: #line 6473 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "=", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "=", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1032: #line 6476 "gram.y" - { yyval.node = (Node *) makeA_Expr(AEXPR_OP, yyvsp[-1].list, yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[(2) - (3)].list), (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1033: #line 6478 "gram.y" - { yyval.node = (Node *) makeA_Expr(AEXPR_OP, yyvsp[-1].list, NULL, yyvsp[0].node); } + { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[(1) - (2)].list), NULL, (yyvsp[(2) - (2)].node)); } break; case 1034: #line 6480 "gram.y" - { yyval.node = (Node *) makeA_Expr(AEXPR_OP, yyvsp[0].list, yyvsp[-1].node, NULL); } + { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[(2) - (2)].list), (yyvsp[(1) - (2)].node), NULL); } break; case 1035: #line 6483 "gram.y" - { yyval.node = (Node *) makeA_Expr(AEXPR_AND, NIL, yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeA_Expr(AEXPR_AND, NIL, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1036: #line 6485 "gram.y" - { yyval.node = (Node *) makeA_Expr(AEXPR_OR, NIL, yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeA_Expr(AEXPR_OR, NIL, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1037: #line 6487 "gram.y" - { yyval.node = (Node *) makeA_Expr(AEXPR_NOT, NIL, NULL, yyvsp[0].node); } + { (yyval.node) = (Node *) makeA_Expr(AEXPR_NOT, NIL, NULL, (yyvsp[(2) - (2)].node)); } break; case 1038: #line 6490 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "~~", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "~~", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1039: @@ -18336,16 +18676,16 @@ yyreduce: { FuncCall *n = makeNode(FuncCall); n->funcname = SystemFuncName("like_escape"); - n->args = list_make2(yyvsp[-2].node, yyvsp[0].node); + n->args = list_make2((yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node)); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "~~", yyvsp[-4].node, (Node *) n); + (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "~~", (yyvsp[(1) - (5)].node), (Node *) n); } break; case 1040: #line 6501 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "!~~", yyvsp[-3].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "!~~", (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node)); } break; case 1041: @@ -18353,16 +18693,16 @@ yyreduce: { FuncCall *n = makeNode(FuncCall); n->funcname = SystemFuncName("like_escape"); - n->args = list_make2(yyvsp[-2].node, yyvsp[0].node); + n->args = list_make2((yyvsp[(4) - (6)].node), (yyvsp[(6) - (6)].node)); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "!~~", yyvsp[-5].node, (Node *) n); + (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "!~~", (yyvsp[(1) - (6)].node), (Node *) n); } break; case 1042: #line 6512 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "~~*", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "~~*", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1043: @@ -18370,16 +18710,16 @@ yyreduce: { FuncCall *n = makeNode(FuncCall); n->funcname = SystemFuncName("like_escape"); - n->args = list_make2(yyvsp[-2].node, yyvsp[0].node); + n->args = list_make2((yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node)); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "~~*", yyvsp[-4].node, (Node *) n); + (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "~~*", (yyvsp[(1) - (5)].node), (Node *) n); } break; case 1044: #line 6523 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "!~~*", yyvsp[-3].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "!~~*", (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node)); } break; case 1045: @@ -18387,10 +18727,10 @@ yyreduce: { FuncCall *n = makeNode(FuncCall); n->funcname = SystemFuncName("like_escape"); - n->args = list_make2(yyvsp[-2].node, yyvsp[0].node); + n->args = list_make2((yyvsp[(4) - (6)].node), (yyvsp[(6) - (6)].node)); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "!~~*", yyvsp[-5].node, (Node *) n); + (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "!~~*", (yyvsp[(1) - (6)].node), (Node *) n); } break; @@ -18401,10 +18741,10 @@ yyreduce: FuncCall *n = makeNode(FuncCall); c->val.type = T_Null; n->funcname = SystemFuncName("similar_escape"); - n->args = list_make2(yyvsp[0].node, (Node *) c); + n->args = list_make2((yyvsp[(4) - (4)].node), (Node *) c); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "~", yyvsp[-3].node, (Node *) n); + (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "~", (yyvsp[(1) - (4)].node), (Node *) n); } break; @@ -18413,10 +18753,10 @@ yyreduce: { FuncCall *n = makeNode(FuncCall); n->funcname = SystemFuncName("similar_escape"); - n->args = list_make2(yyvsp[-2].node, yyvsp[0].node); + n->args = list_make2((yyvsp[(4) - (6)].node), (yyvsp[(6) - (6)].node)); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "~", yyvsp[-5].node, (Node *) n); + (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "~", (yyvsp[(1) - (6)].node), (Node *) n); } break; @@ -18427,10 +18767,10 @@ yyreduce: FuncCall *n = makeNode(FuncCall); c->val.type = T_Null; n->funcname = SystemFuncName("similar_escape"); - n->args = list_make2(yyvsp[0].node, (Node *) c); + n->args = list_make2((yyvsp[(5) - (5)].node), (Node *) c); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "!~", yyvsp[-4].node, (Node *) n); + (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "!~", (yyvsp[(1) - (5)].node), (Node *) n); } break; @@ -18439,24 +18779,24 @@ yyreduce: { FuncCall *n = makeNode(FuncCall); n->funcname = SystemFuncName("similar_escape"); - n->args = list_make2(yyvsp[-2].node, yyvsp[0].node); + n->args = list_make2((yyvsp[(5) - (7)].node), (yyvsp[(7) - (7)].node)); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "!~", yyvsp[-6].node, (Node *) n); + (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "!~", (yyvsp[(1) - (7)].node), (Node *) n); } break; case 1050: #line 6585 "gram.y" { - if (IsA(yyvsp[-1].node, RowExpr)) - yyval.node = makeRowNullTest(IS_NULL, (RowExpr *) yyvsp[-1].node); + if (IsA((yyvsp[(1) - (2)].node), RowExpr)) + (yyval.node) = makeRowNullTest(IS_NULL, (RowExpr *) (yyvsp[(1) - (2)].node)); else { NullTest *n = makeNode(NullTest); - n->arg = (Expr *) yyvsp[-1].node; + n->arg = (Expr *) (yyvsp[(1) - (2)].node); n->nulltesttype = IS_NULL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } } break; @@ -18464,14 +18804,14 @@ yyreduce: case 1051: #line 6597 "gram.y" { - if (IsA(yyvsp[-2].node, RowExpr)) - yyval.node = makeRowNullTest(IS_NULL, (RowExpr *) yyvsp[-2].node); + if (IsA((yyvsp[(1) - (3)].node), RowExpr)) + (yyval.node) = makeRowNullTest(IS_NULL, (RowExpr *) (yyvsp[(1) - (3)].node)); else { NullTest *n = makeNode(NullTest); - n->arg = (Expr *) yyvsp[-2].node; + n->arg = (Expr *) (yyvsp[(1) - (3)].node); n->nulltesttype = IS_NULL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } } break; @@ -18479,14 +18819,14 @@ yyreduce: case 1052: #line 6609 "gram.y" { - if (IsA(yyvsp[-1].node, RowExpr)) - yyval.node = makeRowNullTest(IS_NOT_NULL, (RowExpr *) yyvsp[-1].node); + if (IsA((yyvsp[(1) - (2)].node), RowExpr)) + (yyval.node) = makeRowNullTest(IS_NOT_NULL, (RowExpr *) (yyvsp[(1) - (2)].node)); else { NullTest *n = makeNode(NullTest); - n->arg = (Expr *) yyvsp[-1].node; + n->arg = (Expr *) (yyvsp[(1) - (2)].node); n->nulltesttype = IS_NOT_NULL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } } break; @@ -18494,14 +18834,14 @@ yyreduce: case 1053: #line 6621 "gram.y" { - if (IsA(yyvsp[-3].node, RowExpr)) - yyval.node = makeRowNullTest(IS_NOT_NULL, (RowExpr *) yyvsp[-3].node); + if (IsA((yyvsp[(1) - (4)].node), RowExpr)) + (yyval.node) = makeRowNullTest(IS_NOT_NULL, (RowExpr *) (yyvsp[(1) - (4)].node)); else { NullTest *n = makeNode(NullTest); - n->arg = (Expr *) yyvsp[-3].node; + n->arg = (Expr *) (yyvsp[(1) - (4)].node); n->nulltesttype = IS_NOT_NULL; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } } break; @@ -18509,7 +18849,7 @@ yyreduce: case 1054: #line 6633 "gram.y" { - yyval.node = (Node *)makeOverlaps(yyvsp[-2].list, yyvsp[0].list); + (yyval.node) = (Node *)makeOverlaps((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list)); } break; @@ -18517,9 +18857,9 @@ yyreduce: #line 6637 "gram.y" { BooleanTest *b = makeNode(BooleanTest); - b->arg = (Expr *) yyvsp[-2].node; + b->arg = (Expr *) (yyvsp[(1) - (3)].node); b->booltesttype = IS_TRUE; - yyval.node = (Node *)b; + (yyval.node) = (Node *)b; } break; @@ -18527,9 +18867,9 @@ yyreduce: #line 6644 "gram.y" { BooleanTest *b = makeNode(BooleanTest); - b->arg = (Expr *) yyvsp[-3].node; + b->arg = (Expr *) (yyvsp[(1) - (4)].node); b->booltesttype = IS_NOT_TRUE; - yyval.node = (Node *)b; + (yyval.node) = (Node *)b; } break; @@ -18537,9 +18877,9 @@ yyreduce: #line 6651 "gram.y" { BooleanTest *b = makeNode(BooleanTest); - b->arg = (Expr *) yyvsp[-2].node; + b->arg = (Expr *) (yyvsp[(1) - (3)].node); b->booltesttype = IS_FALSE; - yyval.node = (Node *)b; + (yyval.node) = (Node *)b; } break; @@ -18547,9 +18887,9 @@ yyreduce: #line 6658 "gram.y" { BooleanTest *b = makeNode(BooleanTest); - b->arg = (Expr *) yyvsp[-3].node; + b->arg = (Expr *) (yyvsp[(1) - (4)].node); b->booltesttype = IS_NOT_FALSE; - yyval.node = (Node *)b; + (yyval.node) = (Node *)b; } break; @@ -18557,9 +18897,9 @@ yyreduce: #line 6665 "gram.y" { BooleanTest *b = makeNode(BooleanTest); - b->arg = (Expr *) yyvsp[-2].node; + b->arg = (Expr *) (yyvsp[(1) - (3)].node); b->booltesttype = IS_UNKNOWN; - yyval.node = (Node *)b; + (yyval.node) = (Node *)b; } break; @@ -18567,74 +18907,74 @@ yyreduce: #line 6672 "gram.y" { BooleanTest *b = makeNode(BooleanTest); - b->arg = (Expr *) yyvsp[-3].node; + b->arg = (Expr *) (yyvsp[(1) - (4)].node); b->booltesttype = IS_NOT_UNKNOWN; - yyval.node = (Node *)b; + (yyval.node) = (Node *)b; } break; case 1061: #line 6679 "gram.y" { - yyval.node = (Node *) makeSimpleA_Expr(AEXPR_DISTINCT, "=", yyvsp[-4].node, yyvsp[0].node); + (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_DISTINCT, "=", (yyvsp[(1) - (5)].node), (yyvsp[(5) - (5)].node)); } break; case 1062: #line 6683 "gram.y" { - yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OF, "=", yyvsp[-5].node, (Node *) yyvsp[-1].list); + (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OF, "=", (yyvsp[(1) - (6)].node), (Node *) (yyvsp[(5) - (6)].list)); } break; case 1063: #line 6687 "gram.y" { - yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OF, "!=", yyvsp[-6].node, (Node *) yyvsp[-1].list); + (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OF, "!=", (yyvsp[(1) - (7)].node), (Node *) (yyvsp[(6) - (7)].list)); } break; case 1064: #line 6691 "gram.y" { - yyval.node = (Node *) makeA_Expr(AEXPR_AND, NIL, - (Node *) makeSimpleA_Expr(AEXPR_OP, ">=", yyvsp[-5].node, yyvsp[-2].node), - (Node *) makeSimpleA_Expr(AEXPR_OP, "<=", yyvsp[-5].node, yyvsp[0].node)); + (yyval.node) = (Node *) makeA_Expr(AEXPR_AND, NIL, + (Node *) makeSimpleA_Expr(AEXPR_OP, ">=", (yyvsp[(1) - (6)].node), (yyvsp[(4) - (6)].node)), + (Node *) makeSimpleA_Expr(AEXPR_OP, "<=", (yyvsp[(1) - (6)].node), (yyvsp[(6) - (6)].node))); } break; case 1065: #line 6697 "gram.y" { - yyval.node = (Node *) makeA_Expr(AEXPR_OR, NIL, - (Node *) makeSimpleA_Expr(AEXPR_OP, "<", yyvsp[-6].node, yyvsp[-2].node), - (Node *) makeSimpleA_Expr(AEXPR_OP, ">", yyvsp[-6].node, yyvsp[0].node)); + (yyval.node) = (Node *) makeA_Expr(AEXPR_OR, NIL, + (Node *) makeSimpleA_Expr(AEXPR_OP, "<", (yyvsp[(1) - (7)].node), (yyvsp[(5) - (7)].node)), + (Node *) makeSimpleA_Expr(AEXPR_OP, ">", (yyvsp[(1) - (7)].node), (yyvsp[(7) - (7)].node))); } break; case 1066: #line 6703 "gram.y" { - yyval.node = (Node *) makeA_Expr(AEXPR_OR, NIL, + (yyval.node) = (Node *) makeA_Expr(AEXPR_OR, NIL, (Node *) makeA_Expr(AEXPR_AND, NIL, - (Node *) makeSimpleA_Expr(AEXPR_OP, ">=", yyvsp[-5].node, yyvsp[-2].node), - (Node *) makeSimpleA_Expr(AEXPR_OP, "<=", yyvsp[-5].node, yyvsp[0].node)), + (Node *) makeSimpleA_Expr(AEXPR_OP, ">=", (yyvsp[(1) - (6)].node), (yyvsp[(4) - (6)].node)), + (Node *) makeSimpleA_Expr(AEXPR_OP, "<=", (yyvsp[(1) - (6)].node), (yyvsp[(6) - (6)].node))), (Node *) makeA_Expr(AEXPR_AND, NIL, - (Node *) makeSimpleA_Expr(AEXPR_OP, ">=", yyvsp[-5].node, yyvsp[0].node), - (Node *) makeSimpleA_Expr(AEXPR_OP, "<=", yyvsp[-5].node, yyvsp[-2].node))); + (Node *) makeSimpleA_Expr(AEXPR_OP, ">=", (yyvsp[(1) - (6)].node), (yyvsp[(6) - (6)].node)), + (Node *) makeSimpleA_Expr(AEXPR_OP, "<=", (yyvsp[(1) - (6)].node), (yyvsp[(4) - (6)].node)))); } break; case 1067: #line 6713 "gram.y" { - yyval.node = (Node *) makeA_Expr(AEXPR_AND, NIL, + (yyval.node) = (Node *) makeA_Expr(AEXPR_AND, NIL, (Node *) makeA_Expr(AEXPR_OR, NIL, - (Node *) makeSimpleA_Expr(AEXPR_OP, "<", yyvsp[-6].node, yyvsp[-2].node), - (Node *) makeSimpleA_Expr(AEXPR_OP, ">", yyvsp[-6].node, yyvsp[0].node)), + (Node *) makeSimpleA_Expr(AEXPR_OP, "<", (yyvsp[(1) - (7)].node), (yyvsp[(5) - (7)].node)), + (Node *) makeSimpleA_Expr(AEXPR_OP, ">", (yyvsp[(1) - (7)].node), (yyvsp[(7) - (7)].node))), (Node *) makeA_Expr(AEXPR_OR, NIL, - (Node *) makeSimpleA_Expr(AEXPR_OP, "<", yyvsp[-6].node, yyvsp[0].node), - (Node *) makeSimpleA_Expr(AEXPR_OP, ">", yyvsp[-6].node, yyvsp[-2].node))); + (Node *) makeSimpleA_Expr(AEXPR_OP, "<", (yyvsp[(1) - (7)].node), (yyvsp[(7) - (7)].node)), + (Node *) makeSimpleA_Expr(AEXPR_OP, ">", (yyvsp[(1) - (7)].node), (yyvsp[(5) - (7)].node)))); } break; @@ -18642,31 +18982,31 @@ yyreduce: #line 6723 "gram.y" { /* in_expr returns a SubLink or a list of a_exprs */ - if (IsA(yyvsp[0].node, SubLink)) + if (IsA((yyvsp[(3) - (3)].node), SubLink)) { - SubLink *n = (SubLink *)yyvsp[0].node; + SubLink *n = (SubLink *)(yyvsp[(3) - (3)].node); n->subLinkType = ANY_SUBLINK; - if (IsA(yyvsp[-2].node, RowExpr)) - n->lefthand = ((RowExpr *) yyvsp[-2].node)->args; + if (IsA((yyvsp[(1) - (3)].node), RowExpr)) + n->lefthand = ((RowExpr *) (yyvsp[(1) - (3)].node))->args; else - n->lefthand = list_make1(yyvsp[-2].node); + n->lefthand = list_make1((yyvsp[(1) - (3)].node)); n->operName = list_make1(makeString("=")); - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } else { Node *n = NULL; ListCell *l; - foreach(l, (List *) yyvsp[0].node) + foreach(l, (List *) (yyvsp[(3) - (3)].node)) { Node *cmp; - cmp = (Node *) makeSimpleA_Expr(AEXPR_OP, "=", yyvsp[-2].node, lfirst(l)); + cmp = (Node *) makeSimpleA_Expr(AEXPR_OP, "=", (yyvsp[(1) - (3)].node), lfirst(l)); if (n == NULL) n = cmp; else n = (Node *) makeA_Expr(AEXPR_OR, NIL, n, cmp); } - yyval.node = n; + (yyval.node) = n; } } break; @@ -18675,33 +19015,33 @@ yyreduce: #line 6753 "gram.y" { /* in_expr returns a SubLink or a list of a_exprs */ - if (IsA(yyvsp[0].node, SubLink)) + if (IsA((yyvsp[(4) - (4)].node), SubLink)) { /* Make an IN node */ - SubLink *n = (SubLink *)yyvsp[0].node; + SubLink *n = (SubLink *)(yyvsp[(4) - (4)].node); n->subLinkType = ANY_SUBLINK; - if (IsA(yyvsp[-3].node, RowExpr)) - n->lefthand = ((RowExpr *) yyvsp[-3].node)->args; + if (IsA((yyvsp[(1) - (4)].node), RowExpr)) + n->lefthand = ((RowExpr *) (yyvsp[(1) - (4)].node))->args; else - n->lefthand = list_make1(yyvsp[-3].node); + n->lefthand = list_make1((yyvsp[(1) - (4)].node)); n->operName = list_make1(makeString("=")); /* Stick a NOT on top */ - yyval.node = (Node *) makeA_Expr(AEXPR_NOT, NIL, NULL, (Node *) n); + (yyval.node) = (Node *) makeA_Expr(AEXPR_NOT, NIL, NULL, (Node *) n); } else { Node *n = NULL; ListCell *l; - foreach(l, (List *) yyvsp[0].node) + foreach(l, (List *) (yyvsp[(4) - (4)].node)) { Node *cmp; - cmp = (Node *) makeSimpleA_Expr(AEXPR_OP, "<>", yyvsp[-3].node, lfirst(l)); + cmp = (Node *) makeSimpleA_Expr(AEXPR_OP, "<>", (yyvsp[(1) - (4)].node), lfirst(l)); if (n == NULL) n = cmp; else n = (Node *) makeA_Expr(AEXPR_AND, NIL, n, cmp); } - yyval.node = n; + (yyval.node) = n; } } break; @@ -18710,24 +19050,24 @@ yyreduce: #line 6785 "gram.y" { SubLink *n = makeNode(SubLink); - n->subLinkType = yyvsp[-1].ival; - if (IsA(yyvsp[-3].node, RowExpr)) - n->lefthand = ((RowExpr *) yyvsp[-3].node)->args; + n->subLinkType = (yyvsp[(3) - (4)].ival); + if (IsA((yyvsp[(1) - (4)].node), RowExpr)) + n->lefthand = ((RowExpr *) (yyvsp[(1) - (4)].node))->args; else - n->lefthand = list_make1(yyvsp[-3].node); - n->operName = yyvsp[-2].list; - n->subselect = yyvsp[0].node; - yyval.node = (Node *)n; + n->lefthand = list_make1((yyvsp[(1) - (4)].node)); + n->operName = (yyvsp[(2) - (4)].list); + n->subselect = (yyvsp[(4) - (4)].node); + (yyval.node) = (Node *)n; } break; case 1071: #line 6797 "gram.y" { - if (yyvsp[-3].ival == ANY_SUBLINK) - yyval.node = (Node *) makeA_Expr(AEXPR_OP_ANY, yyvsp[-4].list, yyvsp[-5].node, yyvsp[-1].node); + if ((yyvsp[(3) - (6)].ival) == ANY_SUBLINK) + (yyval.node) = (Node *) makeA_Expr(AEXPR_OP_ANY, (yyvsp[(2) - (6)].list), (yyvsp[(1) - (6)].node), (yyvsp[(5) - (6)].node)); else - yyval.node = (Node *) makeA_Expr(AEXPR_OP_ALL, yyvsp[-4].list, yyvsp[-5].node, yyvsp[-1].node); + (yyval.node) = (Node *) makeA_Expr(AEXPR_OP_ALL, (yyvsp[(2) - (6)].list), (yyvsp[(1) - (6)].node), (yyvsp[(5) - (6)].node)); } break; @@ -18751,155 +19091,155 @@ yyreduce: case 1073: #line 6830 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 1074: #line 6832 "gram.y" - { yyval.node = makeTypeCast(yyvsp[-2].node, yyvsp[0].typnam); } + { (yyval.node) = makeTypeCast((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].typnam)); } break; case 1075: #line 6834 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", NULL, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", NULL, (yyvsp[(2) - (2)].node)); } break; case 1076: #line 6836 "gram.y" - { yyval.node = doNegate(yyvsp[0].node); } + { (yyval.node) = doNegate((yyvsp[(2) - (2)].node)); } break; case 1077: #line 6838 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1078: #line 6840 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "-", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "-", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1079: #line 6842 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "*", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "*", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1080: #line 6844 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "/", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "/", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1081: #line 6846 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "%", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "%", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1082: #line 6848 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "^", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "^", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1083: #line 6850 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "<", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1084: #line 6852 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, ">", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, ">", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1085: #line 6854 "gram.y" - { yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OP, "=", yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "=", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1086: #line 6856 "gram.y" - { yyval.node = (Node *) makeA_Expr(AEXPR_OP, yyvsp[-1].list, yyvsp[-2].node, yyvsp[0].node); } + { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[(2) - (3)].list), (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1087: #line 6858 "gram.y" - { yyval.node = (Node *) makeA_Expr(AEXPR_OP, yyvsp[-1].list, NULL, yyvsp[0].node); } + { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[(1) - (2)].list), NULL, (yyvsp[(2) - (2)].node)); } break; case 1088: #line 6860 "gram.y" - { yyval.node = (Node *) makeA_Expr(AEXPR_OP, yyvsp[0].list, yyvsp[-1].node, NULL); } + { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[(2) - (2)].list), (yyvsp[(1) - (2)].node), NULL); } break; case 1089: #line 6862 "gram.y" { - yyval.node = (Node *) makeSimpleA_Expr(AEXPR_DISTINCT, "=", yyvsp[-4].node, yyvsp[0].node); + (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_DISTINCT, "=", (yyvsp[(1) - (5)].node), (yyvsp[(5) - (5)].node)); } break; case 1090: #line 6866 "gram.y" { - yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OF, "=", yyvsp[-5].node, (Node *) yyvsp[-1].list); + (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OF, "=", (yyvsp[(1) - (6)].node), (Node *) (yyvsp[(5) - (6)].list)); } break; case 1091: #line 6870 "gram.y" { - yyval.node = (Node *) makeSimpleA_Expr(AEXPR_OF, "!=", yyvsp[-6].node, (Node *) yyvsp[-1].list); + (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OF, "!=", (yyvsp[(1) - (7)].node), (Node *) (yyvsp[(6) - (7)].list)); } break; case 1092: #line 6883 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 1093: #line 6884 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 1094: #line 6886 "gram.y" { ParamRef *p = makeNode(ParamRef); - p->number = yyvsp[-1].ival; - if (yyvsp[0].list) + p->number = (yyvsp[(1) - (2)].ival); + if ((yyvsp[(2) - (2)].list)) { A_Indirection *n = makeNode(A_Indirection); n->arg = (Node *) p; - n->indirection = yyvsp[0].list; - yyval.node = (Node *) n; + n->indirection = (yyvsp[(2) - (2)].list); + (yyval.node) = (Node *) n; } else - yyval.node = (Node *) p; + (yyval.node) = (Node *) p; } break; case 1095: #line 6900 "gram.y" { - if (yyvsp[0].list) + if ((yyvsp[(4) - (4)].list)) { A_Indirection *n = makeNode(A_Indirection); - n->arg = yyvsp[-2].node; - n->indirection = yyvsp[0].list; - yyval.node = (Node *)n; + n->arg = (yyvsp[(2) - (4)].node); + n->indirection = (yyvsp[(4) - (4)].list); + (yyval.node) = (Node *)n; } else - yyval.node = yyvsp[-2].node; + (yyval.node) = (yyvsp[(2) - (4)].node); } break; case 1096: #line 6912 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 1097: #line 6914 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 1098: @@ -18909,8 +19249,8 @@ yyreduce: n->subLinkType = EXPR_SUBLINK; n->lefthand = NIL; n->operName = NIL; - n->subselect = yyvsp[0].node; - yyval.node = (Node *)n; + n->subselect = (yyvsp[(1) - (1)].node); + (yyval.node) = (Node *)n; } break; @@ -18921,8 +19261,8 @@ yyreduce: n->subLinkType = EXISTS_SUBLINK; n->lefthand = NIL; n->operName = NIL; - n->subselect = yyvsp[0].node; - yyval.node = (Node *)n; + n->subselect = (yyvsp[(2) - (2)].node); + (yyval.node) = (Node *)n; } break; @@ -18933,23 +19273,23 @@ yyreduce: n->subLinkType = ARRAY_SUBLINK; n->lefthand = NIL; n->operName = NIL; - n->subselect = yyvsp[0].node; - yyval.node = (Node *)n; + n->subselect = (yyvsp[(2) - (2)].node); + (yyval.node) = (Node *)n; } break; case 1101: #line 6943 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(2) - (2)].node); } break; case 1102: #line 6945 "gram.y" { RowExpr *r = makeNode(RowExpr); - r->args = yyvsp[0].list; + r->args = (yyvsp[(1) - (1)].list); r->row_typeid = 0; /* not analyzed yet */ - yyval.node = (Node *)r; + (yyval.node) = (Node *)r; } break; @@ -18957,11 +19297,11 @@ yyreduce: #line 6962 "gram.y" { FuncCall *n = makeNode(FuncCall); - n->funcname = yyvsp[-2].list; + n->funcname = (yyvsp[(1) - (3)].list); n->args = NIL; n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -18969,11 +19309,11 @@ yyreduce: #line 6971 "gram.y" { FuncCall *n = makeNode(FuncCall); - n->funcname = yyvsp[-3].list; - n->args = yyvsp[-1].list; + n->funcname = (yyvsp[(1) - (4)].list); + n->args = (yyvsp[(3) - (4)].list); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -18981,15 +19321,15 @@ yyreduce: #line 6980 "gram.y" { FuncCall *n = makeNode(FuncCall); - n->funcname = yyvsp[-4].list; - n->args = yyvsp[-1].list; + n->funcname = (yyvsp[(1) - (5)].list); + n->args = (yyvsp[(4) - (5)].list); n->agg_star = FALSE; n->agg_distinct = FALSE; /* Ideally we'd mark the FuncCall node to indicate * "must be an aggregate", but there's no provision * for that in FuncCall at the moment. */ - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -18997,11 +19337,11 @@ yyreduce: #line 6993 "gram.y" { FuncCall *n = makeNode(FuncCall); - n->funcname = yyvsp[-4].list; - n->args = yyvsp[-1].list; + n->funcname = (yyvsp[(1) - (5)].list); + n->args = (yyvsp[(4) - (5)].list); n->agg_star = FALSE; n->agg_distinct = TRUE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -19025,11 +19365,11 @@ yyreduce: star->val.type = T_Integer; star->val.val.ival = 1; - n->funcname = yyvsp[-3].list; + n->funcname = (yyvsp[(1) - (4)].list); n->args = list_make1(star); n->agg_star = TRUE; n->agg_distinct = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -19060,7 +19400,7 @@ yyreduce: d = SystemTypeName("date"); - yyval.node = (Node *)makeTypeCast((Node *)s, d); + (yyval.node) = (Node *)makeTypeCast((Node *)s, d); } break; @@ -19080,7 +19420,7 @@ yyreduce: d = SystemTypeName("timetz"); - yyval.node = (Node *)makeTypeCast((Node *)s, d); + (yyval.node) = (Node *)makeTypeCast((Node *)s, d); } break; @@ -19098,22 +19438,22 @@ yyreduce: s->val.val.str = "now"; s->typename = SystemTypeName("text"); d = SystemTypeName("timetz"); - if (yyvsp[-1].ival < 0) + if ((yyvsp[(3) - (4)].ival) < 0) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("CURRENT_TIME(%d) precision must not be negative", - yyvsp[-1].ival))); - if (yyvsp[-1].ival > MAX_TIME_PRECISION) + (yyvsp[(3) - (4)].ival)))); + if ((yyvsp[(3) - (4)].ival) > MAX_TIME_PRECISION) { ereport(WARNING, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("CURRENT_TIME(%d) precision reduced to maximum allowed, %d", - yyvsp[-1].ival, MAX_TIME_PRECISION))); - yyvsp[-1].ival = MAX_TIME_PRECISION; + (yyvsp[(3) - (4)].ival), MAX_TIME_PRECISION))); + (yyvsp[(3) - (4)].ival) = MAX_TIME_PRECISION; } - d->typmod = yyvsp[-1].ival; + d->typmod = (yyvsp[(3) - (4)].ival); - yyval.node = (Node *)makeTypeCast((Node *)s, d); + (yyval.node) = (Node *)makeTypeCast((Node *)s, d); } break; @@ -19129,7 +19469,7 @@ yyreduce: n->args = NIL; n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -19148,22 +19488,22 @@ yyreduce: s->typename = SystemTypeName("text"); d = SystemTypeName("timestamptz"); - if (yyvsp[-1].ival < 0) + if ((yyvsp[(3) - (4)].ival) < 0) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("CURRENT_TIMESTAMP(%d) precision must not be negative", - yyvsp[-1].ival))); - if (yyvsp[-1].ival > MAX_TIMESTAMP_PRECISION) + (yyvsp[(3) - (4)].ival)))); + if ((yyvsp[(3) - (4)].ival) > MAX_TIMESTAMP_PRECISION) { ereport(WARNING, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("CURRENT_TIMESTAMP(%d) precision reduced to maximum allowed, %d", - yyvsp[-1].ival, MAX_TIMESTAMP_PRECISION))); - yyvsp[-1].ival = MAX_TIMESTAMP_PRECISION; + (yyvsp[(3) - (4)].ival), MAX_TIMESTAMP_PRECISION))); + (yyvsp[(3) - (4)].ival) = MAX_TIMESTAMP_PRECISION; } - d->typmod = yyvsp[-1].ival; + d->typmod = (yyvsp[(3) - (4)].ival); - yyval.node = (Node *)makeTypeCast((Node *)s, d); + (yyval.node) = (Node *)makeTypeCast((Node *)s, d); } break; @@ -19183,7 +19523,7 @@ yyreduce: d = SystemTypeName("time"); - yyval.node = (Node *)makeTypeCast((Node *)s, d); + (yyval.node) = (Node *)makeTypeCast((Node *)s, d); } break; @@ -19201,22 +19541,22 @@ yyreduce: s->val.val.str = "now"; s->typename = SystemTypeName("text"); d = SystemTypeName("time"); - if (yyvsp[-1].ival < 0) + if ((yyvsp[(3) - (4)].ival) < 0) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("LOCALTIME(%d) precision must not be negative", - yyvsp[-1].ival))); - if (yyvsp[-1].ival > MAX_TIME_PRECISION) + (yyvsp[(3) - (4)].ival)))); + if ((yyvsp[(3) - (4)].ival) > MAX_TIME_PRECISION) { ereport(WARNING, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("LOCALTIME(%d) precision reduced to maximum allowed, %d", - yyvsp[-1].ival, MAX_TIME_PRECISION))); - yyvsp[-1].ival = MAX_TIME_PRECISION; + (yyvsp[(3) - (4)].ival), MAX_TIME_PRECISION))); + (yyvsp[(3) - (4)].ival) = MAX_TIME_PRECISION; } - d->typmod = yyvsp[-1].ival; + d->typmod = (yyvsp[(3) - (4)].ival); - yyval.node = (Node *)makeTypeCast((Node *)s, d); + (yyval.node) = (Node *)makeTypeCast((Node *)s, d); } break; @@ -19236,7 +19576,7 @@ yyreduce: d = SystemTypeName("timestamp"); - yyval.node = (Node *)makeTypeCast((Node *)s, d); + (yyval.node) = (Node *)makeTypeCast((Node *)s, d); } break; @@ -19255,22 +19595,22 @@ yyreduce: s->typename = SystemTypeName("text"); d = SystemTypeName("timestamp"); - if (yyvsp[-1].ival < 0) + if ((yyvsp[(3) - (4)].ival) < 0) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("LOCALTIMESTAMP(%d) precision must not be negative", - yyvsp[-1].ival))); - if (yyvsp[-1].ival > MAX_TIMESTAMP_PRECISION) + (yyvsp[(3) - (4)].ival)))); + if ((yyvsp[(3) - (4)].ival) > MAX_TIMESTAMP_PRECISION) { ereport(WARNING, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("LOCALTIMESTAMP(%d) precision reduced to maximum allowed, %d", - yyvsp[-1].ival, MAX_TIMESTAMP_PRECISION))); - yyvsp[-1].ival = MAX_TIMESTAMP_PRECISION; + (yyvsp[(3) - (4)].ival), MAX_TIMESTAMP_PRECISION))); + (yyvsp[(3) - (4)].ival) = MAX_TIMESTAMP_PRECISION; } - d->typmod = yyvsp[-1].ival; + d->typmod = (yyvsp[(3) - (4)].ival); - yyval.node = (Node *)makeTypeCast((Node *)s, d); + (yyval.node) = (Node *)makeTypeCast((Node *)s, d); } break; @@ -19282,7 +19622,7 @@ yyreduce: n->args = NIL; n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -19294,7 +19634,7 @@ yyreduce: n->args = NIL; n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -19306,7 +19646,7 @@ yyreduce: n->args = NIL; n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -19318,13 +19658,13 @@ yyreduce: n->args = NIL; n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; case 1121: #line 7277 "gram.y" - { yyval.node = makeTypeCast(yyvsp[-3].node, yyvsp[-1].typnam); } + { (yyval.node) = makeTypeCast((yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].typnam)); } break; case 1122: @@ -19332,10 +19672,10 @@ yyreduce: { FuncCall *n = makeNode(FuncCall); n->funcname = SystemFuncName("date_part"); - n->args = yyvsp[-1].list; + n->args = (yyvsp[(3) - (4)].list); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -19349,10 +19689,10 @@ yyreduce: */ FuncCall *n = makeNode(FuncCall); n->funcname = SystemFuncName("overlay"); - n->args = yyvsp[-1].list; + n->args = (yyvsp[(3) - (4)].list); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -19362,10 +19702,10 @@ yyreduce: /* position(A in B) is converted to position(B, A) */ FuncCall *n = makeNode(FuncCall); n->funcname = SystemFuncName("position"); - n->args = yyvsp[-1].list; + n->args = (yyvsp[(3) - (4)].list); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -19377,10 +19717,10 @@ yyreduce: */ FuncCall *n = makeNode(FuncCall); n->funcname = SystemFuncName("substring"); - n->args = yyvsp[-1].list; + n->args = (yyvsp[(3) - (4)].list); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -19397,9 +19737,9 @@ yyreduce: /* Convert SystemTypeName() to SystemFuncName() even though * at the moment they result in the same thing. */ - n->funcname = SystemFuncName(((Value *)llast(yyvsp[-1].typnam->names))->val.str); - n->args = list_make1(yyvsp[-3].node); - yyval.node = (Node *)n; + n->funcname = SystemFuncName(((Value *)llast((yyvsp[(5) - (6)].typnam)->names))->val.str); + n->args = list_make1((yyvsp[(3) - (6)].node)); + (yyval.node) = (Node *)n; } break; @@ -19411,10 +19751,10 @@ yyreduce: */ FuncCall *n = makeNode(FuncCall); n->funcname = SystemFuncName("btrim"); - n->args = yyvsp[-1].list; + n->args = (yyvsp[(4) - (5)].list); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -19423,10 +19763,10 @@ yyreduce: { FuncCall *n = makeNode(FuncCall); n->funcname = SystemFuncName("ltrim"); - n->args = yyvsp[-1].list; + n->args = (yyvsp[(4) - (5)].list); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -19435,10 +19775,10 @@ yyreduce: { FuncCall *n = makeNode(FuncCall); n->funcname = SystemFuncName("rtrim"); - n->args = yyvsp[-1].list; + n->args = (yyvsp[(4) - (5)].list); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -19447,10 +19787,10 @@ yyreduce: { FuncCall *n = makeNode(FuncCall); n->funcname = SystemFuncName("btrim"); - n->args = yyvsp[-1].list; + n->args = (yyvsp[(3) - (4)].list); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -19461,13 +19801,13 @@ yyreduce: A_Const *c = makeNode(A_Const); c->val.type = T_String; - c->val.val.str = NameListToQuotedString(yyvsp[-1].list); + c->val.val.str = NameListToQuotedString((yyvsp[(5) - (6)].list)); n->funcname = SystemFuncName("convert_using"); - n->args = list_make2(yyvsp[-3].node, c); + n->args = list_make2((yyvsp[(3) - (6)].node), c); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; @@ -19476,17 +19816,17 @@ yyreduce: { FuncCall *n = makeNode(FuncCall); n->funcname = SystemFuncName("convert"); - n->args = yyvsp[-1].list; + n->args = (yyvsp[(3) - (4)].list); n->agg_star = FALSE; n->agg_distinct = FALSE; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; case 1133: #line 7402 "gram.y" { - yyval.node = (Node *) makeSimpleA_Expr(AEXPR_NULLIF, "=", yyvsp[-3].node, yyvsp[-1].node); + (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_NULLIF, "=", (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node)); } break; @@ -19494,8 +19834,8 @@ yyreduce: #line 7406 "gram.y" { CoalesceExpr *c = makeNode(CoalesceExpr); - c->args = yyvsp[-1].list; - yyval.node = (Node *)c; + c->args = (yyvsp[(3) - (4)].list); + (yyval.node) = (Node *)c; } break; @@ -19503,9 +19843,9 @@ yyreduce: #line 7412 "gram.y" { MinMaxExpr *v = makeNode(MinMaxExpr); - v->args = yyvsp[-1].list; + v->args = (yyvsp[(3) - (4)].list); v->op = IS_GREATEST; - yyval.node = (Node *)v; + (yyval.node) = (Node *)v; } break; @@ -19513,158 +19853,158 @@ yyreduce: #line 7419 "gram.y" { MinMaxExpr *v = makeNode(MinMaxExpr); - v->args = yyvsp[-1].list; + v->args = (yyvsp[(3) - (4)].list); v->op = IS_LEAST; - yyval.node = (Node *)v; + (yyval.node) = (Node *)v; } break; case 1137: #line 7437 "gram.y" - { yyval.list = yyvsp[-1].list; } + { (yyval.list) = (yyvsp[(3) - (4)].list); } break; case 1138: #line 7438 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 1139: #line 7439 "gram.y" - { yyval.list = lappend(yyvsp[-3].list, yyvsp[-1].node); } + { (yyval.list) = lappend((yyvsp[(2) - (5)].list), (yyvsp[(4) - (5)].node)); } break; case 1140: #line 7442 "gram.y" - { yyval.ival = ANY_SUBLINK; } + { (yyval.ival) = ANY_SUBLINK; } break; case 1141: #line 7443 "gram.y" - { yyval.ival = ANY_SUBLINK; } + { (yyval.ival) = ANY_SUBLINK; } break; case 1142: #line 7444 "gram.y" - { yyval.ival = ALL_SUBLINK; } + { (yyval.ival) = ALL_SUBLINK; } break; case 1143: #line 7447 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 1144: #line 7448 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 1145: #line 7451 "gram.y" - { yyval.str = "+"; } + { (yyval.str) = "+"; } break; case 1146: #line 7452 "gram.y" - { yyval.str = "-"; } + { (yyval.str) = "-"; } break; case 1147: #line 7453 "gram.y" - { yyval.str = "*"; } + { (yyval.str) = "*"; } break; case 1148: #line 7454 "gram.y" - { yyval.str = "/"; } + { (yyval.str) = "/"; } break; case 1149: #line 7455 "gram.y" - { yyval.str = "%"; } + { (yyval.str) = "%"; } break; case 1150: #line 7456 "gram.y" - { yyval.str = "^"; } + { (yyval.str) = "^"; } break; case 1151: #line 7457 "gram.y" - { yyval.str = "<"; } + { (yyval.str) = "<"; } break; case 1152: #line 7458 "gram.y" - { yyval.str = ">"; } + { (yyval.str) = ">"; } break; case 1153: #line 7459 "gram.y" - { yyval.str = "="; } + { (yyval.str) = "="; } break; case 1154: #line 7463 "gram.y" - { yyval.list = list_make1(makeString(yyvsp[0].str)); } + { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); } break; case 1155: #line 7465 "gram.y" - { yyval.list = yyvsp[-1].list; } + { (yyval.list) = (yyvsp[(3) - (4)].list); } break; case 1156: #line 7470 "gram.y" - { yyval.list = list_make1(makeString(yyvsp[0].str)); } + { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); } break; case 1157: #line 7472 "gram.y" - { yyval.list = yyvsp[-1].list; } + { (yyval.list) = (yyvsp[(3) - (4)].list); } break; case 1158: #line 7477 "gram.y" - { yyval.list = list_make1(makeString(yyvsp[0].str)); } + { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); } break; case 1159: #line 7479 "gram.y" - { yyval.list = yyvsp[-1].list; } + { (yyval.list) = (yyvsp[(3) - (4)].list); } break; case 1160: #line 7481 "gram.y" - { yyval.list = list_make1(makeString("~~")); } + { (yyval.list) = list_make1(makeString("~~")); } break; case 1161: #line 7483 "gram.y" - { yyval.list = list_make1(makeString("!~~")); } + { (yyval.list) = list_make1(makeString("!~~")); } break; case 1162: #line 7485 "gram.y" - { yyval.list = list_make1(makeString("~~*")); } + { (yyval.list) = list_make1(makeString("~~*")); } break; case 1163: #line 7487 "gram.y" - { yyval.list = list_make1(makeString("!~~*")); } + { (yyval.list) = list_make1(makeString("!~~*")); } break; case 1164: #line 7499 "gram.y" { - yyval.list = list_make1(yyvsp[0].node); + (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); } break; case 1165: #line 7503 "gram.y" { - yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); + (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; @@ -19673,46 +20013,46 @@ yyreduce: { A_Const *n = makeNode(A_Const); n->val.type = T_String; - n->val.val.str = yyvsp[-2].str; - yyval.list = list_make2((Node *) n, yyvsp[0].node); + n->val.val.str = (yyvsp[(1) - (3)].str); + (yyval.list) = list_make2((Node *) n, (yyvsp[(3) - (3)].node)); } break; case 1167: #line 7516 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 1168: #line 7520 "gram.y" { - yyval.list = lappend(yyvsp[-2].list, yyvsp[0].typnam); + (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].typnam)); } break; case 1169: #line 7524 "gram.y" { - yyval.list = list_make1(yyvsp[0].typnam); + (yyval.list) = list_make1((yyvsp[(1) - (1)].typnam)); } break; case 1170: #line 7530 "gram.y" - { yyval.list = list_make1(yyvsp[0].node); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); } break; case 1171: #line 7532 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].node); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); } break; case 1172: #line 7536 "gram.y" { ArrayExpr *n = makeNode(ArrayExpr); - n->elements = yyvsp[-1].list; - yyval.node = (Node *)n; + n->elements = (yyvsp[(2) - (3)].list); + (yyval.node) = (Node *)n; } break; @@ -19720,84 +20060,84 @@ yyreduce: #line 7542 "gram.y" { ArrayExpr *n = makeNode(ArrayExpr); - n->elements = yyvsp[-1].list; - yyval.node = (Node *)n; + n->elements = (yyvsp[(2) - (3)].list); + (yyval.node) = (Node *)n; } break; case 1174: #line 7554 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 1175: #line 7555 "gram.y" - { yyval.str = "year"; } + { (yyval.str) = "year"; } break; case 1176: #line 7556 "gram.y" - { yyval.str = "month"; } + { (yyval.str) = "month"; } break; case 1177: #line 7557 "gram.y" - { yyval.str = "day"; } + { (yyval.str) = "day"; } break; case 1178: #line 7558 "gram.y" - { yyval.str = "hour"; } + { (yyval.str) = "hour"; } break; case 1179: #line 7559 "gram.y" - { yyval.str = "minute"; } + { (yyval.str) = "minute"; } break; case 1180: #line 7560 "gram.y" - { yyval.str = "second"; } + { (yyval.str) = "second"; } break; case 1181: #line 7561 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 1182: #line 7571 "gram.y" { - yyval.list = list_make4(yyvsp[-3].node, yyvsp[-2].node, yyvsp[-1].node, yyvsp[0].node); + (yyval.list) = list_make4((yyvsp[(1) - (4)].node), (yyvsp[(2) - (4)].node), (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node)); } break; case 1183: #line 7575 "gram.y" { - yyval.list = list_make3(yyvsp[-2].node, yyvsp[-1].node, yyvsp[0].node); + (yyval.list) = list_make3((yyvsp[(1) - (3)].node), (yyvsp[(2) - (3)].node), (yyvsp[(3) - (3)].node)); } break; case 1184: #line 7582 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(2) - (2)].node); } break; case 1185: #line 7588 "gram.y" - { yyval.list = list_make2(yyvsp[0].node, yyvsp[-2].node); } + { (yyval.list) = list_make2((yyvsp[(3) - (3)].node), (yyvsp[(1) - (3)].node)); } break; case 1186: #line 7589 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 1187: #line 7606 "gram.y" { - yyval.list = list_make3(yyvsp[-2].node, yyvsp[-1].node, yyvsp[0].node); + (yyval.list) = list_make3((yyvsp[(1) - (3)].node), (yyvsp[(2) - (3)].node), (yyvsp[(3) - (3)].node)); } break; @@ -19805,14 +20145,14 @@ yyreduce: #line 7610 "gram.y" { /* not legal per SQL99, but might as well allow it */ - yyval.list = list_make3(yyvsp[-2].node, yyvsp[0].node, yyvsp[-1].node); + (yyval.list) = list_make3((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yyvsp[(2) - (3)].node)); } break; case 1189: #line 7615 "gram.y" { - yyval.list = list_make2(yyvsp[-1].node, yyvsp[0].node); + (yyval.list) = list_make2((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node)); } break; @@ -19829,61 +20169,61 @@ yyreduce: A_Const *n = makeNode(A_Const); n->val.type = T_Integer; n->val.val.ival = 1; - yyval.list = list_make3(yyvsp[-1].node, (Node *) n, - makeTypeCast(yyvsp[0].node, SystemTypeName("int4"))); + (yyval.list) = list_make3((yyvsp[(1) - (2)].node), (Node *) n, + makeTypeCast((yyvsp[(2) - (2)].node), SystemTypeName("int4"))); } break; case 1191: #line 7634 "gram.y" { - yyval.list = yyvsp[0].list; + (yyval.list) = (yyvsp[(1) - (1)].list); } break; case 1192: #line 7638 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 1193: #line 7642 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(2) - (2)].node); } break; case 1194: #line 7645 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(2) - (2)].node); } break; case 1195: #line 7648 "gram.y" - { yyval.list = lappend(yyvsp[0].list, yyvsp[-2].node); } + { (yyval.list) = lappend((yyvsp[(3) - (3)].list), (yyvsp[(1) - (3)].node)); } break; case 1196: #line 7649 "gram.y" - { yyval.list = yyvsp[0].list; } + { (yyval.list) = (yyvsp[(2) - (2)].list); } break; case 1197: #line 7650 "gram.y" - { yyval.list = yyvsp[0].list; } + { (yyval.list) = (yyvsp[(1) - (1)].list); } break; case 1198: #line 7654 "gram.y" { SubLink *n = makeNode(SubLink); - n->subselect = yyvsp[0].node; + n->subselect = (yyvsp[(1) - (1)].node); /* other fields will be filled later */ - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; case 1199: #line 7660 "gram.y" - { yyval.node = (Node *)yyvsp[-1].list; } + { (yyval.node) = (Node *)(yyvsp[(2) - (3)].list); } break; case 1200: @@ -19891,78 +20231,78 @@ yyreduce: { CaseExpr *c = makeNode(CaseExpr); c->casetype = 0; /* not analyzed yet */ - c->arg = (Expr *) yyvsp[-3].node; - c->args = yyvsp[-2].list; - c->defresult = (Expr *) yyvsp[-1].node; - yyval.node = (Node *)c; + c->arg = (Expr *) (yyvsp[(2) - (5)].node); + c->args = (yyvsp[(3) - (5)].list); + c->defresult = (Expr *) (yyvsp[(4) - (5)].node); + (yyval.node) = (Node *)c; } break; case 1201: #line 7683 "gram.y" - { yyval.list = list_make1(yyvsp[0].node); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); } break; case 1202: #line 7684 "gram.y" - { yyval.list = lappend(yyvsp[-1].list, yyvsp[0].node); } + { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); } break; case 1203: #line 7689 "gram.y" { CaseWhen *w = makeNode(CaseWhen); - w->expr = (Expr *) yyvsp[-2].node; - w->result = (Expr *) yyvsp[0].node; - yyval.node = (Node *)w; + w->expr = (Expr *) (yyvsp[(2) - (4)].node); + w->result = (Expr *) (yyvsp[(4) - (4)].node); + (yyval.node) = (Node *)w; } break; case 1204: #line 7698 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(2) - (2)].node); } break; case 1205: #line 7699 "gram.y" - { yyval.node = NULL; } + { (yyval.node) = NULL; } break; case 1206: #line 7702 "gram.y" - { yyval.node = yyvsp[0].node; } + { (yyval.node) = (yyvsp[(1) - (1)].node); } break; case 1207: #line 7703 "gram.y" - { yyval.node = NULL; } + { (yyval.node) = NULL; } break; case 1208: #line 7712 "gram.y" { - yyval.node = makeColumnRef(yyvsp[0].str, NIL); + (yyval.node) = makeColumnRef((yyvsp[(1) - (1)].str), NIL); } break; case 1209: #line 7716 "gram.y" { - yyval.node = makeColumnRef(yyvsp[-1].str, yyvsp[0].list); + (yyval.node) = makeColumnRef((yyvsp[(1) - (2)].str), (yyvsp[(2) - (2)].list)); } break; case 1210: #line 7723 "gram.y" { - yyval.node = (Node *) makeString(yyvsp[0].str); + (yyval.node) = (Node *) makeString((yyvsp[(2) - (2)].str)); } break; case 1211: #line 7727 "gram.y" { - yyval.node = (Node *) makeString("*"); + (yyval.node) = (Node *) makeString("*"); } break; @@ -19971,8 +20311,8 @@ yyreduce: { A_Indices *ai = makeNode(A_Indices); ai->lidx = NULL; - ai->uidx = yyvsp[-1].node; - yyval.node = (Node *) ai; + ai->uidx = (yyvsp[(2) - (3)].node); + (yyval.node) = (Node *) ai; } break; @@ -19980,59 +20320,59 @@ yyreduce: #line 7738 "gram.y" { A_Indices *ai = makeNode(A_Indices); - ai->lidx = yyvsp[-3].node; - ai->uidx = yyvsp[-1].node; - yyval.node = (Node *) ai; + ai->lidx = (yyvsp[(2) - (5)].node); + ai->uidx = (yyvsp[(4) - (5)].node); + (yyval.node) = (Node *) ai; } break; case 1214: #line 7747 "gram.y" - { yyval.list = list_make1(yyvsp[0].node); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); } break; case 1215: #line 7748 "gram.y" - { yyval.list = lappend(yyvsp[-1].list, yyvsp[0].node); } + { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); } break; case 1216: #line 7752 "gram.y" - { yyval.list = NIL; } + { (yyval.list) = NIL; } break; case 1217: #line 7753 "gram.y" - { yyval.list = lappend(yyvsp[-1].list, yyvsp[0].node); } + { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); } break; case 1220: #line 7768 "gram.y" - { yyval.list = list_make1(yyvsp[0].target); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].target)); } break; case 1221: #line 7769 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].target); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].target)); } break; case 1222: #line 7774 "gram.y" { - yyval.target = makeNode(ResTarget); - yyval.target->name = yyvsp[0].str; - yyval.target->indirection = NIL; - yyval.target->val = (Node *)yyvsp[-2].node; + (yyval.target) = makeNode(ResTarget); + (yyval.target)->name = (yyvsp[(3) - (3)].str); + (yyval.target)->indirection = NIL; + (yyval.target)->val = (Node *)(yyvsp[(1) - (3)].node); } break; case 1223: #line 7781 "gram.y" { - yyval.target = makeNode(ResTarget); - yyval.target->name = NULL; - yyval.target->indirection = NIL; - yyval.target->val = (Node *)yyvsp[0].node; + (yyval.target) = makeNode(ResTarget); + (yyval.target)->name = NULL; + (yyval.target)->indirection = NIL; + (yyval.target)->val = (Node *)(yyvsp[(1) - (1)].node); } break; @@ -20042,125 +20382,125 @@ yyreduce: ColumnRef *n = makeNode(ColumnRef); n->fields = list_make1(makeString("*")); - yyval.target = makeNode(ResTarget); - yyval.target->name = NULL; - yyval.target->indirection = NIL; - yyval.target->val = (Node *)n; + (yyval.target) = makeNode(ResTarget); + (yyval.target)->name = NULL; + (yyval.target)->indirection = NIL; + (yyval.target)->val = (Node *)n; } break; case 1225: #line 7800 "gram.y" - { yyval.list = list_make1(yyvsp[0].target); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].target)); } break; case 1226: #line 7801 "gram.y" - { yyval.list = lappend(yyvsp[-2].list,yyvsp[0].target); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list),(yyvsp[(3) - (3)].target)); } break; case 1227: #line 7806 "gram.y" { - yyval.target = makeNode(ResTarget); - yyval.target->name = yyvsp[-3].str; - yyval.target->indirection = yyvsp[-2].list; - yyval.target->val = (Node *) yyvsp[0].node; + (yyval.target) = makeNode(ResTarget); + (yyval.target)->name = (yyvsp[(1) - (4)].str); + (yyval.target)->indirection = (yyvsp[(2) - (4)].list); + (yyval.target)->val = (Node *) (yyvsp[(4) - (4)].node); } break; case 1228: #line 7813 "gram.y" { - yyval.target = makeNode(ResTarget); - yyval.target->name = yyvsp[-3].str; - yyval.target->indirection = yyvsp[-2].list; - yyval.target->val = (Node *) makeNode(SetToDefault); + (yyval.target) = makeNode(ResTarget); + (yyval.target)->name = (yyvsp[(1) - (4)].str); + (yyval.target)->indirection = (yyvsp[(2) - (4)].list); + (yyval.target)->val = (Node *) makeNode(SetToDefault); } break; case 1229: #line 7823 "gram.y" - { yyval.list = list_make1(yyvsp[0].target); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].target)); } break; case 1230: #line 7824 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].target); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].target)); } break; case 1231: #line 7829 "gram.y" { - yyval.target = makeNode(ResTarget); - yyval.target->name = NULL; - yyval.target->indirection = NIL; - yyval.target->val = (Node *)yyvsp[0].node; + (yyval.target) = makeNode(ResTarget); + (yyval.target)->name = NULL; + (yyval.target)->indirection = NIL; + (yyval.target)->val = (Node *)(yyvsp[(1) - (1)].node); } break; case 1232: #line 7836 "gram.y" { - yyval.target = makeNode(ResTarget); - yyval.target->name = NULL; - yyval.target->indirection = NIL; - yyval.target->val = (Node *) makeNode(SetToDefault); + (yyval.target) = makeNode(ResTarget); + (yyval.target)->name = NULL; + (yyval.target)->indirection = NIL; + (yyval.target)->val = (Node *) makeNode(SetToDefault); } break; case 1233: #line 7852 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 1234: #line 7853 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 1235: #line 7857 "gram.y" - { yyval.list = list_make1(yyvsp[0].range); } + { (yyval.list) = list_make1((yyvsp[(1) - (1)].range)); } break; case 1236: #line 7858 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, yyvsp[0].range); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].range)); } break; case 1237: #line 7870 "gram.y" { - yyval.range = makeNode(RangeVar); - yyval.range->catalogname = NULL; - yyval.range->schemaname = NULL; - yyval.range->relname = yyvsp[0].str; + (yyval.range) = makeNode(RangeVar); + (yyval.range)->catalogname = NULL; + (yyval.range)->schemaname = NULL; + (yyval.range)->relname = (yyvsp[(1) - (1)].str); } break; case 1238: #line 7877 "gram.y" { - check_qualified_name(yyvsp[0].list); - yyval.range = makeNode(RangeVar); - switch (list_length(yyvsp[0].list)) + check_qualified_name((yyvsp[(2) - (2)].list)); + (yyval.range) = makeNode(RangeVar); + switch (list_length((yyvsp[(2) - (2)].list))) { case 1: - yyval.range->catalogname = NULL; - yyval.range->schemaname = yyvsp[-1].str; - yyval.range->relname = strVal(linitial(yyvsp[0].list)); + (yyval.range)->catalogname = NULL; + (yyval.range)->schemaname = (yyvsp[(1) - (2)].str); + (yyval.range)->relname = strVal(linitial((yyvsp[(2) - (2)].list))); break; case 2: - yyval.range->catalogname = yyvsp[-1].str; - yyval.range->schemaname = strVal(linitial(yyvsp[0].list)); - yyval.range->relname = strVal(lsecond(yyvsp[0].list)); + (yyval.range)->catalogname = (yyvsp[(1) - (2)].str); + (yyval.range)->schemaname = strVal(linitial((yyvsp[(2) - (2)].list))); + (yyval.range)->relname = strVal(lsecond((yyvsp[(2) - (2)].list))); break; default: ereport(ERROR, (errcode(ERRCODE_SYNTAX_ERROR), errmsg("improper qualified name (too many dotted names): %s", - NameListToString(lcons(makeString(yyvsp[-1].str), yyvsp[0].list))))); + NameListToString(lcons(makeString((yyvsp[(1) - (2)].str)), (yyvsp[(2) - (2)].list)))))); break; } } @@ -20168,52 +20508,52 @@ yyreduce: case 1239: #line 7903 "gram.y" - { yyval.list = list_make1(makeString(yyvsp[0].str)); } + { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); } break; case 1240: #line 7905 "gram.y" - { yyval.list = lappend(yyvsp[-2].list, makeString(yyvsp[0].str)); } + { (yyval.list) = lappend((yyvsp[(1) - (3)].list), makeString((yyvsp[(3) - (3)].str))); } break; case 1241: #line 7909 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 1242: #line 7912 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 1243: #line 7915 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 1244: #line 7917 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 1245: #line 7919 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 1246: #line 7921 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 1247: #line 7932 "gram.y" - { yyval.list = list_make1(makeString(yyvsp[0].str)); } + { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); } break; case 1248: #line 7934 "gram.y" - { yyval.list = check_func_name(lcons(makeString(yyvsp[-1].str), yyvsp[0].list)); } + { (yyval.list) = check_func_name(lcons(makeString((yyvsp[(1) - (2)].str)), (yyvsp[(2) - (2)].list))); } break; case 1249: @@ -20221,8 +20561,8 @@ yyreduce: { A_Const *n = makeNode(A_Const); n->val.type = T_Integer; - n->val.val.ival = yyvsp[0].ival; - yyval.node = (Node *)n; + n->val.val.ival = (yyvsp[(1) - (1)].ival); + (yyval.node) = (Node *)n; } break; @@ -20231,8 +20571,8 @@ yyreduce: { A_Const *n = makeNode(A_Const); n->val.type = T_Float; - n->val.val.str = yyvsp[0].str; - yyval.node = (Node *)n; + n->val.val.str = (yyvsp[(1) - (1)].str); + (yyval.node) = (Node *)n; } break; @@ -20241,8 +20581,8 @@ yyreduce: { A_Const *n = makeNode(A_Const); n->val.type = T_String; - n->val.val.str = yyvsp[0].str; - yyval.node = (Node *)n; + n->val.val.str = (yyvsp[(1) - (1)].str); + (yyval.node) = (Node *)n; } break; @@ -20251,8 +20591,8 @@ yyreduce: { A_Const *n = makeNode(A_Const); n->val.type = T_BitString; - n->val.val.str = yyvsp[0].str; - yyval.node = (Node *)n; + n->val.val.str = (yyvsp[(1) - (1)].str); + (yyval.node) = (Node *)n; } break; @@ -20266,8 +20606,8 @@ yyreduce: */ A_Const *n = makeNode(A_Const); n->val.type = T_BitString; - n->val.val.str = yyvsp[0].str; - yyval.node = (Node *)n; + n->val.val.str = (yyvsp[(1) - (1)].str); + (yyval.node) = (Node *)n; } break; @@ -20275,10 +20615,10 @@ yyreduce: #line 7982 "gram.y" { A_Const *n = makeNode(A_Const); - n->typename = yyvsp[-1].typnam; + n->typename = (yyvsp[(1) - (2)].typnam); n->val.type = T_String; - n->val.val.str = yyvsp[0].str; - yyval.node = (Node *)n; + n->val.val.str = (yyvsp[(2) - (2)].str); + (yyval.node) = (Node *)n; } break; @@ -20286,13 +20626,13 @@ yyreduce: #line 7990 "gram.y" { A_Const *n = makeNode(A_Const); - n->typename = yyvsp[-2].typnam; + n->typename = (yyvsp[(1) - (3)].typnam); n->val.type = T_String; - n->val.val.str = yyvsp[-1].str; + n->val.val.str = (yyvsp[(2) - (3)].str); /* precision is not specified, but fields may be... */ - if (yyvsp[0].ival != INTERVAL_FULL_RANGE) - n->typename->typmod = INTERVAL_TYPMOD(INTERVAL_FULL_PRECISION, yyvsp[0].ival); - yyval.node = (Node *)n; + if ((yyvsp[(3) - (3)].ival) != INTERVAL_FULL_RANGE) + n->typename->typmod = INTERVAL_TYPMOD(INTERVAL_FULL_PRECISION, (yyvsp[(3) - (3)].ival)); + (yyval.node) = (Node *)n; } break; @@ -20300,39 +20640,39 @@ yyreduce: #line 8001 "gram.y" { A_Const *n = makeNode(A_Const); - n->typename = yyvsp[-5].typnam; + n->typename = (yyvsp[(1) - (6)].typnam); n->val.type = T_String; - n->val.val.str = yyvsp[-1].str; + n->val.val.str = (yyvsp[(5) - (6)].str); /* precision specified, and fields may be... */ - if (yyvsp[-3].ival < 0) + if ((yyvsp[(3) - (6)].ival) < 0) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("INTERVAL(%d) precision must not be negative", - yyvsp[-3].ival))); - if (yyvsp[-3].ival > MAX_INTERVAL_PRECISION) + (yyvsp[(3) - (6)].ival)))); + if ((yyvsp[(3) - (6)].ival) > MAX_INTERVAL_PRECISION) { ereport(WARNING, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("INTERVAL(%d) precision reduced to maximum allowed, %d", - yyvsp[-3].ival, MAX_INTERVAL_PRECISION))); - yyvsp[-3].ival = MAX_INTERVAL_PRECISION; + (yyvsp[(3) - (6)].ival), MAX_INTERVAL_PRECISION))); + (yyvsp[(3) - (6)].ival) = MAX_INTERVAL_PRECISION; } - n->typename->typmod = INTERVAL_TYPMOD(yyvsp[-3].ival, yyvsp[0].ival); - yyval.node = (Node *)n; + n->typename->typmod = INTERVAL_TYPMOD((yyvsp[(3) - (6)].ival), (yyvsp[(6) - (6)].ival)); + (yyval.node) = (Node *)n; } break; case 1257: #line 8024 "gram.y" { - yyval.node = (Node *)makeBoolAConst(TRUE); + (yyval.node) = (Node *)makeBoolAConst(TRUE); } break; case 1258: #line 8028 "gram.y" { - yyval.node = (Node *)makeBoolAConst(FALSE); + (yyval.node) = (Node *)makeBoolAConst(FALSE); } break; @@ -20341,105 +20681,105 @@ yyreduce: { A_Const *n = makeNode(A_Const); n->val.type = T_Null; - yyval.node = (Node *)n; + (yyval.node) = (Node *)n; } break; case 1260: #line 8039 "gram.y" - { yyval.ival = yyvsp[0].ival; } + { (yyval.ival) = (yyvsp[(1) - (1)].ival); } break; case 1261: #line 8040 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 1262: #line 8041 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 1263: #line 8043 "gram.y" - { yyval.ival = yyvsp[0].ival; } + { (yyval.ival) = (yyvsp[(1) - (1)].ival); } break; case 1264: #line 8044 "gram.y" - { yyval.ival = - yyvsp[0].ival; } + { (yyval.ival) = - (yyvsp[(2) - (2)].ival); } break; case 1265: #line 8060 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 1266: #line 8061 "gram.y" - { yyval.str = pstrdup(yyvsp[0].keyword); } + { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); } break; case 1267: #line 8062 "gram.y" - { yyval.str = pstrdup(yyvsp[0].keyword); } + { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); } break; case 1268: #line 8067 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 1269: #line 8068 "gram.y" - { yyval.str = pstrdup(yyvsp[0].keyword); } + { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); } break; case 1270: #line 8074 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 1271: #line 8075 "gram.y" - { yyval.str = pstrdup(yyvsp[0].keyword); } + { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); } break; case 1272: #line 8076 "gram.y" - { yyval.str = pstrdup(yyvsp[0].keyword); } + { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); } break; case 1273: #line 8082 "gram.y" - { yyval.str = yyvsp[0].str; } + { (yyval.str) = (yyvsp[(1) - (1)].str); } break; case 1274: #line 8083 "gram.y" - { yyval.str = pstrdup(yyvsp[0].keyword); } + { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); } break; case 1275: #line 8084 "gram.y" - { yyval.str = pstrdup(yyvsp[0].keyword); } + { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); } break; case 1276: #line 8085 "gram.y" - { yyval.str = pstrdup(yyvsp[0].keyword); } + { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); } break; case 1277: #line 8086 "gram.y" - { yyval.str = pstrdup(yyvsp[0].keyword); } + { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); } break; case 1612: #line 8476 "gram.y" { if (QueryIsRule) - yyval.str = "*OLD*"; + (yyval.str) = "*OLD*"; else ereport(ERROR, (errcode(ERRCODE_SYNTAX_ERROR), @@ -20451,7 +20791,7 @@ yyreduce: #line 8485 "gram.y" { if (QueryIsRule) - yyval.str = "*NEW*"; + (yyval.str) = "*NEW*"; else ereport(ERROR, (errcode(ERRCODE_SYNTAX_ERROR), @@ -20460,15 +20800,14 @@ yyreduce: break; +/* Line 1267 of yacc.c. */ +#line 20805 "gram.c" + default: break; } + YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); -/* Line 999 of yacc.c. */ -#line 20466 "gram.c" - - yyvsp -= yylen; - yyssp -= yylen; - - + YYPOPSTACK (yylen); + yylen = 0; YY_STACK_PRINT (yyss, yyssp); *++yyvsp = yyval; @@ -20497,92 +20836,92 @@ yyerrlab: if (!yyerrstatus) { ++yynerrs; -#if YYERROR_VERBOSE - yyn = yypact[yystate]; - - if (YYPACT_NINF < yyn && yyn < YYLAST) - { - YYSIZE_T yysize = 0; - int yytype = YYTRANSLATE (yychar); - char *yymsg; - int yyx, yycount; - - yycount = 0; - /* Start YYX at -YYN if negative to avoid negative indexes in - YYCHECK. */ - for (yyx = yyn < 0 ? -yyn : 0; - yyx < (int) (sizeof (yytname) / sizeof (char *)); yyx++) - if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) - yysize += yystrlen (yytname[yyx]) + 15, yycount++; - yysize += yystrlen ("syntax error, unexpected ") + 1; - yysize += yystrlen (yytname[yytype]); - yymsg = (char *) YYSTACK_ALLOC (yysize); - if (yymsg != 0) - { - char *yyp = yystpcpy (yymsg, "syntax error, unexpected "); - yyp = yystpcpy (yyp, yytname[yytype]); - - if (yycount < 5) - { - yycount = 0; - for (yyx = yyn < 0 ? -yyn : 0; - yyx < (int) (sizeof (yytname) / sizeof (char *)); - yyx++) - if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) - { - const char *yyq = ! yycount ? ", expecting " : " or "; - yyp = yystpcpy (yyp, yyq); - yyp = yystpcpy (yyp, yytname[yyx]); - yycount++; - } - } - yyerror (yymsg); +#if ! YYERROR_VERBOSE + yyerror (YY_("syntax error")); +#else + { + YYSIZE_T yysize = yysyntax_error (0, yystate, yychar); + if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM) + { + YYSIZE_T yyalloc = 2 * yysize; + if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM)) + yyalloc = YYSTACK_ALLOC_MAXIMUM; + if (yymsg != yymsgbuf) YYSTACK_FREE (yymsg); - } - else - yyerror ("syntax error; also virtual memory exhausted"); - } - else -#endif /* YYERROR_VERBOSE */ - yyerror ("syntax error"); + yymsg = (char *) YYSTACK_ALLOC (yyalloc); + if (yymsg) + yymsg_alloc = yyalloc; + else + { + yymsg = yymsgbuf; + yymsg_alloc = sizeof yymsgbuf; + } + } + + if (0 < yysize && yysize <= yymsg_alloc) + { + (void) yysyntax_error (yymsg, yystate, yychar); + yyerror (yymsg); + } + else + { + yyerror (YY_("syntax error")); + if (yysize != 0) + goto yyexhaustedlab; + } + } +#endif } if (yyerrstatus == 3) { - /* If just tried and failed to reuse lookahead token after an + /* If just tried and failed to reuse look-ahead token after an error, discard it. */ - /* Return failure if at end of input. */ - if (yychar == YYEOF) - { - /* Pop the error token. */ - YYPOPSTACK; - /* Pop the rest of the stack. */ - while (yyss < yyssp) - { - YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp); - yydestruct (yystos[*yyssp], yyvsp); - YYPOPSTACK; - } - YYABORT; - } - - YYDSYMPRINTF ("Error: discarding", yytoken, &yylval, &yylloc); - yydestruct (yytoken, &yylval); - yychar = YYEMPTY; - + if (yychar <= YYEOF) + { + /* Return failure if at end of input. */ + if (yychar == YYEOF) + YYABORT; + } + else + { + yydestruct ("Error: discarding", + yytoken, &yylval); + yychar = YYEMPTY; + } } - /* Else will try to reuse lookahead token after shifting the error + /* Else will try to reuse look-ahead token after shifting the error token. */ goto yyerrlab1; -/*----------------------------------------------------. -| yyerrlab1 -- error raised explicitly by an action. | -`----------------------------------------------------*/ +/*---------------------------------------------------. +| yyerrorlab -- error raised explicitly by YYERROR. | +`---------------------------------------------------*/ +yyerrorlab: + + /* Pacify compilers like GCC when the user code never invokes + YYERROR and the label yyerrorlab therefore never appears in user + code. */ + if (/*CONSTCOND*/ 0) + goto yyerrorlab; + + /* Do not reclaim the symbols of the rule which action triggered + this YYERROR. */ + YYPOPSTACK (yylen); + yylen = 0; + YY_STACK_PRINT (yyss, yyssp); + yystate = *yyssp; + goto yyerrlab1; + + +/*-------------------------------------------------------------. +| yyerrlab1 -- common code for both syntax error and YYERROR. | +`-------------------------------------------------------------*/ yyerrlab1: yyerrstatus = 3; /* Each real token shifted decrements this. */ @@ -20604,22 +20943,23 @@ yyerrlab1: if (yyssp == yyss) YYABORT; - YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp); - yydestruct (yystos[yystate], yyvsp); - yyvsp--; - yystate = *--yyssp; + yydestruct ("Error: popping", + yystos[yystate], yyvsp); + YYPOPSTACK (1); + yystate = *yyssp; YY_STACK_PRINT (yyss, yyssp); } if (yyn == YYFINAL) YYACCEPT; - YYDPRINTF ((stderr, "Shifting error token, ")); - *++yyvsp = yylval; + /* Shift the error token. */ + YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp); + yystate = yyn; goto yynewstate; @@ -20639,21 +20979,39 @@ yyabortlab: goto yyreturn; #ifndef yyoverflow -/*----------------------------------------------. -| yyoverflowlab -- parser overflow comes here. | -`----------------------------------------------*/ -yyoverflowlab: - yyerror ("parser stack overflow"); +/*-------------------------------------------------. +| yyexhaustedlab -- memory exhaustion comes here. | +`-------------------------------------------------*/ +yyexhaustedlab: + yyerror (YY_("memory exhausted")); yyresult = 2; /* Fall through. */ #endif yyreturn: + if (yychar != YYEOF && yychar != YYEMPTY) + yydestruct ("Cleanup: discarding lookahead", + yytoken, &yylval); + /* Do not reclaim the symbols of the rule which action triggered + this YYABORT or YYACCEPT. */ + YYPOPSTACK (yylen); + YY_STACK_PRINT (yyss, yyssp); + while (yyssp != yyss) + { + yydestruct ("Cleanup: popping", + yystos[*yyssp], yyvsp); + YYPOPSTACK (1); + } #ifndef yyoverflow if (yyss != yyssa) YYSTACK_FREE (yyss); #endif - return yyresult; +#if YYERROR_VERBOSE + if (yymsg != yymsgbuf) + YYSTACK_FREE (yymsg); +#endif + /* Make sure YYID is used. */ + return YYID (yyresult); } diff --git a/parser/gram.h b/parser/gram.h index 405d7e7f8..426cb2c67 100644 --- a/parser/gram.h +++ b/parser/gram.h @@ -1,7 +1,9 @@ -/* A Bison parser, made by GNU Bison 1.875. */ +/* A Bison parser, made by GNU Bison 2.3. */ -/* Skeleton parser for Yacc-like parsing with Bison, - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002 Free Software Foundation, Inc. +/* Skeleton interface for Bison's Yacc-like parsers in C + + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + 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 @@ -15,13 +17,21 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ + Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. */ + +/* As a special exception, you may create a larger work that contains + part or all of the Bison parser skeleton and distribute that work + under terms of your choice, so long as that work isn't itself a + parser generator using the skeleton or a modified version thereof + as a parser skeleton. Alternatively, if you modify or redistribute + the parser skeleton itself, you may (at your option) remove this + special exception, which will cause the skeleton and the resulting + Bison output files to be licensed under the GNU General Public + License without this special exception. -/* As a special exception, when this file is copied by Bison into a - Bison output file, you may use that output file without restriction. - This special exception was added by the Free Software Foundation - in version 1.24 of Bison. */ + This special exception was added by the Free Software Foundation in + version 2.2 of Bison. */ /* Tokens. */ #ifndef YYTOKENTYPE @@ -377,6 +387,7 @@ TYPECAST = 603 }; #endif +/* Tokens. */ #define ABORT_P 258 #define ABSOLUTE_P 259 #define ACCESS 260 @@ -727,9 +738,10 @@ -#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) +#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED +typedef union YYSTYPE #line 106 "gram.y" -typedef union YYSTYPE { +{ int ival; char chr; char *str; @@ -760,9 +772,10 @@ typedef union YYSTYPE { InsertStmt *istmt; VariableSetStmt *vsetstmt; -} YYSTYPE; -/* Line 1240 of yacc.c. */ -#line 765 "gram.h" +} +/* Line 1529 of yacc.c. */ +#line 778 "gram.h" + YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 # define YYSTYPE_IS_TRIVIAL 1 @@ -770,5 +783,3 @@ typedef union YYSTYPE { extern YYSTYPE yylval; - - diff --git a/parser/pool_parser.h b/parser/pool_parser.h index 3766121b9..ac4657c09 100644 --- a/parser/pool_parser.h +++ b/parser/pool_parser.h @@ -1,26 +1,7 @@ #ifndef POOL_PARSER_H #define POOL_PARSER_H -/* bool */ -#ifndef bool -typedef char bool; -#endif - -#ifndef false -#define false ((bool) 0) -#endif - -#ifndef true -#define true ((bool) 1) -#endif - -#ifndef FALSE -#define FALSE ((bool) 0) -#endif - -#ifndef TRUE -#define TRUE ((bool) 1) -#endif +#include "../pool_type.h" /* integer */ typedef signed int int32; diff --git a/pcp/Makefile.in b/pcp/Makefile.in index 0f516cfdd..7063021da 100644 --- a/pcp/Makefile.in +++ b/pcp/Makefile.in @@ -46,7 +46,8 @@ subdir = pcp DIST_COMMON = $(include_HEADERS) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/configure.in +am__aclocal_m4_deps = $(top_srcdir)/ac_func_accept_argtypes.m4 \ + $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs @@ -146,6 +147,7 @@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ F77 = @F77@ FFLAGS = @FFLAGS@ +GREP = @GREP@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ @@ -177,12 +179,10 @@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ YACC = @YACC@ -ac_ct_AR = @ac_ct_AR@ +YFLAGS = @YFLAGS@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ ac_ct_F77 = @ac_ct_F77@ -ac_ct_RANLIB = @ac_ct_RANLIB@ -ac_ct_STRIP = @ac_ct_STRIP@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ @@ -199,6 +199,9 @@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ enable_rpath_FALSE = @enable_rpath_FALSE@ enable_rpath_TRUE = @enable_rpath_TRUE@ exec_prefix = @exec_prefix@ @@ -207,17 +210,21 @@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ +htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ +localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ +psdir = @psdir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ sysconfdir = @sysconfdir@ diff --git a/pcp_child.c b/pcp_child.c index bb06b8353..6aa88fde3 100644 --- a/pcp_child.c +++ b/pcp_child.c @@ -27,6 +27,8 @@ #include <sys/socket.h> #include <netinet/in.h> #include <sys/un.h> +#include <arpa/inet.h> +#include <netdb.h> #ifdef HAVE_NETINET_TCP_H #include <netinet/tcp.h> #endif @@ -61,6 +63,9 @@ static void unset_nonblock(int fd); static int user_authenticate(char *buf, char *passwd_file, char *salt, int salt_len); static void pool_random_salt(char *md5Salt); +extern int myargc; +extern char **myargv; + void pcp_do_child(int unix_fd, int inet_fd, char *pcp_conf_file) { @@ -75,8 +80,13 @@ pcp_do_child(int unix_fd, int inet_fd, char *pcp_conf_file) int rsize; char *buf = NULL; + char psbuf[NI_MAXHOST + 128]; + pool_debug("I am PCP %d", getpid()); + /* Identify myself via ps */ + init_ps_display("", "", "", ""); + gettimeofday(&uptime, NULL); srandom((unsigned int) (getpid() ^ uptime.tv_usec)); @@ -175,6 +185,9 @@ pcp_do_child(int unix_fd, int inet_fd, char *pcp_conf_file) /* process a request */ pool_debug("pcp_child: received PCP packet type of service '%c'", tos); + + set_ps_display("PCP: processing a request", false); + switch (tos) { case 'R': /* authentication */ @@ -224,7 +237,7 @@ pcp_do_child(int unix_fd, int inet_fd, char *pcp_conf_file) break; } - case 'M': + case 'M': /* md5 salt */ { int wsize; @@ -780,6 +793,8 @@ pcp_do_accept(int unix_fd, int inet_fd) int afd; int inet = 0; + set_ps_display("PCP: wait for connection request", false); + FD_ZERO(&readmask); FD_SET(unix_fd, &readmask); if (inet_fd) diff --git a/pgpool.conf.sample b/pgpool.conf.sample index 9bdfbb431..0391a244d 100644 --- a/pgpool.conf.sample +++ b/pgpool.conf.sample @@ -105,6 +105,14 @@ ignore_leading_white_space = false # debugging. log_statement = false +# If true, incoming connections will be printed to the log. +log_connections = false + +# If true, hostname will be shown in ps status. Also shown in +# connection log if log_connections = true. +# Be warned that this feature will add overhead to look up hostname. +log_hostname = false + # if non 0, run in parallel query mode parallel_mode = false @@ -130,3 +138,10 @@ system_db_password = '' #backend_hostname1 = 'host2' #backend_port1 = 5433 #backend_weight1 = 1 + +# - HBA - + +# If true, use pool_hba.conf for client authentication. In pgpool-II +# 1.1, the default value is false. The default value will be true in +# 1.2. +enable_pool_hba = false diff --git a/pool.h b/pool.h index a15053d8a..5461d66c3 100644 --- a/pool.h +++ b/pool.h @@ -45,6 +45,9 @@ /* PCP user/password file name */ #define PCP_PASSWD_FILE_NAME "pcp.conf" +/* HBA configuration file name */ +#define HBA_CONF_FILE_NAME "pool_hba.conf" + /* pid file directory */ #define DEFAULT_LOGDIR "/tmp" @@ -120,6 +123,11 @@ typedef struct { int replication_mode; /* replication mode */ int replication_strict; /* if non 0, wait for completion of the query sent to master to avoid deadlock */ + + int log_connections; /* 0:false, 1:true - logs incoming connections */ + int log_hostname; /* 0:false, 1:true - resolve hostname */ + int enable_pool_hba; /* 0:false, 1:true - enables pool_hba.conf file authentication */ + /* * if next PostgreSQL server does not respond in this milli * seconds, abort this session. this is not compatible with @@ -220,6 +228,15 @@ typedef struct { char kind; /* kind cache */ + /* + * frontend info needed for hba + */ + int protoVersion; + SockAddr raddr; + UserAuth auth_method; + char *auth_arg; + char *database; + char *username; } POOL_CONNECTION; /* @@ -352,6 +369,7 @@ extern int in_load_balance; /* non 0 if in load balance mode */ extern int selected_slot; /* selected DB node for load balance */ extern int master_slave_dml; /* non 0 if master/slave mode is specified in config file */ extern POOL_REQUEST_INFO *Req_info; +extern char remote_ps_data[]; /* used for set_ps_display */ /* * public functions @@ -473,6 +491,22 @@ extern int pool_query_cache_register(char kind, POOL_CONNECTION *frontend, char extern int pool_query_cache_table_exists(void); extern int pool_clear_cache_by_time(Interval *interval, int size); +/* pool_hba.c */ +extern void load_hba(char *hbapath); +extern void ClientAuthentication(POOL_CONNECTION *frontend); + +/* pool_ip.c */ +extern void pool_getnameinfo_all(SockAddr *saddr, char *remote_host, char *remote_port); + +/* strlcpy.c */ +extern size_t strlcpy(char *dst, const char *src, size_t siz); +/* ps_status.c */ +extern bool update_process_title; +extern char **save_ps_display_args(int argc, char **argv); +extern void init_ps_display(const char *username, const char *dbname, + const char *host_info, const char *initial_str); +extern void set_ps_display(const char *activity, bool force); +extern const char *get_ps_display(int *displen); #endif /* POOL_H */ diff --git a/pool_config.c b/pool_config.c index cc155097b..779a9a34a 100644 --- a/pool_config.c +++ b/pool_config.c @@ -1,31 +1,92 @@ -/* A lexical scanner generated by flex */ -/* Scanner skeleton version: - * $Header$ - */ +#line 3 "pool_config.c" + +#define YY_INT_ALIGNED short int + +/* A lexical scanner generated by flex */ #define FLEX_SCANNER #define YY_FLEX_MAJOR_VERSION 2 #define YY_FLEX_MINOR_VERSION 5 +#define YY_FLEX_SUBMINOR_VERSION 33 +#if YY_FLEX_SUBMINOR_VERSION > 0 +#define FLEX_BETA +#endif +/* First, we deal with platform-specific or compiler-specific issues. */ + +/* begin standard C headers. */ #include <stdio.h> -#include <unistd.h> +#include <string.h> +#include <errno.h> +#include <stdlib.h> +/* end standard C headers. */ -/* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */ -#ifdef c_plusplus -#ifndef __cplusplus -#define __cplusplus -#endif +/* flex integer type definitions */ + +#ifndef FLEXINT_H +#define FLEXINT_H + +/* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */ + +#if __STDC_VERSION__ >= 199901L + +/* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, + * if you want the limit (max/min) macros for int types. + */ +#ifndef __STDC_LIMIT_MACROS +#define __STDC_LIMIT_MACROS 1 #endif +#include <inttypes.h> +typedef int8_t flex_int8_t; +typedef uint8_t flex_uint8_t; +typedef int16_t flex_int16_t; +typedef uint16_t flex_uint16_t; +typedef int32_t flex_int32_t; +typedef uint32_t flex_uint32_t; +#else +typedef signed char flex_int8_t; +typedef short int flex_int16_t; +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 */ -#ifdef __cplusplus +/* Limits of integral types. */ +#ifndef INT8_MIN +#define INT8_MIN (-128) +#endif +#ifndef INT16_MIN +#define INT16_MIN (-32767-1) +#endif +#ifndef INT32_MIN +#define INT32_MIN (-2147483647-1) +#endif +#ifndef INT8_MAX +#define INT8_MAX (127) +#endif +#ifndef INT16_MAX +#define INT16_MAX (32767) +#endif +#ifndef INT32_MAX +#define INT32_MAX (2147483647) +#endif +#ifndef UINT8_MAX +#define UINT8_MAX (255U) +#endif +#ifndef UINT16_MAX +#define UINT16_MAX (65535U) +#endif +#ifndef UINT32_MAX +#define UINT32_MAX (4294967295U) +#endif -#include <stdlib.h> +#endif /* ! FLEXINT_H */ -/* Use prototypes in function declarations. */ -#define YY_USE_PROTOS +#ifdef __cplusplus /* The "const" storage-class-modifier is valid. */ #define YY_USE_CONST @@ -34,34 +95,17 @@ #if __STDC__ -#define YY_USE_PROTOS #define YY_USE_CONST #endif /* __STDC__ */ #endif /* ! __cplusplus */ -#ifdef __TURBOC__ - #pragma warn -rch - #pragma warn -use -#include <io.h> -#include <stdlib.h> -#define YY_USE_CONST -#define YY_USE_PROTOS -#endif - #ifdef YY_USE_CONST #define yyconst const #else #define yyconst #endif - -#ifdef YY_USE_PROTOS -#define YY_PROTO(proto) proto -#else -#define YY_PROTO(proto) () -#endif - /* Returned upon end-of-file. */ #define YY_NULL 0 @@ -76,71 +120,75 @@ * but we do it the disgusting crufty way forced on us by the ()-less * definition of BEGIN. */ -#define BEGIN yy_start = 1 + 2 * +#define BEGIN (yy_start) = 1 + 2 * /* Translate the current start state into a value that can be later handed * to BEGIN to return to the state. The YYSTATE alias is for lex * compatibility. */ -#define YY_START ((yy_start - 1) / 2) +#define YY_START (((yy_start) - 1) / 2) #define YYSTATE YY_START /* Action number for EOF rule of a given start state. */ #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) /* Special action meaning "start processing a new file". */ -#define YY_NEW_FILE yyrestart( yyin ) +#define YY_NEW_FILE yyrestart(yyin ) #define YY_END_OF_BUFFER_CHAR 0 /* Size of default input buffer. */ +#ifndef YY_BUF_SIZE #define YY_BUF_SIZE 16384 +#endif + +/* The state buf must be large enough to hold one state per character in the main buffer. + */ +#define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) +#ifndef YY_TYPEDEF_YY_BUFFER_STATE +#define YY_TYPEDEF_YY_BUFFER_STATE typedef struct yy_buffer_state *YY_BUFFER_STATE; +#endif extern int yyleng; + extern FILE *yyin, *yyout; #define EOB_ACT_CONTINUE_SCAN 0 #define EOB_ACT_END_OF_FILE 1 #define EOB_ACT_LAST_MATCH 2 -/* The funky do-while in the following #define is used to turn the definition - * int a single C statement (which needs a semi-colon terminator). This - * avoids problems with code like: - * - * if ( condition_holds ) - * yyless( 5 ); - * else - * do_something_else(); - * - * Prior to using the do-while the compiler would get upset at the - * "else" because it interpreted the "if" statement as being all - * done when it reached the ';' after the yyless() call. - */ - -/* Return all but the first 'n' matched characters back to the input stream. */ - + #define YY_LESS_LINENO(n) + +/* Return all but the first "n" matched characters back to the input stream. */ #define yyless(n) \ do \ { \ /* Undo effects of setting up yytext. */ \ - *yy_cp = yy_hold_char; \ + int yyless_macro_arg = (n); \ + YY_LESS_LINENO(yyless_macro_arg);\ + *yy_cp = (yy_hold_char); \ YY_RESTORE_YY_MORE_OFFSET \ - yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \ + (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ YY_DO_BEFORE_ACTION; /* set up yytext again */ \ } \ while ( 0 ) -#define unput(c) yyunput( c, yytext_ptr ) +#define unput(c) yyunput( c, (yytext_ptr) ) /* The following is because we cannot portably get our hands on size_t * (without autoconf's help, which isn't available because we want * flex-generated scanners to compile on their own). */ -typedef unsigned int yy_size_t; +#ifndef YY_TYPEDEF_YY_SIZE_T +#define YY_TYPEDEF_YY_SIZE_T +typedef unsigned int yy_size_t; +#endif +#ifndef YY_STRUCT_YY_BUFFER_STATE +#define YY_STRUCT_YY_BUFFER_STATE struct yy_buffer_state { FILE *yy_input_file; @@ -177,12 +225,16 @@ struct yy_buffer_state */ int yy_at_bol; + int yy_bs_lineno; /**< The line count. */ + int yy_bs_column; /**< The column count. */ + /* Whether to try to fill the input buffer when we reach the * end of it. */ int yy_fill_buffer; int yy_buffer_status; + #define YY_BUFFER_NEW 0 #define YY_BUFFER_NORMAL 1 /* When an EOF's been seen but there's still some text to process @@ -196,28 +248,38 @@ struct yy_buffer_state * just pointing yyin at a new input file. */ #define YY_BUFFER_EOF_PENDING 2 + }; +#endif /* !YY_STRUCT_YY_BUFFER_STATE */ -static YY_BUFFER_STATE yy_current_buffer = 0; +/* Stack of input buffers. */ +static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */ +static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */ +static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */ /* We provide macros for accessing buffer states in case in the * future we want to put the buffer states in a more general * "scanner state". + * + * Returns the top of the stack, or NULL. */ -#define YY_CURRENT_BUFFER yy_current_buffer +#define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ + ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ + : NULL) +/* Same as previous macro, but useful when we know that the buffer stack is not + * NULL or when we need an lvalue. For internal use only. + */ +#define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] /* 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; /* Points to current character in buffer. */ static char *yy_c_buf_p = (char *) 0; -static int yy_init = 1; /* whether we need to initialize */ +static int yy_init = 0; /* whether we need to initialize */ static int yy_start = 0; /* start state number */ /* Flag which is used to allow yywrap()'s to do buffer switches @@ -225,69 +287,95 @@ static int yy_start = 0; /* start state number */ */ static int yy_did_buffer_switch_on_eof; -void yyrestart YY_PROTO(( FILE *input_file )); +void yyrestart (FILE *input_file ); +void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ); +YY_BUFFER_STATE yy_create_buffer (FILE *file,int size ); +void yy_delete_buffer (YY_BUFFER_STATE b ); +void yy_flush_buffer (YY_BUFFER_STATE b ); +void yypush_buffer_state (YY_BUFFER_STATE new_buffer ); +void yypop_buffer_state (void ); -void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer )); -void yy_load_buffer_state YY_PROTO(( void )); -YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size )); -void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b )); -void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file )); -void yy_flush_buffer YY_PROTO(( YY_BUFFER_STATE b )); -#define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer ) +static void yyensure_buffer_stack (void ); +static void yy_load_buffer_state (void ); +static void yy_init_buffer (YY_BUFFER_STATE b,FILE *file ); -YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size )); -YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str )); -YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len )); +#define YY_FLUSH_BUFFER yy_flush_buffer(YY_CURRENT_BUFFER ) -static void *yy_flex_alloc YY_PROTO(( yy_size_t )); -static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t )); -static void yy_flex_free YY_PROTO(( void * )); +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 ); + +void *yyalloc (yy_size_t ); +void *yyrealloc (void *,yy_size_t ); +void yyfree (void * ); #define yy_new_buffer yy_create_buffer #define yy_set_interactive(is_interactive) \ { \ - if ( ! yy_current_buffer ) \ - yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \ - yy_current_buffer->yy_is_interactive = is_interactive; \ + if ( ! YY_CURRENT_BUFFER ){ \ + yyensure_buffer_stack (); \ + YY_CURRENT_BUFFER_LVALUE = \ + yy_create_buffer(yyin,YY_BUF_SIZE ); \ + } \ + YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ } #define yy_set_bol(at_bol) \ { \ - if ( ! yy_current_buffer ) \ - yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \ - yy_current_buffer->yy_at_bol = at_bol; \ + if ( ! YY_CURRENT_BUFFER ){\ + yyensure_buffer_stack (); \ + YY_CURRENT_BUFFER_LVALUE = \ + yy_create_buffer(yyin,YY_BUF_SIZE ); \ + } \ + YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ } -#define YY_AT_BOL() (yy_current_buffer->yy_at_bol) +#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) +/* Begin user sect3 */ #define yywrap() 1 #define YY_SKIP_YYWRAP + typedef unsigned char YY_CHAR; + FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0; + typedef int yy_state_type; + +extern int yylineno; + +int yylineno = 1; + extern char *yytext; #define yytext_ptr yytext -static yy_state_type yy_get_previous_state YY_PROTO(( void )); -static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state )); -static int yy_get_next_buffer YY_PROTO(( void )); -static void yy_fatal_error YY_PROTO(( yyconst char msg[] )); +static yy_state_type yy_get_previous_state (void ); +static yy_state_type yy_try_NUL_trans (yy_state_type current_state ); +static int yy_get_next_buffer (void ); +static void yy_fatal_error (yyconst char msg[] ); /* Done after the current pattern has been matched and before the * corresponding action - sets up yytext. */ #define YY_DO_BEFORE_ACTION \ - yytext_ptr = yy_bp; \ - yyleng = (int) (yy_cp - yy_bp); \ - yy_hold_char = *yy_cp; \ + (yytext_ptr) = yy_bp; \ + yyleng = (size_t) (yy_cp - yy_bp); \ + (yy_hold_char) = *yy_cp; \ *yy_cp = '\0'; \ - yy_c_buf_p = yy_cp; + (yy_c_buf_p) = yy_cp; #define YY_NUM_RULES 11 #define YY_END_OF_BUFFER 12 -static yyconst short int yy_accept[38] = +/* This struct is not used in this scanner, + but its presence is necessary. */ +struct yy_trans_info + { + flex_int32_t yy_verify; + flex_int32_t yy_nxt; + }; +static yyconst flex_int16_t yy_accept[38] = { 0, 0, 0, 12, 10, 2, 1, 10, 10, 10, 8, 7, 7, 9, 4, 2, 0, 3, 0, 5, 0, @@ -295,7 +383,7 @@ static yyconst short int yy_accept[38] = 5, 0, 0, 8, 7, 6, 0 } ; -static yyconst int yy_ec[256] = +static yyconst flex_int32_t yy_ec[256] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, @@ -327,13 +415,13 @@ static yyconst int yy_ec[256] = 15, 15, 15, 15, 15 } ; -static yyconst int yy_meta[19] = +static yyconst flex_int32_t yy_meta[19] = { 0, 1, 1, 2, 1, 1, 1, 3, 3, 3, 4, 4, 1, 5, 4, 3, 1, 3, 3 } ; -static yyconst short int yy_base[45] = +static yyconst flex_int16_t yy_base[45] = { 0, 0, 0, 61, 86, 58, 86, 55, 14, 23, 43, 10, 46, 86, 28, 47, 40, 86, 16, 86, 22, @@ -342,7 +430,7 @@ static yyconst short int yy_base[45] = 70, 75, 77, 80 } ; -static yyconst short int yy_def[45] = +static yyconst flex_int16_t yy_def[45] = { 0, 37, 1, 37, 37, 37, 37, 38, 39, 37, 40, 9, 9, 37, 41, 37, 38, 37, 39, 37, 42, @@ -351,7 +439,7 @@ static yyconst short int yy_def[45] = 37, 37, 37, 37 } ; -static yyconst short int yy_nxt[105] = +static yyconst flex_int16_t yy_nxt[105] = { 0, 4, 5, 6, 7, 8, 9, 9, 10, 4, 11, 12, 13, 14, 14, 14, 4, 14, 14, 19, 23, @@ -367,7 +455,7 @@ static yyconst short int yy_nxt[105] = 37, 37, 37, 37 } ; -static yyconst short int yy_chk[105] = +static yyconst flex_int16_t yy_chk[105] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 8, 11, @@ -386,6 +474,9 @@ static yyconst short int yy_chk[105] = static yy_state_type yy_last_accepting_state; static char *yy_last_accepting_cpos; +extern int yy_flex_debug; +int yy_flex_debug = 0; + /* The intent behind this definition is that it'll catch * any uses of REJECT which flex missed. */ @@ -395,7 +486,6 @@ static char *yy_last_accepting_cpos; #define YY_RESTORE_YY_MORE_OFFSET char *yytext; #line 1 "pool_config.l" -#define INITIAL 0 /* -*-pgsql-c-*- */ /* * @@ -450,9 +540,23 @@ static char **extract_string_tokens(char *str, char *delim, int *n); static int eval_logical(char *str); static void clear_host_entry(int slot); -#define YY_NEVER_INTERACTIVE 1 -#define YY_NO_UNPUT 1 -#line 456 "pool_config.c" +#line 544 "pool_config.c" + +#define INITIAL 0 + +#ifndef YY_NO_UNISTD_H +/* Special case for "unistd.h", since it is non-ANSI. We include it way + * down here because we want the user's section 1 to have been scanned first. + * The user has a chance to override it with an option. + */ +#include <unistd.h> +#endif + +#ifndef YY_EXTRA_TYPE +#define YY_EXTRA_TYPE void * +#endif + +static int yy_init_globals (void ); /* Macros after this point can all be overridden by user definitions in * section 1. @@ -460,65 +564,28 @@ static void clear_host_entry(int slot); #ifndef YY_SKIP_YYWRAP #ifdef __cplusplus -extern "C" int yywrap YY_PROTO(( void )); +extern "C" int yywrap (void ); #else -extern int yywrap YY_PROTO(( void )); +extern int yywrap (void ); #endif #endif -#ifndef YY_NO_UNPUT -static void yyunput YY_PROTO(( int c, char *buf_ptr )); -#endif - #ifndef yytext_ptr -static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int )); +static void yy_flex_strncpy (char *,yyconst char *,int ); #endif #ifdef YY_NEED_STRLEN -static int yy_flex_strlen YY_PROTO(( yyconst char * )); +static int yy_flex_strlen (yyconst char * ); #endif #ifndef YY_NO_INPUT -#ifdef __cplusplus -static int yyinput YY_PROTO(( void )); -#else -static int input YY_PROTO(( void )); -#endif -#endif - -#if YY_STACK_USED -static int yy_start_stack_ptr = 0; -static int yy_start_stack_depth = 0; -static int *yy_start_stack = 0; -#ifndef YY_NO_PUSH_STATE -static void yy_push_state YY_PROTO(( int new_state )); -#endif -#ifndef YY_NO_POP_STATE -static void yy_pop_state YY_PROTO(( void )); -#endif -#ifndef YY_NO_TOP_STATE -static int yy_top_state YY_PROTO(( void )); -#endif +#ifdef __cplusplus +static int yyinput (void ); #else -#define YY_NO_PUSH_STATE 1 -#define YY_NO_POP_STATE 1 -#define YY_NO_TOP_STATE 1 +static int input (void ); #endif -#ifdef YY_MALLOC_DECL -YY_MALLOC_DECL -#else -#if __STDC__ -#ifndef __cplusplus -#include <stdlib.h> -#endif -#else -/* Just try to get by without declaring the routines. This will fail - * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int) - * or sizeof(void*) != sizeof(int). - */ -#endif #endif /* Amount of stuff to slurp up with each read. */ @@ -527,7 +594,6 @@ YY_MALLOC_DECL #endif /* Copy whatever the last rule matched to the standard output. */ - #ifndef ECHO /* This used to be an fputs(), but since the string might contain NUL's, * we now use fwrite(). @@ -540,9 +606,10 @@ YY_MALLOC_DECL */ #ifndef YY_INPUT #define YY_INPUT(buf,result,max_size) \ - if ( yy_current_buffer->yy_is_interactive ) \ + if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ { \ - int c = '*', n; \ + int c = '*'; \ + size_t n; \ for ( n = 0; n < max_size && \ (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ buf[n] = (char) c; \ @@ -552,9 +619,22 @@ YY_MALLOC_DECL YY_FATAL_ERROR( "input in flex scanner failed" ); \ result = n; \ } \ - else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \ - && ferror( yyin ) ) \ - YY_FATAL_ERROR( "input in flex scanner failed" ); + else \ + { \ + errno=0; \ + while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \ + { \ + if( errno != EINTR) \ + { \ + YY_FATAL_ERROR( "input in flex scanner failed" ); \ + break; \ + } \ + errno=0; \ + clearerr(yyin); \ + } \ + }\ +\ + #endif /* No semi-colon after return; correct usage is to write "yyterminate();" - @@ -575,12 +655,18 @@ YY_MALLOC_DECL #define YY_FATAL_ERROR(msg) yy_fatal_error( msg ) #endif +/* end tables serialization structures and prototypes */ + /* Default declaration of generated scanner - a define so the user can * easily add parameters. */ #ifndef YY_DECL -#define YY_DECL int yylex YY_PROTO(( void )) -#endif +#define YY_DECL_IS_OURS 1 + +extern int yylex (void); + +#define YY_DECL int yylex (void) +#endif /* !YY_DECL */ /* Code executed at the beginning of each rule, after yytext and yyleng * have been set up. @@ -597,27 +683,29 @@ YY_MALLOC_DECL #define YY_RULE_SETUP \ YY_USER_ACTION +/** The main scanner function which does all the work. + */ YY_DECL - { +{ register yy_state_type yy_current_state; - register char *yy_cp = NULL, *yy_bp = NULL; + register char *yy_cp, *yy_bp; register int yy_act; - + #line 80 "pool_config.l" -#line 610 "pool_config.c" +#line 698 "pool_config.c" - if ( yy_init ) + if ( !(yy_init) ) { - yy_init = 0; + (yy_init) = 1; #ifdef YY_USER_INIT YY_USER_INIT; #endif - if ( ! yy_start ) - yy_start = 1; /* first start state */ + if ( ! (yy_start) ) + (yy_start) = 1; /* first start state */ if ( ! yyin ) yyin = stdin; @@ -625,34 +713,36 @@ YY_DECL if ( ! yyout ) yyout = stdout; - if ( ! yy_current_buffer ) - yy_current_buffer = - yy_create_buffer( yyin, YY_BUF_SIZE ); + if ( ! YY_CURRENT_BUFFER ) { + yyensure_buffer_stack (); + YY_CURRENT_BUFFER_LVALUE = + yy_create_buffer(yyin,YY_BUF_SIZE ); + } - yy_load_buffer_state(); + yy_load_buffer_state( ); } while ( 1 ) /* loops until end-of-file is reached */ { - yy_cp = yy_c_buf_p; + yy_cp = (yy_c_buf_p); /* Support of yytext. */ - *yy_cp = yy_hold_char; + *yy_cp = (yy_hold_char); /* yy_bp points to the position in yy_ch_buf of the start of * the current run. */ yy_bp = yy_cp; - yy_current_state = yy_start; + yy_current_state = (yy_start); yy_match: do { register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)]; if ( yy_accept[yy_current_state] ) { - yy_last_accepting_state = yy_current_state; - yy_last_accepting_cpos = yy_cp; + (yy_last_accepting_state) = yy_current_state; + (yy_last_accepting_cpos) = yy_cp; } while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { @@ -663,33 +753,28 @@ yy_match: yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; ++yy_cp; } - while ( yy_base[yy_current_state] != 86 ); + while ( yy_current_state != 37 ); + yy_cp = (yy_last_accepting_cpos); + yy_current_state = (yy_last_accepting_state); yy_find_action: yy_act = yy_accept[yy_current_state]; - if ( yy_act == 0 ) - { /* have to back up */ - yy_cp = yy_last_accepting_cpos; - yy_current_state = yy_last_accepting_state; - yy_act = yy_accept[yy_current_state]; - } YY_DO_BEFORE_ACTION; - do_action: /* This label is used only to access EOF actions. */ - switch ( yy_act ) { /* beginning of action switch */ case 0: /* must back up */ /* undo the effects of YY_DO_BEFORE_ACTION */ - *yy_cp = yy_hold_char; - yy_cp = yy_last_accepting_cpos; - yy_current_state = yy_last_accepting_state; + *yy_cp = (yy_hold_char); + yy_cp = (yy_last_accepting_cpos); + yy_current_state = (yy_last_accepting_state); goto yy_find_action; case 1: +/* rule 1 can match eol */ YY_RULE_SETUP #line 82 "pool_config.l" Lineno++; return POOL_EOL; @@ -700,8 +785,8 @@ YY_RULE_SETUP /* eat whitespace */ YY_BREAK case 3: -*yy_cp = yy_hold_char; /* undo effects of setting up yytext */ -yy_c_buf_p = yy_cp -= 1; +*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 84 "pool_config.l" @@ -747,33 +832,33 @@ YY_RULE_SETUP #line 95 "pool_config.l" ECHO; YY_BREAK -#line 751 "pool_config.c" +#line 836 "pool_config.c" case YY_STATE_EOF(INITIAL): yyterminate(); case YY_END_OF_BUFFER: { /* Amount of text matched not including the EOB char. */ - int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1; + int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1; /* Undo the effects of YY_DO_BEFORE_ACTION. */ - *yy_cp = yy_hold_char; + *yy_cp = (yy_hold_char); YY_RESTORE_YY_MORE_OFFSET - if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW ) + if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW ) { /* We're scanning a new file or input source. It's * possible that this happened because the user * just pointed yyin at a new source and called * yylex(). If so, then we have to assure - * consistency between yy_current_buffer and our + * consistency between YY_CURRENT_BUFFER and our * globals. Here is the right place to do so, because * this is the first action (other than possibly a * back-up) that will match for the new input source. */ - yy_n_chars = yy_current_buffer->yy_n_chars; - yy_current_buffer->yy_input_file = yyin; - yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL; + (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; + YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin; + YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; } /* Note that here we test for yy_c_buf_p "<=" to the position @@ -783,13 +868,13 @@ case YY_STATE_EOF(INITIAL): * end-of-buffer state). Contrast this with the test * in input(). */ - if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] ) + if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) { /* This was really a NUL. */ yy_state_type yy_next_state; - yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text; + (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text; - yy_current_state = yy_get_previous_state(); + yy_current_state = yy_get_previous_state( ); /* Okay, we're now positioned to make the NUL * transition. We couldn't have @@ -802,30 +887,31 @@ case YY_STATE_EOF(INITIAL): yy_next_state = yy_try_NUL_trans( yy_current_state ); - yy_bp = yytext_ptr + YY_MORE_ADJ; + yy_bp = (yytext_ptr) + YY_MORE_ADJ; if ( yy_next_state ) { /* Consume the NUL. */ - yy_cp = ++yy_c_buf_p; + yy_cp = ++(yy_c_buf_p); yy_current_state = yy_next_state; goto yy_match; } else { - yy_cp = yy_c_buf_p; + yy_cp = (yy_last_accepting_cpos); + yy_current_state = (yy_last_accepting_state); goto yy_find_action; } } - else switch ( yy_get_next_buffer() ) + else switch ( yy_get_next_buffer( ) ) { case EOB_ACT_END_OF_FILE: { - yy_did_buffer_switch_on_eof = 0; + (yy_did_buffer_switch_on_eof) = 0; - if ( yywrap() ) + if ( yywrap( ) ) { /* Note: because we've taken care in * yy_get_next_buffer() to have set up @@ -836,7 +922,7 @@ case YY_STATE_EOF(INITIAL): * YY_NULL, it'll still work - another * YY_NULL will get returned. */ - yy_c_buf_p = yytext_ptr + YY_MORE_ADJ; + (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ; yy_act = YY_STATE_EOF(YY_START); goto do_action; @@ -844,30 +930,30 @@ case YY_STATE_EOF(INITIAL): else { - if ( ! yy_did_buffer_switch_on_eof ) + if ( ! (yy_did_buffer_switch_on_eof) ) YY_NEW_FILE; } break; } case EOB_ACT_CONTINUE_SCAN: - yy_c_buf_p = - yytext_ptr + yy_amount_of_matched_text; + (yy_c_buf_p) = + (yytext_ptr) + yy_amount_of_matched_text; - yy_current_state = yy_get_previous_state(); + yy_current_state = yy_get_previous_state( ); - yy_cp = yy_c_buf_p; - yy_bp = yytext_ptr + YY_MORE_ADJ; + yy_cp = (yy_c_buf_p); + yy_bp = (yytext_ptr) + YY_MORE_ADJ; goto yy_match; case EOB_ACT_LAST_MATCH: - yy_c_buf_p = - &yy_current_buffer->yy_ch_buf[yy_n_chars]; + (yy_c_buf_p) = + &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)]; - yy_current_state = yy_get_previous_state(); + yy_current_state = yy_get_previous_state( ); - yy_cp = yy_c_buf_p; - yy_bp = yytext_ptr + YY_MORE_ADJ; + yy_cp = (yy_c_buf_p); + yy_bp = (yytext_ptr) + YY_MORE_ADJ; goto yy_find_action; } break; @@ -878,8 +964,7 @@ case YY_STATE_EOF(INITIAL): "fatal flex scanner internal error--no action found" ); } /* end of action switch */ } /* end of scanning one token */ - } /* end of yylex */ - +} /* end of yylex */ /* yy_get_next_buffer - try to read in a new buffer * @@ -888,21 +973,20 @@ case YY_STATE_EOF(INITIAL): * EOB_ACT_CONTINUE_SCAN - continue scanning from current position * EOB_ACT_END_OF_FILE - end of file */ - -static int yy_get_next_buffer() - { - register char *dest = yy_current_buffer->yy_ch_buf; - register char *source = yytext_ptr; +static int yy_get_next_buffer (void) +{ + register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; + register char *source = (yytext_ptr); register int number_to_move, i; int ret_val; - if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] ) + if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) YY_FATAL_ERROR( "fatal flex scanner internal error--end of buffer missed" ); - if ( yy_current_buffer->yy_fill_buffer == 0 ) + if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 ) { /* Don't try to fill the buffer, so this is an EOF. */ - if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 ) + if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 ) { /* We matched a single character, the EOB, so * treat this as a final EOF. @@ -922,34 +1006,30 @@ static int yy_get_next_buffer() /* Try to read more data. */ /* First move last chars to start of buffer. */ - number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1; + number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1; for ( i = 0; i < number_to_move; ++i ) *(dest++) = *(source++); - if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING ) + if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING ) /* don't do the read, it's not guaranteed to return an EOF, * just force an EOF */ - yy_current_buffer->yy_n_chars = yy_n_chars = 0; + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0; else { - int num_to_read = - yy_current_buffer->yy_buf_size - number_to_move - 1; + int num_to_read = + YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; while ( num_to_read <= 0 ) { /* Not enough room in the buffer - grow it. */ -#ifdef YY_USES_REJECT - YY_FATAL_ERROR( -"input buffer overflow, can't enlarge buffer because scanner uses REJECT" ); -#else /* just a shorter name for the current buffer */ - YY_BUFFER_STATE b = yy_current_buffer; + YY_BUFFER_STATE b = YY_CURRENT_BUFFER; int yy_c_buf_p_offset = - (int) (yy_c_buf_p - b->yy_ch_buf); + (int) ((yy_c_buf_p) - b->yy_ch_buf); if ( b->yy_is_our_buffer ) { @@ -962,8 +1042,7 @@ static int yy_get_next_buffer() b->yy_ch_buf = (char *) /* Include room in for 2 EOB chars. */ - yy_flex_realloc( (void *) b->yy_ch_buf, - b->yy_buf_size + 2 ); + yyrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 ); } else /* Can't grow it, we don't own it. */ @@ -973,35 +1052,35 @@ static int yy_get_next_buffer() YY_FATAL_ERROR( "fatal error - scanner input buffer overflow" ); - yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset]; + (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset]; - num_to_read = yy_current_buffer->yy_buf_size - + num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; -#endif + } if ( num_to_read > YY_READ_BUF_SIZE ) num_to_read = YY_READ_BUF_SIZE; /* Read in more data. */ - YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]), - yy_n_chars, num_to_read ); + YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), + (yy_n_chars), num_to_read ); - yy_current_buffer->yy_n_chars = yy_n_chars; + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); } - if ( yy_n_chars == 0 ) + if ( (yy_n_chars) == 0 ) { if ( number_to_move == YY_MORE_ADJ ) { ret_val = EOB_ACT_END_OF_FILE; - yyrestart( yyin ); + yyrestart(yyin ); } else { ret_val = EOB_ACT_LAST_MATCH; - yy_current_buffer->yy_buffer_status = + YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_EOF_PENDING; } } @@ -1009,32 +1088,31 @@ static int yy_get_next_buffer() else ret_val = EOB_ACT_CONTINUE_SCAN; - yy_n_chars += number_to_move; - yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR; - yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR; + (yy_n_chars) += number_to_move; + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; - yytext_ptr = &yy_current_buffer->yy_ch_buf[0]; + (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0]; return ret_val; - } - +} /* yy_get_previous_state - get the state just before the EOB char was reached */ -static yy_state_type yy_get_previous_state() - { + static yy_state_type yy_get_previous_state (void) +{ register yy_state_type yy_current_state; register char *yy_cp; + + yy_current_state = (yy_start); - yy_current_state = yy_start; - - for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp ) + for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) { register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); if ( yy_accept[yy_current_state] ) { - yy_last_accepting_state = yy_current_state; - yy_last_accepting_cpos = yy_cp; + (yy_last_accepting_state) = yy_current_state; + (yy_last_accepting_cpos) = yy_cp; } while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { @@ -1046,30 +1124,23 @@ static yy_state_type yy_get_previous_state() } return yy_current_state; - } - +} /* yy_try_NUL_trans - try to make a transition on the NUL character * * synopsis * next_state = yy_try_NUL_trans( current_state ); */ - -#ifdef YY_USE_PROTOS -static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state ) -#else -static yy_state_type yy_try_NUL_trans( yy_current_state ) -yy_state_type yy_current_state; -#endif - { + static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state ) +{ register int yy_is_jam; - register char *yy_cp = yy_c_buf_p; + register char *yy_cp = (yy_c_buf_p); register YY_CHAR yy_c = 1; if ( yy_accept[yy_current_state] ) { - yy_last_accepting_state = yy_current_state; - yy_last_accepting_cpos = yy_cp; + (yy_last_accepting_state) = yy_current_state; + (yy_last_accepting_cpos) = yy_cp; } while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { @@ -1081,81 +1152,36 @@ yy_state_type yy_current_state; yy_is_jam = (yy_current_state == 37); return yy_is_jam ? 0 : yy_current_state; - } - - -#ifndef YY_NO_UNPUT -#ifdef YY_USE_PROTOS -static void yyunput( int c, register char *yy_bp ) -#else -static void yyunput( c, yy_bp ) -int c; -register char *yy_bp; -#endif - { - register char *yy_cp = yy_c_buf_p; - - /* undo effects of setting up yytext */ - *yy_cp = yy_hold_char; - - if ( yy_cp < yy_current_buffer->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 char *dest = &yy_current_buffer->yy_ch_buf[ - yy_current_buffer->yy_buf_size + 2]; - register char *source = - &yy_current_buffer->yy_ch_buf[number_to_move]; - - while ( source > yy_current_buffer->yy_ch_buf ) - *--dest = *--source; - - yy_cp += (int) (dest - source); - yy_bp += (int) (dest - source); - yy_current_buffer->yy_n_chars = - yy_n_chars = yy_current_buffer->yy_buf_size; - - if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 ) - YY_FATAL_ERROR( "flex scanner push-back overflow" ); - } - - *--yy_cp = (char) c; - - - yytext_ptr = yy_bp; - yy_hold_char = *yy_cp; - yy_c_buf_p = yy_cp; - } -#endif /* ifndef YY_NO_UNPUT */ - +} #ifndef YY_NO_INPUT #ifdef __cplusplus -static int yyinput() + static int yyinput (void) #else -static int input() + static int input (void) #endif - { - int c; - *yy_c_buf_p = yy_hold_char; +{ + int c; + + *(yy_c_buf_p) = (yy_hold_char); - if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR ) + if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR ) { /* yy_c_buf_p now points to the character we want to return. * If this occurs *before* the EOB characters, then it's a * valid NUL; if not, then we've hit the end of the buffer. */ - if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] ) + if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) /* This was really a NUL. */ - *yy_c_buf_p = '\0'; + *(yy_c_buf_p) = '\0'; else { /* need more input */ - int offset = yy_c_buf_p - yytext_ptr; - ++yy_c_buf_p; + int offset = (yy_c_buf_p) - (yytext_ptr); + ++(yy_c_buf_p); - switch ( yy_get_next_buffer() ) + switch ( yy_get_next_buffer( ) ) { case EOB_ACT_LAST_MATCH: /* This happens because yy_g_n_b() @@ -1169,16 +1195,16 @@ static int input() */ /* Reset buffer status. */ - yyrestart( yyin ); + yyrestart(yyin ); - /* fall through */ + /*FALLTHROUGH*/ case EOB_ACT_END_OF_FILE: { - if ( yywrap() ) + if ( yywrap( ) ) return EOF; - if ( ! yy_did_buffer_switch_on_eof ) + if ( ! (yy_did_buffer_switch_on_eof) ) YY_NEW_FILE; #ifdef __cplusplus return yyinput(); @@ -1188,90 +1214,92 @@ static int input() } case EOB_ACT_CONTINUE_SCAN: - yy_c_buf_p = yytext_ptr + offset; + (yy_c_buf_p) = (yytext_ptr) + offset; break; } } } - c = *(unsigned char *) yy_c_buf_p; /* cast for 8-bit char's */ - *yy_c_buf_p = '\0'; /* preserve yytext */ - yy_hold_char = *++yy_c_buf_p; - + c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */ + *(yy_c_buf_p) = '\0'; /* preserve yytext */ + (yy_hold_char) = *++(yy_c_buf_p); return c; - } -#endif /* YY_NO_INPUT */ - -#ifdef YY_USE_PROTOS -void yyrestart( FILE *input_file ) -#else -void yyrestart( input_file ) -FILE *input_file; -#endif - { - if ( ! yy_current_buffer ) - yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); +} +#endif /* ifndef YY_NO_INPUT */ - yy_init_buffer( yy_current_buffer, input_file ); - yy_load_buffer_state(); +/** Immediately switch to a different input stream. + * @param input_file A readable stream. + * + * @note This function does not reset the start condition to @c INITIAL . + */ + void yyrestart (FILE * input_file ) +{ + + if ( ! YY_CURRENT_BUFFER ){ + yyensure_buffer_stack (); + YY_CURRENT_BUFFER_LVALUE = + yy_create_buffer(yyin,YY_BUF_SIZE ); } + yy_init_buffer(YY_CURRENT_BUFFER,input_file ); + yy_load_buffer_state( ); +} -#ifdef YY_USE_PROTOS -void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer ) -#else -void yy_switch_to_buffer( new_buffer ) -YY_BUFFER_STATE new_buffer; -#endif - { - if ( yy_current_buffer == new_buffer ) +/** Switch to a different input buffer. + * @param new_buffer The new input buffer. + * + */ + void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ) +{ + + /* TODO. We should be able to replace this entire function body + * with + * yypop_buffer_state(); + * yypush_buffer_state(new_buffer); + */ + yyensure_buffer_stack (); + if ( YY_CURRENT_BUFFER == new_buffer ) return; - if ( yy_current_buffer ) + if ( YY_CURRENT_BUFFER ) { /* Flush out information for old buffer. */ - *yy_c_buf_p = yy_hold_char; - yy_current_buffer->yy_buf_pos = yy_c_buf_p; - yy_current_buffer->yy_n_chars = yy_n_chars; + *(yy_c_buf_p) = (yy_hold_char); + YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); } - yy_current_buffer = new_buffer; - yy_load_buffer_state(); + YY_CURRENT_BUFFER_LVALUE = new_buffer; + yy_load_buffer_state( ); /* We don't actually know whether we did this switch during * EOF (yywrap()) processing, but the only time this flag * is looked at is after yywrap() is called, so it's safe * to go ahead and always set it. */ - yy_did_buffer_switch_on_eof = 1; - } - - -#ifdef YY_USE_PROTOS -void yy_load_buffer_state( void ) -#else -void yy_load_buffer_state() -#endif - { - yy_n_chars = yy_current_buffer->yy_n_chars; - yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos; - yyin = yy_current_buffer->yy_input_file; - yy_hold_char = *yy_c_buf_p; - } + (yy_did_buffer_switch_on_eof) = 1; +} +static void yy_load_buffer_state (void) +{ + (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; + (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; + yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; + (yy_hold_char) = *(yy_c_buf_p); +} -#ifdef YY_USE_PROTOS -YY_BUFFER_STATE yy_create_buffer( FILE *file, int size ) -#else -YY_BUFFER_STATE yy_create_buffer( file, size ) -FILE *file; -int size; -#endif - { +/** Allocate and initialize an input buffer state. + * @param file A readable stream. + * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE. + * + * @return the allocated buffer state. + */ + YY_BUFFER_STATE yy_create_buffer (FILE * file, int size ) +{ YY_BUFFER_STATE b; - - b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) ); + + b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); if ( ! b ) YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); @@ -1280,75 +1308,71 @@ int size; /* yy_ch_buf has to be 2 characters longer than the size given because * we need to put in 2 end-of-buffer characters. */ - b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 ); + b->yy_ch_buf = (char *) yyalloc(b->yy_buf_size + 2 ); if ( ! b->yy_ch_buf ) YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); b->yy_is_our_buffer = 1; - yy_init_buffer( b, file ); + yy_init_buffer(b,file ); return b; - } - +} -#ifdef YY_USE_PROTOS -void yy_delete_buffer( YY_BUFFER_STATE b ) -#else -void yy_delete_buffer( b ) -YY_BUFFER_STATE b; -#endif - { +/** Destroy the buffer. + * @param b a buffer created with yy_create_buffer() + * + */ + void yy_delete_buffer (YY_BUFFER_STATE b ) +{ + if ( ! b ) return; - if ( b == yy_current_buffer ) - yy_current_buffer = (YY_BUFFER_STATE) 0; + if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */ + YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; if ( b->yy_is_our_buffer ) - yy_flex_free( (void *) b->yy_ch_buf ); + yyfree((void *) b->yy_ch_buf ); - yy_flex_free( (void *) b ); - } - - - -#ifdef YY_USE_PROTOS -void yy_init_buffer( YY_BUFFER_STATE b, FILE *file ) -#else -void yy_init_buffer( b, file ) -YY_BUFFER_STATE b; -FILE *file; -#endif + yyfree((void *) b ); +} +/* 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. + */ + static void yy_init_buffer (YY_BUFFER_STATE b, FILE * file ) - { - yy_flush_buffer( b ); +{ + int oerrno = errno; + + yy_flush_buffer(b ); b->yy_input_file = file; b->yy_fill_buffer = 1; -#if YY_ALWAYS_INTERACTIVE - b->yy_is_interactive = 1; -#else -#if YY_NEVER_INTERACTIVE - b->yy_is_interactive = 0; -#else - b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0; -#endif -#endif - } - - -#ifdef YY_USE_PROTOS -void yy_flush_buffer( YY_BUFFER_STATE b ) -#else -void yy_flush_buffer( b ) -YY_BUFFER_STATE b; -#endif + /* If b is the current buffer, then yy_init_buffer was _probably_ + * called from yyrestart() or through yy_get_next_buffer. + * In that case, we don't want to reset the lineno or column. + */ + if (b != YY_CURRENT_BUFFER){ + b->yy_bs_lineno = 1; + b->yy_bs_column = 0; + } + + b->yy_is_interactive = 0; + + errno = oerrno; +} - { - if ( ! b ) +/** Discard all buffered characters. On the next scan, YY_INPUT will be called. + * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER. + * + */ + void yy_flush_buffer (YY_BUFFER_STATE b ) +{ + if ( ! b ) return; b->yy_n_chars = 0; @@ -1365,29 +1389,121 @@ YY_BUFFER_STATE b; b->yy_at_bol = 1; b->yy_buffer_status = YY_BUFFER_NEW; - if ( b == yy_current_buffer ) - yy_load_buffer_state(); + if ( b == YY_CURRENT_BUFFER ) + yy_load_buffer_state( ); +} + +/** Pushes the new state onto the stack. The new state becomes + * the current state. This function will allocate the stack + * if necessary. + * @param new_buffer The new state. + * + */ +void yypush_buffer_state (YY_BUFFER_STATE new_buffer ) +{ + if (new_buffer == NULL) + return; + + yyensure_buffer_stack(); + + /* This block is copied from yy_switch_to_buffer. */ + if ( YY_CURRENT_BUFFER ) + { + /* Flush out information for old buffer. */ + *(yy_c_buf_p) = (yy_hold_char); + YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); + } + + /* Only push if top exists. Otherwise, replace top. */ + if (YY_CURRENT_BUFFER) + (yy_buffer_stack_top)++; + YY_CURRENT_BUFFER_LVALUE = new_buffer; + + /* copied from yy_switch_to_buffer. */ + yy_load_buffer_state( ); + (yy_did_buffer_switch_on_eof) = 1; +} + +/** Removes and deletes the top of the stack, if present. + * The next element becomes the new top. + * + */ +void yypop_buffer_state (void) +{ + if (!YY_CURRENT_BUFFER) + return; + + yy_delete_buffer(YY_CURRENT_BUFFER ); + YY_CURRENT_BUFFER_LVALUE = NULL; + if ((yy_buffer_stack_top) > 0) + --(yy_buffer_stack_top); + + if (YY_CURRENT_BUFFER) { + yy_load_buffer_state( ); + (yy_did_buffer_switch_on_eof) = 1; } +} +/* Allocates the stack if it does not exist. + * Guarantees space for at least one push. + */ +static void yyensure_buffer_stack (void) +{ + int num_to_alloc; + + if (!(yy_buffer_stack)) { + + /* First allocation is just for 2 elements, since we don't know if this + * scanner will even need a stack. We use 2 instead of 1 to avoid an + * immediate realloc on the next call. + */ + num_to_alloc = 1; + (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc + (num_to_alloc * sizeof(struct yy_buffer_state*) + ); + + memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); + + (yy_buffer_stack_max) = num_to_alloc; + (yy_buffer_stack_top) = 0; + return; + } -#ifndef YY_NO_SCAN_BUFFER -#ifdef YY_USE_PROTOS -YY_BUFFER_STATE yy_scan_buffer( char *base, yy_size_t size ) -#else -YY_BUFFER_STATE yy_scan_buffer( base, size ) -char *base; -yy_size_t size; -#endif - { - YY_BUFFER_STATE b; + if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ + /* Increase the buffer to prepare for a possible push. */ + int grow_size = 8 /* arbitrary grow size */; + + num_to_alloc = (yy_buffer_stack_max) + grow_size; + (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc + ((yy_buffer_stack), + num_to_alloc * sizeof(struct yy_buffer_state*) + ); + + /* zero only the new slots.*/ + memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); + (yy_buffer_stack_max) = num_to_alloc; + } +} + +/** Setup the input buffer state to scan directly from a user-specified character buffer. + * @param base the character buffer + * @param size the size in bytes of the character buffer + * + * @return the newly allocated buffer state object. + */ +YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) +{ + YY_BUFFER_STATE b; + if ( size < 2 || base[size-2] != YY_END_OF_BUFFER_CHAR || base[size-1] != YY_END_OF_BUFFER_CHAR ) /* They forgot to leave room for the EOB's. */ return 0; - b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) ); + b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); if ( ! b ) YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" ); @@ -1401,56 +1517,51 @@ yy_size_t size; b->yy_fill_buffer = 0; b->yy_buffer_status = YY_BUFFER_NEW; - yy_switch_to_buffer( b ); + yy_switch_to_buffer(b ); return b; - } -#endif - - -#ifndef YY_NO_SCAN_STRING -#ifdef YY_USE_PROTOS -YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str ) -#else -YY_BUFFER_STATE yy_scan_string( yy_str ) -yyconst char *yy_str; -#endif - { - int len; - for ( len = 0; yy_str[len]; ++len ) - ; - - return yy_scan_bytes( yy_str, len ); - } -#endif +} +/** Setup the input buffer state to scan a string. The next call to yylex() will + * scan from a @e copy of @a str. + * @param yystr a NUL-terminated string to scan + * + * @return the newly allocated buffer state object. + * @note If you want to scan bytes that may contain NUL values, then use + * yy_scan_bytes() instead. + */ +YY_BUFFER_STATE yy_scan_string (yyconst char * yystr ) +{ + + return yy_scan_bytes(yystr,strlen(yystr) ); +} -#ifndef YY_NO_SCAN_BYTES -#ifdef YY_USE_PROTOS -YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len ) -#else -YY_BUFFER_STATE yy_scan_bytes( bytes, len ) -yyconst char *bytes; -int len; -#endif - { +/** 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. + * + * @return the newly allocated buffer state object. + */ +YY_BUFFER_STATE yy_scan_bytes (yyconst char * yybytes, int _yybytes_len ) +{ YY_BUFFER_STATE b; char *buf; yy_size_t n; int i; - + /* Get memory for full buffer, including space for trailing EOB's. */ - n = len + 2; - buf = (char *) yy_flex_alloc( n ); + n = _yybytes_len + 2; + buf = (char *) yyalloc(n ); if ( ! buf ) YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" ); - for ( i = 0; i < len; ++i ) - buf[i] = bytes[i]; + for ( i = 0; i < _yybytes_len; ++i ) + buf[i] = yybytes[i]; - buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR; + buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; - b = yy_scan_buffer( buf, n ); + b = yy_scan_buffer(buf,n ); if ( ! b ) YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" ); @@ -1460,148 +1571,196 @@ int len; b->yy_is_our_buffer = 1; return b; - } +} + +#ifndef YY_EXIT_FAILURE +#define YY_EXIT_FAILURE 2 #endif +static void yy_fatal_error (yyconst char* msg ) +{ + (void) fprintf( stderr, "%s\n", msg ); + exit( YY_EXIT_FAILURE ); +} -#ifndef YY_NO_PUSH_STATE -#ifdef YY_USE_PROTOS -static void yy_push_state( int new_state ) -#else -static void yy_push_state( new_state ) -int new_state; -#endif - { - if ( yy_start_stack_ptr >= yy_start_stack_depth ) - { - yy_size_t new_size; +/* Redefine yyless() so it works in section 3 code. */ - yy_start_stack_depth += YY_START_STACK_INCR; - new_size = yy_start_stack_depth * sizeof( int ); +#undef yyless +#define yyless(n) \ + do \ + { \ + /* Undo effects of setting up yytext. */ \ + int yyless_macro_arg = (n); \ + YY_LESS_LINENO(yyless_macro_arg);\ + yytext[yyleng] = (yy_hold_char); \ + (yy_c_buf_p) = yytext + yyless_macro_arg; \ + (yy_hold_char) = *(yy_c_buf_p); \ + *(yy_c_buf_p) = '\0'; \ + yyleng = yyless_macro_arg; \ + } \ + while ( 0 ) - if ( ! yy_start_stack ) - yy_start_stack = (int *) yy_flex_alloc( new_size ); +/* Accessor methods (get/set functions) to struct members. */ - else - yy_start_stack = (int *) yy_flex_realloc( - (void *) yy_start_stack, new_size ); +/** Get the current line number. + * + */ +int yyget_lineno (void) +{ + + return yylineno; +} - if ( ! yy_start_stack ) - YY_FATAL_ERROR( - "out of memory expanding start-condition stack" ); - } +/** Get the input stream. + * + */ +FILE *yyget_in (void) +{ + return yyin; +} - yy_start_stack[yy_start_stack_ptr++] = YY_START; +/** Get the output stream. + * + */ +FILE *yyget_out (void) +{ + return yyout; +} - BEGIN(new_state); - } -#endif +/** Get the length of the current token. + * + */ +int yyget_leng (void) +{ + return yyleng; +} +/** Get the current token. + * + */ -#ifndef YY_NO_POP_STATE -static void yy_pop_state() - { - if ( --yy_start_stack_ptr < 0 ) - YY_FATAL_ERROR( "start-condition stack underflow" ); +char *yyget_text (void) +{ + return yytext; +} - BEGIN(yy_start_stack[yy_start_stack_ptr]); - } -#endif +/** Set the current line number. + * @param line_number + * + */ +void yyset_lineno (int line_number ) +{ + + yylineno = line_number; +} +/** Set the input stream. This does not discard the current + * input buffer. + * @param in_str A readable stream. + * + * @see yy_switch_to_buffer + */ +void yyset_in (FILE * in_str ) +{ + yyin = in_str ; +} -#ifndef YY_NO_TOP_STATE -static int yy_top_state() - { - return yy_start_stack[yy_start_stack_ptr - 1]; - } -#endif +void yyset_out (FILE * out_str ) +{ + yyout = out_str ; +} -#ifndef YY_EXIT_FAILURE -#define YY_EXIT_FAILURE 2 -#endif +int yyget_debug (void) +{ + return yy_flex_debug; +} + +void yyset_debug (int bdebug ) +{ + yy_flex_debug = bdebug ; +} -#ifdef YY_USE_PROTOS -static void yy_fatal_error( yyconst char msg[] ) +static int yy_init_globals (void) +{ + /* Initialization is the same as for the non-reentrant scanner. + * This function is called from yylex_destroy(), so don't allocate here. + */ + + (yy_buffer_stack) = 0; + (yy_buffer_stack_top) = 0; + (yy_buffer_stack_max) = 0; + (yy_c_buf_p) = (char *) 0; + (yy_init) = 0; + (yy_start) = 0; + +/* Defined in main.c */ +#ifdef YY_STDINIT + yyin = stdin; + yyout = stdout; #else -static void yy_fatal_error( msg ) -char msg[]; + yyin = (FILE *) 0; + yyout = (FILE *) 0; #endif - { - (void) fprintf( stderr, "%s\n", msg ); - exit( YY_EXIT_FAILURE ); - } + /* For future reference: Set errno on error, since we are called by + * yylex_init() + */ + return 0; +} +/* yylex_destroy is for both reentrant and non-reentrant scanners. */ +int yylex_destroy (void) +{ + + /* Pop the buffer stack, destroying each element. */ + while(YY_CURRENT_BUFFER){ + yy_delete_buffer(YY_CURRENT_BUFFER ); + YY_CURRENT_BUFFER_LVALUE = NULL; + yypop_buffer_state(); + } -/* Redefine yyless() so it works in section 3 code. */ + /* Destroy the stack itself. */ + yyfree((yy_buffer_stack) ); + (yy_buffer_stack) = NULL; -#undef yyless -#define yyless(n) \ - do \ - { \ - /* Undo effects of setting up yytext. */ \ - yytext[yyleng] = yy_hold_char; \ - yy_c_buf_p = yytext + n; \ - yy_hold_char = *yy_c_buf_p; \ - *yy_c_buf_p = '\0'; \ - yyleng = n; \ - } \ - while ( 0 ) + /* Reset the globals. This is important in a non-reentrant scanner so the next time + * yylex() is called, initialization will occur. */ + yy_init_globals( ); + return 0; +} -/* Internal utility routines. */ +/* + * Internal utility routines. + */ #ifndef yytext_ptr -#ifdef YY_USE_PROTOS -static void yy_flex_strncpy( char *s1, yyconst char *s2, int n ) -#else -static void yy_flex_strncpy( s1, s2, n ) -char *s1; -yyconst char *s2; -int n; -#endif - { +static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) +{ register int i; for ( i = 0; i < n; ++i ) s1[i] = s2[i]; - } +} #endif #ifdef YY_NEED_STRLEN -#ifdef YY_USE_PROTOS -static int yy_flex_strlen( yyconst char *s ) -#else -static int yy_flex_strlen( s ) -yyconst char *s; -#endif - { +static int yy_flex_strlen (yyconst char * s ) +{ register int n; for ( n = 0; s[n]; ++n ) ; return n; - } +} #endif - -#ifdef YY_USE_PROTOS -static void *yy_flex_alloc( yy_size_t size ) -#else -static void *yy_flex_alloc( size ) -yy_size_t size; -#endif - { +void *yyalloc (yy_size_t size ) +{ return (void *) malloc( size ); - } +} -#ifdef YY_USE_PROTOS -static void *yy_flex_realloc( void *ptr, yy_size_t size ) -#else -static void *yy_flex_realloc( ptr, size ) -void *ptr; -yy_size_t size; -#endif - { +void *yyrealloc (void * ptr, yy_size_t size ) +{ /* The cast to (char *) in the following accommodates both * implementations that use char* generic pointers, and those * that use void* generic pointers. It works with the latter @@ -1610,28 +1769,19 @@ yy_size_t size; * as though doing an assignment. */ return (void *) realloc( (char *) ptr, size ); - } +} -#ifdef YY_USE_PROTOS -static void yy_flex_free( void *ptr ) -#else -static void yy_flex_free( ptr ) -void *ptr; -#endif - { - free( ptr ); - } +void yyfree (void * ptr ) +{ + free( (char *) ptr ); /* see yyrealloc() for (char *) cast */ +} + +#define YYTABLES_NAME "yytables" -#if YY_MAIN -int main() - { - yylex(); - return 0; - } -#endif #line 95 "pool_config.l" + int pool_get_config(char *confpath) { FILE *fd; @@ -1673,6 +1823,10 @@ int pool_get_config(char *confpath) pool_config->connection_life_time = 0; pool_config->child_max_connections = 0; pool_config->logdir = DEFAULT_LOGDIR; + pool_config->log_statement = 0; + pool_config->log_connections = 0; + pool_config->log_hostname = 0; + pool_config->enable_pool_hba = 0; pool_config->replication_mode = 0; pool_config->replication_strict = 1; @@ -1690,7 +1844,6 @@ int pool_get_config(char *confpath) pool_config->health_check_user = "nobody"; pool_config->insert_lock = 0; pool_config->ignore_leading_white_space = 0; - pool_config->log_statement = 0; pool_config->parallel_mode = 0; pool_config->enable_query_cache = 0; pool_config->system_db_hostname = "localhost"; @@ -1942,6 +2095,42 @@ int pool_get_config(char *confpath) } pool_config->logdir = str; } + else if (!strcmp(key, "log_connections")) + { + int v = eval_logical(yytext); + + if (v < 0) + { + pool_error("pool_config: invalid value %s for %s", yytext, key); + fclose(fd); + return(-1); + } + pool_config->log_connections = v; + } + else if (!strcmp(key, "log_hostname")) + { + int v = eval_logical(yytext); + + if (v < 0) + { + pool_error("pool_config: invalid value %s for %s", yytext, key); + fclose(fd); + return(-1); + } + pool_config->log_hostname = v; + } + else if (!strcmp(key, "enable_pool_hba")) + { + int v = eval_logical(yytext); + + if (v < 0) + { + pool_error("pool_config: invalid value %s for %s", yytext, key); + fclose(fd); + return(-1); + } + pool_config->enable_pool_hba = v; + } else if (!strcmp(key, "backend_socket_dir")) { char *str; @@ -2600,3 +2789,4 @@ static void print_host_entry(int slot) } #endif + diff --git a/pool_config.l b/pool_config.l index a86c6f5cb..cf2a5633c 100644 --- a/pool_config.l +++ b/pool_config.l @@ -135,6 +135,10 @@ int pool_get_config(char *confpath) pool_config->connection_life_time = 0; pool_config->child_max_connections = 0; pool_config->logdir = DEFAULT_LOGDIR; + pool_config->log_statement = 0; + pool_config->log_connections = 0; + pool_config->log_hostname = 0; + pool_config->enable_pool_hba = 0; pool_config->replication_mode = 0; pool_config->replication_strict = 1; @@ -152,7 +156,6 @@ int pool_get_config(char *confpath) pool_config->health_check_user = "nobody"; pool_config->insert_lock = 0; pool_config->ignore_leading_white_space = 0; - pool_config->log_statement = 0; pool_config->parallel_mode = 0; pool_config->enable_query_cache = 0; pool_config->system_db_hostname = "localhost"; @@ -404,6 +407,42 @@ int pool_get_config(char *confpath) } pool_config->logdir = str; } + else if (!strcmp(key, "log_connections")) + { + int v = eval_logical(yytext); + + if (v < 0) + { + pool_error("pool_config: invalid value %s for %s", yytext, key); + fclose(fd); + return(-1); + } + pool_config->log_connections = v; + } + else if (!strcmp(key, "log_hostname")) + { + int v = eval_logical(yytext); + + if (v < 0) + { + pool_error("pool_config: invalid value %s for %s", yytext, key); + fclose(fd); + return(-1); + } + pool_config->log_hostname = v; + } + else if (!strcmp(key, "enable_pool_hba")) + { + int v = eval_logical(yytext); + + if (v < 0) + { + pool_error("pool_config: invalid value %s for %s", yytext, key); + fclose(fd); + return(-1); + } + pool_config->enable_pool_hba = v; + } else if (!strcmp(key, "backend_socket_dir")) { char *str; diff --git a/pool_process_query.c b/pool_process_query.c index f3ffac525..5c754b972 100644 --- a/pool_process_query.c +++ b/pool_process_query.c @@ -171,6 +171,8 @@ static POOL_STATUS read_kind_from_one_backend(POOL_CONNECTION *frontend, POOL_CO static POOL_STATUS read_kind_from_backend(POOL_CONNECTION *frontend, POOL_CONNECTION_POOL *backend, char *kind); static POOL_STATUS ParallelForwardToFrontend(char kind, POOL_CONNECTION *frontend, POOL_CONNECTION *backend, char *database, bool send_to_frontend); +static void query_ps_status(char *query, POOL_CONNECTION_POOL *backend); /* show ps status */ + static int is_select_pgcatalog = 0; static int is_select_for_update = 0; /* also for SELECT ... INTO */ static char *parsed_query = NULL; @@ -767,6 +769,9 @@ static POOL_STATUS SimpleQuery(POOL_CONNECTION *frontend, string = query; } + /* show ps status */ + query_ps_status(string, backend); + /* log query to log file if neccessary */ if (pool_config->log_statement) { @@ -877,8 +882,18 @@ static POOL_STATUS SimpleQuery(POOL_CONNECTION *frontend, /* process status reporting? */ if (strncasecmp(sq, string, strlen(sq)) == 0) { + StartupPacket *sp; + char psbuf[1024]; + pool_debug("process reporting"); process_reporting(frontend, backend); + + /* show ps status */ + sp = MASTER_CONNECTION(backend)->sp; + snprintf(psbuf, sizeof(psbuf), "%s %s %s idle", + sp->user, sp->database, remote_ps_data); + set_ps_display(psbuf, false); + free_parser(); return POOL_CONTINUE; } @@ -1214,6 +1229,8 @@ static POOL_STATUS Sync(POOL_CONNECTION *frontend, static POOL_STATUS ReadyForQuery(POOL_CONNECTION *frontend, POOL_CONNECTION_POOL *backend, int send_ready) { + StartupPacket *sp; + char psbuf[1024]; int i; /* if a transaction is started for insert lock, we need to close it. */ @@ -1305,6 +1322,16 @@ static POOL_STATUS ReadyForQuery(POOL_CONNECTION *frontend, #ifdef NOT_USED return ProcessFrontendResponse(frontend, backend); #endif + + sp = MASTER_CONNECTION(backend)->sp; + if (MASTER(backend)->tstate == 'T') + snprintf(psbuf, sizeof(psbuf), "%s %s %s idle in transaction", + sp->user, sp->database, remote_ps_data); + else + snprintf(psbuf, sizeof(psbuf), "%s %s %s idle", + sp->user, sp->database, remote_ps_data); + set_ps_display(psbuf, false); + return POOL_CONTINUE; } @@ -2648,6 +2675,21 @@ static void process_reporting(POOL_CONNECTION *frontend, POOL_CONNECTION_POOL *b strncpy(status[i].desc, "if non 0, logs all SQL statements", MAXDESCLEN); i++; + strncpy(status[i].name, "log_connections", MAXNAMELEN); + snprintf(status[i].value, MAXVALLEN, "%d", pool_config->log_connections); + strncpy(status[i].desc, "if true, print incoming connections to the log", MAXDESCLEN); + i++; + + strncpy(status[i].name, "log_hostname", MAXNAMELEN); + snprintf(status[i].value, MAXVALLEN, "%d", pool_config->log_hostname); + strncpy(status[i].desc, "if true, resolve hostname for ps and log print", MAXDESCLEN); + i++; + + strncpy(status[i].name, "enable_pool_hba", MAXNAMELEN); + snprintf(status[i].value, MAXVALLEN, "%d", pool_config->enable_pool_hba); + strncpy(status[i].desc, "if true, use pool_hba.conf for client authentication", MAXDESCLEN); + i++; + strncpy(status[i].name, "parallel_mode", MAXNAMELEN); snprintf(status[i].value, MAXVALLEN, "%d", pool_config->parallel_mode); strncpy(status[i].desc, "if non 0, run in parallel query mode", MAXDESCLEN); @@ -4451,3 +4493,32 @@ query_cache_register(char kind, POOL_CONNECTION *frontend, char *database, char } } } + +static void query_ps_status(char *query, POOL_CONNECTION_POOL *backend) +{ + StartupPacket *sp; + char psbuf[1024]; + int i; + + if (*query == '\0') + return; + + sp = MASTER_CONNECTION(backend)->sp; + i = snprintf(psbuf, sizeof(psbuf), "%s %s %s ", + sp->user, sp->database, remote_ps_data); + + /* skip spaces */ + while (*query && isspace(*query)) + query++; + + for (; i< sizeof(psbuf); i++) + { + if (!*query || isspace(*query)) + break; + + psbuf[i] = toupper(*query++); + } + psbuf[i] = '\0'; + + set_ps_display(psbuf, false); +} diff --git a/pool_query_cache.c b/pool_query_cache.c index 21eed868f..0c45be205 100644 --- a/pool_query_cache.c +++ b/pool_query_cache.c @@ -545,7 +545,7 @@ static int ForwardCacheToFrontend(POOL_CONNECTION *frontend, char *cache, char t int sendlen; char *binary_cache = NULL; - binary_cache = PQunescapeBytea(cache, &sendlen); + binary_cache = (char *)PQunescapeBytea((unsigned char *)cache, (unsigned int *)&sendlen); if (malloc_failed(binary_cache)) return -1; diff --git a/pool_type.h b/pool_type.h index cd66b782b..0f092fab3 100644 --- a/pool_type.h +++ b/pool_type.h @@ -26,7 +26,36 @@ #ifndef POOL_TYPE_H #define POOL_TYPE_H +#include "config.h" #include <sys/types.h> +#include <sys/socket.h> + +/* Define common boolean type. C++ and BEOS already has it so exclude them. */ +#ifdef c_plusplus +#ifndef __cplusplus +#define __cplusplus +#endif /* __cplusplus */ +#endif /* c_plusplus */ + +#ifndef __BEOS__ +#ifndef __cplusplus +#ifndef bool +typedef char bool; +#endif +#ifndef true +#define true ((bool) 1) +#endif +#ifndef TRUE +#define TRUE ((bool) 1) +#endif +#ifndef false +#define false ((bool) 0) +#endif +#ifndef FALSE +#define FALSE ((bool) 0) +#endif +#endif /* not C++ */ +#endif /* __BEOS__ */ /* * startup packet definitions (v2) stolen from PostgreSQL @@ -127,5 +156,83 @@ typedef struct { BACKEND_STATUS system_db_status; } SystemDBInfo; +/* + * It seems that sockaddr_storage is now commonly used in place of sockaddr. + * So, define it if it is not define yet, and create new SockAddr structure + * that uses sockaddr_storage. + */ +#ifdef HAVE_STRUCT_SOCKADDR_STORAGE + +#ifndef HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY +#ifdef HAVE_STRUCT_SOCKADDR_STORAGE___SS_FAMILY +#define ss_family __ss_family +#else +#error struct sockaddr_storage does not provide an ss_family member +#endif /* HAVE_STRUCT_SOCKADDR_STORAGE___SS_FAMILY */ +#endif /* HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY */ + +#ifdef HAVE_STRUCT_SOCKADDR_STORAGE___SS_LEN +#define ss_len __ss_len +#define HAVE_STRUCT_SOCKADDR_STORAGE_SS_LEN 1 +#endif /* HAVE_STRUCT_SOCKADDR_STORAGE___SS_LEN */ + +#else /* !HAVE_STRUCT_SOCKADDR_STORAGE */ + +/* Define a struct sockaddr_storage if we don't have one. */ +struct sockaddr_storage +{ + union + { + struct sockaddr sa; /* get the system-dependent fields */ + long int ss_align; /* ensures struct is properly aligned. original uses int64 */ + char ss_pad[128]; /* ensures struct has desired size */ + } + ss_stuff; +}; + +#define ss_family ss_stuff.sa.sa_family +/* It should have an ss_len field if sockaddr has sa_len. */ +#ifdef HAVE_STRUCT_SOCKADDR_SA_LEN +#define ss_len ss_stuff.sa.sa_len +#define HAVE_STRUCT_SOCKADDR_STORAGE_SS_LEN 1 +#endif +#endif /* HAVE_STRUCT_SOCKADDR_STORAGE */ + +typedef struct +{ + struct sockaddr_storage addr; + /* ACCEPT_TYPE_ARG3 - Third argument type of accept(). + * It is defined in ac_func_accept_argtypes.m4 + */ + ACCEPT_TYPE_ARG3 salen; +} +SockAddr; + +/* UserAuth type used for HBA which indicates the authentication method */ +typedef enum UserAuth +{ + uaReject, + /* uaKrb4, */ + /* uaKrb5, */ + uaTrust + /* uaIdent, */ + /* uaPassword, */ + /* uaCrypt, */ + /* uaMD5 */ +#ifdef USE_PAM + ,uaPAM +#endif /* USE_PAM */ +} +UserAuth; + +#define AUTH_REQ_OK 0 /* User is authenticated */ +#define AUTH_REQ_KRB4 1 /* Kerberos V4 */ +#define AUTH_REQ_KRB5 2 /* Kerberos V5 */ +#define AUTH_REQ_PASSWORD 3 /* Password */ +#define AUTH_REQ_CRYPT 4 /* crypt password */ +#define AUTH_REQ_MD5 5 /* md5 password */ +#define AUTH_REQ_SCM_CREDS 6 /* transfer SCM credentials */ + +typedef unsigned int AuthRequest; #endif /* POOL_TYPE_H */ diff --git a/sample/pgpool.pam b/sample/pgpool.pam new file mode 100644 index 000000000..320f086f5 --- /dev/null +++ b/sample/pgpool.pam @@ -0,0 +1,3 @@ +#%PAM-1.0 +auth required pam_permit.so +account required pam_permit.so [parent: 26be3e9e9571]