Annotation of /trunk/gcc/patches/gcc-4.0.2-visibility-hidden.patch
Parent Directory | Revision Log
Revision 169 -
(hide annotations)
(download)
Tue May 8 21:36:54 2007 UTC (17 years, 4 months ago) by niro
File size: 64084 byte(s)
Tue May 8 21:36:54 2007 UTC (17 years, 4 months ago) by niro
File size: 64084 byte(s)
-moved to patches subdir
1 | niro | 169 | //////////////// |
2 | 2005-05-04 H.J. Lu <hongjiu.lu@intel.com> | ||
3 | |||
4 | PR middle-end/20218 | ||
5 | * config/elfos.h (ASM_OUTPUT_EXTERNAL): New. | ||
6 | (TARGET_ASM_FILE_END): New. | ||
7 | |||
8 | * config/i386/i386-protos.h (ix86_elf_file_end): New. | ||
9 | |||
10 | * config/i386/i386.c (ix86_elf_file_end): New. | ||
11 | |||
12 | * config/i386/linux.h (TARGET_ASM_FILE_END): Defined. | ||
13 | * config/i386/linux64.h (TARGET_ASM_FILE_END): Likewise. | ||
14 | |||
15 | * config/ia64/hpux.h (TARGET_ASM_FILE_END): Removed. | ||
16 | |||
17 | * config/ia64/ia64.c (ia64_hpux_add_extern_decl): Removed. | ||
18 | (ia64_hpux_file_end): Renamed to ... | ||
19 | (ia64_file_end): This. Handle symbol with non-default | ||
20 | visibility. | ||
21 | (TARGET_ASM_FILE_END): Defined. | ||
22 | (ia64_asm_output_external): Rewritten. | ||
23 | (extern_func_list): Removed. | ||
24 | (extern_func_head): Likewise. | ||
25 | |||
26 | * output.h (default_elf_asm_output_external): New. | ||
27 | (default_elf_asm_output_external_1): New. | ||
28 | (default_elf_asm_file_end): New. | ||
29 | (maybe_assemble_visibility): New. | ||
30 | |||
31 | * tree.h (extern_symbol_list): New. | ||
32 | (extern_symbol_head): New. | ||
33 | |||
34 | * varasm.c (maybe_assemble_visibility): Make it extern and | ||
35 | return int. | ||
36 | (extern_symbol_head): New. | ||
37 | (default_elf_asm_output_external_1): New. | ||
38 | (default_elf_asm_output_external): New. | ||
39 | (default_elf_asm_file_end): New. | ||
40 | |||
41 | 2005-02-03 H.J. Lu <hongjiu.lu@intel.com> | ||
42 | |||
43 | PR C++/19664 | ||
44 | * decl2.c (determine_visibility): Don't set visibility to | ||
45 | hidden if it has been set explicitly by user. | ||
46 | 2005-05-20 Paolo Carlini <pcarlini@suse.de> | ||
47 | |||
48 | PR libstdc++/19664 | ||
49 | * include/c_std/std_cassert.h: Wrap in pragma visibility push/pop. | ||
50 | * include/c_std/std_cctype.h: Likewise. | ||
51 | * include/c_std/std_cerrno.h: Likewise. | ||
52 | * include/c_std/std_cfloat.h: Likewise. | ||
53 | * include/c_std/std_climits.h: Likewise. | ||
54 | * include/c_std/std_clocale.h: Likewise. | ||
55 | * include/c_std/std_cmath.h: Likewise. | ||
56 | * include/c_std/std_csetjmp.h: Likewise. | ||
57 | * include/c_std/std_csignal.h: Likewise. | ||
58 | * include/c_std/std_cstdarg.h: Likewise. | ||
59 | * include/c_std/std_cstddef.h: Likewise. | ||
60 | * include/c_std/std_cstdio.h: Likewise. | ||
61 | * include/c_std/std_cstdlib.h: Likewise. | ||
62 | * include/c_std/std_cstring.h: Likewise. | ||
63 | * include/c_std/std_ctime.h: Likewise. | ||
64 | * include/c_std/std_cwchar.h: Likewise. | ||
65 | * include/c_std/std_cwctype.h: Likewise. | ||
66 | * include/debug/bitset: Likewise. | ||
67 | * include/debug/deque: Likewise. | ||
68 | * include/debug/hash_map: Likewise. | ||
69 | * include/debug/hash_set: Likewise. | ||
70 | * include/debug/list: Likewise. | ||
71 | * include/debug/map: Likewise. | ||
72 | * include/debug/set: Likewise. | ||
73 | * include/debug/string: Likewise. | ||
74 | * include/debug/vector: Likewise. | ||
75 | * include/ext/algorithm: Likewise. | ||
76 | * include/ext/array_allocator.h: Likewise. | ||
77 | * include/ext/bitmap_allocator.h: Likewise. | ||
78 | * include/ext/debug_allocator.h: Likewise. | ||
79 | * include/ext/functional: Likewise. | ||
80 | * include/ext/hash_map: Likewise. | ||
81 | * include/ext/hash_set: Likewise. | ||
82 | * include/ext/iterator: Likewise. | ||
83 | * include/ext/malloc_allocator.h: Likewise. | ||
84 | * include/ext/memory: Likewise. | ||
85 | * include/ext/mt_allocator.h: Likewise. | ||
86 | * include/ext/new_allocator.h: Likewise. | ||
87 | * include/ext/numeric: Likewise. | ||
88 | * include/ext/pod_char_traits.h: Likewise. | ||
89 | * include/ext/pool_allocator.h: Likewise. | ||
90 | * include/ext/rb_tree: Likewise. | ||
91 | * include/ext/rope: Likewise. | ||
92 | * include/ext/slist: Likewise. | ||
93 | * include/ext/stdio_filebuf.h: Likewise. | ||
94 | * include/ext/stdio_sync_filebuf.h: Likewise. | ||
95 | * include/std/std_algorithm.h: Likewise. | ||
96 | * include/std/std_bitset.h: Likewise. | ||
97 | * include/std/std_complex.h: Likewise. | ||
98 | * include/std/std_deque.h: Likewise. | ||
99 | * include/std/std_fstream.h: Likewise. | ||
100 | * include/std/std_functional.h: Likewise. | ||
101 | * include/std/std_iomanip.h: Likewise. | ||
102 | * include/std/std_ios.h: Likewise. | ||
103 | * include/std/std_iosfwd.h: Likewise. | ||
104 | * include/std/std_iostream.h: Likewise. | ||
105 | * include/std/std_istream.h: Likewise. | ||
106 | * include/std/std_iterator.h: Likewise. | ||
107 | * include/std/std_limits.h: Likewise. | ||
108 | * include/std/std_list.h: Likewise. | ||
109 | * include/std/std_locale.h: Likewise. | ||
110 | * include/std/std_map.h: Likewise. | ||
111 | * include/std/std_memory.h: Likewise. | ||
112 | * include/std/std_numeric.h: Likewise. | ||
113 | * include/std/std_ostream.h: Likewise. | ||
114 | * include/std/std_queue.h: Likewise. | ||
115 | * include/std/std_set.h: Likewise. | ||
116 | * include/std/std_sstream.h: Likewise. | ||
117 | * include/std/std_stack.h: Likewise. | ||
118 | * include/std/std_stdexcept.h: Likewise. | ||
119 | * include/std/std_streambuf.h: Likewise. | ||
120 | * include/std/std_string.h: Likewise. | ||
121 | * include/std/std_utility.h: Likewise. | ||
122 | * include/std/std_valarray.h: Likewise. | ||
123 | * include/std/std_vector.h: Likewise. | ||
124 | * include/tr1/array: Likewise. | ||
125 | * include/tr1/functional: Likewise. | ||
126 | * include/tr1/memory: Likewise. | ||
127 | * include/tr1/tuple: Likewise. | ||
128 | * include/tr1/type_traits: Likewise. | ||
129 | * include/tr1/unordered_map: Likewise. | ||
130 | * include/tr1/unordered_set: Likewise. | ||
131 | * include/tr1/utility: Likewise. | ||
132 | * testsuite/20_util/memory/auto_ptr/assign_neg.cc: Adjust | ||
133 | dg-error line numbers. | ||
134 | ================================================================================ | ||
135 | --- gcc/config/elfos.h | ||
136 | +++ gcc/config/elfos.h | ||
137 | @@ -487,3 +487,17 @@ | ||
138 | fprintf ((FILE), "\"\n"); \ | ||
139 | } \ | ||
140 | while (0) | ||
141 | + | ||
142 | +/* A C statement (sans semicolon) to output to the stdio stream STREAM | ||
143 | + any text necessary for declaring the name of an external symbol | ||
144 | + named NAME whch is referenced in this compilation but not defined. | ||
145 | + It is needed to properly support non-default visibility. */ | ||
146 | + | ||
147 | +#ifndef ASM_OUTPUT_EXTERNAL | ||
148 | +#define ASM_OUTPUT_EXTERNAL(FILE, DECL, NAME) \ | ||
149 | + default_elf_asm_output_external (FILE, DECL, NAME) | ||
150 | +#endif | ||
151 | + | ||
152 | +#ifndef TARGET_ASM_FILE_END | ||
153 | +#define TARGET_ASM_FILE_END default_elf_asm_file_end | ||
154 | +#endif | ||
155 | --- gcc/config/i386/i386-protos.h | ||
156 | +++ gcc/config/i386/i386-protos.h | ||
157 | @@ -28,6 +28,7 @@ | ||
158 | extern void ix86_setup_frame_addresses (void); | ||
159 | |||
160 | extern void ix86_file_end (void); | ||
161 | +extern void ix86_elf_file_end (void); | ||
162 | extern HOST_WIDE_INT ix86_initial_elimination_offset (int, int); | ||
163 | extern void ix86_expand_prologue (void); | ||
164 | extern void ix86_expand_epilogue (int); | ||
165 | --- gcc/config/i386/i386.c | ||
166 | +++ gcc/config/i386/i386.c | ||
167 | @@ -3942,6 +3942,13 @@ | ||
168 | file_end_indicate_exec_stack (); | ||
169 | } | ||
170 | |||
171 | +void | ||
172 | +ix86_elf_file_end (void) | ||
173 | +{ | ||
174 | + ix86_file_end (); | ||
175 | + default_elf_asm_file_end (); | ||
176 | +} | ||
177 | + | ||
178 | /* Emit code for the SET_GOT patterns. */ | ||
179 | |||
180 | const char * | ||
181 | --- gcc/config/i386/linux.h | ||
182 | +++ gcc/config/i386/linux.h | ||
183 | @@ -185,3 +185,6 @@ | ||
184 | |||
185 | /* This macro may be overridden in i386/k*bsd-gnu.h. */ | ||
186 | #define REG_NAME(reg) reg | ||
187 | + | ||
188 | +#undef TARGET_ASM_FILE_END | ||
189 | +#define TARGET_ASM_FILE_END ix86_elf_file_end | ||
190 | --- gcc/config/i386/linux64.h | ||
191 | +++ gcc/config/i386/linux64.h | ||
192 | @@ -73,3 +73,6 @@ | ||
193 | |||
194 | /* This macro may be overridden in i386/k*bsd-gnu.h. */ | ||
195 | #define REG_NAME(reg) reg | ||
196 | + | ||
197 | +#undef TARGET_ASM_FILE_END | ||
198 | +#define TARGET_ASM_FILE_END ix86_elf_file_end | ||
199 | --- gcc/config/ia64/hpux.h | ||
200 | +++ gcc/config/ia64/hpux.h | ||
201 | @@ -152,10 +152,6 @@ | ||
202 | definitions, so do not use them in gthr-posix.h. */ | ||
203 | #define GTHREAD_USE_WEAK 0 | ||
204 | |||
205 | -/* Put out the needed function declarations at the end. */ | ||
206 | - | ||
207 | -#define TARGET_ASM_FILE_END ia64_hpux_file_end | ||
208 | - | ||
209 | #undef CTORS_SECTION_ASM_OP | ||
210 | #define CTORS_SECTION_ASM_OP "\t.section\t.init_array,\t\"aw\",\"init_array\"" | ||
211 | |||
212 | --- gcc/config/ia64/ia64.c | ||
213 | +++ gcc/config/ia64/ia64.c | ||
214 | @@ -247,6 +247,7 @@ | ||
215 | static void ia64_output_mi_thunk (FILE *, tree, HOST_WIDE_INT, | ||
216 | HOST_WIDE_INT, tree); | ||
217 | static void ia64_file_start (void); | ||
218 | +static void ia64_file_end (void); | ||
219 | |||
220 | static void ia64_select_rtx_section (enum machine_mode, rtx, | ||
221 | unsigned HOST_WIDE_INT); | ||
222 | @@ -258,10 +259,6 @@ | ||
223 | unsigned HOST_WIDE_INT) | ||
224 | ATTRIBUTE_UNUSED; | ||
225 | static unsigned int ia64_section_type_flags (tree, const char *, int); | ||
226 | -static void ia64_hpux_add_extern_decl (tree decl) | ||
227 | - ATTRIBUTE_UNUSED; | ||
228 | -static void ia64_hpux_file_end (void) | ||
229 | - ATTRIBUTE_UNUSED; | ||
230 | static void ia64_init_libfuncs (void) | ||
231 | ATTRIBUTE_UNUSED; | ||
232 | static void ia64_hpux_init_libfuncs (void) | ||
233 | @@ -373,6 +370,9 @@ | ||
234 | #undef TARGET_ASM_FILE_START | ||
235 | #define TARGET_ASM_FILE_START ia64_file_start | ||
236 | |||
237 | +#undef TARGET_ASM_FILE_END | ||
238 | +#define TARGET_ASM_FILE_END ia64_file_end | ||
239 | + | ||
240 | #undef TARGET_RTX_COSTS | ||
241 | #define TARGET_RTX_COSTS ia64_rtx_costs | ||
242 | #undef TARGET_ADDRESS_COST | ||
243 | @@ -4610,43 +4610,24 @@ | ||
244 | the Intel assembler does not support undefined externals. */ | ||
245 | |||
246 | void | ||
247 | -ia64_asm_output_external (FILE *file, tree decl, const char *name) | ||
248 | +ia64_asm_output_external (FILE *file ATTRIBUTE_UNUSED, tree decl, | ||
249 | + const char *name) | ||
250 | { | ||
251 | - int save_referenced; | ||
252 | - | ||
253 | - /* GNU as does not need anything here, but the HP linker does need | ||
254 | - something for external functions. */ | ||
255 | - | ||
256 | - if (TARGET_GNU_AS | ||
257 | - && (!TARGET_HPUX_LD | ||
258 | - || TREE_CODE (decl) != FUNCTION_DECL | ||
259 | - || strstr (name, "__builtin_") == name)) | ||
260 | - return; | ||
261 | - | ||
262 | /* ??? The Intel assembler creates a reference that needs to be satisfied by | ||
263 | the linker when we do this, so we need to be careful not to do this for | ||
264 | builtin functions which have no library equivalent. Unfortunately, we | ||
265 | can't tell here whether or not a function will actually be called by | ||
266 | expand_expr, so we pull in library functions even if we may not need | ||
267 | them later. */ | ||
268 | - if (! strcmp (name, "__builtin_next_arg") | ||
269 | - || ! strcmp (name, "alloca") | ||
270 | - || ! strcmp (name, "__builtin_constant_p") | ||
271 | - || ! strcmp (name, "__builtin_args_info")) | ||
272 | + if (TREE_CODE (decl) == FUNCTION_DECL | ||
273 | + && ((TARGET_GNU_AS && strstr (name, "__builtin_") == name) | ||
274 | + || (!strcmp (name, "__builtin_next_arg") | ||
275 | + || ! strcmp (name, "alloca") | ||
276 | + || ! strcmp (name, "__builtin_constant_p") | ||
277 | + || ! strcmp (name, "__builtin_args_info")))) | ||
278 | return; | ||
279 | |||
280 | - if (TARGET_HPUX_LD) | ||
281 | - ia64_hpux_add_extern_decl (decl); | ||
282 | - else | ||
283 | - { | ||
284 | - /* assemble_name will set TREE_SYMBOL_REFERENCED, so we must save and | ||
285 | - restore it. */ | ||
286 | - save_referenced = TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl)); | ||
287 | - if (TREE_CODE (decl) == FUNCTION_DECL) | ||
288 | - ASM_OUTPUT_TYPE_DIRECTIVE (file, name, "function"); | ||
289 | - (*targetm.asm_out.globalize_label) (file, name); | ||
290 | - TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl)) = save_referenced; | ||
291 | - } | ||
292 | + default_elf_asm_output_external_1 (decl); | ||
293 | } | ||
294 | |||
295 | /* Parse the -mfixed-range= option string. */ | ||
296 | @@ -8599,36 +8580,16 @@ | ||
297 | return DEFAULT_FUNCTION_ARG_PADDING (mode, type); | ||
298 | } | ||
299 | |||
300 | -/* Linked list of all external functions that are to be emitted by GCC. | ||
301 | - We output the name if and only if TREE_SYMBOL_REFERENCED is set in | ||
302 | - order to avoid putting out names that are never really used. */ | ||
303 | - | ||
304 | -struct extern_func_list GTY(()) | ||
305 | -{ | ||
306 | - struct extern_func_list *next; | ||
307 | - tree decl; | ||
308 | -}; | ||
309 | - | ||
310 | -static GTY(()) struct extern_func_list *extern_func_head; | ||
311 | - | ||
312 | -static void | ||
313 | -ia64_hpux_add_extern_decl (tree decl) | ||
314 | -{ | ||
315 | - struct extern_func_list *p = ggc_alloc (sizeof (struct extern_func_list)); | ||
316 | - | ||
317 | - p->decl = decl; | ||
318 | - p->next = extern_func_head; | ||
319 | - extern_func_head = p; | ||
320 | -} | ||
321 | - | ||
322 | /* Print out the list of used global functions. */ | ||
323 | |||
324 | static void | ||
325 | -ia64_hpux_file_end (void) | ||
326 | +ia64_file_end (void) | ||
327 | { | ||
328 | - struct extern_func_list *p; | ||
329 | + struct extern_symbol_list *p; | ||
330 | + int hpld = TARGET_HPUX_LD; | ||
331 | + int gas = TARGET_GNU_AS; | ||
332 | |||
333 | - for (p = extern_func_head; p; p = p->next) | ||
334 | + for (p = extern_symbol_head; p; p = p->next) | ||
335 | { | ||
336 | tree decl = p->decl; | ||
337 | tree id = DECL_ASSEMBLER_NAME (decl); | ||
338 | @@ -8637,18 +8598,28 @@ | ||
339 | abort (); | ||
340 | |||
341 | if (!TREE_ASM_WRITTEN (decl) && TREE_SYMBOL_REFERENCED (id)) | ||
342 | - { | ||
343 | + { | ||
344 | + int vis = ((*targetm.binds_local_p) (decl) | ||
345 | + && maybe_assemble_visibility (decl)); | ||
346 | const char *name = XSTR (XEXP (DECL_RTL (decl), 0), 0); | ||
347 | |||
348 | + /* GNU as does not need anything here, but the HP linker | ||
349 | + does need something for external functions. */ | ||
350 | + if ((hpld || !gas) | ||
351 | + && TREE_CODE (decl) == FUNCTION_DECL) | ||
352 | + { | ||
353 | + ASM_OUTPUT_TYPE_DIRECTIVE (asm_out_file, name, | ||
354 | + "function"); | ||
355 | + (*targetm.asm_out.globalize_label) (asm_out_file, name); | ||
356 | + } | ||
357 | + else if (vis && !gas) | ||
358 | + (*targetm.asm_out.globalize_label) (asm_out_file, name); | ||
359 | + | ||
360 | TREE_ASM_WRITTEN (decl) = 1; | ||
361 | - (*targetm.asm_out.globalize_label) (asm_out_file, name); | ||
362 | - fputs (TYPE_ASM_OP, asm_out_file); | ||
363 | - assemble_name (asm_out_file, name); | ||
364 | - fprintf (asm_out_file, "," TYPE_OPERAND_FMT "\n", "function"); | ||
365 | } | ||
366 | } | ||
367 | |||
368 | - extern_func_head = 0; | ||
369 | + extern_symbol_head = 0; | ||
370 | } | ||
371 | |||
372 | /* Set SImode div/mod functions, init_integral_libfuncs only initializes | ||
373 | --- gcc/cp/decl2.c | ||
374 | +++ gcc/cp/decl2.c | ||
375 | @@ -1644,8 +1644,12 @@ | ||
376 | && DECL_DECLARED_INLINE_P (decl) | ||
377 | && visibility_options.inlines_hidden) | ||
378 | { | ||
379 | - DECL_VISIBILITY (decl) = VISIBILITY_HIDDEN; | ||
380 | - DECL_VISIBILITY_SPECIFIED (decl) = 1; | ||
381 | + /* Don't change it if it has been set explicitly by user. */ | ||
382 | + if (!DECL_VISIBILITY_SPECIFIED (decl)) | ||
383 | + { | ||
384 | + DECL_VISIBILITY (decl) = VISIBILITY_HIDDEN; | ||
385 | + DECL_VISIBILITY_SPECIFIED (decl) = 1; | ||
386 | + } | ||
387 | } | ||
388 | else if (CLASSTYPE_VISIBILITY_SPECIFIED (class_type)) | ||
389 | { | ||
390 | --- gcc/output.h | ||
391 | +++ gcc/output.h | ||
392 | @@ -517,6 +517,12 @@ | ||
393 | extern void file_end_indicate_exec_stack (void); | ||
394 | extern bool default_valid_pointer_mode (enum machine_mode); | ||
395 | |||
396 | +extern void default_elf_asm_output_external (FILE *file, tree, | ||
397 | + const char *); | ||
398 | +extern void default_elf_asm_output_external_1 (tree); | ||
399 | +extern void default_elf_asm_file_end (void); | ||
400 | +extern int maybe_assemble_visibility (tree); | ||
401 | + | ||
402 | extern int default_address_cost (rtx); | ||
403 | |||
404 | /* dbxout helper functions */ | ||
405 | --- gcc/tree.h | ||
406 | +++ gcc/tree.h | ||
407 | @@ -3737,6 +3737,17 @@ | ||
408 | extern void finish_aliases_1 (void); | ||
409 | extern void finish_aliases_2 (void); | ||
410 | |||
411 | +/* Linked list of all external symbols that are to be emitted by | ||
412 | + GCC. */ | ||
413 | + | ||
414 | +struct extern_symbol_list GTY(()) | ||
415 | +{ | ||
416 | + struct extern_symbol_list *next; | ||
417 | + tree decl; | ||
418 | +}; | ||
419 | + | ||
420 | +extern GTY(()) struct extern_symbol_list *extern_symbol_head; | ||
421 | + | ||
422 | /* In stmt.c */ | ||
423 | extern void expand_computed_goto (tree); | ||
424 | extern bool parse_output_constraint (const char **, int, int, int, | ||
425 | --- gcc/varasm.c | ||
426 | +++ gcc/varasm.c | ||
427 | @@ -140,7 +140,6 @@ | ||
428 | static unsigned min_align (unsigned, unsigned); | ||
429 | static void output_constructor (tree, unsigned HOST_WIDE_INT, unsigned int); | ||
430 | static void globalize_decl (tree); | ||
431 | -static void maybe_assemble_visibility (tree); | ||
432 | static int in_named_entry_eq (const void *, const void *); | ||
433 | static hashval_t in_named_entry_hash (const void *); | ||
434 | #ifdef BSS_SECTION_ASM_OP | ||
435 | @@ -4615,13 +4614,18 @@ | ||
436 | |||
437 | /* A helper function to call assemble_visibility when needed for a decl. */ | ||
438 | |||
439 | -static void | ||
440 | +int | ||
441 | maybe_assemble_visibility (tree decl) | ||
442 | { | ||
443 | enum symbol_visibility vis = DECL_VISIBILITY (decl); | ||
444 | |||
445 | if (vis != VISIBILITY_DEFAULT) | ||
446 | - targetm.asm_out.visibility (decl, vis); | ||
447 | + { | ||
448 | + targetm.asm_out.visibility (decl, vis); | ||
449 | + return 1; | ||
450 | + } | ||
451 | + else | ||
452 | + return 0; | ||
453 | } | ||
454 | |||
455 | /* Returns 1 if the target configuration supports defining public symbols | ||
456 | @@ -5438,4 +5442,64 @@ | ||
457 | named_section_flags (".note.GNU-stack", flags); | ||
458 | } | ||
459 | |||
460 | +struct extern_symbol_list *extern_symbol_head; | ||
461 | + | ||
462 | +void | ||
463 | +default_elf_asm_output_external_1 (tree decl) | ||
464 | +{ | ||
465 | + struct extern_symbol_list *p | ||
466 | + = ggc_alloc (sizeof (struct extern_symbol_list)); | ||
467 | + | ||
468 | + p->decl = decl; | ||
469 | + p->next = extern_symbol_head; | ||
470 | + extern_symbol_head = p; | ||
471 | +} | ||
472 | + | ||
473 | +/* Emit text to declare externally defined symbols. It is needed to | ||
474 | + properly support non-default visibility. */ | ||
475 | + | ||
476 | +void | ||
477 | +default_elf_asm_output_external (FILE *file ATTRIBUTE_UNUSED, | ||
478 | + tree decl, | ||
479 | + const char *name) | ||
480 | +{ | ||
481 | + /* Ignore builtin functions. */ | ||
482 | + if (TREE_CODE (decl) == FUNCTION_DECL | ||
483 | + && strstr (name, "__builtin_") == name) | ||
484 | + return; | ||
485 | + else | ||
486 | + default_elf_asm_output_external_1 (decl); | ||
487 | +} | ||
488 | + | ||
489 | +/* Print out the list of referenced global symbols with non-default | ||
490 | + visibility. */ | ||
491 | + | ||
492 | +void | ||
493 | +default_elf_asm_file_end (void) | ||
494 | +{ | ||
495 | + struct extern_symbol_list *p; | ||
496 | + | ||
497 | + for (p = extern_symbol_head; p; p = p->next) | ||
498 | + { | ||
499 | + tree decl = p->decl; | ||
500 | + tree id = DECL_ASSEMBLER_NAME (decl); | ||
501 | + | ||
502 | + if (!id) | ||
503 | + abort (); | ||
504 | + | ||
505 | + /* We output the name if and only if TREE_SYMBOL_REFERENCED is | ||
506 | + set in order to avoid putting out names that are never really | ||
507 | + used. */ | ||
508 | + if (targetm.binds_local_p (decl) | ||
509 | + && !TREE_ASM_WRITTEN (decl) | ||
510 | + && TREE_SYMBOL_REFERENCED (id)) | ||
511 | + { | ||
512 | + maybe_assemble_visibility (decl); | ||
513 | + TREE_ASM_WRITTEN (decl) = 1; | ||
514 | + } | ||
515 | + } | ||
516 | + | ||
517 | + extern_symbol_head = 0; | ||
518 | +} | ||
519 | + | ||
520 | #include "gt-varasm.h" | ||
521 | --- libstdc++-v3/include/c_std/std_cassert.h | ||
522 | +++ libstdc++-v3/include/c_std/std_cassert.h | ||
523 | @@ -1,6 +1,6 @@ | ||
524 | // -*- C++ -*- forwarding header. | ||
525 | |||
526 | -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002 | ||
527 | +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2005 | ||
528 | // Free Software Foundation, Inc. | ||
529 | // | ||
530 | // This file is part of the GNU ISO C++ Library. This library is free | ||
531 | @@ -44,5 +44,8 @@ | ||
532 | // No include guards on this header... | ||
533 | |||
534 | #pragma GCC system_header | ||
535 | +#pragma GCC visibility push(default) | ||
536 | |||
537 | #include <assert.h> | ||
538 | + | ||
539 | +#pragma GCC visibility pop | ||
540 | --- libstdc++-v3/include/c_std/std_cctype.h | ||
541 | +++ libstdc++-v3/include/c_std/std_cctype.h | ||
542 | @@ -1,6 +1,7 @@ | ||
543 | // -*- C++ -*- forwarding header. | ||
544 | |||
545 | -// Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc. | ||
546 | +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2005 | ||
547 | +// Free Software Foundation, Inc. | ||
548 | // | ||
549 | // This file is part of the GNU ISO C++ Library. This library is free | ||
550 | // software; you can redistribute it and/or modify it under the | ||
551 | @@ -44,6 +45,7 @@ | ||
552 | #define _GLIBCXX_CCTYPE 1 | ||
553 | |||
554 | #pragma GCC system_header | ||
555 | +#pragma GCC visibility push(default) | ||
556 | |||
557 | #include <bits/c++config.h> | ||
558 | #include <ctype.h> | ||
559 | @@ -80,4 +82,6 @@ | ||
560 | using ::toupper; | ||
561 | } | ||
562 | |||
563 | +#pragma GCC visibility pop | ||
564 | + | ||
565 | #endif | ||
566 | --- libstdc++-v3/include/c_std/std_cerrno.h | ||
567 | +++ libstdc++-v3/include/c_std/std_cerrno.h | ||
568 | @@ -1,6 +1,7 @@ | ||
569 | // The -*- C++ -*- forwarding header. | ||
570 | |||
571 | -// Copyright (C) 1997, 1998, 1999, 2001, 2002 Free Software Foundation, Inc. | ||
572 | +// Copyright (C) 1997, 1998, 1999, 2001, 2002, 2005 | ||
573 | +// Free Software Foundation, Inc. | ||
574 | // | ||
575 | // This file is part of the GNU ISO C++ Library. This library is free | ||
576 | // software; you can redistribute it and/or modify it under the | ||
577 | @@ -44,6 +45,7 @@ | ||
578 | #define _GLIBCXX_CERRNO 1 | ||
579 | |||
580 | #pragma GCC system_header | ||
581 | +#pragma GCC visibility push(default) | ||
582 | |||
583 | #include <errno.h> | ||
584 | |||
585 | @@ -52,4 +54,6 @@ | ||
586 | #define errno errno | ||
587 | #endif | ||
588 | |||
589 | +#pragma GCC visibility pop | ||
590 | + | ||
591 | #endif | ||
592 | --- libstdc++-v3/include/c_std/std_cfloat.h | ||
593 | +++ libstdc++-v3/include/c_std/std_cfloat.h | ||
594 | @@ -1,6 +1,7 @@ | ||
595 | // -*- C++ -*- forwarding header. | ||
596 | |||
597 | -// Copyright (C) 1997, 1998, 1999, 2000, 2002 Free Software Foundation, Inc. | ||
598 | +// Copyright (C) 1997, 1998, 1999, 2000, 2002, 2005 | ||
599 | +// Free Software Foundation, Inc. | ||
600 | // | ||
601 | // This file is part of the GNU ISO C++ Library. This library is free | ||
602 | // software; you can redistribute it and/or modify it under the | ||
603 | @@ -44,7 +45,10 @@ | ||
604 | #define _GLIBCXX_CFLOAT 1 | ||
605 | |||
606 | #pragma GCC system_header | ||
607 | +#pragma GCC visibility push(default) | ||
608 | |||
609 | #include <float.h> | ||
610 | |||
611 | +#pragma GCC visibility pop | ||
612 | + | ||
613 | #endif | ||
614 | --- libstdc++-v3/include/c_std/std_climits.h | ||
615 | +++ libstdc++-v3/include/c_std/std_climits.h | ||
616 | @@ -45,7 +45,9 @@ | ||
617 | #define _GLIBCXX_CLIMITS 1 | ||
618 | |||
619 | #pragma GCC system_header | ||
620 | +#pragma GCC visibility push(default) | ||
621 | |||
622 | #include <limits.h> | ||
623 | |||
624 | +#pragma GCC visibility pop | ||
625 | #endif | ||
626 | --- libstdc++-v3/include/c_std/std_clocale.h | ||
627 | +++ libstdc++-v3/include/c_std/std_clocale.h | ||
628 | @@ -1,6 +1,6 @@ | ||
629 | // -*- C++ -*- forwarding header. | ||
630 | |||
631 | -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002 | ||
632 | +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2005 | ||
633 | // Free Software Foundation, Inc. | ||
634 | // | ||
635 | // This file is part of the GNU ISO C++ Library. This library is free | ||
636 | @@ -45,6 +45,7 @@ | ||
637 | #define _GLIBCXX_CLOCALE 1 | ||
638 | |||
639 | #pragma GCC system_header | ||
640 | +#pragma GCC visibility push(default) | ||
641 | |||
642 | #include <locale.h> | ||
643 | |||
644 | @@ -59,4 +60,6 @@ | ||
645 | using ::localeconv; | ||
646 | } | ||
647 | |||
648 | +#pragma GCC visibility pop | ||
649 | + | ||
650 | #endif | ||
651 | --- libstdc++-v3/include/c_std/std_cmath.h | ||
652 | +++ libstdc++-v3/include/c_std/std_cmath.h | ||
653 | @@ -45,6 +45,7 @@ | ||
654 | #define _GLIBCXX_CMATH 1 | ||
655 | |||
656 | #pragma GCC system_header | ||
657 | +#pragma GCC visibility push(default) | ||
658 | |||
659 | #include <bits/c++config.h> | ||
660 | #include <bits/cpp_type_traits.h> | ||
661 | @@ -574,4 +575,6 @@ | ||
662 | # include <bits/cmath.tcc> | ||
663 | #endif | ||
664 | |||
665 | +#pragma GCC visibility pop | ||
666 | + | ||
667 | #endif | ||
668 | --- libstdc++-v3/include/c_std/std_csetjmp.h | ||
669 | +++ libstdc++-v3/include/c_std/std_csetjmp.h | ||
670 | @@ -1,6 +1,6 @@ | ||
671 | // -*- C++ -*- forwarding header. | ||
672 | |||
673 | -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002 | ||
674 | +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2005 | ||
675 | // Free Software Foundation, Inc. | ||
676 | // | ||
677 | // This file is part of the GNU ISO C++ Library. This library is free | ||
678 | @@ -45,6 +45,7 @@ | ||
679 | #define _GLIBCXX_CSETJMP 1 | ||
680 | |||
681 | #pragma GCC system_header | ||
682 | +#pragma GCC visibility push(default) | ||
683 | |||
684 | #include <setjmp.h> | ||
685 | |||
686 | @@ -62,4 +63,6 @@ | ||
687 | using ::longjmp; | ||
688 | } | ||
689 | |||
690 | +#pragma GCC visibility pop | ||
691 | + | ||
692 | #endif | ||
693 | --- libstdc++-v3/include/c_std/std_csignal.h | ||
694 | +++ libstdc++-v3/include/c_std/std_csignal.h | ||
695 | @@ -1,6 +1,6 @@ | ||
696 | // -*- C++ -*- forwarding header. | ||
697 | |||
698 | -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002 | ||
699 | +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2005 | ||
700 | // Free Software Foundation, Inc. | ||
701 | // | ||
702 | // This file is part of the GNU ISO C++ Library. This library is free | ||
703 | @@ -45,6 +45,7 @@ | ||
704 | #define _GLIBCXX_CSIGNAL 1 | ||
705 | |||
706 | #pragma GCC system_header | ||
707 | +#pragma GCC visibility push(default) | ||
708 | |||
709 | #include <signal.h> | ||
710 | |||
711 | @@ -58,4 +59,6 @@ | ||
712 | using ::raise; | ||
713 | } | ||
714 | |||
715 | +#pragma GCC visibility pop | ||
716 | + | ||
717 | #endif | ||
718 | --- libstdc++-v3/include/c_std/std_cstdarg.h | ||
719 | +++ libstdc++-v3/include/c_std/std_cstdarg.h | ||
720 | @@ -1,6 +1,7 @@ | ||
721 | // -*- C++ -*- forwarding header. | ||
722 | |||
723 | -// Copyright (C) 1997, 1998, 1999, 2000, 2002 Free Software Foundation, Inc. | ||
724 | +// Copyright (C) 1997, 1998, 1999, 2000, 2002, 2005 | ||
725 | +// Free Software Foundation, Inc. | ||
726 | // | ||
727 | // This file is part of the GNU ISO C++ Library. This library is free | ||
728 | // software; you can redistribute it and/or modify it under the | ||
729 | @@ -44,6 +45,7 @@ | ||
730 | #define _GLIBCXX_CSTDARG 1 | ||
731 | |||
732 | #pragma GCC system_header | ||
733 | +#pragma GCC visibility push(default) | ||
734 | |||
735 | #include <stdarg.h> | ||
736 | |||
737 | @@ -57,4 +59,6 @@ | ||
738 | using ::va_list; | ||
739 | } | ||
740 | |||
741 | +#pragma GCC visibility pop | ||
742 | + | ||
743 | #endif | ||
744 | --- libstdc++-v3/include/c_std/std_cstddef.h | ||
745 | +++ libstdc++-v3/include/c_std/std_cstddef.h | ||
746 | @@ -1,6 +1,7 @@ | ||
747 | // -*- C++ -*- forwarding header. | ||
748 | |||
749 | -// Copyright (C) 1997, 1998, 1999, 2000, 2002 Free Software Foundation, Inc. | ||
750 | +// Copyright (C) 1997, 1998, 1999, 2000, 2002, 2005 | ||
751 | +// Free Software Foundation, Inc. | ||
752 | // | ||
753 | // This file is part of the GNU ISO C++ Library. This library is free | ||
754 | // software; you can redistribute it and/or modify it under the | ||
755 | @@ -44,6 +45,7 @@ | ||
756 | #define _GLIBCXX_CSTDDEF 1 | ||
757 | |||
758 | #pragma GCC system_header | ||
759 | +#pragma GCC visibility push(default) | ||
760 | |||
761 | #include <stddef.h> | ||
762 | |||
763 | @@ -53,4 +55,6 @@ | ||
764 | using ::size_t; | ||
765 | } | ||
766 | |||
767 | +#pragma GCC visibility pop | ||
768 | + | ||
769 | #endif | ||
770 | --- libstdc++-v3/include/c_std/std_cstdio.h | ||
771 | +++ libstdc++-v3/include/c_std/std_cstdio.h | ||
772 | @@ -1,6 +1,6 @@ | ||
773 | // -*- C++ -*- forwarding header. | ||
774 | |||
775 | -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003 | ||
776 | +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005 | ||
777 | // Free Software Foundation, Inc. | ||
778 | // | ||
779 | // This file is part of the GNU ISO C++ Library. This library is free | ||
780 | @@ -45,6 +45,7 @@ | ||
781 | #define _GLIBCXX_CSTDIO 1 | ||
782 | |||
783 | #pragma GCC system_header | ||
784 | +#pragma GCC visibility push(default) | ||
785 | |||
786 | #include <bits/c++config.h> | ||
787 | #include <cstddef> | ||
788 | @@ -182,4 +183,6 @@ | ||
789 | } | ||
790 | #endif | ||
791 | |||
792 | +#pragma GCC visibility pop | ||
793 | + | ||
794 | #endif | ||
795 | --- libstdc++-v3/include/c_std/std_cstdlib.h | ||
796 | +++ libstdc++-v3/include/c_std/std_cstdlib.h | ||
797 | @@ -1,6 +1,6 @@ | ||
798 | // -*- C++ -*- forwarding header. | ||
799 | |||
800 | -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003 | ||
801 | +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005 | ||
802 | // Free Software Foundation, Inc. | ||
803 | // | ||
804 | // This file is part of the GNU ISO C++ Library. This library is free | ||
805 | @@ -45,6 +45,7 @@ | ||
806 | #define _GLIBCXX_CSTDLIB 1 | ||
807 | |||
808 | #pragma GCC system_header | ||
809 | +#pragma GCC visibility push(default) | ||
810 | |||
811 | #include <bits/c++config.h> | ||
812 | #include <cstddef> | ||
813 | @@ -217,4 +218,6 @@ | ||
814 | } | ||
815 | #endif | ||
816 | |||
817 | +#pragma GCC visibility pop | ||
818 | + | ||
819 | #endif | ||
820 | --- libstdc++-v3/include/c_std/std_cstring.h | ||
821 | +++ libstdc++-v3/include/c_std/std_cstring.h | ||
822 | @@ -1,6 +1,6 @@ | ||
823 | // -*- C++ -*- forwarding header. | ||
824 | |||
825 | -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002 | ||
826 | +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2005 | ||
827 | // Free Software Foundation, Inc. | ||
828 | // | ||
829 | // This file is part of the GNU ISO C++ Library. This library is free | ||
830 | @@ -45,6 +45,7 @@ | ||
831 | #define _GLIBCXX_CSTRING 1 | ||
832 | |||
833 | #pragma GCC system_header | ||
834 | +#pragma GCC visibility push(default) | ||
835 | |||
836 | #include <cstddef> | ||
837 | |||
838 | @@ -125,4 +126,6 @@ | ||
839 | { return __builtin_strstr(const_cast<const char*>(__s1), __s2); } | ||
840 | } | ||
841 | |||
842 | +#pragma GCC visibility pop | ||
843 | + | ||
844 | #endif | ||
845 | --- libstdc++-v3/include/c_std/std_ctime.h | ||
846 | +++ libstdc++-v3/include/c_std/std_ctime.h | ||
847 | @@ -1,6 +1,6 @@ | ||
848 | // -*- C++ -*- forwarding header. | ||
849 | |||
850 | -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002 | ||
851 | +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2005 | ||
852 | // Free Software Foundation, Inc. | ||
853 | // | ||
854 | // This file is part of the GNU ISO C++ Library. This library is free | ||
855 | @@ -45,6 +45,7 @@ | ||
856 | #define _GLIBCXX_CTIME 1 | ||
857 | |||
858 | #pragma GCC system_header | ||
859 | +#pragma GCC visibility push(default) | ||
860 | |||
861 | #include <cstddef> | ||
862 | |||
863 | @@ -78,4 +79,6 @@ | ||
864 | using ::strftime; | ||
865 | } | ||
866 | |||
867 | +#pragma GCC visibility pop | ||
868 | + | ||
869 | #endif | ||
870 | --- libstdc++-v3/include/c_std/std_cwchar.h | ||
871 | +++ libstdc++-v3/include/c_std/std_cwchar.h | ||
872 | @@ -1,6 +1,6 @@ | ||
873 | // -*- C++ -*- forwarding header. | ||
874 | |||
875 | -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003 | ||
876 | +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005 | ||
877 | // Free Software Foundation, Inc. | ||
878 | // | ||
879 | // This file is part of the GNU ISO C++ Library. This library is free | ||
880 | @@ -45,6 +45,7 @@ | ||
881 | #define _GLIBCXX_CWCHAR 1 | ||
882 | |||
883 | #pragma GCC system_header | ||
884 | +#pragma GCC visibility push(default) | ||
885 | |||
886 | #include <bits/c++config.h> | ||
887 | #include <cstddef> | ||
888 | @@ -270,4 +271,6 @@ | ||
889 | |||
890 | #endif //_GLIBCXX_USE_WCHAR_T | ||
891 | |||
892 | +#pragma GCC visibility pop | ||
893 | + | ||
894 | #endif | ||
895 | --- libstdc++-v3/include/c_std/std_cwctype.h | ||
896 | +++ libstdc++-v3/include/c_std/std_cwctype.h | ||
897 | @@ -45,6 +45,7 @@ | ||
898 | #define _GLIBCXX_CWCTYPE 1 | ||
899 | |||
900 | #pragma GCC system_header | ||
901 | +#pragma GCC visibility push(default) | ||
902 | |||
903 | #include <bits/c++config.h> | ||
904 | |||
905 | @@ -107,4 +108,6 @@ | ||
906 | } | ||
907 | #endif //_GLIBCXX_USE_WCHAR_T | ||
908 | |||
909 | +#pragma GCC visibility pop | ||
910 | + | ||
911 | #endif | ||
912 | --- libstdc++-v3/include/debug/bitset | ||
913 | +++ libstdc++-v3/include/debug/bitset | ||
914 | @@ -31,6 +31,8 @@ | ||
915 | #ifndef _GLIBCXX_DEBUG_BITSET | ||
916 | #define _GLIBCXX_DEBUG_BITSET | ||
917 | |||
918 | +#pragma GCC visibility push(default) | ||
919 | + | ||
920 | #include <bitset> | ||
921 | #include <debug/safe_sequence.h> | ||
922 | #include <debug/safe_iterator.h> | ||
923 | @@ -318,4 +320,6 @@ | ||
924 | { return __os << __x._M_base(); } | ||
925 | } // namespace __gnu_debug_def | ||
926 | |||
927 | +#pragma GCC visibility pop | ||
928 | + | ||
929 | #endif | ||
930 | --- libstdc++-v3/include/debug/deque | ||
931 | +++ libstdc++-v3/include/debug/deque | ||
932 | @@ -1,6 +1,6 @@ | ||
933 | // Debugging deque implementation -*- C++ -*- | ||
934 | |||
935 | -// Copyright (C) 2003, 2004 | ||
936 | +// Copyright (C) 2003, 2004, 2005 | ||
937 | // Free Software Foundation, Inc. | ||
938 | // | ||
939 | // This file is part of the GNU ISO C++ Library. This library is free | ||
940 | @@ -31,6 +31,8 @@ | ||
941 | #ifndef _GLIBCXX_DEBUG_DEQUE | ||
942 | #define _GLIBCXX_DEBUG_DEQUE 1 | ||
943 | |||
944 | +#pragma GCC visibility push(default) | ||
945 | + | ||
946 | #include <deque> | ||
947 | #include <debug/safe_sequence.h> | ||
948 | #include <debug/safe_iterator.h> | ||
949 | @@ -383,4 +385,6 @@ | ||
950 | { __lhs.swap(__rhs); } | ||
951 | } // namespace __gnu_debug_def | ||
952 | |||
953 | +#pragma GCC visibility pop | ||
954 | + | ||
955 | #endif | ||
956 | --- libstdc++-v3/include/debug/hash_map | ||
957 | +++ libstdc++-v3/include/debug/hash_map | ||
958 | @@ -1,6 +1,6 @@ | ||
959 | // Debugging hash_map/hash_multimap implementation -*- C++ -*- | ||
960 | |||
961 | -// Copyright (C) 2003 | ||
962 | +// Copyright (C) 2003, 2005 | ||
963 | // Free Software Foundation, Inc. | ||
964 | // | ||
965 | // This file is part of the GNU ISO C++ Library. This library is free | ||
966 | @@ -31,8 +31,12 @@ | ||
967 | #ifndef _GLIBCXX_DEBUG_HASH_MAP | ||
968 | #define _GLIBCXX_DEBUG_HASH_MAP 1 | ||
969 | |||
970 | +#pragma GCC visibility push(default) | ||
971 | + | ||
972 | #include <hash_map> | ||
973 | #include <debug/dbg_hash_map.h> | ||
974 | #include <debug/dbg_hash_multimap.h> | ||
975 | |||
976 | +#pragma GCC visibility pop | ||
977 | + | ||
978 | #endif | ||
979 | --- libstdc++-v3/include/debug/hash_set | ||
980 | +++ libstdc++-v3/include/debug/hash_set | ||
981 | @@ -1,6 +1,6 @@ | ||
982 | // Debugging hash_set/hash_multiset implementation -*- C++ -*- | ||
983 | |||
984 | -// Copyright (C) 2003 | ||
985 | +// Copyright (C) 2003, 2005 | ||
986 | // Free Software Foundation, Inc. | ||
987 | // | ||
988 | // This file is part of the GNU ISO C++ Library. This library is free | ||
989 | @@ -31,8 +31,12 @@ | ||
990 | #ifndef _GLIBCXX_DEBUG_HASH_SET | ||
991 | #define _GLIBCXX_DEBUG_HASH_SET 1 | ||
992 | |||
993 | +#pragma GCC visibility push(default) | ||
994 | + | ||
995 | #include <hash_set> | ||
996 | #include <debug/dbg_hash_set.h> | ||
997 | #include <debug/dbg_hash_multiset.h> | ||
998 | |||
999 | +#pragma GCC visibility pop | ||
1000 | + | ||
1001 | #endif | ||
1002 | --- libstdc++-v3/include/debug/list | ||
1003 | +++ libstdc++-v3/include/debug/list | ||
1004 | @@ -1,6 +1,6 @@ | ||
1005 | // Debugging list implementation -*- C++ -*- | ||
1006 | |||
1007 | -// Copyright (C) 2003, 2004 | ||
1008 | +// Copyright (C) 2003, 2004, 2005 | ||
1009 | // Free Software Foundation, Inc. | ||
1010 | // | ||
1011 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1012 | @@ -31,6 +31,8 @@ | ||
1013 | #ifndef _GLIBCXX_DEBUG_LIST | ||
1014 | #define _GLIBCXX_DEBUG_LIST 1 | ||
1015 | |||
1016 | +#pragma GCC visibility push(default) | ||
1017 | + | ||
1018 | #include <list> | ||
1019 | #include <bits/stl_algo.h> | ||
1020 | #include <debug/safe_sequence.h> | ||
1021 | @@ -502,4 +504,6 @@ | ||
1022 | { __lhs.swap(__rhs); } | ||
1023 | } // namespace __gnu_debug_def | ||
1024 | |||
1025 | +#pragma GCC visibility pop | ||
1026 | + | ||
1027 | #endif | ||
1028 | --- libstdc++-v3/include/debug/map | ||
1029 | +++ libstdc++-v3/include/debug/map | ||
1030 | @@ -1,6 +1,6 @@ | ||
1031 | // Debugging map/multimap implementation -*- C++ -*- | ||
1032 | |||
1033 | -// Copyright (C) 2003 | ||
1034 | +// Copyright (C) 2003, 2005 | ||
1035 | // Free Software Foundation, Inc. | ||
1036 | // | ||
1037 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1038 | @@ -31,8 +31,12 @@ | ||
1039 | #ifndef _GLIBCXX_DEBUG_MAP | ||
1040 | #define _GLIBCXX_DEBUG_MAP 1 | ||
1041 | |||
1042 | +#pragma GCC visibility push(default) | ||
1043 | + | ||
1044 | #include <map> | ||
1045 | #include <debug/map.h> | ||
1046 | #include <debug/multimap.h> | ||
1047 | |||
1048 | +#pragma GCC visibility pop | ||
1049 | + | ||
1050 | #endif | ||
1051 | --- libstdc++-v3/include/debug/set | ||
1052 | +++ libstdc++-v3/include/debug/set | ||
1053 | @@ -1,6 +1,6 @@ | ||
1054 | // Debugging set/multiset implementation -*- C++ -*- | ||
1055 | |||
1056 | -// Copyright (C) 2003 | ||
1057 | +// Copyright (C) 2003, 2005 | ||
1058 | // Free Software Foundation, Inc. | ||
1059 | // | ||
1060 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1061 | @@ -31,8 +31,12 @@ | ||
1062 | #ifndef _GLIBCXX_DEBUG_SET | ||
1063 | #define _GLIBCXX_DEBUG_SET 1 | ||
1064 | |||
1065 | +#pragma GCC visibility push(default) | ||
1066 | + | ||
1067 | #include <set> | ||
1068 | #include <debug/set.h> | ||
1069 | #include <debug/multiset.h> | ||
1070 | |||
1071 | +#pragma GCC visibility pop | ||
1072 | + | ||
1073 | #endif | ||
1074 | --- libstdc++-v3/include/debug/string | ||
1075 | +++ libstdc++-v3/include/debug/string | ||
1076 | @@ -31,6 +31,8 @@ | ||
1077 | #ifndef _GLIBCXX_DEBUG_STRING | ||
1078 | #define _GLIBCXX_DEBUG_STRING 1 | ||
1079 | |||
1080 | +#pragma GCC visibility push(default) | ||
1081 | + | ||
1082 | #include <string> | ||
1083 | #include <debug/safe_sequence.h> | ||
1084 | #include <debug/safe_iterator.h> | ||
1085 | @@ -1015,4 +1017,6 @@ | ||
1086 | |||
1087 | } // namespace __gnu_debug | ||
1088 | |||
1089 | +#pragma GCC visibility pop | ||
1090 | + | ||
1091 | #endif | ||
1092 | --- libstdc++-v3/include/debug/vector | ||
1093 | +++ libstdc++-v3/include/debug/vector | ||
1094 | @@ -1,6 +1,6 @@ | ||
1095 | // Debugging vector implementation -*- C++ -*- | ||
1096 | |||
1097 | -// Copyright (C) 2003, 2004 | ||
1098 | +// Copyright (C) 2003, 2004, 2005 | ||
1099 | // Free Software Foundation, Inc. | ||
1100 | // | ||
1101 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1102 | @@ -31,6 +31,8 @@ | ||
1103 | #ifndef _GLIBCXX_DEBUG_VECTOR | ||
1104 | #define _GLIBCXX_DEBUG_VECTOR 1 | ||
1105 | |||
1106 | +#pragma GCC visibility push(default) | ||
1107 | + | ||
1108 | #include <vector> | ||
1109 | #include <debug/safe_sequence.h> | ||
1110 | #include <debug/safe_iterator.h> | ||
1111 | @@ -409,4 +411,6 @@ | ||
1112 | { __lhs.swap(__rhs); } | ||
1113 | } // namespace __gnu_debug_def | ||
1114 | |||
1115 | +#pragma GCC visibility pop | ||
1116 | + | ||
1117 | #endif | ||
1118 | --- libstdc++-v3/include/ext/algorithm | ||
1119 | +++ libstdc++-v3/include/ext/algorithm | ||
1120 | @@ -1,6 +1,6 @@ | ||
1121 | // Algorithm extensions -*- C++ -*- | ||
1122 | |||
1123 | -// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc. | ||
1124 | +// Copyright (C) 2001, 2002, 2004, 2005 Free Software Foundation, Inc. | ||
1125 | // | ||
1126 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1127 | // software; you can redistribute it and/or modify it under the | ||
1128 | @@ -62,6 +62,7 @@ | ||
1129 | #define _EXT_ALGORITHM 1 | ||
1130 | |||
1131 | #pragma GCC system_header | ||
1132 | +#pragma GCC visibility push(default) | ||
1133 | |||
1134 | #include <algorithm> | ||
1135 | |||
1136 | @@ -523,4 +524,6 @@ | ||
1137 | } | ||
1138 | } // namespace __gnu_cxx | ||
1139 | |||
1140 | +#pragma GCC visibility pop | ||
1141 | + | ||
1142 | #endif /* _EXT_ALGORITHM */ | ||
1143 | --- libstdc++-v3/include/ext/array_allocator.h | ||
1144 | +++ libstdc++-v3/include/ext/array_allocator.h | ||
1145 | @@ -34,6 +34,8 @@ | ||
1146 | #ifndef _ARRAY_ALLOCATOR_H | ||
1147 | #define _ARRAY_ALLOCATOR_H 1 | ||
1148 | |||
1149 | +#pragma GCC visibility push(default) | ||
1150 | + | ||
1151 | #include <cstddef> | ||
1152 | #include <new> | ||
1153 | #include <bits/functexcept.h> | ||
1154 | @@ -142,4 +144,6 @@ | ||
1155 | { return false; } | ||
1156 | } // namespace __gnu_cxx | ||
1157 | |||
1158 | +#pragma GCC visibility pop | ||
1159 | + | ||
1160 | #endif | ||
1161 | --- libstdc++-v3/include/ext/bitmap_allocator.h | ||
1162 | +++ libstdc++-v3/include/ext/bitmap_allocator.h | ||
1163 | @@ -34,6 +34,8 @@ | ||
1164 | #ifndef _BITMAP_ALLOCATOR_H | ||
1165 | #define _BITMAP_ALLOCATOR_H 1 | ||
1166 | |||
1167 | +#pragma GCC visibility push(default) | ||
1168 | + | ||
1169 | // For std::size_t, and ptrdiff_t. | ||
1170 | #include <cstddef> | ||
1171 | |||
1172 | @@ -1289,6 +1291,8 @@ | ||
1173 | |||
1174 | } | ||
1175 | |||
1176 | +#pragma GCC visibility pop | ||
1177 | + | ||
1178 | #endif | ||
1179 | |||
1180 | // LocalWords: namespace GTHREADS bool const gthread endif Mutex mutex | ||
1181 | --- libstdc++-v3/include/ext/debug_allocator.h | ||
1182 | +++ libstdc++-v3/include/ext/debug_allocator.h | ||
1183 | @@ -48,6 +48,8 @@ | ||
1184 | #ifndef _DEBUG_ALLOCATOR_H | ||
1185 | #define _DEBUG_ALLOCATOR_H 1 | ||
1186 | |||
1187 | +#pragma GCC visibility push(default) | ||
1188 | + | ||
1189 | #include <stdexcept> | ||
1190 | |||
1191 | namespace __gnu_cxx | ||
1192 | @@ -122,4 +124,6 @@ | ||
1193 | }; | ||
1194 | } // namespace __gnu_cxx | ||
1195 | |||
1196 | +#pragma GCC visibility pop | ||
1197 | + | ||
1198 | #endif | ||
1199 | --- libstdc++-v3/include/ext/functional | ||
1200 | +++ libstdc++-v3/include/ext/functional | ||
1201 | @@ -1,6 +1,6 @@ | ||
1202 | // Functional extensions -*- C++ -*- | ||
1203 | |||
1204 | -// Copyright (C) 2002, 2004 Free Software Foundation, Inc. | ||
1205 | +// Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc. | ||
1206 | // | ||
1207 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1208 | // software; you can redistribute it and/or modify it under the | ||
1209 | @@ -62,6 +62,7 @@ | ||
1210 | #define _EXT_FUNCTIONAL 1 | ||
1211 | |||
1212 | #pragma GCC system_header | ||
1213 | +#pragma GCC visibility push(default) | ||
1214 | |||
1215 | #include <functional> | ||
1216 | |||
1217 | @@ -421,5 +422,8 @@ | ||
1218 | mem_fun1_ref(_Ret (_Tp::*__f)(_Arg) const) | ||
1219 | { return const_mem_fun1_ref_t<_Ret, _Tp, _Arg>(__f); } | ||
1220 | } // namespace __gnu_cxx | ||
1221 | + | ||
1222 | +#pragma GCC visibility pop | ||
1223 | + | ||
1224 | #endif | ||
1225 | |||
1226 | --- libstdc++-v3/include/ext/hash_map | ||
1227 | +++ libstdc++-v3/include/ext/hash_map | ||
1228 | @@ -1,6 +1,6 @@ | ||
1229 | // Hashing map implementation -*- C++ -*- | ||
1230 | |||
1231 | -// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc. | ||
1232 | +// Copyright (C) 2001, 2002, 2004, 2005 Free Software Foundation, Inc. | ||
1233 | // | ||
1234 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1235 | // software; you can redistribute it and/or modify it under the | ||
1236 | @@ -61,6 +61,8 @@ | ||
1237 | #ifndef _HASH_MAP | ||
1238 | #define _HASH_MAP 1 | ||
1239 | |||
1240 | +#pragma GCC visibility push(default) | ||
1241 | + | ||
1242 | #include <ext/hashtable.h> | ||
1243 | #include <bits/concept_check.h> | ||
1244 | |||
1245 | @@ -617,4 +619,7 @@ | ||
1246 | { return *this; } | ||
1247 | }; | ||
1248 | } // namespace std | ||
1249 | + | ||
1250 | +#pragma GCC visibility push(default) | ||
1251 | + | ||
1252 | #endif | ||
1253 | --- libstdc++-v3/include/ext/hash_set | ||
1254 | +++ libstdc++-v3/include/ext/hash_set | ||
1255 | @@ -1,6 +1,6 @@ | ||
1256 | // Hashing set implementation -*- C++ -*- | ||
1257 | |||
1258 | -// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc. | ||
1259 | +// Copyright (C) 2001, 2002, 2004, 2005 Free Software Foundation, Inc. | ||
1260 | // | ||
1261 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1262 | // software; you can redistribute it and/or modify it under the | ||
1263 | @@ -61,6 +61,8 @@ | ||
1264 | #ifndef _HASH_SET | ||
1265 | #define _HASH_SET 1 | ||
1266 | |||
1267 | +#pragma GCC visibility push(default) | ||
1268 | + | ||
1269 | #include <ext/hashtable.h> | ||
1270 | #include <bits/concept_check.h> | ||
1271 | |||
1272 | @@ -583,4 +585,7 @@ | ||
1273 | operator++(int) { return *this; } | ||
1274 | }; | ||
1275 | } // namespace std | ||
1276 | + | ||
1277 | +#pragma GCC visibility pop | ||
1278 | + | ||
1279 | #endif | ||
1280 | --- libstdc++-v3/include/ext/iterator | ||
1281 | +++ libstdc++-v3/include/ext/iterator | ||
1282 | @@ -1,6 +1,6 @@ | ||
1283 | // HP/SGI iterator extensions -*- C++ -*- | ||
1284 | |||
1285 | -// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc. | ||
1286 | +// Copyright (C) 2001, 2002, 2004, 2005 Free Software Foundation, Inc. | ||
1287 | // | ||
1288 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1289 | // software; you can redistribute it and/or modify it under the | ||
1290 | @@ -62,6 +62,7 @@ | ||
1291 | #define _EXT_ITERATOR 1 | ||
1292 | |||
1293 | #pragma GCC system_header | ||
1294 | +#pragma GCC visibility push(default) | ||
1295 | |||
1296 | #include <bits/concept_check.h> | ||
1297 | #include <iterator> | ||
1298 | @@ -113,5 +114,7 @@ | ||
1299 | } | ||
1300 | } // namespace __gnu_cxx | ||
1301 | |||
1302 | +#pragma GCC visibility pop | ||
1303 | + | ||
1304 | #endif | ||
1305 | |||
1306 | --- libstdc++-v3/include/ext/malloc_allocator.h | ||
1307 | +++ libstdc++-v3/include/ext/malloc_allocator.h | ||
1308 | @@ -1,6 +1,7 @@ | ||
1309 | // Allocator that wraps "C" malloc -*- C++ -*- | ||
1310 | |||
1311 | -// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. | ||
1312 | +// Copyright (C) 2001, 2002, 2003, 2004, 2005 | ||
1313 | +// Free Software Foundation, Inc. | ||
1314 | // | ||
1315 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1316 | // software; you can redistribute it and/or modify it under the | ||
1317 | @@ -34,6 +35,8 @@ | ||
1318 | #ifndef _MALLOC_ALLOCATOR_H | ||
1319 | #define _MALLOC_ALLOCATOR_H 1 | ||
1320 | |||
1321 | +#pragma GCC visibility push(default) | ||
1322 | + | ||
1323 | #include <cstdlib> | ||
1324 | #include <new> | ||
1325 | #include <bits/functexcept.h> | ||
1326 | @@ -122,4 +125,6 @@ | ||
1327 | { return false; } | ||
1328 | } // namespace __gnu_cxx | ||
1329 | |||
1330 | +#pragma GCC visibility pop | ||
1331 | + | ||
1332 | #endif | ||
1333 | --- libstdc++-v3/include/ext/memory | ||
1334 | +++ libstdc++-v3/include/ext/memory | ||
1335 | @@ -1,6 +1,6 @@ | ||
1336 | // Memory extensions -*- C++ -*- | ||
1337 | |||
1338 | -// Copyright (C) 2002, 2004 Free Software Foundation, Inc. | ||
1339 | +// Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc. | ||
1340 | // | ||
1341 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1342 | // software; you can redistribute it and/or modify it under the | ||
1343 | @@ -62,6 +62,7 @@ | ||
1344 | #define _EXT_MEMORY 1 | ||
1345 | |||
1346 | #pragma GCC system_header | ||
1347 | +#pragma GCC visibility push(default) | ||
1348 | |||
1349 | #include <memory> | ||
1350 | #include <bits/stl_tempbuf.h> | ||
1351 | @@ -194,5 +195,7 @@ | ||
1352 | }; | ||
1353 | } // namespace __gnu_cxx | ||
1354 | |||
1355 | +#pragma GCC visibility pop | ||
1356 | + | ||
1357 | #endif | ||
1358 | |||
1359 | --- libstdc++-v3/include/ext/mt_allocator.h | ||
1360 | +++ libstdc++-v3/include/ext/mt_allocator.h | ||
1361 | @@ -34,6 +34,8 @@ | ||
1362 | #ifndef _MT_ALLOCATOR_H | ||
1363 | #define _MT_ALLOCATOR_H 1 | ||
1364 | |||
1365 | +#pragma GCC visibility push(default) | ||
1366 | + | ||
1367 | #include <new> | ||
1368 | #include <cstdlib> | ||
1369 | #include <bits/functexcept.h> | ||
1370 | @@ -760,4 +762,6 @@ | ||
1371 | #undef __thread_default | ||
1372 | } // namespace __gnu_cxx | ||
1373 | |||
1374 | +#pragma GCC visibility pop | ||
1375 | + | ||
1376 | #endif | ||
1377 | --- libstdc++-v3/include/ext/new_allocator.h | ||
1378 | +++ libstdc++-v3/include/ext/new_allocator.h | ||
1379 | @@ -1,6 +1,6 @@ | ||
1380 | // Allocator that wraps operator new -*- C++ -*- | ||
1381 | |||
1382 | -// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. | ||
1383 | +// Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. | ||
1384 | // | ||
1385 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1386 | // software; you can redistribute it and/or modify it under the | ||
1387 | @@ -34,6 +34,8 @@ | ||
1388 | #ifndef _NEW_ALLOCATOR_H | ||
1389 | #define _NEW_ALLOCATOR_H 1 | ||
1390 | |||
1391 | +#pragma GCC visibility push(default) | ||
1392 | + | ||
1393 | #include <new> | ||
1394 | #include <bits/functexcept.h> | ||
1395 | |||
1396 | @@ -118,4 +120,6 @@ | ||
1397 | { return false; } | ||
1398 | } // namespace __gnu_cxx | ||
1399 | |||
1400 | +#pragma GCC visibility pop | ||
1401 | + | ||
1402 | #endif | ||
1403 | --- libstdc++-v3/include/ext/numeric | ||
1404 | +++ libstdc++-v3/include/ext/numeric | ||
1405 | @@ -1,6 +1,6 @@ | ||
1406 | // Numeric extensions -*- C++ -*- | ||
1407 | |||
1408 | -// Copyright (C) 2002, 2004 Free Software Foundation, Inc. | ||
1409 | +// Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc. | ||
1410 | // | ||
1411 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1412 | // software; you can redistribute it and/or modify it under the | ||
1413 | @@ -62,6 +62,7 @@ | ||
1414 | #define _EXT_NUMERIC 1 | ||
1415 | |||
1416 | #pragma GCC system_header | ||
1417 | +#pragma GCC visibility push(default) | ||
1418 | |||
1419 | #include <bits/concept_check.h> | ||
1420 | #include <numeric> | ||
1421 | @@ -146,5 +147,7 @@ | ||
1422 | } | ||
1423 | } // namespace __gnu_cxx | ||
1424 | |||
1425 | +#pragma GCC visibility pop | ||
1426 | + | ||
1427 | #endif | ||
1428 | |||
1429 | --- libstdc++-v3/include/ext/pod_char_traits.h | ||
1430 | +++ libstdc++-v3/include/ext/pod_char_traits.h | ||
1431 | @@ -37,6 +37,8 @@ | ||
1432 | #ifndef _POD_CHAR_TRAITS_H | ||
1433 | #define _POD_CHAR_TRAITS_H 1 | ||
1434 | |||
1435 | +#pragma GCC visibility push(default) | ||
1436 | + | ||
1437 | #include <string> | ||
1438 | |||
1439 | namespace __gnu_cxx | ||
1440 | @@ -182,4 +184,6 @@ | ||
1441 | }; | ||
1442 | } | ||
1443 | |||
1444 | +#pragma GCC visibility pop | ||
1445 | + | ||
1446 | #endif | ||
1447 | --- libstdc++-v3/include/ext/pool_allocator.h | ||
1448 | +++ libstdc++-v3/include/ext/pool_allocator.h | ||
1449 | @@ -1,6 +1,6 @@ | ||
1450 | // Allocators -*- C++ -*- | ||
1451 | |||
1452 | -// Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. | ||
1453 | +// Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. | ||
1454 | // | ||
1455 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1456 | // software; you can redistribute it and/or modify it under the | ||
1457 | @@ -47,6 +47,8 @@ | ||
1458 | #ifndef _POOL_ALLOCATOR_H | ||
1459 | #define _POOL_ALLOCATOR_H 1 | ||
1460 | |||
1461 | +#pragma GCC visibility push(default) | ||
1462 | + | ||
1463 | #include <bits/c++config.h> | ||
1464 | #include <cstdlib> | ||
1465 | #include <new> | ||
1466 | @@ -252,4 +254,6 @@ | ||
1467 | } | ||
1468 | } // namespace __gnu_cxx | ||
1469 | |||
1470 | +#pragma GCC visibility pop | ||
1471 | + | ||
1472 | #endif | ||
1473 | --- libstdc++-v3/include/ext/rb_tree | ||
1474 | +++ libstdc++-v3/include/ext/rb_tree | ||
1475 | @@ -1,6 +1,6 @@ | ||
1476 | // rb_tree extension -*- C++ -*- | ||
1477 | |||
1478 | -// Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. | ||
1479 | +// Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. | ||
1480 | // | ||
1481 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1482 | // software; you can redistribute it and/or modify it under the | ||
1483 | @@ -62,6 +62,7 @@ | ||
1484 | #define _RB_TREE 1 | ||
1485 | |||
1486 | #pragma GCC system_header | ||
1487 | +#pragma GCC visibility push(default) | ||
1488 | |||
1489 | #include <bits/stl_tree.h> | ||
1490 | |||
1491 | @@ -94,4 +95,6 @@ | ||
1492 | }; | ||
1493 | } // namespace __gnu_cxx | ||
1494 | |||
1495 | +#pragma GCC visibility pop | ||
1496 | + | ||
1497 | #endif | ||
1498 | --- libstdc++-v3/include/ext/rope | ||
1499 | +++ libstdc++-v3/include/ext/rope | ||
1500 | @@ -48,6 +48,8 @@ | ||
1501 | #ifndef _ROPE | ||
1502 | #define _ROPE 1 | ||
1503 | |||
1504 | +#pragma GCC visibility push(default) | ||
1505 | + | ||
1506 | #include <bits/stl_algobase.h> | ||
1507 | #include <bits/stl_construct.h> | ||
1508 | #include <bits/stl_uninitialized.h> | ||
1509 | @@ -2898,4 +2900,6 @@ | ||
1510 | |||
1511 | # include <ext/ropeimpl.h> | ||
1512 | |||
1513 | +#pragma GCC visibility pop | ||
1514 | + | ||
1515 | #endif | ||
1516 | --- libstdc++-v3/include/ext/slist | ||
1517 | +++ libstdc++-v3/include/ext/slist | ||
1518 | @@ -49,6 +49,8 @@ | ||
1519 | #ifndef _SLIST | ||
1520 | #define _SLIST 1 | ||
1521 | |||
1522 | +#pragma GCC visibility push(default) | ||
1523 | + | ||
1524 | #include <bits/stl_algobase.h> | ||
1525 | #include <bits/allocator.h> | ||
1526 | #include <bits/stl_construct.h> | ||
1527 | @@ -1069,4 +1071,7 @@ | ||
1528 | }; | ||
1529 | |||
1530 | } // namespace std | ||
1531 | + | ||
1532 | +#pragma GCC visibility pop | ||
1533 | + | ||
1534 | #endif | ||
1535 | --- libstdc++-v3/include/ext/stdio_filebuf.h | ||
1536 | +++ libstdc++-v3/include/ext/stdio_filebuf.h | ||
1537 | @@ -1,6 +1,6 @@ | ||
1538 | // File descriptor layer for filebuf -*- C++ -*- | ||
1539 | |||
1540 | -// Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. | ||
1541 | +// Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. | ||
1542 | // | ||
1543 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1544 | // software; you can redistribute it and/or modify it under the | ||
1545 | @@ -35,6 +35,7 @@ | ||
1546 | #define _STDIO_FILEBUF_H 1 | ||
1547 | |||
1548 | #pragma GCC system_header | ||
1549 | +#pragma GCC visibility push(default) | ||
1550 | |||
1551 | #include <fstream> | ||
1552 | |||
1553 | @@ -158,4 +159,6 @@ | ||
1554 | } | ||
1555 | } // namespace __gnu_cxx | ||
1556 | |||
1557 | +#pragma GCC visibility pop | ||
1558 | + | ||
1559 | #endif | ||
1560 | --- libstdc++-v3/include/ext/stdio_sync_filebuf.h | ||
1561 | +++ libstdc++-v3/include/ext/stdio_sync_filebuf.h | ||
1562 | @@ -1,6 +1,6 @@ | ||
1563 | // Iostreams wrapper for stdio FILE* -*- C++ -*- | ||
1564 | |||
1565 | -// Copyright (C) 2003, 2004 Free Software Foundation, Inc. | ||
1566 | +// Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. | ||
1567 | // | ||
1568 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1569 | // software; you can redistribute it and/or modify it under the | ||
1570 | @@ -35,6 +35,7 @@ | ||
1571 | #define _STDIO_SYNC_FILEBUF_H 1 | ||
1572 | |||
1573 | #pragma GCC system_header | ||
1574 | +#pragma GCC visibility push(default) | ||
1575 | |||
1576 | #include <streambuf> | ||
1577 | #include <unistd.h> | ||
1578 | @@ -279,4 +280,6 @@ | ||
1579 | #endif | ||
1580 | } // namespace __gnu_cxx | ||
1581 | |||
1582 | +#pragma GCC visibility pop | ||
1583 | + | ||
1584 | #endif | ||
1585 | --- libstdc++-v3/include/std/std_algorithm.h | ||
1586 | +++ libstdc++-v3/include/std/std_algorithm.h | ||
1587 | @@ -1,6 +1,6 @@ | ||
1588 | // <algorithm> -*- C++ -*- | ||
1589 | |||
1590 | -// Copyright (C) 2001, 2002 Free Software Foundation, Inc. | ||
1591 | +// Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc. | ||
1592 | // | ||
1593 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1594 | // software; you can redistribute it and/or modify it under the | ||
1595 | @@ -61,10 +61,13 @@ | ||
1596 | #define _GLIBCXX_ALGORITHM 1 | ||
1597 | |||
1598 | #pragma GCC system_header | ||
1599 | +#pragma GCC visibility push(default) | ||
1600 | |||
1601 | #include <bits/stl_algobase.h> | ||
1602 | #include <bits/stl_construct.h> | ||
1603 | #include <bits/stl_uninitialized.h> | ||
1604 | #include <bits/stl_algo.h> | ||
1605 | |||
1606 | +#pragma GCC visibility pop | ||
1607 | + | ||
1608 | #endif /* _GLIBCXX_ALGORITHM */ | ||
1609 | --- libstdc++-v3/include/std/std_bitset.h | ||
1610 | +++ libstdc++-v3/include/std/std_bitset.h | ||
1611 | @@ -48,6 +48,7 @@ | ||
1612 | #define _GLIBCXX_BITSET 1 | ||
1613 | |||
1614 | #pragma GCC system_header | ||
1615 | +#pragma GCC visibility push(default) | ||
1616 | |||
1617 | #include <cstddef> // For size_t | ||
1618 | #include <cstring> // For memset | ||
1619 | @@ -1300,4 +1301,6 @@ | ||
1620 | # include <debug/bitset> | ||
1621 | #endif | ||
1622 | |||
1623 | +#pragma GCC visibility pop | ||
1624 | + | ||
1625 | #endif /* _GLIBCXX_BITSET */ | ||
1626 | --- libstdc++-v3/include/std/std_complex.h | ||
1627 | +++ libstdc++-v3/include/std/std_complex.h | ||
1628 | @@ -43,6 +43,7 @@ | ||
1629 | #define _GLIBCXX_COMPLEX 1 | ||
1630 | |||
1631 | #pragma GCC system_header | ||
1632 | +#pragma GCC visibility push(default) | ||
1633 | |||
1634 | #include <bits/c++config.h> | ||
1635 | #include <bits/cpp_type_traits.h> | ||
1636 | @@ -1483,4 +1484,6 @@ | ||
1637 | : _M_value(__z.__rep()) { } | ||
1638 | } // namespace std | ||
1639 | |||
1640 | +#pragma GCC visibility pop | ||
1641 | + | ||
1642 | #endif /* _GLIBCXX_COMPLEX */ | ||
1643 | --- libstdc++-v3/include/std/std_deque.h | ||
1644 | +++ libstdc++-v3/include/std/std_deque.h | ||
1645 | @@ -1,6 +1,6 @@ | ||
1646 | // <deque> -*- C++ -*- | ||
1647 | |||
1648 | -// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. | ||
1649 | +// Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. | ||
1650 | // | ||
1651 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1652 | // software; you can redistribute it and/or modify it under the | ||
1653 | @@ -61,6 +61,7 @@ | ||
1654 | #define _GLIBCXX_DEQUE 1 | ||
1655 | |||
1656 | #pragma GCC system_header | ||
1657 | +#pragma GCC visibility push(default) | ||
1658 | |||
1659 | #include <bits/functexcept.h> | ||
1660 | #include <bits/stl_algobase.h> | ||
1661 | @@ -77,4 +78,6 @@ | ||
1662 | # include <debug/deque> | ||
1663 | #endif | ||
1664 | |||
1665 | +#pragma GCC visibility pop | ||
1666 | + | ||
1667 | #endif /* _GLIBCXX_DEQUE */ | ||
1668 | --- libstdc++-v3/include/std/std_fstream.h | ||
1669 | +++ libstdc++-v3/include/std/std_fstream.h | ||
1670 | @@ -40,6 +40,7 @@ | ||
1671 | #define _GLIBCXX_FSTREAM 1 | ||
1672 | |||
1673 | #pragma GCC system_header | ||
1674 | +#pragma GCC visibility push(default) | ||
1675 | |||
1676 | #include <istream> | ||
1677 | #include <ostream> | ||
1678 | @@ -782,4 +783,6 @@ | ||
1679 | # include <bits/fstream.tcc> | ||
1680 | #endif | ||
1681 | |||
1682 | +#pragma GCC visibility pop | ||
1683 | + | ||
1684 | #endif /* _GLIBCXX_FSTREAM */ | ||
1685 | --- libstdc++-v3/include/std/std_functional.h | ||
1686 | +++ libstdc++-v3/include/std/std_functional.h | ||
1687 | @@ -1,6 +1,6 @@ | ||
1688 | // <functional> -*- C++ -*- | ||
1689 | |||
1690 | -// Copyright (C) 2001, 2002 Free Software Foundation, Inc. | ||
1691 | +// Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc. | ||
1692 | // | ||
1693 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1694 | // software; you can redistribute it and/or modify it under the | ||
1695 | @@ -49,9 +49,12 @@ | ||
1696 | #define _GLIBCXX_FUNCTIONAL 1 | ||
1697 | |||
1698 | #pragma GCC system_header | ||
1699 | +#pragma GCC visibility push(default) | ||
1700 | |||
1701 | #include <bits/c++config.h> | ||
1702 | #include <cstddef> | ||
1703 | #include <bits/stl_function.h> | ||
1704 | |||
1705 | +#pragma GCC visibility pop | ||
1706 | + | ||
1707 | #endif /* _GLIBCXX_FUNCTIONAL */ | ||
1708 | --- libstdc++-v3/include/std/std_iomanip.h | ||
1709 | +++ libstdc++-v3/include/std/std_iomanip.h | ||
1710 | @@ -1,6 +1,6 @@ | ||
1711 | // Standard stream manipulators -*- C++ -*- | ||
1712 | |||
1713 | -// Copyright (C) 1997, 1998, 1999, 2001, 2002, 2003 | ||
1714 | +// Copyright (C) 1997, 1998, 1999, 2001, 2002, 2003, 2005 | ||
1715 | // Free Software Foundation, Inc. | ||
1716 | // | ||
1717 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1718 | @@ -40,6 +40,7 @@ | ||
1719 | #define _GLIBCXX_IOMANIP 1 | ||
1720 | |||
1721 | #pragma GCC system_header | ||
1722 | +#pragma GCC visibility push(default) | ||
1723 | |||
1724 | #include <bits/c++config.h> | ||
1725 | #include <istream> | ||
1726 | @@ -296,4 +297,6 @@ | ||
1727 | #endif | ||
1728 | } // namespace std | ||
1729 | |||
1730 | +#pragma GCC visibility pop | ||
1731 | + | ||
1732 | #endif /* _GLIBCXX_IOMANIP */ | ||
1733 | --- libstdc++-v3/include/std/std_ios.h | ||
1734 | +++ libstdc++-v3/include/std/std_ios.h | ||
1735 | @@ -1,6 +1,7 @@ | ||
1736 | // Iostreams base classes -*- C++ -*- | ||
1737 | |||
1738 | -// Copyright (C) 1997, 1998, 1999, 2001, 2002 Free Software Foundation, Inc. | ||
1739 | +// Copyright (C) 1997, 1998, 1999, 2001, 2002, 2005 | ||
1740 | +// Free Software Foundation, Inc. | ||
1741 | // | ||
1742 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1743 | // software; you can redistribute it and/or modify it under the | ||
1744 | @@ -39,6 +40,7 @@ | ||
1745 | #define _GLIBCXX_IOS 1 | ||
1746 | |||
1747 | #pragma GCC system_header | ||
1748 | +#pragma GCC visibility push(default) | ||
1749 | |||
1750 | #include <iosfwd> | ||
1751 | #include <exception> // For ios_base::failure | ||
1752 | @@ -49,4 +51,6 @@ | ||
1753 | #include <streambuf> | ||
1754 | #include <bits/basic_ios.h> | ||
1755 | |||
1756 | +#pragma GCC visibility pop | ||
1757 | + | ||
1758 | #endif /* _GLIBCXX_IOS */ | ||
1759 | --- libstdc++-v3/include/std/std_iosfwd.h | ||
1760 | +++ libstdc++-v3/include/std/std_iosfwd.h | ||
1761 | @@ -1,6 +1,6 @@ | ||
1762 | // Forwarding declarations -*- C++ -*- | ||
1763 | |||
1764 | -// Copyright (C) 1997, 1998, 1999, 2001, 2002, 2003 | ||
1765 | +// Copyright (C) 1997, 1998, 1999, 2001, 2002, 2003, 2005 | ||
1766 | // Free Software Foundation, Inc. | ||
1767 | // | ||
1768 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1769 | @@ -40,6 +40,7 @@ | ||
1770 | #define _GLIBCXX_IOSFWD 1 | ||
1771 | |||
1772 | #pragma GCC system_header | ||
1773 | +#pragma GCC visibility push(default) | ||
1774 | |||
1775 | #include <bits/c++config.h> | ||
1776 | #include <bits/c++locale.h> | ||
1777 | @@ -164,4 +165,6 @@ | ||
1778 | /** @} */ | ||
1779 | } // namespace std | ||
1780 | |||
1781 | +#pragma GCC visibility pop | ||
1782 | + | ||
1783 | #endif /* _GLIBCXX_IOSFWD */ | ||
1784 | --- libstdc++-v3/include/std/std_iostream.h | ||
1785 | +++ libstdc++-v3/include/std/std_iostream.h | ||
1786 | @@ -1,6 +1,7 @@ | ||
1787 | // Standard iostream objects -*- C++ -*- | ||
1788 | |||
1789 | -// Copyright (C) 1997, 1998, 1999, 2001, 2002 Free Software Foundation, Inc. | ||
1790 | +// Copyright (C) 1997, 1998, 1999, 2001, 2002, 2005 | ||
1791 | +// Free Software Foundation, Inc. | ||
1792 | // | ||
1793 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1794 | // software; you can redistribute it and/or modify it under the | ||
1795 | @@ -39,6 +40,7 @@ | ||
1796 | #define _GLIBCXX_IOSTREAM 1 | ||
1797 | |||
1798 | #pragma GCC system_header | ||
1799 | +#pragma GCC visibility push(default) | ||
1800 | |||
1801 | #include <bits/c++config.h> | ||
1802 | #include <ostream> | ||
1803 | @@ -76,4 +78,6 @@ | ||
1804 | static ios_base::Init __ioinit; | ||
1805 | } // namespace std | ||
1806 | |||
1807 | +#pragma GCC visibility pop | ||
1808 | + | ||
1809 | #endif /* _GLIBCXX_IOSTREAM */ | ||
1810 | --- libstdc++-v3/include/std/std_istream.h | ||
1811 | +++ libstdc++-v3/include/std/std_istream.h | ||
1812 | @@ -1,6 +1,6 @@ | ||
1813 | // Input streams -*- C++ -*- | ||
1814 | |||
1815 | -// Copyright (C) 1997, 1998, 1999, 2001, 2002, 2003, 2004 | ||
1816 | +// Copyright (C) 1997, 1998, 1999, 2001, 2002, 2003, 2004, 2005 | ||
1817 | // Free Software Foundation, Inc. | ||
1818 | // | ||
1819 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1820 | @@ -40,6 +40,7 @@ | ||
1821 | #define _GLIBCXX_ISTREAM 1 | ||
1822 | |||
1823 | #pragma GCC system_header | ||
1824 | +#pragma GCC visibility push(default) | ||
1825 | |||
1826 | #include <ios> | ||
1827 | #include <limits> // For numeric_limits | ||
1828 | @@ -814,4 +815,6 @@ | ||
1829 | # include <bits/istream.tcc> | ||
1830 | #endif | ||
1831 | |||
1832 | +#pragma GCC visibility pop | ||
1833 | + | ||
1834 | #endif /* _GLIBCXX_ISTREAM */ | ||
1835 | --- libstdc++-v3/include/std/std_iterator.h | ||
1836 | +++ libstdc++-v3/include/std/std_iterator.h | ||
1837 | @@ -1,6 +1,6 @@ | ||
1838 | // <iterator> -*- C++ -*- | ||
1839 | |||
1840 | -// Copyright (C) 2001, 2002 Free Software Foundation, Inc. | ||
1841 | +// Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc. | ||
1842 | // | ||
1843 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1844 | // software; you can redistribute it and/or modify it under the | ||
1845 | @@ -61,6 +61,7 @@ | ||
1846 | #define _GLIBCXX_ITERATOR 1 | ||
1847 | |||
1848 | #pragma GCC system_header | ||
1849 | +#pragma GCC visibility push(default) | ||
1850 | |||
1851 | #include <bits/c++config.h> | ||
1852 | #include <cstddef> | ||
1853 | @@ -72,4 +73,6 @@ | ||
1854 | #include <bits/stream_iterator.h> | ||
1855 | #include <bits/streambuf_iterator.h> | ||
1856 | |||
1857 | +#pragma GCC visibility pop | ||
1858 | + | ||
1859 | #endif /* _GLIBCXX_ITERATOR */ | ||
1860 | --- libstdc++-v3/include/std/std_limits.h | ||
1861 | +++ libstdc++-v3/include/std/std_limits.h | ||
1862 | @@ -1,6 +1,7 @@ | ||
1863 | // The template and inlines for the -*- C++ -*- numeric_limits classes. | ||
1864 | |||
1865 | -// Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. | ||
1866 | +// Copyright (C) 1999, 2000, 2001, 2002, 2003, 2005 | ||
1867 | +// Free Software Foundation, Inc. | ||
1868 | // | ||
1869 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1870 | // software; you can redistribute it and/or modify it under the | ||
1871 | @@ -43,6 +44,7 @@ | ||
1872 | #define _GLIBCXX_NUMERIC_LIMITS 1 | ||
1873 | |||
1874 | #pragma GCC system_header | ||
1875 | +#pragma GCC visibility push(default) | ||
1876 | |||
1877 | #include <bits/c++config.h> | ||
1878 | |||
1879 | @@ -1156,4 +1158,6 @@ | ||
1880 | #undef __glibcxx_digits | ||
1881 | #undef __glibcxx_digits10 | ||
1882 | |||
1883 | +#pragma GCC visibility pop | ||
1884 | + | ||
1885 | #endif // _GLIBCXX_NUMERIC_LIMITS | ||
1886 | --- libstdc++-v3/include/std/std_list.h | ||
1887 | +++ libstdc++-v3/include/std/std_list.h | ||
1888 | @@ -1,6 +1,6 @@ | ||
1889 | // <list> -*- C++ -*- | ||
1890 | |||
1891 | -// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. | ||
1892 | +// Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. | ||
1893 | // | ||
1894 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1895 | // software; you can redistribute it and/or modify it under the | ||
1896 | @@ -61,6 +61,7 @@ | ||
1897 | #define _GLIBCXX_LIST 1 | ||
1898 | |||
1899 | #pragma GCC system_header | ||
1900 | +#pragma GCC visibility push(default) | ||
1901 | |||
1902 | #include <bits/functexcept.h> | ||
1903 | #include <bits/stl_algobase.h> | ||
1904 | @@ -77,5 +78,7 @@ | ||
1905 | # include <debug/list> | ||
1906 | #endif | ||
1907 | |||
1908 | +#pragma GCC visibility pop | ||
1909 | + | ||
1910 | #endif /* _GLIBCXX_LIST */ | ||
1911 | |||
1912 | --- libstdc++-v3/include/std/std_locale.h | ||
1913 | +++ libstdc++-v3/include/std/std_locale.h | ||
1914 | @@ -1,6 +1,7 @@ | ||
1915 | // Locale support -*- C++ -*- | ||
1916 | |||
1917 | -// Copyright (C) 1997, 1998, 1999, 2002, 2003 Free Software Foundation, Inc. | ||
1918 | +// Copyright (C) 1997, 1998, 1999, 2002, 2003, 2005 | ||
1919 | +// Free Software Foundation, Inc. | ||
1920 | // | ||
1921 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1922 | // software; you can redistribute it and/or modify it under the | ||
1923 | @@ -39,10 +40,13 @@ | ||
1924 | #define _GLIBCXX_LOCALE 1 | ||
1925 | |||
1926 | #pragma GCC system_header | ||
1927 | +#pragma GCC visibility push(default) | ||
1928 | |||
1929 | #include <bits/localefwd.h> | ||
1930 | #include <bits/locale_classes.h> | ||
1931 | #include <bits/locale_facets.h> | ||
1932 | #include <bits/locale_facets.tcc> | ||
1933 | |||
1934 | +#pragma GCC visibility pop | ||
1935 | + | ||
1936 | #endif /* _GLIBCXX_LOCALE */ | ||
1937 | --- libstdc++-v3/include/std/std_map.h | ||
1938 | +++ libstdc++-v3/include/std/std_map.h | ||
1939 | @@ -1,6 +1,6 @@ | ||
1940 | // <map> -*- C++ -*- | ||
1941 | |||
1942 | -// Copyright (C) 2001, 2002 Free Software Foundation, Inc. | ||
1943 | +// Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc. | ||
1944 | // | ||
1945 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1946 | // software; you can redistribute it and/or modify it under the | ||
1947 | @@ -61,6 +61,7 @@ | ||
1948 | #define _GLIBCXX_MAP 1 | ||
1949 | |||
1950 | #pragma GCC system_header | ||
1951 | +#pragma GCC visibility push(default) | ||
1952 | |||
1953 | #include <bits/stl_tree.h> | ||
1954 | #include <bits/stl_map.h> | ||
1955 | @@ -70,4 +71,6 @@ | ||
1956 | # include <debug/map> | ||
1957 | #endif | ||
1958 | |||
1959 | +#pragma GCC visibility pop | ||
1960 | + | ||
1961 | #endif /* _GLIBCXX_MAP */ | ||
1962 | --- libstdc++-v3/include/std/std_memory.h | ||
1963 | +++ libstdc++-v3/include/std/std_memory.h | ||
1964 | @@ -1,6 +1,6 @@ | ||
1965 | // <memory> -*- C++ -*- | ||
1966 | |||
1967 | -// Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc. | ||
1968 | +// Copyright (C) 2001, 2002, 2004, 2005 Free Software Foundation, Inc. | ||
1969 | // | ||
1970 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1971 | // software; you can redistribute it and/or modify it under the | ||
1972 | @@ -49,6 +49,7 @@ | ||
1973 | #define _GLIBCXX_MEMORY 1 | ||
1974 | |||
1975 | #pragma GCC system_header | ||
1976 | +#pragma GCC visibility push(default) | ||
1977 | |||
1978 | #include <bits/stl_algobase.h> | ||
1979 | #include <bits/allocator.h> | ||
1980 | @@ -370,4 +371,6 @@ | ||
1981 | }; | ||
1982 | } // namespace std | ||
1983 | |||
1984 | +#pragma GCC visibility pop | ||
1985 | + | ||
1986 | #endif /* _GLIBCXX_MEMORY */ | ||
1987 | --- libstdc++-v3/include/std/std_numeric.h | ||
1988 | +++ libstdc++-v3/include/std/std_numeric.h | ||
1989 | @@ -1,6 +1,6 @@ | ||
1990 | // <numeric> -*- C++ -*- | ||
1991 | |||
1992 | -// Copyright (C) 2001, 2002 Free Software Foundation, Inc. | ||
1993 | +// Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc. | ||
1994 | // | ||
1995 | // This file is part of the GNU ISO C++ Library. This library is free | ||
1996 | // software; you can redistribute it and/or modify it under the | ||
1997 | @@ -61,6 +61,7 @@ | ||
1998 | #define _GLIBCXX_NUMERIC 1 | ||
1999 | |||
2000 | #pragma GCC system_header | ||
2001 | +#pragma GCC visibility push(default) | ||
2002 | |||
2003 | #include <bits/c++config.h> | ||
2004 | #include <cstddef> | ||
2005 | @@ -68,4 +69,6 @@ | ||
2006 | #include <bits/stl_function.h> | ||
2007 | #include <bits/stl_numeric.h> | ||
2008 | |||
2009 | +#pragma GCC visibility pop | ||
2010 | + | ||
2011 | #endif /* _GLIBCXX_NUMERIC */ | ||
2012 | --- libstdc++-v3/include/std/std_ostream.h | ||
2013 | +++ libstdc++-v3/include/std/std_ostream.h | ||
2014 | @@ -1,6 +1,6 @@ | ||
2015 | // Output streams -*- C++ -*- | ||
2016 | |||
2017 | -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003 | ||
2018 | +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005 | ||
2019 | // Free Software Foundation, Inc. | ||
2020 | // | ||
2021 | // This file is part of the GNU ISO C++ Library. This library is free | ||
2022 | @@ -40,6 +40,7 @@ | ||
2023 | #define _GLIBCXX_OSTREAM 1 | ||
2024 | |||
2025 | #pragma GCC system_header | ||
2026 | +#pragma GCC visibility push(default) | ||
2027 | |||
2028 | #include <ios> | ||
2029 | |||
2030 | @@ -544,4 +545,6 @@ | ||
2031 | # include <bits/ostream.tcc> | ||
2032 | #endif | ||
2033 | |||
2034 | +#pragma GCC visibility pop | ||
2035 | + | ||
2036 | #endif /* _GLIBCXX_OSTREAM */ | ||
2037 | --- libstdc++-v3/include/std/std_queue.h | ||
2038 | +++ libstdc++-v3/include/std/std_queue.h | ||
2039 | @@ -1,6 +1,6 @@ | ||
2040 | // <queue> -*- C++ -*- | ||
2041 | |||
2042 | -// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. | ||
2043 | +// Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. | ||
2044 | // | ||
2045 | // This file is part of the GNU ISO C++ Library. This library is free | ||
2046 | // software; you can redistribute it and/or modify it under the | ||
2047 | @@ -61,6 +61,7 @@ | ||
2048 | #define _GLIBCXX_QUEUE 1 | ||
2049 | |||
2050 | #pragma GCC system_header | ||
2051 | +#pragma GCC visibility push(default) | ||
2052 | |||
2053 | #include <bits/c++config.h> | ||
2054 | #include <bits/functexcept.h> | ||
2055 | @@ -74,4 +75,6 @@ | ||
2056 | #include <vector> | ||
2057 | #include <bits/stl_queue.h> | ||
2058 | |||
2059 | +#pragma GCC visibility pop | ||
2060 | + | ||
2061 | #endif /* _GLIBCXX_QUEUE */ | ||
2062 | --- libstdc++-v3/include/std/std_set.h | ||
2063 | +++ libstdc++-v3/include/std/std_set.h | ||
2064 | @@ -1,6 +1,6 @@ | ||
2065 | // <set> -*- C++ -*- | ||
2066 | |||
2067 | -// Copyright (C) 2001, 2002 Free Software Foundation, Inc. | ||
2068 | +// Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc. | ||
2069 | // | ||
2070 | // This file is part of the GNU ISO C++ Library. This library is free | ||
2071 | // software; you can redistribute it and/or modify it under the | ||
2072 | @@ -61,7 +61,8 @@ | ||
2073 | #define _GLIBCXX_SET 1 | ||
2074 | |||
2075 | #pragma GCC system_header | ||
2076 | - | ||
2077 | +#pragma GCC visibility push(default) | ||
2078 | + | ||
2079 | #include <bits/stl_tree.h> | ||
2080 | #include <bits/stl_set.h> | ||
2081 | #include <bits/stl_multiset.h> | ||
2082 | @@ -70,4 +71,6 @@ | ||
2083 | # include <debug/set> | ||
2084 | #endif | ||
2085 | |||
2086 | +#pragma GCC visibility pop | ||
2087 | + | ||
2088 | #endif /* _GLIBCXX_SET */ | ||
2089 | --- libstdc++-v3/include/std/std_sstream.h | ||
2090 | +++ libstdc++-v3/include/std/std_sstream.h | ||
2091 | @@ -40,6 +40,7 @@ | ||
2092 | #define _GLIBCXX_SSTREAM 1 | ||
2093 | |||
2094 | #pragma GCC system_header | ||
2095 | +#pragma GCC visibility push(default) | ||
2096 | |||
2097 | #include <istream> | ||
2098 | #include <ostream> | ||
2099 | @@ -614,4 +615,6 @@ | ||
2100 | # include <bits/sstream.tcc> | ||
2101 | #endif | ||
2102 | |||
2103 | +#pragma GCC visibility pop | ||
2104 | + | ||
2105 | #endif /* _GLIBCXX_SSTREAM */ | ||
2106 | --- libstdc++-v3/include/std/std_stack.h | ||
2107 | +++ libstdc++-v3/include/std/std_stack.h | ||
2108 | @@ -1,6 +1,6 @@ | ||
2109 | // <stack> -*- C++ -*- | ||
2110 | |||
2111 | -// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. | ||
2112 | +// Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. | ||
2113 | // | ||
2114 | // This file is part of the GNU ISO C++ Library. This library is free | ||
2115 | // software; you can redistribute it and/or modify it under the | ||
2116 | @@ -61,6 +61,7 @@ | ||
2117 | #define _GLIBCXX_STACK 1 | ||
2118 | |||
2119 | #pragma GCC system_header | ||
2120 | +#pragma GCC visibility push(default) | ||
2121 | |||
2122 | #include <bits/stl_algobase.h> | ||
2123 | #include <bits/allocator.h> | ||
2124 | @@ -69,4 +70,6 @@ | ||
2125 | #include <deque> | ||
2126 | #include <bits/stl_stack.h> | ||
2127 | |||
2128 | +#pragma GCC visibility pop | ||
2129 | + | ||
2130 | #endif /* _GLIBCXX_STACK */ | ||
2131 | --- libstdc++-v3/include/std/std_stdexcept.h | ||
2132 | +++ libstdc++-v3/include/std/std_stdexcept.h | ||
2133 | @@ -1,6 +1,6 @@ | ||
2134 | // Standard exception classes -*- C++ -*- | ||
2135 | |||
2136 | -// Copyright (C) 2001, 2002 Free Software Foundation, Inc. | ||
2137 | +// Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc. | ||
2138 | // | ||
2139 | // This file is part of the GNU ISO C++ Library. This library is free | ||
2140 | // software; you can redistribute it and/or modify it under the | ||
2141 | @@ -39,6 +39,7 @@ | ||
2142 | #define _GLIBCXX_STDEXCEPT 1 | ||
2143 | |||
2144 | #pragma GCC system_header | ||
2145 | +#pragma GCC visibility push(default) | ||
2146 | |||
2147 | #include <exception> | ||
2148 | #include <string> | ||
2149 | @@ -144,4 +145,6 @@ | ||
2150 | }; | ||
2151 | } // namespace std | ||
2152 | |||
2153 | +#pragma GCC visibility pop | ||
2154 | + | ||
2155 | #endif /* _GLIBCXX_STDEXCEPT */ | ||
2156 | --- libstdc++-v3/include/std/std_streambuf.h | ||
2157 | +++ libstdc++-v3/include/std/std_streambuf.h | ||
2158 | @@ -1,6 +1,6 @@ | ||
2159 | // Stream buffer classes -*- C++ -*- | ||
2160 | |||
2161 | -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 | ||
2162 | +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 | ||
2163 | // Free Software Foundation, Inc. | ||
2164 | // | ||
2165 | // This file is part of the GNU ISO C++ Library. This library is free | ||
2166 | @@ -40,6 +40,7 @@ | ||
2167 | #define _GLIBXX_STREAMBUF 1 | ||
2168 | |||
2169 | #pragma GCC system_header | ||
2170 | +#pragma GCC visibility push(default) | ||
2171 | |||
2172 | #include <bits/c++config.h> | ||
2173 | #include <iosfwd> | ||
2174 | @@ -797,4 +798,6 @@ | ||
2175 | # include <bits/streambuf.tcc> | ||
2176 | #endif | ||
2177 | |||
2178 | +#pragma GCC visibility pop | ||
2179 | + | ||
2180 | #endif /* _GLIBCXX_STREAMBUF */ | ||
2181 | --- libstdc++-v3/include/std/std_string.h | ||
2182 | +++ libstdc++-v3/include/std/std_string.h | ||
2183 | @@ -40,6 +40,7 @@ | ||
2184 | #define _GLIBCXX_STRING 1 | ||
2185 | |||
2186 | #pragma GCC system_header | ||
2187 | +#pragma GCC visibility push(default) | ||
2188 | |||
2189 | #include <bits/c++config.h> | ||
2190 | #include <bits/stringfwd.h> | ||
2191 | @@ -56,4 +57,6 @@ | ||
2192 | # include <bits/basic_string.tcc> | ||
2193 | #endif | ||
2194 | |||
2195 | +#pragma GCC visibility pop | ||
2196 | + | ||
2197 | #endif /* _GLIBCXX_STRING */ | ||
2198 | --- libstdc++-v3/include/std/std_utility.h | ||
2199 | +++ libstdc++-v3/include/std/std_utility.h | ||
2200 | @@ -1,6 +1,6 @@ | ||
2201 | // <utility> -*- C++ -*- | ||
2202 | |||
2203 | -// Copyright (C) 2001, 2002 Free Software Foundation, Inc. | ||
2204 | +// Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc. | ||
2205 | // | ||
2206 | // This file is part of the GNU ISO C++ Library. This library is free | ||
2207 | // software; you can redistribute it and/or modify it under the | ||
2208 | @@ -61,9 +61,12 @@ | ||
2209 | #define _GLIBCXX_UTILITY 1 | ||
2210 | |||
2211 | #pragma GCC system_header | ||
2212 | +#pragma GCC visibility push(default) | ||
2213 | |||
2214 | #include <bits/c++config.h> | ||
2215 | #include <bits/stl_relops.h> | ||
2216 | #include <bits/stl_pair.h> | ||
2217 | |||
2218 | +#pragma GCC visibility pop | ||
2219 | + | ||
2220 | #endif /* _GLIBCXX_UTILITY */ | ||
2221 | --- libstdc++-v3/include/std/std_valarray.h | ||
2222 | +++ libstdc++-v3/include/std/std_valarray.h | ||
2223 | @@ -1,6 +1,6 @@ | ||
2224 | // The template and inlines for the -*- C++ -*- valarray class. | ||
2225 | |||
2226 | -// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004 | ||
2227 | +// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2005 | ||
2228 | // Free Software Foundation, Inc. | ||
2229 | // | ||
2230 | // This file is part of the GNU ISO C++ Library. This library is free | ||
2231 | @@ -38,6 +38,7 @@ | ||
2232 | #define _GLIBCXX_VALARRAY 1 | ||
2233 | |||
2234 | #pragma GCC system_header | ||
2235 | +#pragma GCC visibility push(default) | ||
2236 | |||
2237 | #include <bits/c++config.h> | ||
2238 | #include <cstddef> | ||
2239 | @@ -1007,4 +1008,6 @@ | ||
2240 | |||
2241 | } // namespace std | ||
2242 | |||
2243 | +#pragma GCC visibility pop | ||
2244 | + | ||
2245 | #endif /* _GLIBCXX_VALARRAY */ | ||
2246 | --- libstdc++-v3/include/std/std_vector.h | ||
2247 | +++ libstdc++-v3/include/std/std_vector.h | ||
2248 | @@ -1,6 +1,6 @@ | ||
2249 | // <vector> -*- C++ -*- | ||
2250 | |||
2251 | -// Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. | ||
2252 | +// Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. | ||
2253 | // | ||
2254 | // This file is part of the GNU ISO C++ Library. This library is free | ||
2255 | // software; you can redistribute it and/or modify it under the | ||
2256 | @@ -61,6 +61,7 @@ | ||
2257 | #define _GLIBCXX_VECTOR 1 | ||
2258 | |||
2259 | #pragma GCC system_header | ||
2260 | +#pragma GCC visibility push(default) | ||
2261 | |||
2262 | #include <bits/functexcept.h> | ||
2263 | #include <bits/stl_algobase.h> | ||
2264 | @@ -78,5 +79,7 @@ | ||
2265 | # include <debug/vector> | ||
2266 | #endif | ||
2267 | |||
2268 | +#pragma GCC visibility pop | ||
2269 | + | ||
2270 | #endif /* _GLIBCXX_VECTOR */ | ||
2271 | |||
2272 | --- libstdc++-v3/include/tr1/array | ||
2273 | +++ libstdc++-v3/include/tr1/array | ||
2274 | @@ -34,6 +34,8 @@ | ||
2275 | #ifndef _ARRAY | ||
2276 | #define _ARRAY 1 | ||
2277 | |||
2278 | +#pragma GCC visibility push(default) | ||
2279 | + | ||
2280 | #include <new> | ||
2281 | #include <iterator> | ||
2282 | #include <algorithm> | ||
2283 | @@ -231,4 +233,6 @@ | ||
2284 | } // namespace std::tr1 | ||
2285 | } | ||
2286 | |||
2287 | +#pragma GCC visibility pop | ||
2288 | + | ||
2289 | #endif | ||
2290 | --- libstdc++-v3/include/tr1/functional | ||
2291 | +++ libstdc++-v3/include/tr1/functional | ||
2292 | @@ -34,6 +34,8 @@ | ||
2293 | #ifndef _TR1_FUNCTIONAL | ||
2294 | #define _TR1_FUNCTIONAL 1 | ||
2295 | |||
2296 | +#pragma GCC visibility push(default) | ||
2297 | + | ||
2298 | #include "../functional" | ||
2299 | #include <typeinfo> | ||
2300 | #include <tr1/type_traits> | ||
2301 | @@ -1266,4 +1268,6 @@ | ||
2302 | } | ||
2303 | } | ||
2304 | |||
2305 | +#pragma GCC visibility pop | ||
2306 | + | ||
2307 | #endif | ||
2308 | --- libstdc++-v3/include/tr1/memory | ||
2309 | +++ libstdc++-v3/include/tr1/memory | ||
2310 | @@ -30,6 +30,8 @@ | ||
2311 | #ifndef _TR1_MEMORY | ||
2312 | #define _TR1_MEMORY 1 | ||
2313 | |||
2314 | +#pragma GCC visibility push(default) | ||
2315 | + | ||
2316 | #include "../memory" | ||
2317 | #include <functional> // std::less | ||
2318 | #include <exception> // std::exception | ||
2319 | @@ -48,4 +50,6 @@ | ||
2320 | |||
2321 | #include <tr1/boost_shared_ptr.h> | ||
2322 | |||
2323 | +#pragma GCC visibility pop | ||
2324 | + | ||
2325 | #endif | ||
2326 | --- libstdc++-v3/include/tr1/tuple | ||
2327 | +++ libstdc++-v3/include/tr1/tuple | ||
2328 | @@ -36,6 +36,8 @@ | ||
2329 | #ifndef _TUPLE | ||
2330 | #define _TUPLE 1 | ||
2331 | |||
2332 | +#pragma GCC visibility push(default) | ||
2333 | + | ||
2334 | #include <tr1/utility> | ||
2335 | #include <tr1/ref_fwd.h> | ||
2336 | |||
2337 | @@ -272,4 +274,6 @@ | ||
2338 | |||
2339 | #include <tr1/functional> | ||
2340 | |||
2341 | +#pragma GCC visibility pop | ||
2342 | + | ||
2343 | #endif | ||
2344 | --- libstdc++-v3/include/tr1/type_traits | ||
2345 | +++ libstdc++-v3/include/tr1/type_traits | ||
2346 | @@ -34,6 +34,8 @@ | ||
2347 | #ifndef _TYPE_TRAITS | ||
2348 | #define _TYPE_TRAITS 1 | ||
2349 | |||
2350 | +#pragma GCC visibility push(default) | ||
2351 | + | ||
2352 | #include <bits/c++config.h> | ||
2353 | #include <tr1/type_traits_fwd.h> | ||
2354 | |||
2355 | @@ -703,4 +705,6 @@ | ||
2356 | } | ||
2357 | } | ||
2358 | |||
2359 | +#pragma GCC visibility pop | ||
2360 | + | ||
2361 | #endif | ||
2362 | --- libstdc++-v3/include/tr1/unordered_map | ||
2363 | +++ libstdc++-v3/include/tr1/unordered_map | ||
2364 | @@ -34,6 +34,8 @@ | ||
2365 | #ifndef GNU_LIBSTDCXX_TR1_UNORDERED_MAP_ | ||
2366 | #define GNU_LIBSTDCXX_TR1_UNORDERED_MAP_ | ||
2367 | |||
2368 | +#pragma GCC visibility push(default) | ||
2369 | + | ||
2370 | #include <tr1/hashtable> | ||
2371 | #include <tr1/functional> | ||
2372 | #include <tr1/functional> | ||
2373 | @@ -163,4 +165,6 @@ | ||
2374 | |||
2375 | } } | ||
2376 | |||
2377 | +#pragma GCC visibility pop | ||
2378 | + | ||
2379 | #endif /* GNU_LIBSTDCXX_TR1_UNORDERED_MAP_ */ | ||
2380 | --- libstdc++-v3/include/tr1/unordered_set | ||
2381 | +++ libstdc++-v3/include/tr1/unordered_set | ||
2382 | @@ -34,6 +34,8 @@ | ||
2383 | #ifndef GNU_LIBSTDCXX_TR1_UNORDERED_SET_ | ||
2384 | #define GNU_LIBSTDCXX_TR1_UNORDERED_SET_ | ||
2385 | |||
2386 | +#pragma GCC visibility push(default) | ||
2387 | + | ||
2388 | #include <tr1/hashtable> | ||
2389 | #include <tr1/functional> | ||
2390 | #include <memory> | ||
2391 | @@ -157,4 +159,6 @@ | ||
2392 | |||
2393 | } } | ||
2394 | |||
2395 | +#pragma GCC visibility pop | ||
2396 | + | ||
2397 | #endif /* GNU_LIBSTDCXX_TR1_UNORDERED_SET_ */ | ||
2398 | --- libstdc++-v3/include/tr1/utility | ||
2399 | +++ libstdc++-v3/include/tr1/utility | ||
2400 | @@ -34,6 +34,8 @@ | ||
2401 | #ifndef _TR1_UTILITY | ||
2402 | #define _TR1_UTILITY 1 | ||
2403 | |||
2404 | +#pragma GCC visibility push(default) | ||
2405 | + | ||
2406 | #include "../utility" | ||
2407 | |||
2408 | namespace std | ||
2409 | @@ -93,6 +95,8 @@ | ||
2410 | get(const pair<_Tp1, _Tp2>& __in) | ||
2411 | { return __pair_get<_Int>::__const_get(__in); } | ||
2412 | } | ||
2413 | -} | ||
2414 | +} | ||
2415 | + | ||
2416 | +#pragma GCC visibility pop | ||
2417 | |||
2418 | #endif | ||
2419 | --- libstdc++-v3/testsuite/20_util/memory/auto_ptr/assign_neg.cc | ||
2420 | +++ libstdc++-v3/testsuite/20_util/memory/auto_ptr/assign_neg.cc | ||
2421 | @@ -46,5 +46,5 @@ | ||
2422 | test01(); | ||
2423 | return 0; | ||
2424 | } | ||
2425 | -// { dg-error "candidates" "" { target *-*-* } 223 } | ||
2426 | -// { dg-error "std::auto_ptr" "" { target *-*-* } 353 } | ||
2427 | +// { dg-error "candidates" "" { target *-*-* } 224 } | ||
2428 | +// { dg-error "std::auto_ptr" "" { target *-*-* } 354 } |