From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id CB89E385840D; Wed, 24 Apr 2024 17:10:01 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org CB89E385840D DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1713978601; bh=c9jrNBmINQRV/85oJnSxHPTMOPrXtVFnkPARsibTKJU=; h=From:To:Subject:Date:From; b=QF4PIutWKIArpYhtjnclZdjqCDsn9AkfH3zH2SS3yiTCQ/JuSlllrAEMl/bMV92Hi OtWj3cD1qXgSyPUtBPXjK2y11DbZFIlXDeLUqeau6oPRwYEPlkDcOqMgbO2jGVZZwI z+VHlQbHngrtkNvDqqTp48jaodWKUTCd9eGjh4c4= From: "pexu@gcc-bugzilla.mail.kapsi.fi" To: gcc-bugs@gcc.gnu.org Subject: [Bug libstdc++/114838] New: __gthread_cond_t et. al. used unconditionally by std_mutex.h Date: Wed, 24 Apr 2024 17:10:01 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: libstdc++ X-Bugzilla-Version: 14.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: pexu@gcc-bugzilla.mail.kapsi.fi 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: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter target_milestone Message-ID: 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=3D114838 Bug ID: 114838 Summary: __gthread_cond_t et. al. used unconditionally by std_mutex.h Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: pexu@gcc-bugzilla.mail.kapsi.fi Target Milestone: --- Hi. libstdc++/include/bits/std_mutex.h, which is included by , currently uses internal condition variable types __gthread_cond_t et. al. unconditionally.=20=20 However, these types might be unavailable. For an example, libgcc/config/i386/gthr-win32.h (i.e. Windows targets) only defines these (and __GTHREAD_HAS_COND) if _WIN32_WINNT >=3D 0x0600.=20 Unfortunately, it is possible, that _WIN32_WINNT is set by default to a low= er value. Such is the case with gdb and it uses 0x0501 by default. As of writing, both 0x0501 (Windows XP, EOL 2014) and 0x0600 (Windows Vista, EOL 2017) have been out of support for a number of years. This issue is also present on GCC 13.=