diff options
author | Greg Clayton <gclayton@apple.com> | 2011-01-14 04:54:56 +0000 |
---|---|---|
committer | Greg Clayton <gclayton@apple.com> | 2011-01-14 04:54:56 +0000 |
commit | ca512b397c460e47e53efd98408a3ef274e436e7 (patch) | |
tree | df7edcd194fc9aea4bea9fb52cd2fbbddb405176 /lldb/source/Core/Error.cpp | |
parent | 5ca139100383cdfb929d053099ffadb4ada12626 (diff) | |
download | bcm5719-llvm-ca512b397c460e47e53efd98408a3ef274e436e7.tar.gz bcm5719-llvm-ca512b397c460e47e53efd98408a3ef274e436e7.zip |
Fixed an error in the type map for "char **" that was a bad memory smasher.
Anytime we had a valid python list that was trying to go from Python down into
our C++ API, it was allocating too little memory and it ended up smashing
whatever was next to the allocated memory.
Added typemap conversions for "void *, size_t" so we can get
SBProcess::ReadMemory() working. Also added a typemap for "const void *, size_t"
so we can get SBProcess::WriteMemory() to work.
Fixed an issue in the DWARF parser where we weren't correctly calculating the
DeclContext for all types and classes. We now should be a lot more accurate.
Fixes include: enums should now be setting their parent decl context correctly.
We saw a lot of examples where enums in classes were not being properly
namespace scoped. Also, classes within classes now get properly scoped.
Fixed the objective C runtime pointer checkers to let "nil" pointers through
since these are accepted by compiled code. We also now don't call "abort()"
when a pointer doesn't validate correctly since this was wreaking havoc on
the process due to the way abort() works. We now just dereference memory
which should give us an exception from which we can easily and reliably
recover.
llvm-svn: 123428
Diffstat (limited to 'lldb/source/Core/Error.cpp')
-rw-r--r-- | lldb/source/Core/Error.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/lldb/source/Core/Error.cpp b/lldb/source/Core/Error.cpp index 104dfc6d693..ee7d6f21cda 100644 --- a/lldb/source/Core/Error.cpp +++ b/lldb/source/Core/Error.cpp @@ -27,6 +27,13 @@ using namespace lldb; using namespace lldb_private; +Error::Error (): + m_code (0), + m_type (eErrorTypeInvalid), + m_string () +{ +} + //---------------------------------------------------------------------- // Default constructor //---------------------------------------------------------------------- @@ -36,6 +43,14 @@ Error::Error(ValueType err, ErrorType type) : m_string () { } + +Error::Error (const Error &rhs) : + m_code (rhs.m_code), + m_type (rhs.m_type), + m_string (rhs.m_string) +{ +} + //---------------------------------------------------------------------- // Assignment operator //---------------------------------------------------------------------- |