From 4e3fe558a15c7c14416361ccd4ca69a85fef0b3f Mon Sep 17 00:00:00 2001 From: Ingo Weinhold Date: Thu, 23 Oct 2008 21:47:38 +0000 Subject: [PATCH] No longer define __BEOS__ for target Haiku. git-svn-id: file:///srv/svn/repos/haiku/buildtools/trunk@28306 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- legacy/binutils/bfd/cache.c | 6 +++--- legacy/binutils/binutils/ar.c | 14 +++++++------- legacy/binutils/gas/as.c | 10 +++++----- legacy/binutils/ld/ld.info | 158 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- legacy/binutils/ld/lexsup.c | 6 +++--- legacy/gcc/gcc/cccp.c | 300 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---- legacy/gcc/gcc/collect2.c | 118 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------- legacy/gcc/gcc/cppinit.c | 84 +++++++++++++++++++++++++++++++++++++++++++------------------------------------- legacy/gcc/gcc/gcc.c | 164 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- legacy/gcc/gcc/gthr.h | 4 ++-- legacy/gcc/gcc/libgcc2.c | 220 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--- legacy/gcc/gcc/toplev.c | 216 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--- legacy/binutils/bfd/doc/bfd.info | 130 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------ legacy/binutils/binutils/doc/binutils.info | 62 ++++++++++++++++++++++++++++++++------------------------------ legacy/binutils/gas/doc/as.info | 922 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------- legacy/gcc/gcc/ginclude/stdarg.h | 4 ++-- legacy/gcc/gcc/ginclude/stdbool.h | 2 +- legacy/gcc/gcc/ginclude/stddef.h | 6 +++--- legacy/gcc/gcc/ginclude/varargs.h | 4 ++-- legacy/gcc/libstdc++/std/bastring.h | 14 +++++++------- legacy/gcc/libstdc++/stl/defalloc.h | 22 +++++++++++----------- legacy/gcc/libstdc++/stl/stl_alloc.h | 6 +++--- legacy/gcc/libstdc++/stl/stl_config.h | 2 +- legacy/gcc/gcc/config/i386/haiku.h | 18 +++++++++--------- 24 files changed, 1250 insertions(+), 1242 deletions(-) diff --git a/legacy/binutils/bfd/cache.c b/legacy/binutils/bfd/cache.c index a426f06..3e21d09 100644 --- a/legacy/binutils/bfd/cache.c +++ b/legacy/binutils/bfd/cache.c @@ -65,7 +65,7 @@ #define BFD_CACHE_MAX_OPEN 10 -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) static unsigned char _bfdio_files[OPEN_MAX+1]; #endif @@ -258,7 +258,7 @@ FILE *f = bfd_cache_lookup (abfd, whence != SEEK_CUR ? CACHE_NO_SEEK : 0); if (f == NULL) return -1; -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) _bfdio_files[fileno(f)] = 1; #endif return real_fseek (f, offset, whence); @@ -325,7 +325,7 @@ FILE *f = bfd_cache_lookup (abfd, 0); if (f == NULL) return 0; -#if defined __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) { if (_bfdio_files[fileno(f)] == 1) { diff --git a/legacy/binutils/binutils/ar.c b/legacy/binutils/binutils/ar.c index aac2d69..552c7c3 100644 --- a/legacy/binutils/binutils/ar.c +++ b/legacy/binutils/binutils/ar.c @@ -18,7 +18,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ - + /* Bugs: should use getopt the way tar does (complete w/optional -) and should have long options too. GNU ar used to check file against filesystem @@ -49,7 +49,7 @@ #define O_BINARY 0 #endif -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) #include /* the thread priority used for all gcc-tools */ static int priority = B_LOW_PRIORITY; @@ -77,7 +77,7 @@ static void ranlib_only (const char *archname); static void ranlib_touch (const char *archname); static void usage (int); - + /** Globals and flags */ static int mri_mode; @@ -209,7 +209,7 @@ fprintf (stderr, _("no entry %s in archive\n"), *files); } } - + bfd_boolean operation_alters_arch = FALSE; static void @@ -249,7 +249,7 @@ fprintf (s, _(" [v] - be verbose\n")); fprintf (s, _(" [V] - display the version number\n")); fprintf (s, _(" @ - read options from \n")); - + ar_emul_usage (s); } else @@ -407,7 +407,7 @@ else print_version ("ar"); } -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) else if (!strncmp (argv[1], "-priority=", 10)) { priority = atol (argv[1] + 10); @@ -415,7 +415,7 @@ #endif } -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) set_thread_priority (find_thread(NULL), priority); #endif diff --git a/legacy/binutils/gas/as.c b/legacy/binutils/gas/as.c index dcc438f..f3c1b7c 100644 --- a/legacy/binutils/gas/as.c +++ b/legacy/binutils/gas/as.c @@ -58,7 +58,7 @@ #endif #endif -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) #include /* the thread priority used for all gcc-tools */ static int priority = B_LOW_PRIORITY; @@ -437,7 +437,7 @@ OPTION_HASH_TABLE_SIZE, OPTION_REDUCE_MEMORY_OVERHEADS, OPTION_WARN_FATAL -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) , OPTION_PRIORITY #endif @@ -495,7 +495,7 @@ ,{"mri", no_argument, NULL, 'M'} ,{"nocpp", no_argument, NULL, OPTION_NOCPP} ,{"no-warn", no_argument, NULL, 'W'} -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) ,{"priority", required_argument, NULL, OPTION_PRIORITY} #endif ,{"reduce-memory-overheads", no_argument, NULL, OPTION_REDUCE_MEMORY_OVERHEADS} @@ -588,7 +588,7 @@ show_usage (stdout); exit (EXIT_SUCCESS); -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) case OPTION_PRIORITY: priority = atol (optarg); break; @@ -917,7 +917,7 @@ *pargc = new_argc; *pargv = new_argv; -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) set_thread_priority (find_thread(NULL), priority); #endif diff --git a/legacy/binutils/ld/ld.info b/legacy/binutils/ld/ld.info index c149009..ffdc7ff 100644 --- a/legacy/binutils/ld/ld.info +++ b/legacy/binutils/ld/ld.info @@ -1,5 +1,7 @@ -This is ../../binutils/ld/ld.info, produced by makeinfo version 4.7 -from ../../binutils/ld/ld.texinfo. +This is +/home/bonefish/develop/haiku/buildtools/legacy/binutils/ld/ld.info, +produced by makeinfo version 4.9 from +/home/bonefish/develop/haiku/buildtools/legacy/binutils/ld/ld.texinfo. START-INFO-DIR-ENTRY * Ld: (ld). The GNU linker. @@ -6611,81 +6613,81 @@  Tag Table: -Node: Top367 -Node: Overview1129 -Node: Invocation2243 -Node: Options2651 -Node: Environment77306 -Node: Scripts79066 -Node: Basic Script Concepts80800 -Node: Script Format83507 -Node: Simple Example84370 -Node: Simple Commands87466 -Node: Entry Point87917 -Node: File Commands88676 -Node: Format Commands92542 -Node: Miscellaneous Commands94508 -Node: Assignments96738 -Node: Simple Assignments97229 -Node: PROVIDE98965 -Node: PROVIDE_HIDDEN100170 -Node: Source Code Reference100414 -Node: SECTIONS103994 -Node: Output Section Description105885 -Node: Output Section Name106938 -Node: Output Section Address107814 -Node: Input Section109463 -Node: Input Section Basics110264 -Node: Input Section Wildcards112616 -Node: Input Section Common117349 -Node: Input Section Keep118831 -Node: Input Section Example119321 -Node: Output Section Data120289 -Node: Output Section Keywords123066 -Node: Output Section Discarding126635 -Node: Output Section Attributes127591 -Node: Output Section Type128595 -Node: Output Section LMA129749 -Node: Forced Output Alignment132020 -Node: Forced Input Alignment132288 -Node: Output Section Region132673 -Node: Output Section Phdr133103 -Node: Output Section Fill133767 -Node: Overlay Description134909 -Node: MEMORY139157 -Node: PHDRS143357 -Node: VERSION148396 -Node: Expressions156187 -Node: Constants157065 -Node: Symbols157626 -Node: Orphan Sections158364 -Node: Location Counter159127 -Node: Operators163431 -Node: Evaluation164353 -Node: Expression Section165717 -Node: Builtin Functions167206 -Node: Implicit Linker Scripts174698 -Node: Machine Dependent175473 -Node: H8/300176334 -Node: i960177959 -Node: ARM179644 -Node: HPPA ELF32182560 -Node: MMIX184183 -Node: MSP430185400 -Node: PowerPC ELF32186448 -Node: PowerPC64 ELF64188739 -Node: TI COFF193153 -Node: WIN32193685 -Node: Xtensa211759 -Node: BFD214881 -Node: BFD outline216336 -Node: BFD information loss217622 -Node: Canonical format220139 -Node: Reporting Bugs224496 -Node: Bug Criteria225190 -Node: Bug Reporting225889 -Node: MRI232914 -Node: GNU Free Documentation License237557 -Node: Index257271 +Node: Top449 +Node: Overview1211 +Node: Invocation2325 +Node: Options2733 +Node: Environment77388 +Node: Scripts79148 +Node: Basic Script Concepts80882 +Node: Script Format83589 +Node: Simple Example84452 +Node: Simple Commands87548 +Node: Entry Point87999 +Node: File Commands88758 +Node: Format Commands92624 +Node: Miscellaneous Commands94590 +Node: Assignments96820 +Node: Simple Assignments97311 +Node: PROVIDE99047 +Node: PROVIDE_HIDDEN100252 +Node: Source Code Reference100496 +Node: SECTIONS104076 +Node: Output Section Description105967 +Node: Output Section Name107020 +Node: Output Section Address107896 +Node: Input Section109545 +Node: Input Section Basics110346 +Node: Input Section Wildcards112698 +Node: Input Section Common117431 +Node: Input Section Keep118913 +Node: Input Section Example119403 +Node: Output Section Data120371 +Node: Output Section Keywords123148 +Node: Output Section Discarding126717 +Node: Output Section Attributes127673 +Node: Output Section Type128677 +Node: Output Section LMA129831 +Node: Forced Output Alignment132102 +Node: Forced Input Alignment132370 +Node: Output Section Region132755 +Node: Output Section Phdr133185 +Node: Output Section Fill133849 +Node: Overlay Description134991 +Node: MEMORY139239 +Node: PHDRS143439 +Node: VERSION148478 +Node: Expressions156269 +Node: Constants157147 +Node: Symbols157708 +Node: Orphan Sections158446 +Node: Location Counter159209 +Node: Operators163513 +Node: Evaluation164435 +Node: Expression Section165799 +Node: Builtin Functions167288 +Node: Implicit Linker Scripts174780 +Node: Machine Dependent175555 +Node: H8/300176416 +Node: i960178041 +Node: ARM179726 +Node: HPPA ELF32182642 +Node: MMIX184265 +Node: MSP430185482 +Node: PowerPC ELF32186530 +Node: PowerPC64 ELF64188821 +Node: TI COFF193235 +Node: WIN32193767 +Node: Xtensa211841 +Node: BFD214963 +Node: BFD outline216418 +Node: BFD information loss217704 +Node: Canonical format220221 +Node: Reporting Bugs224578 +Node: Bug Criteria225272 +Node: Bug Reporting225971 +Node: MRI232996 +Node: GNU Free Documentation License237639 +Node: Index257353  End Tag Table diff --git a/legacy/binutils/ld/lexsup.c b/legacy/binutils/ld/lexsup.c index aef5344..988d718 100644 --- a/legacy/binutils/ld/lexsup.c +++ b/legacy/binutils/ld/lexsup.c @@ -41,7 +41,7 @@ #include "ldemul.h" #include "demangle.h" -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) #include /* the thread priority used for all gcc-tools */ static int priority = B_LOW_PRIORITY; @@ -709,7 +709,7 @@ else einfo (_("%P%F: unrecognized -assert option `%s'\n"), optarg); break; -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) case OPTION_PRIORITY: priority = atol (optarg); break; @@ -1364,7 +1364,7 @@ } } -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) set_thread_priority (find_thread(NULL), priority); #endif diff --git a/legacy/gcc/gcc/cccp.c b/legacy/gcc/gcc/cccp.c index 03b70e7..b55b6d1 100644 --- a/legacy/gcc/gcc/cccp.c +++ b/legacy/gcc/gcc/cccp.c @@ -83,7 +83,7 @@ #define INCLUDE_LEN_FUDGE 12 /* leave room for VMS syntax conversion */ #endif /* VMS */ -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) #include /* the thread priority used for all gcc-tools */ static int priority = B_LOW_PRIORITY; @@ -112,7 +112,7 @@ extern char *version_string; HOST_WIDEST_INT parse_escape PROTO((char **, HOST_WIDEST_INT)); HOST_WIDEST_INT parse_c_expression PROTO((char *, int)); - + /* Name under which this program was invoked. */ static char *progname; @@ -198,11 +198,11 @@ static int dump_includes; /* Nonzero indicates special processing used by the pcp program. The - special effects of this mode are: - + special effects of this mode are: + Inhibit all macro expansion, except those inside #if directives. - Process #define directives normally, and output their contents + Process #define directives normally, and output their contents to the output file. Output preconditions to pcp_outfile indicating all the relevant @@ -297,7 +297,7 @@ /* Nonzero if we should fully resolve pathnames in diagnostics. */ static int flag_full_paths_in_errors = 1; #endif - + /* I/O buffer structure. The `fname' field is nonzero for source files and #include files and for the dummy text used for -D and -U. @@ -493,7 +493,7 @@ /* Global list of strings read in from precompiled files. This list is kept in the order the strings are read in, with new strings being added at the end through stringlist_tailp. We use this list to output - the strings at the end of the run. + the strings at the end of the run. */ static STRINGDEF *stringlist; static STRINGDEF **stringlist_tailp = &stringlist; @@ -507,7 +507,7 @@ U_CHAR *symnam; int symlen; }; - + enum sharp_token_type { NO_SHARP_TOKEN = 0, /* token not present */ @@ -580,7 +580,7 @@ }; /* - * special extension string that can be added to the last macro argument to + * special extension string that can be added to the last macro argument to * allow it to absorb the "rest" of the arguments when expanded. Ex: * #define wow(a, b...) process (b, a, b) * { wow (1, 2, 3); } -> { process (2, 3, 1, 2, 3); } @@ -674,7 +674,7 @@ #define HASHSTEP(old, c) ((old << 2) + c) #define MAKE_POS(v) (v & 0x7fffffff) /* make number positive */ - + /* We let tm.h override the types used here, to handle trivial differences such as the choice of unsigned int or long unsigned int for size_t. When machines start needing nontrivial differences in the size type, @@ -720,7 +720,7 @@ #ifndef IMMEDIATE_PREFIX #define IMMEDIATE_PREFIX "" #endif - + /* In the definition of a #assert name, this structure forms a list of the individual values asserted. Each value is itself a list of "tokens". @@ -759,7 +759,7 @@ /* Nonzero means inhibit macroexpansion of what seem to be assertion tests, in rescan. For #if. */ static int assertions_flag; - + /* `struct directive' defines one #-directive, including how to handle it. */ #define DO_PROTO PROTO((U_CHAR *, U_CHAR *, FILE_BUF *, struct directive *)) @@ -839,7 +839,7 @@ #define SKIP_WHITE_SPACE(p) do { while (is_hor_space[*p]) p++; } while (0) #define SKIP_ALL_WHITE_SPACE(p) do { while (is_space[*p]) p++; } while (0) - + static int errors = 0; /* Error counter for exit code */ /* Name of output file, for error messages. */ @@ -882,7 +882,7 @@ /* Nonzero means -I- has been seen, so don't look for #include "foo" the source-file directory. */ static int ignore_srcdir; - + static int safe_read PROTO((int, char *, int)); static void safe_write PROTO((int, char *, int)); static void eprint_string PROTO((const char *, size_t)); @@ -1029,7 +1029,7 @@ static void memory_full PROTO((void)) ATTRIBUTE_NORETURN; static void print_help PROTO((void)); - + /* Read LEN bytes at PTR from descriptor DESC, for file FILENAME, retrying if necessary. If MAX_READ_LEN is defined, read at most that bytes at a time. Return a negative value if an error occurs, @@ -1127,7 +1127,7 @@ } while (length > 0); } - + static void print_help () { @@ -1198,7 +1198,7 @@ printf (" -priority= Specify thread-priority to use (1-10, default is 5)\n"); printf (" -h or --help Display this information\n"); } - + int main (argc, argv) int argc; @@ -1282,7 +1282,7 @@ /* Do not invoke xmalloc before this point, since locale and progname need to be set first, in case a diagnostic is issued. */ - + pend_files = (char **) xmalloc (argc * sizeof (char *)); pend_defs = (char **) xmalloc (argc * sizeof (char *)); pend_undefs = (char **) xmalloc (argc * sizeof (char *)); @@ -1459,7 +1459,7 @@ pfatal_with_name (pcp_fname); no_precomp = 1; } -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) else if (!strncmp (argv[i], "-priority=", 10)) priority = atol (argv[i] + 10); #endif @@ -1599,7 +1599,7 @@ and suppress the usual output. */ deps_stream = stdout; inhibit_output = 1; - } + } break; case 'd': @@ -1760,14 +1760,14 @@ } } -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) set_thread_priority (find_thread(NULL), priority); { char priobuf[20]; sprintf (priobuf, "-priority=%d", priority); - if (verbose) + if (verbose) notice ("using priority %d\n", priority); - } + } #endif @@ -2006,7 +2006,7 @@ deps_target = 0; output_file = spec; } - + deps_file = output_file; deps_mode = "a"; } @@ -2224,7 +2224,7 @@ pfatal_with_name (in_fname); return 0; } - + /* Given a colon-separated list of file names PATH, add all the names to the search path for include files. */ @@ -2258,7 +2258,7 @@ break; } } - + /* Return the address of the first character in S that equals C. S is an array of length N, possibly containing '\0's, and followed by '\0'. Return 0 if there is no such character. Assume that C itself is not '\0'. @@ -2286,7 +2286,7 @@ } } } - + /* Pre-C-Preprocessor to translate ANSI trigraph idiocy in BUF before main CCCP processing. Name `pcp' is also in honor of the drugs the trigraph designers must have been on. @@ -2362,7 +2362,7 @@ warning_with_line (0, "%lu trigraph(s) encountered", (unsigned long) (fptr - bptr) / 2); } - + /* Move all backslash-newline pairs out of embarrassing places. Exchange all such pairs following BP with any potentially-embarrassing characters that follow them. @@ -2431,7 +2431,7 @@ *bp++ = '\n'; } } - + /* Look for lint commands in comments. When we come in here, ibp points into a comment. Limit is as one expects. @@ -2459,7 +2459,7 @@ if (ibp >= limit) return NULL; linsize = limit - ibp; - + /* Oh, I wish C had lexical functions... hell, I'll just open-code the set */ if ((linsize >= 10) && !bcmp (ibp, "NOTREACHED", 10)) { *cmdlen = 10; @@ -2486,7 +2486,7 @@ } return NULL; } - + /* * The main loop of the program. * @@ -2674,8 +2674,8 @@ } if (ident_length) goto specialchar; + - /* # keyword: a # must be first nonblank char on the line */ if (beg_of_line == 0) goto randomchar; @@ -3276,7 +3276,7 @@ if (!pcp_outfile || pcp_inside_if) { for (hp = hashtab[MAKE_POS (hash) % HASHSIZE]; hp != NULL; hp = hp->next) { - + if (hp->length == ident_length) { int obufp_before_macroname; int op_lineno_before_macroname; @@ -3284,30 +3284,30 @@ register U_CHAR *p = hp->name; register U_CHAR *q = obp - i; int disabled; - + if (! redo_char) q--; - + do { /* All this to avoid a strncmp () */ if (*p++ != *q++) goto hashcollision; } while (--i); - + /* We found a use of a macro name. see if the context shows it is a macro call. */ - + /* Back up over terminating character if not already done. */ if (! redo_char) { ibp--; obp--; } - + /* Save this as a displacement from the beginning of the output buffer. We can not save this as a position in the output buffer, because it may get realloc'ed by RECACHE. */ obufp_before_macroname = (obp - op->buf) - ident_length; op_lineno_before_macroname = op->lineno; - + if (hp->type == T_PCSTRING) { pcstring_used (hp); /* Mark the definition of this key as needed, ensuring that it @@ -3318,10 +3318,10 @@ /* Record whether the macro is disabled. */ disabled = hp->type == T_DISABLED; - + /* This looks like a macro ref, but if the macro was disabled, just copy its name and put in a marker if requested. */ - + if (disabled) { #if 0 /* This error check caught useful cases such as @@ -3330,7 +3330,7 @@ if (traditional) error ("recursive use of macro `%s'", hp->name); #endif - + if (output_marks) { op->bufp = obp; check_expand (op, limit - ibp + 2); @@ -3340,7 +3340,7 @@ } break; } - + /* If macro wants an arglist, verify that a '(' follows. first skip all whitespace, copying it to the output after the macro name. Then, if there is no '(', @@ -3352,7 +3352,7 @@ U_CHAR *old_obp = obp; int old_iln = ip->lineno; int old_oln = op->lineno; - + while (1) { /* Scan forward over whitespace, copying it to the output. */ if (ibp == limit && ip->macro != 0) { @@ -3496,7 +3496,7 @@ break; } } - + /* This is now known to be a macro call. Discard the macro name from the output, along with any following whitespace just copied, @@ -3533,7 +3533,7 @@ ip->bufp = ibp; op->bufp = obp; macroexpand (hp, op); - + /* Reexamine input stack, since macroexpand has pushed a new level on it. */ obp = op->bufp; @@ -3584,7 +3584,7 @@ } if_stack = ip->if_stack; } - + /* * Rescan a string into a temporary buffer and return the result * as a FILE_BUF. Note this function returns a struct, not a pointer. @@ -3669,7 +3669,7 @@ assertions_flag = save_assertions_flag; return obuf; } - + /* * Process a # directive. Expects IP->bufp to point after the '#', as in * `#define foo bar'. Passes to the directive handler @@ -4020,7 +4020,7 @@ register U_CHAR *bp1 = skip_quoted_string (xp - 1, bp, ip->lineno, - NULL_PTR, &backslash_newlines_p, + NULL_PTR, &backslash_newlines_p, NULL_PTR); if (backslash_newlines_p) while (xp != bp1) @@ -4126,7 +4126,7 @@ That is the responsibility of cc1. */ return 0; } - + static struct tm * timestamp () { @@ -4164,7 +4164,7 @@ && hp->type != T_SPEC_DEFINED && hp->type != T_CONST) error ("Predefined macro `%s' used inside `#if' during precompilation", hp->name); - + for (i = indepth; i >= 0; i--) if (instack[i].fname != NULL) { ip = &instack[i]; @@ -4324,8 +4324,8 @@ return; } + - /* Routines to handle #directives */ /* Handle #include and #import. @@ -4452,7 +4452,7 @@ /* for hack_vms_include_specification(), a local dir specification must start with "./" on VMS. */ if (nam == dsp->fname) - { + { *nam++ = '.'; *nam++ = '/'; *nam = 0; @@ -4755,7 +4755,7 @@ } } while (pcf != -1 && !pcfbuf); } - + /* Actually process the file */ if (pcfbuf) { pcfname = xmalloc (strlen (pcftry) + 1); @@ -4794,7 +4794,7 @@ return searchptr->c_system_include_path + 1; return 0; } - + /* Yield the non-directory suffix of a file name. */ static char * @@ -4931,7 +4931,7 @@ from++; } } - + /* The file_name_map structure holds a mapping of file names for a particular directory. This mapping is read from the file named FILE_NAME_MAP_FILE in that directory. Such a file can be used to @@ -5053,7 +5053,7 @@ strcpy (ptr->map_to, dirname); strcat (ptr->map_to, to); free (to); - } + } ptr->map_next = map_list_ptr->map_list_map; map_list_ptr->map_list_map = ptr; @@ -5064,12 +5064,12 @@ } fclose (f); } - + map_list_ptr->map_list_next = map_list; map_list = map_list_ptr; return map_list_ptr->map_list_map; -} +} /* Try to open include file FILENAME. SEARCHPTR is the directory being tried from the include file search path. @@ -5142,7 +5142,7 @@ if (! inc->deps_output && (system_include_depth != 0) < print_deps) { inc->deps_output = 1; deps_output (fname, ' '); - } + } /* Handle -H option. */ if (print_include_names) @@ -5226,7 +5226,7 @@ return 0; } - + /* Process file descriptor F, which corresponds to include file INC, with output to OP. SYSTEM_HEADER_P is 1 if this file resides in any one of the known @@ -5356,13 +5356,13 @@ if (!inc->control_macro || inc->control_macro[0]) inc->control_macro = macro_name; } - + /* Load the specified precompiled header into core, and verify its preconditions. PCF indicates the file descriptor to read, which must be a regular file. *ST is its file status. FNAME indicates the file name of the original header. *LIMIT will be set to an address one past the end of the file. - If the preconditions of the file are not satisfied, the buffer is + If the preconditions of the file are not satisfied, the buffer is freed and we return 0. If the preconditions are satisfied, return the address of the buffer following the preconditions. The buffer, in this case, should never be freed because various pieces of it will @@ -5395,11 +5395,11 @@ } else abort (); - + if (length > 0 && buf[length-1] != '\n') buf[length++] = '\n'; buf[length] = '\0'; - + *limit = buf + length; /* File is in core. Check the preconditions. */ @@ -5425,29 +5425,29 @@ lines which must match the current contents of the hash table. */ -static int +static int check_preconditions (prec) char *prec; { MACRODEF mdef; char *lineend; - + while (*prec) { lineend = index (prec, '\n'); - + if (*prec++ != '#') { error ("Bad format encountered while reading precompiled file"); return 0; } if (!strncmp (prec, "define", 6)) { HASHNODE *hp; - + prec += 6; mdef = create_definition ((U_CHAR *) prec, (U_CHAR *) lineend, NULL_PTR); if (mdef.defn == 0) abort (); - + if ((hp = lookup (mdef.symnam, mdef.symlen, -1)) == NULL || (hp->type != T_MACRO && hp->type != T_CONST) || (hp->type == T_MACRO @@ -5459,7 +5459,7 @@ } else if (!strncmp (prec, "undef", 5)) { char *name; int len; - + prec += 5; while (is_hor_space[(U_CHAR) *prec]) prec++; @@ -5467,7 +5467,7 @@ while (is_idchar[(U_CHAR) *prec]) prec++; len = prec - name; - + if (lookup ((U_CHAR *) name, len, -1)) return 0; } else { @@ -5500,14 +5500,14 @@ nstrings = (nstrings << 8) | *cp++; nstrings = (nstrings << 8) | *cp++; nstrings = (nstrings << 8) | *cp++; - + /* Looping over each string... */ while (nstrings--) { U_CHAR *string_start; U_CHAR *endofthiskey; STRINGDEF *str; int nkeys; - + /* Each string starts with a STRINGDEF structure (str), followed */ /* by the text of the string (string_start) */ @@ -5519,14 +5519,14 @@ Do not include stddef.h--it will fail! */ if ((size_t) cp & 3) cp += 4 - ((size_t) cp & 3); - + /* Now get the string. */ str = (STRINGDEF *) (GENERIC_PTR) cp; string_start = cp += sizeof (STRINGDEF); - + for (; *cp; cp++) /* skip the string */ ; - + /* We need to macro expand the string here to ensure that the proper definition environment is in place. If it were only expanded when we find out it is needed, macros necessary for @@ -5538,11 +5538,11 @@ str->writeflag = 0; str->filename = name; str->output_mark = outbuf.bufp - outbuf.buf; - + str->chain = 0; *stringlist_tailp = str; stringlist_tailp = &str->chain; - + /* Next comes a fourbyte number indicating the number of keys for this string. */ nkeys = *cp++; @@ -5558,19 +5558,19 @@ for (; nkeys--; free (tmpbuf.buf), cp = endofthiskey + 1) { KEYDEF *kp = (KEYDEF *) (GENERIC_PTR) cp; HASHNODE *hp; - + /* It starts with a KEYDEF structure */ cp += sizeof (KEYDEF); - + /* Find the end of the key. At the end of this for loop we advance CP to the start of the next key using this variable. */ endofthiskey = cp + strlen ((char *) cp); kp->str = str; - + /* Expand the key, and enter it into the hash table. */ tmpbuf = expand_to_temp_buffer (cp, endofthiskey, 0, 0); tmpbuf.bufp = tmpbuf.buf; - + while (is_hor_space[*tmpbuf.bufp]) tmpbuf.bufp++; if (!is_idstart[*tmpbuf.bufp] @@ -5578,7 +5578,7 @@ str->writeflag = 1; continue; } - + hp = lookup (tmpbuf.bufp, -1, -1); if (hp == NULL) { kp->chain = 0; @@ -5593,7 +5593,7 @@ } } /* This output_line_directive serves to switch us back to the current - input file in case some of these strings get output (which will + input file in case some of these strings get output (which will result in line directives for the header file being output). */ output_line_directive (&instack[indepth], op, 0, enter_file); } @@ -5606,7 +5606,7 @@ HASHNODE *hp; { KEYDEF *kp; - + for (kp = hp->value.keydef; kp; kp = kp->chain) kp->str->writeflag = 1; delete_macro (hp); @@ -5628,16 +5628,16 @@ next_string_loc, in which case we print a series of strings, or it is less than next_string_loc, in which case we write some of the buffer. */ - cur_buf_loc = outbuf.buf; + cur_buf_loc = outbuf.buf; next_string = stringlist; - + while (cur_buf_loc < outbuf.bufp || next_string) { if (next_string && cur_buf_loc - outbuf.buf == next_string->output_mark) { if (next_string->writeflag) { len = 4 * strlen ((char *) next_string->filename) + 32; while (len > line_directive_len) - line_directive = xrealloc (line_directive, + line_directive = xrealloc (line_directive, line_directive_len *= 2); sprintf (line_directive, "\n# %d ", next_string->lineno); strcpy (quote_string (line_directive + strlen (line_directive), @@ -5647,15 +5647,15 @@ safe_write (fileno (stdout), line_directive, strlen (line_directive)); safe_write (fileno (stdout), (char *) next_string->contents, next_string->len); - } + } next_string = next_string->chain; } else { len = (next_string - ? (next_string->output_mark + ? (next_string->output_mark - (cur_buf_loc - outbuf.buf)) : outbuf.bufp - cur_buf_loc); - + safe_write (fileno (stdout), (char *) cur_buf_loc, len); cur_buf_loc += len; } @@ -5691,7 +5691,7 @@ op->lineno++; #endif } - + /* The arglist structure is built by do_define to tell collect_definition where the argument names begin. That is, for a define like "#define f(x,y,z) foo+x-bar*y", the arglist @@ -5711,7 +5711,7 @@ char rest_args; }; -/* Create a DEFINITION node from a #define directive. Arguments are +/* Create a DEFINITION node from a #define directive. Arguments are as for do_define. */ static MACRODEF @@ -5780,7 +5780,7 @@ else pedwarn ("invalid character in macro parameter name"); } - + /* Find the end of the arg name. */ while (is_idchar[*bp]) { bp++; @@ -5916,7 +5916,7 @@ mdef.defn = 0; return mdef; } - + /* Process a #define directive. BUF points to the contents of the #define directive, as a contiguous string. LIMIT points to the first character past the end of the definition. @@ -5987,7 +5987,7 @@ return 1; } - + /* Check a purported macro name SYMNAME, and yield its length. ASSERTION is nonzero if this is really for an assertion name. */ @@ -6015,7 +6015,7 @@ } /* Return zero if two DEFINITIONs are isomorphic. */ - + static int compare_defs (d1, d2) DEFINITION *d1, *d2; @@ -6087,7 +6087,7 @@ } return (beg1 != end1) || (beg2 != end2); } - + /* Read a replacement list for a macro with parameters. Build the DEFINITION structure. Reads characters of text starting at BUF until END. @@ -6096,7 +6096,7 @@ in that list, or -1 for a macro name that wants no argument list. MACRONAME is the macro name itself (so we can avoid recursive expansion) and NAMELEN is its length in characters. - + Note that comments, backslash-newlines, and leading white space have already been deleted from the argument. */ @@ -6415,7 +6415,7 @@ return defn; } - + static int do_assert (buf, limit, op, keyword) U_CHAR *buf, *limit; @@ -6492,7 +6492,7 @@ return 0; } - + static int do_unassert (buf, limit, op, keyword) U_CHAR *buf, *limit; @@ -6587,7 +6587,7 @@ return 0; } - + /* Test whether there is an assertion named NAME and optionally whether it has an asserted token list TOKENS. NAME is not null terminated; its length is SYM_LENGTH. @@ -6652,7 +6652,7 @@ /* Succeed if both lists end at the same time. */ return l1 == l2; } - + /* Read a space-separated list of tokens ending in a close parenthesis. Return a list of strings, in the order they were written. (In case of error, return 0 and store -1 in *ERROR_FLAG.) @@ -6735,7 +6735,7 @@ tokens = next; } } - + /* Install a name in the assertion hash table. If LEN is >= 0, it is the length of the name. @@ -6817,7 +6817,7 @@ free (hp); } - + /* * interpret #line directive. Remembers previously seen fnames * in its very own hash table. @@ -7010,7 +7010,7 @@ } return 0; } - + /* Report an error detected by the program we are processing. Use the text of the line in the error message. (We use error because it prints the filename & line#.) */ @@ -7131,7 +7131,7 @@ fname = p + 1; if ((p = (U_CHAR *) index ((char *) fname, '\"'))) *p = '\0'; - + for (h = 0; h < INCLUDE_HASHSIZE; h++) { struct include_file *inc; for (inc = include_hashtab[h]; inc; inc = inc->next) { @@ -7186,7 +7186,7 @@ } #endif /* defined (SCCS_DIRECTIVE) */ - + /* Handle #if directive by 1) inserting special `defined' keyword into the hash table that gets turned into 0 or 1 by special_symbol (thus, @@ -7296,7 +7296,7 @@ { int skip; FILE_BUF *ip = &instack[indepth]; - U_CHAR *end; + U_CHAR *end; int start_of_file = 0; U_CHAR *control_macro = 0; @@ -7374,7 +7374,7 @@ control_macro[end - buf] = 0; } } - + conditional_skip (ip, skip, T_IF, control_macro, op); return 0; } @@ -7416,7 +7416,7 @@ /* Skip to #endif, #else, or #elif. adjust line numbers, etc. Leaves input ptr at the sharp sign found. If ANY is nonzero, return at next directive of any sort. */ - + static void skip_if_group (ip, any, op) FILE_BUF *ip; @@ -7943,7 +7943,7 @@ if (*p != '\n') pedwarn ("text following `#else' or `#endif' violates ANSI standard"); } - + /* Skip a comment, assuming the input ptr immediately follows the initial slash-star. Bump *LINE_COUNTER for each newline. (The canonical line counter is &ip->lineno.) @@ -8197,7 +8197,7 @@ *dst++ = c; break; } - + *dst++ = '\"'; *dst = '\0'; return dst; @@ -8253,7 +8253,7 @@ ip->bufp = p; return p; } - + /* Write out a #line directive, for instance, after an #include file. If CONDITIONAL is nonzero, we can omit the #line if it would appear to be a no-op, and we can output a few newlines instead @@ -8328,7 +8328,7 @@ op->bufp += len; op->lineno = ip->lineno; } - + /* This structure represents one parsed argument in a macro call. `raw' points to the argument text as written (`raw_length' is its length). `expanded' points to the argument's macro-expansion @@ -8336,7 +8336,7 @@ `stringified_length' is the length the argument would have if stringified. `use_count' is the number of times this macro arg is substituted - into the macro. If the actual use count exceeds 10, + into the macro. If the actual use count exceeds 10, the value stored is 10. `free1' and `free2', if nonzero, point to blocks to be freed when the macro argument data is no longer needed. */ @@ -8382,7 +8382,7 @@ /* recorded as a precondition. */ if (pcp_inside_if && pcp_outfile && defn->predefined) dump_single_macro (hp, pcp_outfile); - + nargs = defn->nargs; if (nargs >= 0) { @@ -8763,7 +8763,7 @@ hp->type = T_DISABLED; } } - + /* Parse a macro argument and store the info on it into *ARGPTR. REST_ARGS is passed to macarg1 to make it absorb the rest of the args. Return nonzero to indicate a syntax error. */ @@ -8887,7 +8887,7 @@ } return result; } - + /* Scan text from START (inclusive) up to LIMIT (exclusive), taken from the expansion of MACRO, counting parens in *DEPTHPTR, @@ -9028,11 +9028,11 @@ return bp; } - + /* Discard comments and duplicate newlines in the string of length LENGTH at START, except inside of string constants. - The string is copied into itself with its beginning staying fixed. + The string is copied into itself with its beginning staying fixed. NEWLINES is the number of newlines that must be duplicated. We assume that that much extra space is available past the end @@ -9189,7 +9189,7 @@ return obp - start; } - + /* Turn newlines to spaces in the string of length LENGTH at START, except inside of string constants. The string is copied into itself with its beginning staying fixed. */ @@ -9264,7 +9264,7 @@ return obp - start; } - + /* my_strerror - return the descriptive text associated with an `errno' code. */ @@ -9312,7 +9312,7 @@ #ifndef ANSI_PROTOTYPES msgid = va_arg (args, const char *); #endif - + vnotice (msgid, args); va_end (args); } @@ -9361,7 +9361,7 @@ #ifndef ANSI_PROTOTYPES msgid = va_arg (args, const char *); #endif - + verror (msgid, args); va_end (args); } @@ -9634,14 +9634,14 @@ return; VA_START (args, msgid); - + #ifndef ANSI_PROTOTYPES file = va_arg (args, const char *); file_len = va_arg (args, size_t); line = va_arg (args, int); msgid = va_arg (args, const char *); #endif - + if (file) { PRINT_CONVERTED_PATH (file, file_len); fprintf (stderr, ":%d: ", line); @@ -9667,7 +9667,7 @@ default: abort (); } } - + /* Print the file names and line numbers of the #include directives which led to the current file. */ @@ -9713,7 +9713,7 @@ /* Record we have printed the status as of this time. */ last_error_tick = input_file_stack_tick; } - + /* Return the line at which an error occurred. The error is not necessarily associated with the current spot in the input stack, so LINE says where. LINE will have been @@ -9780,7 +9780,7 @@ return 0; } - + /* Symbol table for macro names and special symbols */ /* @@ -9795,7 +9795,7 @@ * Otherwise, compute the length by scanning the entire name. * * If HASH is >= 0, it is the precomputed hash code. - * Otherwise, compute the hash code. + * Otherwise, compute the hash code. */ static HASHNODE * @@ -9940,7 +9940,7 @@ return MAKE_POS (r) % hashsize; } - + /* Dump the definition of a single macro HP to OF. */ @@ -10101,7 +10101,7 @@ p++; } } - + /* Initialize syntactic classifications of characters. */ static void @@ -10245,7 +10245,7 @@ } } } - + /* * process a given definition string, for initialization * If STR is just an identifier, define it with value 1. @@ -10314,7 +10314,7 @@ } *q = 0; } - + ip = &instack[++indepth]; ip->nominal_fname = ip->fname = "*Initialization*"; ip->nominal_fname_len = strlen (ip->nominal_fname); @@ -10363,7 +10363,7 @@ do_undef ((U_CHAR *) str, (U_CHAR *) str + strlen (str), op, kt); --indepth; } - + /* Process the string STR as if it appeared as the body of a #assert. OPTION is the option name for which STR was the argument. */ @@ -10401,7 +10401,7 @@ error ("malformed option `%s %s'", option, str); return; } - + ip = &instack[++indepth]; ip->nominal_fname = ip->fname = "*Initialization*"; ip->nominal_fname_len = strlen (ip->nominal_fname); @@ -10422,7 +10422,7 @@ do_assert (buf, buf + strlen ((char *) buf) , NULL_PTR, kt); --indepth; } - + /* The previous include prefix, if any, is PREV_FILE_NAME. Translate any pathnames with COMPONENT. Allocate a new include prefix whose name is the @@ -10555,7 +10555,7 @@ last->next = NULL; last_include = last; } - + /* Place into DST a representation of the file named SRC that is suitable for `make'. Do not null-terminate DST. Return its length. */ static int @@ -10594,7 +10594,7 @@ dst[i] = '\\'; i++; goto ordinary_char; - + case '$': if (dst) dst[i] = c; @@ -10660,7 +10660,7 @@ } deps_buffer[deps_size] = 0; } - + void fatal VPROTO ((const char * msgid, ...)) { @@ -10719,7 +10719,7 @@ { fatal ("output pipe has been closed"); } - + static void memory_full () { @@ -10772,7 +10772,7 @@ memcpy (output, input, len); return output; } - + #ifdef VMS /* Under VMS we need to fix up the "include" specification filename. @@ -10857,11 +10857,11 @@ /* We are trying to do a number of things here. First of all, we are trying to hammer the filenames into a standard format, such that later processing can handle them. - + If the file name contains something like [dir.], then it recognizes this as a root, and strips the ".]". Later processing will add whatever is needed to get things working properly. - + If no device is specified, then the first directory name is taken to be a device name (or a rooted logical). */ @@ -10922,7 +10922,7 @@ If there is no device specification either, we make the first dir a device and try that. If we do not do this, then we will be essentially searching the users default directory (as if they did a #include "asdf.h"). - + Then all we need to do is to push a '[' into the output string. Later processing will fill this in, and close the bracket. */ @@ -11056,7 +11056,7 @@ return 1; } #endif /* VMS */ - + #ifdef VMS /* The following wrapper functions supply additional arguments to the VMS @@ -11098,7 +11098,7 @@ return (*vmslib_fopen) (fname, type, "mbc=32"); } -static int +static int VMS_open (fname, flags, prot) char *fname; int flags; @@ -11107,7 +11107,7 @@ #undef open /* Get back the real open routine. */ return open (fname, flags, prot, "mbc=16", "deq=64", "fop=tef"); } - + /* more VMS hackery */ #include #include diff --git a/legacy/gcc/gcc/collect2.c b/legacy/gcc/gcc/collect2.c index 5ecf371..d6b5d2f 100644 --- a/legacy/gcc/gcc/collect2.c +++ b/legacy/gcc/gcc/collect2.c @@ -43,7 +43,7 @@ lib$get_current_invo_context(decc$$get_vfork_jmpbuf()) : -1) #endif /* VMS */ -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) #include /* the thread priority used for all gcc-tools */ static int priority = B_LOW_PRIORITY; @@ -65,7 +65,7 @@ #endif extern char *make_temp_file PROTO ((char *)); - + /* On certain systems, we have code that works by scanning the object file directly. But this code uses system-specific header files and library functions, so turn it off in a cross-compiler. Likewise, the names of @@ -110,7 +110,7 @@ /* Some systems have an ISCOFF macro, but others do not. In some cases the macro may be wrong. MY_ISCOFF is defined in tm.h files for machines - that either do not have an ISCOFF macro in /usr/include or for those + that either do not have an ISCOFF macro in /usr/include or for those where it is wrong. */ #ifndef MY_ISCOFF @@ -167,10 +167,10 @@ #else int do_collecting = 0; #endif - + /* Linked lists of constructor and destructor names. */ -struct id +struct id { struct id *next; int sequence; @@ -275,7 +275,7 @@ #endif void error PVPROTO((const char *, ...)) ATTRIBUTE_PRINTF_1; -void fatal PVPROTO((const char *, ...)) +void fatal PVPROTO((const char *, ...)) ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN; void fatal_perror PVPROTO((const char *, ...)) ATTRIBUTE_PRINTF_1 ATTRIBUTE_NORETURN; @@ -314,7 +314,7 @@ static int use_import_list PROTO((char *)); static int ignore_library PROTO((char *)); #endif - + #ifdef NO_DUP2 int dup2 (oldfd, newfd) @@ -324,7 +324,7 @@ int fdtmp[256]; int fdx = 0; int fd; - + if (oldfd == newfd) return oldfd; close (newfd); @@ -379,7 +379,7 @@ return NULL; #endif /* HAVE_STRSIGNAL */ } - + /* Delete tempfiles and exit function. */ void @@ -412,7 +412,7 @@ exit (status); } - + /* Notify user of a non-error. */ void notice VPROTO((char *msgid, ...)) @@ -466,13 +466,13 @@ const char *msgid; #endif va_list ap; - + VA_START (ap, msgid); #ifndef ANSI_PROTOTYPES msgid = va_arg (ap, const char *); #endif - + fprintf (stderr, "collect2: "); vfprintf (stderr, _(msgid), ap); fprintf (stderr, "\n"); @@ -490,9 +490,9 @@ const char * msgid; #endif va_list ap; - + VA_START (ap, msgid); - + #ifndef ANSI_PROTOTYPES msgid = va_arg (ap, const char *); #endif @@ -511,7 +511,7 @@ { fatal ("internal error"); } - + static void handler (signo) int signo; @@ -537,7 +537,7 @@ kill (getpid (), signo); } - + PTR xcalloc (size1, size2) size_t size1, size2; @@ -624,7 +624,7 @@ *pp = p; return obstack_finish (&temporary_obstack); } - + void dump_file (name) char *name; @@ -682,7 +682,7 @@ } fclose (stream); } - + /* Decide whether the given symbol is: a constructor (1), a destructor (2), or neither (0). */ @@ -742,7 +742,7 @@ } return 0; } - + /* Routine to add variables to the environment. */ #ifndef HAVE_PUTENV @@ -790,7 +790,7 @@ } #endif /* HAVE_PUTENV */ - + /* By default, colon separates directories in a path. */ #ifndef PATH_SEPARATOR #define PATH_SEPARATOR ':' @@ -809,7 +809,7 @@ #endif /* Search for NAME using prefix list PPREFIX. We only look for executable - files. + files. Return 0 if not found, otherwise return its name, allocated with malloc. */ @@ -824,7 +824,7 @@ if (debug) fprintf (stderr, "Looking for '%s'\n", name); - + #ifdef EXECUTABLE_SUFFIX len += strlen (EXECUTABLE_SUFFIX); #endif @@ -845,7 +845,7 @@ if (debug) fprintf (stderr, " - found: absolute path\n"); - + return temp; } @@ -854,7 +854,7 @@ So try appending that. */ strcpy (temp, name); strcat (temp, EXECUTABLE_SUFFIX); - + if (access (temp, X_OK) == 0) return temp; #endif @@ -867,7 +867,7 @@ { strcpy (temp, pl->prefix); strcat (temp, name); - + if (access (temp, X_OK) == 0) return temp; @@ -875,7 +875,7 @@ /* Some systems have a suffix for executable files. So try appending that. */ strcat (temp, EXECUTABLE_SUFFIX); - + if (access (temp, X_OK) == 0) return temp; #endif @@ -922,7 +922,7 @@ pl->next = (struct prefix_list *) 0; *prev = pl; } - + /* Take the value of the environment variable ENV, break it into a path, and add of the entries to PPREFIX. */ @@ -948,7 +948,7 @@ if (debug) fprintf (stderr, "Convert string '%s' into prefixes, separator = '%c'\n", p, PATH_SEPARATOR); - + startp = endp = p; while (1) { @@ -969,7 +969,7 @@ if (debug) fprintf (stderr, " - add prefix: %s\n", nstore); - + add_prefix (pprefix, nstore); if (*endp == 0) break; @@ -979,7 +979,7 @@ endp++; } } - + /* Main program. */ int @@ -1049,13 +1049,13 @@ are called. */ { int i; - + for (i = 1; argv[i] != NULL; i ++) if (! strcmp (argv[i], "-debug")) debug = 1; vflag = debug; -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) for (i = 1; argv[i] != NULL; i ++) if (! strncmp (argv[i], "-priority=",10)) priority = atol (argv[i] + 10); @@ -1159,7 +1159,7 @@ strcpy (full_strip_suffix, target_machine); strcat (full_strip_suffix, "-"); strcat (full_strip_suffix, strip_suffix); - + full_gstrip_suffix = xcalloc (strlen (gstrip_suffix) + strlen (target_machine) + 2, 1); strcpy (full_gstrip_suffix, target_machine); @@ -1273,7 +1273,7 @@ add_prefix (&libpath_lib_dirs, "/usr/lib"); #endif - /* Get any options that the upper GCC wants to pass to the sub-GCC. + /* Get any options that the upper GCC wants to pass to the sub-GCC. AIX support needs to know if -shared has been specified before parsing commandline arguments. */ @@ -1417,7 +1417,7 @@ #ifdef COLLECT_EXPORT_LIST /* libraries can be specified directly, i.e. without -l flag. */ else - { + { /* If we will use an import list for this library, we should exclude it from ld args. */ if (use_import_list (arg)) @@ -1678,7 +1678,7 @@ /* Let scan_prog_file do any final mods (OSF/rose needs this for constructors/destructors in shared libraries. */ scan_prog_file (output_file, PASS_SECOND); -#endif +#endif maybe_unlink (c_file); maybe_unlink (o_file); @@ -1691,7 +1691,7 @@ return 0; } - + /* Wait for a process to finish, and exit if a non-zero status is found. */ int @@ -1733,7 +1733,7 @@ } } - + /* Execute a program, and wait for the reply. */ void @@ -1818,7 +1818,7 @@ collect_execute (prog, argv, NULL); do_wait (prog); } - + /* Unlink a file unless we are debugging. */ static void @@ -1831,7 +1831,7 @@ notice ("[Leaving %s]\n", file); } - + static long sequence_number = 0; /* Add a name to a linked list. */ @@ -2153,7 +2153,7 @@ int frames = (frame_tables.number > 0); fprintf (stream, "typedef void entry_pt();\n\n"); - + write_list_with_asm (stream, "extern entry_pt ", constructors.first); if (frames) @@ -2243,7 +2243,7 @@ fprintf (stream, "%s\n", list->name); } #endif - + #ifdef OBJECT_FORMAT_NONE /* Generic version to scan the name list of the loaded program for @@ -2353,7 +2353,7 @@ if (ch != '_') continue; - + name = p; /* Find the end of the symbol name. Do not include `|', because Encore nm can tack that on the end. */ @@ -2542,7 +2542,7 @@ char *ld_rules; char *ldr = 0; /* counting elements in array, need 1 extra for null */ - cnt = 1; + cnt = 1; ld_rules = (char *) (ld_2->ld_rules + code); if (ld_rules) { @@ -2570,7 +2570,7 @@ if (ldr) { *pp++ = ldr; - for (; *ldr != 0; ldr++) + for (; *ldr != 0; ldr++) if (*ldr == ':') { *ldr++ = 0; @@ -2580,7 +2580,7 @@ if (q) { *pp++ = q; - for (; *q != 0; q++) + for (; *q != 0; q++) if (*q == ':') { *q++ = 0; @@ -2619,7 +2619,7 @@ /* Scan the _DYNAMIC structure of the output file to find shared libraries that it depends upon and any constructors or destructors they contain. */ -static void +static void scan_libraries (prog_name) char *prog_name; { @@ -2694,7 +2694,7 @@ the output file depends upon and their initialization/finalization routines, if any. */ -static void +static void scan_libraries (prog_name) char *prog_name; { @@ -2791,7 +2791,7 @@ fatal ("dynamic dependency %s not found", buf); /* Find the end of the symbol name. */ - for (end = p; + for (end = p; (ch2 = *end) != '\0' && ch2 != '\n' && !ISSPACE (ch2) && ch2 != '|'; end++) continue; @@ -2829,7 +2829,7 @@ #endif /* OBJECT_FORMAT_NONE */ - + /* * COFF specific stuff. */ @@ -2989,7 +2989,7 @@ /* If we are building a shared object on AIX we need to explicitly export all global symbols or add them to import list. */ - if (shared_obj) + if (shared_obj) { if (which_pass == PASS_OBJ && (! export_flag)) add_to_list (&exports, name); @@ -3147,7 +3147,7 @@ #endif /* OBJECT_FORMAT_COFF */ - + /* * OSF/rose specific stuff. */ @@ -3202,7 +3202,7 @@ static void bad_header PROTO((int)); static struct file_info *read_file PROTO((char *, int, int)); static void end_file PROTO((struct file_info *)); - + /* OSF/rose specific version to scan the name list of the loaded program for the symbols g++ uses for static constructors and destructors. @@ -3482,7 +3482,7 @@ fprintf (stderr, "\n"); } - + /* Add a function table to the load commands to call a function on initiation or termination of the process. */ @@ -3562,7 +3562,7 @@ } - + /* Print the global header for an OSF/rose object. */ static void @@ -3604,8 +3604,8 @@ fprintf (stderr, "\n\n"); return; } + - /* Print a short summary of a load command. */ static void @@ -3672,7 +3672,7 @@ return; } - + /* Fatal error when {en,de}code_mach_o_header fails. */ static void @@ -3692,7 +3692,7 @@ } } - + /* Read a file into a memory buffer. */ static struct file_info * @@ -3757,7 +3757,7 @@ return p; } - + /* Do anything necessary to write a file back from memory. */ static void diff --git a/legacy/gcc/gcc/cppinit.c b/legacy/gcc/gcc/cppinit.c index 589e90d..60d9d1c 100644 --- a/legacy/gcc/gcc/cppinit.c +++ b/legacy/gcc/gcc/cppinit.c @@ -102,7 +102,7 @@ #endif -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) #include /* the thread priority used for all gcc-tools */ static int priority = B_LOW_PRIORITY; @@ -112,7 +112,7 @@ It may be overridden by the various -I and -ixxx options. #include "file" looks in the same directory as the current file, - then this list. + then this list. #include just looks in this list. All these directories are treated as `system' include directories @@ -449,8 +449,8 @@ if ((p = rindex (s, '/'))) s = p + 1; return s; } - + /* Append DIR to include path PATH. DIR must be permanently allocated and writable. */ static void @@ -484,7 +484,7 @@ len = strlen (dir); if (len > pfile->max_include_len) pfile->max_include_len = len; - + new = (struct file_name_list *)xmalloc (sizeof (struct file_name_list)); new->name = dir; new->nlen = len; @@ -678,7 +678,7 @@ { cpp_options *opts = CPP_OPTIONS (pfile); char *spec, *s, *output_file; - + /* Either of two environment variables can specify output of deps. Its value is either "OUTPUT_FILE" or "OUTPUT_FILE DEPS_TARGET", where OUTPUT_FILE is the file to write deps info to @@ -802,7 +802,7 @@ /* Set this if it hasn't been set already. */ if (user_label_prefix == NULL) user_label_prefix = USER_LABEL_PREFIX; - + /* Now that we know dollars_in_ident, we can initialize the syntax tables. */ initialize_char_syntax (opts->dollars_in_ident); @@ -855,7 +855,7 @@ free (p); p = q; } - + opts->done_initializing = 1; /* Several environment variables may add to the include search path. @@ -1002,7 +1002,7 @@ /* The -imacros files can be scanned now, but the -include files have to be pushed onto the include stack and processed later, in the main loop calling cpp_get_token. */ - + pfile->no_record_file++; opts->no_output++; p = opts->pending->imacros_head; @@ -1087,7 +1087,7 @@ cpp_fatal (pfile, "cpplib internal error: buffers still stacked in cpp_finish"); cpp_pop_buffer (pfile); - + if (opts->print_deps) { /* Stream on which to print the dependency information. */ @@ -1266,7 +1266,7 @@ memcpy (fname, GCC_INCLUDE_DIR, sizeof GCC_INCLUDE_DIR - 9); memcpy (fname + sizeof GCC_INCLUDE_DIR - 9, argv[i], len + 1); } - + append_include_chain (pfile, opts->pending, fname, SYSTEM); } /* Add directory to main path for includes, @@ -1292,7 +1292,7 @@ memcpy (fname, GCC_INCLUDE_DIR, sizeof GCC_INCLUDE_DIR - 9); memcpy (fname + sizeof GCC_INCLUDE_DIR - 9, argv[i], len + 1); } - + append_include_chain (pfile, opts->pending, fname, BRACKET); } /* Add directory to end of path for includes. */ @@ -1317,7 +1317,7 @@ opts->output_conditionals = 1; break; - + case 'o': if (opts->out_fname != NULL) { @@ -1330,7 +1330,7 @@ if (!strcmp (opts->out_fname, "-")) opts->out_fname = ""; break; - + case 'p': if (!strcmp (argv[i], "-pedantic")) CPP_PEDANTIC (pfile) = 1; @@ -1350,12 +1350,12 @@ no_precomp = 1; } #endif -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) else if (!strncmp (argv[i], "-priority=", 10)) priority = atol (argv[i] + 10); #endif break; - + case 't': if (!strcmp (argv[i], "-traditional")) { @@ -1365,7 +1365,7 @@ else if (!strcmp (argv[i], "-trigraphs")) opts->trigraphs = 1; break; - + case 'l': if (! strcmp (argv[i], "-lang-c")) opts->cplusplus = 0, opts->cplusplus_comments = 1, opts->c89 = 0, @@ -1390,7 +1390,7 @@ opts->objc = 0, opts->cplusplus = 0, opts->chill = 1, opts->traditional = 1; break; - + case '+': opts->cplusplus = 1, opts->cplusplus_comments = 1; break; @@ -1412,7 +1412,7 @@ case 'w': opts->inhibit_warnings = 1; break; - + case 'W': if (!strcmp (argv[i], "-Wtrigraphs")) opts->warn_trigraphs = 1; @@ -1448,7 +1448,7 @@ opts->warn_comments = 1; } break; - + case 'M': /* The style of the choices here is a bit mixed. The chosen scheme is a hybrid of keeping all options in one string @@ -1460,7 +1460,7 @@ /* ??? -MG must be specified in addition to one of -M or -MM. This can be relaxed in the future without breaking anything. The converse isn't true. */ - + /* -MG isn't valid with -MD or -MMD. This is checked for later. */ if (!strcmp (argv[i], "-MG")) { @@ -1487,9 +1487,9 @@ /* For -M and -MM, write deps on standard output and suppress the usual output. */ opts->no_output = 1; - } + } break; - + case 'd': { char *p = argv[i] + 2; @@ -1516,12 +1516,12 @@ } } break; - + case 'g': if (argv[i][2] == '3') opts->debug_output = 1; break; - + case '-': if (!strcmp (argv[i], "--help")) print_help (); @@ -1529,7 +1529,7 @@ cpp_notice ("GNU CPP version %s\n", version_string); exit (0); /* XXX */ break; - + case 'v': cpp_notice ("GNU CPP version %s", version_string); #ifdef TARGET_VERSION @@ -1538,11 +1538,11 @@ fputc ('\n', stderr); opts->verbose = 1; break; - + case 'H': opts->print_include_names = 1; break; - + case 'D': { struct pending_option *o = (struct pending_option *) @@ -1562,11 +1562,11 @@ APPEND (opts->pending, define, o); } break; - + case 'A': { char *p; - + if (argv[i][2] != 0) p = argv[i] + 2; else if (i + 1 == argc) @@ -1576,7 +1576,7 @@ } else p = argv[++i]; - + if (strcmp (p, "-")) { struct pending_option *o = (struct pending_option *) @@ -1616,12 +1616,12 @@ } } break; - + case 'U': { struct pending_option *o = (struct pending_option *) xmalloc (sizeof (struct pending_option)); - + if (argv[i][2] != 0) o->arg = argv[i] + 2; else if (i + 1 == argc) @@ -1637,22 +1637,22 @@ APPEND (opts->pending, define, o); } break; - + case 'C': opts->put_out_comments = 1; break; - + case 'E': /* -E comes from cc -E; ignore it. */ break; - + case 'P': opts->no_line_commands = 1; break; - + case '$': /* Don't include $ in identifiers. */ opts->dollars_in_ident = 0; break; - + case 'n': if (!strcmp (argv[i], "-nostdinc")) /* -nostdinc causes no default include directories. @@ -1666,12 +1666,12 @@ no_precomp = 1; #endif break; - + case 'r': if (!strcmp (argv[i], "-remap")) opts->remap = 1; break; - + case '\0': /* JF handle '-' as file name meaning stdin or stdout */ if (opts->in_fname == NULL) opts->in_fname = ""; @@ -1685,14 +1685,14 @@ return i; } -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) set_thread_priority (find_thread(NULL), priority); { char priobuf[20]; sprintf (priobuf, "-priority=%d", priority); - if (opts->verbose) + if (opts->verbose) cpp_notice ("using priority %d\n", priority); - } + } #endif return i + 1; diff --git a/legacy/gcc/gcc/gcc.c b/legacy/gcc/gcc/gcc.c index 9b540a3..08f1a73 100644 --- a/legacy/gcc/gcc/gcc.c +++ b/legacy/gcc/gcc/gcc.c @@ -31,7 +31,7 @@ CC recognizes how to compile each input file by suffixes in the file names. Once it knows which kind of compilation to perform, the procedure for compilation is specified by a string called a "spec". */ - + #include "config.h" #include "system.h" #include @@ -93,7 +93,7 @@ #define kill(p,s) raise(s) #endif -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) #include /* the thread priority used for all gcc-tools */ static int priority = B_LOW_PRIORITY; @@ -241,7 +241,7 @@ /* Number of extra output files that lang_specific_pre_link may generate. */ extern int lang_specific_extra_outfiles; - + /* Specs are strings containing lines, each of which (if not blank) is made up of a program name, and arguments separated by spaces. The program name must be exact and start from root, since no path @@ -395,7 +395,7 @@ CC also knows implicitly that arguments starting in `-l' are to be treated as compiler output files, and passed to the linker in their proper position among the other output files. */ - + /* Define the macros used for specs %a, %l, %L, %S, %c, %C, %1. */ /* config.h can define ASM_SPEC to provide extra args to the assembler @@ -547,8 +547,8 @@ #ifndef WORD_SWITCH_TAKES_ARG #define WORD_SWITCH_TAKES_ARG(STR) DEFAULT_WORD_SWITCH_TAKES_ARG (STR) #endif - + #ifdef HAVE_EXECUTABLE_SUFFIX /* This defines which switches stop a full compilation. */ #define DEFAULT_SWITCH_CURTAILS_COMPILATION(CHAR) \ @@ -757,7 +757,7 @@ #ifdef LINK_COMMAND_SPEC /* Provide option to override link_command_spec from machine specific configuration files. */ -static const char *link_command_spec = +static const char *link_command_spec = LINK_COMMAND_SPEC; #else #ifdef LINK_LIBGCC_SPECIAL @@ -804,7 +804,7 @@ and substituted into the preprocessor command with %Z. */ static int n_preprocessor_options; static char **preprocessor_options; - + /* Define how to map long options into short ones. */ /* This structure describes one mapping. */ @@ -907,7 +907,7 @@ {"--write-user-dependencies", "-MMD", 0}, {"--", "-f", "*j"} }; - + /* Translate the options described by *ARGCP and *ARGVP. Make a new vector and store it back in *ARGVP, and store its length in *ARGVC. */ @@ -1071,7 +1071,7 @@ *argvp = newv; *argcp = newindex; } - + char * xstrerror(e) int e; @@ -1091,7 +1091,7 @@ return "errno = ?"; #endif } - + static char * skip_whitespace (p) char *p; @@ -1115,7 +1115,7 @@ return p; } - + /* Structure to keep track of the specs that have been defined so far. These are accessed using %(specname) or %[specname] in a compiler or link spec. */ @@ -1179,7 +1179,7 @@ static struct spec_list *specs = (struct spec_list *)0; - + /* Initialize the specs lookup routines. */ static void @@ -1201,7 +1201,7 @@ (sizeof(extra_specs_1)/sizeof(extra_specs_1[0]))); bzero ((PTR) extra_specs, sizeof(struct spec_list) * (sizeof(extra_specs_1)/sizeof(extra_specs_1[0]))); - + for (i = (sizeof(extra_specs_1) / sizeof(extra_specs_1[0])) - 1; i >= 0; i--) { sl = &extra_specs[i]; @@ -1224,7 +1224,7 @@ specs = sl; } - + /* Change the value of spec NAME to SPEC. If SPEC is empty, then the spec is removed; If the spec starts with a + then SPEC is added to the end of the current spec. */ @@ -1287,7 +1287,7 @@ sl->alloc_p = 1; } - + /* Accumulate a command (program name and args), and run it. */ /* Vector of pointers to arguments in the current line of specifications. */ @@ -1334,7 +1334,7 @@ /* Name with which this program was invoked. */ static const char *programname; - + /* Structures to keep track of prefixes to try when looking for files. */ struct prefix_list @@ -1392,7 +1392,7 @@ #endif /* !defined STANDARD_EXEC_PREFIX */ static const char *standard_exec_prefix = STANDARD_EXEC_PREFIX; -#ifndef __BEOS__ +#if !defined(__BEOS__) && !defined(__HAIKU__) static const char *standard_exec_prefix_1 = "/usr/lib/gcc/"; #endif #ifdef MD_EXEC_PREFIX @@ -1410,7 +1410,7 @@ static const char *md_startfile_prefix_1 = MD_STARTFILE_PREFIX_1; #endif static const char *standard_startfile_prefix = STANDARD_STARTFILE_PREFIX; -#ifndef __BEOS__ +#if !defined(__BEOS__) && !defined(__HAIKU__) static const char *standard_startfile_prefix_1 = "/lib/"; static const char *standard_startfile_prefix_2 = "/usr/lib/"; #endif @@ -1456,7 +1456,7 @@ if (delete_always || delete_failure) record_temp_file (arg, delete_always, delete_failure); } - + /* Read compilation specs from a file named FILENAME, replacing the default ones. @@ -1714,7 +1714,7 @@ if (link_command_spec == 0) fatal ("spec file has no spec for linking"); } - + /* Record the names of temporary files we tell compilers to write, and delete them at the end of the run. */ @@ -1846,7 +1846,7 @@ { failure_delete_queue = 0; } - + /* Routine to add variables to the environment. We do this to pass the pathname of the gcc driver, and the directories search to the collect2 program, which is being run as ld. This way, we can be @@ -1901,7 +1901,7 @@ #endif /* HAVE_PUTENV */ - + /* Build a list of search directories from PATHS. PREFIX is a string to prepend to the list. If CHECK_DIR_P is non-zero we ensure the directory exists. @@ -1932,7 +1932,7 @@ { if (!first_time) obstack_1grow (&collect_obstack, PATH_SEPARATOR); - + first_time = FALSE; obstack_grow (&collect_obstack, pprefix->prefix, len); obstack_grow (&collect_obstack, machine_suffix, suffix_len); @@ -1945,7 +1945,7 @@ { if (! first_time) obstack_1grow (&collect_obstack, PATH_SEPARATOR); - + first_time = FALSE; obstack_grow (&collect_obstack, pprefix->prefix, len); obstack_grow (&collect_obstack, just_machine_suffix, @@ -1976,7 +1976,7 @@ { putenv (build_search_list (paths, env_var, 1)); } - + /* Search for NAME using the prefix list PREFIXES. MODE is passed to access to check permissions. Return 0 if not found, otherwise return its name, allocated with malloc. */ @@ -2211,7 +2211,7 @@ } } - + /* Execute the command specified by the arguments on the current line of spec. When using pipes, this includes several piped-together commands with `|' between them. @@ -2277,7 +2277,7 @@ /* For help listings, put a blank line between sub-processes. */ if (print_help_list) fputc ('\n', stderr); - + /* Print each piped command as a separate line. */ for (i = 0; i < n_commands ; i++) { @@ -2372,7 +2372,7 @@ return ret_code; } } - + /* Find all the switches given to us and make a vector describing them. The elements of the vector are strings, one per switch given. @@ -2425,8 +2425,8 @@ /* Gives value to pass as "warn" to add_prefix for standard prefixes. */ static int *warn_std_ptr = 0; + - #if defined(HAVE_OBJECT_SUFFIX) || defined(HAVE_EXECUTABLE_SUFFIX) /* Convert NAME to a new name if it is the standard suffix. DO_EXE @@ -2442,7 +2442,7 @@ if (name == NULL) return NULL; - + len = strlen (name); #ifdef HAVE_OBJECT_SUFFIX @@ -2479,7 +2479,7 @@ return name; } #endif - + /* Display the command line switches accepted by gcc. */ static void display_help () @@ -2534,13 +2534,13 @@ sub-processes. */ } -static void -add_preprocessor_option (option, len) +static void +add_preprocessor_option (option, len) const char * option; int len; -{ +{ n_preprocessor_options++; - + if (! preprocessor_options) preprocessor_options = (char **) xmalloc (n_preprocessor_options * sizeof (char *)); @@ -2548,13 +2548,13 @@ preprocessor_options = (char **) xrealloc (preprocessor_options, n_preprocessor_options * sizeof (char *)); - + preprocessor_options [n_preprocessor_options - 1] = save_string (option, len); } - -static void -add_assembler_option (option, len) + +static void +add_assembler_option (option, len) const char * option; int len; { @@ -2570,9 +2570,9 @@ assembler_options [n_assembler_options - 1] = save_string (option, len); } - -static void -add_linker_option (option, len) + +static void +add_linker_option (option, len) const char * option; int len; { @@ -2588,7 +2588,7 @@ linker_options [n_linker_options - 1] = save_string (option, len); } - + /* Create the vector `switches' and its contents. Store its length in `n_switches'. */ @@ -2788,12 +2788,12 @@ /* We will be passing a dummy file on to the sub-processes. */ n_infiles++; n_switches++; - + add_preprocessor_option ("--help", 6); add_assembler_option ("--help", 6); add_linker_option ("--help", 6); } -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) else if (!strncmp (argv[i], "-priority=", 10)) { priority = atol (argv[i] + 10); @@ -2834,7 +2834,7 @@ add_assembler_option (argv[i] + prev, j - prev); prev = j + 1; } - + /* Record the part after the last comma. */ add_assembler_option (argv[i] + prev, j - prev); } @@ -2851,7 +2851,7 @@ add_preprocessor_option (argv[i] + prev, j - prev); prev = j + 1; } - + /* Record the part after the last comma. */ add_preprocessor_option (argv[i] + prev, j - prev); } @@ -3040,7 +3040,7 @@ if (! have_c) { int skip; - + /* Forward scan, just in case -S or -c is specified after -o. */ int j = i + 1; @@ -3093,14 +3093,14 @@ if (have_c && have_o && lang_n_infiles > 1) fatal ("cannot specify -o with -c or -S and multiple compilations"); -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) set_thread_priority (find_thread(NULL), priority); { char priobuf[20]; sprintf (priobuf, "-priority=%d", priority); if (verbose_flag) notice ("using priority %d\n", priority); - } + } #endif /* Set up the search paths before we go looking for config files. */ @@ -3112,7 +3112,7 @@ #ifndef OS2 add_prefix (&exec_prefixes, standard_exec_prefix, "BINUTILS", 0, 2, warn_std_ptr); -#ifndef __BEOS__ +#if !defined(__BEOS__) && !defined(__HAIKU__) add_prefix (&exec_prefixes, standard_exec_prefix_1, "BINUTILS", 0, 2, warn_std_ptr); #endif @@ -3120,12 +3120,12 @@ add_prefix (&startfile_prefixes, standard_exec_prefix, "BINUTILS", 0, 1, warn_std_ptr); -#ifndef __BEOS__ +#if !defined(__BEOS__) && !defined(__HAIKU__) add_prefix (&startfile_prefixes, standard_exec_prefix_1, "BINUTILS", 0, 1, warn_std_ptr); #endif - tooldir_prefix = concat (tooldir_base_prefix, spec_machine, + tooldir_prefix = concat (tooldir_base_prefix, spec_machine, dir_separator_str, NULL_PTR); /* If tooldir is relative, base it on exec_prefixes. A relative @@ -3144,21 +3144,21 @@ spec_version, dir_separator_str, tooldir_prefix, NULL_PTR); add_prefix (&exec_prefixes, - concat (gcc_exec_tooldir_prefix, "bin", + concat (gcc_exec_tooldir_prefix, "bin", dir_separator_str, NULL_PTR), NULL_PTR, 0, 0, NULL_PTR); add_prefix (&startfile_prefixes, - concat (gcc_exec_tooldir_prefix, "lib", + concat (gcc_exec_tooldir_prefix, "lib", dir_separator_str, NULL_PTR), NULL_PTR, 0, 0, NULL_PTR); } tooldir_prefix = concat (standard_exec_prefix, spec_machine, - dir_separator_str, spec_version, + dir_separator_str, spec_version, dir_separator_str, tooldir_prefix, NULL_PTR); } - add_prefix (&exec_prefixes, + add_prefix (&exec_prefixes, concat (tooldir_prefix, "bin", dir_separator_str, NULL_PTR), "BINUTILS", 0, 0, NULL_PTR); add_prefix (&startfile_prefixes, @@ -3231,14 +3231,14 @@ the various sub-processes. */ infiles[n_infiles].language = "c"; infiles[n_infiles++].name = "help-dummy"; - + /* Preserve the --help switch so that it can be caught by the cc1 spec string. */ switches[n_switches].part1 = "--help"; switches[n_switches].args = 0; switches[n_switches].live_cond = 0; switches[n_switches].validated = 0; - + n_switches++; } } @@ -3340,7 +3340,7 @@ char *part1 = (char *) xmalloc (2); part1[0] = c; part1[1] = '\0'; - + switches[n_switches].part1 = part1; switches[n_switches].args = (char **) xmalloc (2 * sizeof (char *)); switches[n_switches].args[0] = xmalloc (strlen (p)); @@ -3388,7 +3388,7 @@ switches[n_switches].part1 = 0; infiles[n_infiles].name = 0; } - + /* Process a spec string, accumulating and running commands. */ /* These variables describe the input file name. @@ -4356,7 +4356,7 @@ while (*q++ != ':') continue; body = q; - + while (count > 0) { if (*q == '{') @@ -4504,7 +4504,7 @@ return endbody; } - + /* Return 0 iff switch number SWITCHNUM is obsoleted by a later switch on the command line. PREFIX_LENGTH is the length of XXX in an {XXX*} spec, or -1 if either exact match or %* is used. @@ -4580,7 +4580,7 @@ switches[switchnum].live_cond = 1; return 1; } - + /* Pass a switch to the current accumulating command in the same form that we received it. SWITCHNUM identifies the switch; it is an index into @@ -4618,7 +4618,7 @@ do_spec_1 (" ", 0, NULL_PTR); switches[switchnum].validated = 1; } - + /* Search for a file named NAME trying various prefixes including the user's -B prefix and some standard ones. Return the absolute file name found. If nothing is found, return NAME. */ @@ -4687,17 +4687,17 @@ /* Exclude directories that the linker is known to search. */ if (linker && ((cp - path == 6 - && strcmp (path, concat (dir_separator_str, "lib", + && strcmp (path, concat (dir_separator_str, "lib", dir_separator_str, ".", NULL_PTR)) == 0) || (cp - path == 10 - && strcmp (path, concat (dir_separator_str, "usr", - dir_separator_str, "lib", + && strcmp (path, concat (dir_separator_str, "usr", + dir_separator_str, "lib", dir_separator_str, ".", NULL_PTR)) == 0))) return 0; return (stat (path, &st) >= 0 && S_ISDIR (st.st_mode)); } - + /* On fatal signals, delete all the temporary files. */ static void @@ -4896,7 +4896,7 @@ strcat (specs_file, "specs"); if (access (specs_file, R_OK) == 0) read_specs (specs_file, TRUE); - + /* If not cross-compiling, look for startfiles in the standard places. */ if (*cross_compile == '0') { @@ -4941,9 +4941,9 @@ machine_suffix, standard_startfile_prefix, NULL_PTR), NULL_PTR, 0, 0, NULL_PTR); - } + } -#ifndef __BEOS__ +#if !defined(__BEOS__) && !defined(__HAIKU__) add_prefix (&startfile_prefixes, standard_startfile_prefix_1, "BINUTILS", 0, 0, NULL_PTR); add_prefix (&startfile_prefixes, standard_startfile_prefix_2, @@ -5045,7 +5045,7 @@ { printf ("\nFor bug reporting instructions, please see:\n"); printf ("%s.\n", GCCBUGURL); - + exit (0); } @@ -5053,7 +5053,7 @@ called 'help-dummy' which needs to be compiled, and we pass this on the the various sub-processes, along with the --help switch. */ } - + if (verbose_flag) { int n; @@ -5152,7 +5152,7 @@ { char *p1 = (char *) xmalloc (len + 1); - + len = 0; for (j = 0; j < sizeof cp->spec / sizeof cp->spec[0]; j++) if (cp->spec[j]) @@ -5160,7 +5160,7 @@ strcpy (p1 + len, cp->spec[j]); len += strlen (cp->spec[j]); } - + value = do_spec (p1); free (p1); } @@ -5244,7 +5244,7 @@ printf ("\nFor bug reporting instructions, please see:\n"); printf ("%s\n", GCCBUGURL); } - + exit (error_count > 0 ? (signal_count ? 2 : 1) : 0); /* NOTREACHED */ return 0; @@ -5319,7 +5319,7 @@ return 0; } - + PTR xmalloc (size) size_t size; @@ -5401,7 +5401,7 @@ { fatal ("Internal gcc abort."); } - + /* Output an error message and exit */ void @@ -5464,8 +5464,8 @@ vfprintf (stderr, _(msgid), ap); va_end (ap); } + - static void validate_all_switches () { @@ -5549,7 +5549,7 @@ } } } - + /* Check whether a particular argument was used. The first time we canonicalize the switches to keep only the ones we care about. */ @@ -5767,7 +5767,7 @@ } ++p; - } + } } /* Print out the multiple library subdirectory selection diff --git a/legacy/gcc/gcc/gthr.h b/legacy/gcc/gcc/gthr.h index f0f80c6..c72655e 100644 --- a/legacy/gcc/gcc/gthr.h +++ b/legacy/gcc/gcc/gthr.h @@ -32,7 +32,7 @@ /* If this file is compiled with threads support, it must #define __GTHREADS 1 to indicate that threads support is present. Also it has define - function + function int __gthread_active_p () that returns 1 if thread system is active, 0 if not. @@ -87,7 +87,7 @@ #include "gthr-dce.h" #elif _SOLARIS_THREADS #include "gthr-solaris.h" -#elif __BEOS__ +#elif defined(__BEOS__) || defined(__HAIKU__) #include "gthr-beos.h" /* Include GTHREAD_FILE if one is defined. */ diff --git a/legacy/gcc/gcc/libgcc2.c b/legacy/gcc/gcc/libgcc2.c index 37e1c1b..b04337c 100644 --- a/legacy/gcc/gcc/libgcc2.c +++ b/legacy/gcc/gcc/libgcc2.c @@ -43,7 +43,7 @@ #endif #include "machmode.h" -#include "defaults.h" +#include "defaults.h" #ifndef L_trampoline #include #endif @@ -154,7 +154,7 @@ #if LIBGCC2_LONG_DOUBLE_TYPE_SIZE == 128 extern DItype __fixunstfdi (TFtype a); #endif - + #if defined (L_negdi2) || defined (L_divdi3) || defined (L_moddi3) #if defined (L_divdi3) || defined (L_moddi3) static inline @@ -173,7 +173,7 @@ return w.ll; } #endif - + /* Unless shift functions are defined whith full ANSI prototypes, parameter b will be promoted to int if word_type is smaller than an int. */ #ifdef L_lshrdi3 @@ -266,7 +266,7 @@ return w.ll; } #endif - + #ifdef L_ffsdi2 DItype __ffsdi2 (DItype u) @@ -286,7 +286,7 @@ return w.ll; } #endif - + #ifdef L_muldi3 DItype __muldi3 (DItype u, DItype v) @@ -304,7 +304,7 @@ return w.ll; } #endif - + #ifdef L_udiv_w_sdiv #if defined (sdiv_qrnnd) USItype @@ -415,7 +415,7 @@ } #endif #endif - + #if (defined (L_udivdi3) || defined (L_divdi3) || \ defined (L_umoddi3) || defined (L_moddi3)) #define L_udivmoddi4 @@ -731,7 +731,7 @@ return __udivmoddi4 (n, d, (UDItype *) 0); } #endif - + #ifdef L_cmpdi2 word_type __cmpdi2 (DItype a, DItype b) @@ -771,7 +771,7 @@ return 1; } #endif - + #if defined(L_fixunstfdi) && (LIBGCC2_LONG_DOUBLE_TYPE_SIZE == 128) #define WORD_SIZE (sizeof (SItype) * BITS_PER_UNIT) #define HIGH_WORD_COEFF (((UDItype) 1) << WORD_SIZE) @@ -1009,7 +1009,7 @@ /* Define codes for all the float formats that we know of. Note that this is copied from real.h. */ - + #define UNKNOWN_FLOAT_FORMAT 0 #define IEEE_FLOAT_FORMAT 1 #define VAX_FLOAT_FORMAT 2 @@ -1134,7 +1134,7 @@ return (SItype) a; } #endif - + /* From here on down, the routines use normal data types. */ #define SItype bogus_type @@ -1151,7 +1151,7 @@ #undef unsigned #undef float #undef double - + #ifdef L__gcc_bcmp /* Like bcmp except the sign is meaningful. @@ -1172,7 +1172,7 @@ } #endif - + #ifdef L__dummy void __dummy () {} @@ -1208,10 +1208,10 @@ */ asm (" fst.q %f8, 0(%sp)"); /* save floating regs (f8-f15) */ - asm (" fst.q %f12,16(%sp)"); + asm (" fst.q %f12,16(%sp)"); asm (" st.l %r16,32(%sp)"); /* save integer regs (r16-r27) */ - asm (" st.l %r17,36(%sp)"); + asm (" st.l %r17,36(%sp)"); asm (" st.l %r18,40(%sp)"); asm (" st.l %r19,44(%sp)"); asm (" st.l %r20,48(%sp)"); @@ -1277,9 +1277,9 @@ */ asm (" fst.q f8, 0(sp)"); - asm (" fst.q f12,16(sp)"); + asm (" fst.q f12,16(sp)"); asm (" st.l r16,32(sp)"); - asm (" st.l r17,36(sp)"); + asm (" st.l r17,36(sp)"); asm (" st.l r18,40(sp)"); asm (" st.l r19,44(sp)"); asm (" st.l r20,48(sp)"); @@ -1348,7 +1348,7 @@ asm (" adds 80,sp,r16"); /* return address of the __va_ctl. */ asm (" bri r1"); asm (" mov r30,sp"); - /* recover stack and pass address to start + /* recover stack and pass address to start of data. */ #endif /* not __PARAGON__ */ #endif /* not __svr4__ */ @@ -1400,7 +1400,7 @@ #endif /* not __sparc__ */ #endif /* not __i860__ */ #endif - + #ifdef L_eprintf #ifndef inhibit_libc @@ -1501,11 +1501,11 @@ { /* If the file exists, and the number of counts in it is the same, then merge them in. */ - + if ((da_file = fopen (ptr->filename, "r")) != 0) { long n_counts = 0; - + if (__read_long (&n_counts, da_file, 8) != 0) { fprintf (stderr, "arc profiling: Can't read output file %s.\n", @@ -1552,7 +1552,7 @@ if (__write_long (ptr->ncounts, da_file, 8) != 0) { - + fprintf (stderr, "arc profiling: Error writing output file %s.\n", ptr->filename); } @@ -1574,7 +1574,7 @@ fprintf (stderr, "arc profiling: Error writing output file %s.\n", ptr->filename); } - + if (fclose (da_file) == EOF) fprintf (stderr, "arc profiling: Error closing output file %s.\n", ptr->filename); @@ -1771,7 +1771,7 @@ struct bb *blocks; } __bb; -/* Vars to store addrs of source and destination basic blocks +/* Vars to store addrs of source and destination basic blocks of a jump. */ static unsigned long bb_src = 0; @@ -1821,7 +1821,7 @@ if (mode[1]) return (FILE *) 0; - if (mode[0] != 'r' && mode[0] != 'w') + if (mode[0] != 'r' && mode[0] != 'w') return (FILE *) 0; p = fn + strlen (fn)-1; @@ -1885,7 +1885,7 @@ FILE *file = fopen ("bb.out", "a"); struct bb_func *f; struct bb *b; - + if (!file) perror ("bb.out"); @@ -1926,7 +1926,7 @@ goto found; } } - + if (!printed_something) { fprintf (file, "Functions in `bb.in' not executed during basic block profiling on %s\n", ctime ((void *) &time_value)); @@ -1937,7 +1937,7 @@ if (p->filename) fprintf (file, " of file %s", p->filename); fprintf (file, "\n" ); - + found: ; } @@ -1957,7 +1957,7 @@ } return; } - + else if (file) { long time_value; @@ -1966,13 +1966,13 @@ unsigned long cnt_max = 0; int cnt_len; int addr_len; - + /* This is somewhat type incorrect, but it avoids worrying about exactly where time.h is included from. It should be ok unless a void * differs from other pointer formats, or if sizeof (long) is < sizeof (time_t). It would be nice if we could assume the use of rationale standards here. */ - + time ((void *) &time_value); fprintf (file, "Basic block jump tracing"); @@ -1996,36 +1996,36 @@ } fprintf (file, " finished on %s\n", ctime ((void *) &time_value)); - + for (i = 0; i < BB_BUCKETS; i++) { struct bb_edge *bucket = bb_hashbuckets[i]; for ( ; bucket; bucket = bucket->next ) { - if (addr_max < bucket->src_addr) + if (addr_max < bucket->src_addr) addr_max = bucket->src_addr; - if (addr_max < bucket->dst_addr) + if (addr_max < bucket->dst_addr) addr_max = bucket->dst_addr; - if (cnt_max < bucket->count) + if (cnt_max < bucket->count) cnt_max = bucket->count; } } addr_len = num_digits (addr_max, 16); cnt_len = num_digits (cnt_max, 10); - + for ( i = 0; i < BB_BUCKETS; i++) { struct bb_edge *bucket = bb_hashbuckets[i]; for ( ; bucket; bucket = bucket->next ) { fprintf (file, "Jump from block 0x%.*lx to " - "block 0x%.*lx executed %*lu time(s)\n", - addr_len, bucket->src_addr, - addr_len, bucket->dst_addr, + "block 0x%.*lx executed %*lu time(s)\n", + addr_len, bucket->src_addr, + addr_len, bucket->dst_addr, cnt_len, bucket->count); } } - + fprintf (file, "\n"); } @@ -2095,14 +2095,14 @@ while(fscanf (file, " %" BBINBUFSIZESTR "s ", buf) != EOF) { p = buf; - if (*p == '-') - { - m = TRACE_OFF; - p++; + if (*p == '-') + { + m = TRACE_OFF; + p++; } - else - { - m = TRACE_ON; + else + { + m = TRACE_ON; } if (!strcmp (p, "__bb_trace__")) bb_mode |= 1; @@ -2112,7 +2112,7 @@ bb_mode |= 4; else if (!strcmp (p, "__bb_showret__")) bb_mode |= 8; - else + else { struct bb_func *f = (struct bb_func *) malloc (sizeof (struct bb_func)); if (f) @@ -2147,7 +2147,7 @@ } fclose (file); -#ifdef HAVE_POPEN +#ifdef HAVE_POPEN if (bb_mode & 1) bb_tracefile = gopen ("bbtrace.gz", "w"); @@ -2161,7 +2161,7 @@ if (bb_mode & 2) { - bb_hashbuckets = (struct bb_edge **) + bb_hashbuckets = (struct bb_edge **) malloc (BB_BUCKETS * sizeof (struct bb_edge *)); if (bb_hashbuckets) memset (bb_hashbuckets, 0, BB_BUCKETS * sizeof (struct bb_edge *)); @@ -2208,7 +2208,7 @@ = & bb_hashbuckets[ (((int) bb_src*8) ^ (int) bb_dst) % BB_BUCKETS ]; bucket = *startbucket; - for (bucket = *startbucket; bucket; + for (bucket = *startbucket; bucket; oldnext = &(bucket->next), bucket = *oldnext) { if (bucket->src_addr == bb_src @@ -2271,7 +2271,7 @@ = & bb_hashbuckets[ (((int) bb_dst * 8) ^ (int) bb_src) % BB_BUCKETS ]; bucket = *startbucket; - for (bucket = *startbucket; bucket; + for (bucket = *startbucket; bucket; oldnext = &(bucket->next), bucket = *oldnext) { if (bucket->src_addr == bb_dst @@ -2385,9 +2385,9 @@ MACHINE_STATE_SAVE("3") if (!blocks->zero_word) - { + { if (!trace_init) - { + { trace_init = 1; __bb_init_prg (); } @@ -2444,7 +2444,7 @@ #endif /* not inhibit_libc */ #endif /* not BLOCK_PROFILER_CODE */ #endif /* L_bb */ - + #ifdef L_shtab unsigned int __shtab[] = { 0x00000001, 0x00000002, 0x00000004, 0x00000008, @@ -2457,7 +2457,7 @@ 0x10000000, 0x20000000, 0x40000000, 0x80000000 }; #endif - + #ifdef L_clear_cache /* Clear part of an instruction cache. */ @@ -2466,7 +2466,7 @@ void __clear_cache (char *beg, char *end) { -#ifdef CLEAR_INSN_CACHE +#ifdef CLEAR_INSN_CACHE CLEAR_INSN_CACHE (beg, end); #else #ifdef INSN_CACHE_SIZE @@ -2530,7 +2530,7 @@ /* Compute the cache alignment of the place to stop clearing. */ #if 0 /* This is not needed for gcc's purposes. */ /* If the block to clear is bigger than a cache plane, - we clear the entire cache, and OFFSET is already correct. */ + we clear the entire cache, and OFFSET is already correct. */ if (end < beg + INSN_CACHE_PLANE_SIZE) #endif offset = (((int) (end + INSN_CACHE_LINE_WIDTH - 1) @@ -2571,7 +2571,7 @@ } #endif /* L_clear_cache */ - + #ifdef L_trampoline /* Jump to a trampoline, loading the static chain address. */ @@ -2617,8 +2617,8 @@ #endif /* WINNT && ! __CYGWIN__ && ! _UWIN */ -#ifdef TRANSFER_FROM_TRAMPOLINE -TRANSFER_FROM_TRAMPOLINE +#ifdef TRANSFER_FROM_TRAMPOLINE +TRANSFER_FROM_TRAMPOLINE #endif #if defined (NeXT) && defined (__MACH__) @@ -2653,7 +2653,7 @@ #else __clear_cache ((int) addr, (int) eaddr); #endif -} +} #endif /* defined (NeXT) && defined (__MACH__) */ @@ -2699,7 +2699,7 @@ int save_errno; static unsigned long lowest = USRSTACK; unsigned long current = (unsigned long) &save_errno & -NBPC; - + /* Ignore errno being set. memctl sets errno to EINVAL whenever the address is seen as 'negative'. That is the case with the stack. */ @@ -2753,7 +2753,7 @@ errno changing without explicitly calling any system-call. */ save_errno = errno; - /* Keep it simple : memctl (MCT_TEXT) always fully clears the insn cache. + /* Keep it simple : memctl (MCT_TEXT) always fully clears the insn cache. No need to use an address derived from _start or %sp, as 0 works also. */ memctl(0, 4096, MCT_TEXT); errno = save_errno; @@ -2813,7 +2813,7 @@ #endif /* sony_news */ #endif /* L_trampoline */ - + #ifndef __CYGWIN__ #ifdef L__main @@ -2897,7 +2897,7 @@ #endif /* L__main */ #endif /* __CYGWIN__ */ - + #ifdef L_ctors #include "gbl-ctors.h" @@ -2925,7 +2925,7 @@ #endif #endif /* no INIT_SECTION_ASM_OP and not CTOR_LISTS_DEFINED_EXTERNALLY */ #endif /* L_ctors */ - + #ifdef L_exit #include "gbl-ctors.h" @@ -2979,7 +2979,7 @@ extern void _cleanup (); extern void _exit () __attribute__ ((noreturn)); -void +void exit (int status) { #if !defined (INIT_SECTION_ASM_OP) || !defined (OBJECT_FORMAT_ELF) @@ -3028,7 +3028,7 @@ #endif /* ON_EXIT defined */ #endif /* L_exit */ - + #ifdef L_eh #include "gthr.h" @@ -3067,8 +3067,8 @@ __empty () { } - + /* Include definitions of EH context and table layout */ #include "eh-common.h" @@ -3117,21 +3117,21 @@ free (ptr); } -/* __BEOS__ does not have a teardown toutine */ +/* __BEOS__/__HAIKU__ does not have a teardown toutine */ #endif /* Pointer to function to return EH context. */ -#if !__BEOS__ +#if !defined(__BEOS__) && !defined(__HAIKU__) static struct eh_context *eh_context_initialize (); static struct eh_context *eh_context_static (); #endif -#if __GTHREADS || __BEOS__ +#if __GTHREADS || defined(__BEOS__) || defined(__HAIKU__) static struct eh_context *eh_context_specific (); #endif -#if __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) static struct eh_context *(*get_eh_context) () = &eh_context_specific; #else static struct eh_context *(*get_eh_context) () = &eh_context_initialize; @@ -3154,7 +3154,7 @@ struct eh_context *eh = (*get_eh_context) (); return &eh->info; } - + #if __GTHREADS static void eh_threads_initialize () @@ -3172,7 +3172,7 @@ This will be called only once, since we change GET_EH_CONTEXT pointer to another routine. */ -#if !__BEOS__ +#if !defined(__BEOS__) && !defined(__HAIKU__) static struct eh_context * eh_context_initialize () { @@ -3217,7 +3217,7 @@ return &eh; } -#endif /* __BEOS__ */ +#endif /* __BEOS__ || __HAIKU__ */ #if __GTHREADS /* Return a thread specific EH context. */ @@ -3236,7 +3236,7 @@ return eh; } -#elif __BEOS__ +#elif defined(__BEOS__) || defined(__HAIKU__) static __gthread_mutex_t beos_throw_mutex = __GTHREAD_MUTEX_INIT; @@ -3294,7 +3294,7 @@ } #endif __GTHREADS - + /* Support routines for setjmp/longjmp exception handling. */ /* Calls to __sjthrow are generated by the compiler when an exception @@ -3373,13 +3373,13 @@ __terminate (); } } - + /* We must call terminate if we try and rethrow an exception, when there is no exception currently active and when there are no handlers left. */ if (! eh->info || (*dhc)[0] == 0) __terminate (); - + /* Find the jmpbuf associated with the top element of the dynamic handler chain. The jumpbuf starts two words into the buffer. */ jmpbuf = &(*dhc)[2]; @@ -3456,7 +3456,7 @@ __sjthrow (); } - + /* Support code for all exception region-based exception handling. */ int @@ -3493,15 +3493,15 @@ /* Return the table version of an exception descriptor */ -short -__get_eh_table_version (exception_descriptor *table) +short +__get_eh_table_version (exception_descriptor *table) { return table->lang.version; } /* Return the originating table language of an exception descriptor */ -short +short __get_eh_table_language (exception_descriptor *table) { return table->lang.language; @@ -3551,7 +3551,7 @@ returns a pointer to the handler which controlled should be transferred to, or NULL if there is nothing left. Parameters: - PC - pc where the exception originates. If this is a rethrow, + PC - pc where the exception originates. If this is a rethrow, then this starts out as a pointer to the exception table entry we wish to rethrow out of. TABLE - exception table for the current module. @@ -3560,7 +3560,7 @@ CLEANUP - returned flag indicating whether this is a cleanup handler. */ static void * -find_exception_handler (void *pc, exception_descriptor *table, +find_exception_handler (void *pc, exception_descriptor *table, __eh_info *eh_info, int rethrow, int *cleanup) { @@ -3575,13 +3575,13 @@ exception_table *tab = &(table->table[0]); /* Subtract 1 from the PC to avoid hitting the next region */ - if (rethrow) + if (rethrow) { /* pc is actually the region table entry to rethrow out of */ pos = ((exception_table *) pc) - tab; pc = ((exception_table *) pc)->end_region - 1; - /* The label is always on the LAST handler entry for a region, + /* The label is always on the LAST handler entry for a region, so we know the next entry is a different region, even if the addresses are the same. Make sure its not end of table tho. */ if (tab[pos].start_region != (void *) -1) @@ -3589,22 +3589,22 @@ } else pc--; - + /* We can't do a binary search because the table is in inner-most to outermost address ranges within functions */ for ( ; tab[pos].start_region != (void *) -1; pos++) - { + { if (tab[pos].start_region <= pc && tab[pos].end_region > pc) { if (tab[pos].match_info) { __eh_matcher matcher = eh_info->match_function; /* match info but no matcher is NOT a match */ - if (matcher) + if (matcher) { - void *ret = (*matcher)((void *) eh_info, + void *ret = (*matcher)((void *) eh_info, tab[pos].match_info, table); - if (ret) + if (ret) { if (retval == NULL) retval = tab[pos].exception_handler; @@ -3625,7 +3625,7 @@ } #endif /* DWARF2_UNWIND_INFO */ #endif /* EH_TABLE_LOOKUP */ - + #ifdef DWARF2_UNWIND_INFO /* Support code for exception handling using static unwind information. */ @@ -3644,7 +3644,7 @@ /* ??? The Sparc INCOMING_REGNO references TARGET_FLAT. This allows us to use the macro here. One wonders, though, that perhaps TARGET_FLAT - compiled functions won't work with the frame-unwind stuff here. + compiled functions won't work with the frame-unwind stuff here. Perhaps the entireity of in_reg_window should be conditional on having seen a DW_CFA_GNU_window_save? */ #define target_flags 0 @@ -3759,13 +3759,13 @@ } /* Hook to call before __terminate if only cleanup handlers remain. */ -void +void __unwinding_cleanup () { } /* throw_helper performs some of the common grunt work for a throw. This - routine is called by throw and rethrows. This is pretty much split + routine is called by throw and rethrows. This is pretty much split out from the old __throw routine. An addition has been added which allows for a dummy call to a routine __unwinding_cleanup() when there are nothing but cleanups remaining. This allows a debugger to examine the state @@ -3808,7 +3808,7 @@ handler = (void *) 0; for (;;) - { + { frame_state *p = udata; udata = next_stack_level (pc, udata, sub_udata); sub_udata = p; @@ -3823,21 +3823,21 @@ new_eh_model = (((exception_descriptor *)(udata->eh_ptr))-> runtime_id_field == NEW_EH_RUNTIME); - if (rethrow) + if (rethrow) { rethrow = 0; - handler = find_exception_handler (eh->table_index, udata->eh_ptr, + handler = find_exception_handler (eh->table_index, udata->eh_ptr, eh_info, 1, &cleanup); eh->table_index = (void *)0; } else if (new_eh_model) - handler = find_exception_handler (pc, udata->eh_ptr, eh_info, + handler = find_exception_handler (pc, udata->eh_ptr, eh_info, 0, &cleanup); else handler = old_find_exception_handler (pc, udata->eh_ptr); - /* If we found one, we can stop searching, if its not a cleanup. + /* If we found one, we can stop searching, if its not a cleanup. for cleanups, we save the state, and keep looking. This allows us to call a debug hook if there are nothing but cleanups left. */ if (handler) @@ -3865,7 +3865,7 @@ pc = get_return_addr (udata, sub_udata) - 1; } - if (saved_state) + if (saved_state) { udata = &saved_ustruct; handler = handler_p; @@ -3876,7 +3876,7 @@ /* If we haven't found a handler by now, this is an unhandled exception. */ - if (! handler) + if (! handler) __terminate(); eh->handler_label = handler; @@ -3945,7 +3945,7 @@ #else *offset_p = my_udata->cfa - udata->cfa - args_size; #endif - + return handler; } @@ -3976,7 +3976,7 @@ active. */ if (! eh->info) __terminate (); - + /* Start at our stack frame. */ label: my_udata = __frame_state_for (&&label, my_udata); @@ -4027,7 +4027,7 @@ the END_REGION label is used for the PC of the throw, and the search begins with the next table entry. */ eh->table_index = index; - + /* Start at our stack frame. */ label: my_udata = __frame_state_for (&&label, my_udata); @@ -4056,7 +4056,7 @@ #endif /* DWARF2_UNWIND_INFO */ #endif /* L_eh */ - + #ifdef L_pure #ifndef inhibit_libc /* This gets us __GNU_LIBRARY__. */ @@ -4076,7 +4076,7 @@ __pure_virtual () { #ifndef inhibit_libc -#if __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) debugger (MESSAGE); #else write (2, MESSAGE, sizeof (MESSAGE) - 1); diff --git a/legacy/gcc/gcc/toplev.c b/legacy/gcc/gcc/toplev.c index 85cff8e..af591b6 100644 --- a/legacy/gcc/gcc/toplev.c +++ b/legacy/gcc/gcc/toplev.c @@ -74,9 +74,9 @@ #ifdef XCOFF_DEBUGGING_INFO #include "xcoffout.h" #endif - -#ifdef __BEOS__ + +#if defined(__BEOS__) || defined(__HAIKU__) #include /* the thread priority used for all gcc-tools */ static int priority = B_LOW_PRIORITY; @@ -108,7 +108,7 @@ #endif /* If more than one debugging type is supported, you must define - PREFERRED_DEBUGGING_TYPE to choose a format in a system-dependent way. + PREFERRED_DEBUGGING_TYPE to choose a format in a system-dependent way. This is one long line cause VAXC can't handle a \-newline. */ #if 1 < (defined (DBX_DEBUGGING_INFO) + defined (SDB_DEBUGGING_INFO) + defined (DWARF_DEBUGGING_INFO) + defined (DWARF2_DEBUGGING_INFO) + defined (XCOFF_DEBUGGING_INFO)) @@ -248,7 +248,7 @@ /* Copy of arguments to main. */ int save_argc; char **save_argv; - + /* Name of current original source file (what was input to cpp). This comes from each #-command in the actual input. */ @@ -429,7 +429,7 @@ times taken by the various passes. -quiet. */ int quiet_flag = 0; - + /* -f flags. */ /* Nonzero means `char' should be signed. */ @@ -554,7 +554,7 @@ int flag_function_sections = 0; /* ... and similar for data. */ - + int flag_data_sections = 0; /* Nonzero to inhibit use of define_optimization peephole opts. */ @@ -656,7 +656,7 @@ int flag_exceptions; -/* Nonzero means use the new model for exception handling. Replaces +/* Nonzero means use the new model for exception handling. Replaces -DNEW_EH_MODEL as a compile option. */ int flag_new_exceptions = 0; @@ -707,7 +707,7 @@ int flag_branch_on_count_reg; /* -finhibit-size-directive inhibits output of .size for ELF. - This is used only for compiling crtstuff.c, + This is used only for compiling crtstuff.c, and it may be extended to other effects needed for crtstuff.c on other systems. */ int flag_inhibit_size_directive = 0; @@ -1147,12 +1147,12 @@ { "-nostdinc++", "" }, { "-trigraphs", "" }, { "-undef", "" }, - + #define DEFINE_LANG_NAME(NAME) { NULL, NAME }, - + /* These are for obj c. */ DEFINE_LANG_NAME ("Objective C") - + { "-lang-objc", "" }, { "-gen-decls", "Dump decls to a .decl file" }, { "-fgnu-runtime", "Generate code for GNU runtime environment" }, @@ -1167,7 +1167,7 @@ "Generate C header of platform specific features" }, #include "options.h" - + }; /* Here is a table, controlled by the tm.h file, listing each -m switch @@ -1195,7 +1195,7 @@ } target_options [] = TARGET_OPTIONS; #endif - + /* Options controlling warnings */ /* Don't print warning messages. -w. */ @@ -1246,7 +1246,7 @@ /* Nonzero means warn about any objects definitions whose size is larger than N bytes. Also want about function definitions whose returned values are larger than N bytes. The value N is in `larger_than_size'. */ - + int warn_larger_than; unsigned larger_than_size; @@ -1277,7 +1277,7 @@ {"inline", &warn_inline, 1, "Warn when an inlined function cannot be inlined"} }; - + /* Output files for assembler code (real compiler output) and debugging dumps. */ @@ -1289,7 +1289,7 @@ If the string is indeed an integer return its numeric value else issue an Invalid Option error for the option PNAME and return DEFVAL. If PNAME is zero just return DEFVAL, do not call error. */ - + int read_integral_parameter (p, pname, defval) const char *p; @@ -1344,7 +1344,7 @@ int final_time; int symout_time; int dump_time; - + /* Return time used so far, in microseconds. */ long @@ -1353,7 +1353,7 @@ if (quiet_flag) return 0; -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) return 0; #else /* not BeOS */ #if defined (_WIN32) && !defined (__CYGWIN__) @@ -1411,7 +1411,7 @@ #endif /* USG */ #endif /* _SC_CLK_TCK */ #endif /* _WIN32 */ -#endif /* __BEOS__ */ +#endif /* __BEOS__ || __HAIKU__ */ } #define TIMEVAR(VAR, BODY) \ @@ -1520,7 +1520,7 @@ { return IDENTIFIER_POINTER (DECL_NAME (decl)); } - + static int need_error_newline; /* Function of last error message; @@ -1620,7 +1620,7 @@ (*print_error_function) (input_filename); } - + /* Print a message. */ static void @@ -1751,7 +1751,7 @@ { char fmt[sizeof "%.255s"]; long width = p - _(msgid); - + if (width > 255L) width = 255L; /* arbitrary */ sprintf (fmt, "%%.%lds", width); fprintf (stderr, fmt, _(msgid)); @@ -2271,7 +2271,7 @@ vsorry (msgid, ap); va_end (ap); } - + /* Given a partial pathname as input, return another pathname that shares no elements with the pathname of __FILE__. This is used by abort() to print `Internal compiler error in expr.c' instead of `Internal compiler @@ -2362,7 +2362,7 @@ } -/* Same as `realloc' but report error if no memory available. +/* Same as `realloc' but report error if no memory available. Also handle null PTR even if the vendor realloc gets it wrong. */ PTR @@ -2396,7 +2396,7 @@ strcpy (result, s); return result; } - + /* Return the logarithm of X, base 2, considering X unsigned, if X is a power of 2. Otherwise, returns -1. @@ -2617,7 +2617,7 @@ #endif #endif } - + #ifdef ASM_IDENTIFY_LANGUAGE /* Routine to build language identifier for object file. */ static void @@ -2646,21 +2646,21 @@ if (rtl_dump_file != NULL) fclose (rtl_dump_file); - + strcpy (dumpname, dump_base_name); strcat (dumpname, suffix); - + rtl_dump_file = fopen (dumpname, "a"); - + if (rtl_dump_file == NULL) pfatal_with_name (dumpname); - + free (dumpname); if (function_name) fprintf (rtl_dump_file, "\n;; Function %s\n\n", function_name); }); - + return; } @@ -2675,10 +2675,10 @@ { if (func) func (rtl_dump_file, insns); - + fflush (rtl_dump_file); fclose (rtl_dump_file); - + rtl_dump_file = NULL; }); @@ -2708,24 +2708,24 @@ strcpy (dumpname, dump_base_name); strcat (dumpname, suffix); - + rtl_dump_file = fopen (dumpname, "w"); if (rtl_dump_file == NULL) - pfatal_with_name (dumpname); + pfatal_with_name (dumpname); free (dumpname); fclose (rtl_dump_file); rtl_dump_file = NULL; - + return; } /* Do any final processing required for the declarations in VEC, of which there are LEN. We write out inline functions and variables that have been deferred until this point, but which are required. - Returns non-zero if anything was put out. */ + Returns non-zero if anything was put out. */ int wrapup_global_declarations (vec, len) tree *vec; @@ -2739,10 +2739,10 @@ for (i = 0; i < len; i++) { decl = vec[i]; - + /* We're not deferring this any longer. */ DECL_DEFER_OUTPUT (decl) = 0; - + if (TREE_CODE (decl) == VAR_DECL && DECL_SIZE (decl) == 0 && incomplete_decl_finalize_hook != 0) (*incomplete_decl_finalize_hook) (decl); @@ -3244,7 +3244,7 @@ Therefore, I took out that change. In future versions we should find another way to solve that dbx problem. -- rms, 23 May 93. */ - + /* Don't let the first function fall at the same address as gcc_compiled., if profiling. */ if (profile_flag || profile_block_flag) @@ -3388,15 +3388,15 @@ /* Output some stuff at end of file if nec. */ end_final (dump_base_name); - + if (branch_prob_dump) open_dump_file (".bp", NULL); - + TIMEVAR (dump_time, end_branch_prob (rtl_dump_file)); - + if (branch_prob_dump) close_dump_file (NULL, NULL_RTX); - + #ifdef ASM_FILE_END ASM_FILE_END (asm_out_file); #endif @@ -3517,7 +3517,7 @@ print_time ("dump", dump_time); } } - + /* This is called from various places for FUNCTION_DECL, VAR_DECL, and TYPE_DECL nodes. @@ -3680,10 +3680,10 @@ if (rtl_dump) { open_dump_file (".rtl", decl_printable_name (decl, 2)); - + if (DECL_SAVED_INSNS (decl)) fprintf (rtl_dump_file, ";; (integrable)\n\n"); - + close_dump_file (print_rtl, insns); } @@ -3961,17 +3961,17 @@ { if (loop_dump) open_dump_file (".loop", decl_printable_name (decl, 2)); - + TIMEVAR (loop_time, { if (flag_rerun_loop_opt) { /* We only want to perform unrolling once. */ - + loop_optimize (insns, rtl_dump_file, 0, 0); - - + + /* The first call to loop_optimize makes some instructions trivially dead. We delete those instructions now in the hope that doing so will make the heuristics in loop work @@ -4011,7 +4011,7 @@ TIMEVAR (jump_time, jump_optimize (insns, !JUMP_CROSS_JUMP, !JUMP_NOOP_MOVES, JUMP_AFTER_REGSCAN)); - + TIMEVAR (cse2_time, reg_scan (insns, max_reg_num (), 0)); TIMEVAR (cse2_time, tem = cse_main (insns, max_reg_num (), 1, rtl_dump_file)); @@ -4076,7 +4076,7 @@ if (flow_dump) open_dump_file (".flow", decl_printable_name (decl, 2)); - + if (obey_regdecls) { TIMEVAR (flow_time, @@ -4181,7 +4181,7 @@ current_function_is_leaf = leaf_function_p (); /* Unless we did stupid register allocation, - allocate pseudo-regs that are used only within 1 basic block. + allocate pseudo-regs that are used only within 1 basic block. RUN_JUMP_AFTER_RELOAD records whether or not we need to rerun the jump optimizer after register allocation and reloading are finished. */ @@ -4278,7 +4278,7 @@ /* Re-create the death notes which were deleted during reload. */ if (flow2_dump) open_dump_file (".flow2", decl_printable_name (decl, 2)); - + if (optimize) { TIMEVAR @@ -4526,15 +4526,15 @@ /* Reset global variables. */ free_basic_block_vars (0); } - + static void display_help () { int undoc; unsigned long i; const char * lang; - -#ifndef USE_CPPLIB + +#ifndef USE_CPPLIB printf ("Usage: %s input [switches]\n", progname); printf ("Switches:\n"); #endif @@ -4546,47 +4546,47 @@ for (i = NUM_ELEM (f_options); i--;) { const char * description = f_options[i].description; - + if (description != NULL && * description != 0) printf (" -f%-21s %s\n", f_options[i].string, description); } - + printf (" -O[number] Set optimisation level to [number]\n"); printf (" -Os Optimise for space rather than speed\n"); printf (" -pedantic Issue warnings needed by strict compliance to ANSI C\n"); printf (" -pedantic-errors Like -pedantic except that errors are produced\n"); printf (" -w Suppress warnings\n"); printf (" -W Enable extra warnings\n"); - + for (i = NUM_ELEM (W_options); i--;) { const char * description = W_options[i].description; - + if (description != NULL && * description != 0) printf (" -W%-21s %s\n", W_options[i].string, description); } - + printf (" -Wid-clash- Warn if 2 identifiers have the same first chars\n"); printf (" -Wlarger-than- Warn if an object is larger than bytes\n"); printf (" -p Enable function profiling\n"); #if defined (BLOCK_PROFILER) || defined (FUNCTION_BLOCK_PROFILER) printf (" -a Enable block profiling \n"); -#endif +#endif #if defined (BLOCK_PROFILER) || defined (FUNCTION_BLOCK_PROFILER) || defined FUNCTION_BLOCK_PROFILER_EXIT printf (" -ax Enable jump profiling \n"); -#endif +#endif printf (" -o Place output into \n"); printf (" -G Put global and static data smaller than \n"); printf (" bytes into a special section (on some targets)\n"); - + for (i = NUM_ELEM (debug_args); i--;) { if (debug_args[i].description != NULL) printf (" -%-22s %s\n", debug_args[i].arg, debug_args[i].description); } - + printf (" -aux-info Emit declaration info into .X\n"); printf (" -quiet Do not display functions compiled or elapsed time\n"); printf (" -version Display the compiler's version\n"); @@ -4600,7 +4600,7 @@ undoc = 0; lang = "language"; - + /* Display descriptions of language specific options. If there is no description, note that there is an undocumented option. If the description is empty, do not display anything. (This allows @@ -4608,7 +4608,7 @@ If the option string is missing, then this is a marker, indicating that the description string is in fact the name of a language, whose language specific options are to follow. */ - + if (NUM_ELEM (documented_lang_options) > 1) { printf ("\nLanguage specific options:\n"); @@ -4634,7 +4634,7 @@ ("\nThere are undocumented %s specific options as well.\n", lang); undoc = 0; - + printf ("\n Options for %s:\n", description); lang = description; @@ -4654,9 +4654,9 @@ ) { int doc = 0; - + undoc = 0; - + printf ("\nTarget specific options:\n"); for (i = NUM_ELEM (target_switches); i--;) @@ -4669,15 +4669,15 @@ else if (description == NULL) { undoc = 1; - + if (extra_warnings) printf (" -m%-21.21s [undocumented]\n", option); } else if (* description != 0) doc += printf (" -m%-21.21s %s\n", option, description); } - -#ifdef TARGET_OPTIONS + +#ifdef TARGET_OPTIONS for (i = NUM_ELEM (target_options); i--;) { const char * option = target_options[i].prefix; @@ -4688,7 +4688,7 @@ else if (description == NULL) { undoc = 1; - + if (extra_warnings) printf (" -m%-21.21s [undocumented]\n", option); } @@ -4720,7 +4720,7 @@ int numopts; long k; char * space; - + /* Ignore NULL entries. */ if (option == NULL || lang_option == NULL) return 0; @@ -4729,23 +4729,23 @@ len = space - lang_option; else len = strlen (lang_option); - + /* If they do not match to the first n characters then fail. */ if (strncmp (option, lang_option, len) != 0) return 0; - + /* Do not accept a lang option, if it matches a normal -f or -W option. Chill defines a -fpack, but we want to support -fpack-struct. */ - + /* An exact match is OK */ if ((int) strlen (option) == len) return 1; - + /* If it is not an -f or -W option allow the match */ if (option[0] != '-') return 1; - + switch (option[1]) { case 'f': @@ -4758,31 +4758,31 @@ break; default: return 1; } - + /* The option is a -f or -W option. Skip past the prefix and search for the remainder in the appropriate table of options. */ option += 2; - + if (option[0] == 'n' && option[1] == 'o' && option[2] == '-') option += 3; - + for (k = numopts; k--;) { if (!strcmp (option, indep_options[k].string)) { /* The option matched a language independent option, do not allow the language specific match. */ - + return 0; } } - + /* The option matches the start of the langauge specific option and it is not an exact match for a language independent option. */ return 1; } - + /* Entry point of cc1/c++. Decode command args, then call compile_file. Exit code is 35 if can't open files, 34 if fatal error, 33 if had nonfatal errors, else success. */ @@ -4861,16 +4861,16 @@ { /* Handle -Os, -O2, -O3, -O69, ... */ char *p = &argv[i][2]; - + if ((p[0] == 's') && (p[1] == 0)) { optimize_size = 1; - + /* Optimizing for size forces optimize to be 2. */ optimize = 2; } else - { + { const int optimize_val = read_integral_parameter (p, p - 2, -1); if (optimize_val != -1) { @@ -4934,25 +4934,25 @@ for (i = 1; i < argc; i++) { size_t j; - + /* If this is a language-specific option, decode it in a language-specific way. */ for (j = NUM_ELEM (documented_lang_options); j--;) if (check_lang_option (argv[i], documented_lang_options[j].option)) break; - + if (j != (size_t)-1) { /* If the option is valid for *some* language, treat it as valid even if this language doesn't understand it. */ int strings_processed = lang_decode_option (argc - i, argv + i); - + if (!strcmp (argv[i], "--help")) { display_help (); exit (0); } - + if (strings_processed != 0) i += strings_processed - 1; } @@ -5033,7 +5033,7 @@ case 'J': jump2_opt_dump = 1; break; -#ifdef STACK_REGS +#ifdef STACK_REGS case 'k': stack_reg_dump = 1; break; @@ -5149,7 +5149,7 @@ pedantic = 1; else if (!strcmp (str, "pedantic-errors")) flag_pedantic_errors = pedantic = 1; -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) else if (!strncmp (str, "priority=", 9)) priority = atol (str + 9); #endif @@ -5238,7 +5238,7 @@ #if !defined (FUNCTION_BLOCK_PROFILER_EXIT) || !defined (BLOCK_PROFILER) || !defined (FUNCTION_BLOCK_PROFILER) warning ("`-ax' option (jump profiling) not supported"); #else - profile_block_flag = (!profile_block_flag + profile_block_flag = (!profile_block_flag || profile_block_flag == 2) ? 2 : 3; #endif } @@ -5276,13 +5276,13 @@ if (*p && (*p < '0' || *p > '9')) continue; - + /* A debug flag without a level defaults to level 2. Note we do not want to call read_integral_parameter - for that case since it will call atoi which + for that case since it will call atoi which will return zero. - ??? We may want to generalize the interface to + ??? We may want to generalize the interface to read_integral_parameter to better handle this case if this case shows up often. */ if (*p) @@ -5366,7 +5366,7 @@ const int g_switch_val = (str[1] != '\0') ? read_integral_parameter(str + 1, 0, -1) : read_integral_parameter(argv[++i], 0, -1); - + if (g_switch_val != -1) { g_switch_set = TRUE; @@ -5396,7 +5396,7 @@ filename = argv[i]; } -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) set_thread_priority (find_thread(NULL), priority); { char priobuf[20]; @@ -5471,7 +5471,7 @@ user_label_prefix = USER_LABEL_PREFIX; if (flag_leading_underscore != -1) { - /* If the default prefix is more complicated than "" or "_", + /* If the default prefix is more complicated than "" or "_", issue a warning and ignore this option. */ if (user_label_prefix[0] == 0 || (user_label_prefix[0] == '_' && user_label_prefix[1] == 0)) @@ -5519,7 +5519,7 @@ exit (SUCCESS_EXIT_CODE); return 0; } - + /* Decode -m switches. */ /* Decode the switch -mNAME. */ @@ -5556,7 +5556,7 @@ if (!valid_target_option) error ("Invalid option `%s'", name); } - + /* Print version information to FILE. Each line begins with INDENT (for the case where FILE is the assembler output file). */ @@ -5608,7 +5608,7 @@ pos += len; return pos; } - + /* Print active target switches to FILE. POS is the current cursor position and MAX is the size of a "line". Each line begins with INDENT and ends with TERM. @@ -5707,7 +5707,7 @@ if (debug_info_level == DINFO_LEVEL_VERBOSE && write_symbols == DWARF2_DEBUG) dwarf2out_start_source_file (filename); -#endif /* DWARF2_DEBUGGING_INFO */ +#endif /* DWARF2_DEBUGGING_INFO */ #ifdef SDB_DEBUGGING_INFO if (write_symbols == SDB_DEBUG) sdbout_start_new_source_file (filename); diff --git a/legacy/binutils/bfd/doc/bfd.info b/legacy/binutils/bfd/doc/bfd.info index ac27744..2008afa 100644 --- a/legacy/binutils/bfd/doc/bfd.info +++ b/legacy/binutils/bfd/doc/bfd.info @@ -1,5 +1,7 @@ -This is ../../../binutils/bfd/doc/bfd.info, produced by makeinfo -version 4.7 from ../../../binutils/bfd/doc/bfd.texinfo. +This is +/home/bonefish/develop/haiku/buildtools/legacy/binutils/bfd/doc/bfd.info, +produced by makeinfo version 4.9 from +/home/bonefish/develop/haiku/buildtools/legacy/binutils/bfd/doc/bfd.texinfo. START-INFO-DIR-ENTRY * Bfd: (bfd). The Binary File Descriptor library. @@ -10239,67 +10241,67 @@  Tag Table: -Node: Top744 -Node: Overview1076 -Node: History2127 -Node: How It Works3073 -Node: What BFD Version 2 Can Do4615 -Node: BFD information loss5930 -Node: Canonical format8462 -Node: BFD front end12834 -Node: Memory Usage38448 -Node: Initialization39676 -Node: Sections40135 -Node: Section Input40618 -Node: Section Output41983 -Node: typedef asection44469 -Node: section prototypes69426 -Node: Symbols79106 -Node: Reading Symbols80701 -Node: Writing Symbols81808 -Node: Mini Symbols83517 -Node: typedef asymbol84491 -Node: symbol handling functions89409 -Node: Archives94751 -Node: Formats98477 -Node: Relocations101425 -Node: typedef arelent102152 -Node: howto manager117963 -Node: Core Files180243 -Node: Targets182060 -Node: bfd_target184030 -Node: Architectures204110 -Node: Opening and Closing225542 -Node: Internal236544 -Node: File Caching242877 -Node: Linker Functions244791 -Node: Creating a Linker Hash Table246464 -Node: Adding Symbols to the Hash Table248202 -Node: Differing file formats249102 -Node: Adding symbols from an object file250850 -Node: Adding symbols from an archive253001 -Node: Performing the Final Link255415 -Node: Information provided by the linker256657 -Node: Relocating the section contents257811 -Node: Writing the symbol table259562 -Node: Hash Tables262555 -Node: Creating and Freeing a Hash Table263753 -Node: Looking Up or Entering a String265003 -Node: Traversing a Hash Table266256 -Node: Deriving a New Hash Table Type267045 -Node: Define the Derived Structures268111 -Node: Write the Derived Creation Routine269192 -Node: Write Other Derived Routines271816 -Node: BFD back ends273131 -Node: What to Put Where273401 -Node: aout273539 -Node: coff279857 -Node: elf304334 -Node: mmo305197 -Node: File layout306125 -Node: Symbol-table311772 -Node: mmo section mapping315541 -Node: GNU Free Documentation License319193 -Node: Index338918 +Node: Top820 +Node: Overview1152 +Node: History2203 +Node: How It Works3149 +Node: What BFD Version 2 Can Do4691 +Node: BFD information loss6006 +Node: Canonical format8538 +Node: BFD front end12910 +Node: Memory Usage38524 +Node: Initialization39752 +Node: Sections40211 +Node: Section Input40694 +Node: Section Output42059 +Node: typedef asection44545 +Node: section prototypes69502 +Node: Symbols79182 +Node: Reading Symbols80777 +Node: Writing Symbols81884 +Node: Mini Symbols83593 +Node: typedef asymbol84567 +Node: symbol handling functions89485 +Node: Archives94827 +Node: Formats98553 +Node: Relocations101501 +Node: typedef arelent102228 +Node: howto manager118039 +Node: Core Files180319 +Node: Targets182136 +Node: bfd_target184106 +Node: Architectures204186 +Node: Opening and Closing225618 +Node: Internal236620 +Node: File Caching242953 +Node: Linker Functions244867 +Node: Creating a Linker Hash Table246540 +Node: Adding Symbols to the Hash Table248278 +Node: Differing file formats249178 +Node: Adding symbols from an object file250926 +Node: Adding symbols from an archive253077 +Node: Performing the Final Link255491 +Node: Information provided by the linker256733 +Node: Relocating the section contents257887 +Node: Writing the symbol table259638 +Node: Hash Tables262631 +Node: Creating and Freeing a Hash Table263829 +Node: Looking Up or Entering a String265079 +Node: Traversing a Hash Table266332 +Node: Deriving a New Hash Table Type267121 +Node: Define the Derived Structures268187 +Node: Write the Derived Creation Routine269268 +Node: Write Other Derived Routines271892 +Node: BFD back ends273207 +Node: What to Put Where273477 +Node: aout273615 +Node: coff279933 +Node: elf304410 +Node: mmo305273 +Node: File layout306201 +Node: Symbol-table311848 +Node: mmo section mapping315617 +Node: GNU Free Documentation License319269 +Node: Index338994  End Tag Table diff --git a/legacy/binutils/binutils/doc/binutils.info b/legacy/binutils/binutils/doc/binutils.info index 3af1c77..5f28e62 100644 --- a/legacy/binutils/binutils/doc/binutils.info +++ b/legacy/binutils/binutils/doc/binutils.info @@ -1,5 +1,7 @@ -This is ../../../binutils/binutils/doc/binutils.info, produced by -makeinfo version 4.7 from ../../../binutils/binutils/doc/binutils.texi. +This is +/home/bonefish/develop/haiku/buildtools/legacy/binutils/binutils/doc/binutils.info, +produced by makeinfo version 4.9 from +/home/bonefish/develop/haiku/buildtools/legacy/binutils/binutils/doc/binutils.texi. START-INFO-DIR-ENTRY * Binutils: (binutils). The GNU binary utilities. @@ -3803,33 +3805,33 @@  Tag Table: -Node: Top1771 -Node: ar3324 -Node: ar cmdline5502 -Node: ar scripts13645 -Node: nm19333 -Node: objcopy27529 -Node: objdump50581 -Node: ranlib65494 -Node: size66249 -Node: strings69096 -Node: strip71446 -Node: c++filt76925 -Ref: c++filt-Footnote-181853 -Node: addr2line81959 -Node: nlmconv85230 -Node: windres87836 -Node: dlltool93569 -Node: def file format104407 -Node: readelf106145 -Node: Common Options110853 -Node: Selecting The Target System111893 -Node: Target Selection112825 -Node: Architecture Selection114807 -Node: Reporting Bugs115635 -Node: Bug Criteria116414 -Node: Bug Reporting116967 -Node: GNU Free Documentation License124061 -Node: Index143793 +Node: Top1847 +Node: ar3400 +Node: ar cmdline5578 +Node: ar scripts13721 +Node: nm19409 +Node: objcopy27605 +Node: objdump50657 +Node: ranlib65570 +Node: size66325 +Node: strings69172 +Node: strip71522 +Node: c++filt77001 +Ref: c++filt-Footnote-181929 +Node: addr2line82035 +Node: nlmconv85306 +Node: windres87912 +Node: dlltool93645 +Node: def file format104483 +Node: readelf106221 +Node: Common Options110929 +Node: Selecting The Target System111969 +Node: Target Selection112901 +Node: Architecture Selection114883 +Node: Reporting Bugs115711 +Node: Bug Criteria116490 +Node: Bug Reporting117043 +Node: GNU Free Documentation License124137 +Node: Index143869  End Tag Table diff --git a/legacy/binutils/gas/doc/as.info b/legacy/binutils/gas/doc/as.info index 744d9e4..a745c92 100644 --- a/legacy/binutils/gas/doc/as.info +++ b/legacy/binutils/gas/doc/as.info @@ -1,5 +1,7 @@ -This is ../../../binutils/gas/doc/as.info, produced by makeinfo version -4.7 from ../../../binutils/gas/doc/as.texinfo. +This is +/home/bonefish/develop/haiku/buildtools/legacy/binutils/gas/doc/as.info, +produced by makeinfo version 4.9 from +/home/bonefish/develop/haiku/buildtools/legacy/binutils/gas/doc/as.texinfo. START-INFO-DIR-ENTRY * As: (as). The GNU assembler. @@ -17890,463 +17892,463 @@  Tag Table: -Node: Top798 -Node: Overview1715 -Node: Manual28207 -Node: GNU Assembler29151 -Node: Object Formats30322 -Node: Command Line30774 -Node: Input Files31861 -Node: Object33842 -Node: Errors34738 -Node: Invoking35933 -Node: a37882 -Node: alternate39654 -Node: D39826 -Node: f40059 -Node: I40567 -Node: K41111 -Node: L41414 -Node: listing42251 -Node: M43843 -Node: MD48244 -Node: o48670 -Node: R49125 -Node: statistics50155 -Node: traditional-format50562 -Node: v51035 -Node: W51310 -Node: Z52217 -Node: Syntax52739 -Node: Preprocessing53330 -Node: Whitespace54893 -Node: Comments55289 -Node: Symbol Intro57442 -Node: Statements58132 -Node: Constants60048 -Node: Characters60679 -Node: Strings61181 -Node: Chars63347 -Node: Numbers64101 -Node: Integers64641 -Node: Bignums65297 -Node: Flonums65653 -Node: Sections67400 -Node: Secs Background67778 -Node: Ld Sections72817 -Node: As Sections75201 -Node: Sub-Sections76111 -Node: bss79258 -Node: Symbols80208 -Node: Labels80856 -Node: Setting Symbols81587 -Node: Symbol Names82083 -Node: Dot86448 -Node: Symbol Attributes86895 -Node: Symbol Value87632 -Node: Symbol Type88677 -Node: a.out Symbols89065 -Node: Symbol Desc89327 -Node: Symbol Other89622 -Node: COFF Symbols89791 -Node: SOM Symbols90464 -Node: Expressions90906 -Node: Empty Exprs91655 -Node: Integer Exprs92002 -Node: Arguments92397 -Node: Operators93503 -Node: Prefix Ops93838 -Node: Infix Ops94166 -Node: Pseudo Ops96556 -Node: Abort101751 -Node: ABORT102156 -Node: Align102343 -Node: Ascii104625 -Node: Asciz104934 -Node: Balign105179 -Node: Byte107042 -Node: Comm107280 -Node: CFI directives108654 -Node: LNS directives111006 -Node: Data113083 -Node: Def113410 -Node: Desc113642 -Node: Dim114142 -Node: Double114399 -Node: Eject114737 -Node: Else114912 -Node: Elseif115208 -Node: End115498 -Node: Endef115713 -Node: Endfunc115890 -Node: Endif116065 -Node: Equ116326 -Node: Equiv116835 -Node: Eqv117391 -Node: Err117755 -Node: Error118066 -Node: Exitm118511 -Node: Extern118680 -Node: Fail118941 -Node: File119386 -Node: Fill119863 -Node: Float120827 -Node: Func121169 -Node: Global121759 -Node: Hidden122509 -Node: hword123088 -Node: Ident123416 -Node: If123990 -Node: Incbin127049 -Node: Include127744 -Node: Int128295 -Node: Internal128676 -Node: Irp129324 -Node: Irpc130221 -Node: Lcomm131138 -Node: Lflags131886 -Node: Line132080 -Node: Linkonce132999 -Node: Ln134228 -Node: MRI134389 -Node: List134727 -Node: Long135335 -Node: Macro135521 -Node: Altmacro140084 -Node: Noaltmacro141414 -Node: Nolist141582 -Node: Octa142012 -Node: Org142346 -Node: P2align143629 -Node: Previous145557 -Node: PopSection146251 -Node: Print146759 -Node: Protected146988 -Node: Psize147635 -Node: Purgem148319 -Node: PushSection148540 -Node: Quad149097 -Node: Rept149552 -Node: Sbttl149965 -Node: Scl150330 -Node: Section150671 -Node: Set155811 -Node: Short156448 -Node: Single156768 -Node: Size157113 -Node: Sleb128157785 -Node: Skip158107 -Node: Space158429 -Node: Stab159068 -Node: String161070 -Node: Struct161496 -Node: SubSection162219 -Node: Symver162780 -Node: Tag165171 -Node: Text165551 -Node: Title165870 -Node: Type166249 -Node: Uleb128167326 -Node: Val167650 -Node: Version167900 -Node: VTableEntry168175 -Node: VTableInherit168465 -Node: Warning168911 -Node: Weak169145 -Node: Weakref169814 -Node: Word170779 -Node: Deprecated172625 -Node: Machine Dependencies172860 -Node: Alpha-Dependent175624 -Node: Alpha Notes176038 -Node: Alpha Options176319 -Node: Alpha Syntax178517 -Node: Alpha-Chars178986 -Node: Alpha-Regs179217 -Node: Alpha-Relocs179604 -Node: Alpha Floating Point185862 -Node: Alpha Directives186084 -Node: Alpha Opcodes191607 -Node: ARC-Dependent191902 -Node: ARC Options192285 -Node: ARC Syntax193354 -Node: ARC-Chars193586 -Node: ARC-Regs193718 -Node: ARC Floating Point193842 -Node: ARC Directives194153 -Node: ARC Opcodes200124 -Node: ARM-Dependent200350 -Node: ARM Options200777 -Node: ARM Syntax206571 -Node: ARM-Chars206803 -Node: ARM-Regs207327 -Node: ARM Floating Point207512 -Node: ARM Directives207711 -Node: ARM Opcodes214075 -Node: ARM Mapping Symbols216163 -Node: BFIN-Dependent216942 -Node: BFIN Syntax217196 -Node: BFIN Directives222893 -Node: CRIS-Dependent223300 -Node: CRIS-Opts223646 -Ref: march-option225264 -Node: CRIS-Expand227081 -Node: CRIS-Symbols228264 -Node: CRIS-Syntax229433 -Node: CRIS-Chars229769 -Node: CRIS-Pic230320 -Ref: crispic230516 -Node: CRIS-Regs234056 -Node: CRIS-Pseudos234473 -Ref: crisnous235249 -Node: D10V-Dependent236531 -Node: D10V-Opts236882 -Node: D10V-Syntax237845 -Node: D10V-Size238374 -Node: D10V-Subs239347 -Node: D10V-Chars240382 -Node: D10V-Regs241986 -Node: D10V-Addressing243031 -Node: D10V-Word243717 -Node: D10V-Float244232 -Node: D10V-Opcodes244543 -Node: D30V-Dependent244936 -Node: D30V-Opts245289 -Node: D30V-Syntax245964 -Node: D30V-Size246496 -Node: D30V-Subs247467 -Node: D30V-Chars248502 -Node: D30V-Guarded250800 -Node: D30V-Regs251480 -Node: D30V-Addressing252619 -Node: D30V-Float253287 -Node: D30V-Opcodes253598 -Node: H8/300-Dependent253991 -Node: H8/300 Options254401 -Node: H8/300 Syntax254610 -Node: H8/300-Chars254909 -Node: H8/300-Regs255206 -Node: H8/300-Addressing256123 -Node: H8/300 Floating Point257162 -Node: H8/300 Directives257487 -Node: H8/300 Opcodes258613 -Node: HPPA-Dependent266933 -Node: HPPA Notes267366 -Node: HPPA Options268122 -Node: HPPA Syntax268315 -Node: HPPA Floating Point269583 -Node: HPPA Directives269787 -Node: HPPA Opcodes278471 -Node: ESA/390-Dependent278728 -Node: ESA/390 Notes279188 -Node: ESA/390 Options279979 -Node: ESA/390 Syntax280189 -Node: ESA/390 Floating Point282362 -Node: ESA/390 Directives282641 -Node: ESA/390 Opcodes285930 -Node: i386-Dependent286192 -Node: i386-Options287260 -Node: i386-Syntax288450 -Node: i386-Mnemonics290864 -Node: i386-Regs293329 -Node: i386-Prefixes295374 -Node: i386-Memory298134 -Node: i386-Jumps301071 -Node: i386-Float302192 -Node: i386-SIMD304021 -Node: i386-16bit305130 -Node: i386-Bugs307168 -Node: i386-Arch307922 -Node: i386-Notes310103 -Node: i860-Dependent310961 -Node: Notes-i860311357 -Node: Options-i860312262 -Node: Directives-i860313625 -Node: Opcodes for i860314694 -Node: i960-Dependent316861 -Node: Options-i960317264 -Node: Floating Point-i960321148 -Node: Directives-i960321416 -Node: Opcodes for i960323450 -Node: callj-i960324067 -Node: Compare-and-branch-i960324556 -Node: IA-64-Dependent326460 -Node: IA-64 Options326761 -Node: IA-64 Syntax329921 -Node: IA-64-Chars330284 -Node: IA-64-Regs330514 -Node: IA-64-Bits331440 -Node: IA-64 Opcodes331949 -Node: IP2K-Dependent332221 -Node: IP2K-Opts332449 -Node: M32C-Dependent332929 -Node: M32C-Opts333453 -Node: M32C-Modifiers333737 -Node: M32R-Dependent335524 -Node: M32R-Opts335845 -Node: M32R-Directives340011 -Node: M32R-Warnings343986 -Node: M68K-Dependent346992 -Node: M68K-Opts347459 -Node: M68K-Syntax354838 -Node: M68K-Moto-Syntax356677 -Node: M68K-Float359266 -Node: M68K-Directives359786 -Node: M68K-opcodes361112 -Node: M68K-Branch361338 -Node: M68K-Chars365536 -Node: M68HC11-Dependent365949 -Node: M68HC11-Opts366480 -Node: M68HC11-Syntax370296 -Node: M68HC11-Modifiers372510 -Node: M68HC11-Directives374338 -Node: M68HC11-Float375714 -Node: M68HC11-opcodes376242 -Node: M68HC11-Branch376424 -Node: MIPS-Dependent378871 -Node: MIPS Opts379961 -Node: MIPS Object387288 -Node: MIPS Stabs388854 -Node: MIPS symbol sizes389576 -Node: MIPS ISA391245 -Node: MIPS autoextend392394 -Node: MIPS insn393124 -Node: MIPS option stack393621 -Node: MIPS ASE instruction generation overrides394395 -Node: MMIX-Dependent395612 -Node: MMIX-Opts395992 -Node: MMIX-Expand399596 -Node: MMIX-Syntax400911 -Ref: mmixsite401268 -Node: MMIX-Chars402109 -Node: MMIX-Symbols402763 -Node: MMIX-Regs404831 -Node: MMIX-Pseudos405856 -Ref: MMIX-loc405997 -Ref: MMIX-local407077 -Ref: MMIX-is407609 -Ref: MMIX-greg407880 -Ref: GREG-base408799 -Ref: MMIX-byte410116 -Ref: MMIX-constants410587 -Ref: MMIX-prefix411233 -Ref: MMIX-spec411607 -Node: MMIX-mmixal411941 -Node: MSP430-Dependent415438 -Node: MSP430 Options415904 -Node: MSP430 Syntax416190 -Node: MSP430-Macros416506 -Node: MSP430-Chars417237 -Node: MSP430-Regs417550 -Node: MSP430-Ext418110 -Node: MSP430 Floating Point419931 -Node: MSP430 Directives420155 -Node: MSP430 Opcodes420946 -Node: MSP430 Profiling Capability421341 -Node: PDP-11-Dependent423670 -Node: PDP-11-Options424059 -Node: PDP-11-Pseudos429130 -Node: PDP-11-Syntax429475 -Node: PDP-11-Mnemonics430226 -Node: PDP-11-Synthetic430528 -Node: PJ-Dependent430746 -Node: PJ Options430971 -Node: PPC-Dependent431248 -Node: PowerPC-Opts431535 -Node: PowerPC-Pseudo433610 -Node: SH-Dependent434209 -Node: SH Options434621 -Node: SH Syntax435549 -Node: SH-Chars435822 -Node: SH-Regs436116 -Node: SH-Addressing436730 -Node: SH Floating Point437639 -Node: SH Directives438733 -Node: SH Opcodes439103 -Node: SH64-Dependent443425 -Node: SH64 Options443788 -Node: SH64 Syntax445505 -Node: SH64-Chars445788 -Node: SH64-Regs446088 -Node: SH64-Addressing447184 -Node: SH64 Directives448367 -Node: SH64 Opcodes449477 -Node: Sparc-Dependent450193 -Node: Sparc-Opts450578 -Node: Sparc-Aligned-Data452835 -Node: Sparc-Float453690 -Node: Sparc-Directives453891 -Node: TIC54X-Dependent455851 -Node: TIC54X-Opts456577 -Node: TIC54X-Block457620 -Node: TIC54X-Env457980 -Node: TIC54X-Constants458328 -Node: TIC54X-Subsyms458730 -Node: TIC54X-Locals460639 -Node: TIC54X-Builtins461383 -Node: TIC54X-Ext463854 -Node: TIC54X-Directives464425 -Node: TIC54X-Macros475327 -Node: TIC54X-MMRegs477437 -Node: Z80-Dependent477653 -Node: Z80 Options478041 -Node: Z80 Syntax479464 -Node: Z80-Chars480136 -Node: Z80-Regs480669 -Node: Z80-Case481021 -Node: Z80 Floating Point481466 -Node: Z80 Directives481660 -Node: Z80 Opcodes483285 -Node: Z8000-Dependent484627 -Node: Z8000 Options485588 -Node: Z8000 Syntax485805 -Node: Z8000-Chars486095 -Node: Z8000-Regs486328 -Node: Z8000-Addressing487118 -Node: Z8000 Directives488235 -Node: Z8000 Opcodes489844 -Node: Vax-Dependent499786 -Node: VAX-Opts500303 -Node: VAX-float504038 -Node: VAX-directives504670 -Node: VAX-opcodes505531 -Node: VAX-branch505920 -Node: VAX-operands508427 -Node: VAX-no509190 -Node: V850-Dependent509427 -Node: V850 Options509825 -Node: V850 Syntax512214 -Node: V850-Chars512454 -Node: V850-Regs512619 -Node: V850 Floating Point514187 -Node: V850 Directives514393 -Node: V850 Opcodes515536 -Node: Xtensa-Dependent521428 -Node: Xtensa Options522157 -Node: Xtensa Syntax524928 -Node: Xtensa Opcodes526817 -Node: Xtensa Registers528611 -Node: Xtensa Optimizations529244 -Node: Density Instructions529696 -Node: Xtensa Automatic Alignment530798 -Node: Xtensa Relaxation533544 -Node: Xtensa Branch Relaxation534452 -Node: Xtensa Call Relaxation535824 -Node: Xtensa Immediate Relaxation537610 -Node: Xtensa Directives540184 -Node: Schedule Directive541892 -Node: Longcalls Directive542232 -Node: Transform Directive542776 -Node: Literal Directive543518 -Node: Literal Position Directive545303 -Node: Literal Prefix Directive547002 -Node: Absolute Literals Directive549165 -Node: Reporting Bugs550472 -Node: Bug Criteria551196 -Node: Bug Reporting551961 -Node: Acknowledgements558594 -Ref: Acknowledgements-Footnote-1563492 -Node: GNU Free Documentation License563518 -Node: Index583245 +Node: Top874 +Node: Overview1791 +Node: Manual28283 +Node: GNU Assembler29227 +Node: Object Formats30398 +Node: Command Line30850 +Node: Input Files31937 +Node: Object33918 +Node: Errors34814 +Node: Invoking36009 +Node: a37958 +Node: alternate39730 +Node: D39902 +Node: f40135 +Node: I40643 +Node: K41187 +Node: L41490 +Node: listing42327 +Node: M43919 +Node: MD48320 +Node: o48746 +Node: R49201 +Node: statistics50231 +Node: traditional-format50638 +Node: v51111 +Node: W51386 +Node: Z52293 +Node: Syntax52815 +Node: Preprocessing53406 +Node: Whitespace54969 +Node: Comments55365 +Node: Symbol Intro57518 +Node: Statements58208 +Node: Constants60124 +Node: Characters60755 +Node: Strings61257 +Node: Chars63423 +Node: Numbers64177 +Node: Integers64717 +Node: Bignums65373 +Node: Flonums65729 +Node: Sections67476 +Node: Secs Background67854 +Node: Ld Sections72893 +Node: As Sections75277 +Node: Sub-Sections76187 +Node: bss79334 +Node: Symbols80284 +Node: Labels80932 +Node: Setting Symbols81663 +Node: Symbol Names82159 +Node: Dot86524 +Node: Symbol Attributes86971 +Node: Symbol Value87708 +Node: Symbol Type88753 +Node: a.out Symbols89141 +Node: Symbol Desc89403 +Node: Symbol Other89698 +Node: COFF Symbols89867 +Node: SOM Symbols90540 +Node: Expressions90982 +Node: Empty Exprs91731 +Node: Integer Exprs92078 +Node: Arguments92473 +Node: Operators93579 +Node: Prefix Ops93914 +Node: Infix Ops94242 +Node: Pseudo Ops96632 +Node: Abort101827 +Node: ABORT102232 +Node: Align102419 +Node: Ascii104701 +Node: Asciz105010 +Node: Balign105255 +Node: Byte107118 +Node: Comm107356 +Node: CFI directives108730 +Node: LNS directives111082 +Node: Data113159 +Node: Def113486 +Node: Desc113718 +Node: Dim114218 +Node: Double114475 +Node: Eject114813 +Node: Else114988 +Node: Elseif115284 +Node: End115574 +Node: Endef115789 +Node: Endfunc115966 +Node: Endif116141 +Node: Equ116402 +Node: Equiv116911 +Node: Eqv117467 +Node: Err117831 +Node: Error118142 +Node: Exitm118587 +Node: Extern118756 +Node: Fail119017 +Node: File119462 +Node: Fill119939 +Node: Float120903 +Node: Func121245 +Node: Global121835 +Node: Hidden122585 +Node: hword123164 +Node: Ident123492 +Node: If124066 +Node: Incbin127125 +Node: Include127820 +Node: Int128371 +Node: Internal128752 +Node: Irp129400 +Node: Irpc130297 +Node: Lcomm131214 +Node: Lflags131962 +Node: Line132156 +Node: Linkonce133075 +Node: Ln134304 +Node: MRI134465 +Node: List134803 +Node: Long135411 +Node: Macro135597 +Node: Altmacro140160 +Node: Noaltmacro141490 +Node: Nolist141658 +Node: Octa142088 +Node: Org142422 +Node: P2align143705 +Node: Previous145633 +Node: PopSection146327 +Node: Print146835 +Node: Protected147064 +Node: Psize147711 +Node: Purgem148395 +Node: PushSection148616 +Node: Quad149173 +Node: Rept149628 +Node: Sbttl150041 +Node: Scl150406 +Node: Section150747 +Node: Set155887 +Node: Short156524 +Node: Single156844 +Node: Size157189 +Node: Sleb128157861 +Node: Skip158183 +Node: Space158505 +Node: Stab159144 +Node: String161146 +Node: Struct161572 +Node: SubSection162295 +Node: Symver162856 +Node: Tag165247 +Node: Text165627 +Node: Title165946 +Node: Type166325 +Node: Uleb128167402 +Node: Val167726 +Node: Version167976 +Node: VTableEntry168251 +Node: VTableInherit168541 +Node: Warning168987 +Node: Weak169221 +Node: Weakref169890 +Node: Word170855 +Node: Deprecated172701 +Node: Machine Dependencies172936 +Node: Alpha-Dependent175700 +Node: Alpha Notes176114 +Node: Alpha Options176395 +Node: Alpha Syntax178593 +Node: Alpha-Chars179062 +Node: Alpha-Regs179293 +Node: Alpha-Relocs179680 +Node: Alpha Floating Point185938 +Node: Alpha Directives186160 +Node: Alpha Opcodes191683 +Node: ARC-Dependent191978 +Node: ARC Options192361 +Node: ARC Syntax193430 +Node: ARC-Chars193662 +Node: ARC-Regs193794 +Node: ARC Floating Point193918 +Node: ARC Directives194229 +Node: ARC Opcodes200200 +Node: ARM-Dependent200426 +Node: ARM Options200853 +Node: ARM Syntax206647 +Node: ARM-Chars206879 +Node: ARM-Regs207403 +Node: ARM Floating Point207588 +Node: ARM Directives207787 +Node: ARM Opcodes214151 +Node: ARM Mapping Symbols216239 +Node: BFIN-Dependent217018 +Node: BFIN Syntax217272 +Node: BFIN Directives222969 +Node: CRIS-Dependent223376 +Node: CRIS-Opts223722 +Ref: march-option225340 +Node: CRIS-Expand227157 +Node: CRIS-Symbols228340 +Node: CRIS-Syntax229509 +Node: CRIS-Chars229845 +Node: CRIS-Pic230396 +Ref: crispic230592 +Node: CRIS-Regs234132 +Node: CRIS-Pseudos234549 +Ref: crisnous235325 +Node: D10V-Dependent236607 +Node: D10V-Opts236958 +Node: D10V-Syntax237921 +Node: D10V-Size238450 +Node: D10V-Subs239423 +Node: D10V-Chars240458 +Node: D10V-Regs242062 +Node: D10V-Addressing243107 +Node: D10V-Word243793 +Node: D10V-Float244308 +Node: D10V-Opcodes244619 +Node: D30V-Dependent245012 +Node: D30V-Opts245365 +Node: D30V-Syntax246040 +Node: D30V-Size246572 +Node: D30V-Subs247543 +Node: D30V-Chars248578 +Node: D30V-Guarded250876 +Node: D30V-Regs251556 +Node: D30V-Addressing252695 +Node: D30V-Float253363 +Node: D30V-Opcodes253674 +Node: H8/300-Dependent254067 +Node: H8/300 Options254477 +Node: H8/300 Syntax254686 +Node: H8/300-Chars254985 +Node: H8/300-Regs255282 +Node: H8/300-Addressing256199 +Node: H8/300 Floating Point257238 +Node: H8/300 Directives257563 +Node: H8/300 Opcodes258689 +Node: HPPA-Dependent267009 +Node: HPPA Notes267442 +Node: HPPA Options268198 +Node: HPPA Syntax268391 +Node: HPPA Floating Point269659 +Node: HPPA Directives269863 +Node: HPPA Opcodes278547 +Node: ESA/390-Dependent278804 +Node: ESA/390 Notes279264 +Node: ESA/390 Options280055 +Node: ESA/390 Syntax280265 +Node: ESA/390 Floating Point282438 +Node: ESA/390 Directives282717 +Node: ESA/390 Opcodes286006 +Node: i386-Dependent286268 +Node: i386-Options287336 +Node: i386-Syntax288526 +Node: i386-Mnemonics290940 +Node: i386-Regs293405 +Node: i386-Prefixes295450 +Node: i386-Memory298210 +Node: i386-Jumps301147 +Node: i386-Float302268 +Node: i386-SIMD304097 +Node: i386-16bit305206 +Node: i386-Bugs307244 +Node: i386-Arch307998 +Node: i386-Notes310179 +Node: i860-Dependent311037 +Node: Notes-i860311433 +Node: Options-i860312338 +Node: Directives-i860313701 +Node: Opcodes for i860314770 +Node: i960-Dependent316937 +Node: Options-i960317340 +Node: Floating Point-i960321224 +Node: Directives-i960321492 +Node: Opcodes for i960323526 +Node: callj-i960324143 +Node: Compare-and-branch-i960324632 +Node: IA-64-Dependent326536 +Node: IA-64 Options326837 +Node: IA-64 Syntax329997 +Node: IA-64-Chars330360 +Node: IA-64-Regs330590 +Node: IA-64-Bits331516 +Node: IA-64 Opcodes332025 +Node: IP2K-Dependent332297 +Node: IP2K-Opts332525 +Node: M32C-Dependent333005 +Node: M32C-Opts333529 +Node: M32C-Modifiers333813 +Node: M32R-Dependent335600 +Node: M32R-Opts335921 +Node: M32R-Directives340087 +Node: M32R-Warnings344062 +Node: M68K-Dependent347068 +Node: M68K-Opts347535 +Node: M68K-Syntax354914 +Node: M68K-Moto-Syntax356753 +Node: M68K-Float359342 +Node: M68K-Directives359862 +Node: M68K-opcodes361188 +Node: M68K-Branch361414 +Node: M68K-Chars365612 +Node: M68HC11-Dependent366025 +Node: M68HC11-Opts366556 +Node: M68HC11-Syntax370372 +Node: M68HC11-Modifiers372586 +Node: M68HC11-Directives374414 +Node: M68HC11-Float375790 +Node: M68HC11-opcodes376318 +Node: M68HC11-Branch376500 +Node: MIPS-Dependent378947 +Node: MIPS Opts380037 +Node: MIPS Object387364 +Node: MIPS Stabs388930 +Node: MIPS symbol sizes389652 +Node: MIPS ISA391321 +Node: MIPS autoextend392470 +Node: MIPS insn393200 +Node: MIPS option stack393697 +Node: MIPS ASE instruction generation overrides394471 +Node: MMIX-Dependent395688 +Node: MMIX-Opts396068 +Node: MMIX-Expand399672 +Node: MMIX-Syntax400987 +Ref: mmixsite401344 +Node: MMIX-Chars402185 +Node: MMIX-Symbols402839 +Node: MMIX-Regs404907 +Node: MMIX-Pseudos405932 +Ref: MMIX-loc406073 +Ref: MMIX-local407153 +Ref: MMIX-is407685 +Ref: MMIX-greg407956 +Ref: GREG-base408875 +Ref: MMIX-byte410192 +Ref: MMIX-constants410663 +Ref: MMIX-prefix411309 +Ref: MMIX-spec411683 +Node: MMIX-mmixal412017 +Node: MSP430-Dependent415514 +Node: MSP430 Options415980 +Node: MSP430 Syntax416266 +Node: MSP430-Macros416582 +Node: MSP430-Chars417313 +Node: MSP430-Regs417626 +Node: MSP430-Ext418186 +Node: MSP430 Floating Point420007 +Node: MSP430 Directives420231 +Node: MSP430 Opcodes421022 +Node: MSP430 Profiling Capability421417 +Node: PDP-11-Dependent423746 +Node: PDP-11-Options424135 +Node: PDP-11-Pseudos429206 +Node: PDP-11-Syntax429551 +Node: PDP-11-Mnemonics430302 +Node: PDP-11-Synthetic430604 +Node: PJ-Dependent430822 +Node: PJ Options431047 +Node: PPC-Dependent431324 +Node: PowerPC-Opts431611 +Node: PowerPC-Pseudo433686 +Node: SH-Dependent434285 +Node: SH Options434697 +Node: SH Syntax435625 +Node: SH-Chars435898 +Node: SH-Regs436192 +Node: SH-Addressing436806 +Node: SH Floating Point437715 +Node: SH Directives438809 +Node: SH Opcodes439179 +Node: SH64-Dependent443501 +Node: SH64 Options443864 +Node: SH64 Syntax445581 +Node: SH64-Chars445864 +Node: SH64-Regs446164 +Node: SH64-Addressing447260 +Node: SH64 Directives448443 +Node: SH64 Opcodes449553 +Node: Sparc-Dependent450269 +Node: Sparc-Opts450654 +Node: Sparc-Aligned-Data452911 +Node: Sparc-Float453766 +Node: Sparc-Directives453967 +Node: TIC54X-Dependent455927 +Node: TIC54X-Opts456653 +Node: TIC54X-Block457696 +Node: TIC54X-Env458056 +Node: TIC54X-Constants458404 +Node: TIC54X-Subsyms458806 +Node: TIC54X-Locals460715 +Node: TIC54X-Builtins461459 +Node: TIC54X-Ext463930 +Node: TIC54X-Directives464501 +Node: TIC54X-Macros475403 +Node: TIC54X-MMRegs477513 +Node: Z80-Dependent477729 +Node: Z80 Options478117 +Node: Z80 Syntax479540 +Node: Z80-Chars480212 +Node: Z80-Regs480745 +Node: Z80-Case481097 +Node: Z80 Floating Point481542 +Node: Z80 Directives481736 +Node: Z80 Opcodes483361 +Node: Z8000-Dependent484703 +Node: Z8000 Options485664 +Node: Z8000 Syntax485881 +Node: Z8000-Chars486171 +Node: Z8000-Regs486404 +Node: Z8000-Addressing487194 +Node: Z8000 Directives488311 +Node: Z8000 Opcodes489920 +Node: Vax-Dependent499862 +Node: VAX-Opts500379 +Node: VAX-float504114 +Node: VAX-directives504746 +Node: VAX-opcodes505607 +Node: VAX-branch505996 +Node: VAX-operands508503 +Node: VAX-no509266 +Node: V850-Dependent509503 +Node: V850 Options509901 +Node: V850 Syntax512290 +Node: V850-Chars512530 +Node: V850-Regs512695 +Node: V850 Floating Point514263 +Node: V850 Directives514469 +Node: V850 Opcodes515612 +Node: Xtensa-Dependent521504 +Node: Xtensa Options522233 +Node: Xtensa Syntax525004 +Node: Xtensa Opcodes526893 +Node: Xtensa Registers528687 +Node: Xtensa Optimizations529320 +Node: Density Instructions529772 +Node: Xtensa Automatic Alignment530874 +Node: Xtensa Relaxation533620 +Node: Xtensa Branch Relaxation534528 +Node: Xtensa Call Relaxation535900 +Node: Xtensa Immediate Relaxation537686 +Node: Xtensa Directives540260 +Node: Schedule Directive541968 +Node: Longcalls Directive542308 +Node: Transform Directive542852 +Node: Literal Directive543594 +Node: Literal Position Directive545379 +Node: Literal Prefix Directive547078 +Node: Absolute Literals Directive549241 +Node: Reporting Bugs550548 +Node: Bug Criteria551272 +Node: Bug Reporting552037 +Node: Acknowledgements558670 +Ref: Acknowledgements-Footnote-1563568 +Node: GNU Free Documentation License563594 +Node: Index583321  End Tag Table diff --git a/legacy/gcc/gcc/ginclude/stdarg.h b/legacy/gcc/gcc/ginclude/stdarg.h index 3304fce..3964074 100644 --- a/legacy/gcc/gcc/ginclude/stdarg.h +++ b/legacy/gcc/gcc/ginclude/stdarg.h @@ -67,7 +67,7 @@ #ifndef __GNUC_VA_LIST #define __GNUC_VA_LIST -#if defined(__svr4__) || defined(_AIX) || defined(_M_UNIX) || defined(__NetBSD__) || defined(__BEOS__) +#if defined(__svr4__) || defined(_AIX) || defined(_M_UNIX) || defined(__NetBSD__) || defined(__BEOS__) || defined(__HAIKU__) typedef char *__gnuc_va_list; #else typedef void *__gnuc_va_list; @@ -143,7 +143,7 @@ /* Define va_list, if desired, from __gnuc_va_list. */ /* We deliberately do not define va_list when called from stdio.h, because ANSI C says that stdio.h is not supposed to define - va_list. stdio.h needs to have access to that data type, + va_list. stdio.h needs to have access to that data type, but must not use that name. It should use the name __gnuc_va_list, which is safe because it is reserved for the implementation. */ diff --git a/legacy/gcc/gcc/ginclude/stdbool.h b/legacy/gcc/gcc/ginclude/stdbool.h index 3afe7d4..e19bcb1 100644 --- a/legacy/gcc/gcc/ginclude/stdbool.h +++ b/legacy/gcc/gcc/ginclude/stdbool.h @@ -1,8 +1,8 @@ /* stdbool.h for GNU. */ #ifndef __STDBOOL_H__ #define __STDBOOL_H__ 1 -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) typedef unsigned char _Bool; #define bool _Bool #define false 0 diff --git a/legacy/gcc/gcc/ginclude/stddef.h b/legacy/gcc/gcc/ginclude/stddef.h index 7ac9f13..67ba1e4 100644 --- a/legacy/gcc/gcc/ginclude/stddef.h +++ b/legacy/gcc/gcc/ginclude/stddef.h @@ -168,9 +168,9 @@ #endif #if !(defined (__GNUG__) && defined (size_t)) typedef __SIZE_TYPE__ size_t; -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) typedef long ssize_t; -#endif /* __BEOS__ */ +#endif /* __BEOS__ || __HAIKU__ */ #endif /* !(defined (__GNUG__) && defined (size_t)) */ #endif /* __size_t */ #endif /* _SIZET_ */ @@ -230,7 +230,7 @@ symbols in the _FOO_T_ family, stays defined even after its corresponding type is defined). If we define wchar_t, then we must undef _WCHAR_T_; for BSD/386 1.1 (and perhaps others), if - we undef _WCHAR_T_, then we must also define rune_t, since + we undef _WCHAR_T_, then we must also define rune_t, since headers like runetype.h assume that if machine/ansi.h is included, and _BSD_WCHAR_T_ is not defined, then rune_t is available. machine/ansi.h says, "Note that _WCHAR_T_ and _RUNE_T_ must be of diff --git a/legacy/gcc/gcc/ginclude/varargs.h b/legacy/gcc/gcc/ginclude/varargs.h index 57aa325..19bb637 100644 --- a/legacy/gcc/gcc/ginclude/varargs.h +++ b/legacy/gcc/gcc/ginclude/varargs.h @@ -68,7 +68,7 @@ #ifdef _ANSI_STDARG_H_ #define _VA_LIST_ #endif -#define _ANSI_STDARG_H_ +#define _ANSI_STDARG_H_ #undef va_alist #undef va_dcl @@ -101,7 +101,7 @@ #ifndef __GNUC_VA_LIST #define __GNUC_VA_LIST -#if defined(__svr4__) || defined(_AIX) || defined(_M_UNIX) || defined(__BEOS__) +#if defined(__svr4__) || defined(_AIX) || defined(_M_UNIX) || defined(__BEOS__) || defined(__HAIKU__) typedef char *__gnuc_va_list; #else typedef void *__gnuc_va_list; diff --git a/legacy/gcc/libstdc++/std/bastring.h b/legacy/gcc/libstdc++/std/bastring.h index cad256c..9749c3c 100644 --- a/legacy/gcc/libstdc++/std/bastring.h +++ b/legacy/gcc/libstdc++/std/bastring.h @@ -61,12 +61,12 @@ #endif -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) // Needed for atomic_add(): typedef long int32; typedef volatile long vint32; extern "C" int32 atomic_add(vint32* value, int32 addvalue); -#endif /* __BEOS__ */ +#endif /* __BEOS__ || __HAIKU__ */ template , class Allocator = alloc > @@ -79,7 +79,7 @@ charT* data () { return reinterpret_cast(this + 1); } charT& operator[] (size_t s) { return data () [s]; } -#ifdef __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) charT* grab () { if (selfish) return clone (); atomic_add((vint32*) &ref, 1); return data (); } void release() { if (atomic_add((int32*) &ref, -1) == 1) delete this; } #else @@ -89,8 +89,8 @@ { size_t __val; // This opcode exists as a .byte instead of as a mnemonic for the - // benefit of SCO OpenServer 5. The system assembler (which is - // essentially required on this target) can't assemble xaddl in + // benefit of SCO OpenServer 5. The system assembler (which is + // essentially required on this target) can't assemble xaddl in //COFF mode. asm (".byte 0xf0, 0x0f, 0xc1, 0x02" // lock; xaddl %eax, (%edx) : "=a" (__val) @@ -119,7 +119,7 @@ #else void release () { if (--ref == 0) delete this; } #endif -#endif /* __BEOS__ */ +#endif /* __BEOS__ || __HAIKU__ */ inline static void * operator new (size_t, size_t); inline static void operator delete (void *); inline static Rep* create (size_t); @@ -221,7 +221,7 @@ void push_back(charT __c) { append(1, __c); } - + basic_string& assign (const basic_string& str, size_type pos = 0, size_type n = npos) { return replace (0, npos, str, pos, n); } diff --git a/legacy/gcc/libstdc++/stl/defalloc.h b/legacy/gcc/libstdc++/stl/defalloc.h index 40d6579..3eb4c7a 100644 --- a/legacy/gcc/libstdc++/stl/defalloc.h +++ b/legacy/gcc/libstdc++/stl/defalloc.h @@ -18,7 +18,7 @@ // This file WILL BE REMOVED in a future release. // // DO NOT USE THIS FILE unless you have an old container implementation -// that requires an allocator with the HP-style interface. +// that requires an allocator with the HP-style interface. // // Standard-conforming allocators have a very different interface. The // standard default allocator is declared in the header . @@ -30,7 +30,7 @@ #include #include #include -#if __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) # include #else #include @@ -43,10 +43,10 @@ set_new_handler(0); T* tmp = (T*)(::operator new((size_t)(size * sizeof(T)))); if (tmp == 0) { -#if __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) fprintf(stderr, "out of memory\n"); #else - cerr << "out of memory" << endl; + cerr << "out of memory" << endl; #endif exit(1); } @@ -69,19 +69,19 @@ typedef const T& const_reference; typedef size_t size_type; typedef ptrdiff_t difference_type; - pointer allocate(size_type n) { + pointer allocate(size_type n) { return ::allocate((difference_type)n, (pointer)0); } void deallocate(pointer p) { ::deallocate(p); } pointer address(reference x) { return (pointer)&x; } - const_pointer const_address(const_reference x) { - return (const_pointer)&x; + const_pointer const_address(const_reference x) { + return (const_pointer)&x; } - size_type init_page_size() { - return max(size_type(1), size_type(4096/sizeof(T))); + size_type init_page_size() { + return max(size_type(1), size_type(4096/sizeof(T))); } - size_type max_size() const { - return max(size_type(1), size_type(UINT_MAX/sizeof(T))); + size_type max_size() const { + return max(size_type(1), size_type(UINT_MAX/sizeof(T))); } }; diff --git a/legacy/gcc/libstdc++/stl/stl_alloc.h b/legacy/gcc/libstdc++/stl/stl_alloc.h index f5d7e3f..324ea90 100644 --- a/legacy/gcc/libstdc++/stl/stl_alloc.h +++ b/legacy/gcc/libstdc++/stl/stl_alloc.h @@ -42,7 +42,7 @@ # include # define __THROW_BAD_ALLOC throw bad_alloc() #elif !defined(__THROW_BAD_ALLOC) -#if __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) # include # define __THROW_BAD_ALLOC fprintf(stderr, "out of memory\n"); exit(1) #else @@ -329,7 +329,7 @@ // instead of enum { x = N }, but few compilers accept the former. # ifndef __SUNPRO_CC enum {_ALIGN = 8}; -# if defined __BEOS__ +# if defined __BEOS__ || defined(__HAIKU__) enum {_MAX_BYTES = 0}; # else enum {_MAX_BYTES = 128}; @@ -710,7 +710,7 @@ __default_alloc_template<__threads, __inst>::_Obj* __VOLATILE __default_alloc_template<__threads, __inst> ::_S_free_list[ _NFREELISTS -#if defined __BEOS__ +#if defined(__BEOS__) || defined(__HAIKU__) ] = { }; #else ] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }; diff --git a/legacy/gcc/libstdc++/stl/stl_config.h b/legacy/gcc/libstdc++/stl/stl_config.h index 872813f..2e29bca 100644 --- a/legacy/gcc/libstdc++/stl/stl_config.h +++ b/legacy/gcc/libstdc++/stl/stl_config.h @@ -291,7 +291,7 @@ !defined(__STL_NON_TYPE_TMPL_PARAM_BUG) && \ !defined(__STL_LIMITED_DEFAULT_TEMPLATES) && \ !defined(__STL_USE_SGI_ALLOCATORS) || \ - defined(__BEOS__) + (defined(__BEOS__) || defined(__HAIKU__)) # define __STL_USE_STD_ALLOCATORS # endif diff --git a/legacy/gcc/gcc/config/i386/haiku.h b/legacy/gcc/gcc/config/i386/haiku.h index 2cf38e6..ecc5f55 100644 --- a/legacy/gcc/gcc/config/i386/haiku.h +++ b/legacy/gcc/gcc/config/i386/haiku.h @@ -144,21 +144,21 @@ #undef SIZE_TYPE #define SIZE_TYPE "long unsigned int" - + #undef PTRDIFF_TYPE #define PTRDIFF_TYPE "long int" - + #undef WCHAR_TYPE #define WCHAR_TYPE "short unsigned int" - + #undef WCHAR_UNSIGNED #define WCHAR_UNSIGNED 1 #undef WCHAR_TYPE_SIZE #define WCHAR_TYPE_SIZE 16 - + #undef CPP_PREDEFINES -#define CPP_PREDEFINES "-D__ELF__ -D__HAIKU__ -D__BEOS__ -D__INTEL__ -D_X86_=1 \ +#define CPP_PREDEFINES "-D__ELF__ -D__HAIKU__ -D__INTEL__ -D_X86_=1 \ -D__stdcall=__attribute__((__stdcall__)) \ -D__cdecl=__attribute__((__cdecl__)) \ -D__declspec(x)=__attribute__((x)) \ @@ -195,7 +195,7 @@ #define LIB_SPEC "-lroot" /* gcc runtime lib is built into libroot.so on Haiku */ -/* ??? This is gonna be lovely when the next release of gcc has +/* ??? This is gonna be lovely when the next release of gcc has some new symbol in, so that links start failing. */ #undef LIBGCC_SPEC #define LIBGCC_SPEC "" @@ -269,7 +269,7 @@ ((DECL_MACHINE_ATTRIBUTES (DECL) != NULL_TREE) \ || (TREE_CODE (DECL) == VAR_DECL && DECL_VIRTUAL_P (DECL))) -/* Used only here locally. If the decl has been exported, emit the +/* Used only here locally. If the decl has been exported, emit the necessary assembly. */ #define ASM_EXPORT_DECL(FILE, NAME, DECL) \ @@ -490,7 +490,7 @@ /* [bonefish]: Review! */ #undef ASM_IDENTIFY_GCC -#define ASM_IDENTIFY_GCC(FILE) +#define ASM_IDENTIFY_GCC(FILE) /* required to compile winnt.c */ /* [bonefish]: @@ -520,7 +520,7 @@ #define EXTRA_SECTIONS in_const, in_ctors, in_dtors, in_drectve /* [zooey]: - '#pragma interface' seems to trigger a bug which causes + '#pragma interface' seems to trigger a bug which causes global constructors and destructors (keyed to the first function in a translation unit) not being generated, causing the link to fail. So we ignore '#pragma interface' for Haiku. -- gitore 0.2.2