From e219490fe733b7912a27528a03be72d78501b78f Mon Sep 17 00:00:00 2001 From: marxin Date: Thu, 19 Oct 2017 11:08:28 +0000 Subject: [PATCH] Revert r238089 (PR driver/81829). 2017-10-19 Martin Liska PR driver/81829 * file-find.c (remove_prefix): Remove. * file-find.h (remove_prefix): Likewise. * gcc-ar.c: Remove smartness of lookup. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@253886 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 7 +++++++ gcc/file-find.c | 35 ----------------------------------- gcc/file-find.h | 1 - gcc/gcc-ar.c | 8 -------- 4 files changed, 7 insertions(+), 44 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 189fe05afab..f2a46b94e57 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2017-10-19 Martin Liska + + PR driver/81829 + * file-find.c (remove_prefix): Remove. + * file-find.h (remove_prefix): Likewise. + * gcc-ar.c: Remove smartness of lookup. + 2017-10-19 Segher Boessenkool * config/rs6000/rs6000.md (*call_indirect_aix, diff --git a/gcc/file-find.c b/gcc/file-find.c index b072a4993d7..b5a1fe8494e 100644 --- a/gcc/file-find.c +++ b/gcc/file-find.c @@ -208,38 +208,3 @@ prefix_from_string (const char *p, struct path_prefix *pprefix) } free (nstore); } - -void -remove_prefix (const char *prefix, struct path_prefix *pprefix) -{ - struct prefix_list *remove, **prev, **remove_prev = NULL; - int max_len = 0; - - if (pprefix->plist) - { - prev = &pprefix->plist; - for (struct prefix_list *pl = pprefix->plist; pl->next; pl = pl->next) - { - if (strcmp (prefix, pl->prefix) == 0) - { - remove = pl; - remove_prev = prev; - continue; - } - - int l = strlen (pl->prefix); - if (l > max_len) - max_len = l; - - prev = &pl; - } - - if (remove_prev) - { - *remove_prev = remove->next; - free (remove); - } - - pprefix->max_len = max_len; - } -} diff --git a/gcc/file-find.h b/gcc/file-find.h index 8f49a3af273..407feba26e7 100644 --- a/gcc/file-find.h +++ b/gcc/file-find.h @@ -41,7 +41,6 @@ extern void find_file_set_debug (bool); extern char *find_a_file (struct path_prefix *, const char *, int); extern void add_prefix (struct path_prefix *, const char *); extern void add_prefix_begin (struct path_prefix *, const char *); -extern void remove_prefix (const char *prefix, struct path_prefix *); extern void prefix_from_env (const char *, struct path_prefix *); extern void prefix_from_string (const char *, struct path_prefix *); diff --git a/gcc/gcc-ar.c b/gcc/gcc-ar.c index 78d2fc1ad30..d5d80e042e5 100644 --- a/gcc/gcc-ar.c +++ b/gcc/gcc-ar.c @@ -194,14 +194,6 @@ main (int ac, char **av) #ifdef CROSS_DIRECTORY_STRUCTURE real_exe_name = concat (target_machine, "-", PERSONALITY, NULL); #endif - /* Do not search original location in the same folder. */ - char *exe_folder = lrealpath (av[0]); - exe_folder[strlen (exe_folder) - strlen (lbasename (exe_folder))] = '\0'; - char *location = concat (exe_folder, PERSONALITY, NULL); - - if (access (location, X_OK) == 0) - remove_prefix (exe_folder, &path); - exe_name = find_a_file (&path, real_exe_name, X_OK); if (!exe_name) { -- 2.11.4.GIT