Additional fixes following r862.

git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@864 4c0a9323-5329-0410-9bdc-e9ce6186880e
This commit is contained in:
mark@chromium.org 2011-10-11 18:43:41 +00:00
parent 305061cac0
commit 6e91e4a8fb
2 changed files with 34 additions and 31 deletions

View file

@ -46,11 +46,11 @@ namespace dwarf2reader {
struct FunctionInfo {
// Name of the function
string name;
std::string name;
// Mangled name of the function
string mangled_name;
std::string mangled_name;
// File containing this function
string file;
std::string file;
// Line number for start of function.
uint32 line;
// Beginning address for this function
@ -61,13 +61,13 @@ struct FunctionInfo {
struct SourceFileInfo {
// Name of the source file name
string name;
std::string name;
// Low address of source file name
uint64 lowpc;
};
typedef map<uint64, FunctionInfo*> FunctionMap;
typedef map<uint64, pair<string, uint32> > LineMap;
typedef std::map<uint64, FunctionInfo*> FunctionMap;
typedef std::map<uint64, std::pair<std::string, uint32> > LineMap;
// This class is a basic line info handler that fills in the dirs,
// file, and linemap passed into it with the data produced from the
@ -76,18 +76,18 @@ class CULineInfoHandler: public LineInfoHandler {
public:
//
CULineInfoHandler(vector<SourceFileInfo>* files,
vector<string>* dirs,
CULineInfoHandler(std::vector<SourceFileInfo>* files,
std::vector<std::string>* dirs,
LineMap* linemap);
virtual ~CULineInfoHandler() { }
// Called when we define a directory. We just place NAME into dirs_
// at position DIR_NUM.
virtual void DefineDir(const string& name, uint32 dir_num);
virtual void DefineDir(const std::string& name, uint32 dir_num);
// Called when we define a filename. We just place
// concat(dirs_[DIR_NUM], NAME) into files_ at position FILE_NUM.
virtual void DefineFile(const string& name, int32 file_num,
virtual void DefineFile(const std::string& name, int32 file_num,
uint32 dir_num, uint64 mod_time, uint64 length);
@ -102,14 +102,14 @@ class CULineInfoHandler: public LineInfoHandler {
private:
LineMap* linemap_;
vector<SourceFileInfo>* files_;
vector<string>* dirs_;
std::vector<SourceFileInfo>* files_;
std::vector<std::string>* dirs_;
};
class CUFunctionInfoHandler: public Dwarf2Handler {
public:
CUFunctionInfoHandler(vector<SourceFileInfo>* files,
vector<string>* dirs,
CUFunctionInfoHandler(std::vector<SourceFileInfo>* files,
std::vector<std::string>* dirs,
LineMap* linemap,
FunctionMap* offset_to_funcinfo,
FunctionMap* address_to_funcinfo,
@ -163,7 +163,7 @@ class CUFunctionInfoHandler: public Dwarf2Handler {
virtual void ProcessAttributeString(uint64 offset,
enum DwarfAttribute attr,
enum DwarfForm form,
const string& data);
const std::string& data);
// Called when finished processing the DIE at OFFSET.
// Because DWARF2/3 specifies a tree of DIEs, you may get starts
@ -172,8 +172,8 @@ class CUFunctionInfoHandler: public Dwarf2Handler {
virtual void EndDIE(uint64 offset);
private:
vector<SourceFileInfo>* files_;
vector<string>* dirs_;
std::vector<SourceFileInfo>* files_;
std::vector<std::string>* dirs_;
LineMap* linemap_;
FunctionMap* offset_to_funcinfo_;
FunctionMap* address_to_funcinfo_;