Re: [commit] reimplement AIX shared-lib support (v3)

Joel Brobecker
2013-05-08T06:15:51Z

[-- Attachment #1: Type: text/plain, Size: 1014 bytes --]

> Ah, here it is.
>
> The failure seems to be due to solib_aix_free_library_list only
> being defined if HAVE_LIBEXPAT is defined, but it is being used in
> solib_aix_normal_stop_observer regardless of HAVE_LIBEXPAT being
> defined or not.
>
> I was missing libexpat in my system, so that's why i was seeing this
> failure. Looks like it is a real GDB bug.

Ah, you are very right, and if I understand things correctly, you'd
even have a link failure if you compiled past the warning. Fixed
thusly:

gdb/ChangeLog:

* solib-aix.c (solib_aix_free_library_list): New function
for the case where HAVE_LIBEXPAT is not defined.

Although, now that I have checked the change in, I am wondering
whether I could simply move the function out of the #if defined
(and whether that might make sense or not)... The main advantage
is that we're not duplicating the function's prototype.

Not much time today, but I will keep that for tomorrow. In the meantime,
I wanted the problem to be fixed ASAP.

--
Joel

[-- Attachment #2: 0001-Dummy-implementation-of-solib_aix_free_library_list-.patch --]
[-- Type: text/x-diff, Size: 1273 bytes --]

From 786ba18d6cc536a7ccf2ac18b8e81b65758939f6 Mon Sep 17 00:00:00 2001
From: Joel Brobecker <brobecker@adacore.com>
Date: Wed, 8 May 2013 10:02:45 +0400
Subject: [PATCH] Dummy implementation of solib_aix_free_library_list if
libexpat missing.

gdb/ChangeLog:

* solib-aix.c (solib_aix_free_library_list): New function
for the case where HAVE_LIBEXPAT is not defined.
---
gdb/ChangeLog | 5 +++++
gdb/solib-aix.c | 7 +++++++
2 files changed, 12 insertions(+)

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 2506ce5..f830db6 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2013-05-08 Joel Brobecker <brobecker@adacore.com>
+
+ * solib-aix.c (solib_aix_free_library_list): New function
+ for the case where HAVE_LIBEXPAT is not defined.
+
2013-05-07 Sergio Durigan Junior <sergiodj@redhat.com>

PR breakpoints/15413:
diff --git a/gdb/solib-aix.c b/gdb/solib-aix.c
index d930769..9fa5de9 100644
--- a/gdb/solib-aix.c
+++ b/gdb/solib-aix.c
@@ -141,6 +141,13 @@ solib_aix_parse_libraries (const char *library)
return NULL;
}

+/* Dummy implementation if XML support is not compiled in. */
+
+static void
+solib_aix_free_library_list (void *p)
+{
+}
+
#else /* HAVE_LIBEXPAT */

#include "xml-support.h"
--
1.7.10.4