Mirror of the gdb mailing list
 help / color / mirror / Atom feed
* problem with completion and C++ mangling
@ 2000-11-28 11:18 Maciej Kalisiak
       [not found] ` <m3hf4r6ffa.fsf@dan2.cygnus.com>
  0 siblings, 1 reply; 2+ messages in thread
From: Maciej Kalisiak @ 2000-11-28 11:18 UTC (permalink / raw)
  To: gdb

Hello all,

I'm new to the list so please forgive me if this was already discussed, but
I'm extremely frustrated with this persistent problem: when doing function
completion for a "break" command in a C++ program, the C++ demangling is not
used, and thus the completion becomes useless.

Let me give you an example ("<TAB>" indicates where I press the Tab key):
[khazad-dum !28 L2 ~/src/dmg] % gdb dmg
GNU gdb 5.0
Copyright 2000 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu"...
(gdb) break Tree<TAB>
TreeExplorer
TreeExplorer type_info function
TreeExplorer type_info node
TreeExplorer virtual table
TreeExplorer::TreeExplorer(DMGraph *, unsigned short, unsigned short)
TreeExplorer::add_node_to_ann(node)
TreeExplorer::ann_search(NilXState const &)
TreeExplorer::build_nodes_on_traj(node, CtrlInp const &, vector<State, allocator<State> > const &)
TreeExplorer::develop_node(node)
TreeExplorer::execute(void)
TreeExplorer::make_ann_tree(void)
TreeExplorer::pick_node(void)
TreeExplorer::pick_traj_len(void)
TreeExplorer::reconnect(node, CtrlInp const &, vector<State, allocator<State> > const &, node)
TreeExplorer::search_k(void)
TreeExplorer::spawn(node, CtrlInp const &, vector<State, allocator<State> > const &)
TreeExplorer::update_ann_tree(void)
TreeExplorer::~TreeExplorer(void)
(gdb) break TreeExplorer::bui<TAB>
build__11TrajBuilderRt6vector2Z5StateZt9allocator1Z5StateUi
build_nodes_on_traj__12TreeExplorerG4nodeRC7CtrlInpRCt6vector2Z5StateZt9allocator1Z5State
(gdb) break TreeExplorer::build_nodes_on_traj__12TreeExplorerG4nodeRC7CtrlInpRCt6vector2Z5StateZt9allocator1Z5State
the class TreeExplorer does not have any method named build_nodes_on_traj__12TreeExplorerG4nodeRC7CtrlInpRCt6vector2Z5StateZt9allocator1Z5State
Hint: try 'TreeExplorer::build_nodes_on_traj__12TreeExplorerG4nodeRC7CtrlInpRCt6vector2Z5StateZt9allocator1Z5State<TAB> or 'TreeExplorer::build_nodes_on_traj__12TreeExplorerG4nodeRC7CtrlInpRCt6vector2Z5StateZt9allocator1Z5State<ESC-?>
(Note leading single quote.)
(gdb)


Is this a known bug, or is there some option I have to set?  Any help with this
would be greatly appreciated; it really sucks to have to type everything in.

-- 
Maciej Kalisiak		mac@dgp.toronto.edu	www.dgp.toronto.edu/~mac
From dberlin@redhat.com Tue Nov 28 11:54:00 2000
From: Daniel Berlin <dberlin@redhat.com>
To: gdb@sourceware.cygnus.com
Subject: Re: problem with completion and C++ mangling
Date: Tue, 28 Nov 2000 11:54:00 -0000
Message-id: <m3hf4r6ffa.fsf@dan2.cygnus.com>
References: <20001128141830.A2481@khazad-dum>
X-SW-Source: 2000-11/msg00265.html
Content-length: 2765

Maciej Kalisiak <mac@cs.toronto.edu> writes:

> Hello all,
> 
> I'm new to the list so please forgive me if this was already discussed, but
> I'm extremely frustrated with this persistent problem: when doing function
> completion for a "break" command in a C++ program, the C++ demangling is not
> used, and thus the completion becomes useless.
> 
> Let me give you an example ("<TAB>" indicates where I press the Tab key):
> [khazad-dum !28 L2 ~/src/dmg] % gdb dmg
> GNU gdb 5.0
> Copyright 2000 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and you are
> welcome to change it and/or distribute copies of it under certain conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB.  Type "show warranty" for details.
> This GDB was configured as "i686-pc-linux-gnu"...
> (gdb) break Tree<TAB>
> TreeExplorer
> TreeExplorer type_info function
> TreeExplorer type_info node
> TreeExplorer virtual table
> TreeExplorer::TreeExplorer(DMGraph *, unsigned short, unsigned short)
> TreeExplorer::add_node_to_ann(node)
> TreeExplorer::ann_search(NilXState const &)
> TreeExplorer::build_nodes_on_traj(node, CtrlInp const &, vector<State, allocator<State> > const &)
> TreeExplorer::develop_node(node)
> TreeExplorer::execute(void)
> TreeExplorer::make_ann_tree(void)
> TreeExplorer::pick_node(void)
> TreeExplorer::pick_traj_len(void)
> TreeExplorer::reconnect(node, CtrlInp const &, vector<State, allocator<State> > const &, node)
> TreeExplorer::search_k(void)
> TreeExplorer::spawn(node, CtrlInp const &, vector<State, allocator<State> > const &)
> TreeExplorer::update_ann_tree(void)
> TreeExplorer::~TreeExplorer(void)
> (gdb) break TreeExplorer::bui<TAB>
> build__11TrajBuilderRt6vector2Z5StateZt9allocator1Z5StateUi
> build_nodes_on_traj__12TreeExplorerG4nodeRC7CtrlInpRCt6vector2Z5StateZt9allocator1Z5State
> (gdb) break TreeExplorer::build_nodes_on_traj__12TreeExplorerG4nodeRC7CtrlInpRCt6vector2Z5StateZt9allocator1Z5State
> the class TreeExplorer does not have any method named build_nodes_on_traj__12TreeExplorerG4nodeRC7CtrlInpRCt6vector2Z5StateZt9allocator1Z5State
> Hint: try 'TreeExplorer::build_nodes_on_traj__12TreeExplorerG4nodeRC7CtrlInpRCt6vector2Z5StateZt9allocator1Z5State<TAB> or 'TreeExplorer::build_nodes_on_traj__12TreeExplorerG4nodeRC7CtrlInpRCt6vector2Z5StateZt9allocator1Z5State<ESC-?>
> (Note leading single quote.)
> (gdb)
> 
> Is this a known bug, or is there some option I have to set?  Any help with this
> would be greatly appreciated; it really sucks to have to type
> everything in.
It's a known bug, with a patch to fix it to go into CVS soon.

Until then, just add a single quote before the C++ name, and
completion will work fine.

--Dan


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: problem with completion and C++ mangling
       [not found] ` <m3hf4r6ffa.fsf@dan2.cygnus.com>
