summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/format
Commit message (Collapse)AuthorAgeFilesLines
* gcc/dsh2007-08-131-2/+4
| | | | | | | | | | | | | | | | | | | 2007-08-3 1 Dan Hipschman <dsh@google.com> PR 32953 * c-format.c (check_format_arg): Move check for zero-length format strings below the check for unterminated strings. testsuite/ 2007-08-13 Dan Hipschman <dsh@google.com> PR 32953 * gcc.dg/format/array-1.c: Add an additional test for unterminated format strings of length 1. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127399 138bc75d-0d04-0410-961f-82ee72b054a4
* PR fortran/32860fxcoudert2007-08-121-2/+4
| | | | | | | | | | | | | | | | | * error.c (error_uinteger): New function. (error_integer): Call error_uinteger. (error_print): Handle %u, %lu, %li and %ld format specifiers. * interface.c (compare_actual_formal): Use the new %lu specifier. * c-format.c (gcc_gfc_length_specs): New array. (gcc_gfc_char_table): Add unsigned specifier, and references to the l length modifier. (format_types_orig): Use the new gcc_gfc_length_specs. * gcc.dg/format/gcc_gfc-1.c: Updated with new formats. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127382 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc.c-torture/execute/execute.exp: Change copyright header to refer to versionnickc2007-08-011-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3 of the GNU General Public License and to point readers at the COPYING3 file and the FSF's license web page. * gcc.c-torture/execute/ieee/ieee.exp, gcc.c-torture/unsorted/unsorted.exp, gcc.c-torture/compile/compile.exp, gcc.c-torture/compile/structs.c, gcc.target/powerpc/powerpc.exp, gcc.target/arm/neon/neon.exp, gcc.target/arm/arm.exp, gcc.target/cris/torture/cris-torture.exp, gcc.target/cris/cris.exp, gcc.target/ia64/ia64.exp, gcc.target/alpha/alpha.exp, gcc.target/m68k/m68k.exp, gcc.target/spu/spu.exp, gcc.target/mips/mips.exp, gcc.target/sparc/sparc.exp, gcc.target/i386/i386.exp, gcc.target/x86_64/abi/abi-x86_64.exp, gnat.dg/specs/specs.exp, gnat.dg/dg.exp, gnat.dg/style/style.exp, gcc.dg/special/mips-abi.exp, gcc.dg/special/special.exp, gcc.dg/pch/pch.exp, gcc.dg/vxworks/vxworks.exp, gcc.dg/dg.exp, gcc.dg/charset/charset.exp, gcc.dg/weak/weak.exp, gcc.dg/tree-ssa/tree-ssa.exp, gcc.dg/tls/tls.exp, gcc.dg/cpp/cpp.exp, gcc.dg/cpp/trad/trad.exp, gcc.dg/matrix/matrix.exp, gcc.dg/vmx/vmx.exp, gcc.dg/compat/struct-layout-1.exp, gcc.dg/compat/compat.exp, gcc.dg/compat/struct-layout-1_generate.c, gcc.dg/debug/debug.exp, gcc.dg/debug/dwarf2/dwarf2.exp, gcc.dg/tree-prof/tree-prof.exp, gcc.dg/ipa/ipa.exp, gcc.dg/dfp/dfp.exp, gcc.dg/noncompile/noncompile.exp, gcc.dg/vect/costmodel/ppc/ppc-costmodel-vect.exp, gcc.dg/vect/costmodel/spu/spu-costmodel-vect.exp, gcc.dg/vect/costmodel/i386/i386-costmodel-vect.exp, gcc.dg/vect/costmodel/x86_64/x86_64-costmodel-vect.exp, gcc.dg/vect/vect.exp, gcc.dg/format/format.exp, gcc.misc-tests/i386-prefetch.exp, gcc.misc-tests/sort2.exp, gcc.misc-tests/matrix1.exp, gcc.misc-tests/dectest.exp, gcc.misc-tests/options.exp, gcc.misc-tests/gcov.exp, gcc.misc-tests/mg-2.exp, gcc.misc-tests/mg.exp, gcc.misc-tests/bprob.exp, gcc.misc-tests/acker1.exp, gcc.misc-tests/dhry.exp, gcc.misc-tests/linkage.exp, gcc.misc-tests/arm-isr.exp, gcc.misc-tests/sieve.exp, g++.old-deja/g++.niklas/README, g++.old-deja/g++.gb/README, g++.old-deja/old-deja.exp, gfortran.fortran-torture/execute/execute.exp, gfortran.fortran-torture/compile/compile.exp, treelang/output/output-1.c, treelang/output/output-1.tree, treelang/execute/execute.exp, treelang/Makefile.in, treelang/compile/compile.exp, g++.dg/dg.exp, g++.dg/debug/debug.exp, g++.dg/debug/dwarf2/dwarf2.exp, g++.dg/charset/charset.exp, g++.dg/vect/vect.exp, g++.dg/tls/tls.exp, g++.dg/tree-prof/tree-prof.exp, g++.dg/pch/pch.exp, g++.dg/special/ecos.exp, g++.dg/compat/struct-layout-1.exp, g++.dg/compat/struct-layout-1_generate.c, g++.dg/compat/compat.exp, g++.dg/gcov/gcov.exp, g++.dg/bprob/bprob.exp, config/default.exp, gcc.test-framework/test-framework.awk, gcc.test-framework/gen_directive_tests, gcc.test-framework/test-framework.exp, objc.dg/special/special.exp, objc.dg/gnu-encoding/gnu-encoding.exp, objc.dg/gnu-encoding/struct-layout-encoding-1_generate.c, objc.dg/pch/pch.exp, objc.dg/dg.exp, lib/copy-file.exp, lib/profopt.exp, lib/gcc.exp, lib/mike-g++.exp, lib/c-compat.exp, lib/scanrtl.exp, lib/gfortran-dg.exp, lib/g++.exp, lib/obj-c++.exp, lib/wrapper.exp, lib/gnat-dg.exp, lib/compat.exp, lib/c-torture.exp, lib/gcc-dg.exp, lib/scanasm.exp, lib/gnat.exp, lib/treelang-dg.exp, lib/prune.exp, lib/gcov.exp, lib/treelang.exp, lib/dg-pch.exp, lib/scantree.exp, lib/g++-dg.exp, lib/objc-dg.exp, lib/file-format.exp, lib/target-libpath.exp, lib/obj-c++-dg.exp, lib/scandump.exp, lib/target-supports-dg.exp, lib/gcc-defs.exp, lib/fortran-torture.exp, lib/objc.exp, lib/scanipa.exp, lib/mike-gcc.exp, lib/objc-torture.exp, lib/gfortran.exp, lib/target-supports.exp, obj-c++.dg/dg.exp, gfortran.dg/dg.exp, gfortran.dg/vect/vect.exp, objc/execute/execute.exp, objc/execute/exceptions/exceptions.exp, objc/compile/compile.exp: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127127 138bc75d-0d04-0410-961f-82ee72b054a4
* 2007-07-12 Manuel Lopez-Ibanez <manu@gcc.gnu.org>manu2007-07-1217-17/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Janis Johnson <janis187@us.ibm.com> PR testsuite/25241 gcc/testsuite/ * gcc.test-framework/dg-error-exp-F.c: New test. * gcc.test-framework/dg-warning-exp-F.c: New test. * lib/gcc.exp: Enable warning and error prefixes. * lib/gcc-dg.exp (dg-warning): Wrap original dg-warning. (dg-error): Wrap original dg-error. * gcc.target/powerpc/altivec-types-1.c: Remove explicit error/warning markers from dg-error/dg-warning directives. * gcc.dg/20040322-1.c: Likewise. * gcc.dg/Wchar-subscripts-1.c: Likewise. * gcc.dg/Wdeclaration-after-statement-1.c: Likewise. * gcc.dg/Wdeclaration-after-statement-2.c: Likewise. * gcc.dg/Werror-1.c: Likewise. * gcc.dg/Werror-10.c: Likewise. * gcc.dg/Werror-11.c: Likewise. * gcc.dg/Werror-2.c: Likewise. * gcc.dg/Werror-3.c: Likewise. * gcc.dg/Werror-4.c: Likewise. * gcc.dg/Werror-5.c: Likewise. * gcc.dg/Werror-6.c: Likewise. * gcc.dg/Werror-7.c: Likewise. * gcc.dg/Werror-8.c: Likewise. * gcc.dg/Werror-9.c: Likewise. * gcc.dg/Werror-implicit-function-declaration.c: Likewise. * gcc.dg/Wimplicit-function-declaration-c89-pedantic.c: Likewise. * gcc.dg/Wimplicit-function-declaration-c89.c: Likewise. * gcc.dg/Wimplicit-function-declaration-c99-pedantic.c: Likewise. * gcc.dg/Wimplicit-function-declaration-c99.c: Likewise. * gcc.dg/Wint-to-pointer-cast-1.c: Likewise. * gcc.dg/Wint-to-pointer-cast-2.c: Likewise. * gcc.dg/Wint-to-pointer-cast-3.c: Likewise. * gcc.dg/Wnested-externs-1.c: Likewise. * gcc.dg/Wpointer-to-int-cast-1.c: Likewise. * gcc.dg/Wpointer-to-int-cast-2.c: Likewise. * gcc.dg/Wpointer-to-int-cast-3.c: Likewise. * gcc.dg/Wshadow-3.c: Likewise. * gcc.dg/Wtraditional-conversion-2.c: Likewise. * gcc.dg/Wwrite-strings-1.c: Likewise. * gcc.dg/anon-struct-5.c: Likewise. * gcc.dg/anon-struct-6.c: Likewise. * gcc.dg/anon-struct-7.c: Likewise. * gcc.dg/anon-struct-8.c: Likewise. * gcc.dg/array-8.c: Likewise. * gcc.dg/array-quals-2.c: Likewise. * gcc.dg/asm-qual-1.c: Likewise. * gcc.dg/asm-wide-1.c: Likewise. * gcc.dg/assign-warn-1.c: Likewise. * gcc.dg/assign-warn-2.c: Likewise. * gcc.dg/bitfld-10.c: Likewise. * gcc.dg/bitfld-11.c: Likewise. * gcc.dg/bitfld-12.c: Likewise. * gcc.dg/bitfld-13.c: Likewise. * gcc.dg/bitfld-14.c: Likewise. * gcc.dg/builtin-choose-expr-2.c: Likewise. * gcc.dg/builtins-30.c: Likewise. * gcc.dg/c90-const-expr-5.c: Likewise. * gcc.dg/c90-typespec-1.c: Likewise. * gcc.dg/c99-const-expr-5.c: Likewise. * gcc.dg/c99-flex-array-5.c: Likewise. * gcc.dg/c99-fordecl-3.c: Likewise. * gcc.dg/c99-tag-3.c: Likewise. * gcc.dg/c99-typespec-1.c: Likewise. * gcc.dg/c99-vla-jump-1.c: Likewise. * gcc.dg/c99-vla-jump-2.c: Likewise. * gcc.dg/c99-vla-jump-3.c: Likewise. * gcc.dg/c99-vla-jump-4.c: Likewise. * gcc.dg/c99-vla-jump-5.c: Likewise. * gcc.dg/cast-1.c: Likewise. * gcc.dg/cast-2.c: Likewise. * gcc.dg/cast-3.c: Likewise. * gcc.dg/cast-4.c: Likewise. * gcc.dg/cast-pretty-print-1.c: Likewise. * gcc.dg/comp-goto-2.c: Likewise. * gcc.dg/comp-goto-3.c: Likewise. * gcc.dg/cpp/error-1.c: Likewise. * gcc.dg/cpp/if-paren.c: Likewise. * gcc.dg/decl-7.c: Likewise. * gcc.dg/decl-8.c: Likewise. * gcc.dg/decl-nospec-1.c: Likewise. * gcc.dg/decl-nospec-2.c: Likewise. * gcc.dg/decl-nospec-3.c: Likewise. * gcc.dg/declspec-10.c: Likewise. * gcc.dg/declspec-11.c: Likewise. * gcc.dg/declspec-12.c: Likewise. * gcc.dg/declspec-13.c: Likewise. * gcc.dg/declspec-14.c: Likewise. * gcc.dg/declspec-15.c: Likewise. * gcc.dg/declspec-16.c: Likewise. * gcc.dg/declspec-17.c: Likewise. * gcc.dg/declspec-4.c: Likewise. * gcc.dg/declspec-5.c: Likewise. * gcc.dg/declspec-6.c: Likewise. * gcc.dg/declspec-7.c: Likewise. * gcc.dg/declspec-8.c: Likewise. * gcc.dg/declspec-9.c: Likewise. * gcc.dg/dfp/Wtraditional-conversion-2.c: Likewise. * gcc.dg/dfp/constants-c99.c: Likewise. * gcc.dg/dfp/keywords-c89.c: Likewise. * gcc.dg/dfp/keywords-c99.c: Likewise. * gcc.dg/dfp/keywords-reserved.c: Likewise. * gcc.dg/dfp/typespec.c: Likewise. * gcc.dg/dremf-type-compat-2.c: Likewise. * gcc.dg/dremf-type-compat-3.c: Likewise. * gcc.dg/dremf-type-compat-4.c: Likewise. * gcc.dg/empty-source-2.c: Likewise. * gcc.dg/empty-source-3.c: Likewise. * gcc.dg/enum3.c: Likewise. * gcc.dg/extra-semi-2.c: Likewise. * gcc.dg/extra-semi-3.c: Likewise. * gcc.dg/float-range-1.c: Likewise. * gcc.dg/float-range-2.c: Likewise. * gcc.dg/float-range-3.c: Likewise. * gcc.dg/float-range-5.c: Likewise. * gcc.dg/format/asm_fprintf-2.c: Likewise. * gcc.dg/format/asm_fprintf-3.c: Likewise. * gcc.dg/format/asm_fprintf-4.c: Likewise. * gcc.dg/format/asm_fprintf-5.c: Likewise. * gcc.dg/format/cast-1.c: Likewise. * gcc.dg/format/gcc_diag-3.c: Likewise. * gcc.dg/format/gcc_diag-4.c: Likewise. * gcc.dg/format/gcc_diag-6.c: Likewise. * gcc.dg/format/gcc_diag-8.c: Likewise. * gcc.dg/format/gcc_diag-9.c: Likewise. * gcc.dg/format/nul-2.c: Likewise. * gcc.dg/format/opt-1.c: Likewise. * gcc.dg/format/opt-2.c: Likewise. * gcc.dg/format/opt-3.c: Likewise. * gcc.dg/format/opt-4.c: Likewise. * gcc.dg/format/opt-5.c: Likewise. * gcc.dg/format/opt-6.c: Likewise. * gcc.dg/framework-2.c: Likewise. * gcc.dg/func-args-1.c: Likewise. * gcc.dg/func-outside-1.c: Likewise. * gcc.dg/func-outside-2.c: Likewise. * gcc.dg/gnu-cond-expr-2.c: Likewise. * gcc.dg/gnu-cond-expr-3.c: Likewise. * gcc.dg/if-empty-1.c: Likewise. * gcc.dg/init-bad-1.c: Likewise. * gcc.dg/init-bad-2.c: Likewise. * gcc.dg/init-bad-3.c: Likewise. * gcc.dg/init-desig-obs-2.c: Likewise. * gcc.dg/init-desig-obs-3.c: Likewise. * gcc.dg/init-empty-2.c: Likewise. * gcc.dg/init-empty-3.c: Likewise. * gcc.dg/inline-11.c: Likewise. * gcc.dg/inline-12.c: Likewise. * gcc.dg/inline-8.c: Likewise. * gcc.dg/inline-9.c: Likewise. * gcc.dg/inline3.c: Likewise. * gcc.dg/label-decl-1.c: Likewise. * gcc.dg/label-decl-2.c: Likewise. * gcc.dg/label-decl-3.c: Likewise. * gcc.dg/label-decl-4.c: Likewise. * gcc.dg/long-long-typespec-1.c: Likewise. * gcc.dg/lvalue-2.c: Likewise. * gcc.dg/lvalue-3.c: Likewise. * gcc.dg/nested-func-3.c: Likewise. * gcc.dg/nested-redef-1.c: Likewise. * gcc.dg/noreturn-4.c: Likewise. * gcc.dg/old-style-prom-2.c: Likewise. * gcc.dg/old-style-prom-3.c: Likewise. * gcc.dg/old-style-then-proto-1.c: Likewise. * gcc.dg/overflow-warn-1.c: Likewise. * gcc.dg/overflow-warn-2.c: Likewise. * gcc.dg/overflow-warn-3.c: Likewise. * gcc.dg/overflow-warn-4.c: Likewise. * gcc.dg/overflow-warn-6.c: Likewise. * gcc.dg/parm-forwdecl-2.c: Likewise. * gcc.dg/parm-forwdecl-3.c: Likewise. * gcc.dg/parm-impl-decl-1.c: Likewise. * gcc.dg/parm-impl-decl-2.c: Likewise. * gcc.dg/parm-incomplete-1.c: Likewise. * gcc.dg/parm-mismatch-1.c: Likewise. * gcc.dg/pointer-arith-1.c: Likewise. * gcc.dg/pointer-arith-2.c: Likewise. * gcc.dg/pointer-arith-3.c: Likewise. * gcc.dg/pointer-arith-4.c: Likewise. * gcc.dg/pointer-arith-6.c: Likewise. * gcc.dg/pointer-arith-7.c: Likewise. * gcc.dg/pointer-arith-8.c: Likewise. * gcc.dg/pr13804-1.c: Likewise. * gcc.dg/pr15698-1.c: Likewise. * gcc.dg/pr15698-2.c: Likewise. * gcc.dg/pr15698-3.c: Likewise. * gcc.dg/pr15698-4.c: Likewise. * gcc.dg/pr15698-5.c: Likewise. * gcc.dg/pr15698-6.c: Likewise. * gcc.dg/pr15698-7.c: Likewise. * gcc.dg/pr15698-8.c: Likewise. * gcc.dg/pr17188-1.c: Likewise. * gcc.dg/pr17301-1.c: Likewise. * gcc.dg/pr17301-2.c: Likewise. * gcc.dg/pr17730-1.c: Likewise. * gcc.dg/pr20368-1.c: Likewise. * gcc.dg/pr20368-2.c: Likewise. * gcc.dg/pr20368-3.c: Likewise. * gcc.dg/pr22308-1.c: Likewise. * gcc.dg/qual-component-1.c: Likewise. * gcc.dg/redecl-1.c: Likewise. * gcc.dg/redecl-11.c: Likewise. * gcc.dg/redecl-12.c: Likewise. * gcc.dg/redecl-13.c: Likewise. * gcc.dg/redecl-14.c: Likewise. * gcc.dg/redecl-15.c: Likewise. * gcc.dg/register-var-1.c: Likewise. * gcc.dg/register-var-2.c: Likewise. * gcc.dg/stmt-expr-2.c: Likewise. * gcc.dg/stmt-expr-3.c: Likewise. * gcc.dg/stmt-expr-label-1.c: Likewise. * gcc.dg/stmt-expr-label-2.c: Likewise. * gcc.dg/stmt-expr-label-3.c: Likewise. * gcc.dg/struct-empty-2.c: Likewise. * gcc.dg/struct-empty-3.c: Likewise. * gcc.dg/struct-parse-1.c: Likewise. * gcc.dg/struct-semi-1.c: Likewise. * gcc.dg/struct-semi-2.c: Likewise. * gcc.dg/struct-semi-3.c: Likewise. * gcc.dg/switch-5.c: Likewise. * gcc.dg/switch-6.c: Likewise. * gcc.dg/switch-7.c: Likewise. * gcc.dg/tls/diag-5.c: Likewise. * gcc.dg/transparent-union-1.c: Likewise. * gcc.dg/transparent-union-3.c: Likewise. * gcc.dg/typespec-1.c: Likewise. * gcc.dg/vla-init-2.c: Likewise. * gcc.dg/vla-init-3.c: Likewise. * gcc.dg/vla-init-4.c: Likewise. * gcc.dg/vla-init-5.c: Likewise. * gcc.dg/void-cast-2.c: Likewise. * gcc.dg/wvla-3.c: Likewise. * gcc.dg/wvla-7.c: Likewise. * gcc.target/i386/991209-1.c: Likewise. * gcc.target/ia64/fpreg-1.c: Likewise. * gcc.target/m68k/interrupt_thread-2.c: Likewise. * gcc.target/m68k/interrupt_thread-3.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126606 138bc75d-0d04-0410-961f-82ee72b054a4
* Separate NUL byte detection from rest of -Wformat warningskorbb2007-04-073-0/+37
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@123640 138bc75d-0d04-0410-961f-82ee72b054a4
* * lib/target-supports.exp (check_effective_target_int32plus): New.dj2006-04-131-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (check_effective_target_ptr32plus): New. (check_effective_target_size32plus): New. (check_effective_target_int16): New. (check_profiling_available): Add m32c to the list of unsupported targets. * gcc.c-torture/compile/20000804-1.c: Skip m32c also. * gcc.c-torture/compile/20001226-1.c: Skip m32c due to small memory size. * gcc.c-torture/compile/20010327-1.c: Skip m32c due to non-SI pointers. * gcc.c-torture/compile/20020604-1.c: Skip m32c due to small size_t. * gcc.c-torture/compile/20050303-1.c: Require >=32 bit integers and size_t. * gcc.c-torture/compile/980506-1.c: Require >=32 bit size_t. * gcc.c-torture/execute/20020404-1.x: Check for any 16 bit target, not just xstormy16. Skip m32c due to weird pointer size. * gcc.c-torture/execute/20021024-1.x: Check for any 16 bit target, not just xstormy16. * gcc.c-torture/execute/shiftdi.x: Check for any 16 bit target, not just xstormy16. * gcc.dg/20020312-2.c: Add m32c support. * gcc.dg/20040622-2.c: Require >=32 bit pointers. * gcc.dg/20050321-1.c: XFail m32c due to incorrect malloc prototype in test. * gcc.dg/20050321-2.c: Require >=32 bit integers. * gcc.dg/asm-1.c: Skip if int and short are the same size. * gcc.dg/fold-mod-1.c: Require >=32 bit integers. * gcc.dg/fold-overflow-1.c: Skip m32c due to small const types in asm. * gcc.dg/format/bitfld-1.c: Require >=32 bit integers due to printf formats * gcc.dg/init-string-2.c: Require >=32 bit integers. * gcc.dg/max-1.c: Skip m32c in r8c or m16c mode due to small pointers. * gcc.dg/noncompile/920923-1.c: Skip small-int message for int16 hosts. * gcc.dg/pch/struct-1.c: Require >= 32 bit integers. * gcc.dg/pr14796-2.c: Require >=32 bit integers. * gcc.dg/pr17112-1.c: Require >=32 bit integers. * gcc.dg/pr18241-1.c: XFail m32c due to incorrect memset prototype in test. * gcc.dg/pr18241-2.c: XFail m32c due to incorrect memset prototype in test. * gcc.dg/pr19340.c: Skip m32c due to lack of scheduling. * gcc.dg/pr23049.c: Require >=32 bit integers. * gcc.dg/torture/pr26565.c: Skip m32c as everything is already packed. * gcc.dg/torture/pr26587.c: Require >=32 bit integers. * gcc.dg/torture/pr26630.c: Require >=32 bit integers. * gcc.dg/tree-ssa/loop-10.c: Require >=32 bit integers. * gcc.dg/tree-ssa/loop-2.c: Require >=32 bit size_t. * gcc.dg/tree-ssa/loop-4.c: Require >=32 bit size_t. * gcc.dg/tree-ssa/ltrans-1.c: Require >=32 bit size_t. * gcc.dg/tree-ssa/ltrans-2.c: Require >=32 bit size_t. * gcc.dg/tree-ssa/ltrans-3.c: Require >=32 bit size_t. * gcc.dg/tree-ssa/ltrans-4.c: Require >=32 bit size_t. * gcc.dg/tree-ssa/pr14341.c: Require >=32 bit integers. * gcc.dg/tree-ssa/pr23382.c: XFail m32c due to incorrect malloc prototype in test. * gcc.dg/tree-ssa/pr24627.c: Require >=32 bit integers. * gcc.dg/tree-ssa/pr26180.c: Require >=32 bit integers. * gcc.dg/tree-ssa/vrp14.c: Require >=32 bit integers. * gcc.dg/tree-ssa/vrp21.c: Require >=32 bit integers. * gcc.dg/tree-ssa/vrp22.c: Require >=32 bit integers. * gcc.c-torture/execute/20040629-1.x: New. Require >16 bit integers. * gcc.c-torture/execute/20040703-1.x: Likewise. * gcc.c-torture/execute/20040705-1.x: Likewise. * gcc.c-torture/execute/20040705-2.x: Likewise. * gcc.c-torture/execute/20040709-1.x: Likewise. * gcc.c-torture/execute/20040709-2.x: Likewise. * gcc.c-torture/execute/20040811-1.x: Likewise. * gcc.c-torture/execute/20050316-1.x: Likewise. * gcc.c-torture/execute/bitfld-4.x: Likewise. * gcc.c-torture/execute/pr19689.x: Likewise. * gcc.c-torture/execute/pr7284-1.x: Likewise. * gcc.c-torture/execute/usmul.x: Likewise. * gcc.c-torture/execute/vrp-5.x: Likewise. * gcc.c-torture/execute/vrp-6.x: Likewise. * gcc.dg/debug/20041023-1.s: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@112934 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc.dg/nodfp-1.c: New test.bje2006-01-112-0/+221
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gcc.dg/compat/scalar-return-dfp_x.c: Likewise. * gcc.dg/compat/scalar-return-dfp_x.c: Likewise. * gcc.dg/compat/scalar-return-dfp_main.c: Likewise. * gcc.dg/compat/scalar-by-value-dfp_main.c: Likewise. * gcc.dg/compat/scalar-by-value-dfp_x.c: Likewise. * gcc.dg/compat/scalar-return-dfp_y.c: Likewise. * gcc.dg/compat/scalar-by-value-dfp_y.c: Likewise. * gcc.dg/debug/dwarf2/dwarf-float.c: Likewise. * gcc.dg/debug/dwarf2/dwarf-dfp.c: Likewise. * gcc.dg/format/dfp-scanf-1.c: Likewise. * gcc.dg/format/dfp-printf-1.c: Likewise. * gcc.dg/compat/struct-layout-1.exp: Use c-compat.exp. (compat_setup_dfp): New. * gcc.dg/compat/compat.exp: Use it. (compat-use-alt-compiler, compat-use-tst-compiler): Move to new file. Make some variables global, prepend "compat_" to their names. * gcc.dg/compat/struct-layout-1.h: Conditional DFP support. * gcc.dg/compat/struct-layout-1_generate.c: Ditto. * gcc.misc-tests/dectest.exp: New test driver for decTest. * lib/compat.exp (compat_skip_list): Make global, rename. * lib/c-compat.exp: New file. * lib/target-supports.exp (check_effective_target_dfp): New. * gcc.dg/dfp/dec-eval-method.c, gcc.dg/dfp/func-array.c, gcc.dg/dfp/convert-dfp-fold.c, gcc.dg/dfp/struct-union.c, gcc.dg/dfp/compare-rel.h, gcc.dg/dfp/convert-dfp-round.c, gcc.dg/dfp/func-struct.c, gcc.dg/dfp/constants-c99.c, gcc.dg/dfp/compare-eq-d32.c, gcc.dg/dfp/func-vararg-mixed.c, gcc.dg/dfp/compare-rel-d128.c, gcc.dg/dfp/operator-comma.c, gcc.dg/dfp/decfloat-constants.c, gcc.dg/dfp/operator-bitwise.c, gcc.dg/dfp/func-mixed.c, gcc.dg/dfp/compare-eq-dfp.c, gcc.dg/dfp/operator-assignment.c, gcc.dg/dfp/dfp-round.h, gcc.dg/dfp/modes.c, gcc.dg/dfp/keywords-c99.c, gcc.dg/dfp/nan-1.c, gcc.dg/dfp/loop-index.c, gcc.dg/dfp/compare-eq-d64.c, gcc.dg/dfp/convert-bfp.c, gcc.dg/dfp/usual-arith-conv-const.c, gcc.dg/dfp/convert-dfp.c, gcc.dg/dfp/compare-rel-const.c, gcc.dg/dfp/convert-int-fold.c, gcc.dg/dfp/keywords-pedantic.c, gcc.dg/dfp/compare-rel-d32.c, gcc.dg/dfp/call-by-value.c, gcc.dg/dfp/constants-hex.c, gcc.dg/dfp/func-scalar.c, gcc.dg/dfp/keywords-ignored-c99.c, gcc.dg/dfp/snan.c, gcc.dg/dfp/usual-arith-conv.c, gcc.dg/dfp/constants-pedantic.c, gcc.dg/dfp/operator-logical.c, gcc.dg/dfp/compare-eq-d128.c, gcc.dg/dfp/convert-bfp-fold.c, gcc.dg/dfp/ctypes.c, gcc.dg/dfp/convert-int.c, gcc.dg/dfp/keywords-c89.c, gcc.dg/dfp/constants.c, gcc.dg/dfp/compare-rel-dfp.c, gcc.dg/dfp/compare-eq-const.c, gcc.dg/dfp/cast-bad.c, gcc.dg/dfp/operator-arith-fold.c, gcc.dg/dfp/union-init.c, gcc.dg/dfp/struct-layout-1.c, gcc.dg/dfp/compare-eq.hgcc.dg/dfp/convert-int-saturate.c, gcc.dg/dfp/compare-rel-d64.c, gcc.dg/dfp/func-vararg-size0.c, gcc.dg/dfp/Wconversion-2.c, gcc.dg/dfp/nan-2.c, gcc.dg/dfp/operator-cond.c, gcc.dg/dfp/composite-type.c, gcc.dg/dfp/func-vararg-dfp.c, gcc.dg/dfp/dfp.expgcc.dg/dfp/keywords-reserved.c, gcc.dg/dfp/convert-complex.c, gcc.dg/dfp/Wbad-function-cast-1.c, gcc.dg/dfp/operator-unary.c, gcc.dg/dfp/altivec-types.c, gcc.dg/dfp/cast.c, gcc.dg/dfp/typespec.c, gcc.dg/dfp/wtr-conversion-1.c: New tests. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109604 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/carlos2006-01-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | 2006-01-05 Carlos O'Donell <carlos@codesourcery.com> * c-typeck.c (build_c_cast): Always warn when casting from a pointer to an integer of different size, even if the node was constant. gcc/testsuite 2006-01-05 Carlos O'Donell <carlos@codesourcery.com> * gcc.dg/cast-1.c: Add new warning. * gcc.dg/cast-2.c: Likewise. * gcc.dg/cast-3.c: Likewise. * gcc.dg/format/cast-1.c: Likewise. * gcc.dg/cast-4.c: New testcase. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109386 138bc75d-0d04-0410-961f-82ee72b054a4
* PR testsuite/20772ghazi2005-12-101-2/+2
| | | | | | | | | | | | | | | | | | | | | | | * g++.dg/abi/mangle24.C, g++.dg/abi/mangle25.C, g++.dg/ext/vector2.C, g++.dg/opt/longbranch2.C, g++.dg/opt/mmx1.C, g++.dg/opt/reg-stack4.C, gcc.dg/20020108-1.c, gcc.dg/20020122-2.c, gcc.dg/20020122-3.c, gcc.dg/20020206-1.c, gcc.dg/20020310-1.c, gcc.dg/20020411-1.c, gcc.dg/20020418-2.c, gcc.dg/20020426-2.c, gcc.dg/20020517-1.c, gcc.dg/20030204-1.c, gcc.dg/20030826-2.c, gcc.dg/20031202-1.c, gcc.dg/format/unnamed-1.c, gcc.dg/setjmp-2.c, gcc.dg/short-compare-1.c, gcc.dg/short-compare-2.c, gcc.dg/tls/opt-1.c, gcc.dg/tls/opt-2.c, gcc.dg/torture/fp-int-convert-float128-timode.c, gcc.dg/torture/fp-int-convert-float128.c, gcc.dg/torture/fp-int-convert-float80-timode.c, gcc.dg/torture/fp-int-convert-float80.c, gcc.dg/unroll-1.c, gcc.target/i386/20030926-1.c: Merge i?86 and x86_64 cases. * gcc.dg/tls/opt-1.c: Require effective target fpic. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@108348 138bc75d-0d04-0410-961f-82ee72b054a4
* * c-common.c (binary_op_error): Do not allow NOP_EXPR.jsm282005-12-041-0/+16
| | | | | | | | | | | | | | | | | (c_common_truthvalue_conversion): Handle NOP_EXPR the same as CONVERT_EXPR. (check_function_arguments_recurse): Allow both NOP_EXPR and CONVERT_EXPR but check conversions preserve precision. * c-typeck.c (pointer_diff): Allow both NOP_EXPR and CONVERT_EXPR but check conversions preserve precision. (build_unary_op): Don't allow NOP_EXPR. Use gcc_unreachable () in default case. testsuite: * gcc.dg/format/cast-1.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@108020 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc.dg/format/unnamed-1.c: Add -msse for x86 compilation toaj2005-11-041-1/+3
| | | | | | | | avoid extra warnings. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@106486 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c/24329jsm282005-11-031-0/+22
| | | | | | | | | | | * c-pretty-print.c (pp_c_type_specifier): Do not recurse if c_common_type_for_mode returns an unnamed type. testsuite: * gcc.dg/format/unnamed-1.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@106421 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c/22476ghazi2005-07-197-9/+139
| | | | | | | | | | | | | | | | | | | | | | | | * c-common.c (check_function_arguments): Call 'check_function_format' if either -Wformat or -Wmissing-format-attribute are specified. * c-format.c (check_function_format): Check -Wformat before calling 'check_format_info'. * c-opts.c (c_common_post_options): Don't warn for -Wmissing-format-attribute without -Wformat. * c-typeck.c (convert_for_assignment): Detect additional cases for -Wmissing-format-attribute. * doc/invoke.texi (-Wmissing-format-attribute): Document new behavior. testsuite: * gcc.dg/format/miss-1.c, gcc.dg/format/miss-2.c: Don't specify -Wformat for these tests. * gcc.dg/format/miss-3.c, gcc.dg/format/miss-4.c, gcc.dg/format/miss-5.c, gcc.dg/format/miss-6.c: New. * gcc.dg/format/opt-6.c: Delete. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@102155 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c/22421jsm282005-07-161-0/+46
| | | | | | | | | | | | * c-decl.c (c_build_bitfield_integer_type): New function. (finish_struct): Call it. * c-pretty-print.c (pp_c_type_specifier): Handle bit-field types. testsuite: * gcc.dg/format/bitfld-1.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@102091 138bc75d-0d04-0410-961f-82ee72b054a4
* * c-format.c (gcc_gfc_format_type, gcc_gfc_flag_pairs,ghazi2005-07-031-0/+30
| | | | | | | | | | | | | | | | | | | gcc_gfc_char_table, init_dynamic_gfc_info): New. (format_types_orig, handle_format_attribute): Add support for format "gcc_gfc". fortran: * error.c (error_printf, error_print): Use ATTRIBUTE_GCC_GFC. * gfortran.h (ATTRIBUTE_GCC_GFC): New. (gfc_warning, gfc_warning_now, gfc_error, gfc_error_now, gfc_fatal_error, gfc_internal_error, gfc_notify_std): Use ATTRIBUTE_GCC_GFC. testsuite: * gcc.dg/format/gcc_gfc-1.c: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101552 138bc75d-0d04-0410-961f-82ee72b054a4
* * c-common.h (GCC_DIAG_STYLE): Define.jsm282005-07-031-0/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * c-tree.h (GCC_DIAG_STYLE): Do not define. Change minimum GCC version for format checking to 4.1. * c-format.c: Include toplev.h after c-common.h. (enum format_type): Add gcc_tdiag_format_type. (gcc_tdiag_length_specs, gcc_tdiag_flag_pairs, gcc_tdiag_flag_specs, gcc_tdiag_char_table): New. (format_types_orig): Add gcc_tdiag. (init_dynamic_diag_info): Support gcc_tdiag formats. (handle_format_attribute): Likewise. * toplev.h (NO_FRONT_END_DIAG, ATTRIBUTE_GCC_FE_DIAG): Remove. (GCC_DIAG_STYLE): Default to __gcc_tdiag__. Change minimum GCC version for format checking to 4.1. (warning0, warning, error, pedwarn, sorry): Use ATTRIBUTE_GCC_DIAG. * config/rs6000/rs6000.c (altivec_expand_builtin), varasm.c (finish_aliases_1): Do not use %qE. * config/arm/arm.c, config/i386/i386.c, config/mmix/mmix.c, config/pdp11/pdp11.c, stor-layout.c, tree-eh.c, tree-ssa.c: Correct format bugs. * config/v850/v850-protos.h (v850_output_aligned_bss): Change size parameter to unsigned HOST_WIDE_INT. * config/v850/v850.c (v850_output_aligned_bss): Likewise. cp: * cp-tree.h (GCC_DIAG_STYLE): #undef before defining. Change minimum GCC version for format checking to 4.1. testsuite: * gcc.dg/format/gcc_diag-1.c: Update. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101543 138bc75d-0d04-0410-961f-82ee72b054a4
* 2005-07-02 Zack Weinberg <zack@codesourcery.com>jsm282005-07-021-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Joseph S. Myers <joseph@codesourcery.com> * toplev.c (default_tree_printer): Handle setting location with '+' flag. * c-objc.common.c (c_tree_printer): Likewise. * c-format.c (gcc_diag_flag_specs): Add '+'. (gcc_cdiag_char_table): Allow '+' flag for tree formats. (format_types_orig): Allow '+' flag for gcc_diag and gcc_cdiag formats. * c-common.c, c-decl.c, c-objc-common.c, c-pragma.c, config/arm/pe.c, config/i386/winnt.c, config/ia64/ia64.c, config/mcore/mcore.c, config/sh/symbian.c, config/sol2.c, config/v850/v850.c, function.c, stor-layout.c, toplev.c, tree-inline.c, tree-optimize.c, tree.c, varasm.c: Use '+' flag instead of %J or %H. Use 'q' flag for quoting. Avoid '.' at end of diagnostics. Use %q+D not %s for a decl. Do not pass excess format arguments where %J is used without %D. cp: * error.c (location_of): Add comment. (locate_error, cp_error_at, cp_warning_at, cp_pedwarn_at): Remove. * cp-tree.h (cp_error_at, cp_warning_at, cp_pedwarn_at): Remove. * call.c, class.c, decl.c, decl2.c, friend.c, init.c, name-lookup.c, parser.c, pt.c, search.c, semantics.c, typeck.c, typeck2.c: Use '+' flag instead of %J, cp_error_at, cp_warning_at or cp_pedwarn_at. Mark up some diagnostic strings with N_. java: * class.c, decl.c, expr.c: Use '+' flag instead of %J. Use 'q' flag for quoting. objc: * objc-act.c: Use '+' flag instead of %J. Use 'q' flag for quoting. testsuite: * gcc.dg/format/gcc_diag-1.c: Update. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101532 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c/21911ghazi2005-06-261-16/+23
| | | | | | | | | | | | | | | | | | | | * c-common.c (check_function_sentinel): Pass in named argument list, skip over named arguments before looking for a sentinel. (check_function_arguments): Pass in named argument list. * c-common.h (check_function_arguments): Likewise. * c-typeck.c (build_function_call): Likewise. cp: * call.c (build_over_call): Pass in named argument list to `check_function_arguments'. * typeck.c (build_function_call): Likewise. testsuite: PR c/21911 * gcc.dg/format/sentinel-1.c: Update. Fix execl* calls. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101341 138bc75d-0d04-0410-961f-82ee72b054a4
* Update FSF address.kcook2005-06-251-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101316 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/sol2-c.c (cmn_err_char_table): Allow width for %bjsm282005-06-081-0/+1
| | | | | | | | | | formats. testsuite: * gcc.dg/format/cmn_err-1.c: Update. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100763 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c/20740jsm282005-04-2612-0/+119
| | | | | | | | | | | | | | | | | | | | * c-format.c (init_dynamic_asm_fprintf_info): Give errors, not assertion failures, if __gcc_host_wide_int__ is not properly defined. (init_dynamic_diag_info): Give errors, not assertion failures, if location_t, tree or __gcc_host_wide_int__ are not properly defined. testsuite: * gcc.dg/format/asm_fprintf-2.c, gcc.dg/format/asm_fprintf-3.c, gcc.dg/format/asm_fprintf-4.c, gcc.dg/format/asm_fprintf-5.c, gcc.dg/format/gcc_diag-2.c, gcc.dg/format/gcc_diag-3.c, gcc.dg/format/gcc_diag-4.c, gcc.dg/format/gcc_diag-5.c, gcc.dg/format/gcc_diag-6.c, gcc.dg/format/gcc_diag-7.c , gcc.dg/format/gcc_diag-8.c, gcc.dg/format/gcc_diag-9.c: New tests. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98800 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc.dg/builtin-choose-expr-2.c, gcc.dg/cast-1.c,jsm282004-11-286-0/+42
| | | | | | | | | | | | gcc.dg/cast-2.c, gcc.dg/cast-3.c, gcc.dg/format/opt-1.c, gcc.dg/format/opt-2.c, gcc.dg/format/opt-3.c, gcc.dg/format/opt-4.c, gcc.dg/format/opt-5.c, gcc.dg/format/opt-6.c, gcc.dg/pointer-arith-5.c, gcc.dg/pointer-arith-6.c, gcc.dg/pointer-arith-7.c, gcc.dg/pointer-arith-8.c: New tests. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@91405 138bc75d-0d04-0410-961f-82ee72b054a4
* 2004-11-15 Mark Mitchell <mark@codesourcery.com>jsm282004-11-151-1/+2
| | | | | | | | | | | | * config/sol2-c.c (cmn_err_char_table): Add "p". testsuite: 2004-11-15 Mark Mitchell <mark@codesourcery.com> * gcc.dg/format/cmn-err-1.c: Add tests for "%p". git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@90673 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc.dg/c99-flex-array-5.c, gcc.dg/c99-fordecl-3.c,jsm282004-11-141-0/+13
| | | | | | | | | | | gcc.dg/comp-goto-1.c, gcc.dg/comp-goto-2.c, gcc.dg/comp-goto-3.c, gcc.dg/format/strfmon-2.c, gcc.dg/pointer-arith-1.c, gcc.dg/pointer-arith-2.c, gcc.dg/pointer-arith-3.c, gcc.dg/pointer-arith-4.c, gcc.dg/switch-5.c, gcc.dg/switch-6.c, gcc.dg/switch-7.c: New tests. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@90637 138bc75d-0d04-0410-961f-82ee72b054a4
* * builtin-attrs.def (ATTR_NOTHROW_SENTINEL_1): New.ghazi2004-09-051-0/+29
| | | | | | | | | | | | | | * builtins.def (BUILT_IN_EXECLE): Set ATTR_NOTHROW_SENTINEL_1. * c-common.c (c_common_attribute_table): Accept parameters to sentinel attribute. (check_function_sentinel, handle_sentinel_attribute): Likewise. * doc/extend.texi: Update accordingly. testsuite: * gcc.dg/format/sentinel-1.c: Update for parameter option. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@87098 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc:ghazi2004-09-051-0/+37
| | | | | | | | | | | | | | | | | | | | | | | * builtin-attrs.def (ATTR_SENTINEL, ATTR_SENTINEL_NOTHROW_LIST): New. * builtins.def (BUILT_IN_EXECL, BUILT_IN_EXECLP): Add `sentinel' attribute. * c-common.c (handle_sentinel_attribute, check_function_sentinel): New functions. (c_common_attribute_table): Add `sentinel' attribute. (check_function_arguments): Handle `sentinel' attribute. * doc/extend.texi: Document `sentinel' attribute. gcc/testsuite: * gcc.dg/format/sentinel-1.c: New test. include: * ansidecl.h (ATTRIBUTE_SENTINEL): Define. * libiberty.h (concat, reconcat, concat_length, concat_copy, concat_copy2): Use ATTRIBUTE_SENTINEL. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@87096 138bc75d-0d04-0410-961f-82ee72b054a4
* /rth2004-09-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * configure.in: Remove target-libstdc++-v3 from noconfigdirs for *-*-netware, but add target-libmudflap. Consolidate *-*-netware targets (of which really only i?86 exists) into a single entry. * configure: Likewise. gcc/ * config.gcc: Resurrect NetWare as a target. Handle special case of Novell linker to be used (specified through --with-ld=) and threading model of either Posix (default) or NKS. * config/i386/i386.c (ix86_return_pops_args): Conditionalize popping of incoming hidden argument on KEEP_AGGREGATE_RETURN_POINTER. * config/i386/i386.h (KEEP_AGGREGATE_RETURN_POINTER): New. * config/i386/netware.c, config/i386/netware.h: New. * config/i386/nwld.c, config/i386/nwld.h: New. * config/i386/netware-crt0.c: New. * config/i386/netware-libgcc.c: New. * config/i386/netware-libgcc.def: New. * config/i386/netware-libgcc.exp: New. * config/i386/t-netware, config/i386/t-nwld: New. * gthr-nks.h: New. * doc/install.texi: Document NKS threading model. gcc/cp/ * g++spec.c (MATH_LIBRARY_PROFILE): Default to MATH_LIBRARY rather than "-lm". gcc/testsuite/ * g++.dg/abi/bitfield5.C: Use -mno-ms-bitfields. * g++.old-deja/g++.jason/thunk2.C: xfail for NetWare. * g++.old-deja/g++.law/profile1.C: xfail for NetWare. * g++.old-deja/g++.other/store-expr1.C: xfail for NetWare. * gcc.c-torture/compile/20001109-1.c: xfail for NetWare. * gcc.c-torture/compile/20001109-2.c: xfail for NetWare. * gcc.c-torture/execute/multi-ix.c: Use __builtin_bzero rather than the non-portable bzero. * gcc.dg/20010912-1.c: xfail for NetWare. * gcc.dg/20020426-2.c: xfail for NetWare. * gcc.dg/20021014-1.c: xfail for NetWare. * gcc.dg/20021018-1.c: xfail for NetWare. * gcc.dg/20030213-1.c: xfail for NetWare. * gcc.dg/20030225-1.c: xfail for NetWare. * gcc.dg/20030708-1.c: xfail for NetWare. * gcc.dg/builtins-config.h: Also exclude NetWare. * gcc.dg/format/format.h: Define restrict only if not already defined. * gcc.dg/nest.c: xfail for NetWare. * gcc.dg/special/gcsec-1.c: Don't pass -static for NetWare. * lib/target-supports.exp (check_visibility_available): Exclude NetWare. fixincludes/ * inclhack.def: Suppress exception_structure and math_exception for NetWare headers. * fixincl.x: Regenerate. libstdc++-v3/ * crossconfig.m4: Add NetWare as a target. * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@87040 138bc75d-0d04-0410-961f-82ee72b054a4
* * c-common.c (c_stddef_cpp_builtins): Define __INTMAX_TYPE__ andjsm282004-08-051-25/+2
| | | | | | | | | | | | | | | | | | | __UINTMAX_TYPE__. * c-cppbuiltin.c (builtin_define_stdint_macros): New. Define __INTMAX_MAX__. (c_cpp_builtins): Call it. * doc/cpp.texi: Update. testsuite: * gcc.c-torture/execute/builtins/abs-2.c, gcc.c-torture/execute/builtins/abs-3.c, gcc.c-torture/execute/builtins/lib/abs.c, gcc.dg/format/format.h, gcc.dg/torture/builtin-attr-1.c: Use predefined macros for intmax_t, uintmax_t and their limits. * gcc.dg/intmax_t-1.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85588 138bc75d-0d04-0410-961f-82ee72b054a4
* * c-decl.c (implicitly_declare): Diagnose incompatible implicitjsm282004-08-031-0/+1
| | | | | | | | | | | | declarations. testsuite: * gcc.dg/redecl-5.c: New test. * gcc.dg/format/attr-6.c: Expect warning for implicit declaration of scanf. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85509 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/drow2004-07-191-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Makefile.in (c-format.o): Depend on c-format.h. * c-format.h: New file. (struct format_char_info): Add CHAIN member. * c-format.c: Move some types and constants to c-format.h. (format_type_error): Set to -1. (struct function_format_info): Use an int for format_type. (decode_format_type): Return an int. Return format_type_error on error. (print_char_table, asm_fprintf_char_table, gcc_diag_char_table) (gcc_diag_char_table, gcc_cdiag_char_table, gcc_cxxdiag_char_table) (scan_char_table, time_char_table, monetary_char_table): Initialize CHAIN to NULL. (n_format_types): New variable. (check_format_info_main): Handle CHAIN in format_char_info. (handle_format_attribute): Handle TARGET_FORMAT_TYPES and TARGET_N_FORMAT_TYPES. * config.gcc (i[34567]86-*-solaris2*, sparc64-*-solaris2*) (sparc-*-solaris2*): Include config/t-sol2 and config/sol2-c.c. * config/sol2-c.c: New file. * config/t-sol2: New file. * config/sol2.h (TARGET_N_FORMAT_TYPES, TARGET_FORMAT_TYPES): Define. * config/sparc/elf.h, config/sparc/sp64-elf.h: Undefine TARGET_N_FORMAT_TYPES and TARGET_FORMAT_TYPES. * doc/extend.texi (Target Format Checks): New section. (Function Attributes): Mention it. * doc/invoke.texi: Mention target format checks. * doc/sourcebuild.texi: Mention target format checks. * dc/tm.texi (Misc): Document TARGET_N_FORMAT_TYPES and TARGET_FORMAT_TYPES. testsuite/ * gcc.dg/format/cmn-err-1.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@84920 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c/1027jsm282004-07-015-16/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * c-lang.c (c_initialize_diagnostics): Move from here ... * c-objc-common.c: ... to here. Include "c-pretty-print.h". (c_tree_printer): Use pretty-printer to format %T. * c-pretty-print.c (pp_c_specifier_qualifier_list): Include space before '*' if not C++. (pp_c_direct_abstract_declarator): Don't try to print array upper bound for flexible array members. * c-tree.h: Include "diagnostic.h". (c_initialize_diagnostics): Declare. * objc/objc-lang.c (LANG_HOOKS_INITIALIZE_DIAGNOSTICS): Define. * c-format.c (format_type_warning): New function. Improve diagnostics for incorrect format argument types. (check_format_types): Use it. Add two parameters. Use the TYPE_MAIN_VARIANT of wanted_type. (check_format_info_main): Pass new parameters to check_format_types. (struct format_wanted_type): Update comment. testsuite: * gcc.dg/Wswitch-enum.c, gcc.dg/Wswitch.c, gcc.dg/format/branch-1.c, gcc.dg/format/diag-1.c, gcc.dg/format/multattr-3.c, gcc.dg/format/xopen-1.c: Update expected warning text. * gcc.dg/format/diag-2.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@83965 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c/15444jsm282004-05-152-1/+16
| | | | | | | | | | | | | * c-format.c (avoid_dollar_number): New function. (check_format_info_main): Call avoid_dollar_number when operand numbers might occur but has_operand_number == 0. testsuite: * gcc.dg/format/xopen-1.c: Adjust expected message. * gcc.dg/format/xopen-3.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@81871 138bc75d-0d04-0410-961f-82ee72b054a4
* * c-format.c (print_char_table): Allow 'I' flag on floating pointjsm282003-12-201-7/+7
| | | | | | | | | | | decimal formats. testsuite: * gcc.dg/format/ext-1.c: Allow 'I' flag on floating point decimal formats. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@74860 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c/3190jsm282003-11-085-6/+6
| | | | | | | | | | | | | | | | PR c/8714 * c-format.c (set_Wformat): Do not enable -Wformat-y2k by default. * invoke.texi: Update. testsuite: PR c/3190 PR c/8714 * gcc.dg/format/c90-strftime-1.c, gcc.dg/format/c90-strftime-2.c, gcc.dg/format/c99-strftime-1.c, gcc.dg/format/ext3.c, gcc.dg/format/no-y2k-1.c: Update. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@73378 138bc75d-0d04-0410-961f-82ee72b054a4
* * c-format.c (gcc_diag_char_table): Add %J.rth2003-09-211-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | (gcc_cdiag_char_table, gcc_cxxdiag_char_table): Likewise. (check_format_types): Fix wanted_type name lookup. (init_dynamic_diag_info): Setup %J. * diagnostic.c (text_specifies_location): Implement %J. * c-common.c, c-decl.c, c-objc-common.c, c-pragma.c, calls.c, dwarfout.c, expr.c, function.c, stmt.c, stor-layout.c, toplev.c, tree-inline.c, tree-optimize.c, varasm.c, config/arm/pe.c, config/i386/winnt.c, config/ia64/ia64.c, config/mcore/mcore.c, config/v850/v850.c, objc/objc-act.c: Use %J in diagnostics. * tree-inline.c: Include intl.h (inline_forbidden_p_1): Fix i18n of inline_forbidden_reason. * Makefile.in (tree-inline.o): Update. cp/ * decl.c, decl2.c, pt.c: Use %J in diagnostics. java/ * check-init.c, class.c, decl.c, expr.c: Use %J in diagnostics. testsuite/ * gcc.dg/format/gcc_diag-1.c: Add tests for %J. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71619 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc:ghazi2003-06-301-0/+185
| | | | | | | | | | | | | | | | | | | | | | * builtin-attrs.def (gcc_diag, gcc_cdiag, gcc_cxxdiag): New format attributes. * c-format.c (enum format_type): Add gcc_diag_format_type, gcc_cdiag_format_type, and gcc_cxxdiag_format_type. (gcc_diag_length_specs, gcc_cdiag_length_specs, gcc_cxxdiag_length_specs, gcc_diag_flag_pairs, gcc_cdiag_flag_pairs, gcc_cxxdiag_flag_pairs, gcc_diag_flag_specs, gcc_cdiag_flag_specs, gcc_cxxdiag_flag_specs, gcc_diag_char_table, gcc_cdiag_char_table, gcc_cxxdiag_char_table): New. (format_types_orig): Add new data. (find_char_info_specifier_index, init_dynamic_diag_info): New functions. (handle_format_attribute): Update to handle new format attributes. testsuite: * gcc.dg/format/gcc_diag-1.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68689 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc:ghazi2003-06-131-5/+3
| | | | | | | | | | | * c-format.c (format_types_orig): Disallow '*' width/precision in asm_fprintf format checks. testsuite: * gcc.dg/format/asm_fprintf-1.c: Update width/precision checks. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@67897 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc.dg/format/asm_fprintf-1.c: New test.ghazi2003-06-051-0/+82
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@67519 138bc75d-0d04-0410-961f-82ee72b054a4
* PR c++/9367sayle2003-03-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * builtin-types.def (DEF_FUNCTION_TYPE_VAR_3): New macro. (BT_FN_INT_CONST_STRING_VALIST_ARG, BT_FN_INT_STRING_CONST_STRING_VALIST_ARG, BT_FN_INT_CONST_STRING_CONST_STRING_VALIST_ARG, BT_FN_INT_STRING_SIZE_CONST_STRING_VALIST_ARG, BT_FN_INT_STRING_CONST_STRING_VAR, BT_FN_INT_CONST_STRING_CONST_STRING_VAR, BT_FN_INT_STRING_SIZE_CONST_STRING_VAR): New built-in types. * builtin-attrs.def (ATTR_NONNULL_1, ATTR_NONNULL_2, ATTR_NONNULL_3): Also include the nothrow attribute. (sprintf, scanf, sscanf, vprintf, vsprintf, snprintf, vsnprintf, vscanf, vsscanf): Don't define attributes here. * builtins.def (putchar, puts): Make full C89 built-ins. (snprintf, sprintf, scanf, sscanf, vprintf, vscanf, vsscanf, vsnprintf, vsprintf): New built-ins. * c-common.c (c_common_nodes_and_builtins): Handle new macro DEF_FUNCTION_TYPE_VAR_3. * doc/extend.texi: Document these new built-in functions. * java/builtins.c (builtin_type): Handle DEF_FUNCTION_TYPE_VAR_3. (initialize_builtins): Handle DEF_FUNCTION_TYPE_VAR_3. * g++.old-deja/g++.other/builtins10.C: New test for PR 9367. * gcc.dg/format/attr-5.c: Handle new conflicting types warning. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@63650 138bc75d-0d04-0410-961f-82ee72b054a4
* * ChangeLog: follow spelling conventions.kazu2002-09-164-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * g++.old-deja/g++.abi/ptrmem.C: Likewise. * g++.old-deja/g++.bugs/900210_05.C: Likewise. * g++.old-deja/g++.bugs/900211_04.C: Likewise. * g++.old-deja/g++.bugs/900321_02.C: Likewise. * g++.old-deja/g++.bugs/900404_02.C: Likewise. * g++.old-deja/g++.bugs/900520_06.C: Likewise. * g++.old-deja/g++.law/global-init1.C: Likewise. * g++.old-deja/g++.other/delete4.C: Likewise. * g++.old-deja/g++.other/inline21.C: Likewise. * g++.old-deja/g++.other/singleton.C: Likewise. * g77.dg/strlen0.f: Likewise. * g77.f-torture/compile/20010519-1.f: Likewise. * g77.f-torture/compile/980310-4.f: Likewise. * gcc.c-torture/compile/20000605-1.c: Likewise. * gcc.c-torture/execute/20020225-1.c: Likewise. * gcc.dg/c90-hexfloat-2.c: Likewise. * gcc.dg/c99-bool-1.c: Likewise. * gcc.dg/c99-hexfloat-2.c: Likewise. * gcc.dg/dll-2.c: Likewise. * gcc.dg/wtr-union-init-1.c: Likewise. * gcc.dg/wtr-union-init-2.c: Likewise. * gcc.dg/wtr-union-init-3.c: Likewise. * gcc.dg/cpp/avoidpaste1.c: Likewise. * gcc.dg/cpp/defined.c: Likewise. * gcc.dg/cpp/macsyntx.c: Likewise. * gcc.dg/cpp/paste2.c: Likewise. * gcc.dg/cpp/trad/defined.c: Likewise. * gcc.dg/format/c90-printf-1.c: Likewise. * gcc.dg/format/c90-scanf-1.c: Likewise. * gcc.dg/format/c99-printf-1.c: Likewise. * gcc.dg/format/c99-scanf-1.c: Likewise. * gcc.misc-tests/gcov-8.c: Likewise. * lib/profopt.exp: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@57189 138bc75d-0d04-0410-961f-82ee72b054a4
* * ChangeLog: Follow spelling conventions.kazu2002-09-153-3/+3
| | | | | | | | | | | | | | | | | | * g++.dg/template/friend4.C: Likewise. * g++.old-deja/g++.pt/crash67.C: Likewise. * gcc.c-torture/execute/20000801-4.c: Likewise. * gcc.dg/c90-digraph-1.c: Likewise. * gcc.dg/c94-digraph-1.c: Likewise. * gcc.dg/c99-digraph-1.c: Likewise. * gcc.dg/cpp/line5.c: Likewise. * gcc.dg/cpp/multiline.c: Likewise. * gcc.dg/cpp/trad/literals-1.c: Likewise. * gcc.dg/format/attr-3.c: Likewise. * gcc.dg/format/c90-scanf-3.c: Likewise. * gcc.dg/format/ext-4.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@57161 138bc75d-0d04-0410-961f-82ee72b054a4
* * builtin-attrs.def: Update copyright years.thorpej2002-05-231-0/+27
| | | | | | | | | | | | | | | | | (ATTR_NONNULL): New attribute identifier. (ATTR_NONNULL_1, ATTR_NONNULL_2, ATTR_NONNULL_3): New attribute tree lists. (DEF_FORMAT_ATTRIBUTE): Chain a nonnull attribute for the format operand. (ATTR_FORMAT_ARG_1, ATTR_FORMAT_ARG_2): Use... (DEF_FORMAT_ARG_ATTRIBUTE): ...this to generate format_arg attribute lists. Chain the appropriate nonnull attribute. * c-format.c (check_format_arg): Remove null format string warning. * testsuite/gcc.dg/format/null-1.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@53801 138bc75d-0d04-0410-961f-82ee72b054a4
* * c-common.c (c_common_post_options): Warn if -Wformat-zero-lengththorpej2002-05-181-0/+15
| | | | | | | | | | | | | | | | is used without -Wformat. * c-common.h (warn_format_zero_length): Declare extern. * c-decl.c (warn_options): Add "format-zero-length". * c-format.c (warn_format_zero_length): Declare. (set_Wformat): Set warn_format_zero_length for -Wformat. (check_format_info): Only warn about zero-length formats if warn_format_zero_length is true. Include the format type name in the warning message. * doc/invoke.texi: Document -Wformat-zero-length. * testsuite/gcc.dg/format/zero-length-1.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@53592 138bc75d-0d04-0410-961f-82ee72b054a4
* * c-format.c (check_format_info_main): Don't check for presence ofjsm282002-05-031-0/+21
| | | | | | | | | | | | parameter for * width until after operand number has been read, and only check for it if format parameters are available. Fixes PR c/6547. testsuite: * gcc.dg/format/xopen-2.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@53118 138bc75d-0d04-0410-961f-82ee72b054a4
* * builtin-attrs.def (__builtin_printf_unlocked,ghazi2001-12-216-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | __builtin_fprintf_unlocked, printf_unlocked, fprintf_unlocked): Mark with the __printf__ attribute. * builtins.c (expand_builtin_fputs): Add an `unlocked' parameter and set the replacement function depending on it. (expand_builtin): Skip BUILT_IN_*_UNLOCKED when not optimizing. Handle BUILT_IN_*_UNLOCKED when optimizing. * builtins.def (DEF_EXT_FALLBACK_BUILTIN, DEF_EXT_FRONT_END_LIB_BUILTIN): New macros. Declare the "unlocked" stdio functions. * c-common.c (c_expand_builtin_printf, c_expand_builtin_fprintf): Add an `unlocked' parameter and set the replacement function depending on it. (c_expand_builtin): Handle BUILT_IN_PRINTF_UNLOCKED and BUILT_IN_FPRINTF_UNLOCKED. * doc/extend.texi (printf_unlocked, fprintf_unlocked, fputs_unlocked): Document. testsuite: * gcc.dg/format/builtin-1.c: Test unlocked stdio. * gcc.dg/format/c90-printf-3.c: Likewise. * gcc.dg/format/c99-printf-3.c: Likewise. * gcc.dg/format/ext-1.c: Likewise. * gcc.dg/format/ext-6.c: Likewise. * gcc.dg/format/format.h: Prototype unlocked stdio. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48229 138bc75d-0d04-0410-961f-82ee72b054a4
* * c-format.c (FMT_FLAG_DOLLAR_GAP_POINTER_OK): New.jsm282001-11-253-9/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | (format_types): Use it for scanf. (dollar_arguments_pointer_p): New. (init_dollar_format_checking): Store details of which arguments are pointers. (maybe_read_dollar_number): Reallocate dollar_arguments_pointer_p. (finish_dollar_format_checking): Take extra parameter pointer_gap_ok. Treat unused arguments differently if pointer_gap_ok and the unused arguments are pointers. (check_format_info_main): Pass extra argument to finish_dollar_format_checking. * doc/invoke.texi (-Wno-format-extra-args): Document behavior when unused arguments are present between used arguments with operand numbers. testsuite: * gcc.dg/format/strfmon-1.c: Update comments. Adjust examples from Austin Group draft 7. * gcc.dg/format/xopen-1.c: Update comments. Add tests for gaps in scanf format arguments. * gcc.dg/format/no-exargs-2.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47327 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc.dg/cpp/cpp.exp: For testing on a remote host, copygeoffk2001-11-201-0/+5
| | | | | | | | | | | | | across all the headers. * gcc.dg/format/format.exp: For testing on a remote host, copy format.h. * gcc.c-torture/execute/20011008-3.c: Allow for small STACK_SIZE. * gcc.c-torture/execute/930406-1.c: Likewise. * gcc.c-torture/execute/comp-goto-1.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47194 138bc75d-0d04-0410-961f-82ee72b054a4
* * c-common.c (c_format_attribute_table): Make format andjsm282001-10-025-14/+157
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | format_arg attributes apply to function types rather than to decls. (is_valid_printf_arglist): Construct an attribute list and pass that to check_function_format rather than a name. * c-common.h (check_function_format): Adjust prototype. * c-decl.c (duplicate_decls): Preserve attributes from type of built-in decl when allowing for harmless conflict in types. * c-format.c (record_function_format, record_international_format, function_format_list, international_format_info, international_format_list): Remove. (function_format_info): Remove next, name and assembler_name. Make format_num and first_arg_num be unsigned HOST_WIDE_INT. (decode_format_attr): New. (handle_format_attribute): Handle receiving a type rather than a decl. Call decode_format_attr. Store format information in a function_format_info. (handle_format_arg_attribute): Correct comment. Handle receiving a type rather than a decl. Use unsigned HOST_WIDE_INT for arg_num. (check_format_info_recurse, check_format_info_main): Take argument numbers as unsigned HOST_WIDE_INT. (check_function_format): Take a list of attributes from the function type rather than a name or assembler name. Check for format attributes in that list and the attributes on the type of the current function rather than looking through function_format_list. (check_format_info): Use unsigned HOST_WIDE_INT for argument numbers. (check_format_info_recurse): Take format_arg attributes from the type of the function calls rather than using international_format_list. Allow for multiple format_arg attributes. * c-typeck.c (build_function_call): Pass type attributes to check_function_format rather than name or assembler name. Don't require there to be a name or assembler name to check formats. cp: * call.c (build_over_call), typeck.c (build_function_call_real): Pass type attributes to check_function_format rather than name or assembler name. Don't require there to be a name or assembler name to check formats. testsuite: * g++.dg/warn/format2.C, gcc.dg/format/attr-7.c, gcc.dg/format/multattr-1.c, gcc.dg/format/multattr-2.c, gcc.dg/format/multattr-3.c: New tests. * gcc.dg/format/attr-3.c: Update expected error texts. Remove tests for format attributes on function pointers being rejected. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45945 138bc75d-0d04-0410-961f-82ee72b054a4
* * attribs.c (decl_attributes): Possibly calljsm282001-10-022-0/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | insert_default_attributes to insert default attributes on functions in a lazy manner. * builtin-attrs.def: New file; define the default format and format_arg attributes. * c-common.c (c_format_attribute_table): Move to earlier in the file. (c_common_nodes_and_builtins): Initialize format_attribute_table. (enum built_in_attribute, built_in_attributes, c_attrs_initialized, c_init_attributes, c_common_insert_default_attributes): New. (c_common_lang_init): Don't initialize format_attribute_table. Do call c_init_attributes. * Makefile.in (c-common.o): Depend on builtin-attrs.def. * c-common.h (init_function_format_info): Don't declare. (c_common_insert_default_attributes): Declare. * c-decl.c (implicitly_declare, builtin_function): Call decl_attributes. (init_decl_processing): Don't call init_function_format_info. (insert_default_attributes): New. * c-format.c (handle_format_attribute, handle_format_arg_attribute): Be quiet about inappropriate declaration when applying default attributes. (init_function_format_info): Remove. * tree.h (enum attribute_flags): Add ATTR_FLAG_BUILT_IN. (insert_default_attributes): Declare. cp: * decl.c (init_decl_processing): Don't call init_function_format_info. Initialize lang_attribute_table earlier. (builtin_function): Call decl_attributes. (insert_default_attributes): New. testsuite: * gcc.dg/format/attr-5.c, gcc.dg/format/attr-6.c: New tests. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45942 138bc75d-0d04-0410-961f-82ee72b054a4
* * c-format.c (init_function_format_info): Check __builtin_printfjsm282001-09-222-0/+60
| | | | | | | | | | | and __builtin_fprintf even if -ffreestanding. Check C99 functions in gnu89 mode. testsuite: * gcc.dg/format/builtin-1.c, gcc.dg/format/ext-6.c: New tests. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45757 138bc75d-0d04-0410-961f-82ee72b054a4