From 1605ef261f0f8aae0203f70f484ecb1bed35c5d6 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Mon, 21 Jan 2013 17:29:39 +0000 Subject: [PATCH] * 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/ChangeLog | 7 +++++++ gdb/NEWS | 3 +++ gdb/gnu-v2-abi.c | 1 - gdb/gnu-v3-abi.c | 1 + gdb/minsyms.c | 23 ----------------------- 5 files changed, 11 insertions(+), 24 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 0badb87..b0b8243 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,10 @@ +2013-01-21 Tom Tromey + + * 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. + 2013-01-21 Jan Kratochvil * symmisc.c (maintenance_print_msymbols): Check also ST_DEV. diff --git a/gdb/NEWS b/gdb/NEWS index 49d8447..5e24418 100644 --- a/gdb/NEWS +++ b/gdb/NEWS @@ -49,6 +49,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 -- 2.7.4