summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lldb/source/Expression/IRForTarget.cpp5
-rw-r--r--lldb/test/lang/c/strings/TestCStrings.py3
2 files changed, 8 insertions, 0 deletions
diff --git a/lldb/source/Expression/IRForTarget.cpp b/lldb/source/Expression/IRForTarget.cpp
index e9101d6f74a..b4d96552379 100644
--- a/lldb/source/Expression/IRForTarget.cpp
+++ b/lldb/source/Expression/IRForTarget.cpp
@@ -1465,6 +1465,11 @@ IRForTarget::MaterializeInitializer (uint8_t *data, Constant *initializer)
}
return true;
}
+ else if (isa<ConstantAggregateZero>(initializer))
+ {
+ memset(data, 0, m_target_data->getTypeStoreSize(initializer_type));
+ return true;
+ }
return false;
}
diff --git a/lldb/test/lang/c/strings/TestCStrings.py b/lldb/test/lang/c/strings/TestCStrings.py
index c549f0a8da0..f0a0b9175e1 100644
--- a/lldb/test/lang/c/strings/TestCStrings.py
+++ b/lldb/test/lang/c/strings/TestCStrings.py
@@ -63,6 +63,9 @@ class CStringsTestCase(TestBase):
substrs = ['(char *) $', ' = 0x',
'hello'])
+ self.expect("p (int)strlen(\"\")",
+ substrs = ['(int) $', ' = 0'])
+
if __name__ == '__main__':
import atexit
lldb.SBDebugger.Initialize()
OpenPOWER on IntegriCloud