diff options
Diffstat (limited to 'contrib')
-rw-r--r-- | contrib/gcc/ChangeLog | 87 | ||||
-rw-r--r-- | contrib/gcc/cccp.c | 2 | ||||
-rw-r--r-- | contrib/gcc/config/i386/sol2gas.h | 6 | ||||
-rw-r--r-- | contrib/gcc/config/sparc/sparc.md | 4 | ||||
-rw-r--r-- | contrib/gcc/configure.in | 11 | ||||
-rw-r--r-- | contrib/gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | contrib/gcc/cp/decl2.c | 10 | ||||
-rw-r--r-- | contrib/gcc/cppinit.c | 2 | ||||
-rw-r--r-- | contrib/gcc/cse.c | 61 | ||||
-rw-r--r-- | contrib/gcc/fold-const.c | 2 | ||||
-rw-r--r-- | contrib/gcc/invoke.texi | 39 | ||||
-rw-r--r-- | contrib/gcc/loop.c | 10 | ||||
-rw-r--r-- | contrib/gcc/stmt.c | 12 | ||||
-rw-r--r-- | contrib/libio/ChangeLog | 11 | ||||
-rw-r--r-- | contrib/libio/filebuf.cc | 16 | ||||
-rw-r--r-- | contrib/libio/stream.h | 4 | ||||
-rw-r--r-- | contrib/libio/strstream.h | 6 | ||||
-rw-r--r-- | contrib/libstdc++/ChangeLog | 6 | ||||
-rw-r--r-- | contrib/libstdc++/std/bastring.cc | 10 | ||||
-rw-r--r-- | contrib/libstdc++/std/bastring.h | 8 | ||||
-rw-r--r-- | contrib/libstdc++/stl/ChangeLog | 5 | ||||
-rw-r--r-- | contrib/libstdc++/stl/bitset | 3 |
22 files changed, 223 insertions, 97 deletions
diff --git a/contrib/gcc/ChangeLog b/contrib/gcc/ChangeLog index 41cfebf..b6b2b55 100644 --- a/contrib/gcc/ChangeLog +++ b/contrib/gcc/ChangeLog @@ -1,3 +1,90 @@ +Thu Jan 20 10:02:07 2000 Richard Henderson <rth@cygnus.com> + + 2000-01-03 Anthony Green <green@cygnus.com> + * config/i386/i386.md (builtin_setjmp_receiver): New pattern. + Restore the pic register if required. + +Fri Jan 7 14:40:05 2000 Richard Henderson <rth@cygnus.com> + + Thu Oct 28 18:06:50 1999 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> + * stmt.c (expand_value_return): Correctly convert VAL when promoting + function return. + +Tue Jan 4 02:22:27 2000 Jeffrey A Law (law@cygnus.com) + + Mon Oct 18 18:50:51 1999 Andreas Schwab <schwab@suse.de> + * config/m68k/m68k.h (INITIAL_FRAME_POINTER_OFFSET): Add one word + if the pic register is used. + + Sat Sep 25 13:11:07 1999 Jeffrey A Law (law@cygnus.com) + * cse.c: Update comments. + (cse_insn): When converting a conditional/computed jump into + an unconditional jump, always make sure a BARRIER immediately + follows the converted jump. Do not delete unreachable code. + (cse_basic_block): Do not delete unreachable code. + * toplev.c (rest_of_compilation): Move call to + delete_trivially_dead_insns after the conditional call to + jump_optimize. + + +Wed Dec 29 22:47:43 1999 Jeffrey A Law (law@cygnus.com) + + 1999-12-12 Stephen L Moshier <moshier@mediaone.net> + * loop.c (load_mems): Don't hoist written floating point mem + if -ffloat-store. + + * cppinit.c (is_idchar): Only use special initialization for + gcc-2.8 and later versions of the compiler. + + Wed Oct 27 01:42:26 1999 Scott Christley <scottc@net-community.com> + * sparc.md (call): Don't bound structure return size to 0xfff. + +Mon Dec 27 07:32:59 1999 Jeffrey A Law (law@cygnus.com) + + Fri Sep 3 10:16:37 HST 1999 Glen Nakamura <glen.nakamura@usa.net> + * cccp.c (rescan): Fixed obp pointer handling around call to + check_expand subroutine. + + Thu Sep 16 00:46:35 1999 Geoff Keating <geoffk@cygnus.com> + * loop.c (basic_induction_var): A non-integer variable which is + being set by a paradoxical subreg is probably not a biv. + + 1999-08-31 12:20 -0700 Zack Weinberg <zack@bitmover.com> + * loop.c (check_dbra_loop): Check bl->biv->add_val is a + CONST_INT before using its INTVAL. + + Tue Nov 2 15:27:31 1999 Alexandre Oliva <oliva@lsd.ic.unicamp.br> + * configure.in (m68k-hp-hpux*, xm_alloca.h): The underscore should + have been an hyphen, fixed. + * configure: Rebuilt. + +Thu Dec 23 11:59:56 1999 Jeffrey A Law (law@cygnus.com) + + 1999-12-23 Martin v. Löwis <loewis@informatik.hu-berlin.de> + * fold-const.c (operand_equal_p): Use memcmp to compare string + constants. + Suggested by D. J. Bernstein + + Thu Dec 16 02:26:11 1999 Jeffrey A Law (law@cygnus.com) + * h8300.md (HImode preinc peephole): Fix typo. + + 1999-12-14 Bernd Schmidt <bernds@cygnus.co.uk> + * loop.c (check_dbra_loop): Can't reverse a biv that has + maybe_multiple set. + +1999-12-07 Martin v. Löwis <loewis@informatik.hu-berlin.de> + + * invoke.texi (C Dialect Options): Remove -flang-c9x, add -std + documentation. + +Sun Oct 31 22:32:17 1999 Alexandre Oliva <oliva@lsd.ic.unicamp.br> + + * config/i386/sol2gas.h: I had installed the wrong version of Sept + 22's patch in the release branch. Fixed. + * configure.in: Likewise. + * configure: Rebuilt. + Reported by Jason Beardsley <jbeardsley@origin.ea.com> + Sun Oct 24 23:54:10 PDT 1999 Jeff Law (law@cygnus.com) * gcc-2.95.2 Released. diff --git a/contrib/gcc/cccp.c b/contrib/gcc/cccp.c index 6e2d519..473ff45 100644 --- a/contrib/gcc/cccp.c +++ b/contrib/gcc/cccp.c @@ -3299,7 +3299,9 @@ randomchar: #endif if (output_marks) { + op->bufp = obp; check_expand (op, limit - ibp + 2); + obp = op->bufp; *obp++ = '\n'; *obp++ = '-'; } diff --git a/contrib/gcc/config/i386/sol2gas.h b/contrib/gcc/config/i386/sol2gas.h index 7f2c962..558183a 100644 --- a/contrib/gcc/config/i386/sol2gas.h +++ b/contrib/gcc/config/i386/sol2gas.h @@ -4,8 +4,6 @@ Copyright (C) 1999 Free Software Foundation, Inc. */ -#ifndef GAS_DOES_NOT_SUPPORT_MINUS_S -#define GAS_DOES_NOT_SUPPORT_MINUS_S 1 +#ifndef GAS_REJECTS_MINUS_S +#define GAS_REJECTS_MINUS_S 1 #endif - -#include "i386/sol2.h" diff --git a/contrib/gcc/config/sparc/sparc.md b/contrib/gcc/config/sparc/sparc.md index cb008b1..aafb7a6 100644 --- a/contrib/gcc/config/sparc/sparc.md +++ b/contrib/gcc/config/sparc/sparc.md @@ -7355,7 +7355,7 @@ gen_rtvec (3, gen_rtx_SET (VOIDmode, pc_rtx, XEXP (operands[0], 0)), - GEN_INT (INTVAL (operands[3]) & 0xfff), + operands[3], gen_rtx_CLOBBER (VOIDmode, gen_rtx_REG (Pmode, 15))))); else @@ -7387,7 +7387,7 @@ emit_call_insn (gen_rtx_PARALLEL (VOIDmode, gen_rtvec (3, gen_rtx_CALL (VOIDmode, fn_rtx, nregs_rtx), - GEN_INT (INTVAL (operands[3]) & 0xfff), + operands[3], gen_rtx_CLOBBER (VOIDmode, gen_rtx_REG (Pmode, 15))))); else diff --git a/contrib/gcc/configure.in b/contrib/gcc/configure.in index e43c157..c9e2bbf 100644 --- a/contrib/gcc/configure.in +++ b/contrib/gcc/configure.in @@ -1399,11 +1399,10 @@ changequote(,)dnl changequote([,])dnl xm_file="xm-siglist.h xm-alloca.h ${xm_file}" xm_defines="USG POSIX SMALL_ARG_MAX" + tm_file=i386/sol2.h if test x$gas = xyes; then # Only needed if gas does not support -s - tm_file=i386/sol2gas.h - else - tm_file=i386/sol2.h + tm_file="i386/sol2gas.h ${tm_file}" fi tmake_file=i386/t-sol2 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o" @@ -1689,7 +1688,7 @@ changequote([,])dnl extra_headers=math-68881.h ;; m68000-hp-hpux*) # HP 9000 series 300 - xm_file="xm_alloca.h ${xm_file}" + xm_file="xm-alloca.h ${xm_file}" xm_defines="USG NO_SYS_SIGLIST" if test x$gas = xyes then @@ -1890,7 +1889,7 @@ changequote([,])dnl extra_headers=math-68881.h ;; m68k-hp-hpux7*) # HP 9000 series 300 running HPUX version 7. - xm_file="xm_alloca.h ${xm_file}" + xm_file="xm-alloca.h ${xm_file}" xm_defines="USG NO_SYS_SIGLIST" if test x$gas = xyes then @@ -1906,7 +1905,7 @@ changequote([,])dnl float_format=m68k ;; m68k-hp-hpux*) # HP 9000 series 300 - xm_file="xm_alloca.h ${xm_file}" + xm_file="xm-alloca.h ${xm_file}" xm_defines="USG NO_SYS_SIGLIST" if test x$gas = xyes then diff --git a/contrib/gcc/cp/ChangeLog b/contrib/gcc/cp/ChangeLog index efa30ed..605bafc 100644 --- a/contrib/gcc/cp/ChangeLog +++ b/contrib/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +1999-11-01 Jason Merrill <jason@yorick.cygnus.com> + + * decl2.c (maybe_make_one_only): Always make things comdat on + ELF targets, too. + Sun Oct 24 23:54:10 PDT 1999 Jeff Law (law@cygnus.com) * gcc-2.95.2 Released. diff --git a/contrib/gcc/cp/decl2.c b/contrib/gcc/cp/decl2.c index d6fb7bf..bdeadb5 100644 --- a/contrib/gcc/cp/decl2.c +++ b/contrib/gcc/cp/decl2.c @@ -2485,9 +2485,13 @@ void maybe_make_one_only (decl) tree decl; { - /* This is not necessary on targets that support weak symbols, because - the implicit instantiations will defer to the explicit one. */ - if (! supports_one_only () || SUPPORTS_WEAK) + /* We used to say that this was not necessary on targets that support weak + symbols, because the implicit instantiations will defer to the explicit + one. However, that's not actually the case in SVR4; a strong definition + after a weak one is an error. Also, not making explicit + instantiations one_only means that we can end up with two copies of + some template instantiations. */ + if (! supports_one_only ()) return; /* We can't set DECL_COMDAT on functions, or finish_file will think diff --git a/contrib/gcc/cppinit.c b/contrib/gcc/cppinit.c index 4fb3ca8..86e0d68 100644 --- a/contrib/gcc/cppinit.c +++ b/contrib/gcc/cppinit.c @@ -210,7 +210,7 @@ enum { QUOTE = 0, BRACKET, SYSTEM, AFTER }; /* If gcc is in use (stage2/stage3) we can make these tables initialized data. */ #if defined __GNUC__ && (__GNUC__ > 2 \ - || (__GNUC__ == 2 && __GNUC_MINOR__ > 6)) + || (__GNUC__ == 2 && __GNUC_MINOR__ > 8)) /* Table to tell if a character is legal as the second or later character of a C identifier. */ U_CHAR is_idchar[256] = diff --git a/contrib/gcc/cse.c b/contrib/gcc/cse.c index 7182b74..e315610 100644 --- a/contrib/gcc/cse.c +++ b/contrib/gcc/cse.c @@ -1,5 +1,5 @@ /* Common subexpression elimination for GNU compiler. - Copyright (C) 1987, 88, 89, 92-7, 1998, 1999 Free Software Foundation, Inc. + Copyright (C) 1987, 88, 89, 92-99, 2000 Free Software Foundation, Inc. This file is part of GNU CC. @@ -42,12 +42,14 @@ Boston, MA 02111-1307, USA. */ expressions encountered with the cheapest equivalent expression. It is too complicated to keep track of the different possibilities - when control paths merge; so, at each label, we forget all that is - known and start fresh. This can be described as processing each - basic block separately. Note, however, that these are not quite - the same as the basic blocks found by a later pass and used for - data flow analysis and register packing. We do not need to start fresh - after a conditional jump instruction if there is no label there. + when control paths merge in this code; so, at each label, we forget all + that is known and start fresh. This can be described as processing each + extended basic block separately. We have a separate pass to perform + global CSE. + + Note CSE can turn a conditional or computed jump into a nop or + an unconditional jump. When this occurs we arrange to run the jump + optimizer after CSE to delete the unreachable code. We use two data structures to record the equivalent expressions: a hash table for most expressions, and several vectors together @@ -7468,7 +7470,6 @@ cse_insn (insn, libcall_insn) rtx new = emit_jump_insn_before (gen_jump (XEXP (src, 0)), insn); JUMP_LABEL (new) = XEXP (src, 0); LABEL_NUSES (XEXP (src, 0))++; - delete_insn (insn); insn = new; } else @@ -7479,42 +7480,11 @@ cse_insn (insn, libcall_insn) Until the right place is found, might as well do this here. */ INSN_CODE (insn) = -1; - /* Now that we've converted this jump to an unconditional jump, - there is dead code after it. Delete the dead code until we - reach a BARRIER, the end of the function, or a label. Do - not delete NOTEs except for NOTE_INSN_DELETED since later - phases assume these notes are retained. */ - - p = insn; - - while (NEXT_INSN (p) != 0 - && GET_CODE (NEXT_INSN (p)) != BARRIER - && GET_CODE (NEXT_INSN (p)) != CODE_LABEL) - { - /* Note, we must update P with the return value from - delete_insn, otherwise we could get an infinite loop - if NEXT_INSN (p) had INSN_DELETED_P set. */ - if (GET_CODE (NEXT_INSN (p)) != NOTE - || NOTE_LINE_NUMBER (NEXT_INSN (p)) == NOTE_INSN_DELETED) - p = PREV_INSN (delete_insn (NEXT_INSN (p))); - else - p = NEXT_INSN (p); - } - - /* If we don't have a BARRIER immediately after INSN, put one there. - Much code assumes that there are no NOTEs between a JUMP_INSN and - BARRIER. */ - - if (NEXT_INSN (insn) == 0 - || GET_CODE (NEXT_INSN (insn)) != BARRIER) - emit_barrier_before (NEXT_INSN (insn)); - - /* We might have two BARRIERs separated by notes. Delete the second - one if so. */ - - if (p != insn && NEXT_INSN (p) != 0 - && GET_CODE (NEXT_INSN (p)) == BARRIER) - delete_insn (NEXT_INSN (p)); + /* Now emit a BARRIER after the unconditional jump. Do not bother + deleting any unreachable code, let jump/flow do that. */ + if (NEXT_INSN (insn) != 0 + && GET_CODE (NEXT_INSN (insn)) != BARRIER) + emit_barrier_after (insn); cse_jumps_altered = 1; sets[i].rtl = 0; @@ -9007,9 +8977,6 @@ cse_basic_block (from, to, next_branch, around_loop) insn = NEXT_INSN (to); - if (LABEL_NUSES (to) == 0) - insn = delete_insn (to); - /* If TO was the last insn in the function, we are done. */ if (insn == 0) return 0; diff --git a/contrib/gcc/fold-const.c b/contrib/gcc/fold-const.c index 55dcf9b..cbd004e 100644 --- a/contrib/gcc/fold-const.c +++ b/contrib/gcc/fold-const.c @@ -2131,7 +2131,7 @@ operand_equal_p (arg0, arg1, only_const) case STRING_CST: return (TREE_STRING_LENGTH (arg0) == TREE_STRING_LENGTH (arg1) - && ! strncmp (TREE_STRING_POINTER (arg0), + && ! memcmp (TREE_STRING_POINTER (arg0), TREE_STRING_POINTER (arg1), TREE_STRING_LENGTH (arg0))); diff --git a/contrib/gcc/invoke.texi b/contrib/gcc/invoke.texi index 230174c..571348e 100644 --- a/contrib/gcc/invoke.texi +++ b/contrib/gcc/invoke.texi @@ -93,7 +93,7 @@ in the following sections. @item C Language Options @xref{C Dialect Options,,Options Controlling C Dialect}. @smallexample --ansi -flang-isoc9x -fallow-single-precision -fcond-mismatch -fno-asm +-ansi -fstd -fallow-single-precision -fcond-mismatch -fno-asm -fno-builtin -ffreestanding -fhosted -fsigned-bitfields -fsigned-char -funsigned-bitfields -funsigned-char -fwritable-strings -traditional -traditional-cpp -trigraphs @@ -667,14 +667,37 @@ programs that might use these names for other things. The functions @code{alloca}, @code{abort}, @code{exit}, and @code{_exit} are not builtin functions when @samp{-ansi} is used. -@item -flang-isoc9x -Enable support for features found in the C9X standard. In particular, -enable support for the C9X @code{restrict} keyword. +@item -fstd= +Determine the language standard. A value for this option must be provided; +possible values are -Even when this option is not specified, you can still use some C9X -features in so far as they do not conflict with previous C standards. -For example, you may use @code{__restrict__} even when -flang-isoc9x -is not specified. +@itemize @minus +@item iso9899:1990 +Same as -ansi + +@item iso9899:199409 +ISO C as modified in amend. 1 + +@item iso9899:199x +ISO C 9x + +@item c89 +same as -std=iso9899:1990 + +@item c9x +same as -std=iso9899:199x + +@item gnu89 +default, iso9899:1990 + gnu extensions + +@item gnu9x +iso9899:199x + gnu extensions +@end itemize + +Even when this option is not specified, you can still use some of the +features of newer standards in so far as they do not conflict with +previous C standards. For example, you may use @code{__restrict__} even +when -fstd=c9x is not specified. @item -fno-asm Do not recognize @code{asm}, @code{inline} or @code{typeof} as a diff --git a/contrib/gcc/loop.c b/contrib/gcc/loop.c index 7ee92e1..a5c5052 100644 --- a/contrib/gcc/loop.c +++ b/contrib/gcc/loop.c @@ -5998,6 +5998,8 @@ basic_induction_var (x, mode, dest_reg, p, inc_val, mult_val, location) || (GET_CODE (SET_DEST (set)) == SUBREG && (GET_MODE_SIZE (GET_MODE (SET_DEST (set))) <= UNITS_PER_WORD) + && (GET_MODE_CLASS (GET_MODE (SET_DEST (set))) + == MODE_INT) && SUBREG_REG (SET_DEST (set)) == x)) && basic_induction_var (SET_SRC (set), (GET_MODE (SET_SRC (set)) == VOIDmode @@ -7696,6 +7698,7 @@ check_dbra_loop (loop_end, insn_count, loop_start, loop_info) for (bl = loop_iv_list; bl; bl = bl->next) { if (bl->biv_count == 1 + && ! bl->biv->maybe_multiple && bl->biv->dest_reg == XEXP (comparison, 0) && ! reg_used_between_p (regno_reg_rtx[bl->regno], bl->biv->insn, first_compare)) @@ -7761,7 +7764,8 @@ check_dbra_loop (loop_end, insn_count, loop_start, loop_info) } } } - else if (INTVAL (bl->biv->add_val) > 0) + else if (GET_CODE (bl->biv->add_val) == CONST_INT + && INTVAL (bl->biv->add_val) > 0) { /* Try to change inc to dec, so can apply above optimization. */ /* Can do this if: @@ -9551,6 +9555,10 @@ load_mems (scan_start, end, loop_top, start) mem_list_entry = XEXP (mem_list_entry, 1); } + if (flag_float_store && written + && GET_MODE_CLASS (GET_MODE (mem)) == MODE_FLOAT) + loop_mems[i].optimize = 0; + /* If this MEM is written to, we must be sure that there are no reads from another MEM that aliases this one. */ if (loop_mems[i].optimize && written) diff --git a/contrib/gcc/stmt.c b/contrib/gcc/stmt.c index 018e190..f55b2c9 100644 --- a/contrib/gcc/stmt.c +++ b/contrib/gcc/stmt.c @@ -2511,15 +2511,15 @@ expand_value_return (val) #ifdef PROMOTE_FUNCTION_RETURN tree type = TREE_TYPE (DECL_RESULT (current_function_decl)); int unsignedp = TREE_UNSIGNED (type); + enum machine_mode old_mode + = DECL_MODE (DECL_RESULT (current_function_decl)); enum machine_mode mode - = promote_mode (type, DECL_MODE (DECL_RESULT (current_function_decl)), - &unsignedp, 1); + = promote_mode (type, old_mode, &unsignedp, 1); - if (GET_MODE (val) != VOIDmode && GET_MODE (val) != mode) - convert_move (return_reg, val, unsignedp); - else + if (mode != old_mode) + val = convert_modes (mode, old_mode, val, unsignedp); #endif - emit_move_insn (return_reg, val); + emit_move_insn (return_reg, val); } if (GET_CODE (return_reg) == REG && REGNO (return_reg) < FIRST_PSEUDO_REGISTER) diff --git a/contrib/libio/ChangeLog b/contrib/libio/ChangeLog index 832051a..8151dc2 100644 --- a/contrib/libio/ChangeLog +++ b/contrib/libio/ChangeLog @@ -1,3 +1,14 @@ +1999-12-21 Martin v. Löwis <loewis@informatik.hu-berlin.de> + + * filebuf.cc (open): Support ios::ate if _G_HAVE_IO_FILE_OPEN. + Remove seek for ios::app if not. + +1999-12-14 Martin v. Löwis <loewis@informatik.hu-berlin.de> + + * strstream.h (strstreambuf::streambuf): Rename parameters to + avoid shadow warning. + * stream.h (WS): Likewise. + Sun Oct 24 23:54:10 PDT 1999 Jeff Law (law@cygnus.com) * gcc-2.95.2 Released. diff --git a/contrib/libio/filebuf.cc b/contrib/libio/filebuf.cc index 422d442..0b0fd6d 100644 --- a/contrib/libio/filebuf.cc +++ b/contrib/libio/filebuf.cc @@ -1,5 +1,5 @@ /* This is part of libio/iostream, providing -*- C++ -*- input/output. -Copyright (C) 1993, 1995 Free Software Foundation +Copyright (C) 1993, 1995, 1999 Free Software Foundation This file is part of the GNU IO Library. This library is free software; you can redistribute it and/or modify it under the @@ -112,15 +112,23 @@ filebuf* filebuf::open(const char *filename, ios::openmode mode, int prot) if (mode & (int)ios::noreplace) posix_mode |= O_EXCL; #if _G_HAVE_IO_FILE_OPEN - return (filebuf*)_IO_file_open (this, filename, posix_mode, prot, - read_write, 0); + if (!_IO_file_open (this, filename, posix_mode, prot, + read_write, 0)) + return NULL; + if (mode & ios::ate) { + if (pubseekoff(0, ios::end) == EOF) { + _IO_un_link (this); + return NULL; + } + } + return this; #else int fd = ::open(filename, posix_mode, prot); if (fd < 0) return NULL; _fileno = fd; xsetflags(read_write, _IO_NO_READS+_IO_NO_WRITES+_IO_IS_APPENDING); - if (mode & (ios::ate|ios::app)) { + if (mode & ios::ate) { if (pubseekoff(0, ios::end) == EOF) return NULL; } diff --git a/contrib/libio/stream.h b/contrib/libio/stream.h index 0859802..90f8c1f 100644 --- a/contrib/libio/stream.h +++ b/contrib/libio/stream.h @@ -1,5 +1,5 @@ /* -Copyright (C) 1993 Free Software Foundation +Copyright (C) 1993, 1999 Free Software Foundation This file is part of the GNU IO Library. This library is free software; you can redistribute it and/or modify it under the @@ -53,7 +53,7 @@ extern char* oct(unsigned int, int=0); char* chr(char ch, int width = 0); char* str(const char* s, int width = 0); -inline istream& WS(istream& str) { return ws(str); } +inline istream& WS(istream& __str) { return ws(__str); } } // extern "C++" #endif /* !_COMPAT_STREAM_H */ diff --git a/contrib/libio/strstream.h b/contrib/libio/strstream.h index d549b45..967e5b0 100644 --- a/contrib/libio/strstream.h +++ b/contrib/libio/strstream.h @@ -1,5 +1,5 @@ /* This is part of libio/iostream, providing -*- C++ -*- input/output. -Copyright (C) 1993 Free Software Foundation +Copyright (C) 1993, 1999 Free Software Foundation This file is part of the GNU IO Library. This library is free software; you can redistribute it and/or modify it under the @@ -50,8 +50,8 @@ class strstreambuf : public streambuf virtual ~strstreambuf(); strstreambuf() { init_dynamic(0, 0); } strstreambuf(int initial_size) { init_dynamic(0, 0, initial_size); } - strstreambuf(void *(*alloc)(_IO_size_t), void (*free)(void*)) - { init_dynamic(alloc, free); } + strstreambuf(void *(*__alloc)(_IO_size_t), void (*__free)(void*)) + { init_dynamic(__alloc, __free); } strstreambuf(char *ptr, int size, char *pstart = NULL) { init_static(ptr, size, pstart); } strstreambuf(unsigned char *ptr, int size, unsigned char *pstart = NULL) diff --git a/contrib/libstdc++/ChangeLog b/contrib/libstdc++/ChangeLog index 462049b..fe52ab7 100644 --- a/contrib/libstdc++/ChangeLog +++ b/contrib/libstdc++/ChangeLog @@ -1,3 +1,9 @@ +1999-12-14 Martin v. Löwis <loewis@informatik.hu-berlin.de> + + * std/bastring.h (basic_string::basic_string): Rename parameters + to avoid shadow warnings. + * std/bastring.cc (alloc): Likewise. + Sun Oct 24 23:54:10 PDT 1999 Jeff Law (law@cygnus.com) * gcc-2.95.2 Released. diff --git a/contrib/libstdc++/std/bastring.cc b/contrib/libstdc++/std/bastring.cc index 3093b9e..f86f6d3 100644 --- a/contrib/libstdc++/std/bastring.cc +++ b/contrib/libstdc++/std/bastring.cc @@ -1,5 +1,5 @@ // Member templates for the -*- C++ -*- string classes. -// Copyright (C) 1994 Free Software Foundation +// Copyright (C) 1994, 1999 Free Software Foundation // This file is part of the GNU ANSI C++ Library. This library is free // software; you can redistribute it and/or modify it under the @@ -94,14 +94,14 @@ check_realloc (basic_string::size_type s) const template <class charT, class traits, class Allocator> void basic_string <charT, traits, Allocator>:: -alloc (basic_string::size_type size, bool save) +alloc (basic_string::size_type __size, bool __save) { - if (! check_realloc (size)) + if (! check_realloc (__size)) return; - Rep *p = Rep::create (size); + Rep *p = Rep::create (__size); - if (save) + if (__save) { p->copy (0, data (), length ()); p->len = length (); diff --git a/contrib/libstdc++/std/bastring.h b/contrib/libstdc++/std/bastring.h index 7089126..cd3793f 100644 --- a/contrib/libstdc++/std/bastring.h +++ b/contrib/libstdc++/std/bastring.h @@ -1,5 +1,5 @@ // Main templates for the -*- C++ -*- string classes. -// Copyright (C) 1994, 1995 Free Software Foundation +// Copyright (C) 1994, 1995, 1999 Free Software Foundation // This file is part of the GNU ANSI C++ Library. This library is free // software; you can redistribute it and/or modify it under the @@ -180,11 +180,11 @@ public: : dat (nilRep.grab ()) { assign (n, c); } #ifdef __STL_MEMBER_TEMPLATES template<class InputIterator> - basic_string(InputIterator begin, InputIterator end) + basic_string(InputIterator __begin, InputIterator __end) #else - basic_string(const_iterator begin, const_iterator end) + basic_string(const_iterator __begin, const_iterator __end) #endif - : dat (nilRep.grab ()) { assign (begin, end); } + : dat (nilRep.grab ()) { assign (__begin, __end); } ~basic_string () { rep ()->release (); } diff --git a/contrib/libstdc++/stl/ChangeLog b/contrib/libstdc++/stl/ChangeLog index aa4aa15..785fb58 100644 --- a/contrib/libstdc++/stl/ChangeLog +++ b/contrib/libstdc++/stl/ChangeLog @@ -1,3 +1,8 @@ +1999-11-06 Martin v. Löwis <loewis@informatik.hu-berlin.de> + + * bitset (class bitset): Declare reference as our friend. + * bitset: Include limits.h. + Sun Oct 24 23:54:10 PDT 1999 Jeff Law (law@cygnus.com) * gcc-2.95.2 Released. diff --git a/contrib/libstdc++/stl/bitset b/contrib/libstdc++/stl/bitset index e26845e..8b4f8b1 100644 --- a/contrib/libstdc++/stl/bitset +++ b/contrib/libstdc++/stl/bitset @@ -36,6 +36,7 @@ #include <stddef.h> // for size_t +#include <limits.h> // for CHAR_BIT #include <string> #include <stdexcept> // for invalid_argument, out_of_range, overflow_error #include <iostream.h> // for istream, ostream @@ -568,6 +569,8 @@ private: public: // bit reference: + class reference; + friend class reference; class reference { friend class bitset; |