Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Tom Tromey <tromey@redhat.com>
To: Yao Qi <yao@codesourcery.com>
Cc: <gdb-patches@sourceware.org>
Subject: Re: RFC: make GNU v3 ABI the default C++ ABI
Date: Wed, 09 Jan 2013 17:25:00 -0000	[thread overview]
Message-ID: <87wqvmxo8u.fsf@fleche.redhat.com> (raw)
In-Reply-To: <50ECCDE2.4080602@codesourcery.com> (Yao Qi's message of "Wed, 9	Jan 2013 09:54:42 +0800")

Tom> This patch makes the GNU v3 ABI the default ABI.

Yao> We need a NEWS entry for this change, IMO.

Here's an updated patch.

This one needs a doc review.

Tom

	* gnu-v2-abi.c (_initialize_gnu_v2_abi): Don't set default ABI.
	* gnu-v3-abi.c (_initialize_gnu_v3_abi): Set default ABI.
	* minsyms.c (install_minimal_symbols): Don't check for _Z symbols.
	* NEWS: Update.
---
 gdb/NEWS         |    3 +++
 gdb/gnu-v2-abi.c |    1 -
 gdb/gnu-v3-abi.c |    1 +
 gdb/minsyms.c    |   23 -----------------------
 4 files changed, 4 insertions(+), 24 deletions(-)

diff --git a/gdb/NEWS b/gdb/NEWS
index 75a2119..191f726 100644
--- a/gdb/NEWS
+++ b/gdb/NEWS
@@ -44,6 +44,9 @@ Lynx 178 PowerPC		powerpc-*-lynx*178
 * The 'cd' command now defaults to using '~' (the home directory) if not
   given an argument.
 
+* The C++ ABI now defaults to the GNU v3 ABI.  This has been the
+  default for GCC since November 2000.
+
 * The command 'forward-search' can now be abbreviated as 'fo'.
 
 * The command 'info tracepoints' can now display 'installed on target'
diff --git a/gdb/gnu-v2-abi.c b/gdb/gnu-v2-abi.c
index 4a600d3..c17955a 100644
--- a/gdb/gnu-v2-abi.c
+++ b/gdb/gnu-v2-abi.c
@@ -423,5 +423,4 @@ _initialize_gnu_v2_abi (void)
 {
   init_gnuv2_ops ();
   register_cp_abi (&gnu_v2_abi_ops);
-  set_cp_abi_as_auto_default (gnu_v2_abi_ops.shortname);
 }
diff --git a/gdb/gnu-v3-abi.c b/gdb/gnu-v3-abi.c
index aef5ae0..641b2b1 100644
--- a/gdb/gnu-v3-abi.c
+++ b/gdb/gnu-v3-abi.c
@@ -1134,4 +1134,5 @@ _initialize_gnu_v3_abi (void)
   init_gnuv3_ops ();
 
   register_cp_abi (&gnu_v3_abi_ops);
+  set_cp_abi_as_auto_default (gnu_v3_abi_ops.shortname);
 }
diff --git a/gdb/minsyms.c b/gdb/minsyms.c
index 8a90668..779b9f9 100644
--- a/gdb/minsyms.c
+++ b/gdb/minsyms.c
@@ -1240,29 +1240,6 @@ install_minimal_symbols (struct objfile *objfile)
       objfile->minimal_symbol_count = mcount;
       objfile->msymbols = msymbols;
 
-      /* Try to guess the appropriate C++ ABI by looking at the names 
-	 of the minimal symbols in the table.  */
-      {
-	int i;
-
-	for (i = 0; i < mcount; i++)
-	  {
-	    /* If a symbol's name starts with _Z and was successfully
-	       demangled, then we can assume we've found a GNU v3 symbol.
-	       For now we set the C++ ABI globally; if the user is
-	       mixing ABIs then the user will need to "set cp-abi"
-	       manually.  */
-	    const char *name = SYMBOL_LINKAGE_NAME (&objfile->msymbols[i]);
-
-	    if (name[0] == '_' && name[1] == 'Z'
-		&& SYMBOL_DEMANGLED_NAME (&objfile->msymbols[i]) != NULL)
-	      {
-		set_cp_abi_as_auto_default ("gnu-v3");
-		break;
-	      }
-	  }
-      }
-
       /* Now build the hash tables; we can't do this incrementally
          at an earlier point since we weren't finished with the obstack
 	 yet.  (And if the msymbol obstack gets moved, all the internal
-- 
1.7.7.6


  reply	other threads:[~2013-01-09 17:25 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-08 16:41 Tom Tromey
2013-01-09  1:55 ` Yao Qi
2013-01-09 17:25   ` Tom Tromey [this message]
2013-01-09 17:56     ` Eli Zaretskii
2013-01-21 17:16     ` Tom Tromey

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87wqvmxo8u.fsf@fleche.redhat.com \
    --to=tromey@redhat.com \
    --cc=gdb-patches@sourceware.org \
    --cc=yao@codesourcery.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox