Commit Graph

73 Commits

Author SHA1 Message Date
Joseph Myers
928c19bbb0 re PR c/456 (constant expressions constraints (gcc.dg/c90-const-expr-1))
PR c/456
	PR c/5675
	PR c/19976
	PR c/29116
	PR c/31871
	PR c/35198

fixincludes:
	* inclhack.def (glibc_tgmath): New fix.
	* fixincl.x: Regenerate.
	* tests/base/tgmath.h: New.

gcc:
	* builtins.c (fold_builtin_sincos): Build COMPOUND_EXPR in
	void_type_node.
	(fold_call_expr): Return a NOP_EXPR from folding rather than the
	contained expression.
	* c-common.c (c_fully_fold, c_fully_fold_internal, c_save_expr):
	New.
	(c_common_truthvalue_conversion): Use c_save_expr.  Do not fold
	conditional expressions for C.
	(decl_constant_value_for_optimization): Move from
	decl_constant_value_for_broken_optimization in c-typeck.c.  Check
	whether optimizing and that the expression is a VAR_DECL not of
	array type instead of doing such checks in the caller.  Do not
	check pedantic.  Call gcc_unreachable for C++.
	* c-common.def (C_MAYBE_CONST_EXPR): New.
	* c-common.h (c_fully_fold, c_save_expr,
	decl_constant_value_for_optimization): New prototypes.
	(C_MAYBE_CONST_EXPR_PRE, C_MAYBE_CONST_EXPR_EXPR,
	C_MAYBE_CONST_EXPR_INT_OPERANDS, C_MAYBE_CONST_EXPR_NON_CONST,
	EXPR_INT_CONST_OPERANDS): Define.
	* c-convert.c (convert): Strip nops from expression.
	* c-decl.c (groktypename): Take extra parameters expr and
	expr_const_operands.  Update call to grokdeclarator.
	(start_decl): Update call to grokdeclarator.  Add statement for
	expressions used in type of decl.
	(grokparm): Update call to grokdeclarator.
	(push_parm_decl): Update call to grokdeclarator.
	(build_compound_literal): Add parameter non_const and build a
	C_MAYBE_COSNT_EXPR if applicable.
	(grokdeclarator): Take extra parameters expr and
	expr_const_operands.  Track expressions used in declaration
	specifiers and declarators.  Fold array sizes and track whether
	they are constant expressions and whether they are integer
	constant expressions.
	(parser_xref_tag): Set expr and expr_const_operands fields in
	return value.
	(grokfield): Update call to grokdeclarator.
	(start_function): Update call to grokdeclarator.
	(build_null_declspecs): Set expr and expr_const_operands fields in
	return value.
	(declspecs_add_type): Handle expressions in typeof specifiers.
	* c-parser.c (c_parser_declspecs): Set expr and
	expr_const_operands fields for declaration specifiers.
	(c_parser_enum_specifier): Likewise.
	(c_parser_struct_or_union_specifier): Likewise.
	(c_parser_typeof_specifier): Likewise.  Update call to
	groktypename.  Fold expression as needed.  Return expressions with
	type instead of adding statements.
	(c_parser_attributes): Update calls to c_parser_expr_list.
	(c_parser_statement_after_labels): Fold expression before passing
	to objc_build_throw_stmt.
	(c_parser_condition): Fold expression.
	(c_parser_asm_operands): Fold expression.
	(c_parser_conditional_expression): Use c_save_expr.  Update call
	to build_conditional_expr.
	(c_parser_alignof_expression): Update call to groktypename.
	(c_parser_postfix_expression): Preserve C_MAYBE_CONST_EXPR as
	original_code.  Fold expression argument of va_arg.  Create
	C_MAYBE_CONST_EXPR to preserve side effects of expressions in type
	argument to va_arg.  Update calls to groktypename.  Fold array
	index for offsetof.  Verify that first argument to
	__builtin_choose_expr has integer type.
	(c_parser_postfix_expression_after_paren_type): Update calls to
	groktypename and build_compound_literal.  Handle expressions with
	side effects in type name.
	(c_parser_postfix_expression_after_primary): Update call to
	c_parser_expr_list.  Set original_code for calls to
	__builtin_constant_p.
	(c_parser_expr_list): Take extra parameter fold_p.  Fold
	expressions if requested.
	(c_parser_objc_type_name): Update call to groktypename.
	(c_parser_objc_synchronized_statement): Fold expression.
	(c_parser_objc_receiver): Fold expression.
	(c_parser_objc_keywordexpr): Update call to c_parser_expr_list.
	(c_parser_omp_clause_num_threads, c_parser_omp_clause_schedule,
	c_parser_omp_atomic, c_parser_omp_for_loop): Fold expressions.
	* c-tree.h (CONSTRUCTOR_NON_CONST): Define.
	(struct c_typespec): Add elements expr and expr_const_operands.
	(struct c_declspecs): Add elements expr and expr_const_operands.
	(groktypename, build_conditional_expr, build_compound_literal):
	Update prototypes.
	(in_late_binary_op): Declare.
	* c-typeck.c (note_integer_operands): New function.
	(in_late_binary_op): New variable.
	(decl_constant_value_for_broken_optimization): Move to c-common.c
	and rename to decl_constant_value_for_optimization.
	(default_function_array_conversion): Do not strip nops.
	(default_conversion): Do not call
	decl_constant_value_for_broken_optimization.
	(build_array_ref): Do not fold result.
	(c_expr_sizeof_expr): Fold operand.  Use C_MAYBE_CONST_EXPR for
	result when operand is a VLA.
	(c_expr_sizeof_type): Update call to groktypename.  Handle
	expressions included in type name.  Use C_MAYBE_CONST_EXPR for
	result when operand names a VLA type.
	(build_function_call): Update call to build_compound_literal.
	Only fold result for calls to __builtin_* functions.  Strip
	NOP_EXPR from INTEGER_CST returned from such functions.  Fold
	the function designator.
	(convert_arguments): Fold arguments.  Update call to
	convert_for_assignment.
	(build_unary_op): Handle increment and decrement of
	C_MAYBE_CONST_EXPR.  Move lvalue checks for increment and
	decrement earlier.  Fold operand of increment and decrement.
	Handle address of C_MAYBE_CONST_EXPR.  Only fold expression being
	built for integer operand.  Wrap returns that are INTEGER_CSTs
	without being integer constant expressions or that have integer
	constant operands without being INTEGER_CSTs.
	(lvalue_p): Handle C_MAYBE_CONST_EXPR.
	(build_conditional_expr): Add operand ifexp_bcp.  Track whether
	result is an integer constant expression or can be used in
	unevaluated parts of one and avoid folding and wrap as
	appropriate.  Fold operands before possibly doing -Wsign-compare
	warnings.
	(build_compound_expr): Wrap result for C99 if operands can be used
	in integer constant expressions.
	(build_c_cast): Update call to digest_init.  Do not ignore
	overflow from casting floating-point constants to integers.  Wrap
	results that could be confused with integer constant expressions,
	null pointer constants or floating-point constants.
	(c_cast_expr): Update call to groktypename.  Handle expressions
	included in type name.
	(build_modify_expr): Handle modifying a C_MAYBE_CONST_EXPR.  Fold
	lhs inside possible SAVE_EXPR.  Fold RHS before assignment.
	Update calls to convert_for_assignment.
	(convert_for_assignment): Take new parameter
	null_pointer_constant.  Do not strip nops or call
	decl_constant_value_for_broken_optimization.  Set
	in_late_binary_op for conversions to boolean.
	(store_init_value): Update call to digest_init.
	(digest_init): Take new parameter null_pointer_constant.  Do not
	call decl_constant_value_for_broken_optimization.  pedwarn for
	initializers not constant expressions.  Update calls to
	convert_for_assignment.
	(constructor_nonconst): New.
	(struct constructor_stack): Add nonconst element.
	(really_start_incremental_init, push_init_level, pop_init_level):
	Handle constructor_nonconst and nonconst element.
	(set_init_index): Call constant_expression_warning for array
	designators.
	(output_init_element): Fold value.  Set constructor_nonconst as
	applicable.  pedwarn for initializers not constant expressions.
	Update call to digest_init.  Call constant_expression_warning
	where constant initializers are required.
	(process_init_element): Use c_save_expr.
	(c_finish_goto_ptr): Fold expression.
	(c_finish_return): Fold return value.  Update call to
	convert_for_assignment.
	(c_start_case): Fold switch expression.
	(c_process_expr_stmt): Fold expression.
	(c_finish_stmt_expr): Create C_MAYBE_CONST_EXPR as needed to
	ensure statement expression is not evaluated in constant
	expression.
	(build_binary_op): Track whether results are integer constant
	expressions or may occur in such, disable folding and wrap results
	as applicable.  Fold operands for -Wsign-compare warnings unless
	in_late_binary_op.
	(c_objc_common_truthvalue_conversion): Handle results folded to
	integer constants that are not integer constant expressions.
	* doc/extend.texi: Document when typeof operands are evaluated,
	that condition of __builtin_choose_expr is an integer constant
	expression, and more about use of __builtin_constant_p in
	initializers.

