1. 01 Apr, 2004 10 commits
    • sparc.h (DITF_CONVERSION_LIBFUNCS): Define to 0. · 45dcc026
      	* config/sparc/sparc.h (DITF_CONVERSION_LIBFUNCS): Define to 0.
      	* config/sparc/linux.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
      	* config/sparc/linux64.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
      	* config/sparc/sol2.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
      	(SOLARIS_CONVERSION_LIBFUNCS): Rename to SUN_CONVERSION_LIBFUNCS.
      	* config/sparc/sparc.c (sparc_init_libfuncs): Initialize optabs
      	with _Q_qtoll, _Q_qtoull and _Q_lltoq if DITF_CONVERSION_LIBFUNCS.
      	* config.gcc (sparc-*-linux*): Revert 2004-03-23 change.
      	* config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Likewise.
      	* config/sparc/t-linux: Removed.
      
      From-SVN: r80295
      Jakub Jelinek committed
    • re PR c++/14755 (miscompilation in bitfielded signed integers) · 0b612185
      	PR c++/14755
      	* fold-const.c (fold) <EQ_EXPR>: Properly compute newconst in
      	"bitfld++ == const" to "++bitfld == const + incr" transformations.
      
      	* gcc.c-torture/execute/20040331-1.c: New test.
      	* gcc.dg/20040331-1.c: New test.
      
      From-SVN: r80294
      Jakub Jelinek committed
    • expr.c (get_inner_reference): Use DECL_UNSIGNED, not TREE_UNSIGNED. · a150de29
      	* expr.c (get_inner_reference): Use DECL_UNSIGNED, not TREE_UNSIGNED.
      	* stor-layout.c (layout_decl): Likewise.
      	* tree.c (get_narrower): Likewise and also use BIT_FIELD_REF_UNSIGNED.
      	* fold-const.c (make_bit_field_ref): Use BIT_FIELD_REF_UNSIGNED.
      	* print-tree.c (print_node): Handle various used of unsigned_flag.
      	* tree.def (BIT_FIELD_REF): Update comment.
      	* tree.h (TREE_UNSIGNED): Deleted.
      	(DECL_UNSIGNED, BIT_FIELD_REF_UNSIGNED): New macros.
      
      	* cp/class.c (VTT_TOP_LEVEL_P): Use unsigned_flag directly.
      
      	* f/com.c (ffe_truthvalue_conversion, case COMPONENT_REF):
      	Use DECL_UNSIGNED and integer_onep.
      
      From-SVN: r80293
      Richard Kenner committed
    • * utils2.c: Update copyright notice. · 0c250f07
      From-SVN: r80291
      Arnaud Charlet committed
    • [multiple changes] · 6b6fcd3e
      2004-04-01  Robert Dewar  <dewar@gnat.com>
      
      	* checks.adb: Minor reformatting throughout
      	Note that prev checkin added RM reference to alignment warning
      
      2004-04-01  Ed Schonberg  <schonberg@gnat.com>
      
      	* exp_aggr.adb (Get_Component_Val): Treat a string literal as
      	non-static when building aggregate for bit-packed array.
      
      	* exp_ch4.adb (Expand_N_Slice): If a packed slice is an actual of a
      	function call that is itself the actual in a procedure call, build
      	temporary for it.
      
      	* exp_pakd.adb (Expand_Bit_Packed_Element_Set): If right-hand side is
      	a string literal, create a temporary for it, constant folding only
      	handles scalars here.
      
      2004-04-01  Vincent Celier  <celier@gnat.com>
      
      	* ali-util.adb (Post_Scan, Error_Msg, Error_Msg_S, Error_Msg_SC,
      	Error_Msg_SP): New empty procedures to instantiate the Scanner.
      	(Style, Scanner): Instantiations of Styleg and Scng to be able to scan
      	tokens.
      	(Accumulate_Checksum, Initialize_Checksum): Remove procedures.
      	(Get_File_Checksum): Use the instantiated scanner to scan all the tokens
      	and get the checksum.
      
      	* make.adb (Gnatmake): Do not insert into Q the Main_Source if it is
      	already in the Q.
      	Increase the Marking_Label at the end of the Multiple_Main_Loop,
      	instead of at the beginning.
      
      	* osint.adb (Lib_File_Name): Use Multi_Unit_Index_Character, not '~'
      	directly.
      	(Osint package elaboration): Change Multi_Unit_Index_Character to '$' if
      	on VMS.
      
      	* osint.ads (Multi_Unit_Index_Character): New Character global variable
      
      	* osint-c.adb (Set_Library_Info_Name): Use Multi_Unit_Index_Character,
      	not '~' directly.
      
      	* par.adb: Remove test on file name to detect language defined units.
      	Add test on unit name, after parsing, to detect language defined units
      	that are not compiled with -gnatg (except System.RPC and its children)
      
      	* par-ch10.adb (P_Compilation_Unit): In multi-unit sources, scan the
      	following units without style checking.
      
      	* switch-c.adb: Change -gnatC to -gnateI
      
      	* usage.adb: Document new switch -gnateInnn
      
      	* scng.adb (Accumulate_Token_Checksum): New procedure
      	(Scan): Call Accumulate_Token_Checksum after each identifier, reserved
      	word or literal number.
      	(Scan.Nlit.Scan_Integer): Do not accumulate internal '_' in litteral
      	numbers.
      
      2004-04-01  Thomas Quinot  <quinot@act-europe.fr>
      
      	* a-tasatt.adb,
      	g-comlin.adb, sinput-c.adb, s-secsta.adb, s-tpobop.adb,
      	switch-m.adb, 56taprop.adb, 5ginterr.adb, 5gmastop.adb,
      	5staprop.adb, 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb,
      	5vtpopde.adb: Add missing 'constant' keywords.
      
      2004-04-01  Javier Miranda  <miranda@gnat.com>
      
      	* par-ch4.adb: (P_Allocator): Code cleanup
      
      	* sem_ch3.adb (Access_Definition): Properly set the null-excluding
      	attribute.
      
      	* sinfo.ads: Complete documentation of previous change
      
      2004-04-01  GNAT Script  <nobody@gnat.com>
      
      	* Make-lang.in: Makefile automatically updated
      
      2004-04-01  Pascal Obry  <obry@gnat.com>
      
      	* gnatlink.adb (Process_Binder_File): Remove duplicate linker options
      	only on VMS.  This special handling was done because an old GNU/ld bug
      	on Windows which has been fixed.
      
      From-SVN: r80290
      Arnaud Charlet committed
    • re PR libstdc++/14775 ([3.4 only] LFS tests missing) · 2ae6e982
      2004-04-01  Paolo Carlini  <pcarlini@suse.de>
      
      	PR libstdc++/14775
      	* acconfig.h: Rename _GLIBCXX_MEM_LIMITS to _GLIBCXX_RES_LIMITS.
      	* acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT): Call
      	GLIBCXX_CHECK_SETRLIMIT_ancilliary for FSIZE too, adjust define
      	to _GLIBCXX_RES_LIMITS.
      	(GLIBCXX_CHECK_SETRLIMIT_ancilliary): Rename HAVE_MEMLIMIT_* to
      	HAVE_LIMIT_*.
      	* testsuite/testsuite_hooks.h: Declare set_file_limit.
      	* testsuite/testsuite_hooks.cc: Define it, using getrlimit
      	and setrlimit(RLIMIT_FSIZE).
      	* testsuite/27_io/fpos/14775.cc: New.
      	* config.h.in: Regenerate.
      	* configure: Likewise.
      
      From-SVN: r80289
      Paolo Carlini committed
    • builtins.c, [...]: Change most occurrences of TREE_UNSIGNED to TYPE_UNSIGNED. · 8df83eae
      	* builtins.c, c-aux-info.c, c-common.c, c-cppbuiltin.c, c-decl.c:
      	Change most occurrences of TREE_UNSIGNED to TYPE_UNSIGNED.
      	* c-format.c, c-opts.c, c-pretty-print.c, c-typeck.c: Likewise.
      	* calls.c, convert.c, dbxout.c, dojump.c, dwarf2out.c: Likewise.
      	* expmed.c, expr.c, fold-const.c, function.c, integrate.c: Likewise.
      	* optabs.c, sdbout.c, stmt.c, stor-layout.c, tree-dump.c: Likewise.
      	* tree.c, config/iq2000/iq2000.c, config/m32r/m32r.c: Likewise.
      	* config/mips/mips.c, config/rs6000/rs6000.c: Likewise.
      	* config/s390/s390.c, config/sparc/sparc.c, objc/objc-act.c: Likewise.
      	* stor-layout.c (layout_type, case COMPLEX_TYPE): Test for
      	REAL_TYPE, not INTEGER_TYPE.
      	(layout_type, case VECTOR_TYPE): Simplify code.
      	* tree.c (build_vector_type_for_mode): Remove dup unsigned setting.
      	* tree.h: Update comments.
      	(STRIP_NOPS): Use TYPE_UNSIGNED.
      	(TYPE_UNSIGNED): New macro.
      	(TYPE_TRAP_SIGNED): Remove now redundant check.
      	(SAVE_EXPR_NOPLACEHOLDER): Don't use TREE_UNSIGNED.
      
      	* cp/call.c (joust): Use TYPE_UNSIGNED, not TREE_UNSIGNED.
      	* cp/class.c (check_bitfield_decl): Likewise.
      	* cp/cvt.c (type_promotes_to): Likewise.
      	* cp/decl.c (finish_enum): Likewise.
      	* cp/mangle.c (write_builtin_type): Likewise.
      	* cp/semantics.c (finish_switch_cond, finish_unary_op_expr): Likewise.
      	* cp/typeck.c (type_after_usual_arithmetic_conversions): Likewise.
      	(build_binary_op): Likewise.
      
      	* f/com.c (ffecom_arrayref_): Use TYPE_UNSIGNED, not TREE_UNSIGNED.
      	(ffecom_expr_): Likewise.
      
      	* java/jcf-write.c (generate_bytecode_insns): Use TYPE_UNSIGNED.
      
      	* treelang/treetree.c (tree_lang_signed_or_unsigned_type):
      	Use TYPE_UNSIGNED, not TREE_UNSIGNED.
      
      	* ada/decl.c (gnat_to_gnu_entity, make_type_from_size):
      	Use TYPE_UNSIGNED, not TREE_UNSIGNED.
      	* ada/trans.c (tree_transform, convert_with_check): Likewise.
      	* ada/utils.c (gnat_signed_or_unsigned_type): Likewise.
      	(build_vms_descriptor, unchecked_convert): Likewise.
      	* ada/utils2.c (nonbinary_modular_operation): Likewise.
      
      From-SVN: r80287
      Richard Kenner committed
    • hashtab.c (htab_size): Move to top of file; mark inline. · d9175b87
              * hashtab.c (htab_size): Move to top of file; mark inline.
              (htab_elements): Likewise.
              (htab_mod, htab_mod_m2): New.
              (htab_delete): Refactor htab->size and htab->entries.
              (htab_empty): Likewise.
              (find_empty_slot_for_expand): Use htab_size, htab_mod, htab_mod_m2.
              (htab_find_with_hash, htab_find_slot_with_hash): Likewise.
              (htab_clear_slot): Use htab_size, htab_elements.
              (htab_traverse_noresize, htab_traverse): Likewise.
      
      From-SVN: r80278
      Richard Henderson committed
    • * gcc.dg/arm-mmx-1.c: Add -mabi=iwmmxt to dg-options. · 2cbf9f60
      From-SVN: r80265
      Paul Brook committed
    • Daily bump. · 10414f2a
      From-SVN: r80262
      GCC Administrator committed
  2. 31 Mar, 2004 8 commits
  3. 30 Mar, 2004 12 commits
  4. 29 Mar, 2004 8 commits
    • Update comment to reflect test. · 7be1c3fb
      From-SVN: r80067
      Loren J. Rittle committed
    • toplev.c (backend_init): Add missing call to inint_optimization_passes. · 6868bb1c
      	* toplev.c (backend_init): Add missing call to inint_optimization_passes.
      	* passes.c (init_optimization_passes, finish_optimization_passes): Output cgraph
      	dump file in non-unit-at-a-time mode.
      
      From-SVN: r80066
      Jan Hubicka committed
    • cris.h: Correct #ifdef to test for HAVE_AS_NO_MUL_BUG_ABORT_OPTION... · 43537bf6
      	* config/cris/cris.h: Correct #ifdef to test for
      	HAVE_AS_NO_MUL_BUG_ABORT_OPTION, not
      	HAVE_AS_MUL_BUG_ABORT_OPTION.
      
      From-SVN: r80065
      Hans-Peter Nilsson committed
    • error.c (dump_function_name): If T's DECL_LANG_SPECIFIC is null, just print the… · 93604b1a
      error.c (dump_function_name): If T's DECL_LANG_SPECIFIC is null, just print the literal name and return.
      
      	* error.c (dump_function_name): If T's DECL_LANG_SPECIFIC
      	is null, just print the literal name and return.
      
      From-SVN: r80058
      Zack Weinberg committed
    • function.c (put_var_into_stack): If old RTL was ADDRESSOF, update the address inside the old RTL. · 97955d55
      	* function.c (put_var_into_stack): If old RTL was ADDRESSOF, update
      	the address inside the old RTL.
      
      From-SVN: r80057
      Richard Kenner committed
    • [multiple changes] · 2820d220
      2004-03-29  Javier Miranda  <miranda@gnat.com>
      
      	* checks.adb (Null_Exclusion_Static_Checks): New subprogram
      	(Install_Null_Excluding_Check): Local subprogram that determines whether
      	an access node requires a runtime access check and if so inserts the
      	appropriate run-time check.
      	(Apply_Access_Check): Call Install_Null_Excluding check if required
      	(Apply_Constraint_Check): Call Install_Null_Excluding check if required
      
      	* checks.ads: (Null_Exclusion_Static_Checks): New subprogram
      
      	* einfo.ads: Fix typo in comment
      
      	* exp_ch3.adb (Build_Assignment): Generate conversion to the
      	null-excluding type to force the corresponding run-time check.
      	(Expand_N_Object_Declaration): Generate conversion to the null-excluding
      	type to force the corresponding run-time check.
      
      	* exp_ch5.adb (Expand_N_Assignment_Statement): Generate conversion to
      	the null-excluding type to force the corresponding run-time check.
      
      	* exp_ch6.adb (Expand_Call): Do not generate the run-time check in
      	case of access types unless they have the null-excluding attribute.
      
      	* sprint.adb (Sprint_Node_Actual): Give support to the null-exclusing
      	part.
      
      	* exp_util.ads: Fix typo in comment
      
      	* par.adb (P_Null_Exclusion): New subprogram
      	(P_Subtype_Indication): New formal that indicates if the null-excluding
      	part has been scanned-out and it was present
      
      	* par-ch3.adb, par-ch4.adb, par-ch6.adb: Give support to AI-231
      
      	* sem_aggr.adb: (Check_Can_Never_Be_Null): New subprogram
      	(Aggregate_Constraint_Checks): Generate conversion to the null-excluding
      	type to force the corresponding run-time check
      	(Resolve_Aggregate): Propagate the null-excluding attribute to the array
      	components
      	(Resolve_Array_Aggregate): Carry out some static checks
      	(Resolve_Record_Aggregate.Get_Value): Carry out some static check
      
      	* sem_ch3.adb (Access_Definition): In Ada 0Y the Can_Never_Be_Null
      	attribute must be set only if specified by means of the null-excluding
      	part. In addition, we must also propagate the access-constant attribute
      	if present.
      	(Access_Subprogram_Declaration, Access_Type_Declaration,
      	Analyze_Component_Declaration, Analyze_Object_Declaration,
      	Array_Type_Declaration, Process_Discriminants,
      	Analyze_Subtype_Declaration): Propagate the null-excluding attribute
      	and carry out some static checks.
      	(Build_Derived_Access_Type): Set the null-excluding attribute
      	(Derived_Type_Declaration, Process_Subtype): Carry out some static
      	checks.
      
      	* sem_ch4.adb (Analyze_Allocator): Carry out some static checks
      
      	* sem_ch5.adb (Analyze_Assignment): Carry out some static checks
      
      	* sem_ch6.adb (Process_Formals): Carry out some static checks.
      	(Set_Actual_Subtypes): Generate null-excluding subtype if the
      	null-excluding part was present; it is not required to be done here in
      	case of anonymous access types.
      	(Set_Formal_Mode): Ada 0Y allows anonymous access to have the null
      	value.
      
      	* sem_res.adb (Resolve_Actuals): Carry out some static check
      	(Resolve_Null): Allow null in anonymous access
      
      	* sinfo.adb: New subprogram Null_Exclusion_Present
      	All_Present and Constant_Present available on access_definition nodes
      
      	* sinfo.ads: New flag Null_Exclusion_Present on subtype_declaration,
      	object_declaration, derived_type_definition, component_definition,
      	discriminant_specification, access_to_object_definition,
      	access_function_definition, allocator, access_procedure_definition,
      	access_definition, parameter_specification, All_Present and
      	Constant_Present flags available on access_definition nodes.
      
      2004-03-29  Robert Dewar  <dewar@gnat.com>
      
      	* fname.adb, fname.ads, fname-sf.adb, fname-uf.adb, fname-uf.ads,
      	gnat1drv.adb, lib.adb, lib.ads, lib-load.adb, lib-writ.adb,
      	opt.ads, osint.adb, osint.ads, osint-c.adb, par.adb,
      	par-ch10.adb, par-load.adb, par-prag.adb, sfn_scan.adb,
      	sfn_scan.ads, sinput-l.adb, sinput-l.ads, switch-c.adb,
      	sem_prag.adb: Updates to handle multiple units/file
      
      	* par.adb: Change test for s-rpc to s-rp for detecting rpc and children
      
      	* par.adb, memtrack.adb, prj-makr.adb, prj-part.adb,
      	sem_util.adb: Minor reformatting
      
      	* sem_ch12.adb: Add comment for previous change
      
      2004-03-29  Laurent Pautet  <pautet@act-europe.fr>
      
      	* osint.adb (Executable_Prefix): Set Exec_Name to the current
      	executable name when not initialized. Otherwise, use its current value.
      
      	* osint.ads (Exec_Name): Move Exec_Name from body to spec in order to
      	initialize it to another executable name than the current one. This
      	allows to configure paths for an executable name (gnatmake) different
      	from the current one (gnatdist).
      
      2004-03-29  Ed Schonberg  <schonberg@gnat.com>
      
      	* exp_ch6.adb (Expand_Call): A call to a function declared in the
      	current unit cannot be inlined if it appears in the body of a withed
      	unit, to avoid order of elaboration problems in gigi.
      
      	* exp_ch9.adb (Build_Protected_Sub_Specification): Generate debugging
      	information for protected (wrapper) operation as well, to simplify gdb
      	use.
      
      	* sem_ch6.adb (Analyze_Subprogram_Body): For a private operation in a
      	protected body, indicate that the entity for the generated spec comes
      	from source, to ensure that references are properly generated for it.
      	(Build_Body_To_Inline): Do not inline a function that returns a
      	controlled type.
      
      	* sem_prag.adb (Process_Convention): If subprogram is overloaded, only
      	apply convention to homonyms that are declared explicitly.
      
      	* sem_res.adb (Make_Call_Into_Operator): If the operation is a function
      	that renames an equality operator and the operands are overloaded,
      	resolve them with the declared formal types, before rewriting as an
      	operator.
      
      2004-03-29  GNAT Script  <nobody@gnat.com>
      
      	* Make-lang.in: Makefile automatically updated
      
      From-SVN: r80055
      Arnaud Charlet committed
    • pthread7-rope.cc: Fix... · 63041e68
      2004-03-29  Paolo Carlini  <pcarlini@suse.de>
      
      	* testsuite/thread/pthread7-rope.cc: Fix, unpredictably, depending
      	on allocator behavior, the memory pointed by data2 may well be not
      	trashed.
      
      From-SVN: r80051
      Paolo Carlini committed
    • Daily bump. · 0e327147
      From-SVN: r80047
      GCC Administrator committed
  5. 28 Mar, 2004 2 commits