diff --git a/.compat-sap-c++-7.metadata b/.compat-sap-c++-7.metadata new file mode 100644 index 0000000..1fdf288 --- /dev/null +++ b/.compat-sap-c++-7.metadata @@ -0,0 +1,2 @@ +df3ff377895cf96b3439e107e62142bcbed8d046 SOURCES/gcc-7.2.1-20170829.tar.bz2 +5ef03ca7aee134fe7dfecb6c9d048799f0810278 SOURCES/mpc-0.8.1.tar.gz diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7bb4b4c --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +SOURCES/gcc-7.2.1-20170829.tar.bz2 +SOURCES/mpc-0.8.1.tar.gz diff --git a/SOURCES/gcc7-Wno-format-security.patch b/SOURCES/gcc7-Wno-format-security.patch new file mode 100644 index 0000000..cb21e5d --- /dev/null +++ b/SOURCES/gcc7-Wno-format-security.patch @@ -0,0 +1,27 @@ +2017-02-25 Jakub Jelinek + + * configure.ac: When adding -Wno-format, also add -Wno-format-security. + * configure: Regenerated. + +--- gcc/configure.ac.jj 2017-02-13 12:20:53.000000000 +0100 ++++ gcc/configure.ac 2017-02-25 12:42:32.859175403 +0100 +@@ -481,7 +481,7 @@ AC_ARG_ENABLE(build-format-warnings, + AS_HELP_STRING([--disable-build-format-warnings],[don't use -Wformat while building GCC]), + [],[enable_build_format_warnings=yes]) + AS_IF([test $enable_build_format_warnings = no], +- [wf_opt=-Wno-format],[wf_opt=]) ++ [wf_opt="-Wno-format -Wno-format-security"],[wf_opt=]) + ACX_PROG_CXX_WARNING_OPTS( + m4_quote(m4_do([-W -Wall -Wno-narrowing -Wwrite-strings ], + [-Wcast-qual $wf_opt])), [loose_warn]) +--- gcc/configure.jj 2017-02-13 12:20:52.000000000 +0100 ++++ gcc/configure 2017-02-25 12:42:50.041946391 +0100 +@@ -6647,7 +6647,7 @@ else + fi + + if test $enable_build_format_warnings = no; then : +- wf_opt=-Wno-format ++ wf_opt="-Wno-format -Wno-format-security" + else + wf_opt= + fi diff --git a/SOURCES/gcc7-aarch64-async-unw-tables.patch b/SOURCES/gcc7-aarch64-async-unw-tables.patch new file mode 100644 index 0000000..feec149 --- /dev/null +++ b/SOURCES/gcc7-aarch64-async-unw-tables.patch @@ -0,0 +1,35 @@ +2014-04-07 Richard Henderson + + * common/config/aarch64/aarch64-common.c (TARGET_OPTION_INIT_STRUCT): + Define. + (aarch64_option_init_struct): New function. + +--- gcc/common/config/aarch64/aarch64-common.c ++++ gcc/common/config/aarch64/aarch64-common.c +@@ -39,6 +39,9 @@ + #undef TARGET_OPTION_OPTIMIZATION_TABLE + #define TARGET_OPTION_OPTIMIZATION_TABLE aarch_option_optimization_table + ++#undef TARGET_OPTION_INIT_STRUCT ++#define TARGET_OPTION_INIT_STRUCT aarch64_option_init_struct ++ + /* Set default optimization options. */ + static const struct default_options aarch_option_optimization_table[] = + { +@@ -47,6 +50,16 @@ static const struct default_options aarch_option_optimization_table[] = + { OPT_LEVELS_NONE, 0, NULL, 0 } + }; + ++/* Implement TARGET_OPTION_INIT_STRUCT. */ ++ ++static void ++aarch64_option_init_struct (struct gcc_options *opts) ++{ ++ /* By default, always emit DWARF-2 unwind info. This allows debugging ++ without maintaining a stack frame back-chain. */ ++ opts->x_flag_asynchronous_unwind_tables = 1; ++} ++ + /* Implement TARGET_HANDLE_OPTION. + This function handles the target specific options for CPU/target selection. + diff --git a/SOURCES/gcc7-alt-compat-test.patch b/SOURCES/gcc7-alt-compat-test.patch new file mode 100644 index 0000000..3907d55 --- /dev/null +++ b/SOURCES/gcc7-alt-compat-test.patch @@ -0,0 +1,49 @@ +--- gcc/testsuite/g++.dg/compat/struct-layout-1_generate.c.jj 2011-01-03 06:50:42.000000000 -0500 ++++ gcc/testsuite/g++.dg/compat/struct-layout-1_generate.c 2011-02-18 06:28:53.858200077 -0500 +@@ -1501,6 +1501,8 @@ generate_random_tests (enum FEATURE feat + int i, r; + if (len > 'z' - 'a' + 1) + abort (); ++ if (getenv ("ALT_CXX_UNDER_TEST") != NULL) ++ features &= ~FEATURE_VECTOR; + memset (e, 0, sizeof (e)); + r = generate_random (); + if ((r & 7) == 0) +--- gcc/testsuite/g++.dg/compat/compat.exp.jj 2011-01-03 06:50:42.000000000 -0500 ++++ gcc/testsuite/g++.dg/compat/compat.exp 2011-02-18 06:30:54.248200398 -0500 +@@ -116,7 +116,12 @@ if [info exists ALT_CXX_UNDER_TEST] then + } + + # Main loop. +-foreach src [lsort [find $srcdir/$subdir *_main.C]] { ++set tests [lsort [find $srcdir/$subdir *_main.C]] ++if { $use_alt != 0 } then { ++ set tests [prune $tests $srcdir/$subdir/decimal/*] ++} ++ ++foreach src $tests { + # If we're only testing specific files and this isn't one of them, skip it. + if ![runtest_file_p $runtests $src] then { + continue +--- gcc/testsuite/gcc.dg/compat/struct-layout-1_generate.c.jj 2011-01-03 06:49:58.000000000 -0500 ++++ gcc/testsuite/gcc.dg/compat/struct-layout-1_generate.c 2011-02-18 06:27:54.922262671 -0500 +@@ -1912,6 +1912,8 @@ generate_random_tests (enum FEATURE feat + int i, r; + if (len > 'z' - 'a' + 1) + abort (); ++ if (getenv ("ALT_CC_UNDER_TEST") != NULL) ++ features &= ~FEATURE_VECTOR; + memset (e, 0, sizeof (e)); + r = generate_random (); + if ((r & 7) == 0) +--- gcc/testsuite/lib/c-compat.exp.jj 2011-01-03 06:48:38.000000000 -0500 ++++ gcc/testsuite/lib/c-compat.exp 2011-02-18 06:38:19.124265008 -0500 +@@ -75,7 +75,7 @@ proc compat_setup_dfp { } { + # If there is an alternate compiler, does it support decimal float types? + if { $compat_have_dfp == 1 && $compat_use_alt == 1 && $compat_same_alt == 0 } { + compat-use-alt-compiler +- set compat_have_dfp [check_effective_target_dfprt_nocache] ++ set compat_have_dfp 0 + compat-use-tst-compiler + verbose "compat_have_dfp for alt compiler: $compat_have_dfp" 2 + } diff --git a/SOURCES/gcc7-foffload-default.patch b/SOURCES/gcc7-foffload-default.patch new file mode 100644 index 0000000..771e1e0 --- /dev/null +++ b/SOURCES/gcc7-foffload-default.patch @@ -0,0 +1,117 @@ +2017-01-20 Jakub Jelinek + + * gcc.c (offload_targets_default): New variable. + (process_command): Set it if -foffload is defaulted. + (driver::maybe_putenv_OFFLOAD_TARGETS): Add OFFLOAD_TARGET_DEFAULT=1 + into environment if -foffload has been defaulted. + * lto-wrapper.c (OFFLOAD_TARGET_DEFAULT_ENV): Define. + (compile_images_for_offload_targets): If OFFLOAD_TARGET_DEFAULT + is in the environment, don't fail if corresponding mkoffload + can't be found. Free and clear offload_names if no valid offload + is found. +libgomp/ + * target.c (gomp_load_plugin_for_device): If a plugin can't be + dlopened, assume it has no devices silently. + +--- gcc/gcc.c.jj 2017-01-17 10:28:40.000000000 +0100 ++++ gcc/gcc.c 2017-01-20 16:26:29.649962902 +0100 +@@ -290,6 +290,10 @@ static const char *spec_host_machine = D + + static char *offload_targets = NULL; + ++/* Set to true if -foffload has not been used and offload_targets ++ is set to the configured in default. */ ++static bool offload_targets_default; ++ + /* Nonzero if cross-compiling. + When -b is used, the value comes from the `specs' file. */ + +@@ -4457,7 +4461,10 @@ process_command (unsigned int decoded_op + /* If the user didn't specify any, default to all configured offload + targets. */ + if (ENABLE_OFFLOADING && offload_targets == NULL) +- handle_foffload_option (OFFLOAD_TARGETS); ++ { ++ handle_foffload_option (OFFLOAD_TARGETS); ++ offload_targets_default = true; ++ } + + if (output_file + && strcmp (output_file, "-") != 0 +@@ -7693,6 +7700,8 @@ driver::maybe_putenv_OFFLOAD_TARGETS () + obstack_grow (&collect_obstack, offload_targets, + strlen (offload_targets) + 1); + xputenv (XOBFINISH (&collect_obstack, char *)); ++ if (offload_targets_default) ++ xputenv ("OFFLOAD_TARGET_DEFAULT=1"); + } + + free (offload_targets); +--- gcc/lto-wrapper.c.jj 2017-01-01 12:45:34.000000000 +0100 ++++ gcc/lto-wrapper.c 2017-01-20 16:34:18.294016997 +0100 +@@ -52,6 +52,7 @@ along with GCC; see the file COPYING3. + /* Environment variable, used for passing the names of offload targets from GCC + driver to lto-wrapper. */ + #define OFFLOAD_TARGET_NAMES_ENV "OFFLOAD_TARGET_NAMES" ++#define OFFLOAD_TARGET_DEFAULT_ENV "OFFLOAD_TARGET_DEFAULT" + + enum lto_mode_d { + LTO_MODE_NONE, /* Not doing LTO. */ +@@ -790,8 +791,10 @@ compile_images_for_offload_targets (unsi + if (!target_names) + return; + unsigned num_targets = parse_env_var (target_names, &names, NULL); ++ const char *target_names_default = getenv (OFFLOAD_TARGET_DEFAULT_ENV); + + int next_name_entry = 0; ++ bool hsa_seen = false; + const char *compiler_path = getenv ("COMPILER_PATH"); + if (!compiler_path) + goto out; +@@ -804,18 +807,32 @@ compile_images_for_offload_targets (unsi + /* HSA does not use LTO-like streaming and a different compiler, skip + it. */ + if (strcmp (names[i], "hsa") == 0) +- continue; ++ { ++ hsa_seen = true; ++ continue; ++ } + + offload_names[next_name_entry] + = compile_offload_image (names[i], compiler_path, in_argc, in_argv, + compiler_opts, compiler_opt_count, + linker_opts, linker_opt_count); + if (!offload_names[next_name_entry]) +- fatal_error (input_location, +- "problem with building target image for %s\n", names[i]); ++ { ++ if (target_names_default != NULL) ++ continue; ++ fatal_error (input_location, ++ "problem with building target image for %s\n", ++ names[i]); ++ } + next_name_entry++; + } + ++ if (next_name_entry == 0 && !hsa_seen) ++ { ++ free (offload_names); ++ offload_names = NULL; ++ } ++ + out: + free_array_of_ptrs ((void **) names, num_targets); + } +--- libgomp/target.c.jj 2017-01-01 12:45:52.000000000 +0100 ++++ libgomp/target.c 2017-01-20 20:12:13.756710875 +0100 +@@ -2356,7 +2356,7 @@ gomp_load_plugin_for_device (struct gomp + + void *plugin_handle = dlopen (plugin_name, RTLD_LAZY); + if (!plugin_handle) +- goto dl_fail; ++ return 0; + + /* Check if all required functions are available in the plugin and store + their handlers. None of the symbols can legitimately be NULL, diff --git a/SOURCES/gcc7-hack.patch b/SOURCES/gcc7-hack.patch new file mode 100644 index 0000000..4f3070f --- /dev/null +++ b/SOURCES/gcc7-hack.patch @@ -0,0 +1,135 @@ +--- libada/Makefile.in.jj 2009-01-14 12:07:35.000000000 +0100 ++++ libada/Makefile.in 2009-01-15 14:25:33.000000000 +0100 +@@ -66,18 +66,40 @@ libsubdir := $(libdir)/gcc/$(target_nonc + ADA_RTS_DIR=$(GCC_DIR)/ada/rts$(subst /,_,$(MULTISUBDIR)) + ADA_RTS_SUBDIR=./rts$(subst /,_,$(MULTISUBDIR)) + ++DEFAULTMULTIFLAGS := ++ifeq ($(MULTISUBDIR),) ++targ:=$(subst -, ,$(target)) ++arch:=$(word 1,$(targ)) ++ifeq ($(words $(targ)),2) ++osys:=$(word 2,$(targ)) ++else ++osys:=$(word 3,$(targ)) ++endif ++ifeq ($(strip $(filter-out i%86 x86_64 powerpc% ppc% s390% sparc% linux%, $(arch) $(osys))),) ++ifeq ($(shell $(CC) $(CFLAGS) -print-multi-os-directory),../lib64) ++DEFAULTMULTIFLAGS := -m64 ++else ++ifeq ($(strip $(filter-out s390%, $(arch))),) ++DEFAULTMULTIFLAGS := -m31 ++else ++DEFAULTMULTIFLAGS := -m32 ++endif ++endif ++endif ++endif ++ + # exeext should not be used because it's the *host* exeext. We're building + # a *target* library, aren't we?!? Likewise for CC. Still, provide bogus + # definitions just in case something slips through the safety net provided + # by recursive make invocations in gcc/ada/Makefile.in + LIBADA_FLAGS_TO_PASS = \ + "MAKEOVERRIDES=" \ +- "LDFLAGS=$(LDFLAGS)" \ ++ "LDFLAGS=$(LDFLAGS) $(DEFAULTMULTIFLAGS)" \ + "LN_S=$(LN_S)" \ + "SHELL=$(SHELL)" \ +- "GNATLIBFLAGS=$(GNATLIBFLAGS) $(MULTIFLAGS)" \ +- "GNATLIBCFLAGS=$(GNATLIBCFLAGS) $(MULTIFLAGS)" \ +- "GNATLIBCFLAGS_FOR_C=$(GNATLIBCFLAGS_FOR_C) $(MULTIFLAGS)" \ ++ "GNATLIBFLAGS=$(GNATLIBFLAGS) $(MULTIFLAGS) $(DEFAULTMULTIFLAGS)" \ ++ "GNATLIBCFLAGS=$(GNATLIBCFLAGS) $(MULTIFLAGS) $(DEFAULTMULTIFLAGS)" \ ++ "GNATLIBCFLAGS_FOR_C=$(GNATLIBCFLAGS_FOR_C) $(MULTIFLAGS) $(DEFAULTMULTIFLAGS)" \ + "PICFLAG_FOR_TARGET=$(PICFLAG)" \ + "THREAD_KIND=$(THREAD_KIND)" \ + "TRACE=$(TRACE)" \ +@@ -88,7 +110,7 @@ LIBADA_FLAGS_TO_PASS = \ + "exeext=.exeext.should.not.be.used " \ + 'CC=the.host.compiler.should.not.be.needed' \ + "GCC_FOR_TARGET=$(CC)" \ +- "CFLAGS=$(CFLAGS)" ++ "CFLAGS=$(CFLAGS) $(DEFAULTMULTIFLAGS)" + + # Rules to build gnatlib. + .PHONY: gnatlib gnatlib-plain gnatlib-sjlj gnatlib-zcx gnatlib-shared osconstool +--- gcc/ada/sem_util.adb (revision 161677) ++++ gcc/ada/sem_util.adb (working copy) +@@ -5487,7 +5487,7 @@ package body Sem_Util is + Exp : Node_Id; + Assn : Node_Id; + Choice : Node_Id; +- Comp_Type : Entity_Id; ++ Comp_Type : Entity_Id := Empty; + Is_Array_Aggr : Boolean; + + begin +--- config-ml.in.jj 2010-06-30 09:50:44.000000000 +0200 ++++ config-ml.in 2010-07-02 21:24:17.994211151 +0200 +@@ -511,6 +511,8 @@ multi-do: + ADAFLAGS="$(ADAFLAGS) $${flags}" \ + prefix="$(prefix)" \ + exec_prefix="$(exec_prefix)" \ ++ mandir="$(mandir)" \ ++ infodir="$(infodir)" \ + GOCFLAGS="$(GOCFLAGS) $${flags}" \ + CXXFLAGS="$(CXXFLAGS) $${flags}" \ + LIBCFLAGS="$(LIBCFLAGS) $${flags}" \ +--- libcpp/macro.c.jj 2015-01-14 11:01:34.000000000 +0100 ++++ libcpp/macro.c 2015-01-14 14:22:19.286949884 +0100 +@@ -2947,8 +2947,6 @@ create_iso_definition (cpp_reader *pfile + cpp_token *token; + const cpp_token *ctoken; + bool following_paste_op = false; +- const char *paste_op_error_msg = +- N_("'##' cannot appear at either end of a macro expansion"); + unsigned int num_extra_tokens = 0; + + /* Get the first token of the expansion (or the '(' of a +@@ -3059,7 +3057,8 @@ create_iso_definition (cpp_reader *pfile + function-like macros, but not at the end. */ + if (following_paste_op) + { +- cpp_error (pfile, CPP_DL_ERROR, paste_op_error_msg); ++ cpp_error (pfile, CPP_DL_ERROR, ++ "'##' cannot appear at either end of a macro expansion"); + return false; + } + break; +@@ -3072,7 +3071,8 @@ create_iso_definition (cpp_reader *pfile + function-like macros, but not at the beginning. */ + if (macro->count == 1) + { +- cpp_error (pfile, CPP_DL_ERROR, paste_op_error_msg); ++ cpp_error (pfile, CPP_DL_ERROR, ++ "'##' cannot appear at either end of a macro expansion"); + return false; + } + +--- libcpp/expr.c.jj 2015-01-14 11:01:34.000000000 +0100 ++++ libcpp/expr.c 2015-01-14 14:35:52.851002344 +0100 +@@ -672,16 +672,17 @@ cpp_classify_number (cpp_reader *pfile, + if ((result & CPP_N_WIDTH) == CPP_N_LARGE + && CPP_OPTION (pfile, cpp_warn_long_long)) + { +- const char *message = CPP_OPTION (pfile, cplusplus) +- ? N_("use of C++11 long long integer constant") +- : N_("use of C99 long long integer constant"); +- + if (CPP_OPTION (pfile, c99)) + cpp_warning_with_line (pfile, CPP_W_LONG_LONG, virtual_location, +- 0, message); ++ 0, CPP_OPTION (pfile, cplusplus) ++ ? N_("use of C++11 long long integer constant") ++ : N_("use of C99 long long integer constant")); + else + cpp_pedwarning_with_line (pfile, CPP_W_LONG_LONG, +- virtual_location, 0, message); ++ virtual_location, 0, ++ CPP_OPTION (pfile, cplusplus) ++ ? N_("use of C++11 long long integer constant") ++ : N_("use of C99 long long integer constant")); + } + + result |= CPP_N_INTEGER; diff --git a/SOURCES/gcc7-i386-libgomp.patch b/SOURCES/gcc7-i386-libgomp.patch new file mode 100644 index 0000000..520561e --- /dev/null +++ b/SOURCES/gcc7-i386-libgomp.patch @@ -0,0 +1,11 @@ +--- libgomp/configure.tgt.jj 2008-01-10 20:53:48.000000000 +0100 ++++ libgomp/configure.tgt 2008-03-27 12:44:51.000000000 +0100 +@@ -67,7 +67,7 @@ if test $enable_linux_futex = yes; then + ;; + *) + if test -z "$with_arch"; then +- XCFLAGS="${XCFLAGS} -march=i486 -mtune=${target_cpu}" ++ XCFLAGS="${XCFLAGS} -march=i486 -mtune=generic" + fi + esac + ;; diff --git a/SOURCES/gcc7-isl-dl.patch b/SOURCES/gcc7-isl-dl.patch new file mode 100644 index 0000000..a9b73b3 --- /dev/null +++ b/SOURCES/gcc7-isl-dl.patch @@ -0,0 +1,711 @@ +--- gcc/Makefile.in.jj 2015-06-06 10:00:25.000000000 +0200 ++++ gcc/Makefile.in 2015-11-04 14:56:02.643536437 +0100 +@@ -1046,7 +1046,7 @@ BUILD_LIBDEPS= $(BUILD_LIBIBERTY) + # and the system's installed libraries. + LIBS = @LIBS@ libcommon.a $(CPPLIB) $(LIBINTL) $(LIBICONV) $(LIBBACKTRACE) \ + $(LIBIBERTY) $(LIBDECNUMBER) $(HOST_LIBS) +-BACKENDLIBS = $(ISLLIBS) $(GMPLIBS) $(PLUGINLIBS) $(HOST_LIBS) \ ++BACKENDLIBS = $(if $(ISLLIBS),-ldl) $(GMPLIBS) $(PLUGINLIBS) $(HOST_LIBS) \ + $(ZLIB) + # Any system libraries needed just for GNAT. + SYSLIBS = @GNAT_LIBEXC@ +@@ -2196,6 +2196,15 @@ $(out_object_file): $(out_file) + $(common_out_object_file): $(common_out_file) + $(COMPILE) $< + $(POSTCOMPILE) ++ ++graphite%.o : \ ++ ALL_CFLAGS := -O $(filter-out -fkeep-inline-functions, $(ALL_CFLAGS)) ++graphite.o : \ ++ ALL_CFLAGS := -O $(filter-out -fkeep-inline-functions, $(ALL_CFLAGS)) ++graphite%.o : \ ++ ALL_CXXFLAGS := -O $(filter-out -fkeep-inline-functions, $(ALL_CXXFLAGS)) ++graphite.o : \ ++ ALL_CXXFLAGS := -O $(filter-out -fkeep-inline-functions, $(ALL_CXXFLAGS)) + # + # Generate header and source files from the machine description, + # and compile them. +--- gcc/graphite.h.jj 2016-01-27 12:44:06.000000000 +0100 ++++ gcc/graphite.h 2016-01-27 13:26:38.309876856 +0100 +@@ -37,6 +37,586 @@ along with GCC; see the file COPYING3. + #include + #include + #include ++#include ++#include ++ ++#define DYNSYMS \ ++ DYNSYM (isl_aff_add_coefficient_si); \ ++ DYNSYM (isl_aff_free); \ ++ DYNSYM (isl_aff_get_space); \ ++ DYNSYM (isl_aff_set_coefficient_si); \ ++ DYNSYM (isl_aff_set_constant_si); \ ++ DYNSYM (isl_aff_zero_on_domain); \ ++ DYNSYM (isl_band_free); \ ++ DYNSYM (isl_band_get_children); \ ++ DYNSYM (isl_band_get_partial_schedule); \ ++ DYNSYM (isl_band_has_children); \ ++ DYNSYM (isl_band_list_free); \ ++ DYNSYM (isl_band_list_get_band); \ ++ DYNSYM (isl_band_list_get_ctx); \ ++ DYNSYM (isl_band_list_n_band); \ ++ DYNSYM (isl_band_n_member); \ ++ DYNSYM (isl_basic_map_add_constraint); \ ++ DYNSYM (isl_basic_map_project_out); \ ++ DYNSYM (isl_basic_map_universe); \ ++ DYNSYM (isl_constraint_set_coefficient_si); \ ++ DYNSYM (isl_constraint_set_constant_si); \ ++ DYNSYM (isl_ctx_alloc); \ ++ DYNSYM (isl_ctx_free); \ ++ DYNSYM (isl_equality_alloc); \ ++ DYNSYM (isl_id_alloc); \ ++ DYNSYM (isl_id_copy); \ ++ DYNSYM (isl_id_free); \ ++ DYNSYM (isl_inequality_alloc); \ ++ DYNSYM (isl_local_space_copy); \ ++ DYNSYM (isl_local_space_free); \ ++ DYNSYM (isl_local_space_from_space); \ ++ DYNSYM (isl_local_space_range); \ ++ DYNSYM (isl_map_add_constraint); \ ++ DYNSYM (isl_map_add_dims); \ ++ DYNSYM (isl_map_align_params); \ ++ DYNSYM (isl_map_apply_range); \ ++ DYNSYM (isl_map_copy); \ ++ DYNSYM (isl_map_dim); \ ++ DYNSYM (isl_map_dump); \ ++ DYNSYM (isl_map_equate); \ ++ DYNSYM (isl_map_fix_si); \ ++ DYNSYM (isl_map_flat_product); \ ++ DYNSYM (isl_map_flat_range_product); \ ++ DYNSYM (isl_map_free); \ ++ DYNSYM (isl_map_from_basic_map); \ ++ DYNSYM (isl_map_from_pw_aff); \ ++ DYNSYM (isl_map_from_union_map); \ ++ DYNSYM (isl_map_get_ctx); \ ++ DYNSYM (isl_map_get_space); \ ++ DYNSYM (isl_map_get_tuple_id); \ ++ DYNSYM (isl_map_insert_dims); \ ++ DYNSYM (isl_map_intersect); \ ++ DYNSYM (isl_map_intersect_domain); \ ++ DYNSYM (isl_map_intersect_range); \ ++ DYNSYM (isl_map_is_empty); \ ++ DYNSYM (isl_map_lex_ge); \ ++ DYNSYM (isl_map_lex_le); \ ++ DYNSYM (isl_map_n_out); \ ++ DYNSYM (isl_map_range); \ ++ DYNSYM (isl_map_set_tuple_id); \ ++ DYNSYM (isl_map_universe); \ ++ DYNSYM (isl_options_set_on_error); \ ++ DYNSYM (isl_options_set_schedule_serialize_sccs); \ ++ DYNSYM (isl_printer_set_yaml_style); \ ++ DYNSYM (isl_options_set_schedule_max_constant_term); \ ++ DYNSYM (isl_options_set_schedule_maximize_band_depth); \ ++ DYNSYM (isl_printer_free); \ ++ DYNSYM (isl_printer_print_aff); \ ++ DYNSYM (isl_printer_print_constraint); \ ++ DYNSYM (isl_printer_print_map); \ ++ DYNSYM (isl_printer_print_set); \ ++ DYNSYM (isl_printer_to_file); \ ++ DYNSYM (isl_pw_aff_add); \ ++ DYNSYM (isl_pw_aff_alloc); \ ++ DYNSYM (isl_pw_aff_copy); \ ++ DYNSYM (isl_pw_aff_eq_set); \ ++ DYNSYM (isl_pw_aff_free); \ ++ DYNSYM (isl_pw_aff_from_aff); \ ++ DYNSYM (isl_pw_aff_ge_set); \ ++ DYNSYM (isl_pw_aff_gt_set); \ ++ DYNSYM (isl_pw_aff_is_cst); \ ++ DYNSYM (isl_pw_aff_le_set); \ ++ DYNSYM (isl_pw_aff_lt_set); \ ++ DYNSYM (isl_pw_aff_mul); \ ++ DYNSYM (isl_pw_aff_ne_set); \ ++ DYNSYM (isl_pw_aff_nonneg_set); \ ++ DYNSYM (isl_pw_aff_set_tuple_id); \ ++ DYNSYM (isl_pw_aff_sub); \ ++ DYNSYM (isl_pw_aff_zero_set); \ ++ DYNSYM (isl_schedule_free); \ ++ DYNSYM (isl_schedule_get_band_forest); \ ++ DYNSYM (isl_set_add_constraint); \ ++ DYNSYM (isl_set_add_dims); \ ++ DYNSYM (isl_set_apply); \ ++ DYNSYM (isl_set_coalesce); \ ++ DYNSYM (isl_set_copy); \ ++ DYNSYM (isl_set_dim); \ ++ DYNSYM (isl_set_fix_si); \ ++ DYNSYM (isl_set_free); \ ++ DYNSYM (isl_set_get_space); \ ++ DYNSYM (isl_set_get_tuple_id); \ ++ DYNSYM (isl_set_intersect); \ ++ DYNSYM (isl_set_is_empty); \ ++ DYNSYM (isl_set_n_dim); \ ++ DYNSYM (isl_set_nat_universe); \ ++ DYNSYM (isl_set_project_out); \ ++ DYNSYM (isl_set_set_tuple_id); \ ++ DYNSYM (isl_set_universe); \ ++ DYNSYM (isl_space_add_dims); \ ++ DYNSYM (isl_space_alloc); \ ++ DYNSYM (isl_space_copy); \ ++ DYNSYM (isl_space_dim); \ ++ DYNSYM (isl_space_domain); \ ++ DYNSYM (isl_space_find_dim_by_id); \ ++ DYNSYM (isl_space_free); \ ++ DYNSYM (isl_space_from_domain); \ ++ DYNSYM (isl_space_get_tuple_id); \ ++ DYNSYM (isl_space_params_alloc); \ ++ DYNSYM (isl_space_range); \ ++ DYNSYM (isl_space_set_alloc); \ ++ DYNSYM (isl_space_set_dim_id); \ ++ DYNSYM (isl_space_set_tuple_id); \ ++ DYNSYM (isl_union_map_add_map); \ ++ DYNSYM (isl_union_map_align_params); \ ++ DYNSYM (isl_union_map_apply_domain); \ ++ DYNSYM (isl_union_map_apply_range); \ ++ DYNSYM (isl_union_map_compute_flow); \ ++ DYNSYM (isl_union_map_copy); \ ++ DYNSYM (isl_union_map_empty); \ ++ DYNSYM (isl_union_map_flat_range_product); \ ++ DYNSYM (isl_union_map_foreach_map); \ ++ DYNSYM (isl_union_map_free); \ ++ DYNSYM (isl_union_map_from_map); \ ++ DYNSYM (isl_union_map_get_ctx); \ ++ DYNSYM (isl_union_map_get_space); \ ++ DYNSYM (isl_union_map_gist_domain); \ ++ DYNSYM (isl_union_map_gist_range); \ ++ DYNSYM (isl_union_map_intersect_domain); \ ++ DYNSYM (isl_union_map_is_empty); \ ++ DYNSYM (isl_union_map_subtract); \ ++ DYNSYM (isl_union_map_union); \ ++ DYNSYM (isl_union_set_add_set); \ ++ DYNSYM (isl_union_set_compute_schedule); \ ++ DYNSYM (isl_union_set_copy); \ ++ DYNSYM (isl_union_set_empty); \ ++ DYNSYM (isl_union_set_from_set); \ ++ DYNSYM (isl_aff_add_constant_val); \ ++ DYNSYM (isl_aff_get_coefficient_val); \ ++ DYNSYM (isl_aff_get_ctx); \ ++ DYNSYM (isl_aff_mod_val); \ ++ DYNSYM (isl_ast_build_ast_from_schedule); \ ++ DYNSYM (isl_ast_build_free); \ ++ DYNSYM (isl_ast_build_from_context); \ ++ DYNSYM (isl_ast_build_get_ctx); \ ++ DYNSYM (isl_ast_build_get_schedule); \ ++ DYNSYM (isl_ast_build_get_schedule_space); \ ++ DYNSYM (isl_ast_build_set_before_each_for); \ ++ DYNSYM (isl_ast_build_set_options); \ ++ DYNSYM (isl_ast_expr_free); \ ++ DYNSYM (isl_ast_expr_from_val); \ ++ DYNSYM (isl_ast_expr_get_ctx); \ ++ DYNSYM (isl_ast_expr_get_id); \ ++ DYNSYM (isl_ast_expr_get_op_arg); \ ++ DYNSYM (isl_ast_expr_get_op_n_arg); \ ++ DYNSYM (isl_ast_expr_get_op_type); \ ++ DYNSYM (isl_ast_expr_get_type); \ ++ DYNSYM (isl_ast_expr_get_val); \ ++ DYNSYM (isl_ast_expr_sub); \ ++ DYNSYM (isl_ast_node_block_get_children); \ ++ DYNSYM (isl_ast_node_for_get_body); \ ++ DYNSYM (isl_ast_node_for_get_cond); \ ++ DYNSYM (isl_ast_node_for_get_inc); \ ++ DYNSYM (isl_ast_node_for_get_init); \ ++ DYNSYM (isl_ast_node_for_get_iterator); \ ++ DYNSYM (isl_ast_node_free); \ ++ DYNSYM (isl_ast_node_get_annotation); \ ++ DYNSYM (isl_ast_node_get_type); \ ++ DYNSYM (isl_ast_node_if_get_cond); \ ++ DYNSYM (isl_ast_node_if_get_else); \ ++ DYNSYM (isl_ast_node_if_get_then); \ ++ DYNSYM (isl_ast_node_list_free); \ ++ DYNSYM (isl_ast_node_list_get_ast_node); \ ++ DYNSYM (isl_ast_node_list_n_ast_node); \ ++ DYNSYM (isl_ast_node_user_get_expr); \ ++ DYNSYM (isl_constraint_set_coefficient_val); \ ++ DYNSYM (isl_constraint_set_constant_val); \ ++ DYNSYM (isl_id_get_user); \ ++ DYNSYM (isl_local_space_get_ctx); \ ++ DYNSYM (isl_map_fix_val); \ ++ DYNSYM (isl_options_set_ast_build_atomic_upper_bound); \ ++ DYNSYM (isl_printer_print_ast_node); \ ++ DYNSYM (isl_printer_print_str); \ ++ DYNSYM (isl_printer_set_output_format); \ ++ DYNSYM (isl_pw_aff_mod_val); \ ++ DYNSYM (isl_schedule_constraints_compute_schedule); \ ++ DYNSYM (isl_schedule_constraints_on_domain); \ ++ DYNSYM (isl_schedule_constraints_set_coincidence); \ ++ DYNSYM (isl_schedule_constraints_set_proximity); \ ++ DYNSYM (isl_schedule_constraints_set_validity); \ ++ DYNSYM (isl_set_get_dim_id); \ ++ DYNSYM (isl_set_max_val); \ ++ DYNSYM (isl_set_min_val); \ ++ DYNSYM (isl_set_params); \ ++ DYNSYM (isl_space_align_params); \ ++ DYNSYM (isl_space_map_from_domain_and_range); \ ++ DYNSYM (isl_space_set_tuple_name); \ ++ DYNSYM (isl_space_wrap); \ ++ DYNSYM (isl_union_map_from_domain_and_range); \ ++ DYNSYM (isl_union_map_range); \ ++ DYNSYM (isl_union_set_union); \ ++ DYNSYM (isl_union_set_universe); \ ++ DYNSYM (isl_val_2exp); \ ++ DYNSYM (isl_val_add_ui); \ ++ DYNSYM (isl_val_copy); \ ++ DYNSYM (isl_val_free); \ ++ DYNSYM (isl_val_int_from_si); \ ++ DYNSYM (isl_val_int_from_ui); \ ++ DYNSYM (isl_val_mul); \ ++ DYNSYM (isl_val_neg); \ ++ DYNSYM (isl_val_sub); \ ++ DYNSYM (isl_printer_print_union_map); \ ++ DYNSYM (isl_pw_aff_get_ctx); \ ++ DYNSYM (isl_val_is_int); \ ++ DYNSYM (isl_ctx_get_max_operations); \ ++ DYNSYM (isl_ctx_set_max_operations); \ ++ DYNSYM (isl_ctx_last_error); \ ++ DYNSYM (isl_ctx_reset_operations); \ ++ DYNSYM (isl_map_coalesce); \ ++ DYNSYM (isl_printer_print_schedule); \ ++ DYNSYM (isl_set_set_dim_id); \ ++ DYNSYM (isl_union_map_coalesce); \ ++ DYNSYM (isl_multi_val_set_val); \ ++ DYNSYM (isl_multi_val_zero); \ ++ DYNSYM (isl_options_set_schedule_max_coefficient); \ ++ DYNSYM (isl_options_set_tile_scale_tile_loops); \ ++ DYNSYM (isl_schedule_copy); \ ++ DYNSYM (isl_schedule_get_map); \ ++ DYNSYM (isl_schedule_map_schedule_node_bottom_up); \ ++ DYNSYM (isl_schedule_node_band_get_permutable); \ ++ DYNSYM (isl_schedule_node_band_get_space); \ ++ DYNSYM (isl_schedule_node_band_tile); \ ++ DYNSYM (isl_schedule_node_child); \ ++ DYNSYM (isl_schedule_node_free); \ ++ DYNSYM (isl_schedule_node_get_child); \ ++ DYNSYM (isl_schedule_node_get_ctx); \ ++ DYNSYM (isl_schedule_node_get_type); \ ++ DYNSYM (isl_schedule_node_n_children); \ ++ DYNSYM (isl_union_map_is_equal); \ ++ DYNSYM (isl_union_access_info_compute_flow); \ ++ DYNSYM (isl_union_access_info_from_sink); \ ++ DYNSYM (isl_union_access_info_set_may_source); \ ++ DYNSYM (isl_union_access_info_set_must_source); \ ++ DYNSYM (isl_union_access_info_set_schedule); \ ++ DYNSYM (isl_union_flow_free); \ ++ DYNSYM (isl_union_flow_get_may_dependence); \ ++ DYNSYM (isl_union_flow_get_must_dependence); \ ++ DYNSYM (isl_aff_var_on_domain); \ ++ DYNSYM (isl_multi_aff_from_aff); \ ++ DYNSYM (isl_schedule_get_ctx); \ ++ DYNSYM (isl_multi_aff_set_tuple_id); \ ++ DYNSYM (isl_multi_aff_dim); \ ++ DYNSYM (isl_schedule_get_domain); \ ++ DYNSYM (isl_union_set_is_empty); \ ++ DYNSYM (isl_union_set_get_space); \ ++ DYNSYM (isl_union_pw_multi_aff_empty); \ ++ DYNSYM (isl_union_set_foreach_set); \ ++ DYNSYM (isl_union_set_free); \ ++ DYNSYM (isl_multi_union_pw_aff_from_union_pw_multi_aff); \ ++ DYNSYM (isl_multi_union_pw_aff_apply_multi_aff); \ ++ DYNSYM (isl_schedule_insert_partial_schedule); \ ++ DYNSYM (isl_union_pw_multi_aff_free); \ ++ DYNSYM (isl_pw_multi_aff_project_out_map); \ ++ DYNSYM (isl_union_pw_multi_aff_add_pw_multi_aff); \ ++ DYNSYM (isl_schedule_from_domain); \ ++ DYNSYM (isl_schedule_sequence); \ ++ DYNSYM (isl_ast_build_node_from_schedule); \ ++ DYNSYM (isl_ast_node_mark_get_node); \ ++ DYNSYM (isl_schedule_node_band_member_get_ast_loop_type); \ ++ DYNSYM (isl_schedule_node_band_member_set_ast_loop_type); \ ++ DYNSYM (isl_val_n_abs_num_chunks); \ ++ DYNSYM (isl_val_get_abs_num_chunks); \ ++ DYNSYM (isl_val_int_from_chunks); \ ++ DYNSYM (isl_val_is_neg); \ ++ DYNSYM (isl_version); ++ ++extern struct isl_pointers_s__ ++{ ++ bool inited; ++ void *h; ++#define DYNSYM(x) __typeof (x) *p_##x ++ DYNSYMS ++#undef DYNSYM ++} isl_pointers__; ++ ++#define isl_aff_add_coefficient_si (*isl_pointers__.p_isl_aff_add_coefficient_si) ++#define isl_aff_free (*isl_pointers__.p_isl_aff_free) ++#define isl_aff_get_space (*isl_pointers__.p_isl_aff_get_space) ++#define isl_aff_set_coefficient_si (*isl_pointers__.p_isl_aff_set_coefficient_si) ++#define isl_aff_set_constant_si (*isl_pointers__.p_isl_aff_set_constant_si) ++#define isl_aff_zero_on_domain (*isl_pointers__.p_isl_aff_zero_on_domain) ++#define isl_band_free (*isl_pointers__.p_isl_band_free) ++#define isl_band_get_children (*isl_pointers__.p_isl_band_get_children) ++#define isl_band_get_partial_schedule (*isl_pointers__.p_isl_band_get_partial_schedule) ++#define isl_band_has_children (*isl_pointers__.p_isl_band_has_children) ++#define isl_band_list_free (*isl_pointers__.p_isl_band_list_free) ++#define isl_band_list_get_band (*isl_pointers__.p_isl_band_list_get_band) ++#define isl_band_list_get_ctx (*isl_pointers__.p_isl_band_list_get_ctx) ++#define isl_band_list_n_band (*isl_pointers__.p_isl_band_list_n_band) ++#define isl_band_n_member (*isl_pointers__.p_isl_band_n_member) ++#define isl_basic_map_add_constraint (*isl_pointers__.p_isl_basic_map_add_constraint) ++#define isl_basic_map_project_out (*isl_pointers__.p_isl_basic_map_project_out) ++#define isl_basic_map_universe (*isl_pointers__.p_isl_basic_map_universe) ++#define isl_constraint_set_coefficient_si (*isl_pointers__.p_isl_constraint_set_coefficient_si) ++#define isl_constraint_set_constant_si (*isl_pointers__.p_isl_constraint_set_constant_si) ++#define isl_ctx_alloc (*isl_pointers__.p_isl_ctx_alloc) ++#define isl_ctx_free (*isl_pointers__.p_isl_ctx_free) ++#define isl_equality_alloc (*isl_pointers__.p_isl_equality_alloc) ++#define isl_id_alloc (*isl_pointers__.p_isl_id_alloc) ++#define isl_id_copy (*isl_pointers__.p_isl_id_copy) ++#define isl_id_free (*isl_pointers__.p_isl_id_free) ++#define isl_inequality_alloc (*isl_pointers__.p_isl_inequality_alloc) ++#define isl_local_space_copy (*isl_pointers__.p_isl_local_space_copy) ++#define isl_local_space_free (*isl_pointers__.p_isl_local_space_free) ++#define isl_local_space_from_space (*isl_pointers__.p_isl_local_space_from_space) ++#define isl_local_space_range (*isl_pointers__.p_isl_local_space_range) ++#define isl_map_add_constraint (*isl_pointers__.p_isl_map_add_constraint) ++#define isl_map_add_dims (*isl_pointers__.p_isl_map_add_dims) ++#define isl_map_align_params (*isl_pointers__.p_isl_map_align_params) ++#define isl_map_apply_range (*isl_pointers__.p_isl_map_apply_range) ++#define isl_map_copy (*isl_pointers__.p_isl_map_copy) ++#define isl_map_dim (*isl_pointers__.p_isl_map_dim) ++#define isl_map_dump (*isl_pointers__.p_isl_map_dump) ++#define isl_map_equate (*isl_pointers__.p_isl_map_equate) ++#define isl_map_fix_si (*isl_pointers__.p_isl_map_fix_si) ++#define isl_map_flat_product (*isl_pointers__.p_isl_map_flat_product) ++#define isl_map_flat_range_product (*isl_pointers__.p_isl_map_flat_range_product) ++#define isl_map_free (*isl_pointers__.p_isl_map_free) ++#define isl_map_from_basic_map (*isl_pointers__.p_isl_map_from_basic_map) ++#define isl_map_from_pw_aff (*isl_pointers__.p_isl_map_from_pw_aff) ++#define isl_map_from_union_map (*isl_pointers__.p_isl_map_from_union_map) ++#define isl_map_get_ctx (*isl_pointers__.p_isl_map_get_ctx) ++#define isl_map_get_space (*isl_pointers__.p_isl_map_get_space) ++#define isl_map_get_tuple_id (*isl_pointers__.p_isl_map_get_tuple_id) ++#define isl_map_insert_dims (*isl_pointers__.p_isl_map_insert_dims) ++#define isl_map_intersect (*isl_pointers__.p_isl_map_intersect) ++#define isl_map_intersect_domain (*isl_pointers__.p_isl_map_intersect_domain) ++#define isl_map_intersect_range (*isl_pointers__.p_isl_map_intersect_range) ++#define isl_map_is_empty (*isl_pointers__.p_isl_map_is_empty) ++#define isl_map_lex_ge (*isl_pointers__.p_isl_map_lex_ge) ++#define isl_map_lex_le (*isl_pointers__.p_isl_map_lex_le) ++#define isl_map_n_out (*isl_pointers__.p_isl_map_n_out) ++#define isl_map_range (*isl_pointers__.p_isl_map_range) ++#define isl_map_set_tuple_id (*isl_pointers__.p_isl_map_set_tuple_id) ++#define isl_map_universe (*isl_pointers__.p_isl_map_universe) ++#define isl_options_set_on_error (*isl_pointers__.p_isl_options_set_on_error) ++#define isl_options_set_schedule_serialize_sccs (*isl_pointers__.p_isl_options_set_schedule_serialize_sccs) ++#define isl_printer_set_yaml_style (*isl_pointers__.p_isl_printer_set_yaml_style) ++#define isl_options_set_schedule_max_constant_term (*isl_pointers__.p_isl_options_set_schedule_max_constant_term) ++#define isl_options_set_schedule_maximize_band_depth (*isl_pointers__.p_isl_options_set_schedule_maximize_band_depth) ++#define isl_printer_free (*isl_pointers__.p_isl_printer_free) ++#define isl_printer_print_aff (*isl_pointers__.p_isl_printer_print_aff) ++#define isl_printer_print_constraint (*isl_pointers__.p_isl_printer_print_constraint) ++#define isl_printer_print_map (*isl_pointers__.p_isl_printer_print_map) ++#define isl_printer_print_set (*isl_pointers__.p_isl_printer_print_set) ++#define isl_printer_to_file (*isl_pointers__.p_isl_printer_to_file) ++#define isl_pw_aff_add (*isl_pointers__.p_isl_pw_aff_add) ++#define isl_pw_aff_alloc (*isl_pointers__.p_isl_pw_aff_alloc) ++#define isl_pw_aff_copy (*isl_pointers__.p_isl_pw_aff_copy) ++#define isl_pw_aff_eq_set (*isl_pointers__.p_isl_pw_aff_eq_set) ++#define isl_pw_aff_free (*isl_pointers__.p_isl_pw_aff_free) ++#define isl_pw_aff_from_aff (*isl_pointers__.p_isl_pw_aff_from_aff) ++#define isl_pw_aff_ge_set (*isl_pointers__.p_isl_pw_aff_ge_set) ++#define isl_pw_aff_gt_set (*isl_pointers__.p_isl_pw_aff_gt_set) ++#define isl_pw_aff_is_cst (*isl_pointers__.p_isl_pw_aff_is_cst) ++#define isl_pw_aff_le_set (*isl_pointers__.p_isl_pw_aff_le_set) ++#define isl_pw_aff_lt_set (*isl_pointers__.p_isl_pw_aff_lt_set) ++#define isl_pw_aff_mul (*isl_pointers__.p_isl_pw_aff_mul) ++#define isl_pw_aff_ne_set (*isl_pointers__.p_isl_pw_aff_ne_set) ++#define isl_pw_aff_nonneg_set (*isl_pointers__.p_isl_pw_aff_nonneg_set) ++#define isl_pw_aff_set_tuple_id (*isl_pointers__.p_isl_pw_aff_set_tuple_id) ++#define isl_pw_aff_sub (*isl_pointers__.p_isl_pw_aff_sub) ++#define isl_pw_aff_zero_set (*isl_pointers__.p_isl_pw_aff_zero_set) ++#define isl_schedule_free (*isl_pointers__.p_isl_schedule_free) ++#define isl_schedule_get_band_forest (*isl_pointers__.p_isl_schedule_get_band_forest) ++#define isl_set_add_constraint (*isl_pointers__.p_isl_set_add_constraint) ++#define isl_set_add_dims (*isl_pointers__.p_isl_set_add_dims) ++#define isl_set_apply (*isl_pointers__.p_isl_set_apply) ++#define isl_set_coalesce (*isl_pointers__.p_isl_set_coalesce) ++#define isl_set_copy (*isl_pointers__.p_isl_set_copy) ++#define isl_set_dim (*isl_pointers__.p_isl_set_dim) ++#define isl_set_fix_si (*isl_pointers__.p_isl_set_fix_si) ++#define isl_set_free (*isl_pointers__.p_isl_set_free) ++#define isl_set_get_space (*isl_pointers__.p_isl_set_get_space) ++#define isl_set_get_tuple_id (*isl_pointers__.p_isl_set_get_tuple_id) ++#define isl_set_intersect (*isl_pointers__.p_isl_set_intersect) ++#define isl_set_is_empty (*isl_pointers__.p_isl_set_is_empty) ++#define isl_set_n_dim (*isl_pointers__.p_isl_set_n_dim) ++#define isl_set_nat_universe (*isl_pointers__.p_isl_set_nat_universe) ++#define isl_set_project_out (*isl_pointers__.p_isl_set_project_out) ++#define isl_set_set_tuple_id (*isl_pointers__.p_isl_set_set_tuple_id) ++#define isl_set_universe (*isl_pointers__.p_isl_set_universe) ++#define isl_space_add_dims (*isl_pointers__.p_isl_space_add_dims) ++#define isl_space_alloc (*isl_pointers__.p_isl_space_alloc) ++#define isl_space_copy (*isl_pointers__.p_isl_space_copy) ++#define isl_space_dim (*isl_pointers__.p_isl_space_dim) ++#define isl_space_domain (*isl_pointers__.p_isl_space_domain) ++#define isl_space_find_dim_by_id (*isl_pointers__.p_isl_space_find_dim_by_id) ++#define isl_space_free (*isl_pointers__.p_isl_space_free) ++#define isl_space_from_domain (*isl_pointers__.p_isl_space_from_domain) ++#define isl_space_get_tuple_id (*isl_pointers__.p_isl_space_get_tuple_id) ++#define isl_space_params_alloc (*isl_pointers__.p_isl_space_params_alloc) ++#define isl_space_range (*isl_pointers__.p_isl_space_range) ++#define isl_space_set_alloc (*isl_pointers__.p_isl_space_set_alloc) ++#define isl_space_set_dim_id (*isl_pointers__.p_isl_space_set_dim_id) ++#define isl_space_set_tuple_id (*isl_pointers__.p_isl_space_set_tuple_id) ++#define isl_union_map_add_map (*isl_pointers__.p_isl_union_map_add_map) ++#define isl_union_map_align_params (*isl_pointers__.p_isl_union_map_align_params) ++#define isl_union_map_apply_domain (*isl_pointers__.p_isl_union_map_apply_domain) ++#define isl_union_map_apply_range (*isl_pointers__.p_isl_union_map_apply_range) ++#define isl_union_map_compute_flow (*isl_pointers__.p_isl_union_map_compute_flow) ++#define isl_union_map_copy (*isl_pointers__.p_isl_union_map_copy) ++#define isl_union_map_empty (*isl_pointers__.p_isl_union_map_empty) ++#define isl_union_map_flat_range_product (*isl_pointers__.p_isl_union_map_flat_range_product) ++#define isl_union_map_foreach_map (*isl_pointers__.p_isl_union_map_foreach_map) ++#define isl_union_map_free (*isl_pointers__.p_isl_union_map_free) ++#define isl_union_map_from_map (*isl_pointers__.p_isl_union_map_from_map) ++#define isl_union_map_get_ctx (*isl_pointers__.p_isl_union_map_get_ctx) ++#define isl_union_map_get_space (*isl_pointers__.p_isl_union_map_get_space) ++#define isl_union_map_gist_domain (*isl_pointers__.p_isl_union_map_gist_domain) ++#define isl_union_map_gist_range (*isl_pointers__.p_isl_union_map_gist_range) ++#define isl_union_map_intersect_domain (*isl_pointers__.p_isl_union_map_intersect_domain) ++#define isl_union_map_is_empty (*isl_pointers__.p_isl_union_map_is_empty) ++#define isl_union_map_subtract (*isl_pointers__.p_isl_union_map_subtract) ++#define isl_union_map_union (*isl_pointers__.p_isl_union_map_union) ++#define isl_union_set_add_set (*isl_pointers__.p_isl_union_set_add_set) ++#define isl_union_set_compute_schedule (*isl_pointers__.p_isl_union_set_compute_schedule) ++#define isl_union_set_copy (*isl_pointers__.p_isl_union_set_copy) ++#define isl_union_set_empty (*isl_pointers__.p_isl_union_set_empty) ++#define isl_union_set_from_set (*isl_pointers__.p_isl_union_set_from_set) ++#define isl_aff_add_constant_val (*isl_pointers__.p_isl_aff_add_constant_val) ++#define isl_aff_get_coefficient_val (*isl_pointers__.p_isl_aff_get_coefficient_val) ++#define isl_aff_get_ctx (*isl_pointers__.p_isl_aff_get_ctx) ++#define isl_aff_mod_val (*isl_pointers__.p_isl_aff_mod_val) ++#define isl_ast_build_ast_from_schedule (*isl_pointers__.p_isl_ast_build_ast_from_schedule) ++#define isl_ast_build_free (*isl_pointers__.p_isl_ast_build_free) ++#define isl_ast_build_from_context (*isl_pointers__.p_isl_ast_build_from_context) ++#define isl_ast_build_get_ctx (*isl_pointers__.p_isl_ast_build_get_ctx) ++#define isl_ast_build_get_schedule (*isl_pointers__.p_isl_ast_build_get_schedule) ++#define isl_ast_build_get_schedule_space (*isl_pointers__.p_isl_ast_build_get_schedule_space) ++#define isl_ast_build_set_before_each_for (*isl_pointers__.p_isl_ast_build_set_before_each_for) ++#define isl_ast_build_set_options (*isl_pointers__.p_isl_ast_build_set_options) ++#define isl_ast_expr_free (*isl_pointers__.p_isl_ast_expr_free) ++#define isl_ast_expr_from_val (*isl_pointers__.p_isl_ast_expr_from_val) ++#define isl_ast_expr_get_ctx (*isl_pointers__.p_isl_ast_expr_get_ctx) ++#define isl_ast_expr_get_id (*isl_pointers__.p_isl_ast_expr_get_id) ++#define isl_ast_expr_get_op_arg (*isl_pointers__.p_isl_ast_expr_get_op_arg) ++#define isl_ast_expr_get_op_n_arg (*isl_pointers__.p_isl_ast_expr_get_op_n_arg) ++#define isl_ast_expr_get_op_type (*isl_pointers__.p_isl_ast_expr_get_op_type) ++#define isl_ast_expr_get_type (*isl_pointers__.p_isl_ast_expr_get_type) ++#define isl_ast_expr_get_val (*isl_pointers__.p_isl_ast_expr_get_val) ++#define isl_ast_expr_sub (*isl_pointers__.p_isl_ast_expr_sub) ++#define isl_ast_node_block_get_children (*isl_pointers__.p_isl_ast_node_block_get_children) ++#define isl_ast_node_for_get_body (*isl_pointers__.p_isl_ast_node_for_get_body) ++#define isl_ast_node_for_get_cond (*isl_pointers__.p_isl_ast_node_for_get_cond) ++#define isl_ast_node_for_get_inc (*isl_pointers__.p_isl_ast_node_for_get_inc) ++#define isl_ast_node_for_get_init (*isl_pointers__.p_isl_ast_node_for_get_init) ++#define isl_ast_node_for_get_iterator (*isl_pointers__.p_isl_ast_node_for_get_iterator) ++#define isl_ast_node_free (*isl_pointers__.p_isl_ast_node_free) ++#define isl_ast_node_get_annotation (*isl_pointers__.p_isl_ast_node_get_annotation) ++#define isl_ast_node_get_type (*isl_pointers__.p_isl_ast_node_get_type) ++#define isl_ast_node_if_get_cond (*isl_pointers__.p_isl_ast_node_if_get_cond) ++#define isl_ast_node_if_get_else (*isl_pointers__.p_isl_ast_node_if_get_else) ++#define isl_ast_node_if_get_then (*isl_pointers__.p_isl_ast_node_if_get_then) ++#define isl_ast_node_list_free (*isl_pointers__.p_isl_ast_node_list_free) ++#define isl_ast_node_list_get_ast_node (*isl_pointers__.p_isl_ast_node_list_get_ast_node) ++#define isl_ast_node_list_n_ast_node (*isl_pointers__.p_isl_ast_node_list_n_ast_node) ++#define isl_ast_node_user_get_expr (*isl_pointers__.p_isl_ast_node_user_get_expr) ++#define isl_constraint_set_coefficient_val (*isl_pointers__.p_isl_constraint_set_coefficient_val) ++#define isl_constraint_set_constant_val (*isl_pointers__.p_isl_constraint_set_constant_val) ++#define isl_id_get_user (*isl_pointers__.p_isl_id_get_user) ++#define isl_local_space_get_ctx (*isl_pointers__.p_isl_local_space_get_ctx) ++#define isl_map_fix_val (*isl_pointers__.p_isl_map_fix_val) ++#define isl_options_set_ast_build_atomic_upper_bound (*isl_pointers__.p_isl_options_set_ast_build_atomic_upper_bound) ++#define isl_printer_print_ast_node (*isl_pointers__.p_isl_printer_print_ast_node) ++#define isl_printer_print_str (*isl_pointers__.p_isl_printer_print_str) ++#define isl_printer_set_output_format (*isl_pointers__.p_isl_printer_set_output_format) ++#define isl_pw_aff_mod_val (*isl_pointers__.p_isl_pw_aff_mod_val) ++#define isl_schedule_constraints_compute_schedule (*isl_pointers__.p_isl_schedule_constraints_compute_schedule) ++#define isl_schedule_constraints_on_domain (*isl_pointers__.p_isl_schedule_constraints_on_domain) ++#define isl_schedule_constraints_set_coincidence (*isl_pointers__.p_isl_schedule_constraints_set_coincidence) ++#define isl_schedule_constraints_set_proximity (*isl_pointers__.p_isl_schedule_constraints_set_proximity) ++#define isl_schedule_constraints_set_validity (*isl_pointers__.p_isl_schedule_constraints_set_validity) ++#define isl_set_get_dim_id (*isl_pointers__.p_isl_set_get_dim_id) ++#define isl_set_max_val (*isl_pointers__.p_isl_set_max_val) ++#define isl_set_min_val (*isl_pointers__.p_isl_set_min_val) ++#define isl_set_params (*isl_pointers__.p_isl_set_params) ++#define isl_space_align_params (*isl_pointers__.p_isl_space_align_params) ++#define isl_space_map_from_domain_and_range (*isl_pointers__.p_isl_space_map_from_domain_and_range) ++#define isl_space_set_tuple_name (*isl_pointers__.p_isl_space_set_tuple_name) ++#define isl_space_wrap (*isl_pointers__.p_isl_space_wrap) ++#define isl_union_map_from_domain_and_range (*isl_pointers__.p_isl_union_map_from_domain_and_range) ++#define isl_union_map_range (*isl_pointers__.p_isl_union_map_range) ++#define isl_union_set_union (*isl_pointers__.p_isl_union_set_union) ++#define isl_union_set_universe (*isl_pointers__.p_isl_union_set_universe) ++#define isl_val_2exp (*isl_pointers__.p_isl_val_2exp) ++#define isl_val_add_ui (*isl_pointers__.p_isl_val_add_ui) ++#define isl_val_copy (*isl_pointers__.p_isl_val_copy) ++#define isl_val_free (*isl_pointers__.p_isl_val_free) ++#define isl_val_int_from_si (*isl_pointers__.p_isl_val_int_from_si) ++#define isl_val_int_from_ui (*isl_pointers__.p_isl_val_int_from_ui) ++#define isl_val_mul (*isl_pointers__.p_isl_val_mul) ++#define isl_val_neg (*isl_pointers__.p_isl_val_neg) ++#define isl_val_sub (*isl_pointers__.p_isl_val_sub) ++#define isl_printer_print_union_map (*isl_pointers__.p_isl_printer_print_union_map) ++#define isl_pw_aff_get_ctx (*isl_pointers__.p_isl_pw_aff_get_ctx) ++#define isl_val_is_int (*isl_pointers__.p_isl_val_is_int) ++#define isl_ctx_get_max_operations (*isl_pointers__.p_isl_ctx_get_max_operations) ++#define isl_ctx_set_max_operations (*isl_pointers__.p_isl_ctx_set_max_operations) ++#define isl_ctx_last_error (*isl_pointers__.p_isl_ctx_last_error) ++#define isl_ctx_reset_operations (*isl_pointers__.p_isl_ctx_reset_operations) ++#define isl_map_coalesce (*isl_pointers__.p_isl_map_coalesce) ++#define isl_printer_print_schedule (*isl_pointers__.p_isl_printer_print_schedule) ++#define isl_set_set_dim_id (*isl_pointers__.p_isl_set_set_dim_id) ++#define isl_union_map_coalesce (*isl_pointers__.p_isl_union_map_coalesce) ++#define isl_multi_val_set_val (*isl_pointers__.p_isl_multi_val_set_val) ++#define isl_multi_val_zero (*isl_pointers__.p_isl_multi_val_zero) ++#define isl_options_set_schedule_max_coefficient (*isl_pointers__.p_isl_options_set_schedule_max_coefficient) ++#define isl_options_set_tile_scale_tile_loops (*isl_pointers__.p_isl_options_set_tile_scale_tile_loops) ++#define isl_schedule_copy (*isl_pointers__.p_isl_schedule_copy) ++#define isl_schedule_get_map (*isl_pointers__.p_isl_schedule_get_map) ++#define isl_schedule_map_schedule_node_bottom_up (*isl_pointers__.p_isl_schedule_map_schedule_node_bottom_up) ++#define isl_schedule_node_band_get_permutable (*isl_pointers__.p_isl_schedule_node_band_get_permutable) ++#define isl_schedule_node_band_get_space (*isl_pointers__.p_isl_schedule_node_band_get_space) ++#define isl_schedule_node_band_tile (*isl_pointers__.p_isl_schedule_node_band_tile) ++#define isl_schedule_node_child (*isl_pointers__.p_isl_schedule_node_child) ++#define isl_schedule_node_free (*isl_pointers__.p_isl_schedule_node_free) ++#define isl_schedule_node_get_child (*isl_pointers__.p_isl_schedule_node_get_child) ++#define isl_schedule_node_get_ctx (*isl_pointers__.p_isl_schedule_node_get_ctx) ++#define isl_schedule_node_get_type (*isl_pointers__.p_isl_schedule_node_get_type) ++#define isl_schedule_node_n_children (*isl_pointers__.p_isl_schedule_node_n_children) ++#define isl_union_map_is_equal (*isl_pointers__.p_isl_union_map_is_equal) ++#define isl_union_access_info_compute_flow (*isl_pointers__.p_isl_union_access_info_compute_flow) ++#define isl_union_access_info_from_sink (*isl_pointers__.p_isl_union_access_info_from_sink) ++#define isl_union_access_info_set_may_source (*isl_pointers__.p_isl_union_access_info_set_may_source) ++#define isl_union_access_info_set_must_source (*isl_pointers__.p_isl_union_access_info_set_must_source) ++#define isl_union_access_info_set_schedule (*isl_pointers__.p_isl_union_access_info_set_schedule) ++#define isl_union_flow_free (*isl_pointers__.p_isl_union_flow_free) ++#define isl_union_flow_get_may_dependence (*isl_pointers__.p_isl_union_flow_get_may_dependence) ++#define isl_union_flow_get_must_dependence (*isl_pointers__.p_isl_union_flow_get_must_dependence) ++#define isl_aff_var_on_domain (*isl_pointers__.p_isl_aff_var_on_domain) ++#define isl_multi_aff_from_aff (*isl_pointers__.p_isl_multi_aff_from_aff) ++#define isl_schedule_get_ctx (*isl_pointers__.p_isl_schedule_get_ctx) ++#define isl_multi_aff_set_tuple_id (*isl_pointers__.p_isl_multi_aff_set_tuple_id) ++#define isl_multi_aff_dim (*isl_pointers__.p_isl_multi_aff_dim) ++#define isl_schedule_get_domain (*isl_pointers__.p_isl_schedule_get_domain) ++#define isl_union_set_is_empty (*isl_pointers__.p_isl_union_set_is_empty) ++#define isl_union_set_get_space (*isl_pointers__.p_isl_union_set_get_space) ++#define isl_union_pw_multi_aff_empty (*isl_pointers__.p_isl_union_pw_multi_aff_empty) ++#define isl_union_set_foreach_set (*isl_pointers__.p_isl_union_set_foreach_set) ++#define isl_union_set_free (*isl_pointers__.p_isl_union_set_free) ++#define isl_multi_union_pw_aff_from_union_pw_multi_aff (*isl_pointers__.p_isl_multi_union_pw_aff_from_union_pw_multi_aff) ++#define isl_multi_union_pw_aff_apply_multi_aff (*isl_pointers__.p_isl_multi_union_pw_aff_apply_multi_aff) ++#define isl_schedule_insert_partial_schedule (*isl_pointers__.p_isl_schedule_insert_partial_schedule) ++#define isl_union_pw_multi_aff_free (*isl_pointers__.p_isl_union_pw_multi_aff_free) ++#define isl_pw_multi_aff_project_out_map (*isl_pointers__.p_isl_pw_multi_aff_project_out_map) ++#define isl_union_pw_multi_aff_add_pw_multi_aff (*isl_pointers__.p_isl_union_pw_multi_aff_add_pw_multi_aff) ++#define isl_schedule_from_domain (*isl_pointers__.p_isl_schedule_from_domain) ++#define isl_schedule_sequence (*isl_pointers__.p_isl_schedule_sequence) ++#define isl_ast_build_node_from_schedule (*isl_pointers__.p_isl_ast_build_node_from_schedule) ++#define isl_ast_node_mark_get_node (*isl_pointers__.p_isl_ast_node_mark_get_node) ++#define isl_schedule_node_band_member_get_ast_loop_type (*isl_pointers__.p_isl_schedule_node_band_member_get_ast_loop_type) ++#define isl_schedule_node_band_member_set_ast_loop_type (*isl_pointers__.p_isl_schedule_node_band_member_set_ast_loop_type) ++#define isl_val_n_abs_num_chunks (*isl_pointers__.p_isl_val_n_abs_num_chunks) ++#define isl_val_get_abs_num_chunks (*isl_pointers__.p_isl_val_get_abs_num_chunks) ++#define isl_val_int_from_chunks (*isl_pointers__.p_isl_val_int_from_chunks) ++#define isl_val_is_neg (*isl_pointers__.p_isl_val_is_neg) ++#define isl_version (*isl_pointers__.p_isl_version) + + typedef struct poly_dr *poly_dr_p; + +@@ -458,5 +1038,6 @@ extern void build_scops (vec *); + extern void dot_all_sese (FILE *, vec &); + extern void dot_sese (sese_l &); + extern void dot_cfg (); ++extern const char *get_isl_version (bool); + + #endif +--- gcc/graphite.c.jj 2015-11-04 14:15:32.000000000 +0100 ++++ gcc/graphite.c 2015-11-04 14:56:02.645536409 +0100 +@@ -55,6 +55,35 @@ along with GCC; see the file COPYING3. + #include "tree-vectorizer.h" + #include "graphite.h" + ++__typeof (isl_pointers__) isl_pointers__; ++ ++static bool ++init_isl_pointers (void) ++{ ++ void *h; ++ ++ if (isl_pointers__.inited) ++ return isl_pointers__.h != NULL; ++ h = dlopen ("libisl.so.15", RTLD_LAZY); ++ isl_pointers__.h = h; ++ if (h == NULL) ++ return false; ++#define DYNSYM(x) \ ++ do \ ++ { \ ++ union { __typeof (isl_pointers__.p_##x) p; void *q; } u; \ ++ u.q = dlsym (h, #x); \ ++ if (u.q == NULL) \ ++ return false; \ ++ isl_pointers__.p_##x = u.p; \ ++ } \ ++ while (0) ++ DYNSYMS ++#undef DYNSYM ++ isl_pointers__.inited = true; ++ return true; ++} ++ + /* Print global statistics to FILE. */ + + static void +@@ -299,6 +328,15 @@ graphite_transform_loops (void) + if (parallelized_function_p (cfun->decl)) + return; + ++ if (number_of_loops (cfun) <= 1) ++ return; ++ ++ if (!init_isl_pointers ()) ++ { ++ sorry ("Graphite loop optimizations cannot be used"); ++ return; ++ } ++ + ctx = isl_ctx_alloc (); + isl_options_set_on_error (ctx, ISL_ON_ERROR_ABORT); + if (!graphite_initialize (ctx)) +@@ -342,6 +380,14 @@ graphite_transform_loops (void) + isl_ctx_free (ctx); + } + ++const char * ++get_isl_version (bool force) ++{ ++ if (force) ++ init_isl_pointers (); ++ return (isl_pointers__.inited && isl_version) ? isl_version () : "none"; ++} ++ + #else /* If isl is not available: #ifndef HAVE_isl. */ + + static void +--- gcc/toplev.c.jj 2017-02-19 13:02:31.000000000 +0100 ++++ gcc/toplev.c 2017-02-19 16:50:25.536301350 +0100 +@@ -94,6 +94,7 @@ along with GCC; see the file COPYING3. + + #ifdef HAVE_isl + #include ++extern const char *get_isl_version (bool); + #endif + + static void general_init (const char *, bool); +@@ -683,7 +684,7 @@ print_version (FILE *file, const char *i + #ifndef HAVE_isl + "none" + #else +- isl_version () ++ get_isl_version (*indent == 0) + #endif + ); + if (strcmp (GCC_GMP_STRINGIFY_VERSION, gmp_version)) diff --git a/SOURCES/gcc7-isl-dl2.patch b/SOURCES/gcc7-isl-dl2.patch new file mode 100644 index 0000000..2d85a89 --- /dev/null +++ b/SOURCES/gcc7-isl-dl2.patch @@ -0,0 +1,71 @@ +2011-04-04 Jakub Jelinek + + * toplev.c (toplev_main_argv): New variable. + (toplev_main): Initialize it. + * graphite.c (init_isl_pointers): Load libisl.so.13 from gcc's private + directory. + +--- gcc/toplev.c.jj 2008-12-09 23:59:10.000000000 +0100 ++++ gcc/toplev.c 2009-01-27 14:33:52.000000000 +0100 +@@ -154,6 +154,8 @@ static bool no_backend; + /* Length of line when printing switch values. */ + #define MAX_LINE 75 + ++const char **toplev_main_argv; ++ + /* Decoded options, and number of such options. */ + struct cl_decoded_option *save_decoded_options; + unsigned int save_decoded_options_count; +@@ -2126,6 +2128,8 @@ toplev::main (int argc, char **argv) + + expandargv (&argc, &argv); + ++ toplev_main_argv = CONST_CAST2 (const char **, char **, argv); ++ + /* Initialization of GCC's environment, and diagnostics. */ + general_init (argv[0], m_init_signals); + +--- gcc/graphite.c.jj 2010-12-01 10:24:32.000000000 -0500 ++++ gcc/graphite.c 2010-12-01 11:46:07.832118193 -0500 +@@ -60,11 +60,39 @@ __typeof (isl_pointers__) isl_pointers__ + static bool + init_isl_pointers (void) + { +- void *h; ++ void *h = NULL; ++ extern const char **toplev_main_argv; ++ char *buf, *p; ++ size_t len; + + if (isl_pointers__.inited) + return isl_pointers__.h != NULL; +- h = dlopen ("libisl.so.15", RTLD_LAZY); ++ len = progname - toplev_main_argv[0]; ++ buf = XALLOCAVAR (char, len + sizeof "libisl.so.15"); ++ memcpy (buf, toplev_main_argv[0], len); ++ strcpy (buf + len, "libisl.so.15"); ++ len += sizeof "libisl.so.15"; ++ p = strstr (buf, "/libexec/"); ++ if (p != NULL) ++ { ++ while (1) ++ { ++ char *q = strstr (p + 8, "/libexec/"); ++ if (q == NULL) ++ break; ++ p = q; ++ } ++ memmove (p + 4, p + 8, len - (p + 8 - buf)); ++ h = dlopen (buf, RTLD_LAZY); ++ if (h == NULL) ++ { ++ len = progname - toplev_main_argv[0]; ++ memcpy (buf, toplev_main_argv[0], len); ++ strcpy (buf + len, "libisl.so.15"); ++ } ++ } ++ if (h == NULL) ++ h = dlopen (buf, RTLD_LAZY); + isl_pointers__.h = h; + if (h == NULL) + return false; diff --git a/SOURCES/gcc7-libgomp-omp_h-multilib.patch b/SOURCES/gcc7-libgomp-omp_h-multilib.patch new file mode 100644 index 0000000..d0e98d1 --- /dev/null +++ b/SOURCES/gcc7-libgomp-omp_h-multilib.patch @@ -0,0 +1,17 @@ +2008-06-09 Jakub Jelinek + + * omp.h.in (omp_nest_lock_t): Fix up for Linux multilibs. + +--- libgomp/omp.h.in.jj 2008-06-09 13:34:05.000000000 +0200 ++++ libgomp/omp.h.in 2008-06-09 13:34:48.000000000 +0200 +@@ -42,8 +42,8 @@ typedef struct + + typedef struct + { +- unsigned char _x[@OMP_NEST_LOCK_SIZE@] +- __attribute__((__aligned__(@OMP_NEST_LOCK_ALIGN@))); ++ unsigned char _x[8 + sizeof (void *)] ++ __attribute__((__aligned__(sizeof (void *)))); + } omp_nest_lock_t; + #endif + diff --git a/SOURCES/gcc7-libstdc++-compat.patch b/SOURCES/gcc7-libstdc++-compat.patch new file mode 100644 index 0000000..257eccd --- /dev/null +++ b/SOURCES/gcc7-libstdc++-compat.patch @@ -0,0 +1,9050 @@ +--- libstdc++-v3/config/locale/gnu/c_locale.cc.jj 2017-04-20 12:18:56.260231002 +0200 ++++ libstdc++-v3/config/locale/gnu/c_locale.cc 2017-05-31 12:11:25.200561034 +0200 +@@ -41,6 +41,7 @@ namespace std _GLIBCXX_VISIBILITY(defaul + { + _GLIBCXX_BEGIN_NAMESPACE_VERSION + ++#ifndef _GLIBCXX_NONSHARED_CXX98 + template<> + void + __convert_to_v(const char* __s, float& __v, ios_base::iostate& __err, +@@ -172,6 +173,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + } + return __changed; + } ++#endif + + struct _CatalogIdComp + { +@@ -255,6 +257,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + _GLIBCXX_END_NAMESPACE_VERSION + } // namespace + ++#ifndef _GLIBCXX_NONSHARED_CXX98 + namespace __gnu_cxx _GLIBCXX_VISIBILITY(default) + { + _GLIBCXX_BEGIN_NAMESPACE_VERSION +@@ -293,3 +296,4 @@ _GLIBCXX_END_NAMESPACE_VERSION + extern "C" void ldbl (void) __attribute__ ((alias (#dbl))) + _GLIBCXX_LDBL_COMPAT(_ZSt14__convert_to_vIdEvPKcRT_RSt12_Ios_IostateRKP15__locale_struct, _ZSt14__convert_to_vIeEvPKcRT_RSt12_Ios_IostateRKP15__locale_struct); + #endif // _GLIBCXX_LONG_DOUBLE_COMPAT ++#endif +--- libstdc++-v3/libsupc++/eh_exception.cc.jj 2017-04-20 12:18:11.051840221 +0200 ++++ libstdc++-v3/libsupc++/eh_exception.cc 2017-05-31 12:11:25.200561034 +0200 +@@ -26,6 +26,7 @@ + #include "exception" + #include + ++#ifndef _GLIBCXX_NONSHARED_CXX98 + std::exception::~exception() _GLIBCXX_TXN_SAFE_DYN _GLIBCXX_USE_NOEXCEPT { } + + std::bad_exception::~bad_exception() _GLIBCXX_TXN_SAFE_DYN +@@ -50,6 +51,7 @@ std::bad_exception::what() const _GLIBCX + { + return "std::bad_exception"; + } ++#endif + + // Transactional clones for the destructors and what(). + // what() is effectively transaction_pure, but we do not want to annotate it +--- libstdc++-v3/src/nonshared98/sstream-inst.cc.jj 2017-05-31 12:11:25.223560757 +0200 ++++ libstdc++-v3/src/nonshared98/sstream-inst.cc 2017-05-31 15:26:10.374633331 +0200 +@@ -0,0 +1,39 @@ ++// Explicit instantiation file. ++ ++// Copyright (C) 1997-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: ++// ++ ++#include ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++ template void basic_stringbuf::_M_pbump(char_type*, char_type*, off_type); ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template void basic_stringbuf::_M_pbump(char_type*, char_type*, off_type); ++#endif ++ ++} // namespace +--- libstdc++-v3/src/nonshared98/float128.S.jj 2017-05-31 12:11:25.228560696 +0200 ++++ libstdc++-v3/src/nonshared98/float128.S 2017-05-31 12:11:25.228560696 +0200 +@@ -0,0 +1,162 @@ ++/* Copyright (C) 2012-2017 Free Software Foundation, Inc. ++ ++ This file is part of the GNU ISO C++ Library. This library is free ++ software; you can redistribute it and/or modify it under the ++ terms of the GNU General Public License as published by the ++ Free Software Foundation; either version 3, or (at your option) ++ any later version. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ ++ Under Section 7 of GPL version 3, you are granted additional ++ permissions described in the GCC Runtime Library Exception, version ++ 3.1, as published by the Free Software Foundation. ++ ++ You should have received a copy of the GNU General Public License and ++ a copy of the GCC Runtime Library Exception along with this program; ++ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++ . */ ++ ++#if defined __x86_64__ || defined __i386__ || defined __ia64__ ++#ifdef __i386__ ++#define ALIGN1 .align 4 ++#elif defined __x86_64__ ++#define ALIGN1 .align 32 ++#define ALIGN2 .align 16 ++#elif defined __ia64__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 8 ++#define SECTION3(x).section .gnu.linkonce.s.x,"aws",@progbits ++#define POINTER data8 ++#define FLAGS data4 ++#define PAD .skip 4 ++#define STRING stringz ++#elif defined __powerpc64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#elif defined __powerpc__ ++#define ALIGN1 .align 2 ++#define ALIGN3 .align 2 ++#define SECTION2(x).section .gnu.linkonce.s.x,"aw",@progbits ++#define SECTION3(x)SECTION2(x) ++#elif defined __aarch64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#define POINTER .xword ++#define FLAGS .word ++#define OBJECT %object ++#elif defined __s390x__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 2 ++#elif defined __s390__ ++#define ALIGN1 .align 4 ++#define ALIGN3 .align 2 ++#endif ++#if defined __x86_64__ || defined __powerpc64__ || defined __s390x__ || defined __ia64__ || defined __aarch64__ ++#define SIZE1 32 ++#define SIZE2 16 ++#define OFF 16 ++#ifndef POINTER ++#define POINTER .quad ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD .zero 4 ++#endif ++#else ++#define SIZE1 16 ++#define SIZE2 8 ++#define OFF 8 ++#ifndef POINTER ++#define POINTER .long ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD ++#endif ++#endif ++#ifndef SYM ++#define SYM(x)x ++#endif ++#ifndef ALIGN2 ++#define ALIGN2 ALIGN1 ++#endif ++#ifndef ALIGN3 ++#define ALIGN3 ++#endif ++#ifndef OBJECT ++#define OBJECT @object ++#endif ++#ifndef SECTION1 ++#define SECTION1(x).section .gnu.linkonce.d.rel.ro.x,"aw",@progbits ++#endif ++#ifndef SECTION2 ++#define SECTION2(x)SECTION1(x) ++#endif ++#ifndef SECTION3 ++#define SECTION3(x).section .gnu.linkonce.r.x,"a",@progbits ++#endif ++#ifndef STRING ++#define STRING .string ++#endif ++ ++ .weak SYM(_ZTIPKg) ++ SECTION1(_ZTIPKg) ++ ALIGN1 ++ .type SYM(_ZTIPKg), OBJECT ++ .size SYM(_ZTIPKg), SIZE1 ++_ZTIPKg: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPKg) ++ FLAGS 1 ++ PAD ++ POINTER SYM(_ZTIg) ++ .weak SYM(_ZTIPg) ++ SECTION1(_ZTIPg) ++ ALIGN1 ++ .type SYM(_ZTIPg), OBJECT ++ .size SYM(_ZTIPg), SIZE1 ++_ZTIPg: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPg) ++ FLAGS 0 ++ PAD ++ POINTER SYM(_ZTIg) ++ .weak SYM(_ZTIg) ++ SECTION2(_ZTIg) ++ ALIGN2 ++ .type SYM(_ZTIg), OBJECT ++ .size SYM(_ZTIg), SIZE2 ++_ZTIg: ++ POINTER SYM(_ZTVN10__cxxabiv123__fundamental_type_infoE)+OFF ++ POINTER SYM(_ZTSg) ++ .weak SYM(_ZTSPKg) ++ SECTION3(_ZTSPKg) ++ ALIGN3 ++ .type SYM(_ZTSPKg), OBJECT ++ .size SYM(_ZTSPKg), 4 ++_ZTSPKg: ++ STRING "PKg" ++ .weak SYM(_ZTSPg) ++ SECTION3(_ZTSPg) ++ ALIGN3 ++ .type SYM(_ZTSPg), OBJECT ++ .size SYM(_ZTSPg), 3 ++_ZTSPg: ++ STRING "Pg" ++ .weak SYM(_ZTSg) ++ SECTION3(_ZTSg) ++ ALIGN3 ++ .type SYM(_ZTSg), OBJECT ++ .size SYM(_ZTSg), 2 ++_ZTSg: ++ STRING "g" ++#endif ++ .section .note.GNU-stack,"",@progbits +--- libstdc++-v3/src/nonshared98/pure.cc.jj 2017-05-31 12:11:25.221560781 +0200 ++++ libstdc++-v3/src/nonshared98/pure.cc 2017-05-31 15:26:10.373633343 +0200 +@@ -0,0 +1,51 @@ ++// -*- C++ -*- ++// Copyright (C) 2000-2017 Free Software Foundation ++// ++// This file is part of GCC. ++// ++// GCC is free software; you can redistribute it and/or modify ++// it under the terms of the GNU General Public License as published by ++// the Free Software Foundation; either version 3, or (at your option) ++// any later version. ++// ++// GCC is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++// ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++#include ++#include "unwind-cxx.h" ++ ++#if _GLIBCXX_HOSTED ++#ifdef _GLIBCXX_HAVE_UNISTD_H ++# include ++# define writestr(str) write(2, str, sizeof(str) - 1) ++# ifdef __GNU_LIBRARY__ ++ /* Avoid forcing the library's meaning of `write' on the user program ++ by using the "internal" name (for use within the library). */ ++/*# define write(fd, buf, n) __write((fd), (buf), (n))*/ ++# endif ++#else ++# include ++# define writestr(str) std::fputs(str, stderr) ++#endif ++#else ++# define writestr(str) /* Empty */ ++#endif ++ ++extern "C" void ++__cxxabiv1::__cxa_deleted_virtual (void) ++{ ++ writestr ("deleted virtual method called\n"); ++ std::terminate (); ++} +--- libstdc++-v3/src/nonshared98/eh_exception.cc.jj 2017-05-31 12:11:25.222560769 +0200 ++++ libstdc++-v3/src/nonshared98/eh_exception.cc 2017-05-31 15:26:10.369633390 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 1994-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#define _GLIBCXX_NONSHARED_CXX98 1 ++#include "../libsupc++/eh_exception.cc" +--- libstdc++-v3/src/nonshared98/streambuf-inst.cc.jj 2017-05-31 12:11:25.228560696 +0200 ++++ libstdc++-v3/src/nonshared98/streambuf-inst.cc 2017-05-31 15:26:10.374633331 +0200 +@@ -0,0 +1,36 @@ ++// Copyright (C) 1997-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++#include ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++ ++ template void basic_streambuf::__safe_gbump(std::streamsize); ++ template void basic_streambuf::__safe_pbump(std::streamsize); ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template void basic_streambuf::__safe_gbump(std::streamsize); ++ template void basic_streambuf::__safe_pbump(std::streamsize); ++#endif ++ ++} +--- libstdc++-v3/src/nonshared98/int12848.S.jj 2017-05-31 12:11:25.224560745 +0200 ++++ libstdc++-v3/src/nonshared98/int12848.S 2017-05-31 12:11:25.224560745 +0200 +@@ -0,0 +1,24 @@ ++/* Copyright (C) 2012-2017 Free Software Foundation, Inc. ++ ++ This file is part of the GNU ISO C++ Library. This library is free ++ software; you can redistribute it and/or modify it under the ++ terms of the GNU General Public License as published by the ++ Free Software Foundation; either version 3, or (at your option) ++ any later version. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ ++ Under Section 7 of GPL version 3, you are granted additional ++ permissions described in the GCC Runtime Library Exception, version ++ 3.1, as published by the Free Software Foundation. ++ ++ You should have received a copy of the GNU General Public License and ++ a copy of the GCC Runtime Library Exception along with this program; ++ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++ . */ ++ ++#define _GLIBCXX_NONSHARED_CXX11_48 ++#include "int128.S" +--- libstdc++-v3/src/nonshared98/eh_tm.cc.jj 2017-05-31 12:11:25.223560757 +0200 ++++ libstdc++-v3/src/nonshared98/eh_tm.cc 2017-05-31 15:26:10.369633390 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/eh_tm.cc" +--- libstdc++-v3/src/nonshared98/snprintf_lite-inst.cc.jj 2017-05-31 12:11:25.225560733 +0200 ++++ libstdc++-v3/src/nonshared98/snprintf_lite-inst.cc 2017-05-31 15:26:10.373633343 +0200 +@@ -0,0 +1,41 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++ template ++ int ++ __int_to_char(char*, ++#ifdef _GLIBCXX_USE_LONG_LONG ++ unsigned long long, ++#else ++ unsigned long, ++#endif ++ const char*, ios_base::fmtflags, bool); ++} ++#ifdef _GLIBCXX_USE_LONG_LONG ++asm (".hidden _ZSt13__int_to_charIcyEiPT_T0_PKS0_St13_Ios_Fmtflagsb"); ++#else ++asm (".hidden _ZSt13__int_to_charIcmEiPT_T0_PKS0_St13_Ios_Fmtflagsb"); ++#endif +--- libstdc++-v3/src/nonshared98/locale_facets.cc.jj 2017-05-31 12:11:25.223560757 +0200 ++++ libstdc++-v3/src/nonshared98/locale_facets.cc 2017-05-31 15:26:10.371633366 +0200 +@@ -0,0 +1,29 @@ ++// Copyright (C) 1997-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#define _GLIBCXX_NONSHARED_CXX11 ++#include "../c++98/locale_facets.cc" ++#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__)) ++asm (".hidden _ZSt22__verify_grouping_implPKcjS0_j"); ++#else ++asm (".hidden _ZSt22__verify_grouping_implPKcmS0_m"); ++#endif +--- libstdc++-v3/src/nonshared98/misc-inst.cc.jj 2017-05-31 12:11:25.226560721 +0200 ++++ libstdc++-v3/src/nonshared98/misc-inst.cc 2017-05-31 15:26:10.372633354 +0200 +@@ -0,0 +1,25 @@ ++// Copyright (C) 1997-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++98/misc-inst.cc" ++asm (".hidden _ZNKSt5ctypeIcE8do_widenEc"); ++ +--- libstdc++-v3/src/nonshared98/decimal-rtti.S.jj 2017-05-31 12:11:25.227560709 +0200 ++++ libstdc++-v3/src/nonshared98/decimal-rtti.S 2017-05-31 12:11:25.227560709 +0200 +@@ -0,0 +1,274 @@ ++/* Copyright (C) 2012-2017 Free Software Foundation, Inc. ++ ++ This file is part of the GNU ISO C++ Library. This library is free ++ software; you can redistribute it and/or modify it under the ++ terms of the GNU General Public License as published by the ++ Free Software Foundation; either version 3, or (at your option) ++ any later version. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ ++ Under Section 7 of GPL version 3, you are granted additional ++ permissions described in the GCC Runtime Library Exception, version ++ 3.1, as published by the Free Software Foundation. ++ ++ You should have received a copy of the GNU General Public License and ++ a copy of the GCC Runtime Library Exception along with this program; ++ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++ . */ ++ ++#if defined __x86_64__ || defined __powerpc64__ || defined __s390x__ || defined __ia64__ || defined __aarch64__ \ ++ || defined __i386__ || defined __powerpc__ || defined __s390__ ++#ifdef __i386__ ++#define ALIGN1 .align 4 ++#elif defined __x86_64__ ++#define ALIGN1 .align 32 ++#define ALIGN2 .align 16 ++#elif defined __ia64__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 8 ++#define SECTION3(x).section .gnu.linkonce.s.x,"aws",@progbits ++#define POINTER data8 ++#define FLAGS data4 ++#define PAD .skip 4 ++#define STRING stringz ++#elif defined __powerpc64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#elif defined __powerpc__ ++#define ALIGN1 .align 2 ++#define ALIGN3 .align 2 ++#define SECTION2(x).section .gnu.linkonce.s.x,"aw",@progbits ++#define SECTION3(x)SECTION2(x) ++#elif defined __aarch64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#define POINTER .xword ++#define FLAGS .word ++#define OBJECT %object ++#elif defined __s390x__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 2 ++#elif defined __s390__ ++#define ALIGN1 .align 4 ++#define ALIGN3 .align 2 ++#endif ++#if defined __x86_64__ || defined __powerpc64__ || defined __s390x__ || defined __ia64__ || defined __aarch64__ ++#define SIZE1 32 ++#define SIZE2 16 ++#define OFF 16 ++#ifndef POINTER ++#define POINTER .quad ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD .zero 4 ++#endif ++#else ++#define SIZE1 16 ++#define SIZE2 8 ++#define OFF 8 ++#ifndef POINTER ++#define POINTER .long ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD ++#endif ++#endif ++#ifndef SYM ++#define SYM(x)x ++#endif ++#ifndef ALIGN2 ++#define ALIGN2 ALIGN1 ++#endif ++#ifndef ALIGN3 ++#define ALIGN3 ++#endif ++#ifndef OBJECT ++#define OBJECT @object ++#endif ++#ifndef SECTION1 ++#define SECTION1(x).section .gnu.linkonce.d.rel.ro.x,"aw",@progbits ++#endif ++#ifndef SECTION2 ++#define SECTION2(x)SECTION1(x) ++#endif ++#ifndef SECTION3 ++#define SECTION3(x).section .gnu.linkonce.r.x,"a",@progbits ++#endif ++#ifndef STRING ++#define STRING .string ++#endif ++ ++ .weak SYM(_ZTIPKDd) ++ SECTION1(_ZTIPKDd) ++ ALIGN1 ++ .type SYM(_ZTIPKDd), OBJECT ++ .size SYM(_ZTIPKDd), SIZE1 ++_ZTIPKDd: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPKDd) ++ FLAGS 1 ++ PAD ++ POINTER SYM(_ZTIDd) ++ .weak SYM(_ZTIPDd) ++ SECTION1(_ZTIPDd) ++ ALIGN1 ++ .type SYM(_ZTIPDd), OBJECT ++ .size SYM(_ZTIPDd), SIZE1 ++_ZTIPDd: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPDd) ++ FLAGS 0 ++ PAD ++ POINTER SYM(_ZTIDd) ++ .weak SYM(_ZTIDd) ++ SECTION2(_ZTIDd) ++ ALIGN2 ++ .type SYM(_ZTIDd), OBJECT ++ .size SYM(_ZTIDd), SIZE2 ++_ZTIDd: ++ POINTER SYM(_ZTVN10__cxxabiv123__fundamental_type_infoE)+OFF ++ POINTER SYM(_ZTSDd) ++ .weak SYM(_ZTIPKDe) ++ SECTION1(_ZTIPKDe) ++ ALIGN1 ++ .type SYM(_ZTIPKDe), OBJECT ++ .size SYM(_ZTIPKDe), SIZE1 ++_ZTIPKDe: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPKDe) ++ FLAGS 1 ++ PAD ++ POINTER SYM(_ZTIDe) ++ .weak SYM(_ZTIPDe) ++ SECTION1(_ZTIPDe) ++ ALIGN1 ++ .type SYM(_ZTIPDe), OBJECT ++ .size SYM(_ZTIPDe), SIZE1 ++_ZTIPDe: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPDe) ++ FLAGS 0 ++ PAD ++ POINTER SYM(_ZTIDe) ++ .weak SYM(_ZTIDe) ++ SECTION2(_ZTIDe) ++ ALIGN2 ++ .type SYM(_ZTIDe), OBJECT ++ .size SYM(_ZTIDe), SIZE2 ++_ZTIDe: ++ POINTER SYM(_ZTVN10__cxxabiv123__fundamental_type_infoE)+OFF ++ POINTER SYM(_ZTSDe) ++ .weak SYM(_ZTIPKDf) ++ SECTION1(_ZTIPKDf) ++ ALIGN1 ++ .type SYM(_ZTIPKDf), OBJECT ++ .size SYM(_ZTIPKDf), SIZE1 ++_ZTIPKDf: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPKDf) ++ FLAGS 1 ++ PAD ++ POINTER SYM(_ZTIDf) ++ .weak SYM(_ZTIPDf) ++ SECTION1(_ZTIPDf) ++ ALIGN1 ++ .type SYM(_ZTIPDf), OBJECT ++ .size SYM(_ZTIPDf), SIZE1 ++_ZTIPDf: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPDf) ++ FLAGS 0 ++ PAD ++ POINTER SYM(_ZTIDf) ++ .weak SYM(_ZTIDf) ++ SECTION2(_ZTIDf) ++ ALIGN2 ++ .type SYM(_ZTIDf), OBJECT ++ .size SYM(_ZTIDf), SIZE2 ++_ZTIDf: ++ POINTER SYM(_ZTVN10__cxxabiv123__fundamental_type_infoE)+OFF ++ POINTER SYM(_ZTSDf) ++ .weak SYM(_ZTSPKDd) ++ .hidden SYM(_ZTSPKDd) ++ SECTION3(_ZTSPKDd) ++ ALIGN3 ++ .type SYM(_ZTSPKDd), OBJECT ++ .size SYM(_ZTSPKDd), 5 ++_ZTSPKDd: ++ STRING "PKDd" ++ .weak SYM(_ZTSPDd) ++ .hidden SYM(_ZTSPDd) ++ SECTION3(_ZTSPDd) ++ ALIGN3 ++ .type SYM(_ZTSPDd), OBJECT ++ .size SYM(_ZTSPDd), 4 ++_ZTSPDd: ++ STRING "PDd" ++ .weak SYM(_ZTSDd) ++ .hidden SYM(_ZTSDd) ++ SECTION3(_ZTSDd) ++ ALIGN3 ++ .type SYM(_ZTSDd), OBJECT ++ .size SYM(_ZTSDd), 3 ++_ZTSDd: ++ STRING "Dd" ++ .weak SYM(_ZTSPKDe) ++ .hidden SYM(_ZTSPKDe) ++ SECTION3(_ZTSPKDe) ++ ALIGN3 ++ .type SYM(_ZTSPKDe), OBJECT ++ .size SYM(_ZTSPKDe), 5 ++_ZTSPKDe: ++ STRING "PKDe" ++ .weak SYM(_ZTSPDe) ++ .hidden SYM(_ZTSPDe) ++ SECTION3(_ZTSPDe) ++ ALIGN3 ++ .type SYM(_ZTSPDe), OBJECT ++ .size SYM(_ZTSPDe), 4 ++_ZTSPDe: ++ STRING "PDe" ++ .weak SYM(_ZTSDe) ++ .hidden SYM(_ZTSDe) ++ SECTION3(_ZTSDe) ++ ALIGN3 ++ .type SYM(_ZTSDe), OBJECT ++ .size SYM(_ZTSDe), 3 ++_ZTSDe: ++ STRING "De" ++ .weak SYM(_ZTSPKDf) ++ .hidden SYM(_ZTSPKDf) ++ SECTION3(_ZTSPKDf) ++ ALIGN3 ++ .type SYM(_ZTSPKDf), OBJECT ++ .size SYM(_ZTSPKDf), 5 ++_ZTSPKDf: ++ STRING "PKDf" ++ .weak SYM(_ZTSPDf) ++ .hidden SYM(_ZTSPDf) ++ SECTION3(_ZTSPDf) ++ ALIGN3 ++ .type SYM(_ZTSPDf), OBJECT ++ .size SYM(_ZTSPDf), 4 ++_ZTSPDf: ++ STRING "PDf" ++ .weak SYM(_ZTSDf) ++ .hidden SYM(_ZTSDf) ++ SECTION3(_ZTSDf) ++ ALIGN3 ++ .type SYM(_ZTSDf), OBJECT ++ .size SYM(_ZTSDf), 3 ++_ZTSDf: ++ STRING "Df" ++#endif ++ .section .note.GNU-stack,"",@progbits +--- libstdc++-v3/src/nonshared98/locale.cc.jj 2017-05-31 12:11:25.229560684 +0200 ++++ libstdc++-v3/src/nonshared98/locale.cc 2017-05-31 15:26:10.371633366 +0200 +@@ -0,0 +1,84 @@ ++// Copyright (C) 1997-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#define _GLIBCXX_USE_CXX11_ABI 1 ++#include ++ ++namespace __gnu_cxx _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ const char* const category_names[6 + _GLIBCXX_NUM_CATEGORIES] = ++ { ++ "LC_CTYPE", ++ "LC_NUMERIC", ++ "LC_TIME", ++ "LC_COLLATE", ++ "LC_MONETARY", ++ "LC_MESSAGES", ++ "LC_PAPER", ++ "LC_NAME", ++ "LC_ADDRESS", ++ "LC_TELEPHONE", ++ "LC_MEASUREMENT", ++ "LC_IDENTIFICATION" ++ }; ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ const char* const* const locale::_S_categories = __gnu_cxx::category_names; ++ ++ _GLIBCXX_DEFAULT_ABI_TAG ++ string ++ locale::name() const ++ { ++ string __ret; ++ if (!_M_impl->_M_names[0]) ++ __ret = '*'; ++ else if (_M_impl->_M_check_same_name()) ++ __ret = _M_impl->_M_names[0]; ++ else ++ { ++ __ret.reserve(128); ++ __ret += _S_categories[0]; ++ __ret += '='; ++ __ret += _M_impl->_M_names[0]; ++ for (size_t __i = 1; __i < _S_categories_size; ++__i) ++ { ++ __ret += ';'; ++ __ret += _S_categories[__i]; ++ __ret += '='; ++ __ret += _M_impl->_M_names[__i]; ++ } ++ } ++ return __ret; ++ } ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace ++ ++asm (".hidden _ZNSt6locale13_S_categoriesE"); +--- libstdc++-v3/src/nonshared98/list.cc.jj 2017-05-31 12:11:25.227560709 +0200 ++++ libstdc++-v3/src/nonshared98/list.cc 2017-05-31 15:26:10.370633378 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++98/list.cc" +--- libstdc++-v3/src/nonshared98/wlocale-inst.cc.jj 2017-05-31 12:11:25.222560769 +0200 ++++ libstdc++-v3/src/nonshared98/wlocale-inst.cc 2017-05-31 15:26:10.375633319 +0200 +@@ -0,0 +1,28 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++#define C wchar_t ++#include "locale-inst.cc" ++#endif +--- libstdc++-v3/src/nonshared98/locale-inst.cc.jj 2017-05-31 12:11:25.228560696 +0200 ++++ libstdc++-v3/src/nonshared98/locale-inst.cc 2017-05-31 15:26:10.371633366 +0200 +@@ -0,0 +1,39 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++ ++#ifndef C ++# define C char ++#endif ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++ ++ typedef time_get S; ++ ++ template ++ S::iter_type S::_M_extract_wday_or_month(iter_type, iter_type, int&, ++ const C **, size_t, ios_base&, ++ ios_base::iostate&) const; ++ ++} +--- libstdc++-v3/src/nonshared98/stdexcept.cc.jj 2017-05-31 12:11:25.227560709 +0200 ++++ libstdc++-v3/src/nonshared98/stdexcept.cc 2017-05-31 15:26:10.374633331 +0200 +@@ -0,0 +1,44 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#ifdef __ARM_EABI__ ++#define RET const void * ++#else ++#define RET void ++#endif ++#define BASE_DTOR(name) \ ++extern RET _ZN##name##D1Ev (const void *t); \ ++RET _ZN##name##D2Ev (const void *t) \ ++{ \ ++ return _ZN##name##D1Ev (t); \ ++} \ ++ ++extern "C" ++{ ++ BASE_DTOR (St11range_error) ++ BASE_DTOR (St12domain_error) ++ BASE_DTOR (St12length_error) ++ BASE_DTOR (St12out_of_range) ++ BASE_DTOR (St14overflow_error) ++ BASE_DTOR (St15underflow_error) ++ BASE_DTOR (St16invalid_argument) ++} +--- libstdc++-v3/src/nonshared98/istream-string.cc.jj 2017-05-31 12:11:25.228560696 +0200 ++++ libstdc++-v3/src/nonshared98/istream-string.cc 2017-05-31 15:26:10.369633390 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++98/istream-string.cc" +--- libstdc++-v3/src/nonshared98/c++locale.cc.jj 2017-05-31 12:11:25.223560757 +0200 ++++ libstdc++-v3/src/nonshared98/c++locale.cc 2017-06-01 13:07:44.806606975 +0200 +@@ -0,0 +1,33 @@ ++// Copyright (C) 2016-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#define _GLIBCXX_NONSHARED_CXX98 1 ++#include "../c++98/c++locale.cc" ++asm (".hidden _ZNKSt8Catalogs6_M_getEi"); ++asm (".hidden _ZNSt8Catalogs6_M_addEPKcSt6locale"); ++asm (".hidden _ZNSt8Catalogs8_M_eraseEi"); ++asm (".hidden _ZNSt8CatalogsD1Ev"); ++asm (".hidden _ZNSt8CatalogsD2Ev"); ++asm (".hidden _ZSt12get_catalogsv"); ++asm (".hidden _ZN9__gnu_cxx13__scoped_lockD1Ev"); ++asm (".hidden _ZN9__gnu_cxx13__scoped_lockD2Ev"); ++asm (".hidden _ZNSt6vectorIPSt12Catalog_infoSaIS1_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS1_S3_EERKS1_"); +--- libstdc++-v3/src/nonshared98/Makefile.am.jj 2017-05-31 12:11:25.225560733 +0200 ++++ libstdc++-v3/src/nonshared98/Makefile.am 2017-05-31 12:11:25.225560733 +0200 +@@ -0,0 +1,155 @@ ++## Makefile for the C++03 sources of the GNU C++ Standard library. ++## ++## Copyright (C) 1997-2017 Free Software Foundation, Inc. ++## ++## This file is part of the libstdc++ version 3 distribution. ++## Process this file with automake to produce Makefile.in. ++ ++## This file is part of the GNU ISO C++ Library. This library is free ++## software; you can redistribute it and/or modify it under the ++## terms of the GNU General Public License as published by the ++## Free Software Foundation; either version 3, or (at your option) ++## any later version. ++ ++## This library is distributed in the hope that it will be useful, ++## but WITHOUT ANY WARRANTY; without even the implied warranty of ++## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++## GNU General Public License for more details. ++ ++## You should have received a copy of the GNU General Public License along ++## with this library; see the file COPYING3. If not see ++## . ++ ++include $(top_srcdir)/fragment.am ++ ++# Convenience library for C++98 runtime. ++noinst_LTLIBRARIES = libnonshared98convenience44.la \ ++ libnonshared98convenience48.la ++ ++headers = ++ ++# Source files linked in via configuration/make substitution for a ++# particular host, but with ad hoc naming rules. ++host_sources_extra = \ ++ basic_file.cc c++locale.cc \ ++ ${ldbl_compat_sources} ${parallel_sources} ++ ++parallel_sources44 = list_associated-2.cc ++ ++if ENABLE_EXTERN_TEMPLATE ++# XTEMPLATE_FLAGS = -fno-implicit-templates ++inst_sources = \ ++ snprintf_lite-inst.cc \ ++ misc-inst.cc ++inst_sources44 = \ ++ locale-inst.cc \ ++ wlocale-inst.cc \ ++ sstream-inst.cc \ ++ streambuf-inst.cc ++else ++# XTEMPLATE_FLAGS = ++inst_sources = ++inst_sources44 = ++endif ++ ++# Sources present in the src directory, always present. ++sources = \ ++ collate_members.cc \ ++ float128.S \ ++ istream-string.cc \ ++ locale.cc \ ++ locale_facets.cc \ ++ c++locale.cc \ ++ messages_members.cc \ ++ monetary_members.cc \ ++ numeric_members.cc \ ++ eh_exception.cc \ ++ eh_catch.cc \ ++ ${inst_sources} ++sources44 = \ ++ list-aux-2.cc \ ++ decimal-rtti.S \ ++ nullptr-rtti.S \ ++ int128.S \ ++ compatibility-debug_list-2.cc \ ++ list.cc \ ++ hash_bytes.cc \ ++ stdexcept.cc \ ++ eh_alloc.cc \ ++ eh_tm.cc \ ++ pure.cc \ ++ ${parallel_sources44} \ ++ ${inst_sources44} ++sources48 = int12848.S \ ++ eh_alloc48.cc ++ ++vpath % $(top_srcdir)/src/nonshared98 ++vpath % $(top_srcdir) ++ ++libnonshared98convenience44_la_SOURCES = $(sources) $(sources44) ++libnonshared98convenience48_la_SOURCES = $(sources) $(sources48) ++ ++# AM_CXXFLAGS needs to be in each subdirectory so that it can be ++# modified in a per-library or per-sub-library way. Need to manually ++# set this option because CONFIG_CXXFLAGS has to be after ++# OPTIMIZE_CXXFLAGS on the compile line so that -O2 can be overridden ++# as the occasion calls for it. ++AM_CXXFLAGS = \ ++ -std=gnu++98 \ ++ $(glibcxx_lt_pic_flag) $(glibcxx_compiler_shared_flag) \ ++ $(XTEMPLATE_FLAGS) $(VTV_CXXFLAGS) \ ++ $(WARN_CXXFLAGS) $(OPTIMIZE_CXXFLAGS) $(CONFIG_CXXFLAGS) ++ ++AM_MAKEFLAGS = \ ++ "gxx_include_dir=$(gxx_include_dir)" ++ ++# Libtool notes ++ ++# 1) Need to explicitly set LTCXXCOMPILE so that AM_CXXFLAGS is ++# last. (That way, things like -O2 passed down from the toplevel can ++# be overridden by --enable-debug.) ++ ++# 2) In general, libtool expects an argument such as `--tag=CXX' when ++# using the C++ compiler, because that will enable the settings ++# detected when C++ support was being configured. However, when no ++# such flag is given in the command line, libtool attempts to figure ++# it out by matching the compiler name in each configuration section ++# against a prefix of the command line. The problem is that, if the ++# compiler name and its initial flags stored in the libtool ++# configuration file don't match those in the command line, libtool ++# can't decide which configuration to use, and it gives up. The ++# correct solution is to add `--tag CXX' to LTCXXCOMPILE and maybe ++# CXXLINK, just after $(LIBTOOL), so that libtool doesn't have to ++# attempt to infer which configuration to use. ++# We have to put --tag disable-shared after --tag CXX lest things ++# CXX undo the affect of disable-shared. ++LTCXXCOMPILE = $(LIBTOOL) --tag CXX --tag disable-shared $(LIBTOOLFLAGS) \ ++ --mode=compile $(CXX) $(TOPLEVEL_INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(EXTRA_CXX_FLAGS) ++ ++LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS)) ++ ++# 3) We'd have a problem when building the shared libstdc++ object if ++# the rules automake generates would be used. We cannot allow g++ to ++# be used since this would add -lstdc++ to the link line which of ++# course is problematic at this point. So, we get the top-level ++# directory to configure libstdc++-v3 to use gcc as the C++ ++# compilation driver. ++CXXLINK = $(LIBTOOL) --tag CXX --tag disable-shared $(LIBTOOLFLAGS) \ ++ --mode=link $(CXX) \ ++ $(VTV_CXXLINKFLAGS) \ ++ $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@ ++ ++collate_members.lo: collate_members.cc ++ $(LTCXXCOMPILE) -I. -c $< ++messages_members.lo: messages_members.cc ++ $(LTCXXCOMPILE) -I. -c $< ++monetary_members.lo: monetary_members.cc ++ $(LTCXXCOMPILE) -I. -c $< ++numeric_members.lo: numeric_members.cc ++ $(LTCXXCOMPILE) -I. -c $< ++# Use special rules to compile with -fimplicit-templates. ++c++locale.lo: c++locale.cc ++ $(LTCXXCOMPILE) -I. -fimplicit-templates -c $< ++c++locale.o: c++locale.cc ++ $(CXXCOMPILE) -I. -fimplicit-templates -c $< +--- libstdc++-v3/src/nonshared98/monetary_members.cc.jj 2017-05-31 12:11:25.225560733 +0200 ++++ libstdc++-v3/src/nonshared98/monetary_members.cc 2017-05-31 15:26:10.372633354 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#define _GLIBCXX_USE_CXX11_ABI 1 ++#include "../c++98/monetary_members.cc" +--- libstdc++-v3/src/nonshared98/messages_members.cc.jj 2017-05-31 12:11:25.225560733 +0200 ++++ libstdc++-v3/src/nonshared98/messages_members.cc 2017-05-31 15:26:10.372633354 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#define _GLIBCXX_USE_CXX11_ABI 1 ++#include "../c++98/messages_members.cc" +--- libstdc++-v3/src/nonshared98/Makefile.in.jj 2017-05-31 12:11:25.226560721 +0200 ++++ libstdc++-v3/src/nonshared98/Makefile.in 2017-06-01 12:24:32.509494130 +0200 +@@ -0,0 +1,753 @@ ++# Makefile.in generated by automake 1.11.6 from Makefile.am. ++# @configure_input@ ++ ++# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, ++# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software ++# Foundation, Inc. ++# This Makefile.in is free software; the Free Software Foundation ++# gives unlimited permission to copy and/or distribute it, ++# with or without modifications, as long as this notice is preserved. ++ ++# This program is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY, to the extent permitted by law; without ++# even the implied warranty of MERCHANTABILITY or FITNESS FOR A ++# PARTICULAR PURPOSE. ++ ++@SET_MAKE@ ++ ++VPATH = @srcdir@ ++am__make_dryrun = \ ++ { \ ++ am__dry=no; \ ++ case $$MAKEFLAGS in \ ++ *\\[\ \ ]*) \ ++ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ ++ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ ++ *) \ ++ for am__flg in $$MAKEFLAGS; do \ ++ case $$am__flg in \ ++ *=*|--*) ;; \ ++ *n*) am__dry=yes; break;; \ ++ esac; \ ++ done;; \ ++ esac; \ ++ test $$am__dry = yes; \ ++ } ++pkgdatadir = $(datadir)/@PACKAGE@ ++pkgincludedir = $(includedir)/@PACKAGE@ ++pkglibdir = $(libdir)/@PACKAGE@ ++pkglibexecdir = $(libexecdir)/@PACKAGE@ ++am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd ++install_sh_DATA = $(install_sh) -c -m 644 ++install_sh_PROGRAM = $(install_sh) -c ++install_sh_SCRIPT = $(install_sh) -c ++INSTALL_HEADER = $(INSTALL_DATA) ++transform = $(program_transform_name) ++NORMAL_INSTALL = : ++PRE_INSTALL = : ++POST_INSTALL = : ++NORMAL_UNINSTALL = : ++PRE_UNINSTALL = : ++POST_UNINSTALL = : ++build_triplet = @build@ ++host_triplet = @host@ ++target_triplet = @target@ ++DIST_COMMON = $(top_srcdir)/fragment.am $(srcdir)/Makefile.in \ ++ $(srcdir)/Makefile.am ++subdir = src/nonshared98 ++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ++am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \ ++ $(top_srcdir)/../config/enable.m4 \ ++ $(top_srcdir)/../config/futex.m4 \ ++ $(top_srcdir)/../config/hwcaps.m4 \ ++ $(top_srcdir)/../config/iconv.m4 \ ++ $(top_srcdir)/../config/lead-dot.m4 \ ++ $(top_srcdir)/../config/lib-ld.m4 \ ++ $(top_srcdir)/../config/lib-link.m4 \ ++ $(top_srcdir)/../config/lib-prefix.m4 \ ++ $(top_srcdir)/../config/lthostflags.m4 \ ++ $(top_srcdir)/../config/multi.m4 \ ++ $(top_srcdir)/../config/no-executables.m4 \ ++ $(top_srcdir)/../config/override.m4 \ ++ $(top_srcdir)/../config/stdint.m4 \ ++ $(top_srcdir)/../config/unwind_ipinfo.m4 \ ++ $(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \ ++ $(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \ ++ $(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/crossconfig.m4 \ ++ $(top_srcdir)/linkage.m4 $(top_srcdir)/acinclude.m4 \ ++ $(top_srcdir)/../config/gc++filt.m4 \ ++ $(top_srcdir)/../config/tls.m4 $(top_srcdir)/../config/gthr.m4 \ ++ $(top_srcdir)/configure.ac ++am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ ++ $(ACLOCAL_M4) ++CONFIG_HEADER = $(top_builddir)/config.h ++CONFIG_CLEAN_FILES = ++CONFIG_CLEAN_VPATH_FILES = ++LTLIBRARIES = $(noinst_LTLIBRARIES) ++libnonshared98convenience44_la_LIBADD = ++@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_1 = snprintf_lite-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ misc-inst.lo ++am__objects_2 = collate_members.lo float128.lo istream-string.lo \ ++ locale.lo locale_facets.lo c++locale.lo messages_members.lo \ ++ monetary_members.lo numeric_members.lo eh_exception.lo \ ++ eh_catch.lo $(am__objects_1) ++am__objects_3 = list_associated-2.lo ++@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_4 = locale-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ wlocale-inst.lo sstream-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ streambuf-inst.lo ++am__objects_5 = list-aux-2.lo decimal-rtti.lo nullptr-rtti.lo \ ++ int128.lo compatibility-debug_list-2.lo list.lo hash_bytes.lo \ ++ stdexcept.lo eh_alloc.lo eh_tm.lo pure.lo $(am__objects_3) \ ++ $(am__objects_4) ++am_libnonshared98convenience44_la_OBJECTS = $(am__objects_2) \ ++ $(am__objects_5) ++libnonshared98convenience44_la_OBJECTS = \ ++ $(am_libnonshared98convenience44_la_OBJECTS) ++libnonshared98convenience48_la_LIBADD = ++am__objects_6 = int12848.lo eh_alloc48.lo ++am_libnonshared98convenience48_la_OBJECTS = $(am__objects_2) \ ++ $(am__objects_6) ++libnonshared98convenience48_la_OBJECTS = \ ++ $(am_libnonshared98convenience48_la_OBJECTS) ++DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) ++depcomp = ++am__depfiles_maybe = ++CPPASCOMPILE = $(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CCASFLAGS) $(CCASFLAGS) ++LTCPPASCOMPILE = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ ++ --mode=compile $(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CCASFLAGS) $(CCASFLAGS) ++CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) ++CXXLD = $(CXX) ++COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ ++ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) ++LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ ++ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) ++CCLD = $(CC) ++LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ ++ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ ++ $(LDFLAGS) -o $@ ++SOURCES = $(libnonshared98convenience44_la_SOURCES) \ ++ $(libnonshared98convenience48_la_SOURCES) ++am__can_run_installinfo = \ ++ case $$AM_UPDATE_INFO_DIR in \ ++ n|no|NO) false;; \ ++ *) (install-info --version) >/dev/null 2>&1;; \ ++ esac ++ETAGS = etags ++CTAGS = ctags ++ABI_TWEAKS_SRCDIR = @ABI_TWEAKS_SRCDIR@ ++ACLOCAL = @ACLOCAL@ ++ALLOCATOR_H = @ALLOCATOR_H@ ++ALLOCATOR_NAME = @ALLOCATOR_NAME@ ++AMTAR = @AMTAR@ ++AR = @AR@ ++AS = @AS@ ++ATOMICITY_SRCDIR = @ATOMICITY_SRCDIR@ ++ATOMIC_FLAGS = @ATOMIC_FLAGS@ ++ATOMIC_WORD_SRCDIR = @ATOMIC_WORD_SRCDIR@ ++AUTOCONF = @AUTOCONF@ ++AUTOHEADER = @AUTOHEADER@ ++AUTOMAKE = @AUTOMAKE@ ++AWK = @AWK@ ++BASIC_FILE_CC = @BASIC_FILE_CC@ ++BASIC_FILE_H = @BASIC_FILE_H@ ++CC = @CC@ ++CCAS = @CCAS@ ++CCASFLAGS = @CCASFLAGS@ ++CCODECVT_CC = @CCODECVT_CC@ ++CCOLLATE_CC = @CCOLLATE_CC@ ++CCTYPE_CC = @CCTYPE_CC@ ++CFLAGS = @CFLAGS@ ++CLOCALE_CC = @CLOCALE_CC@ ++CLOCALE_H = @CLOCALE_H@ ++CLOCALE_INTERNAL_H = @CLOCALE_INTERNAL_H@ ++CMESSAGES_CC = @CMESSAGES_CC@ ++CMESSAGES_H = @CMESSAGES_H@ ++CMONEY_CC = @CMONEY_CC@ ++CNUMERIC_CC = @CNUMERIC_CC@ ++CPP = @CPP@ ++CPPFLAGS = @CPPFLAGS@ ++CPU_DEFINES_SRCDIR = @CPU_DEFINES_SRCDIR@ ++CPU_OPT_BITS_RANDOM = @CPU_OPT_BITS_RANDOM@ ++CPU_OPT_EXT_RANDOM = @CPU_OPT_EXT_RANDOM@ ++CSTDIO_H = @CSTDIO_H@ ++CTIME_CC = @CTIME_CC@ ++CTIME_H = @CTIME_H@ ++CXX = @CXX@ ++CXXCPP = @CXXCPP@ ++CXXFILT = @CXXFILT@ ++CXXFLAGS = @CXXFLAGS@ ++CYGPATH_W = @CYGPATH_W@ ++C_INCLUDE_DIR = @C_INCLUDE_DIR@ ++DBLATEX = @DBLATEX@ ++DEBUG_FLAGS = @DEBUG_FLAGS@ ++DEFS = @DEFS@ ++DOT = @DOT@ ++DOXYGEN = @DOXYGEN@ ++DSYMUTIL = @DSYMUTIL@ ++DUMPBIN = @DUMPBIN@ ++ECHO_C = @ECHO_C@ ++ECHO_N = @ECHO_N@ ++ECHO_T = @ECHO_T@ ++EGREP = @EGREP@ ++ERROR_CONSTANTS_SRCDIR = @ERROR_CONSTANTS_SRCDIR@ ++EXEEXT = @EXEEXT@ ++EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@ ++FGREP = @FGREP@ ++GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@ ++GLIBCXX_LIBS = @GLIBCXX_LIBS@ ++GREP = @GREP@ ++HWCAP_CFLAGS = @HWCAP_CFLAGS@ ++INSTALL = @INSTALL@ ++INSTALL_DATA = @INSTALL_DATA@ ++INSTALL_PROGRAM = @INSTALL_PROGRAM@ ++INSTALL_SCRIPT = @INSTALL_SCRIPT@ ++INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ ++LD = @LD@ ++LDFLAGS = @LDFLAGS@ ++LIBICONV = @LIBICONV@ ++LIBOBJS = @LIBOBJS@ ++LIBS = @LIBS@ ++LIBTOOL = @LIBTOOL@ ++LIPO = @LIPO@ ++LN_S = @LN_S@ ++LONG_DOUBLE_COMPAT_FLAGS = @LONG_DOUBLE_COMPAT_FLAGS@ ++LTLIBICONV = @LTLIBICONV@ ++LTLIBOBJS = @LTLIBOBJS@ ++MAINT = @MAINT@ ++MAKEINFO = @MAKEINFO@ ++MKDIR_P = @MKDIR_P@ ++NM = @NM@ ++NMEDIT = @NMEDIT@ ++OBJDUMP = @OBJDUMP@ ++OBJEXT = @OBJEXT@ ++OPTIMIZE_CXXFLAGS = @OPTIMIZE_CXXFLAGS@ ++OPT_LDFLAGS = @OPT_LDFLAGS@ ++OS_INC_SRCDIR = @OS_INC_SRCDIR@ ++OTOOL = @OTOOL@ ++OTOOL64 = @OTOOL64@ ++PACKAGE = @PACKAGE@ ++PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ ++PACKAGE_NAME = @PACKAGE_NAME@ ++PACKAGE_STRING = @PACKAGE_STRING@ ++PACKAGE_TARNAME = @PACKAGE_TARNAME@ ++PACKAGE_URL = @PACKAGE_URL@ ++PACKAGE_VERSION = @PACKAGE_VERSION@ ++PATH_SEPARATOR = @PATH_SEPARATOR@ ++PDFLATEX = @PDFLATEX@ ++RANLIB = @RANLIB@ ++SECTION_FLAGS = @SECTION_FLAGS@ ++SECTION_LDFLAGS = @SECTION_LDFLAGS@ ++SED = @SED@ ++SET_MAKE = @SET_MAKE@ ++SHELL = @SHELL@ ++STRIP = @STRIP@ ++SYMVER_FILE = @SYMVER_FILE@ ++TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ ++USE_NLS = @USE_NLS@ ++VERSION = @VERSION@ ++VTV_CXXFLAGS = @VTV_CXXFLAGS@ ++VTV_CXXLINKFLAGS = @VTV_CXXLINKFLAGS@ ++VTV_PCH_CXXFLAGS = @VTV_PCH_CXXFLAGS@ ++WARN_FLAGS = @WARN_FLAGS@ ++WERROR = @WERROR@ ++XMLLINT = @XMLLINT@ ++XSLTPROC = @XSLTPROC@ ++XSL_STYLE_DIR = @XSL_STYLE_DIR@ ++abs_builddir = @abs_builddir@ ++abs_srcdir = @abs_srcdir@ ++abs_top_builddir = @abs_top_builddir@ ++abs_top_srcdir = @abs_top_srcdir@ ++ac_ct_CC = @ac_ct_CC@ ++ac_ct_CXX = @ac_ct_CXX@ ++ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ ++am__leading_dot = @am__leading_dot@ ++am__tar = @am__tar@ ++am__untar = @am__untar@ ++baseline_dir = @baseline_dir@ ++baseline_subdir_switch = @baseline_subdir_switch@ ++bindir = @bindir@ ++build = @build@ ++build_alias = @build_alias@ ++build_cpu = @build_cpu@ ++build_os = @build_os@ ++build_vendor = @build_vendor@ ++builddir = @builddir@ ++check_msgfmt = @check_msgfmt@ ++datadir = @datadir@ ++datarootdir = @datarootdir@ ++docdir = @docdir@ ++dvidir = @dvidir@ ++enable_shared = @enable_shared@ ++enable_static = @enable_static@ ++exec_prefix = @exec_prefix@ ++get_gcc_base_ver = @get_gcc_base_ver@ ++glibcxx_MOFILES = @glibcxx_MOFILES@ ++glibcxx_PCHFLAGS = @glibcxx_PCHFLAGS@ ++glibcxx_POFILES = @glibcxx_POFILES@ ++glibcxx_builddir = @glibcxx_builddir@ ++glibcxx_compiler_pic_flag = @glibcxx_compiler_pic_flag@ ++glibcxx_compiler_shared_flag = @glibcxx_compiler_shared_flag@ ++glibcxx_cxx98_abi = @glibcxx_cxx98_abi@ ++glibcxx_localedir = @glibcxx_localedir@ ++glibcxx_lt_pic_flag = @glibcxx_lt_pic_flag@ ++glibcxx_prefixdir = @glibcxx_prefixdir@ ++glibcxx_srcdir = @glibcxx_srcdir@ ++glibcxx_toolexecdir = @glibcxx_toolexecdir@ ++glibcxx_toolexeclibdir = @glibcxx_toolexeclibdir@ ++gxx_include_dir = @gxx_include_dir@ ++host = @host@ ++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@ ++libtool_VERSION = @libtool_VERSION@ ++localedir = @localedir@ ++localstatedir = @localstatedir@ ++lt_host_flags = @lt_host_flags@ ++mandir = @mandir@ ++mkdir_p = @mkdir_p@ ++multi_basedir = @multi_basedir@ ++oldincludedir = @oldincludedir@ ++pdfdir = @pdfdir@ ++port_specific_symbol_files = @port_specific_symbol_files@ ++prefix = @prefix@ ++program_transform_name = @program_transform_name@ ++psdir = @psdir@ ++python_mod_dir = @python_mod_dir@ ++sbindir = @sbindir@ ++sharedstatedir = @sharedstatedir@ ++srcdir = @srcdir@ ++sysconfdir = @sysconfdir@ ++target = @target@ ++target_alias = @target_alias@ ++target_cpu = @target_cpu@ ++target_os = @target_os@ ++target_vendor = @target_vendor@ ++thread_header = @thread_header@ ++top_build_prefix = @top_build_prefix@ ++top_builddir = @top_builddir@ ++top_srcdir = @top_srcdir@ ++toplevel_builddir = @toplevel_builddir@ ++toplevel_srcdir = @toplevel_srcdir@ ++ ++# May be used by various substitution variables. ++gcc_version := $(shell @get_gcc_base_ver@ $(top_srcdir)/../gcc/BASE-VER) ++MAINT_CHARSET = latin1 ++mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs ++PWD_COMMAND = $${PWDCMD-pwd} ++STAMP = echo timestamp > ++toolexecdir = $(glibcxx_toolexecdir) ++toolexeclibdir = $(glibcxx_toolexeclibdir) ++@ENABLE_WERROR_FALSE@WERROR_FLAG = ++@ENABLE_WERROR_TRUE@WERROR_FLAG = $(WERROR) ++@ENABLE_EXTERN_TEMPLATE_FALSE@XTEMPLATE_FLAGS = ++@ENABLE_EXTERN_TEMPLATE_TRUE@XTEMPLATE_FLAGS = -fno-implicit-templates ++ ++# These bits are all figured out from configure. Look in acinclude.m4 ++# or configure.ac to see how they are set. See GLIBCXX_EXPORT_FLAGS. ++CONFIG_CXXFLAGS = \ ++ $(SECTION_FLAGS) $(HWCAP_CFLAGS) -frandom-seed=$@ ++ ++WARN_CXXFLAGS = \ ++ $(WARN_FLAGS) $(WERROR_FLAG) -fdiagnostics-show-location=once ++ ++ ++# -I/-D flags to pass when compiling. ++AM_CPPFLAGS = $(GLIBCXX_INCLUDES) $(CPPFLAGS) ++ ++# Convenience library for C++98 runtime. ++noinst_LTLIBRARIES = libnonshared98convenience44.la \ ++ libnonshared98convenience48.la ++ ++headers = ++ ++# Source files linked in via configuration/make substitution for a ++# particular host, but with ad hoc naming rules. ++host_sources_extra = \ ++ basic_file.cc c++locale.cc \ ++ ${ldbl_compat_sources} ${parallel_sources} ++ ++parallel_sources44 = list_associated-2.cc ++# XTEMPLATE_FLAGS = ++@ENABLE_EXTERN_TEMPLATE_FALSE@inst_sources = ++ ++# XTEMPLATE_FLAGS = -fno-implicit-templates ++@ENABLE_EXTERN_TEMPLATE_TRUE@inst_sources = \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ snprintf_lite-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ misc-inst.cc ++ ++@ENABLE_EXTERN_TEMPLATE_FALSE@inst_sources44 = ++@ENABLE_EXTERN_TEMPLATE_TRUE@inst_sources44 = \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ locale-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ wlocale-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ sstream-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ streambuf-inst.cc ++ ++ ++# Sources present in the src directory, always present. ++sources = \ ++ collate_members.cc \ ++ float128.S \ ++ istream-string.cc \ ++ locale.cc \ ++ locale_facets.cc \ ++ c++locale.cc \ ++ messages_members.cc \ ++ monetary_members.cc \ ++ numeric_members.cc \ ++ eh_exception.cc \ ++ eh_catch.cc \ ++ ${inst_sources} ++ ++sources44 = \ ++ list-aux-2.cc \ ++ decimal-rtti.S \ ++ nullptr-rtti.S \ ++ int128.S \ ++ compatibility-debug_list-2.cc \ ++ list.cc \ ++ hash_bytes.cc \ ++ stdexcept.cc \ ++ eh_alloc.cc \ ++ eh_tm.cc \ ++ pure.cc \ ++ ${parallel_sources44} \ ++ ${inst_sources44} ++ ++sources48 = int12848.S \ ++ eh_alloc48.cc ++ ++libnonshared98convenience44_la_SOURCES = $(sources) $(sources44) ++libnonshared98convenience48_la_SOURCES = $(sources) $(sources48) ++ ++# AM_CXXFLAGS needs to be in each subdirectory so that it can be ++# modified in a per-library or per-sub-library way. Need to manually ++# set this option because CONFIG_CXXFLAGS has to be after ++# OPTIMIZE_CXXFLAGS on the compile line so that -O2 can be overridden ++# as the occasion calls for it. ++AM_CXXFLAGS = \ ++ -std=gnu++98 \ ++ $(glibcxx_lt_pic_flag) $(glibcxx_compiler_shared_flag) \ ++ $(XTEMPLATE_FLAGS) $(VTV_CXXFLAGS) \ ++ $(WARN_CXXFLAGS) $(OPTIMIZE_CXXFLAGS) $(CONFIG_CXXFLAGS) ++ ++AM_MAKEFLAGS = \ ++ "gxx_include_dir=$(gxx_include_dir)" ++ ++ ++# Libtool notes ++ ++# 1) Need to explicitly set LTCXXCOMPILE so that AM_CXXFLAGS is ++# last. (That way, things like -O2 passed down from the toplevel can ++# be overridden by --enable-debug.) ++ ++# 2) In general, libtool expects an argument such as `--tag=CXX' when ++# using the C++ compiler, because that will enable the settings ++# detected when C++ support was being configured. However, when no ++# such flag is given in the command line, libtool attempts to figure ++# it out by matching the compiler name in each configuration section ++# against a prefix of the command line. The problem is that, if the ++# compiler name and its initial flags stored in the libtool ++# configuration file don't match those in the command line, libtool ++# can't decide which configuration to use, and it gives up. The ++# correct solution is to add `--tag CXX' to LTCXXCOMPILE and maybe ++# CXXLINK, just after $(LIBTOOL), so that libtool doesn't have to ++# attempt to infer which configuration to use. ++# We have to put --tag disable-shared after --tag CXX lest things ++# CXX undo the affect of disable-shared. ++LTCXXCOMPILE = $(LIBTOOL) --tag CXX --tag disable-shared $(LIBTOOLFLAGS) \ ++ --mode=compile $(CXX) $(TOPLEVEL_INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(EXTRA_CXX_FLAGS) ++ ++LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS)) ++ ++# 3) We'd have a problem when building the shared libstdc++ object if ++# the rules automake generates would be used. We cannot allow g++ to ++# be used since this would add -lstdc++ to the link line which of ++# course is problematic at this point. So, we get the top-level ++# directory to configure libstdc++-v3 to use gcc as the C++ ++# compilation driver. ++CXXLINK = $(LIBTOOL) --tag CXX --tag disable-shared $(LIBTOOLFLAGS) \ ++ --mode=link $(CXX) \ ++ $(VTV_CXXLINKFLAGS) \ ++ $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@ ++ ++all: all-am ++ ++.SUFFIXES: ++.SUFFIXES: .S .cc .lo .o .obj ++$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/fragment.am $(am__configure_deps) ++ @for dep in $?; do \ ++ case '$(am__configure_deps)' in \ ++ *$$dep*) \ ++ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ ++ && { if test -f $@; then exit 0; else break; fi; }; \ ++ exit 1;; \ ++ esac; \ ++ done; \ ++ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign --ignore-deps src/nonshared98/Makefile'; \ ++ $(am__cd) $(top_srcdir) && \ ++ $(AUTOMAKE) --foreign --ignore-deps src/nonshared98/Makefile ++.PRECIOUS: Makefile ++Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status ++ @case '$?' in \ ++ *config.status*) \ ++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ ++ *) \ ++ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ ++ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ ++ esac; ++$(top_srcdir)/fragment.am: ++ ++$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) ++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ++ ++$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) ++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ++$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) ++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ++$(am__aclocal_m4_deps): ++ ++clean-noinstLTLIBRARIES: ++ -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) ++ @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ ++ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ ++ test "$$dir" != "$$p" || dir=.; \ ++ echo "rm -f \"$${dir}/so_locations\""; \ ++ rm -f "$${dir}/so_locations"; \ ++ done ++libnonshared98convenience44.la: $(libnonshared98convenience44_la_OBJECTS) $(libnonshared98convenience44_la_DEPENDENCIES) $(EXTRA_libnonshared98convenience44_la_DEPENDENCIES) ++ $(CXXLINK) $(libnonshared98convenience44_la_OBJECTS) $(libnonshared98convenience44_la_LIBADD) $(LIBS) ++libnonshared98convenience48.la: $(libnonshared98convenience48_la_OBJECTS) $(libnonshared98convenience48_la_DEPENDENCIES) $(EXTRA_libnonshared98convenience48_la_DEPENDENCIES) ++ $(CXXLINK) $(libnonshared98convenience48_la_OBJECTS) $(libnonshared98convenience48_la_LIBADD) $(LIBS) ++ ++mostlyclean-compile: ++ -rm -f *.$(OBJEXT) ++ ++distclean-compile: ++ -rm -f *.tab.c ++ ++.S.o: ++ $(CPPASCOMPILE) -c -o $@ $< ++ ++.S.obj: ++ $(CPPASCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` ++ ++.S.lo: ++ $(LTCPPASCOMPILE) -c -o $@ $< ++ ++.cc.o: ++ $(CXXCOMPILE) -c -o $@ $< ++ ++.cc.obj: ++ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` ++ ++.cc.lo: ++ $(LTCXXCOMPILE) -c -o $@ $< ++ ++mostlyclean-libtool: ++ -rm -f *.lo ++ ++clean-libtool: ++ -rm -rf .libs _libs ++ ++ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) ++ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ ++ unique=`for i in $$list; do \ ++ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ ++ done | \ ++ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ ++ END { if (nonempty) { for (i in files) print i; }; }'`; \ ++ mkid -fID $$unique ++tags: TAGS ++ ++TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ ++ $(TAGS_FILES) $(LISP) ++ set x; \ ++ here=`pwd`; \ ++ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ ++ unique=`for i in $$list; do \ ++ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ ++ done | \ ++ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ ++ END { if (nonempty) { for (i in files) print i; }; }'`; \ ++ shift; \ ++ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ ++ test -n "$$unique" || unique=$$empty_fix; \ ++ if test $$# -gt 0; then \ ++ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ ++ "$$@" $$unique; \ ++ else \ ++ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ ++ $$unique; \ ++ fi; \ ++ fi ++ctags: CTAGS ++CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ ++ $(TAGS_FILES) $(LISP) ++ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ ++ unique=`for i in $$list; do \ ++ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ ++ done | \ ++ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ ++ END { if (nonempty) { for (i in files) print i; }; }'`; \ ++ test -z "$(CTAGS_ARGS)$$unique" \ ++ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ ++ $$unique ++ ++GTAGS: ++ here=`$(am__cd) $(top_builddir) && pwd` \ ++ && $(am__cd) $(top_srcdir) \ ++ && gtags -i $(GTAGS_ARGS) "$$here" ++ ++distclean-tags: ++ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags ++check-am: all-am ++check: check-am ++all-am: Makefile $(LTLIBRARIES) ++installdirs: ++install: install-am ++install-exec: install-exec-am ++install-data: install-data-am ++uninstall: uninstall-am ++ ++install-am: all-am ++ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am ++ ++installcheck: installcheck-am ++install-strip: ++ if test -z '$(STRIP)'; then \ ++ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ ++ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ ++ install; \ ++ else \ ++ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ ++ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ ++ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ ++ fi ++mostlyclean-generic: ++ ++clean-generic: ++ ++distclean-generic: ++ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) ++ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) ++ ++maintainer-clean-generic: ++ @echo "This command is intended for maintainers to use" ++ @echo "it deletes files that may require special tools to rebuild." ++clean: clean-am ++ ++clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \ ++ mostlyclean-am ++ ++distclean: distclean-am ++ -rm -f Makefile ++distclean-am: clean-am distclean-compile distclean-generic \ ++ distclean-tags ++ ++dvi: dvi-am ++ ++dvi-am: ++ ++html: html-am ++ ++html-am: ++ ++info: info-am ++ ++info-am: ++ ++install-data-am: ++ ++install-dvi: install-dvi-am ++ ++install-dvi-am: ++ ++install-exec-am: ++ ++install-html: install-html-am ++ ++install-html-am: ++ ++install-info: install-info-am ++ ++install-info-am: ++ ++install-man: ++ ++install-pdf: install-pdf-am ++ ++install-pdf-am: ++ ++install-ps: install-ps-am ++ ++install-ps-am: ++ ++installcheck-am: ++ ++maintainer-clean: maintainer-clean-am ++ -rm -f Makefile ++maintainer-clean-am: distclean-am maintainer-clean-generic ++ ++mostlyclean: mostlyclean-am ++ ++mostlyclean-am: mostlyclean-compile mostlyclean-generic \ ++ mostlyclean-libtool ++ ++pdf: pdf-am ++ ++pdf-am: ++ ++ps: ps-am ++ ++ps-am: ++ ++uninstall-am: ++ ++.MAKE: install-am install-strip ++ ++.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ ++ clean-libtool clean-noinstLTLIBRARIES ctags distclean \ ++ distclean-compile distclean-generic distclean-libtool \ ++ distclean-tags dvi dvi-am html html-am info info-am install \ ++ install-am install-data install-data-am install-dvi \ ++ install-dvi-am install-exec install-exec-am install-html \ ++ install-html-am install-info install-info-am install-man \ ++ install-pdf install-pdf-am install-ps install-ps-am \ ++ install-strip installcheck installcheck-am installdirs \ ++ maintainer-clean maintainer-clean-generic mostlyclean \ ++ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ ++ pdf pdf-am ps ps-am tags uninstall uninstall-am ++ ++ ++vpath % $(top_srcdir)/src/nonshared98 ++vpath % $(top_srcdir) ++ ++collate_members.lo: collate_members.cc ++ $(LTCXXCOMPILE) -I. -c $< ++messages_members.lo: messages_members.cc ++ $(LTCXXCOMPILE) -I. -c $< ++monetary_members.lo: monetary_members.cc ++ $(LTCXXCOMPILE) -I. -c $< ++numeric_members.lo: numeric_members.cc ++ $(LTCXXCOMPILE) -I. -c $< ++# Use special rules to compile with -fimplicit-templates. ++c++locale.lo: c++locale.cc ++ $(LTCXXCOMPILE) -I. -fimplicit-templates -c $< ++c++locale.o: c++locale.cc ++ $(CXXCOMPILE) -I. -fimplicit-templates -c $< ++ ++# Tell versions [3.59,3.63) of GNU make to not export all variables. ++# Otherwise a system limit (for SysV at least) may be exceeded. ++.NOEXPORT: +--- libstdc++-v3/src/nonshared98/list_associated-2.cc.jj 2017-05-31 12:11:25.229560684 +0200 ++++ libstdc++-v3/src/nonshared98/list_associated-2.cc 2017-05-31 15:26:10.370633378 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++98/list_associated-2.cc" +--- libstdc++-v3/src/nonshared98/eh_catch.cc.jj 2017-05-31 12:11:25.222560769 +0200 ++++ libstdc++-v3/src/nonshared98/eh_catch.cc 2017-05-31 15:26:10.368633402 +0200 +@@ -0,0 +1,39 @@ ++// -*- C++ -*- Exception handling routines for catching. ++// Copyright (C) 2001-2017 Free Software Foundation, Inc. ++// ++// This file is part of GCC. ++// ++// GCC is free software; you can redistribute it and/or modify ++// it under the terms of the GNU General Public License as published by ++// the Free Software Foundation; either version 3, or (at your option) ++// any later version. ++// ++// GCC is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++// ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++#include "unwind-cxx.h" ++ ++using namespace __cxxabiv1; ++ ++int ++std::uncaught_exceptions() throw() ++{ ++#if __cpp_exceptions ++ __cxa_eh_globals *globals = __cxa_get_globals (); ++ return globals->uncaughtExceptions; ++#else ++ return 0; ++#endif ++} +--- libstdc++-v3/src/nonshared98/compatibility-debug_list-2.cc.jj 2017-05-31 12:11:25.222560769 +0200 ++++ libstdc++-v3/src/nonshared98/compatibility-debug_list-2.cc 2017-05-31 15:26:10.367633414 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++98/compatibility-debug_list-2.cc" +--- libstdc++-v3/src/nonshared98/eh_alloc.cc.jj 2017-05-31 12:11:25.224560745 +0200 ++++ libstdc++-v3/src/nonshared98/eh_alloc.cc 2017-05-31 15:26:10.368633402 +0200 +@@ -0,0 +1,178 @@ ++// -*- C++ -*- Allocate exception objects. ++// Copyright (C) 2001-2017 Free Software Foundation, Inc. ++// ++// This file is part of GCC. ++// ++// GCC is free software; you can redistribute it and/or modify ++// it under the terms of the GNU General Public License as published by ++// the Free Software Foundation; either version 3, or (at your option) ++// any later version. ++// ++// GCC is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++// ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// This is derived from the C++ ABI for IA-64. Where we diverge ++// for cross-architecture compatibility are noted with "@@@". ++ ++#include ++#include ++#if _GLIBCXX_HOSTED ++#include ++#endif ++#include ++#include ++#include "unwind-cxx.h" ++#include ++ ++#if _GLIBCXX_HOSTED ++using std::free; ++using std::malloc; ++using std::memset; ++#else ++// In a freestanding environment, these functions may not be available ++// -- but for now, we assume that they are. ++extern "C" void *malloc (std::size_t); ++extern "C" void free(void *); ++extern "C" void *memset (void *, int, std::size_t); ++#endif ++ ++using namespace __cxxabiv1; ++ ++// ??? How to control these parameters. ++ ++// Guess from the size of basic types how large a buffer is reasonable. ++// Note that the basic c++ exception header has 13 pointers and 2 ints, ++// so on a system with PSImode pointers we're talking about 56 bytes ++// just for overhead. ++ ++#if INT_MAX == 32767 ++# define EMERGENCY_OBJ_SIZE 128 ++# define EMERGENCY_OBJ_COUNT 16 ++#elif LONG_MAX == 2147483647 ++# define EMERGENCY_OBJ_SIZE 512 ++# define EMERGENCY_OBJ_COUNT 32 ++#else ++# define EMERGENCY_OBJ_SIZE 1024 ++# define EMERGENCY_OBJ_COUNT 64 ++#endif ++ ++#ifndef __GTHREADS ++# undef EMERGENCY_OBJ_COUNT ++# define EMERGENCY_OBJ_COUNT 4 ++#endif ++ ++#if INT_MAX == 32767 || EMERGENCY_OBJ_COUNT <= 32 ++typedef unsigned int bitmask_type; ++#else ++typedef unsigned long bitmask_type; ++#endif ++ ++ ++typedef char one_buffer[EMERGENCY_OBJ_SIZE] __attribute__((aligned)); ++ ++static __cxa_dependent_exception dependents_buffer[EMERGENCY_OBJ_COUNT]; ++static bitmask_type dependents_used; ++ ++namespace ++{ ++ // A single mutex controlling emergency allocations. ++ __gnu_cxx::__mutex emergency_mutex; ++} ++ ++extern "C" __cxa_dependent_exception* ++__cxxabiv1::__cxa_allocate_dependent_exception() _GLIBCXX_NOTHROW ++{ ++ __cxa_dependent_exception *ret; ++ ++ ret = static_cast<__cxa_dependent_exception*> ++ (malloc (sizeof (__cxa_dependent_exception))); ++ ++ if (!ret) ++ { ++ __gnu_cxx::__scoped_lock sentry(emergency_mutex); ++ ++ bitmask_type used = dependents_used; ++ unsigned int which = 0; ++ ++ while (used & 1) ++ { ++ used >>= 1; ++ if (++which >= EMERGENCY_OBJ_COUNT) ++ goto failed; ++ } ++ ++ dependents_used |= (bitmask_type)1 << which; ++ ret = &dependents_buffer[which]; ++ ++ failed:; ++ ++ if (!ret) ++ std::terminate (); ++ } ++ ++ // We have an uncaught exception as soon as we allocate memory. This ++ // yields uncaught_exception() true during the copy-constructor that ++ // initializes the exception object. See Issue 475. ++ __cxa_eh_globals *globals = __cxa_get_globals (); ++ globals->uncaughtExceptions += 1; ++ ++ memset (ret, 0, sizeof (__cxa_dependent_exception)); ++ ++ return ret; ++} ++ ++ ++extern "C" void ++__cxxabiv1::__cxa_free_dependent_exception ++ (__cxa_dependent_exception *vptr) _GLIBCXX_NOTHROW ++{ ++ char *base = (char *) dependents_buffer; ++ char *ptr = (char *) vptr; ++ if (ptr >= base ++ && ptr < base + sizeof (dependents_buffer)) ++ { ++ const unsigned int which ++ = (unsigned) (ptr - base) / sizeof (__cxa_dependent_exception); ++ ++ __gnu_cxx::__scoped_lock sentry(emergency_mutex); ++ dependents_used &= ~((bitmask_type)1 << which); ++ } ++ else ++ free (vptr); ++} ++ ++namespace __gnu_cxx ++{ ++ void ++ __freeres() ++ { ++ } ++} ++ ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx30__throw_concurrence_lock_errorEv"); ++asm (".hidden _ZN9__gnu_cxx32__throw_concurrence_unlock_errorEv"); ++asm (".hidden _ZNK9__gnu_cxx24__concurrence_lock_error4whatEv"); ++asm (".hidden _ZNK9__gnu_cxx26__concurrence_unlock_error4whatEv"); ++asm (".hidden _ZTIN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTIN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx26__concurrence_unlock_errorE"); +--- libstdc++-v3/src/nonshared98/nullptr-rtti.S.jj 2017-05-31 12:11:25.224560745 +0200 ++++ libstdc++-v3/src/nonshared98/nullptr-rtti.S 2017-05-31 12:11:25.224560745 +0200 +@@ -0,0 +1,166 @@ ++/* Copyright (C) 2012-2017 Free Software Foundation, Inc. ++ ++ This file is part of the GNU ISO C++ Library. This library is free ++ software; you can redistribute it and/or modify it under the ++ terms of the GNU General Public License as published by the ++ Free Software Foundation; either version 3, or (at your option) ++ any later version. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ ++ Under Section 7 of GPL version 3, you are granted additional ++ permissions described in the GCC Runtime Library Exception, version ++ 3.1, as published by the Free Software Foundation. ++ ++ You should have received a copy of the GNU General Public License and ++ a copy of the GCC Runtime Library Exception along with this program; ++ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++ . */ ++ ++#if defined __x86_64__ || defined __powerpc64__ || defined __s390x__ || defined __ia64__ || defined __aarch64__ \ ++ || defined __i386__ || defined __powerpc__ || defined __s390__ ++#ifdef __i386__ ++#define ALIGN1 .align 4 ++#elif defined __x86_64__ ++#define ALIGN1 .align 32 ++#define ALIGN2 .align 16 ++#elif defined __ia64__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 8 ++#define SECTION3(x).section .gnu.linkonce.s.x,"aws",@progbits ++#define POINTER data8 ++#define FLAGS data4 ++#define PAD .skip 4 ++#define STRING stringz ++#elif defined __powerpc64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#elif defined __powerpc__ ++#define ALIGN1 .align 2 ++#define ALIGN3 .align 2 ++#define SECTION2(x).section .gnu.linkonce.s.x,"aw",@progbits ++#define SECTION3(x)SECTION2(x) ++#elif defined __aarch64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#define POINTER .xword ++#define FLAGS .word ++#define OBJECT %object ++#elif defined __s390x__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 2 ++#elif defined __s390__ ++#define ALIGN1 .align 4 ++#define ALIGN3 .align 2 ++#endif ++#if defined __x86_64__ || defined __powerpc64__ || defined __s390x__ || defined __ia64__ || defined __aarch64__ ++#define SIZE1 32 ++#define SIZE2 16 ++#define OFF 16 ++#ifndef POINTER ++#define POINTER .quad ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD .zero 4 ++#endif ++#else ++#define SIZE1 16 ++#define SIZE2 8 ++#define OFF 8 ++#ifndef POINTER ++#define POINTER .long ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD ++#endif ++#endif ++#ifndef SYM ++#define SYM(x)x ++#endif ++#ifndef ALIGN2 ++#define ALIGN2 ALIGN1 ++#endif ++#ifndef ALIGN3 ++#define ALIGN3 ++#endif ++#ifndef OBJECT ++#define OBJECT @object ++#endif ++#ifndef SECTION1 ++#define SECTION1(x).section .gnu.linkonce.d.rel.ro.x,"aw",@progbits ++#endif ++#ifndef SECTION2 ++#define SECTION2(x)SECTION1(x) ++#endif ++#ifndef SECTION3 ++#define SECTION3(x).section .gnu.linkonce.r.x,"a",@progbits ++#endif ++#ifndef STRING ++#define STRING .string ++#endif ++ ++ .weak SYM(_ZTIPKDn) ++ SECTION1(_ZTIPKDn) ++ ALIGN1 ++ .type SYM(_ZTIPKDn), OBJECT ++ .size SYM(_ZTIPKDn), SIZE1 ++_ZTIPKDn: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPKDn) ++ FLAGS 1 ++ PAD ++ POINTER SYM(_ZTIDn) ++ .weak SYM(_ZTIPDn) ++ SECTION1(_ZTIPDn) ++ ALIGN1 ++ .type SYM(_ZTIPDn), OBJECT ++ .size SYM(_ZTIPDn), SIZE1 ++_ZTIPDn: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPDn) ++ FLAGS 0 ++ PAD ++ POINTER SYM(_ZTIDn) ++ .weak SYM(_ZTIDn) ++ SECTION2(_ZTIDn) ++ ALIGN2 ++ .type SYM(_ZTIDn), OBJECT ++ .size SYM(_ZTIDn), SIZE2 ++_ZTIDn: ++ POINTER SYM(_ZTVN10__cxxabiv123__fundamental_type_infoE)+OFF ++ POINTER SYM(_ZTSDn) ++ .weak SYM(_ZTSPKDn) ++ .hidden SYM(_ZTSPKDn) ++ SECTION3(_ZTSPKDn) ++ ALIGN3 ++ .type SYM(_ZTSPKDn), OBJECT ++ .size SYM(_ZTSPKDn), 5 ++_ZTSPKDn: ++ STRING "PKDn" ++ .weak SYM(_ZTSPDn) ++ .hidden SYM(_ZTSPDn) ++ SECTION3(_ZTSPDn) ++ ALIGN3 ++ .type SYM(_ZTSPDn), OBJECT ++ .size SYM(_ZTSPDn), 4 ++_ZTSPDn: ++ STRING "PDn" ++ .weak SYM(_ZTSDn) ++ .hidden SYM(_ZTSDn) ++ SECTION3(_ZTSDn) ++ ALIGN3 ++ .type SYM(_ZTSDn), OBJECT ++ .size SYM(_ZTSDn), 3 ++_ZTSDn: ++ STRING "Dn" ++#endif ++ .section .note.GNU-stack,"",@progbits +--- libstdc++-v3/src/nonshared98/eh_alloc48.cc.jj 2017-05-31 12:11:25.227560709 +0200 ++++ libstdc++-v3/src/nonshared98/eh_alloc48.cc 2017-05-31 15:26:10.367633414 +0200 +@@ -0,0 +1,36 @@ ++// -*- C++ -*- Allocate exception objects. ++// Copyright (C) 2001-2017 Free Software Foundation, Inc. ++// ++// This file is part of GCC. ++// ++// GCC is free software; you can redistribute it and/or modify ++// it under the terms of the GNU General Public License as published by ++// the Free Software Foundation; either version 3, or (at your option) ++// any later version. ++// ++// GCC is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++// ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// This is derived from the C++ ABI for IA-64. Where we diverge ++// for cross-architecture compatibility are noted with "@@@". ++ ++#include ++ ++namespace __gnu_cxx ++{ ++ void ++ __freeres() ++ { ++ } ++} +--- libstdc++-v3/src/nonshared98/int128.S.jj 2017-05-31 12:11:25.221560781 +0200 ++++ libstdc++-v3/src/nonshared98/int128.S 2017-05-31 12:11:25.221560781 +0200 +@@ -0,0 +1,216 @@ ++/* Copyright (C) 2012-2017 Free Software Foundation, Inc. ++ ++ This file is part of the GNU ISO C++ Library. This library is free ++ software; you can redistribute it and/or modify it under the ++ terms of the GNU General Public License as published by the ++ Free Software Foundation; either version 3, or (at your option) ++ any later version. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ ++ Under Section 7 of GPL version 3, you are granted additional ++ permissions described in the GCC Runtime Library Exception, version ++ 3.1, as published by the Free Software Foundation. ++ ++ You should have received a copy of the GNU General Public License and ++ a copy of the GCC Runtime Library Exception along with this program; ++ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++ . */ ++ ++#if defined __x86_64__ || defined __powerpc64__ || defined __s390x__ || defined __ia64__ || defined __aarch64__ \ ++ /* || defined __i386__ || defined __powerpc__ || defined __s390__ */ ++#ifdef __i386__ ++#define ALIGN1 .align 4 ++#elif defined __x86_64__ ++#define ALIGN1 .align 32 ++#define ALIGN2 .align 16 ++#elif defined __ia64__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 8 ++#define SECTION3(x).section .gnu.linkonce.s.x,"aws",@progbits ++#define POINTER data8 ++#define FLAGS data4 ++#define PAD .skip 4 ++#define STRING stringz ++#elif defined __powerpc64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#elif defined __powerpc__ ++#define ALIGN1 .align 2 ++#define ALIGN3 .align 2 ++#define SECTION2(x).section .gnu.linkonce.s.x,"aw",@progbits ++#define SECTION3(x)SECTION2(x) ++#elif defined __aarch64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#define POINTER .xword ++#define FLAGS .word ++#define OBJECT %object ++#elif defined __s390x__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 2 ++#elif defined __s390__ ++#define ALIGN1 .align 4 ++#define ALIGN3 .align 2 ++#endif ++#if defined __x86_64__ || defined __powerpc64__ || defined __s390x__ || defined __ia64__ || defined __aarch64__ ++#define SIZE1 32 ++#define SIZE2 16 ++#define OFF 16 ++#ifndef POINTER ++#define POINTER .quad ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD .zero 4 ++#endif ++#else ++#define SIZE1 16 ++#define SIZE2 8 ++#define OFF 8 ++#ifndef POINTER ++#define POINTER .long ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD ++#endif ++#endif ++#ifndef SYM ++#define SYM(x)x ++#endif ++#ifndef ALIGN2 ++#define ALIGN2 ALIGN1 ++#endif ++#ifndef ALIGN3 ++#define ALIGN3 ++#endif ++#ifndef OBJECT ++#define OBJECT @object ++#endif ++#ifndef SECTION1 ++#define SECTION1(x).section .gnu.linkonce.d.rel.ro.x,"aw",@progbits ++#endif ++#ifndef SECTION2 ++#define SECTION2(x)SECTION1(x) ++#endif ++#ifndef SECTION3 ++#define SECTION3(x).section .gnu.linkonce.r.x,"a",@progbits ++#endif ++#ifndef STRING ++#define STRING .string ++#endif ++ ++#ifndef _GLIBCXX_NONSHARED_CXX11_48 ++ .weak SYM(_ZTIPKn) ++ SECTION1(_ZTIPKn) ++ ALIGN1 ++ .type SYM(_ZTIPKn), OBJECT ++ .size SYM(_ZTIPKn), SIZE1 ++_ZTIPKn: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPKn) ++ FLAGS 1 ++ PAD ++ POINTER SYM(_ZTIn) ++ .weak SYM(_ZTIPn) ++ SECTION1(_ZTIPn) ++ ALIGN1 ++ .type SYM(_ZTIPn), OBJECT ++ .size SYM(_ZTIPn), SIZE1 ++_ZTIPn: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPn) ++ FLAGS 0 ++ PAD ++ POINTER SYM(_ZTIn) ++ .weak SYM(_ZTIn) ++ SECTION2(_ZTIn) ++ ALIGN2 ++ .type SYM(_ZTIn), OBJECT ++ .size SYM(_ZTIn), SIZE2 ++_ZTIn: ++ POINTER SYM(_ZTVN10__cxxabiv123__fundamental_type_infoE)+OFF ++ POINTER SYM(_ZTSn) ++ .weak SYM(_ZTIPKo) ++ SECTION1(_ZTIPKo) ++ ALIGN1 ++ .type SYM(_ZTIPKo), OBJECT ++ .size SYM(_ZTIPKo), SIZE1 ++_ZTIPKo: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPKo) ++ FLAGS 1 ++ PAD ++ POINTER SYM(_ZTIo) ++ .weak SYM(_ZTIPo) ++ SECTION1(_ZTIPo) ++ ALIGN1 ++ .type SYM(_ZTIPo), OBJECT ++ .size SYM(_ZTIPo), SIZE1 ++_ZTIPo: ++ POINTER SYM(_ZTVN10__cxxabiv119__pointer_type_infoE)+OFF ++ POINTER SYM(_ZTSPo) ++ FLAGS 0 ++ PAD ++ POINTER SYM(_ZTIo) ++ .weak SYM(_ZTIo) ++ SECTION2(_ZTIo) ++ ALIGN2 ++ .type SYM(_ZTIo), OBJECT ++ .size SYM(_ZTIo), SIZE2 ++_ZTIo: ++ POINTER SYM(_ZTVN10__cxxabiv123__fundamental_type_infoE)+OFF ++ POINTER SYM(_ZTSo) ++#endif ++ .weak SYM(_ZTSPKn) ++ SECTION3(_ZTSPKn) ++ ALIGN3 ++ .type SYM(_ZTSPKn), OBJECT ++ .size SYM(_ZTSPKn), 4 ++_ZTSPKn: ++ STRING "PKn" ++ .weak SYM(_ZTSPn) ++ SECTION3(_ZTSPn) ++ ALIGN3 ++ .type SYM(_ZTSPn), OBJECT ++ .size SYM(_ZTSPn), 3 ++_ZTSPn: ++ STRING "Pn" ++ .weak SYM(_ZTSn) ++ SECTION3(_ZTSn) ++ ALIGN3 ++ .type SYM(_ZTSn), OBJECT ++ .size SYM(_ZTSn), 2 ++_ZTSn: ++ STRING "n" ++ .weak SYM(_ZTSPKo) ++ SECTION3(_ZTSPKo) ++ ALIGN3 ++ .type SYM(_ZTSPKo), OBJECT ++ .size SYM(_ZTSPKo), 4 ++_ZTSPKo: ++ STRING "PKo" ++ .weak SYM(_ZTSPo) ++ SECTION3(_ZTSPo) ++ ALIGN3 ++ .type SYM(_ZTSPo), OBJECT ++ .size SYM(_ZTSPo), 3 ++_ZTSPo: ++ STRING "Po" ++ .weak SYM(_ZTSo) ++ SECTION3(_ZTSo) ++ ALIGN3 ++ .type SYM(_ZTSo), OBJECT ++ .size SYM(_ZTSo), 2 ++_ZTSo: ++ STRING "o" ++#endif ++ .section .note.GNU-stack,"",@progbits +--- libstdc++-v3/src/nonshared98/numeric_members.cc.jj 2017-05-31 12:11:25.223560757 +0200 ++++ libstdc++-v3/src/nonshared98/numeric_members.cc 2017-05-31 15:26:10.373633343 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#define _GLIBCXX_USE_CXX11_ABI 1 ++#include "../c++98/numeric_members.cc" +--- libstdc++-v3/src/nonshared98/collate_members.cc.jj 2017-05-31 12:11:25.221560781 +0200 ++++ libstdc++-v3/src/nonshared98/collate_members.cc 2017-05-31 15:26:10.366633426 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#define _GLIBCXX_USE_CXX11_ABI 1 ++#include "../c++98/collate_members.cc" +--- libstdc++-v3/src/nonshared98/hash_bytes.cc.jj 2017-05-31 12:11:25.222560769 +0200 ++++ libstdc++-v3/src/nonshared98/hash_bytes.cc 2017-05-31 15:26:10.369633390 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/hash_bytes.cc" +--- libstdc++-v3/src/nonshared98/list-aux-2.cc.jj 2017-05-31 12:11:25.224560745 +0200 ++++ libstdc++-v3/src/nonshared98/list-aux-2.cc 2017-05-31 15:26:10.370633378 +0200 +@@ -0,0 +1,56 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++extern "C" ++{ ++ extern void _ZNSt15_List_node_base8transferEPS_S0_(void *f, void *l) throw(); ++ ++ void ++ _ZNSt15_List_node_base11_M_transferEPS_S0_(void *f, void *l) throw() ++ { ++ _ZNSt15_List_node_base8transferEPS_S0_(f, l); ++ } ++ ++ extern void _ZNSt15_List_node_base7reverseEv() throw(); ++ ++ void ++ _ZNSt15_List_node_base10_M_reverseEv() throw() ++ { ++ _ZNSt15_List_node_base7reverseEv(); ++ } ++ ++ extern void _ZNSt15_List_node_base4hookEPS_(void *p) throw(); ++ ++ void ++ _ZNSt15_List_node_base7_M_hookEPS_(void *p) throw() ++ { ++ _ZNSt15_List_node_base4hookEPS_(p); ++ } ++ ++ extern void _ZNSt15_List_node_base6unhookEv() throw(); ++ ++ void ++ _ZNSt15_List_node_base9_M_unhookEv() throw() ++ { ++ _ZNSt15_List_node_base6unhookEv(); ++ } ++} +--- libstdc++-v3/src/nonshared11/sstream-inst.cc.jj 2017-05-31 12:11:25.237560588 +0200 ++++ libstdc++-v3/src/nonshared11/sstream-inst.cc 2017-05-31 15:25:50.427872475 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++11/sstream-inst.cc" +--- libstdc++-v3/src/nonshared11/condition_variable.cc.jj 2017-05-31 12:11:25.232560648 +0200 ++++ libstdc++-v3/src/nonshared11/condition_variable.cc 2017-05-31 15:25:50.408872703 +0200 +@@ -0,0 +1,27 @@ ++// condition_variable -*- C++ -*- ++ ++// Copyright (C) 2008-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#define _GLIBCXX_NONSHARED_CXX11 ++#include "../c++11/condition_variable.cc" ++asm (".hidden _ZSt16__at_thread_exitPSt20__at_thread_exit_elt"); +--- libstdc++-v3/src/nonshared11/del_opvsa.cc.jj 2017-05-31 19:11:38.681881850 +0200 ++++ libstdc++-v3/src/nonshared11/del_opvsa.cc 2017-05-31 19:11:38.680881862 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/del_opvsa.cc" +--- libstdc++-v3/src/nonshared11/cxx11-wlocale-inst.cc.jj 2017-05-31 12:11:25.239560564 +0200 ++++ libstdc++-v3/src/nonshared11/cxx11-wlocale-inst.cc 2017-05-31 15:40:45.362168879 +0200 +@@ -0,0 +1,47 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++11/cxx11-wlocale-inst.cc" ++asm (".hidden _ZNKSt19istreambuf_iteratorIwSt11char_traitsIwEE6_M_getEv"); ++#if !defined (__powerpc__) && !defined (__s390__) && !defined (__s390x__) ++asm (".hidden _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11IjEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11IlEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11ImEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11ItEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11IxEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11IyEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++#else ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11IjEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11IlEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11ImEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11ItEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11IxEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intB5cxx11IyEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++#endif ++#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__)) ++asm (".hidden _ZNSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1ERKNSt7__cxx1112basic_stringIcS1_IcESaIcEEEj"); ++asm (".hidden _ZNSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2ERKNSt7__cxx1112basic_stringIcS1_IcESaIcEEEj"); ++#else ++asm (".hidden _ZNSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1ERKNSt7__cxx1112basic_stringIcS1_IcESaIcEEEm"); ++asm (".hidden _ZNSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2ERKNSt7__cxx1112basic_stringIcS1_IcESaIcEEEm"); ++#endif ++asm (".hidden _ZNKSt19istreambuf_iteratorIwSt11char_traitsIwEE5equalERKS2_"); +--- libstdc++-v3/src/nonshared11/limits.cc.jj 2017-05-31 12:11:25.243560516 +0200 ++++ libstdc++-v3/src/nonshared11/limits.cc 2017-05-31 15:25:50.422872535 +0200 +@@ -0,0 +1,99 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++ ++#define const _GLIBCXX_USE_CONSTEXPR ++ ++ const int __numeric_limits_base::max_digits10; ++ const int numeric_limits::max_digits10; ++ const int numeric_limits::max_digits10; ++ const int numeric_limits::max_digits10; ++ const int numeric_limits::max_digits10; ++ const int numeric_limits::max_digits10; ++ const int numeric_limits::max_digits10; ++ const int numeric_limits::max_digits10; ++ const int numeric_limits::max_digits10; ++ const int numeric_limits::max_digits10; ++ const int numeric_limits::max_digits10; ++ const int numeric_limits::max_digits10; ++ const int numeric_limits::max_digits10; ++ const int numeric_limits::max_digits10; ++ const int numeric_limits::max_digits10; ++ const int numeric_limits::max_digits10; ++ const int numeric_limits::max_digits10; ++ const int numeric_limits::max_digits10; ++ const int numeric_limits::max_digits10; ++ ++#if !defined(__STRICT_ANSI__) && defined(_GLIBCXX_USE_INT128) ++ const bool numeric_limits<__int128>::is_specialized; ++ const int numeric_limits<__int128>::digits; ++ const int numeric_limits<__int128>::digits10; ++ const int numeric_limits<__int128>::max_digits10; ++ const bool numeric_limits<__int128>::is_signed; ++ const bool numeric_limits<__int128>::is_integer; ++ const bool numeric_limits<__int128>::is_exact; ++ const int numeric_limits<__int128>::radix; ++ const int numeric_limits<__int128>::min_exponent; ++ const int numeric_limits<__int128>::min_exponent10; ++ const int numeric_limits<__int128>::max_exponent; ++ const int numeric_limits<__int128>::max_exponent10; ++ const bool numeric_limits<__int128>::has_infinity; ++ const bool numeric_limits<__int128>::has_quiet_NaN; ++ const bool numeric_limits<__int128>::has_signaling_NaN; ++ const float_denorm_style numeric_limits<__int128>::has_denorm; ++ const bool numeric_limits<__int128>::has_denorm_loss; ++ const bool numeric_limits<__int128>::is_iec559; ++ const bool numeric_limits<__int128>::is_bounded; ++ const bool numeric_limits<__int128>::is_modulo; ++ const bool numeric_limits<__int128>::traps; ++ const bool numeric_limits<__int128>::tinyness_before; ++ const float_round_style numeric_limits<__int128>::round_style; ++ ++ const bool numeric_limits::is_specialized; ++ const int numeric_limits::digits; ++ const int numeric_limits::digits10; ++ const int numeric_limits::max_digits10; ++ const bool numeric_limits::is_signed; ++ const bool numeric_limits::is_integer; ++ const bool numeric_limits::is_exact; ++ const int numeric_limits::radix; ++ const int numeric_limits::min_exponent; ++ const int numeric_limits::min_exponent10; ++ const int numeric_limits::max_exponent; ++ const int numeric_limits::max_exponent10; ++ const bool numeric_limits::has_infinity; ++ const bool numeric_limits::has_quiet_NaN; ++ const bool numeric_limits::has_signaling_NaN; ++ const float_denorm_style numeric_limits::has_denorm; ++ const bool numeric_limits::has_denorm_loss; ++ const bool numeric_limits::is_iec559; ++ const bool numeric_limits::is_bounded; ++ const bool numeric_limits::is_modulo; ++ const bool numeric_limits::traps; ++ const bool numeric_limits::tinyness_before; ++ const float_round_style numeric_limits::round_style; ++#endif ++} +--- libstdc++-v3/src/nonshared11/locale-inst-asm.S.jj 2017-05-31 12:11:25.239560564 +0200 ++++ libstdc++-v3/src/nonshared11/locale-inst-asm.S 2017-05-31 12:11:25.239560564 +0200 +@@ -0,0 +1,291 @@ ++/* Copyright (C) 2015-2017 Free Software Foundation, Inc. ++ ++ This file is part of the GNU ISO C++ Library. This library is free ++ software; you can redistribute it and/or modify it under the ++ terms of the GNU General Public License as published by the ++ Free Software Foundation; either version 3, or (at your option) ++ any later version. ++ ++ This library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ ++ Under Section 7 of GPL version 3, you are granted additional ++ permissions described in the GCC Runtime Library Exception, version ++ 3.1, as published by the Free Software Foundation. ++ ++ You should have received a copy of the GNU General Public License and ++ a copy of the GCC Runtime Library Exception along with this program; ++ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++ . */ ++ ++#ifdef __i386__ ++#define ALIGN1 .align 4 ++#elif defined __x86_64__ ++#define ALIGN1 .align 32 ++#define ALIGN2 .align 16 ++#elif defined __ia64__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 8 ++#define SECTION3(x).section .gnu.linkonce.s.x,"aws",@progbits ++#define POINTER data8 ++#define FLAGS data4 ++#define PAD .skip 4 ++#define STRING stringz ++#define VPTR(x) data16.ua @iplt(x) ++#define SIZE3 48 ++#elif defined __powerpc64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#elif defined __powerpc__ ++#define ALIGN1 .align 2 ++#define ALIGN3 .align 2 ++#define SECTION2(x).section .gnu.linkonce.s.x,"aw",@progbits ++#define SECTION3(x)SECTION2(x) ++#elif defined __aarch64__ ++#define ALIGN1 .align 3 ++#define ALIGN3 .align 3 ++#define POINTER .xword ++#define FLAGS .word ++#define OBJECT %object ++#elif defined __s390x__ ++#define ALIGN1 .align 8 ++#define ALIGN3 .align 2 ++#elif defined __s390__ ++#define ALIGN1 .align 4 ++#define ALIGN3 .align 2 ++#endif ++#if defined __x86_64__ || defined __powerpc64__ || defined __s390x__ || defined __ia64__ || defined __aarch64__ ++#define SIZE1 32 ++#define SIZE2 16 ++#define OFF 16 ++#ifndef POINTER ++#define POINTER .quad ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD .zero 4 ++#endif ++#else ++#define SIZE1 16 ++#define SIZE2 8 ++#define OFF 8 ++#ifndef POINTER ++#define POINTER .long ++#endif ++#ifndef FLAGS ++#define FLAGS .long ++#endif ++#ifndef PAD ++#define PAD ++#endif ++#endif ++#ifndef SYM ++#define SYM(x)x ++#endif ++#ifndef ALIGN2 ++#define ALIGN2 ALIGN1 ++#endif ++#ifndef ALIGN3 ++#define ALIGN3 ++#endif ++#ifndef OBJECT ++#define OBJECT @object ++#endif ++#ifndef SECTION1 ++#define SECTION1(x).section .gnu.linkonce.d.rel.ro.x,"aw",@progbits ++#endif ++#ifndef SECTION2 ++#define SECTION2(x)SECTION1(x) ++#endif ++#ifndef SECTION3 ++#define SECTION3(x).section .gnu.linkonce.r.x,"a",@progbits ++#endif ++#ifndef STRING ++#define STRING .string ++#endif ++#ifndef SIZE3 ++#define SIZE3 SIZE1 ++#endif ++#ifndef VPTR ++#define VPTR(x) POINTER SYM(x) ++#endif ++ ++ .weak SYM(_ZTISt18__moneypunct_cacheIcLb0EE) ++ .hidden SYM(_ZTISt18__moneypunct_cacheIcLb0EE) ++ SECTION1(_ZTISt18__moneypunct_cacheIcLb0EE) ++ ALIGN1 ++ .type SYM(_ZTISt18__moneypunct_cacheIcLb0EE), OBJECT ++ .size SYM(_ZTISt18__moneypunct_cacheIcLb0EE), SIZE1+SIZE2 ++_ZTISt18__moneypunct_cacheIcLb0EE: ++ POINTER SYM(_ZTVN10__cxxabiv120__si_class_type_infoE)+OFF ++ POINTER SYM(_ZTSSt18__moneypunct_cacheIcLb0EE) ++ POINTER SYM(_ZTINSt6locale5facetE) ++ .weak SYM(_ZTSSt18__moneypunct_cacheIcLb0EE) ++ .hidden SYM(_ZTSSt18__moneypunct_cacheIcLb0EE) ++ SECTION3(_ZTSSt18__moneypunct_cacheIcLb0EE) ++ ALIGN3 ++ .type SYM(_ZTSSt18__moneypunct_cacheIcLb0EE), OBJECT ++ .size SYM(_ZTSSt18__moneypunct_cacheIcLb0EE), 30 ++_ZTSSt18__moneypunct_cacheIcLb0EE: ++ STRING "St18__moneypunct_cacheIcLb0EE" ++ .weak SYM(_ZTVSt18__moneypunct_cacheIcLb0EE) ++ .hidden SYM(_ZTVSt18__moneypunct_cacheIcLb0EE) ++ SECTION1(_ZTVSt18__moneypunct_cacheIcLb0EE) ++ ALIGN1 ++ .type SYM(_ZTVSt18__moneypunct_cacheIcLb0EE), OBJECT ++ .size SYM(_ZTVSt18__moneypunct_cacheIcLb0EE), SIZE3 ++_ZTVSt18__moneypunct_cacheIcLb0EE: ++ POINTER 0 ++ POINTER SYM(_ZTISt18__moneypunct_cacheIcLb0EE) ++ VPTR(_ZNSt18__moneypunct_cacheIcLb0EED1Ev) ++ VPTR(_ZNSt18__moneypunct_cacheIcLb0EED0Ev) ++ .weak SYM(_ZTISt18__moneypunct_cacheIcLb1EE) ++ .hidden SYM(_ZTISt18__moneypunct_cacheIcLb1EE) ++ SECTION1(_ZTISt18__moneypunct_cacheIcLb1EE) ++ ALIGN1 ++ .type SYM(_ZTISt18__moneypunct_cacheIcLb1EE), OBJECT ++ .size SYM(_ZTISt18__moneypunct_cacheIcLb1EE), SIZE1+SIZE2 ++_ZTISt18__moneypunct_cacheIcLb1EE: ++ POINTER SYM(_ZTVN10__cxxabiv120__si_class_type_infoE)+OFF ++ POINTER SYM(_ZTSSt18__moneypunct_cacheIcLb1EE) ++ POINTER SYM(_ZTINSt6locale5facetE) ++ .weak SYM(_ZTSSt18__moneypunct_cacheIcLb1EE) ++ .hidden SYM(_ZTSSt18__moneypunct_cacheIcLb1EE) ++ SECTION3(_ZTSSt18__moneypunct_cacheIcLb1EE) ++ ALIGN3 ++ .type SYM(_ZTSSt18__moneypunct_cacheIcLb1EE), OBJECT ++ .size SYM(_ZTSSt18__moneypunct_cacheIcLb1EE), 30 ++_ZTSSt18__moneypunct_cacheIcLb1EE: ++ STRING "St18__moneypunct_cacheIcLb1EE" ++ .weak SYM(_ZTVSt18__moneypunct_cacheIcLb1EE) ++ .hidden SYM(_ZTVSt18__moneypunct_cacheIcLb1EE) ++ SECTION1(_ZTVSt18__moneypunct_cacheIcLb1EE) ++ ALIGN1 ++ .type SYM(_ZTVSt18__moneypunct_cacheIcLb1EE), OBJECT ++ .size SYM(_ZTVSt18__moneypunct_cacheIcLb1EE), SIZE3 ++_ZTVSt18__moneypunct_cacheIcLb1EE: ++ POINTER 0 ++ POINTER SYM(_ZTISt18__moneypunct_cacheIcLb1EE) ++ VPTR(_ZNSt18__moneypunct_cacheIcLb1EED1Ev) ++ VPTR(_ZNSt18__moneypunct_cacheIcLb1EED0Ev) ++ .weak SYM(_ZTISt18__moneypunct_cacheIwLb0EE) ++ .hidden SYM(_ZTISt18__moneypunct_cacheIwLb0EE) ++ SECTION1(_ZTISt18__moneypunct_cacheIwLb0EE) ++ ALIGN1 ++ .type SYM(_ZTISt18__moneypunct_cacheIwLb0EE), OBJECT ++ .size SYM(_ZTISt18__moneypunct_cacheIwLb0EE), SIZE1+SIZE2 ++_ZTISt18__moneypunct_cacheIwLb0EE: ++ POINTER SYM(_ZTVN10__cxxabiv120__si_class_type_infoE)+OFF ++ POINTER SYM(_ZTSSt18__moneypunct_cacheIwLb0EE) ++ POINTER SYM(_ZTINSt6locale5facetE) ++ .weak SYM(_ZTSSt18__moneypunct_cacheIwLb0EE) ++ .hidden SYM(_ZTSSt18__moneypunct_cacheIwLb0EE) ++ SECTION3(_ZTSSt18__moneypunct_cacheIwLb0EE) ++ ALIGN3 ++ .type SYM(_ZTSSt18__moneypunct_cacheIwLb0EE), OBJECT ++ .size SYM(_ZTSSt18__moneypunct_cacheIwLb0EE), 30 ++_ZTSSt18__moneypunct_cacheIwLb0EE: ++ STRING "St18__moneypunct_cacheIwLb0EE" ++ .weak SYM(_ZTVSt18__moneypunct_cacheIwLb0EE) ++ .hidden SYM(_ZTVSt18__moneypunct_cacheIwLb0EE) ++ SECTION1(_ZTVSt18__moneypunct_cacheIwLb0EE) ++ ALIGN1 ++ .type SYM(_ZTVSt18__moneypunct_cacheIwLb0EE), OBJECT ++ .size SYM(_ZTVSt18__moneypunct_cacheIwLb0EE), SIZE3 ++_ZTVSt18__moneypunct_cacheIwLb0EE: ++ POINTER 0 ++ POINTER SYM(_ZTISt18__moneypunct_cacheIwLb0EE) ++ VPTR(_ZNSt18__moneypunct_cacheIwLb0EED1Ev) ++ VPTR(_ZNSt18__moneypunct_cacheIwLb0EED0Ev) ++ .weak SYM(_ZTISt18__moneypunct_cacheIwLb1EE) ++ .hidden SYM(_ZTISt18__moneypunct_cacheIwLb1EE) ++ SECTION1(_ZTISt18__moneypunct_cacheIwLb1EE) ++ ALIGN1 ++ .type SYM(_ZTISt18__moneypunct_cacheIwLb1EE), OBJECT ++ .size SYM(_ZTISt18__moneypunct_cacheIwLb1EE), SIZE1+SIZE2 ++_ZTISt18__moneypunct_cacheIwLb1EE: ++ POINTER SYM(_ZTVN10__cxxabiv120__si_class_type_infoE)+OFF ++ POINTER SYM(_ZTSSt18__moneypunct_cacheIwLb1EE) ++ POINTER SYM(_ZTINSt6locale5facetE) ++ .weak SYM(_ZTSSt18__moneypunct_cacheIwLb1EE) ++ .hidden SYM(_ZTSSt18__moneypunct_cacheIwLb1EE) ++ SECTION3(_ZTSSt18__moneypunct_cacheIwLb1EE) ++ ALIGN3 ++ .type SYM(_ZTSSt18__moneypunct_cacheIwLb1EE), OBJECT ++ .size SYM(_ZTSSt18__moneypunct_cacheIwLb1EE), 30 ++_ZTSSt18__moneypunct_cacheIwLb1EE: ++ STRING "St18__moneypunct_cacheIwLb1EE" ++ .weak SYM(_ZTVSt18__moneypunct_cacheIwLb1EE) ++ .hidden SYM(_ZTVSt18__moneypunct_cacheIwLb1EE) ++ SECTION1(_ZTVSt18__moneypunct_cacheIwLb1EE) ++ ALIGN1 ++ .type SYM(_ZTVSt18__moneypunct_cacheIwLb1EE), OBJECT ++ .size SYM(_ZTVSt18__moneypunct_cacheIwLb1EE), SIZE3 ++_ZTVSt18__moneypunct_cacheIwLb1EE: ++ POINTER 0 ++ POINTER SYM(_ZTISt18__moneypunct_cacheIwLb1EE) ++ VPTR(_ZNSt18__moneypunct_cacheIwLb1EED1Ev) ++ VPTR(_ZNSt18__moneypunct_cacheIwLb1EED0Ev) ++ .weak SYM(_ZTISt16__numpunct_cacheIcE) ++ .hidden SYM(_ZTISt16__numpunct_cacheIcE) ++ SECTION1(_ZTISt16__numpunct_cacheIcE) ++ ALIGN1 ++ .type SYM(_ZTISt16__numpunct_cacheIcE), OBJECT ++ .size SYM(_ZTISt16__numpunct_cacheIcE), SIZE1+SIZE2 ++_ZTISt16__numpunct_cacheIcE: ++ POINTER SYM(_ZTVN10__cxxabiv120__si_class_type_infoE)+OFF ++ POINTER SYM(_ZTSSt16__numpunct_cacheIcE) ++ POINTER SYM(_ZTINSt6locale5facetE) ++ .weak SYM(_ZTSSt16__numpunct_cacheIcE) ++ .hidden SYM(_ZTSSt16__numpunct_cacheIcE) ++ SECTION3(_ZTSSt16__numpunct_cacheIcE) ++ ALIGN3 ++ .type SYM(_ZTSSt16__numpunct_cacheIcE), OBJECT ++ .size SYM(_ZTSSt16__numpunct_cacheIcE), 24 ++_ZTSSt16__numpunct_cacheIcE: ++ STRING "St16__numpunct_cacheIcE" ++ .weak SYM(_ZTVSt16__numpunct_cacheIcE) ++ .hidden SYM(_ZTVSt16__numpunct_cacheIcE) ++ SECTION1(_ZTVSt16__numpunct_cacheIcE) ++ ALIGN1 ++ .type SYM(_ZTVSt16__numpunct_cacheIcE), OBJECT ++ .size SYM(_ZTVSt16__numpunct_cacheIcE), SIZE3 ++_ZTVSt16__numpunct_cacheIcE: ++ POINTER 0 ++ POINTER SYM(_ZTISt16__numpunct_cacheIcE) ++ VPTR(_ZNSt16__numpunct_cacheIcED1Ev) ++ VPTR(_ZNSt16__numpunct_cacheIcED0Ev) ++ .weak SYM(_ZTISt16__numpunct_cacheIwE) ++ .hidden SYM(_ZTISt16__numpunct_cacheIwE) ++ SECTION1(_ZTISt16__numpunct_cacheIwE) ++ ALIGN1 ++ .type SYM(_ZTISt16__numpunct_cacheIwE), OBJECT ++ .size SYM(_ZTISt16__numpunct_cacheIwE), SIZE1+SIZE2 ++_ZTISt16__numpunct_cacheIwE: ++ POINTER SYM(_ZTVN10__cxxabiv120__si_class_type_infoE)+OFF ++ POINTER SYM(_ZTSSt16__numpunct_cacheIwE) ++ POINTER SYM(_ZTINSt6locale5facetE) ++ .weak SYM(_ZTSSt16__numpunct_cacheIwE) ++ .hidden SYM(_ZTSSt16__numpunct_cacheIwE) ++ SECTION3(_ZTSSt16__numpunct_cacheIwE) ++ ALIGN3 ++ .type SYM(_ZTSSt16__numpunct_cacheIwE), OBJECT ++ .size SYM(_ZTSSt16__numpunct_cacheIwE), 24 ++_ZTSSt16__numpunct_cacheIwE: ++ STRING "St16__numpunct_cacheIwE" ++ .weak SYM(_ZTVSt16__numpunct_cacheIwE) ++ .hidden SYM(_ZTVSt16__numpunct_cacheIwE) ++ SECTION1(_ZTVSt16__numpunct_cacheIwE) ++ ALIGN1 ++ .type SYM(_ZTVSt16__numpunct_cacheIwE), OBJECT ++ .size SYM(_ZTVSt16__numpunct_cacheIwE), SIZE3 ++_ZTVSt16__numpunct_cacheIwE: ++ POINTER 0 ++ POINTER SYM(_ZTISt16__numpunct_cacheIwE) ++ VPTR(_ZNSt16__numpunct_cacheIwED1Ev) ++ VPTR(_ZNSt16__numpunct_cacheIwED0Ev) ++ .section .note.GNU-stack,"",@progbits +--- libstdc++-v3/src/nonshared11/atexit_thread.cc.jj 2017-05-31 12:11:25.232560648 +0200 ++++ libstdc++-v3/src/nonshared11/atexit_thread.cc 2017-05-31 15:25:50.405872739 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2013-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/atexit_thread.cc" +--- libstdc++-v3/src/nonshared11/streambuf-inst.cc.jj 2017-05-31 12:11:25.244560503 +0200 ++++ libstdc++-v3/src/nonshared11/streambuf-inst.cc 2017-05-31 15:25:50.427872475 +0200 +@@ -0,0 +1,42 @@ ++// Explicit instantiation file. ++ ++// Copyright (C) 1997-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: ++// ++ ++#include ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ template void basic_streambuf::swap(basic_streambuf&); ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template void basic_streambuf::swap(basic_streambuf&); ++#endif ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace +--- libstdc++-v3/src/nonshared11/iostream-inst.cc.jj 2017-05-31 12:11:25.234560624 +0200 ++++ libstdc++-v3/src/nonshared11/iostream-inst.cc 2017-05-31 15:25:50.421872547 +0200 +@@ -0,0 +1,46 @@ ++// Explicit instantiation file. ++ ++// Copyright (C) 1997-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: ++// ++ ++#include ++#include ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ template basic_iostream::basic_iostream(basic_iostream&&); ++ template basic_iostream& basic_iostream::operator=(basic_iostream&&); ++ template void basic_iostream::swap(basic_iostream&); ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template basic_iostream::basic_iostream(basic_iostream&&); ++ template basic_iostream& basic_iostream::operator=(basic_iostream&&); ++ template void basic_iostream::swap(basic_iostream&); ++#endif ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace +--- libstdc++-v3/src/nonshared11/thread44.cc.jj 2017-05-31 12:11:25.234560624 +0200 ++++ libstdc++-v3/src/nonshared11/thread44.cc 2017-05-31 15:25:50.428872463 +0200 +@@ -0,0 +1,27 @@ ++// Copyright (C) 2008-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#define _GLIBCXX_NONSHARED_CXX11_44 ++#include "../c++11/thread.cc" ++asm (".hidden _ZNSt15_Sp_counted_ptrIDnLN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv"); ++asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv"); ++asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_releaseEv"); +--- libstdc++-v3/src/nonshared11/del_opa.cc.jj 2017-05-31 19:11:38.664882053 +0200 ++++ libstdc++-v3/src/nonshared11/del_opa.cc 2017-05-31 19:11:38.662882077 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/del_opa.cc" +--- libstdc++-v3/src/nonshared11/cxx11-stdexcept.cc.jj 2017-05-31 12:11:25.235560612 +0200 ++++ libstdc++-v3/src/nonshared11/cxx11-stdexcept.cc 2017-05-31 15:25:50.414872631 +0200 +@@ -0,0 +1,25 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++11/cxx11-stdexcept.cc" ++asm (".hidden _ZNSt12__cow_stringC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE"); ++asm (".hidden _ZNSt12__cow_stringC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE"); +--- libstdc++-v3/src/nonshared11/placeholders.cc.jj 2017-05-31 12:11:25.234560624 +0200 ++++ libstdc++-v3/src/nonshared11/placeholders.cc 2017-05-31 15:25:50.424872511 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++11/placeholders.cc" +--- libstdc++-v3/src/nonshared11/future.cc.jj 2017-05-31 12:11:25.232560648 +0200 ++++ libstdc++-v3/src/nonshared11/future.cc 2017-05-31 15:25:50.420872559 +0200 +@@ -0,0 +1,34 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++#undef _GLIBCXX_HAVE_AS_SYMVER_DIRECTIVE ++#include "../c++11/future.cc" ++const std::error_category* _ZSt15future_category = &__future_category_instance(); ++asm (".hidden _ZNSt13__future_base11_State_base15_M_run_deferredEv"); ++asm (".hidden _ZTSNSt13__future_base11_State_baseE"); ++asm (".hidden _ZTSNSt13__future_base12_Result_baseE"); ++asm (".hidden _ZNSt15_Sp_counted_ptrIDnLN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv"); ++asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv"); ++asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_releaseEv"); ++asm (".hidden _ZSt16__at_thread_exitPSt20__at_thread_exit_elt"); ++asm (".hidden _ZNSt13__future_base13_State_baseV211_Make_ready6_S_runEPv"); +--- libstdc++-v3/src/nonshared11/bad_array_length.cc.jj 2017-05-31 12:11:25.245560491 +0200 ++++ libstdc++-v3/src/nonshared11/bad_array_length.cc 2017-05-31 15:25:50.406872727 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2014-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/bad_array_length.cc" +--- libstdc++-v3/src/nonshared11/cow-string-inst44.cc.jj 2017-05-31 12:11:25.232560648 +0200 ++++ libstdc++-v3/src/nonshared11/cow-string-inst44.cc 2017-06-01 09:29:41.149354454 +0200 +@@ -0,0 +1,104 @@ ++// Components for manipulating sequences of characters -*- C++ -*- ++ ++// Copyright (C) 1997-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: 21 Strings library ++// ++ ++// Written by Jason Merrill based upon the specification by Takanori Adachi ++// in ANSI X3J16/94-0013R2. Rewritten by Nathan Myers. ++ ++// Instantiation configuration. ++#ifndef C ++#define _GLIBCXX_NONSHARED_CXX11_44 ++#include "../c++11/cow-string-inst.cc" ++# define C char ++# define NARROW ++#else ++#define _GLIBCXX_USE_CXX11_ABI 0 ++#include ++#endif ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++ ++ typedef basic_string S; ++ ++ template ++ S::const_iterator S::cbegin() const; ++ ++ template ++ S::const_iterator S::cend() const; ++ ++ template ++ S::const_reverse_iterator S::crbegin() const; ++ ++ template ++ S::const_reverse_iterator S::crend() const; ++ ++ template ++ S::basic_string(S&&); ++ ++ template ++ S::basic_string(const S&, size_type, const allocator_type&); ++ ++ template ++ S& S::operator=(S&&); ++ ++ template ++ S& S::assign(S&&); ++ ++ template ++ C *S::_S_construct_aux_2(size_type, C, const allocator_type&); ++ ++ template ++ void S::shrink_to_fit(); ++ ++ template ++ C *S::_S_construct(iterator, iterator, const allocator_type&, forward_iterator_tag); ++ ++ template ++ C *S::_S_construct(C *, C *, const allocator_type&, forward_iterator_tag); ++ ++ template ++ C *S::_S_construct(const C *, const C *, const allocator_type&, forward_iterator_tag); ++ ++ template ++ S::reference S::front(); ++ ++ template ++ S::const_reference S::front() const; ++ ++ template ++ S::reference S::back(); ++ ++ template ++ S::const_reference S::back() const; ++ ++ template ++ int S::_S_compare(size_type, size_type); ++ ++ template ++ void S::pop_back(); ++} +--- libstdc++-v3/src/nonshared11/future48.cc.jj 2017-05-31 12:11:25.244560503 +0200 ++++ libstdc++-v3/src/nonshared11/future48.cc 2017-06-01 13:10:24.688647753 +0200 +@@ -0,0 +1,29 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#define _GLIBCXX_NONSHARED_CXX11_48 ++#include "../c++11/future.cc" ++asm (".hidden _ZSt16__at_thread_exitPSt20__at_thread_exit_elt"); ++asm (".hidden _ZNSt13__future_base13_State_baseV211_Make_ready6_S_runEPv"); ++asm (".hidden _ZNSt12future_errorC1ESt10error_code"); ++asm (".hidden _ZNSt12future_errorC2ESt10error_code"); ++asm (".hidden _ZSt20__throw_future_errori"); +--- libstdc++-v3/src/nonshared11/cxx11-ios_failure.cc.jj 2017-05-31 12:11:25.237560588 +0200 ++++ libstdc++-v3/src/nonshared11/cxx11-ios_failure.cc 2017-05-31 15:25:50.412872655 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++11/cxx11-ios_failure.cc" +--- libstdc++-v3/src/nonshared11/new_opvant.cc.jj 2017-05-31 19:11:38.660882101 +0200 ++++ libstdc++-v3/src/nonshared11/new_opvant.cc 2017-05-31 19:11:38.659882113 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/new_opvant.cc" +--- libstdc++-v3/src/nonshared11/shared_ptr48.cc.jj 2017-05-31 12:11:25.236560600 +0200 ++++ libstdc++-v3/src/nonshared11/shared_ptr48.cc 2017-05-31 15:42:01.125263051 +0200 +@@ -0,0 +1,40 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#define _GLIBCXX_NONSHARED_CXX11_48 ++#include "../c++11/shared_ptr.cc" ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx30__throw_concurrence_lock_errorEv"); ++asm (".hidden _ZN9__gnu_cxx32__throw_concurrence_unlock_errorEv"); ++asm (".hidden _ZNK9__gnu_cxx24__concurrence_lock_error4whatEv"); ++asm (".hidden _ZNK9__gnu_cxx26__concurrence_unlock_error4whatEv"); ++asm (".hidden _ZTIN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTIN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx26__concurrence_unlock_errorE"); +--- libstdc++-v3/src/nonshared11/bad_array_new.cc.jj 2017-05-31 12:11:25.243560516 +0200 ++++ libstdc++-v3/src/nonshared11/bad_array_new.cc 2017-05-31 15:25:50.406872727 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2014-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/bad_array_new.cc" +--- libstdc++-v3/src/nonshared11/system_error48.cc.jj 2017-05-31 12:11:25.239560564 +0200 ++++ libstdc++-v3/src/nonshared11/system_error48.cc 2017-06-01 13:09:18.313459989 +0200 +@@ -0,0 +1,47 @@ ++// implementation file ++ ++// Copyright (C) 2007-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#define _GLIBCXX_NONSHARED_CXX11 ++#include "../c++11/system_error.cc" ++asm (".hidden _ZNSt12__sso_stringC1EOS_"); ++asm (".hidden _ZNSt12__sso_stringC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE"); ++asm (".hidden _ZNSt12__sso_stringC1ERKS_"); ++asm (".hidden _ZNSt12__sso_stringC1Ev"); ++asm (".hidden _ZNSt12__sso_stringC2EOS_"); ++asm (".hidden _ZNSt12__sso_stringC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE"); ++asm (".hidden _ZNSt12__sso_stringC2ERKS_"); ++asm (".hidden _ZNSt12__sso_stringC2Ev"); ++asm (".hidden _ZNSt12__sso_stringD1Ev"); ++asm (".hidden _ZNSt12__sso_stringD2Ev"); ++asm (".hidden _ZNSt12__sso_stringaSEOS_"); ++asm (".hidden _ZNSt12__sso_stringaSERKS_"); ++asm (".hidden _ZTSNSt3_V214error_categoryE"); ++#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__)) ++asm (".hidden _ZNSt12__sso_stringC1EPKcj"); ++asm (".hidden _ZNSt12__sso_stringC2EPKcj"); ++#else ++asm (".hidden _ZNSt12__sso_stringC1EPKcm"); ++asm (".hidden _ZNSt12__sso_stringC2EPKcm"); ++#endif ++asm (".hidden _ZSt20__throw_system_errori"); +--- libstdc++-v3/src/nonshared11/cow-stdexcept.cc.jj 2017-05-31 12:11:25.238560576 +0200 ++++ libstdc++-v3/src/nonshared11/cow-stdexcept.cc 2017-05-31 15:25:50.410872679 +0200 +@@ -0,0 +1,51 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++11/cow-stdexcept.cc" ++asm (".hidden _ZNSt12__cow_stringC1EOS_"); ++asm (".hidden _ZNSt12__cow_stringC1ERKS_"); ++asm (".hidden _ZNSt12__cow_stringC1ERKSs"); ++asm (".hidden _ZNSt12__cow_stringC1Ev"); ++asm (".hidden _ZNSt12__cow_stringC2EOS_"); ++asm (".hidden _ZNSt12__cow_stringC2ERKS_"); ++asm (".hidden _ZNSt12__cow_stringC2ERKSs"); ++asm (".hidden _ZNSt12__cow_stringC2Ev"); ++asm (".hidden _ZNSt12__cow_stringD1Ev"); ++asm (".hidden _ZNSt12__cow_stringD2Ev"); ++asm (".hidden _ZNSt12__cow_stringaSEOS_"); ++asm (".hidden _ZNSt12__cow_stringaSERKS_"); ++asm (".hidden _ZNSt12__sso_stringC1ERKSs"); ++asm (".hidden _ZNSt12__sso_stringC2ERKSs"); ++#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__)) ++asm (".hidden _ZNSt12__cow_stringC1EPKcj"); ++asm (".hidden _ZNSt12__cow_stringC2EPKcj"); ++#else ++asm (".hidden _ZNSt12__cow_stringC1EPKcm"); ++asm (".hidden _ZNSt12__cow_stringC2EPKcm"); ++#endif ++asm (".hidden _Z20_txnal_cow_string_D1Pv"); ++asm (".hidden _Z23_txnal_cow_string_c_strPKv"); ++asm (".hidden _Z23_txnal_sso_string_c_strPKv"); ++asm (".hidden _Z26_txnal_logic_error_get_msgPv"); ++asm (".hidden _Z27_txnal_cow_string_D1_commitPv"); ++asm (".hidden _Z28_txnal_runtime_error_get_msgPv"); ++asm (".hidden _Z35_txnal_cow_string_C1_for_exceptionsPvPKcS_"); +--- libstdc++-v3/src/nonshared11/ext11-inst.cc.jj 2017-05-31 12:11:25.239560564 +0200 ++++ libstdc++-v3/src/nonshared11/ext11-inst.cc 2017-05-31 15:25:50.417872595 +0200 +@@ -0,0 +1,38 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++#include ++ ++namespace __gnu_cxx _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ template stdio_sync_filebuf::stdio_sync_filebuf(stdio_sync_filebuf&&) noexcept; ++ template stdio_sync_filebuf& stdio_sync_filebuf::operator=(stdio_sync_filebuf&&) noexcept; ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template stdio_sync_filebuf::stdio_sync_filebuf(stdio_sync_filebuf&&) noexcept; ++ template stdio_sync_filebuf& stdio_sync_filebuf::operator=(stdio_sync_filebuf&&) noexcept; ++#endif ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace +--- libstdc++-v3/src/nonshared11/compatibility-c++0x.cc.jj 2017-05-31 12:11:25.233560636 +0200 ++++ libstdc++-v3/src/nonshared11/compatibility-c++0x.cc 2017-05-31 15:25:50.407872715 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#define _GLIBCXX_NONSHARED_CXX11_44 ++#include "../c++11/compatibility-c++0x.cc" +--- libstdc++-v3/src/nonshared11/thread48.cc.jj 2017-05-31 12:11:25.229560684 +0200 ++++ libstdc++-v3/src/nonshared11/thread48.cc 2017-05-31 15:25:50.428872463 +0200 +@@ -0,0 +1,28 @@ ++// Copyright (C) 2008-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#define _GLIBCXX_NONSHARED_CXX11_44 ++#define _GLIBCXX_NONSHARED_CXX11_48 ++#include "../c++11/thread.cc" ++asm (".hidden _ZNSt15_Sp_counted_ptrIDnLN9__gnu_cxx12_Lock_policyE2EE10_M_disposeEv"); ++asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_destroyEv"); ++asm (".hidden _ZNSt16_Sp_counted_baseILN9__gnu_cxx12_Lock_policyE2EE10_M_releaseEv"); +--- libstdc++-v3/src/nonshared11/shared_ptr44.cc.jj 2017-05-31 12:11:25.230560672 +0200 ++++ libstdc++-v3/src/nonshared11/shared_ptr44.cc 2017-05-31 15:42:07.106191543 +0200 +@@ -0,0 +1,40 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++11/shared_ptr.cc" ++asm (".hidden _ZTSSt12bad_weak_ptr"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx30__throw_concurrence_lock_errorEv"); ++asm (".hidden _ZN9__gnu_cxx32__throw_concurrence_unlock_errorEv"); ++asm (".hidden _ZNK9__gnu_cxx24__concurrence_lock_error4whatEv"); ++asm (".hidden _ZNK9__gnu_cxx26__concurrence_unlock_error4whatEv"); ++asm (".hidden _ZTIN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTIN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx26__concurrence_unlock_errorE"); +--- libstdc++-v3/src/nonshared11/cow-wstring-inst48.cc.jj 2017-06-01 09:40:03.601500517 +0200 ++++ libstdc++-v3/src/nonshared11/cow-wstring-inst48.cc 2017-06-01 09:40:36.490085538 +0200 +@@ -0,0 +1,35 @@ ++// wide string support -*- C++ -*- ++ ++// Copyright (C) 1999-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: 21 Strings library ++// ++ ++#define _GLIBCXX_USE_CXX11_ABI 0 ++#include ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++#define C wchar_t ++#include "cow-string-inst48.cc" ++#endif +--- libstdc++-v3/src/nonshared11/ctype.cc.jj 2017-05-31 12:11:25.232560648 +0200 ++++ libstdc++-v3/src/nonshared11/ctype.cc 2017-05-31 15:25:50.412872655 +0200 +@@ -0,0 +1,35 @@ ++// Copyright (C) 1997-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++#include ++#include ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ // Definitions for static const data members of ctype_base. ++ const ctype_base::mask ctype_base::blank; ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace +--- libstdc++-v3/src/nonshared11/system_error44.cc.jj 2017-05-31 12:11:25.233560636 +0200 ++++ libstdc++-v3/src/nonshared11/system_error44.cc 2017-06-01 13:09:08.773576729 +0200 +@@ -0,0 +1,47 @@ ++// implementation file ++ ++// Copyright (C) 2007-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#define _GLIBCXX_NONSHARED_CXX11 ++#include "../c++11/system_error.cc" ++asm (".hidden _ZNSt12__sso_stringC1EOS_"); ++asm (".hidden _ZNSt12__sso_stringC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE"); ++asm (".hidden _ZNSt12__sso_stringC1ERKS_"); ++asm (".hidden _ZNSt12__sso_stringC1Ev"); ++asm (".hidden _ZNSt12__sso_stringC2EOS_"); ++asm (".hidden _ZNSt12__sso_stringC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE"); ++asm (".hidden _ZNSt12__sso_stringC2ERKS_"); ++asm (".hidden _ZNSt12__sso_stringC2Ev"); ++asm (".hidden _ZNSt12__sso_stringD1Ev"); ++asm (".hidden _ZNSt12__sso_stringD2Ev"); ++asm (".hidden _ZNSt12__sso_stringaSEOS_"); ++asm (".hidden _ZNSt12__sso_stringaSERKS_"); ++asm (".hidden _ZTSNSt3_V214error_categoryE"); ++#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__)) ++asm (".hidden _ZNSt12__sso_stringC1EPKcj"); ++asm (".hidden _ZNSt12__sso_stringC2EPKcj"); ++#else ++asm (".hidden _ZNSt12__sso_stringC1EPKcm"); ++asm (".hidden _ZNSt12__sso_stringC2EPKcm"); ++#endif ++asm (".hidden _ZSt20__throw_system_errori"); +--- libstdc++-v3/src/nonshared11/eh_throw.cc.jj 2017-06-01 12:19:27.713260414 +0200 ++++ libstdc++-v3/src/nonshared11/eh_throw.cc 2017-06-01 12:33:23.639919386 +0200 +@@ -0,0 +1,78 @@ ++// -*- C++ -*- Exception handling routines for throwing. ++// Copyright (C) 2001-2017 Free Software Foundation, Inc. ++// ++// This file is part of GCC. ++// ++// GCC is free software; you can redistribute it and/or modify ++// it under the terms of the GNU General Public License as published by ++// the Free Software Foundation; either version 3, or (at your option) ++// any later version. ++// ++// GCC is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++// ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++#include "unwind-cxx.h" ++#include "eh_atomics.h" ++ ++using namespace __cxxabiv1; ++ ++ ++static void ++__gxx_exception_cleanup (_Unwind_Reason_Code code, _Unwind_Exception *exc) ++{ ++ // This cleanup is set only for primaries. ++ __cxa_refcounted_exception *header ++ = __get_refcounted_exception_header_from_ue (exc); ++ ++ // We only want to be called through _Unwind_DeleteException. ++ // _Unwind_DeleteException in the HP-UX IA64 libunwind library ++ // returns _URC_NO_REASON and not _URC_FOREIGN_EXCEPTION_CAUGHT ++ // like the GCC _Unwind_DeleteException function does. ++ if (code != _URC_FOREIGN_EXCEPTION_CAUGHT && code != _URC_NO_REASON) ++ { ++ __try ++ { ++ header->exc.terminateHandler (); ++ __builtin_abort (); ++ } ++ __catch(...) ++ { __builtin_abort (); } ++ } ++ ++ if (__gnu_cxx::__eh_atomic_dec (&header->referenceCount)) ++ { ++ if (header->exc.exceptionDestructor) ++ header->exc.exceptionDestructor (header + 1); ++ ++ __cxa_free_exception (header + 1); ++ } ++} ++ ++extern "C" __cxa_refcounted_exception* ++__cxxabiv1::__cxa_init_primary_exception(void *obj, std::type_info *tinfo, ++ void (_GLIBCXX_CDTOR_CALLABI *dest) (void *)) ++{ ++ __cxa_refcounted_exception *header ++ = __get_refcounted_exception_header_from_obj (obj); ++ header->referenceCount = 0; ++ header->exc.exceptionType = tinfo; ++ header->exc.exceptionDestructor = dest; ++ header->exc.unexpectedHandler = std::get_unexpected (); ++ header->exc.terminateHandler = std::get_terminate (); ++ __GXX_INIT_PRIMARY_EXCEPTION_CLASS(header->exc.unwindHeader.exception_class); ++ header->exc.unwindHeader.exception_cleanup = __gxx_exception_cleanup; ++ ++ return header; ++} +--- libstdc++-v3/src/nonshared11/fstream-inst.cc.jj 2017-05-31 12:11:25.245560491 +0200 ++++ libstdc++-v3/src/nonshared11/fstream-inst.cc 2017-05-31 15:25:50.418872583 +0200 +@@ -0,0 +1,79 @@ ++// Explicit instantiation file. ++ ++// Copyright (C) 1997-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: ++// ++ ++#define _GLIBCXX_USE_CXX11_ABI 1 ++#include ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ template basic_filebuf>::basic_filebuf(basic_filebuf&&); ++ template basic_filebuf>& basic_filebuf>::operator=(basic_filebuf&&); ++ template void basic_filebuf>::swap(basic_filebuf&); ++ template basic_filebuf>::__filebuf_type* basic_filebuf>::open(const std::string &, ios_base::openmode); ++ template basic_ifstream::basic_ifstream(basic_ifstream&&); ++ template basic_ifstream& basic_ifstream::operator=(basic_ifstream&&); ++ template void basic_ifstream::swap(basic_ifstream&); ++ template void basic_ifstream::open(const std::string &, ios_base::openmode); ++ template basic_ifstream::basic_ifstream(const std::string &, ios_base::openmode); ++ template basic_ofstream::basic_ofstream(basic_ofstream&&); ++ template basic_ofstream& basic_ofstream::operator=(basic_ofstream&&); ++ template void basic_ofstream::swap(basic_ofstream&); ++ template void basic_ofstream::open(const std::string &, ios_base::openmode); ++ template basic_ofstream::basic_ofstream(const std::string &, ios_base::openmode); ++ template basic_fstream::basic_fstream(basic_fstream&&); ++ template basic_fstream& basic_fstream::operator=(basic_fstream&&); ++ template void basic_fstream::swap(basic_fstream&); ++ template void basic_fstream::open(const std::string &, ios_base::openmode); ++ template basic_fstream::basic_fstream(const std::string &, ios_base::openmode); ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template basic_filebuf>::basic_filebuf(basic_filebuf&&); ++ template basic_filebuf>& basic_filebuf>::operator=(basic_filebuf&&); ++ template void basic_filebuf>::swap(basic_filebuf&); ++ template basic_filebuf>::__filebuf_type* basic_filebuf>::open(const std::string &, ios_base::openmode); ++ template basic_ifstream::basic_ifstream(basic_ifstream&&); ++ template basic_ifstream& basic_ifstream::operator=(basic_ifstream&&); ++ template void basic_ifstream::swap(basic_ifstream&); ++ template void basic_ifstream::open(const std::string &, ios_base::openmode); ++ template basic_ifstream::basic_ifstream(const std::string &, ios_base::openmode); ++ template basic_ofstream::basic_ofstream(basic_ofstream&&); ++ template basic_ofstream& basic_ofstream::operator=(basic_ofstream&&); ++ template void basic_ofstream::swap(basic_ofstream&); ++ template void basic_ofstream::open(const std::string &, ios_base::openmode); ++ template basic_ofstream::basic_ofstream(const std::string &, ios_base::openmode); ++ template basic_fstream::basic_fstream(basic_fstream&&); ++ template basic_fstream& basic_fstream::operator=(basic_fstream&&); ++ template void basic_fstream::swap(basic_fstream&); ++ template void basic_fstream::open(const std::string &, ios_base::openmode); ++ template basic_fstream::basic_fstream(const std::string &, ios_base::openmode); ++#endif ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace +--- libstdc++-v3/src/nonshared11/regex48.cc.jj 2017-05-31 12:11:25.240560552 +0200 ++++ libstdc++-v3/src/nonshared11/regex48.cc 2017-06-01 13:09:49.557077659 +0200 +@@ -0,0 +1,31 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++11/regex.cc" ++ ++asm (".hidden _ZNSt11regex_errorD0Ev"); ++asm (".hidden _ZNSt11regex_errorD1Ev"); ++asm (".hidden _ZNSt11regex_errorD2Ev"); ++asm (".hidden _ZTSSt11regex_error"); ++asm (".hidden _ZTISt11regex_error"); ++asm (".hidden _ZTVSt11regex_error"); ++asm (".hidden _ZSt19__throw_regex_errorNSt15regex_constants10error_typeE"); +--- libstdc++-v3/src/nonshared11/cxx11-shim_facets.cc.jj 2017-05-31 12:11:25.233560636 +0200 ++++ libstdc++-v3/src/nonshared11/cxx11-shim_facets.cc 2017-05-31 15:25:50.413872643 +0200 +@@ -0,0 +1,181 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++11/cxx11-shim_facets.cc" ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_112collate_shimIcE10do_compareEPKcS4_S4_S4_"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_112collate_shimIcE12do_transformEPKcS4_"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_112collate_shimIwE10do_compareEPKwS4_S4_S4_"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_112collate_shimIwE12do_transformEPKwS4_"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIcE6do_getEiiiRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIcE7do_openERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6locale"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIcE8do_closeEi"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIwE6do_getEiiiRKNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEE"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIwE7do_openERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKSt6locale"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIwE8do_closeEi"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE11do_get_dateESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE11do_get_timeESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE11do_get_yearESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE13do_date_orderEv"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE14do_get_weekdayESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE16do_get_monthnameESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE11do_get_dateESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE11do_get_timeESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE11do_get_yearESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE13do_date_orderEv"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE14do_get_weekdayESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE16do_get_monthnameESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIcE6do_getESt19istreambuf_iteratorIcSt11char_traitsIcEES6_bRSt8ios_baseRSt12_Ios_IostateRNSt7__cxx1112basic_stringIcS5_SaIcEEE"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIwE6do_getESt19istreambuf_iteratorIwSt11char_traitsIwEES6_bRSt8ios_baseRSt12_Ios_IostateRNSt7__cxx1112basic_stringIwS5_SaIwEEE"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIcE6do_putESt19ostreambuf_iteratorIcSt11char_traitsIcEEbRSt8ios_basecRKNSt7__cxx1112basic_stringIcS5_SaIcEEE"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIwE6do_putESt19ostreambuf_iteratorIwSt11char_traitsIwEEbRSt8ios_basewRKNSt7__cxx1112basic_stringIwS5_SaIwEEE"); ++asm (".hidden _ZNKSt6locale5facet11_M_sso_shimEPKNS_2idE"); ++asm (".hidden _ZNKSt6locale5facet19_M_remove_referenceEv"); ++asm (".hidden _ZNSt13__facet_shims10__time_getIcEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_S5_RSt8ios_baseRSt12_Ios_IostateP2tmc"); ++asm (".hidden _ZNSt13__facet_shims10__time_getIwEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_S5_RSt8ios_baseRSt12_Ios_IostateP2tmc"); ++#if !defined (__powerpc__) && !defined (__s390__) && !defined (__s390x__) ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIcE6do_getESt19istreambuf_iteratorIcSt11char_traitsIcEES6_bRSt8ios_baseRSt12_Ios_IostateRe"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIwE6do_getESt19istreambuf_iteratorIwSt11char_traitsIwEES6_bRSt8ios_baseRSt12_Ios_IostateRe"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIcE6do_putESt19ostreambuf_iteratorIcSt11char_traitsIcEEbRSt8ios_basece"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIwE6do_putESt19ostreambuf_iteratorIwSt11char_traitsIwEEbRSt8ios_basewe"); ++asm (".hidden _ZNSt13__facet_shims11__money_getIcEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_S5_bRSt8ios_baseRSt12_Ios_IostatePePNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_getIwEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_S5_bRSt8ios_baseRSt12_Ios_IostatePePNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_putIcEESt19ostreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_bRSt8ios_baseS2_ePKNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_putIwEESt19ostreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_bRSt8ios_baseS2_ePKNS_12__any_stringE"); ++#else ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIcE6do_getESt19istreambuf_iteratorIcSt11char_traitsIcEES6_bRSt8ios_baseRSt12_Ios_IostateRg"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIwE6do_getESt19istreambuf_iteratorIwSt11char_traitsIwEES6_bRSt8ios_baseRSt12_Ios_IostateRg"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIcE6do_putESt19ostreambuf_iteratorIcSt11char_traitsIcEEbRSt8ios_basecg"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIwE6do_putESt19ostreambuf_iteratorIwSt11char_traitsIwEEbRSt8ios_basewg"); ++asm (".hidden _ZNSt13__facet_shims11__money_getIcEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_S5_bRSt8ios_baseRSt12_Ios_IostatePgPNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_getIwEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_S5_bRSt8ios_baseRSt12_Ios_IostatePgPNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_putIcEESt19ostreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_bRSt8ios_baseS2_gPKNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_putIwEESt19ostreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb1EEPKNSt6locale5facetES5_bRSt8ios_baseS2_gPKNS_12__any_stringE"); ++#endif ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_116__destroy_stringIcEEvPv"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_116__destroy_stringIwEEvPv"); ++asm (".hidden _ZNSt13__facet_shims16__messages_closeIcEEvSt17integral_constantIbLb1EEPKNSt6locale5facetEi"); ++asm (".hidden _ZNSt13__facet_shims16__messages_closeIwEEvSt17integral_constantIbLb1EEPKNSt6locale5facetEi"); ++asm (".hidden _ZNSt13__facet_shims17__collate_compareIcEEiSt17integral_constantIbLb1EEPKNSt6locale5facetEPKT_S9_S9_S9_"); ++asm (".hidden _ZNSt13__facet_shims17__collate_compareIwEEiSt17integral_constantIbLb1EEPKNSt6locale5facetEPKT_S9_S9_S9_"); ++asm (".hidden _ZNSt13__facet_shims19__collate_transformIcEEvSt17integral_constantIbLb1EEPKNSt6locale5facetERNS_12__any_stringEPKT_SB_"); ++asm (".hidden _ZNSt13__facet_shims19__collate_transformIwEEvSt17integral_constantIbLb1EEPKNSt6locale5facetERNS_12__any_stringEPKT_SB_"); ++asm (".hidden _ZNSt13__facet_shims20__time_get_dateorderIcEENSt9time_base9dateorderESt17integral_constantIbLb1EEPKNSt6locale5facetE"); ++asm (".hidden _ZNSt13__facet_shims20__time_get_dateorderIwEENSt9time_base9dateorderESt17integral_constantIbLb1EEPKNSt6locale5facetE"); ++asm (".hidden _ZNSt13__facet_shims21__numpunct_fill_cacheIcEEvSt17integral_constantIbLb1EEPKNSt6locale5facetEPSt16__numpunct_cacheIT_E"); ++asm (".hidden _ZNSt13__facet_shims21__numpunct_fill_cacheIwEEvSt17integral_constantIbLb1EEPKNSt6locale5facetEPSt16__numpunct_cacheIT_E"); ++asm (".hidden _ZNSt13__facet_shims23__moneypunct_fill_cacheIcLb0EEEvSt17integral_constantIbLb1EEPKNSt6locale5facetEPSt18__moneypunct_cacheIT_XT0_EE"); ++asm (".hidden _ZNSt13__facet_shims23__moneypunct_fill_cacheIcLb1EEEvSt17integral_constantIbLb1EEPKNSt6locale5facetEPSt18__moneypunct_cacheIT_XT0_EE"); ++asm (".hidden _ZNSt13__facet_shims23__moneypunct_fill_cacheIwLb0EEEvSt17integral_constantIbLb1EEPKNSt6locale5facetEPSt18__moneypunct_cacheIT_XT0_EE"); ++asm (".hidden _ZNSt13__facet_shims23__moneypunct_fill_cacheIwLb1EEEvSt17integral_constantIbLb1EEPKNSt6locale5facetEPSt18__moneypunct_cacheIT_XT0_EE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_112collate_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_112collate_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113messages_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113messages_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113time_get_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113time_get_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_114money_get_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_114money_get_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_114money_put_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_114money_put_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EEE"); ++asm (".hidden _ZTINSt6locale5facet6__shimE"); ++asm (".hidden _ZTSNSt6locale5facet6__shimE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_112collate_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_112collate_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113messages_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113messages_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113time_get_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113time_get_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_114money_get_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_114money_get_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_114money_put_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_114money_put_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EEE"); ++#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__)) ++asm (".hidden _ZNSt13__facet_shims14__messages_getIcEEvSt17integral_constantIbLb1EEPKNSt6locale5facetERNS_12__any_stringEiiiPKT_j"); ++asm (".hidden _ZNSt13__facet_shims14__messages_getIwEEvSt17integral_constantIbLb1EEPKNSt6locale5facetERNS_12__any_stringEiiiPKT_j"); ++asm (".hidden _ZNSt13__facet_shims15__messages_openIcEEiSt17integral_constantIbLb1EEPKNSt6locale5facetEPKcjRKS3_"); ++asm (".hidden _ZNSt13__facet_shims15__messages_openIwEEiSt17integral_constantIbLb1EEPKNSt6locale5facetEPKcjRKS3_"); ++#else ++asm (".hidden _ZNSt13__facet_shims14__messages_getIcEEvSt17integral_constantIbLb1EEPKNSt6locale5facetERNS_12__any_stringEiiiPKT_m"); ++asm (".hidden _ZNSt13__facet_shims14__messages_getIwEEvSt17integral_constantIbLb1EEPKNSt6locale5facetERNS_12__any_stringEiiiPKT_m"); ++asm (".hidden _ZNSt13__facet_shims15__messages_openIcEEiSt17integral_constantIbLb1EEPKNSt6locale5facetEPKcmRKS3_"); ++asm (".hidden _ZNSt13__facet_shims15__messages_openIwEEiSt17integral_constantIbLb1EEPKNSt6locale5facetEPKcmRKS3_"); ++#endif +--- libstdc++-v3/src/nonshared11/eh_aux_runtime.cc.jj 2017-05-31 12:11:25.229560684 +0200 ++++ libstdc++-v3/src/nonshared11/eh_aux_runtime.cc 2017-05-31 15:25:50.416872607 +0200 +@@ -0,0 +1,38 @@ ++// -*- C++ -*- Common throw conditions. ++// Copyright (C) 1994-2017 Free Software Foundation, Inc. ++// ++// This file is part of GCC. ++// ++// GCC is free software; you can redistribute it and/or modify ++// it under the terms of the GNU General Public License as published by ++// the Free Software Foundation; either version 3, or (at your option) ++// any later version. ++// ++// GCC is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++// ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++// ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "typeinfo" ++#include "exception" ++#include "new" ++#include ++#include "unwind-cxx.h" ++#include ++ ++extern "C" void ++__cxxabiv1::__cxa_throw_bad_array_new_length () ++{ _GLIBCXX_THROW_OR_ABORT(std::bad_array_new_length()); } ++ ++//extern "C" void ++//__cxxabiv1::__cxa_throw_bad_array_length () ++//{ _GLIBCXX_THROW_OR_ABORT(std::bad_array_length()); } +--- libstdc++-v3/src/nonshared11/compatibility-atomic-c++0x.cc.jj 2017-05-31 12:11:25.236560600 +0200 ++++ libstdc++-v3/src/nonshared11/compatibility-atomic-c++0x.cc 2017-05-31 15:25:50.407872715 +0200 +@@ -0,0 +1,42 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++ ++extern "C" ++{ ++ extern bool _ZNVSt9__atomic011atomic_flag5clearESt12memory_order (std::memory_order); ++ ++ bool ++ _ZNSt9__atomic011atomic_flag5clearESt12memory_order (std::memory_order m) ++ { ++ return _ZNVSt9__atomic011atomic_flag5clearESt12memory_order (m); ++ } ++ ++ extern void _ZNVSt9__atomic011atomic_flag12test_and_setESt12memory_order (std::memory_order); ++ ++ void ++ _ZNSt9__atomic011atomic_flag12test_and_setESt12memory_order (std::memory_order m) ++ { ++ _ZNVSt9__atomic011atomic_flag12test_and_setESt12memory_order (m); ++ } ++} +--- libstdc++-v3/src/nonshared11/hashtable_c++0x.cc.jj 2017-05-31 12:11:25.235560612 +0200 ++++ libstdc++-v3/src/nonshared11/hashtable_c++0x.cc 2017-05-31 15:25:50.420872559 +0200 +@@ -0,0 +1,40 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++#include ++#include ++#include ++#include ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++namespace __detail ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ extern const unsigned long __prime_list[256 + (sizeof (long) == 8 ? 48 : 0) + 1]; ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace __detail ++} // namespace std ++ ++#define HASHTABLE_AUX_CC 1 ++#include "../c++11/hashtable_c++0x.cc" +--- libstdc++-v3/src/nonshared11/chrono.cc.jj 2017-05-31 12:11:25.238560576 +0200 ++++ libstdc++-v3/src/nonshared11/chrono.cc 2017-05-31 15:25:50.406872727 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++11/chrono.cc" +--- libstdc++-v3/src/nonshared11/del_opvnt.cc.jj 2017-05-31 12:11:25.237560588 +0200 ++++ libstdc++-v3/src/nonshared11/del_opvnt.cc 2017-05-31 15:25:50.416872607 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2013-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/del_opvnt.cc" +--- libstdc++-v3/src/nonshared11/functexcept48.cc.jj 2017-05-31 12:11:25.236560600 +0200 ++++ libstdc++-v3/src/nonshared11/functexcept48.cc 2017-05-31 15:25:50.418872583 +0200 +@@ -0,0 +1,66 @@ ++// Copyright (C) 2001-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#ifdef _GLIBCXX_USE_NLS ++# include ++# define _(msgid) gettext (msgid) ++#else ++# define _(msgid) (msgid) ++#endif ++ ++namespace __gnu_cxx ++{ ++ int __snprintf_lite(char *__buf, size_t __bufsize, const char *__fmt, ++ va_list __ap); ++} ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ void ++ __throw_out_of_range_fmt(const char* __fmt, ...) ++ { ++ const size_t __len = __builtin_strlen(__fmt); ++ // We expect at most 2 numbers, and 1 short string. The additional ++ // 512 bytes should provide more than enough space for expansion. ++ const size_t __alloca_size = __len + 512; ++ char *const __s = static_cast(__builtin_alloca(__alloca_size)); ++ va_list __ap; ++ ++ va_start(__ap, __fmt); ++ __gnu_cxx::__snprintf_lite(__s, __alloca_size, __fmt, __ap); ++ _GLIBCXX_THROW_OR_ABORT(out_of_range(_(__s))); ++ va_end(__ap); // Not reached. ++ } ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace +--- libstdc++-v3/src/nonshared11/new_opva.cc.jj 2017-05-31 19:11:38.657882137 +0200 ++++ libstdc++-v3/src/nonshared11/new_opva.cc 2017-05-31 19:11:38.655882161 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/new_opva.cc" +--- libstdc++-v3/src/nonshared11/wlocale-inst.cc.jj 2017-05-31 12:11:25.231560660 +0200 ++++ libstdc++-v3/src/nonshared11/wlocale-inst.cc 2017-05-31 15:25:50.429872451 +0200 +@@ -0,0 +1,36 @@ ++// Locale support -*- C++ -*- ++ ++// Copyright (C) 1999-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: 22.1 Locales ++// ++ ++// Instantiate locales using COW std::wstring ABI ++#define _GLIBCXX_USE_CXX11_ABI 0 ++#include ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++#define C wchar_t ++#include "locale-inst.cc" ++#endif +--- libstdc++-v3/src/nonshared11/wstring-inst.cc.jj 2017-05-31 12:11:25.244560503 +0200 ++++ libstdc++-v3/src/nonshared11/wstring-inst.cc 2017-05-31 15:25:50.429872451 +0200 +@@ -0,0 +1,31 @@ ++// wide string support -*- C++ -*- ++ ++// Copyright (C) 1999-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: 21 Strings library ++// ++ ++#include "../c++11/wstring-inst.cc" ++asm (".hidden _ZN9__gnu_cxxeqIPKwNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEEEEbRKNS_17__normal_iteratorIT_T0_EESE_"); ++asm (".hidden _ZN9__gnu_cxxeqIPwNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEEEEbRKNS_17__normal_iteratorIT_T0_EESD_"); +--- libstdc++-v3/src/nonshared11/istream-inst.cc.jj 2017-05-31 12:11:25.237560588 +0200 ++++ libstdc++-v3/src/nonshared11/istream-inst.cc 2017-05-31 15:25:50.421872547 +0200 +@@ -0,0 +1,46 @@ ++// Explicit instantiation file. ++ ++// Copyright (C) 1997-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: ++// ++ ++#include ++#include ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ template basic_istream::basic_istream(basic_istream&&); ++ template basic_istream& basic_istream::operator=(basic_istream&&); ++ template void basic_istream::swap(basic_istream&); ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template basic_istream::basic_istream(basic_istream&&); ++ template basic_istream& basic_istream::operator=(basic_istream&&); ++ template void basic_istream::swap(basic_istream&); ++#endif ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace +--- libstdc++-v3/src/nonshared11/new_opa.cc.jj 2017-05-31 19:11:38.650882221 +0200 ++++ libstdc++-v3/src/nonshared11/new_opa.cc 2017-05-31 19:11:38.648882245 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/new_opa.cc" +--- libstdc++-v3/src/nonshared11/futex.cc.jj 2017-05-31 12:11:25.235560612 +0200 ++++ libstdc++-v3/src/nonshared11/futex.cc 2017-05-31 15:25:50.419872571 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++11/futex.cc" +--- libstdc++-v3/src/nonshared11/del_ops.cc.jj 2017-05-31 12:11:25.231560660 +0200 ++++ libstdc++-v3/src/nonshared11/del_ops.cc 2017-05-31 15:25:50.415872619 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2013-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/del_ops.cc" +--- libstdc++-v3/src/nonshared11/new_opant.cc.jj 2017-05-31 19:11:38.653882185 +0200 ++++ libstdc++-v3/src/nonshared11/new_opant.cc 2017-05-31 19:11:38.652882197 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/new_opant.cc" +--- libstdc++-v3/src/nonshared11/nested_exception.cc.jj 2017-05-31 12:11:25.243560516 +0200 ++++ libstdc++-v3/src/nonshared11/nested_exception.cc 2017-05-31 15:25:50.423872523 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/nested_exception.cc" ++asm (".hidden _ZTSSt16nested_exception"); +--- libstdc++-v3/src/nonshared11/eh_ptr.cc.jj 2017-06-01 11:58:33.495843422 +0200 ++++ libstdc++-v3/src/nonshared11/eh_ptr.cc 2017-06-01 13:06:50.205282874 +0200 +@@ -0,0 +1,47 @@ ++// -*- C++ -*- Implement the members of exception_ptr. ++// Copyright (C) 2008-2017 Free Software Foundation, Inc. ++// ++// This file is part of GCC. ++// ++// GCC is free software; you can redistribute it and/or modify ++// it under the terms of the GNU General Public License as published by ++// the Free Software Foundation; either version 3, or (at your option) ++// any later version. ++// ++// GCC is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++// ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++#include "eh_atomics.h" ++ ++#define _GLIBCXX_EH_PTR_COMPAT ++ ++#include ++#include ++#include "unwind-cxx.h" ++ ++using namespace __cxxabiv1; ++ ++std::__exception_ptr::exception_ptr::exception_ptr(void* obj) noexcept ++: _M_exception_object(obj) ++{ ++ if (_M_exception_object) ++ { ++ __cxa_refcounted_exception *eh = ++ __get_refcounted_exception_header_from_obj (_M_exception_object); ++ __gnu_cxx::__eh_atomic_inc (&eh->referenceCount); ++ } ++} ++ ++asm (".hidden _ZNSt15__exception_ptr13exception_ptrC2EPv"); +--- libstdc++-v3/src/nonshared11/functional.cc.jj 2017-05-31 12:11:25.230560672 +0200 ++++ libstdc++-v3/src/nonshared11/functional.cc 2017-05-31 15:25:50.419872571 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++11/functional.cc" ++asm (".hidden _ZTSSt17bad_function_call"); +--- libstdc++-v3/src/nonshared11/codecvt.cc.jj 2017-05-31 12:11:25.240560552 +0200 ++++ libstdc++-v3/src/nonshared11/codecvt.cc 2017-05-31 15:25:50.407872715 +0200 +@@ -0,0 +1,31 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++11/codecvt.cc" ++asm (".hidden _ZTISt12codecvt_base"); ++asm (".hidden _ZTSSt12codecvt_base"); ++asm (".hidden _ZTISt23__codecvt_abstract_baseIDic11__mbstate_tE"); ++asm (".hidden _ZTISt23__codecvt_abstract_baseIDsc11__mbstate_tE"); ++asm (".hidden _ZTSSt23__codecvt_abstract_baseIDic11__mbstate_tE"); ++asm (".hidden _ZTSSt23__codecvt_abstract_baseIDsc11__mbstate_tE"); ++asm (".hidden _ZTVSt23__codecvt_abstract_baseIDic11__mbstate_tE"); ++asm (".hidden _ZTVSt23__codecvt_abstract_baseIDsc11__mbstate_tE"); +--- libstdc++-v3/src/nonshared11/cow-sstream-inst44.cc.jj 2017-05-31 12:11:25.245560491 +0200 ++++ libstdc++-v3/src/nonshared11/cow-sstream-inst44.cc 2017-05-31 15:25:50.410872679 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#define _GLIBCXX_NONSHARED_CXX11_44 ++#include "cow-sstream-inst.cc" +--- libstdc++-v3/src/nonshared11/compatibility-thread-c++0x.cc.jj 2017-05-31 12:11:25.244560503 +0200 ++++ libstdc++-v3/src/nonshared11/compatibility-thread-c++0x.cc 2017-05-31 15:25:50.408872703 +0200 +@@ -0,0 +1,39 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++#if defined(_GLIBCXX_HAVE_TLS) && defined(PIC) ++#define _GLIBCXX_ASYNC_ABI_COMPAT ++#endif ++ ++#include ++#include ++ ++#undef _GLIBCXX_HAVE_AS_SYMVER_DIRECTIVE ++#include "../c++11/compatibility-thread-c++0x.cc" ++ ++asm (".hidden _ZSt9call_onceIMSt6threadFvvEJSt17reference_wrapperIS0_EEEvRSt9once_flagOT_DpOT0_"); ++asm (".hidden _ZZSt9call_onceIMSt6threadFvvEJSt17reference_wrapperIS0_EEEvRSt9once_flagOT_DpOT0_ENKUlvE0_clEv"); ++asm (".hidden _ZZSt9call_onceIMSt6threadFvvEJSt17reference_wrapperIS0_EEEvRSt9once_flagOT_DpOT0_ENUlvE0_4_FUNEv"); ++asm (".hidden _ZSt13__bind_simpleIMSt6threadFvvEJSt17reference_wrapperIS0_EEENSt19_Bind_simple_helperIT_JDpT0_EE6__typeEOS6_DpOS7_"); ++asm (".hidden _ZNSt13__future_base19_Async_state_common15_M_run_deferredEv"); ++asm (".hidden _ZNSt13__future_base7_ResultIvE10_M_destroyEv"); +--- libstdc++-v3/src/nonshared11/locale-inst.cc.jj 2017-05-31 12:11:25.243560516 +0200 ++++ libstdc++-v3/src/nonshared11/locale-inst.cc 2017-05-31 15:25:50.422872535 +0200 +@@ -0,0 +1,93 @@ ++// Locale support -*- C++ -*- ++ ++// Copyright (C) 1999-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: 22.1 Locales ++// ++ ++#ifndef _GLIBCXX_USE_CXX11_ABI ++// Instantiations in this file use the old COW std::string ABI unless included ++// by another file which defines _GLIBCXX_USE_CXX11_ABI=1. Some instantiations ++// are guarded by a check for !_GLIBCXX_USE_CXX11_ABI so that they are only ++// instantiated once, because they are not tagged with abi_tag so should not ++// be instantiated twice. ++# define _GLIBCXX_USE_CXX11_ABI 0 ++#endif ++ ++#include ++ ++// Instantiation configuration. ++#ifndef C ++# define C char ++# define C_is_char ++#endif ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++#ifdef _GLIBCXX_NONSHARED_CXX11_44 ++ template time_get>::iter_type time_get>::_M_extract_wday_or_month(iter_type, iter_type, int&, const C**, size_t, ios_base&, ios_base::iostate&) const; ++#endif ++ ++ template C* __add_grouping(C*, C, char const*, size_t, C const*, C const*); ++ ++ template moneypunct_byname::moneypunct_byname(const string&, size_t); ++ template moneypunct_byname::moneypunct_byname(const string&, size_t); ++ template numpunct_byname::numpunct_byname(const string&, size_t); ++ template time_put_byname::time_put_byname(const string&, size_t); ++ template time_get_byname::time_get_byname(const string&, size_t); ++ template time_get>::iter_type time_get>::get(iter_type, iter_type, ios_base&, ios_base::iostate&, tm*, const C*, const C*) const; ++ template time_get>::iter_type time_get>::do_get(iter_type, iter_type, ios_base&, ios_base::iostate&, tm*, char, char) const; ++ template messages_byname::messages_byname(const string&, size_t); ++ ctype_byname::ctype_byname(const string& __s, size_t __refs) ++ : ctype_byname(__s.c_str(), __refs) { } ++ template codecvt_byname::codecvt_byname(const string&, size_t); ++// template collate_byname::collate_byname(const string&, size_t); ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace ++ ++asm (".hidden _ZSt16__convert_from_vRKP15__locale_structPciPKcz"); ++asm (".hidden _ZTISt10money_base"); ++asm (".hidden _ZTISt13messages_base"); ++asm (".hidden _ZTISt9time_base"); ++asm (".hidden _ZTSSt10money_base"); ++asm (".hidden _ZTSSt13messages_base"); ++asm (".hidden _ZTSSt9time_base"); ++#ifdef C_is_char ++asm (".hidden _ZNSt19istreambuf_iteratorIcSt11char_traitsIcEEppEv"); ++#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__)) ++asm (".hidden _ZSt14__add_groupingIcEPT_S1_S0_PKcjPKS0_S5_"); ++#else ++asm (".hidden _ZSt14__add_groupingIcEPT_S1_S0_PKcmPKS0_S5_"); ++#endif ++#else ++asm (".hidden _ZNSt19istreambuf_iteratorIwSt11char_traitsIwEEppEv"); ++#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__)) ++asm (".hidden _ZSt14__add_groupingIwEPT_S1_S0_PKcjPKS0_S5_"); ++#else ++asm (".hidden _ZSt14__add_groupingIwEPT_S1_S0_PKcmPKS0_S5_"); ++#endif ++#endif +--- libstdc++-v3/src/nonshared11/cow-wstring-inst44.cc.jj 2017-05-31 12:11:25.237560588 +0200 ++++ libstdc++-v3/src/nonshared11/cow-wstring-inst44.cc 2017-06-01 09:37:08.518709666 +0200 +@@ -0,0 +1,35 @@ ++// wide string support -*- C++ -*- ++ ++// Copyright (C) 1999-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: 21 Strings library ++// ++ ++#define _GLIBCXX_USE_CXX11_ABI 0 ++#include ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++#define C wchar_t ++#include "cow-string-inst44.cc" ++#endif +--- libstdc++-v3/src/nonshared11/cow-string-inst48.cc.jj 2017-06-01 09:37:37.379345510 +0200 ++++ libstdc++-v3/src/nonshared11/cow-string-inst48.cc 2017-06-01 09:41:04.366733798 +0200 +@@ -0,0 +1,46 @@ ++// Components for manipulating sequences of characters -*- C++ -*- ++ ++// Copyright (C) 1997-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: 21 Strings library ++// ++ ++// Written by Jason Merrill based upon the specification by Takanori Adachi ++// in ANSI X3J16/94-0013R2. Rewritten by Nathan Myers. ++ ++// Instantiation configuration. ++#ifndef C ++# define _GLIBCXX_USE_CXX11_ABI 0 ++# define C char ++#endif ++#include ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++ ++ typedef basic_string S; ++ ++ template ++ S::basic_string(const S&, size_type, const allocator_type&); ++} +--- libstdc++-v3/src/nonshared11/ios-inst.cc.jj 2017-05-31 12:11:25.244560503 +0200 ++++ libstdc++-v3/src/nonshared11/ios-inst.cc 2017-05-31 15:25:50.420872559 +0200 +@@ -0,0 +1,49 @@ ++// Explicit instantiation file. ++ ++// Copyright (C) 1997-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: ++// ++ ++#include ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ template void basic_ios::move(basic_ios&&); ++ template void basic_ios::move(basic_ios&); ++ template void basic_ios::swap(basic_ios&); ++ template void basic_ios::set_rdbuf(basic_streambuf*); ++ template basic_ios::operator bool() const; ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template void basic_ios::move(basic_ios&&); ++ template void basic_ios::move(basic_ios&); ++ template void basic_ios::swap(basic_ios&); ++ template void basic_ios::set_rdbuf(basic_streambuf*); ++ template basic_ios::operator bool() const; ++#endif ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace +--- libstdc++-v3/src/nonshared11/ios.cc.jj 2017-05-31 12:11:25.230560672 +0200 ++++ libstdc++-v3/src/nonshared11/ios.cc 2017-06-01 13:08:25.700103825 +0200 +@@ -0,0 +1,32 @@ ++// Iostreams base classes -*- C++ -*- ++ ++// Copyright (C) 1997-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: 27.4 Iostreams base classes ++// ++ ++#define _GLIBCXX_NONSHARED_CXX11 ++#include "../c++11/ios.cc" ++ ++asm (".hidden _ZSt19__throw_ios_failurePKc"); +--- libstdc++-v3/src/nonshared11/Makefile.am.jj 2017-05-31 12:11:25.241560540 +0200 ++++ libstdc++-v3/src/nonshared11/Makefile.am 2017-06-01 12:24:18.989661190 +0200 +@@ -0,0 +1,218 @@ ++## Makefile for the C++03 sources of the GNU C++ Standard library. ++## ++## Copyright (C) 1997-2017 Free Software Foundation, Inc. ++## ++## This file is part of the libstdc++ version 3 distribution. ++## Process this file with automake to produce Makefile.in. ++ ++## This file is part of the GNU ISO C++ Library. This library is free ++## software; you can redistribute it and/or modify it under the ++## terms of the GNU General Public License as published by the ++## Free Software Foundation; either version 3, or (at your option) ++## any later version. ++ ++## This library is distributed in the hope that it will be useful, ++## but WITHOUT ANY WARRANTY; without even the implied warranty of ++## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++## GNU General Public License for more details. ++ ++## You should have received a copy of the GNU General Public License along ++## with this library; see the file COPYING3. If not see ++## . ++ ++include $(top_srcdir)/fragment.am ++ ++# Convenience library for C++11 runtime. ++noinst_LTLIBRARIES = libnonshared11convenience44.la \ ++ libnonshared11convenience48.la ++ ++headers = ++ ++sources = \ ++ bad_array_length.cc \ ++ bad_array_new.cc \ ++ codecvt.cc \ ++ condition_variable.cc \ ++ cow-shim_facets.cc \ ++ cow-stdexcept.cc \ ++ ctype.cc \ ++ cxx11-hash_tr1.cc \ ++ cxx11-ios_failure.cc \ ++ cxx11-shim_facets.cc \ ++ cxx11-stdexcept.cc \ ++ del_ops.cc \ ++ del_opvs.cc \ ++ new_opa.cc \ ++ new_opant.cc \ ++ new_opva.cc \ ++ new_opvant.cc \ ++ del_opa.cc \ ++ del_opant.cc \ ++ del_opsa.cc \ ++ del_opva.cc \ ++ del_opvant.cc \ ++ del_opvsa.cc \ ++ eh_aux_runtime.cc \ ++ eh_terminate.cc \ ++ eh_ptr.cc \ ++ eh_throw.cc \ ++ futex.cc \ ++ ios.cc \ ++ new_handler.cc \ ++ snprintf_lite.cc \ ++ $(inst_sources) ++ ++sources44 = \ ++ limits.cc \ ++ future.cc \ ++ functexcept.cc \ ++ placeholders.cc \ ++ regex.cc \ ++ functional.cc \ ++ shared_ptr44.cc \ ++ nested_exception.cc \ ++ debug.cc \ ++ compatibility-thread-c++0x.cc \ ++ atexit_thread.cc \ ++ random.cc \ ++ chrono.cc \ ++ compatibility-atomic-c++0x.cc \ ++ compatibility-c++0x.cc \ ++ hashtable_c++0x.cc \ ++ system_error44.cc \ ++ thread44.cc \ ++ $(inst_sources44) ++ ++sources48 = \ ++ functexcept48.cc \ ++ future48.cc \ ++ random48.cc \ ++ regex48.cc \ ++ shared_ptr48.cc \ ++ system_error48.cc \ ++ thread48.cc \ ++ $(inst_sources48) ++ ++if ENABLE_EXTERN_TEMPLATE ++# XTEMPLATE_FLAGS = -fno-implicit-templates ++inst_sources = \ ++ cxx11-locale-inst.cc \ ++ cxx11-wlocale-inst.cc \ ++ ext11-inst.cc \ ++ fstream-inst.cc \ ++ ios-inst.cc \ ++ iostream-inst.cc \ ++ istream-inst.cc \ ++ locale-inst-asm.S \ ++ ostream-inst.cc \ ++ sstream-inst.cc \ ++ streambuf-inst.cc \ ++ string-inst.cc \ ++ wstring-inst.cc \ ++ string-io-inst.cc \ ++ wstring-io-inst.cc \ ++ sso_string.cc ++inst_sources44 = \ ++ cow-sstream-inst44.cc \ ++ cow-string-inst44.cc \ ++ cow-wstring-inst44.cc \ ++ cow-fstream-inst.cc \ ++ locale-inst44.cc \ ++ wlocale-inst44.cc ++inst_sources48 = \ ++ cow-sstream-inst.cc \ ++ cow-string-inst48.cc \ ++ cow-wstring-inst48.cc \ ++ locale-inst.cc \ ++ wlocale-inst.cc ++else ++# XTEMPLATE_FLAGS = ++inst_sources = ++inst_sources44 = ++inst_sources48 = ++endif ++ ++vpath % $(top_srcdir)/src/nonshared11 ++vpath % $(top_srcdir) ++ ++libnonshared11convenience44_la_SOURCES = $(sources) $(sources44) ++libnonshared11convenience48_la_SOURCES = $(sources) $(sources48) ++ ++# AM_CXXFLAGS needs to be in each subdirectory so that it can be ++# modified in a per-library or per-sub-library way. Need to manually ++# set this option because CONFIG_CXXFLAGS has to be after ++# OPTIMIZE_CXXFLAGS on the compile line so that -O2 can be overridden ++# as the occasion calls for it. ++AM_CXXFLAGS = \ ++ -std=gnu++11 \ ++ $(glibcxx_lt_pic_flag) $(glibcxx_compiler_shared_flag) \ ++ $(XTEMPLATE_FLAGS) $(VTV_CXXFLAGS) \ ++ $(WARN_CXXFLAGS) $(OPTIMIZE_CXXFLAGS) $(CONFIG_CXXFLAGS) ++ ++AM_MAKEFLAGS = \ ++ "gxx_include_dir=$(gxx_include_dir)" ++ ++# Libtool notes ++ ++# 1) Need to explicitly set LTCXXCOMPILE so that AM_CXXFLAGS is ++# last. (That way, things like -O2 passed down from the toplevel can ++# be overridden by --enable-debug.) ++ ++# 2) In general, libtool expects an argument such as `--tag=CXX' when ++# using the C++ compiler, because that will enable the settings ++# detected when C++ support was being configured. However, when no ++# such flag is given in the command line, libtool attempts to figure ++# it out by matching the compiler name in each configuration section ++# against a prefix of the command line. The problem is that, if the ++# compiler name and its initial flags stored in the libtool ++# configuration file don't match those in the command line, libtool ++# can't decide which configuration to use, and it gives up. The ++# correct solution is to add `--tag CXX' to LTCXXCOMPILE and maybe ++# CXXLINK, just after $(LIBTOOL), so that libtool doesn't have to ++# attempt to infer which configuration to use. ++# We have to put --tag disable-shared after --tag CXX lest things ++# CXX undo the affect of disable-shared. ++LTCXXCOMPILE = $(LIBTOOL) --tag CXX --tag disable-shared $(LIBTOOLFLAGS) \ ++ --mode=compile $(CXX) $(TOPLEVEL_INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(EXTRA_CXX_FLAGS) ++ ++LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS)) ++ ++# 3) We'd have a problem when building the shared libstdc++ object if ++# the rules automake generates would be used. We cannot allow g++ to ++# be used since this would add -lstdc++ to the link line which of ++# course is problematic at this point. So, we get the top-level ++# directory to configure libstdc++-v3 to use gcc as the C++ ++# compilation driver. ++CXXLINK = $(LIBTOOL) --tag CXX --tag disable-shared $(LIBTOOLFLAGS) \ ++ --mode=link $(CXX) \ ++ $(VTV_CXXLINKFLAGS) \ ++ $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@ ++ ++# Use special rules for the C++14 sources so that the proper flags are passed. ++del_ops.lo: del_ops.cc ++ $(LTCXXCOMPILE) -std=gnu++14 -Wno-sized-deallocation -c $< ++del_opvs.lo: del_opvs.cc ++ $(LTCXXCOMPILE) -std=gnu++14 -Wno-sized-deallocation -c $< ++ ++# Use special rules for the C++17 sources so that the proper flags are passed. ++new_opa.lo: new_opa.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++new_opant.lo: new_opant.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++new_opva.lo: new_opva.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++new_opvant.lo: new_opvant.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opa.lo: del_opa.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opant.lo: del_opant.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opsa.lo: del_opsa.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opva.lo: del_opva.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opvant.lo: del_opvant.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opvsa.lo: del_opvsa.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< +--- libstdc++-v3/src/nonshared11/random48.cc.jj 2017-05-31 12:11:25.234560624 +0200 ++++ libstdc++-v3/src/nonshared11/random48.cc 2017-05-31 15:25:50.424872511 +0200 +@@ -0,0 +1,72 @@ ++// Copyright (C) 2013-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#define _GLIBCXX_NONSHARED_CXX11_48 ++#include "../c++11/random.cc" ++ ++#if __WORDSIZE == 64 ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE10shift_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE10state_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11_M_gen_randEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_bE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_cE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_dE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_lE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_sE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_tE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_uE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE12default_seedE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE25initialization_multiplierE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE3maxEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE3minEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE4seedEm"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE7discardEy"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE8xor_maskE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE9mask_bitsE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE9word_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EEC1Em"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EEC2Em"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EEclEv"); ++#else ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE10shift_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE10state_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11_M_gen_randEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_bE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_cE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_dE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_lE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_sE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_tE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_uE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE12default_seedE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE25initialization_multiplierE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE3maxEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE3minEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE4seedEj"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE7discardEy"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE8xor_maskE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE9mask_bitsE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE9word_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EEC1Ej"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EEC2Ej"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EEclEv"); ++#endif +--- libstdc++-v3/src/nonshared11/string-io-inst.cc.jj 2017-06-01 10:36:29.259980928 +0200 ++++ libstdc++-v3/src/nonshared11/string-io-inst.cc 2017-06-01 11:06:52.072383101 +0200 +@@ -0,0 +1,54 @@ ++// SSO string instantiations for I/O -*- C++ -*- ++ ++// Copyright (C) 1997-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: 21 Strings library ++// ++ ++#ifndef C ++# define _GLIBCXX_USE_CXX11_ABI 1 ++# define C char ++# define NARROW ++#endif ++#include ++#include ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++ // string related to iostreams. ++ typedef basic_istream I; ++ typedef basic_ostream O; ++ typedef basic_string S; ++ ++#ifndef NARROW ++ template ++ I& operator>>(I&, S&); ++#endif ++ ++ template ++ O& operator<<(O&, const S&); ++ ++ template ++ I& getline(I&, S&); ++} +--- libstdc++-v3/src/nonshared11/cow-shim_facets.cc.jj 2017-05-31 12:11:25.231560660 +0200 ++++ libstdc++-v3/src/nonshared11/cow-shim_facets.cc 2017-05-31 15:25:50.409872691 +0200 +@@ -0,0 +1,181 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++11/cow-shim_facets.cc" ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_112collate_shimIcE10do_compareEPKcS4_S4_S4_"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_112collate_shimIcE12do_transformEPKcS4_"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_112collate_shimIwE10do_compareEPKwS4_S4_S4_"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_112collate_shimIwE12do_transformEPKwS4_"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIcE6do_getEiiiRKSs"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIcE7do_openERKSsRKSt6locale"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIcE8do_closeEi"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIwE6do_getEiiiRKSbIwSt11char_traitsIwESaIwEE"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIwE7do_openERKSsRKSt6locale"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113messages_shimIwE8do_closeEi"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE11do_get_dateESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE11do_get_timeESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE11do_get_yearESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE13do_date_orderEv"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE14do_get_weekdayESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIcE16do_get_monthnameESt19istreambuf_iteratorIcSt11char_traitsIcEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE11do_get_dateESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE11do_get_timeESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE11do_get_yearESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE13do_date_orderEv"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE14do_get_weekdayESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_113time_get_shimIwE16do_get_monthnameESt19istreambuf_iteratorIwSt11char_traitsIwEES6_RSt8ios_baseRSt12_Ios_IostateP2tm"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIcE6do_getESt19istreambuf_iteratorIcSt11char_traitsIcEES6_bRSt8ios_baseRSt12_Ios_IostateRSs"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIwE6do_getESt19istreambuf_iteratorIwSt11char_traitsIwEES6_bRSt8ios_baseRSt12_Ios_IostateRSbIwS5_SaIwEE"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIcE6do_putESt19ostreambuf_iteratorIcSt11char_traitsIcEEbRSt8ios_basecRKSs"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIwE6do_putESt19ostreambuf_iteratorIwSt11char_traitsIwEEbRSt8ios_basewRKSbIwS5_SaIwEE"); ++asm (".hidden _ZNKSt6locale5facet11_M_cow_shimEPKNS_2idE"); ++asm (".hidden _ZNKSt6locale5facet19_M_remove_referenceEv"); ++asm (".hidden _ZNSt13__facet_shims10__time_getIcEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_S5_RSt8ios_baseRSt12_Ios_IostateP2tmc"); ++asm (".hidden _ZNSt13__facet_shims10__time_getIwEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_S5_RSt8ios_baseRSt12_Ios_IostateP2tmc"); ++#if !defined (__powerpc__) && !defined (__s390__) && !defined (__s390x__) ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIcE6do_getESt19istreambuf_iteratorIcSt11char_traitsIcEES6_bRSt8ios_baseRSt12_Ios_IostateRe"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIwE6do_getESt19istreambuf_iteratorIwSt11char_traitsIwEES6_bRSt8ios_baseRSt12_Ios_IostateRe"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIcE6do_putESt19ostreambuf_iteratorIcSt11char_traitsIcEEbRSt8ios_basece"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIwE6do_putESt19ostreambuf_iteratorIwSt11char_traitsIwEEbRSt8ios_basewe"); ++asm (".hidden _ZNSt13__facet_shims11__money_getIcEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_S5_bRSt8ios_baseRSt12_Ios_IostatePePNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_getIwEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_S5_bRSt8ios_baseRSt12_Ios_IostatePePNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_putIcEESt19ostreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_bRSt8ios_baseS2_ePKNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_putIwEESt19ostreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_bRSt8ios_baseS2_ePKNS_12__any_stringE"); ++#else ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIcE6do_getESt19istreambuf_iteratorIcSt11char_traitsIcEES6_bRSt8ios_baseRSt12_Ios_IostateRg"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_get_shimIwE6do_getESt19istreambuf_iteratorIwSt11char_traitsIwEES6_bRSt8ios_baseRSt12_Ios_IostateRg"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIcE6do_putESt19ostreambuf_iteratorIcSt11char_traitsIcEEbRSt8ios_basecg"); ++asm (".hidden _ZNKSt13__facet_shims12_GLOBAL__N_114money_put_shimIwE6do_putESt19ostreambuf_iteratorIwSt11char_traitsIwEEbRSt8ios_basewg"); ++asm (".hidden _ZNSt13__facet_shims11__money_getIcEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_S5_bRSt8ios_baseRSt12_Ios_IostatePgPNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_getIwEESt19istreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_S5_bRSt8ios_baseRSt12_Ios_IostatePgPNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_putIcEESt19ostreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_bRSt8ios_baseS2_gPKNS_12__any_stringE"); ++asm (".hidden _ZNSt13__facet_shims11__money_putIwEESt19ostreambuf_iteratorIT_St11char_traitsIS2_EESt17integral_constantIbLb0EEPKNSt6locale5facetES5_bRSt8ios_baseS2_gPKNS_12__any_stringE"); ++#endif ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_112collate_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113messages_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_113time_get_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_get_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIcED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIcED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIcED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIwED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIwED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_114money_put_shimIwED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EED0Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EED1Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EED2Ev"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_116__destroy_stringIcEEvPv"); ++asm (".hidden _ZNSt13__facet_shims12_GLOBAL__N_116__destroy_stringIwEEvPv"); ++asm (".hidden _ZNSt13__facet_shims16__messages_closeIcEEvSt17integral_constantIbLb0EEPKNSt6locale5facetEi"); ++asm (".hidden _ZNSt13__facet_shims16__messages_closeIwEEvSt17integral_constantIbLb0EEPKNSt6locale5facetEi"); ++asm (".hidden _ZNSt13__facet_shims17__collate_compareIcEEiSt17integral_constantIbLb0EEPKNSt6locale5facetEPKT_S9_S9_S9_"); ++asm (".hidden _ZNSt13__facet_shims17__collate_compareIwEEiSt17integral_constantIbLb0EEPKNSt6locale5facetEPKT_S9_S9_S9_"); ++asm (".hidden _ZNSt13__facet_shims19__collate_transformIcEEvSt17integral_constantIbLb0EEPKNSt6locale5facetERNS_12__any_stringEPKT_SB_"); ++asm (".hidden _ZNSt13__facet_shims19__collate_transformIwEEvSt17integral_constantIbLb0EEPKNSt6locale5facetERNS_12__any_stringEPKT_SB_"); ++asm (".hidden _ZNSt13__facet_shims20__time_get_dateorderIcEENSt9time_base9dateorderESt17integral_constantIbLb0EEPKNSt6locale5facetE"); ++asm (".hidden _ZNSt13__facet_shims20__time_get_dateorderIwEENSt9time_base9dateorderESt17integral_constantIbLb0EEPKNSt6locale5facetE"); ++asm (".hidden _ZNSt13__facet_shims23__moneypunct_fill_cacheIcLb0EEEvSt17integral_constantIbLb0EEPKNSt6locale5facetEPSt18__moneypunct_cacheIT_XT0_EE"); ++asm (".hidden _ZNSt13__facet_shims23__moneypunct_fill_cacheIcLb1EEEvSt17integral_constantIbLb0EEPKNSt6locale5facetEPSt18__moneypunct_cacheIT_XT0_EE"); ++asm (".hidden _ZNSt13__facet_shims23__moneypunct_fill_cacheIwLb0EEEvSt17integral_constantIbLb0EEPKNSt6locale5facetEPSt18__moneypunct_cacheIT_XT0_EE"); ++asm (".hidden _ZNSt13__facet_shims23__moneypunct_fill_cacheIwLb1EEEvSt17integral_constantIbLb0EEPKNSt6locale5facetEPSt18__moneypunct_cacheIT_XT0_EE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_112collate_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_112collate_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113messages_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113messages_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113time_get_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_113time_get_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_114money_get_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_114money_get_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_114money_put_shimIcEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_114money_put_shimIwEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EEE"); ++asm (".hidden _ZTINSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EEE"); ++asm (".hidden _ZTINSt6locale5facet6__shimE"); ++asm (".hidden _ZTSNSt6locale5facet6__shimE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_112collate_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_112collate_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113messages_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113messages_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113numpunct_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113time_get_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_113time_get_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_114money_get_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_114money_get_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_114money_put_shimIcEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_114money_put_shimIwEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb0EEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIcLb1EEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb0EEE"); ++asm (".hidden _ZTVNSt13__facet_shims12_GLOBAL__N_115moneypunct_shimIwLb1EEE"); ++asm (".hidden _ZNSt13__facet_shims21__numpunct_fill_cacheIcEEvSt17integral_constantIbLb0EEPKNSt6locale5facetEPSt16__numpunct_cacheIT_E"); ++asm (".hidden _ZNSt13__facet_shims21__numpunct_fill_cacheIwEEvSt17integral_constantIbLb0EEPKNSt6locale5facetEPSt16__numpunct_cacheIT_E"); ++#if defined(__i386__) || (defined(__powerpc__) && !defined(__powerpc64__)) ++asm (".hidden _ZNSt13__facet_shims14__messages_getIcEEvSt17integral_constantIbLb0EEPKNSt6locale5facetERNS_12__any_stringEiiiPKT_j"); ++asm (".hidden _ZNSt13__facet_shims14__messages_getIwEEvSt17integral_constantIbLb0EEPKNSt6locale5facetERNS_12__any_stringEiiiPKT_j"); ++asm (".hidden _ZNSt13__facet_shims15__messages_openIcEEiSt17integral_constantIbLb0EEPKNSt6locale5facetEPKcjRKS3_"); ++asm (".hidden _ZNSt13__facet_shims15__messages_openIwEEiSt17integral_constantIbLb0EEPKNSt6locale5facetEPKcjRKS3_"); ++#else ++asm (".hidden _ZNSt13__facet_shims14__messages_getIcEEvSt17integral_constantIbLb0EEPKNSt6locale5facetERNS_12__any_stringEiiiPKT_m"); ++asm (".hidden _ZNSt13__facet_shims14__messages_getIwEEvSt17integral_constantIbLb0EEPKNSt6locale5facetERNS_12__any_stringEiiiPKT_m"); ++asm (".hidden _ZNSt13__facet_shims15__messages_openIcEEiSt17integral_constantIbLb0EEPKNSt6locale5facetEPKcmRKS3_"); ++asm (".hidden _ZNSt13__facet_shims15__messages_openIwEEiSt17integral_constantIbLb0EEPKNSt6locale5facetEPKcmRKS3_"); ++#endif +--- libstdc++-v3/src/nonshared11/sso_string.cc.jj 2017-05-31 15:22:41.353139321 +0200 ++++ libstdc++-v3/src/nonshared11/sso_string.cc 2017-05-31 15:25:50.426872487 +0200 +@@ -0,0 +1,29 @@ ++// wide string support -*- C++ -*- ++ ++// Copyright (C) 2014-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: 21 Strings library ++// ++ ++#include "../c++11/sso_string.cc" +--- libstdc++-v3/src/nonshared11/del_opv.cc.jj 2017-05-31 12:11:25.242560528 +0200 ++++ libstdc++-v3/src/nonshared11/del_opv.cc 2017-05-31 15:25:50.415872619 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2013-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/del_opv.cc" +--- libstdc++-v3/src/nonshared11/Makefile.in.jj 2017-05-31 12:11:25.242560528 +0200 ++++ libstdc++-v3/src/nonshared11/Makefile.in 2017-06-01 12:24:32.476494537 +0200 +@@ -0,0 +1,836 @@ ++# Makefile.in generated by automake 1.11.6 from Makefile.am. ++# @configure_input@ ++ ++# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, ++# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software ++# Foundation, Inc. ++# This Makefile.in is free software; the Free Software Foundation ++# gives unlimited permission to copy and/or distribute it, ++# with or without modifications, as long as this notice is preserved. ++ ++# This program is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY, to the extent permitted by law; without ++# even the implied warranty of MERCHANTABILITY or FITNESS FOR A ++# PARTICULAR PURPOSE. ++ ++@SET_MAKE@ ++ ++VPATH = @srcdir@ ++am__make_dryrun = \ ++ { \ ++ am__dry=no; \ ++ case $$MAKEFLAGS in \ ++ *\\[\ \ ]*) \ ++ echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ ++ | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ ++ *) \ ++ for am__flg in $$MAKEFLAGS; do \ ++ case $$am__flg in \ ++ *=*|--*) ;; \ ++ *n*) am__dry=yes; break;; \ ++ esac; \ ++ done;; \ ++ esac; \ ++ test $$am__dry = yes; \ ++ } ++pkgdatadir = $(datadir)/@PACKAGE@ ++pkgincludedir = $(includedir)/@PACKAGE@ ++pkglibdir = $(libdir)/@PACKAGE@ ++pkglibexecdir = $(libexecdir)/@PACKAGE@ ++am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd ++install_sh_DATA = $(install_sh) -c -m 644 ++install_sh_PROGRAM = $(install_sh) -c ++install_sh_SCRIPT = $(install_sh) -c ++INSTALL_HEADER = $(INSTALL_DATA) ++transform = $(program_transform_name) ++NORMAL_INSTALL = : ++PRE_INSTALL = : ++POST_INSTALL = : ++NORMAL_UNINSTALL = : ++PRE_UNINSTALL = : ++POST_UNINSTALL = : ++build_triplet = @build@ ++host_triplet = @host@ ++target_triplet = @target@ ++DIST_COMMON = $(top_srcdir)/fragment.am $(srcdir)/Makefile.in \ ++ $(srcdir)/Makefile.am ++subdir = src/nonshared11 ++ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ++am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \ ++ $(top_srcdir)/../config/enable.m4 \ ++ $(top_srcdir)/../config/futex.m4 \ ++ $(top_srcdir)/../config/hwcaps.m4 \ ++ $(top_srcdir)/../config/iconv.m4 \ ++ $(top_srcdir)/../config/lead-dot.m4 \ ++ $(top_srcdir)/../config/lib-ld.m4 \ ++ $(top_srcdir)/../config/lib-link.m4 \ ++ $(top_srcdir)/../config/lib-prefix.m4 \ ++ $(top_srcdir)/../config/lthostflags.m4 \ ++ $(top_srcdir)/../config/multi.m4 \ ++ $(top_srcdir)/../config/no-executables.m4 \ ++ $(top_srcdir)/../config/override.m4 \ ++ $(top_srcdir)/../config/stdint.m4 \ ++ $(top_srcdir)/../config/unwind_ipinfo.m4 \ ++ $(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \ ++ $(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \ ++ $(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/crossconfig.m4 \ ++ $(top_srcdir)/linkage.m4 $(top_srcdir)/acinclude.m4 \ ++ $(top_srcdir)/../config/gc++filt.m4 \ ++ $(top_srcdir)/../config/tls.m4 $(top_srcdir)/../config/gthr.m4 \ ++ $(top_srcdir)/configure.ac ++am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ ++ $(ACLOCAL_M4) ++CONFIG_HEADER = $(top_builddir)/config.h ++CONFIG_CLEAN_FILES = ++CONFIG_CLEAN_VPATH_FILES = ++LTLIBRARIES = $(noinst_LTLIBRARIES) ++libnonshared11convenience44_la_LIBADD = ++@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_1 = cxx11-locale-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cxx11-wlocale-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ ext11-inst.lo fstream-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ ios-inst.lo iostream-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ istream-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ locale-inst-asm.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ ostream-inst.lo sstream-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ streambuf-inst.lo string-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ wstring-inst.lo string-io-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ wstring-io-inst.lo sso_string.lo ++am__objects_2 = bad_array_length.lo bad_array_new.lo codecvt.lo \ ++ condition_variable.lo cow-shim_facets.lo cow-stdexcept.lo \ ++ ctype.lo cxx11-hash_tr1.lo cxx11-ios_failure.lo \ ++ cxx11-shim_facets.lo cxx11-stdexcept.lo del_ops.lo del_opvs.lo \ ++ new_opa.lo new_opant.lo new_opva.lo new_opvant.lo del_opa.lo \ ++ del_opant.lo del_opsa.lo del_opva.lo del_opvant.lo \ ++ del_opvsa.lo eh_aux_runtime.lo eh_terminate.lo eh_ptr.lo \ ++ eh_throw.lo futex.lo ios.lo new_handler.lo snprintf_lite.lo \ ++ $(am__objects_1) ++@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_3 = cow-sstream-inst44.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-string-inst44.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-wstring-inst44.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-fstream-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ locale-inst44.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ wlocale-inst44.lo ++am__objects_4 = limits.lo future.lo functexcept.lo placeholders.lo \ ++ regex.lo functional.lo shared_ptr44.lo nested_exception.lo \ ++ debug.lo compatibility-thread-c++0x.lo atexit_thread.lo \ ++ random.lo chrono.lo compatibility-atomic-c++0x.lo \ ++ compatibility-c++0x.lo hashtable_c++0x.lo system_error44.lo \ ++ thread44.lo $(am__objects_3) ++am_libnonshared11convenience44_la_OBJECTS = $(am__objects_2) \ ++ $(am__objects_4) ++libnonshared11convenience44_la_OBJECTS = \ ++ $(am_libnonshared11convenience44_la_OBJECTS) ++libnonshared11convenience48_la_LIBADD = ++@ENABLE_EXTERN_TEMPLATE_TRUE@am__objects_5 = cow-sstream-inst.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-string-inst48.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-wstring-inst48.lo \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ locale-inst.lo wlocale-inst.lo ++am__objects_6 = functexcept48.lo future48.lo random48.lo regex48.lo \ ++ shared_ptr48.lo system_error48.lo thread48.lo $(am__objects_5) ++am_libnonshared11convenience48_la_OBJECTS = $(am__objects_2) \ ++ $(am__objects_6) ++libnonshared11convenience48_la_OBJECTS = \ ++ $(am_libnonshared11convenience48_la_OBJECTS) ++DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) ++depcomp = ++am__depfiles_maybe = ++CPPASCOMPILE = $(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CCASFLAGS) $(CCASFLAGS) ++LTCPPASCOMPILE = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ ++ --mode=compile $(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CCASFLAGS) $(CCASFLAGS) ++CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) ++CXXLD = $(CXX) ++COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ ++ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) ++LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ ++ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) ++CCLD = $(CC) ++LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ ++ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ ++ $(LDFLAGS) -o $@ ++SOURCES = $(libnonshared11convenience44_la_SOURCES) \ ++ $(libnonshared11convenience48_la_SOURCES) ++am__can_run_installinfo = \ ++ case $$AM_UPDATE_INFO_DIR in \ ++ n|no|NO) false;; \ ++ *) (install-info --version) >/dev/null 2>&1;; \ ++ esac ++ETAGS = etags ++CTAGS = ctags ++ABI_TWEAKS_SRCDIR = @ABI_TWEAKS_SRCDIR@ ++ACLOCAL = @ACLOCAL@ ++ALLOCATOR_H = @ALLOCATOR_H@ ++ALLOCATOR_NAME = @ALLOCATOR_NAME@ ++AMTAR = @AMTAR@ ++AR = @AR@ ++AS = @AS@ ++ATOMICITY_SRCDIR = @ATOMICITY_SRCDIR@ ++ATOMIC_FLAGS = @ATOMIC_FLAGS@ ++ATOMIC_WORD_SRCDIR = @ATOMIC_WORD_SRCDIR@ ++AUTOCONF = @AUTOCONF@ ++AUTOHEADER = @AUTOHEADER@ ++AUTOMAKE = @AUTOMAKE@ ++AWK = @AWK@ ++BASIC_FILE_CC = @BASIC_FILE_CC@ ++BASIC_FILE_H = @BASIC_FILE_H@ ++CC = @CC@ ++CCAS = @CCAS@ ++CCASFLAGS = @CCASFLAGS@ ++CCODECVT_CC = @CCODECVT_CC@ ++CCOLLATE_CC = @CCOLLATE_CC@ ++CCTYPE_CC = @CCTYPE_CC@ ++CFLAGS = @CFLAGS@ ++CLOCALE_CC = @CLOCALE_CC@ ++CLOCALE_H = @CLOCALE_H@ ++CLOCALE_INTERNAL_H = @CLOCALE_INTERNAL_H@ ++CMESSAGES_CC = @CMESSAGES_CC@ ++CMESSAGES_H = @CMESSAGES_H@ ++CMONEY_CC = @CMONEY_CC@ ++CNUMERIC_CC = @CNUMERIC_CC@ ++CPP = @CPP@ ++CPPFLAGS = @CPPFLAGS@ ++CPU_DEFINES_SRCDIR = @CPU_DEFINES_SRCDIR@ ++CPU_OPT_BITS_RANDOM = @CPU_OPT_BITS_RANDOM@ ++CPU_OPT_EXT_RANDOM = @CPU_OPT_EXT_RANDOM@ ++CSTDIO_H = @CSTDIO_H@ ++CTIME_CC = @CTIME_CC@ ++CTIME_H = @CTIME_H@ ++CXX = @CXX@ ++CXXCPP = @CXXCPP@ ++CXXFILT = @CXXFILT@ ++CXXFLAGS = @CXXFLAGS@ ++CYGPATH_W = @CYGPATH_W@ ++C_INCLUDE_DIR = @C_INCLUDE_DIR@ ++DBLATEX = @DBLATEX@ ++DEBUG_FLAGS = @DEBUG_FLAGS@ ++DEFS = @DEFS@ ++DOT = @DOT@ ++DOXYGEN = @DOXYGEN@ ++DSYMUTIL = @DSYMUTIL@ ++DUMPBIN = @DUMPBIN@ ++ECHO_C = @ECHO_C@ ++ECHO_N = @ECHO_N@ ++ECHO_T = @ECHO_T@ ++EGREP = @EGREP@ ++ERROR_CONSTANTS_SRCDIR = @ERROR_CONSTANTS_SRCDIR@ ++EXEEXT = @EXEEXT@ ++EXTRA_CXX_FLAGS = @EXTRA_CXX_FLAGS@ ++FGREP = @FGREP@ ++GLIBCXX_INCLUDES = @GLIBCXX_INCLUDES@ ++GLIBCXX_LIBS = @GLIBCXX_LIBS@ ++GREP = @GREP@ ++HWCAP_CFLAGS = @HWCAP_CFLAGS@ ++INSTALL = @INSTALL@ ++INSTALL_DATA = @INSTALL_DATA@ ++INSTALL_PROGRAM = @INSTALL_PROGRAM@ ++INSTALL_SCRIPT = @INSTALL_SCRIPT@ ++INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ ++LD = @LD@ ++LDFLAGS = @LDFLAGS@ ++LIBICONV = @LIBICONV@ ++LIBOBJS = @LIBOBJS@ ++LIBS = @LIBS@ ++LIBTOOL = @LIBTOOL@ ++LIPO = @LIPO@ ++LN_S = @LN_S@ ++LONG_DOUBLE_COMPAT_FLAGS = @LONG_DOUBLE_COMPAT_FLAGS@ ++LTLIBICONV = @LTLIBICONV@ ++LTLIBOBJS = @LTLIBOBJS@ ++MAINT = @MAINT@ ++MAKEINFO = @MAKEINFO@ ++MKDIR_P = @MKDIR_P@ ++NM = @NM@ ++NMEDIT = @NMEDIT@ ++OBJDUMP = @OBJDUMP@ ++OBJEXT = @OBJEXT@ ++OPTIMIZE_CXXFLAGS = @OPTIMIZE_CXXFLAGS@ ++OPT_LDFLAGS = @OPT_LDFLAGS@ ++OS_INC_SRCDIR = @OS_INC_SRCDIR@ ++OTOOL = @OTOOL@ ++OTOOL64 = @OTOOL64@ ++PACKAGE = @PACKAGE@ ++PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ ++PACKAGE_NAME = @PACKAGE_NAME@ ++PACKAGE_STRING = @PACKAGE_STRING@ ++PACKAGE_TARNAME = @PACKAGE_TARNAME@ ++PACKAGE_URL = @PACKAGE_URL@ ++PACKAGE_VERSION = @PACKAGE_VERSION@ ++PATH_SEPARATOR = @PATH_SEPARATOR@ ++PDFLATEX = @PDFLATEX@ ++RANLIB = @RANLIB@ ++SECTION_FLAGS = @SECTION_FLAGS@ ++SECTION_LDFLAGS = @SECTION_LDFLAGS@ ++SED = @SED@ ++SET_MAKE = @SET_MAKE@ ++SHELL = @SHELL@ ++STRIP = @STRIP@ ++SYMVER_FILE = @SYMVER_FILE@ ++TOPLEVEL_INCLUDES = @TOPLEVEL_INCLUDES@ ++USE_NLS = @USE_NLS@ ++VERSION = @VERSION@ ++VTV_CXXFLAGS = @VTV_CXXFLAGS@ ++VTV_CXXLINKFLAGS = @VTV_CXXLINKFLAGS@ ++VTV_PCH_CXXFLAGS = @VTV_PCH_CXXFLAGS@ ++WARN_FLAGS = @WARN_FLAGS@ ++WERROR = @WERROR@ ++XMLLINT = @XMLLINT@ ++XSLTPROC = @XSLTPROC@ ++XSL_STYLE_DIR = @XSL_STYLE_DIR@ ++abs_builddir = @abs_builddir@ ++abs_srcdir = @abs_srcdir@ ++abs_top_builddir = @abs_top_builddir@ ++abs_top_srcdir = @abs_top_srcdir@ ++ac_ct_CC = @ac_ct_CC@ ++ac_ct_CXX = @ac_ct_CXX@ ++ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ ++am__leading_dot = @am__leading_dot@ ++am__tar = @am__tar@ ++am__untar = @am__untar@ ++baseline_dir = @baseline_dir@ ++baseline_subdir_switch = @baseline_subdir_switch@ ++bindir = @bindir@ ++build = @build@ ++build_alias = @build_alias@ ++build_cpu = @build_cpu@ ++build_os = @build_os@ ++build_vendor = @build_vendor@ ++builddir = @builddir@ ++check_msgfmt = @check_msgfmt@ ++datadir = @datadir@ ++datarootdir = @datarootdir@ ++docdir = @docdir@ ++dvidir = @dvidir@ ++enable_shared = @enable_shared@ ++enable_static = @enable_static@ ++exec_prefix = @exec_prefix@ ++get_gcc_base_ver = @get_gcc_base_ver@ ++glibcxx_MOFILES = @glibcxx_MOFILES@ ++glibcxx_PCHFLAGS = @glibcxx_PCHFLAGS@ ++glibcxx_POFILES = @glibcxx_POFILES@ ++glibcxx_builddir = @glibcxx_builddir@ ++glibcxx_compiler_pic_flag = @glibcxx_compiler_pic_flag@ ++glibcxx_compiler_shared_flag = @glibcxx_compiler_shared_flag@ ++glibcxx_cxx98_abi = @glibcxx_cxx98_abi@ ++glibcxx_localedir = @glibcxx_localedir@ ++glibcxx_lt_pic_flag = @glibcxx_lt_pic_flag@ ++glibcxx_prefixdir = @glibcxx_prefixdir@ ++glibcxx_srcdir = @glibcxx_srcdir@ ++glibcxx_toolexecdir = @glibcxx_toolexecdir@ ++glibcxx_toolexeclibdir = @glibcxx_toolexeclibdir@ ++gxx_include_dir = @gxx_include_dir@ ++host = @host@ ++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@ ++libtool_VERSION = @libtool_VERSION@ ++localedir = @localedir@ ++localstatedir = @localstatedir@ ++lt_host_flags = @lt_host_flags@ ++mandir = @mandir@ ++mkdir_p = @mkdir_p@ ++multi_basedir = @multi_basedir@ ++oldincludedir = @oldincludedir@ ++pdfdir = @pdfdir@ ++port_specific_symbol_files = @port_specific_symbol_files@ ++prefix = @prefix@ ++program_transform_name = @program_transform_name@ ++psdir = @psdir@ ++python_mod_dir = @python_mod_dir@ ++sbindir = @sbindir@ ++sharedstatedir = @sharedstatedir@ ++srcdir = @srcdir@ ++sysconfdir = @sysconfdir@ ++target = @target@ ++target_alias = @target_alias@ ++target_cpu = @target_cpu@ ++target_os = @target_os@ ++target_vendor = @target_vendor@ ++thread_header = @thread_header@ ++top_build_prefix = @top_build_prefix@ ++top_builddir = @top_builddir@ ++top_srcdir = @top_srcdir@ ++toplevel_builddir = @toplevel_builddir@ ++toplevel_srcdir = @toplevel_srcdir@ ++ ++# May be used by various substitution variables. ++gcc_version := $(shell @get_gcc_base_ver@ $(top_srcdir)/../gcc/BASE-VER) ++MAINT_CHARSET = latin1 ++mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs ++PWD_COMMAND = $${PWDCMD-pwd} ++STAMP = echo timestamp > ++toolexecdir = $(glibcxx_toolexecdir) ++toolexeclibdir = $(glibcxx_toolexeclibdir) ++@ENABLE_WERROR_FALSE@WERROR_FLAG = ++@ENABLE_WERROR_TRUE@WERROR_FLAG = $(WERROR) ++@ENABLE_EXTERN_TEMPLATE_FALSE@XTEMPLATE_FLAGS = ++@ENABLE_EXTERN_TEMPLATE_TRUE@XTEMPLATE_FLAGS = -fno-implicit-templates ++ ++# These bits are all figured out from configure. Look in acinclude.m4 ++# or configure.ac to see how they are set. See GLIBCXX_EXPORT_FLAGS. ++CONFIG_CXXFLAGS = \ ++ $(SECTION_FLAGS) $(HWCAP_CFLAGS) -frandom-seed=$@ ++ ++WARN_CXXFLAGS = \ ++ $(WARN_FLAGS) $(WERROR_FLAG) -fdiagnostics-show-location=once ++ ++ ++# -I/-D flags to pass when compiling. ++AM_CPPFLAGS = $(GLIBCXX_INCLUDES) $(CPPFLAGS) ++ ++# Convenience library for C++11 runtime. ++noinst_LTLIBRARIES = libnonshared11convenience44.la \ ++ libnonshared11convenience48.la ++ ++headers = ++sources = \ ++ bad_array_length.cc \ ++ bad_array_new.cc \ ++ codecvt.cc \ ++ condition_variable.cc \ ++ cow-shim_facets.cc \ ++ cow-stdexcept.cc \ ++ ctype.cc \ ++ cxx11-hash_tr1.cc \ ++ cxx11-ios_failure.cc \ ++ cxx11-shim_facets.cc \ ++ cxx11-stdexcept.cc \ ++ del_ops.cc \ ++ del_opvs.cc \ ++ new_opa.cc \ ++ new_opant.cc \ ++ new_opva.cc \ ++ new_opvant.cc \ ++ del_opa.cc \ ++ del_opant.cc \ ++ del_opsa.cc \ ++ del_opva.cc \ ++ del_opvant.cc \ ++ del_opvsa.cc \ ++ eh_aux_runtime.cc \ ++ eh_terminate.cc \ ++ eh_ptr.cc \ ++ eh_throw.cc \ ++ futex.cc \ ++ ios.cc \ ++ new_handler.cc \ ++ snprintf_lite.cc \ ++ $(inst_sources) ++ ++sources44 = \ ++ limits.cc \ ++ future.cc \ ++ functexcept.cc \ ++ placeholders.cc \ ++ regex.cc \ ++ functional.cc \ ++ shared_ptr44.cc \ ++ nested_exception.cc \ ++ debug.cc \ ++ compatibility-thread-c++0x.cc \ ++ atexit_thread.cc \ ++ random.cc \ ++ chrono.cc \ ++ compatibility-atomic-c++0x.cc \ ++ compatibility-c++0x.cc \ ++ hashtable_c++0x.cc \ ++ system_error44.cc \ ++ thread44.cc \ ++ $(inst_sources44) ++ ++sources48 = \ ++ functexcept48.cc \ ++ future48.cc \ ++ random48.cc \ ++ regex48.cc \ ++ shared_ptr48.cc \ ++ system_error48.cc \ ++ thread48.cc \ ++ $(inst_sources48) ++ ++# XTEMPLATE_FLAGS = ++@ENABLE_EXTERN_TEMPLATE_FALSE@inst_sources = ++ ++# XTEMPLATE_FLAGS = -fno-implicit-templates ++@ENABLE_EXTERN_TEMPLATE_TRUE@inst_sources = \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cxx11-locale-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cxx11-wlocale-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ ext11-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ fstream-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ ios-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ iostream-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ istream-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ locale-inst-asm.S \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ ostream-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ sstream-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ streambuf-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ string-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ wstring-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ string-io-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ wstring-io-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ sso_string.cc ++ ++@ENABLE_EXTERN_TEMPLATE_FALSE@inst_sources44 = ++@ENABLE_EXTERN_TEMPLATE_TRUE@inst_sources44 = \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-sstream-inst44.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-string-inst44.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-wstring-inst44.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-fstream-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ locale-inst44.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ wlocale-inst44.cc ++ ++@ENABLE_EXTERN_TEMPLATE_FALSE@inst_sources48 = ++@ENABLE_EXTERN_TEMPLATE_TRUE@inst_sources48 = \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-sstream-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-string-inst48.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ cow-wstring-inst48.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ locale-inst.cc \ ++@ENABLE_EXTERN_TEMPLATE_TRUE@ wlocale-inst.cc ++ ++libnonshared11convenience44_la_SOURCES = $(sources) $(sources44) ++libnonshared11convenience48_la_SOURCES = $(sources) $(sources48) ++ ++# AM_CXXFLAGS needs to be in each subdirectory so that it can be ++# modified in a per-library or per-sub-library way. Need to manually ++# set this option because CONFIG_CXXFLAGS has to be after ++# OPTIMIZE_CXXFLAGS on the compile line so that -O2 can be overridden ++# as the occasion calls for it. ++AM_CXXFLAGS = \ ++ -std=gnu++11 \ ++ $(glibcxx_lt_pic_flag) $(glibcxx_compiler_shared_flag) \ ++ $(XTEMPLATE_FLAGS) $(VTV_CXXFLAGS) \ ++ $(WARN_CXXFLAGS) $(OPTIMIZE_CXXFLAGS) $(CONFIG_CXXFLAGS) ++ ++AM_MAKEFLAGS = \ ++ "gxx_include_dir=$(gxx_include_dir)" ++ ++ ++# Libtool notes ++ ++# 1) Need to explicitly set LTCXXCOMPILE so that AM_CXXFLAGS is ++# last. (That way, things like -O2 passed down from the toplevel can ++# be overridden by --enable-debug.) ++ ++# 2) In general, libtool expects an argument such as `--tag=CXX' when ++# using the C++ compiler, because that will enable the settings ++# detected when C++ support was being configured. However, when no ++# such flag is given in the command line, libtool attempts to figure ++# it out by matching the compiler name in each configuration section ++# against a prefix of the command line. The problem is that, if the ++# compiler name and its initial flags stored in the libtool ++# configuration file don't match those in the command line, libtool ++# can't decide which configuration to use, and it gives up. The ++# correct solution is to add `--tag CXX' to LTCXXCOMPILE and maybe ++# CXXLINK, just after $(LIBTOOL), so that libtool doesn't have to ++# attempt to infer which configuration to use. ++# We have to put --tag disable-shared after --tag CXX lest things ++# CXX undo the affect of disable-shared. ++LTCXXCOMPILE = $(LIBTOOL) --tag CXX --tag disable-shared $(LIBTOOLFLAGS) \ ++ --mode=compile $(CXX) $(TOPLEVEL_INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(EXTRA_CXX_FLAGS) ++ ++LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS)) ++ ++# 3) We'd have a problem when building the shared libstdc++ object if ++# the rules automake generates would be used. We cannot allow g++ to ++# be used since this would add -lstdc++ to the link line which of ++# course is problematic at this point. So, we get the top-level ++# directory to configure libstdc++-v3 to use gcc as the C++ ++# compilation driver. ++CXXLINK = $(LIBTOOL) --tag CXX --tag disable-shared $(LIBTOOLFLAGS) \ ++ --mode=link $(CXX) \ ++ $(VTV_CXXLINKFLAGS) \ ++ $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_CXXFLAGS) $(LTLDFLAGS) -o $@ ++ ++all: all-am ++ ++.SUFFIXES: ++.SUFFIXES: .S .cc .lo .o .obj ++$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/fragment.am $(am__configure_deps) ++ @for dep in $?; do \ ++ case '$(am__configure_deps)' in \ ++ *$$dep*) \ ++ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ ++ && { if test -f $@; then exit 0; else break; fi; }; \ ++ exit 1;; \ ++ esac; \ ++ done; \ ++ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign --ignore-deps src/nonshared11/Makefile'; \ ++ $(am__cd) $(top_srcdir) && \ ++ $(AUTOMAKE) --foreign --ignore-deps src/nonshared11/Makefile ++.PRECIOUS: Makefile ++Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status ++ @case '$?' in \ ++ *config.status*) \ ++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ ++ *) \ ++ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ ++ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ ++ esac; ++$(top_srcdir)/fragment.am: ++ ++$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) ++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ++ ++$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) ++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ++$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) ++ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ++$(am__aclocal_m4_deps): ++ ++clean-noinstLTLIBRARIES: ++ -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) ++ @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ ++ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ ++ test "$$dir" != "$$p" || dir=.; \ ++ echo "rm -f \"$${dir}/so_locations\""; \ ++ rm -f "$${dir}/so_locations"; \ ++ done ++libnonshared11convenience44.la: $(libnonshared11convenience44_la_OBJECTS) $(libnonshared11convenience44_la_DEPENDENCIES) $(EXTRA_libnonshared11convenience44_la_DEPENDENCIES) ++ $(CXXLINK) $(libnonshared11convenience44_la_OBJECTS) $(libnonshared11convenience44_la_LIBADD) $(LIBS) ++libnonshared11convenience48.la: $(libnonshared11convenience48_la_OBJECTS) $(libnonshared11convenience48_la_DEPENDENCIES) $(EXTRA_libnonshared11convenience48_la_DEPENDENCIES) ++ $(CXXLINK) $(libnonshared11convenience48_la_OBJECTS) $(libnonshared11convenience48_la_LIBADD) $(LIBS) ++ ++mostlyclean-compile: ++ -rm -f *.$(OBJEXT) ++ ++distclean-compile: ++ -rm -f *.tab.c ++ ++.S.o: ++ $(CPPASCOMPILE) -c -o $@ $< ++ ++.S.obj: ++ $(CPPASCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` ++ ++.S.lo: ++ $(LTCPPASCOMPILE) -c -o $@ $< ++ ++.cc.o: ++ $(CXXCOMPILE) -c -o $@ $< ++ ++.cc.obj: ++ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` ++ ++.cc.lo: ++ $(LTCXXCOMPILE) -c -o $@ $< ++ ++mostlyclean-libtool: ++ -rm -f *.lo ++ ++clean-libtool: ++ -rm -rf .libs _libs ++ ++ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) ++ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ ++ unique=`for i in $$list; do \ ++ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ ++ done | \ ++ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ ++ END { if (nonempty) { for (i in files) print i; }; }'`; \ ++ mkid -fID $$unique ++tags: TAGS ++ ++TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ ++ $(TAGS_FILES) $(LISP) ++ set x; \ ++ here=`pwd`; \ ++ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ ++ unique=`for i in $$list; do \ ++ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ ++ done | \ ++ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ ++ END { if (nonempty) { for (i in files) print i; }; }'`; \ ++ shift; \ ++ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ ++ test -n "$$unique" || unique=$$empty_fix; \ ++ if test $$# -gt 0; then \ ++ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ ++ "$$@" $$unique; \ ++ else \ ++ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ ++ $$unique; \ ++ fi; \ ++ fi ++ctags: CTAGS ++CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ ++ $(TAGS_FILES) $(LISP) ++ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ ++ unique=`for i in $$list; do \ ++ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ ++ done | \ ++ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ ++ END { if (nonempty) { for (i in files) print i; }; }'`; \ ++ test -z "$(CTAGS_ARGS)$$unique" \ ++ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ ++ $$unique ++ ++GTAGS: ++ here=`$(am__cd) $(top_builddir) && pwd` \ ++ && $(am__cd) $(top_srcdir) \ ++ && gtags -i $(GTAGS_ARGS) "$$here" ++ ++distclean-tags: ++ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags ++check-am: all-am ++check: check-am ++all-am: Makefile $(LTLIBRARIES) ++installdirs: ++install: install-am ++install-exec: install-exec-am ++install-data: install-data-am ++uninstall: uninstall-am ++ ++install-am: all-am ++ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am ++ ++installcheck: installcheck-am ++install-strip: ++ if test -z '$(STRIP)'; then \ ++ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ ++ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ ++ install; \ ++ else \ ++ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ ++ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ ++ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ ++ fi ++mostlyclean-generic: ++ ++clean-generic: ++ ++distclean-generic: ++ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) ++ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) ++ ++maintainer-clean-generic: ++ @echo "This command is intended for maintainers to use" ++ @echo "it deletes files that may require special tools to rebuild." ++clean: clean-am ++ ++clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \ ++ mostlyclean-am ++ ++distclean: distclean-am ++ -rm -f Makefile ++distclean-am: clean-am distclean-compile distclean-generic \ ++ distclean-tags ++ ++dvi: dvi-am ++ ++dvi-am: ++ ++html: html-am ++ ++html-am: ++ ++info: info-am ++ ++info-am: ++ ++install-data-am: ++ ++install-dvi: install-dvi-am ++ ++install-dvi-am: ++ ++install-exec-am: ++ ++install-html: install-html-am ++ ++install-html-am: ++ ++install-info: install-info-am ++ ++install-info-am: ++ ++install-man: ++ ++install-pdf: install-pdf-am ++ ++install-pdf-am: ++ ++install-ps: install-ps-am ++ ++install-ps-am: ++ ++installcheck-am: ++ ++maintainer-clean: maintainer-clean-am ++ -rm -f Makefile ++maintainer-clean-am: distclean-am maintainer-clean-generic ++ ++mostlyclean: mostlyclean-am ++ ++mostlyclean-am: mostlyclean-compile mostlyclean-generic \ ++ mostlyclean-libtool ++ ++pdf: pdf-am ++ ++pdf-am: ++ ++ps: ps-am ++ ++ps-am: ++ ++uninstall-am: ++ ++.MAKE: install-am install-strip ++ ++.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ ++ clean-libtool clean-noinstLTLIBRARIES ctags distclean \ ++ distclean-compile distclean-generic distclean-libtool \ ++ distclean-tags dvi dvi-am html html-am info info-am install \ ++ install-am install-data install-data-am install-dvi \ ++ install-dvi-am install-exec install-exec-am install-html \ ++ install-html-am install-info install-info-am install-man \ ++ install-pdf install-pdf-am install-ps install-ps-am \ ++ install-strip installcheck installcheck-am installdirs \ ++ maintainer-clean maintainer-clean-generic mostlyclean \ ++ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ ++ pdf pdf-am ps ps-am tags uninstall uninstall-am ++ ++ ++vpath % $(top_srcdir)/src/nonshared11 ++vpath % $(top_srcdir) ++ ++# Use special rules for the C++14 sources so that the proper flags are passed. ++del_ops.lo: del_ops.cc ++ $(LTCXXCOMPILE) -std=gnu++14 -Wno-sized-deallocation -c $< ++del_opvs.lo: del_opvs.cc ++ $(LTCXXCOMPILE) -std=gnu++14 -Wno-sized-deallocation -c $< ++ ++# Use special rules for the C++17 sources so that the proper flags are passed. ++new_opa.lo: new_opa.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++new_opant.lo: new_opant.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++new_opva.lo: new_opva.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++new_opvant.lo: new_opvant.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opa.lo: del_opa.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opant.lo: del_opant.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opsa.lo: del_opsa.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opva.lo: del_opva.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opvant.lo: del_opvant.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++del_opvsa.lo: del_opvsa.cc ++ $(LTCXXCOMPILE) -std=gnu++1z -c $< ++ ++# Tell versions [3.59,3.63) of GNU make to not export all variables. ++# Otherwise a system limit (for SysV at least) may be exceeded. ++.NOEXPORT: +--- libstdc++-v3/src/nonshared11/snprintf_lite.cc.jj 2017-05-31 12:11:25.241560540 +0200 ++++ libstdc++-v3/src/nonshared11/snprintf_lite.cc 2017-05-31 15:25:50.426872487 +0200 +@@ -0,0 +1,40 @@ ++// Copyright (C) 2014-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++11/snprintf_lite.cc" ++#ifdef __powerpc64__ ++asm (".hidden _ZN9__gnu_cxx15__concat_size_tEPcmm"); ++asm (".hidden _ZN9__gnu_cxx15__snprintf_liteEPcmPKcS0_"); ++#elif defined(__i386__) ++asm (".hidden _ZN9__gnu_cxx15__concat_size_tEPcjj"); ++asm (".hidden _ZN9__gnu_cxx15__snprintf_liteEPcjPKcS0_"); ++#elif defined(__powerpc__) ++asm (".hidden _ZN9__gnu_cxx15__concat_size_tEPcjj"); ++asm (".hidden _ZN9__gnu_cxx15__snprintf_liteEPcjPKcP13__va_list_tag"); ++#elif defined(__aarch64__) ++asm (".hidden _ZN9__gnu_cxx15__concat_size_tEPcmm"); ++asm (".hidden _ZN9__gnu_cxx15__snprintf_liteEPcmPKcSt9__va_list"); ++#else ++asm (".hidden _ZN9__gnu_cxx15__concat_size_tEPcmm"); ++asm (".hidden _ZN9__gnu_cxx15__snprintf_liteEPcmPKcP13__va_list_tag"); ++#endif ++asm (".hidden _ZN9__gnu_cxx26__throw_insufficient_spaceEPKcS1_"); +--- libstdc++-v3/src/nonshared11/new_handler.cc.jj 2017-05-31 12:11:25.240560552 +0200 ++++ libstdc++-v3/src/nonshared11/new_handler.cc 2017-05-31 15:25:50.423872523 +0200 +@@ -0,0 +1,72 @@ ++// Implementation file for the -*- C++ -*- dynamic memory management header. ++ ++// Copyright (C) 1996-2017 Free Software Foundation, Inc. ++// ++// This file is part of GCC. ++// ++// GCC is free software; you can redistribute it and/or modify ++// it under the terms of the GNU General Public License as published by ++// the Free Software Foundation; either version 3, or (at your option) ++// any later version. ++// ++// GCC is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++// ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++#include ++ ++// This is inherently thread-unsafe, but so is libstdc++ < 4.9 ++// std::set_new_handler and this hopefully doesn't make things much worse ++// than that. ++namespace ++{ ++ __gnu_cxx::__mutex mx; ++ std::new_handler handler; ++ ++ void new_handler_wrapper () ++ { ++ std::new_handler h; ++ { ++ __gnu_cxx::__scoped_lock l(mx); ++ h = handler; ++ } ++ h (); ++ } ++} ++ ++std::new_handler ++std::get_new_handler () noexcept ++{ ++ __gnu_cxx::__scoped_lock l(mx); ++ handler = std::set_new_handler (new_handler_wrapper); ++ std::set_new_handler (handler); ++ return handler; ++} ++ ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx30__throw_concurrence_lock_errorEv"); ++asm (".hidden _ZN9__gnu_cxx32__throw_concurrence_unlock_errorEv"); ++asm (".hidden _ZNK9__gnu_cxx24__concurrence_lock_error4whatEv"); ++asm (".hidden _ZNK9__gnu_cxx26__concurrence_unlock_error4whatEv"); ++asm (".hidden _ZTIN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTIN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx26__concurrence_unlock_errorE"); +--- libstdc++-v3/src/nonshared11/cxx11-hash_tr1.cc.jj 2017-05-31 12:11:25.238560576 +0200 ++++ libstdc++-v3/src/nonshared11/cxx11-hash_tr1.cc 2017-05-31 15:25:50.412872655 +0200 +@@ -0,0 +1,25 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++11/cxx11-hash_tr1.cc" ++asm (".hidden _ZNKSt3tr14hashIRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEclES8_"); ++asm (".hidden _ZNKSt3tr14hashIRKNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEEEEclES8_"); +--- libstdc++-v3/src/nonshared11/debug.cc.jj 2017-05-31 12:11:25.235560612 +0200 ++++ libstdc++-v3/src/nonshared11/debug.cc 2017-05-31 15:25:50.415872619 +0200 +@@ -0,0 +1,234 @@ ++// Copyright (C) 2003-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++using namespace std; ++ ++namespace ++{ ++ void ++ swap_its(__gnu_debug::_Safe_sequence_base& __lhs, ++ __gnu_debug::_Safe_iterator_base*& __lhs_its, ++ __gnu_debug::_Safe_sequence_base& __rhs, ++ __gnu_debug::_Safe_iterator_base*& __rhs_its) ++ { ++ swap(__lhs_its, __rhs_its); ++ __gnu_debug::_Safe_iterator_base* __iter; ++ for (__iter = __rhs_its; __iter; __iter = __iter->_M_next) ++ __iter->_M_sequence = &__rhs; ++ for (__iter = __lhs_its; __iter; __iter = __iter->_M_next) ++ __iter->_M_sequence = &__lhs; ++ } ++ ++ void ++ swap_seq(__gnu_debug::_Safe_sequence_base& __lhs, ++ __gnu_debug::_Safe_sequence_base& __rhs) ++ { ++ swap(__lhs._M_version, __rhs._M_version); ++ swap_its(__lhs, __lhs._M_iterators, ++ __rhs, __rhs._M_iterators); ++ swap_its(__lhs, __lhs._M_const_iterators, ++ __rhs, __rhs._M_const_iterators); ++ } ++ ++ void ++ swap_ucont(__gnu_debug::_Safe_unordered_container_base& __lhs, ++ __gnu_debug::_Safe_unordered_container_base& __rhs) ++ { ++ swap_seq(__lhs, __rhs); ++ swap_its(__lhs, __lhs._M_local_iterators, ++ __rhs, __rhs._M_local_iterators); ++ swap_its(__lhs, __lhs._M_const_local_iterators, ++ __rhs, __rhs._M_const_local_iterators); ++ } ++ ++ void ++ detach_all(__gnu_debug::_Safe_iterator_base* __iter) ++ { ++ for (; __iter;) ++ { ++ __gnu_debug::_Safe_iterator_base* __old = __iter; ++ __iter = __iter->_M_next; ++ __old->_M_reset(); ++ } ++ } ++} // anonymous namespace ++ ++namespace __gnu_debug ++{ ++ void ++ _Safe_iterator_base:: ++ _M_reset() throw () ++ { ++ _M_sequence = 0; ++ _M_version = 0; ++ _M_prior = 0; ++ _M_next = 0; ++ } ++ ++ _Safe_unordered_container_base* ++ _Safe_local_iterator_base:: ++ _M_get_container() const _GLIBCXX_NOEXCEPT ++ { return static_cast<_Safe_unordered_container_base*>(_M_sequence); } ++ ++ void ++ _Safe_local_iterator_base:: ++ _M_attach(_Safe_sequence_base* __cont, bool __constant) ++ { ++ _M_detach(); ++ ++ // Attach to the new container (if there is one) ++ if (__cont) ++ { ++ _M_sequence = __cont; ++ _M_version = _M_sequence->_M_version; ++ _M_get_container()->_M_attach_local(this, __constant); ++ } ++ } ++ ++ void ++ _Safe_local_iterator_base:: ++ _M_detach() ++ { ++ if (_M_sequence) ++ _M_get_container()->_M_detach_local(this); ++ ++ _M_reset(); ++ } ++ ++ void ++ _Safe_unordered_container_base:: ++ _M_detach_all() ++ { ++ __gnu_cxx::__scoped_lock sentry(_M_get_mutex()); ++ detach_all(_M_iterators); ++ _M_iterators = 0; ++ ++ detach_all(_M_const_iterators); ++ _M_const_iterators = 0; ++ ++ detach_all(_M_local_iterators); ++ _M_local_iterators = 0; ++ ++ detach_all(_M_const_local_iterators); ++ _M_const_local_iterators = 0; ++ } ++ ++ void ++ _Safe_unordered_container_base:: ++ _M_swap(_Safe_unordered_container_base& __x) noexcept ++ { ++ // We need to lock both containers to swap ++ using namespace __gnu_cxx; ++ __mutex *__this_mutex = &_M_get_mutex(); ++ __mutex *__x_mutex = &__x._M_get_mutex(); ++ if (__this_mutex == __x_mutex) ++ { ++ __scoped_lock __lock(*__this_mutex); ++ swap_ucont(*this, __x); ++ } ++ else ++ { ++ __scoped_lock __l1(__this_mutex < __x_mutex ++ ? *__this_mutex : *__x_mutex); ++ __scoped_lock __l2(__this_mutex < __x_mutex ++ ? *__x_mutex : *__this_mutex); ++ swap_ucont(*this, __x); ++ } ++ } ++ ++ void ++ _Safe_unordered_container_base:: ++ _M_attach_local(_Safe_iterator_base* __it, bool __constant) ++ { ++ __gnu_cxx::__scoped_lock sentry(_M_get_mutex()); ++ _M_attach_local_single(__it, __constant); ++ } ++ ++ void ++ _Safe_unordered_container_base:: ++ _M_attach_local_single(_Safe_iterator_base* __it, bool __constant) throw () ++ { ++ _Safe_iterator_base*& __its = ++ __constant ? _M_const_local_iterators : _M_local_iterators; ++ __it->_M_next = __its; ++ if (__it->_M_next) ++ __it->_M_next->_M_prior = __it; ++ __its = __it; ++ } ++ ++ void ++ _Safe_unordered_container_base:: ++ _M_detach_local(_Safe_iterator_base* __it) ++ { ++ // Remove __it from this container's list ++ __gnu_cxx::__scoped_lock sentry(_M_get_mutex()); ++ _M_detach_local_single(__it); ++ } ++ ++ void ++ _Safe_unordered_container_base:: ++ _M_detach_local_single(_Safe_iterator_base* __it) throw () ++ { ++ // Remove __it from this container's list ++ __it->_M_unlink(); ++ if (_M_const_local_iterators == __it) ++ _M_const_local_iterators = __it->_M_next; ++ if (_M_local_iterators == __it) ++ _M_local_iterators = __it->_M_next; ++ } ++ ++} // namespace __gnu_debug ++ ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx30__throw_concurrence_lock_errorEv"); ++asm (".hidden _ZN9__gnu_cxx32__throw_concurrence_unlock_errorEv"); ++asm (".hidden _ZNK9__gnu_cxx24__concurrence_lock_error4whatEv"); ++asm (".hidden _ZNK9__gnu_cxx26__concurrence_unlock_error4whatEv"); ++asm (".hidden _ZTIN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTIN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZN11__gnu_debug19_Safe_iterator_base8_M_resetEv"); ++asm (".hidden _ZN11__gnu_debug30_Safe_unordered_container_base15_M_attach_localEPNS_19_Safe_iterator_baseEb"); ++asm (".hidden _ZN11__gnu_debug30_Safe_unordered_container_base15_M_detach_localEPNS_19_Safe_iterator_baseE"); ++asm (".hidden _ZN11__gnu_debug30_Safe_unordered_container_base22_M_attach_local_singleEPNS_19_Safe_iterator_baseEb"); ++asm (".hidden _ZN11__gnu_debug30_Safe_unordered_container_base22_M_detach_local_singleEPNS_19_Safe_iterator_baseE"); ++asm (".hidden _ZNK11__gnu_debug25_Safe_local_iterator_base16_M_get_containerEv"); +--- libstdc++-v3/src/nonshared11/del_opsa.cc.jj 2017-05-31 19:11:38.671881970 +0200 ++++ libstdc++-v3/src/nonshared11/del_opsa.cc 2017-05-31 19:11:38.669881994 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/del_opsa.cc" +--- libstdc++-v3/src/nonshared11/wlocale-inst44.cc.jj 2017-05-31 12:11:25.231560660 +0200 ++++ libstdc++-v3/src/nonshared11/wlocale-inst44.cc 2017-05-31 15:25:50.429872451 +0200 +@@ -0,0 +1,31 @@ ++// Copyright (C) 1999-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// Instantiate locales using COW std::wstring ABI ++#define _GLIBCXX_USE_CXX11_ABI 0 ++#include ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++#define C wchar_t ++#define _GLIBCXX_NONSHARED_CXX11_44 ++#include "locale-inst.cc" ++#endif +--- libstdc++-v3/src/nonshared11/cow-fstream-inst.cc.jj 2017-05-31 12:11:25.243560516 +0200 ++++ libstdc++-v3/src/nonshared11/cow-fstream-inst.cc 2017-05-31 15:25:50.408872703 +0200 +@@ -0,0 +1,48 @@ ++// Explicit instantiation file. ++ ++// Copyright (C) 1997-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: ++// ++ ++#define _GLIBCXX_USE_CXX11_ABI 0 ++#include ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++ ++ typedef basic_filebuf FIC; ++ ++ template ++ int FIC::_M_get_ext_pos(__state_type &); ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++ typedef basic_filebuf FIW; ++ ++ template ++ int FIW::_M_get_ext_pos(__state_type &); ++ ++#endif ++ ++} +--- libstdc++-v3/src/nonshared11/ostream-inst.cc.jj 2017-05-31 12:11:25.230560672 +0200 ++++ libstdc++-v3/src/nonshared11/ostream-inst.cc 2017-05-31 15:25:50.423872523 +0200 +@@ -0,0 +1,48 @@ ++// Explicit instantiation file. ++ ++// Copyright (C) 1997-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: ++// ++ ++#include ++#include ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ template basic_ostream::basic_ostream(basic_ostream&&); ++ template basic_ostream& basic_ostream::operator=(basic_ostream&&); ++ template void basic_ostream::swap(basic_ostream&); ++ template basic_ostream::basic_ostream(basic_iostream&); ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template basic_ostream::basic_ostream(basic_ostream&&); ++ template basic_ostream& basic_ostream::operator=(basic_ostream&&); ++ template void basic_ostream::swap(basic_ostream&); ++ template basic_ostream::basic_ostream(basic_iostream&); ++#endif ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace +--- libstdc++-v3/src/nonshared11/regex.cc.jj 2017-05-31 12:11:25.245560491 +0200 ++++ libstdc++-v3/src/nonshared11/regex.cc 2017-05-31 15:25:50.425872499 +0200 +@@ -0,0 +1,25 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++11/regex.cc" ++ ++asm (".hidden _ZTSSt11regex_error"); +--- libstdc++-v3/src/nonshared11/del_opvant.cc.jj 2017-05-31 19:11:38.678881886 +0200 ++++ libstdc++-v3/src/nonshared11/del_opvant.cc 2017-05-31 19:11:38.676881910 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/del_opvant.cc" +--- libstdc++-v3/src/nonshared11/del_opant.cc.jj 2017-05-31 19:11:38.667882018 +0200 ++++ libstdc++-v3/src/nonshared11/del_opant.cc 2017-05-31 19:11:38.666882029 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/del_opant.cc" +--- libstdc++-v3/src/nonshared11/string-inst.cc.jj 2017-05-31 12:11:25.241560540 +0200 ++++ libstdc++-v3/src/nonshared11/string-inst.cc 2017-05-31 15:25:50.427872475 +0200 +@@ -0,0 +1,34 @@ ++// Components for manipulating sequences of characters -*- C++ -*- ++ ++// Copyright (C) 1997-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: 21 Strings library ++// ++ ++// Written by Jason Merrill based upon the specification by Takanori Adachi ++// in ANSI X3J16/94-0013R2. Rewritten by Nathan Myers. ++ ++#include "../c++11/string-inst.cc" ++asm (".hidden _ZN9__gnu_cxxeqIPKcNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEbRKNS_17__normal_iteratorIT_T0_EESE_"); ++asm (".hidden _ZN9__gnu_cxxeqIPcNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEbRKNS_17__normal_iteratorIT_T0_EESD_"); +--- libstdc++-v3/src/nonshared11/eh_terminate.cc.jj 2017-05-31 12:11:25.241560540 +0200 ++++ libstdc++-v3/src/nonshared11/eh_terminate.cc 2017-05-31 15:25:50.417872595 +0200 +@@ -0,0 +1,92 @@ ++// Implementation file for the -*- C++ -*- dynamic memory management header. ++ ++// Copyright (C) 1994-2017 Free Software Foundation, Inc. ++// ++// This file is part of GCC. ++// ++// GCC is free software; you can redistribute it and/or modify ++// it under the terms of the GNU General Public License as published by ++// the Free Software Foundation; either version 3, or (at your option) ++// any later version. ++// ++// GCC is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++// ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++#include ++ ++// This is inherently thread-unsafe, but so is libstdc++ < 4.9 ++// std::set_terminate and std::set_unexpected and this hopefully ++// doesn't make things much worse than that. ++namespace ++{ ++ __gnu_cxx::__mutex mx; ++ std::terminate_handler thandler; ++ std::unexpected_handler uhandler; ++ ++ void terminate_handler_wrapper () ++ { ++ std::terminate_handler h; ++ { ++ __gnu_cxx::__scoped_lock l(mx); ++ h = thandler; ++ } ++ h (); ++ } ++ ++ void unexpected_handler_wrapper () ++ { ++ std::terminate_handler h; ++ { ++ __gnu_cxx::__scoped_lock l(mx); ++ h = uhandler; ++ } ++ h (); ++ } ++} ++ ++std::terminate_handler ++std::get_terminate () noexcept ++{ ++ __gnu_cxx::__scoped_lock l(mx); ++ thandler = std::set_terminate (terminate_handler_wrapper); ++ std::set_terminate (thandler); ++ return thandler; ++} ++ ++std::unexpected_handler ++std::get_unexpected () noexcept ++{ ++ __gnu_cxx::__scoped_lock l(mx); ++ uhandler = std::set_unexpected (unexpected_handler_wrapper); ++ std::set_unexpected (uhandler); ++ return uhandler; ++} ++ ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx24__concurrence_lock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD0Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD1Ev"); ++asm (".hidden _ZN9__gnu_cxx26__concurrence_unlock_errorD2Ev"); ++asm (".hidden _ZN9__gnu_cxx30__throw_concurrence_lock_errorEv"); ++asm (".hidden _ZN9__gnu_cxx32__throw_concurrence_unlock_errorEv"); ++asm (".hidden _ZNK9__gnu_cxx24__concurrence_lock_error4whatEv"); ++asm (".hidden _ZNK9__gnu_cxx26__concurrence_unlock_error4whatEv"); ++asm (".hidden _ZTIN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTIN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTSN9__gnu_cxx26__concurrence_unlock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx24__concurrence_lock_errorE"); ++asm (".hidden _ZTVN9__gnu_cxx26__concurrence_unlock_errorE"); +--- libstdc++-v3/src/nonshared11/wstring-io-inst.cc.jj 2017-06-01 10:44:48.847697777 +0200 ++++ libstdc++-v3/src/nonshared11/wstring-io-inst.cc 2017-06-01 11:07:29.389913760 +0200 +@@ -0,0 +1,35 @@ ++// SSO string instantiations for I/O -*- C++ -*- ++ ++// Copyright (C) 2014-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: 21 Strings library ++// ++ ++#define _GLIBCXX_USE_CXX11_ABI 1 ++#include ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++#define C wchar_t ++#include "string-io-inst.cc" ++#endif +--- libstdc++-v3/src/nonshared11/del_opva.cc.jj 2017-05-31 19:11:38.674881934 +0200 ++++ libstdc++-v3/src/nonshared11/del_opva.cc 2017-05-31 19:11:38.673881946 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/del_opva.cc" +--- libstdc++-v3/src/nonshared11/functexcept.cc.jj 2017-05-31 12:11:25.238560576 +0200 ++++ libstdc++-v3/src/nonshared11/functexcept.cc 2017-05-31 15:25:50.418872583 +0200 +@@ -0,0 +1,72 @@ ++// Copyright (C) 2001-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#ifdef _GLIBCXX_USE_NLS ++# include ++# define _(msgid) gettext (msgid) ++#else ++# define _(msgid) (msgid) ++#endif ++ ++namespace __gnu_cxx ++{ ++ int __snprintf_lite(char *__buf, size_t __bufsize, const char *__fmt, ++ va_list __ap); ++} ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ void ++ __throw_out_of_range_fmt(const char* __fmt, ...) ++ { ++ const size_t __len = __builtin_strlen(__fmt); ++ // We expect at most 2 numbers, and 1 short string. The additional ++ // 512 bytes should provide more than enough space for expansion. ++ const size_t __alloca_size = __len + 512; ++ char *const __s = static_cast(__builtin_alloca(__alloca_size)); ++ va_list __ap; ++ ++ va_start(__ap, __fmt); ++ __gnu_cxx::__snprintf_lite(__s, __alloca_size, __fmt, __ap); ++ _GLIBCXX_THROW_OR_ABORT(out_of_range(_(__s))); ++ va_end(__ap); // Not reached. ++ } ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace ++asm (".hidden _ZNSt12future_errorC1ESt10error_code"); ++asm (".hidden _ZNSt12future_errorC2ESt10error_code"); +--- libstdc++-v3/src/nonshared11/del_opvs.cc.jj 2017-05-31 12:11:25.240560552 +0200 ++++ libstdc++-v3/src/nonshared11/del_opvs.cc 2017-05-31 15:25:50.416872607 +0200 +@@ -0,0 +1,23 @@ ++// Copyright (C) 2013-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../libsupc++/del_opvs.cc" +--- libstdc++-v3/src/nonshared11/cow-sstream-inst.cc.jj 2017-05-31 12:11:25.240560552 +0200 ++++ libstdc++-v3/src/nonshared11/cow-sstream-inst.cc 2017-05-31 15:25:50.410872679 +0200 +@@ -0,0 +1,78 @@ ++// Explicit instantiation file. ++ ++// Copyright (C) 2014-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++// ++// ISO C++ 14882: ++// ++ ++#define _GLIBCXX_USE_CXX11_ABI 0 ++#include ++ ++namespace std _GLIBCXX_VISIBILITY(default) ++{ ++_GLIBCXX_BEGIN_NAMESPACE_VERSION ++ ++ template basic_stringbuf::basic_stringbuf(basic_stringbuf&&); ++ template basic_stringbuf& basic_stringbuf::operator=(basic_stringbuf&&); ++ template void basic_stringbuf::swap(basic_stringbuf&); ++ template basic_istringstream::basic_istringstream(basic_istringstream&&); ++ template basic_istringstream& basic_istringstream::operator=(basic_istringstream&&); ++ template void basic_istringstream::swap(basic_istringstream&); ++ template basic_ostringstream::basic_ostringstream(basic_ostringstream&&); ++ template basic_ostringstream& basic_ostringstream::operator=(basic_ostringstream&&); ++ template void basic_ostringstream::swap(basic_ostringstream&); ++ template basic_stringstream::basic_stringstream(basic_stringstream&&); ++ template basic_stringstream& basic_stringstream::operator=(basic_stringstream&&); ++ template void basic_stringstream::swap(basic_stringstream&); ++#ifdef _GLIBCXX_NONSHARED_CXX11_44 ++ template void basic_stringbuf::_M_pbump(char_type*, char_type*, off_type); ++#endif ++ ++#ifdef _GLIBCXX_USE_WCHAR_T ++ template basic_stringbuf::basic_stringbuf(basic_stringbuf&&); ++ template basic_stringbuf& basic_stringbuf::operator=(basic_stringbuf&&); ++ template void basic_stringbuf::swap(basic_stringbuf&); ++ template basic_istringstream::basic_istringstream(basic_istringstream&&); ++ template basic_istringstream& basic_istringstream::operator=(basic_istringstream&&); ++ template void basic_istringstream::swap(basic_istringstream&); ++ template basic_ostringstream::basic_ostringstream(basic_ostringstream&&); ++ template basic_ostringstream& basic_ostringstream::operator=(basic_ostringstream&&); ++ template void basic_ostringstream::swap(basic_ostringstream&); ++ template basic_stringstream::basic_stringstream(basic_stringstream&&); ++ template basic_stringstream& basic_stringstream::operator=(basic_stringstream&&); ++ template void basic_stringstream::swap(basic_stringstream&); ++#ifdef _GLIBCXX_NONSHARED_CXX11_44 ++ template void basic_stringbuf::_M_pbump(char_type*, char_type*, off_type); ++#endif ++#endif ++ ++_GLIBCXX_END_NAMESPACE_VERSION ++} // namespace ++ ++asm (".hidden _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED0Ev"); ++asm (".hidden _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev"); ++asm (".hidden _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED2Ev"); ++asm (".hidden _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEED0Ev"); ++asm (".hidden _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEED1Ev"); ++asm (".hidden _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEED2Ev"); +--- libstdc++-v3/src/nonshared11/cxx11-locale-inst.cc.jj 2017-05-31 12:11:25.230560672 +0200 ++++ libstdc++-v3/src/nonshared11/cxx11-locale-inst.cc 2017-05-31 16:18:13.330258216 +0200 +@@ -0,0 +1,44 @@ ++// Copyright (C) 2012-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++11/cxx11-locale-inst.cc" ++asm (".hidden _ZNKSt19istreambuf_iteratorIcSt11char_traitsIcEE6_M_getEv"); ++asm (".hidden _ZNKSt5ctypeIcE5widenEPKcS2_Pc"); ++#if !defined (__powerpc__) && !defined (__s390__) && !defined (__s390x__) ++asm (".hidden _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11IjEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11IlEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11ImEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11ItEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11IxEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11IyEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_"); ++#else ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11IjEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11IlEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11ImEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11ItEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11IxEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++asm (".hidden _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intB5cxx11IyEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_"); ++#endif ++asm (".hidden _ZNKSt19istreambuf_iteratorIcSt11char_traitsIcEE5equalERKS2_"); ++asm (".hidden _ZNKSt5ctypeIcE8do_widenEPKcS2_Pc"); ++asm (".hidden _ZNKSt5ctypeIcE8do_widenEc"); ++asm (".hidden _ZNKSt5ctypeIcE9do_narrowEcc"); +--- libstdc++-v3/src/nonshared11/random.cc.jj 2017-05-31 12:11:25.236560600 +0200 ++++ libstdc++-v3/src/nonshared11/random.cc 2017-05-31 15:25:50.425872499 +0200 +@@ -0,0 +1,71 @@ ++// Copyright (C) 2013-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#include "../c++11/random.cc" ++ ++#if __WORDSIZE == 64 ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE10shift_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE10state_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11_M_gen_randEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_bE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_cE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_dE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_lE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_sE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_tE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE11tempering_uE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE12default_seedE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE25initialization_multiplierE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE3maxEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE3minEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE4seedEm"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE7discardEy"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE8xor_maskE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE9mask_bitsE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EE9word_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EEC1Em"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EEC2Em"); ++asm (".hidden _ZNSt23mersenne_twister_engineImLm32ELm624ELm397ELm31ELm2567483615ELm11ELm4294967295ELm7ELm2636928640ELm15ELm4022730752ELm18ELm1812433253EEclEv"); ++#else ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE10shift_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE10state_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11_M_gen_randEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_bE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_cE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_dE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_lE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_sE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_tE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE11tempering_uE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE12default_seedE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE25initialization_multiplierE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE3maxEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE3minEv"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE4seedEj"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE7discardEy"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE8xor_maskE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE9mask_bitsE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EE9word_sizeE"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EEC1Ej"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EEC2Ej"); ++asm (".hidden _ZNSt23mersenne_twister_engineIjLj32ELj624ELj397ELj31ELj2567483615ELj11ELj4294967295ELj7ELj2636928640ELj15ELj4022730752ELj18ELj1812433253EEclEv"); ++#endif +--- libstdc++-v3/src/nonshared11/locale-inst44.cc.jj 2017-05-31 12:11:25.235560612 +0200 ++++ libstdc++-v3/src/nonshared11/locale-inst44.cc 2017-05-31 15:25:50.422872535 +0200 +@@ -0,0 +1,24 @@ ++// Copyright (C) 1999-2017 Free Software Foundation, Inc. ++// ++// This file is part of the GNU ISO C++ Library. This library is free ++// software; you can redistribute it and/or modify it under the ++// terms of the GNU General Public License as published by the ++// Free Software Foundation; either version 3, or (at your option) ++// any later version. ++ ++// This library is distributed in the hope that it will be useful, ++// but WITHOUT ANY WARRANTY; without even the implied warranty of ++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++// GNU General Public License for more details. ++ ++// Under Section 7 of GPL version 3, you are granted additional ++// permissions described in the GCC Runtime Library Exception, version ++// 3.1, as published by the Free Software Foundation. ++ ++// You should have received a copy of the GNU General Public License and ++// a copy of the GCC Runtime Library Exception along with this program; ++// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++// . ++ ++#define _GLIBCXX_NONSHARED_CXX11_44 ++#include "locale-inst.cc" +--- libstdc++-v3/src/shared/hashtable-aux.cc.jj 2017-04-20 12:16:55.446859058 +0200 ++++ libstdc++-v3/src/shared/hashtable-aux.cc 2017-05-31 12:11:25.245560491 +0200 +@@ -22,6 +22,9 @@ + // see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + // . + ++#ifndef HASHTABLE_AUX_CC ++#define HASHTABLE_AUX_CC 1 ++ + namespace __detail + { + _GLIBCXX_BEGIN_NAMESPACE_VERSION +@@ -92,3 +95,5 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + }; + _GLIBCXX_END_NAMESPACE_VERSION + } // namespace __detail ++ ++#endif +--- libstdc++-v3/src/c++98/locale_facets.cc.jj 2017-04-20 12:16:56.324847226 +0200 ++++ libstdc++-v3/src/c++98/locale_facets.cc 2017-05-31 12:11:25.246560479 +0200 +@@ -27,6 +27,7 @@ namespace std _GLIBCXX_VISIBILITY(defaul + { + _GLIBCXX_BEGIN_NAMESPACE_VERSION + ++#ifndef _GLIBCXX_NONSHARED_CXX11 + // Definitions for static const data members of time_base. + template<> + const char* +@@ -97,6 +98,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + *__fptr++ = (__flags & ios_base::uppercase) ? 'G' : 'g'; + *__fptr = '\0'; + } ++#endif + + // This function is not exported but is needed internally, by the versions + // of __verify_grouping below and in src/c++11/cxx11-locale-inst.cc +@@ -125,6 +127,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + return __test; + } + ++#ifndef _GLIBCXX_NONSHARED_CXX11 + bool + __verify_grouping(const char* __grouping, size_t __grouping_size, + const string& __grouping_tmp) throw() +@@ -133,6 +136,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + __grouping_tmp.c_str(), + __grouping_tmp.size()); + } ++#endif + + _GLIBCXX_END_NAMESPACE_VERSION + } // namespace +--- libstdc++-v3/src/Makefile.am.jj 2017-04-20 12:16:56.311847401 +0200 ++++ libstdc++-v3/src/Makefile.am 2017-05-31 12:11:25.260560311 +0200 +@@ -28,7 +28,7 @@ else + filesystem_dir = + endif + +-SUBDIRS = c++98 c++11 $(filesystem_dir) ++SUBDIRS = c++98 c++11 $(filesystem_dir) nonshared98 nonshared11 + + # Cross compiler support. + if VTV_CYGMIN +@@ -37,6 +37,8 @@ else + toolexeclib_LTLIBRARIES = libstdc++.la + endif + ++noinst_LTLIBRARIES = libstdc++_nonshared44.la libstdc++_nonshared48.la ++ + if VTV_CYGMIN + vtv_stubs.cc: + rm -f $@ +@@ -72,6 +74,25 @@ endif + parallel_compat_sources = \ + compatibility-parallel_list.cc compatibility-parallel_list-2.cc + ++libstdc___nonshared44_la_SOURCES = ++ ++libstdc___nonshared44_la_LIBADD = \ ++ $(top_builddir)/src/nonshared98/libnonshared98convenience44.la \ ++ $(top_builddir)/src/nonshared11/libnonshared11convenience44.la ++ ++libstdc___nonshared44_la_DEPENDENCIES = \ ++ $(top_builddir)/src/nonshared98/libnonshared98convenience44.la \ ++ $(top_builddir)/src/nonshared11/libnonshared11convenience44.la ++ ++libstdc___nonshared48_la_SOURCES = ++ ++libstdc___nonshared48_la_LIBADD = \ ++ $(top_builddir)/src/nonshared98/libnonshared98convenience48.la \ ++ $(top_builddir)/src/nonshared11/libnonshared11convenience48.la ++ ++libstdc___nonshared48_la_DEPENDENCIES = \ ++ $(top_builddir)/src/nonshared98/libnonshared98convenience48.la \ ++ $(top_builddir)/src/nonshared11/libnonshared11convenience48.la + + cxx98_sources = \ + compatibility.cc \ +--- libstdc++-v3/src/Makefile.in.jj 2017-04-20 12:16:55.441859125 +0200 ++++ libstdc++-v3/src/Makefile.in 2017-06-01 12:24:32.353496057 +0200 +@@ -111,7 +111,7 @@ am__uninstall_files_from_dir = { \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } + am__installdirs = "$(DESTDIR)$(toolexeclibdir)" +-LTLIBRARIES = $(toolexeclib_LTLIBRARIES) ++LTLIBRARIES = $(noinst_LTLIBRARIES) $(toolexeclib_LTLIBRARIES) + am__DEPENDENCIES_1 = + @GLIBCXX_LDBL_COMPAT_TRUE@am__objects_1 = compatibility-ldbl.lo + am__objects_2 = compatibility.lo compatibility-debug_list.lo \ +@@ -123,6 +123,12 @@ am_libstdc___la_OBJECTS = $(am__objects_ + libstdc___la_OBJECTS = $(am_libstdc___la_OBJECTS) + @VTV_CYGMIN_FALSE@am_libstdc___la_rpath = -rpath $(toolexeclibdir) + @VTV_CYGMIN_TRUE@am_libstdc___la_rpath = -rpath $(toolexeclibdir) ++am_libstdc___nonshared44_la_OBJECTS = ++libstdc___nonshared44_la_OBJECTS = \ ++ $(am_libstdc___nonshared44_la_OBJECTS) ++am_libstdc___nonshared48_la_OBJECTS = ++libstdc___nonshared48_la_OBJECTS = \ ++ $(am_libstdc___nonshared48_la_OBJECTS) + libvtv_la_LIBADD = + @VTV_CYGMIN_TRUE@am_libvtv_la_OBJECTS = vtv_stubs.lo + libvtv_la_OBJECTS = $(am_libvtv_la_OBJECTS) +@@ -133,7 +139,17 @@ am__depfiles_maybe = + CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) + CXXLD = $(CXX) +-SOURCES = $(libstdc___la_SOURCES) $(libvtv_la_SOURCES) ++COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ ++ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) ++LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ ++ --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ ++ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) ++CCLD = $(CC) ++LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ ++ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ ++ $(LDFLAGS) -o $@ ++SOURCES = $(libstdc___la_SOURCES) $(libstdc___nonshared44_la_SOURCES) \ ++ $(libstdc___nonshared48_la_SOURCES) $(libvtv_la_SOURCES) + RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ + html-recursive info-recursive install-data-recursive \ + install-dvi-recursive install-exec-recursive \ +@@ -152,7 +168,7 @@ AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGE + $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS + ETAGS = etags + CTAGS = ctags +-DIST_SUBDIRS = c++98 c++11 filesystem ++DIST_SUBDIRS = c++98 c++11 filesystem nonshared98 nonshared11 + ABI_TWEAKS_SRCDIR = @ABI_TWEAKS_SRCDIR@ + ACLOCAL = @ACLOCAL@ + ALLOCATOR_H = @ALLOCATOR_H@ +@@ -170,6 +186,8 @@ AWK = @AWK@ + BASIC_FILE_CC = @BASIC_FILE_CC@ + BASIC_FILE_H = @BASIC_FILE_H@ + CC = @CC@ ++CCAS = @CCAS@ ++CCASFLAGS = @CCASFLAGS@ + CCODECVT_CC = @CCODECVT_CC@ + CCOLLATE_CC = @CCOLLATE_CC@ + CCTYPE_CC = @CCTYPE_CC@ +@@ -379,11 +397,12 @@ WARN_CXXFLAGS = \ + AM_CPPFLAGS = $(GLIBCXX_INCLUDES) $(CPPFLAGS) + @ENABLE_FILESYSTEM_TS_FALSE@filesystem_dir = + @ENABLE_FILESYSTEM_TS_TRUE@filesystem_dir = filesystem +-SUBDIRS = c++98 c++11 $(filesystem_dir) ++SUBDIRS = c++98 c++11 $(filesystem_dir) nonshared98 nonshared11 + @VTV_CYGMIN_FALSE@toolexeclib_LTLIBRARIES = libstdc++.la + + # Cross compiler support. + @VTV_CYGMIN_TRUE@toolexeclib_LTLIBRARIES = libvtv.la libstdc++.la ++noinst_LTLIBRARIES = libstdc++_nonshared44.la libstdc++_nonshared48.la + @VTV_CYGMIN_TRUE@libvtv_la_SOURCES = vtv_stubs.cc + @VTV_CYGMIN_TRUE@libvtv_la_LDFLAGS = $(lt_host_flags) + @VTV_CYGMIN_TRUE@libvtv_la_AM_CXXFLAGS = \ +@@ -401,6 +420,24 @@ SUBDIRS = c++98 c++11 $(filesystem_dir) + parallel_compat_sources = \ + compatibility-parallel_list.cc compatibility-parallel_list-2.cc + ++libstdc___nonshared44_la_SOURCES = ++libstdc___nonshared44_la_LIBADD = \ ++ $(top_builddir)/src/nonshared98/libnonshared98convenience44.la \ ++ $(top_builddir)/src/nonshared11/libnonshared11convenience44.la ++ ++libstdc___nonshared44_la_DEPENDENCIES = \ ++ $(top_builddir)/src/nonshared98/libnonshared98convenience44.la \ ++ $(top_builddir)/src/nonshared11/libnonshared11convenience44.la ++ ++libstdc___nonshared48_la_SOURCES = ++libstdc___nonshared48_la_LIBADD = \ ++ $(top_builddir)/src/nonshared98/libnonshared98convenience48.la \ ++ $(top_builddir)/src/nonshared11/libnonshared11convenience48.la ++ ++libstdc___nonshared48_la_DEPENDENCIES = \ ++ $(top_builddir)/src/nonshared98/libnonshared98convenience48.la \ ++ $(top_builddir)/src/nonshared11/libnonshared11convenience48.la ++ + cxx98_sources = \ + compatibility.cc \ + compatibility-debug_list.cc \ +@@ -573,6 +610,15 @@ $(top_srcdir)/configure: @MAINTAINER_MOD + $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + $(am__aclocal_m4_deps): ++ ++clean-noinstLTLIBRARIES: ++ -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) ++ @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ ++ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ ++ test "$$dir" != "$$p" || dir=.; \ ++ echo "rm -f \"$${dir}/so_locations\""; \ ++ rm -f "$${dir}/so_locations"; \ ++ done + install-toolexeclibLTLIBRARIES: $(toolexeclib_LTLIBRARIES) + @$(NORMAL_INSTALL) + @list='$(toolexeclib_LTLIBRARIES)'; test -n "$(toolexeclibdir)" || list=; \ +@@ -607,6 +653,10 @@ clean-toolexeclibLTLIBRARIES: + done + libstdc++.la: $(libstdc___la_OBJECTS) $(libstdc___la_DEPENDENCIES) $(EXTRA_libstdc___la_DEPENDENCIES) + $(libstdc___la_LINK) $(am_libstdc___la_rpath) $(libstdc___la_OBJECTS) $(libstdc___la_LIBADD) $(LIBS) ++libstdc++_nonshared44.la: $(libstdc___nonshared44_la_OBJECTS) $(libstdc___nonshared44_la_DEPENDENCIES) $(EXTRA_libstdc___nonshared44_la_DEPENDENCIES) ++ $(LINK) $(libstdc___nonshared44_la_OBJECTS) $(libstdc___nonshared44_la_LIBADD) $(LIBS) ++libstdc++_nonshared48.la: $(libstdc___nonshared48_la_OBJECTS) $(libstdc___nonshared48_la_DEPENDENCIES) $(EXTRA_libstdc___nonshared48_la_DEPENDENCIES) ++ $(LINK) $(libstdc___nonshared48_la_OBJECTS) $(libstdc___nonshared48_la_LIBADD) $(LIBS) + libvtv.la: $(libvtv_la_OBJECTS) $(libvtv_la_DEPENDENCIES) $(EXTRA_libvtv_la_DEPENDENCIES) + $(libvtv_la_LINK) $(am_libvtv_la_rpath) $(libvtv_la_OBJECTS) $(libvtv_la_LIBADD) $(LIBS) + +@@ -807,7 +857,8 @@ maintainer-clean-generic: + clean: clean-recursive + + clean-am: clean-generic clean-libtool clean-local \ +- clean-toolexeclibLTLIBRARIES mostlyclean-am ++ clean-noinstLTLIBRARIES clean-toolexeclibLTLIBRARIES \ ++ mostlyclean-am + + distclean: distclean-recursive + -rm -f Makefile +@@ -878,19 +929,19 @@ uninstall-am: uninstall-toolexeclibLTLIB + + .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ + all all-am all-local check check-am clean clean-generic \ +- clean-libtool clean-local clean-toolexeclibLTLIBRARIES ctags \ +- ctags-recursive distclean distclean-compile distclean-generic \ +- distclean-libtool distclean-tags dvi dvi-am html html-am info \ +- info-am install install-am install-data install-data-am \ +- install-data-local install-dvi install-dvi-am install-exec \ +- install-exec-am install-html install-html-am install-info \ +- install-info-am install-man install-pdf install-pdf-am \ +- install-ps install-ps-am install-strip \ +- install-toolexeclibLTLIBRARIES installcheck installcheck-am \ +- installdirs installdirs-am maintainer-clean \ +- maintainer-clean-generic mostlyclean mostlyclean-compile \ +- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ +- tags tags-recursive uninstall uninstall-am \ ++ clean-libtool clean-local clean-noinstLTLIBRARIES \ ++ clean-toolexeclibLTLIBRARIES ctags ctags-recursive distclean \ ++ distclean-compile distclean-generic distclean-libtool \ ++ distclean-tags dvi dvi-am html html-am info info-am install \ ++ install-am install-data install-data-am install-data-local \ ++ install-dvi install-dvi-am install-exec install-exec-am \ ++ install-html install-html-am install-info install-info-am \ ++ install-man install-pdf install-pdf-am install-ps \ ++ install-ps-am install-strip install-toolexeclibLTLIBRARIES \ ++ installcheck installcheck-am installdirs installdirs-am \ ++ maintainer-clean maintainer-clean-generic mostlyclean \ ++ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ ++ pdf pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \ + uninstall-toolexeclibLTLIBRARIES + + +--- libstdc++-v3/src/c++11/thread.cc.jj 2017-04-20 12:16:57.118836527 +0200 ++++ libstdc++-v3/src/c++11/thread.cc 2017-05-31 12:11:25.262560286 +0200 +@@ -127,6 +127,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + + thread::_State::~_State() = default; + ++#ifndef _GLIBCXX_NONSHARED_CXX11_44 + void + thread::join() + { +@@ -154,6 +155,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + + _M_id = id(); + } ++#endif + + void + thread::_M_start_thread(_State_ptr state, void (*)()) +@@ -167,6 +169,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + } + + #if _GLIBCXX_THREAD_ABI_COMPAT ++#ifndef _GLIBCXX_NONSHARED_CXX11_44 + void + thread::_M_start_thread(__shared_base_type __b) + { +@@ -180,6 +183,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + + _M_start_thread(std::move(__b), nullptr); + } ++#endif + + void + thread::_M_start_thread(__shared_base_type __b, void (*)()) +@@ -197,6 +201,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + } + #endif + ++#ifndef _GLIBCXX_NONSHARED_CXX11_48 + unsigned int + thread::hardware_concurrency() noexcept + { +@@ -205,6 +210,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + __n = 0; + return __n; + } ++#endif + + _GLIBCXX_END_NAMESPACE_VERSION + +@@ -212,6 +218,7 @@ namespace this_thread + { + _GLIBCXX_BEGIN_NAMESPACE_VERSION + ++#ifndef _GLIBCXX_NONSHARED_CXX11_48 + void + __sleep_for(chrono::seconds __s, chrono::nanoseconds __ns) + { +@@ -243,6 +250,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + ::Sleep(chrono::milliseconds(__s).count() + ms); + #endif + } ++#endif + + _GLIBCXX_END_NAMESPACE_VERSION + } +--- libstdc++-v3/src/c++11/condition_variable.cc.jj 2017-04-20 12:16:57.103836729 +0200 ++++ libstdc++-v3/src/c++11/condition_variable.cc 2017-05-31 12:11:25.260560311 +0200 +@@ -31,6 +31,7 @@ namespace std _GLIBCXX_VISIBILITY(defaul + { + _GLIBCXX_BEGIN_NAMESPACE_VERSION + ++#ifndef _GLIBCXX_NONSHARED_CXX11 + #ifdef __GTHREAD_COND_INIT + condition_variable::condition_variable() noexcept = default; + #else +@@ -77,6 +78,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + if (__e) + __throw_system_error(__e); + } ++#endif + + extern void + __at_thread_exit(__at_thread_exit_elt*); +--- libstdc++-v3/src/c++11/system_error.cc.jj 2017-05-31 12:11:25.262560286 +0200 ++++ libstdc++-v3/src/c++11/system_error.cc 2017-05-31 12:54:20.128803019 +0200 +@@ -89,7 +89,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + const error_category& + _V2::generic_category() noexcept { return generic_category_instance; } + ++#ifndef _GLIBCXX_NONSHARED_CXX11 + system_error::~system_error() noexcept = default; ++#endif + + error_condition + error_category::default_error_condition(int __i) const noexcept +@@ -104,9 +106,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + error_category::equivalent(const error_code& __code, int __i) const noexcept + { return *this == __code.category() && __code.value() == __i; } + ++#ifndef _GLIBCXX_NONSHARED_CXX11 + error_condition + error_code::default_error_condition() const noexcept + { return category().default_error_condition(value()); } ++#endif + + #if _GLIBCXX_USE_CXX11_ABI + // Return error_category::message() as a COW string +--- libstdc++-v3/src/c++11/future.cc.jj 2017-04-20 12:16:57.108836661 +0200 ++++ libstdc++-v3/src/c++11/future.cc 2017-05-31 12:57:54.808282695 +0200 +@@ -25,6 +25,7 @@ + #include + #include + ++#ifndef _GLIBCXX_NONSHARED_CXX11_48 + namespace + { + struct future_error_category : public std::error_category +@@ -66,6 +67,7 @@ namespace + return __fec; + } + } ++#endif + + namespace std _GLIBCXX_VISIBILITY(default) + { +@@ -75,6 +77,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + __throw_future_error(int __i __attribute__((unused))) + { _GLIBCXX_THROW_OR_ABORT(future_error(make_error_code(future_errc(__i)))); } + ++#ifndef _GLIBCXX_NONSHARED_CXX11_48 + const error_category& future_category() noexcept + { return __future_category_instance(); } + +@@ -82,11 +85,14 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + + const char* + future_error::what() const noexcept { return logic_error::what(); } ++#endif + + #if defined(_GLIBCXX_HAS_GTHREADS) && defined(_GLIBCXX_USE_C99_STDINT_TR1) ++#ifndef _GLIBCXX_NONSHARED_CXX11_48 + __future_base::_Result_base::_Result_base() = default; + + __future_base::_Result_base::~_Result_base() = default; ++#endif + + void + __future_base::_State_baseV2::_Make_ready::_S_run(void* p) +--- libstdc++-v3/src/c++11/compatibility-c++0x.cc.jj 2017-04-20 12:16:57.121836486 +0200 ++++ libstdc++-v3/src/c++11/compatibility-c++0x.cc 2017-05-31 12:11:25.262560286 +0200 +@@ -44,6 +44,7 @@ + + namespace std _GLIBCXX_VISIBILITY(default) + { ++#ifndef _GLIBCXX_NONSHARED_CXX11_44 + // gcc-4.4.0 + // exported std::lock_error + #if defined(_GLIBCXX_HAS_GTHREADS) && defined(_GLIBCXX_USE_C99_STDINT_TR1) +@@ -104,7 +105,6 @@ namespace std _GLIBCXX_VISIBILITY(defaul + hash::operator()(const wstring& __s) const + { return _Hash_impl::hash(__s.data(), __s.length() * sizeof(wchar_t)); } + #endif +-#endif + + template<> + struct hash +@@ -129,11 +129,19 @@ namespace std _GLIBCXX_VISIBILITY(defaul + }; + constexpr bool system_clock::is_monotonic; + } // namespace chrono ++#endif ++#endif + + _GLIBCXX_BEGIN_NAMESPACE_VERSION + // gcc-5 replaces this with _V2::error_category + class error_category + { ++#ifdef _GLIBCXX_NONSHARED_CXX11_44 ++ // Ugly hack. Ensure we don't emit the virtual table and ++ // use system libstdc++.so.6 one instead. ++ virtual void dummy(); ++#endif ++ + public: + error_category() noexcept; + +@@ -177,6 +185,7 @@ _GLIBCXX_END_NAMESPACE_VERSION + + error_category::~error_category() noexcept = default; + ++#ifndef _GLIBCXX_NONSHARED_CXX11_44 + namespace + { + using std::string; +@@ -253,6 +262,6 @@ _GLIBCXX_END_NAMESPACE_VERSION + return __code.value() == __i; + return false; + } +- ++#endif + } + #endif +--- libstdc++-v3/src/c++11/shared_ptr.cc.jj 2017-04-20 12:16:57.103836729 +0200 ++++ libstdc++-v3/src/c++11/shared_ptr.cc 2017-05-31 12:11:25.261560298 +0200 +@@ -43,11 +43,13 @@ namespace std _GLIBCXX_VISIBILITY(defaul + { + _GLIBCXX_BEGIN_NAMESPACE_VERSION + ++#ifndef _GLIBCXX_NONSHARED_CXX11_48 + bad_weak_ptr::~bad_weak_ptr() noexcept = default; + + char const* + bad_weak_ptr::what() const noexcept + { return "bad_weak_ptr"; } ++#endif + + #ifdef __GTHREADS + namespace +--- libstdc++-v3/src/c++11/ios.cc.jj 2017-04-20 12:16:57.114836581 +0200 ++++ libstdc++-v3/src/c++11/ios.cc 2017-05-31 12:11:25.260560311 +0200 +@@ -49,6 +49,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + __throw_ios_failure(const char* __s __attribute__((unused))) + { _GLIBCXX_THROW_OR_ABORT(ios_base::failure(_(__s))); } + ++#ifndef _GLIBCXX_NONSHARED_CXX11 + // Definitions for static const members of ios_base. + const ios_base::fmtflags ios_base::boolalpha; + const ios_base::fmtflags ios_base::dec; +@@ -207,6 +208,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION + } + _M_callbacks = 0; + } ++#endif + + void + ios_base::_M_move(ios_base& __rhs) noexcept +--- libstdc++-v3/src/c++11/cow-string-inst.cc.jj 2017-04-20 12:16:57.107836675 +0200 ++++ libstdc++-v3/src/c++11/cow-string-inst.cc 2017-05-31 12:11:25.261560298 +0200 +@@ -27,7 +27,11 @@ + // + + #define _GLIBCXX_USE_CXX11_ABI 0 ++#ifndef _GLIBCXX_NONSHARED_CXX11_44 + #include "string-inst.cc" ++#else ++#include ++#endif + + #if ! _GLIBCXX_USE_DUAL_ABI + # error This file should not be compiled for this configuration. +--- libstdc++-v3/src/c++11/random.cc.jj 2017-04-20 12:16:57.111836621 +0200 ++++ libstdc++-v3/src/c++11/random.cc 2017-05-31 12:11:25.262560286 +0200 +@@ -59,6 +59,7 @@ namespace std _GLIBCXX_VISIBILITY(defaul + } + + #if (defined __i386__ || defined __x86_64__) && defined _GLIBCXX_X86_RDRAND ++#ifndef _GLIBCXX_NONSHARED_CXX11_48 + unsigned int + __attribute__ ((target("rdrnd"))) + __x86_rdrand(void) +@@ -73,6 +74,7 @@ namespace std _GLIBCXX_VISIBILITY(defaul + return val; + } + #endif ++#endif + } + + void +@@ -115,6 +117,7 @@ namespace std _GLIBCXX_VISIBILITY(defaul + _M_mt.seed(_M_strtoul(token)); + } + ++#ifndef _GLIBCXX_NONSHARED_CXX11_48 + void + random_device::_M_fini() + { +@@ -160,6 +163,7 @@ namespace std _GLIBCXX_VISIBILITY(defaul + { + return _M_mt(); + } ++#endif + + template class mersenne_twister_engine< + uint_fast32_t, +--- libstdc++-v3/configure.ac.jj 2017-04-20 12:17:29.115405348 +0200 ++++ libstdc++-v3/configure.ac 2017-05-31 12:11:25.270560190 +0200 +@@ -512,6 +512,11 @@ GLIBCXX_EXPORT_FLAGS + # Determine what GCC version number to use in filesystem paths. + GCC_BASE_VER + ++CCAS='$(CXX)' ++CCASFLAGS='$(CXXFLAGS)' ++AC_SUBST(CCAS) ++AC_SUBST(CCASFLAGS) ++ + dnl In autoconf 2.5x, AC_OUTPUT is replaced by four AC_CONFIG_* macros, + dnl which can all be called multiple times as needed, plus one (different) + dnl AC_OUTPUT macro. This one lists the files to be created: +--- libstdc++-v3/configure.jj 2017-04-20 12:16:54.957865647 +0200 ++++ libstdc++-v3/configure 2017-05-31 13:58:19.907825908 +0200 +@@ -602,6 +602,8 @@ ac_subst_vars='am__EXEEXT_FALSE + am__EXEEXT_TRUE + LTLIBOBJS + LIBOBJS ++CCASFLAGS ++CCAS + get_gcc_base_ver + WARN_FLAGS + OPTIMIZE_CXXFLAGS +@@ -4959,7 +4961,7 @@ $as_echo "$ac_cv_path_EGREP" >&6; } + # expandable list at autoconf time; the second provides an expandable list + # (i.e., shell variable) at configure time. + +- SUBDIRS='include libsupc++ src src/c++98 src/c++11 src/filesystem doc po testsuite python' ++ SUBDIRS='include libsupc++ src src/c++98 src/c++11 src/filesystem src/nonshared98 src/nonshared11 doc po testsuite python' + + # These need to be absolute paths, yet at the same time need to + # canonicalize only relative paths, because then amd will not unmount +@@ -11601,7 +11603,7 @@ else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext <<_LT_EOF +-#line 11604 "configure" ++#line 11606 "configure" + #include "confdefs.h" + + #if HAVE_DLFCN_H +@@ -11707,7 +11709,7 @@ else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext <<_LT_EOF +-#line 11710 "configure" ++#line 11712 "configure" + #include "confdefs.h" + + #if HAVE_DLFCN_H +@@ -15393,7 +15395,7 @@ $as_echo "$glibcxx_cv_atomic_long_long" + # Fake what AC_TRY_COMPILE does. + + cat > conftest.$ac_ext << EOF +-#line 15396 "configure" ++#line 15398 "configure" + int main() + { + typedef bool atomic_type; +@@ -15428,7 +15430,7 @@ $as_echo "$glibcxx_cv_atomic_bool" >&6; + rm -f conftest* + + cat > conftest.$ac_ext << EOF +-#line 15431 "configure" ++#line 15433 "configure" + int main() + { + typedef short atomic_type; +@@ -15463,7 +15465,7 @@ $as_echo "$glibcxx_cv_atomic_short" >&6; + rm -f conftest* + + cat > conftest.$ac_ext << EOF +-#line 15466 "configure" ++#line 15468 "configure" + int main() + { + // NB: _Atomic_word not necessarily int. +@@ -15499,7 +15501,7 @@ $as_echo "$glibcxx_cv_atomic_int" >&6; } + rm -f conftest* + + cat > conftest.$ac_ext << EOF +-#line 15502 "configure" ++#line 15504 "configure" + int main() + { + typedef long long atomic_type; +@@ -15580,7 +15582,7 @@ $as_echo "$as_me: WARNING: Performance o + # unnecessary for this test. + + cat > conftest.$ac_ext << EOF +-#line 15583 "configure" ++#line 15585 "configure" + int main() + { + _Decimal32 d1; +@@ -15622,7 +15624,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + # unnecessary for this test. + + cat > conftest.$ac_ext << EOF +-#line 15625 "configure" ++#line 15627 "configure" + template + struct same + { typedef T2 type; }; +@@ -15656,7 +15658,7 @@ $as_echo "$enable_int128" >&6; } + rm -f conftest* + + cat > conftest.$ac_ext << EOF +-#line 15659 "configure" ++#line 15661 "configure" + template + struct same + { typedef T2 type; }; +@@ -81665,6 +81667,11 @@ fi + + + ++CCAS='$(CXX)' ++CCASFLAGS='$(CXXFLAGS)' ++ ++ ++ + ac_config_files="$ac_config_files Makefile" + + ac_config_files="$ac_config_files scripts/testsuite_flags" +@@ -81682,7 +81689,7 @@ ac_config_files="$ac_config_files doc/xs + # append it here. Only modify Makefiles that have just been created. + # + # Also, get rid of this simulated-VPATH thing that automake does. +-ac_config_files="$ac_config_files include/Makefile libsupc++/Makefile src/Makefile src/c++98/Makefile src/c++11/Makefile src/filesystem/Makefile doc/Makefile po/Makefile testsuite/Makefile python/Makefile" ++ac_config_files="$ac_config_files include/Makefile libsupc++/Makefile src/Makefile src/c++98/Makefile src/c++11/Makefile src/filesystem/Makefile src/nonshared98/Makefile src/nonshared11/Makefile doc/Makefile po/Makefile testsuite/Makefile python/Makefile" + + + ac_config_commands="$ac_config_commands generate-headers" +@@ -82910,6 +82917,8 @@ do + "src/c++98/Makefile") CONFIG_FILES="$CONFIG_FILES src/c++98/Makefile" ;; + "src/c++11/Makefile") CONFIG_FILES="$CONFIG_FILES src/c++11/Makefile" ;; + "src/filesystem/Makefile") CONFIG_FILES="$CONFIG_FILES src/filesystem/Makefile" ;; ++ "src/nonshared98/Makefile") CONFIG_FILES="$CONFIG_FILES src/nonshared98/Makefile" ;; ++ "src/nonshared11/Makefile") CONFIG_FILES="$CONFIG_FILES src/nonshared11/Makefile" ;; + "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; + "po/Makefile") CONFIG_FILES="$CONFIG_FILES po/Makefile" ;; + "testsuite/Makefile") CONFIG_FILES="$CONFIG_FILES testsuite/Makefile" ;; +@@ -84750,6 +84759,28 @@ _EOF + s!`test -f '$<' || echo '$(srcdir)/'`!! + _EOF + sed -f vpsed$$ $ac_file > tmp$$ ++ mv tmp$$ $ac_file ++ rm vpsed$$ ++ echo 'MULTISUBDIR =' >> $ac_file ++ ml_norecursion=yes ++ . ${multi_basedir}/config-ml.in ++ { ml_norecursion=; unset ml_norecursion;} ++ ;; ++ "src/nonshared98/Makefile":F) cat > vpsed$$ << \_EOF ++s!`test -f '$<' || echo '$(srcdir)/'`!! ++_EOF ++ sed -f vpsed$$ $ac_file > tmp$$ ++ mv tmp$$ $ac_file ++ rm vpsed$$ ++ echo 'MULTISUBDIR =' >> $ac_file ++ ml_norecursion=yes ++ . ${multi_basedir}/config-ml.in ++ { ml_norecursion=; unset ml_norecursion;} ++ ;; ++ "src/nonshared11/Makefile":F) cat > vpsed$$ << \_EOF ++s!`test -f '$<' || echo '$(srcdir)/'`!! ++_EOF ++ sed -f vpsed$$ $ac_file > tmp$$ + mv tmp$$ $ac_file + rm vpsed$$ + echo 'MULTISUBDIR =' >> $ac_file +--- libstdc++-v3/acinclude.m4.jj 2017-04-20 12:18:56.906222297 +0200 ++++ libstdc++-v3/acinclude.m4 2017-05-31 12:11:25.220560793 +0200 +@@ -49,7 +49,7 @@ AC_DEFUN([GLIBCXX_CONFIGURE], [ + # Keep these sync'd with the list in Makefile.am. The first provides an + # expandable list at autoconf time; the second provides an expandable list + # (i.e., shell variable) at configure time. +- m4_define([glibcxx_SUBDIRS],[include libsupc++ src src/c++98 src/c++11 src/filesystem doc po testsuite python]) ++ m4_define([glibcxx_SUBDIRS],[include libsupc++ src src/c++98 src/c++11 src/filesystem src/nonshared98 src/nonshared11 doc po testsuite python]) + SUBDIRS='glibcxx_SUBDIRS' + + # These need to be absolute paths, yet at the same time need to diff --git a/SOURCES/gcc7-libstdc++-docs.patch b/SOURCES/gcc7-libstdc++-docs.patch new file mode 100644 index 0000000..125091b --- /dev/null +++ b/SOURCES/gcc7-libstdc++-docs.patch @@ -0,0 +1,24 @@ +--- libstdc++-v3/doc/html/index.html.jj 2011-01-03 12:53:21.282829010 +0100 ++++ libstdc++-v3/doc/html/index.html 2011-01-04 18:06:28.999851145 +0100 +@@ -5,6 +5,8 @@ + FSF + +

++ Release 7.2.1 ++

+ Permission is granted to copy, distribute and/or modify this + document under the terms of the GNU Free Documentation + License, Version 1.2 or any later version published by the +--- libstdc++-v3/doc/html/api.html.jj 2011-01-03 12:53:21.000000000 +0100 ++++ libstdc++-v3/doc/html/api.html 2011-01-04 18:12:01.672757784 +0100 +@@ -20,7 +20,9 @@ + member functions for the library classes, finding out what is in a + particular include file, looking at inheritance diagrams, etc. +

+- The API documentation, rendered into HTML, can be viewed online ++ The API documentation, rendered into HTML, can be viewed locally ++ for the 7.2.1 release, ++ online + for each GCC release + and + diff --git a/SOURCES/gcc7-libstdc++44-xfail.patch b/SOURCES/gcc7-libstdc++44-xfail.patch new file mode 100644 index 0000000..0a84451 --- /dev/null +++ b/SOURCES/gcc7-libstdc++44-xfail.patch @@ -0,0 +1,190 @@ +--- libstdc++-v3/testsuite/22_locale/locale/cons/40184.cc.jj 2014-04-11 14:52:06.733884798 +0200 ++++ libstdc++-v3/testsuite/22_locale/locale/cons/40184.cc 2014-05-10 12:29:51.779887325 +0200 +@@ -1,4 +1,6 @@ + // { dg-require-namedlocale "ja_JP.eucjp" } ++// pr40184 fix not backported to base (locales with broken facets) ++// { dg-do run { xfail *-*-* } } + + // Copyright (C) 2009-2014 Free Software Foundation, Inc. + // +--- libstdc++-v3/testsuite/22_locale/time_get/get_date/char/26701.cc.jj 2014-04-11 14:52:06.680885075 +0200 ++++ libstdc++-v3/testsuite/22_locale/time_get/get_date/char/26701.cc 2014-05-10 12:29:51.792886917 +0200 +@@ -1,4 +1,6 @@ + // { dg-require-namedlocale "en_GB" } ++// pr26701 fix not backported to base (parsing of en_GB date) ++// { dg-do run { xfail *-*-* } } + + // 2010-01-06 Paolo Carlini + +--- libstdc++-v3/testsuite/22_locale/time_get/get_date/wchar_t/26701.cc.jj 2014-04-11 14:52:06.674885106 +0200 ++++ libstdc++-v3/testsuite/22_locale/time_get/get_date/wchar_t/26701.cc 2014-05-10 12:29:51.792886917 +0200 +@@ -1,4 +1,6 @@ + // { dg-require-namedlocale "en_GB" } ++// pr26701 fix not backported to base (parsing of en_GB date) ++// { dg-do run { xfail *-*-* } } + + // 2010-01-06 Paolo Carlini + +--- libstdc++-v3/testsuite/22_locale/time_get/get_weekday/char/38081-1.cc.jj 2014-04-11 14:52:06.645885257 +0200 ++++ libstdc++-v3/testsuite/22_locale/time_get/get_weekday/char/38081-1.cc 2014-05-10 12:29:51.802886712 +0200 +@@ -1,4 +1,6 @@ + // { dg-require-namedlocale "ru_RU.ISO-8859-5" } ++// pr38081 fix not backported to base (parsing weekday names) ++// { dg-do run { xfail *-*-* } } + + // Copyright (C) 2010-2014 Free Software Foundation, Inc. + // +--- libstdc++-v3/testsuite/22_locale/time_get/get_weekday/char/38081-2.cc.jj 2014-04-11 14:52:06.646885252 +0200 ++++ libstdc++-v3/testsuite/22_locale/time_get/get_weekday/char/38081-2.cc 2014-05-10 12:29:51.802886712 +0200 +@@ -1,4 +1,6 @@ + // { dg-require-namedlocale "ru_RU.UTF8" } ++// pr38081 fix not backported to base (parsing weekday names) ++// { dg-do run { xfail *-*-* } } + + // 2010-01-05 Paolo Carlini + +--- libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/4.cc.jj 2014-04-11 14:52:04.949894106 +0200 ++++ libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/4.cc 2014-05-10 12:29:51.807886709 +0200 +@@ -1,4 +1,6 @@ + // { dg-require-fileio "" } ++// pr45628 fix not backported to base (seek 0 shouldn't flush) ++// { dg-do run { xfail *-*-* } } + + // Copyright (C) 2010-2014 Free Software Foundation, Inc. + // +--- libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/45628-1.cc.jj 2014-05-10 12:29:51.808886705 +0200 ++++ libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/char/45628-1.cc 2014-05-10 12:31:51.652261219 +0200 +@@ -1,3 +1,6 @@ ++// { dg-do run { xfail *-*-* } } ++// pr45628 fix not backported to base (seek 0 shouldn't flush) ++ + // Copyright (C) 2010-2014 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free +--- libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc.jj 2014-04-11 14:52:04.941894148 +0200 ++++ libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc 2014-05-10 12:29:51.808886705 +0200 +@@ -1,4 +1,6 @@ + // { dg-require-fileio "" } ++// pr45628 fix not backported to base (seek 0 should not flush) ++// { dg-do run { xfail *-*-* } } + + // Copyright (C) 2010-2014 Free Software Foundation, Inc. + // +--- libstdc++-v3/testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc.jj 2014-04-11 14:52:04.771895035 +0200 ++++ libstdc++-v3/testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc 2014-05-10 12:29:51.819886643 +0200 +@@ -1,3 +1,6 @@ ++// { dg-do run { xfail *-*-* } } ++// dr696 fix not backported to base (handling of overflow when reading number) ++ + // 1999-04-12 bkoz + + // Copyright (C) 1999-2014 Free Software Foundation, Inc. +--- libstdc++-v3/testsuite/27_io/basic_istream/extractors_arithmetic/char/dr696.cc.jj 2014-04-11 14:52:04.770895040 +0200 ++++ libstdc++-v3/testsuite/27_io/basic_istream/extractors_arithmetic/char/dr696.cc 2014-05-10 12:29:51.819886643 +0200 +@@ -1,3 +1,6 @@ ++// { dg-do run { xfail *-*-* } } ++// dr696 fix not backported to base (handling of overflow when reading number) ++ + // 2009-07-15 Paolo Carlini + // + // Copyright (C) 2009-2014 Free Software Foundation, Inc. +--- libstdc++-v3/testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/13.cc.jj 2014-05-10 12:29:51.829886586 +0200 ++++ libstdc++-v3/testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/13.cc 2014-05-10 12:32:23.160099254 +0200 +@@ -1,3 +1,6 @@ ++// { dg-do run { xfail *-*-* } } ++// dr696 fix not backported to base (handling of overflow when reading number) ++ + // Copyright (C) 2004-2014 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free +--- libstdc++-v3/testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/dr696.cc.jj 2014-04-11 14:52:04.762895082 +0200 ++++ libstdc++-v3/testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/dr696.cc 2014-05-10 12:29:51.829886586 +0200 +@@ -1,3 +1,6 @@ ++// { dg-do run { xfail *-*-* } } ++// dr696 fix not backported to base (handling of overflow when reading number) ++ + // 2009-07-15 Paolo Carlini + // + // Copyright (C) 2009-2014 Free Software Foundation, Inc. +--- libstdc++-v3/testsuite/27_io/basic_istream/seekg/char/26211.cc.jj 2014-04-11 14:52:04.735895223 +0200 ++++ libstdc++-v3/testsuite/27_io/basic_istream/seekg/char/26211.cc 2014-05-10 12:29:51.836886549 +0200 +@@ -1,3 +1,6 @@ ++// { dg-do run { xfail *-*-* } } ++// pr26211 fix not backported to base (tellg/seekg should construct a sentry) ++ + // 2010-11-18 Paolo Carlini + + // Copyright (C) 2010-2014 Free Software Foundation, Inc. +--- libstdc++-v3/testsuite/27_io/basic_istream/seekg/wchar_t/26211.cc.jj 2014-04-11 14:52:04.731895243 +0200 ++++ libstdc++-v3/testsuite/27_io/basic_istream/seekg/wchar_t/26211.cc 2014-05-10 12:29:51.836886549 +0200 +@@ -1,3 +1,6 @@ ++// { dg-do run { xfail *-*-* } } ++// pr26211 fix not backported to base (tellg/seekg should construct a sentry) ++ + // 2010-11-18 Paolo Carlini + + // Copyright (C) 2010-2014 Free Software Foundation, Inc. +--- libstdc++-v3/testsuite/27_io/basic_istream/tellg/char/26211.cc.jj 2014-04-11 14:52:04.779894993 +0200 ++++ libstdc++-v3/testsuite/27_io/basic_istream/tellg/char/26211.cc 2014-05-10 12:29:51.836886549 +0200 +@@ -1,3 +1,6 @@ ++// { dg-do run { xfail *-*-* } } ++// pr26211 fix not backported to base (tellg/seekg should construct a sentry) ++ + // 2010-11-18 Paolo Carlini + + // Copyright (C) 2010-2014 Free Software Foundation, Inc. +--- libstdc++-v3/testsuite/27_io/basic_istream/tellg/wchar_t/26211.cc.jj 2014-04-11 14:52:04.775895014 +0200 ++++ libstdc++-v3/testsuite/27_io/basic_istream/tellg/wchar_t/26211.cc 2014-05-10 12:29:51.837886543 +0200 +@@ -1,3 +1,6 @@ ++// { dg-do run { xfail *-*-* } } ++// pr26211 fix not backported to base (tellg/seekg should construct a sentry) ++ + // 2010-11-18 Paolo Carlini + + // Copyright (C) 2010-2014 Free Software Foundation, Inc. +--- libstdc++-v3/testsuite/27_io/objects/char/41037.cc.jj 2014-05-10 12:29:51.848886483 +0200 ++++ libstdc++-v3/testsuite/27_io/objects/char/41037.cc 2014-05-10 12:30:52.480567953 +0200 +@@ -1,3 +1,6 @@ ++// { dg-do run { xfail *-*-* } } ++// pr41037 fix not backported to base (flags on cerr) ++ + // Copyright (C) 2009-2014 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free +--- libstdc++-v3/testsuite/27_io/objects/wchar_t/41037.cc.jj 2014-05-10 12:29:51.856886441 +0200 ++++ libstdc++-v3/testsuite/27_io/objects/wchar_t/41037.cc 2014-05-10 12:31:20.274421862 +0200 +@@ -1,3 +1,6 @@ ++// { dg-do run { xfail *-*-* } } ++// pr26211 fix not backported to base (tellg/seekg should construct a sentry) ++ + // Copyright (C) 2009-2014 Free Software Foundation, Inc. + // + // This file is part of the GNU ISO C++ Library. This library is free +--- libstdc++-v3/testsuite/abi/demangle/regression/cw-13.cc.jj 2014-04-11 14:52:05.388891816 +0200 ++++ libstdc++-v3/testsuite/abi/demangle/regression/cw-13.cc 2014-05-10 12:29:51.868886376 +0200 +@@ -1,3 +1,6 @@ ++// { dg-do run { xfail *-*-* } } ++// pr42670 fix not backported to base (partial demangling of global ctor fn) ++ + // 2003-02-26 Carlo Wood + + // Copyright (C) 2003-2014 Free Software Foundation, Inc. +--- libstdc++-v3/testsuite/abi/demangle/regression/cw-16.cc.jj 2014-04-11 14:52:05.387891821 +0200 ++++ libstdc++-v3/testsuite/abi/demangle/regression/cw-16.cc 2014-05-10 12:29:51.868886376 +0200 +@@ -1,3 +1,6 @@ ++// { dg-do run { xfail *-*-* } } ++// pr37376 fix not backported to base ((42) + 2 changed to (42)+(2)) ++ + // 2003-11-07 Carlo Wood + + // Copyright (C) 2003-2014 Free Software Foundation, Inc. +--- libstdc++-v3/testsuite/libstdc++-abi/abi.exp.jj 2014-04-11 14:52:06.793884485 +0200 ++++ libstdc++-v3/testsuite/libstdc++-abi/abi.exp 2014-05-10 12:29:51.868886376 +0200 +@@ -61,4 +61,7 @@ remote_download "target" "current_symbol + set result [${tool}_load "./abi_check" \ + [list "--check-verbose" "current_symbols.txt" \ + "baseline_symbols.txt"]] ++# This is an artifact of running the current testsuite against the old ++# system libstdc++ ++setup_xfail *-*-* + [lindex $result 0] "libstdc++-abi/abi_check" diff --git a/SOURCES/gcc7-libtool-no-rpath.patch b/SOURCES/gcc7-libtool-no-rpath.patch new file mode 100644 index 0000000..466c661 --- /dev/null +++ b/SOURCES/gcc7-libtool-no-rpath.patch @@ -0,0 +1,27 @@ +libtool sucks. +--- ltmain.sh.jj 2007-12-07 14:53:21.000000000 +0100 ++++ ltmain.sh 2008-09-05 21:51:48.000000000 +0200 +@@ -5394,6 +5394,7 @@ EOF + rpath="$finalize_rpath" + test "$mode" != relink && rpath="$compile_rpath$rpath" + for libdir in $rpath; do ++ case "$libdir" in /usr/lib|/usr/lib64|/usr/lib/../lib|/usr/lib/../lib64) continue;; esac + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then +@@ -6071,6 +6072,7 @@ EOF + rpath= + hardcode_libdirs= + for libdir in $compile_rpath $finalize_rpath; do ++ case "$libdir" in /usr/lib|/usr/lib64|/usr/lib/../lib|/usr/lib/../lib64) continue;; esac + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then +@@ -6120,6 +6122,7 @@ EOF + rpath= + hardcode_libdirs= + for libdir in $finalize_rpath; do ++ case "$libdir" in /usr/lib|/usr/lib64|/usr/lib/../lib|/usr/lib/../lib64) continue;; esac + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then diff --git a/SOURCES/gcc7-no-add-needed.patch b/SOURCES/gcc7-no-add-needed.patch new file mode 100644 index 0000000..4102e1c --- /dev/null +++ b/SOURCES/gcc7-no-add-needed.patch @@ -0,0 +1,50 @@ +2010-02-08 Roland McGrath + + * config/rs6000/sysv4.h (LINK_EH_SPEC): Pass --no-add-needed to the + linker. + * config/gnu-user.h (LINK_EH_SPEC): Likewise. + * config/alpha/elf.h (LINK_EH_SPEC): Likewise. + * config/ia64/linux.h (LINK_EH_SPEC): Likewise. + +--- gcc/config/alpha/elf.h.jj 2011-01-03 12:52:31.118056764 +0100 ++++ gcc/config/alpha/elf.h 2011-01-04 18:14:10.931874160 +0100 +@@ -165,5 +165,5 @@ extern int alpha_this_gpdisp_sequence_nu + I imagine that other systems will catch up. In the meantime, it + doesn't harm to make sure that the data exists to be used later. */ + #if defined(HAVE_LD_EH_FRAME_HDR) +-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} " ++#define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} " + #endif +--- gcc/config/ia64/linux.h.jj 2011-01-03 13:02:11.462994522 +0100 ++++ gcc/config/ia64/linux.h 2011-01-04 18:14:10.931874160 +0100 +@@ -76,7 +76,7 @@ do { \ + Signalize that because we have fde-glibc, we don't need all C shared libs + linked against -lgcc_s. */ + #undef LINK_EH_SPEC +-#define LINK_EH_SPEC "" ++#define LINK_EH_SPEC "--no-add-needed " + + #undef TARGET_INIT_LIBFUNCS + #define TARGET_INIT_LIBFUNCS ia64_soft_fp_init_libfuncs +--- gcc/config/gnu-user.h.jj 2011-01-03 12:53:03.739057299 +0100 ++++ gcc/config/gnu-user.h 2011-01-04 18:14:10.932814884 +0100 +@@ -82,7 +82,7 @@ see the files COPYING3 and COPYING.RUNTI + #define LIB_SPEC GNU_USER_TARGET_LIB_SPEC + + #if defined(HAVE_LD_EH_FRAME_HDR) +-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} " ++#define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} " + #endif + + #undef LINK_GCC_C_SEQUENCE_SPEC +--- gcc/config/rs6000/sysv4.h.jj 2011-01-03 13:02:18.255994215 +0100 ++++ gcc/config/rs6000/sysv4.h 2011-01-04 18:14:10.933888871 +0100 +@@ -820,7 +820,7 @@ extern int fixuplabelno; + -dynamic-linker " GNU_USER_DYNAMIC_LINKER "}}" + + #if defined(HAVE_LD_EH_FRAME_HDR) +-# define LINK_EH_SPEC "%{!static:--eh-frame-hdr} " ++# define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} " + #endif + + #define CPP_OS_LINUX_SPEC "-D__unix__ -D__gnu_linux__ -D__linux__ \ diff --git a/SOURCES/gcc7-ppc32-retaddr.patch b/SOURCES/gcc7-ppc32-retaddr.patch new file mode 100644 index 0000000..7e8eeb5 --- /dev/null +++ b/SOURCES/gcc7-ppc32-retaddr.patch @@ -0,0 +1,87 @@ +2005-11-28 Jakub Jelinek + + * config/rs6000/rs6000.c (rs6000_return_addr): If COUNT == 0, + read word RETURN_ADDRESS_OFFSET bytes above arg_pointer_rtx + instead of doing an extran indirection from frame_pointer_rtx. + + * gcc.dg/20051128-1.c: New test. + +--- gcc/config/rs6000/rs6000.c.jj 2005-11-26 14:38:01.000000000 +0100 ++++ gcc/config/rs6000/rs6000.c 2005-11-28 20:32:18.000000000 +0100 +@@ -20970,18 +20970,22 @@ rs6000_return_addr (int count, rtx frame + if (count != 0 + || ((DEFAULT_ABI == ABI_V4 || DEFAULT_ABI == ABI_DARWIN) && flag_pic)) + { ++ rtx x; + cfun->machine->ra_needs_full_frame = 1; + +- return +- gen_rtx_MEM +- (Pmode, +- memory_address +- (Pmode, +- plus_constant (Pmode, +- copy_to_reg +- (gen_rtx_MEM (Pmode, +- memory_address (Pmode, frame))), +- RETURN_ADDRESS_OFFSET))); ++ if (count == 0) ++ { ++ gcc_assert (frame == frame_pointer_rtx); ++ x = arg_pointer_rtx; ++ } ++ else ++ { ++ x = memory_address (Pmode, frame); ++ x = copy_to_reg (gen_rtx_MEM (Pmode, x)); ++ } ++ ++ x = plus_constant (Pmode, x, RETURN_ADDRESS_OFFSET); ++ return gen_rtx_MEM (Pmode, memory_address (Pmode, x)); + } + + cfun->machine->ra_need_lr = 1; +--- gcc/testsuite/gcc.dg/20051128-1.c.jj 2005-10-10 11:21:41.096999000 +0200 ++++ gcc/testsuite/gcc.dg/20051128-1.c 2005-11-28 12:30:57.000000000 +0100 +@@ -0,0 +1,41 @@ ++/* { dg-do run } */ ++/* { dg-options "-O2 -fpic" } */ ++ ++extern void exit (int); ++extern void abort (void); ++ ++int b; ++ ++struct A ++{ ++ void *pad[147]; ++ void *ra, *h; ++ long o; ++}; ++ ++void ++__attribute__((noinline)) ++foo (struct A *a, void *x) ++{ ++ __builtin_memset (a, 0, sizeof (a)); ++ if (!b) ++ exit (0); ++} ++ ++void ++__attribute__((noinline)) ++bar (void) ++{ ++ struct A a; ++ ++ __builtin_unwind_init (); ++ foo (&a, __builtin_return_address (0)); ++} ++ ++int ++main (void) ++{ ++ bar (); ++ abort (); ++ return 0; ++} diff --git a/SOURCES/gcc7-rh1118870.patch b/SOURCES/gcc7-rh1118870.patch new file mode 100644 index 0000000..9865e72 --- /dev/null +++ b/SOURCES/gcc7-rh1118870.patch @@ -0,0 +1,20 @@ +2014-07-23 Jonathan Wakely + + * testsuite/30_threads/condition_variable_any/rh1118870.cc: New test. + +--- libstdc++-v3/testsuite/30_threads/condition_variable_any/rh1118870.cc ++++ libstdc++-v3/testsuite/30_threads/condition_variable_any/rh1118870.cc +@@ -0,0 +1,13 @@ ++// { dg-options " -std=gnu++11 -pthread" } ++#include ++#include ++ ++int main() ++{ ++ const size_t sz = sizeof(std::condition_variable_any); ++ char garbage[sz]; ++ memset(garbage, 0xff, sz); ++ auto cond = new ((void*)garbage) std::condition_variable_any(); ++ cond->notify_all(); ++ cond->~condition_variable_any(); ++} diff --git a/SOURCES/gcc7-sparc-config-detection.patch b/SOURCES/gcc7-sparc-config-detection.patch new file mode 100644 index 0000000..bb06b35 --- /dev/null +++ b/SOURCES/gcc7-sparc-config-detection.patch @@ -0,0 +1,40 @@ +--- gcc/config.gcc.jj 2008-04-24 15:42:46.000000000 -0500 ++++ gcc/config.gcc 2008-04-24 15:44:51.000000000 -0500 +@@ -2790,7 +2790,7 @@ sparc-*-rtems*) + tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h sparc/sp-elf.h sparc/rtemself.h rtems.h newlib-stdint.h" + tmake_file="${tmake_file} sparc/t-sparc sparc/t-rtems" + ;; +-sparc-*-linux*) ++sparc-*-linux* | sparcv9-*-linux*) + tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h gnu-user.h linux.h glibc-stdint.h sparc/tso.h" + extra_options="${extra_options} sparc/long-double-switch.opt" + case ${target} in +@@ -2844,7 +2844,7 @@ sparc64-*-rtems*) + extra_options="${extra_options}" + tmake_file="${tmake_file} sparc/t-sparc sparc/t-rtems-64" + ;; +-sparc64-*-linux*) ++sparc64*-*-linux*) + tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h sparc/sysv4.h gnu-user.h linux.h glibc-stdint.h sparc/default64.h sparc/linux64.h sparc/tso.h" + extra_options="${extra_options} sparc/long-double-switch.opt" + tmake_file="${tmake_file} sparc/t-sparc sparc/t-linux64" +--- libgcc/config.host.jj 2008-04-24 15:46:19.000000000 -0500 ++++ libgcc/config.host 2008-04-24 15:46:49.000000000 -0500 +@@ -1002,7 +1002,7 @@ sparc-*-elf*) + tmake_file="${tmake_file} t-fdpbit t-crtfm" + extra_parts="$extra_parts crti.o crtn.o crtfastmath.o" + ;; +-sparc-*-linux*) # SPARC's running GNU/Linux, libc6 ++sparc-*-linux* | sparcv9-*-linux*) # SPARC's running GNU/Linux, libc6 + tmake_file="${tmake_file} t-crtfm" + if test "${host_address}" = 64; then + tmake_file="$tmake_file sparc/t-linux64" +@@ -1050,7 +1050,7 @@ sparc64-*-freebsd*|ultrasparc-*-freebsd* + tmake_file="$tmake_file t-crtfm" + extra_parts="$extra_parts crtfastmath.o" + ;; +-sparc64-*-linux*) # 64-bit SPARC's running GNU/Linux ++sparc64*-*-linux*) # 64-bit SPARC's running GNU/Linux + extra_parts="$extra_parts crtfastmath.o" + tmake_file="${tmake_file} t-crtfm sparc/t-linux" + if test "${host_address}" = 64; then diff --git a/SPECS/compat-sap-c++-7.spec b/SPECS/compat-sap-c++-7.spec new file mode 100644 index 0000000..81c82c2 --- /dev/null +++ b/SPECS/compat-sap-c++-7.spec @@ -0,0 +1,434 @@ +# SAP HACK: Start custom scl information for SAP build. +%global scl 1 +%global scl_prefix compat-sap- +%global _root_prefix /opt/rh/SAP +%global _root_infodir %{_root_prefix}/%{_infodir} +%global _root_mandir %{_root_prefix}/%{_mandir} +# END SAP HACK. +%{?scl:%global __strip strip} +%{?scl:%global __objdump objdump} +%global DATE 20170829 +%global SVNREV 251415 +%global gcc_version 7.2.1 +%global gcc_major 7 +# Note, gcc_release must be integer, if you want to add suffixes to +# %{release}, append them after %{gcc_release} on Release: line. +%global gcc_release 2 +%global mpc_version 0.8.1 +%global _unpackaged_files_terminate_build 0 +%global multilib_64_archs sparc64 ppc64 s390x x86_64 +%ifarch %{ix86} x86_64 ppc ppc64 ppc64le ppc64p7 s390 s390x %{arm} aarch64 +%global attr_ifunc 1 +%else +%global attr_ifunc 0 +%endif +%ifarch x86_64 +%global multilib_32_arch i686 +%endif +Summary: C++ compatibility runtime library for SAP applications +Name: %{?scl_prefix}c++-7 +ExclusiveArch: x86_64 ppc64le +Version: %{gcc_version} +Release: %{gcc_release}%{?dist} +# libgcc, libgfortran, libmudflap, libgomp, libstdc++ and crtstuff have +# GCC Runtime Exception. +License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD +Group: Development/Languages +# The source for this package was pulled from upstream's vcs. Use the +# following commands to generate the tarball: +# svn export svn://gcc.gnu.org/svn/gcc/branches/redhat/gcc-7-branch@%{SVNREV} gcc-%{version}-%{DATE} +# tar cf - gcc-%{version}-%{DATE} | bzip2 -9 > gcc-%{version}-%{DATE}.tar.bz2 +Source0: gcc-%{version}-%{DATE}.tar.bz2 +Source1: http://www.multiprecision.org/mpc/download/mpc-%{mpc_version}.tar.gz +URL: http://gcc.gnu.org +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +# Need binutils with -pie support >= 2.14.90.0.4-4 +# Need binutils which can omit dot symbols and overlap .opd on ppc64 >= 2.15.91.0.2-4 +# Need binutils which handle -msecure-plt on ppc >= 2.16.91.0.2-2 +# Need binutils which support .weakref >= 2.16.91.0.3-1 +# Need binutils which support --hash-style=gnu >= 2.17.50.0.2-7 +# Need binutils which support mffgpr and mftgpr >= 2.17.50.0.2-8 +# Need binutils which support --build-id >= 2.17.50.0.17-3 +# Need binutils which support %gnu_unique_object >= 2.19.51.0.14 +# Need binutils which support .cfi_sections >= 2.19.51.0.14-33 +BuildRequires: binutils >= 2.19.51.0.14-33 +# While gcc doesn't include statically linked binaries, during testing +# -static is used several times. +BuildRequires: glibc-static +BuildRequires: zlib-devel, gettext, dejagnu, bison, flex, texinfo, sharutils +BuildRequires: zlib-devel, gettext, dejagnu, bison, flex, texinfo, sharutils, gcc-gfortran +BuildRequires: /usr/bin/pod2man +%if 0%{?rhel} >= 7 +BuildRequires: texinfo-tex +%endif +#BuildRequires: systemtap-sdt-devel >= 1.3 +# For VTA guality testing +BuildRequires: gdb +# Make sure pthread.h doesn't contain __thread tokens +# Make sure glibc supports stack protector +# Make sure glibc supports DT_GNU_HASH +BuildRequires: glibc-devel >= 2.4.90-13 +BuildRequires: elfutils-devel >= 0.147 +BuildRequires: elfutils-libelf-devel >= 0.147 +%ifarch ppc ppc64 ppc64le ppc64p7 s390 s390x sparc sparcv9 alpha +# Make sure glibc supports TFmode long double +BuildRequires: glibc >= 2.3.90-35 +%endif +%ifarch %{multilib_64_archs} sparcv9 ppc +# Ensure glibc{,-devel} is installed for both multilib arches +BuildRequires: /lib/libc.so.6 /usr/lib/libc.so /lib64/libc.so.6 /usr/lib64/libc.so +%endif +%ifarch ia64 +BuildRequires: libunwind >= 0.98 +%endif +# Need .eh_frame ld optimizations +# Need proper visibility support +# Need -pie support +# Need --as-needed/--no-as-needed support +# On ppc64, need omit dot symbols support and --non-overlapping-opd +# Need binutils that owns /usr/bin/c++filt +# Need binutils that support .weakref +# Need binutils that supports --hash-style=gnu +# Need binutils that support mffgpr/mftgpr +# Need binutils which support --build-id >= 2.17.50.0.17-3 +# Need binutils which support %gnu_unique_object >= 2.19.51.0.14 +# Need binutils which support .cfi_sections >= 2.19.51.0.14-33 +# Don't require this for compat-sap-c++ (#1491573). +#Requires: binutils >= 2.19.51.0.14-33 +# Make sure gdb will understand DW_FORM_strp +Conflicts: gdb < 5.1-2 +# Don't require this for compat-sap-c++ (#1491573). +#Requires: glibc-devel >= 2.2.90-12 +%ifarch ppc ppc64 ppc64le ppc64p7 s390 s390x sparc sparcv9 alpha +# Make sure glibc supports TFmode long double +Requires: glibc >= 2.3.90-35 +%endif +Requires: libgcc >= 4.1.2-43 +# Keep this for now. +Requires: libgomp >= 4.4.4-13 +BuildRequires: gmp-devel >= 4.1.2-8 +BuildRequires: mpfr-devel >= 2.2.1 +%if 0%{?rhel} >= 7 +BuildRequires: libmpc-devel >= 0.8.1 +%endif +AutoReq: true +AutoProv: false +# Don't provide this for compat-sap-c++ (#1491573). +#%ifarch sparc64 ppc64 ppc64le s390x x86_64 ia64 +#Provides: liblto_plugin.so.0()(64bit) +#%else +#Provides: liblto_plugin.so.0 +#%endif +%global oformat %{nil} +%global oformat2 %{nil} +%ifarch %{ix86} +%global oformat OUTPUT_FORMAT(elf32-i386) +%endif +%ifarch x86_64 +%global oformat OUTPUT_FORMAT(elf64-x86-64) +%global oformat2 OUTPUT_FORMAT(elf32-i386) +%endif +%ifarch ppc +%global oformat OUTPUT_FORMAT(elf32-powerpc) +%global oformat2 OUTPUT_FORMAT(elf64-powerpc) +%endif +%ifarch ppc64 +%global oformat OUTPUT_FORMAT(elf64-powerpc) +%global oformat2 OUTPUT_FORMAT(elf32-powerpc) +%endif +%ifarch s390 +%global oformat OUTPUT_FORMAT(elf32-s390) +%endif +%ifarch s390x +%global oformat OUTPUT_FORMAT(elf64-s390) +%global oformat2 OUTPUT_FORMAT(elf32-s390) +%endif +%ifarch ia64 +%global oformat OUTPUT_FORMAT(elf64-ia64-little) +%endif +%ifarch ppc64le +%global oformat OUTPUT_FORMAT(elf64-powerpcle) +%endif +%ifarch aarch64 +%global oformat OUTPUT_FORMAT(elf64-littleaarch64) +%endif + +Patch0: gcc7-hack.patch +Patch1: gcc7-ppc32-retaddr.patch +Patch2: gcc7-i386-libgomp.patch +Patch3: gcc7-sparc-config-detection.patch +Patch4: gcc7-libgomp-omp_h-multilib.patch +Patch5: gcc7-libtool-no-rpath.patch +Patch6: gcc7-isl-dl.patch +Patch7: gcc7-libstdc++-docs.patch +Patch8: gcc7-no-add-needed.patch +Patch9: gcc7-aarch64-async-unw-tables.patch +Patch10: gcc7-foffload-default.patch +Patch11: gcc7-Wno-format-security.patch + +Patch1000: gcc7-libstdc++-compat.patch +Patch1001: gcc7-alt-compat-test.patch +Patch1002: gcc7-libstdc++44-xfail.patch +Patch1003: gcc7-rh1118870.patch +Patch1004: gcc7-isl-dl2.patch + +%if 0%{?rhel} >= 7 +%global nonsharedver 48 +%else +%global nonsharedver 44 +%endif + +%if 0%{?scl:1} +%global _gnu %{nil} +%else +%global _gnu 7E +%endif +%ifarch sparcv9 +%global gcc_target_platform sparc64-%{_vendor}-%{_target_os}%{?_gnu} +%endif +%ifarch ppc +%global gcc_target_platform ppc64-%{_vendor}-%{_target_os}%{?_gnu} +%endif +%ifnarch sparcv9 ppc +%global gcc_target_platform %{_target_platform} +%endif + +%description +This package provides runtime compatibility libraries for use by SAP +application binaries only. + +%prep +%setup -q -n gcc-%{version}-%{DATE} -a 1 +%patch0 -p0 -b .hack~ +%patch1 -p0 -b .ppc32-retaddr~ +%patch2 -p0 -b .i386-libgomp~ +%patch3 -p0 -b .sparc-config-detection~ +%patch4 -p0 -b .libgomp-omp_h-multilib~ +%patch5 -p0 -b .libtool-no-rpath~ +%patch8 -p0 -b .no-add-needed~ +%patch9 -p0 -b .aarch64-async-unw-tables~ +%patch10 -p0 -b .foffload-default~ +%patch11 -p0 -b .Wno-format-security~ + +%patch1000 -p0 -b .libstdc++-compat~ +%ifarch %{ix86} x86_64 +%if 0%{?rhel} < 7 +# On i?86/x86_64 there are some incompatibilities in _Decimal* as well as +# aggregates containing larger vector passing. +%patch1001 -p0 -b .alt-compat-test~ +%endif +%endif +%if 0%{?rhel} == 6 +# Fix this up +#%patch1002 -p0 -b .libstdc++44-xfail~ +%endif +%patch1003 -p0 -b .rh1118870~ + +echo 'Red Hat %{version}-%{gcc_release}' > gcc/DEV-PHASE + +%if 0%{?rhel} == 6 +# Default to -gdwarf-3 rather than -gdwarf-4 +sed -i '/UInteger Var(dwarf_version)/s/Init(4)/Init(3)/' gcc/common.opt +sed -i 's/\(may be either 2, 3 or 4; the default version is \)4\./\13./' gcc/doc/invoke.texi +%endif + +cp -a libstdc++-v3/config/cpu/i{4,3}86/atomicity.h +cp -a libstdc++-v3/config/cpu/i{4,3}86/opt + +./contrib/gcc_update --touch + +LC_ALL=C sed -i -e 's/\xa0/ /' gcc/doc/options.texi + +sed -i -e 's/Common Driver Var(flag_report_bug)/& Init(1)/' gcc/common.opt + +%ifarch ppc +if [ -d libstdc++-v3/config/abi/post/powerpc64-linux-gnu ]; then + mkdir -p libstdc++-v3/config/abi/post/powerpc64-linux-gnu/64 + mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/{,64/}baseline_symbols.txt + mv libstdc++-v3/config/abi/post/powerpc64-linux-gnu/{32/,}baseline_symbols.txt + rm -rf libstdc++-v3/config/abi/post/powerpc64-linux-gnu/32 +fi +%endif +%ifarch sparc +if [ -d libstdc++-v3/config/abi/post/sparc64-linux-gnu ]; then + mkdir -p libstdc++-v3/config/abi/post/sparc64-linux-gnu/64 + mv libstdc++-v3/config/abi/post/sparc64-linux-gnu/{,64/}baseline_symbols.txt + mv libstdc++-v3/config/abi/post/sparc64-linux-gnu/{32/,}baseline_symbols.txt + rm -rf libstdc++-v3/config/abi/post/sparc64-linux-gnu/32 +fi +%endif + +%build + +# Undo the broken autoconf change in recent Fedora versions +export CONFIG_SITE=NONE + +rm -fr obj-%{gcc_target_platform} +mkdir obj-%{gcc_target_platform} +cd obj-%{gcc_target_platform} + +%if 0%{?rhel} < 7 +mkdir mpc mpc-install +cd mpc +../../mpc-%{mpc_version}/configure --disable-shared \ + CFLAGS="${CFLAGS:-%optflags} -fPIC" CXXFLAGS="${CXXFLAGS:-%optflags} -fPIC" \ + --prefix=`cd ..; pwd`/mpc-install +make %{?_smp_mflags} +make install +cd .. +%endif + +%{?scl:PATH=%{_bindir}${PATH:+:${PATH}}} + +CC=gcc +CXX=g++ +OPT_FLAGS=`echo %{optflags}|sed -e 's/\(-Wp,\)\?-D_FORTIFY_SOURCE=[12]//g'` +OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-m64//g;s/-m32//g;s/-m31//g'` +OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-mfpmath=sse/-mfpmath=sse -msse2/g'` +OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/ -pipe / /g'` +OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-Werror=format-security/-Wformat-security/g'` +%ifarch sparc +OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-mcpu=ultrasparc/-mtune=ultrasparc/g;s/-mcpu=v[78]//g'` +%endif +%ifarch %{ix86} +OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-march=i.86//g'` +%endif +OPT_FLAGS=`echo "$OPT_FLAGS" | sed -e 's/[[:blank:]]\+/ /g'` +CONFIGURE_OPTS="\ + --prefix=%{_prefix} --mandir=%{_mandir} --infodir=%{_infodir} \ + --with-bugurl=http://bugzilla.redhat.com/bugzilla \ + --enable-shared --enable-threads=posix --enable-checking=release \ +%ifarch ppc64le + --enable-targets=powerpcle-linux --disable-multilib \ +%else + --enable-multilib \ +%endif + --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions \ + --enable-gnu-unique-object \ + --enable-linker-build-id --with-gcc-major-version-only \ + --enable-plugin --with-linker-hash-style=gnu \ + --enable-initfini-array \ + --with-default-libstdcxx-abi=gcc4-compatible \ + --disable-libquadmath \ + --disable-libsanitizer \ + --disable-libvtv \ + --disable-libgomp \ + --disable-libitm \ + --disable-libssp \ + --disable-libatomic \ + --disable-libcilkrts \ + --without-isl \ + --disable-libmpx \ +%if 0%{?rhel} < 7 + --with-mpc=`pwd`/mpc-install \ +%endif +%if 0%{?rhel} >= 7 +%if %{attr_ifunc} + --enable-gnu-indirect-function \ +%endif +%endif +%ifarch ppc ppc64 ppc64le ppc64p7 + --enable-secureplt \ +%endif +%ifarch ppc ppc64 ppc64p7 +%if 0%{?rhel} >= 7 + --with-cpu-32=power7 --with-tune-32=power7 --with-cpu-64=power7 --with-tune-64=power7 \ +%else + --with-cpu-32=power4 --with-tune-32=power6 --with-cpu-64=power4 --with-tune-64=power6 \ +%endif +%endif +%ifarch ppc64le +%if 0%{?rhel} >= 7 + --with-cpu-32=power8 --with-tune-32=power8 --with-cpu-64=power8 --with-tune-64=power8 \ +%endif +%endif +%ifarch ppc + --build=%{gcc_target_platform} --target=%{gcc_target_platform} --with-cpu=default32 +%endif +%ifarch %{ix86} x86_64 + --with-tune=generic \ +%endif +%ifarch %{ix86} + --with-arch=i686 \ +%endif +%ifarch x86_64 + --with-arch_32=i686 \ +%endif + --build=%{gcc_target_platform} \ + " + +CC="$CC" CXX="$CXX" CFLAGS="$OPT_FLAGS" \ + CXXFLAGS="`echo " $OPT_FLAGS " | sed 's/ -Wall / /g;s/ -fexceptions / /g'`" \ + XCFLAGS="$OPT_FLAGS" TCFLAGS="$OPT_FLAGS" \ + GCJFLAGS="$OPT_FLAGS" \ + ../configure --enable-bootstrap \ + --enable-languages=c,c++,lto \ + $CONFIGURE_OPTS + + +GCJFLAGS="$OPT_FLAGS" make %{?_smp_mflags} BOOT_CFLAGS="$OPT_FLAGS" + +%install +rm -fr %{buildroot} + +%{?scl:PATH=%{_bindir}${PATH:+:${PATH}}} +mkdir -p %{buildroot}%{_root_prefix}/%{_lib} +cd obj-%{gcc_target_platform} +./gcc/xgcc -v 2> %{buildroot}%{_root_prefix}/%{_lib}/README + +cp %{gcc_target_platform}/libstdc++-v3/src/.libs/libstdc++.so.6.0.* %{buildroot}%{_root_prefix}/%{_lib}/compat-sap-c++-%{gcc_version}.so +cd %{buildroot}%{_root_prefix}/%{_lib}/ +ln -sf compat-sap-c++-%{gcc_version}.so %{buildroot}%{_root_prefix}/%{_lib}/compat-sap-c++-7.so + +%check +cd obj-%{gcc_target_platform} + +%{?scl:PATH=%{_bindir}${PATH:+:${PATH}}} + +# run the tests. +make %{?_smp_mflags} -k check RUNTESTFLAGS="--target_board=unix/'{,-fstack-protector}'" || : +( LC_ALL=C ../contrib/test_summary -t || : ) 2>&1 | sed -n '/^cat.*EOF/,/^EOF/{/^cat.*EOF/d;/^EOF/d;/^LAST_UPDATED:/d;p;}' > testresults +rm -rf gcc/testsuite.prev +mv gcc/testsuite{,.prev} +rm -f gcc/site.exp +make %{?_smp_mflags} -C gcc -k check-gcc check-g++ ALT_CC_UNDER_TEST=gcc ALT_CXX_UNDER_TEST=g++ RUNTESTFLAGS="--target_board=unix/'{,-fstack-protector}' compat.exp struct-layout-1.exp" || : +mv gcc/testsuite/gcc/gcc.sum{,.sent} +mv gcc/testsuite/g++/g++.sum{,.sent} +( LC_ALL=C ../contrib/test_summary -o -t || : ) 2>&1 | sed -n '/^cat.*EOF/,/^EOF/{/^cat.*EOF/d;/^EOF/d;/^LAST_UPDATED:/d;p;}' > testresults2 +rm -rf gcc/testsuite.compat +mv gcc/testsuite{,.compat} +mv gcc/testsuite{.prev,} +echo ====================TESTING========================= +cat testresults +echo ===`gcc --version | head -1` compatibility tests==== +cat testresults2 +echo ====================TESTING END===================== +mkdir testlogs-%{_target_platform}-%{version}-%{release} +for i in `find . -name \*.log | grep -F testsuite/ | grep -v 'config.log\|acats.*/tests/'`; do + ln $i testlogs-%{_target_platform}-%{version}-%{release}/ || : +done +for i in `find gcc/testsuite.compat -name \*.log | grep -v 'config.log\|acats.*/tests/'`; do + ln $i testlogs-%{_target_platform}-%{version}-%{release}/`basename $i`.compat || : +done +tar cf - testlogs-%{_target_platform}-%{version}-%{release} | bzip2 -9c \ + | uuencode testlogs-%{_target_platform}.tar.bz2 || : +rm -rf testlogs-%{_target_platform}-%{version}-%{release} + +%clean +rm -rf %{buildroot} + +%files +%defattr(-,root,root,-) +%dir %{_root_prefix} +%dir %{_root_prefix}/%{_lib} +%{_root_prefix}/%{_lib}/compat-sap-c++-%{gcc_version}.so +%{_root_prefix}/%{_lib}/compat-sap-c++-7.so +%{_root_prefix}/%{_lib}/README + +%changelog +* Tue Nov 28 2017 Marek Polacek 7.2.1-2 +- clean up RPM dependencies (#1491573) +- include gcc -v output in the README file (#1491594) + +* Wed Nov 22 2017 Marek Polacek 7.2.1-1 +- new package