From patchwork Tue Jan 16 11:17:56 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eric Botcazou X-Patchwork-Id: 1887042 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; secure) header.d=adacore.com header.i=@adacore.com header.a=rsa-sha256 header.s=google header.b=RPwZ9OUA; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=8.43.85.97; helo=server2.sourceware.org; envelope-from=gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=patchwork.ozlabs.org) Received: from server2.sourceware.org (server2.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4TDmjC3Prsz1yPV for ; Tue, 16 Jan 2024 22:18:39 +1100 (AEDT) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 43183385840E for ; Tue, 16 Jan 2024 11:18:37 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from mail-wr1-x42b.google.com (mail-wr1-x42b.google.com [IPv6:2a00:1450:4864:20::42b]) by sourceware.org (Postfix) with ESMTPS id 234563858C74 for ; Tue, 16 Jan 2024 11:17:59 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 234563858C74 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=adacore.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=adacore.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 234563858C74 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::42b ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1705403890; cv=none; b=LAmXwQu6m2hzlW/PLX12RpxFzYGOybYeYOxLQnQUBaaNECd3lanGeFpYLHqJ1ZXM3Bo4h1yEPbsXXARcySuIK3iGP2bVx7RU5xKoRmbPAvo8eAzGPXar2uD0V33vrp6rOjuxA/8uLUfF/042Jy7Bx7V0n4YcII6IRSi1zHYAdFA= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1705403890; c=relaxed/simple; bh=2tEMEu5w7ewqPyYDVAFJB1oygZ0OjhI/Y2qLne2j53Q=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=AYBg56rRwLuSIk4kFnSktbBRPvBIvX04uzz5cWd/3r8RIdVNjYV+T0cogQe+hku53ICGGSONLUZfTzWMxybrN+SHo787S0ZxHFTIYILq5bLIJgOhGSBLAAmN1l4ngg/JUfL8Fsd9pBIRkeQN6JsUY5UoUHaWUVnEPoRZ0DTZfJ4= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-wr1-x42b.google.com with SMTP id ffacd0b85a97d-337be1326e3so218950f8f.2 for ; Tue, 16 Jan 2024 03:17:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=adacore.com; s=google; t=1705403878; x=1706008678; darn=gcc.gnu.org; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:from:to:cc:subject:date:message-id:reply-to; bh=z3mRNUscV+R6aThGp77m5oUBEfhK2sE+XMwpfwTFvaQ=; b=RPwZ9OUAQObECJI7UGR+Q95bH02q1h4edSxAXzZlfRVbToXopKdsjdBIVdJD9FsBWz W+QiIu3IX9GFEDlJ/XRWhS70yVDFUGr3jgFKYkOEwGtWUSZfQZWGv9wfpM/A9rVn33hR Uex8j3Sy9ncgn1fHGtBe4NtFBvmBPHsIreLNDgv4BB1Oz3wELgym1wphQ4zHqVdfEqyS bVb7Sh6VMWbrrYVYXMbiI5vg+QhizEKVvKeEAHxKm0UnWaWgNYXwL95QXEHQxZB6MPjR r6LK6sLBjT5cv7XBSm7wbZsBINQ/5jEHDX+KbFdMvUM33e8bTbuysfDvRsgcUCd1VyhW rhvg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1705403878; x=1706008678; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=z3mRNUscV+R6aThGp77m5oUBEfhK2sE+XMwpfwTFvaQ=; b=m6nJBIOb78K2F7a8xywd1oQ7qYiGFqHiyx59iuuj8vZziFYTiA5g4HT8NGMvasp9zG DHNvDfcNwUu3OhXiCI8lPD7V0j9q8o2pcQvkZDE9NcFzvb/lJzvVOPL3p6lLdmHo61Uc sesWDMMSKNL5PdRRHLMCgxcCxA1AI4dXNuavHo2/VLU+juK09wSTNccDT60ElHoTSOHP Qz1ZUrQ+3ctVzLkk0pqFxwkIvjP01sU6fw1iKzjvQakGpld11c7aIhHx++339NLSijFC Ja7GFydoL+xEZgnwL7+MEiy1yo3Jz8hnuUXnvX7liEuHJNpwwiMzHYshCCkJL2oQCabP P1iA== X-Gm-Message-State: AOJu0YzArXVzwNI7PFn4wKopKKNNRPOJb9A5DfVQVFQl4eZRm2wHWWjj 3xaK0Q8EOF6KL3tZZyQ0DuZPA4+5UYxsmBwKGbb8X3r0sg== X-Google-Smtp-Source: AGHT+IGKmn9OZj0rMeEd+v8LQYuSo3V464QE0jxv3WnLiFnD59wR8o1tBKsYAUyWcZWSqo+7YXq5tQ== X-Received: by 2002:a05:600c:331c:b0:40e:541b:1c32 with SMTP id q28-20020a05600c331c00b0040e541b1c32mr4459672wmp.106.1705403877919; Tue, 16 Jan 2024 03:17:57 -0800 (PST) Received: from fomalhaut.localnet ([2a01:e0a:8d5:d990:e654:e8ff:fe8f:2ce6]) by smtp.gmail.com with ESMTPSA id u6-20020a05600c138600b0040d5a9d6b68sm23061024wmf.6.2024.01.16.03.17.57 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 16 Jan 2024 03:17:57 -0800 (PST) From: Eric Botcazou X-Google-Original-From: Eric Botcazou To: gcc-patches@gcc.gnu.org Subject: [c-family] Fix PR ada/113397 Date: Tue, 16 Jan 2024 12:17:56 +0100 Message-ID: <2170135.irdbgypaU6@fomalhaut> MIME-Version: 1.0 X-Spam-Status: No, score=-10.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_NUMSUBJECT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org It is a regression on the mainline for -fdump-ada-spec in a pathological case. Tested on x86-64/Linux, applied on the mainline. 2024-01-16 Eric Botcazou PR ada/113397 * c-ada-spec.cc (check_type_name_conflict): Add guard for the presence of DECL_NAME on a TYPE_DECL. diff --git a/gcc/c-family/c-ada-spec.cc b/gcc/c-family/c-ada-spec.cc index 7d886c0f92e..4b245ed6975 100644 --- a/gcc/c-family/c-ada-spec.cc +++ b/gcc/c-family/c-ada-spec.cc @@ -1566,6 +1566,8 @@ check_type_name_conflict (pretty_printer *buffer, tree t) s = ""; else if (TREE_CODE (TYPE_NAME (tmp)) == IDENTIFIER_NODE) s = IDENTIFIER_POINTER (TYPE_NAME (tmp)); + else if (!DECL_NAME (TYPE_NAME (tmp))) + s = ""; else s = IDENTIFIER_POINTER (DECL_NAME (TYPE_NAME (tmp)));