aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libiberty/ChangeLog6
-rw-r--r--libiberty/cp-demangle.c8
2 files changed, 10 insertions, 4 deletions
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog
index 75e76d6..5b36aa2 100644
--- a/libiberty/ChangeLog
+++ b/libiberty/ChangeLog
@@ -1,3 +1,9 @@
+2009-05-19 Ian Lance Taylor <iant@google.com>
+ Ben Elliston <bje@au.ibm.com>
+
+ * cp-demangle.c (cplus_demangle_fill_ctor): Fix logic bug.
+ (cplus_demangle_fill_dtor): Likewise.
+
2009-05-17 Julian Brown <julian@codesourcery.com>
* pex-win32.c (pex_win32_exec_child): Fix logic to avoid closing
diff --git a/libiberty/cp-demangle.c b/libiberty/cp-demangle.c
index b02f9bb..4f309ef 100644
--- a/libiberty/cp-demangle.c
+++ b/libiberty/cp-demangle.c
@@ -719,8 +719,8 @@ cplus_demangle_fill_ctor (struct demangle_component *p,
{
if (p == NULL
|| name == NULL
- || (kind < gnu_v3_complete_object_ctor
- && kind > gnu_v3_complete_object_allocating_ctor))
+ || (int) kind < gnu_v3_complete_object_ctor
+ || (int) kind > gnu_v3_complete_object_allocating_ctor)
return 0;
p->type = DEMANGLE_COMPONENT_CTOR;
p->u.s_ctor.kind = kind;
@@ -738,8 +738,8 @@ cplus_demangle_fill_dtor (struct demangle_component *p,
{
if (p == NULL
|| name == NULL
- || (kind < gnu_v3_deleting_dtor
- && kind > gnu_v3_base_object_dtor))
+ || (int) kind < gnu_v3_deleting_dtor
+ || (int) kind > gnu_v3_base_object_dtor)
return 0;
p->type = DEMANGLE_COMPONENT_DTOR;
p->u.s_dtor.kind = kind;