1. 23 Sep, 2008 17 commits
    • chrono: If _GLIBCXX_USE_MONOTONIC_CLOCK is defined... · 88399079
      2008-09-23  Chris Fairles <cfairles@gcc.gnu.org>
      
              * include/std/chrono: If _GLIBCXX_USE_MONOTONIC_CLOCK is defined, don't
              typedef monotonic_clock to system_clock and instead declare new class.
              * src/chrono.cc: Conditionally define monotonic_clock::now().
              * include/std/condition_variable (wait_until): Throw exception if
              __gthread_cond_timedwait returns with error other than timed_out. Use
              system_clock as known clock type (__clock_t) and add overloads for known
              and unknown clocks. In the unknown case, sync to the known clock.
              Implement overload taking a predicate.
              (wait_for): Implement overload taking a predicate.
              * config/abi/pre/gnu.ver: Add exports for monotonic_clock.
              * testsuite/30_threads/condition_variable_any/cons/assign_neg.cc: Modify
              line numbers.
              * testsuite/30_threads/condition_variable_any/cons/copy_neg.cc:
              Likewise.
              * testsuite/30_threads/condition_variable/cons/assign_neg.cc: Likewise.
              * testsuite/30_threads/condition_variable/cons/copy_neg.cc: Likewise.
              * testsuite/30_threads/condition_variable/member/1.cc: New.
              * testsuite/30_threads/condition_variable/member/2.cc: Likewise.
      
      From-SVN: r140603
      Chris Fairles committed
    • re PR libstdc++/37624 (22_locale/num_get/get/char/10.cc) · 1304d581
      2008-09-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR libstdc++/37624
      	* testsuite/22_locale/num_get/get/char/10.cc: Skip long double case
      	when strtold is not available.
      	* testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
      
      From-SVN: r140602
      Paolo Carlini committed
    • PR libstdc++/37391 continued. · e5f21110
      2008-09-23  Benjamin Kosnik  <bkoz@redhat.com>
      
      	PR libstdc++/37391 continued.
      	* doc/html/ext/pb_ds/assoc_examples.html: Don't use base tag,
      	specify full path for source file links.
      	* doc/html/ext/pb_ds/pq_examples.html: Same.
      
      From-SVN: r140600
      Benjamin Kosnik committed
    • c-tree.h: Add argument to c_objc_common_truthvalue_conversion, parser_build_binary_op. · ba47d38d
              * c-tree.h: Add argument to c_objc_common_truthvalue_conversion,
              parser_build_binary_op.
              * c-decl.c (build_enumerator): Pass location to build_binary_op.
              * c-typeck.c (build_array_ref): Same.
              (parser_build_unary_op): New location argument.
              (pointer_diff): Pass location to build_binary_op,
              c_objc_common_truthvalue_conversion.
              (build_modify_expr): Same.
              (build_unary_op): New location argument.
              (build_binary_op): New location argument.
              (c_objc_common_truthvalue_conversion): Pass location to
              c_*common_truthvalue_conversion.
              * c-convert.c (convert): Same.
              * c-common.c (binary_op_error): New location argument.
              (pointer_int_sum): Pass location to build_binary_op.
              (c_common_truthvalue_conversion): New location argument.
              (warn_for_sign_compare): Same.
              * c-common.h: Add location argument to c_common_truthvalue_conversion,
              binary_op_error, build_binary_op, warn_for_sign_compare.
              * c-parser.c (c_parser_condition): Pass location to
              c_*common_truthvalue_conversion.
              (c_parser_conditional_expression): Save condition's location and pass
              it on down.
              (c_parser_binary_expression): Same, but for the binary operator's
              location.
              (c_parser_omp_for_loop): Pass location to
              c_objc_common_truthvalue_conversion.
      objc/
              * objc-act.c (next_sjlj_build_enter_and_setjmp): Call
              c_common_truthvalue_conversion with location.
              (next_sjlj_build_catch_list): Same.
              (next_sjlj_build_try_catch_finally): Same.
      testsuite/
              * gcc.dg/Walways-true-1.c: Test column numbers.
              * gcc.dg/c90-const-expr-5.c: Same.
              * gcc.dg/compare4.c: Same.
              * gcc.dg/Werror-1.c: Same.
      cp/
              * typeck.c (build_array_ref): Pass location to cp_build_binary_op.
              (get_member_function_from_ptrfunc): Same.
              (build_x_binary_op): Same.
              (build_binary_op): Same.
              (cp_build_binary_op): New location argument.
              (pointer_diff): Pass location to cp_build_binary_op.
              (cp_truthvalue_conversion): Pass location to build_binary_op.
              (convert_ptrmem): Pass location to cp_build_binary_op.
              (cp_build_modify_expr): Same.
              (build_ptrmemfunc): Same.
              * init.c (expand_cleanup_for_base): Pass location to
              c_common_truthvalue_conversion.
              (build_new_1): Pass location to cp_build_binary_op.
              (build_vec_delete_1): Pass location to *build_binary_op,
              c_common_truthvalue_conversion.
              (build_vec_init): Same.
              (build_delete): Same.
              * decl.c (compute_array_index_type): Same.
              * call.c (build_new_op): Same.
              * rtti.c (build_dynamic_cast_1): Same.
              * cp-tree.h: Add argument to cp_build_binary_op.
              * semantics.c (handle_omp_for_class_iterator): Pass location to
              *build_binary_op, c_common_truthvalue_conversion.
              * decl2.c (get_guard_cond): Same.
      
      From-SVN: r140598
      Aldy Hernandez committed
    • re PR fortran/37588 (GENERIC type-bound procedure is not resolved) · f0ac18b7
      2008-09-23  Daniel Kraft  <d@domob.eu>
      
      	PR fortran/37588
      	* gfortran.h (gfc_compare_actual_formal): Removed, made private.
      	(gfc_arglist_matches_symbol): New method.
      	* interface.c (compare_actual_formal): Made static.
      	(gfc_procedure_use): Use new name of compare_actual_formal.
      	(gfc_arglist_matches_symbol): New method.
      	(gfc_search_interface): Moved code partially to new
      	gfc_arglist_matches_symbol.
      	* resolve.c (resolve_typebound_generic_call): Resolve actual arglist
      	before checking against formal and use new gfc_arglist_matches_symbol
      	for checking.
      	(resolve_compcall): Set type-spec of generated expression.
      
      2008-09-23  Daniel Kraft  <d@domob.eu>
      
      	PR fortran/37588
      	* gfortran.dg/typebound_generic_4.f03: New test.
      	* gfortran.dg/typebound_generic_5.f03: New test.
      
      From-SVN: r140594
      Daniel Kraft committed
    • re PR libgcj/8995 (race cases in interpreter) · f0580031
      2008-09-17  Andrew Haley  <aph@redhat.com>
      
              PR libgcj/8995:
      
              * defineclass.cc (_Jv_ClassReader::handleCodeAttribute):
              Initialize thread_count.
              * include/java-interp.h (_Jv_InterpMethod::thread_count): New
              field.
               (_Jv_InterpMethod::rewrite_insn_mutex): New mutex.
              (_Jv_InterpFrame:: _Jv_InterpFrame): Pass frame_type.
              * interpret.cc
              (ThreadCountAdjuster): New class.
              (_Jv_InterpMethod::thread_count): New field.
              (_Jv_InitInterpreter): Initialize rewrite_insn_mutex.
              Increment and decrement thread_count field in methods.
              * interpret-run.cc (REWRITE_INSN): Check thread_count <= 1.
              (REWRITE_INSN): Likewise.
              Declare a ThreadCountAdjuster.
              * java/lang/reflect/natVMProxy.cc (run_proxy): Initialize frame
              type as frame_proxy.
      
      From-SVN: r140593
      Andrew Haley committed
    • cgraph.c (cgraph_free_edge): Use sizeof(*e). · 5c0466b5
      2008-09-23  Martin Jambor  <mjambor@suse.cz>
      
      	* cgraph.c (cgraph_free_edge): Use sizeof(*e).
      	(cgraph_node_remove_callees): New temporary f.  Hold the next item
      	in f when looping.
      	(cgraph_node_remove_callers): Likewise.
      
      	* ipa-prop.c (ipa_edge_removal_hook): Use ATTRIBUTE_UNUSED.
      	(ipa_node_removal_hook): Likewise.
      
      	* doc/gimple.texi (gimple_copy_call_skip_args): Changed to
      	gimple_call_copy_skip_args and moved to the gimple_call section.
      	* gimple.c (gimple_copy_call_skip_args): Renamed to
      	gimple_call_copy_skip_args.  Changed al users.
      
      From-SVN: r140590
      Martin Jambor committed
    • locale_facets.tcc (__pad<>::_S_pad): Don't use const by value parameters. · 4a2095e2
      2008-09-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
       	* include/bits/locale_facets.tcc (__pad<>::_S_pad): Don't use const
      	by value parameters.
      	* include/bits/locale_facets.h (__pad<>::_S_pad): Likewise.
      
      From-SVN: r140584
      Paolo Carlini committed
    • pragma-init-fini.c: Use dg-warning in lieu of dg-error. · d85ec9f8
      	* gcc.dg/pragma-init-fini.c: Use dg-warning in lieu of dg-error.
      	* gcc.dg/pragma-align-2.c: Likewise.
      	* gcc.dg/format/cmn-err-1.c: Likewise.
      
      From-SVN: r140582
      Eric Botcazou committed
    • cmdlne-dU-16.c: Specify -std=c89 on Solaris. · 47854fae
      	* gcc.dg/cpp/cmdlne-dU-16.c: Specify -std=c89 on Solaris.
      	* gcc.dg/cpp/cmdlne-dU-17.c: Likewise.
      
      From-SVN: r140581
      Eric Botcazou committed
    • re PR fortran/37580 (Accepts "pointer(:) => target" without lower bound) · 54799fcd
      2008-09-22  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/37580
              * expr.c (gfc_check_pointer_assign): Add checks for pointer
              remapping.
      
      2008-09-22  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/37580
              * gfortran.dg/pointer_assign_5.f90: New test.
              * gfortran.dg/pointer_assign_6.f90: New test.
      
      From-SVN: r140580
      Tobias Burnus committed
    • re PR fortran/37498 (Incorrect array value returned - 4.3 ABI Broken) · d7445152
      2008-09-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org
      
      	PR fortran/37498
      	* trans-io.c (gfc_build_io_library_fndecls): Bump pad size.
      	(build_dt): Set mask bit for IOPARM_dt_f2003.
      	* ioparm.def: Add IOPARM_dt_f2003.
      
      2008-09-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org
      
      	PR libfortran/37498
      	* file_pos (st_endfile): Clear memory only for libfortran 4.3 private
      	area.
      	* list_read.c (eat_separator): Only access F2003 I/O parameters if
      	IOPARM_DT_HAS_F2003 bit is set. (parse_real): Ditto.
      	(read_real): Ditto.
      	* read.c (read_a): Likewise. (read_a_char4): Likewise though not
      	strictly necessary. (read_f): Likewise.
      	* io.h (unit_sign_s): New enumerator to allow duplication of
      	st_parameter structures. (IOPARM_DT_HAS_F2003): New mask bit.
      	(st_parameter_43): New structure copied from 4.3 version of 
      	st_paramater_dt private section. (st_parameter_44): New structure with
      	F2003 items added. (st_parameter_dt): Modified to create union of new
      	and old structures to allow correct memory setting for 4.3 ABI
      	compatibility. Bumped the pad size.
      	* transfer.c (read_sf): Do not use F2003 I/O memory areas unless
      	IOPARM_DT_HAS_F2003 bit has been set. (read_block_form): Ditto.
      	(formatted_transfer_scalar): Ditto. (data_transfer_init): Ditto and
      	add comment, fix formatting.
      	* write.c (write_default_char4): Likewise though not strictly necessary.
      	(write_utf8_char4): Ditto. (write_character): Ditto.
      	(write_real_g0): Ditto. (list_formatted_write_scalar): Ditto.
      	(nml_write_obj): Ditto. (namelist_write): Ditto.
      	* write_float.def (calculate_sign): Eliminate warning by including all
      	cases in switch. (output_float): Output only decimal point of F2003 flag
      	is not set.
      
      From-SVN: r140576
      Jerry DeLisle committed
    • 2008-09-22 Paolo Carlini <paolo.carlini@oracle.com> · 9992fbb5
       	* Fix date of last ChangeLog entry.
      
      From-SVN: r140575
      Paolo Carlini committed
    • PR libstdc++/32422, DR 23 [Ready in R60] · 5ef46f95
      2008-09-23  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR libstdc++/32422, DR 23 [Ready in R60]
      	* config/locale/gnu/c_locale.cc (__convert_to_v(const char*, float&,
      	ios_base::iostate&, const __c_locale&), __convert_to_v(const char*,
      	double&, ios_base::iostate&, const __c_locale&), __convert_to_v(const
      	char*, long double&, ios_base::iostate&, const __c_locale&)): Implement
      	DR 23 and deal correctly with broken exponents.
      	* config/locale/generic/c_locale.cc (__convert_to_v(const char*,
      	float&, ios_base::iostate&, const __c_locale&), __convert_to_v(const
      	char*, double&, ios_base::iostate&, const __c_locale&),
      	__convert_to_v(const char*, long double&, ios_base::iostate&, const
      	__c_locale&)): Likewise.
      	* include/bits/locale_facets.tcc (num_get<>::_M_extract_int(_InIter,
      	_InIter, ios_base&, ios_base::iostate&, _ValueT&)): Likewise.
      	(num_get<>::_M_extract_float(_InIter, _InIter, ios_base&,
      	ios_base::iostate&, string&): Change grouping check to set instead of
      	OR failbit; do not check for eofbit here...
      	(num_get<>::do_get(iter_type, iter_type, ios_base&,
      	ios_base::iostate&, float&), num_get<>::do_get(iter_type, iter_type,
      	ios_base&, ios_base::iostate&, double&), num_get<>::do_get(iter_type,
      	iter_type, ios_base&, ios_base::iostate&, long double&),
      	num_get<>::__do_get(iter_type, iter_type, ios_base&,
      	ios_base::iostate&, double&)): ... do it here instead.
      	(num_get<>::do_get(iter_type, iter_type, ios_base&,
      	ios_base::iostate&, bool&)): Implement DR 23.
      	(num_get<>::do_get(iter_type, iter_type, ios_base&,
      	ios_base::iostate&, void*&)): Adjust.
      	* doc/xml/manual/intro.xml: Add and entry for DR 23.
      	* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/10.cc:
      	Adjust.
      	* testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
      	Likewise.
      	* testsuite/22_locale/num_get/get/wchar_t/22131.cc: Likewise.
      	* testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
      	* testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
      	* testsuite/22_locale/num_get/get/wchar_t/15.cc: Likewise.
      	* testsuite/22_locale/num_get/get/wchar_t/16.cc: Likewise.
      	* testsuite/22_locale/num_get/get/char/22131.cc: Likewise.
      	* testsuite/22_locale/num_get/get/char/10.cc: Likewise.
      	* testsuite/22_locale/num_get/get/char/12.cc: Likewise.
      	* testsuite/22_locale/num_get/get/char/15.cc: Likewise.
      	* testsuite/22_locale/num_get/get/char/16.cc: Likewise.
      
      From-SVN: r140574
      Paolo Carlini committed
    • MAINTAINERS (Write After Approval): Add myself. · 441154b1
      2008-09-22  Chris Fairles  <cfairles@gcc.gnu.org>
      
              * MAINTAINERS (Write After Approval): Add myself.
      
      From-SVN: r140573
      Chris Fairles committed
    • Daily bump. · 0d64ae21
      From-SVN: r140571
      GCC Administrator committed
  2. 22 Sep, 2008 19 commits
  3. 21 Sep, 2008 4 commits
    • re PR rtl-optimization/33642 (unrecognizable insn for -frtl-abstract-sequences) · b2530b05
      	PR rtl-optimization/33642
      	* gcc.c-torture/compile/pr11832.c: XFAIL on sh*-*-*.
      	* gcc.c-torture/compile/pr33009.c: Likewise.
      
      From-SVN: r140534
      Kaz Kojima committed
    • re PR fortran/37583 (ICE "insert_bbt(): Duplicate key" for self-calling ENTRY subprogram) · ecd3b73c
      2008-09-21  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/37583
      	* decl.c (scalarize_intrinsic_call): Both subroutines and
      	functions can give a true for get_proc_mame's last argument so
      	remove the &&gfc_current_ns->proc_name->attr.function.
      	resolve.c (resolve_actual_arglist): Add check for recursion by
      	reference to procedure as actual argument.
      
      2008-09-21  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/37583
      	* gfortran.dg/entry_18.f90: New test.
      
      From-SVN: r140532
      Paul Thomas committed
    • sparc-protos.h (gen_compare_operator): Declare. · 19047e4a
      	* config/sparc/sparc-protos.h (gen_compare_operator): Declare.
      	(sparc_emit_float_lib_cmp): Change return type.
      	* config/sparc/sparc.c (gen_compare_reg): Add comment about TFmode.
      	(gen_compare_operator): New function.
      	(sparc_emit_float_lib_cmp): Return the new operator to be used in
      	the comparison sequence.  Minor tweaks.
      	* config/sparc/sparc.md (seq, sne, sgt, slt, sge, sle): Assert
      	that the final operator and the result of sparc_emit_float_lib_cmp
      	match for software TFmode; use emit_insn in lieu of emit_jump_insn.
      	(beq, bne, bgt, blt, bge, ble, bunordered, bordered, bungt, bunlt,
      	buneq, bunge, bunle, bltgt): Assert that the final operator and the
      	result of sparc_emit_float_lib_cmp match for software TFmode.
      	(movqicc, movhicc, movsicc, movdicc): Merge into...
      	(mov<I:mode>cc): ...this.
      	(movsfcc, movdfcc, movtfcc): Merge into...
      	(mov<F:mode>cc): ...this.
      	(movqi_cc_sp64, movhi_cc_sp64, movsi_cc_sp64, movdi_cc_sp64): Merge
      	into...
      	(mov<I:mode>_cc_v9): ...this.
      	(movdi_cc_sp64_trunc): Delete.
      	(movqi_cc_reg_sp64, movhi_cc_reg_sp64, movsi_cc_reg_sp64,
      	movdi_cc_reg_sp64): Merge into...
      	(mov<I:mode>_cc_reg_sp64): ...this.
      	(movsf_cc_sp64): Rename into...
      	(movsf_cc_v9): ...this.
      	(movdf_cc_sp64): Rename into...
      	(movdf_cc_v9): ...this.
      	(movtf_cc_hq_sp64): Rename into...
      	(movtf_cc_hq_v9): ...this.
      	(movtf_cc_sp64): Rename into...
      	(movtf_cc_v9): ...this.  Adjust for renaming of movdf_cc_sp64.
      
      From-SVN: r140530
      Eric Botcazou committed
    • re PR fortran/35846 (ICE on nested character constructors) · 4b7f8314
      2008-09-21  Daniel Kraft  <d@domob.eu>
      
      	PR fortran/35846
      	* trans.h (gfc_conv_string_length): New argument `expr'.
      	* trans-expr.c (flatten_array_ctors_without_strlen): New method.
      	(gfc_conv_string_length): New argument `expr' that is used in a new
      	special case handling if cl->length is NULL.
      	(gfc_conv_subref_array_arg): Pass expr to gfc_conv_string_length.
      	* trans-array.c (gfc_conv_expr_descriptor): Ditto.
      	(gfc_trans_auto_array_allocation): Pass NULL as new expr.
      	(gfc_trans_g77_array), (gfc_trans_dummy_array_bias): Ditto.
      	(gfc_trans_deferred_array): Ditto.
      	(gfc_trans_array_constructor): Save and restore old values of globals
      	used for bounds checking.
      	* trans-decl.c (gfc_trans_dummy_character): Ditto.
      	(gfc_trans_auto_character_variable): Ditto.
      
      2008-09-21  Daniel Kraft  <d@domob.eu>
      
      	PR fortran/35846
      	* gfortran.dg/nested_array_constructor_1.f90: New test.
      	* gfortran.dg/nested_array_constructor_2.f90: New test.
      	* gfortran.dg/nested_array_constructor_3.f90: New test.
      	* gfortran.dg/nested_array_constructor_4.f90: New test.
      	* gfortran.dg/nested_array_constructor_5.f90: New test.
      	* gfortran.dg/nested_array_constructor_6.f90: New test.
      
      From-SVN: r140529
      Daniel Kraft committed