Commit Graph

39214 Commits

Author SHA1 Message Date
Gary Dismukes
0815d36a98 * layout.adb:
(Get_Max_Size): Fix "start of processing" comment to say Get_Max_Size.
	(Discrimify): Go back to setting the Etypes of the selected component
	because the Vname component does not exist at this point and will
	fail name resolution. Also set Analyzed.
	Remove with and use of Sem_Res.

From-SVN: r47648
2001-12-05 03:00:43 +01:00
Arnaud Charlet
edc0f304c7 * Makefile.in: (HIE_SOURCES): add s-fat*.
From-SVN: r47647
2001-12-05 02:54:49 +01:00
Robert Dewar
3221314229 * sem_attr.adb:
(Compile_Time_Known_Attribute): New procedure.
	(Eval_Attribute, case Size): Use Compile_Time_Known_Attribute to ensure
	 proper range check.

From-SVN: r47646
2001-12-05 02:48:56 +01:00
Ed Schonberg
c0def2adcc sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before processing discriminants to diagnose illegal...
* sem_ch7.adb (New_Private_Type): Set Is_Tagged_Type flag before
	processing discriminants to diagnose illegal default values.

From-SVN: r47645
2001-12-05 02:43:31 +01:00
Andrew MacLeod
0626ef8add rtl.h (initialize_uninitialized_subregs): New prototype.
2001-12-04  Andrew MacLeod  <amacleod@redhat.com>

	* rtl.h (initialize_uninitialized_subregs): New prototype.
	* toplev.c (rest_of_compilation): Call initialize_uninitialized_subregs
	when optimization is on.
	* flow.c (find_regno_partial): Find subregs within an expression.
	(initialize_uninitialized_subregs): Initialize live on entry registers
	which are used in subreg expressions.

From-SVN: r47644
2001-12-05 01:39:41 +00:00
Ed Schonberg
ee0a48c5e8 sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide access discriminant within a type extension...
* sem_attr.adb (Resolve_Attribute): Handle properly an non-classwide
	access discriminant within a type extension that constrains its
	parent discriminants.

From-SVN: r47643
2001-12-05 02:38:41 +01:00
Ed Schonberg
dd5875a602 sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication is malformed...
* sem_ch3.adb (Find_Type_Of_Subtype_Indic): If subtype indication
	is malformed, use instance of Any_Id to allow analysis to proceed.

	* par-ch12.adb (P_Formal_Type_Declaration): Propagate Error if
	type definition is illegal.
	(P_Formal_Derived_Type_Definition): Better recovery when TAGGED is
	misplaced.

From-SVN: r47642
2001-12-05 02:21:50 +01:00
Ed Schonberg
c2a41e5742 sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to constants.
* sem_warn.adb (Output_Unreferenced_Messages): Extend previous fix to
	constants.

From-SVN: r47641
2001-12-05 02:18:06 +01:00
Robert Dewar
0ae8475357 * errout.adb: Minor reformatting
From-SVN: r47640
2001-12-05 02:10:00 +01:00
Robert Dewar
63db260eff exp_util.adb: Minor reformatting from last change
* exp_util.adb: Minor reformatting from last change

	* errout.adb (Check_For_Warning): For a Raised_Constraint_Error node
	which is a rewriting of an expression, traverse the original
	expression to remove warnings that may have been posted on it.

From-SVN: r47639
2001-12-05 02:06:25 +01:00
Ed Schonberg
c6d289f47e exp_util.adb (Must_Be_Aligned): Return false for a component of a record that has other packed components.
* exp_util.adb (Must_Be_Aligned): Return false for a component of a
	record that has other packed components.

From-SVN: r47638
2001-12-05 01:56:39 +01:00
Douglas B Rupp
5917e80db6 * adaint.c: Minor cleanups.
From-SVN: r47637
2001-12-05 01:48:27 +01:00
Douglas B Rupp
2c70f9ddc3 * adaint.c: Do not use utime.h on vxworks.
From-SVN: r47636
2001-12-05 01:33:05 +01:00
Martin v. Löwis
5f10688fb6 da.po, [...]: New files.
2001-12-05  Martin v. L�wis  <loewis@informatik.hu-berlin.de>

	* da.po, es.po, fr.po, ja.po: New files.

