From 71bf2bef5e99aad810eb65847d878360a0042a02 Mon Sep 17 00:00:00 2001 From: Florian Weimer Date: Fri, 15 Nov 2024 12:00:47 +0100 Subject: [PATCH] Report the section name in case of section type conflicts The section name might the user a hint of what is going on. gcc/ * varasm.cc (get_section): Include name of section in diagnostic messages. --- gcc/varasm.cc | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/gcc/varasm.cc b/gcc/varasm.cc index 0712b486029..acc4b4a0419 100644 --- a/gcc/varasm.cc +++ b/gcc/varasm.cc @@ -355,17 +355,20 @@ get_section (const char *name, unsigned int flags, tree decl, && decl != sect->named.decl) { if (decl != NULL && DECL_P (decl)) - error ("%+qD causes a section type conflict with %qD", - decl, sect->named.decl); + error ("%+qD causes a section type conflict with %qD" + " in section %qs", + decl, sect->named.decl, name); else - error ("section type conflict with %qD", sect->named.decl); + error ("section type conflict with %qD in section %qs", + sect->named.decl, name); inform (DECL_SOURCE_LOCATION (sect->named.decl), "%qD was declared here", sect->named.decl); } else if (decl != NULL && DECL_P (decl)) - error ("%+qD causes a section type conflict", decl); + error ("%+qD causes a section type conflict for section %qs", + decl, name); else - error ("section type conflict"); + error ("section type conflict for section %qs", name); /* Make sure we don't error about one section multiple times. */ sect->common.flags |= SECTION_OVERRIDE; }