Bug 10461

Summary: Enhance support for probing C++ binaries
Product: systemtap Reporter: Josh Stone <jistone>
Component: tapsetsAssignee: Josh Stone <jistone>
Status: RESOLVED FIXED    
Severity: normal CC: fche
Priority: P2    
Version: unspecified   
Target Milestone: ---   
Host: Target:
Build: Last reconfirmed:
Bug Depends on: 10512, 10572, 10573    
Bug Blocks:    

Description Josh Stone 2009-07-29 23:46:20 UTC
stap can already somewhat support C++, just because of the similarity to C.  To
have better support we need:

- proper handling of C++-name mangling when specifying the function to probe.
- support for C++-specific types -- classes, references, etc.

(bonus)
- library functions to simplify accessing the contents of some common STL types,
like string and vector.
- tapsets for throwing & catching exceptions.

Anything else?
Comment 1 Josh Stone 2009-08-28 23:54:28 UTC
(In reply to comment #0)
> - support for C++-specific types -- classes, references, etc.

This piece is done in commit 9c11995.

For other features, I'm filing separate bugs and marking the dependency back to
this one.
Comment 2 Josh Stone 2009-09-17 03:10:07 UTC
(In reply to comment #0)
> - proper handling of C++-name mangling when specifying the function to probe.

I found out that debuginfo names aren't actually mangled, but commit 7d6d0afc
adds support for matching the namespace/class scope of the function.

With that, I think our C++ support is pretty solid.  I just need to write some
testcases now to ensure that it continues to work.
Comment 3 Frank Ch. Eigler 2011-05-16 21:30:16 UTC
effectively completed