From-SVN: r47635
2001-12-05 00:09:14 +00:00
Tom Tromey
0c88d7f819 verify.cc (_Jv_BytecodeVerifier::linked_utf8): New structure.
* verify.cc (_Jv_BytecodeVerifier::linked_utf8): New structure.
	(_Jv_BytecodeVerifier::utf8_list): New field.
	(_Jv_BytecodeVerifier::_Jv_BytecodeVerifier): Initialize it.
	(_Jv_BytecodeVerifier::~_Jv_BytecodeVerifier): Free it.
	(_Jv_BytecodeVerifier::make_utf8_const): New method.
	(_Jv_BytecodeVerifier::get_one_type): Use it.
	(_Jv_BytecodeVerifier::type::merge): When using local semantics,
	if the destination type is already unsuitable then we didn't
	change.

From-SVN: r47634
2001-12-04 23:54:43 +00:00
Phil Edwards
7c1e833675 Makefile.in: Add INSTALL_SCRIPT using INSTALL definition.
2001-12-04  Phil Edwards  <pme@gcc.gnu.org>

	* Makefile.in:  Add INSTALL_SCRIPT using INSTALL definition.

From-SVN: r47633
2001-12-04 23:42:45 +00:00
DJ Delorie
ffe8558410 re PR bootstrap/3388 (3.0 bootstrap failure, native sparc-sun-solaris2.5.1, fixinc/fixincl.c)
* fixinc/fixincl.c (initialize): Avoid problemsome macro
parameter names (PR 3388).

From-SVN: r47632
2001-12-04 18:29:42 -05:00
Alan Modra
c3bb62b90a rs6000.c (rs6000_legitimize_address): Fix typo.
* config/rs6000/rs6000.c (rs6000_legitimize_address): Fix typo.
	* config/rs6000/rs6000.h (LEGITIMATE_LO_SUM_ADDRESS_P): Here too.

From-SVN: r47631
2001-12-05 09:53:19 +10:30
Arnaud Charlet
e59b3387bd Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes more confusion than it solves.
* Makefile.adalib: Clarify step 3 (use of gnat.adc) as it causes
	more confusion than it solves.

From-SVN: r47630
2001-12-05 00:13:07 +01:00
Joseph Myers
db3acfa547 re PR c/4787 (Different anonymous variables declared but only one allocated when the initialization is the same)
* c-common.def (COMPOUND_LITERAL_EXPR): New.
	* c-common.c (c_expand_expr): Handle COMPOUND_LITERAL_EXPR.
	(c_staticp): New function.
	* c-common.h (COMPOUND_LITERAL_EXPR_DECL): New.
	(c_staticp): Declare.
	* c-typeck.c (default_function_array_conversion, build_unary_op):
	Don't handle CONSTRUCTOR specially.
	(lvalue_p, mark_addressable): Handle COMPOUND_LITERAL_EXPR.
	* c-decl.c (build_compound_literal): New function.
	* c-tree.h (build_compound_literal): Declare.
	* c-parse.in (primary): Use build_compound_literal.
	* c-lang.c (LANG_HOOKS_STATICP): Define.
	* objc/objc-lang.c (LANG_HOOKS_STATICP): Likewise.
	* doc/c-tree.texi: Document COMPOUND_LITERAL_EXPR.
	* doc/extend.texi: Update documentation of compound literals.
	Fixes PR c/4787.

testsuite:
	* gcc.c-torture/execute/20000722-1.x,
	gcc.c-torture/execute/20010123-1.x: Remove.
	* gcc.c-torture/compile/init-3.c: Don't use a compound literal.
	* gcc.dg/c90-complit-1.c, gcc.dg/c99-complit-1.c,
	gcc.dg/c99-complit-2.c: New tests.

From-SVN: r47629
2001-12-04 22:55:40 +00:00
Joseph Myers
d062a680ab langhooks.h (struct lang_hooks): Add staticp.
* langhooks.h (struct lang_hooks): Add staticp.
	* langhooks-def.h (lhd_staticp, LANG_HOOKS_STATICP): New.
	(LANG_HOOKS_INITIALIZER): Add LANG_HOOKS_STATICP.
	* langhooks.c (lhd_staticp): New function.
	* tree.c (staticp): Call lang_hooks.staticp for language-specific
	tree codes.

From-SVN: r47628
2001-12-04 22:49:20 +00:00
Neil Booth
69927b59f2 cppspec.c (lang_specific_driver): Set is_cpp_driver.
* cppspec.c (lang_specific_driver): Set is_cpp_driver.
	* gcc.c (process_command): Ensure the cpp driver sees
	--help and --target-help, and that the help is printed
	exactly once.