gcc/objc:
	* objc-act.c (objc_finish_try_stmt): Set in_late_binary_op.

gcc/testsuite:
	* gcc.c-torture/compile/20081108-1.c,
	gcc.c-torture/compile/20081108-2.c,
	gcc.c-torture/compile/20081108-3.c, gcc.dg/bconstp-2.c,
	gcc.dg/bconstp-3.c, gcc.dg/bconstp-4.c, gcc.dg/c90-const-expr-6.c,
	gcc.dg/c90-const-expr-7.c, gcc.dg/c90-const-expr-8.c,
	gcc.dg/c90-const-expr-9.c, gcc.dg/c90-const-expr-10.c,
	gcc.dg/c90-const-expr-11.c, gcc.dg/c99-const-expr-6.c,
	gcc.dg/c99-const-expr-7.c, gcc.dg/c99-const-expr-8.c,
	gcc.dg/c99-const-expr-9.c, gcc.dg/c99-const-expr-10.c,
	gcc.dg/c99-const-expr-11.c, gcc.dg/c99-const-expr-12.c,
	gcc.dg/c99-const-expr-13.c, gcc.dg/compare10.c,
	gcc.dg/gnu89-const-expr-1.c, gcc.dg/gnu89-const-expr-2.c,
	gcc.dg/gnu99-const-expr-1.c, gcc.dg/gnu99-const-expr-2.c,
	gcc.dg/gnu99-const-expr-3.c, gcc.dg/vla-12.c, gcc.dg/vla-13.c,
	gcc.dg/vla-14.c, gcc.dg/vla-15.c, gcc.dg/vla-16.c: New tests.
	* gcc.dg/c90-const-expr-1.c, gcc.dg/c90-const-expr-2.c,
	gcc.dg/c90-const-expr-3.c, gcc.dg/c99-const-expr-2.c,
	gcc.dg/c99-const-expr-3.c, gcc.dg/c99-static-1.c: Remove XFAILs.
	* gcc.dg/c90-const-expr-2.c: Use ZERO in place of 0 in another
	case.
	* gcc.dg/overflow-warn-1.c, gcc.dg/overflow-warn-2.c,
	gcc.dg/overflow-warn-3.c, gcc.dg/overflow-warn-4.c: Remove
	XFAILs.  Update expected messages.
	* gcc.dg/pr14649-1.c, gcc.dg/pr19984.c, gcc.dg/pr25682.c: Update
	expected messages.
	* gcc.dg/real-const-1.c: Replace with test from original PR.
	* gcc.dg/vect/pr32230.c: Use intermediate cast to __PTRDIFF_TYPE__
	when casting from non-constant integer to pointer.

From-SVN: r145254
2009-03-29 19:13:43 +01:00
Joseph Myers
52c0e446f3 inclhack.def (aix_syswait, [...]): Remove.
fixincludes:
	* inclhack.def (aix_syswait, exception_structure,
	pthread_page_size): Remove.
	(math_exception): Remove mention of fixproto in comment.
	* fixincl.x: Regenerate.
	* mkheaders.in: Do not handle STMP_FIXPROTO.

