Darwin: Fix gdb compilation.
Due to changes introduced by
commit 4d01a485d29732b19743e8b138897f3509e071b0
('struct expression *' -> gdb::unique_xmalloc_ptr<expression>)
compilation is broken on Darwin.
../gdb/darwin-nat-info.c:733:8: error: assigning to 'struct expression *'
from incompatible type
'expression_up' (aka 'std::__1::unique_ptr<expression, gdb::xfree_deleter<expression> >')
expr = parse_expression (exp);
Beside compilation, memory leak was solved as 'make_clean_up' was not called in previous
version.
2016-12-16 Bernhard Heckel <bernhard.heckel@intel.com>
gdb/Changelog:
* darwin-nat-info.c (info_mach_region_command): Use expression_up.
Change-Id: I863128c4755877789ef0f479415b7709784b3e17
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 4431e74..30779c0 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -16,6 +16,10 @@
* aarch64-fuchsia-tdep.h: New file.
* configure.tgt: Add aarch64-*-fuchsia*.
+2016-12-16 Bernhard Heckel <bernhard.heckel@intel.com>
+
+ * darwin-nat-info.c (info_mach_region_command): Use expression_up.
+
2016-12-16 Doug Evans <dje@google.com>
* objfile-flags.h (objfile_flag): Add comment.
diff --git a/gdb/darwin-nat-info.c b/gdb/darwin-nat-info.c
index 314d265..0262026 100644
--- a/gdb/darwin-nat-info.c
+++ b/gdb/darwin-nat-info.c
@@ -725,13 +725,12 @@
static void
info_mach_region_command (char *exp, int from_tty)
{
- struct expression *expr;
struct value *val;
mach_vm_address_t address;
struct inferior *inf;
- expr = parse_expression (exp);
- val = evaluate_expression (expr);
+ expression_up expr = parse_expression (exp);
+ val = evaluate_expression (expr.get ());
if (TYPE_CODE (value_type (val)) == TYPE_CODE_REF)
{
val = value_ind (val);