From-SVN: r47627
2001-12-04 22:26:16 +00:00
Geert Bosch
e288604a6a * einfo.h, nmake.adb, nmake.ads, sinfo.h, treeprs.ads: Regenerate.
From-SVN: r47626
2001-12-04 22:28:25 +01:00
Geert Bosch
5ac21013f7 Makefile.in (update-sources): New target.
* Makefile.in (update-sources): New target.
	For use by gcc_release script.

From-SVN: r47625
2001-12-04 22:10:34 +01:00
Ed Schonberg
7dd5bd5e53 sem_prag.adb (Analyze_Pragma, [...]): do not treat as a configuration pragma...
* sem_prag.adb (Analyze_Pragma, case Validity_Checks): do not treat as
	a configuration pragma, it is now legal wherever a pragma can appear.

From-SVN: r47624
2001-12-04 22:00:26 +01:00
Tom Tromey
ef9f3bc449 defineclass.cc (read_one_method_attribute): `end_pc' for an exception can be equal to code length.
* defineclass.cc (read_one_method_attribute): `end_pc' for an
	exception can be equal to code length.
	* verify.cc (_Jv_BytecodeVerifier::verify_instructions_0): Removed
	`start_PC' from error invocation where it didn't make sense, and
	updated error message.  Use `copy' to copy a state.  Only try to
	merge current state with saved state when we've fallen through
	from the previous instruction.
	(_Jv_BytecodeVerifier::pop_ref_or_return): New method.
	(_Jv_BytecodeVerifier::verify_instructions_0) [op_astore_0]: Use
	pop_ref_or_return.
	(_Jv_BytecodeVerifier::verify_instructions_0) [op_astore]:
	Likewise.
	(_Jv_BytecodeVerifier::push_jump_merge): Pass max_locals, not
	max_stack, to merge.
	(_Jv_BytecodeVerifier::verify_instructions_0): Likewise.
	(_Jv_BytecodeVerifier::push_jump_merge): Merge from new state into
	state at branch target, not vice versa.
	(_Jv_BytecodeVerifier::branch_prepass): Allow end of exception to
	be equal to code length.  Removed redundant test to see if
	exception start is after exception end.
	(_Jv_BytecodeVerifier::verify_instructions_0): Type of argument to
	`finally' is Throwable.

From-SVN: r47623
2001-12-04 20:18:35 +00:00
Benjamin Kosnik
5b5e609d03 [multiple changes]
2001-12-04  Benjamin Kosnik  <bkoz@redhat.com>

	* src/Makefile.am (sources): Add ext-inst.cc.
	* src/Makefile.in: Regenerate.
	* src/ext-inst.cc: New file.
	* include/bits/stl_threads.h: Format.
	* src/globals.cc: Add instantiation for _S_swap_lock.

	* testsuite/18_support/numeric_limits.cc: Add numeric_limits<B>
	instantiation.

2001-12-04  John David Anglin  <dave@hiauly1.hia.nrc.ca>

	* testsuite/22_locale/numpunct_members_wchar_t.cc: Only compile
	and execute test01 if _GLIBCPP_USE_WCHAR_T is defined.
	* testsuite/26_numerics/complex_inserters_extractors.cc: Provide
	for explicit instantiation of class std::basic_string<char,
	gnu_char_traits, std::allocator<char> >.

From-SVN: r47622
2001-12-04 20:13:41 +00:00
David Edelsohn
344c6d1f13 * config/elfos.h (ASM_OUTPUT_INTERNAL_LABEL): Display count unsigned.
From-SVN: r47620
2001-12-04 14:38:45 -05:00
Per Bothner
4f88ccda2d check-init.c: Handle definite unassignment to finals in addition to definite assignment.
* check-init.c:   Handle definite unassignment to finals in addition
	to definite assignment.		[see ChangeLog]

From-SVN: r47619
2001-12-04 11:30:13 -08:00
Hans-Peter Nilsson
ff52499130 cris.h (OPTIMIZATION_OPTIONS): Don't unset flag_strict_aliasing.
* config/cris/cris.h (OPTIMIZATION_OPTIONS): Don't unset
	flag_strict_aliasing.  Use separate assignment statements.

From-SVN: r47618
2001-12-04 18:42:24 +00:00
Zack Weinberg
a078a58956 build-make, cross-make: Delete file.
* build-make, cross-make: Delete file.
	* configure.in: Set and substitute CROSS, ALL,
	SYSTEM_HEADER_DIR, HOST_PREFIX, HOST_PREFIX_1, HOST_CC,
	HOST_CFLAGS, STMP_FIXINC, and STMP_FIXPROTO depending on
	whether build == host and host == target.  Do not
	AC_SUBST_FILE build_overrides or cross_overrides.  Do not
	AC_SUBST cross_defines or extra_c_flags.
	* Makefile.in (NATIVE_SYSTEM_HEADER_DIR): New.
	(SYSTEM_HEADER_DIR, HOST_PREFIX, HOST_CC, HOST_PREFIX,
	HOST_PREFIX_1, HOST_CFLAGS, ALL, INTERNAL_CFLAGS): Set
	partially or completely with autoconf-substituted @variable@
	notation.
	(INSTALL_TARGET, @cross_defines@, @cross_overrides@,
	@build_overrides@, @extra_c_flags@, all.build, install-build,
	install-cross-rest, install-float-h-cross): Deleted.
	(install-normal): Rename to install.  Delete old "install"
	indirection rule.
	* ada/Makefile.in, ch/Makefile.in: Don't set ALL.  Delete
	@cross_defines@, @cross_overrides@, @build_overrides@ stanzas.
	INTERNAL_CFLAGS is now @CROSS@ -DIN_GCC; update comment.

From-SVN: r47617
2001-12-04 18:02:50 +00:00
Andrew MacLeod
8a38ed868f stmt.c (expand_return): Clear destination instead of clobbering it when setting a return value via bitsets.
2001-12-04  Andrew MacLeod  <amacleod@redhat.com>

	* stmt.c (expand_return): Clear destination instead of clobbering it
	when setting a return value via bitsets.

From-SVN: r47616
2001-12-04 17:37:23 +00:00
Alexandre Oliva
be1bb2a4da tree.c (get_callee_fndecl): Only use DECL_ABSTRACT_ORIGIN if it has DECL_SAVED_TREE.
* tree.c (get_callee_fndecl): Only use DECL_ABSTRACT_ORIGIN if
it has DECL_SAVED_TREE.

From-SVN: r47615
2001-12-04 17:11:05 +00:00
Geert Bosch
0839863cfa einfo.adb (Has_Pragma_Pure_Function): New flag.
* einfo.adb (Has_Pragma_Pure_Function): New flag.
	Fix problem that stopped ceinfo from working

	* einfo.ads (Has_Pragma_Pure_Function): New flag.

	* sem_prag.adb (Pure_Function): Set new flag Has_Pragma_Pure_Function.

From-SVN: r47614
2001-12-04 17:55:48 +01:00
Douglas B Rupp
9678de4977 * gnatchop.adb:
(File_Time_Stamp): New procedure.
	(Preserve_Mode): New boolean.
	(Write_Unit): Pass time stamp.
	Implement -p switch (preserve time stamps).

	* gnatcmd.adb (CHOP): Add translation for -p (/PRESERVE).

	* gnatchop.adb: Do usage info for -p switch

	* adaint.h (__gnat_set_file_time_name): New function

	* adaint.c (__gnat_set_file_time_name): Implement

	* adaint.h: Fix typo

From-SVN: r47613
2001-12-04 17:37:55 +01:00
Alexandre Oliva
b0ca54affc Revert previous patch
From-SVN: r47612
2001-12-04 15:10:16 +00:00
Andreas Jaeger
667e5c5da3 * trans.c (tree_transform): Adjust call of expand_start_stmt_expr.
From-SVN: r47611
2001-12-04 14:25:32 +01:00
Alexandre Oliva
23700f6508 c-decl.c (duplicate_decls): Revert rth's patch.
* c-decl.c (duplicate_decls): Revert rth's patch.  If newdecl
is in a different binding level, get its abstract origin to be
olddecl.
* tree-inline.c (expand_call_inline): Move DECL_INITIAL sanity
check earlier.
* tree.c (get_callee_fndecl): Follow DECL_ABSTRACT_ORIGIN if
DECL_INITIAL is NULL.

From-SVN: r47610
2001-12-04 10:34:40 +00:00
Alexandre Oliva
961eacce43 com.c (ffecom_expr_power_integer_): Adjust expand_start_stmt_expr() invocation.
* com.c (ffecom_expr_power_integer_): Adjust
expand_start_stmt_expr() invocation.

From-SVN: r47609
2001-12-04 10:31:27 +00:00
Alexandre Oliva
5e9b6df8b4 semantics.c (begin_global_stmt_expr): Adjust expand_start_stmt_expr invocation.
* semantics.c (begin_global_stmt_expr): Adjust
expand_start_stmt_expr invocation.

From-SVN: r47608
2001-12-04 10:30:47 +00:00
Alexandre Oliva
d1bd43d950 stmt.c (expand_expr_stmt): Keep last_expr_value non-NULL iff we're interested in the result.
* stmt.c (expand_expr_stmt): Keep last_expr_value non-NULL iff
we're interested in the result.  Use it to tell whether to
ignore results of enclosed expressions.
(expand_start_stmt_expr): Added new argument, and initialize
last_expr_value accordingly.
* tree.h (expand_start_stmt_expr): Adjusted declaration.
* c-common.c (c_expand_expr): Adjust call.
* expr.c (expand_expr) [EXPR_WFL]: Pass const0_rtx down if
ignoring the result.

From-SVN: r47607
2001-12-04 10:30:04 +00:00
Alexandre Oliva
1b3ea405b0 * Makefile.in ($(LIBG2C)): Fix -rpath argument to libtool.
From-SVN: r47606
2001-12-04 10:02:51 +00:00
Alexandre Oliva
90f86cb5d1 Makefile.in (AR, RANLIB): Add, for substitutions.
* Makefile.in (AR, RANLIB): Add, for substitutions.
(all-unilib, $(LIBG2C)): Depend on object lists, not
convenience libraries.
(s-libe77): Renamed from libE77.la; build object list.
(install): Do not move libraries to libdir.
(mostlyclean, clean): Adjust.
* libF77/Makefile.in (RANLIB): Add.
(LINK): Remove.
(../s-libf77): Renamed from ../libF77.la; build object list.
(../libfrtbegin.a): Remove target first.  Don't use $<.
(all, clean, distclean): Adjust.
* libF77/configure.in: Substitute RANLIB.
* libF77/configure: Rebuilt.
* libI77/Makefile.in (LINK): Delete.
(../s-libi77): Renamed from ../libI77.la; build object list.
(all, clean, distclean): Adjust.
* libU77/Makefile.in: Likewise.

From-SVN: r47605
2001-12-04 09:53:18 +00:00
Nathan Sidwell
9471d3e291 pt.c (end_template_parm_list): Clear TREE_CHAIN of each parm.
cp:
	* pt.c (end_template_parm_list): Clear TREE_CHAIN of each parm.

From-SVN: r47604
2001-12-04 09:51:18 +00:00
Nathan Sidwell
713ccd0c6c re PR c++/164 (bogus error throwing class with inaccessible base)
cp:
	PR g++/164
	* init.c (sort_base_init): Allow binfos to be directly specified.
	* method.c (do_build_copy_constructor): Explicitly convert to the
	base instance.
	(do_build_assign_ref): Likewise.
testsuite:
	* g++.dg/inherit/base1.C: New test.

From-SVN: r47603
2001-12-04 09:48:53 +00:00
Jakub Jelinek
b318748ff4 flow.c (ior_reg_cond): Return NULL if ! add and rtx wasn't optimized.
* flow.c (ior_reg_cond): Return NULL if ! add and rtx wasn't optimized.
	Return correct value if one of the subexpressions was optimized to
	0 resp. 1.  Optimize (x | A) | x and (x & A) | x.
	(and_reg_cond): Similarly.

	* gcc.c-torture/compile/20011130-2.c: New test.

From-SVN: r47602
2001-12-04 10:33:17 +01:00
Jakub Jelinek
108b7d3d31 function.c (assign_parms): Set last_named only for last named argument.
* function.c (assign_parms): Set last_named only for last named
	argument.

	* g++.dg/other/stdarg1.C: New test.

From-SVN: r47601
2001-12-04 10:29:54 +01:00
Joseph Myers
5402e639e2 Fix date on last entry.
From-SVN: r47599
2001-12-04 09:23:37 +00:00
Joseph Myers
aed5964b2d install.texi: Use the GFDL.
* doc/install.texi: Use the GFDL.  Include years from old install
	manual in copyright notice.  Include copyright and GFDL notice on
	HTML index page.  Include usual footer on testing.html.
	* doc/install.texi2html: Build gfdl.html.  Use -I
	$SOURCEDIR/include.
	* doc/include/fdl.texi: Adapt for use in the install manual.

From-SVN: r47598
2001-12-04 09:21:56 +00:00
Joseph Myers
635771afd6 install.texi: Document that installed native compiler for building cross compilers should be...
* doc/install.texi: Document that installed native compiler for
	building cross compilers should be GCC 2.95 or later.

From-SVN: r47596
2001-12-04 08:19:41 +00:00