This is an archive of the discontinued LLVM Phabricator instance.

Improve C++ function name handling and step-in avoid regerxp handling
ClosedPublic

Authored by tberghammer on Jul 23 2015, 7:36 AM.

Details

Reviewers
labath
Summary

Improve C++ function name handling and step-in avoid regexp handling

If the function is a template then the return type is part of the
function name. This CL fixes the parsing of these function names in
the case when the return type contains ':'.

The name of free functions in C++ don't have context part. Fix the
logic getting the function name without arguments out from a full
function name to handle this case.

Change the handling of step-in-avoid-regexp to match the value against
the function name without it's arguments and return value. This is
required because the default regexp ("^std::") would match any template
function returning an std object.

Diff Detail

Event Timeline

tberghammer retitled this revision from to Improve C++ function name handling and step-in avoid regerxp handling.
tberghammer updated this object.
tberghammer added reviewers: labath, clayborg.
tberghammer added a subscriber: lldb-commits.
clayborg resigned from this revision.Jul 23 2015, 2:45 PM
clayborg removed a reviewer: clayborg.

Jim Ingham should be included as a reviewer. I am OK if he is OK with this.

I'm fine with this. It doesn't seem very useful to include the return type of templates in the name that the step-avoid regexp matches, especially since it would make the "no functions implemented in std::" regexp extremely tedious to try and write...

Jim

labath accepted this revision.Jul 24 2015, 4:28 AM
labath edited edge metadata.
This revision is now accepted and ready to land.Jul 24 2015, 4:28 AM
tberghammer closed this revision.Jul 24 2015, 5:43 AM