gcc:
	* config/arm/t-arm-coff, config/h8300/coff.h,
	config/i386/i386-aout.h, config/i386/i386-coff.h,
	config/libgloss.h, config/m68k/coff.h, config/m68k/m68k-aout.h,
	config/pdp11/2bsd.h, config/rs6000/aix41.h,
	config/rs6000/aix41.opt, config/rs6000/t-newas, config/sh/coff.h,
	fix-header.c, fixproto, gen-protos.c, protoize.c, scan-decls.c,
	scan-types.sh, scan.c, scan.h, sort-protos, sys-protos.h,
	sys-types.h: Remove.
	* Makefile.in: Remove protoize and fixproto support and references
	in comments.
	(SYSCALLS.c.X-warn, TARGET_GETGROUPS_T, STMP_FIXPROTO,
	PROTOIZE_INSTALL_NAME, UNPROTOIZE_INSTALL_NAME, FIXPROTO_DEFINES):
	Remove.
	(ALL_HOST_OBJS): Remove $(PROTO_OBJS).
	(MOSTLYCLEANFILES): Remove protoize$(exeext) and
	unprotoize$(exeext).
	(rest.encap): Don't depend on $(STMP_FIXPROTO)
	(.PHONY): Don't depend on proto.
	(libgcc-support): Don't depend on $(STMP_FIXPROTO).
	(proto, PROTO_OBJS, protoize$(exeext), unprotoize$(exeext),
	protoize.o, unprotoize.o, SYSCALLS.c.X, test-protoize-simple,
	deduced.h, GEN_PROTOS_OBJS, build/gen-protos$(build_exeext),
	build/gen-protos.o, build/scan.o, xsys-protos.h,
	build/fix-header$(build_exeext), build/fix-header.o,
	build/scan-decls.o, fixhdr.ready, stmp-fixproto,
	stmp-install-fixproto): Remove.
	(mostlyclean): Don't remove xsys-protos.hT, SYSCALLS.c.X,
	SYSCALLS.c or fixproto files.
	(install-common): Don't install protoize.
	(install-headers-tar, install-headers-cpio, install-headers-cp):
	Don't depend on $(STMP_FIXPROTO).
	(install-mkheaders): Don't depend on $(STMP_FIXPROTO).  Don't
	install fixproto files or write out fixproto settings.
	(uninstall): Don't uninstall protoize.
	* config.gcc (use_fixproto): Remove.
	(arm-*-coff*, armel-*-coff*, h8300-*-*, i[34567]86-*-aout*,
	i[34567]86-*-coff*, m68k-*-aout*, m68k-*-coff*, pdp11-*-bsd,
	rs6000-ibm-aix4.[12]*, powerpc-ibm-aix4.[12]*, sh-*-*): Remove.
	* config/m32r/t-linux (STMP_FIXPROTO): Remove.
	* config/m68k/m68k.c: Remove M68K_TARGET_COFF-conditional code.
	* config/mips/t-iris (FIXPROTO_DEFINES): Remove.
	* config/pa/t-pa-hpux (FIXPROTO_DEFINES): Remove.
	* config/pdp11/pdp11.c: Remove TWO_BSD-conditional code.
	* config/t-svr4 (FIXPROTO_DEFINES): Remove.
	* config/t-vxworks (STMP_FIXPROTO): Remove.
	* configure.ac (AC_TYPE_GETGROUPS, TARGET_GETGROUPS_T,
	STMP_FIXPROTO): Remove.
	* config.in, configure: Regenerate.
	* crtstuff.c (gid_t, uid_t): Don't undefine.
	* doc/install.texi: Change m68k-coff to m68k-elf in example.
	(arm-*-coff, arm-*-aout: Remove target entries.
	(*-ibm-aix*): Mention removal of support for AIX 4.2 and older.
	Remove mention of AIX 4.1.
	(m68k-*-*): Remove mention of m68k-*-aout and m68k-*-coff*.
	* doc/invoke.texi (Running Protoize): Remove.
	* doc/trouble.texi (Actual Bugs): Remove mention of fixproto.
	(Protoize Caveats): Remove.
	* tsystem.h: Update comments on headers assumed to exist.

gcc/po:
	* EXCLUDES (fix-header.c, gen-protos.c, scan-decls.c, scan.c,
	scan.h): Remove.

gcc/testsuite:
	* g++.old-deja/g++.ext/attrib5.C, g++.old-deja/g++.jason/thunk3.C,
	gcc.c-torture/compile/981006-1.c: Don't XFAIL or add special
	options for removed targets.

libgcc:
	* config.host (arm-*-coff*, armel-*-coff*, arm-semi-aof,
	armel-semi-aof, h8300-*-*, i[34567]86-*-aout*, i[34567]86-*-coff*,
	m68k-*-aout*, m68k-*-coff*, pdp11-*-bsd, rs6000-ibm-aix4.[12]*,
	powerpc-ibm-aix4.[12]*, sh-*-*): Remove.

From-SVN: r145158
2009-03-28 06:51:09 +00:00
Giovanni Bajo
42ab928203 add alpha_if_semocolon fix
From-SVN: r144490
2009-02-28 18:13:31 +00:00
Steve Ellcey
8ba59b0884 inclhack.def (hpux_spu_info): Add files line.
* inclhack.def (hpux_spu_info):  Add files line.
	* fixincl.x: Regenerate.

From-SVN: r143104
2009-01-05 23:59:41 +00:00
Andreas Tobler
9cb825505e inclhack.def (openbsd_null_definition): Redefine NULL to (void *)0 in case of C.
2009-01-01  Andreas Tobler  <a.tobler@schweiz.org>

	* inclhack.def (openbsd_null_definition): Redefine NULL to (void *)0
	in case of C.
	* fixincl.x: Regenerate.

From-SVN: r142989
2009-01-01 00:00:17 +01:00
Andreas Tobler
261b8381fe re PR target/35460 (undefined reference to `__builtin_stdarg_start' when compiling 2/29 snapshot on OpenBSD)
2008-12-31  Andreas Tobler  <a.tobler@schweiz.org>

	PR target/35460
	* inclhack.def (openbsd_va_start): Use __builtin_va_start
	for OpenBSD.
	* fixincl.x: Regenerate.

From-SVN: r142980
2008-12-31 14:52:53 +01:00
Steve Ellcey
8739b9c795 inclhack.def (hpux_spu_info): Match PA as well as IA64.
* inclhack.def (hpux_spu_info): Match PA as well as IA64.
	* fixincl.x: Regenerate.

From-SVN: r142767
2008-12-15 18:11:19 +00:00
Bruce Korb
6aa1f8c190 fix glibc_mutex_init fix
From-SVN: r140071
2008-09-06 19:57:26 +00:00
Bruce Korb
0fc38aaa37 Update the copyright years and put the licensing text directly into the template file.
Update the copyright years and put the licensing text directly
into the template file.  The license needs to be version dependent, so burn
it in directly.

From-SVN: r136566
2008-06-08 16:22:00 +00:00
Bruce Korb
929a75b24f Remove commentary fixes. Regenerate fixincl.x just to show there is no difference.
From-SVN: r136561
2008-06-08 16:07:17 +00:00
Bruce Korb
c8b3863705 clean up fixes
From-SVN: r136539
2008-06-07 22:19:45 +00:00
Joseph Myers
cd985f6672 MAINTAINERS (mt port): Remove.
* MAINTAINERS (mt port): Remove.
	(sco5, unixware, sco udk): Remove.
	(Kean Johnston): Add to Write After Approval.

fixincludes:
	* inclhack.def (AAB_svr4_replace_byteorder,
	AAB_ultrix_ansi_compat, AAB_ultrix_limits, AAB_ultrix_memory,
	libc1_G_va_list, libc1_ifdefd_memx, nested_motorola,
	ptx_sys_mc_param_h, sco_regset, sco_static_func, sco_utime,
	solaris_mutex_init_1, solaris_socket, solaris_unistd,
	solaris_widec, svr4_krnl, ultrix_atexit_param, ultrix_atof_param,
	ultrix_const3, ultrix_fix_fixproto, ultrix_ifdef, ultrix_locale,
	ultrix_math_ifdef, ultrix_nested_ioctl, ultrix_nested_svc,
	ultrix_stat, ultrix_static, ultrix_stdlib, ultrix_strings,
	ultrix_strings2, ultrix_sys_time, ultrix_unistd,
	unicosmk_restrict, uw7_byteorder_fix, windiss_math1,
	windiss_math2, windiss_valist): Remove.
	* fixincl.x: Regenerate.
	* mkfixinc.sh: (arm-semi-aof, hppa1.1-*-osf*, hppa1.1-*-bsd*,
	i370-*-openedition, i?86-*-moss*, i?86-*-uwin*,
	powerpc-*-eabiaix*): Remove.
	* tests/base/math.h: Update.
	* tests/base/pthread.h: Update.
	* tests/base/stdio.h: Update.
	* tests/base/stdlib.h: Update.
	* tests/base/string.h: Update.
	* tests/base/strings.h: Update.
	* tests/base/sys/file.h: Update.
	* tests/base/sys/limits.h: Update.
	* tests/base/sys/socket.h: Update.
	* tests/base/sys/stat.h: Update.
	* tests/base/sys/time.h: Update.
	* tests/base/testing.h: Update.
	* tests/base/unistd.h: Update.
	* tests/base/_G_config.h: Remove.
	* tests/base/arpa: Remove directory.
	* tests/base/fs: Remove directory.
	* tests/base/locale.h: Remove.
	* tests/base/machine: Remove directory.
	* tests/base/rpc/svc.h: Remove.
	* tests/base/sys/ioctl.h: Remove.
	* tests/base/sys/regset.h: Remove.
	* tests/base/sys/times.h: Remove.
	* tests/base/sys/utsname.h: Remove.
	* tests/base/widec.h: Remove.

gcc:
	* config.gcc (Obsolete configurations): Remove list of
	configurations.
	(Unsupported targets list): Add *-*-linux*aout*, *-*-linux*libc1*,
	*-*-solaris2.[0-6], *-*-solaris2.[0-6].*, *-*-sysv*.  Remove other
	targets matched by those patterns.
	(strongarm*-*-*, ep9312*-*-*, xscale-*-*, parisc*-*-*,
	m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*,
	alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf,
	arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*,
	hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*,
	i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*,
	i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*,
	i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*,
	i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*,
	mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*,
	powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*,
	powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*,
	strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*,
	vax-*-ultrix*, xscale-*-elf, xscale-*-coff,
	i[34567]86-*-linux*aout*, i[34567]86-*-linux*libc1): Remove.
	Make code for Solaris 7 and greater unconditional for Solaris.
	(ep9312-*-*, parisc1*, m680[012]0-*-*, parisc*-*-*, mt-*-*):
	Remove --with-* handling.
	* config/rs6000/sysv4.h (-mwindiss): Remove from all specs.
	(LIB_WINDISS_SPEC, CPP_OS_WINDISS_SPEC, STARTFILE_WINDISS_SPEC,
	ENDFILE_WINDISS_SPEC, LINK_START_WINDISS_SPEC,
	LINK_OS_WINDISS_SPEC): Remove.
	* config/rs6000/sysv4.opt (mwindiss): Remove.
	* configure.ac (strongarm*-*-*, xscale*-*-*): Remove.
	* configure: Regenerate.
	* doc/cpp.texi: Don't mention BeOS.
	* doc/extend.texi (interrupt): Don't mention MS1.
	* doc/install.texi: (i386-@var{any}-sysv, m68k-bull-sysv,
	m68k-hp-hpux, m68000-hp-hpux, m68000-att-sysv,
	alphaev5-cray-unicosmk*, xscale-*-*, i?86-*-linux*aout,
	i?86-*-sco3.2v5*, i?86-*-udk, m68k-hp-hpux, powerpc-*-sysv4,
	powerpc-*-sysv4, powerpcle-*-sysv4, *-*-sysv*, vax-dec-ultrix):
	Remove.
	* doc/invoke.texi (MT Options): Remove.
	(-mwindiss): Remove.
	(CRIS Options): Remove cris-axis-aout references.
	(HPPA Options): Don't mention hppa1.1-*-pro.
	* doc/md.texi: (MorphoTech family): Remove.
	* libgcc2.c: Don't handle UWIN.
	* config/alpha/t-unicosmk: Remove.
	* config/alpha/unicosmk.h: Remove.
	* config/arm/kaos-arm.h: Remove.
	* config/arm/kaos-strongarm.h: Remove.
	* config/arm/strongarm-coff.h: Remove.
	* config/arm/strongarm-elf.h: Remove.
	* config/arm/strongarm-pe.h: Remove.
	* config/arm/t-strongarm-pe: Remove.
	* config/arm/t-xscale-coff: Remove.
	* config/arm/t-xscale-elf: Remove.
	* config/arm/xscale-coff.h: Remove.
	* config/arm/xscale-elf.h: Remove.
	* config/chorus.h: Remove.
	* config/cris/aout.h: Remove.
	* config/cris/aout.opt: Remove.
	* config/cris/t-aout: Remove.
	* config/i386/beos-elf.h: Remove.
	* config/i386/kaos-i386.h: Remove.
	* config/i386/ptx4-i.h: Remove.
	* config/i386/sco5.h: Remove.
	* config/i386/sco5.opt: Remove.
	* config/i386/sysv4-cpp.h: Remove.
	* config/i386/sysv5.h: Remove.
	* config/i386/t-beos: Remove.
	* config/i386/t-sco5: Remove.
	* config/i386/t-uwin: Remove.
	* config/i386/uwin.asm: Remove.
	* config/i386/uwin.h: Remove.
	* config/kaos.h: Remove.
	* config/mips/windiss.h: Remove.
	* config/mt: Remove directory.
	* config/pa/pa-osf.h: Remove.
	* config/pa/pa-pro-end.h: Remove.
	* config/pa/t-pro: Remove.
	* config/ptx4.h: Remove.
	* config/rs6000/beos.h: Remove.
	* config/rs6000/kaos-ppc.h: Remove.
	* config/rs6000/t-beos: Remove.
	* config/rs6000/windiss.h: Remove.
	* config/sh/kaos-sh.h: Remove.
	* config/sol2-6.h: Remove.
	* config/sparc/sol26-sld.h: Remove.
	* config/sparc/sysv4-only.h: Remove.
	* config/vax/bsd.h: Remove.
	* config/vax/t-memfuncs: Remove.
	* config/vax/ultrix.h: Remove.
	* config/vax/vaxv.h: Remove.
	* config/windiss.h: Remove.

gcc/testsuite:
	* g++.dg/abi/arm_cxa_vec1.C: Don't handle xscale*-*-*.
	* g++.dg/eh/spbp.C: Don't handle *-*-solaris2.[56]*.
	* g++.dg/warn/miss-format-1.C: Don't handle Solaris before Solaris
	7.
	* gcc.c-torture/compile/981006-1.c: Don't handle xscale*-*-*,
	strongarm*-*-* and cris-*-aout*.
	* gcc.c-torture/execute/941014-1.x: Don't handle xscale*-*-* and
	strongarm*-*-*.
	* gcc.dg/20030909-1.c: Don't handle xscale*-*-* and
	strongarm*-*-*.
	* gcc.dg/20031108-1.c: Don't handle xscale*-*-* and
	strongarm*-*-*.
	* gcc.dg/20040813-1.c: Don't handle *-*-sysv5*.
	* gcc.dg/arm-asm.c: Don't handle strongarm*-*-* and xscale*-*-*.
	* gcc.dg/arm-scd42-1.c: Use target arm*-*-*.
	* gcc.dg/arm-scd42-3.c: Use target arm*-*-*.
	* gcc.dg/cpp/assert4.c: Don't handle BeOS.
	* gcc.dg/debug/pr35154.c: Don't handle *-*-sysv5*.
	* gcc.dg/intmax_t-1.c: Don't handle *-*-solaris2.5.1 and
	xscale*-*-elf*.
	* gcc.dg/pragma-align.c: Don't handle i?86-*-sco3.2v5*.
	* gcc.dg/pthread-init-2.c: Don't handle *-*-solaris2.5.1.
	* gcc.misc-tests/arm-isr.exp: Use target arm*-*-*.
	* gcc.target/powerpc/ppc-sdata-1.c: Don't handle powerpc-*-sysv*.
	* gcc.target/powerpc/ppc-sdata-2.c: Don't handle powerpc-*-sysv*.
	* gcc.target/powerpc/ppc-stackalign-1.c: Don't handle
	powerpc-*-sysv*.
	* gfortran.dg/debug/pr35154-stabs.f: Don't handle *-*-sysv5*.
	* lib/target-supports.exp: Don't handle strongarm*-*-elf,
	xscale*-*-elf and *-*-windiss.
	* obj-c++.dg/dwarf-2.mm: Don't handle *-*-solaris2.[56]*.
	* objc.dg/dwarf-1.m: Don't handle *-*-solaris2.[56]*.
	* objc.dg/dwarf-2.m: Don't handle *-*-solaris2.[56]*.
	* gcc.dg/mt-loopi1.c: Remove.

gnattools:
	* configure.ac (xscale*-wrs-vx*, xscale*-wrs-coff): Remove.
	* configure: Regenerate.

libcpp:
	* configure.ac (parisc*64*-*-*): Remove.
	* configure: Regenerate.

libffi:
	* configure.ac (parisc*-*-linux*, powerpc-*-sysv*,
	powerpc-*-beos*): Remove.
	* configure: Regenerate.

libgcc:
	* config.host (strongarm*-*-*, ep9312*-*-*, xscale-*-*,
	parisc*-*-*, m680[012]0-*-*, *-*-linux*libc1*, *-*-linux*aout*,
	alpha*-*-unicosmk*, strongarm*-*-freebsd*, ep9312-*-elf,
	arm*-*-kaos*, cris-*-aout, parisc*64*-*-linux*, parisc*-*-linux*,
	hppa1.1-*-pro*, hppa1.1-*-osf*, hppa1.1-*-bsd*,
	i[34567]86-sequent-ptx4*, i[34567]86-sequent-sysv4*,
	i[34567]86-*-beoself*, i[34567]86-*-beos*, i[34567]86-*-sco3.2v5*,
	i[34567]86-*-sysv5*, i[34567]86-*-sysv4*, i[34567]86-*-uwin*,
	i[34567]86-*-kaos*, m68020-*-elf*, m68010-*-netbsdelf*,
	mips-wrs-windiss, mt-*-elf, powerpc-*-beos*, powerpc-*-chorusos*,
	powerpc-wrs-windiss*, powerpcle-*-sysv*, powerpc-*-kaos*,
	powerpcle-*-kaos*, sh*-*-kaos*, sparc-*-sysv4*, strongarm-*-elf*,
	strongarm-*-pe, strongarm-*-kaos*, vax-*-bsd*, vax-*-sysv*,
	vax-*-ultrix*, xscale-*-elf, xscale-*-coff): Remove.

libjava:
	* configure.host (strongarm*-elf, xscale*-elf): Remove.

libstdc++-v3:
	* configure.host (xscale, ep9312, m680[246]0, solaris2.5,
	solaris2.5.[0-9], solaris2.6, windiss*): Remove.
	* crossconfig.m4 (*-solaris2.5, *-solaris2.6, *-windiss*): Remove.
	* configure: Regenerate.
	* config/os/solaris/solaris2.5: Remove directory.
	* config/os/solaris/solaris2.6: Remove directory.
	* config/os/windiss: Remove directory.

From-SVN: r136534
2008-06-07 19:00:15 +01:00
Kaveh R. Ghazi
7de4b37ef1 inclhack.def (solaris_math_4): Use GCC's __builtin_fpclassify.
* inclhack.def (solaris_math_4): Use GCC's __builtin_fpclassify.
	* tests/base/iso/math_c99.h: Update.
	* fixincl.x: Regenerate.

From-SVN: r135852
2008-05-24 20:52:00 +00:00
Joseph Myers
2627042d9a inclhack.def (AAB_fd_zero_asm_posix_types_h): Bypass on posix_types_64.
* inclhack.def (AAB_fd_zero_asm_posix_types_h): Bypass on
	posix_types_64.
	* fixincl.x: Regenerate.

From-SVN: r135297
2008-05-14 16:13:40 +01:00
Peter O'Gorman
83644cd500 re PR target/20366 (AIX g++ -D_LARGE_FILES fails to compile #include <iostream>)
fixincludes/
2008-03-07  Peter O'Gorman  <pogma@thewrittenword.com>

	PR c++/20366
	* inclhack.def (AAB_aix_stdio): Hack stdio.h for -D_LARGE_FILES.
	* fixincl.x: Regenerate.
	* tests/base/stdio.h: Add test.

gcc/testsuite/
2008-03-07  Peter O'Gorman  <pogma@thewrittenword.com>

	PR c++/20366
	* g++.dg/other/pr20366.C: New test.

From-SVN: r133001
2008-03-07 06:53:59 +00:00
Kaveh R. Ghazi
c951ae4036 inclhack.def (solaris_math_10): New.
* inclhack.def (solaris_math_10): New.
	* tests/base/iso/math_c99.h: Update.

	* fixincl.x: Regenerate.

From-SVN: r132468
2008-02-20 04:20:59 +00:00
Ismail Dönmez
b452c14185 inclhack.def: (bsd_stdio_attrs_conflict...
2008-02-04  Ismail Dnmez  <ismail@pardus.org.tr>

	* inclhack.def: (bsd_stdio_attrs_conflict, freebsd_gcc3_breakage,
	freebsd_gcc4_breakage, hppa_hpux_fp_macros, hpux11_abs,
	netbsd_c99_inline_1, netbsd_c99_inline_2, netbsd_extra_semicolon):  Add
	quotes around mach entries.
	* fixincl.x: Regenerate with latest autogen (5.9.4), updating license
	to GPLv3.

From-SVN: r132110
2008-02-05 02:36:32 +00:00
Hans-Peter Nilsson
c91e2eaedd inclhack.def: (glibc_c99_inline_1a): Re-add last change.
* inclhack.def: (glibc_c99_inline_1a): Re-add last change.
	(glibc_c99_inline_3) <bypass>: Change from __STDC_VERSION__ to
	__extern_inline|__GNU_STDC_INLINE__.
	(glibc_c99_inline_4) <files>: Add wchar.h and */wchar.h.
	<bypass>: Change from __STDC_VERSION__ to
	__extern_inline|__GNU_STDC_INLINE__.
	<first c_fix_arg>: Change from #ifdef-wrapping the extern part to
	appending attribute-gnu_inline.
	<second c_fix_arg>: Remove.
	<test_text>: Remove __extern_inline line.
	* tests/base/features.h: Re-add.
	* tests/base/sys/sysmacros.h: Adjust.
	* fixincl.x: Regenerate.

From-SVN: r132092
2008-02-04 15:31:25 +00:00
Hans-Peter Nilsson
b8c9ec3da0 Revert last change.
From-SVN: r131363
2008-01-06 20:54:14 +00:00
Hans-Peter Nilsson
b6541c1068 inclhack.def: (glibc_c99_inline_1a, glibc_c99_inline_5): New.
* inclhack.def: (glibc_c99_inline_1a, glibc_c99_inline_5): New.
	* fixincl.x: Regenerate.
	* tests/base/wchar.h: Update.
	* tests/base/features.h: New.

From-SVN: r131031
2007-12-18 03:22:37 +00:00
John David Anglin
6f8c175007 re PR target/33700 (FAIL: 17_intro/headers/all_pedantic_errors.cc (test for excess errors))
PR target/33700
	* inclhack.def (hpux11_pthread_const): New.
	* fixincl.x: Regenerate.
	* tests/base/sys/pthread.h: Update.

From-SVN: r129304
2007-10-14 22:22:25 +00:00
Geoffrey Keating
b6bbae95ae inclhack.def (darwin_externc): New.
* inclhack.def (darwin_externc): New.
	* fixincl.x: Regenerate.
	* tests/base/mach-o/swap.h: New.

From-SVN: r129188
2007-10-09 23:22:02 +00:00
Kaveh R. Ghazi
d531cdb15c inclhack.def (solaris_math_5, [...]): Delete fixes.
* inclhack.def (solaris_math_5, solaris_math_6, solaris_math_7):
	Delete fixes.
	* tests/base/iso/math_c99.h: Delete associated test baselines.
	* fixincl.x: Regenerate.

From-SVN: r127198
2007-08-04 03:44:24 +00:00
Krister Walfridsson
63729d8454 re PR target/30058 (bootstrap broken on i386-unknown-netbsdelf2.0.2)
2007-07-24  Krister Walfridsson  <cato@df.lth.se>

	PR target/30058
	* inclhack.def (netbsd_c99_inline_2): New.
	* fixincl.x: Regenerate.
	* tests/base/signal.h: Update.

From-SVN: r126937
2007-07-25 23:51:47 +00:00
Kaveh R. Ghazi
dadda6caba re PR target/32641 (C99 fpclassify, isinf, isfinite, isnormal may raise FP exceptions)
fixincludes:
	PR target/32641

	* inclhack.def (solaris_math_4, solaris_math_5, solaris_math_6,
	solaris_math_7): Constify and make FP exception-safe.
	* tests/base/iso/math_c99.h: Update.

	* fixincl.x: Regenerate.

gcc/testsuite:
	* gcc.dg/c99-math-double-1.c: Mark test variables as volatile.
	Test negative numbers also.
	* gcc.dg/c99-math-float-1.c: Likewise.
	* gcc.dg/c99-math-long-double-1.c: Likewise.
	* gcc.dg/c99-math.h: Check for FP exceptions.  Update for negative
	test inputs.

From-SVN: r126730
2007-07-18 20:22:32 +00:00
Rainer Orth
8919fa4a77 re PR libgcj/28190 (libjava bootstrap failure on IRIX 6.5: stdint.h misdetection)
PR libgcj/28190
	* inclhack.def (irix_stdint_c99): New fix.
	* fixincl.x: Regenerate.
	* tests/base/stdint.h: New test.

From-SVN: r126377
2007-07-05 18:43:16 +00:00
Steve Ellcey
1fd994f191 re PR testsuite/31828 (FAIL: gcc.dg/float-range-[3-5].c (test for excess errors))
PR testsuite/31828
	* inclhack.def (hppa_hpux_fp_macros): New.
	* fixincl.x: Regenerate.
	* * tests/base/math.h: Update.

From-SVN: r125496
2007-06-06 17:48:03 +00:00
Jakub Jelinek
cb3790cb4e inclhack.def (glibc_c99_inline_1): Define __USE_EXTERN_INLINES if __extern_inline or __GNUC_GNU_INLINE__ is...
* inclhack.def (glibc_c99_inline_1): Define __USE_EXTERN_INLINES
	if __extern_inline or __GNUC_GNU_INLINE__ is defined rather than
	__STDC_VERSION__ < 199901L.
	(glibc_c99_inline_2): Replace #if __STDC_VERSION__ < 199901L
	with #ifdef __GNUC_GNU_INLINE__.
	(glibc_c99_inline_3): Add select.  Replace __STDC_VERSION__ >= 199901L
	with defined(__GNUC_STDC_INLINE__).
	(glibc_c99_inline_4): Change select, add second c_fix_arg.
	Replace #if __STDC_VERSION__ < 199901L with
	#ifdef __GNUC_GNU_INLINE__.
	* fixincl.x: Regenerated.
	* tests/base/bits/string2.h: Update.
	* tests/base/sys/sysmacros.h: Update.
	* tests/base/sys/stat.h: Update.

From-SVN: r123216
2007-03-26 15:25:26 +02:00
Krister Walfridsson
7270dd8e8d re PR target/30058 (bootstrap broken on i386-unknown-netbsdelf2.0.2)
2007-03-18  Krister Walfridsson  <cato@df.lth.se>

	PR target/30058
	* inclhack.def (netbsd_c99_inline_1): New.
	* fixincl.x: Regenerate.
	* tests/base/signal.h: New.

From-SVN: r123065
2007-03-19 17:08:14 +00:00
Bruce Korb
613698c025 check in required changes for base/sys/sysmacros.h
From-SVN: r121636
2007-02-06 01:25:59 +00:00
Richard Guenther
cefde4f5c7 inclhack.def (glibc_c99_inline_4): Adjust selector to cope with older glibc.
2007-02-05  Richard Guenther  <rguenther@suse.de>

	* inclhack.def (glibc_c99_inline_4): Adjust selector to cope
	with older glibc.  Adjust version number for C99.
	* fixincl.x: Regenerated.

From-SVN: r121614
2007-02-05 21:22:48 +00:00
Bruce Korb
5c4f0f4793 replace "extern" only if surrounded by space characters.
From-SVN: r121574
2007-02-04 15:10:08 +00:00
Daniel Franke
a942e89f3a re PR target/30272 (Build failure under SGI Irix (GFortran))
2007-01-25  Daniel Franke <franke.daniel@gmail.com>

        PR target/30272
        * inclhack.def(broken_cabs): Also remove definition of cabsl.
        * fixincl.x: Regenerate.
        * tests/base/math.h: Update.

From-SVN: r121182
2007-01-25 14:25:01 -05:00
Bruce Korb
401be4b658 Use fnmatch for name matching.
Co-Authored-By: Daniel Franke <franke.daniel@gmail.com>

From-SVN: r120528
2007-01-06 18:03:50 +00:00
Richard Guenther
98e06787f5 inclhack.def (glibc_c99_inline_2): Adjust for glibc 2.3 systems.
2006-11-07  Richard Guenther  <rguenther@suse.de>

        * inclhack.def (glibc_c99_inline_2): Adjust for glibc 2.3
        systems.
        * fixincl.x: Regenerate.

From-SVN: r118558
2006-11-07 17:34:40 +00:00
Geoffrey Keating
502e2a2d24 inclhack.def (glibc_c99_inline_1): New.
* inclhack.def (glibc_c99_inline_1): New.
	* inclhack.def (glibc_c99_inline_2): New.
	* inclhack.def (glibc_c99_inline_3): New.
	* inclhack.def (glibc_c99_inline_4): New.
	* fixincl.x: Regenerate.
	* tests/base/bits/string2.h: New.
	* tests/base/sys/sysmacros.h: New.
	* tests/base/sys/stat.h: Update.

From-SVN: r118449
2006-11-03 03:11:50 +00:00
Steve Ellcey
be645fd97a inclhack.def (hpux11_extern_sendfile): New.
* inclhack.def (hpux11_extern_sendfile): New.
	(hpux11_extern_sendpath): New.
	* fixincl.x: Regenerate.

From-SVN: r118343
2006-10-31 22:28:18 +00:00
Joseph Myers
0f45f0f588 config.gcc (i[34567]86-*-linux*): Handle --enable-targets=all.
gcc:
	* config.gcc (i[34567]86-*-linux*): Handle --enable-targets=all.
	Handle tuning for bi-arch i[34567]86-*-linux* like that for
	i[34567]86-*-solaris2.1[0-9]*.
	* config/i386/linux64.h (TARGET_VERSION, MULTILIB_DEFAULTS):
	Define conditionally depending on TARGET_64BIT_DEFAULT.
	(SPEC_32, SPEC_64): Define.
	(LINK_SPEC): Use them.
	* doc/install.texi (--enable-targets=all): Document for x86-linux.

libcpp:
	* configure.ac (need_64bit_hwint): Set for i[34567]86-*-linux*
	depending on --enable-targets=all.
	* configure: Regenerate.

fixincludes:
	* inclhack.def (AAB_fd_zero_asm_posix_types_h): Bypass on x86_64.
	* fixincl.x: Regenerate.

From-SVN: r118147
2006-10-29 16:35:50 +00:00
John David Anglin
6c65aa402b re PR target/29300 (FAIL: gcc.dg/pthread-init-[12].c (test for excess errors))
PR target/29300
	* inclhack.def (hpux_pthread_initializers): New hack.
	* tests/base/sys/pthread.h: New file.

	* fixincl.x: Regenerate.

From-SVN: r117537
2006-10-07 16:35:11 +00:00
Uros Bizjak
4d98def06f inclhack.def (glibc_mutex_init): Also fix PTHREAD_MUTEX_(RECURSIVE|ERRORCHECK|ADAPTIVE)_NP and...
* inclhack.def (glibc_mutex_init): Also fix
	PTHREAD_MUTEX_(RECURSIVE|ERRORCHECK|ADAPTIVE)_NP and
	PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP initializers.

From-SVN: r117386
2006-10-03 07:52:05 +02:00
Uros Bizjak
f6f7aabcd6 inclhack.def (pthread_mutex_init): New fix.
* inclhack.def (pthread_mutex_init): New fix.
        * tests/base/pthread.h: Update.

        * fixincl.x: Regenerate.

From-SVN: r117343
2006-10-01 07:47:33 +02:00
Kaveh R. Ghazi
a77d42cf21 inclhack.def (solaris_mutex_init_2): Update for Solaris9.
* inclhack.def (solaris_mutex_init_2): Update for Solaris9.
	Prevent it from running on solaris10 or later.
	(solaris_once_init_2): Fix comment.
	* tests/base/pthread.h: Update.

	* fixincl.x: Regenerate.

From-SVN: r117310
2006-09-29 19:14:58 +00:00
Kaveh R. Ghazi
0a1f02df6b inclhack.def (solaris_once_init_2): New fix.
* inclhack.def (solaris_once_init_2): New fix.
	* tests/base/pthread.h: Update.

	* fixincl.x: Regenerate.

From-SVN: r117265
2006-09-28 00:45:56 +00:00
Kaveh R. Ghazi
2b655a0a4f inclhack.def (solaris_mutex_init_2): Remove test for PTHREAD_RWLOCK_INITIALIZER.
* inclhack.def (solaris_mutex_init_2): Remove test for
	PTHREAD_RWLOCK_INITIALIZER.
	(solaris_rwlock_init_1): New.
	* tests/base/pthread.h: Update.

	* inclhack.def (solaris_once_init_1): New.
	* tests/base/pthread.h: Adjust for new fix.
	
	* fixincl.x: Regenerate.

From-SVN: r117244
2006-09-27 04:25:34 +00:00
Steve Ellcey
e10e3ac826 re PR target/28084 (/usr/include/errno.h:28: error: previous declaration of 'int errno' with 'C++' linkage)
PR target/28084
	* inclhack.def (hpux_extern_errno): New.
	* fixincl.x: Regenerate.

From-SVN: r114939
2006-06-23 16:21:54 +00:00
Steve Ellcey
e084430d3d re PR target/26189 (Bug in vendor /usr/include/net/if.h needs fixincluding on HPUX)
PR target/26189
	* inclhack.def (hpux_spu_info): New.
	* fixincl.x: Regenerate

From-SVN: r111237
2006-02-18 15:58:06 +00:00
Andrew Pinski
bf73f6d2a0 re PR target/15642 (NAN Is Not a Constant Because __APPLE_CC__ is Not Defined (OK in Apple 3.3.0))
2006-01-19  Andrew Pinski  <pinskia@physics.uc.edu>

        PR target/15642
        * inclhack.def (AAB_darwin7_9_long_double_funcs [replace]): Define
        __APPLE_CC_ as 1345.
        (broken_nan): New.
        * fixincl.x: Regenerate.

From-SVN: r109973
2006-01-19 09:18:29 -08:00
Bruce Korb
f375f46240 Regenerate fixincl.x from current template
From-SVN: r107491
2005-11-25 05:47:47 +00:00
Joseph Myers
77923c2938 re PR target/23139 (-pedantic -ffast-math breaks working code)
fixincludes:
	PR c++/23139
	* inclhack.def (huge_val_hex, huge_valf_hex, huge_vall_hex): New
	fixes.
	* fixincl.x: Regenerate.
	* tests/base/bits/huge_val.h: New file.

gcc/testsuite:
	* g++.dg/warn/huge-val1.C: New test.

From-SVN: r104315
2005-09-15 20:09:27 +01:00
Kelley Cook
df065c820f All files: Update with new FSF address.
2005-08-14  Kelley Cook  <kcook@gcc.gnu.org>

	* All files: Update with new FSF address.

From-SVN: r103096
2005-08-15 00:50:43 +00:00