dnovillo [Tue, 13 Sep 2005 16:05:37 +0000 (16:05 +0000)]
* tree-dfa.c (dump_variable): Guard against NULL annotations.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104233
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Tue, 13 Sep 2005 15:48:36 +0000 (15:48 +0000)]
* zh_CN.po: Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104231
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Tue, 13 Sep 2005 15:15:37 +0000 (15:15 +0000)]
PR c++/16171
* mangle.c (find_substitution): Do not use special substitutions
for identifiers not in std::.
PR c++/16171
* g++.dg/abi/mangle26.C: New test.
* g++.dg/abi/mangle27.C: New test.
* g++.dg/abi/mangle28.C: New test.
* g++.dg/abi/mangle29.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104228
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Tue, 13 Sep 2005 14:45:13 +0000 (14:45 +0000)]
PR c++/23839
* typeck.c (cxx_mark_addressable): Only check DECL_HARD_REGISTER
for VAR_DECLs.
PR c++/23839
* g++.dg/parse/register1.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104225
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Tue, 13 Sep 2005 14:44:08 +0000 (14:44 +0000)]
PR c++/23842
* pt.c (tsubst_default_argument): Do treat default argument
expressions as occurring in the context of the function called.
PR c++/23842
* g++.dg/template/access16.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104224
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Tue, 13 Sep 2005 11:01:23 +0000 (11:01 +0000)]
* gfortran.dg/char_pack_2.f90: Increase the vector size.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104220
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Tue, 13 Sep 2005 08:07:15 +0000 (08:07 +0000)]
PR fortran/18899
* trans-intrinsic.c (gfc_conv_intrinsic_bound): Move initialization
of argse. Remove now-redundant want_pointer assignment.
* trans-array.c (gfc_conv_expr_descriptor): When not assigning to
a pointer, keep the original bounds of a full array reference.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104219
138bc75d-0d04-0410-961f-
82ee72b054a4
rakdver [Tue, 13 Sep 2005 07:33:49 +0000 (07:33 +0000)]
PR tree-optimize/23817
* tree-cfg.c (tree_merge_blocks): Preserve loop closed ssa.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104218
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Tue, 13 Sep 2005 07:15:01 +0000 (07:15 +0000)]
gcc/fortran/
PR target/19269
* iresolve.c (gfc_resolve_cshift, gfc_resolve_eoshift)
(gfc_resolve_pack, gfc_resolve_reshape, gfc_resolve_spread)
(gfc_resolve_transpose, gfc_resolve_unpack): Add "_char" to the name
for character-based operations.
(gfc_resolve_pack): Remove ATTRIBUTE_UNUSED from array argument.
(gfc_resolve_unpack): Copy the whole typespec from the vector.
* trans-array.c (gfc_conv_expr_descriptor): In the EXPR_FUNCTION
case, get the string length from the scalarization state.
libgfortran/
PR target/19269
* intrinsics/cshift0.c (cshift0): Add an extra size argument.
(cshift0_1, cshift0_2, cshift0_4, cshift0_8): Replace explicit
implementations with...
(DEFINE_CSHIFT): ...this new macro. Define character versions too.
* intrinsics/eoshift0.c (zeros): Delete.
(eoshift0): Add extra size and filler arguments. Use memset if no
bound is provided.
(eoshift0_1, eoshift0_2, eoshift0_4, eoshift0_8): Replace explicit
implementations with...
(DEFINE_EOSHIFT): ...this new macro. Define character versions too.
* intrinsics/eoshift2.c (zeros): Delete.
(eoshift2): Add extra size and filler arguments. Use memset if no
bound is provided.
(eoshift2_1, eoshift2_2, eoshift2_4, eoshift2_8): Replace explicit
implementations with...
(DEFINE_EOSHIFT): ...this new macro. Define character versions too.
* intrinsics/pack.c (pack_internal): New static function, reusing
the contents of pack and adding an extra size argument. Change
"mptr" rather than "m" when calculating the array size.
(pack): Redefine as a forwarder to pack_internal.
(pack_s_internal): New static function, reusing the contents of
pack_s and adding an extra size argument.
(pack_s): Redefine as a forwarder to pack_s_internal.
(pack_char, pack_s_char): New functions.
* intrinsics/reshape.c (reshape_internal): New static function,
reusing the contents of reshape and adding an extra size argument.
(reshape): Redefine as a forwarder to reshape_internal.
(reshape_char): New function.
* intrinsics/spread.c (spread_internal): New static function,
reusing the contents of spread and adding an extra size argument.
(spread): Redefine as a forwarder to spread_internal.
(spread_char): New function.
* intrinsics/transpose.c (transpose_internal): New static function,
reusing the contents of transpose and adding an extra size argument.
(transpose): Redefine as a forwarder to transpose_internal.
(transpose_char): New function.
* intrinsics/unpack.c (unpack_internal): New static function, reusing
the contents of unpack1 and adding extra size and fsize arguments.
(unpack1): Redefine as a forwarder to unpack_internal.
(unpack0): Call unpack_internal instead of unpack1.
(unpack1_char, unpack0_char): New functions.
* m4/cshift1.m4 (cshift1): New static function, reusing the contents
of cshift1_<kind> and adding an extra size argument.
(cshift1_<kind>): Redefine as a forwarder to cshift1.
(cshift1_<kind>_char): New function.
* m4/eoshift1.m4 (zeros): Delete.
(eoshift1): New static function, reusing the contents of
eoshift1_<kind> and adding extra size and filler arguments.
Fix calculation of hstride. Use memset if no bound is provided.
(eoshift1_<kind>): Redefine as a forwarder to eoshift1.
(eoshift1_<kind>_char): New function.
* m4/eoshift3.m4 (zeros): Delete.
(eoshift3): New static function, reusing the contents of
eoshift3_<kind> and adding extra size and filler arguments.
Use memset if no bound is provided.
(eoshift3_<kind>): Redefine as a forwarder to eoshift3.
(eoshift3_<kind>_char): New function.
* generated/cshift1_4.c, generated/cshift1_8.c,
* generated/eoshift1_4.c, generated/eoshift1_8.c,
* generated/eoshift3_4.c, generated/eoshift3_8.c: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104217
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Tue, 13 Sep 2005 06:24:18 +0000 (06:24 +0000)]
* configure.in: Recognize f95 in the --enable-languages option,
and substitute it for fortran, issuing a warning.
* configure: Regenerate.
* Make-lang.in: Change targets prefixes from f95 to fortran.
* config-lang.in: Change language name to "fortran".
* lang.opt: Change language name to "fortran".
* options.c: Change CL_F95 to CL_Fortran.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104215
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Tue, 13 Sep 2005 02:47:14 +0000 (02:47 +0000)]
2005-09-12 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/lib/libstdc++.exp (v3-build_support): Use sharedlib for
type of target_compile.
(v3_target_compile): Set flags for sharelib type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104209
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Tue, 13 Sep 2005 02:41:07 +0000 (02:41 +0000)]
PR c++/23841
* parser.c (cp_parser_primary_expression): Recognize the closing
">" of a template-argument-list after a floating-point literal as
the end of a cast expression.
PR c++/23841
* g++.dg/parse/template17.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104208
138bc75d-0d04-0410-961f-
82ee72b054a4
amodra [Tue, 13 Sep 2005 02:00:53 +0000 (02:00 +0000)]
PR target/23774
* config/rs6000/rs6000.md (restore_stack_block): Write the backchain
word before changing the stack pointer. Use gen_frame_mem for MEMs.
Use UNSPEC_TIE to prevent insn scheduling reordering the insns.
(restore_stack_nonlocal): Likewise.
(save_stack_nonlocal): Use template to emit insns, and gen_frame_mem.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104206
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 13 Sep 2005 00:16:23 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104200
138bc75d-0d04-0410-961f-
82ee72b054a4
fitzsim [Mon, 12 Sep 2005 23:50:01 +0000 (23:50 +0000)]
2005-09-12 Thomas Fitzsimmons <fitzsim@redhat.com>
PR libgcj/23762
* shlibpath.m4: New file.
* configure.ac: If libltdl is being used call AC_LTDL_SHLIBPATH
macro.
* gnu/classpath/natSystemProperties.cc (insertSystemProperties)
[USE_LTDL]: If it was not defined with -D set java.library.path to
the value of LTDL_SHLIBPATH_VAR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104198
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Mon, 12 Sep 2005 23:09:41 +0000 (23:09 +0000)]
2005-09-12 Benjamin Kosnik <bkoz@redhat.com>
David Edelsohn <dje@gcc.gnu.org>
PR libstdc++/22554
PR libstdc++/23734
* include/Makefile.am (assoc_headers): Break into five sub values.
(install-headers): Use them.
(stamp-assoc): Same.
* include/Makefile.in: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104196
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Mon, 12 Sep 2005 22:38:34 +0000 (22:38 +0000)]
PR c++/23789
* cvt.c (perform_qualification_conversions): Don't create
unnecessary NOP_EXPRs.
* pt.c (tsubst_template_arg): Use fold_non_dependent_expr.
PR c++/23789
* g++.dg/template/nontype14.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104193
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Mon, 12 Sep 2005 21:13:04 +0000 (21:13 +0000)]
2005-09-12 Chris Jefferson <chris@bubblescope.net>
* include/bits/stl_algo.h (search_n): Delegate to specializations.
(search_n(,,,,binary_predicate)): Likewise.
(__search_n(forward_iterator_tag)): Original search_n, tweak to
remove an unnecessary comparison.
(__search_n(,,,,binary_predicate,forward_iterator_tag)): Likewise.
2005-09-12 Jim Xochellis <jimxoch@yahoo.gr>
* include/bits/stl_algo.h (__search_n(std::random_access_iterator_tag)):
Add specialization.
(__search_n(,,,,binary_predicate,std::random_access_iterator_tag)):
Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104192
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Mon, 12 Sep 2005 20:32:54 +0000 (20:32 +0000)]
2005-09-12 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/23417
* include/bits/stl_list.h (_List_impl): Use member initialization
list for -Weffc++.
* include/bits/stl_tree.h (_Rb_tree_impl): Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104191
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Mon, 12 Sep 2005 19:54:23 +0000 (19:54 +0000)]
./
PR g++/7874
* c.opt (ffriend-injection): New C++ option.
* doc/invoke.texi (Option Summary): Mention -ffriend-injection.
(C++ Dialect Options): Document -ffriend-injection.
cp/
PR g++/7874
* cp-tree.h (struct lang_decl_flags): Add hidden_friend_p
bitfield. Make dummy bitfield one bit smaller.
(DECL_HIDDEN_FRIEND_P): Define.
(pushdecl_maybe_friend): Declare.
(pushdecl_top_level_maybe_friend): Declare.
* decl.c (duplicate_decls): Add newdecl_is_friend parameter.
Change prototype and all callers. Add assertion that a
DECL_ARTIFICIAL FUNCTION_DECL is not DECL_HIDDEN_FRIEND_P. Set
DECL_ANTICIPATED and DECL_HIDDEN_FRIEND_P in duplicated decl if
appropriate.
* name-lookup.c (supplement_binding): Don't ignore a
DECL_HIDDEN_FRIEND_P.
(pushdecl_maybe_friend): Break out contents of pushdecl. Add
is_friend parameter. Set DECL_ANTICIPATED and
DECL_HIDDEN_FRIEND_P for a friend function.
(pushdecl): Just call pushdecl_maybe_friend.
(pushdecl_with_scope): Add is_friend parameter. Change prototype
and all callers.
(pushdecl_namespace_level): Likewise.
(push_overloaded_decl): Likewise. Check DECL_HIDDEN_FRIEND_P as
well as DECL_ANTICIPATED when checking for a builtin.
(do_nonmember_using_decl): Check DECL_HIDDEN_FRIEND_P as well as
DECL_ANTICIPATED when checking for a builtin.
(do_nonmember_using_decl): Likewise.
(pushdecl_top_level_1): Add is_friend parameter. Change all
callers.
(pushdecl_top_level_maybe_friend): New function.
(remove_hidden_names): New function.
(struct arg_lookup): Add args field.
(friend_of_associated_class_p): New static function.
(arg_assoc_namespace): Ignore hidden functions which are not
friends of an associated class of some argument.
(lookup_arg_dependent): Remove hidden functions from list passed
in. Initialize k.args.
* name-lookup.h (remove_hidden_names): Declare.
* friend.c (do_friend): Call pushdecl_maybe_friend instead of
pushdecl.
* call.c (add_function_candidate): Change DECL_ANTICIPATED test to
an assertion, with a check for DECL_HIDDEN_FRIEND_P.
(build_new_function_call): Add koenig_p parameter. Change
prototype and callers.
* pt.c (register_specialization): Add is_friend parameter. Change
all callers.
(push_template_decl_real): Change is_friend parameter to bool.
Change prototype and all callers.
(tsubst_friend_class): Call pushdecl_top_level_maybe_friend
instead of pushdecl_top_level.
testsuite/
PR g++/7874
* g++.dg/lookup/friend7.C: New test.
* g++.dg/lookup/friend8.C: New test.
* g++.dg/parse/defarg4.C: Add a parameter to the friend function,
so that it will be found via argument dependent lookup.
* g++.old-deja/g++.brendan/crash56.C: Don't expect errors for
friend functions which will no longer be found.
* g++.old-deja/g++.jason/friend.C: Add a parameter to the friend
function g, so that it will be found via argument dependent
lookup.
* g++.old-deja/g++.jason/scoping15.C: Use -ffriend-injection.
* g++.old-deja/g++.mike/net43.C: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104188
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Mon, 12 Sep 2005 19:48:04 +0000 (19:48 +0000)]
2005-09-12 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/23417
* include/bits/stl_list.h (_List_impl): Use member initialization
list for -Weffc++.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104187
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Mon, 12 Sep 2005 19:00:57 +0000 (19:00 +0000)]
PR c++/23691
* g++.dg/template/static16.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104186
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Mon, 12 Sep 2005 17:42:53 +0000 (17:42 +0000)]
* Imported zlib 1.2.3; merged local changes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104184
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Mon, 12 Sep 2005 17:04:02 +0000 (17:04 +0000)]
This commit was generated by cvs2svn to compensate for changes in r104181,
which included commits to RCS files with non-trunk default branches.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104182
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Mon, 12 Sep 2005 17:03:48 +0000 (17:03 +0000)]
Initial revision
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104179
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Mon, 12 Sep 2005 17:02:07 +0000 (17:02 +0000)]
Forced commit in preparation for import
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104178
138bc75d-0d04-0410-961f-
82ee72b054a4
jconner [Mon, 12 Sep 2005 15:50:08 +0000 (15:50 +0000)]
pr middle-end/23237
* gcc.c-torture/compile/pr23237.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104177
138bc75d-0d04-0410-961f-
82ee72b054a4
jconner [Mon, 12 Sep 2005 15:46:35 +0000 (15:46 +0000)]
pr middle-end/23237
* ipa-reference.c (static_execute): Don't mark variables in
named sections TREE_READONLY.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104176
138bc75d-0d04-0410-961f-
82ee72b054a4
amodra [Mon, 12 Sep 2005 14:14:21 +0000 (14:14 +0000)]
* config/rs6000/rs6000.c (get_next_active_insn): Simplify test for
stack_tie.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104173
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Mon, 12 Sep 2005 13:56:07 +0000 (13:56 +0000)]
2005-09-12 Andrew Pinski <pinskia@physics.uc.edu>
* tree-ssa-dse.c (dse_optimize_stmt): Fix up all of V_MAY_DEF and
V_MUST_DEF instead of just the first_use_p.
Don't mark the virtual variables for renaming on the statement which
is being removed.
(pass_dse): Remove TODO_update_ssa.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104172
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Mon, 12 Sep 2005 13:49:56 +0000 (13:49 +0000)]
PR middle-end/23290
* stor-layout.c (compute_record_mode): For records with a single
field, actually check the field's mode size against the type size.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104171
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Mon, 12 Sep 2005 13:24:11 +0000 (13:24 +0000)]
* sh.h (HARD_REGNO_MODE_OK): Allow V4SFmode in general purpose
registers for TARGET_SHMEDIA.
(enum reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): Rename
GENERAL_FP_REGS to GENERAL_DF_REGS. Add GENERAL_FP_REGS as union
of GENERAL_REGS and FP_REGS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104170
138bc75d-0d04-0410-961f-
82ee72b054a4
bernds [Mon, 12 Sep 2005 10:47:01 +0000 (10:47 +0000)]
* config/bfin/bfin.c (legimitize_pic_address): Use gen_const_mem.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104168
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Mon, 12 Sep 2005 09:42:34 +0000 (09:42 +0000)]
2005-09-12 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/23767
* include/bits/stl_iterator.h (__normal_iterator::
__normal_iterator<>(const __normal_iterator<_Iter, _Container>&)):
Enable only when _Iter is equal to _Container::pointer.
* testsuite/21_strings/basic_string/types/23767.cc: New.
* testsuite/23_containers/vector/types/23767.cc: Likewise.
* testsuite/ext/vstring/types/23767.cc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104167
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Mon, 12 Sep 2005 07:38:33 +0000 (07:38 +0000)]
* objcp-lang.c (objcxx_init_ts): Remove ALIAS_DECL.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104165
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Mon, 12 Sep 2005 04:49:11 +0000 (04:49 +0000)]
2005-09-11 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/19265
PR libstdc++/22309
* include/ext/mt_allocator.h
(__gnu_cxx::__create_handler): Remove.
(__pool<true>::_M_destroy_thread_key): Compatibility only.
(__pool<true>::_M_initialize(__destroy): Same.
(__pool<true>::_M_initialize): New.
(__pool<true>::_M_initialize_once): Nothing fancy.
(__pool<true>::_M_once): Remove.
(__common_pool): New.
(__common_pool_base): New.
(__per_type_pool): New.
(__per_type_pool_base): New.
* src/mt_allocator.cc: Same.
* config/linker-map.gnu (__pool<true>::_M_initialize()): Add.
2005-09-11 Jakub Jelinek <jakub@redhat.com>
PR libstdc++/19265
PR libstdc++/22309
* src/mt_allocator.cc (__gnu_internal::freelist_mutex): Make static.
(__gnu_internal::__freelist): New type.
(__gnu_internal::freelist): New variable.
(__gnu_internal::_M_destroy_thread_key): New function.
(__gnu_cxx::__pool<true>::_M_destroy): Don't delete
_M_thread_freelist_initial.
(__gnu_cxx::__pool<true>::_M_initialize): Make argument nameless.
Don't use _M_thread_freelist and _M_thread_freelist_initial
__pool<true> fields, instead use __gnu_internal::freelist fields, call
gthread_key_create just once. Use
__gnu_internal::_M_destroy_thread_key as key destructor.
(__gnu_cxx::__pool<true>::_M_get_thread_id): Store size_t id
rather than _Thread_record* in the thread specific value. Don't
use _M_thread_freelist __pool<true> field, instead use
__gnu_internal::freelist fields.
(__gnu_cxx::__pool<true>::_M_destroy_thread_key): Do nothing.
2005-09-11 Benjamin Kosnik <bkoz@redhat.com>
Jakub Jelinek <jakub@redhat.com>
PR libstdc++/19265
PR libstdc++/22309
* testsuite/testsuite_shared.cc: New.
* testsuite/lib/dg-options.exp (dg-require-sharedlib): New.
* testsuite/lib/libstdc++.exp (libstdc++_init): Look for shared
library, and set v3-sharedlib based on this.
(check_v3_target_sharedlib): New.
(proc v3-build_support): Build shared objects.
* testsuite/ext/mt_allocator/22309_thread.cc: New, use above.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104161
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Mon, 12 Sep 2005 04:04:03 +0000 (04:04 +0000)]
* decl2.c (build_anon_union_vars): Copy attributes from the base addr.
* pt.c (tsubst_decl): Substitute in DECL_VALUE_EXPR.
* g++.dg/other/error8.C: Update expected diagnostic text.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104160
138bc75d-0d04-0410-961f-
82ee72b054a4
amodra [Mon, 12 Sep 2005 03:51:13 +0000 (03:51 +0000)]
* config/rs6000/rs6000.c (get_next_active_insn): Rewrite using
CALL_P, JUMP_P and NONJUMP_INSN_P, so that barriers and labels
are omitted. Exclude stack_tie insn too.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104159
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 12 Sep 2005 00:16:16 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104147
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Sun, 11 Sep 2005 23:22:10 +0000 (23:22 +0000)]
PR rtl-optimization/23098
* config/rs6000/predicates.md (easy_fp_constant): SFmode constant
0.0f is easy.
* config/rs6000/rs6000.md (movdf splitter): Use
const_double_operand predicate for TARGET_POWERPC64.
* config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Expand
SYMBOL_REF method to ABI_V4.
* config/rs6000/altivec.md (build_vector_mask_for_load): Use
replace_equiv_address.
* config/rs6000/rs6000.c (rs6000_emit_eh_reg_restore): Mark MEM as
rs6000_sr_alias_set and MEM_NOTRAP.
(rs6000_aix_emit_builtin_unwind_init): Use gen_frame_mem().
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104145
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sun, 11 Sep 2005 21:17:51 +0000 (21:17 +0000)]
* tree.c (contains_placeholder_p) <tcc_expression>: Properly
handle CALL_EXPR again.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104144
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Sun, 11 Sep 2005 19:39:35 +0000 (19:39 +0000)]
PR libfortran/19872
* gfortran.dg/overwrite_1.f: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104143
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Sun, 11 Sep 2005 13:34:57 +0000 (13:34 +0000)]
PR libfortran/20179
* io/unix.c (is_preconnected): Add function to test if a stream
corresponds to a preconnected unit.
* io/io.h: Add prototype for is_preconnected.
* io/transfer.c (data_transfer_init): Do not truncate
preconnected units.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104141
138bc75d-0d04-0410-961f-
82ee72b054a4
paolo [Sun, 11 Sep 2005 09:48:41 +0000 (09:48 +0000)]
2005-09-11 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/23781
* include/bits/stl_list.h (_List_iterator<>::
_List_iterator(_List_node_base*), _List_const_iterator<>::
_List_const_iterator(const _List_node_base*)): Make explicit.
(list<>::begin(), list<>::end(), list<>::pop_back()): Adjust
consistently.
* include/bits/list.tcc (list<>::insert, list<>::erase): Adjust
consistently.
* include/bits/stl_tree.h (_Rb_tree_iterator<>::
_Rb_tree_iterator(_Link_type), _Rb_tree_const_iterator<>::
_Rb_tree_const_iterator(_Link_type)): Make explicit.
(_Rb_tree<>::begin(), _Rb_tree<>::end()): Adjust consistently.
* include/ext/slist (_Slist_iterator<>::_Slist_iterator(_Node*)):
Make explicit.
(slist<>::erase(iterator), slist<>::erase(iterator, iterator)):
Adjust consistently.
* include/tr1/hashtable (hashtable_iterator<>::
hashtable_iterator(hash_node<>**)): Make explicit.
* testsuite/23_containers/list/23781.cc: New.
* testsuite/23_containers/map/23781.cc: Likewise.
* testsuite/23_containers/multimap/23781.cc: Likewise.
* testsuite/23_containers/multiset/23781.cc: Likewise.
* testsuite/23_containers/set/23781.cc: Likewise.
* testsuite/ext/slist/23781.cc: Likewise.
* testsuite/tr1/6_containers/unordered/23781.cc: Likewise.
* testsuite/23_containers/map/operators/1_neg.cc: Adjust dg-error
line numbers.
* testsuite/23_containers/set/operators/1_neg.cc: Likewise.
* include/tr1/array (array<>::begin(), array<>::end()): Adjust
stylistically for consistency with the other containers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104139
138bc75d-0d04-0410-961f-
82ee72b054a4
rearnsha [Sun, 11 Sep 2005 07:38:02 +0000 (07:38 +0000)]
* arm/predicates.md (alignable_memory_operand): Delete.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104138
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 11 Sep 2005 00:16:12 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104133
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Sat, 10 Sep 2005 21:10:42 +0000 (21:10 +0000)]
PR debug/23806
* dbxout.c (dbxout_expand_expr): New.
(dbxout_symbol): Use it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104129
138bc75d-0d04-0410-961f-
82ee72b054a4
tobi [Sat, 10 Sep 2005 16:31:28 +0000 (16:31 +0000)]
2005-09-10 Janne Blomqvist <jblomqvi@cc.hut.fi>
* io/unix.c: Remove mmap code.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104127
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Sat, 10 Sep 2005 16:12:53 +0000 (16:12 +0000)]
* testsuite/26_numerics/cmath/c99_classification_macros_c.cc:
XFAIL on *-*-linux*, not *-*-linux-gnu.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104125
138bc75d-0d04-0410-961f-
82ee72b054a4
rearnsha [Sat, 10 Sep 2005 08:28:32 +0000 (08:28 +0000)]
* arm.c (arm_gen_rotated_half_load): Delete.
(vfp_emit_fstmx, arm_set_return_address): Use gen_frame_mem.
(emit_multi_reg_push, emit_sfm, arm_expand_prologue)
(thumb_set_return_address): Likewise.
(thumb_load_double_from_address): Use adjust_address.
* arm.md (splits calling arm_gen_rotated_half_load): Delete.
(extendhsisi2_mem, movhi_bytes): Use change_address.
(movhi): Use widen_memory_access.
(reload_out_df): Use replace_equiv_address.
* arm-protos.h (arm_gen_rotated_half_load): Delete prototype.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104124
138bc75d-0d04-0410-961f-
82ee72b054a4
jconner [Sat, 10 Sep 2005 00:45:21 +0000 (00:45 +0000)]
* g++.dg/init/pr23180-1.C: Removed.
* g++.dg/init/pr23180-2.C: Removed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104122
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 10 Sep 2005 00:16:33 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104119
138bc75d-0d04-0410-961f-
82ee72b054a4
daney [Fri, 9 Sep 2005 23:32:57 +0000 (23:32 +0000)]
2005-09-09 David Daney <ddaney@avtrex.com>
* gcc.c-torture/execute/
20010124-1.c: Removed and split into two new
files which are ...
* gcc.c-torture/execute/builtins/
20010124-1: ... here and ...
* gcc.c-torture/execute/builtins/
20010124-1-lib.c: ... here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104116
138bc75d-0d04-0410-961f-
82ee72b054a4
gdr [Fri, 9 Sep 2005 23:07:55 +0000 (23:07 +0000)]
* parser.c (cp_parser_translation_unit): Simplify. The while-block
was actually executed at most once.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104115
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Fri, 9 Sep 2005 22:01:19 +0000 (22:01 +0000)]
* gfortran.dg/iostat_2.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104110
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Fri, 9 Sep 2005 21:51:33 +0000 (21:51 +0000)]
PR libfortran/23784
* io/close.c (st_close): Call library_end even in case of error.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104108
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Fri, 9 Sep 2005 21:00:49 +0000 (21:00 +0000)]
* dbxout.c: Include expr.h.
(dbxout_global_decl): Don't suppress for DECL_RTL unset.
(dbxout_symbol): Handle DECL_VALUE_EXPR.
* Makefile.in (dbxout.o): Add EXPR_H.
cp/
* cp-tree.def (ALIAS_DECL): Remove.
* cp-lang.c (cp_init_ts): Remove support for it.
* error.c (dump_decl): Likewise.
* name-lookup.c (pushdecl): Likewise.
* semantics.c (finish_id_expression): Likewise.
* decl2.c (build_anon_union_vars): Use a VAR_DECL with
DECL_VALUE_EXPR instead.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104106
138bc75d-0d04-0410-961f-
82ee72b054a4
tkoenig [Fri, 9 Sep 2005 19:20:52 +0000 (19:20 +0000)]
2005-09-09 Thomas Koenig <Thomas.Koenig@online.de>
gfortran.texi: Document IOSTAT= specifier.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104104
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Fri, 9 Sep 2005 18:56:16 +0000 (18:56 +0000)]
PR c++/22252
* decl.c (start_preparsed_function): Do not pay attention to
#pragma interface for implicitly-defined methods.
* decl2.c (cp_finish_file): Do not complain about uses of inline
functions that have bodies, even if we decided not to emit the
body in this translation unit.
* semantics.c (note_decl_for_pch): Do not mess with linkage.
(expand_or_defer_fn): Make inline, non-template functions COMDAT
at this point.
PR c++/22252
* g++.dg/ext/interface1.C: New test.
* g++.dg/ext/interface1.h: Likewise.
* g++.dg/ext/interface1a.cc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104103
138bc75d-0d04-0410-961f-
82ee72b054a4
tkoenig [Fri, 9 Sep 2005 18:21:45 +0000 (18:21 +0000)]
2005-09-09 Thomas Koenig <Thomas.Koenig@online.de>
* gfortran.h: Add iomsg to gfc_open, gfc_close, gfc_filepos,
gfc_inquire and gfc_dt.
* dump-parse-tree.c (gfc_show_code_node): Add iomsg
for open, close, file positioning, inquire and namelist.
* io.c (io_tag): Add tag_iomsg.
(resolve_tag): Add standards warning for iomsg.
(match_open_element): Add iomsg.
(gfc_free_open): Add iomsg.
(gfc_resolve_open): Add iomsg.
(gfc_free_close): Add iomsg.
(match_close_element): Add iomsg.
(gfc_resolve_close): Add iomsg.
(gfc_free_filepos): Add iomsg.
(match_file_element): Add iomsg.
(gfc_resolve_filepos): Add iostat and iomsg.
(match-dt_element): Add iomsg.
(gfc_free_dt): Add iomsg.
(gfc_resolve_dt): Add iomsg.
(gfc_free_inquire): Add iomsg.
(match_inquire_element): Add iomsg.
(gfc_resolve_inquire): Add iomsg.
* trans_io.c: Add ioparm_iomsg and ioparm_iomsg_len.
(gfc_build_io_library_fndecls): Add iomsg as last field.
(gfc_trans_open): Add iomsg.
(gfc_trans_close): Add iomsg.
(build_fileos): Call set_string for iomsg.
(gfc_trans_inquire): Add iomsg.
(build_dt): Add iomsg.
2005-09-09 Thomas Koenig <Thomas.Koenig@online.de>
* io/io.h: Add iomsg as last field of st_parameter.
* runtime/error.c (generate_error): If iomsg is present, copy
the message there.
2005-09-09 Thomas Koenig <Thomas.Koenig@online.de>
* gfortran.dg/iomsg_1.f90: New test case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104102
138bc75d-0d04-0410-961f-
82ee72b054a4
rakdver [Fri, 9 Sep 2005 16:17:25 +0000 (16:17 +0000)]
PR tree-optimization/23509
* tree-cfg.c (replace_uses_by): Use replace_exp.
* tree-ssa-loop-ivopts.c (get_ref_tag): Assert that dereferenced
pointers have name_mem_tag or type_mem_tag set.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104099
138bc75d-0d04-0410-961f-
82ee72b054a4
aph [Fri, 9 Sep 2005 16:04:11 +0000 (16:04 +0000)]
2005-09-09 Andrew Haley <aph@redhat.com>
PR libgcj/23182
* expr.c (pop_type_0): If the expected type is object or ptr
(i.e. void*), return the type of the object we just popped from
the stack.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104098
138bc75d-0d04-0410-961f-
82ee72b054a4
jconner [Fri, 9 Sep 2005 15:59:29 +0000 (15:59 +0000)]
Fix for 23180 also fixes 21135 - added to change description.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104097
138bc75d-0d04-0410-961f-
82ee72b054a4
aph [Fri, 9 Sep 2005 13:06:24 +0000 (13:06 +0000)]
2005-09-08 Andrew Haley <aph@redhat.com>
* java/net/URLClassLoader.java (addURLImpl): Synchronize on the
loader.
(toString): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104095
138bc75d-0d04-0410-961f-
82ee72b054a4
aph [Fri, 9 Sep 2005 13:05:20 +0000 (13:05 +0000)]
2005-09-08 Andrew Haley <aph@redhat.com>
PR java/22084
* include/i386-signal.h (HANDLE_DIVIDE_OVERFLOW): Bump IP by 1 if
R/M field in instruction is 100.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104094
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Fri, 9 Sep 2005 11:31:16 +0000 (11:31 +0000)]
* tree-chrec.c (evolution_function_is_invariant_rec_p): Use
CHREC_LEFT and CHREC_RIGHT for accessing chrec components instead
of wrongly accessing operands.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104093
138bc75d-0d04-0410-961f-
82ee72b054a4
spop [Fri, 9 Sep 2005 10:56:41 +0000 (10:56 +0000)]
* Makefile.in (tree-chrec.o): Depends on SCEV_H.
* tree-chrec.c: Include tree-scalar-evolution.h.
(chrec_convert): Instantiate the base and step before calling
scev_probably_wraps_p that would fail on parametric evolutions.
Collect all the fails into a single section failed_to_convert,
print a diagnostic, and return chrec_dont_know instead of calling
fold_convert.
* tree-scalar-evolution.c (loop_closed_phi_def): New.
(instantiate_parameters_1): Avoid instantiation of loop closed ssa
phi nodes.
(scev_const_prop): Don't replace the definition of a loop closed ssa
phi node by itself, or by another loop closed ssa phi node.
* tree-ssa-loop-niter.c (scev_probably_wraps_p, convert_step): Check
that base and step are defined.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104092
138bc75d-0d04-0410-961f-
82ee72b054a4
bkoz [Fri, 9 Sep 2005 10:14:55 +0000 (10:14 +0000)]
2005-09-09 Benjamin Kosnik <bkoz@redhat.com>
Jakub Jelinek <jakub@redhat.com>
* src/debug.cc (iterator_base_mutex): Make static for internal
linkage.
* src/locale_init.cc (locale_mutex): Same.
* src/mt_allocator.cc (freelist_mutex): Same.
* src/pool_allocator.cc (palloc_init_mutex): Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104090
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 9 Sep 2005 09:00:42 +0000 (09:00 +0000)]
2005-09-09 Richard Guenther <rguenther@suse.de>
PR c++/23624
* fold-const.c (fold_ternary): Check truth_value_p before
calling invert_truthvalue.
* g++.dg/tree-ssa/pr23624.C: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104083
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Fri, 9 Sep 2005 08:39:18 +0000 (08:39 +0000)]
* Makefile.in (LIBGCC_DEPS): Add libgcc2.h.
* libgcc2.c (__clz_tab[], __popcount_tab[]): Set the fixed dimension of
these arrays.
* libgcc2.h (__clz_tab[], __popcount_tab[]): Add exports of these arrays.
* longlong.h: Only provide a prototype for the __clz_tab[] array if this
header has not been included from libgcc2.h.
* config/stormy16/stormy16-lib2.c: Include libgcc2.h rather than defining
own types.
Provide prototypes for exported functions.
Use the __clz_tab[] and __popcount_tab[] arrays provided by libgcc2.c.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104081
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Fri, 9 Sep 2005 06:45:15 +0000 (06:45 +0000)]
* match.h (gfc_match_equiv_variable): Declare.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104080
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Fri, 9 Sep 2005 06:35:55 +0000 (06:35 +0000)]
Fix filenames in last entry.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104078
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Fri, 9 Sep 2005 06:34:08 +0000 (06:34 +0000)]
PR fortran/19239
* Makefile.in (fortran/trans-expr.o): Depend on dependency.h.
* dependency.h (gfc_ref_needs_temporary_p): Declare.
* dependency.c (gfc_ref_needs_temporary_p): New function.
(gfc_check_fncall_dependency): Use it instead of inlined check.
By so doing, take advantage of the fact that character substrings
within an array reference also need a temporary.
* trans.h (GFC_SS_VECTOR): Adjust comment.
* trans-array.c (gfc_free_ss): Remove GFC_SS_VECTOR case.
(gfc_set_vector_loop_bounds): New function.
(gfc_add_loop_ss_code): Call it after evaluating the subscripts of
a GFC_SS_SECTION. Deal with the GFC_SS_VECTOR case by evaluating
the vector expression and caching its descriptor for use within
the loop.
(gfc_conv_array_index_ref, gfc_conv_vector_array_index): Delete.
(gfc_conv_array_index_offset): Handle scalar, vector and range
dimensions as separate cases of a switch statement. In the vector
case, use the loop variable to calculate a vector index and use the
referenced element as the dimension's index. Perform bounds checking
on this final index.
(gfc_conv_section_upper_bound): Return null for vector indexes.
(gfc_conv_section_startstride): Give vector indexes a start value
of 0 and a stride of 1.
(gfc_conv_ss_startstride): Adjust for new GFC_SS_VECTOR representation.
(gfc_conv_expr_descriptor): Expand comments. Generalize the
handling of the !want_pointer && !direct_byref case. Use
gfc_ref_needs_temporary_p to decide whether the variable case
needs a temporary.
(gfc_walk_variable_expr): Handle DIMEN_VECTOR by creating a
GFC_SS_VECTOR index.
* trans-expr.c: Include dependency.h.
(gfc_trans_arrayfunc_assign): Fail if the target needs a temporary.
2005-09-09 Richard Sandiford <richard@codesourcery.com>
PR fortran/21104
* trans.h (gfc_interface_sym_mapping, gfc_interface_mapping): Moved
from trans-expr.c.
(gfc_init_interface_mapping, gfc_free_interface_mapping)
(gfc_add_interface_mapping, gfc_finish_interface_mapping)
(gfc_apply_interface_mapping): Declare.
* trans-array.h (gfc_set_loop_bounds_from_array_spec): Declare.
(gfc_trans_allocate_temp_array): Add pre and post block arguments.
* trans-array.c (gfc_set_loop_bounds_from_array_spec): New function.
(gfc_trans_allocate_array_storage): Replace loop argument with
separate pre and post blocks.
(gfc_trans_allocate_temp_array): Add pre and post block arguments.
Update call to gfc_trans_allocate_array_storage.
(gfc_trans_array_constructor, gfc_conv_loop_setup): Adjust for new
interface to gfc_trans_allocate_temp_array.
* trans-expr.c (gfc_interface_sym_mapping, gfc_interface_mapping):
Moved to trans.h.
(gfc_init_interface_mapping, gfc_free_interface_mapping)
(gfc_add_interface_mapping, gfc_finish_interface_mapping)
(gfc_apply_interface_mapping): Make extern.
(gfc_conv_function_call): Build an interface mapping for array
return values too. Call gfc_set_loop_bounds_from_array_spec.
Adjust call to gfc_trans_allocate_temp_array so that code is
added to SE rather than LOOP.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104077
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Fri, 9 Sep 2005 06:22:28 +0000 (06:22 +0000)]
PR fortran/21104
* trans.h (gfc_interface_sym_mapping, gfc_interface_mapping): Moved
from trans-expr.c.
(gfc_init_interface_mapping, gfc_free_interface_mapping)
(gfc_add_interface_mapping, gfc_finish_interface_mapping)
(gfc_apply_interface_mapping): Declare.
* trans-array.h (gfc_set_loop_bounds_from_array_spec): Declare.
(gfc_trans_allocate_temp_array): Add pre and post block arguments.
* trans-array.c (gfc_set_loop_bounds_from_array_spec): New function.
(gfc_trans_allocate_array_storage): Replace loop argument with
separate pre and post blocks.
(gfc_trans_allocate_temp_array): Add pre and post block arguments.
Update call to gfc_trans_allocate_array_storage.
(gfc_trans_array_constructor, gfc_conv_loop_setup): Adjust for new
interface to gfc_trans_allocate_temp_array.
* trans-expr.c (gfc_interface_sym_mapping, gfc_interface_mapping):
Moved to trans.h.
(gfc_init_interface_mapping, gfc_free_interface_mapping)
(gfc_add_interface_mapping, gfc_finish_interface_mapping)
(gfc_apply_interface_mapping): Make extern.
(gfc_conv_function_call): Build an interface mapping for array
return values too. Call gfc_set_loop_bounds_from_array_spec.
Adjust call to gfc_trans_allocate_temp_array so that code is
added to SE rather than LOOP.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104075
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Fri, 9 Sep 2005 06:00:40 +0000 (06:00 +0000)]
PR fortran/12840
* trans.h (gfor_fndecl_internal_realloc): Declare.
(gfor_fndecl_internal_realloc64): Declare.
* trans-decl.c (gfor_fndecl_internal_realloc): New variable.
(gfor_fndecl_internal_realloc64): New variable.
(gfc_build_builtin_function_decls): Initialize them.
* trans-array.h (gfc_trans_allocate_temp_array): Add a fourth argument.
* trans-array.c (gfc_trans_allocate_array_storage): Add an argument
to say whether the array can grow later. Don't allocate the array
on the stack if so. Don't call malloc for zero-sized arrays.
(gfc_trans_allocate_temp_array): Add a similar argument here.
Pass it along to gfc_trans_allocate_array_storage.
(gfc_get_iteration_count, gfc_grow_array): New functions.
(gfc_iterator_has_dynamic_bounds): New function.
(gfc_get_array_constructor_element_size): New function.
(gfc_get_array_constructor_size): New function.
(gfc_trans_array_ctor_element): Replace pointer argument with
a descriptor tree.
(gfc_trans_array_constructor_subarray): Likewise. Take an extra
argument to say whether the variable-sized part of the constructor
must be allocated using realloc. Grow the array when this
argument is true.
(gfc_trans_array_constructor_value): Likewise.
(gfc_get_array_cons_size): Delete.
(gfc_trans_array_constructor): If the loop bound has not been set,
split the allocation into a static part and a dynamic part. Set
loop->to to the bounds for static part before allocating the
temporary. Adjust call to gfc_trans_array_constructor_value.
(gfc_conv_loop_setup): Allow any constructor to determine the
loop bounds. Check whether the constructor has a dynamic size
and prefer to use something else if so. Expect the loop bound
to be set later. Adjust call to gfc_trans_allocate_temp_array.
* trans-expr.c (gfc_conv_function_call): Adjust another call here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104073
138bc75d-0d04-0410-961f-
82ee72b054a4
jconner [Fri, 9 Sep 2005 01:39:36 +0000 (01:39 +0000)]
PR c++/23180
* g++.dg/init/pr23180-1.C: New test.
* g++.dg/init/pr23180-2.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104070
138bc75d-0d04-0410-961f-
82ee72b054a4
jconner [Fri, 9 Sep 2005 01:37:29 +0000 (01:37 +0000)]
PR c++/23180
* expr.c (expand_expr_addr_expr_1): Don't invoke
expand_simple_binop for EXPAND_INITIALIZER.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104069
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Fri, 9 Sep 2005 00:47:05 +0000 (00:47 +0000)]
PR debug/23190
* toplev.c (wrapup_global_declaration_1): Split out ...
(wrapup_global_declaration_2): ... from ...
(wrapup_global_declarations): ... here. Return bool.
(check_global_declaration_1): Split out ...
(check_global_declarations): from here.
(emit_debug_global_declarations): New.
* toplev.h (wrapup_global_declaration_1, wrapup_global_declaration_2,
check_global_declaration_1, emit_debug_global_declarations): Declare.
* c-decl.c (c_write_global_declarations_1): Don't create a vector
of decls. Call wrapup_global_declaration_1,
wrapup_global_declaration_2, check_global_declaration_1 directly.
(c_write_global_declarations_2): New.
(ext_block): New.
(c_write_global_declarations): Call c_write_global_declarations_2.
* langhooks.c (write_global_declarations): Call
emit_debug_global_declarations.
* cgraphunit.c (cgraph_varpool_remove_unreferenced_decls): Don't
remove decls that have DECL_RTL_SET_P.
* passes.c (rest_of_decl_compilation): Invoke
cgraph_varpool_finalize_decl for all but functions.
cp/
* decl.c (wrapup_globals_for_namespace): Call
emit_debug_global_declarations.
* decl2.c (cp_finish_file): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104065
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Fri, 9 Sep 2005 00:27:21 +0000 (00:27 +0000)]
2005-09-09 Paul Thomas <pault@gcc.gnu.org>
* gfortran.dg/g77/
19990905-0.f: Remove XFAIL, rearrange
equivalences and add comment to connect the test with
the PR. - forgotten in previous.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104061
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Fri, 9 Sep 2005 00:23:09 +0000 (00:23 +0000)]
2005-09-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/18878
* module.c (find_use_name_n): Based on original
find_use_name. Either counts number of use names for a
given real name or returns use name n.
(find_use_name, number_use_names): Interfaces to the
function find_use_name_n.
(read_module): Add the logic and calls to these functions,
so that mutiple reuses of the same real name are loaded.
2005-09-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/22304
PR fortran/23270
PR fortran/18870
PR fortran/16511
PR fortran/17917
* gfortran.h: Move definition of BLANK_COMMON_NAME from trans-
common.c so that it is accessible to module.c. Add common_head
field to gfc_symbol structure. Add field for the equivalence
name AND new attr field, in_equivalence.
* match.c (gfc_match_common, gfc_match_equivalence): In loops
that flag common block equivalences, emit an error if the
common blocks are different, using sym->common_head as the
common block identifier. Ensure that symbols that are equivalence
associated with a common block are marked as being in_common.
* module.c (write_blank_common): New.
(write_common): Use unmangled common block name.
(load_equiv): New function ported from g95.
(read_module): Call load_equiv.
(write_equiv): New function ported from g95. Correct
string referencing for gfc functions. Give module
equivalences a unique name.
(write_module): Call write_equiv and write_blank_common.
* primary.c (match_variable) Old gfc_match_variable, made
static and third argument provided to indicate if parent
namespace to be visited or not.
(gfc_match_variable) New. Interface to match_variable.
(gfc_match_equiv_variable) New. Interface to match_variable.
* trans-common.c (finish_equivalences): Provide the call
to create_common with a gfc_common_header so that
module equivalences are made external, rather than local.
(find_equivalences): Ensure that all members in common block
equivalences are marked as used. This prevents the subsequent
call to this function from making local unions.
* trans-decl.c (gfc_generate_function_code): Move the call to
gfc_generate_contained_functions to after the call to
gfc_trans_common so the use-associated, contained common
blocks produce the correct references.
(gfc_create_module_variable): Return for equivalenced symbols
with existing backend declaration.
2005-09-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/18878
* gfortran.dg/module_double_reuse.f90: New.
2005-09-09 Paul Thomas <pault@gcc.gnu.org>
PR fortran/23270
PR fortran/22304
PR fortran/18870
PR fortran/17917
PR fortran/16511
* gfortran.dg/common_equivalence_1.f: New.
* gfortran.dg/common_equivalence_2.f: New.
* gfortran.dg/common_equivalence_3.f: New.
* gfortran.dg/contained_equivalence_1.f90: New.
* gfortran.dg/module_blank_common.f90: New.
* gfortran.dg/module_commons_1.f90: New.
* gfortran.dg/module_equivalence_1.f90: New.
* gfortran.dg/nested_modules_1.f90: New.
* gfortran.dg/g77/
19990905-0.f: Remove XFAIL, rearrange
equivalences and add comment to connect the test with
the PR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104060
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 9 Sep 2005 00:17:06 +0000 (00:17 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104056
138bc75d-0d04-0410-961f-
82ee72b054a4
tobi [Thu, 8 Sep 2005 21:55:59 +0000 (21:55 +0000)]
fortran/
PR fortran/23765
* match.c (gfc_match_common): Remove unnecessary / wrong special
cases for end-of-statement.
testsuite/
PR fortran/23765
* gfortran.dg/common_6.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104046
138bc75d-0d04-0410-961f-
82ee72b054a4
fitzsim [Thu, 8 Sep 2005 21:26:25 +0000 (21:26 +0000)]
2005-09-08 Thomas Fitzsimmons <fitzsim@redhat.com>
PR libgcj/23761
* include/java-props.h (_Jv_Module_Load_Path): Declare variable.
* java/lang/natRuntime.cc (init): Call lt_dlsetsearchpath after
lt_dlinit.
* gnu/classpath/natSystemProperties.cc (_Jv_Module_Load_Path):
Define variable.
(_Jv_SetDLLSearchPath): Do not call lt_dlsetsearchpath. Set
_Jv_Module_Load_Path.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104044
138bc75d-0d04-0410-961f-
82ee72b054a4
tobi [Thu, 8 Sep 2005 19:42:59 +0000 (19:42 +0000)]
2005-09-08 Janne Blomqvist <jblomqvi@cc.hut.fi>
* gfortran.texi: Add section about implemented F2003 features.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104043
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Thu, 8 Sep 2005 18:56:42 +0000 (18:56 +0000)]
PR c++/23691
* decl2.c (mark_used): Instantiate static data members initialized
by constants, even in a template.
PR c++/23691
* g++.dg/template/static16.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104041
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Thu, 8 Sep 2005 18:46:06 +0000 (18:46 +0000)]
PR fortran/15326
* trans-array.c (gfc_add_loop_ss_code): Set ss->string_length in
the GFC_SS_FUNCTION case too.
* trans-expr.c (gfc_conv_function_val): Allow symbols to be bound
to function pointers as well as function decls.
(gfc_interface_sym_mapping, gfc_interface_mapping): New structures.
(gfc_init_interface_mapping, gfc_free_interface_mapping)
(gfc_get_interface_mapping_charlen, gfc_get_interface_mapping_array)
(gfc_set_interface_mapping_bounds, gfc_add_interface_mapping)
(gfc_finish_interface_mapping, gfc_apply_interface_mapping_to_cons)
(gfc_apply_interface_mapping_to_ref)
(gfc_apply_interface_mapping_to_expr)
(gfc_apply_interface_mapping): New functions.
(gfc_conv_function_call): Evaluate the arguments before working
out where the result should go. Make the null pointer case provide
the string length in parmse.string_length. Cope with non-constant
string lengths, using the above functions to evaluate such lengths.
Use a temporary typespec; don't assign to sym->cl->backend_decl.
Don't assign to se->string_length when returning a cached array
descriptor.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104040
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 8 Sep 2005 16:37:20 +0000 (16:37 +0000)]
* tree-vrp.c (extract_range_from_unary_expr): Do not set the range for
the result of a conversion if the new min and max cannot be compared.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104036
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Thu, 8 Sep 2005 16:06:54 +0000 (16:06 +0000)]
PR fortran/19928
* trans-array.c (gfc_conv_array_ref): Call gfc_advance_se_ss_chain
after handling scalarized references. Make "indexse" inherit from
"se" when handling AR_ELEMENTs.
(gfc_walk_variable_expr): Add GFC_SS_SCALAR entries for each
substring or scalar reference that follows an array section.
* trans-expr.c (gfc_conv_variable): When called from within a
scalarization loop, start out with "ref" pointing to the scalarized
part of the reference. Don't call gfc_advance_se_ss_chain here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104035
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Thu, 8 Sep 2005 13:55:30 +0000 (13:55 +0000)]
2005-09-08 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/s390.c (s390_sr_alias_set): Variable removed.
(override_options): Setting s390_sr_alias_set removed.
(save_fpr, save_gprs): Set alias set to vararg or frame.
(restore_fpr, restore_gprs, s390_emit_prologue): Replace
s390_sr_alias_set with get_frame_alias_set ().
(s390_gimplify_va_arg): Replace s390_sr_alias_set with
get_varargs_alias_set ().
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104034
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Thu, 8 Sep 2005 13:14:41 +0000 (13:14 +0000)]
2005-09-08 Andrew Pinski <pinskia@physics.uc.edu>
PR obj-c++/16816
* obj-c++.dg/selector-5.mm: New test.
* obj-c++.dg/selector-6.mm: New test.
2005-09-08 Andrew Pinski <pinskia@physics.uc.edu>
PR obj-c++/16816
* parser.c (cp_parser_objc_selector_expression): Treat CPP_SCOPE as
two CPP_COLON.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104033
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Thu, 8 Sep 2005 13:09:49 +0000 (13:09 +0000)]
2005-09-08 Andrew Pinski <pinskia@physics.uc.edu>
PR objc/20574
PR objc/19324
* c-parser.c (c_parser_objc_method_definition): If the next
token is not "{", error out and don't start the function.
2005-09-08 Andrew Pinski <pinskia@physics.uc.edu>
PR objc/20574
PR objc/19324
* objc.dg/error-1.m: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104032
138bc75d-0d04-0410-961f-
82ee72b054a4
rsandifo [Thu, 8 Sep 2005 09:20:07 +0000 (09:20 +0000)]
PR fortran/23373
* trans-expr.c (gfc_trans_pointer_assignment): Assign to a temporary
descriptor if the rhs is not a null pointer or variable.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104029
138bc75d-0d04-0410-961f-
82ee72b054a4
jvdelisle [Thu, 8 Sep 2005 06:52:04 +0000 (06:52 +0000)]
2005-09-07 Jerry DeLisle <jvdelisle@verizon.net>
PR libfortran/23760
* gfortran.dg/g77/1832.f: Remove long string in write statement
to allow the test to pass on correct list directed output with
prepended space.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104027
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Thu, 8 Sep 2005 00:30:48 +0000 (00:30 +0000)]
Fix xscale-elf gcc testsuite failure.
* gcc.dg/intmax_t-1.c: Disable for xscale*-*-elf*.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104022
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Thu, 8 Sep 2005 00:16:16 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104019
138bc75d-0d04-0410-961f-
82ee72b054a4
tkoenig [Wed, 7 Sep 2005 21:32:21 +0000 (21:32 +0000)]
2005-09-07 Thomas Koenig <Thomas.Koenig@online.de>
* gfortran.dg/parameter+save.f90: Rename to
* gfortran.dg/parameter_save.f90: .. this.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104011
138bc75d-0d04-0410-961f-
82ee72b054a4
fxcoudert [Wed, 7 Sep 2005 21:25:40 +0000 (21:25 +0000)]
PR libfortran/23262
* acinclude.m4 (LIBGFOR_CHECK_CRLF): New check.
* configure.ac: Use new check.
* configure.in: Regenerate.
* config.h.in: Regenerate.
* configure: Regenerate.
* io/transfer.c (next_record_w): Add case for CRLF as line
terminator.
* io/unix.c (tempfile, regular_file): Open files with
O_BINARY on systems with CRLF.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104009
138bc75d-0d04-0410-961f-
82ee72b054a4
tkoenig [Wed, 7 Sep 2005 21:08:24 +0000 (21:08 +0000)]
2005-09-07 Thomas Koenig <Thomas.Koenig@online.de>
PR fortran/20848
* symbol.c(check_conflict): Add conflict for parameter/save,
2005-09-07 Thomas Koenig <Thomas.Koenig@online.de>
PR fortran/20848
* gfortran.dg/parameter+save.f90: New test case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104005
138bc75d-0d04-0410-961f-
82ee72b054a4
pinskia [Wed, 7 Sep 2005 20:35:19 +0000 (20:35 +0000)]
2005-09-08 Andrew Pinski <pinskia@physics.uc.edu>
* tree-vrp.c (extract_range_from_expr): Move the check for non
nullness after the check for gimple invariant.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104002
138bc75d-0d04-0410-961f-
82ee72b054a4
sje [Wed, 7 Sep 2005 20:16:47 +0000 (20:16 +0000)]
PR libfortran/23419
* io/write.c (extract_int): Use memcpy to access buffer.
(extract_uint): Ditto.
(extract_real): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104000
138bc75d-0d04-0410-961f-
82ee72b054a4