This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
PATCH: Define wildcardp as a macro with strpbrk
- From: "H. J. Lu" <hjl at lucon dot org>
- To: binutils at sources dot redhat dot com
- Date: Tue, 24 Aug 2004 16:16:55 -0700
- Subject: PATCH: Define wildcardp as a macro with strpbrk
We don't need to reinvent the wheel.
H.J.
----
2004-08-24 H.J. Lu <hongjiu.lu@intel.com>
* ldlang.c (wildcardp): Defined as a macro with strpbrk.
--- ld/ldlang.c.wc 2004-07-26 18:23:27.000000000 -0700
+++ ld/ldlang.c 2004-08-24 16:13:13.811538692 -0700
@@ -67,7 +67,6 @@ static struct bfd_hash_table lang_define
/* Forward declarations. */
static void exp_init_os (etree_type *);
static void init_map_userdata (bfd *, asection *, void *);
-static bfd_boolean wildcardp (const char *);
static lang_input_statement_type *lookup_name (const char *);
static bfd_boolean load_symbols (lang_input_statement_type *,
lang_statement_list_type *);
@@ -107,6 +106,13 @@ int lang_statement_iteration = 0;
etree_type *base; /* Relocation base - or null */
+/* Return TRUE if the PATTERN argument is a wildcard pattern.
+ Although backslashes are treated specially if a pattern contains
+ wildcards, we do not consider the mere presence of a backslash to
+ be enough to cause the pattern to be treated as a wildcard.
+ That lets us handle DOS filenames more naturally. */
+#define wildcardp(pattern) strpbrk ((pattern), "?*[")
+
#define new_stat(x, y) \
(x##_type *) new_statement (x##_enum, sizeof (x##_type), y)
@@ -909,25 +915,6 @@ section_already_linked (bfd *abfd, asect
explicit actions, like foo.o(.text), bar.o(.text) and
foo.o(.text, .data). */
-/* Return TRUE if the PATTERN argument is a wildcard pattern.
- Although backslashes are treated specially if a pattern contains
- wildcards, we do not consider the mere presence of a backslash to
- be enough to cause the pattern to be treated as a wildcard.
- That lets us handle DOS filenames more naturally. */
-
-static bfd_boolean
-wildcardp (const char *pattern)
-{
- const char *s;
-
- for (s = pattern; *s != '\0'; ++s)
- if (*s == '?'
- || *s == '*'
- || *s == '[')
- return TRUE;
- return FALSE;
-}
-
/* Add SECTION to the output section OUTPUT. Do this by creating a
lang_input_section statement which is placed at PTR. FILE is the
input file which holds SECTION. */