From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 129323858C53; Thu, 29 Dec 2022 15:55:20 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 129323858C53 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1672329320; bh=YKnlmimuEnwK04NvMzD/I/UO4FkYVb4qdIc45pTOwyc=; h=From:To:Subject:Date:In-Reply-To:References:From; b=nLUz0qYgtTKyqkkeqMabylmOWzFPMKcMFaDR34iAFfQ1IC4FQPcnF0BL14Z4FP6MQ DMrK7qbbYhYzMu10GuNahZN7G0KdEwXJO4GvlAENI22HZFm2Q1vOicWNVza+dLrc70 HE3b9S0XlFcx9OJhnwuriYj72VdbsDzBn5mDDwYE= From: "danglin at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug libstdc++/108235] FAIL: g++.dg/compat/abi/bitfield1 cp_compat_x_tst.o-cp_compat_y_tst.o link Date: Thu, 29 Dec 2022 15:55:18 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: libstdc++ X-Bugzilla-Version: 13.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: danglin at gcc dot gnu.org X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: cc Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D108235 John David Anglin changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jwakely.gcc at gmail dot c= om --- Comment #1 from John David Anglin --- bash-5.1$ find . -name '*.o'|xargs /opt/gnu64/bin/nm -AC|grep atomic ./src/c++98/pool_allocator.o: U __gnu_cxx::__atomic_add(int volatile*, int) ./src/c++98/mt_allocator.o: U __gnu_cxx::__atomic_add(int volatile*, int) ./src/c++98/ios_failure.o: U __gnu_cxx::__atomic_add(int volatile*, int) ./src/c++98/ios_init.o: U __gnu_cxx::__atomic_add(int volatile*, int) ./src/c++98/locale_init.o: U __gnu_cxx::__atomic_add(int volatile*, int) ./src/c++98/locale.o: U __gnu_cxx::__atomic_add(int volatil= e*, int) ./src/c++98/localename.o: U __gnu_cxx::__atomic_add(int volatile*, int) ./src/c++98/stdexcept.o: U __gnu_cxx::__atomic_add(int volatile*, int) ./src/c++98/messages_members_cow.o: U __gnu_cxx::__atomic_add(int volatile*, int) ./src/c++11/cow-stdexcept.o: U __gnu_cxx::__atomic_add(int volatile*, int) ./src/c++11/ios-inst.o: U __gnu_cxx::__atomic_add(int volatile*, int) ./src/c++11/cow-locale_init.o: U __gnu_cxx::__atomic_add(int volatile*, int) ./src/c++11/cow-shim_facets.o: U __gnu_cxx::__atomic_add(int volatile*, int) ./src/c++11/cxx11-shim_facets.o: U __gnu_cxx::__atomic_add(= int volatile*, int) ./src/c++11/cow-string-inst.o: U __gnu_cxx::__atomic_add(int volatile*, int) ./src/c++11/cow-wstring-inst.o: U __gnu_cxx::__atomic_add(i= nt volatile*, int) ./src/c++17/fs_dir.o: U __gnu_cxx::__atomic_add(int volatil= e*, int) ./src/c++17/fs_ops.o: U __gnu_cxx::__atomic_add(int volatil= e*, int) ./src/c++17/cow-fs_dir.o: U __gnu_cxx::__atomic_add(int volatile*, int) ./src/c++17/cow-fs_ops.o: U __gnu_cxx::__atomic_add(int volatile*, int) ./src/c++17/cow-fs_path.o: U __gnu_cxx::__atomic_add(int volatile*, int) ./src/c++20/tzdb.o: U __gnu_cxx::__atomic_add(int volatile*, int) ./src/c++20/tzdb.o:0000000000000000 t void std::__atomic_notify_address(int const*, bool) [clone .isra.0] ./src/c++20/tzdb.o:0000000000000000 W void std::__atomic_wait_address_v::wait(int, std::memory_order) const::{lambda()#1}>(= int const*, int, std::__atomic_base::wait(int, std::memory_order) const::{lambda()#1}) ./src/c++20/tzdb.o: U __atomic_compare_exchange_4 ./src/c++20/tzdb.o: U __atomic_compare_exchange_8 ./src/c++20/tzdb.o: U __atomic_exchange_8 ./src/c++20/tzdb.o: U __atomic_fetch_add_4 ./src/c++20/tzdb.o: U __atomic_fetch_add_8 ./src/c++20/tzdb.o: U __atomic_fetch_sub_8 [...] I believe the direct use of the above atomic symbols was introduced in the following change: commit 9fc61d45fa15fdd3b084d30998ecda164af33e95 Author: Jonathan Wakely Date: Thu Dec 22 00:37:54 2022 +0000 libstdc++: Implement C++20 time zone support in I have the following patch to work around PR 108228: diff --git a/libstdc++-v3/src/c++20/tzdb.cc b/libstdc++-v3/src/c++20/tzdb.cc index 2a4e213d3d9..92752242096 100644 --- a/libstdc++-v3/src/c++20/tzdb.cc +++ b/libstdc++-v3/src/c++20/tzdb.cc @@ -64,8 +64,8 @@ namespace __gnu_cxx #else [[gnu::weak]] const char* zoneinfo_dir_override(); -#ifdef __APPLE__ - // Need a weak definition for Mach-O. +#if defined(__APPLE__) || defined(__hpux__) + // Need a weak definition for Mach-O and HP-UX. [[gnu::weak]] const char* zoneinfo_dir_override() { return _GLIBCXX_ZONEINFO_DIR; } #endif=