@ 2000-11-28 12:19   ` Maciej Kalisiak
  0 siblings, 0 replies; 2+ messages in thread
From: Maciej Kalisiak @ 2000-11-28 12:19 UTC (permalink / raw)
  To: gdb

On Tue, Nov 28, 2000 at 02:54:17PM -0500, Daniel Berlin wrote:
> It's a known bug, with a patch to fix it to go into CVS soon.

I see.  Forgive another newbie question: when is the next version of gdb
expected (or the one that would in all likelyhood include the said patch)?  I
can wait, but I just would like to know when I should revisit this issue
again, i.e. download a fixed version... (I'm not keen on builiding from CVS,
as I'd rather use a prebuilt version from my distribution)

> Until then, just add a single quote before the C++ name, and
> completion will work fine.

Ah, great, now I can get on with my debugging, thanks.

-- 
Maciej Kalisiak		mac@dgp.toronto.edu	www.dgp.toronto.edu/~mac
From shebs@apple.com Tue Nov 28 12:33:00 2000
From: Stan Shebs <shebs@apple.com>
To: Eli Zaretskii <eliz@is.elta.co.il>
Cc: kevinb@cygnus.com, gdb@sourceware.cygnus.com
Subject: Re: gdb@gnu.org Discussion
Date: Tue, 28 Nov 2000 12:33:00 -0000
Message-id: <3A24169E.9EE71B8D@apple.com>
References: <3A1CA166.A24792EF@cygnus.com> <1001123095026.ZM7306@ocotillo.lan> <3A1F0804.6BB7E0AC@apple.com> <200011250745.CAA29442@indy.delorie.com>
X-SW-Source: 2000-11/msg00267.html
Content-length: 1384

Eli Zaretskii wrote:
> 
> With all due respect to the GCC steering committee and the job it
> performs, I'd like to point out that the GDB development team has
> quite a different style of making decisions than the GCC team.  The
> most prominent evidence to the difference in style is the relatively
> high number of discussions on GCC-related forums where people get
> flamed or treated with vitriol, for no good reason, while discussing
> design issues; such incidents are practically absent from GDB forums.
> 'Nuff said.

An interesting insight, I've been ruminating on it.

I think the differences are mainly due to individual personalities;
at the risk of angering *everybody* by generalizing :-) , I'll observe
that GCC developers have tended to be more abrasive online than GDB
developers.  This has been the case for a long time, at least since 1993,
when I started at Cygnus fulltime.  Indeed, the GCC committee has
helped to tone this down, by publicly reining in people who've gone
out of bounds; on the old gcc2 list, there were few expectations
of civility, and things would get pretty hot regularly.

Discussion style is one thing that's under our collective control,
independent of maintainers, committees, etc.  If we each commit 
ourselves to not flame, and to respond temperately to flames by others,
the overall tone of the discussion will always be civil.

Stan
From Denset.Serralta@radisys.com Tue Nov 28 13:25:00 2000
From: Denset.Serralta@radisys.com
To: gdb@sources.redhat.com
Subject: GDB does not step into or over "sleep" function
Date: Tue, 28 Nov 2000 13:25:00 -0000
Message-id: <OF1D06565A.B14B41CD-ON852569A5.0073B7D2@radisys.com>
X-SW-Source: 2000-11/msg00268.html
Content-length: 684

We are using GDB 4.18 on an NT host to debug target software running on a
PowerPC based adapter. We are using a function called ProcessSleep which is
a call to our kernel.  It basically allocates a semaphore, blocks on it
subject to a user specified timeout and then returns the semaphore.One
problem we can't seem to get around though is that if the process being
debugged makes a 'ProcessSleep' call, the debugger never gains control when
we step over it.  Even if we set a breakpoint past the call and let it run,
it never returns.  A status utility that we have shows the process as
queued, but we never regain control.  Does anybody know any reason(s) why
this should happen.




^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2000-11-28 12:19 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-11-28 11:18 problem with completion and C++ mangling Maciej Kalisiak
     [not found] ` <m3hf4r6ffa.fsf@dan2.cygnus.com>
2000-11-28 12:19   ` Maciej Kalisiak

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox