From f75fe01b2be3cbf4071f07378251e27b4be167cf Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Tue, 7 Sep 2004 21:35:45 +0000 Subject: 2004-09-03 Alfred M. Szmidt * store.h (__start_store_std_classes, __stop_store_std_classes): Declare using __attribute__ ((weak)). * typed.c (store_find_class): Removed `#pragma weak' for `__stop_store_std_classes' and `__start_store_std_classes'. --- libstore/store.h | 7 ++++--- libstore/typed.c | 4 +--- 2 files changed, 5 insertions(+), 6 deletions(-) (limited to 'libstore') diff --git a/libstore/store.h b/libstore/store.h index 9d9ee712..e6607237 100644 --- a/libstore/store.h +++ b/libstore/store.h @@ -1,6 +1,6 @@ /* Store I/O - Copyright (C) 1995,96,97,98,99,2001,02 Free Software Foundation, Inc. + Copyright (C) 1995,96,97,98,99,2001,02,04 Free Software Foundation, Inc. Written by Miles Bader This file is part of the GNU Hurd. @@ -630,8 +630,9 @@ extern const struct store_class store_mvol_class; __attribute__ ((unused, section ("store_std_classes"))) \ = { &store_##name##_class } -extern const struct store_class *const __start_store_std_classes[]; -extern const struct store_class *const __stop_store_std_classes[]; + +extern const struct store_class *const __start_store_std_classes[] __attribute__ ((weak)); +extern const struct store_class *const __stop_store_std_classes[] __attribute__ ((weak)); /* Used to hold the various bits that make up the representation of a store for transmission via rpc. See for an explanation of diff --git a/libstore/typed.c b/libstore/typed.c index 814d6a05..b1be747d 100644 --- a/libstore/typed.c +++ b/libstore/typed.c @@ -1,6 +1,6 @@ /* Support for opening `typed' stores - Copyright (C) 1997,1998,2001,2002,2003 Free Software Foundation, Inc. + Copyright (C) 1997,1998,2001,2002,2003,2004 Free Software Foundation, Inc. Written by Miles Bader This file is part of the GNU Hurd. @@ -53,8 +53,6 @@ store_find_class (const char *name, const char *clname_end, If a dynamically-linked program has its own "store_std_classes" section, e.g. by -lstore_TYPE objects included in the link, this will be just that section and libstore.so itself is covered below. */ -# pragma weak __start_store_std_classes -# pragma weak __stop_store_std_classes for (cl = __start_store_std_classes; cl < __stop_store_std_classes; ++cl) if (strlen ((*cl)->name) == (clname_end - name) && strncmp (name, (*cl)->name, (clname_end - name)) == 0) -- cgit v1.2.3