aboutsummaryrefslogtreecommitdiff
path: root/gdb/values.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/values.c')
-rw-r--r--gdb/values.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/gdb/values.c b/gdb/values.c
index b8407e1..cc90caa 100644
--- a/gdb/values.c
+++ b/gdb/values.c
@@ -33,6 +33,7 @@
#include "scm-lang.h"
#include "demangle.h"
#include "doublest.h"
+#include "gdb_assert.h"
/* Prototypes for exported functions. */
@@ -971,14 +972,18 @@ value_fn_field (value_ptr *arg1p, struct fn_field *f, int j, struct type *type,
struct minimal_symbol *msym;
sym = lookup_symbol (physname, 0, VAR_NAMESPACE, 0, NULL);
- if (!sym)
+ if (sym != NULL)
{
+ msym = NULL;
+ }
+ else
+ {
+ gdb_assert (sym == NULL);
msym = lookup_minimal_symbol (physname, NULL, NULL);
+ if (msym == NULL)
+ return NULL;
}
- if (!sym && !msym)
- return NULL;
-
v = allocate_value (ftype);
if (sym)
{