]> git.pld-linux.org Git - packages/gcc.git/blob - Revert-eeb6872bf.patch
- release 2, oneline fix for sigsegv in libgomp
[packages/gcc.git] / Revert-eeb6872bf.patch
1 commit 43d83a70267a9e5c456d28de8e7348820446b712
2 Author: BartÅ‚omiej Piotrowski <bpiotrowski@archlinux.org>
3 Date:   Tue May 16 07:50:42 2017 +0200
4
5     Revert "Prevent LTO wrappers to process a recursive execution"
6     
7     This reverts commit eeb6872bfdfd1e71b27de6f62a5f5c08a2efb015.
8
9 diff --git a/gcc/file-find.c b/gcc/file-find.c
10 index b072a4993d76..b5a1fe8494e8 100644
11 --- a/gcc/file-find.c
12 +++ b/gcc/file-find.c
13 @@ -208,38 +208,3 @@ prefix_from_string (const char *p, struct path_prefix *pprefix)
14      }
15    free (nstore);
16  }
17 -
18 -void
19 -remove_prefix (const char *prefix, struct path_prefix *pprefix)
20 -{
21 -  struct prefix_list *remove, **prev, **remove_prev = NULL;
22 -  int max_len = 0;
23 -
24 -  if (pprefix->plist)
25 -    {
26 -      prev = &pprefix->plist;
27 -      for (struct prefix_list *pl = pprefix->plist; pl->next; pl = pl->next)
28 -       {
29 -         if (strcmp (prefix, pl->prefix) == 0)
30 -           {
31 -             remove = pl;
32 -             remove_prev = prev;
33 -             continue;
34 -           }
35 -
36 -         int l = strlen (pl->prefix);
37 -         if (l > max_len)
38 -           max_len = l;
39 -
40 -         prev = &pl;
41 -       }
42 -
43 -      if (remove_prev)
44 -       {
45 -         *remove_prev = remove->next;
46 -         free (remove);
47 -       }
48 -
49 -      pprefix->max_len = max_len;
50 -    }
51 -}
52 diff --git a/gcc/file-find.h b/gcc/file-find.h
53 index 8f49a3af273e..407feba26e74 100644
54 --- a/gcc/file-find.h
55 +++ b/gcc/file-find.h
56 @@ -41,7 +41,6 @@ extern void find_file_set_debug (bool);
57  extern char *find_a_file (struct path_prefix *, const char *, int);
58  extern void add_prefix (struct path_prefix *, const char *);
59  extern void add_prefix_begin (struct path_prefix *, const char *);
60 -extern void remove_prefix (const char *prefix, struct path_prefix *);
61  extern void prefix_from_env (const char *, struct path_prefix *);
62  extern void prefix_from_string (const char *, struct path_prefix *);
63  
64 diff --git a/gcc/gcc-ar.c b/gcc/gcc-ar.c
65 index 78d2fc1ad306..d5d80e042e5a 100644
66 --- a/gcc/gcc-ar.c
67 +++ b/gcc/gcc-ar.c
68 @@ -194,14 +194,6 @@ main (int ac, char **av)
69  #ifdef CROSS_DIRECTORY_STRUCTURE
70        real_exe_name = concat (target_machine, "-", PERSONALITY, NULL);
71  #endif
72 -      /* Do not search original location in the same folder.  */
73 -      char *exe_folder = lrealpath (av[0]);
74 -      exe_folder[strlen (exe_folder) - strlen (lbasename (exe_folder))] = '\0';
75 -      char *location = concat (exe_folder, PERSONALITY, NULL);
76 -
77 -      if (access (location, X_OK) == 0)
78 -       remove_prefix (exe_folder, &path);
79 -
80        exe_name = find_a_file (&path, real_exe_name, X_OK);
81        if (!exe_name)
82         {
This page took 0.03872 seconds and 3 git commands to generate.