2003-11-26 Paolo Carlini <pcarlini@suse.de>
Petur Runolfsson <peturr02@ru.is>
PR libstdc++/13171
* include/bits/fstream.tcc (imbue): Relax the conditions under
which the function succeeds: allow for two consecutive calls with
the same name; state dependent encodings are ok even after open
if at the beginning of the file; don't check seekoff return value
(pipes, cin, cout, etc...)
* testsuite/27_io/basic_filebuf/imbue/char/13171-1.cc: New.
* testsuite/27_io/basic_filebuf/imbue/char/13171-2.cc: New.
* testsuite/27_io/basic_filebuf/imbue/char/13171-3.cc: New.
* testsuite/27_io/basic_filebuf/imbue/char/13171-4.cc: New.
* testsuite/27_io/basic_filebuf/imbue/char/2.cc: Tweak comment.
* testsuite/27_io/basic_filebuf/imbue/char/3.cc: Likewise.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/2.cc: Tweak comment.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/3.cc: Likewise.
* testsuite/27_io/basic_filebuf/imbue/wchar_t/12868.cc: More
correctly use the UTF-8 locale appearing in the PR.
Co-Authored-By: Petur Runolfsson <peturr02@ru.is>
From-SVN: r73954
2003-11-26 Guilhem Lavaux <guilhem@kaffe.org>
Mark Wielaard <mark@klomp.org>
* java/net/URLStreamHandler (parseUrl): Fixed URL parsing
('@' should be checked to distinguish port from userinfo).
(toExternalForm): Add @ userInfo if necessary.
Co-Authored-By: Mark Wielaard <mark@klomp.org>
From-SVN: r73953
* java/net/Socket.java
(implCreated): Dont set default value explicitely, added
documentation.
(inputShutdown): Likewise.
(outputShutdown): Likewise.
(bound): New private member variable.
(bind): Set bound to true.
(close): Set bound to false.
(isBound): Return bound.
* java/net/ServerSocket.java
(bound): New private member variable.
(bind): Set bound to true.
(close): Set bound to false.
(isBound): Return bound.
From-SVN: r73949
* include/bits/locale_facets.h
(__numpunct_cache<>::_M_cache): Avoid zeroing _M_grouping,
_M_truename and _M_falsename: the constructor always does
it immediately before the _M_cache call.
From-SVN: r73948
PR target/6466
* config/sparc/sparc-protos.h (compute_frame_size): New prototype.
(sparc_flat_compute_frame_size): Likewise.
(sparc_flat_save_restore): Move prototype...
* config/sparc/sparc.c (sparc_flat_save_restore): ...here.
(save_regs): New prototype.
(build_big_number): Likewise.
(apparent_fsize): Change type to HOST_WIDE_INT.
(actual_fsize): Likewise.
(frame_base_offset): Likewise.
(build_big_number): Add support for HOST_BITS_PER_WIDE_INT == 64.
Change string descriptor to HOST_WIDE_INT_PRINT_DEC.
[TARGET_ARCH64]: Use the sequence of sparc_emit_set_const64_longway
to load a 64-bit constant.
(sparc_nonflat_function_prologue): Change string descriptor to
HOST_WIDE_INT_PRINT_DEC. Change offset type to HOST_WIDE_INT.
(output_restore_regs): Change offset type to HOST_WIDE_INT.
(sparc_nonflat_function_epilogue): Change string descriptor to
HOST_WIDE_INT_PRINT_DEC. Use build_big_number.
(output_sibcall): Change size type to HOST_WIDE_INT. Use
build_big_number. Change string descriptor to HOST_WIDE_INT_PRINT_DEC.
(sparc_frame_info): Change types for several components.
(sparc_flat_compute_frame_size): Update types according to previous
change.
(sparc_flat_function_prologue): Change string descriptor to
HOST_WIDE_INT_PRINT_DEC. Change offset type to int. Use
build_big_number.
(sparc_flat_function_epilogue): Change offset type to int.
Rename 'size1' into 'reg_offset1'. Change string descriptor to
HOST_WIDE_INT_PRINT_DEC. Use build_big_number. Change big number
limit to 4096 instead of 4095.
* config/sparc/sparc.c (mems_ok_for_ldd_peep): Change offset type to
HOST_WIDE_INT.
Co-Authored-By: Olivier Hainque <hainque@act-europe.fr>
From-SVN: r73942
2003-11-25 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/codecvt_members.cc (codecvt::do_length):
Rewrite, using both mbsnrtowcs and mbrtowc in a loop: the
former is very fast, but stops if encounters a NUL.
(codecvt::do_out): Tweaks.
(codecvt::do_in): Tweaks, improve the code dealing with errors.
* testsuite/performance/wchar_t_length.cc: New.
From-SVN: r73934
PR ada/13142
* utils.c (init_gigi_decls): Change name of built-in setjmp to
__builtin_setjmp, since this is apparently needed by recent
non Ada changes.
From-SVN: r73896
2003-11-24 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/codecvt_members.cc (codecvt::do_in):
Rewrite, using both mbsnrtowcs and mbrtowc in a loop: the
former is very fast, but stops if encounters a NUL.
(codecvt::do_out): Tweak.
* testsuite/performance/wchar_t_in.cc: New.
2003-11-24 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.h
(__numpunct_cache<>::_M_cache): Set _M_allocated at the beginning
in order to avoid memory leaks; simplify a bit.
From-SVN: r73893
* config.gcc (mips-sgi-irix6*): Add t-iris6gld to tmake_file when
using GNU ld.
* config/mips/iris6.h (IRIX6_STARTFILE_SPEC): New, taking the
whole of the previous STARTFILE_SPEC except crtbegin.o%s.
(IRIX6_ENDFILE_SPEC): Likewise ENDFILE_SPEC and crtend.o%s.
(STARTFILE_SPEC, ENDFILE_SPEC): Define in terms of the above.
(SUBTARGET_EXTRA_SPECS): Define.
* config/mips/iris6gld.h (LINK_SPEC): Change -init function
to __gcc_init and -fini function to __gcc_fini.
(STARTFILE_SPEC): Redefine, including irix6-crti.o before crtbegin.o.
(ENDFILE_SPEC): Likewise, including irix6-crtn.o after crtend.o.
(INIT_SECTION_ASM_OP, FINI_SECTION_ASM_OP): Define.
* config/mips/t-iris6gld,
* config/mips/irix6-crti.asm,
* config/mips/irix6-crtn.asm: New files.
From-SVN: r73891
* config/h8300/h8300.md (tablejump_h8300): Change to
*tablejump_h8300.
(tablejump_h8300h): Change to *tablejump_h8300hs_advanced.
(tablejump_normal_mode): Change to *tablejump_h8300hs_normal.
(indirect_jump_h8300): Change to *indirect_jump_h8300.
(indirect_jump_h8300h): Change to
*indirect_jump_h8300hs_advanced.
(indirect_jump_normal_mode): Change to
*indirect_jump_h8300hs_normal.
From-SVN: r73883
PR ada/13142
* utils.c (init_gigi_decls): Change name of built-in setjmp to
__builtin_setjmp, since this is apparently needed by recent
non Ada changes.
From-SVN: r73881
* config/h8300/h8300.md: (stm_h8300s_2): Change the name to
stm_h8300s_2_advanced.
(stm_h8300s_2_normal): New.
(stm_h8300s_2): Likewise.
(stm_h8300s_3): Change the name to stm_h8300s_3_advanced.
(stm_h8300s_3_normal): New.
(stm_h8300s_3): Likewise.
(stm_h8300s_4): Change the name to stm_h8300s_4_advanced.
(stm_h8300s_4_normal): New.
(stm_h8300s_4): Likewise.
(ldm_h8300s_2): Change the name to ldm_h8300s_2_advanced.
(ldm_h8300s_2_normal): New.
(ldm_h8300s_2): Likewise.
(ldm_h8300s_3): Change the name to ldm_h8300s_3_advanced.
(ldm_h8300s_3_normal): New.
(ldm_h8300s_3): Likewise.
(ldm_h8300s_4): Change the name to ldm_h8300s_4_advanced.
(ldm_h8300s_4_normal): New.
(ldm_h8300s_4): Likewise.
(two peephole2's): Enable only with !TARGET_NORMAL_MODE.
(two peephole2's): New.
From-SVN: r73879