From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 13C293858407; Wed, 15 Sep 2021 03:50:33 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 13C293858407 From: "hv at crypt dot org" To: gcc-bugs@gcc.gnu.org Subject: [Bug tree-optimization/102329] pointer "maybe uninitialized" right after assignment Date: Wed, 15 Sep 2021 03:50:33 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: tree-optimization X-Bugzilla-Version: 11.2.0 X-Bugzilla-Keywords: diagnostic X-Bugzilla-Severity: normal X-Bugzilla-Who: hv at crypt dot 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: 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 X-BeenThere: gcc-bugs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-bugs mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Sep 2021 03:50:34 -0000 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D102329 --- Comment #2 from Hugo van der Sanden --- I guess this is justified by the second paragraph of the -Wmaybe-uninitiali= zed docs: "In addition, passing a pointer (or in C++, a reference) to an uninitialized object to a const-qualified function argument is also diagnos= ed by this warning." Firstly, I'd request for this case that the wording of the diagnostic should clarify that it's the data pointed to that may be used uninitialized rather than the pointer itself. Secondly, I think there's a case to be made that 'const void *' should specifically be exempt from this warning: that a void* is not "a pointer to= an object". (The specific call in the original code was to pthread_getspecific= (); it seems reasonable that it should take a 'const void *' as its second argument.)=