summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>2018-02-23 22:36:54 +0000
committerian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>2018-02-23 22:36:54 +0000
commit88a3ea34080ad3087a8191fbf479543153175d59 (patch)
tree34eaec34d3588e09f9a77abba776266f124dc823
parent25e15aaed275cdfef34b3ee6eb3cb4b43a48d44f (diff)
parente65055a558093bd4fc0b1b0024b7814cc187b8e8 (diff)
downloadgccgo.tar.gz
Merge from trunk revision 257954.gccgo
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gccgo@257955 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--config/ChangeLog5
-rw-r--r--config/cet.m416
-rw-r--r--contrib/ChangeLog6
-rwxr-xr-xcontrib/compare_tests23
-rwxr-xr-xcontrib/dg-cmp-results.sh9
-rwxr-xr-xcontrib/warn_summary2
-rw-r--r--fixincludes/ChangeLog8
-rw-r--r--fixincludes/fixincl.x96
-rw-r--r--fixincludes/inclhack.def20
-rw-r--r--fixincludes/tests/base/stdlib.h10
-rw-r--r--gcc/ChangeLog633
-rw-r--r--gcc/DATESTAMP2
-rw-r--r--gcc/attribs.c35
-rw-r--r--gcc/builtins.c3
-rw-r--r--gcc/c-family/ChangeLog8
-rw-r--r--gcc/c-family/c-cppbuiltin.c2
-rw-r--r--gcc/c-family/c.opt2
-rw-r--r--gcc/cfgrtl.c5
-rw-r--r--gcc/combine.c60
-rw-r--r--gcc/common/config/arm/arm-common.c12
-rw-r--r--gcc/config/aarch64/aarch64.c13
-rw-r--r--gcc/config/aarch64/aarch64.h1
-rw-r--r--gcc/config/aarch64/cortex-a57-fma-steering.c35
-rw-r--r--gcc/config/alpha/alpha.c8
-rw-r--r--gcc/config/arc/arc.c5
-rw-r--r--gcc/config/arm/arm.c10
-rw-r--r--gcc/config/arm/arm.h1
-rw-r--r--gcc/config/arm/t-multilib9
-rw-r--r--gcc/config/c6x/c6x.c24
-rw-r--r--gcc/config/frv/frv.c28
-rw-r--r--gcc/config/i386/cetintrin.h31
-rw-r--r--gcc/config/i386/i386-builtin-types.def1
-rw-r--r--gcc/config/i386/i386-builtin.def4
-rw-r--r--gcc/config/i386/i386.c208
-rw-r--r--gcc/config/i386/i386.md16
-rw-r--r--gcc/config/iq2000/iq2000.c8
-rw-r--r--gcc/config/msp430/msp430.c4
-rw-r--r--gcc/config/pa/pa.md82
-rw-r--r--gcc/config/riscv/riscv.c30
-rw-r--r--gcc/config/riscv/riscv.h4
-rw-r--r--gcc/config/rl78/rl78.md8
-rw-r--r--gcc/config/rs6000/aix71.h6
-rw-r--r--gcc/config/rs6000/altivec.h4
-rw-r--r--gcc/config/rs6000/altivec.md381
-rw-r--r--gcc/config/rs6000/darwin.md62
-rw-r--r--gcc/config/rs6000/dfp.md6
-rw-r--r--gcc/config/rs6000/rs6000-builtin.def58
-rw-r--r--gcc/config/rs6000/rs6000-c.c155
-rw-r--r--gcc/config/rs6000/rs6000.c39
-rw-r--r--gcc/config/rs6000/rs6000.md1126
-rw-r--r--gcc/config/rs6000/sync.md92
-rw-r--r--gcc/config/rs6000/vector.md473
-rw-r--r--gcc/config/rs6000/vsx.md229
-rw-r--r--gcc/config/rx/rx-protos.h106
-rw-r--r--gcc/config/rx/rx.c164
-rw-r--r--gcc/config/rx/rx.md112
-rw-r--r--gcc/config/s390/s390.c4
-rw-r--r--gcc/config/sh/sh.c10
-rw-r--r--gcc/config/xtensa/xtensa.c5
-rw-r--r--gcc/cp/ChangeLog180
-rw-r--r--gcc/cp/call.c24
-rw-r--r--gcc/cp/class.c13
-rw-r--r--gcc/cp/constexpr.c24
-rw-r--r--gcc/cp/constraint.cc2
-rw-r--r--gcc/cp/cp-objcp-common.c5
-rw-r--r--gcc/cp/cp-tree.h7
-rw-r--r--gcc/cp/decl.c19
-rw-r--r--gcc/cp/decl2.c8
-rw-r--r--gcc/cp/error.c2
-rw-r--r--gcc/cp/except.c4
-rw-r--r--gcc/cp/init.c2
-rw-r--r--gcc/cp/lambda.c8
-rw-r--r--gcc/cp/name-lookup.c22
-rw-r--r--gcc/cp/parser.c24
-rw-r--r--gcc/cp/pt.c59
-rw-r--r--gcc/cp/semantics.c1
-rw-r--r--gcc/cp/tree.c7
-rw-r--r--gcc/cp/typeck.c3
-rw-r--r--gcc/doc/extend.texi98
-rw-r--r--gcc/doc/invoke.texi20
-rw-r--r--gcc/doc/rtl.texi5
-rw-r--r--gcc/dwarf2out.c22
-rw-r--r--gcc/emit-rtl.c22
-rw-r--r--gcc/except.c8
-rw-r--r--gcc/final.c27
-rw-r--r--gcc/fortran/ChangeLog167
-rw-r--r--gcc/fortran/decl.c6
-rw-r--r--gcc/fortran/frontend-passes.c27
-rw-r--r--gcc/fortran/gfortran.texi51
-rw-r--r--gcc/fortran/interface.c13
-rw-r--r--gcc/fortran/intrinsic.texi1
-rw-r--r--gcc/fortran/io.c3
-rw-r--r--gcc/fortran/match.c3
-rw-r--r--gcc/fortran/primary.c34
-rw-r--r--gcc/fortran/resolve.c25
-rw-r--r--gcc/fortran/trans-array.c21
-rw-r--r--gcc/fortran/trans-const.c16
-rw-r--r--gcc/fortran/trans-decl.c93
-rw-r--r--gcc/fortran/trans-expr.c4
-rw-r--r--gcc/fortran/trans-intrinsic.c23
-rw-r--r--gcc/fortran/trans-io.c16
-rw-r--r--gcc/fortran/trans-openmp.c29
-rw-r--r--gcc/fortran/trans-stmt.c70
-rw-r--r--gcc/fortran/trans-types.c1
-rw-r--r--gcc/gengtype.c1
-rw-r--r--gcc/genmodes.c1
-rw-r--r--gcc/gimple-fold.c123
-rw-r--r--gcc/gimple-fold.h2
-rw-r--r--gcc/gimple-ssa-evrp-analyze.c7
-rw-r--r--gcc/gimple-ssa-sprintf.c133
-rw-r--r--gcc/gimple-ssa-store-merging.c98
-rw-r--r--gcc/gimple-ssa-warn-restrict.c353
-rw-r--r--gcc/go/gofrontend/MERGE2
-rw-r--r--gcc/go/gofrontend/expressions.cc2
-rw-r--r--gcc/go/gofrontend/types.cc29
-rw-r--r--gcc/graphite-scop-detection.c18
-rw-r--r--gcc/hash-table.h4
-rw-r--r--gcc/insn-notes.def3
-rw-r--r--gcc/internal-fn.c5
-rw-r--r--gcc/internal-fn.def4
-rw-r--r--gcc/ipa-cp.c18
-rw-r--r--gcc/ipa-inline.c2
-rw-r--r--gcc/ipa-prop.c13
-rw-r--r--gcc/jump.c31
-rw-r--r--gcc/lra-constraints.c30
-rw-r--r--gcc/lra-eliminations.c4
-rw-r--r--gcc/lra-int.h13
-rw-r--r--gcc/lra-lives.c4
-rw-r--r--gcc/lra-spills.c2
-rw-r--r--gcc/lra.c28
-rw-r--r--gcc/lto/ChangeLog4
-rw-r--r--gcc/lto/lto-partition.c3
-rw-r--r--gcc/machmode.def1
-rw-r--r--gcc/match.pd23
-rw-r--r--gcc/optabs-query.c20
-rw-r--r--gcc/opts.c20
-rw-r--r--gcc/params.def4
-rw-r--r--gcc/passes.def2
-rw-r--r--gcc/po/ChangeLog12
-rw-r--r--gcc/po/es.po192
-rw-r--r--gcc/po/fr.po3910
-rw-r--r--gcc/po/sv.po444
-rw-r--r--gcc/print-rtl.c2
-rw-r--r--gcc/reg-notes.def3
-rw-r--r--gcc/rtlanal.c2
-rw-r--r--gcc/stor-layout.c8
-rw-r--r--gcc/system.h6
-rw-r--r--gcc/testsuite/ChangeLog3032
-rw-r--r--gcc/testsuite/c-c++-common/Warray-bounds-3.c4
-rw-r--r--gcc/testsuite/c-c++-common/Wrestrict.c37
-rw-r--r--gcc/testsuite/c-c++-common/Wstringop-truncation.c6
-rw-r--r--gcc/testsuite/c-c++-common/cpp/va-opt-2.c41
-rw-r--r--gcc/testsuite/c-c++-common/cpp/va-opt-3.c94
-rw-r--r--gcc/testsuite/c-c++-common/tsan/race_on_mutex.c2
-rw-r--r--gcc/testsuite/g++.dg/concepts/pr84330.C12
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto49.C12
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/auto50.C7
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-84449.C14
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/constexpr-ctor21.C15
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/dc9.C30
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/initlist98.C17
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice26.C5
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice27.C8
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/lambda/lambda-vla1.C9
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/noexcept32.C14
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/nsdmi-empty1.C18
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/pr77655.C13
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic172.C20
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/constexpr-84192.C41
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/lambda-generic-variadic14.C17
-rw-r--r--gcc/testsuite/g++.dg/cpp1y/pr84496.C44
-rw-r--r--gcc/testsuite/g++.dg/cpp1z/class-deduction47.C7
-rw-r--r--gcc/testsuite/g++.dg/cpp1z/class-deduction48.C5
-rw-r--r--gcc/testsuite/g++.dg/cpp1z/constexpr-if14.C14
-rw-r--r--gcc/testsuite/g++.dg/cpp1z/decomp-lambda1.C10
-rw-r--r--gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C4
-rw-r--r--gcc/testsuite/g++.dg/cpp1z/launder7.C10
-rw-r--r--gcc/testsuite/g++.dg/cpp1z/launder8.C11
-rw-r--r--gcc/testsuite/g++.dg/ext/attrib55.C99
-rw-r--r--gcc/testsuite/g++.dg/ext/attrib56.C6
-rw-r--r--gcc/testsuite/g++.dg/ext/stmtexpr22.C13
-rw-r--r--gcc/testsuite/g++.dg/ext/vector34.C8
-rw-r--r--gcc/testsuite/g++.dg/gomp/pr84430.C12
-rw-r--r--gcc/testsuite/g++.dg/gomp/pr84448.C17
-rw-r--r--gcc/testsuite/g++.dg/lookup/pr84375.C9
-rw-r--r--gcc/testsuite/g++.dg/opt/pr84272.C23
-rw-r--r--gcc/testsuite/g++.dg/parse/error59.C6
-rw-r--r--gcc/testsuite/g++.dg/parse/friend12.C1
-rw-r--r--gcc/testsuite/g++.dg/pr84279.C35
-rw-r--r--gcc/testsuite/g++.dg/template/instantiate5.C9
-rw-r--r--gcc/testsuite/g++.dg/template/nontype-fn1.C11
-rw-r--r--gcc/testsuite/g++.dg/template/overload15.C16
-rw-r--r--gcc/testsuite/g++.dg/template/sizeof16.C7
-rw-r--r--gcc/testsuite/g++.dg/template/sizeof17.C7
-rw-r--r--gcc/testsuite/g++.dg/torture/pr84190.C20
-rw-r--r--gcc/testsuite/g++.dg/torture/pr84502.C20
-rw-r--r--gcc/testsuite/g++.dg/tree-ssa/volatile1.C28
-rw-r--r--gcc/testsuite/g++.dg/warn/Wimplicit-fallthrough-3.C31
-rw-r--r--gcc/testsuite/g++.dg/warn/Wstringop-truncation-1.C126
-rw-r--r--gcc/testsuite/g++.dg/warn/Wunused-var-30.C11
-rw-r--r--gcc/testsuite/g++.dg/warn/effc4.C10
-rw-r--r--gcc/testsuite/g++.old-deja/g++.jason/scoping15.C8
-rw-r--r--gcc/testsuite/g++.old-deja/g++.mike/net43.C4
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/pr84136.c2
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/pr84383.c14
-rw-r--r--gcc/testsuite/gcc.c-torture/compile/pr84425.c17
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/pr82210.c1
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/pr84169.c25
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/pr84478.c49
-rw-r--r--gcc/testsuite/gcc.dg/Warray-bounds-27.c35
-rw-r--r--gcc/testsuite/gcc.dg/Wattributes-8.c38
-rw-r--r--gcc/testsuite/gcc.dg/Wrestrict-6.c4
-rw-r--r--gcc/testsuite/gcc.dg/Wrestrict-7.c51
-rw-r--r--gcc/testsuite/gcc.dg/Wrestrict-8.c116
-rw-r--r--gcc/testsuite/gcc.dg/Wrestrict-9.c315
-rw-r--r--gcc/testsuite/gcc.dg/Wstringop-overflow-3.c1
-rw-r--r--gcc/testsuite/gcc.dg/builtin-unreachable-6.c2
-rw-r--r--gcc/testsuite/gcc.dg/graphite/pr84399.c23
-rw-r--r--gcc/testsuite/gcc.dg/lto/README24
-rw-r--r--gcc/testsuite/gcc.dg/pr56727-1.c5
-rw-r--r--gcc/testsuite/gcc.dg/pr56727-2.c6
-rw-r--r--gcc/testsuite/gcc.dg/pr81592.c20
-rw-r--r--gcc/testsuite/gcc.dg/pr82123.c12
-rw-r--r--gcc/testsuite/gcc.dg/pr83723.c20
-rw-r--r--gcc/testsuite/gcc.dg/pr84095.c14
-rw-r--r--gcc/testsuite/gcc.dg/pr84334.c12
-rw-r--r--gcc/testsuite/gcc.dg/pr84452.c14
-rw-r--r--gcc/testsuite/gcc.dg/pr84503-1.c68
-rw-r--r--gcc/testsuite/gcc.dg/pr84503-2.c5
-rw-r--r--gcc/testsuite/gcc.dg/torture/pr84417.c9
-rw-r--r--gcc/testsuite/gcc.dg/vect/pr84357.c31
-rw-r--r--gcc/testsuite/gcc.dg/vect/pr84419.c21
-rw-r--r--gcc/testsuite/gcc.dg/vmx/extract-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/extract-vsx-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/insert-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/insert-vsx-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/ld-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/ld-vsx-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/lde-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/ldl-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/ldl-vsx-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/merge-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/merge-vsx-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/mult-even-odd-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/pack-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/perm-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/splat-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/splat-vsx-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/st-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/st-vsx-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/ste-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/stl-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/stl-vsx-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/sum2s-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/unpack-be-order.c3
-rw-r--r--gcc/testsuite/gcc.dg/vmx/vsums-be-order.c3
-rw-r--r--gcc/testsuite/gcc.target/aarch64/asm-2.c2
-rw-r--r--gcc/testsuite/gcc.target/aarch64/asm-4.c10
-rw-r--r--gcc/testsuite/gcc.target/arm/multilib.exp19
-rw-r--r--gcc/testsuite/gcc.target/i386/avx2-vpaddq-3.c2
-rw-r--r--gcc/testsuite/gcc.target/i386/avx2-vpsubq-3.c2
-rw-r--r--gcc/testsuite/gcc.target/i386/cet-intrin-3.c10
-rw-r--r--gcc/testsuite/gcc.target/i386/cet-intrin-4.c25
-rw-r--r--gcc/testsuite/gcc.target/i386/cet-rdssp-1.c8
-rw-r--r--gcc/testsuite/gcc.target/i386/chkp-stropt-17.c2
-rw-r--r--gcc/testsuite/gcc.target/i386/indirect-thunk-11.c7
-rw-r--r--gcc/testsuite/gcc.target/i386/indirect-thunk-12.c7
-rw-r--r--gcc/testsuite/gcc.target/i386/indirect-thunk-attr-12.c8
-rw-r--r--gcc/testsuite/gcc.target/i386/indirect-thunk-attr-13.c8
-rw-r--r--gcc/testsuite/gcc.target/i386/indirect-thunk-attr-14.c14
-rw-r--r--gcc/testsuite/gcc.target/i386/indirect-thunk-attr-15.c14
-rw-r--r--gcc/testsuite/gcc.target/i386/indirect-thunk-attr-16.c13
-rw-r--r--gcc/testsuite/gcc.target/i386/indirect-thunk-extern-10.c12
-rw-r--r--gcc/testsuite/gcc.target/i386/indirect-thunk-extern-8.c13
-rw-r--r--gcc/testsuite/gcc.target/i386/indirect-thunk-extern-9.c13
-rw-r--r--gcc/testsuite/gcc.target/i386/pr57193.c4
-rw-r--r--gcc/testsuite/gcc.target/i386/pr70023.c15
-rw-r--r--gcc/testsuite/gcc.target/i386/pr84146.c2
-rw-r--r--gcc/testsuite/gcc.target/i386/pr84310-2.c10
-rw-r--r--gcc/testsuite/gcc.target/i386/pr84310.c8
-rw-r--r--gcc/testsuite/gcc.target/msp430/pr79242.c11
-rw-r--r--gcc/testsuite/gcc.target/powerpc/altivec-7-le.c2
-rw-r--r--gcc/testsuite/gcc.target/powerpc/altivec-consts.c4
-rw-r--r--gcc/testsuite/gcc.target/powerpc/builtins-3-p8.c3
-rw-r--r--gcc/testsuite/gcc.target/powerpc/builtins-3-p9-runnable.c2
-rw-r--r--gcc/testsuite/gcc.target/powerpc/builtins-3-p9.c53
-rw-r--r--gcc/testsuite/gcc.target/powerpc/builtins-3-runnable-p8.c162
-rw-r--r--gcc/testsuite/gcc.target/powerpc/builtins-3-runnable.c33
-rw-r--r--gcc/testsuite/gcc.target/powerpc/builtins-3-vec_reve-runnable.c3
-rw-r--r--gcc/testsuite/gcc.target/powerpc/builtins-3.c3
-rw-r--r--gcc/testsuite/gcc.target/powerpc/builtins-4-int128-runnable.c4
-rw-r--r--gcc/testsuite/gcc.target/powerpc/builtins-7-p9-runnable.c169
-rw-r--r--gcc/testsuite/gcc.target/powerpc/fold-vec-mult-int128-p9.c2
-rw-r--r--gcc/testsuite/gcc.target/powerpc/fold-vec-neg-int.p7.c19
-rw-r--r--gcc/testsuite/gcc.target/powerpc/le-altivec-consts.c4
-rw-r--r--gcc/testsuite/gcc.target/powerpc/lvsl-lvsr.c2
-rw-r--r--gcc/testsuite/gcc.target/powerpc/p9-vinsert4b-1.c39
-rw-r--r--gcc/testsuite/gcc.target/powerpc/p9-vinsert4b-2.c30
-rw-r--r--gcc/testsuite/gcc.target/powerpc/ppc-fortran/pr80108-1.f908
-rw-r--r--gcc/testsuite/gcc.target/powerpc/pr79439-1.c28
-rw-r--r--gcc/testsuite/gcc.target/powerpc/pr79439-2.c (renamed from gcc/testsuite/gcc.target/powerpc/pr79439.c)10
-rw-r--r--gcc/testsuite/gcc.target/powerpc/pr79439-3.c25
-rw-r--r--gcc/testsuite/gcc.target/powerpc/pr80695-p8.c2
-rw-r--r--gcc/testsuite/gcc.target/powerpc/pr80695-p9.c2
-rw-r--r--gcc/testsuite/gcc.target/powerpc/pr81572.c13
-rw-r--r--gcc/testsuite/gcc.target/powerpc/pr84220-sld.c97
-rw-r--r--gcc/testsuite/gcc.target/powerpc/pr84220-sld2.c41
-rw-r--r--gcc/testsuite/gcc.target/powerpc/pr84220-sldw.c80
-rw-r--r--gcc/testsuite/gcc.target/powerpc/pr84220-xxperm.c100
-rw-r--r--gcc/testsuite/gcc.target/powerpc/pr84220-xxsld.c151
-rw-r--r--gcc/testsuite/gcc.target/powerpc/vec-setup-be-long.c3
-rw-r--r--gcc/testsuite/gcc.target/rx/pr83831.c79
-rw-r--r--gcc/testsuite/gfortran.dg/PR19754_2.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/PR19872.f4
-rw-r--r--gcc/testsuite/gfortran.dg/PR49268.f902
-rw-r--r--gcc/testsuite/gfortran.dg/Wall.f902
-rw-r--r--gcc/testsuite/gfortran.dg/Wno-all.f902
-rw-r--r--gcc/testsuite/gfortran.dg/abort_shouldfail.f905
-rw-r--r--gcc/testsuite/gfortran.dg/achar_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/achar_2.f903030
-rw-r--r--gcc/testsuite/gfortran.dg/achar_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/achar_6.F9048
-rw-r--r--gcc/testsuite/gfortran.dg/actual_array_constructor_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/actual_array_constructor_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/actual_array_constructor_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/actual_array_offset_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/actual_array_result_1.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/actual_array_substr_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/actual_array_substr_2.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/actual_pointer_function_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/actual_procedure_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/adjustl_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/advance_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/advance_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/advance_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/advance_6.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/aint_anint_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/aliasing_array_result_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/aliasing_dummy_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/aliasing_dummy_4.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/aliasing_dummy_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_assign_1.f9028
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_assign_10.f904
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_assign_11.f906
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_assign_12.f036
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_assign_13.f0824
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_assign_14.f0824
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_assign_15.f034
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_assign_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_assign_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_assign_4.f904
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_assign_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_assign_6.f902
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_assign_7.f902
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_assign_8.f908
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_assign_9.f902
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_auto_array_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_auto_array_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_basics_1.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_basics_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_basics_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_bounds_1.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_class_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_class_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_class_4.f032
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_class_5.f0316
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_constructor_1.f9044
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_constructor_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_constructor_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_constructor_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_constructor_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_constructor_6.f904
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_constructor_7.f904
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_deep_copy_1.f03348
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_deep_copy_2.f034
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_deep_copy_3.f038
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_default_init_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_default_init_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_initializer_1.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_initializer_4.f032
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_optional_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_result_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_result_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_scalar_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/alloc_comp_transformational_1.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_dummy_1.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_dummy_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_function_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_function_10.f904
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_function_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_function_5.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_function_6.f906
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_function_7.f906
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_function_8.f906
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_scalar_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_scalar_10.f902
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_scalar_12.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_scalar_13.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_scalar_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_scalar_4.f9048
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_scalar_5.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_scalar_6.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_scalar_7.f906
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_scalar_8.f904
-rw-r--r--gcc/testsuite/gfortran.dg/allocatable_scalar_9.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_alloc_opt_10.f908
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_alloc_opt_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_alloc_opt_6.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_assumed_charlen_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_assumed_charlen_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_class_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_deferred_char_scalar_1.f03212
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_deferred_char_scalar_2.f038
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_derived_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_arrayspec_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_mold_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_source_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_source_10.f084
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_source_11.f084
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_source_12.f034
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_source_15.f036
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_source_16.f908
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_source_17.f036
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_source_18.f034
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_source_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_source_20.f034
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_source_22.f0316
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_source_23.f0328
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_source_24.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_source_5.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_source_6.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_source_7.f0816
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_source_8.f0844
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_with_source_9.f084
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_zerosize_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/allocate_zerosize_3.f4
-rw-r--r--gcc/testsuite/gfortran.dg/altreturn_3.f906
-rw-r--r--gcc/testsuite/gfortran.dg/altreturn_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/altreturn_7.f902
-rw-r--r--gcc/testsuite/gfortran.dg/and_or_xor.f906
-rw-r--r--gcc/testsuite/gfortran.dg/anint_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/any_all_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/anyallcount_1.f9048
-rw-r--r--gcc/testsuite/gfortran.dg/append_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/argument_checking_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/argument_checking_2.f906
-rw-r--r--gcc/testsuite/gfortran.dg/argument_checking_8.f904
-rw-r--r--gcc/testsuite/gfortran.dg/arithmetic_if.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/array_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/array_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/array_alloc_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/array_alloc_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/array_alloc_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/array_assignment_1.F904
-rw-r--r--gcc/testsuite/gfortran.dg/array_assignment_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_10.f908
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_11.f904
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_12.f904
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_15.f902
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_16.f906
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_17.f906
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_19.f908
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_23.f6
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_24.f6
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_32.f904
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_36.f904
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_39.f904
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_4.f908
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_40.f904
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_44.f902
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_45.f902
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_46.f902
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_47.f902
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_49.f902
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_50.f904
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_6.f904
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_7.f904
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_8.f906
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_9.f906
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_type_1.f032
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_type_10.f032
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_type_11.f034
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_type_12.f032
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_type_13.f902
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_type_14.f032
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_type_16.f0310
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_type_2.f036
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_type_22.f034
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_type_3.f032
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_type_4.f032
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_type_5.f032
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_type_6.f036
-rw-r--r--gcc/testsuite/gfortran.dg/array_constructor_type_7.f032
-rw-r--r--gcc/testsuite/gfortran.dg/array_function_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/array_function_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/array_initializer_1.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/array_initializer_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/array_memcpy_5.f908
-rw-r--r--gcc/testsuite/gfortran.dg/array_memset_2.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/array_reference_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/array_return_value_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/array_section_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/array_temporaries_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/arrayio_1.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/arrayio_10.f906
-rw-r--r--gcc/testsuite/gfortran.dg/arrayio_11.f904
-rw-r--r--gcc/testsuite/gfortran.dg/arrayio_12.f904
-rw-r--r--gcc/testsuite/gfortran.dg/arrayio_13.f902
-rw-r--r--gcc/testsuite/gfortran.dg/arrayio_14.f902
-rw-r--r--gcc/testsuite/gfortran.dg/arrayio_16.f902
-rw-r--r--gcc/testsuite/gfortran.dg/arrayio_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/arrayio_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/arrayio_4.f908
-rw-r--r--gcc/testsuite/gfortran.dg/arrayio_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/arrayio_6.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/arrayio_7.f902
-rw-r--r--gcc/testsuite/gfortran.dg/arrayio_8.f906
-rw-r--r--gcc/testsuite/gfortran.dg/arrayio_9.f902
-rw-r--r--gcc/testsuite/gfortran.dg/arrayio_derived_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/assign_10.f904
-rw-r--r--gcc/testsuite/gfortran.dg/assign_9.f902
-rw-r--r--gcc/testsuite/gfortran.dg/assign_func_dtcomp_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/assignment_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/associate_1.f0344
-rw-r--r--gcc/testsuite/gfortran.dg/associate_11.f902
-rw-r--r--gcc/testsuite/gfortran.dg/associate_13.f902
-rw-r--r--gcc/testsuite/gfortran.dg/associate_15.f906
-rw-r--r--gcc/testsuite/gfortran.dg/associate_17.f902
-rw-r--r--gcc/testsuite/gfortran.dg/associate_18.f0814
-rw-r--r--gcc/testsuite/gfortran.dg/associate_19.f034
-rw-r--r--gcc/testsuite/gfortran.dg/associate_20.f034
-rw-r--r--gcc/testsuite/gfortran.dg/associate_22.f9017
-rw-r--r--gcc/testsuite/gfortran.dg/associate_23.f906
-rw-r--r--gcc/testsuite/gfortran.dg/associate_24.f904
-rw-r--r--gcc/testsuite/gfortran.dg/associate_25.f902
-rw-r--r--gcc/testsuite/gfortran.dg/associate_27.f904
-rw-r--r--gcc/testsuite/gfortran.dg/associate_28.f902
-rw-r--r--gcc/testsuite/gfortran.dg/associate_32.f0328
-rw-r--r--gcc/testsuite/gfortran.dg/associate_33.f032
-rw-r--r--gcc/testsuite/gfortran.dg/associate_34.f902
-rw-r--r--gcc/testsuite/gfortran.dg/associate_35.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/associate_36.f9028
-rw-r--r--gcc/testsuite/gfortran.dg/associate_6.f034
-rw-r--r--gcc/testsuite/gfortran.dg/associate_7.f036
-rw-r--r--gcc/testsuite/gfortran.dg/associate_8.f0310
-rw-r--r--gcc/testsuite/gfortran.dg/associate_9.f036
-rw-r--r--gcc/testsuite/gfortran.dg/associated_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/associated_2.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/associated_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/associated_6.f904
-rw-r--r--gcc/testsuite/gfortran.dg/associated_target_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/associated_target_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/associated_target_5.f0312
-rw-r--r--gcc/testsuite/gfortran.dg/associated_target_6.f036
-rw-r--r--gcc/testsuite/gfortran.dg/assumed_dummy_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/assumed_rank_1.f9070
-rw-r--r--gcc/testsuite/gfortran.dg/assumed_rank_10.f9036
-rw-r--r--gcc/testsuite/gfortran.dg/assumed_rank_2.f9070
-rw-r--r--gcc/testsuite/gfortran.dg/assumed_rank_7.f9034
-rw-r--r--gcc/testsuite/gfortran.dg/assumed_rank_8.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/assumed_rank_9.f9036
-rw-r--r--gcc/testsuite/gfortran.dg/assumed_rank_bounds_1.f9072
-rw-r--r--gcc/testsuite/gfortran.dg/assumed_rank_bounds_2.f9036
-rw-r--r--gcc/testsuite/gfortran.dg/assumed_shape_ranks_2.f906
-rw-r--r--gcc/testsuite/gfortran.dg/assumed_type_2.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/atan2_1.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/auto_array_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/auto_char_dummy_array_1.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/auto_char_dummy_array_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/auto_char_len_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/auto_char_pointer_array_result_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/auto_internal_assumed.f902
-rw-r--r--gcc/testsuite/gfortran.dg/auto_pointer_array_result_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/auto_save_2.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/automatic_default_init_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/backslash_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/backslash_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/backslash_3.f4
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_1.f18
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_10.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_11.f904
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_2.f4
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_3.f4
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_4.f4
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_5.f6
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_6.f4
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_7.f902
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_8.f4
-rw-r--r--gcc/testsuite/gfortran.dg/backspace_9.f8
-rw-r--r--gcc/testsuite/gfortran.dg/bessel_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/bessel_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/bessel_5.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/bessel_6.f902
-rw-r--r--gcc/testsuite/gfortran.dg/bessel_7.f904
-rw-r--r--gcc/testsuite/gfortran.dg/bind_c_dts_2.f0314
-rw-r--r--gcc/testsuite/gfortran.dg/bind_c_dts_3.f032
-rw-r--r--gcc/testsuite/gfortran.dg/bind_c_usage_15.f902
-rw-r--r--gcc/testsuite/gfortran.dg/bind_c_usage_16.f0318
-rw-r--r--gcc/testsuite/gfortran.dg/bind_c_usage_17.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/bind_c_usage_24.f908
-rw-r--r--gcc/testsuite/gfortran.dg/binding_c_table_15_1.f0316
-rw-r--r--gcc/testsuite/gfortran.dg/binding_label_tests_16.f032
-rw-r--r--gcc/testsuite/gfortran.dg/binding_label_tests_23.f904
-rw-r--r--gcc/testsuite/gfortran.dg/bit_comparison_1.F9016
-rw-r--r--gcc/testsuite/gfortran.dg/bit_comparison_2.F9016
-rw-r--r--gcc/testsuite/gfortran.dg/block_1.f0812
-rw-r--r--gcc/testsuite/gfortran.dg/block_13.f086
-rw-r--r--gcc/testsuite/gfortran.dg/block_14.f902
-rw-r--r--gcc/testsuite/gfortran.dg/block_2.f0816
-rw-r--r--gcc/testsuite/gfortran.dg/block_6.f084
-rw-r--r--gcc/testsuite/gfortran.dg/block_7.f084
-rw-r--r--gcc/testsuite/gfortran.dg/block_8.f084
-rw-r--r--gcc/testsuite/gfortran.dg/blockdata_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/bound_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/bound_2.f90254
-rw-r--r--gcc/testsuite/gfortran.dg/bound_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/bound_4.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/bound_5.f908
-rw-r--r--gcc/testsuite/gfortran.dg/bound_6.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/bound_7.f90254
-rw-r--r--gcc/testsuite/gfortran.dg/bound_8.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/bound_9.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/bound_simplification_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/bound_simplification_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/bound_simplification_4.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/bound_simplification_5.f9076
-rw-r--r--gcc/testsuite/gfortran.dg/bound_simplification_6.f904
-rw-r--r--gcc/testsuite/gfortran.dg/bounds_check_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/bounds_check_12.f904
-rw-r--r--gcc/testsuite/gfortran.dg/bounds_check_14.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/bounds_check_15.f902
-rw-r--r--gcc/testsuite/gfortran.dg/bounds_check_19.f908
-rw-r--r--gcc/testsuite/gfortran.dg/bounds_check_8.f906
-rw-r--r--gcc/testsuite/gfortran.dg/bounds_check_9.f906
-rw-r--r--gcc/testsuite/gfortran.dg/bounds_check_fail_2.f906
-rw-r--r--gcc/testsuite/gfortran.dg/bounds_check_fail_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/bounds_check_fail_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/boz_1.f9028
-rw-r--r--gcc/testsuite/gfortran.dg/boz_11.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/boz_13.f902
-rw-r--r--gcc/testsuite/gfortran.dg/boz_14.f902
-rw-r--r--gcc/testsuite/gfortran.dg/boz_15.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/boz_3.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/boz_6.f908
-rw-r--r--gcc/testsuite/gfortran.dg/boz_9.f9080
-rw-r--r--gcc/testsuite/gfortran.dg/byte_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/byte_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/c_assoc.f906
-rw-r--r--gcc/testsuite/gfortran.dg/c_assoc_2.f0312
-rw-r--r--gcc/testsuite/gfortran.dg/c_assoc_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/c_by_val_1.f12
-rw-r--r--gcc/testsuite/gfortran.dg/c_by_val_5.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/c_char_tests.f036
-rw-r--r--gcc/testsuite/gfortran.dg/c_char_tests_2.f034
-rw-r--r--gcc/testsuite/gfortran.dg/c_f_pointer_complex.f0312
-rw-r--r--gcc/testsuite/gfortran.dg/c_f_pointer_logical.f036
-rw-r--r--gcc/testsuite/gfortran.dg/c_f_pointer_shape_tests_2.f0314
-rw-r--r--gcc/testsuite/gfortran.dg/c_f_pointer_shape_tests_4.f0314
-rw-r--r--gcc/testsuite/gfortran.dg/c_f_pointer_shape_tests_5.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/c_f_pointer_tests.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/c_f_pointer_tests_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/c_kind_int128_test2.f036
-rw-r--r--gcc/testsuite/gfortran.dg/c_kind_params.f9046
-rw-r--r--gcc/testsuite/gfortran.dg/c_loc_test_20.f904
-rw-r--r--gcc/testsuite/gfortran.dg/c_loc_tests_2.f0310
-rw-r--r--gcc/testsuite/gfortran.dg/c_ptr_tests_14.f908
-rw-r--r--gcc/testsuite/gfortran.dg/c_ptr_tests_15.f908
-rw-r--r--gcc/testsuite/gfortran.dg/c_size_t_test.f032
-rw-r--r--gcc/testsuite/gfortran.dg/c_sizeof_1.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/c_sizeof_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/c_sizeof_6.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char4_iunit_1.f0316
-rw-r--r--gcc/testsuite/gfortran.dg/char4_iunit_2.f0312
-rw-r--r--gcc/testsuite/gfortran.dg/char_allocation_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_array_constructor.f908
-rw-r--r--gcc/testsuite/gfortran.dg/char_array_structure_constructor.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_assign_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/char_associated_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_cast_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_comparison_1.f8
-rw-r--r--gcc/testsuite/gfortran.dg/char_component_initializer_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_component_initializer_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_cons_len.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_conversion.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_cshift_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_cshift_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_decl_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_eoshift_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/char_eoshift_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/char_eoshift_3.f906
-rw-r--r--gcc/testsuite/gfortran.dg/char_eoshift_4.f906
-rw-r--r--gcc/testsuite/gfortran.dg/char_eoshift_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_expr_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_expr_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/char_initialiser_actual.f904
-rw-r--r--gcc/testsuite/gfortran.dg/char_length_12.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_length_14.f908
-rw-r--r--gcc/testsuite/gfortran.dg/char_length_15.f904
-rw-r--r--gcc/testsuite/gfortran.dg/char_length_17.f904
-rw-r--r--gcc/testsuite/gfortran.dg/char_length_20.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_length_21.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_length_5.f9032
-rw-r--r--gcc/testsuite/gfortran.dg/char_length_6.f904
-rw-r--r--gcc/testsuite/gfortran.dg/char_length_7.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/char_length_8.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/char_pack_1.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/char_pack_2.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/char_pointer_assign.f908
-rw-r--r--gcc/testsuite/gfortran.dg/char_pointer_assign_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/char_pointer_comp_assign.f908
-rw-r--r--gcc/testsuite/gfortran.dg/char_pointer_dependency.f904
-rw-r--r--gcc/testsuite/gfortran.dg/char_pointer_dummy.f906
-rw-r--r--gcc/testsuite/gfortran.dg/char_pointer_func.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/char_reshape_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/char_result_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_result_12.f904
-rw-r--r--gcc/testsuite/gfortran.dg/char_result_13.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_result_14.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/char_result_15.f906
-rw-r--r--gcc/testsuite/gfortran.dg/char_result_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_result_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_result_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_result_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_result_6.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_result_7.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_result_8.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_spread_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/char_transpose_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/char_type_len.f902
-rw-r--r--gcc/testsuite/gfortran.dg/char_unpack_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/char_unpack_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/character_array_constructor_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/character_comparison_1.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/character_comparison_2.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/character_comparison_3.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/character_comparison_4.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/character_comparison_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/character_comparison_6.f904
-rw-r--r--gcc/testsuite/gfortran.dg/character_comparison_7.f904
-rw-r--r--gcc/testsuite/gfortran.dg/character_comparison_8.f908
-rw-r--r--gcc/testsuite/gfortran.dg/character_comparison_9.f906
-rw-r--r--gcc/testsuite/gfortran.dg/charlen_15.f902
-rw-r--r--gcc/testsuite/gfortran.dg/charlen_16.f902
-rw-r--r--gcc/testsuite/gfortran.dg/chkbits.f908
-rw-r--r--gcc/testsuite/gfortran.dg/chmod_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/chmod_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/chmod_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/class_1.f032
-rw-r--r--gcc/testsuite/gfortran.dg/class_18.f034
-rw-r--r--gcc/testsuite/gfortran.dg/class_19.f036
-rw-r--r--gcc/testsuite/gfortran.dg/class_35.f902
-rw-r--r--gcc/testsuite/gfortran.dg/class_46.f032
-rw-r--r--gcc/testsuite/gfortran.dg/class_48.f9076
-rw-r--r--gcc/testsuite/gfortran.dg/class_51.f902
-rw-r--r--gcc/testsuite/gfortran.dg/class_52.f902
-rw-r--r--gcc/testsuite/gfortran.dg/class_6.f032
-rw-r--r--gcc/testsuite/gfortran.dg/class_63.f904
-rw-r--r--gcc/testsuite/gfortran.dg/class_64.f904
-rw-r--r--gcc/testsuite/gfortran.dg/class_65.f904
-rw-r--r--gcc/testsuite/gfortran.dg/class_66.f902
-rw-r--r--gcc/testsuite/gfortran.dg/class_67.f904
-rw-r--r--gcc/testsuite/gfortran.dg/class_68.f9025
-rw-r--r--gcc/testsuite/gfortran.dg/class_9.f0312
-rw-r--r--gcc/testsuite/gfortran.dg/class_alias.f904
-rw-r--r--gcc/testsuite/gfortran.dg/class_allocate_1.f0312
-rw-r--r--gcc/testsuite/gfortran.dg/class_allocate_10.f036
-rw-r--r--gcc/testsuite/gfortran.dg/class_allocate_13.f902
-rw-r--r--gcc/testsuite/gfortran.dg/class_allocate_14.f904
-rw-r--r--gcc/testsuite/gfortran.dg/class_allocate_15.f908
-rw-r--r--gcc/testsuite/gfortran.dg/class_allocate_19.f036
-rw-r--r--gcc/testsuite/gfortran.dg/class_allocate_21.f902
-rw-r--r--gcc/testsuite/gfortran.dg/class_allocate_22.f904
-rw-r--r--gcc/testsuite/gfortran.dg/class_allocate_3.f0312
-rw-r--r--gcc/testsuite/gfortran.dg/class_allocate_4.f034
-rw-r--r--gcc/testsuite/gfortran.dg/class_allocate_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/class_allocate_6.f038
-rw-r--r--gcc/testsuite/gfortran.dg/class_allocate_7.f032
-rw-r--r--gcc/testsuite/gfortran.dg/class_allocate_8.f034
-rw-r--r--gcc/testsuite/gfortran.dg/class_allocate_9.f034
-rw-r--r--gcc/testsuite/gfortran.dg/class_array_1.f0318
-rw-r--r--gcc/testsuite/gfortran.dg/class_array_14.f906
-rw-r--r--gcc/testsuite/gfortran.dg/class_array_15.f0316
-rw-r--r--gcc/testsuite/gfortran.dg/class_array_16.f9040
-rw-r--r--gcc/testsuite/gfortran.dg/class_array_2.f0318
-rw-r--r--gcc/testsuite/gfortran.dg/class_array_20.f0330
-rw-r--r--gcc/testsuite/gfortran.dg/class_array_21.f038
-rw-r--r--gcc/testsuite/gfortran.dg/class_array_3.f032
-rw-r--r--gcc/testsuite/gfortran.dg/class_array_4.f032
-rw-r--r--gcc/testsuite/gfortran.dg/class_array_7.f036
-rw-r--r--gcc/testsuite/gfortran.dg/class_array_8.f032
-rw-r--r--gcc/testsuite/gfortran.dg/class_array_9.f0316
-rw-r--r--gcc/testsuite/gfortran.dg/class_defined_operator_1.f036
-rw-r--r--gcc/testsuite/gfortran.dg/class_dummy_1.f036
-rw-r--r--gcc/testsuite/gfortran.dg/class_optional_1.f9090
-rw-r--r--gcc/testsuite/gfortran.dg/class_optional_2.f9048
-rw-r--r--gcc/testsuite/gfortran.dg/class_result_5.f906
-rw-r--r--gcc/testsuite/gfortran.dg/class_result_6.f902
-rw-r--r--gcc/testsuite/gfortran.dg/class_to_type_1.f0332
-rw-r--r--gcc/testsuite/gfortran.dg/class_to_type_2.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/class_to_type_3.f034
-rw-r--r--gcc/testsuite/gfortran.dg/class_to_type_4.f9026
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/alloc_comp_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/alloc_comp_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/allocate_errgmsg.f908
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/atomic_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/atomic_2.f90178
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/codimension.f908
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/coindexed_1.f90288
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/collectives_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/collectives_2.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/collectives_3.f90128
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/collectives_4.f904
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/cosubscript_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/dummy_1.f9030
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/event_1.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/event_2.f9056
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/get_array.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/image_index_1.f9026
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/image_index_2.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/image_index_3.f9026
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/lib_realloc_1.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/lock_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/lock_2.f9030
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/move_alloc_1.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/poly_run_1.f9032
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/poly_run_2.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/poly_run_3.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/ptr_comp_3.f082
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/registering_1.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/scalar_alloc_1.f9030
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/scalar_alloc_2.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/send_array.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/send_char_array_1.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/sendget_array.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/subobject_1.f9030
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/sync_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/sync_3.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/this_image_1.f90196
-rw-r--r--gcc/testsuite/gfortran.dg/coarray/this_image_2.f9092
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_13.f90128
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_15.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_16.f9026
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_2.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_23.f902
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_40.f902
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_alloc_comp_1.f0858
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_alloc_comp_2.f0838
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_alloc_comp_6.f0855
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_alloc_comp_7.f0862
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_alloc_comp_8.f0859
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_allocate_10.f084
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_allocate_2.f084
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_allocate_3.f088
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_allocate_4.f084
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_allocate_5.f088
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_allocate_7.f084
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_allocate_8.f084
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_allocate_9.f0812
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_lib_alloc_4.f9022
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_lib_comm_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_lib_realloc_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_lib_token_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_lib_token_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_ptr_comp_1.f0858
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_ptr_comp_2.f0838
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_send_by_ref_1.f084
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_stat_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/coarray_subobject_1.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/coindexed_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/comma.f6
-rw-r--r--gcc/testsuite/gfortran.dg/comma_format_extension_3.f4
-rw-r--r--gcc/testsuite/gfortran.dg/comma_format_extension_4.f2
-rw-r--r--gcc/testsuite/gfortran.dg/common_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/common_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/common_align_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/common_align_2.f906
-rw-r--r--gcc/testsuite/gfortran.dg/common_equivalence_1.f4
-rw-r--r--gcc/testsuite/gfortran.dg/common_pointer_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/common_resize_1.f4
-rw-r--r--gcc/testsuite/gfortran.dg/complex_intrinsic_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/complex_intrinsic_3.f9032
-rw-r--r--gcc/testsuite/gfortran.dg/complex_intrinsic_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/complex_intrinsic_7.f9032
-rw-r--r--gcc/testsuite/gfortran.dg/complex_read.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/complex_write.f902
-rw-r--r--gcc/testsuite/gfortran.dg/constant_substring.f2
-rw-r--r--gcc/testsuite/gfortran.dg/constructor_2.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/constructor_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/constructor_6.f9030
-rw-r--r--gcc/testsuite/gfortran.dg/contained_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/contained_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/contained_equivalence_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/contained_module_proc_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/continuation_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/continuation_11.f902
-rw-r--r--gcc/testsuite/gfortran.dg/continuation_12.f902
-rw-r--r--gcc/testsuite/gfortran.dg/continuation_13.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/continuation_14.f12
-rw-r--r--gcc/testsuite/gfortran.dg/continuation_8.f902
-rw-r--r--gcc/testsuite/gfortran.dg/convert_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/convert_implied_open.f902
-rw-r--r--gcc/testsuite/gfortran.dg/count_init_expr.f038
-rw-r--r--gcc/testsuite/gfortran.dg/cr_lf.f9028
-rw-r--r--gcc/testsuite/gfortran.dg/cray_pointers_10.f902
-rw-r--r--gcc/testsuite/gfortran.dg/cray_pointers_2.f906
-rw-r--r--gcc/testsuite/gfortran.dg/cray_pointers_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/cray_pointers_7.f904
-rw-r--r--gcc/testsuite/gfortran.dg/cray_pointers_8.f902
-rw-r--r--gcc/testsuite/gfortran.dg/cshift_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/cshift_2.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/cshift_large_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/cshift_nan_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/csqrt_2.f6
-rw-r--r--gcc/testsuite/gfortran.dg/data_array_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/data_char_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/data_char_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/data_char_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/data_derived_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/data_implied_do_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/data_namelist_conflict.f902
-rw-r--r--gcc/testsuite/gfortran.dg/deallocate_alloc_opt_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/deallocate_stat.f9068
-rw-r--r--gcc/testsuite/gfortran.dg/deallocate_stat_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/debug/pr37738.f4
-rw-r--r--gcc/testsuite/gfortran.dg/dec_bitwise_ops_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_bitwise_ops_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_exp_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_init_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/dec_init_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/dec_init_3.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/dec_init_4.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/dec_io_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/dec_io_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_io_2a.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_io_6.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_loc_rval_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_logical_xor_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/dec_math.f904
-rw-r--r--gcc/testsuite/gfortran.dg/dec_parameter_1.f2
-rw-r--r--gcc/testsuite/gfortran.dg/dec_parameter_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_static_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_static_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_structure_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_structure_10.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/dec_structure_18.f908
-rw-r--r--gcc/testsuite/gfortran.dg/dec_structure_19.f908
-rw-r--r--gcc/testsuite/gfortran.dg/dec_structure_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_structure_22.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_structure_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_structure_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_structure_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_structure_6.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_structure_7.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_union_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_union_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_union_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_union_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dec_union_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/default_format_1.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/default_format_2.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/default_format_denormal_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/default_format_denormal_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/default_initialization_3.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/default_initialization_4.f904
-rw-r--r--gcc/testsuite/gfortran.dg/default_initialization_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_character_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_character_10.f904
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_character_11.f904
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_character_12.f904
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_character_13.f902
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_character_14.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_character_15.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_character_16.f904
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_character_19.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_character_2.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_character_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_character_4.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_character_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_character_6.f908
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_character_7.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_character_8.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_character_9.f902
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_character_assignment_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_type_component_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_type_component_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_type_param_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_type_param_4.f906
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_type_param_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_type_param_6.f9028
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_type_param_8.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_type_param_9.f904
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_type_proc_pointer_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/deferred_type_proc_pointer_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/defined_assignment_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/defined_assignment_10.f902
-rw-r--r--gcc/testsuite/gfortran.dg/defined_assignment_11.f902
-rw-r--r--gcc/testsuite/gfortran.dg/defined_assignment_2.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/defined_assignment_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/defined_assignment_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/defined_assignment_5.f908
-rw-r--r--gcc/testsuite/gfortran.dg/defined_assignment_8.f902
-rw-r--r--gcc/testsuite/gfortran.dg/defined_assignment_9.f904
-rw-r--r--gcc/testsuite/gfortran.dg/dependency_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/dependency_21.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dependency_22.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dependency_23.f904
-rw-r--r--gcc/testsuite/gfortran.dg/dependency_24.f908
-rw-r--r--gcc/testsuite/gfortran.dg/dependency_25.f904
-rw-r--r--gcc/testsuite/gfortran.dg/dependency_26.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dependency_39.f904
-rw-r--r--gcc/testsuite/gfortran.dg/dependency_40.f908
-rw-r--r--gcc/testsuite/gfortran.dg/dependency_41.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dependency_42.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dependency_43.f904
-rw-r--r--gcc/testsuite/gfortran.dg/dependency_44.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dependency_45.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dependency_50.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dependency_51.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dependent_decls_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/der_array_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/der_array_io_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/der_array_io_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/der_array_io_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/der_io_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/der_io_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/der_pointer_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/derived_comp_array_ref_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/derived_comp_array_ref_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/derived_comp_array_ref_4.f904
-rw-r--r--gcc/testsuite/gfortran.dg/derived_comp_array_ref_7.f902
-rw-r--r--gcc/testsuite/gfortran.dg/derived_constructor_char_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/derived_constructor_comps_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/derived_constructor_comps_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/derived_constructor_comps_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/derived_constructor_comps_6.f9052
-rw-r--r--gcc/testsuite/gfortran.dg/derived_external_function_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/derived_init_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/derived_init_2.f906
-rw-r--r--gcc/testsuite/gfortran.dg/derived_init_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/derived_init_4.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/derived_init_5.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/derived_pointer_null_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/derived_pointer_recursion_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dev_null.F902
-rw-r--r--gcc/testsuite/gfortran.dg/dfloat_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/dim_sum_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/dim_sum_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/dim_sum_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/direct_io_10.f6
-rw-r--r--gcc/testsuite/gfortran.dg/direct_io_11.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/direct_io_12.f906
-rw-r--r--gcc/testsuite/gfortran.dg/direct_io_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/direct_io_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/direct_io_4.f908
-rw-r--r--gcc/testsuite/gfortran.dg/direct_io_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/direct_io_6.f902
-rw-r--r--gcc/testsuite/gfortran.dg/direct_io_7.f906
-rw-r--r--gcc/testsuite/gfortran.dg/direct_io_8.f906
-rw-r--r--gcc/testsuite/gfortran.dg/direct_io_9.f10
-rw-r--r--gcc/testsuite/gfortran.dg/do_1.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/do_3.F908
-rw-r--r--gcc/testsuite/gfortran.dg/do_concurrent_2.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/do_concurrent_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/do_corner_warn.f904
-rw-r--r--gcc/testsuite/gfortran.dg/do_iterator_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/dollar_edit_descriptor_1.f2
-rw-r--r--gcc/testsuite/gfortran.dg/dollar_edit_descriptor_2.f2
-rw-r--r--gcc/testsuite/gfortran.dg/dos_eol.f4
-rw-r--r--gcc/testsuite/gfortran.dg/dot_product_1.f034
-rw-r--r--gcc/testsuite/gfortran.dg/dot_product_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/dot_product_4.f908
-rw-r--r--gcc/testsuite/gfortran.dg/dshift_1.F908
-rw-r--r--gcc/testsuite/gfortran.dg/dshift_2.F908
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_1.f9030
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_10.f904
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_12.f908
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_14.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_15.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_16.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_17.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_19.f904
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_2.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_20.f032
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_21.f904
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_22.f906
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_24.f904
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_25.f906
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_26.f038
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_27.f904
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_28.f034
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_3.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_30.f034
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_31.f032
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_32.f032
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_33.f9028
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_4.f908
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_7.f908
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_8.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dtio_9.f904
-rw-r--r--gcc/testsuite/gfortran.dg/dummy_procedure_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/dummy_procedure_7.f908
-rw-r--r--gcc/testsuite/gfortran.dg/dup_save_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/dup_save_2.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/dynamic_dispatch_1.f0318
-rw-r--r--gcc/testsuite/gfortran.dg/dynamic_dispatch_11.f032
-rw-r--r--gcc/testsuite/gfortran.dg/dynamic_dispatch_12.f902
-rw-r--r--gcc/testsuite/gfortran.dg/dynamic_dispatch_2.f0318
-rw-r--r--gcc/testsuite/gfortran.dg/dynamic_dispatch_3.f0318
-rw-r--r--gcc/testsuite/gfortran.dg/dynamic_dispatch_4.f036
-rw-r--r--gcc/testsuite/gfortran.dg/dynamic_dispatch_5.f032
-rw-r--r--gcc/testsuite/gfortran.dg/dynamic_dispatch_7.f034
-rw-r--r--gcc/testsuite/gfortran.dg/dynamic_dispatch_8.f034
-rw-r--r--gcc/testsuite/gfortran.dg/dynamic_dispatch_9.f036
-rw-r--r--gcc/testsuite/gfortran.dg/e_d_fmt.f904
-rw-r--r--gcc/testsuite/gfortran.dg/edit_real_1.f9032
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_by_value_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_dependency_1.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_dependency_4.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_dependency_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_dependency_6.f902
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_optional_args_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_optional_args_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_optional_args_4.f908
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_optional_args_5.f0376
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_optional_args_6.f908
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_optional_args_7.f902
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_scalar_args_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_scalar_args_2.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_subroutine_1.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_subroutine_10.f902
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_subroutine_11.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_subroutine_2.f906
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_subroutine_3.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_subroutine_7.f906
-rw-r--r--gcc/testsuite/gfortran.dg/elemental_subroutine_9.f908
-rw-r--r--gcc/testsuite/gfortran.dg/empty_format_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/endfile.f4
-rw-r--r--gcc/testsuite/gfortran.dg/endfile.f904
-rw-r--r--gcc/testsuite/gfortran.dg/endfile_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/entry_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/entry_10.f908
-rw-r--r--gcc/testsuite/gfortran.dg/entry_12.f902
-rw-r--r--gcc/testsuite/gfortran.dg/entry_13.f908
-rw-r--r--gcc/testsuite/gfortran.dg/entry_14.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/entry_16.f904
-rw-r--r--gcc/testsuite/gfortran.dg/entry_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/entry_6.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/entry_9.f906
-rw-r--r--gcc/testsuite/gfortran.dg/entry_array_specs_2.f4
-rw-r--r--gcc/testsuite/gfortran.dg/enum_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/enum_9.f906
-rw-r--r--gcc/testsuite/gfortran.dg/eof_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/eof_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/eof_4.f9048
-rw-r--r--gcc/testsuite/gfortran.dg/eof_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/eor_handling_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/eor_handling_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/eor_handling_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/eor_handling_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/eor_handling_5.f908
-rw-r--r--gcc/testsuite/gfortran.dg/eoshift_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/eoshift_4.f908
-rw-r--r--gcc/testsuite/gfortran.dg/eoshift_5.f908
-rw-r--r--gcc/testsuite/gfortran.dg/eoshift_6.f908
-rw-r--r--gcc/testsuite/gfortran.dg/eoshift_large_1.f9036
-rw-r--r--gcc/testsuite/gfortran.dg/equiv_6.f908
-rw-r--r--gcc/testsuite/gfortran.dg/equiv_7.f9022
-rw-r--r--gcc/testsuite/gfortran.dg/equiv_9.f902
-rw-r--r--gcc/testsuite/gfortran.dg/equiv_constraint_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/erf_2.F904
-rw-r--r--gcc/testsuite/gfortran.dg/erf_3.F902
-rw-r--r--gcc/testsuite/gfortran.dg/erfc_scaled_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/error_format_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/error_recovery_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/execute_command_line_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/execute_command_line_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/exit_1.f0814
-rw-r--r--gcc/testsuite/gfortran.dg/exit_3.f0832
-rw-r--r--gcc/testsuite/gfortran.dg/exponent_1.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/exponent_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/extended_char_comparison_1.f2
-rw-r--r--gcc/testsuite/gfortran.dg/extends_1.f038
-rw-r--r--gcc/testsuite/gfortran.dg/extends_16.f906
-rw-r--r--gcc/testsuite/gfortran.dg/extends_2.f038
-rw-r--r--gcc/testsuite/gfortran.dg/extends_3.f0316
-rw-r--r--gcc/testsuite/gfortran.dg/extends_4.f036
-rw-r--r--gcc/testsuite/gfortran.dg/extends_type_of_1.f0324
-rw-r--r--gcc/testsuite/gfortran.dg/extends_type_of_2.f0312
-rw-r--r--gcc/testsuite/gfortran.dg/extends_type_of_3.f9034
-rw-r--r--gcc/testsuite/gfortran.dg/external_procedures_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/f2003_inquire_1.f0310
-rw-r--r--gcc/testsuite/gfortran.dg/f2003_io_1.f036
-rw-r--r--gcc/testsuite/gfortran.dg/f2003_io_4.f038
-rw-r--r--gcc/testsuite/gfortran.dg/f2003_io_5.f036
-rw-r--r--gcc/testsuite/gfortran.dg/f2003_io_6.f032
-rw-r--r--gcc/testsuite/gfortran.dg/f2003_io_7.f036
-rw-r--r--gcc/testsuite/gfortran.dg/f2c_1.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/f2c_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/f2c_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/f2c_4.f908
-rw-r--r--gcc/testsuite/gfortran.dg/f2c_6.f908
-rw-r--r--gcc/testsuite/gfortran.dg/f2c_7.f908
-rw-r--r--gcc/testsuite/gfortran.dg/f2c_9.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fgetc_1.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/fgetc_2.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/filename_null.f904
-rw-r--r--gcc/testsuite/gfortran.dg/finalize_12.f9050
-rw-r--r--gcc/testsuite/gfortran.dg/finalize_13.f9046
-rw-r--r--gcc/testsuite/gfortran.dg/finalize_15.f9040
-rw-r--r--gcc/testsuite/gfortran.dg/finalize_17.f906
-rw-r--r--gcc/testsuite/gfortran.dg/finalize_18.f902
-rw-r--r--gcc/testsuite/gfortran.dg/finalize_25.f904
-rw-r--r--gcc/testsuite/gfortran.dg/finalize_29.f0848
-rw-r--r--gcc/testsuite/gfortran.dg/finalize_31.f902
-rw-r--r--gcc/testsuite/gfortran.dg/float_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/flush_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_bz_bn.f10
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_bz_bn_err.f2
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_cache_1.f4
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_cache_2.f2
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_cache_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_colon.f904
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_e.f904
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_en.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_error_10.f16
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_error_9.f12
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_exhaust.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_f0_1.f9056
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_f_an_p.f2
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_fw_d.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_g.f34
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_g0_1.f0814
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_g0_2.f084
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_g0_4.f0810
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_g0_5.f082
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_g0_6.f082
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_g0_7.f082
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_g_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_int_sign.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_l.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_missing_period_2.f8
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_missing_period_3.f4
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_p_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_pf.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_read.f904
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_read_bz_bn.f906
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_t_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_t_2.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_t_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_t_4.f904
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_t_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_t_6.f2
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_t_7.f6
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_t_9.f6
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_tl.f12
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_unlimited.f904
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_white.f4
-rw-r--r--gcc/testsuite/gfortran.dg/fmt_zero_digits.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/fold_nearest.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/forall_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/forall_10.f904
-rw-r--r--gcc/testsuite/gfortran.dg/forall_12.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/forall_13.f904
-rw-r--r--gcc/testsuite/gfortran.dg/forall_15.f904
-rw-r--r--gcc/testsuite/gfortran.dg/forall_4.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/forall_5.f906
-rw-r--r--gcc/testsuite/gfortran.dg/forall_6.f902
-rw-r--r--gcc/testsuite/gfortran.dg/forall_7.f902
-rw-r--r--gcc/testsuite/gfortran.dg/fraction.f908
-rw-r--r--gcc/testsuite/gfortran.dg/fseek.f9022
-rw-r--r--gcc/testsuite/gfortran.dg/ftell_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/ftell_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/ftell_3.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/func_assign_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/func_assign_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/func_derived_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/func_derived_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/func_derived_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/func_result_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/func_result_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/func_result_6.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/function_charlen_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/function_charlen_3.f2
-rw-r--r--gcc/testsuite/gfortran.dg/function_kinds_1.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/function_kinds_4.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/function_optimize_10.f906
-rw-r--r--gcc/testsuite/gfortran.dg/function_optimize_11.f902
-rw-r--r--gcc/testsuite/gfortran.dg/function_optimize_12.f902
-rw-r--r--gcc/testsuite/gfortran.dg/function_optimize_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/function_optimize_8.f904
-rw-r--r--gcc/testsuite/gfortran.dg/g77/13037.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/1832.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/19981119-0.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/19990313-0.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/19990313-1.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/19990313-2.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/19990313-3.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/19990419-1.f6
-rw-r--r--gcc/testsuite/gfortran.dg/g77/19990826-0.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/19990826-2.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/20000503-1.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/20001111.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/20010116.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/20010216-1.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/20010430.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/20010610.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/6177.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/7388.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/947.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/970625-2.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/971102-1.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/980628-0.f30
-rw-r--r--gcc/testsuite/gfortran.dg/g77/980628-1.f30
-rw-r--r--gcc/testsuite/gfortran.dg/g77/980628-10.f24
-rw-r--r--gcc/testsuite/gfortran.dg/g77/980628-2.f24
-rw-r--r--gcc/testsuite/gfortran.dg/g77/980628-3.f24
-rw-r--r--gcc/testsuite/gfortran.dg/g77/980628-7.f30
-rw-r--r--gcc/testsuite/gfortran.dg/g77/980628-8.f30
-rw-r--r--gcc/testsuite/gfortran.dg/g77/980628-9.f24
-rw-r--r--gcc/testsuite/gfortran.dg/g77/980701-0.f36
-rw-r--r--gcc/testsuite/gfortran.dg/g77/980701-1.f36
-rw-r--r--gcc/testsuite/gfortran.dg/g77/cabs.f4
-rw-r--r--gcc/testsuite/gfortran.dg/g77/claus.f8
-rw-r--r--gcc/testsuite/gfortran.dg/g77/complex_1.f8
-rw-r--r--gcc/testsuite/gfortran.dg/g77/cpp3.F2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/cpp4.F2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/cpp5.F2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/dcomplex.f8
-rw-r--r--gcc/testsuite/gfortran.dg/g77/dnrm2.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/erfc.f12
-rw-r--r--gcc/testsuite/gfortran.dg/g77/f77-edit-i-in.f6
-rw-r--r--gcc/testsuite/gfortran.dg/g77/f77-edit-t-in.f24
-rw-r--r--gcc/testsuite/gfortran.dg/g77/f90-intrinsic-bit.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/f90-intrinsic-mathematical.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/f90-intrinsic-numeric.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/int8421.f8
-rw-r--r--gcc/testsuite/gfortran.dg/g77/intrinsic-unix-bessel.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/intrinsic-unix-erf.f2
-rw-r--r--gcc/testsuite/gfortran.dg/g77/le.f18
-rw-r--r--gcc/testsuite/gfortran.dg/g77/short.f8
-rw-r--r--gcc/testsuite/gfortran.dg/gamma_1.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/gamma_4.f904
-rw-r--r--gcc/testsuite/gfortran.dg/gamma_5.f908
-rw-r--r--gcc/testsuite/gfortran.dg/generic_13.f902
-rw-r--r--gcc/testsuite/gfortran.dg/generic_15.f904
-rw-r--r--gcc/testsuite/gfortran.dg/generic_19.f908
-rw-r--r--gcc/testsuite/gfortran.dg/generic_20.f902
-rw-r--r--gcc/testsuite/gfortran.dg/generic_23.f034
-rw-r--r--gcc/testsuite/gfortran.dg/generic_25.f904
-rw-r--r--gcc/testsuite/gfortran.dg/generic_27.f904
-rw-r--r--gcc/testsuite/gfortran.dg/generic_31.f902
-rw-r--r--gcc/testsuite/gfortran.dg/generic_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/global_vars_c_init.f902
-rw-r--r--gcc/testsuite/gfortran.dg/global_vars_f90_init.f902
-rw-r--r--gcc/testsuite/gfortran.dg/gnu_logical_1.F24
-rw-r--r--gcc/testsuite/gfortran.dg/goacc/fixed-1.f2
-rw-r--r--gcc/testsuite/gfortran.dg/goacc/fixed-2.f2
-rw-r--r--gcc/testsuite/gfortran.dg/goacc/gang-static.f952
-rw-r--r--gcc/testsuite/gfortran.dg/goacc/kernels-loop-2.f952
-rw-r--r--gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-2.f952
-rw-r--r--gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-enter-exit-2.f952
-rw-r--r--gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-enter-exit.f952
-rw-r--r--gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-update.f952
-rw-r--r--gcc/testsuite/gfortran.dg/goacc/kernels-loop-data.f952
-rw-r--r--gcc/testsuite/gfortran.dg/goacc/kernels-loop-n.f952
-rw-r--r--gcc/testsuite/gfortran.dg/goacc/kernels-loop.f952
-rw-r--r--gcc/testsuite/gfortran.dg/goacc/omp-fixed.f2
-rw-r--r--gcc/testsuite/gfortran.dg/gomp/crayptr5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/gomp/pr48794-2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/gomp/pr48794.f902
-rw-r--r--gcc/testsuite/gfortran.dg/gomp/pr72744.f902
-rw-r--r--gcc/testsuite/gfortran.dg/gomp/pr77665.f902
-rw-r--r--gcc/testsuite/gfortran.dg/gomp/workshare2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/gomp/workshare3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/goto_1.f4
-rw-r--r--gcc/testsuite/gfortran.dg/goto_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/goto_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/goto_6.f2
-rw-r--r--gcc/testsuite/gfortran.dg/graphite/id-26.f036
-rw-r--r--gcc/testsuite/gfortran.dg/graphite/id-pr45370.f9036
-rw-r--r--gcc/testsuite/gfortran.dg/graphite/pr29581.f904
-rw-r--r--gcc/testsuite/gfortran.dg/graphite/pr29832.f904
-rw-r--r--gcc/testsuite/gfortran.dg/graphite/run-id-1.f2
-rw-r--r--gcc/testsuite/gfortran.dg/graphite/run-id-2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/graphite/run-id-3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/hollerith.f9022
-rw-r--r--gcc/testsuite/gfortran.dg/hollerith4.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/hollerith6.f904
-rw-r--r--gcc/testsuite/gfortran.dg/hollerith8.f902
-rw-r--r--gcc/testsuite/gfortran.dg/hollerith_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/hollerith_character_array_constructor.f908
-rw-r--r--gcc/testsuite/gfortran.dg/hollerith_f95.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/hollerith_legacy.f9022
-rw-r--r--gcc/testsuite/gfortran.dg/host_assoc_call_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/host_assoc_function_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/host_assoc_function_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/host_assoc_function_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/host_assoc_function_9.f904
-rw-r--r--gcc/testsuite/gfortran.dg/host_dummy_index_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/hypot_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/iall_iany_iparity_1.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/iargc.f904
-rw-r--r--gcc/testsuite/gfortran.dg/ibits.f902
-rw-r--r--gcc/testsuite/gfortran.dg/ichar_1.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/ichar_2.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/ieee/ieee_1.F904
-rw-r--r--gcc/testsuite/gfortran.dg/ieee/ieee_2.f90384
-rw-r--r--gcc/testsuite/gfortran.dg/ieee/ieee_3.f90204
-rw-r--r--gcc/testsuite/gfortran.dg/ieee/ieee_4.f90232
-rw-r--r--gcc/testsuite/gfortran.dg/ieee/ieee_6.f9032
-rw-r--r--gcc/testsuite/gfortran.dg/ieee/ieee_7.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/ieee/ieee_8.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/ieee/intrinsics_1.f9046
-rw-r--r--gcc/testsuite/gfortran.dg/ieee/intrinsics_2.F9042
-rw-r--r--gcc/testsuite/gfortran.dg/ieee/large_1.f90116
-rw-r--r--gcc/testsuite/gfortran.dg/ieee/large_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/ieee/large_3.F904
-rw-r--r--gcc/testsuite/gfortran.dg/ieee/large_4.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/ieee/rounding_1.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/ieee/underflow_1.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/impl_do_var_data.f902
-rw-r--r--gcc/testsuite/gfortran.dg/implicit_10.f904
-rw-r--r--gcc/testsuite/gfortran.dg/implicit_12.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/implicit_class_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/implicit_pure_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/implied_do_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/implied_do_io_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/implied_do_io_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/implied_do_io_3.f906
-rw-r--r--gcc/testsuite/gfortran.dg/implied_do_io_4.f9022
-rw-r--r--gcc/testsuite/gfortran.dg/implied_shape_1.f0818
-rw-r--r--gcc/testsuite/gfortran.dg/import.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/import4.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/impure_1.f088
-rw-r--r--gcc/testsuite/gfortran.dg/index.f904
-rw-r--r--gcc/testsuite/gfortran.dg/index_2.f9072
-rw-r--r--gcc/testsuite/gfortran.dg/init_flag_1.f9034
-rw-r--r--gcc/testsuite/gfortran.dg/init_flag_10.f908
-rw-r--r--gcc/testsuite/gfortran.dg/init_flag_15.f032
-rw-r--r--gcc/testsuite/gfortran.dg/init_flag_2.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/init_flag_3.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/init_flag_4.f908
-rw-r--r--gcc/testsuite/gfortran.dg/init_flag_5.f908
-rw-r--r--gcc/testsuite/gfortran.dg/init_flag_6.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/init_flag_7.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/init_flag_9.f902
-rw-r--r--gcc/testsuite/gfortran.dg/initialization_11.f902
-rw-r--r--gcc/testsuite/gfortran.dg/initialization_19.f902
-rw-r--r--gcc/testsuite/gfortran.dg/initialization_2.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/initialization_22.f902
-rw-r--r--gcc/testsuite/gfortran.dg/initialization_27.f906
-rw-r--r--gcc/testsuite/gfortran.dg/initialization_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/initialization_6.f908
-rw-r--r--gcc/testsuite/gfortran.dg/inline_matmul_1.f9044
-rw-r--r--gcc/testsuite/gfortran.dg/inline_matmul_10.f908
-rw-r--r--gcc/testsuite/gfortran.dg/inline_matmul_11.f908
-rw-r--r--gcc/testsuite/gfortran.dg/inline_matmul_13.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/inline_matmul_14.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/inline_matmul_16.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/inline_matmul_17.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/inline_matmul_18.f902
-rw-r--r--gcc/testsuite/gfortran.dg/inline_matmul_19.f904
-rw-r--r--gcc/testsuite/gfortran.dg/inline_matmul_2.f9028
-rw-r--r--gcc/testsuite/gfortran.dg/inline_matmul_20.f902
-rw-r--r--gcc/testsuite/gfortran.dg/inline_matmul_22.f9044
-rw-r--r--gcc/testsuite/gfortran.dg/inline_matmul_3.f9028
-rw-r--r--gcc/testsuite/gfortran.dg/inline_matmul_4.f9028
-rw-r--r--gcc/testsuite/gfortran.dg/inline_matmul_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/inline_matmul_6.f904
-rw-r--r--gcc/testsuite/gfortran.dg/inline_matmul_7.f904
-rw-r--r--gcc/testsuite/gfortran.dg/inline_matmul_8.f902
-rw-r--r--gcc/testsuite/gfortran.dg/inline_matmul_9.f904
-rw-r--r--gcc/testsuite/gfortran.dg/inline_sum_1.f9052
-rw-r--r--gcc/testsuite/gfortran.dg/inline_sum_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/inline_sum_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/inline_transpose_1.f9082
-rw-r--r--gcc/testsuite/gfortran.dg/inquire-complex.f902
-rw-r--r--gcc/testsuite/gfortran.dg/inquire.f902
-rw-r--r--gcc/testsuite/gfortran.dg/inquire_10.f908
-rw-r--r--gcc/testsuite/gfortran.dg/inquire_13.f9052
-rw-r--r--gcc/testsuite/gfortran.dg/inquire_15.f906
-rw-r--r--gcc/testsuite/gfortran.dg/inquire_16.f906
-rw-r--r--gcc/testsuite/gfortran.dg/inquire_17.f902
-rw-r--r--gcc/testsuite/gfortran.dg/inquire_18.f9011
-rw-r--r--gcc/testsuite/gfortran.dg/inquire_19.f9013
-rw-r--r--gcc/testsuite/gfortran.dg/inquire_5.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/inquire_6.f908
-rw-r--r--gcc/testsuite/gfortran.dg/inquire_7.f908
-rw-r--r--gcc/testsuite/gfortran.dg/inquire_9.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/inquire_internal.f904
-rw-r--r--gcc/testsuite/gfortran.dg/inquire_recl_f2018.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/inquire_size.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/int_1.f9056
-rw-r--r--gcc/testsuite/gfortran.dg/int_conv_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/int_range_io_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/integer_exponentiation_2.f906
-rw-r--r--gcc/testsuite/gfortran.dg/integer_exponentiation_3.F9016
-rw-r--r--gcc/testsuite/gfortran.dg/integer_exponentiation_5.F9012
-rw-r--r--gcc/testsuite/gfortran.dg/integer_plus.f902
-rw-r--r--gcc/testsuite/gfortran.dg/intent_out_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/intent_out_5.f908
-rw-r--r--gcc/testsuite/gfortran.dg/intent_out_6.f906
-rw-r--r--gcc/testsuite/gfortran.dg/interface_12.f904
-rw-r--r--gcc/testsuite/gfortran.dg/interface_19.f902
-rw-r--r--gcc/testsuite/gfortran.dg/interface_4.f904
-rw-r--r--gcc/testsuite/gfortran.dg/interface_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/interface_9.f908
-rw-r--r--gcc/testsuite/gfortran.dg/interface_assignment_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/interface_assignment_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/internal_dummy_2.f086
-rw-r--r--gcc/testsuite/gfortran.dg/internal_dummy_3.f088
-rw-r--r--gcc/testsuite/gfortran.dg/internal_dummy_4.f084
-rw-r--r--gcc/testsuite/gfortran.dg/internal_pack_1.f9058
-rw-r--r--gcc/testsuite/gfortran.dg/internal_pack_10.f908
-rw-r--r--gcc/testsuite/gfortran.dg/internal_pack_12.f902
-rw-r--r--gcc/testsuite/gfortran.dg/internal_pack_13.f902
-rw-r--r--gcc/testsuite/gfortran.dg/internal_pack_14.f902
-rw-r--r--gcc/testsuite/gfortran.dg/internal_pack_15.f908
-rw-r--r--gcc/testsuite/gfortran.dg/internal_pack_2.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/internal_pack_3.f906
-rw-r--r--gcc/testsuite/gfortran.dg/internal_pack_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/internal_pack_6.f902
-rw-r--r--gcc/testsuite/gfortran.dg/internal_pack_8.f902
-rw-r--r--gcc/testsuite/gfortran.dg/internal_readwrite_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/internal_readwrite_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/internal_readwrite_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_actual_1.f2
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_actual_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_actual_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_argument_conformance_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_char_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_ifunction_1.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_intkinds_1.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_modulo_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_pack_1.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_pack_2.f906
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_pack_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_pack_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_product_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_sign_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_sign_2.f9052
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_spread_1.f9072
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_spread_2.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_spread_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_unpack_1.f9048
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_unpack_2.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_unpack_3.f906
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsic_verify_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/intrinsics_kind_argument_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/io_err_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/io_real_boz.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/io_real_boz2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/iomsg_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/iostat_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/iostat_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/iostat_4.f904
-rw-r--r--gcc/testsuite/gfortran.dg/is_iostat_end_eor_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/ishft_1.f90108
-rw-r--r--gcc/testsuite/gfortran.dg/ishft_2.f906
-rw-r--r--gcc/testsuite/gfortran.dg/ishft_4.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/isnan_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/isnan_2.f906
-rw-r--r--gcc/testsuite/gfortran.dg/iso_c_binding_rename_1.f0316
-rw-r--r--gcc/testsuite/gfortran.dg/iso_c_binding_rename_2.f036
-rw-r--r--gcc/testsuite/gfortran.dg/iso_fortran_env_1.f9034
-rw-r--r--gcc/testsuite/gfortran.dg/iso_fortran_env_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/iso_fortran_env_5.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/iso_fortran_env_6.f902
-rw-r--r--gcc/testsuite/gfortran.dg/itime_idate_1.f4
-rw-r--r--gcc/testsuite/gfortran.dg/itime_idate_2.f4
-rw-r--r--gcc/testsuite/gfortran.dg/large_integer_kind_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/large_integer_kind_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/large_real_kind_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/large_real_kind_2.F908
-rw-r--r--gcc/testsuite/gfortran.dg/large_real_kind_3.F902
-rw-r--r--gcc/testsuite/gfortran.dg/large_real_kind_form_io_1.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/large_real_kind_form_io_2.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/large_recl.f902
-rw-r--r--gcc/testsuite/gfortran.dg/large_unit_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/large_unit_2.f906
-rw-r--r--gcc/testsuite/gfortran.dg/largeequiv_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/leadz_trailz_1.f90172
-rw-r--r--gcc/testsuite/gfortran.dg/leadz_trailz_2.f9040
-rw-r--r--gcc/testsuite/gfortran.dg/leadz_trailz_3.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_10.f902
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_11.f908
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_12.f902
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_13.f2
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_14.f902
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_2.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_3.f9040
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_4.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_5.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_6.f908
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_7.f904
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_8.f902
-rw-r--r--gcc/testsuite/gfortran.dg/list_read_9.f902
-rw-r--r--gcc/testsuite/gfortran.dg/loc_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/logical_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/logical_dot_product.f904
-rw-r--r--gcc/testsuite/gfortran.dg/logical_temp_io.f902
-rw-r--r--gcc/testsuite/gfortran.dg/logical_temp_io_kind8.f902
-rw-r--r--gcc/testsuite/gfortran.dg/lrshift_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/ltime_gmtime_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/ltime_gmtime_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/lto/pr40725_0.f032
-rw-r--r--gcc/testsuite/gfortran.dg/lto/pr41576_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/make_unit.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/mapping_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/mapping_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/mapping_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/masklr_1.F908
-rw-r--r--gcc/testsuite/gfortran.dg/masklr_2.F908
-rw-r--r--gcc/testsuite/gfortran.dg/matmul_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/matmul_10.f904
-rw-r--r--gcc/testsuite/gfortran.dg/matmul_12.f902
-rw-r--r--gcc/testsuite/gfortran.dg/matmul_16.f902
-rw-r--r--gcc/testsuite/gfortran.dg/matmul_17.f902
-rw-r--r--gcc/testsuite/gfortran.dg/matmul_18.f902
-rw-r--r--gcc/testsuite/gfortran.dg/matmul_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/matmul_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/matmul_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/matmul_6.f906
-rw-r--r--gcc/testsuite/gfortran.dg/matmul_8.f032
-rw-r--r--gcc/testsuite/gfortran.dg/matmul_9.f908
-rw-r--r--gcc/testsuite/gfortran.dg/matmul_bounds_12.f904
-rw-r--r--gcc/testsuite/gfortran.dg/matmul_bounds_6.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/matmul_const.f902
-rw-r--r--gcc/testsuite/gfortran.dg/maxloc_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/maxloc_2.f90102
-rw-r--r--gcc/testsuite/gfortran.dg/maxloc_3.f9082
-rw-r--r--gcc/testsuite/gfortran.dg/maxloc_4.f9026
-rw-r--r--gcc/testsuite/gfortran.dg/maxloc_string_1.f9032
-rw-r--r--gcc/testsuite/gfortran.dg/maxlocval_1.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/maxlocval_2.f90204
-rw-r--r--gcc/testsuite/gfortran.dg/maxlocval_3.f90164
-rw-r--r--gcc/testsuite/gfortran.dg/maxlocval_4.f90152
-rw-r--r--gcc/testsuite/gfortran.dg/maxval_char_1.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/maxval_char_2.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/maxval_char_3.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/maxval_char_4.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/maxval_parameter_1.f9034
-rw-r--r--gcc/testsuite/gfortran.dg/mclock.f902
-rw-r--r--gcc/testsuite/gfortran.dg/merge_bits_1.F904
-rw-r--r--gcc/testsuite/gfortran.dg/merge_bits_2.F904
-rw-r--r--gcc/testsuite/gfortran.dg/merge_char_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/merge_init_expr.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/min_max_optional_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/min_max_optional_5.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/minloc_1.f90102
-rw-r--r--gcc/testsuite/gfortran.dg/minloc_2.f9082
-rw-r--r--gcc/testsuite/gfortran.dg/minloc_3.f9096
-rw-r--r--gcc/testsuite/gfortran.dg/minloc_4.f9026
-rw-r--r--gcc/testsuite/gfortran.dg/minloc_string_1.f9032
-rw-r--r--gcc/testsuite/gfortran.dg/minlocval_1.f90204
-rw-r--r--gcc/testsuite/gfortran.dg/minlocval_2.f90164
-rw-r--r--gcc/testsuite/gfortran.dg/minlocval_3.f90480
-rw-r--r--gcc/testsuite/gfortran.dg/minlocval_4.f90152
-rw-r--r--gcc/testsuite/gfortran.dg/minmax_char_1.f9060
-rw-r--r--gcc/testsuite/gfortran.dg/minmaxloc_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/minmaxloc_10.f902
-rw-r--r--gcc/testsuite/gfortran.dg/minmaxloc_11.f904
-rw-r--r--gcc/testsuite/gfortran.dg/minmaxloc_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/minmaxloc_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/minmaxloc_4.f904
-rw-r--r--gcc/testsuite/gfortran.dg/minmaxloc_5.f908
-rw-r--r--gcc/testsuite/gfortran.dg/minmaxloc_6.f904
-rw-r--r--gcc/testsuite/gfortran.dg/minmaxloc_7.f904
-rw-r--r--gcc/testsuite/gfortran.dg/minmaxloc_8.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/minmaxval_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/minval_char_1.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/minval_char_2.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/minval_char_3.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/minval_char_4.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/minval_char_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/minval_parameter_1.f9034
-rw-r--r--gcc/testsuite/gfortran.dg/missing_optional_dummy_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/missing_optional_dummy_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/missing_optional_dummy_6.f906
-rw-r--r--gcc/testsuite/gfortran.dg/missing_parens_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/missing_parens_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/mod_large_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/mod_sign0_1.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/module_blank_common.f902
-rw-r--r--gcc/testsuite/gfortran.dg/module_commons_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/module_commons_3.f906
-rw-r--r--gcc/testsuite/gfortran.dg/module_double_reuse.f904
-rw-r--r--gcc/testsuite/gfortran.dg/module_equivalence_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/module_equivalence_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/module_equivalence_3.f906
-rw-r--r--gcc/testsuite/gfortran.dg/module_equivalence_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/module_interface_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/module_nan.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/module_private_array_refs_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/module_procedure_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/module_read_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/module_read_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/module_widestring_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/move_alloc.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/move_alloc_10.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/move_alloc_13.f904
-rw-r--r--gcc/testsuite/gfortran.dg/move_alloc_14.f904
-rw-r--r--gcc/testsuite/gfortran.dg/move_alloc_15.f904
-rw-r--r--gcc/testsuite/gfortran.dg/move_alloc_16.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/move_alloc_2.f906
-rw-r--r--gcc/testsuite/gfortran.dg/move_alloc_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/move_alloc_6.f9026
-rw-r--r--gcc/testsuite/gfortran.dg/move_alloc_9.f904
-rw-r--r--gcc/testsuite/gfortran.dg/multiple_allocation_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/multiple_allocation_3.f906
-rw-r--r--gcc/testsuite/gfortran.dg/mvbits_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/mvbits_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/mvbits_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/mvbits_4.f906
-rw-r--r--gcc/testsuite/gfortran.dg/mvbits_7.f902
-rw-r--r--gcc/testsuite/gfortran.dg/mvbits_8.f904
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_11.f14
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_12.f12
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_13.f904
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_14.f906
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_15.f906
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_16.f908
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_17.f908
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_18.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_19.f904
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_20.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_21.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_22.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_23.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_24.f9032
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_26.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_27.f908
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_28.f906
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_29.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_37.f908
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_38.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_39.f906
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_40.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_41.f904
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_42.f908
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_43.f904
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_44.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_47.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_48.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_49.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_50.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_51.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_52.f904
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_54.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_55.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_56.f904
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_57.f906
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_58.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_59.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_60.f906
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_61.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_64.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_65.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_69.f90122
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_70.f90252
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_71.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_72.f8
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_73.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_77.f906
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_78.f904
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_79.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_80.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_81.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_82.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_84.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_85.f906
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_86.f908
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_87.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_88.f906
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_89.f908
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_90.f4
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_95.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_char_only.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_empty.f902
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_internal.f904
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_use.f904
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_use_only.f904
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_utf8.f906
-rw-r--r--gcc/testsuite/gfortran.dg/nan_1.f90102
-rw-r--r--gcc/testsuite/gfortran.dg/nan_2.f90102
-rw-r--r--gcc/testsuite/gfortran.dg/nan_3.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/nan_6.f9040
-rw-r--r--gcc/testsuite/gfortran.dg/nan_7.f902
-rw-r--r--gcc/testsuite/gfortran.dg/nearest_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/nearest_2.f9080
-rw-r--r--gcc/testsuite/gfortran.dg/nearest_3.f90160
-rw-r--r--gcc/testsuite/gfortran.dg/negative-z-descriptor.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/negative_automatic_size.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/negative_unit.f6
-rw-r--r--gcc/testsuite/gfortran.dg/negative_unit2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/negative_unit_int8.f10
-rw-r--r--gcc/testsuite/gfortran.dg/nested_array_constructor_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/nested_array_constructor_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/nested_array_constructor_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/nested_modules_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/nested_modules_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/nested_modules_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/nesting_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/new_line.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/newunit_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/newunit_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/newunit_5.f90.f904
-rw-r--r--gcc/testsuite/gfortran.dg/nint_1.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/nint_2.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/no_arg_check_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/no_range_check_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/no_range_check_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/no_range_check_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/noadv_size.f906
-rw-r--r--gcc/testsuite/gfortran.dg/nonreturning_statements.f902
-rw-r--r--gcc/testsuite/gfortran.dg/norm2_1.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/norm2_3.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/nosigned_zero_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/nosigned_zero_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/nosigned_zero_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/null_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/null_9.f902
-rw-r--r--gcc/testsuite/gfortran.dg/nullify_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/oldstyle_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/open_access_append_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/open_access_append_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/open_errors.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/open_negative_unit_1.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/open_new.f902
-rw-r--r--gcc/testsuite/gfortran.dg/open_readonly_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/operator_1.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/optional_absent_1.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/optional_absent_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/optional_absent_3.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/optional_class_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/optional_dim_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/optional_dim_3.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/output_exponents_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/overload_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/overload_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/overwrite_1.f4
-rw-r--r--gcc/testsuite/gfortran.dg/pad_no.f904
-rw-r--r--gcc/testsuite/gfortran.dg/parameter_array_init_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/parameter_array_init_2.f9032
-rw-r--r--gcc/testsuite/gfortran.dg/parameter_array_init_4.f9048
-rw-r--r--gcc/testsuite/gfortran.dg/parameter_array_init_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/parameter_array_section_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/parens_3.f906
-rw-r--r--gcc/testsuite/gfortran.dg/parens_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/parens_6.f904
-rw-r--r--gcc/testsuite/gfortran.dg/parent_result_ref_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/parent_result_ref_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/parent_result_ref_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/parent_result_ref_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/parity_1.f9032
-rw-r--r--gcc/testsuite/gfortran.dg/past_eor.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pdt_1.f038
-rw-r--r--gcc/testsuite/gfortran.dg/pdt_10.f0312
-rw-r--r--gcc/testsuite/gfortran.dg/pdt_11.f034
-rw-r--r--gcc/testsuite/gfortran.dg/pdt_12.f032
-rw-r--r--gcc/testsuite/gfortran.dg/pdt_13.f038
-rw-r--r--gcc/testsuite/gfortran.dg/pdt_14.f038
-rw-r--r--gcc/testsuite/gfortran.dg/pdt_15.f038
-rw-r--r--gcc/testsuite/gfortran.dg/pdt_19.f032
-rw-r--r--gcc/testsuite/gfortran.dg/pdt_20.f036
-rw-r--r--gcc/testsuite/gfortran.dg/pdt_22.f032
-rw-r--r--gcc/testsuite/gfortran.dg/pdt_23.f0310
-rw-r--r--gcc/testsuite/gfortran.dg/pdt_25.f0310
-rw-r--r--gcc/testsuite/gfortran.dg/pdt_26.f034
-rw-r--r--gcc/testsuite/gfortran.dg/pdt_27.f034
-rw-r--r--gcc/testsuite/gfortran.dg/pdt_28.f032
-rw-r--r--gcc/testsuite/gfortran.dg/pdt_3.f0328
-rw-r--r--gcc/testsuite/gfortran.dg/pdt_4.f038
-rw-r--r--gcc/testsuite/gfortran.dg/pdt_5.f0312
-rw-r--r--gcc/testsuite/gfortran.dg/pdt_7.f032
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_array_1.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_array_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_array_4.f906
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_array_5.f906
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_array_6.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_array_7.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_array_8.f9028
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_array_9.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_array_component_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_array_component_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_assign_10.f906
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_assign_11.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_assign_4.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_assign_8.f9028
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_assign_9.f906
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_check_10.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_check_9.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_function_actual_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_function_actual_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_function_result_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_init_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_init_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_init_4.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_init_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_init_8.f908
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_intent_1.f9028
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_intent_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_intent_4.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_intent_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_remapping_10.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_remapping_4.f0320
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_remapping_5.f0820
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_remapping_9.f908
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_target_1.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/pointer_target_2.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/popcnt_poppar_1.F908
-rw-r--r--gcc/testsuite/gfortran.dg/popcnt_poppar_2.F908
-rw-r--r--gcc/testsuite/gfortran.dg/power.f902
-rw-r--r--gcc/testsuite/gfortran.dg/power1.f9040
-rw-r--r--gcc/testsuite/gfortran.dg/power_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/power_4.f906
-rw-r--r--gcc/testsuite/gfortran.dg/power_5.f908
-rw-r--r--gcc/testsuite/gfortran.dg/pr12884.f2
-rw-r--r--gcc/testsuite/gfortran.dg/pr15129.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pr15140.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pr15324.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pr15332.f4
-rw-r--r--gcc/testsuite/gfortran.dg/pr15957.f908
-rw-r--r--gcc/testsuite/gfortran.dg/pr15959.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr16597.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pr16861.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr16938.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/pr17090.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr17143.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr17164.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr17229.f2
-rw-r--r--gcc/testsuite/gfortran.dg/pr17285.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr17286.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pr17472.f2
-rw-r--r--gcc/testsuite/gfortran.dg/pr17612.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pr17706.f906
-rw-r--r--gcc/testsuite/gfortran.dg/pr18025.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pr18122.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr18210.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pr18392.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr19155.f4
-rw-r--r--gcc/testsuite/gfortran.dg/pr19216.f6
-rw-r--r--gcc/testsuite/gfortran.dg/pr19467.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr19657.f2
-rw-r--r--gcc/testsuite/gfortran.dg/pr19926.f906
-rw-r--r--gcc/testsuite/gfortran.dg/pr19928-1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr19928-2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/pr20086.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pr20124.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr20163-2.f2
-rw-r--r--gcc/testsuite/gfortran.dg/pr20480.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pr20755.f4
-rw-r--r--gcc/testsuite/gfortran.dg/pr20950.f2
-rw-r--r--gcc/testsuite/gfortran.dg/pr21177.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/pr21730.f2
-rw-r--r--gcc/testsuite/gfortran.dg/pr22491.f2
-rw-r--r--gcc/testsuite/gfortran.dg/pr25603.f2
-rw-r--r--gcc/testsuite/gfortran.dg/pr26246_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr32136.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr32533.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr33794.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr35662.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pr35944-1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pr35944-2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr35983.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pr39865.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/pr41212.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr43808.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr44592.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr44735.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr45308.f032
-rw-r--r--gcc/testsuite/gfortran.dg/pr46297.f10
-rw-r--r--gcc/testsuite/gfortran.dg/pr46588.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr46665.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pr46804.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr47008.f032
-rw-r--r--gcc/testsuite/gfortran.dg/pr47614.f2
-rw-r--r--gcc/testsuite/gfortran.dg/pr47878.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr49103.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr50069_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr50769.f906
-rw-r--r--gcc/testsuite/gfortran.dg/pr52608.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr55086_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/pr55086_2_tfat.f908
-rw-r--r--gcc/testsuite/gfortran.dg/pr55086_aliasing_dummy_4_tfat.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/pr55330.f908
-rw-r--r--gcc/testsuite/gfortran.dg/pr56015.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr57910.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr59700.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/pr62125.f906
-rw-r--r--gcc/testsuite/gfortran.dg/pr64530.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr65429.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/pr65450.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr65504.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr65903.f906
-rw-r--r--gcc/testsuite/gfortran.dg/pr66311.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr66864.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/pr67140.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr67524.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pr67885.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr68053.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr68566.f906
-rw-r--r--gcc/testsuite/gfortran.dg/pr69514_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr69514_2.f9036
-rw-r--r--gcc/testsuite/gfortran.dg/pr69739.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr70673.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pr71523_2.f906
-rw-r--r--gcc/testsuite/gfortran.dg/pr71764.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/pr78092.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr82004.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/pr82973.f904
-rw-r--r--gcc/testsuite/gfortran.dg/pr83149.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/pr83149_1.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/pr83149_a.f9011
-rw-r--r--gcc/testsuite/gfortran.dg/pr83149_b.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/pr83864.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr83874.f906
-rw-r--r--gcc/testsuite/gfortran.dg/pr84088.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pr84155.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_decl_12.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_decl_13.f904
-rw-r--r--gcc/testsuite/gfortran.dg/proc_decl_15.f904
-rw-r--r--gcc/testsuite/gfortran.dg/proc_decl_17.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_decl_18.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_decl_2.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/proc_decl_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_decl_9.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_1.f9022
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_10.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_12.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_18.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_19.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_21.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_22.f904
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_23.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_25.f904
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_26.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_36.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_47.f908
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_48.f908
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_5.f906
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_6.f904
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_7.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_8.f904
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_common_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_1.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_11.f906
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_12.f904
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_13.f908
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_14.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_15.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_16.f904
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_17.f904
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_18.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_19.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_29.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_45.f904
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_47.f908
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_6.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_8.f908
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_9.f908
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_result_1.f9030
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_result_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_result_6.f906
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_result_7.f902
-rw-r--r--gcc/testsuite/gfortran.dg/proc_ptr_result_8.f908
-rw-r--r--gcc/testsuite/gfortran.dg/product_init_expr.f0312
-rw-r--r--gcc/testsuite/gfortran.dg/promotion.f908
-rw-r--r--gcc/testsuite/gfortran.dg/promotion_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/promotion_4.f908
-rw-r--r--gcc/testsuite/gfortran.dg/protected_1.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/protected_2.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/protected_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/protected_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/protected_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/protected_6.f902
-rw-r--r--gcc/testsuite/gfortran.dg/ptr-func-1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/ptr-func-2.f906
-rw-r--r--gcc/testsuite/gfortran.dg/ptr_func_assign_1.f0822
-rw-r--r--gcc/testsuite/gfortran.dg/ptr_func_assign_2.f0822
-rw-r--r--gcc/testsuite/gfortran.dg/ptr_func_assign_3.f086
-rw-r--r--gcc/testsuite/gfortran.dg/pure_byref_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pure_byref_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/pure_byref_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/quad_2.f9044
-rw-r--r--gcc/testsuite/gfortran.dg/quad_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/random_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/random_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/random_7.f902
-rw-r--r--gcc/testsuite/gfortran.dg/read_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/read_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/read_4.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/read_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/read_bad_advance.f902
-rw-r--r--gcc/testsuite/gfortran.dg/read_bang.f908
-rw-r--r--gcc/testsuite/gfortran.dg/read_bang4.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/read_comma.f8
-rw-r--r--gcc/testsuite/gfortran.dg/read_dir.f904
-rw-r--r--gcc/testsuite/gfortran.dg/read_empty_file.f2
-rw-r--r--gcc/testsuite/gfortran.dg/read_eof_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/read_eof_2.f906
-rw-r--r--gcc/testsuite/gfortran.dg/read_eof_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/read_eof_4.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/read_eof_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/read_eof_6.f2
-rw-r--r--gcc/testsuite/gfortran.dg/read_eof_7.f904
-rw-r--r--gcc/testsuite/gfortran.dg/read_eof_8.f906
-rw-r--r--gcc/testsuite/gfortran.dg/read_eof_all.f9028
-rw-r--r--gcc/testsuite/gfortran.dg/read_eor.f902
-rw-r--r--gcc/testsuite/gfortran.dg/read_float_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/read_float_2.f032
-rw-r--r--gcc/testsuite/gfortran.dg/read_float_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/read_float_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/read_infnan_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/read_list_eof_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/read_logical.f904
-rw-r--r--gcc/testsuite/gfortran.dg/read_many_1.f12
-rw-r--r--gcc/testsuite/gfortran.dg/read_no_eor.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/read_noadvance.f902
-rw-r--r--gcc/testsuite/gfortran.dg/read_repeat.f908
-rw-r--r--gcc/testsuite/gfortran.dg/read_repeat_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/read_size_noadvance.f908
-rw-r--r--gcc/testsuite/gfortran.dg/read_x_eof.f902
-rw-r--r--gcc/testsuite/gfortran.dg/read_x_past.f4
-rw-r--r--gcc/testsuite/gfortran.dg/readwrite_unf_direct_eor_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/real_const_1.f14
-rw-r--r--gcc/testsuite/gfortran.dg/real_const_2.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/real_const_3.f9026
-rw-r--r--gcc/testsuite/gfortran.dg/real_do_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/real_index_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/realloc_on_assign_1.f0356
-rw-r--r--gcc/testsuite/gfortran.dg/realloc_on_assign_10.f906
-rw-r--r--gcc/testsuite/gfortran.dg/realloc_on_assign_11.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/realloc_on_assign_12.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/realloc_on_assign_16.f904
-rw-r--r--gcc/testsuite/gfortran.dg/realloc_on_assign_17.f902
-rw-r--r--gcc/testsuite/gfortran.dg/realloc_on_assign_18.f904
-rw-r--r--gcc/testsuite/gfortran.dg/realloc_on_assign_2.f0348
-rw-r--r--gcc/testsuite/gfortran.dg/realloc_on_assign_23.f902
-rw-r--r--gcc/testsuite/gfortran.dg/realloc_on_assign_25.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/realloc_on_assign_26.f902
-rw-r--r--gcc/testsuite/gfortran.dg/realloc_on_assign_27.f086
-rw-r--r--gcc/testsuite/gfortran.dg/realloc_on_assign_28.f908
-rw-r--r--gcc/testsuite/gfortran.dg/realloc_on_assign_29.f902
-rw-r--r--gcc/testsuite/gfortran.dg/realloc_on_assign_3.f0342
-rw-r--r--gcc/testsuite/gfortran.dg/realloc_on_assign_4.f0316
-rw-r--r--gcc/testsuite/gfortran.dg/realloc_on_assign_5.f0310
-rw-r--r--gcc/testsuite/gfortran.dg/realloc_on_assign_7.f0318
-rw-r--r--gcc/testsuite/gfortran.dg/record_marker_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/record_marker_2.f18
-rw-r--r--gcc/testsuite/gfortran.dg/record_marker_3.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/recursive_alloc_comp_1.f0820
-rw-r--r--gcc/testsuite/gfortran.dg/recursive_alloc_comp_2.f086
-rw-r--r--gcc/testsuite/gfortran.dg/recursive_alloc_comp_3.f084
-rw-r--r--gcc/testsuite/gfortran.dg/recursive_alloc_comp_4.f0810
-rw-r--r--gcc/testsuite/gfortran.dg/recursive_check_7.f902
-rw-r--r--gcc/testsuite/gfortran.dg/recursive_reference_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/recursive_reference_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/recursive_stack.f902
-rw-r--r--gcc/testsuite/gfortran.dg/reduction.f904
-rw-r--r--gcc/testsuite/gfortran.dg/repack_arrays_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/repeat_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/repeat_2.f9076
-rw-r--r--gcc/testsuite/gfortran.dg/repeat_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/repeat_6.f902
-rw-r--r--gcc/testsuite/gfortran.dg/reshape-alloc.f906
-rw-r--r--gcc/testsuite/gfortran.dg/reshape-complex.f904
-rw-r--r--gcc/testsuite/gfortran.dg/reshape.f908
-rw-r--r--gcc/testsuite/gfortran.dg/reshape_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/reshape_7.f904
-rw-r--r--gcc/testsuite/gfortran.dg/reshape_empty_1.f034
-rw-r--r--gcc/testsuite/gfortran.dg/reshape_pad_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/reshape_rank7.f902
-rw-r--r--gcc/testsuite/gfortran.dg/reshape_transpose_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/reshape_zerosize_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/result_default_init_1.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/result_in_spec_1.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/result_in_spec_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/ret_array_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/ret_pointer_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/ret_pointer_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/rewind_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/round_1.f0314
-rw-r--r--gcc/testsuite/gfortran.dg/round_2.f0316
-rw-r--r--gcc/testsuite/gfortran.dg/round_3.f082
-rw-r--r--gcc/testsuite/gfortran.dg/round_4.f9040
-rw-r--r--gcc/testsuite/gfortran.dg/rrspacing_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/runtime_warning_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/same_type_as_2.f0312
-rw-r--r--gcc/testsuite/gfortran.dg/save_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/save_5.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/save_6.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/scalar_mask_1.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/scalar_mask_2.f9032
-rw-r--r--gcc/testsuite/gfortran.dg/scalarize_parameter_array_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/scale_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/scan_1.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/scan_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/secnds-1.f4
-rw-r--r--gcc/testsuite/gfortran.dg/secnds.f4
-rw-r--r--gcc/testsuite/gfortran.dg/select_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/select_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/select_3.f908
-rw-r--r--gcc/testsuite/gfortran.dg/select_5.f908
-rw-r--r--gcc/testsuite/gfortran.dg/select_char_1.f9052
-rw-r--r--gcc/testsuite/gfortran.dg/select_char_2.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/select_type_1.f032
-rw-r--r--gcc/testsuite/gfortran.dg/select_type_13.f032
-rw-r--r--gcc/testsuite/gfortran.dg/select_type_14.f032
-rw-r--r--gcc/testsuite/gfortran.dg/select_type_15.f036
-rw-r--r--gcc/testsuite/gfortran.dg/select_type_19.f032
-rw-r--r--gcc/testsuite/gfortran.dg/select_type_2.f036
-rw-r--r--gcc/testsuite/gfortran.dg/select_type_26.f0336
-rw-r--r--gcc/testsuite/gfortran.dg/select_type_27.f0336
-rw-r--r--gcc/testsuite/gfortran.dg/select_type_28.f034
-rw-r--r--gcc/testsuite/gfortran.dg/select_type_3.f038
-rw-r--r--gcc/testsuite/gfortran.dg/select_type_35.f034
-rw-r--r--gcc/testsuite/gfortran.dg/select_type_36.f036
-rw-r--r--gcc/testsuite/gfortran.dg/select_type_37.f0318
-rw-r--r--gcc/testsuite/gfortran.dg/select_type_39.f036
-rw-r--r--gcc/testsuite/gfortran.dg/select_type_4.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/select_type_5.f0310
-rw-r--r--gcc/testsuite/gfortran.dg/select_type_6.f036
-rw-r--r--gcc/testsuite/gfortran.dg/select_type_7.f034
-rw-r--r--gcc/testsuite/gfortran.dg/select_type_8.f0310
-rw-r--r--gcc/testsuite/gfortran.dg/selected_char_kind_1.f9026
-rw-r--r--gcc/testsuite/gfortran.dg/selected_char_kind_4.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/selected_kind_1.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/selected_real_kind_2.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/shape_2.f9028
-rw-r--r--gcc/testsuite/gfortran.dg/shape_4.f904
-rw-r--r--gcc/testsuite/gfortran.dg/shape_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/shape_7.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/shape_8.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/shape_9.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/shift-kind_2.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/shiftalr_1.F9020
-rw-r--r--gcc/testsuite/gfortran.dg/shiftalr_2.F9020
-rw-r--r--gcc/testsuite/gfortran.dg/simpleif_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/simplify_argN_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/simplify_cshift_1.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/simplify_cshift_4.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/simplify_eoshift_1.f9044
-rw-r--r--gcc/testsuite/gfortran.dg/simplify_modulo.f902
-rw-r--r--gcc/testsuite/gfortran.dg/single_char_string.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/size_dim.f902
-rw-r--r--gcc/testsuite/gfortran.dg/size_optional_dim_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/sizeof.f9026
-rw-r--r--gcc/testsuite/gfortran.dg/sizeof_4.f9028
-rw-r--r--gcc/testsuite/gfortran.dg/slash_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/sms-1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/sms-2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/spec_expr_7.f906
-rw-r--r--gcc/testsuite/gfortran.dg/specifics_1.f9030
-rw-r--r--gcc/testsuite/gfortran.dg/spellcheck-procedure_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/spellcheck-procedure_2.f906
-rw-r--r--gcc/testsuite/gfortran.dg/spread_init_expr.f0314
-rw-r--r--gcc/testsuite/gfortran.dg/spread_scalar_source.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/spread_shape_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/stat_1.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/stat_2.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/statement_function_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/stfunc_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/stfunc_4.f904
-rw-r--r--gcc/testsuite/gfortran.dg/stfunc_6.f904
-rw-r--r--gcc/testsuite/gfortran.dg/stop_shouldfail.f905
-rw-r--r--gcc/testsuite/gfortran.dg/storage_size_1.f0812
-rw-r--r--gcc/testsuite/gfortran.dg/storage_size_3.f088
-rw-r--r--gcc/testsuite/gfortran.dg/storage_size_4.f904
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_10.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_11.f908
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_12.f902
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_13.f902
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_14.f908
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_15.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_16.f906
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_17.f904
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_6.f904
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_7.f902
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_8.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/streamio_9.f904
-rw-r--r--gcc/testsuite/gfortran.dg/string_0xfe_0xff_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/string_4.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/string_array_constructor_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/string_assign_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/string_compare_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/string_compare_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/string_compare_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/string_ctor_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/string_length_1.f9030
-rw-r--r--gcc/testsuite/gfortran.dg/string_length_2.f9036
-rw-r--r--gcc/testsuite/gfortran.dg/string_length_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/string_length_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/string_null_compare_1.f2
-rw-r--r--gcc/testsuite/gfortran.dg/string_pad_trunc.f908
-rw-r--r--gcc/testsuite/gfortran.dg/structure_constructor_1.f038
-rw-r--r--gcc/testsuite/gfortran.dg/structure_constructor_11.f902
-rw-r--r--gcc/testsuite/gfortran.dg/structure_constructor_13.f032
-rw-r--r--gcc/testsuite/gfortran.dg/structure_constructor_14.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/structure_constructor_2.f034
-rw-r--r--gcc/testsuite/gfortran.dg/structure_constructor_5.f036
-rw-r--r--gcc/testsuite/gfortran.dg/submodule_1.f0824
-rw-r--r--gcc/testsuite/gfortran.dg/submodule_11.f088
-rw-r--r--gcc/testsuite/gfortran.dg/submodule_14.f084
-rw-r--r--gcc/testsuite/gfortran.dg/submodule_15.f082
-rw-r--r--gcc/testsuite/gfortran.dg/submodule_17.f082
-rw-r--r--gcc/testsuite/gfortran.dg/submodule_18.f084
-rw-r--r--gcc/testsuite/gfortran.dg/submodule_19.f084
-rw-r--r--gcc/testsuite/gfortran.dg/submodule_2.f088
-rw-r--r--gcc/testsuite/gfortran.dg/submodule_27.f082
-rw-r--r--gcc/testsuite/gfortran.dg/submodule_28.f082
-rw-r--r--gcc/testsuite/gfortran.dg/submodule_29.f088
-rw-r--r--gcc/testsuite/gfortran.dg/submodule_30.f082
-rw-r--r--gcc/testsuite/gfortran.dg/submodule_6.f088
-rw-r--r--gcc/testsuite/gfortran.dg/submodule_7.f0810
-rw-r--r--gcc/testsuite/gfortran.dg/submodule_8.f084
-rw-r--r--gcc/testsuite/gfortran.dg/subnormal_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/subref_array_pointer_1.f908
-rw-r--r--gcc/testsuite/gfortran.dg/subref_array_pointer_2.f9036
-rw-r--r--gcc/testsuite/gfortran.dg/subref_array_pointer_4.f904
-rw-r--r--gcc/testsuite/gfortran.dg/substr_2.f14
-rw-r--r--gcc/testsuite/gfortran.dg/substr_3.f2
-rw-r--r--gcc/testsuite/gfortran.dg/substr_4.f8
-rw-r--r--gcc/testsuite/gfortran.dg/substr_5.f9038
-rw-r--r--gcc/testsuite/gfortran.dg/substr_6.f904
-rw-r--r--gcc/testsuite/gfortran.dg/substr_alloc_string_comp_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/sum_init_expr.f0312
-rw-r--r--gcc/testsuite/gfortran.dg/sum_zero_array_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/system_clock_3.f0812
-rw-r--r--gcc/testsuite/gfortran.dg/t_editing.f2
-rw-r--r--gcc/testsuite/gfortran.dg/team_change_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/team_end_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/team_number_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/temporary_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/test_com_block.f904
-rw-r--r--gcc/testsuite/gfortran.dg/test_only_clause.f902
-rw-r--r--gcc/testsuite/gfortran.dg/tiny_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/tiny_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/tl_editing.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/transfer_array_intrinsic_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/transfer_array_intrinsic_2.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/transfer_array_intrinsic_3.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/transfer_array_intrinsic_4.f904
-rw-r--r--gcc/testsuite/gfortran.dg/transfer_assumed_size_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/transfer_class_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/transfer_intrinsic_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/transfer_intrinsic_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/transfer_intrinsic_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/transfer_resolve_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/transfer_simplify_1.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/transfer_simplify_10.f902
-rw-r--r--gcc/testsuite/gfortran.dg/transfer_simplify_11.f902
-rw-r--r--gcc/testsuite/gfortran.dg/transfer_simplify_2.f9026
-rw-r--r--gcc/testsuite/gfortran.dg/transfer_simplify_3.f9020
-rw-r--r--gcc/testsuite/gfortran.dg/transfer_simplify_4.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/transfer_simplify_8.f904
-rw-r--r--gcc/testsuite/gfortran.dg/transfer_simplify_9.f9028
-rw-r--r--gcc/testsuite/gfortran.dg/transpose_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/transpose_3.f032
-rw-r--r--gcc/testsuite/gfortran.dg/transpose_4.f908
-rw-r--r--gcc/testsuite/gfortran.dg/transpose_conjg_1.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/transpose_intrinsic_func_call_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/transpose_optimization_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/trim_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/trim_optimize_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/trim_optimize_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/trim_optimize_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/trim_optimize_4.f904
-rw-r--r--gcc/testsuite/gfortran.dg/trim_optimize_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/trim_optimize_6.f904
-rw-r--r--gcc/testsuite/gfortran.dg/trim_optimize_7.f906
-rw-r--r--gcc/testsuite/gfortran.dg/trim_optimize_8.f904
-rw-r--r--gcc/testsuite/gfortran.dg/type_to_class_1.f0316
-rw-r--r--gcc/testsuite/gfortran.dg/type_to_class_2.f034
-rw-r--r--gcc/testsuite/gfortran.dg/type_to_class_3.f034
-rw-r--r--gcc/testsuite/gfortran.dg/type_to_class_4.f032
-rw-r--r--gcc/testsuite/gfortran.dg/type_to_class_5.f032
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_assignment_5.f032
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_assignment_6.f036
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_assignment_7.f904
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_call_1.f036
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_call_13.f032
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_call_18.f032
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_call_19.f038
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_call_2.f038
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_call_20.f036
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_call_3.f034
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_generic_5.f032
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_generic_6.f038
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_generic_9.f034
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_operator_12.f034
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_operator_13.f034
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_operator_15.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_operator_20.f906
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_operator_3.f0314
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_operator_6.f032
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_operator_7.f032
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_operator_8.f032
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_operator_9.f0326
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_proc_19.f902
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_proc_20.f9018
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_proc_23.f904
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_proc_27.f0310
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_proc_35.f906
-rw-r--r--gcc/testsuite/gfortran.dg/typebound_proc_36.f902
-rw-r--r--gcc/testsuite/gfortran.dg/unf_io_convert_1.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/unf_io_convert_2.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/unf_io_convert_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/unf_io_convert_4.f904
-rw-r--r--gcc/testsuite/gfortran.dg/unf_read_corrupted_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/unf_read_corrupted_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/unf_short_record_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/unformatted_recl_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/unformatted_subrecord_1.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/unit_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/unlimited_fmt_1.f082
-rw-r--r--gcc/testsuite/gfortran.dg/unlimited_polymorphic_1.f0392
-rw-r--r--gcc/testsuite/gfortran.dg/unlimited_polymorphic_13.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/unlimited_polymorphic_14.f904
-rw-r--r--gcc/testsuite/gfortran.dg/unlimited_polymorphic_17.f904
-rw-r--r--gcc/testsuite/gfortran.dg/unlimited_polymorphic_18.f904
-rw-r--r--gcc/testsuite/gfortran.dg/unlimited_polymorphic_20.f9028
-rw-r--r--gcc/testsuite/gfortran.dg/unlimited_polymorphic_21.f906
-rw-r--r--gcc/testsuite/gfortran.dg/unlimited_polymorphic_22.f90108
-rw-r--r--gcc/testsuite/gfortran.dg/unlimited_polymorphic_23.f902
-rw-r--r--gcc/testsuite/gfortran.dg/unlimited_polymorphic_24.f0310
-rw-r--r--gcc/testsuite/gfortran.dg/unlimited_polymorphic_25.f904
-rw-r--r--gcc/testsuite/gfortran.dg/unlimited_polymorphic_26.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/unlimited_polymorphic_3.f036
-rw-r--r--gcc/testsuite/gfortran.dg/unlimited_polymorphic_5.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/unlimited_polymorphic_6.f904
-rw-r--r--gcc/testsuite/gfortran.dg/unpack_init_expr.f034
-rw-r--r--gcc/testsuite/gfortran.dg/use_10.f902
-rw-r--r--gcc/testsuite/gfortran.dg/use_11.f902
-rw-r--r--gcc/testsuite/gfortran.dg/use_13.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/use_24.f904
-rw-r--r--gcc/testsuite/gfortran.dg/use_27.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/use_5.f906
-rw-r--r--gcc/testsuite/gfortran.dg/use_allocated_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/use_only_1.f9016
-rw-r--r--gcc/testsuite/gfortran.dg/use_only_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/use_rename_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/use_rename_4.f902
-rw-r--r--gcc/testsuite/gfortran.dg/used_dummy_types_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/used_interface_ref.f902
-rw-r--r--gcc/testsuite/gfortran.dg/used_types_5.f904
-rw-r--r--gcc/testsuite/gfortran.dg/utf8_1.f0310
-rw-r--r--gcc/testsuite/gfortran.dg/utf8_2.f032
-rw-r--r--gcc/testsuite/gfortran.dg/value_1.f9032
-rw-r--r--gcc/testsuite/gfortran.dg/value_2.f906
-rw-r--r--gcc/testsuite/gfortran.dg/value_4.f906
-rw-r--r--gcc/testsuite/gfortran.dg/value_6.f032
-rw-r--r--gcc/testsuite/gfortran.dg/value_7.f034
-rw-r--r--gcc/testsuite/gfortran.dg/value_test.f902
-rw-r--r--gcc/testsuite/gfortran.dg/vect/fast-math-pr33299.f902
-rw-r--r--gcc/testsuite/gfortran.dg/vect/no-fre-no-copy-prop-O3-pr51704.f9010
-rw-r--r--gcc/testsuite/gfortran.dg/vect/pr60510.f2
-rw-r--r--gcc/testsuite/gfortran.dg/vect/pr69882.f904
-rw-r--r--gcc/testsuite/gfortran.dg/vect/pr69980.f902
-rw-r--r--gcc/testsuite/gfortran.dg/vect/vect-5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/vect/vect-alias-check-1.F904
-rw-r--r--gcc/testsuite/gfortran.dg/vector_subscript_1.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/vector_subscript_2.f904
-rw-r--r--gcc/testsuite/gfortran.dg/vector_subscript_3.f9014
-rw-r--r--gcc/testsuite/gfortran.dg/vector_subscript_5.f902
-rw-r--r--gcc/testsuite/gfortran.dg/verify_2.f908
-rw-r--r--gcc/testsuite/gfortran.dg/volatile10.f9024
-rw-r--r--gcc/testsuite/gfortran.dg/where_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/where_operator_assign_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/where_operator_assign_2.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/where_operator_assign_3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/whole_file_13.f904
-rw-r--r--gcc/testsuite/gfortran.dg/whole_file_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/widechar_2.f9026
-rw-r--r--gcc/testsuite/gfortran.dg/widechar_4.f90228
-rw-r--r--gcc/testsuite/gfortran.dg/widechar_5.f9022
-rw-r--r--gcc/testsuite/gfortran.dg/widechar_6.f9060
-rw-r--r--gcc/testsuite/gfortran.dg/widechar_8.f906
-rw-r--r--gcc/testsuite/gfortran.dg/widechar_IO_1.f906
-rw-r--r--gcc/testsuite/gfortran.dg/widechar_IO_2.f906
-rw-r--r--gcc/testsuite/gfortran.dg/widechar_IO_3.f904
-rw-r--r--gcc/testsuite/gfortran.dg/widechar_IO_4.f908
-rw-r--r--gcc/testsuite/gfortran.dg/widechar_compare_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/widechar_intrinsics_10.f90136
-rw-r--r--gcc/testsuite/gfortran.dg/widechar_intrinsics_4.f90108
-rw-r--r--gcc/testsuite/gfortran.dg/widechar_intrinsics_5.f9078
-rw-r--r--gcc/testsuite/gfortran.dg/widechar_intrinsics_6.f90108
-rw-r--r--gcc/testsuite/gfortran.dg/widechar_intrinsics_7.f9026
-rw-r--r--gcc/testsuite/gfortran.dg/widechar_intrinsics_8.f9072
-rw-r--r--gcc/testsuite/gfortran.dg/widechar_intrinsics_9.f9012
-rw-r--r--gcc/testsuite/gfortran.dg/widechar_select_1.f904
-rw-r--r--gcc/testsuite/gfortran.dg/winapi.f902
-rw-r--r--gcc/testsuite/gfortran.dg/write_0_pe_format.f904
-rw-r--r--gcc/testsuite/gfortran.dg/write_back.f2
-rw-r--r--gcc/testsuite/gfortran.dg/write_check3.f902
-rw-r--r--gcc/testsuite/gfortran.dg/write_direct_eor.f902
-rw-r--r--gcc/testsuite/gfortran.dg/write_padding.f902
-rw-r--r--gcc/testsuite/gfortran.dg/write_recursive.f904
-rw-r--r--gcc/testsuite/gfortran.dg/write_rewind_1.f4
-rw-r--r--gcc/testsuite/gfortran.dg/write_rewind_2.f10
-rw-r--r--gcc/testsuite/gfortran.dg/write_zero_array.f904
-rw-r--r--gcc/testsuite/gfortran.dg/x_slash_1.f26
-rw-r--r--gcc/testsuite/gfortran.dg/x_slash_2.f2
-rw-r--r--gcc/testsuite/gfortran.dg/zero_array_components_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/zero_length_1.f902
-rw-r--r--gcc/testsuite/gfortran.dg/zero_length_2.f902
-rw-r--r--gcc/testsuite/gfortran.dg/zero_sized_1.f90140
-rw-r--r--gcc/testsuite/gfortran.dg/zero_sized_3.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/compile/nested.f9012
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/compile/parameter_1.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/a_edit_1.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/adjustr.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/allocate.f908
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/alternate_return.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/args.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/arithmeticif.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/arrayarg.f9012
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/arrayarg2.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/arraysave.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/assumed_size.f9012
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/backspace.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/bounds.f9012
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/character_passing.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/character_select_1.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/cmplx.f9024
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/common.f9014
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/common_2.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/common_init_1.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/common_size.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/constructor.f9012
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/contained.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/contained2.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/contained_3.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/csqrt_1.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/data.f9056
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/data_2.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/data_3.f9010
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/data_4.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/dep_fails.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/der_init.f9012
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/der_init_2.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/der_init_3.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/der_init_4.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/der_init_5.f908
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/der_io.f908
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/der_point.f9014
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/der_type.f9012
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/direct_io.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/elemental.f9010
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/empty_format.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/emptyif.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/entry_1.f9036
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/entry_10.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/entry_11.f908
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/entry_2.f9022
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/entry_3.f9016
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/entry_4.f9024
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/entry_5.f9022
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/entry_6.f9024
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/entry_7.f9024
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/entry_8.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/entry_9.f908
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/enum_1.f9016
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/enum_2.f9018
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/enum_3.f9048
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/enum_4.f908
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/equiv_1.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/equiv_2.f9016
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/equiv_3.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/equiv_4.f9016
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/equiv_init_1.f9034
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/f2_edit_1.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/forall.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/forall_1.f9014
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/forall_2.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/forall_3.f908
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/forall_4.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/forall_5.f9010
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/forall_6.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/forall_7.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/function_module_1.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/getarg_1.f9012
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/hollerith.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/in-pack.f9024
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/initialization_1.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/initializer.f9010
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/inquire_1.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/inquire_2.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/inquire_3.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/inquire_4.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/inquire_5.f908
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/integer_select.f9024
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/integer_select_1.f9010
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/internal_write.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_abs.f9014
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_achar.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_aint_anint.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_anyall.f9032
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_associated.f9068
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_associated_2.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_bitops.f9038
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_count.f9020
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_cshift.f9012
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dim.f9012
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dotprod.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dprod.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dummy.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_eoshift.f9036
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_fraction_exponent.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_index.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_integer.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_leadz.f9058
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_len.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_matmul.f9010
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_merge.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_minmax.f9032
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc.f90106
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc_2.f908
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc_3.f9016
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc_4.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmval.f9020
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mod_ulo.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mvbits.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_nearest.f9014
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_pack.f9012
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_present.f9016
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_product.f9020
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_rrspacing.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_scale.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_set_exponent.f9030
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_shape.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_si_kind.f9010
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_sign.f9016
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_size.f9012
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_spacing.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_spread.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_sr_kind.f9030
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_sum.f9032
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_trailz.f9058
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_transpose.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_trim.f908
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_unpack.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/iolength_1.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/iolength_2.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/iolength_3.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/list_read_1.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/logical_select_1.f9014
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/mainsub.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/math.f908
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/module_init_1.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/module_interface_2.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/nan_inf_fmt.f9048
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/nestcons.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/nullarg.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/optstring_1.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/parameter_1.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/parameter_2.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/partparm.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/plusconst_1.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/power.f9052
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/pr19269-1.f9014
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/pr23373-1.f908
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/pr23373-2.f908
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/pr32140.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/pr40021.f2
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/pr43390.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/pr54767.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/pr57396.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/procarg.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/ptr.f908
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/random_1.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/random_2.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/random_init.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/read_eof.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/read_null_string.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/retarray.f9012
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/retarray_2.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/save_1.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/save_2.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/scalarize.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/scalarize2.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/scalarize3.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/select_1.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/seq_io.f908
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/slash_edit.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/spec_abs.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/specifics.f9030
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/st_function.f9018
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/st_function_1.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/st_function_2.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/stack_varsize.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/straret.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/strarray_1.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/strarray_2.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/strarray_3.f9010
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/strarray_4.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/strcmp.f9016
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/strcommon_1.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/string.f908
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/strlen.f9012
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/strret.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/t_edit.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/test_slice.f9010
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/transfer1.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/transfer2.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/unopened_unit_1.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/userop.f9014
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/where17.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/where18.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/where19.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/where20.f9012
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/where21.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/where_1.f904
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/where_10.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/where_11.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/where_14.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/where_15.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/where_16.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/where_2.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/where_3.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/where_4.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/where_5.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/where_6.f902
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/where_7.f9016
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/where_8.f908
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/write_a_1.f906
-rw-r--r--gcc/testsuite/gfortran.fortran-torture/execute/write_logical.f908
-rw-r--r--gcc/testsuite/gnat.dg/array11.adb10
-rw-r--r--gcc/testsuite/gnat.dg/disp1.adb (renamed from gcc/testsuite/gnat.dg/dispatch1.adb)5
-rw-r--r--gcc/testsuite/gnat.dg/disp1_pkg.ads (renamed from gcc/testsuite/gnat.dg/dispatch1_p.ads)6
-rw-r--r--gcc/testsuite/gnat.dg/disp2.adb (renamed from gcc/testsuite/gnat.dg/dispatch2.adb)5
-rw-r--r--gcc/testsuite/gnat.dg/disp2_pkg.adb (renamed from gcc/testsuite/gnat.dg/dispatch2_p.adb)7
-rw-r--r--gcc/testsuite/gnat.dg/disp2_pkg.ads (renamed from gcc/testsuite/gnat.dg/dispatch2_p.ads)9
-rw-r--r--gcc/testsuite/gnat.dg/generic_disp.adb (renamed from gcc/testsuite/gnat.dg/generic_dispatch.adb)7
-rw-r--r--gcc/testsuite/gnat.dg/generic_disp_pkg.adb (renamed from gcc/testsuite/gnat.dg/generic_dispatch_p.adb)8
-rw-r--r--gcc/testsuite/gnat.dg/generic_disp_pkg.ads (renamed from gcc/testsuite/gnat.dg/generic_dispatch_p.ads)5
-rw-r--r--gcc/testsuite/gnat.dg/null_pointer_deref1.adb2
-rw-r--r--gcc/testsuite/gnat.dg/null_pointer_deref2.adb2
-rw-r--r--gcc/testsuite/gnat.dg/object_overflow1.adb4
-rw-r--r--gcc/testsuite/gnat.dg/object_overflow2.adb4
-rw-r--r--gcc/testsuite/gnat.dg/object_overflow3.adb4
-rw-r--r--gcc/testsuite/gnat.dg/object_overflow4.adb8
-rw-r--r--gcc/testsuite/gnat.dg/object_overflow5.adb8
-rw-r--r--gcc/testsuite/go.test/go-test.exp3
-rw-r--r--gcc/tree-data-ref.c11
-rw-r--r--gcc/tree-ssa-strlen.c75
-rw-r--r--gcc/tree-ssa-strlen.h26
-rw-r--r--gcc/tree-ssa.c14
-rw-r--r--gcc/tree-vect-patterns.c3
-rw-r--r--gcc/var-tracking.c20
-rw-r--r--gcc/vec.h4
-rw-r--r--libatomic/ChangeLog5
-rwxr-xr-xlibatomic/configure17
-rw-r--r--libbacktrace/ChangeLog20
-rwxr-xr-xlibbacktrace/configure17
-rw-r--r--libbacktrace/elf.c65
-rw-r--r--libcpp/ChangeLog20
-rw-r--r--libcpp/line-map.c5
-rw-r--r--libcpp/macro.c153
-rw-r--r--libdecnumber/ChangeLog6
-rw-r--r--libdecnumber/decNumber.c4
-rw-r--r--libgcc/ChangeLog23
-rw-r--r--libgcc/config/i386/shadow-stack-unwind.h24
-rw-r--r--libgcc/config/xtensa/ieee754-df.S1
-rw-r--r--libgcc/config/xtensa/ieee754-sf.S1
-rw-r--r--libgcc/configure17
-rw-r--r--libgfortran/ChangeLog106
-rw-r--r--libgfortran/caf/libcaf.h45
-rw-r--r--libgfortran/caf/mpi.c43
-rw-r--r--libgfortran/caf/single.c271
-rwxr-xr-xlibgfortran/configure21
-rw-r--r--libgfortran/io/transfer.c4
-rw-r--r--libgfortran/libgfortran.h2
-rw-r--r--libgfortran/runtime/pause.c12
-rw-r--r--libgfortran/runtime/stop.c53
-rwxr-xr-xlibgo/configure12
-rw-r--r--libgo/configure.ac12
-rw-r--r--libgo/go/cmd/cgo/main.go2
-rw-r--r--libgo/go/go/build/syslist.go2
-rw-r--r--libgo/go/internal/syscall/unix/getrandom_linux_generic.go2
-rw-r--r--libgo/go/runtime/chan.go10
-rw-r--r--libgo/go/runtime/hash64.go2
-rw-r--r--libgo/go/runtime/hashmap.go25
-rw-r--r--libgo/go/runtime/lfstack_64bit.go2
-rw-r--r--libgo/go/runtime/malloc.go1
-rw-r--r--libgo/go/runtime/proc.go12
-rw-r--r--libgo/go/runtime/select.go7
-rw-r--r--libgo/go/runtime/unaligned1.go2
-rw-r--r--libgo/go/syscall/endian_little.go2
-rw-r--r--libgo/go/syscall/libcall_linux_ustat.go2
-rwxr-xr-xlibgo/goarch.sh4
-rwxr-xr-xlibgo/match.sh4
-rw-r--r--libgo/misc/cgo/testcshared/src/libgo2/dup2.go2
-rw-r--r--libgo/misc/cgo/testcshared/src/libgo2/dup3.go2
-rw-r--r--libgo/runtime/go-caller.c14
-rw-r--r--libgo/runtime/go-callers.c19
-rw-r--r--libgo/runtime/runtime.h3
-rwxr-xr-xlibgo/testsuite/gotest4
-rw-r--r--libgomp/ChangeLog17
-rwxr-xr-xlibgomp/configure19
-rw-r--r--libgomp/testsuite/libgomp.fortran/pr84418-1.f9026
-rw-r--r--libgomp/testsuite/libgomp.fortran/pr84418-2.f9035
-rw-r--r--libgomp/testsuite/libgomp.fortran/threadprivate4.f901
-rw-r--r--libitm/ChangeLog5
-rw-r--r--libitm/configure17
-rw-r--r--libmpx/ChangeLog7
-rw-r--r--libmpx/configure17
-rw-r--r--libobjc/ChangeLog5
-rwxr-xr-xlibobjc/configure21
-rw-r--r--libquadmath/ChangeLog5
-rwxr-xr-xlibquadmath/configure17
-rw-r--r--libsanitizer/ChangeLog5
-rwxr-xr-xlibsanitizer/configure17
-rw-r--r--libssp/ChangeLog5
-rwxr-xr-xlibssp/configure21
-rw-r--r--libstdc++-v3/ChangeLog19
-rwxr-xr-xlibstdc++-v3/configure53
-rw-r--r--libstdc++-v3/configure.ac6
-rw-r--r--libstdc++-v3/include/Makefile.am5
-rw-r--r--libstdc++-v3/include/Makefile.in3
-rw-r--r--libstdc++-v3/include/ext/aligned_buffer.h5
-rw-r--r--libvtv/ChangeLog5
-rwxr-xr-xlibvtv/configure17
2840 files changed, 29551 insertions, 21103 deletions
diff --git a/config/ChangeLog b/config/ChangeLog
index fd7f82fc779..746a0a01ba0 100644
--- a/config/ChangeLog
+++ b/config/ChangeLog
@@ -1,3 +1,8 @@
+2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
+
+ PR target/84148
+ * cet.m4: Check if target support multi-byte NOPS (SSE).
+
2018-02-06 Eric Botcazou <ebotcazou@adacore.com>
* gcc-plugin.m4 (GCC_ENABLE_PLUGINS): Remove -q option passed to grep.
diff --git a/config/cet.m4 b/config/cet.m4
index 715f4bded19..23dd1f7d27d 100644
--- a/config/cet.m4
+++ b/config/cet.m4
@@ -5,15 +5,24 @@ dnl
AC_DEFUN([GCC_CET_FLAGS],[dnl
GCC_ENABLE(cet, default, ,[enable Intel CET in target libraries],
permit yes|no|default)
+AC_MSG_CHECKING([for CET support])
+
case "$host" in
i[[34567]]86-*-linux* | x86_64-*-linux*)
case "$enable_cet" in
default)
- # Check if assembler supports CET.
+ # Check if target supports multi-byte NOPs
+ # and if assembler supports CET insn.
AC_COMPILE_IFELSE(
[AC_LANG_PROGRAM(
[],
- [asm ("setssbsy");])],
+ [
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
+asm ("setssbsy");
+#endif
+ ])],
[enable_cet=yes],
[enable_cet=no])
;;
@@ -34,5 +43,8 @@ case "$host" in
esac
if test x$enable_cet = xyes; then
$1="-fcf-protection -mcet"
+ AC_MSG_RESULT([yes])
+else
+ AC_MSG_RESULT([no])
fi
])
diff --git a/contrib/ChangeLog b/contrib/ChangeLog
index cf6e03e4e1d..627cafd75e4 100644
--- a/contrib/ChangeLog
+++ b/contrib/ChangeLog
@@ -1,3 +1,9 @@
+2018-02-19 Yury Gribov <tetra2005@gmail.com>
+
+ * compare_tests: Use TMPDIR when set.
+ * dg-cmp-results.sh: Ditto.
+ * warn_summary: Ditto.
+
2018-01-29 Jonathan Wakely <jwakely@redhat.com>
* download_prerequisites: Use shasum for FreeBSD and DragonFly.
diff --git a/contrib/compare_tests b/contrib/compare_tests
index d16e7e9737e..51a3719ff6a 100755
--- a/contrib/compare_tests
+++ b/contrib/compare_tests
@@ -36,17 +36,18 @@ export LC_ALL=C
tool=gxx
-tmp1=/tmp/$tool-testing.$$a
-tmp2=/tmp/$tool-testing.$$b
-now_s=/tmp/$tool-testing.$$d
-before_s=/tmp/$tool-testing.$$e
-lst1=/tmp/$tool-lst1.$$
-lst2=/tmp/$tool-lst2.$$
-lst3=/tmp/$tool-lst3.$$
-lst4=/tmp/$tool-lst4.$$
-lst5=/tmp/$tool-lst5.$$
-sum1=/tmp/$tool-sum1.$$
-sum2=/tmp/$tool-sum2.$$
+TMPDIR=${TMPDIR:-/tmp}
+tmp1=$TMPDIR/$tool-testing.$$a
+tmp2=$TMPDIR/$tool-testing.$$b
+now_s=$TMPDIR/$tool-testing.$$d
+before_s=$TMPDIR/$tool-testing.$$e
+lst1=$TMPDIR/$tool-lst1.$$
+lst2=$TMPDIR/$tool-lst2.$$
+lst3=$TMPDIR/$tool-lst3.$$
+lst4=$TMPDIR/$tool-lst4.$$
+lst5=$TMPDIR/$tool-lst5.$$
+sum1=$TMPDIR/$tool-sum1.$$
+sum2=$TMPDIR/$tool-sum2.$$
tmps="$tmp1 $tmp2 $now_s $before_s $lst1 $lst2 $lst3 $lst4 $lst5 $sum1 $sum2"
[ "$1" = "-strict" ] && strict=$1 && shift
diff --git a/contrib/dg-cmp-results.sh b/contrib/dg-cmp-results.sh
index 5f2fed5ec3f..821d557a168 100755
--- a/contrib/dg-cmp-results.sh
+++ b/contrib/dg-cmp-results.sh
@@ -63,6 +63,7 @@ OFILE="$2"
OBASE=`basename "$2"`
NFILE="$3"
NBASE=`basename "$3"`
+TMPDIR=${TMPDIR:-/tmp}
echo "dg-cmp-results.sh: Verbosity is ${verbose}, Variant is \"${VARIANT}\""
echo
@@ -97,7 +98,7 @@ sed $E -e "/$header/,/^[[:space:]]+===.*Summary ===/!d" \
-e 's/^/O:/' \
$OFILE |
sort -s -t : -k 3b - \
- >/tmp/o$$-$OBASE
+ >$TMPDIR/o$$-$OBASE
# Create a temporary file from the new file's interesting section.
sed $E -e "/$header/,/^[[:space:]]+===.*Summary ===/!d" \
@@ -107,7 +108,7 @@ sed $E -e "/$header/,/^[[:space:]]+===.*Summary ===/!d" \
-e 's/^/N:/' \
$NFILE |
sort -s -t : -k 3b - \
- >/tmp/n$$-$NBASE
+ >$TMPDIR/n$$-$NBASE
# Merge the two files, then compare adjacent lines.
# Comparison is complicated by tests that may be run multiple times.
@@ -200,10 +201,10 @@ END {
while (old = peek()) compare("", "")
}
EOF
-sort -m -s -t : -k 3b /tmp/o$$-$OBASE /tmp/n$$-$NBASE |
+sort -m -s -t : -k 3b $TMPDIR/o$$-$OBASE $TMPDIR/n$$-$NBASE |
awk -v verbose=$verbose -f compare-$$.awk /dev/stdin
# Delete the temporary files.
-rm -f compare-$$.awk /tmp/o$$-$OBASE /tmp/n$$-$NBASE
+rm -f compare-$$.awk $TMPDIR/o$$-$OBASE $TMPDIR/n$$-$NBASE
exit 0
diff --git a/contrib/warn_summary b/contrib/warn_summary
index ccdb33a1117..d4c8b6cdb19 100755
--- a/contrib/warn_summary
+++ b/contrib/warn_summary
@@ -138,7 +138,7 @@ s%^[^ ]*/\(lib[a-z23+-]*/\)%\1%;'
usage="usage: `basename $0` [-llf] [-s stage] [-nosub|-ch|-cp|-f|-fortran|-ada|-intl|-fixinc] [-pass|-wpass] [file(s)]"
stageN=3
-tmpfile=/tmp/tmp-warn.$$
+tmpfile=${TMPDIR:-/tmp}/tmp-warn.$$
# Remove $tmpfile on exit and various signals.
trap "rm -f $tmpfile" 0
diff --git a/fixincludes/ChangeLog b/fixincludes/ChangeLog
index 1f29148e8e3..808b64aeb76 100644
--- a/fixincludes/ChangeLog
+++ b/fixincludes/ChangeLog
@@ -1,3 +1,11 @@
+2018-02-22 David Edelsohn <dje.gcc@gmail.com>
+
+ * inclhack.def (aix_stdlib_vec_malloc): New.
+ (aix_stdlib_vec_calloc): New.
+ * fixincl.x: Regenerate.
+ * tests/base/stdlib.h [AIX_STDLIB_VEC_MALLOC]: New test.
+ [AIX_STDLIB_VEC_CALLOC]: New test.
+
2017-10-13 Mike Frysinger <vapier@chromium.org>
* fixinc.in (dirname): Change sed from 's|[^/]*/||' to
diff --git a/fixincludes/fixincl.x b/fixincludes/fixincl.x
index 8d8be9c4c7d..9a2dc8b417f 100644
--- a/fixincludes/fixincl.x
+++ b/fixincludes/fixincl.x
@@ -2,11 +2,11 @@
*
* DO NOT EDIT THIS FILE (fixincl.x)
*
- * It has been AutoGen-ed June 8, 2017 at 10:50:04 AM by AutoGen 5.18.4
+ * It has been AutoGen-ed February 22, 2018 at 03:46:51 PM by AutoGen 5.18
* From the definitions inclhack.def
* and the template file fixincl
*/
-/* DO NOT SVN-MERGE THIS FILE, EITHER Thu Jun 8 10:50:04 CEST 2017
+/* DO NOT SVN-MERGE THIS FILE, EITHER Thu Feb 22 15:46:51 UTC 2018
*
* You must regenerate it. Use the ./genfixes script.
*
@@ -15,7 +15,7 @@
* certain ANSI-incompatible system header files which are fixed to work
* correctly with ANSI C and placed in a directory that GNU C will search.
*
- * This file contains 247 fixup descriptions.
+ * This file contains 249 fixup descriptions.
*
* See README for more information.
*
@@ -1581,6 +1581,80 @@ static const char* apzAix_Stdlib_VallocPatch[] = {
/* * * * * * * * * * * * * * * * * * * * * * * * * *
*
+ * Description of Aix_Stdlib_Vec_Malloc fix
+ */
+tSCC zAix_Stdlib_Vec_MallocName[] =
+ "aix_stdlib_vec_malloc";
+
+/*
+ * File name selection pattern
+ */
+tSCC zAix_Stdlib_Vec_MallocList[] =
+ "stdlib.h\0";
+/*
+ * Machine/OS name selection pattern
+ */
+tSCC* apzAix_Stdlib_Vec_MallocMachs[] = {
+ "*-*-aix*",
+ (const char*)NULL };
+
+/*
+ * content selection pattern - do fix if pattern found
+ */
+tSCC zAix_Stdlib_Vec_MallocSelect0[] =
+ "#define[ \t]+malloc[ \t]+vec_malloc";
+
+#define AIX_STDLIB_VEC_MALLOC_TEST_CT 1
+static tTestDesc aAix_Stdlib_Vec_MallocTests[] = {
+ { TT_EGREP, zAix_Stdlib_Vec_MallocSelect0, (regex_t*)NULL }, };
+
+/*
+ * Fix Command Arguments for Aix_Stdlib_Vec_Malloc
+ */
+static const char* apzAix_Stdlib_Vec_MallocPatch[] = {
+ "format",
+ "extern void *malloc(size_t) __asm__(\"vec_malloc\");",
+ (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
+ * Description of Aix_Stdlib_Vec_Calloc fix
+ */
+tSCC zAix_Stdlib_Vec_CallocName[] =
+ "aix_stdlib_vec_calloc";
+
+/*
+ * File name selection pattern
+ */
+tSCC zAix_Stdlib_Vec_CallocList[] =
+ "stdlib.h\0";
+/*
+ * Machine/OS name selection pattern
+ */
+tSCC* apzAix_Stdlib_Vec_CallocMachs[] = {
+ "*-*-aix*",
+ (const char*)NULL };
+
+/*
+ * content selection pattern - do fix if pattern found
+ */
+tSCC zAix_Stdlib_Vec_CallocSelect0[] =
+ "#define[ \t]+calloc[ \t]+vec_calloc";
+
+#define AIX_STDLIB_VEC_CALLOC_TEST_CT 1
+static tTestDesc aAix_Stdlib_Vec_CallocTests[] = {
+ { TT_EGREP, zAix_Stdlib_Vec_CallocSelect0, (regex_t*)NULL }, };
+
+/*
+ * Fix Command Arguments for Aix_Stdlib_Vec_Calloc
+ */
+static const char* apzAix_Stdlib_Vec_CallocPatch[] = {
+ "format",
+ "extern void *calloc(size_t, size_t) __asm__(\"vec_calloc\");",
+ (char*)NULL };
+
+/* * * * * * * * * * * * * * * * * * * * * * * * * *
+ *
* Description of Aix_Strtof_Const fix
*/
tSCC zAix_Strtof_ConstName[] =
@@ -10025,9 +10099,9 @@ static const char* apzX11_SprintfPatch[] = {
*
* List of all fixes
*/
-#define REGEX_COUNT 285
+#define REGEX_COUNT 287
#define MACH_LIST_SIZE_LIMIT 187
-#define FIX_COUNT 247
+#define FIX_COUNT 249
/*
* Enumerate the fixes
@@ -10068,6 +10142,8 @@ typedef enum {
AIX_STDLIB_REALLOC_FIXIDX,
AIX_STDLIB_CALLOC_FIXIDX,
AIX_STDLIB_VALLOC_FIXIDX,
+ AIX_STDLIB_VEC_MALLOC_FIXIDX,
+ AIX_STDLIB_VEC_CALLOC_FIXIDX,
AIX_STRTOF_CONST_FIXIDX,
AIX_SYSMACHINE_FIXIDX,
AIX_SYSWAIT_2_FIXIDX,
@@ -10458,6 +10534,16 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
AIX_STDLIB_VALLOC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
aAix_Stdlib_VallocTests, apzAix_Stdlib_VallocPatch, 0 },
+ { zAix_Stdlib_Vec_MallocName, zAix_Stdlib_Vec_MallocList,
+ apzAix_Stdlib_Vec_MallocMachs,
+ AIX_STDLIB_VEC_MALLOC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+ aAix_Stdlib_Vec_MallocTests, apzAix_Stdlib_Vec_MallocPatch, 0 },
+
+ { zAix_Stdlib_Vec_CallocName, zAix_Stdlib_Vec_CallocList,
+ apzAix_Stdlib_Vec_CallocMachs,
+ AIX_STDLIB_VEC_CALLOC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
+ aAix_Stdlib_Vec_CallocTests, apzAix_Stdlib_Vec_CallocPatch, 0 },
+
{ zAix_Strtof_ConstName, zAix_Strtof_ConstList,
apzAix_Strtof_ConstMachs,
AIX_STRTOF_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
diff --git a/fixincludes/inclhack.def b/fixincludes/inclhack.def
index fd0034f3aaa..77444db2333 100644
--- a/fixincludes/inclhack.def
+++ b/fixincludes/inclhack.def
@@ -838,6 +838,26 @@ fix = {
test_text = "#define valloc __linux_valloc";
};
+fix = {
+ hackname = aix_stdlib_vec_malloc;
+ mach = "*-*-aix*";
+ files = stdlib.h;
+ select = "#define[ \t]+malloc[ \t]+vec_malloc";
+ c_fix = format;
+ c_fix_arg = "extern void *malloc(size_t) __asm__(\"vec_malloc\");";
+ test_text = "#define malloc vec_malloc";
+};
+
+fix = {
+ hackname = aix_stdlib_vec_calloc;
+ mach = "*-*-aix*";
+ files = stdlib.h;
+ select = "#define[ \t]+calloc[ \t]+vec_calloc";
+ c_fix = format;
+ c_fix_arg = "extern void *calloc(size_t, size_t) __asm__(\"vec_calloc\");";
+ test_text = "#define calloc vec_calloc";
+};
+
/*
* stdlib.h on AIX 4.3 declares strtof() with a non-const first argument.
*/
diff --git a/fixincludes/tests/base/stdlib.h b/fixincludes/tests/base/stdlib.h
index cee7e5db413..99092dedd24 100644
--- a/fixincludes/tests/base/stdlib.h
+++ b/fixincludes/tests/base/stdlib.h
@@ -29,6 +29,16 @@ extern void *valloc(size_t) __asm__("__linux_valloc");
#endif /* AIX_STDLIB_VALLOC_CHECK */
+#if defined( AIX_STDLIB_VEC_MALLOC_CHECK )
+extern void *malloc(size_t) __asm__("vec_malloc");
+#endif /* AIX_STDLIB_VEC_MALLOC_CHECK */
+
+
+#if defined( AIX_STDLIB_VEC_CALLOC_CHECK )
+extern void *calloc(size_t, size_t) __asm__("vec_calloc");
+#endif /* AIX_STDLIB_VEC_CALLOC_CHECK */
+
+
#if defined( AIX_STRTOF_CONST_CHECK )
extern float strtof(const char *, char **);
#endif /* AIX_STRTOF_CONST_CHECK */
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c58d419556b..2b8c3b9795f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,632 @@
+2018-02-23 David Edelsohn <dje.gcc@gmail.com>
+
+ * config/rs6000/aix71.h (TARGET_DEFAULT): Change to
+ ISA_2_5_MASKS_EMBEDDED.
+
+2018-02-23 Jakub Jelinek <jakub@redhat.com>
+
+ * ipa-prop.c (ipa_vr_ggc_hash_traits::hash): Hash p->min and
+ p->max as pointers rather than using iterative_hash_expr.
+
+2018-02-23 Carl Love <cel@us.ibm.com>
+
+ * config/rs6000/rs6000-builtin.def: Change VSIGNED2 and VUNSIGNED2
+ macro expansions from BU_VSX_2 to BU_P8V_VSX_2 and BU_VSX_OVERLOAD_2 to
+ BU_P8V_OVERLOAD_2.
+ * config/rs6000/rs6000-c.c: Change VSX_BUILTIN_VEC_VSIGNED2 to
+ P8V_BUILTIN_VEC_VSIGNED2. Change VSX_BUILTIN_VEC_VUNSIGNED2 to
+ P8V_BUILTIN_VEC_VUNSIGNED2.
+
+2018-02-22 Vladimir Makarov <vmakarov@redhat.com>
+
+ PR target/81572
+ * lra-int.h (LRA_UNKNOWN_ALT, LRA_NON_CLOBBERED_ALT): New macros.
+ * lra.c (lra_set_insn_recog_data, lra_update_insn_recog_data): Use
+ LRA_UNKNOWN_ALT.
+ * lra-constraints.c (curr_insn_transform): Set up
+ LRA_NON_CLOBBERED_ALT for moves processed on the fast path. Use
+ LRA_UNKNOWN_ALT.
+ (remove_inheritance_pseudos): Use LRA_UNKNOWN_ALT.
+ * lra-eliminations.c (spill_pseudos): Ditto.
+ (process_insn_for_elimination): Ditto.
+ * lra-lives.c (reg_early_clobber_p): Use the new macros.
+ * lra-spills.c (spill_pseudos): Use LRA_UNKNOWN_ALT and
+ LRA_NON_CLOBBERED_ALT.
+
+2018-02-22 Martin Sebor <msebor@redhat.com>
+
+ PR tree-optimization/84480
+ * gimple-fold.c (gimple_fold_builtin_strcpy): Move warnings
+ to maybe_diag_stxncpy_trunc. Call it.
+ * tree-ssa-strlen.c (maybe_diag_stxncpy_trunc): Integrate warnings
+ from gimple_fold_builtin_strcpy. Print inlining stack.
+ (handle_builtin_stxncpy): Print inlining stack.
+ * tree-ssa-strlen.h (maybe_diag_stxncpy_trunc): Declare.
+
+2018-02-22 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/84176
+ * config/i386/i386.c (ix86_set_indirect_branch_type): Issue an
+ error when -mindirect-branch=thunk-extern, -fcf-protection=branch
+ and -fcheck-pointer-bounds are used together.
+ (indirect_thunk_prefix): New enum.
+ (indirect_thunk_need_prefix): New function.
+ (indirect_thunk_name): Replace need_bnd_p with need_prefix. Use
+ "_nt" instead of "_bnd" for NOTRACK prefix.
+ (output_indirect_thunk): Replace need_bnd_p with need_prefix.
+ (output_indirect_thunk_function): Likewise.
+ (): Likewise.
+ (ix86_code_end): Update output_indirect_thunk_function calls.
+ (ix86_output_indirect_branch_via_reg): Replace
+ ix86_bnd_prefixed_insn_p with indirect_thunk_need_prefix.
+ (ix86_output_indirect_branch_via_push): Likewise.
+ (ix86_output_function_return): Likewise.
+ * doc/invoke.texi: Document -mindirect-branch=thunk-extern is
+ incompatible with -fcf-protection=branch and
+ -fcheck-pointer-bounds.
+
+2018-02-22 Steve Ellcey <sellcey@cavium.com>
+
+ PR target/83335
+ * config/aarch64/aarch64.c (aarch64_print_address_internal):
+ Change gcc_assert call to output_operand_lossage.
+
+2018-02-22 Steve Ellcey <sellcey@cavium.com>
+
+ * doc/extend.texi (__builtin_extend_pointer): Document builtin.
+
+2018-02-22 DJ Delorie <dj@redhat.com>
+ Sebastian Perta <sebastian.perta@renesas.com>
+ Oleg Endo <olegendo@gcc.gnu.org>
+
+ * config/rx/rx.c (rx_rtx_costs): New function.
+ (TARGET_RTX_COSTS): Override to use rx_rtx_costs.
+
+2018-02-22 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ * config/arm/t-multilib: Map Armv8-R to Armv7 multilibs.
+
+2018-02-22 Martin Liska <mliska@suse.cz>
+
+ PR driver/83193
+ * common/config/arm/arm-common.c (arm_print_hint_for_cpu_option):
+ Add "native" as a possible value.
+
+2018-02-22 Martin Liska <mliska@suse.cz>
+
+ PR driver/83193
+ * config/i386/i386.c (ix86_option_override_internal):
+ Add "native" as a possible value for -march and -mtune.
+
+2018-02-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/84502
+ * stor-layout.c (finalize_type_size): Propagate TYPE_EMPTY_P flag
+ to all type variants.
+
+ PR tree-optimization/84503
+ * gimple-ssa-store-merging.c (merged_store_group::merge_into): Compute
+ width as info->bitpos + info->bitsize - start.
+ (merged_store_group::merge_overlapping): Simplify width computation.
+ (check_no_overlap): New function.
+ (imm_store_chain_info::try_coalesce_bswap): Compute expected
+ start + width and last_order of the group, fail if check_no_overlap
+ fails.
+ (imm_store_chain_info::coalesce_immediate_stores): Don't merge info
+ to group if check_no_overlap fails.
+
+2018-02-21 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/altivec.md: Delete contraint arguments to
+ define_expand, define_split, and define_peephole2, and in
+ define_insn_and_split if always unused.
+ * config/rs6000/darwin.md: Ditto.
+ * config/rs6000/dfp.md: Ditto.
+ * config/rs6000/rs6000.md: Ditto.
+ * config/rs6000/sync.md: Ditto.
+ * config/rs6000/vector.md: Ditto.
+ * config/rs6000/vsx.md: Ditto.
+
+2018-02-21 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/altivec.md: Write output control strings as braced
+ blocks instead of double-quoted strings.
+ * config/rs6000/darwin.md: Ditto.
+ * config/rs6000/rs6000.md: Ditto.
+ * config/rs6000/vector.md: Ditto.
+ * config/rs6000/vsx.md: Ditto.
+
+2018-02-21 Jason Merrill <jason@redhat.com>
+
+ PR c++/84314 - ICE with templates and fastcall attribute.
+ * attribs.c (build_type_attribute_qual_variant): Remove assert.
+
+2018-02-21 Jan Hubicka <hubicka@ucw.cz>
+
+ * ipa-cp.c (determine_versionability): Fix comment typos.
+
+2018-02-21 Jan Hubicka <hubicka@ucw.cz>
+
+ PR c/84229
+ * ipa-cp.c (determine_versionability): Do not version functions caling
+ va_arg_pack.
+
+2018-02-21 Martin Liska <mliska@suse.cz>
+
+ PR driver/83193
+ * config/aarch64/aarch64.c (aarch64_print_hint_for_core_or_arch):
+ Add "native" as a possible value.
+ * config/aarch64/aarch64.h (HAVE_LOCAL_CPU_DETECT): Define
+ the macro when native cpu detection is available.
+
+2018-02-21 Martin Liska <mliska@suse.cz>
+
+ PR driver/83193
+ * common/config/arm/arm-common.c (arm_print_hint_for_arch_option):
+ Add "native" as a possible value.
+ * config/arm/arm.h (HAVE_LOCAL_CPU_DETECT): Define the macro
+ when native cpu detection is available.
+
+2018-02-21 Jakub Jelinek <jakub@redhat.com>
+ Martin Sebor <msebor@redhat.com>
+
+ PR tree-optimization/84478
+ * gimple-fold.h (get_range_strlen): Add a bool argument defaulted to
+ false.
+ * gimple-fold.c (get_range_strlen): Make minlen const and assume it
+ can't be NULL. Change FUZZY from bool to int, for 1 add PHI/COND_EXPR
+ support which is conservatively correct, for 2 only stay conservative
+ for maxlen. Formatting and comment capitalization fixes. Add STRICT
+ argument to the 2 argument get_range_strlen, adjust 6 arg
+ get_range_strlen caller and clear minmaxlen[0] and [1] if it returned
+ false.
+ (get_maxval_strlen): Adjust 6 arg get_range_strlen caller.
+ (gimple_fold_builtin_strlen): Pass true as last argument to
+ get_range_strlen.
+
+2018-02-20 Martin Sebor <msebor@redhat.com>
+
+ PR middle-end/84095
+ * gimple-ssa-warn-restrict.c (builtin_memref::extend_offset_range): New.
+ (builtin_memref::set_base_and_offset): Same. Handle inner references.
+ (builtin_memref::builtin_memref): Factor out parts into
+ set_base_and_offset and call it.
+
+2018-02-20 Richard Sandiford <richard.sandiford@linaro.org>
+
+ PR middle-end/84406
+ * optabs-query.c (find_widening_optab_handler_and_mode): If from_mode
+ is a scalar_int_mode, assert that to_mode is a scalar_int_mode with
+ greater precision. If to_mode is a MODE_PARTIAL_INT, stop the
+ search at the associated MODE_INT.
+
+2018-02-20 Jeff Law <law@redhat.com>
+
+ PR middle-end/82123
+ PR tree-optimization/81592
+ PR middle-end/79257
+ * gimple-ssa-sprintf.c (format_integer): Query EVRP range analyzer
+ for range data rather than using global data.
+ * gimple-ssa-sprintf.c (get_int_range): Query EVRP range analyzer for
+ range data rather than using global data.
+ * gimple-ssa-sprintf.c (get_int_range): Accept vr_values parameter
+ pass it to children as needed.
+ (struct directive::fmtresult): Similarly.
+ (struct directive::set_width): Similarly.
+ (struct directive::set_precision): Similarly.
+ (format_integer, format_directive, parse_directive): Similarly.
+ (format_none): Accept unnamed vr_values parameter.
+ (format_percent, format_floating, format_character): Similarly.
+ (format_string, format_plain): Similarly.
+ * gimple-ssa-sprintf.c (sprintf_dom_walker::handle_gimple_call): Query
+ the EVRP range analyzer for range data rather than using global data.
+ * gimple-ssa-sprintf.c: Include alloc-pool.h, vr-values.h and
+ gimple-ssa-evrp-analyze.h
+ (class sprintf_dom_walker): Add after_dom_children member function.
+ Add evrp_range_analyzer member.
+ (sprintf_dom_walker::before_dom_children): Call into the EVRP
+ range analyzer as needed.
+ (sprintf_dom_walker::after_dom_children): New member function.
+ * gimple-ssa-evrp-analyze.c (evrp_range_analyzer::enter): Do nothing
+ if not optimizing.
+ (evrp_range_analyzer::record_ranges_from_stmt): Likewise.
+ (evrp_range_analyzer::pop_to_marker): Likewise.
+
+2018-02-20 Richard Sandiford <richard.sandiford@linaro.org>
+
+ PR tree-optimization/84419
+ * internal-fn.c (expand_call_mem_ref): Create a TARGET_MEM_REF
+ with the required type if its current type is compatible but
+ different.
+
+2018-02-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/82004
+ * match.pd (pow(C,x) -> exp(log(C)*x)): Delay all folding until
+ after vectorization.
+
+2018-02-20 Martin Liska <mliska@suse.cz>
+
+ PR driver/83193
+ * config/aarch64/aarch64.c (aarch64_print_hint_for_core_or_arch): Print
+ possible values if we don't have a hint.
+
+2018-02-20 Martin Liska <mliska@suse.cz>
+
+ PR c/84310
+ PR target/79747
+ * final.c (shorten_branches): Build align_tab array with one
+ more element.
+ * opts.c (finish_options): Add alignment option limit check.
+ (MAX_CODE_ALIGN): Likewise.
+ (MAX_CODE_ALIGN_VALUE): Likewise.
+ * doc/invoke.texi: Document maximum allowed option value for
+ all -falign-* options.
+
+2018-02-19 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/84146
+ * reg-notes.def (REG_CALL_ARG_LOCATION): New reg note.
+ * insn-notes.def (NOTE_INSN_CALL_ARG_LOCATION): Remove.
+ * var-tracking.c (emit_note_insn_var_location): Remove all references
+ to NOTE_INSN_CALL_ARG_LOCATION.
+ (emit_notes_in_bb): Emit arguments as REG_CALL_ARG_LOCATION note on
+ the CALL_INSN rather than separate NOTE_INSN_CALL_ARG_LOCATION note.
+ Use copy_rtx_if_shared.
+ * dwarf2out.c (gen_subprogram_die): Use XEXP with 0 instead of
+ NOTE_VAR_LOCATION on ca_loc->call_arg_loc_note.
+ (dwarf2out_var_location): Remove handling of
+ NOTE_INSN_CALL_ARG_LOCATION, instead handle REG_CALL_ARG_LOCATION note
+ on call_insn.
+ * final.c (final_scan_insn): Remove all references to
+ NOTE_INSN_CALL_ARG_LOCATION.
+ (rest_of_clean_state): Likewise. Remove REG_CALL_ARG_LOCATION notes
+ before dumping final insns.
+ * except.c (emit_note_eh_region_end): Remove all references to
+ NOTE_INSN_CALL_ARG_LOCATION.
+ * config/alpha/alpha.c (alpha_pad_function_end): Likewise.
+ * config/c6x/c6x.c (c6x_gen_bundles): Likewise.
+ * config/arc/arc.c (hwloop_optimize): Likewise.
+ * config/arm/arm.c (create_fix_barrier): Likewise.
+ * config/s390/s390.c (s390_chunkify_start): Likewise.
+ * config/sh/sh.c (find_barrier): Likewise.
+ * config/i386/i386.c (rest_of_insert_endbranch,
+ ix86_seh_fixup_eh_fallthru): Likewise.
+ * config/xtensa/xtensa.c (hwloop_optimize): Likewise.
+ * config/iq2000/iq2000.c (final_prescan_insn): Likewise.
+ * config/frv/frv.c (frv_function_prologue): Likewise.
+ * emit-rtl.c (try_split): Likewise. Copy over REG_CALL_ARG_LOCATION
+ reg note.
+ (note_outside_basic_block_p): Remove all references to
+ NOTE_INSN_CALL_ARG_LOCATION.
+ * gengtype.c (adjust_field_rtx_def): Likewise.
+ * print-rtl.c (rtx_writer::print_rtx_operand_code_0, print_insn):
+ Likewise.
+ * jump.c (cleanup_barriers, delete_related_insns): Likewise.
+ * cfgrtl.c (force_nonfallthru_and_redirect): Likewise.
+
+ PR c++/84444
+ * builtins.c (builtin_mathfn_code): Don't check if CALL_EXPR_FN (t)
+ is ADDR_EXPR.
+
+ PR tree-optimization/84452
+ * tree-vect-patterns.c (vect_recog_pow_pattern): Don't call
+ expand_simd_clones if targetm.simd_clone.compute_vecsize_and_simdlen
+ is NULL.
+
+2018-02-19 Martin Liska <mliska@suse.cz>
+
+ PR sanitizer/82183
+ * passes.def: Put pass_sancov_O0 before pass_lower_switch with -O0.
+
+2018-02-19 Martin Liska <mliska@suse.cz>
+ Richard Sandiford <richard.sandiford@linaro.org>
+
+ PR tree-optimization/82491
+ * gimple-fold.c (get_base_constructor): Make earlier bail out
+ to prevent ubsan.
+
+2018-02-19 Carl Love <cel@us.ibm.com>
+
+ * config/rs6000/rs6000-builtin.def: Change NEG macro expansions from
+ BU_ALTIVEC_A to BU_P8V_AV_1 and BU_ALTIVEC_OVERLOAD_1 to
+ BU_P8V_OVERLOAD_1.
+ * config/rs6000/rs6000-c.c: Change ALTIVEC_BUILTIN_VEC_NEG to
+ P8V_BUILTIN_VEC_NEG.
+
+2018-02-19 Sebastian Perta <sebastian.perta@renesas.com>
+
+ * config/rl78/rl78.md (movdf): New define expand.
+
+2018-02-19 Martin Liska <mliska@suse.cz>
+
+ PR other/80589
+ * doc/invoke.texi: Fix typo.
+ * params.def (PARAM_MAX_LOOP_HEADER_INSNS): Likewise.
+
+2018-02-18 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * config/rs6000/rs6000.c (rs6000_option_override_internal): Don't
+ handle rs6000_single_float and rs6000_double_float specially for
+ e500 family CPUs.
+
+2018-02-16 Jeff Law <law@redhat.com>
+
+ * config/rx/rx.c (add_pop_cfi_notes): New function.;
+ (pop_regs): Use it.
+
+2018-02-16 Jakub Jelinek <jakub@redhat.com>
+
+ PR ipa/84425
+ * ipa-inline.c (inline_small_functions): Fix a typo.
+
+2018-02-16 Nathan Sidwell <nathan@acm.org>
+
+ * doc/extend.texi (Backwards Compatibility): Americanize 'behaviour'.
+
+2018-02-16 Carl Love <cel@us.ibm.com>
+
+ * config/rs6000/rs6000-builtin.def: Add BU_P8V_VSX_2 macro definition.
+ Change FLOAT2 expansions from BU_VSX_2 to BU_P8V_VSX_2 and
+ from BU_VSX_OVERLOAD_2 to BU_P8V_OVERLOAD_2.
+ * config/rs6000/rs6000-c.c: Changed macro VSX_BUILTIN_VEC_FLOAT2
+ expansion to P8V_BUILTIN_VEC_FLOAT2.
+
+2018-02-16 Vladimir Makarov <vmakarov@redhat.com>
+
+ PR rtl-optimization/70023
+ * lra-constraints.c (inherit_in_ebb): Take hard reg mode of
+ src_regno into account.
+
+2018-02-16 Carl Love <cel@us.ibm.com>
+
+ * config/rs6000/altivec.h: Remove vec_vextract4b and vec_vinsert4b.
+ * config/rs6000/rs6000-builtin.def: Remove macro expansion for
+ VEXTRACT4B, VINSERT4B, VINSERT4B_DI and VEXTRACT4B.
+ * config/rs6000/rs6000.c: Remove case statements for
+ P9V_BUILTIN_VEXTRACT4B, P9V_BUILTIN_VEC_VEXTRACT4B,
+ P9V_BUILTIN_VINSERT4B, P9V_BUILTIN_VINSERT4B_DI,
+ and P9V_BUILTIN_VEC_VINSERT4B.
+ * config/rs6000/rs6000-c.c (altivec_expand_builtin): Remove entries for
+ P9V_BUILTIN_VEC_VEXTRACT4B and P9V_BUILTIN_VEC_VINSERT4B.
+ * config/rs6000/vsx.md:
+ * doc/extend.texi: Remove vec_vextract4b, non ABI definitions for
+ vec_insert4b.
+
+2018-02-16 Carl Love <cel@us.ibm.com>
+
+ * config/rs6000/altivec.h: Add builtin names vec_extract4b
+ vec_insert4b.
+ * config/rs6000/rs6000-builtin.def: Add INSERT4B and EXTRACT4B
+ definitions.
+ * config/rs6000/rs6000-c.c: Add the definitions for
+ P9V_BUILTIN_VEC_EXTRACT4B and P9V_BUILTIN_VEC_INSERT4B.
+ * config/rs6000/rs6000.c (altivec_expand_builtin): Add
+ P9V_BUILTIN_EXTRACT4B and P9V_BUILTIN_INSERT4B case statements.
+ * config/rs6000/vsx.md: Add define_insn extract4b. Add define_expand
+ definition for insert4b and define insn *insert3b_internal.
+ * doc/extend.texi: Add documentation for vec_extract4b.
+
+2018-02-16 Nathan Sidwell <nathan@acm.org>
+
+ * doc/extend.texi (Backwards Compatibility): Mention friend
+ injection. Note for-scope is deprecated.
+ * doc/invoke.texi (-ffriend-injection): Deprecate.
+
+2018-02-16 Segher Boessenkool <segher@kernel.crashing.org>
+
+ * combine.c (try_combine): When adjusting LOG_LINKS for the destination
+ that moved to I2, also allow destinations that are a paradoxical
+ subreg (instead of a normal reg).
+
+2018-02-16 Oleg Endo <olegendo@gcc.gnu.org>
+
+ PR target/83831
+ * config/rx/rx.c (rx_fuse_in_memory_bitop): Convert shift operand
+ to QImode.
+
+2018-02-16 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/84037
+ PR tree-optimization/84016
+ PR target/82862
+ * config/i386/i386.c (ix86_builtin_vectorization_cost):
+ Adjust vec_construct for the fact we need additional higher latency
+ 128bit inserts for AVX256 and AVX512 vector builds.
+ (ix86_add_stmt_cost): Scale vector construction cost for
+ elementwise loads.
+
+2018-02-16 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/84417
+ * tree-ssa.c (non_rewritable_mem_ref_base): Properly constrain
+ the MEM_REF offset when conversion to BIT_FIELD_REF is desired.
+ (non_rewritable_lvalue_p): Likewise, use poly-ints.
+
+2018-02-16 Martin Liska <mliska@suse.cz>
+
+ PR sanitizer/84307
+ * internal-fn.def (ASAN_CHECK): Set proper flags.
+ (ASAN_MARK): Likewise.
+
+2018-02-16 Julia Koval <julia.koval@intel.com>
+
+ * config/i386/i386.c (ix86_option_override_internal): Remove PTA_CLWB
+ from PTA_CANNONLAKE.
+
+2018-02-16 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/84272
+ * config/aarch64/cortex-a57-fma-steering.c (fma_forest::merge_forest):
+ Use ++iter rather than iter++ for std::list iterators.
+ (func_fma_steering::dfs): Likewise. Don't delete nodes right away,
+ defer deleting them until all nodes in the forest are processed. Do
+ free even leaf nodes. Change to_process into auto_vec.
+
+ PR bootstrap/84405
+ * system.h (BROKEN_VALUE_INITIALIZATION): Define for GCC < 4.3.
+ * vec.h (vec_default_construct): Use memset instead of placement new
+ if BROKEN_VALUE_INITIALIZATION is defined.
+ * hash-table.h (hash_table<Descriptor, Allocator>::empty_slow): Use
+ memset instead of value initialization if BROKEN_VALUE_INITIALIZATION
+ is defined.
+
+ PR rtl-optimization/83723
+ * lra-int.h (lra_substitute_pseudo): Add DEBUG_P argument.
+ * lra.c (lra_substitute_pseudo): Likewise. If true, use
+ gen_rtx_raw_SUBREG instead of gen_rtx_SUBREG. Pass DEBUG_P to
+ recursive calls.
+ (lra_substitute_pseudo_within_insn): Adjust lra_substitute_pseudo
+ callers.
+ * lra-constraints.c (inherit_reload_reg, split_reg): Likewise.
+
+2018-02-16 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR rtl-optimization/81443
+ * rtlanal.c (num_sign_bit_copies1) <SUBREG>: Do not propagate results
+ from inner REGs to paradoxical SUBREGs.
+
+2018-02-16 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/84399
+ * graphite-scop-detection.c (scop_detection::stmt_simple_for_scop_p):
+ For operands we can analyze at their definition make sure we can
+ analyze them at each use as well.
+
+2018-02-16 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/84190
+ * tree-ssa.c (non_rewritable_mem_ref_base): Do not touch
+ volatile accesses if the decl isn't volatile.
+
+2018-02-15 Jason Merrill <jason@redhat.com>
+
+ PR c++/84314 - ICE with templates and fastcall attribute.
+ * attribs.c (build_type_attribute_qual_variant): Don't clobber
+ TYPE_CANONICAL on an existing type.
+
+2018-02-15 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/84383
+ * tree-ssa-strlen.c (maybe_diag_stxncpy_trunc): Don't look at
+ dstoff nor call operand_equal_p if dstbase is NULL.
+
+ PR tree-optimization/84334
+ * match.pd ((A +- CST1) +- CST2 -> A + CST3): If A is
+ also a CONSTANT_CLASS_P, punt.
+
+2018-02-14 Jim Wilson <jimw@sifive.com>
+
+ * config/riscv/riscv.c (riscv_first_stack_step): Move locals after
+ first SMALL_OPERAND check. New local min_second_step. Move assert
+ to where locals are set. Add TARGET_RVC support.
+ * config/riscv/riscv.h (C_SxSP_BITS, SWSP_REACH, SDSP_REACH): New.
+
+2018-02-14 Indu Bhagat <indu.bhagat@oracle.com>
+
+ * doc/invoke.texi: Correct -Wformat-overflow code sample.
+
+2018-02-14 Martin Sebor <msebor@redhat.com>
+
+ PR tree-optimization/83698
+ * gimple-ssa-warn-restrict.c (builtin_memref::builtin_memref): For
+ arrays constrain the offset range to their bounds.
+ (builtin_access::strcat_overlap): Adjust the bounds of overlap offset.
+ (builtin_access::overlap): Avoid setting the size of overlap if it's
+ already been set.
+ (maybe_diag_overlap): Also consider arrays when deciding what values
+ of offsets to include in diagnostics.
+
+2018-02-14 Martin Sebor <msebor@redhat.com>
+
+ PR c/84108
+ * attribs.c (diag_attr_exclusions): Consider the exclusion(s)
+ that correspond to the kind of a declaration.
+
+2018-02-14 John David Anglin <danglin@gcc.gnu.org>
+
+ PR target/83984
+ * config/pa/pa.md: Load address of PIC label using the linkage table
+ if the label is nonlocal.
+
+2018-02-14 Kelvin Nilsen <kelvin@gcc.gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_option_override_internal): Issue
+ warning message if user requests -maltivec=be.
+ * doc/invoke.texi: Document deprecation of -maltivec=be.
+
+2018-02-14 Will Schmidt <will_schmidt@vnet.ibm.com>
+
+ PR target/84220
+ * config/rs6000/rs6000-c.c: Update definitions for
+ ALTIVEC_BUILTIN_VEC_SLD, ALTIVEC_BUILTIN_VEC_SLDW,
+ VEC_XXSLDWI and ALTIVEC_BUILTIN_VEC_XXPERMDI builtins.
+
+2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
+
+ PR target/84239
+ * config/i386/cetintrin.h: Remove _rdssp[d|q] and
+ add _get_ssp intrinsics. Remove argument from
+ __builtin_ia32_rdssp[d|q].
+ * config/i386/i386-builtin-types.def: Add UINT_FTYPE_VOID.
+ * config/i386/i386-builtin.def: Remove argument from
+ __builtin_ia32_rdssp[d|q].
+ * config/i386/i386.c: Use UINT_FTYPE_VOID. Use
+ ix86_expand_special_args_builtin for _rdssp[d|q].
+ * config/i386/i386.md: Remove argument from rdssp[si|di] insn.
+ Clear register before usage.
+ * doc/extend.texi: Remove argument from __builtin_ia32_rdssp[d|q].
+ Add documentation for new _get_ssp and _inc_ssp intrinsics.
+
+2018-02-14 Richard Sandiford <richard.sandiford@linaro.org>
+
+ PR tree-optimization/84357
+ * tree-data-ref.c (object_address_invariant_in_loop_p): Check
+ operand 1 of an ARRAY_REF too.
+
+2018-02-14 Oleg Endo <olegendo@gcc.gnu.org>
+
+ PR target/83831
+ * config/rx/rx-protos.h (rx_reg_dead_or_unused_after_insn,
+ rx_copy_reg_dead_or_unused_notes, rx_fuse_in_memory_bitop): New
+ declarations.
+ (set_of_reg): New struct.
+ (rx_find_set_of_reg, rx_find_use_of_reg): New functions.
+ * config/rx/rx.c (rx_reg_dead_or_unused_after_insn,
+ rx_copy_reg_dead_or_unused_notes, rx_fuse_in_memory_bitop): New
+ functions.
+ * config/rx/rx.md (andsi3, iorsi3, xorsi3): Convert to insn_and_split.
+ Split into bitclr, bitset, bitinvert patterns if appropriate.
+ (*bitset, *bitinvert, *bitclr): Convert to named insn_and_split and
+ use rx_fuse_in_memory_bitop.
+ (*bitset_in_memory, *bitinvert_in_memory, *bitclr_in_memory): Convert
+ to named insn, correct maximum insn length.
+
+2018-02-14 Jozef Lawrynowicz <jozefl.gcc@gmail.com>
+
+ PR target/79242
+ * machmode.def: Define a complex mode for PARTIAL_INT.
+ * genmodes.c (complex_class): Return MODE_COMPLEX_INT for
+ MODE_PARTIAL_INT.
+ * doc/rtl.texi: Document CSPImode.
+ * config/msp430/msp430.c (msp430_hard_regno_nregs): Add CPSImode
+ handling.
+ (msp430_hard_regno_nregs_with_padding): Likewise.
+
+2018-02-13 Peter Bergner <bergner@vnet.ibm.com>
+
+ PR target/84279
+ * config/rs6000/rs6000.c (mem_operand_gpr): Disallow altivec addresses.
+
+2018-02-13 Segher Boessenkool <segher@kernel.crashing.org>
+
+ PR rtl-optimization/84169
+ * combine.c (try_combine): New variable split_i2i3. Set it to true if
+ we generated a parallel as new i3 and we split that to new i2 and i3
+ instructions. Handle split_i2i3 similar to swap_i2i3: scan the
+ LOG_LINKs of i3 to see which of those need to link to i2 now. Link
+ those to i2, not i1. Partially rewrite this scan code.
+
2018-02-13 Jakub Jelinek <jakub@redhat.com>
PR c/82210
@@ -19,6 +648,8 @@
2018-02-13 Alexandre Oliva <aoliva@redhat.com>
+ PR debug/84342
+ PR debug/84319
* common.opt (gas-loc-support, gas-locview-support): New.
(ginline-points, ginternal-reset-location-views): New.
* doc/invoke.texi: Document them. Use @itemx where intended.
@@ -1230,6 +1861,7 @@
2018-01-30 Aaron Sawdey <acsawdey@linux.vnet.ibm.com>
+ PR target/83758
* config/rs6000/rs6000.c (rs6000_internal_arg_pointer): Only return
a reg rtx.
@@ -2222,6 +2854,7 @@
* config/aarch64/predicates.md (Uti): Add new constraint.
2018-01-17 Carl Love <cel@us.ibm.com>
+
* config/rs6000/vsx.md (define_expand xl_len_r,
define_expand stxvl, define_expand *stxvl): Add match_dup argument.
(define_insn): Add, match_dup 1 argument to define_insn stxvll and
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index ab63496b08a..6c55d4b6bbf 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20180213
+20180223
diff --git a/gcc/attribs.c b/gcc/attribs.c
index 2cac9c403b4..bfadf124dcb 100644
--- a/gcc/attribs.c
+++ b/gcc/attribs.c
@@ -410,6 +410,22 @@ diag_attr_exclusions (tree last_decl, tree node, tree attrname,
if (!lookup_attribute (excl->name, attrs[i]))
continue;
+ /* An exclusion may apply either to a function declaration,
+ type declaration, or a field/variable declaration, or
+ any subset of the three. */
+ if (TREE_CODE (node) == FUNCTION_DECL
+ && !excl->function)
+ continue;
+
+ if (TREE_CODE (node) == TYPE_DECL
+ && !excl->type)
+ continue;
+
+ if ((TREE_CODE (node) == FIELD_DECL
+ || TREE_CODE (node) == VAR_DECL)
+ && !excl->variable)
+ continue;
+
found = true;
/* Print a note? */
@@ -1127,18 +1143,25 @@ build_type_attribute_qual_variant (tree otype, tree attribute, int quals)
ttype = (lang_hooks.types.copy_lang_qualifiers
(ttype, TYPE_MAIN_VARIANT (otype)));
- ntype = build_distinct_type_copy (ttype);
+ tree dtype = ntype = build_distinct_type_copy (ttype);
TYPE_ATTRIBUTES (ntype) = attribute;
hashval_t hash = type_hash_canon_hash (ntype);
ntype = type_hash_canon (hash, ntype);
- /* If the target-dependent attributes make NTYPE different from
- its canonical type, we will need to use structural equality
- checks for this type. */
- if (TYPE_STRUCTURAL_EQUALITY_P (ttype)
- || !comp_type_attributes (ntype, ttype))
+ if (ntype != dtype)
+ /* This variant was already in the hash table, don't mess with
+ TYPE_CANONICAL. */;
+ else if (TYPE_STRUCTURAL_EQUALITY_P (ttype)
+ || !comp_type_attributes (ntype, ttype))
+ /* If the target-dependent attributes make NTYPE different from
+ its canonical type, we will need to use structural equality
+ checks for this type.
+
+ We shouldn't get here for stripping attributes from a type;
+ the no-attribute type might not need structural comparison. But
+ we can if was discarded from type_hash_table. */
SET_TYPE_STRUCTURAL_EQUALITY (ntype);
else if (TYPE_CANONICAL (ntype) == ntype)
TYPE_CANONICAL (ntype) = TYPE_CANONICAL (ttype);
diff --git a/gcc/builtins.c b/gcc/builtins.c
index 683c6ec6e5b..85affa74510 100644
--- a/gcc/builtins.c
+++ b/gcc/builtins.c
@@ -7836,8 +7836,7 @@ builtin_mathfn_code (const_tree t)
const_tree argtype, parmtype;
const_call_expr_arg_iterator iter;
- if (TREE_CODE (t) != CALL_EXPR
- || TREE_CODE (CALL_EXPR_FN (t)) != ADDR_EXPR)
+ if (TREE_CODE (t) != CALL_EXPR)
return END_BUILTINS;
fndecl = get_callee_fndecl (t);
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index 1f536d1b4b0..49cfea95b3d 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,11 @@
+2018-02-21 Martin Liska <mliska@suse.cz>
+
+ * c.opt (Wcatch-value=): Add IntegerRange.
+
+2018-02-15 Jason Merrill <jason@redhat.com>
+
+ * c-cppbuiltin.c (c_cpp_builtins): Update __cpp_deduction_guides.
+
2018-02-09 Nathan Sidwell <nathan@acm.org>
PR c/84293
diff --git a/gcc/c-family/c-cppbuiltin.c b/gcc/c-family/c-cppbuiltin.c
index 0624c006278..3fc4fa9cd68 100644
--- a/gcc/c-family/c-cppbuiltin.c
+++ b/gcc/c-family/c-cppbuiltin.c
@@ -970,7 +970,7 @@ c_cpp_builtins (cpp_reader *pfile)
cpp_define (pfile, "__cpp_capture_star_this=201603");
cpp_define (pfile, "__cpp_inline_variables=201606");
cpp_define (pfile, "__cpp_aggregate_bases=201603");
- cpp_define (pfile, "__cpp_deduction_guides=201606");
+ cpp_define (pfile, "__cpp_deduction_guides=201611");
cpp_define (pfile, "__cpp_noexcept_function_type=201510");
cpp_define (pfile, "__cpp_template_auto=201606");
cpp_define (pfile, "__cpp_structured_bindings=201606");
diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt
index 7fb386d456d..421b1464545 100644
--- a/gcc/c-family/c.opt
+++ b/gcc/c-family/c.opt
@@ -397,7 +397,7 @@ C++ ObjC++ Warning Alias(Wcatch-value=, 1, 0)
Warn about catch handlers of non-reference type.
Wcatch-value=
-C++ ObjC++ Var(warn_catch_value) Warning Joined RejectNegative UInteger LangEnabledBy(C++ ObjC++,Wall, 1, 0)
+C++ ObjC++ Var(warn_catch_value) Warning Joined RejectNegative UInteger LangEnabledBy(C++ ObjC++,Wall, 1, 0) IntegerRange(0, 3)
Warn about catch handlers of non-reference type.
Wchar-subscripts
diff --git a/gcc/cfgrtl.c b/gcc/cfgrtl.c
index 6ff80fd5c01..fd095ac59ed 100644
--- a/gcc/cfgrtl.c
+++ b/gcc/cfgrtl.c
@@ -1628,11 +1628,6 @@ force_nonfallthru_and_redirect (edge e, basic_block target, rtx jump_label)
else
new_head = BB_END (e->src);
new_head = NEXT_INSN (new_head);
- /* Make sure we don't split a call and its corresponding
- CALL_ARG_LOCATION note. */
- if (new_head && NOTE_P (new_head)
- && NOTE_KIND (new_head) == NOTE_INSN_CALL_ARG_LOCATION)
- new_head = NEXT_INSN (new_head);
jump_block = create_basic_block (new_head, NULL, e->src);
jump_block->count = count;
diff --git a/gcc/combine.c b/gcc/combine.c
index a9929f2a3e2..6b761c609ae 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -2665,6 +2665,7 @@ try_combine (rtx_insn *i3, rtx_insn *i2, rtx_insn *i1, rtx_insn *i0,
/* Notes that I1, I2 or I3 is a MULT operation. */
int have_mult = 0;
int swap_i2i3 = 0;
+ int split_i2i3 = 0;
int changed_i3_dest = 0;
int maxreg;
@@ -4091,6 +4092,9 @@ try_combine (rtx_insn *i3, rtx_insn *i2, rtx_insn *i1, rtx_insn *i0,
}
insn_code_number = recog_for_combine (&newpat, i3, &new_i3_notes);
+
+ if (insn_code_number >= 0)
+ split_i2i3 = 1;
}
}
@@ -4258,44 +4262,50 @@ try_combine (rtx_insn *i3, rtx_insn *i2, rtx_insn *i1, rtx_insn *i0,
if (swap_i2i3)
{
- rtx_insn *insn;
- struct insn_link *link;
- rtx ni2dest;
-
/* I3 now uses what used to be its destination and which is now
I2's destination. This requires us to do a few adjustments. */
PATTERN (i3) = newpat;
adjust_for_new_dest (i3);
+ }
- /* We need a LOG_LINK from I3 to I2. But we used to have one,
- so we still will.
+ if (swap_i2i3 || split_i2i3)
+ {
+ /* We might need a LOG_LINK from I3 to I2. But then we used to
+ have one, so we still will.
However, some later insn might be using I2's dest and have
- a LOG_LINK pointing at I3. We must remove this link.
- The simplest way to remove the link is to point it at I1,
- which we know will be a NOTE. */
+ a LOG_LINK pointing at I3. We should change it to point at
+ I2 instead. */
/* newi2pat is usually a SET here; however, recog_for_combine might
have added some clobbers. */
- if (GET_CODE (newi2pat) == PARALLEL)
- ni2dest = SET_DEST (XVECEXP (newi2pat, 0, 0));
- else
- ni2dest = SET_DEST (newi2pat);
+ rtx x = newi2pat;
+ if (GET_CODE (x) == PARALLEL)
+ x = XVECEXP (newi2pat, 0, 0);
+
+ /* It can only be a SET of a REG or of a paradoxical SUBREG of a REG. */
+ x = SET_DEST (x);
+ if (paradoxical_subreg_p (x))
+ x = SUBREG_REG (x);
+
+ unsigned int regno = REGNO (x);
- for (insn = NEXT_INSN (i3);
- insn && (this_basic_block->next_bb == EXIT_BLOCK_PTR_FOR_FN (cfun)
- || insn != BB_HEAD (this_basic_block->next_bb));
+ bool done = false;
+ for (rtx_insn *insn = NEXT_INSN (i3);
+ !done
+ && insn
+ && NONDEBUG_INSN_P (insn)
+ && BLOCK_FOR_INSN (insn) == this_basic_block;
insn = NEXT_INSN (insn))
{
- if (NONDEBUG_INSN_P (insn)
- && reg_referenced_p (ni2dest, PATTERN (insn)))
- {
- FOR_EACH_LOG_LINK (link, insn)
- if (link->insn == i3)
- link->insn = i1;
-
- break;
- }
+ struct insn_link *link;
+ FOR_EACH_LOG_LINK (link, insn)
+ if (link->insn == i3 && link->regno == regno)
+ {
+ link->insn = i2;
+ done = true;
+ break;
+ }
}
}
diff --git a/gcc/common/config/arm/arm-common.c b/gcc/common/config/arm/arm-common.c
index fc585e0b0ee..a404d4b1562 100644
--- a/gcc/common/config/arm/arm-common.c
+++ b/gcc/common/config/arm/arm-common.c
@@ -309,6 +309,12 @@ arm_print_hint_for_cpu_option (const char *target,
auto_vec<const char*> candidates;
for (; list->common.name != NULL; list++)
candidates.safe_push (list->common.name);
+
+#ifdef HAVE_LOCAL_CPU_DETECT
+ /* Add also "native" as possible value. */
+ candidates.safe_push ("native");
+#endif
+
char *s;
const char *hint = candidates_list_and_hint (target, s, candidates);
if (hint)
@@ -353,6 +359,12 @@ arm_print_hint_for_arch_option (const char *target,
auto_vec<const char*> candidates;
for (; list->common.name != NULL; list++)
candidates.safe_push (list->common.name);
+
+#ifdef HAVE_LOCAL_CPU_DETECT
+ /* Add also "native" as possible value. */
+ candidates.safe_push ("native");
+#endif
+
char *s;
const char *hint = candidates_list_and_hint (target, s, candidates);
if (hint)
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index 228fd1b908d..ec501b78bdb 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
@@ -7059,7 +7059,8 @@ aarch64_print_address_internal (FILE *f, machine_mode mode, rtx x,
unsigned int size;
/* Check all addresses are Pmode - including ILP32. */
- gcc_assert (GET_MODE (x) == Pmode);
+ if (GET_MODE (x) != Pmode)
+ output_operand_lossage ("invalid address mode");
if (aarch64_classify_address (&addr, x, mode, true, type))
switch (addr.type)
@@ -10628,11 +10629,21 @@ aarch64_print_hint_for_core_or_arch (const char *str, bool arch)
const struct processor *entry = arch ? all_architectures : all_cores;
for (; entry->name != NULL; entry++)
candidates.safe_push (entry->name);
+
+#ifdef HAVE_LOCAL_CPU_DETECT
+ /* Add also "native" as possible value. */
+ if (arch)
+ candidates.safe_push ("native");
+#endif
+
char *s;
const char *hint = candidates_list_and_hint (str, s, candidates);
if (hint)
inform (input_location, "valid arguments are: %s;"
" did you mean %qs?", s, hint);
+ else
+ inform (input_location, "valid arguments are: %s", s);
+
XDELETEVEC (s);
}
diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h
index e3c52f63683..976f9afae54 100644
--- a/gcc/config/aarch64/aarch64.h
+++ b/gcc/config/aarch64/aarch64.h
@@ -1002,6 +1002,7 @@ extern const char *aarch64_rewrite_mcpu (int argc, const char **argv);
#if defined(__aarch64__)
extern const char *host_detect_local_cpu (int argc, const char **argv);
+#define HAVE_LOCAL_CPU_DETECT
# define EXTRA_SPEC_FUNCTIONS \
{ "local_cpu_detect", host_detect_local_cpu }, \
MCPU_TO_MARCH_SPEC_FUNCTIONS
diff --git a/gcc/config/aarch64/cortex-a57-fma-steering.c b/gcc/config/aarch64/cortex-a57-fma-steering.c
index 92e3d045996..50e5108aa59 100644
--- a/gcc/config/aarch64/cortex-a57-fma-steering.c
+++ b/gcc/config/aarch64/cortex-a57-fma-steering.c
@@ -406,7 +406,7 @@ fma_forest::merge_forest (fma_forest *other_forest)
/* Update root nodes' pointer to forest. */
for (other_root_iter = other_roots->begin ();
- other_root_iter != other_roots->end (); other_root_iter++)
+ other_root_iter != other_roots->end (); ++other_root_iter)
(*other_root_iter)->set_forest (this);
/* Remove other_forest from the list of forests and move its tree roots in
@@ -847,14 +847,13 @@ func_fma_steering::dfs (void (*process_forest) (fma_forest *),
void (*process_node) (fma_forest *, fma_node *),
bool free)
{
- vec<fma_node *> to_process;
+ auto_vec<fma_node *> to_process;
+ auto_vec<fma_node *> to_free;
std::list<fma_forest *>::iterator forest_iter;
- to_process.create (0);
-
/* For each forest. */
for (forest_iter = this->m_fma_forests.begin ();
- forest_iter != this->m_fma_forests.end (); forest_iter++)
+ forest_iter != this->m_fma_forests.end (); ++forest_iter)
{
std::list<fma_root_node *>::iterator root_iter;
@@ -863,7 +862,7 @@ func_fma_steering::dfs (void (*process_forest) (fma_forest *),
/* For each tree root in this forest. */
for (root_iter = (*forest_iter)->get_roots ()->begin ();
- root_iter != (*forest_iter)->get_roots ()->end (); root_iter++)
+ root_iter != (*forest_iter)->get_roots ()->end (); ++root_iter)
{
if (process_root)
process_root (*forest_iter, *root_iter);
@@ -881,28 +880,30 @@ func_fma_steering::dfs (void (*process_forest) (fma_forest *),
if (process_node)
process_node (*forest_iter, node);
- /* Absence of children might indicate an alternate root of a *chain*.
- It's ok to skip it here as the chain will be renamed when
- processing the canonical root for that chain. */
- if (node->get_children ()->empty ())
- continue;
-
for (child_iter = node->get_children ()->begin ();
- child_iter != node->get_children ()->end (); child_iter++)
+ child_iter != node->get_children ()->end (); ++child_iter)
to_process.safe_push (*child_iter);
+
+ /* Defer freeing so that the process_node callback can access the
+ parent and children of the node being processed. */
if (free)
+ to_free.safe_push (node);
+ }
+
+ if (free)
+ {
+ delete *forest_iter;
+
+ while (!to_free.is_empty ())
{
+ fma_node *node = to_free.pop ();
if (node->root_p ())
delete static_cast<fma_root_node *> (node);
else
delete node;
}
}
- if (free)
- delete *forest_iter;
}
-
- to_process.release ();
}
/* Build the dependency trees of FMUL and FMADD/FMSUB instructions. */
diff --git a/gcc/config/alpha/alpha.c b/gcc/config/alpha/alpha.c
index 2f6d118606a..a039f045262 100644
--- a/gcc/config/alpha/alpha.c
+++ b/gcc/config/alpha/alpha.c
@@ -9406,14 +9406,6 @@ alpha_pad_function_end (void)
|| find_reg_note (insn, REG_NORETURN, NULL_RTX)))
continue;
- /* Make sure we do not split a call and its corresponding
- CALL_ARG_LOCATION note. */
- next = NEXT_INSN (insn);
- if (next == NULL)
- continue;
- if (NOTE_P (next) && NOTE_KIND (next) == NOTE_INSN_CALL_ARG_LOCATION)
- insn = next;
-
next = next_active_insn (insn);
if (next)
{
diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c
index 843defd4cda..196d0e4a727 100644
--- a/gcc/config/arc/arc.c
+++ b/gcc/config/arc/arc.c
@@ -7700,10 +7700,7 @@ hwloop_optimize (hwloop_info loop)
#if 0
while (DEBUG_INSN_P (entry_after)
|| (NOTE_P (entry_after)
- && NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK
- /* Make sure we don't split a call and its corresponding
- CALL_ARG_LOCATION note. */
- && NOTE_KIND (entry_after) != NOTE_INSN_CALL_ARG_LOCATION))
+ && NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK))
entry_after = NEXT_INSN (entry_after);
#endif
entry_after = next_nonnote_nondebug_insn_bb (entry_after);
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index 17feba46619..90d62e699bc 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -16556,16 +16556,6 @@ create_fix_barrier (Mfix *fix, HOST_WIDE_INT max_address)
/* Make sure that we found a place to insert the jump. */
gcc_assert (selected);
- /* Make sure we do not split a call and its corresponding
- CALL_ARG_LOCATION note. */
- if (CALL_P (selected))
- {
- rtx_insn *next = NEXT_INSN (selected);
- if (next && NOTE_P (next)
- && NOTE_KIND (next) == NOTE_INSN_CALL_ARG_LOCATION)
- selected = next;
- }
-
/* Create a new JUMP_INSN that branches around a barrier. */
from = emit_jump_insn_after (gen_jump (label), selected);
JUMP_LABEL (from) = label;
diff --git a/gcc/config/arm/arm.h b/gcc/config/arm/arm.h
index 6f3c4f461b9..bbf3937a592 100644
--- a/gcc/config/arm/arm.h
+++ b/gcc/config/arm/arm.h
@@ -2194,6 +2194,7 @@ extern const char *arm_target_thumb_only (int argc, const char **argv);
an ARM chip. */
#if defined(__arm__)
extern const char *host_detect_local_cpu (int argc, const char **argv);
+#define HAVE_LOCAL_CPU_DETECT
# define MCPU_MTUNE_NATIVE_FUNCTIONS \
{ "local_cpu_detect", host_detect_local_cpu },
# define MCPU_MTUNE_NATIVE_SPECS \
diff --git a/gcc/config/arm/t-multilib b/gcc/config/arm/t-multilib
index 2f790097670..3d0c824b4ec 100644
--- a/gcc/config/arm/t-multilib
+++ b/gcc/config/arm/t-multilib
@@ -70,6 +70,7 @@ v8_a_simd_variants := $(call all_feat_combs, simd crypto)
v8_1_a_simd_variants := $(call all_feat_combs, simd crypto)
v8_2_a_simd_variants := $(call all_feat_combs, simd fp16 fp16fml crypto dotprod)
v8_4_a_simd_variants := $(call all_feat_combs, simd fp16 crypto)
+v8_r_nosimd_variants := +crc
ifneq (,$(HAS_APROFILE))
include $(srcdir)/config/arm/t-aprofile
@@ -105,6 +106,14 @@ MULTILIB_MATCHES += march?armv7+fp=march?armv7-r+fp+idiv
MULTILIB_MATCHES += $(foreach ARCH, $(all_early_arch), \
march?armv5te+fp=march?$(ARCH)+fp)
+# Map v8-r down onto common v7 code.
+MULTILIB_MATCHES += march?armv7=march?armv8-r
+MULTILIB_MATCHES += $(foreach ARCH, $(v8_r_nosimd_variants), \
+ march?armv7=march?armv8-r$(ARCH))
+MULTILIB_MATCHES += $(foreach ARCH,+simd +crypto, \
+ march?armv7+fp=march?armv8-r$(ARCH) \
+ march?armv7+fp=march?armv8-r+crc$(ARCH))
+
ifeq (,$(HAS_APROFILE))
# Map all v7-a
diff --git a/gcc/config/c6x/c6x.c b/gcc/config/c6x/c6x.c
index 762e29faa17..f12edfd0821 100644
--- a/gcc/config/c6x/c6x.c
+++ b/gcc/config/c6x/c6x.c
@@ -4637,7 +4637,6 @@ static void
c6x_gen_bundles (void)
{
basic_block bb;
- rtx_insn *insn, *next, *last_call;
FOR_EACH_BB_FN (bb, cfun)
{
@@ -4704,29 +4703,6 @@ c6x_gen_bundles (void)
break;
}
}
- /* Bundling, and emitting nops, can separate
- NOTE_INSN_CALL_ARG_LOCATION from the corresponding calls. Fix
- that up here. */
- last_call = NULL;
- for (insn = get_insns (); insn; insn = next)
- {
- next = NEXT_INSN (insn);
- if (CALL_P (insn)
- || (INSN_P (insn) && GET_CODE (PATTERN (insn)) == SEQUENCE
- && CALL_P (XVECEXP (PATTERN (insn), 0, 0))))
- last_call = insn;
- if (!NOTE_P (insn) || NOTE_KIND (insn) != NOTE_INSN_CALL_ARG_LOCATION)
- continue;
- if (NEXT_INSN (last_call) == insn)
- continue;
- SET_NEXT_INSN (PREV_INSN (insn)) = NEXT_INSN (insn);
- SET_PREV_INSN (NEXT_INSN (insn)) = PREV_INSN (insn);
- SET_PREV_INSN (insn) = last_call;
- SET_NEXT_INSN (insn) = NEXT_INSN (last_call);
- SET_PREV_INSN (NEXT_INSN (insn)) = insn;
- SET_NEXT_INSN (PREV_INSN (insn)) = insn;
- last_call = insn;
- }
}
/* Emit a NOP instruction for CYCLES cycles after insn AFTER. Return it. */
diff --git a/gcc/config/frv/frv.c b/gcc/config/frv/frv.c
index 3bf770b3649..56027bd67d9 100644
--- a/gcc/config/frv/frv.c
+++ b/gcc/config/frv/frv.c
@@ -1415,8 +1415,6 @@ frv_function_contains_far_jump (void)
static void
frv_function_prologue (FILE *file)
{
- rtx_insn *insn, *next, *last_call;
-
/* If no frame was created, check whether the function uses a call
instruction to implement a far jump. If so, save the link in gr3 and
replace all returns to LR with returns to GR3. GR3 is used because it
@@ -1457,32 +1455,6 @@ frv_function_prologue (FILE *file)
/* Allow the garbage collector to free the nops created by frv_reorg. */
memset (frv_nops, 0, sizeof (frv_nops));
-
- /* Locate CALL_ARG_LOCATION notes that have been misplaced
- and move them back to where they should be located. */
- last_call = NULL;
- for (insn = get_insns (); insn; insn = next)
- {
- next = NEXT_INSN (insn);
- if (CALL_P (insn)
- || (INSN_P (insn) && GET_CODE (PATTERN (insn)) == SEQUENCE
- && CALL_P (XVECEXP (PATTERN (insn), 0, 0))))
- last_call = insn;
-
- if (!NOTE_P (insn) || NOTE_KIND (insn) != NOTE_INSN_CALL_ARG_LOCATION)
- continue;
-
- if (NEXT_INSN (last_call) == insn)
- continue;
-
- SET_NEXT_INSN (PREV_INSN (insn)) = NEXT_INSN (insn);
- SET_PREV_INSN (NEXT_INSN (insn)) = PREV_INSN (insn);
- SET_PREV_INSN (insn) = last_call;
- SET_NEXT_INSN (insn) = NEXT_INSN (last_call);
- SET_PREV_INSN (NEXT_INSN (insn)) = insn;
- SET_NEXT_INSN (PREV_INSN (insn)) = insn;
- last_call = insn;
- }
}
diff --git a/gcc/config/i386/cetintrin.h b/gcc/config/i386/cetintrin.h
index 7a4b4d8bf24..e9abcf3c580 100644
--- a/gcc/config/i386/cetintrin.h
+++ b/gcc/config/i386/cetintrin.h
@@ -34,37 +34,32 @@
#define __DISABLE_SHSTK__
#endif /* __SHSTK__ */
-extern __inline unsigned int
-__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_rdsspd (unsigned int __B)
-{
- return __builtin_ia32_rdsspd (__B);
-}
-
#ifdef __x86_64__
extern __inline unsigned long long
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_rdsspq (unsigned long long __B)
+_get_ssp (void)
{
- return __builtin_ia32_rdsspq (__B);
+ return __builtin_ia32_rdsspq ();
}
-#endif
-
-extern __inline void
+#else
+extern __inline unsigned int
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_incsspd (unsigned int __B)
+_get_ssp (void)
{
- __builtin_ia32_incsspd (__B);
+ return __builtin_ia32_rdsspd ();
}
+#endif
-#ifdef __x86_64__
extern __inline void
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
-_incsspq (unsigned long long __B)
+_inc_ssp (unsigned int __B)
{
- __builtin_ia32_incsspq (__B);
-}
+#ifdef __x86_64__
+ __builtin_ia32_incsspq ((unsigned long long) __B);
+#else
+ __builtin_ia32_incsspd (__B);
#endif
+}
extern __inline void
__attribute__((__gnu_inline__, __always_inline__, __artificial__))
diff --git a/gcc/config/i386/i386-builtin-types.def b/gcc/config/i386/i386-builtin-types.def
index ba335490489..08360d23cbb 100644
--- a/gcc/config/i386/i386-builtin-types.def
+++ b/gcc/config/i386/i386-builtin-types.def
@@ -192,6 +192,7 @@ DEF_POINTER_TYPE (PCV64QI, V64QI, CONST)
DEF_FUNCTION_TYPE (FLOAT128)
DEF_FUNCTION_TYPE (UINT64)
DEF_FUNCTION_TYPE (UNSIGNED)
+DEF_FUNCTION_TYPE (UINT)
DEF_FUNCTION_TYPE (USHORT)
DEF_FUNCTION_TYPE (INT)
DEF_FUNCTION_TYPE (VOID)
diff --git a/gcc/config/i386/i386-builtin.def b/gcc/config/i386/i386-builtin.def
index 169189d962c..a48019499bd 100644
--- a/gcc/config/i386/i386-builtin.def
+++ b/gcc/config/i386/i386-builtin.def
@@ -3043,7 +3043,7 @@ BDESC (OPTION_MASK_ISA_SHSTK, CODE_FOR_clrssbsy, "__builtin_ia32_clrssbsy", IX86
BDESC_END (CET, CET_NORMAL)
BDESC_FIRST (cet_rdssp, CET_NORMAL,
- OPTION_MASK_ISA_SHSTK, CODE_FOR_rdsspsi, "__builtin_ia32_rdsspd", IX86_BUILTIN_RDSSPD, UNKNOWN, (int) UINT_FTYPE_UINT)
-BDESC (OPTION_MASK_ISA_SHSTK | OPTION_MASK_ISA_64BIT, CODE_FOR_rdsspdi, "__builtin_ia32_rdsspq", IX86_BUILTIN_RDSSPQ, UNKNOWN, (int) UINT64_FTYPE_UINT64)
+ OPTION_MASK_ISA_SHSTK, CODE_FOR_rdsspsi, "__builtin_ia32_rdsspd", IX86_BUILTIN_RDSSPD, UNKNOWN, (int) UINT_FTYPE_VOID)
+BDESC (OPTION_MASK_ISA_SHSTK | OPTION_MASK_ISA_64BIT, CODE_FOR_rdsspdi, "__builtin_ia32_rdsspq", IX86_BUILTIN_RDSSPQ, UNKNOWN, (int) UINT64_FTYPE_VOID)
BDESC_END (CET_NORMAL, MAX)
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 020eef9fd7b..640c5921863 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -2619,16 +2619,8 @@ rest_of_insert_endbranch (void)
/* Generate ENDBRANCH after CALL, which can return more than
twice, setjmp-like functions. */
- /* Skip notes that must immediately follow the call insn. */
- rtx_insn *next_insn = insn;
- if (NEXT_INSN (insn)
- && NOTE_P (NEXT_INSN (insn))
- && (NOTE_KIND (NEXT_INSN (insn))
- == NOTE_INSN_CALL_ARG_LOCATION))
- next_insn = NEXT_INSN (insn);
-
cet_eb = gen_nop_endbr ();
- emit_insn_after_setloc (cet_eb, next_insn, INSN_LOCATION (insn));
+ emit_insn_after_setloc (cet_eb, insn, INSN_LOCATION (insn));
continue;
}
@@ -3470,8 +3462,9 @@ ix86_option_override_internal (bool main_args_p,
const wide_int_bitmask PTA_SKYLAKE_AVX512 = PTA_SKYLAKE | PTA_AVX512F
| PTA_AVX512CD | PTA_AVX512VL | PTA_AVX512BW | PTA_AVX512DQ | PTA_PKU
| PTA_CLWB;
- const wide_int_bitmask PTA_CANNONLAKE = PTA_SKYLAKE_AVX512 | PTA_AVX512VBMI
- | PTA_AVX512IFMA | PTA_SHA;
+ const wide_int_bitmask PTA_CANNONLAKE = PTA_SKYLAKE | PTA_AVX512F
+ | PTA_AVX512CD | PTA_AVX512VL | PTA_AVX512BW | PTA_AVX512DQ | PTA_PKU
+ | PTA_AVX512VBMI | PTA_AVX512IFMA | PTA_SHA;
const wide_int_bitmask PTA_ICELAKE = PTA_CANNONLAKE | PTA_AVX512VNNI
| PTA_GFNI | PTA_VAES | PTA_AVX512VBMI2 | PTA_VPCLMULQDQ | PTA_AVX512BITALG
| PTA_RDPID;
@@ -4200,6 +4193,11 @@ ix86_option_override_internal (bool main_args_p,
|| ((processor_alias_table[i].flags & PTA_64BIT) != 0)))
candidates.safe_push (processor_alias_table[i].name);
+#ifdef HAVE_LOCAL_CPU_DETECT
+ /* Add also "native" as possible value. */
+ candidates.safe_push ("native");
+#endif
+
char *s;
const char *hint
= candidates_list_and_hint (opts->x_ix86_arch_string, s, candidates);
@@ -4272,6 +4270,11 @@ ix86_option_override_internal (bool main_args_p,
|| ((processor_alias_table[i].flags & PTA_64BIT) != 0))
candidates.safe_push (processor_alias_table[i].name);
+#ifdef HAVE_LOCAL_CPU_DETECT
+ /* Add also "native" as possible value. */
+ candidates.safe_push ("native");
+#endif
+
char *s;
const char *hint
= candidates_list_and_hint (opts->x_ix86_tune_string, s, candidates);
@@ -5895,6 +5898,16 @@ ix86_set_indirect_branch_type (tree fndecl)
((cfun->machine->indirect_branch_type
== indirect_branch_thunk_extern)
? "thunk-extern" : "thunk"));
+
+ /* -mindirect-branch=thunk-extern, -fcf-protection=branch and
+ -fcheck-pointer-bounds are not compatible. */
+ if ((cfun->machine->indirect_branch_type
+ == indirect_branch_thunk_extern)
+ && flag_check_pointer_bounds
+ && (flag_cf_protection & CF_BRANCH) != 0)
+ error ("%<-mindirect-branch=thunk-extern%>, "
+ "%<-fcf-protection=branch%> and "
+ "%<-fcheck-pointer-bounds%> are not compatible");
}
if (cfun->machine->function_return_type == indirect_branch_unset)
@@ -10803,18 +10816,62 @@ static int indirect_thunks_bnd_used;
# define INDIRECT_LABEL "LIND"
#endif
+/* Indicate what prefix is needed for an indirect branch. */
+enum indirect_thunk_prefix
+{
+ indirect_thunk_prefix_none,
+ indirect_thunk_prefix_bnd,
+ indirect_thunk_prefix_nt
+};
+
+/* Return the prefix needed for an indirect branch INSN. */
+
+enum indirect_thunk_prefix
+indirect_thunk_need_prefix (rtx_insn *insn)
+{
+ enum indirect_thunk_prefix need_prefix;
+ if (ix86_bnd_prefixed_insn_p (insn))
+ need_prefix = indirect_thunk_prefix_bnd;
+ else if ((cfun->machine->indirect_branch_type
+ == indirect_branch_thunk_extern)
+ && ix86_notrack_prefixed_insn_p (insn))
+ {
+ /* NOTRACK prefix is only used with external thunk so that it
+ can be properly updated to support CET at run-time. */
+ need_prefix = indirect_thunk_prefix_nt;
+ }
+ else
+ need_prefix = indirect_thunk_prefix_none;
+ return need_prefix;
+}
+
/* Fills in the label name that should be used for the indirect thunk. */
static void
indirect_thunk_name (char name[32], unsigned int regno,
- bool need_bnd_p, bool ret_p)
+ enum indirect_thunk_prefix need_prefix,
+ bool ret_p)
{
if (regno != INVALID_REGNUM && ret_p)
gcc_unreachable ();
if (USE_HIDDEN_LINKONCE)
{
- const char *bnd = need_bnd_p ? "_bnd" : "";
+ const char *prefix;
+
+ if (need_prefix == indirect_thunk_prefix_bnd)
+ prefix = "_bnd";
+ else if (need_prefix == indirect_thunk_prefix_nt
+ && regno != INVALID_REGNUM)
+ {
+ /* NOTRACK prefix is only used with external thunk via
+ register so that NOTRACK prefix can be added to indirect
+ branch via register to support CET at run-time. */
+ prefix = "_nt";
+ }
+ else
+ prefix = "";
+
if (regno != INVALID_REGNUM)
{
const char *reg_prefix;
@@ -10823,19 +10880,19 @@ indirect_thunk_name (char name[32], unsigned int regno,
else
reg_prefix = "";
sprintf (name, "__x86_indirect_thunk%s_%s%s",
- bnd, reg_prefix, reg_names[regno]);
+ prefix, reg_prefix, reg_names[regno]);
}
else
{
const char *ret = ret_p ? "return" : "indirect";
- sprintf (name, "__x86_%s_thunk%s", ret, bnd);
+ sprintf (name, "__x86_%s_thunk%s", ret, prefix);
}
}
else
{
if (regno != INVALID_REGNUM)
{
- if (need_bnd_p)
+ if (need_prefix == indirect_thunk_prefix_bnd)
ASM_GENERATE_INTERNAL_LABEL (name, "LITBR", regno);
else
ASM_GENERATE_INTERNAL_LABEL (name, "LITR", regno);
@@ -10844,14 +10901,14 @@ indirect_thunk_name (char name[32], unsigned int regno,
{
if (ret_p)
{
- if (need_bnd_p)
+ if (need_prefix == indirect_thunk_prefix_bnd)
ASM_GENERATE_INTERNAL_LABEL (name, "LRTB", 0);
else
ASM_GENERATE_INTERNAL_LABEL (name, "LRT", 0);
}
else
{
- if (need_bnd_p)
+ if (need_prefix == indirect_thunk_prefix_bnd)
ASM_GENERATE_INTERNAL_LABEL (name, "LITB", 0);
else
ASM_GENERATE_INTERNAL_LABEL (name, "LIT", 0);
@@ -10887,7 +10944,8 @@ indirect_thunk_name (char name[32], unsigned int regno,
*/
static void
-output_indirect_thunk (bool need_bnd_p, unsigned int regno)
+output_indirect_thunk (enum indirect_thunk_prefix need_prefix,
+ unsigned int regno)
{
char indirectlabel1[32];
char indirectlabel2[32];
@@ -10898,7 +10956,7 @@ output_indirect_thunk (bool need_bnd_p, unsigned int regno)
indirectlabelno++);
/* Call */
- if (need_bnd_p)
+ if (need_prefix == indirect_thunk_prefix_bnd)
fputs ("\tbnd call\t", asm_out_file);
else
fputs ("\tcall\t", asm_out_file);
@@ -10935,7 +10993,7 @@ output_indirect_thunk (bool need_bnd_p, unsigned int regno)
output_asm_insn ("lea\t{%E1, %0|%0, %E1}", xops);
}
- if (need_bnd_p)
+ if (need_prefix == indirect_thunk_prefix_bnd)
fputs ("\tbnd ret\n", asm_out_file);
else
fputs ("\tret\n", asm_out_file);
@@ -10947,13 +11005,14 @@ output_indirect_thunk (bool need_bnd_p, unsigned int regno)
on the top of stack. */
static void
-output_indirect_thunk_function (bool need_bnd_p, unsigned int regno)
+output_indirect_thunk_function (enum indirect_thunk_prefix need_prefix,
+ unsigned int regno)
{
char name[32];
tree decl;
/* Create __x86_indirect_thunk/__x86_indirect_thunk_bnd. */
- indirect_thunk_name (name, regno, need_bnd_p, false);
+ indirect_thunk_name (name, regno, need_prefix, false);
decl = build_decl (BUILTINS_LOCATION, FUNCTION_DECL,
get_identifier (name),
build_function_type_list (void_type_node, NULL_TREE));
@@ -11001,7 +11060,7 @@ output_indirect_thunk_function (bool need_bnd_p, unsigned int regno)
/* Create alias for __x86.return_thunk/__x86.return_thunk_bnd. */
char alias[32];
- indirect_thunk_name (alias, regno, need_bnd_p, true);
+ indirect_thunk_name (alias, regno, need_prefix, true);
#if TARGET_MACHO
if (TARGET_MACHO)
{
@@ -11037,7 +11096,7 @@ output_indirect_thunk_function (bool need_bnd_p, unsigned int regno)
/* Make sure unwind info is emitted for the thunk if needed. */
final_start_function (emit_barrier (), asm_out_file, 1);
- output_indirect_thunk (need_bnd_p, regno);
+ output_indirect_thunk (need_prefix, regno);
final_end_function ();
init_insn_lengths ();
@@ -11073,18 +11132,22 @@ ix86_code_end (void)
unsigned int regno;
if (indirect_thunk_needed)
- output_indirect_thunk_function (false, INVALID_REGNUM);
+ output_indirect_thunk_function (indirect_thunk_prefix_none,
+ INVALID_REGNUM);
if (indirect_thunk_bnd_needed)
- output_indirect_thunk_function (true, INVALID_REGNUM);
+ output_indirect_thunk_function (indirect_thunk_prefix_bnd,
+ INVALID_REGNUM);
for (regno = FIRST_REX_INT_REG; regno <= LAST_REX_INT_REG; regno++)
{
unsigned int i = regno - FIRST_REX_INT_REG + LAST_INT_REG + 1;
if ((indirect_thunks_used & (1 << i)))
- output_indirect_thunk_function (false, regno);
+ output_indirect_thunk_function (indirect_thunk_prefix_none,
+ regno);
if ((indirect_thunks_bnd_used & (1 << i)))
- output_indirect_thunk_function (true, regno);
+ output_indirect_thunk_function (indirect_thunk_prefix_bnd,
+ regno);
}
for (regno = FIRST_INT_REG; regno <= LAST_INT_REG; regno++)
@@ -11093,10 +11156,12 @@ ix86_code_end (void)
tree decl;
if ((indirect_thunks_used & (1 << regno)))
- output_indirect_thunk_function (false, regno);
+ output_indirect_thunk_function (indirect_thunk_prefix_none,
+ regno);
if ((indirect_thunks_bnd_used & (1 << regno)))
- output_indirect_thunk_function (true, regno);
+ output_indirect_thunk_function (indirect_thunk_prefix_bnd,
+ regno);
if (!(pic_labels_used & (1 << regno)))
continue;
@@ -28673,7 +28738,8 @@ ix86_output_indirect_branch_via_reg (rtx call_op, bool sibcall_p)
{
char thunk_name_buf[32];
char *thunk_name;
- bool need_bnd_p = ix86_bnd_prefixed_insn_p (current_output_insn);
+ enum indirect_thunk_prefix need_prefix
+ = indirect_thunk_need_prefix (current_output_insn);
int regno = REGNO (call_op);
if (cfun->machine->indirect_branch_type
@@ -28684,12 +28750,12 @@ ix86_output_indirect_branch_via_reg (rtx call_op, bool sibcall_p)
int i = regno;
if (i >= FIRST_REX_INT_REG)
i -= (FIRST_REX_INT_REG - LAST_INT_REG - 1);
- if (need_bnd_p)
+ if (need_prefix == indirect_thunk_prefix_bnd)
indirect_thunks_bnd_used |= 1 << i;
else
indirect_thunks_used |= 1 << i;
}
- indirect_thunk_name (thunk_name_buf, regno, need_bnd_p, false);
+ indirect_thunk_name (thunk_name_buf, regno, need_prefix, false);
thunk_name = thunk_name_buf;
}
else
@@ -28699,19 +28765,19 @@ ix86_output_indirect_branch_via_reg (rtx call_op, bool sibcall_p)
{
if (thunk_name != NULL)
{
- if (need_bnd_p)
+ if (need_prefix == indirect_thunk_prefix_bnd)
fprintf (asm_out_file, "\tbnd jmp\t%s\n", thunk_name);
else
fprintf (asm_out_file, "\tjmp\t%s\n", thunk_name);
}
else
- output_indirect_thunk (need_bnd_p, regno);
+ output_indirect_thunk (need_prefix, regno);
}
else
{
if (thunk_name != NULL)
{
- if (need_bnd_p)
+ if (need_prefix == indirect_thunk_prefix_bnd)
fprintf (asm_out_file, "\tbnd call\t%s\n", thunk_name);
else
fprintf (asm_out_file, "\tcall\t%s\n", thunk_name);
@@ -28729,7 +28795,7 @@ ix86_output_indirect_branch_via_reg (rtx call_op, bool sibcall_p)
indirectlabelno++);
/* Jump. */
- if (need_bnd_p)
+ if (need_prefix == indirect_thunk_prefix_bnd)
fputs ("\tbnd jmp\t", asm_out_file);
else
fputs ("\tjmp\t", asm_out_file);
@@ -28740,18 +28806,18 @@ ix86_output_indirect_branch_via_reg (rtx call_op, bool sibcall_p)
if (thunk_name != NULL)
{
- if (need_bnd_p)
+ if (need_prefix == indirect_thunk_prefix_bnd)
fprintf (asm_out_file, "\tbnd jmp\t%s\n", thunk_name);
else
fprintf (asm_out_file, "\tjmp\t%s\n", thunk_name);
}
else
- output_indirect_thunk (need_bnd_p, regno);
+ output_indirect_thunk (need_prefix, regno);
ASM_OUTPUT_INTERNAL_LABEL (asm_out_file, indirectlabel2);
/* Call. */
- if (need_bnd_p)
+ if (need_prefix == indirect_thunk_prefix_bnd)
fputs ("\tbnd call\t", asm_out_file);
else
fputs ("\tcall\t", asm_out_file);
@@ -28785,7 +28851,8 @@ ix86_output_indirect_branch_via_push (rtx call_op, const char *xasm,
char thunk_name_buf[32];
char *thunk_name;
char push_buf[64];
- bool need_bnd_p = ix86_bnd_prefixed_insn_p (current_output_insn);
+ enum indirect_thunk_prefix need_prefix
+ = indirect_thunk_need_prefix (current_output_insn);
int regno = -1;
if (cfun->machine->indirect_branch_type
@@ -28793,12 +28860,12 @@ ix86_output_indirect_branch_via_push (rtx call_op, const char *xasm,
{
if (cfun->machine->indirect_branch_type == indirect_branch_thunk)
{
- if (need_bnd_p)
+ if (need_prefix == indirect_thunk_prefix_bnd)
indirect_thunk_bnd_needed = true;
else
indirect_thunk_needed = true;
}
- indirect_thunk_name (thunk_name_buf, regno, need_bnd_p, false);
+ indirect_thunk_name (thunk_name_buf, regno, need_prefix, false);
thunk_name = thunk_name_buf;
}
else
@@ -28812,13 +28879,13 @@ ix86_output_indirect_branch_via_push (rtx call_op, const char *xasm,
output_asm_insn (push_buf, &call_op);
if (thunk_name != NULL)
{
- if (need_bnd_p)
+ if (need_prefix == indirect_thunk_prefix_bnd)
fprintf (asm_out_file, "\tbnd jmp\t%s\n", thunk_name);
else
fprintf (asm_out_file, "\tjmp\t%s\n", thunk_name);
}
else
- output_indirect_thunk (need_bnd_p, regno);
+ output_indirect_thunk (need_prefix, regno);
}
else
{
@@ -28833,7 +28900,7 @@ ix86_output_indirect_branch_via_push (rtx call_op, const char *xasm,
indirectlabelno++);
/* Jump. */
- if (need_bnd_p)
+ if (need_prefix == indirect_thunk_prefix_bnd)
fputs ("\tbnd jmp\t", asm_out_file);
else
fputs ("\tjmp\t", asm_out_file);
@@ -28879,18 +28946,18 @@ ix86_output_indirect_branch_via_push (rtx call_op, const char *xasm,
if (thunk_name != NULL)
{
- if (need_bnd_p)
+ if (need_prefix == indirect_thunk_prefix_bnd)
fprintf (asm_out_file, "\tbnd jmp\t%s\n", thunk_name);
else
fprintf (asm_out_file, "\tjmp\t%s\n", thunk_name);
}
else
- output_indirect_thunk (need_bnd_p, regno);
+ output_indirect_thunk (need_prefix, regno);
ASM_OUTPUT_INTERNAL_LABEL (asm_out_file, indirectlabel2);
/* Call. */
- if (need_bnd_p)
+ if (need_prefix == indirect_thunk_prefix_bnd)
fputs ("\tbnd call\t", asm_out_file);
else
fputs ("\tcall\t", asm_out_file);
@@ -28942,16 +29009,17 @@ ix86_output_function_return (bool long_p)
if (cfun->machine->function_return_type != indirect_branch_keep)
{
char thunk_name[32];
- bool need_bnd_p = ix86_bnd_prefixed_insn_p (current_output_insn);
+ enum indirect_thunk_prefix need_prefix
+ = indirect_thunk_need_prefix (current_output_insn);
if (cfun->machine->function_return_type
!= indirect_branch_thunk_inline)
{
bool need_thunk = (cfun->machine->function_return_type
== indirect_branch_thunk);
- indirect_thunk_name (thunk_name, INVALID_REGNUM, need_bnd_p,
+ indirect_thunk_name (thunk_name, INVALID_REGNUM, need_prefix,
true);
- if (need_bnd_p)
+ if (need_prefix == indirect_thunk_prefix_bnd)
{
indirect_thunk_bnd_needed |= need_thunk;
fprintf (asm_out_file, "\tbnd jmp\t%s\n", thunk_name);
@@ -28963,7 +29031,7 @@ ix86_output_function_return (bool long_p)
}
}
else
- output_indirect_thunk (need_bnd_p, INVALID_REGNUM);
+ output_indirect_thunk (need_prefix, INVALID_REGNUM);
return "";
}
@@ -35708,6 +35776,7 @@ ix86_expand_special_args_builtin (const struct builtin_description *d,
case INT_FTYPE_VOID:
case USHORT_FTYPE_VOID:
case UINT64_FTYPE_VOID:
+ case UINT_FTYPE_VOID:
case UNSIGNED_FTYPE_VOID:
nargs = 0;
klass = load;
@@ -38497,7 +38566,7 @@ s4fma_expand:
&& fcode <= IX86_BUILTIN__BDESC_CET_NORMAL_LAST)
{
i = fcode - IX86_BUILTIN__BDESC_CET_NORMAL_FIRST;
- return ix86_expand_args_builtin (bdesc_cet_rdssp + i, exp,
+ return ix86_expand_special_args_builtin (bdesc_cet_rdssp + i, exp,
target);
}
@@ -42126,9 +42195,7 @@ ix86_seh_fixup_eh_fallthru (void)
/* Do not separate calls from their debug information. */
for (next = NEXT_INSN (insn); next != NULL; next = NEXT_INSN (next))
- if (NOTE_P (next)
- && (NOTE_KIND (next) == NOTE_INSN_VAR_LOCATION
- || NOTE_KIND (next) == NOTE_INSN_CALL_ARG_LOCATION))
+ if (NOTE_P (next) && NOTE_KIND (next) == NOTE_INSN_VAR_LOCATION)
insn = next;
else
break;
@@ -45904,7 +45971,18 @@ ix86_builtin_vectorization_cost (enum vect_cost_for_stmt type_of_cost,
ix86_cost->sse_op, true);
case vec_construct:
- return ix86_vec_cost (mode, ix86_cost->sse_op, false);
+ {
+ /* N element inserts. */
+ int cost = ix86_vec_cost (mode, ix86_cost->sse_op, false);
+ /* One vinserti128 for combining two SSE vectors for AVX256. */
+ if (GET_MODE_BITSIZE (mode) == 256)
+ cost += ix86_vec_cost (mode, ix86_cost->addss, true);
+ /* One vinserti64x4 and two vinserti128 for combining SSE
+ and AVX256 vectors to AVX512. */
+ else if (GET_MODE_BITSIZE (mode) == 512)
+ cost += 3 * ix86_vec_cost (mode, ix86_cost->addss, true);
+ return cost;
+ }
default:
gcc_unreachable ();
@@ -50243,6 +50321,18 @@ ix86_add_stmt_cost (void *data, int count, enum vect_cost_for_stmt kind,
break;
}
}
+ /* If we do elementwise loads into a vector then we are bound by
+ latency and execution resources for the many scalar loads
+ (AGU and load ports). Try to account for this by scaling the
+ construction cost by the number of elements involved. */
+ if (kind == vec_construct
+ && stmt_info
+ && stmt_info->type == load_vec_info_type
+ && stmt_info->memory_access_type == VMAT_ELEMENTWISE)
+ {
+ stmt_cost = ix86_builtin_vectorization_cost (kind, vectype, misalign);
+ stmt_cost *= TYPE_VECTOR_SUBPARTS (vectype);
+ }
if (stmt_cost == -1)
stmt_cost = ix86_builtin_vectorization_cost (kind, vectype, misalign);
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index a4832bf696f..3998053a506 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -18391,8 +18391,8 @@
reg_ssp = gen_reg_rtx (word_mode);
emit_insn (gen_rtx_SET (reg_ssp, const0_rtx));
emit_insn ((word_mode == SImode)
- ? gen_rdsspsi (reg_ssp, reg_ssp)
- : gen_rdsspdi (reg_ssp, reg_ssp));
+ ? gen_rdsspsi (reg_ssp)
+ : gen_rdsspdi (reg_ssp));
emit_move_insn (mem, reg_ssp);
}
DONE;
@@ -18437,8 +18437,8 @@
reg_ssp = gen_reg_rtx (word_mode);
emit_insn (gen_rtx_SET (reg_ssp, const0_rtx));
emit_insn ((word_mode == SImode)
- ? gen_rdsspsi (reg_ssp, reg_ssp)
- : gen_rdsspdi (reg_ssp, reg_ssp));
+ ? gen_rdsspsi (reg_ssp)
+ : gen_rdsspdi (reg_ssp));
mem_buf = gen_rtx_MEM (word_mode,
plus_constant (Pmode, operands[0],
3 * GET_MODE_SIZE (ptr_mode)));
@@ -20167,12 +20167,10 @@
;; CET instructions
(define_insn "rdssp<mode>"
[(set (match_operand:SWI48x 0 "register_operand" "=r")
- (unspec_volatile:SWI48x
- [(match_operand:SWI48x 1 "register_operand" "0")]
- UNSPECV_NOP_RDSSP))]
+ (unspec_volatile:SWI48x [(const_int 0)] UNSPECV_NOP_RDSSP))]
"TARGET_SHSTK"
- "rdssp<mskmodesuffix>\t%0"
- [(set_attr "length" "4")
+ "xor{l}\t%k0, %k0\n\trdssp<mskmodesuffix>\t%0"
+ [(set_attr "length" "6")
(set_attr "type" "other")])
(define_insn "incssp<mode>"
diff --git a/gcc/config/iq2000/iq2000.c b/gcc/config/iq2000/iq2000.c
index 18588084c10..ee89ced0e2f 100644
--- a/gcc/config/iq2000/iq2000.c
+++ b/gcc/config/iq2000/iq2000.c
@@ -1578,13 +1578,7 @@ final_prescan_insn (rtx_insn *insn, rtx opvec[] ATTRIBUTE_UNUSED,
|| (GET_CODE (PATTERN (insn)) == RETURN))
&& NEXT_INSN (PREV_INSN (insn)) == insn)
{
- rtx_insn *tmp = insn;
- while (NEXT_INSN (tmp)
- && NOTE_P (NEXT_INSN (tmp))
- && NOTE_KIND (NEXT_INSN (tmp)) == NOTE_INSN_CALL_ARG_LOCATION)
- tmp = NEXT_INSN (tmp);
-
- rtx_insn *nop_insn = emit_insn_after (gen_nop (), tmp);
+ rtx_insn *nop_insn = emit_insn_after (gen_nop (), insn);
INSN_ADDRESSES_NEW (nop_insn, -1);
}
diff --git a/gcc/config/msp430/msp430.c b/gcc/config/msp430/msp430.c
index 83e9e38af4c..a8fed123f7a 100644
--- a/gcc/config/msp430/msp430.c
+++ b/gcc/config/msp430/msp430.c
@@ -914,6 +914,8 @@ msp430_hard_regno_nregs (unsigned int, machine_mode mode)
{
if (mode == PSImode && msp430x)
return 1;
+ if (mode == CPSImode && msp430x)
+ return 2;
return ((GET_MODE_SIZE (mode) + UNITS_PER_WORD - 1)
/ UNITS_PER_WORD);
}
@@ -936,6 +938,8 @@ msp430_hard_regno_nregs_with_padding (int regno ATTRIBUTE_UNUSED,
{
if (mode == PSImode)
return 2;
+ if (mode == CPSImode)
+ return 4;
return msp430_hard_regno_nregs (regno, mode);
}
diff --git a/gcc/config/pa/pa.md b/gcc/config/pa/pa.md
index e581aadd15e..e748f053651 100644
--- a/gcc/config/pa/pa.md
+++ b/gcc/config/pa/pa.md
@@ -2536,24 +2536,40 @@
xoperands[0] = operands[0];
xoperands[1] = operands[1];
- xoperands[2] = gen_label_rtx ();
- (*targetm.asm_out.internal_label) (asm_out_file, \"L\",
- CODE_LABEL_NUMBER (xoperands[2]));
- output_asm_insn (\"mfia %0\", xoperands);
-
- /* If we're trying to load the address of a label that happens to be
- close, then we can use a shorter sequence. */
if (GET_CODE (operands[1]) == LABEL_REF
- && !LABEL_REF_NONLOCAL_P (operands[1])
- && INSN_ADDRESSES_SET_P ()
- && abs (INSN_ADDRESSES (INSN_UID (XEXP (operands[1], 0)))
- - INSN_ADDRESSES (INSN_UID (insn))) < 8100)
- output_asm_insn (\"ldo %1-%2(%0),%0\", xoperands);
+ && !LABEL_REF_NONLOCAL_P (operands[1]))
+ {
+ xoperands[2] = gen_label_rtx ();
+ (*targetm.asm_out.internal_label) (asm_out_file, \"L\",
+ CODE_LABEL_NUMBER (xoperands[2]));
+ output_asm_insn (\"mfia %0\", xoperands);
+
+ /* If we're trying to load the address of a label that happens to be
+ close, then we can use a shorter sequence. */
+ if (INSN_ADDRESSES_SET_P ()
+ && abs (INSN_ADDRESSES (INSN_UID (XEXP (operands[1], 0)))
+ - INSN_ADDRESSES (INSN_UID (insn))) < 8100)
+ output_asm_insn (\"ldo %1-%2(%0),%0\", xoperands);
+ else
+ {
+ output_asm_insn (\"addil L%%%1-%2,%0\", xoperands);
+ output_asm_insn (\"ldo R%%%1-%2(%0),%0\", xoperands);
+ }
+ }
else
{
- output_asm_insn (\"addil L%%%1-%2,%0\", xoperands);
- output_asm_insn (\"ldo R%%%1-%2(%0),%0\", xoperands);
+ /* Load using linkage table. */
+ if (TARGET_64BIT)
+ {
+ output_asm_insn (\"addil LT%%%1,%%r27\", xoperands);
+ output_asm_insn (\"ldd RT%%%1(%0),%0\", xoperands);
+ }
+ else
+ {
+ output_asm_insn (\"addil LT%%%1,%%r19\", xoperands);
+ output_asm_insn (\"ldw RT%%%1(%0),%0\", xoperands);
+ }
}
return \"\";
}"
@@ -2570,25 +2586,33 @@
xoperands[0] = operands[0];
xoperands[1] = operands[1];
- xoperands[2] = gen_label_rtx ();
- output_asm_insn (\"bl .+8,%0\", xoperands);
- output_asm_insn (\"depi 0,31,2,%0\", xoperands);
- (*targetm.asm_out.internal_label) (asm_out_file, \"L\",
- CODE_LABEL_NUMBER (xoperands[2]));
-
- /* If we're trying to load the address of a label that happens to be
- close, then we can use a shorter sequence. */
if (GET_CODE (operands[1]) == LABEL_REF
- && !LABEL_REF_NONLOCAL_P (operands[1])
- && INSN_ADDRESSES_SET_P ()
- && abs (INSN_ADDRESSES (INSN_UID (XEXP (operands[1], 0)))
- - INSN_ADDRESSES (INSN_UID (insn))) < 8100)
- output_asm_insn (\"ldo %1-%2(%0),%0\", xoperands);
+ && !LABEL_REF_NONLOCAL_P (operands[1]))
+ {
+ xoperands[2] = gen_label_rtx ();
+ output_asm_insn (\"bl .+8,%0\", xoperands);
+ output_asm_insn (\"depi 0,31,2,%0\", xoperands);
+ (*targetm.asm_out.internal_label) (asm_out_file, \"L\",
+ CODE_LABEL_NUMBER (xoperands[2]));
+
+ /* If we're trying to load the address of a label that happens to be
+ close, then we can use a shorter sequence. */
+ if (INSN_ADDRESSES_SET_P ()
+ && abs (INSN_ADDRESSES (INSN_UID (XEXP (operands[1], 0)))
+ - INSN_ADDRESSES (INSN_UID (insn))) < 8100)
+ output_asm_insn (\"ldo %1-%2(%0),%0\", xoperands);
+ else
+ {
+ output_asm_insn (\"addil L%%%1-%2,%0\", xoperands);
+ output_asm_insn (\"ldo R%%%1-%2(%0),%0\", xoperands);
+ }
+ }
else
{
- output_asm_insn (\"addil L%%%1-%2,%0\", xoperands);
- output_asm_insn (\"ldo R%%%1-%2(%0),%0\", xoperands);
+ /* Load using linkage table. */
+ output_asm_insn (\"addil LT%%%1,%%r19\", xoperands);
+ output_asm_insn (\"ldw RT%%%1(%0),%0\", xoperands);
}
return \"\";
}"
diff --git a/gcc/config/riscv/riscv.c b/gcc/config/riscv/riscv.c
index 4ef7a1774c4..c38f6c394d5 100644
--- a/gcc/config/riscv/riscv.c
+++ b/gcc/config/riscv/riscv.c
@@ -3495,25 +3495,43 @@ riscv_output_gpr_save (unsigned mask)
/* For stack frames that can't be allocated with a single ADDI instruction,
compute the best value to initially allocate. It must at a minimum
- allocate enough space to spill the callee-saved registers. */
+ allocate enough space to spill the callee-saved registers. If TARGET_RVC,
+ try to pick a value that will allow compression of the register saves
+ without adding extra instructions. */
static HOST_WIDE_INT
riscv_first_stack_step (struct riscv_frame_info *frame)
{
- HOST_WIDE_INT min_first_step = frame->total_size - frame->fp_sp_offset;
- HOST_WIDE_INT max_first_step = IMM_REACH / 2 - STACK_BOUNDARY / 8;
-
if (SMALL_OPERAND (frame->total_size))
return frame->total_size;
+ HOST_WIDE_INT min_first_step = frame->total_size - frame->fp_sp_offset;
+ HOST_WIDE_INT max_first_step = IMM_REACH / 2 - STACK_BOUNDARY / 8;
+ HOST_WIDE_INT min_second_step = frame->total_size - max_first_step;
+ gcc_assert (min_first_step <= max_first_step);
+
/* As an optimization, use the least-significant bits of the total frame
size, so that the second adjustment step is just LUI + ADD. */
- if (!SMALL_OPERAND (frame->total_size - max_first_step)
+ if (!SMALL_OPERAND (min_second_step)
&& frame->total_size % IMM_REACH < IMM_REACH / 2
&& frame->total_size % IMM_REACH >= min_first_step)
return frame->total_size % IMM_REACH;
- gcc_assert (min_first_step <= max_first_step);
+ if (TARGET_RVC)
+ {
+ /* If we need two subtracts, and one is small enough to allow compressed
+ loads and stores, then put that one first. */
+ if (IN_RANGE (min_second_step, 0,
+ (TARGET_64BIT ? SDSP_REACH : SWSP_REACH)))
+ return MAX (min_second_step, min_first_step);
+
+ /* If we need LUI + ADDI + ADD for the second adjustment step, then start
+ with the minimum first step, so that we can get compressed loads and
+ stores. */
+ else if (!SMALL_OPERAND (min_second_step))
+ return min_first_step;
+ }
+
return max_first_step;
}
diff --git a/gcc/config/riscv/riscv.h b/gcc/config/riscv/riscv.h
index 1c1c3431119..6144e267727 100644
--- a/gcc/config/riscv/riscv.h
+++ b/gcc/config/riscv/riscv.h
@@ -891,9 +891,13 @@ extern unsigned riscv_stack_boundary;
#define SHIFT_RS1 15
#define SHIFT_IMM 20
#define IMM_BITS 12
+#define C_SxSP_BITS 6
#define IMM_REACH (1LL << IMM_BITS)
#define CONST_HIGH_PART(VALUE) (((VALUE) + (IMM_REACH/2)) & ~(IMM_REACH-1))
#define CONST_LOW_PART(VALUE) ((VALUE) - CONST_HIGH_PART (VALUE))
+#define SWSP_REACH (4LL << C_SxSP_BITS)
+#define SDSP_REACH (8LL << C_SxSP_BITS)
+
#endif /* ! GCC_RISCV_H */
diff --git a/gcc/config/rl78/rl78.md b/gcc/config/rl78/rl78.md
index 2b39b469ef5..03b776b6191 100644
--- a/gcc/config/rl78/rl78.md
+++ b/gcc/config/rl78/rl78.md
@@ -727,6 +727,14 @@
DONE;"
)
+(define_expand "movdf"
+ [(set (match_operand:DF 0 "nonimmediate_operand" "")
+ (match_operand:DF 1 "general_operand" ""))]
+ ""
+ "rl78_split_movdi(operands, DFmode);
+ DONE;"
+)
+
(define_expand "umindi3"
[(set (match_operand:DI 0 "nonimmediate_operand" "")
(umin:DI (match_operand:DI 1 "general_operand" "")
diff --git a/gcc/config/rs6000/aix71.h b/gcc/config/rs6000/aix71.h
index 2ad865a13ec..501af2be3c9 100644
--- a/gcc/config/rs6000/aix71.h
+++ b/gcc/config/rs6000/aix71.h
@@ -127,8 +127,12 @@ do { \
%{mpe: -I%R/usr/lpp/ppe.poe/include} \
%{pthread: -D_THREAD_SAFE}"
+#define RS6000_CPU(NAME, CPU, FLAGS)
+#include "rs6000-cpus.def"
+#undef RS6000_CPU
+
#undef TARGET_DEFAULT
-#define TARGET_DEFAULT (MASK_PPC_GPOPT | MASK_PPC_GFXOPT | MASK_MFCRF)
+#define TARGET_DEFAULT ISA_2_5_MASKS_EMBEDDED
#undef PROCESSOR_DEFAULT
#define PROCESSOR_DEFAULT PROCESSOR_POWER7
diff --git a/gcc/config/rs6000/altivec.h b/gcc/config/rs6000/altivec.h
index 684cb1990ef..1e495e69c42 100644
--- a/gcc/config/rs6000/altivec.h
+++ b/gcc/config/rs6000/altivec.h
@@ -433,8 +433,8 @@
#define vec_vctzd __builtin_vec_vctzd
#define vec_vctzh __builtin_vec_vctzh
#define vec_vctzw __builtin_vec_vctzw
-#define vec_vextract4b __builtin_vec_vextract4b
-#define vec_vinsert4b __builtin_vec_vinsert4b
+#define vec_extract4b __builtin_vec_extract4b
+#define vec_insert4b __builtin_vec_insert4b
#define vec_vprtyb __builtin_vec_vprtyb
#define vec_vprtybd __builtin_vec_vprtybd
#define vec_vprtybw __builtin_vec_vprtybw
diff --git a/gcc/config/rs6000/altivec.md b/gcc/config/rs6000/altivec.md
index a01a3c69239..2759f2d31a5 100644
--- a/gcc/config/rs6000/altivec.md
+++ b/gcc/config/rs6000/altivec.md
@@ -291,8 +291,8 @@
;; Load up a vector with the most significant bit set by loading up -1 and
;; doing a shift left
(define_split
- [(set (match_operand:VM 0 "altivec_register_operand" "")
- (match_operand:VM 1 "easy_vector_constant_msb" ""))]
+ [(set (match_operand:VM 0 "altivec_register_operand")
+ (match_operand:VM 1 "easy_vector_constant_msb"))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode) && reload_completed"
[(const_int 0)]
{
@@ -318,8 +318,8 @@
})
(define_split
- [(set (match_operand:VM 0 "altivec_register_operand" "")
- (match_operand:VM 1 "easy_vector_constant_add_self" ""))]
+ [(set (match_operand:VM 0 "altivec_register_operand")
+ (match_operand:VM 1 "easy_vector_constant_add_self"))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode) && reload_completed"
[(set (match_dup 0) (match_dup 3))
(set (match_dup 0) (match_dup 4))]
@@ -347,8 +347,8 @@
})
(define_split
- [(set (match_operand:VM 0 "altivec_register_operand" "")
- (match_operand:VM 1 "easy_vector_constant_vsldoi" ""))]
+ [(set (match_operand:VM 0 "altivec_register_operand")
+ (match_operand:VM 1 "easy_vector_constant_vsldoi"))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode) && can_create_pseudo_p ()"
[(set (match_dup 2) (match_dup 3))
(set (match_dup 4) (match_dup 5))
@@ -692,9 +692,9 @@
;; We do multiply as a fused multiply-add with an add of a -0.0 vector.
(define_expand "altivec_mulv4sf3"
- [(set (match_operand:V4SF 0 "register_operand" "")
- (fma:V4SF (match_operand:V4SF 1 "register_operand" "")
- (match_operand:V4SF 2 "register_operand" "")
+ [(set (match_operand:V4SF 0 "register_operand")
+ (fma:V4SF (match_operand:V4SF 1 "register_operand")
+ (match_operand:V4SF 2 "register_operand")
(match_dup 3)))]
"VECTOR_UNIT_ALTIVEC_P (V4SFmode)"
{
@@ -728,9 +728,9 @@
[(set_attr "type" "veccomplex")])
(define_expand "mulv4si3"
- [(use (match_operand:V4SI 0 "register_operand" ""))
- (use (match_operand:V4SI 1 "register_operand" ""))
- (use (match_operand:V4SI 2 "register_operand" ""))]
+ [(use (match_operand:V4SI 0 "register_operand"))
+ (use (match_operand:V4SI 1 "register_operand"))
+ (use (match_operand:V4SI 2 "register_operand"))]
"TARGET_ALTIVEC"
{
rtx zero;
@@ -780,9 +780,9 @@
})
(define_expand "mulv8hi3"
- [(use (match_operand:V8HI 0 "register_operand" ""))
- (use (match_operand:V8HI 1 "register_operand" ""))
- (use (match_operand:V8HI 2 "register_operand" ""))]
+ [(use (match_operand:V8HI 0 "register_operand"))
+ (use (match_operand:V8HI 1 "register_operand"))
+ (use (match_operand:V8HI 2 "register_operand"))]
"TARGET_ALTIVEC"
{
rtx zero = gen_reg_rtx (V8HImode);
@@ -940,9 +940,9 @@
[(set_attr "type" "veccomplex")])
(define_expand "altivec_vmrghb"
- [(use (match_operand:V16QI 0 "register_operand" ""))
- (use (match_operand:V16QI 1 "register_operand" ""))
- (use (match_operand:V16QI 2 "register_operand" ""))]
+ [(use (match_operand:V16QI 0 "register_operand"))
+ (use (match_operand:V16QI 1 "register_operand"))
+ (use (match_operand:V16QI 2 "register_operand"))]
"TARGET_ALTIVEC"
{
rtvec v;
@@ -1004,9 +1004,9 @@
[(set_attr "type" "vecperm")])
(define_expand "altivec_vmrghh"
- [(use (match_operand:V8HI 0 "register_operand" ""))
- (use (match_operand:V8HI 1 "register_operand" ""))
- (use (match_operand:V8HI 2 "register_operand" ""))]
+ [(use (match_operand:V8HI 0 "register_operand"))
+ (use (match_operand:V8HI 1 "register_operand"))
+ (use (match_operand:V8HI 2 "register_operand"))]
"TARGET_ALTIVEC"
{
rtvec v;
@@ -1060,9 +1060,9 @@
[(set_attr "type" "vecperm")])
(define_expand "altivec_vmrghw"
- [(use (match_operand:V4SI 0 "register_operand" ""))
- (use (match_operand:V4SI 1 "register_operand" ""))
- (use (match_operand:V4SI 2 "register_operand" ""))]
+ [(use (match_operand:V4SI 0 "register_operand"))
+ (use (match_operand:V4SI 1 "register_operand"))
+ (use (match_operand:V4SI 2 "register_operand"))]
"VECTOR_MEM_ALTIVEC_P (V4SImode)"
{
rtvec v;
@@ -1131,9 +1131,9 @@
[(set_attr "type" "vecperm")])
(define_expand "altivec_vmrglb"
- [(use (match_operand:V16QI 0 "register_operand" ""))
- (use (match_operand:V16QI 1 "register_operand" ""))
- (use (match_operand:V16QI 2 "register_operand" ""))]
+ [(use (match_operand:V16QI 0 "register_operand"))
+ (use (match_operand:V16QI 1 "register_operand"))
+ (use (match_operand:V16QI 2 "register_operand"))]
"TARGET_ALTIVEC"
{
rtvec v;
@@ -1195,9 +1195,9 @@
[(set_attr "type" "vecperm")])
(define_expand "altivec_vmrglh"
- [(use (match_operand:V8HI 0 "register_operand" ""))
- (use (match_operand:V8HI 1 "register_operand" ""))
- (use (match_operand:V8HI 2 "register_operand" ""))]
+ [(use (match_operand:V8HI 0 "register_operand"))
+ (use (match_operand:V8HI 1 "register_operand"))
+ (use (match_operand:V8HI 2 "register_operand"))]
"TARGET_ALTIVEC"
{
rtvec v;
@@ -1251,9 +1251,9 @@
[(set_attr "type" "vecperm")])
(define_expand "altivec_vmrglw"
- [(use (match_operand:V4SI 0 "register_operand" ""))
- (use (match_operand:V4SI 1 "register_operand" ""))
- (use (match_operand:V4SI 2 "register_operand" ""))]
+ [(use (match_operand:V4SI 0 "register_operand"))
+ (use (match_operand:V4SI 1 "register_operand"))
+ (use (match_operand:V4SI 2 "register_operand"))]
"VECTOR_MEM_ALTIVEC_P (V4SImode)"
{
rtvec v;
@@ -1410,9 +1410,9 @@
[(set_attr "type" "vecperm")])
(define_expand "vec_widen_umult_even_v16qi"
- [(use (match_operand:V8HI 0 "register_operand" ""))
- (use (match_operand:V16QI 1 "register_operand" ""))
- (use (match_operand:V16QI 2 "register_operand" ""))]
+ [(use (match_operand:V8HI 0 "register_operand"))
+ (use (match_operand:V16QI 1 "register_operand"))
+ (use (match_operand:V16QI 2 "register_operand"))]
"TARGET_ALTIVEC"
{
if (VECTOR_ELT_ORDER_BIG)
@@ -1423,9 +1423,9 @@
})
(define_expand "vec_widen_smult_even_v16qi"
- [(use (match_operand:V8HI 0 "register_operand" ""))
- (use (match_operand:V16QI 1 "register_operand" ""))
- (use (match_operand:V16QI 2 "register_operand" ""))]
+ [(use (match_operand:V8HI 0 "register_operand"))
+ (use (match_operand:V16QI 1 "register_operand"))
+ (use (match_operand:V16QI 2 "register_operand"))]
"TARGET_ALTIVEC"
{
if (VECTOR_ELT_ORDER_BIG)
@@ -1436,9 +1436,9 @@
})
(define_expand "vec_widen_umult_even_v8hi"
- [(use (match_operand:V4SI 0 "register_operand" ""))
- (use (match_operand:V8HI 1 "register_operand" ""))
- (use (match_operand:V8HI 2 "register_operand" ""))]
+ [(use (match_operand:V4SI 0 "register_operand"))
+ (use (match_operand:V8HI 1 "register_operand"))
+ (use (match_operand:V8HI 2 "register_operand"))]
"TARGET_ALTIVEC"
{
if (VECTOR_ELT_ORDER_BIG)
@@ -1449,9 +1449,9 @@
})
(define_expand "vec_widen_smult_even_v8hi"
- [(use (match_operand:V4SI 0 "register_operand" ""))
- (use (match_operand:V8HI 1 "register_operand" ""))
- (use (match_operand:V8HI 2 "register_operand" ""))]
+ [(use (match_operand:V4SI 0 "register_operand"))
+ (use (match_operand:V8HI 1 "register_operand"))
+ (use (match_operand:V8HI 2 "register_operand"))]
"TARGET_ALTIVEC"
{
if (VECTOR_ELT_ORDER_BIG)
@@ -1488,9 +1488,9 @@
})
(define_expand "vec_widen_umult_odd_v16qi"
- [(use (match_operand:V8HI 0 "register_operand" ""))
- (use (match_operand:V16QI 1 "register_operand" ""))
- (use (match_operand:V16QI 2 "register_operand" ""))]
+ [(use (match_operand:V8HI 0 "register_operand"))
+ (use (match_operand:V16QI 1 "register_operand"))
+ (use (match_operand:V16QI 2 "register_operand"))]
"TARGET_ALTIVEC"
{
if (VECTOR_ELT_ORDER_BIG)
@@ -1501,9 +1501,9 @@
})
(define_expand "vec_widen_smult_odd_v16qi"
- [(use (match_operand:V8HI 0 "register_operand" ""))
- (use (match_operand:V16QI 1 "register_operand" ""))
- (use (match_operand:V16QI 2 "register_operand" ""))]
+ [(use (match_operand:V8HI 0 "register_operand"))
+ (use (match_operand:V16QI 1 "register_operand"))
+ (use (match_operand:V16QI 2 "register_operand"))]
"TARGET_ALTIVEC"
{
if (VECTOR_ELT_ORDER_BIG)
@@ -1514,9 +1514,9 @@
})
(define_expand "vec_widen_umult_odd_v8hi"
- [(use (match_operand:V4SI 0 "register_operand" ""))
- (use (match_operand:V8HI 1 "register_operand" ""))
- (use (match_operand:V8HI 2 "register_operand" ""))]
+ [(use (match_operand:V4SI 0 "register_operand"))
+ (use (match_operand:V8HI 1 "register_operand"))
+ (use (match_operand:V8HI 2 "register_operand"))]
"TARGET_ALTIVEC"
{
if (VECTOR_ELT_ORDER_BIG)
@@ -1527,9 +1527,9 @@
})
(define_expand "vec_widen_smult_odd_v8hi"
- [(use (match_operand:V4SI 0 "register_operand" ""))
- (use (match_operand:V8HI 1 "register_operand" ""))
- (use (match_operand:V8HI 2 "register_operand" ""))]
+ [(use (match_operand:V4SI 0 "register_operand"))
+ (use (match_operand:V8HI 1 "register_operand"))
+ (use (match_operand:V8HI 2 "register_operand"))]
"TARGET_ALTIVEC"
{
if (VECTOR_ELT_ORDER_BIG)
@@ -1680,13 +1680,12 @@
(match_operand:V4SI 2 "register_operand" "v")]
UNSPEC_VPKPX))]
"TARGET_ALTIVEC"
- "*
- {
- if (VECTOR_ELT_ORDER_BIG)
- return \"vpkpx %0,%1,%2\";
- else
- return \"vpkpx %0,%2,%1\";
- }"
+{
+ if (VECTOR_ELT_ORDER_BIG)
+ return "vpkpx %0,%1,%2";
+ else
+ return "vpkpx %0,%2,%1";
+}
[(set_attr "type" "vecperm")])
(define_insn "altivec_vpks<VI_char>ss"
@@ -1695,13 +1694,12 @@
(match_operand:VP 2 "register_operand" "v")]
UNSPEC_VPACK_SIGN_SIGN_SAT))]
"<VI_unit>"
- "*
- {
- if (VECTOR_ELT_ORDER_BIG)
- return \"vpks<VI_char>ss %0,%1,%2\";
- else
- return \"vpks<VI_char>ss %0,%2,%1\";
- }"
+{
+ if (VECTOR_ELT_ORDER_BIG)
+ return "vpks<VI_char>ss %0,%1,%2";
+ else
+ return "vpks<VI_char>ss %0,%2,%1";
+}
[(set_attr "type" "vecperm")])
(define_insn "altivec_vpks<VI_char>us"
@@ -1710,13 +1708,12 @@
(match_operand:VP 2 "register_operand" "v")]
UNSPEC_VPACK_SIGN_UNS_SAT))]
"<VI_unit>"
- "*
- {
- if (VECTOR_ELT_ORDER_BIG)
- return \"vpks<VI_char>us %0,%1,%2\";
- else
- return \"vpks<VI_char>us %0,%2,%1\";
- }"
+{
+ if (VECTOR_ELT_ORDER_BIG)
+ return "vpks<VI_char>us %0,%1,%2";
+ else
+ return "vpks<VI_char>us %0,%2,%1";
+}
[(set_attr "type" "vecperm")])
(define_insn "altivec_vpku<VI_char>us"
@@ -1725,13 +1722,12 @@
(match_operand:VP 2 "register_operand" "v")]
UNSPEC_VPACK_UNS_UNS_SAT))]
"<VI_unit>"
- "*
- {
- if (VECTOR_ELT_ORDER_BIG)
- return \"vpku<VI_char>us %0,%1,%2\";
- else
- return \"vpku<VI_char>us %0,%2,%1\";
- }"
+{
+ if (VECTOR_ELT_ORDER_BIG)
+ return "vpku<VI_char>us %0,%1,%2";
+ else
+ return "vpku<VI_char>us %0,%2,%1";
+}
[(set_attr "type" "vecperm")])
(define_insn "altivec_vpku<VI_char>um"
@@ -1740,13 +1736,12 @@
(match_operand:VP 2 "register_operand" "v")]
UNSPEC_VPACK_UNS_UNS_MOD))]
"<VI_unit>"
- "*
- {
- if (VECTOR_ELT_ORDER_BIG)
- return \"vpku<VI_char>um %0,%1,%2\";
- else
- return \"vpku<VI_char>um %0,%2,%1\";
- }"
+{
+ if (VECTOR_ELT_ORDER_BIG)
+ return "vpku<VI_char>um %0,%1,%2";
+ else
+ return "vpku<VI_char>um %0,%2,%1";
+}
[(set_attr "type" "vecperm")])
(define_insn "altivec_vpku<VI_char>um_direct"
@@ -1755,13 +1750,12 @@
(match_operand:VP 2 "register_operand" "v")]
UNSPEC_VPACK_UNS_UNS_MOD_DIRECT))]
"<VI_unit>"
- "*
- {
- if (BYTES_BIG_ENDIAN)
- return \"vpku<VI_char>um %0,%1,%2\";
- else
- return \"vpku<VI_char>um %0,%2,%1\";
- }"
+{
+ if (BYTES_BIG_ENDIAN)
+ return "vpku<VI_char>um %0,%1,%2";
+ else
+ return "vpku<VI_char>um %0,%2,%1";
+}
[(set_attr "type" "vecperm")])
(define_insn "*altivec_vrl<VI_char>"
@@ -1955,9 +1949,9 @@
[(set_attr "type" "veccomplex")])
(define_expand "altivec_vspltb"
- [(use (match_operand:V16QI 0 "register_operand" ""))
- (use (match_operand:V16QI 1 "register_operand" ""))
- (use (match_operand:QI 2 "u5bit_cint_operand" ""))]
+ [(use (match_operand:V16QI 0 "register_operand"))
+ (use (match_operand:V16QI 1 "register_operand"))
+ (use (match_operand:QI 2 "u5bit_cint_operand"))]
"TARGET_ALTIVEC"
{
rtvec v;
@@ -2003,9 +1997,9 @@
[(set_attr "type" "vecperm")])
(define_expand "altivec_vsplth"
- [(use (match_operand:V8HI 0 "register_operand" ""))
- (use (match_operand:V8HI 1 "register_operand" ""))
- (use (match_operand:QI 2 "u5bit_cint_operand" ""))]
+ [(use (match_operand:V8HI 0 "register_operand"))
+ (use (match_operand:V8HI 1 "register_operand"))
+ (use (match_operand:QI 2 "u5bit_cint_operand"))]
"TARGET_ALTIVEC"
{
rtvec v;
@@ -2051,9 +2045,9 @@
[(set_attr "type" "vecperm")])
(define_expand "altivec_vspltw"
- [(use (match_operand:V4SI 0 "register_operand" ""))
- (use (match_operand:V4SI 1 "register_operand" ""))
- (use (match_operand:QI 2 "u5bit_cint_operand" ""))]
+ [(use (match_operand:V4SI 0 "register_operand"))
+ (use (match_operand:V4SI 1 "register_operand"))
+ (use (match_operand:QI 2 "u5bit_cint_operand"))]
"TARGET_ALTIVEC"
{
rtvec v;
@@ -2099,9 +2093,9 @@
[(set_attr "type" "vecperm")])
(define_expand "altivec_vspltsf"
- [(use (match_operand:V4SF 0 "register_operand" ""))
- (use (match_operand:V4SF 1 "register_operand" ""))
- (use (match_operand:QI 2 "u5bit_cint_operand" ""))]
+ [(use (match_operand:V4SF 0 "register_operand"))
+ (use (match_operand:V4SF 1 "register_operand"))
+ (use (match_operand:QI 2 "u5bit_cint_operand"))]
"TARGET_ALTIVEC"
{
rtvec v;
@@ -2153,10 +2147,10 @@
[(set_attr "type" "vecfloat")])
(define_expand "altivec_vperm_<mode>"
- [(set (match_operand:VM 0 "register_operand" "")
- (unspec:VM [(match_operand:VM 1 "register_operand" "")
- (match_operand:VM 2 "register_operand" "")
- (match_operand:V16QI 3 "register_operand" "")]
+ [(set (match_operand:VM 0 "register_operand")
+ (unspec:VM [(match_operand:VM 1 "register_operand")
+ (match_operand:VM 2 "register_operand")
+ (match_operand:V16QI 3 "register_operand")]
UNSPEC_VPERM))]
"TARGET_ALTIVEC"
{
@@ -2195,10 +2189,10 @@
(set_attr "length" "4")])
(define_expand "altivec_vperm_<mode>_uns"
- [(set (match_operand:VM 0 "register_operand" "")
- (unspec:VM [(match_operand:VM 1 "register_operand" "")
- (match_operand:VM 2 "register_operand" "")
- (match_operand:V16QI 3 "register_operand" "")]
+ [(set (match_operand:VM 0 "register_operand")
+ (unspec:VM [(match_operand:VM 1 "register_operand")
+ (match_operand:VM 2 "register_operand")
+ (match_operand:V16QI 3 "register_operand")]
UNSPEC_VPERM_UNS))]
"TARGET_ALTIVEC"
{
@@ -2223,10 +2217,10 @@
(set_attr "length" "4")])
(define_expand "vec_permv16qi"
- [(set (match_operand:V16QI 0 "register_operand" "")
- (unspec:V16QI [(match_operand:V16QI 1 "register_operand" "")
- (match_operand:V16QI 2 "register_operand" "")
- (match_operand:V16QI 3 "register_operand" "")]
+ [(set (match_operand:V16QI 0 "register_operand")
+ (unspec:V16QI [(match_operand:V16QI 1 "register_operand")
+ (match_operand:V16QI 2 "register_operand")
+ (match_operand:V16QI 3 "register_operand")]
UNSPEC_VPERM))]
"TARGET_ALTIVEC"
{
@@ -2344,11 +2338,10 @@
[(set_attr "type" "vecfloat")])
(define_expand "altivec_copysign_v4sf3"
- [(use (match_operand:V4SF 0 "register_operand" ""))
- (use (match_operand:V4SF 1 "register_operand" ""))
- (use (match_operand:V4SF 2 "register_operand" ""))]
+ [(use (match_operand:V4SF 0 "register_operand"))
+ (use (match_operand:V4SF 1 "register_operand"))
+ (use (match_operand:V4SF 2 "register_operand"))]
"VECTOR_UNIT_ALTIVEC_P (V4SFmode)"
- "
{
rtx mask = gen_reg_rtx (V4SImode);
rtvec v = rtvec_alloc (4);
@@ -2363,7 +2356,7 @@
emit_insn (gen_vector_select_v4sf (operands[0], operands[1], operands[2],
gen_lowpart (V4SFmode, mask)));
DONE;
-}")
+})
(define_insn "altivec_vsldoi_<mode>"
[(set (match_operand:VM 0 "register_operand" "=v")
@@ -2591,8 +2584,8 @@
[(set_attr "type" "vecsimple")])
(define_expand "altivec_lvsl"
- [(use (match_operand:V16QI 0 "register_operand" ""))
- (use (match_operand:V16QI 1 "memory_operand" ""))]
+ [(use (match_operand:V16QI 0 "register_operand"))
+ (use (match_operand:V16QI 1 "memory_operand"))]
"TARGET_ALTIVEC"
{
if (VECTOR_ELT_ORDER_BIG)
@@ -2667,11 +2660,10 @@
[(set_attr "type" "vecload")])
(define_expand "build_vector_mask_for_load"
- [(set (match_operand:V16QI 0 "register_operand" "")
- (unspec:V16QI [(match_operand 1 "memory_operand" "")] UNSPEC_LVSR))]
+ [(set (match_operand:V16QI 0 "register_operand")
+ (unspec:V16QI [(match_operand 1 "memory_operand")] UNSPEC_LVSR))]
"TARGET_ALTIVEC"
- "
-{
+{
rtx addr;
rtx temp;
@@ -2683,7 +2675,7 @@
emit_insn (gen_altivec_lvsr (operands[0],
replace_equiv_address (operands[1], temp)));
DONE;
-}")
+})
;; Parallel some of the LVE* and STV*'s with unspecs because some have
;; identical rtl but different instructions-- and gcc gets confused.
@@ -3339,8 +3331,8 @@
[(set_attr "type" "vecsimple")])
(define_expand "neg<mode>2"
- [(set (match_operand:VI2 0 "register_operand" "")
- (neg:VI2 (match_operand:VI2 1 "register_operand" "")))]
+ [(set (match_operand:VI2 0 "register_operand")
+ (neg:VI2 (match_operand:VI2 1 "register_operand")))]
"<VI_unit>"
{
if (!TARGET_P9_VECTOR || (<MODE>mode != V4SImode && <MODE>mode != V2DImode))
@@ -3361,12 +3353,11 @@
(match_operand:VIshort 2 "register_operand" "v")]
UNSPEC_VMSUMU)))]
"TARGET_ALTIVEC"
- "
-{
+{
emit_insn (gen_altivec_vmsumu<VI_char>m (operands[0], operands[1], operands[2], operands[3]));
DONE;
-}")
-
+})
+
(define_expand "sdot_prodv8hi"
[(set (match_operand:V4SI 0 "register_operand" "=v")
(plus:V4SI (match_operand:V4SI 3 "register_operand" "v")
@@ -3374,11 +3365,10 @@
(match_operand:V8HI 2 "register_operand" "v")]
UNSPEC_VMSUMSHM)))]
"TARGET_ALTIVEC"
- "
{
emit_insn (gen_altivec_vmsumshm (operands[0], operands[1], operands[2], operands[3]));
DONE;
-}")
+})
(define_expand "widen_usum<mode>3"
[(set (match_operand:V4SI 0 "register_operand" "=v")
@@ -3386,14 +3376,13 @@
(unspec:V4SI [(match_operand:VIshort 1 "register_operand" "v")]
UNSPEC_VMSUMU)))]
"TARGET_ALTIVEC"
- "
{
rtx vones = gen_reg_rtx (GET_MODE (operands[1]));
emit_insn (gen_altivec_vspltis<VI_char> (vones, const1_rtx));
emit_insn (gen_altivec_vmsumu<VI_char>m (operands[0], operands[1], vones, operands[2]));
DONE;
-}")
+})
(define_expand "widen_ssumv16qi3"
[(set (match_operand:V4SI 0 "register_operand" "=v")
@@ -3401,14 +3390,13 @@
(unspec:V4SI [(match_operand:V16QI 1 "register_operand" "v")]
UNSPEC_VMSUMM)))]
"TARGET_ALTIVEC"
- "
{
rtx vones = gen_reg_rtx (V16QImode);
emit_insn (gen_altivec_vspltisb (vones, const1_rtx));
emit_insn (gen_altivec_vmsummbm (operands[0], operands[1], vones, operands[2]));
DONE;
-}")
+})
(define_expand "widen_ssumv8hi3"
[(set (match_operand:V4SI 0 "register_operand" "=v")
@@ -3416,14 +3404,13 @@
(unspec:V4SI [(match_operand:V8HI 1 "register_operand" "v")]
UNSPEC_VMSUMSHM)))]
"TARGET_ALTIVEC"
- "
{
rtx vones = gen_reg_rtx (V8HImode);
emit_insn (gen_altivec_vspltish (vones, const1_rtx));
emit_insn (gen_altivec_vmsumshm (operands[0], operands[1], vones, operands[2]));
DONE;
-}")
+})
(define_expand "vec_unpacks_hi_<VP_small_lc>"
[(set (match_operand:VP 0 "register_operand" "=v")
@@ -3471,7 +3458,6 @@
(unspec:V8HI [(match_operand:V16QI 1 "register_operand" "v")]
UNSPEC_VUPKHUB))]
"TARGET_ALTIVEC"
- "
{
rtx vzero = gen_reg_rtx (V8HImode);
rtx mask = gen_reg_rtx (V16QImode);
@@ -3500,14 +3486,13 @@
emit_insn (gen_vec_initv16qiqi (mask, gen_rtx_PARALLEL (V16QImode, v)));
emit_insn (gen_vperm_v16qiv8hi (operands[0], operands[1], vzero, mask));
DONE;
-}")
+})
(define_expand "vec_unpacku_hi_v8hi"
[(set (match_operand:V4SI 0 "register_operand" "=v")
(unspec:V4SI [(match_operand:V8HI 1 "register_operand" "v")]
UNSPEC_VUPKHUH))]
"TARGET_ALTIVEC"
- "
{
rtx vzero = gen_reg_rtx (V4SImode);
rtx mask = gen_reg_rtx (V16QImode);
@@ -3536,14 +3521,13 @@
emit_insn (gen_vec_initv16qiqi (mask, gen_rtx_PARALLEL (V16QImode, v)));
emit_insn (gen_vperm_v8hiv4si (operands[0], operands[1], vzero, mask));
DONE;
-}")
+})
(define_expand "vec_unpacku_lo_v16qi"
[(set (match_operand:V8HI 0 "register_operand" "=v")
(unspec:V8HI [(match_operand:V16QI 1 "register_operand" "v")]
UNSPEC_VUPKLUB))]
"TARGET_ALTIVEC"
- "
{
rtx vzero = gen_reg_rtx (V8HImode);
rtx mask = gen_reg_rtx (V16QImode);
@@ -3572,14 +3556,13 @@
emit_insn (gen_vec_initv16qiqi (mask, gen_rtx_PARALLEL (V16QImode, v)));
emit_insn (gen_vperm_v16qiv8hi (operands[0], operands[1], vzero, mask));
DONE;
-}")
+})
(define_expand "vec_unpacku_lo_v8hi"
[(set (match_operand:V4SI 0 "register_operand" "=v")
(unspec:V4SI [(match_operand:V8HI 1 "register_operand" "v")]
UNSPEC_VUPKLUH))]
"TARGET_ALTIVEC"
- "
{
rtx vzero = gen_reg_rtx (V4SImode);
rtx mask = gen_reg_rtx (V16QImode);
@@ -3608,7 +3591,7 @@
emit_insn (gen_vec_initv16qiqi (mask, gen_rtx_PARALLEL (V16QImode, v)));
emit_insn (gen_vperm_v8hiv4si (operands[0], operands[1], vzero, mask));
DONE;
-}")
+})
(define_expand "vec_widen_umult_hi_v16qi"
[(set (match_operand:V8HI 0 "register_operand" "=v")
@@ -3616,7 +3599,6 @@
(match_operand:V16QI 2 "register_operand" "v")]
UNSPEC_VMULWHUB))]
"TARGET_ALTIVEC"
- "
{
rtx ve = gen_reg_rtx (V8HImode);
rtx vo = gen_reg_rtx (V8HImode);
@@ -3634,7 +3616,7 @@
emit_insn (gen_altivec_vmrghh_direct (operands[0], vo, ve));
}
DONE;
-}")
+})
(define_expand "vec_widen_umult_lo_v16qi"
[(set (match_operand:V8HI 0 "register_operand" "=v")
@@ -3642,7 +3624,6 @@
(match_operand:V16QI 2 "register_operand" "v")]
UNSPEC_VMULWLUB))]
"TARGET_ALTIVEC"
- "
{
rtx ve = gen_reg_rtx (V8HImode);
rtx vo = gen_reg_rtx (V8HImode);
@@ -3660,7 +3641,7 @@
emit_insn (gen_altivec_vmrglh_direct (operands[0], vo, ve));
}
DONE;
-}")
+})
(define_expand "vec_widen_smult_hi_v16qi"
[(set (match_operand:V8HI 0 "register_operand" "=v")
@@ -3668,7 +3649,6 @@
(match_operand:V16QI 2 "register_operand" "v")]
UNSPEC_VMULWHSB))]
"TARGET_ALTIVEC"
- "
{
rtx ve = gen_reg_rtx (V8HImode);
rtx vo = gen_reg_rtx (V8HImode);
@@ -3686,7 +3666,7 @@
emit_insn (gen_altivec_vmrghh_direct (operands[0], vo, ve));
}
DONE;
-}")
+})
(define_expand "vec_widen_smult_lo_v16qi"
[(set (match_operand:V8HI 0 "register_operand" "=v")
@@ -3694,7 +3674,6 @@
(match_operand:V16QI 2 "register_operand" "v")]
UNSPEC_VMULWLSB))]
"TARGET_ALTIVEC"
- "
{
rtx ve = gen_reg_rtx (V8HImode);
rtx vo = gen_reg_rtx (V8HImode);
@@ -3712,7 +3691,7 @@
emit_insn (gen_altivec_vmrglh_direct (operands[0], vo, ve));
}
DONE;
-}")
+})
(define_expand "vec_widen_umult_hi_v8hi"
[(set (match_operand:V4SI 0 "register_operand" "=v")
@@ -3720,7 +3699,6 @@
(match_operand:V8HI 2 "register_operand" "v")]
UNSPEC_VMULWHUH))]
"TARGET_ALTIVEC"
- "
{
rtx ve = gen_reg_rtx (V4SImode);
rtx vo = gen_reg_rtx (V4SImode);
@@ -3738,7 +3716,7 @@
emit_insn (gen_altivec_vmrghw_direct (operands[0], vo, ve));
}
DONE;
-}")
+})
(define_expand "vec_widen_umult_lo_v8hi"
[(set (match_operand:V4SI 0 "register_operand" "=v")
@@ -3746,7 +3724,6 @@
(match_operand:V8HI 2 "register_operand" "v")]
UNSPEC_VMULWLUH))]
"TARGET_ALTIVEC"
- "
{
rtx ve = gen_reg_rtx (V4SImode);
rtx vo = gen_reg_rtx (V4SImode);
@@ -3764,7 +3741,7 @@
emit_insn (gen_altivec_vmrglw_direct (operands[0], vo, ve));
}
DONE;
-}")
+})
(define_expand "vec_widen_smult_hi_v8hi"
[(set (match_operand:V4SI 0 "register_operand" "=v")
@@ -3772,7 +3749,6 @@
(match_operand:V8HI 2 "register_operand" "v")]
UNSPEC_VMULWHSH))]
"TARGET_ALTIVEC"
- "
{
rtx ve = gen_reg_rtx (V4SImode);
rtx vo = gen_reg_rtx (V4SImode);
@@ -3790,7 +3766,7 @@
emit_insn (gen_altivec_vmrghw_direct (operands[0], vo, ve));
}
DONE;
-}")
+})
(define_expand "vec_widen_smult_lo_v8hi"
[(set (match_operand:V4SI 0 "register_operand" "=v")
@@ -3798,7 +3774,6 @@
(match_operand:V8HI 2 "register_operand" "v")]
UNSPEC_VMULWLSH))]
"TARGET_ALTIVEC"
- "
{
rtx ve = gen_reg_rtx (V4SImode);
rtx vo = gen_reg_rtx (V4SImode);
@@ -3816,7 +3791,7 @@
emit_insn (gen_altivec_vmrglw_direct (operands[0], vo, ve));
}
DONE;
-}")
+})
(define_expand "vec_pack_trunc_<mode>"
[(set (match_operand:<VP_small> 0 "register_operand" "=v")
@@ -3831,7 +3806,6 @@
(mult:V16QI (match_operand:V16QI 1 "register_operand" "v")
(match_operand:V16QI 2 "register_operand" "v")))]
"TARGET_ALTIVEC"
- "
{
rtx even = gen_reg_rtx (V8HImode);
rtx odd = gen_reg_rtx (V8HImode);
@@ -3851,13 +3825,12 @@
emit_insn (gen_altivec_vmulosb (odd, operands[1], operands[2]));
emit_insn (gen_altivec_vperm_v8hiv16qi (operands[0], even, odd, mask));
DONE;
-}")
+})
(define_expand "altivec_negv4sf2"
- [(use (match_operand:V4SF 0 "register_operand" ""))
- (use (match_operand:V4SF 1 "register_operand" ""))]
+ [(use (match_operand:V4SF 0 "register_operand"))
+ (use (match_operand:V4SF 1 "register_operand"))]
"TARGET_ALTIVEC"
- "
{
rtx neg0;
@@ -3871,7 +3844,7 @@
gen_lowpart (V4SFmode, neg0), operands[1]));
DONE;
-}")
+})
;; Vector reverse elements
(define_expand "altivec_vreve<mode>2"
@@ -3969,60 +3942,56 @@
[(set_attr "type" "vecstore")])
(define_expand "vec_unpacks_float_hi_v8hi"
- [(set (match_operand:V4SF 0 "register_operand" "")
- (unspec:V4SF [(match_operand:V8HI 1 "register_operand" "")]
+ [(set (match_operand:V4SF 0 "register_operand")
+ (unspec:V4SF [(match_operand:V8HI 1 "register_operand")]
UNSPEC_VUPKHS_V4SF))]
"TARGET_ALTIVEC"
- "
{
rtx tmp = gen_reg_rtx (V4SImode);
emit_insn (gen_vec_unpacks_hi_v8hi (tmp, operands[1]));
emit_insn (gen_altivec_vcfsx (operands[0], tmp, const0_rtx));
DONE;
-}")
+})
(define_expand "vec_unpacks_float_lo_v8hi"
- [(set (match_operand:V4SF 0 "register_operand" "")
- (unspec:V4SF [(match_operand:V8HI 1 "register_operand" "")]
+ [(set (match_operand:V4SF 0 "register_operand")
+ (unspec:V4SF [(match_operand:V8HI 1 "register_operand")]
UNSPEC_VUPKLS_V4SF))]
"TARGET_ALTIVEC"
- "
{
rtx tmp = gen_reg_rtx (V4SImode);
emit_insn (gen_vec_unpacks_lo_v8hi (tmp, operands[1]));
emit_insn (gen_altivec_vcfsx (operands[0], tmp, const0_rtx));
DONE;
-}")
+})
(define_expand "vec_unpacku_float_hi_v8hi"
- [(set (match_operand:V4SF 0 "register_operand" "")
- (unspec:V4SF [(match_operand:V8HI 1 "register_operand" "")]
+ [(set (match_operand:V4SF 0 "register_operand")
+ (unspec:V4SF [(match_operand:V8HI 1 "register_operand")]
UNSPEC_VUPKHU_V4SF))]
"TARGET_ALTIVEC"
- "
{
rtx tmp = gen_reg_rtx (V4SImode);
emit_insn (gen_vec_unpacku_hi_v8hi (tmp, operands[1]));
emit_insn (gen_altivec_vcfux (operands[0], tmp, const0_rtx));
DONE;
-}")
+})
(define_expand "vec_unpacku_float_lo_v8hi"
- [(set (match_operand:V4SF 0 "register_operand" "")
- (unspec:V4SF [(match_operand:V8HI 1 "register_operand" "")]
+ [(set (match_operand:V4SF 0 "register_operand")
+ (unspec:V4SF [(match_operand:V8HI 1 "register_operand")]
UNSPEC_VUPKLU_V4SF))]
"TARGET_ALTIVEC"
- "
{
rtx tmp = gen_reg_rtx (V4SImode);
emit_insn (gen_vec_unpacku_lo_v8hi (tmp, operands[1]));
emit_insn (gen_altivec_vcfux (operands[0], tmp, const0_rtx));
DONE;
-}")
+})
;; Power8/power9 vector instructions encoded as Altivec instructions
@@ -4529,13 +4498,13 @@
(define_expand "bcd<bcd_add_sub>_<code>"
[(parallel [(set (reg:CCFP CR6_REGNO)
(compare:CCFP
- (unspec:V2DF [(match_operand:V1TI 1 "register_operand" "")
- (match_operand:V1TI 2 "register_operand" "")
- (match_operand:QI 3 "const_0_to_1_operand" "")]
+ (unspec:V2DF [(match_operand:V1TI 1 "register_operand")
+ (match_operand:V1TI 2 "register_operand")
+ (match_operand:QI 3 "const_0_to_1_operand")]
UNSPEC_BCD_ADD_SUB)
(match_dup 4)))
- (clobber (match_scratch:V1TI 5 ""))])
- (set (match_operand:SI 0 "register_operand" "")
+ (clobber (match_scratch:V1TI 5))])
+ (set (match_operand:SI 0 "register_operand")
(BCD_TEST:SI (reg:CCFP CR6_REGNO)
(const_int 0)))]
"TARGET_P8_VECTOR"
@@ -4550,10 +4519,10 @@
;; a register class for CR6.
(define_peephole2
- [(parallel [(set (match_operand:V1TI 0 "register_operand" "")
- (unspec:V1TI [(match_operand:V1TI 1 "register_operand" "")
- (match_operand:V1TI 2 "register_operand" "")
- (match_operand:QI 3 "const_0_to_1_operand" "")]
+ [(parallel [(set (match_operand:V1TI 0 "register_operand")
+ (unspec:V1TI [(match_operand:V1TI 1 "register_operand")
+ (match_operand:V1TI 2 "register_operand")
+ (match_operand:QI 3 "const_0_to_1_operand")]
UNSPEC_BCD_ADD_SUB))
(clobber (reg:CCFP CR6_REGNO))])
(parallel [(set (reg:CCFP CR6_REGNO)
@@ -4562,8 +4531,8 @@
(match_dup 2)
(match_dup 3)]
UNSPEC_BCD_ADD_SUB)
- (match_operand:V2DF 4 "zero_constant" "")))
- (clobber (match_operand:V1TI 5 "register_operand" ""))])]
+ (match_operand:V2DF 4 "zero_constant")))
+ (clobber (match_operand:V1TI 5 "register_operand"))])]
"TARGET_P8_VECTOR"
[(parallel [(set (match_dup 0)
(unspec:V1TI [(match_dup 1)
diff --git a/gcc/config/rs6000/darwin.md b/gcc/config/rs6000/darwin.md
index 066518d072f..48fd5b9613c 100644
--- a/gcc/config/rs6000/darwin.md
+++ b/gcc/config/rs6000/darwin.md
@@ -31,28 +31,27 @@ You should have received a copy of the GNU General Public License
(mem:DF (lo_sum:SI (match_operand:SI 1 "gpc_reg_operand" "b,b")
(match_operand 2 "" ""))))]
"TARGET_MACHO && TARGET_HARD_FLOAT && !TARGET_64BIT"
- "*
{
switch (which_alternative)
{
case 0:
- return \"lfd %0,lo16(%2)(%1)\";
+ return "lfd %0,lo16(%2)(%1)";
case 1:
{
if (TARGET_POWERPC64 && TARGET_32BIT)
/* Note, old assemblers didn't support relocation here. */
- return \"ld %0,lo16(%2)(%1)\";
+ return "ld %0,lo16(%2)(%1)";
else
{
- output_asm_insn (\"la %0,lo16(%2)(%1)\", operands);
- output_asm_insn (\"lwz %L0,4(%0)\", operands);
- return (\"lwz %0,0(%0)\");
+ output_asm_insn ("la %0,lo16(%2)(%1)", operands);
+ output_asm_insn ("lwz %L0,4(%0)", operands);
+ return ("lwz %0,0(%0)");
}
}
default:
gcc_unreachable ();
}
-}"
+}
[(set_attr "type" "load")
(set_attr "length" "4,12")])
@@ -62,18 +61,17 @@ You should have received a copy of the GNU General Public License
(mem:DF (lo_sum:DI (match_operand:DI 1 "gpc_reg_operand" "b,b")
(match_operand 2 "" ""))))]
"TARGET_MACHO && TARGET_HARD_FLOAT && TARGET_64BIT"
- "*
{
switch (which_alternative)
{
case 0:
- return \"lfd %0,lo16(%2)(%1)\";
+ return "lfd %0,lo16(%2)(%1)";
case 1:
- return \"ld %0,lo16(%2)(%1)\";
+ return "ld %0,lo16(%2)(%1)";
default:
gcc_unreachable ();
}
-}"
+}
[(set_attr "type" "load")
(set_attr "length" "4,4")])
@@ -173,8 +171,8 @@ You should have received a copy of the GNU General Public License
;; Mach-O PIC trickery.
(define_expand "macho_high"
- [(set (match_operand 0 "" "")
- (high (match_operand 1 "" "")))]
+ [(set (match_operand 0 "")
+ (high (match_operand 1 "")))]
"TARGET_MACHO"
{
if (TARGET_64BIT)
@@ -199,9 +197,9 @@ You should have received a copy of the GNU General Public License
"lis %0,ha16(%1)")
(define_expand "macho_low"
- [(set (match_operand 0 "" "")
- (lo_sum (match_operand 1 "" "")
- (match_operand 2 "" "")))]
+ [(set (match_operand 0 "")
+ (lo_sum (match_operand 1 "")
+ (match_operand 2 "")))]
"TARGET_MACHO"
{
if (TARGET_64BIT)
@@ -227,10 +225,10 @@ You should have received a copy of the GNU General Public License
"la %0,lo16(%2)(%1)")
(define_split
- [(set (mem:V4SI (plus:DI (match_operand:DI 0 "gpc_reg_operand" "")
- (match_operand:DI 1 "short_cint_operand" "")))
- (match_operand:V4SI 2 "register_operand" ""))
- (clobber (match_operand:DI 3 "gpc_reg_operand" ""))]
+ [(set (mem:V4SI (plus:DI (match_operand:DI 0 "gpc_reg_operand")
+ (match_operand:DI 1 "short_cint_operand")))
+ (match_operand:V4SI 2 "register_operand"))
+ (clobber (match_operand:DI 3 "gpc_reg_operand"))]
"TARGET_MACHO && TARGET_64BIT"
[(set (match_dup 3) (plus:DI (match_dup 0) (match_dup 1)))
(set (mem:V4SI (match_dup 3))
@@ -239,7 +237,7 @@ You should have received a copy of the GNU General Public License
(define_expand "load_macho_picbase"
[(set (reg:SI LR_REGNO)
- (unspec [(match_operand 0 "" "")]
+ (unspec [(match_operand 0 "")]
UNSPEC_LD_MPIC))]
"(DEFAULT_ABI == ABI_DARWIN) && flag_pic"
{
@@ -262,7 +260,7 @@ You should have received a copy of the GNU General Public License
#else
gcc_unreachable ();
#endif
- return "bcl 20,31,%0\\n%0:";
+ return "bcl 20,31,%0\n%0:";
}
[(set_attr "type" "branch")
(set_attr "cannot_copy" "yes")
@@ -279,17 +277,17 @@ You should have received a copy of the GNU General Public License
#else
gcc_unreachable ();
#endif
- return "bcl 20,31,%0\\n%0:";
+ return "bcl 20,31,%0\n%0:";
}
[(set_attr "type" "branch")
(set_attr "cannot_copy" "yes")
(set_attr "length" "4")])
(define_expand "macho_correct_pic"
- [(set (match_operand 0 "" "")
- (plus (match_operand 1 "" "")
- (unspec [(match_operand 2 "" "")
- (match_operand 3 "" "")]
+ [(set (match_operand 0 "")
+ (plus (match_operand 1 "")
+ (unspec [(match_operand 2 "")
+ (match_operand 3 "")]
UNSPEC_MPIC_CORRECT)))]
"DEFAULT_ABI == ABI_DARWIN"
{
@@ -385,7 +383,7 @@ You should have received a copy of the GNU General Public License
(define_expand "reload_macho_picbase"
[(set (reg:SI LR_REGNO)
- (unspec [(match_operand 0 "" "")]
+ (unspec [(match_operand 0 "")]
UNSPEC_RELD_MPIC))]
"(DEFAULT_ABI == ABI_DARWIN) && flag_pic"
{
@@ -408,14 +406,14 @@ You should have received a copy of the GNU General Public License
{
static char tmp[64];
const char *cnam = machopic_get_function_picbase ();
- snprintf (tmp, 64, "bcl 20,31,%s\\n%s:\\n%%0:", cnam, cnam);
+ snprintf (tmp, 64, "bcl 20,31,%s\n%s:\n%%0:", cnam, cnam);
return tmp;
}
else
#else
gcc_unreachable ();
#endif
- return "bcl 20,31,%0\\n%0:";
+ return "bcl 20,31,%0\n%0:";
}
[(set_attr "type" "branch")
(set_attr "cannot_copy" "yes")
@@ -432,14 +430,14 @@ You should have received a copy of the GNU General Public License
{
static char tmp[64];
const char *cnam = machopic_get_function_picbase ();
- snprintf (tmp, 64, "bcl 20,31,%s\\n%s:\\n%%0:", cnam, cnam);
+ snprintf (tmp, 64, "bcl 20,31,%s\n%s:\n%%0:", cnam, cnam);
return tmp;
}
else
#else
gcc_unreachable ();
#endif
- return "bcl 20,31,%0\\n%0:";
+ return "bcl 20,31,%0\n%0:";
}
[(set_attr "type" "branch")
(set_attr "cannot_copy" "yes")
diff --git a/gcc/config/rs6000/dfp.md b/gcc/config/rs6000/dfp.md
index 216251f69f0..cd15aa81bfd 100644
--- a/gcc/config/rs6000/dfp.md
+++ b/gcc/config/rs6000/dfp.md
@@ -344,11 +344,11 @@
[(set (match_dup 3)
(compare:CCFP
(unspec:D64_D128
- [(match_operand:SI 1 "const_int_operand" "n")
- (match_operand:D64_D128 2 "gpc_reg_operand" "d")]
+ [(match_operand:SI 1 "const_int_operand")
+ (match_operand:D64_D128 2 "gpc_reg_operand")]
UNSPEC_DTSTSFI)
(match_dup 4)))
- (set (match_operand:SI 0 "register_operand" "")
+ (set (match_operand:SI 0 "register_operand")
(DFP_TEST:SI (match_dup 3)
(const_int 0)))
]
diff --git a/gcc/config/rs6000/rs6000-builtin.def b/gcc/config/rs6000/rs6000-builtin.def
index 86604da46fa..f9548a0c405 100644
--- a/gcc/config/rs6000/rs6000-builtin.def
+++ b/gcc/config/rs6000/rs6000-builtin.def
@@ -403,6 +403,14 @@
| RS6000_BTC_UNARY), \
CODE_FOR_ ## ICODE) /* ICODE */
+#define BU_P8V_VSX_2(ENUM, NAME, ATTR, ICODE) \
+ RS6000_BUILTIN_2 (P8V_BUILTIN_ ## ENUM, /* ENUM */ \
+ "__builtin_vsx_" NAME, /* NAME */ \
+ RS6000_BTM_P8_VECTOR, /* MASK */ \
+ (RS6000_BTC_ ## ATTR /* ATTR */ \
+ | RS6000_BTC_BINARY), \
+ CODE_FOR_ ## ICODE) /* ICODE */
+
#define BU_P8V_OVERLOAD_1(ENUM, NAME) \
RS6000_BUILTIN_1 (P8V_BUILTIN_VEC_ ## ENUM, /* ENUM */ \
"__builtin_vec_" NAME, /* NAME */ \
@@ -1154,14 +1162,6 @@ BU_ALTIVEC_A (NABS_V16QI, "nabs_v16qi", CONST, nabsv16qi2)
BU_ALTIVEC_A (NABS_V4SF, "nabs_v4sf", CONST, vsx_nabsv4sf2)
BU_ALTIVEC_A (NABS_V2DF, "nabs_v2df", CONST, vsx_nabsv2df2)
-/* Altivec NEG functions. */
-BU_ALTIVEC_A (NEG_V2DI, "neg_v2di", CONST, negv2di2)
-BU_ALTIVEC_A (NEG_V4SI, "neg_v4si", CONST, negv4si2)
-BU_ALTIVEC_A (NEG_V8HI, "neg_v8hi", CONST, negv8hi2)
-BU_ALTIVEC_A (NEG_V16QI, "neg_v16qi", CONST, negv16qi2)
-BU_ALTIVEC_A (NEG_V4SF, "neg_v4sf", CONST, negv4sf2)
-BU_ALTIVEC_A (NEG_V2DF, "neg_v2df", CONST, negv2df2)
-
/* 1 argument Altivec builtin functions. */
BU_ALTIVEC_1 (VEXPTEFP, "vexptefp", FP, altivec_vexptefp)
BU_ALTIVEC_1 (VLOGEFP, "vlogefp", FP, altivec_vlogefp)
@@ -1461,7 +1461,6 @@ BU_ALTIVEC_OVERLOAD_1 (FLOOR, "floor")
BU_ALTIVEC_OVERLOAD_1 (LOGE, "loge")
BU_ALTIVEC_OVERLOAD_1 (MTVSCR, "mtvscr")
BU_ALTIVEC_OVERLOAD_1 (NEARBYINT, "nearbyint")
-BU_ALTIVEC_OVERLOAD_1 (NEG, "neg")
BU_ALTIVEC_OVERLOAD_1 (RE, "re")
BU_ALTIVEC_OVERLOAD_1 (RINT, "rint")
BU_ALTIVEC_OVERLOAD_1 (ROUND, "round")
@@ -1659,12 +1658,6 @@ BU_VSX_2 (CMPLE_U16QI, "cmple_u16qi", CONST, vector_ngtuv16qi)
BU_VSX_2 (CMPLE_U8HI, "cmple_u8hi", CONST, vector_ngtuv8hi)
BU_VSX_2 (CMPLE_U4SI, "cmple_u4si", CONST, vector_ngtuv4si)
BU_VSX_2 (CMPLE_U2DI, "cmple_u2di", CONST, vector_ngtuv2di)
-BU_VSX_2 (FLOAT2_V2DF, "float2_v2df", CONST, float2_v2df)
-BU_VSX_2 (FLOAT2_V2DI, "float2_v2di", CONST, float2_v2di)
-BU_VSX_2 (UNS_FLOAT2_V2DI, "uns_float2_v2di", CONST, uns_float2_v2di)
-
-BU_VSX_2 (VEC_VSIGNED2_V2DF, "vsigned2_v2df", CONST, vsigned2_v2df)
-BU_VSX_2 (VEC_VUNSIGNED2_V2DF, "vunsigned2_v2df", CONST, vunsigned2_v2df)
/* VSX abs builtin functions. */
BU_VSX_A (XVABSDP, "xvabsdp", CONST, absv2df2)
@@ -1856,10 +1849,6 @@ BU_VSX_OVERLOAD_2 (XXMRGHW, "xxmrghw")
BU_VSX_OVERLOAD_2 (XXMRGLW, "xxmrglw")
BU_VSX_OVERLOAD_2 (XXSPLTD, "xxspltd")
BU_VSX_OVERLOAD_2 (XXSPLTW, "xxspltw")
-BU_VSX_OVERLOAD_2 (FLOAT2, "float2")
-BU_VSX_OVERLOAD_2 (UNS_FLOAT2, "uns_float2")
-BU_VSX_OVERLOAD_2 (VSIGNED2, "vsigned2")
-BU_VSX_OVERLOAD_2 (VUNSIGNED2, "vunsigned2")
/* 1 argument VSX overloaded builtin functions. */
BU_VSX_OVERLOAD_1 (DOUBLE, "double")
@@ -1910,6 +1899,23 @@ BU_P8V_VSX_1 (REVB_V16QI, "revb_v16qi", CONST, revb_v16qi)
BU_P8V_VSX_1 (REVB_V2DF, "revb_v2df", CONST, revb_v2df)
BU_P8V_VSX_1 (REVB_V4SF, "revb_v4sf", CONST, revb_v4sf)
+/* Power 8 Altivec NEG functions. */
+BU_P8V_AV_1 (NEG_V2DI, "neg_v2di", CONST, negv2di2)
+BU_P8V_AV_1 (NEG_V4SI, "neg_v4si", CONST, negv4si2)
+BU_P8V_AV_1 (NEG_V8HI, "neg_v8hi", CONST, negv8hi2)
+BU_P8V_AV_1 (NEG_V16QI, "neg_v16qi", CONST, negv16qi2)
+BU_P8V_AV_1 (NEG_V4SF, "neg_v4sf", CONST, negv4sf2)
+BU_P8V_AV_1 (NEG_V2DF, "neg_v2df", CONST, negv2df2)
+
+
+/* 2 argument VSX instructions added in ISA 2.07. */
+BU_P8V_VSX_2 (FLOAT2_V2DF, "float2_v2df", CONST, float2_v2df)
+BU_P8V_VSX_2 (FLOAT2_V2DI, "float2_v2di", CONST, float2_v2di)
+BU_P8V_VSX_2 (UNS_FLOAT2_V2DI, "uns_float2_v2di", CONST, uns_float2_v2di)
+BU_P8V_VSX_2 (VEC_VSIGNED2_V2DF, "vsigned2_v2df", CONST, vsigned2_v2df)
+BU_P8V_VSX_2 (VEC_VUNSIGNED2_V2DF, "vunsigned2_v2df", CONST, vunsigned2_v2df)
+
+
/* 1 argument altivec instructions added in ISA 2.07. */
BU_P8V_AV_1 (ABS_V2DI, "abs_v2di", CONST, absv2di2)
BU_P8V_AV_1 (VUPKHSW, "vupkhsw", CONST, altivec_vupkhsw)
@@ -2025,6 +2031,7 @@ BU_P8V_OVERLOAD_1 (VPOPCNTUW, "vpopcntuw")
BU_P8V_OVERLOAD_1 (VPOPCNTUD, "vpopcntud")
BU_P8V_OVERLOAD_1 (VGBBD, "vgbbd")
BU_P8V_OVERLOAD_1 (REVB, "revb")
+BU_P8V_OVERLOAD_1 (NEG, "neg")
/* ISA 2.07 vector overloaded 2 argument functions. */
BU_P8V_OVERLOAD_2 (EQV, "eqv")
@@ -2052,6 +2059,10 @@ BU_P8V_OVERLOAD_2 (VSRD, "vsrd")
BU_P8V_OVERLOAD_2 (VSUBCUQ, "vsubcuq")
BU_P8V_OVERLOAD_2 (VSUBUDM, "vsubudm")
BU_P8V_OVERLOAD_2 (VSUBUQM, "vsubuqm")
+BU_P8V_OVERLOAD_2 (FLOAT2, "float2")
+BU_P8V_OVERLOAD_2 (UNS_FLOAT2, "uns_float2")
+BU_P8V_OVERLOAD_2 (VSIGNED2, "vsigned2")
+BU_P8V_OVERLOAD_2 (VUNSIGNED2, "vunsigned2")
/* ISA 2.07 vector overloaded 3 argument functions. */
BU_P8V_OVERLOAD_3 (VADDECUQ, "vaddecuq")
@@ -2226,9 +2237,8 @@ BU_P9V_AV_2 (VEXTUWLX, "vextuwlx", CONST, vextuwlx)
BU_P9V_AV_2 (VEXTUWRX, "vextuwrx", CONST, vextuwrx)
/* Insert/extract 4 byte word into a vector. */
-BU_P9V_VSX_2 (VEXTRACT4B, "vextract4b", CONST, vextract4b)
-BU_P9V_VSX_3 (VINSERT4B, "vinsert4b", CONST, vinsert4b)
-BU_P9V_VSX_3 (VINSERT4B_DI, "vinsert4b_di", CONST, vinsert4b_di)
+BU_P9V_VSX_3 (INSERT4B, "insert4b", CONST, insert4b)
+BU_P9V_VSX_2 (EXTRACT4B, "extract4b", CONST, extract4b)
/* Hardware IEEE 128-bit floating point round to odd instrucitons added in ISA
3.0 (power9). */
@@ -2290,12 +2300,12 @@ BU_P9V_OVERLOAD_2 (LXVL, "lxvl")
BU_P9V_OVERLOAD_2 (XL_LEN_R, "xl_len_r")
BU_P9V_OVERLOAD_2 (VEXTULX, "vextulx")
BU_P9V_OVERLOAD_2 (VEXTURX, "vexturx")
-BU_P9V_OVERLOAD_2 (VEXTRACT4B, "vextract4b")
+BU_P9V_OVERLOAD_2 (EXTRACT4B, "extract4b")
/* ISA 3.0 Vector scalar overloaded 3 argument functions */
BU_P9V_OVERLOAD_3 (STXVL, "stxvl")
BU_P9V_OVERLOAD_3 (XST_LEN_R, "xst_len_r")
-BU_P9V_OVERLOAD_3 (VINSERT4B, "vinsert4b")
+BU_P9V_OVERLOAD_3 (INSERT4B, "insert4b")
/* Overloaded CMPNE support was implemented prior to Power 9,
so is not mentioned here. */
diff --git a/gcc/config/rs6000/rs6000-c.c b/gcc/config/rs6000/rs6000-c.c
index a68be511c40..cc8e4e1b569 100644
--- a/gcc/config/rs6000/rs6000-c.c
+++ b/gcc/config/rs6000/rs6000-c.c
@@ -1542,11 +1542,11 @@ const struct altivec_builtin_types altivec_overloaded_builtins[] = {
RS6000_BTI_V4SF, RS6000_BTI_V4SI, 0, 0 },
{ VSX_BUILTIN_VEC_FLOAT, VSX_BUILTIN_XVCVUXWSP_V4SF,
RS6000_BTI_V4SF, RS6000_BTI_unsigned_V4SI, 0, 0 },
- { VSX_BUILTIN_VEC_FLOAT2, VSX_BUILTIN_FLOAT2_V2DF,
+ { P8V_BUILTIN_VEC_FLOAT2, P8V_BUILTIN_FLOAT2_V2DF,
RS6000_BTI_V4SF, RS6000_BTI_V2DF, RS6000_BTI_V2DF, 0 },
- { VSX_BUILTIN_VEC_FLOAT2, VSX_BUILTIN_FLOAT2_V2DI,
+ { P8V_BUILTIN_VEC_FLOAT2, P8V_BUILTIN_FLOAT2_V2DI,
RS6000_BTI_V4SF, RS6000_BTI_V2DI, RS6000_BTI_V2DI, 0 },
- { VSX_BUILTIN_VEC_FLOAT2, VSX_BUILTIN_UNS_FLOAT2_V2DI,
+ { P8V_BUILTIN_VEC_FLOAT2, P8V_BUILTIN_UNS_FLOAT2_V2DI,
RS6000_BTI_V4SF, RS6000_BTI_unsigned_V2DI,
RS6000_BTI_unsigned_V2DI, 0 },
{ VSX_BUILTIN_VEC_FLOATE, VSX_BUILTIN_FLOATE_V2DF,
@@ -2291,19 +2291,6 @@ const struct altivec_builtin_types altivec_overloaded_builtins[] = {
{ ALTIVEC_BUILTIN_VEC_NEARBYINT, VSX_BUILTIN_XVRSPI,
RS6000_BTI_V4SF, RS6000_BTI_V4SF, 0, 0 },
- { ALTIVEC_BUILTIN_VEC_NEG, ALTIVEC_BUILTIN_NEG_V16QI,
- RS6000_BTI_V16QI, RS6000_BTI_V16QI, 0, 0 },
- { ALTIVEC_BUILTIN_VEC_NEG, ALTIVEC_BUILTIN_NEG_V8HI,
- RS6000_BTI_V8HI, RS6000_BTI_V8HI, 0, 0 },
- { ALTIVEC_BUILTIN_VEC_NEG, ALTIVEC_BUILTIN_NEG_V4SI,
- RS6000_BTI_V4SI, RS6000_BTI_V4SI, 0, 0 },
- { ALTIVEC_BUILTIN_VEC_NEG, ALTIVEC_BUILTIN_NEG_V2DI,
- RS6000_BTI_V2DI, RS6000_BTI_V2DI, 0, 0 },
- { ALTIVEC_BUILTIN_VEC_NEG, ALTIVEC_BUILTIN_NEG_V4SF,
- RS6000_BTI_V4SF, RS6000_BTI_V4SF, 0, 0 },
- { ALTIVEC_BUILTIN_VEC_NEG, ALTIVEC_BUILTIN_NEG_V2DF,
- RS6000_BTI_V2DF, RS6000_BTI_V2DF, 0, 0 },
-
{ ALTIVEC_BUILTIN_VEC_NOR, ALTIVEC_BUILTIN_VNOR,
RS6000_BTI_V4SF, RS6000_BTI_V4SF, RS6000_BTI_V4SF, 0 },
{ ALTIVEC_BUILTIN_VEC_NOR, ALTIVEC_BUILTIN_VNOR,
@@ -2429,6 +2416,19 @@ const struct altivec_builtin_types altivec_overloaded_builtins[] = {
{ ALTIVEC_BUILTIN_VEC_PACK, P8V_BUILTIN_VPKUDUM,
RS6000_BTI_V4SF, RS6000_BTI_V2DF, RS6000_BTI_V2DF, 0 },
+ { P8V_BUILTIN_VEC_NEG, P8V_BUILTIN_NEG_V16QI,
+ RS6000_BTI_V16QI, RS6000_BTI_V16QI, 0, 0 },
+ { P8V_BUILTIN_VEC_NEG, P8V_BUILTIN_NEG_V8HI,
+ RS6000_BTI_V8HI, RS6000_BTI_V8HI, 0, 0 },
+ { P8V_BUILTIN_VEC_NEG, P8V_BUILTIN_NEG_V4SI,
+ RS6000_BTI_V4SI, RS6000_BTI_V4SI, 0, 0 },
+ { P8V_BUILTIN_VEC_NEG, P8V_BUILTIN_NEG_V2DI,
+ RS6000_BTI_V2DI, RS6000_BTI_V2DI, 0, 0 },
+ { P8V_BUILTIN_VEC_NEG, P8V_BUILTIN_NEG_V4SF,
+ RS6000_BTI_V4SF, RS6000_BTI_V4SF, 0, 0 },
+ { P8V_BUILTIN_VEC_NEG, P8V_BUILTIN_NEG_V2DF,
+ RS6000_BTI_V2DF, RS6000_BTI_V2DF, 0, 0 },
+
{ P9V_BUILTIN_VEC_CONVERT_4F32_8I16, P9V_BUILTIN_CONVERT_4F32_8I16,
RS6000_BTI_unsigned_V8HI, RS6000_BTI_V4SF, RS6000_BTI_V4SF, 0 },
@@ -3656,60 +3656,61 @@ const struct altivec_builtin_types altivec_overloaded_builtins[] = {
{ ALTIVEC_BUILTIN_VEC_SEL, ALTIVEC_BUILTIN_VSEL_16QI,
RS6000_BTI_bool_V16QI, RS6000_BTI_bool_V16QI, RS6000_BTI_bool_V16QI, RS6000_BTI_unsigned_V16QI },
{ ALTIVEC_BUILTIN_VEC_SLD, ALTIVEC_BUILTIN_VSLDOI_4SF,
- RS6000_BTI_V4SF, RS6000_BTI_V4SF, RS6000_BTI_V4SF, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_V4SF, RS6000_BTI_V4SF, RS6000_BTI_V4SF, RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLD, ALTIVEC_BUILTIN_VSLDOI_4SI,
- RS6000_BTI_V4SI, RS6000_BTI_V4SI, RS6000_BTI_V4SI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_V4SI, RS6000_BTI_V4SI, RS6000_BTI_V4SI, RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLD, ALTIVEC_BUILTIN_VSLDOI_4SI,
- RS6000_BTI_bool_V4SI, RS6000_BTI_bool_V4SI, RS6000_BTI_bool_V4SI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_bool_V4SI, RS6000_BTI_bool_V4SI, RS6000_BTI_bool_V4SI, RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLD, ALTIVEC_BUILTIN_VSLDOI_4SI,
- RS6000_BTI_unsigned_V4SI, RS6000_BTI_unsigned_V4SI, RS6000_BTI_unsigned_V4SI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_unsigned_V4SI, RS6000_BTI_unsigned_V4SI, RS6000_BTI_unsigned_V4SI, RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLD, ALTIVEC_BUILTIN_VSLDOI_8HI,
- RS6000_BTI_V8HI, RS6000_BTI_V8HI, RS6000_BTI_V8HI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_V8HI, RS6000_BTI_V8HI, RS6000_BTI_V8HI, RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLD, ALTIVEC_BUILTIN_VSLDOI_8HI,
- RS6000_BTI_unsigned_V8HI, RS6000_BTI_unsigned_V8HI, RS6000_BTI_unsigned_V8HI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_unsigned_V8HI, RS6000_BTI_unsigned_V8HI, RS6000_BTI_unsigned_V8HI, RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLD, ALTIVEC_BUILTIN_VSLDOI_8HI,
- RS6000_BTI_bool_V8HI, RS6000_BTI_bool_V8HI, RS6000_BTI_bool_V8HI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_bool_V8HI, RS6000_BTI_bool_V8HI, RS6000_BTI_bool_V8HI, RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLD, ALTIVEC_BUILTIN_VSLDOI_8HI,
- RS6000_BTI_pixel_V8HI, RS6000_BTI_pixel_V8HI, RS6000_BTI_pixel_V8HI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_pixel_V8HI, RS6000_BTI_pixel_V8HI, RS6000_BTI_pixel_V8HI, RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLD, ALTIVEC_BUILTIN_VSLDOI_16QI,
- RS6000_BTI_V16QI, RS6000_BTI_V16QI, RS6000_BTI_V16QI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_V16QI, RS6000_BTI_V16QI, RS6000_BTI_V16QI, RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLD, ALTIVEC_BUILTIN_VSLDOI_16QI,
- RS6000_BTI_unsigned_V16QI, RS6000_BTI_unsigned_V16QI, RS6000_BTI_unsigned_V16QI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_unsigned_V16QI, RS6000_BTI_unsigned_V16QI, RS6000_BTI_unsigned_V16QI, RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLD, ALTIVEC_BUILTIN_VSLDOI_16QI,
- RS6000_BTI_bool_V16QI, RS6000_BTI_bool_V16QI, RS6000_BTI_bool_V16QI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_bool_V16QI, RS6000_BTI_bool_V16QI, RS6000_BTI_bool_V16QI, RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLD, ALTIVEC_BUILTIN_VSLDOI_2DF,
- RS6000_BTI_V2DF, RS6000_BTI_V2DF, RS6000_BTI_V2DF, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_V2DF, RS6000_BTI_V2DF, RS6000_BTI_V2DF, RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLD, ALTIVEC_BUILTIN_VSLDOI_2DI,
- RS6000_BTI_bool_V2DI, RS6000_BTI_bool_V2DI, RS6000_BTI_bool_V2DI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_bool_V2DI, RS6000_BTI_bool_V2DI, RS6000_BTI_bool_V2DI, RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLD, ALTIVEC_BUILTIN_VSLDOI_2DI,
- RS6000_BTI_V2DI, RS6000_BTI_V2DI, RS6000_BTI_V2DI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_V2DI, RS6000_BTI_V2DI, RS6000_BTI_V2DI, RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLD, ALTIVEC_BUILTIN_VSLDOI_2DI,
- RS6000_BTI_unsigned_V2DI, RS6000_BTI_unsigned_V2DI, RS6000_BTI_unsigned_V2DI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_unsigned_V2DI, RS6000_BTI_unsigned_V2DI, RS6000_BTI_unsigned_V2DI, RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLDW, VSX_BUILTIN_XXSLDWI_16QI,
RS6000_BTI_V16QI, RS6000_BTI_V16QI, RS6000_BTI_V16QI,
- RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLDW, VSX_BUILTIN_XXSLDWI_16QI,
RS6000_BTI_unsigned_V16QI, RS6000_BTI_unsigned_V16QI,
- RS6000_BTI_unsigned_V16QI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_unsigned_V16QI, RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLDW, VSX_BUILTIN_XXSLDWI_8HI,
RS6000_BTI_V8HI, RS6000_BTI_V8HI, RS6000_BTI_V8HI,
- RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLDW, VSX_BUILTIN_XXSLDWI_8HI,
RS6000_BTI_unsigned_V8HI, RS6000_BTI_unsigned_V8HI,
- RS6000_BTI_unsigned_V8HI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_unsigned_V8HI, RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLDW, VSX_BUILTIN_XXSLDWI_4SI,
RS6000_BTI_V4SI, RS6000_BTI_V4SI, RS6000_BTI_V4SI,
- RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLDW, VSX_BUILTIN_XXSLDWI_4SI,
RS6000_BTI_unsigned_V4SI, RS6000_BTI_unsigned_V4SI,
- RS6000_BTI_unsigned_V4SI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_unsigned_V4SI, RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLDW, VSX_BUILTIN_XXSLDWI_2DI,
RS6000_BTI_V2DI, RS6000_BTI_V2DI, RS6000_BTI_V2DI,
- RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_INTSI },
{ ALTIVEC_BUILTIN_VEC_SLDW, VSX_BUILTIN_XXSLDWI_2DI,
RS6000_BTI_unsigned_V2DI, RS6000_BTI_unsigned_V2DI,
- RS6000_BTI_unsigned_V2DI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_unsigned_V2DI, RS6000_BTI_INTSI },
+
{ ALTIVEC_BUILTIN_VEC_ST, ALTIVEC_BUILTIN_STVX_V2DF,
RS6000_BTI_void, RS6000_BTI_V2DF, RS6000_BTI_INTSI, ~RS6000_BTI_V2DF },
{ ALTIVEC_BUILTIN_VEC_ST, ALTIVEC_BUILTIN_STVX_V2DI,
@@ -4154,53 +4155,54 @@ const struct altivec_builtin_types altivec_overloaded_builtins[] = {
RS6000_BTI_void, RS6000_BTI_unsigned_V16QI, RS6000_BTI_INTSI,
~RS6000_BTI_UINTQI },
{ VSX_BUILTIN_VEC_XXSLDWI, VSX_BUILTIN_XXSLDWI_16QI,
- RS6000_BTI_V16QI, RS6000_BTI_V16QI, RS6000_BTI_V16QI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_V16QI, RS6000_BTI_V16QI, RS6000_BTI_V16QI, RS6000_BTI_INTSI },
{ VSX_BUILTIN_VEC_XXSLDWI, VSX_BUILTIN_XXSLDWI_16QI,
RS6000_BTI_unsigned_V16QI, RS6000_BTI_unsigned_V16QI, RS6000_BTI_unsigned_V16QI,
- RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_INTSI },
{ VSX_BUILTIN_VEC_XXSLDWI, VSX_BUILTIN_XXSLDWI_8HI,
- RS6000_BTI_V8HI, RS6000_BTI_V8HI, RS6000_BTI_V8HI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_V8HI, RS6000_BTI_V8HI, RS6000_BTI_V8HI, RS6000_BTI_INTSI },
{ VSX_BUILTIN_VEC_XXSLDWI, VSX_BUILTIN_XXSLDWI_8HI,
RS6000_BTI_unsigned_V8HI, RS6000_BTI_unsigned_V8HI, RS6000_BTI_unsigned_V8HI,
- RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_INTSI },
{ VSX_BUILTIN_VEC_XXSLDWI, VSX_BUILTIN_XXSLDWI_4SI,
- RS6000_BTI_V4SI, RS6000_BTI_V4SI, RS6000_BTI_V4SI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_V4SI, RS6000_BTI_V4SI, RS6000_BTI_V4SI, RS6000_BTI_INTSI },
{ VSX_BUILTIN_VEC_XXSLDWI, VSX_BUILTIN_XXSLDWI_4SI,
RS6000_BTI_unsigned_V4SI, RS6000_BTI_unsigned_V4SI, RS6000_BTI_unsigned_V4SI,
- RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_INTSI },
{ VSX_BUILTIN_VEC_XXSLDWI, VSX_BUILTIN_XXSLDWI_2DI,
- RS6000_BTI_V2DI, RS6000_BTI_V2DI, RS6000_BTI_V2DI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_V2DI, RS6000_BTI_V2DI, RS6000_BTI_V2DI, RS6000_BTI_INTSI },
{ VSX_BUILTIN_VEC_XXSLDWI, VSX_BUILTIN_XXSLDWI_2DI,
RS6000_BTI_unsigned_V2DI, RS6000_BTI_unsigned_V2DI, RS6000_BTI_unsigned_V2DI,
- RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_INTSI },
{ VSX_BUILTIN_VEC_XXSLDWI, VSX_BUILTIN_XXSLDWI_4SF,
- RS6000_BTI_V4SF, RS6000_BTI_V4SF, RS6000_BTI_V4SF, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_V4SF, RS6000_BTI_V4SF, RS6000_BTI_V4SF, RS6000_BTI_INTSI },
{ VSX_BUILTIN_VEC_XXSLDWI, VSX_BUILTIN_XXSLDWI_2DF,
- RS6000_BTI_V2DF, RS6000_BTI_V2DF, RS6000_BTI_V2DF, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_V2DF, RS6000_BTI_V2DF, RS6000_BTI_V2DF, RS6000_BTI_INTSI },
+
{ VSX_BUILTIN_VEC_XXPERMDI, VSX_BUILTIN_XXPERMDI_2DF,
- RS6000_BTI_V2DF, RS6000_BTI_V2DF, RS6000_BTI_V2DF, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_V2DF, RS6000_BTI_V2DF, RS6000_BTI_V2DF, RS6000_BTI_INTSI },
{ VSX_BUILTIN_VEC_XXPERMDI, VSX_BUILTIN_XXPERMDI_2DI,
- RS6000_BTI_V2DI, RS6000_BTI_V2DI, RS6000_BTI_V2DI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_V2DI, RS6000_BTI_V2DI, RS6000_BTI_V2DI, RS6000_BTI_INTSI },
{ VSX_BUILTIN_VEC_XXPERMDI, VSX_BUILTIN_XXPERMDI_2DI,
RS6000_BTI_unsigned_V2DI, RS6000_BTI_unsigned_V2DI, RS6000_BTI_unsigned_V2DI,
- RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_INTSI },
{ VSX_BUILTIN_VEC_XXPERMDI, VSX_BUILTIN_XXPERMDI_4SF,
- RS6000_BTI_V4SF, RS6000_BTI_V4SF, RS6000_BTI_V4SF, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_V4SF, RS6000_BTI_V4SF, RS6000_BTI_V4SF, RS6000_BTI_INTSI },
{ VSX_BUILTIN_VEC_XXPERMDI, VSX_BUILTIN_XXPERMDI_4SI,
- RS6000_BTI_V4SI, RS6000_BTI_V4SI, RS6000_BTI_V4SI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_V4SI, RS6000_BTI_V4SI, RS6000_BTI_V4SI, RS6000_BTI_INTSI },
{ VSX_BUILTIN_VEC_XXPERMDI, VSX_BUILTIN_XXPERMDI_4SI,
RS6000_BTI_unsigned_V4SI, RS6000_BTI_unsigned_V4SI, RS6000_BTI_unsigned_V4SI,
- RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_INTSI },
{ VSX_BUILTIN_VEC_XXPERMDI, VSX_BUILTIN_XXPERMDI_8HI,
- RS6000_BTI_V8HI, RS6000_BTI_V8HI, RS6000_BTI_V8HI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_V8HI, RS6000_BTI_V8HI, RS6000_BTI_V8HI, RS6000_BTI_INTSI },
{ VSX_BUILTIN_VEC_XXPERMDI, VSX_BUILTIN_XXPERMDI_8HI,
RS6000_BTI_unsigned_V8HI, RS6000_BTI_unsigned_V8HI, RS6000_BTI_unsigned_V8HI,
- RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_INTSI },
{ VSX_BUILTIN_VEC_XXPERMDI, VSX_BUILTIN_XXPERMDI_16QI,
- RS6000_BTI_V16QI, RS6000_BTI_V16QI, RS6000_BTI_V16QI, RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_V16QI, RS6000_BTI_V16QI, RS6000_BTI_V16QI, RS6000_BTI_INTSI },
{ VSX_BUILTIN_VEC_XXPERMDI, VSX_BUILTIN_XXPERMDI_16QI,
RS6000_BTI_unsigned_V16QI, RS6000_BTI_unsigned_V16QI, RS6000_BTI_unsigned_V16QI,
- RS6000_BTI_NOT_OPAQUE },
+ RS6000_BTI_INTSI },
{ VSX_BUILTIN_VEC_LD, VSX_BUILTIN_LXVD2X_V2DF,
RS6000_BTI_V2DF, RS6000_BTI_INTSI, ~RS6000_BTI_V2DF, 0 },
@@ -5429,10 +5431,8 @@ const struct altivec_builtin_types altivec_overloaded_builtins[] = {
{ P9V_BUILTIN_VEC_VCTZLSBB, P9V_BUILTIN_VCTZLSBB_V4SI,
RS6000_BTI_INTSI, RS6000_BTI_V4SI, 0, 0 },
- { P9V_BUILTIN_VEC_VEXTRACT4B, P9V_BUILTIN_VEXTRACT4B,
- RS6000_BTI_INTDI, RS6000_BTI_V16QI, RS6000_BTI_UINTSI, 0 },
- { P9V_BUILTIN_VEC_VEXTRACT4B, P9V_BUILTIN_VEXTRACT4B,
- RS6000_BTI_INTDI, RS6000_BTI_unsigned_V16QI, RS6000_BTI_UINTSI, 0 },
+ { P9V_BUILTIN_VEC_EXTRACT4B, P9V_BUILTIN_EXTRACT4B,
+ RS6000_BTI_unsigned_V2DI, RS6000_BTI_unsigned_V16QI, RS6000_BTI_INTSI, 0 },
{ P9V_BUILTIN_VEC_VEXTRACT_FP_FROM_SHORTH, P9V_BUILTIN_VEXTRACT_FP_FROM_SHORTH,
RS6000_BTI_V4SF, RS6000_BTI_unsigned_V8HI, 0, 0 },
@@ -5492,27 +5492,12 @@ const struct altivec_builtin_types altivec_overloaded_builtins[] = {
{ P8V_BUILTIN_VEC_VGBBD, P8V_BUILTIN_VGBBD,
RS6000_BTI_unsigned_V16QI, RS6000_BTI_unsigned_V16QI, 0, 0 },
- { P9V_BUILTIN_VEC_VINSERT4B, P9V_BUILTIN_VINSERT4B,
- RS6000_BTI_V16QI, RS6000_BTI_V4SI,
- RS6000_BTI_V16QI, RS6000_BTI_UINTSI },
- { P9V_BUILTIN_VEC_VINSERT4B, P9V_BUILTIN_VINSERT4B,
- RS6000_BTI_V16QI, RS6000_BTI_unsigned_V4SI,
- RS6000_BTI_V16QI, RS6000_BTI_UINTSI },
- { P9V_BUILTIN_VEC_VINSERT4B, P9V_BUILTIN_VINSERT4B,
+ { P9V_BUILTIN_VEC_INSERT4B, P9V_BUILTIN_INSERT4B,
+ RS6000_BTI_unsigned_V16QI, RS6000_BTI_V4SI,
+ RS6000_BTI_unsigned_V16QI, RS6000_BTI_INTSI },
+ { P9V_BUILTIN_VEC_INSERT4B, P9V_BUILTIN_INSERT4B,
RS6000_BTI_unsigned_V16QI, RS6000_BTI_unsigned_V4SI,
- RS6000_BTI_unsigned_V16QI, RS6000_BTI_UINTSI },
- { P9V_BUILTIN_VEC_VINSERT4B, P9V_BUILTIN_VINSERT4B_DI,
- RS6000_BTI_V16QI, RS6000_BTI_INTDI,
- RS6000_BTI_V16QI, RS6000_BTI_UINTDI },
- { P9V_BUILTIN_VEC_VINSERT4B, P9V_BUILTIN_VINSERT4B_DI,
- RS6000_BTI_V16QI, RS6000_BTI_UINTDI,
- RS6000_BTI_V16QI, RS6000_BTI_UINTDI },
- { P9V_BUILTIN_VEC_VINSERT4B, P9V_BUILTIN_VINSERT4B_DI,
- RS6000_BTI_unsigned_V16QI, RS6000_BTI_INTDI,
- RS6000_BTI_unsigned_V16QI, RS6000_BTI_UINTDI },
- { P9V_BUILTIN_VEC_VINSERT4B, P9V_BUILTIN_VINSERT4B_DI,
- RS6000_BTI_unsigned_V16QI, RS6000_BTI_UINTDI,
- RS6000_BTI_unsigned_V16QI, RS6000_BTI_UINTDI },
+ RS6000_BTI_unsigned_V16QI, RS6000_BTI_INTSI },
{ P8V_BUILTIN_VEC_VADDECUQ, P8V_BUILTIN_VADDECUQ,
RS6000_BTI_V1TI, RS6000_BTI_V1TI, RS6000_BTI_V1TI, RS6000_BTI_V1TI },
@@ -5891,7 +5876,7 @@ const struct altivec_builtin_types altivec_overloaded_builtins[] = {
RS6000_BTI_V4SI, RS6000_BTI_V2DF, 0, 0 },
{ VSX_BUILTIN_VEC_VSIGNEDO, VSX_BUILTIN_VEC_VSIGNEDO_V2DF,
RS6000_BTI_V4SI, RS6000_BTI_V2DF, 0, 0 },
- { VSX_BUILTIN_VEC_VSIGNED2, VSX_BUILTIN_VEC_VSIGNED2_V2DF,
+ { P8V_BUILTIN_VEC_VSIGNED2, P8V_BUILTIN_VEC_VSIGNED2_V2DF,
RS6000_BTI_V4SI, RS6000_BTI_V2DF, RS6000_BTI_V2DF, 0 },
{ VSX_BUILTIN_VEC_VUNSIGNED, VSX_BUILTIN_VEC_VUNSIGNED_V4SF,
@@ -5902,7 +5887,7 @@ const struct altivec_builtin_types altivec_overloaded_builtins[] = {
RS6000_BTI_unsigned_V4SI, RS6000_BTI_V2DF, 0, 0 },
{ VSX_BUILTIN_VEC_VUNSIGNEDO, VSX_BUILTIN_VEC_VUNSIGNEDO_V2DF,
RS6000_BTI_unsigned_V4SI, RS6000_BTI_V2DF, 0, 0 },
- { VSX_BUILTIN_VEC_VUNSIGNED2, VSX_BUILTIN_VEC_VUNSIGNED2_V2DF,
+ { P8V_BUILTIN_VEC_VUNSIGNED2, P8V_BUILTIN_VEC_VUNSIGNED2_V2DF,
RS6000_BTI_unsigned_V4SI, RS6000_BTI_V2DF,
RS6000_BTI_V2DF, 0 },
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 6a6801aad9b..d0de4b5224d 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -4028,6 +4028,13 @@ rs6000_option_override_internal (bool global_init_p)
if (global_init_p)
rs6000_isa_flags_explicit = global_options_set.x_rs6000_isa_flags;
+ /* We plan to deprecate the -maltivec=be option. For now, just
+ issue a warning message. */
+ if (global_init_p
+ && rs6000_altivec_element_order == 2)
+ warning (0, "%qs command-line option is deprecated",
+ "-maltivec=be");
+
/* On 64-bit Darwin, power alignment is ABI-incompatible with some C
library functions, so warn about it. The flag may be useful for
performance studies from time to time though, so don't disable it
@@ -4813,25 +4820,6 @@ rs6000_option_override_internal (bool global_init_p)
if (TARGET_DEBUG_REG || TARGET_DEBUG_TARGET)
rs6000_print_isa_options (stderr, 0, "after subtarget", rs6000_isa_flags);
- /* For the E500 family of cores, reset the single/double FP flags to let us
- check that they remain constant across attributes or pragmas. */
-
- switch (rs6000_cpu)
- {
- case PROCESSOR_PPC8540:
- case PROCESSOR_PPC8548:
- case PROCESSOR_PPCE500MC:
- case PROCESSOR_PPCE500MC64:
- case PROCESSOR_PPCE5500:
- case PROCESSOR_PPCE6500:
- rs6000_single_float = 0;
- rs6000_double_float = 0;
- break;
-
- default:
- break;
- }
-
if (main_target_opt)
{
if (main_target_opt->x_rs6000_single_float != rs6000_single_float)
@@ -8220,6 +8208,12 @@ mem_operand_gpr (rtx op, machine_mode mode)
int extra;
rtx addr = XEXP (op, 0);
+ /* Don't allow altivec type addresses like (mem (and (plus ...))).
+ See PR target/84279. */
+
+ if (GET_CODE (addr) == AND)
+ return false;
+
op = address_offset (addr);
if (op == NULL_RTX)
return true;
@@ -15728,8 +15722,7 @@ altivec_expand_builtin (tree exp, rtx target, bool *expandedp)
case VSX_BUILTIN_VEC_EXT_V1TI:
return altivec_expand_vec_ext_builtin (exp, target);
- case P9V_BUILTIN_VEXTRACT4B:
- case P9V_BUILTIN_VEC_VEXTRACT4B:
+ case P9V_BUILTIN_VEC_EXTRACT4B:
arg1 = CALL_EXPR_ARG (exp, 1);
STRIP_NOPS (arg1);
@@ -15744,9 +15737,7 @@ altivec_expand_builtin (tree exp, rtx target, bool *expandedp)
}
break;
- case P9V_BUILTIN_VINSERT4B:
- case P9V_BUILTIN_VINSERT4B_DI:
- case P9V_BUILTIN_VEC_VINSERT4B:
+ case P9V_BUILTIN_VEC_INSERT4B:
arg2 = CALL_EXPR_ARG (exp, 2);
STRIP_NOPS (arg2);
diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md
index 5f44d80ef0e..0976d50d845 100644
--- a/gcc/config/rs6000/rs6000.md
+++ b/gcc/config/rs6000/rs6000.md
@@ -1576,12 +1576,12 @@
"dlmzb. %0,%1,%2")
(define_expand "strlensi"
- [(set (match_operand:SI 0 "gpc_reg_operand" "")
- (unspec:SI [(match_operand:BLK 1 "general_operand" "")
- (match_operand:QI 2 "const_int_operand" "")
- (match_operand 3 "const_int_operand" "")]
+ [(set (match_operand:SI 0 "gpc_reg_operand")
+ (unspec:SI [(match_operand:BLK 1 "general_operand")
+ (match_operand:QI 2 "const_int_operand")
+ (match_operand 3 "const_int_operand")]
UNSPEC_DLMZB_STRLEN))
- (clobber (match_scratch:CC 4 "=x"))]
+ (clobber (match_scratch:CC 4))]
"TARGET_DLMZB && WORDS_BIG_ENDIAN && !optimize_size"
{
rtx result = operands[0];
@@ -1630,9 +1630,9 @@
;; Fixed-point arithmetic insns.
(define_expand "add<mode>3"
- [(set (match_operand:SDI 0 "gpc_reg_operand" "")
- (plus:SDI (match_operand:SDI 1 "gpc_reg_operand" "")
- (match_operand:SDI 2 "reg_or_add_cint_operand" "")))]
+ [(set (match_operand:SDI 0 "gpc_reg_operand")
+ (plus:SDI (match_operand:SDI 1 "gpc_reg_operand")
+ (match_operand:SDI 2 "reg_or_add_cint_operand")))]
""
{
if (<MODE>mode == DImode && !TARGET_POWERPC64)
@@ -1805,9 +1805,9 @@
;; add should be last in case the result gets used in an address.
(define_split
- [(set (match_operand:GPR 0 "gpc_reg_operand" "")
- (plus:GPR (match_operand:GPR 1 "gpc_reg_operand" "")
- (match_operand:GPR 2 "non_add_cint_operand" "")))]
+ [(set (match_operand:GPR 0 "gpc_reg_operand")
+ (plus:GPR (match_operand:GPR 1 "gpc_reg_operand")
+ (match_operand:GPR 2 "non_add_cint_operand")))]
""
[(set (match_dup 0) (plus:GPR (match_dup 1) (match_dup 3)))
(set (match_dup 0) (plus:GPR (match_dup 0) (match_dup 4)))]
@@ -1950,8 +1950,8 @@
(define_expand "one_cmpl<mode>2"
- [(set (match_operand:SDI 0 "gpc_reg_operand" "")
- (not:SDI (match_operand:SDI 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:SDI 0 "gpc_reg_operand")
+ (not:SDI (match_operand:SDI 1 "gpc_reg_operand")))]
""
{
if (<MODE>mode == DImode && !TARGET_POWERPC64)
@@ -2010,9 +2010,9 @@
(define_expand "sub<mode>3"
- [(set (match_operand:SDI 0 "gpc_reg_operand" "")
- (minus:SDI (match_operand:SDI 1 "reg_or_short_operand" "")
- (match_operand:SDI 2 "gpc_reg_operand" "")))]
+ [(set (match_operand:SDI 0 "gpc_reg_operand")
+ (minus:SDI (match_operand:SDI 1 "reg_or_short_operand")
+ (match_operand:SDI 2 "gpc_reg_operand")))]
""
{
if (<MODE>mode == DImode && !TARGET_POWERPC64)
@@ -2338,8 +2338,8 @@
(define_expand "popcount<mode>2"
- [(set (match_operand:GPR 0 "gpc_reg_operand" "")
- (popcount:GPR (match_operand:GPR 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:GPR 0 "gpc_reg_operand")
+ (popcount:GPR (match_operand:GPR 1 "gpc_reg_operand")))]
"TARGET_POPCNTB || TARGET_POPCNTD"
{
rs6000_emit_popcount (operands[0], operands[1]);
@@ -2363,8 +2363,8 @@
(define_expand "parity<mode>2"
- [(set (match_operand:GPR 0 "gpc_reg_operand" "")
- (parity:GPR (match_operand:GPR 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:GPR 0 "gpc_reg_operand")
+ (parity:GPR (match_operand:GPR 1 "gpc_reg_operand")))]
"TARGET_POPCNTB"
{
rs6000_emit_parity (operands[0], operands[1]);
@@ -2508,11 +2508,11 @@
;; complex code.
(define_expand "bswapdi2"
- [(parallel [(set (match_operand:DI 0 "reg_or_mem_operand" "")
+ [(parallel [(set (match_operand:DI 0 "reg_or_mem_operand")
(bswap:DI
- (match_operand:DI 1 "reg_or_mem_operand" "")))
- (clobber (match_scratch:DI 2 ""))
- (clobber (match_scratch:DI 3 ""))])]
+ (match_operand:DI 1 "reg_or_mem_operand")))
+ (clobber (match_scratch:DI 2))
+ (clobber (match_scratch:DI 3))])]
""
{
rtx dest = operands[0];
@@ -2589,13 +2589,12 @@
[(set_attr "length" "16,12,36")])
(define_split
- [(set (match_operand:DI 0 "gpc_reg_operand" "")
- (bswap:DI (match_operand:DI 1 "indexed_or_indirect_operand" "")))
- (clobber (match_operand:DI 2 "gpc_reg_operand" ""))
- (clobber (match_operand:DI 3 "gpc_reg_operand" ""))]
+ [(set (match_operand:DI 0 "gpc_reg_operand")
+ (bswap:DI (match_operand:DI 1 "indexed_or_indirect_operand")))
+ (clobber (match_operand:DI 2 "gpc_reg_operand"))
+ (clobber (match_operand:DI 3 "gpc_reg_operand"))]
"TARGET_POWERPC64 && !TARGET_LDBRX && reload_completed"
[(const_int 0)]
- "
{
rtx dest = operands[0];
rtx src = operands[1];
@@ -2650,16 +2649,15 @@
emit_insn (gen_ashldi3 (op3, op3, GEN_INT (32)));
emit_insn (gen_iordi3 (dest, dest, op3));
DONE;
-}")
+})
(define_split
- [(set (match_operand:DI 0 "indexed_or_indirect_operand" "")
- (bswap:DI (match_operand:DI 1 "gpc_reg_operand" "")))
- (clobber (match_operand:DI 2 "gpc_reg_operand" ""))
- (clobber (match_operand:DI 3 "gpc_reg_operand" ""))]
+ [(set (match_operand:DI 0 "indexed_or_indirect_operand")
+ (bswap:DI (match_operand:DI 1 "gpc_reg_operand")))
+ (clobber (match_operand:DI 2 "gpc_reg_operand"))
+ (clobber (match_operand:DI 3 "gpc_reg_operand"))]
"TARGET_POWERPC64 && !TARGET_LDBRX && reload_completed"
[(const_int 0)]
- "
{
rtx dest = operands[0];
rtx src = operands[1];
@@ -2713,16 +2711,15 @@
emit_insn (gen_bswapsi2 (word1, op3_si));
}
DONE;
-}")
+})
(define_split
- [(set (match_operand:DI 0 "gpc_reg_operand" "")
- (bswap:DI (match_operand:DI 1 "gpc_reg_operand" "")))
- (clobber (match_operand:DI 2 "gpc_reg_operand" ""))
- (clobber (match_operand:DI 3 "gpc_reg_operand" ""))]
+ [(set (match_operand:DI 0 "gpc_reg_operand")
+ (bswap:DI (match_operand:DI 1 "gpc_reg_operand")))
+ (clobber (match_operand:DI 2 "gpc_reg_operand"))
+ (clobber (match_operand:DI 3 "gpc_reg_operand"))]
"TARGET_POWERPC64 && !TARGET_P9_VECTOR && reload_completed"
[(const_int 0)]
- "
{
rtx dest = operands[0];
rtx src = operands[1];
@@ -2740,7 +2737,7 @@
emit_insn (gen_ashldi3 (dest, dest, GEN_INT (32)));
emit_insn (gen_iordi3 (dest, dest, op3));
DONE;
-}")
+})
(define_insn "bswapdi2_32bit"
[(set (match_operand:DI 0 "reg_or_mem_operand" "=r,Z,?&r")
@@ -2751,12 +2748,11 @@
[(set_attr "length" "16,12,36")])
(define_split
- [(set (match_operand:DI 0 "gpc_reg_operand" "")
- (bswap:DI (match_operand:DI 1 "indexed_or_indirect_operand" "")))
- (clobber (match_operand:SI 2 "gpc_reg_operand" ""))]
+ [(set (match_operand:DI 0 "gpc_reg_operand")
+ (bswap:DI (match_operand:DI 1 "indexed_or_indirect_operand")))
+ (clobber (match_operand:SI 2 "gpc_reg_operand"))]
"!TARGET_POWERPC64 && reload_completed"
[(const_int 0)]
- "
{
rtx dest = operands[0];
rtx src = operands[1];
@@ -2801,15 +2797,14 @@
thus allowing us to omit an early clobber on the output. */
emit_insn (gen_bswapsi2 (dest1, word2));
DONE;
-}")
+})
(define_split
- [(set (match_operand:DI 0 "indexed_or_indirect_operand" "")
- (bswap:DI (match_operand:DI 1 "gpc_reg_operand" "")))
- (clobber (match_operand:SI 2 "gpc_reg_operand" ""))]
+ [(set (match_operand:DI 0 "indexed_or_indirect_operand")
+ (bswap:DI (match_operand:DI 1 "gpc_reg_operand")))
+ (clobber (match_operand:SI 2 "gpc_reg_operand"))]
"!TARGET_POWERPC64 && reload_completed"
[(const_int 0)]
- "
{
rtx dest = operands[0];
rtx src = operands[1];
@@ -2850,15 +2845,14 @@
emit_insn (gen_bswapsi2 (word2, src1));
emit_insn (gen_bswapsi2 (word1, src2));
DONE;
-}")
+})
(define_split
- [(set (match_operand:DI 0 "gpc_reg_operand" "")
- (bswap:DI (match_operand:DI 1 "gpc_reg_operand" "")))
- (clobber (match_operand:SI 2 "" ""))]
+ [(set (match_operand:DI 0 "gpc_reg_operand")
+ (bswap:DI (match_operand:DI 1 "gpc_reg_operand")))
+ (clobber (match_operand:SI 2 ""))]
"!TARGET_POWERPC64 && reload_completed"
[(const_int 0)]
- "
{
rtx dest = operands[0];
rtx src = operands[1];
@@ -2870,7 +2864,7 @@
emit_insn (gen_bswapsi2 (dest1, src2));
emit_insn (gen_bswapsi2 (dest2, src1));
DONE;
-}")
+})
(define_insn "mul<mode>3"
@@ -2883,9 +2877,9 @@
mulli %0,%1,%2"
[(set_attr "type" "mul")
(set (attr "size")
- (cond [(match_operand:GPR 2 "s8bit_cint_operand" "")
+ (cond [(match_operand:GPR 2 "s8bit_cint_operand")
(const_string "8")
- (match_operand:GPR 2 "short_cint_operand" "")
+ (match_operand:GPR 2 "short_cint_operand")
(const_string "16")]
(const_string "<bits>")))])
@@ -3054,9 +3048,9 @@
;; modulus. If it isn't a power of two, force operands into register and do
;; a normal divide.
(define_expand "div<mode>3"
- [(set (match_operand:GPR 0 "gpc_reg_operand" "")
- (div:GPR (match_operand:GPR 1 "gpc_reg_operand" "")
- (match_operand:GPR 2 "reg_or_cint_operand" "")))]
+ [(set (match_operand:GPR 0 "gpc_reg_operand")
+ (div:GPR (match_operand:GPR 1 "gpc_reg_operand")
+ (match_operand:GPR 2 "reg_or_cint_operand")))]
""
{
if (CONST_INT_P (operands[2])
@@ -3196,10 +3190,10 @@
;; after a divide.
(define_peephole2
- [(set (match_operand:GPR 0 "gpc_reg_operand" "")
- (div:GPR (match_operand:GPR 1 "gpc_reg_operand" "")
- (match_operand:GPR 2 "gpc_reg_operand" "")))
- (set (match_operand:GPR 3 "gpc_reg_operand" "")
+ [(set (match_operand:GPR 0 "gpc_reg_operand")
+ (div:GPR (match_operand:GPR 1 "gpc_reg_operand")
+ (match_operand:GPR 2 "gpc_reg_operand")))
+ (set (match_operand:GPR 3 "gpc_reg_operand")
(mod:GPR (match_dup 1)
(match_dup 2)))]
"TARGET_MODULO
@@ -3218,10 +3212,10 @@
(match_dup 3)))])
(define_peephole2
- [(set (match_operand:GPR 0 "gpc_reg_operand" "")
- (udiv:GPR (match_operand:GPR 1 "gpc_reg_operand" "")
- (match_operand:GPR 2 "gpc_reg_operand" "")))
- (set (match_operand:GPR 3 "gpc_reg_operand" "")
+ [(set (match_operand:GPR 0 "gpc_reg_operand")
+ (udiv:GPR (match_operand:GPR 1 "gpc_reg_operand")
+ (match_operand:GPR 2 "gpc_reg_operand")))
+ (set (match_operand:GPR 3 "gpc_reg_operand")
(umod:GPR (match_dup 1)
(match_dup 2)))]
"TARGET_MODULO
@@ -3247,9 +3241,9 @@
;; those rotate-and-mask operations. Thus, the AND insns come first.
(define_expand "and<mode>3"
- [(set (match_operand:SDI 0 "gpc_reg_operand" "")
- (and:SDI (match_operand:SDI 1 "gpc_reg_operand" "")
- (match_operand:SDI 2 "reg_or_cint_operand" "")))]
+ [(set (match_operand:SDI 0 "gpc_reg_operand")
+ (and:SDI (match_operand:SDI 1 "gpc_reg_operand")
+ (match_operand:SDI 2 "reg_or_cint_operand")))]
""
{
if (<MODE>mode == DImode && !TARGET_POWERPC64)
@@ -3545,9 +3539,9 @@
(define_expand "<code><mode>3"
- [(set (match_operand:SDI 0 "gpc_reg_operand" "")
- (iorxor:SDI (match_operand:SDI 1 "gpc_reg_operand" "")
- (match_operand:SDI 2 "reg_or_cint_operand" "")))]
+ [(set (match_operand:SDI 0 "gpc_reg_operand")
+ (iorxor:SDI (match_operand:SDI 1 "gpc_reg_operand")
+ (match_operand:SDI 2 "reg_or_cint_operand")))]
""
{
if (<MODE>mode == DImode && !TARGET_POWERPC64)
@@ -3576,9 +3570,9 @@
})
(define_split
- [(set (match_operand:GPR 0 "gpc_reg_operand" "")
- (iorxor:GPR (match_operand:GPR 1 "gpc_reg_operand" "")
- (match_operand:GPR 2 "non_logical_cint_operand" "")))]
+ [(set (match_operand:GPR 0 "gpc_reg_operand")
+ (iorxor:GPR (match_operand:GPR 1 "gpc_reg_operand")
+ (match_operand:GPR 2 "non_logical_cint_operand")))]
""
[(set (match_dup 3)
(iorxor:GPR (match_dup 1)
@@ -4479,9 +4473,9 @@
;; Builtins to replace a division to generate FRE reciprocal estimate
;; instructions and the necessary fixup instructions
(define_expand "recip<mode>3"
- [(match_operand:RECIPF 0 "gpc_reg_operand" "")
- (match_operand:RECIPF 1 "gpc_reg_operand" "")
- (match_operand:RECIPF 2 "gpc_reg_operand" "")]
+ [(match_operand:RECIPF 0 "gpc_reg_operand")
+ (match_operand:RECIPF 1 "gpc_reg_operand")
+ (match_operand:RECIPF 2 "gpc_reg_operand")]
"RS6000_RECIP_HAVE_RE_P (<MODE>mode)"
{
rs6000_emit_swdiv (operands[0], operands[1], operands[2], false);
@@ -4494,9 +4488,9 @@
;; We used to also check optimize_insn_for_speed_p () but problems with guessed
;; frequencies (pr68212/pr77536) yields that unreliable so it was removed.
(define_split
- [(set (match_operand:RECIPF 0 "gpc_reg_operand" "")
- (div:RECIPF (match_operand 1 "gpc_reg_operand" "")
- (match_operand 2 "gpc_reg_operand" "")))]
+ [(set (match_operand:RECIPF 0 "gpc_reg_operand")
+ (div:RECIPF (match_operand 1 "gpc_reg_operand")
+ (match_operand 2 "gpc_reg_operand")))]
"RS6000_RECIP_AUTO_RE_P (<MODE>mode)
&& can_create_pseudo_p () && flag_finite_math_only
&& !flag_trapping_math && flag_reciprocal_math"
@@ -4509,8 +4503,8 @@
;; Builtins to replace 1/sqrt(x) with instructions using RSQRTE and the
;; appropriate fixup.
(define_expand "rsqrt<mode>2"
- [(match_operand:RECIPF 0 "gpc_reg_operand" "")
- (match_operand:RECIPF 1 "gpc_reg_operand" "")]
+ [(match_operand:RECIPF 0 "gpc_reg_operand")
+ (match_operand:RECIPF 1 "gpc_reg_operand")]
"RS6000_RECIP_HAVE_RSQRTE_P (<MODE>mode)"
{
rs6000_emit_swsqrt (operands[0], operands[1], 1);
@@ -4523,8 +4517,8 @@
;; -mupper-regs-{df,sf} option is enabled.
(define_expand "abs<mode>2"
- [(set (match_operand:SFDF 0 "gpc_reg_operand" "")
- (abs:SFDF (match_operand:SFDF 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:SFDF 0 "gpc_reg_operand")
+ (abs:SFDF (match_operand:SFDF 1 "gpc_reg_operand")))]
"TARGET_<MODE>_INSN"
"")
@@ -4551,8 +4545,8 @@
(set_attr "fp_type" "fp_addsub_<Fs>")])
(define_expand "neg<mode>2"
- [(set (match_operand:SFDF 0 "gpc_reg_operand" "")
- (neg:SFDF (match_operand:SFDF 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:SFDF 0 "gpc_reg_operand")
+ (neg:SFDF (match_operand:SFDF 1 "gpc_reg_operand")))]
"TARGET_<MODE>_INSN"
"")
@@ -4567,9 +4561,9 @@
(set_attr "fp_type" "fp_addsub_<Fs>")])
(define_expand "add<mode>3"
- [(set (match_operand:SFDF 0 "gpc_reg_operand" "")
- (plus:SFDF (match_operand:SFDF 1 "gpc_reg_operand" "")
- (match_operand:SFDF 2 "gpc_reg_operand" "")))]
+ [(set (match_operand:SFDF 0 "gpc_reg_operand")
+ (plus:SFDF (match_operand:SFDF 1 "gpc_reg_operand")
+ (match_operand:SFDF 2 "gpc_reg_operand")))]
"TARGET_<MODE>_INSN"
"")
@@ -4585,9 +4579,9 @@
(set_attr "fp_type" "fp_addsub_<Fs>")])
(define_expand "sub<mode>3"
- [(set (match_operand:SFDF 0 "gpc_reg_operand" "")
- (minus:SFDF (match_operand:SFDF 1 "gpc_reg_operand" "")
- (match_operand:SFDF 2 "gpc_reg_operand" "")))]
+ [(set (match_operand:SFDF 0 "gpc_reg_operand")
+ (minus:SFDF (match_operand:SFDF 1 "gpc_reg_operand")
+ (match_operand:SFDF 2 "gpc_reg_operand")))]
"TARGET_<MODE>_INSN"
"")
@@ -4603,9 +4597,9 @@
(set_attr "fp_type" "fp_addsub_<Fs>")])
(define_expand "mul<mode>3"
- [(set (match_operand:SFDF 0 "gpc_reg_operand" "")
- (mult:SFDF (match_operand:SFDF 1 "gpc_reg_operand" "")
- (match_operand:SFDF 2 "gpc_reg_operand" "")))]
+ [(set (match_operand:SFDF 0 "gpc_reg_operand")
+ (mult:SFDF (match_operand:SFDF 1 "gpc_reg_operand")
+ (match_operand:SFDF 2 "gpc_reg_operand")))]
"TARGET_<MODE>_INSN"
"")
@@ -4621,9 +4615,9 @@
(set_attr "fp_type" "fp_mul_<Fs>")])
(define_expand "div<mode>3"
- [(set (match_operand:SFDF 0 "gpc_reg_operand" "")
- (div:SFDF (match_operand:SFDF 1 "gpc_reg_operand" "")
- (match_operand:SFDF 2 "gpc_reg_operand" "")))]
+ [(set (match_operand:SFDF 0 "gpc_reg_operand")
+ (div:SFDF (match_operand:SFDF 1 "gpc_reg_operand")
+ (match_operand:SFDF 2 "gpc_reg_operand")))]
"TARGET_<MODE>_INSN && !TARGET_SIMPLE_FPU"
{
if (RS6000_RECIP_AUTO_RE_P (<MODE>mode)
@@ -4658,8 +4652,8 @@
(set_attr "fp_type" "fp_sqrt_<Fs>")])
(define_expand "sqrt<mode>2"
- [(set (match_operand:SFDF 0 "gpc_reg_operand" "")
- (sqrt:SFDF (match_operand:SFDF 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:SFDF 0 "gpc_reg_operand")
+ (sqrt:SFDF (match_operand:SFDF 1 "gpc_reg_operand")))]
"TARGET_<MODE>_FPR && !TARGET_SIMPLE_FPU
&& (TARGET_PPC_GPOPT || (<MODE>mode == SFmode && TARGET_XILINX_FPU))"
{
@@ -4747,8 +4741,8 @@
[(set_attr "type" "fp")])
(define_expand "truncdfsf2"
- [(set (match_operand:SF 0 "gpc_reg_operand" "")
- (float_truncate:SF (match_operand:DF 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:SF 0 "gpc_reg_operand")
+ (float_truncate:SF (match_operand:DF 1 "gpc_reg_operand")))]
"TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT"
"")
@@ -4766,12 +4760,12 @@
;; when little-endian.
(define_expand "signbit<mode>2"
[(set (match_dup 2)
- (float_truncate:DF (match_operand:FLOAT128 1 "gpc_reg_operand" "")))
+ (float_truncate:DF (match_operand:FLOAT128 1 "gpc_reg_operand")))
(set (match_dup 3)
(subreg:DI (match_dup 2) 0))
(set (match_dup 4)
(match_dup 5))
- (set (match_operand:SI 0 "gpc_reg_operand" "")
+ (set (match_operand:SI 0 "gpc_reg_operand")
(match_dup 6))]
"TARGET_HARD_FLOAT
&& (!FLOAT128_IEEE_P (<MODE>mode)
@@ -4874,11 +4868,11 @@
(define_expand "copysign<mode>3"
[(set (match_dup 3)
- (abs:SFDF (match_operand:SFDF 1 "gpc_reg_operand" "")))
+ (abs:SFDF (match_operand:SFDF 1 "gpc_reg_operand")))
(set (match_dup 4)
(neg:SFDF (abs:SFDF (match_dup 1))))
- (set (match_operand:SFDF 0 "gpc_reg_operand" "")
- (if_then_else:SFDF (ge (match_operand:SFDF 2 "gpc_reg_operand" "")
+ (set (match_operand:SFDF 0 "gpc_reg_operand")
+ (if_then_else:SFDF (ge (match_operand:SFDF 2 "gpc_reg_operand")
(match_dup 5))
(match_dup 3)
(match_dup 4)))]
@@ -4928,9 +4922,9 @@
;; to allow either DF/SF to use only traditional registers.
(define_expand "s<minmax><mode>3"
- [(set (match_operand:SFDF 0 "gpc_reg_operand" "")
- (fp_minmax:SFDF (match_operand:SFDF 1 "gpc_reg_operand" "")
- (match_operand:SFDF 2 "gpc_reg_operand" "")))]
+ [(set (match_operand:SFDF 0 "gpc_reg_operand")
+ (fp_minmax:SFDF (match_operand:SFDF 1 "gpc_reg_operand")
+ (match_operand:SFDF 2 "gpc_reg_operand")))]
"TARGET_MINMAX_<MODE>"
{
rs6000_emit_minmax (operands[0], <SMINMAX>, operands[1], operands[2]);
@@ -4954,9 +4948,9 @@
;; instruction.
(define_insn_and_split "*s<minmax><mode>3_fpr"
- [(set (match_operand:SFDF 0 "gpc_reg_operand" "")
- (fp_minmax:SFDF (match_operand:SFDF 1 "gpc_reg_operand" "")
- (match_operand:SFDF 2 "gpc_reg_operand" "")))]
+ [(set (match_operand:SFDF 0 "gpc_reg_operand")
+ (fp_minmax:SFDF (match_operand:SFDF 1 "gpc_reg_operand")
+ (match_operand:SFDF 2 "gpc_reg_operand")))]
"!TARGET_VSX && TARGET_MINMAX_<MODE>"
"#"
"&& 1"
@@ -4967,18 +4961,17 @@
})
(define_expand "mov<mode>cc"
- [(set (match_operand:GPR 0 "gpc_reg_operand" "")
- (if_then_else:GPR (match_operand 1 "comparison_operator" "")
- (match_operand:GPR 2 "gpc_reg_operand" "")
- (match_operand:GPR 3 "gpc_reg_operand" "")))]
+ [(set (match_operand:GPR 0 "gpc_reg_operand")
+ (if_then_else:GPR (match_operand 1 "comparison_operator")
+ (match_operand:GPR 2 "gpc_reg_operand")
+ (match_operand:GPR 3 "gpc_reg_operand")))]
"TARGET_ISEL"
- "
{
if (rs6000_emit_cmove (operands[0], operands[1], operands[2], operands[3]))
DONE;
else
FAIL;
-}")
+})
;; We use the BASE_REGS for the isel input operands because, if rA is
;; 0, the value of 0 is placed in rD upon truth. Similarly for rB
@@ -5048,18 +5041,17 @@
;; Floating point conditional move
(define_expand "mov<mode>cc"
- [(set (match_operand:SFDF 0 "gpc_reg_operand" "")
- (if_then_else:SFDF (match_operand 1 "comparison_operator" "")
- (match_operand:SFDF 2 "gpc_reg_operand" "")
- (match_operand:SFDF 3 "gpc_reg_operand" "")))]
+ [(set (match_operand:SFDF 0 "gpc_reg_operand")
+ (if_then_else:SFDF (match_operand 1 "comparison_operator")
+ (match_operand:SFDF 2 "gpc_reg_operand")
+ (match_operand:SFDF 3 "gpc_reg_operand")))]
"TARGET_<MODE>_FPR && TARGET_PPC_GFXOPT"
- "
{
if (rs6000_emit_cmove (operands[0], operands[1], operands[2], operands[3]))
DONE;
else
FAIL;
-}")
+})
(define_insn "*fsel<SFDF:mode><SFDF2:mode>4"
[(set (match_operand:SFDF 0 "gpc_reg_operand" "=&<SFDF:rreg2>")
@@ -5193,7 +5185,6 @@
"#"
""
[(pc)]
- "
{
rtx dest = operands[0];
rtx src = operands[1];
@@ -5221,7 +5212,7 @@
}
emit_insn (gen_floatdi<mode>2 (dest, tmp));
DONE;
-}"
+}
[(set_attr "length" "12")
(set_attr "type" "fpload")])
@@ -5235,7 +5226,6 @@
"#"
""
[(pc)]
- "
{
operands[1] = rs6000_address_for_fpconvert (operands[1]);
if (GET_CODE (operands[2]) == SCRATCH)
@@ -5246,7 +5236,7 @@
emit_insn (gen_lfiwax (operands[2], operands[1]));
emit_insn (gen_floatdi<mode>2 (operands[0], operands[2]));
DONE;
-}"
+}
[(set_attr "length" "8")
(set_attr "type" "fpload")])
@@ -5270,7 +5260,6 @@
"#"
""
[(pc)]
- "
{
rtx dest = operands[0];
rtx src = operands[1];
@@ -5298,7 +5287,7 @@
}
emit_insn (gen_floatdi<mode>2 (dest, tmp));
DONE;
-}"
+}
[(set_attr "length" "12")
(set_attr "type" "fpload")])
@@ -5312,7 +5301,6 @@
"#"
""
[(pc)]
- "
{
operands[1] = rs6000_address_for_fpconvert (operands[1]);
if (GET_CODE (operands[2]) == SCRATCH)
@@ -5323,7 +5311,7 @@
emit_insn (gen_lfiwzx (operands[2], operands[1]));
emit_insn (gen_floatdi<mode>2 (operands[0], operands[2]));
DONE;
-}"
+}
[(set_attr "length" "8")
(set_attr "type" "fpload")])
@@ -5333,15 +5321,14 @@
; then to have the insns split later (between sched1 and final).
(define_expand "floatsidf2"
- [(parallel [(set (match_operand:DF 0 "gpc_reg_operand" "")
- (float:DF (match_operand:SI 1 "nonimmediate_operand" "")))
+ [(parallel [(set (match_operand:DF 0 "gpc_reg_operand")
+ (float:DF (match_operand:SI 1 "nonimmediate_operand")))
(use (match_dup 2))
(use (match_dup 3))
(clobber (match_dup 4))
(clobber (match_dup 5))
(clobber (match_dup 6))])]
"TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT"
- "
{
if (TARGET_LFIWAX && TARGET_FCFID)
{
@@ -5365,7 +5352,7 @@
operands[4] = rs6000_allocate_stack_temp (DFmode, true, false);
operands[5] = gen_reg_rtx (DFmode);
operands[6] = gen_reg_rtx (SImode);
-}")
+})
(define_insn_and_split "*floatsidf2_internal"
[(set (match_operand:DF 0 "gpc_reg_operand" "=&d")
@@ -5379,7 +5366,6 @@
"#"
""
[(pc)]
- "
{
rtx lowword, highword;
gcc_assert (MEM_P (operands[4]));
@@ -5395,7 +5381,7 @@
emit_move_insn (operands[5], operands[4]);
emit_insn (gen_subdf3 (operands[0], operands[5], operands[3]));
DONE;
-}"
+}
[(set_attr "length" "24")
(set_attr "type" "fp")])
@@ -5403,13 +5389,12 @@
;; conversion for 32-bit without fast math, because we don't have the insn to
;; generate the fixup swizzle to avoid double rounding problems.
(define_expand "floatunssisf2"
- [(set (match_operand:SF 0 "gpc_reg_operand" "")
- (unsigned_float:SF (match_operand:SI 1 "nonimmediate_operand" "")))]
+ [(set (match_operand:SF 0 "gpc_reg_operand")
+ (unsigned_float:SF (match_operand:SI 1 "nonimmediate_operand")))]
"TARGET_HARD_FLOAT && TARGET_SINGLE_FLOAT
&& ((TARGET_FCFIDUS && TARGET_LFIWZX)
|| (TARGET_DOUBLE_FLOAT && TARGET_FCFID
&& (TARGET_POWERPC64 || flag_unsafe_math_optimizations)))"
- "
{
if (TARGET_LFIWZX && TARGET_FCFIDUS)
{
@@ -5425,17 +5410,16 @@
emit_insn (gen_floatdisf2 (operands[0], dreg));
DONE;
}
-}")
+})
(define_expand "floatunssidf2"
- [(parallel [(set (match_operand:DF 0 "gpc_reg_operand" "")
- (unsigned_float:DF (match_operand:SI 1 "nonimmediate_operand" "")))
+ [(parallel [(set (match_operand:DF 0 "gpc_reg_operand")
+ (unsigned_float:DF (match_operand:SI 1 "nonimmediate_operand")))
(use (match_dup 2))
(use (match_dup 3))
(clobber (match_dup 4))
(clobber (match_dup 5))])]
"TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT"
- "
{
if (TARGET_LFIWZX && TARGET_FCFID)
{
@@ -5458,7 +5442,7 @@
operands[3] = force_reg (DFmode, CONST_DOUBLE_ATOF (\"4503599627370496\", DFmode));
operands[4] = rs6000_allocate_stack_temp (DFmode, true, false);
operands[5] = gen_reg_rtx (DFmode);
-}")
+})
(define_insn_and_split "*floatunssidf2_internal"
[(set (match_operand:DF 0 "gpc_reg_operand" "=&d")
@@ -5472,7 +5456,6 @@
"#"
""
[(pc)]
- "
{
rtx lowword, highword;
gcc_assert (MEM_P (operands[4]));
@@ -5486,7 +5469,7 @@
emit_move_insn (operands[5], operands[4]);
emit_insn (gen_subdf3 (operands[0], operands[5], operands[3]));
DONE;
-}"
+}
[(set_attr "length" "20")
(set_attr "type" "fp")])
@@ -5551,9 +5534,9 @@
(define_expand "floatuns<QHI:mode><FP_ISA3:mode>2"
[(parallel [(set (match_operand:FP_ISA3 0 "vsx_register_operand")
(unsigned_float:FP_ISA3
- (match_operand:QHI 1 "input_operand" "")))
- (clobber (match_scratch:DI 2 ""))
- (clobber (match_scratch:DI 3 ""))])]
+ (match_operand:QHI 1 "input_operand")))
+ (clobber (match_scratch:DI 2))
+ (clobber (match_scratch:DI 3))])]
"TARGET_P9_VECTOR && TARGET_DIRECT_MOVE && TARGET_POWERPC64"
{
if (MEM_P (operands[1]))
@@ -5594,10 +5577,9 @@
})
(define_expand "fix_trunc<mode>si2"
- [(set (match_operand:SI 0 "gpc_reg_operand" "")
- (fix:SI (match_operand:SFDF 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:SI 0 "gpc_reg_operand")
+ (fix:SI (match_operand:SFDF 1 "gpc_reg_operand")))]
"TARGET_HARD_FLOAT && <TARGET_FLOAT>"
- "
{
if (!TARGET_P8_VECTOR)
{
@@ -5614,7 +5596,7 @@
}
DONE;
}
-}")
+})
; Like the convert to float patterns, this insn must be split before
; register allocation so that it can allocate the memory slot if it
@@ -5671,7 +5653,6 @@
"#"
""
[(pc)]
- "
{
rtx lowword;
gcc_assert (MEM_P (operands[3]));
@@ -5681,13 +5662,13 @@
emit_move_insn (operands[3], operands[2]);
emit_move_insn (operands[0], lowword);
DONE;
-}"
+}
[(set_attr "length" "16")
(set_attr "type" "fp")])
(define_expand "fix_trunc<mode>di2"
- [(set (match_operand:DI 0 "gpc_reg_operand" "")
- (fix:DI (match_operand:SFDF 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:DI 0 "gpc_reg_operand")
+ (fix:DI (match_operand:SFDF 1 "gpc_reg_operand")))]
"TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT && TARGET_FCFID"
"")
@@ -5756,17 +5737,16 @@
})
(define_expand "fixuns_trunc<mode>si2"
- [(set (match_operand:SI 0 "gpc_reg_operand" "")
- (unsigned_fix:SI (match_operand:SFDF 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:SI 0 "gpc_reg_operand")
+ (unsigned_fix:SI (match_operand:SFDF 1 "gpc_reg_operand")))]
"TARGET_HARD_FLOAT && <TARGET_FLOAT> && TARGET_FCTIWUZ && TARGET_STFIWX"
- "
{
if (!TARGET_P8_VECTOR)
{
emit_insn (gen_fixuns_trunc<mode>si2_stfiwx (operands[0], operands[1]));
DONE;
}
-}")
+})
(define_insn_and_split "fixuns_trunc<mode>si2_stfiwx"
[(set (match_operand:SI 0 "nonimmediate_operand" "=rm")
@@ -6001,9 +5981,9 @@
(define_expand "lround<mode>di2"
[(set (match_dup 2)
- (unspec:SFDF [(match_operand:SFDF 1 "gpc_reg_operand" "")]
+ (unspec:SFDF [(match_operand:SFDF 1 "gpc_reg_operand")]
UNSPEC_XSRDPI))
- (set (match_operand:DI 0 "gpc_reg_operand" "")
+ (set (match_operand:DI 0 "gpc_reg_operand")
(unspec:DI [(match_dup 2)]
UNSPEC_FCTID))]
"TARGET_<MODE>_FPR && TARGET_VSX"
@@ -6028,13 +6008,12 @@
;; conversion for 32-bit without fast math, because we don't have the insn to
;; generate the fixup swizzle to avoid double rounding problems.
(define_expand "floatsisf2"
- [(set (match_operand:SF 0 "gpc_reg_operand" "")
- (float:SF (match_operand:SI 1 "nonimmediate_operand" "")))]
+ [(set (match_operand:SF 0 "gpc_reg_operand")
+ (float:SF (match_operand:SI 1 "nonimmediate_operand")))]
"TARGET_HARD_FLOAT && TARGET_SINGLE_FLOAT
&& ((TARGET_FCFIDS && TARGET_LFIWAX)
|| (TARGET_DOUBLE_FLOAT && TARGET_FCFID
&& (TARGET_POWERPC64 || flag_unsafe_math_optimizations)))"
- "
{
if (TARGET_FCFIDS && TARGET_LFIWAX)
{
@@ -6057,7 +6036,7 @@
emit_insn (gen_floatdisf2 (operands[0], dreg));
DONE;
}
-}")
+})
(define_insn "floatdidf2"
[(set (match_operand:DF 0 "gpc_reg_operand" "=d,ws")
@@ -6087,9 +6066,9 @@
(set_attr "type" "fpload")])
(define_expand "floatunsdidf2"
- [(set (match_operand:DF 0 "gpc_reg_operand" "")
+ [(set (match_operand:DF 0 "gpc_reg_operand")
(unsigned_float:DF
- (match_operand:DI 1 "gpc_reg_operand" "")))]
+ (match_operand:DI 1 "gpc_reg_operand")))]
"TARGET_HARD_FLOAT && TARGET_FCFIDU"
"")
@@ -6117,11 +6096,10 @@
(set_attr "type" "fpload")])
(define_expand "floatdisf2"
- [(set (match_operand:SF 0 "gpc_reg_operand" "")
- (float:SF (match_operand:DI 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:SF 0 "gpc_reg_operand")
+ (float:SF (match_operand:DI 1 "gpc_reg_operand")))]
"TARGET_FCFID && TARGET_HARD_FLOAT && TARGET_SINGLE_FLOAT
&& (TARGET_FCFIDS || TARGET_POWERPC64 || flag_unsafe_math_optimizations)"
- "
{
if (!TARGET_FCFIDS)
{
@@ -6136,7 +6114,7 @@
emit_insn (gen_floatdisf2_internal1 (operands[0], val));
DONE;
}
-}")
+})
(define_insn "floatdisf2_fcfids"
[(set (match_operand:SF 0 "gpc_reg_operand" "=f,wy")
@@ -6157,12 +6135,11 @@
"#"
"&& reload_completed"
[(pc)]
- "
{
emit_move_insn (operands[2], operands[1]);
emit_insn (gen_floatdisf2_fcfids (operands[0], operands[2]));
DONE;
-}"
+}
[(set_attr "length" "8")])
;; This is not IEEE compliant if rounding mode is "round to nearest".
@@ -6189,11 +6166,11 @@
;; by a bit that won't be lost at that stage, but is below the SFmode
;; rounding position.
(define_expand "floatdisf2_internal2"
- [(parallel [(set (match_dup 3) (ashiftrt:DI (match_operand:DI 1 "" "")
+ [(parallel [(set (match_dup 3) (ashiftrt:DI (match_operand:DI 1 "")
(const_int 53)))
(clobber (reg:DI CA_REGNO))])
- (set (match_operand:DI 0 "" "") (and:DI (match_dup 1)
- (const_int 2047)))
+ (set (match_operand:DI 0 "") (and:DI (match_dup 1)
+ (const_int 2047)))
(set (match_dup 3) (plus:DI (match_dup 3)
(const_int 1)))
(set (match_dup 0) (plus:DI (match_dup 0)
@@ -6205,20 +6182,19 @@
(set (match_dup 0) (and:DI (match_dup 0)
(const_int -2048)))
(set (pc) (if_then_else (geu (match_dup 4) (const_int 0))
- (label_ref (match_operand:DI 2 "" ""))
+ (label_ref (match_operand:DI 2 ""))
(pc)))
(set (match_dup 0) (match_dup 1))]
"TARGET_POWERPC64 && TARGET_HARD_FLOAT && TARGET_SINGLE_FLOAT
&& !TARGET_FCFIDS"
- "
{
operands[3] = gen_reg_rtx (DImode);
operands[4] = gen_reg_rtx (CCUNSmode);
-}")
+})
(define_expand "floatunsdisf2"
- [(set (match_operand:SF 0 "gpc_reg_operand" "")
- (unsigned_float:SF (match_operand:DI 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:SF 0 "gpc_reg_operand")
+ (unsigned_float:SF (match_operand:DI 1 "gpc_reg_operand")))]
"TARGET_HARD_FLOAT && TARGET_SINGLE_FLOAT
&& TARGET_DOUBLE_FLOAT && TARGET_FCFIDUS"
"")
@@ -6242,12 +6218,11 @@
"#"
"&& reload_completed"
[(pc)]
- "
{
emit_move_insn (operands[2], operands[1]);
emit_insn (gen_floatunsdisf2_fcfidus (operands[0], operands[2]));
DONE;
-}"
+}
[(set_attr "length" "8")
(set_attr "type" "fpload")])
@@ -6258,9 +6233,9 @@
;; also allow for the output being the same as one of the inputs.
(define_expand "addti3"
- [(set (match_operand:TI 0 "gpc_reg_operand" "")
- (plus:TI (match_operand:TI 1 "gpc_reg_operand" "")
- (match_operand:TI 2 "reg_or_short_operand" "")))]
+ [(set (match_operand:TI 0 "gpc_reg_operand")
+ (plus:TI (match_operand:TI 1 "gpc_reg_operand")
+ (match_operand:TI 2 "reg_or_short_operand")))]
"TARGET_64BIT"
{
rtx lo0 = gen_lowpart (DImode, operands[0]);
@@ -6281,9 +6256,9 @@
})
(define_expand "subti3"
- [(set (match_operand:TI 0 "gpc_reg_operand" "")
- (minus:TI (match_operand:TI 1 "reg_or_short_operand" "")
- (match_operand:TI 2 "gpc_reg_operand" "")))]
+ [(set (match_operand:TI 0 "gpc_reg_operand")
+ (minus:TI (match_operand:TI 1 "reg_or_short_operand")
+ (match_operand:TI 2 "gpc_reg_operand")))]
"TARGET_64BIT"
{
rtx lo0 = gen_lowpart (DImode, operands[0]);
@@ -6306,73 +6281,73 @@
;; 128-bit logical operations expanders
(define_expand "and<mode>3"
- [(set (match_operand:BOOL_128 0 "vlogical_operand" "")
- (and:BOOL_128 (match_operand:BOOL_128 1 "vlogical_operand" "")
- (match_operand:BOOL_128 2 "vlogical_operand" "")))]
+ [(set (match_operand:BOOL_128 0 "vlogical_operand")
+ (and:BOOL_128 (match_operand:BOOL_128 1 "vlogical_operand")
+ (match_operand:BOOL_128 2 "vlogical_operand")))]
""
"")
(define_expand "ior<mode>3"
- [(set (match_operand:BOOL_128 0 "vlogical_operand" "")
- (ior:BOOL_128 (match_operand:BOOL_128 1 "vlogical_operand" "")
- (match_operand:BOOL_128 2 "vlogical_operand" "")))]
+ [(set (match_operand:BOOL_128 0 "vlogical_operand")
+ (ior:BOOL_128 (match_operand:BOOL_128 1 "vlogical_operand")
+ (match_operand:BOOL_128 2 "vlogical_operand")))]
""
"")
(define_expand "xor<mode>3"
- [(set (match_operand:BOOL_128 0 "vlogical_operand" "")
- (xor:BOOL_128 (match_operand:BOOL_128 1 "vlogical_operand" "")
- (match_operand:BOOL_128 2 "vlogical_operand" "")))]
+ [(set (match_operand:BOOL_128 0 "vlogical_operand")
+ (xor:BOOL_128 (match_operand:BOOL_128 1 "vlogical_operand")
+ (match_operand:BOOL_128 2 "vlogical_operand")))]
""
"")
(define_expand "one_cmpl<mode>2"
- [(set (match_operand:BOOL_128 0 "vlogical_operand" "")
- (not:BOOL_128 (match_operand:BOOL_128 1 "vlogical_operand" "")))]
+ [(set (match_operand:BOOL_128 0 "vlogical_operand")
+ (not:BOOL_128 (match_operand:BOOL_128 1 "vlogical_operand")))]
""
"")
(define_expand "nor<mode>3"
- [(set (match_operand:BOOL_128 0 "vlogical_operand" "")
+ [(set (match_operand:BOOL_128 0 "vlogical_operand")
(and:BOOL_128
- (not:BOOL_128 (match_operand:BOOL_128 1 "vlogical_operand" ""))
- (not:BOOL_128 (match_operand:BOOL_128 2 "vlogical_operand" ""))))]
+ (not:BOOL_128 (match_operand:BOOL_128 1 "vlogical_operand"))
+ (not:BOOL_128 (match_operand:BOOL_128 2 "vlogical_operand"))))]
""
"")
(define_expand "andc<mode>3"
- [(set (match_operand:BOOL_128 0 "vlogical_operand" "")
+ [(set (match_operand:BOOL_128 0 "vlogical_operand")
(and:BOOL_128
- (not:BOOL_128 (match_operand:BOOL_128 2 "vlogical_operand" ""))
- (match_operand:BOOL_128 1 "vlogical_operand" "")))]
+ (not:BOOL_128 (match_operand:BOOL_128 2 "vlogical_operand"))
+ (match_operand:BOOL_128 1 "vlogical_operand")))]
""
"")
;; Power8 vector logical instructions.
(define_expand "eqv<mode>3"
- [(set (match_operand:BOOL_128 0 "vlogical_operand" "")
+ [(set (match_operand:BOOL_128 0 "vlogical_operand")
(not:BOOL_128
- (xor:BOOL_128 (match_operand:BOOL_128 1 "vlogical_operand" "")
- (match_operand:BOOL_128 2 "vlogical_operand" ""))))]
+ (xor:BOOL_128 (match_operand:BOOL_128 1 "vlogical_operand")
+ (match_operand:BOOL_128 2 "vlogical_operand"))))]
"<MODE>mode == TImode || <MODE>mode == PTImode || TARGET_P8_VECTOR"
"")
;; Rewrite nand into canonical form
(define_expand "nand<mode>3"
- [(set (match_operand:BOOL_128 0 "vlogical_operand" "")
+ [(set (match_operand:BOOL_128 0 "vlogical_operand")
(ior:BOOL_128
- (not:BOOL_128 (match_operand:BOOL_128 1 "vlogical_operand" ""))
- (not:BOOL_128 (match_operand:BOOL_128 2 "vlogical_operand" ""))))]
+ (not:BOOL_128 (match_operand:BOOL_128 1 "vlogical_operand"))
+ (not:BOOL_128 (match_operand:BOOL_128 2 "vlogical_operand"))))]
"<MODE>mode == TImode || <MODE>mode == PTImode || TARGET_P8_VECTOR"
"")
;; The canonical form is to have the negated element first, so we need to
;; reverse arguments.
(define_expand "orc<mode>3"
- [(set (match_operand:BOOL_128 0 "vlogical_operand" "")
+ [(set (match_operand:BOOL_128 0 "vlogical_operand")
(ior:BOOL_128
- (not:BOOL_128 (match_operand:BOOL_128 2 "vlogical_operand" ""))
- (match_operand:BOOL_128 1 "vlogical_operand" "")))]
+ (not:BOOL_128 (match_operand:BOOL_128 2 "vlogical_operand"))
+ (match_operand:BOOL_128 1 "vlogical_operand")))]
"<MODE>mode == TImode || <MODE>mode == PTImode || TARGET_P8_VECTOR"
"")
@@ -6666,11 +6641,10 @@
;; Set up a register with a value from the GOT table
(define_expand "movsi_got"
- [(set (match_operand:SI 0 "gpc_reg_operand" "")
- (unspec:SI [(match_operand:SI 1 "got_operand" "")
+ [(set (match_operand:SI 0 "gpc_reg_operand")
+ (unspec:SI [(match_operand:SI 1 "got_operand")
(match_dup 2)] UNSPEC_MOVSI_GOT))]
"DEFAULT_ABI == ABI_V4 && flag_pic == 1"
- "
{
if (GET_CODE (operands[1]) == CONST)
{
@@ -6691,7 +6665,7 @@
}
operands[2] = rs6000_got_register (operands[1]);
-}")
+})
(define_insn "*movsi_got_internal"
[(set (match_operand:SI 0 "gpc_reg_operand" "=r")
@@ -6705,9 +6679,9 @@
;; Used by sched, shorten_branches and final when the GOT pseudo reg
;; didn't get allocated to a hard register.
(define_split
- [(set (match_operand:SI 0 "gpc_reg_operand" "")
- (unspec:SI [(match_operand:SI 1 "got_no_const_operand" "")
- (match_operand:SI 2 "memory_operand" "")]
+ [(set (match_operand:SI 0 "gpc_reg_operand")
+ (unspec:SI [(match_operand:SI 1 "got_no_const_operand")
+ (match_operand:SI 2 "memory_operand")]
UNSPEC_MOVSI_GOT))]
"DEFAULT_ABI == ABI_V4
&& flag_pic == 1
@@ -6966,8 +6940,8 @@
;; sequence.
(define_split
- [(set (match_operand:SI 0 "gpc_reg_operand" "")
- (match_operand:SI 1 "const_int_operand" ""))]
+ [(set (match_operand:SI 0 "gpc_reg_operand")
+ (match_operand:SI 1 "const_int_operand"))]
"(unsigned HOST_WIDE_INT) (INTVAL (operands[1]) + 0x8000) >= 0x10000
&& (INTVAL (operands[1]) & 0xffff) != 0"
[(set (match_dup 0)
@@ -6975,13 +6949,12 @@
(set (match_dup 0)
(ior:SI (match_dup 0)
(match_dup 3)))]
- "
{
if (rs6000_emit_set_const (operands[0], operands[1]))
DONE;
else
FAIL;
-}")
+})
;; Split loading -128..127 to use XXSPLITB and VEXTSW2D
(define_split
@@ -7027,10 +7000,13 @@
"")
(define_expand "mov<mode>"
- [(set (match_operand:INT 0 "general_operand" "")
- (match_operand:INT 1 "any_operand" ""))]
+ [(set (match_operand:INT 0 "general_operand")
+ (match_operand:INT 1 "any_operand"))]
""
- "{ rs6000_emit_move (operands[0], operands[1], <MODE>mode); DONE; }")
+{
+ rs6000_emit_move (operands[0], operands[1], <MODE>mode);
+ DONE;
+})
;; MR LHZ/LBZ LXSI*ZX STH/STB STXSI*X LI
;; XXLOR load 0 load -1 VSPLTI* # MFVSRWZ
@@ -7080,8 +7056,8 @@
;; an integer register or memory, we store just the high-order 4 bits.
;; This lets us not shift in the most common case of CR0.
(define_expand "movcc"
- [(set (match_operand:CC 0 "nonimmediate_operand" "")
- (match_operand:CC 1 "nonimmediate_operand" ""))]
+ [(set (match_operand:CC 0 "nonimmediate_operand")
+ (match_operand:CC 1 "nonimmediate_operand"))]
""
"")
@@ -7134,21 +7110,23 @@
;; Move 32-bit binary/decimal floating point
(define_expand "mov<mode>"
- [(set (match_operand:FMOVE32 0 "nonimmediate_operand" "")
- (match_operand:FMOVE32 1 "any_operand" ""))]
+ [(set (match_operand:FMOVE32 0 "nonimmediate_operand")
+ (match_operand:FMOVE32 1 "any_operand"))]
"<fmove_ok>"
- "{ rs6000_emit_move (operands[0], operands[1], <MODE>mode); DONE; }")
+{
+ rs6000_emit_move (operands[0], operands[1], <MODE>mode);
+ DONE;
+})
(define_split
- [(set (match_operand:FMOVE32 0 "gpc_reg_operand" "")
- (match_operand:FMOVE32 1 "const_double_operand" ""))]
+ [(set (match_operand:FMOVE32 0 "gpc_reg_operand")
+ (match_operand:FMOVE32 1 "const_double_operand"))]
"reload_completed
&& ((GET_CODE (operands[0]) == REG && REGNO (operands[0]) <= 31)
|| (GET_CODE (operands[0]) == SUBREG
&& GET_CODE (SUBREG_REG (operands[0])) == REG
&& REGNO (SUBREG_REG (operands[0])) <= 31))"
[(set (match_dup 2) (match_dup 3))]
- "
{
long l;
@@ -7160,7 +7138,7 @@
operands[2] = gen_lowpart (SImode, operands[0]);
operands[3] = gen_int_mode (l, SImode);
-}")
+})
;; Originally, we tried to keep movsf and movsd common, but the differences
;; addressing was making it rather difficult to hide with mode attributes. In
@@ -7331,14 +7309,17 @@
;; Move 64-bit binary/decimal floating point
(define_expand "mov<mode>"
- [(set (match_operand:FMOVE64 0 "nonimmediate_operand" "")
- (match_operand:FMOVE64 1 "any_operand" ""))]
+ [(set (match_operand:FMOVE64 0 "nonimmediate_operand")
+ (match_operand:FMOVE64 1 "any_operand"))]
""
- "{ rs6000_emit_move (operands[0], operands[1], <MODE>mode); DONE; }")
+{
+ rs6000_emit_move (operands[0], operands[1], <MODE>mode);
+ DONE;
+})
(define_split
- [(set (match_operand:FMOVE64 0 "gpc_reg_operand" "")
- (match_operand:FMOVE64 1 "const_int_operand" ""))]
+ [(set (match_operand:FMOVE64 0 "gpc_reg_operand")
+ (match_operand:FMOVE64 1 "const_int_operand"))]
"! TARGET_POWERPC64 && reload_completed
&& ((GET_CODE (operands[0]) == REG && REGNO (operands[0]) <= 31)
|| (GET_CODE (operands[0]) == SUBREG
@@ -7346,7 +7327,6 @@
&& REGNO (SUBREG_REG (operands[0])) <= 31))"
[(set (match_dup 2) (match_dup 4))
(set (match_dup 3) (match_dup 1))]
- "
{
int endian = (WORDS_BIG_ENDIAN == 0);
HOST_WIDE_INT value = INTVAL (operands[1]);
@@ -7355,11 +7335,11 @@
operands[3] = operand_subword (operands[0], 1 - endian, 0, <MODE>mode);
operands[4] = GEN_INT (value >> 32);
operands[1] = GEN_INT (((value & 0xffffffff) ^ 0x80000000) - 0x80000000);
-}")
+})
(define_split
- [(set (match_operand:FMOVE64 0 "gpc_reg_operand" "")
- (match_operand:FMOVE64 1 "const_double_operand" ""))]
+ [(set (match_operand:FMOVE64 0 "gpc_reg_operand")
+ (match_operand:FMOVE64 1 "const_double_operand"))]
"! TARGET_POWERPC64 && reload_completed
&& ((GET_CODE (operands[0]) == REG && REGNO (operands[0]) <= 31)
|| (GET_CODE (operands[0]) == SUBREG
@@ -7367,7 +7347,6 @@
&& REGNO (SUBREG_REG (operands[0])) <= 31))"
[(set (match_dup 2) (match_dup 4))
(set (match_dup 3) (match_dup 5))]
- "
{
int endian = (WORDS_BIG_ENDIAN == 0);
long l[2];
@@ -7378,18 +7357,17 @@
operands[3] = operand_subword (operands[0], 1 - endian, 0, <MODE>mode);
operands[4] = gen_int_mode (l[endian], SImode);
operands[5] = gen_int_mode (l[1 - endian], SImode);
-}")
+})
(define_split
- [(set (match_operand:FMOVE64 0 "gpc_reg_operand" "")
- (match_operand:FMOVE64 1 "const_double_operand" ""))]
+ [(set (match_operand:FMOVE64 0 "gpc_reg_operand")
+ (match_operand:FMOVE64 1 "const_double_operand"))]
"TARGET_POWERPC64 && reload_completed
&& ((GET_CODE (operands[0]) == REG && REGNO (operands[0]) <= 31)
|| (GET_CODE (operands[0]) == SUBREG
&& GET_CODE (SUBREG_REG (operands[0])) == REG
&& REGNO (SUBREG_REG (operands[0])) <= 31))"
[(set (match_dup 2) (match_dup 3))]
- "
{
int endian = (WORDS_BIG_ENDIAN == 0);
long l[2];
@@ -7403,7 +7381,7 @@
| ((HOST_WIDE_INT)(unsigned long)l[1 - endian]));
operands[3] = gen_int_mode (val, DImode);
-}")
+})
;; Don't have reload use general registers to load a constant. It is
;; less efficient than loading the constant into an FP register, since
@@ -7508,10 +7486,13 @@
(set_attr "length" "4,4,4,4,4,8,12,16,4")])
(define_expand "mov<mode>"
- [(set (match_operand:FMOVE128 0 "general_operand" "")
- (match_operand:FMOVE128 1 "any_operand" ""))]
+ [(set (match_operand:FMOVE128 0 "general_operand")
+ (match_operand:FMOVE128 1 "any_operand"))]
""
- "{ rs6000_emit_move (operands[0], operands[1], <MODE>mode); DONE; }")
+{
+ rs6000_emit_move (operands[0], operands[1], <MODE>mode);
+ DONE;
+})
;; It's important to list Y->r and r->Y before r->r because otherwise
;; reload, given m->r, will try to pick r->r and reload it, which
@@ -7574,8 +7555,8 @@
[(set_attr "length" "20,20,16")])
(define_expand "extenddf<mode>2"
- [(set (match_operand:FLOAT128 0 "gpc_reg_operand" "")
- (float_extend:FLOAT128 (match_operand:DF 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:FLOAT128 0 "gpc_reg_operand")
+ (float_extend:FLOAT128 (match_operand:DF 1 "gpc_reg_operand")))]
"TARGET_HARD_FLOAT && TARGET_LONG_DOUBLE_128"
{
if (FLOAT128_IEEE_P (<MODE>mode))
@@ -7643,8 +7624,8 @@
})
(define_expand "extendsf<mode>2"
- [(set (match_operand:FLOAT128 0 "gpc_reg_operand" "")
- (float_extend:FLOAT128 (match_operand:SF 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:FLOAT128 0 "gpc_reg_operand")
+ (float_extend:FLOAT128 (match_operand:SF 1 "gpc_reg_operand")))]
"TARGET_HARD_FLOAT && TARGET_LONG_DOUBLE_128"
{
if (FLOAT128_IEEE_P (<MODE>mode))
@@ -7659,8 +7640,8 @@
})
(define_expand "trunc<mode>df2"
- [(set (match_operand:DF 0 "gpc_reg_operand" "")
- (float_truncate:DF (match_operand:FLOAT128 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:DF 0 "gpc_reg_operand")
+ (float_truncate:DF (match_operand:FLOAT128 1 "gpc_reg_operand")))]
"TARGET_HARD_FLOAT && TARGET_LONG_DOUBLE_128"
{
if (FLOAT128_IEEE_P (<MODE>mode))
@@ -7697,8 +7678,8 @@
(set_attr "fp_type" "fp_addsub_d")])
(define_expand "trunc<mode>sf2"
- [(set (match_operand:SF 0 "gpc_reg_operand" "")
- (float_truncate:SF (match_operand:FLOAT128 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:SF 0 "gpc_reg_operand")
+ (float_truncate:SF (match_operand:FLOAT128 1 "gpc_reg_operand")))]
"TARGET_HARD_FLOAT && TARGET_LONG_DOUBLE_128"
{
if (FLOAT128_IEEE_P (<MODE>mode))
@@ -7769,8 +7750,8 @@
(set_attr "length" "20")])
(define_expand "fix_trunc<mode>si2"
- [(set (match_operand:SI 0 "gpc_reg_operand" "")
- (fix:SI (match_operand:FLOAT128 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:SI 0 "gpc_reg_operand")
+ (fix:SI (match_operand:FLOAT128 1 "gpc_reg_operand")))]
"TARGET_HARD_FLOAT && TARGET_LONG_DOUBLE_128"
{
rtx op0 = operands[0];
@@ -7793,8 +7774,8 @@
})
(define_expand "fix_trunc<mode>si2_fprs"
- [(parallel [(set (match_operand:SI 0 "gpc_reg_operand" "")
- (fix:SI (match_operand:IBM128 1 "gpc_reg_operand" "")))
+ [(parallel [(set (match_operand:SI 0 "gpc_reg_operand")
+ (fix:SI (match_operand:IBM128 1 "gpc_reg_operand")))
(clobber (match_dup 2))
(clobber (match_dup 3))
(clobber (match_dup 4))
@@ -7833,8 +7814,8 @@
})
(define_expand "fix_trunc<mode>di2"
- [(set (match_operand:DI 0 "gpc_reg_operand" "")
- (fix:DI (match_operand:IEEE128 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:DI 0 "gpc_reg_operand")
+ (fix:DI (match_operand:IEEE128 1 "gpc_reg_operand")))]
"TARGET_FLOAT128_TYPE"
{
if (!TARGET_FLOAT128_HW)
@@ -7845,8 +7826,8 @@
})
(define_expand "fixuns_trunc<IEEE128:mode><SDI:mode>2"
- [(set (match_operand:SDI 0 "gpc_reg_operand" "")
- (unsigned_fix:SDI (match_operand:IEEE128 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:SDI 0 "gpc_reg_operand")
+ (unsigned_fix:SDI (match_operand:IEEE128 1 "gpc_reg_operand")))]
"TARGET_FLOAT128_TYPE"
{
rs6000_expand_float128_convert (operands[0], operands[1], true);
@@ -7854,8 +7835,8 @@
})
(define_expand "floatdi<mode>2"
- [(set (match_operand:IEEE128 0 "gpc_reg_operand" "")
- (float:IEEE128 (match_operand:DI 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:IEEE128 0 "gpc_reg_operand")
+ (float:IEEE128 (match_operand:DI 1 "gpc_reg_operand")))]
"TARGET_FLOAT128_TYPE"
{
if (!TARGET_FLOAT128_HW)
@@ -7866,8 +7847,8 @@
})
(define_expand "floatunsdi<IEEE128:mode>2"
- [(set (match_operand:IEEE128 0 "gpc_reg_operand" "")
- (unsigned_float:IEEE128 (match_operand:DI 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:IEEE128 0 "gpc_reg_operand")
+ (unsigned_float:IEEE128 (match_operand:DI 1 "gpc_reg_operand")))]
"TARGET_FLOAT128_TYPE"
{
if (!TARGET_FLOAT128_HW)
@@ -7878,8 +7859,8 @@
})
(define_expand "floatuns<IEEE128:mode>2"
- [(set (match_operand:IEEE128 0 "gpc_reg_operand" "")
- (unsigned_float:IEEE128 (match_operand:SI 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:IEEE128 0 "gpc_reg_operand")
+ (unsigned_float:IEEE128 (match_operand:SI 1 "gpc_reg_operand")))]
"TARGET_FLOAT128_TYPE"
{
rtx op0 = operands[0];
@@ -7893,11 +7874,10 @@
})
(define_expand "neg<mode>2"
- [(set (match_operand:FLOAT128 0 "gpc_reg_operand" "")
- (neg:FLOAT128 (match_operand:FLOAT128 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:FLOAT128 0 "gpc_reg_operand")
+ (neg:FLOAT128 (match_operand:FLOAT128 1 "gpc_reg_operand")))]
"FLOAT128_IEEE_P (<MODE>mode)
|| (FLOAT128_IBM_P (<MODE>mode) && TARGET_HARD_FLOAT)"
- "
{
if (FLOAT128_IEEE_P (<MODE>mode))
{
@@ -7931,28 +7911,26 @@
}
DONE;
}
-}")
+})
(define_insn "neg<mode>2_internal"
[(set (match_operand:IBM128 0 "gpc_reg_operand" "=d")
(neg:IBM128 (match_operand:IBM128 1 "gpc_reg_operand" "d")))]
"TARGET_HARD_FLOAT && FLOAT128_IBM_P (TFmode)"
- "*
{
if (REGNO (operands[0]) == REGNO (operands[1]) + 1)
- return \"fneg %L0,%L1\;fneg %0,%1\";
+ return "fneg %L0,%L1\;fneg %0,%1";
else
- return \"fneg %0,%1\;fneg %L0,%L1\";
-}"
+ return "fneg %0,%1\;fneg %L0,%L1";
+}
[(set_attr "type" "fpsimple")
(set_attr "length" "8")])
(define_expand "abs<mode>2"
- [(set (match_operand:FLOAT128 0 "gpc_reg_operand" "")
- (abs:FLOAT128 (match_operand:FLOAT128 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:FLOAT128 0 "gpc_reg_operand")
+ (abs:FLOAT128 (match_operand:FLOAT128 1 "gpc_reg_operand")))]
"FLOAT128_IEEE_P (<MODE>mode)
|| (FLOAT128_IBM_P (<MODE>mode) && TARGET_HARD_FLOAT)"
- "
{
rtx label;
@@ -7991,20 +7969,19 @@
FAIL;
emit_label (label);
DONE;
-}")
+})
(define_expand "abs<mode>2_internal"
- [(set (match_operand:IBM128 0 "gpc_reg_operand" "")
- (match_operand:IBM128 1 "gpc_reg_operand" ""))
+ [(set (match_operand:IBM128 0 "gpc_reg_operand")
+ (match_operand:IBM128 1 "gpc_reg_operand"))
(set (match_dup 3) (match_dup 5))
(set (match_dup 5) (abs:DF (match_dup 5)))
(set (match_dup 4) (compare:CCFP (match_dup 3) (match_dup 5)))
(set (pc) (if_then_else (eq (match_dup 4) (const_int 0))
- (label_ref (match_operand 2 "" ""))
+ (label_ref (match_operand 2 ""))
(pc)))
(set (match_dup 6) (neg:DF (match_dup 6)))]
"TARGET_HARD_FLOAT && TARGET_DOUBLE_FLOAT && TARGET_LONG_DOUBLE_128"
- "
{
const int hi_word = LONG_DOUBLE_LARGE_FIRST ? 0 : GET_MODE_SIZE (DFmode);
const int lo_word = LONG_DOUBLE_LARGE_FIRST ? GET_MODE_SIZE (DFmode) : 0;
@@ -8012,14 +7989,14 @@
operands[4] = gen_reg_rtx (CCFPmode);
operands[5] = simplify_gen_subreg (DFmode, operands[0], <MODE>mode, hi_word);
operands[6] = simplify_gen_subreg (DFmode, operands[0], <MODE>mode, lo_word);
-}")
+})
;; Generate IEEE 128-bit -0.0 (0x80000000000000000000000000000000) in a vector
;; register
(define_expand "ieee_128bit_negative_zero"
- [(set (match_operand:V16QI 0 "register_operand" "") (match_dup 1))]
+ [(set (match_operand:V16QI 0 "register_operand") (match_dup 1))]
"TARGET_FLOAT128_TYPE"
{
rtvec v = rtvec_alloc (16);
@@ -8138,8 +8115,8 @@
;; We use expand to convert from IBM double double to IEEE 128-bit
;; and trunc for the opposite.
(define_expand "extendiftf2"
- [(set (match_operand:TF 0 "gpc_reg_operand" "")
- (float_extend:TF (match_operand:IF 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:TF 0 "gpc_reg_operand")
+ (float_extend:TF (match_operand:IF 1 "gpc_reg_operand")))]
"TARGET_FLOAT128_TYPE"
{
rs6000_expand_float128_convert (operands[0], operands[1], false);
@@ -8147,8 +8124,8 @@
})
(define_expand "extendifkf2"
- [(set (match_operand:KF 0 "gpc_reg_operand" "")
- (float_extend:KF (match_operand:IF 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:KF 0 "gpc_reg_operand")
+ (float_extend:KF (match_operand:IF 1 "gpc_reg_operand")))]
"TARGET_FLOAT128_TYPE"
{
rs6000_expand_float128_convert (operands[0], operands[1], false);
@@ -8156,8 +8133,8 @@
})
(define_expand "extendtfkf2"
- [(set (match_operand:KF 0 "gpc_reg_operand" "")
- (float_extend:KF (match_operand:TF 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:KF 0 "gpc_reg_operand")
+ (float_extend:KF (match_operand:TF 1 "gpc_reg_operand")))]
"TARGET_FLOAT128_TYPE"
{
rs6000_expand_float128_convert (operands[0], operands[1], false);
@@ -8165,8 +8142,8 @@
})
(define_expand "trunciftf2"
- [(set (match_operand:IF 0 "gpc_reg_operand" "")
- (float_truncate:IF (match_operand:TF 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:IF 0 "gpc_reg_operand")
+ (float_truncate:IF (match_operand:TF 1 "gpc_reg_operand")))]
"TARGET_FLOAT128_TYPE"
{
rs6000_expand_float128_convert (operands[0], operands[1], false);
@@ -8174,8 +8151,8 @@
})
(define_expand "truncifkf2"
- [(set (match_operand:IF 0 "gpc_reg_operand" "")
- (float_truncate:IF (match_operand:KF 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:IF 0 "gpc_reg_operand")
+ (float_truncate:IF (match_operand:KF 1 "gpc_reg_operand")))]
"TARGET_FLOAT128_TYPE"
{
rs6000_expand_float128_convert (operands[0], operands[1], false);
@@ -8183,8 +8160,8 @@
})
(define_expand "trunckftf2"
- [(set (match_operand:TF 0 "gpc_reg_operand" "")
- (float_truncate:TF (match_operand:KF 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:TF 0 "gpc_reg_operand")
+ (float_truncate:TF (match_operand:KF 1 "gpc_reg_operand")))]
"TARGET_FLOAT128_TYPE"
{
rs6000_expand_float128_convert (operands[0], operands[1], false);
@@ -8192,8 +8169,8 @@
})
(define_expand "trunctfif2"
- [(set (match_operand:IF 0 "gpc_reg_operand" "")
- (float_truncate:IF (match_operand:TF 1 "gpc_reg_operand" "")))]
+ [(set (match_operand:IF 0 "gpc_reg_operand")
+ (float_truncate:IF (match_operand:TF 1 "gpc_reg_operand")))]
"TARGET_FLOAT128_TYPE"
{
rs6000_expand_float128_convert (operands[0], operands[1], false);
@@ -8372,8 +8349,8 @@
(set_attr "type" "three")])
(define_split
- [(set (match_operand:FMOVE128_GPR 0 "nonimmediate_operand" "")
- (match_operand:FMOVE128_GPR 1 "input_operand" ""))]
+ [(set (match_operand:FMOVE128_GPR 0 "nonimmediate_operand")
+ (match_operand:FMOVE128_GPR 1 "input_operand"))]
"reload_completed
&& (int_reg_operand (operands[0], <MODE>mode)
|| int_reg_operand (operands[1], <MODE>mode))
@@ -8539,14 +8516,13 @@
(set_attr "size" "64")])
(define_split
- [(set (match_operand:DI 0 "gpc_reg_operand" "")
- (match_operand:DI 1 "const_int_operand" ""))]
+ [(set (match_operand:DI 0 "gpc_reg_operand")
+ (match_operand:DI 1 "const_int_operand"))]
"! TARGET_POWERPC64 && reload_completed
&& gpr_or_gpr_p (operands[0], operands[1])
&& !direct_move_p (operands[0], operands[1])"
[(set (match_dup 2) (match_dup 4))
(set (match_dup 3) (match_dup 1))]
- "
{
HOST_WIDE_INT value = INTVAL (operands[1]);
operands[2] = operand_subword_force (operands[0], WORDS_BIG_ENDIAN == 0,
@@ -8555,11 +8531,11 @@
DImode);
operands[4] = GEN_INT (value >> 32);
operands[1] = GEN_INT (((value & 0xffffffff) ^ 0x80000000) - 0x80000000);
-}")
+})
(define_split
- [(set (match_operand:DIFD 0 "nonimmediate_operand" "")
- (match_operand:DIFD 1 "input_operand" ""))]
+ [(set (match_operand:DIFD 0 "nonimmediate_operand")
+ (match_operand:DIFD 1 "input_operand"))]
"reload_completed && !TARGET_POWERPC64
&& gpr_or_gpr_p (operands[0], operands[1])
&& !direct_move_p (operands[0], operands[1])"
@@ -8654,36 +8630,34 @@
;; When non-easy constants can go in the TOC, this should use
;; easy_fp_constant predicate.
(define_split
- [(set (match_operand:DI 0 "int_reg_operand_not_pseudo" "")
- (match_operand:DI 1 "const_int_operand" ""))]
+ [(set (match_operand:DI 0 "int_reg_operand_not_pseudo")
+ (match_operand:DI 1 "const_int_operand"))]
"TARGET_POWERPC64 && num_insns_constant (operands[1], DImode) > 1"
[(set (match_dup 0) (match_dup 2))
(set (match_dup 0) (plus:DI (match_dup 0) (match_dup 3)))]
- "
{
if (rs6000_emit_set_const (operands[0], operands[1]))
DONE;
else
FAIL;
-}")
+})
(define_split
- [(set (match_operand:DI 0 "int_reg_operand_not_pseudo" "")
- (match_operand:DI 1 "const_scalar_int_operand" ""))]
+ [(set (match_operand:DI 0 "int_reg_operand_not_pseudo")
+ (match_operand:DI 1 "const_scalar_int_operand"))]
"TARGET_POWERPC64 && num_insns_constant (operands[1], DImode) > 1"
[(set (match_dup 0) (match_dup 2))
(set (match_dup 0) (plus:DI (match_dup 0) (match_dup 3)))]
- "
{
if (rs6000_emit_set_const (operands[0], operands[1]))
DONE;
else
FAIL;
-}")
+})
(define_split
- [(set (match_operand:DI 0 "altivec_register_operand" "")
- (match_operand:DI 1 "s5bit_cint_operand" ""))]
+ [(set (match_operand:DI 0 "altivec_register_operand")
+ (match_operand:DI 1 "s5bit_cint_operand"))]
"TARGET_VSX && reload_completed"
[(const_int 0)]
{
@@ -8704,8 +8678,8 @@
;; Split integer constants that can be loaded with XXSPLTIB and a
;; sign extend operation.
(define_split
- [(set (match_operand:INT_ISA3 0 "altivec_register_operand" "")
- (match_operand:INT_ISA3 1 "xxspltib_constant_split" ""))]
+ [(set (match_operand:INT_ISA3 0 "altivec_register_operand")
+ (match_operand:INT_ISA3 1 "xxspltib_constant_split"))]
"TARGET_P9_VECTOR && reload_completed"
[(const_int 0)]
{
@@ -8757,14 +8731,13 @@
(set_attr "length" "8")])
(define_split
- [(set (match_operand:TI2 0 "int_reg_operand" "")
- (match_operand:TI2 1 "const_scalar_int_operand" ""))]
+ [(set (match_operand:TI2 0 "int_reg_operand")
+ (match_operand:TI2 1 "const_scalar_int_operand"))]
"TARGET_POWERPC64
&& (VECTOR_MEM_NONE_P (<MODE>mode)
|| (reload_completed && INT_REGNO_P (REGNO (operands[0]))))"
[(set (match_dup 2) (match_dup 4))
(set (match_dup 3) (match_dup 5))]
- "
{
operands[2] = operand_subword_force (operands[0], WORDS_BIG_ENDIAN == 0,
<MODE>mode);
@@ -8782,11 +8755,11 @@
}
else
FAIL;
-}")
+})
(define_split
- [(set (match_operand:TI2 0 "nonimmediate_operand" "")
- (match_operand:TI2 1 "input_operand" ""))]
+ [(set (match_operand:TI2 0 "nonimmediate_operand")
+ (match_operand:TI2 1 "input_operand"))]
"reload_completed
&& gpr_or_gpr_p (operands[0], operands[1])
&& !direct_move_p (operands[0], operands[1])
@@ -8795,12 +8768,11 @@
{ rs6000_split_multireg_move (operands[0], operands[1]); DONE; })
(define_expand "setmemsi"
- [(parallel [(set (match_operand:BLK 0 "" "")
- (match_operand 2 "const_int_operand" ""))
- (use (match_operand:SI 1 "" ""))
- (use (match_operand:SI 3 "" ""))])]
+ [(parallel [(set (match_operand:BLK 0 "")
+ (match_operand 2 "const_int_operand"))
+ (use (match_operand:SI 1 ""))
+ (use (match_operand:SI 3 ""))])]
""
- "
{
/* If value to set is not zero, use the library routine. */
if (operands[2] != const0_rtx)
@@ -8810,7 +8782,7 @@
DONE;
else
FAIL;
-}")
+})
;; String compare N insn.
;; Argument 0 is the target (result)
@@ -8886,18 +8858,17 @@
;; Argument 3 is the alignment
(define_expand "movmemsi"
- [(parallel [(set (match_operand:BLK 0 "" "")
- (match_operand:BLK 1 "" ""))
- (use (match_operand:SI 2 "" ""))
- (use (match_operand:SI 3 "" ""))])]
+ [(parallel [(set (match_operand:BLK 0 "")
+ (match_operand:BLK 1 ""))
+ (use (match_operand:SI 2 ""))
+ (use (match_operand:SI 3 ""))])]
""
- "
{
if (expand_block_move (operands))
DONE;
else
FAIL;
-}")
+})
;; Define insns that do load or store with update. Some of these we can
;; get by using pre-decrement or pre-increment, but the hardware can also
@@ -9245,18 +9216,18 @@
;; Also this optimization interferes with scalars going into
;; altivec registers (the code does reloading through the FPRs).
(define_peephole2
- [(set (match_operand:DF 0 "gpc_reg_operand" "")
- (match_operand:DF 1 "any_operand" ""))
- (set (match_operand:DF 2 "gpc_reg_operand" "")
+ [(set (match_operand:DF 0 "gpc_reg_operand")
+ (match_operand:DF 1 "any_operand"))
+ (set (match_operand:DF 2 "gpc_reg_operand")
(match_dup 0))]
"!TARGET_VSX
&& peep2_reg_dead_p (2, operands[0])"
[(set (match_dup 2) (match_dup 1))])
(define_peephole2
- [(set (match_operand:SF 0 "gpc_reg_operand" "")
- (match_operand:SF 1 "any_operand" ""))
- (set (match_operand:SF 2 "gpc_reg_operand" "")
+ [(set (match_operand:SF 0 "gpc_reg_operand")
+ (match_operand:SF 1 "any_operand"))
+ (set (match_operand:SF 2 "gpc_reg_operand")
(match_dup 0))]
"!TARGET_P8_VECTOR
&& peep2_reg_dead_p (2, operands[0])"
@@ -9352,10 +9323,9 @@
(set (match_dup 0)
(lo_sum:TLSmode (match_dup 3)
(unspec:TLSmode [(match_dup 1) (match_dup 2)] UNSPEC_TLSGD)))]
- "
{
operands[3] = gen_reg_rtx (TARGET_64BIT ? DImode : SImode);
-}"
+}
[(set (attr "length")
(if_then_else (ne (symbol_ref "TARGET_CMODEL") (symbol_ref "CMODEL_SMALL"))
(const_int 8)
@@ -9489,10 +9459,9 @@
(set (match_dup 0)
(lo_sum:TLSmode (match_dup 2)
(unspec:TLSmode [(const_int 0) (match_dup 1)] UNSPEC_TLSLD)))]
- "
{
operands[2] = gen_reg_rtx (TARGET_64BIT ? DImode : SImode);
-}"
+}
[(set (attr "length")
(if_then_else (ne (symbol_ref "TARGET_CMODEL") (symbol_ref "CMODEL_SMALL"))
(const_int 8)
@@ -9587,10 +9556,9 @@
(set (match_dup 0)
(lo_sum:TLSmode (match_dup 3)
(unspec:TLSmode [(match_dup 1) (match_dup 2)] UNSPEC_TLSGOTDTPREL)))]
- "
{
operands[3] = gen_reg_rtx (TARGET_64BIT ? DImode : SImode);
-}"
+}
[(set (attr "length")
(if_then_else (ne (symbol_ref "TARGET_CMODEL") (symbol_ref "CMODEL_SMALL"))
(const_int 8)
@@ -9657,10 +9625,9 @@
(set (match_dup 0)
(lo_sum:TLSmode (match_dup 3)
(unspec:TLSmode [(match_dup 1) (match_dup 2)] UNSPEC_TLSGOTTPREL)))]
- "
{
operands[3] = gen_reg_rtx (TARGET_64BIT ? DImode : SImode);
-}"
+}
[(set (attr "length")
(if_then_else (ne (symbol_ref "TARGET_CMODEL") (symbol_ref "CMODEL_SMALL"))
(const_int 8)
@@ -9695,15 +9662,14 @@
"add %0,%1,%2@tls")
(define_expand "tls_get_tpointer"
- [(set (match_operand:SI 0 "gpc_reg_operand" "")
+ [(set (match_operand:SI 0 "gpc_reg_operand")
(unspec:SI [(const_int 0)] UNSPEC_TLSTLS))]
"TARGET_XCOFF && HAVE_AS_TLS"
- "
{
emit_insn (gen_tls_get_tpointer_internal ());
emit_move_insn (operands[0], gen_rtx_REG (SImode, 3));
DONE;
-}")
+})
(define_insn "tls_get_tpointer_internal"
[(set (reg:SI 3)
@@ -9713,18 +9679,17 @@
"bla __get_tpointer")
(define_expand "tls_get_addr<mode>"
- [(set (match_operand:P 0 "gpc_reg_operand" "")
- (unspec:P [(match_operand:P 1 "gpc_reg_operand" "")
- (match_operand:P 2 "gpc_reg_operand" "")] UNSPEC_TLSTLS))]
+ [(set (match_operand:P 0 "gpc_reg_operand")
+ (unspec:P [(match_operand:P 1 "gpc_reg_operand")
+ (match_operand:P 2 "gpc_reg_operand")] UNSPEC_TLSTLS))]
"TARGET_XCOFF && HAVE_AS_TLS"
- "
{
emit_move_insn (gen_rtx_REG (Pmode, 3), operands[1]);
emit_move_insn (gen_rtx_REG (Pmode, 4), operands[2]);
emit_insn (gen_tls_get_addr_internal<mode> ());
emit_move_insn (operands[0], gen_rtx_REG (Pmode, 3));
DONE;
-}")
+})
(define_insn "tls_get_addr_internal<mode>"
[(set (reg:P 3)
@@ -9754,13 +9719,13 @@
;; the constant size. The value is forced into a register if necessary.
;;
(define_expand "allocate_stack"
- [(set (match_operand 0 "gpc_reg_operand" "")
- (minus (reg 1) (match_operand 1 "reg_or_cint_operand" "")))
+ [(set (match_operand 0 "gpc_reg_operand")
+ (minus (reg 1) (match_operand 1 "reg_or_cint_operand")))
(set (reg 1)
(minus (reg 1) (match_dup 1)))]
""
- "
-{ rtx chain = gen_reg_rtx (Pmode);
+{
+ rtx chain = gen_reg_rtx (Pmode);
rtx stack_bot = gen_rtx_MEM (Pmode, stack_pointer_rtx);
rtx neg_op0;
rtx insn, par, set, mem;
@@ -9864,7 +9829,7 @@
emit_move_insn (operands[0], virtual_stack_dynamic_rtx);
DONE;
-}")
+})
;; These patterns say how to save and restore the stack pointer. We need not
;; save the stack pointer at function level since we are careful to
@@ -9876,14 +9841,14 @@
;; save area is a memory location.
(define_expand "save_stack_function"
- [(match_operand 0 "any_operand" "")
- (match_operand 1 "any_operand" "")]
+ [(match_operand 0 "any_operand")
+ (match_operand 1 "any_operand")]
""
"DONE;")
(define_expand "restore_stack_function"
- [(match_operand 0 "any_operand" "")
- (match_operand 1 "any_operand" "")]
+ [(match_operand 0 "any_operand")
+ (match_operand 1 "any_operand")]
""
"DONE;")
@@ -9894,10 +9859,9 @@
[(set (match_dup 2) (match_dup 3))
(set (match_dup 4) (match_dup 2))
(match_dup 5)
- (set (match_operand 0 "register_operand" "")
- (match_operand 1 "register_operand" ""))]
+ (set (match_operand 0 "register_operand")
+ (match_operand 1 "register_operand"))]
""
- "
{
rtvec p;
@@ -9909,14 +9873,13 @@
RTVEC_ELT (p, 0) = gen_rtx_SET (gen_frame_mem (BLKmode, operands[0]),
const0_rtx);
operands[5] = gen_rtx_PARALLEL (VOIDmode, p);
-}")
+})
(define_expand "save_stack_nonlocal"
[(set (match_dup 3) (match_dup 4))
- (set (match_operand 0 "memory_operand" "") (match_dup 3))
- (set (match_dup 2) (match_operand 1 "register_operand" ""))]
+ (set (match_operand 0 "memory_operand") (match_dup 3))
+ (set (match_dup 2) (match_operand 1 "register_operand"))]
""
- "
{
int units_per_word = (TARGET_32BIT) ? 4 : 8;
@@ -9925,16 +9888,15 @@
operands[2] = adjust_address_nv (operands[0], Pmode, units_per_word);
operands[3] = gen_reg_rtx (Pmode);
operands[4] = gen_frame_mem (Pmode, operands[1]);
-}")
+})
(define_expand "restore_stack_nonlocal"
- [(set (match_dup 2) (match_operand 1 "memory_operand" ""))
+ [(set (match_dup 2) (match_operand 1 "memory_operand"))
(set (match_dup 3) (match_dup 4))
(set (match_dup 5) (match_dup 2))
(match_dup 6)
- (set (match_operand 0 "register_operand" "") (match_dup 3))]
+ (set (match_operand 0 "register_operand") (match_dup 3))]
""
- "
{
int units_per_word = (TARGET_32BIT) ? 4 : 8;
rtvec p;
@@ -9949,7 +9911,7 @@
RTVEC_ELT (p, 0) = gen_rtx_SET (gen_frame_mem (BLKmode, operands[0]),
const0_rtx);
operands[6] = gen_rtx_PARALLEL (VOIDmode, p);
-}")
+})
;; TOC register handling.
@@ -9960,16 +9922,15 @@
(unspec:SI [(const_int 0)] UNSPEC_TOC))
(use (reg:SI 2))])]
"(DEFAULT_ABI == ABI_AIX || DEFAULT_ABI == ABI_ELFv2) && TARGET_32BIT"
- "*
{
char buf[30];
extern int need_toc_init;
need_toc_init = 1;
- ASM_GENERATE_INTERNAL_LABEL (buf, \"LCTOC\", 1);
+ ASM_GENERATE_INTERNAL_LABEL (buf, "LCTOC", 1);
operands[1] = gen_rtx_SYMBOL_REF (Pmode, ggc_strdup (buf));
operands[2] = gen_rtx_REG (Pmode, 2);
- return \"lwz %0,%1(%2)\";
-}"
+ return "lwz %0,%1(%2)";
+}
[(set_attr "type" "load")
(set_attr "update" "no")
(set_attr "indexed" "no")])
@@ -9979,19 +9940,18 @@
(unspec:DI [(const_int 0)] UNSPEC_TOC))
(use (reg:DI 2))])]
"(DEFAULT_ABI == ABI_AIX || DEFAULT_ABI == ABI_ELFv2) && TARGET_64BIT"
- "*
{
char buf[30];
extern int need_toc_init;
need_toc_init = 1;
- ASM_GENERATE_INTERNAL_LABEL (buf, \"LCTOC\",
+ ASM_GENERATE_INTERNAL_LABEL (buf, "LCTOC",
!TARGET_ELF || !TARGET_MINIMAL_TOC);
if (TARGET_ELF)
- strcat (buf, \"@toc\");
+ strcat (buf, "@toc");
operands[1] = gen_rtx_SYMBOL_REF (Pmode, ggc_strdup (buf));
operands[2] = gen_rtx_REG (Pmode, 2);
- return \"ld %0,%1(%2)\";
-}"
+ return "ld %0,%1(%2)";
+}
[(set_attr "type" "load")
(set_attr "update" "no")
(set_attr "indexed" "no")])
@@ -10018,7 +9978,7 @@
(use (unspec [(match_dup 0)] UNSPEC_TOC))]
"!TARGET_LINK_STACK && TARGET_ELF && DEFAULT_ABI == ABI_V4
&& (flag_pic == 2 || (flag_pic && TARGET_SECURE_PLT))"
- "bcl 20,31,%0\\n%0:"
+ "bcl 20,31,%0\n%0:"
[(set_attr "type" "branch")
(set_attr "length" "4")
(set_attr "cannot_copy" "yes")])
@@ -10029,15 +9989,14 @@
(use (unspec [(match_dup 0)] UNSPEC_TOC))]
"TARGET_LINK_STACK && TARGET_ELF && DEFAULT_ABI == ABI_V4
&& (flag_pic == 2 || (flag_pic && TARGET_SECURE_PLT))"
- "*
{
char name[32];
static char templ[32];
get_ppc476_thunk_name (name);
- sprintf (templ, \"bl %s\\n%%0:\", name);
+ sprintf (templ, "bl %s\n%%0:", name);
return templ;
-}"
+}
[(set_attr "type" "branch")
(set_attr "length" "4")
(set_attr "cannot_copy" "yes")])
@@ -10045,7 +10004,7 @@
(define_expand "load_toc_v4_PIC_1b"
[(parallel [(set (reg:SI LR_REGNO)
(unspec:SI [(match_operand:SI 0 "immediate_operand" "s")
- (label_ref (match_operand 1 "" ""))]
+ (label_ref (match_operand 1 ""))]
UNSPEC_TOCPTR))
(match_dup 1)])]
"TARGET_ELF && DEFAULT_ABI == ABI_V4 && flag_pic == 2"
@@ -10069,15 +10028,14 @@
UNSPEC_TOCPTR))
(match_dup 1)]
"TARGET_LINK_STACK && TARGET_ELF && DEFAULT_ABI == ABI_V4 && flag_pic == 2"
- "*
{
char name[32];
static char templ[32];
get_ppc476_thunk_name (name);
- sprintf (templ, \"bl %s\\n\\tb $+8\\n\\t.long %%0-$\", name);
+ sprintf (templ, "bl %s\;b $+8\;.long %%0-$", name);
return templ;
-}"
+}
[(set_attr "type" "branch")
(set_attr "length" "16")])
@@ -10119,11 +10077,10 @@
;; On Darwin, we need to reload the picbase.
(define_expand "builtin_setjmp_receiver"
- [(use (label_ref (match_operand 0 "" "")))]
+ [(use (label_ref (match_operand 0 "")))]
"(DEFAULT_ABI == ABI_V4 && flag_pic == 1)
|| (TARGET_TOC && TARGET_MINIMAL_TOC)
|| (DEFAULT_ABI == ABI_DARWIN && flag_pic)"
- "
{
#if TARGET_MACHO
if (DEFAULT_ABI == ABI_DARWIN)
@@ -10134,7 +10091,7 @@
char tmplab[20];
crtl->uses_pic_offset_table = 1;
- ASM_GENERATE_INTERNAL_LABEL(tmplab, \"LSJR\",
+ ASM_GENERATE_INTERNAL_LABEL(tmplab, "LSJR",
CODE_LABEL_NUMBER (operands[0]));
tmplabrtx = gen_rtx_SYMBOL_REF (Pmode, ggc_strdup (tmplab));
@@ -10146,7 +10103,7 @@
#endif
rs6000_emit_load_toc_table (FALSE);
DONE;
-}")
+})
;; Largetoc support
(define_insn "*largetoc_high"
@@ -10231,12 +10188,11 @@
;; Call and call_value insns
(define_expand "call"
- [(parallel [(call (mem:SI (match_operand 0 "address_operand" ""))
- (match_operand 1 "" ""))
- (use (match_operand 2 "" ""))
+ [(parallel [(call (mem:SI (match_operand 0 "address_operand"))
+ (match_operand 1 ""))
+ (use (match_operand 2 ""))
(clobber (reg:SI LR_REGNO))])]
""
- "
{
#if TARGET_MACHO
if (MACHOPIC_INDIRECT)
@@ -10271,16 +10227,15 @@
gcc_unreachable ();
}
}
-}")
+})
(define_expand "call_value"
- [(parallel [(set (match_operand 0 "" "")
- (call (mem:SI (match_operand 1 "address_operand" ""))
- (match_operand 2 "" "")))
- (use (match_operand 3 "" ""))
+ [(parallel [(set (match_operand 0 "")
+ (call (mem:SI (match_operand 1 "address_operand"))
+ (match_operand 2 "")))
+ (use (match_operand 3 ""))
(clobber (reg:SI LR_REGNO))])]
""
- "
{
#if TARGET_MACHO
if (MACHOPIC_INDIRECT)
@@ -10315,7 +10270,7 @@
gcc_unreachable ();
}
}
-}")
+})
;; Call to function in current module. No TOC pointer reload needed.
;; Operand2 is nonzero if we are using the V.4 calling sequence and
@@ -10329,16 +10284,15 @@
(use (match_operand:SI 2 "immediate_operand" "O,n"))
(clobber (reg:SI LR_REGNO))]
"(INTVAL (operands[2]) & CALL_LONG) == 0"
- "*
{
if (INTVAL (operands[2]) & CALL_V4_SET_FP_ARGS)
- output_asm_insn (\"crxor 6,6,6\", operands);
+ output_asm_insn ("crxor 6,6,6", operands);
else if (INTVAL (operands[2]) & CALL_V4_CLEAR_FP_ARGS)
- output_asm_insn (\"creqv 6,6,6\", operands);
+ output_asm_insn ("creqv 6,6,6", operands);
- return (DEFAULT_ABI == ABI_V4 && flag_pic) ? \"bl %z0@local\" : \"bl %z0\";
-}"
+ return (DEFAULT_ABI == ABI_V4 && flag_pic) ? "bl %z0@local" : "bl %z0";
+}
[(set_attr "type" "branch")
(set_attr "length" "4,8")])
@@ -10348,16 +10302,15 @@
(use (match_operand:SI 2 "immediate_operand" "O,n"))
(clobber (reg:SI LR_REGNO))]
"TARGET_64BIT && (INTVAL (operands[2]) & CALL_LONG) == 0"
- "*
{
if (INTVAL (operands[2]) & CALL_V4_SET_FP_ARGS)
- output_asm_insn (\"crxor 6,6,6\", operands);
+ output_asm_insn ("crxor 6,6,6", operands);
else if (INTVAL (operands[2]) & CALL_V4_CLEAR_FP_ARGS)
- output_asm_insn (\"creqv 6,6,6\", operands);
+ output_asm_insn ("creqv 6,6,6", operands);
- return (DEFAULT_ABI == ABI_V4 && flag_pic) ? \"bl %z0@local\" : \"bl %z0\";
-}"
+ return (DEFAULT_ABI == ABI_V4 && flag_pic) ? "bl %z0@local" : "bl %z0";
+}
[(set_attr "type" "branch")
(set_attr "length" "4,8")])
@@ -10368,16 +10321,15 @@
(use (match_operand:SI 3 "immediate_operand" "O,n"))
(clobber (reg:SI LR_REGNO))]
"(INTVAL (operands[3]) & CALL_LONG) == 0"
- "*
{
if (INTVAL (operands[3]) & CALL_V4_SET_FP_ARGS)
- output_asm_insn (\"crxor 6,6,6\", operands);
+ output_asm_insn ("crxor 6,6,6", operands);
else if (INTVAL (operands[3]) & CALL_V4_CLEAR_FP_ARGS)
- output_asm_insn (\"creqv 6,6,6\", operands);
+ output_asm_insn ("creqv 6,6,6", operands);
- return (DEFAULT_ABI == ABI_V4 && flag_pic) ? \"bl %z1@local\" : \"bl %z1\";
-}"
+ return (DEFAULT_ABI == ABI_V4 && flag_pic) ? "bl %z1@local" : "bl %z1";
+}
[(set_attr "type" "branch")
(set_attr "length" "4,8")])
@@ -10389,16 +10341,15 @@
(use (match_operand:SI 3 "immediate_operand" "O,n"))
(clobber (reg:SI LR_REGNO))]
"TARGET_64BIT && (INTVAL (operands[3]) & CALL_LONG) == 0"
- "*
{
if (INTVAL (operands[3]) & CALL_V4_SET_FP_ARGS)
- output_asm_insn (\"crxor 6,6,6\", operands);
+ output_asm_insn ("crxor 6,6,6", operands);
else if (INTVAL (operands[3]) & CALL_V4_CLEAR_FP_ARGS)
- output_asm_insn (\"creqv 6,6,6\", operands);
+ output_asm_insn ("creqv 6,6,6", operands);
- return (DEFAULT_ABI == ABI_V4 && flag_pic) ? \"bl %z1@local\" : \"bl %z1\";
-}"
+ return (DEFAULT_ABI == ABI_V4 && flag_pic) ? "bl %z1@local" : "bl %z1";
+}
[(set_attr "type" "branch")
(set_attr "length" "4,8")])
@@ -10767,12 +10718,11 @@
;; Call subroutine returning any type.
(define_expand "untyped_call"
- [(parallel [(call (match_operand 0 "" "")
+ [(parallel [(call (match_operand 0 "")
(const_int 0))
- (match_operand 1 "" "")
- (match_operand 2 "" "")])]
+ (match_operand 1 "")
+ (match_operand 2 "")])]
""
- "
{
int i;
@@ -10791,16 +10741,15 @@
emit_insn (gen_blockage ());
DONE;
-}")
+})
;; sibling call patterns
(define_expand "sibcall"
- [(parallel [(call (mem:SI (match_operand 0 "address_operand" ""))
- (match_operand 1 "" ""))
- (use (match_operand 2 "" ""))
+ [(parallel [(call (mem:SI (match_operand 0 "address_operand"))
+ (match_operand 1 ""))
+ (use (match_operand 2 ""))
(simple_return)])]
""
- "
{
#if TARGET_MACHO
if (MACHOPIC_INDIRECT)
@@ -10817,16 +10766,15 @@
rs6000_sibcall_aix (NULL_RTX, operands[0], operands[1], operands[2]);
DONE;
}
-}")
+})
(define_expand "sibcall_value"
- [(parallel [(set (match_operand 0 "register_operand" "")
- (call (mem:SI (match_operand 1 "address_operand" ""))
- (match_operand 2 "" "")))
- (use (match_operand 3 "" ""))
+ [(parallel [(set (match_operand 0 "register_operand")
+ (call (mem:SI (match_operand 1 "address_operand"))
+ (match_operand 2 "")))
+ (use (match_operand 3 ""))
(simple_return)])]
""
- "
{
#if TARGET_MACHO
if (MACHOPIC_INDIRECT)
@@ -10843,7 +10791,7 @@
rs6000_sibcall_aix (operands[0], operands[1], operands[2], operands[3]);
DONE;
}
-}")
+})
(define_insn "*sibcall_local32"
[(call (mem:SI (match_operand:SI 0 "current_file_function_operand" "s,s"))
@@ -10851,16 +10799,15 @@
(use (match_operand:SI 2 "immediate_operand" "O,n"))
(simple_return)]
"(INTVAL (operands[2]) & CALL_LONG) == 0"
- "*
{
if (INTVAL (operands[2]) & CALL_V4_SET_FP_ARGS)
- output_asm_insn (\"crxor 6,6,6\", operands);
+ output_asm_insn ("crxor 6,6,6", operands);
else if (INTVAL (operands[2]) & CALL_V4_CLEAR_FP_ARGS)
- output_asm_insn (\"creqv 6,6,6\", operands);
+ output_asm_insn ("creqv 6,6,6", operands);
- return (DEFAULT_ABI == ABI_V4 && flag_pic) ? \"b %z0@local\" : \"b %z0\";
-}"
+ return (DEFAULT_ABI == ABI_V4 && flag_pic) ? "b %z0@local" : "b %z0";
+}
[(set_attr "type" "branch")
(set_attr "length" "4,8")])
@@ -10870,16 +10817,15 @@
(use (match_operand:SI 2 "immediate_operand" "O,n"))
(simple_return)]
"TARGET_64BIT && (INTVAL (operands[2]) & CALL_LONG) == 0"
- "*
{
if (INTVAL (operands[2]) & CALL_V4_SET_FP_ARGS)
- output_asm_insn (\"crxor 6,6,6\", operands);
+ output_asm_insn ("crxor 6,6,6", operands);
else if (INTVAL (operands[2]) & CALL_V4_CLEAR_FP_ARGS)
- output_asm_insn (\"creqv 6,6,6\", operands);
+ output_asm_insn ("creqv 6,6,6", operands);
- return (DEFAULT_ABI == ABI_V4 && flag_pic) ? \"b %z0@local\" : \"b %z0\";
-}"
+ return (DEFAULT_ABI == ABI_V4 && flag_pic) ? "b %z0@local" : "b %z0";
+}
[(set_attr "type" "branch")
(set_attr "length" "4,8")])
@@ -10890,16 +10836,15 @@
(use (match_operand:SI 3 "immediate_operand" "O,n"))
(simple_return)]
"(INTVAL (operands[3]) & CALL_LONG) == 0"
- "*
{
if (INTVAL (operands[3]) & CALL_V4_SET_FP_ARGS)
- output_asm_insn (\"crxor 6,6,6\", operands);
+ output_asm_insn ("crxor 6,6,6", operands);
else if (INTVAL (operands[3]) & CALL_V4_CLEAR_FP_ARGS)
- output_asm_insn (\"creqv 6,6,6\", operands);
+ output_asm_insn ("creqv 6,6,6", operands);
- return (DEFAULT_ABI == ABI_V4 && flag_pic) ? \"b %z1@local\" : \"b %z1\";
-}"
+ return (DEFAULT_ABI == ABI_V4 && flag_pic) ? "b %z1@local" : "b %z1";
+}
[(set_attr "type" "branch")
(set_attr "length" "4,8")])
@@ -10910,16 +10855,15 @@
(use (match_operand:SI 3 "immediate_operand" "O,n"))
(simple_return)]
"TARGET_64BIT && (INTVAL (operands[3]) & CALL_LONG) == 0"
- "*
{
if (INTVAL (operands[3]) & CALL_V4_SET_FP_ARGS)
- output_asm_insn (\"crxor 6,6,6\", operands);
+ output_asm_insn ("crxor 6,6,6", operands);
else if (INTVAL (operands[3]) & CALL_V4_CLEAR_FP_ARGS)
- output_asm_insn (\"creqv 6,6,6\", operands);
+ output_asm_insn ("creqv 6,6,6", operands);
- return (DEFAULT_ABI == ABI_V4 && flag_pic) ? \"b %z1@local\" : \"b %z1\";
-}"
+ return (DEFAULT_ABI == ABI_V4 && flag_pic) ? "b %z1@local" : "b %z1";
+}
[(set_attr "type" "branch")
(set_attr "length" "4,8")])
@@ -11117,11 +11061,10 @@
(define_expand "cbranch<mode>4"
[(use (match_operator 0 "comparison_operator"
- [(match_operand:GPR 1 "gpc_reg_operand" "")
- (match_operand:GPR 2 "reg_or_short_operand" "")]))
- (use (match_operand 3 ""))]
+ [(match_operand:GPR 1 "gpc_reg_operand")
+ (match_operand:GPR 2 "reg_or_short_operand")]))
+ (use (match_operand 3))]
""
- "
{
/* Take care of the possibility that operands[2] might be negative but
this might be a logical operation. That insn doesn't exist. */
@@ -11136,19 +11079,18 @@
rs6000_emit_cbranch (<MODE>mode, operands);
DONE;
-}")
+})
(define_expand "cbranch<mode>4"
[(use (match_operator 0 "comparison_operator"
- [(match_operand:FP 1 "gpc_reg_operand" "")
- (match_operand:FP 2 "gpc_reg_operand" "")]))
- (use (match_operand 3 ""))]
+ [(match_operand:FP 1 "gpc_reg_operand")
+ (match_operand:FP 2 "gpc_reg_operand")]))
+ (use (match_operand 3))]
""
- "
{
rs6000_emit_cbranch (<MODE>mode, operands);
DONE;
-}")
+})
(define_expand "cstore<mode>4_signed"
[(use (match_operator 1 "signed_comparison_operator"
@@ -11560,18 +11502,18 @@
(define_peephole2
[(set (match_operand:SI 0 "register_operand")
- (match_operand:SI 1 "logical_const_operand" ""))
+ (match_operand:SI 1 "logical_const_operand"))
(set (match_dup 0) (match_operator:SI 3 "boolean_or_operator"
[(match_dup 0)
- (match_operand:SI 2 "logical_const_operand" "")]))
- (set (match_operand:CC 4 "cc_reg_operand" "")
- (compare:CC (match_operand:SI 5 "gpc_reg_operand" "")
+ (match_operand:SI 2 "logical_const_operand")]))
+ (set (match_operand:CC 4 "cc_reg_operand")
+ (compare:CC (match_operand:SI 5 "gpc_reg_operand")
(match_dup 0)))
(set (pc)
(if_then_else (match_operator 6 "equality_operator"
[(match_dup 4) (const_int 0)])
- (match_operand 7 "" "")
- (match_operand 8 "" "")))]
+ (match_operand 7 "")
+ (match_operand 8 "")))]
"peep2_reg_dead_p (3, operands[0])
&& peep2_reg_dead_p (4, operands[4])
&& REGNO (operands[0]) != REGNO (operands[5])"
@@ -11620,21 +11562,21 @@
[(set_attr "length" "8")])
(define_split
- [(set (match_operand:CC 3 "cc_reg_operand" "")
- (compare:CC (match_operand:SI 1 "gpc_reg_operand" "")
- (match_operand:SI 2 "short_cint_operand" "")))
- (set (match_operand:SI 0 "gpc_reg_operand" "")
- (plus:SI (match_dup 1) (match_operand:SI 4 "short_cint_operand" "")))]
+ [(set (match_operand:CC 3 "cc_reg_operand")
+ (compare:CC (match_operand:SI 1 "gpc_reg_operand")
+ (match_operand:SI 2 "short_cint_operand")))
+ (set (match_operand:SI 0 "gpc_reg_operand")
+ (plus:SI (match_dup 1) (match_operand:SI 4 "short_cint_operand")))]
""
[(set (match_dup 3) (compare:CC (match_dup 1) (match_dup 2)))
(set (match_dup 0) (plus:SI (match_dup 1) (match_dup 4)))])
(define_split
- [(set (match_operand:CCUNS 3 "cc_reg_operand" "")
- (compare:CCUNS (match_operand:SI 1 "gpc_reg_operand" "")
- (match_operand:SI 2 "u_short_cint_operand" "")))
- (set (match_operand:SI 0 "gpc_reg_operand" "")
- (plus:SI (match_dup 1) (match_operand:SI 4 "short_cint_operand" "")))]
+ [(set (match_operand:CCUNS 3 "cc_reg_operand")
+ (compare:CCUNS (match_operand:SI 1 "gpc_reg_operand")
+ (match_operand:SI 2 "u_short_cint_operand")))
+ (set (match_operand:SI 0 "gpc_reg_operand")
+ (plus:SI (match_dup 1) (match_operand:SI 4 "short_cint_operand")))]
""
[(set (match_dup 3) (compare:CCUNS (match_dup 1) (match_dup 2)))
(set (match_dup 0) (plus:SI (match_dup 1) (match_dup 4)))])
@@ -11773,12 +11715,12 @@
(set_attr "length" "8,16")])
(define_split
- [(set (match_operand:CC 0 "cc_reg_not_cr0_operand" "")
+ [(set (match_operand:CC 0 "cc_reg_not_cr0_operand")
(compare:CC (match_operator:SI 1 "scc_comparison_operator"
- [(match_operand 2 "cc_reg_operand" "")
+ [(match_operand 2 "cc_reg_operand")
(const_int 0)])
(const_int 0)))
- (set (match_operand:SI 3 "gpc_reg_operand" "")
+ (set (match_operand:SI 3 "gpc_reg_operand")
(match_op_dup 1 [(match_dup 2) (const_int 0)]))]
"TARGET_32BIT && reload_completed"
[(set (match_dup 3)
@@ -11795,7 +11737,6 @@
(const_int 0)])
(match_operand:SI 3 "const_int_operand" "n")))]
""
- "*
{
int is_bit = ccr_bit (operands[1], 1);
int put_bit = 31 - (INTVAL (operands[3]) & 31);
@@ -11809,8 +11750,8 @@
operands[4] = GEN_INT (count);
operands[5] = GEN_INT (put_bit);
- return \"mfcr %0%Q2\;rlwinm %0,%0,%4,%5,%5\";
-}"
+ return "mfcr %0%Q2\;rlwinm %0,%0,%4,%5,%5";
+}
[(set (attr "type")
(cond [(match_test "TARGET_MFCRF")
(const_string "mfcrf")
@@ -11830,7 +11771,6 @@
(ashift:SI (match_op_dup 1 [(match_dup 2) (const_int 0)])
(match_dup 3)))]
""
- "*
{
int is_bit = ccr_bit (operands[1], 1);
int put_bit = 31 - (INTVAL (operands[3]) & 31);
@@ -11838,7 +11778,7 @@
/* Force split for non-cc0 compare. */
if (which_alternative == 1)
- return \"#\";
+ return "#";
if (is_bit >= put_bit)
count = is_bit - put_bit;
@@ -11848,8 +11788,8 @@
operands[5] = GEN_INT (count);
operands[6] = GEN_INT (put_bit);
- return \"mfcr %4%Q2\;rlwinm. %4,%4,%5,%6,%6\";
-}"
+ return "mfcr %4%Q2\;rlwinm. %4,%4,%5,%6,%6";
+}
[(set_attr "type" "shift")
(set_attr "dot" "yes")
(set_attr "length" "8,16")])
@@ -12433,7 +12373,6 @@
""
[(set (match_dup 0) (compare:CCEQ (xor:SI (match_dup 1) (match_dup 3))
(match_dup 5)))]
- "
{
int positive_1, positive_2;
@@ -12469,7 +12408,7 @@
{
operands[5] = const1_rtx;
}
-}")
+})
;; Unconditional branch and return.
@@ -12894,7 +12833,6 @@
(match_operand 3 "immediate_operand" "n")]
UNSPEC_MOVESI_FROM_CR))])]
"TARGET_MFCRF"
- "*
{
int mask = 0;
int i;
@@ -12902,10 +12840,10 @@
{
mask = INTVAL (XVECEXP (SET_SRC (XVECEXP (operands[0], 0, i)), 0, 1));
operands[4] = GEN_INT (mask);
- output_asm_insn (\"mfcr %1,%4\", operands);
+ output_asm_insn ("mfcr %1,%4", operands);
}
- return \"\";
-}"
+ return "";
+}
[(set_attr "type" "mfcrf")])
;; Don't include the volatile CRs since their values are not used wrt CR save
@@ -13064,8 +13002,8 @@
; faster; for instance, on the 601 and 750.
(define_expand "movsi_to_cr_one"
- [(set (match_operand:CC 0 "cc_reg_operand" "")
- (unspec:CC [(match_operand:SI 1 "gpc_reg_operand" "")
+ [(set (match_operand:CC 0 "cc_reg_operand")
+ (unspec:CC [(match_operand:SI 1 "gpc_reg_operand")
(match_dup 2)] UNSPEC_MOVESI_TO_CR))]
""
"operands[2] = GEN_INT (1 << (75 - REGNO (operands[0])));")
@@ -13077,15 +13015,14 @@
(match_operand 3 "immediate_operand" "n")]
UNSPEC_MOVESI_TO_CR))])]
""
- "*
{
int mask = 0;
int i;
for (i = 0; i < XVECLEN (operands[0], 0); i++)
mask |= INTVAL (XVECEXP (SET_SRC (XVECEXP (operands[0], 0, i)), 0, 1));
operands[4] = GEN_INT (mask);
- return \"mtcrf %4,%2\";
-}"
+ return "mtcrf %4,%2";
+}
[(set_attr "type" "mtcr")])
(define_insn "*mtcrfsi"
@@ -13273,16 +13210,15 @@
; This is used in compiling the unwind routines.
(define_expand "eh_return"
- [(use (match_operand 0 "general_operand" ""))]
+ [(use (match_operand 0 "general_operand"))]
""
- "
{
if (TARGET_32BIT)
emit_insn (gen_eh_set_lr_si (operands[0]));
else
emit_insn (gen_eh_set_lr_di (operands[0]));
DONE;
-}")
+})
; We can't expand this before we know where the link register is stored.
(define_insn "eh_set_lr_<mode>"
@@ -13293,27 +13229,25 @@
"#")
(define_split
- [(unspec_volatile [(match_operand 0 "register_operand" "")] UNSPECV_EH_RR)
- (clobber (match_scratch 1 ""))]
+ [(unspec_volatile [(match_operand 0 "register_operand")] UNSPECV_EH_RR)
+ (clobber (match_scratch 1))]
"reload_completed"
[(const_int 0)]
- "
{
rs6000_emit_eh_reg_restore (operands[0], operands[1]);
DONE;
-}")
+})
(define_insn "prefetch"
[(prefetch (match_operand 0 "indexed_or_indirect_address" "a")
(match_operand:SI 1 "const_int_operand" "n")
(match_operand:SI 2 "const_int_operand" "n"))]
""
- "*
{
if (GET_CODE (operands[0]) == REG)
- return INTVAL (operands[1]) ? \"dcbtst 0,%0\" : \"dcbt 0,%0\";
- return INTVAL (operands[1]) ? \"dcbtst %a0\" : \"dcbt %a0\";
-}"
+ return INTVAL (operands[1]) ? "dcbtst 0,%0" : "dcbt 0,%0";
+ return INTVAL (operands[1]) ? "dcbtst %a0" : "dcbt %a0";
+}
[(set_attr "type" "load")])
;; Handle -fsplit-stack.
@@ -13397,11 +13331,11 @@
;; Note that the conditions for expansion are in the FMA_F iterator.
(define_expand "fma<mode>4"
- [(set (match_operand:FMA_F 0 "gpc_reg_operand" "")
+ [(set (match_operand:FMA_F 0 "gpc_reg_operand")
(fma:FMA_F
- (match_operand:FMA_F 1 "gpc_reg_operand" "")
- (match_operand:FMA_F 2 "gpc_reg_operand" "")
- (match_operand:FMA_F 3 "gpc_reg_operand" "")))]
+ (match_operand:FMA_F 1 "gpc_reg_operand")
+ (match_operand:FMA_F 2 "gpc_reg_operand")
+ (match_operand:FMA_F 3 "gpc_reg_operand")))]
""
"")
@@ -13421,11 +13355,11 @@
; Altivec only has fma and nfms.
(define_expand "fms<mode>4"
- [(set (match_operand:FMA_F 0 "gpc_reg_operand" "")
+ [(set (match_operand:FMA_F 0 "gpc_reg_operand")
(fma:FMA_F
- (match_operand:FMA_F 1 "gpc_reg_operand" "")
- (match_operand:FMA_F 2 "gpc_reg_operand" "")
- (neg:FMA_F (match_operand:FMA_F 3 "gpc_reg_operand" ""))))]
+ (match_operand:FMA_F 1 "gpc_reg_operand")
+ (match_operand:FMA_F 2 "gpc_reg_operand")
+ (neg:FMA_F (match_operand:FMA_F 3 "gpc_reg_operand"))))]
"!VECTOR_UNIT_ALTIVEC_P (<MODE>mode)"
"")
@@ -13445,34 +13379,34 @@
;; If signed zeros are ignored, -(a * b - c) = -a * b + c.
(define_expand "fnma<mode>4"
- [(set (match_operand:FMA_F 0 "gpc_reg_operand" "")
+ [(set (match_operand:FMA_F 0 "gpc_reg_operand")
(neg:FMA_F
(fma:FMA_F
- (match_operand:FMA_F 1 "gpc_reg_operand" "")
- (match_operand:FMA_F 2 "gpc_reg_operand" "")
- (neg:FMA_F (match_operand:FMA_F 3 "gpc_reg_operand" "")))))]
+ (match_operand:FMA_F 1 "gpc_reg_operand")
+ (match_operand:FMA_F 2 "gpc_reg_operand")
+ (neg:FMA_F (match_operand:FMA_F 3 "gpc_reg_operand")))))]
"!HONOR_SIGNED_ZEROS (<MODE>mode)"
"")
;; If signed zeros are ignored, -(a * b + c) = -a * b - c.
(define_expand "fnms<mode>4"
- [(set (match_operand:FMA_F 0 "gpc_reg_operand" "")
+ [(set (match_operand:FMA_F 0 "gpc_reg_operand")
(neg:FMA_F
(fma:FMA_F
- (match_operand:FMA_F 1 "gpc_reg_operand" "")
- (match_operand:FMA_F 2 "gpc_reg_operand" "")
- (match_operand:FMA_F 3 "gpc_reg_operand" ""))))]
+ (match_operand:FMA_F 1 "gpc_reg_operand")
+ (match_operand:FMA_F 2 "gpc_reg_operand")
+ (match_operand:FMA_F 3 "gpc_reg_operand"))))]
"!HONOR_SIGNED_ZEROS (<MODE>mode) && !VECTOR_UNIT_ALTIVEC_P (<MODE>mode)"
"")
; Not an official optab name, but used from builtins.
(define_expand "nfma<mode>4"
- [(set (match_operand:FMA_F 0 "gpc_reg_operand" "")
+ [(set (match_operand:FMA_F 0 "gpc_reg_operand")
(neg:FMA_F
(fma:FMA_F
- (match_operand:FMA_F 1 "gpc_reg_operand" "")
- (match_operand:FMA_F 2 "gpc_reg_operand" "")
- (match_operand:FMA_F 3 "gpc_reg_operand" ""))))]
+ (match_operand:FMA_F 1 "gpc_reg_operand")
+ (match_operand:FMA_F 2 "gpc_reg_operand")
+ (match_operand:FMA_F 3 "gpc_reg_operand"))))]
"!VECTOR_UNIT_ALTIVEC_P (<MODE>mode)"
"")
@@ -13493,12 +13427,12 @@
; Not an official optab name, but used from builtins.
(define_expand "nfms<mode>4"
- [(set (match_operand:FMA_F 0 "gpc_reg_operand" "")
+ [(set (match_operand:FMA_F 0 "gpc_reg_operand")
(neg:FMA_F
(fma:FMA_F
- (match_operand:FMA_F 1 "gpc_reg_operand" "")
- (match_operand:FMA_F 2 "gpc_reg_operand" "")
- (neg:FMA_F (match_operand:FMA_F 3 "gpc_reg_operand" "")))))]
+ (match_operand:FMA_F 1 "gpc_reg_operand")
+ (match_operand:FMA_F 2 "gpc_reg_operand")
+ (neg:FMA_F (match_operand:FMA_F 3 "gpc_reg_operand")))))]
""
"")
@@ -13520,7 +13454,7 @@
(define_expand "rs6000_get_timebase"
- [(use (match_operand:DI 0 "gpc_reg_operand" ""))]
+ [(use (match_operand:DI 0 "gpc_reg_operand"))]
""
{
if (TARGET_POWERPC64)
@@ -13618,8 +13552,8 @@
;; (addis followed by load) even on power8.
(define_split
- [(set (match_operand:INT1 0 "toc_fusion_or_p9_reg_operand" "")
- (match_operand:INT1 1 "toc_fusion_mem_raw" ""))]
+ [(set (match_operand:INT1 0 "toc_fusion_or_p9_reg_operand")
+ (match_operand:INT1 1 "toc_fusion_mem_raw"))]
"TARGET_TOC_FUSION_INT && can_create_pseudo_p ()"
[(parallel [(set (match_dup 0) (match_dup 2))
(unspec [(const_int 0)] UNSPEC_FUSION_ADDIS)
@@ -13669,10 +13603,10 @@
;; insn
(define_peephole2
- [(set (match_operand:P 0 "base_reg_operand" "")
- (match_operand:P 1 "fusion_gpr_addis" ""))
- (set (match_operand:INT1 2 "base_reg_operand" "")
- (match_operand:INT1 3 "fusion_gpr_mem_load" ""))]
+ [(set (match_operand:P 0 "base_reg_operand")
+ (match_operand:P 1 "fusion_gpr_addis"))
+ (set (match_operand:INT1 2 "base_reg_operand")
+ (match_operand:INT1 3 "fusion_gpr_mem_load"))]
"TARGET_P8_FUSION
&& fusion_gpr_load_p (operands[0], operands[1], operands[2],
operands[3])"
@@ -13700,10 +13634,10 @@
;; ISA 3.0 (power9) fusion support
;; Merge addis with floating load/store to FPRs (or GPRs).
(define_peephole2
- [(set (match_operand:P 0 "base_reg_operand" "")
- (match_operand:P 1 "fusion_gpr_addis" ""))
- (set (match_operand:SFDF 2 "toc_fusion_or_p9_reg_operand" "")
- (match_operand:SFDF 3 "fusion_offsettable_mem_operand" ""))]
+ [(set (match_operand:P 0 "base_reg_operand")
+ (match_operand:P 1 "fusion_gpr_addis"))
+ (set (match_operand:SFDF 2 "toc_fusion_or_p9_reg_operand")
+ (match_operand:SFDF 3 "fusion_offsettable_mem_operand"))]
"TARGET_P9_FUSION && peep2_reg_dead_p (2, operands[0])
&& fusion_p9_p (operands[0], operands[1], operands[2], operands[3])"
[(const_int 0)]
@@ -13713,10 +13647,10 @@
})
(define_peephole2
- [(set (match_operand:P 0 "base_reg_operand" "")
- (match_operand:P 1 "fusion_gpr_addis" ""))
- (set (match_operand:SFDF 2 "offsettable_mem_operand" "")
- (match_operand:SFDF 3 "toc_fusion_or_p9_reg_operand" ""))]
+ [(set (match_operand:P 0 "base_reg_operand")
+ (match_operand:P 1 "fusion_gpr_addis"))
+ (set (match_operand:SFDF 2 "offsettable_mem_operand")
+ (match_operand:SFDF 3 "toc_fusion_or_p9_reg_operand"))]
"TARGET_P9_FUSION && peep2_reg_dead_p (2, operands[0])
&& fusion_p9_p (operands[0], operands[1], operands[2], operands[3])
&& !rtx_equal_p (operands[0], operands[3])"
@@ -13727,22 +13661,22 @@
})
(define_peephole2
- [(set (match_operand:SDI 0 "int_reg_operand" "")
- (match_operand:SDI 1 "upper16_cint_operand" ""))
+ [(set (match_operand:SDI 0 "int_reg_operand")
+ (match_operand:SDI 1 "upper16_cint_operand"))
(set (match_dup 0)
(ior:SDI (match_dup 0)
- (match_operand:SDI 2 "u_short_cint_operand" "")))]
+ (match_operand:SDI 2 "u_short_cint_operand")))]
"TARGET_P9_FUSION"
[(set (match_dup 0)
(unspec:SDI [(match_dup 1)
(match_dup 2)] UNSPEC_FUSION_P9))])
(define_peephole2
- [(set (match_operand:SDI 0 "int_reg_operand" "")
- (match_operand:SDI 1 "upper16_cint_operand" ""))
- (set (match_operand:SDI 2 "int_reg_operand" "")
+ [(set (match_operand:SDI 0 "int_reg_operand")
+ (match_operand:SDI 1 "upper16_cint_operand"))
+ (set (match_operand:SDI 2 "int_reg_operand")
(ior:SDI (match_dup 0)
- (match_operand:SDI 3 "u_short_cint_operand" "")))]
+ (match_operand:SDI 3 "u_short_cint_operand")))]
"TARGET_P9_FUSION
&& !rtx_equal_p (operands[0], operands[2])
&& peep2_reg_dead_p (2, operands[0])"
@@ -13958,10 +13892,10 @@
(KF "DI")])
(define_expand "unpack<mode>"
- [(set (match_operand:<FP128_64> 0 "nonimmediate_operand" "")
+ [(set (match_operand:<FP128_64> 0 "nonimmediate_operand")
(unspec:<FP128_64>
- [(match_operand:FMOVE128 1 "register_operand" "")
- (match_operand:QI 2 "const_0_to_1_operand" "")]
+ [(match_operand:FMOVE128 1 "register_operand")
+ (match_operand:QI 2 "const_0_to_1_operand")]
UNSPEC_UNPACK_128BIT))]
"FLOAT128_2REG_P (<MODE>mode)"
"")
diff --git a/gcc/config/rs6000/sync.md b/gcc/config/rs6000/sync.md
index f4f7bc2151d..74bc407b462 100644
--- a/gcc/config/rs6000/sync.md
+++ b/gcc/config/rs6000/sync.md
@@ -38,7 +38,7 @@
(ior "logical_operand") (xor "logical_operand") (and "and_operand")])
(define_expand "mem_thread_fence"
- [(match_operand:SI 0 "const_int_operand" "")] ;; model
+ [(match_operand:SI 0 "const_int_operand")] ;; model
""
{
enum memmodel model = memmodel_base (INTVAL (operands[0]));
@@ -136,9 +136,9 @@
(set_attr "length" "4")])
(define_expand "atomic_load<mode>"
- [(set (match_operand:AINT 0 "register_operand" "") ;; output
- (match_operand:AINT 1 "memory_operand" "")) ;; memory
- (use (match_operand:SI 2 "const_int_operand" ""))] ;; model
+ [(set (match_operand:AINT 0 "register_operand") ;; output
+ (match_operand:AINT 1 "memory_operand")) ;; memory
+ (use (match_operand:SI 2 "const_int_operand"))] ;; model
""
{
if (<MODE>mode == TImode && !TARGET_SYNC_TI)
@@ -200,9 +200,9 @@
(set_attr "length" "4")])
(define_expand "atomic_store<mode>"
- [(set (match_operand:AINT 0 "memory_operand" "") ;; memory
- (match_operand:AINT 1 "register_operand" "")) ;; input
- (use (match_operand:SI 2 "const_int_operand" ""))] ;; model
+ [(set (match_operand:AINT 0 "memory_operand") ;; memory
+ (match_operand:AINT 1 "register_operand")) ;; input
+ (use (match_operand:SI 2 "const_int_operand"))] ;; model
""
{
if (<MODE>mode == TImode && !TARGET_SYNC_TI)
@@ -287,8 +287,8 @@
;; is indexed or indirect before register allocation.
(define_expand "load_lockedti"
- [(use (match_operand:TI 0 "quad_int_reg_operand" ""))
- (use (match_operand:TI 1 "memory_operand" ""))]
+ [(use (match_operand:TI 0 "quad_int_reg_operand"))
+ (use (match_operand:TI 1 "memory_operand"))]
"TARGET_SYNC_TI"
{
rtx op0 = operands[0];
@@ -341,9 +341,9 @@
;; is indexed or indirect before register allocation.
(define_expand "store_conditionalti"
- [(use (match_operand:CC 0 "cc_reg_operand" ""))
- (use (match_operand:TI 1 "memory_operand" ""))
- (use (match_operand:TI 2 "quad_int_reg_operand" ""))]
+ [(use (match_operand:CC 0 "cc_reg_operand"))
+ (use (match_operand:TI 1 "memory_operand"))
+ (use (match_operand:TI 2 "quad_int_reg_operand"))]
"TARGET_SYNC_TI"
{
rtx op0 = operands[0];
@@ -385,14 +385,14 @@
[(set_attr "type" "store_c")])
(define_expand "atomic_compare_and_swap<mode>"
- [(match_operand:SI 0 "int_reg_operand" "") ;; bool out
- (match_operand:AINT 1 "int_reg_operand" "") ;; val out
- (match_operand:AINT 2 "memory_operand" "") ;; memory
- (match_operand:AINT 3 "reg_or_short_operand" "") ;; expected
- (match_operand:AINT 4 "int_reg_operand" "") ;; desired
- (match_operand:SI 5 "const_int_operand" "") ;; is_weak
- (match_operand:SI 6 "const_int_operand" "") ;; model succ
- (match_operand:SI 7 "const_int_operand" "")] ;; model fail
+ [(match_operand:SI 0 "int_reg_operand") ;; bool out
+ (match_operand:AINT 1 "int_reg_operand") ;; val out
+ (match_operand:AINT 2 "memory_operand") ;; memory
+ (match_operand:AINT 3 "reg_or_short_operand") ;; expected
+ (match_operand:AINT 4 "int_reg_operand") ;; desired
+ (match_operand:SI 5 "const_int_operand") ;; is_weak
+ (match_operand:SI 6 "const_int_operand") ;; model succ
+ (match_operand:SI 7 "const_int_operand")] ;; model fail
""
{
rs6000_expand_atomic_compare_and_swap (operands);
@@ -400,10 +400,10 @@
})
(define_expand "atomic_exchange<mode>"
- [(match_operand:AINT 0 "int_reg_operand" "") ;; output
- (match_operand:AINT 1 "memory_operand" "") ;; memory
- (match_operand:AINT 2 "int_reg_operand" "") ;; input
- (match_operand:SI 3 "const_int_operand" "")] ;; model
+ [(match_operand:AINT 0 "int_reg_operand") ;; output
+ (match_operand:AINT 1 "memory_operand") ;; memory
+ (match_operand:AINT 2 "int_reg_operand") ;; input
+ (match_operand:SI 3 "const_int_operand")] ;; model
""
{
rs6000_expand_atomic_exchange (operands);
@@ -411,10 +411,10 @@
})
(define_expand "atomic_<fetchop_name><mode>"
- [(match_operand:AINT 0 "memory_operand" "") ;; memory
+ [(match_operand:AINT 0 "memory_operand") ;; memory
(FETCHOP:AINT (match_dup 0)
- (match_operand:AINT 1 "<fetchop_pred>" "")) ;; operand
- (match_operand:SI 2 "const_int_operand" "")] ;; model
+ (match_operand:AINT 1 "<fetchop_pred>")) ;; operand
+ (match_operand:SI 2 "const_int_operand")] ;; model
""
{
rs6000_expand_atomic_op (<CODE>, operands[0], operands[1],
@@ -423,9 +423,9 @@
})
(define_expand "atomic_nand<mode>"
- [(match_operand:AINT 0 "memory_operand" "") ;; memory
- (match_operand:AINT 1 "int_reg_operand" "") ;; operand
- (match_operand:SI 2 "const_int_operand" "")] ;; model
+ [(match_operand:AINT 0 "memory_operand") ;; memory
+ (match_operand:AINT 1 "int_reg_operand") ;; operand
+ (match_operand:SI 2 "const_int_operand")] ;; model
""
{
rs6000_expand_atomic_op (NOT, operands[0], operands[1],
@@ -434,11 +434,11 @@
})
(define_expand "atomic_fetch_<fetchop_name><mode>"
- [(match_operand:AINT 0 "int_reg_operand" "") ;; output
- (match_operand:AINT 1 "memory_operand" "") ;; memory
+ [(match_operand:AINT 0 "int_reg_operand") ;; output
+ (match_operand:AINT 1 "memory_operand") ;; memory
(FETCHOP:AINT (match_dup 1)
- (match_operand:AINT 2 "<fetchop_pred>" "")) ;; operand
- (match_operand:SI 3 "const_int_operand" "")] ;; model
+ (match_operand:AINT 2 "<fetchop_pred>")) ;; operand
+ (match_operand:SI 3 "const_int_operand")] ;; model
""
{
rs6000_expand_atomic_op (<CODE>, operands[1], operands[2],
@@ -447,10 +447,10 @@
})
(define_expand "atomic_fetch_nand<mode>"
- [(match_operand:AINT 0 "int_reg_operand" "") ;; output
- (match_operand:AINT 1 "memory_operand" "") ;; memory
- (match_operand:AINT 2 "int_reg_operand" "") ;; operand
- (match_operand:SI 3 "const_int_operand" "")] ;; model
+ [(match_operand:AINT 0 "int_reg_operand") ;; output
+ (match_operand:AINT 1 "memory_operand") ;; memory
+ (match_operand:AINT 2 "int_reg_operand") ;; operand
+ (match_operand:SI 3 "const_int_operand")] ;; model
""
{
rs6000_expand_atomic_op (NOT, operands[1], operands[2],
@@ -459,11 +459,11 @@
})
(define_expand "atomic_<fetchop_name>_fetch<mode>"
- [(match_operand:AINT 0 "int_reg_operand" "") ;; output
- (match_operand:AINT 1 "memory_operand" "") ;; memory
+ [(match_operand:AINT 0 "int_reg_operand") ;; output
+ (match_operand:AINT 1 "memory_operand") ;; memory
(FETCHOP:AINT (match_dup 1)
- (match_operand:AINT 2 "<fetchop_pred>" "")) ;; operand
- (match_operand:SI 3 "const_int_operand" "")] ;; model
+ (match_operand:AINT 2 "<fetchop_pred>")) ;; operand
+ (match_operand:SI 3 "const_int_operand")] ;; model
""
{
rs6000_expand_atomic_op (<CODE>, operands[1], operands[2],
@@ -472,10 +472,10 @@
})
(define_expand "atomic_nand_fetch<mode>"
- [(match_operand:AINT 0 "int_reg_operand" "") ;; output
- (match_operand:AINT 1 "memory_operand" "") ;; memory
- (match_operand:AINT 2 "int_reg_operand" "") ;; operand
- (match_operand:SI 3 "const_int_operand" "")] ;; model
+ [(match_operand:AINT 0 "int_reg_operand") ;; output
+ (match_operand:AINT 1 "memory_operand") ;; memory
+ (match_operand:AINT 2 "int_reg_operand") ;; operand
+ (match_operand:SI 3 "const_int_operand")] ;; model
""
{
rs6000_expand_atomic_op (NOT, operands[1], operands[2],
diff --git a/gcc/config/rs6000/vector.md b/gcc/config/rs6000/vector.md
index 3bcf087d2cd..6e2576ee1d8 100644
--- a/gcc/config/rs6000/vector.md
+++ b/gcc/config/rs6000/vector.md
@@ -111,8 +111,8 @@
;; Vector move instructions. Little-endian VSX loads and stores require
;; special handling to circumvent "element endianness."
(define_expand "mov<mode>"
- [(set (match_operand:VEC_M 0 "nonimmediate_operand" "")
- (match_operand:VEC_M 1 "any_operand" ""))]
+ [(set (match_operand:VEC_M 0 "nonimmediate_operand")
+ (match_operand:VEC_M 1 "any_operand"))]
"VECTOR_MEM_ALTIVEC_OR_VSX_P (<MODE>mode)"
{
if (can_create_pseudo_p ())
@@ -147,21 +147,21 @@
;; Generic vector floating point load/store instructions. These will match
;; insns defined in vsx.md or altivec.md depending on the switches.
(define_expand "vector_load_<mode>"
- [(set (match_operand:VEC_M 0 "vfloat_operand" "")
- (match_operand:VEC_M 1 "memory_operand" ""))]
+ [(set (match_operand:VEC_M 0 "vfloat_operand")
+ (match_operand:VEC_M 1 "memory_operand"))]
"VECTOR_MEM_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
(define_expand "vector_store_<mode>"
- [(set (match_operand:VEC_M 0 "memory_operand" "")
- (match_operand:VEC_M 1 "vfloat_operand" ""))]
+ [(set (match_operand:VEC_M 0 "memory_operand")
+ (match_operand:VEC_M 1 "vfloat_operand"))]
"VECTOR_MEM_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
;; Splits if a GPR register was chosen for the move
(define_split
- [(set (match_operand:VEC_L 0 "nonimmediate_operand" "")
- (match_operand:VEC_L 1 "input_operand" ""))]
+ [(set (match_operand:VEC_L 0 "nonimmediate_operand")
+ (match_operand:VEC_L 1 "input_operand"))]
"VECTOR_MEM_ALTIVEC_OR_VSX_P (<MODE>mode)
&& reload_completed
&& gpr_or_gpr_p (operands[0], operands[1])
@@ -178,10 +178,9 @@
;; instructions silently ignore the bottom 3 bits of the address, and VSX does
;; not.
(define_expand "vector_altivec_load_<mode>"
- [(set (match_operand:VEC_M 0 "vfloat_operand" "")
- (match_operand:VEC_M 1 "memory_operand" ""))]
+ [(set (match_operand:VEC_M 0 "vfloat_operand")
+ (match_operand:VEC_M 1 "memory_operand"))]
"VECTOR_MEM_ALTIVEC_OR_VSX_P (<MODE>mode)"
- "
{
gcc_assert (VECTOR_MEM_ALTIVEC_OR_VSX_P (<MODE>mode));
@@ -198,13 +197,12 @@
emit_insn (gen_altivec_lvx_<mode>_1op (operands[0], operands[1]));
DONE;
}
-}")
+})
(define_expand "vector_altivec_store_<mode>"
- [(set (match_operand:VEC_M 0 "memory_operand" "")
- (match_operand:VEC_M 1 "vfloat_operand" ""))]
+ [(set (match_operand:VEC_M 0 "memory_operand")
+ (match_operand:VEC_M 1 "vfloat_operand"))]
"VECTOR_MEM_ALTIVEC_OR_VSX_P (<MODE>mode)"
- "
{
gcc_assert (VECTOR_MEM_ALTIVEC_OR_VSX_P (<MODE>mode));
@@ -221,29 +219,29 @@
emit_insn (gen_altivec_stvx_<mode>_1op (operands[1], operands[0]));
DONE;
}
-}")
+})
;; Generic floating point vector arithmetic support
(define_expand "add<mode>3"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (plus:VEC_F (match_operand:VEC_F 1 "vfloat_operand" "")
- (match_operand:VEC_F 2 "vfloat_operand" "")))]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (plus:VEC_F (match_operand:VEC_F 1 "vfloat_operand")
+ (match_operand:VEC_F 2 "vfloat_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
(define_expand "sub<mode>3"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (minus:VEC_F (match_operand:VEC_F 1 "vfloat_operand" "")
- (match_operand:VEC_F 2 "vfloat_operand" "")))]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (minus:VEC_F (match_operand:VEC_F 1 "vfloat_operand")
+ (match_operand:VEC_F 2 "vfloat_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
(define_expand "mul<mode>3"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (mult:VEC_F (match_operand:VEC_F 1 "vfloat_operand" "")
- (match_operand:VEC_F 2 "vfloat_operand" "")))]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (mult:VEC_F (match_operand:VEC_F 1 "vfloat_operand")
+ (match_operand:VEC_F 2 "vfloat_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
{
if (<MODE>mode == V4SFmode && VECTOR_UNIT_ALTIVEC_P (<MODE>mode))
@@ -254,9 +252,9 @@
})
(define_expand "div<mode>3"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (div:VEC_F (match_operand:VEC_F 1 "vfloat_operand" "")
- (match_operand:VEC_F 2 "vfloat_operand" "")))]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (div:VEC_F (match_operand:VEC_F 1 "vfloat_operand")
+ (match_operand:VEC_F 2 "vfloat_operand")))]
"VECTOR_UNIT_VSX_P (<MODE>mode)"
{
if (RS6000_RECIP_AUTO_RE_P (<MODE>mode)
@@ -269,49 +267,47 @@
})
(define_expand "neg<mode>2"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (neg:VEC_F (match_operand:VEC_F 1 "vfloat_operand" "")))]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (neg:VEC_F (match_operand:VEC_F 1 "vfloat_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
- "
{
if (<MODE>mode == V4SFmode && VECTOR_UNIT_ALTIVEC_P (<MODE>mode))
{
emit_insn (gen_altivec_negv4sf2 (operands[0], operands[1]));
DONE;
}
-}")
+})
(define_expand "abs<mode>2"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (abs:VEC_F (match_operand:VEC_F 1 "vfloat_operand" "")))]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (abs:VEC_F (match_operand:VEC_F 1 "vfloat_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
- "
{
if (<MODE>mode == V4SFmode && VECTOR_UNIT_ALTIVEC_P (<MODE>mode))
{
emit_insn (gen_altivec_absv4sf2 (operands[0], operands[1]));
DONE;
}
-}")
+})
(define_expand "smin<mode>3"
- [(set (match_operand:VEC_F 0 "register_operand" "")
- (smin:VEC_F (match_operand:VEC_F 1 "register_operand" "")
- (match_operand:VEC_F 2 "register_operand" "")))]
+ [(set (match_operand:VEC_F 0 "register_operand")
+ (smin:VEC_F (match_operand:VEC_F 1 "register_operand")
+ (match_operand:VEC_F 2 "register_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
(define_expand "smax<mode>3"
- [(set (match_operand:VEC_F 0 "register_operand" "")
- (smax:VEC_F (match_operand:VEC_F 1 "register_operand" "")
- (match_operand:VEC_F 2 "register_operand" "")))]
+ [(set (match_operand:VEC_F 0 "register_operand")
+ (smax:VEC_F (match_operand:VEC_F 1 "register_operand")
+ (match_operand:VEC_F 2 "register_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
(define_expand "sqrt<mode>2"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (sqrt:VEC_F (match_operand:VEC_F 1 "vfloat_operand" "")))]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (sqrt:VEC_F (match_operand:VEC_F 1 "vfloat_operand")))]
"VECTOR_UNIT_VSX_P (<MODE>mode)"
{
if (<MODE>mode == V4SFmode
@@ -325,51 +321,50 @@
})
(define_expand "rsqrte<mode>2"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (unspec:VEC_F [(match_operand:VEC_F 1 "vfloat_operand" "")]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (unspec:VEC_F [(match_operand:VEC_F 1 "vfloat_operand")]
UNSPEC_RSQRT))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
(define_expand "re<mode>2"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (unspec:VEC_F [(match_operand:VEC_F 1 "vfloat_operand" "f")]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (unspec:VEC_F [(match_operand:VEC_F 1 "vfloat_operand")]
UNSPEC_FRES))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
(define_expand "ftrunc<mode>2"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (fix:VEC_F (match_operand:VEC_F 1 "vfloat_operand" "")))]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (fix:VEC_F (match_operand:VEC_F 1 "vfloat_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
(define_expand "vector_ceil<mode>2"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (unspec:VEC_F [(match_operand:VEC_F 1 "vfloat_operand" "")]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (unspec:VEC_F [(match_operand:VEC_F 1 "vfloat_operand")]
UNSPEC_FRIP))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
(define_expand "vector_floor<mode>2"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (unspec:VEC_F [(match_operand:VEC_F 1 "vfloat_operand" "")]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (unspec:VEC_F [(match_operand:VEC_F 1 "vfloat_operand")]
UNSPEC_FRIM))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
(define_expand "vector_btrunc<mode>2"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (fix:VEC_F (match_operand:VEC_F 1 "vfloat_operand" "")))]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (fix:VEC_F (match_operand:VEC_F 1 "vfloat_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
(define_expand "vector_copysign<mode>3"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (unspec:VEC_F [(match_operand:VEC_F 1 "vfloat_operand" "")
- (match_operand:VEC_F 2 "vfloat_operand" "")] UNSPEC_COPYSIGN))]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (unspec:VEC_F [(match_operand:VEC_F 1 "vfloat_operand")
+ (match_operand:VEC_F 2 "vfloat_operand")] UNSPEC_COPYSIGN))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
- "
{
if (<MODE>mode == V4SFmode && VECTOR_UNIT_ALTIVEC_P (<MODE>mode))
{
@@ -377,27 +372,26 @@
operands[2]));
DONE;
}
-}")
+})
;; Vector comparisons
(define_expand "vcond<mode><mode>"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
(if_then_else:VEC_F
(match_operator 3 "comparison_operator"
- [(match_operand:VEC_F 4 "vfloat_operand" "")
- (match_operand:VEC_F 5 "vfloat_operand" "")])
- (match_operand:VEC_F 1 "vfloat_operand" "")
- (match_operand:VEC_F 2 "vfloat_operand" "")))]
+ [(match_operand:VEC_F 4 "vfloat_operand")
+ (match_operand:VEC_F 5 "vfloat_operand")])
+ (match_operand:VEC_F 1 "vfloat_operand")
+ (match_operand:VEC_F 2 "vfloat_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
- "
{
if (rs6000_emit_vector_cond_expr (operands[0], operands[1], operands[2],
operands[3], operands[4], operands[5]))
DONE;
else
FAIL;
-}")
+})
(define_expand "vcond<mode><mode>"
[(set (match_operand:VEC_I 0 "vint_operand")
@@ -408,52 +402,49 @@
(match_operand:VEC_I 1 "vector_int_reg_or_same_bit")
(match_operand:VEC_I 2 "vector_int_reg_or_same_bit")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
- "
{
if (rs6000_emit_vector_cond_expr (operands[0], operands[1], operands[2],
operands[3], operands[4], operands[5]))
DONE;
else
FAIL;
-}")
+})
(define_expand "vcondv4sfv4si"
- [(set (match_operand:V4SF 0 "vfloat_operand" "")
+ [(set (match_operand:V4SF 0 "vfloat_operand")
(if_then_else:V4SF
(match_operator 3 "comparison_operator"
- [(match_operand:V4SI 4 "vint_operand" "")
- (match_operand:V4SI 5 "vint_operand" "")])
- (match_operand:V4SF 1 "vfloat_operand" "")
- (match_operand:V4SF 2 "vfloat_operand" "")))]
+ [(match_operand:V4SI 4 "vint_operand")
+ (match_operand:V4SI 5 "vint_operand")])
+ (match_operand:V4SF 1 "vfloat_operand")
+ (match_operand:V4SF 2 "vfloat_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (V4SFmode)
&& VECTOR_UNIT_ALTIVEC_P (V4SImode)"
- "
{
if (rs6000_emit_vector_cond_expr (operands[0], operands[1], operands[2],
operands[3], operands[4], operands[5]))
DONE;
else
FAIL;
-}")
+})
(define_expand "vcondv4siv4sf"
- [(set (match_operand:V4SI 0 "vint_operand" "")
+ [(set (match_operand:V4SI 0 "vint_operand")
(if_then_else:V4SI
(match_operator 3 "comparison_operator"
- [(match_operand:V4SF 4 "vfloat_operand" "")
- (match_operand:V4SF 5 "vfloat_operand" "")])
- (match_operand:V4SI 1 "vint_operand" "")
- (match_operand:V4SI 2 "vint_operand" "")))]
+ [(match_operand:V4SF 4 "vfloat_operand")
+ (match_operand:V4SF 5 "vfloat_operand")])
+ (match_operand:V4SI 1 "vint_operand")
+ (match_operand:V4SI 2 "vint_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (V4SFmode)
&& VECTOR_UNIT_ALTIVEC_P (V4SImode)"
- "
{
if (rs6000_emit_vector_cond_expr (operands[0], operands[1], operands[2],
operands[3], operands[4], operands[5]))
DONE;
else
FAIL;
-}")
+})
(define_expand "vcondv2dfv2di"
[(set (match_operand:V2DF 0 "vfloat_operand")
@@ -500,33 +491,31 @@
(match_operand:VEC_I 1 "vector_int_reg_or_same_bit")
(match_operand:VEC_I 2 "vector_int_reg_or_same_bit")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
- "
{
if (rs6000_emit_vector_cond_expr (operands[0], operands[1], operands[2],
operands[3], operands[4], operands[5]))
DONE;
else
FAIL;
-}")
+})
(define_expand "vconduv4sfv4si"
- [(set (match_operand:V4SF 0 "vfloat_operand" "")
+ [(set (match_operand:V4SF 0 "vfloat_operand")
(if_then_else:V4SF
(match_operator 3 "comparison_operator"
- [(match_operand:V4SI 4 "vint_operand" "")
- (match_operand:V4SI 5 "vint_operand" "")])
- (match_operand:V4SF 1 "vfloat_operand" "")
- (match_operand:V4SF 2 "vfloat_operand" "")))]
+ [(match_operand:V4SI 4 "vint_operand")
+ (match_operand:V4SI 5 "vint_operand")])
+ (match_operand:V4SF 1 "vfloat_operand")
+ (match_operand:V4SF 2 "vfloat_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (V4SFmode)
&& VECTOR_UNIT_ALTIVEC_P (V4SImode)"
- "
{
if (rs6000_emit_vector_cond_expr (operands[0], operands[1], operands[2],
operands[3], operands[4], operands[5]))
DONE;
else
FAIL;
-}")
+})
(define_expand "vconduv2dfv2di"
[(set (match_operand:V2DF 0 "vfloat_operand")
@@ -547,95 +536,91 @@
})
(define_expand "vector_eq<mode>"
- [(set (match_operand:VEC_C 0 "vlogical_operand" "")
- (eq:VEC_C (match_operand:VEC_C 1 "vlogical_operand" "")
- (match_operand:VEC_C 2 "vlogical_operand" "")))]
+ [(set (match_operand:VEC_C 0 "vlogical_operand")
+ (eq:VEC_C (match_operand:VEC_C 1 "vlogical_operand")
+ (match_operand:VEC_C 2 "vlogical_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
(define_expand "vector_gt<mode>"
- [(set (match_operand:VEC_C 0 "vlogical_operand" "")
- (gt:VEC_C (match_operand:VEC_C 1 "vlogical_operand" "")
- (match_operand:VEC_C 2 "vlogical_operand" "")))]
+ [(set (match_operand:VEC_C 0 "vlogical_operand")
+ (gt:VEC_C (match_operand:VEC_C 1 "vlogical_operand")
+ (match_operand:VEC_C 2 "vlogical_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
(define_expand "vector_ge<mode>"
- [(set (match_operand:VEC_F 0 "vlogical_operand" "")
- (ge:VEC_F (match_operand:VEC_F 1 "vlogical_operand" "")
- (match_operand:VEC_F 2 "vlogical_operand" "")))]
+ [(set (match_operand:VEC_F 0 "vlogical_operand")
+ (ge:VEC_F (match_operand:VEC_F 1 "vlogical_operand")
+ (match_operand:VEC_F 2 "vlogical_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
; >= for integer vectors: swap operands and apply not-greater-than
(define_expand "vector_nlt<mode>"
- [(set (match_operand:VEC_I 3 "vlogical_operand" "")
- (gt:VEC_I (match_operand:VEC_I 2 "vlogical_operand" "")
- (match_operand:VEC_I 1 "vlogical_operand" "")))
- (set (match_operand:VEC_I 0 "vlogical_operand" "")
+ [(set (match_operand:VEC_I 3 "vlogical_operand")
+ (gt:VEC_I (match_operand:VEC_I 2 "vlogical_operand")
+ (match_operand:VEC_I 1 "vlogical_operand")))
+ (set (match_operand:VEC_I 0 "vlogical_operand")
(not:VEC_I (match_dup 3)))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
- "
{
operands[3] = gen_reg_rtx_and_attrs (operands[0]);
-}")
+})
(define_expand "vector_gtu<mode>"
- [(set (match_operand:VEC_I 0 "vint_operand" "")
- (gtu:VEC_I (match_operand:VEC_I 1 "vint_operand" "")
- (match_operand:VEC_I 2 "vint_operand" "")))]
+ [(set (match_operand:VEC_I 0 "vint_operand")
+ (gtu:VEC_I (match_operand:VEC_I 1 "vint_operand")
+ (match_operand:VEC_I 2 "vint_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
; >= for integer vectors: swap operands and apply not-greater-than
(define_expand "vector_nltu<mode>"
- [(set (match_operand:VEC_I 3 "vlogical_operand" "")
- (gtu:VEC_I (match_operand:VEC_I 2 "vlogical_operand" "")
- (match_operand:VEC_I 1 "vlogical_operand" "")))
- (set (match_operand:VEC_I 0 "vlogical_operand" "")
+ [(set (match_operand:VEC_I 3 "vlogical_operand")
+ (gtu:VEC_I (match_operand:VEC_I 2 "vlogical_operand")
+ (match_operand:VEC_I 1 "vlogical_operand")))
+ (set (match_operand:VEC_I 0 "vlogical_operand")
(not:VEC_I (match_dup 3)))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
- "
{
operands[3] = gen_reg_rtx_and_attrs (operands[0]);
-}")
+})
(define_expand "vector_geu<mode>"
- [(set (match_operand:VEC_I 0 "vint_operand" "")
- (geu:VEC_I (match_operand:VEC_I 1 "vint_operand" "")
- (match_operand:VEC_I 2 "vint_operand" "")))]
+ [(set (match_operand:VEC_I 0 "vint_operand")
+ (geu:VEC_I (match_operand:VEC_I 1 "vint_operand")
+ (match_operand:VEC_I 2 "vint_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
; <= for integer vectors: apply not-greater-than
(define_expand "vector_ngt<mode>"
- [(set (match_operand:VEC_I 3 "vlogical_operand" "")
- (gt:VEC_I (match_operand:VEC_I 1 "vlogical_operand" "")
- (match_operand:VEC_I 2 "vlogical_operand" "")))
- (set (match_operand:VEC_I 0 "vlogical_operand" "")
+ [(set (match_operand:VEC_I 3 "vlogical_operand")
+ (gt:VEC_I (match_operand:VEC_I 1 "vlogical_operand")
+ (match_operand:VEC_I 2 "vlogical_operand")))
+ (set (match_operand:VEC_I 0 "vlogical_operand")
(not:VEC_I (match_dup 3)))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
- "
{
operands[3] = gen_reg_rtx_and_attrs (operands[0]);
-}")
+})
(define_expand "vector_ngtu<mode>"
- [(set (match_operand:VEC_I 3 "vlogical_operand" "")
- (gtu:VEC_I (match_operand:VEC_I 1 "vlogical_operand" "")
- (match_operand:VEC_I 2 "vlogical_operand" "")))
- (set (match_operand:VEC_I 0 "vlogical_operand" "")
+ [(set (match_operand:VEC_I 3 "vlogical_operand")
+ (gtu:VEC_I (match_operand:VEC_I 1 "vlogical_operand")
+ (match_operand:VEC_I 2 "vlogical_operand")))
+ (set (match_operand:VEC_I 0 "vlogical_operand")
(not:VEC_I (match_dup 3)))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
- "
{
operands[3] = gen_reg_rtx_and_attrs (operands[0]);
-}")
+})
(define_insn_and_split "*vector_uneq<mode>"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (uneq:VEC_F (match_operand:VEC_F 1 "vfloat_operand" "")
- (match_operand:VEC_F 2 "vfloat_operand" "")))]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (uneq:VEC_F (match_operand:VEC_F 1 "vfloat_operand")
+ (match_operand:VEC_F 2 "vfloat_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"#"
""
@@ -654,9 +639,9 @@
})
(define_insn_and_split "*vector_ltgt<mode>"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (ltgt:VEC_F (match_operand:VEC_F 1 "vfloat_operand" "")
- (match_operand:VEC_F 2 "vfloat_operand" "")))]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (ltgt:VEC_F (match_operand:VEC_F 1 "vfloat_operand")
+ (match_operand:VEC_F 2 "vfloat_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"#"
""
@@ -669,16 +654,15 @@
(set (match_dup 0)
(ior:VEC_F (match_dup 3)
(match_dup 4)))]
- "
{
operands[3] = gen_reg_rtx (<MODE>mode);
operands[4] = gen_reg_rtx (<MODE>mode);
-}")
+})
(define_insn_and_split "*vector_ordered<mode>"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (ordered:VEC_F (match_operand:VEC_F 1 "vfloat_operand" "")
- (match_operand:VEC_F 2 "vfloat_operand" "")))]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (ordered:VEC_F (match_operand:VEC_F 1 "vfloat_operand")
+ (match_operand:VEC_F 2 "vfloat_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"#"
""
@@ -691,16 +675,15 @@
(set (match_dup 0)
(ior:VEC_F (match_dup 3)
(match_dup 4)))]
- "
{
operands[3] = gen_reg_rtx (<MODE>mode);
operands[4] = gen_reg_rtx (<MODE>mode);
-}")
+})
(define_insn_and_split "*vector_unordered<mode>"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (unordered:VEC_F (match_operand:VEC_F 1 "vfloat_operand" "")
- (match_operand:VEC_F 2 "vfloat_operand" "")))]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (unordered:VEC_F (match_operand:VEC_F 1 "vfloat_operand")
+ (match_operand:VEC_F 2 "vfloat_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"#"
""
@@ -713,31 +696,30 @@
(set (match_dup 0)
(and:VEC_F (not:VEC_F (match_dup 3))
(not:VEC_F (match_dup 4))))]
- "
{
operands[3] = gen_reg_rtx (<MODE>mode);
operands[4] = gen_reg_rtx (<MODE>mode);
-}")
+})
;; Note the arguments for __builtin_altivec_vsel are op2, op1, mask
;; which is in the reverse order that we want
(define_expand "vector_select_<mode>"
- [(set (match_operand:VEC_L 0 "vlogical_operand" "")
+ [(set (match_operand:VEC_L 0 "vlogical_operand")
(if_then_else:VEC_L
- (ne:CC (match_operand:VEC_L 3 "vlogical_operand" "")
+ (ne:CC (match_operand:VEC_L 3 "vlogical_operand")
(match_dup 4))
- (match_operand:VEC_L 2 "vlogical_operand" "")
- (match_operand:VEC_L 1 "vlogical_operand" "")))]
+ (match_operand:VEC_L 2 "vlogical_operand")
+ (match_operand:VEC_L 1 "vlogical_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"operands[4] = CONST0_RTX (<MODE>mode);")
(define_expand "vector_select_<mode>_uns"
- [(set (match_operand:VEC_L 0 "vlogical_operand" "")
+ [(set (match_operand:VEC_L 0 "vlogical_operand")
(if_then_else:VEC_L
- (ne:CCUNS (match_operand:VEC_L 3 "vlogical_operand" "")
+ (ne:CCUNS (match_operand:VEC_L 3 "vlogical_operand")
(match_dup 4))
- (match_operand:VEC_L 2 "vlogical_operand" "")
- (match_operand:VEC_L 1 "vlogical_operand" "")))]
+ (match_operand:VEC_L 2 "vlogical_operand")
+ (match_operand:VEC_L 1 "vlogical_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"operands[4] = CONST0_RTX (<MODE>mode);")
@@ -746,10 +728,10 @@
(define_expand "vector_eq_<mode>_p"
[(parallel
[(set (reg:CC CR6_REGNO)
- (unspec:CC [(eq:CC (match_operand:VEC_A 1 "vlogical_operand" "")
- (match_operand:VEC_A 2 "vlogical_operand" ""))]
+ (unspec:CC [(eq:CC (match_operand:VEC_A 1 "vlogical_operand")
+ (match_operand:VEC_A 2 "vlogical_operand"))]
UNSPEC_PREDICATE))
- (set (match_operand:VEC_A 0 "vlogical_operand" "")
+ (set (match_operand:VEC_A 0 "vlogical_operand")
(eq:VEC_A (match_dup 1)
(match_dup 2)))])]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
@@ -913,10 +895,10 @@
(define_expand "vector_gt_<mode>_p"
[(parallel
[(set (reg:CC CR6_REGNO)
- (unspec:CC [(gt:CC (match_operand:VEC_A 1 "vlogical_operand" "")
- (match_operand:VEC_A 2 "vlogical_operand" ""))]
+ (unspec:CC [(gt:CC (match_operand:VEC_A 1 "vlogical_operand")
+ (match_operand:VEC_A 2 "vlogical_operand"))]
UNSPEC_PREDICATE))
- (set (match_operand:VEC_A 0 "vlogical_operand" "")
+ (set (match_operand:VEC_A 0 "vlogical_operand")
(gt:VEC_A (match_dup 1)
(match_dup 2)))])]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
@@ -925,10 +907,10 @@
(define_expand "vector_ge_<mode>_p"
[(parallel
[(set (reg:CC CR6_REGNO)
- (unspec:CC [(ge:CC (match_operand:VEC_F 1 "vfloat_operand" "")
- (match_operand:VEC_F 2 "vfloat_operand" ""))]
+ (unspec:CC [(ge:CC (match_operand:VEC_F 1 "vfloat_operand")
+ (match_operand:VEC_F 2 "vfloat_operand"))]
UNSPEC_PREDICATE))
- (set (match_operand:VEC_F 0 "vfloat_operand" "")
+ (set (match_operand:VEC_F 0 "vfloat_operand")
(ge:VEC_F (match_dup 1)
(match_dup 2)))])]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
@@ -937,10 +919,10 @@
(define_expand "vector_gtu_<mode>_p"
[(parallel
[(set (reg:CC CR6_REGNO)
- (unspec:CC [(gtu:CC (match_operand:VEC_I 1 "vint_operand" "")
- (match_operand:VEC_I 2 "vint_operand" ""))]
+ (unspec:CC [(gtu:CC (match_operand:VEC_I 1 "vint_operand")
+ (match_operand:VEC_I 2 "vint_operand"))]
UNSPEC_PREDICATE))
- (set (match_operand:VEC_I 0 "vlogical_operand" "")
+ (set (match_operand:VEC_I 0 "vlogical_operand")
(gtu:VEC_I (match_dup 1)
(match_dup 2)))])]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
@@ -1002,87 +984,83 @@
;; Vector count leading zeros
(define_expand "clz<mode>2"
- [(set (match_operand:VEC_I 0 "register_operand" "")
- (clz:VEC_I (match_operand:VEC_I 1 "register_operand" "")))]
+ [(set (match_operand:VEC_I 0 "register_operand")
+ (clz:VEC_I (match_operand:VEC_I 1 "register_operand")))]
"TARGET_P8_VECTOR")
;; Vector count trailing zeros
(define_expand "ctz<mode>2"
- [(set (match_operand:VEC_I 0 "register_operand" "")
- (ctz:VEC_I (match_operand:VEC_I 1 "register_operand" "")))]
+ [(set (match_operand:VEC_I 0 "register_operand")
+ (ctz:VEC_I (match_operand:VEC_I 1 "register_operand")))]
"TARGET_P9_VECTOR")
;; Vector population count
(define_expand "popcount<mode>2"
- [(set (match_operand:VEC_I 0 "register_operand" "")
- (popcount:VEC_I (match_operand:VEC_I 1 "register_operand" "")))]
+ [(set (match_operand:VEC_I 0 "register_operand")
+ (popcount:VEC_I (match_operand:VEC_I 1 "register_operand")))]
"TARGET_P8_VECTOR")
;; Vector parity
(define_expand "parity<mode>2"
- [(set (match_operand:VEC_IP 0 "register_operand" "")
- (parity:VEC_IP (match_operand:VEC_IP 1 "register_operand" "")))]
+ [(set (match_operand:VEC_IP 0 "register_operand")
+ (parity:VEC_IP (match_operand:VEC_IP 1 "register_operand")))]
"TARGET_P9_VECTOR")
;; Same size conversions
(define_expand "float<VEC_int><mode>2"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (float:VEC_F (match_operand:<VEC_INT> 1 "vint_operand" "")))]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (float:VEC_F (match_operand:<VEC_INT> 1 "vint_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
- "
{
if (<MODE>mode == V4SFmode && VECTOR_UNIT_ALTIVEC_P (<MODE>mode))
{
emit_insn (gen_altivec_vcfsx (operands[0], operands[1], const0_rtx));
DONE;
}
-}")
+})
(define_expand "floatuns<VEC_int><mode>2"
- [(set (match_operand:VEC_F 0 "vfloat_operand" "")
- (unsigned_float:VEC_F (match_operand:<VEC_INT> 1 "vint_operand" "")))]
+ [(set (match_operand:VEC_F 0 "vfloat_operand")
+ (unsigned_float:VEC_F (match_operand:<VEC_INT> 1 "vint_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
- "
{
if (<MODE>mode == V4SFmode && VECTOR_UNIT_ALTIVEC_P (<MODE>mode))
{
emit_insn (gen_altivec_vcfux (operands[0], operands[1], const0_rtx));
DONE;
}
-}")
+})
(define_expand "fix_trunc<mode><VEC_int>2"
- [(set (match_operand:<VEC_INT> 0 "vint_operand" "")
- (fix:<VEC_INT> (match_operand:VEC_F 1 "vfloat_operand" "")))]
+ [(set (match_operand:<VEC_INT> 0 "vint_operand")
+ (fix:<VEC_INT> (match_operand:VEC_F 1 "vfloat_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
- "
{
if (<MODE>mode == V4SFmode && VECTOR_UNIT_ALTIVEC_P (<MODE>mode))
{
emit_insn (gen_altivec_vctsxs (operands[0], operands[1], const0_rtx));
DONE;
}
-}")
+})
(define_expand "fixuns_trunc<mode><VEC_int>2"
- [(set (match_operand:<VEC_INT> 0 "vint_operand" "")
- (unsigned_fix:<VEC_INT> (match_operand:VEC_F 1 "vfloat_operand" "")))]
+ [(set (match_operand:<VEC_INT> 0 "vint_operand")
+ (unsigned_fix:<VEC_INT> (match_operand:VEC_F 1 "vfloat_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
- "
{
if (<MODE>mode == V4SFmode && VECTOR_UNIT_ALTIVEC_P (<MODE>mode))
{
emit_insn (gen_altivec_vctuxs (operands[0], operands[1], const0_rtx));
DONE;
}
-}")
+})
;; Vector initialization, set, extract
(define_expand "vec_init<mode><VEC_base_l>"
- [(match_operand:VEC_E 0 "vlogical_operand" "")
- (match_operand:VEC_E 1 "" "")]
+ [(match_operand:VEC_E 0 "vlogical_operand")
+ (match_operand:VEC_E 1 "")]
"VECTOR_MEM_ALTIVEC_OR_VSX_P (<MODE>mode)"
{
rs6000_expand_vector_init (operands[0], operands[1]);
@@ -1090,9 +1068,9 @@
})
(define_expand "vec_set<mode>"
- [(match_operand:VEC_E 0 "vlogical_operand" "")
- (match_operand:<VEC_base> 1 "register_operand" "")
- (match_operand 2 "const_int_operand" "")]
+ [(match_operand:VEC_E 0 "vlogical_operand")
+ (match_operand:<VEC_base> 1 "register_operand")
+ (match_operand 2 "const_int_operand")]
"VECTOR_MEM_ALTIVEC_OR_VSX_P (<MODE>mode)"
{
rs6000_expand_vector_set (operands[0], operands[1], INTVAL (operands[2]));
@@ -1100,9 +1078,9 @@
})
(define_expand "vec_extract<mode><VEC_base_l>"
- [(match_operand:<VEC_base> 0 "register_operand" "")
- (match_operand:VEC_E 1 "vlogical_operand" "")
- (match_operand 2 "const_int_operand" "")]
+ [(match_operand:<VEC_base> 0 "register_operand")
+ (match_operand:VEC_E 1 "vlogical_operand")
+ (match_operand 2 "const_int_operand")]
"VECTOR_MEM_ALTIVEC_OR_VSX_P (<MODE>mode)"
{
rs6000_expand_vector_extract (operands[0], operands[1], operands[2]);
@@ -1111,9 +1089,9 @@
;; Convert double word types to single word types
(define_expand "vec_pack_trunc_v2df"
- [(match_operand:V4SF 0 "vfloat_operand" "")
- (match_operand:V2DF 1 "vfloat_operand" "")
- (match_operand:V2DF 2 "vfloat_operand" "")]
+ [(match_operand:V4SF 0 "vfloat_operand")
+ (match_operand:V2DF 1 "vfloat_operand")
+ (match_operand:V2DF 2 "vfloat_operand")]
"VECTOR_UNIT_VSX_P (V2DFmode) && TARGET_ALTIVEC"
{
rtx r1 = gen_reg_rtx (V4SFmode);
@@ -1126,9 +1104,9 @@
})
(define_expand "vec_pack_sfix_trunc_v2df"
- [(match_operand:V4SI 0 "vint_operand" "")
- (match_operand:V2DF 1 "vfloat_operand" "")
- (match_operand:V2DF 2 "vfloat_operand" "")]
+ [(match_operand:V4SI 0 "vint_operand")
+ (match_operand:V2DF 1 "vfloat_operand")
+ (match_operand:V2DF 2 "vfloat_operand")]
"VECTOR_UNIT_VSX_P (V2DFmode) && TARGET_ALTIVEC"
{
rtx r1 = gen_reg_rtx (V4SImode);
@@ -1141,9 +1119,9 @@
})
(define_expand "vec_pack_ufix_trunc_v2df"
- [(match_operand:V4SI 0 "vint_operand" "")
- (match_operand:V2DF 1 "vfloat_operand" "")
- (match_operand:V2DF 2 "vfloat_operand" "")]
+ [(match_operand:V4SI 0 "vint_operand")
+ (match_operand:V2DF 1 "vfloat_operand")
+ (match_operand:V2DF 2 "vfloat_operand")]
"VECTOR_UNIT_VSX_P (V2DFmode) && TARGET_ALTIVEC"
{
rtx r1 = gen_reg_rtx (V4SImode);
@@ -1157,8 +1135,8 @@
;; Convert single word types to double word
(define_expand "vec_unpacks_hi_v4sf"
- [(match_operand:V2DF 0 "vfloat_operand" "")
- (match_operand:V4SF 1 "vfloat_operand" "")]
+ [(match_operand:V2DF 0 "vfloat_operand")
+ (match_operand:V4SF 1 "vfloat_operand")]
"VECTOR_UNIT_VSX_P (V2DFmode) && VECTOR_UNIT_ALTIVEC_OR_VSX_P (V4SFmode)"
{
rtx reg = gen_reg_rtx (V4SFmode);
@@ -1169,8 +1147,8 @@
})
(define_expand "vec_unpacks_lo_v4sf"
- [(match_operand:V2DF 0 "vfloat_operand" "")
- (match_operand:V4SF 1 "vfloat_operand" "")]
+ [(match_operand:V2DF 0 "vfloat_operand")
+ (match_operand:V4SF 1 "vfloat_operand")]
"VECTOR_UNIT_VSX_P (V2DFmode) && VECTOR_UNIT_ALTIVEC_OR_VSX_P (V4SFmode)"
{
rtx reg = gen_reg_rtx (V4SFmode);
@@ -1181,8 +1159,8 @@
})
(define_expand "vec_unpacks_float_hi_v4si"
- [(match_operand:V2DF 0 "vfloat_operand" "")
- (match_operand:V4SI 1 "vint_operand" "")]
+ [(match_operand:V2DF 0 "vfloat_operand")
+ (match_operand:V4SI 1 "vint_operand")]
"VECTOR_UNIT_VSX_P (V2DFmode) && VECTOR_UNIT_ALTIVEC_OR_VSX_P (V4SImode)"
{
rtx reg = gen_reg_rtx (V4SImode);
@@ -1193,8 +1171,8 @@
})
(define_expand "vec_unpacks_float_lo_v4si"
- [(match_operand:V2DF 0 "vfloat_operand" "")
- (match_operand:V4SI 1 "vint_operand" "")]
+ [(match_operand:V2DF 0 "vfloat_operand")
+ (match_operand:V4SI 1 "vint_operand")]
"VECTOR_UNIT_VSX_P (V2DFmode) && VECTOR_UNIT_ALTIVEC_OR_VSX_P (V4SImode)"
{
rtx reg = gen_reg_rtx (V4SImode);
@@ -1205,8 +1183,8 @@
})
(define_expand "vec_unpacku_float_hi_v4si"
- [(match_operand:V2DF 0 "vfloat_operand" "")
- (match_operand:V4SI 1 "vint_operand" "")]
+ [(match_operand:V2DF 0 "vfloat_operand")
+ (match_operand:V4SI 1 "vint_operand")]
"VECTOR_UNIT_VSX_P (V2DFmode) && VECTOR_UNIT_ALTIVEC_OR_VSX_P (V4SImode)"
{
rtx reg = gen_reg_rtx (V4SImode);
@@ -1217,8 +1195,8 @@
})
(define_expand "vec_unpacku_float_lo_v4si"
- [(match_operand:V2DF 0 "vfloat_operand" "")
- (match_operand:V4SI 1 "vint_operand" "")]
+ [(match_operand:V2DF 0 "vfloat_operand")
+ (match_operand:V4SI 1 "vint_operand")]
"VECTOR_UNIT_VSX_P (V2DFmode) && VECTOR_UNIT_ALTIVEC_OR_VSX_P (V4SImode)"
{
rtx reg = gen_reg_rtx (V4SImode);
@@ -1231,10 +1209,10 @@
;; Align vector loads with a permute.
(define_expand "vec_realign_load_<mode>"
- [(match_operand:VEC_K 0 "vlogical_operand" "")
- (match_operand:VEC_K 1 "vlogical_operand" "")
- (match_operand:VEC_K 2 "vlogical_operand" "")
- (match_operand:V16QI 3 "vlogical_operand" "")]
+ [(match_operand:VEC_K 0 "vlogical_operand")
+ (match_operand:VEC_K 1 "vlogical_operand")
+ (match_operand:VEC_K 2 "vlogical_operand")
+ (match_operand:V16QI 3 "vlogical_operand")]
"VECTOR_MEM_ALTIVEC_OR_VSX_P (<MODE>mode)"
{
if (BYTES_BIG_ENDIAN)
@@ -1256,8 +1234,8 @@
;; Under VSX, vectors of 4/8 byte alignments do not need to be aligned
;; since the load already handles it.
(define_expand "movmisalign<mode>"
- [(set (match_operand:VEC_N 0 "nonimmediate_operand" "")
- (match_operand:VEC_N 1 "any_operand" ""))]
+ [(set (match_operand:VEC_N 0 "nonimmediate_operand")
+ (match_operand:VEC_N 1 "any_operand"))]
"VECTOR_MEM_VSX_P (<MODE>mode) && TARGET_ALLOW_MOVMISALIGN"
"")
@@ -1269,11 +1247,10 @@
;; Note that the vec_shr operation is actually defined as
;; 'shift toward element 0' so is a shr for LE and shl for BE.
(define_expand "vec_shr_<mode>"
- [(match_operand:VEC_L 0 "vlogical_operand" "")
- (match_operand:VEC_L 1 "vlogical_operand" "")
- (match_operand:QI 2 "reg_or_short_operand" "")]
+ [(match_operand:VEC_L 0 "vlogical_operand")
+ (match_operand:VEC_L 1 "vlogical_operand")
+ (match_operand:QI 2 "reg_or_short_operand")]
"TARGET_ALTIVEC"
- "
{
rtx bitshift = operands[2];
rtx shift;
@@ -1315,37 +1292,37 @@
emit_insn (insn);
DONE;
-}")
+})
;; Expanders for rotate each element in a vector
(define_expand "vrotl<mode>3"
- [(set (match_operand:VEC_I 0 "vint_operand" "")
- (rotate:VEC_I (match_operand:VEC_I 1 "vint_operand" "")
- (match_operand:VEC_I 2 "vint_operand" "")))]
+ [(set (match_operand:VEC_I 0 "vint_operand")
+ (rotate:VEC_I (match_operand:VEC_I 1 "vint_operand")
+ (match_operand:VEC_I 2 "vint_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
;; Expanders for arithmetic shift left on each vector element
(define_expand "vashl<mode>3"
- [(set (match_operand:VEC_I 0 "vint_operand" "")
- (ashift:VEC_I (match_operand:VEC_I 1 "vint_operand" "")
- (match_operand:VEC_I 2 "vint_operand" "")))]
+ [(set (match_operand:VEC_I 0 "vint_operand")
+ (ashift:VEC_I (match_operand:VEC_I 1 "vint_operand")
+ (match_operand:VEC_I 2 "vint_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
;; Expanders for logical shift right on each vector element
(define_expand "vlshr<mode>3"
- [(set (match_operand:VEC_I 0 "vint_operand" "")
- (lshiftrt:VEC_I (match_operand:VEC_I 1 "vint_operand" "")
- (match_operand:VEC_I 2 "vint_operand" "")))]
+ [(set (match_operand:VEC_I 0 "vint_operand")
+ (lshiftrt:VEC_I (match_operand:VEC_I 1 "vint_operand")
+ (match_operand:VEC_I 2 "vint_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
;; Expanders for arithmetic shift right on each vector element
(define_expand "vashr<mode>3"
- [(set (match_operand:VEC_I 0 "vint_operand" "")
- (ashiftrt:VEC_I (match_operand:VEC_I 1 "vint_operand" "")
- (match_operand:VEC_I 2 "vint_operand" "")))]
+ [(set (match_operand:VEC_I 0 "vint_operand")
+ (ashiftrt:VEC_I (match_operand:VEC_I 1 "vint_operand")
+ (match_operand:VEC_I 2 "vint_operand")))]
"VECTOR_UNIT_ALTIVEC_OR_VSX_P (<MODE>mode)"
"")
@@ -1359,8 +1336,8 @@
(define_expand "reduc_<VEC_reduc:VEC_reduc_name>_scal_<VEC_F:mode>"
- [(match_operand:<VEC_base> 0 "register_operand" "")
- (VEC_reduc:VEC_F (match_operand:VEC_F 1 "vfloat_operand" "")
+ [(match_operand:<VEC_base> 0 "register_operand")
+ (VEC_reduc:VEC_F (match_operand:VEC_F 1 "vfloat_operand")
(unspec:VEC_F [(const_int 0)] UNSPEC_REDUC))]
"VECTOR_UNIT_VSX_P (<VEC_F:MODE>mode)"
{
diff --git a/gcc/config/rs6000/vsx.md b/gcc/config/rs6000/vsx.md
index 6f0bd09e9bb..a65ff756a1e 100644
--- a/gcc/config/rs6000/vsx.md
+++ b/gcc/config/rs6000/vsx.md
@@ -443,7 +443,6 @@
(vec_select:<MODE>
(match_dup 2)
(parallel [(const_int 1) (const_int 0)])))]
- "
{
rtx mem = operands[1];
@@ -475,7 +474,6 @@
operands[2] = can_create_pseudo_p () ? gen_reg_rtx_and_attrs (operands[0])
: operands[0];
}
- "
[(set_attr "type" "vecload")
(set_attr "length" "8")])
@@ -495,7 +493,6 @@
(match_dup 2)
(parallel [(const_int 2) (const_int 3)
(const_int 0) (const_int 1)])))]
- "
{
rtx mem = operands[1];
@@ -527,7 +524,6 @@
operands[2] = can_create_pseudo_p () ? gen_reg_rtx_and_attrs (operands[0])
: operands[0];
}
- "
[(set_attr "type" "vecload")
(set_attr "length" "8")])
@@ -551,7 +547,6 @@
(const_int 6) (const_int 7)
(const_int 0) (const_int 1)
(const_int 2) (const_int 3)])))]
- "
{
rtx mem = operands[1];
@@ -583,7 +578,6 @@
operands[2] = can_create_pseudo_p () ? gen_reg_rtx_and_attrs (operands[0])
: operands[0];
}
- "
[(set_attr "type" "vecload")
(set_attr "length" "8")])
@@ -615,7 +609,6 @@
(const_int 2) (const_int 3)
(const_int 4) (const_int 5)
(const_int 6) (const_int 7)])))]
- "
{
rtx mem = operands[1];
@@ -647,7 +640,6 @@
operands[2] = can_create_pseudo_p () ? gen_reg_rtx_and_attrs (operands[0])
: operands[0];
}
- "
[(set_attr "type" "vecload")
(set_attr "length" "8")])
@@ -660,8 +652,8 @@
(set_attr "length" "12")])
(define_split
- [(set (match_operand:VSX_D 0 "indexed_or_indirect_operand" "")
- (match_operand:VSX_D 1 "vsx_register_operand" ""))]
+ [(set (match_operand:VSX_D 0 "indexed_or_indirect_operand")
+ (match_operand:VSX_D 1 "vsx_register_operand"))]
"!BYTES_BIG_ENDIAN && TARGET_VSX && !TARGET_P9_VECTOR && !reload_completed"
[(set (match_dup 2)
(vec_select:<MODE>
@@ -704,8 +696,8 @@
;; The post-reload split requires that we re-permute the source
;; register in case it is still live.
(define_split
- [(set (match_operand:VSX_D 0 "indexed_or_indirect_operand" "")
- (match_operand:VSX_D 1 "vsx_register_operand" ""))]
+ [(set (match_operand:VSX_D 0 "indexed_or_indirect_operand")
+ (match_operand:VSX_D 1 "vsx_register_operand"))]
"!BYTES_BIG_ENDIAN && TARGET_VSX && !TARGET_P9_VECTOR && reload_completed"
[(set (match_dup 1)
(vec_select:<MODE>
@@ -730,8 +722,8 @@
(set_attr "length" "12")])
(define_split
- [(set (match_operand:VSX_W 0 "indexed_or_indirect_operand" "")
- (match_operand:VSX_W 1 "vsx_register_operand" ""))]
+ [(set (match_operand:VSX_W 0 "indexed_or_indirect_operand")
+ (match_operand:VSX_W 1 "vsx_register_operand"))]
"!BYTES_BIG_ENDIAN && TARGET_VSX && !TARGET_P9_VECTOR && !reload_completed"
[(set (match_dup 2)
(vec_select:<MODE>
@@ -776,8 +768,8 @@
;; The post-reload split requires that we re-permute the source
;; register in case it is still live.
(define_split
- [(set (match_operand:VSX_W 0 "indexed_or_indirect_operand" "")
- (match_operand:VSX_W 1 "vsx_register_operand" ""))]
+ [(set (match_operand:VSX_W 0 "indexed_or_indirect_operand")
+ (match_operand:VSX_W 1 "vsx_register_operand"))]
"!BYTES_BIG_ENDIAN && TARGET_VSX && !TARGET_P9_VECTOR && reload_completed"
[(set (match_dup 1)
(vec_select:<MODE>
@@ -805,8 +797,8 @@
(set_attr "length" "12")])
(define_split
- [(set (match_operand:V8HI 0 "indexed_or_indirect_operand" "")
- (match_operand:V8HI 1 "vsx_register_operand" ""))]
+ [(set (match_operand:V8HI 0 "indexed_or_indirect_operand")
+ (match_operand:V8HI 1 "vsx_register_operand"))]
"!BYTES_BIG_ENDIAN && TARGET_VSX && !TARGET_P9_VECTOR && !reload_completed"
[(set (match_dup 2)
(vec_select:V8HI
@@ -855,8 +847,8 @@
;; The post-reload split requires that we re-permute the source
;; register in case it is still live.
(define_split
- [(set (match_operand:V8HI 0 "indexed_or_indirect_operand" "")
- (match_operand:V8HI 1 "vsx_register_operand" ""))]
+ [(set (match_operand:V8HI 0 "indexed_or_indirect_operand")
+ (match_operand:V8HI 1 "vsx_register_operand"))]
"!BYTES_BIG_ENDIAN && TARGET_VSX && !TARGET_P9_VECTOR && reload_completed"
[(set (match_dup 1)
(vec_select:V8HI
@@ -890,8 +882,8 @@
(set_attr "length" "12")])
(define_split
- [(set (match_operand:V16QI 0 "indexed_or_indirect_operand" "")
- (match_operand:V16QI 1 "vsx_register_operand" ""))]
+ [(set (match_operand:V16QI 0 "indexed_or_indirect_operand")
+ (match_operand:V16QI 1 "vsx_register_operand"))]
"!BYTES_BIG_ENDIAN && TARGET_VSX && !TARGET_P9_VECTOR && !reload_completed"
[(set (match_dup 2)
(vec_select:V16QI
@@ -948,8 +940,8 @@
;; The post-reload split requires that we re-permute the source
;; register in case it is still live.
(define_split
- [(set (match_operand:V16QI 0 "indexed_or_indirect_operand" "")
- (match_operand:V16QI 1 "vsx_register_operand" ""))]
+ [(set (match_operand:V16QI 0 "indexed_or_indirect_operand")
+ (match_operand:V16QI 1 "vsx_register_operand"))]
"!BYTES_BIG_ENDIAN && TARGET_VSX && !TARGET_P9_VECTOR && reload_completed"
[(set (match_dup 1)
(vec_select:V16QI
@@ -1037,7 +1029,6 @@
#"
"!BYTES_BIG_ENDIAN && TARGET_VSX && !TARGET_P9_VECTOR"
[(const_int 0)]
- "
{
rtx tmp = (can_create_pseudo_p ()
? gen_reg_rtx_and_attrs (operands[0])
@@ -1046,7 +1037,6 @@
rs6000_emit_le_vsx_permute (operands[0], tmp, <MODE>mode);
DONE;
}
- "
[(set_attr "type" "vecload,load")
(set_attr "length" "8,8")])
@@ -1061,8 +1051,8 @@
(set_attr "length" "12,8")])
(define_split
- [(set (match_operand:VSX_LE_128 0 "memory_operand" "")
- (match_operand:VSX_LE_128 1 "vsx_register_operand" ""))]
+ [(set (match_operand:VSX_LE_128 0 "memory_operand")
+ (match_operand:VSX_LE_128 1 "vsx_register_operand"))]
"!BYTES_BIG_ENDIAN && TARGET_VSX && !reload_completed && !TARGET_P9_VECTOR"
[(const_int 0)]
{
@@ -1103,10 +1093,10 @@
;; VSX registers on a little endian system. The vector types and IEEE 128-bit
;; floating point are handled by the more generic swap elimination pass.
(define_peephole2
- [(set (match_operand:TI 0 "vsx_register_operand" "")
- (rotate:TI (match_operand:TI 1 "vsx_register_operand" "")
+ [(set (match_operand:TI 0 "vsx_register_operand")
+ (rotate:TI (match_operand:TI 1 "vsx_register_operand")
(const_int 64)))
- (set (match_operand:TI 2 "vsx_register_operand" "")
+ (set (match_operand:TI 2 "vsx_register_operand")
(rotate:TI (match_dup 0)
(const_int 64)))]
"!BYTES_BIG_ENDIAN && TARGET_VSX && !TARGET_P9_VECTOR
@@ -1117,8 +1107,8 @@
;; The post-reload split requires that we re-permute the source
;; register in case it is still live.
(define_split
- [(set (match_operand:VSX_LE_128 0 "memory_operand" "")
- (match_operand:VSX_LE_128 1 "vsx_register_operand" ""))]
+ [(set (match_operand:VSX_LE_128 0 "memory_operand")
+ (match_operand:VSX_LE_128 1 "vsx_register_operand"))]
"!BYTES_BIG_ENDIAN && TARGET_VSX && reload_completed && !TARGET_P9_VECTOR"
[(const_int 0)]
{
@@ -1266,8 +1256,8 @@
;; Explicit load/store expanders for the builtin functions
(define_expand "vsx_load_<mode>"
- [(set (match_operand:VSX_M 0 "vsx_register_operand" "")
- (match_operand:VSX_M 1 "memory_operand" ""))]
+ [(set (match_operand:VSX_M 0 "vsx_register_operand")
+ (match_operand:VSX_M 1 "memory_operand"))]
"VECTOR_MEM_VSX_P (<MODE>mode)"
{
/* Expand to swaps if needed, prior to swap optimization. */
@@ -1279,8 +1269,8 @@
})
(define_expand "vsx_store_<mode>"
- [(set (match_operand:VSX_M 0 "memory_operand" "")
- (match_operand:VSX_M 1 "vsx_register_operand" ""))]
+ [(set (match_operand:VSX_M 0 "memory_operand")
+ (match_operand:VSX_M 1 "vsx_register_operand"))]
"VECTOR_MEM_VSX_P (<MODE>mode)"
{
/* Expand to swaps if needed, prior to swap optimization. */
@@ -1640,7 +1630,6 @@
"#"
"VECTOR_MEM_VSX_P (V2DImode) && !reload_completed"
[(const_int 0)]
- "
{
rtx op0 = operands[0];
rtx op1 = operands[1];
@@ -1668,7 +1657,7 @@
}
emit_insn (gen_vsx_concat_v2di (op0, op5, op3));
DONE;
-}"
+}
[(set_attr "type" "mul")])
(define_insn "*vsx_div<mode>3"
@@ -1690,7 +1679,6 @@
"#"
"VECTOR_MEM_VSX_P (V2DImode) && !reload_completed"
[(const_int 0)]
- "
{
rtx op0 = operands[0];
rtx op1 = operands[1];
@@ -1726,7 +1714,7 @@
}
emit_insn (gen_vsx_concat_v2di (op0, op5, op3));
DONE;
-}"
+}
[(set_attr "type" "div")])
(define_insn_and_split "vsx_udiv_v2di"
@@ -1738,7 +1726,6 @@
"#"
"VECTOR_MEM_VSX_P (V2DImode) && !reload_completed"
[(const_int 0)]
- "
{
rtx op0 = operands[0];
rtx op1 = operands[1];
@@ -1774,16 +1761,16 @@
}
emit_insn (gen_vsx_concat_v2di (op0, op5, op3));
DONE;
-}"
+}
[(set_attr "type" "div")])
;; *tdiv* instruction returning the FG flag
(define_expand "vsx_tdiv<mode>3_fg"
[(set (match_dup 3)
- (unspec:CCFP [(match_operand:VSX_B 1 "vsx_register_operand" "")
- (match_operand:VSX_B 2 "vsx_register_operand" "")]
+ (unspec:CCFP [(match_operand:VSX_B 1 "vsx_register_operand")
+ (match_operand:VSX_B 2 "vsx_register_operand")]
UNSPEC_VSX_TDIV))
- (set (match_operand:SI 0 "gpc_reg_operand" "")
+ (set (match_operand:SI 0 "gpc_reg_operand")
(gt:SI (match_dup 3)
(const_int 0)))]
"VECTOR_UNIT_VSX_P (<MODE>mode)"
@@ -1794,10 +1781,10 @@
;; *tdiv* instruction returning the FE flag
(define_expand "vsx_tdiv<mode>3_fe"
[(set (match_dup 3)
- (unspec:CCFP [(match_operand:VSX_B 1 "vsx_register_operand" "")
- (match_operand:VSX_B 2 "vsx_register_operand" "")]
+ (unspec:CCFP [(match_operand:VSX_B 1 "vsx_register_operand")
+ (match_operand:VSX_B 2 "vsx_register_operand")]
UNSPEC_VSX_TDIV))
- (set (match_operand:SI 0 "gpc_reg_operand" "")
+ (set (match_operand:SI 0 "gpc_reg_operand")
(eq:SI (match_dup 3)
(const_int 0)))]
"VECTOR_UNIT_VSX_P (<MODE>mode)"
@@ -1888,9 +1875,9 @@
;; *tsqrt* returning the fg flag
(define_expand "vsx_tsqrt<mode>2_fg"
[(set (match_dup 2)
- (unspec:CCFP [(match_operand:VSX_B 1 "vsx_register_operand" "")]
+ (unspec:CCFP [(match_operand:VSX_B 1 "vsx_register_operand")]
UNSPEC_VSX_TSQRT))
- (set (match_operand:SI 0 "gpc_reg_operand" "")
+ (set (match_operand:SI 0 "gpc_reg_operand")
(gt:SI (match_dup 2)
(const_int 0)))]
"VECTOR_UNIT_VSX_P (<MODE>mode)"
@@ -1901,9 +1888,9 @@
;; *tsqrt* returning the fe flag
(define_expand "vsx_tsqrt<mode>2_fe"
[(set (match_dup 2)
- (unspec:CCFP [(match_operand:VSX_B 1 "vsx_register_operand" "")]
+ (unspec:CCFP [(match_operand:VSX_B 1 "vsx_register_operand")]
UNSPEC_VSX_TSQRT))
- (set (match_operand:SI 0 "gpc_reg_operand" "")
+ (set (match_operand:SI 0 "gpc_reg_operand")
(eq:SI (match_dup 2)
(const_int 0)))]
"VECTOR_UNIT_VSX_P (<MODE>mode)"
@@ -2303,9 +2290,9 @@
;; Convert and scale (used by vec_ctf, vec_cts, vec_ctu for double/long long)
(define_expand "vsx_xvcvsxddp_scale"
- [(match_operand:V2DF 0 "vsx_register_operand" "")
- (match_operand:V2DI 1 "vsx_register_operand" "")
- (match_operand:QI 2 "immediate_operand" "")]
+ [(match_operand:V2DF 0 "vsx_register_operand")
+ (match_operand:V2DI 1 "vsx_register_operand")
+ (match_operand:QI 2 "immediate_operand")]
"VECTOR_UNIT_VSX_P (V2DFmode)"
{
rtx op0 = operands[0];
@@ -2326,9 +2313,9 @@
[(set_attr "type" "vecdouble")])
(define_expand "vsx_xvcvuxddp_scale"
- [(match_operand:V2DF 0 "vsx_register_operand" "")
- (match_operand:V2DI 1 "vsx_register_operand" "")
- (match_operand:QI 2 "immediate_operand" "")]
+ [(match_operand:V2DF 0 "vsx_register_operand")
+ (match_operand:V2DI 1 "vsx_register_operand")
+ (match_operand:QI 2 "immediate_operand")]
"VECTOR_UNIT_VSX_P (V2DFmode)"
{
rtx op0 = operands[0];
@@ -2349,9 +2336,9 @@
[(set_attr "type" "vecdouble")])
(define_expand "vsx_xvcvdpsxds_scale"
- [(match_operand:V2DI 0 "vsx_register_operand" "")
- (match_operand:V2DF 1 "vsx_register_operand" "")
- (match_operand:QI 2 "immediate_operand" "")]
+ [(match_operand:V2DI 0 "vsx_register_operand")
+ (match_operand:V2DF 1 "vsx_register_operand")
+ (match_operand:QI 2 "immediate_operand")]
"VECTOR_UNIT_VSX_P (V2DFmode)"
{
rtx op0 = operands[0];
@@ -2392,9 +2379,9 @@
;; convert vector of 64-bit floating point numbers to vector of
;; 64-bit unsigned integer
(define_expand "vsx_xvcvdpuxds_scale"
- [(match_operand:V2DI 0 "vsx_register_operand" "")
- (match_operand:V2DF 1 "vsx_register_operand" "")
- (match_operand:QI 2 "immediate_operand" "")]
+ [(match_operand:V2DI 0 "vsx_register_operand")
+ (match_operand:V2DF 1 "vsx_register_operand")
+ (match_operand:QI 2 "immediate_operand")]
"VECTOR_UNIT_VSX_P (V2DFmode)"
{
rtx op0 = operands[0];
@@ -3161,10 +3148,10 @@
;; Convert a TImode value into V1TImode
(define_expand "vsx_set_v1ti"
- [(match_operand:V1TI 0 "nonimmediate_operand" "")
- (match_operand:V1TI 1 "nonimmediate_operand" "")
- (match_operand:TI 2 "input_operand" "")
- (match_operand:QI 3 "u5bit_cint_operand" "")]
+ [(match_operand:V1TI 0 "nonimmediate_operand")
+ (match_operand:V1TI 1 "nonimmediate_operand")
+ (match_operand:TI 2 "input_operand")
+ (match_operand:QI 3 "u5bit_cint_operand")]
"VECTOR_MEM_VSX_P (V1TImode)"
{
if (operands[3] != const0_rtx)
@@ -4078,9 +4065,9 @@
;; Expanders for builtins
(define_expand "vsx_mergel_<mode>"
- [(use (match_operand:VSX_D 0 "vsx_register_operand" ""))
- (use (match_operand:VSX_D 1 "vsx_register_operand" ""))
- (use (match_operand:VSX_D 2 "vsx_register_operand" ""))]
+ [(use (match_operand:VSX_D 0 "vsx_register_operand"))
+ (use (match_operand:VSX_D 1 "vsx_register_operand"))
+ (use (match_operand:VSX_D 2 "vsx_register_operand"))]
"VECTOR_MEM_VSX_P (<MODE>mode)"
{
rtvec v;
@@ -4104,9 +4091,9 @@
})
(define_expand "vsx_mergeh_<mode>"
- [(use (match_operand:VSX_D 0 "vsx_register_operand" ""))
- (use (match_operand:VSX_D 1 "vsx_register_operand" ""))
- (use (match_operand:VSX_D 2 "vsx_register_operand" ""))]
+ [(use (match_operand:VSX_D 0 "vsx_register_operand"))
+ (use (match_operand:VSX_D 1 "vsx_register_operand"))
+ (use (match_operand:VSX_D 2 "vsx_register_operand"))]
"VECTOR_MEM_VSX_P (<MODE>mode)"
{
rtvec v;
@@ -4328,7 +4315,6 @@
"#"
""
[(const_int 0)]
- "
{
rtx tmp = (GET_CODE (operands[2]) == SCRATCH)
? gen_reg_rtx (V2DFmode)
@@ -4336,7 +4322,7 @@
emit_insn (gen_vsx_xxsldwi_v2df (tmp, operands[1], operands[1], const2_rtx));
emit_insn (gen_<VEC_reduc_rtx>v2df3 (operands[0], tmp, operands[1]));
DONE;
-}"
+}
[(set_attr "length" "8")
(set_attr "type" "veccomplex")])
@@ -4351,7 +4337,6 @@
"#"
""
[(const_int 0)]
- "
{
rtx op0 = operands[0];
rtx op1 = operands[1];
@@ -4375,7 +4360,7 @@
emit_insn (gen_vsx_xxsldwi_v4sf (tmp4, tmp3, tmp3, GEN_INT (3)));
emit_insn (gen_<VEC_reduc_rtx>v4sf3 (op0, tmp4, tmp3));
DONE;
-}"
+}
[(set_attr "length" "16")
(set_attr "type" "veccomplex")])
@@ -4400,7 +4385,6 @@
"#"
""
[(const_int 0)]
- "
{
rtx hi = gen_highpart (DFmode, operands[1]);
rtx lo = (GET_CODE (operands[2]) == SCRATCH)
@@ -4410,7 +4394,7 @@
emit_insn (gen_vsx_extract_v2df (lo, operands[1], const1_rtx));
emit_insn (gen_<VEC_reduc_rtx>df3 (operands[0], hi, lo));
DONE;
-}"
+}
[(set_attr "length" "8")
(set_attr "type" "veccomplex")])
@@ -4428,7 +4412,6 @@
"#"
""
[(const_int 0)]
- "
{
rtx op0 = operands[0];
rtx op1 = operands[1];
@@ -4455,28 +4438,28 @@
emit_insn (gen_<VEC_reduc_rtx>v4sf3 (tmp5, tmp4, tmp3));
emit_insn (gen_vsx_xscvspdp_scalar2 (op0, tmp5));
DONE;
-}"
+}
[(set_attr "length" "20")
(set_attr "type" "veccomplex")])
;; Power8 Vector fusion. The fused ops must be physically adjacent.
(define_peephole
- [(set (match_operand:P 0 "base_reg_operand" "")
- (match_operand:P 1 "short_cint_operand" ""))
- (set (match_operand:VSX_M 2 "vsx_register_operand" "")
+ [(set (match_operand:P 0 "base_reg_operand")
+ (match_operand:P 1 "short_cint_operand"))
+ (set (match_operand:VSX_M 2 "vsx_register_operand")
(mem:VSX_M (plus:P (match_dup 0)
- (match_operand:P 3 "int_reg_operand" ""))))]
+ (match_operand:P 3 "int_reg_operand"))))]
"TARGET_VSX && TARGET_P8_FUSION && !TARGET_P9_VECTOR"
"li %0,%1\;lx<VSX_M:VSm>x %x2,%0,%3\t\t\t# vector load fusion"
[(set_attr "length" "8")
(set_attr "type" "vecload")])
(define_peephole
- [(set (match_operand:P 0 "base_reg_operand" "")
- (match_operand:P 1 "short_cint_operand" ""))
- (set (match_operand:VSX_M 2 "vsx_register_operand" "")
- (mem:VSX_M (plus:P (match_operand:P 3 "int_reg_operand" "")
+ [(set (match_operand:P 0 "base_reg_operand")
+ (match_operand:P 1 "short_cint_operand"))
+ (set (match_operand:VSX_M 2 "vsx_register_operand")
+ (mem:VSX_M (plus:P (match_operand:P 3 "int_reg_operand")
(match_dup 0))))]
"TARGET_VSX && TARGET_P8_FUSION && !TARGET_P9_VECTOR"
"li %0,%1\;lx<VSX_M:VSm>x %x2,%0,%3\t\t\t# vector load fusion"
@@ -5204,45 +5187,20 @@
;; Vector insert/extract word at arbitrary byte values. Note, the little
;; endian version needs to adjust the byte number, and the V4SI element in
;; vinsert4b.
-(define_expand "vextract4b"
- [(set (match_operand:DI 0 "gpc_reg_operand")
- (unspec:DI [(match_operand:V16QI 1 "vsx_register_operand")
- (match_operand:QI 2 "const_0_to_12_operand")]
- UNSPEC_XXEXTRACTUW))]
+(define_insn "extract4b"
+ [(set (match_operand:V2DI 0 "vsx_register_operand")
+ (unspec:V2DI [(match_operand:V16QI 1 "vsx_register_operand" "wa")
+ (match_operand:QI 2 "const_0_to_12_operand" "n")]
+ UNSPEC_XXEXTRACTUW))]
"TARGET_P9_VECTOR"
{
if (!VECTOR_ELT_ORDER_BIG)
operands[2] = GEN_INT (12 - INTVAL (operands[2]));
-})
-
-(define_insn_and_split "*vextract4b_internal"
- [(set (match_operand:DI 0 "gpc_reg_operand" "=wj,r")
- (unspec:DI [(match_operand:V16QI 1 "vsx_register_operand" "wa,v")
- (match_operand:QI 2 "const_0_to_12_operand" "n,n")]
- UNSPEC_XXEXTRACTUW))]
- "TARGET_P9_VECTOR"
- "@
- xxextractuw %x0,%x1,%2
- #"
- "&& reload_completed && int_reg_operand (operands[0], DImode)"
- [(const_int 0)]
-{
- rtx op0 = operands[0];
- rtx op1 = operands[1];
- rtx op2 = operands[2];
- rtx op0_si = gen_rtx_REG (SImode, REGNO (op0));
- rtx op1_v4si = gen_rtx_REG (V4SImode, REGNO (op1));
- emit_move_insn (op0, op2);
- if (VECTOR_ELT_ORDER_BIG)
- emit_insn (gen_vextuwlx (op0_si, op0_si, op1_v4si));
- else
- emit_insn (gen_vextuwrx (op0_si, op0_si, op1_v4si));
- DONE;
-}
- [(set_attr "type" "vecperm")])
+ return "xxextractuw %x0,%x1,%2";
+})
-(define_expand "vinsert4b"
+(define_expand "insert4b"
[(set (match_operand:V16QI 0 "vsx_register_operand")
(unspec:V16QI [(match_operand:V4SI 1 "vsx_register_operand")
(match_operand:V16QI 2 "vsx_register_operand")
@@ -5260,7 +5218,7 @@
}
})
-(define_insn "*vinsert4b_internal"
+(define_insn "*insert4b_internal"
[(set (match_operand:V16QI 0 "vsx_register_operand" "=wa")
(unspec:V16QI [(match_operand:V4SI 1 "vsx_register_operand" "wa")
(match_operand:V16QI 2 "vsx_register_operand" "0")
@@ -5270,27 +5228,6 @@
"xxinsertw %x0,%x1,%3"
[(set_attr "type" "vecperm")])
-(define_expand "vinsert4b_di"
- [(set (match_operand:V16QI 0 "vsx_register_operand")
- (unspec:V16QI [(match_operand:DI 1 "vsx_register_operand")
- (match_operand:V16QI 2 "vsx_register_operand")
- (match_operand:QI 3 "const_0_to_12_operand")]
- UNSPEC_XXINSERTW))]
- "TARGET_P9_VECTOR"
-{
- if (!VECTOR_ELT_ORDER_BIG)
- operands[3] = GEN_INT (12 - INTVAL (operands[3]));
-})
-
-(define_insn "*vinsert4b_di_internal"
- [(set (match_operand:V16QI 0 "vsx_register_operand" "=wa")
- (unspec:V16QI [(match_operand:DI 1 "vsx_register_operand" "wj")
- (match_operand:V16QI 2 "vsx_register_operand" "0")
- (match_operand:QI 3 "const_0_to_12_operand" "n")]
- UNSPEC_XXINSERTW))]
- "TARGET_P9_VECTOR"
- "xxinsertw %x0,%x1,%3"
- [(set_attr "type" "vecperm")])
;; Generate vector extract four float 32 values from left four elements
;; of eight element vector of float 16 values.
diff --git a/gcc/config/rx/rx-protos.h b/gcc/config/rx/rx-protos.h
index b3c5bfc7a7f..0bb885d2da1 100644
--- a/gcc/config/rx/rx-protos.h
+++ b/gcc/config/rx/rx-protos.h
@@ -63,6 +63,112 @@ extern void rx_notice_update_cc (rtx, rtx);
extern void rx_split_cbranch (machine_mode, enum rtx_code,
rtx, rtx, rtx);
extern machine_mode rx_select_cc_mode (enum rtx_code, rtx, rtx);
+
+extern bool rx_reg_dead_or_unused_after_insn (const rtx_insn* i, int regno);
+extern void rx_copy_reg_dead_or_unused_notes (rtx reg, const rtx_insn* src,
+ rtx_insn* dst);
+
+extern bool rx_fuse_in_memory_bitop (rtx* operands, rtx_insn* curr_insn,
+ rtx (*gen_insn)(rtx, rtx));
+
+/* Result value of rx_find_set_of_reg. */
+struct set_of_reg
+{
+ /* The insn where sh_find_set_of_reg stopped looking.
+ Can be NULL_RTX if the end of the insn list was reached. */
+ rtx_insn* insn;
+
+ /* The set rtx of the specified reg if found, NULL_RTX otherwise. */
+ const_rtx set_rtx;
+
+ /* The set source rtx of the specified reg if found, NULL_RTX otherwise.
+ Usually, this is the most interesting return value. */
+ rtx set_src;
+};
+
+/* FIXME: Copy-pasta from SH. Move to rtl.h.
+ Given a reg rtx and a start insn, try to find the insn that sets
+ the specified reg by using the specified insn stepping function,
+ such as 'prev_nonnote_nondebug_insn_bb'. When the insn is found,
+ try to extract the rtx of the reg set. */
+template <typename F> inline set_of_reg
+rx_find_set_of_reg (rtx reg, rtx_insn* insn, F stepfunc,
+ bool ignore_reg_reg_copies = false)
+{
+ set_of_reg result;
+ result.insn = insn;
+ result.set_rtx = NULL_RTX;
+ result.set_src = NULL_RTX;
+
+ if (!REG_P (reg) || insn == NULL_RTX)
+ return result;
+
+ for (rtx_insn* i = stepfunc (insn); i != NULL_RTX; i = stepfunc (i))
+ {
+ if (BARRIER_P (i))
+ break;
+ if (!INSN_P (i) || DEBUG_INSN_P (i))
+ continue;
+ if (reg_set_p (reg, i))
+ {
+ if (CALL_P (i))
+ break;
+
+ result.insn = i;
+ result.set_rtx = set_of (reg, i);
+
+ if (result.set_rtx == NULL_RTX || GET_CODE (result.set_rtx) != SET)
+ break;
+
+ result.set_src = XEXP (result.set_rtx, 1);
+
+ if (ignore_reg_reg_copies && REG_P (result.set_src))
+ {
+ reg = result.set_src;
+ continue;
+ }
+ if (ignore_reg_reg_copies && SUBREG_P (result.set_src)
+ && REG_P (SUBREG_REG (result.set_src)))
+ {
+ reg = SUBREG_REG (result.set_src);
+ continue;
+ }
+
+ break;
+ }
+ }
+
+ /* If the searched reg is found inside a (mem (post_inc:SI (reg))), set_of
+ will return NULL and set_rtx will be NULL.
+ In this case report a 'not found'. result.insn will always be non-null
+ at this point, so no need to check it. */
+ if (result.set_src != NULL && result.set_rtx == NULL)
+ result.set_src = NULL;
+
+ return result;
+}
+
+/* FIXME: Move to rtlh.h. */
+template <typename F> inline rtx_insn*
+rx_find_use_of_reg (rtx reg, rtx_insn* insn, F stepfunc)
+{
+ if (!REG_P (reg) || insn == NULL_RTX)
+ return NULL;
+
+ for (rtx_insn* i = stepfunc (insn); i != NULL_RTX; i = stepfunc (i))
+ {
+ if (BARRIER_P (i))
+ break;
+ if (!INSN_P (i) || DEBUG_INSN_P (i))
+ continue;
+ if (reg_overlap_mentioned_p (reg, PATTERN (i))
+ || (CALL_P (i) && find_reg_fusage (i, USE, reg)))
+ return i;
+ }
+
+ return NULL;
+}
+
#endif
#endif /* GCC_RX_PROTOS_H */
diff --git a/gcc/config/rx/rx.c b/gcc/config/rx/rx.c
index be8229818ae..fe467f7bd3a 100644
--- a/gcc/config/rx/rx.c
+++ b/gcc/config/rx/rx.c
@@ -1644,6 +1644,20 @@ mark_frame_related (rtx insn)
}
}
+/* Create CFI notes for register pops. */
+static void
+add_pop_cfi_notes (rtx_insn *insn, unsigned int high, unsigned int low)
+{
+ rtx t = plus_constant (Pmode, stack_pointer_rtx,
+ (high - low + 1) * UNITS_PER_WORD);
+ t = gen_rtx_SET (stack_pointer_rtx, t);
+ add_reg_note (insn, REG_CFA_ADJUST_CFA, t);
+ RTX_FRAME_RELATED_P (insn) = 1;
+ for (unsigned int i = low; i <= high; i++)
+ add_reg_note (insn, REG_CFA_RESTORE, gen_rtx_REG (word_mode, i));
+}
+
+
static bool
ok_for_max_constant (HOST_WIDE_INT val)
{
@@ -2029,11 +2043,14 @@ rx_can_use_simple_return (void)
static void
pop_regs (unsigned int high, unsigned int low)
{
+ rtx_insn *insn;
if (high == low)
- emit_insn (gen_stack_pop (gen_rtx_REG (SImode, low)));
+ insn = emit_insn (gen_stack_pop (gen_rtx_REG (SImode, low)));
else
- emit_insn (gen_stack_popm (GEN_INT (((high - low) + 1) * UNITS_PER_WORD),
- gen_rx_popm_vector (low, high)));
+ insn = emit_insn (gen_stack_popm (GEN_INT (((high - low) + 1)
+ * UNITS_PER_WORD),
+ gen_rx_popm_vector (low, high)));
+ add_pop_cfi_notes (insn, high, low);
}
void
@@ -2976,6 +2993,62 @@ rx_address_cost (rtx addr, machine_mode mode ATTRIBUTE_UNUSED,
}
static bool
+rx_rtx_costs (rtx x, machine_mode mode, int outer_code ATTRIBUTE_UNUSED,
+ int opno ATTRIBUTE_UNUSED, int* total, bool speed)
+{
+ if (x == const0_rtx)
+ {
+ *total = 0;
+ return true;
+ }
+
+ switch (GET_CODE (x))
+ {
+ case MULT:
+ if (mode == DImode)
+ {
+ *total = COSTS_N_INSNS (2);
+ return true;
+ }
+ /* fall through */
+
+ case PLUS:
+ case MINUS:
+ case AND:
+ case COMPARE:
+ case IOR:
+ case XOR:
+ *total = COSTS_N_INSNS (1);
+ return true;
+
+ case DIV:
+ if (speed)
+ /* This is the worst case for a division. Pessimize divisions when
+ not optimizing for size and allow reciprocal optimizations which
+ produce bigger code. */
+ *total = COSTS_N_INSNS (20);
+ else
+ *total = COSTS_N_INSNS (3);
+ return true;
+
+ case UDIV:
+ if (speed)
+ /* This is the worst case for a division. Pessimize divisions when
+ not optimizing for size and allow reciprocal optimizations which
+ produce bigger code. */
+ *total = COSTS_N_INSNS (18);
+ else
+ *total = COSTS_N_INSNS (3);
+ return true;
+
+ default:
+ break;
+ }
+
+ return false;
+}
+
+static bool
rx_can_eliminate (const int from ATTRIBUTE_UNUSED, const int to)
{
/* We can always eliminate to the frame pointer.
@@ -3439,6 +3512,88 @@ rx_atomic_sequence::~rx_atomic_sequence (void)
emit_insn (gen_mvtc (GEN_INT (CTRLREG_PSW), m_prev_psw_reg));
}
+/* Given an insn and a reg number, tell whether the reg dies or is unused
+ after the insn. */
+bool
+rx_reg_dead_or_unused_after_insn (const rtx_insn* i, int regno)
+{
+ return find_regno_note (i, REG_DEAD, regno) != NULL
+ || find_regno_note (i, REG_UNUSED, regno) != NULL;
+}
+
+/* Copy dead and unused notes from SRC to DST for the specified REGNO. */
+void
+rx_copy_reg_dead_or_unused_notes (rtx reg, const rtx_insn* src, rtx_insn* dst)
+{
+ int regno = REGNO (SUBREG_P (reg) ? SUBREG_REG (reg) : reg);
+
+ if (rtx note = find_regno_note (src, REG_DEAD, regno))
+ add_shallow_copy_of_reg_note (dst, note);
+
+ if (rtx note = find_regno_note (src, REG_UNUSED, regno))
+ add_shallow_copy_of_reg_note (dst, note);
+}
+
+/* Try to fuse the current bit-operation insn with the surrounding memory load
+ and store. */
+bool
+rx_fuse_in_memory_bitop (rtx* operands, rtx_insn* curr_insn,
+ rtx (*gen_insn)(rtx, rtx))
+{
+ rtx op2_reg = SUBREG_P (operands[2]) ? SUBREG_REG (operands[2]) : operands[2];
+
+ set_of_reg op2_def = rx_find_set_of_reg (op2_reg, curr_insn,
+ prev_nonnote_nondebug_insn_bb);
+ if (op2_def.set_src == NULL_RTX
+ || !MEM_P (op2_def.set_src)
+ || GET_MODE (op2_def.set_src) != QImode
+ || !rx_is_restricted_memory_address (XEXP (op2_def.set_src, 0),
+ GET_MODE (op2_def.set_src))
+ || reg_used_between_p (operands[2], op2_def.insn, curr_insn)
+ || !rx_reg_dead_or_unused_after_insn (curr_insn, REGNO (op2_reg))
+ )
+ return false;
+
+ /* The register operand originates from a memory load and the memory load
+ could be fused with the bitop insn.
+ Look for the following memory store with the same memory operand. */
+ rtx mem = op2_def.set_src;
+
+ /* If the memory is an auto-mod address, it can't be fused. */
+ if (GET_CODE (XEXP (mem, 0)) == POST_INC
+ || GET_CODE (XEXP (mem, 0)) == PRE_INC
+ || GET_CODE (XEXP (mem, 0)) == POST_DEC
+ || GET_CODE (XEXP (mem, 0)) == PRE_DEC)
+ return false;
+
+ rtx_insn* op0_use = rx_find_use_of_reg (operands[0], curr_insn,
+ next_nonnote_nondebug_insn_bb);
+ if (op0_use == NULL
+ || !(GET_CODE (PATTERN (op0_use)) == SET
+ && RX_REG_P (XEXP (PATTERN (op0_use), 1))
+ && reg_overlap_mentioned_p (operands[0], XEXP (PATTERN (op0_use), 1))
+ && rtx_equal_p (mem, XEXP (PATTERN (op0_use), 0)))
+ || !rx_reg_dead_or_unused_after_insn (op0_use, REGNO (operands[0]))
+ || reg_set_between_p (operands[2], curr_insn, op0_use))
+ return false;
+
+ /* If the load-modify-store operation is fused it could potentially modify
+ load/store ordering if there are other memory accesses between the load
+ and the store for this insn. If there are volatile mems between the load
+ and store it's better not to change the ordering. If there is a call
+ between the load and store, it's also not safe to fuse it. */
+ for (rtx_insn* i = next_nonnote_nondebug_insn_bb (op2_def.insn);
+ i != NULL && i != op0_use;
+ i = next_nonnote_nondebug_insn_bb (i))
+ if (volatile_insn_p (PATTERN (i)) || CALL_P (i))
+ return false;
+
+ emit_insn (gen_insn (mem, gen_lowpart (QImode, operands[1])));
+ set_insn_deleted (op2_def.insn);
+ set_insn_deleted (op0_use);
+ return true;
+}
+
/* Implement TARGET_HARD_REGNO_NREGS. */
static unsigned int
@@ -3627,6 +3782,9 @@ rx_modes_tieable_p (machine_mode mode1, machine_mode mode2)
#undef TARGET_MODES_TIEABLE_P
#define TARGET_MODES_TIEABLE_P rx_modes_tieable_p
+#undef TARGET_RTX_COSTS
+#define TARGET_RTX_COSTS rx_rtx_costs
+
struct gcc_target targetm = TARGET_INITIALIZER;
#include "gt-rx.h"
diff --git a/gcc/config/rx/rx.md b/gcc/config/rx/rx.md
index 3fb2ac854b0..116d4d4a939 100644
--- a/gcc/config/rx/rx.md
+++ b/gcc/config/rx/rx.md
@@ -1094,7 +1094,7 @@
DONE;
})
-(define_insn "andsi3"
+(define_insn_and_split "andsi3"
[(set (match_operand:SI 0 "register_operand" "=r,r,r,r,r,r,r,r,r")
(and:SI (match_operand:SI 1 "register_operand" "%0,0,0,0,0,0,r,r,0")
(match_operand:SI 2 "rx_source_operand" "r,Uint04,Sint08,Sint16,Sint24,i,0,r,Q")))
@@ -1110,6 +1110,21 @@
and\t%1, %0
and\t%2, %1, %0
and\t%Q2, %0"
+ "&& RX_REG_P (operands[1]) && CONST_INT_P (operands[2])
+ && pow2p_hwi (~UINTVAL (operands[2]))"
+ [(const_int 0)]
+{
+ /* For negated single bit constants use the bclr insn for smaller code. */
+
+ if (!rx_reg_dead_or_unused_after_insn (curr_insn, CC_REG))
+ FAIL;
+
+ rx_copy_reg_dead_or_unused_notes (operands[1], curr_insn,
+ emit_insn (gen_bitclr (operands[0],
+ GEN_INT (exact_log2 (~UINTVAL (operands[2]))),
+ operands[1])));
+ DONE;
+}
[(set_attr "timings" "11,11,11,11,11,11,11,11,33")
(set_attr "length" "2,2,3,4,5,6,2,5,5")]
)
@@ -1383,7 +1398,7 @@
[(set_attr "length" "2,3")]
)
-(define_insn "iorsi3"
+(define_insn_and_split "iorsi3"
[(set (match_operand:SI 0 "register_operand" "=r,r,r,r,r,r,r,r,r")
(ior:SI (match_operand:SI 1 "register_operand" "%0,0,0,0,0,0,r,r,0")
(match_operand:SI 2 "rx_source_operand" "r,Uint04,Sint08,Sint16,Sint24,i,0,r,Q")))
@@ -1399,6 +1414,21 @@
or\t%1, %0
or\t%2, %1, %0
or\t%Q2, %0"
+ "&& RX_REG_P (operands[1]) && CONST_INT_P (operands[2])
+ && pow2p_hwi (UINTVAL (operands[2]))"
+ [(const_int 0)]
+{
+ /* For single bit constants use the bset insn for smaller code. */
+
+ if (!rx_reg_dead_or_unused_after_insn (curr_insn, CC_REG))
+ FAIL;
+
+ rx_copy_reg_dead_or_unused_notes (operands[1], curr_insn,
+ emit_insn (gen_bitset (operands[0],
+ GEN_INT (exact_log2 (UINTVAL (operands[2]))),
+ operands[1])));
+ DONE;
+}
[(set_attr "timings" "11,11,11,11,11,11,11,11,33")
(set_attr "length" "2,2,3,4,5,6,2,3,5")]
)
@@ -1704,7 +1734,7 @@
DONE;
})
-(define_insn "xorsi3"
+(define_insn_and_split "xorsi3"
[(set (match_operand:SI 0 "register_operand" "=r,r,r,r,r,r")
(xor:SI (match_operand:SI 1 "register_operand" "%0,0,0,0,0,0")
(match_operand:SI 2 "rx_source_operand"
@@ -1712,6 +1742,21 @@
(clobber (reg:CC CC_REG))]
""
"xor\t%Q2, %0"
+ "&& RX_REG_P (operands[1]) && CONST_INT_P (operands[2])
+ && pow2p_hwi (UINTVAL (operands[2]))"
+ [(const_int 0)]
+{
+ /* For single bit constants use the bnot insn for smaller code. */
+
+ if (!rx_reg_dead_or_unused_after_insn (curr_insn, CC_REG))
+ FAIL;
+
+ rx_copy_reg_dead_or_unused_notes (operands[1], curr_insn,
+ emit_insn (gen_bitinvert (operands[0],
+ GEN_INT (exact_log2 (UINTVAL (operands[2]))),
+ operands[1])));
+ DONE;
+}
[(set_attr "timings" "11,11,11,11,11,33")
(set_attr "length" "3,4,5,6,7,6")]
)
@@ -1960,50 +2005,63 @@
;; Bit manipulation instructions.
-;; ??? The *_in_memory patterns will not be matched without further help.
-;; At one time we had the insv expander generate them, but I suspect that
-;; in general we get better performance by exposing the register load to
-;; the optimizers.
-;;
-;; An alternate solution would be to re-organize these patterns such
-;; that allow both register and memory operands. This would allow the
-;; register allocator to spill and not load the register operand. This
-;; would be possible only for operations for which we have a constant
-;; bit offset, so that we can adjust the address by ofs/8 and replace
-;; the offset in the insn by ofs%8.
-
-(define_insn "*bitset"
+;; The *_in_memory patterns will not be matched automatically, not even with
+;; combiner bridge patterns. Especially when the memory operands have a
+;; displacement, the resulting patterns look too complex.
+;; Instead we manually look around the matched insn to see if there is a
+;; preceeding memory load and a following memory store of the modified register
+;; which can be fused into the single *_in_memory insn.
+;; Do that before register allocation, as it can eliminate one temporary
+;; register that needs to be allocated.
+
+(define_insn_and_split "bitset"
[(set (match_operand:SI 0 "register_operand" "=r")
(ior:SI (ashift:SI (const_int 1)
(match_operand:SI 1 "rx_shift_operand" "ri"))
(match_operand:SI 2 "register_operand" "0")))]
""
"bset\t%1, %0"
+ "&& can_create_pseudo_p ()"
+ [(const_int 0)]
+{
+ if (rx_fuse_in_memory_bitop (operands, curr_insn, &gen_bitset_in_memory))
+ DONE;
+ else
+ FAIL;
+}
[(set_attr "length" "3")]
)
-(define_insn "*bitset_in_memory"
+(define_insn "bitset_in_memory"
[(set (match_operand:QI 0 "rx_restricted_mem_operand" "+Q")
(ior:QI (ashift:QI (const_int 1)
(match_operand:QI 1 "nonmemory_operand" "ri"))
(match_dup 0)))]
""
"bset\t%1, %0.B"
- [(set_attr "length" "3")
+ [(set_attr "length" "5")
(set_attr "timings" "33")]
)
-(define_insn "*bitinvert"
+(define_insn_and_split "bitinvert"
[(set (match_operand:SI 0 "register_operand" "=r")
(xor:SI (ashift:SI (const_int 1)
(match_operand:SI 1 "rx_shift_operand" "ri"))
(match_operand:SI 2 "register_operand" "0")))]
""
"bnot\t%1, %0"
+ "&& can_create_pseudo_p ()"
+ [(const_int 0)]
+{
+ if (rx_fuse_in_memory_bitop (operands, curr_insn, &gen_bitinvert_in_memory))
+ DONE;
+ else
+ FAIL;
+}
[(set_attr "length" "3")]
)
-(define_insn "*bitinvert_in_memory"
+(define_insn "bitinvert_in_memory"
[(set (match_operand:QI 0 "rx_restricted_mem_operand" "+Q")
(xor:QI (ashift:QI (const_int 1)
(match_operand:QI 1 "nonmemory_operand" "ri"))
@@ -2014,7 +2072,7 @@
(set_attr "timings" "33")]
)
-(define_insn "*bitclr"
+(define_insn_and_split "bitclr"
[(set (match_operand:SI 0 "register_operand" "=r")
(and:SI (not:SI
(ashift:SI
@@ -2023,10 +2081,18 @@
(match_operand:SI 2 "register_operand" "0")))]
""
"bclr\t%1, %0"
+ "&& can_create_pseudo_p ()"
+ [(const_int 0)]
+{
+ if (rx_fuse_in_memory_bitop (operands, curr_insn, &gen_bitclr_in_memory))
+ DONE;
+ else
+ FAIL;
+}
[(set_attr "length" "3")]
)
-(define_insn "*bitclr_in_memory"
+(define_insn "bitclr_in_memory"
[(set (match_operand:QI 0 "rx_restricted_mem_operand" "+Q")
(and:QI (not:QI
(ashift:QI
@@ -2035,7 +2101,7 @@
(match_dup 0)))]
""
"bclr\t%1, %0.B"
- [(set_attr "length" "3")
+ [(set_attr "length" "5")
(set_attr "timings" "33")]
)
diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c
index 298fdd16490..51adb0df480 100644
--- a/gcc/config/s390/s390.c
+++ b/gcc/config/s390/s390.c
@@ -9259,7 +9259,6 @@ s390_chunkify_start (void)
section_switch_p = true;
break;
case NOTE_INSN_VAR_LOCATION:
- case NOTE_INSN_CALL_ARG_LOCATION:
continue;
default:
break;
@@ -9330,8 +9329,7 @@ s390_chunkify_start (void)
}
while (next
&& NOTE_P (next)
- && (NOTE_KIND (next) == NOTE_INSN_VAR_LOCATION
- || NOTE_KIND (next) == NOTE_INSN_CALL_ARG_LOCATION));
+ && NOTE_KIND (next) == NOTE_INSN_VAR_LOCATION);
}
else
{
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c
index 90d6c733d33..ced66408265 100644
--- a/gcc/config/sh/sh.c
+++ b/gcc/config/sh/sh.c
@@ -5225,21 +5225,13 @@ find_barrier (int num_mova, rtx_insn *mova, rtx_insn *from)
around the constant pool table will be hit. Putting it before
a jump makes it more likely that the bra delay slot will be
filled. */
- while (NOTE_P (from) || JUMP_P (from)
- || LABEL_P (from))
+ while (NOTE_P (from) || JUMP_P (from) || LABEL_P (from))
from = PREV_INSN (from);
- /* Make sure we do not split between a call and its corresponding
- CALL_ARG_LOCATION note. */
if (CALL_P (from))
{
bool sibcall_p = SIBLING_CALL_P (from);
- rtx_insn *next = NEXT_INSN (from);
- if (next && NOTE_P (next)
- && NOTE_KIND (next) == NOTE_INSN_CALL_ARG_LOCATION)
- from = next;
-
/* If FROM was a sibling call, then we know that control
will not return. In fact, we were guaranteed to hit
a barrier before another real insn.
diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c
index 23cdf4d26bf..7cfe64d4289 100644
--- a/gcc/config/xtensa/xtensa.c
+++ b/gcc/config/xtensa/xtensa.c
@@ -4255,10 +4255,7 @@ hwloop_optimize (hwloop_info loop)
entry_after = BB_END (entry_bb);
while (DEBUG_INSN_P (entry_after)
|| (NOTE_P (entry_after)
- && NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK
- /* Make sure we don't split a call and its corresponding
- CALL_ARG_LOCATION note. */
- && NOTE_KIND (entry_after) != NOTE_INSN_CALL_ARG_LOCATION))
+ && NOTE_KIND (entry_after) != NOTE_INSN_BASIC_BLOCK))
entry_after = PREV_INSN (entry_after);
emit_insn_after (seq, entry_after);
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 7c52edeeab6..58710a91787 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,183 @@
+2018-02-22 Jason Merrill <jason@redhat.com>
+
+ PR c++/70468 - ICE with constructor delegation via typedef.
+ * pt.c (tsubst_initializer_list): Check for other mem-initializers
+ with constructor delegation.
+
+2018-02-22 Jason Merrill <jason@redhat.com>
+
+ PR c++/84424 - ICE with constexpr and __builtin_shuffle.
+ * constexpr.c (reduced_constant_expression_p): Handle CONSTRUCTOR of
+ VECTOR_TYPE.
+
+2018-02-22 Marek Polacek <polacek@redhat.com>
+
+ PR c++/84493
+ * parser.c (cp_parser_braced_list): Use require_open instead of
+ consume_open.
+
+2018-02-21 Jason Merrill <jason@redhat.com>
+
+ PR c++/84454 - ICE with pack expansion in signature.
+ * error.c (find_typenames_r): Also stop on EXPR_PACK_EXPANSION.
+
+2018-02-20 Siddhesh Poyarekar <siddhesh@sourceware.org>
+
+ * cp-objcp-common.c (cxx_block_may_fallthru): Add case for
+ IF_STMT.
+
+2018-02-20 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/84446
+ * parser.c (cp_parser_init_declarator): Don't call start_lambda_scope
+ on error_mark_node.
+
+2018-02-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/84445
+ * class.c (fixed_type_or_null) <case CALL_EXPR>: Only test
+ TREE_HAS_CONSTRUCTOR if instance is not an internal function call.
+
+ PR c++/84449
+ * tree.c (bot_manip): If build_cplus_new or break_out_target_exprs
+ returns error_mark_node, return it immediately.
+ (break_out_target_exprs): If cp_walk_tree with bot_manip returns
+ error_mark_node, return error_mark_node.
+
+ PR c++/84455
+ * pt.c (tsubst_lambda_expr): If not nested, increment temporarily
+ function_depth to avoid GC during finish_lambda_function.
+
+2018-02-19 Jason Merrill <jason@redhat.com>
+
+ PR c++/84429 - ICE capturing VLA.
+ * lambda.c (build_capture_proxy): Handle reference refs.
+
+2018-02-19 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/84448
+ * parser.c (cp_parser_binary_expression): For no_toplevel_fold_p, if
+ either operand is error_mark_node, set current.lhs to that instead of
+ creating a binary op with error_mark_node operands.
+
+ PR c++/84430
+ * constexpr.c (potential_constant_expression_1): Handle OMP_SIMD.
+
+2018-02-19 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/84348
+ * decl.c (grokdeclarator): Early return error_mark_node upon
+ ill-formed friend declaration.
+
+2018-02-16 Marek Polacek <polacek@redhat.com>
+ Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/84192
+ * constexpr.c (cxx_eval_constant_expression) <case RETURN_EXPR>: Don't
+ set *jump_target to anything if jump_target is NULL.
+
+2018-02-16 Jason Merrill <jason@redhat.com>
+
+ PR c++/84151 - unnecessary volatile load with static member.
+ * call.c (build_new_method_call_1): Avoid loading from a volatile
+ lvalue used as the object argument for a static member function.
+
+ PR c++/81853 - using-directive and constexpr.
+ * constexpr.c (cxx_eval_constant_expression): Handle USING_STMT.
+
+ PR c++/84420 - ICE with structured binding in lambda.
+ * lambda.c (is_capture_proxy): Check DECL_DECOMPOSITION_P.
+
+ PR c++/83835 - C++17 error with constructor ctors.
+ * call.c (build_special_member_call): Set TARGET_EXPR_DIRECT_INIT_P.
+
+ PR c++/82664 - ICE with reference to function template parm.
+ * pt.c (convert_nontype_argument_function): Avoid obfuscationg
+ NOP_EXPRs.
+
+ PR c++/82764 - C++17 ICE with empty base
+ * class.c (build_base_field_1): Set DECL_SIZE to zero for empty base.
+
+2018-02-16 Jason Merrill <jason@redhat.com>
+
+ PR c++/84421 - type-dependent if constexpr
+ * semantics.c (finish_if_stmt_cond): Check type_dependent_expression_p.
+
+2018-02-16 Nathan Sidwell <nathan@acm.org>
+
+ Deprecate -ffriend-injection.
+ * decl.c (cxx_init_decl_processing): Emit warning on option.
+ * name-lookup.c (do_pushdecl): Emit warning if we push a visible
+ friend.
+
+2018-02-16 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/82468
+ * decl.c (check_special_function_return_type): Reject template
+ template parameter in deduction guide.
+
+2018-02-16 Nathan Sidwell <nathan@acm.org>
+
+ PR c++/84375
+ * name-lookup.c (do_pushdecl): Bail out on bad local friend injection.
+
+2018-02-15 Jason Merrill <jason@redhat.com>
+
+ PR c++/83227 - C++17 ICE with init-list derived-to-base conversion.
+ * call.c (convert_like_real): Don't use the copy-list-initialization
+ shortcut for ck_base.
+
+ PR c++/84045 - ICE with typedef and noexcept.
+ * except.c (build_noexcept_spec): Use strip_typedefs_expr.
+
+ PR c++/84376 - ICE with omitted template arguments.
+ * pt.c (dguide_name_p): Check for IDENTIFIER_NODE.
+
+ PR c++/84368 - wrong error with local variable in variadic lambda.
+ * pt.c (tsubst_pack_expansion): Fix handling of non-packs in
+ local_specializations.
+
+2018-02-15 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/84330
+ * constraint.cc (tsubst_constraint_info): Handle an error_mark_node
+ as first argument.
+
+2018-02-14 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/84350
+ * pt.c (do_auto_deduction): Don't check the TREE_TYPE of a null
+ init, early return.
+
+2018-02-14 Nathan Sidwell <nathan@acm.org>
+
+ * decl2.c (mark_vtable_entries): Set input_location to decl's.
+ (c_parse_final_cleanups): Restore input_location after emitting
+ vtables.
+
+2018-02-14 Paolo Carlini <paolo.carlini@oracle.com>
+
+ * cp-tree.h (do_auto_deduction (tree, tree, tree)): Remove.
+ (do_auto_deduction (tree, tree, tree, tsubst_flags_t,
+ auto_deduction_context, tree, int): Add defaults.
+ * pt.c (do_auto_deduction (tree, tree, tree)): Remove definition.
+ (tsubst_omp_for_iterator): Adjust do_auto_deduction call, forward
+ tsubst_flags_t argument.
+ * init.c (build_new): Likewise.
+
+2018-02-13 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/84364
+ * typeck.c (check_return_expr): Don't emit -Weffc++ warning
+ about return other than *this in assignment operators if
+ retval is type dependent expression.
+
+2018-02-13 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/84333
+ * call.c (build_conditional_expr_1): Use cp_save_expr instead of
+ save_expr for the G++ extension.
+
2018-02-13 Jason Merrill <jason@redhat.com>
PR c++/84080 - ICE with return type deduction and specialization.
diff --git a/gcc/cp/call.c b/gcc/cp/call.c
index 15b723ad2b0..7c93c6d8290 100644
--- a/gcc/cp/call.c
+++ b/gcc/cp/call.c
@@ -4805,7 +4805,7 @@ build_conditional_expr_1 (location_t loc, tree arg1, tree arg2, tree arg3,
if (lvalue_p (arg1))
arg2 = arg1 = cp_stabilize_reference (arg1);
else
- arg2 = arg1 = save_expr (arg1);
+ arg2 = arg1 = cp_save_expr (arg1);
}
/* If something has already gone wrong, just pass that fact up the
@@ -6938,6 +6938,11 @@ convert_like_real (conversion *convs, tree expr, tree fn, int argnum,
&& DECL_INHERITED_CTOR (current_function_decl))
return expr;
+ if (TREE_CODE (expr) == TARGET_EXPR
+ && TARGET_EXPR_LIST_INIT_P (expr))
+ /* Copy-list-initialization doesn't actually involve a copy. */
+ return expr;
+
/* Fall through. */
case ck_base:
if (convs->kind == ck_base && !convs->need_temporary_p)
@@ -6964,10 +6969,6 @@ convert_like_real (conversion *convs, tree expr, tree fn, int argnum,
if (convs->rvaluedness_matches_p)
/* standard_conversion got LOOKUP_PREFER_RVALUE. */
flags |= LOOKUP_PREFER_RVALUE;
- if (TREE_CODE (expr) == TARGET_EXPR
- && TARGET_EXPR_LIST_INIT_P (expr))
- /* Copy-list-initialization doesn't actually involve a copy. */
- return expr;
expr = build_temp (expr, totype, flags, &diag_kind, complain);
if (diag_kind && complain)
{
@@ -8833,6 +8834,9 @@ build_special_member_call (tree instance, tree name, vec<tree, va_gc> **args,
{
if (is_dummy_object (instance))
return arg;
+ else if (TREE_CODE (arg) == TARGET_EXPR)
+ TARGET_EXPR_DIRECT_INIT_P (arg) = true;
+
if ((complain & tf_error)
&& (flags & LOOKUP_DELEGATING_CONS))
check_self_delegation (arg);
@@ -9280,8 +9284,14 @@ build_new_method_call_1 (tree instance, tree fns, vec<tree, va_gc> **args,
if (TREE_CODE (TREE_TYPE (fn)) != METHOD_TYPE
&& !is_dummy_object (instance)
&& TREE_SIDE_EFFECTS (instance))
- call = build2 (COMPOUND_EXPR, TREE_TYPE (call),
- instance, call);
+ {
+ /* But avoid the implicit lvalue-rvalue conversion when 'a'
+ is volatile. */
+ tree a = instance;
+ if (TREE_THIS_VOLATILE (a))
+ a = build_this (a);
+ call = build2 (COMPOUND_EXPR, TREE_TYPE (call), a, call);
+ }
else if (call != error_mark_node
&& DECL_DESTRUCTOR_P (cand->fn)
&& !VOID_TYPE_P (TREE_TYPE (call)))
diff --git a/gcc/cp/class.c b/gcc/cp/class.c
index e48a04ade7d..afa5c41bfff 100644
--- a/gcc/cp/class.c
+++ b/gcc/cp/class.c
@@ -4216,8 +4216,14 @@ build_base_field_1 (tree t, tree basetype, tree *&next_field)
DECL_ARTIFICIAL (decl) = 1;
DECL_IGNORED_P (decl) = 1;
DECL_FIELD_CONTEXT (decl) = t;
- DECL_SIZE (decl) = CLASSTYPE_SIZE (basetype);
- DECL_SIZE_UNIT (decl) = CLASSTYPE_SIZE_UNIT (basetype);
+ if (is_empty_class (basetype))
+ /* CLASSTYPE_SIZE is one byte, but the field needs to have size zero. */
+ DECL_SIZE (decl) = DECL_SIZE_UNIT (decl) = size_zero_node;
+ else
+ {
+ DECL_SIZE (decl) = CLASSTYPE_SIZE (basetype);
+ DECL_SIZE_UNIT (decl) = CLASSTYPE_SIZE_UNIT (basetype);
+ }
SET_DECL_ALIGN (decl, CLASSTYPE_ALIGN (basetype));
DECL_USER_ALIGN (decl) = CLASSTYPE_USER_ALIGN (basetype);
SET_DECL_MODE (decl, TYPE_MODE (basetype));
@@ -7122,7 +7128,8 @@ fixed_type_or_null (tree instance, int *nonnull, int *cdtorp)
case CALL_EXPR:
/* This is a call to a constructor, hence it's never zero. */
- if (TREE_HAS_CONSTRUCTOR (instance))
+ if (CALL_EXPR_FN (instance)
+ && TREE_HAS_CONSTRUCTOR (instance))
{
if (nonnull)
*nonnull = 1;
diff --git a/gcc/cp/constexpr.c b/gcc/cp/constexpr.c
index d89bdd5a6a4..47ff90cb055 100644
--- a/gcc/cp/constexpr.c
+++ b/gcc/cp/constexpr.c
@@ -1763,7 +1763,13 @@ reduced_constant_expression_p (tree t)
/* And we need to handle PTRMEM_CST wrapped in a CONSTRUCTOR. */
tree idx, val, field; unsigned HOST_WIDE_INT i;
if (CONSTRUCTOR_NO_IMPLICIT_ZERO (t))
- field = next_initializable_field (TYPE_FIELDS (TREE_TYPE (t)));
+ {
+ if (TREE_CODE (TREE_TYPE (t)) == VECTOR_TYPE)
+ /* An initialized vector would have a VECTOR_CST. */
+ return false;
+ else
+ field = next_initializable_field (TYPE_FIELDS (TREE_TYPE (t)));
+ }
else
field = NULL_TREE;
FOR_EACH_CONSTRUCTOR_ELT (CONSTRUCTOR_ELTS (t), i, idx, val)
@@ -4254,7 +4260,16 @@ cxx_eval_constant_expression (const constexpr_ctx *ctx, tree t,
r = cxx_eval_constant_expression (ctx, TREE_OPERAND (t, 0),
lval,
non_constant_p, overflow_p);
- *jump_target = t;
+ if (jump_target)
+ *jump_target = t;
+ else
+ {
+ /* Can happen with ({ return true; }) && false; passed to
+ maybe_constant_value. There is nothing to jump over in this
+ case, and the bug will be diagnosed later. */
+ gcc_assert (ctx->quiet);
+ *non_constant_p = true;
+ }
break;
case SAVE_EXPR:
@@ -4726,6 +4741,10 @@ cxx_eval_constant_expression (const constexpr_ctx *ctx, tree t,
jump_target);
break;
+ case USING_STMT:
+ r = void_node;
+ break;
+
default:
if (STATEMENT_CODE_P (TREE_CODE (t)))
{
@@ -5591,6 +5610,7 @@ potential_constant_expression_1 (tree t, bool want_rval, bool strict, bool now,
case OMP_PARALLEL:
case OMP_TASK:
case OMP_FOR:
+ case OMP_SIMD:
case OMP_DISTRIBUTE:
case OMP_TASKLOOP:
case OMP_TEAMS:
diff --git a/gcc/cp/constraint.cc b/gcc/cp/constraint.cc
index 622c9fe97a5..37eded17c94 100644
--- a/gcc/cp/constraint.cc
+++ b/gcc/cp/constraint.cc
@@ -1918,7 +1918,7 @@ tsubst_constraint_info (tree t, tree args,
tree
tsubst_constraint (tree t, tree args, tsubst_flags_t complain, tree in_decl)
{
- if (t == NULL_TREE)
+ if (t == NULL_TREE || t == error_mark_node)
return t;
switch (TREE_CODE (t))
{
diff --git a/gcc/cp/cp-objcp-common.c b/gcc/cp/cp-objcp-common.c
index a45dda4d012..5289a89e486 100644
--- a/gcc/cp/cp-objcp-common.c
+++ b/gcc/cp/cp-objcp-common.c
@@ -349,6 +349,11 @@ cxx_block_may_fallthru (const_tree stmt)
case THROW_EXPR:
return false;
+ case IF_STMT:
+ if (block_may_fallthru (THEN_CLAUSE (stmt)))
+ return true;
+ return block_may_fallthru (ELSE_CLAUSE (stmt));
+
case SWITCH_STMT:
return (!SWITCH_STMT_ALL_CASES_P (stmt)
|| !SWITCH_STMT_NO_BREAK_P (stmt)
diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h
index 9a9e9f0bbcb..9038d677b2d 100644
--- a/gcc/cp/cp-tree.h
+++ b/gcc/cp/cp-tree.h
@@ -6470,10 +6470,11 @@ extern tree make_auto (void);
extern tree make_decltype_auto (void);
extern tree make_template_placeholder (tree);
extern bool template_placeholder_p (tree);
-extern tree do_auto_deduction (tree, tree, tree);
extern tree do_auto_deduction (tree, tree, tree,
- tsubst_flags_t,
- auto_deduction_context,
+ tsubst_flags_t
+ = tf_warning_or_error,
+ auto_deduction_context
+ = adc_unspecified,
tree = NULL_TREE,
int = LOOKUP_NORMAL);
extern tree type_uses_auto (tree);
diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c
index 3ccea9e6a45..f91f311a117 100644
--- a/gcc/cp/decl.c
+++ b/gcc/cp/decl.c
@@ -4091,8 +4091,14 @@ cxx_init_decl_processing (void)
pop_namespace ();
flag_noexcept_type = (cxx_dialect >= cxx17);
+ /* There's no fixed location for <command-line>, the current
+ location is <builtins>, which is somewhat confusing. */
if (!flag_new_for_scope)
- warning (OPT_Wdeprecated, "%<-fno-for-scope%> is deprecated");
+ warning_at (UNKNOWN_LOCATION, OPT_Wdeprecated,
+ "%<-fno-for-scope%> is deprecated");
+ if (flag_friend_injection)
+ warning_at (UNKNOWN_LOCATION, OPT_Wdeprecated,
+ "%<-ffriend-injection%> is deprecated");
c_common_nodes_and_builtins ();
@@ -9834,7 +9840,14 @@ check_special_function_return_type (special_function_kind sfk,
error_at (smallest_type_quals_location (type_quals, locations),
"qualifiers are not allowed on declaration of "
"deduction guide");
- type = make_template_placeholder (CLASSTYPE_TI_TEMPLATE (optype));
+ if (TREE_CODE (optype) == TEMPLATE_TEMPLATE_PARM)
+ {
+ error ("template template parameter %qT in declaration of "
+ "deduction guide", optype);
+ type = error_mark_node;
+ }
+ else
+ type = make_template_placeholder (CLASSTYPE_TI_TEMPLATE (optype));
for (int i = 0; i < ds_last; ++i)
if (i != ds_explicit && locations[i])
error_at (locations[i],
@@ -12128,7 +12141,7 @@ grokdeclarator (const cp_declarator *declarator,
{
error ("%qE is neither function nor member function; "
"cannot be declared friend", unqualified_id);
- friendp = 0;
+ return error_mark_node;
}
decl = NULL_TREE;
}
diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c
index 2da6f9023c5..d2693ce458b 100644
--- a/gcc/cp/decl2.c
+++ b/gcc/cp/decl2.c
@@ -1825,6 +1825,11 @@ mark_vtable_entries (tree decl)
function, so we emit the thunks there instead. */
if (DECL_THUNK_P (fn))
use_thunk (fn, /*emit_p=*/0);
+ /* Set the location, as marking the function could cause
+ instantiation. We do not need to preserve the incoming
+ location, as we're called from c_parse_final_cleanups, which
+ takes care of that. */
+ input_location = DECL_SOURCE_LOCATION (fn);
mark_used (fn);
}
}
@@ -4727,6 +4732,9 @@ c_parse_final_cleanups (void)
reconsider = true;
keyed_classes->unordered_remove (i);
}
+ /* The input_location may have been changed during marking of
+ vtable entries. */
+ input_location = locus_at_end_of_parsing;
/* Write out needed type info variables. We have to be careful
looping through unemitted decls, because emit_tinfo_decl may
diff --git a/gcc/cp/error.c b/gcc/cp/error.c
index cb1dcf36201..75e853a1428 100644
--- a/gcc/cp/error.c
+++ b/gcc/cp/error.c
@@ -1472,7 +1472,7 @@ find_typenames_r (tree *tp, int *walk_subtrees, void *data)
/* Add the typename without any cv-qualifiers. */
mv = TYPE_MAIN_VARIANT (*tp);
- if (TREE_CODE (*tp) == TYPE_PACK_EXPANSION)
+ if (PACK_EXPANSION_P (*tp))
{
/* Don't mess with parameter packs since we don't remember
the pack expansion context for a particular typename. */
diff --git a/gcc/cp/except.c b/gcc/cp/except.c
index 669bf9f6eaf..0b46698b974 100644
--- a/gcc/cp/except.c
+++ b/gcc/cp/except.c
@@ -1217,6 +1217,10 @@ build_noexcept_spec (tree expr, int complain)
{
gcc_assert (processing_template_decl
|| TREE_CODE (expr) == DEFERRED_NOEXCEPT);
+ if (TREE_CODE (expr) != DEFERRED_NOEXCEPT)
+ /* Avoid problems with a function type built with a dependent typedef
+ being reused in another scope (c++/84045). */
+ expr = strip_typedefs_expr (expr);
return build_tree_list (expr, NULL_TREE);
}
}
diff --git a/gcc/cp/init.c b/gcc/cp/init.c
index 233f41c2592..d0d14abdc9f 100644
--- a/gcc/cp/init.c
+++ b/gcc/cp/init.c
@@ -3593,7 +3593,7 @@ build_new (vec<tree, va_gc> **placement, tree type, tree nelts,
d_init = (**init)[0];
d_init = resolve_nondeduced_context (d_init, complain);
}
- type = do_auto_deduction (type, d_init, auto_node);
+ type = do_auto_deduction (type, d_init, auto_node, complain);
}
}
diff --git a/gcc/cp/lambda.c b/gcc/cp/lambda.c
index 6b5bd800741..a0a80dfde5c 100644
--- a/gcc/cp/lambda.c
+++ b/gcc/cp/lambda.c
@@ -261,6 +261,7 @@ is_capture_proxy (tree decl)
return (VAR_P (decl)
&& DECL_HAS_VALUE_EXPR_P (decl)
&& !DECL_ANON_UNION_VAR_P (decl)
+ && !DECL_DECOMPOSITION_P (decl)
&& LAMBDA_FUNCTION_P (DECL_CONTEXT (decl)));
}
@@ -450,11 +451,12 @@ build_capture_proxy (tree member, tree init)
{
if (PACK_EXPANSION_P (init))
init = PACK_EXPANSION_PATTERN (init);
- if (INDIRECT_REF_P (init))
- init = TREE_OPERAND (init, 0);
- STRIP_NOPS (init);
}
+ if (INDIRECT_REF_P (init))
+ init = TREE_OPERAND (init, 0);
+ STRIP_NOPS (init);
+
gcc_assert (VAR_P (init) || TREE_CODE (init) == PARM_DECL);
while (is_normal_capture_proxy (init))
init = DECL_CAPTURED_VARIABLE (init);
diff --git a/gcc/cp/name-lookup.c b/gcc/cp/name-lookup.c
index e5a34003702..9117e0b30eb 100644
--- a/gcc/cp/name-lookup.c
+++ b/gcc/cp/name-lookup.c
@@ -3071,6 +3071,7 @@ do_pushdecl (tree decl, bool is_friend)
old = OVL_CHAIN (old);
check_template_shadow (decl);
+ bool visible_injection = false;
if (DECL_DECLARES_FUNCTION_P (decl))
{
@@ -3079,14 +3080,20 @@ do_pushdecl (tree decl, bool is_friend)
if (is_friend)
{
if (level->kind != sk_namespace)
- /* In a local class, a friend function declaration must
- find a matching decl in the innermost non-class scope.
- [class.friend/11] */
- error ("friend declaration %qD in local class without "
- "prior local declaration", decl);
- else if (!flag_friend_injection)
+ {
+ /* In a local class, a friend function declaration must
+ find a matching decl in the innermost non-class scope.
+ [class.friend/11] */
+ error ("friend declaration %qD in local class without "
+ "prior local declaration", decl);
+ /* Don't attempt to push it. */
+ return error_mark_node;
+ }
+ if (!flag_friend_injection)
/* Hide it from ordinary lookup. */
DECL_ANTICIPATED (decl) = DECL_HIDDEN_FRIEND_P (decl) = true;
+ else
+ visible_injection = true;
}
}
@@ -3138,6 +3145,9 @@ do_pushdecl (tree decl, bool is_friend)
}
else if (VAR_P (decl))
maybe_register_incomplete_var (decl);
+ else if (visible_injection)
+ warning (0, "injected friend %qD is visible"
+ " due to %<-ffriend-injection%>", decl);
if ((VAR_P (decl) || TREE_CODE (decl) == FUNCTION_DECL)
&& DECL_EXTERN_C_P (decl))
diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c
index 81c6f0128e6..4fa546a086c 100644
--- a/gcc/cp/parser.c
+++ b/gcc/cp/parser.c
@@ -9331,12 +9331,18 @@ cp_parser_binary_expression (cp_parser* parser, bool cast_p,
&& lookahead_prec <= current.prec
&& sp == stack)
{
- current.lhs
- = build_min (current.tree_type,
- TREE_CODE_CLASS (current.tree_type) == tcc_comparison
- ? boolean_type_node : TREE_TYPE (current.lhs),
- current.lhs.get_value (), rhs.get_value ());
- SET_EXPR_LOCATION (current.lhs, combined_loc);
+ if (current.lhs == error_mark_node || rhs == error_mark_node)
+ current.lhs = error_mark_node;
+ else
+ {
+ current.lhs
+ = build_min (current.tree_type,
+ TREE_CODE_CLASS (current.tree_type)
+ == tcc_comparison
+ ? boolean_type_node : TREE_TYPE (current.lhs),
+ current.lhs.get_value (), rhs.get_value ());
+ SET_EXPR_LOCATION (current.lhs, combined_loc);
+ }
}
else
{
@@ -19644,12 +19650,12 @@ cp_parser_init_declarator (cp_parser* parser,
member templates. The former involves deferring
parsing of the initializer until end of class as with default
arguments. So right here we only handle the latter. */
- if (!member_p && processing_template_decl)
+ if (!member_p && processing_template_decl && decl != error_mark_node)
start_lambda_scope (decl);
initializer = cp_parser_initializer (parser,
&is_direct_init,
&is_non_constant_init);
- if (!member_p && processing_template_decl)
+ if (!member_p && processing_template_decl && decl != error_mark_node)
finish_lambda_scope ();
if (initializer == error_mark_node)
cp_parser_skip_to_end_of_statement (parser);
@@ -21919,7 +21925,7 @@ cp_parser_braced_list (cp_parser* parser, bool* non_constant_p)
/* Consume the `{' token. */
matching_braces braces;
- braces.consume_open (parser);
+ braces.require_open (parser);
/* Create a CONSTRUCTOR to represent the braced-initializer. */
initializer = make_node (CONSTRUCTOR);
/* If it's not a `}', then there is a non-trivial initializer. */
diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
index 222084df4cb..85d1adbbe3c 100644
--- a/gcc/cp/pt.c
+++ b/gcc/cp/pt.c
@@ -6143,7 +6143,12 @@ convert_nontype_argument_function (tree type, tree expr,
accept:
if (TREE_CODE (type) == REFERENCE_TYPE)
- fn = build_address (fn);
+ {
+ if (REFERENCE_REF_P (fn))
+ fn = TREE_OPERAND (fn, 0);
+ else
+ fn = build_address (fn);
+ }
if (!same_type_ignoring_top_level_qualifiers_p (type, TREE_TYPE (fn)))
fn = build_nop (type, fn);
@@ -11521,8 +11526,9 @@ tsubst_pack_expansion (tree t, tree args, tsubst_flags_t complain,
context. */
tree gen = TREE_PURPOSE (elt);
tree inst = TREE_VALUE (elt);
- if (DECL_PACK_P (inst))
- inst = retrieve_local_specialization (inst);
+ if (DECL_P (inst))
+ if (tree local = retrieve_local_specialization (inst))
+ inst = local;
/* else inst is already a full instantiation of the pack. */
register_local_specialization (inst, gen);
}
@@ -15785,7 +15791,7 @@ tsubst_omp_for_iterator (tree t, int i, tree declv, tree orig_declv,
tree auto_node = type_uses_auto (TREE_TYPE (decl));
if (auto_node && init)
TREE_TYPE (decl)
- = do_auto_deduction (TREE_TYPE (decl), init, auto_node);
+ = do_auto_deduction (TREE_TYPE (decl), init, auto_node, complain);
gcc_assert (!type_dependent_expression_p (decl));
@@ -17064,6 +17070,10 @@ tsubst_lambda_expr (tree t, tree args, tsubst_flags_t complain, tree in_decl)
bool nested = cfun;
if (nested)
push_function_context ();
+ else
+ /* Still increment function_depth so that we don't GC in the
+ middle of an expression. */
+ ++function_depth;
local_specialization_stack s (lss_copy);
@@ -17078,6 +17088,8 @@ tsubst_lambda_expr (tree t, tree args, tsubst_flags_t complain, tree in_decl)
if (nested)
pop_function_context ();
+ else
+ --function_depth;
/* The capture list was built up in reverse order; fix that now. */
LAMBDA_EXPR_CAPTURE_LIST (r)
@@ -23546,6 +23558,7 @@ static tree
tsubst_initializer_list (tree t, tree argvec)
{
tree inits = NULL_TREE;
+ tree target_ctor = error_mark_node;
for (; t; t = TREE_CHAIN (t))
{
@@ -23662,6 +23675,28 @@ tsubst_initializer_list (tree t, tree argvec)
in_base_initializer = 0;
}
+ if (target_ctor != error_mark_node
+ && init != error_mark_node)
+ {
+ error ("mem-initializer for %qD follows constructor delegation",
+ decl);
+ return inits;
+ }
+ /* Look for a target constructor. */
+ if (init != error_mark_node
+ && decl && CLASS_TYPE_P (decl)
+ && same_type_p (decl, current_class_type))
+ {
+ maybe_warn_cpp0x (CPP0X_DELEGATING_CTORS);
+ if (inits)
+ {
+ error ("constructor delegation follows mem-initializer for %qD",
+ TREE_PURPOSE (inits));
+ continue;
+ }
+ target_ctor = init;
+ }
+
if (decl)
{
init = build_tree_list (decl, init);
@@ -25453,7 +25488,8 @@ dguide_name (tree tmpl)
bool
dguide_name_p (tree name)
{
- return (TREE_TYPE (name)
+ return (TREE_CODE (name) == IDENTIFIER_NODE
+ && TREE_TYPE (name)
&& !strncmp (IDENTIFIER_POINTER (name), dguide_base,
strlen (dguide_base)));
}
@@ -25941,17 +25977,6 @@ do_class_deduction (tree ptype, tree tmpl, tree init, int flags,
}
/* Replace occurrences of 'auto' in TYPE with the appropriate type deduced
- from INIT. AUTO_NODE is the TEMPLATE_TYPE_PARM used for 'auto' in TYPE. */
-
-tree
-do_auto_deduction (tree type, tree init, tree auto_node)
-{
- return do_auto_deduction (type, init, auto_node,
- tf_warning_or_error,
- adc_unspecified);
-}
-
-/* Replace occurrences of 'auto' in TYPE with the appropriate type deduced
from INIT. AUTO_NODE is the TEMPLATE_TYPE_PARM used for 'auto' in TYPE.
The CONTEXT determines the context in which auto deduction is performed
and is used to control error diagnostics. FLAGS are the LOOKUP_* flags.
@@ -25986,7 +26011,7 @@ do_auto_deduction (tree type, tree init, tree auto_node,
/* C++17 class template argument deduction. */
return do_class_deduction (type, tmpl, init, flags, complain);
- if (TREE_TYPE (init) == NULL_TREE)
+ if (init == NULL_TREE || TREE_TYPE (init) == NULL_TREE)
/* Nothing we can do with this, even in deduction context. */
return type;
diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c
index f0cee68e46f..35569d0cb0d 100644
--- a/gcc/cp/semantics.c
+++ b/gcc/cp/semantics.c
@@ -731,6 +731,7 @@ finish_if_stmt_cond (tree cond, tree if_stmt)
{
cond = maybe_convert_cond (cond);
if (IF_STMT_CONSTEXPR_P (if_stmt)
+ && !type_dependent_expression_p (cond)
&& require_constant_expression (cond)
&& !value_dependent_expression_p (cond))
{
diff --git a/gcc/cp/tree.c b/gcc/cp/tree.c
index a53bddf2ef0..39c1ef28b2d 100644
--- a/gcc/cp/tree.c
+++ b/gcc/cp/tree.c
@@ -2896,6 +2896,8 @@ bot_manip (tree* tp, int* walk_subtrees, void* data)
{
u = build_cplus_new (TREE_TYPE (t), TREE_OPERAND (t, 1),
tf_warning_or_error);
+ if (u == error_mark_node)
+ return u;
if (AGGR_INIT_ZERO_FIRST (TREE_OPERAND (t, 1)))
AGGR_INIT_ZERO_FIRST (TREE_OPERAND (u, 1)) = true;
}
@@ -2913,6 +2915,8 @@ bot_manip (tree* tp, int* walk_subtrees, void* data)
(splay_tree_value) TREE_OPERAND (u, 0));
TREE_OPERAND (u, 1) = break_out_target_exprs (TREE_OPERAND (u, 1));
+ if (TREE_OPERAND (u, 1) == error_mark_node)
+ return error_mark_node;
/* Replace the old expression with the new version. */
*tp = u;
@@ -3025,7 +3029,8 @@ break_out_target_exprs (tree t)
target_remap = splay_tree_new (splay_tree_compare_pointers,
/*splay_tree_delete_key_fn=*/NULL,
/*splay_tree_delete_value_fn=*/NULL);
- cp_walk_tree (&t, bot_manip, target_remap, NULL);
+ if (cp_walk_tree (&t, bot_manip, target_remap, NULL) == error_mark_node)
+ t = error_mark_node;
cp_walk_tree (&t, bot_replace, target_remap, NULL);
if (!--target_remap_count)
diff --git a/gcc/cp/typeck.c b/gcc/cp/typeck.c
index dfcf71689c6..0e7c63dd197 100644
--- a/gcc/cp/typeck.c
+++ b/gcc/cp/typeck.c
@@ -9232,7 +9232,8 @@ check_return_expr (tree retval, bool *no_warning)
/* Effective C++ rule 15. See also start_function. */
if (warn_ecpp
- && DECL_NAME (current_function_decl) == assign_op_identifier)
+ && DECL_NAME (current_function_decl) == assign_op_identifier
+ && !type_dependent_expression_p (retval))
{
bool warn = true;
diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi
index 4f79a92fc1d..1379502ebbb 100644
--- a/gcc/doc/extend.texi
+++ b/gcc/doc/extend.texi
@@ -11042,6 +11042,7 @@ the built-in function returns -1.
@findex __builtin_alloca_with_align
@findex __builtin_alloca_with_align_and_max
@findex __builtin_call_with_static_chain
+@findex __builtin_extend_pointer
@findex __builtin_fpclassify
@findex __builtin_isfinite
@findex __builtin_isnormal
@@ -12419,6 +12420,15 @@ Similar to @code{__builtin_bswap32}, except the argument and return types
are 64 bit.
@end deftypefn
+@deftypefn {Built-in Function} Pmode __builtin_extend_pointer (void * x)
+On targets where the user visible pointer size is smaller than the size
+of an actual hardware address this function returns the extended user
+pointer. Targets where this is true included ILP32 mode on x86_64 or
+Aarch64. This function is mainly useful when writing inline assembly
+code.
+@var{addr}
+@end deftypefn
+
@node Target Builtins
@section Built-in Functions Specific to Particular Target Machines
@@ -12461,6 +12471,7 @@ instructions, but allow the compiler to schedule those calls.
* TILEPro Built-in Functions::
* x86 Built-in Functions::
* x86 transactional memory intrinsics::
+* x86 control-flow protection intrinsics::
@end menu
@node AArch64 Built-in Functions
@@ -19054,14 +19065,12 @@ vector unsigned short vec_vctzh (vector unsigned short);
vector int vec_vctzw (vector int);
vector unsigned int vec_vctzw (vector int);
-long long vec_vextract4b (const vector signed char, const int);
-long long vec_vextract4b (const vector unsigned char, const int);
+vector unsigned long long vec_extract4b (vector unsigned char, const int);
-vector signed char vec_insert4b (vector int, vector signed char, const int);
+vector unsigned char vec_insert4b (vector signed int, vector unsigned char,
+ const int);
vector unsigned char vec_insert4b (vector unsigned int, vector unsigned char,
const int);
-vector signed char vec_insert4b (long long, vector signed char, const int);
-vector unsigned char vec_insert4b (long long, vector unsigned char, const int);
vector unsigned int vec_parity_lsbb (vector signed int);
vector unsigned int vec_parity_lsbb (vector unsigned int);
@@ -21772,13 +21781,17 @@ void __builtin_ia32_wrpkru (unsigned int)
unsigned int __builtin_ia32_rdpkru ()
@end smallexample
-The following built-in functions are available when @option{-mcet} is used.
-They are used to support Intel Control-flow Enforcment Technology (CET).
-Each built-in function generates the machine instruction that is part of the
-function's name.
+The following built-in functions are available when @option{-mcet} or
+@option{-mshstk} option is used. They support shadow stack
+machine instructions from Intel Control-flow Enforcement Technology (CET).
+Each built-in function generates the machine instruction that is part
+of the function's name. These are the internal low-level functions.
+Normally the functions in @ref{x86 control-flow protection intrinsics}
+should be used instead.
+
@smallexample
-unsigned int __builtin_ia32_rdsspd (unsigned int)
-unsigned long long __builtin_ia32_rdsspq (unsigned long long)
+unsigned int __builtin_ia32_rdsspd (void)
+unsigned long long __builtin_ia32_rdsspq (void)
void __builtin_ia32_incsspd (unsigned int)
void __builtin_ia32_incsspq (unsigned long long)
void __builtin_ia32_saveprevssp(void);
@@ -21885,6 +21898,51 @@ else
Note that, in most cases, the transactional and non-transactional code
must synchronize together to ensure consistency.
+@node x86 control-flow protection intrinsics
+@subsection x86 Control-Flow Protection Intrinsics
+
+@deftypefn {CET Function} {ret_type} _get_ssp (void)
+Get the current value of shadow stack pointer if shadow stack support
+from Intel CET is enabled in the hardware or @code{0} otherwise.
+The @code{ret_type} is @code{unsigned long long} for 64-bit targets
+and @code{unsigned int} for 32-bit targets.
+@end deftypefn
+
+@deftypefn {CET Function} void _inc_ssp (unsigned int)
+Increment the current shadow stack pointer by the size specified by the
+function argument. The argument is masked to a byte value for security
+reasons, so to increment by more than 255 bytes you must call the function
+multiple times.
+@end deftypefn
+
+The shadow stack unwind code looks like:
+
+@smallexample
+#include <immintrin.h>
+
+/* Unwind the shadow stack for EH. */
+#define _Unwind_Frames_Extra(x) \
+ do \
+ @{ \
+ _Unwind_Word ssp = _get_ssp (); \
+ if (ssp != 0) \
+ @{ \
+ _Unwind_Word tmp = (x); \
+ while (tmp > 255) \
+ @{ \
+ _inc_ssp (tmp); \
+ tmp -= 255; \
+ @} \
+ _inc_ssp (tmp); \
+ @} \
+ @} \
+ while (0)
+@end smallexample
+
+@noindent
+This code runs unconditionally on all 64-bit processors. For 32-bit
+processors the code runs on those that support multi-byte NOP instructions.
+
@node Target Format Checks
@section Format Checks Specific to Particular Target Machines
@@ -23831,11 +23889,23 @@ deprecated. @xref{Deprecated Features}.
@table @code
@item For scope
-If a variable is declared at for scope, it used to remain in scope until
-the end of the scope that contained the for statement (rather than just
-within the for scope). G++ retains this, but issues a warning, if such a
+If a variable is declared at for scope, it used to remain in scope
+until the end of the scope that contained the for statement (rather
+than just within the for scope). The deprecated
+@option{-fno-for-scope} option enables this non-standard behavior.
+Without the option, G++ retains this, but issues a warning, if such a
variable is accessed outside the for scope.
+The behavior is deprecated, only available with @option{-std=c++98}
+@option{-std=gnu++98} languages and you must use the
+@option{-fpermissive} option to enable it. The behavior will be
+removed.
+
+@item Friend Injection
+The @option{-ffriend-injection} option makes injected friends visible
+to regular name lookup, unlike standard C++. This option is
+deprecated and will be removed.
+
@item Implicit C language
Old C system header files did not contain an @code{extern "C" @{@dots{}@}}
scope to set the language. On such systems, all header files are
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 48194c825f3..e70e2bad4d8 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -2451,8 +2451,7 @@ However, in ISO C++ a friend function that is not declared
in an enclosing scope can only be found using argument dependent
lookup. GCC defaults to the standard behavior.
-This option is for compatibility, and may be removed in a future
-release of G++.
+This option is deprecated and will be removed.
@item -fno-elide-constructors
@opindex fno-elide-constructors
@@ -4184,7 +4183,7 @@ warning, though it may not be sufficient to avoid the overflow.
@smallexample
void f (int a, int b)
@{
- char buf [12];
+ char buf [13];
sprintf (buf, "a = %i, b = %i\n", a, b);
@}
@end smallexample
@@ -8620,7 +8619,7 @@ This flag is enabled by default at @option{-O2} and higher and depends on
@item -fisolate-erroneous-paths-attribute
@opindex fisolate-erroneous-paths-attribute
-Detect paths that trigger erroneous or undefined behavior due a null value
+Detect paths that trigger erroneous or undefined behavior due to a null value
being used in a way forbidden by a @code{returns_nonnull} or @code{nonnull}
attribute. Isolate those paths from the main control flow and turn the
statement with erroneous or undefined behavior into a trap. This is not
@@ -9160,6 +9159,7 @@ Some assemblers only support this flag when @var{n} is a power of two;
in that case, it is rounded up.
If @var{n} is not specified or is zero, use a machine-dependent default.
+The maximum allowed @var{n} option value is 65536.
Enabled at levels @option{-O2}, @option{-O3}.
@@ -9185,6 +9185,7 @@ are greater than this value, then their values are used instead.
If @var{n} is not specified or is zero, use a machine-dependent default
which is very likely to be @samp{1}, meaning no alignment.
+The maximum allowed @var{n} option value is 65536.
Enabled at levels @option{-O2}, @option{-O3}.
@@ -9198,6 +9199,7 @@ operations.
@option{-fno-align-loops} and @option{-falign-loops=1} are
equivalent and mean that loops are not aligned.
+The maximum allowed @var{n} option value is 65536.
If @var{n} is not specified or is zero, use a machine-dependent default.
@@ -9215,6 +9217,7 @@ need be executed.
equivalent and mean that loops are not aligned.
If @var{n} is not specified or is zero, use a machine-dependent default.
+The maximum allowed @var{n} option value is 65536.
Enabled at levels @option{-O2}, @option{-O3}.
@@ -23371,7 +23374,9 @@ little-endian platform.
@opindex maltivec=be
Generate AltiVec instructions using big-endian element order,
regardless of whether the target is big- or little-endian. This is
-the default when targeting a big-endian platform.
+the default when targeting a big-endian platform. Using this option
+is currently deprecated. Support for this feature will be removed in
+GCC 9.
The element order is used to interpret element numbers in AltiVec
intrinsics such as @code{vec_splat}, @code{vec_extract}, and
@@ -27832,6 +27837,11 @@ Note that @option{-mcmodel=large} is incompatible with
@option{-mindirect-branch=thunk-extern} since the thunk function may
not be reachable in large code model.
+Note that @option{-mindirect-branch=thunk-extern} is incompatible with
+@option{-fcf-protection=branch} and @option{-fcheck-pointer-bounds}
+since the external thunk can not be modified to disable control-flow
+check.
+
@item -mfunction-return=@var{choice}
@opindex -mfunction-return
Convert function return with @var{choice}. The default is @samp{keep},
diff --git a/gcc/doc/rtl.texi b/gcc/doc/rtl.texi
index 43d5405ddb4..b5410f9689d 100644
--- a/gcc/doc/rtl.texi
+++ b/gcc/doc/rtl.texi
@@ -1303,10 +1303,11 @@ point values. The floating point values are in @code{QFmode},
@findex CDImode
@findex CTImode
@findex COImode
-@item CQImode, CHImode, CSImode, CDImode, CTImode, COImode
+@findex CPSImode
+@item CQImode, CHImode, CSImode, CDImode, CTImode, COImode, CPSImode
These modes stand for a complex number represented as a pair of integer
values. The integer values are in @code{QImode}, @code{HImode},
-@code{SImode}, @code{DImode}, @code{TImode}, and @code{OImode},
+@code{SImode}, @code{DImode}, @code{TImode}, @code{OImode}, and @code{PSImode},
respectively.
@findex BND32mode
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index 4e2bf3b4c88..5e88c7bacf0 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -23110,7 +23110,7 @@ gen_subprogram_die (tree decl, dw_die_ref context_die)
rtx arg, next_arg;
for (arg = (ca_loc->call_arg_loc_note != NULL_RTX
- ? NOTE_VAR_LOCATION (ca_loc->call_arg_loc_note)
+ ? XEXP (ca_loc->call_arg_loc_note, 0)
: NULL_RTX);
arg; arg = next_arg)
{
@@ -26975,6 +26975,17 @@ dwarf2out_var_location (rtx_insn *loc_note)
call_site_count++;
if (SIBLING_CALL_P (loc_note))
tail_call_site_count++;
+ if (find_reg_note (loc_note, REG_CALL_ARG_LOCATION, NULL_RTX))
+ {
+ call_insn = loc_note;
+ loc_note = NULL;
+ var_loc_p = false;
+
+ next_real = dwarf2out_next_real_insn (call_insn);
+ next_note = NULL;
+ cached_next_real_insn = NULL;
+ goto create_label;
+ }
if (optimize == 0 && !flag_var_tracking)
{
/* When the var-tracking pass is not running, there is no note
@@ -27034,8 +27045,7 @@ dwarf2out_var_location (rtx_insn *loc_note)
|| ! NOTE_P (next_note)
|| (NOTE_KIND (next_note) != NOTE_INSN_VAR_LOCATION
&& NOTE_KIND (next_note) != NOTE_INSN_BEGIN_STMT
- && NOTE_KIND (next_note) != NOTE_INSN_INLINE_ENTRY
- && NOTE_KIND (next_note) != NOTE_INSN_CALL_ARG_LOCATION))
+ && NOTE_KIND (next_note) != NOTE_INSN_INLINE_ENTRY))
next_note = NULL;
if (! next_real)
@@ -27145,10 +27155,10 @@ create_label:
{
struct call_arg_loc_node *ca_loc
= ggc_cleared_alloc<call_arg_loc_node> ();
- rtx_insn *prev
- = loc_note != NULL_RTX ? prev_real_insn (loc_note) : call_insn;
+ rtx_insn *prev = call_insn;
- ca_loc->call_arg_loc_note = loc_note;
+ ca_loc->call_arg_loc_note
+ = find_reg_note (call_insn, REG_CALL_ARG_LOCATION, NULL_RTX);
ca_loc->next = NULL;
ca_loc->label = last_label;
gcc_assert (prev
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c
index a722985b5d9..dd8fec3f349 100644
--- a/gcc/emit-rtl.c
+++ b/gcc/emit-rtl.c
@@ -3866,15 +3866,12 @@ try_split (rtx pat, rtx_insn *trial, int last)
for (insn = insn_last; insn ; insn = PREV_INSN (insn))
if (CALL_P (insn))
{
- rtx_insn *next;
- rtx *p;
-
gcc_assert (call_insn == NULL_RTX);
call_insn = insn;
/* Add the old CALL_INSN_FUNCTION_USAGE to whatever the
target may have explicitly specified. */
- p = &CALL_INSN_FUNCTION_USAGE (insn);
+ rtx *p = &CALL_INSN_FUNCTION_USAGE (insn);
while (*p)
p = &XEXP (*p, 1);
*p = CALL_INSN_FUNCTION_USAGE (trial);
@@ -3882,21 +3879,6 @@ try_split (rtx pat, rtx_insn *trial, int last)
/* If the old call was a sibling call, the new one must
be too. */
SIBLING_CALL_P (insn) = SIBLING_CALL_P (trial);
-
- /* If the new call is the last instruction in the sequence,
- it will effectively replace the old call in-situ. Otherwise
- we must move any following NOTE_INSN_CALL_ARG_LOCATION note
- so that it comes immediately after the new call. */
- if (NEXT_INSN (insn))
- for (next = NEXT_INSN (trial);
- next && NOTE_P (next);
- next = NEXT_INSN (next))
- if (NOTE_KIND (next) == NOTE_INSN_CALL_ARG_LOCATION)
- {
- remove_insn (next);
- add_insn_after (next, insn, NULL);
- break;
- }
}
}
@@ -3913,6 +3895,7 @@ try_split (rtx pat, rtx_insn *trial, int last)
case REG_SETJMP:
case REG_TM:
case REG_CALL_NOCF_CHECK:
+ case REG_CALL_ARG_LOCATION:
for (insn = insn_last; insn != NULL_RTX; insn = PREV_INSN (insn))
{
if (CALL_P (insn))
@@ -4777,7 +4760,6 @@ note_outside_basic_block_p (enum insn_note subtype, bool on_bb_boundary_p)
inside basic blocks. If the caller is emitting on the basic block
boundary, do not set BLOCK_FOR_INSN on the new note. */
case NOTE_INSN_VAR_LOCATION:
- case NOTE_INSN_CALL_ARG_LOCATION:
case NOTE_INSN_EH_REGION_BEG:
case NOTE_INSN_EH_REGION_END:
return on_bb_boundary_p;
diff --git a/gcc/except.c b/gcc/except.c
index bd587de1836..04d4764ee17 100644
--- a/gcc/except.c
+++ b/gcc/except.c
@@ -2465,14 +2465,6 @@ add_call_site (rtx landing_pad, int action, int section)
static rtx_note *
emit_note_eh_region_end (rtx_insn *insn)
{
- rtx_insn *next = NEXT_INSN (insn);
-
- /* Make sure we do not split a call and its corresponding
- CALL_ARG_LOCATION note. */
- if (next && NOTE_P (next)
- && NOTE_KIND (next) == NOTE_INSN_CALL_ARG_LOCATION)
- insn = next;
-
return emit_note_after (NOTE_INSN_EH_REGION_END, insn);
}
diff --git a/gcc/final.c b/gcc/final.c
index cbebbfdf5b0..d2c3cd8a06e 100644
--- a/gcc/final.c
+++ b/gcc/final.c
@@ -911,7 +911,7 @@ shorten_branches (rtx_insn *first)
char *varying_length;
rtx body;
int uid;
- rtx align_tab[MAX_CODE_ALIGN];
+ rtx align_tab[MAX_CODE_ALIGN + 1];
/* Compute maximum UID and allocate label_align / uid_shuid. */
max_uid = get_max_uid ();
@@ -1016,7 +1016,7 @@ shorten_branches (rtx_insn *first)
alignment of n. */
uid_align = XCNEWVEC (rtx, max_uid);
- for (i = MAX_CODE_ALIGN; --i >= 0;)
+ for (i = MAX_CODE_ALIGN + 1; --i >= 0;)
align_tab[i] = NULL_RTX;
seq = get_last_insn ();
for (; seq; seq = PREV_INSN (seq))
@@ -2467,7 +2467,6 @@ final_scan_insn_1 (rtx_insn *insn, FILE *file, int optimize_p ATTRIBUTE_UNUSED,
break;
case NOTE_INSN_VAR_LOCATION:
- case NOTE_INSN_CALL_ARG_LOCATION:
if (!DECL_IGNORED_P (current_function_decl))
{
debug_hooks->var_location (insn);
@@ -4846,15 +4845,21 @@ rest_of_clean_state (void)
SET_NEXT_INSN (insn) = NULL;
SET_PREV_INSN (insn) = NULL;
+ if (CALL_P (insn))
+ {
+ rtx note = find_reg_note (insn, REG_CALL_ARG_LOCATION, NULL_RTX);
+ if (note)
+ remove_note (insn, note);
+ }
+
if (final_output
- && (!NOTE_P (insn) ||
- (NOTE_KIND (insn) != NOTE_INSN_VAR_LOCATION
- && NOTE_KIND (insn) != NOTE_INSN_BEGIN_STMT
- && NOTE_KIND (insn) != NOTE_INSN_INLINE_ENTRY
- && NOTE_KIND (insn) != NOTE_INSN_CALL_ARG_LOCATION
- && NOTE_KIND (insn) != NOTE_INSN_BLOCK_BEG
- && NOTE_KIND (insn) != NOTE_INSN_BLOCK_END
- && NOTE_KIND (insn) != NOTE_INSN_DELETED_DEBUG_LABEL)))
+ && (!NOTE_P (insn)
+ || (NOTE_KIND (insn) != NOTE_INSN_VAR_LOCATION
+ && NOTE_KIND (insn) != NOTE_INSN_BEGIN_STMT
+ && NOTE_KIND (insn) != NOTE_INSN_INLINE_ENTRY
+ && NOTE_KIND (insn) != NOTE_INSN_BLOCK_BEG
+ && NOTE_KIND (insn) != NOTE_INSN_BLOCK_END
+ && NOTE_KIND (insn) != NOTE_INSN_DELETED_DEBUG_LABEL)))
print_rtl_single (final_output, insn);
}
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 01e2a906443..9be8a0dfe09 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,166 @@
+2018-02-23 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ * intrinsic.texi: Arguments to MATMUL cannot both be rank one.
+
+2018-02-23 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/84511
+ * trans-io.c (transfer_expr): Deal with C_LOC in transfer statement.
+
+2018-02-23 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/84346
+ * interface.c (compare_actual_formal): Issue error if keyword is
+ used in a statement function.
+
+2018-02-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/84506
+ * trans-io.c (set_parameter_value_inquire): Adjust range check of
+ negative unit values for kind=8 units to the kind=4 negative limit.
+
+2018-02-23 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/83149
+ * trans-types.c (gfc_sym_type): Test sym->ns->proc_name before
+ accessing its components.
+
+2018-02-23 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/83149
+ * trans-decl.c (gfc_finish_var_decl): Test sym->ns->proc_name
+ before accessing its components.
+
+2018-02-23 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/83148
+ * trans-const.c : Clean up some whitespace issues.
+ * trans-expr.c (gfc_conv_initializer): If an iso_c_binding
+ derived type has a kind value of zero, set it to the default
+ integer kind.
+
+2018-02-23 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR fortran/84519
+ * trans-decl.c (gfc_build_builtin_function_decls): Add bool
+ argument to stop and error stop decls.
+ * trans-stmt.c (gfc_trans_stop): Add false value to argument
+ lists.
+
+2018-02-22 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR 78534
+ PR 84509
+ * trans-decl.c (gfc_build_builtin_function_decls): Pass
+ gfc_int8_type node to pause_numeric, size_type_node to
+ pause_string.
+ * trans-stmt.c (gfc_trans_pause): Likewise.
+
+2018-02-22 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * gfortran.texi: Update Coarray API description.
+ * trans-decl.c (gfc_build_builtin_function_decls): Use size_t for
+ character lengths, int for exit codes.
+ (generate_coarray_sym_init): Use size_t for character length.
+ * trans-intrinsic.c (conv_co_collective): Likewise.
+ * trans-stmt.c (gfc_trans_lock_unlock): Likewise.
+ (gfc_trans_event_post_wait): Likewise.
+ (gfc_trans_sync): Likewise.
+ (gfc_trans_stop): Use size_t for character lengths, int for exit
+ codes.
+
+2018-02-20 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/48890
+ PR fortran/83823
+ * primary.c (gfc_convert_to_structure_constructor):
+ For a constant string constructor, make sure the length
+ is correct.
+
+2018-02-19 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/83344
+ PR fortran/83975
+ * resolve.c (resolve_assoc_var): Rearrange the logic for the
+ determination of the character length of associate names. If
+ the associate name is missing a length expression or the length
+ expression is not a constant and the target is not a variable,
+ make the associate name allocatable and deferred length.
+ * trans-decl.c (gfc_get_symbol_decl): Null the character length
+ backend_decl for deferred length associate names that are not
+ variables. Set 'length' to gfc_index_zero_node for character
+ associate names, whose character length is a PARM_DECL.
+
+2018-02-19 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/35339
+ * frontend-passes.c (traverse_io_block): Remove workaround for
+ PR 80945.
+
+2018-02-19 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ * gfortran.texi: Document additional src/dst_type. Fix some typos.
+ * trans-decl.c (gfc_build_builtin_function_decls): Declare the new
+ argument of _caf_*_by_ref () with * e { get, send, sendget }.
+ * trans-intrinsic.c (gfc_conv_intrinsic_caf_get): Add the type of the
+ data referenced when generating a call to caf_get_by_ref ().
+ (conv_caf_send): Same but for caf_send_by_ref () and
+ caf_sendget_by_ref ().
+
+2018-02-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/84389
+ * io.c (check_format): Allow FMT_COLON.
+
+2018-02-18 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/80945
+ * trans-array.c (gfc_conv_expr_descriptor): Set parmtype from
+ the typenode in the case of deferred length characters.
+
+2018-02-17 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/84270
+ * frontend-passes (scalarized_expr): If the expression
+ is an assumed size array, leave in the last reference
+ and pass AR_SECTION instead of AR_FULL to gfc_resolve
+ in order to avoid an error.
+
+2018-02-17 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/84115
+ * resolve.c (resolve_assoc_var): If a non-constant target expr.
+ has no string length expression, make the associate variable
+ into a deferred length, allocatable symbol.
+ * trans-decl.c (gfc_is_reallocatable_lhs): Add and use a ptr to
+ the symbol.
+ * trans-stmt.c (trans_associate_var): Null and free scalar
+ associate names that are allocatable. After assignment, remove
+ the allocatable attribute to prevent reallocation.
+
+2018-02-16 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/84418
+ * trans-openmp.c (gfc_trans_omp_clauses): For OMP_CLAUSE_LINEAR_REF
+ kind set OMP_CLAUSE_LINEAR_STEP to TYPE_SIZE_UNIT times last_step.
+
+2018-02-16 Dominique d'Humieres <dominiq@gcc.gnu.org>
+
+ PR fortran/84354
+ * decl.c (gfc_get_pdt_instance): Replace '%qs' with %qs.
+
+2018-02-15 Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/84409
+ * interface.c (check_dtio_arg_TKR_intent): Add a check for character
+ length.
+
+2018-02-14 Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/84385
+ * match.c (gfc_match_select_type): Fix check for selector in
+ SELECT TYPE statement.
+
2018-02-13 Janus Weil <janus@gcc.gnu.org>
PR fortran/84313
@@ -373,7 +536,7 @@
* trans-io.c (get_dtio_proc): Likewise. (transfer_expr): Fix
whitespace.
-2018-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
+2018-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/83744
* dump-parse-tree.c (get_c_type_name): Remove extra line.
@@ -397,7 +560,7 @@
* trans-array.c (is_pointer_array): Remove unconditional return
of false for -fopenmp.
-2018-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
+2018-01-13 Thomas Koenig <tkoenig@gcc.gnu.org>
<emsr@gcc.gnu.org>
PR fortran/83803
diff --git a/gcc/fortran/decl.c b/gcc/fortran/decl.c
index 307caa215d6..e275be3a950 100644
--- a/gcc/fortran/decl.c
+++ b/gcc/fortran/decl.c
@@ -3302,7 +3302,7 @@ gfc_get_pdt_instance (gfc_actual_arglist *param_list, gfc_symbol **sym,
kind_expr = gfc_copy_expr (c1->initializer);
else if (!(actual_param && param->attr.pdt_len))
{
- gfc_error ("The derived parameter '%qs' at %C does not "
+ gfc_error ("The derived parameter %qs at %C does not "
"have a default value", param->name);
goto error_return;
}
@@ -3362,14 +3362,14 @@ gfc_get_pdt_instance (gfc_actual_arglist *param_list, gfc_symbol **sym,
&& (actual_param->spec_type == SPEC_ASSUMED
|| actual_param->spec_type == SPEC_DEFERRED))
{
- gfc_error ("The KIND parameter '%qs' at %C cannot either be "
+ gfc_error ("The KIND parameter %qs at %C cannot either be "
"ASSUMED or DEFERRED", param->name);
goto error_return;
}
if (!kind_expr || !gfc_is_constant_expr (kind_expr))
{
- gfc_error ("The value for the KIND parameter '%qs' at %C does not "
+ gfc_error ("The value for the KIND parameter %qs at %C does not "
"reduce to a constant expression", param->name);
goto error_return;
}
diff --git a/gcc/fortran/frontend-passes.c b/gcc/fortran/frontend-passes.c
index 11a5b9b779c..1ffd27d686a 100644
--- a/gcc/fortran/frontend-passes.c
+++ b/gcc/fortran/frontend-passes.c
@@ -1162,14 +1162,7 @@ traverse_io_block (gfc_code *code, bool *has_reached, gfc_code *prev)
gcc_assert (curr->op == EXEC_TRANSFER);
- /* FIXME: Workaround for PR 80945 - array slices with deferred character
- lenghts do not work. Remove this section when the PR is fixed. */
e = curr->expr1;
- if (e->expr_type == EXPR_VARIABLE && e->ts.type == BT_CHARACTER
- && e->ts.deferred)
- return false;
- /* End of section to be removed. */
-
ref = e->ref;
if (!ref || ref->type != REF_ARRAY || ref->u.ar.codimen != 0 || ref->next)
return false;
@@ -3567,10 +3560,26 @@ scalarized_expr (gfc_expr *e_in, gfc_expr **index, int count_index)
is the lbound of a full ref. */
int j;
gfc_array_ref *ar;
+ int to;
ar = &ref->u.ar;
- ar->type = AR_FULL;
- for (j = 0; j < ar->dimen; j++)
+
+ /* For assumed size, we need to keep around the final
+ reference in order not to get an error on resolution
+ below, and we cannot use AR_FULL. */
+
+ if (ar->as->type == AS_ASSUMED_SIZE)
+ {
+ ar->type = AR_SECTION;
+ to = ar->dimen - 1;
+ }
+ else
+ {
+ to = ar->dimen;
+ ar->type = AR_FULL;
+ }
+
+ for (j = 0; j < to; j++)
{
gfc_free_expr (ar->start[j]);
ar->start[j] = NULL;
diff --git a/gcc/fortran/gfortran.texi b/gcc/fortran/gfortran.texi
index 9ffe6ade661..6f894816c62 100644
--- a/gcc/fortran/gfortran.texi
+++ b/gcc/fortran/gfortran.texi
@@ -4458,7 +4458,7 @@ in the @var{DESC}'s data-ptr is registered or allocate when the data-ptr is
@item @emph{Syntax}:
@code{void caf_register (size_t size, caf_register_t type, caf_token_t *token,
-gfc_descriptor_t *desc, int *stat, char *errmsg, int errmsg_len)}
+gfc_descriptor_t *desc, int *stat, char *errmsg, size_t errmsg_len)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -4510,7 +4510,7 @@ during a call to @code{_gfortran_caf_register}.
@item @emph{Syntax}:
@code{void caf_deregister (caf_token_t *token, caf_deregister_t type,
-int *stat, char *errmsg, int errmsg_len)}
+int *stat, char *errmsg, size_t errmsg_len)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -4750,7 +4750,7 @@ remote image identified by the @var{image_index}.
@item @emph{Syntax}:
@code{void _gfortran_caf_send_by_ref (caf_token_t token, int image_index,
gfc_descriptor_t *src, caf_reference_t *refs, int dst_kind, int src_kind,
-bool may_require_tmp, bool dst_reallocatable, int *stat)}
+bool may_require_tmp, bool dst_reallocatable, int *stat, int dst_type)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -4774,6 +4774,9 @@ is a full array or component ref.
@item @var{stat} @tab intent(out) When non-@code{NULL} give the result of the
operation, i.e., zero on success and non-zero on error. When @code{NULL} and
an error occurs, then an error message is printed and the program is terminated.
+@item @var{dst_type} @tab intent(in) Give the type of the destination. When
+the destination is not an array, than the precise type, e.g. of a component in
+a derived type, is not known, but provided here.
@end multitable
@item @emph{NOTES}
@@ -4808,7 +4811,7 @@ identified by the @var{image_index}.
@item @emph{Syntax}:
@code{void _gfortran_caf_get_by_ref (caf_token_t token, int image_index,
caf_reference_t *refs, gfc_descriptor_t *dst, int dst_kind, int src_kind,
-bool may_require_tmp, bool dst_reallocatable, int *stat)}
+bool may_require_tmp, bool dst_reallocatable, int *stat, int src_type)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -4833,6 +4836,9 @@ array or a component is referenced.
@item @var{stat} @tab intent(out) When non-@code{NULL} give the result of the
operation, i.e., zero on success and non-zero on error. When @code{NULL} and an
error occurs, then an error message is printed and the program is terminated.
+@item @var{src_type} @tab intent(in) Give the type of the source. When the
+source is not an array, than the precise type, e.g. of a component in a
+derived type, is not known, but provided here.
@end multitable
@item @emph{NOTES}
@@ -4868,7 +4874,8 @@ identified by the @var{src_image_index} to a remote image identified by the
@code{void _gfortran_caf_sendget_by_ref (caf_token_t dst_token,
int dst_image_index, caf_reference_t *dst_refs,
caf_token_t src_token, int src_image_index, caf_reference_t *src_refs,
-int dst_kind, int src_kind, bool may_require_tmp, int *dst_stat, int *src_stat)}
+int dst_kind, int src_kind, bool may_require_tmp, int *dst_stat,
+int *src_stat, int dst_type, int src_type)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -4899,6 +4906,12 @@ program is terminated.
the get-operation, i.e., zero on success and non-zero on error. When
@code{NULL} and an error occurs, then an error message is printed and the
program is terminated.
+@item @var{dst_type} @tab intent(in) Give the type of the destination. When
+the destination is not an array, than the precise type, e.g. of a component in
+a derived type, is not known, but provided here.
+@item @var{src_type} @tab intent(in) Give the type of the source. When the
+source is not an array, than the precise type, e.g. of a component in a
+derived type, is not known, but provided here.
@end multitable
@item @emph{NOTES}
@@ -4936,7 +4949,7 @@ which has already been locked by the same image is an error.
@item @emph{Syntax}:
@code{void _gfortran_caf_lock (caf_token_t token, size_t index, int image_index,
-int *aquired_lock, int *stat, char *errmsg, int errmsg_len)}
+int *aquired_lock, int *stat, char *errmsg, size_t errmsg_len)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -4971,7 +4984,7 @@ which is unlocked or has been locked by a different image is an error.
@item @emph{Syntax}:
@code{void _gfortran_caf_unlock (caf_token_t token, size_t index, int image_index,
-int *stat, char *errmsg, int errmsg_len)}
+int *stat, char *errmsg, size_t errmsg_len)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -5003,7 +5016,7 @@ Increment the event count of the specified event variable.
@item @emph{Syntax}:
@code{void _gfortran_caf_event_post (caf_token_t token, size_t index,
-int image_index, int *stat, char *errmsg, int errmsg_len)}
+int image_index, int *stat, char *errmsg, size_t errmsg_len)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -5040,7 +5053,7 @@ amount and return.
@item @emph{Syntax}:
@code{void _gfortran_caf_event_wait (caf_token_t token, size_t index,
-int until_count, int *stat, char *errmsg, int errmsg_len)}
+int until_count, int *stat, char *errmsg, size_t errmsg_len)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -5118,7 +5131,7 @@ current team. Additionally, it ensures that all pending data transfers of
previous segment have completed.
@item @emph{Syntax}:
-@code{void _gfortran_caf_sync_all (int *stat, char *errmsg, int errmsg_len)}
+@code{void _gfortran_caf_sync_all (int *stat, char *errmsg, size_t errmsg_len)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -5146,7 +5159,7 @@ transfers of previous segments have completed.
@item @emph{Syntax}:
@code{void _gfortran_caf_sync_images (int count, int images[], int *stat,
-char *errmsg, int errmsg_len)}
+char *errmsg, size_t errmsg_len)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -5174,7 +5187,7 @@ Acts as optimization barrier between different segments. It also ensures that
all pending memory operations of this image have been completed.
@item @emph{Syntax}:
-@code{void _gfortran_caf_sync_memory (int *stat, char *errmsg, int errmsg_len)}
+@code{void _gfortran_caf_sync_memory (int *stat, char *errmsg, size_t errmsg_len)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -5201,7 +5214,7 @@ function should terminate the program with the specified exit code.
@item @emph{Syntax}:
-@code{void _gfortran_caf_error_stop (int32_t error)}
+@code{void _gfortran_caf_error_stop (int error)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -5221,7 +5234,7 @@ Invoked for an @code{ERROR STOP} statement which has a string as argument. The
function should terminate the program with a nonzero-exit code.
@item @emph{Syntax}:
-@code{void _gfortran_caf_error_stop (const char *string, int32_t len)}
+@code{void _gfortran_caf_error_stop (const char *string, size_t len)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -5399,7 +5412,7 @@ be called collectively.
@item @emph{Syntax}:
@code{void _gfortran_caf_co_broadcast (gfc_descriptor_t *a,
-int source_image, int *stat, char *errmsg, int errmsg_len)}
+int source_image, int *stat, char *errmsg, size_t errmsg_len)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -5430,7 +5443,7 @@ strings.
@item @emph{Syntax}:
@code{void _gfortran_caf_co_max (gfc_descriptor_t *a, int result_image,
-int *stat, char *errmsg, int a_len, int errmsg_len)}
+int *stat, char *errmsg, int a_len, size_t errmsg_len)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -5467,7 +5480,7 @@ strings.
@item @emph{Syntax}:
@code{void _gfortran_caf_co_min (gfc_descriptor_t *a, int result_image,
-int *stat, char *errmsg, int a_len, int errmsg_len)}
+int *stat, char *errmsg, int a_len, size_t errmsg_len)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -5503,7 +5516,7 @@ specified image. This function operates on numeric values only.
@item @emph{Syntax}:
@code{void _gfortran_caf_co_sum (gfc_descriptor_t *a, int result_image,
-int *stat, char *errmsg, int errmsg_len)}
+int *stat, char *errmsg, size_t errmsg_len)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
@@ -5548,7 +5561,7 @@ string lengths shall be specified as hidden arguments;
@item @emph{Syntax}:
@code{void _gfortran_caf_co_reduce (gfc_descriptor_t *a,
void * (*opr) (void *, void *), int opr_flags, int result_image,
-int *stat, char *errmsg, int a_len, int errmsg_len)}
+int *stat, char *errmsg, int a_len, size_t errmsg_len)}
@item @emph{Arguments}:
@multitable @columnfractions .15 .70
diff --git a/gcc/fortran/interface.c b/gcc/fortran/interface.c
index a5f3f4dda16..cb326e55c75 100644
--- a/gcc/fortran/interface.c
+++ b/gcc/fortran/interface.c
@@ -2865,6 +2865,13 @@ compare_actual_formal (gfc_actual_arglist **ap, gfc_formal_arglist *formal,
for (a = actual; a; a = a->next, f = f->next)
{
+ if (a->name != NULL && in_statement_function)
+ {
+ gfc_error ("Keyword argument %qs at %L is invalid in "
+ "a statement function", a->name, &a->expr->where);
+ return false;
+ }
+
/* Look for keywords but ignore g77 extensions like %VAL. */
if (a->name != NULL && a->name[0] != '%')
{
@@ -4673,7 +4680,7 @@ gfc_check_typebound_override (gfc_symtree* proc, gfc_symtree* old)
/* The following three functions check that the formal arguments
of user defined derived type IO procedures are compliant with
- the requirements of the standard. */
+ the requirements of the standard, see F03:9.5.3.7.2 (F08:9.6.4.8.3). */
static void
check_dtio_arg_TKR_intent (gfc_symbol *fsym, bool typebound, bt type,
@@ -4702,6 +4709,10 @@ check_dtio_arg_TKR_intent (gfc_symbol *fsym, bool typebound, bt type,
gfc_error ("DTIO dummy argument at %L must be an "
"ASSUMED SHAPE ARRAY", &fsym->declared_at);
+ if (type == BT_CHARACTER && fsym->ts.u.cl->length != NULL)
+ gfc_error ("DTIO character argument at %L must have assumed length",
+ &fsym->declared_at);
+
if (fsym->attr.intent != intent)
gfc_error ("DTIO dummy argument at %L must have INTENT %s",
&fsym->declared_at, gfc_code2string (intents, (int)intent));
diff --git a/gcc/fortran/intrinsic.texi b/gcc/fortran/intrinsic.texi
index fbe9938b0e3..496b8dad4a7 100644
--- a/gcc/fortran/intrinsic.texi
+++ b/gcc/fortran/intrinsic.texi
@@ -9870,6 +9870,7 @@ one or two.
type; otherwise, an array of @code{LOGICAL} type. The rank shall be one
or two, and the first (or only) dimension of @var{MATRIX_B} shall be
equal to the last (or only) dimension of @var{MATRIX_A}.
+@var{MATRIX_A} and @var{MATRIX_B} shall not both be rank one arrays.
@end multitable
@item @emph{Return value}:
diff --git a/gcc/fortran/io.c b/gcc/fortran/io.c
index 9b7c2de16f4..d9f0fb1d4ac 100644
--- a/gcc/fortran/io.c
+++ b/gcc/fortran/io.c
@@ -985,6 +985,9 @@ data_desc:
case FMT_COMMA:
goto format_item;
+ case FMT_COLON:
+ goto format_item_1;
+
case FMT_LPAREN:
dtio_vlist:
diff --git a/gcc/fortran/match.c b/gcc/fortran/match.c
index 9313f435ffb..8f3a027c209 100644
--- a/gcc/fortran/match.c
+++ b/gcc/fortran/match.c
@@ -6201,9 +6201,10 @@ gfc_match_select_type (void)
|| CLASS_DATA (expr1)->attr.codimension)
&& expr1->ref
&& expr1->ref->type == REF_ARRAY
+ && expr1->ref->u.ar.type == AR_FULL
&& expr1->ref->next == NULL);
- /* Check for F03:C811. */
+ /* Check for F03:C811 (F08:C835). */
if (!expr2 && (expr1->expr_type != EXPR_VARIABLE
|| (!class_array && expr1->ref != NULL)))
{
diff --git a/gcc/fortran/primary.c b/gcc/fortran/primary.c
index 3d076736fdc..d889ed10ac3 100644
--- a/gcc/fortran/primary.c
+++ b/gcc/fortran/primary.c
@@ -2082,7 +2082,7 @@ gfc_match_varspec (gfc_expr *primary, int equiv_flag, bool sub_flag,
{
bool permissible;
- /* These target expressions can ge resolved at any time. */
+ /* These target expressions can be resolved at any time. */
permissible = tgt_expr && tgt_expr->symtree && tgt_expr->symtree->n.sym
&& (tgt_expr->symtree->n.sym->attr.use_assoc
|| tgt_expr->symtree->n.sym->attr.host_assoc
@@ -2879,6 +2879,38 @@ gfc_convert_to_structure_constructor (gfc_expr *e, gfc_symbol *sym, gfc_expr **c
if (!this_comp)
goto cleanup;
+ /* For a constant string constructor, make sure the length is
+ correct; truncate of fill with blanks if needed. */
+ if (this_comp->ts.type == BT_CHARACTER && !this_comp->attr.allocatable
+ && this_comp->ts.u.cl && this_comp->ts.u.cl->length
+ && this_comp->ts.u.cl->length->expr_type == EXPR_CONSTANT
+ && actual->expr->expr_type == EXPR_CONSTANT)
+ {
+ ptrdiff_t c, e;
+ c = gfc_mpz_get_hwi (this_comp->ts.u.cl->length->value.integer);
+ e = actual->expr->value.character.length;
+
+ if (c != e)
+ {
+ ptrdiff_t i, to;
+ gfc_char_t *dest;
+ dest = gfc_get_wide_string (c + 1);
+
+ to = e < c ? e : c;
+ for (i = 0; i < to; i++)
+ dest[i] = actual->expr->value.character.string[i];
+
+ for (i = e; i < c; i++)
+ dest[i] = ' ';
+
+ dest[c] = '\0';
+ free (actual->expr->value.character.string);
+
+ actual->expr->value.character.length = c;
+ actual->expr->value.character.string = dest;
+ }
+ }
+
comp_tail->val = actual->expr;
if (actual->expr != NULL)
comp_tail->where = actual->expr->where;
diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c
index 01e2c38952c..fee5b1becf5 100644
--- a/gcc/fortran/resolve.c
+++ b/gcc/fortran/resolve.c
@@ -8637,15 +8637,24 @@ resolve_assoc_var (gfc_symbol* sym, bool resolve_target)
if (!sym->ts.u.cl)
sym->ts.u.cl = target->ts.u.cl;
- if (!sym->ts.u.cl->length && !sym->ts.deferred)
+ if (!sym->ts.u.cl->length
+ && !sym->ts.deferred
+ && target->expr_type == EXPR_CONSTANT)
{
- if (target->expr_type == EXPR_CONSTANT)
- sym->ts.u.cl->length =
- gfc_get_int_expr (gfc_charlen_int_kind, NULL,
- target->value.character.length);
- else
- gfc_error ("Not Implemented: Associate target with type character"
- " and non-constant length at %L", &target->where);
+ sym->ts.u.cl->length =
+ gfc_get_int_expr (gfc_charlen_int_kind, NULL,
+ target->value.character.length);
+ }
+ else if ((!sym->ts.u.cl->length
+ || sym->ts.u.cl->length->expr_type != EXPR_CONSTANT)
+ && target->expr_type != EXPR_VARIABLE)
+ {
+ sym->ts.u.cl = gfc_get_charlen();
+ sym->ts.deferred = 1;
+
+ /* This is reset in trans-stmt.c after the assignment
+ of the target expression to the associate name. */
+ sym->attr.allocatable = 1;
}
}
diff --git a/gcc/fortran/trans-array.c b/gcc/fortran/trans-array.c
index 4ffda26ca7d..e321db35ac2 100644
--- a/gcc/fortran/trans-array.c
+++ b/gcc/fortran/trans-array.c
@@ -7341,7 +7341,11 @@ gfc_conv_expr_descriptor (gfc_se *se, gfc_expr *expr)
else
{
/* Otherwise make a new one. */
- parmtype = gfc_get_element_type (TREE_TYPE (desc));
+ if (expr->ts.type == BT_CHARACTER && expr->ts.deferred)
+ parmtype = gfc_typenode_for_spec (&expr->ts);
+ else
+ parmtype = gfc_get_element_type (TREE_TYPE (desc));
+
parmtype = gfc_get_array_type_bounds (parmtype, loop.dimen, codim,
loop.from, loop.to, 0,
GFC_ARRAY_UNKNOWN, false);
@@ -9470,29 +9474,32 @@ bool
gfc_is_reallocatable_lhs (gfc_expr *expr)
{
gfc_ref * ref;
+ gfc_symbol *sym;
if (!expr->ref)
return false;
+ sym = expr->symtree->n.sym;
+
/* An allocatable class variable with no reference. */
- if (expr->symtree->n.sym->ts.type == BT_CLASS
- && CLASS_DATA (expr->symtree->n.sym)->attr.allocatable
+ if (sym->ts.type == BT_CLASS
+ && CLASS_DATA (sym)->attr.allocatable
&& expr->ref && expr->ref->type == REF_COMPONENT
&& strcmp (expr->ref->u.c.component->name, "_data") == 0
&& expr->ref->next == NULL)
return true;
/* An allocatable variable. */
- if (expr->symtree->n.sym->attr.allocatable
+ if (sym->attr.allocatable
&& expr->ref
&& expr->ref->type == REF_ARRAY
&& expr->ref->u.ar.type == AR_FULL)
return true;
/* All that can be left are allocatable components. */
- if ((expr->symtree->n.sym->ts.type != BT_DERIVED
- && expr->symtree->n.sym->ts.type != BT_CLASS)
- || !expr->symtree->n.sym->ts.u.derived->attr.alloc_comp)
+ if ((sym->ts.type != BT_DERIVED
+ && sym->ts.type != BT_CLASS)
+ || !sym->ts.u.derived->attr.alloc_comp)
return false;
/* Find a component ref followed by an array reference. */
diff --git a/gcc/fortran/trans-const.c b/gcc/fortran/trans-const.c
index 07950dc1ba9..6b4e0de430d 100644
--- a/gcc/fortran/trans-const.c
+++ b/gcc/fortran/trans-const.c
@@ -133,7 +133,7 @@ gfc_build_localized_cstring_const (const char *msgid)
/* Return a string constant with the given length. Used for static
- initializers. The constant will be padded or truncated to match
+ initializers. The constant will be padded or truncated to match
length. */
tree
@@ -303,7 +303,7 @@ gfc_conv_constant_to_tree (gfc_expr * expr)
/* If it is has a prescribed memory representation, we build a string
constant and VIEW_CONVERT to its type. */
-
+
switch (expr->ts.type)
{
case BT_INTEGER:
@@ -389,12 +389,12 @@ gfc_conv_constant (gfc_se * se, gfc_expr * expr)
if (expr->ts.type == BT_DERIVED && expr->ts.u.derived
&& expr->ts.u.derived->attr.is_iso_c)
{
- if (expr->symtree->n.sym->intmod_sym_id == ISOCBINDING_NULL_PTR
- || expr->symtree->n.sym->intmod_sym_id == ISOCBINDING_NULL_FUNPTR)
- {
- /* Create a new EXPR_CONSTANT expression for our local uses. */
- expr = gfc_get_int_expr (gfc_default_integer_kind, NULL, 0);
- }
+ if (expr->symtree->n.sym->intmod_sym_id == ISOCBINDING_NULL_PTR
+ || expr->symtree->n.sym->intmod_sym_id == ISOCBINDING_NULL_FUNPTR)
+ {
+ /* Create a new EXPR_CONSTANT expression for our local uses. */
+ expr = gfc_get_int_expr (gfc_default_integer_kind, NULL, 0);
+ }
}
if (expr->expr_type != EXPR_CONSTANT)
diff --git a/gcc/fortran/trans-decl.c b/gcc/fortran/trans-decl.c
index 4fc07b61c68..6742d2e16b0 100644
--- a/gcc/fortran/trans-decl.c
+++ b/gcc/fortran/trans-decl.c
@@ -609,10 +609,12 @@ gfc_finish_var_decl (tree decl, gfc_symbol * sym)
function scope. */
if (current_function_decl != NULL_TREE)
{
- if (sym->ns->proc_name->backend_decl == current_function_decl
- || sym->result == sym)
+ if (sym->ns->proc_name
+ && (sym->ns->proc_name->backend_decl == current_function_decl
+ || sym->result == sym))
gfc_add_decl_to_function (decl);
- else if (sym->ns->proc_name->attr.flavor == FL_LABEL)
+ else if (sym->ns->proc_name
+ && sym->ns->proc_name->attr.flavor == FL_LABEL)
/* This is a BLOCK construct. */
add_decl_as_local (decl);
else
@@ -704,7 +706,8 @@ gfc_finish_var_decl (tree decl, gfc_symbol * sym)
}
/* Keep variables larger than max-stack-var-size off stack. */
- if (!sym->ns->proc_name->attr.recursive && !sym->attr.automatic
+ if (!(sym->ns->proc_name && sym->ns->proc_name->attr.recursive)
+ && !sym->attr.automatic
&& INTEGER_CST_P (DECL_SIZE_UNIT (decl))
&& !gfc_can_put_var_on_stack (DECL_SIZE_UNIT (decl))
/* Put variable length auto array pointers always into stack. */
@@ -1707,12 +1710,13 @@ gfc_get_symbol_decl (gfc_symbol * sym)
&& sym->assoc && sym->assoc->target
&& ((sym->assoc->target->expr_type == EXPR_VARIABLE
&& sym->assoc->target->symtree->n.sym->ts.type != BT_CHARACTER)
- || sym->assoc->target->expr_type == EXPR_FUNCTION))
+ || sym->assoc->target->expr_type != EXPR_VARIABLE))
sym->ts.u.cl->backend_decl = NULL_TREE;
if (sym->attr.associate_var
&& sym->ts.u.cl->backend_decl
- && VAR_P (sym->ts.u.cl->backend_decl))
+ && (VAR_P (sym->ts.u.cl->backend_decl)
+ || TREE_CODE (sym->ts.u.cl->backend_decl) == PARM_DECL))
length = gfc_index_zero_node;
else
length = gfc_create_string_length (sym);
@@ -3498,39 +3502,41 @@ gfc_build_intrinsic_function_decls (void)
void
gfc_build_builtin_function_decls (void)
{
- tree gfc_int4_type_node = gfc_get_int_type (4);
+ tree gfc_int8_type_node = gfc_get_int_type (8);
gfor_fndecl_stop_numeric = gfc_build_library_function_decl (
get_identifier (PREFIX("stop_numeric")),
- void_type_node, 1, gfc_int4_type_node);
+ void_type_node, 2, integer_type_node, boolean_type_node);
/* STOP doesn't return. */
TREE_THIS_VOLATILE (gfor_fndecl_stop_numeric) = 1;
gfor_fndecl_stop_string = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("stop_string")), ".R.",
- void_type_node, 2, pchar_type_node, gfc_int4_type_node);
+ void_type_node, 3, pchar_type_node, size_type_node,
+ boolean_type_node);
/* STOP doesn't return. */
TREE_THIS_VOLATILE (gfor_fndecl_stop_string) = 1;
gfor_fndecl_error_stop_numeric = gfc_build_library_function_decl (
get_identifier (PREFIX("error_stop_numeric")),
- void_type_node, 1, gfc_int4_type_node);
+ void_type_node, 2, integer_type_node, boolean_type_node);
/* ERROR STOP doesn't return. */
TREE_THIS_VOLATILE (gfor_fndecl_error_stop_numeric) = 1;
gfor_fndecl_error_stop_string = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("error_stop_string")), ".R.",
- void_type_node, 2, pchar_type_node, gfc_int4_type_node);
+ void_type_node, 3, pchar_type_node, size_type_node,
+ boolean_type_node);
/* ERROR STOP doesn't return. */
TREE_THIS_VOLATILE (gfor_fndecl_error_stop_string) = 1;
gfor_fndecl_pause_numeric = gfc_build_library_function_decl (
get_identifier (PREFIX("pause_numeric")),
- void_type_node, 1, gfc_int4_type_node);
+ void_type_node, 1, gfc_int8_type_node);
gfor_fndecl_pause_string = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("pause_string")), ".R.",
- void_type_node, 2, pchar_type_node, gfc_int4_type_node);
+ void_type_node, 2, pchar_type_node, size_type_node);
gfor_fndecl_runtime_error = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("runtime_error")), ".R",
@@ -3635,12 +3641,12 @@ gfc_build_builtin_function_decls (void)
gfor_fndecl_caf_register = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_register")), "RRWWWWR", void_type_node, 7,
size_type_node, integer_type_node, ppvoid_type_node, pvoid_type_node,
- pint_type, pchar_type_node, integer_type_node);
+ pint_type, pchar_type_node, size_type_node);
gfor_fndecl_caf_deregister = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_deregister")), "WRWWR", void_type_node, 5,
ppvoid_type_node, integer_type_node, pint_type, pchar_type_node,
- integer_type_node);
+ size_type_node);
gfor_fndecl_caf_get = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_get")), ".R.RRWRRRW", void_type_node, 10,
@@ -3662,59 +3668,60 @@ gfc_build_builtin_function_decls (void)
integer_type_node, boolean_type_node, integer_type_node);
gfor_fndecl_caf_get_by_ref = gfc_build_library_function_decl_with_spec (
- get_identifier (PREFIX("caf_get_by_ref")), ".RWRRRRRW", void_type_node,
- 9, pvoid_type_node, integer_type_node, pvoid_type_node, pvoid_type_node,
- integer_type_node, integer_type_node, boolean_type_node,
- boolean_type_node, pint_type);
+ get_identifier (PREFIX("caf_get_by_ref")), ".RWRRRRRWR", void_type_node,
+ 10, pvoid_type_node, integer_type_node, pvoid_type_node,
+ pvoid_type_node, integer_type_node, integer_type_node,
+ boolean_type_node, boolean_type_node, pint_type, integer_type_node);
gfor_fndecl_caf_send_by_ref = gfc_build_library_function_decl_with_spec (
- get_identifier (PREFIX("caf_send_by_ref")), ".RRRRRRRW", void_type_node,
- 9, pvoid_type_node, integer_type_node, pvoid_type_node, pvoid_type_node,
- integer_type_node, integer_type_node, boolean_type_node,
- boolean_type_node, pint_type);
+ get_identifier (PREFIX("caf_send_by_ref")), ".RRRRRRRWR",
+ void_type_node, 10, pvoid_type_node, integer_type_node, pvoid_type_node,
+ pvoid_type_node, integer_type_node, integer_type_node,
+ boolean_type_node, boolean_type_node, pint_type, integer_type_node);
gfor_fndecl_caf_sendget_by_ref
= gfc_build_library_function_decl_with_spec (
- get_identifier (PREFIX("caf_sendget_by_ref")), ".RR.RRRRRWW",
- void_type_node, 11, pvoid_type_node, integer_type_node,
+ get_identifier (PREFIX("caf_sendget_by_ref")), ".RR.RRRRRWWRR",
+ void_type_node, 13, pvoid_type_node, integer_type_node,
pvoid_type_node, pvoid_type_node, integer_type_node,
pvoid_type_node, integer_type_node, integer_type_node,
- boolean_type_node, pint_type, pint_type);
+ boolean_type_node, pint_type, pint_type, integer_type_node,
+ integer_type_node);
gfor_fndecl_caf_sync_all = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_sync_all")), ".WW", void_type_node,
- 3, pint_type, pchar_type_node, integer_type_node);
+ 3, pint_type, pchar_type_node, size_type_node);
gfor_fndecl_caf_sync_memory = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_sync_memory")), ".WW", void_type_node,
- 3, pint_type, pchar_type_node, integer_type_node);
+ 3, pint_type, pchar_type_node, size_type_node);
gfor_fndecl_caf_sync_images = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_sync_images")), ".RRWW", void_type_node,
5, integer_type_node, pint_type, pint_type,
- pchar_type_node, integer_type_node);
+ pchar_type_node, size_type_node);
gfor_fndecl_caf_error_stop = gfc_build_library_function_decl (
get_identifier (PREFIX("caf_error_stop")),
- void_type_node, 1, gfc_int4_type_node);
+ void_type_node, 1, integer_type_node);
/* CAF's ERROR STOP doesn't return. */
TREE_THIS_VOLATILE (gfor_fndecl_caf_error_stop) = 1;
gfor_fndecl_caf_error_stop_str = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_error_stop_str")), ".R.",
- void_type_node, 2, pchar_type_node, gfc_int4_type_node);
+ void_type_node, 2, pchar_type_node, size_type_node);
/* CAF's ERROR STOP doesn't return. */
TREE_THIS_VOLATILE (gfor_fndecl_caf_error_stop_str) = 1;
gfor_fndecl_caf_stop_numeric = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_stop_numeric")), ".R.",
- void_type_node, 1, gfc_int4_type_node);
+ void_type_node, 1, integer_type_node);
/* CAF's STOP doesn't return. */
TREE_THIS_VOLATILE (gfor_fndecl_caf_stop_numeric) = 1;
gfor_fndecl_caf_stop_str = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_stop_str")), ".R.",
- void_type_node, 2, pchar_type_node, gfc_int4_type_node);
+ void_type_node, 2, pchar_type_node, size_type_node);
/* CAF's STOP doesn't return. */
TREE_THIS_VOLATILE (gfor_fndecl_caf_stop_str) = 1;
@@ -3743,22 +3750,22 @@ gfc_build_builtin_function_decls (void)
gfor_fndecl_caf_lock = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_lock")), "R..WWW",
void_type_node, 7, pvoid_type_node, size_type_node, integer_type_node,
- pint_type, pint_type, pchar_type_node, integer_type_node);
+ pint_type, pint_type, pchar_type_node, size_type_node);
gfor_fndecl_caf_unlock = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_unlock")), "R..WW",
void_type_node, 6, pvoid_type_node, size_type_node, integer_type_node,
- pint_type, pchar_type_node, integer_type_node);
+ pint_type, pchar_type_node, size_type_node);
gfor_fndecl_caf_event_post = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_event_post")), "R..WW",
void_type_node, 6, pvoid_type_node, size_type_node, integer_type_node,
- pint_type, pchar_type_node, integer_type_node);
+ pint_type, pchar_type_node, size_type_node);
gfor_fndecl_caf_event_wait = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_event_wait")), "R..WW",
void_type_node, 6, pvoid_type_node, size_type_node, integer_type_node,
- pint_type, pchar_type_node, integer_type_node);
+ pint_type, pchar_type_node, size_type_node);
gfor_fndecl_caf_event_query = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_event_query")), "R..WW",
@@ -3822,17 +3829,17 @@ gfc_build_builtin_function_decls (void)
gfor_fndecl_co_broadcast = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_co_broadcast")), "W.WW",
void_type_node, 5, pvoid_type_node, integer_type_node,
- pint_type, pchar_type_node, integer_type_node);
+ pint_type, pchar_type_node, size_type_node);
gfor_fndecl_co_max = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_co_max")), "W.WW",
void_type_node, 6, pvoid_type_node, integer_type_node,
- pint_type, pchar_type_node, integer_type_node, integer_type_node);
+ pint_type, pchar_type_node, integer_type_node, size_type_node);
gfor_fndecl_co_min = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_co_min")), "W.WW",
void_type_node, 6, pvoid_type_node, integer_type_node,
- pint_type, pchar_type_node, integer_type_node, integer_type_node);
+ pint_type, pchar_type_node, integer_type_node, size_type_node);
gfor_fndecl_co_reduce = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_co_reduce")), "W.R.WW",
@@ -3840,12 +3847,12 @@ gfc_build_builtin_function_decls (void)
build_pointer_type (build_varargs_function_type_list (void_type_node,
NULL_TREE)),
integer_type_node, integer_type_node, pint_type, pchar_type_node,
- integer_type_node, integer_type_node);
+ integer_type_node, size_type_node);
gfor_fndecl_co_sum = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_co_sum")), "W.WW",
void_type_node, 5, pvoid_type_node, integer_type_node,
- pint_type, pchar_type_node, integer_type_node);
+ pint_type, pchar_type_node, size_type_node);
gfor_fndecl_caf_is_present = gfc_build_library_function_decl_with_spec (
get_identifier (PREFIX("caf_is_present")), "RRR",
@@ -5348,7 +5355,7 @@ generate_coarray_sym_init (gfc_symbol *sym)
token, gfc_build_addr_expr (pvoid_type_node, desc),
null_pointer_node, /* stat. */
null_pointer_node, /* errgmsg. */
- integer_zero_node); /* errmsg_len. */
+ build_zero_cst (size_type_node)); /* errmsg_len. */
gfc_add_expr_to_block (&caf_init_block, tmp);
gfc_add_modify (&caf_init_block, decl, fold_convert (TREE_TYPE (decl),
gfc_conv_descriptor_data_get (desc)));
diff --git a/gcc/fortran/trans-expr.c b/gcc/fortran/trans-expr.c
index a4185820531..a93257c73bf 100644
--- a/gcc/fortran/trans-expr.c
+++ b/gcc/fortran/trans-expr.c
@@ -657,7 +657,7 @@ gfc_conv_derived_to_class (gfc_se *parmse, gfc_expr *e,
}
/* Array references with vector subscripts and non-variable expressions
- need be coverted to a one-based descriptor. */
+ need be converted to a one-based descriptor. */
if (ref || e->expr_type != EXPR_VARIABLE)
{
for (dim = 0; dim < e->rank; ++dim)
@@ -6868,6 +6868,8 @@ gfc_conv_initializer (gfc_expr * expr, gfc_typespec * ts, tree type,
/* The derived symbol has already been converted to a (void *). Use
its kind. */
+ if (derived->ts.kind == 0)
+ derived->ts.kind = gfc_default_integer_kind;
expr = gfc_get_int_expr (derived->ts.kind, NULL, 0);
expr->ts.f90_type = derived->ts.f90_type;
diff --git a/gcc/fortran/trans-intrinsic.c b/gcc/fortran/trans-intrinsic.c
index 337227d3c08..c4a3775d858 100644
--- a/gcc/fortran/trans-intrinsic.c
+++ b/gcc/fortran/trans-intrinsic.c
@@ -1709,12 +1709,13 @@ gfc_conv_intrinsic_caf_get (gfc_se *se, gfc_expr *expr, tree lhs, tree lhs_kind,
gfc_add_expr_to_block (&se->pre, tmp);
tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_get_by_ref,
- 9, token, image_index, dst_var,
+ 10, token, image_index, dst_var,
caf_reference, lhs_kind, kind,
may_require_tmp,
may_realloc ? boolean_true_node :
boolean_false_node,
- stat);
+ stat, build_int_cst (integer_type_node,
+ array_expr->ts.type));
gfc_add_expr_to_block (&se->pre, tmp);
@@ -2100,9 +2101,11 @@ conv_caf_send (gfc_code *code) {
: boolean_false_node;
tmp = build_call_expr_loc (input_location,
gfor_fndecl_caf_send_by_ref,
- 9, token, image_index, rhs_se.expr,
+ 10, token, image_index, rhs_se.expr,
reference, lhs_kind, rhs_kind,
- may_require_tmp, dst_realloc, src_stat);
+ may_require_tmp, dst_realloc, src_stat,
+ build_int_cst (integer_type_node,
+ lhs_expr->ts.type));
}
else
tmp = build_call_expr_loc (input_location, gfor_fndecl_caf_send, 11,
@@ -2147,11 +2150,15 @@ conv_caf_send (gfc_code *code) {
lhs_reference = conv_expr_ref_to_caf_ref (&block, lhs_expr);
rhs_reference = conv_expr_ref_to_caf_ref (&block, rhs_expr);
tmp = build_call_expr_loc (input_location,
- gfor_fndecl_caf_sendget_by_ref, 11,
+ gfor_fndecl_caf_sendget_by_ref, 13,
token, image_index, lhs_reference,
rhs_token, rhs_image_index, rhs_reference,
lhs_kind, rhs_kind, may_require_tmp,
- dst_stat, src_stat);
+ dst_stat, src_stat,
+ build_int_cst (integer_type_node,
+ lhs_expr->ts.type),
+ build_int_cst (integer_type_node,
+ rhs_expr->ts.type));
}
else
{
@@ -9817,12 +9824,12 @@ conv_co_collective (gfc_code *code)
gfc_add_block_to_block (&block, &argse.pre);
gfc_add_block_to_block (&post_block, &argse.post);
errmsg = argse.expr;
- errmsg_len = fold_convert (integer_type_node, argse.string_length);
+ errmsg_len = fold_convert (size_type_node, argse.string_length);
}
else
{
errmsg = null_pointer_node;
- errmsg_len = integer_zero_node;
+ errmsg_len = build_zero_cst (size_type_node);
}
/* Generate the function call. */
diff --git a/gcc/fortran/trans-io.c b/gcc/fortran/trans-io.c
index 021c788ba54..9058712c695 100644
--- a/gcc/fortran/trans-io.c
+++ b/gcc/fortran/trans-io.c
@@ -639,12 +639,12 @@ set_parameter_value_inquire (stmtblock_t *block, tree var,
/* Don't evaluate the UNIT number multiple times. */
se.expr = gfc_evaluate_now (se.expr, &se.pre);
- /* UNIT numbers should be greater than zero. */
+ /* UNIT numbers should be greater than the min. */
i = gfc_validate_kind (BT_INTEGER, 4, false);
+ val = gfc_conv_mpz_to_tree (gfc_integer_kinds[i].pedantic_min_int, 4);
cond1 = build2_loc (input_location, LT_EXPR, logical_type_node,
se.expr,
- fold_convert (TREE_TYPE (se.expr),
- integer_zero_node));
+ fold_convert (TREE_TYPE (se.expr), val));
/* UNIT numbers should be less than the max. */
val = gfc_conv_mpz_to_tree (gfc_integer_kinds[i].huge, 4);
cond2 = build2_loc (input_location, GT_EXPR, logical_type_node,
@@ -2289,6 +2289,16 @@ transfer_expr (gfc_se * se, gfc_typespec * ts, tree addr_expr,
ts->kind = gfc_index_integer_kind;
}
+ /* gfortran reaches here for "print *, c_loc(xxx)". */
+ if (ts->type == BT_VOID
+ && code->expr1 && code->expr1->ts.type == BT_VOID
+ && code->expr1->symtree
+ && strcmp (code->expr1->symtree->name, "c_loc") == 0)
+ {
+ ts->type = BT_INTEGER;
+ ts->kind = gfc_index_integer_kind;
+ }
+
kind = ts->kind;
function = NULL;
arg2 = NULL;
diff --git a/gcc/fortran/trans-openmp.c b/gcc/fortran/trans-openmp.c
index 4f5c3855799..795175d701a 100644
--- a/gcc/fortran/trans-openmp.c
+++ b/gcc/fortran/trans-openmp.c
@@ -1949,9 +1949,32 @@ gfc_trans_omp_clauses (stmtblock_t *block, gfc_omp_clauses *clauses,
}
else
{
- tree type = gfc_typenode_for_spec (&n->sym->ts);
- OMP_CLAUSE_LINEAR_STEP (node)
- = fold_convert (type, last_step);
+ if (kind == OMP_CLAUSE_LINEAR_REF)
+ {
+ tree type;
+ if (n->sym->attr.flavor == FL_PROCEDURE)
+ {
+ type = gfc_get_function_type (n->sym);
+ type = build_pointer_type (type);
+ }
+ else
+ type = gfc_sym_type (n->sym);
+ if (POINTER_TYPE_P (type))
+ type = TREE_TYPE (type);
+ /* Otherwise to be determined what exactly
+ should be done. */
+ tree t = fold_convert (sizetype, last_step);
+ t = size_binop (MULT_EXPR, t,
+ TYPE_SIZE_UNIT (type));
+ OMP_CLAUSE_LINEAR_STEP (node) = t;
+ }
+ else
+ {
+ tree type
+ = gfc_typenode_for_spec (&n->sym->ts);
+ OMP_CLAUSE_LINEAR_STEP (node)
+ = fold_convert (type, last_step);
+ }
}
if (n->sym->attr.dimension || n->sym->attr.allocatable)
OMP_CLAUSE_LINEAR_ARRAY (node) = 1;
diff --git a/gcc/fortran/trans-stmt.c b/gcc/fortran/trans-stmt.c
index 573fd4818d4..cf76fd0162b 100644
--- a/gcc/fortran/trans-stmt.c
+++ b/gcc/fortran/trans-stmt.c
@@ -578,7 +578,7 @@ gfc_trans_return (gfc_code * code)
tree
gfc_trans_pause (gfc_code * code)
{
- tree gfc_int4_type_node = gfc_get_int_type (4);
+ tree gfc_int8_type_node = gfc_get_int_type (8);
gfc_se se;
tree tmp;
@@ -589,7 +589,7 @@ gfc_trans_pause (gfc_code * code)
if (code->expr1 == NULL)
{
- tmp = build_int_cst (gfc_int4_type_node, 0);
+ tmp = build_int_cst (size_type_node, 0);
tmp = build_call_expr_loc (input_location,
gfor_fndecl_pause_string, 2,
build_int_cst (pchar_type_node, 0), tmp);
@@ -599,14 +599,15 @@ gfc_trans_pause (gfc_code * code)
gfc_conv_expr (&se, code->expr1);
tmp = build_call_expr_loc (input_location,
gfor_fndecl_pause_numeric, 1,
- fold_convert (gfc_int4_type_node, se.expr));
+ fold_convert (gfc_int8_type_node, se.expr));
}
else
{
gfc_conv_expr_reference (&se, code->expr1);
tmp = build_call_expr_loc (input_location,
gfor_fndecl_pause_string, 2,
- se.expr, se.string_length);
+ se.expr, fold_convert (size_type_node,
+ se.string_length));
}
gfc_add_expr_to_block (&se.pre, tmp);
@@ -623,7 +624,6 @@ gfc_trans_pause (gfc_code * code)
tree
gfc_trans_stop (gfc_code *code, bool error_stop)
{
- tree gfc_int4_type_node = gfc_get_int_type (4);
gfc_se se;
tree tmp;
@@ -633,7 +633,7 @@ gfc_trans_stop (gfc_code *code, bool error_stop)
if (code->expr1 == NULL)
{
- tmp = build_int_cst (gfc_int4_type_node, 0);
+ tmp = build_int_cst (size_type_node, 0);
tmp = build_call_expr_loc (input_location,
error_stop
? (flag_coarray == GFC_FCOARRAY_LIB
@@ -642,7 +642,8 @@ gfc_trans_stop (gfc_code *code, bool error_stop)
: (flag_coarray == GFC_FCOARRAY_LIB
? gfor_fndecl_caf_stop_str
: gfor_fndecl_stop_string),
- 2, build_int_cst (pchar_type_node, 0), tmp);
+ 3, build_int_cst (pchar_type_node, 0), tmp,
+ boolean_false_node);
}
else if (code->expr1->ts.type == BT_INTEGER)
{
@@ -654,8 +655,9 @@ gfc_trans_stop (gfc_code *code, bool error_stop)
: gfor_fndecl_error_stop_numeric)
: (flag_coarray == GFC_FCOARRAY_LIB
? gfor_fndecl_caf_stop_numeric
- : gfor_fndecl_stop_numeric), 1,
- fold_convert (gfc_int4_type_node, se.expr));
+ : gfor_fndecl_stop_numeric), 2,
+ fold_convert (integer_type_node, se.expr),
+ boolean_false_node);
}
else
{
@@ -668,7 +670,9 @@ gfc_trans_stop (gfc_code *code, bool error_stop)
: (flag_coarray == GFC_FCOARRAY_LIB
? gfor_fndecl_caf_stop_str
: gfor_fndecl_stop_string),
- 2, se.expr, se.string_length);
+ 3, se.expr, fold_convert (size_type_node,
+ se.string_length),
+ boolean_false_node);
}
gfc_add_expr_to_block (&se.pre, tmp);
@@ -913,12 +917,12 @@ gfc_trans_lock_unlock (gfc_code *code, gfc_exec_op op)
gfc_conv_expr (&argse, code->expr3);
gfc_add_block_to_block (&se.pre, &argse.pre);
errmsg = argse.expr;
- errmsg_len = fold_convert (integer_type_node, argse.string_length);
+ errmsg_len = fold_convert (size_type_node, argse.string_length);
}
else
{
errmsg = null_pointer_node;
- errmsg_len = integer_zero_node;
+ errmsg_len = build_zero_cst (size_type_node);
}
if (stat != null_pointer_node && TREE_TYPE (stat) != integer_type_node)
@@ -1112,12 +1116,12 @@ gfc_trans_event_post_wait (gfc_code *code, gfc_exec_op op)
gfc_conv_expr (&argse, code->expr3);
gfc_add_block_to_block (&se.pre, &argse.pre);
errmsg = argse.expr;
- errmsg_len = fold_convert (integer_type_node, argse.string_length);
+ errmsg_len = fold_convert (size_type_node, argse.string_length);
}
else
{
errmsg = null_pointer_node;
- errmsg_len = integer_zero_node;
+ errmsg_len = build_zero_cst (size_type_node);
}
if (stat != null_pointer_node && TREE_TYPE (stat) != integer_type_node)
@@ -1196,12 +1200,12 @@ gfc_trans_sync (gfc_code *code, gfc_exec_op type)
gfc_conv_expr (&argse, code->expr3);
gfc_conv_string_parameter (&argse);
errmsg = gfc_build_addr_expr (NULL, argse.expr);
- errmsglen = argse.string_length;
+ errmsglen = fold_convert (size_type_node, argse.string_length);
}
else if (flag_coarray == GFC_FCOARRAY_LIB)
{
errmsg = null_pointer_node;
- errmsglen = build_int_cst (integer_type_node, 0);
+ errmsglen = build_int_cst (size_type_node, 0);
}
/* Check SYNC IMAGES(imageset) for valid image index.
@@ -1926,9 +1930,26 @@ trans_associate_var (gfc_symbol *sym, gfc_wrapped_block *block)
{
gfc_expr *lhs;
tree res;
+ gfc_se se;
+
+ gfc_init_se (&se, NULL);
+
+ /* resolve.c converts some associate names to allocatable so that
+ allocation can take place automatically in gfc_trans_assignment.
+ The frontend prevents them from being either allocated,
+ deallocated or reallocated. */
+ if (sym->attr.allocatable)
+ {
+ tmp = sym->backend_decl;
+ if (GFC_DESCRIPTOR_TYPE_P (TREE_TYPE (tmp)))
+ tmp = gfc_conv_descriptor_data_get (tmp);
+ gfc_add_modify (&se.pre, tmp, fold_convert (TREE_TYPE (tmp),
+ null_pointer_node));
+ }
lhs = gfc_lval_expr_from_sym (sym);
res = gfc_trans_assignment (lhs, e, false, true);
+ gfc_add_expr_to_block (&se.pre, res);
tmp = sym->backend_decl;
if (e->expr_type == EXPR_FUNCTION
@@ -1948,8 +1969,25 @@ trans_associate_var (gfc_symbol *sym, gfc_wrapped_block *block)
tmp = gfc_deallocate_pdt_comp (CLASS_DATA (sym)->ts.u.derived,
tmp, 0);
}
+ else if (sym->attr.allocatable)
+ {
+ tmp = sym->backend_decl;
+
+ if (GFC_DESCRIPTOR_TYPE_P (TREE_TYPE (tmp)))
+ tmp = gfc_conv_descriptor_data_get (tmp);
+
+ /* A simple call to free suffices here. */
+ tmp = gfc_call_free (tmp);
+
+ /* Make sure that reallocation on assignment cannot occur. */
+ sym->attr.allocatable = 0;
+ }
+ else
+ tmp = NULL_TREE;
+ res = gfc_finish_block (&se.pre);
gfc_add_init_cleanup (block, res, tmp);
+ gfc_free_expr (lhs);
}
/* Set the stringlength, when needed. */
diff --git a/gcc/fortran/trans-types.c b/gcc/fortran/trans-types.c
index 697b7354e1b..20de203e607 100644
--- a/gcc/fortran/trans-types.c
+++ b/gcc/fortran/trans-types.c
@@ -2251,6 +2251,7 @@ gfc_sym_type (gfc_symbol * sym)
if (sym->attr.result
&& sym->ts.type == BT_CHARACTER
&& sym->ts.u.cl->backend_decl == NULL_TREE
+ && sym->ns->proc_name
&& sym->ns->proc_name->ts.u.cl->backend_decl != NULL_TREE)
sym->ts.u.cl->backend_decl = sym->ns->proc_name->ts.u.cl->backend_decl;
diff --git a/gcc/gengtype.c b/gcc/gengtype.c
index c94008ee0c4..0db5528e632 100644
--- a/gcc/gengtype.c
+++ b/gcc/gengtype.c
@@ -1187,7 +1187,6 @@ adjust_field_rtx_def (type_p t, options_p ARG_UNUSED (opt))
break;
case NOTE_INSN_VAR_LOCATION:
- case NOTE_INSN_CALL_ARG_LOCATION:
note_flds = create_field (note_flds, rtx_tp, "rt_rtx");
break;
diff --git a/gcc/genmodes.c b/gcc/genmodes.c
index a70f0967859..af0d280e208 100644
--- a/gcc/genmodes.c
+++ b/gcc/genmodes.c
@@ -119,6 +119,7 @@ complex_class (enum mode_class c)
switch (c)
{
case MODE_INT: return MODE_COMPLEX_INT;
+ case MODE_PARTIAL_INT: return MODE_COMPLEX_INT;
case MODE_FLOAT: return MODE_COMPLEX_FLOAT;
default:
error ("no complex class for class %s", mode_class_names[c]);
diff --git a/gcc/gimple-fold.c b/gcc/gimple-fold.c
index e556f050e43..8257873dd20 100644
--- a/gcc/gimple-fold.c
+++ b/gcc/gimple-fold.c
@@ -65,6 +65,7 @@ along with GCC; see the file COPYING3. If not see
#include "intl.h"
#include "calls.h"
#include "tree-vector-builder.h"
+#include "tree-ssa-strlen.h"
/* Return true when DECL can be referenced from current unit.
FROM_DECL (if non-null) specify constructor of variable DECL was taken from.
@@ -1283,13 +1284,16 @@ gimple_fold_builtin_memset (gimple_stmt_iterator *gsi, tree c, tree len)
value of ARG in LENGTH[0] and LENGTH[1], respectively.
If ARG is an SSA name variable, follow its use-def chains. When
TYPE == 0, if LENGTH[1] is not equal to the length we determine or
- if we are unable to determine the length or value, return False.
+ if we are unable to determine the length or value, return false.
VISITED is a bitmap of visited variables.
TYPE is 0 if string length should be obtained, 1 for maximum string
length and 2 for maximum value ARG can have.
- When FUZZY is set and the length of a string cannot be determined,
+ When FUZZY is non-zero and the length of a string cannot be determined,
the function instead considers as the maximum possible length the
- size of a character array it may refer to.
+ size of a character array it may refer to. If FUZZY is 2, it will handle
+ PHIs and COND_EXPRs optimistically, if we can determine string length
+ minimum and maximum, it will use the minimum from the ones where it
+ can be determined.
Set *FLEXP to true if the range of the string lengths has been
obtained from the upper bound of an array at the end of a struct.
Such an array may hold a string that's longer than its upper bound
@@ -1297,14 +1301,13 @@ gimple_fold_builtin_memset (gimple_stmt_iterator *gsi, tree c, tree len)
static bool
get_range_strlen (tree arg, tree length[2], bitmap *visited, int type,
- bool fuzzy, bool *flexp)
+ int fuzzy, bool *flexp)
{
tree var, val = NULL_TREE;
gimple *def_stmt;
- /* The minimum and maximum length. The MAXLEN pointer stays unchanged
- but MINLEN may be cleared during the execution of the function. */
- tree *minlen = length;
+ /* The minimum and maximum length. */
+ tree *const minlen = length;
tree *const maxlen = length + 1;
if (TREE_CODE (arg) != SSA_NAME)
@@ -1445,12 +1448,11 @@ get_range_strlen (tree arg, tree length[2], bitmap *visited, int type,
if (!val)
return false;
- if (minlen
- && (!*minlen
- || (type > 0
- && TREE_CODE (*minlen) == INTEGER_CST
- && TREE_CODE (val) == INTEGER_CST
- && tree_int_cst_lt (val, *minlen))))
+ if (!*minlen
+ || (type > 0
+ && TREE_CODE (*minlen) == INTEGER_CST
+ && TREE_CODE (val) == INTEGER_CST
+ && tree_int_cst_lt (val, *minlen)))
*minlen = val;
if (*maxlen)
@@ -1501,20 +1503,26 @@ get_range_strlen (tree arg, tree length[2], bitmap *visited, int type,
}
else if (gimple_assign_rhs_code (def_stmt) == COND_EXPR)
{
- tree op2 = gimple_assign_rhs2 (def_stmt);
- tree op3 = gimple_assign_rhs3 (def_stmt);
- return get_range_strlen (op2, length, visited, type, fuzzy, flexp)
- && get_range_strlen (op3, length, visited, type, fuzzy, flexp);
+ tree ops[2] = { gimple_assign_rhs2 (def_stmt),
+ gimple_assign_rhs3 (def_stmt) };
+
+ for (unsigned int i = 0; i < 2; i++)
+ if (!get_range_strlen (ops[i], length, visited, type, fuzzy,
+ flexp))
+ {
+ if (fuzzy == 2)
+ *maxlen = build_all_ones_cst (size_type_node);
+ else
+ return false;
+ }
+ return true;
}
return false;
case GIMPLE_PHI:
- {
- /* All the arguments of the PHI node must have the same constant
- length. */
- unsigned i;
-
- for (i = 0; i < gimple_phi_num_args (def_stmt); i++)
+ /* All the arguments of the PHI node must have the same constant
+ length. */
+ for (unsigned i = 0; i < gimple_phi_num_args (def_stmt); i++)
{
tree arg = gimple_phi_arg (def_stmt, i)->def;
@@ -1529,13 +1537,12 @@ get_range_strlen (tree arg, tree length[2], bitmap *visited, int type,
if (!get_range_strlen (arg, length, visited, type, fuzzy, flexp))
{
- if (fuzzy)
+ if (fuzzy == 2)
*maxlen = build_all_ones_cst (size_type_node);
else
return false;
}
}
- }
return true;
default:
@@ -1549,15 +1556,21 @@ get_range_strlen (tree arg, tree length[2], bitmap *visited, int type,
character arrays, use the upper bound of the array as the maximum
length. For example, given an expression like 'x ? array : "xyz"'
and array declared as 'char array[8]', MINMAXLEN[0] will be set
- to 3 and MINMAXLEN[1] to 7, the longest string that could be
+ to 0 and MINMAXLEN[1] to 7, the longest string that could be
stored in array.
Return true if the range of the string lengths has been obtained
from the upper bound of an array at the end of a struct. Such
an array may hold a string that's longer than its upper bound
- due to it being used as a poor-man's flexible array member. */
+ due to it being used as a poor-man's flexible array member.
+
+ STRICT is true if it will handle PHIs and COND_EXPRs conservatively
+ and false if PHIs and COND_EXPRs are to be handled optimistically,
+ if we can determine string length minimum and maximum; it will use
+ the minimum from the ones where it can be determined.
+ STRICT false should be only used for warning code. */
bool
-get_range_strlen (tree arg, tree minmaxlen[2])
+get_range_strlen (tree arg, tree minmaxlen[2], bool strict)
{
bitmap visited = NULL;
@@ -1565,7 +1578,12 @@ get_range_strlen (tree arg, tree minmaxlen[2])
minmaxlen[1] = NULL_TREE;
bool flexarray = false;
- get_range_strlen (arg, minmaxlen, &visited, 1, true, &flexarray);
+ if (!get_range_strlen (arg, minmaxlen, &visited, 1, strict ? 1 : 2,
+ &flexarray))
+ {
+ minmaxlen[0] = NULL_TREE;
+ minmaxlen[1] = NULL_TREE;
+ }
if (visited)
BITMAP_FREE (visited);
@@ -1580,7 +1598,7 @@ get_maxval_strlen (tree arg, int type)
tree len[2] = { NULL_TREE, NULL_TREE };
bool dummy;
- if (!get_range_strlen (arg, len, &visited, type, false, &dummy))
+ if (!get_range_strlen (arg, len, &visited, type, 0, &dummy))
len[1] = NULL_TREE;
if (visited)
BITMAP_FREE (visited);
@@ -1693,37 +1711,8 @@ gimple_fold_builtin_strncpy (gimple_stmt_iterator *gsi,
if (tree_int_cst_lt (ssize, len))
return false;
- if (!nonstring)
- {
- if (tree_int_cst_lt (len, slen))
- {
- tree fndecl = gimple_call_fndecl (stmt);
- gcall *call = as_a <gcall *> (stmt);
-
- warning_at (loc, OPT_Wstringop_truncation,
- (tree_int_cst_equal (size_one_node, len)
- ? G_("%G%qD output truncated copying %E byte "
- "from a string of length %E")
- : G_("%G%qD output truncated copying %E bytes "
- "from a string of length %E")),
- call, fndecl, len, slen);
- }
- else if (tree_int_cst_equal (len, slen))
- {
- tree fndecl = gimple_call_fndecl (stmt);
- gcall *call = as_a <gcall *> (stmt);
-
- warning_at (loc, OPT_Wstringop_truncation,
- (tree_int_cst_equal (size_one_node, len)
- ? G_("%G%qD output truncated before terminating nul "
- "copying %E byte from a string of the same "
- "length")
- : G_("%G%qD output truncated before terminating nul "
- "copying %E bytes from a string of the same "
- "length")),
- call, fndecl, len);
- }
- }
+ /* Diagnose truncation that leaves the copy unterminated. */
+ maybe_diag_stxncpy_trunc (*gsi, src, len);
/* OK transform into builtin memcpy. */
tree fn = builtin_decl_implicit (BUILT_IN_MEMCPY);
@@ -3534,7 +3523,7 @@ gimple_fold_builtin_strlen (gimple_stmt_iterator *gsi)
wide_int maxlen;
tree lenrange[2];
- if (!get_range_strlen (gimple_call_arg (stmt, 0), lenrange)
+ if (!get_range_strlen (gimple_call_arg (stmt, 0), lenrange, true)
&& lenrange[0] && TREE_CODE (lenrange[0]) == INTEGER_CST
&& lenrange[1] && TREE_CODE (lenrange[1]) == INTEGER_CST)
{
@@ -6442,13 +6431,9 @@ get_base_constructor (tree base, poly_int64_pod *bit_offset,
if (TREE_CODE (base) == MEM_REF)
{
- if (!integer_zerop (TREE_OPERAND (base, 1)))
- {
- if (!tree_fits_shwi_p (TREE_OPERAND (base, 1)))
- return NULL_TREE;
- *bit_offset += (mem_ref_offset (base).force_shwi ()
- * BITS_PER_UNIT);
- }
+ poly_offset_int boff = *bit_offset + mem_ref_offset (base) * BITS_PER_UNIT;
+ if (!boff.to_shwi (bit_offset))
+ return NULL_TREE;
if (valueize
&& TREE_CODE (TREE_OPERAND (base, 0)) == SSA_NAME)
diff --git a/gcc/gimple-fold.h b/gcc/gimple-fold.h
index 94fa460f4a3..d0c4044ef46 100644
--- a/gcc/gimple-fold.h
+++ b/gcc/gimple-fold.h
@@ -25,7 +25,7 @@ along with GCC; see the file COPYING3. If not see
extern tree create_tmp_reg_or_ssa_name (tree, gimple *stmt = NULL);
extern tree canonicalize_constructor_val (tree, tree);
extern tree get_symbol_constant_value (tree);
-extern bool get_range_strlen (tree, tree[2]);
+extern bool get_range_strlen (tree, tree[2], bool = false);
extern tree get_maxval_strlen (tree, int);
extern void gimplify_and_update_call_from_tree (gimple_stmt_iterator *, tree);
extern bool fold_stmt (gimple_stmt_iterator *);
diff --git a/gcc/gimple-ssa-evrp-analyze.c b/gcc/gimple-ssa-evrp-analyze.c
index 2eb2769303d..b9dcf906ff7 100644
--- a/gcc/gimple-ssa-evrp-analyze.c
+++ b/gcc/gimple-ssa-evrp-analyze.c
@@ -69,6 +69,8 @@ evrp_range_analyzer::push_marker ()
void
evrp_range_analyzer::enter (basic_block bb)
{
+ if (!optimize)
+ return;
push_marker ();
record_ranges_from_incoming_edge (bb);
record_ranges_from_phis (bb);
@@ -279,6 +281,9 @@ evrp_range_analyzer::record_ranges_from_stmt (gimple *stmt, bool temporary)
{
tree output = NULL_TREE;
+ if (!optimize)
+ return;
+
if (dyn_cast <gcond *> (stmt))
;
else if (stmt_interesting_for_vrp (stmt))
@@ -390,6 +395,8 @@ evrp_range_analyzer::pop_to_marker (void)
void
evrp_range_analyzer::leave (basic_block bb ATTRIBUTE_UNUSED)
{
+ if (!optimize)
+ return;
pop_to_marker ();
}
diff --git a/gcc/gimple-ssa-sprintf.c b/gcc/gimple-ssa-sprintf.c
index a2dd54502e8..1189d9fea35 100644
--- a/gcc/gimple-ssa-sprintf.c
+++ b/gcc/gimple-ssa-sprintf.c
@@ -80,6 +80,9 @@ along with GCC; see the file COPYING3. If not see
#include "substring-locations.h"
#include "diagnostic.h"
#include "domwalk.h"
+#include "alloc-pool.h"
+#include "vr-values.h"
+#include "gimple-ssa-evrp-analyze.h"
/* The likely worst case value of MB_LEN_MAX for the target, large enough
for UTF-8. Ideally, this would be obtained by a target hook if it were
@@ -121,10 +124,12 @@ class sprintf_dom_walker : public dom_walker
~sprintf_dom_walker () {}
edge before_dom_children (basic_block) FINAL OVERRIDE;
+ void after_dom_children (basic_block) FINAL OVERRIDE;
bool handle_gimple_call (gimple_stmt_iterator *);
struct call_info;
bool compute_format_length (call_info &, format_result *);
+ class evrp_range_analyzer evrp_range_analyzer;
};
class pass_sprintf_length : public gimple_opt_pass
@@ -766,7 +771,8 @@ fmtresult::type_max_digits (tree type, int base)
}
static bool
-get_int_range (tree, HOST_WIDE_INT *, HOST_WIDE_INT *, bool, HOST_WIDE_INT);
+get_int_range (tree, HOST_WIDE_INT *, HOST_WIDE_INT *, bool, HOST_WIDE_INT,
+ class vr_values *vr_values);
/* Description of a format directive. A directive is either a plain
string or a conversion specification that starts with '%'. */
@@ -801,7 +807,7 @@ struct directive
/* Format conversion function that given a directive and an argument
returns the formatting result. */
- fmtresult (*fmtfunc) (const directive &, tree);
+ fmtresult (*fmtfunc) (const directive &, tree, vr_values *);
/* Return True when a the format flag CHR has been used. */
bool get_flag (char chr) const
@@ -838,9 +844,9 @@ struct directive
or 0, whichever is greater. For a non-constant ARG in some range
set width to its range adjusting each bound to -1 if it's less.
For an indeterminate ARG set width to [0, INT_MAX]. */
- void set_width (tree arg)
+ void set_width (tree arg, vr_values *vr_values)
{
- get_int_range (arg, width, width + 1, true, 0);
+ get_int_range (arg, width, width + 1, true, 0, vr_values);
}
/* Set both bounds of the precision range to VAL. */
@@ -854,9 +860,9 @@ struct directive
or -1 whichever is greater. For a non-constant ARG in some range
set precision to its range adjusting each bound to -1 if it's less.
For an indeterminate ARG set precision to [-1, INT_MAX]. */
- void set_precision (tree arg)
+ void set_precision (tree arg, vr_values *vr_values)
{
- get_int_range (arg, prec, prec + 1, false, -1);
+ get_int_range (arg, prec, prec + 1, false, -1, vr_values);
}
/* Return true if both width and precision are known to be
@@ -1037,7 +1043,7 @@ struct sprintf_dom_walker::call_info
/* Return the result of formatting a no-op directive (such as '%n'). */
static fmtresult
-format_none (const directive &, tree)
+format_none (const directive &, tree, vr_values *)
{
fmtresult res (0);
return res;
@@ -1046,7 +1052,7 @@ format_none (const directive &, tree)
/* Return the result of formatting the '%%' directive. */
static fmtresult
-format_percent (const directive &, tree)
+format_percent (const directive &, tree, vr_values *)
{
fmtresult res (1);
return res;
@@ -1103,7 +1109,8 @@ build_intmax_type_nodes (tree *pintmax, tree *puintmax)
static bool
get_int_range (tree arg, HOST_WIDE_INT *pmin, HOST_WIDE_INT *pmax,
- bool absolute, HOST_WIDE_INT negbound)
+ bool absolute, HOST_WIDE_INT negbound,
+ class vr_values *vr_values)
{
/* The type of the result. */
const_tree type = integer_type_node;
@@ -1142,9 +1149,10 @@ get_int_range (tree arg, HOST_WIDE_INT *pmin, HOST_WIDE_INT *pmax,
&& TYPE_PRECISION (argtype) <= TYPE_PRECISION (type))
{
/* Try to determine the range of values of the integer argument. */
- wide_int min, max;
- enum value_range_type range_type = get_range_info (arg, &min, &max);
- if (range_type == VR_RANGE)
+ value_range *vr = vr_values->get_value_range (arg);
+ if (vr->type == VR_RANGE
+ && TREE_CODE (vr->min) == INTEGER_CST
+ && TREE_CODE (vr->max) == INTEGER_CST)
{
HOST_WIDE_INT type_min
= (TYPE_UNSIGNED (argtype)
@@ -1153,8 +1161,8 @@ get_int_range (tree arg, HOST_WIDE_INT *pmin, HOST_WIDE_INT *pmax,
HOST_WIDE_INT type_max = tree_to_uhwi (TYPE_MAX_VALUE (argtype));
- *pmin = min.to_shwi ();
- *pmax = max.to_shwi ();
+ *pmin = TREE_INT_CST_LOW (vr->min);
+ *pmax = TREE_INT_CST_LOW (vr->max);
if (*pmin < *pmax)
{
@@ -1174,7 +1182,8 @@ get_int_range (tree arg, HOST_WIDE_INT *pmin, HOST_WIDE_INT *pmax,
/* Handle an argument with an unknown range as if none had been
provided. */
if (unknown)
- return get_int_range (NULL_TREE, pmin, pmax, absolute, negbound);
+ return get_int_range (NULL_TREE, pmin, pmax, absolute,
+ negbound, vr_values);
}
/* Adjust each bound as specified by ABSOLUTE and NEGBOUND. */
@@ -1259,7 +1268,7 @@ adjust_range_for_overflow (tree dirtype, tree *argmin, tree *argmax)
used when the directive argument or its value isn't known. */
static fmtresult
-format_integer (const directive &dir, tree arg)
+format_integer (const directive &dir, tree arg, vr_values *vr_values)
{
tree intmax_type_node;
tree uintmax_type_node;
@@ -1442,12 +1451,13 @@ format_integer (const directive &dir, tree arg)
{
/* Try to determine the range of values of the integer argument
(range information is not available for pointers). */
- wide_int min, max;
- enum value_range_type range_type = get_range_info (arg, &min, &max);
- if (range_type == VR_RANGE)
+ value_range *vr = vr_values->get_value_range (arg);
+ if (vr->type == VR_RANGE
+ && TREE_CODE (vr->min) == INTEGER_CST
+ && TREE_CODE (vr->max) == INTEGER_CST)
{
- argmin = wide_int_to_tree (argtype, min);
- argmax = wide_int_to_tree (argtype, max);
+ argmin = vr->min;
+ argmax = vr->max;
/* Set KNOWNRANGE if the argument is in a known subrange
of the directive's type and neither width nor precision
@@ -1460,11 +1470,12 @@ format_integer (const directive &dir, tree arg)
res.argmin = argmin;
res.argmax = argmax;
}
- else if (range_type == VR_ANTI_RANGE)
+ else if (vr->type == VR_ANTI_RANGE)
{
/* Handle anti-ranges if/when bug 71690 is resolved. */
}
- else if (range_type == VR_VARYING)
+ else if (vr->type == VR_VARYING
+ || vr->type == VR_UNDEFINED)
{
/* The argument here may be the result of promoting the actual
argument to int. Try to determine the type of the actual
@@ -1477,7 +1488,7 @@ format_integer (const directive &dir, tree arg)
if (code == INTEGER_CST)
{
arg = gimple_assign_rhs1 (def);
- return format_integer (dir, arg);
+ return format_integer (dir, arg, vr_values);
}
if (code == NOP_EXPR)
@@ -1522,16 +1533,16 @@ format_integer (const directive &dir, tree arg)
/* For unsigned conversions/directives or signed when
the minimum is positive, use the minimum and maximum to compute
the shortest and longest output, respectively. */
- res.range.min = format_integer (dir, argmin).range.min;
- res.range.max = format_integer (dir, argmax).range.max;
+ res.range.min = format_integer (dir, argmin, vr_values).range.min;
+ res.range.max = format_integer (dir, argmax, vr_values).range.max;
}
else if (tree_int_cst_sgn (argmax) < 0)
{
/* For signed conversions/directives if maximum is negative,
use the minimum as the longest output and maximum as the
shortest output. */
- res.range.min = format_integer (dir, argmax).range.min;
- res.range.max = format_integer (dir, argmin).range.max;
+ res.range.min = format_integer (dir, argmax, vr_values).range.min;
+ res.range.max = format_integer (dir, argmin, vr_values).range.max;
}
else
{
@@ -1539,9 +1550,12 @@ format_integer (const directive &dir, tree arg)
as the shortest output and for the longest output compute the
length of the output of both minimum and maximum and pick the
longer. */
- unsigned HOST_WIDE_INT max1 = format_integer (dir, argmin).range.max;
- unsigned HOST_WIDE_INT max2 = format_integer (dir, argmax).range.max;
- res.range.min = format_integer (dir, integer_zero_node).range.min;
+ unsigned HOST_WIDE_INT max1
+ = format_integer (dir, argmin, vr_values).range.max;
+ unsigned HOST_WIDE_INT max2
+ = format_integer (dir, argmax, vr_values).range.max;
+ res.range.min
+ = format_integer (dir, integer_zero_node, vr_values).range.min;
res.range.max = MAX (max1, max2);
}
@@ -1882,7 +1896,7 @@ format_floating (const directive &dir, const HOST_WIDE_INT prec[2])
ARG. */
static fmtresult
-format_floating (const directive &dir, tree arg)
+format_floating (const directive &dir, tree arg, vr_values *)
{
HOST_WIDE_INT prec[] = { dir.prec[0], dir.prec[1] };
tree type = (dir.modifier == FMT_LEN_L || dir.modifier == FMT_LEN_ll
@@ -2122,7 +2136,7 @@ get_string_length (tree str)
vsprinf). */
static fmtresult
-format_character (const directive &dir, tree arg)
+format_character (const directive &dir, tree arg, vr_values *vr_values)
{
fmtresult res;
@@ -2134,7 +2148,7 @@ format_character (const directive &dir, tree arg)
res.range.min = 0;
HOST_WIDE_INT min, max;
- if (get_int_range (arg, &min, &max, false, 0))
+ if (get_int_range (arg, &min, &max, false, 0, vr_values))
{
if (min == 0 && max == 0)
{
@@ -2187,7 +2201,7 @@ format_character (const directive &dir, tree arg)
vsprinf). */
static fmtresult
-format_string (const directive &dir, tree arg)
+format_string (const directive &dir, tree arg, vr_values *)
{
fmtresult res;
@@ -2348,7 +2362,7 @@ format_string (const directive &dir, tree arg)
/* Format plain string (part of the format string itself). */
static fmtresult
-format_plain (const directive &dir, tree)
+format_plain (const directive &dir, tree, vr_values *)
{
fmtresult res (dir.len);
return res;
@@ -2729,7 +2743,8 @@ maybe_warn (substring_loc &dirloc, location_t argloc,
static bool
format_directive (const sprintf_dom_walker::call_info &info,
- format_result *res, const directive &dir)
+ format_result *res, const directive &dir,
+ class vr_values *vr_values)
{
/* Offset of the beginning of the directive from the beginning
of the format string. */
@@ -2754,7 +2769,7 @@ format_directive (const sprintf_dom_walker::call_info &info,
return false;
/* Compute the range of lengths of the formatted output. */
- fmtresult fmtres = dir.fmtfunc (dir, dir.arg);
+ fmtresult fmtres = dir.fmtfunc (dir, dir.arg, vr_values);
/* Record whether the output of all directives is known to be
bounded by some maximum, implying that their arguments are
@@ -3020,7 +3035,8 @@ format_directive (const sprintf_dom_walker::call_info &info,
static size_t
parse_directive (sprintf_dom_walker::call_info &info,
directive &dir, format_result *res,
- const char *str, unsigned *argno)
+ const char *str, unsigned *argno,
+ vr_values *vr_values)
{
const char *pcnt = strchr (str, target_percent);
dir.beg = str;
@@ -3338,7 +3354,7 @@ parse_directive (sprintf_dom_walker::call_info &info,
if (star_width)
{
if (INTEGRAL_TYPE_P (TREE_TYPE (star_width)))
- dir.set_width (star_width);
+ dir.set_width (star_width, vr_values);
else
{
/* Width specified by a va_list takes on the range [0, -INT_MIN]
@@ -3371,7 +3387,7 @@ parse_directive (sprintf_dom_walker::call_info &info,
if (star_precision)
{
if (INTEGRAL_TYPE_P (TREE_TYPE (star_precision)))
- dir.set_precision (star_precision);
+ dir.set_precision (star_precision, vr_values);
else
{
/* Precision specified by a va_list takes on the range [-1, INT_MAX]
@@ -3456,7 +3472,7 @@ parse_directive (sprintf_dom_walker::call_info &info,
bool
sprintf_dom_walker::compute_format_length (call_info &info,
- format_result *res)
+ format_result *res)
{
if (dump_file)
{
@@ -3493,10 +3509,12 @@ sprintf_dom_walker::compute_format_length (call_info &info,
directive dir = directive ();
dir.dirno = dirno;
- size_t n = parse_directive (info, dir, res, pf, &argno);
+ size_t n = parse_directive (info, dir, res, pf, &argno,
+ evrp_range_analyzer.get_vr_values ());
/* Return failure if the format function fails. */
- if (!format_directive (info, res, dir))
+ if (!format_directive (info, res, dir,
+ evrp_range_analyzer.get_vr_values ()))
return false;
/* Return success the directive is zero bytes long and it's
@@ -3898,16 +3916,13 @@ sprintf_dom_walker::handle_gimple_call (gimple_stmt_iterator *gsi)
/* Try to determine the range of values of the argument
and use the greater of the two at level 1 and the smaller
of them at level 2. */
- wide_int min, max;
- enum value_range_type range_type
- = get_range_info (size, &min, &max);
- if (range_type == VR_RANGE)
- {
- dstsize
- = (warn_level < 2
- ? wi::fits_uhwi_p (max) ? max.to_uhwi () : max.to_shwi ()
- : wi::fits_uhwi_p (min) ? min.to_uhwi () : min.to_shwi ());
- }
+ value_range *vr = evrp_range_analyzer.get_value_range (size);
+ if (vr->type == VR_RANGE
+ && TREE_CODE (vr->min) == INTEGER_CST
+ && TREE_CODE (vr->max) == INTEGER_CST)
+ dstsize = (warn_level < 2
+ ? TREE_INT_CST_LOW (vr->max)
+ : TREE_INT_CST_LOW (vr->min));
/* The destination size is not constant. If the function is
bounded (e.g., snprintf) a lower bound of zero doesn't
@@ -4012,11 +4027,15 @@ sprintf_dom_walker::handle_gimple_call (gimple_stmt_iterator *gsi)
edge
sprintf_dom_walker::before_dom_children (basic_block bb)
{
+ evrp_range_analyzer.enter (bb);
for (gimple_stmt_iterator si = gsi_start_bb (bb); !gsi_end_p (si); )
{
/* Iterate over statements, looking for function calls. */
gimple *stmt = gsi_stmt (si);
+ /* First record ranges generated by this statement. */
+ evrp_range_analyzer.record_ranges_from_stmt (stmt, false);
+
if (is_gimple_call (stmt) && handle_gimple_call (&si))
/* If handle_gimple_call returns true, the iterator is
already pointing to the next statement. */
@@ -4027,6 +4046,12 @@ sprintf_dom_walker::before_dom_children (basic_block bb)
return NULL;
}
+void
+sprintf_dom_walker::after_dom_children (basic_block bb)
+{
+ evrp_range_analyzer.leave (bb);
+}
+
/* Execute the pass for function FUN. */
unsigned int
diff --git a/gcc/gimple-ssa-store-merging.c b/gcc/gimple-ssa-store-merging.c
index 92ddfb55543..7b56031fd47 100644
--- a/gcc/gimple-ssa-store-merging.c
+++ b/gcc/gimple-ssa-store-merging.c
@@ -1891,12 +1891,11 @@ merged_store_group::do_merge (store_immediate_info *info)
void
merged_store_group::merge_into (store_immediate_info *info)
{
- unsigned HOST_WIDE_INT wid = info->bitsize;
/* Make sure we're inserting in the position we think we're inserting. */
gcc_assert (info->bitpos >= start + width
&& info->bitregion_start <= bitregion_end);
- width += wid;
+ width = info->bitpos + info->bitsize - start;
do_merge (info);
}
@@ -1909,7 +1908,7 @@ merged_store_group::merge_overlapping (store_immediate_info *info)
{
/* If the store extends the size of the group, extend the width. */
if (info->bitpos + info->bitsize > start + width)
- width += info->bitpos + info->bitsize - (start + width);
+ width = info->bitpos + info->bitsize - start;
do_merge (info);
}
@@ -2304,6 +2303,55 @@ gather_bswap_load_refs (vec<tree> *refs, tree val)
}
}
+/* Check if there are any stores in M_STORE_INFO after index I
+ (where M_STORE_INFO must be sorted by sort_by_bitpos) that overlap
+ a potential group ending with END that have their order
+ smaller than LAST_ORDER. RHS_CODE is the kind of store in the
+ group. Return true if there are no such stores.
+ Consider:
+ MEM[(long long int *)p_28] = 0;
+ MEM[(long long int *)p_28 + 8B] = 0;
+ MEM[(long long int *)p_28 + 16B] = 0;
+ MEM[(long long int *)p_28 + 24B] = 0;
+ _129 = (int) _130;
+ MEM[(int *)p_28 + 8B] = _129;
+ MEM[(int *)p_28].a = -1;
+ We already have
+ MEM[(long long int *)p_28] = 0;
+ MEM[(int *)p_28].a = -1;
+ stmts in the current group and need to consider if it is safe to
+ add MEM[(long long int *)p_28 + 8B] = 0; store into the same group.
+ There is an overlap between that store and the MEM[(int *)p_28 + 8B] = _129;
+ store though, so if we add the MEM[(long long int *)p_28 + 8B] = 0;
+ into the group and merging of those 3 stores is successful, merged
+ stmts will be emitted at the latest store from that group, i.e.
+ LAST_ORDER, which is the MEM[(int *)p_28].a = -1; store.
+ The MEM[(int *)p_28 + 8B] = _129; store that originally follows
+ the MEM[(long long int *)p_28 + 8B] = 0; would now be before it,
+ so we need to refuse merging MEM[(long long int *)p_28 + 8B] = 0;
+ into the group. That way it will be its own store group and will
+ not be touched. If RHS_CODE is INTEGER_CST and there are overlapping
+ INTEGER_CST stores, those are mergeable using merge_overlapping,
+ so don't return false for those. */
+
+static bool
+check_no_overlap (vec<store_immediate_info *> m_store_info, unsigned int i,
+ enum tree_code rhs_code, unsigned int last_order,
+ unsigned HOST_WIDE_INT end)
+{
+ unsigned int len = m_store_info.length ();
+ for (++i; i < len; ++i)
+ {
+ store_immediate_info *info = m_store_info[i];
+ if (info->bitpos >= end)
+ break;
+ if (info->order < last_order
+ && (rhs_code != INTEGER_CST || info->rhs_code != INTEGER_CST))
+ return false;
+ }
+ return true;
+}
+
/* Return true if m_store_info[first] and at least one following store
form a group which store try_size bitsize value which is byte swapped
from a memory load or some value, or identity from some value.
@@ -2375,6 +2423,7 @@ imm_store_chain_info::try_coalesce_bswap (merged_store_group *merged_store,
unsigned int last_order = merged_store->last_order;
gimple *first_stmt = merged_store->first_stmt;
gimple *last_stmt = merged_store->last_stmt;
+ unsigned HOST_WIDE_INT end = merged_store->start + merged_store->width;
store_immediate_info *infof = m_store_info[first];
for (unsigned int i = first; i <= last; ++i)
@@ -2413,25 +2462,23 @@ imm_store_chain_info::try_coalesce_bswap (merged_store_group *merged_store,
}
else
{
- if (n.base_addr)
+ if (n.base_addr && n.vuse != this_n.vuse)
{
- if (n.vuse != this_n.vuse)
- {
- if (vuse_store == 0)
- return false;
- vuse_store = 1;
- }
- if (info->order > last_order)
- {
- last_order = info->order;
- last_stmt = info->stmt;
- }
- else if (info->order < first_order)
- {
- first_order = info->order;
- first_stmt = info->stmt;
- }
+ if (vuse_store == 0)
+ return false;
+ vuse_store = 1;
}
+ if (info->order > last_order)
+ {
+ last_order = info->order;
+ last_stmt = info->stmt;
+ }
+ else if (info->order < first_order)
+ {
+ first_order = info->order;
+ first_stmt = info->stmt;
+ }
+ end = MAX (end, info->bitpos + info->bitsize);
ins_stmt = perform_symbolic_merge (ins_stmt, &n, info->ins_stmt,
&this_n, &n);
@@ -2452,6 +2499,9 @@ imm_store_chain_info::try_coalesce_bswap (merged_store_group *merged_store,
if (n.base_addr == NULL_TREE && !is_gimple_val (n.src))
return false;
+ if (!check_no_overlap (m_store_info, last, LROTATE_EXPR, last_order, end))
+ return false;
+
/* Don't handle memory copy this way if normal non-bswap processing
would handle it too. */
if (n.n == cmpnop && (unsigned) n.n_ops == last - first + 1)
@@ -2633,7 +2683,13 @@ imm_store_chain_info::coalesce_immediate_stores ()
: !info->ops[0].base_addr)
&& (infof->ops[1].base_addr
? compatible_load_p (merged_store, info, base_addr, 1)
- : !info->ops[1].base_addr))
+ : !info->ops[1].base_addr)
+ && check_no_overlap (m_store_info, i, info->rhs_code,
+ MAX (merged_store->last_order,
+ info->order),
+ MAX (merged_store->start
+ + merged_store->width,
+ info->bitpos + info->bitsize)))
{
merged_store->merge_into (info);
continue;
diff --git a/gcc/gimple-ssa-warn-restrict.c b/gcc/gimple-ssa-warn-restrict.c
index 5b3b9691313..9d5c6e04370 100644
--- a/gcc/gimple-ssa-warn-restrict.c
+++ b/gcc/gimple-ssa-warn-restrict.c
@@ -158,6 +158,14 @@ struct builtin_memref
builtin_memref (tree, tree);
tree offset_out_of_bounds (int, offset_int[2]) const;
+
+private:
+
+ /* Ctor helper to set or extend OFFRANGE based on argument. */
+ void extend_offset_range (tree);
+
+ /* Ctor helper to determine BASE and OFFRANGE from argument. */
+ void set_base_and_offset (tree);
};
/* Description of a memory access by a raw memory or string built-in
@@ -235,11 +243,120 @@ builtin_memref::builtin_memref (tree expr, tree size)
const offset_int maxobjsize = tree_to_shwi (max_object_size ());
+ /* Find the BASE object or pointer referenced by EXPR and set
+ the offset range OFFRANGE in the process. */
+ set_base_and_offset (expr);
+
+ if (size)
+ {
+ tree range[2];
+ /* Determine the size range, allowing for the result to be [0, 0]
+ for SIZE in the anti-range ~[0, N] where N >= PTRDIFF_MAX. */
+ get_size_range (size, range, true);
+ sizrange[0] = wi::to_offset (range[0]);
+ sizrange[1] = wi::to_offset (range[1]);
+ /* get_size_range returns SIZE_MAX for the maximum size.
+ Constrain it to the real maximum of PTRDIFF_MAX. */
+ if (sizrange[1] > maxobjsize)
+ sizrange[1] = maxobjsize;
+ }
+ else
+ sizrange[1] = maxobjsize;
+
+ tree basetype = TREE_TYPE (base);
+ if (DECL_P (base) && TREE_CODE (basetype) == ARRAY_TYPE)
+ {
+ /* If the offset could be in range of the referenced object
+ constrain its bounds so neither exceeds those of the object. */
+ if (offrange[0] < 0 && offrange[1] > 0)
+ offrange[0] = 0;
+
+ offset_int maxoff = maxobjsize;
+ if (ref && array_at_struct_end_p (ref))
+ ; /* Use the maximum possible offset for last member arrays. */
+ else if (tree basesize = TYPE_SIZE_UNIT (basetype))
+ maxoff = wi::to_offset (basesize);
+
+ if (offrange[0] >= 0)
+ {
+ if (offrange[1] < 0)
+ offrange[1] = offrange[0] <= maxoff ? maxoff : maxobjsize;
+ else if (offrange[0] <= maxoff && offrange[1] > maxoff)
+ offrange[1] = maxoff;
+ }
+ }
+}
+
+/* Ctor helper to set or extend OFFRANGE based on the OFFSET argument. */
+
+void
+builtin_memref::extend_offset_range (tree offset)
+{
+ const offset_int maxobjsize = tree_to_shwi (max_object_size ());
+
+ if (TREE_CODE (offset) == INTEGER_CST)
+ {
+ offset_int off = int_cst_value (offset);
+ if (off != 0)
+ {
+ offrange[0] += off;
+ offrange[1] += off;
+ }
+ return;
+ }
+
+ if (TREE_CODE (offset) == SSA_NAME)
+ {
+ wide_int min, max;
+ value_range_type rng = get_range_info (offset, &min, &max);
+ if (rng == VR_RANGE)
+ {
+ offrange[0] += offset_int::from (min, SIGNED);
+ offrange[1] += offset_int::from (max, SIGNED);
+ }
+ else if (rng == VR_ANTI_RANGE)
+ {
+ offrange[0] += offset_int::from (max + 1, SIGNED);
+ offrange[1] += offset_int::from (min - 1, SIGNED);
+ }
+ else
+ {
+ gimple *stmt = SSA_NAME_DEF_STMT (offset);
+ tree type;
+ if (is_gimple_assign (stmt)
+ && gimple_assign_rhs_code (stmt) == NOP_EXPR
+ && (type = TREE_TYPE (gimple_assign_rhs1 (stmt)))
+ && INTEGRAL_TYPE_P (type))
+ {
+ /* Use the bounds of the type of the NOP_EXPR operand
+ even if it's signed. The result doesn't trigger
+ warnings but makes their output more readable. */
+ offrange[0] += wi::to_offset (TYPE_MIN_VALUE (type));
+ offrange[1] += wi::to_offset (TYPE_MAX_VALUE (type));
+ }
+ else
+ offrange[1] += maxobjsize;
+ }
+ return;
+ }
+
+ offrange[1] += maxobjsize;
+}
+
+/* Determines the base object or pointer of the reference EXPR
+ and the offset range from the beginning of the base. */
+
+void
+builtin_memref::set_base_and_offset (tree expr)
+{
+ const offset_int maxobjsize = tree_to_shwi (max_object_size ());
+
if (TREE_CODE (expr) == SSA_NAME)
{
/* Try to tease the offset out of the pointer. */
gimple *stmt = SSA_NAME_DEF_STMT (expr);
- if (gimple_assign_single_p (stmt)
+ if (!base
+ && gimple_assign_single_p (stmt)
&& gimple_assign_rhs_code (stmt) == ADDR_EXPR)
expr = gimple_assign_rhs1 (stmt);
else if (is_gimple_assign (stmt))
@@ -250,146 +367,88 @@ builtin_memref::builtin_memref (tree expr, tree size)
tree rhs = gimple_assign_rhs1 (stmt);
if (POINTER_TYPE_P (TREE_TYPE (rhs)))
expr = gimple_assign_rhs1 (stmt);
+ else
+ {
+ base = expr;
+ return;
+ }
}
else if (code == POINTER_PLUS_EXPR)
{
expr = gimple_assign_rhs1 (stmt);
tree offset = gimple_assign_rhs2 (stmt);
- if (TREE_CODE (offset) == INTEGER_CST)
- {
- offset_int off = int_cst_value (offset);
- offrange[0] = off;
- offrange[1] = off;
-
- if (TREE_CODE (expr) == SSA_NAME)
- {
- gimple *stmt = SSA_NAME_DEF_STMT (expr);
- if (gimple_assign_single_p (stmt)
- && gimple_assign_rhs_code (stmt) == ADDR_EXPR)
- expr = gimple_assign_rhs1 (stmt);
- }
- }
- else if (TREE_CODE (offset) == SSA_NAME)
- {
- wide_int min, max;
- value_range_type rng = get_range_info (offset, &min, &max);
- if (rng == VR_RANGE)
- {
- offrange[0] = offset_int::from (min, SIGNED);
- offrange[1] = offset_int::from (max, SIGNED);
- }
- else if (rng == VR_ANTI_RANGE)
- {
- offrange[0] = offset_int::from (max + 1, SIGNED);
- offrange[1] = offset_int::from (min - 1, SIGNED);
- }
- else
- {
- gimple *stmt = SSA_NAME_DEF_STMT (offset);
- tree type;
- if (is_gimple_assign (stmt)
- && gimple_assign_rhs_code (stmt) == NOP_EXPR
- && (type = TREE_TYPE (gimple_assign_rhs1 (stmt)))
- && INTEGRAL_TYPE_P (type))
- {
- /* Use the bounds of the type of the NOP_EXPR operand
- even if it's signed. The result doesn't trigger
- warnings but makes their output more readable. */
- offrange[0] = wi::to_offset (TYPE_MIN_VALUE (type));
- offrange[1] = wi::to_offset (TYPE_MAX_VALUE (type));
- }
- else
- offrange[1] = maxobjsize;
- }
- }
- else
- offrange[1] = maxobjsize;
+ extend_offset_range (offset);
+ }
+ else
+ {
+ base = expr;
+ return;
}
}
+ else
+ {
+ base = expr;
+ return;
+ }
}
if (TREE_CODE (expr) == ADDR_EXPR)
- {
- poly_int64 off;
- tree op = TREE_OPERAND (expr, 0);
+ expr = TREE_OPERAND (expr, 0);
- /* Determine the base object or pointer of the reference
- and its constant offset from the beginning of the base. */
- base = get_addr_base_and_unit_offset (op, &off);
+ poly_int64 bitsize, bitpos;
+ tree var_off;
+ machine_mode mode;
+ int sign, reverse, vol;
- HOST_WIDE_INT const_off;
- if (base && off.is_constant (&const_off))
- {
- offrange[0] += const_off;
- offrange[1] += const_off;
+ /* Determine the base object or pointer of the reference and
+ the constant bit offset from the beginning of the base.
+ If the offset has a non-constant component, it will be in
+ VAR_OFF. MODE, SIGN, REVERSE, and VOL are write only and
+ unused here. */
+ base = get_inner_reference (expr, &bitsize, &bitpos, &var_off,
+ &mode, &sign, &reverse, &vol);
- /* Stash the reference for offset validation. */
- ref = op;
+ poly_int64 bytepos = exact_div (bitpos, BITS_PER_UNIT);
- /* Also stash the constant offset for offset validation. */
- if (TREE_CODE (op) == COMPONENT_REF)
- refoff = const_off;
- }
- else
- {
- size = NULL_TREE;
- base = get_base_address (TREE_OPERAND (expr, 0));
- }
+ HOST_WIDE_INT const_off;
+ if (!base || !bytepos.is_constant (&const_off))
+ {
+ base = get_base_address (TREE_OPERAND (expr, 0));
+ return;
}
- if (!base)
- base = build2 (MEM_REF, char_type_node, expr, null_pointer_node);
+ offrange[0] += const_off;
+ offrange[1] += const_off;
- if (TREE_CODE (base) == MEM_REF)
+ if (var_off)
{
- offset_int off;
- if (mem_ref_offset (base).is_constant (&off))
+ if (TREE_CODE (var_off) == INTEGER_CST)
{
- refoff += off;
- offrange[0] += off;
- offrange[1] += off;
+ offset_int cstoff = wi::to_offset (var_off);
+ offrange[0] += cstoff;
+ offrange[1] += cstoff;
}
else
- size = NULL_TREE;
- base = TREE_OPERAND (base, 0);
+ offrange[1] += maxobjsize;
}
- if (TREE_CODE (base) == SSA_NAME)
- if (gimple *stmt = SSA_NAME_DEF_STMT (base))
- {
- enum gimple_code code = gimple_code (stmt);
- if (code == GIMPLE_ASSIGN)
- if (gimple_assign_rhs_code (stmt) == POINTER_PLUS_EXPR)
- {
- base = gimple_assign_rhs1 (stmt);
+ /* Stash the reference for offset validation. */
+ ref = expr;
- tree offset = gimple_assign_rhs2 (stmt);
- if (TREE_CODE (offset) == INTEGER_CST)
- {
- offset_int off = int_cst_value (offset);
- refoff += off;
- offrange[0] += off;
- offrange[1] += off;
- }
- }
- }
+ /* Also stash the constant offset for offset validation. */
+ if (TREE_CODE (expr) == COMPONENT_REF)
+ refoff = const_off;
- if (size)
+ if (TREE_CODE (base) == MEM_REF)
{
- tree range[2];
- /* Determine the size range, allowing for the result to be [0, 0]
- for SIZE in the anti-range ~[0, N] where N >= PTRDIFF_MAX. */
- get_size_range (size, range, true);
- sizrange[0] = wi::to_offset (range[0]);
- sizrange[1] = wi::to_offset (range[1]);
- /* get_size_range returns SIZE_MAX for the maximum size.
- Constrain it to the real maximum of PTRDIFF_MAX. */
- if (sizrange[1] > maxobjsize)
- sizrange[1] = maxobjsize;
+ tree memrefoff = TREE_OPERAND (base, 1);
+ extend_offset_range (memrefoff);
+ base = TREE_OPERAND (base, 0);
}
- else
- sizrange[1] = maxobjsize;
+
+ if (TREE_CODE (base) == SSA_NAME)
+ set_base_and_offset (base);
}
/* Return error_mark_node if the signed offset exceeds the bounds
@@ -856,10 +915,18 @@ builtin_access::generic_overlap ()
the other. */
bool depends_p = detect_overlap != &builtin_access::generic_overlap;
- if (!overlap_certain
- && !dstref->strbounded_p
- && !depends_p)
- return false;
+ if (!overlap_certain)
+ {
+ if (!dstref->strbounded_p && !depends_p)
+ return false;
+
+ /* There's no way to distinguish an access to the same member
+ of a structure from one to two distinct members of the same
+ structure. Give up to avoid excessive false positives. */
+ tree basetype = TREE_TYPE (TREE_TYPE (dstref->base));
+ if (RECORD_OR_UNION_TYPE_P (basetype))
+ return false;
+ }
/* True for stpcpy and strcpy. */
bool stxcpy_p = (!dstref->strbounded_p
@@ -1070,14 +1137,35 @@ builtin_access::strcat_overlap ()
return false;
/* When strcat overlap is certain it is always a single byte:
- the terminatinn NUL, regardless of offsets and sizes. When
+ the terminating NUL, regardless of offsets and sizes. When
overlap is only possible its range is [0, 1]. */
acs.ovlsiz[0] = dstref->sizrange[0] == dstref->sizrange[1] ? 1 : 0;
acs.ovlsiz[1] = 1;
- acs.ovloff[0] = (dstref->sizrange[0] + dstref->offrange[0]).to_shwi ();
- acs.ovloff[1] = (dstref->sizrange[1] + dstref->offrange[1]).to_shwi ();
- acs.sizrange[0] = wi::smax (acs.dstsiz[0], srcref->sizrange[0]).to_shwi ();
+ offset_int endoff = dstref->offrange[0] + dstref->sizrange[0];
+ if (endoff <= srcref->offrange[0])
+ acs.ovloff[0] = wi::smin (maxobjsize, srcref->offrange[0]).to_shwi ();
+ else
+ acs.ovloff[0] = wi::smin (maxobjsize, endoff).to_shwi ();
+
+ acs.sizrange[0] = wi::smax (wi::abs (endoff - srcref->offrange[0]) + 1,
+ srcref->sizrange[0]).to_shwi ();
+ if (dstref->offrange[0] == dstref->offrange[1])
+ {
+ if (srcref->offrange[0] == srcref->offrange[1])
+ acs.ovloff[1] = acs.ovloff[0];
+ else
+ acs.ovloff[1]
+ = wi::smin (maxobjsize,
+ srcref->offrange[1] + srcref->sizrange[1]).to_shwi ();
+ }
+ else
+ acs.ovloff[1]
+ = wi::smin (maxobjsize,
+ dstref->offrange[1] + dstref->sizrange[1]).to_shwi ();
+
+ if (acs.sizrange[0] == 0)
+ acs.sizrange[0] = 1;
acs.sizrange[1] = wi::smax (acs.dstsiz[1], srcref->sizrange[1]).to_shwi ();
return true;
}
@@ -1215,8 +1303,12 @@ builtin_access::overlap ()
/* Call the appropriate function to determine the overlap. */
if ((this->*detect_overlap) ())
{
- sizrange[0] = wi::smax (acs.dstsiz[0], srcref->sizrange[0]).to_shwi ();
- sizrange[1] = wi::smax (acs.dstsiz[1], srcref->sizrange[1]).to_shwi ();
+ if (!sizrange[1])
+ {
+ /* Unless the access size range has already been set, do so here. */
+ sizrange[0] = wi::smax (acs.dstsiz[0], srcref->sizrange[0]).to_shwi ();
+ sizrange[1] = wi::smax (acs.dstsiz[1], srcref->sizrange[1]).to_shwi ();
+ }
return true;
}
@@ -1392,10 +1484,17 @@ maybe_diag_overlap (location_t loc, gcall *call, builtin_access &acs)
/* Use more concise wording when one of the offsets is unbounded
to avoid confusing the user with large and mostly meaningless
numbers. */
- bool open_range = ((dstref.offrange[0] == -maxobjsize - 1
- && dstref.offrange[1] == maxobjsize)
- || (srcref.offrange[0] == -maxobjsize - 1
- && srcref.offrange[1] == maxobjsize));
+ bool open_range;
+ if (DECL_P (dstref.base) && TREE_CODE (TREE_TYPE (dstref.base)) == ARRAY_TYPE)
+ open_range = ((dstref.offrange[0] == 0
+ && dstref.offrange[1] == maxobjsize)
+ || (srcref.offrange[0] == 0
+ && srcref.offrange[1] == maxobjsize));
+ else
+ open_range = ((dstref.offrange[0] == -maxobjsize - 1
+ && dstref.offrange[1] == maxobjsize)
+ || (srcref.offrange[0] == -maxobjsize - 1
+ && srcref.offrange[1] == maxobjsize));
if (sizrange[0] == sizrange[1] || sizrange[1] == 1)
{
diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE
index baf77e31e70..88291d585f9 100644
--- a/gcc/go/gofrontend/MERGE
+++ b/gcc/go/gofrontend/MERGE
@@ -1,4 +1,4 @@
-5d5ea2fd05dbf369ccc53c93d4846623cdea0c47
+8b3d6091801d485c74a9c92740c69673e39160b0
The first line of this file holds the git revision number of the last
merge done from the gofrontend repository.
diff --git a/gcc/go/gofrontend/expressions.cc b/gcc/go/gofrontend/expressions.cc
index 9792faaa0e4..10ab5b50db9 100644
--- a/gcc/go/gofrontend/expressions.cc
+++ b/gcc/go/gofrontend/expressions.cc
@@ -11696,7 +11696,7 @@ Field_reference_expression::do_lower(Gogo* gogo, Named_object* function,
Location loc = this->location();
std::string s = "fieldtrack \"";
- Named_type* nt = this->expr_->type()->named_type();
+ Named_type* nt = this->expr_->type()->unalias()->named_type();
if (nt == NULL || nt->named_object()->package() == NULL)
s.append(gogo->pkgpath());
else
diff --git a/gcc/go/gofrontend/types.cc b/gcc/go/gofrontend/types.cc
index 40eccfcadca..11924e6e224 100644
--- a/gcc/go/gofrontend/types.cc
+++ b/gcc/go/gofrontend/types.cc
@@ -597,10 +597,10 @@ Type::are_compatible_for_comparison(bool is_equality_op, const Type *t1,
return false;
}
- if (t1->named_type() != NULL)
- return t1->named_type()->named_type_is_comparable(reason);
- else if (t2->named_type() != NULL)
- return t2->named_type()->named_type_is_comparable(reason);
+ if (t1->unalias()->named_type() != NULL)
+ return t1->unalias()->named_type()->named_type_is_comparable(reason);
+ else if (t2->unalias()->named_type() != NULL)
+ return t2->unalias()->named_type()->named_type_is_comparable(reason);
else if (t1->struct_type() != NULL)
{
if (t1->struct_type()->is_struct_incomparable())
@@ -678,6 +678,12 @@ Type::are_assignable(const Type* lhs, const Type* rhs, std::string* reason)
if (Type::are_identical(lhs, rhs, true, reason))
return true;
+ // Ignore aliases, except for error messages.
+ const Type* lhs_orig = lhs;
+ const Type* rhs_orig = rhs;
+ lhs = lhs->unalias();
+ rhs = rhs->unalias();
+
// The types are assignable if they have identical underlying types
// and either LHS or RHS is not a named type.
if (((lhs->named_type() != NULL && rhs->named_type() == NULL)
@@ -740,15 +746,16 @@ Type::are_assignable(const Type* lhs, const Type* rhs, std::string* reason)
{
if (rhs->interface_type() != NULL)
reason->assign(_("need explicit conversion"));
- else if (lhs->named_type() != NULL && rhs->named_type() != NULL)
+ else if (lhs_orig->named_type() != NULL
+ && rhs_orig->named_type() != NULL)
{
- size_t len = (lhs->named_type()->name().length()
- + rhs->named_type()->name().length()
+ size_t len = (lhs_orig->named_type()->name().length()
+ + rhs_orig->named_type()->name().length()
+ 100);
char* buf = new char[len];
snprintf(buf, len, _("cannot use type %s as type %s"),
- rhs->named_type()->message_name().c_str(),
- lhs->named_type()->message_name().c_str());
+ rhs_orig->named_type()->message_name().c_str(),
+ lhs_orig->named_type()->message_name().c_str());
reason->assign(buf);
delete[] buf;
}
@@ -768,6 +775,10 @@ Type::are_convertible(const Type* lhs, const Type* rhs, std::string* reason)
if (Type::are_assignable(lhs, rhs, reason))
return true;
+ // Ignore aliases.
+ lhs = lhs->unalias();
+ rhs = rhs->unalias();
+
// A pointer to a regular type may not be converted to a pointer to
// a type that may not live in the heap, except when converting from
// unsafe.Pointer.
diff --git a/gcc/graphite-scop-detection.c b/gcc/graphite-scop-detection.c
index 43716f18448..70cb773186a 100644
--- a/gcc/graphite-scop-detection.c
+++ b/gcc/graphite-scop-detection.c
@@ -1027,7 +1027,23 @@ scop_detection::stmt_simple_for_scop_p (sese_l scop, gimple *stmt,
case GIMPLE_ASSIGN:
case GIMPLE_CALL:
- return true;
+ {
+ tree op;
+ ssa_op_iter i;
+ /* Verify that if we can analyze operands at their def site we
+ also can represent them when analyzed at their uses. */
+ FOR_EACH_SSA_TREE_OPERAND (op, stmt, i, SSA_OP_USE)
+ if (scev_analyzable_p (op, scop)
+ && !graphite_can_represent_expr (scop, bb->loop_father, op))
+ {
+ DEBUG_PRINT (dp << "[scop-detection-fail] "
+ << "Graphite cannot represent stmt:\n";
+ print_gimple_stmt (dump_file, stmt, 0,
+ TDF_VOPS | TDF_MEMSYMS));
+ return false;
+ }
+ return true;
+ }
default:
/* These nodes cut a new scope. */
diff --git a/gcc/hash-table.h b/gcc/hash-table.h
index 8e22cbb660a..706b2370e23 100644
--- a/gcc/hash-table.h
+++ b/gcc/hash-table.h
@@ -804,8 +804,12 @@ hash_table<Descriptor, Allocator>::empty_slow ()
}
else
{
+#ifndef BROKEN_VALUE_INITIALIZATION
for ( ; size; ++entries, --size)
*entries = value_type ();
+#else
+ memset (entries, 0, size * sizeof (value_type));
+#endif
}
m_n_deleted = 0;
m_n_elements = 0;
diff --git a/gcc/insn-notes.def b/gcc/insn-notes.def
index 9cac5f1549a..0afd47504ec 100644
--- a/gcc/insn-notes.def
+++ b/gcc/insn-notes.def
@@ -65,9 +65,6 @@ INSN_NOTE (EH_REGION_END)
/* The location of a variable. */
INSN_NOTE (VAR_LOCATION)
-/* The values passed to callee. */
-INSN_NOTE (CALL_ARG_LOCATION)
-
/* The beginning of a statement. */
INSN_NOTE (BEGIN_STMT)
diff --git a/gcc/internal-fn.c b/gcc/internal-fn.c
index 88adaea4c86..da205c9d68a 100644
--- a/gcc/internal-fn.c
+++ b/gcc/internal-fn.c
@@ -2444,11 +2444,14 @@ expand_call_mem_ref (tree type, gcall *stmt, int index)
&& types_compatible_p (TREE_TYPE (mem), type))
{
tree offset = TMR_OFFSET (mem);
- if (alias_ptr_type != TREE_TYPE (offset) || !integer_zerop (offset))
+ if (type != TREE_TYPE (mem)
+ || alias_ptr_type != TREE_TYPE (offset)
+ || !integer_zerop (offset))
{
mem = copy_node (mem);
TMR_OFFSET (mem) = wide_int_to_tree (alias_ptr_type,
wi::to_poly_wide (offset));
+ TREE_TYPE (mem) = type;
}
return mem;
}
diff --git a/gcc/internal-fn.def b/gcc/internal-fn.def
index 5970d0e472c..4080e1698ea 100644
--- a/gcc/internal-fn.def
+++ b/gcc/internal-fn.def
@@ -255,8 +255,8 @@ DEF_INTERNAL_FN (UBSAN_PTR, ECF_LEAF | ECF_NOTHROW, ".R.")
DEF_INTERNAL_FN (UBSAN_OBJECT_SIZE, ECF_LEAF | ECF_NOTHROW, NULL)
DEF_INTERNAL_FN (ABNORMAL_DISPATCHER, ECF_NORETURN, NULL)
DEF_INTERNAL_FN (BUILTIN_EXPECT, ECF_CONST | ECF_LEAF | ECF_NOTHROW, NULL)
-DEF_INTERNAL_FN (ASAN_CHECK, ECF_TM_PURE | ECF_LEAF | ECF_NOTHROW, ".R...")
-DEF_INTERNAL_FN (ASAN_MARK, ECF_LEAF | ECF_NOTHROW, ".R..")
+DEF_INTERNAL_FN (ASAN_CHECK, ECF_TM_PURE | ECF_LEAF | ECF_NOTHROW, "..R..")
+DEF_INTERNAL_FN (ASAN_MARK, ECF_LEAF | ECF_NOTHROW, NULL)
DEF_INTERNAL_FN (ASAN_POISON, ECF_LEAF | ECF_NOTHROW | ECF_NOVOPS, NULL)
DEF_INTERNAL_FN (ASAN_POISON_USE, ECF_LEAF | ECF_NOTHROW | ECF_NOVOPS, NULL)
DEF_INTERNAL_FN (ADD_OVERFLOW, ECF_CONST | ECF_LEAF | ECF_NOTHROW, NULL)
diff --git a/gcc/ipa-cp.c b/gcc/ipa-cp.c
index 4202c999675..ee41a8d55b7 100644
--- a/gcc/ipa-cp.c
+++ b/gcc/ipa-cp.c
@@ -630,6 +630,24 @@ determine_versionability (struct cgraph_node *node,
reason = "calls comdat-local function";
}
+ /* Functions calling BUILT_IN_VA_ARG_PACK and BUILT_IN_VA_ARG_PACK_LEN
+ work only when inlined. Cloning them may still lead to better code
+ because ipa-cp will not give up on cloning further. If the function is
+ external this however leads to wrong code because we may end up producing
+ offline copy of the function. */
+ if (DECL_EXTERNAL (node->decl))
+ for (cgraph_edge *edge = node->callees; !reason && edge;
+ edge = edge->next_callee)
+ if (DECL_BUILT_IN (edge->callee->decl)
+ && DECL_BUILT_IN_CLASS (edge->callee->decl) == BUILT_IN_NORMAL)
+ {
+ if (DECL_FUNCTION_CODE (edge->callee->decl) == BUILT_IN_VA_ARG_PACK)
+ reason = "external function which calls va_arg_pack";
+ if (DECL_FUNCTION_CODE (edge->callee->decl)
+ == BUILT_IN_VA_ARG_PACK_LEN)
+ reason = "external function which calls va_arg_pack_len";
+ }
+
if (reason && dump_file && !node->alias && !node->thunk.thunk_p)
fprintf (dump_file, "Function %s is not versionable, reason: %s.\n",
node->dump_name (), reason);
diff --git a/gcc/ipa-inline.c b/gcc/ipa-inline.c
index f56a1a69107..b7f213f2eb7 100644
--- a/gcc/ipa-inline.c
+++ b/gcc/ipa-inline.c
@@ -1782,7 +1782,7 @@ inline_small_functions (void)
struct cgraph_node *n2;
int id = dfs->scc_no + 1;
for (n2 = node; n2;
- n2 = ((struct ipa_dfs_info *) node->aux)->next_cycle)
+ n2 = ((struct ipa_dfs_info *) n2->aux)->next_cycle)
if (opt_for_fn (n2->decl, optimize))
{
struct ipa_fn_summary *info2 = ipa_fn_summaries->get (n2);
diff --git a/gcc/ipa-prop.c b/gcc/ipa-prop.c
index b9714fb899a..38441cc49bc 100644
--- a/gcc/ipa-prop.c
+++ b/gcc/ipa-prop.c
@@ -111,12 +111,13 @@ struct ipa_vr_ggc_hash_traits : public ggc_cache_remove <value_range *>
typedef value_range *compare_type;
static hashval_t
hash (const value_range *p)
- {
- gcc_checking_assert (!p->equiv);
- hashval_t t = (hashval_t) p->type;
- t = iterative_hash_expr (p->min, t);
- return iterative_hash_expr (p->max, t);
- }
+ {
+ gcc_checking_assert (!p->equiv);
+ inchash::hash hstate (p->type);
+ hstate.add_ptr (p->min);
+ hstate.add_ptr (p->max);
+ return hstate.end ();
+ }
static bool
equal (const value_range *a, const value_range *b)
{
diff --git a/gcc/jump.c b/gcc/jump.c
index dcc85949aa2..f379048f636 100644
--- a/gcc/jump.c
+++ b/gcc/jump.c
@@ -127,17 +127,6 @@ cleanup_barriers (void)
if (!prev)
continue;
- if (CALL_P (prev))
- {
- /* Make sure we do not split a call and its corresponding
- CALL_ARG_LOCATION note. */
- rtx_insn *next = NEXT_INSN (prev);
-
- if (NOTE_P (next)
- && NOTE_KIND (next) == NOTE_INSN_CALL_ARG_LOCATION)
- prev = next;
- }
-
if (BARRIER_P (prev))
delete_insn (insn);
else if (prev != PREV_INSN (insn))
@@ -1279,26 +1268,6 @@ delete_related_insns (rtx uncast_insn)
if (next != 0 && BARRIER_P (next))
delete_insn (next);
- /* If this is a call, then we have to remove the var tracking note
- for the call arguments. */
-
- if (CALL_P (insn)
- || (NONJUMP_INSN_P (insn)
- && GET_CODE (PATTERN (insn)) == SEQUENCE
- && CALL_P (XVECEXP (PATTERN (insn), 0, 0))))
- {
- rtx_insn *p;
-
- for (p = next && next->deleted () ? NEXT_INSN (next) : next;
- p && NOTE_P (p);
- p = NEXT_INSN (p))
- if (NOTE_KIND (p) == NOTE_INSN_CALL_ARG_LOCATION)
- {
- remove_insn (p);
- break;
- }
- }
-
/* If deleting a jump, decrement the count of the label,
and delete the label if it is now unused. */
diff --git a/gcc/lra-constraints.c b/gcc/lra-constraints.c
index 125bbb6c02b..59b97540d98 100644
--- a/gcc/lra-constraints.c
+++ b/gcc/lra-constraints.c
@@ -3730,7 +3730,13 @@ curr_insn_transform (bool check_only_p)
curr_insn_set = single_set (curr_insn);
if (curr_insn_set != NULL_RTX && simple_move_p ())
- return false;
+ {
+ /* We assume that the corresponding insn alternative has no
+ earlier clobbers. If it is not the case, don't define move
+ cost equal to 2 for the corresponding register classes. */
+ lra_set_used_insn_alternative (curr_insn, LRA_NON_CLOBBERED_ALT);
+ return false;
+ }
no_input_reloads_p = no_output_reloads_p = false;
goal_alt_number = -1;
@@ -3838,7 +3844,7 @@ curr_insn_transform (bool check_only_p)
if (change_p)
/* If we've changed the instruction then any alternative that
we chose previously may no longer be valid. */
- lra_set_used_insn_alternative (curr_insn, -1);
+ lra_set_used_insn_alternative (curr_insn, LRA_UNKNOWN_ALT);
if (! check_only_p && curr_insn_set != NULL_RTX
&& check_and_process_move (&change_p, &sec_mem_p))
@@ -3846,7 +3852,7 @@ curr_insn_transform (bool check_only_p)
try_swapped:
- reused_alternative_num = check_only_p ? -1 : curr_id->used_insn_alternative;
+ reused_alternative_num = check_only_p ? LRA_UNKNOWN_ALT : curr_id->used_insn_alternative;
if (lra_dump_file != NULL && reused_alternative_num >= 0)
fprintf (lra_dump_file, "Reusing alternative %d for insn #%u\n",
reused_alternative_num, INSN_UID (curr_insn));
@@ -5287,7 +5293,8 @@ inherit_reload_reg (bool def_p, int original_regno,
lra_assert (DEBUG_INSN_P (usage_insn));
next_usage_insns = XEXP (next_usage_insns, 1);
}
- lra_substitute_pseudo (&usage_insn, original_regno, new_reg, false);
+ lra_substitute_pseudo (&usage_insn, original_regno, new_reg, false,
+ DEBUG_INSN_P (usage_insn));
lra_update_insn_regno_info (as_a <rtx_insn *> (usage_insn));
if (lra_dump_file != NULL)
{
@@ -5608,7 +5615,8 @@ split_reg (bool before_p, int original_regno, rtx_insn *insn,
usage_insn = XEXP (next_usage_insns, 0);
lra_assert (DEBUG_INSN_P (usage_insn));
next_usage_insns = XEXP (next_usage_insns, 1);
- lra_substitute_pseudo (&usage_insn, original_regno, new_reg, false);
+ lra_substitute_pseudo (&usage_insn, original_regno, new_reg, false,
+ true);
lra_update_insn_regno_info (as_a <rtx_insn *> (usage_insn));
if (lra_dump_file != NULL)
{
@@ -6344,7 +6352,13 @@ inherit_in_ebb (rtx_insn *head, rtx_insn *tail)
PSEUDO_REGNO_MODE (src_regno),
reg_renumber[src_regno]);
}
- add_next_usage_insn (src_regno, use_insn, reloads_num);
+ if (src_regno >= FIRST_PSEUDO_REGISTER)
+ add_next_usage_insn (src_regno, use_insn, reloads_num);
+ else
+ {
+ for (i = 0; i < hard_regno_nregs (src_regno, reg->biggest_mode); i++)
+ add_next_usage_insn (src_regno + i, use_insn, reloads_num);
+ }
}
}
/* Process used call regs. */
@@ -6744,7 +6758,7 @@ remove_inheritance_pseudos (bitmap remove_pseudos)
}
lra_push_insn_and_update_insn_regno_info (curr_insn);
lra_set_used_insn_alternative_by_uid
- (INSN_UID (curr_insn), -1);
+ (INSN_UID (curr_insn), LRA_UNKNOWN_ALT);
done_p = true;
if (lra_dump_file != NULL)
{
@@ -6783,7 +6797,7 @@ remove_inheritance_pseudos (bitmap remove_pseudos)
constraints pass. */
lra_push_insn_and_update_insn_regno_info (curr_insn);
lra_set_used_insn_alternative_by_uid
- (INSN_UID (curr_insn), -1);
+ (INSN_UID (curr_insn), LRA_UNKNOWN_ALT);
}
else if (restored_regs_p)
/* The instruction has been restored to the form that
diff --git a/gcc/lra-eliminations.c b/gcc/lra-eliminations.c
index 44ad96af38d..21d8d5f8018 100644
--- a/gcc/lra-eliminations.c
+++ b/gcc/lra-eliminations.c
@@ -1175,7 +1175,7 @@ spill_pseudos (HARD_REG_SET set)
if (bitmap_bit_p (&to_process, INSN_UID (insn)))
{
lra_push_insn (insn);
- lra_set_used_insn_alternative (insn, -1);
+ lra_set_used_insn_alternative (insn, LRA_UNKNOWN_ALT);
}
bitmap_clear (&to_process);
}
@@ -1408,7 +1408,7 @@ process_insn_for_elimination (rtx_insn *insn, bool final_p, bool first_p)
}
lra_update_insn_regno_info (insn);
lra_push_insn (insn);
- lra_set_used_insn_alternative (insn, -1);
+ lra_set_used_insn_alternative (insn, LRA_UNKNOWN_ALT);
}
}
diff --git a/gcc/lra-int.h b/gcc/lra-int.h
index d737816146f..03839187cf6 100644
--- a/gcc/lra-int.h
+++ b/gcc/lra-int.h
@@ -202,15 +202,20 @@ struct lra_static_insn_data
const struct operand_alternative *operand_alternative;
};
+/* Negative insn alternative numbers used for special cases. */
+#define LRA_UNKNOWN_ALT -1
+#define LRA_NON_CLOBBERED_ALT -2
+
/* LRA internal info about an insn (LRA internal insn
representation). */
struct lra_insn_recog_data
{
/* The insn code. */
int icode;
- /* The alternative should be used for the insn, -1 if invalid, or we
- should try to use any alternative, or the insn is a debug
- insn. */
+ /* The alternative should be used for the insn, LRA_UNKNOWN_ALT if
+ unknown, or we should assume any alternative, or the insn is a
+ debug insn. LRA_NON_CLOBBERED_ALT means ignoring any earlier
+ clobbers for the insn. */
int used_insn_alternative;
/* SP offset before the insn relative to one at the func start. */
poly_int64 sp_offset;
@@ -309,7 +314,7 @@ extern void lra_update_dups (lra_insn_recog_data_t, signed char *);
extern void lra_process_new_insns (rtx_insn *, rtx_insn *, rtx_insn *,
const char *);
-extern bool lra_substitute_pseudo (rtx *, int, rtx, bool);
+extern bool lra_substitute_pseudo (rtx *, int, rtx, bool, bool);
extern bool lra_substitute_pseudo_within_insn (rtx_insn *, int, rtx, bool);
extern lra_insn_recog_data_t lra_set_insn_recog_data (rtx_insn *);
diff --git a/gcc/lra-lives.c b/gcc/lra-lives.c
index 2e53f877460..ddc0a9bbcc5 100644
--- a/gcc/lra-lives.c
+++ b/gcc/lra-lives.c
@@ -598,7 +598,9 @@ static inline bool
reg_early_clobber_p (const struct lra_insn_reg *reg, int n_alt)
{
return (reg->early_clobber
- && (n_alt < 0 || TEST_BIT (reg->early_clobber_alts, n_alt)));
+ && (n_alt == LRA_UNKNOWN_ALT
+ || (n_alt != LRA_NON_CLOBBERED_ALT
+ && TEST_BIT (reg->early_clobber_alts, n_alt))));
}
/* Process insns of the basic block BB to update pseudo live ranges,
diff --git a/gcc/lra-spills.c b/gcc/lra-spills.c
index 67675d9f1c4..8f6278acae4 100644
--- a/gcc/lra-spills.c
+++ b/gcc/lra-spills.c
@@ -517,7 +517,7 @@ spill_pseudos (void)
INSN_UID (insn));
lra_push_insn (insn);
if (lra_reg_spill_p || targetm.different_addr_displacement_p ())
- lra_set_used_insn_alternative (insn, -1);
+ lra_set_used_insn_alternative (insn, LRA_UNKNOWN_ALT);
}
else if (CALL_P (insn)
/* Presence of any pseudo in CALL_INSN_FUNCTION_USAGE
diff --git a/gcc/lra.c b/gcc/lra.c
index fc78b226ac7..08de09d14dd 100644
--- a/gcc/lra.c
+++ b/gcc/lra.c
@@ -958,7 +958,7 @@ lra_set_insn_recog_data (rtx_insn *insn)
data = XNEW (struct lra_insn_recog_data);
lra_insn_recog_data[uid] = data;
data->insn = insn;
- data->used_insn_alternative = -1;
+ data->used_insn_alternative = LRA_UNKNOWN_ALT;
data->icode = icode;
data->regs = NULL;
if (DEBUG_INSN_P (insn))
@@ -1207,7 +1207,7 @@ lra_update_insn_recog_data (rtx_insn *insn)
return data;
}
insn_static_data = data->insn_static_data;
- data->used_insn_alternative = -1;
+ data->used_insn_alternative = LRA_UNKNOWN_ALT;
if (DEBUG_INSN_P (insn))
return data;
if (data->icode < 0)
@@ -1893,9 +1893,11 @@ lra_process_new_insns (rtx_insn *insn, rtx_insn *before, rtx_insn *after,
/* Replace all references to register OLD_REGNO in *LOC with pseudo
register NEW_REG. Try to simplify subreg of constant if SUBREG_P.
- Return true if any change was made. */
+ DEBUG_P is if LOC is within a DEBUG_INSN. Return true if any
+ change was made. */
bool
-lra_substitute_pseudo (rtx *loc, int old_regno, rtx new_reg, bool subreg_p)
+lra_substitute_pseudo (rtx *loc, int old_regno, rtx new_reg, bool subreg_p,
+ bool debug_p)
{
rtx x = *loc;
bool result = false;
@@ -1931,11 +1933,14 @@ lra_substitute_pseudo (rtx *loc, int old_regno, rtx new_reg, bool subreg_p)
if (mode != inner_mode
&& ! (CONST_INT_P (new_reg) && SCALAR_INT_MODE_P (mode)))
{
- if (!partial_subreg_p (mode, inner_mode)
- || ! SCALAR_INT_MODE_P (inner_mode))
- new_reg = gen_rtx_SUBREG (mode, new_reg, 0);
+ poly_uint64 offset = 0;
+ if (partial_subreg_p (mode, inner_mode)
+ && SCALAR_INT_MODE_P (inner_mode))
+ offset = subreg_lowpart_offset (mode, inner_mode);
+ if (debug_p)
+ new_reg = gen_rtx_raw_SUBREG (mode, new_reg, offset);
else
- new_reg = gen_lowpart_SUBREG (mode, new_reg);
+ new_reg = gen_rtx_SUBREG (mode, new_reg, offset);
}
*loc = new_reg;
return true;
@@ -1948,14 +1953,14 @@ lra_substitute_pseudo (rtx *loc, int old_regno, rtx new_reg, bool subreg_p)
if (fmt[i] == 'e')
{
if (lra_substitute_pseudo (&XEXP (x, i), old_regno,
- new_reg, subreg_p))
+ new_reg, subreg_p, debug_p))
result = true;
}
else if (fmt[i] == 'E')
{
for (j = XVECLEN (x, i) - 1; j >= 0; j--)
if (lra_substitute_pseudo (&XVECEXP (x, i, j), old_regno,
- new_reg, subreg_p))
+ new_reg, subreg_p, debug_p))
result = true;
}
}
@@ -1970,7 +1975,8 @@ lra_substitute_pseudo_within_insn (rtx_insn *insn, int old_regno,
rtx new_reg, bool subreg_p)
{
rtx loc = insn;
- return lra_substitute_pseudo (&loc, old_regno, new_reg, subreg_p);
+ return lra_substitute_pseudo (&loc, old_regno, new_reg, subreg_p,
+ DEBUG_INSN_P (insn));
}
diff --git a/gcc/lto/ChangeLog b/gcc/lto/ChangeLog
index 62fec498380..55013a81bb2 100644
--- a/gcc/lto/ChangeLog
+++ b/gcc/lto/ChangeLog
@@ -1,5 +1,9 @@
2018-02-08 Jan Hubicka <hubicka@ucw.cz>
+ * lto-partition.c (lto_balanced_map): Watch overflow.
+
+2018-02-08 Jan Hubicka <hubicka@ucw.cz>
+
PR ipa/81360
* lto.c (unify_scc): Register prevailing trees, not trees to be freed.
(read_cgraph_and_symbols): Use
diff --git a/gcc/lto/lto-partition.c b/gcc/lto/lto-partition.c
index 6055dad99b5..60daafdf375 100644
--- a/gcc/lto/lto-partition.c
+++ b/gcc/lto/lto-partition.c
@@ -757,7 +757,8 @@ lto_balanced_map (int n_lto_partitions, int max_partition_size)
if (npartitions < n_lto_partitions)
partition_size = total_size / (n_lto_partitions - npartitions);
else
- partition_size = INT_MAX;
+ /* Watch for overflow. */
+ partition_size = INT_MAX / 16;
if (partition_size < PARAM_VALUE (MIN_PARTITION_SIZE))
partition_size = PARAM_VALUE (MIN_PARTITION_SIZE);
diff --git a/gcc/machmode.def b/gcc/machmode.def
index d5d5efc22ab..9505cc3e6df 100644
--- a/gcc/machmode.def
+++ b/gcc/machmode.def
@@ -260,6 +260,7 @@ UACCUM_MODE (UTA, 16, 64, 64); /* 64.64 */
/* Complex modes. */
COMPLEX_MODES (INT);
+COMPLEX_MODES (PARTIAL_INT);
COMPLEX_MODES (FLOAT);
/* Decimal floating point modes. */
diff --git a/gcc/match.pd b/gcc/match.pd
index f7597110c4b..b77f4ead3a8 100644
--- a/gcc/match.pd
+++ b/gcc/match.pd
@@ -1733,9 +1733,12 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT)
CONSTANT_CLASS_P@2)
/* If one of the types wraps, use that one. */
(if (!ANY_INTEGRAL_TYPE_P (type) || TYPE_OVERFLOW_WRAPS (type))
- (if (outer_op == PLUS_EXPR)
- (plus (view_convert @0) (inner_op @2 (view_convert @1)))
- (minus (view_convert @0) (neg_inner_op @2 (view_convert @1))))
+ /* If all 3 captures are CONSTANT_CLASS_P, punt, as we might recurse
+ forever if something doesn't simplify into a constant. */
+ (if (!CONSTANT_CLASS_P (@0))
+ (if (outer_op == PLUS_EXPR)
+ (plus (view_convert @0) (inner_op @2 (view_convert @1)))
+ (minus (view_convert @0) (neg_inner_op @2 (view_convert @1)))))
(if (!ANY_INTEGRAL_TYPE_P (TREE_TYPE (@0))
|| TYPE_OVERFLOW_WRAPS (TREE_TYPE (@0)))
(if (outer_op == PLUS_EXPR)
@@ -4003,7 +4006,14 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT)
(simplify
(pows REAL_CST@0 @1)
(if (real_compare (GT_EXPR, TREE_REAL_CST_PTR (@0), &dconst0)
- && real_isfinite (TREE_REAL_CST_PTR (@0)))
+ && real_isfinite (TREE_REAL_CST_PTR (@0))
+ /* As libmvec doesn't have a vectorized exp2, defer optimizing
+ the use_exp2 case until after vectorization. It seems actually
+ beneficial for all constants to postpone this until later,
+ because exp(log(C)*x), while faster, will have worse precision
+ and if x folds into a constant too, that is unnecessary
+ pessimization. */
+ && canonicalize_math_after_vectorization_p ())
(with {
const REAL_VALUE_TYPE *const value = TREE_REAL_CST_PTR (@0);
bool use_exp2 = false;
@@ -4018,10 +4028,7 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT)
}
(if (!use_exp2)
(exps (mult (logs @0) @1))
- /* As libmvec doesn't have a vectorized exp2, defer optimizing
- this until after vectorization. */
- (if (canonicalize_math_after_vectorization_p ())
- (exp2s (mult (log2s @0) @1))))))))
+ (exp2s (mult (log2s @0) @1)))))))
(for sqrts (SQRT)
cbrts (CBRT)
diff --git a/gcc/optabs-query.c b/gcc/optabs-query.c
index a8e10e6decc..5e5d620d437 100644
--- a/gcc/optabs-query.c
+++ b/gcc/optabs-query.c
@@ -473,9 +473,23 @@ find_widening_optab_handler_and_mode (optab op, machine_mode to_mode,
machine_mode from_mode,
machine_mode *found_mode)
{
- gcc_checking_assert (GET_MODE_CLASS (from_mode) == GET_MODE_CLASS (to_mode));
- gcc_checking_assert (from_mode < to_mode);
- FOR_EACH_MODE (from_mode, from_mode, to_mode)
+ machine_mode limit_mode = to_mode;
+ if (is_a <scalar_int_mode> (from_mode))
+ {
+ gcc_checking_assert (is_a <scalar_int_mode> (to_mode)
+ && known_lt (GET_MODE_PRECISION (from_mode),
+ GET_MODE_PRECISION (to_mode)));
+ /* The modes after FROM_MODE are all MODE_INT, so the only
+ MODE_PARTIAL_INT mode we consider is FROM_MODE itself.
+ If LIMIT_MODE is MODE_PARTIAL_INT, stop at the containing
+ MODE_INT. */
+ if (GET_MODE_CLASS (limit_mode) == MODE_PARTIAL_INT)
+ limit_mode = GET_MODE_WIDER_MODE (limit_mode).require ();
+ }
+ else
+ gcc_checking_assert (GET_MODE_CLASS (from_mode) == GET_MODE_CLASS (to_mode)
+ && from_mode < to_mode);
+ FOR_EACH_MODE (from_mode, from_mode, limit_mode)
{
enum insn_code handler = convert_optab_handler (op, to_mode, from_mode);
diff --git a/gcc/opts.c b/gcc/opts.c
index f2795f98bf4..33efcc0d6e7 100644
--- a/gcc/opts.c
+++ b/gcc/opts.c
@@ -1039,6 +1039,26 @@ finish_options (struct gcc_options *opts, struct gcc_options *opts_set,
if ((opts->x_flag_sanitize & SANITIZE_KERNEL_ADDRESS) && opts->x_flag_tm)
sorry ("transactional memory is not supported with "
"%<-fsanitize=kernel-address%>");
+
+ /* Comes from final.c -- no real reason to change it. */
+#define MAX_CODE_ALIGN 16
+#define MAX_CODE_ALIGN_VALUE (1 << MAX_CODE_ALIGN)
+
+ if (opts->x_align_loops > MAX_CODE_ALIGN_VALUE)
+ error_at (loc, "-falign-loops=%d is not between 0 and %d",
+ opts->x_align_loops, MAX_CODE_ALIGN_VALUE);
+
+ if (opts->x_align_jumps > MAX_CODE_ALIGN_VALUE)
+ error_at (loc, "-falign-jumps=%d is not between 0 and %d",
+ opts->x_align_jumps, MAX_CODE_ALIGN_VALUE);
+
+ if (opts->x_align_functions > MAX_CODE_ALIGN_VALUE)
+ error_at (loc, "-falign-functions=%d is not between 0 and %d",
+ opts->x_align_functions, MAX_CODE_ALIGN_VALUE);
+
+ if (opts->x_align_labels > MAX_CODE_ALIGN_VALUE)
+ error_at (loc, "-falign-labels=%d is not between 0 and %d",
+ opts->x_align_labels, MAX_CODE_ALIGN_VALUE);
}
#define LEFT_COLUMN 27
diff --git a/gcc/params.def b/gcc/params.def
index e3336793b23..dad47ec2b00 100644
--- a/gcc/params.def
+++ b/gcc/params.def
@@ -354,11 +354,11 @@ DEFPARAM(PARAM_MAX_UNSWITCH_LEVEL,
"The maximum number of unswitchings in a single loop.",
3, 0, 0)
-/* The maximum number of insns in loop header duplicated by he copy loop
+/* The maximum number of insns in loop header duplicated by the copy loop
headers pass. */
DEFPARAM(PARAM_MAX_LOOP_HEADER_INSNS,
"max-loop-header-insns",
- "The maximum number of insns in loop header duplicated by he copy loop headers pass.",
+ "The maximum number of insns in loop header duplicated by the copy loop headers pass.",
20, 0, 0)
/* The maximum number of iterations of a loop the brute force algorithm
diff --git a/gcc/passes.def b/gcc/passes.def
index 9802f08ecfc..3ebcfc30349 100644
--- a/gcc/passes.def
+++ b/gcc/passes.def
@@ -397,8 +397,8 @@ along with GCC; see the file COPYING3. If not see
NEXT_PASS (pass_lower_vaarg);
NEXT_PASS (pass_lower_vector);
NEXT_PASS (pass_lower_complex_O0);
- NEXT_PASS (pass_lower_switch);
NEXT_PASS (pass_sancov_O0);
+ NEXT_PASS (pass_lower_switch);
NEXT_PASS (pass_asan_O0);
NEXT_PASS (pass_tsan_O0);
NEXT_PASS (pass_sanopt);
diff --git a/gcc/po/ChangeLog b/gcc/po/ChangeLog
index ff511600b57..a9dc64fa86b 100644
--- a/gcc/po/ChangeLog
+++ b/gcc/po/ChangeLog
@@ -1,3 +1,15 @@
+2018-02-18 Joseph Myers <joseph@codesourcery.com>
+
+ * es.po: Update.
+
+2018-02-18 Joseph Myers <joseph@codesourcery.com>
+
+ * sv.po: Update.
+
+2018-02-13 Joseph Myers <joseph@codesourcery.com>
+
+ * fr.po: Update.
+
2018-02-12 Joseph Myers <joseph@codesourcery.com>
* sv.po: Update.
diff --git a/gcc/po/es.po b/gcc/po/es.po
index 2c6547aa6c9..a4e25eae9fb 100644
--- a/gcc/po/es.po
+++ b/gcc/po/es.po
@@ -42,7 +42,7 @@ msgstr ""
"Project-Id-Version: gcc 8.1-b20180128\n"
"Report-Msgid-Bugs-To: https://gcc.gnu.org/bugs/\n"
"POT-Creation-Date: 2018-01-26 22:47+0000\n"
-"PO-Revision-Date: 2018-02-05 14:05+0100\n"
+"PO-Revision-Date: 2018-02-18 21:54+0100\n"
"Last-Translator: Antonio Ceballos <aceballos@gmail.com>\n"
"Language-Team: Spanish <es@tp.org.es>\n"
"Language: es\n"
@@ -16225,52 +16225,44 @@ msgid "%K%qD specified bound %E exceeds maximum object size %E"
msgstr "%K%qD: el límite %E especificado excede el tamaño de objeto máximo %E"
#: builtins.c:3234
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: specified bound between %wu and %wu exceeds maximum object size %wu"
+#, gcc-internal-format
msgid "%K%qD specified bound between %E and %E exceeds maximum object size %E"
-msgstr "%K%qD: el límite especificado entre %wu y %wu excede el tamaño de objeto máximo %wu"
+msgstr "%K%qD: el límite especificado entre %E y %E excede el tamaño de objeto máximo %E"
#: builtins.c:3249
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: specified bound %wu exceeds maximum object size %wu"
+#, gcc-internal-format
msgid "%K%qD specified bound %E exceeds destination size %E"
-msgstr "%K%qD: el límite %wu especificado excede el tamaño de objeto máximo %wu"
+msgstr "%K%qD: el límite %E especificado excede el tamaño del destino %E"
#: builtins.c:3255
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: specified bound between %wu and %wu exceeds maximum object size %wu"
+#, gcc-internal-format
msgid "%K%qD specified bound between %E and %E exceeds destination size %E"
-msgstr "%K%qD: el límite especificado entre %wu y %wu excede el tamaño de objeto máximo %wu"
+msgstr "%K%qD: el límite especificado entre %E y %E excede el tamaño del destino %E"
#: builtins.c:3278
-#, fuzzy, gcc-internal-format
-#| msgid "%<%.*s%> directive writing %wu byte into a region of size %wu"
+#, gcc-internal-format
msgid "%K%qD reading %E byte from a region of size %E"
-msgstr "directiva %<%.*s%> escribiendo %wu byte en una región de tamaño %wu"
+msgstr "%K%qD leyendo %E byte en una región de tamaño %E"
#: builtins.c:3279
-#, fuzzy, gcc-internal-format
-#| msgid "%<%.*s%> directive writing %wu bytes into a region of size %wu"
+#, gcc-internal-format
msgid "%K%qD reading %E bytes from a region of size %E"
-msgstr "directiva %<%.*s%> escribiendo %wu bytes en una región de tamaño %wu"
+msgstr "%K%qD leyendo %E bytes en una región de tamaño %E"
#: builtins.c:3285
-#, fuzzy, gcc-internal-format
-#| msgid "%<%.*s%> directive writing %wu or more bytes into a region of size %wu"
+#, gcc-internal-format
msgid "%K%qD reading %E or more bytes from a region of size %E"
-msgstr "directiva %<%.*s%> escribiendo %wu o más bytes en una región de tamaño %wu"
+msgstr "%K%qD leyendo %E o más bytes en una región de tamaño %E"
#: builtins.c:3291
-#, fuzzy, gcc-internal-format
-#| msgid "%<%.*s%> directive writing between %wu and %wu bytes into a region of size %wu"
+#, gcc-internal-format
msgid "%K%qD reading between %E and %E bytes from a region of size %E"
-msgstr "directiva %<%.*s%> escribiendo entre %wu y %wu bytes en una región de tamaño %wu"
+msgstr "%K%qD leyendo entre %E y %E bytes en una región de tamaño %E"
#: builtins.c:3965 builtins.c:4031
-#, fuzzy, gcc-internal-format
-#| msgid "specified bound %wu equals the size of the destination"
+#, gcc-internal-format
msgid "%K%qD specified bound %E equals destination size"
-msgstr "el límite %wu especificado es igual al tamaño del destino"
+msgstr "el límite de %K%qD %E especificado es igual al tamaño del destino"
#: builtins.c:4879 gimplify.c:3272
#, gcc-internal-format
@@ -16421,16 +16413,14 @@ msgid "undefined behavior when second parameter of %<va_start%> is declared with
msgstr "la conducta es indefinida cuando el segundo parámetro de %<va_start%> se declara con almacenamiento %<register%>"
#: builtins.c:9806
-#, fuzzy, gcc-internal-format
-#| msgid "%Kfirst argument of %D must be a pointer, second integer constant"
+#, gcc-internal-format
msgid "%Kfirst argument of %qD must be a pointer, second integer constant"
-msgstr "%Kel primer argumento de %D debe ser un puntero, el segundo una constante entera"
+msgstr "%Kel primer argumento de %qD debe ser un puntero, el segundo una constante entera"
#: builtins.c:9819
-#, fuzzy, gcc-internal-format
-#| msgid "%Klast argument of %D is not integer constant between 0 and 3"
+#, gcc-internal-format
msgid "%Klast argument of %qD is not integer constant between 0 and 3"
-msgstr "%Kel último argumento de %D no es una constante entera entre 0 y 3"
+msgstr "%Kel último argumento de %qD no es una constante entera entre 0 y 3"
#: builtins.c:10095
#, gcc-internal-format
@@ -16504,10 +16494,9 @@ msgid "%qD argument %i declared attribute %<nonstring%>"
msgstr "%qD no se declaró %<constexpr%>"
#: calls.c:1721
-#, fuzzy, gcc-internal-format
-#| msgid "routine %qD declared here"
+#, gcc-internal-format
msgid "argument %qD declared here"
-msgstr "la rutina %qD se declara aquí"
+msgstr "el argumento %qD se declara aquí"
#: calls.c:1735
#, gcc-internal-format, gfc-internal-format
@@ -16617,16 +16606,14 @@ msgid "verify_flow_info: Block %i lacks loop_father"
msgstr "verify_flow_info: El bloque %i carece de loop_father"
#: cfghooks.c:146
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "verify_flow_info: Wrong count of block %i %i"
+#, gcc-internal-format, gfc-internal-format
msgid "verify_flow_info: Wrong count of block %i"
-msgstr "verify_flow_info: Cuenta errónea del bloque %i %i"
+msgstr "verify_flow_info: Cuenta errónea del bloque %i"
#: cfghooks.c:154
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "verify_flow_info: Wrong count of block %i %i"
+#, gcc-internal-format, gfc-internal-format
msgid "verify_flow_info: Missing count of block %i"
-msgstr "verify_flow_info: Cuenta errónea del bloque %i %i"
+msgstr "verify_flow_info: Cuenta errónea del bloque %i"
#: cfghooks.c:162
#, gcc-internal-format, gfc-internal-format
@@ -16634,16 +16621,14 @@ msgid "verify_flow_info: Duplicate edge %i->%i"
msgstr "verify_flow_info: Borde duplicado %i->%i"
#: cfghooks.c:171
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
+#, gcc-internal-format, gfc-internal-format
msgid "Uninitialized probability of edge %i->%i"
-msgstr "verify_flow_info: Probabilidad errónea del borde %i->%i %i"
+msgstr "Probabilidad del borde %i->%i no inicializada"
#: cfghooks.c:177
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
+#, gcc-internal-format, gfc-internal-format
msgid "verify_flow_info: Wrong probability of edge %i->%i"
-msgstr "verify_flow_info: Probabilidad errónea del borde %i->%i %i"
+msgstr "verify_flow_info: Probabilidad errónea del borde %i->%i"
#: cfghooks.c:189
#, gcc-internal-format, gfc-internal-format
@@ -16923,7 +16908,7 @@ msgstr "se grabaron %d salidas para el bucle %d (teniendo %d salidas)"
#: cfgrtl.c:2349
#, gcc-internal-format, gfc-internal-format
msgid "non-cold basic block %d reachable only by paths crossing the cold partition"
-msgstr ""
+msgstr "el bloque básico no frío %d es alcanzable solo por caminos que cruzan la partición fría"
#: cfgrtl.c:2421
#, gcc-internal-format, gfc-internal-format
@@ -16933,7 +16918,7 @@ msgstr "se encontraron múltiples transiciones caliente/frío (bb %i)"
#: cfgrtl.c:2429
#, gcc-internal-format
msgid "partition found but function partition flag not set"
-msgstr ""
+msgstr "partición encontrada pero el indicador de partición de función no está puesto"
#: cfgrtl.c:2468
#, fuzzy, gcc-internal-format
@@ -17102,10 +17087,9 @@ msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
msgstr "el número de notas bb en la cadena insn (%d) != n_basic_blocks (%d)"
#: cgraph.c:3051
-#, fuzzy, gcc-internal-format
-#| msgid "caller edge count is negative"
+#, gcc-internal-format
msgid "caller edge count invalid"
-msgstr "la cuenta de borde llamador es negativa"
+msgstr "la cuenta de borde llamador no es válida"
#: cgraph.c:3135
#, gcc-internal-format, gfc-internal-format
@@ -17115,7 +17099,7 @@ msgstr "campo aux establecido para el borde %s->%s"
#: cgraph.c:3142
#, gcc-internal-format
msgid "cgraph count invalid"
-msgstr ""
+msgstr "cuenta de cgraph no válida"
#: cgraph.c:3147
#, gcc-internal-format
@@ -17925,10 +17909,9 @@ msgid "%Kcall to %qs declared with attribute warning: %s"
msgstr "%Kla llamada a %qs se redecló con aviso de atributo: %s"
#: file-prefix-map.c:50
-#, fuzzy, gcc-internal-format
-#| msgid "invalid argument to %qD"
+#, gcc-internal-format
msgid "invalid argument %qs to %qs"
-msgstr "argumento no válido para %qD"
+msgstr "argumento %qs no válido para %qs"
#: final.c:1789
#, gcc-internal-format
@@ -18085,7 +18068,7 @@ msgstr "no se reconoce la opción de línea de órdenes %qs"
#: gcc.c:3718
#, gcc-internal-format, gfc-internal-format
msgid "GCC is not configured to support %s as offload target"
-msgstr ""
+msgstr "GCC no está configurado para aceptar %s como objetivo de descarga"
#: gcc.c:4022
#, gcc-internal-format
@@ -18202,10 +18185,9 @@ msgid "malformed spec function arguments"
msgstr "argumentos de la función de especificación malformados"
#: gcc.c:6330
-#, fuzzy, gcc-internal-format
-#| msgid "braced spec %qs is invalid at %qc"
+#, gcc-internal-format
msgid "braced spec %qs ends in escape"
-msgstr "la especificación entre llaves %qs es no válida en %qc"
+msgstr "la especificación entre llaves %qs termina en escape"
#: gcc.c:6465
#, gcc-internal-format
@@ -18822,12 +18804,11 @@ msgid "%<%.*s%> directive output between %wu and %wu bytes may cause result to e
msgstr "la salida de la directiva %<%.*s%> entre %wu y %wu bytes podría provocar que el resultado supere %<INT_MAX%>"
#: gimple-ssa-sprintf.c:2944
-#, fuzzy, gcc-internal-format
-#| msgid "assuming directive output of %wu byte"
+#, gcc-internal-format
msgid "assuming directive output of %wu byte"
msgid_plural "assuming directive output of %wu bytes"
msgstr[0] "se asume salida de directiva de %wu byte"
-msgstr[1] "se asume salida de directiva de %wu byte"
+msgstr[1] "se asume salida de directiva de %wu bytes"
#: gimple-ssa-sprintf.c:2951
#, gcc-internal-format
@@ -18875,10 +18856,9 @@ msgid "specified bound %wu exceeds maximum object size %wu"
msgstr "el límite especificado %wu supera el tamaño máximo del objeto %wu"
#: gimple-ssa-sprintf.c:3893
-#, fuzzy, gcc-internal-format
-#| msgid "specified bound %wu exceeds %<INT_MAX %>"
+#, gcc-internal-format
msgid "specified bound %wu exceeds %<INT_MAX%>"
-msgstr "el límite especificado %wu supera %<INT_MAX %>"
+msgstr "el límite especificado %wu supera %<INT_MAX%>"
#: gimple-ssa-sprintf.c:3946
#, gcc-internal-format
@@ -19112,10 +19092,9 @@ msgid "%G%qD pointer overflow between offset %s and size %s accessing array %qD
msgstr ""
#: gimple-ssa-warn-restrict.c:1534
-#, fuzzy, gcc-internal-format
-#| msgid " %q+#D declared here"
+#, gcc-internal-format
msgid "array %qD declared here"
-msgstr " %q+#D se declaró aquí"
+msgstr "el array %qD se declaró aquí"
#: gimple-ssa-warn-restrict.c:1537 gimple-ssa-warn-restrict.c:1543
msgid "%G%qD pointer overflow between offset %s and size %s"
@@ -20047,10 +20026,9 @@ msgid "installation error, can't find crtoffloadtable.o"
msgstr "error de instalación, no se puede encontrar crtoffloadtable.o"
#: lto-wrapper.c:1000 lto-wrapper.c:1012
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "%s: %s"
+#, gcc-internal-format, gfc-internal-format
msgid "%s: %s\n"
-msgstr "%s: %s"
+msgstr "%s: %s\n"
#: lto-wrapper.c:1056
#, gcc-internal-format
@@ -20088,10 +20066,9 @@ msgid "the call requires ifunc, which is not supported by this target"
msgstr "la llamada requiere ifunc, que no se admite en este objetivo"
#: multiple_target.c:81
-#, fuzzy, gcc-internal-format
-#| msgid "target CPU does not support unaligned accesses"
+#, gcc-internal-format
msgid "target does not support function version dispatcher"
-msgstr "el CPU objetivo no admite accesos sin alinear"
+msgstr "el objetivo no admite despachador de versión de función"
#: multiple_target.c:89
#, gcc-internal-format
@@ -20411,10 +20388,9 @@ msgid "argument to %qs should be a non-negative integer"
msgstr "el argumento para %qs debe ser un entero no negativo"
#: opts-common.c:1173
-#, fuzzy, gcc-internal-format
-#| msgid "-malign-functions=%d is not between 0 and %d"
+#, gcc-internal-format
msgid "argument to %qs is not between %d and %d"
-msgstr "-malign-functions=%d no está entre 0 y %d"
+msgstr "el argumento para %qs no está entre %d y %d"
#: opts-common.c:1187
#, gcc-internal-format
@@ -20513,28 +20489,24 @@ msgid "section anchors must be disabled when toplevel reorder is disabled"
msgstr "las anclas de seccions se deben desactivar cando el reordenamiento de nivel principal se desactiva"
#: opts.c:840
-#, fuzzy, gcc-internal-format
-#| msgid "-freorder-blocks-and-partition does not work with exceptions on this architecture"
+#, gcc-internal-format
msgid "%<-freorder-blocks-and-partition%> does not work with exceptions on this architecture"
-msgstr "-freorder-blocks-and-partition no funciona con excepciones en esta arquitectura"
+msgstr "%<-freorder-blocks-and-partition%> no funciona con excepciones en esta arquitectura"
#: opts.c:856
-#, fuzzy, gcc-internal-format
-#| msgid "-freorder-blocks-and-partition does not support unwind info on this architecture"
+#, gcc-internal-format
msgid "%<-freorder-blocks-and-partition%> does not support unwind info on this architecture"
-msgstr "-freorder-blocks-and-partition no admite información de desenredo en esta arquitectura"
+msgstr "%<-freorder-blocks-and-partition%> no admite información de desenredo en esta arquitectura"
#: opts.c:874
-#, fuzzy, gcc-internal-format
-#| msgid "-freorder-blocks-and-partition does not work on this architecture"
+#, gcc-internal-format
msgid "%<-freorder-blocks-and-partition%> does not work on this architecture"
-msgstr "-freorder-blocks-and-partition no funciona en esta arquitectura"
+msgstr "%<-freorder-blocks-and-partition%> no funciona en esta arquitectura"
#: opts.c:912
-#, fuzzy, gcc-internal-format
-#| msgid "-fno-fat-lto-objects are supported only with linker plugin"
+#, gcc-internal-format
msgid "%<-fno-fat-lto-objects%> are supported only with linker plugin"
-msgstr "-fno-fat-lto-object sólo se admite con el plugin enlazador"
+msgstr "%<-fno-fat-lto-object%> sólo se admite con el plugin enlazador"
#: opts.c:926
#, gcc-internal-format
@@ -20542,45 +20514,39 @@ msgid "%<-fsplit-stack%> is not supported by this compiler configuration"
msgstr "%<-fsplit-stack%> no se admite en esta configuración de compilador"
#: opts.c:973
-#, fuzzy, gcc-internal-format
-#| msgid "-fsanitize=address is incompatible with -fsanitize=kernel-address"
+#, gcc-internal-format
msgid "%<-fsanitize=pointer-compare%> must be combined with %<-fsanitize=address%> or %<-fsanitize=kernel-address%>"
-msgstr "-fsanitize=address es incompatible con -fsanitize=kernel-address"
+msgstr "%<-fsanitize=pointer-compare%> debe combinarse con %<-fsanitize=address%> o %<-fsanitize=kernel-address%>"
#: opts.c:977
#, gcc-internal-format
msgid "%<-fsanitize=pointer-subtract%> must be combined with %<-fsanitize=address%> or %<-fsanitize=kernel-address%>"
-msgstr ""
+msgstr "%<-fsanitize=pointer-subtract%> debe combinarse con %<-fsanitize=address%> o %<-fsanitize=kernel-address%>"
#: opts.c:985
-#, fuzzy, gcc-internal-format
-#| msgid "-fsanitize=address is incompatible with -fsanitize=kernel-address"
+#, gcc-internal-format
msgid "%<-fsanitize=address%> is incompatible with %<-fsanitize=kernel-address%>"
-msgstr "-fsanitize=address es incompatible con -fsanitize=kernel-address"
+msgstr "%<-fsanitize=address%> es incompatible con %<-fsanitize=kernel-address%>"
#: opts.c:992
-#, fuzzy, gcc-internal-format
-#| msgid "-fsanitize=address and -fsanitize=kernel-address are incompatible with -fsanitize=thread"
+#, gcc-internal-format
msgid "%<-fsanitize=address%> and %<-fsanitize=kernel-address%> are incompatible with %<-fsanitize=thread%>"
-msgstr "-fsanitize=address y -fsanitize=kernel-address son incompatibles con -fsanitize=thread"
+msgstr "%<-fsanitize=address%> y %<-fsanitize=kernel-address%> son incompatibles con %<-fsanitize=thread%>"
#: opts.c:998
-#, fuzzy, gcc-internal-format
-#| msgid "-fsanitize=leak is incompatible with -fsanitize=thread"
+#, gcc-internal-format
msgid "%<-fsanitize=leak%> is incompatible with %<-fsanitize=thread%>"
-msgstr "-fsanitize=leak es incompatible con -fsanitize=thread"
+msgstr "%<-fsanitize=leak%> es incompatible con %<-fsanitize=thread%>"
#: opts.c:1004
-#, fuzzy, gcc-internal-format
-#| msgid "-fsanitize-recover=%s is not supported"
+#, gcc-internal-format
msgid "%<-fsanitize-recover=%s%> is not supported"
-msgstr "no se admite -fsanitize-recover=%s"
+msgstr "no se admite %<-fsanitize-recover=%s%>"
#: opts.c:1030
-#, fuzzy, gcc-internal-format
-#| msgid "-fsanitize-address-use-after-scope requires -fstack-reuse=none option"
+#, gcc-internal-format
msgid "%<-fsanitize-address-use-after-scope%> requires %<-fstack-reuse=none%> option"
-msgstr "-fsanitize-address-use-after-scope requiere -fstack-reuse=none option"
+msgstr "%<-fsanitize-address-use-after-scope%> requiere %<-fstack-reuse=none%> option"
#: opts.c:1037
#, gcc-internal-format
@@ -20598,10 +20564,9 @@ msgid "unrecognized include_flags 0x%x passed to print_specific_help"
msgstr "no se reconocen las include_flags 0x%x pasadas a print_specific_help"
#: opts.c:1673
-#, fuzzy, gcc-internal-format
-#| msgid "-fsanitize=all option is not valid"
+#, gcc-internal-format
msgid "%<-fsanitize=all%> option is not valid"
-msgstr "la opción -fsanitize=all no es válida"
+msgstr "la opción %<-fsanitize=all%> no es válida"
#: opts.c:1713
#, gcc-internal-format
@@ -20614,10 +20579,9 @@ msgid "unrecognized argument to -f%ssanitize%s= option: %q.*s"
msgstr "no se reconoce el argumento para la opción -f%ssanitize%s=: %q.*s"
#: opts.c:1754
-#, fuzzy, gcc-internal-format
-#| msgid "%qE attribute directive ignored"
+#, gcc-internal-format
msgid "%<%s%> attribute directive ignored"
-msgstr "se descarta la directiva de atributo %qE"
+msgstr "se descarta la directiva de atributo %<%s%>"
#: opts.c:1931
#, gcc-internal-format
diff --git a/gcc/po/fr.po b/gcc/po/fr.po
index a07a329177f..42521d5a813 100644
--- a/gcc/po/fr.po
+++ b/gcc/po/fr.po
@@ -1,12 +1,12 @@
# This file is distributed under the same license as the gcc package.
#
# Messages français pour GNU concernant gcc.
-# Copyright © 2017 Free Software Foundation, Inc.
+# Copyright © 2018 Free Software Foundation, Inc.
#
# Michel Robitaille <robitail@IRO.UMontreal.CA>, traducteur depuis/since 1996.
# François-Xavier Coudert <fxcoudert@gmail.com>, 2008.
# Stéphane Aulery <lkppo@free.fr>, 2015, 2016.
-# Frédéric Marchal <fmarchal@perso.be>, 2017.
+# Frédéric Marchal <fmarchal@perso.be>, 2018.
#
# Vocabulaire utilisé
# lvalue = l-valeur
@@ -37,6 +37,8 @@
# thread
# iv = Induction Variable reste tel quel car la traduction serait VI ce qui ne facilite pas
# la recherche de documentation sur internet.
+# cfg = Control Flow Graph (j'ai parfois noté la signification de l'acronyme dans le message
+# pour ceux qui voudraient faire une recherche pour le comprendre).
#
# J'ai des doutes pour :
# inline = enligne (pas systématiquement)
@@ -130,10 +132,10 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: gcc 7.2.0\n"
+"Project-Id-Version: gcc 8.1-b20180128\n"
"Report-Msgid-Bugs-To: https://gcc.gnu.org/bugs/\n"
"POT-Creation-Date: 2018-01-26 22:47+0000\n"
-"PO-Revision-Date: 2017-08-16 09:16+0200\n"
+"PO-Revision-Date: 2018-02-13 20:40+0100\n"
"Last-Translator: Frédéric Marchal <fmarchal@perso.be>\n"
"Language-Team: French <traduc@traduc.org>\n"
"Language: fr\n"
@@ -579,12 +581,12 @@ msgid " -o <file> Place the output into <file>.\n"
msgstr " -o <fichier> Placer la sortie dans le <fichier>.\n"
#: gcc.c:3478
-#, fuzzy
-#| msgid " -pie Create a position independent executable.\n"
msgid ""
" -pie Create a dynamically linked position independent\n"
" executable.\n"
-msgstr " -pie Créer un exécutable indépendant de la position en mémoire (PIE).\n"
+msgstr ""
+" -pie Créer un exécutable indépendant de la position en\n"
+" mémoire (PIE) lié dynamiquement.\n"
#: gcc.c:3480
msgid " -shared Create a shared library.\n"
@@ -875,10 +877,9 @@ msgstr ""
"%s.\n"
#: gcov-tool.c:529
-#, fuzzy, c-format
-#| msgid "Copyright %s 2014-2017 Free Software Foundation, Inc.\n"
+#, c-format
msgid "Copyright %s 2018 Free Software Foundation, Inc.\n"
-msgstr "Copyright %s 2014-2017 Free Software Foundation, Inc.\n"
+msgstr "Copyright %s 2018 Free Software Foundation, Inc.\n"
#: gcov-tool.c:532 gcov.c:849
#, c-format
@@ -951,16 +952,14 @@ msgid " -i, --intermediate-format Output .gcov file in intermediate text
msgstr " -i, --intermediate-format Sortir le fichier .gcov dans un format texte intermédiaire\n"
#: gcov.c:821
-#, fuzzy, c-format
-#| msgid " -m, --demangled-names Output demangled function names\n"
+#, c-format
msgid " -j, --human-readable Output human readable numbers\n"
-msgstr " -m, --demangled-names Afficher les noms de fonctions sans la décoration des noms\n"
+msgstr " -j, --human-readable Afficher les nombres sous forme lisible par un humain\n"
#: gcov.c:822
-#, fuzzy, c-format
-#| msgid " -n, --no-output Do not create an output file\n"
+#, c-format
msgid " -k, --use-colors Emit colored output\n"
-msgstr " -n, --no-output Ne pas créer de fichier de sortie\n"
+msgstr " -k, --use-colors Produire une sortie colorée\n"
#: gcov.c:823
#, c-format
@@ -1012,10 +1011,9 @@ msgid " -v, --version Print version number, then exit\n"
msgstr " -v, --version Afficher le numéro de version puis quitter\n"
#: gcov.c:833
-#, fuzzy, c-format
-#| msgid " -v, --verbose Verbose mode\n"
+#, c-format
msgid " -w, --verbose Print verbose informations\n"
-msgstr " -v, --verbose Mode verbeux\n"
+msgstr " -w, --verbose Afficher des informations verbeuses\n"
#: gcov.c:834
#, c-format
@@ -1204,21 +1202,19 @@ msgid "call %2d never executed\n"
msgstr "appel %2d jamais exécuté\n"
#: gcov.c:2693
-#, fuzzy, c-format
-#| msgid "branch %2d taken %s%s\n"
+#, c-format
msgid "branch %2d taken %s%s"
-msgstr "branchement %2d pris %s%s\n"
+msgstr "branchement %2d pris %s%s"
#: gcov.c:2698
-#, fuzzy, c-format
-#| msgid "branch %2d never executed\n"
+#, c-format
msgid "branch %2d never executed"
-msgstr "branchement %2d jamais exécuté\n"
+msgstr "branchement %2d jamais exécuté"
#: gcov.c:2701
#, c-format
msgid " (BB %d)"
-msgstr ""
+msgstr " (BB %d)"
#: gcov.c:2708
#, c-format
@@ -1425,16 +1421,14 @@ msgid "The following options are language-related"
msgstr "Les options suivantes concernent des langages"
#: passes.c:1797
-#, fuzzy, c-format
-#| msgid "deducing %qT as %qT"
+#, c-format
msgid "during %s pass: %s\n"
-msgstr "%qT est déduit comme étant %qT"
+msgstr "durant l'étape %s: %s\n"
#: passes.c:1802
-#, fuzzy, c-format
-#| msgid "open %s failed: %s"
+#, c-format
msgid "dump file: %s\n"
-msgstr "l'ouverture de %s a échoué: %s"
+msgstr "fichier de vidange: %s\n"
#: plugin.c:923
msgid "Event"
@@ -1622,7 +1616,7 @@ msgstr "déclarations non concordantes pendant l'optimisation lors de l'édition
#: cif-code.def:100
msgid "variadic thunk call"
-msgstr ""
+msgstr "appel de fragment variadique"
#: cif-code.def:104
msgid "originally indirect function call not considered for inlining"
@@ -1850,12 +1844,12 @@ msgstr "Croissance maximale de la trame de pile causée par la mise en ligne (en
#: params.def:218
#, no-c-format
msgid "Size of the stack guard expressed as a power of two."
-msgstr ""
+msgstr "Taille de la protection de la pile exprimée comme une puissance de deux."
#: params.def:223
#, no-c-format
msgid "Interval in which to probe the stack expressed as a power of two."
-msgstr ""
+msgstr "Intervalle durant lequel sonder la pile, exprimé comme une puissance de deux."
#: params.def:230
#, no-c-format
@@ -2303,15 +2297,14 @@ msgid "The size of L2 cache."
msgstr "La taille du cache L2."
#: params.def:797
-#, fuzzy, no-c-format
-#| msgid "The maximum number of instructions to consider to unroll in a loop on average."
+#, no-c-format
msgid "The maximum number of stmts in loop nest for loop interchange."
-msgstr "Le nombre maximum d'instructions à envisager de déplier en moyenne dans une boucle."
+msgstr "Le nombre maximum de stmts dans une boucle imbriquée pour l'échange de boucle."
#: params.def:804
#, no-c-format
msgid "The minimum stride ratio for loop interchange to be profitable"
-msgstr ""
+msgstr "Le rapport du pas minimum pour que l'échange de boucle soit profitable"
#: params.def:815
#, no-c-format
@@ -2386,7 +2379,7 @@ msgstr "le nombre maximum d'opérations isl, 0 pour illimité"
#: params.def:907
#, no-c-format
msgid "whether codegen errors should be ICEs when -fchecking."
-msgstr ""
+msgstr "est-ce que les erreurs codegen devraient produire des erreurs interne du compilateur (ICE) avec -fchecking."
#: params.def:913
#, no-c-format
@@ -2441,7 +2434,7 @@ msgstr "La taille max de la liste des emplacements pour laquelle des opérations
#: params.def:985
#, no-c-format
msgid "Max. count of debug markers to expand or inline."
-msgstr ""
+msgstr "Nombre max de marqueurs de débogage à étendre ou mettre en ligne."
#: params.def:992
#, no-c-format
@@ -2449,10 +2442,9 @@ msgid "The minimum UID to be used for a nondebug insn."
msgstr "Le UID minimum à utiliser pour une insn qui n'est pas pour le déboguage."
#: params.def:997
-#, fuzzy, no-c-format
-#| msgid "Maximum allowed growth of size of new parameters ipa-sra replaces a pointer to an aggregate with."
+#, no-c-format
msgid "Maximum allowed growth of number and total size of new parameters that ipa-sra replaces a pointer to an aggregate with."
-msgstr "La croissance maximale de la taille autorisée quand IPA-SRA remplace un pointeur vers un agrégat par de nouveaux paramètres."
+msgstr "La croissance maximale autorisée du nombre et de la taille totale des nouveaux paramètres que IPA-SRA remplace par un pointeur vers un agrégat."
#: params.def:1003
#, no-c-format
@@ -2590,10 +2582,9 @@ msgid "Enable asan stack protection."
msgstr "Autoriser ASan à protéger la pile."
#: params.def:1172
-#, fuzzy, no-c-format
-#| msgid "Enable asan globals protection."
+#, no-c-format
msgid "Enable asan allocas/VLAs protection."
-msgstr "Autoriser ASan à protéger les globales."
+msgstr "Autoriser la protection allocas/VLAs de ASan."
#: params.def:1177
#, no-c-format
@@ -2681,10 +2672,9 @@ msgid "Schedule type of omp schedule for loops parallelized by parloops (static,
msgstr "Type d'ordonnancement de l'ordonnanceur OMP pour des boucles parallélisées par parloops (static, dynamic, guided, auto, runtime)."
#: params.def:1268
-#, fuzzy, no-c-format
-#| msgid "The maximum number of instructions to consider to unroll in a loop."
+#, no-c-format
msgid "Minimum number of iterations per thread of an innermost parallelized loop."
-msgstr "Le nombre maximum d'instructions à envisager de déplier dans une boucle."
+msgstr "Le nombre minimum d'itérations par thread d'une boucle parallélisée la plus à l'intérieur."
#: params.def:1274
#, no-c-format
@@ -2729,18 +2719,17 @@ msgstr "Activer la vectorisation de l'épilogue d'une boucle en utilisant une ta
#: params.def:1321
#, no-c-format
msgid "Minimum percentage of memrefs that must go away for unroll-and-jam to be considered profitable."
-msgstr ""
+msgstr "Pourcentage minimum de memrefs qui doit être éliminé pour que le unroll-and-jam soit estimé profitable."
#: params.def:1326
#, no-c-format
msgid "Maximum unroll factor for the unroll-and-jam transformation."
-msgstr ""
+msgstr "Facteur de déroulement maximum pour le unroll-and-jam"
#: params.def:1331
-#, fuzzy, no-c-format
-#| msgid "Maximum number of strings for which strlen optimization pass will track string lengths."
+#, no-c-format
msgid "Maximum number of bits for which we avoid creating FMAs."
-msgstr "Le nombre maximum de chaînes pour lesquelles l'optimisation de strlen conserve la longueur des chaînes."
+msgstr "Le nombre maximum de bits pour lesquels on évite de créer des FMA."
#: c-family/c-format.c:382
msgid "format"
@@ -3016,10 +3005,9 @@ msgid "<command-line>"
msgstr "<ligne-de-commande>"
#: config/aarch64/aarch64.c:6482
-#, fuzzy, c-format
-#| msgid "Unsupported operand for code '%c'"
+#, c-format
msgid "unsupported operand for code '%c'"
-msgstr "Opérande non supporté pour le code « %c »"
+msgstr "opérande non supporté pour le code « %c »"
#: config/aarch64/aarch64.c:6493 config/aarch64/aarch64.c:6509
#: config/aarch64/aarch64.c:6521 config/aarch64/aarch64.c:6532
@@ -3033,10 +3021,9 @@ msgstr "opérande invalide pour « %%%c »"
#: config/aarch64/aarch64.c:6578 config/aarch64/aarch64.c:6589
#: config/aarch64/aarch64.c:6740 config/aarch64/aarch64.c:6751
-#, fuzzy, c-format
-#| msgid "invalid constant"
+#, c-format
msgid "invalid vector constant"
-msgstr "constante invalide"
+msgstr "constante vecteur invalide"
#: config/aarch64/aarch64.c:6601 config/aarch64/aarch64.c:6613
#: config/aarch64/aarch64.c:6624
@@ -3170,10 +3157,9 @@ msgid "invalid operand to %%z code"
msgstr "opérande invalide pour le code %%z"
#: config/arc/arc.c:3870
-#, fuzzy, c-format
-#| msgid "invalid operand to %%Z code"
+#, c-format
msgid "invalid operands to %%c code"
-msgstr "opérande invalide pour le code %%Z"
+msgstr "opérandes invalides pour le code %%c"
#: config/arc/arc.c:3878
#, c-format
@@ -3610,10 +3596,9 @@ msgid "invalid UNSPEC as operand"
msgstr "UNSPEC invalide comme opérande"
#: config/i386/i386.c:17748
-#, fuzzy, c-format
-#| msgid "invalid use of %<restrict%>"
+#, c-format
msgid "invalid use of register '%s'"
-msgstr "usage de %<restrict%> invalide"
+msgstr "utilisation invalide du registre « %s »"
#: config/i386/i386.c:17753
#, c-format
@@ -4604,34 +4589,24 @@ msgid "jump to case label"
msgstr "saut à l'étiquette du « case »"
#: cp/decl.c:3159
-#, fuzzy
-#| msgid " enters try block"
msgid "enters try block"
-msgstr " entre dans le bloc « try »"
+msgstr "entre dans le bloc « try »"
#: cp/decl.c:3165
-#, fuzzy
-#| msgid " enters catch block"
msgid "enters catch block"
-msgstr " entre dans le bloc « catch »"
+msgstr "entre dans le bloc « catch »"
#: cp/decl.c:3171
-#, fuzzy
-#| msgid " enters OpenMP structured block"
msgid "enters OpenMP structured block"
-msgstr " entre dans le bloc structuré OpenMP"
+msgstr "entre dans le bloc structuré OpenMP"
#: cp/decl.c:3177
-#, fuzzy
-#| msgid " enters synchronized or atomic statement"
msgid "enters synchronized or atomic statement"
-msgstr " entre dans l'instruction synchronisée ou atomique"
+msgstr "entre dans l'instruction synchronisée ou atomique"
#: cp/decl.c:3184
-#, fuzzy
-#| msgid " enters constexpr if statement"
msgid "enters constexpr if statement"
-msgstr " entre dans l'instruction « if » « constexpr »"
+msgstr "entre dans l'instruction « if » « constexpr »"
#: cp/error.c:365
msgid "<missing>"
@@ -4679,10 +4654,8 @@ msgid "(static destructors for %s)"
msgstr "(destructeurs statiques pour %s)"
#: cp/error.c:1040
-#, fuzzy
-#| msgid "structure field"
msgid "<structured bindings>"
-msgstr "champ de structure"
+msgstr "<liaisons structurées>"
#: cp/error.c:1143
msgid "vtable for "
@@ -4835,16 +4808,12 @@ msgid "%r%s:%d:%R [ skipping %d instantiation contexts, use -ftemplate-backtra
msgstr "%r%s:%d:%R [ passe outre %d contextes d'instanciation, utilisez -ftemplate-backtrace-limit=0 pour désactiver ]\n"
#: cp/error.c:3624
-#, fuzzy
-#| msgid "%r%s:%d:%d:%R in constexpr expansion of %qs"
msgid "%r%s:%d:%d:%R in %<constexpr%> expansion of %qs"
-msgstr "%r%s:%d:%d:%R dans l'expansion de constexpr de %qs"
+msgstr "%r%s:%d:%d:%R dans l'expansion %<constexpr%> de %qs"
#: cp/error.c:3628
-#, fuzzy
-#| msgid "%r%s:%d:%R in constexpr expansion of %qs"
msgid "%r%s:%d:%R in %<constexpr%> expansion of %qs"
-msgstr "%r%s:%d:%R dans l'expansion de constexpr de %qs"
+msgstr "%r%s:%d:%R dans l'expansion %<constexpr%> de %qs"
#: cp/pt.c:1941 cp/semantics.c:5234
msgid "candidates are:"
@@ -4989,20 +4958,16 @@ msgid "arguments '%s' and '%s' for intrinsic '%s'"
msgstr "arguments « %s » et « %s » pour l'intrinsèque « %s »"
#: fortran/error.c:868
-#, fuzzy
-#| msgid "Fortran 2008 obsolescent feature:"
msgid "Fortran 2018 deleted feature:"
-msgstr "Fonctionnalité Fortran 2008 obsolète :"
+msgstr "Fonctionnalité Fortran 2018 supprimée :"
#: fortran/error.c:871
-#, fuzzy
-#| msgid "Fortran 2008 obsolescent feature:"
msgid "Fortran 2018 obsolescent feature:"
-msgstr "Fonctionnalité Fortran 2008 obsolète :"
+msgstr "Fonctionnalité Fortran 2018 obsolète :"
#: fortran/error.c:874
msgid "Fortran 2018:"
-msgstr ""
+msgstr "Fortran 2018 :"
#: fortran/error.c:880
msgid "Fortran 2008 obsolescent feature:"
@@ -5347,10 +5312,9 @@ msgid "Operands of comparison operator %%<%s%%> at %%L are %s/%s"
msgstr "Les opérandes de l'opérateur de comparaison %%<%s%%> à %%L sont %s/%s"
#: fortran/resolve.c:4031
-#, fuzzy, c-format
-#| msgid "Unknown operator %%<%s%%> at %%L"
+#, c-format
msgid "Unknown operator %%<%s%%> at %%L; did you mean '%s'?"
-msgstr "Opérateur %%<%s%%> inconnu à %%L"
+msgstr "Opérateur %%<%s%%> inconnu à %%L; vouliez-vous utiliser « %s » ?"
#: fortran/resolve.c:4034
#, c-format
@@ -5428,7 +5392,7 @@ msgstr "Débordement d'entier en calculant la quantité de mémoire à allouer"
#: fortran/trans-array.c:9258
#, c-format
msgid "The value of the PDT LEN parameter '%s' does not agree with that in the dummy declaration"
-msgstr ""
+msgstr "La valeur du paramètre PDT LEN « %s » n'est pas en accord avec celle dans la déclaration fictive"
#: fortran/trans-decl.c:5856
#, c-format
@@ -5872,14 +5836,12 @@ msgid "Warn about most implicit conversions."
msgstr "Avertir à propos d'une grande partie des conversions implicites."
#: fortran/lang.opt:242
-#, fuzzy
-#| msgid "Warn about possibly missing parentheses."
msgid "Warn about possibly incorrect subscripts in do loops."
-msgstr "Avertir à propos de parenthèses qui pourraient être manquantes."
+msgstr "Avertir à propos d'indices probablement incorrects dans les boucles « do »."
#: fortran/lang.opt:250
msgid "Warn if loops have been interchanged."
-msgstr ""
+msgstr "Avertir si les boucles ont été échangées."
#: fortran/lang.opt:254
msgid "Warn about function call elimination."
@@ -6007,10 +5969,8 @@ msgid "Use the Cray Pointer extension."
msgstr "Utiliser l'extension de pointeur Cray."
#: fortran/lang.opt:429
-#, fuzzy
-#| msgid "Warn about unprototyped function declarations."
msgid "Generate C prototypes from BIND(C) declarations."
-msgstr "Avertir à propos des déclarations de fonctions sans prototype."
+msgstr "Générer des prototypes C pour les déclarations BIND(C)."
#: fortran/lang.opt:433
msgid "Ignore 'D' in column one in fixed form."
@@ -6053,16 +6013,12 @@ msgid "Set the default real kind to an 8 byte wide type."
msgstr "Fixer le type de réel par défaut à un type avec 8 octets de large."
#: fortran/lang.opt:473
-#, fuzzy
-#| msgid "Set the default real kind to an 8 byte wide type."
msgid "Set the default real kind to an 10 byte wide type."
-msgstr "Fixer le type de réel par défaut à un type avec 8 octets de large."
+msgstr "Fixer le type de réel par défaut à un type avec 10 octets de large."
#: fortran/lang.opt:477
-#, fuzzy
-#| msgid "Set the default real kind to an 8 byte wide type."
msgid "Set the default real kind to an 16 byte wide type."
-msgstr "Fixer le type de réel par défaut à un type avec 8 octets de large."
+msgstr "Fixer le type de réel par défaut à un type avec 16 octets de large."
#: fortran/lang.opt:481
msgid "Allow dollar signs in entity names."
@@ -6141,7 +6097,7 @@ msgstr "-ffree-line-length-<n>\tUtiliser une longueur de ligne n en mode libre."
#: fortran/lang.opt:557
msgid "Try to interchange loops if profitable."
-msgstr ""
+msgstr "Essayer d'interchanger les boucles si c'est profitable."
#: fortran/lang.opt:561
msgid "Enable front end optimization."
@@ -6316,10 +6272,8 @@ msgid "Conform to the ISO Fortran 2008 standard including TS 29113."
msgstr "Être conforme au standard Fortran ISO 2008 y compris TS 29113."
#: fortran/lang.opt:807
-#, fuzzy
-#| msgid "Conform to the ISO Fortran 2008 standard."
msgid "Conform to the ISO Fortran 2018 standard."
-msgstr "Être conforme au standard Fortran ISO 2008."
+msgstr "Être conforme au standard Fortran ISO 2018."
#: fortran/lang.opt:811
msgid "Conform to the ISO Fortran 95 standard."
@@ -6537,26 +6491,20 @@ msgid "Warn about C++ constructs whose meaning differs between ISO C++ 2011 and
msgstr "Avertir à propos de constructions C++ dont la signification diffère entre le C++ ISO 2011 et le C++ ISO 2014."
#: c-family/c.opt:385
-#, fuzzy
-#| msgid "Warn about C++ constructs whose meaning differs between ISO C++ 2011 and ISO C++ 2014."
msgid "Warn about C++ constructs whose meaning differs between ISO C++ 2014 and ISO C++ 2017."
-msgstr "Avertir à propos de constructions C++ dont la signification diffère entre le C++ ISO 2011 et le C++ ISO 2014."
+msgstr "Avertir à propos de constructions C++ dont la signification diffère entre le C++ ISO 2014 et le C++ ISO 2017."
#: c-family/c.opt:389
-#, fuzzy
-#| msgid "Warn about casting functions to incompatible types."
msgid "Warn about casts between incompatible function types."
-msgstr "Avertir quand des fonctions sont transtypées vers des types incompatibles."
+msgstr "Avertir à propos de transtypages entre types de fonctions incompatibles."
#: c-family/c.opt:393
msgid "Warn about casts which discard qualifiers."
msgstr "Avertir à propos des transtypages qui écartent les qualificatifs."
#: c-family/c.opt:397 c-family/c.opt:401
-#, fuzzy
-#| msgid "Warn about comparison of different enum types."
msgid "Warn about catch handlers of non-reference type."
-msgstr "Avertir à propos de comparaisons entre enum de types différents."
+msgstr "Avertir à propos de gestionnaires « catch » de types non référencés."
#: c-family/c.opt:405
msgid "Warn about subscripts whose type is \"char\"."
@@ -6663,10 +6611,8 @@ msgid "This switch is deprecated; use -Werror=implicit-function-declaration inst
msgstr "Cette option est obsolète ; utilisez -Werror=implicit-function-declaration à la place."
#: c-family/c.opt:521
-#, fuzzy
-#| msgid "Warn about implicit function declarations."
msgid "Warn about semicolon after in-class function definition."
-msgstr "Avertir à propos des déclarations de fonctions implicites."
+msgstr "Avertir à propos d'un point-virgule après la définition d'une fonction dans une classe."
#: c-family/c.opt:525
msgid "Warn for implicit type conversions that cause loss of floating point precision."
@@ -6725,10 +6671,8 @@ msgid "Warn about calls to snprintf and similar functions that truncate output."
msgstr "Avertir à propos d'appels à snprintf et aux fonctions similaires qui tronquent la sortie."
#: c-family/c.opt:588
-#, fuzzy
-#| msgid "Warn when a Cell microcoded instruction is emitted."
msgid "Warn when the field in a struct is not aligned."
-msgstr "Avertir lorsqu'une instruction microcodée du Cell est émise."
+msgstr "Avertir lorsqu'un champ dans une structure n'est pas aligné."
#: c-family/c.opt:592
msgid "Warn whenever type qualifiers are ignored."
@@ -6840,7 +6784,7 @@ msgstr "Avertir à propos des champs manquants dans les initialisations des stru
#: c-family/c.opt:711
msgid "Warn about unsafe macros expanding to multiple statements used as a body of a clause such as if, else, while, switch, or for."
-msgstr ""
+msgstr "Avertir à propos des macros non sûres qui s'étendent en plusieurs instructions utilisées comme contenu d'une instruction telle que if, else, while, switch ou for."
#: c-family/c.opt:715
msgid "Warn on direct multiple inheritance."
@@ -6852,7 +6796,7 @@ msgstr "Avertir à propos des définitions d'espaces de noms."
#: c-family/c.opt:723
msgid "Warn when fields in a struct with the packed attribute are misaligned."
-msgstr ""
+msgstr "Avertir quand des champs dans une structure avec des attributs empaquetés sont mal alignés."
#: c-family/c.opt:727
msgid "Warn about missing sized deallocation functions."
@@ -6860,7 +6804,7 @@ msgstr "Avertir quand des fonctions de désallocation basées sur la taille sont
#: c-family/c.opt:731
msgid "Warn about suspicious divisions of two sizeof expressions that don't work correctly with pointers."
-msgstr ""
+msgstr "Avertir à propos de divisions douteuses de deux expressions sizeof qui ne fonctionnent pas correctement avec des pointeurs."
#: c-family/c.opt:735
msgid "Warn about suspicious length parameters to certain string functions if the argument uses sizeof."
@@ -6879,10 +6823,8 @@ msgid "Under the control of Object Size type, warn about buffer overflow in stri
msgstr "Sous le contrôle du type de taille d'objet (c.f. Object Size Checking), avertir à propos des débordements de tampon dans les fonctions de manipulation de chaînes telles que memcpy et strcpy."
#: c-family/c.opt:753
-#, fuzzy
-#| msgid "Warn about buffer overflow in string manipulation functions like memcpy and strcpy."
msgid "Warn about truncation in string manipulation functions like strncat and strncpy."
-msgstr "Avertir à propos des débordements de tampon dans les fonctions de manipulation de chaînes telles que memcpy et strcpy."
+msgstr "Avertir à propos des chaînes tronquées dans les fonctions de manipulation de chaînes telles que strncat et strncpy."
#: c-family/c.opt:757
msgid "Warn about functions which might be candidates for format attributes."
@@ -6953,10 +6895,8 @@ msgid "Warn when a noexcept expression evaluates to false even though the expres
msgstr "Avertir quand une expression « noexcept » est évaluée à faux alors que l'expression ne peut pas générer d'exception en réalité."
#: c-family/c.opt:821
-#, fuzzy
-#| msgid "Warn if C++1z noexcept function type will change the mangled name of a symbol."
msgid "Warn if C++17 noexcept function type will change the mangled name of a symbol."
-msgstr "Avertir si le type de fonction noexcept du C++1z changera le nom décoré d'un symbole."
+msgstr "Avertir si le type de fonction noexcept du C++17 changera le nom décoré d'un symbole."
#: c-family/c.opt:825
msgid "Warn when non-templatized friend functions are declared within a template."
@@ -6964,7 +6904,7 @@ msgstr "Avertir lorsque des fonctions amies sans patron sont déclarées à l'in
#: c-family/c.opt:829
msgid "Warn for unsafe raw memory writes to objects of class types."
-msgstr ""
+msgstr "Avertir à propos d'écritures non sûres en mémoire brut vers des objets de types classe."
#: c-family/c.opt:833
msgid "Warn about non-virtual destructors."
@@ -7364,10 +7304,8 @@ msgid "Transform instrumented builtin calls into calls to wrappers."
msgstr "Transformer les appels aux fonctions intégrées ayant été complétées par du code de contrôle en appels à des wrappers."
#: c-family/c.opt:1339
-#, fuzzy
-#| msgid "Deprecated. This switch has no effect."
msgid "Deprecated in GCC 8. This switch has no effect."
-msgstr "Obsolète. Cette option n'a aucun effet."
+msgstr "Obsolète dans GCC 8. Cette option n'a aucun effet."
#: c-family/c.opt:1343
msgid "Enable support for C++ concepts."
@@ -7408,7 +7346,7 @@ msgstr "Factoriser les constructeurs et destructeurs complexes pour favoriser l'
#: c-family/c.opt:1383
msgid "Print hierarchical comparisons when template types are mismatched."
-msgstr ""
+msgstr "Afficher des comparaisons hiérarchiques quand des types de patrons ne concordent pas."
#: c-family/c.opt:1387
msgid "Preprocess directives only."
@@ -7420,7 +7358,7 @@ msgstr "Autoriser « $ » comme caractère dans les identificateurs."
#: c-family/c.opt:1395
msgid "-fmacro-prefix-map=<old>=<new> Map one directory name to another in __FILE__, __BASE_FILE__, and __builtin_FILE()."
-msgstr ""
+msgstr "-fmacro-prefix-map=<ancien>=<nouveau> Remplacer un nom de répertoire par un autre dans __FILE__, __BASE_FILE__ et __builtin_FILE()."
#: c-family/c.opt:1399
msgid "Write all declarations as Ada code transitively."
@@ -7432,7 +7370,7 @@ msgstr "Écrire toutes les déclarations sous forme de code Ada pour le fichier
#: c-family/c.opt:1410
msgid "-fno-elide-type Do not elide common elements in template comparisons."
-msgstr ""
+msgstr "-fno-elide-type Ne pas éliminer les éléments en communs dans les comparaisons de patrons."
#: c-family/c.opt:1414
msgid "Generate code to check exception specifications."
@@ -7829,22 +7767,16 @@ msgid "Conform to the ISO 2014 C++ standard."
msgstr "Être conforme au standard C++ ISO 2014."
#: c-family/c.opt:1941
-#, fuzzy
-#| msgid "Deprecated in favor of -std=c++11."
msgid "Deprecated in favor of -std=c++17."
-msgstr "Rendu obsolète en faveur de -std=c++11."
+msgstr "Rendu obsolète en faveur de -std=c++17."
#: c-family/c.opt:1945
-#, fuzzy
-#| msgid "Conform to the ISO 2011 C++ standard."
msgid "Conform to the ISO 2017 C++ standard."
-msgstr "Être conforme au standard C++ ISO 2011."
+msgstr "Être conforme au standard C++ ISO 2017."
#: c-family/c.opt:1949
-#, fuzzy
-#| msgid "Conform to the ISO 2017(?) C++ draft standard (experimental and incomplete support)."
msgid "Conform to the ISO 2020(?) C++ draft standard (experimental and incomplete support)."
-msgstr "Être conforme au brouillon du standard C++ ISO 2017(?) (support expérimental et incomplet)."
+msgstr "Être conforme au brouillon du standard C++ ISO 2020(?) (support expérimental et incomplet)."
#: c-family/c.opt:1953 c-family/c.opt:2071
msgid "Conform to the ISO 2011 C standard."
@@ -7856,10 +7788,8 @@ msgstr "Rendu obsolète en faveur de -std=c11."
#: c-family/c.opt:1961 c-family/c.opt:1965 c-family/c.opt:2075
#: c-family/c.opt:2079
-#, fuzzy
-#| msgid "Conform to the ISO 1990 C standard as amended in 1994."
msgid "Conform to the ISO 2017 C standard (expected to be published in 2018)."
-msgstr "Être conforme au standard C ISO 1990 tel que amendé en 1994."
+msgstr "Être conforme au standard C ISO 2017 (publication prévue en 2018)."
#: c-family/c.opt:1969 c-family/c.opt:1973 c-family/c.opt:2055
msgid "Conform to the ISO 1990 C standard."
@@ -7894,22 +7824,16 @@ msgid "Conform to the ISO 2014 C++ standard with GNU extensions."
msgstr "Être conforme au standard C++ ISO 2014 avec les extensions GNU."
#: c-family/c.opt:2011
-#, fuzzy
-#| msgid "Deprecated in favor of -std=gnu++11."
msgid "Deprecated in favor of -std=gnu++17."
-msgstr "Rendu obsolète en faveur de -std=gnu++11."
+msgstr "Rendu obsolète en faveur de -std=gnu++17."
#: c-family/c.opt:2015
-#, fuzzy
-#| msgid "Conform to the ISO 2011 C++ standard with GNU extensions."
msgid "Conform to the ISO 2017 C++ standard with GNU extensions."
-msgstr "Être conforme au standard C++ ISO 2011 avec les extensions GNU."
+msgstr "Être conforme au standard C++ ISO 2017 avec les extensions GNU."
#: c-family/c.opt:2019
-#, fuzzy
-#| msgid "Conform to the ISO 201z(7?) C++ draft standard with GNU extensions (experimental and incomplete support)."
msgid "Conform to the ISO 2020(?) C++ draft standard with GNU extensions (experimental and incomplete support)."
-msgstr "Être conforme au brouillon du standard C++ ISO 201z(7?) avec les extensions GNU (support expérimental et incomplet)."
+msgstr "Être conforme au brouillon du standard C++ ISO 2020(?) avec les extensions GNU (support expérimental et incomplet)."
#: c-family/c.opt:2023
msgid "Conform to the ISO 2011 C standard with GNU extensions."
@@ -7920,10 +7844,8 @@ msgid "Deprecated in favor of -std=gnu11."
msgstr "Rendu obsolète en faveur de -std=gnu11."
#: c-family/c.opt:2031 c-family/c.opt:2035
-#, fuzzy
-#| msgid "Conform to the ISO 2011 C standard with GNU extensions."
msgid "Conform to the ISO 2017 C standard (expected to be published in 2018) with GNU extensions."
-msgstr "Être conforme au standard C ISO 2011 avec les extensions GNU."
+msgstr "Être conforme au standard C ISO 2017 (publication prévue en 2018) avec les extensions GNU."
#: c-family/c.opt:2039 c-family/c.opt:2043
msgid "Conform to the ISO 1990 C standard with GNU extensions."
@@ -8031,7 +7953,7 @@ msgstr "Produire les informations de débogage relatives à l'étape d'analyse d
#: go/lang.opt:86
msgid "-fgo-debug-escape-hash=<string>\tHash value to debug escape analysis."
-msgstr ""
+msgstr "-fgo-debug-escape-hash=<string>\tValeur de hachage pour l'analyse d'échappement de débogage."
#: config/vms/vms.opt:27
msgid "Malloc data into P2 space."
@@ -8524,10 +8446,8 @@ msgid "Specify the code model."
msgstr "Spécifier le modèle de code."
#: config/riscv/riscv.opt:93
-#, fuzzy
-#| msgid "Do not use unaligned memory references."
msgid "Do not generate unaligned memory accesses."
-msgstr "Ne pas utiliser des références mémoire non alignées."
+msgstr "Ne pas générer des accès mémoire non alignées."
#: config/riscv/riscv.opt:97 config/i386/i386.opt:287
#: config/powerpcspe/aix64.opt:36 config/powerpcspe/linux64.opt:32
@@ -8711,14 +8631,12 @@ msgid "Enable the division approximation. Enabling this reduces precision of di
msgstr "Activer l'approximation de la division. Activer cette option réduit la précision des résultats de la division à 16 bits en simple précision et 32 bits en double précision."
#: config/aarch64/aarch64.opt:190
-#, fuzzy
-#| msgid "The possible TLS dialects:"
msgid "The possible SVE vector lengths:"
-msgstr "Les dialectes TLS possibles:"
+msgstr "Les longueurs de vecteurs SVE possibles:"
#: config/aarch64/aarch64.opt:212
msgid "-msve-vector-bits=N\tSet the number of bits in an SVE vector register to N."
-msgstr ""
+msgstr "-msve-vector-bits=N\tFixe le nombre de bits dans le registre vectoriel SVE à N."
#: config/aarch64/aarch64.opt:216
msgid "Enables verbose cost model dumping in the debug dump files."
@@ -9070,17 +8988,15 @@ msgstr "Éviter l'utilisation des instructions DIV et MOD"
#: config/ft32/ft32.opt:35
msgid "target the FT32B architecture"
-msgstr ""
+msgstr "cibler l'architecture FT32B"
#: config/ft32/ft32.opt:39
-#, fuzzy
-#| msgid "Enable code hoisting."
msgid "enable FT32B code compression"
-msgstr "Activer la sortie du code hors des boucles."
+msgstr "activer la compression de code FT32B"
#: config/ft32/ft32.opt:43
msgid "Avoid placing any readable data in program memory"
-msgstr ""
+msgstr "Évite de placer des données lisibles dans la mémoire du programme"
#: config/h8300/h8300.opt:23
msgid "Generate H8S code."
@@ -9343,10 +9259,8 @@ msgid "Known assembler dialects (for use with the -masm= option):"
msgstr "Dialectes d'assembleurs connus (à utiliser avec l'option -masm=):"
#: config/i386/i386.opt:275
-#, fuzzy
-#| msgid "Branches are this expensive (1-5, arbitrary units)."
msgid "Branches are this expensive (arbitrary units)."
-msgstr "Les branchements sont coûteux à ce point (1-5, unités arbitraires)."
+msgstr "Les branchements sont coûteux à ce point (unités arbitraires)."
#: config/i386/i386.opt:279
msgid "-mlarge-data-threshold=<number>\tData greater than given threshold will go into .ldata section in x86-64 medium model."
@@ -9503,7 +9417,7 @@ msgstr "ABI connues (à utiliser avec l'option -mabi=):"
#: config/i386/i386.opt:547
msgid "Use libgcc stubs to save and restore registers clobbered by 64-bit Microsoft to System V ABI calls."
-msgstr ""
+msgstr "Utiliser des stubs de libgcc pour sauvegarder et rétablir les registres écrasés par les appels 64 bits de Microsoft vers l'ABI System V"
#: config/i386/i386.opt:551 config/powerpcspe/powerpcspe.opt:189
#: config/rs6000/rs6000.opt:208
@@ -9547,16 +9461,12 @@ msgid "Use 128-bit AVX instructions instead of 256-bit AVX instructions in the a
msgstr "Utiliser les instructions AVX 128 bits au lieu des instructions AVX 256 bits dans le vectoriseur automatique."
#: config/i386/i386.opt:600
-#, fuzzy
-#| msgid "Use 128-bit AVX instructions instead of 256-bit AVX instructions in the auto-vectorizer."
msgid "Use given register vector width instructions instead of maximum register width in the auto-vectorizer."
-msgstr "Utiliser les instructions AVX 128 bits au lieu des instructions AVX 256 bits dans le vectoriseur automatique."
+msgstr "Utiliser les instructions de largeur de registre vectoriel donné au lieu de la largeur de registre maximale dans le vectoriseur automatique."
#: config/i386/i386.opt:604
-#, fuzzy
-#| msgid "Known stack protector guard (for use with the -mstack-protector-guard= option):"
msgid "Known preferred register vector length (to use with the -mprefer-vector-width= option)"
-msgstr "Méthodes connues pour protéger la pile (à utiliser avec l'option -mstack-protector-guard=):"
+msgstr "Longueur de registre vectoriel préférée connue (à utiliser avec l'option -mprefer-vector-width=):"
#: config/i386/i386.opt:622
msgid "Generate 32bit i386 code."
@@ -9675,22 +9585,16 @@ msgid "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F a
msgstr "Supporter les fonctions internes MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F et AVX512VPOPCNTDQ et la génération de code."
#: config/i386/i386.opt:742
-#, fuzzy
-#| msgid "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512VBMI built-in functions and code generation."
msgid "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and AVX512VBMI2 built-in functions and code generation."
-msgstr "Supporter les fonctions internes MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F et AVX512VBMI et la génération de code."
+msgstr "Supporter les fonctions internes MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F et AVX512VBMI2 et la génération de code."
#: config/i386/i386.opt:746
-#, fuzzy
-#| msgid "Support BMI built-in functions and code generation."
msgid "Support AVX512VNNI built-in functions and code generation."
-msgstr "Supporter les fonctions internes BMI et la génération de code."
+msgstr "Supporter les fonctions internes AVX512VNNI et la génération de code."
#: config/i386/i386.opt:750
-#, fuzzy
-#| msgid "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and AVX5124FMAPS built-in functions and code generation."
msgid "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and AVX512BITALG built-in functions and code generation."
-msgstr "Supporter les fonctions internes MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F et AVX5124FMAPS et la génération de code."
+msgstr "Supporter les fonctions internes MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F et AVX512BITALG et la génération de code."
#: config/i386/i386.opt:754
msgid "Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and FMA built-in functions and code generation."
@@ -9729,22 +9633,16 @@ msgid "Support RDPID built-in functions and code generation."
msgstr "Supporter les fonctions internes RDPID et la génération de code."
#: config/i386/i386.opt:790
-#, fuzzy
-#| msgid "Support BMI built-in functions and code generation."
msgid "Support GFNI built-in functions and code generation."
-msgstr "Supporter les fonctions internes BMI et la génération de code."
+msgstr "Supporter les fonctions internes GFNI et la génération de code."
#: config/i386/i386.opt:794
-#, fuzzy
-#| msgid "Support AES built-in functions and code generation."
msgid "Support VAES built-in functions and code generation."
-msgstr "Supporter les fonctions internes AES et la génération de code."
+msgstr "Supporter les fonctions internes VAES et la génération de code."
#: config/i386/i386.opt:798
-#, fuzzy
-#| msgid "Support PCLMUL built-in functions and code generation."
msgid "Support VPCLMULQDQ built-in functions and code generation."
-msgstr "Supporter les fonctions internes PCLMUL et la génération de code."
+msgstr "Supporter les fonctions internes VPCLMULQDQ et la génération de code."
#: config/i386/i386.opt:802
msgid "Support BMI built-in functions and code generation."
@@ -9926,58 +9824,48 @@ msgid "Use the given offset for addressing the stack-protector guard."
msgstr "Utiliser le décalage donné pour adresser la protection de la pile."
#: config/i386/i386.opt:991
-#, fuzzy
-#| msgid "Use the given offset for addressing the stack-protector guard."
msgid "Use the given symbol for addressing the stack-protector guard."
-msgstr "Utiliser le décalage donné pour adresser la protection de la pile."
+msgstr "Utiliser le symbole donné pour adresser la protection de la pile."
#: config/i386/i386.opt:995
msgid "Attempt to avoid generating instruction sequences containing ret bytes."
msgstr "Essayer d'éviter de générer des séquences d'instructions contenant des octets « ret »."
#: config/i386/i386.opt:1003
-#, fuzzy
-#| msgid "Support MMX and SSE built-in functions and code generation."
msgid "Support Control-flow Enforcment Technology (CET) built-in functions and code generation."
-msgstr "Supporter les fonctions internes MMX et SSE et la génération de code."
+msgstr "Supporter les fonctions internes CET (Control-flow Enforcment Technology) et la génération de code."
#: config/i386/i386.opt:1008
msgid "Specifically enables an indirect branch tracking feature from Control-flow Enforcment Technology (CET)."
-msgstr ""
+msgstr "Activer spécifiquement une fonctionnalité de suivi d'un branchement indirect de CET (Control-flow Enforcment Technology)."
#: config/i386/i386.opt:1013
msgid "Specifically enables an shadow stack support feature from Control-flow Enforcment Technology (CET)."
-msgstr ""
+msgstr "Activer spécifiquement une fonctionnalité supportant la pile masquée de CET (Control-flow Enforcment Technology)."
#: config/i386/i386.opt:1018
msgid "Turn on CET instrumentation for switch statements, which use jump table and indirect jump."
-msgstr ""
+msgstr "Activer l'instrumentalisation CET pour les instructions switch, elle utilise une table de sauts et des sauts indirects."
#: config/i386/i386.opt:1023
-#, fuzzy
-#| msgid "Warn about function call elimination."
msgid "Make all function calls indirect."
-msgstr "Avertir à propos de l'élimination d'appels de fonctions."
+msgstr "Rendre indirects tous les appels de fonctions."
#: config/i386/i386.opt:1027
msgid "Convert indirect call and jump to call and return thunks."
-msgstr ""
+msgstr "Convertir les appel et saut indirects en fragment d'appel et de saut"
#: config/i386/i386.opt:1031
-#, fuzzy
-#| msgid "function return type cannot be function"
msgid "Convert function return to call and return thunk."
-msgstr "le type retourné par une fonction ne peut être une fonction"
+msgstr "Convertir le retour de fonction en un fragment d'appel et de retour."
#: config/i386/i386.opt:1035
-#, fuzzy
-#| msgid "Known data alignment choices (for use with the -malign-data= option):"
msgid "Known indirect branch choices (for use with the -mindirect-branch=/-mfunction-return= options):"
-msgstr "Choix connus pour l'alignement de données (à utiliser avec l'option -malign-data=):"
+msgstr "Choix connus pour le branchement indirect (à utiliser avec les options -mindirect-branch=/-mfunction-return=):"
#: config/i386/i386.opt:1051
msgid "Force indirect call and jump via register."
-msgstr ""
+msgstr "Forcer les appels indirects et les sauts via un registre."
#: config/pa/pa64-hpux.opt:23
msgid "Assume code will be linked by GNU ld."
@@ -10866,10 +10754,8 @@ msgid "-mmcu=MCU\tSelect the target MCU."
msgstr "-mmcu=MCU\tSélectionner le MCU cible."
#: config/avr/avr.opt:31
-#, fuzzy
-#| msgid "Use subroutines for function prologues and epilogues."
msgid "Allow usage of __gcc_isr pseudo instructions in ISR prologues and epilogues."
-msgstr "Utiliser des sous-routines pour les prologue et épilogue des fonctions."
+msgstr "Autoriser l'utilisation des pseudo-instructions __gcc_isr dans les prologues et épilogues ISR."
#: config/avr/avr.opt:35
msgid "Set the number of 64 KiB flash segments."
@@ -10885,7 +10771,7 @@ msgstr "Activer le support et l'utilisation des instructions Lire-Modifier-Écri
#: config/avr/avr.opt:53
msgid "Use RJMP / RCALL even though CALL / JMP are available."
-msgstr ""
+msgstr "Utiliser RJMP / RCALL même si CALL /JMP sont disponibles."
#: config/avr/avr.opt:57
msgid "Use an 8-bit 'int' type."
@@ -10901,7 +10787,7 @@ msgstr "Définir le coût du branchement dans des instructions de branchements c
#: config/avr/avr.opt:69
msgid "Treat main as if it had attribute OS_task."
-msgstr ""
+msgstr "Traiter « main » comme si il avait l'attribut OS_task."
#: config/avr/avr.opt:79
msgid "Change only the low 8 bits of the stack pointer."
@@ -11250,10 +11136,8 @@ msgid "Permit scheduling of a function's prologue sequence."
msgstr "Permettre l'ordonnancement de la séquence du prologue d'une fonction."
#: config/arm/arm.opt:195
-#, fuzzy
-#| msgid "Specify the minimum bit alignment of structures."
msgid "Specify the minimum bit alignment of structures. (Deprecated)."
-msgstr "Spécifier l'alignement de bits minimum des structures."
+msgstr "Spécifier l'alignement de bits minimum des structures. (Déprécié)."
#: config/arm/arm.opt:199
msgid "Generate code for Thumb state."
@@ -11302,7 +11186,7 @@ msgstr "Utiliser les registres doubles mots (plutôt que quadruples mots) de Neo
#: config/arm/arm.opt:259
msgid "Enable more verbose RTX cost dumps during debug. For GCC developers use only."
-msgstr ""
+msgstr "Activer des décharges de coût RTX plus verbeux durant le débogage. Uniquement pour les développeurs de GCC."
#: config/arm/arm.opt:263
msgid "Only generate absolute relocations on word sized values."
@@ -11338,11 +11222,11 @@ msgstr "Ne pas autoriser les données constantes à être placées dans les sect
#: config/arm/arm.opt:296
msgid "When linking for big-endian targets, generate a BE8 format image."
-msgstr ""
+msgstr "Lors de l'édition de liens pour des cibles gros boutistes, générer une image au format BE8."
#: config/arm/arm.opt:300
msgid "When linking for big-endian targets, generate a legacy BE32 format image."
-msgstr ""
+msgstr "Lors de l'édition de liens pour des cibles gros-boutistes, générer une image au format historique BE32."
#: config/arm/arm.opt:304 config/sh/sh.opt:195
msgid "Cost to assume for a branch insn."
@@ -11490,24 +11374,20 @@ msgid "Specify the memory model in effect for the program."
msgstr "Spécifier le modèle mémoire actif pour le programme."
#: config/rs6000/rs6000.opt:165
-#, fuzzy
-#| msgid "Enable tail merging on trees."
msgid "Enable early gimple folding of builtins."
-msgstr "Activer la fusion des appels en fin de fonction (tail call) sur les arbres."
+msgstr "Activer la fusion gimple précoce des fonctions internes."
#: config/rs6000/rs6000.opt:188
-#, fuzzy
-#| msgid "%qs is deprecated"
msgid "%<-mstring%> is deprecated"
-msgstr "%qs est obsolète"
+msgstr "%<-mstring%> est obsolète"
#: config/rs6000/rs6000.opt:338
msgid "Specify the maximum number of bytes to compare inline with non-looping code. If this is set to 0, all inline expansion (non-loop and loop) of memcmp is disabled."
-msgstr ""
+msgstr "Spécifier le nombre maximum d'octets à comparer en ligne avec le code qui ne participe pas à la boucle. Si cette valeur vaut 0, toutes les expansions en ligne (non boucle et boucle) de memcmp sont désactivées."
#: config/rs6000/rs6000.opt:342
msgid "Specify the maximum number of bytes to compare inline with loop code generation. If the length is not known at compile time, memcmp will be called after this many bytes are compared. By default, a length will be picked depending on the tuning target."
-msgstr ""
+msgstr "Spécifier le nombre maximum d'octets à comparer en ligne avec la génération de code de boucle. Si la longueur n'est pas connue au moment de la compilation, memcmp sera appelé après que ce nombre d'octets ait été comparé. Par défaut, la longueur est choisie sur base des paramètres de réglages."
#: config/alpha/alpha.opt:27
msgid "Use fp registers."
@@ -12182,11 +12062,11 @@ msgstr "Activer la génération des instructions CDX du R2."
#: config/nios2/nios2.opt:592
msgid "Regular expression matching additional GP-addressible section names."
-msgstr ""
+msgstr "Expression régulière correspondant à des noms de sections adressables par GP supplémentaires"
#: config/nios2/nios2.opt:596
msgid "Regular expression matching section names for r0-relative addressing."
-msgstr ""
+msgstr "Expression régulière correspondant à des noms de sections pour l'adressage relatif à r0."
#: config/rx/rx.opt:29
msgid "Store doubles in 64 bits."
@@ -12628,16 +12508,12 @@ msgid "Generate performance extension instructions."
msgstr "Générer des instructions de l'extension de performance."
#: config/nds32/nds32.opt:66
-#, fuzzy
-#| msgid "Generate performance extension instructions."
msgid "Generate performance extension version 2 instructions."
-msgstr "Générer des instructions de l'extension de performance."
+msgstr "Générer des instructions de l'extension de performance version 2."
#: config/nds32/nds32.opt:70
-#, fuzzy
-#| msgid "Generate performance extension instructions."
msgid "Generate string extension instructions."
-msgstr "Générer des instructions de l'extension de performance."
+msgstr "Générer des instructions de l'extension de chaînes."
#: config/nds32/nds32.opt:74
msgid "Generate v3 push25/pop25 instructions."
@@ -13454,7 +13330,7 @@ msgstr "Identique à -mA7."
#: config/arc/arc.opt:58
msgid "Force all calls to be made via a jli instruction."
-msgstr ""
+msgstr "Forcer tous les appels à être faits via une instruction jli."
#: config/arc/arc.opt:62
msgid "-mmpy-option=MPY Compile ARCv2 code with a multiplier design option."
@@ -13572,10 +13448,8 @@ msgid "Cost to assume for a multiply instruction, with 4 being equal to a normal
msgstr "Coût supposé d'une instruction de multiplication où 4 est égal à une insn normale."
#: config/arc/arc.opt:254
-#, fuzzy
-#| msgid "-mcpu=CPU\tCompile code for ARC variant CPU."
msgid "-mcpu=TUNE Tune code for given ARC variant."
-msgstr "-mcpu=CPU\tCompiler le code pour la variante du processeur ARC."
+msgstr "-mcpu=TUNE Ajuste le code pour la variante ARC spécifiée."
#: config/arc/arc.opt:282
msgid "Enable the use of indexed loads."
@@ -13726,24 +13600,20 @@ msgid "Enable use of NPS400 xld/xst extension."
msgstr "Activer l'utilisation de l'extension xld/xst du NPS400."
#: config/arc/arc.opt:500
-#, fuzzy
-#| msgid "Specifies the number of registers to reserve for interrupt handlers."
msgid "Specifies the registers that the processor saves on an interrupt entry and exit."
-msgstr "Spécifier le nombre de registres à réserver pour les gestionnaires d'interruptions."
+msgstr "Spécifier les registres que le processeur sauvegarde à l'entrée et à la sortie d'une interruption."
#: config/arc/arc.opt:504
-#, fuzzy
-#| msgid "Specifies the number of registers to reserve for interrupt handlers."
msgid "Specifies the number of registers replicated in second register bank on entry to fast interrupt."
-msgstr "Spécifier le nombre de registres à réserver pour les gestionnaires d'interruptions."
+msgstr "Spécifier le nombre de registres à répliquer dans la deuxième banque de registres à l'entrée d'une interruption rapide."
#: config/arc/arc.opt:508
msgid "Sets LP_COUNT register width. Possible values are 8, 16, 20, 24, 28, and 32."
-msgstr ""
+msgstr "Définir la largeur du registre LP_COUNT. Les valeurs possibles sont 8, 16, 20, 24, 28 et 32."
#: config/arc/arc.opt:533
msgid "Enable 16-entry register file."
-msgstr ""
+msgstr "Activer le fichier de registre à 16 entrées."
#: lto/lang.opt:28
#, c-format
@@ -13827,10 +13697,8 @@ msgid "Warn about inappropriate attribute usage."
msgstr "Avertir à propos de l'utilisation inappropriée d'un attribut."
#: common.opt:567
-#, fuzzy
-#| msgid "Warn about type and rank mismatches between arguments and parameters."
msgid "Warn about type safety and similar errors in attribute alias and related."
-msgstr "Avertir à propos d'incohérences de type et de rang entre les arguments et les paramètres."
+msgstr "Avertir à propos de la sécurité du type et les erreurs similaires dans les alias d'attributs et apparentés."
#: common.opt:571 common.opt:575
msgid "Warn about pointer casts which increase alignment."
@@ -13965,10 +13833,8 @@ msgid "Warn about optimizations that assume that signed overflow is undefined."
msgstr "Avertir à propos d'optimisations qui supposent que le débordement d'un nombre signé est indéfini."
#: common.opt:730
-#, fuzzy
-#| msgid "Warn about functions which might be candidates for __attribute__((const))."
msgid "Warn about functions which might be candidates for __attribute__((cold))."
-msgstr "Avertir à propos des fonctions qui seraient candidates pour __attribute__((const))."
+msgstr "Avertir à propos des fonctions qui seraient candidates pour __attribute__((cold))."
#: common.opt:734
msgid "Warn about functions which might be candidates for __attribute__((const))."
@@ -13983,10 +13849,8 @@ msgid "Warn about functions which might be candidates for __attribute__((noretur
msgstr "Avertir à propos des fonctions qui seraient candidates pour __attribute__((noreturn))."
#: common.opt:746
-#, fuzzy
-#| msgid "Warn about functions which might be candidates for __attribute__((const))."
msgid "Warn about functions which might be candidates for __attribute__((malloc))."
-msgstr "Avertir à propos des fonctions qui seraient candidates pour __attribute__((const))."
+msgstr "Avertir à propos des fonctions qui seraient candidates pour __attribute__((malloc))."
#: common.opt:750
msgid "Warn about C++ polymorphic types where adding final keyword would improve code quality."
@@ -14105,10 +13969,8 @@ msgid "Select what to sanitize."
msgstr "Sélectionner quoi assainir."
#: common.opt:1005
-#, fuzzy
-#| msgid "Select what to sanitize."
msgid "Select what to coverage sanitize."
-msgstr "Sélectionner quoi assainir."
+msgstr "Sélectionner ce que la couverture assaini."
#: common.opt:1009
msgid "-fasan-shadow-offset=<number>\tUse custom shadow memory offset."
@@ -14255,16 +14117,12 @@ msgid "-fdbg-cnt=<counter>:<limit>[,<counter>:<limit>,...]\tSet the debug counte
msgstr "-fdbg-cnt=<compteur>:<limite>[,<compteur>:<limite>,…]\tDéfinir la limite du compteur de débogage."
#: common.opt:1178
-#, fuzzy
-#| msgid "Map one directory name to another in debug information."
msgid "-fdebug-prefix-map=<old>=<new> Map one directory name to another in debug information."
-msgstr "Remplacer un nom de répertoire par un autre dans les informations de débogage."
+msgstr "-fdebug-prefix-map=<old>=<new> Remplacer un nom de répertoire par un autre dans les informations de débogage."
#: common.opt:1182
-#, fuzzy
-#| msgid "Map one directory name to another in debug information."
msgid "-ffile-prefix-map=<old>=<new> Map one directory name to another in compilation result."
-msgstr "Remplacer un nom de répertoire par un autre dans les informations de débogage."
+msgstr "-ffile-prefix-map=<old>=<new> Remplacer un nom de répertoire par un autre dans le résultat de la compilation."
#: common.opt:1186
msgid "Output .debug_types section when using DWARF v4 debuginfo."
@@ -14311,8 +14169,6 @@ msgid "-fdiagnostics-color=[never|always|auto]\tColorize diagnostics."
msgstr "-fdiagnostics-color=[never|always|auto]\tAfficher les diagnostiques en couleur."
#: common.opt:1265
-#, fuzzy
-#| msgid "Print fixit hints in machine-readable form."
msgid "Print fix-it hints in machine-readable form."
msgstr "Afficher les indices pour la correction sous forme lisible par une machine."
@@ -14505,16 +14361,12 @@ msgid "Enable loop nest transforms. Same as -floop-nest-optimize."
msgstr "Activer les transformations de boucles imbriquées. Identique à -floop-nest-optimize."
#: common.opt:1512
-#, fuzzy
-#| msgid "Enable loop header copying on trees."
msgid "Enable loop interchange on trees."
-msgstr "Activer la copie des en-têtes de boucles sur les arbres."
+msgstr "Activer l'échange de boucles sur les arbres."
#: common.opt:1520
-#, fuzzy
-#| msgid "Perform loop unrolling for all loops."
msgid "Perform unroll-and-jam on loops."
-msgstr "Dérouler toutes les boucles."
+msgstr "Réaliser le unroll-and-jam."
#: common.opt:1524
msgid "Enable support for GNU transactional memory."
@@ -14599,13 +14451,12 @@ msgstr "Mettre en ligne les opérations __atomic quand une séquence d'instructi
#: common.opt:1636
msgid "-fcf-protection=[full|branch|return|none]\tInstrument functions with checks to verify jump/call/return control-flow transfer instructions have valid targets."
-msgstr ""
+msgstr "-fcf-protection=[full|branch|return|none]\tInstrumentaliser les fonctions avec des contrôles pour vérifier que les instructions de contrôle de flux jump/call/return ont une cible valable."
#: common.opt:1640
-#, fuzzy, c-format
-#| msgid "unknown Stack Reuse Level %qs"
+#, c-format
msgid "unknown Cotrol-Flow Protection Level %qs"
-msgstr "Niveau de réutilisation de la pile %qs inconnu"
+msgstr "niveau de Control-Flow Protection %qs inconnu"
#: common.opt:1656
msgid "Instrument function entry and exit with profiling calls."
@@ -14727,7 +14578,7 @@ msgstr "Préfixer les symboles externes avec un caractère de soulignement."
#: common.opt:1803
msgid "Do CFG-sensitive rematerialization in LRA."
-msgstr "Faire une rematérialisation sensible à CFG pendant LRA."
+msgstr "Faire une rematérialisation sensible au CFG pendant LRA."
#: common.opt:1807
msgid "Enable link-time optimization."
@@ -14931,10 +14782,8 @@ msgid "Enable basic program profiling code."
msgstr "Autoriser le code de profilage de base du programme."
#: common.opt:2030
-#, fuzzy
-#| msgid "Generate bounds passing for calls."
msgid "Generate absolute source path names for gcov."
-msgstr "Générer du code pour passer les limites dans les appels."
+msgstr "Générer des noms de chemins absolus vers le code source pour gcov."
#: common.opt:2034
msgid "Insert arc-based program profiling code."
@@ -14986,10 +14835,8 @@ msgid "Enable function reordering that improves code placement."
msgstr "Activer la réorganisation des fonctions qui améliore le placement du code."
#: common.opt:2091
-#, fuzzy
-#| msgid "Generate cld instruction in the function prologue."
msgid "Insert NOP instructions at each function entry."
-msgstr "Générer l'instruction cld dans le prologue de fonctions."
+msgstr "Insérer des instructions NOP à chaque entrée de fonction."
#: common.opt:2098
msgid "-frandom-seed=<string>\tMake compile reproducible using <string>."
@@ -15222,7 +15069,7 @@ msgstr "Insérer du code de vérification de la pile dans le programme. Identiqu
#: common.opt:2371
msgid "Insert code to probe each page of stack space as it is allocated to protect from stack-clash style attacks."
-msgstr ""
+msgstr "Insérer du code pour sonder chaque page de l'espace de la pile quand il est alloué pour protéger contre des attaques visant une collision de pile (stack-clash)."
#: common.opt:2379
msgid "-fstack-limit-register=<register>\tTrap if the stack goes past <register>."
@@ -15257,10 +15104,8 @@ msgid "Assume strict aliasing rules apply."
msgstr "Supposer que la règle selon laquelle une zone mémoire ne peut être accessible que par un seul pointeur (strict aliasing) s'applique."
#: common.opt:2419
-#, fuzzy
-#| msgid "Treat signed overflow as undefined."
msgid "Treat signed overflow as undefined. Negated as -fwrapv -fwrapv-pointer."
-msgstr "Traiter les débordements signés comme étant indéfinis."
+msgstr "Traiter les débordements signés comme étant indéfinis. Inversé par -fwrapv -fwrapv-pointer."
#: common.opt:2423
msgid "Implement __atomic operations via libcalls to legacy __sync functions."
@@ -15596,10 +15441,8 @@ msgid "Perform whole program optimizations."
msgstr "Réaliser les optimisations sur tout le programme."
#: common.opt:2869
-#, fuzzy
-#| msgid "Assume signed arithmetic overflow wraps around."
msgid "Assume pointer overflow wraps around."
-msgstr "Supposer que le débordement de l'arithmétique signée boucle sur la plage accessible."
+msgstr "Supposer que le débordement de pointeur revient au départ."
#: common.opt:2873
msgid "Assume signed arithmetic overflow wraps around."
@@ -15614,8 +15457,7 @@ msgid "Generate debug information in default format."
msgstr "Générer les informations de débogage dans le format par défaut."
#: common.opt:2884 common.opt:2888 common.opt:2892 common.opt:2896
-#, fuzzy, c-format
-#| msgid "switch %qs is no longer supported"
+#, c-format
msgid "switch %qs no longer supported"
msgstr "l'option %qs n'est plus supportée"
@@ -15665,7 +15507,7 @@ msgstr "Générer les informations de débogage dans le format STABS étendu."
#: common.opt:2949
msgid "Emit progressive recommended breakpoint locations."
-msgstr ""
+msgstr "Émettre des emplacements de points d'arrêt progressifs recommandés"
#: common.opt:2953
msgid "Don't emit DWARF additions beyond selected version."
@@ -15736,22 +15578,16 @@ msgid "Create a shared library."
msgstr "Créer une bibliothèque partagée."
#: common.opt:3173
-#, fuzzy
-#| msgid "Don't create a position independent executable."
msgid "Don't create a dynamically linked position independent executable."
-msgstr "Ne pas créer un exécutable indépendant de la position."
+msgstr "Ne pas créer un exécutable indépendant de la position dynamiquement lié."
#: common.opt:3177
-#, fuzzy
-#| msgid "Create a position independent executable."
msgid "Create a dynamically linked position independent executable."
-msgstr "Créer un exécutable indépendant de la position."
+msgstr "Créer un exécutable indépendant de la position dynamiquement lié."
#: common.opt:3181
-#, fuzzy
-#| msgid "Create a position independent executable."
msgid "Create a static position independent executable."
-msgstr "Créer un exécutable indépendant de la position."
+msgstr "Créer un exécutable statique indépendant de la position."
#: common.opt:3188
msgid "Use caller save register across calls if possible."
@@ -16118,10 +15954,8 @@ msgid "cannot use type %s as type %s"
msgstr "impossible d'utiliser le type %s comme type %s"
#: go/gofrontend/types.cc:781
-#, fuzzy
-#| msgid "conversion to incomplete type"
msgid "conversion from normal type to notinheap type"
-msgstr "conversion vers un type incomplet"
+msgstr "conversion d'un type normal vers un type notinheap"
#: go/gofrontend/types.cc:4452
msgid "different receiver types"
@@ -16195,14 +16029,13 @@ msgstr "la méthode %s%s%s est marquée comme go:nointerface"
#: attribs.c:421
#, gcc-internal-format
msgid "ignoring attribute %qE in declaration of a built-in function %qD because it conflicts with attribute %qs"
-msgstr ""
+msgstr "l'attribut %qE est ignoré dans la déclaration d'une fonction interne %qD car il est en conflit avec l'attribut %qs"
# %qs est remplacé par un texte non traduit: « hot », « cold », « always_inline ».
#: attribs.c:427
-#, fuzzy, gcc-internal-format
-#| msgid "%qE attribute ignored due to conflict with attribute %qs"
+#, gcc-internal-format
msgid "ignoring attribute %qE because it conflicts with attribute %qs"
-msgstr "l'attribut %qE est ignoré à cause d'un conflit avec l'attribut %qs"
+msgstr "l'attribut %qE est ignoré car il est en conflit avec l'attribut %qs"
#: attribs.c:433 c-family/c-attribs.c:1893 cp/decl.c:13547 cp/friend.c:302
#: cp/tree.c:4471
@@ -16295,10 +16128,9 @@ msgid "%qE attribute ignored"
msgstr "attribut %qE ignoré"
#: attribs.c:973
-#, fuzzy, gcc-internal-format
-#| msgid "missing %<target%> attribute for multi-versioned %D"
+#, gcc-internal-format
msgid "missing %<target%> attribute for multi-versioned %qD"
-msgstr "attribut %<target%> manquant pour %D avec plusieurs versions"
+msgstr "attribut %<target%> manquant pour %qD avec plusieurs versions"
#: attribs.c:976 cp/decl.c:1218 cp/decl.c:1944 cp/decl.c:1954 cp/decl.c:2516
#: cp/decl.c:2935
@@ -16422,94 +16254,79 @@ msgid "invalid third argument to %<__builtin_prefetch%>; using zero"
msgstr "le troisième argument de %<__builtin_prefetch%> est invalide; utilisation de zéro"
#: builtins.c:3132
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: specified size %wu exceeds maximum object size %wu"
+#, gcc-internal-format
msgid "%K%qD specified size %E exceeds maximum object size %E"
-msgstr "%K%qD: la taille %wu spécifiée excède la taille maximale %wu de l'objet"
+msgstr "%K%qD: la taille %E spécifiée excède la taille maximale %E de l'objet"
#: builtins.c:3137
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: specified size between %wu and %wu exceeds maximum object size %wu"
+#, gcc-internal-format
msgid "%K%qD specified size between %E and %E exceeds maximum object size %E"
-msgstr "%K%qD: la taille spécifiée entre %wu et %wu excède la taille maximale %wu de l'objet"
+msgstr "%K%qD: la taille spécifiée entre %E et %E excède la taille maximale %E de l'objet"
#: builtins.c:3170 builtins.c:3186
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD writing %wu bytes into a region of size %wu overflows the destination"
+#, gcc-internal-format
msgid "%K%qD writing %E or more bytes into a region of size %E overflows the destination"
-msgstr "%K%qD: l'écriture de %wu octets dans une région de taille %wu déborde de la destination"
+msgstr "%K%qD: l'écriture de %E octets ou plus dans une région de taille %E déborde de la destination"
#: builtins.c:3177
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: writing %wu byte into a region of size %wu overflows the destination"
+#, gcc-internal-format
msgid "%K%qD writing %E byte into a region of size %E overflows the destination"
-msgstr "%K%qD: l'écriture de %wu octet dans une région de taille %wu déborde de la destination"
+msgstr "%K%qD: l'écriture de %E octet dans une région de taille %E déborde de la destination"
#: builtins.c:3179
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD writing %wu bytes into a region of size %wu overflows the destination"
+#, gcc-internal-format
msgid "%K%qD writing %E bytes into a region of size %E overflows the destination"
-msgstr "%K%qD: l'écriture de %wu octets dans une région de taille %wu déborde de la destination"
+msgstr "%K%qD: l'écriture de %E octets dans une région de taille %E déborde de la destination"
#: builtins.c:3192
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: writing between %wu and %wu bytes into a region of size %wu overflows the destination"
+#, gcc-internal-format
msgid "%K%qD writing between %E and %E bytes into a region of size %E overflows the destination"
-msgstr "%K%qD: écrire entre %wu et %wu octets dans une région de taille %wu déborde de la destination"
+msgstr "%K%qD: écrire entre %E et %E octets dans une région de taille %E déborde de la destination"
#: builtins.c:3228
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: specified bound %wu exceeds maximum object size %wu"
+#, gcc-internal-format
msgid "%K%qD specified bound %E exceeds maximum object size %E"
-msgstr "%K%qD: la limite spécifiée (%wu) excède la taille maximale de l'objet (%wu)"
+msgstr "%K%qD: la limite spécifiée (%E) excède la taille maximale de l'objet (%E)"
#: builtins.c:3234
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: specified bound between %wu and %wu exceeds maximum object size %wu"
+#, gcc-internal-format
msgid "%K%qD specified bound between %E and %E exceeds maximum object size %E"
-msgstr "%K%qD: la limite spécifiée entre %wu et %wu excède la taille maximale de l'objet (%wu)"
+msgstr "%K%qD: la limite spécifiée entre %E et %E excède la taille maximale de l'objet (%E)"
#: builtins.c:3249
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: specified bound %wu exceeds maximum object size %wu"
+#, gcc-internal-format
msgid "%K%qD specified bound %E exceeds destination size %E"
-msgstr "%K%qD: la limite spécifiée (%wu) excède la taille maximale de l'objet (%wu)"
+msgstr "%K%qD: la limite spécifiée (%E) excède la taille de la destination (%E)"
#: builtins.c:3255
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: specified bound between %wu and %wu exceeds maximum object size %wu"
+#, gcc-internal-format
msgid "%K%qD specified bound between %E and %E exceeds destination size %E"
-msgstr "%K%qD: la limite spécifiée entre %wu et %wu excède la taille maximale de l'objet (%wu)"
+msgstr "%K%qD: la limite spécifiée entre %E et %E excède la taille de la destination (%E)"
#: builtins.c:3278
-#, fuzzy, gcc-internal-format
-#| msgid "%<%.*s%> directive writing %wu byte into a region of size %wu"
+#, gcc-internal-format
msgid "%K%qD reading %E byte from a region of size %E"
-msgstr "la directive %<%.*s%> écrit %wu octet dans une région dont la taille est %wu"
+msgstr "%K%qD lecture de %E octet depuis une région de taille %E"
#: builtins.c:3279
-#, fuzzy, gcc-internal-format
-#| msgid "%<%.*s%> directive writing %wu bytes into a region of size %wu"
+#, gcc-internal-format
msgid "%K%qD reading %E bytes from a region of size %E"
-msgstr "la directive %<%.*s%> écrit %wu octets dans une région dont la taille est %wu"
+msgstr "%K%qD lecture de %E octets depuis une région de taille %E"
#: builtins.c:3285
-#, fuzzy, gcc-internal-format
-#| msgid "%<%.*s%> directive writing %wu or more bytes into a region of size %wu"
+#, gcc-internal-format
msgid "%K%qD reading %E or more bytes from a region of size %E"
-msgstr "la directive %<%.*s%> écrit %wu ou plus d'octets dans une région dont la taille est %wu"
+msgstr "%K%qD lecture de %E octets ou plus depuis une région de taille %E"
#: builtins.c:3291
-#, fuzzy, gcc-internal-format
-#| msgid "%<%.*s%> directive writing between %wu and %wu bytes into a region of size %wu"
+#, gcc-internal-format
msgid "%K%qD reading between %E and %E bytes from a region of size %E"
-msgstr "la directive %<%.*s%> écrit entre %wu et %wu octets dans une région dont la taille est %wu"
+msgstr "%K%qD lecture entre %E et %E octets depuis une région de taille %E"
#: builtins.c:3965 builtins.c:4031
-#, fuzzy, gcc-internal-format
-#| msgid "specified bound %wu equals the size of the destination"
+#, gcc-internal-format
msgid "%K%qD specified bound %E equals destination size"
-msgstr "la limite spécifiée (%wu) est égale à la taille de la destination"
+msgstr "%K%qD la limite %E spécifiée est égale à la taille de la destination"
#: builtins.c:4879 gimplify.c:3272
#, gcc-internal-format
@@ -16660,16 +16477,14 @@ msgid "undefined behavior when second parameter of %<va_start%> is declared with
msgstr "le comportement est indéfini quand le second paramètre de %<va_start%> est déclaré avec le stockage %<register%>"
#: builtins.c:9806
-#, fuzzy, gcc-internal-format
-#| msgid "%Kfirst argument of %D must be a pointer, second integer constant"
+#, gcc-internal-format
msgid "%Kfirst argument of %qD must be a pointer, second integer constant"
-msgstr "%Kle premier argument de %D doit être un pointeur et le second une constante entière"
+msgstr "%Kle premier argument de %qD doit être un pointeur et le second une constante entière"
#: builtins.c:9819
-#, fuzzy, gcc-internal-format
-#| msgid "%Klast argument of %D is not integer constant between 0 and 3"
+#, gcc-internal-format
msgid "%Klast argument of %qD is not integer constant between 0 and 3"
-msgstr "%Kle dernier argument de %D n'est pas une constante entière entre 0 et 3"
+msgstr "%Kle dernier argument de %qD n'est pas une constante entière entre 0 et 3"
#: builtins.c:10095
#, gcc-internal-format
@@ -16734,19 +16549,17 @@ msgstr "dans un appel à la fonction d'allocation %qD déclarée ici"
#: calls.c:1711
#, gcc-internal-format
msgid "%qD argument %i declared attribute %<nonstring%> is smaller than the specified bound %E"
-msgstr ""
+msgstr "l'argument %qD %i a déclaré l'attribut %<nonstring%> est plus petit que la limité %E spécifiée"
#: calls.c:1716
-#, fuzzy, gcc-internal-format
-#| msgid "%qD was not declared %<constexpr%>"
+#, gcc-internal-format
msgid "%qD argument %i declared attribute %<nonstring%>"
-msgstr "%qD n'a pas été déclaré %<constexpr%>"
+msgstr "l'argument %qD %i a déclaré l'attribut %<nonstring%>"
#: calls.c:1721
-#, fuzzy, gcc-internal-format
-#| msgid "routine %qD declared here"
+#, gcc-internal-format
msgid "argument %qD declared here"
-msgstr "la routine %qD est déclarée ici"
+msgstr "l'argument %qD est déclarée ici"
#: calls.c:1735
#, gcc-internal-format, gfc-internal-format
@@ -16856,16 +16669,14 @@ msgid "verify_flow_info: Block %i lacks loop_father"
msgstr "verify_flow_info: Le bloc %i n'a pas de loop_father"
#: cfghooks.c:146
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "verify_flow_info: Wrong count of block %i %i"
+#, gcc-internal-format, gfc-internal-format
msgid "verify_flow_info: Wrong count of block %i"
-msgstr "verify_flow_info: Nombre de blocs erroné %i %i"
+msgstr "verify_flow_info: Décompte du bloc %i erroné"
#: cfghooks.c:154
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "verify_flow_info: Wrong count of block %i %i"
+#, gcc-internal-format, gfc-internal-format
msgid "verify_flow_info: Missing count of block %i"
-msgstr "verify_flow_info: Nombre de blocs erroné %i %i"
+msgstr "verify_flow_info: Décompte du bloc %i manquant"
#: cfghooks.c:162
#, gcc-internal-format, gfc-internal-format
@@ -16873,16 +16684,14 @@ msgid "verify_flow_info: Duplicate edge %i->%i"
msgstr "verify_flow_info: Arête dupliquée %i->%i"
#: cfghooks.c:171
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
+#, gcc-internal-format, gfc-internal-format
msgid "Uninitialized probability of edge %i->%i"
-msgstr "verify_flow_info: Mauvaise probabilité de l'arête %i->%i %i"
+msgstr "Probabilité non initialisée de l'arête %i->%i"
#: cfghooks.c:177
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
+#, gcc-internal-format, gfc-internal-format
msgid "verify_flow_info: Wrong probability of edge %i->%i"
-msgstr "verify_flow_info: Mauvaise probabilité de l'arête %i->%i %i"
+msgstr "verify_flow_info: Mauvaise probabilité de l'arête %i->%ii"
#: cfghooks.c:189
#, gcc-internal-format, gfc-internal-format
@@ -17160,10 +16969,9 @@ msgid "%d exits recorded for loop %d (having %d exits)"
msgstr "%d sorties enregistrées pour la boucle %d (qui a %d sorties)"
#: cfgrtl.c:2349
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "non-cold basic block %d dominated by a block in the cold partition (%d)"
+#, gcc-internal-format, gfc-internal-format
msgid "non-cold basic block %d reachable only by paths crossing the cold partition"
-msgstr "le bloc de base %d n'est pas froid mais il est dominé par un bloc dans la partition froide (%d)"
+msgstr "le bloc de base %d n'est pas froid mais il ne peut être atteint que par des chemins traversant la partition froide"
#: cfgrtl.c:2421
#, gcc-internal-format, gfc-internal-format
@@ -17176,15 +16984,14 @@ msgid "partition found but function partition flag not set"
msgstr "une partition a été trouvée mais le fanion de partition de fonction n'est pas mis"
#: cfgrtl.c:2468
-#, fuzzy, gcc-internal-format
-#| msgid "verify_flow_info: REG_BR_PROB does not match cfg %i %i"
+#, gcc-internal-format
msgid "verify_flow_info: REG_BR_PROB is set but cfg probability is not"
-msgstr "verify_flow_info: REG_BR_PROB ne correspond pas à la config %i %i"
+msgstr "verify_flow_info: REG_BR_PROB est défini mais la probabilité du CFG (Control Flow Graph) ne l'est pas"
#: cfgrtl.c:2477
#, gcc-internal-format, gfc-internal-format
msgid "verify_flow_info: REG_BR_PROB does not match cfg %i %i"
-msgstr "verify_flow_info: REG_BR_PROB ne correspond pas à la config %i %i"
+msgstr "verify_flow_info: REG_BR_PROB ne correspond pas au CFG (Control Flow Graph) %i %i"
#: cfgrtl.c:2499
#, gcc-internal-format
@@ -17343,10 +17150,9 @@ msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
msgstr "le nombre d'annotations des bb dans la chaîne des insn (%d) != n_basic_blocks (%d)"
#: cgraph.c:3051
-#, fuzzy, gcc-internal-format
-#| msgid "caller edge count is negative"
+#, gcc-internal-format
msgid "caller edge count invalid"
-msgstr "le nombre d'arêtes de l'appelant est négatif"
+msgstr "le nombre d'arêtes de l'appelant est invalide"
#: cgraph.c:3135
#, gcc-internal-format, gfc-internal-format
@@ -17356,7 +17162,7 @@ msgstr "champ aux défini pour l'arête %s->%s"
#: cgraph.c:3142
#, gcc-internal-format
msgid "cgraph count invalid"
-msgstr ""
+msgstr "décompte cgraph invalide"
#: cgraph.c:3147
#, gcc-internal-format
@@ -17414,16 +17220,14 @@ msgid "inlined_to pointer set for noninline callers"
msgstr "pointeur inlined_to défini pour des appelants pas en ligne"
#: cgraph.c:3239
-#, fuzzy, gcc-internal-format
-#| msgid "caller edge frequency %i does not match BB frequency %i"
+#, gcc-internal-format
msgid "caller edge count does not match BB count"
-msgstr "la fréquence de l'arête d'appelant %i ne correspond pas à la fréquence du BB %i"
+msgstr "le décompte des arêtes de l'appelant ne correspond pas au décompte du BB"
#: cgraph.c:3261
-#, fuzzy, gcc-internal-format
-#| msgid "indirect call frequency %i does not match BB frequency %i"
+#, gcc-internal-format
msgid "indirect call count does not match BB count"
-msgstr "la fréquence d'appel indirecte %i ne correspond pas à la fréquence du BB %i"
+msgstr "le décompte des appels indirects ne correspond pas au décompte du BB"
#: cgraph.c:3272
#, gcc-internal-format
@@ -17622,34 +17426,29 @@ msgid "%qD defined but not used"
msgstr "%qD défini mais pas utilisé"
#: cgraphunit.c:1350
-#, fuzzy, gcc-internal-format
-#| msgid "%<operator new%> must return type %qT"
+#, gcc-internal-format
msgid "%<ifunc%> resolver for %qD must return %qT"
-msgstr "%<operator new%> doit retourner le type %qT"
+msgstr "le résolveur %<ifunc%> pour %qD doit retourner %qT"
#: cgraphunit.c:1353 cgraphunit.c:1375
-#, fuzzy, gcc-internal-format
-#| msgid "in a call to function %qD declared here"
+#, gcc-internal-format
msgid "resolver indirect function declared here"
-msgstr "dans un appel à la fonction %qD déclarée ici"
+msgstr "fonction indirect du résolveur déclarée ici"
#: cgraphunit.c:1372
-#, fuzzy, gcc-internal-format
-#| msgid "prefix %qD should return %qT"
+#, gcc-internal-format
msgid "%<ifunc%> resolver for %qD should return %qT"
-msgstr "%qD préfixé devrait retourner %qT"
+msgstr "le résolveur %<ifunc%> pour %qD devrait retourner %qT"
#: cgraphunit.c:1379
-#, fuzzy, gcc-internal-format
-#| msgid "Warn about casting functions to incompatible types."
+#, gcc-internal-format
msgid "%qD alias between functions of incompatible types %qT and %qT"
-msgstr "Avertir quand des fonctions sont transtypées vers des types incompatibles."
+msgstr "alias %qD entre des fonctions de types incompatibles %qT et %qT"
#: cgraphunit.c:1382 cgraphunit.c:1461
-#, fuzzy, gcc-internal-format
-#| msgid "friend declaration here"
+#, gcc-internal-format
msgid "aliased declaration here"
-msgstr "déclaration amie ici"
+msgstr "déclaration alias ici"
#: cgraphunit.c:1419 c-family/c-pragma.c:337
#, gcc-internal-format
@@ -17662,8 +17461,7 @@ msgid "%q+D aliased to external symbol %qE"
msgstr "%q+D est un synonyme vers le symbole externe %qE"
#: cgraphunit.c:1458
-#, fuzzy, gcc-internal-format
-#| msgid "%q+D alias in between function and variable is not supported"
+#, gcc-internal-format
msgid "%q+D alias between function and variable is not supported"
msgstr "l'alias %q+D entre une fonction et une variable n'est pas supporté"
@@ -18168,10 +17966,9 @@ msgid "%Kcall to %qs declared with attribute warning: %s"
msgstr "%Kappel à %qs déclaré avec un avertissement d'attribut: %s"
#: file-prefix-map.c:50
-#, fuzzy, gcc-internal-format
-#| msgid "invalid argument to %qD"
+#, gcc-internal-format
msgid "invalid argument %qs to %qs"
-msgstr "argument invalide pour %qD"
+msgstr "argument %qs invalide pour %qs"
#: final.c:1789
#, gcc-internal-format
@@ -18316,10 +18113,9 @@ msgstr "erreur à l'obtention des temps du processus: %m"
#. The inferior failed to catch the signal.
#: gcc.c:3151 gcc.c:3175
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Use alternate register names."
+#, gcc-internal-format, gfc-internal-format
msgid "%s signal terminated program %s"
-msgstr "Utiliser les noms alternatifs de registres."
+msgstr "le signal %s a terminé le programme %s"
#: gcc.c:3653 opts-common.c:1233 opts-common.c:1257 opts-global.c:139
#, gcc-internal-format
@@ -18446,10 +18242,9 @@ msgid "malformed spec function arguments"
msgstr "arguments pour la fonction de spec mal composés"
#: gcc.c:6330
-#, fuzzy, gcc-internal-format
-#| msgid "braced spec %qs is invalid at %qc"
+#, gcc-internal-format
msgid "braced spec %qs ends in escape"
-msgstr "la spec entre accolades %qs est invalide à %qc"
+msgstr "la spec entre accolades %qs se termine dans un échappement"
#: gcc.c:6465
#, gcc-internal-format
@@ -18770,56 +18565,45 @@ msgid "can%'t write PCH file"
msgstr "ne peut écrire dans le fichier PCH"
#: gimple-fold.c:719 gimple-fold.c:1604 gimple-fold.c:2512 gimple-fold.c:2620
-#, fuzzy, gcc-internal-format
-#| msgid "%qE argument is not a function"
+#, gcc-internal-format
msgid "%qD source argument is the same as destination"
-msgstr "l'argument de %qE n'est pas une fonction"
+msgstr "l'argument source %qD est le même que la destination"
#: gimple-fold.c:1658
msgid "%G%qD destination unchanged after copying no bytes from a string of length %E"
-msgstr ""
+msgstr "la destination %G%qD n'a pas été changée après n'avoir copié aucun octet depuis une chaîne de longueur %E"
#: gimple-fold.c:1663
msgid "%G%qD destination unchanged after copying no bytes"
-msgstr ""
+msgstr "la destination %G%qD n'a pas été changée après n'avoir copié aucun octet"
#: gimple-fold.c:1699
-#, fuzzy
-#| msgid "%<%.*s%> directive output truncated writing %wu byte into a region of size %wu"
msgid "%G%qD output truncated copying %E byte from a string of length %E"
-msgstr "la sortie de la directive %<%.*s%> a été tronquée en écrivant %wu octet dans une région dont la taille est %wu"
+msgstr "la sortie de %G%qD a été tronquée en copiant %E octet depuis une chaîne de longueur %E"
#: gimple-fold.c:1701
-#, fuzzy
-#| msgid "%<%.*s%> directive output truncated writing %wu bytes into a region of size %wu"
msgid "%G%qD output truncated copying %E bytes from a string of length %E"
-msgstr "la sortie de la directive %<%.*s%> a été tronquée en écrivant %wu octets dans une région dont la taille est %wu"
+msgstr "la sortie de %G%qD a été tronquée en copiant %E octets depuis une chaîne de longueur %E"
#: gimple-fold.c:1712
msgid "%G%qD output truncated before terminating nul copying %E byte from a string of the same length"
-msgstr ""
+msgstr "la sortie de %G%qD a été tronquée avant le zéro de fin en copiant %E octet depuis une chaîne de la même longueur"
#: gimple-fold.c:1715
msgid "%G%qD output truncated before terminating nul copying %E bytes from a string of the same length"
-msgstr ""
+msgstr "la sortie de %G%qD a été tronquée avant le zéro de fin en copiant %E octets depuis une chaîne de la même longueur"
#: gimple-fold.c:2060
-#, fuzzy
-#| msgid "specified bound %wu equals the size of the destination"
msgid "%G%qD specified bound %E equals destination size"
-msgstr "la limite spécifiée (%wu) est égale à la taille de la destination"
+msgstr "la limite spécifiée par %G%qD (%E) est égale à la taille de la destination"
#: gimple-fold.c:2062
-#, fuzzy
-#| msgid "%K%qD: specified bound %wu exceeds maximum object size %wu"
msgid "%G%qD specified bound %E exceeds destination size %wu"
-msgstr "%K%qD: la limite spécifiée (%wu) excède la taille maximale de l'objet (%wu)"
+msgstr "la limite spécifiée par %G%qD (%E) excède la taille de la destination (%wu)"
#: gimple-fold.c:2078
-#, fuzzy
-#| msgid "specified bound %wu equals the size of the destination"
msgid "%G%qD specified bound %E equals source length"
-msgstr "la limite spécifiée (%wu) est égale à la taille de la destination"
+msgstr "la limite spécifiée par %G%qD (%E) est égale la longueur de la destination"
#: gimple-ssa-isolate-paths.c:290
#, gcc-internal-format
@@ -19067,12 +18851,11 @@ msgid "%<%.*s%> directive output between %wu and %wu bytes may cause result to e
msgstr "la sortie de la directive %<%.*s%> qui contient entre %wu et %wu octets peut faire déborder le résultat au delà de %<INT_MAX%>"
#: gimple-ssa-sprintf.c:2944
-#, fuzzy, gcc-internal-format
-#| msgid "assuming directive output of %wu byte"
+#, gcc-internal-format
msgid "assuming directive output of %wu byte"
msgid_plural "assuming directive output of %wu bytes"
msgstr[0] "on suppose que la sortie de la directive occupe %wu octet"
-msgstr[1] "on suppose que la sortie de la directive occupe %wu octet"
+msgstr[1] "on suppose que la sortie de la directive occupe %wu octets"
#: gimple-ssa-sprintf.c:2951
#, gcc-internal-format
@@ -19120,8 +18903,7 @@ msgid "specified bound %wu exceeds maximum object size %wu"
msgstr "la limite spécifiée %wu excède la taille maximale de l'objet (%wu)"
#: gimple-ssa-sprintf.c:3893
-#, fuzzy, gcc-internal-format
-#| msgid "specified bound %wu exceeds %<INT_MAX %>"
+#, gcc-internal-format
msgid "specified bound %wu exceeds %<INT_MAX%>"
msgstr "la limite spécifiée %wu excède %<INT_MAX%>"
@@ -19222,167 +19004,152 @@ msgstr "l'argument de %<alloca%> est zéro"
#: gimple-ssa-warn-restrict.c:1296
msgid "%G%qD accessing %wu byte at offsets %s and %s overlaps %wu byte at offset %s"
-msgstr ""
+msgstr "%G%qD accède à %wu octet aux décalages %s et %s qui chevauchent %wu octet au décalage %s"
#: gimple-ssa-warn-restrict.c:1298
msgid "%G%qD accessing %wu byte at offsets %s and %s overlaps %wu bytes at offset %s"
-msgstr ""
+msgstr "%G%qD accède à %wu octet aux décalages %s et %s qui chevauchent %wu octets au décalage %s"
#: gimple-ssa-warn-restrict.c:1302
msgid "%G%qD accessing %wu bytes at offsets %s and %s overlaps %wu byte at offset %s"
-msgstr ""
+msgstr "%G%qD accède à %wu octets aux décalages %s et %s qui chevauchent %wu octet au décalage %s"
#: gimple-ssa-warn-restrict.c:1304
msgid "%G%qD accessing %wu bytes at offsets %s and %s overlaps %wu bytes at offset %s"
-msgstr ""
+msgstr "%G%qD accède à %wu octets aux décalages %s et %s qui chevauchent %wu octets au décalage %s"
#: gimple-ssa-warn-restrict.c:1312
msgid "%G%qD accessing %wu byte at offsets %s and %s overlaps between %wu and %wu bytes at offset %s"
-msgstr ""
+msgstr "%G%qD accède à %wu octet aux décalages %s et %s qui chevauchent entre %wu et %wu octets au décalage %s"
#: gimple-ssa-warn-restrict.c:1315
msgid "%G%qD accessing %wu bytes at offsets %s and %s overlaps between %wu and %wu bytes at offset %s"
-msgstr ""
+msgstr "%G%qD accède à %wu octets aux décalages %s et %s qui chevauchent entre %wu et %wu octets au décalage %s"
#: gimple-ssa-warn-restrict.c:1324
msgid "%G%qD accessing %wu byte at offsets %s and %s overlaps %wu or more bytes at offset %s"
-msgstr ""
+msgstr "%G%qD accède à %wu octet aux décalages %s et %s qui chevauchent %wu ou plus d'octets au décalage %s"
#: gimple-ssa-warn-restrict.c:1326
msgid "%G%qD accessing %wu bytes at offsets %s and %s overlaps %wu or more bytes at offset %s"
-msgstr ""
+msgstr "%G%qD accède à %wu octets aux décalages %s et %s qui chevauchent %wu ou plus d'octets au décalage %s"
#: gimple-ssa-warn-restrict.c:1338
-#, fuzzy
-#| msgid "%K%qD: writing between %wu and %wu bytes into a region of size %wu overflows the destination"
msgid "%G%qD accessing between %wu and %wu bytes at offsets %s and %s overlaps %wu byte at offset %s"
-msgstr "%K%qD: écrire entre %wu et %wu octets dans une région de taille %wu déborde de la destination"
+msgstr "%G%qD accède à entre %wu et %wu octets aux décalages %s et %s qui chevauchent %wu octet au décalage %s"
#: gimple-ssa-warn-restrict.c:1341
-#, fuzzy
-#| msgid "%K%qD: writing between %wu and %wu bytes into a region of size %wu overflows the destination"
msgid "%G%qD accessing between %wu and %wu bytes at offsets %s and %s overlaps %wu bytes at offset %s"
-msgstr "%K%qD: écrire entre %wu et %wu octets dans une région de taille %wu déborde de la destination"
+msgstr "%G%qD accède à entre %wu et %wu octets aux offsets %s et %s qui chevauchent %wu octets au décalage %s"
#: gimple-ssa-warn-restrict.c:1348
-#, fuzzy
-#| msgid "%<%.*s%> directive writing between %wu and %wu bytes into a region of size between %wu and %wu"
msgid "%G%qD accessing between %wu and %wu bytes at offsets %s and %s overlaps between %wu and %wu bytes at offset %s"
-msgstr "la directive %<%.*s%> écrit entre %wu et %wu octets dans une région dont la taille est comprise entre %wu et %wu"
+msgstr "%G%qD accède à entre %wu et %wu octets aux offsets %s et %s qui chevauchent entre %wu et %wu octets au décalage %s"
#: gimple-ssa-warn-restrict.c:1356
msgid "%G%qD accessing between %wu and %wu bytes at offsets %s and %s overlaps %wu or more bytes at offset %s"
-msgstr ""
+msgstr "%G%qD accède à entre %wu et %wu octets aux offsets %s et %s qui chevauchent %wu ou plus d'octets au décalage %s"
#: gimple-ssa-warn-restrict.c:1370
msgid "%G%qD accessing %wu or more bytes at offsets %s and %s overlaps %wu byte at offset %s"
-msgstr ""
+msgstr "%G%qD accède à %wu ou plus d'octets aux offsets %s et %s qui chevauchent %wu octet au décalage %s"
#: gimple-ssa-warn-restrict.c:1372
msgid "%G%qD accessing %wu or more bytes at offsets %s and %s overlaps %wu bytes at offset %s"
-msgstr ""
+msgstr "%G%qD accède à %wu ou plus d'octets aux offsets %s et %s qui chevauchent %wu octets au décalage %s"
#: gimple-ssa-warn-restrict.c:1378
msgid "%G%qD accessing %wu or more bytes at offsets %s and %s overlaps between %wu and %wu bytes at offset %s"
-msgstr ""
+msgstr "%G%qD accède à %wu ou plus d'octets aux offsets %s et %s qui chevauchent entre %wu et %wu octets au décalage %s"
#: gimple-ssa-warn-restrict.c:1385
msgid "%G%qD accessing %wu or more bytes at offsets %s and %s overlaps %wu or more bytes at offset %s"
-msgstr ""
+msgstr "%G%qD accède à %wu ou plus d'octets aux offsets %s et %s qui chevauchent %wu ou plus d'octets au décalage %s"
#: gimple-ssa-warn-restrict.c:1407
msgid "%G%qD accessing %wu byte may overlap %wu byte"
-msgstr ""
+msgstr "%G%qD accède à %wu octet qui peut chevaucher %wu octet"
#: gimple-ssa-warn-restrict.c:1409
msgid "%G%qD accessing %wu bytes may overlap %wu byte"
-msgstr ""
+msgstr "%G%qD accède à %wu octets qui peuvent chevaucher %wu octet"
#: gimple-ssa-warn-restrict.c:1415
msgid "%G%qD accessing %wu byte at offsets %s and %s may overlap %wu byte at offset %s"
-msgstr ""
+msgstr "%G%qD accède à %wu octet aux décalages %s et %s qui peut chevaucher %wu octet au décalage %s"
#: gimple-ssa-warn-restrict.c:1417
msgid "%G%qD accessing %wu bytes at offsets %s and %s may overlap %wu byte at offset %s"
-msgstr ""
+msgstr "%G%qD accède à %wu octets aux décalages %s et %s qui peuvent chevaucher %wu octet au décalage %s"
#: gimple-ssa-warn-restrict.c:1427
msgid "%G%qD accessing %wu byte may overlap up to %wu bytes"
-msgstr ""
+msgstr "%G%qD accède à %wu octet qui peut chevaucher jusqu'à %wu octets"
#: gimple-ssa-warn-restrict.c:1429
msgid "%G%qD accessing %wu bytes may overlap up to %wu bytes"
-msgstr ""
+msgstr "%G%qD accède à %wu octets qui peuvent chevaucher jusqu'à %wu octets"
#: gimple-ssa-warn-restrict.c:1435
msgid "%G%qD accessing %wu byte at offsets %s and %s may overlap up to %wu bytes at offset %s"
-msgstr ""
+msgstr "%G%qD accède à %wu octet aux décalages %s et %s qui peut chevaucher jusqu'à %wu octets au décalage %s"
#: gimple-ssa-warn-restrict.c:1437
msgid "%G%qD accessing %wu bytes at offsets %s and %s may overlap up to %wu bytes at offset %s"
-msgstr ""
+msgstr "%G%qD accède à %wu octets aux décalages %s et %s qui peuvent chevaucher jusqu'à %wu octets au décalage %s"
#: gimple-ssa-warn-restrict.c:1449
-#, fuzzy
-#| msgid "%K%qD: specified size between %wu and %wu exceeds maximum object size %wu"
msgid "%G%qD accessing between %wu and %wu bytes may overlap %wu byte"
-msgstr "%K%qD: la taille spécifiée entre %wu et %wu excède la taille maximale %wu de l'objet"
+msgstr "%G%qD accède à entre %wu et %wu octets qui peuvent chevaucher %wu octet"
#: gimple-ssa-warn-restrict.c:1451
-#, fuzzy
-#| msgid "%K%qD: specified size between %wu and %wu exceeds maximum object size %wu"
msgid "%G%qD accessing between %wu and %wu bytes may overlap up to %wu bytes"
-msgstr "%K%qD: la taille spécifiée entre %wu et %wu excède la taille maximale %wu de l'objet"
+msgstr "%G%qD accède à entre %wu et %wu octets qui peuvent chevaucher jusqu'à %wu octets"
#: gimple-ssa-warn-restrict.c:1457
-#, fuzzy
-#| msgid "%K%qD: writing between %wu and %wu bytes into a region of size %wu overflows the destination"
msgid "%G%qD accessing between %wu and %wu bytes at offsets %s and %s may overlap %wu byte at offset %s"
-msgstr "%K%qD: écrire entre %wu et %wu octets dans une région de taille %wu déborde de la destination"
+msgstr "%G%qD accède à entre %wu et %wu octets aux décalages %s et %s qui peuvent chevaucher %wu octet au décalage %s"
#: gimple-ssa-warn-restrict.c:1460
msgid "%G%qD accessing between %wu and %wu bytes at offsets %s and %s may overlap up to %wu bytes at offset %s"
-msgstr ""
+msgstr "%G%qD accède à entre %wu et %wu octets aux décalages %s et %s qui peuvent chevaucher jusqu'à %wu octets au décalage %s"
#: gimple-ssa-warn-restrict.c:1470
msgid "%G%qD accessing %wu or more bytes at offsets %s and %s may overlap %wu byte at offset %s"
-msgstr ""
+msgstr "%G%qD accède à %wu ou plus d'octets aux décalages %s et %s qui peuvent chevaucher %wu octet au décalage %s"
#: gimple-ssa-warn-restrict.c:1472
msgid "%G%qD accessing %wu or more bytes at offsets %s and %s may overlap up to %wu bytes at offset %s"
-msgstr ""
+msgstr "%G%qD accède à %wu ou plus d'octets aux décalages %s et %s qui peuvent chevaucher jusqu'à %wu octets au décalage %s"
#: gimple-ssa-warn-restrict.c:1530
msgid "%G%qD pointer overflow between offset %s and size %s accessing array %qD with type %qT"
-msgstr ""
+msgstr "%G%qD subit un débordement de pointeur entre le décalage %s et la taille %s en accédant au tableau %qD avec le type %qT"
#: gimple-ssa-warn-restrict.c:1534
-#, fuzzy, gcc-internal-format
-#| msgid "array member %q#D declared here"
+#, gcc-internal-format
msgid "array %qD declared here"
-msgstr "membre tableau %q#D déclaré ici"
+msgstr "tableau %qD déclaré ici"
#: gimple-ssa-warn-restrict.c:1537 gimple-ssa-warn-restrict.c:1543
msgid "%G%qD pointer overflow between offset %s and size %s"
-msgstr ""
+msgstr "%G%qD subit un débordement de pointeur entre le décalage %s et la taille %s"
#: gimple-ssa-warn-restrict.c:1561
msgid "%G%qD forming offset %s is out of the bounds [0, %wu] of object %qD with type %qT"
-msgstr ""
+msgstr "%G%qD forme le décalage %s qui est hors des limites [0, %wu] de l'objet %qD avec le type %qT"
#: gimple-ssa-warn-restrict.c:1564
msgid "%G%qD offset %s is out of the bounds [0, %wu] of object %qD with type %qT"
-msgstr ""
+msgstr "%G%qD décalage %s hors des limites [0, %wu] de l'objet %qD avec le type %qT"
#: gimple-ssa-warn-restrict.c:1570
msgid "%G%qD forming offset %s is out of the bounds of object %qD with type %qT"
-msgstr ""
+msgstr "%G%qD forme le décalage %s qui est hors des limites de l'objet %qD avec le type %qT"
#: gimple-ssa-warn-restrict.c:1572
-#, fuzzy
-#| msgid "array subscript value %qE is outside the bounds of array %qD of type %qT"
msgid "%G%qD offset %s is out of the bounds of object %qD with type %qT"
-msgstr "la valeur %qE de l'indice du tableau est hors des limites du tableau %qD du type %qT"
+msgstr "%G%qD le décalage %s est hors des limites de l'objet %qD avec le type %qT"
#: gimple-ssa-warn-restrict.c:1577 c/c-decl.c:3603 c/c-decl.c:3874
#: c/c-typeck.c:8347 cp/class.c:1358 cp/class.c:3127 cp/decl.c:3902
@@ -19395,37 +19162,31 @@ msgstr "%qD déclaré ici"
#: gimple-ssa-warn-restrict.c:1582
msgid "%G%qD forming offset %s is out of the bounds [0, %wu]"
-msgstr ""
+msgstr "%G%qD qui forme le décalage %s est hors des limites [0, %wu]"
#: gimple-ssa-warn-restrict.c:1584
msgid "%G%qD offset %s is out of the bounds [0, %wu]"
-msgstr ""
+msgstr "%G%qD le décalage %s est hors des limites [0, %wu]"
#: gimple-ssa-warn-restrict.c:1589
-#, fuzzy
-#| msgid "DIM argument at %L is out of bounds"
msgid "%G%qD forming offset %s is out of bounds"
-msgstr "L'argument DIM à %L est en dehors des limites"
+msgstr "%G%qD qui forme le décalage %s est hors des limites"
#: gimple-ssa-warn-restrict.c:1590
-#, fuzzy
-#| msgid "DIM argument at %L is out of bounds"
msgid "%G%qD offset %s is out of bounds"
-msgstr "L'argument DIM à %L est en dehors des limites"
+msgstr "%G%qD le décalage %s est hors des limites"
#: gimple-ssa-warn-restrict.c:1601
msgid "%G%qD offset %s from the object at %qE is out of the bounds of %qT"
-msgstr ""
+msgstr "%G%qD le décalage %s depuis l'objet à %qE est hors des limites de %qT"
#: gimple-ssa-warn-restrict.c:1610
msgid "%G%qD offset %s from the object at %qE is out of the bounds of referenced subobject %qD with type %qT at offset %wu"
-msgstr ""
+msgstr "%G%qD le décalage %s depuis l'objet à %qE est hors des limites du sous-objet référencé %qD avec le type %qT au décalage %wu"
#: gimple-ssa-warn-restrict.c:1783
-#, fuzzy
-#| msgid "%qE argument is not a function"
msgid "%G%qD source argument is the same as destination"
-msgstr "l'argument de %qE n'est pas une fonction"
+msgstr "%G%qD l'argument source est le même que la destination"
#: gimple-streamer-in.c:210
#, gcc-internal-format, gfc-internal-format
@@ -20296,10 +20057,9 @@ msgid "installation error, can't find crtoffloadtable.o"
msgstr "erreur d'installation, impossible de trouver crtoffloadtable.o"
#: lto-wrapper.c:1000 lto-wrapper.c:1012
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "%s: %s"
+#, gcc-internal-format, gfc-internal-format
msgid "%s: %s\n"
-msgstr "%s: %s"
+msgstr "%s: %s\n"
#: lto-wrapper.c:1056
#, gcc-internal-format
@@ -20658,10 +20418,9 @@ msgid "argument to %qs should be a non-negative integer"
msgstr "l'argument de %qs doit être un entier non négatif"
#: opts-common.c:1173
-#, fuzzy, gcc-internal-format
-#| msgid "-malign-functions=%d is not between 0 and %d"
+#, gcc-internal-format
msgid "argument to %qs is not between %d and %d"
-msgstr "-malign-functions=%d n'est pas entre 0 et %d"
+msgstr "l'argument de %qs n'est pas entre %d et %d"
#: opts-common.c:1187
#, gcc-internal-format
@@ -20760,28 +20519,24 @@ msgid "section anchors must be disabled when toplevel reorder is disabled"
msgstr "les ancres de sections doivent être désactivées quand la réorganisation au plus haut niveau est désactivée"
#: opts.c:840
-#, fuzzy, gcc-internal-format
-#| msgid "-freorder-blocks-and-partition does not work with exceptions on this architecture"
+#, gcc-internal-format
msgid "%<-freorder-blocks-and-partition%> does not work with exceptions on this architecture"
-msgstr "-freorder-blocks-and-partition ne fonctionne pas avec les exceptions sur cette architecture"
+msgstr "%<-freorder-blocks-and-partition%> ne fonctionne pas avec les exceptions sur cette architecture"
#: opts.c:856
-#, fuzzy, gcc-internal-format
-#| msgid "-freorder-blocks-and-partition does not support unwind info on this architecture"
+#, gcc-internal-format
msgid "%<-freorder-blocks-and-partition%> does not support unwind info on this architecture"
-msgstr "-freorder-blocks-and-partition ne supporte pas les informations de retour en arrière sur cette architecture"
+msgstr "%<-freorder-blocks-and-partition%> ne supporte pas les informations de retour en arrière sur cette architecture"
#: opts.c:874
-#, fuzzy, gcc-internal-format
-#| msgid "-freorder-blocks-and-partition does not work on this architecture"
+#, gcc-internal-format
msgid "%<-freorder-blocks-and-partition%> does not work on this architecture"
-msgstr "-freorder-blocks-and-partition ne fonctionne pas sur cette architecture"
+msgstr "%<-freorder-blocks-and-partition%> ne fonctionne pas sur cette architecture"
#: opts.c:912
-#, fuzzy, gcc-internal-format
-#| msgid "-fno-fat-lto-objects are supported only with linker plugin"
+#, gcc-internal-format
msgid "%<-fno-fat-lto-objects%> are supported only with linker plugin"
-msgstr "-fno-fat-lto-objects n'est supporté qu'avec des greffons de l'éditeur de liens"
+msgstr "%<-fno-fat-lto-objects%> n'est supporté qu'avec des greffons de l'éditeur de liens"
#: opts.c:926
#, gcc-internal-format
@@ -20789,45 +20544,39 @@ msgid "%<-fsplit-stack%> is not supported by this compiler configuration"
msgstr "%<-fsplit-stack%> n'est pas supporté par cette configuration du compilateur"
#: opts.c:973
-#, fuzzy, gcc-internal-format
-#| msgid "-fsanitize=address is incompatible with -fsanitize=kernel-address"
+#, gcc-internal-format
msgid "%<-fsanitize=pointer-compare%> must be combined with %<-fsanitize=address%> or %<-fsanitize=kernel-address%>"
-msgstr "-fsanitize=address est incompatible avec -fsanitize=kernel-address"
+msgstr "%<-fsanitize=pointer-compare%> doit être combiné avec %<-fsanitize=address%> ou %<-fsanitize=kernel-address%>"
#: opts.c:977
#, gcc-internal-format
msgid "%<-fsanitize=pointer-subtract%> must be combined with %<-fsanitize=address%> or %<-fsanitize=kernel-address%>"
-msgstr ""
+msgstr "%<-fsanitize=pointer-subtract%> doit être combiné avec %<-fsanitize=address%> ou %<-fsanitize=kernel-address%>"
#: opts.c:985
-#, fuzzy, gcc-internal-format
-#| msgid "-fsanitize=address is incompatible with -fsanitize=kernel-address"
+#, gcc-internal-format
msgid "%<-fsanitize=address%> is incompatible with %<-fsanitize=kernel-address%>"
-msgstr "-fsanitize=address est incompatible avec -fsanitize=kernel-address"
+msgstr "%<-fsanitize=address%> est incompatible avec %<-fsanitize=kernel-address%>"
#: opts.c:992
-#, fuzzy, gcc-internal-format
-#| msgid "-fsanitize=address and -fsanitize=kernel-address are incompatible with -fsanitize=thread"
+#, gcc-internal-format
msgid "%<-fsanitize=address%> and %<-fsanitize=kernel-address%> are incompatible with %<-fsanitize=thread%>"
-msgstr "-fsanitize=address et -fsanitize=kernel-address sont incompatibles avec -fsanitize=thread"
+msgstr "%<-fsanitize=address%> et %<-fsanitize=kernel-address%> sont incompatibles avec %<-fsanitize=thread%>"
#: opts.c:998
-#, fuzzy, gcc-internal-format
-#| msgid "-fsanitize=leak is incompatible with -fsanitize=thread"
+#, gcc-internal-format
msgid "%<-fsanitize=leak%> is incompatible with %<-fsanitize=thread%>"
-msgstr "-fsanitize=leak est incompatible avec -fsanitize=thread"
+msgstr "%<-fsanitize=leak%> est incompatible avec %<-fsanitize=thread%>"
#: opts.c:1004
-#, fuzzy, gcc-internal-format
-#| msgid "-fsanitize-recover=%s is not supported"
+#, gcc-internal-format
msgid "%<-fsanitize-recover=%s%> is not supported"
-msgstr "-fsanitize-recover=%s n'est pas supporté"
+msgstr "%<-fsanitize-recover=%s%> n'est pas supporté"
#: opts.c:1030
-#, fuzzy, gcc-internal-format
-#| msgid "-fsanitize-address-use-after-scope requires -fstack-reuse=none option"
+#, gcc-internal-format
msgid "%<-fsanitize-address-use-after-scope%> requires %<-fstack-reuse=none%> option"
-msgstr "-fsanitize-address-use-after-scope requiert l'option -fstack-reuse=none"
+msgstr "%<-fsanitize-address-use-after-scope%> requiert l'option %<-fstack-reuse=none%>"
#: opts.c:1037
#, gcc-internal-format
@@ -20845,10 +20594,9 @@ msgid "unrecognized include_flags 0x%x passed to print_specific_help"
msgstr "include_flags 0x%x non reconnu passé à print_specific_help"
#: opts.c:1673
-#, fuzzy, gcc-internal-format
-#| msgid "-fsanitize=all option is not valid"
+#, gcc-internal-format
msgid "%<-fsanitize=all%> option is not valid"
-msgstr "l'option -fsanitize-all n'est pas valide"
+msgstr "l'option %<-fsanitize=all%> n'est pas valide"
#: opts.c:1713
#, gcc-internal-format
@@ -20861,10 +20609,9 @@ msgid "unrecognized argument to -f%ssanitize%s= option: %q.*s"
msgstr "argument non reconnu pour l'option -f%ssanitize%s=: %q.*s"
#: opts.c:1754
-#, fuzzy, gcc-internal-format
-#| msgid "%qE attribute directive ignored"
+#, gcc-internal-format
msgid "%<%s%> attribute directive ignored"
-msgstr "directive d'attribut %qE ignorée"
+msgstr "directive d'attribut %<%s%> ignorée"
#: opts.c:1931
#, gcc-internal-format
@@ -20882,10 +20629,9 @@ msgid "HSA has not been enabled during configuration"
msgstr "HSA n'a pas été activé durant la configuration"
#: opts.c:2206
-#, fuzzy, gcc-internal-format
-#| msgid "-foffload-abi option can be specified only for offload compiler"
+#, gcc-internal-format
msgid "%<-foffload-abi%> option can be specified only for offload compiler"
-msgstr "l'option -foffload-abi ne peut être spécifiée qu'avec un compilateur pour le délestage"
+msgstr "l'option %<-foffload-abi%> ne peut être spécifiée qu'avec un compilateur pour le délestage"
#: opts.c:2214
#, gcc-internal-format, gfc-internal-format
@@ -20893,10 +20639,9 @@ msgid "structure alignment must be a small power of two, not %d"
msgstr "l'alignement de la structure doit être une petite puissance de 2, pas %d"
#: opts.c:2300
-#, fuzzy, gcc-internal-format
-#| msgid "invalid argument to built-in function %s"
+#, gcc-internal-format
msgid "invalid arguments for %<-fpatchable_function_entry%>"
-msgstr "argument invalide pour la fonction interne %s"
+msgstr "argument invalide pour %<-fpatchable_function_entry%>"
#: opts.c:2358
#, gcc-internal-format
@@ -21153,10 +20898,9 @@ msgid "-iplugindir <dir> option not passed from the gcc driver"
msgstr "l'option -iplugindir <rép> n'a pas été passée par le pilote gcc"
#: predict.c:3309
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Missing counts for called function %s/%i"
+#, gcc-internal-format, gfc-internal-format
msgid "Missing counts for called function %s"
-msgstr "Décompte des appels manquants pour la fonction %s/%i"
+msgstr "Décomptes manquants pour la fonction appelée %s"
#: profile.c:456
#, gcc-internal-format, gfc-internal-format
@@ -21490,20 +21234,19 @@ msgid "size of %q+D is larger than %wd bytes"
msgstr "la taille de %q+D est plus grande que %wd octets"
#: stor-layout.c:1150
-#, fuzzy, gcc-internal-format
-#| msgid "requested alignment %d is larger than %d"
+#, gcc-internal-format
msgid "alignment %u of %qT is less than %u"
-msgstr "l'alignement %d demandé est plus grand que %d"
+msgstr "l'alignement %u de %qT est plus petit que %u"
#: stor-layout.c:1157
#, gcc-internal-format
msgid "%q+D offset %E in %qT isn%'t aligned to %u"
-msgstr ""
+msgstr "%q+D le décalage %E dans %qT n'est pas aligné sur %u"
#: stor-layout.c:1160
#, gcc-internal-format
msgid "%q+D offset %E in %qT may not be aligned to %u"
-msgstr ""
+msgstr "%q+D le décalage %E dans %qT ne peut pas être aligné sur %u"
#: stor-layout.c:1292
#, gcc-internal-format
@@ -21561,10 +21304,9 @@ msgid "format string is defined here"
msgstr "la chaîne de format est définie ici"
#: symtab.c:301
-#, fuzzy, gcc-internal-format
-#| msgid "%D renamed after being referenced in assembly"
+#, gcc-internal-format
msgid "%qD renamed after being referenced in assembly"
-msgstr "%D renommé après avoir été référencé dans l'assembleur"
+msgstr "%qD renommé après avoir été référencé dans l'assembleur"
#: symtab.c:991
#, gcc-internal-format
@@ -21817,22 +21559,19 @@ msgid "Graphite loop optimizations cannot be used (isl is not available) (-fgrap
msgstr "Les optimisations de boucles Graphite ne peuvent pas être utilisées (isl n'est pas disponible) (-fgraphite, -fgraphite-identity, -floop-nest-optimize, -floop-parallelize-all)"
#: toplev.c:1297
-#, fuzzy, gcc-internal-format
-#| msgid "%<-fcheck-pointer-bounds%> is not supported for this target"
+#, gcc-internal-format
msgid "%<-fcf-protection=full%> is not supported for this target"
-msgstr "%<-fcheck-pointer-bounds%> n'est pas supporté pour cette cible"
+msgstr "%<-fcf-protection=full%> n'est pas supporté pour cette cible"
#: toplev.c:1304
-#, fuzzy, gcc-internal-format
-#| msgid "-fstack-protector not supported for this target"
+#, gcc-internal-format
msgid "%<-fcf-protection=branch%> is not supported for this target"
-msgstr "-fstack-protector n'est pas supporté pour cette cible"
+msgstr "%<-fcf-protection=branch%> n'est pas supporté pour cette cible"
#: toplev.c:1311
-#, fuzzy, gcc-internal-format
-#| msgid "%<-fcheck-pointer-bounds%> is not supported for this target"
+#, gcc-internal-format
msgid "%<-fcf-protection=return%> is not supported for this target"
-msgstr "%<-fcheck-pointer-bounds%> n'est pas supporté pour cette cible"
+msgstr "%<-fcf-protection=return%> n'est pas supporté pour cette cible"
#: toplev.c:1322
#, gcc-internal-format
@@ -21937,12 +21676,12 @@ msgstr "-fassociative-math désactivé; d'autres options prennent le pas"
#: toplev.c:1637
#, gcc-internal-format
msgid "%<-fstack-clash-protection%> is not supported on targets where the stack grows from lower to higher addresses"
-msgstr ""
+msgstr "%<-fstack-clash-protection%> n'est pas supporté sur des cibles où la pile grandi depuis les adresses basses vers les adresses hautes"
#: toplev.c:1647
#, gcc-internal-format
msgid "%<-fstack-check=%> and %<-fstack-clash_protection%> are mutually exclusive. Disabling %<-fstack-check=%>"
-msgstr ""
+msgstr "%<-fstack-check=%> et %<-fstack-clash_protection%> sont mutuellement exclusives. %<-fstack-check=%> est désactivée"
#: toplev.c:1665
#, gcc-internal-format
@@ -22175,16 +21914,14 @@ msgid "invalid operand to plus/minus, type is a pointer"
msgstr "opérande invalide à plus/moins, le type est un pointeur"
#: tree-cfg.c:3269
-#, fuzzy, gcc-internal-format
-#| msgid "invalid operand to pointer plus, first operand is not a pointer"
+#, gcc-internal-format
msgid "invalid operand to pointer diff, operand is not a pointer"
-msgstr "opérande invalide pour le plus pointeur, le premier opérande n'est pas un pointeur"
+msgstr "opérande invalide pour le diff pointeur, l'opérande n'est pas un pointeur"
#: tree-cfg.c:3277
-#, fuzzy, gcc-internal-format
-#| msgid "invalid type for property"
+#, gcc-internal-format
msgid "invalid type for pointer diff"
-msgstr "type invalide pour une propriété"
+msgstr "type invalide pour le diff pointeur"
#: tree-cfg.c:3288
#, gcc-internal-format
@@ -22400,7 +22137,7 @@ msgstr "types invalides dans une conversion vers un entier"
#: tree-cfg.c:3935
#, gcc-internal-format
msgid "vec_duplicate should be from a scalar to a like vector"
-msgstr ""
+msgstr "vec_duplicate devrait être d'un scalaire vers un vecteur similaire"
#: tree-cfg.c:3949
#, gcc-internal-format
@@ -22445,43 +22182,37 @@ msgstr "opérandes (pointeurs) invalides pour plus/moins"
#: tree-cfg.c:4109
#, gcc-internal-format
msgid "type mismatch in pointer plus expression"
-msgstr "désaccord de type dans une expression plus pointeur"
+msgstr "désaccord de type dans l'expression plus pointeur"
#: tree-cfg.c:4130
-#, fuzzy, gcc-internal-format
-#| msgid "type mismatch in pointer plus expression"
+#, gcc-internal-format
msgid "type mismatch in pointer diff expression"
-msgstr "désaccord de type dans une expression plus pointeur"
+msgstr "désaccord de type dans l'expression diff pointeur"
#: tree-cfg.c:4184
-#, fuzzy, gcc-internal-format
-#| msgid "type mismatch in widening vector shift expression"
+#, gcc-internal-format
msgid "type mismatch in widening sum reduction"
-msgstr "désaccord de type dans une expression de décalage d'un vecteur avec élargissement"
+msgstr "désaccord de type dans une réduction de somme avec élargissement"
#: tree-cfg.c:4204
-#, fuzzy, gcc-internal-format
-#| msgid "type mismatch in widening multiply-accumulate expression"
+#, gcc-internal-format
msgid "type mismatch in vector widening multiplication"
-msgstr "désaccord de type dans une expression multiplier et accumuler avec élargissement"
+msgstr "désaccord de type dans une multiplication d'élargissement d'un vecteur"
#: tree-cfg.c:4238
-#, fuzzy, gcc-internal-format
-#| msgid "type mismatch in vector permute expression"
+#, gcc-internal-format
msgid "type mismatch in vector pack expression"
-msgstr "désaccord de type dans une expression de permutation vectorielle"
+msgstr "désaccord de type dans une expression pack vectorielle"
#: tree-cfg.c:4271
-#, fuzzy, gcc-internal-format
-#| msgid "type mismatch in address expression"
+#, gcc-internal-format
msgid "type mismatch in series expression"
-msgstr "désaccord de type dans une expression d'adresse"
+msgstr "désaccord de type dans une expression expression de séries"
#: tree-cfg.c:4279
-#, fuzzy, gcc-internal-format
-#| msgid "vector types expected in sad expression"
+#, gcc-internal-format
msgid "vector type expected in series expression"
-msgstr "types vectoriels attendus dans une expression SAD (Sum of Absolute Difference = Somme des Différences Absolues)"
+msgstr "type vectoriel attendu dans une expression de séries"
#: tree-cfg.c:4292
#, gcc-internal-format
@@ -22574,10 +22305,9 @@ msgid "vector insertion not at element boundary"
msgstr "insertion de vecteur pas à la frontière d'un élément"
#: tree-cfg.c:4539
-#, fuzzy, gcc-internal-format
-#| msgid "type mismatch in vector permute expression"
+#, gcc-internal-format
msgid "type mismatch in dot product reduction"
-msgstr "désaccord de type dans une expression de permutation vectorielle"
+msgstr "désaccord de type dans une réduction de produit scalaire"
#: tree-cfg.c:4573
#, gcc-internal-format
@@ -23147,64 +22877,54 @@ msgid "stmt volatile flag not up-to-date"
msgstr "fanion volatile de l'instruction pas à jour"
#: tree-ssa-strlen.c:1941
-#, fuzzy, gcc-internal-format
-#| msgid "%<%.*s%> directive output truncated writing %wu byte into a region of size %wu"
+#, gcc-internal-format
msgid "%qD output truncated copying %E byte from a string of length %wu"
-msgstr "la sortie de la directive %<%.*s%> a été tronquée en écrivant %wu octet dans une région dont la taille est %wu"
+msgstr "la sortie de %qD a été tronquée en copiant %E octet depuis une chaîne de longueur %wu"
#: tree-ssa-strlen.c:1943
-#, fuzzy, gcc-internal-format
-#| msgid "%<%.*s%> directive output truncated writing %wu bytes into a region of size %wu"
+#, gcc-internal-format
msgid "%qD output truncated copying %E bytes from a string of length %wu"
-msgstr "la sortie de la directive %<%.*s%> a été tronquée en écrivant %wu octets dans une région dont la taille est %wu"
+msgstr "la sortie de %qD a été tronquée en copiant %E octets depuis une chaîne de longueur %wu"
#: tree-ssa-strlen.c:1948
-#, fuzzy, gcc-internal-format
-#| msgid "%<%.*s%> directive output truncated writing between %wu and %wu bytes into a region of size %wu"
+#, gcc-internal-format
msgid "%qD output truncated copying between %wu and %wu bytes from a string of length %wu"
-msgstr "la sortie de la directive %<%.*s%> a été tronquée en écrivant entre %wu et %wu octets dans une région dont la taille est %wu"
+msgstr "la sortie de %qD a été tronquée en copiant entre %wu et %wu octets depuis une chaîne de longueur %wu"
#: tree-ssa-strlen.c:1960
-#, fuzzy, gcc-internal-format
-#| msgid "%<%.*s%> directive output may be truncated writing %wu byte into a region of size %wu"
+#, gcc-internal-format
msgid "%qD output may be truncated copying %E byte from a string of length %wu"
-msgstr "la sortie de la directive %<%.*s%> peut être tronquée en écrivant %wu octet dans une région dont la taille est %wu"
+msgstr "la sortie de %qD peut être tronquée en copiant %E octet depuis une chaîne de longueur %wu"
#: tree-ssa-strlen.c:1962
-#, fuzzy, gcc-internal-format
-#| msgid "%<%.*s%> directive output may be truncated writing %wu bytes into a region of size %wu"
+#, gcc-internal-format
msgid "%qD output may be truncated copying %E bytes from a string of length %wu"
-msgstr "la sortie de la directive %<%.*s%> peut être tronquée en écrivant %wu octets dans une région dont la taille est %wu"
+msgstr "la sortie de %qD peut être tronquée en copiant %E octets depuis une chaîne de longueur %wu"
#: tree-ssa-strlen.c:1967 tree-ssa-strlen.c:1981
-#, fuzzy, gcc-internal-format
-#| msgid "%<%.*s%> directive output may be truncated writing between %wu and %wu bytes into a region of size %wu"
+#, gcc-internal-format
msgid "%qD output may be truncated copying between %wu and %wu bytes from a string of length %wu"
-msgstr "la sortie de la directive %<%.*s%> peut être tronquée en écrivant entre %wu et %wu octets dans une région dont la taille est %wu"
+msgstr "la sortie de %qD peut être tronquée en copiant entre %wu et %wu octets depuis une chaîne de longueur %wu"
#: tree-ssa-strlen.c:2002
-#, fuzzy, gcc-internal-format
-#| msgid "specified bound %wu equals the size of the destination"
+#, gcc-internal-format
msgid "%qD specified bound %E equals destination size"
-msgstr "la limite spécifiée (%wu) est égale à la taille de la destination"
+msgstr "%qD la limite spécifiée %E est égale à la taille de la destination"
#: tree-ssa-strlen.c:2102
-#, fuzzy, gcc-internal-format
-#| msgid "%qE output truncated before the last format character"
+#, gcc-internal-format
msgid "%qD output truncated before terminating nul copying as many bytes from a string as its length"
-msgstr "la sortie de %qE peut être tronquée avant le dernier caractère de format"
+msgstr "la sortie de %qD a été tronquée avant le zéro final en copiant autant d'octets depuis la chaîne que sa longueur"
#: tree-ssa-strlen.c:2108
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: specified bound %wu exceeds the size %wu of the destination"
+#, gcc-internal-format
msgid "%qD specified bound depends on the length of the source argument"
-msgstr "%K%qD: la limite spécifiée (%wu) excède la taille %wu de la destination"
+msgstr "%qD la limite spécifiée dépend de la longueur de l'argument source"
#: tree-ssa-strlen.c:2114
-#, fuzzy, gcc-internal-format
-#| msgid "length modifier"
+#, gcc-internal-format
msgid "length computed here"
-msgstr "modificateur de longueur"
+msgstr "longueur calculée ici"
#: tree-ssa-uninit.c:191 varasm.c:331
#, gcc-internal-format
@@ -23412,34 +23132,29 @@ msgid "vectorization did not happen for a simd loop"
msgstr "la vectorisation n'a pas eu lieu pour une boucle simd"
#: tree-vrp.c:4854 tree-vrp.c:4898
-#, fuzzy, gcc-internal-format
-#| msgid "array subscript is above array bounds"
+#, gcc-internal-format
msgid "array subscript %E is above array bounds of %qT"
-msgstr "l'indice du tableau est au delà des limites du tableau"
+msgstr "l'indice du tableau %E est au delà des limites de %qT"
#: tree-vrp.c:4880
-#, fuzzy, gcc-internal-format
-#| msgid "array subscript is outside array bounds"
+#, gcc-internal-format
msgid "array subscript [%E, %E] is outside array bounds of %qT"
-msgstr "l'indice du tableau est en dehors des limites du tableau"
+msgstr "l'indice du tableau [%E, %E] est en dehors des limites de %qT"
#: tree-vrp.c:4912
-#, fuzzy, gcc-internal-format
-#| msgid "array subscript is below array bounds"
+#, gcc-internal-format
msgid "array subscript %E is below array bounds of %qT"
-msgstr "l'indice du tableau est en dessous des limites du tableau"
+msgstr "l'indice du tableau %E est en dessous des limites de %qT"
#: tree-vrp.c:4970
-#, fuzzy, gcc-internal-format
-#| msgid "array subscript is below array bounds"
+#, gcc-internal-format
msgid "array subscript %wi is below array bounds of %qT"
-msgstr "l'indice du tableau est en dessous des limites du tableau"
+msgstr "l'indice du tableau %wi est en dessous des limites de %qT"
#: tree-vrp.c:4984
-#, fuzzy, gcc-internal-format
-#| msgid "array subscript is above array bounds"
+#, gcc-internal-format
msgid "array subscript %wu is above array bounds of %qT"
-msgstr "l'indice du tableau est au delà des limites du tableau"
+msgstr "l'indice du tableau %wu est au delà des limites de %qT"
#: tree.c:2005
#, gcc-internal-format
@@ -23712,10 +23427,9 @@ msgid "TYPE_ARRAY_MAX_SIZE not INTEGER_CST"
msgstr "TYPE_ARRAY_MAX_SIZE pas INTEGER_CST"
#: tree.c:13691
-#, fuzzy, gcc-internal-format
-#| msgid "TYPE_MAXVAL non-NULL"
+#, gcc-internal-format
msgid "TYPE_MAX_VALUE_RAW non-NULL"
-msgstr "TYPE_MAXVAL non NULL"
+msgstr "TYPE_MAX_VALUE_RAW non NULL"
#: tree.c:13698
#, gcc-internal-format
@@ -23834,22 +23548,19 @@ msgid "variable tracking size limit exceeded"
msgstr "la limite de la taille de pistage des variables est dépassée"
#: varasm.c:326
-#, fuzzy, gcc-internal-format
-#| msgid "%+D causes a section type conflict with %D"
+#, gcc-internal-format
msgid "%+qD causes a section type conflict with %qD"
-msgstr "%+D cause un conflit du type de section avec %D"
+msgstr "%+qD cause un conflit du type de section avec %qD"
#: varasm.c:329
-#, fuzzy, gcc-internal-format
-#| msgid "section type conflict with %D"
+#, gcc-internal-format
msgid "section type conflict with %qD"
-msgstr "conflit du type de section avec %D"
+msgstr "conflit du type de section avec %qD"
#: varasm.c:334
-#, fuzzy, gcc-internal-format
-#| msgid "%+D causes a section type conflict"
+#, gcc-internal-format
msgid "%+qD causes a section type conflict"
-msgstr "%+D cause un conflit du type de section"
+msgstr "%+qD cause un conflit du type de section"
#: varasm.c:336
#, gcc-internal-format
@@ -23914,7 +23625,7 @@ msgstr "nom de registre donné pour la variable non registre %q+D"
#: varasm.c:1870
#, gcc-internal-format
msgid "Patchable function entry > size"
-msgstr ""
+msgstr "Entrée de fonction patchable > taille"
#: varasm.c:2069
#, gcc-internal-format
@@ -23947,10 +23658,9 @@ msgid "invalid initial value for member %qE"
msgstr "valeur initiale invalide pour le membre %qE"
#: varasm.c:5487
-#, fuzzy, gcc-internal-format
-#| msgid "%+D declared weak after being used"
+#, gcc-internal-format
msgid "%+qD declared weak after being used"
-msgstr "%+D déclaré faible après avoir été utilisé"
+msgstr "%+qD déclaré faible après avoir été utilisé"
#: varasm.c:5539
#, gcc-internal-format
@@ -24010,22 +23720,22 @@ msgstr "l'attribut de visibilité n'est pas supporté dans cette configuration;
#: vec.c:189
#, gcc-internal-format, gfc-internal-format
msgid "qsort comparator not anti-commutative: %d, %d"
-msgstr ""
+msgstr "le comparateur qsort n'est pas anti-cumulatif: %d, %d"
#: vec.c:194
#, gcc-internal-format, gfc-internal-format
msgid "qsort comparator non-negative on sorted output: %d"
-msgstr ""
+msgstr "le comparateur qsort est non-négatif sur une sortie triée: %d"
#: vec.c:199
#, gcc-internal-format, gfc-internal-format
msgid "qsort comparator not transitive: %d, %d, %d"
-msgstr ""
+msgstr "le comparateur qsort n'est pas transitif: %d, %d, %d"
#: vec.c:201
#, gcc-internal-format
msgid "qsort checking failed"
-msgstr ""
+msgstr "la vérification qsort a échoué"
#: vr-values.c:2396
#, gcc-internal-format
@@ -24084,10 +23794,9 @@ msgid "%qE attribute ignored for field of type %qT"
msgstr "l'attribut %qE est ignoré pour le champ de type %qT"
#: c-family/c-attribs.c:698
-#, fuzzy, gcc-internal-format
-#| msgid "visibility argument not a string"
+#, gcc-internal-format
msgid "no_sanitize argument not a string"
-msgstr "l'argument de visibilité n'est pas une chaîne"
+msgstr "l'argument de no_sanitize n'est pas une chaîne"
# %qs est remplacé par un texte non traduit: « hot », « cold », « always_inline ».
#: c-family/c-attribs.c:828 ada/gcc-interface/utils.c:6235
@@ -24096,10 +23805,9 @@ msgid "%qE attribute ignored due to conflict with attribute %qs"
msgstr "l'attribut %qE est ignoré à cause d'un conflit avec l'attribut %qs"
#: c-family/c-attribs.c:877
-#, fuzzy, gcc-internal-format
-#| msgid "%qE attribute ignored without -mcmse option."
+#, gcc-internal-format
msgid "%qE attribute ignored. Use -fcf-protection option to enable it"
-msgstr "l'attribut %qE est ignoré sans l'option -mcmse."
+msgstr "l'attribut %qE est ignoré. Utilisez l'option -fcf-protection pour l'activer"
# %qs est remplacé par un texte non traduit: « noinline », « target_clones », « always_inline », « target ».
#: c-family/c-attribs.c:916 c-family/c-attribs.c:922 c-family/c-attribs.c:3382
@@ -24124,10 +23832,9 @@ msgid "%qE attribute only affects top level objects"
msgstr "l'attribut %qE affecte uniquement les objets au niveau le plus haut"
#: c-family/c-attribs.c:1200 c-family/c-attribs.c:2681
-#, fuzzy, gcc-internal-format
-#| msgid "using result of function returning %<void%>"
+#, gcc-internal-format
msgid "%qE attribute on function returning %<void%>"
-msgstr "utilisation du résultat d'une fonction qui retourne %<void%>"
+msgstr "attribut %qE sur une fonction retournant %<void%>"
#: c-family/c-attribs.c:1223 c-family/c-pragma.c:419
#, gcc-internal-format
@@ -24256,10 +23963,9 @@ msgid "alignment may not be specified for %q+D"
msgstr "l'alignement ne peut pas être spécifié pour %q+D"
#: c-family/c-attribs.c:1885
-#, fuzzy, gcc-internal-format
-#| msgid "%s attribute of %qs conflicts with %s attribute at %L"
+#, gcc-internal-format
msgid "ignoring attribute %<%E (%u)%> because it conflicts with attribute %<%E (%u)%>"
-msgstr "L'attribut %s de %qs est en conflit avec l'attribut %s à %L"
+msgstr "l'attribut %<%E (%u)%> ignoré car il est en conflit avec l'attribut %<%E (%u)%>"
#. Do not error out for attribute warn_if_not_aligned.
#: c-family/c-attribs.c:1890 c-family/c-attribs.c:1919
@@ -24273,10 +23979,9 @@ msgid "alignment for %q+D was previously specified as %d and may not be decrease
msgstr "l'alignement pour %q+D a été précédemment spécifié comme étant %d et ne peut plus être diminué"
#: c-family/c-attribs.c:1942
-#, fuzzy, gcc-internal-format
-#| msgid "alignment may not be specified for %q+D"
+#, gcc-internal-format
msgid "%<warn_if_not_aligned%> may not be specified for %q+D"
-msgstr "l'alignement ne peut pas être spécifié pour %q+D"
+msgstr "%<warn_if_not_aligned%> ne peut pas être spécifié pour %q+D"
#: c-family/c-attribs.c:1985
#, gcc-internal-format
@@ -24309,16 +24014,14 @@ msgid "attribute %qE argument not a string"
msgstr "l'argument de l'attribut %qE n'est pas une chaîne"
#: c-family/c-attribs.c:2105
-#, fuzzy, gcc-internal-format
-#| msgid "%+D declared alias after being used"
+#, gcc-internal-format
msgid "%+qD declared alias after being used"
-msgstr "%+D est déclaré comme un alias après avoir été utilisé"
+msgstr "%+qD est déclaré comme un alias après avoir été utilisé"
#: c-family/c-attribs.c:2107
-#, fuzzy, gcc-internal-format
-#| msgid "%+D declared ifunc after being used"
+#, gcc-internal-format
msgid "%+qD declared ifunc after being used"
-msgstr "%+D est déclaré « ifunc » après avoir été utilisé"
+msgstr "%+qD est déclaré « ifunc » après avoir été utilisé"
#: c-family/c-attribs.c:2158
#, gcc-internal-format
@@ -24331,10 +24034,9 @@ msgid "weakref attribute must appear before alias attribute"
msgstr "l'attribut « weakref » doit apparaître avant l'attribut « alias »"
#: c-family/c-attribs.c:2192
-#, fuzzy, gcc-internal-format
-#| msgid "%+D declared weakref after being used"
+#, gcc-internal-format
msgid "%+qD declared weakref after being used"
-msgstr "%+D est déclaré « weakref » après avoir été utilisé"
+msgstr "%+qD est déclaré « weakref » après avoir été utilisé"
#: c-family/c-attribs.c:2216
#, gcc-internal-format
@@ -24498,14 +24200,12 @@ msgid "nonnull argument references non-pointer operand (argument %lu, operand %l
msgstr "un argument non nul référence un opérande qui n'est pas un pointeur (argument %lu, opérande %lu)"
#: c-family/c-attribs.c:3202
-#, fuzzy, gcc-internal-format
-#| msgid "%qE attribute ignored for field of type %qT"
+#, gcc-internal-format
msgid "%qE attribute ignored on objects of type %qT"
-msgstr "l'attribut %qE est ignoré pour le champ de type %qT"
+msgstr "l'attribut %qE est ignoré pour l'objet de type %qT"
#: c-family/c-attribs.c:3210
-#, fuzzy, gcc-internal-format
-#| msgid "%qE attribute doesn't apply to functions"
+#, gcc-internal-format
msgid "%qE attribute does not apply to functions"
msgstr "l'attribut %qE ne s'applique pas aux fonctions"
@@ -24540,10 +24240,9 @@ msgid "requested position is less than zero"
msgstr "la position demandée est plus petite que zéro"
#: c-family/c-attribs.c:3398
-#, fuzzy, gcc-internal-format
-#| msgid "value %qs is not supported by attribute %<target%>"
+#, gcc-internal-format
msgid "empty string in attribute %<target%>"
-msgstr "la valeur %qs n'est pas supportée par l'attribut %<target%>"
+msgstr "chaîne vide dans l'attribut %<target%>"
#: c-family/c-attribs.c:3514
#, gcc-internal-format
@@ -24596,28 +24295,24 @@ msgid "__builtin_shuffle argument vector(s) inner type must have the same size a
msgstr "le type intérieur du/des argument(s) vectoriel(s) de __builtin_shuffle doivent avoir la même taille que le type intérieur du masque"
#: c-family/c-common.c:1262 c-family/c-warn.c:1187
-#, fuzzy, gcc-internal-format
-#| msgid "conversion from %qT to %qT discards qualifiers"
+#, gcc-internal-format
msgid "unsigned conversion from %qT to %qT changes value from %qE to %qE"
-msgstr "la conversion depuis %qT vers %qT écarte les qualificatifs"
+msgstr "la conversion non-signée de %qT vers %qT change la valeur de %qE en %qE"
#: c-family/c-common.c:1267 c-family/c-warn.c:1195
-#, fuzzy, gcc-internal-format
-#| msgid "conversion from %qT to %qT is ambiguous"
+#, gcc-internal-format
msgid "unsigned conversion from %qT to %qT changes the value of %qE"
-msgstr "la conversion de %qT vers %qT est ambiguë"
+msgstr "la conversion non-signée de %qT vers %qT change la valeur de %qE"
#: c-family/c-common.c:1276
-#, fuzzy, gcc-internal-format
-#| msgid "conversion from %qT to %qT discards qualifiers"
+#, gcc-internal-format
msgid "signed conversion from %qT to %qT changes value from %qE to %qE"
-msgstr "la conversion depuis %qT vers %qT écarte les qualificatifs"
+msgstr "la conversion signée de %qT vers %qT change la valeur de %qE en %qE"
#: c-family/c-common.c:1281
-#, fuzzy, gcc-internal-format
-#| msgid "conversion from %qT to %qT is ambiguous"
+#, gcc-internal-format
msgid "signed conversion from %qT to %qT changes the value of %qE"
-msgstr "la conversion de %qT vers %qT est ambiguë"
+msgstr "la conversion signée de %qT vers %qT change la valeur de %qE"
#: c-family/c-common.c:1434 c-family/c-common.c:1496
#, gcc-internal-format
@@ -24897,10 +24592,9 @@ msgid "too many arguments to function %qE"
msgstr "trop d'arguments pour la fonction %qE"
#: c-family/c-common.c:5759
-#, fuzzy, gcc-internal-format
-#| msgid "third argument to %<__builtin_prefetch%> must be a constant"
+#, gcc-internal-format
msgid "third argument to function %qE must be a constant integer"
-msgstr "le troisième argument de %<__builtin_prefetch%> doit être une constante"
+msgstr "le troisième argument de la fonction %qE doit être une constante entière"
#: c-family/c-common.c:5784
#, gcc-internal-format
@@ -25227,12 +24921,12 @@ msgstr "%s ne supporte pas %s avec le format %<%%%c%> %s"
#: c-family/c-format.c:1953
#, gcc-internal-format, gfc-internal-format
msgid "%s used within a quoted sequence"
-msgstr ""
+msgstr "%s utilisé dans une séquence entre guillemets"
#: c-family/c-format.c:1966
#, gcc-internal-format
msgid "%qc conversion used unquoted"
-msgstr ""
+msgstr "conversion %qc utilisée sans guillemets"
#: c-family/c-format.c:2084 c-family/c-format.c:2415
#, gcc-internal-format, gfc-internal-format
@@ -25340,30 +25034,29 @@ msgid "conversion lacks type at end of format"
msgstr "il manque le type dans la conversion à la fin du format"
#: c-family/c-format.c:2891
-#, fuzzy, gcc-internal-format
-#| msgid "Process #ident directives."
+#, gcc-internal-format
msgid "nested quoting directive"
-msgstr "Traiter les directives #ident."
+msgstr "directive imbriquée de mise entre guillemets"
#: c-family/c-format.c:2902
#, gcc-internal-format
msgid "unmatched quoting directive"
-msgstr ""
+msgstr "directive de mise entre guillemets non concordante"
#: c-family/c-format.c:2917
#, gcc-internal-format
msgid "%qc directive redundant after prior occurence of the same"
-msgstr ""
+msgstr "directive %qc redondante après une occurrence précédente du même"
#: c-family/c-format.c:2923
#, gcc-internal-format
msgid "unmatched color reset directive"
-msgstr ""
+msgstr "directive de réinitialisation de couleur sans concordante"
#: c-family/c-format.c:2935
#, gcc-internal-format
msgid "%qc conversion used within a quoted sequence"
-msgstr ""
+msgstr "conversion %qc utilisée dans une séquence entre guillemets"
#: c-family/c-format.c:2975
#, gcc-internal-format
@@ -25371,16 +25064,14 @@ msgid "embedded %<\\0%> in format"
msgstr "%<\\0%> inclus à l'intérieur du format"
#: c-family/c-format.c:2988
-#, fuzzy, gcc-internal-format
-#| msgid "unterminated format string"
+#, gcc-internal-format
msgid "unterminated quoting directive"
-msgstr "chaîne de format non terminée"
+msgstr "directive de mise entre guillemets non terminée"
#: c-family/c-format.c:2992
-#, fuzzy, gcc-internal-format
-#| msgid "unterminated assembly dialect alternative"
+#, gcc-internal-format
msgid "unterminated color directive"
-msgstr "alternative non terminée de dialecte assembleur"
+msgstr "directive de couleur non terminée"
#: c-family/c-format.c:3114
#, gcc-internal-format, gfc-internal-format
@@ -25453,10 +25144,9 @@ msgid "%<tree%> is not defined as a pointer type"
msgstr "%<tree%> n'est pas défini comme un type pointeur"
#: c-family/c-format.c:3876
-#, fuzzy, gcc-internal-format
-#| msgid "%<locus%> is not defined as a type"
+#, gcc-internal-format
msgid "%<gcall%> is not defined as a type"
-msgstr "%<locus%> n'est pas défini comme un type"
+msgstr "%<gcall%> n'est pas défini comme un type"
#: c-family/c-format.c:4087
#, gcc-internal-format
@@ -25911,10 +25601,9 @@ msgid "%<#pragma weak%> declaration of %q+D not allowed, ignored"
msgstr "la déclaration %<#pragma weak%> de %q+D n'est pas permise, ignoré"
#: c-family/c-pragma.c:428
-#, fuzzy, gcc-internal-format
-#| msgid "scalar_storage_order is not supported"
+#, gcc-internal-format
msgid "%<#pragma scalar_storage_order%> is not supported for C++"
-msgstr "scalar_storage_order n'est pas supporté"
+msgstr "%<#pragma scalar_storage_order%> n'est pas supporté pour le C++"
#: c-family/c-pragma.c:434
#, gcc-internal-format
@@ -26178,76 +25867,64 @@ msgid "overflow in constant expression"
msgstr "débordement dans l'expression constante"
#: c-family/c-warn.c:93
-#, fuzzy, gcc-internal-format
-#| msgid "integer overflow in expression"
+#, gcc-internal-format
msgid "integer overflow in expression %qE of type %qT results in %qE"
-msgstr "débordement d'entier dans l'expression"
+msgstr "débordement d'entier dans l'expression %qE de type %qT résulte en %qE"
#: c-family/c-warn.c:95
-#, fuzzy, gcc-internal-format
-#| msgid "integer overflow in expression"
+#, gcc-internal-format
msgid "integer overflow in expression of type %qT results in %qE"
-msgstr "débordement d'entier dans l'expression"
+msgstr "débordement d'entier dans l'expression de type %qT résulte en %qE"
#: c-family/c-warn.c:101
-#, fuzzy, gcc-internal-format
-#| msgid "floating point overflow in expression"
+#, gcc-internal-format
msgid "floating point overflow in expression %qE of type %qT results in %qE"
-msgstr "débordement d'un nombre en virgule flottante dans l'expression"
+msgstr "débordement d'un nombre en virgule flottante dans l'expression %qE de type %qT résulte en %qE"
#: c-family/c-warn.c:103
-#, fuzzy, gcc-internal-format
-#| msgid "floating point overflow in expression"
+#, gcc-internal-format
msgid "floating point overflow in expression of type %qT results in %qE"
-msgstr "débordement d'un nombre en virgule flottante dans l'expression"
+msgstr "débordement d'un nombre en virgule flottante dans l'expression de type %qT résulte en %qE"
#: c-family/c-warn.c:109
-#, fuzzy, gcc-internal-format
-#| msgid "fixed-point overflow in expression"
+#, gcc-internal-format
msgid "fixed-point overflow in expression %qE of type %qT results in %qE"
-msgstr "débordement d'un nombre en virgule fixe dans l'expression"
+msgstr "débordement d'un nombre en virgule fixe dans l'expression %qE de type %qT résulte in %qE"
#: c-family/c-warn.c:111
-#, fuzzy, gcc-internal-format
-#| msgid "fixed-point overflow in expression"
+#, gcc-internal-format
msgid "fixed-point overflow in expression of type %qT results in %qE"
-msgstr "débordement d'un nombre en virgule fixe dans l'expression"
+msgstr "débordement d'un nombre en virgule fixe dans l'expression de type %qT résulte en %qE"
#: c-family/c-warn.c:117
-#, fuzzy, gcc-internal-format
-#| msgid "vector overflow in expression"
+#, gcc-internal-format
msgid "vector overflow in expression %qE of type %qT results in %qE"
-msgstr "débordement du vecteur dans l'expression"
+msgstr "débordement du vecteur dans l'expression %qE de type %qT résulte en %qE"
#: c-family/c-warn.c:119
-#, fuzzy, gcc-internal-format
-#| msgid "vector overflow in expression"
+#, gcc-internal-format
msgid "vector overflow in expression of type %qT results in %qE"
-msgstr "débordement du vecteur dans l'expression"
+msgstr "débordement du vecteur dans l'expression de type %qT résulte en %qE"
#: c-family/c-warn.c:126
-#, fuzzy, gcc-internal-format
-#| msgid "complex integer overflow in expression"
+#, gcc-internal-format
msgid "complex integer overflow in expression %qE of type %qT results in %qE"
-msgstr "débordement d'un entier complexe dans l'expression"
+msgstr "débordement d'un entier complexe dans l'expression %qE de type %qT résulte en %qE"
#: c-family/c-warn.c:128
-#, fuzzy, gcc-internal-format
-#| msgid "complex integer overflow in expression"
+#, gcc-internal-format
msgid "complex integer overflow in expression of type %qT results in %qE"
-msgstr "débordement d'un entier complexe dans l'expression"
+msgstr "débordement d'un entier complexe dans l'expression de type %qT résulte en %qE"
#: c-family/c-warn.c:132
-#, fuzzy, gcc-internal-format
-#| msgid "complex floating point overflow in expression"
+#, gcc-internal-format
msgid "complex floating point overflow in expression %qE of type %qT results in %qE"
-msgstr "débordement d'un nombre en virgule flottante complexe dans l'expression"
+msgstr "débordement d'un nombre en virgule flottante complexe dans l'expression %qE de type %qT résulte en %qE"
#: c-family/c-warn.c:134
-#, fuzzy, gcc-internal-format
-#| msgid "complex floating point overflow in expression"
+#, gcc-internal-format
msgid "complex floating point overflow in expression of type %qT results in %qE"
-msgstr "débordement d'un nombre en virgule flottante complexe dans l'expression"
+msgstr "débordement d'un nombre en virgule flottante complexe dans l'expression de type %qT résulte en %qE"
#: c-family/c-warn.c:216
#, gcc-internal-format
@@ -26280,16 +25957,14 @@ msgid "logical %<and%> of equal expressions"
msgstr "%<et%> logique d'expressions égales"
#: c-family/c-warn.c:384
-#, fuzzy, gcc-internal-format
-#| msgid "self-comparison always evaluates to false"
+#, gcc-internal-format
msgid "bitwise comparison always evaluates to false"
-msgstr "la comparaison avec soi-même retourne toujours faux"
+msgstr "la comparaison au niveau du bit est toujours évaluée à faux"
#: c-family/c-warn.c:387
-#, fuzzy, gcc-internal-format
-#| msgid "self-comparison always evaluates to true"
+#, gcc-internal-format
msgid "bitwise comparison always evaluates to true"
-msgstr "la comparaison avec soi-même retourne toujours vrai"
+msgstr "la comparaison au niveau du bit est toujours évaluée à vrai"
#: c-family/c-warn.c:441
#, gcc-internal-format
@@ -26327,10 +26002,9 @@ msgid "dereferencing type-punned pointer might break strict-aliasing rules"
msgstr "le déréférencement d'un pointeur transtypé à la barbare pourrait enfreindre la règle selon laquelle une zone mémoire ne peut être accédée que par un seul pointeur (strict aliasing)"
#: c-family/c-warn.c:795
-#, fuzzy, gcc-internal-format
-#| msgid "argument to %<sizeof%> in %qD call is the same expression as the source; did you mean to remove the addressof?"
+#, gcc-internal-format
msgid "argument to %<sizeof%> in %qD call is the same expression as the source; did you mean to use the size of the destination?"
-msgstr "l'argument de %<sizeof%> dans l'appel à %qD est la même expression que la source; avez-vous oublié de retirer « addressof » ?"
+msgstr "l'argument de %<sizeof%> dans l'appel à %qD est la même expression que la source; ne vouliez-vous pas utiliser la taille de la destination ?"
#: c-family/c-warn.c:826
#, gcc-internal-format
@@ -26448,40 +26122,34 @@ msgid "conversion to %qT from boolean expression"
msgstr "conversion d'une expression booléenne vers %qT"
#: c-family/c-warn.c:1109 c-family/c-warn.c:1185
-#, fuzzy, gcc-internal-format
-#| msgid "conversion from %qT to %qT discards qualifiers"
+#, gcc-internal-format
msgid "conversion from %qT to %qT changes value from %qE to %qE"
-msgstr "la conversion depuis %qT vers %qT écarte les qualificatifs"
+msgstr "la conversion depuis %qT vers %qT change la valeur de %qE en %qE"
#: c-family/c-warn.c:1113 c-family/c-warn.c:1193
-#, fuzzy, gcc-internal-format
-#| msgid "conversion from %qT to %qT is ambiguous"
+#, gcc-internal-format
msgid "conversion from %qT to %qT changes the value of %qE"
-msgstr "la conversion de %qT vers %qT est ambiguë"
+msgstr "la conversion de %qT vers %qT change la valeur de %qE"
#: c-family/c-warn.c:1133
-#, fuzzy, gcc-internal-format
-#| msgid "conversion to %qT from %qT discards imaginary component"
+#, gcc-internal-format
msgid "conversion from %qT to to %qT discards imaginary component"
-msgstr "la conversion vers %qT depuis %qT abandonne la partir imaginaire"
+msgstr "la conversion de %qT vers %qT abandonne la partir imaginaire"
#: c-family/c-warn.c:1146
-#, fuzzy, gcc-internal-format
-#| msgid "conversion to %qT from %qT may alter its value"
+#, gcc-internal-format
msgid "conversion from %qT to %qT may change value"
-msgstr "la conversion vers %qT depuis %qT peut altérer sa valeur"
+msgstr "la conversion de %qT vers %qT peut changer la valeur"
#: c-family/c-warn.c:1206 c-family/c-warn.c:1223 c-family/c-warn.c:1240
-#, fuzzy, gcc-internal-format
-#| msgid "implicit conversion from %qT to %qT when passing argument to function"
+#, gcc-internal-format
msgid "overflow in conversion from %qT to %qT changes value from %qE to %qE"
-msgstr "conversion implicite de %qT en %qT lors du passage de l'argument à la fonction"
+msgstr "le débordement dans la conversion de %qT vers %qT change la valeur de %qE en %qE"
#: c-family/c-warn.c:1211 c-family/c-warn.c:1228 c-family/c-warn.c:1245
-#, fuzzy, gcc-internal-format
-#| msgid "narrowing conversion of %qE from %qT to %qT inside { }"
+#, gcc-internal-format
msgid "overflow in conversion from %qT to %qT changes the value of %qE"
-msgstr "conversion réductrice de %qE depuis %qT vers %qT à l'intérieur de { }"
+msgstr "le débordement dans la conversion de %qT vers %qT change la valeur en %qE"
#: c-family/c-warn.c:1275
#, gcc-internal-format
@@ -26832,7 +26500,7 @@ msgstr "comparaison entre les types %qT et %qT"
#: c-family/c-warn.c:1988
#, gcc-internal-format
msgid "comparison of integer expressions of different signedness: %qT and %qT"
-msgstr ""
+msgstr "comparaison d'expressions entières de types signés différents: %qT et %qT"
#: c-family/c-warn.c:2041
#, gcc-internal-format
@@ -26870,16 +26538,14 @@ msgid "optimization attribute on %qD follows definition but the attribute doesn%
msgstr "l'attribut d'optimisation sur %qD suit la définition mais l'attribut ne correspond pas"
#: c-family/c-warn.c:2244
-#, fuzzy, gcc-internal-format
-#| msgid "inline declaration of %qD follows declaration with attribute noinline"
+#, gcc-internal-format
msgid "inline declaration of %qD follows declaration with attribute %qs"
-msgstr "la déclaration en ligne de %qD suit la déclaration avec l'attribut « noinline »"
+msgstr "la déclaration en ligne de %qD suit la déclaration avec l'attribut %qs"
#: c-family/c-warn.c:2249
-#, fuzzy, gcc-internal-format
-#| msgid "declaration of %q+D with attribute noinline follows inline declaration "
+#, gcc-internal-format
msgid "declaration of %q+D with attribute %qs follows inline declaration "
-msgstr "la déclaration de %q+D avec l'attribut « noinline » suit la déclaration « inline »"
+msgstr "la déclaration de %q+D avec l'attribut %qs suit la déclaration « inline »"
#: c-family/c-warn.c:2296
#, gcc-internal-format
@@ -26910,12 +26576,12 @@ msgstr "cette condition a des branches identiques"
#: c-family/c-warn.c:2575
#, gcc-internal-format
msgid "macro expands to multiple statements"
-msgstr ""
+msgstr "la macro s'étend en des instructions multiples"
#: c-family/c-warn.c:2576
#, gcc-internal-format
msgid "some parts of macro expansion are not guarded by this %qs clause"
-msgstr ""
+msgstr "certaines parties de l'expansion de la macro ne sont pas protégées par cette instruction %qs"
#: c-family/cppspec.c:93
#, gcc-internal-format
@@ -26950,12 +26616,12 @@ msgstr "Valeur non supportée pour mmpy-option"
#: common/config/arm/arm-common.c:259
#, gcc-internal-format, gfc-internal-format
msgid "%%:target_mode_check takes an even number of parameters"
-msgstr ""
+msgstr "%%:target_mode_check prend un nombre paire de paramètres"
#: common/config/arm/arm-common.c:269
#, gcc-internal-format, gfc-internal-format
msgid "unrecognized option passed to %%:target_mode_check"
-msgstr ""
+msgstr "option non reconnue passée à %%:target_mode_check"
#: common/config/arm/arm-common.c:315 common/config/arm/arm-common.c:359
#: common/config/arm/arm-common.c:402 config/aarch64/aarch64.c:10497
@@ -26965,63 +26631,54 @@ msgstr "les arguments valides sont: %s; vouliez-vous utiliser %qs ?"
#: common/config/arm/arm-common.c:318 common/config/arm/arm-common.c:362
#: common/config/arm/arm-common.c:405
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "valid arguments to %qs are: %s"
+#, gcc-internal-format, gfc-internal-format
msgid "valid arguments are: %s"
-msgstr "les arguments valables pour %qs sont: %s"
+msgstr "les arguments valables sont: %s"
#: common/config/arm/arm-common.c:342 common/config/arm/arm-common.c:386
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "unrecognized edge flag: '%s'"
+#, gcc-internal-format, gfc-internal-format
msgid "unrecognized %s target: %s"
-msgstr "fanion d'arête non reconnu: « %s »"
+msgstr "cible %s non reconnue: %s"
#: common/config/arm/arm-common.c:421
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "unrecognized enum value: '%s'"
+#, gcc-internal-format, gfc-internal-format
msgid "unrecognized -mfpu target: %s"
-msgstr "valeur d'énumération non reconnue: « %s »"
+msgstr "cible -mfpu non reconnue: %s"
#: common/config/arm/arm-common.c:449
-#, fuzzy, gcc-internal-format
-#| msgid "%s does not support %s"
+#, gcc-internal-format
msgid "%qs does not support feature %qs"
-msgstr "%s ne supporte pas %s"
+msgstr "%qs ne supporte pas la fonctionnalité %qs"
#: common/config/arm/arm-common.c:460
-#, fuzzy, gcc-internal-format
-#| msgid "valid arguments are: %s; did you mean %qs?"
+#, gcc-internal-format
msgid "valid feature names are: %s; did you mean %qs?"
-msgstr "les arguments valides sont: %s; vouliez-vous utiliser %qs ?"
+msgstr "les noms de fonctionnalités valides sont: %s; vouliez-vous utiliser %qs ?"
#: common/config/arm/arm-common.c:463
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "invalid feature modifier in target %s %qs"
+#, gcc-internal-format, gfc-internal-format
msgid "valid feature names are: %s"
-msgstr "modificateur de fonctionnalité invalide dans la cible %s %qs"
+msgstr "les noms de fonctionnalités valables sont: %s"
#: common/config/arm/arm-common.c:481
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "%qD does not name an enumeration in %qT"
+#, gcc-internal-format, gfc-internal-format
msgid "%s does not take any feature options"
-msgstr "%qD ne nomme pas une énumération dans %qT"
+msgstr "%s ne prend aucune option de fonctionnalité"
#: common/config/arm/arm-common.c:572
#, gcc-internal-format, gfc-internal-format
msgid "%%:canon_for_mlib takes 1 or more pairs of parameters"
-msgstr ""
+msgstr "%%:canon_for_mlib prend une ou plusieurs paires de paramètres"
#: common/config/arm/arm-common.c:586
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "unrecognized option -fdisable"
+#, gcc-internal-format, gfc-internal-format
msgid "unrecognized operand to %%:canon_for_mlib"
-msgstr "option -fdisable non reconnue"
+msgstr "opérande non reconnu pour %%:canon_for_mlib"
#: common/config/arm/arm-common.c:932
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "unrecognized command line option %qs"
+#, gcc-internal-format, gfc-internal-format
msgid "unrecognized operand to %%:asm_auto_mfpu"
-msgstr "option %qs non reconnue sur la ligne de commande"
+msgstr "opérande non reconnu pour %%:asm_auto_mfpu"
#: common/config/bfin/bfin-common.c:304 common/config/m68k/m68k-common.c:60
#, gcc-internal-format, gfc-internal-format
@@ -27376,10 +27033,9 @@ msgid "invalid alignment for %<#pragma align%>, ignoring"
msgstr "alignement invalide pour %<#pragma align%>, ignoré"
#: config/sol2-c.c:115
-#, fuzzy, gcc-internal-format
-#| msgid "%<#pragma align%> must appear before the declaration of %D, ignoring"
+#, gcc-internal-format
msgid "%<#pragma align%> must appear before the declaration of %qD, ignoring"
-msgstr "%<#pragma align%> doit apparaître avant la déclaration de %D, ignoré"
+msgstr "%<#pragma align%> doit apparaître avant la déclaration de %qD, ignoré"
#: config/sol2-c.c:127 config/sol2-c.c:139
#, gcc-internal-format
@@ -27475,7 +27131,7 @@ msgstr "le modificateur de fonctionnalité %qs est incompatible avec %s %s"
#: config/aarch64/aarch64.c:3654
#, gcc-internal-format
msgid "stack probes for SVE frames"
-msgstr ""
+msgstr "sondes de pile pour les trames SVE"
#: config/aarch64/aarch64.c:10152
#, gcc-internal-format, gfc-internal-format
@@ -27538,16 +27194,14 @@ msgid "switch -mcpu=%s conflicts with -march=%s switch"
msgstr "l'option -mcpu=%s est en conflit avec l'option -march=%s"
#: config/aarch64/aarch64.c:10761
-#, fuzzy, gcc-internal-format
-#| msgid "Assembler does not support -mabi=ilp32"
+#, gcc-internal-format
msgid "assembler does not support -mabi=ilp32"
-msgstr "L'assembleur ne supporte pas -mabi=ilp32"
+msgstr "l'assembleur ne supporte pas -mabi=ilp32"
#: config/aarch64/aarch64.c:10768
-#, fuzzy, gcc-internal-format
-#| msgid "Return address signing is only supported for -mabi=lp64"
+#, gcc-internal-format
msgid "return address signing is only supported for -mabi=lp64"
-msgstr "La signature de l'adresse de retour n'est supportée qu'avec -mabi=lp64"
+msgstr "la signature de l'adresse de retour n'est supportée qu'avec -mabi=lp64"
#: config/aarch64/aarch64.c:10830
#, gcc-internal-format
@@ -27555,71 +27209,60 @@ msgid "code model %qs with -f%s"
msgstr "modèle de code %qs avec -f%s"
#: config/aarch64/aarch64.c:10993
-#, fuzzy, gcc-internal-format
-#| msgid "bad value (%qs) for %<target(\"arch=\")%> attribute"
+#, gcc-internal-format
msgid "missing name in %<target(\"arch=\")%> pragma or attribute"
-msgstr "valeur erronée (%qs) pour l'attribut %<target(\"arch=\")%>"
+msgstr "nom manquant dans le pragma ou l'attribut %<target(\"arch=\")%>"
#: config/aarch64/aarch64.c:10996
-#, fuzzy, gcc-internal-format
-#| msgid "bad value (%qs) for %<target(\"arch=\")%> attribute"
+#, gcc-internal-format
msgid "invalid name (\"%s\") in %<target(\"arch=\")%> pragma or attribute"
-msgstr "valeur erronée (%qs) pour l'attribut %<target(\"arch=\")%>"
+msgstr "nom invalide (« %s ») dans le pragma ou l'attribut %<target(\"arch=\")%>"
#: config/aarch64/aarch64.c:11000 config/aarch64/aarch64.c:11039
#: config/aarch64/aarch64.c:11112
-#, fuzzy, gcc-internal-format
-#| msgid "bad value (%qs) for %<target(\"arch=\")%> attribute"
+#, gcc-internal-format
msgid "invalid value (\"%s\") in %<target()%> pragma or attribute"
-msgstr "valeur erronée (%qs) pour l'attribut %<target(\"arch=\")%>"
+msgstr "valeur invalide (« %s ») dans le pragma ou l'attribut %<target(\"arch=\")%>"
#: config/aarch64/aarch64.c:11032
-#, fuzzy, gcc-internal-format
-#| msgid "bad value (%qs) for %<target(\"arch=\")%> attribute"
+#, gcc-internal-format
msgid "missing name in %<target(\"cpu=\")%> pragma or attribute"
-msgstr "valeur erronée (%qs) pour l'attribut %<target(\"arch=\")%>"
+msgstr "nom manquant dans le pragma ou l'attribut %<target(\"cpu=\")%>"
#: config/aarch64/aarch64.c:11035
-#, fuzzy, gcc-internal-format
-#| msgid "bad value (%qs) for %<target(\"arch=\")%> attribute"
+#, gcc-internal-format
msgid "invalid name (\"%s\") in %<target(\"cpu=\")%> pragma or attribute"
-msgstr "valeur erronée (%qs) pour l'attribut %<target(\"arch=\")%>"
+msgstr "nom invalide (« %s ») dans le pragma ou l'attribut %<target(\"cpu=\")%>"
#: config/aarch64/aarch64.c:11068
-#, fuzzy, gcc-internal-format
-#| msgid "bad value (%qs) for %<target(\"tune=\")%> attribute"
+#, gcc-internal-format
msgid "invalid name (\"%s\") in %<target(\"tune=\")%> pragma or attribute"
-msgstr "valeur erronée (%qs) pour l'attribut %<target(\"tune=\")%>"
+msgstr "nom invalide (« %s ») dans le pragma ou l'attribut %<target(\"tune=\")%>"
#: config/aarch64/aarch64.c:11108
-#, fuzzy, gcc-internal-format
-#| msgid "missing %<=%> (after %<getter%> attribute)"
+#, gcc-internal-format
msgid "missing value in %<target()%> pragma or attribute"
-msgstr "%<=%> manquant (après l'attribut %<getter%>)"
+msgstr "valeur manquante dans le pragma ou l'attribut %<target()%>"
#: config/aarch64/aarch64.c:11161 config/aarch64/aarch64.c:11338
-#, fuzzy, gcc-internal-format
-#| msgid "malformed target %s value"
+#, gcc-internal-format
msgid "malformed %<target()%> pragma or attribute"
-msgstr "la valeur cible de %s est mal composée"
+msgstr "le pragma ou l'attribut %<target()%> est mal composé"
#: config/aarch64/aarch64.c:11209
-#, fuzzy, gcc-internal-format
-#| msgid "target %s %qs does not accept an argument"
+#, gcc-internal-format
msgid "pragma or attribute %<target(\"%s\")%> does not accept an argument"
-msgstr "la cible %s %qs n'accepte pas d'argument"
+msgstr "le pragma ou l'attribut %<target(\"%s\")%> n'accepte pas d'argument"
#: config/aarch64/aarch64.c:11217
-#, fuzzy, gcc-internal-format
-#| msgid "target %s %qs does not allow a negated form"
+#, gcc-internal-format
msgid "pragma or attribute %<target(\"%s\")%> does not allow a negated form"
-msgstr "la cible %s %qs n'autorise pas de forme négative"
+msgstr "le pragma ou l'attribut %<target(\"%s\")%> n'autorise pas de forme négative"
#: config/aarch64/aarch64.c:11271
-#, fuzzy, gcc-internal-format
-#| msgid "attribute(target(\"%s\")) is unknown"
+#, gcc-internal-format
msgid "pragma or attribute %<target(\"%s=%s\")%> is not valid"
-msgstr "attribute(target(\"%s\")) est inconnu"
+msgstr "le pragma ou l'attribut %<target(\"%s=%s\")%> n'est pas valide"
#: config/aarch64/aarch64.c:11328 config/arm/arm.c:30726
#: config/i386/i386.c:5412 config/powerpcspe/powerpcspe.c:39759
@@ -27629,16 +27272,14 @@ msgid "attribute %<target%> argument not a string"
msgstr "l'argument %<target%> de l'attribut n'est pas une chaîne"
#: config/aarch64/aarch64.c:11355
-#, fuzzy, gcc-internal-format
-#| msgid "attribute(target(\"%s\")) is unknown"
+#, gcc-internal-format
msgid "pragma or attribute %<target(\"%s\")%> is not valid"
-msgstr "attribute(target(\"%s\")) est inconnu"
+msgstr "le pragma ou l'attribut %<target(\"%s\")%> n'est pas valide"
#: config/aarch64/aarch64.c:11364
-#, fuzzy, gcc-internal-format
-#| msgid "bad value (%qs) for %<target(\"arch=\")%> attribute"
+#, gcc-internal-format
msgid "malformed %<target(\"%s\")%> pragma or attribute"
-msgstr "valeur erronée (%qs) pour l'attribut %<target(\"arch=\")%>"
+msgstr "le pragma ou l'attribut %<target(\"%s\")%> est mal composé"
#: config/aarch64/aarch64.c:13422
#, gcc-internal-format
@@ -27743,22 +27384,19 @@ msgid "PIC is not supported for %s. Generating non-PIC code only.."
msgstr "PIC n'est pas supporté pour %s. Seul du code non PIC sera généré."
#: config/arc/arc.c:965
-#, fuzzy, gcc-internal-format
-#| msgid "value of -mfixed-range must have form REG1-REG2"
+#, gcc-internal-format
msgid "value of -mirq-ctrl-saved must have form R0-REGx"
-msgstr "la valeur de -mfixed-range doit avoir la forme REG1-REG2"
+msgstr "la valeur de -mirq-ctrl-saved doit avoir la forme R0-REGx"
#: config/arc/arc.c:977
-#, fuzzy, gcc-internal-format
-#| msgid "first argument must be []byte"
+#, gcc-internal-format
msgid "first register must be R0"
-msgstr "le premier argument doit être []byte"
+msgstr "le premier argument doit être R0"
#: config/arc/arc.c:996
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Cray pointer at %C must be an integer"
+#, gcc-internal-format, gfc-internal-format
msgid "last register name %s must be an odd register"
-msgstr "Le pointeur Cray à %C doit être un entier"
+msgstr "le dernier nom de registre %s doit être un registre impair"
#: config/arc/arc.c:1004 config/ia64/ia64.c:6054 config/pa/pa.c:483
#: config/sh/sh.c:8288 config/spu/spu.c:4941
@@ -27769,17 +27407,17 @@ msgstr "%s-%s est une plage vide"
#: config/arc/arc.c:1053
#, gcc-internal-format, gfc-internal-format
msgid "invalid number in -mrgf-banked-regs=%s valid values are 0, 4, 8, 16, or 32"
-msgstr ""
+msgstr "nombre invalide dans -mrgf-banked-regs=%s les valeurs valables sont 0, 4, 8, 16 ou 32"
#: config/arc/arc.c:1114
#, gcc-internal-format
msgid "option -mirq-ctrl-saved valid only for ARC v2 processors"
-msgstr ""
+msgstr "l'option -mirq-ctrl-saved est uniquement valable pour les processeurs ARC v2"
#: config/arc/arc.c:1121
#, gcc-internal-format
msgid "option -mrgf-banked-regs valid only for ARC v2 processors"
-msgstr ""
+msgstr "l'option -mrgf-banked-regs est uniquement valable pour les processeur ARC v2"
#. Check options against architecture options. Throw an error if
#. option is not allowed.
@@ -27810,10 +27448,9 @@ msgid "argument of %qE attribute is not \"ilink1\" or \"ilink2\""
msgstr "l'argument de l'attribut %qE n'est pas « ilink1 » ni « ilink2 »"
#: config/arc/arc.c:2025
-#, fuzzy, gcc-internal-format
-#| msgid "argument of %qE attribute is not \"ilink1\" or \"ilink2\""
+#, gcc-internal-format
msgid "argument of %qE attribute is not \"ilink\" or \"firq\""
-msgstr "l'argument de l'attribut %qE n'est pas « ilink1 » ni « ilink2 »"
+msgstr "l'argument de l'attribut %qE n'est pas « ilink » ni « firq »"
#: config/arc/arc.c:2039 config/arm/arm.c:6832 config/arm/arm.c:6850
#: config/arm/arm.c:7025 config/avr/avr.c:9726 config/avr/avr.c:9742
@@ -27938,16 +27575,14 @@ msgid "insn addresses not freed"
msgstr "les adresses des insn ne sont pas libérées"
#: config/arc/arc.c:11049
-#, fuzzy, gcc-internal-format
-#| msgid "%qE attribute only available for 32-bit"
+#, gcc-internal-format
msgid "%qE attribute only valid for ARCv2 architecture"
-msgstr "l'attribut %qE est uniquement disponible en 32 bits"
+msgstr "l'attribut %qE est uniquement valable pour l'architecture ARCv2"
#: config/arc/arc.c:11057 config/arc/arc.c:11096
-#, fuzzy, gcc-internal-format
-#| msgid "argument of %qE attribute is not \"ilink\""
+#, gcc-internal-format
msgid "argument of %qE attribute is missing"
-msgstr "l'argument de l'attribut %qE n'est pas « ilink »"
+msgstr "l'argument de l'attribut %qE est manquant"
#: config/arc/arc.c:11068 config/arc/arc.c:11107 config/avr/avr.c:9798
#, gcc-internal-format
@@ -27955,10 +27590,9 @@ msgid "%qE attribute allows only an integer constant argument"
msgstr "l'attribut %qE n'accepte qu'une constante entière comme argument"
#: config/arc/arc.c:11088
-#, fuzzy, gcc-internal-format
-#| msgid "%qE attribute is only valid on %<struct%> type"
+#, gcc-internal-format
msgid "%qE attribute only valid for ARC EM architecture"
-msgstr "l'attribut %qE est uniquement valable sur un type %<struct%>"
+msgstr "l'attribut %qE est uniquement valable pour l'architecture ARC EM"
#: config/arm/arm-builtins.c:2370
#, gcc-internal-format
@@ -28173,10 +27807,9 @@ msgid "RTP PIC is incompatible with Thumb"
msgstr "RTP PIC est incompatible avec Thumb"
#: config/arm/arm.c:2902
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "-mpure-code only supports non-pic code on armv7-m targets"
+#, gcc-internal-format, gfc-internal-format
msgid "%s only supports non-pic code on M-profile targets with the MOVT instruction"
-msgstr "-mpure-code ne supporte que du code non pic sur les cibles armv7-m"
+msgstr "%s ne supporte que du code non pic sur les cibles M-profile avec l'instruction MOVT"
#: config/arm/arm.c:3012
#, gcc-internal-format
@@ -28206,7 +27839,7 @@ msgstr "Le code réentrant APCS n'est pas supporté. Ignoré"
#: config/arm/arm.c:3438
#, gcc-internal-format
msgid "option %<-mstructure-size-boundary%> is deprecated"
-msgstr ""
+msgstr "l'option %<-mstructure-size-boundary%> est dépréciée"
#: config/arm/arm.c:3446
#, gcc-internal-format
@@ -28281,7 +27914,7 @@ msgstr "le processeur cible ne supporte pas les extensions de sécurité ARMv8-M
#: config/arm/arm.c:3745
#, gcc-internal-format
msgid "ARMv8-M Security Extensions incompatible with selected FPU"
-msgstr ""
+msgstr "Les extensions de sécurité ARMv8-M sont incompatibles avec le FPU sélectionné"
#: config/arm/arm.c:3756
#, gcc-internal-format
@@ -28390,10 +28023,9 @@ msgid "-fstack-check=specific for Thumb-1"
msgstr "-fstack-check=specific pour Thumb-1"
#: config/arm/arm.c:30750
-#, fuzzy, gcc-internal-format
-#| msgid "invalid fpu for attribute(target(\"%s\"))"
+#, gcc-internal-format
msgid "invalid fpu for target attribute or pragma %qs"
-msgstr "fpu invalide pour attribute(target(\"%s\"))"
+msgstr "fpu invalide pour l'attribut ou le pragma cible %qs"
#. This doesn't really make sense until we support
#. general dynamic selection of the architecture and all
@@ -28404,16 +28036,14 @@ msgid "auto fpu selection not currently permitted here"
msgstr "la sélection automatique du fpu n'est actuellement pas permise ici"
#: config/arm/arm.c:30771
-#, fuzzy, gcc-internal-format
-#| msgid "invalid vector type for attribute %qE"
+#, gcc-internal-format
msgid "invalid architecture for target attribute or pragma %qs"
-msgstr "type de vecteur invalide pour l'attribut %qE"
+msgstr "architecture invalide pour l'attribut ou le pragma cible %qs"
#: config/arm/arm.c:30785
-#, fuzzy, gcc-internal-format
-#| msgid "target attribute or pragma changes SPE ABI"
+#, gcc-internal-format
msgid "unknown target attribute or pragma %qs"
-msgstr "l'attribut cible ou le pragma change l'ABI SPE"
+msgstr "attribut ou pragma cible %qs inconnu"
#: config/arm/freebsd.h:121
#, gcc-internal-format
@@ -28490,10 +28120,9 @@ msgid "-fPIE is not supported"
msgstr "-fPIE n'est pas supporté"
#: config/avr/avr.c:1055 config/avr/avr.c:1060
-#, fuzzy, gcc-internal-format
-#| msgid "function attributes %qs, %qs and %qs are mutually exclusive"
+#, gcc-internal-format
msgid "function attributes %qs and %qs are mutually exclusive"
-msgstr "les attributs de fonction %qs, %qs et %qs sont mutuellement exclusifs"
+msgstr "les attributs de fonction %qs et %qs sont mutuellement exclusifs"
#: config/avr/avr.c:1081
#, gcc-internal-format
@@ -28512,8 +28141,7 @@ msgid "%qs appears to be a misspelled %qs handler, missing %<__vector%> prefix"
msgstr "%qs semble être un gestionnaire avec l'attribut %qs mal orthographié, il manque le préfixe %<__vector%>"
#: config/avr/avr.c:1111
-#, fuzzy, gcc-internal-format
-#| msgid "%qs is a reserved indentifier in AVR-LibC. Consider %<#include <avr/interrupt.h>%> before using the %qs macro"
+#, gcc-internal-format
msgid "%qs is a reserved identifier in AVR-LibC. Consider %<#include <avr/interrupt.h>%> before using the %qs macro"
msgstr "%qs est un identificateur réservé de AVR-LibC. Envisagez %<#include <avr/interrupt.h>%> avant d'utiliser la macro %qs"
@@ -29086,10 +28714,9 @@ msgid "too many size ranges specified in option %qs"
msgstr "trop de plages de tailles spécifiées dans l'option %qs"
#: config/i386/i386.c:3304
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Unknown parameter to option -mtune-ctrl: %s"
+#, gcc-internal-format, gfc-internal-format
msgid "unknown parameter to option -mtune-ctrl: %s"
-msgstr "Paramètre inconnu dans l'option -mtune-ctrl: %s"
+msgstr "paramètre inconnu dans l'option -mtune-ctrl: %s"
#: config/i386/i386.c:3715
#, gcc-internal-format
@@ -29118,10 +28745,9 @@ msgid "address mode %qs not supported in the %s bit mode"
msgstr "le mode d'adresse %qs n'est pas supporté en mode %s bits"
#: config/i386/i386.c:3822
-#, fuzzy, gcc-internal-format
-#| msgid "%<-Wabi=1%> is not supported, using =2"
+#, gcc-internal-format
msgid "-mabi=ms not supported with X32 ABI"
-msgstr "%<-Wabi=1%> n'est pas supporté, on utilise =2"
+msgstr "-mabi=ms pas supporté avec l'ABI X32"
#: config/i386/i386.c:3840 config/i386/i386.c:3849 config/i386/i386.c:3861
#: config/i386/i386.c:3872 config/i386/i386.c:3883
@@ -29342,7 +28968,7 @@ msgstr "-mno-fentry n'est pas compatible avec SEH (gestionnaire d'exceptions str
#: config/i386/i386.c:4696
#, gcc-internal-format
msgid "-mcall-ms2sysv-xlogues isn%'t currently supported with SEH"
-msgstr ""
+msgstr "-mcall-ms2sysv-xlogues n'est actuellement pas supporté avec SEH"
#: config/i386/i386.c:4761 config/powerpcspe/powerpcspe.c:5663
#, gcc-internal-format, gfc-internal-format
@@ -29365,22 +28991,19 @@ msgid "%qs is not a valid base register in -mstack-protector-guard-reg="
msgstr "%qs n'est pas un registre de base valable dans -mstack-protector-guard-reg="
#: config/i386/i386.c:4891
-#, fuzzy, gcc-internal-format
-#| msgid "Pointer Checker requires MPX support on this target. Use -mmpx options to enable MPX."
+#, gcc-internal-format
msgid "%<-fcf-protection=full%> requires CET support on this target. Use -mcet or one of -mibt, -mshstk options to enable CET"
-msgstr "Le contrôleur de pointeurs requiert le support MPX sur cette cible. Utilisez les options -mmpx pour activer MPX."
+msgstr "%<-fcf-protection=full%> requiert le support CET sur cette cible. Utilisez -mcet ou une des options -mibt ou -mshstk pour activer CET"
#: config/i386/i386.c:4897
-#, fuzzy, gcc-internal-format
-#| msgid "Pointer Checker requires MPX support on this target. Use -mmpx options to enable MPX."
+#, gcc-internal-format
msgid "%<-fcf-protection=branch%> requires CET support on this target. Use -mcet or one of -mibt, -mshstk options to enable CET"
-msgstr "Le contrôleur de pointeurs requiert le support MPX sur cette cible. Utilisez les options -mmpx pour activer MPX."
+msgstr "%<-fcf-protection=branch%> requiert le support CET sur cette cible. Utilisez -mcet ou une des options -mibt ou -mshstk pour activer CET"
#: config/i386/i386.c:4903
-#, fuzzy, gcc-internal-format
-#| msgid "Pointer Checker requires MPX support on this target. Use -mmpx options to enable MPX."
+#, gcc-internal-format
msgid "%<-fcf-protection=return%> requires CET support on this target. Use -mcet or one of -mibt, -mshstk options to enable CET"
-msgstr "Le contrôleur de pointeurs requiert le support MPX sur cette cible. Utilisez les options -mmpx pour activer MPX."
+msgstr "%<-fcf-protection=return%> requiert le support CET sur cette cible. Utilisez -mcet ou une des options -mibt ou -mshstk pour activer CET"
#: config/i386/i386.c:5478 config/i386/i386.c:5525 config/s390/s390.c:15588
#: config/s390/s390.c:15638 config/s390/s390.c:15655
@@ -29394,10 +29017,9 @@ msgid "option(\"%s\") was already specified"
msgstr "option(\"%s\") a déjà été spécifié"
#: config/i386/i386.c:5788
-#, fuzzy, gcc-internal-format
-#| msgid "stdcall and cdecl attributes are not compatible"
+#, gcc-internal-format
msgid "interrupt and naked attributes are not compatible"
-msgstr "les attributs stdcall et cdecl sont incompatibles"
+msgstr "les attributs d'interruption et nus sont incompatibles"
#: config/i386/i386.c:5803
#, gcc-internal-format
@@ -29405,16 +29027,14 @@ msgid "Only DWARF debug format is supported for interrupt service routine."
msgstr "Seul le format de débogage DWARF est supporté pour les routines de service d'interruptions."
#: config/i386/i386.c:5852
-#, fuzzy, gcc-internal-format
-#| msgid "-msdata=%s and -mcall-%s are incompatible"
+#, gcc-internal-format
msgid "%<-mindirect-branch=%s%> and %<-mcmodel=large%> are not compatible"
-msgstr "-msdata=%s et -mcall-%s sont incompatibles"
+msgstr "%<-mindirect-branch=%s%> et %<-mcmodel=large%> sont incompatibles"
#: config/i386/i386.c:5890
-#, fuzzy, gcc-internal-format
-#| msgid "-msdata=%s and -mcall-%s are incompatible"
+#, gcc-internal-format
msgid "%<-mfunction-return=%s%> and %<-mcmodel=large%> are not compatible"
-msgstr "-msdata=%s et -mcall-%s sont incompatibles"
+msgstr "%<-mfunction-return=%s%> et %<-mcmodel=large%> sont incompatibles"
# Le dernier %s est le texte non traduit « exception » ou « interrupt ».
#: config/i386/i386.c:5988
@@ -29593,10 +29213,9 @@ msgid "The ABI for passing parameters with %d-byte alignment has changed in GCC
msgstr "L'ABI pour passer des paramètres avec un alignement de %d octets a changé dans GCC 4.6"
#: config/i386/i386.c:11494
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "-march=%s is not compatible with the selected ABI"
+#, gcc-internal-format, gfc-internal-format
msgid "-mcall-ms2sysv-xlogues is not compatible with %s"
-msgstr "assert : %s est compatible avec l'ABI sélectionné"
+msgstr "-mcall-ms2sysv-xlogues est incompatible avec %s"
#: config/i386/i386.c:13424
#, gcc-internal-format
@@ -29626,10 +29245,9 @@ msgid "-fsplit-stack does not support 3 register parameters"
msgstr "-fsplit-stack ne supporte pas trois paramètres registres"
#: config/i386/i386.c:17762
-#, fuzzy, gcc-internal-format
-#| msgid "unsupported size for integer register"
+#, gcc-internal-format
msgid "'V' modifier on non-integer register"
-msgstr "taille non supportée pour un registre entier"
+msgstr "modificateur « V » sur un registre non entier"
#: config/i386/i386.c:17773 config/i386/i386.c:17787
#, gcc-internal-format
@@ -29659,7 +29277,7 @@ msgstr "une routine de service d'interruption ne peut pas être appelée directe
#: config/i386/i386.c:29761
#, gcc-internal-format
msgid "empty class %qT parameter passing ABI changes in -fabi-version=12 (GCC 8)"
-msgstr ""
+msgstr "l'ABI de passage de paramètres pour la classe vide %qT change avec -fabi-version=12 (GCC 8)"
#: config/i386/i386.c:32138
#, gcc-internal-format
@@ -29855,10 +29473,9 @@ msgid "%qE attribute requires a string constant argument"
msgstr "l'attribut %qE requiert un argument de type constante chaîne de caractères"
#: config/i386/i386.c:41176 config/i386/i386.c:41198
-#, fuzzy, gcc-internal-format
-#| msgid "argument of %qE attribute is not \"ilink\""
+#, gcc-internal-format
msgid "argument to %qE attribute is not (keep|thunk|thunk-inline|thunk-extern)"
-msgstr "l'argument de l'attribut %qE n'est pas « ilink »"
+msgstr "l'argument de l'attribut %qE n'est pas (keep|thunk|thunk-inline|thunk-extern)"
#: config/i386/i386.c:41230
#, gcc-internal-format
@@ -29896,10 +29513,9 @@ msgid "invalid type for asm flag output"
msgstr "type invalide pour la sortie du fanion asm"
#: config/i386/i386.c:50169
-#, fuzzy, gcc-internal-format
-#| msgid "Unknown architecture specific memory model"
+#, gcc-internal-format
msgid "unknown architecture specific memory model"
-msgstr "Modèle mémoire spécifique à l'architecture inconnu"
+msgstr "modèle mémoire spécifique à l'architecture inconnu"
#: config/i386/i386.c:50176
#, gcc-internal-format
@@ -29917,16 +29533,14 @@ msgid "unsupported simdlen %d"
msgstr "simdlen %d non supportée"
#: config/i386/i386.c:50225
-#, fuzzy, gcc-internal-format
-#| msgid "unsupported return type %qT for simd\n"
+#, gcc-internal-format
msgid "unsupported return type %qT for simd"
-msgstr "type de retour %qT non supporté pour simd\n"
+msgstr "type de retour %qT non supporté pour simd"
#: config/i386/i386.c:50247
-#, fuzzy, gcc-internal-format
-#| msgid "unsupported argument type %qT for simd\n"
+#, gcc-internal-format
msgid "unsupported argument type %qT for simd"
-msgstr "type d'argument %qT non supporté pour simd\n"
+msgstr "type d'argument %qT non supporté pour simd"
#: config/i386/i386.c:50568
#, gcc-internal-format
@@ -30632,16 +30246,14 @@ msgid "argument of %qE attribute is not a string constant or number"
msgstr "l'argument de l'attribut %qE n'est pas une constante de type chaîne de caractères ou un nombre"
#: config/msp430/msp430.c:2019
-#, fuzzy, gcc-internal-format
-#| msgid "`%s' attribute can only be applied to Java class definitions"
+#, gcc-internal-format
msgid "%qE attribute cannot be applied to variables with specific sections"
-msgstr "attribut « %s » peut seulement être appliqué aux définitions de classes Java"
+msgstr "l'attribut %qE ne peut pas être appliqué aux variables avec des sections spécifiques"
#: config/msp430/msp430.c:2023
-#, fuzzy, gcc-internal-format
-#| msgid "%qE attribute has no effect on functions with static linkage"
+#, gcc-internal-format
msgid "%qE attribute has no effect on automatic variables"
-msgstr "l'attribut %qE n'a pas d'effet sur les fonctions statiques"
+msgstr "l'attribut %qE n'a pas d'effet sur les variables automatiques"
#: config/msp430/msp430.c:2170
#, gcc-internal-format
@@ -30781,34 +30393,29 @@ msgid "PIC support for -fstack-limit-symbol"
msgstr "support PIC pour -fstack-limit-symbol"
#: config/nios2/nios2.c:1387
-#, fuzzy, gcc-internal-format
-#| msgid "profiling not supported with -mg"
+#, gcc-internal-format
msgid "-mgpopt not supported with PIC."
-msgstr "le profilage n'est pas supporté avec -mg"
+msgstr "-mgpopt pas supporté avec PIC."
#: config/nios2/nios2.c:1389
-#, fuzzy, gcc-internal-format
-#| msgid "profiling not supported with -mg"
+#, gcc-internal-format
msgid "-mgprel-sec= not supported with PIC."
-msgstr "le profilage n'est pas supporté avec -mg"
+msgstr "-mgprel-sec= pas supporté avec PIC."
#: config/nios2/nios2.c:1391
-#, fuzzy, gcc-internal-format
-#| msgid "profiling not supported with -mg"
+#, gcc-internal-format
msgid "-mr0rel-sec= not supported with PIC."
-msgstr "le profilage n'est pas supporté avec -mg"
+msgstr "-mr0rel-sec= pas supporté avec PIC."
#: config/nios2/nios2.c:1399
-#, fuzzy, gcc-internal-format
-#| msgid "ordered argument needs positive constant integer expression"
+#, gcc-internal-format
msgid "-mgprel-sec= argument is not a valid regular expression."
-msgstr "les arguments ordonnés ont besoin d'une expression entière constante positive"
+msgstr "l'argument de -mgprel-sec= n'est pas une expression rationnelle valide."
#: config/nios2/nios2.c:1405
-#, fuzzy, gcc-internal-format
-#| msgid "ordered argument needs positive constant integer expression"
+#, gcc-internal-format
msgid "-mr0rel-sec= argument is not a valid regular expression."
-msgstr "les arguments ordonnés ont besoin d'une expression entière constante positive"
+msgstr "l'argument de -mr0rel-sec= n'est pas une expression rationnelle valable."
#: config/nios2/nios2.c:1416
#, gcc-internal-format
@@ -30936,10 +30543,9 @@ msgid "option %s is not supported together with -fopenacc"
msgstr "l'option %s n'est pas supportée avec -fopenacc"
#: config/nvptx/nvptx.c:191
-#, fuzzy, gcc-internal-format
-#| msgid "writing to address space %qs not supported"
+#, gcc-internal-format
msgid "not generating patch area, nops not supported"
-msgstr "l'écriture dans l'espace d'adresses %qs n'est pas supportée"
+msgstr "pas de génération de zone de correctif, nops pas supporté"
#: config/nvptx/nvptx.c:278
#, gcc-internal-format
@@ -31131,10 +30737,9 @@ msgid "passing arg %d of %qE discards qualifiers from pointer target type"
msgstr "le passage de l'argument %d de %qE abandonne les qualificatifs du type cible du pointeur"
#: config/powerpcspe/powerpcspe-c.c:6515
-#, fuzzy, gcc-internal-format
-#| msgid "vec_cmpne only accepts 2 arguments"
+#, gcc-internal-format
msgid "__builtin_cmpb only accepts 2 arguments"
-msgstr "vec_cmpne accepte uniquement 2 arguments"
+msgstr "__builtin_cmpb accepte uniquement 2 arguments"
#: config/powerpcspe/powerpcspe-c.c:6573
#, gcc-internal-format, gfc-internal-format
@@ -32208,10 +31813,9 @@ msgid "ABI requires -march=rv%d"
msgstr "l'ABI requiert -march=rv%d"
#: config/riscv/riscv.c:4126
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "-mpreferred-stack-boundary=%d is not between %d and %d"
+#, gcc-internal-format, gfc-internal-format
msgid "-mpreferred-stack-boundary=%d must be between %d and %d"
-msgstr "-mpreferred-stack-boundary=%d n'est pas entre %d et %d"
+msgstr "-mpreferred-stack-boundary=%d doit être entre %d et %d"
#. Address spaces are currently only supported by C.
#: config/rl78/rl78.c:374
@@ -32267,81 +31871,69 @@ msgstr "conversion du pointeur lointain en pointeur proche"
#: config/rs6000/rs6000-c.c:6118 config/rs6000/rs6000-c.c:6169
#: config/rs6000/rs6000-c.c:6439 config/rs6000/rs6000-c.c:6505
#: config/rs6000/rs6000-c.c:6856 config/rs6000/rs6000-c.c:6897
-#, fuzzy, gcc-internal-format
-#| msgid "builtin %s only accepts a string argument"
+#, gcc-internal-format
msgid "builtin %qs only accepts 2 arguments"
-msgstr "la fonction interne %s n'accepte qu'une chaîne comme argument"
+msgstr "la fonction interne %qs n'accepte que 2 arguments"
#: config/rs6000/rs6000-c.c:6242 config/rs6000/rs6000-c.c:6325
#: config/rs6000/rs6000-c.c:6677
-#, fuzzy, gcc-internal-format
-#| msgid "builtin %s only accepts a string argument"
+#, gcc-internal-format
msgid "builtin %qs only accepts 3 arguments"
-msgstr "la fonction interne %s n'accepte qu'une chaîne comme argument"
+msgstr "la fonction interne %qs n'accepte que 3 arguments"
#: config/rs6000/rs6000-c.c:6434
-#, fuzzy, gcc-internal-format
-#| msgid "builtin %s only accepts a string argument"
+#, gcc-internal-format
msgid "builtin %qs only accepts 1 argument"
-msgstr "la fonction interne %s n'accepte qu'une chaîne comme argument"
+msgstr "la fonction interne %qs n'accepte qu'un argument"
#: config/rs6000/rs6000-c.c:6961
-#, fuzzy, gcc-internal-format
-#| msgid "Builtin function %s not supported in this compiler configuration"
+#, gcc-internal-format
msgid "builtin function %qs not supported in this compiler configuration"
-msgstr "La fonction interne %s n'est pas supportée dans cette configuration du compilateur"
+msgstr "la fonction interne %qs n'est pas supportée dans cette configuration du compilateur"
#: config/rs6000/rs6000-c.c:6969
-#, fuzzy, gcc-internal-format
-#| msgid "invalid parameter combination for AltiVec intrinsic %s"
+#, gcc-internal-format
msgid "invalid parameter combination for AltiVec intrinsic %qs"
-msgstr "combinaison invalide de paramètres pour l'intrinsèque Altivec %s"
+msgstr "combinaison invalide de paramètres pour l'intrinsèque Altivec %qs"
# le premier %qs est un mot non traduit tel que « private », « shared » ou « threadprivate ».
#: config/rs6000/rs6000.c:3743 config/rs6000/rs6000.c:3746
#: config/rs6000/rs6000.c:3749
-#, fuzzy, gcc-internal-format
-#| msgid "%qE is predetermined %qs for %qs"
+#, gcc-internal-format
msgid "%qs requires %qs or %qs"
-msgstr "%qE est prédéterminé %qs pour %qs"
+msgstr "%qs requiert %qs ou %qs"
#: config/rs6000/rs6000.c:3850
-#, fuzzy, gcc-internal-format
-#| msgid "-m64 requires PowerPC64 architecture, enabling"
+#, gcc-internal-format
msgid "%qs requires PowerPC64 architecture, enabling"
-msgstr "-m64 requiert une architecture PowerPC64, elle est maintenant activée"
+msgstr "%qs requiert une architecture PowerPC64, elle est maintenant activée"
#: config/rs6000/rs6000.c:4029
-#, fuzzy, gcc-internal-format
-#| msgid "-malign-power is not supported for 64-bit Darwin; it is incompatible with the installed C and C++ libraries"
+#, gcc-internal-format
msgid "%qs is not supported for 64-bit Darwin; it is incompatible with the installed C and C++ libraries"
-msgstr "-malign-power n'est pas supporté sur Darwin 64 bits; il est incompatible avec les bibliothèques C et C++ installées"
+msgstr "%qs n'est pas supporté sur Darwin 64 bits; il est incompatible avec les bibliothèques C et C++ installées"
#: config/rs6000/rs6000.c:4128
-#, fuzzy, gcc-internal-format
-#| msgid "will not generate power9 instructions because assembler lacks power9 support"
+#, gcc-internal-format
msgid "will not generate %qs instructions because assembler lacks %qs support"
-msgstr "ne générera pas d'instructions power9 car l'assembleur ne supporte pas power9"
+msgstr "ne générera pas d'instructions %s car l'assembleur ne supporte pas %s"
#: config/rs6000/rs6000.c:4221
-#, fuzzy, gcc-internal-format
-#| msgid "-mstring is not supported on little endian systems"
+#, gcc-internal-format
msgid "%qs is not supported on little endian systems"
-msgstr "-mstring n'est pas supporté sur des systèmes petits boutistes"
+msgstr "%qs n'est pas supporté sur des systèmes petits boutistes"
#: config/rs6000/rs6000.c:4314
-#, fuzzy, gcc-internal-format
-#| msgid "Power9 target option is incompatible with -mcpu=<xxx> for <xxx> less than power9"
+#, gcc-internal-format
msgid "power9 target option is incompatible with %<%s=<xxx>%> for <xxx> less than power9"
-msgstr "L'option de la cible power9 est incompatible avec -mcpu=<xxx> pour <xxx> inférieur à power9"
+msgstr "l'option de la cible power9 est incompatible avec %<%s=<xxx>%> pour <xxx> inférieur à power9"
#. Enforce that none of the ISA_3_0_MASKS_SERVER flags
#. were explicitly cleared.
#: config/rs6000/rs6000.c:4322
-#, fuzzy, gcc-internal-format
-#| msgid "-mpower9-minmax incompatible with explicitly disabled options"
+#, gcc-internal-format
msgid "%qs incompatible with explicitly disabled options"
-msgstr "-mpower9-minmax est incompatible avec les options explicitement désactivées"
+msgstr "%qs est incompatible avec les options explicitement désactivées"
#. We prefer to not mention undocumented options in
#. error messages. However, if users have managed to select
@@ -32354,324 +31946,273 @@ msgstr "-mpower9-minmax est incompatible avec les options explicitement désacti
#: config/rs6000/rs6000.c:4519 config/rs6000/rs6000.c:4546
#: config/rs6000/rs6000.c:4561 config/rs6000/rs6000.c:4569
#: config/rs6000/rs6000.c:4665
-#, fuzzy, gcc-internal-format
-#| msgid "%qF requires -mvx"
+#, gcc-internal-format
msgid "%qs requires %qs"
-msgstr "%qF requiert -mvx"
+msgstr "%qs requiert %qs"
#: config/rs6000/rs6000.c:4606
-#, fuzzy, gcc-internal-format
-#| msgid "using IEEE extended precision long double"
+#, gcc-internal-format
msgid "Using IEEE extended precision long double"
-msgstr "utilisation du long double en précision étendue de IEEE"
+msgstr "Utilisation du long double en précision étendue de IEEE"
#: config/rs6000/rs6000.c:4608
-#, fuzzy, gcc-internal-format
-#| msgid "using IBM extended precision long double"
+#, gcc-internal-format
msgid "Using IBM extended precision long double"
-msgstr "utilisation du long double en précision étendue de IBM"
+msgstr "Utilisation du long double en précision étendue de IBM"
#: config/rs6000/rs6000.c:4625
-#, fuzzy, gcc-internal-format
-#| msgid "-mfloat128 requires VSX support"
+#, gcc-internal-format
msgid "%qs requires VSX support"
-msgstr "-mfloat128 requiert le support VSX"
+msgstr "%qs requiert le support VSX"
#: config/rs6000/rs6000.c:4634
#, gcc-internal-format
msgid "The -mfloat128 option may not be fully supported"
-msgstr ""
+msgstr "L'option -mfloat128 peut ne pas être totalement supportée"
#: config/rs6000/rs6000.c:4657
-#, fuzzy, gcc-internal-format
-#| msgid "-mfloat128-hardware requires full ISA 3.0 support"
+#, gcc-internal-format
msgid "%qs requires full ISA 3.0 support"
-msgstr "-mfloat128-hardware requiert le support ISA 3.0 complet"
+msgstr "%qs requiert le support ISA 3.0 complet"
#: config/rs6000/rs6000.c:4724
-#, fuzzy, gcc-internal-format
-#| msgid "unknown vectorization library ABI type (%s) for -mveclibabi= switch"
+#, gcc-internal-format
msgid "unknown vectorization library ABI type (%qs) for %qs switch"
-msgstr "type d'ABI de la bibliothèque de vectorisation (%s) inconnu pour l'option -mveclibabi="
+msgstr "type d'ABI de la bibliothèque de vectorisation (%qs) inconnu pour l'option %qs"
#: config/rs6000/rs6000.c:4930
-#, fuzzy, gcc-internal-format
-#| msgid "%qs is not valid for %qs"
+#, gcc-internal-format
msgid "%qs is not a valid number in %qs"
-msgstr "%qs n'est pas valide pour %qs"
+msgstr "%qs n'est pas un nombre valide dans %qs"
#: config/rs6000/rs6000.c:4935
-#, fuzzy, gcc-internal-format
-#| msgid "%qs is not valid for %qs"
+#, gcc-internal-format
msgid "%qs is not a valid offset in %qs"
-msgstr "%qs n'est pas valide pour %qs"
+msgstr "%qs n'est pas un décalage valide dans %qs"
#: config/rs6000/rs6000.c:4947
-#, fuzzy, gcc-internal-format
-#| msgid "%qs is not a valid base register in -mstack-protector-guard-reg="
+#, gcc-internal-format
msgid "%qs is not a valid base register in %qs"
-msgstr "%qs n'est pas un registre de base valable dans -mstack-protector-guard-reg="
+msgstr "%qs n'est pas un registre de base valable dans %qs"
#: config/rs6000/rs6000.c:4955
-#, fuzzy, gcc-internal-format
-#| msgid "-mstack-protector-guard=tls needs a valid base register"
+#, gcc-internal-format
msgid "%qs needs a valid base register"
-msgstr "-mstack-protector-guard=tls a besoin d'un registre de base valable"
+msgstr "%qs a besoin d'un registre de base valable"
#: config/rs6000/rs6000.c:5253
-#, fuzzy, gcc-internal-format
-#| msgid "unknown option for -mrecip=%s"
+#, gcc-internal-format
msgid "unknown option for %<%s=%s%>"
-msgstr "option inconnue pour -mrecip=%s"
+msgstr "option inconnue pour %<%s=%s%>"
#: config/rs6000/rs6000.c:11385
-#, fuzzy, gcc-internal-format
-#| msgid "cannot return value in vector register because altivec instructions are disabled, use -maltivec to enable them"
+#, gcc-internal-format
msgid "cannot return value in vector register because altivec instructions are disabled, use %qs to enable them"
-msgstr "la valeur ne peut être retournée dans le registre vectoriel parce que les instructions altivec sont désactivées, utilisez -maltivec pour les autoriser"
+msgstr "la valeur ne peut être retournée dans le registre vectoriel parce que les instructions altivec sont désactivées, utilisez %qs pour les autoriser"
#: config/rs6000/rs6000.c:11846
-#, fuzzy, gcc-internal-format
-#| msgid "cannot pass argument in vector register because altivec instructions are disabled, use -maltivec to enable them"
+#, gcc-internal-format
msgid "cannot pass argument in vector register because altivec instructions are disabled, use %qs to enable them"
-msgstr "l'argument ne peut pas être passé dans le registre vectoriel parce que les instructions altivec sont désactivées, utilisez -maltivec pour les autoriser"
+msgstr "l'argument ne peut pas être passé dans le registre vectoriel parce que les instructions altivec sont désactivées, utilisez %qs pour les autoriser"
#: config/rs6000/rs6000.c:13555
-#, fuzzy, gcc-internal-format
-#| msgid "internal error: builtin function %s already processed"
+#, gcc-internal-format
msgid "internal error: builtin function %qs already processed"
-msgstr "erreur interne: fonction interne %s déjà traitée"
+msgstr "erreur interne: fonction interne %qs déjà traitée"
#: config/rs6000/rs6000.c:14133
-#, fuzzy, gcc-internal-format
-#| msgid "argument 2 must be a 5-bit unsigned literal"
+#, gcc-internal-format
msgid "argument 2 must be a 1-bit unsigned literal"
-msgstr "l'argument 2 doit être un littéral non signé de 5 bits"
+msgstr "l'argument 2 doit être un littéral non signé de 1 bit"
#: config/rs6000/rs6000.c:14172
-#, fuzzy, gcc-internal-format
-#| msgid "argument %d of %qE must be a pointer type"
+#, gcc-internal-format
msgid "argument 1 of %qs must be a constant"
-msgstr "l'argument %d de %qE doit être un type pointeur"
+msgstr "l'argument 1 de %qs doit être une constante"
#: config/rs6000/rs6000.c:14230 config/rs6000/rs6000.c:16008
-#, fuzzy, gcc-internal-format
-#| msgid "argument 1 of __builtin_spe_predicate is out of range"
+#, gcc-internal-format
msgid "argument 1 of %qs is out of range"
-msgstr "l'argument 1 de « __builtin_spe_predicate » est hors limite"
+msgstr "l'argument 1 de %qs est hors limite"
#: config/rs6000/rs6000.c:14724
-#, fuzzy, gcc-internal-format
-#| msgid "builtin %s is only valid in 64-bit mode"
+#, gcc-internal-format
msgid "builtin %qs is only valid in 64-bit mode"
-msgstr "la fonction interne %s est uniquement valable en mode 64 bits"
+msgstr "la fonction interne %qs est uniquement valable en mode 64 bits"
#: config/rs6000/rs6000.c:14921
-#, fuzzy, gcc-internal-format
-#| msgid "builtin %s only accepts a string argument"
+#, gcc-internal-format
msgid "builtin %qs only accepts a string argument"
-msgstr "la fonction interne %s n'accepte qu'une chaîne comme argument"
+msgstr "la fonction interne %qs n'accepte qu'une chaîne comme argument"
#. Invalid CPU argument.
#: config/rs6000/rs6000.c:14940
-#, fuzzy, gcc-internal-format
-#| msgid "cpu %s is an invalid argument to builtin %s"
+#, gcc-internal-format
msgid "cpu %qs is an invalid argument to builtin %qs"
-msgstr "le processeur %s est un argument invalide pour la fonction interne %s"
+msgstr "le processeur %qs est un argument invalide pour la fonction interne %qs"
#. Invalid HWCAP argument.
#: config/rs6000/rs6000.c:14968
-#, fuzzy, gcc-internal-format
-#| msgid "cpu %s is an invalid argument to builtin %s"
+#, gcc-internal-format
msgid "%s %qs is an invalid argument to builtin %qs"
-msgstr "le processeur %s est un argument invalide pour la fonction interne %s"
+msgstr "%s %qs est un argument invalide pour la fonction interne %qs"
#: config/rs6000/rs6000.c:14994
-#, fuzzy, gcc-internal-format
-#| msgid "%s needs GLIBC (2.23 and newer) that exports hardware capability bits"
+#, gcc-internal-format
msgid "builtin %qs needs GLIBC (2.23 and newer) that exports hardware capability bits"
-msgstr "%s requiert GLIBC (2.23 ou plus récent) qui exporte des bits de capacité matérielle"
+msgstr "la fonction interne %qs requiert GLIBC (2.23 ou plus récent) qui exporte des bits de capacité matérielle"
#: config/rs6000/rs6000.c:15727
-#, fuzzy, gcc-internal-format
-#| msgid "second argument to vec_vextract4b must be 0..12"
+#, gcc-internal-format
msgid "second argument to %qs must be 0..12"
-msgstr "le deuxième argument de vec_vextract4b doit être 0..12"
+msgstr "le deuxième argument de %qs doit être 0..12"
#: config/rs6000/rs6000.c:15744
-#, fuzzy, gcc-internal-format
-#| msgid "third argument to vec_vinsert4b must be 0..12"
+#, gcc-internal-format
msgid "third argument to %qs must be 0..12"
-msgstr "le troisième argument de « vec_vinsert4b » doit être 0..12"
+msgstr "le troisième argument de %qs doit être 0..12"
#: config/rs6000/rs6000.c:15960
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "argument %d of %qE must be a pointer type"
+#, gcc-internal-format, gfc-internal-format
msgid "argument 1 of %s must be a constant"
-msgstr "l'argument %d de %qE doit être un type pointeur"
+msgstr "l'argument 1 de %s doit être une constante"
#: config/rs6000/rs6000.c:16030
-#, fuzzy, gcc-internal-format
-#| msgid "Builtin function %s is only valid for the cell processor"
+#, gcc-internal-format
msgid "builtin function %qs is only valid for the cell processor"
-msgstr "La fonction interne %s est uniquement valable pour le processeur cell"
+msgstr "la fonction interne %qs est uniquement valable pour le processeur cell"
#: config/rs6000/rs6000.c:16032 config/rs6000/rs6000.c:16034
#: config/rs6000/rs6000.c:16036 config/rs6000/rs6000.c:16038
#: config/rs6000/rs6000.c:16044 config/rs6000/rs6000.c:16046
#: config/rs6000/rs6000.c:16053 config/rs6000/rs6000.c:16060
#: config/rs6000/rs6000.c:16067 config/rs6000/rs6000.c:16073
-#, fuzzy, gcc-internal-format
-#| msgid "Builtin function %s requires the -mvsx option"
+#, gcc-internal-format
msgid "builtin function %qs requires the %qs option"
-msgstr "La fonction interne %s requiert l'option -mvsx"
+msgstr "la fonction interne %qs requiert l'option %qs"
#: config/rs6000/rs6000.c:16041 config/rs6000/rs6000.c:16050
#: config/rs6000/rs6000.c:16057 config/rs6000/rs6000.c:16064
-#, fuzzy, gcc-internal-format
-#| msgid "Builtin function %s requires the -mvsx option"
+#, gcc-internal-format
msgid "builtin function %qs requires the %qs and %qs options"
-msgstr "La fonction interne %s requiert l'option -mvsx"
+msgstr "la fonction interne %qs requiert les options %qs et %qs"
#: config/rs6000/rs6000.c:16070
-#, fuzzy, gcc-internal-format
-#| msgid "Builtin function %s requires the -mfloat128 option"
+#, gcc-internal-format
msgid "builtin function %qs requires ISA 3.0 IEEE 128-bit floating point"
-msgstr "La fonction interne %s requiert l'option -mfloat128"
+msgstr "la fonction interne %qs requiert l'ISA 3.0 en virgule flottante IEEE 128 bits"
#: config/rs6000/rs6000.c:16075
-#, fuzzy, gcc-internal-format
-#| msgid "Builtin function %s is not supported with the current options"
+#, gcc-internal-format
msgid "builtin function %qs is not supported with the current options"
-msgstr "La fonction interne %s n'est pas supportée avec les options actuelles"
+msgstr "la fonction interne %qs n'est pas supportée avec les options actuelles"
#: config/rs6000/rs6000.c:18293
-#, fuzzy, gcc-internal-format
-#| msgid "internal error: builtin function %s had an unexpected return type %s"
+#, gcc-internal-format
msgid "internal error: builtin function %qs had an unexpected return type %qs"
-msgstr "erreur interne: la fonction interne %s a un type de retour %s inattendu"
+msgstr "erreur interne: la fonction interne %qs a un type de retour %qs inattendu"
#: config/rs6000/rs6000.c:18310
-#, fuzzy, gcc-internal-format
-#| msgid "internal error: builtin function %s, argument %d had unexpected argument type %s"
+#, gcc-internal-format
msgid "internal error: builtin function %qs, argument %d had unexpected argument type %qs"
-msgstr "erreur interne: pour la fonction interne %s, l'argument %d a le type %s inattendu"
+msgstr "erreur interne: pour la fonction interne %qs, l'argument %d a le type %qs inattendu"
#: config/rs6000/rs6000.c:29484
-#, fuzzy, gcc-internal-format
-#| msgid "-fsplit-stack uses register r29"
+#, gcc-internal-format
msgid "%qs uses register r29"
-msgstr "-fsplit-stack utilise le registre r29"
+msgstr "%qs utilise le registre r29"
#: config/rs6000/rs6000.c:32780
-#, fuzzy, gcc-internal-format
-#| msgid "You cannot take the address of a nested function if you use the -mno-pointers-to-nested-functions option."
+#, gcc-internal-format
msgid "you cannot take the address of a nested function if you use the %qs option"
-msgstr "Vous ne pouvez pas prendre l'adresse d'une fonction imbriquée si vous utilisez l'option -mno-pointers-to-nested-functions."
+msgstr "Vous ne pouvez pas prendre l'adresse d'une fonction imbriquée si vous utilisez l'option %qs"
#: config/rs6000/rs6000.c:32874
-#, fuzzy, gcc-internal-format
-#| msgid "use of %<long%> in AltiVec types is invalid for 64-bit code without -mvsx"
+#, gcc-internal-format
msgid "use of %<long%> in AltiVec types is invalid for 64-bit code without %qs"
-msgstr "l'utilisation de %<long%> dans les types AltiVec est invalide pour du code 64 bits sans -mvsx"
+msgstr "l'utilisation de %<long%> dans les types AltiVec est invalide pour du code 64 bits sans %qs"
#: config/rs6000/rs6000.c:32882
-#, fuzzy, gcc-internal-format
-#| msgid "use of %<long long%> in AltiVec types is invalid without -mvsx"
+#, gcc-internal-format
msgid "use of %<long long%> in AltiVec types is invalid without %qs"
-msgstr "l'utilisation de %<long long%> dans les types AltiVec est invalide sans -mvsx"
+msgstr "l'utilisation de %<long long%> dans les types AltiVec est invalide sans %qs"
#: config/rs6000/rs6000.c:32885
-#, fuzzy, gcc-internal-format
-#| msgid "use of %<double%> in AltiVec types is invalid without -mvsx"
+#, gcc-internal-format
msgid "use of %<double%> in AltiVec types is invalid without %qs"
-msgstr "l'utilisation de %<double%> dans les types AltiVec est invalide sans -mvsx"
+msgstr "l'utilisation de %<double%> dans les types AltiVec est invalide sans %qs"
#: config/rs6000/rs6000.c:36902
-#, fuzzy, gcc-internal-format
-#| msgid "invalid cpu \"%s\" for %s\"%s\"%s"
+#, gcc-internal-format
msgid "invalid cpu %qs for %s%qs%s"
-msgstr "processeur « %s » invalide pour %s\"%s\"%s"
+msgstr "processeur %qs invalide pour %s\"%s\"%s"
#: config/rs6000/rs6000.c:36905
-#, fuzzy, gcc-internal-format
-#| msgid "%s\"%s\"%s is not allowed"
+#, gcc-internal-format
msgid "%s%qs%s is not allowed"
msgstr "%s\"%s\"%s n'est pas permis"
#: config/rs6000/rs6000.c:36907
-#, fuzzy, gcc-internal-format
-#| msgid "%s\"%s\"%s is invalid"
+#, gcc-internal-format
msgid "%s%qs%s is invalid"
msgstr "%s\"%s\"%s est invalide"
#: config/rs6000/rs6000.c:37442
-#, fuzzy, gcc-internal-format
-#| msgid "-mno-%s turns off -m%s"
+#, gcc-internal-format
msgid "%<-mno-%s%> turns off %<-m%s%>"
-msgstr "-mno-%s désactive -m%s"
+msgstr "%<-mno-%s%> désactive %<-m%s%>"
#: config/rs6000/rs6000.c:37601
-#, fuzzy, gcc-internal-format
-#| msgid "%s needs GLIBC (2.23 and newer) that exports hardware capability bits"
+#, gcc-internal-format
msgid "target_clones attribute needs GLIBC (2.23 and newer) that exports hardware capability bits"
-msgstr "%s requiert GLIBC (2.23 ou plus récent) qui exporte des bits de capacité matérielle"
+msgstr "l'attribut target_clones requiert GLIBC (2.23 ou plus récent) qui exporte des bits de capacité matérielle"
#. The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to
#. get control in TARGET_OPTION_OVERRIDE.
#: config/rs6000/sysv4.h:111
-#, fuzzy, gcc-internal-format
-#| msgid "bad value for -mcall-%s"
+#, gcc-internal-format
msgid "bad value for %<%s-%s%>"
-msgstr "valeur erronée pour -mcall-%s"
+msgstr "valeur erronée pour %<%s-%s%>"
#: config/rs6000/sysv4.h:127
-#, fuzzy, gcc-internal-format
-#| msgid "bad value for -msdata=%s"
+#, gcc-internal-format
msgid "bad value for %<%s=%s%>"
-msgstr "valeur erronée pour -msdata=%s"
+msgstr "valeur erronée pour %<%s=%s%>"
#: config/rs6000/sysv4.h:144
-#, fuzzy, gcc-internal-format
-#| msgid "-f%s and -msdata=%s are incompatible"
+#, gcc-internal-format
msgid "%qs and %<%s=%s%> are incompatible"
-msgstr "-f%s et -msdata=%s sont incompatibles"
+msgstr "%qs et %<%s=%s%> sont incompatibles"
#: config/rs6000/sysv4.h:153
-#, fuzzy, gcc-internal-format
-#| msgid "-f%s and -msdata=%s are incompatible"
+#, gcc-internal-format
msgid "%<-f%s%> and %<%s=%s%> are incompatible"
-msgstr "-f%s et -msdata=%s sont incompatibles"
+msgstr "%<-f%s%> et %<%s=%s%> sont incompatibles"
#: config/rs6000/sysv4.h:162
-#, fuzzy, gcc-internal-format
-#| msgid "-msdata=%s and -mcall-%s are incompatible"
+#, gcc-internal-format
msgid "%<%s=%s%> and %<%s-%s%> are incompatible"
-msgstr "-msdata=%s et -mcall-%s sont incompatibles"
+msgstr "%<%s=%s%> et %<%s-%s%> sont incompatibles"
#: config/rs6000/sysv4.h:171
-#, fuzzy, gcc-internal-format
-#| msgid "-f%s and -msdata=%s are incompatible"
+#, gcc-internal-format
msgid "%qs and %qs are incompatible"
-msgstr "-f%s et -msdata=%s sont incompatibles"
+msgstr "%qs et %qs sont incompatibles"
#: config/rs6000/sysv4.h:178 config/rs6000/sysv4.h:185
-#, fuzzy, gcc-internal-format
-#| msgid "-f%s and -msdata=%s are incompatible"
+#, gcc-internal-format
msgid "%qs and %<%s-%s%> are incompatible"
-msgstr "-f%s et -msdata=%s sont incompatibles"
+msgstr "%qs et %<%s-%s%> sont incompatibles"
#: config/rs6000/sysv4.h:191
-#, fuzzy, gcc-internal-format
-#| msgid "-msecure-plt not supported by your assembler"
+#, gcc-internal-format
msgid "%qs not supported by your assembler"
-msgstr "-msecure-plt n'est pas supporté par votre assembleur"
+msgstr "%qs n'est pas supporté par votre assembleur"
#: config/rs6000/sysv4.h:219
-#, fuzzy, gcc-internal-format
-#| msgid "-m%s not supported in this configuration"
+#, gcc-internal-format
msgid "%<-m%s%> not supported in this configuration"
-msgstr "-m%s n'est pas supporté par cette configuration"
+msgstr "%<-m%s%> n'est pas supporté par cette configuration"
#: config/rx/rx.c:651
#, gcc-internal-format, gfc-internal-format
@@ -32923,7 +32464,7 @@ msgstr "l'argument de %qs est trop grand (max. %d)"
#: config/s390/s390.c:15413
#, gcc-internal-format
msgid "-mno-pic-data-is-text-relative cannot be used without -fpic/-fPIC"
-msgstr ""
+msgstr "-mno-pic-data-is-text-relative ne peut pas être utilisé sans -fpic/-fPIC"
#. Value is not allowed for the target attribute.
#: config/s390/s390.c:15594
@@ -33991,10 +33532,9 @@ msgid "bit-field %qs has invalid type"
msgstr "le champ de bits %qs a un type invalide"
#: c/c-decl.c:5467
-#, fuzzy, gcc-internal-format
-#| msgid "cannot declare bit-field %qD with function type"
+#, gcc-internal-format
msgid "cannot declare bit-field %qs with %<warn_if_not_aligned%> type"
-msgstr "ne peut déclarer le champ de bits %qD avec un type de fonction"
+msgstr "ne peut déclarer le champ de bits %qs avec un type %<warn_if_not_aligned%>"
#: c/c-decl.c:5478
#, gcc-internal-format
@@ -35118,10 +34658,9 @@ msgid "version control conflict marker in file"
msgstr "marqueur de conflit de contrôle de version dans le fichier"
#: c/c-parser.c:1087 cp/parser.c:2901
-#, fuzzy, gcc-internal-format
-#| msgid "other match is here"
+#, gcc-internal-format
msgid "to match this %qs"
-msgstr "l'autre correspondance est ici"
+msgstr "pour correspondre à ce %qs"
#: c/c-parser.c:1216 cp/parser.c:28264
#, gcc-internal-format
@@ -35536,10 +35075,9 @@ msgid "missing loop condition in loop with %<GCC ivdep%> pragma"
msgstr "condition de boucle manquante dans la boucle avec le pragma %<GCC ivdep%>"
#: c/c-parser.c:6176 cp/parser.c:11657
-#, fuzzy, gcc-internal-format
-#| msgid "missing loop condition in loop with %<GCC ivdep%> pragma"
+#, gcc-internal-format
msgid "missing loop condition in loop with %<GCC unroll%> pragma"
-msgstr "condition de boucle manquante dans la boucle avec le pragma %<GCC ivdep%>"
+msgstr "condition de boucle manquante dans la boucle avec le pragma %<GCC unroll%>"
#: c/c-parser.c:6210
#, gcc-internal-format
@@ -35566,19 +35104,17 @@ msgstr "le C ISO interdit l'omission du terme central de l'expression ?:"
#: c/c-parser.c:6866 cp/typeck.c:4452
#, gcc-internal-format
msgid "division %<sizeof (%T) / sizeof (%T)%> does not compute the number of array elements"
-msgstr ""
+msgstr "la division %<sizeof (%T) / sizeof (%T)%> ne calcule pas le nombre d'éléments dans le tableau"
#: c/c-parser.c:6871 cp/typeck.c:4457
-#, fuzzy, gcc-internal-format
-#| msgid "%qD was declared here"
+#, gcc-internal-format
msgid "first %<sizeof%> operand was declared here"
-msgstr "%qD a été déclaré ici"
+msgstr "le premier opérande %<sizeof%> a été déclaré ici"
#: c/c-parser.c:7088
-#, fuzzy, gcc-internal-format
-#| msgid "alignment specified for typedef %qE"
+#, gcc-internal-format
msgid "alignment specified for type name in cast"
-msgstr "un alignement est spécifié pour le typedef %qE"
+msgstr "un alignement est spécifié pour le nom de type dans le transtypage"
#: c/c-parser.c:7187
#, gcc-internal-format
@@ -35586,10 +35122,9 @@ msgid "traditional C rejects the unary plus operator"
msgstr "le C traditionnel rejette le plus unaire"
#: c/c-parser.c:7316
-#, fuzzy, gcc-internal-format
-#| msgid "alignment specified for typedef %qE"
+#, gcc-internal-format
msgid "alignment specified for type name in %<sizeof%>"
-msgstr "un alignement est spécifié pour le typedef %qE"
+msgstr "un alignement est spécifié pour le nom de type dans %<sizeof%>"
#: c/c-parser.c:7332
#, gcc-internal-format
@@ -35597,10 +35132,9 @@ msgid "%<sizeof%> applied to a bit-field"
msgstr "%<sizeof%> appliqué sur un champ de bits"
#: c/c-parser.c:7401
-#, fuzzy, gcc-internal-format
-#| msgid "alignment specified for typedef %qE"
+#, gcc-internal-format
msgid "alignment specified for type name in %qE"
-msgstr "un alignement est spécifié pour le typedef %qE"
+msgstr "un alignement est spécifié pour le nom de type dans %qE"
#: c/c-parser.c:7424
#, gcc-internal-format
@@ -35673,28 +35207,24 @@ msgid "%<_Generic%> selector of type %qT is not compatible with any association"
msgstr "le sélecteur %<_Generic%> du type %qT n'est compatible avec aucune association"
#: c/c-parser.c:7715
-#, fuzzy, gcc-internal-format
-#| msgid "first argument to %<__builtin_choose_expr%> not a constant"
+#, gcc-internal-format
msgid "argument %u of %<__builtin_tgmath%> is not a function pointer"
-msgstr "le premier argument de %<__builtin_choose_expr%> n'est pas une constante"
+msgstr "l'argument %u de %<__builtin_tgmath%> n'est pas un pointeur de fonction"
#: c/c-parser.c:7723
-#, fuzzy, gcc-internal-format
-#| msgid "argument %qD doesn%'t match prototype"
+#, gcc-internal-format
msgid "argument %u of %<__builtin_tgmath%> is unprototyped"
-msgstr "l'argument %qD ne concorde pas avec le prototype"
+msgstr "l'argument %u de %<__builtin_tgmath%> n'a pas été de prototypé"
#: c/c-parser.c:7729
-#, fuzzy, gcc-internal-format
-#| msgid "argument of %<__builtin_eh_return_regno%> must be constant"
+#, gcc-internal-format
msgid "argument %u of %<__builtin_tgmath%> has variable arguments"
-msgstr "l'argument de %<__builtin_eh_return_regno%> doit être une constante"
+msgstr "l'argument %u de %<__builtin_tgmath%> a des arguments variables"
#: c/c-parser.c:7745
-#, fuzzy, gcc-internal-format
-#| msgid "argument of %<__builtin_eh_return_regno%> must be constant"
+#, gcc-internal-format
msgid "argument %u of %<__builtin_tgmath%> has no arguments"
-msgstr "l'argument de %<__builtin_eh_return_regno%> doit être une constante"
+msgstr "l'argument %u de %<__builtin_tgmath%> n'a pas d'argument"
#: c/c-parser.c:7915 c/c-parser.c:8950 c/c-parser.c:8972 c/gimple-parser.c:978
#: c/gimple-parser.c:984 c/gimple-parser.c:1468
@@ -35738,101 +35268,89 @@ msgid "first argument to %<__builtin_choose_expr%> not a constant"
msgstr "le premier argument de %<__builtin_choose_expr%> n'est pas une constante"
#: c/c-parser.c:8242 c/c-parser.c:8259 c/c-parser.c:8266
-#, fuzzy, gcc-internal-format
-#| msgid "too few arguments to function %<va_start%>"
+#, gcc-internal-format
msgid "too few arguments to %<__builtin_tgmath%>"
-msgstr "trop peu d'arguments pour la fonction %<va_start%>"
+msgstr "trop peu d'arguments pour %<__builtin_tgmath%>"
#: c/c-parser.c:8287
-#, fuzzy, gcc-internal-format
-#| msgid "%qs argument of %qs intrinsic at %L has wrong number of elements (%d/%d)"
+#, gcc-internal-format
msgid "argument %u of %<__builtin_tgmath%> has wrong number of arguments"
-msgstr "L'argument %qs de l'intrinsèque %qs à %L a un mauvais nombre d'éléments (%d/%d)"
+msgstr "l'argument %u de %<__builtin_tgmath%> a le mauvais nombre d'arguments"
#: c/c-parser.c:8331 c/c-parser.c:8341
#, gcc-internal-format
msgid "invalid type-generic return type for argument %u of %<__builtin_tgmath%>"
-msgstr ""
+msgstr "le type de retour est un type générique, ce qui est invalide, pour l'argument %u de %<__builtin_tgmath%>"
#: c/c-parser.c:8363 c/c-parser.c:8373
#, gcc-internal-format
msgid "invalid type-generic type for argument %u of argument %u of %<__builtin_tgmath%>"
-msgstr ""
+msgstr "le type d'un type générique est invalide pour l'argument %u de l'argument %u de %<__builtin_tgmath%>"
#: c/c-parser.c:8406
-#, fuzzy, gcc-internal-format
-#| msgid "%qs and %qs arguments of %qs intrinsic at %L must have the same type"
+#, gcc-internal-format
msgid "function arguments of %<__builtin_tgmath%> all have the same type"
-msgstr "Les arguments %qs et %qs de l'intrinsèque %qs à %L doivent avoir le même type"
+msgstr "les arguments fonctions de %<__builtin_tgmath%> ont tous le même type"
#: c/c-parser.c:8425
#, gcc-internal-format
msgid "function arguments of %<__builtin_tgmath%> lack type-generic parameter"
-msgstr ""
+msgstr "les arguments fonctions de %<__builtin_tgmath%> n'ont pas de paramètre de type générique"
#: c/c-parser.c:8473
#, gcc-internal-format
msgid "duplicate type-generic parameter type for function argument %u of %<__builtin_tgmath%>"
-msgstr ""
+msgstr "type de paramètre de type générique dupliqué pour l'argument fonction %u de %<__builtin_tgmath%>"
#: c/c-parser.c:8496
#, gcc-internal-format
msgid "bad return type for function argument %u of %<__builtin_tgmath%>"
-msgstr ""
+msgstr "mauvais type de retour pour l'argument fonction %u de %<__builtin_tgmath%>"
#: c/c-parser.c:8513
-#, fuzzy, gcc-internal-format
-#| msgid "wrong number of arguments to function %<__builtin_next_arg%>"
+#, gcc-internal-format
msgid "bad type for argument %u of function argument %u of %<__builtin_tgmath%>"
-msgstr "nombre erroné d'arguments pour la fonction %<__builtin_next_arg%>"
+msgstr "mauvais type pour l'argument %u de l'argument fonction %u de %<__builtin_tgmath%>"
#: c/c-parser.c:8549
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "invalid type for parameter %d of constexpr function %q+#D"
+#, gcc-internal-format, gfc-internal-format
msgid "invalid type of argument %u of type-generic function"
-msgstr "type invalide pour le paramètre %d de la fonction constexpr %q+#D"
+msgstr "type invalide pour l'argument %u de la fonction de type générique"
#: c/c-parser.c:8560
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "non-floating-point argument in call to function %qE"
+#, gcc-internal-format, gfc-internal-format
msgid "decimal floating-point argument %u to complex-only type-generic function"
-msgstr "l'argument dans l'appel de la fonction %qE n'est pas en virgule flottante"
+msgstr "argument en virgule flottante décimal %u vers une fonction de type générique uniquement complexe"
#: c/c-parser.c:8568
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "non-floating-point argument in call to function %qE"
+#, gcc-internal-format, gfc-internal-format
msgid "decimal floating-point argument %u to binary-only type-generic function"
-msgstr "l'argument dans l'appel de la fonction %qE n'est pas en virgule flottante"
+msgstr "argument en virgule flottante décimal %u vers une fonction de type générique uniquement binaire"
#: c/c-parser.c:8576 c/c-parser.c:8606
-#, fuzzy, gcc-internal-format
-#| msgid "non-floating-point arguments in call to function %qE"
+#, gcc-internal-format
msgid "both complex and decimal floating-point arguments to type-generic function"
-msgstr "l'argument dans l'appel de la fonction %qE n'est pas en virgule flottante"
+msgstr "arguments à la fois complexe et en virgule flottante décimale vers une fonction de type générique"
#: c/c-parser.c:8584 c/c-parser.c:8626
-#, fuzzy, gcc-internal-format
-#| msgid "non-floating-point arguments in call to function %qE"
+#, gcc-internal-format
msgid "both binary and decimal floating-point arguments to type-generic function"
-msgstr "l'argument dans l'appel de la fonction %qE n'est pas en virgule flottante"
+msgstr "arguments à la fois binaire et en virgule flottante décimale vers une fonction de type générique"
#: c/c-parser.c:8598
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "complex arguments must have identical types"
+#, gcc-internal-format, gfc-internal-format
msgid "complex argument %u to decimal-only type-generic function"
-msgstr "les arguments complexes doivent avoir des types identiques"
+msgstr "argument complexe %u vers une fonction de type générique uniquement décimale"
#: c/c-parser.c:8618
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "invalid argument to built-in function"
+#, gcc-internal-format, gfc-internal-format
msgid "binary argument %u to decimal-only type-generic function"
-msgstr "argument invalide pour la fonction interne"
+msgstr "argument binaire %u vers une fonction de type générique uniquement décimale"
#: c/c-parser.c:8709
-#, fuzzy, gcc-internal-format
-#| msgid "no matching function for call to %<%D(%A)%>"
+#, gcc-internal-format
msgid "no matching function for type-generic call"
-msgstr "pas de fonction correspondant à l'appel %<%D(%A)%>"
+msgstr "pas de fonction correspondante pour l'appel de type générique"
#: c/c-parser.c:8750
#, gcc-internal-format
@@ -35885,10 +35403,9 @@ msgid "ISO C90 forbids compound literals"
msgstr "le C90 ISO interdit les littéraux composés"
#: c/c-parser.c:9038
-#, fuzzy, gcc-internal-format
-#| msgid "%<_Alignas%> specifiers cannot reduce alignment of unnamed field"
+#, gcc-internal-format
msgid "%<_Alignas%> specifiers cannot reduce alignment of compound literal"
-msgstr "les spécificateurs %<_Alignas%> ne peuvent pas réduire l'alignement du champ sans nom"
+msgstr "les spécificateurs %<_Alignas%> ne peuvent pas réduire l'alignement d'un littéral composé"
#: c/c-parser.c:9494
#, gcc-internal-format
@@ -35958,7 +35475,7 @@ msgstr "l'attribut %<getter%> ne peut être spécifié qu'une seule fois"
#: c/c-parser.c:10886 cp/parser.c:38449
#, gcc-internal-format
msgid "%<#pragma GCC unroll%> requires an assignment-expression that evaluates to a non-negative integral constant less than %u"
-msgstr ""
+msgstr "%<#pragma GCC unroll%> requiert une expression d'affectation qui est évaluée en une constante entière non négative plus petite que %u"
#: c/c-parser.c:10930 c/c-parser.c:16563 c/c-parser.c:16821 c/c-parser.c:16880
#: c/c-parser.c:16964 cp/parser.c:35781 cp/parser.c:36075 cp/parser.c:36163
@@ -36020,10 +35537,9 @@ msgid "collapse argument needs positive constant integer expression"
msgstr "l'argument « collapse » a besoin d'une expression entière constante positive"
#: c/c-parser.c:11846 cp/parser.c:31914
-#, fuzzy, gcc-internal-format
-#| msgid "expected %<none%> or %<shared%>"
+#, gcc-internal-format
msgid "expected %<none%> or %<present%>"
-msgstr "%<none%> ou %<shared%> attendu"
+msgstr "%<none%> ou %<present%> attendu"
#: c/c-parser.c:11848 cp/parser.c:31916
#, gcc-internal-format
@@ -36990,7 +36506,7 @@ msgstr "conversion implicite depuis %qT vers %qT pour correspondre à d'autres r
#: c/c-typeck.c:5092 c/c-typeck.c:5098
#, gcc-internal-format
msgid "operand of ?: changes signedness from %qT to %qT due to unsignedness of other operand"
-msgstr ""
+msgstr "l'opérande de ?: change de type signé de %qT à %qT à cause du caractère non signé de l'autre opérande"
#: c/c-typeck.c:5115
#, gcc-internal-format
@@ -37116,10 +36632,9 @@ msgid "ISO C forbids conversion of object pointer to function pointer type"
msgstr "le C ISO interdit la conversion d'un pointeur vers un objet en un type de pointeur vers une fonction"
#: c/c-typeck.c:5728
-#, fuzzy, gcc-internal-format
-#| msgid "can%'t convert from incomplete type %qT to %qT"
+#, gcc-internal-format
msgid "cast between incompatible function types from %qT to %qT"
-msgstr "ne peut convertir du type incomplet %qT vers %qT"
+msgstr "transtypage entre des types de fonction incompatibles de %qT vers %qT"
#: c/c-typeck.c:5815
#, gcc-internal-format
@@ -37154,25 +36669,22 @@ msgstr "%qT attendu mais l'argument est de type %qT"
#: c/c-typeck.c:6471
#, gcc-internal-format
msgid "enum conversion when passing argument %d of %qE is invalid in C++"
-msgstr "la conversion en enum lors du passage de l'argument %d de %qE est invalide en C++"
+msgstr "la conversion d'un enum lors du passage de l'argument %d de %qE est invalide en C++"
#: c/c-typeck.c:6480
-#, fuzzy, gcc-internal-format
-#| msgid "enum conversion in assignment is invalid in C++"
+#, gcc-internal-format
msgid "enum conversion from %qT to %qT in assignment is invalid in C++"
-msgstr "la conversion en enum dans une affectation est invalide en C++"
+msgstr "la conversion d'un enum de %qT vers %qT dans une affectation est invalide en C++"
#: c/c-typeck.c:6484
-#, fuzzy, gcc-internal-format
-#| msgid "enum conversion in initialization is invalid in C++"
+#, gcc-internal-format
msgid "enum conversion from %qT to %qT in initialization is invalid in C++"
-msgstr "la conversion en enum durant l'initialisation est invalide en C++"
+msgstr "la conversion d'un enum de %qT vers %qT durant l'initialisation est invalide en C++"
#: c/c-typeck.c:6489
-#, fuzzy, gcc-internal-format
-#| msgid "enum conversion in return is invalid in C++"
+#, gcc-internal-format
msgid "enum conversion from %qT to %qT in return is invalid in C++"
-msgstr "la conversion en enum durant le retour est invalide en C++"
+msgstr "la conversion d'un enum de %qT vers %qT durant le retour est invalide en C++"
#: c/c-typeck.c:6523
#, gcc-internal-format
@@ -37287,22 +36799,19 @@ msgid "pointer targets in passing argument %d of %qE differ in signedness"
msgstr "les cibles pointées dans le passage de l'argument %d de %qE diffèrent dans la plage signée"
#: c/c-typeck.c:6913
-#, fuzzy, gcc-internal-format
-#| msgid "pointer targets in assignment differ in signedness"
+#, gcc-internal-format
msgid "pointer targets in assignment from %qT to %qT differ in signedness"
-msgstr "les cibles pointées dans l'affectation diffèrent dans la plage signée"
+msgstr "les cibles pointées dans l'affectation de %qT vers %qT diffèrent dans la plage signée"
#: c/c-typeck.c:6918
-#, fuzzy, gcc-internal-format
-#| msgid "pointer targets in initialization differ in signedness"
+#, gcc-internal-format
msgid "pointer targets in initialization of %qT from %qT differ in signedness"
-msgstr "les cibles pointées dans l'initialisation diffèrent dans la plage signée"
+msgstr "les cibles pointées dans l'initialisation de %qT depuis %qT diffèrent dans la plage signée"
#: c/c-typeck.c:6923
-#, fuzzy, gcc-internal-format
-#| msgid "pointer targets in passing argument %d of %qE differ in signedness"
+#, gcc-internal-format
msgid "pointer targets in returning %qT from a function with return type %qT differ in signedness"
-msgstr "les cibles pointées dans le passage de l'argument %d de %qE diffèrent dans la plage signée"
+msgstr "les cibles pointées en retournant %qT depuis une fonction qui retourne le type %qT diffèrent dans la plage signée"
#: c/c-typeck.c:6961
#, gcc-internal-format
@@ -37310,22 +36819,19 @@ msgid "passing argument %d of %qE from incompatible pointer type"
msgstr "passage de l'argument %d de %qE depuis un type pointeur incompatible"
#: c/c-typeck.c:6967
-#, fuzzy, gcc-internal-format
-#| msgid "assignment from incompatible pointer type"
+#, gcc-internal-format
msgid "assignment to %qT from incompatible pointer type %qT"
-msgstr "affectation depuis un type pointeur incompatible"
+msgstr "affectation à %qT depuis le type pointeur %qT qui est incompatible"
#: c/c-typeck.c:6972
-#, fuzzy, gcc-internal-format
-#| msgid "initialization from incompatible pointer type"
+#, gcc-internal-format
msgid "initialization of %qT from incompatible pointer type %qT"
-msgstr "initialisation depuis un type pointeur incompatible"
+msgstr "initialisation de %qT depuis le type pointeur %qT qui est incompatible"
#: c/c-typeck.c:6977
-#, fuzzy, gcc-internal-format
-#| msgid "return with value in function with no return type"
+#, gcc-internal-format
msgid "returning %qT from a function with incompatible return type %qT"
-msgstr "retour avec valeur rencontré dans une fonction sans type de retour"
+msgstr "retour de %qT depuis une fonction avec le type de retour %qT qui est incompatible"
#. ??? This should not be an error when inlining calls to
#. unprototyped functions.
@@ -37340,22 +36846,19 @@ msgid "passing argument %d of %qE makes pointer from integer without a cast"
msgstr "le passage de l'argument %d de %qE transforme un entier en pointeur sans transtypage"
#: c/c-typeck.c:7010
-#, fuzzy, gcc-internal-format
-#| msgid "assignment makes pointer from integer without a cast"
+#, gcc-internal-format
msgid "assignment to %qT from %qT makes pointer from integer without a cast"
-msgstr "l'affectation transforme un entier en pointeur sans transtypage"
+msgstr "l'affectation à %qT depuis %qT transforme un entier en pointeur sans transtypage"
#: c/c-typeck.c:7015
-#, fuzzy, gcc-internal-format
-#| msgid "initialization makes pointer from integer without a cast"
+#, gcc-internal-format
msgid "initialization of %qT from %qT makes pointer from integer without a cast"
-msgstr "l'initialisation transforme un entier en pointeur sans transtypage"
+msgstr "l'initialisation de %qT depuis %qT transforme un entier en pointeur sans transtypage"
#: c/c-typeck.c:7019
-#, fuzzy, gcc-internal-format
-#| msgid "passing argument %d of %qE makes pointer from integer without a cast"
+#, gcc-internal-format
msgid "returning %qT from a function with return type %qT makes pointer from integer without a cast"
-msgstr "le passage de l'argument %d de %qE transforme un entier en pointeur sans transtypage"
+msgstr "retourner %qT depuis une fonction avec le type de retour %qT transforme un entier en pointeur sans transtypage"
#: c/c-typeck.c:7035
#, gcc-internal-format
@@ -37363,22 +36866,19 @@ msgid "passing argument %d of %qE makes integer from pointer without a cast"
msgstr "le passage de l'argument %d de %qE transforme un pointeur en entier sans transtypage"
#: c/c-typeck.c:7041
-#, fuzzy, gcc-internal-format
-#| msgid "assignment makes integer from pointer without a cast"
+#, gcc-internal-format
msgid "assignment to %qT from %qT makes integer from pointer without a cast"
-msgstr "l'affectation transforme un pointeur en entier sans transtypage"
+msgstr "l'affectation à %qT depuis %qT transforme un pointeur en entier sans transtypage"
#: c/c-typeck.c:7046
-#, fuzzy, gcc-internal-format
-#| msgid "initialization makes integer from pointer without a cast"
+#, gcc-internal-format
msgid "initialization of %qT from %qT makes integer from pointer without a cast"
-msgstr "l'initialisation transforme un pointeur en entier sans transtypage"
+msgstr "l'initialisation de %qT depuis %qT transforme un pointeur en entier sans transtypage"
#: c/c-typeck.c:7050
-#, fuzzy, gcc-internal-format
-#| msgid "passing argument %d of %qE makes integer from pointer without a cast"
+#, gcc-internal-format
msgid "returning %qT from a function with return type %qT makes integer from pointer without a cast"
-msgstr "le passage de l'argument %d de %qE transforme un pointeur en entier sans transtypage"
+msgstr "retourner %qT depuis une fonction qui retourne le type %qT transforme un pointeur en entier sans transtypage"
#: c/c-typeck.c:7073
#, gcc-internal-format
@@ -38122,10 +37622,9 @@ msgid "%<||%> not valid in GIMPLE"
msgstr "%<||%> n'est pas valable en GIMPLE"
#: c/gimple-parser.c:588
-#, fuzzy, gcc-internal-format
-#| msgid "expected identifier or %<*%>"
+#, gcc-internal-format
msgid "expected pointer as argument of unary %<*%>"
-msgstr "identificateur ou %<*%> attendu"
+msgstr "pointeur attendu comme argument au %<*%> unaire"
#: c/gimple-parser.c:614
#, gcc-internal-format
@@ -38143,16 +37642,14 @@ msgid "base variable or SSA name undeclared"
msgstr "variable de base ou nom SSA par déclaré"
#: c/gimple-parser.c:715
-#, fuzzy, gcc-internal-format
-#| msgid "invalid type %<void%> for new"
+#, gcc-internal-format
msgid "invalid base %qE for SSA name"
-msgstr "type %<void%> invalide pour « new »"
+msgstr "base %qE invalide pour le nom SSA"
#: c/gimple-parser.c:835
-#, fuzzy, gcc-internal-format
-#| msgid "invalid %%P operand"
+#, gcc-internal-format
msgid "invalid type of %<__MEM%> operand"
-msgstr "opérande %%P invalide"
+msgstr "type invalide pour l'opérande de %<__MEM%>"
#: c/gimple-parser.c:891 c/gimple-parser.c:899
#, gcc-internal-format
@@ -38206,10 +37703,8 @@ msgid " passing %qT as %<this%> argument discards qualifiers"
msgstr " passer %qT comme argument %<this%> élimine les qualificatifs"
#: cp/call.c:3410
-#, fuzzy
-#| msgid " no known conversion for implicit %<this%> parameter from %qT to %qT"
msgid " no known conversion for implicit %<this%> parameter from %qH to %qI"
-msgstr " pas de conversion connue de %qT vers %qT pour le paramètre implicite %<this%>"
+msgstr " pas de conversion connue de %qH vers %qI pour le paramètre implicite %<this%>"
#: cp/call.c:3417
#, gcc-internal-format, gfc-internal-format
@@ -38218,16 +37713,12 @@ msgstr " la conversion de l'argument %d serait mal formée:"
#. Conversion of conversion function return value failed.
#: cp/call.c:3424
-#, fuzzy
-#| msgid " no known conversion from %qT to %qT"
msgid " no known conversion from %qH to %qI"
-msgstr " pas de conversion connue pour convertir %qT en %qT"
+msgstr " pas de conversion connue pour convertir %qH en %qI"
#: cp/call.c:3427
-#, fuzzy
-#| msgid " no known conversion for argument %d from %qT to %qT"
msgid " no known conversion for argument %d from %qH to %qI"
-msgstr " pas de conversion connue pour convertir l'argument %d depuis %qT vers %qT"
+msgstr " pas de conversion connue pour convertir l'argument %d depuis %qH vers %qI"
#: cp/call.c:3438 cp/pt.c:6318
#, gcc-internal-format, gfc-internal-format
@@ -38237,46 +37728,39 @@ msgstr[0] " le candidat attend %d argument, %d fourni(s)"
msgstr[1] " le candidat attend %d arguments, %d fourni(s)"
#: cp/call.c:3466
-#, fuzzy, gcc-internal-format
-#| msgid "%s%D(%T, %T, %T) <built-in>"
+#, gcc-internal-format
msgid "%s%<%D(%T, %T, %T)%> <built-in>"
-msgstr "%s%D(%T, %T, %T) <fonction interne>"
+msgstr "%s%<%D(%T, %T, %T)%> <fonction interne>"
#: cp/call.c:3471
-#, fuzzy, gcc-internal-format
-#| msgid "%s%D(%T, %T) <built-in>"
+#, gcc-internal-format
msgid "%s%<%D(%T, %T)%> <built-in>"
-msgstr "%s%D(%T, %T) <fonction interne>"
+msgstr "%s%<%D(%T, %T)%> <fonction interne>"
#: cp/call.c:3475
-#, fuzzy, gcc-internal-format
-#| msgid "%s%D(%T) <built-in>"
+#, gcc-internal-format
msgid "%s%<%D(%T)%> <built-in>"
-msgstr "%s%D(%T) <fonction interne>"
+msgstr "%s%<%D(%T)%> <fonction interne>"
#: cp/call.c:3479
-#, fuzzy, gcc-internal-format
-#| msgid "%s%T <conversion>"
+#, gcc-internal-format
msgid "%s%qT <conversion>"
-msgstr "%s%T <conversion>"
+msgstr "%s%qT <conversion>"
#: cp/call.c:3481
-#, fuzzy, gcc-internal-format
-#| msgid "%s%#D <near match>"
+#, gcc-internal-format
msgid "%s%#qD <near match>"
-msgstr "%s%#D <près d'une concordance>"
+msgstr "%s%#qD <concordance proche>"
#: cp/call.c:3483
-#, fuzzy, gcc-internal-format
-#| msgid "%s%#D <deleted>"
+#, gcc-internal-format
msgid "%s%#qD <deleted>"
-msgstr "%s%#D <supprimé>"
+msgstr "%s%#qD <supprimé>"
#: cp/call.c:3485
-#, fuzzy, gcc-internal-format
-#| msgid "%s%#D"
+#, gcc-internal-format
msgid "%s%#qD"
-msgstr "%s%#D"
+msgstr "%s%#qD"
#: cp/call.c:3489
#, gcc-internal-format
@@ -38315,20 +37799,16 @@ msgid " an inherited constructor is not a candidate for initialization from an
msgstr " un constructeur hérité n'est pas un candidat pour une initialisation depuis une expression du même type ou d'un type dérivé"
#: cp/call.c:3934
-#, fuzzy
-#| msgid "conversion from %qT to %qT is ambiguous"
msgid "conversion from %qH to %qI is ambiguous"
-msgstr "la conversion de %qT vers %qT est ambiguë"
+msgstr "la conversion de %qH vers %qI est ambiguë"
#: cp/call.c:4078
msgid "initializing %qH with %qI in converted constant expression does not bind directly"
-msgstr ""
+msgstr "initialiser %qH avec %qI dans une expression constante convertie n'est pas liée directement"
#: cp/call.c:4099
-#, fuzzy
-#| msgid "conversion of %qT null pointer to %qT is not a constant expression"
msgid "conversion from %qH to %qI in a converted constant expression"
-msgstr "la conversion du pointeur nul %qT vers %qT n'est pas une expression constante"
+msgstr "conversion de %qH vers %qI dans une expression constante convertie"
#: cp/call.c:4236
#, gcc-internal-format
@@ -38343,10 +37823,9 @@ msgstr "appel ambigu à la surcharge %<%D(%A)%>"
#. It's no good looking for an overloaded operator() on a
#. pointer-to-member-function.
#: cp/call.c:4474
-#, fuzzy, gcc-internal-format
-#| msgid "pointer-to-member function %E cannot be called without an object; consider using .* or ->*"
+#, gcc-internal-format
msgid "pointer-to-member function %qE cannot be called without an object; consider using %<.*%> or %<->*%>"
-msgstr "le pointeur vers la fonction membre %E ne peut être appelé sans un objet; utilisez .* ou ->*"
+msgstr "le pointeur vers la fonction membre %qE ne peut être appelé sans un objet; utilisez %<.*%> ou %<->*%>"
#: cp/call.c:4545
#, gcc-internal-format
@@ -38444,10 +37923,8 @@ msgid "inferred scalar type %qT is not an integer or floating point type of the
msgstr "le type scalaire inféré %qT n'est pas un type entier ou en virgule flottante de la même taille que %qT"
#: cp/call.c:4878 cp/call.c:4885
-#, fuzzy
-#| msgid "conversion of scalar %qT to vector %qT involves truncation"
msgid "conversion of scalar %qH to vector %qI involves truncation"
-msgstr "la conversion du scalaire %qT vers le vecteur %qT implique une troncature"
+msgstr "la conversion du scalaire %qH vers le vecteur %qI implique une troncature"
#: cp/call.c:4938
#, gcc-internal-format
@@ -38475,10 +37952,8 @@ msgid " and each type can be converted to the other"
msgstr " et chaque type peut être converti en l'autre"
#: cp/call.c:5274
-#, fuzzy
-#| msgid "implicit conversion from %qT to %qT to match other result of conditional"
msgid "implicit conversion from %qH to %qI to match other result of conditional"
-msgstr "conversion implicite depuis %qT vers %qT pour correspondre à d'autres résultats de la condition"
+msgstr "conversion implicite depuis %qH vers %qI pour correspondre à d'autres résultats de la condition"
#: cp/call.c:5287
#, gcc-internal-format
@@ -38581,16 +38056,12 @@ msgid "too many braces around initializer for %qT"
msgstr "trop d'accolades autour de l'initialiseur pour %qT"
#: cp/call.c:6665
-#, fuzzy
-#| msgid "converting to %qT from %qT requires direct-initialization"
msgid "converting to %qH from %qI requires direct-initialization"
-msgstr "la conversion vers %qT depuis %qT requiert une initialisation directe"
+msgstr "la conversion vers %qH depuis %qI requiert une initialisation directe"
#: cp/call.c:6673
-#, fuzzy
-#| msgid "invalid user-defined conversion from %qT to %qT"
msgid "invalid user-defined conversion from %qH to %qI"
-msgstr "la conversion définie par l'utilisateur de %qT vers %qT est invalide"
+msgstr "la conversion définie par l'utilisateur de %qH vers %qI est invalide"
#: cp/call.c:6690 cp/call.c:6714 cp/call.c:6833 cp/call.c:6924 cp/call.c:6975
#: cp/call.c:7003
@@ -38599,10 +38070,8 @@ msgid " initializing argument %P of %qD"
msgstr " initialisation de l'argument %P de %qD"
#: cp/call.c:6710 cp/cvt.c:226
-#, fuzzy
-#| msgid "invalid conversion from %qT to %qT"
msgid "invalid conversion from %qH to %qI"
-msgstr "conversion invalide de %qT vers %qT"
+msgstr "conversion invalide de %qH vers %qI"
#: cp/call.c:6751 cp/call.c:6758
#, gcc-internal-format
@@ -38615,22 +38084,16 @@ msgid "in C++11 and above a default constructor can be explicit"
msgstr "en C++11 et au delà, un constructeur par défaut peut être explicite"
#: cp/call.c:6989
-#, fuzzy
-#| msgid "cannot bind rvalue reference of type %qT to lvalue of type %qT"
msgid "cannot bind rvalue reference of type %qH to lvalue of type %qI"
-msgstr "impossible de lier la référence d'une r-valeur de type %qT à une l-valeur de type %qT"
+msgstr "impossible de lier la référence d'une r-valeur de type %qH à une l-valeur de type %qI"
#: cp/call.c:6993
-#, fuzzy
-#| msgid "cannot bind non-const lvalue reference of type %qT to an rvalue of type %qT"
msgid "cannot bind non-const lvalue reference of type %qH to an rvalue of type %qI"
-msgstr "impossible de lier la référence d'une l-valeur non constante de type %qT à une r-valeur de type %qT"
+msgstr "impossible de lier la référence d'une l-valeur non constante de type %qH à une r-valeur de type %qI"
#: cp/call.c:6996
-#, fuzzy
-#| msgid "binding reference of type %qT to %qT discards qualifiers"
msgid "binding reference of type %qH to %qI discards qualifiers"
-msgstr "lier la référence du type %qT à %qT abandonne les qualificatifs"
+msgstr "lier la référence du type %qH à %qI abandonne les qualificatifs"
#: cp/call.c:7032
#, gcc-internal-format
@@ -38648,10 +38111,8 @@ msgid "cannot bind rvalue %qE to %qT"
msgstr "ne peut lier la r-valeur %qE avec %qT"
#: cp/call.c:7148
-#, fuzzy
-#| msgid "implicit conversion from %qT to %qT when passing argument to function"
msgid "implicit conversion from %qH to %qI when passing argument to function"
-msgstr "conversion implicite de %qT en %qT lors du passage de l'argument à la fonction"
+msgstr "conversion implicite de %qH en %qI lors du passage de l'argument à la fonction"
#: cp/call.c:7165 cp/cvt.c:1867
#, gcc-internal-format
@@ -38726,139 +38187,127 @@ msgstr "passage des arguments à l'élision du constructeur hérité %qD"
#: cp/call.c:8472
#, gcc-internal-format
msgid "%qD writing to an object of type %#qT with no trivial copy-assignment"
-msgstr ""
+msgstr "écriture %qD vers un objet de type %#qT sans affectation par copie triviale"
#: cp/call.c:8475
-#, fuzzy, gcc-internal-format
-#| msgid "conversion to void will not access object of non-trivially-copyable type %qT"
+#, gcc-internal-format
msgid "%qD writing to an object of non-trivial type %#qT%s"
-msgstr "la conversion vers void n'accèdera pas à l'objet du type non trivialement copiable %qT"
+msgstr "écriture %qD vers un objet de type non trivial %#qT%s"
#: cp/call.c:8480
#, gcc-internal-format
msgid "%qD writing to an object of type %#qT with %qs member %qD"
-msgstr ""
+msgstr "écriture %qD vers un objet de type %#qT avec le membre %qs de %qD"
#: cp/call.c:8485
#, gcc-internal-format
msgid "%qD writing to an object of type %#qT containing a pointer to data member%s"
-msgstr ""
+msgstr "écriture %qD vers un objet de type %#qT contenant un pointer vers le membre de donnée%s"
#: cp/call.c:8500
-#, fuzzy, gcc-internal-format
-#| msgid "assignment (not initialization) in declaration"
+#, gcc-internal-format
msgid "; use assignment or value-initialization instead"
-msgstr "affectation (pas une initialisation) dans la déclaration"
+msgstr "; utilisez plutôt une affectation ou une initialisation par valeur"
#: cp/call.c:8502
-#, fuzzy, gcc-internal-format
-#| msgid "use #include instead"
+#, gcc-internal-format
msgid "; use assignment instead"
-msgstr "utilisez #include à la place"
+msgstr "; utilisez plutôt une affectation"
#: cp/call.c:8504
-#, fuzzy, gcc-internal-format
-#| msgid "value-initialization of function type %qT"
+#, gcc-internal-format
msgid "; use value-initialization instead"
-msgstr "initialisation par valeur du type fonction %qT"
+msgstr "; utilisez plutôt une initialisation par valeur"
#: cp/call.c:8507
#, gcc-internal-format
msgid "%qD clearing an object of type %#qT with no trivial copy-assignment%s"
-msgstr ""
+msgstr "%qD effacement d'un objet de type %#qT sans affectation par copie triviale%s"
#: cp/call.c:8510
-#, fuzzy, gcc-internal-format
-#| msgid "creating pointer to member of non-class type %qT"
+#, gcc-internal-format
msgid "%qD clearing an object of non-trivial type %#qT%s"
-msgstr "création d'un pointeur vers le membre d'un type non classe %qT"
+msgstr "%qD effacement d'un objet du type non trivial %#qT%s"
#: cp/call.c:8512
#, gcc-internal-format
msgid "%qD clearing an object of type %#qT containing a pointer-to-member%s"
-msgstr ""
+msgstr "%qD effacement d'un objet de type %#qT contenant un pointeur vers un membre%s"
#: cp/call.c:8533
-#, fuzzy, gcc-internal-format
-#| msgid "assignment (not initialization) in declaration"
+#, gcc-internal-format
msgid "; use copy-assignment or copy-initialization instead"
-msgstr "affectation (pas une initialisation) dans la déclaration"
+msgstr "; utilisez plutôt une affectation par copie ou une initialisation par copie"
#: cp/call.c:8535
-#, fuzzy, gcc-internal-format
-#| msgid "use #include instead"
+#, gcc-internal-format
msgid "; use copy-assignment instead"
-msgstr "utilisez #include à la place"
+msgstr "; utilisez plutôt une affectation par copie"
#: cp/call.c:8537
-#, fuzzy, gcc-internal-format
-#| msgid "re-initialization of %qs at %L"
+#, gcc-internal-format
msgid "; use copy-initialization instead"
-msgstr "ré-initialisation de %qs à %L"
+msgstr "; utilisez plutôt une initialisation par copie"
#: cp/call.c:8540
#, gcc-internal-format
msgid "%qD writing to an object of type %#qT with no trivial copy-assignment%s"
-msgstr ""
+msgstr "%qD écriture dans un objet de type %#qT sans affectation par copie triviale%s"
#: cp/call.c:8543
-#, fuzzy, gcc-internal-format
-#| msgid "conversion to void will not access object of non-trivially-copyable type %qT"
+#, gcc-internal-format
msgid "%qD writing to an object of non-trivially copyable type %#qT%s"
-msgstr "la conversion vers void n'accèdera pas à l'objet du type non trivialement copiable %qT"
+msgstr "%qD écriture dans un objet du type non trivialement copiable %#qT%s"
#: cp/call.c:8546
#, gcc-internal-format
msgid "%qD writing to an object with a deleted copy constructor"
-msgstr ""
+msgstr "%qD écriture dans un objet avec un constructeur par copie supprimé"
#: cp/call.c:8557
#, gcc-internal-format
msgid "%qD copying an object of non-trivial type %#qT from an array of %#qT"
-msgstr ""
+msgstr "%qD copie un objet du type non trivial %#qT depuis un tableau de %#qT"
#: cp/call.c:8569
#, gcc-internal-format
msgid "%qD copying an object of type %#qT with %qs member %qD from an array of %#qT; use assignment or copy-initialization instead"
-msgstr ""
+msgstr "%qD copie un objet de type %#qT avec le membre %qs de %qD depuis un tableau de %#qT; utilisez plutôt une affectation ou une initialisation par copie"
#: cp/call.c:8586
#, gcc-internal-format
msgid "%qD writing to an object of a non-trivial type %#qT leaves %wu bytes unchanged"
-msgstr ""
+msgstr "%qD écriture dans un objet du type non trivial %#qT laisse %wu octets inchangés"
#: cp/call.c:8589
#, gcc-internal-format
msgid "%qD writing to an object of a non-trivial type %#qT leaves %wu byte unchanged"
-msgstr ""
+msgstr "%qD écriture dans un objet du type non trivial %#qT laisse %wu octet inchangé"
#: cp/call.c:8599
-#, fuzzy, gcc-internal-format
-#| msgid "receiving objects of non-trivially-copyable type %q#T through %<...%> is conditionally-supported"
+#, gcc-internal-format
msgid "%qD moving an object of non-trivially copyable type %#qT; use %<new%> and %<delete%> instead"
-msgstr "la réception d'objets du type %q#T non trivialement copiables au travers de %<...%> est supporté conditionnellement"
+msgstr "%qD déplacement d'un objet du type non trivialement copiable %#qT; utilisez plutôt %<new%> et %<delete%>"
#: cp/call.c:8602
#, gcc-internal-format
msgid "%qD moving an object of type %#qT with deleted copy constructor; use %<new%> and %<delete%> instead"
-msgstr ""
+msgstr "%qD déplacement d'un objet de type %#qT avec un constructeur par copie supprimé; utilisez plutôt %<new%> et %<delete%>"
#: cp/call.c:8605
#, gcc-internal-format
msgid "%qD moving an object of type %#qT with deleted destructor"
-msgstr ""
+msgstr "%qD déplacement d'un objet de type %#qT avec un destructeur supprimé"
#: cp/call.c:8614
-#, fuzzy, gcc-internal-format
-#| msgid "placement new constructing an object of type %qT and size %qwu in a region of type %qT and size %qwi"
+#, gcc-internal-format
msgid "%qD moving an object of non-trivial type %#qT and size %E into a region of size %E"
-msgstr "l'opérateur « new » avec placement construit un objet de type %qT et de taille %qwu dans une région de type %qT et de taille %qwi"
+msgstr "%qD déplacement d'un objet du type non trivial %#qT et de taille %E dans une région de taille %E"
#: cp/call.c:8636
-#, fuzzy, gcc-internal-format
-#| msgid "%qT declared here"
+#, gcc-internal-format
msgid "%#qT declared here"
-msgstr "%qT déclaré ici"
+msgstr "%#qT déclaré ici"
#: cp/call.c:8732
#, gcc-internal-format
@@ -38886,10 +38335,9 @@ msgid "no matching function for call to %<%T::operator %T(%A)%#V%>"
msgstr "pas de fonction concordante pour l'appel à %<%T::operator %T(%A)%#V%>"
#: cp/call.c:9172
-#, fuzzy, gcc-internal-format
-#| msgid "no matching function for call to %<%T::%E(%A)%#V%>"
+#, gcc-internal-format
msgid "no matching function for call to %<%T::%s%E(%A)%#V%>"
-msgstr "pas de fonction concordante pour l'appel à %<%T::%E(%A)%#V%>"
+msgstr "pas de fonction concordante pour l'appel à %<%T::%s%E(%A)%#V%>"
#: cp/call.c:9196
#, gcc-internal-format
@@ -38932,10 +38380,8 @@ msgid "choosing %qD over %qD"
msgstr "choix de %qD à la place de %qD"
#: cp/call.c:10096
-#, fuzzy
-#| msgid " for conversion from %qT to %qT"
msgid " for conversion from %qH to %qI"
-msgstr " pour la conversion de %qT vers %qT"
+msgstr " pour la conversion de %qH vers %qI"
#: cp/call.c:10099
#, gcc-internal-format
@@ -38963,10 +38409,8 @@ msgid "ISO C++ says that these are ambiguous, even though the worst conversion f
msgstr "le C++ ISO indique que ceux-ci sont ambigus même si la plus mauvaise conversion pour le premier est meilleures que la plus mauvaise conversion pour le second:"
#: cp/call.c:10557
-#, fuzzy
-#| msgid "could not convert %qE from %qT to %qT"
msgid "could not convert %qE from %qH to %qI"
-msgstr "impossible de convertir %qE de %qT vers %qT"
+msgstr "impossible de convertir %qE de %qH vers %qI"
#: cp/call.c:10759
#, gcc-internal-format
@@ -38974,16 +38418,12 @@ msgid "a temporary bound to %qD only persists until the constructor exits"
msgstr "une limite temporaire sur %qD existe uniquement jusqu'à la sortie du constructeur"
#: cp/call.c:10882
-#, fuzzy
-#| msgid "invalid initialization of non-const reference of type %qT from an rvalue of type %qT"
msgid "invalid initialization of non-const reference of type %qH from an rvalue of type %qI"
-msgstr "initialisation invalide pour une référence non constante du type %qT à partir d'une r-valeur de type %qT"
+msgstr "initialisation invalide pour une référence non constante du type %qH à partir d'une r-valeur de type %qI"
#: cp/call.c:10886
-#, fuzzy
-#| msgid "invalid initialization of reference of type %qT from expression of type %qT"
msgid "invalid initialization of reference of type %qH from expression of type %qI"
-msgstr "initialisation invalide pour une référence du type %qT à partir d'une expression de type %qT"
+msgstr "initialisation invalide pour une référence du type %qH à partir d'une expression de type %qI"
#: cp/class.c:324
#, gcc-internal-format
@@ -39007,22 +38447,19 @@ msgstr "impossible de convertir depuis la classe de base %qT vers la classe dér
# ce message apparaît juste après le %q#D ci-dessus
#: cp/class.c:1129
-#, fuzzy, gcc-internal-format
-#| msgid "conflicts with version inherited from %qT"
+#, gcc-internal-format
msgid "%q#D conflicts with version inherited from %qT"
-msgstr "est en conflit avec la version héritée de %qT"
+msgstr "%q#D est en conflit avec la version héritée de %qT"
#: cp/class.c:1132
-#, fuzzy, gcc-internal-format
-#| msgid "routine %qD declared here"
+#, gcc-internal-format
msgid "version inherited from %qT declared here"
-msgstr "la routine %qD est déclarée ici"
+msgstr "la version héritée de %qT est déclarée ici"
#: cp/class.c:1152
-#, fuzzy, gcc-internal-format
-#| msgid "%q+#D cannot be overloaded"
+#, gcc-internal-format
msgid "%q#D cannot be overloaded with %q#D"
-msgstr "%q+#D ne peut pas être surchargé"
+msgstr "%q#D ne peut pas être surchargé par %q#D"
#: cp/class.c:1154 cp/decl.c:1640 cp/decl.c:1661 cp/decl.c:1693
#: cp/name-lookup.c:2300 cp/name-lookup.c:2584
@@ -39041,28 +38478,24 @@ msgid "conflicting access specifications for field %qE, ignored"
msgstr "spécifications d'accès conflictuelles pour le champ %qE, ignoré"
#: cp/class.c:1265
-#, fuzzy, gcc-internal-format
-#| msgid " because of local method %q+#D with same name"
+#, gcc-internal-format
msgid "%qD invalid in %q#T because of local method %q#D with same name"
-msgstr " à cause de la méthode locale %q+#D avec le même nom"
+msgstr "%qD invalide dans %q#T à cause de la méthode locale %q#D avec le même nom"
#: cp/class.c:1269
-#, fuzzy, gcc-internal-format
-#| msgid "in call to %qD, declared here"
+#, gcc-internal-format
msgid "local method %q#D declared here"
-msgstr "dans l'appel à %qD, déclaré ici"
+msgstr "méthode locale %q#D, déclarée ici"
#: cp/class.c:1275
-#, fuzzy, gcc-internal-format
-#| msgid " because of local member %q+#D with same name"
+#, gcc-internal-format
msgid "%qD invalid in %q#T because of local member %q#D with same name"
-msgstr " à cause du membre local %q+#D avec le même nom"
+msgstr "%qD invalide dans %q#T à cause du membre local %q#D avec le même nom"
#: cp/class.c:1279
-#, fuzzy, gcc-internal-format
-#| msgid "array member %q#D declared here"
+#, gcc-internal-format
msgid "local member %q#D declared here"
-msgstr "membre tableau %q#D déclaré ici"
+msgstr "membre local %q#D déclaré ici"
#: cp/class.c:1334
#, gcc-internal-format
@@ -39113,7 +38546,7 @@ msgstr "%q#T définit uniquement des constructeurs privés et n'a pas d'amis"
#: cp/class.c:2168
#, gcc-internal-format
msgid "%q#D is public, but requires an existing %q#T object"
-msgstr ""
+msgstr "%q#D est public mais requiert un objet %q#T existant"
#: cp/class.c:2442
#, gcc-internal-format
@@ -39321,10 +38754,9 @@ msgid "method declared %qE overriding %qE method"
msgstr "la méthode déclarée %qE surcharge la méthode %qE"
#: cp/class.c:5373 cp/constexpr.c:230
-#, fuzzy, gcc-internal-format
-#| msgid "enclosing class of constexpr non-static member function %q+#D is not a literal type"
+#, gcc-internal-format
msgid "enclosing class of %<constexpr%> non-static member function %q+#D is not a literal type"
-msgstr "la classe englobant la fonction membre non statique « constexpr » %q+#D n'est pas un type littéral"
+msgstr "la classe englobant la fonction membre non statique %<constexpr%> %q+#D n'est pas un type littéral"
#: cp/class.c:5397
#, gcc-internal-format
@@ -39334,7 +38766,7 @@ msgstr "%q+T n'est pas littéral à cause de:"
#: cp/class.c:5400
#, gcc-internal-format
msgid " %qT is a closure type, which is only literal in C++17 and later"
-msgstr ""
+msgstr " %qT est un type de fermeture qui n'est un littéral qu'à partir du C++17"
#: cp/class.c:5403
#, gcc-internal-format
@@ -39342,10 +38774,9 @@ msgid " %q+T has a non-trivial destructor"
msgstr " %q+T a un destructeur non trivial"
#: cp/class.c:5410
-#, fuzzy, gcc-internal-format
-#| msgid " %q+T is not an aggregate, does not have a trivial default constructor, and has no constexpr constructor that is not a copy or move constructor"
+#, gcc-internal-format
msgid " %q+T is not an aggregate, does not have a trivial default constructor, and has no %<constexpr%> constructor that is not a copy or move constructor"
-msgstr " %q+T n'est pas un agrégat, n'a pas de constructeur par défaut trivial et n'a pas de constructeur « constexpr » qui n'est pas un constructeur de copie ou par déplacement"
+msgstr " %q+T n'est pas un agrégat, n'a pas de constructeur par défaut trivial et n'a pas de constructeur %<constexpr%> qui n'est pas un constructeur de copie ou par déplacement"
#: cp/class.c:5443
#, gcc-internal-format
@@ -39547,10 +38978,9 @@ msgid "changes meaning of %qD from %q#D"
msgstr "change la signification de %qD depuis %q#D"
#: cp/constexpr.c:98
-#, fuzzy, gcc-internal-format
-#| msgid "the type %qT of constexpr variable %qD is not literal"
+#, gcc-internal-format
msgid "the type %qT of %<constexpr%> variable %qD is not literal"
-msgstr "le type %qT de la variable constexpr %qD n'est pas littéral"
+msgstr "le type %qT de la variable %<constexpr%> %qD n'est pas littéral"
#: cp/constexpr.c:107
#, gcc-internal-format
@@ -39558,27 +38988,24 @@ msgid "variable %qD of non-literal type %qT in %<constexpr%> function"
msgstr "la variable %qD du type non littéral %qT dans la fonction %<constexpr%>"
#: cp/constexpr.c:182
-#, fuzzy, gcc-internal-format
-#| msgid "inherited constructor %qD is not constexpr"
+#, gcc-internal-format
msgid "inherited constructor %qD is not %<constexpr%>"
-msgstr "le constructeur hérité %qD n'est pas constexpr"
+msgstr "le constructeur hérité %qD n'est pas %<constexpr%>"
#: cp/constexpr.c:194
-#, fuzzy, gcc-internal-format
-#| msgid "invalid type for parameter %d of constexpr function %q+#D"
+#, gcc-internal-format
msgid "invalid type for parameter %d of %<constexpr%> function %q+#D"
-msgstr "type invalide pour le paramètre %d de la fonction constexpr %q+#D"
+msgstr "type invalide pour le paramètre %d de la fonction %<constexpr%> %q+#D"
#: cp/constexpr.c:206
#, gcc-internal-format
msgid "lambdas are implicitly %<constexpr%> only in C++17 and later"
-msgstr ""
+msgstr "les lambdas ne sont implicitement %<constexpr%> qu'à partir du C++17"
#: cp/constexpr.c:216
-#, fuzzy, gcc-internal-format
-#| msgid "invalid return type %qT of constexpr function %q+D"
+#, gcc-internal-format
msgid "invalid return type %qT of %<constexpr%> function %q+D"
-msgstr "type retourné %qT invalide pour la fonction constexpr %q+D"
+msgstr "type retourné %qT invalide pour la fonction %<constexpr%> %q+D"
#: cp/constexpr.c:239
#, gcc-internal-format
@@ -39586,10 +39013,9 @@ msgid "%q#T has virtual base classes"
msgstr "%q#T a des classes virtuelles de base"
#: cp/constexpr.c:500
-#, fuzzy, gcc-internal-format
-#| msgid "constexpr constructor does not have empty body"
+#, gcc-internal-format
msgid "%<constexpr%> constructor does not have empty body"
-msgstr "le constructeur constexpr n'a pas de corps vide"
+msgstr "le constructeur %<constexpr%> n'a pas de corps vide"
#: cp/constexpr.c:606
#, gcc-internal-format
@@ -39607,22 +39033,19 @@ msgid "member %qD must be initialized by mem-initializer in %<constexpr%> constr
msgstr "le membre %qD doit être initialisé par l'initialisation des membres dans le constructeur %<constexpr%>"
#: cp/constexpr.c:852
-#, fuzzy, gcc-internal-format
-#| msgid "body of constexpr function %qD not a return-statement"
+#, gcc-internal-format
msgid "body of %<constexpr%> function %qD not a return-statement"
-msgstr "le corps de la fonction constexpr %qD n'est pas une unique instruction « return »"
+msgstr "le corps de la fonction %<constexpr%> %qD n'est pas une unique instruction « return »"
#: cp/constexpr.c:913
-#, fuzzy, gcc-internal-format
-#| msgid "%qD is not usable as a constexpr function because:"
+#, gcc-internal-format
msgid "%qD is not usable as a %<constexpr%> function because:"
-msgstr "%qD n'est pas utilisable comme une fonction constexpr car:"
+msgstr "%qD n'est pas utilisable comme une fonction %<constexpr%> car:"
#: cp/constexpr.c:1202 cp/constexpr.c:1708
-#, fuzzy, gcc-internal-format
-#| msgid "constexpr call flows off the end of the function"
+#, gcc-internal-format
msgid "%<constexpr%> call flows off the end of the function"
-msgstr "l'appel constexpr déborde au delà de la fin de la fonction"
+msgstr "l'appel %<constexpr%> déborde au delà de la fin de la fonction"
#: cp/constexpr.c:1207 cp/constexpr.c:1217 cp/constexpr.c:1812
#, gcc-internal-format
@@ -39635,16 +39058,14 @@ msgid "call to internal function %qE"
msgstr "appel à la fonction interne %qE"
#: cp/constexpr.c:1472
-#, fuzzy, gcc-internal-format
-#| msgid "expression %qE does not designate a constexpr function"
+#, gcc-internal-format
msgid "expression %qE does not designate a %<constexpr%> function"
-msgstr "l'expression %qE ne désigne pas une fonction constexpr"
+msgstr "l'expression %qE ne désigne pas une fonction %<constexpr%>"
#: cp/constexpr.c:1491 cp/constexpr.c:5271
-#, fuzzy, gcc-internal-format
-#| msgid "call to non-constexpr function %qD"
+#, gcc-internal-format
msgid "call to non-%<constexpr%> function %qD"
-msgstr "appel à la fonction non constexpr %qD"
+msgstr "appel à la fonction non %<constexpr%> %qD"
#: cp/constexpr.c:1563
#, gcc-internal-format
@@ -39667,10 +39088,9 @@ msgid "call has circular dependency"
msgstr "l'appel a une dépendance circulaire"
#: cp/constexpr.c:1625
-#, fuzzy, gcc-internal-format
-#| msgid "constexpr evaluation depth exceeds maximum of %d (use -fconstexpr-depth= to increase the maximum)"
+#, gcc-internal-format
msgid "%<constexpr%> evaluation depth exceeds maximum of %d (use -fconstexpr-depth= to increase the maximum)"
-msgstr "la profondeur d'évaluation de la constexpr dépasse le maximum permis %d (utilisez -fconstexpr-depth= pour augmenter le maximum)"
+msgstr "la profondeur d'évaluation de la %<constexpr%> dépasse le maximum permis %d (utilisez -fconstexpr-depth= pour augmenter le maximum)"
#: cp/constexpr.c:1852
#, gcc-internal-format
@@ -39789,10 +39209,9 @@ msgid "modification of %qE is not a constant expression"
msgstr "la modification de %qE n'est pas une expression constante"
#: cp/constexpr.c:3897
-#, fuzzy, gcc-internal-format
-#| msgid "constexpr loop iteration count exceeds limit of %d (use -fconstexpr-loop-limit= to increase the limit)"
+#, gcc-internal-format
msgid "%<constexpr%> loop iteration count exceeds limit of %d (use -fconstexpr-loop-limit= to increase the limit)"
-msgstr "le décompte des itérations de la boucle constexpr dépasse la limite permise %d (utilisez -fconstexpr-loop-limit= pour augmenter la limite)"
+msgstr "le décompte des itérations de la boucle %<constexpr%> dépasse la limite permise %d (utilisez -fconstexpr-loop-limit= pour augmenter la limite)"
#: cp/constexpr.c:4036
#, gcc-internal-format
@@ -39855,15 +39274,14 @@ msgid "expression %qE has side-effects"
msgstr "l'expression %qE à des effets de bord"
#: cp/constexpr.c:5354
-#, fuzzy, gcc-internal-format
-#| msgid "modification of %qE is not a constant expression"
+#, gcc-internal-format
msgid "lambda capture of %qE is not a constant expression"
-msgstr "la modification de %qE n'est pas une expression constante"
+msgstr "la capture lambda de %qE n'est pas une expression constante"
#: cp/constexpr.c:5357
#, gcc-internal-format
msgid "because it is used as a glvalue"
-msgstr ""
+msgstr "car il est utilisé comme gl-valeur"
#: cp/constexpr.c:5392
#, gcc-internal-format
@@ -39881,10 +39299,9 @@ msgid "use of %<this%> in a constant expression"
msgstr "utilisation de %<this%> dans une expression constante"
#: cp/constexpr.c:5542
-#, fuzzy, gcc-internal-format
-#| msgid "lambda-expression in a constant expression"
+#, gcc-internal-format
msgid "lambda-expression is not a constant expression before C++17"
-msgstr "expression lambda dans une expression constante"
+msgstr "expression lambda dans une expression constante avant C++17"
#: cp/constexpr.c:5605
#, gcc-internal-format
@@ -39897,16 +39314,14 @@ msgid "cast to non-integral type %qT in a constant expression"
msgstr "transtypage vers le type non entier %qT dans une expression constante"
#: cp/constexpr.c:5699
-#, fuzzy, gcc-internal-format
-#| msgid "%qD declared %<static%> in %<constexpr%> function"
+#, gcc-internal-format
msgid "%qD declared %<static%> in %<constexpr%> context"
-msgstr "%qD déclaré %<static%> dans une fonction %<constexpr%>"
+msgstr "%qD déclaré %<static%> dans un contexte %<constexpr%>"
#: cp/constexpr.c:5706
-#, fuzzy, gcc-internal-format
-#| msgid "%qD declared %<thread_local%> in %<constexpr%> function"
+#, gcc-internal-format
msgid "%qD declared %<thread_local%> in %<constexpr%> context"
-msgstr "%qD déclaré %<thread_local%> dans une fonction %<constexpr%>"
+msgstr "%qD déclaré %<thread_local%> dans un contexte %<constexpr%>"
#: cp/constexpr.c:5778
#, gcc-internal-format
@@ -39949,22 +39364,16 @@ msgid "in C++11 this throw will terminate because destructors default to noexcep
msgstr "en C++11, ce throw sera terminal car les destructeurs sont noexcept par défaut"
#: cp/cvt.c:91
-#, fuzzy
-#| msgid "can%'t convert from incomplete type %qT to %qT"
msgid "can%'t convert from incomplete type %qH to %qI"
-msgstr "ne peut convertir du type incomplet %qT vers %qT"
+msgstr "ne peut convertir du type incomplet %qH vers %qI"
#: cp/cvt.c:101
-#, fuzzy
-#| msgid "conversion of %qE from %qT to %qT is ambiguous"
msgid "conversion of %qE from %qH to %qI is ambiguous"
-msgstr "la conversion de %qE à partir de %qT vers %qT est ambiguë"
+msgstr "la conversion de %qE à partir de %qH vers %qI est ambiguë"
#: cp/cvt.c:173 cp/cvt.c:200 cp/cvt.c:249
-#, fuzzy
-#| msgid "cannot convert %qE from type %qT to type %qT"
msgid "cannot convert %qE from type %qH to type %qI"
-msgstr "impossible de convertir %qE du type %qT vers le type %qT"
+msgstr "impossible de convertir %qE du type %qH vers le type %qI"
#: cp/cvt.c:384
#, gcc-internal-format
@@ -39987,10 +39396,8 @@ msgid "conversion to non-const reference type %q#T from rvalue of type %qT"
msgstr "conversion vers le type référencé non const %q#T depuis une r-valeur du type %qT"
#: cp/cvt.c:469
-#, fuzzy
-#| msgid "conversion from %qT to %qT discards qualifiers"
msgid "conversion from %qH to %qI discards qualifiers"
-msgstr "la conversion depuis %qT vers %qT écarte les qualificatifs"
+msgstr "la conversion depuis %qH vers %qI écarte les qualificatifs"
#: cp/cvt.c:491 cp/typeck.c:7327
#, gcc-internal-format
@@ -39998,10 +39405,8 @@ msgid "casting %qT to %qT does not dereference pointer"
msgstr "le transtypage de %qT vers %qT ne déréférence pas le pointeur"
#: cp/cvt.c:519
-#, fuzzy
-#| msgid "cannot convert type %qT to type %qT"
msgid "cannot convert type %qH to type %qI"
-msgstr "ne peut convertir le type %qT vers le type %qT"
+msgstr "ne peut convertir le type %qH vers le type %qI"
#: cp/cvt.c:757
#, gcc-internal-format
@@ -40029,10 +39434,8 @@ msgid "%q#T used where a floating point value was expected"
msgstr "%q#T utilisé là où une valeur en virgule flottante était attendue"
#: cp/cvt.c:912
-#, fuzzy
-#| msgid "conversion from %qT to non-scalar type %qT requested"
msgid "conversion from %qH to non-scalar type %qI requested"
-msgstr "conversion de %qT vers le type non scalaire %qT demandée"
+msgstr "conversion de %qH vers le type non scalaire %qI demandée"
#: cp/cvt.c:992
#, gcc-internal-format
@@ -40315,10 +39718,9 @@ msgid "template-parameter-"
msgstr "paramètre-patron-"
#: cp/decl.c:678
-#, fuzzy, gcc-internal-format
-#| msgid "invalid initializer for structured binding declaration"
+#, gcc-internal-format
msgid "unused structured binding declaration"
-msgstr "initialisation invalide pour la déclaration de liaison structurée"
+msgstr "déclaration de liaison structurée inutilisée"
#: cp/decl.c:681
#, gcc-internal-format
@@ -40328,7 +39730,7 @@ msgstr "variable %qD inutilisée"
#: cp/decl.c:690
#, gcc-internal-format
msgid "structured binding declaration set but not used"
-msgstr ""
+msgstr "déclaration de liaison structurée définie mais pas utilisée"
#: cp/decl.c:909
#, gcc-internal-format
@@ -40396,10 +39798,9 @@ msgid "previous declaration of %qD was here"
msgstr "la déclaration précédente de %qD était ici"
#: cp/decl.c:1438
-#, fuzzy, gcc-internal-format
-#| msgid "built-in function %q+D declared as non-function"
+#, gcc-internal-format
msgid "built-in function %qD declared as non-function"
-msgstr "la fonction interne %q+D est déclarée comme une non fonction"
+msgstr "la fonction interne %qD est déclarée comme une non fonction"
#: cp/decl.c:1450 cp/decl.c:1550
#, gcc-internal-format
@@ -40432,10 +39833,9 @@ msgid "previous %<pragma omp declare reduction%> declaration"
msgstr "déclaration %<pragma omp declare reduction%> précédente"
#: cp/decl.c:1532
-#, fuzzy, gcc-internal-format
-#| msgid "declaration of %q+#D conflicts with built-in declaration %q#D"
+#, gcc-internal-format
msgid "declaration of %q#D conflicts with built-in declaration %q#D"
-msgstr "la déclaration de %q+#D est en conflit avec la déclaration interne %q#D"
+msgstr "la déclaration de %q#D est en conflit avec la déclaration interne %q#D"
#: cp/decl.c:1545
#, gcc-internal-format
@@ -40609,13 +40009,12 @@ msgstr "redéclaration redondante du membre statique %<constexpr%> %qD"
#: cp/decl.c:2997
#, gcc-internal-format
msgid "local label %qE conflicts with existing label"
-msgstr ""
+msgstr "l'étiquette locale %qE est en conflit avec l'étiquette existante"
#: cp/decl.c:2998
-#, fuzzy, gcc-internal-format
-#| msgid "previous declaration"
+#, gcc-internal-format
msgid "previous label"
-msgstr "déclaration précédente"
+msgstr "étiquette précédente"
#: cp/decl.c:3092
#, gcc-internal-format
@@ -40633,15 +40032,14 @@ msgid " crosses initialization of %q#D"
msgstr " croise l'initialisation de %q#D"
#: cp/decl.c:3145
-#, fuzzy, gcc-internal-format
-#| msgid " enters scope of %q#D which has non-trivial destructor"
+#, gcc-internal-format
msgid " enters scope of %q#D, which has non-trivial destructor"
msgstr " entre dans la portée de %q#D qui a un destructeur non trivial"
#: cp/decl.c:3200
#, gcc-internal-format, gfc-internal-format
msgid " %s"
-msgstr ""
+msgstr " %s"
#: cp/decl.c:3295 cp/decl.c:3315
#, gcc-internal-format
@@ -40669,10 +40067,9 @@ msgid " enters synchronized or atomic statement"
msgstr " entre dans l'instruction synchronisée ou atomique"
#: cp/decl.c:3319
-#, fuzzy, gcc-internal-format
-#| msgid " enters constexpr if statement"
+#, gcc-internal-format
msgid " enters %<constexpr%> if statement"
-msgstr " entre dans l'instruction « if » « constexpr »"
+msgstr " entre dans l'instruction « if » %<constexpr%>"
#: cp/decl.c:3325
#, gcc-internal-format
@@ -40730,10 +40127,9 @@ msgid "template parameters do not match template %qD"
msgstr "les paramètres du patron ne correspondent pas au patron %qD"
#: cp/decl.c:4097
-#, fuzzy, gcc-internal-format
-#| msgid "%<-mpcommit%> was deprecated"
+#, gcc-internal-format
msgid "%<-fno-for-scope%> is deprecated"
-msgstr "%<-mpcommit%> a été rendue obsolète"
+msgstr "%<-fno-for-scope%> a été rendue obsolète"
#: cp/decl.c:4193
#, gcc-internal-format, gfc-internal-format
@@ -41013,10 +40409,9 @@ msgid "uninitialized variable %qD in %<constexpr%> function"
msgstr "variable %qD non initialisée dans une fonction %<constexpr%>"
#: cp/decl.c:5591
-#, fuzzy, gcc-internal-format
-#| msgid "uninitialized variable %qD in %<constexpr%> function"
+#, gcc-internal-format
msgid "uninitialized variable %qD in %<constexpr%> context"
-msgstr "variable %qD non initialisée dans une fonction %<constexpr%>"
+msgstr "variable %qD non initialisée dans un contexte %<constexpr%>"
#: cp/decl.c:5599
#, gcc-internal-format
@@ -41140,10 +40535,9 @@ msgid "assignment (not initialization) in declaration"
msgstr "affectation (pas une initialisation) dans la déclaration"
#: cp/decl.c:6772 cp/decl.c:12464
-#, fuzzy, gcc-internal-format
-#| msgid "ISO C++1z does not allow %<register%> storage class specifier"
+#, gcc-internal-format
msgid "ISO C++17 does not allow %<register%> storage class specifier"
-msgstr "le C++1z ISO n'autorise pas le spécificateur de classe de stockage %<register%>"
+msgstr "le C++17 ISO n'autorise pas le spécificateur de classe de stockage %<register%>"
#: cp/decl.c:6776 cp/decl.c:12468
#, gcc-internal-format
@@ -41196,10 +40590,9 @@ msgid "cannot decompose class type %qT: its base classes %qT and %qT have non-st
msgstr "impossible de décomposer le type de classe %qT: ses classes de base %qT et %qT ont des membres de données non statiques"
#: cp/decl.c:7460
-#, fuzzy, gcc-internal-format
-#| msgid "dereferencing pointer to incomplete type %qT"
+#, gcc-internal-format
msgid "structured binding refers to incomplete type %qT"
-msgstr "déréférencement d'un pointeur du type incomplet %qT"
+msgstr "la liaison structurée fait référence au type incomplet %qT"
#: cp/decl.c:7476
#, gcc-internal-format
@@ -41207,34 +40600,30 @@ msgid "cannot decompose variable length array %qT"
msgstr "impossible de décomposer le tableau de longueur variable %qT"
#: cp/decl.c:7485 cp/decl.c:7573
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "%qs specified for structure field"
+#, gcc-internal-format, gfc-internal-format
msgid "%u name provided for structured binding"
msgid_plural "%u names provided for structured binding"
-msgstr[0] "%qs spécifié pour un champ d'une structure"
-msgstr[1] "%qs spécifié pour un champ d'une structure"
+msgstr[0] "%u nom fourni pour la liaison structurée"
+msgstr[1] "%u noms fournis pour la liaison structurée"
#: cp/decl.c:7489
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "invalid initializer for structured binding declaration"
+#, gcc-internal-format, gfc-internal-format
msgid "only %u name provided for structured binding"
msgid_plural "only %u names provided for structured binding"
-msgstr[0] "initialisation invalide pour la déclaration de liaison structurée"
-msgstr[1] "initialisation invalide pour la déclaration de liaison structurée"
+msgstr[0] "seulement %u nom fourni pour la liaison structurée"
+msgstr[1] "seulement %u noms fournis pour la liaison structurée"
#: cp/decl.c:7495
-#, fuzzy, gcc-internal-format
-#| msgid "%u names provided while %qT decomposes into %wu elements"
+#, gcc-internal-format
msgid "while %qT decomposes into %wu element"
msgid_plural "while %qT decomposes into %wu elements"
-msgstr[0] "%u noms fournis alors que %qT se décompose en %wu éléments"
-msgstr[1] "%u noms fournis alors que %qT se décompose en %wu éléments"
+msgstr[0] "alors que %qT se décompose en %wu élément"
+msgstr[1] "alors que %qT se décompose en %wu éléments"
#: cp/decl.c:7540
-#, fuzzy, gcc-internal-format
-#| msgid "cannot decompose variable length array %qT"
+#, gcc-internal-format
msgid "cannot decompose variable length vector %qT"
-msgstr "impossible de décomposer le tableau de longueur variable %qT"
+msgstr "impossible de décomposer le vecteur de longueur variable %qT"
#: cp/decl.c:7566
#, gcc-internal-format
@@ -41242,16 +40631,14 @@ msgid "%<std::tuple_size<%T>::value%> is not an integral constant expression"
msgstr "%<std::tuple_size<%T>::value%> n'est pas une expression constante entière"
#: cp/decl.c:7575
-#, fuzzy, gcc-internal-format
-#| msgid "%u names provided while %qT decomposes into %wu elements"
+#, gcc-internal-format
msgid "while %qT decomposes into %E elements"
-msgstr "%u noms fournis alors que %qT se décompose en %wu éléments"
+msgstr "alors que %qT se décompose en %E éléments"
#: cp/decl.c:7596
-#, fuzzy, gcc-internal-format
-#| msgid "in initialization of decomposition variable %qD"
+#, gcc-internal-format
msgid "in initialization of structured binding variable %qD"
-msgstr "dans l'initialisation de la variable de décomposition %qD"
+msgstr "dans l'initialisation de la variable de liaison structurée %qD"
#: cp/decl.c:7622
#, gcc-internal-format
@@ -41440,10 +40827,9 @@ msgid "cannot declare %<::main%> to be inline"
msgstr "ne peut déclarer %<::main%> comme étant à mettre en ligne"
#: cp/decl.c:8729
-#, fuzzy, gcc-internal-format
-#| msgid "cannot declare %<::main%> to be constexpr"
+#, gcc-internal-format
msgid "cannot declare %<::main%> to be %<constexpr%>"
-msgstr "ne peut déclarer %<::main%> comme étant constexpr"
+msgstr "ne peut déclarer %<::main%> comme étant %<constexpr%>"
#: cp/decl.c:8731
#, gcc-internal-format
@@ -41756,10 +41142,9 @@ msgid "%<inline%> specifier invalid for variable %qD declared at block scope"
msgstr "spécificateur %<inline%> invalide pour la variable %qD déclarée au niveau du bloc"
#: cp/decl.c:9892
-#, fuzzy, gcc-internal-format
-#| msgid "inline variables are only available with -std=c++1z or -std=gnu++1z"
+#, gcc-internal-format
msgid "inline variables are only available with -std=c++17 or -std=gnu++17"
-msgstr "les variables « inline » sont uniquement disponibles avec -std=c++1z ou -std=gnu++1z"
+msgstr "les variables « inline » sont uniquement disponibles avec -std=c++17 ou -std=gnu++17"
#: cp/decl.c:10147
#, gcc-internal-format
@@ -41957,70 +41342,59 @@ msgid "%<virtual%> outside class declaration"
msgstr "%<virtual%> en dehors de la déclaration de classe"
#: cp/decl.c:10704
-#, fuzzy, gcc-internal-format
-#| msgid "decomposition declaration cannot be declared %<inline%>"
+#, gcc-internal-format
msgid "structured binding declaration cannot be %<inline%>"
-msgstr "une déclaration par décomposition ne peut pas être déclarée %<inline%>"
+msgstr "une déclaration de liaison structurée ne peut pas être %<inline%>"
#: cp/decl.c:10707
-#, fuzzy, gcc-internal-format
-#| msgid "decomposition declaration cannot be declared %<typedef%>"
+#, gcc-internal-format
msgid "structured binding declaration cannot be %<typedef%>"
-msgstr "une déclaration par décomposition ne peut pas être déclarée %<typedef%>"
+msgstr "une déclaration de liaison structurée ne peut pas être %<typedef%>"
#: cp/decl.c:10709
-#, fuzzy, gcc-internal-format
-#| msgid "decomposition declaration cannot be declared %<constexpr%>"
+#, gcc-internal-format
msgid "structured binding declaration cannot be %<constexpr%>"
-msgstr "une déclaration par décomposition ne peut pas être déclarée %<constexpr%>"
+msgstr "une déclaration de liaison structurée ne peut pas être %<constexpr%>"
#: cp/decl.c:10713
-#, fuzzy, gcc-internal-format
-#| msgid "attribute ignored in declaration of %q#T"
+#, gcc-internal-format
msgid "structured binding declaration cannot be %qs"
-msgstr "attribut ignoré dans la déclaration de %q#T"
+msgstr "la déclaration d'une liaison structurée ne peut pas être %qs"
#: cp/decl.c:10718
-#, fuzzy, gcc-internal-format
-#| msgid "decomposition declaration cannot be declared %<concept%>"
+#, gcc-internal-format
msgid "structured binding declaration cannot be %<concept%>"
-msgstr "une déclaration par décomposition ne peut pas être déclarée %<concept%>"
+msgstr "une déclaration de liaison structurée ne peut pas être %<concept%>"
#: cp/decl.c:10724
-#, fuzzy, gcc-internal-format
-#| msgid "decomposition declaration cannot be declared %<register%>"
+#, gcc-internal-format
msgid "structured binding declaration cannot be %<register%>"
-msgstr "une déclaration par décomposition ne peut pas être déclarée %<register%>"
+msgstr "une déclaration de liaison structurée ne peut pas être %<register%>"
#: cp/decl.c:10728
-#, fuzzy, gcc-internal-format
-#| msgid "decomposition declaration cannot be declared %<static%>"
+#, gcc-internal-format
msgid "structured binding declaration cannot be %<static%>"
-msgstr "une déclaration par décomposition ne peut pas être déclarée %<static%>"
+msgstr "une déclaration de liaison structurée ne peut pas être %<static%>"
#: cp/decl.c:10732
-#, fuzzy, gcc-internal-format
-#| msgid "decomposition declaration cannot be declared %<extern%>"
+#, gcc-internal-format
msgid "structured binding declaration cannot be %<extern%>"
-msgstr "une déclaration par décomposition ne peut pas être déclarée %<extern%>"
+msgstr "une déclaration de liaison structurée ne peut pas être %<extern%>"
#: cp/decl.c:10736
-#, fuzzy, gcc-internal-format
-#| msgid "decomposition declaration cannot be declared %<mutable%>"
+#, gcc-internal-format
msgid "structured binding declaration cannot be %<mutable%>"
-msgstr "une déclaration par décomposition ne peut pas être déclarée %<mutable%>"
+msgstr "une déclaration de liaison structurée ne peut pas être %<mutable%>"
#: cp/decl.c:10740
-#, fuzzy, gcc-internal-format
-#| msgid "decomposition declaration cannot be declared C++98 %<auto%>"
+#, gcc-internal-format
msgid "structured binding declaration cannot be C++98 %<auto%>"
-msgstr "une déclaration par décomposition ne peut pas être déclarée avec le %<auto%> du C++98"
+msgstr "une déclaration de liaison structurée ne peut pas avoir le %<auto%> du C++98"
#: cp/decl.c:10751
-#, fuzzy, gcc-internal-format
-#| msgid "decomposition declaration cannot be declared with type %qT"
+#, gcc-internal-format
msgid "structured binding declaration cannot have type %qT"
-msgstr "une déclaration par décomposition ne peut pas être déclarée avec le type %qT"
+msgstr "une déclaration de liaison structurée ne peut pas avoir le type %qT"
#: cp/decl.c:10754
#, gcc-internal-format
@@ -42063,10 +41437,9 @@ msgid "storage class specifiers invalid in friend function declarations"
msgstr "spécificateurs de classe de stockage invalides dans les déclarations de fonctions amies"
#: cp/decl.c:10929
-#, fuzzy, gcc-internal-format
-#| msgid "multiple storage classes in declaration of %qs"
+#, gcc-internal-format
msgid "unnecessary parentheses in declaration of %qs"
-msgstr "classes de stockage multiples dans la déclaration de %qs"
+msgstr "parenthèses inutiles dans la déclaration de %qs"
#: cp/decl.c:10977
#, gcc-internal-format
@@ -42237,16 +41610,14 @@ msgid "extra qualification %<%T::%> on member %qs"
msgstr "qualification %<%T::%> additionnelle sur le membre %qs"
#: cp/decl.c:11495
-#, fuzzy, gcc-internal-format
-#| msgid "cannot define member function %<%T::%s%> within %<%T%>"
+#, gcc-internal-format
msgid "cannot define member function %<%T::%s%> within %qT"
-msgstr "ne peut définir la fonction membre %<%T::%s%> à l'intérieur de %<%T%>"
+msgstr "ne peut définir la fonction membre %<%T::%s%> à l'intérieur de %qT"
#: cp/decl.c:11497
-#, fuzzy, gcc-internal-format
-#| msgid "cannot declare member function %<%T::%s%> within %<%T%>"
+#, gcc-internal-format
msgid "cannot declare member function %<%T::%s%> within %qT"
-msgstr "ne peut déclarer la fonction membre %<%T::%s%> à l'intérieur de %<%T%>"
+msgstr "ne peut déclarer la fonction membre %<%T::%s%> à l'intérieur de %qT"
#: cp/decl.c:11505
#, gcc-internal-format
@@ -42500,10 +41871,9 @@ msgid "static data member %qE declared %<concept%>"
msgstr "membre statique %qE déclaré %<concept%>"
#: cp/decl.c:12181
-#, fuzzy, gcc-internal-format
-#| msgid "constexpr static data member %qD must have an initializer"
+#, gcc-internal-format
msgid "%<constexpr%> static data member %qD must have an initializer"
-msgstr "le membre statique constexpr %qD doit avoir une initialisation"
+msgstr "le membre statique %<constexpr%> %qD doit avoir une initialisation"
#: cp/decl.c:12209
#, gcc-internal-format
@@ -42593,10 +41963,9 @@ msgid "cannot explicitly declare member %q#D to have extern linkage"
msgstr "ne peut explicitement déclarer le membre %q#D comme ayant une classe de liaison externe"
#: cp/decl.c:12412
-#, fuzzy, gcc-internal-format
-#| msgid "declaration of constexpr variable %qD is not a definition"
+#, gcc-internal-format
msgid "declaration of %<constexpr%> variable %qD is not a definition"
-msgstr "la déclaration de la variable constexpr %qD n'est pas une définition"
+msgstr "la déclaration de la variable %<constexpr%> %qD n'est pas une définition"
#: cp/decl.c:12433
#, gcc-internal-format
@@ -42706,46 +42075,39 @@ msgid "%qD must not have variable number of arguments"
msgstr "%qD ne doit pas avoir un nombre variables d'arguments"
#: cp/decl.c:13195
-#, fuzzy, gcc-internal-format
-#| msgid "%qD must take either zero or one argument"
+#, gcc-internal-format
msgid "%qD must have either zero or one argument"
-msgstr "%qD ne peut prendre que zéro ou un argument"
+msgstr "%qD doit avoir zéro ou un argument"
#: cp/decl.c:13196
-#, fuzzy, gcc-internal-format
-#| msgid "%qD must take either one or two arguments"
+#, gcc-internal-format
msgid "%qD must have either one or two arguments"
-msgstr "%qD ne peut prendre que un ou deux arguments"
+msgstr "%qD doit avoir un ou deux arguments"
#: cp/decl.c:13207
-#, fuzzy, gcc-internal-format
-#| msgid "postfix %qD must take %<int%> as its argument"
+#, gcc-internal-format
msgid "postfix %qD must have %<int%> as its argument"
-msgstr "%qD suffixé doit prendre %<int%> comme argument"
+msgstr "%qD suffixé doit avoir %<int%> comme argument"
#: cp/decl.c:13208
-#, fuzzy, gcc-internal-format
-#| msgid "postfix %qD must take %<int%> as its second argument"
+#, gcc-internal-format
msgid "postfix %qD must have %<int%> as its second argument"
-msgstr "%qD suffixé doit prendre %<int%> comme second argument"
+msgstr "%qD suffixé doit avoir %<int%> comme second argument"
#: cp/decl.c:13218
-#, fuzzy, gcc-internal-format
-#| msgid "%qD must take exactly two arguments"
+#, gcc-internal-format
msgid "%qD must have no arguments"
-msgstr "%qD doit prendre exactement deux arguments"
+msgstr "%qD ne doit avoir aucun argument"
#: cp/decl.c:13219 cp/decl.c:13228
-#, fuzzy, gcc-internal-format
-#| msgid "%qD must take exactly one argument"
+#, gcc-internal-format
msgid "%qD must have exactly one argument"
-msgstr "%qD doit prendre exactement un argument"
+msgstr "%qD doit avoir exactement un argument"
#: cp/decl.c:13229
-#, fuzzy, gcc-internal-format
-#| msgid "%qD must take exactly two arguments"
+#, gcc-internal-format
msgid "%qD must have exactly two arguments"
-msgstr "%qD doit prendre exactement deux arguments"
+msgstr "%qD doit avoir exactement deux arguments"
#: cp/decl.c:13246 cp/decl.c:13249
#, gcc-internal-format
@@ -42932,10 +42294,9 @@ msgid "different underlying type in enum %q#T"
msgstr "types sous-jacents différents dans l'enum %q#T"
#: cp/decl.c:14157
-#, fuzzy, gcc-internal-format
-#| msgid "underlying type %<%T%> of %<%T%> must be an integral type"
+#, gcc-internal-format
msgid "underlying type %qT of %qT must be an integral type"
-msgstr "le type sous-jacent %<%T%> de %<%T%> doit être un type entier"
+msgstr "le type sous-jacent %qT de %qT doit être un type entier"
#. DR 377
#.
@@ -42972,10 +42333,9 @@ msgid "overflow in enumeration values at %qD"
msgstr "débordement dans les valeurs de l'énumération à %qD"
#: cp/decl.c:14567
-#, fuzzy, gcc-internal-format
-#| msgid "enumerator value %E is outside the range of underlying type %<%T%>"
+#, gcc-internal-format
msgid "enumerator value %qE is outside the range of underlying type %qT"
-msgstr "la valeur de l'énumération %E est en dehors de la plage du type sous-jacent %<%T%>"
+msgstr "la valeur de l'énumération %qE est en dehors de la plage du type sous-jacent %qT"
#: cp/decl.c:14678
#, gcc-internal-format
@@ -43071,27 +42431,24 @@ msgid "destructor %qD declared as member template"
msgstr "le destructeur %qD est déclaré en tant que patron membre"
#: cp/decl2.c:714
-#, fuzzy, gcc-internal-format
-#| msgid "old declaration %q#D"
+#, gcc-internal-format
msgid "no declaration matches %q#D"
-msgstr "ancienne déclaration %q#D"
+msgstr "aucune déclaration ne correspond à %q#D"
#: cp/decl2.c:719
#, gcc-internal-format
msgid "no conversion operators declared"
-msgstr ""
+msgstr "aucun opérateur de conversion déclaré"
#: cp/decl2.c:722
-#, fuzzy, gcc-internal-format
-#| msgid "In function %qs"
+#, gcc-internal-format
msgid "no functions named %qD"
-msgstr "Dans la fonction %qs"
+msgstr "pas de fonction nommée %qD"
#: cp/decl2.c:724
-#, fuzzy, gcc-internal-format
-#| msgid "label %qD defined here"
+#, gcc-internal-format
msgid "%#qT defined here"
-msgstr "l'étiquette %qD est définie ici"
+msgstr "%#qT est défini ici"
#: cp/decl2.c:775
#, gcc-internal-format
@@ -43159,10 +42516,9 @@ msgid "cannot declare bit-field %qD with function type"
msgstr "ne peut déclarer le champ de bits %qD avec un type de fonction"
#: cp/decl2.c:1077
-#, fuzzy, gcc-internal-format
-#| msgid "cannot declare bit-field %qD with function type"
+#, gcc-internal-format
msgid "cannot declare bit-field %qD with %<warn_if_not_aligned%> type"
-msgstr "ne peut déclarer le champ de bits %qD avec un type de fonction"
+msgstr "ne peut déclarer le champ de bits %qD avec le type %<warn_if_not_aligned%>"
#: cp/decl2.c:1084
#, gcc-internal-format
@@ -43308,16 +42664,14 @@ msgid "type %qT with no linkage used to declare function %q#D with linkage"
msgstr "le type %qT sans classe de liaison est utilisé pour déclarer la fonction %q#D avec une classe de liaison"
#: cp/decl2.c:4509
-#, fuzzy, gcc-internal-format
-#| msgid "%q#D conflicts with a previous declaration"
+#, gcc-internal-format
msgid "mangling of %q#D as %qE conflicts with a previous mangle"
-msgstr "%q#D entre en conflit avec une déclaration précédente"
+msgstr "la décoration de %q#D qui abouti à %qE entre en conflit avec une décoration précédente"
#: cp/decl2.c:4512
-#, fuzzy, gcc-internal-format
-#| msgid "previous declaration %q#D"
+#, gcc-internal-format
msgid "previous mangling %q#D"
-msgstr "déclaration précédente de %q#D"
+msgstr "décoration précédente de %q#D"
#: cp/decl2.c:4514
#, gcc-internal-format
@@ -43342,8 +42696,7 @@ msgstr "argument par défaut manquant pour le paramètre %P de %q+#D"
#. We mark a lambda conversion op as deleted if we can't
#. generate it properly; see maybe_add_lambda_conv_op.
#: cp/decl2.c:5222
-#, fuzzy, gcc-internal-format
-#| msgid "converting lambda which uses %<...%> to function pointer"
+#, gcc-internal-format
msgid "converting lambda that uses %<...%> to function pointer"
msgstr "conversion d'une fonction lambda qui utilise %<...%> en pointeur de fonction"
@@ -43355,7 +42708,7 @@ msgstr "utilisation de la fonction supprimée %qD"
#: cp/decl2.c:5278
#, gcc-internal-format
msgid "use of built-in parameter pack %qD outside of a template"
-msgstr ""
+msgstr "utilisation du paquet de paramètres intégré %qD en dehors d'un patron"
#: cp/error.c:1523
#, gcc-internal-format
@@ -43363,15 +42716,14 @@ msgid "with"
msgstr "avec"
#: cp/error.c:3688
-#, fuzzy, gcc-internal-format
-#| msgid "no arguments"
+#, gcc-internal-format
msgid "(no argument)"
-msgstr "pas d'argument"
+msgstr "(pas d'argument)"
#: cp/error.c:3780
#, gcc-internal-format
msgid "[...]"
-msgstr ""
+msgstr "[...]"
#: cp/error.c:4140
#, gcc-internal-format
@@ -43635,21 +42987,19 @@ msgid "value-initialization of reference type %qT"
msgstr "initialisation par valeur du type référencé %qT"
#: cp/init.c:561
-#, fuzzy, gcc-internal-format
-#| msgid "recursive instantiation of non-static data member initializer for %qD"
+#, gcc-internal-format
msgid "recursive instantiation of default member initializer for %qD"
-msgstr "instanciation récursive de l'initialisation du membre de donnée non statique pour %qD"
+msgstr "instanciation récursive de l'initialisation du membre par défaut pour %qD"
#: cp/init.c:608
#, gcc-internal-format
msgid "default member initializer for %qD required before the end of its enclosing class"
-msgstr ""
+msgstr "l'initialisation du membre par défaut pour %qD est requise avant la fin de sa classe englobante"
#: cp/init.c:610
-#, fuzzy, gcc-internal-format
-#| msgid "union defined here"
+#, gcc-internal-format
msgid "defined here"
-msgstr "« union » défini ici"
+msgstr "défini ici"
#: cp/init.c:668
#, gcc-internal-format
@@ -44015,7 +43365,7 @@ msgstr "%qD déjà capturé dans l'expression lambda"
#: cp/lambda.c:632
#, gcc-internal-format
msgid "trying to capture %qD in instantiation of generic lambda"
-msgstr ""
+msgstr "tentative de capturer %qD dans une instanciation d'une lambda générique"
#: cp/lambda.c:807
#, gcc-internal-format
@@ -44113,16 +43463,14 @@ msgid "mangled name for %qD will change in C++17 because the exception specifica
msgstr "le nom décoré pour %qD changera dans le C++17 car la spécification de l'exception fait partir du type de la fonction"
#: cp/mangle.c:3906
-#, fuzzy, gcc-internal-format
-#| msgid "the mangled name of %qD changed between -fabi-version=%d (%D) and -fabi-version=%d (%D)"
+#, gcc-internal-format
msgid "the mangled name of %qD changed between %<%s=%d%> (%qD) and %<%s=%d%> (%qD)"
-msgstr "le nom décoré de %qD a changé entre -fabi-version=%d (%D) et -fabi-version=%d (%D)"
+msgstr "le nom décoré de %qD a changé entre %<%s=%d%> (%qD) et %<%s=%d%> (%qD)"
#: cp/mangle.c:3912
-#, fuzzy, gcc-internal-format
-#| msgid "the mangled name of %qD changes between -fabi-version=%d (%D) and -fabi-version=%d (%D)"
+#, gcc-internal-format
msgid "the mangled name of %qD changes between %<%s=%d%> (%qD) and %<%s=%d%> (%qD)"
-msgstr "le nom décoré de %qD change entre -fabi-version=%d (%D) et -fabi-version=%d (%D)"
+msgstr "le nom décoré de %qD change entre %<%s=%d%> (%qD) et %<%s=%d%> (%qD)"
#: cp/mangle.c:4184
#, gcc-internal-format
@@ -44160,10 +43508,9 @@ msgid "union member %q+D with non-trivial %qD"
msgstr "membre d'union %q+D avec un %qD non trivial"
#: cp/method.c:1280
-#, fuzzy, gcc-internal-format
-#| msgid "defaulted constructor calls non-constexpr %qD"
+#, gcc-internal-format
msgid "defaulted constructor calls non-%<constexpr%> %qD"
-msgstr "le constructeur par défaut appelle %qD qui n'est pas constexpr"
+msgstr "le constructeur par défaut appelle %qD qui n'est pas %<constexpr%>"
#: cp/method.c:1347
#, gcc-internal-format
@@ -44221,26 +43568,23 @@ msgid "%q#F is implicitly deleted because its exception-specification does not m
msgstr "%q#F est implicitement supprimé car sa spécification d'exception ne correspond pas à la spécification d'exception implicite %qX"
#: cp/method.c:2188
-#, fuzzy, gcc-internal-format
-#| msgid "does not match expected signature %qD"
+#, gcc-internal-format
msgid "defaulted declaration %q+D does not match the expected signature"
-msgstr "ne correspond pas à la signature %qD attendue"
+msgstr "la déclaration par défaut %q+D ne correspond pas à la signature attendue"
#: cp/method.c:2191
-#, fuzzy, gcc-internal-format
-#| msgid "does not match expected signature %qD"
+#, gcc-internal-format
msgid "expected signature: %qD"
-msgstr "ne correspond pas à la signature %qD attendue"
+msgstr "signature attendue: %qD"
#: cp/method.c:2230
msgid "function %q+D defaulted on its redeclaration with an exception-specification that differs from the implicit exception-specification %qX"
msgstr "la fonction %q+D est imposée par défaut au moment de sa déclaration avec une spécification d'exception qui diffère de la spécification d'exception implicite %qX"
#: cp/method.c:2252
-#, fuzzy, gcc-internal-format
-#| msgid "explicitly defaulted function %q+D cannot be declared as constexpr because the implicit declaration is not constexpr:"
+#, gcc-internal-format
msgid "explicitly defaulted function %q+D cannot be declared as %<constexpr%> because the implicit declaration is not %<constexpr%>:"
-msgstr "la fonction %q+D imposée par défaut explicitement ne peut pas être déclarée constexpr car la déclaration implicite n'est pas constexpr:"
+msgstr "la fonction %q+D imposée par défaut explicitement ne peut pas être déclarée %<constexpr%> car la déclaration implicite n'est pas %<constexpr%>:"
#: cp/method.c:2297
#, gcc-internal-format
@@ -44263,16 +43607,14 @@ msgid "%q#D conflicts with a previous declaration"
msgstr "%q#D entre en conflit avec une déclaration précédente"
#: cp/name-lookup.c:2450
-#, fuzzy, gcc-internal-format
-#| msgid "%q#D hides constructor for %q#T"
+#, gcc-internal-format
msgid "%q#D hides constructor for %q#D"
-msgstr "%q#D cache le constructeur pour %q#T"
+msgstr "%q#D cache le constructeur pour %q#D"
#: cp/name-lookup.c:2582
-#, fuzzy, gcc-internal-format
-#| msgid "conflicting declaration %q+#D"
+#, gcc-internal-format
msgid "conflicting C language linkage declaration %q#D"
-msgstr "entre en conflit avec la déclaration %q+#D"
+msgstr "déclarations conflictuelles de l'édition de liens du langage C %q#D"
#: cp/name-lookup.c:2587
#, gcc-internal-format
@@ -44290,25 +43632,22 @@ msgid "declaration of %qD shadows a member of %qT"
msgstr "la déclaration de %qD masque un membre de %qT"
#: cp/name-lookup.c:2962
-#, fuzzy, gcc-internal-format
-#| msgid "global declaration %q#D"
+#, gcc-internal-format
msgid "local external declaration %q#D"
-msgstr "déclaration globale de %q#D"
+msgstr "déclaration externe locale de %q#D"
#: cp/name-lookup.c:2964
-#, fuzzy, gcc-internal-format
-#| msgid "conflicts with previous declaration %q#D"
+#, gcc-internal-format
msgid "does not match previous declaration %q#D"
-msgstr "entre en conflit avec la déclaration précédente de %q#D"
+msgstr "ne correspond pas à la déclaration précédente %q#D"
#. In a local class, a friend function declaration must
#. find a matching decl in the innermost non-class scope.
#. [class.friend/11]
#: cp/name-lookup.c:3085
-#, fuzzy, gcc-internal-format
-#| msgid "friend declaration %qD in local class without prior declaration"
+#, gcc-internal-format
msgid "friend declaration %qD in local class without prior local declaration"
-msgstr "déclaration amie %qD dans la classe locale sans déclaration antérieure"
+msgstr "déclaration amie %qD dans la classe locale sans déclaration locale antérieure"
#: cp/name-lookup.c:3259
#, gcc-internal-format
@@ -44316,10 +43655,9 @@ msgid "name lookup of %qD changed"
msgstr "la recherche du nom de %qD a changé"
#: cp/name-lookup.c:3262
-#, fuzzy, gcc-internal-format
-#| msgid " matches this %qD under ISO standard rules"
+#, gcc-internal-format
msgid "matches this %qD under ISO standard rules"
-msgstr " concorde avec %qD selon les règles du standard ISO"
+msgstr "concorde avec %qD selon les règles du standard ISO"
#: cp/name-lookup.c:3264
#, gcc-internal-format
@@ -44332,27 +43670,24 @@ msgid "name lookup of %qD changed for ISO %<for%> scoping"
msgstr "la recherche du nom de %qD a changé pour la portée du %<for%> ISO"
#: cp/name-lookup.c:3285
-#, fuzzy, gcc-internal-format
-#| msgid " cannot use obsolete binding at %q+D because it has a destructor"
+#, gcc-internal-format
msgid "cannot use obsolete binding %qD because it has a destructor"
-msgstr " ne peut utiliser la liaison obsolète à %q+D parce qu'il a un destructeur"
+msgstr "ne peut utiliser la liaison obsolète à %qD parce qu'il a un destructeur"
#: cp/name-lookup.c:3296
-#, fuzzy, gcc-internal-format
-#| msgid " using obsolete binding at %qD"
+#, gcc-internal-format
msgid "using obsolete binding %qD"
-msgstr " utilisation de la liaison obsolète à %qD"
+msgstr "utilisation de la liaison obsolète à %qD"
#: cp/name-lookup.c:3300
#, gcc-internal-format
msgid "this flexibility is deprecated and will be removed"
-msgstr ""
+msgstr "cette flexibilité est dépréciée et sera supprimée"
#: cp/name-lookup.c:3354
-#, fuzzy, gcc-internal-format
-#| msgid "%s %s(%E) %p %d\n"
+#, gcc-internal-format
msgid "%s %<%s(%E)%> %p %d\n"
-msgstr "%s %s(%E) %p %d\n"
+msgstr "%s %<%s(%E)%> %p %d\n"
#: cp/name-lookup.c:3357
#, gcc-internal-format
@@ -44430,16 +43765,14 @@ msgid "explicit qualification in declaration of %qD"
msgstr "qualificatifs explicites dans la déclaration de %qD"
#: cp/name-lookup.c:5002
-#, fuzzy, gcc-internal-format
-#| msgid "%qD has not been declared within %D"
+#, gcc-internal-format
msgid "%qD has not been declared within %qD"
-msgstr "%qD n'a pas été déclaré dans %D"
+msgstr "%qD n'a pas été déclaré dans %qD"
#: cp/name-lookup.c:5004
-#, fuzzy, gcc-internal-format
-#| msgid "only here as a friend"
+#, gcc-internal-format
msgid "only here as a %<friend%>"
-msgstr "uniquement ici comme ami"
+msgstr "uniquement ici comme un %<friend%>"
#: cp/name-lookup.c:5013
#, gcc-internal-format
@@ -44496,19 +43829,17 @@ msgstr "alternatives suggérées: %qs"
#: cp/name-lookup.c:5519
#, gcc-internal-format
msgid "%<std::%s%> is defined in header %qs; did you forget to %<#include %s%>?"
-msgstr ""
+msgstr "%<std::%s%> est défini dans l'en-tête %qs ; avez-vous oublié %<#include %s%> ?"
#: cp/name-lookup.c:5698
-#, fuzzy, gcc-internal-format
-#| msgid "weak %q+D cannot be defined %qE"
+#, gcc-internal-format
msgid "the macro %qs had not yet been defined"
-msgstr "le %q+D faible ne peut pas être défini %qE"
+msgstr "la macro %qs n'a pas encore été définie"
#: cp/name-lookup.c:5700
-#, fuzzy, gcc-internal-format
-#| msgid "struct defined here"
+#, gcc-internal-format
msgid "it was later defined here"
-msgstr "« struct » défini ici"
+msgstr "elle a été définie ici plus tard"
#: cp/name-lookup.c:6429
#, gcc-internal-format
@@ -44516,22 +43847,19 @@ msgid "declaration of std::initializer_list does not match #include <initializer
msgstr "la déclaration de std::initializer_list ne correspond pas à #include <initializer_list> et n'est pas un patron"
#: cp/name-lookup.c:6801
-#, fuzzy, gcc-internal-format
-#| msgid "switch %qs is no longer supported"
+#, gcc-internal-format
msgid "strong using directive no longer supported"
-msgstr "l'option %qs n'est plus supportée"
+msgstr "la directive « using » forte n'est plus supportée"
#: cp/name-lookup.c:6804
-#, fuzzy, gcc-internal-format
-#| msgid "strong using is deprecated; use inline namespaces instead"
+#, gcc-internal-format
msgid "you may use an inline namespace instead"
-msgstr "un « using » fort est déprécié, utilisez plutôt un espace de noms en ligne"
+msgstr "vous pouvez utiliser un espace de noms en ligne à la place"
#: cp/name-lookup.c:6821
-#, fuzzy, gcc-internal-format
-#| msgid "attributes ignored on uninstantiated type"
+#, gcc-internal-format
msgid "attributes ignored on local using directive"
-msgstr "attributs ignorés sur un type non instancié"
+msgstr "attributs ignorés sur une directive « using » locale"
#: cp/name-lookup.c:6905
#, gcc-internal-format
@@ -44540,22 +43868,19 @@ msgstr "l'alias de l'espace de noms %qD n'est pas permis ici, on suppose %qD"
#. We only allow depth 255.
#: cp/name-lookup.c:6925
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "%qD may not be declared within a namespace"
+#, gcc-internal-format, gfc-internal-format
msgid "cannot nest more than %d namespaces"
-msgstr "%qD ne peut pas être déclaré dans un espace de noms"
+msgstr "impossible d'imbriquer plus de %d espaces de noms"
#: cp/name-lookup.c:6960
-#, fuzzy, gcc-internal-format
-#| msgid "method attributes must be specified at the end only"
+#, gcc-internal-format
msgid "inline namespace must be specified at initial definition"
-msgstr "les attributs de méthodes doivent être spécifiés uniquement à la fin"
+msgstr "un espace de nom en ligne doit être spécifié à la définition initiale"
#: cp/name-lookup.c:6961
-#, fuzzy, gcc-internal-format
-#| msgid "label %qD defined here"
+#, gcc-internal-format
msgid "%qD defined here"
-msgstr "l'étiquette %qD est définie ici"
+msgstr "%qD défini ici"
#: cp/name-lookup.c:7034
#, gcc-internal-format
@@ -44758,10 +44083,9 @@ msgid "%qs cannot appear in a constant-expression"
msgstr "%qs ne peut pas apparaître dans une expression de constante"
#: cp/parser.c:3269
-#, fuzzy, gcc-internal-format
-#| msgid "class template argument deduction is only available with -std=c++1z or -std=gnu++1z"
+#, gcc-internal-format
msgid "class template argument deduction is only available with -std=c++17 or -std=gnu++17"
-msgstr "la déduction des arguments d'un patron de classe est uniquement disponible avec -std=c++1z ou -std=gnu++1z"
+msgstr "la déduction des arguments d'un patron de classe est uniquement disponible avec -std=c++17 ou -std=gnu++17"
#: cp/parser.c:3274
#, gcc-internal-format
@@ -44831,10 +44155,9 @@ msgid "and %qT has no template constructors"
msgstr "et %qT n'a pas de constructeur avec patron"
#: cp/parser.c:3388
-#, fuzzy, gcc-internal-format
-#| msgid "need %<typename%> before %<%T::%E%> because %qT is a dependent scope"
+#, gcc-internal-format
msgid "need %<typename%> before %<%T::%D::%E%> because %<%T::%D%> is a dependent scope"
-msgstr "a besoin de %<typename%> avant %<%T::%E%> car %qT est une portée dépendante"
+msgstr "a besoin de %<typename%> avant %<%T::%D::%E%> car %<%T::%D%> est une portée dépendante"
#: cp/parser.c:3396
#, gcc-internal-format
@@ -44894,18 +44217,17 @@ msgstr "impossible de trouver l'opérateur littéral numérique %qD"
#: cp/parser.c:4435
#, gcc-internal-format
msgid "add %<using namespace std::complex_literals%> (from <complex>) to enable the C++14 user-defined literal suffixes"
-msgstr ""
+msgstr "ajoutez %<using namespace std::complex_literals%> (de <complex>) pour activer les suffixes littéraux définis par l'utilisateur du C++14"
#: cp/parser.c:4439
#, gcc-internal-format
msgid "or use %<j%> instead of %<i%> for the GNU built-in suffix"
-msgstr ""
+msgstr "ou utilisez %<j%> au lieu de %<i%> pour les suffixes internes GNU"
#: cp/parser.c:4443
-#, fuzzy, gcc-internal-format
-#| msgid "use -std=gnu++11 or -fext-numeric-literals to enable more built-in suffixes"
+#, gcc-internal-format
msgid "use -fext-numeric-literals to enable more built-in suffixes"
-msgstr "utilisez -std=gnu++11 ou -fext-numeric-literals pour activer plus de suffixes internes"
+msgstr "utilisez -fext-numeric-literals pour activer plus de suffixes internes"
#: cp/parser.c:4522
#, gcc-internal-format
@@ -44959,10 +44281,9 @@ msgid "statement-expressions are not allowed outside functions nor in template-a
msgstr "les expressions-instructions ne sont pas permises en dehors des fonctions ni dans les listes d'arguments du patron"
#: cp/parser.c:5211
-#, fuzzy, gcc-internal-format
-#| msgid "fold-expressions only available with -std=c++1z or -std=gnu++1z"
+#, gcc-internal-format
msgid "fold-expressions only available with -std=c++17 or -std=gnu++17"
-msgstr "les expressions fold sont uniquement disponibles avec -std=c++1z ou -std=gnu++1z"
+msgstr "les expressions fold sont uniquement disponibles avec -std=c++17 ou -std=gnu++17"
#: cp/parser.c:5269 cp/parser.c:5446 cp/parser.c:5624 cp/semantics.c:3567
#, gcc-internal-format
@@ -45140,10 +44461,9 @@ msgid "expression in new-declarator must have integral or enumeration type"
msgstr "l'expression dans la déclaration « new » doit être un type entier ou un type énuméré"
#: cp/parser.c:9019
-#, fuzzy, gcc-internal-format
-#| msgid "use of old-style cast"
+#, gcc-internal-format
msgid "use of old-style cast to %q#T"
-msgstr "utilisation d'un vieux style de transtypage"
+msgstr "utilisation d'un vieux style de transtypage vers %q#T"
#: cp/parser.c:9167
#, gcc-internal-format
@@ -45181,10 +44501,9 @@ msgid "explicit by-copy capture of %<this%> redundant with by-copy capture defau
msgstr "la capture par copie explicite de %<this%> est redondante avec la capture par copie par défaut"
#: cp/parser.c:10263
-#, fuzzy, gcc-internal-format
-#| msgid "%<*this%> capture only available with -std=c++1z or -std=gnu++1z"
+#, gcc-internal-format
msgid "%<*this%> capture only available with -std=c++17 or -std=gnu++17"
-msgstr "la capture de %<*this%> est uniquement disponible avec -std=c++1z ou -std=gnu++1z"
+msgstr "la capture de %<*this%> est uniquement disponible avec -std=c++17 ou -std=gnu++17"
#: cp/parser.c:10308
#, gcc-internal-format
@@ -45227,10 +44546,9 @@ msgid "lambda templates are only available with -std=c++14 or -std=gnu++14"
msgstr "les patrons lambda sont uniquement disponibles avec -std=c++14 ou -std=gnu++14"
#: cp/parser.c:10444
-#, fuzzy, gcc-internal-format
-#| msgid "lambda templates are only available with -std=c++14 or -std=gnu++14"
+#, gcc-internal-format
msgid "lambda templates are only available with -std=c++2a or -std=gnu++2a"
-msgstr "les patrons lambda sont uniquement disponibles avec -std=c++14 ou -std=gnu++14"
+msgstr "les patrons lambda sont uniquement disponibles avec -std=c++2a ou -std=gnu++2a"
#: cp/parser.c:10476
#, gcc-internal-format
@@ -45243,10 +44561,9 @@ msgid "duplicate %<mutable%>"
msgstr "%<mutable%> dupliqué"
#: cp/parser.c:10541
-#, fuzzy, gcc-internal-format
-#| msgid "%<constexpr%> lambda only available with -std=c++1z or -std=gnu++1z"
+#, gcc-internal-format
msgid "%<constexpr%> lambda only available with -std=c++17 or -std=gnu++17"
-msgstr "les lambda %<constexpr%> sont uniquement disponibles avec -std=c++1z ou -std=gnu++1z"
+msgstr "les lambda %<constexpr%> sont uniquement disponibles avec -std=c++17 ou -std=gnu++17"
#: cp/parser.c:10908 cp/parser.c:11101
#, gcc-internal-format
@@ -45274,22 +44591,19 @@ msgid "%<%T::%D%> names the constructor, not the type"
msgstr "%<%T::%D%> nomme le constructeur, pas le type"
#: cp/parser.c:11165
-#, fuzzy, gcc-internal-format
-#| msgid "compound-statement in constexpr function"
+#, gcc-internal-format
msgid "compound-statement in %<constexpr%> function"
-msgstr "instruction composée dans une fonction constexpr"
+msgstr "instruction composée dans une fonction %<constexpr%>"
#: cp/parser.c:11292
-#, fuzzy, gcc-internal-format
-#| msgid "%<if constexpr%> only available with -std=c++1z or -std=gnu++1z"
+#, gcc-internal-format
msgid "%<if constexpr%> only available with -std=c++17 or -std=gnu++17"
-msgstr "%<if constexpr%> uniquement disponible avec -std=c++1z ou -std=gnu++1z"
+msgstr "%<if constexpr%> uniquement disponible avec -std=c++17 ou -std=gnu++17"
#: cp/parser.c:11319
-#, fuzzy, gcc-internal-format
-#| msgid "init-statement in selection statements only available with -std=c++1z or -std=gnu++1z"
+#, gcc-internal-format
msgid "init-statement in selection statements only available with -std=c++17 or -std=gnu++17"
-msgstr "l'instruction init dans des instructions de sélection est uniquement disponible avec -std=c++1z ou -std=gnu++1z"
+msgstr "l'instruction init dans des instructions de sélection est uniquement disponible avec -std=c++17 ou -std=gnu++17"
#: cp/parser.c:11489 cp/parser.c:28270
#, gcc-internal-format
@@ -45388,16 +44702,14 @@ msgid "multiple declarations in range-based %<for%> loop"
msgstr "déclarations multiples dans une boucle %<for%> parcourant une plage"
#: cp/parser.c:13203
-#, fuzzy, gcc-internal-format
-#| msgid "unrestricted unions only available with -std=c++11 or -std=gnu++11"
+#, gcc-internal-format
msgid "structured bindings only available with -std=c++17 or -std=gnu++17"
-msgstr "les unions sans restrictions sont disponibles avec -std=c++11 ou -std=gnu++11"
+msgstr "les liaisons structurées sont uniquement disponibles avec -std=c++17 ou -std=gnu++17"
#: cp/parser.c:13252
-#, fuzzy, gcc-internal-format
-#| msgid "invalid initializer for structured binding declaration"
+#, gcc-internal-format
msgid "empty structured binding declaration"
-msgstr "initialisation invalide pour la déclaration de liaison structurée"
+msgstr "déclaration de liaison structurée vide"
#: cp/parser.c:13270
#, gcc-internal-format
@@ -45440,10 +44752,9 @@ msgid "invalid linkage-specification"
msgstr "spécification de classe de liaison invalide"
#: cp/parser.c:13855
-#, fuzzy, gcc-internal-format
-#| msgid "static_assert without a message only available with -std=c++1z or -std=gnu++1z"
+#, gcc-internal-format
msgid "static_assert without a message only available with -std=c++17 or -std=gnu++17"
-msgstr "un static_assert sans message est uniquement disponible avec -std=c++1z ou -std=gnu++1z"
+msgstr "un static_assert sans message est uniquement disponible avec -std=c++17 ou -std=gnu++17"
#: cp/parser.c:14057
#, gcc-internal-format
@@ -45471,10 +44782,9 @@ msgid "only constructors take member initializers"
msgstr "seuls les constructeurs prennent des initialisions membres"
#: cp/parser.c:14337
-#, fuzzy, gcc-internal-format
-#| msgid "cannot expand initializer for member %<%D%>"
+#, gcc-internal-format
msgid "cannot expand initializer for member %qD"
-msgstr "impossible de développer l'initialisation du membre %<%D%>"
+msgstr "impossible de développer l'initialisation du membre %qD"
#: cp/parser.c:14349
#, gcc-internal-format
@@ -45660,10 +44970,9 @@ msgid "expected type-name"
msgstr "un nom de type attendu"
#: cp/parser.c:17554
-#, fuzzy, gcc-internal-format
-#| msgid "elaborated-type-specifier for a scoped enum must not use the %<%D%> keyword"
+#, gcc-internal-format
msgid "elaborated-type-specifier for a scoped enum must not use the %qD keyword"
-msgstr "un spécificateur de type élaboré pour un enum fortement typé ne peut pas utiliser le mot-clé %<%D%>"
+msgstr "un spécificateur de type élaboré pour un enum fortement typé ne peut pas utiliser le mot-clé %qD"
#: cp/parser.c:17777
#, gcc-internal-format
@@ -45761,22 +45070,19 @@ msgid "expected namespace-name"
msgstr "espace de noms attendu"
#: cp/parser.c:18492
-#, fuzzy, gcc-internal-format
-#| msgid "nested namespace definitions only available with -std=c++1z or -std=gnu++1z"
+#, gcc-internal-format
msgid "nested namespace definitions only available with -std=c++17 or -std=gnu++17"
-msgstr "les définitions d'espace de noms imbriqués sont uniquement disponibles avec -std=c++1z ou -std=gnu++1z"
+msgstr "les définitions d'espace de noms imbriqués sont uniquement disponibles avec -std=c++17 ou -std=gnu++17"
#: cp/parser.c:18500
-#, fuzzy, gcc-internal-format
-#| msgid "expected namespace-name"
+#, gcc-internal-format
msgid "nested namespace name required"
-msgstr "espace de noms attendu"
+msgstr "nom d'espace de nom imbriqué attendu"
#: cp/parser.c:18505
-#, fuzzy, gcc-internal-format
-#| msgid "namespace %qD entered"
+#, gcc-internal-format
msgid "namespace name required"
-msgstr "entrée dans l'espace de noms %qD"
+msgstr "nom d'espace de nom attendu"
#: cp/parser.c:18509
#, gcc-internal-format
@@ -45799,10 +45105,9 @@ msgid "%<namespace%> definition is not allowed here"
msgstr "la définition %<namespace%> n'est pas permise ici"
#: cp/parser.c:18725
-#, fuzzy, gcc-internal-format
-#| msgid "pack expansion in using-declaration only available with -std=c++1z or -std=gnu++1z"
+#, gcc-internal-format
msgid "pack expansion in using-declaration only available with -std=c++17 or -std=gnu++17"
-msgstr "l'expansion de paquets dans une déclaration « using » est uniquement disponible avec -std=c++1z ou -std=gnu++1z"
+msgstr "l'expansion de paquets dans une déclaration « using » est uniquement disponible avec -std=c++17 ou -std=gnu++17"
#: cp/parser.c:18740
#, gcc-internal-format
@@ -45810,10 +45115,9 @@ msgid "a template-id may not appear in a using-declaration"
msgstr "un template-id ne peut pas apparaître dans l'utilisation de la déclaration"
#: cp/parser.c:18787
-#, fuzzy, gcc-internal-format
-#| msgid "comma-separated list in using-declaration only available with -std=c++1z or -std=gnu++1z"
+#, gcc-internal-format
msgid "comma-separated list in using-declaration only available with -std=c++17 or -std=gnu++17"
-msgstr "une liste séparée par des virgules dans une déclaration « using » est uniquement disponible avec -std=c++1z ou -std=gnu++1z"
+msgstr "une liste séparée par des virgules dans une déclaration « using » est uniquement disponible avec -std=c++17 ou -std=gnu++17"
#: cp/parser.c:18797
#, gcc-internal-format
@@ -45944,10 +45248,9 @@ msgid "multiple ref-qualifiers"
msgstr "qualificatifs de référence multiples"
#: cp/parser.c:20634
-#, fuzzy, gcc-internal-format
-#| msgid "%E requires %<-fgnu-tm%>"
+#, gcc-internal-format
msgid "%qE requires %<-fgnu-tm%>"
-msgstr "%E requiert %<-fgnu-tm%>"
+msgstr "%qE requiert %<-fgnu-tm%>"
#: cp/parser.c:20692
#, gcc-internal-format
@@ -46010,16 +45313,14 @@ msgid "parameter pack cannot have a default argument"
msgstr "le paquet de paramètres ne peut pas avoir d'argument par défaut"
#: cp/parser.c:22039
-#, fuzzy, gcc-internal-format
-#| msgid "extended initializer lists only available with -std=c++11 or -std=gnu++11"
+#, gcc-internal-format
msgid "C++ designated initializers only available with -std=c++2a or -std=gnu++2a"
-msgstr "les listes d'initialisation étendues sont uniquement disponibles avec -std=c++11 ou -std=gnu++11"
+msgstr "les initialisations désignées du C++ sont uniquement disponibles avec -std=c++2a ou -std=gnu++2a"
#: cp/parser.c:22059
-#, fuzzy, gcc-internal-format
-#| msgid "ISO C++ does not allow designated initializers"
+#, gcc-internal-format
msgid "ISO C++ does not allow GNU designated initializers"
-msgstr "le C++ ISO ne permet pas des initialisations par désignation"
+msgstr "le C++ ISO ne permet pas des initialisations par désignation de GNU"
#: cp/parser.c:22097
#, gcc-internal-format
@@ -46029,18 +45330,17 @@ msgstr "le C++ ISO ne permet pas des initialisations par désignation du C99"
#: cp/parser.c:22111
#, gcc-internal-format
msgid "either all initializer clauses should be designated or none of them should be"
-msgstr ""
+msgstr "soit toutes les instructions d'initialisation devraient être désignées ou aucune ne devrait l'être"
#: cp/parser.c:22136
-#, fuzzy, gcc-internal-format
-#| msgid "ISO C++ does not allow designated initializers"
+#, gcc-internal-format
msgid "%<...%> not allowed in designated initializer list"
-msgstr "le C++ ISO ne permet pas des initialisations par désignation"
+msgstr "%<...%> pas permis dans une liste d'initialisation par désignation"
#: cp/parser.c:22174
#, gcc-internal-format
msgid "%<.%s%> designator used multiple times in the same initializer list"
-msgstr ""
+msgstr "désignateur %<.%s%> utilisé plusieurs fois dans la même liste d'initialiseurs"
#: cp/parser.c:22230 cp/parser.c:22356
#, gcc-internal-format
@@ -46083,10 +45383,9 @@ msgid "qualified name does not name a class"
msgstr "le nom qualifié ne nomme pas une classe"
#: cp/parser.c:22948
-#, fuzzy, gcc-internal-format
-#| msgid "keyword %<typename%> not allowed outside of templates"
+#, gcc-internal-format
msgid "keyword %<template%> not allowed in class-head-name"
-msgstr "le mot-clé %<typename%> n'est pas permis en dehors des patrons"
+msgstr "le mot-clé %<template%> n'est pas permis dans class-head-name (NdT: nom de classe)"
#: cp/parser.c:22954
#, gcc-internal-format
@@ -46119,10 +45418,9 @@ msgid "expected class-key"
msgstr "mot-clé de type classe (class ou struct) attendu"
#: cp/parser.c:23252
-#, fuzzy, gcc-internal-format
-#| msgid "ISO C++ forbids typename key in template template parameter; use -std=c++1z or -std=gnu++1z"
+#, gcc-internal-format
msgid "ISO C++ forbids typename key in template template parameter; use -std=c++17 or -std=gnu++17"
-msgstr "le C++ ISO interdit le mot-clé typename dans un paramètre de patron qui est un patron; utilisez -std=c++1z ou -std=gnu++1z"
+msgstr "le C++ ISO interdit le mot-clé typename dans un paramètre de patron qui est un patron; utilisez -std=c++17 ou -std=gnu++17"
#: cp/parser.c:23256
#, gcc-internal-format
@@ -46145,21 +45443,19 @@ msgid "a storage class on an anonymous aggregate in class scope is not allowed"
msgstr "une classe de stockage sur un agrégat anonyme dans une classe n'est pas permis"
#: cp/parser.c:23640
-#, fuzzy, gcc-internal-format
-#| msgid "extended initializer lists only available with -std=c++11 or -std=gnu++11"
+#, gcc-internal-format
msgid "default member initializers for bit-fields only available with -std=c++2a or -std=gnu++2a"
-msgstr "les listes d'initialisation étendues sont uniquement disponibles avec -std=c++11 ou -std=gnu++11"
+msgstr "les initialiseurs de membre par défaut pour les champs de bits sont uniquement disponibles avec -std=c++2a ou -std=gnu++2a"
#: cp/parser.c:23647
-#, fuzzy, gcc-internal-format
-#| msgid "alignment specified for unnamed bit-field"
+#, gcc-internal-format
msgid "default member initializer for unnamed bit-field"
-msgstr "un alignement est spécifié pour un champ de bits sans nom"
+msgstr "initialiseur d'un membre par défaut pour un champ de bits sans nom"
#: cp/parser.c:23660
#, gcc-internal-format
msgid "ISO C++ allows bit-field attributes only before the %<:%> token"
-msgstr ""
+msgstr "le C++ ISO autorise les attributs de champs de bits uniquement avant l'élément %<:%>"
#: cp/parser.c:23805
#, gcc-internal-format
@@ -46167,10 +45463,9 @@ msgid "pure-specifier on function-definition"
msgstr "spécificateur pur sur une définition de fonction"
#: cp/parser.c:23825
-#, fuzzy, gcc-internal-format
-#| msgid "expected %<;%> after class definition"
+#, gcc-internal-format
msgid "extra %<;%> after in-class function definition"
-msgstr "%<;%> attendu après la définition de la classe"
+msgstr "%<;%> supplémentaire après la définition dans la classe"
#: cp/parser.c:23872
#, gcc-internal-format
@@ -46218,10 +45513,9 @@ msgid "types may not be defined in an exception-specification"
msgstr "les types ne peuvent pas être définis dans une spécification d'exception"
#: cp/parser.c:24352
-#, fuzzy, gcc-internal-format
-#| msgid "ISO C++1z does not allow dynamic exception specifications"
+#, gcc-internal-format
msgid "ISO C++17 does not allow dynamic exception specifications"
-msgstr "le C++1z ISO n'autorise pas la spécification dynamique des exceptions"
+msgstr "le C++17 ISO n'autorise pas la spécification dynamique des exceptions"
#: cp/parser.c:24358
#, gcc-internal-format
@@ -46270,10 +45564,9 @@ msgid "expected attribute before %<...%>"
msgstr "attribut attendu avant %<...%>"
#: cp/parser.c:25299
-#, fuzzy, gcc-internal-format
-#| msgid "attribute using prefix only available with -std=c++1z or -std=gnu++1z"
+#, gcc-internal-format
msgid "attribute using prefix only available with -std=c++17 or -std=gnu++17"
-msgstr "l'attribut de préfixe « using » est uniquement disponible avec -std=c++1z ou -std=gnu++1z"
+msgstr "l'attribut de préfixe « using » est uniquement disponible avec -std=c++17 ou -std=gnu++17"
#: cp/parser.c:25508
#, gcc-internal-format
@@ -46736,10 +46029,9 @@ msgid "%<#pragma GCC ivdep%> must be inside a function"
msgstr "%<#pragma GCC ivdep%> doit être à l'intérieur d'une fonction"
#: cp/parser.c:38734
-#, fuzzy, gcc-internal-format
-#| msgid "%<#pragma GCC ivdep%> must be inside a function"
+#, gcc-internal-format
msgid "%<#pragma GCC unroll%> must be inside a function"
-msgstr "%<#pragma GCC ivdep%> doit être à l'intérieur d'une fonction"
+msgstr "%<#pragma GCC unroll%> doit être à l'intérieur d'une fonction"
#: cp/parser.c:38814
#, gcc-internal-format
@@ -46754,7 +46046,7 @@ msgstr "les patrons implicites ne peuvent pas être %<virtual%>"
#: cp/parser.c:39094
#, gcc-internal-format
msgid "%<extern \"C\"%> linkage started here"
-msgstr ""
+msgstr "édition de liens %<extern \"C\"%> démarrée ici"
#: cp/pt.c:302
#, gcc-internal-format
@@ -46839,10 +46131,9 @@ msgid "specialization of %qD after instantiation"
msgstr "spécialisation de %qD après instanciation"
#: cp/pt.c:1946 cp/semantics.c:5240
-#, fuzzy, gcc-internal-format
-#| msgid "%s %#D"
+#, gcc-internal-format
msgid "%s %#qD"
-msgstr "%s %#D"
+msgstr "%s %#qD"
#: cp/pt.c:2080
#, gcc-internal-format
@@ -46875,10 +46166,9 @@ msgid "variable templates only available with -std=c++14 or -std=gnu++14"
msgstr "les patrons de variables sont uniquement disponibles avec -std=c++14 ou -std=gnu++14"
#: cp/pt.c:2572
-#, fuzzy, gcc-internal-format
-#| msgid "too many template headers for %D (should be %d)"
+#, gcc-internal-format
msgid "too many template headers for %qD (should be %d)"
-msgstr "trop d'en-têtes de patrons pour %D (devrait être %d)"
+msgstr "trop d'en-têtes de patrons pour %qD (devrait être %d)"
#: cp/pt.c:2578
#, gcc-internal-format
@@ -46987,28 +46277,24 @@ msgid "explicit specialization of function concept %qD"
msgstr "spécialisation explicite du concept de fonction %qD"
#: cp/pt.c:3461
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Argument of ACOS at %L must be between -1 and 1"
+#, gcc-internal-format, gfc-internal-format
msgid "argument to __integer_pack must be between 0 and %d"
-msgstr "L'argument de ACOS à %L doit être compris entre -1 et 1"
+msgstr "l'argument de __integer_pack doit être compris entre 0 et %d"
#: cp/pt.c:3778
-#, fuzzy, gcc-internal-format
-#| msgid "base initializer expansion %<%T%> contains no parameter packs"
+#, gcc-internal-format
msgid "base initializer expansion %qT contains no parameter packs"
-msgstr "l'expansion de l'initialisation de base %<%T%> ne contient pas de paquet de paramètres"
+msgstr "l'expansion de l'initialisation de base %qT ne contient pas de paquet de paramètres"
#: cp/pt.c:3846
-#, fuzzy, gcc-internal-format
-#| msgid "expansion pattern %<%T%> contains no argument packs"
+#, gcc-internal-format
msgid "expansion pattern %qT contains no argument packs"
-msgstr "le motif d'expansion %<%T%> ne contient pas de paquet d'arguments"
+msgstr "le motif d'expansion %qT ne contient pas de paquet d'arguments"
#: cp/pt.c:3848
-#, fuzzy, gcc-internal-format
-#| msgid "expansion pattern %<%E%> contains no argument packs"
+#, gcc-internal-format
msgid "expansion pattern %qE contains no argument packs"
-msgstr "le motif d'expansion %<%E%> ne contient pas de paquet d'arguments"
+msgstr "le motif d'expansion %qE ne contient pas de paquet d'arguments"
#: cp/pt.c:3898
#, gcc-internal-format
@@ -47131,10 +46417,9 @@ msgid "default template arguments may not be used in function template friend re
msgstr "les arguments par défaut du patron ne peuvent pas être utilisés dans la redéclaration d'un ami d'un patron d'une fonction"
#: cp/pt.c:5136
-#, fuzzy, gcc-internal-format
-#| msgid "default template arguments may not be used in function template friend declarations"
+#, gcc-internal-format
msgid "default template arguments may not be used in template friend declarations"
-msgstr "les arguments par défaut du patron ne peuvent pas être utilisés dans la déclaration d'un ami d'un patron d'une fonction"
+msgstr "les arguments par défaut du patron ne peuvent pas être utilisés dans les déclarations d'un ami d'un patron"
#: cp/pt.c:5139
#, gcc-internal-format
@@ -47207,10 +46492,9 @@ msgid "template arguments to %qD do not match original template %qD"
msgstr "les arguments du patron %qD ne correspondent pas à ceux du patron original %qD"
#: cp/pt.c:5583
-#, fuzzy, gcc-internal-format
-#| msgid "use template<> for an explicit specialization"
+#, gcc-internal-format
msgid "use %<template<>%> for an explicit specialization"
-msgstr "utilisez template<> pour une spécialisation explicite"
+msgstr "utilisez %<template<>%> pour une spécialisation explicite"
#: cp/pt.c:5710
#, gcc-internal-format
@@ -47301,10 +46585,9 @@ msgid "it must be a pointer-to-member of the form %<&X::Y%>"
msgstr "il doit être un pointeur vers un membre de la forme %<&X::Y%>"
#: cp/pt.c:6146
-#, fuzzy, gcc-internal-format
-#| msgid "%qD is not a member of %qT"
+#, gcc-internal-format
msgid "because it is a member of %qT"
-msgstr "%qD n'est pas un membre de %qT"
+msgstr "car il est un membre de %qT"
#: cp/pt.c:6206
#, gcc-internal-format
@@ -47409,10 +46692,9 @@ msgid "in template argument for type %qT "
msgstr "dans l'argument de patron pour le type %qT "
#: cp/pt.c:6595
-#, fuzzy, gcc-internal-format
-#| msgid "in template argument for type %qT "
+#, gcc-internal-format
msgid "template argument %qE for type %qT not a constant integer"
-msgstr "dans l'argument de patron pour le type %qT "
+msgstr "l'argument de patron %qE pour le type %qT n'est pas un entier constant"
#: cp/pt.c:6656
#, gcc-internal-format
@@ -47645,22 +46927,19 @@ msgid "fold of empty expansion over %O"
msgstr "repli de l'expansion vide sur %O"
#: cp/pt.c:11548
-#, fuzzy, gcc-internal-format
-#| msgid "mismatched argument pack lengths while expanding %<%T%>"
+#, gcc-internal-format
msgid "mismatched argument pack lengths while expanding %qT"
-msgstr "les longueurs des paquets d'arguments sont en désaccord durant l'expansion de %<%T%>"
+msgstr "les longueurs des paquets d'arguments sont en désaccord durant l'expansion de %qT"
#: cp/pt.c:11551
-#, fuzzy, gcc-internal-format
-#| msgid "mismatched argument pack lengths while expanding %<%E%>"
+#, gcc-internal-format
msgid "mismatched argument pack lengths while expanding %qE"
-msgstr "les longueurs des paquets d'arguments sont en désaccord durant l'expansion de %<%E%>"
+msgstr "les longueurs des paquets d'arguments sont en désaccord durant l'expansion de %qE"
#: cp/pt.c:12131
-#, fuzzy, gcc-internal-format
-#| msgid " when instantiating default argument for call to %D"
+#, gcc-internal-format
msgid " when instantiating default argument for call to %qD"
-msgstr " lors de l'instanciation de l'argument par défaut pour l'appel à %D"
+msgstr " lors de l'instanciation de l'argument par défaut pour l'appel à %qD"
#. It may seem that this case cannot occur, since:
#.
@@ -47876,10 +47155,8 @@ msgid "ambiguous template instantiation for %q#D"
msgstr "instanciation de patron ambiguë pour %q#D"
#: cp/pt.c:22356
-#, fuzzy
-#| msgid "%s %#S"
msgid "%s %#qS"
-msgstr "%s %#S"
+msgstr "%s %#qS"
#: cp/pt.c:22380 cp/pt.c:22467
#, gcc-internal-format
@@ -47947,10 +47224,9 @@ msgid "duplicate explicit instantiation of %q#T"
msgstr "instanciation explicite dupliquée de %q#T"
#: cp/pt.c:22910
-#, fuzzy, gcc-internal-format
-#| msgid "explicit specialization of %qD after first use"
+#, gcc-internal-format
msgid "exception specification of %qD depends on itself"
-msgstr "spécialisation explicite de %qD après la première utilisation"
+msgstr "la spécification d'exception %qD dépend d'elle-même"
#. [temp.explicit]
#.
@@ -47980,16 +47256,14 @@ msgid "%q#T is not a valid type for a template non-type parameter"
msgstr "%q#T n'est pas un type valide pour un paramètre non type du patron"
#: cp/pt.c:25005
-#, fuzzy, gcc-internal-format
-#| msgid "keyword %<typename%> not allowed outside of templates"
+#, gcc-internal-format
msgid "keyword %<template%> not allowed in declarator-id"
-msgstr "le mot-clé %<typename%> n'est pas permis en dehors des patrons"
+msgstr "le mot-clé %<template%> n'est pas permis dans declarator-id"
#: cp/pt.c:25242
-#, fuzzy, gcc-internal-format
-#| msgid "deducing from brace-enclosed initializer list requires #include <initializer_list>"
+#, gcc-internal-format
msgid "deducing from brace-enclosed initializer list requires %<#include <initializer_list>%>"
-msgstr "la déduction à partir d'une liste d'initialisation entre accolades requiert #include <initializer_list>"
+msgstr "la déduction à partir d'une liste d'initialisation entre accolades requiert %<#include <initializer_list>%>"
#: cp/pt.c:25698
#, gcc-internal-format
@@ -48002,10 +47276,9 @@ msgid "cannot deduce template arguments for copy-initialization of %qT, as it ha
msgstr "impossible de déduire les arguments du patron pour l'initialisation par copie de %qT car il n'a pas de guides de déduction non explicites ou de constructeur déclaré par l'utilisateur"
#: cp/pt.c:25843
-#, fuzzy, gcc-internal-format
-#| msgid "cannot deduce template arguments for %qT, as it has no deduction guides or user-declared constructors"
+#, gcc-internal-format
msgid "cannot deduce template arguments of %qT, as it has no viable deduction guides"
-msgstr "impossible de déduire les arguments du patron pour %qT car il n'a pas de guides de déduction ou de constructeur déclaré par l'utilisateur"
+msgstr "impossible de déduire les arguments du patron de %qT car il n'a pas de guides de déduction viables"
#: cp/pt.c:25857
#, gcc-internal-format
@@ -48078,16 +47351,14 @@ msgid "can%'t create repository information file %qs"
msgstr "ne peut créer le fichier %qs pour le dépôt d'informations"
#: cp/rtti.c:313
-#, fuzzy, gcc-internal-format
-#| msgid "cannot use typeid with -fno-rtti"
+#, gcc-internal-format
msgid "cannot use %<typeid%> with -fno-rtti"
-msgstr "ne peut utiliser typeid avec -fno-rtti"
+msgstr "ne peut utiliser %<typeid%> avec -fno-rtti"
#: cp/rtti.c:322
-#, fuzzy, gcc-internal-format
-#| msgid "must #include <typeinfo> before using typeid"
+#, gcc-internal-format
msgid "must %<#include <typeinfo>%> before using %<typeid%>"
-msgstr "il faut appeler #include <typeinfo> avant d'utiliser typeid"
+msgstr "il faut appeler %<#include <typeinfo>%> avant d'utiliser %<typeid%>"
#: cp/rtti.c:425
#, gcc-internal-format
@@ -48225,18 +47496,17 @@ msgstr "des accolades explicites sont suggérées autour du corps vide de l'inst
#: cp/semantics.c:1349
#, gcc-internal-format
msgid "catching polymorphic type %q#T by value"
-msgstr ""
+msgstr "interception du type polymorphique %q#T par valeur"
#: cp/semantics.c:1352
#, gcc-internal-format
msgid "catching type %q#T by value"
-msgstr ""
+msgstr "interception du type %q#T par valeur"
#: cp/semantics.c:1356
-#, fuzzy, gcc-internal-format
-#| msgid "creating pointer to member reference type %qT"
+#, gcc-internal-format
msgid "catching non-reference type %q#T"
-msgstr "création d'un pointeur vers le type de référence au membre %qT"
+msgstr "interception du type %q#T qui n'est pas une référence"
#: cp/semantics.c:1550
#, gcc-internal-format
@@ -48698,15 +47968,14 @@ msgid "lambda-expression in a constant expression"
msgstr "expression lambda dans une expression constante"
#: cp/tree.c:3962
-#, fuzzy, gcc-internal-format
-#| msgid "alignment of %qD increased in -fabi-version=9 (GCC 5.2)"
+#, gcc-internal-format
msgid "the calling convention for %qT changes in -fabi-version=12 (GCC 8)"
-msgstr "l'alignement de %qD a augmenté avec -fabi-version=9 (GCC 5.2)"
+msgstr "la convention d'appel pour %qT change avec -fabi-version=12 (GCC 8)"
#: cp/tree.c:3967
#, gcc-internal-format
msgid " because all of its copy and move constructors are deleted"
-msgstr ""
+msgstr " car tous ses constructeurs par copie et déplacement sont supprimés"
#: cp/tree.c:4328
#, gcc-internal-format
@@ -48744,10 +48013,9 @@ msgid "%qE attribute is not supported on this platform"
msgstr "l'attribut %qE n'est pas supporté sur cette plate-forme"
#: cp/tree.c:4465
-#, fuzzy, gcc-internal-format
-#| msgid "redeclaration of %qD adds abi tag %E"
+#, gcc-internal-format
msgid "redeclaration of %qD adds abi tag %qE"
-msgstr "la redéclaration de %qD ajoute l'étiquette d'ABI %E"
+msgstr "la redéclaration de %qD ajoute l'étiquette d'ABI %qE"
#: cp/tree.c:4485
#, gcc-internal-format
@@ -48860,16 +48128,14 @@ msgid "conditional expression between distinct pointer-to-member types %qT and %
msgstr "l'expression conditionnelle entre des pointeurs vers des membres de types distincts %qT et %qT a besoin d'un transtypage"
#: cp/typeck.c:1480
-#, fuzzy, gcc-internal-format
-#| msgid "canonical types differ for identical types %T and %T"
+#, gcc-internal-format
msgid "canonical types differ for identical types %qT and %qT"
-msgstr "les types canoniques diffèrent pour les types identiques %T et %T"
+msgstr "les types canoniques diffèrent pour les types identiques %qT et %qT"
#: cp/typeck.c:1487
-#, fuzzy, gcc-internal-format
-#| msgid "same canonical type node for different types %T and %T"
+#, gcc-internal-format
msgid "same canonical type node for different types %qT and %qT"
-msgstr "nœud de type canonique identique pour les types différents %T et %T"
+msgstr "nœud de type canonique identique pour les types différents %qT et %qT"
#: cp/typeck.c:1617
#, gcc-internal-format
@@ -48954,7 +48220,7 @@ msgstr "le type devant être détruit est %qT, mais le destructeur réfère à %
#: cp/typeck.c:2735
#, gcc-internal-format
msgid "field %q#D can be accessed via %q#D"
-msgstr ""
+msgstr "le champ %q#D peut être accessible via %q#D"
#: cp/typeck.c:2841 cp/typeck.c:2867
#, gcc-internal-format
@@ -49177,10 +48443,8 @@ msgid "unordered comparison on non-floating point argument"
msgstr "comparaison non ordonnée sur un argument n'étant pas en virgule flottante"
#: cp/typeck.c:5157
-#, fuzzy
-#| msgid "implicit conversion from %qT to %qT to match other operand of binary expression"
msgid "implicit conversion from %qH to %qI to match other operand of binary expression"
-msgstr "conversion implicite de %qT vers %qT pour correspondre à d'autres opérandes de l'expression binaire"
+msgstr "conversion implicite de %qH vers %qI pour correspondre à d'autres opérandes de l'expression binaire"
#: cp/typeck.c:5167
#, gcc-internal-format
@@ -49208,16 +48472,14 @@ msgid "invalid use of a pointer to an incomplete type in pointer arithmetic"
msgstr "utilisation invalide d'un pointeur vers un type incomplet dans un pointeur arithmétique"
#: cp/typeck.c:5607
-#, fuzzy, gcc-internal-format
-#| msgid "taking address of constructor %qE"
+#, gcc-internal-format
msgid "taking address of constructor %qD"
-msgstr "prise de l'adresse du destructeur %qE"
+msgstr "prise de l'adresse du destructeur %qD"
#: cp/typeck.c:5608
-#, fuzzy, gcc-internal-format
-#| msgid "taking address of destructor %qE"
+#, gcc-internal-format
msgid "taking address of destructor %qD"
-msgstr "prise de l'adresse du destructeur %qE"
+msgstr "prise de l'adresse du destructeur %qD"
#: cp/typeck.c:5624
#, gcc-internal-format
@@ -49317,10 +48579,9 @@ msgid "use of an operand of type %qT in %<operator--%> is forbidden"
msgstr "l'utilisation d'un opérande du type %qT dans %<operator--%> est interdite"
#: cp/typeck.c:6302
-#, fuzzy, gcc-internal-format
-#| msgid "use of an operand of type %qT in %<operator++%> is forbidden in C++1z"
+#, gcc-internal-format
msgid "use of an operand of type %qT in %<operator++%> is forbidden in C++17"
-msgstr "l'utilisation d'un opérande du type %qT dans %<operator++%> est interdite"
+msgstr "l'utilisation d'un opérande du type %qT dans %<operator++%> est interdite en C++17"
#: cp/typeck.c:6309
#, gcc-internal-format
@@ -49388,16 +48649,14 @@ msgid "reinterpret_cast from type %qT to type %qT casts away qualifiers"
msgstr "utiliser « reinterpret_cast » pour transtyper du type %qT vers le type %qT élimine les qualificatifs"
#: cp/typeck.c:6796
-#, fuzzy, gcc-internal-format
-#| msgid "useless cast to type %qT"
+#, gcc-internal-format
msgid "useless cast to type %q#T"
-msgstr "transtypage inutile vers le type %qT"
+msgstr "transtypage inutile vers le type %q#T"
#: cp/typeck.c:6809
-#, fuzzy, gcc-internal-format
-#| msgid "type qualifiers ignored on function return type"
+#, gcc-internal-format
msgid "type qualifiers ignored on cast result type"
-msgstr "les qualificatifs de type sont ignorés sur le type retourné par la fonction"
+msgstr "les qualificatifs de type sont ignorés sur le type résultant du transtypage"
#: cp/typeck.c:7232
#, gcc-internal-format
@@ -49405,10 +48664,8 @@ msgid "invalid static_cast from type %qT to type %qT"
msgstr "« static_cast » invalide depuis le type %qT vers le type %qT"
#: cp/typeck.c:7258
-#, fuzzy
-#| msgid "converting from %qT to %qT"
msgid "converting from %qH to %qI"
-msgstr "conversion de %qT vers %qT"
+msgstr "conversion de %qH vers %qI"
#: cp/typeck.c:7314
#, gcc-internal-format
@@ -49416,26 +48673,20 @@ msgid "invalid cast of an rvalue expression of type %qT to type %qT"
msgstr "transtypage invalide d'une expression r-valeur du type %qT vers le type %qT"
#: cp/typeck.c:7384
-#, fuzzy
-#| msgid "cast from %qT to %qT loses precision"
msgid "cast from %qH to %qI loses precision"
-msgstr "le transtypage de %qT vers %qT perd en précision"
+msgstr "le transtypage de %qH vers %qI perd en précision"
#: cp/typeck.c:7409
msgid "cast between incompatible function types from %qH to %qI"
-msgstr ""
+msgstr "transtypage entre types de fonctions incompatibles de %qH vers %qI"
#: cp/typeck.c:7420
-#, fuzzy
-#| msgid "comparison between distinct pointer-to-member types %qT and %qT lacks a cast"
msgid "cast between incompatible pointer to member types from %qH to %qI"
-msgstr "la comparaison entre des pointeurs vers des membres de types distincts %qT et %qT a besoin d'un transtypage"
+msgstr "transtypage entre des pointeurs incompatibles vers des types membres de %qH vers %qI"
#: cp/typeck.c:7443 cp/typeck.c:7623
-#, fuzzy
-#| msgid "cast from %qT to %qT increases required alignment of target type"
msgid "cast from %qH to %qI increases required alignment of target type"
-msgstr "le transtypage de %qT vers %qT augmente l'alignement requis pour le type ciblé"
+msgstr "le transtypage de %qH vers %qI augmente l'alignement requis pour le type ciblé"
#: cp/typeck.c:7461
#, gcc-internal-format
@@ -49523,46 +48774,32 @@ msgid "invalid conversion to type %qT from type %qT"
msgstr "conversion invalide vers le type %qT à partir du type %qT"
#: cp/typeck.c:8786
-#, fuzzy
-#| msgid "cannot convert %qT to %qT for argument %qP to %qD"
msgid "cannot convert %qH to %qI for argument %qP to %qD"
-msgstr "ne peut convertir %qT en %qT pour l'argument %qP de %qD"
+msgstr "ne peut convertir %qH en %qI pour l'argument %qP de %qD"
#: cp/typeck.c:8792
-#, fuzzy
-#| msgid "cannot convert %qT to %qT in default argument"
msgid "cannot convert %qH to %qI in default argument"
-msgstr "ne peut convertir %qT en %qT dans l'argument par défaut"
+msgstr "ne peut convertir %qH en %qI dans l'argument par défaut"
#: cp/typeck.c:8796
-#, fuzzy
-#| msgid "cannot convert %qT to %qT in argument passing"
msgid "cannot convert %qH to %qI in argument passing"
-msgstr "ne peut convertir %qT en %qT dans le passage d'argument"
+msgstr "ne peut convertir %qH en %qI dans le passage d'argument"
#: cp/typeck.c:8800
-#, fuzzy
-#| msgid "cannot convert %qT to %qT"
msgid "cannot convert %qH to %qI"
-msgstr "ne peut convertir %qT en %qT"
+msgstr "ne peut convertir %qH en %qI"
#: cp/typeck.c:8804
-#, fuzzy
-#| msgid "cannot convert %qT to %qT in initialization"
msgid "cannot convert %qH to %qI in initialization"
-msgstr "ne peut convertir %qT en %qT dans l'initialisation"
+msgstr "ne peut convertir %qH en %qI dans l'initialisation"
#: cp/typeck.c:8808
-#, fuzzy
-#| msgid "cannot convert %qT to %qT in return"
msgid "cannot convert %qH to %qI in return"
-msgstr "ne peut convertir %qT en %qT dans le retour"
+msgstr "ne peut convertir %qH en %qI dans le retour"
#: cp/typeck.c:8812
-#, fuzzy
-#| msgid "cannot convert %qT to %qT in assignment"
msgid "cannot convert %qH to %qI in assignment"
-msgstr "ne peut convertir %qT en %qT dans l'affectation"
+msgstr "ne peut convertir %qH en %qI dans l'affectation"
#: cp/typeck.c:8825
#, gcc-internal-format
@@ -49664,10 +48901,9 @@ msgid "inconsistent deduction for auto return type: %qT and then %qT"
msgstr "déduction incohérente pour le type de retour auto: %qT et puis %qT"
#: cp/typeck.c:9201
-#, fuzzy, gcc-internal-format
-#| msgid "return-statement with no value, in function returning %qT"
+#, gcc-internal-format
msgid "return-statement with a value, in function returning %qT"
-msgstr "instruction « return » sans valeur dans une fonction retournant %qT"
+msgstr "instruction « return » avec une valeur dans une fonction retournant %qT"
#: cp/typeck.c:9230
#, gcc-internal-format
@@ -49819,7 +49055,7 @@ msgstr " parce que les fonctions virtuelles suivantes sont pures dans %qT:"
#: cp/typeck2.c:388
#, gcc-internal-format
msgid "\t%#qD"
-msgstr ""
+msgstr "\t%#qD"
#: cp/typeck2.c:441
#, gcc-internal-format
@@ -49902,16 +49138,12 @@ msgid "constructor syntax used, but no constructor declared for type %qT"
msgstr "syntaxe de constructeur utilisée mais aucun constructeur déclaré pour le type %qT"
#: cp/typeck2.c:962
-#, fuzzy
-#| msgid "narrowing conversion of %qE from %qT to %qT inside { } is ill-formed in C++11"
msgid "narrowing conversion of %qE from %qH to %qI inside { } is ill-formed in C++11"
-msgstr "la conversion réductrice de %qE depuis %qT vers %qT à l'intérieur de { } est mal formée en C++11"
+msgstr "la conversion réductrice de %qE depuis %qH vers %qI à l'intérieur de { } est mal formée en C++11"
#: cp/typeck2.c:973 cp/typeck2.c:987
-#, fuzzy
-#| msgid "narrowing conversion of %qE from %qT to %qT inside { }"
msgid "narrowing conversion of %qE from %qH to %qI inside { }"
-msgstr "conversion réductrice de %qE depuis %qT vers %qT à l'intérieur de { }"
+msgstr "conversion réductrice de %qE depuis %qH vers %qI à l'intérieur de { }"
#: cp/typeck2.c:977
#, gcc-internal-format
@@ -49954,10 +49186,9 @@ msgid "member %qD with uninitialized reference fields"
msgstr "membre %qD avec des champs de référence non initialisés"
#: cp/typeck2.c:1576
-#, fuzzy, gcc-internal-format
-#| msgid "type of %qD does not match original declaration"
+#, gcc-internal-format
msgid "designator order for field %qD does not match declaration order in %qT"
-msgstr "le type de %qD ne correspond pas à la déclaration originale"
+msgstr "l'ordre du désignateur pour le champ %qD ne correspond pas à l'ordre de la déclaration dans %qT"
#: cp/typeck2.c:1648
#, gcc-internal-format
@@ -50015,10 +49246,9 @@ msgid "pointer-to-member-function type %qT requires an lvalue"
msgstr "le type pointeur vers une fonction membre %qT requiert une l-valeur"
#: cp/typeck2.c:2025
-#, fuzzy, gcc-internal-format
-#| msgid "pointer-to-member-function type %qT requires an lvalue"
+#, gcc-internal-format
msgid "pointer-to-member-function type %qT requires an lvalue before C++2a"
-msgstr "le type pointeur vers une fonction membre %qT requiert une l-valeur"
+msgstr "le type pointeur vers une fonction membre %qT requiert une l-valeur avant C++2a"
#: cp/typeck2.c:2068
#, gcc-internal-format
@@ -50246,10 +49476,9 @@ msgid "Invalid form of array reference at %C"
msgstr "Forme invalide pour la référence de tableau à %C"
#: fortran/array.c:203
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Array reference at %C cannot have more than %d dimensions"
+#, gcc-internal-format, gfc-internal-format
msgid "Array reference at %C has more than 7 dimensions"
-msgstr "La référence de tableau à %C ne peut pas avoir plus de %d dimensions"
+msgstr "La référence de tableau à %C a plus de 7 dimensions"
#: fortran/array.c:206 fortran/array.c:307
#, gcc-internal-format, gfc-internal-format
@@ -50272,10 +49501,9 @@ msgid "Unexpected coarray designator at %C"
msgstr "Désignateur de co-tableau inattendu à %C"
#: fortran/array.c:249
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "STAT= attribute in %C misplaced"
+#, gcc-internal-format, gfc-internal-format
msgid "TEAM= attribute in %C misplaced"
-msgstr "Attribut STAT= mal placé dans %C"
+msgstr "Attribut TEAM= mal placé dans %C"
#: fortran/array.c:261
#, gcc-internal-format, gfc-internal-format
@@ -50468,10 +49696,9 @@ msgid "Array constructor value at %L shall not be unlimited polymorphic [F2008:
msgstr "La valeur du constructeur du tableau à %L ne sera point polymorphique sans limite [F2008: C4106]"
#: fortran/array.c:2041
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Different CHARACTER lengths (%d/%d) in array constructor at %L"
+#, gcc-internal-format, gfc-internal-format
msgid "Different CHARACTER lengths (%ld/%ld) in array constructor at %L"
-msgstr "Longueurs de CHARACTER différentes (%d/%d) dans le constructeur du tableau à %L"
+msgstr "Longueurs de CHARACTER différentes (%ld/%ld) dans le constructeur du tableau à %L"
#: fortran/array.c:2160
#, gcc-internal-format
@@ -50484,17 +49711,15 @@ msgid "gfc_ref_dimen_size(): Bad dimension"
msgstr "gfc_ref_dimen_size(): Mauvaise dimension"
#: fortran/array.c:2223
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Bad array reference at %L"
+#, gcc-internal-format, gfc-internal-format
msgid "Bad array dimension at %L"
-msgstr "Mauvaise référence à un tableau à %L"
+msgstr "Mauvaise dimension de tableau à %L"
#: fortran/array.c:2249 fortran/data.c:552 fortran/data.c:571
#: fortran/data.c:585 fortran/data.c:714
-#, fuzzy, gcc-internal-format
-#| msgid "gimplification failed"
+#, gcc-internal-format
msgid "Simplification error"
-msgstr "la gimplification a échoué"
+msgstr "Erreur de simplification"
#: fortran/array.c:2359
#, gcc-internal-format
@@ -50518,10 +49743,9 @@ msgstr "gfc_find_array_ref(): Pas de référence trouvée"
#. if (c == 0)
#: fortran/bbt.c:119
-#, fuzzy, gcc-internal-format
-#| msgid "insert_bbt(): Duplicate key found!"
+#, gcc-internal-format
msgid "insert_bbt(): Duplicate key found"
-msgstr "insert_bbt(): Clé dupliquée trouvée !"
+msgstr "insert_bbt(): Clé dupliquée trouvée"
#: fortran/check.c:46
#, gcc-internal-format
@@ -50544,16 +49768,14 @@ msgid "%qs argument of %qs intrinsic at %L must be INTEGER or REAL"
msgstr "L'argument %qs de l'intrinsèque %qs à %L doit être INTEGER ou REAL"
#: fortran/check.c:129
-#, fuzzy, gcc-internal-format
-#| msgid "Expected coarray variable as %qs argument to the %s intrinsic at %L"
+#, gcc-internal-format
msgid "Fortran 2003: Character for %qs argument of %qs intrinsic at %L"
-msgstr "Variable co-tableau attendue comme argument %qs de l'intrinsèque %s à %L"
+msgstr "Fortran 2003: Caractère pour l'argument %qs de l'intrinsèque %qs à %L"
#: fortran/check.c:136
-#, fuzzy, gcc-internal-format
-#| msgid "%<a1%> argument of %qs intrinsic at %L must be INTEGER, REAL or CHARACTER"
+#, gcc-internal-format
msgid "%qs argument of %qs intrinsic at %L must be INTEGER or REAL or CHARACTER"
-msgstr "L'argument %<a1%> de l'intrinsèque %qs à %L doit être INTEGER, REAL ou CHARACTER"
+msgstr "L'argument %qs de l'intrinsèque %qs à %L doit être INTEGER, REAL ou CHARACTER"
#: fortran/check.c:159
#, gcc-internal-format
@@ -50865,8 +50087,7 @@ msgid "The function passed as OPERATOR at %L shall have two arguments"
msgstr "La fonction passée comme OPERATOR à %L aura deux arguments"
#: fortran/check.c:1786
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "A argument at %L has type %s but the function passed as OPERATOR at %L returns %s"
+#, gcc-internal-format, gfc-internal-format
msgid "The A argument at %L has type %s but the function passed as OPERATOR at %L returns %s"
msgstr "L'argument A à %L a le type %s mais la fonction passée comme OPERATOR à %L retourne %s"
@@ -50954,16 +50175,14 @@ msgid "%<I%> at %L and %<J%>' at %L cannot both be BOZ literal constants"
msgstr "%<I%> à %L et %<J%> à %L ne peuvent pas être tous les deux des constantes littérales BOZ"
#: fortran/check.c:2274
-#, fuzzy, gcc-internal-format
-#| msgid "%qs argument of %qs intrinsic at %L must be the same type and kind as %qs"
+#, gcc-internal-format
msgid "%qs must be of same type and kind as %qs at %L in %qs"
-msgstr "L'argument %qs de l'intrinsèque %qs à %L doit être du même type et du même sous-type que %qs"
+msgstr "%qs doit être du même type et du même sous-type que %qs à %L dans %qs"
#: fortran/check.c:2332
-#, fuzzy, gcc-internal-format
-#| msgid "%qs argument of %qs intrinsic at %L cannot be of type %s"
+#, gcc-internal-format
msgid "Missing %qs argument to %qs intrinsic at %L for %qs of type %qs"
-msgstr "L'argument %qs de l'intrinsèque %qs à %L ne peut pas être du type %s"
+msgstr "L'argument %qs de l'intrinsèque %qs est manquant à %L pour %qs du type %qs"
#: fortran/check.c:2351
#, gcc-internal-format, gfc-internal-format
@@ -51061,10 +50280,9 @@ msgid "%qs argument of %qs intrinsic at %L must be of rank 1 or 2"
msgstr "L'argument %qs de l'intrinsèque %qs à %L doit être de rang 1 ou 2"
#: fortran/check.c:3307
-#, fuzzy, gcc-internal-format
-#| msgid "%qs argument of %qs intrinsic at %L not yet supported"
+#, gcc-internal-format
msgid "BACK argument to %qs intrinsic not yet implemented"
-msgstr "L'argument %qs de l'intrinsèque %qs à %L n'est pas encore supporté"
+msgstr "L'argument BACK de l'intrinsèque %qs n'est pas encore implémenté"
#: fortran/check.c:3460
#, gcc-internal-format
@@ -51407,10 +50625,9 @@ msgid "FAILED= argument to NUM_IMAGES at %L"
msgstr "Argument FAILED= pour NUM_IMAGES à %L"
#: fortran/check.c:5306
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "EVENT argument at %L to the intrinsic EVENT_QUERY shall be of type EVENT_TYPE"
+#, gcc-internal-format, gfc-internal-format
msgid "TEAM argument at %L to the intrinsic TEAM_NUMBER shall be of type TEAM_TYPE"
-msgstr "L'argument EVENT à %L pour l'intrinsèque EVENT_QUERY sera du type EVENT_TYPE"
+msgstr "L'argument TEAM à %L pour l'intrinsèque TEAM_NUMBER sera du type TEAM_TYPE"
#: fortran/check.c:5332
#, gcc-internal-format, gfc-internal-format
@@ -51550,10 +50767,9 @@ msgid "Unused initialization string at %L because variable has zero length"
msgstr "Chaîne d'initialisation inutilisée à %L car la variable a une longueur nulle"
#: fortran/data.c:176
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Initialization string at %L was truncated to fit the variable (%d/%d)"
+#, gcc-internal-format, gfc-internal-format
msgid "Initialization string at %L was truncated to fit the variable (%ld/%ld)"
-msgstr "La chaine d'initialisation à %L a été tronquée pour tenir dans la variable (%d/%d)"
+msgstr "La chaine d'initialisation à %L a été tronquée pour tenir dans la variable (%ld/%ld)"
#: fortran/data.c:265
#, gcc-internal-format
@@ -51641,10 +50857,9 @@ msgid "End of scalar initializer expected at %C"
msgstr "Fin de l'initialisation du scalaire attendue à %C"
#: fortran/decl.c:744
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Empty old style initializer list at %C"
+#, gcc-internal-format, gfc-internal-format
msgid "Expected constant array-spec in initializer list at %L"
-msgstr "Liste d'initialisation vide dans l'ancien style à %C"
+msgstr "array-spec contant attendu dans la liste d'initialisation à %L"
#: fortran/decl.c:753
#, gcc-internal-format, gfc-internal-format
@@ -51777,16 +50992,14 @@ msgid "CHARACTER length must be a constant at %L"
msgstr "La longueur de CHARACTER doit être une constante à %L"
#: fortran/decl.c:1567
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "CHARACTER expression at %L is being truncated (%d/%d)"
+#, gcc-internal-format, gfc-internal-format
msgid "CHARACTER expression at %L is being truncated (%ld/%ld)"
-msgstr "L'expression CHARACTER à %L est tronquée (%d/%d)"
+msgstr "L'expression CHARACTER à %L est tronquée (%ld/%ld)"
#: fortran/decl.c:1575
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "The CHARACTER elements of the array constructor at %L must have the same length (%d/%d)"
+#, gcc-internal-format, gfc-internal-format
msgid "The CHARACTER elements of the array constructor at %L must have the same length (%ld/%ld)"
-msgstr "Les éléments CHARACTER dans le constructeur du tableau à %L doivent avoir la même longueur (%d/%d)"
+msgstr "Les éléments CHARACTER dans le constructeur du tableau à %L doivent avoir la même longueur (%ld/%ld)"
#: fortran/decl.c:1666
#, gcc-internal-format
@@ -51854,10 +51067,9 @@ msgid "Array component of structure at %C must have an explicit shape"
msgstr "Le composant tableau de structures à %C doit avoir une forme explicite"
#: fortran/decl.c:2041
-#, fuzzy, gcc-internal-format
-#| msgid "a parameter list with an ellipsis can%'t match an empty parameter name list declaration"
+#, gcc-internal-format
msgid "Type parameter %qs at %C has no corresponding entry in the type parameter name list at %L"
-msgstr "une liste de paramètres avec élision ne peut concorder avec la déclaration d'une liste de noms de paramètres vide"
+msgstr "Le paramètre de type %qs à %C n'a pas d'entrée correspondante dans la liste des noms de paramètres de types à %L"
#: fortran/decl.c:2098
#, gcc-internal-format, gfc-internal-format
@@ -51890,22 +51102,19 @@ msgid "Function name %qs not allowed at %C"
msgstr "Le nom de fonction %qs n'est pas permis à %C"
#: fortran/decl.c:2243
-#, fuzzy, gcc-internal-format
-#| msgid "VALUE is not allowed inside of BLOCK at %C"
+#, gcc-internal-format
msgid "%qs not allowed outside STRUCTURE at %C"
-msgstr "VALUE n'est pas autorisé à l'intérieur de BLOCK à %C"
+msgstr "%qs n'est pas autorisé en dehors de STRUCTURE à %C"
#: fortran/decl.c:2245
-#, fuzzy, gcc-internal-format
-#| msgid "STRUCTURE at %C is a DEC extension, enable with -fdec-structure"
+#, gcc-internal-format
msgid "%qs at %C is a DEC extension, enable with %<-fdec-structure%>"
-msgstr "STRUCTURE à %C est une extension DEC, activez-la avec -fdec-structure"
+msgstr "%qs à %C est une extension DEC, activez-la avec %<-fdec-structure%>"
#: fortran/decl.c:2252
-#, fuzzy, gcc-internal-format
-#| msgid "%qs function cannot have arguments"
+#, gcc-internal-format
msgid "%qs entity cannot have attributes at %C"
-msgstr "la fonction avec l'attribut %qs ne peut pas avoir d'argument"
+msgstr "L'entité %qs ne peut pas avoir d'attribut à %C"
#: fortran/decl.c:2289
#, gcc-internal-format
@@ -51923,10 +51132,9 @@ msgid "%qs at %C is a redefinition of the declaration in the corresponding inter
msgstr "%qs à %C est une redéfinition de la déclaration dans l'interface correspondante pour MODULE PROCEDURE %qs"
#: fortran/decl.c:2363
-#, fuzzy, gcc-internal-format
-#| msgid "Dummy %qs at %L cannot have an initializer"
+#, gcc-internal-format
msgid "%qs entity cannot have an initializer at %C"
-msgstr "Le muet %qs à %L ne peut pas avoir une initialisation"
+msgstr "L'entité %qs ne peut pas avoir un initialiseur à %C"
#: fortran/decl.c:2389 fortran/decl.c:8199
#, gcc-internal-format, gfc-internal-format
@@ -51981,19 +51189,17 @@ msgstr "L'initialisation du composant allouable à %C n'est pas permise"
#: fortran/decl.c:2561
#, gcc-internal-format, gfc-internal-format
msgid "The component with KIND or LEN attribute at %C does not not appear in the type parameter list at %L"
-msgstr ""
+msgstr "Le composant avec l'attribut KIND ou LEN à %C n'apparaît pas dans la liste des paramètres de type à %L"
#: fortran/decl.c:2569
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Entity %qs at %L has a deferred type parameter and requires either the POINTER or ALLOCATABLE attribute"
+#, gcc-internal-format, gfc-internal-format
msgid "The component at %C that appears in the type parameter list at %L has neither the KIND nor LEN attribute"
-msgstr "L'entité %qs à %L a un paramètre de type différé et requiert soit l'attribut POINTER ou ALLOCATABLE"
+msgstr "Le composant à %C qui apparaît dans la liste des paramètres de types à %L n'a ni l'attribut KIND ni l'attribut LEN"
#: fortran/decl.c:2577
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "The pointer component %qs of %qs at %L is a type that has not been declared"
+#, gcc-internal-format, gfc-internal-format
msgid "The component at %C which is a type parameter must be a scalar"
-msgstr "Le composant pointeur %qs de %qs à %L est un type qui n'a pas été déclaré"
+msgstr "Le composant à %C, qui est un paramètre de type, doit être un scalaire"
#: fortran/decl.c:2640 fortran/decl.c:2676
#, gcc-internal-format, gfc-internal-format
@@ -52058,47 +51264,42 @@ msgstr "Nom de structure attendu après RECORD à %C"
#: fortran/decl.c:3247
#, gcc-internal-format, gfc-internal-format
msgid "The type parameter spec list at %C cannot contain both ASSUMED and DEFERRED parameters"
-msgstr ""
+msgstr "La liste de spec des paramètres de type à %C ne peut pas contenir les paramètres ASSUMED et DEFERRED en même temps"
#: fortran/decl.c:3271
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Kind type parameter for entity at %L differs from the kind type parameter of the typespec"
+#, gcc-internal-format, gfc-internal-format
msgid "The type parameter spec list at %C does not contain enough parameter expressions"
-msgstr "Le paramètre de sous-type pour l'entité à %L diffère du paramètre de sous-type du typespec"
+msgstr "La liste de spec des paramètres de types à %C ne contient pas assez d'expressions de paramètres"
#: fortran/decl.c:3295
-#, fuzzy, gcc-internal-format
-#| msgid "the first parameter of %<operator new%> cannot have a default argument"
+#, gcc-internal-format
msgid "The derived parameter '%qs' at %C does not have a default value"
-msgstr "le premier paramètre de %<operator new%> ne peut pas avoir d'argument par défaut"
+msgstr "Le paramètre dérivé %qs à %C n'a pas de valeur par défaut"
#: fortran/decl.c:3327
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Expression at %L must be of INTEGER type, found %s"
+#, gcc-internal-format, gfc-internal-format
msgid "The parameter expression at %C must be of INTEGER type and not %s type"
-msgstr "L'expression à %L doit être du type INTEGER et non %s"
+msgstr "L'expression paramètre à %C doit être de type INTEGER et non de type %s"
#: fortran/decl.c:3355
#, gcc-internal-format
msgid "The KIND parameter '%qs' at %C cannot either be ASSUMED or DEFERRED"
-msgstr ""
+msgstr "Le paramètre KIND %qs à %C ne peut pas être ASSUMED ou DEFERRED"
#: fortran/decl.c:3362
-#, fuzzy, gcc-internal-format
-#| msgid "Array %qs at %L is a variable, which does not reduce to a constant expression"
+#, gcc-internal-format
msgid "The value for the KIND parameter '%qs' at %C does not reduce to a constant expression"
-msgstr "Le tableau %qs à %L est une variable qui ne se réduit pas en une expression constante"
+msgstr "La valeur pour le paramètre KIND à %qs à %C ne se réduit pas en une expression constante"
#: fortran/decl.c:3377
#, gcc-internal-format, gfc-internal-format
msgid "The type parameter spec list at %C contains too many parameter expressions"
-msgstr ""
+msgstr "La liste de spec des paramètres de type à %C contient trop d'expressions de paramètres"
#: fortran/decl.c:3386
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "parametrized derived type argument"
+#, gcc-internal-format, gfc-internal-format
msgid "Parameterized derived type at %C is ambiguous"
-msgstr "argument de type dérivé paramétrisé"
+msgstr "Le type dérivé paramétrisé à %C est ambigu"
#: fortran/decl.c:3649
#, gcc-internal-format, gfc-internal-format
@@ -52228,10 +51429,9 @@ msgid "Duplicate %s attribute at %L"
msgstr "Attribut %s dupliqué à %L"
#: fortran/decl.c:4954
-#, fuzzy, gcc-internal-format
-#| msgid "%s at %L is a DEC extension, enable with -fdec-static"
+#, gcc-internal-format
msgid "%s at %L is a DEC extension, enable with %<-fdec-static%>"
-msgstr "%s à %L est une extension DEC, activez-la avec -fdec-static"
+msgstr "%s à %L est une extension DEC, activez-la avec %<-fdec-static%>"
#: fortran/decl.c:4971
#, gcc-internal-format, gfc-internal-format
@@ -52239,40 +51439,34 @@ msgid "ALLOCATABLE attribute at %C in a TYPE definition"
msgstr "Attribut ALLOCATABLE à %C dans une définition TYPE"
#: fortran/decl.c:4980
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Attribute %s at %L in a TYPE definition"
+#, gcc-internal-format, gfc-internal-format
msgid "KIND attribute at %C in a TYPE definition"
-msgstr "Attribut %s à %L dans une définition TYPE"
+msgstr "Attribut KIND à %C dans une définition TYPE"
#: fortran/decl.c:4988
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "%qs argument of %qs intrinsic at %L must be INTEGER"
+#, gcc-internal-format, gfc-internal-format
msgid "Component with KIND attribute at %C must be INTEGER"
-msgstr "L'argument %qs de l'intrinsèque %qs à %L doit être un INTEGER"
+msgstr "Le composant avec l'attribut KIND à %C doit être un INTEGER"
#: fortran/decl.c:4995
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Component %qs with CLASS at %C must be allocatable or pointer"
+#, gcc-internal-format, gfc-internal-format
msgid "Component with KIND attribute at %C must be default integer kind (%d)"
-msgstr "Le composant %qs avec CLASS à %C doit être allouable ou un pointeur"
+msgstr "Le composant avec l'attribut KIND à %C doit être du sous-type entier par défaut (%d)"
#: fortran/decl.c:5004
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "ALLOCATABLE attribute at %C in a TYPE definition"
+#, gcc-internal-format, gfc-internal-format
msgid "LEN attribute at %C in a TYPE definition"
-msgstr "Attribut ALLOCATABLE à %C dans une définition TYPE"
+msgstr "Attribut LEN à %C dans une définition TYPE"
#: fortran/decl.c:5012
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "%qs argument of %qs intrinsic at %L must be INTEGER"
+#, gcc-internal-format, gfc-internal-format
msgid "Component with LEN attribute at %C must be INTEGER"
-msgstr "L'argument %qs de l'intrinsèque %qs à %L doit être un INTEGER"
+msgstr "Le composant avec l'attribut LEN à %C doit être un INTEGER"
#: fortran/decl.c:5019
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Component %qs with CLASS at %C must be allocatable or pointer"
+#, gcc-internal-format, gfc-internal-format
msgid "Component with LEN attribute at %C must be default integer kind (%d)"
-msgstr "Le composant %qs avec CLASS à %C doit être allouable ou un pointeur"
+msgstr "Le composant avec l'attribut LEN à %C doit être du sous-type entier par défaut (%d)"
#: fortran/decl.c:5028
#, gcc-internal-format, gfc-internal-format
@@ -52290,10 +51484,9 @@ msgid "%s attribute at %L is not allowed outside of the specification part of a
msgstr "L'attribut %s à %L n'est pas permis en dehors de la partie de la spécification d'un module"
#: fortran/decl.c:5066
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Attribute at %L is not allowed in a TYPE definition"
+#, gcc-internal-format, gfc-internal-format
msgid "Attribute at %L is not allowed outside a TYPE definition"
-msgstr "L'attribut à %L n'est pas permis dans une définition TYPE"
+msgstr "L'attribut à %L n'est pas permis en dehors d'une définition TYPE"
#: fortran/decl.c:5079
#, gcc-internal-format, gfc-internal-format
@@ -52458,10 +51651,9 @@ msgid "Alternate-return argument at %C"
msgstr "Argument de retour alternatif à %C"
#: fortran/decl.c:5970 fortran/decl.c:5978
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Left parenthesis required after %<*%>"
+#, gcc-internal-format, gfc-internal-format
msgid "A parameter name is required at %C"
-msgstr "Parenthèse gauche requise après %<*%>"
+msgstr "Un nom de paramètre est requis à %C"
#: fortran/decl.c:6018
#, gcc-internal-format
@@ -52469,10 +51661,9 @@ msgid "Name %qs at %C is the name of the procedure"
msgstr "Le nom %qs à %C est le nom de la procédure"
#: fortran/decl.c:6031
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Expected another dimension in array declaration at %C"
+#, gcc-internal-format, gfc-internal-format
msgid "Expected parameter list in type declaration at %C"
-msgstr "Une autre dimension est attendue dans la déclaration de tableau à %C"
+msgstr "Liste de paramètres attendue dans la déclaration du type à %C"
#: fortran/decl.c:6034
#, gcc-internal-format, gfc-internal-format
@@ -52480,10 +51671,9 @@ msgid "Unexpected junk in formal argument list at %C"
msgstr "Rebut inattendu dans la liste d'arguments formels à %C"
#: fortran/decl.c:6052
-#, fuzzy, gcc-internal-format
-#| msgid "Duplicate name %qs in association at %C"
+#, gcc-internal-format
msgid "Duplicate name %qs in parameter list at %C"
-msgstr "Nom %qs dupliqué dans l'association à %C"
+msgstr "Nom %qs en double dans la liste des paramètres à %C"
#: fortran/decl.c:6055
#, gcc-internal-format
@@ -52895,10 +52085,9 @@ msgid "Unexpected characters in PARAMETER statement at %C"
msgstr "Caractères inattendus dans l'instruction PARAMETER à %C"
#: fortran/decl.c:8729 fortran/decl.c:8785
-#, fuzzy, gcc-internal-format
-#| msgid "%s at %L is a DEC extension, enable with -fdec-static"
+#, gcc-internal-format
msgid "%s at %C is a DEC extension, enable with %<-fdec-static%>"
-msgstr "%s à %L est une extension DEC, activez-la avec -fdec-static"
+msgstr "%s à %C est une extension DEC, activez-la avec %<-fdec-static%>"
#: fortran/decl.c:8764
#, gcc-internal-format, gfc-internal-format
@@ -53051,10 +52240,9 @@ msgid "Junk after UNION statement at %C"
msgstr "Rebut après l'instruction UNION à %C"
#: fortran/decl.c:9546
-#, fuzzy, gcc-internal-format
-#| msgid "STRUCTURE at %C is a DEC extension, enable with -fdec-structure"
+#, gcc-internal-format
msgid "%s at %C is a DEC extension, enable with %<-fdec-structure%>"
-msgstr "STRUCTURE à %C est une extension DEC, activez-la avec -fdec-structure"
+msgstr "%s à %C est une extension DEC, activez-la avec %<-fdec-structure%>"
#: fortran/decl.c:9560
#, gcc-internal-format, gfc-internal-format
@@ -53092,10 +52280,9 @@ msgid "Derived type definition of %qs at %C has already been defined"
msgstr "La définition du type dérivé %qs à %C a déjà été défini"
#: fortran/decl.c:9862
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Syntax error in CHARACTER declaration at %C"
+#, gcc-internal-format, gfc-internal-format
msgid "Garbage after PARAMETERIZED TYPE declaration at %C"
-msgstr "Erreur de syntaxe dans la déclaration CHARACTER à %C"
+msgstr "Rebut après la déclaration PARAMETERIZED TYPE à %C"
#: fortran/decl.c:9946
#, gcc-internal-format, gfc-internal-format
@@ -53313,10 +52500,9 @@ msgid "Unknown procedure name %qs at %C"
msgstr "Nom de procédure %qs inconnu à %C"
#: fortran/decl.c:10854
-#, fuzzy, gcc-internal-format
-#| msgid "%qs at %C is already defined as FINAL procedure!"
+#, gcc-internal-format
msgid "%qs at %C is already defined as FINAL procedure"
-msgstr "%qs à %C est déjà défini comme procédure FINAL !"
+msgstr "%qs à %C est déjà défini comme procédure FINAL"
#: fortran/decl.c:10924
#, gcc-internal-format, gfc-internal-format
@@ -53331,13 +52517,12 @@ msgstr "Erreur de syntaxe dans l'instruction !GCC$ ATTRIBUTES à %C"
#: fortran/decl.c:10990
#, gcc-internal-format
msgid "%<GCC unroll%> directive requires a non-negative integral constant less than or equal to %u at %C"
-msgstr ""
+msgstr "Directive %<GCC unroll%> requiert une constante entière non négative plus petite ou égale à %u à %C"
#: fortran/decl.c:11004
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Syntax error in FORALL iterator at %C"
+#, gcc-internal-format, gfc-internal-format
msgid "Syntax error in !GCC$ UNROLL directive at %C"
-msgstr "Erreur de syntaxe dans l'itérateur FORALL à %C"
+msgstr "Erreur de syntaxe dans la directive !GCC$ UNROLL à %C"
#: fortran/dependency.c:105
#, gcc-internal-format
@@ -53380,10 +52565,9 @@ msgid "show_ref(): Bad component code"
msgstr "show_ref(): Mauvais code de composant"
#: fortran/dump-parse-tree.c:575
-#, fuzzy, gcc-internal-format
-#| msgid "show_expr(): Bad intrinsic in expression!"
+#, gcc-internal-format
msgid "show_expr(): Bad intrinsic in expression"
-msgstr "show_expr(): Mauvais intrinsèque dans l'expression !"
+msgstr "show_expr(): Mauvais intrinsèque dans l'expression"
#: fortran/dump-parse-tree.c:618
#, gcc-internal-format
@@ -53396,10 +52580,9 @@ msgid "show_code_node(): Bad statement code"
msgstr "show_code_node(): Mauvais code d'instruction"
#: fortran/dump-parse-tree.c:3150 fortran/dump-parse-tree.c:3242
-#, fuzzy, gcc-internal-format
-#| msgid "cannot convert to a pointer type"
+#, gcc-internal-format
msgid "Cannot convert %qs to interoperable type at %L"
-msgstr "ne peut convertir en un type pointeur"
+msgstr "Ne peut convertir %qs en un type interopérable à %L"
#: fortran/error.c:335
#, gcc-internal-format, gfc-internal-format
@@ -53697,10 +52880,9 @@ msgid "Arithmetic NaN of bit-wise transferred BOZ at %L. This check can be disab
msgstr "NaN (pas un nombre) arithmétique du BOZ transféré bit à bit à %L. Cette vérification peut être désactivée avec l'option %<-fno-range-check%>"
#: fortran/expr.c:3386
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Sorry, the event component of derived type at %L is not yet supported"
+#, gcc-internal-format, gfc-internal-format
msgid "The assignment to a KIND or LEN component of a parameterized type at %L is not allowed"
-msgstr "Désolé, le composant de l'événement du type dérivé à %L n'est pas encore supporté"
+msgstr "L'affectation à un composant KIND ou LEN d'un type paramétrisé à %L n'est pas permis"
#: fortran/expr.c:3407
#, gcc-internal-format, gfc-internal-format
@@ -53883,7 +53065,7 @@ msgstr "La cible de l'affectation du pointeur a l'attribut PROTECTED à %L"
#: fortran/expr.c:3917
#, gcc-internal-format, gfc-internal-format
msgid "Assignment to contiguous pointer from non-contiguous target at %L"
-msgstr ""
+msgstr "Affectation à un pointeur contigu depuis une cible non contigüe à %L"
#: fortran/expr.c:3956
#, gcc-internal-format, gfc-internal-format
@@ -54028,16 +53210,14 @@ msgid "Removing call to function %qs at %L"
msgstr "Suppression de l'appel à la fonction %qs à %L"
#: fortran/frontend-passes.c:1263 fortran/frontend-passes.c:1302
-#, fuzzy, gcc-internal-format
-#| msgid "expected expression"
+#, gcc-internal-format
msgid "bad expression"
-msgstr "expression attendue"
+msgstr "mauvaise expression"
#: fortran/frontend-passes.c:1298
-#, fuzzy, gcc-internal-format
-#| msgid "bad move"
+#, gcc-internal-format
msgid "bad op"
-msgstr "mauvais déplacement"
+msgstr "mauvais op"
#: fortran/frontend-passes.c:2151
#, gcc-internal-format
@@ -54055,16 +53235,14 @@ msgid "Variable %qs at %L not definable inside loop beginning at %L as INTENT(IN
msgstr "La variable %qs à %L n'est pas définissable à l'intérieur de la boucle commençant à %L comme argument INTENT(INOUT) de la sous-routine %qs"
#: fortran/frontend-passes.c:2627 fortran/frontend-passes.c:2651
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Array reference at %L is out of bounds (%ld < %ld) in codimension %d"
+#, gcc-internal-format, gfc-internal-format
msgid "Array reference at %L out of bounds (%ld < %ld) in loop beginning at %L"
-msgstr "La référence au tableau à %L est en dehors des limites (%ld < %ld) dans la co-dimension %d"
+msgstr "La référence au tableau à %L est en dehors des limites (%ld < %ld) dans la boucle commençant à %L"
#: fortran/frontend-passes.c:2636 fortran/frontend-passes.c:2660
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Array reference at %L is out of bounds (%ld > %ld) in codimension %d"
+#, gcc-internal-format, gfc-internal-format
msgid "Array reference at %L out of bounds (%ld > %ld) in loop beginning at %L"
-msgstr "La référence au tableau à %L est en dehors des limites (%ld > %ld) dans la co-dimension %d"
+msgstr "La référence au tableau à %L est en dehors des limites (%ld > %ld) dans la boucle commençant à %L"
#: fortran/frontend-passes.c:2720
#, gcc-internal-format
@@ -54087,10 +53265,9 @@ msgid "Scalarization using DIMEN_RANGE unimplemented"
msgstr "La transformation en scalaire grâce à DIMEN_RANGE n'est pas implémentée"
#: fortran/frontend-passes.c:4403
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "containing loop"
+#, gcc-internal-format, gfc-internal-format
msgid "Interchanging loops at %L"
-msgstr "boucle contenante"
+msgstr "Interchangeage de boucles à %L"
#: fortran/gfortranspec.c:145
#, gcc-internal-format
@@ -54238,10 +53415,9 @@ msgid "check_result_characteristics (2): Unexpected result %i of gfc_dep_compare
msgstr "check_result_characteristics (2): Résultat %i inattendu en provenance de gfc_dep_compare_expr"
#: fortran/interface.c:1810
-#, fuzzy, gcc-internal-format
-#| msgid "Procedure %qs in %s at %L has no explicit interface"
+#, gcc-internal-format
msgid "Procedure %qs in %s at %L has no explicit interface; did you mean %qs?"
-msgstr "La procédure %qs dans %s à %L n'a pas d'interface explicite"
+msgstr "La procédure %qs dans %s à %L n'a pas d'interface explicite, vouliez-vous employer %qs ?"
#: fortran/interface.c:1815
#, gcc-internal-format
@@ -54249,10 +53425,9 @@ msgid "Procedure %qs in %s at %L has no explicit interface"
msgstr "La procédure %qs dans %s à %L n'a pas d'interface explicite"
#: fortran/interface.c:1819
-#, fuzzy, gcc-internal-format
-#| msgid "Procedure %qs in %s at %L is neither function nor subroutine"
+#, gcc-internal-format
msgid "Procedure %qs in %s at %L is neither function nor subroutine; did you mean %qs?"
-msgstr "La procédure %qs dans %s à %L n'est ni une fonction ni une sous-routine"
+msgstr "La procédure %qs dans %s à %L n'est ni une fonction ni une sous-routine; vouliez-vous employer %qs ?"
#: fortran/interface.c:1823
#, gcc-internal-format
@@ -54410,10 +53585,9 @@ msgid "Fortran 2003: Scalar CHARACTER actual argument with array dummy argument
msgstr "Fortran 2003: Argument effectif scalaire CHARACTER avec un argument muet tableau %qs à %L"
#: fortran/interface.c:2885
-#, fuzzy, gcc-internal-format
-#| msgid "Keyword argument %qs at %L is not in the procedure"
+#, gcc-internal-format
msgid "Keyword argument %qs at %L is not in the procedure; did you mean %qs?"
-msgstr "L'argument mot-clé %qs à %L n'est pas dans une procédure"
+msgstr "L'argument mot-clé %qs à %L n'est pas dans une procédure, vouliez-vous employer %qs ?"
#: fortran/interface.c:2889
#, gcc-internal-format
@@ -54606,10 +53780,9 @@ msgid "Coindexed polymorphic actual argument at %L is passed polymorphic dummy a
msgstr "L'argument effectif polymorphique co-indexé à %L est passé à l'argument muet polymorphique %qs"
#: fortran/interface.c:3614
-#, fuzzy, gcc-internal-format
-#| msgid "Procedure %qs called at %L is not explicitly declared"
+#, gcc-internal-format
msgid "Procedure %qs called at %L is not explicitly declared; did you mean %qs?"
-msgstr "La procédure %qs appelée à %L n'est pas explicitement déclarée"
+msgstr "La procédure %qs appelée à %L n'est pas explicitement déclarée, vouliez-vous employer %qs ?"
#: fortran/interface.c:3618 fortran/interface.c:3628
#, gcc-internal-format
@@ -55127,10 +54300,9 @@ msgid "Duplicate %s label specification at %C"
msgstr "Spécification de l'étiquette %s dupliquée à %C"
#: fortran/io.c:1521 fortran/io.c:1538 fortran/io.c:1559
-#, fuzzy, gcc-internal-format
-#| msgid "%s at %L is a DEC extension, enable with -fdec-static"
+#, gcc-internal-format
msgid "%s at %C is a DEC extension, enable with %<-fdec%>"
-msgstr "%s à %L est une extension DEC, activez-la avec -fdec-static"
+msgstr "%s à %C est une extension DEC, activez-la avec %<-fdec%>"
#: fortran/io.c:1612
#, gcc-internal-format, gfc-internal-format
@@ -55947,28 +55119,24 @@ msgid "FAIL IMAGE statement at %C"
msgstr "Instruction FAIL IMAGE à %C"
#: fortran/match.c:3363
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "IMPORT statement at %C"
+#, gcc-internal-format, gfc-internal-format
msgid "FORM TEAM statement at %C"
-msgstr "Instruction IMPORT à %C"
+msgstr "Instruction FORM TEAM à %C"
#: fortran/match.c:3402
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "CLASS statement at %C"
+#, gcc-internal-format, gfc-internal-format
msgid "CHANGE TEAM statement at %C"
-msgstr "Instruction CLASS à %C"
+msgstr "Instruction CHANGE TEAM à %C"
#: fortran/match.c:3432
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "ENTRY statement at %C"
+#, gcc-internal-format, gfc-internal-format
msgid "END TEAM statement at %C"
-msgstr "Instruction ENTRY à %C"
+msgstr "Instruction END TEAM à %C"
#: fortran/match.c:3456
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "SYNC statement at %C"
+#, gcc-internal-format, gfc-internal-format
msgid "SYNC TEAM statement at %C"
-msgstr "Instruction SYNC à %C"
+msgstr "Instruction SYNC TEAM à %C"
#: fortran/match.c:3499
#, gcc-internal-format, gfc-internal-format
@@ -56053,7 +55221,7 @@ msgstr "typespec dans ALLOCATE à %L"
#: fortran/match.c:4157
#, gcc-internal-format, gfc-internal-format
msgid "The type parameter spec list in the type-spec at %L cannot contain DEFERRED parameters"
-msgstr ""
+msgstr "La liste de spec des paramètres de types dans le type-spec à %L ne peut pas contenir de paramètre DEFERRED"
#: fortran/match.c:4191
#, gcc-internal-format, gfc-internal-format
@@ -56061,10 +55229,9 @@ msgid "Bad allocate-object at %C for a PURE procedure"
msgstr "Mauvais objet d'allocation à %C pour une procédure PURE"
#: fortran/match.c:4206
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Illegal allocate-object at %C for a PURE procedure"
+#, gcc-internal-format, gfc-internal-format
msgid "Incompatible allocate-object at %C for CHARACTER type-spec at %L"
-msgstr "Objet allouable illégal à %C pour une procédure PURE"
+msgstr "Objet allouable incompatible à %C pour la spec de type CHARACTER à %L"
#: fortran/match.c:4228
#, gcc-internal-format, gfc-internal-format
@@ -56362,7 +55529,7 @@ msgstr "La spécification de type ne spécifiera point un type dérivé d'une s
#: fortran/match.c:6353
#, gcc-internal-format, gfc-internal-format
msgid "All the LEN type parameters in the TYPE IS statement at %C must be ASSUMED"
-msgstr ""
+msgstr "Tous les paramètres de type LEN dans l'instruction TYPE IS à %C doivent être ASSUMED"
#: fortran/match.c:6364
#, gcc-internal-format, gfc-internal-format
@@ -56707,10 +55874,9 @@ msgstr "Impossible de lire le fichier module %qs ouvert à %C car il a été cr
# %s est « sub » ou rien.
#: fortran/module.c:7064
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Can't USE the same %smodule we're building!"
+#, gcc-internal-format, gfc-internal-format
msgid "Can't USE the same %smodule we're building"
-msgstr "Impossible d'utiliser le même %smodule que celui qui est en cours de construction !"
+msgstr "Impossible d'utiliser le même %smodule que celui qui est en cours de construction"
#: fortran/openmp.c:296 fortran/openmp.c:397 fortran/openmp.c:692
#: fortran/openmp.c:3169
@@ -58191,7 +57357,7 @@ msgstr "Instruction DATA à %C après la première instruction exécutable"
#: fortran/parse.c:5423
#, gcc-internal-format
msgid "%<GCC unroll%> directive does not commence a loop at %C"
-msgstr ""
+msgstr "la directive %<GCC unroll%> ne commence pas à la boucle à %C"
#: fortran/parse.c:5538
#, gcc-internal-format
@@ -58225,19 +57391,15 @@ msgstr "Le nom de liaison globale %qs à %L est déjà utilisé comme un(e) %s
msgid "Global name %qs at %L is already being used as a %s at %L"
msgstr "Le nom global %qs à %L est déjà utilisé comme un(e) %s à %L"
-# Le dernier %s est un mot clé tel que « FUNCTION », « PROGRAM », « MODULE » etc, d'où le « un(e) »
#: fortran/parse.c:5794
-#, fuzzy, gcc-internal-format
-#| msgid "Global binding name %qs at %L is already being used as a %s at %L"
+#, gcc-internal-format
msgid "Global binding name %qs at %L is already being used at %L"
-msgstr "Le nom de liaison globale %qs à %L est déjà utilisé comme un(e) %s à %L"
+msgstr "Le nom de liaison globale %qs à %L est déjà utilisé à %L"
-# Le dernier %s est un mot clé tel que « FUNCTION », « PROGRAM », « MODULE » etc, d'où le « un(e) »
#: fortran/parse.c:5797
-#, fuzzy, gcc-internal-format
-#| msgid "Global name %qs at %L is already being used as a %s at %L"
+#, gcc-internal-format
msgid "Global name %qs at %L is already being used at %L"
-msgstr "Le nom global %qs à %L est déjà utilisé comme un(e) %s à %L"
+msgstr "Le nom global %qs à %L est déjà utilisé à %L"
#: fortran/parse.c:5819
#, gcc-internal-format, gfc-internal-format
@@ -58563,10 +57725,9 @@ msgid "No initializer for allocatable component %qs given in the structure const
msgstr "Aucune initialisation pour le composant allouable %qs donné dans le constructeur de structure à %C"
#: fortran/primary.c:2769
-#, fuzzy, gcc-internal-format
-#| msgid "No initializer for component %qs given in the structure constructor at %C!"
+#, gcc-internal-format
msgid "No initializer for component %qs given in the structure constructor at %C"
-msgstr "Pas d'initialisation donnée pour le composant %qs dans le constructeur de structure à %C !"
+msgstr "Pas d'initialisation donnée pour le composant %qs dans le constructeur de structure à %C"
#: fortran/primary.c:2817
#, gcc-internal-format
@@ -58579,28 +57740,24 @@ msgid "Structure constructor with named arguments at %C"
msgstr "Constructeur de structure avec des arguments nommés à %C"
#: fortran/primary.c:2852
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Component initializer without name after component named %s at %L!"
+#, gcc-internal-format, gfc-internal-format
msgid "Component initializer without name after component named %s at %L"
-msgstr "Initialisation de composant sans nom après le composant nommé %s à %L !"
+msgstr "Initialisation de composant sans nom après le composant nommé %s à %L"
#: fortran/primary.c:2857
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Too many components in structure constructor at %L!"
+#, gcc-internal-format, gfc-internal-format
msgid "Too many components in structure constructor at %L"
-msgstr "Trop de composants dans le constructeur de structure à %L !"
+msgstr "Trop de composants dans le constructeur de structure à %L"
#: fortran/primary.c:2894
-#, fuzzy, gcc-internal-format
-#| msgid "Component %qs is initialized twice in the structure constructor at %L!"
+#, gcc-internal-format
msgid "Component %qs is initialized twice in the structure constructor at %L"
-msgstr "Le composant %qs est initialisé deux fois dans le constructeur de structure à %L !"
+msgstr "Le composant %qs est initialisé deux fois dans le constructeur de structure à %L"
#: fortran/primary.c:2906
-#, fuzzy, gcc-internal-format
-#| msgid "Coindexed expression to pointer component %qs in structure constructor at %L!"
+#, gcc-internal-format
msgid "Coindexed expression to pointer component %qs in structure constructor at %L"
-msgstr "Expression co-indexée vers le composant pointeur %qs dans le constructeur de structure à %L !"
+msgstr "Expression co-indexée vers le composant pointeur %qs dans le constructeur de structure à %L"
#: fortran/primary.c:2960
#, gcc-internal-format
@@ -58903,10 +58060,9 @@ msgid "Fortran 2008: COMMON block %qs with binding label at %L sharing the ident
msgstr "Fortran 2008: Le bloc COMMON %qs avec l'étiquette de liaison à %L partage l'identificateur avec l'entité de bloc non COMMON globale à %L"
#: fortran/resolve.c:1059
-#, fuzzy, gcc-internal-format
-#| msgid "COMMON block at %L with binding label %s uses the same global identifier as entity at %L"
+#, gcc-internal-format
msgid "COMMON block at %L with binding label %qs uses the same global identifier as entity at %L"
-msgstr "Le bloc COMMON à %L avec le label de liaison %s utilise le même identificateur global que l'entité à %L"
+msgstr "Le bloc COMMON à %L avec le label de liaison %qs utilise le même identificateur global que l'entité à %L"
#: fortran/resolve.c:1080
#, gcc-internal-format
@@ -58936,7 +58092,7 @@ msgstr "Le bloc COMMON %qs à %L qui est aussi une procédure globale"
#: fortran/resolve.c:1164
#, gcc-internal-format
msgid "The KIND parameter %qs in the PDT constructor at %C has no value"
-msgstr ""
+msgstr "Le paramètre KIND %qs dans le constructeur PDT à %C n'a pas de valeur"
#: fortran/resolve.c:1300
#, gcc-internal-format, gfc-internal-format
@@ -59117,10 +58273,9 @@ msgid "Unable to resolve the specific function %qs at %L"
msgstr "Impossible de résoudre la fonction spécifique %qs à %L"
#: fortran/resolve.c:2898
-#, fuzzy, gcc-internal-format
-#| msgid "Function %qs at %L has no IMPLICIT type"
+#, gcc-internal-format
msgid "Function %qs at %L has no IMPLICIT type; did you mean %qs?"
-msgstr "La fonction %qs à %L n'a pas de type IMPLICIT"
+msgstr "La fonction %qs à %L n'a pas de type IMPLICIT, vouliez-vous employer %qs ?"
#: fortran/resolve.c:2902 fortran/resolve.c:16216
#, gcc-internal-format
@@ -59797,16 +58952,14 @@ msgid "Logical SELECT CASE block at %L has more that two cases"
msgstr "Le bloc SELECT CASE logique à %L a plus de deux cas"
#: fortran/resolve.c:8505
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Selector at %L must not be coindexed"
+#, gcc-internal-format, gfc-internal-format
msgid "Selector at %L cannot be NULL()"
-msgstr "Le sélecteur à %L ne doit pas être co-indexé"
+msgstr "Le sélecteur à %L ne peut pas NULL()"
#: fortran/resolve.c:8510
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Selector at %L must not be coindexed"
+#, gcc-internal-format, gfc-internal-format
msgid "Selector at %L has no type"
-msgstr "Le sélecteur à %L ne doit pas être co-indexé"
+msgstr "Le sélecteur à %L n'a pas de type"
#: fortran/resolve.c:8532
#, gcc-internal-format
@@ -60034,10 +59187,9 @@ msgid "gfc_resolve_blocks(): Bad block type"
msgstr "gfc_resolve_blocks(): Mauvais type de bloc"
#: fortran/resolve.c:10217
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "CHARACTER expression will be truncated in assignment (%d/%d) at %L"
+#, gcc-internal-format, gfc-internal-format
msgid "CHARACTER expression will be truncated in assignment (%ld/%ld) at %L"
-msgstr "L'expression CHARACTER sera tronquée dans l'affectation (%d/%d) à %L"
+msgstr "L'expression CHARACTER sera tronquée dans l'affectation (%ld/%ld) à %L"
#: fortran/resolve.c:10249
#, gcc-internal-format, gfc-internal-format
@@ -60147,27 +59299,24 @@ msgid "gfc_resolve_code(): Bad statement code"
msgstr "gfc_resolve_code(): Mauvais code d'instruction"
#: fortran/resolve.c:11583
-#, fuzzy, gcc-internal-format
-#| msgid "Variable %s with binding label %s at %L uses the same global identifier as entity at %L"
+#, gcc-internal-format
msgid "Variable %qs with binding label %qs at %L uses the same global identifier as entity at %L"
-msgstr "La variable %s avec l'étiquette de liaison %s à %L utilise le même identificateur global que l'entité à %L"
+msgstr "La variable %qs avec l'étiquette de liaison %qs à %L utilise le même identificateur global que l'entité à %L"
#. This can only happen if the variable is defined in a module - if it
#. isn't the same module, reject it.
#: fortran/resolve.c:11596
-#, fuzzy, gcc-internal-format
-#| msgid "Variable %s from module %s with binding label %s at %L uses the same global identifier as entity at %L from module %s"
+#, gcc-internal-format
msgid "Variable %qs from module %qs with binding label %qs at %L uses the same global identifier as entity at %L from module %qs"
-msgstr "La variable %s du module %s avec l'étiquette de liaison %s à %L utilise le même identificateur global que l'entité à %L du module %s"
+msgstr "La variable %qs du module %qs avec l'étiquette de liaison %qs à %L utilise le même identificateur global que l'entité à %L du module %qs"
#. Print an error if the procedure is defined multiple times; we have to
#. exclude references to the same procedure via module association or
#. multiple checks for the same procedure.
#: fortran/resolve.c:11613
-#, fuzzy, gcc-internal-format
-#| msgid "Procedure %s with binding label %s at %L uses the same global identifier as entity at %L"
+#, gcc-internal-format
msgid "Procedure %qs with binding label %qs at %L uses the same global identifier as entity at %L"
-msgstr "La procédure %s avec l'étiquette de liaison %s à %L utilise le même identificateur global que l'entité à %L"
+msgstr "La procédure %qs avec l'étiquette de liaison %qs à %L utilise le même identificateur global que l'entité à %L"
#: fortran/resolve.c:11698
#, gcc-internal-format, gfc-internal-format
@@ -60629,7 +59778,7 @@ msgstr "Le type dérivé non extensible %qs à %L ne peut pas être ABSTRACT"
#: fortran/resolve.c:14053
#, gcc-internal-format
msgid "Parameterized type %qs does not have a component corresponding to parameter %qs at %L"
-msgstr ""
+msgstr "Le type paramétrisé %qs n'a pas de composant correspondant au paramètre %qs à %L"
#: fortran/resolve.c:14086
#, gcc-internal-format
@@ -60697,20 +59846,19 @@ msgid "CLASS variable %qs at %L cannot have the PARAMETER attribute"
msgstr "La variable CLASS %qs à %L ne peut pas avoir l'attribut PARAMETER"
#: fortran/resolve.c:14365
-#, fuzzy, gcc-internal-format
-#| msgid "Entity %qs at %L has a deferred type parameter and requires either the POINTER or ALLOCATABLE attribute"
+#, gcc-internal-format
msgid "The object %qs at %L has a deferred LEN parameter %qs and is neither allocatable nor a pointer"
-msgstr "L'entité %qs à %L a un paramètre de type différé et requiert soit l'attribut POINTER ou ALLOCATABLE"
+msgstr "L'objet %qs à %L a un paramètre LEN différé %qs et n'est ni allouable ni un pointeur"
#: fortran/resolve.c:14376
#, gcc-internal-format
msgid "The AUTOMATIC object %qs at %L must not have the SAVE attribute or be a variable declared in the main program, a module or a submodule(F08/C513)"
-msgstr ""
+msgstr "L'objet AUTOMATIC %qs à %L ne doit pas avoir l'attribut SAVE ou être une variable déclarée dans le programme principal, un module ou un sous-module(F08/C513)"
#: fortran/resolve.c:14383
#, gcc-internal-format
msgid "The object %qs at %L with ASSUMED type parameters must be a dummy or a SELECT TYPE selector(F08/4.2)"
-msgstr ""
+msgstr "L'objet %qs à %L avec des paramètres de type ASSUMED doit être fictif ou un sélecteur SELECT TYPE(F08/4.2)"
#: fortran/resolve.c:14422
#, gcc-internal-format, gfc-internal-format
@@ -60733,10 +59881,9 @@ msgid "%qs at %L has the CONTIGUOUS attribute but is not an array pointer or an
msgstr "%qs à %L a l'attribut CONTIGUOUS mais il n'est pas un pointeur de tableau ou un tableau de forme tacite ou de rang tacite"
#: fortran/resolve.c:14606
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Bad specification for assumed size array at %C"
+#, gcc-internal-format, gfc-internal-format
msgid "Bad specification for assumed size array at %L"
-msgstr "Mauvaise spécification pour le tableau de taille tacite à %C"
+msgstr "Mauvaise spécification pour le tableau de taille tacite à %L"
#: fortran/resolve.c:14619
#, gcc-internal-format, gfc-internal-format
@@ -60846,10 +59993,9 @@ msgid "Variable %s at %L of type LOCK_TYPE or with subcomponent of type LOCK_TYP
msgstr "La variable %s à %L du type LOCK_TYPE ou avec un sous-composant de type LOCK_TYPE doit être un co-tableau"
#: fortran/resolve.c:14910
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Variable %s at %L of type EVENT_TYPE or with subcomponent of type LOCK_TYPE must be a coarray"
+#, gcc-internal-format, gfc-internal-format
msgid "Variable %s at %L of type EVENT_TYPE or with subcomponent of type EVENT_TYPE must be a coarray"
-msgstr "La variable %s à %L du type EVENT_TYPE ou avec un sous-composant du type LOCK_TYPE doit être un co-tableau"
+msgstr "La variable %s à %L du type EVENT_TYPE ou avec un sous-composant du type EVENT_TYPE doit être un co-tableau"
#: fortran/resolve.c:14928
#, gcc-internal-format
@@ -61027,10 +60173,9 @@ msgid "Either all or none of the objects in the EQUIVALENCE set at %L shall have
msgstr "Soit aucun ou tous les objets dans l'ensemble EQUIVALENCE à %L aura l'attribut PROTECTED"
#: fortran/resolve.c:16031
-#, fuzzy, gcc-internal-format
-#| msgid "Common block member %qs at %L cannot be an EQUIVALENCE object in the pure procedure %qs"
+#, gcc-internal-format
msgid "COMMON block member %qs at %L cannot be an EQUIVALENCE object in the pure procedure %qs"
-msgstr "Le membre %qs du bloc commun à %L ne peut pas être un objet EQUIVALENCE dans la procédure pure %qs"
+msgstr "Le membre %qs du bloc COMMON à %L ne peut pas être un objet EQUIVALENCE dans la procédure pure %qs"
#: fortran/resolve.c:16040
#, gcc-internal-format
@@ -61153,10 +60298,9 @@ msgid "Nonconforming tab character at %C"
msgstr "Caractère de tabulation non conforme à %C"
#: fortran/scanner.c:1710
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Invalid character in name at %C"
+#, gcc-internal-format, gfc-internal-format
msgid "Invalid character 0x%s at %C"
-msgstr "Caractère invalide dans le nom à %C"
+msgstr "Caractère 0x%s invalide à %C"
#: fortran/scanner.c:1795 fortran/scanner.c:1798
#, gcc-internal-format
@@ -61570,10 +60714,9 @@ msgid "gfc_set_default_type(): symbol already has a type"
msgstr "gfc_set_default_type(): le symbole a déjà un type"
#: fortran/symbol.c:306
-#, fuzzy, gcc-internal-format
-#| msgid "Symbol %qs at %L has no IMPLICIT type"
+#, gcc-internal-format
msgid "Symbol %qs at %L has no IMPLICIT type; did you mean %qs?"
-msgstr "Le symbole %qs à %L n'a pas de type IMPLICIT"
+msgstr "Le symbole %qs à %L n'a pas de type IMPLICIT, vouliez-vous employer %qs ?"
#: fortran/symbol.c:310
#, gcc-internal-format
@@ -61808,10 +60951,9 @@ msgid "Component %qs at %C is a PRIVATE component of %qs"
msgstr "Le composant %qs à %C est un composant PRIVATE de %qs"
#: fortran/symbol.c:2527
-#, fuzzy, gcc-internal-format
-#| msgid "%qs at %C is not a member of the %qs structure"
+#, gcc-internal-format
msgid "%qs at %C is not a member of the %qs structure; did you mean %qs?"
-msgstr "%qs à %C n'est pas un membre de la structure %qs"
+msgstr "%qs à %C n'est pas un membre de la structure %qs; vouliez-vous employer %qs ?"
#: fortran/symbol.c:2531
#, gcc-internal-format
@@ -62239,16 +61381,14 @@ msgid "REAL(KIND=8) is not available for %<-fdefault-real-8%> option"
msgstr "REAL(KIND=8) n'est pas disponible avec l'option %<-fdefault-real-8%>"
#: fortran/trans-types.c:591
-#, fuzzy, gcc-internal-format
-#| msgid "REAL(KIND=8) is not available for %<-fdefault-real-8%> option"
+#, gcc-internal-format
msgid "REAL(KIND=10) is not available for %<-fdefault-real-10%> option"
-msgstr "REAL(KIND=8) n'est pas disponible avec l'option %<-fdefault-real-8%>"
+msgstr "REAL(KIND=10) n'est pas disponible avec l'option %<-fdefault-real-10%>"
#: fortran/trans-types.c:599
-#, fuzzy, gcc-internal-format
-#| msgid "REAL(KIND=8) is not available for %<-fdefault-real-8%> option"
+#, gcc-internal-format
msgid "REAL(KIND=16) is not available for %<-fdefault-real-16%> option"
-msgstr "REAL(KIND=8) n'est pas disponible avec l'option %<-fdefault-real-8%>"
+msgstr "REAL(KIND=16) n'est pas disponible avec l'option %<-fdefault-real-16%>"
#: fortran/trans-types.c:607
#, gcc-internal-format
@@ -62311,10 +61451,9 @@ msgid "unable to open file"
msgstr "impossible d'ouvrir le fichier"
#: lto/lto-lang.c:305
-#, fuzzy, gcc-internal-format
-#| msgid "%s: %s: %s"
+#, gcc-internal-format
msgid "%s:%s: %E: %E"
-msgstr "%s: %s: %s"
+msgstr "%s:%s: %E: %E"
#: lto/lto-lang.c:864
#, gcc-internal-format
@@ -63451,10 +62590,9 @@ msgstr "%<-fobjc-sjlj-exceptions%> est ignoré pour %<-fgnu-runtime%>"
#: objc/objc-gnu-runtime-abi-01.c:2171 objc/objc-next-runtime-abi-01.c:2817
#: objc/objc-next-runtime-abi-02.c:3589
-#, fuzzy, gcc-internal-format
-#| msgid "non-objective-c type '%T' cannot be caught"
+#, gcc-internal-format
msgid "non-objective-c type %qT cannot be caught"
-msgstr "le type non-objective-c « %T » ne peut être intercepté"
+msgstr "le type non-objective-c %qT ne peut être intercepté"
#: objc/objc-next-runtime-abi-01.c:152
#, gcc-internal-format
diff --git a/gcc/po/sv.po b/gcc/po/sv.po
index 8be467aaadd..46cf33b6ff6 100644
--- a/gcc/po/sv.po
+++ b/gcc/po/sv.po
@@ -24,7 +24,7 @@ msgstr ""
"Project-Id-Version: gcc 8.1-b20180128\n"
"Report-Msgid-Bugs-To: https://gcc.gnu.org/bugs/\n"
"POT-Creation-Date: 2018-01-26 22:47+0000\n"
-"PO-Revision-Date: 2018-02-11 12:03+0100\n"
+"PO-Revision-Date: 2018-02-18 12:05+0100\n"
"Last-Translator: Göran Uddeborg <goeran@uddeborg.se>\n"
"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
"Language: sv\n"
@@ -9748,16 +9748,12 @@ msgid "Convert indirect call and jump to call and return thunks."
msgstr "Konvertera indirekta anrop och hopp till anrop- och retursnuttar."
#: config/i386/i386.opt:1031
-#, fuzzy
-#| msgid "function return type cannot be function"
msgid "Convert function return to call and return thunk."
-msgstr "funktionsreturtyp kan inte vara funktion"
+msgstr "Konvertera funktionsreturer till anrops- och returstycken."
#: config/i386/i386.opt:1035
-#, fuzzy
-#| msgid "Known data alignment choices (for use with the -malign-data= option):"
msgid "Known indirect branch choices (for use with the -mindirect-branch=/-mfunction-return= options):"
-msgstr "Kända val av datajustering (att användas med flaggan -malign-data=):"
+msgstr "Kända indirekta grenval (att användas med flaggan -mindirect-branch=/-mfunction-return=):"
#: config/i386/i386.opt:1051
msgid "Force indirect call and jump via register."
@@ -10648,10 +10644,8 @@ msgid "-mmcu=MCU\tSelect the target MCU."
msgstr "-mmcu=MCU\tVälj mål-MCU:n."
#: config/avr/avr.opt:31
-#, fuzzy
-#| msgid "Use subroutines for function prologues and epilogues."
msgid "Allow usage of __gcc_isr pseudo instructions in ISR prologues and epilogues."
-msgstr "Använd subrutiner för funktionprologer och -epiloger."
+msgstr "Tillåt använding av pseudoinstruktionen __gcc_isr i ISR-prologer och -epiloger."
#: config/avr/avr.opt:35
msgid "Set the number of 64 KiB flash segments."
@@ -11030,10 +11024,8 @@ msgid "Permit scheduling of a function's prologue sequence."
msgstr "Tillåt schemaläggning av en funktions prologsekvens."
#: config/arm/arm.opt:195
-#, fuzzy
-#| msgid "Specify the minimum bit alignment of structures."
msgid "Specify the minimum bit alignment of structures. (Deprecated)."
-msgstr "Ange den minsta justeringen i bitar för poster."
+msgstr "Ange den minsta justeringen i bitar för poster. (Avrådes)."
#: config/arm/arm.opt:199
msgid "Generate code for Thumb state."
@@ -11269,16 +11261,12 @@ msgid "Specify the memory model in effect for the program."
msgstr "Ange minnesmodellen som skall gälla för programmet."
#: config/rs6000/rs6000.opt:165
-#, fuzzy
-#| msgid "Enable tail merging on trees."
msgid "Enable early gimple folding of builtins."
-msgstr "Aktivera svanssammanslagning av träd."
+msgstr "Aktivera tidig gimple-vikning av inbyggda."
#: config/rs6000/rs6000.opt:188
-#, fuzzy
-#| msgid "%qs is deprecated"
msgid "%<-mstring%> is deprecated"
-msgstr "%qs bör undvikas"
+msgstr "%<-mstring%> bör undvikas"
#: config/rs6000/rs6000.opt:338
msgid "Specify the maximum number of bytes to compare inline with non-looping code. If this is set to 0, all inline expansion (non-loop and loop) of memcmp is disabled."
@@ -12413,16 +12401,12 @@ msgid "Generate performance extension instructions."
msgstr "Generera prestandautökningsinstruktioner."
#: config/nds32/nds32.opt:66
-#, fuzzy
-#| msgid "Generate performance extension instructions."
msgid "Generate performance extension version 2 instructions."
-msgstr "Generera prestandautökningsinstruktioner."
+msgstr "Generera prestandautökningsinstruktioner version 2."
#: config/nds32/nds32.opt:70
-#, fuzzy
-#| msgid "Generate performance extension instructions."
msgid "Generate string extension instructions."
-msgstr "Generera prestandautökningsinstruktioner."
+msgstr "Generera strängutökningsinstruktioner."
#: config/nds32/nds32.opt:74
msgid "Generate v3 push25/pop25 instructions."
@@ -13356,10 +13340,8 @@ msgid "Cost to assume for a multiply instruction, with 4 being equal to a normal
msgstr "Kostnad att anta för en multiplikationsinstruktion, med 4 lika med en normal instruktion."
#: config/arc/arc.opt:254
-#, fuzzy
-#| msgid "-mcpu=CPU\tCompile code for ARC variant CPU."
msgid "-mcpu=TUNE Tune code for given ARC variant."
-msgstr "-mcpu=CPU\tKompilera kod för ARC-variant av CPU."
+msgstr "-mcpu=TUNE Trimma kod för angiven ARC-variant."
#: config/arc/arc.opt:282
msgid "Enable the use of indexed loads."
@@ -13510,16 +13492,12 @@ msgid "Enable use of NPS400 xld/xst extension."
msgstr "Aktivera användningen av NPS400 utökning xld/xst."
#: config/arc/arc.opt:500
-#, fuzzy
-#| msgid "Specifies the number of registers to reserve for interrupt handlers."
msgid "Specifies the registers that the processor saves on an interrupt entry and exit."
-msgstr "Anger antalet register som skall reserveras för avbrottshanterare."
+msgstr "Anger registren som processorn sparar vid avbrottsingång och -utgång."
#: config/arc/arc.opt:504
-#, fuzzy
-#| msgid "Specifies the number of registers to reserve for interrupt handlers."
msgid "Specifies the number of registers replicated in second register bank on entry to fast interrupt."
-msgstr "Anger antalet register som skall reserveras för avbrottshanterare."
+msgstr "Anger antalet register som skall replikeras i den andra registerbanken vid start av snabba avbrott."
#: config/arc/arc.opt:508
msgid "Sets LP_COUNT register width. Possible values are 8, 16, 20, 24, 28, and 32."
@@ -13611,10 +13589,8 @@ msgid "Warn about inappropriate attribute usage."
msgstr "Varna för felaktig användning av attribut."
#: common.opt:567
-#, fuzzy
-#| msgid "Warn about type and rank mismatches between arguments and parameters."
msgid "Warn about type safety and similar errors in attribute alias and related."
-msgstr "Varna om typ och ordning inte stämmer överens mellan argument och parametrar."
+msgstr "Varna för typsäkerhet och liknande fel i attributalias och relaterade."
#: common.opt:571 common.opt:575
msgid "Warn about pointer casts which increase alignment."
@@ -13749,10 +13725,8 @@ msgid "Warn about optimizations that assume that signed overflow is undefined."
msgstr "Varna för optimeringar som antar spill med tecken är odefinierat."
#: common.opt:730
-#, fuzzy
-#| msgid "Warn about functions which might be candidates for __attribute__((const))."
msgid "Warn about functions which might be candidates for __attribute__((cold))."
-msgstr "Varna för funktioner som är möjliga kandidater för __attribute__((const))."
+msgstr "Varna för funktioner som är möjliga kandidater för __attribute__((cold))."
#: common.opt:734
msgid "Warn about functions which might be candidates for __attribute__((const))."
@@ -13767,10 +13741,8 @@ msgid "Warn about functions which might be candidates for __attribute__((noretur
msgstr "Varna för funktioner som är möjliga kandidater för __attribute__((noreturn))."
#: common.opt:746
-#, fuzzy
-#| msgid "Warn about functions which might be candidates for __attribute__((const))."
msgid "Warn about functions which might be candidates for __attribute__((malloc))."
-msgstr "Varna för funktioner som är möjliga kandidater för __attribute__((const))."
+msgstr "Varna för funktioner som är möjliga kandidater för __attribute__((malloc))."
#: common.opt:750
msgid "Warn about C++ polymorphic types where adding final keyword would improve code quality."
@@ -13889,10 +13861,8 @@ msgid "Select what to sanitize."
msgstr "Välj vad som skall saneras."
#: common.opt:1005
-#, fuzzy
-#| msgid "Select what to sanitize."
msgid "Select what to coverage sanitize."
-msgstr "Välj vad som skall saneras."
+msgstr "Välj vad som skall täckningssaneras."
#: common.opt:1009
msgid "-fasan-shadow-offset=<number>\tUse custom shadow memory offset."
@@ -14039,16 +14009,12 @@ msgid "-fdbg-cnt=<counter>:<limit>[,<counter>:<limit>,...]\tSet the debug counte
msgstr "-fdbg-cnt=<räknare>:<gräns>[,<räknare>:<gräns>,...]\tSätt gränsen för felsökningsräknare."
#: common.opt:1178
-#, fuzzy
-#| msgid "Map one directory name to another in debug information."
msgid "-fdebug-prefix-map=<old>=<new> Map one directory name to another in debug information."
-msgstr "Översätt ett katalognamn till ett annat i felsökningsinformation."
+msgstr "-fdebug-prefix-map=<gammalt>=<nytt> Översätt ett katalognamn till ett annat i felsökningsinformation."
#: common.opt:1182
-#, fuzzy
-#| msgid "Map one directory name to another in debug information."
msgid "-ffile-prefix-map=<old>=<new> Map one directory name to another in compilation result."
-msgstr "Översätt ett katalognamn till ett annat i felsökningsinformation."
+msgstr "-ffile-prefix-map=<gammalt>=<nytt> Översätt ett katalognamn till ett annat i kompileringsresultatet."
#: common.opt:1186
msgid "Output .debug_types section when using DWARF v4 debuginfo."
@@ -14095,8 +14061,6 @@ msgid "-fdiagnostics-color=[never|always|auto]\tColorize diagnostics."
msgstr "-fdiagnostics-color=[never|always|auto]\tFärglägg felmeddelanden."
#: common.opt:1265
-#, fuzzy
-#| msgid "Print fixit hints in machine-readable form."
msgid "Print fix-it hints in machine-readable form."
msgstr "Skriv fixit-tips i maskinläsbar form."
@@ -14288,16 +14252,12 @@ msgid "Enable loop nest transforms. Same as -floop-nest-optimize."
msgstr "Aktivera transformationer av slingutbyten. Samma som -floop-nest-optimize."
#: common.opt:1512
-#, fuzzy
-#| msgid "Enable loop header copying on trees."
msgid "Enable loop interchange on trees."
-msgstr "Aktivera slinghuvudkopiering av träd."
+msgstr "Aktivera slingutbyten i träd."
#: common.opt:1520
-#, fuzzy
-#| msgid "Perform loop unrolling for all loops."
msgid "Perform unroll-and-jam on loops."
-msgstr "Utför slingutrullning för alla slingor."
+msgstr "Utför unroll-and-jam på slingor."
#: common.opt:1524
msgid "Enable support for GNU transactional memory."
@@ -14385,10 +14345,9 @@ msgid "-fcf-protection=[full|branch|return|none]\tInstrument functions with chec
msgstr "-fcf-protection=[full|branch|return|none]\tInstrumentera funktioner med kontroller för att verifiera att jump/call/return-instruktioner för styrflödesövergångar har giltiga mål."
#: common.opt:1640
-#, fuzzy, c-format
-#| msgid "unknown Stack Reuse Level %qs"
+#, c-format
msgid "unknown Cotrol-Flow Protection Level %qs"
-msgstr "okänd stackåteranvändningsmodell %qs"
+msgstr "okänd nivå för kontrollflödesskydd %qs"
#: common.opt:1656
msgid "Instrument function entry and exit with profiling calls."
@@ -14712,10 +14671,8 @@ msgid "Enable basic program profiling code."
msgstr "Aktivera grundläggande programprofileringskod."
#: common.opt:2030
-#, fuzzy
-#| msgid "Generate bounds passing for calls."
msgid "Generate absolute source path names for gcov."
-msgstr "Generera skickande av gränser för anrop."
+msgstr "Generera absoluta källkodssökvägar för gcov."
#: common.opt:2034
msgid "Insert arc-based program profiling code."
@@ -14767,10 +14724,8 @@ msgid "Enable function reordering that improves code placement."
msgstr "Aktivera omflyttning av funktioner för att förbättra kodplacering."
#: common.opt:2091
-#, fuzzy
-#| msgid "Generate cld instruction in the function prologue."
msgid "Insert NOP instructions at each function entry."
-msgstr "Generera cld-instruktioner i funktionsprologen."
+msgstr "Infoga NOP-instruktioner vid varje funktionsingång."
#: common.opt:2098
msgid "-frandom-seed=<string>\tMake compile reproducible using <string>."
@@ -15038,10 +14993,8 @@ msgid "Assume strict aliasing rules apply."
msgstr "Anta att strikta aliasregler gäller."
#: common.opt:2419
-#, fuzzy
-#| msgid "Treat signed overflow as undefined."
msgid "Treat signed overflow as undefined. Negated as -fwrapv -fwrapv-pointer."
-msgstr "Behandla spill med tecken som odefinierat."
+msgstr "Behandla spill med tecken som odefinierat. Negeras som -fwrapv -fwrapv-pointer."
#: common.opt:2423
msgid "Implement __atomic operations via libcalls to legacy __sync functions."
@@ -15157,8 +15110,6 @@ msgid "Detect paths that trigger erroneous or undefined behavior due to derefere
msgstr "Detektera vägar som utlöser felaktigt eller odefinierat beteende på grund av dereferering av nollpekare. Isolera dessa vägar från huvudsakliga styrflödet och gör om satsen med det felaktiga eller odefinierade beteendet till en fälla."
#: common.opt:2568
-#, fuzzy
-#| msgid "Detect paths that trigger erroneous or undefined behavior due to a null value being used in a way forbidden by a returns_nonnull or nonnull attribute. Isolate those paths from the main control flow and turn the statement with erroneous or undefined behavior into a trap."
msgid "Detect paths that trigger erroneous or undefined behavior due to a null value being used in a way forbidden by a returns_nonnull or nonnull attribute. Isolate those paths from the main control flow and turn the statement with erroneous or undefined behavior into a trap."
msgstr "Detektera vägar som utlöser felaktigt eller odefinierat beteende på grund av att ett nollvärde används på ett sätt som förbjuds av ett returns_nonnull- eller nonnull-attribut. Isolera dessa vägar från huvudsakliga styrflödet och gör om satsen med det felaktiga eller odefinierade beteendet till en fälla."
@@ -15378,10 +15329,8 @@ msgid "Perform whole program optimizations."
msgstr "Utför optimering av hela program."
#: common.opt:2869
-#, fuzzy
-#| msgid "Assume signed arithmetic overflow wraps around."
msgid "Assume pointer overflow wraps around."
-msgstr "Anta att spill vid teckenaritmetik slår runt."
+msgstr "Anta att pekarspill slår runt."
#: common.opt:2873
msgid "Assume signed arithmetic overflow wraps around."
@@ -15396,8 +15345,7 @@ msgid "Generate debug information in default format."
msgstr "Generera felsökningsinformation i standardformat."
#: common.opt:2884 common.opt:2888 common.opt:2892 common.opt:2896
-#, fuzzy, c-format
-#| msgid "switch %qs is no longer supported"
+#, c-format
msgid "switch %qs no longer supported"
msgstr "flaggan %qs stödjs inte längre"
@@ -15518,22 +15466,16 @@ msgid "Create a shared library."
msgstr "Skapa ett delat bibliotek."
#: common.opt:3173
-#, fuzzy
-#| msgid "Don't create a position independent executable."
msgid "Don't create a dynamically linked position independent executable."
-msgstr "Skapa inte ett positionsoberoende körbart program."
+msgstr "Skapa inte ett dynamiskt länkat positionsoberoende körbart program."
#: common.opt:3177
-#, fuzzy
-#| msgid "Create a position independent executable."
msgid "Create a dynamically linked position independent executable."
-msgstr "Skapa ett positionsoberoende körbart program."
+msgstr "Skapa ett dynamiskt länkat positionsoberoende körbart program."
#: common.opt:3181
-#, fuzzy
-#| msgid "Create a position independent executable."
msgid "Create a static position independent executable."
-msgstr "Skapa ett positionsoberoende körbart program."
+msgstr "Skapa ett statiskt positionsoberoende körbart program."
#: common.opt:3188
msgid "Use caller save register across calls if possible."
@@ -15900,10 +15842,8 @@ msgid "cannot use type %s as type %s"
msgstr "det går inte att använda typ %s som typ %s"
#: go/gofrontend/types.cc:781
-#, fuzzy
-#| msgid "conversion to incomplete type"
msgid "conversion from normal type to notinheap type"
-msgstr "konvertering till ofullständig typ"
+msgstr "konvertering från normal typ till notinheap-typ"
#: go/gofrontend/types.cc:4452
msgid "different receiver types"
@@ -15980,10 +15920,9 @@ msgid "ignoring attribute %qE in declaration of a built-in function %qD because
msgstr "ignorerar attributet %qE i deklarationen av en inbyggd funktion %qD för att det står i konflikt med attributet %qs"
#: attribs.c:427
-#, fuzzy, gcc-internal-format
-#| msgid "%qE attribute ignored due to conflict with attribute %qs"
+#, gcc-internal-format
msgid "ignoring attribute %qE because it conflicts with attribute %qs"
-msgstr "attributet %qE ignoreras eftersom det står i konflikt med attributet %qs"
+msgstr "ignorerar attributet %qE eftersom det står i konflikt med attributet %qs"
#: attribs.c:433 c-family/c-attribs.c:1893 cp/decl.c:13547 cp/friend.c:302
#: cp/tree.c:4471
@@ -16076,10 +16015,9 @@ msgid "%qE attribute ignored"
msgstr "attributet %qE ignorerat"
#: attribs.c:973
-#, fuzzy, gcc-internal-format
-#| msgid "missing %<target%> attribute for multi-versioned %D"
+#, gcc-internal-format
msgid "missing %<target%> attribute for multi-versioned %qD"
-msgstr "saknat attribut %<target%> för flerversioners %D"
+msgstr "saknat attribut %<target%> för flerversioners %qD"
#: attribs.c:976 cp/decl.c:1218 cp/decl.c:1944 cp/decl.c:1954 cp/decl.c:2516
#: cp/decl.c:2935
@@ -16203,94 +16141,79 @@ msgid "invalid third argument to %<__builtin_prefetch%>; using zero"
msgstr "ogiltigt tredje argument till %<__builtin_prefetch%>; använder noll"
#: builtins.c:3132
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: specified size %wu exceeds maximum object size %wu"
+#, gcc-internal-format
msgid "%K%qD specified size %E exceeds maximum object size %E"
-msgstr "%K%qD: den angivna storleken %wu överskrider maximal objektstorlek %wu"
+msgstr "%K%qD: den angivna storleken %E överskrider maximal objektstorlek %E"
#: builtins.c:3137
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: specified size between %wu and %wu exceeds maximum object size %wu"
+#, gcc-internal-format
msgid "%K%qD specified size between %E and %E exceeds maximum object size %E"
-msgstr "%K%qD: den angivna storleken mellan %wu och %wu överskrider maximal objektstorlek %wu"
+msgstr "%K%qD: den angivna storleken mellan %E och %E överskrider maximal objektstorlek %E"
#: builtins.c:3170 builtins.c:3186
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD writing %wu bytes into a region of size %wu overflows the destination"
+#, gcc-internal-format
msgid "%K%qD writing %E or more bytes into a region of size %E overflows the destination"
-msgstr "%K%qD: att skriva %wu byte till en region av storlek %wu spiller över destinationen"
+msgstr "%K%qD: att skriva %E eller fler byte till en region av storlek %E spiller över destinationen"
#: builtins.c:3177
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: writing %wu byte into a region of size %wu overflows the destination"
+#, gcc-internal-format
msgid "%K%qD writing %E byte into a region of size %E overflows the destination"
-msgstr "%K%qD: att skriva %wu byte till en region av storlek %wu spiller över destinationen"
+msgstr "%K%qD: att skriva %E byte till en region av storlek %E spiller över destinationen"
#: builtins.c:3179
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD writing %wu bytes into a region of size %wu overflows the destination"
+#, gcc-internal-format
msgid "%K%qD writing %E bytes into a region of size %E overflows the destination"
-msgstr "%K%qD: att skriva %wu byte till en region av storlek %wu spiller över destinationen"
+msgstr "%K%qD: att skriva %E byte till en region av storlek %E spiller över destinationen"
#: builtins.c:3192
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: writing between %wu and %wu bytes into a region of size %wu overflows the destination"
+#, gcc-internal-format
msgid "%K%qD writing between %E and %E bytes into a region of size %E overflows the destination"
-msgstr "%K%qD: att skriva mellan %wu och %wu byte till en region av storlek %wu spiller över destinationen"
+msgstr "%K%qD: att skriva mellan %E och %E byte till en region av storlek %E spiller över destinationen"
#: builtins.c:3228
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: specified bound %wu exceeds maximum object size %wu"
+#, gcc-internal-format
msgid "%K%qD specified bound %E exceeds maximum object size %E"
-msgstr "%K%qD: den angivna gränsen %wu överskrider maximal objektstorlek %wu"
+msgstr "%K%qD: den angivna gränsen %E överskrider maximal objektstorlek %E"
#: builtins.c:3234
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: specified bound between %wu and %wu exceeds maximum object size %wu"
+#, gcc-internal-format
msgid "%K%qD specified bound between %E and %E exceeds maximum object size %E"
-msgstr "%K%qD: den angivna gränsen mellan %wu och %wu överskrider maximal objektstorlek %wu"
+msgstr "%K%qD: den angivna gränsen mellan %E och %E överskrider maximal objektstorlek %E"
#: builtins.c:3249
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: specified bound %wu exceeds maximum object size %wu"
+#, gcc-internal-format
msgid "%K%qD specified bound %E exceeds destination size %E"
-msgstr "%K%qD: den angivna gränsen %wu överskrider maximal objektstorlek %wu"
+msgstr "%K%qD: den angivna gränsen %E överskrider maximal objektstorlek %E"
#: builtins.c:3255
-#, fuzzy, gcc-internal-format
-#| msgid "%K%qD: specified bound between %wu and %wu exceeds maximum object size %wu"
+#, gcc-internal-format
msgid "%K%qD specified bound between %E and %E exceeds destination size %E"
-msgstr "%K%qD: den angivna gränsen mellan %wu och %wu överskrider maximal objektstorlek %wu"
+msgstr "%K%qD: den angivna gränsen mellan %E och %E överskrider destinationsstorleken %E"
#: builtins.c:3278
-#, fuzzy, gcc-internal-format
-#| msgid "%<%.*s%> directive writing %wu byte into a region of size %wu"
+#, gcc-internal-format
msgid "%K%qD reading %E byte from a region of size %E"
-msgstr "direktivet %<%.*s%> skrev %wu byte till en region av storlek %wu"
+msgstr "%K%qD läser %E byte från en region av storlek %E"
#: builtins.c:3279
-#, fuzzy, gcc-internal-format
-#| msgid "%<%.*s%> directive writing %wu bytes into a region of size %wu"
+#, gcc-internal-format
msgid "%K%qD reading %E bytes from a region of size %E"
-msgstr "direktivet %<%.*s%> skrev %wu byte till en region av storlek %wu"
+msgstr "%K%qD läser %E byte från en region av storlek %E"
#: builtins.c:3285
-#, fuzzy, gcc-internal-format
-#| msgid "%<%.*s%> directive writing %wu or more bytes into a region of size %wu"
+#, gcc-internal-format
msgid "%K%qD reading %E or more bytes from a region of size %E"
-msgstr "direktivet %<%.*s%> skrev %wu eller fler byte till en region av storlek %wu"
+msgstr "%K%qD läser %E eller fler byte till en region av storlek %E"
#: builtins.c:3291
-#, fuzzy, gcc-internal-format
-#| msgid "%<%.*s%> directive writing between %wu and %wu bytes into a region of size %wu"
+#, gcc-internal-format
msgid "%K%qD reading between %E and %E bytes from a region of size %E"
-msgstr "direktivet %<%.*s%> skrev mellan %wu och %wu byte till en region av storlek %wu"
+msgstr "%K%qD läser mellan %E och %E byte från en region av storlek %E"
#: builtins.c:3965 builtins.c:4031
-#, fuzzy, gcc-internal-format
-#| msgid "specified bound %wu equals the size of the destination"
+#, gcc-internal-format
msgid "%K%qD specified bound %E equals destination size"
-msgstr "den angivna gränsen %wu är lika med storleken på destinationen"
+msgstr "%K%qD den angivna gränsen %E är lika med destinationsstorleken"
#: builtins.c:4879 gimplify.c:3272
#, gcc-internal-format
@@ -16441,16 +16364,14 @@ msgid "undefined behavior when second parameter of %<va_start%> is declared with
msgstr "odefinierat beteende när andra parametern till %<va_start%> är deklarerad med lagringsklass %<register%>"
#: builtins.c:9806
-#, fuzzy, gcc-internal-format
-#| msgid "%Kfirst argument of %D must be a pointer, second integer constant"
+#, gcc-internal-format
msgid "%Kfirst argument of %qD must be a pointer, second integer constant"
-msgstr "%Kförsta argumentet till %D måste vara en pekare, det andra en heltalskonstant"
+msgstr "%Kförsta argumentet till %qD måste vara en pekare, det andra en heltalskonstant"
#: builtins.c:9819
-#, fuzzy, gcc-internal-format
-#| msgid "%Klast argument of %D is not integer constant between 0 and 3"
+#, gcc-internal-format
msgid "%Klast argument of %qD is not integer constant between 0 and 3"
-msgstr "%Ksista argumentet till %D är inte en heltalskonstant mellan 0 och 3"
+msgstr "%Ksista argumentet till %qD är inte en heltalskonstant mellan 0 och 3"
#: builtins.c:10095
#, gcc-internal-format
@@ -16518,16 +16439,14 @@ msgid "%qD argument %i declared attribute %<nonstring%> is smaller than the spec
msgstr "Argument %2$i till %1$qD som är deklarerad med attributet %<nonstring%> är mindre än den angivna gränsen %3$E"
#: calls.c:1716
-#, fuzzy, gcc-internal-format
-#| msgid "%qD was not declared %<constexpr%>"
+#, gcc-internal-format
msgid "%qD argument %i declared attribute %<nonstring%>"
-msgstr "%qD deklarerades inte %<constexpr%>"
+msgstr "%qD argument %i deklarerades med attributet %<nonstring%>"
#: calls.c:1721
-#, fuzzy, gcc-internal-format
-#| msgid "routine %qD declared here"
+#, gcc-internal-format
msgid "argument %qD declared here"
-msgstr "rutinen %qD är deklarerad här"
+msgstr "argumentet %qD är deklarerat här"
#: calls.c:1735
#, gcc-internal-format, gfc-internal-format
@@ -16637,33 +16556,29 @@ msgid "verify_flow_info: Block %i lacks loop_father"
msgstr "verify_flow_info: Block %i saknar loop_father"
#: cfghooks.c:146
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "verify_flow_info: Wrong count of block %i %i"
+#, gcc-internal-format, gfc-internal-format
msgid "verify_flow_info: Wrong count of block %i"
-msgstr "verify_flow_info: Fel antal block %i %i"
+msgstr "verify_flow_info: Fel antal block %i"
#: cfghooks.c:154
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "verify_flow_info: Wrong count of block %i %i"
+#, gcc-internal-format, gfc-internal-format
msgid "verify_flow_info: Missing count of block %i"
-msgstr "verify_flow_info: Fel antal block %i %i"
+msgstr "verify_flow_info: Saknat blockantal %i"
#: cfghooks.c:162
#, gcc-internal-format, gfc-internal-format
msgid "verify_flow_info: Duplicate edge %i->%i"
-msgstr "verify_flow_info: Dubblerad båge %i->%i"
+msgstr "verify_flow_info: Dubblerad båge %i→%i"
#: cfghooks.c:171
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
+#, gcc-internal-format, gfc-internal-format
msgid "Uninitialized probability of edge %i->%i"
-msgstr "verify_flow_info: Fel sannolikhet för båge %i->%i %i"
+msgstr "Oinitierad sannolikhet för båge %i→%i"
#: cfghooks.c:177
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "verify_flow_info: Wrong probability of edge %i->%i %i"
+#, gcc-internal-format, gfc-internal-format
msgid "verify_flow_info: Wrong probability of edge %i->%i"
-msgstr "verify_flow_info: Fel sannolikhet för båge %i->%i %i"
+msgstr "verify_flow_info: Fel sannolikhet för båge %i→%i"
#: cfghooks.c:189
#, gcc-internal-format, gfc-internal-format
@@ -16941,10 +16856,9 @@ msgid "%d exits recorded for loop %d (having %d exits)"
msgstr "%d utgångar registrerade för slinga %d (som har %d utgångar)"
#: cfgrtl.c:2349
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "non-cold basic block %d dominated by a block in the cold partition (%d)"
+#, gcc-internal-format, gfc-internal-format
msgid "non-cold basic block %d reachable only by paths crossing the cold partition"
-msgstr "ej kallt grundblock %d domineras av ett block i den kalla partitionen (%d)"
+msgstr "ej kallt grundblock %d nåbart endast via vägar som korsar den kalla partitionen"
#: cfgrtl.c:2421
#, gcc-internal-format, gfc-internal-format
@@ -16957,10 +16871,9 @@ msgid "partition found but function partition flag not set"
msgstr "partitionen funnen men funktionspartitionsflaggan är inte satt"
#: cfgrtl.c:2468
-#, fuzzy, gcc-internal-format
-#| msgid "verify_flow_info: REG_BR_PROB does not match cfg %i %i"
+#, gcc-internal-format
msgid "verify_flow_info: REG_BR_PROB is set but cfg probability is not"
-msgstr "verify_flow_info: REG_BR_PROB stämmer inte med cfg %i %i"
+msgstr "verify_flow_info: REG_BR_PROB är satt men cfg-sannolikhet är inte det"
#: cfgrtl.c:2477
#, gcc-internal-format, gfc-internal-format
@@ -17123,10 +17036,9 @@ msgid "number of bb notes in insn chain (%d) != n_basic_blocks (%d)"
msgstr "antal gb-noter i instruktionskedjan (%d) != n_basic_blocks (%d)"
#: cgraph.c:3051
-#, fuzzy, gcc-internal-format
-#| msgid "caller edge count is negative"
+#, gcc-internal-format
msgid "caller edge count invalid"
-msgstr "antal anropande bågar är negativt"
+msgstr "antal anropande bågar är felaktigt"
#: cgraph.c:3135
#, gcc-internal-format, gfc-internal-format
@@ -17194,16 +17106,14 @@ msgid "inlined_to pointer set for noninline callers"
msgstr "inlined_to-pekare angiven för noninline-anropare"
#: cgraph.c:3239
-#, fuzzy, gcc-internal-format
-#| msgid "caller edge frequency %i does not match BB frequency %i"
+#, gcc-internal-format
msgid "caller edge count does not match BB count"
-msgstr "anropsbåges frekvens %i stämmer inte med GB-frekvens %i"
+msgstr "anropsbågantal stämmer inte med GB-antal"
#: cgraph.c:3261
-#, fuzzy, gcc-internal-format
-#| msgid "indirect call frequency %i does not match BB frequency %i"
+#, gcc-internal-format
msgid "indirect call count does not match BB count"
-msgstr "indirekt anrops frekvens %i stämmer inte med GB-frekvens %i"
+msgstr "indirekta anropsantal stämmer inte med GB-antal"
#: cgraph.c:3272
#, gcc-internal-format
@@ -17402,34 +17312,29 @@ msgid "%qD defined but not used"
msgstr "%qD är definierad men inte använd"
#: cgraphunit.c:1350
-#, fuzzy, gcc-internal-format
-#| msgid "%<operator new%> must return type %qT"
+#, gcc-internal-format
msgid "%<ifunc%> resolver for %qD must return %qT"
-msgstr "%<operator new%> måste returnera typ %qT"
+msgstr "%<ifunc%>-upplösning för %qD måste returnera %qT"
#: cgraphunit.c:1353 cgraphunit.c:1375
-#, fuzzy, gcc-internal-format
-#| msgid "in a call to function %qD declared here"
+#, gcc-internal-format
msgid "resolver indirect function declared here"
-msgstr "i ett anrop till funktionen %qD deklarerad här"
+msgstr "upplösning av indirekt funktion deklarerad här"
#: cgraphunit.c:1372
-#, fuzzy, gcc-internal-format
-#| msgid "prefix %qD should return %qT"
+#, gcc-internal-format
msgid "%<ifunc%> resolver for %qD should return %qT"
-msgstr "prefix %qD skall returnera %qT"
+msgstr "%<ifunc%>-upplösning för %qD skall returnera %qT"
#: cgraphunit.c:1379
-#, fuzzy, gcc-internal-format
-#| msgid "Warn about casting functions to incompatible types."
+#, gcc-internal-format
msgid "%qD alias between functions of incompatible types %qT and %qT"
-msgstr "Varna för typkonvertering av funktioner till inkompatibla typer."
+msgstr "%qD är ett alias mellan funktioner av inkompatibla typer %qT och %qT"
#: cgraphunit.c:1382 cgraphunit.c:1461
-#, fuzzy, gcc-internal-format
-#| msgid "friend declaration here"
+#, gcc-internal-format
msgid "aliased declaration here"
-msgstr "vändeklarationen här"
+msgstr "den aliasade deklarationen här"
#: cgraphunit.c:1419 c-family/c-pragma.c:337
#, gcc-internal-format
@@ -17442,8 +17347,7 @@ msgid "%q+D aliased to external symbol %qE"
msgstr "%q+D är aliasat till den externa symbolen %qE"
#: cgraphunit.c:1458
-#, fuzzy, gcc-internal-format
-#| msgid "%q+D alias in between function and variable is not supported"
+#, gcc-internal-format
msgid "%q+D alias between function and variable is not supported"
msgstr "aliaset %q+D mellan funktion och variabel stödjs inte"
@@ -17944,10 +17848,9 @@ msgid "%Kcall to %qs declared with attribute warning: %s"
msgstr "%K anrop av %qs deklarerad med attributet warning: %s"
#: file-prefix-map.c:50
-#, fuzzy, gcc-internal-format
-#| msgid "invalid argument to %qD"
+#, gcc-internal-format
msgid "invalid argument %qs to %qs"
-msgstr "ogiltiga argument till %qD"
+msgstr "ogiltigt argument %qs till %qs"
#: final.c:1789
#, gcc-internal-format
@@ -18091,10 +17994,9 @@ msgstr "kunde inte ta processtider: %m"
#. The inferior failed to catch the signal.
#: gcc.c:3151 gcc.c:3175
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "Use alternate register names."
+#, gcc-internal-format, gfc-internal-format
msgid "%s signal terminated program %s"
-msgstr "Använd alternativa registernamn."
+msgstr "%s-signal avslutade programmet %s"
#: gcc.c:3653 opts-common.c:1233 opts-common.c:1257 opts-global.c:139
#, gcc-internal-format
@@ -18221,10 +18123,9 @@ msgid "malformed spec function arguments"
msgstr "felaktiga specifikationsfunktionsargument"
#: gcc.c:6330
-#, fuzzy, gcc-internal-format
-#| msgid "braced spec %qs is invalid at %qc"
+#, gcc-internal-format
msgid "braced spec %qs ends in escape"
-msgstr "klammerspecifikation %qs är ogiltig vid %qc"
+msgstr "klammerspecifikation %qs avslutas med en flyktsekvens"
#: gcc.c:6465
#, gcc-internal-format
@@ -18544,10 +18445,9 @@ msgid "can%'t write PCH file"
msgstr "kan inte skriva PCH-fil"
#: gimple-fold.c:719 gimple-fold.c:1604 gimple-fold.c:2512 gimple-fold.c:2620
-#, fuzzy, gcc-internal-format
-#| msgid "%qE argument is not a function"
+#, gcc-internal-format
msgid "%qD source argument is the same as destination"
-msgstr "argumentet %qE är inte en funktion"
+msgstr "källargumentet %qD är samma som destinationen"
#: gimple-fold.c:1658
msgid "%G%qD destination unchanged after copying no bytes from a string of length %E"
@@ -18558,16 +18458,12 @@ msgid "%G%qD destination unchanged after copying no bytes"
msgstr "Destinationen för %G%qD är oförändrad efter att inga byte kopierades"
#: gimple-fold.c:1699
-#, fuzzy
-#| msgid "%<%.*s%> directive output truncated writing %wu byte into a region of size %wu"
msgid "%G%qD output truncated copying %E byte from a string of length %E"
-msgstr "utdata från direktivet %<%.*s%> avhugget när %wu byte skrevs till en region av storlek %wu"
+msgstr "%G%qD-utdata avhugget vid kopiering av %E byte från en sträng av längden %E"
#: gimple-fold.c:1701
-#, fuzzy
-#| msgid "%<%.*s%> directive output truncated writing %wu bytes into a region of size %wu"
msgid "%G%qD output truncated copying %E bytes from a string of length %E"
-msgstr "utdata från direktivet %<%.*s%> avhugget när %wu byte skrevs till en region av storlek %wu"
+msgstr "%G%qD-utdata avhuggen vid kopiering av %E byte från en sträng av längden %E"
#: gimple-fold.c:1712
msgid "%G%qD output truncated before terminating nul copying %E byte from a string of the same length"
@@ -18578,22 +18474,16 @@ msgid "%G%qD output truncated before terminating nul copying %E bytes from a str
msgstr "Utdata för %G%qD avhuggen före avslutande null vid kopiering av %E byte från en sträng av samma längd"
#: gimple-fold.c:2060
-#, fuzzy
-#| msgid "specified bound %wu equals the size of the destination"
msgid "%G%qD specified bound %E equals destination size"
-msgstr "den angivna gränsen %wu är lika med storleken på destinationen"
+msgstr "%G%qd-angiven gräns %E är lika med destinationsstorleken"
#: gimple-fold.c:2062
-#, fuzzy
-#| msgid "%K%qD: specified bound %wu exceeds maximum object size %wu"
msgid "%G%qD specified bound %E exceeds destination size %wu"
-msgstr "%K%qD: den angivna gränsen %wu överskrider maximal objektstorlek %wu"
+msgstr "%G%qD-angiven gräns %E överskrider destinationsstorleken %wu"
#: gimple-fold.c:2078
-#, fuzzy
-#| msgid "specified bound %wu equals the size of the destination"
msgid "%G%qD specified bound %E equals source length"
-msgstr "den angivna gränsen %wu är lika med storleken på destinationen"
+msgstr "%G%qD-angiven gräns %E är lika med källängden"
#: gimple-ssa-isolate-paths.c:290
#, gcc-internal-format
@@ -18841,8 +18731,7 @@ msgid "%<%.*s%> directive output between %wu and %wu bytes may cause result to e
msgstr "utdata från direktivet %<%.*s%> mellan %wu och %wu byte kan få resultatet att överskrida %<INT_MAX%>"
#: gimple-ssa-sprintf.c:2944
-#, fuzzy, gcc-internal-format
-#| msgid "assuming directive output of %wu byte"
+#, gcc-internal-format
msgid "assuming directive output of %wu byte"
msgid_plural "assuming directive output of %wu bytes"
msgstr[0] "antar direktivutdata på %wu byte"
@@ -18894,8 +18783,7 @@ msgid "specified bound %wu exceeds maximum object size %wu"
msgstr "angiven gräns på %wu överskrider maximal objektstorlek %wu"
#: gimple-ssa-sprintf.c:3893
-#, fuzzy, gcc-internal-format
-#| msgid "specified bound %wu exceeds %<INT_MAX %>"
+#, gcc-internal-format
msgid "specified bound %wu exceeds %<INT_MAX%>"
msgstr "angiven gräns på %wu överskrider %<INT_MAX%>"
@@ -19027,22 +18915,16 @@ msgid "%G%qD accessing %wu bytes at offsets %s and %s overlaps %wu or more bytes
msgstr "%G%qD åtkomst av %wu byte på avstånden %s och %s överlappar %wu eller fler byte på avståndet %s"
#: gimple-ssa-warn-restrict.c:1338
-#, fuzzy
-#| msgid "%K%qD: writing between %wu and %wu bytes into a region of size %wu overflows the destination"
msgid "%G%qD accessing between %wu and %wu bytes at offsets %s and %s overlaps %wu byte at offset %s"
-msgstr "%K%qD: att skriva mellan %wu och %wu byte till en region av storlek %wu spiller över destinationen"
+msgstr "%G%qD åtkomst mellan %wu och %wu byte på avstånden %s och %s överlappar %wu byte på avståndet %s"
#: gimple-ssa-warn-restrict.c:1341
-#, fuzzy
-#| msgid "%K%qD: writing between %wu and %wu bytes into a region of size %wu overflows the destination"
msgid "%G%qD accessing between %wu and %wu bytes at offsets %s and %s overlaps %wu bytes at offset %s"
-msgstr "%K%qD: att skriva mellan %wu och %wu byte till en region av storlek %wu spiller över destinationen"
+msgstr "%G%qD åtkomst mellan %wu och %wu byte på avstånden %s och %s överlappar %wu byte på avståndet %s"
#: gimple-ssa-warn-restrict.c:1348
-#, fuzzy
-#| msgid "%<%.*s%> directive writing between %wu and %wu bytes into a region of size between %wu and %wu"
msgid "%G%qD accessing between %wu and %wu bytes at offsets %s and %s overlaps between %wu and %wu bytes at offset %s"
-msgstr "direktivet %<%.*s%> skrev mellan %wu och %wu byte till en region med storlek mellan %wu och %wu"
+msgstr "%G%qD åtkomst mellan %wu och %wu byte på avstånden %s och %s överlappar mellan %wu och %wu byte på avståndet %s"
#: gimple-ssa-warn-restrict.c:1356
msgid "%G%qD accessing between %wu and %wu bytes at offsets %s and %s overlaps %wu or more bytes at offset %s"
@@ -19097,22 +18979,16 @@ msgid "%G%qD accessing %wu bytes at offsets %s and %s may overlap up to %wu byte
msgstr "%G%qD åtkomst av %wu byte på avstånden %s och %s kan överlappa upp till %wu byte på avståndet %s"
#: gimple-ssa-warn-restrict.c:1449
-#, fuzzy
-#| msgid "%K%qD: specified size between %wu and %wu exceeds maximum object size %wu"
msgid "%G%qD accessing between %wu and %wu bytes may overlap %wu byte"
-msgstr "%K%qD: den angivna storleken mellan %wu och %wu överskrider maximal objektstorlek %wu"
+msgstr "%G%qD åtkomst mellan %wu och %wu byte kan överlappa %wu byte"
#: gimple-ssa-warn-restrict.c:1451
-#, fuzzy
-#| msgid "%K%qD: specified size between %wu and %wu exceeds maximum object size %wu"
msgid "%G%qD accessing between %wu and %wu bytes may overlap up to %wu bytes"
-msgstr "%K%qD: den angivna storleken mellan %wu och %wu överskrider maximal objektstorlek %wu"
+msgstr "%G%qD åtkomst mellan %wu och %wu byte kan överlappa upp till %wu byte"
#: gimple-ssa-warn-restrict.c:1457
-#, fuzzy
-#| msgid "%K%qD: writing between %wu and %wu bytes into a region of size %wu overflows the destination"
msgid "%G%qD accessing between %wu and %wu bytes at offsets %s and %s may overlap %wu byte at offset %s"
-msgstr "%K%qD: att skriva mellan %wu och %wu byte till en region av storlek %wu spiller över destinationen"
+msgstr "%G%qD åtkomst mellan %wu och %wu byte på avstånden %s och %s kan överlappa %wu byte på avståndet %s"
#: gimple-ssa-warn-restrict.c:1460
msgid "%G%qD accessing between %wu and %wu bytes at offsets %s and %s may overlap up to %wu bytes at offset %s"
@@ -19131,10 +19007,9 @@ msgid "%G%qD pointer overflow between offset %s and size %s accessing array %qD
msgstr "%G%qD pekarspill mellan avstånd %s och storlek %s vid åtkomst av vektorn %qD av typ %qT"
#: gimple-ssa-warn-restrict.c:1534
-#, fuzzy, gcc-internal-format
-#| msgid "array member %q#D declared here"
+#, gcc-internal-format
msgid "array %qD declared here"
-msgstr "vektormedlem %q#D är deklarerad här"
+msgstr "vektorn %qD är deklarerad här"
#: gimple-ssa-warn-restrict.c:1537 gimple-ssa-warn-restrict.c:1543
msgid "%G%qD pointer overflow between offset %s and size %s"
@@ -19153,10 +19028,8 @@ msgid "%G%qD forming offset %s is out of the bounds of object %qD with type %qT"
msgstr "%G%qD formande avstånd %s är utanför gränserna för objekt %qD med typen %qT"
#: gimple-ssa-warn-restrict.c:1572
-#, fuzzy
-#| msgid "array subscript value %qE is outside the bounds of array %qD of type %qT"
msgid "%G%qD offset %s is out of the bounds of object %qD with type %qT"
-msgstr "vektorindexvärdet %qE är utanför gränserna för vektorn %qD av typen %qT"
+msgstr "%G%qD på avståndet %s är utanför gränserna för objekt %qD med typen %qT"
#: gimple-ssa-warn-restrict.c:1577 c/c-decl.c:3603 c/c-decl.c:3874
#: c/c-typeck.c:8347 cp/class.c:1358 cp/class.c:3127 cp/decl.c:3902
@@ -19176,16 +19049,12 @@ msgid "%G%qD offset %s is out of the bounds [0, %wu]"
msgstr "%G%qD avstånd %s är utanför gränserna [0, %wu]"
#: gimple-ssa-warn-restrict.c:1589
-#, fuzzy
-#| msgid "DIM argument at %L is out of bounds"
msgid "%G%qD forming offset %s is out of bounds"
-msgstr "DIM-argument vid %L är utanför gränsen"
+msgstr "%G%qD formande avstånd %s är utanför gränsen"
#: gimple-ssa-warn-restrict.c:1590
-#, fuzzy
-#| msgid "DIM argument at %L is out of bounds"
msgid "%G%qD offset %s is out of bounds"
-msgstr "DIM-argument vid %L är utanför gränsen"
+msgstr "%G%qD avstånd %s är utanför gränsen"
#: gimple-ssa-warn-restrict.c:1601
msgid "%G%qD offset %s from the object at %qE is out of the bounds of %qT"
@@ -19196,10 +19065,8 @@ msgid "%G%qD offset %s from the object at %qE is out of the bounds of referenced
msgstr "%G%qD avstånd %s från objektet vid %qE är utanför gränserna för refererat underobjekt %qD med typen %qT på avståndet %wu"
#: gimple-ssa-warn-restrict.c:1783
-#, fuzzy
-#| msgid "%qE argument is not a function"
msgid "%G%qD source argument is the same as destination"
-msgstr "argumentet %qE är inte en funktion"
+msgstr "%G%qD källargumentet är samma som destinationen"
#: gimple-streamer-in.c:210
#, gcc-internal-format, gfc-internal-format
@@ -19678,8 +19545,7 @@ msgid "types have different parameter counts"
msgstr "typer har olika parameterantal"
#: ipa-devirt.c:1232
-#, fuzzy, gcc-internal-format
-#| msgid "type %qT itself violates the C++ One Definition Rule"
+#, gcc-internal-format
msgid "type %qT itself violates the C++ One Definition Rule"
msgstr "typen %qT själv bryter mot C++ endefinitionsregel"
@@ -19779,8 +19645,7 @@ msgid "a field of same name but different type is defined in another translation
msgstr "ett fält med samma namn men annan typ är definierat i en annan översättningsenhet"
#: ipa-devirt.c:1579
-#, fuzzy, gcc-internal-format
-#| msgid "fields have different layout in another translation unit"
+#, gcc-internal-format
msgid "fields have different layout in another translation unit"
msgstr "fält har en annan layout i en annan översättningsenhet"
@@ -20068,10 +19933,9 @@ msgid "installation error, can't find crtoffloadtable.o"
msgstr "installationsfel, kan inte hitta crtoffloadtable.o"
#: lto-wrapper.c:1000 lto-wrapper.c:1012
-#, fuzzy, gcc-internal-format, gfc-internal-format
-#| msgid "%s: %s"
+#, gcc-internal-format, gfc-internal-format
msgid "%s: %s\n"
-msgstr "%s: %s"
+msgstr "%s: %s\n"
#: lto-wrapper.c:1056
#, gcc-internal-format
@@ -20430,10 +20294,9 @@ msgid "argument to %qs should be a non-negative integer"
msgstr "argumentet till %qs skall vara ett ickenegativt heltal"
#: opts-common.c:1173
-#, fuzzy, gcc-internal-format
-#| msgid "-malign-functions=%d is not between 0 and %d"
+#, gcc-internal-format
msgid "argument to %qs is not between %d and %d"
-msgstr "-malign-functions=%d är inte mellan 0 och %d"
+msgstr "argument till %qs är inte mellan %d och %d"
#: opts-common.c:1187
#, gcc-internal-format
@@ -20532,28 +20395,24 @@ msgid "section anchors must be disabled when toplevel reorder is disabled"
msgstr "sektionsankare måste vara avaktiverade när ordningsändring på toppnivå är avaktiverat"
#: opts.c:840
-#, fuzzy, gcc-internal-format
-#| msgid "-freorder-blocks-and-partition does not work with exceptions on this architecture"
+#, gcc-internal-format
msgid "%<-freorder-blocks-and-partition%> does not work with exceptions on this architecture"
-msgstr "-freorder-blocks-and-partition fungerar inte med undantag på denna arkitektur"
+msgstr "%<-freorder-blocks-and-partition%> fungerar inte med undantag på denna arkitektur"
#: opts.c:856
-#, fuzzy, gcc-internal-format
-#| msgid "-freorder-blocks-and-partition does not support unwind info on this architecture"
+#, gcc-internal-format
msgid "%<-freorder-blocks-and-partition%> does not support unwind info on this architecture"
-msgstr "-freorder-blocks-and-partition stödjer inte upprullningsinformation på denna arkitektur"
+msgstr "%<-freorder-blocks-and-partition%> stödjer inte upprullningsinformation på denna arkitektur"
#: opts.c:874
-#, fuzzy, gcc-internal-format
-#| msgid "-freorder-blocks-and-partition does not work on this architecture"
+#, gcc-internal-format
msgid "%<-freorder-blocks-and-partition%> does not work on this architecture"
-msgstr "-freorder-blocks-and-partition fungerar inte på denna arkitektur"
+msgstr "%<-freorder-blocks-and-partition%> fungerar inte på denna arkitektur"
#: opts.c:912
-#, fuzzy, gcc-internal-format
-#| msgid "-fno-fat-lto-objects are supported only with linker plugin"
+#, gcc-internal-format
msgid "%<-fno-fat-lto-objects%> are supported only with linker plugin"
-msgstr "-fno-fat-lto-objects stödjs endast med insticksmodul för länkning"
+msgstr "%<-fno-fat-lto-objects%> stödjs endast med insticksmodul för länkning"
#: opts.c:926
#, gcc-internal-format
@@ -20561,10 +20420,9 @@ msgid "%<-fsplit-stack%> is not supported by this compiler configuration"
msgstr "%<-fsplit-stack%> stödjs inte av denna kompilatorkonfiguration"
#: opts.c:973
-#, fuzzy, gcc-internal-format
-#| msgid "-fsanitize=address is incompatible with -fsanitize=kernel-address"
+#, gcc-internal-format
msgid "%<-fsanitize=pointer-compare%> must be combined with %<-fsanitize=address%> or %<-fsanitize=kernel-address%>"
-msgstr "-fsanitize=address är inkompatibel med -fsanitize=kernel-address"
+msgstr "%<-fsanitize=pointer-compare%> måste kombineras med %<-fsanitize=address%> eller %<-fsanitize=kernel-address%>"
#: opts.c:977
#, gcc-internal-format
@@ -20572,16 +20430,14 @@ msgid "%<-fsanitize=pointer-subtract%> must be combined with %<-fsanitize=addres
msgstr "%<-fsanitize=pointer-subtract%> måste kombineras med %<-fsanitize=address%> eller %<-fsanitize=kernel-address%>"
#: opts.c:985
-#, fuzzy, gcc-internal-format
-#| msgid "-fsanitize=address is incompatible with -fsanitize=kernel-address"
+#, gcc-internal-format
msgid "%<-fsanitize=address%> is incompatible with %<-fsanitize=kernel-address%>"
-msgstr "-fsanitize=address är inkompatibel med -fsanitize=kernel-address"
+msgstr "%<-fsanitize=address%> är inkompatibel med %<-fsanitize=kernel-address%>"
#: opts.c:992
-#, fuzzy, gcc-internal-format
-#| msgid "-fsanitize=address and -fsanitize=kernel-address are incompatible with -fsanitize=thread"
+#, gcc-internal-format
msgid "%<-fsanitize=address%> and %<-fsanitize=kernel-address%> are incompatible with %<-fsanitize=thread%>"
-msgstr "-fsanitize=address och -fsanitize=kernel-address är inkompatibel med -fsanitize=thread"
+msgstr "%<-fsanitize=address%> och %<-fsanitize=kernel-address%> är inkompatibla med %<-fsanitize=thread%>"
#: opts.c:998
#, fuzzy, gcc-internal-format
diff --git a/gcc/print-rtl.c b/gcc/print-rtl.c
index 3ad11dc4cf9..37c0d53fae2 100644
--- a/gcc/print-rtl.c
+++ b/gcc/print-rtl.c
@@ -264,7 +264,6 @@ rtx_writer::print_rtx_operand_code_0 (const_rtx in_rtx ATTRIBUTE_UNUSED,
}
case NOTE_INSN_VAR_LOCATION:
- case NOTE_INSN_CALL_ARG_LOCATION:
fputc (' ', m_outfile);
print_rtx (NOTE_VAR_LOCATION (in_rtx));
break;
@@ -1970,7 +1969,6 @@ print_insn (pretty_printer *pp, const rtx_insn *x, int verbose)
break;
case NOTE_INSN_VAR_LOCATION:
- case NOTE_INSN_CALL_ARG_LOCATION:
pp_left_brace (pp);
print_pattern (pp, NOTE_VAR_LOCATION (x), verbose);
pp_right_brace (pp);
diff --git a/gcc/reg-notes.def b/gcc/reg-notes.def
index f9caa247f2c..76f3f452186 100644
--- a/gcc/reg-notes.def
+++ b/gcc/reg-notes.def
@@ -239,3 +239,6 @@ REG_NOTE (CALL_DECL)
when a called function has a 'notrack' attribute. This note is used by the
compiler when the option -fcf-protection=branch is specified. */
REG_NOTE (CALL_NOCF_CHECK)
+
+/* The values passed to callee, for debuginfo purposes. */
+REG_NOTE (CALL_ARG_LOCATION)
diff --git a/gcc/rtlanal.c b/gcc/rtlanal.c
index 89d586b7288..ac3662de3ce 100644
--- a/gcc/rtlanal.c
+++ b/gcc/rtlanal.c
@@ -5101,7 +5101,7 @@ num_sign_bit_copies1 (const_rtx x, scalar_int_mode mode, const_rtx known_x,
if (WORD_REGISTER_OPERATIONS
&& load_extend_op (inner_mode) == SIGN_EXTEND
&& paradoxical_subreg_p (x)
- && (MEM_P (SUBREG_REG (x)) || REG_P (SUBREG_REG (x))))
+ && MEM_P (SUBREG_REG (x)))
return cached_num_sign_bit_copies (SUBREG_REG (x), mode,
known_x, known_mode, known_ret);
}
diff --git a/gcc/stor-layout.c b/gcc/stor-layout.c
index 5fdf81a9a25..a4eeff18ec0 100644
--- a/gcc/stor-layout.c
+++ b/gcc/stor-layout.c
@@ -1883,6 +1883,9 @@ finalize_type_size (tree type)
&& TREE_CODE (TYPE_SIZE_UNIT (type)) != INTEGER_CST)
TYPE_SIZE_UNIT (type) = variable_size (TYPE_SIZE_UNIT (type));
+ /* Handle empty records as per the x86-64 psABI. */
+ TYPE_EMPTY_P (type) = targetm.calls.empty_record_p (type);
+
/* Also layout any other variants of the type. */
if (TYPE_NEXT_VARIANT (type)
|| type != TYPE_MAIN_VARIANT (type))
@@ -1895,6 +1898,7 @@ finalize_type_size (tree type)
unsigned int precision = TYPE_PRECISION (type);
unsigned int user_align = TYPE_USER_ALIGN (type);
machine_mode mode = TYPE_MODE (type);
+ bool empty_p = TYPE_EMPTY_P (type);
/* Copy it into all variants. */
for (variant = TYPE_MAIN_VARIANT (type);
@@ -1911,11 +1915,9 @@ finalize_type_size (tree type)
SET_TYPE_ALIGN (variant, valign);
TYPE_PRECISION (variant) = precision;
SET_TYPE_MODE (variant, mode);
+ TYPE_EMPTY_P (variant) = empty_p;
}
}
-
- /* Handle empty records as per the x86-64 psABI. */
- TYPE_EMPTY_P (type) = targetm.calls.empty_record_p (type);
}
/* Return a new underlying object for a bitfield started with FIELD. */
diff --git a/gcc/system.h b/gcc/system.h
index 5d9aaae76ec..4abc321c71d 100644
--- a/gcc/system.h
+++ b/gcc/system.h
@@ -824,6 +824,12 @@ extern void fancy_abort (const char *, int, const char *)
/* Some compilers do not allow the use of unsigned char in bitfields. */
#define BOOL_BITFIELD unsigned int
+/* GCC older than 4.4 have broken C++ value initialization handling, see
+ PR11309, PR30111, PR33916, PR82939 and PR84405 for more details. */
+#if GCC_VERSION > 0 && GCC_VERSION < 4004 && !defined(__clang__)
+# define BROKEN_VALUE_INITIALIZATION
+#endif
+
/* As the last action in this file, we poison the identifiers that
shouldn't be used. Note, luckily gcc-3.0's token-based integrated
preprocessor won't trip on poisoned identifiers that arrive from
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index e0edbe57b56..2ec3d405800 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,3026 @@
+2018-02-23 Steven G. Kargl <kargl@gcc.gnu.org>
+
+ PR fortran/84346
+ * gfortran.dg/statement_function_1.f90: Update test.
+
+2018-02-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/84506
+ * gfortran.dg/inquire_19.f90: New test.
+
+2018-02-23 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/83149
+ * gfortran.dg/pr83149_b.f90: New test.
+ * gfortran.dg/pr83149_a.f90: Additional source for previous.
+
+2018-02-23 Carl Love <cel@us.ibm.com>
+
+ * gcc.target/powerpc/builtins-3-runnable.c: Move tests for vec_float2,
+ vec_signed2 and vec_unsigned2 to new Power 8 test file.
+ * gcc.target/powerpc/builtins-3-runnable-p8.c: New test file for
+ Power 8 tests.
+
+2018-02-23 Will Schmidt <will_schmidt@vnet.ibm.com>
+
+ * gcc.target/powerpc/pr80695-p9.c: Update dg-requires stanza.
+ * gcc.target/powerpc/pr80695-p8.c: Update dg-requires stanza.
+
+2018-02-23 Will Schmidt <will_schmidt@vnet.ibm.com>
+
+ * gcc.target/powerpc/fold-vec-mult-int128-p9.c: Add maddld insn to
+ expected output.
+
+2018-02-23 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/83149
+ * gfortran.dg/pr83149_1.f90: New test.
+ * gfortran.dg/pr83149.f90: Additional source for previous.
+
+2018-02-23 Segher Boessenkool <segher@kernel.crashing.org>
+
+ PR testsuite/80551
+ * c-c++-common/tsan/race_on_mutex.c: Change regexp to allow
+ __GI___pthread_mutex_init as well.
+
+2018-02-23 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/83148
+ * gfortran.dg/class_68.f90: New test.
+
+2018-02-22 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/59781
+ * gfortran.dg/derived_init_5.f90: New test.
+
+2018-02-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/82851
+ * gcc.target/i386/avx2-vpaddq-3.c: Add -mtune=generic to dg-options.
+ * gcc.target/i386/avx2-vpsubq-3.c: Likewise.
+
+2018-02-22 Vladimir Makarov <vmakarov@redhat.com>
+
+ PR target/81572
+ * gcc.target/powerpc/pr81572.c: New.
+
+2018-02-22 Andreas Schwab <schwab@linux-m68k.org>
+
+ * go.test/go-test.exp (go-set-goarch): Recognize riscv64-*-*.
+
+2018-02-22 Martin Sebor <msebor@redhat.com>
+
+ PR tree-optimization/84480
+ * c-c++-common/Wstringop-truncation.c: Adjust text of expected warnings.
+ * g++.dg/warn/Wstringop-truncation-1.C: New test.
+
+2018-02-22 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/84176
+ * gcc.target/i386/indirect-thunk-11.c: New test.
+ * gcc.target/i386/indirect-thunk-12.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-12.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-13.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-14.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-15.c: Likewise.
+ * gcc.target/i386/indirect-thunk-attr-16.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-10.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-8.c: Likewise.
+ * gcc.target/i386/indirect-thunk-extern-9.c: Likewise.
+
+2018-02-22 Steve Ellcey <sellcey@cavium.com>
+
+ PR target/83335
+ * gcc/testsuite/gcc.target/aarch64/asm-2.c: Add dg-error for
+ ILP32 mode.
+ * gcc/testsuite/gcc.target/aarch64/asm-4.c: New test.
+
+2018-02-22 Thomas Preud'homme <thomas.preudhomme@arm.com>
+
+ * gcc.target/arm/multilib.exp: Add tests for Armv8-R multilib mappings.
+
+2018-02-22 Marek Polacek <polacek@redhat.com>
+
+ PR c++/84493
+ * g++.dg/parse/error59.C: New test.
+
+2018-02-22 Tom de Vries <tom@codesourcery.com>
+
+ * gcc.c-torture/execute/pr82210.c: Require effective target alloca.
+
+2018-02-22 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/77655
+ * g++.dg/cpp0x/pr77655.C: New.
+
+2018-02-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/84496
+ * g++.dg/cpp1y/pr84496.C: New test.
+
+ PR target/84502
+ * g++.dg/torture/pr84502.C: New test.
+
+ PR tree-optimization/84503
+ * gcc.dg/pr84503-1.c: New test.
+ * gcc.dg/pr84503-2.c: New test.
+
+2018-02-21 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/84478
+ * gcc.c-torture/execute/pr84478.c: New test.
+
+2018-02-20 Martin Sebor <msebor@redhat.com>
+
+ PR middle-end/84095
+ * c-c++-common/Warray-bounds-3.c: Adjust text of expected warnings.
+ * c-c++-common/Wrestrict.c: Same.
+ * gcc.dg/Wrestrict-6.c: Same.
+ * gcc.dg/Warray-bounds-27.c: New test.
+ * gcc.dg/Wrestrict-8.c: New test.
+ * gcc.dg/Wrestrict-9.c: New test.
+ * gcc.dg/pr84095.c: New test.
+
+2018-02-20 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ * gfortran.dg/structure_constructor_14.f90: Adjust STOP number.
+
+2018-02-20 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/48890
+ PR fortran/83823
+ * gfortran.dg/structure_constructor_14.f90: New test.
+
+2018-02-20 Jeff Law <law@redhat.com>
+
+ PR middle-end/82123
+ PR tree-optimization/81592
+ PR middle-end/79257
+ * gcc.dg/pr81592.c: New test.
+ * gcc.dg/pr82123.c: New test.
+ * gcc.dg/builtin-unreachable-6.c: Turn off VRP.
+
+2018-02-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/84488
+ * g++.dg/warn/Wunused-var-30.C: New test.
+
+2018-02-20 Richard Sandiford <richard.sandiford@linaro.org>
+
+ PR tree-optimization/84419
+ * gcc.dg/vect/pr84419.c: New test.
+
+2018-02-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR middle-end/82004
+ * gfortran.dg/pr82004.f90: New test.
+
+2018-02-20 Siddhesh Poyarekar <siddhesh@sourceware.org>
+
+ * g++.dg/warn/Wimplicit-fallthrough-3.C: New test case.
+
+2018-02-20 Martin Liska <mliska@suse.cz>
+
+ PR c/84310
+ PR target/79747
+ * gcc.target/i386/pr84310.c: New test.
+ * gcc.target/i386/pr84310-2.c: Likewise.
+
+2018-02-20 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/84446
+ * g++.dg/cpp0x/lambda/lambda-ice27.C: New.
+
+2018-02-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/84445
+ * g++.dg/cpp1z/launder7.C: New test.
+
+ PR c++/84449
+ * g++.dg/cpp0x/constexpr-84449.C: New test.
+
+ PR c++/84455
+ * g++.dg/cpp0x/lambda/lambda-ice26.C: New test.
+
+2018-02-19 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/83344
+ PR fortran/83975
+ * gfortran.dg/associate_22.f90: Enable commented out test.
+ * gfortran.dg/associate_36.f90: New test.
+
+2018-02-19 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/84146
+ * gcc.target/i386/pr84146.c: Add -fcompare-debug to dg-options.
+
+2017-02-19 Uros Bizjak <ubizjak@gmail.com>
+
+ * gcc.target/i386/pr70023.c (dg-do): Compile only for target int128.
+ (dg-options): Use -mavx instead of -w.
+
+2018-02-19 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/84444
+ * g++.dg/cpp1z/launder8.C: New test.
+
+ PR c++/84448
+ * g++.dg/gomp/pr84448.C: New test.
+
+ PR c++/84430
+ * g++.dg/gomp/pr84430.C: New test.
+
+ PR tree-optimization/84452
+ * gcc.dg/pr84452.c: New test.
+
+ PR c++/79064
+ * g++.dg/template/overload15.C (f): Use 0u - 1ll instead of 0u - 1l.
+
+2018-02-19 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/35339
+ * gfortran.dg/implied_do_io_4.f90: New test.
+
+2018-02-19 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ * gfortran.dg/coarray_alloc_comp_6.f08: New test.
+ * gfortran.dg/coarray_alloc_comp_7.f08: New test.
+ * gfortran.dg/coarray_alloc_comp_8.f08: New test.
+
+2018-02-19 Carl Love <cel@us.ibm.com>
+
+ * gcc.target/powerpc/fold-vec-neg-int.p7.c: Remove test file.
+
+2018-01-16 Sebastian Peryt <sebastian.peryt@intel.com>
+
+ PR target/84460
+ * gcc.target/i386/pr57193.c: Add -mtune=generic.
+
+2018-02-19 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/84348
+ * g++.dg/cpp0x/auto50.C: New.
+ * g++.dg/parse/friend12.C: Adjust.
+
+2018-02-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libgfortran/84389
+ * gfortran.dg/dtio_33.f90: New test.
+
+2018-02-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libgfortran/84412
+ * gfortran.dg/inquire_18.f90: New test.
+
+2018-02-18 Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/84381
+ * gfortran.dg/io_real_boz2.f90: Remove option "-fall-intrinsics".
+ * gfortran.dg/pointer_intent_3.f90: Ditto.
+ * gfortran.dg/proc_ptr_common_1.f90: Ditto.
+ * gfortran.dg/protected_3.f90: Ditto.
+ * gfortran.dg/protected_4.f90: Ditto.
+ * gfortran.dg/protected_5.f90: Ditto.
+ * gfortran.dg/protected_6.f90: Ditto.
+
+2018-02-18 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/80945
+ * gfortran.dg/associate_35.f90: Remove error, add stop n's and
+ change to run.
+
+2018-02-17 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/84270
+ * gfortran.dg/inline_matmul_22.f90: New test.
+
+2018-02-17 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/84381
+ * gfortran.dg/abort_shoulfail.f90: New test.
+ * gcc.target/powerpc/ppc-fortran/pr80108-1.f90: Replace CALL ABORT
+ by STOP n.
+ * gfortran.dg/PR19754_2.f90: Likewise.
+ * gfortran.dg/PR19872.f: Likewise.
+ * gfortran.dg/PR49268.f90: Likewise.
+ * gfortran.dg/Wall.f90: Likewise.
+ * gfortran.dg/Wno-all.f90: Likewise.
+ * gfortran.dg/achar_1.f90: Likewise.
+ * gfortran.dg/achar_2.f90: Likewise.
+ * gfortran.dg/achar_4.f90: Likewise.
+ * gfortran.dg/achar_6.F90: Likewise.
+ * gfortran.dg/actual_array_constructor_1.f90: Likewise.
+ * gfortran.dg/actual_array_constructor_2.f90: Likewise.
+ * gfortran.dg/actual_array_constructor_3.f90: Likewise.
+ * gfortran.dg/actual_array_offset_1.f90: Likewise.
+ * gfortran.dg/actual_array_result_1.f90: Likewise.
+ * gfortran.dg/actual_array_substr_1.f90: Likewise.
+ * gfortran.dg/actual_array_substr_2.f90: Likewise.
+ * gfortran.dg/actual_pointer_function_1.f90: Likewise.
+ * gfortran.dg/actual_procedure_1.f90: Likewise.
+ * gfortran.dg/adjustl_1.f90: Likewise.
+ * gfortran.dg/advance_1.f90: Likewise.
+ * gfortran.dg/advance_4.f90: Likewise.
+ * gfortran.dg/advance_5.f90: Likewise.
+ * gfortran.dg/advance_6.f90: Likewise.
+ * gfortran.dg/aint_anint_1.f90: Likewise.
+ * gfortran.dg/aliasing_array_result_1.f90: Likewise.
+ * gfortran.dg/aliasing_dummy_1.f90: Likewise.
+ * gfortran.dg/aliasing_dummy_4.f90: Likewise.
+ * gfortran.dg/aliasing_dummy_5.f90: Likewise.
+ * gfortran.dg/alloc_comp_assign_1.f90: Likewise.
+ * gfortran.dg/alloc_comp_assign_10.f90: Likewise.
+ * gfortran.dg/alloc_comp_assign_11.f90: Likewise.
+ * gfortran.dg/alloc_comp_assign_12.f03: Likewise.
+ * gfortran.dg/alloc_comp_assign_13.f08: Likewise.
+ * gfortran.dg/alloc_comp_assign_14.f08: Likewise.
+ * gfortran.dg/alloc_comp_assign_15.f03: Likewise.
+ * gfortran.dg/alloc_comp_assign_2.f90: Likewise.
+ * gfortran.dg/alloc_comp_assign_3.f90: Likewise.
+ * gfortran.dg/alloc_comp_assign_4.f90: Likewise.
+ * gfortran.dg/alloc_comp_assign_5.f90: Likewise.
+ * gfortran.dg/alloc_comp_assign_6.f90: Likewise.
+ * gfortran.dg/alloc_comp_assign_7.f90: Likewise.
+ * gfortran.dg/alloc_comp_assign_8.f90: Likewise.
+ * gfortran.dg/alloc_comp_assign_9.f90: Likewise.
+ * gfortran.dg/alloc_comp_auto_array_1.f90: Likewise.
+ * gfortran.dg/alloc_comp_auto_array_2.f90: Likewise.
+ * gfortran.dg/alloc_comp_basics_1.f90: Likewise.
+ * gfortran.dg/alloc_comp_basics_2.f90: Likewise.
+ * gfortran.dg/alloc_comp_basics_5.f90: Likewise.
+ * gfortran.dg/alloc_comp_bounds_1.f90: Likewise.
+ * gfortran.dg/alloc_comp_class_1.f90: Likewise.
+ * gfortran.dg/alloc_comp_class_2.f90: Likewise.
+ * gfortran.dg/alloc_comp_class_4.f03: Likewise.
+ * gfortran.dg/alloc_comp_class_5.f03: Likewise.
+ * gfortran.dg/alloc_comp_constructor_1.f90: Likewise.
+ * gfortran.dg/alloc_comp_constructor_2.f90: Likewise.
+ * gfortran.dg/alloc_comp_constructor_3.f90: Likewise.
+ * gfortran.dg/alloc_comp_constructor_4.f90: Likewise.
+ * gfortran.dg/alloc_comp_constructor_5.f90: Likewise.
+ * gfortran.dg/alloc_comp_constructor_6.f90: Likewise.
+ * gfortran.dg/alloc_comp_constructor_7.f90: Likewise.
+ * gfortran.dg/alloc_comp_deep_copy_1.f03: Likewise.
+ * gfortran.dg/alloc_comp_deep_copy_2.f03: Likewise.
+ * gfortran.dg/alloc_comp_deep_copy_3.f03: Likewise.
+ * gfortran.dg/alloc_comp_default_init_1.f90: Likewise.
+ * gfortran.dg/alloc_comp_default_init_2.f90: Likewise.
+ * gfortran.dg/alloc_comp_initializer_1.f90: Likewise.
+ * gfortran.dg/alloc_comp_initializer_4.f03: Likewise.
+ * gfortran.dg/alloc_comp_optional_1.f90: Likewise.
+ * gfortran.dg/alloc_comp_result_1.f90: Likewise.
+ * gfortran.dg/alloc_comp_result_2.f90: Likewise.
+ * gfortran.dg/alloc_comp_scalar_1.f90: Likewise.
+ * gfortran.dg/alloc_comp_transformational_1.f90: Likewise.
+ * gfortran.dg/allocatable_dummy_1.f90: Likewise.
+ * gfortran.dg/allocatable_dummy_3.f90: Likewise.
+ * gfortran.dg/allocatable_function_1.f90: Likewise.
+ * gfortran.dg/allocatable_function_10.f90: Likewise.
+ * gfortran.dg/allocatable_function_3.f90: Likewise.
+ * gfortran.dg/allocatable_function_5.f90: Likewise.
+ * gfortran.dg/allocatable_function_6.f90: Likewise.
+ * gfortran.dg/allocatable_function_7.f90: Likewise.
+ * gfortran.dg/allocatable_function_8.f90: Likewise.
+ * gfortran.dg/allocatable_scalar_1.f90: Likewise.
+ * gfortran.dg/allocatable_scalar_10.f90: Likewise.
+ * gfortran.dg/allocatable_scalar_12.f90: Likewise.
+ * gfortran.dg/allocatable_scalar_13.f90: Likewise.
+ * gfortran.dg/allocatable_scalar_3.f90: Likewise.
+ * gfortran.dg/allocatable_scalar_4.f90: Likewise.
+ * gfortran.dg/allocatable_scalar_5.f90: Likewise.
+ * gfortran.dg/allocatable_scalar_6.f90: Likewise.
+ * gfortran.dg/allocatable_scalar_7.f90: Likewise.
+ * gfortran.dg/allocatable_scalar_8.f90: Likewise.
+ * gfortran.dg/allocatable_scalar_9.f90: Likewise.
+ * gfortran.dg/allocate_alloc_opt_10.f90: Likewise.
+ * gfortran.dg/allocate_alloc_opt_3.f90: Likewise.
+ * gfortran.dg/allocate_alloc_opt_6.f90: Likewise.
+ * gfortran.dg/allocate_assumed_charlen_1.f90: Likewise.
+ * gfortran.dg/allocate_assumed_charlen_2.f90: Likewise.
+ * gfortran.dg/allocate_class_3.f90: Likewise.
+ * gfortran.dg/allocate_deferred_char_scalar_1.f03: Likewise.
+ * gfortran.dg/allocate_deferred_char_scalar_2.f03: Likewise.
+ * gfortran.dg/allocate_derived_5.f90: Likewise.
+ * gfortran.dg/allocate_with_arrayspec_1.f90: Likewise.
+ * gfortran.dg/allocate_with_mold_1.f90: Likewise.
+ * gfortran.dg/allocate_with_source_1.f90: Likewise.
+ * gfortran.dg/allocate_with_source_10.f08: Likewise.
+ * gfortran.dg/allocate_with_source_11.f08: Likewise.
+ * gfortran.dg/allocate_with_source_12.f03: Likewise.
+ * gfortran.dg/allocate_with_source_15.f03: Likewise.
+ * gfortran.dg/allocate_with_source_16.f90: Likewise.
+ * gfortran.dg/allocate_with_source_17.f03: Likewise.
+ * gfortran.dg/allocate_with_source_18.f03: Likewise.
+ * gfortran.dg/allocate_with_source_2.f90: Likewise.
+ * gfortran.dg/allocate_with_source_20.f03: Likewise.
+ * gfortran.dg/allocate_with_source_22.f03: Likewise.
+ * gfortran.dg/allocate_with_source_23.f03: Likewise.
+ * gfortran.dg/allocate_with_source_24.f90: Likewise.
+ * gfortran.dg/allocate_with_source_5.f90: Likewise.
+ * gfortran.dg/allocate_with_source_6.f90: Likewise.
+ * gfortran.dg/allocate_with_source_7.f08: Likewise.
+ * gfortran.dg/allocate_with_source_8.f08: Likewise.
+ * gfortran.dg/allocate_with_source_9.f08: Likewise.
+ * gfortran.dg/allocate_zerosize_1.f90: Likewise.
+ * gfortran.dg/allocate_zerosize_3.f: Likewise.
+ * gfortran.dg/altreturn_3.f90: Likewise.
+ * gfortran.dg/altreturn_5.f90: Likewise.
+ * gfortran.dg/altreturn_7.f90: Likewise.
+ * gfortran.dg/and_or_xor.f90: Likewise.
+ * gfortran.dg/anint_1.f90: Likewise.
+ * gfortran.dg/any_all_1.f90: Likewise.
+ * gfortran.dg/anyallcount_1.f90: Likewise.
+ * gfortran.dg/append_1.f90: Likewise.
+ * gfortran.dg/argument_checking_1.f90: Likewise.
+ * gfortran.dg/argument_checking_2.f90: Likewise.
+ * gfortran.dg/argument_checking_8.f90: Likewise.
+ * gfortran.dg/arithmetic_if.f90: Likewise.
+ * gfortran.dg/array_1.f90: Likewise.
+ * gfortran.dg/array_2.f90: Likewise.
+ * gfortran.dg/array_alloc_1.f90: Likewise.
+ * gfortran.dg/array_alloc_2.f90: Likewise.
+ * gfortran.dg/array_alloc_3.f90: Likewise.
+ * gfortran.dg/array_assignment_1.F90: Likewise.
+ * gfortran.dg/array_assignment_5.f90: Likewise.
+ * gfortran.dg/array_constructor_1.f90: Likewise.
+ * gfortran.dg/array_constructor_10.f90: Likewise.
+ * gfortran.dg/array_constructor_11.f90: Likewise.
+ * gfortran.dg/array_constructor_12.f90: Likewise.
+ * gfortran.dg/array_constructor_15.f90: Likewise.
+ * gfortran.dg/array_constructor_16.f90: Likewise.
+ * gfortran.dg/array_constructor_17.f90: Likewise.
+ * gfortran.dg/array_constructor_19.f90: Likewise.
+ * gfortran.dg/array_constructor_23.f: Likewise.
+ * gfortran.dg/array_constructor_24.f: Likewise.
+ * gfortran.dg/array_constructor_32.f90: Likewise.
+ * gfortran.dg/array_constructor_36.f90: Likewise.
+ * gfortran.dg/array_constructor_39.f90: Likewise.
+ * gfortran.dg/array_constructor_4.f90: Likewise.
+ * gfortran.dg/array_constructor_40.f90: Likewise.
+ * gfortran.dg/array_constructor_44.f90: Likewise.
+ * gfortran.dg/array_constructor_45.f90: Likewise.
+ * gfortran.dg/array_constructor_46.f90: Likewise.
+ * gfortran.dg/array_constructor_47.f90: Likewise.
+ * gfortran.dg/array_constructor_49.f90: Likewise.
+ * gfortran.dg/array_constructor_5.f90: Likewise.
+ * gfortran.dg/array_constructor_50.f90: Likewise.
+ * gfortran.dg/array_constructor_6.f90: Likewise.
+ * gfortran.dg/array_constructor_7.f90: Likewise.
+ * gfortran.dg/array_constructor_8.f90: Likewise.
+ * gfortran.dg/array_constructor_9.f90: Likewise.
+ * gfortran.dg/array_constructor_type_1.f03: Likewise.
+ * gfortran.dg/array_constructor_type_10.f03: Likewise.
+ * gfortran.dg/array_constructor_type_11.f03: Likewise.
+ * gfortran.dg/array_constructor_type_12.f03: Likewise.
+ * gfortran.dg/array_constructor_type_13.f90: Likewise.
+ * gfortran.dg/array_constructor_type_14.f03: Likewise.
+ * gfortran.dg/array_constructor_type_16.f03: Likewise.
+ * gfortran.dg/array_constructor_type_2.f03: Likewise.
+ * gfortran.dg/array_constructor_type_22.f03: Likewise.
+ * gfortran.dg/array_constructor_type_3.f03: Likewise.
+ * gfortran.dg/array_constructor_type_4.f03: Likewise.
+ * gfortran.dg/array_constructor_type_5.f03: Likewise.
+ * gfortran.dg/array_constructor_type_6.f03: Likewise.
+ * gfortran.dg/array_constructor_type_7.f03: Likewise.
+ * gfortran.dg/array_function_1.f90: Likewise.
+ * gfortran.dg/array_function_5.f90: Likewise.
+ * gfortran.dg/array_initializer_1.f90: Likewise.
+ * gfortran.dg/array_initializer_2.f90: Likewise.
+ * gfortran.dg/array_memcpy_5.f90: Likewise.
+ * gfortran.dg/array_memset_2.f90: Likewise.
+ * gfortran.dg/array_reference_1.f90: Likewise.
+ * gfortran.dg/array_return_value_1.f90: Likewise.
+ * gfortran.dg/array_section_1.f90: Likewise.
+ * gfortran.dg/array_temporaries_3.f90: Likewise.
+ * gfortran.dg/arrayio_1.f90: Likewise.
+ * gfortran.dg/arrayio_10.f90: Likewise.
+ * gfortran.dg/arrayio_11.f90: Likewise.
+ * gfortran.dg/arrayio_12.f90: Likewise.
+ * gfortran.dg/arrayio_13.f90: Likewise.
+ * gfortran.dg/arrayio_14.f90: Likewise.
+ * gfortran.dg/arrayio_16.f90: Likewise.
+ * gfortran.dg/arrayio_2.f90: Likewise.
+ * gfortran.dg/arrayio_3.f90: Likewise.
+ * gfortran.dg/arrayio_4.f90: Likewise.
+ * gfortran.dg/arrayio_5.f90: Likewise.
+ * gfortran.dg/arrayio_6.f90: Likewise.
+ * gfortran.dg/arrayio_7.f90: Likewise.
+ * gfortran.dg/arrayio_8.f90: Likewise.
+ * gfortran.dg/arrayio_9.f90: Likewise.
+ * gfortran.dg/arrayio_derived_1.f90: Likewise.
+ * gfortran.dg/assign_10.f90: Likewise.
+ * gfortran.dg/assign_9.f90: Likewise.
+ * gfortran.dg/assign_func_dtcomp_1.f90: Likewise.
+ * gfortran.dg/assignment_1.f90: Likewise.
+ * gfortran.dg/associate_1.f03: Likewise.
+ * gfortran.dg/associate_11.f90: Likewise.
+ * gfortran.dg/associate_13.f90: Likewise.
+ * gfortran.dg/associate_15.f90: Likewise.
+ * gfortran.dg/associate_17.f90: Likewise.
+ * gfortran.dg/associate_18.f08: Likewise.
+ * gfortran.dg/associate_19.f03: Likewise.
+ * gfortran.dg/associate_20.f03: Likewise.
+ * gfortran.dg/associate_22.f90: Likewise.
+ * gfortran.dg/associate_23.f90: Likewise.
+ * gfortran.dg/associate_24.f90: Likewise.
+ * gfortran.dg/associate_25.f90: Likewise.
+ * gfortran.dg/associate_27.f90: Likewise.
+ * gfortran.dg/associate_28.f90: Likewise.
+ * gfortran.dg/associate_32.f03: Likewise.
+ * gfortran.dg/associate_33.f03: Likewise.
+ * gfortran.dg/associate_34.f90: Likewise.
+ * gfortran.dg/associate_6.f03: Likewise.
+ * gfortran.dg/associate_7.f03: Likewise.
+ * gfortran.dg/associate_8.f03: Likewise.
+ * gfortran.dg/associate_9.f03: Likewise.
+ * gfortran.dg/associated_1.f90: Likewise.
+ * gfortran.dg/associated_2.f90: Likewise.
+ * gfortran.dg/associated_5.f90: Likewise.
+ * gfortran.dg/associated_6.f90: Likewise.
+ * gfortran.dg/associated_target_3.f90: Likewise.
+ * gfortran.dg/associated_target_4.f90: Likewise.
+ * gfortran.dg/associated_target_5.f03: Likewise.
+ * gfortran.dg/associated_target_6.f03: Likewise.
+ * gfortran.dg/assumed_dummy_1.f90: Likewise.
+ * gfortran.dg/assumed_rank_1.f90: Likewise.
+ * gfortran.dg/assumed_rank_10.f90: Likewise.
+ * gfortran.dg/assumed_rank_2.f90: Likewise.
+ * gfortran.dg/assumed_rank_7.f90: Likewise.
+ * gfortran.dg/assumed_rank_8.f90: Likewise.
+ * gfortran.dg/assumed_rank_9.f90: Likewise.
+ * gfortran.dg/assumed_rank_bounds_1.f90: Likewise.
+ * gfortran.dg/assumed_rank_bounds_2.f90: Likewise.
+ * gfortran.dg/assumed_shape_ranks_2.f90: Likewise.
+ * gfortran.dg/assumed_type_2.f90: Likewise.
+ * gfortran.dg/atan2_1.f90: Likewise.
+ * gfortran.dg/auto_array_1.f90: Likewise.
+ * gfortran.dg/auto_char_dummy_array_1.f90: Likewise.
+ * gfortran.dg/auto_char_dummy_array_3.f90: Likewise.
+ * gfortran.dg/auto_char_len_3.f90: Likewise.
+ * gfortran.dg/auto_char_pointer_array_result_1.f90: Likewise.
+ * gfortran.dg/auto_internal_assumed.f90: Likewise.
+ * gfortran.dg/auto_pointer_array_result_1.f90: Likewise.
+ * gfortran.dg/auto_save_2.f90: Likewise.
+ * gfortran.dg/automatic_default_init_1.f90: Likewise.
+ * gfortran.dg/backslash_1.f90: Likewise.
+ * gfortran.dg/backslash_2.f90: Likewise.
+ * gfortran.dg/backslash_3.f: Likewise.
+ * gfortran.dg/backspace_1.f: Likewise.
+ * gfortran.dg/backspace_10.f90: Likewise.
+ * gfortran.dg/backspace_11.f90: Likewise.
+ * gfortran.dg/backspace_2.f: Likewise.
+ * gfortran.dg/backspace_3.f: Likewise.
+ * gfortran.dg/backspace_4.f: Likewise.
+ * gfortran.dg/backspace_5.f: Likewise.
+ * gfortran.dg/backspace_6.f: Likewise.
+ * gfortran.dg/backspace_7.f90: Likewise.
+ * gfortran.dg/backspace_8.f: Likewise.
+ * gfortran.dg/backspace_9.f: Likewise.
+ * gfortran.dg/bessel_1.f90: Likewise.
+ * gfortran.dg/bessel_2.f90: Likewise.
+ * gfortran.dg/bessel_5.f90: Likewise.
+ * gfortran.dg/bessel_6.f90: Likewise.
+ * gfortran.dg/bessel_7.f90: Likewise.
+ * gfortran.dg/bind_c_dts_2.f03: Likewise.
+ * gfortran.dg/bind_c_dts_3.f03: Likewise.
+ * gfortran.dg/bind_c_usage_15.f90: Likewise.
+ * gfortran.dg/bind_c_usage_16.f03: Likewise.
+ * gfortran.dg/bind_c_usage_17.f90: Likewise.
+ * gfortran.dg/bind_c_usage_24.f90: Likewise.
+ * gfortran.dg/binding_c_table_15_1.f03: Likewise.
+ * gfortran.dg/binding_label_tests_16.f03: Likewise.
+ * gfortran.dg/binding_label_tests_23.f90: Likewise.
+ * gfortran.dg/bit_comparison_1.F90: Likewise.
+ * gfortran.dg/bit_comparison_2.F90: Likewise.
+ * gfortran.dg/block_1.f08: Likewise.
+ * gfortran.dg/block_13.f08: Likewise.
+ * gfortran.dg/block_14.f90: Likewise.
+ * gfortran.dg/block_2.f08: Likewise.
+ * gfortran.dg/block_6.f08: Likewise.
+ * gfortran.dg/block_7.f08: Likewise.
+ * gfortran.dg/block_8.f08: Likewise.
+ * gfortran.dg/blockdata_1.f90: Likewise.
+ * gfortran.dg/bound_1.f90: Likewise.
+ * gfortran.dg/bound_2.f90: Likewise.
+ * gfortran.dg/bound_3.f90: Likewise.
+ * gfortran.dg/bound_4.f90: Likewise.
+ * gfortran.dg/bound_5.f90: Likewise.
+ * gfortran.dg/bound_6.f90: Likewise.
+ * gfortran.dg/bound_7.f90: Likewise.
+ * gfortran.dg/bound_8.f90: Likewise.
+ * gfortran.dg/bound_9.f90: Likewise.
+ * gfortran.dg/bound_simplification_1.f90: Likewise.
+ * gfortran.dg/bound_simplification_3.f90: Likewise.
+ * gfortran.dg/bound_simplification_4.f90: Likewise.
+ * gfortran.dg/bound_simplification_5.f90: Likewise.
+ * gfortran.dg/bound_simplification_6.f90: Likewise.
+ * gfortran.dg/bounds_check_1.f90: Likewise.
+ * gfortran.dg/bounds_check_12.f90: Likewise.
+ * gfortran.dg/bounds_check_14.f90: Likewise.
+ * gfortran.dg/bounds_check_15.f90: Likewise.
+ * gfortran.dg/bounds_check_19.f90: Likewise.
+ * gfortran.dg/bounds_check_8.f90: Likewise.
+ * gfortran.dg/bounds_check_9.f90: Likewise.
+ * gfortran.dg/bounds_check_fail_2.f90: Likewise.
+ * gfortran.dg/bounds_check_fail_3.f90: Likewise.
+ * gfortran.dg/bounds_check_fail_4.f90: Likewise.
+ * gfortran.dg/boz_1.f90: Likewise.
+ * gfortran.dg/boz_11.f90: Likewise.
+ * gfortran.dg/boz_13.f90: Likewise.
+ * gfortran.dg/boz_14.f90: Likewise.
+ * gfortran.dg/boz_15.f90: Likewise.
+ * gfortran.dg/boz_3.f90: Likewise.
+ * gfortran.dg/boz_6.f90: Likewise.
+ * gfortran.dg/boz_9.f90: Likewise.
+ * gfortran.dg/byte_1.f90: Likewise.
+ * gfortran.dg/byte_2.f90: Likewise.
+ * gfortran.dg/c_assoc.f90: Likewise.
+ * gfortran.dg/c_assoc_2.f03: Likewise.
+ * gfortran.dg/c_assoc_3.f90: Likewise.
+ * gfortran.dg/c_by_val_1.f: Likewise.
+ * gfortran.dg/c_by_val_5.f90: Likewise.
+ * gfortran.dg/c_char_tests.f03: Likewise.
+ * gfortran.dg/c_char_tests_2.f03: Likewise.
+ * gfortran.dg/c_f_pointer_complex.f03: Likewise.
+ * gfortran.dg/c_f_pointer_logical.f03: Likewise.
+ * gfortran.dg/c_f_pointer_shape_tests_2.f03: Likewise.
+ * gfortran.dg/c_f_pointer_shape_tests_4.f03: Likewise.
+ * gfortran.dg/c_f_pointer_shape_tests_5.f90: Likewise.
+ * gfortran.dg/c_f_pointer_tests.f90: Likewise.
+ * gfortran.dg/c_f_pointer_tests_4.f90: Likewise.
+ * gfortran.dg/c_kind_int128_test2.f03: Likewise.
+ * gfortran.dg/c_kind_params.f90: Likewise.
+ * gfortran.dg/c_loc_test_20.f90: Likewise.
+ * gfortran.dg/c_loc_tests_2.f03: Likewise.
+ * gfortran.dg/c_ptr_tests_14.f90: Likewise.
+ * gfortran.dg/c_ptr_tests_15.f90: Likewise.
+ * gfortran.dg/c_size_t_test.f03: Likewise.
+ * gfortran.dg/c_sizeof_1.f90: Likewise.
+ * gfortran.dg/c_sizeof_5.f90: Likewise.
+ * gfortran.dg/c_sizeof_6.f90: Likewise.
+ * gfortran.dg/char4_iunit_1.f03: Likewise.
+ * gfortran.dg/char4_iunit_2.f03: Likewise.
+ * gfortran.dg/char_allocation_1.f90: Likewise.
+ * gfortran.dg/char_array_constructor.f90: Likewise.
+ * gfortran.dg/char_array_structure_constructor.f90: Likewise.
+ * gfortran.dg/char_assign_1.f90: Likewise.
+ * gfortran.dg/char_associated_1.f90: Likewise.
+ * gfortran.dg/char_cast_2.f90: Likewise.
+ * gfortran.dg/char_comparison_1.f: Likewise.
+ * gfortran.dg/char_component_initializer_1.f90: Likewise.
+ * gfortran.dg/char_component_initializer_2.f90: Likewise.
+ * gfortran.dg/char_cons_len.f90: Likewise.
+ * gfortran.dg/char_conversion.f90: Likewise.
+ * gfortran.dg/char_cshift_1.f90: Likewise.
+ * gfortran.dg/char_cshift_2.f90: Likewise.
+ * gfortran.dg/char_decl_2.f90: Likewise.
+ * gfortran.dg/char_eoshift_1.f90: Likewise.
+ * gfortran.dg/char_eoshift_2.f90: Likewise.
+ * gfortran.dg/char_eoshift_3.f90: Likewise.
+ * gfortran.dg/char_eoshift_4.f90: Likewise.
+ * gfortran.dg/char_eoshift_5.f90: Likewise.
+ * gfortran.dg/char_expr_1.f90: Likewise.
+ * gfortran.dg/char_expr_3.f90: Likewise.
+ * gfortran.dg/char_initialiser_actual.f90: Likewise.
+ * gfortran.dg/char_length_12.f90: Likewise.
+ * gfortran.dg/char_length_14.f90: Likewise.
+ * gfortran.dg/char_length_15.f90: Likewise.
+ * gfortran.dg/char_length_17.f90: Likewise.
+ * gfortran.dg/char_length_20.f90: Likewise.
+ * gfortran.dg/char_length_21.f90: Likewise.
+ * gfortran.dg/char_length_5.f90: Likewise.
+ * gfortran.dg/char_length_6.f90: Likewise.
+ * gfortran.dg/char_length_7.f90: Likewise.
+ * gfortran.dg/char_length_8.f90: Likewise.
+ * gfortran.dg/char_pack_1.f90: Likewise.
+ * gfortran.dg/char_pack_2.f90: Likewise.
+ * gfortran.dg/char_pointer_assign.f90: Likewise.
+ * gfortran.dg/char_pointer_assign_3.f90: Likewise.
+ * gfortran.dg/char_pointer_comp_assign.f90: Likewise.
+ * gfortran.dg/char_pointer_dependency.f90: Likewise.
+ * gfortran.dg/char_pointer_dummy.f90: Likewise.
+ * gfortran.dg/char_pointer_func.f90: Likewise.
+ * gfortran.dg/char_reshape_1.f90: Likewise.
+ * gfortran.dg/char_result_1.f90: Likewise.
+ * gfortran.dg/char_result_12.f90: Likewise.
+ * gfortran.dg/char_result_13.f90: Likewise.
+ * gfortran.dg/char_result_14.f90: Likewise.
+ * gfortran.dg/char_result_15.f90: Likewise.
+ * gfortran.dg/char_result_2.f90: Likewise.
+ * gfortran.dg/char_result_3.f90: Likewise.
+ * gfortran.dg/char_result_4.f90: Likewise.
+ * gfortran.dg/char_result_5.f90: Likewise.
+ * gfortran.dg/char_result_6.f90: Likewise.
+ * gfortran.dg/char_result_7.f90: Likewise.
+ * gfortran.dg/char_result_8.f90: Likewise.
+ * gfortran.dg/char_spread_1.f90: Likewise.
+ * gfortran.dg/char_transpose_1.f90: Likewise.
+ * gfortran.dg/char_type_len.f90: Likewise.
+ * gfortran.dg/char_unpack_1.f90: Likewise.
+ * gfortran.dg/char_unpack_2.f90: Likewise.
+ * gfortran.dg/character_array_constructor_1.f90: Likewise.
+ * gfortran.dg/character_comparison_1.f90: Likewise.
+ * gfortran.dg/character_comparison_2.f90: Likewise.
+ * gfortran.dg/character_comparison_3.f90: Likewise.
+ * gfortran.dg/character_comparison_4.f90: Likewise.
+ * gfortran.dg/character_comparison_5.f90: Likewise.
+ * gfortran.dg/character_comparison_6.f90: Likewise.
+ * gfortran.dg/character_comparison_7.f90: Likewise.
+ * gfortran.dg/character_comparison_8.f90: Likewise.
+ * gfortran.dg/character_comparison_9.f90: Likewise.
+ * gfortran.dg/charlen_15.f90: Likewise.
+ * gfortran.dg/charlen_16.f90: Likewise.
+ * gfortran.dg/chkbits.f90: Likewise.
+ * gfortran.dg/chmod_1.f90: Likewise.
+ * gfortran.dg/chmod_2.f90: Likewise.
+ * gfortran.dg/chmod_3.f90: Likewise.
+ * gfortran.dg/class_1.f03: Likewise.
+ * gfortran.dg/class_18.f03: Likewise.
+ * gfortran.dg/class_19.f03: Likewise.
+ * gfortran.dg/class_35.f90: Likewise.
+ * gfortran.dg/class_46.f03: Likewise.
+ * gfortran.dg/class_48.f90: Likewise.
+ * gfortran.dg/class_51.f90: Likewise.
+ * gfortran.dg/class_52.f90: Likewise.
+ * gfortran.dg/class_6.f03: Likewise.
+ * gfortran.dg/class_63.f90: Likewise.
+ * gfortran.dg/class_64.f90: Likewise.
+ * gfortran.dg/class_65.f90: Likewise.
+ * gfortran.dg/class_66.f90: Likewise.
+ * gfortran.dg/class_67.f90: Likewise.
+ * gfortran.dg/class_9.f03: Likewise.
+ * gfortran.dg/class_alias.f90: Likewise.
+ * gfortran.dg/class_allocate_1.f03: Likewise.
+ * gfortran.dg/class_allocate_10.f03: Likewise.
+ * gfortran.dg/class_allocate_13.f90: Likewise.
+ * gfortran.dg/class_allocate_14.f90: Likewise.
+ * gfortran.dg/class_allocate_15.f90: Likewise.
+ * gfortran.dg/class_allocate_19.f03: Likewise.
+ * gfortran.dg/class_allocate_21.f90: Likewise.
+ * gfortran.dg/class_allocate_22.f90: Likewise.
+ * gfortran.dg/class_allocate_3.f03: Likewise.
+ * gfortran.dg/class_allocate_4.f03: Likewise.
+ * gfortran.dg/class_allocate_5.f90: Likewise.
+ * gfortran.dg/class_allocate_6.f03: Likewise.
+ * gfortran.dg/class_allocate_7.f03: Likewise.
+ * gfortran.dg/class_allocate_8.f03: Likewise.
+ * gfortran.dg/class_allocate_9.f03: Likewise.
+ * gfortran.dg/class_array_1.f03: Likewise.
+ * gfortran.dg/class_array_14.f90: Likewise.
+ * gfortran.dg/class_array_15.f03: Likewise.
+ * gfortran.dg/class_array_16.f90: Likewise.
+ * gfortran.dg/class_array_2.f03: Likewise.
+ * gfortran.dg/class_array_20.f03: Likewise.
+ * gfortran.dg/class_array_21.f03: Likewise.
+ * gfortran.dg/class_array_3.f03: Likewise.
+ * gfortran.dg/class_array_4.f03: Likewise.
+ * gfortran.dg/class_array_7.f03: Likewise.
+ * gfortran.dg/class_array_8.f03: Likewise.
+ * gfortran.dg/class_array_9.f03: Likewise.
+ * gfortran.dg/class_defined_operator_1.f03: Likewise.
+ * gfortran.dg/class_dummy_1.f03: Likewise.
+ * gfortran.dg/class_optional_1.f90: Likewise.
+ * gfortran.dg/class_optional_2.f90: Likewise.
+ * gfortran.dg/class_result_5.f90: Likewise.
+ * gfortran.dg/class_result_6.f90: Likewise.
+ * gfortran.dg/class_to_type_1.f03: Likewise.
+ * gfortran.dg/class_to_type_2.f90: Likewise.
+ * gfortran.dg/class_to_type_3.f03: Likewise.
+ * gfortran.dg/class_to_type_4.f90: Likewise.
+ * gfortran.dg/coarray/alloc_comp_1.f90: Likewise.
+ * gfortran.dg/coarray/alloc_comp_4.f90: Likewise.
+ * gfortran.dg/coarray/allocate_errgmsg.f90: Likewise.
+ * gfortran.dg/coarray/atomic_1.f90: Likewise.
+ * gfortran.dg/coarray/atomic_2.f90: Likewise.
+ * gfortran.dg/coarray/codimension.f90: Likewise.
+ * gfortran.dg/coarray/coindexed_1.f90: Likewise.
+ * gfortran.dg/coarray/collectives_1.f90: Likewise.
+ * gfortran.dg/coarray/collectives_2.f90: Likewise.
+ * gfortran.dg/coarray/collectives_3.f90: Likewise.
+ * gfortran.dg/coarray/collectives_4.f90: Likewise.
+ * gfortran.dg/coarray/cosubscript_1.f90: Likewise.
+ * gfortran.dg/coarray/dummy_1.f90: Likewise.
+ * gfortran.dg/coarray/event_1.f90: Likewise.
+ * gfortran.dg/coarray/event_2.f90: Likewise.
+ * gfortran.dg/coarray/get_array.f90: Likewise.
+ * gfortran.dg/coarray/image_index_1.f90: Likewise.
+ * gfortran.dg/coarray/image_index_2.f90: Likewise.
+ * gfortran.dg/coarray/image_index_3.f90: Likewise.
+ * gfortran.dg/coarray/lib_realloc_1.f90: Likewise.
+ * gfortran.dg/coarray/lock_1.f90: Likewise.
+ * gfortran.dg/coarray/lock_2.f90: Likewise.
+ * gfortran.dg/coarray/move_alloc_1.f90: Likewise.
+ * gfortran.dg/coarray/poly_run_1.f90: Likewise.
+ * gfortran.dg/coarray/poly_run_2.f90: Likewise.
+ * gfortran.dg/coarray/poly_run_3.f90: Likewise.
+ * gfortran.dg/coarray/ptr_comp_3.f08: Likewise.
+ * gfortran.dg/coarray/registering_1.f90: Likewise.
+ * gfortran.dg/coarray/scalar_alloc_1.f90: Likewise.
+ * gfortran.dg/coarray/scalar_alloc_2.f90: Likewise.
+ * gfortran.dg/coarray/send_array.f90: Likewise.
+ * gfortran.dg/coarray/send_char_array_1.f90: Likewise.
+ * gfortran.dg/coarray/sendget_array.f90: Likewise.
+ * gfortran.dg/coarray/subobject_1.f90: Likewise.
+ * gfortran.dg/coarray/sync_1.f90: Likewise.
+ * gfortran.dg/coarray/sync_3.f90: Likewise.
+ * gfortran.dg/coarray/this_image_1.f90: Likewise.
+ * gfortran.dg/coarray/this_image_2.f90: Likewise.
+ * gfortran.dg/coarray_13.f90: Likewise.
+ * gfortran.dg/coarray_15.f90: Likewise.
+ * gfortran.dg/coarray_16.f90: Likewise.
+ * gfortran.dg/coarray_2.f90: Likewise.
+ * gfortran.dg/coarray_23.f90: Likewise.
+ * gfortran.dg/coarray_40.f90: Likewise.
+ * gfortran.dg/coarray_alloc_comp_1.f08: Likewise.
+ * gfortran.dg/coarray_alloc_comp_2.f08: Likewise.
+ * gfortran.dg/coarray_allocate_10.f08: Likewise.
+ * gfortran.dg/coarray_allocate_2.f08: Likewise.
+ * gfortran.dg/coarray_allocate_3.f08: Likewise.
+ * gfortran.dg/coarray_allocate_4.f08: Likewise.
+ * gfortran.dg/coarray_allocate_5.f08: Likewise.
+ * gfortran.dg/coarray_allocate_7.f08: Likewise.
+ * gfortran.dg/coarray_allocate_8.f08: Likewise.
+ * gfortran.dg/coarray_allocate_9.f08: Likewise.
+ * gfortran.dg/coarray_lib_alloc_4.f90: Likewise.
+ * gfortran.dg/coarray_lib_comm_1.f90: Likewise.
+ * gfortran.dg/coarray_lib_realloc_1.f90: Likewise.
+ * gfortran.dg/coarray_lib_token_1.f90: Likewise.
+ * gfortran.dg/coarray_lib_token_2.f90: Likewise.
+ * gfortran.dg/coarray_ptr_comp_1.f08: Likewise.
+ * gfortran.dg/coarray_ptr_comp_2.f08: Likewise.
+ * gfortran.dg/coarray_send_by_ref_1.f08: Likewise.
+ * gfortran.dg/coarray_stat_2.f90: Likewise.
+ * gfortran.dg/coarray_subobject_1.f90: Likewise.
+ * gfortran.dg/coindexed_1.f90: Likewise.
+ * gfortran.dg/comma.f: Likewise.
+ * gfortran.dg/comma_format_extension_3.f: Likewise.
+ * gfortran.dg/comma_format_extension_4.f: Likewise.
+ * gfortran.dg/common_2.f90: Likewise.
+ * gfortran.dg/common_4.f90: Likewise.
+ * gfortran.dg/common_align_1.f90: Likewise.
+ * gfortran.dg/common_align_2.f90: Likewise.
+ * gfortran.dg/common_equivalence_1.f: Likewise.
+ * gfortran.dg/common_pointer_1.f90: Likewise.
+ * gfortran.dg/common_resize_1.f: Likewise.
+ * gfortran.dg/complex_intrinsic_1.f90: Likewise.
+ * gfortran.dg/complex_intrinsic_3.f90: Likewise.
+ * gfortran.dg/complex_intrinsic_5.f90: Likewise.
+ * gfortran.dg/complex_intrinsic_7.f90: Likewise.
+ * gfortran.dg/complex_read.f90: Likewise.
+ * gfortran.dg/complex_write.f90: Likewise.
+ * gfortran.dg/constant_substring.f: Likewise.
+ * gfortran.dg/constructor_2.f90: Likewise.
+ * gfortran.dg/constructor_3.f90: Likewise.
+ * gfortran.dg/constructor_6.f90: Likewise.
+ * gfortran.dg/contained_1.f90: Likewise.
+ * gfortran.dg/contained_3.f90: Likewise.
+ * gfortran.dg/contained_equivalence_1.f90: Likewise.
+ * gfortran.dg/contained_module_proc_1.f90: Likewise.
+ * gfortran.dg/continuation_1.f90: Likewise.
+ * gfortran.dg/continuation_11.f90: Likewise.
+ * gfortran.dg/continuation_12.f90: Likewise.
+ * gfortran.dg/continuation_13.f90: Likewise.
+ * gfortran.dg/continuation_14.f: Likewise.
+ * gfortran.dg/continuation_8.f90: Likewise.
+ * gfortran.dg/convert_2.f90: Likewise.
+ * gfortran.dg/convert_implied_open.f90: Likewise.
+ * gfortran.dg/count_init_expr.f03: Likewise.
+ * gfortran.dg/cr_lf.f90: Likewise.
+ * gfortran.dg/cray_pointers_10.f90: Likewise.
+ * gfortran.dg/cray_pointers_2.f90: Likewise.
+ * gfortran.dg/cray_pointers_5.f90: Likewise.
+ * gfortran.dg/cray_pointers_7.f90: Likewise.
+ * gfortran.dg/cray_pointers_8.f90: Likewise.
+ * gfortran.dg/cshift_1.f90: Likewise.
+ * gfortran.dg/cshift_2.f90: Likewise.
+ * gfortran.dg/cshift_large_1.f90: Likewise.
+ * gfortran.dg/cshift_nan_1.f90: Likewise.
+ * gfortran.dg/csqrt_2.f: Likewise.
+ * gfortran.dg/data_array_1.f90: Likewise.
+ * gfortran.dg/data_char_1.f90: Likewise.
+ * gfortran.dg/data_char_2.f90: Likewise.
+ * gfortran.dg/data_char_3.f90: Likewise.
+ * gfortran.dg/data_derived_1.f90: Likewise.
+ * gfortran.dg/data_implied_do_1.f90: Likewise.
+ * gfortran.dg/data_namelist_conflict.f90: Likewise.
+ * gfortran.dg/deallocate_alloc_opt_3.f90: Likewise.
+ * gfortran.dg/deallocate_stat.f90: Likewise.
+ * gfortran.dg/deallocate_stat_2.f90: Likewise.
+ * gfortran.dg/debug/pr37738.f: Likewise.
+ * gfortran.dg/dec_bitwise_ops_1.f90: Likewise.
+ * gfortran.dg/dec_bitwise_ops_2.f90: Likewise.
+ * gfortran.dg/dec_exp_1.f90: Likewise.
+ * gfortran.dg/dec_init_1.f90: Likewise.
+ * gfortran.dg/dec_init_2.f90: Likewise.
+ * gfortran.dg/dec_init_3.f90: Likewise.
+ * gfortran.dg/dec_init_4.f90: Likewise.
+ * gfortran.dg/dec_io_1.f90: Likewise.
+ * gfortran.dg/dec_io_2.f90: Likewise.
+ * gfortran.dg/dec_io_2a.f90: Likewise.
+ * gfortran.dg/dec_io_6.f90: Likewise.
+ * gfortran.dg/dec_loc_rval_1.f90: Likewise.
+ * gfortran.dg/dec_logical_xor_1.f90: Likewise.
+ * gfortran.dg/dec_math.f90: Likewise.
+ * gfortran.dg/dec_parameter_1.f: Likewise.
+ * gfortran.dg/dec_parameter_2.f90: Likewise.
+ * gfortran.dg/dec_static_1.f90: Likewise.
+ * gfortran.dg/dec_static_2.f90: Likewise.
+ * gfortran.dg/dec_structure_1.f90: Likewise.
+ * gfortran.dg/dec_structure_10.f90: Likewise.
+ * gfortran.dg/dec_structure_18.f90: Likewise.
+ * gfortran.dg/dec_structure_19.f90: Likewise.
+ * gfortran.dg/dec_structure_2.f90: Likewise.
+ * gfortran.dg/dec_structure_22.f90: Likewise.
+ * gfortran.dg/dec_structure_3.f90: Likewise.
+ * gfortran.dg/dec_structure_4.f90: Likewise.
+ * gfortran.dg/dec_structure_5.f90: Likewise.
+ * gfortran.dg/dec_structure_6.f90: Likewise.
+ * gfortran.dg/dec_structure_7.f90: Likewise.
+ * gfortran.dg/dec_union_1.f90: Likewise.
+ * gfortran.dg/dec_union_2.f90: Likewise.
+ * gfortran.dg/dec_union_3.f90: Likewise.
+ * gfortran.dg/dec_union_4.f90: Likewise.
+ * gfortran.dg/dec_union_5.f90: Likewise.
+ * gfortran.dg/default_format_1.f90: Likewise.
+ * gfortran.dg/default_format_2.f90: Likewise.
+ * gfortran.dg/default_format_denormal_1.f90: Likewise.
+ * gfortran.dg/default_format_denormal_2.f90: Likewise.
+ * gfortran.dg/default_initialization_3.f90: Likewise.
+ * gfortran.dg/default_initialization_4.f90: Likewise.
+ * gfortran.dg/default_initialization_5.f90: Likewise.
+ * gfortran.dg/deferred_character_1.f90: Likewise.
+ * gfortran.dg/deferred_character_10.f90: Likewise.
+ * gfortran.dg/deferred_character_11.f90: Likewise.
+ * gfortran.dg/deferred_character_12.f90: Likewise.
+ * gfortran.dg/deferred_character_13.f90: Likewise.
+ * gfortran.dg/deferred_character_14.f90: Likewise.
+ * gfortran.dg/deferred_character_15.f90: Likewise.
+ * gfortran.dg/deferred_character_16.f90: Likewise.
+ * gfortran.dg/deferred_character_2.f90: Likewise.
+ * gfortran.dg/deferred_character_3.f90: Likewise.
+ * gfortran.dg/deferred_character_4.f90: Likewise.
+ * gfortran.dg/deferred_character_5.f90: Likewise.
+ * gfortran.dg/deferred_character_6.f90: Likewise.
+ * gfortran.dg/deferred_character_7.f90: Likewise.
+ * gfortran.dg/deferred_character_8.f90: Likewise.
+ * gfortran.dg/deferred_character_9.f90: Likewise.
+ * gfortran.dg/deferred_character_assignment_1.f90: Likewise.
+ * gfortran.dg/deferred_type_component_1.f90: Likewise.
+ * gfortran.dg/deferred_type_component_2.f90: Likewise.
+ * gfortran.dg/deferred_type_param_2.f90: Likewise.
+ * gfortran.dg/deferred_type_param_4.f90: Likewise.
+ * gfortran.dg/deferred_type_param_5.f90: Likewise.
+ * gfortran.dg/deferred_type_param_6.f90: Likewise.
+ * gfortran.dg/deferred_type_param_8.f90: Likewise.
+ * gfortran.dg/deferred_type_param_9.f90: Likewise.
+ * gfortran.dg/deferred_type_proc_pointer_1.f90: Likewise.
+ * gfortran.dg/deferred_type_proc_pointer_2.f90: Likewise.
+ * gfortran.dg/defined_assignment_1.f90: Likewise.
+ * gfortran.dg/defined_assignment_10.f90: Likewise.
+ * gfortran.dg/defined_assignment_11.f90: Likewise.
+ * gfortran.dg/defined_assignment_2.f90: Likewise.
+ * gfortran.dg/defined_assignment_3.f90: Likewise.
+ * gfortran.dg/defined_assignment_4.f90: Likewise.
+ * gfortran.dg/defined_assignment_5.f90: Likewise.
+ * gfortran.dg/defined_assignment_8.f90: Likewise.
+ * gfortran.dg/defined_assignment_9.f90: Likewise.
+ * gfortran.dg/dependency_2.f90: Likewise.
+ * gfortran.dg/dependency_21.f90: Likewise.
+ * gfortran.dg/dependency_22.f90: Likewise.
+ * gfortran.dg/dependency_23.f90: Likewise.
+ * gfortran.dg/dependency_24.f90: Likewise.
+ * gfortran.dg/dependency_25.f90: Likewise.
+ * gfortran.dg/dependency_26.f90: Likewise.
+ * gfortran.dg/dependency_39.f90: Likewise.
+ * gfortran.dg/dependency_40.f90: Likewise.
+ * gfortran.dg/dependency_41.f90: Likewise.
+ * gfortran.dg/dependency_42.f90: Likewise.
+ * gfortran.dg/dependency_43.f90: Likewise.
+ * gfortran.dg/dependency_44.f90: Likewise.
+ * gfortran.dg/dependency_45.f90: Likewise.
+ * gfortran.dg/dependency_50.f90: Likewise.
+ * gfortran.dg/dependency_51.f90: Likewise.
+ * gfortran.dg/dependent_decls_1.f90: Likewise.
+ * gfortran.dg/der_array_1.f90: Likewise.
+ * gfortran.dg/der_array_io_1.f90: Likewise.
+ * gfortran.dg/der_array_io_2.f90: Likewise.
+ * gfortran.dg/der_array_io_3.f90: Likewise.
+ * gfortran.dg/der_io_1.f90: Likewise.
+ * gfortran.dg/der_io_3.f90: Likewise.
+ * gfortran.dg/der_pointer_2.f90: Likewise.
+ * gfortran.dg/derived_comp_array_ref_1.f90: Likewise.
+ * gfortran.dg/derived_comp_array_ref_2.f90: Likewise.
+ * gfortran.dg/derived_comp_array_ref_4.f90: Likewise.
+ * gfortran.dg/derived_comp_array_ref_7.f90: Likewise.
+ * gfortran.dg/derived_constructor_char_3.f90: Likewise.
+ * gfortran.dg/derived_constructor_comps_1.f90: Likewise.
+ * gfortran.dg/derived_constructor_comps_4.f90: Likewise.
+ * gfortran.dg/derived_constructor_comps_5.f90: Likewise.
+ * gfortran.dg/derived_constructor_comps_6.f90: Likewise.
+ * gfortran.dg/derived_external_function_1.f90: Likewise.
+ * gfortran.dg/derived_init_1.f90: Likewise.
+ * gfortran.dg/derived_init_2.f90: Likewise.
+ * gfortran.dg/derived_init_3.f90: Likewise.
+ * gfortran.dg/derived_init_4.f90: Likewise.
+ * gfortran.dg/derived_pointer_null_1.f90: Likewise.
+ * gfortran.dg/derived_pointer_recursion_2.f90: Likewise.
+ * gfortran.dg/dev_null.F90: Likewise.
+ * gfortran.dg/dfloat_1.f90: Likewise.
+ * gfortran.dg/dim_sum_1.f90: Likewise.
+ * gfortran.dg/dim_sum_2.f90: Likewise.
+ * gfortran.dg/dim_sum_3.f90: Likewise.
+ * gfortran.dg/direct_io_10.f: Likewise.
+ * gfortran.dg/direct_io_11.f90: Likewise.
+ * gfortran.dg/direct_io_12.f90: Likewise.
+ * gfortran.dg/direct_io_2.f90: Likewise.
+ * gfortran.dg/direct_io_3.f90: Likewise.
+ * gfortran.dg/direct_io_4.f90: Likewise.
+ * gfortran.dg/direct_io_5.f90: Likewise.
+ * gfortran.dg/direct_io_6.f90: Likewise.
+ * gfortran.dg/direct_io_7.f90: Likewise.
+ * gfortran.dg/direct_io_8.f90: Likewise.
+ * gfortran.dg/direct_io_9.f: Likewise.
+ * gfortran.dg/do_1.f90: Likewise.
+ * gfortran.dg/do_3.F90: Likewise.
+ * gfortran.dg/do_concurrent_2.f90: Likewise.
+ * gfortran.dg/do_concurrent_4.f90: Likewise.
+ * gfortran.dg/do_corner_warn.f90: Likewise.
+ * gfortran.dg/do_iterator_2.f90: Likewise.
+ * gfortran.dg/dollar_edit_descriptor_1.f: Likewise.
+ * gfortran.dg/dollar_edit_descriptor_2.f: Likewise.
+ * gfortran.dg/dos_eol.f: Likewise.
+ * gfortran.dg/dot_product_1.f03: Likewise.
+ * gfortran.dg/dot_product_2.f90: Likewise.
+ * gfortran.dg/dot_product_4.f90: Likewise.
+ * gfortran.dg/dshift_1.F90: Likewise.
+ * gfortran.dg/dshift_2.F90: Likewise.
+ * gfortran.dg/dtio_1.f90: Likewise.
+ * gfortran.dg/dtio_10.f90: Likewise.
+ * gfortran.dg/dtio_12.f90: Likewise.
+ * gfortran.dg/dtio_14.f90: Likewise.
+ * gfortran.dg/dtio_15.f90: Likewise.
+ * gfortran.dg/dtio_16.f90: Likewise.
+ * gfortran.dg/dtio_17.f90: Likewise.
+ * gfortran.dg/dtio_19.f90: Likewise.
+ * gfortran.dg/dtio_2.f90: Likewise.
+ * gfortran.dg/dtio_20.f03: Likewise.
+ * gfortran.dg/dtio_22.f90: Likewise.
+ * gfortran.dg/dtio_24.f90: Likewise.
+ * gfortran.dg/dtio_25.f90: Likewise.
+ * gfortran.dg/dtio_26.f03: Likewise.
+ * gfortran.dg/dtio_27.f90: Likewise.
+ * gfortran.dg/dtio_28.f03: Likewise.
+ * gfortran.dg/dtio_3.f90: Likewise.
+ * gfortran.dg/dtio_30.f03: Likewise.
+ * gfortran.dg/dtio_31.f03: Likewise.
+ * gfortran.dg/dtio_32.f03: Likewise.
+ * gfortran.dg/dtio_4.f90: Likewise.
+ * gfortran.dg/dtio_5.f90: Likewise.
+ * gfortran.dg/dtio_7.f90: Likewise.
+ * gfortran.dg/dtio_8.f90: Likewise.
+ * gfortran.dg/dtio_9.f90: Likewise.
+ * gfortran.dg/dummy_procedure_3.f90: Likewise.
+ * gfortran.dg/dummy_procedure_7.f90: Likewise.
+ * gfortran.dg/dup_save_1.f90: Likewise.
+ * gfortran.dg/dup_save_2.f90: Likewise.
+ * gfortran.dg/dynamic_dispatch_1.f03: Likewise.
+ * gfortran.dg/dynamic_dispatch_11.f03: Likewise.
+ * gfortran.dg/dynamic_dispatch_12.f90: Likewise.
+ * gfortran.dg/dynamic_dispatch_2.f03: Likewise.
+ * gfortran.dg/dynamic_dispatch_3.f03: Likewise.
+ * gfortran.dg/dynamic_dispatch_4.f03: Likewise.
+ * gfortran.dg/dynamic_dispatch_5.f03: Likewise.
+ * gfortran.dg/dynamic_dispatch_7.f03: Likewise.
+ * gfortran.dg/dynamic_dispatch_8.f03: Likewise.
+ * gfortran.dg/dynamic_dispatch_9.f03: Likewise.
+ * gfortran.dg/e_d_fmt.f90: Likewise.
+ * gfortran.dg/edit_real_1.f90: Likewise.
+ * gfortran.dg/elemental_by_value_1.f90: Likewise.
+ * gfortran.dg/elemental_dependency_1.f90: Likewise.
+ * gfortran.dg/elemental_dependency_4.f90: Likewise.
+ * gfortran.dg/elemental_dependency_5.f90: Likewise.
+ * gfortran.dg/elemental_dependency_6.f90: Likewise.
+ * gfortran.dg/elemental_optional_args_2.f90: Likewise.
+ * gfortran.dg/elemental_optional_args_3.f90: Likewise.
+ * gfortran.dg/elemental_optional_args_4.f90: Likewise.
+ * gfortran.dg/elemental_optional_args_5.f03: Likewise.
+ * gfortran.dg/elemental_optional_args_6.f90: Likewise.
+ * gfortran.dg/elemental_optional_args_7.f90: Likewise.
+ * gfortran.dg/elemental_scalar_args_1.f90: Likewise.
+ * gfortran.dg/elemental_scalar_args_2.f90: Likewise.
+ * gfortran.dg/elemental_subroutine_1.f90: Likewise.
+ * gfortran.dg/elemental_subroutine_10.f90: Likewise.
+ * gfortran.dg/elemental_subroutine_11.f90: Likewise.
+ * gfortran.dg/elemental_subroutine_2.f90: Likewise.
+ * gfortran.dg/elemental_subroutine_3.f90: Likewise.
+ * gfortran.dg/elemental_subroutine_7.f90: Likewise.
+ * gfortran.dg/elemental_subroutine_9.f90: Likewise.
+ * gfortran.dg/empty_format_1.f90: Likewise.
+ * gfortran.dg/endfile.f: Likewise.
+ * gfortran.dg/endfile.f90: Likewise.
+ * gfortran.dg/endfile_2.f90: Likewise.
+ * gfortran.dg/entry_1.f90: Likewise.
+ * gfortran.dg/entry_10.f90: Likewise.
+ * gfortran.dg/entry_12.f90: Likewise.
+ * gfortran.dg/entry_13.f90: Likewise.
+ * gfortran.dg/entry_14.f90: Likewise.
+ * gfortran.dg/entry_16.f90: Likewise.
+ * gfortran.dg/entry_3.f90: Likewise.
+ * gfortran.dg/entry_6.f90: Likewise.
+ * gfortran.dg/entry_9.f90: Likewise.
+ * gfortran.dg/entry_array_specs_2.f: Likewise.
+ * gfortran.dg/enum_1.f90: Likewise.
+ * gfortran.dg/enum_9.f90: Likewise.
+ * gfortran.dg/eof_1.f90: Likewise.
+ * gfortran.dg/eof_2.f90: Likewise.
+ * gfortran.dg/eof_4.f90: Likewise.
+ * gfortran.dg/eof_5.f90: Likewise.
+ * gfortran.dg/eor_handling_1.f90: Likewise.
+ * gfortran.dg/eor_handling_2.f90: Likewise.
+ * gfortran.dg/eor_handling_3.f90: Likewise.
+ * gfortran.dg/eor_handling_4.f90: Likewise.
+ * gfortran.dg/eor_handling_5.f90: Likewise.
+ * gfortran.dg/eoshift_3.f90: Likewise.
+ * gfortran.dg/eoshift_4.f90: Likewise.
+ * gfortran.dg/eoshift_5.f90: Likewise.
+ * gfortran.dg/eoshift_6.f90: Likewise.
+ * gfortran.dg/eoshift_large_1.f90: Likewise.
+ * gfortran.dg/equiv_6.f90: Likewise.
+ * gfortran.dg/equiv_7.f90: Likewise.
+ * gfortran.dg/equiv_9.f90: Likewise.
+ * gfortran.dg/equiv_constraint_4.f90: Likewise.
+ * gfortran.dg/erf_2.F90: Likewise.
+ * gfortran.dg/erf_3.F90: Likewise.
+ * gfortran.dg/erfc_scaled_1.f90: Likewise.
+ * gfortran.dg/error_format_2.f90: Likewise.
+ * gfortran.dg/error_recovery_5.f90: Likewise.
+ * gfortran.dg/execute_command_line_2.f90: Likewise.
+ * gfortran.dg/execute_command_line_3.f90: Likewise.
+ * gfortran.dg/exit_1.f08: Likewise.
+ * gfortran.dg/exit_3.f08: Likewise.
+ * gfortran.dg/exponent_1.f90: Likewise.
+ * gfortran.dg/exponent_2.f90: Likewise.
+ * gfortran.dg/extended_char_comparison_1.f: Likewise.
+ * gfortran.dg/extends_1.f03: Likewise.
+ * gfortran.dg/extends_16.f90: Likewise.
+ * gfortran.dg/extends_2.f03: Likewise.
+ * gfortran.dg/extends_3.f03: Likewise.
+ * gfortran.dg/extends_4.f03: Likewise.
+ * gfortran.dg/extends_type_of_1.f03: Likewise.
+ * gfortran.dg/extends_type_of_2.f03: Likewise.
+ * gfortran.dg/external_procedures_3.f90: Likewise.
+ * gfortran.dg/f2003_inquire_1.f03: Likewise.
+ * gfortran.dg/f2003_io_1.f03: Likewise.
+ * gfortran.dg/f2003_io_4.f03: Likewise.
+ * gfortran.dg/f2003_io_5.f03: Likewise.
+ * gfortran.dg/f2003_io_6.f03: Likewise.
+ * gfortran.dg/f2003_io_7.f03: Likewise.
+ * gfortran.dg/f2c_1.f90: Likewise.
+ * gfortran.dg/f2c_2.f90: Likewise.
+ * gfortran.dg/f2c_3.f90: Likewise.
+ * gfortran.dg/f2c_4.f90: Likewise.
+ * gfortran.dg/f2c_6.f90: Likewise.
+ * gfortran.dg/f2c_7.f90: Likewise.
+ * gfortran.dg/f2c_9.f90: Likewise.
+ * gfortran.dg/fgetc_1.f90: Likewise.
+ * gfortran.dg/fgetc_2.f90: Likewise.
+ * gfortran.dg/filename_null.f90: Likewise.
+ * gfortran.dg/finalize_12.f90: Likewise.
+ * gfortran.dg/finalize_13.f90: Likewise.
+ * gfortran.dg/finalize_15.f90: Likewise.
+ * gfortran.dg/finalize_17.f90: Likewise.
+ * gfortran.dg/finalize_18.f90: Likewise.
+ * gfortran.dg/finalize_25.f90: Likewise.
+ * gfortran.dg/finalize_29.f08: Likewise.
+ * gfortran.dg/finalize_31.f90: Likewise.
+ * gfortran.dg/float_1.f90: Likewise.
+ * gfortran.dg/flush_1.f90: Likewise.
+ * gfortran.dg/fmt_bz_bn.f: Likewise.
+ * gfortran.dg/fmt_bz_bn_err.f: Likewise.
+ * gfortran.dg/fmt_cache_1.f: Likewise.
+ * gfortran.dg/fmt_cache_2.f: Likewise.
+ * gfortran.dg/fmt_cache_3.f90: Likewise.
+ * gfortran.dg/fmt_colon.f90: Likewise.
+ * gfortran.dg/fmt_e.f90: Likewise.
+ * gfortran.dg/fmt_en.f90: Likewise.
+ * gfortran.dg/fmt_error_10.f: Likewise.
+ * gfortran.dg/fmt_error_9.f: Likewise.
+ * gfortran.dg/fmt_exhaust.f90: Likewise.
+ * gfortran.dg/fmt_f0_1.f90: Likewise.
+ * gfortran.dg/fmt_f_an_p.f: Likewise.
+ * gfortran.dg/fmt_fw_d.f90: Likewise.
+ * gfortran.dg/fmt_g.f: Likewise.
+ * gfortran.dg/fmt_g0_1.f08: Likewise.
+ * gfortran.dg/fmt_g0_2.f08: Likewise.
+ * gfortran.dg/fmt_g0_4.f08: Likewise.
+ * gfortran.dg/fmt_g0_5.f08: Likewise.
+ * gfortran.dg/fmt_g0_6.f08: Likewise.
+ * gfortran.dg/fmt_g0_7.f08: Likewise.
+ * gfortran.dg/fmt_g_1.f90: Likewise.
+ * gfortran.dg/fmt_int_sign.f90: Likewise.
+ * gfortran.dg/fmt_l.f90: Likewise.
+ * gfortran.dg/fmt_missing_period_2.f: Likewise.
+ * gfortran.dg/fmt_missing_period_3.f: Likewise.
+ * gfortran.dg/fmt_p_1.f90: Likewise.
+ * gfortran.dg/fmt_pf.f90: Likewise.
+ * gfortran.dg/fmt_read.f90: Likewise.
+ * gfortran.dg/fmt_read_bz_bn.f90: Likewise.
+ * gfortran.dg/fmt_t_1.f90: Likewise.
+ * gfortran.dg/fmt_t_2.f90: Likewise.
+ * gfortran.dg/fmt_t_3.f90: Likewise.
+ * gfortran.dg/fmt_t_4.f90: Likewise.
+ * gfortran.dg/fmt_t_5.f90: Likewise.
+ * gfortran.dg/fmt_t_6.f: Likewise.
+ * gfortran.dg/fmt_t_7.f: Likewise.
+ * gfortran.dg/fmt_t_9.f: Likewise.
+ * gfortran.dg/fmt_tl.f: Likewise.
+ * gfortran.dg/fmt_unlimited.f90: Likewise.
+ * gfortran.dg/fmt_white.f: Likewise.
+ * gfortran.dg/fmt_zero_digits.f90: Likewise.
+ * gfortran.dg/fold_nearest.f90: Likewise.
+ * gfortran.dg/forall_1.f90: Likewise.
+ * gfortran.dg/forall_10.f90: Likewise.
+ * gfortran.dg/forall_12.f90: Likewise.
+ * gfortran.dg/forall_13.f90: Likewise.
+ * gfortran.dg/forall_15.f90: Likewise.
+ * gfortran.dg/forall_4.f90: Likewise.
+ * gfortran.dg/forall_5.f90: Likewise.
+ * gfortran.dg/forall_6.f90: Likewise.
+ * gfortran.dg/forall_7.f90: Likewise.
+ * gfortran.dg/fraction.f90: Likewise.
+ * gfortran.dg/fseek.f90: Likewise.
+ * gfortran.dg/ftell_1.f90: Likewise.
+ * gfortran.dg/ftell_2.f90: Likewise.
+ * gfortran.dg/ftell_3.f90: Likewise.
+ * gfortran.dg/func_assign_2.f90: Likewise.
+ * gfortran.dg/func_assign_3.f90: Likewise.
+ * gfortran.dg/func_derived_1.f90: Likewise.
+ * gfortran.dg/func_derived_2.f90: Likewise.
+ * gfortran.dg/func_derived_3.f90: Likewise.
+ * gfortran.dg/func_result_1.f90: Likewise.
+ * gfortran.dg/func_result_2.f90: Likewise.
+ * gfortran.dg/func_result_6.f90: Likewise.
+ * gfortran.dg/function_charlen_2.f90: Likewise.
+ * gfortran.dg/function_charlen_3.f: Likewise.
+ * gfortran.dg/function_kinds_1.f90: Likewise.
+ * gfortran.dg/function_kinds_4.f90: Likewise.
+ * gfortran.dg/function_optimize_10.f90: Likewise.
+ * gfortran.dg/function_optimize_11.f90: Likewise.
+ * gfortran.dg/function_optimize_12.f90: Likewise.
+ * gfortran.dg/function_optimize_4.f90: Likewise.
+ * gfortran.dg/function_optimize_8.f90: Likewise.
+ * gfortran.dg/g77/13037.f: Likewise.
+ * gfortran.dg/g77/1832.f: Likewise.
+ * gfortran.dg/g77/19981119-0.f: Likewise.
+ * gfortran.dg/g77/19990313-0.f: Likewise.
+ * gfortran.dg/g77/19990313-1.f: Likewise.
+ * gfortran.dg/g77/19990313-2.f: Likewise.
+ * gfortran.dg/g77/19990313-3.f: Likewise.
+ * gfortran.dg/g77/19990419-1.f: Likewise.
+ * gfortran.dg/g77/19990826-0.f: Likewise.
+ * gfortran.dg/g77/19990826-2.f: Likewise.
+ * gfortran.dg/g77/20000503-1.f: Likewise.
+ * gfortran.dg/g77/20001111.f: Likewise.
+ * gfortran.dg/g77/20010116.f: Likewise.
+ * gfortran.dg/g77/20010216-1.f: Likewise.
+ * gfortran.dg/g77/20010430.f: Likewise.
+ * gfortran.dg/g77/20010610.f: Likewise.
+ * gfortran.dg/g77/6177.f: Likewise.
+ * gfortran.dg/g77/7388.f: Likewise.
+ * gfortran.dg/g77/947.f: Likewise.
+ * gfortran.dg/g77/970625-2.f: Likewise.
+ * gfortran.dg/g77/971102-1.f: Likewise.
+ * gfortran.dg/g77/980628-0.f: Likewise.
+ * gfortran.dg/g77/980628-1.f: Likewise.
+ * gfortran.dg/g77/980628-10.f: Likewise.
+ * gfortran.dg/g77/980628-2.f: Likewise.
+ * gfortran.dg/g77/980628-3.f: Likewise.
+ * gfortran.dg/g77/980628-7.f: Likewise.
+ * gfortran.dg/g77/980628-8.f: Likewise.
+ * gfortran.dg/g77/980628-9.f: Likewise.
+ * gfortran.dg/g77/980701-0.f: Likewise.
+ * gfortran.dg/g77/980701-1.f: Likewise.
+ * gfortran.dg/g77/cabs.f: Likewise.
+ * gfortran.dg/g77/claus.f: Likewise.
+ * gfortran.dg/g77/complex_1.f: Likewise.
+ * gfortran.dg/g77/cpp3.F: Likewise.
+ * gfortran.dg/g77/cpp4.F: Likewise.
+ * gfortran.dg/g77/cpp5.F: Likewise.
+ * gfortran.dg/g77/dcomplex.f: Likewise.
+ * gfortran.dg/g77/dnrm2.f: Likewise.
+ * gfortran.dg/g77/erfc.f: Likewise.
+ * gfortran.dg/g77/f77-edit-i-in.f: Likewise.
+ * gfortran.dg/g77/f77-edit-t-in.f: Likewise.
+ * gfortran.dg/g77/f90-intrinsic-bit.f: Likewise.
+ * gfortran.dg/g77/f90-intrinsic-mathematical.f: Likewise.
+ * gfortran.dg/g77/f90-intrinsic-numeric.f: Likewise.
+ * gfortran.dg/g77/int8421.f: Likewise.
+ * gfortran.dg/g77/intrinsic-unix-bessel.f: Likewise.
+ * gfortran.dg/g77/intrinsic-unix-erf.f: Likewise.
+ * gfortran.dg/g77/le.f: Likewise.
+ * gfortran.dg/g77/short.f: Likewise.
+ * gfortran.dg/gamma_1.f90: Likewise.
+ * gfortran.dg/gamma_4.f90: Likewise.
+ * gfortran.dg/gamma_5.f90: Likewise.
+ * gfortran.dg/generic_13.f90: Likewise.
+ * gfortran.dg/generic_15.f90: Likewise.
+ * gfortran.dg/generic_19.f90: Likewise.
+ * gfortran.dg/generic_20.f90: Likewise.
+ * gfortran.dg/generic_23.f03: Likewise.
+ * gfortran.dg/generic_25.f90: Likewise.
+ * gfortran.dg/generic_27.f90: Likewise.
+ * gfortran.dg/generic_31.f90: Likewise.
+ * gfortran.dg/generic_4.f90: Likewise.
+ * gfortran.dg/global_vars_c_init.f90: Likewise.
+ * gfortran.dg/global_vars_f90_init.f90: Likewise.
+ * gfortran.dg/gnu_logical_1.F: Likewise.
+ * gfortran.dg/goacc/fixed-1.f: Likewise.
+ * gfortran.dg/goacc/fixed-2.f: Likewise.
+ * gfortran.dg/goacc/gang-static.f95: Likewise.
+ * gfortran.dg/goacc/kernels-loop-2.f95: Likewise.
+ * gfortran.dg/goacc/kernels-loop-data-2.f95: Likewise.
+ * gfortran.dg/goacc/kernels-loop-data-enter-exit-2.f95: Likewise.
+ * gfortran.dg/goacc/kernels-loop-data-enter-exit.f95: Likewise.
+ * gfortran.dg/goacc/kernels-loop-data-update.f95: Likewise.
+ * gfortran.dg/goacc/kernels-loop-data.f95: Likewise.
+ * gfortran.dg/goacc/kernels-loop-n.f95: Likewise.
+ * gfortran.dg/goacc/kernels-loop.f95: Likewise.
+ * gfortran.dg/goacc/omp-fixed.f: Likewise.
+ * gfortran.dg/gomp/crayptr5.f90: Likewise.
+ * gfortran.dg/gomp/pr48794-2.f90: Likewise.
+ * gfortran.dg/gomp/pr48794.f90: Likewise.
+ * gfortran.dg/gomp/pr72744.f90: Likewise.
+ * gfortran.dg/gomp/pr77665.f90: Likewise.
+ * gfortran.dg/gomp/workshare2.f90: Likewise.
+ * gfortran.dg/gomp/workshare3.f90: Likewise.
+ * gfortran.dg/goto_1.f: Likewise.
+ * gfortran.dg/goto_2.f90: Likewise.
+ * gfortran.dg/goto_4.f90: Likewise.
+ * gfortran.dg/goto_6.f: Likewise.
+ * gfortran.dg/graphite/id-26.f03: Likewise.
+ * gfortran.dg/graphite/id-pr45370.f90: Likewise.
+ * gfortran.dg/graphite/pr29581.f90: Likewise.
+ * gfortran.dg/graphite/pr29832.f90: Likewise.
+ * gfortran.dg/graphite/run-id-1.f: Likewise.
+ * gfortran.dg/graphite/run-id-2.f90: Likewise.
+ * gfortran.dg/graphite/run-id-3.f90: Likewise.
+ * gfortran.dg/hollerith.f90: Likewise.
+ * gfortran.dg/hollerith4.f90: Likewise.
+ * gfortran.dg/hollerith6.f90: Likewise.
+ * gfortran.dg/hollerith8.f90: Likewise.
+ * gfortran.dg/hollerith_1.f90: Likewise.
+ * gfortran.dg/hollerith_character_array_constructor.f90: Likewise.
+ * gfortran.dg/hollerith_f95.f90: Likewise.
+ * gfortran.dg/hollerith_legacy.f90: Likewise.
+ * gfortran.dg/host_assoc_call_3.f90: Likewise.
+ * gfortran.dg/host_assoc_function_1.f90: Likewise.
+ * gfortran.dg/host_assoc_function_3.f90: Likewise.
+ * gfortran.dg/host_assoc_function_4.f90: Likewise.
+ * gfortran.dg/host_assoc_function_9.f90: Likewise.
+ * gfortran.dg/host_dummy_index_1.f90: Likewise.
+ * gfortran.dg/hypot_1.f90: Likewise.
+ * gfortran.dg/iall_iany_iparity_1.f90: Likewise.
+ * gfortran.dg/iargc.f90: Likewise.
+ * gfortran.dg/ibits.f90: Likewise.
+ * gfortran.dg/ichar_1.f90: Likewise.
+ * gfortran.dg/ichar_2.f90: Likewise.
+ * gfortran.dg/ieee/ieee_1.F90: Likewise.
+ * gfortran.dg/ieee/ieee_2.f90: Likewise.
+ * gfortran.dg/ieee/ieee_3.f90: Likewise.
+ * gfortran.dg/ieee/ieee_4.f90: Likewise.
+ * gfortran.dg/ieee/ieee_6.f90: Likewise.
+ * gfortran.dg/ieee/ieee_7.f90: Likewise.
+ * gfortran.dg/ieee/ieee_8.f90: Likewise.
+ * gfortran.dg/ieee/intrinsics_1.f90: Likewise.
+ * gfortran.dg/ieee/intrinsics_2.F90: Likewise.
+ * gfortran.dg/ieee/large_1.f90: Likewise.
+ * gfortran.dg/ieee/large_2.f90: Likewise.
+ * gfortran.dg/ieee/large_3.F90: Likewise.
+ * gfortran.dg/ieee/large_4.f90: Likewise.
+ * gfortran.dg/ieee/rounding_1.f90: Likewise.
+ * gfortran.dg/ieee/underflow_1.f90: Likewise.
+ * gfortran.dg/impl_do_var_data.f90: Likewise.
+ * gfortran.dg/implicit_10.f90: Likewise.
+ * gfortran.dg/implicit_12.f90: Likewise.
+ * gfortran.dg/implicit_class_1.f90: Likewise.
+ * gfortran.dg/implicit_pure_1.f90: Likewise.
+ * gfortran.dg/implied_do_1.f90: Likewise.
+ * gfortran.dg/implied_do_io_1.f90: Likewise.
+ * gfortran.dg/implied_do_io_2.f90: Likewise.
+ * gfortran.dg/implied_do_io_3.f90: Likewise.
+ * gfortran.dg/implied_shape_1.f08: Likewise.
+ * gfortran.dg/import.f90: Likewise.
+ * gfortran.dg/import4.f90: Likewise.
+ * gfortran.dg/impure_1.f08: Likewise.
+ * gfortran.dg/index.f90: Likewise.
+ * gfortran.dg/index_2.f90: Likewise.
+ * gfortran.dg/init_flag_1.f90: Likewise.
+ * gfortran.dg/init_flag_10.f90: Likewise.
+ * gfortran.dg/init_flag_15.f03: Likewise.
+ * gfortran.dg/init_flag_2.f90: Likewise.
+ * gfortran.dg/init_flag_3.f90: Likewise.
+ * gfortran.dg/init_flag_4.f90: Likewise.
+ * gfortran.dg/init_flag_5.f90: Likewise.
+ * gfortran.dg/init_flag_6.f90: Likewise.
+ * gfortran.dg/init_flag_7.f90: Likewise.
+ * gfortran.dg/init_flag_9.f90: Likewise.
+ * gfortran.dg/initialization_11.f90: Likewise.
+ * gfortran.dg/initialization_19.f90: Likewise.
+ * gfortran.dg/initialization_2.f90: Likewise.
+ * gfortran.dg/initialization_22.f90: Likewise.
+ * gfortran.dg/initialization_27.f90: Likewise.
+ * gfortran.dg/initialization_5.f90: Likewise.
+ * gfortran.dg/initialization_6.f90: Likewise.
+ * gfortran.dg/inline_matmul_1.f90: Likewise.
+ * gfortran.dg/inline_matmul_10.f90: Likewise.
+ * gfortran.dg/inline_matmul_11.f90: Likewise.
+ * gfortran.dg/inline_matmul_13.f90: Likewise.
+ * gfortran.dg/inline_matmul_14.f90: Likewise.
+ * gfortran.dg/inline_matmul_16.f90: Likewise.
+ * gfortran.dg/inline_matmul_17.f90: Likewise.
+ * gfortran.dg/inline_matmul_18.f90: Likewise.
+ * gfortran.dg/inline_matmul_19.f90: Likewise.
+ * gfortran.dg/inline_matmul_2.f90: Likewise.
+ * gfortran.dg/inline_matmul_20.f90: Likewise.
+ * gfortran.dg/inline_matmul_22.f90: Likewise.
+ * gfortran.dg/inline_matmul_3.f90: Likewise.
+ * gfortran.dg/inline_matmul_4.f90: Likewise.
+ * gfortran.dg/inline_matmul_5.f90: Likewise.
+ * gfortran.dg/inline_matmul_6.f90: Likewise.
+ * gfortran.dg/inline_matmul_7.f90: Likewise.
+ * gfortran.dg/inline_matmul_8.f90: Likewise.
+ * gfortran.dg/inline_matmul_9.f90: Likewise.
+ * gfortran.dg/inline_sum_1.f90: Likewise.
+ * gfortran.dg/inline_sum_3.f90: Likewise.
+ * gfortran.dg/inline_sum_5.f90: Likewise.
+ * gfortran.dg/inquire-complex.f90: Likewise.
+ * gfortran.dg/inquire.f90: Likewise.
+ * gfortran.dg/inquire_10.f90: Likewise.
+ * gfortran.dg/inquire_13.f90: Likewise.
+ * gfortran.dg/inquire_15.f90: Likewise.
+ * gfortran.dg/inquire_16.f90: Likewise.
+ * gfortran.dg/inquire_17.f90: Likewise.
+ * gfortran.dg/inquire_5.f90: Likewise.
+ * gfortran.dg/inquire_6.f90: Likewise.
+ * gfortran.dg/inquire_7.f90: Likewise.
+ * gfortran.dg/inquire_9.f90: Likewise.
+ * gfortran.dg/inquire_internal.f90: Likewise.
+ * gfortran.dg/inquire_recl_f2018.f90: Likewise.
+ * gfortran.dg/inquire_size.f90: Likewise.
+ * gfortran.dg/int_1.f90: Likewise.
+ * gfortran.dg/int_conv_1.f90: Likewise.
+ * gfortran.dg/int_range_io_1.f90: Likewise.
+ * gfortran.dg/integer_exponentiation_2.f90: Likewise.
+ * gfortran.dg/integer_exponentiation_3.F90: Likewise.
+ * gfortran.dg/integer_exponentiation_5.F90: Likewise.
+ * gfortran.dg/integer_plus.f90: Likewise.
+ * gfortran.dg/intent_out_2.f90: Likewise.
+ * gfortran.dg/intent_out_5.f90: Likewise.
+ * gfortran.dg/intent_out_6.f90: Likewise.
+ * gfortran.dg/interface_12.f90: Likewise.
+ * gfortran.dg/interface_19.f90: Likewise.
+ * gfortran.dg/interface_4.f90: Likewise.
+ * gfortran.dg/interface_5.f90: Likewise.
+ * gfortran.dg/interface_9.f90: Likewise.
+ * gfortran.dg/interface_assignment_1.f90: Likewise.
+ * gfortran.dg/interface_assignment_2.f90: Likewise.
+ * gfortran.dg/internal_dummy_2.f08: Likewise.
+ * gfortran.dg/internal_dummy_3.f08: Likewise.
+ * gfortran.dg/internal_dummy_4.f08: Likewise.
+ * gfortran.dg/internal_pack_1.f90: Likewise.
+ * gfortran.dg/internal_pack_10.f90: Likewise.
+ * gfortran.dg/internal_pack_12.f90: Likewise.
+ * gfortran.dg/internal_pack_13.f90: Likewise.
+ * gfortran.dg/internal_pack_14.f90: Likewise.
+ * gfortran.dg/internal_pack_15.f90: Likewise.
+ * gfortran.dg/internal_pack_2.f90: Likewise.
+ * gfortran.dg/internal_pack_3.f90: Likewise.
+ * gfortran.dg/internal_pack_4.f90: Likewise.
+ * gfortran.dg/internal_pack_6.f90: Likewise.
+ * gfortran.dg/internal_pack_8.f90: Likewise.
+ * gfortran.dg/internal_readwrite_1.f90: Likewise.
+ * gfortran.dg/internal_readwrite_2.f90: Likewise.
+ * gfortran.dg/internal_readwrite_3.f90: Likewise.
+ * gfortran.dg/intrinsic_actual_1.f: Likewise.
+ * gfortran.dg/intrinsic_actual_2.f90: Likewise.
+ * gfortran.dg/intrinsic_actual_4.f90: Likewise.
+ * gfortran.dg/intrinsic_argument_conformance_2.f90: Likewise.
+ * gfortran.dg/intrinsic_char_1.f90: Likewise.
+ * gfortran.dg/intrinsic_ifunction_1.f90: Likewise.
+ * gfortran.dg/intrinsic_intkinds_1.f90: Likewise.
+ * gfortran.dg/intrinsic_modulo_1.f90: Likewise.
+ * gfortran.dg/intrinsic_pack_1.f90: Likewise.
+ * gfortran.dg/intrinsic_pack_2.f90: Likewise.
+ * gfortran.dg/intrinsic_pack_3.f90: Likewise.
+ * gfortran.dg/intrinsic_pack_5.f90: Likewise.
+ * gfortran.dg/intrinsic_product_1.f90: Likewise.
+ * gfortran.dg/intrinsic_sign_1.f90: Likewise.
+ * gfortran.dg/intrinsic_sign_2.f90: Likewise.
+ * gfortran.dg/intrinsic_spread_1.f90: Likewise.
+ * gfortran.dg/intrinsic_spread_2.f90: Likewise.
+ * gfortran.dg/intrinsic_spread_3.f90: Likewise.
+ * gfortran.dg/intrinsic_unpack_1.f90: Likewise.
+ * gfortran.dg/intrinsic_unpack_2.f90: Likewise.
+ * gfortran.dg/intrinsic_unpack_3.f90: Likewise.
+ * gfortran.dg/intrinsic_verify_1.f90: Likewise.
+ * gfortran.dg/intrinsics_kind_argument_1.f90: Likewise.
+ * gfortran.dg/io_err_1.f90: Likewise.
+ * gfortran.dg/io_real_boz.f90: Likewise.
+ * gfortran.dg/iomsg_1.f90: Likewise.
+ * gfortran.dg/iostat_1.f90: Likewise.
+ * gfortran.dg/iostat_2.f90: Likewise.
+ * gfortran.dg/iostat_4.f90: Likewise.
+ * gfortran.dg/is_iostat_end_eor_1.f90: Likewise.
+ * gfortran.dg/ishft_1.f90: Likewise.
+ * gfortran.dg/ishft_2.f90: Likewise.
+ * gfortran.dg/ishft_4.f90: Likewise.
+ * gfortran.dg/isnan_1.f90: Likewise.
+ * gfortran.dg/isnan_2.f90: Likewise.
+ * gfortran.dg/iso_c_binding_rename_1.f03: Likewise.
+ * gfortran.dg/iso_c_binding_rename_2.f03: Likewise.
+ * gfortran.dg/iso_fortran_env_1.f90: Likewise.
+ * gfortran.dg/iso_fortran_env_3.f90: Likewise.
+ * gfortran.dg/iso_fortran_env_5.f90: Likewise.
+ * gfortran.dg/iso_fortran_env_6.f90: Likewise.
+ * gfortran.dg/itime_idate_1.f: Likewise.
+ * gfortran.dg/itime_idate_2.f: Likewise.
+ * gfortran.dg/large_integer_kind_1.f90: Likewise.
+ * gfortran.dg/large_integer_kind_2.f90: Likewise.
+ * gfortran.dg/large_real_kind_1.f90: Likewise.
+ * gfortran.dg/large_real_kind_2.F90: Likewise.
+ * gfortran.dg/large_real_kind_3.F90: Likewise.
+ * gfortran.dg/large_real_kind_form_io_1.f90: Likewise.
+ * gfortran.dg/large_real_kind_form_io_2.f90: Likewise.
+ * gfortran.dg/large_recl.f90: Likewise.
+ * gfortran.dg/large_unit_1.f90: Likewise.
+ * gfortran.dg/large_unit_2.f90: Likewise.
+ * gfortran.dg/largeequiv_1.f90: Likewise.
+ * gfortran.dg/leadz_trailz_1.f90: Likewise.
+ * gfortran.dg/leadz_trailz_2.f90: Likewise.
+ * gfortran.dg/leadz_trailz_3.f90: Likewise.
+ * gfortran.dg/list_read_1.f90: Likewise.
+ * gfortran.dg/list_read_10.f90: Likewise.
+ * gfortran.dg/list_read_11.f90: Likewise.
+ * gfortran.dg/list_read_12.f90: Likewise.
+ * gfortran.dg/list_read_13.f: Likewise.
+ * gfortran.dg/list_read_14.f90: Likewise.
+ * gfortran.dg/list_read_2.f90: Likewise.
+ * gfortran.dg/list_read_3.f90: Likewise.
+ * gfortran.dg/list_read_4.f90: Likewise.
+ * gfortran.dg/list_read_5.f90: Likewise.
+ * gfortran.dg/list_read_6.f90: Likewise.
+ * gfortran.dg/list_read_7.f90: Likewise.
+ * gfortran.dg/list_read_8.f90: Likewise.
+ * gfortran.dg/list_read_9.f90: Likewise.
+ * gfortran.dg/loc_2.f90: Likewise.
+ * gfortran.dg/logical_1.f90: Likewise.
+ * gfortran.dg/logical_dot_product.f90: Likewise.
+ * gfortran.dg/logical_temp_io.f90: Likewise.
+ * gfortran.dg/logical_temp_io_kind8.f90: Likewise.
+ * gfortran.dg/lrshift_1.f90: Likewise.
+ * gfortran.dg/ltime_gmtime_1.f90: Likewise.
+ * gfortran.dg/ltime_gmtime_2.f90: Likewise.
+ * gfortran.dg/lto/pr40725_0.f03: Likewise.
+ * gfortran.dg/lto/pr41576_1.f90: Likewise.
+ * gfortran.dg/make_unit.f90: Likewise.
+ * gfortran.dg/mapping_1.f90: Likewise.
+ * gfortran.dg/mapping_2.f90: Likewise.
+ * gfortran.dg/mapping_3.f90: Likewise.
+ * gfortran.dg/masklr_1.F90: Likewise.
+ * gfortran.dg/masklr_2.F90: Likewise.
+ * gfortran.dg/matmul_1.f90: Likewise.
+ * gfortran.dg/matmul_10.f90: Likewise.
+ * gfortran.dg/matmul_12.f90: Likewise.
+ * gfortran.dg/matmul_16.f90: Likewise.
+ * gfortran.dg/matmul_17.f90: Likewise.
+ * gfortran.dg/matmul_18.f90: Likewise.
+ * gfortran.dg/matmul_2.f90: Likewise.
+ * gfortran.dg/matmul_3.f90: Likewise.
+ * gfortran.dg/matmul_4.f90: Likewise.
+ * gfortran.dg/matmul_6.f90: Likewise.
+ * gfortran.dg/matmul_8.f03: Likewise.
+ * gfortran.dg/matmul_9.f90: Likewise.
+ * gfortran.dg/matmul_bounds_12.f90: Likewise.
+ * gfortran.dg/matmul_bounds_6.f90: Likewise.
+ * gfortran.dg/matmul_const.f90: Likewise.
+ * gfortran.dg/maxloc_1.f90: Likewise.
+ * gfortran.dg/maxloc_2.f90: Likewise.
+ * gfortran.dg/maxloc_3.f90: Likewise.
+ * gfortran.dg/maxloc_4.f90: Likewise.
+ * gfortran.dg/maxloc_string_1.f90: Likewise.
+ * gfortran.dg/maxlocval_1.f90: Likewise.
+ * gfortran.dg/maxlocval_2.f90: Likewise.
+ * gfortran.dg/maxlocval_3.f90: Likewise.
+ * gfortran.dg/maxlocval_4.f90: Likewise.
+ * gfortran.dg/maxval_char_1.f90: Likewise.
+ * gfortran.dg/maxval_char_2.f90: Likewise.
+ * gfortran.dg/maxval_char_3.f90: Likewise.
+ * gfortran.dg/maxval_char_4.f90: Likewise.
+ * gfortran.dg/maxval_parameter_1.f90: Likewise.
+ * gfortran.dg/mclock.f90: Likewise.
+ * gfortran.dg/merge_bits_1.F90: Likewise.
+ * gfortran.dg/merge_bits_2.F90: Likewise.
+ * gfortran.dg/merge_char_1.f90: Likewise.
+ * gfortran.dg/merge_init_expr.f90: Likewise.
+ * gfortran.dg/min_max_optional_1.f90: Likewise.
+ * gfortran.dg/min_max_optional_5.f90: Likewise.
+ * gfortran.dg/minloc_1.f90: Likewise.
+ * gfortran.dg/minloc_2.f90: Likewise.
+ * gfortran.dg/minloc_3.f90: Likewise.
+ * gfortran.dg/minloc_4.f90: Likewise.
+ * gfortran.dg/minloc_string_1.f90: Likewise.
+ * gfortran.dg/minlocval_1.f90: Likewise.
+ * gfortran.dg/minlocval_2.f90: Likewise.
+ * gfortran.dg/minlocval_3.f90: Likewise.
+ * gfortran.dg/minlocval_4.f90: Likewise.
+ * gfortran.dg/minmax_char_1.f90: Likewise.
+ * gfortran.dg/minmaxloc_1.f90: Likewise.
+ * gfortran.dg/minmaxloc_10.f90: Likewise.
+ * gfortran.dg/minmaxloc_11.f90: Likewise.
+ * gfortran.dg/minmaxloc_12.f90: Likewise.
+ * gfortran.dg/minmaxloc_13.f90: Likewise.
+ * gfortran.dg/minmaxloc_2.f90: Likewise.
+ * gfortran.dg/minmaxloc_3.f90: Likewise.
+ * gfortran.dg/minmaxloc_4.f90: Likewise.
+ * gfortran.dg/minmaxloc_5.f90: Likewise.
+ * gfortran.dg/minmaxloc_6.f90: Likewise.
+ * gfortran.dg/minmaxloc_7.f90: Likewise.
+ * gfortran.dg/minmaxloc_8.f90: Likewise.
+ * gfortran.dg/minmaxval_1.f90: Likewise.
+ * gfortran.dg/minval_char_1.f90: Likewise.
+ * gfortran.dg/minval_char_2.f90: Likewise.
+ * gfortran.dg/minval_char_3.f90: Likewise.
+ * gfortran.dg/minval_char_4.f90: Likewise.
+ * gfortran.dg/minval_char_5.f90: Likewise.
+ * gfortran.dg/minval_parameter_1.f90: Likewise.
+ * gfortran.dg/missing_optional_dummy_1.f90: Likewise.
+ * gfortran.dg/missing_optional_dummy_2.f90: Likewise.
+ * gfortran.dg/missing_optional_dummy_6.f90: Likewise.
+ * gfortran.dg/missing_parens_1.f90: Likewise.
+ * gfortran.dg/missing_parens_2.f90: Likewise.
+ * gfortran.dg/mod_large_1.f90: Likewise.
+ * gfortran.dg/mod_sign0_1.f90: Likewise.
+ * gfortran.dg/module_blank_common.f90: Likewise.
+ * gfortran.dg/module_commons_1.f90: Likewise.
+ * gfortran.dg/module_commons_3.f90: Likewise.
+ * gfortran.dg/module_double_reuse.f90: Likewise.
+ * gfortran.dg/module_equivalence_1.f90: Likewise.
+ * gfortran.dg/module_equivalence_2.f90: Likewise.
+ * gfortran.dg/module_equivalence_3.f90: Likewise.
+ * gfortran.dg/module_equivalence_5.f90: Likewise.
+ * gfortran.dg/module_interface_1.f90: Likewise.
+ * gfortran.dg/module_nan.f90: Likewise.
+ * gfortran.dg/module_private_array_refs_1.f90: Likewise.
+ * gfortran.dg/module_procedure_1.f90: Likewise.
+ * gfortran.dg/module_read_1.f90: Likewise.
+ * gfortran.dg/module_read_2.f90: Likewise.
+ * gfortran.dg/module_widestring_1.f90: Likewise.
+ * gfortran.dg/move_alloc.f90: Likewise.
+ * gfortran.dg/move_alloc_10.f90: Likewise.
+ * gfortran.dg/move_alloc_13.f90: Likewise.
+ * gfortran.dg/move_alloc_14.f90: Likewise.
+ * gfortran.dg/move_alloc_15.f90: Likewise.
+ * gfortran.dg/move_alloc_16.f90: Likewise.
+ * gfortran.dg/move_alloc_2.f90: Likewise.
+ * gfortran.dg/move_alloc_5.f90: Likewise.
+ * gfortran.dg/move_alloc_6.f90: Likewise.
+ * gfortran.dg/move_alloc_9.f90: Likewise.
+ * gfortran.dg/multiple_allocation_1.f90: Likewise.
+ * gfortran.dg/multiple_allocation_3.f90: Likewise.
+ * gfortran.dg/mvbits_1.f90: Likewise.
+ * gfortran.dg/mvbits_2.f90: Likewise.
+ * gfortran.dg/mvbits_3.f90: Likewise.
+ * gfortran.dg/mvbits_4.f90: Likewise.
+ * gfortran.dg/mvbits_7.f90: Likewise.
+ * gfortran.dg/mvbits_8.f90: Likewise.
+ * gfortran.dg/namelist_11.f: Likewise.
+ * gfortran.dg/namelist_12.f: Likewise.
+ * gfortran.dg/namelist_13.f90: Likewise.
+ * gfortran.dg/namelist_14.f90: Likewise.
+ * gfortran.dg/namelist_15.f90: Likewise.
+ * gfortran.dg/namelist_16.f90: Likewise.
+ * gfortran.dg/namelist_17.f90: Likewise.
+ * gfortran.dg/namelist_18.f90: Likewise.
+ * gfortran.dg/namelist_19.f90: Likewise.
+ * gfortran.dg/namelist_20.f90: Likewise.
+ * gfortran.dg/namelist_21.f90: Likewise.
+ * gfortran.dg/namelist_22.f90: Likewise.
+ * gfortran.dg/namelist_23.f90: Likewise.
+ * gfortran.dg/namelist_24.f90: Likewise.
+ * gfortran.dg/namelist_26.f90: Likewise.
+ * gfortran.dg/namelist_27.f90: Likewise.
+ * gfortran.dg/namelist_28.f90: Likewise.
+ * gfortran.dg/namelist_29.f90: Likewise.
+ * gfortran.dg/namelist_37.f90: Likewise.
+ * gfortran.dg/namelist_38.f90: Likewise.
+ * gfortran.dg/namelist_39.f90: Likewise.
+ * gfortran.dg/namelist_40.f90: Likewise.
+ * gfortran.dg/namelist_41.f90: Likewise.
+ * gfortran.dg/namelist_42.f90: Likewise.
+ * gfortran.dg/namelist_43.f90: Likewise.
+ * gfortran.dg/namelist_44.f90: Likewise.
+ * gfortran.dg/namelist_47.f90: Likewise.
+ * gfortran.dg/namelist_48.f90: Likewise.
+ * gfortran.dg/namelist_49.f90: Likewise.
+ * gfortran.dg/namelist_50.f90: Likewise.
+ * gfortran.dg/namelist_51.f90: Likewise.
+ * gfortran.dg/namelist_52.f90: Likewise.
+ * gfortran.dg/namelist_54.f90: Likewise.
+ * gfortran.dg/namelist_55.f90: Likewise.
+ * gfortran.dg/namelist_56.f90: Likewise.
+ * gfortran.dg/namelist_57.f90: Likewise.
+ * gfortran.dg/namelist_58.f90: Likewise.
+ * gfortran.dg/namelist_59.f90: Likewise.
+ * gfortran.dg/namelist_60.f90: Likewise.
+ * gfortran.dg/namelist_61.f90: Likewise.
+ * gfortran.dg/namelist_64.f90: Likewise.
+ * gfortran.dg/namelist_65.f90: Likewise.
+ * gfortran.dg/namelist_69.f90: Likewise.
+ * gfortran.dg/namelist_70.f90: Likewise.
+ * gfortran.dg/namelist_71.f90: Likewise.
+ * gfortran.dg/namelist_72.f: Likewise.
+ * gfortran.dg/namelist_73.f90: Likewise.
+ * gfortran.dg/namelist_77.f90: Likewise.
+ * gfortran.dg/namelist_78.f90: Likewise.
+ * gfortran.dg/namelist_79.f90: Likewise.
+ * gfortran.dg/namelist_80.f90: Likewise.
+ * gfortran.dg/namelist_81.f90: Likewise.
+ * gfortran.dg/namelist_82.f90: Likewise.
+ * gfortran.dg/namelist_84.f90: Likewise.
+ * gfortran.dg/namelist_85.f90: Likewise.
+ * gfortran.dg/namelist_86.f90: Likewise.
+ * gfortran.dg/namelist_87.f90: Likewise.
+ * gfortran.dg/namelist_88.f90: Likewise.
+ * gfortran.dg/namelist_89.f90: Likewise.
+ * gfortran.dg/namelist_90.f: Likewise.
+ * gfortran.dg/namelist_95.f90: Likewise.
+ * gfortran.dg/namelist_char_only.f90: Likewise.
+ * gfortran.dg/namelist_empty.f90: Likewise.
+ * gfortran.dg/namelist_internal.f90: Likewise.
+ * gfortran.dg/namelist_use.f90: Likewise.
+ * gfortran.dg/namelist_use_only.f90: Likewise.
+ * gfortran.dg/namelist_utf8.f90: Likewise.
+ * gfortran.dg/nan_1.f90: Likewise.
+ * gfortran.dg/nan_2.f90: Likewise.
+ * gfortran.dg/nan_3.f90: Likewise.
+ * gfortran.dg/nan_6.f90: Likewise.
+ * gfortran.dg/nan_7.f90: Likewise.
+ * gfortran.dg/nearest_1.f90: Likewise.
+ * gfortran.dg/nearest_2.f90: Likewise.
+ * gfortran.dg/nearest_3.f90: Likewise.
+ * gfortran.dg/negative-z-descriptor.f90: Likewise.
+ * gfortran.dg/negative_automatic_size.f90: Likewise.
+ * gfortran.dg/negative_unit.f: Likewise.
+ * gfortran.dg/negative_unit2.f90: Likewise.
+ * gfortran.dg/negative_unit_int8.f: Likewise.
+ * gfortran.dg/nested_array_constructor_2.f90: Likewise.
+ * gfortran.dg/nested_array_constructor_3.f90: Likewise.
+ * gfortran.dg/nested_array_constructor_4.f90: Likewise.
+ * gfortran.dg/nested_modules_1.f90: Likewise.
+ * gfortran.dg/nested_modules_2.f90: Likewise.
+ * gfortran.dg/nested_modules_3.f90: Likewise.
+ * gfortran.dg/nesting_1.f90: Likewise.
+ * gfortran.dg/new_line.f90: Likewise.
+ * gfortran.dg/newunit_1.f90: Likewise.
+ * gfortran.dg/newunit_3.f90: Likewise.
+ * gfortran.dg/newunit_5.f90.f90: Likewise.
+ * gfortran.dg/nint_1.f90: Likewise.
+ * gfortran.dg/nint_2.f90: Likewise.
+ * gfortran.dg/no_arg_check_2.f90: Likewise.
+ * gfortran.dg/no_range_check_1.f90: Likewise.
+ * gfortran.dg/no_range_check_2.f90: Likewise.
+ * gfortran.dg/no_range_check_3.f90: Likewise.
+ * gfortran.dg/noadv_size.f90: Likewise.
+ * gfortran.dg/nonreturning_statements.f90: Likewise.
+ * gfortran.dg/norm2_1.f90: Likewise.
+ * gfortran.dg/norm2_3.f90: Likewise.
+ * gfortran.dg/nosigned_zero_1.f90: Likewise.
+ * gfortran.dg/nosigned_zero_2.f90: Likewise.
+ * gfortran.dg/nosigned_zero_3.f90: Likewise.
+ * gfortran.dg/null_4.f90: Likewise.
+ * gfortran.dg/null_9.f90: Likewise.
+ * gfortran.dg/nullify_3.f90: Likewise.
+ * gfortran.dg/oldstyle_1.f90: Likewise.
+ * gfortran.dg/open_access_append_1.f90: Likewise.
+ * gfortran.dg/open_access_append_2.f90: Likewise.
+ * gfortran.dg/open_errors.f90: Likewise.
+ * gfortran.dg/open_negative_unit_1.f90: Likewise.
+ * gfortran.dg/open_new.f90: Likewise.
+ * gfortran.dg/open_readonly_1.f90: Likewise.
+ * gfortran.dg/operator_1.f90: Likewise.
+ * gfortran.dg/optional_absent_1.f90: Likewise.
+ * gfortran.dg/optional_absent_2.f90: Likewise.
+ * gfortran.dg/optional_absent_3.f90: Likewise.
+ * gfortran.dg/optional_class_1.f90: Likewise.
+ * gfortran.dg/optional_dim_2.f90: Likewise.
+ * gfortran.dg/optional_dim_3.f90: Likewise.
+ * gfortran.dg/output_exponents_1.f90: Likewise.
+ * gfortran.dg/overload_1.f90: Likewise.
+ * gfortran.dg/overload_2.f90: Likewise.
+ * gfortran.dg/overwrite_1.f: Likewise.
+ * gfortran.dg/pad_no.f90: Likewise.
+ * gfortran.dg/parameter_array_init_1.f90: Likewise.
+ * gfortran.dg/parameter_array_init_2.f90: Likewise.
+ * gfortran.dg/parameter_array_init_4.f90: Likewise.
+ * gfortran.dg/parameter_array_init_5.f90: Likewise.
+ * gfortran.dg/parameter_array_section_2.f90: Likewise.
+ * gfortran.dg/parens_3.f90: Likewise.
+ * gfortran.dg/parens_5.f90: Likewise.
+ * gfortran.dg/parens_6.f90: Likewise.
+ * gfortran.dg/parent_result_ref_1.f90: Likewise.
+ * gfortran.dg/parent_result_ref_2.f90: Likewise.
+ * gfortran.dg/parent_result_ref_3.f90: Likewise.
+ * gfortran.dg/parent_result_ref_4.f90: Likewise.
+ * gfortran.dg/parity_1.f90: Likewise.
+ * gfortran.dg/past_eor.f90: Likewise.
+ * gfortran.dg/pdt_1.f03: Likewise.
+ * gfortran.dg/pdt_10.f03: Likewise.
+ * gfortran.dg/pdt_11.f03: Likewise.
+ * gfortran.dg/pdt_12.f03: Likewise.
+ * gfortran.dg/pdt_13.f03: Likewise.
+ * gfortran.dg/pdt_14.f03: Likewise.
+ * gfortran.dg/pdt_15.f03: Likewise.
+ * gfortran.dg/pdt_19.f03: Likewise.
+ * gfortran.dg/pdt_20.f03: Likewise.
+ * gfortran.dg/pdt_22.f03: Likewise.
+ * gfortran.dg/pdt_23.f03: Likewise.
+ * gfortran.dg/pdt_25.f03: Likewise.
+ * gfortran.dg/pdt_26.f03: Likewise.
+ * gfortran.dg/pdt_27.f03: Likewise.
+ * gfortran.dg/pdt_28.f03: Likewise.
+ * gfortran.dg/pdt_3.f03: Likewise.
+ * gfortran.dg/pdt_4.f03: Likewise.
+ * gfortran.dg/pdt_5.f03: Likewise.
+ * gfortran.dg/pdt_7.f03: Likewise.
+ * gfortran.dg/pointer_1.f90: Likewise.
+ * gfortran.dg/pointer_array_1.f90: Likewise.
+ * gfortran.dg/pointer_array_3.f90: Likewise.
+ * gfortran.dg/pointer_array_4.f90: Likewise.
+ * gfortran.dg/pointer_array_5.f90: Likewise.
+ * gfortran.dg/pointer_array_6.f90: Likewise.
+ * gfortran.dg/pointer_array_7.f90: Likewise.
+ * gfortran.dg/pointer_array_8.f90: Likewise.
+ * gfortran.dg/pointer_array_9.f90: Likewise.
+ * gfortran.dg/pointer_array_component_1.f90: Likewise.
+ * gfortran.dg/pointer_array_component_2.f90: Likewise.
+ * gfortran.dg/pointer_assign_10.f90: Likewise.
+ * gfortran.dg/pointer_assign_11.f90: Likewise.
+ * gfortran.dg/pointer_assign_4.f90: Likewise.
+ * gfortran.dg/pointer_assign_8.f90: Likewise.
+ * gfortran.dg/pointer_assign_9.f90: Likewise.
+ * gfortran.dg/pointer_check_10.f90: Likewise.
+ * gfortran.dg/pointer_check_9.f90: Likewise.
+ * gfortran.dg/pointer_function_actual_1.f90: Likewise.
+ * gfortran.dg/pointer_function_actual_2.f90: Likewise.
+ * gfortran.dg/pointer_function_result_1.f90: Likewise.
+ * gfortran.dg/pointer_init_1.f90: Likewise.
+ * gfortran.dg/pointer_init_3.f90: Likewise.
+ * gfortran.dg/pointer_init_4.f90: Likewise.
+ * gfortran.dg/pointer_init_5.f90: Likewise.
+ * gfortran.dg/pointer_init_8.f90: Likewise.
+ * gfortran.dg/pointer_intent_1.f90: Likewise.
+ * gfortran.dg/pointer_intent_4.f90: Likewise.
+ * gfortran.dg/pointer_intent_5.f90: Likewise.
+ * gfortran.dg/pointer_remapping_10.f90: Likewise.
+ * gfortran.dg/pointer_remapping_4.f03: Likewise.
+ * gfortran.dg/pointer_remapping_5.f08: Likewise.
+ * gfortran.dg/pointer_remapping_9.f90: Likewise.
+ * gfortran.dg/pointer_target_1.f90: Likewise.
+ * gfortran.dg/pointer_target_2.f90: Likewise.
+ * gfortran.dg/popcnt_poppar_1.F90: Likewise.
+ * gfortran.dg/popcnt_poppar_2.F90: Likewise.
+ * gfortran.dg/power.f90: Likewise.
+ * gfortran.dg/power1.f90: Likewise.
+ * gfortran.dg/power_3.f90: Likewise.
+ * gfortran.dg/power_4.f90: Likewise.
+ * gfortran.dg/power_5.f90: Likewise.
+ * gfortran.dg/pr12884.f: Likewise.
+ * gfortran.dg/pr15129.f90: Likewise.
+ * gfortran.dg/pr15140.f90: Likewise.
+ * gfortran.dg/pr15324.f90: Likewise.
+ * gfortran.dg/pr15332.f: Likewise.
+ * gfortran.dg/pr15957.f90: Likewise.
+ * gfortran.dg/pr15959.f90: Likewise.
+ * gfortran.dg/pr16597.f90: Likewise.
+ * gfortran.dg/pr16861.f90: Likewise.
+ * gfortran.dg/pr16938.f90: Likewise.
+ * gfortran.dg/pr17090.f90: Likewise.
+ * gfortran.dg/pr17143.f90: Likewise.
+ * gfortran.dg/pr17164.f90: Likewise.
+ * gfortran.dg/pr17229.f: Likewise.
+ * gfortran.dg/pr17285.f90: Likewise.
+ * gfortran.dg/pr17286.f90: Likewise.
+ * gfortran.dg/pr17472.f: Likewise.
+ * gfortran.dg/pr17612.f90: Likewise.
+ * gfortran.dg/pr17706.f90: Likewise.
+ * gfortran.dg/pr18025.f90: Likewise.
+ * gfortran.dg/pr18122.f90: Likewise.
+ * gfortran.dg/pr18210.f90: Likewise.
+ * gfortran.dg/pr18392.f90: Likewise.
+ * gfortran.dg/pr19155.f: Likewise.
+ * gfortran.dg/pr19216.f: Likewise.
+ * gfortran.dg/pr19467.f90: Likewise.
+ * gfortran.dg/pr19657.f: Likewise.
+ * gfortran.dg/pr19926.f90: Likewise.
+ * gfortran.dg/pr19928-1.f90: Likewise.
+ * gfortran.dg/pr19928-2.f90: Likewise.
+ * gfortran.dg/pr20086.f90: Likewise.
+ * gfortran.dg/pr20124.f90: Likewise.
+ * gfortran.dg/pr20163-2.f: Likewise.
+ * gfortran.dg/pr20480.f90: Likewise.
+ * gfortran.dg/pr20755.f: Likewise.
+ * gfortran.dg/pr20950.f: Likewise.
+ * gfortran.dg/pr21177.f90: Likewise.
+ * gfortran.dg/pr21730.f: Likewise.
+ * gfortran.dg/pr22491.f: Likewise.
+ * gfortran.dg/pr25603.f: Likewise.
+ * gfortran.dg/pr26246_2.f90: Likewise.
+ * gfortran.dg/pr32136.f90: Likewise.
+ * gfortran.dg/pr32533.f90: Likewise.
+ * gfortran.dg/pr33794.f90: Likewise.
+ * gfortran.dg/pr35662.f90: Likewise.
+ * gfortran.dg/pr35944-1.f90: Likewise.
+ * gfortran.dg/pr35944-2.f90: Likewise.
+ * gfortran.dg/pr35983.f90: Likewise.
+ * gfortran.dg/pr39865.f90: Likewise.
+ * gfortran.dg/pr41212.f90: Likewise.
+ * gfortran.dg/pr43808.f90: Likewise.
+ * gfortran.dg/pr44592.f90: Likewise.
+ * gfortran.dg/pr44735.f90: Likewise.
+ * gfortran.dg/pr45308.f03: Likewise.
+ * gfortran.dg/pr46297.f: Likewise.
+ * gfortran.dg/pr46588.f90: Likewise.
+ * gfortran.dg/pr46665.f90: Likewise.
+ * gfortran.dg/pr46804.f90: Likewise.
+ * gfortran.dg/pr47008.f03: Likewise.
+ * gfortran.dg/pr47614.f: Likewise.
+ * gfortran.dg/pr47878.f90: Likewise.
+ * gfortran.dg/pr49103.f90: Likewise.
+ * gfortran.dg/pr50069_1.f90: Likewise.
+ * gfortran.dg/pr50769.f90: Likewise.
+ * gfortran.dg/pr52608.f90: Likewise.
+ * gfortran.dg/pr55086_2.f90: Likewise.
+ * gfortran.dg/pr55086_2_tfat.f90: Likewise.
+ * gfortran.dg/pr55086_aliasing_dummy_4_tfat.f90: Likewise.
+ * gfortran.dg/pr55330.f90: Likewise.
+ * gfortran.dg/pr56015.f90: Likewise.
+ * gfortran.dg/pr57910.f90: Likewise.
+ * gfortran.dg/pr59700.f90: Likewise.
+ * gfortran.dg/pr62125.f90: Likewise.
+ * gfortran.dg/pr64530.f90: Likewise.
+ * gfortran.dg/pr65429.f90: Likewise.
+ * gfortran.dg/pr65450.f90: Likewise.
+ * gfortran.dg/pr65504.f90: Likewise.
+ * gfortran.dg/pr65903.f90: Likewise.
+ * gfortran.dg/pr66311.f90: Likewise.
+ * gfortran.dg/pr66864.f90: Likewise.
+ * gfortran.dg/pr67140.f90: Likewise.
+ * gfortran.dg/pr67524.f90: Likewise.
+ * gfortran.dg/pr67885.f90: Likewise.
+ * gfortran.dg/pr68053.f90: Likewise.
+ * gfortran.dg/pr68566.f90: Likewise.
+ * gfortran.dg/pr69514_1.f90: Likewise.
+ * gfortran.dg/pr69514_2.f90: Likewise.
+ * gfortran.dg/pr69739.f90: Likewise.
+ * gfortran.dg/pr70673.f90: Likewise.
+ * gfortran.dg/pr71523_2.f90: Likewise.
+ * gfortran.dg/pr71764.f90: Likewise.
+ * gfortran.dg/pr78092.f90: Likewise.
+ * gfortran.dg/pr82973.f90: Likewise.
+ * gfortran.dg/pr83864.f90: Likewise.
+ * gfortran.dg/pr83874.f90: Likewise.
+ * gfortran.dg/pr84088.f90: Likewise.
+ * gfortran.dg/pr84155.f90: Likewise.
+ * gfortran.dg/proc_decl_12.f90: Likewise.
+ * gfortran.dg/proc_decl_13.f90: Likewise.
+ * gfortran.dg/proc_decl_15.f90: Likewise.
+ * gfortran.dg/proc_decl_17.f90: Likewise.
+ * gfortran.dg/proc_decl_18.f90: Likewise.
+ * gfortran.dg/proc_decl_2.f90: Likewise.
+ * gfortran.dg/proc_decl_5.f90: Likewise.
+ * gfortran.dg/proc_decl_9.f90: Likewise.
+ * gfortran.dg/proc_ptr_1.f90: Likewise.
+ * gfortran.dg/proc_ptr_10.f90: Likewise.
+ * gfortran.dg/proc_ptr_12.f90: Likewise.
+ * gfortran.dg/proc_ptr_18.f90: Likewise.
+ * gfortran.dg/proc_ptr_19.f90: Likewise.
+ * gfortran.dg/proc_ptr_21.f90: Likewise.
+ * gfortran.dg/proc_ptr_22.f90: Likewise.
+ * gfortran.dg/proc_ptr_23.f90: Likewise.
+ * gfortran.dg/proc_ptr_25.f90: Likewise.
+ * gfortran.dg/proc_ptr_26.f90: Likewise.
+ * gfortran.dg/proc_ptr_3.f90: Likewise.
+ * gfortran.dg/proc_ptr_36.f90: Likewise.
+ * gfortran.dg/proc_ptr_47.f90: Likewise.
+ * gfortran.dg/proc_ptr_48.f90: Likewise.
+ * gfortran.dg/proc_ptr_5.f90: Likewise.
+ * gfortran.dg/proc_ptr_6.f90: Likewise.
+ * gfortran.dg/proc_ptr_7.f90: Likewise.
+ * gfortran.dg/proc_ptr_8.f90: Likewise.
+ * gfortran.dg/proc_ptr_common_1.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_1.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_11.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_12.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_13.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_14.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_15.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_16.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_17.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_18.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_19.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_2.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_29.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_45.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_47.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_5.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_6.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_8.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_9.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_pass_1.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_pass_2.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_pass_3.f90: Likewise.
+ * gfortran.dg/proc_ptr_comp_pass_5.f90: Likewise.
+ * gfortran.dg/proc_ptr_result_1.f90: Likewise.
+ * gfortran.dg/proc_ptr_result_3.f90: Likewise.
+ * gfortran.dg/proc_ptr_result_6.f90: Likewise.
+ * gfortran.dg/proc_ptr_result_7.f90: Likewise.
+ * gfortran.dg/proc_ptr_result_8.f90: Likewise.
+ * gfortran.dg/product_init_expr.f03: Likewise.
+ * gfortran.dg/promotion.f90: Likewise.
+ * gfortran.dg/promotion_3.f90: Likewise.
+ * gfortran.dg/promotion_4.f90: Likewise.
+ * gfortran.dg/protected_1.f90: Likewise.
+ * gfortran.dg/protected_2.f90: Likewise.
+ * gfortran.dg/ptr-func-1.f90: Likewise.
+ * gfortran.dg/ptr-func-2.f90: Likewise.
+ * gfortran.dg/ptr_func_assign_1.f08: Likewise.
+ * gfortran.dg/ptr_func_assign_2.f08: Likewise.
+ * gfortran.dg/ptr_func_assign_3.f08: Likewise.
+ * gfortran.dg/pure_byref_1.f90: Likewise.
+ * gfortran.dg/pure_byref_2.f90: Likewise.
+ * gfortran.dg/pure_byref_3.f90: Likewise.
+ * gfortran.dg/quad_2.f90: Likewise.
+ * gfortran.dg/quad_3.f90: Likewise.
+ * gfortran.dg/random_3.f90: Likewise.
+ * gfortran.dg/random_4.f90: Likewise.
+ * gfortran.dg/random_7.f90: Likewise.
+ * gfortran.dg/read_2.f90: Likewise.
+ * gfortran.dg/read_3.f90: Likewise.
+ * gfortran.dg/read_4.f90: Likewise.
+ * gfortran.dg/read_5.f90: Likewise.
+ * gfortran.dg/read_bad_advance.f90: Likewise.
+ * gfortran.dg/read_bang.f90: Likewise.
+ * gfortran.dg/read_bang4.f90: Likewise.
+ * gfortran.dg/read_comma.f: Likewise.
+ * gfortran.dg/read_dir.f90: Likewise.
+ * gfortran.dg/read_empty_file.f: Likewise.
+ * gfortran.dg/read_eof_1.f90: Likewise.
+ * gfortran.dg/read_eof_2.f90: Likewise.
+ * gfortran.dg/read_eof_3.f90: Likewise.
+ * gfortran.dg/read_eof_4.f90: Likewise.
+ * gfortran.dg/read_eof_5.f90: Likewise.
+ * gfortran.dg/read_eof_6.f: Likewise.
+ * gfortran.dg/read_eof_7.f90: Likewise.
+ * gfortran.dg/read_eof_8.f90: Likewise.
+ * gfortran.dg/read_eof_all.f90: Likewise.
+ * gfortran.dg/read_eor.f90: Likewise.
+ * gfortran.dg/read_float_1.f90: Likewise.
+ * gfortran.dg/read_float_2.f03: Likewise.
+ * gfortran.dg/read_float_3.f90: Likewise.
+ * gfortran.dg/read_float_4.f90: Likewise.
+ * gfortran.dg/read_infnan_1.f90: Likewise.
+ * gfortran.dg/read_list_eof_1.f90: Likewise.
+ * gfortran.dg/read_logical.f90: Likewise.
+ * gfortran.dg/read_many_1.f: Likewise.
+ * gfortran.dg/read_no_eor.f90: Likewise.
+ * gfortran.dg/read_noadvance.f90: Likewise.
+ * gfortran.dg/read_repeat.f90: Likewise.
+ * gfortran.dg/read_repeat_2.f90: Likewise.
+ * gfortran.dg/read_size_noadvance.f90: Likewise.
+ * gfortran.dg/read_x_eof.f90: Likewise.
+ * gfortran.dg/read_x_past.f: Likewise.
+ * gfortran.dg/readwrite_unf_direct_eor_1.f90: Likewise.
+ * gfortran.dg/real_const_1.f: Likewise.
+ * gfortran.dg/real_const_2.f90: Likewise.
+ * gfortran.dg/real_const_3.f90: Likewise.
+ * gfortran.dg/real_do_1.f90: Likewise.
+ * gfortran.dg/real_index_1.f90: Likewise.
+ * gfortran.dg/realloc_on_assign_1.f03: Likewise.
+ * gfortran.dg/realloc_on_assign_10.f90: Likewise.
+ * gfortran.dg/realloc_on_assign_11.f90: Likewise.
+ * gfortran.dg/realloc_on_assign_12.f90: Likewise.
+ * gfortran.dg/realloc_on_assign_16.f90: Likewise.
+ * gfortran.dg/realloc_on_assign_17.f90: Likewise.
+ * gfortran.dg/realloc_on_assign_18.f90: Likewise.
+ * gfortran.dg/realloc_on_assign_2.f03: Likewise.
+ * gfortran.dg/realloc_on_assign_23.f90: Likewise.
+ * gfortran.dg/realloc_on_assign_25.f90: Likewise.
+ * gfortran.dg/realloc_on_assign_26.f90: Likewise.
+ * gfortran.dg/realloc_on_assign_27.f08: Likewise.
+ * gfortran.dg/realloc_on_assign_28.f90: Likewise.
+ * gfortran.dg/realloc_on_assign_29.f90: Likewise.
+ * gfortran.dg/realloc_on_assign_3.f03: Likewise.
+ * gfortran.dg/realloc_on_assign_4.f03: Likewise.
+ * gfortran.dg/realloc_on_assign_5.f03: Likewise.
+ * gfortran.dg/realloc_on_assign_7.f03: Likewise.
+ * gfortran.dg/record_marker_1.f90: Likewise.
+ * gfortran.dg/record_marker_2.f: Likewise.
+ * gfortran.dg/record_marker_3.f90: Likewise.
+ * gfortran.dg/recursive_alloc_comp_1.f08: Likewise.
+ * gfortran.dg/recursive_alloc_comp_2.f08: Likewise.
+ * gfortran.dg/recursive_alloc_comp_3.f08: Likewise.
+ * gfortran.dg/recursive_alloc_comp_4.f08: Likewise.
+ * gfortran.dg/recursive_check_7.f90: Likewise.
+ * gfortran.dg/recursive_reference_1.f90: Likewise.
+ * gfortran.dg/recursive_reference_2.f90: Likewise.
+ * gfortran.dg/recursive_stack.f90: Likewise.
+ * gfortran.dg/reduction.f90: Likewise.
+ * gfortran.dg/repack_arrays_1.f90: Likewise.
+ * gfortran.dg/repeat_1.f90: Likewise.
+ * gfortran.dg/repeat_2.f90: Likewise.
+ * gfortran.dg/repeat_3.f90: Likewise.
+ * gfortran.dg/repeat_6.f90: Likewise.
+ * gfortran.dg/reshape-alloc.f90: Likewise.
+ * gfortran.dg/reshape-complex.f90: Likewise.
+ * gfortran.dg/reshape.f90: Likewise.
+ * gfortran.dg/reshape_2.f90: Likewise.
+ * gfortran.dg/reshape_7.f90: Likewise.
+ * gfortran.dg/reshape_empty_1.f03: Likewise.
+ * gfortran.dg/reshape_pad_1.f90: Likewise.
+ * gfortran.dg/reshape_rank7.f90: Likewise.
+ * gfortran.dg/reshape_transpose_1.f90: Likewise.
+ * gfortran.dg/reshape_zerosize_3.f90: Likewise.
+ * gfortran.dg/result_default_init_1.f90: Likewise.
+ * gfortran.dg/result_in_spec_1.f90: Likewise.
+ * gfortran.dg/result_in_spec_2.f90: Likewise.
+ * gfortran.dg/ret_array_1.f90: Likewise.
+ * gfortran.dg/ret_pointer_1.f90: Likewise.
+ * gfortran.dg/ret_pointer_2.f90: Likewise.
+ * gfortran.dg/rewind_1.f90: Likewise.
+ * gfortran.dg/round_1.f03: Likewise.
+ * gfortran.dg/round_2.f03: Likewise.
+ * gfortran.dg/round_3.f08: Likewise.
+ * gfortran.dg/round_4.f90: Likewise.
+ * gfortran.dg/rrspacing_1.f90: Likewise.
+ * gfortran.dg/runtime_warning_1.f90: Likewise.
+ * gfortran.dg/same_type_as_2.f03: Likewise.
+ * gfortran.dg/save_1.f90: Likewise.
+ * gfortran.dg/save_5.f90: Likewise.
+ * gfortran.dg/save_6.f90: Likewise.
+ * gfortran.dg/scalar_mask_1.f90: Likewise.
+ * gfortran.dg/scalar_mask_2.f90: Likewise.
+ * gfortran.dg/scalarize_parameter_array_1.f90: Likewise.
+ * gfortran.dg/scale_1.f90: Likewise.
+ * gfortran.dg/scan_1.f90: Likewise.
+ * gfortran.dg/scan_2.f90: Likewise.
+ * gfortran.dg/secnds-1.f: Likewise.
+ * gfortran.dg/secnds.f: Likewise.
+ * gfortran.dg/select_1.f90: Likewise.
+ * gfortran.dg/select_2.f90: Likewise.
+ * gfortran.dg/select_3.f90: Likewise.
+ * gfortran.dg/select_5.f90: Likewise.
+ * gfortran.dg/select_char_1.f90: Likewise.
+ * gfortran.dg/select_char_2.f90: Likewise.
+ * gfortran.dg/select_type_13.f03: Likewise.
+ * gfortran.dg/select_type_14.f03: Likewise.
+ * gfortran.dg/select_type_15.f03: Likewise.
+ * gfortran.dg/select_type_19.f03: Likewise.
+ * gfortran.dg/select_type_2.f03: Likewise.
+ * gfortran.dg/select_type_26.f03: Likewise.
+ * gfortran.dg/select_type_27.f03: Likewise.
+ * gfortran.dg/select_type_28.f03: Likewise.
+ * gfortran.dg/select_type_3.f03: Likewise.
+ * gfortran.dg/select_type_35.f03: Likewise.
+ * gfortran.dg/select_type_36.f03: Likewise.
+ * gfortran.dg/select_type_37.f03: Likewise.
+ * gfortran.dg/select_type_39.f03: Likewise.
+ * gfortran.dg/select_type_4.f90: Likewise.
+ * gfortran.dg/select_type_5.f03: Likewise.
+ * gfortran.dg/select_type_6.f03: Likewise.
+ * gfortran.dg/select_type_7.f03: Likewise.
+ * gfortran.dg/select_type_8.f03: Likewise.
+ * gfortran.dg/selected_char_kind_1.f90: Likewise.
+ * gfortran.dg/selected_char_kind_4.f90: Likewise.
+ * gfortran.dg/selected_kind_1.f90: Likewise.
+ * gfortran.dg/selected_real_kind_2.f90: Likewise.
+ * gfortran.dg/shape_2.f90: Likewise.
+ * gfortran.dg/shape_4.f90: Likewise.
+ * gfortran.dg/shape_5.f90: Likewise.
+ * gfortran.dg/shape_7.f90: Likewise.
+ * gfortran.dg/shape_8.f90: Likewise.
+ * gfortran.dg/shape_9.f90: Likewise.
+ * gfortran.dg/shift-kind_2.f90: Likewise.
+ * gfortran.dg/shiftalr_1.F90: Likewise.
+ * gfortran.dg/shiftalr_2.F90: Likewise.
+ * gfortran.dg/simpleif_1.f90: Likewise.
+ * gfortran.dg/simplify_argN_1.f90: Likewise.
+ * gfortran.dg/simplify_cshift_1.f90: Likewise.
+ * gfortran.dg/simplify_cshift_4.f90: Likewise.
+ * gfortran.dg/simplify_eoshift_1.f90: Likewise.
+ * gfortran.dg/simplify_modulo.f90: Likewise.
+ * gfortran.dg/single_char_string.f90: Likewise.
+ * gfortran.dg/size_dim.f90: Likewise.
+ * gfortran.dg/size_optional_dim_1.f90: Likewise.
+ * gfortran.dg/sizeof.f90: Likewise.
+ * gfortran.dg/sizeof_4.f90: Likewise.
+ * gfortran.dg/slash_1.f90: Likewise.
+ * gfortran.dg/sms-1.f90: Likewise.
+ * gfortran.dg/sms-2.f90: Likewise.
+ * gfortran.dg/spec_expr_7.f90: Likewise.
+ * gfortran.dg/specifics_1.f90: Likewise.
+ * gfortran.dg/spellcheck-procedure_1.f90: Likewise.
+ * gfortran.dg/spellcheck-procedure_2.f90: Likewise.
+ * gfortran.dg/spread_init_expr.f03: Likewise.
+ * gfortran.dg/spread_scalar_source.f90: Likewise.
+ * gfortran.dg/spread_shape_1.f90: Likewise.
+ * gfortran.dg/stat_1.f90: Likewise.
+ * gfortran.dg/stat_2.f90: Likewise.
+ * gfortran.dg/stfunc_1.f90: Likewise.
+ * gfortran.dg/stfunc_4.f90: Likewise.
+ * gfortran.dg/stfunc_6.f90: Likewise.
+ * gfortran.dg/storage_size_1.f08: Likewise.
+ * gfortran.dg/storage_size_3.f08: Likewise.
+ * gfortran.dg/storage_size_4.f90: Likewise.
+ * gfortran.dg/streamio_1.f90: Likewise.
+ * gfortran.dg/streamio_10.f90: Likewise.
+ * gfortran.dg/streamio_11.f90: Likewise.
+ * gfortran.dg/streamio_12.f90: Likewise.
+ * gfortran.dg/streamio_13.f90: Likewise.
+ * gfortran.dg/streamio_14.f90: Likewise.
+ * gfortran.dg/streamio_15.f90: Likewise.
+ * gfortran.dg/streamio_16.f90: Likewise.
+ * gfortran.dg/streamio_17.f90: Likewise.
+ * gfortran.dg/streamio_2.f90: Likewise.
+ * gfortran.dg/streamio_3.f90: Likewise.
+ * gfortran.dg/streamio_4.f90: Likewise.
+ * gfortran.dg/streamio_5.f90: Likewise.
+ * gfortran.dg/streamio_6.f90: Likewise.
+ * gfortran.dg/streamio_7.f90: Likewise.
+ * gfortran.dg/streamio_8.f90: Likewise.
+ * gfortran.dg/streamio_9.f90: Likewise.
+ * gfortran.dg/string_0xfe_0xff_1.f90: Likewise.
+ * gfortran.dg/string_4.f90: Likewise.
+ * gfortran.dg/string_array_constructor_2.f90: Likewise.
+ * gfortran.dg/string_assign_2.f90: Likewise.
+ * gfortran.dg/string_compare_1.f90: Likewise.
+ * gfortran.dg/string_compare_2.f90: Likewise.
+ * gfortran.dg/string_compare_3.f90: Likewise.
+ * gfortran.dg/string_ctor_1.f90: Likewise.
+ * gfortran.dg/string_length_1.f90: Likewise.
+ * gfortran.dg/string_length_2.f90: Likewise.
+ * gfortran.dg/string_length_3.f90: Likewise.
+ * gfortran.dg/string_length_4.f90: Likewise.
+ * gfortran.dg/string_null_compare_1.f: Likewise.
+ * gfortran.dg/string_pad_trunc.f90: Likewise.
+ * gfortran.dg/structure_constructor_1.f03: Likewise.
+ * gfortran.dg/structure_constructor_11.f90: Likewise.
+ * gfortran.dg/structure_constructor_13.f03: Likewise.
+ * gfortran.dg/structure_constructor_2.f03: Likewise.
+ * gfortran.dg/structure_constructor_5.f03: Likewise.
+ * gfortran.dg/submodule_1.f08: Likewise.
+ * gfortran.dg/submodule_11.f08: Likewise.
+ * gfortran.dg/submodule_14.f08: Likewise.
+ * gfortran.dg/submodule_15.f08: Likewise.
+ * gfortran.dg/submodule_17.f08: Likewise.
+ * gfortran.dg/submodule_18.f08: Likewise.
+ * gfortran.dg/submodule_19.f08: Likewise.
+ * gfortran.dg/submodule_2.f08: Likewise.
+ * gfortran.dg/submodule_27.f08: Likewise.
+ * gfortran.dg/submodule_28.f08: Likewise.
+ * gfortran.dg/submodule_29.f08: Likewise.
+ * gfortran.dg/submodule_30.f08: Likewise.
+ * gfortran.dg/submodule_6.f08: Likewise.
+ * gfortran.dg/submodule_7.f08: Likewise.
+ * gfortran.dg/submodule_8.f08: Likewise.
+ * gfortran.dg/subnormal_1.f90: Likewise.
+ * gfortran.dg/subref_array_pointer_1.f90: Likewise.
+ * gfortran.dg/subref_array_pointer_2.f90: Likewise.
+ * gfortran.dg/subref_array_pointer_4.f90: Likewise.
+ * gfortran.dg/substr_2.f: Likewise.
+ * gfortran.dg/substr_3.f: Likewise.
+ * gfortran.dg/substr_4.f: Likewise.
+ * gfortran.dg/substr_5.f90: Likewise.
+ * gfortran.dg/substr_6.f90: Likewise.
+ * gfortran.dg/substr_alloc_string_comp_1.f90: Likewise.
+ * gfortran.dg/sum_init_expr.f03: Likewise.
+ * gfortran.dg/sum_zero_array_1.f90: Likewise.
+ * gfortran.dg/system_clock_3.f08: Likewise.
+ * gfortran.dg/t_editing.f: Likewise.
+ * gfortran.dg/team_change_1.f90: Likewise.
+ * gfortran.dg/team_end_1.f90: Likewise.
+ * gfortran.dg/team_number_1.f90: Likewise.
+ * gfortran.dg/temporary_1.f90: Likewise.
+ * gfortran.dg/test_com_block.f90: Likewise.
+ * gfortran.dg/test_only_clause.f90: Likewise.
+ * gfortran.dg/tiny_1.f90: Likewise.
+ * gfortran.dg/tiny_2.f90: Likewise.
+ * gfortran.dg/tl_editing.f90: Likewise.
+ * gfortran.dg/transfer_array_intrinsic_1.f90: Likewise.
+ * gfortran.dg/transfer_array_intrinsic_2.f90: Likewise.
+ * gfortran.dg/transfer_array_intrinsic_3.f90: Likewise.
+ * gfortran.dg/transfer_array_intrinsic_4.f90: Likewise.
+ * gfortran.dg/transfer_assumed_size_1.f90: Likewise.
+ * gfortran.dg/transfer_class_2.f90: Likewise.
+ * gfortran.dg/transfer_intrinsic_2.f90: Likewise.
+ * gfortran.dg/transfer_intrinsic_3.f90: Likewise.
+ * gfortran.dg/transfer_intrinsic_5.f90: Likewise.
+ * gfortran.dg/transfer_resolve_1.f90: Likewise.
+ * gfortran.dg/transfer_simplify_1.f90: Likewise.
+ * gfortran.dg/transfer_simplify_10.f90: Likewise.
+ * gfortran.dg/transfer_simplify_11.f90: Likewise.
+ * gfortran.dg/transfer_simplify_2.f90: Likewise.
+ * gfortran.dg/transfer_simplify_3.f90: Likewise.
+ * gfortran.dg/transfer_simplify_4.f90: Likewise.
+ * gfortran.dg/transfer_simplify_8.f90: Likewise.
+ * gfortran.dg/transfer_simplify_9.f90: Likewise.
+ * gfortran.dg/transpose_1.f90: Likewise.
+ * gfortran.dg/transpose_3.f03: Likewise.
+ * gfortran.dg/transpose_4.f90: Likewise.
+ * gfortran.dg/transpose_conjg_1.f90: Likewise.
+ * gfortran.dg/transpose_intrinsic_func_call_1.f90: Likewise.
+ * gfortran.dg/transpose_optimization_2.f90: Likewise.
+ * gfortran.dg/trim_1.f90: Likewise.
+ * gfortran.dg/trim_optimize_1.f90: Likewise.
+ * gfortran.dg/trim_optimize_2.f90: Likewise.
+ * gfortran.dg/trim_optimize_3.f90: Likewise.
+ * gfortran.dg/trim_optimize_4.f90: Likewise.
+ * gfortran.dg/trim_optimize_5.f90: Likewise.
+ * gfortran.dg/trim_optimize_6.f90: Likewise.
+ * gfortran.dg/trim_optimize_7.f90: Likewise.
+ * gfortran.dg/trim_optimize_8.f90: Likewise.
+ * gfortran.dg/type_to_class_1.f03: Likewise.
+ * gfortran.dg/type_to_class_2.f03: Likewise.
+ * gfortran.dg/type_to_class_3.f03: Likewise.
+ * gfortran.dg/type_to_class_4.f03: Likewise.
+ * gfortran.dg/type_to_class_5.f03: Likewise.
+ * gfortran.dg/typebound_assignment_5.f03: Likewise.
+ * gfortran.dg/typebound_assignment_6.f03: Likewise.
+ * gfortran.dg/typebound_assignment_7.f90: Likewise.
+ * gfortran.dg/typebound_call_1.f03: Likewise.
+ * gfortran.dg/typebound_call_13.f03: Likewise.
+ * gfortran.dg/typebound_call_18.f03: Likewise.
+ * gfortran.dg/typebound_call_19.f03: Likewise.
+ * gfortran.dg/typebound_call_2.f03: Likewise.
+ * gfortran.dg/typebound_call_20.f03: Likewise.
+ * gfortran.dg/typebound_call_3.f03: Likewise.
+ * gfortran.dg/typebound_generic_5.f03: Likewise.
+ * gfortran.dg/typebound_generic_6.f03: Likewise.
+ * gfortran.dg/typebound_generic_9.f03: Likewise.
+ * gfortran.dg/typebound_operator_12.f03: Likewise.
+ * gfortran.dg/typebound_operator_13.f03: Likewise.
+ * gfortran.dg/typebound_operator_15.f90: Likewise.
+ * gfortran.dg/typebound_operator_20.f90: Likewise.
+ * gfortran.dg/typebound_operator_3.f03: Likewise.
+ * gfortran.dg/typebound_operator_6.f03: Likewise.
+ * gfortran.dg/typebound_operator_7.f03: Likewise.
+ * gfortran.dg/typebound_operator_8.f03: Likewise.
+ * gfortran.dg/typebound_operator_9.f03: Likewise.
+ * gfortran.dg/typebound_proc_19.f90: Likewise.
+ * gfortran.dg/typebound_proc_20.f90: Likewise.
+ * gfortran.dg/typebound_proc_23.f90: Likewise.
+ * gfortran.dg/typebound_proc_27.f03: Likewise.
+ * gfortran.dg/typebound_proc_35.f90: Likewise.
+ * gfortran.dg/typebound_proc_36.f90: Likewise.
+ * gfortran.dg/unf_io_convert_1.f90: Likewise.
+ * gfortran.dg/unf_io_convert_2.f90: Likewise.
+ * gfortran.dg/unf_io_convert_3.f90: Likewise.
+ * gfortran.dg/unf_io_convert_4.f90: Likewise.
+ * gfortran.dg/unf_read_corrupted_1.f90: Likewise.
+ * gfortran.dg/unf_read_corrupted_2.f90: Likewise.
+ * gfortran.dg/unf_short_record_1.f90: Likewise.
+ * gfortran.dg/unformatted_recl_1.f90: Likewise.
+ * gfortran.dg/unformatted_subrecord_1.f90: Likewise.
+ * gfortran.dg/unit_1.f90: Likewise.
+ * gfortran.dg/unlimited_fmt_1.f08: Likewise.
+ * gfortran.dg/unlimited_polymorphic_1.f03: Likewise.
+ * gfortran.dg/unlimited_polymorphic_13.f90: Likewise.
+ * gfortran.dg/unlimited_polymorphic_14.f90: Likewise.
+ * gfortran.dg/unlimited_polymorphic_17.f90: Likewise.
+ * gfortran.dg/unlimited_polymorphic_18.f90: Likewise.
+ * gfortran.dg/unlimited_polymorphic_20.f90: Likewise.
+ * gfortran.dg/unlimited_polymorphic_21.f90: Likewise.
+ * gfortran.dg/unlimited_polymorphic_22.f90: Likewise.
+ * gfortran.dg/unlimited_polymorphic_23.f90: Likewise.
+ * gfortran.dg/unlimited_polymorphic_24.f03: Likewise.
+ * gfortran.dg/unlimited_polymorphic_25.f90: Likewise.
+ * gfortran.dg/unlimited_polymorphic_26.f90: Likewise.
+ * gfortran.dg/unlimited_polymorphic_3.f03: Likewise.
+ * gfortran.dg/unlimited_polymorphic_5.f90: Likewise.
+ * gfortran.dg/unlimited_polymorphic_6.f90: Likewise.
+ * gfortran.dg/unpack_init_expr.f03: Likewise.
+ * gfortran.dg/use_10.f90: Likewise.
+ * gfortran.dg/use_11.f90: Likewise.
+ * gfortran.dg/use_13.f90: Likewise.
+ * gfortran.dg/use_24.f90: Likewise.
+ * gfortran.dg/use_27.f90: Likewise.
+ * gfortran.dg/use_5.f90: Likewise.
+ * gfortran.dg/use_allocated_1.f90: Likewise.
+ * gfortran.dg/use_only_1.f90: Likewise.
+ * gfortran.dg/use_only_4.f90: Likewise.
+ * gfortran.dg/use_rename_2.f90: Likewise.
+ * gfortran.dg/use_rename_4.f90: Likewise.
+ * gfortran.dg/used_dummy_types_1.f90: Likewise.
+ * gfortran.dg/used_interface_ref.f90: Likewise.
+ * gfortran.dg/used_types_5.f90: Likewise.
+ * gfortran.dg/utf8_1.f03: Likewise.
+ * gfortran.dg/utf8_2.f03: Likewise.
+ * gfortran.dg/value_1.f90: Likewise.
+ * gfortran.dg/value_2.f90: Likewise.
+ * gfortran.dg/value_4.f90: Likewise.
+ * gfortran.dg/value_6.f03: Likewise.
+ * gfortran.dg/value_7.f03: Likewise.
+ * gfortran.dg/value_test.f90: Likewise.
+ * gfortran.dg/vect/fast-math-pr33299.f90: Likewise.
+ * gfortran.dg/vect/no-fre-no-copy-prop-O3-pr51704.f90: Likewise.
+ * gfortran.dg/vect/pr60510.f: Likewise.
+ * gfortran.dg/vect/pr69882.f90: Likewise.
+ * gfortran.dg/vect/pr69980.f90: Likewise.
+ * gfortran.dg/vect/vect-5.f90: Likewise.
+ * gfortran.dg/vect/vect-alias-check-1.F90: Likewise.
+ * gfortran.dg/vector_subscript_1.f90: Likewise.
+ * gfortran.dg/vector_subscript_2.f90: Likewise.
+ * gfortran.dg/vector_subscript_3.f90: Likewise.
+ * gfortran.dg/vector_subscript_5.f90: Likewise.
+ * gfortran.dg/verify_2.f90: Likewise.
+ * gfortran.dg/volatile10.f90: Likewise.
+ * gfortran.dg/where_1.f90: Likewise.
+ * gfortran.dg/where_operator_assign_1.f90: Likewise.
+ * gfortran.dg/where_operator_assign_2.f90: Likewise.
+ * gfortran.dg/where_operator_assign_3.f90: Likewise.
+ * gfortran.dg/whole_file_13.f90: Likewise.
+ * gfortran.dg/whole_file_2.f90: Likewise.
+ * gfortran.dg/widechar_2.f90: Likewise.
+ * gfortran.dg/widechar_4.f90: Likewise.
+ * gfortran.dg/widechar_5.f90: Likewise.
+ * gfortran.dg/widechar_6.f90: Likewise.
+ * gfortran.dg/widechar_8.f90: Likewise.
+ * gfortran.dg/widechar_IO_1.f90: Likewise.
+ * gfortran.dg/widechar_IO_2.f90: Likewise.
+ * gfortran.dg/widechar_IO_3.f90: Likewise.
+ * gfortran.dg/widechar_IO_4.f90: Likewise.
+ * gfortran.dg/widechar_compare_1.f90: Likewise.
+ * gfortran.dg/widechar_intrinsics_10.f90: Likewise.
+ * gfortran.dg/widechar_intrinsics_4.f90: Likewise.
+ * gfortran.dg/widechar_intrinsics_5.f90: Likewise.
+ * gfortran.dg/widechar_intrinsics_6.f90: Likewise.
+ * gfortran.dg/widechar_intrinsics_7.f90: Likewise.
+ * gfortran.dg/widechar_intrinsics_8.f90: Likewise.
+ * gfortran.dg/widechar_intrinsics_9.f90: Likewise.
+ * gfortran.dg/widechar_select_1.f90: Likewise.
+ * gfortran.dg/winapi.f90: Likewise.
+ * gfortran.dg/write_0_pe_format.f90: Likewise.
+ * gfortran.dg/write_back.f: Likewise.
+ * gfortran.dg/write_check3.f90: Likewise.
+ * gfortran.dg/write_direct_eor.f90: Likewise.
+ * gfortran.dg/write_padding.f90: Likewise.
+ * gfortran.dg/write_recursive.f90: Likewise.
+ * gfortran.dg/write_rewind_1.f: Likewise.
+ * gfortran.dg/write_rewind_2.f: Likewise.
+ * gfortran.dg/write_zero_array.f90: Likewise.
+ * gfortran.dg/x_slash_1.f: Likewise.
+ * gfortran.dg/x_slash_2.f: Likewise.
+ * gfortran.dg/zero_array_components_1.f90: Likewise.
+ * gfortran.dg/zero_length_1.f90: Likewise.
+ * gfortran.dg/zero_length_2.f90: Likewise.
+ * gfortran.dg/zero_sized_1.f90: Likewise.
+ * gfortran.dg/zero_sized_3.f90: Likewise.
+ * gfortran.fortran-torture/compile/nested.f90: Likewise.
+ * gfortran.fortran-torture/compile/parameter_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/a_edit_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/adjustr.f90: Likewise.
+ * gfortran.fortran-torture/execute/allocate.f90: Likewise.
+ * gfortran.fortran-torture/execute/alternate_return.f90: Likewise.
+ * gfortran.fortran-torture/execute/args.f90: Likewise.
+ * gfortran.fortran-torture/execute/arithmeticif.f90: Likewise.
+ * gfortran.fortran-torture/execute/arrayarg.f90: Likewise.
+ * gfortran.fortran-torture/execute/arrayarg2.f90: Likewise.
+ * gfortran.fortran-torture/execute/arraysave.f90: Likewise.
+ * gfortran.fortran-torture/execute/assumed_size.f90: Likewise.
+ * gfortran.fortran-torture/execute/backspace.f90: Likewise.
+ * gfortran.fortran-torture/execute/bounds.f90: Likewise.
+ * gfortran.fortran-torture/execute/character_passing.f90: Likewise.
+ * gfortran.fortran-torture/execute/character_select_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/cmplx.f90: Likewise.
+ * gfortran.fortran-torture/execute/common.f90: Likewise.
+ * gfortran.fortran-torture/execute/common_2.f90: Likewise.
+ * gfortran.fortran-torture/execute/common_init_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/common_size.f90: Likewise.
+ * gfortran.fortran-torture/execute/constructor.f90: Likewise.
+ * gfortran.fortran-torture/execute/contained.f90: Likewise.
+ * gfortran.fortran-torture/execute/contained2.f90: Likewise.
+ * gfortran.fortran-torture/execute/contained_3.f90: Likewise.
+ * gfortran.fortran-torture/execute/csqrt_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/data.f90: Likewise.
+ * gfortran.fortran-torture/execute/data_2.f90: Likewise.
+ * gfortran.fortran-torture/execute/data_3.f90: Likewise.
+ * gfortran.fortran-torture/execute/data_4.f90: Likewise.
+ * gfortran.fortran-torture/execute/dep_fails.f90: Likewise.
+ * gfortran.fortran-torture/execute/der_init.f90: Likewise.
+ * gfortran.fortran-torture/execute/der_init_2.f90: Likewise.
+ * gfortran.fortran-torture/execute/der_init_3.f90: Likewise.
+ * gfortran.fortran-torture/execute/der_init_4.f90: Likewise.
+ * gfortran.fortran-torture/execute/der_init_5.f90: Likewise.
+ * gfortran.fortran-torture/execute/der_io.f90: Likewise.
+ * gfortran.fortran-torture/execute/der_point.f90: Likewise.
+ * gfortran.fortran-torture/execute/der_type.f90: Likewise.
+ * gfortran.fortran-torture/execute/direct_io.f90: Likewise.
+ * gfortran.fortran-torture/execute/elemental.f90: Likewise.
+ * gfortran.fortran-torture/execute/empty_format.f90: Likewise.
+ * gfortran.fortran-torture/execute/emptyif.f90: Likewise.
+ * gfortran.fortran-torture/execute/entry_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/entry_10.f90: Likewise.
+ * gfortran.fortran-torture/execute/entry_11.f90: Likewise.
+ * gfortran.fortran-torture/execute/entry_2.f90: Likewise.
+ * gfortran.fortran-torture/execute/entry_3.f90: Likewise.
+ * gfortran.fortran-torture/execute/entry_4.f90: Likewise.
+ * gfortran.fortran-torture/execute/entry_5.f90: Likewise.
+ * gfortran.fortran-torture/execute/entry_6.f90: Likewise.
+ * gfortran.fortran-torture/execute/entry_7.f90: Likewise.
+ * gfortran.fortran-torture/execute/entry_8.f90: Likewise.
+ * gfortran.fortran-torture/execute/entry_9.f90: Likewise.
+ * gfortran.fortran-torture/execute/enum_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/enum_2.f90: Likewise.
+ * gfortran.fortran-torture/execute/enum_3.f90: Likewise.
+ * gfortran.fortran-torture/execute/enum_4.f90: Likewise.
+ * gfortran.fortran-torture/execute/equiv_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/equiv_2.f90: Likewise.
+ * gfortran.fortran-torture/execute/equiv_3.f90: Likewise.
+ * gfortran.fortran-torture/execute/equiv_4.f90: Likewise.
+ * gfortran.fortran-torture/execute/equiv_init_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/f2_edit_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/forall.f90: Likewise.
+ * gfortran.fortran-torture/execute/forall_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/forall_2.f90: Likewise.
+ * gfortran.fortran-torture/execute/forall_3.f90: Likewise.
+ * gfortran.fortran-torture/execute/forall_4.f90: Likewise.
+ * gfortran.fortran-torture/execute/forall_5.f90: Likewise.
+ * gfortran.fortran-torture/execute/forall_6.f90: Likewise.
+ * gfortran.fortran-torture/execute/forall_7.f90: Likewise.
+ * gfortran.fortran-torture/execute/function_module_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/getarg_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/hollerith.f90: Likewise.
+ * gfortran.fortran-torture/execute/in-pack.f90: Likewise.
+ * gfortran.fortran-torture/execute/initialization_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/initializer.f90: Likewise.
+ * gfortran.fortran-torture/execute/inquire_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/inquire_2.f90: Likewise.
+ * gfortran.fortran-torture/execute/inquire_3.f90: Likewise.
+ * gfortran.fortran-torture/execute/inquire_4.f90: Likewise.
+ * gfortran.fortran-torture/execute/inquire_5.f90: Likewise.
+ * gfortran.fortran-torture/execute/integer_select.f90: Likewise.
+ * gfortran.fortran-torture/execute/integer_select_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/internal_write.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_abs.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_achar.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_aint_anint.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_anyall.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_associated.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_associated_2.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_bitops.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_count.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_cshift.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_dim.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_dotprod.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_dprod.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_dummy.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_eoshift.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_fraction_exponent.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_index.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_integer.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_leadz.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_len.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_matmul.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_merge.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_minmax.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_mmloc.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_mmloc_2.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_mmloc_3.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_mmloc_4.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_mmval.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_mod_ulo.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_mvbits.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_nearest.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_pack.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_present.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_product.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_rrspacing.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_scale.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_set_exponent.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_shape.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_si_kind.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_sign.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_size.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_spacing.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_spread.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_sr_kind.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_sum.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_trailz.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_transpose.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_trim.f90: Likewise.
+ * gfortran.fortran-torture/execute/intrinsic_unpack.f90: Likewise.
+ * gfortran.fortran-torture/execute/iolength_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/iolength_2.f90: Likewise.
+ * gfortran.fortran-torture/execute/iolength_3.f90: Likewise.
+ * gfortran.fortran-torture/execute/list_read_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/logical_select_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/mainsub.f90: Likewise.
+ * gfortran.fortran-torture/execute/math.f90: Likewise.
+ * gfortran.fortran-torture/execute/module_init_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/module_interface_2.f90: Likewise.
+ * gfortran.fortran-torture/execute/nan_inf_fmt.f90: Likewise.
+ * gfortran.fortran-torture/execute/nestcons.f90: Likewise.
+ * gfortran.fortran-torture/execute/nullarg.f90: Likewise.
+ * gfortran.fortran-torture/execute/optstring_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/parameter_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/parameter_2.f90: Likewise.
+ * gfortran.fortran-torture/execute/partparm.f90: Likewise.
+ * gfortran.fortran-torture/execute/plusconst_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/power.f90: Likewise.
+ * gfortran.fortran-torture/execute/pr19269-1.f90: Likewise.
+ * gfortran.fortran-torture/execute/pr23373-1.f90: Likewise.
+ * gfortran.fortran-torture/execute/pr23373-2.f90: Likewise.
+ * gfortran.fortran-torture/execute/pr32140.f90: Likewise.
+ * gfortran.fortran-torture/execute/pr40021.f: Likewise.
+ * gfortran.fortran-torture/execute/pr43390.f90: Likewise.
+ * gfortran.fortran-torture/execute/pr54767.f90: Likewise.
+ * gfortran.fortran-torture/execute/pr57396.f90: Likewise.
+ * gfortran.fortran-torture/execute/procarg.f90: Likewise.
+ * gfortran.fortran-torture/execute/ptr.f90: Likewise.
+ * gfortran.fortran-torture/execute/random_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/random_2.f90: Likewise.
+ * gfortran.fortran-torture/execute/random_init.f90: Likewise.
+ * gfortran.fortran-torture/execute/read_eof.f90: Likewise.
+ * gfortran.fortran-torture/execute/read_null_string.f90: Likewise.
+ * gfortran.fortran-torture/execute/retarray.f90: Likewise.
+ * gfortran.fortran-torture/execute/retarray_2.f90: Likewise.
+ * gfortran.fortran-torture/execute/save_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/save_2.f90: Likewise.
+ * gfortran.fortran-torture/execute/scalarize.f90: Likewise.
+ * gfortran.fortran-torture/execute/scalarize2.f90: Likewise.
+ * gfortran.fortran-torture/execute/scalarize3.f90: Likewise.
+ * gfortran.fortran-torture/execute/select_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/seq_io.f90: Likewise.
+ * gfortran.fortran-torture/execute/slash_edit.f90: Likewise.
+ * gfortran.fortran-torture/execute/spec_abs.f90: Likewise.
+ * gfortran.fortran-torture/execute/specifics.f90: Likewise.
+ * gfortran.fortran-torture/execute/st_function.f90: Likewise.
+ * gfortran.fortran-torture/execute/st_function_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/st_function_2.f90: Likewise.
+ * gfortran.fortran-torture/execute/stack_varsize.f90: Likewise.
+ * gfortran.fortran-torture/execute/straret.f90: Likewise.
+ * gfortran.fortran-torture/execute/strarray_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/strarray_2.f90: Likewise.
+ * gfortran.fortran-torture/execute/strarray_3.f90: Likewise.
+ * gfortran.fortran-torture/execute/strarray_4.f90: Likewise.
+ * gfortran.fortran-torture/execute/strcmp.f90: Likewise.
+ * gfortran.fortran-torture/execute/strcommon_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/string.f90: Likewise.
+ * gfortran.fortran-torture/execute/strlen.f90: Likewise.
+ * gfortran.fortran-torture/execute/strret.f90: Likewise.
+ * gfortran.fortran-torture/execute/t_edit.f90: Likewise.
+ * gfortran.fortran-torture/execute/test_slice.f90: Likewise.
+ * gfortran.fortran-torture/execute/transfer1.f90: Likewise.
+ * gfortran.fortran-torture/execute/transfer2.f90: Likewise.
+ * gfortran.fortran-torture/execute/unopened_unit_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/userop.f90: Likewise.
+ * gfortran.fortran-torture/execute/where17.f90: Likewise.
+ * gfortran.fortran-torture/execute/where18.f90: Likewise.
+ * gfortran.fortran-torture/execute/where19.f90: Likewise.
+ * gfortran.fortran-torture/execute/where20.f90: Likewise.
+ * gfortran.fortran-torture/execute/where21.f90: Likewise.
+ * gfortran.fortran-torture/execute/where_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/where_10.f90: Likewise.
+ * gfortran.fortran-torture/execute/where_11.f90: Likewise.
+ * gfortran.fortran-torture/execute/where_14.f90: Likewise.
+ * gfortran.fortran-torture/execute/where_15.f90: Likewise.
+ * gfortran.fortran-torture/execute/where_16.f90: Likewise.
+ * gfortran.fortran-torture/execute/where_2.f90: Likewise.
+ * gfortran.fortran-torture/execute/where_3.f90: Likewise.
+ * gfortran.fortran-torture/execute/where_4.f90: Likewise.
+ * gfortran.fortran-torture/execute/where_5.f90: Likewise.
+ * gfortran.fortran-torture/execute/where_6.f90: Likewise.
+ * gfortran.fortran-torture/execute/where_7.f90: Likewise.
+ * gfortran.fortran-torture/execute/where_8.f90: Likewise.
+ * gfortran.fortran-torture/execute/write_a_1.f90: Likewise.
+ * gfortran.fortran-torture/execute/write_logical.f90: Likewise.
+ * gfortran.dg/extends_type_of_3.f90: Likewise. Adjust tree scans.
+ * gfortran.dg/inline_transpose_1.f90: Likewise.
+
+2018-02-17 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/84115
+ * gfortran.dg/associate_35.f90: Remove error, add STOP n and
+ change to dg-run.
+
+2018-02-16 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR ada/84277
+ * gnat.dg/array11.adb (Array11): Tweak index and remove warning.
+ * gnat.dg/dispatch1.adb: Rename into...
+ * gnat.dg/disp1.adb: ...this.
+ * gnat.dg/dispatch1_p.ads: Rename into...
+ * gnat.dg/disp1_pkg.ads: ...this.
+ * gnat.dg/disp2.adb: Rename into...
+ * gnat.dg/dispatch2.adb: ...this.
+ * gnat.dg/dispatch2_p.ads: Rename into...
+ * gnat.dg/disp2_pkg.ads: ...this.
+ * gnat.dg/dispatch2_p.adb: Rename into...
+ * gnat.dg/disp2_pkg.adb: this.
+ * gnat.dg/generic_dispatch.adb: Rename into...
+ * gnat.dg/generic_disp.adb: this.
+ * gnat.dg/generic_dispatch_p.ads: Rename into...
+ * gnat.dg/generic_disp_pkg.ads: ...this.
+ * gnat.dg/generic_dispatch_p.adb: Rename into...
+ * gnat.dg/generic_disp_pkg.adb: ...this.
+ * gnat.dg/null_pointer_deref1.adb (Null_Pointer_Deref1): Robustify.
+ * gnat.dg/null_pointer_deref2.adb (Null_Pointer_Deref2): Likewise.
+ * gnat.dg/object_overflow1.adb: Tweak index.
+ * gnat.dg/object_overflow2.adb: Likewise.
+ * gnat.dg/object_overflow3.adb: Likewise.
+ * gnat.dg/object_overflow4.adb: Likewise.
+ * gnat.dg/object_overflow5.adb: Likewise.
+
+2018-02-16 Jakub Jelinek <jakub@redhat.com>
+
+ PR ipa/84425
+ * gcc.c-torture/compile/pr84425.c: New test.
+
+2018-02-16 Marek Polacek <polacek@redhat.com>
+ Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/84192
+ * g++.dg/cpp1y/constexpr-84192.C: New test.
+
+2018-02-16 Martin Sebor <msebor@redhat.com>
+
+ PR c++/79064
+ * g++.dg/overload15.C: New test.
+
+2018-02-16 Yury Gribov <tetra2005@gmail.com>
+
+ PR target/81535
+ * gcc.dg/pr56727-1.c: Prevent tailcalls and update for powerpc*-*-*.
+ * gcc.dg/pr56727-2.c: Ditto.
+ * gcc.target/powerpc/pr79439.c: Renamed to...
+ * gcc.target/powerpc/pr79439-1.c: ...this.
+ * gcc.target/powerpc/pr79439-2.c: New test.
+ * gcc.target/powerpc/pr79439-3.c: New test.
+
+2018-02-16 Will Schmidt <will_schmidt@vnet.ibm.com>
+
+ target/pr84371
+ * gcc.target/powerpc/builtins-3-p8.c: Update stanzas.
+ * gcc.target/powerpc/builtins-3-p9.c: Update stanzas, Enhance test.
+ * gcc.target/powerpc/builtins-3-runnable.c: Update stanzas.
+ * gcc.target/powerpc/builtins-3-vec_reve_runnable.c: Same.
+ * gcc.target/powerpc/builtins-3.c: Same.
+
+2018-02-16 Nathan Sidwell <nathan@acm.org>
+
+ * g++.old-deja/g++.jason/scoping15.C: Fix dg-warning.
+
+2018-02-16 Vladimir Makarov <vmakarov@redhat.com>
+
+ PR rtl-optimization/70023
+ * gcc.target/i386/pr70023.c: New.
+
+2018-02-16 Carl Love <cel@us.ibm.com>
+
+ * gcc.target/powerpc/p9-vinsert4b-1.c: Remove test file for non-ABI
+ tests.
+ * gcc.target/powerpc/p9-vinsert4b-2.c: Remove test file for non-ABI
+ tests.
+
+2018-02-16 Carl Love <cel@us.ibm.com>
+
+ * gcc.target/powerpc/builtins-7-p9-runnable.c: New runnable test file
+ for the ABI definitions for vec_extract4b and vec_insert4b.
+
+2018-02-16 Nathan Sidwell <nathan@acm.org>
+
+ * g++.old-deja/g++.jason/scoping15.C: Expect warnings.
+ * g++.old-deja/g++.mike/net43.C: Likewise.
+
+2018-02-16 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/82468
+ * g++.dg/cpp1z/class-deduction48.C: New.
+
+2018-02-16 Nathan Sidwell <nathan@acm.org>
+
+ PR c++/84375
+ * g++.dg/lookup/pr84375.C: New.
+
+2018-02-14 Oleg Endo <olegendo@gcc.gnu.org>
+
+ PR target/83831
+ * gcc.target/rx/pr83831.c (test_3, test_6): Adjust test cases.
+
+2018-02-16 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/84417
+ * gcc.dg/torture/pr84417.c: New testcase.
+
+2018-02-16 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/84272
+ * g++.dg/opt/pr84272.C: New test.
+
+ PR rtl-optimization/83723
+ * gcc.dg/pr83723.c: New test.
+
+2018-02-16 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/84399
+ * gcc.dg/graphite/pr84399.c: New testcase.
+
+2018-02-16 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/84190
+ * g++.dg/torture/pr84190.C: New testcase.
+
+2018-02-15 Martin Sebor <msebor@redhat.com>
+
+ * gcc.dg/lto/README (dg-lto-warning, dg-lto-message): Document new
+ directives.
+
+2018-02-15 Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/84409
+ * gfortran.dg/dtio_21.f03: Add an error message.
+ * gfortran.dg/dtio_22.f90: Fix invalid test case.
+
+2018-02-15 Thomas Koenig <tkoenig@gcc.gnu.org>
+
+ PR fortran/84381
+ * gfortran.dg/stop_shouldfail.f90: New test.
+
+2018-02-15 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/84330
+ * g++.dg/concepts/pr84330.C: New.
+
+2018-02-15 Tom de Vries <tom@codesourcery.com>
+
+ * gcc.dg/Wstringop-overflow-3.c: Require effective target alloca.
+
+2018-02-15 Tom de Vries <tom@codesourcery.com>
+
+ * gcc.c-torture/compile/pr84136.c: Require effective target
+ indirect_jumps.
+
+2018-02-15 Jakub Jelinek <jakub@redhat.com>
+
+ PR tree-optimization/84383
+ * gcc.c-torture/compile/pr84383.c: New test.
+
+ PR tree-optimization/84334
+ * gcc.dg/pr84334.c: New test.
+
+2018-02-14 Carl Love <cel@us.ibm.com>
+
+ * gcc.target/powerpc/builtins-4-int128-runnable.c
+ (dg-require-effective-target): Change vsx_hw to p8vector_hw.
+ (dg-options): Change -maltivec -mvsx to -mpower8-vector.
+
+2018-02-14 Martin Sebor <msebor@redhat.com>
+
+ PR tree-optimization/83698
+ * gcc.dg/Wrestrict-7.c: New test.
+ * c-c++-common/Wrestrict.c: Adjust expected values for strcat.
+ * gcc.target/i386/chkp-stropt-17.c: Same.
+
+2018-02-14 Martin Sebor <msebor@redhat.com>
+
+ PR c/84108
+ * gcc.dg/Wattributes-8.c: New test.
+
+2018-02-14 Janus Weil <janus@gcc.gnu.org>
+
+ PR fortran/84385
+ * gfortran.dg/allocate_with_source_22.f03: Fix invalid test case.
+ * gfortran.dg/allocate_with_source_23.f90: Ditto.
+ * gfortran.dg/select_type_1.f03: Extend test case.
+
+2017-02-14 Uros Bizjak <ubizjak@gmail.com>
+
+ * gcc.target/i386/pr57193.c (dg-do): Remove target selector.
+ (dg-options): Use -O2 -msse2 -mno-sse3.
+
+2018-02-14 Kelvin Nilsen <kelvin@gcc.gnu.org>
+
+ * gcc.dg/vmx/extract-be-order.c: Disable -maltivec=be warning so
+ this test case still works ok.
+ * gcc.dg/vmx/extract-vsx-be-order.c: Likewise.
+ * gcc.dg/vmx/insert-be-order.c: Likewise.
+ * gcc.dg/vmx/insert-vsx-be-order.c: Likewise.
+ * gcc.dg/vmx/ld-be-order.c: Likewise.
+ * gcc.dg/vmx/ld-vsx-be-order.c: Likewise.
+ * gcc.dg/vmx/lde-be-order.c: Likewise.
+ * gcc.dg/vmx/ldl-be-order.c: Likewise.
+ * gcc.dg/vmx/ldl-vsx-be-order.c: Likewise.
+ * gcc.dg/vmx/merge-be-order.c: Likewise.
+ * gcc.dg/vmx/merge-vsx-be-order.c: Likewise.
+ * gcc.dg/vmx/mult-even-odd-be-order.c: Likewise.
+ * gcc.dg/vmx/pack-be-order.c: Likewise.
+ * gcc.dg/vmx/perm-be-order.c: Likewise.
+ * gcc.dg/vmx/splat-be-order.c: Likewise.
+ * gcc.dg/vmx/splat-vsx-be-order.c: Likewise.
+ * gcc.dg/vmx/st-be-order.c: Likewise.
+ * gcc.dg/vmx/st-vsx-be-order.c: Likewise.
+ * gcc.dg/vmx/ste-be-order.c: Likewise.
+ * gcc.dg/vmx/stl-be-order.c: Likewise.
+ * gcc.dg/vmx/stl-vsx-be-order.c: Likewise.
+ * gcc.dg/vmx/sum2s-be-order.c: Likewise.
+ * gcc.dg/vmx/unpack-be-order.c: Likewise.
+ * gcc.dg/vmx/vsums-be-order.c: Likewise.
+ * gcc.target/powerpc/vec-setup-be-long.c: Likewise.
+
+2018-02-14 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/84350
+ * g++.dg/cpp0x/auto49.C: New.
+
+2018-02-14 Nathan Sidwell <nathan@acm.org>
+
+ * g++.dg/template/instantiate5.C: Adjust required-from loc.
+
+2018-02-14 Will Schmidt <will_schmidt@vnet.ibm.com>
+
+ * gcc.target/powerpc/altivec-consts.c: Update compile stanzas.
+ * gcc.target/powerpc/le-altivec-consts.c: Same.
+
+2018-02-14 Will Schmidt <will_schmidt@vnet.ibm.com>
+
+ PR target/84220
+ * gcc.target/powerpc/pr84220-sld.c: New test.
+ * gcc.target/powerpc/pr84220-sld2.c: New test.
+ * gcc.target/powerpc/pr84220-sldw.c: New test.
+ * gcc.target/powerpc/pr84220-xxperm.c: New test.
+ * gcc.target/powerpc/pr84220-xxsld.c: New test.
+
+2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
+
+ PR target/84239
+ * gcc.target/i386/cet-intrin-3.c: Use new _get_ssp and
+ _inc_ssp intrinsics.
+ * gcc.target/i386/cet-intrin-4.c: Likewise.
+ * gcc.target/i386/cet-rdssp-1.c: Remove argument from
+ __builtin_ia32_rdssp[d|q].
+
+2018-02-14 Richard Sandiford <richard.sandiford@linaro.org>
+
+ PR tree-optimization/84357
+ * gcc.dg/vect/pr84357.c: New test.
+
+2018-02-14 Oleg Endo <olegendo@gcc.gnu.org>
+
+ PR target/83831
+ * gcc.target/rx/pr83831.c: New tests.
+
+2018-02-14 Jozef Lawrynowicz <jozefl.gcc@gmail.com>
+
+ PR target/79242
+ * gcc.target/msp430/pr79242.c: New test.
+
+2018-02-13 Peter Bergner <bergner@vnet.ibm.com>
+
+ PR target/84372
+ * gcc.target/powerpc/lvsl-lvsr.c: Also match lxv when compiling
+ with -mcpu=power9.
+
+2018-02-13 Peter Bergner <bergner@vnet.ibm.com>
+
+ PR target/84279
+ * g++.dg/pr84279.C: New test.
+
+2018-02-13 Segher Boessenkool <segher@kernel.crashing.org>
+
+ PR rtl-optimization/84169
+ * gcc.c-torture/execute/pr84169.c: New.
+
+2018-02-13 Peter Bergner <bergner@vnet.ibm.com>
+
+ PR target/84370
+ * gcc.target/powerpc/builtins-3-p9-runnable.c: Remove deprecated option.
+
+2018-02-13 Peter Bergner <bergner@vnet.ibm.com>
+
+ PR target/84365
+ * gcc.target/powerpc/altivec-7-le.c: Also match lxv when compiling
+ with -mcpu=power9.
+
+2018-02-13 Jakub Jelinek <jakub@redhat.com>
+
+ PR c++/84364
+ * g++.dg/warn/effc4.C: New test.
+
+2018-02-13 Paolo Carlini <paolo.carlini@oracle.com>
+
+ PR c++/84333
+ * g++.dg/template/sizeof16.C: New.
+ * g++.dg/template/sizeof17.C: Likewise.
+
2018-02-13 Janus Weil <janus@gcc.gnu.org>
PR fortran/84313
@@ -21,7 +3044,7 @@
2018-02-13 Vladimir Makarov <vmakarov@redhat.com>
PR target/84359
- * gcc.target/i386/57193.c: Add -march=x86-64.
+ * gcc.target/i386/pr57193.c: Add -march=x86-64.
2018-02-13 Paolo Bonzini <bonzini@gnu.org>
@@ -183,7 +3206,7 @@
PR sanitizer/83987
* g++.dg/ubsan/pr83987-2.C: New test.
-
+
2018-02-09 Sebastian Perta <sebastian.perta@renesas.com>
* gcc.target/rx/movsicc.c: New test.
@@ -208,7 +3231,7 @@
2018-02-09 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/57193
- * gcc.target/i386/57193.c: New.
+ * gcc.target/i386/pr57193.c: New.
2018-02-09 Jakub Jelinek <jakub@redhat.com>
@@ -1415,6 +4438,7 @@
* gcc.target/powerpc/pr83862.c: New test.
2018-01-22 Carl Love <cel@us.ibm.com>
+
* gcc.target/powerpc/powerpc.exp: Add torture tests for
builtins-4-runnable.c, builtins-6-runnable.c,
builtins-5-p9-runnable.c, builtins-6-p9-runnable.c.
@@ -3474,7 +6498,7 @@
PR c++/83734
* g++.dg/cpp0x/pr83734.C: New test.
-2018-01-09 Carl Love <cel@us.ibm.com>
+2018-01-09 Carl Love <cel@us.ibm.com>
* gcc.target/powerpc/builtins-1.c (main): Add tests for vec_mergee and
vec_mergeo builtins with float, double, long long, unsigned long long,
diff --git a/gcc/testsuite/c-c++-common/Warray-bounds-3.c b/gcc/testsuite/c-c++-common/Warray-bounds-3.c
index 3445b950811..2ee81464375 100644
--- a/gcc/testsuite/c-c++-common/Warray-bounds-3.c
+++ b/gcc/testsuite/c-c++-common/Warray-bounds-3.c
@@ -61,7 +61,7 @@ void test_memcpy_bounds (char *d, const char *s, size_t n)
they appear as large positive in the source. It would be nice
if they retained their type but unfortunately that's not how
it works so be prepared for both in case it even gets fixed. */
- T (char, 1, a + UR (3, SIZE_MAX - 1), s, n); /* { dg-warning "offset \\\[3, -2] is out of the bounds \\\[0, 1] of object" "memcpy" } */
+ T (char, 1, a + UR (3, SIZE_MAX - 1), s, n); /* { dg-warning "offset \\\[3, -?\[0-9\]+] is out of the bounds \\\[0, 1] of object" "memcpy" } */
/* Verify that invalid offsets into an array of unknown size are
detected. */
@@ -226,7 +226,7 @@ T (char, 1, a + SR (-2, -1), s, n); /* { dg-warning "offset \\\[-2, -1] is o
they appear as large positive in the source. It would be nice
if they retained their type but unfortunately that's not how
it works so be prepared for both in case it ever gets fixed. */
- T (char, 1, a + UR (3, SIZE_MAX), s, n); /* { dg-warning "offset \\\[3, -1] is out of the bounds \\\[0, 1] of object " "mempcpy" } */
+ T (char, 1, a + UR (3, SIZE_MAX), s, n); /* { dg-warning "offset \\\[3, -?\[0-9\]+] is out of the bounds \\\[0, 1] of object " "mempcpy" } */
/* Verify that invalid offsets into an array of unknown size are
detected. */
diff --git a/gcc/testsuite/c-c++-common/Wrestrict.c b/gcc/testsuite/c-c++-common/Wrestrict.c
index 671497ea3e6..e62652f78e1 100644
--- a/gcc/testsuite/c-c++-common/Wrestrict.c
+++ b/gcc/testsuite/c-c++-common/Wrestrict.c
@@ -223,7 +223,7 @@ void test_memcpy_range (char *d, size_t sz)
/* Because the size is constant and a power of 2 the following is
folded too early to detect the overlap. */
- T (d + ir, d, 4); /* { dg-warning "accessing 4 bytes at offsets \\\[2, 3] and 0 overlaps 2 byte at offset 2" "" { xfail *-*-* } } */
+ T (d + ir, d, 4); /* { dg-warning "accessing 4 bytes at offsets \\\[2, 3] and 0 overlaps 2 byte at offset 2" "memcpy" { xfail *-*-* } } */
T (d + ir, d, 5); /* { dg-warning "accessing 5 bytes at offsets \\\[2, 3] and 0 overlaps between 2 and 3 bytes at offset \\\[2, 3]" "memcpy" } */
/* Exercise the full range of size_t. */
@@ -325,11 +325,11 @@ void test_memcpy_anti_range (char *d, const char *s)
T (d, d + SAR (0, 3), 1);
T (d, d + SAR (0, 3), 2);
T (d, d + SAR (0, 3), 3);
- T (d, d + SAR (0, 3), DIFF_MAX - 2); /* { dg-warning "overlaps \[0-9\]+ bytes at offset 2" } */
- T (d, d + SAR (0, 3), DIFF_MAX - 1); /* { dg-warning "overlaps \[0-9\]+ bytes at offset 1" } */
- T (d, d + SAR (0, 3), DIFF_MAX); /* { dg-warning "overlaps \[0-9\]+ bytes at offset 0" } */
+ T (d, d + SAR (0, 3), DIFF_MAX - 2); /* { dg-warning "overlaps \[0-9\]+ bytes at offset 2" "memcpy" } */
+ T (d, d + SAR (0, 3), DIFF_MAX - 1); /* { dg-warning "overlaps \[0-9\]+ bytes at offset 1" "memcpy" } */
+ T (d, d + SAR (0, 3), DIFF_MAX); /* { dg-warning "overlaps \[0-9\]+ bytes at offset 0" "memcpy" } */
- T (d, d + SAR (0, 3), UR (DIFF_MAX - 2, DIFF_MAX)); /* { dg-warning "accessing \[0-9\]+ or more bytes at offsets 0 and \\\[-?\[0-9\]+, -?\[0-9\]+] overlaps \[0-9\]+ bytes at offset 2" } */
+ T (d, d + SAR (0, 3), UR (DIFF_MAX - 2, DIFF_MAX)); /* { dg-warning "accessing \[0-9\]+ or more bytes at offsets 0 and \\\[-?\[0-9\]+, -?\[0-9\]+] overlaps \[0-9\]+ bytes at offset 2" "memcpy" } */
/* Verify that a size in an anti-range ~[0, N] where N >= PTRDIFF_MAX
doesn't trigger a warning. */
@@ -399,7 +399,7 @@ void test_memcpy_range_exceed (char *d, const char *s)
T (d + i, s, 5); /* { dg-warning "accessing 5 bytes at offsets \\\[9223372036854775805, 9223372036854775807] and 0 overlaps 3 bytes at offset 9223372036854775802" "LP64" { target lp64 } } */
#elif __SIZEOF_SIZE_T__ == 4
T (d, d + i, 5); /* { dg-warning "accessing 5 bytes at offsets 0 and \\\[2147483645, 2147483647] overlaps 3 bytes at offset 2147483642" "ILP32" { target ilp32 } } */
- T (d + i, d, 5); /* { dg-warning "accessing 5 bytes at offsets \\\[2147483645, 2147483647] and 0 overlaps 3 bytes at offset 2147483642" "ILP32" { target ilp32} } */
+ T (d + i, d, 5); /* { dg-warning "accessing 5 bytes at offsets \\\[2147483645, 2147483647] and 0 overlaps 3 bytes at offset 2147483642" "ILP32" { target ilp32 } } */
T (d, s + i, 5); /* { dg-warning "accessing 5 bytes at offsets 0 and \\\[2147483645, 2147483647] overlaps 3 bytes at offset 2147483642" "ILP32" { target ilp32 } } */
T (d + i, s, 5); /* { dg-warning "accessing 5 bytes at offsets \\\[2147483645, 2147483647] and 0 overlaps 3 bytes at offset 2147483642" "ILP32" { target ilp32} } */
@@ -523,7 +523,7 @@ void test_memcpy_memarrray (struct MemArrays *p)
T (p->a8, p->a8 + 2, 2);
T (p->a8, p->a8 + 8, 1);
- T (p->a8, p->a8 + 2, 3); /* { dg-warning "accessing 3 bytes at offsets 0 and 2 overlaps 1 byte at offset 2" } */
+ T (p->a8, p->a8 + 2, 3); /* { dg-warning "accessing 3 bytes at offsets 0 and 2 overlaps 1 byte at offset 2" "memcpy" } */
}
/* Exercise the absence of warnings with memmove. */
@@ -616,10 +616,13 @@ void test_strcat_var (char *d, const char *s)
} while (0)
T (d, d); /* { dg-warning "source argument is the same as destination" "strcat" } */
- T (d, d + 1); /* { dg-warning "accessing 0 or more bytes at offsets 0 and 1 may overlap 1 byte" "strcat" } */
- T (d, d + 2); /* { dg-warning "accessing 0 or more bytes at offsets 0 and 2 may overlap 1 byte" "strcat" } */
- T (d, d + 999); /* { dg-warning "accessing 0 or more bytes at offsets 0 and 999 may overlap 1 byte" "strcat" } */
- T (d, d + -99); /* { dg-warning "accessing 0 or more bytes at offsets 0 and -99 may overlap 1 byte" "strcat" } */
+ T (d, d + 1); /* { dg-warning "accessing 2 or more bytes at offsets 0 and 1 may overlap 1 byte" "strcat" } */
+ T (d, d + 2); /* { dg-warning "accessing 3 or more bytes at offsets 0 and 2 may overlap 1 byte at offset 2" "strcat" } */
+ T (d, d + 999); /* { dg-warning "accessing 1000 or more bytes at offsets 0 and 999 may overlap 1 byte at offset 999" "strcat" } */
+
+ /* The source string must be at least 100 bytes in length for the copy
+ below to overlap. */
+ T (d, d + -99); /* { dg-warning "accessing 100 or more bytes at offsets 0 and -99 may overlap 1 byte" "strcat" } */
size_t n = unsigned_value ();
@@ -765,13 +768,13 @@ void test_strcpy_range (void)
/* The overlap in the cases below isn't inevitable but it is diagnosed
because it is possible and so the code is considered unsafe. */
- T (8, "", a, a + r); /* { dg-warning "accessing 1 byte may overlap 1 byte" "strcpy" } */
- T (8, "0", a + r, a); /* { dg-warning "accessing 2 bytes may overlap up to 2 bytes" "strcpy" } */
- T (8, "012", a + r, a); /* { dg-warning "accessing 4 bytes may overlap up to 4 bytes" "strcpy" } */
+ T (8, "", a, a + r); /* { dg-warning "accessing 1 byte at offsets 0 and \\\[0, 8] may overlap 1 byte" "strcpy" } */
+ T (8, "0", a + r, a); /* { dg-warning "accessing 2 bytes at offsets \\\[0, 8] and 0 may overlap up to 2 bytes" "strcpy" } */
+ T (8, "012", a + r, a); /* { dg-warning "accessing 4 bytes at offsets \\\[0, 8] and 0 may overlap up to 4 bytes" "strcpy" } */
- T (8, "", a, a + r); /* { dg-warning "accessing 1 byte may overlap" "strcpy" } */
- T (8, "0", a, a + r); /* { dg-warning "accessing between 0 and 2 bytes may overlap up to 2 bytes" "strcpy" } */
- T (8, "012", a, a + r); /* { dg-warning "accessing between 0 and 4 bytes may overlap up to 4 bytes" "strcpy" } */
+ T (8, "", a, a + r); /* { dg-warning "accessing 1 byte at offsets 0 and \\\[0, 8] may overlap" "strcpy" } */
+ T (8, "0", a, a + r); /* { dg-warning "accessing between 0 and 2 bytes at offsets 0 and \\\[0, 8] may overlap up to 2 bytes" "strcpy" } */
+ T (8, "012", a, a + r); /* { dg-warning "accessing between 0 and 4 bytes at offsets 0 and \\\[0, 8] may overlap up to 4 bytes" "strcpy" } */
}
/* Exercise strcpy with destination and/or source of unknown lengthu. */
diff --git a/gcc/testsuite/c-c++-common/Wstringop-truncation.c b/gcc/testsuite/c-c++-common/Wstringop-truncation.c
index dc8c618976e..bd520915502 100644
--- a/gcc/testsuite/c-c++-common/Wstringop-truncation.c
+++ b/gcc/testsuite/c-c++-common/Wstringop-truncation.c
@@ -188,7 +188,7 @@ void test_strncpy_ptr (char *d, const char* s, const char *t, int i)
CPY (d, CHOOSE (s, t), 2);
CPY (d, CHOOSE ("", "123"), 1); /* { dg-warning ".strncpy\[^\n\r\]* output may be truncated copying 1 byte from a string of length 3" } */
- CPY (d, CHOOSE ("1", "123"), 1); /* { dg-warning ".strncpy\[^\n\r\]* output truncated copying 1 byte from a string of length 1" } */
+ CPY (d, CHOOSE ("1", "123"), 1); /* { dg-warning ".strncpy\[^\n\r\]* output truncated before terminating nul copying 1 byte from a string of the same length" } */
CPY (d, CHOOSE ("12", "123"), 1); /* { dg-warning ".strncpy\[^\n\r\]* output truncated copying 1 byte from a string of length 2" } */
CPY (d, CHOOSE ("123", "12"), 1); /* { dg-warning ".strncpy\[^\n\r\]* output truncated copying 1 byte from a string of length 2" } */
@@ -331,7 +331,7 @@ void test_strncpy_array (Dest *pd, int i, const char* s)
/* This might be better written using memcpy() but it's safe so
it probably shouldn't be diagnosed. It currently triggers
a warning because of bug 81704. */
- strncpy (dst7, "0123456", sizeof dst7); /* { dg-bogus "truncated" "bug 81704" { xfail *-*-* } } */
+ strncpy (dst7, "0123456", sizeof dst7); /* { dg-bogus "\\\[-Wstringop-truncation]" "bug 81704" { xfail *-*-* } } */
dst7[sizeof dst7 - 1] = '\0';
sink (dst7);
}
@@ -350,7 +350,7 @@ void test_strncpy_array (Dest *pd, int i, const char* s)
}
{
- strncpy (pd->a5, "01234", sizeof pd->a5); /* { dg-bogus "truncated" "bug 81704" { xfail *-*-* } } */
+ strncpy (pd->a5, "01234", sizeof pd->a5); /* { dg-bogus "\\\[-Wstringop-truncation]" "bug 81704" { xfail *-*-* } } */
pd->a5[sizeof pd->a5 - 1] = '\0';
sink (pd);
}
diff --git a/gcc/testsuite/c-c++-common/cpp/va-opt-2.c b/gcc/testsuite/c-c++-common/cpp/va-opt-2.c
new file mode 100644
index 00000000000..cff2d6cbe5d
--- /dev/null
+++ b/gcc/testsuite/c-c++-common/cpp/va-opt-2.c
@@ -0,0 +1,41 @@
+/* PR preprocessor/83063 */
+/* { dg-do compile } */
+/* { dg-options "-std=gnu99" { target c } } */
+/* { dg-options "-std=c++2a" { target c++ } } */
+
+#define f1(...) int b##__VA_OPT__(c)
+#define f2(...) int __VA_OPT__(c)##d
+#define f3(...) int e##__VA_OPT__()
+#define f4(...) int __VA_OPT__()##f
+#define f5(...) int g##__VA_OPT__(h)##i
+#define f6(...) int j##__VA_OPT__()##k
+#define f7(...) int l##__VA_OPT__()
+#define f8(...) int __VA_OPT__()##m
+#define f9(...) int n##__VA_OPT__()##o
+#define f10(x, ...) int x##__VA_OPT__(x)
+#define f11(x, ...) int __VA_OPT__(x)##x
+#define f12(x, ...) int x##__VA_OPT__(x)##x
+f1 (1, 2, 3);
+f1 ();
+f2 (1, 2);
+f2 ();
+f3 (1);
+f4 (2);
+f5 (6, 7);
+f5 ();
+f6 (8);
+f7 ();
+f8 ();
+f9 ();
+f10 (p, 5, 6);
+f10 (p);
+f11 (q, 7);
+f11 (q);
+f12 (r, 1, 2, 3, 4, 5);
+f12 (r);
+
+int
+main ()
+{
+ return bc + b + cd + d + e + f + ghi + gi + jk + l + m + no + pp + p + qq + q + rrr + rr;
+}
diff --git a/gcc/testsuite/c-c++-common/cpp/va-opt-3.c b/gcc/testsuite/c-c++-common/cpp/va-opt-3.c
new file mode 100644
index 00000000000..1a5a7b2383e
--- /dev/null
+++ b/gcc/testsuite/c-c++-common/cpp/va-opt-3.c
@@ -0,0 +1,94 @@
+/* PR preprocessor/83063 */
+/* PR preprocessor/83708 */
+/* { dg-do preprocess } */
+/* { dg-options "-std=gnu99" { target c } } */
+/* { dg-options "-std=c++2a" { target c++ } } */
+
+#define f1(...) b##__VA_OPT__(c)
+#define f2(...) __VA_OPT__(c)##d
+#define f3(...) e##__VA_OPT__()
+#define f4(...) __VA_OPT__()##f
+#define f5(...) g##__VA_OPT__(h)##i
+#define f6(...) j##__VA_OPT__()##k
+#define f7(...) l##__VA_OPT__()
+#define f8(...) __VA_OPT__()##m
+#define f9(...) n##__VA_OPT__()##o
+#define f10(x, ...) x##__VA_OPT__(x)
+#define f11(x, ...) __VA_OPT__(x)##x
+#define f12(x, ...) x##__VA_OPT__(x)##x
+#define f13(...) __VA_OPT__(a)__VA_OPT__(b)c
+#define f14(a, b, c, ...) __VA_OPT__(a)__VA_OPT__(b)c
+#define f15(a, b, c, ...) __VA_OPT__(a b)__VA_OPT__(b c)a/**/__VA_OPT__(c a)a
+#define m1 (
+#define f16() f17 m1 )
+#define f17() f18 m1 )
+#define f18() m2 m1 )
+#define m3f17() g
+#define f19(x, ...) m3 ## __VA_OPT__(x x f16() #x)
+#define f20(x, ...) __VA_OPT__(x x)##m4()
+#define f21() f17
+#define f17m4() h
+#define f22(x,...) 1 ## __VA_OPT__(x ## x 2) ## 3
+#define f23(x,...) 1 ## __VA_OPT__(x 2) ## 3
+#define f24(x,...) 1 ## __VA_OPT__(2 x) ## 3
+#define f25(x,...) 1 ## __VA_OPT__(2 x ## x) ## 3
+t1 f1 (1, 2, 3);
+/* { dg-final { scan-file va-opt-3.i "t1 bc;" } } */
+t2 f1 ();
+/* { dg-final { scan-file va-opt-3.i "t2 b;" } } */
+t3 f2 (1, 2);
+/* { dg-final { scan-file va-opt-3.i "t3 cd;" } } */
+t4 f2 ();
+/* { dg-final { scan-file va-opt-3.i "t4 d;" } } */
+t5 f3 (1);
+/* { dg-final { scan-file va-opt-3.i "t5 e;" } } */
+t6 f4 (2);
+/* { dg-final { scan-file va-opt-3.i "t6 f;" } } */
+t7 f5 (6, 7);
+/* { dg-final { scan-file va-opt-3.i "t7 ghi;" } } */
+t8 f5 ();
+/* { dg-final { scan-file va-opt-3.i "t8 gi;" } } */
+t9 f6 (8);
+/* { dg-final { scan-file va-opt-3.i "t9 jk;" } } */
+t10 f7 ();
+/* { dg-final { scan-file va-opt-3.i "t10 l;" } } */
+t11 f8 ();
+/* { dg-final { scan-file va-opt-3.i "t11 m;" } } */
+t12 f9 ();
+/* { dg-final { scan-file va-opt-3.i "t12 no;" } } */
+t13 f10 (p, 5, 6);
+/* { dg-final { scan-file va-opt-3.i "t13 pp;" } } */
+t14 f10 (p);
+/* { dg-final { scan-file va-opt-3.i "t14 p;" } } */
+t15 f11 (q, 7);
+/* { dg-final { scan-file va-opt-3.i "t15 qq;" } } */
+t16 f11 (q);
+/* { dg-final { scan-file va-opt-3.i "t16 q;" } } */
+t17 f12 (r, 1, 2, 3, 4, 5);
+/* { dg-final { scan-file va-opt-3.i "t17 rrr;" } } */
+t18 f12 (r);
+/* { dg-final { scan-file va-opt-3.i "t18 rr;" } } */
+t19 f13 (1, 2);
+/* { dg-final { scan-file va-opt-3.i "t19 a b c;" } } */
+t20 f13 ();
+/* { dg-final { scan-file va-opt-3.i "t20 c;" } } */
+t21 f14 (3, 4, 5, 2);
+/* { dg-final { scan-file va-opt-3.i "t21 3 4 5;" } } */
+t22 f14 (3, 4, 5);
+/* { dg-final { scan-file va-opt-3.i "t22 5;" } } */
+t23 f15 (6, 7, 8, 9);
+/* { dg-final { scan-file va-opt-3.i "t23 6 7 7 8 6 8 6 6;" } } */
+t24 f15 (6, 7, 8);
+/* { dg-final { scan-file va-opt-3.i "t24 6 6;" } } */
+t25 f19 (f16 (), 1);
+/* { dg-final { scan-file va-opt-3.i {t25 g f18 \( \) f17 \( \) "f16 \(\)";} } } */
+t26 f20 (f21 (), 2);
+/* { dg-final { scan-file va-opt-3.i "t26 f17 h;" } } */
+t27 f22 (, x);
+/* { dg-final { scan-file va-opt-3.i "t27 123;" } } */
+t28 f23 (, x);
+/* { dg-final { scan-file va-opt-3.i "t28 123;" } } */
+t29 f24 (, x);
+/* { dg-final { scan-file va-opt-3.i "t29 123;" } } */
+t30 f25 (, x);
+/* { dg-final { scan-file va-opt-3.i "t30 123;" } } */
diff --git a/gcc/testsuite/c-c++-common/tsan/race_on_mutex.c b/gcc/testsuite/c-c++-common/tsan/race_on_mutex.c
index def1d47de7b..2e4b7ac3cb9 100644
--- a/gcc/testsuite/c-c++-common/tsan/race_on_mutex.c
+++ b/gcc/testsuite/c-c++-common/tsan/race_on_mutex.c
@@ -42,5 +42,5 @@ int main() {
/* { dg-output " #1 Thread2.* .*(race_on_mutex.c:22|\\?{2}:0) (.*)" } */
/* { dg-output " Previous write of size \[0-9]\+ at .* by thread T1:(\n|\r\n|\r)" } */
/* { dg-output "( #0 \[^\n\r\]*(\n|\r\n|\r))?" } */
-/* { dg-output " #\[01\] (__)?pthread_mutex_init \[^\n\r\]* (.)*" } */
+/* { dg-output " #\[01\] ((__GI_)?__)?pthread_mutex_init \[^\n\r\]* (.)*" } */
/* { dg-output " #\[12\] Thread1.* .*(race_on_mutex.c:12|\\?{2}:0) .*" } */
diff --git a/gcc/testsuite/g++.dg/concepts/pr84330.C b/gcc/testsuite/g++.dg/concepts/pr84330.C
new file mode 100644
index 00000000000..975ee8941db
--- /dev/null
+++ b/gcc/testsuite/g++.dg/concepts/pr84330.C
@@ -0,0 +1,12 @@
+// PR c++/84330
+// { dg-options "-fconcepts" }
+
+struct A
+{
+ template<typename T> requires sizeof(T) >> 0 void foo(T); // { dg-error "predicate constraint" }
+
+ void bar()
+ {
+ foo(0); // { dg-error "no matching" }
+ }
+};
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto49.C b/gcc/testsuite/g++.dg/cpp0x/auto49.C
new file mode 100644
index 00000000000..25b09dfdec1
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/auto49.C
@@ -0,0 +1,12 @@
+// PR c++/84350
+// { dg-do compile { target c++11 } }
+
+template<typename... T> void foo(T... t)
+{
+ new auto(t...); // { dg-error "invalid use" }
+}
+
+void bar()
+{
+ foo();
+}
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto50.C b/gcc/testsuite/g++.dg/cpp0x/auto50.C
new file mode 100644
index 00000000000..814892d2afa
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/auto50.C
@@ -0,0 +1,7 @@
+// PR c++/84348
+// { dg-do compile { target c++11 } }
+
+template<typename> struct A
+{
+ friend auto foo; // { dg-error "cannot be declared friend" }
+};
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-84449.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-84449.C
new file mode 100644
index 00000000000..f187c425272
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-84449.C
@@ -0,0 +1,14 @@
+// PR c++/84449
+// { dg-do compile { target c++11 } }
+
+struct A
+{
+ constexpr A (int) {}
+ ~A () = delete;
+};
+
+struct B
+{
+ A a;
+ constexpr B () : a (0) {} // { dg-error "use of deleted function" }
+};
diff --git a/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor21.C b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor21.C
new file mode 100644
index 00000000000..4bf57b9e897
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/constexpr-ctor21.C
@@ -0,0 +1,15 @@
+// PR c++/83835
+// { dg-do compile { target c++11 } }
+
+struct Z
+{
+ void const * p_;
+ constexpr Z( void const * p ): p_( p ) {}
+ ~Z();
+};
+
+struct Y
+{
+ Z z_;
+ constexpr Y() noexcept: z_( this ) {}
+};
diff --git a/gcc/testsuite/g++.dg/cpp0x/dc9.C b/gcc/testsuite/g++.dg/cpp0x/dc9.C
new file mode 100644
index 00000000000..b87f5ce618d
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/dc9.C
@@ -0,0 +1,30 @@
+// PR c++/70468
+// { dg-do compile { target c++11 } }
+// { dg-additional-options -w }
+
+struct S {};
+
+template < typename = S >
+class A
+{
+public:
+ A () : f0 (), f1 () {} // { dg-error "" }
+
+private:
+ typedef A<> f0;
+ int f1;
+};
+
+template < typename = S, typename = S >
+class B
+{
+};
+
+template < typename T1, typename T2 >
+B < T1, T2 > &operator<< (B < T1, T2 >&, const int)
+{
+ A<> ();
+}
+
+template
+B < S, S > &operator<< (B < S, S >&, const int);
diff --git a/gcc/testsuite/g++.dg/cpp0x/initlist98.C b/gcc/testsuite/g++.dg/cpp0x/initlist98.C
new file mode 100644
index 00000000000..4f2fcd20219
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/initlist98.C
@@ -0,0 +1,17 @@
+// PR c++/83227
+// { dg-do compile { target c++11 } }
+
+#include <initializer_list>
+
+template <typename d> struct f {
+ f(std::initializer_list<d>) {}
+};
+
+struct h {};
+struct i : h {
+ i();
+};
+void foo(f<h>);
+int main() {
+ foo({i{}});
+}
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice26.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice26.C
new file mode 100644
index 00000000000..7544b270256
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice26.C
@@ -0,0 +1,5 @@
+// PR c++/84455
+// { dg-do compile { target c++11 } }
+// { dg-options "--param ggc-min-heapsize=0" }
+
+#include "lambda-ice14.C"
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice27.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice27.C
new file mode 100644
index 00000000000..04c44a3b57f
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice27.C
@@ -0,0 +1,8 @@
+// PR c++/84446
+// { dg-do compile { target c++11 } }
+
+template<int> void foo()
+{
+ int i,
+ i = [] { virtual }(); // { dg-error "redeclaration|expected" }
+}
diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-vla1.C b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-vla1.C
new file mode 100644
index 00000000000..91498c4589a
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-vla1.C
@@ -0,0 +1,9 @@
+// PR c++/84429
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
+
+void foo(int i)
+{
+ char x[i];
+ [&]{ [&]{ return x; }; };
+}
diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept32.C b/gcc/testsuite/g++.dg/cpp0x/noexcept32.C
new file mode 100644
index 00000000000..9a435049599
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/noexcept32.C
@@ -0,0 +1,14 @@
+// PR c++/84045
+// { dg-do compile { target c++11 } }
+
+template <typename T> struct K {
+ static const bool d = true;
+};
+template <typename T, typename> struct B {
+ typedef K<T> D;
+ void foo () noexcept (D::d);
+};
+template <typename T> struct P {
+ P () noexcept (K<T>::d);
+};
+P<int> p;
diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi-empty1.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi-empty1.C
new file mode 100644
index 00000000000..66d94e53824
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi-empty1.C
@@ -0,0 +1,18 @@
+// PR c++/82764
+// { dg-do compile { target c++11 } }
+
+struct Empty {};
+struct Empty2 : Empty {};
+
+struct A : Empty2
+{
+ int x {1};
+ int y {2};
+};
+
+struct B
+{
+ A a {};
+};
+
+B b;
diff --git a/gcc/testsuite/g++.dg/cpp0x/pr77655.C b/gcc/testsuite/g++.dg/cpp0x/pr77655.C
new file mode 100644
index 00000000000..ab2e942cbb8
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/pr77655.C
@@ -0,0 +1,13 @@
+// PR c++/77655
+// { dg-do compile { target c++11 } }
+
+template <class F> void g(F);
+template <class... A>
+auto h(A &&... a) -> decltype(g(0, g<decltype(a)>(a)...)) { // { dg-error "no matching" }
+ h([] {}); // { dg-error "no matching" }
+}
+
+int main() {
+ h();
+ return 0;
+}
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic172.C b/gcc/testsuite/g++.dg/cpp0x/variadic172.C
new file mode 100644
index 00000000000..d25d3029a9d
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic172.C
@@ -0,0 +1,20 @@
+// PR c++/84454
+// { dg-do compile { target c++11 } }
+
+template<class F, class... A>
+void
+g(F&&, A&&...)
+{}
+
+template<class... A>
+auto
+h(A&&... a) -> decltype(g(0, g<decltype(a)>(a)...))
+{
+ g(a...); // { dg-error "no match" }
+}
+
+int
+main()
+{
+ h();
+}
diff --git a/gcc/testsuite/g++.dg/cpp1y/constexpr-84192.C b/gcc/testsuite/g++.dg/cpp1y/constexpr-84192.C
new file mode 100644
index 00000000000..ad9458d238f
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp1y/constexpr-84192.C
@@ -0,0 +1,41 @@
+// PR c++/84192
+// { dg-do compile { target c++14 } }
+// { dg-options "" }
+
+bool
+f1 ()
+{
+ return ({ return true; }) && false; // { dg-error "could not convert" }
+}
+
+void
+f2 ()
+{
+ for (;;)
+ constexpr bool b = ({ break; false; }) && false; // { dg-error "statement is not a constant expression" }
+}
+
+constexpr bool
+f3 (int n)
+{
+ bool b = false;
+ for (int i = 0; i < n; i++)
+ b = ({ break; }); // { dg-error "void value not ignored as it ought to be" }
+ return b;
+}
+
+constexpr bool b = f3 (4);
+
+bool
+f4 ()
+{
+ constexpr bool b = ({ return true; }) && false; // { dg-error "could not convert" }
+ return false;
+}
+
+constexpr bool
+f5 (int x)
+{
+ constexpr bool b = ({ switch (x) case 0: true; }) && false; // { dg-error "could not convert" }
+ return false;
+}
diff --git a/gcc/testsuite/g++.dg/cpp1y/lambda-generic-variadic14.C b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-variadic14.C
new file mode 100644
index 00000000000..76567966293
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp1y/lambda-generic-variadic14.C
@@ -0,0 +1,17 @@
+// PR c++/84368
+// { dg-do compile { target c++14 } }
+
+template < typename ... T >
+void sink(T ...){}
+
+template < typename ... T >
+void foo(T ... v){
+ [](auto ... v){
+ auto bar = [](auto, auto){ return 0; };
+ sink(bar(v, T{}) ...);
+ }(v ...);
+}
+
+int main(){
+ foo(0);
+}
diff --git a/gcc/testsuite/g++.dg/cpp1y/pr84496.C b/gcc/testsuite/g++.dg/cpp1y/pr84496.C
new file mode 100644
index 00000000000..028d00235cd
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp1y/pr84496.C
@@ -0,0 +1,44 @@
+// PR c++/84496
+// { dg-do compile { target c++14 } }
+
+template <typename T, T n> struct C { static constexpr T D = n; };
+struct E : C<bool, false> {};
+template <typename> struct F : C<bool, false> {};
+template <typename T> T foo ();
+template <typename> struct H { typedef int G; };
+template <typename> class I;
+struct L;
+template <typename, typename> struct J;
+template <bool, bool, typename...> struct K;
+struct R {
+ template <typename M, typename... N>
+ static J<decltype (foo<M> () (foo<N>...)), L> o;
+};
+template <typename P, typename... Q> struct K<false, false, P, Q...> : R {
+ typedef decltype (o<P, Q...>) G;
+};
+template <typename P, typename... Q>
+struct D : K<E::D, F<typename H<P>::G>::D, P, Q...> {};
+template <typename P, typename... Q> struct I<P (Q...)> : D<P, Q...> {};
+template <typename> class function;
+template <typename S, typename... Q> struct function<S (Q...)> {
+ template <typename T, typename = typename I<T (Q...)>::G> struct C;
+ template <typename, typename> using U = int;
+ template <typename P, typename = U<int, void>, typename = U<C<P>, void>>
+ function (P);
+};
+template <typename S, typename... Q>
+template <typename P, typename, typename>
+function<S (Q...)>::function (P)
+{
+}
+void bar (function<void (int)>);
+
+void
+baz ()
+{
+ auto a = [] {
+ static int counter;
+ bar ([] (auto) { counter++; });
+ };
+}
diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction47.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction47.C
new file mode 100644
index 00000000000..3e47f58e698
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction47.C
@@ -0,0 +1,7 @@
+// PR c++/84376
+
+template<int> struct A {};
+
+template<typename T> T foo() { return T(); }
+
+template<> A foo<A>(); // { dg-error "A" }
diff --git a/gcc/testsuite/g++.dg/cpp1z/class-deduction48.C b/gcc/testsuite/g++.dg/cpp1z/class-deduction48.C
new file mode 100644
index 00000000000..1cfdc44a993
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp1z/class-deduction48.C
@@ -0,0 +1,5 @@
+// PR c++/82468
+// { dg-options -std=c++17 }
+
+template <template <class> class TT>
+TT(double) -> TT<int>; // { dg-error "template template" }
diff --git a/gcc/testsuite/g++.dg/cpp1z/constexpr-if14.C b/gcc/testsuite/g++.dg/cpp1z/constexpr-if14.C
new file mode 100644
index 00000000000..f6cc39a0c2f
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp1z/constexpr-if14.C
@@ -0,0 +1,14 @@
+// PR c++/84421
+// { dg-options -std=c++17 }
+
+struct A{
+ constexpr operator bool() const { return true; }
+};
+
+int main(){
+ auto f = [](auto v){
+ if constexpr(v){}
+ };
+ A a;
+ f(a);
+}
diff --git a/gcc/testsuite/g++.dg/cpp1z/decomp-lambda1.C b/gcc/testsuite/g++.dg/cpp1z/decomp-lambda1.C
new file mode 100644
index 00000000000..fbab0259643
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp1z/decomp-lambda1.C
@@ -0,0 +1,10 @@
+// PR c++/84420
+// { dg-additional-options -std=c++17 }
+
+int main(){
+ int a[1]{};
+ [&a]{
+ auto [v] = a;
+ (void)v;
+ }();
+}
diff --git a/gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C b/gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C
index b2f046b5c91..2ab1b4e3e86 100644
--- a/gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C
+++ b/gcc/testsuite/g++.dg/cpp1z/feat-cxx1z.C
@@ -358,8 +358,8 @@
#ifndef __cpp_deduction_guides
# error "__cpp_deduction_guides"
-#elif __cpp_deduction_guides != 201606
-# error "__cpp_deduction_guides != 201606"
+#elif __cpp_deduction_guides != 201611
+# error "__cpp_deduction_guides != 201611"
#endif
#ifndef __cpp_if_constexpr
diff --git a/gcc/testsuite/g++.dg/cpp1z/launder7.C b/gcc/testsuite/g++.dg/cpp1z/launder7.C
new file mode 100644
index 00000000000..e418329f931
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp1z/launder7.C
@@ -0,0 +1,10 @@
+// PR c++/84445
+// { dg-do compile }
+
+struct A { virtual void foo (); };
+
+void
+bar (A *p)
+{
+ __builtin_launder (p)->foo ();
+}
diff --git a/gcc/testsuite/g++.dg/cpp1z/launder8.C b/gcc/testsuite/g++.dg/cpp1z/launder8.C
new file mode 100644
index 00000000000..f57e91b60cd
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp1z/launder8.C
@@ -0,0 +1,11 @@
+// PR c++/84444
+// { dg-do compile }
+// { dg-options "-O2" }
+
+struct A {};
+
+__UINTPTR_TYPE__
+foo (A *p)
+{
+ return (__UINTPTR_TYPE__) __builtin_launder (p);
+}
diff --git a/gcc/testsuite/g++.dg/ext/attrib55.C b/gcc/testsuite/g++.dg/ext/attrib55.C
new file mode 100644
index 00000000000..dc0cdc48b7a
--- /dev/null
+++ b/gcc/testsuite/g++.dg/ext/attrib55.C
@@ -0,0 +1,99 @@
+// PR c++/84314
+// { dg-do compile { target { { i?86-*-* x86_64-*-* } && ia32 } } }
+// { dg-additional-options "-w -std=c++11" }
+
+template <typename a, a b> struct c { static constexpr a d = b; };
+template <bool b> using e = c<bool, b>;
+template <bool, typename, typename> struct conditional;
+template <typename...> struct f;
+template <typename g, typename h>
+struct f<g, h> : conditional<g::d, g, h>::i {};
+template <typename...> struct j;
+template <typename g, typename h> struct j<g, h> : conditional<1, h, g>::i {};
+template <typename g, typename h, typename k, typename... l>
+struct j<g, h, k, l...> : conditional<1, j<h, k>, g>::i {};
+struct aa : e<!bool()> {};
+template <typename, typename> struct m : c<bool, false> {};
+template <typename, typename n> struct o {
+ template <typename> static c<bool, true> p(int);
+ typedef decltype(p<n>(0)) i;
+};
+template <typename, typename> struct ab : o<int, int>::i {};
+template <typename> struct s { typedef int ad; };
+template <bool, typename = void> struct q;
+template <typename a> struct q<true, a> { typedef a i; };
+template <bool, typename ae, typename> struct conditional { typedef ae i; };
+template <typename ae, typename r> struct conditional<false, ae, r> {
+ typedef r i;
+};
+struct B {
+ B(int);
+};
+template <unsigned, typename...> struct af;
+template <unsigned ag, typename t, typename... ah>
+struct af<ag, t, ah...> : af<1, ah...>, B {
+ typedef af<1, ah...> ai;
+ ai al(af);
+ template <typename... am> af(af<ag, am...> p1) : ai(al(p1)), B(0) {}
+};
+template <unsigned ag, typename t> struct af<ag, t> {};
+template <int, typename... ao> struct ap {
+ template <typename... am> static constexpr bool ar() {
+ return j<ab<am, ao>...>::d;
+ }
+};
+template <typename... ao> class as : public af<0, ao...> {
+ typedef af<0, ao...> ai;
+
+public:
+ template <typename...> using au = ap<m<int, int>::d, ao...>;
+ template <typename... am,
+ typename q<au<>::template ar<am...>(), bool>::i = true>
+ as(as<am...> an) : ai(an) {}
+};
+template <typename... ao> as<typename s<ao>::ad...> ax(ao...);
+namespace ay {
+class az {};
+}
+using ay::az;
+namespace ay {
+template <typename ba> struct C { typedef ba bc; };
+}
+template <typename> class bd;
+template <typename bi, typename n> using bj = f<m<bi, n>, ab<bi, n>>;
+template <typename bf, typename... bh> class bd<bf(bh...)> {
+ struct F : bj<int, bf> {};
+ template <typename bl, typename> using bm = typename q<bl::d>::i;
+
+public:
+ template <typename bg, typename = bm<aa, void>, typename = bm<F, void>>
+ bd(bg);
+ using bn = bf;
+ bn bo;
+};
+template <typename bf, typename... bh>
+template <typename bg, typename, typename>
+bd<bf(bh...)>::bd(bg) {
+ bo;
+}
+typedef long long(__attribute__((fastcall)) bq)(int *);
+struct v : ay::C<as<bq, bq, int>> {
+ bc bt() { return ax(nullptr, nullptr, az()); }
+};
+class w {
+public:
+ int *cc();
+};
+class x : w {
+ void ce();
+};
+namespace u {
+class cf {
+public:
+ static cf cg(int, int *, int, az, bd<long long(int *)>);
+};
+}
+void x::ce() {
+ auto bu = 0;
+ u::cf::cg(bu, cc(), 1, {}, 0);
+}
diff --git a/gcc/testsuite/g++.dg/ext/attrib56.C b/gcc/testsuite/g++.dg/ext/attrib56.C
new file mode 100644
index 00000000000..9736d979acd
--- /dev/null
+++ b/gcc/testsuite/g++.dg/ext/attrib56.C
@@ -0,0 +1,6 @@
+// PR c++/84314
+// { dg-do compile { target { { i?86-*-* x86_64-*-* } && ia32 } } }
+
+struct a {
+ void b(long() __attribute__((fastcall))) {}
+};
diff --git a/gcc/testsuite/g++.dg/ext/stmtexpr22.C b/gcc/testsuite/g++.dg/ext/stmtexpr22.C
new file mode 100644
index 00000000000..f46523a5875
--- /dev/null
+++ b/gcc/testsuite/g++.dg/ext/stmtexpr22.C
@@ -0,0 +1,13 @@
+// PR c++/81853
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
+
+namespace N {
+ enum { i };
+}
+
+int g ()
+{
+ constexpr int j = ({ using namespace N; i; });
+ return j;
+}
diff --git a/gcc/testsuite/g++.dg/ext/vector34.C b/gcc/testsuite/g++.dg/ext/vector34.C
new file mode 100644
index 00000000000..5cca53070b2
--- /dev/null
+++ b/gcc/testsuite/g++.dg/ext/vector34.C
@@ -0,0 +1,8 @@
+// PR c++/84424
+// { dg-do compile { target c++11 } }
+// { dg-options "" }
+
+typedef int vec __attribute__ ((vector_size (2 * sizeof (int))));
+
+constexpr vec u = { 1, 2 };
+constexpr vec v = __builtin_shuffle (v, u); // { dg-error "" }
diff --git a/gcc/testsuite/g++.dg/gomp/pr84430.C b/gcc/testsuite/g++.dg/gomp/pr84430.C
new file mode 100644
index 00000000000..cf9275acaa0
--- /dev/null
+++ b/gcc/testsuite/g++.dg/gomp/pr84430.C
@@ -0,0 +1,12 @@
+// PR c++/84430
+// { dg-do compile { target c++11 } }
+
+void
+foo ()
+{
+ auto a = [] {
+ #pragma omp simd
+ for (int i = 0; i < 10; ++i)
+ ;
+ };
+}
diff --git a/gcc/testsuite/g++.dg/gomp/pr84448.C b/gcc/testsuite/g++.dg/gomp/pr84448.C
new file mode 100644
index 00000000000..3fad4741d38
--- /dev/null
+++ b/gcc/testsuite/g++.dg/gomp/pr84448.C
@@ -0,0 +1,17 @@
+// PR c++/84448
+// { dg-do compile }
+
+struct A
+{
+ operator int () const;
+ A& operator += (int);
+ A& operator ++ ();
+};
+
+void
+foo (A a, A b)
+{
+ #pragma omp for
+ for (A i = a; i <=; ++i) // { dg-error "expected primary-expression before" }
+ ; // { dg-error "invalid controlling predicate" "" { target *-*-* } .-1 }
+}
diff --git a/gcc/testsuite/g++.dg/lookup/pr84375.C b/gcc/testsuite/g++.dg/lookup/pr84375.C
new file mode 100644
index 00000000000..24cdcb2c407
--- /dev/null
+++ b/gcc/testsuite/g++.dg/lookup/pr84375.C
@@ -0,0 +1,9 @@
+// PR c++/84375 ICE after error
+
+void foo()
+{
+ struct A
+ {
+ friend void A(); // { dg-error "local class without prior local" }
+ };
+}
diff --git a/gcc/testsuite/g++.dg/opt/pr84272.C b/gcc/testsuite/g++.dg/opt/pr84272.C
new file mode 100644
index 00000000000..ad4b8a29cd7
--- /dev/null
+++ b/gcc/testsuite/g++.dg/opt/pr84272.C
@@ -0,0 +1,23 @@
+// PR target/84272
+// { dg-do compile }
+// { dg-options "-O2" }
+// { dg-additional-options "-march=armv8-a -mtune=cortex-a57" { target aarch64-*-* } }
+
+struct A
+{
+ float b, c;
+ A ();
+ A (float, float, float);
+ float operator * (A)
+ {
+ float d = b * b + c * c;
+ return d;
+ }
+};
+
+void
+foo ()
+{
+ A g[1];
+ A h (0, 0, h * g[2]);
+}
diff --git a/gcc/testsuite/g++.dg/parse/error59.C b/gcc/testsuite/g++.dg/parse/error59.C
new file mode 100644
index 00000000000..2c44e210366
--- /dev/null
+++ b/gcc/testsuite/g++.dg/parse/error59.C
@@ -0,0 +1,6 @@
+// PR c++/84493
+
+void foo()
+{
+ (struct {}x){}; // { dg-error "" }
+}
diff --git a/gcc/testsuite/g++.dg/parse/friend12.C b/gcc/testsuite/g++.dg/parse/friend12.C
index 84d6e25e766..d4e0ceea9ac 100644
--- a/gcc/testsuite/g++.dg/parse/friend12.C
+++ b/gcc/testsuite/g++.dg/parse/friend12.C
@@ -3,5 +3,4 @@
struct A
{
friend int i = 0; // { dg-error "cannot be declared friend" }
-// { dg-error "non-static data member" "" { target { ! c++11 } } .-1 }
};
diff --git a/gcc/testsuite/g++.dg/pr84279.C b/gcc/testsuite/g++.dg/pr84279.C
new file mode 100644
index 00000000000..a88d3fb8470
--- /dev/null
+++ b/gcc/testsuite/g++.dg/pr84279.C
@@ -0,0 +1,35 @@
+/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-skip-if "" { powerpc*-*-darwin* } } */
+/* { dg-require-effective-target powerpc_p8vector_ok } */
+/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power8" } } */
+/* { dg-options "-O3 -mcpu=power8 -g -fPIC -fvisibility=hidden -fstack-protector-strong" } */
+
+template <typename, typename T> struct E { T e; };
+struct J {
+ unsigned k, l;
+ J (unsigned x, unsigned y) : k(x), l(y) {}
+};
+typedef struct A {
+ J n, p;
+ A ();
+ A (J x, J y) : n(x), p(y) {}
+} *S;
+S t;
+struct B {
+ struct C {
+ S q, r;
+ int u, v;
+ bool m1 (S, A &);
+ J m2 () const;
+ J m3 () const;
+ A m4 () const;
+ };
+ typedef E<unsigned, S> D;
+ void m5 (D *);
+ void m6 (unsigned, A);
+};
+bool B::C::m1 (S, A &x) { bool o; x = m4 (); return o; }
+J B::C::m2 () const { unsigned g (u == 0); unsigned h (v); return J (g, h); }
+J B::C::m3 () const { unsigned g (q != t); unsigned h (r != t); return J (g, h); }
+A B::C::m4 () const { return A (m2 (), m3 ()); }
+void B::m5 (D *c) { unsigned x; C ar; A am; if (ar.m1 (c->e, am)) m6 (x, am); }
diff --git a/gcc/testsuite/g++.dg/template/instantiate5.C b/gcc/testsuite/g++.dg/template/instantiate5.C
index 896313d14d5..d64092eb1a8 100644
--- a/gcc/testsuite/g++.dg/template/instantiate5.C
+++ b/gcc/testsuite/g++.dg/template/instantiate5.C
@@ -18,7 +18,12 @@ struct B
template <typename T> struct C
{
- virtual void bar() const { T::foo(); } // { dg-error "no matching function" }
+ virtual void bar() const // { dg-message "required" }
+ {
+ T::foo(); // { dg-error "no matching function" }
+ }
};
-C<B> c; // { dg-message "required" }
+C<B> c;
+
+int k;
diff --git a/gcc/testsuite/g++.dg/template/nontype-fn1.C b/gcc/testsuite/g++.dg/template/nontype-fn1.C
new file mode 100644
index 00000000000..12d29a91a54
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/nontype-fn1.C
@@ -0,0 +1,11 @@
+// PR c++/82664
+
+template < typename > struct target_disambiguator;
+template < typename R, typename A1 > struct target_disambiguator< R(A1) > {
+ typedef A1 type;
+ template < R (&)() > struct layout;
+};
+
+int main() {
+ typedef target_disambiguator< void (int) > ::type target_type ;
+}
diff --git a/gcc/testsuite/g++.dg/template/overload15.C b/gcc/testsuite/g++.dg/template/overload15.C
new file mode 100644
index 00000000000..ea0e548843d
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/overload15.C
@@ -0,0 +1,16 @@
+// PR c++79064 - Cannot overload member function templates on type of literal
+// { dg-do compile }
+
+template <unsigned N>
+void f (char (*)[0u - 1 > N ? 1 : 7]);
+
+template <unsigned N>
+void f (char (*)[0u - 1ll > N ? 1 : 7]);
+
+void f ()
+{
+ char x[1], y[7];
+
+ f<0>(&x);
+ f<0>(&y);
+}
diff --git a/gcc/testsuite/g++.dg/template/sizeof16.C b/gcc/testsuite/g++.dg/template/sizeof16.C
new file mode 100644
index 00000000000..084bb2185c7
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/sizeof16.C
@@ -0,0 +1,7 @@
+// PR c++/84333
+// { dg-options -Wno-pedantic }
+
+template<typename> int foo()
+{
+ return sizeof(int) > 1 ? : 1;
+}
diff --git a/gcc/testsuite/g++.dg/template/sizeof17.C b/gcc/testsuite/g++.dg/template/sizeof17.C
new file mode 100644
index 00000000000..2d5892d2c8b
--- /dev/null
+++ b/gcc/testsuite/g++.dg/template/sizeof17.C
@@ -0,0 +1,7 @@
+// PR c++/84333
+// { dg-options -Wno-pedantic }
+
+template<typename T> int foo()
+{
+ return sizeof(T) > 1 ? : 1;
+}
diff --git a/gcc/testsuite/g++.dg/torture/pr84190.C b/gcc/testsuite/g++.dg/torture/pr84190.C
new file mode 100644
index 00000000000..a7bab944365
--- /dev/null
+++ b/gcc/testsuite/g++.dg/torture/pr84190.C
@@ -0,0 +1,20 @@
+// { dg-do compile }
+// For slim LTO there's no optimized dump
+// { dg-skip-if "" { *-*-* } { "-flto" } { "" } }
+// { dg-additional-options "-fdump-tree-optimized" }
+
+typedef double T;
+static int equalfn (volatile T* x, volatile T* y);
+T gx, gy;
+int main ()
+{
+ T x = gx, y = gy;
+ return equalfn (&x, &y);
+}
+static int equalfn (volatile T* x, volatile T* y)
+{
+ return (*x == *y);
+}
+
+// There should be exactly two volatile accesses (ignoring clobbers).
+// { dg-final { scan-tree-dump-times " ={v} \[^\{\]" 2 "optimized" } }
diff --git a/gcc/testsuite/g++.dg/torture/pr84502.C b/gcc/testsuite/g++.dg/torture/pr84502.C
new file mode 100644
index 00000000000..befde4e1f0c
--- /dev/null
+++ b/gcc/testsuite/g++.dg/torture/pr84502.C
@@ -0,0 +1,20 @@
+// PR target/84502
+// { dg-do run }
+
+template<typename T>
+struct A { };
+using X = A<int>;
+
+void
+foo (X, int a1, int a2, int a3, int a4, int a5, int a6, int a7, int a8)
+{
+ if (a1 != 0 || a2 != 1 || a3 != 2 || a4 != 3
+ || a5 != 4 || a6 != 5 || a7 != 6 || a8 != 7)
+ __builtin_abort ();
+}
+
+int
+main ()
+{
+ foo (X{}, 0, 1, 2, 3, 4, 5, 6, 7);
+}
diff --git a/gcc/testsuite/g++.dg/tree-ssa/volatile1.C b/gcc/testsuite/g++.dg/tree-ssa/volatile1.C
new file mode 100644
index 00000000000..00f04a07d84
--- /dev/null
+++ b/gcc/testsuite/g++.dg/tree-ssa/volatile1.C
@@ -0,0 +1,28 @@
+// PR c++/84151
+// { dg-additional-options "-fdump-tree-gimple" }
+// { dg-final { scan-tree-dump-not {\*this} "gimple" } }
+
+struct A {
+ static int& bar(int& a) {
+ return a;
+ }
+ static int i;
+
+ int foo() volatile {
+ int v = c;
+ return i + bar(v);
+ }
+
+ int c;
+};
+
+int A::i = 0;
+
+A a;
+
+int main() {
+ a.c = 2;
+ a.foo();
+
+ return 0;
+}
diff --git a/gcc/testsuite/g++.dg/warn/Wimplicit-fallthrough-3.C b/gcc/testsuite/g++.dg/warn/Wimplicit-fallthrough-3.C
new file mode 100644
index 00000000000..2f06817d9ee
--- /dev/null
+++ b/gcc/testsuite/g++.dg/warn/Wimplicit-fallthrough-3.C
@@ -0,0 +1,31 @@
+// Verify that there are no spurious warnings in nested switch statements due
+// to the unnecessary break in the inner switch block.
+// { dg-do compile }
+// { dg-options "-Wimplicit-fallthrough" } */
+
+int
+foo (int c1, int c2, int c3)
+{
+ switch (c2)
+ {
+ case 0:
+ switch (c3) // { dg-bogus "may fall through" }
+ {
+ case 0:
+ if (c1)
+ return 1;
+ else
+ return 2;
+ break;
+
+ default:
+ return 3;
+ }
+
+ case 1:
+ return 4;
+ default:
+ return 5;
+ break;
+ }
+}
diff --git a/gcc/testsuite/g++.dg/warn/Wstringop-truncation-1.C b/gcc/testsuite/g++.dg/warn/Wstringop-truncation-1.C
new file mode 100644
index 00000000000..a502b78b711
--- /dev/null
+++ b/gcc/testsuite/g++.dg/warn/Wstringop-truncation-1.C
@@ -0,0 +1,126 @@
+/* PR/tree-optimization/84480 - bogus -Wstringop-truncation despite
+ assignment with an inlined string literal
+ { dg-do compile }
+ { dg-options "-O2 -Wstringop-truncation" } */
+
+#include <string.h>
+
+template <size_t N>
+class GoodString
+{
+public:
+ GoodString (const char *s, size_t slen = N)
+ {
+ if (slen > N)
+ slen = N;
+
+ strncpy (str, s, slen);
+
+ str[slen] = '\0';
+ }
+
+private:
+ char str[N + 1];
+};
+
+void sink (void*);
+
+void good_nowarn_size_m2 ()
+{
+ GoodString<3> str ("12");
+ sink (&str);
+}
+
+void good_nowarn_size_m1 ()
+{
+ GoodString<3> str ("123"); // { dg-bogus "\\\[-Wstringop-truncation]" }
+ sink (&str);
+}
+
+void good_nowarn_size_m1_var (const char* s)
+{
+ GoodString<3> str (s); // { dg-bogus "\\\[-Wstringop-truncation]" }
+ sink (&str);
+}
+
+void call_good_nowarn_size_m1_var ()
+{
+ good_nowarn_size_m1_var ("456");
+}
+
+
+template <size_t N>
+class BadString1
+{
+public:
+ BadString1 (const char *s, size_t slen = N)
+ {
+ if (slen > N)
+ slen = N;
+
+ strncpy (str, s, slen);
+ }
+
+private:
+ char str[N + 1];
+};
+
+void bad1_nowarn_size_m2 ()
+{
+ BadString1<3> str ("12");
+ sink (&str);
+}
+
+
+template <size_t N>
+class BadString2
+{
+public:
+ BadString2 (const char *s, size_t slen = N)
+ {
+ if (slen > N)
+ slen = N;
+
+ strncpy (str, s, slen); // { dg-warning "\\\[-Wstringop-truncation]" }
+ }
+
+private:
+ char str[N + 1];
+};
+
+void bad2_warn_size_m1 ()
+{
+ BadString2<3> str ("123");
+ sink (&str);
+}
+
+// { dg-message "inlined from .void bad2_warn_size_m1." "" { target *-*-* } 0 }
+
+template <size_t N>
+class BadString3
+{
+public:
+ BadString3 (const char *s, size_t slen = N)
+ {
+ if (slen > N)
+ slen = N;
+
+ strncpy (str, s, slen); // { dg-warning "\\\[-Wstringop-truncation]" }
+ }
+
+private:
+ char str[N + 1];
+};
+
+void bad3_warn_size_m1_var (const char *s)
+{
+ BadString3<3> str (s);
+ sink (&str);
+}
+
+void call_bad3_warn_size_m1_var ()
+{
+ bad3_warn_size_m1_var ("456");
+}
+
+// { dg-message "inlined from .void call_bad3_warn_size_m1_var." "" { target *-*-* } 0 }
diff --git a/gcc/testsuite/g++.dg/warn/Wunused-var-30.C b/gcc/testsuite/g++.dg/warn/Wunused-var-30.C
new file mode 100644
index 00000000000..e95e120e656
--- /dev/null
+++ b/gcc/testsuite/g++.dg/warn/Wunused-var-30.C
@@ -0,0 +1,11 @@
+// PR c++/84488
+// { dg-do compile }
+// { dg-options "-Wunused-but-set-variable" }
+
+int
+foo ()
+{
+ enum E { A, B, C, D };
+ double r = 1.0; // { dg-bogus "set but not used" }
+ return static_cast<E>(r);
+}
diff --git a/gcc/testsuite/g++.dg/warn/effc4.C b/gcc/testsuite/g++.dg/warn/effc4.C
new file mode 100644
index 00000000000..2ce79280104
--- /dev/null
+++ b/gcc/testsuite/g++.dg/warn/effc4.C
@@ -0,0 +1,10 @@
+// PR c++/84364
+// { dg-do compile }
+// { dg-options "-Weffc++" }
+
+template <typename T>
+struct A {
+ A &operator=(A<T>& f) {
+ return *this; // { dg-bogus "should return a reference to" }
+ }
+};
diff --git a/gcc/testsuite/g++.old-deja/g++.jason/scoping15.C b/gcc/testsuite/g++.old-deja/g++.jason/scoping15.C
index cc34c5f5785..c677b0d36d3 100644
--- a/gcc/testsuite/g++.old-deja/g++.jason/scoping15.C
+++ b/gcc/testsuite/g++.old-deja/g++.jason/scoping15.C
@@ -3,14 +3,17 @@
// Bug: g++ ignores the :: qualification and dies trying to treat an integer
// variable as a list of functions.
+class DComplex;
+double imag (const DComplex&);
+
class DComplex {
public:
- friend double imag(const DComplex& a);
+ friend double imag(const DComplex& a); // Not injected, no warning
};
class FComplex {
public:
- friend float imag(const FComplex& a);
+ friend float imag(const FComplex& a); // { dg-warning "is visible" }
};
void
@@ -19,3 +22,4 @@ scnrm2(FComplex cx[])
int imag;
::imag( cx[0] );
}
+// { dg-warning "ffriend-injection.* is deprecated" "cc1plus:" { target *-*-* } 0 }
diff --git a/gcc/testsuite/g++.old-deja/g++.mike/net43.C b/gcc/testsuite/g++.old-deja/g++.mike/net43.C
index aadd03de92f..de266de4a87 100644
--- a/gcc/testsuite/g++.old-deja/g++.mike/net43.C
+++ b/gcc/testsuite/g++.old-deja/g++.mike/net43.C
@@ -1,9 +1,9 @@
// { dg-do assemble }
-// { dg-options "-ffriend-injection" }
+// { dg-options "-ffriend-injection -Wno-deprecated" }
class foo {
public:
- friend int operator ^(const foo&, const foo&);
+ friend int operator ^(const foo&, const foo&); // { dg-message "is visible" }
};
int main ()
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr84136.c b/gcc/testsuite/gcc.c-torture/compile/pr84136.c
index 0a70e4e3203..aa6afb8b02e 100644
--- a/gcc/testsuite/gcc.c-torture/compile/pr84136.c
+++ b/gcc/testsuite/gcc.c-torture/compile/pr84136.c
@@ -1,3 +1,5 @@
+/* { dg-require-effective-target indirect_jumps } */
+
void* a;
void foo() {
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr84383.c b/gcc/testsuite/gcc.c-torture/compile/pr84383.c
new file mode 100644
index 00000000000..b46f7819b74
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/pr84383.c
@@ -0,0 +1,14 @@
+/* PR tree-optimization/84383 */
+
+struct S { char *s; };
+void bar (struct S *);
+
+void
+foo (int a, char *b)
+{
+ struct S c[4];
+ bar (c);
+ __builtin_strncpy (c[a].s, b, 32);
+ c[a].s[31] = '\0';
+ bar (c);
+}
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr84425.c b/gcc/testsuite/gcc.c-torture/compile/pr84425.c
new file mode 100644
index 00000000000..5d3d325aa23
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/compile/pr84425.c
@@ -0,0 +1,17 @@
+/* PR ipa/84425 */
+
+void bar (int);
+
+void
+foo (int x)
+{
+ if (x < 5)
+ bar (x);
+}
+
+__attribute__((optimize(0))) void
+bar (int x)
+{
+ if (x > 10)
+ foo (x);
+}
diff --git a/gcc/testsuite/gcc.c-torture/execute/pr82210.c b/gcc/testsuite/gcc.c-torture/execute/pr82210.c
index 48fb715570a..4caf84359ee 100644
--- a/gcc/testsuite/gcc.c-torture/execute/pr82210.c
+++ b/gcc/testsuite/gcc.c-torture/execute/pr82210.c
@@ -1,4 +1,5 @@
/* PR c/82210 */
+/* { dg-require-effective-target alloca } */
void
foo (int size)
diff --git a/gcc/testsuite/gcc.c-torture/execute/pr84169.c b/gcc/testsuite/gcc.c-torture/execute/pr84169.c
new file mode 100644
index 00000000000..ba8f8fc4c05
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/pr84169.c
@@ -0,0 +1,25 @@
+/* PR rtl-optimization/84169 */
+
+#ifdef __SIZEOF_INT128__
+typedef unsigned __int128 T;
+#else
+typedef unsigned long long T;
+#endif
+
+T b;
+
+static __attribute__ ((noipa)) T
+foo (T c, T d, T e, T f, T g, T h)
+{
+ __builtin_mul_overflow ((unsigned char) h, -16, &h);
+ return b + h;
+}
+
+int
+main ()
+{
+ T x = foo (0, 0, 0, 0, 0, 4);
+ if (x != -64)
+ __builtin_abort ();
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.c-torture/execute/pr84478.c b/gcc/testsuite/gcc.c-torture/execute/pr84478.c
new file mode 100644
index 00000000000..6172b1acb06
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/pr84478.c
@@ -0,0 +1,49 @@
+/* PR tree-optimization/84478 */
+
+long poolptr;
+unsigned char *strpool;
+static const char *poolfilearr[] = {
+ "mu",
+ "",
+#define A "x",
+#define B A "xx", A A "xxx", A A A A A
+#define C B B B B B B B B B B
+#define D C C C C C C C C C C
+ D C C C C C C C B B B
+ ((void *)0)
+};
+
+__attribute__((noipa)) long
+makestring (void)
+{
+ return 1;
+}
+
+__attribute__((noipa)) long
+loadpoolstrings (long spare_size)
+{
+ const char *s;
+ long g = 0;
+ int i = 0, j = 0;
+ while ((s = poolfilearr[j++]))
+ {
+ int l = __builtin_strlen (s);
+ i += l;
+ if (i >= spare_size) return 0;
+ while (l-- > 0) strpool[poolptr++] = *s++;
+ g = makestring ();
+ }
+ return g;
+}
+
+int
+main ()
+{
+ strpool = __builtin_malloc (4000);
+ if (!strpool)
+ return 0;
+ asm volatile ("" : : : "memory");
+ volatile int r = loadpoolstrings (4000);
+ __builtin_free (strpool);
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.dg/Warray-bounds-27.c b/gcc/testsuite/gcc.dg/Warray-bounds-27.c
new file mode 100644
index 00000000000..98c9439bbf3
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/Warray-bounds-27.c
@@ -0,0 +1,35 @@
+/* { dg-do compile }
+ { dg-options "-O2 -Wall -Wextra -Warray-bounds -Wrestrict" } */
+
+typedef __SIZE_TYPE__ size_t;
+
+extern void* memcpy (void* restrict, const void* restrict, size_t);
+
+extern void sink (void*, ...);
+
+struct Data {
+ size_t n;
+ void *p;
+};
+
+void test_copy (void)
+{
+ struct Data d;
+ sink (&d);
+
+ char dp1[sizeof d + 1];
+ char d2x[2 * sizeof d];
+ char d2xp1[2 * sizeof d + 1];
+
+ /* During development the following would incorrectly trigger:
+ warning: 'memcpy' forming offset [17, 25] is out of the bounds [0, 16]
+ of object ‘d’ with type 'struct Data' [-Warray-bounds]
+ that wasn't caught by the test suite. Make sure it is. */
+ memcpy (&dp1, d.p, sizeof dp1); /* { dg-bogus "\\\[-Warray-bounds" } */
+
+ /* Likewise. */
+ memcpy (&d2x, d.p, sizeof d2x); /* { dg-bogus "\\\[-Warray-bounds" } */
+ memcpy (&d2xp1, d.p, sizeof d2xp1); /* { dg-bogus "\\\[-Warray-bounds" } */
+
+ sink (&d, &dp1, &d2x, &d2xp1);
+}
diff --git a/gcc/testsuite/gcc.dg/Wattributes-8.c b/gcc/testsuite/gcc.dg/Wattributes-8.c
new file mode 100644
index 00000000000..a4b4c00c08f
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/Wattributes-8.c
@@ -0,0 +1,38 @@
+/* PR middle-end/84108 - incorrect -Wattributes warning for packed/aligned
+ conflict on struct members
+ { dg-do compile }
+ { dg-options "-Wall -Wattributes" } */
+
+#define ATTR(list) __attribute__ (list)
+#define ASSERT(e) _Static_assert (e, #e)
+
+/* GCC is inconsistent in how it treats attribute aligned between
+ variable and member declarations. Attribute aligned alone is
+ sufficient to reduce a variable's alignment requirement but
+ the attribute must be paired with packed to have the same
+ effect on a member. Worse, declaring a variable both aligned
+ and packed emits a warning. */
+
+/* Avoid exercising this since emitting a warning for these given
+ the requirement for members seems like a misfeature:
+ int a ATTR ((packed, aligned (2))); // -Wattributes
+ int b ATTR ((aligned (2), packed)); // -Wattributes
+ ASSERT (_Alignof (a) == 2);
+ ASSERT (_Alignof (b) == 2); */
+
+int c ATTR ((aligned (2))); // okay (reduces alignment)
+ASSERT (_Alignof (c) == 2);
+
+struct {
+ int a ATTR ((packed, aligned (2))); /* { dg-bogus "\\\[-Wattributes" } */
+ int b ATTR ((aligned (2), packed)); /* { dg-bogus "\\\[-Wattributes" } */
+
+ /* Avoid exercising this since the attribute has no effect yet
+ there is no warning.
+ int c ATTR ((aligned (2))); // missing warning? */
+} s;
+
+ASSERT (_Alignof (s.a) == 2);
+ASSERT (_Alignof (s.b) == 2);
+
+/* ASSERT (_Alignof (s.c) == 4); */
diff --git a/gcc/testsuite/gcc.dg/Wrestrict-6.c b/gcc/testsuite/gcc.dg/Wrestrict-6.c
index c1bb373c5cd..cc7185f0998 100644
--- a/gcc/testsuite/gcc.dg/Wrestrict-6.c
+++ b/gcc/testsuite/gcc.dg/Wrestrict-6.c
@@ -21,7 +21,7 @@ void warn_2_smax_p2 (void)
ptrdiff_t i = UR (2, DIFF_MAX + (size_t)2);
- strcpy (d, d + i); /* { dg-warning "accessing between 0 and 4 bytes at offsets 0 and \\\[2, -\[0-9\]+] may overlap up to 2 bytes at offset 2" } */
+ strcpy (d, d + i); /* { dg-warning "accessing between 0 and 4 bytes at offsets 0 and \\\[2, 7] may overlap up to 2 bytes at offset 2" } */
sink (d);
}
@@ -47,7 +47,7 @@ void warn_2u_smax_p2 (void)
size_t i = UR (2, DIFF_MAX + (size_t)2);
- strcpy (d, d + i); /* { dg-warning "accessing between 0 and 4 bytes at offsets 0 and \\\[2, -\[0-9\]+] may overlap up to 2 bytes at offset 2" } */
+ strcpy (d, d + i); /* { dg-warning "accessing between 0 and 4 bytes at offsets 0 and \\\[2, 7] may overlap up to 2 bytes at offset 2" } */
sink (d);
}
diff --git a/gcc/testsuite/gcc.dg/Wrestrict-7.c b/gcc/testsuite/gcc.dg/Wrestrict-7.c
new file mode 100644
index 00000000000..5be5e0bd051
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/Wrestrict-7.c
@@ -0,0 +1,51 @@
+/* PR tree-optimization/83698 - bogus offset in -Wrestrict messages for
+ strcat of unknown strings
+ { dg-do compile }
+ { dg-options "-O2 -Wrestrict -ftrack-macro-expansion=0" } */
+
+extern char* strcat (char*, const char*);
+
+void sink (char*);
+
+#define T(d, s) sink (strcat (d, s))
+
+extern char arr[];
+
+
+void test_strcat_array_cst_offset (void)
+{
+ T (arr, arr + 1); /* { dg-warning "accessing 2 or more bytes at offsets 0 and 1 may overlap 1 byte at offset 1" } */
+ T (arr, arr + 2); /* { dg-warning "accessing 3 or more bytes at offsets 0 and 2 may overlap 1 byte at offset 2" } */
+ T (arr, arr + 13); /* { dg-warning "accessing 14 or more bytes at offsets 0 and 13 may overlap 1 byte at offset 13" } */
+
+ T (arr + 1, arr); /* { dg-warning "accessing 2 or more bytes at offsets 1 and 0 may overlap 1 byte at offset 1" } */
+ T (arr + 17, arr + 11); /* { dg-warning "accessing 7 or more bytes at offsets 17 and 11 may overlap 1 byte at offset 17" } */
+ T (arr + 36, arr + 20); /* { dg-warning "accessing 17 or more bytes at offsets 36 and 20 may overlap 1 byte at offset 36" } */
+}
+
+void test_strcat_ptr_cst_offset (char *d)
+{
+ T (d - 12, d + 34); /* { dg-warning "accessing 47 or more bytes at offsets -12 and 34 may overlap 1 byte at offset 34" } */
+ T (d + 12, d + 34); /* { dg-warning "accessing 23 or more bytes at offsets 12 and 34 may overlap 1 byte at offset 34" } */
+ T (d + 20, d + 36); /* { dg-warning "accessing 17 or more bytes at offsets 20 and 36 may overlap 1 byte at offset 36" } */
+}
+
+void test_strcat_array_var_offset (int i, int j)
+{
+ T (arr + i, arr); /* { dg-warning "accessing 1 or more bytes at offsets \\\[0, \[0-9\]+] and 0 may overlap 1 byte at offset \\\[0, \[0-9\]+]" } */
+ T (arr, arr + j); /* { dg-warning "accessing 1 or more bytes at offsets 0 and \\\[0, \[0-9\]+] may overlap 1 byte at offset \\\[0, \[0-9\]+]" } */
+ T (arr + i, arr + j); /* { dg-warning "accessing 1 or more bytes at offsets \\\[0, \[0-9\]+] and \\\[0, \[0-9\]+] may overlap 1 byte at offset \\\[0, \[0-9\]+]" } */
+
+ T (arr + i, arr + 5); /* { dg-warning "accessing 6 or more bytes at offsets \\\[0, \[0-9\]+] and 5 may overlap 1 byte at offset \\\[5, \[0-9\]+]" } */
+ T (arr + 7, arr + j); /* { dg-warning "accessing 8 or more bytes at offsets 7 and \\\[0, \[0-9\]+] may overlap 1 byte at offset \\\[7, \[0-9\]+]" } */
+}
+
+void test_strcat_ptr_var_offset (char *d, int i, int j)
+{
+ T (d + i, d); /* { dg-warning "accessing \[0-9\]+ or more bytes at offsets \\\[-\[0-9\]+, \[0-9\]+] and 0 may overlap 1 byte at offset \\\[0, \[0-9\]+]" } */
+ T (d, d + j); /* { dg-warning "accessing \[0-9\]+ or more bytes at offsets 0 and \\\[-\[0-9\]+, \[0-9\]+] may overlap 1 byte at offset \\\[0, \[0-9\]+]" } */
+ T (d + i, d + j); /* { dg-warning "accessing 1 or more bytes at offsets \\\[-\[0-9\]+, \[0-9\]+] and \\\[-\[0-9\]+, \[0-9\]+] may overlap 1 byte at offset \\\[-\[0-9\]+, \[0-9\]+]" } */
+
+ T (d + i, d + 3); /* { dg-warning "accessing \[0-9\]+ or more bytes at offsets \\\[-\[0-9\]+, \[0-9\]+] and 3 may overlap 1 byte at offset \\\[3, \[0-9\]+]" } */
+ T (d + 9, d + j); /* { dg-warning "accessing \[0-9\]+ or more bytes at offsets 9 and \\\[-\[0-9\]+, \[0-9\]+] may overlap 1 byte at offset \\\[9, \[0-9\]+]" } */
+}
diff --git a/gcc/testsuite/gcc.dg/Wrestrict-8.c b/gcc/testsuite/gcc.dg/Wrestrict-8.c
new file mode 100644
index 00000000000..24946b08c3b
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/Wrestrict-8.c
@@ -0,0 +1,116 @@
+/* PR tree-optimization/84095 - false-positive -Wrestrict warnings for
+ memcpy within array
+ { dg-do compile }
+ { dg-options "-O2 -Wrestrict -ftrack-macro-expansion=0" } */
+
+typedef __SIZE_TYPE__ size_t;
+
+extern void* memcpy (void* restrict, const void* restrict, size_t);
+
+#define T(d, s, n) memcpy (d, s, n)
+
+struct S1 { char c; } a8_1[8];
+
+void test_1_dim_var (int i, int j)
+{
+ /* Variable destination index and constant source index. */
+ T (&a8_1[i], &a8_1[0], 1);
+ T (&a8_1[i], &a8_1[0], 2);
+ T (&a8_1[i], &a8_1[0], 3);
+ T (&a8_1[i], &a8_1[0], 4);
+
+ T (&a8_1[i], &a8_1[0], 5); /* { dg-warning "accessing 5 bytes at offsets \\\[0, 8] and 0 overlaps between 2 and 5 bytes at offset \\\[0, 3\\\]" } */
+ T (&a8_1[i], &a8_1[0], 6); /* { dg-warning "accessing 6 bytes at offsets \\\[0, 8] and 0 overlaps between 4 and 6 bytes at offset \\\[0, 2\\\]" } */
+ T (&a8_1[i], &a8_1[0], 7); /* { dg-warning "accessing 7 bytes at offsets \\\[0, 8] and 0 overlaps between 6 and 7 bytes at offset \\\[0, 1\\\]" } */
+ T (&a8_1[i], &a8_1[0], 8); /* { dg-warning "accessing 8 bytes at offsets \\\[0, 8] and 0 overlaps 8 bytes at offset 0" } */
+
+ /* The following is diagnosed by -Warray-bounds when it's enabled
+ rather than by -Wrestrict. */
+ T (&a8_1[i], &a8_1[0], 9); /* { dg-warning "accessing 9 bytes at offsets \\\[0, 8] and 0 overlaps 9 bytes at offset 0" } */
+
+ /* Same as above but with constant destination index and variable
+ source index. */
+ T (&a8_1[0], &a8_1[i], 1);
+ T (&a8_1[0], &a8_1[i], 2);
+ T (&a8_1[0], &a8_1[i], 3);
+ T (&a8_1[0], &a8_1[i], 4);
+
+ T (&a8_1[0], &a8_1[i], 5); /* { dg-warning "accessing 5 bytes at offsets 0 and \\\[0, 8] overlaps between 2 and 5 bytes at offset \\\[0, 3\\\]" } */
+ T (&a8_1[0], &a8_1[i], 6); /* { dg-warning "accessing 6 bytes at offsets 0 and \\\[0, 8] overlaps between 4 and 6 bytes at offset \\\[0, 2\\\]" } */
+ T (&a8_1[0], &a8_1[i], 7); /* { dg-warning "accessing 7 bytes at offsets 0 and \\\[0, 8] overlaps between 6 and 7 bytes at offset \\\[0, 1\\\]" } */
+ T (&a8_1[0], &a8_1[i], 8); /* { dg-warning "accessing 8 bytes at offsets 0 and \\\[0, 8] overlaps 8 bytes at offset 0" } */
+ T (&a8_1[0], &a8_1[i], 9); /* { dg-warning "accessing 9 bytes at offsets 0 and \\\[0, 8] overlaps 9 bytes at offset 0" } */
+
+
+ /* Variable destination and source indices. */
+ T (&a8_1[i], &a8_1[j], 1);
+ T (&a8_1[i], &a8_1[j], 2);
+ T (&a8_1[i], &a8_1[j], 3);
+ T (&a8_1[i], &a8_1[j], 4);
+
+ T (&a8_1[i], &a8_1[j], 5); /* { dg-warning "accessing 5 bytes at offsets \\\[0, 8] and \\\[0, 8] overlaps between 2 and 5 bytes at offset \\\[0, 3\\\]" } */
+ T (&a8_1[i], &a8_1[j], 6); /* { dg-warning "accessing 6 bytes at offsets \\\[0, 8] and \\\[0, 8] overlaps between 4 and 6 bytes at offset \\\[0, 2\\\]" } */
+ T (&a8_1[i], &a8_1[j], 7); /* { dg-warning "accessing 7 bytes at offsets \\\[0, 8] and \\\[0, 8] overlaps between 6 and 7 bytes at offset \\\[0, 1\\\]" } */
+ T (&a8_1[i], &a8_1[j], 8); /* { dg-warning "accessing 8 bytes at offsets \\\[0, 8] and \\\[0, 8] overlaps 8 bytes at offset 0" } */
+
+ /* The following is diagnosed by -Warray-bounds when it's enabled
+ rather than by -Wrestrict. */
+ T (&a8_1[i], &a8_1[j], 9); /* { dg-warning "accessing 9 bytes at offsets \\\[0, 8] and \\\[0, 8] overlaps 9 bytes at offset 0" } */
+}
+
+struct S4 { char a4[4]; } a2_4[2];
+
+void test_2_dim (int i, int j)
+{
+ T (&a2_4[i], &a2_4[0], 1);
+ T (&a2_4[i], &a2_4[0], 4);
+
+ T (&a2_4[i], &a2_4[0], 5); /* { dg-warning "accessing 5 bytes at offsets \\\[0, 8] and 0 overlaps between 2 and 5 bytes at offset \\\[0, 3]" } */
+ T (&a2_4[i], &a2_4[0], 6); /* { dg-warning "accessing 6 bytes at offsets \\\[0, 8] and 0 overlaps between 4 and 6 bytes at offset \\\[0, 2]" } */
+ T (&a2_4[i], &a2_4[0], 7); /* { dg-warning "accessing 7 bytes at offsets \\\[0, 8] and 0 overlaps between 6 and 7 bytes at offset \\\[0, 1]" } */
+ T (&a2_4[i], &a2_4[0], 8); /* { dg-warning "accessing 8 bytes at offsets \\\[0, 8] and 0 overlaps 8 bytes at offset 0" } */
+
+ T (a2_4[i].a4, a2_4[0].a4, 1);
+ T (a2_4[i].a4, a2_4[0].a4, 4);
+
+ T (a2_4[i].a4, a2_4[0].a4, 5); /* { dg-warning "accessing 5 bytes at offsets \\\[0, 8] and 0 overlaps between 2 and 5 bytes at offset \\\[0, 3]" } */
+ T (a2_4[i].a4, a2_4[0].a4, 8); /* { dg-warning "accessing 8 bytes at offsets \\\[0, 8] and 0 overlaps 8 bytes at offset 0" } */
+
+ T (a2_4[i].a4, a2_4[j].a4, 1);
+ T (a2_4[i].a4, a2_4[j].a4, 4);
+
+ /* The destination and source offsets printed below ignore the size
+ of the copy and only indicate the values that are valid for each
+ of the destination and source arguments on its own, without
+ considering the size of the overlapping access. */
+ T (a2_4[i].a4, a2_4[j].a4, 5); /* { dg-warning "accessing 5 bytes at offsets \\\[0, 8] and \\\[0, 8] overlaps between 2 and 5 bytes at offset \\\[0, 3]" } */
+ T (a2_4[i].a4, a2_4[j].a4, 8); /* { dg-warning "accessing 8 bytes at offsets \\\[0, 8] and \\\[0, 8] overlaps 8 bytes at offset 0" } */
+
+ /* Same as above but referencing the first elements of each array. */
+ T (&a2_4[i].a4[0], &a2_4[j].a4[0], 1);
+ T (&a2_4[i].a4[0], &a2_4[j].a4[0], 4);
+
+ T (&a2_4[i].a4[0], &a2_4[j].a4[0], 5); /* { dg-warning "accessing 5 bytes at offsets \\\[0, 8] and \\\[0, 8] overlaps between 2 and 5 bytes at offset \\\[0, 3]" } */
+ T (&a2_4[i].a4[0], &a2_4[j].a4[0], 8); /* { dg-warning "accessing 8 bytes at offsets \\\[0, 8] and \\\[0, 8] overlaps 8 bytes at offset 0" } */
+
+ T (&a2_4[i].a4[0], &a2_4[j].a4[1], 3);
+ T (&a2_4[i].a4[0], &a2_4[j].a4[2], 2);
+ T (&a2_4[i].a4[0], &a2_4[j].a4[3], 1);
+}
+
+struct { int i; } a2[2][8];
+
+void test_single_2_dim_major (int i)
+{
+ memcpy (&a2[i], &a2[0], sizeof *a2); /* { dg-bogus "\\\[-Wrestrict]" } */
+}
+
+void test_single_2_dim_minor (int i)
+{
+ memcpy (&a2[i][0], &a2[0][0], sizeof a2[0][0]); /* { dg-bogus "\\\[-Wrestrict]" } */
+}
+
+void test_single_2_dim_major_minor (int i, int j)
+{
+ memcpy (&a2[i][j], &a2[0][0], sizeof a2[0][0]); /* { dg-bogus "\\\[-Wrestrict]" } */
+}
diff --git a/gcc/testsuite/gcc.dg/Wrestrict-9.c b/gcc/testsuite/gcc.dg/Wrestrict-9.c
new file mode 100644
index 00000000000..5ad87401ed9
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/Wrestrict-9.c
@@ -0,0 +1,315 @@
+/* PR tree-optimization/84095 - false-positive -Wrestrict warnings for
+ strcpy within array
+ { dg-do compile }
+ { dg-options "-O2 -Wrestrict -ftrack-macro-expansion=0" } */
+
+typedef __SIZE_TYPE__ size_t;
+
+extern void* memcpy (void* restrict, const void* restrict, size_t);
+extern char* strcpy (char* restrict, const char* restrict);
+
+#define T(d, s) strcpy (d, s)
+
+struct MemArrays {
+ char pad[8];
+ char a2[3][9];
+ char a3[3][4][9];
+} a[2];
+
+struct NestedMemArrays {
+ struct MemArrays ma;
+ struct MemArrays ma1[2];
+} nma[2];
+
+/* Use a variable as the source of a copy to verify that VAR_DECL
+ is handled correctly when it's the source of GIMPLE assignment. */
+const char *str = "1234567";
+
+void test_obj_2_dim_const (void)
+{
+ const char *s = strcpy (a[0].a2[0], "1234567");
+
+ T (a[0].a2[1], s);
+ T (a[0].a2[2], s);
+
+ /* Ideally, the offsets in the warning below would be relative to
+ the beginning of the accessed array member. Unfortunately, when
+ the offset is represented as
+ MEM_REF (char[9], A, offsetof (struct MemArrays, A[0].A2[0]) + 1)
+ as it is in this instance it's difficult to determine the member
+ that is being accessed and tease out from the MEM_REF the offset
+ as it appears in the source. As a result, the warning mentions
+ the offset from the beginning of A instead. This is suboptimal
+ and should be fixed, either by printing the correct offsets or
+ by mentioning the base object that the offset is relative to. */
+ T (a[0].a2[0] + 1, s); /* { dg-warning "accessing 8 bytes at offsets \(1|9\) and \(0|8\) overlaps 7 bytes at offset \(1|9\)." } */
+ T (a[0].a2[1] + 2, s);
+ T (a[0].a2[2] + 3, s);
+
+ T (a[1].a2[0], s);
+ T (a[1].a2[1], s);
+ T (a[1].a2[2], s);
+
+ T (a[1].a2[0] + 1, s);
+ T (a[1].a2[1] + 2, s);
+ T (a[1].a2[2] + 3, s);
+}
+
+void test_obj_nested_2_dim_const (void)
+{
+ const char *s = strcpy (nma[0].ma.a2[0], str);
+
+ T (nma[0].ma.a2[1], s);
+ T (nma[0].ma.a2[2], s);
+
+ T (nma[0].ma.a2[0] + 1, s); /* { dg-warning "accessing 8 bytes at offsets 1 and 0 overlaps 7 bytes at offset 1" "bug " { xfail *-*-* } } */
+ T (nma[0].ma.a2[1] + 2, s);
+ T (nma[0].ma.a2[2] + 3, s);
+
+ T (nma[1].ma.a2[1], s);
+ T (nma[1].ma.a2[2], s);
+
+ T (nma[1].ma.a2[0] + 1, s);
+ T (nma[1].ma.a2[1] + 2, s);
+ T (nma[1].ma.a2[2] + 3, s);
+
+
+ T (nma[0].ma1[0].a2[1], s);
+ T (nma[0].ma1[0].a2[2], s);
+
+ T (nma[0].ma1[0].a2[0] + 1, s);
+ T (nma[0].ma1[0].a2[1] + 2, s);
+ T (nma[0].ma1[0].a2[2] + 3, s);
+
+ T (nma[1].ma1[0].a2[1], s);
+ T (nma[1].ma1[0].a2[2], s);
+
+ T (nma[1].ma1[0].a2[0] + 1, s);
+ T (nma[1].ma1[0].a2[1] + 2, s);
+ T (nma[1].ma1[0].a2[2] + 3, s);
+}
+
+void test_obj_2_dim_var (int i, int j)
+{
+ const char *s = memcpy (a[0].a2[0], "1234567", 8);
+
+ T (a[i].a2[0], s); /* { dg-bogus "\\\[-Wrestrict]" } */
+ T (a[i].a2[1], s);
+ T (a[i].a2[2], s);
+
+ T (a[i].a2[0] + 1, s);
+ T (a[i].a2[1] + 1, s);
+ T (a[i].a2[2] + 1, s);
+
+ T (a[0].a2[i], s); /* { dg-bogus "\\\[-Wrestrict]" } */
+ T (a[1].a2[i], s);
+
+ T (a[i].a2[0] + j, s);
+ T (a[i].a2[1] + j, s);
+ T (a[i].a2[2] + j, s);
+
+ T (a[0].a2[i] + 1, s);
+ T (a[1].a2[i] + 1, s);
+
+ T (a[0].a2[i] + j, s);
+ T (a[1].a2[i] + j, s);
+
+ if (i < 0 || 1 < i)
+ i = 1;
+
+ T (a[i].a2[0], s);
+ T (a[i].a2[1], s);
+ T (a[i].a2[2], s);
+
+ T (a[i].a2[0] + 1, s);
+ T (a[i].a2[1] + 1, s);
+ T (a[i].a2[2] + 1, s);
+
+ T (a[0].a2[i], s);
+ T (a[1].a2[i], s);
+
+ T (a[i].a2[0] + j, s);
+ T (a[i].a2[1] + j, s);
+ T (a[i].a2[2] + j, s);
+
+ T (a[0].a2[i] + 1, s);
+ T (a[1].a2[i] + 1, s);
+
+ T (a[0].a2[i] + j, s);
+ T (a[1].a2[i] + j, s);
+}
+
+void test_obj_nested_2_dim_var (int i, int j)
+{
+ const char *s = strcpy (nma[0].ma.a2[0], "1234567");
+
+ T (nma[i].ma.a2[0], s); /* { dg-bogus "\\\[-Wrestrict]" } */
+ T (nma[i].ma.a2[1], s);
+ T (nma[i].ma.a2[2], s);
+
+ T (nma[i].ma.a2[0] + 1, s);
+ T (nma[i].ma.a2[1] + 1, s);
+ T (nma[i].ma.a2[2] + 1, s);
+
+ T (nma[0].ma.a2[i], s); /* { dg-bogus "\\\[-Wrestrict]" } */
+ T (nma[1].ma.a2[i], s);
+
+ T (nma[i].ma.a2[0] + j, s);
+ T (nma[i].ma.a2[1] + j, s);
+ T (nma[i].ma.a2[2] + j, s);
+
+ T (nma[0].ma.a2[i] + 1, s);
+ T (nma[1].ma.a2[i] + 1, s);
+
+ T (nma[0].ma.a2[i] + j, s);
+ T (nma[1].ma.a2[i] + j, s);
+}
+
+void test_ref_2_dim_const (struct MemArrays *p)
+{
+ strcpy (p[0].a2[0], "1234567");
+ const char *s = p[0].a2[0];
+
+ T (p[0].a2[1], s);
+ T (p[0].a2[2], s);
+
+ T (p[1].a2[0], s);
+ T (p[1].a2[1], s);
+ T (p[1].a2[2], s);
+}
+
+void test_ref_2_dim_var (struct MemArrays *p, int i, int j)
+{
+ strcpy (p[0].a2[0], "1234567");
+ const char *s = p[0].a2[0];
+
+ T (p[i].a2[0], s); /* { dg-bogus "\\\[-Wrestrict]" } */
+ T (p[i].a2[1], s);
+ T (p[i].a2[2], s);
+
+ T (p[0].a2[i], s);
+ T (p[1].a2[i], s);
+
+ T (p[i].a2[0] + j, s);
+ T (p[i].a2[1] + j, s);
+ T (p[i].a2[2] + j, s);
+
+ T (p[0].a2[i] + j, s);
+ T (p[1].a2[i] + j, s);
+}
+
+void test_obj_3_dim_var (int i, int j)
+{
+ strcpy (a[0].a3[0][0], "1234567");
+ const char *s = a[0].a3[0][0];
+
+ T (a[0].a3[0][i], s);
+ T (a[0].a3[1][i], s);
+ T (a[0].a3[2][i], s);
+
+ T (a[1].a3[0][i], s);
+ T (a[1].a3[1][i], s);
+ T (a[1].a3[2][i], s);
+
+ T (a[0].a3[i][0], s); /* { dg-bogus "\\\[-Wrestrict\]" } */
+ T (a[0].a3[i][1], s);
+ T (a[0].a3[i][2], s);
+
+ T (a[1].a3[i][0], s);
+ T (a[1].a3[i][1], s);
+ T (a[1].a3[i][2], s);
+
+ T (a[i].a3[0][0], s); /* { dg-bogus "\\\[-Wrestrict\]" } */
+ T (a[i].a3[0][1], s);
+ T (a[i].a3[0][2], s);
+
+ T (a[i].a3[1][0], s);
+ T (a[i].a3[1][1], s);
+ T (a[i].a3[1][2], s);
+
+ T (a[i].a3[2][0], s);
+ T (a[i].a3[2][1], s);
+ T (a[i].a3[2][2], s);
+
+
+ T (a[0].a3[0][i] + 1, s);
+ T (a[0].a3[1][i] + 1, s);
+ T (a[0].a3[2][i] + 1, s);
+
+ T (a[1].a3[0][i] + 1, s);
+ T (a[1].a3[1][i] + 1, s);
+ T (a[1].a3[2][i] + 1, s);
+
+
+ T (a[0].a3[0][i] + j, s);
+ T (a[0].a3[1][i] + j, s);
+ T (a[0].a3[2][i] + j, s);
+
+ T (a[1].a3[0][i] + j, s);
+ T (a[1].a3[1][i] + j, s);
+ T (a[1].a3[2][i] + j, s);
+
+ T (a[0].a3[i][0] + j, s);
+ T (a[0].a3[i][1] + j, s);
+ T (a[0].a3[i][2] + j, s);
+
+ T (a[1].a3[i][0] + j, s);
+ T (a[1].a3[i][1] + j, s);
+ T (a[1].a3[i][2] + j, s);
+
+ T (a[i].a3[0][0] + j, s);
+ T (a[i].a3[0][1] + j, s);
+ T (a[i].a3[0][2] + j, s);
+
+ T (a[i].a3[1][0] + j, s);
+ T (a[i].a3[1][1] + j, s);
+ T (a[i].a3[1][2] + j, s);
+
+ T (a[i].a3[2][0] + j, s);
+ T (a[i].a3[2][1] + j, s);
+ T (a[i].a3[2][2] + j, s);
+}
+
+void test_obj_3_dim_const (struct MemArrays *p)
+{
+ strcpy (p[0].a3[0][0], "1234567");
+ const char *s = p[0].a3[0][0];
+
+ T (p[0].a3[0][1], s);
+ T (p[0].a3[0][2], s);
+ T (p[0].a3[0][3], s);
+
+ T (p[0].a3[0][1] + 1, s);
+ T (p[0].a3[0][2] + 1, s);
+ T (p[0].a3[0][3] + 1, s);
+
+ T (p[0].a3[1][0], s);
+ T (p[0].a3[1][1], s);
+ T (p[0].a3[1][2], s);
+ T (p[0].a3[1][3], s);
+
+ T (p[0].a3[1][0] + 1, s);
+ T (p[0].a3[1][1] + 1, s);
+ T (p[0].a3[1][2] + 1, s);
+ T (p[0].a3[1][3] + 1, s);
+
+ T (p[0].a3[2][0], s);
+ T (p[0].a3[2][1], s);
+ T (p[0].a3[2][2], s);
+ T (p[0].a3[2][3], s);
+
+ T (p[1].a3[0][0], s);
+ T (p[1].a3[0][1], s);
+ T (p[1].a3[0][2], s);
+ T (p[1].a3[0][3], s);
+
+ T (p[1].a3[1][0], s);
+ T (p[1].a3[1][1], s);
+ T (p[1].a3[1][2], s);
+ T (p[1].a3[1][3], s);
+
+ T (p[1].a3[2][0], s);
+ T (p[1].a3[2][1], s);
+ T (p[1].a3[2][2], s);
+ T (p[1].a3[2][3], s);
+}
diff --git a/gcc/testsuite/gcc.dg/Wstringop-overflow-3.c b/gcc/testsuite/gcc.dg/Wstringop-overflow-3.c
index 590184461a9..6c8cbf3898e 100644
--- a/gcc/testsuite/gcc.dg/Wstringop-overflow-3.c
+++ b/gcc/testsuite/gcc.dg/Wstringop-overflow-3.c
@@ -1,6 +1,7 @@
/* PR tree-optimization/84238 */
/* { dg-do compile } */
/* { dg-options "-O2" } */
+/* { dg-require-effective-target alloca } */
char a[1];
int b;
diff --git a/gcc/testsuite/gcc.dg/builtin-unreachable-6.c b/gcc/testsuite/gcc.dg/builtin-unreachable-6.c
index 1915dd13f42..b0504be89cc 100644
--- a/gcc/testsuite/gcc.dg/builtin-unreachable-6.c
+++ b/gcc/testsuite/gcc.dg/builtin-unreachable-6.c
@@ -1,5 +1,5 @@
/* { dg-do compile } */
-/* { dg-options "-O2 -fdump-tree-fab1 -fno-tree-dominator-opts" } */
+/* { dg-options "-O2 -fdump-tree-fab1 -fno-tree-dominator-opts -fno-tree-vrp" } */
void
foo (int b, int c)
diff --git a/gcc/testsuite/gcc.dg/graphite/pr84399.c b/gcc/testsuite/gcc.dg/graphite/pr84399.c
new file mode 100644
index 00000000000..4b142df75a2
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/graphite/pr84399.c
@@ -0,0 +1,23 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -floop-nest-optimize -fno-tree-loop-im --param scev-max-expr-size=1" } */
+
+void
+h8 (int cv, int od)
+{
+ for (;;)
+ {
+ int ih = (__UINTPTR_TYPE__)&od;
+ if (cv == 0)
+ while (od < 1)
+ {
+ int lq;
+
+ for (lq = 0; lq < 3; ++lq)
+ for (ih = 0; ih < 4; ++ih)
+ od += lq;
+ }
+ while (ih < 1)
+ {
+ }
+ }
+}
diff --git a/gcc/testsuite/gcc.dg/lto/README b/gcc/testsuite/gcc.dg/lto/README
index 1a13dd92c62..6777c15766a 100644
--- a/gcc/testsuite/gcc.dg/lto/README
+++ b/gcc/testsuite/gcc.dg/lto/README
@@ -1,4 +1,20 @@
This directory contains tests for link-time optimization (LTO).
+
+=== Directives ===
+
+The LTO harness recognizes the following special DejaGnu directives:
+ * dg-lto-do - the equivalent of dg-do with a limited set of supported
+ arguments (see below),
+ * dg-lto-options - the equivalent of dg-options with additional syntax
+ to support different sets of options for different files compiled
+ as part of the same test case,
+ * dg-lto-warning - the equivalent of dg-warning for diagnostics expected
+ to be emitted at LTO link time,
+ * dg-lto-message - the equivakent of dg-message for informational notes
+ expected to be emitted at LTO link time.
+
+=== Test Names ===
+
Tests in this directory may span multiple files, so the naming of
the files is significant.
@@ -9,8 +25,8 @@ executable.
By default, each set of files will be compiled with list of
options listed in LTO_OPTIONS (../../lib/lto.exp), which can be
-overwritten in the shell environment or using the 'dg-lto-options'
-command in the main file of the set (i.e., the file with _0
+overridden in the shell environment or using the 'dg-lto-options'
+directive in the main file of the set (i.e., the file with _0
suffix).
For example, given the files a_0.C a_1.C a_2.C, they will be
@@ -24,7 +40,9 @@ $ g++ -o <executable> a_0.o a_1.o a_2.o
Tests that do not need more than one file are a special case
where there is a single file named 'foo_0.C'.
-The only supported dg-lto-do option are 'assemble', 'run' and 'link'.
+=== The dg-lto-do Directive ==
+
+The only supported dg-lto-do options are 'assemble', 'run' and 'link'.
Additionally, these can only be used in the main file. If
'assemble' is used, only the individual object files are
generated. If 'link' is used, the final executable is generated
diff --git a/gcc/testsuite/gcc.dg/pr56727-1.c b/gcc/testsuite/gcc.dg/pr56727-1.c
index ffc133545e7..a26edb2bf9b 100644
--- a/gcc/testsuite/gcc.dg/pr56727-1.c
+++ b/gcc/testsuite/gcc.dg/pr56727-1.c
@@ -1,6 +1,5 @@
/* { dg-do compile { target fpic } } */
/* { dg-options "-O2 -fPIC" } */
-/* { dg-final { scan-assembler-not "@(PLT|plt)" { target i?86-*-* x86_64-*-* powerpc*-*-* } } } */
#define define_func(type) \
void f_ ## type (type b) { f_ ## type (0); } \
@@ -21,3 +20,7 @@ int __attribute__((noinline, noclone)) foo_noinline(int n)
{
return (n == 1 || n == 2) ? 1 : foo_noinline(n-1) * foo_noinline(n-2);
}
+
+/* { dg-final { scan-assembler-not "@(PLT|plt)" { target i?86-*-* x86_64-*-* } } } */
+/* { dg-final { scan-assembler-not "@(PLT|plt)" { target { powerpc*-*-* && ilp32 } } } } */
+/* { dg-final { scan-assembler-not "bl \[a-z_\]*\n\\s*nop" { target { powerpc*-*-* && lp64 } } } } */
diff --git a/gcc/testsuite/gcc.dg/pr56727-2.c b/gcc/testsuite/gcc.dg/pr56727-2.c
index 62a74d1ea31..c54369ed25e 100644
--- a/gcc/testsuite/gcc.dg/pr56727-2.c
+++ b/gcc/testsuite/gcc.dg/pr56727-2.c
@@ -1,11 +1,11 @@
/* { dg-do compile { target fpic } } */
/* { dg-options "-O2 -fPIC" } */
/* { dg-require-alias "" } */
-/* { dg-final { scan-assembler "@(PLT|plt)" { target i?86-*-* x86_64-*-* powerpc*-*-linux* } } } */
__attribute__((noinline, noclone))
void f (short b)
{
+ __builtin_setjmp (0); /* Prevent tailcall */
f (0);
}
@@ -15,3 +15,7 @@ void h ()
{
g (0);
}
+
+/* { dg-final { scan-assembler "@(PLT|plt)" { target i?86-*-* x86_64-*-* } } } */
+/* { dg-final { scan-assembler "@(PLT|plt)" { target { powerpc*-*-linux* && ilp32 } } } } */
+/* { dg-final { scan-assembler "bl f\n\\s*nop" { target { powerpc*-*-linux* && lp64 } } } } */
diff --git a/gcc/testsuite/gcc.dg/pr81592.c b/gcc/testsuite/gcc.dg/pr81592.c
new file mode 100644
index 00000000000..a37703af497
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr81592.c
@@ -0,0 +1,20 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -Wall -fno-strict-overflow -Wstrict-overflow=2 -fsanitize=signed-integer-overflow" } */
+
+#include <stdio.h>
+
+int proc_keys_show(long expiry, long now)
+{
+ unsigned long timo;
+ char xbuf[4];
+
+ if (now < expiry) {
+ timo = expiry - now;
+ if (timo < 60)
+ sprintf(xbuf, "%lus", timo);
+ }
+
+ return 0;
+}
+
+
diff --git a/gcc/testsuite/gcc.dg/pr82123.c b/gcc/testsuite/gcc.dg/pr82123.c
new file mode 100644
index 00000000000..34109f1aec4
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr82123.c
@@ -0,0 +1,12 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -Wformat-overflow=1" } */
+
+void acpi_gpiochip_request_interrupt(unsigned short s)
+{
+ char name[3];
+ unsigned int pin = s;
+
+ if (pin <= 255)
+ __builtin_sprintf(name, "%02X", pin);
+}
+
diff --git a/gcc/testsuite/gcc.dg/pr83723.c b/gcc/testsuite/gcc.dg/pr83723.c
new file mode 100644
index 00000000000..a64fe9b56b9
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr83723.c
@@ -0,0 +1,20 @@
+/* PR rtl-optimization/83723 */
+/* { dg-do compile } */
+/* { dg-options "-g -O2" } */
+/* { dg-additional-options "-mfpmath=sse -msse2" { target i?86-*-* x86_64-*-* } } */
+/* { dg-additional-options "-fpie" { target pie } } */
+
+int foo (void);
+float bar (float);
+int *v;
+
+void
+baz (void)
+{
+ float a = bar (0.0);
+ bar (a);
+ if (v)
+ bar (1.0);
+ if (a < 1.0)
+ a = foo () / a;
+}
diff --git a/gcc/testsuite/gcc.dg/pr84095.c b/gcc/testsuite/gcc.dg/pr84095.c
new file mode 100644
index 00000000000..af2bc0e3f25
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr84095.c
@@ -0,0 +1,14 @@
+/* PR tree-optimization/84095 - false-positive -Wrestrict warnings for
+ memcpy within array
+ { dg-do compile }
+ { dg-options "-O2 -Wrestrict" } */
+
+struct { int i; } a[8];
+
+void f (void)
+{
+ int i;
+
+ for (i = 1; i < 8; i++)
+ __builtin_memcpy (&a[i], &a[0], sizeof(a[0])); /* { dg-bogus "\\\[-Wrestrict]" } */
+}
diff --git a/gcc/testsuite/gcc.dg/pr84334.c b/gcc/testsuite/gcc.dg/pr84334.c
new file mode 100644
index 00000000000..8cfde69bd82
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr84334.c
@@ -0,0 +1,12 @@
+/* PR tree-optimization/84334 */
+/* { dg-do compile } */
+/* { dg-options "-Ofast -frounding-math" } */
+
+float
+foo (void)
+{
+ float a = 9.999999974752427078783512115478515625e-7f;
+ float b = 1.999999994950485415756702423095703125e-6f;
+ float c = 4.999999873689375817775726318359375e-6f;
+ return a + b + c;
+}
diff --git a/gcc/testsuite/gcc.dg/pr84452.c b/gcc/testsuite/gcc.dg/pr84452.c
new file mode 100644
index 00000000000..6e961cb04e8
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr84452.c
@@ -0,0 +1,14 @@
+/* PR tree-optimization/84452 */
+/* { dg-do compile } */
+/* { dg-options "-Ofast" } */
+
+double pow (double, double) __attribute__((simd));
+double exp (double) __attribute__((simd));
+extern double a[1024], b[1024];
+
+void
+foo (void)
+{
+ for (int i = 0; i < 1024; ++i)
+ a[i] = pow (2.0, b[i]);
+}
diff --git a/gcc/testsuite/gcc.dg/pr84503-1.c b/gcc/testsuite/gcc.dg/pr84503-1.c
new file mode 100644
index 00000000000..03fb2fbd9a5
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr84503-1.c
@@ -0,0 +1,68 @@
+/* PR tree-optimization/84503 */
+/* { dg-do run } */
+/* { dg-options "-O3" } */
+
+typedef __SIZE_TYPE__ size_t;
+typedef __UINTPTR_TYPE__ uintptr_t;
+
+struct S { int a; unsigned short b; int c, d, e; long f, g, h; int i, j; };
+static struct S *k;
+static size_t l = 0;
+int m;
+
+static int
+bar (void)
+{
+ unsigned i;
+ int j;
+ if (k[0].c == 0)
+ {
+ ++m;
+ size_t n = l * 2;
+ struct S *o;
+ o = (struct S *) __builtin_realloc (k, sizeof (struct S) * n);
+ if (!o)
+ __builtin_exit (0);
+ k = o;
+ for (i = l; i < n; i++)
+ {
+ void *p = (void *) &k[i];
+ int q = 0;
+ size_t r = sizeof (struct S);
+ if ((((uintptr_t) p) % __alignof__ (long)) == 0
+ && r % sizeof (long) == 0)
+ {
+ long __attribute__ ((may_alias)) *s = (long *) p;
+ long *t = (long *) ((char *) s + r);
+ while (s < t)
+ *s++ = 0;
+ }
+ else
+ __builtin_memset (p, q, r);
+ k[i].c = i + 1;
+ k[i].a = -1;
+ }
+ k[n - 1].c = 0;
+ k[0].c = l;
+ l = n;
+ }
+ j = k[0].c;
+ k[0].c = k[j].c;
+ return j;
+}
+
+int
+main ()
+{
+ k = (struct S *) __builtin_malloc (sizeof (struct S));
+ if (!k)
+ __builtin_exit (0);
+ __builtin_memset (k, '\0', sizeof (struct S));
+ k->a = -1;
+ l = 1;
+ for (int i = 0; i < 15; ++i)
+ bar ();
+ if (m != 4)
+ __builtin_abort ();
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.dg/pr84503-2.c b/gcc/testsuite/gcc.dg/pr84503-2.c
new file mode 100644
index 00000000000..76701f07938
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/pr84503-2.c
@@ -0,0 +1,5 @@
+/* PR tree-optimization/84503 */
+/* { dg-do run } */
+/* { dg-options "-O3 -fno-tree-vectorize -fno-ivopts" } */
+
+#include "pr84503-1.c"
diff --git a/gcc/testsuite/gcc.dg/torture/pr84417.c b/gcc/testsuite/gcc.dg/torture/pr84417.c
new file mode 100644
index 00000000000..9c2b023254b
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/torture/pr84417.c
@@ -0,0 +1,9 @@
+/* { dg-do compile } */
+/* { dg-require-effective-target int32plus } */
+
+void fn1()
+{
+ __attribute__((__vector_size__(sizeof(double)))) double x;
+ double *a = (double *)&x;
+ *a + *(a + 8446744073709551615LL);
+}
diff --git a/gcc/testsuite/gcc.dg/vect/pr84357.c b/gcc/testsuite/gcc.dg/vect/pr84357.c
new file mode 100644
index 00000000000..cd3cc4a92ed
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/vect/pr84357.c
@@ -0,0 +1,31 @@
+/* { dg-do compile } */
+/* { dg-additional-options "-Wall" } */
+
+#define COUNT 32
+
+typedef struct s1 {
+ unsigned char c;
+} s1;
+
+typedef struct s2
+{
+ char pad;
+ s1 arr[COUNT];
+} s2;
+
+typedef struct s3 {
+ s1 arr[COUNT];
+} s3;
+
+s2 * get_s2();
+s3 * gActiveS3;
+void foo()
+{
+ s3 * three = gActiveS3;
+ s2 * two = get_s2();
+
+ for (int i = 0; i < COUNT; i++)
+ {
+ two->arr[i].c = three->arr[i].c;
+ }
+}
diff --git a/gcc/testsuite/gcc.dg/vect/pr84419.c b/gcc/testsuite/gcc.dg/vect/pr84419.c
new file mode 100644
index 00000000000..4864f8eb934
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/vect/pr84419.c
@@ -0,0 +1,21 @@
+#include <string.h>
+
+#define SIZE 400
+
+int foo[SIZE];
+char bar[SIZE];
+
+void __attribute__ ((noinline)) foo_func(void)
+{
+ int i;
+ for (i = 1; i < SIZE; i++)
+ if (bar[i])
+ foo[i] = 1;
+}
+
+int main()
+{
+ memset(bar, 1, sizeof(bar));
+ foo_func();
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.dg/vmx/extract-be-order.c b/gcc/testsuite/gcc.dg/vmx/extract-be-order.c
index 5c09471d99b..f03c356781a 100644
--- a/gcc/testsuite/gcc.dg/vmx/extract-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/extract-be-order.c
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx -w" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/extract-vsx-be-order.c b/gcc/testsuite/gcc.dg/vmx/extract-vsx-be-order.c
index 8c965f6fd66..509a7b62181 100644
--- a/gcc/testsuite/gcc.dg/vmx/extract-vsx-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/extract-vsx-be-order.c
@@ -1,6 +1,7 @@
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx -w" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/insert-be-order.c b/gcc/testsuite/gcc.dg/vmx/insert-be-order.c
index 592ef28c0fc..7aa28f85b77 100644
--- a/gcc/testsuite/gcc.dg/vmx/insert-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/insert-be-order.c
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/insert-vsx-be-order.c b/gcc/testsuite/gcc.dg/vmx/insert-vsx-be-order.c
index 6cb59dd8a63..569a86606c7 100644
--- a/gcc/testsuite/gcc.dg/vmx/insert-vsx-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/insert-vsx-be-order.c
@@ -1,6 +1,7 @@
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/ld-be-order.c b/gcc/testsuite/gcc.dg/vmx/ld-be-order.c
index 903b997c9a3..f7361cfd372 100644
--- a/gcc/testsuite/gcc.dg/vmx/ld-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/ld-be-order.c
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/ld-vsx-be-order.c b/gcc/testsuite/gcc.dg/vmx/ld-vsx-be-order.c
index c870c55e856..f02366756b9 100644
--- a/gcc/testsuite/gcc.dg/vmx/ld-vsx-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/ld-vsx-be-order.c
@@ -1,6 +1,7 @@
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/lde-be-order.c b/gcc/testsuite/gcc.dg/vmx/lde-be-order.c
index 9a6d5bae52d..53c3b78a71d 100644
--- a/gcc/testsuite/gcc.dg/vmx/lde-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/lde-be-order.c
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/ldl-be-order.c b/gcc/testsuite/gcc.dg/vmx/ldl-be-order.c
index 397849fe1f5..49ba48b0462 100644
--- a/gcc/testsuite/gcc.dg/vmx/ldl-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/ldl-be-order.c
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/ldl-vsx-be-order.c b/gcc/testsuite/gcc.dg/vmx/ldl-vsx-be-order.c
index 222d1db0d75..edac6764fc2 100644
--- a/gcc/testsuite/gcc.dg/vmx/ldl-vsx-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/ldl-vsx-be-order.c
@@ -1,6 +1,7 @@
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/merge-be-order.c b/gcc/testsuite/gcc.dg/vmx/merge-be-order.c
index 2de888fa444..4cc0d4490e5 100644
--- a/gcc/testsuite/gcc.dg/vmx/merge-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/merge-be-order.c
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/merge-vsx-be-order.c b/gcc/testsuite/gcc.dg/vmx/merge-vsx-be-order.c
index b01208d5f40..67193278ae6 100644
--- a/gcc/testsuite/gcc.dg/vmx/merge-vsx-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/merge-vsx-be-order.c
@@ -1,6 +1,7 @@
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/mult-even-odd-be-order.c b/gcc/testsuite/gcc.dg/vmx/mult-even-odd-be-order.c
index 6ba12d04634..84a89515b0d 100644
--- a/gcc/testsuite/gcc.dg/vmx/mult-even-odd-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/mult-even-odd-be-order.c
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/pack-be-order.c b/gcc/testsuite/gcc.dg/vmx/pack-be-order.c
index c400fc882dd..3e71b3130a1 100644
--- a/gcc/testsuite/gcc.dg/vmx/pack-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/pack-be-order.c
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/perm-be-order.c b/gcc/testsuite/gcc.dg/vmx/perm-be-order.c
index 604f63dc95f..3a7942840f5 100644
--- a/gcc/testsuite/gcc.dg/vmx/perm-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/perm-be-order.c
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/splat-be-order.c b/gcc/testsuite/gcc.dg/vmx/splat-be-order.c
index e265ae4be20..96d086939ef 100644
--- a/gcc/testsuite/gcc.dg/vmx/splat-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/splat-be-order.c
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/splat-vsx-be-order.c b/gcc/testsuite/gcc.dg/vmx/splat-vsx-be-order.c
index 620a31f7692..e0dca6b5dfb 100644
--- a/gcc/testsuite/gcc.dg/vmx/splat-vsx-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/splat-vsx-be-order.c
@@ -1,6 +1,7 @@
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/st-be-order.c b/gcc/testsuite/gcc.dg/vmx/st-be-order.c
index 1a7b01bb5a1..e1cd826665a 100644
--- a/gcc/testsuite/gcc.dg/vmx/st-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/st-be-order.c
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/st-vsx-be-order.c b/gcc/testsuite/gcc.dg/vmx/st-vsx-be-order.c
index 48814462106..1ce8f41552e 100644
--- a/gcc/testsuite/gcc.dg/vmx/st-vsx-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/st-vsx-be-order.c
@@ -1,6 +1,7 @@
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/ste-be-order.c b/gcc/testsuite/gcc.dg/vmx/ste-be-order.c
index 75f2004f372..cfc6877af3c 100644
--- a/gcc/testsuite/gcc.dg/vmx/ste-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/ste-be-order.c
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/stl-be-order.c b/gcc/testsuite/gcc.dg/vmx/stl-be-order.c
index 7f00a036499..28fd9e77454 100644
--- a/gcc/testsuite/gcc.dg/vmx/stl-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/stl-be-order.c
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/stl-vsx-be-order.c b/gcc/testsuite/gcc.dg/vmx/stl-vsx-be-order.c
index 65e2f256d06..1abd3edefe9 100644
--- a/gcc/testsuite/gcc.dg/vmx/stl-vsx-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/stl-vsx-be-order.c
@@ -1,6 +1,7 @@
/* { dg-skip-if "" { powerpc*-*-darwin* } } */
/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mvsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/sum2s-be-order.c b/gcc/testsuite/gcc.dg/vmx/sum2s-be-order.c
index 0981cc1d52b..03c6faa0ca6 100644
--- a/gcc/testsuite/gcc.dg/vmx/sum2s-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/sum2s-be-order.c
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/unpack-be-order.c b/gcc/testsuite/gcc.dg/vmx/unpack-be-order.c
index 6eb98f4cf72..0d65a4fafbb 100644
--- a/gcc/testsuite/gcc.dg/vmx/unpack-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/unpack-be-order.c
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx -Wno-shift-overflow" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx -Wno-shift-overflow" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.dg/vmx/vsums-be-order.c b/gcc/testsuite/gcc.dg/vmx/vsums-be-order.c
index e4a34e9f966..1f640e76112 100644
--- a/gcc/testsuite/gcc.dg/vmx/vsums-be-order.c
+++ b/gcc/testsuite/gcc.dg/vmx/vsums-be-order.c
@@ -1,4 +1,5 @@
-/* { dg-options "-maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -maltivec=be -mabi=altivec -std=gnu99 -mno-vsx" } */
#include "harness.h"
diff --git a/gcc/testsuite/gcc.target/aarch64/asm-2.c b/gcc/testsuite/gcc.target/aarch64/asm-2.c
index 3f978f5b234..65b3a84cfa1 100644
--- a/gcc/testsuite/gcc.target/aarch64/asm-2.c
+++ b/gcc/testsuite/gcc.target/aarch64/asm-2.c
@@ -6,5 +6,5 @@ int x;
void
f (void)
{
- asm volatile ("%a0" :: "X" (&x));
+ asm volatile ("%a0" :: "X" (&x)); /* { dg-error "invalid address mode" "" { target ilp32 } } */
}
diff --git a/gcc/testsuite/gcc.target/aarch64/asm-4.c b/gcc/testsuite/gcc.target/aarch64/asm-4.c
new file mode 100644
index 00000000000..abe2af5f1d1
--- /dev/null
+++ b/gcc/testsuite/gcc.target/aarch64/asm-4.c
@@ -0,0 +1,10 @@
+/* { dg-do compile } */
+/* { dg-options "-O0" } */
+
+int x;
+
+void
+f (void)
+{
+ asm volatile ("%a0" :: "X" (__builtin_extend_pointer (&x)));
+}
diff --git a/gcc/testsuite/gcc.target/arm/multilib.exp b/gcc/testsuite/gcc.target/arm/multilib.exp
index c54bca85fd9..04da2b0a20e 100644
--- a/gcc/testsuite/gcc.target/arm/multilib.exp
+++ b/gcc/testsuite/gcc.target/arm/multilib.exp
@@ -422,6 +422,7 @@ if {[multilib_config "rmprofile"] } {
{-mcpu=cortex-m23 -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.base/nofp"
{-mcpu=cortex-m33 -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.main/nofp"
{-mcpu=cortex-m7+nofp.dp -mfpu=auto -mfloat-abi=soft} "thumb/v7e-m/nofp"
+ {-mcpu=cortex-r52 -mfpu=auto -mfloat-abi=soft} "thumb/v7/nofp"
{-mcpu=cortex-m0 -mfpu=vfpv3xd -mfloat-abi=soft} "thumb/v6-m/nofp"
{-mcpu=cortex-m1 -mfpu=vfpv3xd -mfloat-abi=soft} "thumb/v6-m/nofp"
{-mcpu=cortex-m3 -mfpu=vfpv3xd -mfloat-abi=soft} "thumb/v7-m/nofp"
@@ -466,6 +467,7 @@ if {[multilib_config "rmprofile"] } {
{-mcpu=cortex-m7 -mfpu=auto -mfloat-abi=hard} "thumb/v7e-m+dp/hard"
{-mcpu=cortex-m33 -mfpu=auto -mfloat-abi=hard} "thumb/v8-m.main+fp/hard"
{-mcpu=cortex-m7+nofp.dp -mfpu=auto -mfloat-abi=hard} "thumb/v7e-m+fp/hard"
+ {-mcpu=cortex-r52 -mfpu=auto -mfloat-abi=hard} "thumb/v7+fp/hard"
{-mcpu=cortex-m4 -mfpu=vfpv3xd -mfloat-abi=hard} "thumb/v7e-m+fp/hard"
{-mcpu=cortex-m7 -mfpu=vfpv3xd -mfloat-abi=hard} "thumb/v7e-m+fp/hard"
{-mcpu=cortex-m33 -mfpu=vfpv3xd -mfloat-abi=hard} "thumb/v8-m.main+fp/hard"
@@ -494,6 +496,7 @@ if {[multilib_config "rmprofile"] } {
{-mcpu=cortex-m23 -mfpu=auto -mfloat-abi=softfp} "thumb/v8-m.base/nofp"
{-mcpu=cortex-m33 -mfpu=auto -mfloat-abi=softfp} "thumb/v8-m.main+fp/softfp"
{-mcpu=cortex-m7+nofp.dp -mfpu=auto -mfloat-abi=softfp} "thumb/v7e-m+fp/softfp"
+ {-mcpu=cortex-r52 -mfpu=auto -mfloat-abi=softfp} "thumb/v7+fp/softfp"
{-mcpu=cortex-m0 -mfpu=vfpv3xd -mfloat-abi=softfp} "thumb/v6-m/nofp"
{-mcpu=cortex-m1 -mfpu=vfpv3xd -mfloat-abi=softfp} "thumb/v6-m/nofp"
{-mcpu=cortex-m3 -mfpu=vfpv3xd -mfloat-abi=softfp} "thumb/v7-m/nofp"
@@ -545,6 +548,12 @@ if {[multilib_config "rmprofile"] } {
{-march=armv8-m.main+fp.dp -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.main/nofp"
{-march=armv8-m.main+fp+dsp -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.main/nofp"
{-march=armv8-m.main+fp.dp+dsp -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.main/nofp"
+ {-march=armv8-r -mfpu=auto -mfloat-abi=soft} "thumb/v7/nofp"
+ {-march=armv8-r+crc -mfpu=auto -mfloat-abi=soft} "thumb/v7/nofp"
+ {-march=armv8-r+simd -mfpu=auto -mfloat-abi=soft} "thumb/v7/nofp"
+ {-march=armv8-r+crc+simd -mfpu=auto -mfloat-abi=soft} "thumb/v7/nofp"
+ {-march=armv8-r+crypto -mfpu=auto -mfloat-abi=soft} "thumb/v7/nofp"
+ {-march=armv8-r+crc+crypto -mfpu=auto -mfloat-abi=soft} "thumb/v7/nofp"
{-march=armv6-m -mfpu=vfpv3xd -mfloat-abi=soft} "thumb/v6-m/nofp"
{-march=armv7-m -mfpu=vfpv3xd -mfloat-abi=soft} "thumb/v7-m/nofp"
{-march=armv7e-m -mfpu=vfpv3xd -mfloat-abi=soft} "thumb/v7e-m/nofp"
@@ -606,6 +615,10 @@ if {[multilib_config "rmprofile"] } {
{-march=armv8-m.main+fp.dp -mfpu=auto -mfloat-abi=hard} "thumb/v8-m.main+dp/hard"
{-march=armv8-m.main+fp+dsp -mfpu=auto -mfloat-abi=hard} "thumb/v8-m.main+fp/hard"
{-march=armv8-m.main+fp.dp+dsp -mfpu=auto -mfloat-abi=hard} "thumb/v8-m.main+dp/hard"
+ {-march=armv8-r+simd -mfpu=auto -mfloat-abi=hard} "thumb/v7+fp/hard"
+ {-march=armv8-r+crc+simd -mfpu=auto -mfloat-abi=hard} "thumb/v7+fp/hard"
+ {-march=armv8-r+crypto -mfpu=auto -mfloat-abi=hard} "thumb/v7+fp/hard"
+ {-march=armv8-r+crc+crypto -mfpu=auto -mfloat-abi=hard} "thumb/v7+fp/hard"
{-march=armv7e-m -mfpu=vfpv3xd -mfloat-abi=hard} "thumb/v7e-m+fp/hard"
{-march=armv8-m.main -mfpu=vfpv3xd -mfloat-abi=hard} "thumb/v8-m.main+fp/hard"
{-march=armv7e-m+fp -mfpu=vfpv3xd -mfloat-abi=hard} "thumb/v7e-m+fp/hard"
@@ -657,6 +670,12 @@ if {[multilib_config "rmprofile"] } {
{-march=armv8-m.main+fp.dp -mfpu=auto -mfloat-abi=softfp} "thumb/v8-m.main+dp/softfp"
{-march=armv8-m.main+fp+dsp -mfpu=auto -mfloat-abi=softfp} "thumb/v8-m.main+fp/softfp"
{-march=armv8-m.main+fp.dp+dsp -mfpu=auto -mfloat-abi=softfp} "thumb/v8-m.main+dp/softfp"
+ {-march=armv8-r -mfpu=auto -mfloat-abi=softfp} "thumb/v7/nofp"
+ {-march=armv8-r+crc -mfpu=auto -mfloat-abi=softfp} "thumb/v7/nofp"
+ {-march=armv8-r+simd -mfpu=auto -mfloat-abi=softfp} "thumb/v7+fp/softfp"
+ {-march=armv8-r+crc+simd -mfpu=auto -mfloat-abi=softfp} "thumb/v7+fp/softfp"
+ {-march=armv8-r+crypto -mfpu=auto -mfloat-abi=softfp} "thumb/v7+fp/softfp"
+ {-march=armv8-r+crc+crypto -mfpu=auto -mfloat-abi=softfp} "thumb/v7+fp/softfp"
{-march=armv6-m -mfpu=vfpv3xd -mfloat-abi=softfp} "thumb/v6-m/nofp"
{-march=armv7-m -mfpu=vfpv3xd -mfloat-abi=softfp} "thumb/v7-m/nofp"
{-march=armv7e-m -mfpu=vfpv3xd -mfloat-abi=softfp} "thumb/v7e-m+fp/softfp"
diff --git a/gcc/testsuite/gcc.target/i386/avx2-vpaddq-3.c b/gcc/testsuite/gcc.target/i386/avx2-vpaddq-3.c
index d9b861221f7..e5a8473abd4 100644
--- a/gcc/testsuite/gcc.target/i386/avx2-vpaddq-3.c
+++ b/gcc/testsuite/gcc.target/i386/avx2-vpaddq-3.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-mavx2 -mno-prefer-avx128 -O2 -ftree-vectorize -save-temps" } */
+/* { dg-options "-mavx2 -mno-prefer-avx128 -O2 -ftree-vectorize -mtune=generic -save-temps" } */
/* { dg-require-effective-target avx2 } */
diff --git a/gcc/testsuite/gcc.target/i386/avx2-vpsubq-3.c b/gcc/testsuite/gcc.target/i386/avx2-vpsubq-3.c
index 6f3ce1f0db9..3843932f4f7 100644
--- a/gcc/testsuite/gcc.target/i386/avx2-vpsubq-3.c
+++ b/gcc/testsuite/gcc.target/i386/avx2-vpsubq-3.c
@@ -1,5 +1,5 @@
/* { dg-do run } */
-/* { dg-options "-mavx2 -mno-prefer-avx128 -O2 -ftree-vectorize -save-temps" } */
+/* { dg-options "-mavx2 -mno-prefer-avx128 -O2 -ftree-vectorize -mtune=generic -save-temps" } */
/* { dg-require-effective-target avx2 } */
diff --git a/gcc/testsuite/gcc.target/i386/cet-intrin-3.c b/gcc/testsuite/gcc.target/i386/cet-intrin-3.c
index bcd7203fdb4..b98c1e928d5 100644
--- a/gcc/testsuite/gcc.target/i386/cet-intrin-3.c
+++ b/gcc/testsuite/gcc.target/i386/cet-intrin-3.c
@@ -10,24 +10,22 @@
unsigned int f1 ()
{
- unsigned int x = 0;
- return _rdsspd (x);
+ return _get_ssp ();
}
void f3 (unsigned int _a)
{
- _incsspd (_a);
+ _inc_ssp (_a);
}
#ifdef __x86_64__
unsigned long long f2 ()
{
- unsigned long long x = 0;
- return _rdsspq (x);
+ return _get_ssp ();
}
void f4 (unsigned int _a)
{
- _incsspq (_a);
+ _inc_ssp (_a);
}
#endif
diff --git a/gcc/testsuite/gcc.target/i386/cet-intrin-4.c b/gcc/testsuite/gcc.target/i386/cet-intrin-4.c
index 437a4cd690c..86957b2eebe 100644
--- a/gcc/testsuite/gcc.target/i386/cet-intrin-4.c
+++ b/gcc/testsuite/gcc.target/i386/cet-intrin-4.c
@@ -5,27 +5,4 @@
/* { dg-final { scan-assembler "incssp\[dq]\[ \t]+(%|)\[re]di" { target { ! ia32 } } } } */
#include <immintrin.h>
-
-unsigned int f1 ()
-{
- unsigned int x = 0;
- return _rdsspd (x);
-}
-
-void f3 (unsigned int _a)
-{
- _incsspd (_a);
-}
-
-#ifdef __x86_64__
-unsigned long long f2 ()
-{
- unsigned long long x = 0;
- return _rdsspq (x);
-}
-
-void f4 (unsigned int _a)
-{
- _incsspq (_a);
-}
-#endif
+#include "cet-intrin-3.c"
diff --git a/gcc/testsuite/gcc.target/i386/cet-rdssp-1.c b/gcc/testsuite/gcc.target/i386/cet-rdssp-1.c
index fb50ff43504..6cd24f63384 100644
--- a/gcc/testsuite/gcc.target/i386/cet-rdssp-1.c
+++ b/gcc/testsuite/gcc.target/i386/cet-rdssp-1.c
@@ -5,18 +5,18 @@ void _exit(int status) __attribute__ ((__noreturn__));
#ifdef __x86_64__
# define incssp(x) __builtin_ia32_incsspq (x)
-# define rdssp(x) __builtin_ia32_rdsspq (x)
+# define rdssp() __builtin_ia32_rdsspq ()
#else
# define incssp(x) __builtin_ia32_incsspd (x)
-# define rdssp(x) __builtin_ia32_rdsspd (x)
+# define rdssp() __builtin_ia32_rdsspd ()
#endif
static void
__attribute__ ((noinline, noclone))
test (unsigned long frames)
{
- unsigned long ssp = 0;
- ssp = rdssp (ssp);
+ unsigned long ssp;
+ ssp = rdssp ();
if (ssp != 0)
{
unsigned long tmp = frames;
diff --git a/gcc/testsuite/gcc.target/i386/chkp-stropt-17.c b/gcc/testsuite/gcc.target/i386/chkp-stropt-17.c
index 1be4922fd53..faf304c3303 100644
--- a/gcc/testsuite/gcc.target/i386/chkp-stropt-17.c
+++ b/gcc/testsuite/gcc.target/i386/chkp-stropt-17.c
@@ -51,7 +51,7 @@ void test_strcpy (void)
void test_strcat (int n)
{
- strcat (a, a + 3); /* { dg-warning ".strcat\.chkp. accessing 0 or more bytes at offsets 0 and 3 may overlap 1 byte" } */
+ strcat (a, a + 3); /* { dg-warning ".strcat\.chkp. accessing 4 or more bytes at offsets 0 and 3 may overlap 1 byte at offset 3" } */
}
void test_strncat (int n)
diff --git a/gcc/testsuite/gcc.target/i386/indirect-thunk-11.c b/gcc/testsuite/gcc.target/i386/indirect-thunk-11.c
new file mode 100644
index 00000000000..afa89ff227b
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/indirect-thunk-11.c
@@ -0,0 +1,7 @@
+/* { dg-do compile { target { ! x32 } } } */
+/* { dg-options "-O2 -mindirect-branch=thunk-extern -fcf-protection -mcet -fcheck-pointer-bounds -mmpx" } */
+
+void
+bar (void)
+{ /* { dg-error "'-mindirect-branch=thunk-extern', '-fcf-protection=branch' and '-fcheck-pointer-bounds' are not compatible" } */
+}
diff --git a/gcc/testsuite/gcc.target/i386/indirect-thunk-12.c b/gcc/testsuite/gcc.target/i386/indirect-thunk-12.c
new file mode 100644
index 00000000000..d456973ee6d
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/indirect-thunk-12.c
@@ -0,0 +1,7 @@
+/* { dg-do compile { target { ! x32 } } } */
+/* { dg-options "-O2 -mindirect-branch=thunk -fcf-protection -mcet -fcheck-pointer-bounds -mmpx" } */
+
+void
+bar (void)
+{
+}
diff --git a/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-12.c b/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-12.c
new file mode 100644
index 00000000000..24a1a08a3ca
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-12.c
@@ -0,0 +1,8 @@
+/* { dg-do compile { target { ! x32 } } } */
+/* { dg-options "-O2 -mindirect-branch=keep -fcf-protection -mcet -fcheck-pointer-bounds -mmpx" } */
+
+__attribute__ ((indirect_branch("thunk-extern")))
+void
+bar (void)
+{ /* { dg-error "'-mindirect-branch=thunk-extern', '-fcf-protection=branch' and '-fcheck-pointer-bounds' are not compatible" } */
+}
diff --git a/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-13.c b/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-13.c
new file mode 100644
index 00000000000..ff2fccae935
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-13.c
@@ -0,0 +1,8 @@
+/* { dg-do compile { target { ! x32 } } } */
+/* { dg-options "-O2 -mindirect-branch=keep -fcf-protection -mcet -fcheck-pointer-bounds -mmpx" } */
+
+__attribute__ ((indirect_branch("thunk-inline")))
+void
+bar (void)
+{
+}
diff --git a/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-14.c b/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-14.c
new file mode 100644
index 00000000000..669e56d7726
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-14.c
@@ -0,0 +1,14 @@
+/* { dg-do compile { target *-*-linux* } } */
+/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -fno-pic -fplt -mindirect-branch=keep -fcf-protection -mcet" } */
+
+extern void (*bar) (void);
+
+__attribute__ ((indirect_branch("thunk-extern")))
+void
+foo (void)
+{
+ bar ();
+}
+
+/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" } } */
+/* { dg-final { scan-assembler-not "jmp\[ \t\]*__x86_indirect_thunk_nt" } } */
diff --git a/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-15.c b/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-15.c
new file mode 100644
index 00000000000..c033fb23879
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-15.c
@@ -0,0 +1,14 @@
+/* { dg-do compile { target *-*-linux* } } */
+/* { dg-options "-O2 -mindirect-branch-register -mfunction-return=keep -fno-pic -fplt -mindirect-branch=keep -fcf-protection -mcet" } */
+
+extern void (*bar) (void);
+
+__attribute__ ((indirect_branch("thunk-extern")))
+void
+foo (void)
+{
+ bar ();
+}
+
+/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" } } */
+/* { dg-final { scan-assembler-not "jmp\[ \t\]*__x86_indirect_thunk_nt" } } */
diff --git a/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-16.c b/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-16.c
new file mode 100644
index 00000000000..0244edf53b7
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/indirect-thunk-attr-16.c
@@ -0,0 +1,13 @@
+/* { dg-do compile { target *-*-linux* } } */
+/* { dg-options "-O2 -mindirect-branch-register -mfunction-return=keep -fno-pic -fplt -mindirect-branch=keep -fcf-protection -mcet" } */
+
+extern void (*bar) (void) __attribute__((nocf_check));
+
+__attribute__ ((indirect_branch("thunk-extern")))
+void
+foo (void)
+{
+ bar ();
+}
+
+/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_nt_(r|e)" } } */
diff --git a/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-10.c b/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-10.c
new file mode 100644
index 00000000000..2a982ab69f8
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-10.c
@@ -0,0 +1,12 @@
+/* { dg-do compile { target *-*-linux* } } */
+/* { dg-options "-O2 -mindirect-branch-register -mfunction-return=keep -fno-pic -fplt -mindirect-branch=thunk-extern -fcf-protection -mcet" } */
+
+extern void (*bar) (void) __attribute__((nocf_check));
+
+void
+foo (void)
+{
+ bar ();
+}
+
+/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk_nt_(r|e)" } } */
diff --git a/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-8.c b/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-8.c
new file mode 100644
index 00000000000..30d12cc0711
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-8.c
@@ -0,0 +1,13 @@
+/* { dg-do compile { target *-*-linux* } } */
+/* { dg-options "-O2 -mno-indirect-branch-register -mfunction-return=keep -fno-pic -fplt -mindirect-branch=thunk-extern -fcf-protection -mcet" } */
+
+extern void (*bar) (void);
+
+void
+foo (void)
+{
+ bar ();
+}
+
+/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" } } */
+/* { dg-final { scan-assembler-not "jmp\[ \t\]*__x86_indirect_thunk_nt" } } */
diff --git a/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-9.c b/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-9.c
new file mode 100644
index 00000000000..d714b0155df
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/indirect-thunk-extern-9.c
@@ -0,0 +1,13 @@
+/* { dg-do compile { target *-*-linux* } } */
+/* { dg-options "-O2 -mindirect-branch-register -mfunction-return=keep -fno-pic -fplt -mindirect-branch=thunk-extern -fcf-protection -mcet" } */
+
+extern void (*bar) (void);
+
+void
+foo (void)
+{
+ bar ();
+}
+
+/* { dg-final { scan-assembler "jmp\[ \t\]*__x86_indirect_thunk" } } */
+/* { dg-final { scan-assembler-not "jmp\[ \t\]*__x86_indirect_thunk_nt" } } */
diff --git a/gcc/testsuite/gcc.target/i386/pr57193.c b/gcc/testsuite/gcc.target/i386/pr57193.c
index ef209c9d211..5c6d7e495de 100644
--- a/gcc/testsuite/gcc.target/i386/pr57193.c
+++ b/gcc/testsuite/gcc.target/i386/pr57193.c
@@ -1,5 +1,5 @@
-/* { dg-do compile { target { ! ia32 } } } */
-/* { dg-options "-O2 -march=x86-64" } */
+/* { dg-do compile } */
+/* { dg-options "-O2 -msse2 -mno-sse3 -mtune=generic" } */
/* { dg-final { scan-assembler-times "movdqa" 2 } } */
#include <emmintrin.h>
diff --git a/gcc/testsuite/gcc.target/i386/pr70023.c b/gcc/testsuite/gcc.target/i386/pr70023.c
new file mode 100644
index 00000000000..5f6d138f28a
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/pr70023.c
@@ -0,0 +1,15 @@
+/* { dg-do compile { target int128 } } */
+/* { dg-options "-O -fno-sched-critical-path-heuristic -fschedule-insns -mavx -m8bit-idiv" } */
+
+typedef int v8si __attribute__ ((vector_size (32)));
+typedef __int128 i128;
+
+i128
+foo(int u16_0, int u64_0, i128 u128_0, i128 u128_1, v8si v32u32_0, v8si v32u32_1, v8si v32u64_1)
+{
+ v32u32_0[6] <<= u128_1 & 31;
+ v32u32_0 &= (v8si){v32u64_1[2], v32u32_1[6], 0xc5a661b, 0, 2};
+ u128_1 += 0x16fe7853d732;
+ v32u32_1 /= (v8si){v32u32_0[5], u128_1, 0x92d} | 1;
+ return u128_0 + v32u32_1[1];
+}
diff --git a/gcc/testsuite/gcc.target/i386/pr84146.c b/gcc/testsuite/gcc.target/i386/pr84146.c
index ba9b6336c0d..a14baa47532 100644
--- a/gcc/testsuite/gcc.target/i386/pr84146.c
+++ b/gcc/testsuite/gcc.target/i386/pr84146.c
@@ -1,6 +1,6 @@
/* PR target/84146 */
/* { dg-do compile } */
-/* { dg-options "-O2 -g -mcet -fcf-protection=full" } */
+/* { dg-options "-O2 -g -mcet -fcf-protection=full -fcompare-debug" } */
int __setjmp (void **);
void *buf[64];
diff --git a/gcc/testsuite/gcc.target/i386/pr84310-2.c b/gcc/testsuite/gcc.target/i386/pr84310-2.c
new file mode 100644
index 00000000000..e39a421e8d2
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/pr84310-2.c
@@ -0,0 +1,10 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -malign-loops=16" } */
+/* { dg-warning "is obsolete" "" { target *-*-* } 0 } */
+
+void
+c (void)
+{
+ for (;;)
+ ;
+}
diff --git a/gcc/testsuite/gcc.target/i386/pr84310.c b/gcc/testsuite/gcc.target/i386/pr84310.c
new file mode 100644
index 00000000000..f82327e45f3
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/pr84310.c
@@ -0,0 +1,8 @@
+/* { dg-do compile } */
+/* { dg-options "-O2 -falign-functions=100000" } */
+/* { dg-error "is not between 0 and 65536" "" { target *-*-* } 0 } */
+
+void
+test_func (void)
+{
+}
diff --git a/gcc/testsuite/gcc.target/msp430/pr79242.c b/gcc/testsuite/gcc.target/msp430/pr79242.c
new file mode 100644
index 00000000000..d7ff8d38a3f
--- /dev/null
+++ b/gcc/testsuite/gcc.target/msp430/pr79242.c
@@ -0,0 +1,11 @@
+/* { dg-do compile } */
+/* { dg-skip-if "" { "*-*-*" } { "-mcpu=msp430" "-msmall" } { "" } } */
+/* { dg-options "-mcpu=msp430x" } */
+
+typedef _Complex __int20 C;
+
+C
+foo (C x, C y)
+{
+ return x + y;
+}
diff --git a/gcc/testsuite/gcc.target/powerpc/altivec-7-le.c b/gcc/testsuite/gcc.target/powerpc/altivec-7-le.c
index a1549118870..6f895336407 100644
--- a/gcc/testsuite/gcc.target/powerpc/altivec-7-le.c
+++ b/gcc/testsuite/gcc.target/powerpc/altivec-7-le.c
@@ -22,7 +22,7 @@
/* { dg-final { scan-assembler-times "vpkpx" 2 } } */
/* { dg-final { scan-assembler-times "vmulesb" 1 } } */
/* { dg-final { scan-assembler-times "vmulosb" 1 } } */
-/* { dg-final { scan-assembler-times "lxvd2x" 36 } } */
+/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxv\M} 36 } } */
/* { dg-final { scan-assembler-times "lvewx" 2 } } */
/* { dg-final { scan-assembler-times "lvxl" 1 } } */
/* { dg-final { scan-assembler-times "vupklsh" 1 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/altivec-consts.c b/gcc/testsuite/gcc.target/powerpc/altivec-consts.c
index 36cb60c32b7..d59f9b4cf1c 100644
--- a/gcc/testsuite/gcc.target/powerpc/altivec-consts.c
+++ b/gcc/testsuite/gcc.target/powerpc/altivec-consts.c
@@ -1,5 +1,5 @@
-/* { dg-do run { target { powerpc*-*-* && vmx_hw } } } */
-/* { dg-do compile { target { powerpc*-*-* && { ! vmx_hw } } } } */
+/* { dg-do run { target vmx_hw } } */
+/* { dg-do compile } */
/* { dg-require-effective-target powerpc_altivec_ok } */
/* { dg-options "-maltivec -mabi=altivec -O2" } */
diff --git a/gcc/testsuite/gcc.target/powerpc/builtins-3-p8.c b/gcc/testsuite/gcc.target/powerpc/builtins-3-p8.c
index 83d538b2cf3..a58680554d4 100644
--- a/gcc/testsuite/gcc.target/powerpc/builtins-3-p8.c
+++ b/gcc/testsuite/gcc.target/powerpc/builtins-3-p8.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-require-effective-target powerpc_p8vector_ok } */
-/* { dg-options "-mcpu=power8" } */
+/* { dg-options "-maltivec -mcpu=power8" } */
+/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power8" } } */
#include <altivec.h>
diff --git a/gcc/testsuite/gcc.target/powerpc/builtins-3-p9-runnable.c b/gcc/testsuite/gcc.target/powerpc/builtins-3-p9-runnable.c
index 24589b55639..3b67e5370a0 100644
--- a/gcc/testsuite/gcc.target/powerpc/builtins-3-p9-runnable.c
+++ b/gcc/testsuite/gcc.target/powerpc/builtins-3-p9-runnable.c
@@ -1,6 +1,6 @@
/* { dg-do run { target { powerpc64*-*-* && { lp64 && p9vector_hw } } } } */
/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power9" } } */
-/* { dg-options "-mcpu=power9 -O2 -mupper-regs-di" } */
+/* { dg-options "-mcpu=power9 -O2" } */
#include <altivec.h> // vector
diff --git a/gcc/testsuite/gcc.target/powerpc/builtins-3-p9.c b/gcc/testsuite/gcc.target/powerpc/builtins-3-p9.c
index 9dc53da58ad..146f8b73c98 100644
--- a/gcc/testsuite/gcc.target/powerpc/builtins-3-p9.c
+++ b/gcc/testsuite/gcc.target/powerpc/builtins-3-p9.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-require-effective-target powerpc_p9vector_ok } */
/* { dg-options "-mcpu=power9 -O1" } */
+/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power9" } } */
#include <altivec.h>
@@ -47,6 +48,43 @@ test_vull_bperm_vull_vuc (vector unsigned long long x,
return vec_bperm (x, y);
}
+vector signed char
+test_nabs_char (vector signed char x)
+{
+ return vec_nabs (x);
+}
+
+vector short
+test_nabs_short (vector short x)
+{
+ return vec_nabs (x);
+}
+
+vector int
+test_nabs_int (vector int x)
+{
+ return vec_nabs (x);
+}
+
+
+vector signed char
+test_neg_char (vector signed char x)
+{
+ return vec_neg (x);
+}
+
+vector short
+test_neg_short (vector short x)
+{
+ return vec_neg (x);
+}
+
+vector int
+test_neg_int (vector int x)
+{
+ return vec_neg (x);
+}
+
/* Expected test results:
test_ne_char 1 vcmpneb
@@ -57,6 +95,12 @@ test_vull_bperm_vull_vuc (vector unsigned long long x,
test_vull_bperm_vull_vuc 1 vbpermd
test_nabs_long_long (-O0) 1 xxspltib, 1 vsubudm, 1 vminsd
test_nabs_long_long (-O1) 1 vnegd, vminsd
+ test_nabs_char (P9) 1 xxspltib, 1 vsububm, 1 vminsb
+ test_nabs_short (P9) 1 xxspltib, 1 vsubuhm, 1 vminsh
+ test_nabs_int (P9) 1 vnegw, 1 vminsw
+ test_neg_char (P9) 1 xxspltib, 1 vsububm
+ test_neg_short (P9) 1 xxspltib, 1 vsubuhm
+ test_neg_int (P9) 1 vnegw
*/
/* { dg-final { scan-assembler-times "vcmpneb" 1 } } */
@@ -64,9 +108,16 @@ test_vull_bperm_vull_vuc (vector unsigned long long x,
/* { dg-final { scan-assembler-times "vcmpnew" 1 } } */
/* { dg-final { scan-assembler-times "vcmpequd" 1 } } */
/* { dg-final { scan-assembler-times "xxlnor" 1 } } */
-/* { dg-final { scan-assembler-times "xxspltib" 0 } } */
+/* { dg-final { scan-assembler-times "xxspltib" 4 } } */
/* { dg-final { scan-assembler-times "vsubudm" 0 } } */
+/* { dg-final { scan-assembler-times "vsububm" 2 } } */
+/* { dg-final { scan-assembler-times "vsubuhm" 2 } } */
+/* { dg-final { scan-assembler-times "vsubuwm" 0 } } */
+/* { dg-final { scan-assembler-times "vminsb" 1 } } */
+/* { dg-final { scan-assembler-times "vminsh" 1 } } */
+/* { dg-final { scan-assembler-times "vminsw" 1 } } */
/* { dg-final { scan-assembler-times "vminsd" 1 } } */
/* { dg-final { scan-assembler-times "vnegd" 2 } } */
+/* { dg-final { scan-assembler-times "vnegw" 2 } } */
/* { dg-final { scan-assembler-times "vbpermd" 1 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/builtins-3-runnable-p8.c b/gcc/testsuite/gcc.target/powerpc/builtins-3-runnable-p8.c
new file mode 100644
index 00000000000..104ae5587fb
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/builtins-3-runnable-p8.c
@@ -0,0 +1,162 @@
+/* { dg-do run { target { powerpc*-*-linux* && { p8vector_hw } } } } */
+/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=power8" } } */
+/* { dg-require-effective-target p8vector_hw } */
+/* { dg-options "-mcpu=power8" } */
+
+#include <altivec.h> // vector
+
+#ifdef DEBUG
+#include <stdio.h>
+#endif
+
+#define ALL 1
+#define EVEN 2
+#define ODD 3
+
+void abort (void);
+
+void test_int_result(int check, vector int vec_result, vector int vec_expected)
+{
+ int i;
+
+ for (i = 0; i < 4; i++) {
+ switch (check) {
+ case ALL:
+ break;
+ case EVEN:
+ if (i%2 == 0)
+ break;
+ else
+ continue;
+ case ODD:
+ if (i%2 != 0)
+ break;
+ else
+ continue;
+ }
+
+ if (vec_result[i] != vec_expected[i]) {
+#ifdef DEBUG
+ printf("Test_int_result: ");
+ printf("vec_result[%d] (%d) != vec_expected[%d] (%d)\n",
+ i, vec_result[i], i, vec_expected[i]);
+#else
+ abort();
+#endif
+ }
+ }
+}
+
+void test_unsigned_int_result(int check, vector unsigned int vec_result,
+ vector unsigned int vec_expected)
+{
+ int i;
+
+ for (i = 0; i < 4; i++) {
+ switch (check) {
+ case ALL:
+ break;
+ case EVEN:
+ if (i%2 == 0)
+ break;
+ else
+ continue;
+ case ODD:
+ if (i%2 != 0)
+ break;
+ else
+ continue;
+ }
+
+ if (vec_result[i] != vec_expected[i]) {
+#ifdef DEBUG
+ printf("Test_unsigned int_result: ");
+ printf("vec_result[%d] (%d) != vec_expected[%d] (%d)\n",
+ i, vec_result[i], i, vec_expected[i]);
+#else
+ abort();
+#endif
+ }
+
+ }
+}
+
+void test_result_sp(int check, vector float vec_result,
+ vector float vec_expected)
+{
+ int i;
+ for(i = 0; i<4; i++) {
+
+ switch (check) {
+ case ALL:
+ break;
+ case EVEN:
+ if (i%2 == 0)
+ break;
+ else
+ continue;
+ case ODD:
+ if (i%2 != 0)
+ break;
+ else
+ continue;
+ }
+
+ if (vec_result[i] != vec_expected[i]) {
+#ifdef DEBUG
+ printf("Test_result_sp: ");
+ printf("vec_result[%d] (%f) != vec_expected[%d] (%f)\n",
+ i, vec_result[i], i, vec_expected[i]);
+#else
+ abort();
+#endif
+ }
+ }
+}
+
+int main()
+{
+ int i;
+ vector unsigned int vec_unint, vec_uns_int_expected, vec_uns_int_result;
+ vector signed int vec_int, vec_int_expected, vec_int_result;
+ vector float vec_flt, vec_flt_result, vec_flt_expected;
+ vector long long int vec_ll_int0, vec_ll_int1;
+ vector long long unsigned int vec_ll_uns_int0, vec_ll_uns_int1;
+ vector double vec_dble0, vec_dble1, vec_dble_result, vec_dble_expected;
+
+ vec_ll_int0 = (vector long long int){ -12, -12345678901234 };
+ vec_ll_int1 = (vector long long int){ 12, 9876543210 };
+ vec_ll_uns_int0 = (vector unsigned long long int){ 102, 9753108642 };
+ vec_ll_uns_int1 = (vector unsigned long long int){ 23, 29 };
+
+ /* Convert two double precision vector float to vector int */
+ vec_dble0 = (vector double){-124.930, 81234.49};
+ vec_dble1 = (vector double){-24.370, 8354.99};
+ vec_int_expected = (vector signed int){-124, 81234, -24, 8354};
+ vec_int_result = vec_signed2 (vec_dble0, vec_dble1);
+ test_int_result (ALL, vec_int_result, vec_int_expected);
+
+ /* Convert two double precision vector float to vector unsigned int */
+ vec_dble0 = (vector double){124.930, 8134.49};
+ vec_dble1 = (vector double){24.370, 834.99};
+ vec_uns_int_expected = (vector unsigned int){124, 8134, 24, 834};
+ vec_uns_int_result = vec_unsigned2 (vec_dble0, vec_dble1);
+ test_unsigned_int_result (ALL, vec_uns_int_result,
+ vec_uns_int_expected);
+
+ /* conversion of two double precision vectors to single precision vector */
+ vec_flt_expected = (vector float){-12.00, -12345678901234.00, 12.00, 9876543210.00};
+ vec_flt_result = vec_float2 (vec_ll_int0, vec_ll_int1);
+ test_result_sp(ALL, vec_flt_result, vec_flt_expected);
+
+ vec_flt_expected = (vector float){102.00, 9753108642.00, 23.00, 29.00};
+ vec_flt_result = vec_float2 (vec_ll_uns_int0, vec_ll_uns_int1);
+ test_result_sp(ALL, vec_flt_result, vec_flt_expected);
+
+ vec_dble0 = (vector double){ 34.0, 97.0 };
+ vec_dble1 = (vector double){ 214.0, -5.5 };
+ vec_flt_expected = (vector float){34.0, 97.0, 214.0, -5.5};
+ vec_flt_result = vec_float2 (vec_dble0, vec_dble1);
+ test_result_sp(ALL, vec_flt_result, vec_flt_expected);
+}
+
diff --git a/gcc/testsuite/gcc.target/powerpc/builtins-3-runnable.c b/gcc/testsuite/gcc.target/powerpc/builtins-3-runnable.c
index 15498173a34..325796c8b64 100644
--- a/gcc/testsuite/gcc.target/powerpc/builtins-3-runnable.c
+++ b/gcc/testsuite/gcc.target/powerpc/builtins-3-runnable.c
@@ -1,7 +1,6 @@
-/* { dg-do run { target { powerpc*-*-linux* } } } */
+/* { dg-do run { target { vsx_hw } } } */
/* { dg-require-effective-target vsx_hw } */
-/* { dg-options "-O2 -mvsx -mcpu=power8" } */
-/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=power8" } } */
+/* { dg-options "-maltivec -mvsx" } */
#include <altivec.h> // vector
@@ -257,19 +256,6 @@ int main()
vec_flt_result = vec_float (vec_unint);
test_result_sp(ALL, vec_flt_result, vec_flt_expected);
- /* conversion of two double precision vectors to single precision vector */
- vec_flt_expected = (vector float){-12.00, -12345678901234.00, 12.00, 9876543210.00};
- vec_flt_result = vec_float2 (vec_ll_int0, vec_ll_int1);
- test_result_sp(ALL, vec_flt_result, vec_flt_expected);
-
- vec_flt_expected = (vector float){102.00, 9753108642.00, 23.00, 29.00};
- vec_flt_result = vec_float2 (vec_ll_uns_int0, vec_ll_uns_int1);
- test_result_sp(ALL, vec_flt_result, vec_flt_expected);
-
- vec_flt_expected = (vector float){34.0, 97.0, 214.0, -5.5};
- vec_flt_result = vec_float2 (vec_dble0, vec_dble1);
- test_result_sp(ALL, vec_flt_result, vec_flt_expected);
-
/* conversion of even words in double precision vector to single precision vector */
vec_flt_expected = (vector float){-12.00, 00.00, -12345678901234.00, 0.00};
vec_flt_result = vec_floate (vec_ll_int0);
@@ -308,13 +294,6 @@ int main()
vec_ll_int_result = vec_signed (vec_dble0);
test_ll_int_result (vec_ll_int_result, vec_ll_int_expected);
- /* Convert two double precision vector float to vector int */
- vec_dble0 = (vector double){-124.930, 81234.49};
- vec_dble1 = (vector double){-24.370, 8354.99};
- vec_int_expected = (vector signed int){-124, 81234, -24, 8354};
- vec_int_result = vec_signed2 (vec_dble0, vec_dble1);
- test_int_result (ALL, vec_int_result, vec_int_expected);
-
/* Convert double precision vector float to vector int, even words */
vec_dble0 = (vector double){-124.930, 81234.49};
vec_int_expected = (vector signed int){-124, 0, 81234, 0};
@@ -334,14 +313,6 @@ int main()
test_ll_unsigned_int_result (vec_ll_uns_int_result,
vec_ll_uns_int_expected);
- /* Convert two double precision vector float to vector unsigned int */
- vec_dble0 = (vector double){124.930, 8134.49};
- vec_dble1 = (vector double){24.370, 834.99};
- vec_uns_int_expected = (vector unsigned int){124, 8134, 24, 834};
- vec_uns_int_result = vec_unsigned2 (vec_dble0, vec_dble1);
- test_unsigned_int_result (ALL, vec_uns_int_result,
- vec_uns_int_expected);
-
/* Convert double precision vector float to vector unsigned int,
even words */
vec_dble0 = (vector double){3124.930, 8234.49};
diff --git a/gcc/testsuite/gcc.target/powerpc/builtins-3-vec_reve-runnable.c b/gcc/testsuite/gcc.target/powerpc/builtins-3-vec_reve-runnable.c
index f7c3c3d9138..de378e09697 100644
--- a/gcc/testsuite/gcc.target/powerpc/builtins-3-vec_reve-runnable.c
+++ b/gcc/testsuite/gcc.target/powerpc/builtins-3-vec_reve-runnable.c
@@ -1,5 +1,4 @@
-/* { dg-do run { target { powerpc*-*-linux* } } } */
-/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power7" } } */
+/* { dg-do run { target { vsx_hw } } } */
/* { dg-options "-O2 -mvsx -mcpu=power7" } */
#include <altivec.h> // vector
diff --git a/gcc/testsuite/gcc.target/powerpc/builtins-3.c b/gcc/testsuite/gcc.target/powerpc/builtins-3.c
index 833116e597f..b8a6dcdbb33 100644
--- a/gcc/testsuite/gcc.target/powerpc/builtins-3.c
+++ b/gcc/testsuite/gcc.target/powerpc/builtins-3.c
@@ -1,6 +1,7 @@
/* { dg-do compile } */
/* { dg-require-effective-target powerpc_vsx_ok } */
-/* { dg-options "-maltivec -mvsx" } */
+/* { dg-options "-O2 -mvsx -mcpu=power6" } */
+/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power6" } } */
#include <altivec.h>
diff --git a/gcc/testsuite/gcc.target/powerpc/builtins-4-int128-runnable.c b/gcc/testsuite/gcc.target/powerpc/builtins-4-int128-runnable.c
index 162e26781a9..4f4e7a9ee5e 100644
--- a/gcc/testsuite/gcc.target/powerpc/builtins-4-int128-runnable.c
+++ b/gcc/testsuite/gcc.target/powerpc/builtins-4-int128-runnable.c
@@ -1,7 +1,7 @@
/* { dg-do run } */
/* { dg-require-effective-target int128 } */
-/* { dg-require-effective-target vsx_hw } */
-/* { dg-options "-maltivec -mvsx" } */
+/* { dg-require-effective-target p8vector_hw } */
+/* { dg-options "-mpower8-vector" } */
#include <inttypes.h>
#include <altivec.h> // vector
diff --git a/gcc/testsuite/gcc.target/powerpc/builtins-7-p9-runnable.c b/gcc/testsuite/gcc.target/powerpc/builtins-7-p9-runnable.c
new file mode 100644
index 00000000000..137b46b052a
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/builtins-7-p9-runnable.c
@@ -0,0 +1,169 @@
+/* { dg-do run { target { powerpc*-*-* && p9vector_hw } } } */
+/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power9" } } */
+/* { dg-require-effective-target powerpc_p9vector_ok } */
+/* { dg-options "-mcpu=power9 -O2" } */
+
+#include <altivec.h>
+#define TRUE 1
+#define FALSE 0
+
+#ifdef DEBUG
+#include <stdio.h>
+#endif
+
+#define EXTRACT 0
+
+void abort (void);
+
+int result_wrong_ull (vector unsigned long long vec_expected,
+ vector unsigned long long vec_actual)
+{
+ int i;
+
+ for (i = 0; i < 2; i++)
+ if (vec_expected[i] != vec_actual[i])
+ return TRUE;
+
+ return FALSE;
+}
+
+int result_wrong_uc (vector unsigned char vec_expected,
+ vector unsigned char vec_actual)
+{
+ int i;
+
+ for (i = 0; i < 16; i++)
+ if (vec_expected[i] != vec_actual[i])
+ return TRUE;
+
+ return FALSE;
+}
+
+#ifdef DEBUG
+void print_ull (vector unsigned long long vec_expected,
+ vector unsigned long long vec_actual)
+{
+ int i;
+
+ printf("expected unsigned long long data\n");
+ for (i = 0; i < 2; i++)
+ printf(" %lld,", vec_expected[i]);
+
+ printf("\nactual signed char data\n");
+ for (i = 0; i < 2; i++)
+ printf(" %lld,", vec_actual[i]);
+ printf("\n");
+}
+
+void print_uc (vector unsigned char vec_expected,
+ vector unsigned char vec_actual)
+{
+ int i;
+
+ printf("expected unsigned char data\n");
+ for (i = 0; i < 16; i++)
+ printf(" %d,", vec_expected[i]);
+
+ printf("\nactual unsigned char data\n");
+ for (i = 0; i < 16; i++)
+ printf(" %d,", vec_actual[i]);
+ printf("\n");
+}
+#endif
+
+#if EXTRACT
+vector unsigned long long
+vext (vector unsigned char *vc)
+{
+ return vextract_si_vchar (*vc, 5);
+}
+#endif
+
+int main()
+{
+ vector signed int vsi_arg;
+ vector unsigned char vec_uc_arg, vec_uc_result, vec_uc_expected;
+ vector unsigned long long vec_ull_result, vec_ull_expected;
+ unsigned long long ull_result, ull_expected;
+
+ vec_uc_arg = (vector unsigned char){1, 2, 3, 4,
+ 5, 6, 7, 8,
+ 9, 10, 11, 12,
+ 13, 14, 15, 16};
+
+ vsi_arg = (vector signed int){0xA, 0xB, 0xC, 0xD};
+
+ vec_uc_expected = (vector unsigned char){0xC, 0, 0, 0,
+ 5, 6, 7, 8,
+ 9, 10, 11, 12,
+ 13, 14, 15, 16};
+ /* Test vec_insert4b() */
+ /* Insert into char 0 location */
+ vec_uc_result = vec_insert4b (vsi_arg, vec_uc_arg, 0);
+
+ if (result_wrong_uc(vec_uc_expected, vec_uc_result))
+ {
+#ifdef DEBUG
+ printf("Error: vec_insert4b pos 0, result does not match expected result\n");
+ print_uc (vec_uc_expected, vec_uc_result);
+#else
+ abort();
+#endif
+ }
+
+ /* insert into char 4 location */
+ vec_uc_expected = (vector unsigned char){1, 2, 3, 4,
+ 0xC, 0, 0, 0,
+ 9, 10, 11, 12,
+ 13, 14, 15, 16};
+ vec_uc_result = vec_insert4b (vsi_arg, vec_uc_arg, 4);
+
+ if (result_wrong_uc(vec_uc_expected, vec_uc_result))
+ {
+#ifdef DEBUG
+ printf("Error: vec_insert4b pos 4, result does not match expected result\n");
+ print_uc (vec_uc_expected, vec_uc_result);
+#else
+ abort();
+#endif
+ }
+
+ /* Test vec_extract4b() */
+ /* Extract 4b, from char 0 location */
+ vec_uc_arg = (vector unsigned char){10, 0, 0, 0,
+ 20, 0, 0, 0,
+ 30, 0, 0, 0,
+ 40, 0, 0, 0};
+
+ vec_ull_expected = (vector unsigned long long){0, 10};
+ vec_ull_result = vec_extract4b(vec_uc_arg, 0);
+
+ if (result_wrong_ull(vec_ull_expected, vec_ull_result))
+ {
+#ifdef DEBUG
+ printf("Error: vec_extract4b pos 0, result does not match expected result\n");
+ print_ull (vec_ull_expected, vec_ull_result);
+#else
+ abort();
+#endif
+ }
+
+ /* Extract 4b, from char 12 location */
+ vec_uc_arg = (vector unsigned char){10, 0, 0, 0,
+ 20, 0, 0, 0,
+ 30, 0, 0, 0,
+ 40, 0, 0, 0};
+
+ vec_ull_expected = (vector unsigned long long){0, 40};
+ vec_ull_result = vec_extract4b(vec_uc_arg, 12);
+
+ if (result_wrong_ull(vec_ull_expected, vec_ull_result))
+ {
+#ifdef DEBUG
+ printf("Error: vec_extract4b pos 12, result does not match expected result\n");
+ print_ull (vec_ull_expected, vec_ull_result);
+#else
+ abort();
+#endif
+ }
+}
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-mult-int128-p9.c b/gcc/testsuite/gcc.target/powerpc/fold-vec-mult-int128-p9.c
index 657188435d4..5d3d4aaf972 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-mult-int128-p9.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-mult-int128-p9.c
@@ -22,5 +22,5 @@ test2 (vector unsigned __int128 x, vector unsigned __int128 y)
return vec_mul (x, y);
}
-/* { dg-final { scan-assembler-times {\mmulld\M} 4 } } */
+/* { dg-final { scan-assembler-times {\mmulld\M|\mmaddld\M} 6 } } */
/* { dg-final { scan-assembler-times {\mmulhdu\M} 2 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-neg-int.p7.c b/gcc/testsuite/gcc.target/powerpc/fold-vec-neg-int.p7.c
deleted file mode 100644
index 8e99de38271..00000000000
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-neg-int.p7.c
+++ /dev/null
@@ -1,19 +0,0 @@
-/* Verify that overloaded built-ins for vec_neg with int
- inputs produce the right code when -mcpu=power7 is specified. */
-
-/* { dg-do compile } */
-/* { dg-require-effective-target powerpc_altivec_ok } */
-/* { dg-options "-maltivec -O2 -mcpu=power7" } */
-/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power7" } } */
-
-#include <altivec.h>
-
-vector signed int
-test1 (vector signed int x)
-{
- return vec_neg (x);
-}
-
-/* { dg-final { scan-assembler-times "xxspltib|vspltisw|vxor" 1 } } */
-/* { dg-final { scan-assembler-times "vsubuwm" 1 } } */
-/* { dg-final { scan-assembler-times "vmaxsw" 0 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/le-altivec-consts.c b/gcc/testsuite/gcc.target/powerpc/le-altivec-consts.c
index 15ec650c786..f48ef44e676 100644
--- a/gcc/testsuite/gcc.target/powerpc/le-altivec-consts.c
+++ b/gcc/testsuite/gcc.target/powerpc/le-altivec-consts.c
@@ -1,5 +1,5 @@
-/* { dg-do run { target { powerpc*-*-* && vmx_hw } } } */
-/* { dg-do compile { target { powerpc*-*-* && { ! vmx_hw } } } } */
+/* { dg-do run { target vmx_hw } } */
+/* { dg-do compile } */
/* { dg-require-effective-target powerpc_altivec_ok } */
/* { dg-options "-maltivec -mabi=altivec -O2" } */
diff --git a/gcc/testsuite/gcc.target/powerpc/lvsl-lvsr.c b/gcc/testsuite/gcc.target/powerpc/lvsl-lvsr.c
index 71dd0a24ae1..6a7baf31b43 100644
--- a/gcc/testsuite/gcc.target/powerpc/lvsl-lvsr.c
+++ b/gcc/testsuite/gcc.target/powerpc/lvsl-lvsr.c
@@ -6,7 +6,7 @@
/* { dg-options "-O0 -Wno-deprecated" } */
/* { dg-final { scan-assembler-times "lvsl" 2 } } */
/* { dg-final { scan-assembler-times "lvsr" 2 } } */
-/* { dg-final { scan-assembler-times "lxvd2x" 2 } } */
+/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxv\M} 2 } } */
/* { dg-final { scan-assembler-times "vperm" 2 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/p9-vinsert4b-1.c b/gcc/testsuite/gcc.target/powerpc/p9-vinsert4b-1.c
deleted file mode 100644
index fa1ba754705..00000000000
--- a/gcc/testsuite/gcc.target/powerpc/p9-vinsert4b-1.c
+++ /dev/null
@@ -1,39 +0,0 @@
-/* { dg-do compile { target { powerpc64*-*-* && lp64 } } } */
-/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power9" } } */
-/* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-options "-mcpu=power9 -O2" } */
-
-#include <altivec.h>
-
-vector signed char
-vins_v4si (vector int *vi, vector signed char *vc)
-{
- return vec_vinsert4b (*vi, *vc, 1);
-}
-
-vector unsigned char
-vins_di (long di, vector unsigned char *vc)
-{
- return vec_vinsert4b (di, *vc, 2);
-}
-
-vector char
-vins_di2 (long *p_di, vector char *vc)
-{
- return vec_vinsert4b (*p_di, *vc, 3);
-}
-
-vector unsigned char
-vins_di0 (vector unsigned char *vc)
-{
- return vec_vinsert4b (0, *vc, 4);
-}
-
-long
-vext (vector signed char *vc)
-{
- return vec_vextract4b (*vc, 5);
-}
-
-/* { dg-final { scan-assembler "xxextractuw\|vextuw\[lr\]x" } } */
-/* { dg-final { scan-assembler "xxinsertw" } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/p9-vinsert4b-2.c b/gcc/testsuite/gcc.target/powerpc/p9-vinsert4b-2.c
deleted file mode 100644
index 3b5872ebec6..00000000000
--- a/gcc/testsuite/gcc.target/powerpc/p9-vinsert4b-2.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/* { dg-do compile { target { powerpc64*-*-* && lp64 } } } */
-/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power9" } } */
-/* { dg-require-effective-target powerpc_p9vector_ok } */
-/* { dg-options "-mcpu=power9 -O2" } */
-
-#include <altivec.h>
-
-vector signed char
-ins_v4si (vector int vi, vector signed char vc)
-{
- return vec_vinsert4b (vi, vc, 13); /* { dg-error "vec_vinsert4b" } */
-}
-
-vector unsigned char
-ins_di (long di, vector unsigned char vc, long n)
-{
- return vec_vinsert4b (di, vc, n); /* { dg-error "vec_vinsert4b" } */
-}
-
-long
-vext1 (vector signed char vc)
-{
- return vec_vextract4b (vc, 13); /* { dg-error "vec_vextract4b" } */
-}
-
-long
-vextn (vector unsigned char vc, long n)
-{
- return vec_vextract4b (vc, n); /* { dg-error "vec_vextract4b" } */
-}
diff --git a/gcc/testsuite/gcc.target/powerpc/ppc-fortran/pr80108-1.f90 b/gcc/testsuite/gcc.target/powerpc/ppc-fortran/pr80108-1.f90
index a1248bee044..91b961aebce 100644
--- a/gcc/testsuite/gcc.target/powerpc/ppc-fortran/pr80108-1.f90
+++ b/gcc/testsuite/gcc.target/powerpc/ppc-fortran/pr80108-1.f90
@@ -25,11 +25,11 @@ program stream_test
rewind(10)
read(10,*) str1
read(10,*) str2
- if(str1 /= rec1 .or. str2 /= rec2) call abort()
+ if(str1 /= rec1 .or. str2 /= rec2) STOP 1
rewind(10)
read(10,'(a)') str1
read(10,'(a)') str2
- if(str1 /= rec1 .or. str2 /= rec2) call abort()
+ if(str1 /= rec1 .or. str2 /= rec2) STOP 2
close(10)
open(10,form='formatted',access='stream',&
@@ -40,7 +40,7 @@ program stream_test
read(10,*) i,str1
read(10,*) r
if(i /= 123 .or. str1 /= rec1 .or. r /= 12345.6789) &
- call abort()
+ STOP 3
close(10)
open(unit=10,form='unformatted',access='stream', &
@@ -49,5 +49,5 @@ program stream_test
len = len_trim(rec1//new_line('a')//rec2)
rewind(10)
read(10) str1(1:len)
- if(str1 /= rec1//new_line('a')//rec2) call abort()
+ if(str1 /= rec1//new_line('a')//rec2) STOP 4
end program stream_test
diff --git a/gcc/testsuite/gcc.target/powerpc/pr79439-1.c b/gcc/testsuite/gcc.target/powerpc/pr79439-1.c
new file mode 100644
index 00000000000..5732a236c8e
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/pr79439-1.c
@@ -0,0 +1,28 @@
+/* { dg-do compile { target { powerpc*-*-linux* && lp64 } } } */
+/* { dg-options "-O2 -fpic -fno-reorder-blocks" } */
+
+/* On the Linux 64-bit ABIs, we eliminate NOP in the 'rec' call even if
+ -fpic is used. The recursive call should call the local alias. The
+ Linux 32-bit ABIs do not require NOPs after the BL instruction. */
+
+int f (void);
+
+void
+g (void)
+{
+}
+
+int
+rec (int a)
+{
+ int ret = 0;
+ if (a > 10 && f ())
+ ret += rec (a - 1);
+ g ();
+ return a + ret;
+}
+
+/* { dg-final { scan-assembler-times {\mbl f\M} 1 } } */
+/* { dg-final { scan-assembler-times {\mbl g\M} 1 } } */
+/* { dg-final { scan-assembler-times {\mbl rec\M} 1 } } */
+/* { dg-final { scan-assembler-times {\mnop\M} 2 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/pr79439.c b/gcc/testsuite/gcc.target/powerpc/pr79439-2.c
index 23c9a24fdc3..b53af445265 100644
--- a/gcc/testsuite/gcc.target/powerpc/pr79439.c
+++ b/gcc/testsuite/gcc.target/powerpc/pr79439-2.c
@@ -1,9 +1,9 @@
-/* { dg-do compile { target { powerpc64*-*-linux* && lp64 } } } */
-/* { dg-options "-O2 -fpic" } */
+/* { dg-do compile { target { powerpc*-*-linux* && lp64 } } } */
+/* { dg-options "-O2 -fpic -fno-reorder-blocks" } */
/* On the Linux 64-bit ABIs, we should not eliminate NOP in the 'rec' call if
- -fpic is used because rec can be interposed at link time (since it is
- external), and the recursive call should call the interposed function. The
+ -fpic is used because rec can be interposed at link time (since it has an
+ alias), and the recursive call should call the interposed function. The
Linux 32-bit ABIs do not require NOPs after the BL instruction. */
int f (void);
@@ -23,6 +23,8 @@ rec (int a)
return a + ret;
}
+int rec_alias (int) __attribute__ ((alias ("rec")));
+
/* { dg-final { scan-assembler-times {\mbl f\M} 1 } } */
/* { dg-final { scan-assembler-times {\mbl g\M} 1 } } */
/* { dg-final { scan-assembler-times {\mbl rec\M} 1 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/pr79439-3.c b/gcc/testsuite/gcc.target/powerpc/pr79439-3.c
new file mode 100644
index 00000000000..762ca44b177
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/pr79439-3.c
@@ -0,0 +1,25 @@
+/* { dg-do compile { target { powerpc-*-linux* && ilp32 } } } */
+/* { dg-options "-O2 -fpic -fno-reorder-blocks" } */
+
+/* Analog of pr79439-1.c for 32-bit Linux. */
+
+int f (void);
+
+void
+g (void)
+{
+}
+
+int
+rec (int a)
+{
+ int ret = 0;
+ if (a > 10 && f ())
+ ret += rec (a - 1);
+ g ();
+ return a + ret;
+}
+
+/* { dg-final { scan-assembler-times {\mbl f@plt\M} 1 } } */
+/* { dg-final { scan-assembler-times {\mbl g@plt\M} 1 } } */
+/* { dg-final { scan-assembler-times {\mbl rec@plt\M} 0 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/pr80695-p8.c b/gcc/testsuite/gcc.target/powerpc/pr80695-p8.c
index 165079a3a6c..b5d007e082f 100644
--- a/gcc/testsuite/gcc.target/powerpc/pr80695-p8.c
+++ b/gcc/testsuite/gcc.target/powerpc/pr80695-p8.c
@@ -1,4 +1,4 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile { target { powerpc_p8vector_ok } } } */
/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power8" } } */
/* { dg-require-effective-target vect_int } */
/* { dg-options "-mcpu=power8 -O3 -fdump-tree-slp-details" } */
diff --git a/gcc/testsuite/gcc.target/powerpc/pr80695-p9.c b/gcc/testsuite/gcc.target/powerpc/pr80695-p9.c
index a81f90ac3c4..302b1c5040f 100644
--- a/gcc/testsuite/gcc.target/powerpc/pr80695-p9.c
+++ b/gcc/testsuite/gcc.target/powerpc/pr80695-p9.c
@@ -1,4 +1,4 @@
-/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-do compile { target { powerpc_p9vector_ok } } } */
/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power9" } } */
/* { dg-require-effective-target vect_int } */
/* { dg-options "-mcpu=power9 -O3 -fdump-tree-slp-details" } */
diff --git a/gcc/testsuite/gcc.target/powerpc/pr81572.c b/gcc/testsuite/gcc.target/powerpc/pr81572.c
new file mode 100644
index 00000000000..de00c187d62
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/pr81572.c
@@ -0,0 +1,13 @@
+/* { dg-do compile { target powerpc64*-*-* } } */
+/* { dg-options "-O2 -mcpu=power7" } */
+/* { dg-final { scan-assembler-not "xxlor" } } */
+
+#include <altivec.h>
+
+typedef __vector unsigned char nvec_t;
+
+long testz_and(nvec_t a, nvec_t b)
+{
+ nvec_t c = vec_andc(a, b);
+ return vec_all_eq(a, c);
+}
diff --git a/gcc/testsuite/gcc.target/powerpc/pr84220-sld.c b/gcc/testsuite/gcc.target/powerpc/pr84220-sld.c
new file mode 100644
index 00000000000..2536fc30b98
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/pr84220-sld.c
@@ -0,0 +1,97 @@
+/* PR target/84220 */
+/* Test to ensure we generate invalid parameter errors rather than an ICE
+ when calling builtin_vec_sld() with invalid parameters. */
+/* { dg-do compile } */
+/* { dg-require-effective-target powerpc_altivec_ok } */
+/* { dg-options "-maltivec" } */
+
+#include <altivec.h>
+
+typedef vector bool char vbc_t;
+typedef vector signed char vsc_t;
+typedef vector unsigned char vuc_t;
+typedef vector bool int vbi_t;
+typedef vector signed int vsi_t;
+typedef vector unsigned int vui_t;
+typedef vector pixel vp_t;
+typedef vector bool short vbs_t;
+typedef vector signed short vss_t;
+typedef vector unsigned short vus_t;
+typedef vector float vf_t;
+
+void
+test_vbc ( vbc_t v1, vbc_t v2, vbc_t v3 ) \
+{
+ __builtin_vec_sld(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ __builtin_vec_sld(v1, v2, 3);
+}
+
+void
+test_vsc ( vsc_t v1, vsc_t v2, vsc_t v3 ) \
+{
+ __builtin_vec_sld(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ __builtin_vec_sld(v1, v2, 3);
+}
+
+void
+test_vuc ( vuc_t v1, vuc_t v2, vuc_t v3 ) \
+{
+ __builtin_vec_sld(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ __builtin_vec_sld(v1, v2, 3);
+}
+
+void
+test_vbi ( vbi_t v1, vbi_t v2, vbi_t v3 ) \
+{
+ __builtin_vec_sld(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ __builtin_vec_sld(v1, v2, 3);
+}
+
+void
+test_vsi ( vsi_t v1, vsi_t v2, vsi_t v3 ) \
+{
+ __builtin_vec_sld(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ __builtin_vec_sld(v1, v2, 3);
+}
+
+void
+test_vui ( vui_t v1, vui_t v2, vui_t v3 ) \
+{
+ __builtin_vec_sld(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ __builtin_vec_sld(v1, v2, 3);
+}
+
+void
+test_vp ( vp_t v1, vp_t v2, vp_t v3 ) \
+{
+ __builtin_vec_sld(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ __builtin_vec_sld(v1, v2, 3);
+}
+
+void
+test_vbs ( vbs_t v1, vbs_t v2, vbs_t v3 ) \
+{
+ __builtin_vec_sld(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ __builtin_vec_sld(v1, v2, 3);
+}
+
+void
+test_vss ( vss_t v1, vss_t v2, vss_t v3 ) \
+{
+ __builtin_vec_sld(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ __builtin_vec_sld(v1, v2, 3);
+}
+
+void
+test_vus ( vus_t v1, vus_t v2, vus_t v3 ) \
+{
+ __builtin_vec_sld(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ __builtin_vec_sld(v1, v2, 3);
+}
+
+void
+test_vf ( vf_t v1, vf_t v2, vf_t v3 ) \
+{
+ __builtin_vec_sld(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ __builtin_vec_sld(v1, v2, 3);
+}
diff --git a/gcc/testsuite/gcc.target/powerpc/pr84220-sld2.c b/gcc/testsuite/gcc.target/powerpc/pr84220-sld2.c
new file mode 100644
index 00000000000..5e973e01aa4
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/pr84220-sld2.c
@@ -0,0 +1,41 @@
+/* PR target/84220 */
+/* Test to ensure we generate invalid parameter errors rather than an ICE
+ when calling builtin_vec_sld() with invalid parameters. */
+/* { dg-do compile } */
+/* { dg-require-effective-target powerpc_p8vector_ok } */
+/* { dg-options "-maltivec -mpower8-vector" } */
+
+#include <altivec.h>
+
+typedef vector bool long long vbl_t;
+typedef vector signed long long vsl_t;
+typedef vector unsigned long long vul_t;
+typedef vector double vd_t;
+
+void
+test_vbl ( vbl_t v1, vbl_t v2, vbl_t v3 ) \
+{
+ __builtin_vec_sld(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ __builtin_vec_sld(v1, v2, 3);
+}
+
+void
+test_vsl ( vsl_t v1, vsl_t v2, vsl_t v3 ) \
+{
+ __builtin_vec_sld(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ __builtin_vec_sld(v1, v2, 3);
+}
+
+void
+test_vul ( vul_t v1, vul_t v2, vul_t v3 ) \
+{
+ __builtin_vec_sld(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ __builtin_vec_sld(v1, v2, 3);
+}
+
+void
+test_vd ( vd_t v1, vd_t v2, vd_t v3 ) \
+{
+ __builtin_vec_sld(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ __builtin_vec_sld(v1, v2, 3);
+}
diff --git a/gcc/testsuite/gcc.target/powerpc/pr84220-sldw.c b/gcc/testsuite/gcc.target/powerpc/pr84220-sldw.c
new file mode 100644
index 00000000000..a3b4be6686b
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/pr84220-sldw.c
@@ -0,0 +1,80 @@
+/* PR target/84220 */
+/* Test to ensure we generate invalid parameter errors rather than an ICE
+ when calling builtin_vec_sldw() with invalid parameters. */
+/* { dg-do compile } */
+/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-options "-mvsx" } */
+
+#include <altivec.h>
+
+typedef vector bool char vbc_t;
+typedef vector signed char vsc_t;
+typedef vector unsigned char vuc_t;
+typedef vector bool int vbi_t;
+typedef vector signed int vsi_t;
+typedef vector unsigned int vui_t;
+typedef vector pixel vp_t;
+typedef vector bool short vbs_t;
+typedef vector signed short vss_t;
+typedef vector unsigned short vus_t;
+typedef vector float vf_t;
+typedef vector bool long long vbl_t;
+typedef vector signed long long vsl_t;
+typedef vector unsigned long long vul_t;
+typedef vector double vd_t;
+
+void
+test_vsc ( vsc_t v1, vsc_t v2, vsc_t v3 ) \
+{
+ vec_sldw(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ vec_sldw(v1, v2, 3);
+}
+
+void
+test_vuc ( vuc_t v1, vuc_t v2, vuc_t v3 ) \
+{
+ vec_sldw(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ vec_sldw(v1, v2, 3);
+}
+
+void
+test_vsi ( vsi_t v1, vsi_t v2, vsi_t v3 ) \
+{
+ vec_sldw(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ vec_sldw(v1, v2, 3);
+}
+
+void
+test_vui ( vui_t v1, vui_t v2, vui_t v3 ) \
+{
+ vec_sldw(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ vec_sldw(v1, v2, 3);
+}
+
+void
+test_vsl ( vsl_t v1, vsl_t v2, vsl_t v3 ) \
+{
+ vec_sldw(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ vec_sldw(v1, v2, 3);
+}
+
+void
+test_vul ( vul_t v1, vul_t v2, vul_t v3 ) \
+{
+ vec_sldw(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ vec_sldw(v1, v2, 3);
+}
+
+void
+test_vss ( vss_t v1, vss_t v2, vss_t v3 ) \
+{
+ vec_sldw(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ vec_sldw(v1, v2, 3);
+}
+
+void
+test_vus ( vus_t v1, vus_t v2, vus_t v3 ) \
+{
+ vec_sldw(v1, v2, v3); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ vec_sldw(v1, v2, 3);
+}
diff --git a/gcc/testsuite/gcc.target/powerpc/pr84220-xxperm.c b/gcc/testsuite/gcc.target/powerpc/pr84220-xxperm.c
new file mode 100644
index 00000000000..8a802eb337e
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/pr84220-xxperm.c
@@ -0,0 +1,100 @@
+/* PR target/84220 */
+/* Test to ensure we generate invalid parameter errors rather than an ICE
+ when calling vec_xxpermdi() with invalid parameters. */
+/* { dg-do compile } */
+/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-options "-O2 -mvsx" } */
+
+#include <altivec.h>
+void abort (void);
+
+vector double vdx = { 0.0, 1.0 };
+vector double vdy = { 2.0, 3.0 };
+vector double vdz;
+
+vector signed long long vsllx = { 0, 1 };
+vector signed long long vslly = { 2, 3 };
+vector signed long long vsllz;
+
+vector unsigned long long vullx = { 0, 1 };
+vector unsigned long long vully = { 2, 3 };
+vector unsigned long long vullz;
+
+vector float vfx = { 0.0, 1.0, 2.0, 3.0 };
+vector float vfy = { 4.0, 5.0, 6.0, 7.0 };
+vector float vfz;
+
+vector signed int vsix = { 0, 1, 2, 3 };
+vector signed int vsiy = { 4, 5, 6, 7 };
+vector signed int vsiz;
+
+vector unsigned int vuix = { 0, 1, 2, 3 };
+vector unsigned int vuiy = { 4, 5, 6, 7 };
+vector unsigned int vuiz;
+
+vector signed short vssx = { 0, 1, 2, 3, 4, 5, 6, 7 };
+vector signed short vssy = { 8, 9, 10, 11, 12, 13, 14, 15 };
+vector signed short vssz;
+
+vector unsigned short vusx = { 0, 1, 2, 3, 4, 5, 6, 7 };
+vector unsigned short vusy = { 8, 9, 10, 11, 12, 13, 14, 15 };
+vector unsigned short vusz;
+
+vector signed char vscx = { 0, 1, 2, 3, 4, 5, 6, 7,
+ 8, 9, 10, 11, 12, 13, 14, 15 };
+vector signed char vscy = { 16, 17, 18, 19, 20, 21, 22, 23,
+ 24, 25, 26, 27, 28, 29, 30, 31 };
+vector signed char vscz;
+
+vector unsigned char vucx = { 0, 1, 2, 3, 4, 5, 6, 7,
+ 8, 9, 10, 11, 12, 13, 14, 15 };
+vector unsigned char vucy = { 16, 17, 18, 19, 20, 21, 22, 23,
+ 24, 25, 26, 27, 28, 29, 30, 31 };
+vector unsigned char vucz;
+
+int
+main ()
+{
+ vdz = vec_xxpermdi (vdx, vdy, 0b01);
+ if (vdz[0] != 0.0 || vdz[1] != 3.0)
+ abort ();
+ vdz = vec_xxpermdi (vdx, vdy, vscx); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ vsllz = vec_xxpermdi (vsllx, vslly, 0b10);
+ vsllz = vec_xxpermdi (vsllx, vslly, vslly); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ vullz = vec_xxpermdi (vullx, vully, 0b10);
+ vullz = vec_xxpermdi (vullx, vully, vully); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ if (vsllz[0] != 1 || vsllz[1] != 2)
+ abort ();
+
+ vfz = vec_xxpermdi (vfx, vfy, 0b01);
+ vfz = vec_xxpermdi (vfx, vfy, vfy); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ if (vfz[0] != 0.0 || vfz[1] != 1.0 || vfz[2] != 6.0 || vfz[3] != 7.0)
+ abort ();
+
+ vsiz = vec_xxpermdi (vsix, vsiy, 0b10);
+ vsiz = vec_xxpermdi (vsix, vsiy, vsiy); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ vuiz = vec_xxpermdi (vuix, vuiy, 0b10);
+ vuiz = vec_xxpermdi (vuix, vuiy, vuiy); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ if (vsiz[0] != 2 || vsiz[1] != 3 || vsiz[2] != 4 || vsiz[3] != 5)
+ abort ();
+
+ vssz = vec_xxpermdi (vssx, vssy, 0b00);
+ vssz = vec_xxpermdi (vssx, vssy, vssy); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ vusz = vec_xxpermdi (vusx, vusy, 0b00);
+ vusz = vec_xxpermdi (vusx, vusy, vusy); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ if (vssz[0] != 0 || vssz[1] != 1 || vssz[2] != 2 || vssz[3] != 3
+ || vssz[4] != 8 || vssz[5] != 9 || vssz[6] != 10 || vssz[7] != 11)
+ abort ();
+
+ vscz = vec_xxpermdi (vscx, vscy, 0b11);
+ vscz = vec_xxpermdi (vscx, vscy, vscy);/* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ vucz = vec_xxpermdi (vucx, vucy, 0b11);
+ vucz = vec_xxpermdi (vucx, vucy, vucy);/* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ if (vscz[0] != 8 || vscz[1] != 9 || vscz[2] != 10 || vscz[3] != 11
+ || vscz[4] != 12 || vscz[5] != 13 || vscz[6] != 14 || vscz[7] != 15
+ || vscz[8] != 24 || vscz[9] != 25 || vscz[10] != 26 || vscz[11] != 27
+ || vscz[12] != 28 || vscz[13] != 29 || vscz[14] != 30 || vscz[15] != 31)
+ abort ();
+
+ return 0;
+}
diff --git a/gcc/testsuite/gcc.target/powerpc/pr84220-xxsld.c b/gcc/testsuite/gcc.target/powerpc/pr84220-xxsld.c
new file mode 100644
index 00000000000..06e485dc45c
--- /dev/null
+++ b/gcc/testsuite/gcc.target/powerpc/pr84220-xxsld.c
@@ -0,0 +1,151 @@
+/* PR target/84220 */
+/* Test to ensure we generate invalid parameter errors rather than an ICE
+ when calling vec_xxsldwi() and vec_xxpermdi() with invalid parameters. */
+/* { dg-do compile { target { powerpc*-*-* } } } */
+/* { dg-skip-if "" { powerpc*-*-darwin* } } */
+/* { dg-require-effective-target powerpc_vsx_ok } */
+/* { dg-skip-if "do not override -mcpu" { powerpc*-*-* } { "-mcpu=*" } { "-mcpu=power7" } } */
+/* { dg-options "-O3 -mcpu=power7" } */
+
+#include <altivec.h>
+
+vector double
+v2df_shift (vector double a, vector double b)
+{
+ return vec_xxsldwi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ return vec_xxsldwi (a, b, 1);
+}
+
+vector float
+v4sf_shift (vector float a, vector float b)
+{
+ return vec_xxsldwi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ return vec_xxsldwi (a, b, 1);
+}
+
+vector long long
+v2di_shift (vector long long a, vector long long b)
+{
+ return vec_xxsldwi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ return vec_xxsldwi (a, b, 1);
+}
+
+vector unsigned long long
+v2diu_shift (vector unsigned long long a, vector unsigned long long b)
+{
+ return vec_xxsldwi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ return vec_xxsldwi (a, b, 1);
+}
+
+vector int
+v4si_shift (vector int a, vector int b)
+{
+ return vec_xxsldwi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ return vec_xxsldwi (a, b, 1);
+}
+
+vector unsigned int
+v4siu_shift (vector unsigned int a, vector unsigned int b)
+{
+ return vec_xxsldwi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ return vec_xxsldwi (a, b, 1);
+}
+
+vector short
+v8hi_shift (vector short a, vector short b)
+{
+ return vec_xxsldwi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ return vec_xxsldwi (a, b, 1);
+}
+
+vector unsigned short
+v8hiu_shift (vector unsigned short a, vector unsigned short b)
+{
+ return vec_xxsldwi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ return vec_xxsldwi (a, b, 1);
+}
+
+vector signed char
+v16qi_shift (vector signed char a, vector signed char b)
+{
+ return vec_xxsldwi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ return vec_xxsldwi (a, b, 1);
+}
+
+vector unsigned char
+v16qiu_shift (vector unsigned char a, vector unsigned char b)
+{
+ return vec_xxsldwi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ return vec_xxsldwi (a, b, 1);
+}
+
+vector double
+v2df_permute (vector double a, vector double b)
+{
+ return vec_xxpermdi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ return vec_xxpermdi (a, b, 1);
+}
+
+vector float
+v4sf_permute (vector float a, vector float b)
+{
+ return vec_xxpermdi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ return vec_xxpermdi (a, b, 1);
+}
+
+vector long long
+v2di_permute (vector long long a, vector long long b)
+{
+ return vec_xxpermdi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ return vec_xxpermdi (a, b, 1);
+}
+
+vector unsigned long long
+v2diu_permute (vector unsigned long long a, vector unsigned long long b)
+{
+ return vec_xxpermdi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ return vec_xxpermdi (a, b, 1);
+}
+
+vector int
+v4si_permute (vector int a, vector int b)
+{
+ return vec_xxpermdi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ return vec_xxpermdi (a, b, 1);
+}
+
+vector unsigned int
+v4siu_permute (vector unsigned int a, vector unsigned int b)
+{
+ return vec_xxpermdi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ return vec_xxpermdi (a, b, 1);
+}
+
+vector short
+v8hi_permute (vector short a, vector short b)
+{
+ return vec_xxpermdi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+;
+ return vec_xxpermdi (a, b, 1);
+}
+
+vector unsigned short
+v8hiu_permute (vector unsigned short a, vector unsigned short b)
+{
+ return vec_xxpermdi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ return vec_xxpermdi (a, b, 1);
+}
+
+vector signed char
+v16qi_permute (vector signed char a, vector signed char b)
+{
+ return vec_xxpermdi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ return vec_xxpermdi (a, b, 1);
+}
+
+vector unsigned char
+v16qiu_permute (vector unsigned char a, vector unsigned char b)
+{
+ return vec_xxpermdi (a, b, b); /* { dg-error "invalid parameter combination for AltiVec intrinsic" } */
+ return vec_xxpermdi (a, b, 1);
+}
diff --git a/gcc/testsuite/gcc.target/powerpc/vec-setup-be-long.c b/gcc/testsuite/gcc.target/powerpc/vec-setup-be-long.c
index 492cd2d76a2..691b378698f 100644
--- a/gcc/testsuite/gcc.target/powerpc/vec-setup-be-long.c
+++ b/gcc/testsuite/gcc.target/powerpc/vec-setup-be-long.c
@@ -1,6 +1,7 @@
/* { dg-do run { target { powerpc64le*-*-linux* } } } */
/* { dg-require-effective-target vsx_hw } */
-/* { dg-options "-O2 -mvsx -maltivec=be" } */
+/* Disable warnings to squelch deprecation message about -maltivec=be. */
+/* { dg-options "-w -O2 -mvsx -maltivec=be" } */
/* Test various ways of creating vectors with 2 double words and accessing the
elements. This test uses the long (on 64-bit systems) or long long datatype
diff --git a/gcc/testsuite/gcc.target/rx/pr83831.c b/gcc/testsuite/gcc.target/rx/pr83831.c
new file mode 100644
index 00000000000..27d4a89cff4
--- /dev/null
+++ b/gcc/testsuite/gcc.target/rx/pr83831.c
@@ -0,0 +1,79 @@
+/* { dg-do compile } */
+/* { dg-options "-O1" } */
+/* { dg-final { scan-assembler-times "bclr" 6 } } */
+/* { dg-final { scan-assembler-times "bset" 7 } } */
+/* { dg-final { scan-assembler-times "bnot" 7 } } */
+
+void
+test_0 (char* x, unsigned int y)
+{
+ /* Expect 4x bclr here. */
+ x[0] &= 0xFE;
+ x[1] = y & ~(1 << 1);
+ x[2] &= 0xFE;
+ x[65000] &= 0xFE;
+}
+
+unsigned int
+test_1 (unsigned int x, unsigned int y)
+{
+ /* Expect 1x bclr here. */
+ return x & ~(1 << y);
+}
+
+unsigned int
+test_2 (unsigned int x)
+{
+ /* Expect 1x bclr here. */
+ return x & ~(1 << 1);
+}
+
+void
+test_3 (char* x, unsigned int y, unsigned int z)
+{
+ /* Expect 5x bset here. */
+ x[0] |= 0x10;
+ x[1] = y | (1 << 1);
+ x[2] |= 0x10;
+ x[65000] |= 0x10;
+ x[5] |= 1 << z;
+}
+
+unsigned int
+test_4 (unsigned int x, unsigned int y)
+{
+ /* Expect 1x bset here. */
+ return x | (1 << y);
+}
+
+unsigned int
+test_5 (unsigned int x)
+{
+ /* Expect 1x bset here. */
+ return x | (1 << 8);
+}
+
+void
+test_6 (char* x, unsigned int y, unsigned int z)
+{
+ /* Expect 5x bnot here. */
+ x[0] ^= 0x10;
+ x[1] = y ^ (1 << 1);
+ x[2] ^= 0x10;
+ x[65000] ^= 0x10;
+ x[5] ^= 1 << z;
+}
+
+unsigned int
+test_7 (unsigned int x, unsigned int y)
+{
+ /* Expect 1x bnot here. */
+ return x ^ (1 << y);
+}
+
+unsigned int
+test_8 (unsigned int x)
+{
+ /* Expect 1x bnot here. */
+ return x ^ (1 << 8);
+}
diff --git a/gcc/testsuite/gfortran.dg/PR19754_2.f90 b/gcc/testsuite/gfortran.dg/PR19754_2.f90
index 9b71bd02ba0..0ae54eacd23 100644
--- a/gcc/testsuite/gfortran.dg/PR19754_2.f90
+++ b/gcc/testsuite/gfortran.dg/PR19754_2.f90
@@ -8,15 +8,15 @@ program PR19754_2
a = 1. ; b = 2. ; i = 4
c = b - floor( a / b ) ! this caused an ICE
d = b - real(floor( a / b ))
- if (any (c/=d)) call abort ()
+ if (any (c/=d)) STOP 1
j = aint(b) - floor( a / b ) ! this caused an ICE
- if (any(real(j)/=d)) call abort ()
+ if (any(real(j)/=d)) STOP 2
c = i
- if (any(real(i)/=c)) call abort ()
+ if (any(real(i)/=c)) STOP 3
c = i + b ! this caused an ICE
d = real(i) + b
- if (any(c/=d)) call abort ()
+ if (any(c/=d)) STOP 4
j = i + aint (a)
k = i + a ! this caused an ICE
- if (any(j/=k)) call abort ()
+ if (any(j/=k)) STOP 5
end program PR19754_2
diff --git a/gcc/testsuite/gfortran.dg/PR19872.f b/gcc/testsuite/gfortran.dg/PR19872.f
index edc743b2e16..f6d3da7ab3a 100644
--- a/gcc/testsuite/gfortran.dg/PR19872.f
+++ b/gcc/testsuite/gfortran.dg/PR19872.f
@@ -11,10 +11,10 @@
close(1)
open(1,form='FORMATTED')
read(1,*)i
- if(i(1).ne.9.or.i(2).ne.8.or.i(3).ne.7.or.i(4).ne.6)call abort
+ if(i(1).ne.9.or.i(2).ne.8.or.i(3).ne.7.or.i(4).ne.6)STOP 1
read(1,*, end=200)i
! should only be able to read one line from the file
- call abort
+ STOP 2
200 continue
close(1,STATUS='delete')
end
diff --git a/gcc/testsuite/gfortran.dg/PR49268.f90 b/gcc/testsuite/gfortran.dg/PR49268.f90
index 5b274cf483d..601cc282c71 100644
--- a/gcc/testsuite/gfortran.dg/PR49268.f90
+++ b/gcc/testsuite/gfortran.dg/PR49268.f90
@@ -44,7 +44,7 @@
do i=1,n
do j=1,m
boo=foo(i,j)+1.0
- if (abs (boo - 2.0) .gt. 1e-6) call abort
+ if (abs (boo - 2.0) .gt. 1e-6) STOP 1
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/Wall.f90 b/gcc/testsuite/gfortran.dg/Wall.f90
index 64c95a9c094..182974d32c4 100644
--- a/gcc/testsuite/gfortran.dg/Wall.f90
+++ b/gcc/testsuite/gfortran.dg/Wall.f90
@@ -8,5 +8,5 @@ program main
world!" ! { dg-warning "Missing '&' in continued character constant" }
if (c.ne.&
"Hello, world!")&
- call abort();end program main
+ STOP 1;end program main
diff --git a/gcc/testsuite/gfortran.dg/Wno-all.f90 b/gcc/testsuite/gfortran.dg/Wno-all.f90
index 550c7e46ad2..a61db6d0e95 100644
--- a/gcc/testsuite/gfortran.dg/Wno-all.f90
+++ b/gcc/testsuite/gfortran.dg/Wno-all.f90
@@ -8,5 +8,5 @@ program main
world!" ! { dg-bogus "Warning: Missing '&' in continued character constant" }
if (c.ne.&
"Hello, world!")&
- call abort();end program main
+ STOP 1;end program main
diff --git a/gcc/testsuite/gfortran.dg/abort_shouldfail.f90 b/gcc/testsuite/gfortran.dg/abort_shouldfail.f90
new file mode 100644
index 00000000000..5a522ea7816
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/abort_shouldfail.f90
@@ -0,0 +1,5 @@
+! { dg-do run }
+! { dg-shouldfail "Program aborted." }
+program main
+ call abort
+end program main
diff --git a/gcc/testsuite/gfortran.dg/achar_1.f90 b/gcc/testsuite/gfortran.dg/achar_1.f90
index 1fdb7747210..6b3073b17a7 100644
--- a/gcc/testsuite/gfortran.dg/achar_1.f90
+++ b/gcc/testsuite/gfortran.dg/achar_1.f90
@@ -4,5 +4,5 @@ program bug6
integer(1) :: i = 65
character a
a = achar(i)
- if (a /= 'A') call abort
+ if (a /= 'A') STOP 1
end program bug6
diff --git a/gcc/testsuite/gfortran.dg/achar_2.f90 b/gcc/testsuite/gfortran.dg/achar_2.f90
index fa3a258b22f..29cc3e756f0 100644
--- a/gcc/testsuite/gfortran.dg/achar_2.f90
+++ b/gcc/testsuite/gfortran.dg/achar_2.f90
@@ -4,2023 +4,2023 @@
program main
integer :: i
character(len=1) :: c
- if (iachar(achar(1)) /= 1) call abort
- if (iachar ("")/= 1) call abort
- if (achar (1) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (iachar(achar(1)) /= 1) STOP 1
+ if (iachar ("")/= 1) STOP 2
+ if (achar (1) /= "") STOP 3
+ if ("" /= achar ( ichar ( ""))) STOP 4
i = 1
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(2)) /= 2) call abort
- if (iachar ("")/= 2) call abort
- if (achar (2) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 5
+ if (iachar(c) /= iachar("")) STOP 6
+ if (iachar(achar(2)) /= 2) STOP 7
+ if (iachar ("")/= 2) STOP 8
+ if (achar (2) /= "") STOP 9
+ if ("" /= achar ( ichar ( ""))) STOP 10
i = 2
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(3)) /= 3) call abort
- if (iachar ("")/= 3) call abort
- if (achar (3) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 11
+ if (iachar(c) /= iachar("")) STOP 12
+ if (iachar(achar(3)) /= 3) STOP 13
+ if (iachar ("")/= 3) STOP 14
+ if (achar (3) /= "") STOP 15
+ if ("" /= achar ( ichar ( ""))) STOP 16
i = 3
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(4)) /= 4) call abort
- if (iachar ("")/= 4) call abort
- if (achar (4) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 17
+ if (iachar(c) /= iachar("")) STOP 18
+ if (iachar(achar(4)) /= 4) STOP 19
+ if (iachar ("")/= 4) STOP 20
+ if (achar (4) /= "") STOP 21
+ if ("" /= achar ( ichar ( ""))) STOP 22
i = 4
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(5)) /= 5) call abort
- if (iachar ("")/= 5) call abort
- if (achar (5) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 23
+ if (iachar(c) /= iachar("")) STOP 24
+ if (iachar(achar(5)) /= 5) STOP 25
+ if (iachar ("")/= 5) STOP 26
+ if (achar (5) /= "") STOP 27
+ if ("" /= achar ( ichar ( ""))) STOP 28
i = 5
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(6)) /= 6) call abort
- if (iachar ("")/= 6) call abort
- if (achar (6) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 29
+ if (iachar(c) /= iachar("")) STOP 30
+ if (iachar(achar(6)) /= 6) STOP 31
+ if (iachar ("")/= 6) STOP 32
+ if (achar (6) /= "") STOP 33
+ if ("" /= achar ( ichar ( ""))) STOP 34
i = 6
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(7)) /= 7) call abort
- if (iachar ("")/= 7) call abort
- if (achar (7) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 35
+ if (iachar(c) /= iachar("")) STOP 36
+ if (iachar(achar(7)) /= 7) STOP 37
+ if (iachar ("")/= 7) STOP 38
+ if (achar (7) /= "") STOP 39
+ if ("" /= achar ( ichar ( ""))) STOP 40
i = 7
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(8)) /= 8) call abort
- if (iachar ("")/= 8) call abort
- if (achar (8) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 41
+ if (iachar(c) /= iachar("")) STOP 42
+ if (iachar(achar(8)) /= 8) STOP 43
+ if (iachar ("")/= 8) STOP 44
+ if (achar (8) /= "") STOP 45
+ if ("" /= achar ( ichar ( ""))) STOP 46
i = 8
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(9)) /= 9) call abort
- if (iachar (" ")/= 9) call abort
- if (achar (9) /= " ") call abort
- if (" " /= achar ( ichar ( " "))) call abort
+ if (achar(i) /= "") STOP 47
+ if (iachar(c) /= iachar("")) STOP 48
+ if (iachar(achar(9)) /= 9) STOP 49
+ if (iachar (" ")/= 9) STOP 50
+ if (achar (9) /= " ") STOP 51
+ if (" " /= achar ( ichar ( " "))) STOP 52
i = 9
c = " "
- if (achar(i) /= " ") call abort
- if (iachar(c) /= iachar(" ")) call abort
- if (iachar(achar(10)) /= 10) call abort
- if (iachar(achar(11)) /= 11) call abort
- if (iachar (" ")/= 11) call abort
- if (achar (11) /= " ") call abort
- if (" " /= achar ( ichar ( " "))) call abort
+ if (achar(i) /= " ") STOP 53
+ if (iachar(c) /= iachar(" ")) STOP 54
+ if (iachar(achar(10)) /= 10) STOP 55
+ if (iachar(achar(11)) /= 11) STOP 56
+ if (iachar (" ")/= 11) STOP 57
+ if (achar (11) /= " ") STOP 58
+ if (" " /= achar ( ichar ( " "))) STOP 59
i = 11
c = " "
- if (achar(i) /= " ") call abort
- if (iachar(c) /= iachar(" ")) call abort
- if (iachar(achar(12)) /= 12) call abort
- if (iachar (" ")/= 12) call abort
- if (achar (12) /= " ") call abort
- if (" " /= achar ( ichar ( " "))) call abort
+ if (achar(i) /= " ") STOP 60
+ if (iachar(c) /= iachar(" ")) STOP 61
+ if (iachar(achar(12)) /= 12) STOP 62
+ if (iachar (" ")/= 12) STOP 63
+ if (achar (12) /= " ") STOP 64
+ if (" " /= achar ( ichar ( " "))) STOP 65
i = 12
c = " "
- if (achar(i) /= " ") call abort
- if (iachar(c) /= iachar(" ")) call abort
- if (iachar(achar(13)) /= 13) call abort
- if (iachar(achar(14)) /= 14) call abort
- if (iachar ("")/= 14) call abort
- if (achar (14) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= " ") STOP 66
+ if (iachar(c) /= iachar(" ")) STOP 67
+ if (iachar(achar(13)) /= 13) STOP 68
+ if (iachar(achar(14)) /= 14) STOP 69
+ if (iachar ("")/= 14) STOP 70
+ if (achar (14) /= "") STOP 71
+ if ("" /= achar ( ichar ( ""))) STOP 72
i = 14
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(15)) /= 15) call abort
- if (iachar ("")/= 15) call abort
- if (achar (15) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 73
+ if (iachar(c) /= iachar("")) STOP 74
+ if (iachar(achar(15)) /= 15) STOP 75
+ if (iachar ("")/= 15) STOP 76
+ if (achar (15) /= "") STOP 77
+ if ("" /= achar ( ichar ( ""))) STOP 78
i = 15
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(16)) /= 16) call abort
- if (iachar ("")/= 16) call abort
- if (achar (16) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 79
+ if (iachar(c) /= iachar("")) STOP 80
+ if (iachar(achar(16)) /= 16) STOP 81
+ if (iachar ("")/= 16) STOP 82
+ if (achar (16) /= "") STOP 83
+ if ("" /= achar ( ichar ( ""))) STOP 84
i = 16
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(17)) /= 17) call abort
- if (iachar ("")/= 17) call abort
- if (achar (17) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 85
+ if (iachar(c) /= iachar("")) STOP 86
+ if (iachar(achar(17)) /= 17) STOP 87
+ if (iachar ("")/= 17) STOP 88
+ if (achar (17) /= "") STOP 89
+ if ("" /= achar ( ichar ( ""))) STOP 90
i = 17
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(18)) /= 18) call abort
- if (iachar ("")/= 18) call abort
- if (achar (18) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 91
+ if (iachar(c) /= iachar("")) STOP 92
+ if (iachar(achar(18)) /= 18) STOP 93
+ if (iachar ("")/= 18) STOP 94
+ if (achar (18) /= "") STOP 95
+ if ("" /= achar ( ichar ( ""))) STOP 96
i = 18
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(19)) /= 19) call abort
- if (iachar ("")/= 19) call abort
- if (achar (19) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 97
+ if (iachar(c) /= iachar("")) STOP 98
+ if (iachar(achar(19)) /= 19) STOP 99
+ if (iachar ("")/= 19) STOP 100
+ if (achar (19) /= "") STOP 101
+ if ("" /= achar ( ichar ( ""))) STOP 102
i = 19
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(20)) /= 20) call abort
- if (iachar ("")/= 20) call abort
- if (achar (20) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 103
+ if (iachar(c) /= iachar("")) STOP 104
+ if (iachar(achar(20)) /= 20) STOP 105
+ if (iachar ("")/= 20) STOP 106
+ if (achar (20) /= "") STOP 107
+ if ("" /= achar ( ichar ( ""))) STOP 108
i = 20
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(21)) /= 21) call abort
- if (iachar ("")/= 21) call abort
- if (achar (21) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 109
+ if (iachar(c) /= iachar("")) STOP 110
+ if (iachar(achar(21)) /= 21) STOP 111
+ if (iachar ("")/= 21) STOP 112
+ if (achar (21) /= "") STOP 113
+ if ("" /= achar ( ichar ( ""))) STOP 114
i = 21
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(22)) /= 22) call abort
- if (iachar ("")/= 22) call abort
- if (achar (22) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 115
+ if (iachar(c) /= iachar("")) STOP 116
+ if (iachar(achar(22)) /= 22) STOP 117
+ if (iachar ("")/= 22) STOP 118
+ if (achar (22) /= "") STOP 119
+ if ("" /= achar ( ichar ( ""))) STOP 120
i = 22
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(23)) /= 23) call abort
- if (iachar ("")/= 23) call abort
- if (achar (23) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 121
+ if (iachar(c) /= iachar("")) STOP 122
+ if (iachar(achar(23)) /= 23) STOP 123
+ if (iachar ("")/= 23) STOP 124
+ if (achar (23) /= "") STOP 125
+ if ("" /= achar ( ichar ( ""))) STOP 126
i = 23
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(24)) /= 24) call abort
- if (iachar ("")/= 24) call abort
- if (achar (24) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 127
+ if (iachar(c) /= iachar("")) STOP 128
+ if (iachar(achar(24)) /= 24) STOP 129
+ if (iachar ("")/= 24) STOP 130
+ if (achar (24) /= "") STOP 131
+ if ("" /= achar ( ichar ( ""))) STOP 132
i = 24
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(25)) /= 25) call abort
- if (iachar ("")/= 25) call abort
- if (achar (25) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 133
+ if (iachar(c) /= iachar("")) STOP 134
+ if (iachar(achar(25)) /= 25) STOP 135
+ if (iachar ("")/= 25) STOP 136
+ if (achar (25) /= "") STOP 137
+ if ("" /= achar ( ichar ( ""))) STOP 138
i = 25
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(26)) /= 26) call abort
- if (iachar(achar(27)) /= 27) call abort
- if (iachar ("")/= 27) call abort
- if (achar (27) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 139
+ if (iachar(c) /= iachar("")) STOP 140
+ if (iachar(achar(26)) /= 26) STOP 141
+ if (iachar(achar(27)) /= 27) STOP 142
+ if (iachar ("")/= 27) STOP 143
+ if (achar (27) /= "") STOP 144
+ if ("" /= achar ( ichar ( ""))) STOP 145
i = 27
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(28)) /= 28) call abort
- if (iachar ("")/= 28) call abort
- if (achar (28) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 146
+ if (iachar(c) /= iachar("")) STOP 147
+ if (iachar(achar(28)) /= 28) STOP 148
+ if (iachar ("")/= 28) STOP 149
+ if (achar (28) /= "") STOP 150
+ if ("" /= achar ( ichar ( ""))) STOP 151
i = 28
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(29)) /= 29) call abort
- if (iachar ("")/= 29) call abort
- if (achar (29) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 152
+ if (iachar(c) /= iachar("")) STOP 153
+ if (iachar(achar(29)) /= 29) STOP 154
+ if (iachar ("")/= 29) STOP 155
+ if (achar (29) /= "") STOP 156
+ if ("" /= achar ( ichar ( ""))) STOP 157
i = 29
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(30)) /= 30) call abort
- if (iachar ("")/= 30) call abort
- if (achar (30) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 158
+ if (iachar(c) /= iachar("")) STOP 159
+ if (iachar(achar(30)) /= 30) STOP 160
+ if (iachar ("")/= 30) STOP 161
+ if (achar (30) /= "") STOP 162
+ if ("" /= achar ( ichar ( ""))) STOP 163
i = 30
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(31)) /= 31) call abort
- if (iachar ("")/= 31) call abort
- if (achar (31) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 164
+ if (iachar(c) /= iachar("")) STOP 165
+ if (iachar(achar(31)) /= 31) STOP 166
+ if (iachar ("")/= 31) STOP 167
+ if (achar (31) /= "") STOP 168
+ if ("" /= achar ( ichar ( ""))) STOP 169
i = 31
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(32)) /= 32) call abort
- if (iachar (" ")/= 32) call abort
- if (achar (32) /= " ") call abort
- if (" " /= achar ( ichar ( " "))) call abort
+ if (achar(i) /= "") STOP 170
+ if (iachar(c) /= iachar("")) STOP 171
+ if (iachar(achar(32)) /= 32) STOP 172
+ if (iachar (" ")/= 32) STOP 173
+ if (achar (32) /= " ") STOP 174
+ if (" " /= achar ( ichar ( " "))) STOP 175
i = 32
c = " "
- if (achar(i) /= " ") call abort
- if (iachar(c) /= iachar(" ")) call abort
- if (iachar(achar(33)) /= 33) call abort
- if (iachar ("!")/= 33) call abort
- if (achar (33) /= "!") call abort
- if ("!" /= achar ( ichar ( "!"))) call abort
+ if (achar(i) /= " ") STOP 176
+ if (iachar(c) /= iachar(" ")) STOP 177
+ if (iachar(achar(33)) /= 33) STOP 178
+ if (iachar ("!")/= 33) STOP 179
+ if (achar (33) /= "!") STOP 180
+ if ("!" /= achar ( ichar ( "!"))) STOP 181
i = 33
c = "!"
- if (achar(i) /= "!") call abort
- if (iachar(c) /= iachar("!")) call abort
- if (iachar(achar(34)) /= 34) call abort
- if (iachar ('"')/= 34) call abort
- if (achar (34) /= '"') call abort
- if ('"' /= achar ( ichar ( '"'))) call abort
+ if (achar(i) /= "!") STOP 182
+ if (iachar(c) /= iachar("!")) STOP 183
+ if (iachar(achar(34)) /= 34) STOP 184
+ if (iachar ('"')/= 34) STOP 185
+ if (achar (34) /= '"') STOP 186
+ if ('"' /= achar ( ichar ( '"'))) STOP 187
i = 34
c = '"'
- if (achar(i) /= '"') call abort
- if (iachar(c) /= iachar('"')) call abort
- if (iachar(achar(35)) /= 35) call abort
- if (iachar ("#")/= 35) call abort
- if (achar (35) /= "#") call abort
- if ("#" /= achar ( ichar ( "#"))) call abort
+ if (achar(i) /= '"') STOP 188
+ if (iachar(c) /= iachar('"')) STOP 189
+ if (iachar(achar(35)) /= 35) STOP 190
+ if (iachar ("#")/= 35) STOP 191
+ if (achar (35) /= "#") STOP 192
+ if ("#" /= achar ( ichar ( "#"))) STOP 193
i = 35
c = "#"
- if (achar(i) /= "#") call abort
- if (iachar(c) /= iachar("#")) call abort
- if (iachar(achar(36)) /= 36) call abort
- if (iachar ("$")/= 36) call abort
- if (achar (36) /= "$") call abort
- if ("$" /= achar ( ichar ( "$"))) call abort
+ if (achar(i) /= "#") STOP 194
+ if (iachar(c) /= iachar("#")) STOP 195
+ if (iachar(achar(36)) /= 36) STOP 196
+ if (iachar ("$")/= 36) STOP 197
+ if (achar (36) /= "$") STOP 198
+ if ("$" /= achar ( ichar ( "$"))) STOP 199
i = 36
c = "$"
- if (achar(i) /= "$") call abort
- if (iachar(c) /= iachar("$")) call abort
- if (iachar(achar(37)) /= 37) call abort
- if (iachar ("%")/= 37) call abort
- if (achar (37) /= "%") call abort
- if ("%" /= achar ( ichar ( "%"))) call abort
+ if (achar(i) /= "$") STOP 200
+ if (iachar(c) /= iachar("$")) STOP 201
+ if (iachar(achar(37)) /= 37) STOP 202
+ if (iachar ("%")/= 37) STOP 203
+ if (achar (37) /= "%") STOP 204
+ if ("%" /= achar ( ichar ( "%"))) STOP 205
i = 37
c = "%"
- if (achar(i) /= "%") call abort
- if (iachar(c) /= iachar("%")) call abort
- if (iachar(achar(38)) /= 38) call abort
- if (iachar ("&")/= 38) call abort
- if (achar (38) /= "&") call abort
- if ("&" /= achar ( ichar ( "&"))) call abort
+ if (achar(i) /= "%") STOP 206
+ if (iachar(c) /= iachar("%")) STOP 207
+ if (iachar(achar(38)) /= 38) STOP 208
+ if (iachar ("&")/= 38) STOP 209
+ if (achar (38) /= "&") STOP 210
+ if ("&" /= achar ( ichar ( "&"))) STOP 211
i = 38
c = "&"
- if (achar(i) /= "&") call abort
- if (iachar(c) /= iachar("&")) call abort
- if (iachar(achar(39)) /= 39) call abort
- if (iachar ("'")/= 39) call abort
- if (achar (39) /= "'") call abort
- if ("'" /= achar ( ichar ( "'"))) call abort
+ if (achar(i) /= "&") STOP 212
+ if (iachar(c) /= iachar("&")) STOP 213
+ if (iachar(achar(39)) /= 39) STOP 214
+ if (iachar ("'")/= 39) STOP 215
+ if (achar (39) /= "'") STOP 216
+ if ("'" /= achar ( ichar ( "'"))) STOP 217
i = 39
c = "'"
- if (achar(i) /= "'") call abort
- if (iachar(c) /= iachar("'")) call abort
- if (iachar(achar(40)) /= 40) call abort
- if (iachar ("(")/= 40) call abort
- if (achar (40) /= "(") call abort
- if ("(" /= achar ( ichar ( "("))) call abort
+ if (achar(i) /= "'") STOP 218
+ if (iachar(c) /= iachar("'")) STOP 219
+ if (iachar(achar(40)) /= 40) STOP 220
+ if (iachar ("(")/= 40) STOP 221
+ if (achar (40) /= "(") STOP 222
+ if ("(" /= achar ( ichar ( "("))) STOP 223
i = 40
c = "("
- if (achar(i) /= "(") call abort
- if (iachar(c) /= iachar("(")) call abort
- if (iachar(achar(41)) /= 41) call abort
- if (iachar (")")/= 41) call abort
- if (achar (41) /= ")") call abort
- if (")" /= achar ( ichar ( ")"))) call abort
+ if (achar(i) /= "(") STOP 224
+ if (iachar(c) /= iachar("(")) STOP 225
+ if (iachar(achar(41)) /= 41) STOP 226
+ if (iachar (")")/= 41) STOP 227
+ if (achar (41) /= ")") STOP 228
+ if (")" /= achar ( ichar ( ")"))) STOP 229
i = 41
c = ")"
- if (achar(i) /= ")") call abort
- if (iachar(c) /= iachar(")")) call abort
- if (iachar(achar(42)) /= 42) call abort
- if (iachar ("*")/= 42) call abort
- if (achar (42) /= "*") call abort
- if ("*" /= achar ( ichar ( "*"))) call abort
+ if (achar(i) /= ")") STOP 230
+ if (iachar(c) /= iachar(")")) STOP 231
+ if (iachar(achar(42)) /= 42) STOP 232
+ if (iachar ("*")/= 42) STOP 233
+ if (achar (42) /= "*") STOP 234
+ if ("*" /= achar ( ichar ( "*"))) STOP 235
i = 42
c = "*"
- if (achar(i) /= "*") call abort
- if (iachar(c) /= iachar("*")) call abort
- if (iachar(achar(43)) /= 43) call abort
- if (iachar ("+")/= 43) call abort
- if (achar (43) /= "+") call abort
- if ("+" /= achar ( ichar ( "+"))) call abort
+ if (achar(i) /= "*") STOP 236
+ if (iachar(c) /= iachar("*")) STOP 237
+ if (iachar(achar(43)) /= 43) STOP 238
+ if (iachar ("+")/= 43) STOP 239
+ if (achar (43) /= "+") STOP 240
+ if ("+" /= achar ( ichar ( "+"))) STOP 241
i = 43
c = "+"
- if (achar(i) /= "+") call abort
- if (iachar(c) /= iachar("+")) call abort
- if (iachar(achar(44)) /= 44) call abort
- if (iachar (",")/= 44) call abort
- if (achar (44) /= ",") call abort
- if ("," /= achar ( ichar ( ","))) call abort
+ if (achar(i) /= "+") STOP 242
+ if (iachar(c) /= iachar("+")) STOP 243
+ if (iachar(achar(44)) /= 44) STOP 244
+ if (iachar (",")/= 44) STOP 245
+ if (achar (44) /= ",") STOP 246
+ if ("," /= achar ( ichar ( ","))) STOP 247
i = 44
c = ","
- if (achar(i) /= ",") call abort
- if (iachar(c) /= iachar(",")) call abort
- if (iachar(achar(45)) /= 45) call abort
- if (iachar ("-")/= 45) call abort
- if (achar (45) /= "-") call abort
- if ("-" /= achar ( ichar ( "-"))) call abort
+ if (achar(i) /= ",") STOP 248
+ if (iachar(c) /= iachar(",")) STOP 249
+ if (iachar(achar(45)) /= 45) STOP 250
+ if (iachar ("-")/= 45) STOP 251
+ if (achar (45) /= "-") STOP 252
+ if ("-" /= achar ( ichar ( "-"))) STOP 253
i = 45
c = "-"
- if (achar(i) /= "-") call abort
- if (iachar(c) /= iachar("-")) call abort
- if (iachar(achar(46)) /= 46) call abort
- if (iachar (".")/= 46) call abort
- if (achar (46) /= ".") call abort
- if ("." /= achar ( ichar ( "."))) call abort
+ if (achar(i) /= "-") STOP 254
+ if (iachar(c) /= iachar("-")) STOP 255
+ if (iachar(achar(46)) /= 46) STOP 256
+ if (iachar (".")/= 46) STOP 257
+ if (achar (46) /= ".") STOP 258
+ if ("." /= achar ( ichar ( "."))) STOP 259
i = 46
c = "."
- if (achar(i) /= ".") call abort
- if (iachar(c) /= iachar(".")) call abort
- if (iachar(achar(47)) /= 47) call abort
- if (iachar ("/")/= 47) call abort
- if (achar (47) /= "/") call abort
- if ("/" /= achar ( ichar ( "/"))) call abort
+ if (achar(i) /= ".") STOP 260
+ if (iachar(c) /= iachar(".")) STOP 261
+ if (iachar(achar(47)) /= 47) STOP 262
+ if (iachar ("/")/= 47) STOP 263
+ if (achar (47) /= "/") STOP 264
+ if ("/" /= achar ( ichar ( "/"))) STOP 265
i = 47
c = "/"
- if (achar(i) /= "/") call abort
- if (iachar(c) /= iachar("/")) call abort
- if (iachar(achar(48)) /= 48) call abort
- if (iachar ("0")/= 48) call abort
- if (achar (48) /= "0") call abort
- if ("0" /= achar ( ichar ( "0"))) call abort
+ if (achar(i) /= "/") STOP 266
+ if (iachar(c) /= iachar("/")) STOP 267
+ if (iachar(achar(48)) /= 48) STOP 268
+ if (iachar ("0")/= 48) STOP 269
+ if (achar (48) /= "0") STOP 270
+ if ("0" /= achar ( ichar ( "0"))) STOP 271
i = 48
c = "0"
- if (achar(i) /= "0") call abort
- if (iachar(c) /= iachar("0")) call abort
- if (iachar(achar(49)) /= 49) call abort
- if (iachar ("1")/= 49) call abort
- if (achar (49) /= "1") call abort
- if ("1" /= achar ( ichar ( "1"))) call abort
+ if (achar(i) /= "0") STOP 272
+ if (iachar(c) /= iachar("0")) STOP 273
+ if (iachar(achar(49)) /= 49) STOP 274
+ if (iachar ("1")/= 49) STOP 275
+ if (achar (49) /= "1") STOP 276
+ if ("1" /= achar ( ichar ( "1"))) STOP 277
i = 49
c = "1"
- if (achar(i) /= "1") call abort
- if (iachar(c) /= iachar("1")) call abort
- if (iachar(achar(50)) /= 50) call abort
- if (iachar ("2")/= 50) call abort
- if (achar (50) /= "2") call abort
- if ("2" /= achar ( ichar ( "2"))) call abort
+ if (achar(i) /= "1") STOP 278
+ if (iachar(c) /= iachar("1")) STOP 279
+ if (iachar(achar(50)) /= 50) STOP 280
+ if (iachar ("2")/= 50) STOP 281
+ if (achar (50) /= "2") STOP 282
+ if ("2" /= achar ( ichar ( "2"))) STOP 283
i = 50
c = "2"
- if (achar(i) /= "2") call abort
- if (iachar(c) /= iachar("2")) call abort
- if (iachar(achar(51)) /= 51) call abort
- if (iachar ("3")/= 51) call abort
- if (achar (51) /= "3") call abort
- if ("3" /= achar ( ichar ( "3"))) call abort
+ if (achar(i) /= "2") STOP 284
+ if (iachar(c) /= iachar("2")) STOP 285
+ if (iachar(achar(51)) /= 51) STOP 286
+ if (iachar ("3")/= 51) STOP 287
+ if (achar (51) /= "3") STOP 288
+ if ("3" /= achar ( ichar ( "3"))) STOP 289
i = 51
c = "3"
- if (achar(i) /= "3") call abort
- if (iachar(c) /= iachar("3")) call abort
- if (iachar(achar(52)) /= 52) call abort
- if (iachar ("4")/= 52) call abort
- if (achar (52) /= "4") call abort
- if ("4" /= achar ( ichar ( "4"))) call abort
+ if (achar(i) /= "3") STOP 290
+ if (iachar(c) /= iachar("3")) STOP 291
+ if (iachar(achar(52)) /= 52) STOP 292
+ if (iachar ("4")/= 52) STOP 293
+ if (achar (52) /= "4") STOP 294
+ if ("4" /= achar ( ichar ( "4"))) STOP 295
i = 52
c = "4"
- if (achar(i) /= "4") call abort
- if (iachar(c) /= iachar("4")) call abort
- if (iachar(achar(53)) /= 53) call abort
- if (iachar ("5")/= 53) call abort
- if (achar (53) /= "5") call abort
- if ("5" /= achar ( ichar ( "5"))) call abort
+ if (achar(i) /= "4") STOP 296
+ if (iachar(c) /= iachar("4")) STOP 297
+ if (iachar(achar(53)) /= 53) STOP 298
+ if (iachar ("5")/= 53) STOP 299
+ if (achar (53) /= "5") STOP 300
+ if ("5" /= achar ( ichar ( "5"))) STOP 301
i = 53
c = "5"
- if (achar(i) /= "5") call abort
- if (iachar(c) /= iachar("5")) call abort
- if (iachar(achar(54)) /= 54) call abort
- if (iachar ("6")/= 54) call abort
- if (achar (54) /= "6") call abort
- if ("6" /= achar ( ichar ( "6"))) call abort
+ if (achar(i) /= "5") STOP 302
+ if (iachar(c) /= iachar("5")) STOP 303
+ if (iachar(achar(54)) /= 54) STOP 304
+ if (iachar ("6")/= 54) STOP 305
+ if (achar (54) /= "6") STOP 306
+ if ("6" /= achar ( ichar ( "6"))) STOP 307
i = 54
c = "6"
- if (achar(i) /= "6") call abort
- if (iachar(c) /= iachar("6")) call abort
- if (iachar(achar(55)) /= 55) call abort
- if (iachar ("7")/= 55) call abort
- if (achar (55) /= "7") call abort
- if ("7" /= achar ( ichar ( "7"))) call abort
+ if (achar(i) /= "6") STOP 308
+ if (iachar(c) /= iachar("6")) STOP 309
+ if (iachar(achar(55)) /= 55) STOP 310
+ if (iachar ("7")/= 55) STOP 311
+ if (achar (55) /= "7") STOP 312
+ if ("7" /= achar ( ichar ( "7"))) STOP 313
i = 55
c = "7"
- if (achar(i) /= "7") call abort
- if (iachar(c) /= iachar("7")) call abort
- if (iachar(achar(56)) /= 56) call abort
- if (iachar ("8")/= 56) call abort
- if (achar (56) /= "8") call abort
- if ("8" /= achar ( ichar ( "8"))) call abort
+ if (achar(i) /= "7") STOP 314
+ if (iachar(c) /= iachar("7")) STOP 315
+ if (iachar(achar(56)) /= 56) STOP 316
+ if (iachar ("8")/= 56) STOP 317
+ if (achar (56) /= "8") STOP 318
+ if ("8" /= achar ( ichar ( "8"))) STOP 319
i = 56
c = "8"
- if (achar(i) /= "8") call abort
- if (iachar(c) /= iachar("8")) call abort
- if (iachar(achar(57)) /= 57) call abort
- if (iachar ("9")/= 57) call abort
- if (achar (57) /= "9") call abort
- if ("9" /= achar ( ichar ( "9"))) call abort
+ if (achar(i) /= "8") STOP 320
+ if (iachar(c) /= iachar("8")) STOP 321
+ if (iachar(achar(57)) /= 57) STOP 322
+ if (iachar ("9")/= 57) STOP 323
+ if (achar (57) /= "9") STOP 324
+ if ("9" /= achar ( ichar ( "9"))) STOP 325
i = 57
c = "9"
- if (achar(i) /= "9") call abort
- if (iachar(c) /= iachar("9")) call abort
- if (iachar(achar(58)) /= 58) call abort
- if (iachar (":")/= 58) call abort
- if (achar (58) /= ":") call abort
- if (":" /= achar ( ichar ( ":"))) call abort
+ if (achar(i) /= "9") STOP 326
+ if (iachar(c) /= iachar("9")) STOP 327
+ if (iachar(achar(58)) /= 58) STOP 328
+ if (iachar (":")/= 58) STOP 329
+ if (achar (58) /= ":") STOP 330
+ if (":" /= achar ( ichar ( ":"))) STOP 331
i = 58
c = ":"
- if (achar(i) /= ":") call abort
- if (iachar(c) /= iachar(":")) call abort
- if (iachar(achar(59)) /= 59) call abort
- if (iachar (";")/= 59) call abort
- if (achar (59) /= ";") call abort
- if (";" /= achar ( ichar ( ";"))) call abort
+ if (achar(i) /= ":") STOP 332
+ if (iachar(c) /= iachar(":")) STOP 333
+ if (iachar(achar(59)) /= 59) STOP 334
+ if (iachar (";")/= 59) STOP 335
+ if (achar (59) /= ";") STOP 336
+ if (";" /= achar ( ichar ( ";"))) STOP 337
i = 59
c = ";"
- if (achar(i) /= ";") call abort
- if (iachar(c) /= iachar(";")) call abort
- if (iachar(achar(60)) /= 60) call abort
- if (iachar ("<")/= 60) call abort
- if (achar (60) /= "<") call abort
- if ("<" /= achar ( ichar ( "<"))) call abort
+ if (achar(i) /= ";") STOP 338
+ if (iachar(c) /= iachar(";")) STOP 339
+ if (iachar(achar(60)) /= 60) STOP 340
+ if (iachar ("<")/= 60) STOP 341
+ if (achar (60) /= "<") STOP 342
+ if ("<" /= achar ( ichar ( "<"))) STOP 343
i = 60
c = "<"
- if (achar(i) /= "<") call abort
- if (iachar(c) /= iachar("<")) call abort
- if (iachar(achar(61)) /= 61) call abort
- if (iachar ("=")/= 61) call abort
- if (achar (61) /= "=") call abort
- if ("=" /= achar ( ichar ( "="))) call abort
+ if (achar(i) /= "<") STOP 344
+ if (iachar(c) /= iachar("<")) STOP 345
+ if (iachar(achar(61)) /= 61) STOP 346
+ if (iachar ("=")/= 61) STOP 347
+ if (achar (61) /= "=") STOP 348
+ if ("=" /= achar ( ichar ( "="))) STOP 349
i = 61
c = "="
- if (achar(i) /= "=") call abort
- if (iachar(c) /= iachar("=")) call abort
- if (iachar(achar(62)) /= 62) call abort
- if (iachar (">")/= 62) call abort
- if (achar (62) /= ">") call abort
- if (">" /= achar ( ichar ( ">"))) call abort
+ if (achar(i) /= "=") STOP 350
+ if (iachar(c) /= iachar("=")) STOP 351
+ if (iachar(achar(62)) /= 62) STOP 352
+ if (iachar (">")/= 62) STOP 353
+ if (achar (62) /= ">") STOP 354
+ if (">" /= achar ( ichar ( ">"))) STOP 355
i = 62
c = ">"
- if (achar(i) /= ">") call abort
- if (iachar(c) /= iachar(">")) call abort
- if (iachar(achar(63)) /= 63) call abort
- if (iachar ("?")/= 63) call abort
- if (achar (63) /= "?") call abort
- if ("?" /= achar ( ichar ( "?"))) call abort
+ if (achar(i) /= ">") STOP 356
+ if (iachar(c) /= iachar(">")) STOP 357
+ if (iachar(achar(63)) /= 63) STOP 358
+ if (iachar ("?")/= 63) STOP 359
+ if (achar (63) /= "?") STOP 360
+ if ("?" /= achar ( ichar ( "?"))) STOP 361
i = 63
c = "?"
- if (achar(i) /= "?") call abort
- if (iachar(c) /= iachar("?")) call abort
- if (iachar(achar(64)) /= 64) call abort
- if (iachar ("@")/= 64) call abort
- if (achar (64) /= "@") call abort
- if ("@" /= achar ( ichar ( "@"))) call abort
+ if (achar(i) /= "?") STOP 362
+ if (iachar(c) /= iachar("?")) STOP 363
+ if (iachar(achar(64)) /= 64) STOP 364
+ if (iachar ("@")/= 64) STOP 365
+ if (achar (64) /= "@") STOP 366
+ if ("@" /= achar ( ichar ( "@"))) STOP 367
i = 64
c = "@"
- if (achar(i) /= "@") call abort
- if (iachar(c) /= iachar("@")) call abort
- if (iachar(achar(65)) /= 65) call abort
- if (iachar ("A")/= 65) call abort
- if (achar (65) /= "A") call abort
- if ("A" /= achar ( ichar ( "A"))) call abort
+ if (achar(i) /= "@") STOP 368
+ if (iachar(c) /= iachar("@")) STOP 369
+ if (iachar(achar(65)) /= 65) STOP 370
+ if (iachar ("A")/= 65) STOP 371
+ if (achar (65) /= "A") STOP 372
+ if ("A" /= achar ( ichar ( "A"))) STOP 373
i = 65
c = "A"
- if (achar(i) /= "A") call abort
- if (iachar(c) /= iachar("A")) call abort
- if (iachar(achar(66)) /= 66) call abort
- if (iachar ("B")/= 66) call abort
- if (achar (66) /= "B") call abort
- if ("B" /= achar ( ichar ( "B"))) call abort
+ if (achar(i) /= "A") STOP 374
+ if (iachar(c) /= iachar("A")) STOP 375
+ if (iachar(achar(66)) /= 66) STOP 376
+ if (iachar ("B")/= 66) STOP 377
+ if (achar (66) /= "B") STOP 378
+ if ("B" /= achar ( ichar ( "B"))) STOP 379
i = 66
c = "B"
- if (achar(i) /= "B") call abort
- if (iachar(c) /= iachar("B")) call abort
- if (iachar(achar(67)) /= 67) call abort
- if (iachar ("C")/= 67) call abort
- if (achar (67) /= "C") call abort
- if ("C" /= achar ( ichar ( "C"))) call abort
+ if (achar(i) /= "B") STOP 380
+ if (iachar(c) /= iachar("B")) STOP 381
+ if (iachar(achar(67)) /= 67) STOP 382
+ if (iachar ("C")/= 67) STOP 383
+ if (achar (67) /= "C") STOP 384
+ if ("C" /= achar ( ichar ( "C"))) STOP 385
i = 67
c = "C"
- if (achar(i) /= "C") call abort
- if (iachar(c) /= iachar("C")) call abort
- if (iachar(achar(68)) /= 68) call abort
- if (iachar ("D")/= 68) call abort
- if (achar (68) /= "D") call abort
- if ("D" /= achar ( ichar ( "D"))) call abort
+ if (achar(i) /= "C") STOP 386
+ if (iachar(c) /= iachar("C")) STOP 387
+ if (iachar(achar(68)) /= 68) STOP 388
+ if (iachar ("D")/= 68) STOP 389
+ if (achar (68) /= "D") STOP 390
+ if ("D" /= achar ( ichar ( "D"))) STOP 391
i = 68
c = "D"
- if (achar(i) /= "D") call abort
- if (iachar(c) /= iachar("D")) call abort
- if (iachar(achar(69)) /= 69) call abort
- if (iachar ("E")/= 69) call abort
- if (achar (69) /= "E") call abort
- if ("E" /= achar ( ichar ( "E"))) call abort
+ if (achar(i) /= "D") STOP 392
+ if (iachar(c) /= iachar("D")) STOP 393
+ if (iachar(achar(69)) /= 69) STOP 394
+ if (iachar ("E")/= 69) STOP 395
+ if (achar (69) /= "E") STOP 396
+ if ("E" /= achar ( ichar ( "E"))) STOP 397
i = 69
c = "E"
- if (achar(i) /= "E") call abort
- if (iachar(c) /= iachar("E")) call abort
- if (iachar(achar(70)) /= 70) call abort
- if (iachar ("F")/= 70) call abort
- if (achar (70) /= "F") call abort
- if ("F" /= achar ( ichar ( "F"))) call abort
+ if (achar(i) /= "E") STOP 398
+ if (iachar(c) /= iachar("E")) STOP 399
+ if (iachar(achar(70)) /= 70) STOP 400
+ if (iachar ("F")/= 70) STOP 401
+ if (achar (70) /= "F") STOP 402
+ if ("F" /= achar ( ichar ( "F"))) STOP 403
i = 70
c = "F"
- if (achar(i) /= "F") call abort
- if (iachar(c) /= iachar("F")) call abort
- if (iachar(achar(71)) /= 71) call abort
- if (iachar ("G")/= 71) call abort
- if (achar (71) /= "G") call abort
- if ("G" /= achar ( ichar ( "G"))) call abort
+ if (achar(i) /= "F") STOP 404
+ if (iachar(c) /= iachar("F")) STOP 405
+ if (iachar(achar(71)) /= 71) STOP 406
+ if (iachar ("G")/= 71) STOP 407
+ if (achar (71) /= "G") STOP 408
+ if ("G" /= achar ( ichar ( "G"))) STOP 409
i = 71
c = "G"
- if (achar(i) /= "G") call abort
- if (iachar(c) /= iachar("G")) call abort
- if (iachar(achar(72)) /= 72) call abort
- if (iachar ("H")/= 72) call abort
- if (achar (72) /= "H") call abort
- if ("H" /= achar ( ichar ( "H"))) call abort
+ if (achar(i) /= "G") STOP 410
+ if (iachar(c) /= iachar("G")) STOP 411
+ if (iachar(achar(72)) /= 72) STOP 412
+ if (iachar ("H")/= 72) STOP 413
+ if (achar (72) /= "H") STOP 414
+ if ("H" /= achar ( ichar ( "H"))) STOP 415
i = 72
c = "H"
- if (achar(i) /= "H") call abort
- if (iachar(c) /= iachar("H")) call abort
- if (iachar(achar(73)) /= 73) call abort
- if (iachar ("I")/= 73) call abort
- if (achar (73) /= "I") call abort
- if ("I" /= achar ( ichar ( "I"))) call abort
+ if (achar(i) /= "H") STOP 416
+ if (iachar(c) /= iachar("H")) STOP 417
+ if (iachar(achar(73)) /= 73) STOP 418
+ if (iachar ("I")/= 73) STOP 419
+ if (achar (73) /= "I") STOP 420
+ if ("I" /= achar ( ichar ( "I"))) STOP 421
i = 73
c = "I"
- if (achar(i) /= "I") call abort
- if (iachar(c) /= iachar("I")) call abort
- if (iachar(achar(74)) /= 74) call abort
- if (iachar ("J")/= 74) call abort
- if (achar (74) /= "J") call abort
- if ("J" /= achar ( ichar ( "J"))) call abort
+ if (achar(i) /= "I") STOP 422
+ if (iachar(c) /= iachar("I")) STOP 423
+ if (iachar(achar(74)) /= 74) STOP 424
+ if (iachar ("J")/= 74) STOP 425
+ if (achar (74) /= "J") STOP 426
+ if ("J" /= achar ( ichar ( "J"))) STOP 427
i = 74
c = "J"
- if (achar(i) /= "J") call abort
- if (iachar(c) /= iachar("J")) call abort
- if (iachar(achar(75)) /= 75) call abort
- if (iachar ("K")/= 75) call abort
- if (achar (75) /= "K") call abort
- if ("K" /= achar ( ichar ( "K"))) call abort
+ if (achar(i) /= "J") STOP 428
+ if (iachar(c) /= iachar("J")) STOP 429
+ if (iachar(achar(75)) /= 75) STOP 430
+ if (iachar ("K")/= 75) STOP 431
+ if (achar (75) /= "K") STOP 432
+ if ("K" /= achar ( ichar ( "K"))) STOP 433
i = 75
c = "K"
- if (achar(i) /= "K") call abort
- if (iachar(c) /= iachar("K")) call abort
- if (iachar(achar(76)) /= 76) call abort
- if (iachar ("L")/= 76) call abort
- if (achar (76) /= "L") call abort
- if ("L" /= achar ( ichar ( "L"))) call abort
+ if (achar(i) /= "K") STOP 434
+ if (iachar(c) /= iachar("K")) STOP 435
+ if (iachar(achar(76)) /= 76) STOP 436
+ if (iachar ("L")/= 76) STOP 437
+ if (achar (76) /= "L") STOP 438
+ if ("L" /= achar ( ichar ( "L"))) STOP 439
i = 76
c = "L"
- if (achar(i) /= "L") call abort
- if (iachar(c) /= iachar("L")) call abort
- if (iachar(achar(77)) /= 77) call abort
- if (iachar ("M")/= 77) call abort
- if (achar (77) /= "M") call abort
- if ("M" /= achar ( ichar ( "M"))) call abort
+ if (achar(i) /= "L") STOP 440
+ if (iachar(c) /= iachar("L")) STOP 441
+ if (iachar(achar(77)) /= 77) STOP 442
+ if (iachar ("M")/= 77) STOP 443
+ if (achar (77) /= "M") STOP 444
+ if ("M" /= achar ( ichar ( "M"))) STOP 445
i = 77
c = "M"
- if (achar(i) /= "M") call abort
- if (iachar(c) /= iachar("M")) call abort
- if (iachar(achar(78)) /= 78) call abort
- if (iachar ("N")/= 78) call abort
- if (achar (78) /= "N") call abort
- if ("N" /= achar ( ichar ( "N"))) call abort
+ if (achar(i) /= "M") STOP 446
+ if (iachar(c) /= iachar("M")) STOP 447
+ if (iachar(achar(78)) /= 78) STOP 448
+ if (iachar ("N")/= 78) STOP 449
+ if (achar (78) /= "N") STOP 450
+ if ("N" /= achar ( ichar ( "N"))) STOP 451
i = 78
c = "N"
- if (achar(i) /= "N") call abort
- if (iachar(c) /= iachar("N")) call abort
- if (iachar(achar(79)) /= 79) call abort
- if (iachar ("O")/= 79) call abort
- if (achar (79) /= "O") call abort
- if ("O" /= achar ( ichar ( "O"))) call abort
+ if (achar(i) /= "N") STOP 452
+ if (iachar(c) /= iachar("N")) STOP 453
+ if (iachar(achar(79)) /= 79) STOP 454
+ if (iachar ("O")/= 79) STOP 455
+ if (achar (79) /= "O") STOP 456
+ if ("O" /= achar ( ichar ( "O"))) STOP 457
i = 79
c = "O"
- if (achar(i) /= "O") call abort
- if (iachar(c) /= iachar("O")) call abort
- if (iachar(achar(80)) /= 80) call abort
- if (iachar ("P")/= 80) call abort
- if (achar (80) /= "P") call abort
- if ("P" /= achar ( ichar ( "P"))) call abort
+ if (achar(i) /= "O") STOP 458
+ if (iachar(c) /= iachar("O")) STOP 459
+ if (iachar(achar(80)) /= 80) STOP 460
+ if (iachar ("P")/= 80) STOP 461
+ if (achar (80) /= "P") STOP 462
+ if ("P" /= achar ( ichar ( "P"))) STOP 463
i = 80
c = "P"
- if (achar(i) /= "P") call abort
- if (iachar(c) /= iachar("P")) call abort
- if (iachar(achar(81)) /= 81) call abort
- if (iachar ("Q")/= 81) call abort
- if (achar (81) /= "Q") call abort
- if ("Q" /= achar ( ichar ( "Q"))) call abort
+ if (achar(i) /= "P") STOP 464
+ if (iachar(c) /= iachar("P")) STOP 465
+ if (iachar(achar(81)) /= 81) STOP 466
+ if (iachar ("Q")/= 81) STOP 467
+ if (achar (81) /= "Q") STOP 468
+ if ("Q" /= achar ( ichar ( "Q"))) STOP 469
i = 81
c = "Q"
- if (achar(i) /= "Q") call abort
- if (iachar(c) /= iachar("Q")) call abort
- if (iachar(achar(82)) /= 82) call abort
- if (iachar ("R")/= 82) call abort
- if (achar (82) /= "R") call abort
- if ("R" /= achar ( ichar ( "R"))) call abort
+ if (achar(i) /= "Q") STOP 470
+ if (iachar(c) /= iachar("Q")) STOP 471
+ if (iachar(achar(82)) /= 82) STOP 472
+ if (iachar ("R")/= 82) STOP 473
+ if (achar (82) /= "R") STOP 474
+ if ("R" /= achar ( ichar ( "R"))) STOP 475
i = 82
c = "R"
- if (achar(i) /= "R") call abort
- if (iachar(c) /= iachar("R")) call abort
- if (iachar(achar(83)) /= 83) call abort
- if (iachar ("S")/= 83) call abort
- if (achar (83) /= "S") call abort
- if ("S" /= achar ( ichar ( "S"))) call abort
+ if (achar(i) /= "R") STOP 476
+ if (iachar(c) /= iachar("R")) STOP 477
+ if (iachar(achar(83)) /= 83) STOP 478
+ if (iachar ("S")/= 83) STOP 479
+ if (achar (83) /= "S") STOP 480
+ if ("S" /= achar ( ichar ( "S"))) STOP 481
i = 83
c = "S"
- if (achar(i) /= "S") call abort
- if (iachar(c) /= iachar("S")) call abort
- if (iachar(achar(84)) /= 84) call abort
- if (iachar ("T")/= 84) call abort
- if (achar (84) /= "T") call abort
- if ("T" /= achar ( ichar ( "T"))) call abort
+ if (achar(i) /= "S") STOP 482
+ if (iachar(c) /= iachar("S")) STOP 483
+ if (iachar(achar(84)) /= 84) STOP 484
+ if (iachar ("T")/= 84) STOP 485
+ if (achar (84) /= "T") STOP 486
+ if ("T" /= achar ( ichar ( "T"))) STOP 487
i = 84
c = "T"
- if (achar(i) /= "T") call abort
- if (iachar(c) /= iachar("T")) call abort
- if (iachar(achar(85)) /= 85) call abort
- if (iachar ("U")/= 85) call abort
- if (achar (85) /= "U") call abort
- if ("U" /= achar ( ichar ( "U"))) call abort
+ if (achar(i) /= "T") STOP 488
+ if (iachar(c) /= iachar("T")) STOP 489
+ if (iachar(achar(85)) /= 85) STOP 490
+ if (iachar ("U")/= 85) STOP 491
+ if (achar (85) /= "U") STOP 492
+ if ("U" /= achar ( ichar ( "U"))) STOP 493
i = 85
c = "U"
- if (achar(i) /= "U") call abort
- if (iachar(c) /= iachar("U")) call abort
- if (iachar(achar(86)) /= 86) call abort
- if (iachar ("V")/= 86) call abort
- if (achar (86) /= "V") call abort
- if ("V" /= achar ( ichar ( "V"))) call abort
+ if (achar(i) /= "U") STOP 494
+ if (iachar(c) /= iachar("U")) STOP 495
+ if (iachar(achar(86)) /= 86) STOP 496
+ if (iachar ("V")/= 86) STOP 497
+ if (achar (86) /= "V") STOP 498
+ if ("V" /= achar ( ichar ( "V"))) STOP 499
i = 86
c = "V"
- if (achar(i) /= "V") call abort
- if (iachar(c) /= iachar("V")) call abort
- if (iachar(achar(87)) /= 87) call abort
- if (iachar ("W")/= 87) call abort
- if (achar (87) /= "W") call abort
- if ("W" /= achar ( ichar ( "W"))) call abort
+ if (achar(i) /= "V") STOP 500
+ if (iachar(c) /= iachar("V")) STOP 501
+ if (iachar(achar(87)) /= 87) STOP 502
+ if (iachar ("W")/= 87) STOP 503
+ if (achar (87) /= "W") STOP 504
+ if ("W" /= achar ( ichar ( "W"))) STOP 505
i = 87
c = "W"
- if (achar(i) /= "W") call abort
- if (iachar(c) /= iachar("W")) call abort
- if (iachar(achar(88)) /= 88) call abort
- if (iachar ("X")/= 88) call abort
- if (achar (88) /= "X") call abort
- if ("X" /= achar ( ichar ( "X"))) call abort
+ if (achar(i) /= "W") STOP 506
+ if (iachar(c) /= iachar("W")) STOP 507
+ if (iachar(achar(88)) /= 88) STOP 508
+ if (iachar ("X")/= 88) STOP 509
+ if (achar (88) /= "X") STOP 510
+ if ("X" /= achar ( ichar ( "X"))) STOP 511
i = 88
c = "X"
- if (achar(i) /= "X") call abort
- if (iachar(c) /= iachar("X")) call abort
- if (iachar(achar(89)) /= 89) call abort
- if (iachar ("Y")/= 89) call abort
- if (achar (89) /= "Y") call abort
- if ("Y" /= achar ( ichar ( "Y"))) call abort
+ if (achar(i) /= "X") STOP 512
+ if (iachar(c) /= iachar("X")) STOP 513
+ if (iachar(achar(89)) /= 89) STOP 514
+ if (iachar ("Y")/= 89) STOP 515
+ if (achar (89) /= "Y") STOP 516
+ if ("Y" /= achar ( ichar ( "Y"))) STOP 517
i = 89
c = "Y"
- if (achar(i) /= "Y") call abort
- if (iachar(c) /= iachar("Y")) call abort
- if (iachar(achar(90)) /= 90) call abort
- if (iachar ("Z")/= 90) call abort
- if (achar (90) /= "Z") call abort
- if ("Z" /= achar ( ichar ( "Z"))) call abort
+ if (achar(i) /= "Y") STOP 518
+ if (iachar(c) /= iachar("Y")) STOP 519
+ if (iachar(achar(90)) /= 90) STOP 520
+ if (iachar ("Z")/= 90) STOP 521
+ if (achar (90) /= "Z") STOP 522
+ if ("Z" /= achar ( ichar ( "Z"))) STOP 523
i = 90
c = "Z"
- if (achar(i) /= "Z") call abort
- if (iachar(c) /= iachar("Z")) call abort
- if (iachar(achar(91)) /= 91) call abort
- if (iachar ("[")/= 91) call abort
- if (achar (91) /= "[") call abort
- if ("[" /= achar ( ichar ( "["))) call abort
+ if (achar(i) /= "Z") STOP 524
+ if (iachar(c) /= iachar("Z")) STOP 525
+ if (iachar(achar(91)) /= 91) STOP 526
+ if (iachar ("[")/= 91) STOP 527
+ if (achar (91) /= "[") STOP 528
+ if ("[" /= achar ( ichar ( "["))) STOP 529
i = 91
c = "["
- if (achar(i) /= "[") call abort
- if (iachar(c) /= iachar("[")) call abort
- if (iachar(achar(92)) /= 92) call abort
- if (iachar ("\")/= 92) call abort
- if (achar (92) /= "\") call abort
- if ("\" /= achar ( ichar ( "\"))) call abort
+ if (achar(i) /= "[") STOP 530
+ if (iachar(c) /= iachar("[")) STOP 531
+ if (iachar(achar(92)) /= 92) STOP 532
+ if (iachar ("\")/= 92) STOP 533
+ if (achar (92) /= "\") STOP 534
+ if ("\" /= achar ( ichar ( "\"))) STOP 535
i = 92
c = "\"
- if (achar(i) /= "\") call abort
- if (iachar(c) /= iachar("\")) call abort
- if (iachar(achar(93)) /= 93) call abort
- if (iachar ("]")/= 93) call abort
- if (achar (93) /= "]") call abort
- if ("]" /= achar ( ichar ( "]"))) call abort
+ if (achar(i) /= "\") STOP 536
+ if (iachar(c) /= iachar("\")) STOP 537
+ if (iachar(achar(93)) /= 93) STOP 538
+ if (iachar ("]")/= 93) STOP 539
+ if (achar (93) /= "]") STOP 540
+ if ("]" /= achar ( ichar ( "]"))) STOP 541
i = 93
c = "]"
- if (achar(i) /= "]") call abort
- if (iachar(c) /= iachar("]")) call abort
- if (iachar(achar(94)) /= 94) call abort
- if (iachar ("^")/= 94) call abort
- if (achar (94) /= "^") call abort
- if ("^" /= achar ( ichar ( "^"))) call abort
+ if (achar(i) /= "]") STOP 542
+ if (iachar(c) /= iachar("]")) STOP 543
+ if (iachar(achar(94)) /= 94) STOP 544
+ if (iachar ("^")/= 94) STOP 545
+ if (achar (94) /= "^") STOP 546
+ if ("^" /= achar ( ichar ( "^"))) STOP 547
i = 94
c = "^"
- if (achar(i) /= "^") call abort
- if (iachar(c) /= iachar("^")) call abort
- if (iachar(achar(95)) /= 95) call abort
- if (iachar ("_")/= 95) call abort
- if (achar (95) /= "_") call abort
- if ("_" /= achar ( ichar ( "_"))) call abort
+ if (achar(i) /= "^") STOP 548
+ if (iachar(c) /= iachar("^")) STOP 549
+ if (iachar(achar(95)) /= 95) STOP 550
+ if (iachar ("_")/= 95) STOP 551
+ if (achar (95) /= "_") STOP 552
+ if ("_" /= achar ( ichar ( "_"))) STOP 553
i = 95
c = "_"
- if (achar(i) /= "_") call abort
- if (iachar(c) /= iachar("_")) call abort
- if (iachar(achar(96)) /= 96) call abort
- if (iachar ("`")/= 96) call abort
- if (achar (96) /= "`") call abort
- if ("`" /= achar ( ichar ( "`"))) call abort
+ if (achar(i) /= "_") STOP 554
+ if (iachar(c) /= iachar("_")) STOP 555
+ if (iachar(achar(96)) /= 96) STOP 556
+ if (iachar ("`")/= 96) STOP 557
+ if (achar (96) /= "`") STOP 558
+ if ("`" /= achar ( ichar ( "`"))) STOP 559
i = 96
c = "`"
- if (achar(i) /= "`") call abort
- if (iachar(c) /= iachar("`")) call abort
- if (iachar(achar(97)) /= 97) call abort
- if (iachar ("a")/= 97) call abort
- if (achar (97) /= "a") call abort
- if ("a" /= achar ( ichar ( "a"))) call abort
+ if (achar(i) /= "`") STOP 560
+ if (iachar(c) /= iachar("`")) STOP 561
+ if (iachar(achar(97)) /= 97) STOP 562
+ if (iachar ("a")/= 97) STOP 563
+ if (achar (97) /= "a") STOP 564
+ if ("a" /= achar ( ichar ( "a"))) STOP 565
i = 97
c = "a"
- if (achar(i) /= "a") call abort
- if (iachar(c) /= iachar("a")) call abort
- if (iachar(achar(98)) /= 98) call abort
- if (iachar ("b")/= 98) call abort
- if (achar (98) /= "b") call abort
- if ("b" /= achar ( ichar ( "b"))) call abort
+ if (achar(i) /= "a") STOP 566
+ if (iachar(c) /= iachar("a")) STOP 567
+ if (iachar(achar(98)) /= 98) STOP 568
+ if (iachar ("b")/= 98) STOP 569
+ if (achar (98) /= "b") STOP 570
+ if ("b" /= achar ( ichar ( "b"))) STOP 571
i = 98
c = "b"
- if (achar(i) /= "b") call abort
- if (iachar(c) /= iachar("b")) call abort
- if (iachar(achar(99)) /= 99) call abort
- if (iachar ("c")/= 99) call abort
- if (achar (99) /= "c") call abort
- if ("c" /= achar ( ichar ( "c"))) call abort
+ if (achar(i) /= "b") STOP 572
+ if (iachar(c) /= iachar("b")) STOP 573
+ if (iachar(achar(99)) /= 99) STOP 574
+ if (iachar ("c")/= 99) STOP 575
+ if (achar (99) /= "c") STOP 576
+ if ("c" /= achar ( ichar ( "c"))) STOP 577
i = 99
c = "c"
- if (achar(i) /= "c") call abort
- if (iachar(c) /= iachar("c")) call abort
- if (iachar(achar(100)) /= 100) call abort
- if (iachar ("d")/= 100) call abort
- if (achar (100) /= "d") call abort
- if ("d" /= achar ( ichar ( "d"))) call abort
+ if (achar(i) /= "c") STOP 578
+ if (iachar(c) /= iachar("c")) STOP 579
+ if (iachar(achar(100)) /= 100) STOP 580
+ if (iachar ("d")/= 100) STOP 581
+ if (achar (100) /= "d") STOP 582
+ if ("d" /= achar ( ichar ( "d"))) STOP 583
i = 100
c = "d"
- if (achar(i) /= "d") call abort
- if (iachar(c) /= iachar("d")) call abort
- if (iachar(achar(101)) /= 101) call abort
- if (iachar ("e")/= 101) call abort
- if (achar (101) /= "e") call abort
- if ("e" /= achar ( ichar ( "e"))) call abort
+ if (achar(i) /= "d") STOP 584
+ if (iachar(c) /= iachar("d")) STOP 585
+ if (iachar(achar(101)) /= 101) STOP 586
+ if (iachar ("e")/= 101) STOP 587
+ if (achar (101) /= "e") STOP 588
+ if ("e" /= achar ( ichar ( "e"))) STOP 589
i = 101
c = "e"
- if (achar(i) /= "e") call abort
- if (iachar(c) /= iachar("e")) call abort
- if (iachar(achar(102)) /= 102) call abort
- if (iachar ("f")/= 102) call abort
- if (achar (102) /= "f") call abort
- if ("f" /= achar ( ichar ( "f"))) call abort
+ if (achar(i) /= "e") STOP 590
+ if (iachar(c) /= iachar("e")) STOP 591
+ if (iachar(achar(102)) /= 102) STOP 592
+ if (iachar ("f")/= 102) STOP 593
+ if (achar (102) /= "f") STOP 594
+ if ("f" /= achar ( ichar ( "f"))) STOP 595
i = 102
c = "f"
- if (achar(i) /= "f") call abort
- if (iachar(c) /= iachar("f")) call abort
- if (iachar(achar(103)) /= 103) call abort
- if (iachar ("g")/= 103) call abort
- if (achar (103) /= "g") call abort
- if ("g" /= achar ( ichar ( "g"))) call abort
+ if (achar(i) /= "f") STOP 596
+ if (iachar(c) /= iachar("f")) STOP 597
+ if (iachar(achar(103)) /= 103) STOP 598
+ if (iachar ("g")/= 103) STOP 599
+ if (achar (103) /= "g") STOP 600
+ if ("g" /= achar ( ichar ( "g"))) STOP 601
i = 103
c = "g"
- if (achar(i) /= "g") call abort
- if (iachar(c) /= iachar("g")) call abort
- if (iachar(achar(104)) /= 104) call abort
- if (iachar ("h")/= 104) call abort
- if (achar (104) /= "h") call abort
- if ("h" /= achar ( ichar ( "h"))) call abort
+ if (achar(i) /= "g") STOP 602
+ if (iachar(c) /= iachar("g")) STOP 603
+ if (iachar(achar(104)) /= 104) STOP 604
+ if (iachar ("h")/= 104) STOP 605
+ if (achar (104) /= "h") STOP 606
+ if ("h" /= achar ( ichar ( "h"))) STOP 607
i = 104
c = "h"
- if (achar(i) /= "h") call abort
- if (iachar(c) /= iachar("h")) call abort
- if (iachar(achar(105)) /= 105) call abort
- if (iachar ("i")/= 105) call abort
- if (achar (105) /= "i") call abort
- if ("i" /= achar ( ichar ( "i"))) call abort
+ if (achar(i) /= "h") STOP 608
+ if (iachar(c) /= iachar("h")) STOP 609
+ if (iachar(achar(105)) /= 105) STOP 610
+ if (iachar ("i")/= 105) STOP 611
+ if (achar (105) /= "i") STOP 612
+ if ("i" /= achar ( ichar ( "i"))) STOP 613
i = 105
c = "i"
- if (achar(i) /= "i") call abort
- if (iachar(c) /= iachar("i")) call abort
- if (iachar(achar(106)) /= 106) call abort
- if (iachar ("j")/= 106) call abort
- if (achar (106) /= "j") call abort
- if ("j" /= achar ( ichar ( "j"))) call abort
+ if (achar(i) /= "i") STOP 614
+ if (iachar(c) /= iachar("i")) STOP 615
+ if (iachar(achar(106)) /= 106) STOP 616
+ if (iachar ("j")/= 106) STOP 617
+ if (achar (106) /= "j") STOP 618
+ if ("j" /= achar ( ichar ( "j"))) STOP 619
i = 106
c = "j"
- if (achar(i) /= "j") call abort
- if (iachar(c) /= iachar("j")) call abort
- if (iachar(achar(107)) /= 107) call abort
- if (iachar ("k")/= 107) call abort
- if (achar (107) /= "k") call abort
- if ("k" /= achar ( ichar ( "k"))) call abort
+ if (achar(i) /= "j") STOP 620
+ if (iachar(c) /= iachar("j")) STOP 621
+ if (iachar(achar(107)) /= 107) STOP 622
+ if (iachar ("k")/= 107) STOP 623
+ if (achar (107) /= "k") STOP 624
+ if ("k" /= achar ( ichar ( "k"))) STOP 625
i = 107
c = "k"
- if (achar(i) /= "k") call abort
- if (iachar(c) /= iachar("k")) call abort
- if (iachar(achar(108)) /= 108) call abort
- if (iachar ("l")/= 108) call abort
- if (achar (108) /= "l") call abort
- if ("l" /= achar ( ichar ( "l"))) call abort
+ if (achar(i) /= "k") STOP 626
+ if (iachar(c) /= iachar("k")) STOP 627
+ if (iachar(achar(108)) /= 108) STOP 628
+ if (iachar ("l")/= 108) STOP 629
+ if (achar (108) /= "l") STOP 630
+ if ("l" /= achar ( ichar ( "l"))) STOP 631
i = 108
c = "l"
- if (achar(i) /= "l") call abort
- if (iachar(c) /= iachar("l")) call abort
- if (iachar(achar(109)) /= 109) call abort
- if (iachar ("m")/= 109) call abort
- if (achar (109) /= "m") call abort
- if ("m" /= achar ( ichar ( "m"))) call abort
+ if (achar(i) /= "l") STOP 632
+ if (iachar(c) /= iachar("l")) STOP 633
+ if (iachar(achar(109)) /= 109) STOP 634
+ if (iachar ("m")/= 109) STOP 635
+ if (achar (109) /= "m") STOP 636
+ if ("m" /= achar ( ichar ( "m"))) STOP 637
i = 109
c = "m"
- if (achar(i) /= "m") call abort
- if (iachar(c) /= iachar("m")) call abort
- if (iachar(achar(110)) /= 110) call abort
- if (iachar ("n")/= 110) call abort
- if (achar (110) /= "n") call abort
- if ("n" /= achar ( ichar ( "n"))) call abort
+ if (achar(i) /= "m") STOP 638
+ if (iachar(c) /= iachar("m")) STOP 639
+ if (iachar(achar(110)) /= 110) STOP 640
+ if (iachar ("n")/= 110) STOP 641
+ if (achar (110) /= "n") STOP 642
+ if ("n" /= achar ( ichar ( "n"))) STOP 643
i = 110
c = "n"
- if (achar(i) /= "n") call abort
- if (iachar(c) /= iachar("n")) call abort
- if (iachar(achar(111)) /= 111) call abort
- if (iachar ("o")/= 111) call abort
- if (achar (111) /= "o") call abort
- if ("o" /= achar ( ichar ( "o"))) call abort
+ if (achar(i) /= "n") STOP 644
+ if (iachar(c) /= iachar("n")) STOP 645
+ if (iachar(achar(111)) /= 111) STOP 646
+ if (iachar ("o")/= 111) STOP 647
+ if (achar (111) /= "o") STOP 648
+ if ("o" /= achar ( ichar ( "o"))) STOP 649
i = 111
c = "o"
- if (achar(i) /= "o") call abort
- if (iachar(c) /= iachar("o")) call abort
- if (iachar(achar(112)) /= 112) call abort
- if (iachar ("p")/= 112) call abort
- if (achar (112) /= "p") call abort
- if ("p" /= achar ( ichar ( "p"))) call abort
+ if (achar(i) /= "o") STOP 650
+ if (iachar(c) /= iachar("o")) STOP 651
+ if (iachar(achar(112)) /= 112) STOP 652
+ if (iachar ("p")/= 112) STOP 653
+ if (achar (112) /= "p") STOP 654
+ if ("p" /= achar ( ichar ( "p"))) STOP 655
i = 112
c = "p"
- if (achar(i) /= "p") call abort
- if (iachar(c) /= iachar("p")) call abort
- if (iachar(achar(113)) /= 113) call abort
- if (iachar ("q")/= 113) call abort
- if (achar (113) /= "q") call abort
- if ("q" /= achar ( ichar ( "q"))) call abort
+ if (achar(i) /= "p") STOP 656
+ if (iachar(c) /= iachar("p")) STOP 657
+ if (iachar(achar(113)) /= 113) STOP 658
+ if (iachar ("q")/= 113) STOP 659
+ if (achar (113) /= "q") STOP 660
+ if ("q" /= achar ( ichar ( "q"))) STOP 661
i = 113
c = "q"
- if (achar(i) /= "q") call abort
- if (iachar(c) /= iachar("q")) call abort
- if (iachar(achar(114)) /= 114) call abort
- if (iachar ("r")/= 114) call abort
- if (achar (114) /= "r") call abort
- if ("r" /= achar ( ichar ( "r"))) call abort
+ if (achar(i) /= "q") STOP 662
+ if (iachar(c) /= iachar("q")) STOP 663
+ if (iachar(achar(114)) /= 114) STOP 664
+ if (iachar ("r")/= 114) STOP 665
+ if (achar (114) /= "r") STOP 666
+ if ("r" /= achar ( ichar ( "r"))) STOP 667
i = 114
c = "r"
- if (achar(i) /= "r") call abort
- if (iachar(c) /= iachar("r")) call abort
- if (iachar(achar(115)) /= 115) call abort
- if (iachar ("s")/= 115) call abort
- if (achar (115) /= "s") call abort
- if ("s" /= achar ( ichar ( "s"))) call abort
+ if (achar(i) /= "r") STOP 668
+ if (iachar(c) /= iachar("r")) STOP 669
+ if (iachar(achar(115)) /= 115) STOP 670
+ if (iachar ("s")/= 115) STOP 671
+ if (achar (115) /= "s") STOP 672
+ if ("s" /= achar ( ichar ( "s"))) STOP 673
i = 115
c = "s"
- if (achar(i) /= "s") call abort
- if (iachar(c) /= iachar("s")) call abort
- if (iachar(achar(116)) /= 116) call abort
- if (iachar ("t")/= 116) call abort
- if (achar (116) /= "t") call abort
- if ("t" /= achar ( ichar ( "t"))) call abort
+ if (achar(i) /= "s") STOP 674
+ if (iachar(c) /= iachar("s")) STOP 675
+ if (iachar(achar(116)) /= 116) STOP 676
+ if (iachar ("t")/= 116) STOP 677
+ if (achar (116) /= "t") STOP 678
+ if ("t" /= achar ( ichar ( "t"))) STOP 679
i = 116
c = "t"
- if (achar(i) /= "t") call abort
- if (iachar(c) /= iachar("t")) call abort
- if (iachar(achar(117)) /= 117) call abort
- if (iachar ("u")/= 117) call abort
- if (achar (117) /= "u") call abort
- if ("u" /= achar ( ichar ( "u"))) call abort
+ if (achar(i) /= "t") STOP 680
+ if (iachar(c) /= iachar("t")) STOP 681
+ if (iachar(achar(117)) /= 117) STOP 682
+ if (iachar ("u")/= 117) STOP 683
+ if (achar (117) /= "u") STOP 684
+ if ("u" /= achar ( ichar ( "u"))) STOP 685
i = 117
c = "u"
- if (achar(i) /= "u") call abort
- if (iachar(c) /= iachar("u")) call abort
- if (iachar(achar(118)) /= 118) call abort
- if (iachar ("v")/= 118) call abort
- if (achar (118) /= "v") call abort
- if ("v" /= achar ( ichar ( "v"))) call abort
+ if (achar(i) /= "u") STOP 686
+ if (iachar(c) /= iachar("u")) STOP 687
+ if (iachar(achar(118)) /= 118) STOP 688
+ if (iachar ("v")/= 118) STOP 689
+ if (achar (118) /= "v") STOP 690
+ if ("v" /= achar ( ichar ( "v"))) STOP 691
i = 118
c = "v"
- if (achar(i) /= "v") call abort
- if (iachar(c) /= iachar("v")) call abort
- if (iachar(achar(119)) /= 119) call abort
- if (iachar ("w")/= 119) call abort
- if (achar (119) /= "w") call abort
- if ("w" /= achar ( ichar ( "w"))) call abort
+ if (achar(i) /= "v") STOP 692
+ if (iachar(c) /= iachar("v")) STOP 693
+ if (iachar(achar(119)) /= 119) STOP 694
+ if (iachar ("w")/= 119) STOP 695
+ if (achar (119) /= "w") STOP 696
+ if ("w" /= achar ( ichar ( "w"))) STOP 697
i = 119
c = "w"
- if (achar(i) /= "w") call abort
- if (iachar(c) /= iachar("w")) call abort
- if (iachar(achar(120)) /= 120) call abort
- if (iachar ("x")/= 120) call abort
- if (achar (120) /= "x") call abort
- if ("x" /= achar ( ichar ( "x"))) call abort
+ if (achar(i) /= "w") STOP 698
+ if (iachar(c) /= iachar("w")) STOP 699
+ if (iachar(achar(120)) /= 120) STOP 700
+ if (iachar ("x")/= 120) STOP 701
+ if (achar (120) /= "x") STOP 702
+ if ("x" /= achar ( ichar ( "x"))) STOP 703
i = 120
c = "x"
- if (achar(i) /= "x") call abort
- if (iachar(c) /= iachar("x")) call abort
- if (iachar(achar(121)) /= 121) call abort
- if (iachar ("y")/= 121) call abort
- if (achar (121) /= "y") call abort
- if ("y" /= achar ( ichar ( "y"))) call abort
+ if (achar(i) /= "x") STOP 704
+ if (iachar(c) /= iachar("x")) STOP 705
+ if (iachar(achar(121)) /= 121) STOP 706
+ if (iachar ("y")/= 121) STOP 707
+ if (achar (121) /= "y") STOP 708
+ if ("y" /= achar ( ichar ( "y"))) STOP 709
i = 121
c = "y"
- if (achar(i) /= "y") call abort
- if (iachar(c) /= iachar("y")) call abort
- if (iachar(achar(122)) /= 122) call abort
- if (iachar ("z")/= 122) call abort
- if (achar (122) /= "z") call abort
- if ("z" /= achar ( ichar ( "z"))) call abort
+ if (achar(i) /= "y") STOP 710
+ if (iachar(c) /= iachar("y")) STOP 711
+ if (iachar(achar(122)) /= 122) STOP 712
+ if (iachar ("z")/= 122) STOP 713
+ if (achar (122) /= "z") STOP 714
+ if ("z" /= achar ( ichar ( "z"))) STOP 715
i = 122
c = "z"
- if (achar(i) /= "z") call abort
- if (iachar(c) /= iachar("z")) call abort
- if (iachar(achar(123)) /= 123) call abort
- if (iachar ("{")/= 123) call abort
- if (achar (123) /= "{") call abort
- if ("{" /= achar ( ichar ( "{"))) call abort
+ if (achar(i) /= "z") STOP 716
+ if (iachar(c) /= iachar("z")) STOP 717
+ if (iachar(achar(123)) /= 123) STOP 718
+ if (iachar ("{")/= 123) STOP 719
+ if (achar (123) /= "{") STOP 720
+ if ("{" /= achar ( ichar ( "{"))) STOP 721
i = 123
c = "{"
- if (achar(i) /= "{") call abort
- if (iachar(c) /= iachar("{")) call abort
- if (iachar(achar(124)) /= 124) call abort
- if (iachar ("|")/= 124) call abort
- if (achar (124) /= "|") call abort
- if ("|" /= achar ( ichar ( "|"))) call abort
+ if (achar(i) /= "{") STOP 722
+ if (iachar(c) /= iachar("{")) STOP 723
+ if (iachar(achar(124)) /= 124) STOP 724
+ if (iachar ("|")/= 124) STOP 725
+ if (achar (124) /= "|") STOP 726
+ if ("|" /= achar ( ichar ( "|"))) STOP 727
i = 124
c = "|"
- if (achar(i) /= "|") call abort
- if (iachar(c) /= iachar("|")) call abort
- if (iachar(achar(125)) /= 125) call abort
- if (iachar ("}")/= 125) call abort
- if (achar (125) /= "}") call abort
- if ("}" /= achar ( ichar ( "}"))) call abort
+ if (achar(i) /= "|") STOP 728
+ if (iachar(c) /= iachar("|")) STOP 729
+ if (iachar(achar(125)) /= 125) STOP 730
+ if (iachar ("}")/= 125) STOP 731
+ if (achar (125) /= "}") STOP 732
+ if ("}" /= achar ( ichar ( "}"))) STOP 733
i = 125
c = "}"
- if (achar(i) /= "}") call abort
- if (iachar(c) /= iachar("}")) call abort
- if (iachar(achar(126)) /= 126) call abort
- if (iachar ("~")/= 126) call abort
- if (achar (126) /= "~") call abort
- if ("~" /= achar ( ichar ( "~"))) call abort
+ if (achar(i) /= "}") STOP 734
+ if (iachar(c) /= iachar("}")) STOP 735
+ if (iachar(achar(126)) /= 126) STOP 736
+ if (iachar ("~")/= 126) STOP 737
+ if (achar (126) /= "~") STOP 738
+ if ("~" /= achar ( ichar ( "~"))) STOP 739
i = 126
c = "~"
- if (achar(i) /= "~") call abort
- if (iachar(c) /= iachar("~")) call abort
- if (iachar(achar(127)) /= 127) call abort
- if (iachar ("")/= 127) call abort
- if (achar (127) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "~") STOP 740
+ if (iachar(c) /= iachar("~")) STOP 741
+ if (iachar(achar(127)) /= 127) STOP 742
+ if (iachar ("")/= 127) STOP 743
+ if (achar (127) /= "") STOP 744
+ if ("" /= achar ( ichar ( ""))) STOP 745
i = 127
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(128)) /= 128) call abort
- if (iachar ("")/= 128) call abort
- if (achar (128) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 746
+ if (iachar(c) /= iachar("")) STOP 747
+ if (iachar(achar(128)) /= 128) STOP 748
+ if (iachar ("")/= 128) STOP 749
+ if (achar (128) /= "") STOP 750
+ if ("" /= achar ( ichar ( ""))) STOP 751
i = 128
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(129)) /= 129) call abort
- if (iachar ("")/= 129) call abort
- if (achar (129) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 752
+ if (iachar(c) /= iachar("")) STOP 753
+ if (iachar(achar(129)) /= 129) STOP 754
+ if (iachar ("")/= 129) STOP 755
+ if (achar (129) /= "") STOP 756
+ if ("" /= achar ( ichar ( ""))) STOP 757
i = 129
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(130)) /= 130) call abort
- if (iachar ("")/= 130) call abort
- if (achar (130) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 758
+ if (iachar(c) /= iachar("")) STOP 759
+ if (iachar(achar(130)) /= 130) STOP 760
+ if (iachar ("")/= 130) STOP 761
+ if (achar (130) /= "") STOP 762
+ if ("" /= achar ( ichar ( ""))) STOP 763
i = 130
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(131)) /= 131) call abort
- if (iachar ("")/= 131) call abort
- if (achar (131) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 764
+ if (iachar(c) /= iachar("")) STOP 765
+ if (iachar(achar(131)) /= 131) STOP 766
+ if (iachar ("")/= 131) STOP 767
+ if (achar (131) /= "") STOP 768
+ if ("" /= achar ( ichar ( ""))) STOP 769
i = 131
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(132)) /= 132) call abort
- if (iachar ("")/= 132) call abort
- if (achar (132) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 770
+ if (iachar(c) /= iachar("")) STOP 771
+ if (iachar(achar(132)) /= 132) STOP 772
+ if (iachar ("")/= 132) STOP 773
+ if (achar (132) /= "") STOP 774
+ if ("" /= achar ( ichar ( ""))) STOP 775
i = 132
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(133)) /= 133) call abort
- if (iachar ("")/= 133) call abort
- if (achar (133) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 776
+ if (iachar(c) /= iachar("")) STOP 777
+ if (iachar(achar(133)) /= 133) STOP 778
+ if (iachar ("")/= 133) STOP 779
+ if (achar (133) /= "") STOP 780
+ if ("" /= achar ( ichar ( ""))) STOP 781
i = 133
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(134)) /= 134) call abort
- if (iachar ("")/= 134) call abort
- if (achar (134) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 782
+ if (iachar(c) /= iachar("")) STOP 783
+ if (iachar(achar(134)) /= 134) STOP 784
+ if (iachar ("")/= 134) STOP 785
+ if (achar (134) /= "") STOP 786
+ if ("" /= achar ( ichar ( ""))) STOP 787
i = 134
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(135)) /= 135) call abort
- if (iachar ("")/= 135) call abort
- if (achar (135) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 788
+ if (iachar(c) /= iachar("")) STOP 789
+ if (iachar(achar(135)) /= 135) STOP 790
+ if (iachar ("")/= 135) STOP 791
+ if (achar (135) /= "") STOP 792
+ if ("" /= achar ( ichar ( ""))) STOP 793
i = 135
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(136)) /= 136) call abort
- if (iachar ("")/= 136) call abort
- if (achar (136) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 794
+ if (iachar(c) /= iachar("")) STOP 795
+ if (iachar(achar(136)) /= 136) STOP 796
+ if (iachar ("")/= 136) STOP 797
+ if (achar (136) /= "") STOP 798
+ if ("" /= achar ( ichar ( ""))) STOP 799
i = 136
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(137)) /= 137) call abort
- if (iachar ("")/= 137) call abort
- if (achar (137) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 800
+ if (iachar(c) /= iachar("")) STOP 801
+ if (iachar(achar(137)) /= 137) STOP 802
+ if (iachar ("")/= 137) STOP 803
+ if (achar (137) /= "") STOP 804
+ if ("" /= achar ( ichar ( ""))) STOP 805
i = 137
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(138)) /= 138) call abort
- if (iachar ("")/= 138) call abort
- if (achar (138) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 806
+ if (iachar(c) /= iachar("")) STOP 807
+ if (iachar(achar(138)) /= 138) STOP 808
+ if (iachar ("")/= 138) STOP 809
+ if (achar (138) /= "") STOP 810
+ if ("" /= achar ( ichar ( ""))) STOP 811
i = 138
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(139)) /= 139) call abort
- if (iachar ("")/= 139) call abort
- if (achar (139) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 812
+ if (iachar(c) /= iachar("")) STOP 813
+ if (iachar(achar(139)) /= 139) STOP 814
+ if (iachar ("")/= 139) STOP 815
+ if (achar (139) /= "") STOP 816
+ if ("" /= achar ( ichar ( ""))) STOP 817
i = 139
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(140)) /= 140) call abort
- if (iachar ("")/= 140) call abort
- if (achar (140) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 818
+ if (iachar(c) /= iachar("")) STOP 819
+ if (iachar(achar(140)) /= 140) STOP 820
+ if (iachar ("")/= 140) STOP 821
+ if (achar (140) /= "") STOP 822
+ if ("" /= achar ( ichar ( ""))) STOP 823
i = 140
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(141)) /= 141) call abort
- if (iachar ("")/= 141) call abort
- if (achar (141) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 824
+ if (iachar(c) /= iachar("")) STOP 825
+ if (iachar(achar(141)) /= 141) STOP 826
+ if (iachar ("")/= 141) STOP 827
+ if (achar (141) /= "") STOP 828
+ if ("" /= achar ( ichar ( ""))) STOP 829
i = 141
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(142)) /= 142) call abort
- if (iachar ("")/= 142) call abort
- if (achar (142) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 830
+ if (iachar(c) /= iachar("")) STOP 831
+ if (iachar(achar(142)) /= 142) STOP 832
+ if (iachar ("")/= 142) STOP 833
+ if (achar (142) /= "") STOP 834
+ if ("" /= achar ( ichar ( ""))) STOP 835
i = 142
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(143)) /= 143) call abort
- if (iachar ("")/= 143) call abort
- if (achar (143) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 836
+ if (iachar(c) /= iachar("")) STOP 837
+ if (iachar(achar(143)) /= 143) STOP 838
+ if (iachar ("")/= 143) STOP 839
+ if (achar (143) /= "") STOP 840
+ if ("" /= achar ( ichar ( ""))) STOP 841
i = 143
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(144)) /= 144) call abort
- if (iachar ("")/= 144) call abort
- if (achar (144) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 842
+ if (iachar(c) /= iachar("")) STOP 843
+ if (iachar(achar(144)) /= 144) STOP 844
+ if (iachar ("")/= 144) STOP 845
+ if (achar (144) /= "") STOP 846
+ if ("" /= achar ( ichar ( ""))) STOP 847
i = 144
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(145)) /= 145) call abort
- if (iachar ("")/= 145) call abort
- if (achar (145) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 848
+ if (iachar(c) /= iachar("")) STOP 849
+ if (iachar(achar(145)) /= 145) STOP 850
+ if (iachar ("")/= 145) STOP 851
+ if (achar (145) /= "") STOP 852
+ if ("" /= achar ( ichar ( ""))) STOP 853
i = 145
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(146)) /= 146) call abort
- if (iachar ("")/= 146) call abort
- if (achar (146) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 854
+ if (iachar(c) /= iachar("")) STOP 855
+ if (iachar(achar(146)) /= 146) STOP 856
+ if (iachar ("")/= 146) STOP 857
+ if (achar (146) /= "") STOP 858
+ if ("" /= achar ( ichar ( ""))) STOP 859
i = 146
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(147)) /= 147) call abort
- if (iachar ("")/= 147) call abort
- if (achar (147) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 860
+ if (iachar(c) /= iachar("")) STOP 861
+ if (iachar(achar(147)) /= 147) STOP 862
+ if (iachar ("")/= 147) STOP 863
+ if (achar (147) /= "") STOP 864
+ if ("" /= achar ( ichar ( ""))) STOP 865
i = 147
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(148)) /= 148) call abort
- if (iachar ("")/= 148) call abort
- if (achar (148) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 866
+ if (iachar(c) /= iachar("")) STOP 867
+ if (iachar(achar(148)) /= 148) STOP 868
+ if (iachar ("")/= 148) STOP 869
+ if (achar (148) /= "") STOP 870
+ if ("" /= achar ( ichar ( ""))) STOP 871
i = 148
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(149)) /= 149) call abort
- if (iachar ("")/= 149) call abort
- if (achar (149) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 872
+ if (iachar(c) /= iachar("")) STOP 873
+ if (iachar(achar(149)) /= 149) STOP 874
+ if (iachar ("")/= 149) STOP 875
+ if (achar (149) /= "") STOP 876
+ if ("" /= achar ( ichar ( ""))) STOP 877
i = 149
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(150)) /= 150) call abort
- if (iachar ("")/= 150) call abort
- if (achar (150) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 878
+ if (iachar(c) /= iachar("")) STOP 879
+ if (iachar(achar(150)) /= 150) STOP 880
+ if (iachar ("")/= 150) STOP 881
+ if (achar (150) /= "") STOP 882
+ if ("" /= achar ( ichar ( ""))) STOP 883
i = 150
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(151)) /= 151) call abort
- if (iachar ("")/= 151) call abort
- if (achar (151) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 884
+ if (iachar(c) /= iachar("")) STOP 885
+ if (iachar(achar(151)) /= 151) STOP 886
+ if (iachar ("")/= 151) STOP 887
+ if (achar (151) /= "") STOP 888
+ if ("" /= achar ( ichar ( ""))) STOP 889
i = 151
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(152)) /= 152) call abort
- if (iachar ("")/= 152) call abort
- if (achar (152) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 890
+ if (iachar(c) /= iachar("")) STOP 891
+ if (iachar(achar(152)) /= 152) STOP 892
+ if (iachar ("")/= 152) STOP 893
+ if (achar (152) /= "") STOP 894
+ if ("" /= achar ( ichar ( ""))) STOP 895
i = 152
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(153)) /= 153) call abort
- if (iachar ("")/= 153) call abort
- if (achar (153) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 896
+ if (iachar(c) /= iachar("")) STOP 897
+ if (iachar(achar(153)) /= 153) STOP 898
+ if (iachar ("")/= 153) STOP 899
+ if (achar (153) /= "") STOP 900
+ if ("" /= achar ( ichar ( ""))) STOP 901
i = 153
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(154)) /= 154) call abort
- if (iachar ("")/= 154) call abort
- if (achar (154) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 902
+ if (iachar(c) /= iachar("")) STOP 903
+ if (iachar(achar(154)) /= 154) STOP 904
+ if (iachar ("")/= 154) STOP 905
+ if (achar (154) /= "") STOP 906
+ if ("" /= achar ( ichar ( ""))) STOP 907
i = 154
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(155)) /= 155) call abort
- if (iachar ("")/= 155) call abort
- if (achar (155) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 908
+ if (iachar(c) /= iachar("")) STOP 909
+ if (iachar(achar(155)) /= 155) STOP 910
+ if (iachar ("")/= 155) STOP 911
+ if (achar (155) /= "") STOP 912
+ if ("" /= achar ( ichar ( ""))) STOP 913
i = 155
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(156)) /= 156) call abort
- if (iachar ("")/= 156) call abort
- if (achar (156) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 914
+ if (iachar(c) /= iachar("")) STOP 915
+ if (iachar(achar(156)) /= 156) STOP 916
+ if (iachar ("")/= 156) STOP 917
+ if (achar (156) /= "") STOP 918
+ if ("" /= achar ( ichar ( ""))) STOP 919
i = 156
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(157)) /= 157) call abort
- if (iachar ("")/= 157) call abort
- if (achar (157) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 920
+ if (iachar(c) /= iachar("")) STOP 921
+ if (iachar(achar(157)) /= 157) STOP 922
+ if (iachar ("")/= 157) STOP 923
+ if (achar (157) /= "") STOP 924
+ if ("" /= achar ( ichar ( ""))) STOP 925
i = 157
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(158)) /= 158) call abort
- if (iachar ("")/= 158) call abort
- if (achar (158) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 926
+ if (iachar(c) /= iachar("")) STOP 927
+ if (iachar(achar(158)) /= 158) STOP 928
+ if (iachar ("")/= 158) STOP 929
+ if (achar (158) /= "") STOP 930
+ if ("" /= achar ( ichar ( ""))) STOP 931
i = 158
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(159)) /= 159) call abort
- if (iachar ("")/= 159) call abort
- if (achar (159) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 932
+ if (iachar(c) /= iachar("")) STOP 933
+ if (iachar(achar(159)) /= 159) STOP 934
+ if (iachar ("")/= 159) STOP 935
+ if (achar (159) /= "") STOP 936
+ if ("" /= achar ( ichar ( ""))) STOP 937
i = 159
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(160)) /= 160) call abort
- if (iachar ("")/= 160) call abort
- if (achar (160) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 938
+ if (iachar(c) /= iachar("")) STOP 939
+ if (iachar(achar(160)) /= 160) STOP 940
+ if (iachar ("")/= 160) STOP 941
+ if (achar (160) /= "") STOP 942
+ if ("" /= achar ( ichar ( ""))) STOP 943
i = 160
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(161)) /= 161) call abort
- if (iachar ("")/= 161) call abort
- if (achar (161) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 944
+ if (iachar(c) /= iachar("")) STOP 945
+ if (iachar(achar(161)) /= 161) STOP 946
+ if (iachar ("")/= 161) STOP 947
+ if (achar (161) /= "") STOP 948
+ if ("" /= achar ( ichar ( ""))) STOP 949
i = 161
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(162)) /= 162) call abort
- if (iachar ("")/= 162) call abort
- if (achar (162) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 950
+ if (iachar(c) /= iachar("")) STOP 951
+ if (iachar(achar(162)) /= 162) STOP 952
+ if (iachar ("")/= 162) STOP 953
+ if (achar (162) /= "") STOP 954
+ if ("" /= achar ( ichar ( ""))) STOP 955
i = 162
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(163)) /= 163) call abort
- if (iachar ("")/= 163) call abort
- if (achar (163) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 956
+ if (iachar(c) /= iachar("")) STOP 957
+ if (iachar(achar(163)) /= 163) STOP 958
+ if (iachar ("")/= 163) STOP 959
+ if (achar (163) /= "") STOP 960
+ if ("" /= achar ( ichar ( ""))) STOP 961
i = 163
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(164)) /= 164) call abort
- if (iachar ("")/= 164) call abort
- if (achar (164) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 962
+ if (iachar(c) /= iachar("")) STOP 963
+ if (iachar(achar(164)) /= 164) STOP 964
+ if (iachar ("")/= 164) STOP 965
+ if (achar (164) /= "") STOP 966
+ if ("" /= achar ( ichar ( ""))) STOP 967
i = 164
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(165)) /= 165) call abort
- if (iachar ("")/= 165) call abort
- if (achar (165) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 968
+ if (iachar(c) /= iachar("")) STOP 969
+ if (iachar(achar(165)) /= 165) STOP 970
+ if (iachar ("")/= 165) STOP 971
+ if (achar (165) /= "") STOP 972
+ if ("" /= achar ( ichar ( ""))) STOP 973
i = 165
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(166)) /= 166) call abort
- if (iachar ("")/= 166) call abort
- if (achar (166) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 974
+ if (iachar(c) /= iachar("")) STOP 975
+ if (iachar(achar(166)) /= 166) STOP 976
+ if (iachar ("")/= 166) STOP 977
+ if (achar (166) /= "") STOP 978
+ if ("" /= achar ( ichar ( ""))) STOP 979
i = 166
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(167)) /= 167) call abort
- if (iachar ("")/= 167) call abort
- if (achar (167) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 980
+ if (iachar(c) /= iachar("")) STOP 981
+ if (iachar(achar(167)) /= 167) STOP 982
+ if (iachar ("")/= 167) STOP 983
+ if (achar (167) /= "") STOP 984
+ if ("" /= achar ( ichar ( ""))) STOP 985
i = 167
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(168)) /= 168) call abort
- if (iachar ("")/= 168) call abort
- if (achar (168) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 986
+ if (iachar(c) /= iachar("")) STOP 987
+ if (iachar(achar(168)) /= 168) STOP 988
+ if (iachar ("")/= 168) STOP 989
+ if (achar (168) /= "") STOP 990
+ if ("" /= achar ( ichar ( ""))) STOP 991
i = 168
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(169)) /= 169) call abort
- if (iachar ("")/= 169) call abort
- if (achar (169) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 992
+ if (iachar(c) /= iachar("")) STOP 993
+ if (iachar(achar(169)) /= 169) STOP 994
+ if (iachar ("")/= 169) STOP 995
+ if (achar (169) /= "") STOP 996
+ if ("" /= achar ( ichar ( ""))) STOP 997
i = 169
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(170)) /= 170) call abort
- if (iachar ("")/= 170) call abort
- if (achar (170) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 998
+ if (iachar(c) /= iachar("")) STOP 999
+ if (iachar(achar(170)) /= 170) STOP 1000
+ if (iachar ("")/= 170) STOP 1001
+ if (achar (170) /= "") STOP 1002
+ if ("" /= achar ( ichar ( ""))) STOP 1003
i = 170
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(171)) /= 171) call abort
- if (iachar ("")/= 171) call abort
- if (achar (171) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1004
+ if (iachar(c) /= iachar("")) STOP 1005
+ if (iachar(achar(171)) /= 171) STOP 1006
+ if (iachar ("")/= 171) STOP 1007
+ if (achar (171) /= "") STOP 1008
+ if ("" /= achar ( ichar ( ""))) STOP 1009
i = 171
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(172)) /= 172) call abort
- if (iachar ("")/= 172) call abort
- if (achar (172) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1010
+ if (iachar(c) /= iachar("")) STOP 1011
+ if (iachar(achar(172)) /= 172) STOP 1012
+ if (iachar ("")/= 172) STOP 1013
+ if (achar (172) /= "") STOP 1014
+ if ("" /= achar ( ichar ( ""))) STOP 1015
i = 172
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(173)) /= 173) call abort
- if (iachar ("")/= 173) call abort
- if (achar (173) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1016
+ if (iachar(c) /= iachar("")) STOP 1017
+ if (iachar(achar(173)) /= 173) STOP 1018
+ if (iachar ("")/= 173) STOP 1019
+ if (achar (173) /= "") STOP 1020
+ if ("" /= achar ( ichar ( ""))) STOP 1021
i = 173
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(174)) /= 174) call abort
- if (iachar ("")/= 174) call abort
- if (achar (174) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1022
+ if (iachar(c) /= iachar("")) STOP 1023
+ if (iachar(achar(174)) /= 174) STOP 1024
+ if (iachar ("")/= 174) STOP 1025
+ if (achar (174) /= "") STOP 1026
+ if ("" /= achar ( ichar ( ""))) STOP 1027
i = 174
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(175)) /= 175) call abort
- if (iachar ("")/= 175) call abort
- if (achar (175) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1028
+ if (iachar(c) /= iachar("")) STOP 1029
+ if (iachar(achar(175)) /= 175) STOP 1030
+ if (iachar ("")/= 175) STOP 1031
+ if (achar (175) /= "") STOP 1032
+ if ("" /= achar ( ichar ( ""))) STOP 1033
i = 175
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(176)) /= 176) call abort
- if (iachar ("")/= 176) call abort
- if (achar (176) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1034
+ if (iachar(c) /= iachar("")) STOP 1035
+ if (iachar(achar(176)) /= 176) STOP 1036
+ if (iachar ("")/= 176) STOP 1037
+ if (achar (176) /= "") STOP 1038
+ if ("" /= achar ( ichar ( ""))) STOP 1039
i = 176
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(177)) /= 177) call abort
- if (iachar ("")/= 177) call abort
- if (achar (177) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1040
+ if (iachar(c) /= iachar("")) STOP 1041
+ if (iachar(achar(177)) /= 177) STOP 1042
+ if (iachar ("")/= 177) STOP 1043
+ if (achar (177) /= "") STOP 1044
+ if ("" /= achar ( ichar ( ""))) STOP 1045
i = 177
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(178)) /= 178) call abort
- if (iachar ("")/= 178) call abort
- if (achar (178) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1046
+ if (iachar(c) /= iachar("")) STOP 1047
+ if (iachar(achar(178)) /= 178) STOP 1048
+ if (iachar ("")/= 178) STOP 1049
+ if (achar (178) /= "") STOP 1050
+ if ("" /= achar ( ichar ( ""))) STOP 1051
i = 178
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(179)) /= 179) call abort
- if (iachar ("")/= 179) call abort
- if (achar (179) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1052
+ if (iachar(c) /= iachar("")) STOP 1053
+ if (iachar(achar(179)) /= 179) STOP 1054
+ if (iachar ("")/= 179) STOP 1055
+ if (achar (179) /= "") STOP 1056
+ if ("" /= achar ( ichar ( ""))) STOP 1057
i = 179
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(180)) /= 180) call abort
- if (iachar ("")/= 180) call abort
- if (achar (180) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1058
+ if (iachar(c) /= iachar("")) STOP 1059
+ if (iachar(achar(180)) /= 180) STOP 1060
+ if (iachar ("")/= 180) STOP 1061
+ if (achar (180) /= "") STOP 1062
+ if ("" /= achar ( ichar ( ""))) STOP 1063
i = 180
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(181)) /= 181) call abort
- if (iachar ("")/= 181) call abort
- if (achar (181) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1064
+ if (iachar(c) /= iachar("")) STOP 1065
+ if (iachar(achar(181)) /= 181) STOP 1066
+ if (iachar ("")/= 181) STOP 1067
+ if (achar (181) /= "") STOP 1068
+ if ("" /= achar ( ichar ( ""))) STOP 1069
i = 181
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(182)) /= 182) call abort
- if (iachar ("")/= 182) call abort
- if (achar (182) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1070
+ if (iachar(c) /= iachar("")) STOP 1071
+ if (iachar(achar(182)) /= 182) STOP 1072
+ if (iachar ("")/= 182) STOP 1073
+ if (achar (182) /= "") STOP 1074
+ if ("" /= achar ( ichar ( ""))) STOP 1075
i = 182
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(183)) /= 183) call abort
- if (iachar ("")/= 183) call abort
- if (achar (183) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1076
+ if (iachar(c) /= iachar("")) STOP 1077
+ if (iachar(achar(183)) /= 183) STOP 1078
+ if (iachar ("")/= 183) STOP 1079
+ if (achar (183) /= "") STOP 1080
+ if ("" /= achar ( ichar ( ""))) STOP 1081
i = 183
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(184)) /= 184) call abort
- if (iachar ("")/= 184) call abort
- if (achar (184) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1082
+ if (iachar(c) /= iachar("")) STOP 1083
+ if (iachar(achar(184)) /= 184) STOP 1084
+ if (iachar ("")/= 184) STOP 1085
+ if (achar (184) /= "") STOP 1086
+ if ("" /= achar ( ichar ( ""))) STOP 1087
i = 184
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(185)) /= 185) call abort
- if (iachar ("")/= 185) call abort
- if (achar (185) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1088
+ if (iachar(c) /= iachar("")) STOP 1089
+ if (iachar(achar(185)) /= 185) STOP 1090
+ if (iachar ("")/= 185) STOP 1091
+ if (achar (185) /= "") STOP 1092
+ if ("" /= achar ( ichar ( ""))) STOP 1093
i = 185
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(186)) /= 186) call abort
- if (iachar ("")/= 186) call abort
- if (achar (186) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1094
+ if (iachar(c) /= iachar("")) STOP 1095
+ if (iachar(achar(186)) /= 186) STOP 1096
+ if (iachar ("")/= 186) STOP 1097
+ if (achar (186) /= "") STOP 1098
+ if ("" /= achar ( ichar ( ""))) STOP 1099
i = 186
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(187)) /= 187) call abort
- if (iachar ("")/= 187) call abort
- if (achar (187) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1100
+ if (iachar(c) /= iachar("")) STOP 1101
+ if (iachar(achar(187)) /= 187) STOP 1102
+ if (iachar ("")/= 187) STOP 1103
+ if (achar (187) /= "") STOP 1104
+ if ("" /= achar ( ichar ( ""))) STOP 1105
i = 187
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(188)) /= 188) call abort
- if (iachar ("")/= 188) call abort
- if (achar (188) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1106
+ if (iachar(c) /= iachar("")) STOP 1107
+ if (iachar(achar(188)) /= 188) STOP 1108
+ if (iachar ("")/= 188) STOP 1109
+ if (achar (188) /= "") STOP 1110
+ if ("" /= achar ( ichar ( ""))) STOP 1111
i = 188
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(189)) /= 189) call abort
- if (iachar ("")/= 189) call abort
- if (achar (189) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1112
+ if (iachar(c) /= iachar("")) STOP 1113
+ if (iachar(achar(189)) /= 189) STOP 1114
+ if (iachar ("")/= 189) STOP 1115
+ if (achar (189) /= "") STOP 1116
+ if ("" /= achar ( ichar ( ""))) STOP 1117
i = 189
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(190)) /= 190) call abort
- if (iachar ("")/= 190) call abort
- if (achar (190) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1118
+ if (iachar(c) /= iachar("")) STOP 1119
+ if (iachar(achar(190)) /= 190) STOP 1120
+ if (iachar ("")/= 190) STOP 1121
+ if (achar (190) /= "") STOP 1122
+ if ("" /= achar ( ichar ( ""))) STOP 1123
i = 190
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(191)) /= 191) call abort
- if (iachar ("")/= 191) call abort
- if (achar (191) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1124
+ if (iachar(c) /= iachar("")) STOP 1125
+ if (iachar(achar(191)) /= 191) STOP 1126
+ if (iachar ("")/= 191) STOP 1127
+ if (achar (191) /= "") STOP 1128
+ if ("" /= achar ( ichar ( ""))) STOP 1129
i = 191
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(192)) /= 192) call abort
- if (iachar ("")/= 192) call abort
- if (achar (192) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1130
+ if (iachar(c) /= iachar("")) STOP 1131
+ if (iachar(achar(192)) /= 192) STOP 1132
+ if (iachar ("")/= 192) STOP 1133
+ if (achar (192) /= "") STOP 1134
+ if ("" /= achar ( ichar ( ""))) STOP 1135
i = 192
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(193)) /= 193) call abort
- if (iachar ("")/= 193) call abort
- if (achar (193) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1136
+ if (iachar(c) /= iachar("")) STOP 1137
+ if (iachar(achar(193)) /= 193) STOP 1138
+ if (iachar ("")/= 193) STOP 1139
+ if (achar (193) /= "") STOP 1140
+ if ("" /= achar ( ichar ( ""))) STOP 1141
i = 193
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(194)) /= 194) call abort
- if (iachar ("")/= 194) call abort
- if (achar (194) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1142
+ if (iachar(c) /= iachar("")) STOP 1143
+ if (iachar(achar(194)) /= 194) STOP 1144
+ if (iachar ("")/= 194) STOP 1145
+ if (achar (194) /= "") STOP 1146
+ if ("" /= achar ( ichar ( ""))) STOP 1147
i = 194
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(195)) /= 195) call abort
- if (iachar ("")/= 195) call abort
- if (achar (195) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1148
+ if (iachar(c) /= iachar("")) STOP 1149
+ if (iachar(achar(195)) /= 195) STOP 1150
+ if (iachar ("")/= 195) STOP 1151
+ if (achar (195) /= "") STOP 1152
+ if ("" /= achar ( ichar ( ""))) STOP 1153
i = 195
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(196)) /= 196) call abort
- if (iachar ("")/= 196) call abort
- if (achar (196) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1154
+ if (iachar(c) /= iachar("")) STOP 1155
+ if (iachar(achar(196)) /= 196) STOP 1156
+ if (iachar ("")/= 196) STOP 1157
+ if (achar (196) /= "") STOP 1158
+ if ("" /= achar ( ichar ( ""))) STOP 1159
i = 196
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(197)) /= 197) call abort
- if (iachar ("")/= 197) call abort
- if (achar (197) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1160
+ if (iachar(c) /= iachar("")) STOP 1161
+ if (iachar(achar(197)) /= 197) STOP 1162
+ if (iachar ("")/= 197) STOP 1163
+ if (achar (197) /= "") STOP 1164
+ if ("" /= achar ( ichar ( ""))) STOP 1165
i = 197
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(198)) /= 198) call abort
- if (iachar ("")/= 198) call abort
- if (achar (198) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1166
+ if (iachar(c) /= iachar("")) STOP 1167
+ if (iachar(achar(198)) /= 198) STOP 1168
+ if (iachar ("")/= 198) STOP 1169
+ if (achar (198) /= "") STOP 1170
+ if ("" /= achar ( ichar ( ""))) STOP 1171
i = 198
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(199)) /= 199) call abort
- if (iachar ("")/= 199) call abort
- if (achar (199) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1172
+ if (iachar(c) /= iachar("")) STOP 1173
+ if (iachar(achar(199)) /= 199) STOP 1174
+ if (iachar ("")/= 199) STOP 1175
+ if (achar (199) /= "") STOP 1176
+ if ("" /= achar ( ichar ( ""))) STOP 1177
i = 199
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(200)) /= 200) call abort
- if (iachar ("")/= 200) call abort
- if (achar (200) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1178
+ if (iachar(c) /= iachar("")) STOP 1179
+ if (iachar(achar(200)) /= 200) STOP 1180
+ if (iachar ("")/= 200) STOP 1181
+ if (achar (200) /= "") STOP 1182
+ if ("" /= achar ( ichar ( ""))) STOP 1183
i = 200
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(201)) /= 201) call abort
- if (iachar ("")/= 201) call abort
- if (achar (201) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1184
+ if (iachar(c) /= iachar("")) STOP 1185
+ if (iachar(achar(201)) /= 201) STOP 1186
+ if (iachar ("")/= 201) STOP 1187
+ if (achar (201) /= "") STOP 1188
+ if ("" /= achar ( ichar ( ""))) STOP 1189
i = 201
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(202)) /= 202) call abort
- if (iachar ("")/= 202) call abort
- if (achar (202) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1190
+ if (iachar(c) /= iachar("")) STOP 1191
+ if (iachar(achar(202)) /= 202) STOP 1192
+ if (iachar ("")/= 202) STOP 1193
+ if (achar (202) /= "") STOP 1194
+ if ("" /= achar ( ichar ( ""))) STOP 1195
i = 202
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(203)) /= 203) call abort
- if (iachar ("")/= 203) call abort
- if (achar (203) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1196
+ if (iachar(c) /= iachar("")) STOP 1197
+ if (iachar(achar(203)) /= 203) STOP 1198
+ if (iachar ("")/= 203) STOP 1199
+ if (achar (203) /= "") STOP 1200
+ if ("" /= achar ( ichar ( ""))) STOP 1201
i = 203
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(204)) /= 204) call abort
- if (iachar ("")/= 204) call abort
- if (achar (204) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1202
+ if (iachar(c) /= iachar("")) STOP 1203
+ if (iachar(achar(204)) /= 204) STOP 1204
+ if (iachar ("")/= 204) STOP 1205
+ if (achar (204) /= "") STOP 1206
+ if ("" /= achar ( ichar ( ""))) STOP 1207
i = 204
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(205)) /= 205) call abort
- if (iachar ("")/= 205) call abort
- if (achar (205) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1208
+ if (iachar(c) /= iachar("")) STOP 1209
+ if (iachar(achar(205)) /= 205) STOP 1210
+ if (iachar ("")/= 205) STOP 1211
+ if (achar (205) /= "") STOP 1212
+ if ("" /= achar ( ichar ( ""))) STOP 1213
i = 205
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(206)) /= 206) call abort
- if (iachar ("")/= 206) call abort
- if (achar (206) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1214
+ if (iachar(c) /= iachar("")) STOP 1215
+ if (iachar(achar(206)) /= 206) STOP 1216
+ if (iachar ("")/= 206) STOP 1217
+ if (achar (206) /= "") STOP 1218
+ if ("" /= achar ( ichar ( ""))) STOP 1219
i = 206
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(207)) /= 207) call abort
- if (iachar ("")/= 207) call abort
- if (achar (207) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1220
+ if (iachar(c) /= iachar("")) STOP 1221
+ if (iachar(achar(207)) /= 207) STOP 1222
+ if (iachar ("")/= 207) STOP 1223
+ if (achar (207) /= "") STOP 1224
+ if ("" /= achar ( ichar ( ""))) STOP 1225
i = 207
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(208)) /= 208) call abort
- if (iachar ("")/= 208) call abort
- if (achar (208) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1226
+ if (iachar(c) /= iachar("")) STOP 1227
+ if (iachar(achar(208)) /= 208) STOP 1228
+ if (iachar ("")/= 208) STOP 1229
+ if (achar (208) /= "") STOP 1230
+ if ("" /= achar ( ichar ( ""))) STOP 1231
i = 208
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(209)) /= 209) call abort
- if (iachar ("")/= 209) call abort
- if (achar (209) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1232
+ if (iachar(c) /= iachar("")) STOP 1233
+ if (iachar(achar(209)) /= 209) STOP 1234
+ if (iachar ("")/= 209) STOP 1235
+ if (achar (209) /= "") STOP 1236
+ if ("" /= achar ( ichar ( ""))) STOP 1237
i = 209
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(210)) /= 210) call abort
- if (iachar ("")/= 210) call abort
- if (achar (210) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1238
+ if (iachar(c) /= iachar("")) STOP 1239
+ if (iachar(achar(210)) /= 210) STOP 1240
+ if (iachar ("")/= 210) STOP 1241
+ if (achar (210) /= "") STOP 1242
+ if ("" /= achar ( ichar ( ""))) STOP 1243
i = 210
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(211)) /= 211) call abort
- if (iachar ("")/= 211) call abort
- if (achar (211) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1244
+ if (iachar(c) /= iachar("")) STOP 1245
+ if (iachar(achar(211)) /= 211) STOP 1246
+ if (iachar ("")/= 211) STOP 1247
+ if (achar (211) /= "") STOP 1248
+ if ("" /= achar ( ichar ( ""))) STOP 1249
i = 211
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(212)) /= 212) call abort
- if (iachar ("")/= 212) call abort
- if (achar (212) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1250
+ if (iachar(c) /= iachar("")) STOP 1251
+ if (iachar(achar(212)) /= 212) STOP 1252
+ if (iachar ("")/= 212) STOP 1253
+ if (achar (212) /= "") STOP 1254
+ if ("" /= achar ( ichar ( ""))) STOP 1255
i = 212
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(213)) /= 213) call abort
- if (iachar ("")/= 213) call abort
- if (achar (213) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1256
+ if (iachar(c) /= iachar("")) STOP 1257
+ if (iachar(achar(213)) /= 213) STOP 1258
+ if (iachar ("")/= 213) STOP 1259
+ if (achar (213) /= "") STOP 1260
+ if ("" /= achar ( ichar ( ""))) STOP 1261
i = 213
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(214)) /= 214) call abort
- if (iachar ("")/= 214) call abort
- if (achar (214) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1262
+ if (iachar(c) /= iachar("")) STOP 1263
+ if (iachar(achar(214)) /= 214) STOP 1264
+ if (iachar ("")/= 214) STOP 1265
+ if (achar (214) /= "") STOP 1266
+ if ("" /= achar ( ichar ( ""))) STOP 1267
i = 214
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(215)) /= 215) call abort
- if (iachar ("")/= 215) call abort
- if (achar (215) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1268
+ if (iachar(c) /= iachar("")) STOP 1269
+ if (iachar(achar(215)) /= 215) STOP 1270
+ if (iachar ("")/= 215) STOP 1271
+ if (achar (215) /= "") STOP 1272
+ if ("" /= achar ( ichar ( ""))) STOP 1273
i = 215
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(216)) /= 216) call abort
- if (iachar ("")/= 216) call abort
- if (achar (216) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1274
+ if (iachar(c) /= iachar("")) STOP 1275
+ if (iachar(achar(216)) /= 216) STOP 1276
+ if (iachar ("")/= 216) STOP 1277
+ if (achar (216) /= "") STOP 1278
+ if ("" /= achar ( ichar ( ""))) STOP 1279
i = 216
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(217)) /= 217) call abort
- if (iachar ("")/= 217) call abort
- if (achar (217) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1280
+ if (iachar(c) /= iachar("")) STOP 1281
+ if (iachar(achar(217)) /= 217) STOP 1282
+ if (iachar ("")/= 217) STOP 1283
+ if (achar (217) /= "") STOP 1284
+ if ("" /= achar ( ichar ( ""))) STOP 1285
i = 217
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(218)) /= 218) call abort
- if (iachar ("")/= 218) call abort
- if (achar (218) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1286
+ if (iachar(c) /= iachar("")) STOP 1287
+ if (iachar(achar(218)) /= 218) STOP 1288
+ if (iachar ("")/= 218) STOP 1289
+ if (achar (218) /= "") STOP 1290
+ if ("" /= achar ( ichar ( ""))) STOP 1291
i = 218
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(219)) /= 219) call abort
- if (iachar ("")/= 219) call abort
- if (achar (219) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1292
+ if (iachar(c) /= iachar("")) STOP 1293
+ if (iachar(achar(219)) /= 219) STOP 1294
+ if (iachar ("")/= 219) STOP 1295
+ if (achar (219) /= "") STOP 1296
+ if ("" /= achar ( ichar ( ""))) STOP 1297
i = 219
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(220)) /= 220) call abort
- if (iachar ("")/= 220) call abort
- if (achar (220) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1298
+ if (iachar(c) /= iachar("")) STOP 1299
+ if (iachar(achar(220)) /= 220) STOP 1300
+ if (iachar ("")/= 220) STOP 1301
+ if (achar (220) /= "") STOP 1302
+ if ("" /= achar ( ichar ( ""))) STOP 1303
i = 220
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(221)) /= 221) call abort
- if (iachar ("")/= 221) call abort
- if (achar (221) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1304
+ if (iachar(c) /= iachar("")) STOP 1305
+ if (iachar(achar(221)) /= 221) STOP 1306
+ if (iachar ("")/= 221) STOP 1307
+ if (achar (221) /= "") STOP 1308
+ if ("" /= achar ( ichar ( ""))) STOP 1309
i = 221
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(222)) /= 222) call abort
- if (iachar ("")/= 222) call abort
- if (achar (222) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1310
+ if (iachar(c) /= iachar("")) STOP 1311
+ if (iachar(achar(222)) /= 222) STOP 1312
+ if (iachar ("")/= 222) STOP 1313
+ if (achar (222) /= "") STOP 1314
+ if ("" /= achar ( ichar ( ""))) STOP 1315
i = 222
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(223)) /= 223) call abort
- if (iachar ("")/= 223) call abort
- if (achar (223) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1316
+ if (iachar(c) /= iachar("")) STOP 1317
+ if (iachar(achar(223)) /= 223) STOP 1318
+ if (iachar ("")/= 223) STOP 1319
+ if (achar (223) /= "") STOP 1320
+ if ("" /= achar ( ichar ( ""))) STOP 1321
i = 223
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(224)) /= 224) call abort
- if (iachar ("")/= 224) call abort
- if (achar (224) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1322
+ if (iachar(c) /= iachar("")) STOP 1323
+ if (iachar(achar(224)) /= 224) STOP 1324
+ if (iachar ("")/= 224) STOP 1325
+ if (achar (224) /= "") STOP 1326
+ if ("" /= achar ( ichar ( ""))) STOP 1327
i = 224
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(225)) /= 225) call abort
- if (iachar ("")/= 225) call abort
- if (achar (225) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1328
+ if (iachar(c) /= iachar("")) STOP 1329
+ if (iachar(achar(225)) /= 225) STOP 1330
+ if (iachar ("")/= 225) STOP 1331
+ if (achar (225) /= "") STOP 1332
+ if ("" /= achar ( ichar ( ""))) STOP 1333
i = 225
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(226)) /= 226) call abort
- if (iachar ("")/= 226) call abort
- if (achar (226) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1334
+ if (iachar(c) /= iachar("")) STOP 1335
+ if (iachar(achar(226)) /= 226) STOP 1336
+ if (iachar ("")/= 226) STOP 1337
+ if (achar (226) /= "") STOP 1338
+ if ("" /= achar ( ichar ( ""))) STOP 1339
i = 226
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(227)) /= 227) call abort
- if (iachar ("")/= 227) call abort
- if (achar (227) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1340
+ if (iachar(c) /= iachar("")) STOP 1341
+ if (iachar(achar(227)) /= 227) STOP 1342
+ if (iachar ("")/= 227) STOP 1343
+ if (achar (227) /= "") STOP 1344
+ if ("" /= achar ( ichar ( ""))) STOP 1345
i = 227
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(228)) /= 228) call abort
- if (iachar ("")/= 228) call abort
- if (achar (228) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1346
+ if (iachar(c) /= iachar("")) STOP 1347
+ if (iachar(achar(228)) /= 228) STOP 1348
+ if (iachar ("")/= 228) STOP 1349
+ if (achar (228) /= "") STOP 1350
+ if ("" /= achar ( ichar ( ""))) STOP 1351
i = 228
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(229)) /= 229) call abort
- if (iachar ("")/= 229) call abort
- if (achar (229) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1352
+ if (iachar(c) /= iachar("")) STOP 1353
+ if (iachar(achar(229)) /= 229) STOP 1354
+ if (iachar ("")/= 229) STOP 1355
+ if (achar (229) /= "") STOP 1356
+ if ("" /= achar ( ichar ( ""))) STOP 1357
i = 229
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(230)) /= 230) call abort
- if (iachar ("")/= 230) call abort
- if (achar (230) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1358
+ if (iachar(c) /= iachar("")) STOP 1359
+ if (iachar(achar(230)) /= 230) STOP 1360
+ if (iachar ("")/= 230) STOP 1361
+ if (achar (230) /= "") STOP 1362
+ if ("" /= achar ( ichar ( ""))) STOP 1363
i = 230
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(231)) /= 231) call abort
- if (iachar ("")/= 231) call abort
- if (achar (231) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1364
+ if (iachar(c) /= iachar("")) STOP 1365
+ if (iachar(achar(231)) /= 231) STOP 1366
+ if (iachar ("")/= 231) STOP 1367
+ if (achar (231) /= "") STOP 1368
+ if ("" /= achar ( ichar ( ""))) STOP 1369
i = 231
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(232)) /= 232) call abort
- if (iachar ("")/= 232) call abort
- if (achar (232) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1370
+ if (iachar(c) /= iachar("")) STOP 1371
+ if (iachar(achar(232)) /= 232) STOP 1372
+ if (iachar ("")/= 232) STOP 1373
+ if (achar (232) /= "") STOP 1374
+ if ("" /= achar ( ichar ( ""))) STOP 1375
i = 232
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(233)) /= 233) call abort
- if (iachar ("")/= 233) call abort
- if (achar (233) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1376
+ if (iachar(c) /= iachar("")) STOP 1377
+ if (iachar(achar(233)) /= 233) STOP 1378
+ if (iachar ("")/= 233) STOP 1379
+ if (achar (233) /= "") STOP 1380
+ if ("" /= achar ( ichar ( ""))) STOP 1381
i = 233
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(234)) /= 234) call abort
- if (iachar ("")/= 234) call abort
- if (achar (234) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1382
+ if (iachar(c) /= iachar("")) STOP 1383
+ if (iachar(achar(234)) /= 234) STOP 1384
+ if (iachar ("")/= 234) STOP 1385
+ if (achar (234) /= "") STOP 1386
+ if ("" /= achar ( ichar ( ""))) STOP 1387
i = 234
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(235)) /= 235) call abort
- if (iachar ("")/= 235) call abort
- if (achar (235) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1388
+ if (iachar(c) /= iachar("")) STOP 1389
+ if (iachar(achar(235)) /= 235) STOP 1390
+ if (iachar ("")/= 235) STOP 1391
+ if (achar (235) /= "") STOP 1392
+ if ("" /= achar ( ichar ( ""))) STOP 1393
i = 235
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(236)) /= 236) call abort
- if (iachar ("")/= 236) call abort
- if (achar (236) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1394
+ if (iachar(c) /= iachar("")) STOP 1395
+ if (iachar(achar(236)) /= 236) STOP 1396
+ if (iachar ("")/= 236) STOP 1397
+ if (achar (236) /= "") STOP 1398
+ if ("" /= achar ( ichar ( ""))) STOP 1399
i = 236
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(237)) /= 237) call abort
- if (iachar ("")/= 237) call abort
- if (achar (237) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1400
+ if (iachar(c) /= iachar("")) STOP 1401
+ if (iachar(achar(237)) /= 237) STOP 1402
+ if (iachar ("")/= 237) STOP 1403
+ if (achar (237) /= "") STOP 1404
+ if ("" /= achar ( ichar ( ""))) STOP 1405
i = 237
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(238)) /= 238) call abort
- if (iachar ("")/= 238) call abort
- if (achar (238) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1406
+ if (iachar(c) /= iachar("")) STOP 1407
+ if (iachar(achar(238)) /= 238) STOP 1408
+ if (iachar ("")/= 238) STOP 1409
+ if (achar (238) /= "") STOP 1410
+ if ("" /= achar ( ichar ( ""))) STOP 1411
i = 238
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(239)) /= 239) call abort
- if (iachar ("")/= 239) call abort
- if (achar (239) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1412
+ if (iachar(c) /= iachar("")) STOP 1413
+ if (iachar(achar(239)) /= 239) STOP 1414
+ if (iachar ("")/= 239) STOP 1415
+ if (achar (239) /= "") STOP 1416
+ if ("" /= achar ( ichar ( ""))) STOP 1417
i = 239
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(240)) /= 240) call abort
- if (iachar ("")/= 240) call abort
- if (achar (240) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1418
+ if (iachar(c) /= iachar("")) STOP 1419
+ if (iachar(achar(240)) /= 240) STOP 1420
+ if (iachar ("")/= 240) STOP 1421
+ if (achar (240) /= "") STOP 1422
+ if ("" /= achar ( ichar ( ""))) STOP 1423
i = 240
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(241)) /= 241) call abort
- if (iachar ("")/= 241) call abort
- if (achar (241) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1424
+ if (iachar(c) /= iachar("")) STOP 1425
+ if (iachar(achar(241)) /= 241) STOP 1426
+ if (iachar ("")/= 241) STOP 1427
+ if (achar (241) /= "") STOP 1428
+ if ("" /= achar ( ichar ( ""))) STOP 1429
i = 241
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(242)) /= 242) call abort
- if (iachar ("")/= 242) call abort
- if (achar (242) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1430
+ if (iachar(c) /= iachar("")) STOP 1431
+ if (iachar(achar(242)) /= 242) STOP 1432
+ if (iachar ("")/= 242) STOP 1433
+ if (achar (242) /= "") STOP 1434
+ if ("" /= achar ( ichar ( ""))) STOP 1435
i = 242
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(243)) /= 243) call abort
- if (iachar ("")/= 243) call abort
- if (achar (243) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1436
+ if (iachar(c) /= iachar("")) STOP 1437
+ if (iachar(achar(243)) /= 243) STOP 1438
+ if (iachar ("")/= 243) STOP 1439
+ if (achar (243) /= "") STOP 1440
+ if ("" /= achar ( ichar ( ""))) STOP 1441
i = 243
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(244)) /= 244) call abort
- if (iachar ("")/= 244) call abort
- if (achar (244) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1442
+ if (iachar(c) /= iachar("")) STOP 1443
+ if (iachar(achar(244)) /= 244) STOP 1444
+ if (iachar ("")/= 244) STOP 1445
+ if (achar (244) /= "") STOP 1446
+ if ("" /= achar ( ichar ( ""))) STOP 1447
i = 244
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(245)) /= 245) call abort
- if (iachar ("")/= 245) call abort
- if (achar (245) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1448
+ if (iachar(c) /= iachar("")) STOP 1449
+ if (iachar(achar(245)) /= 245) STOP 1450
+ if (iachar ("")/= 245) STOP 1451
+ if (achar (245) /= "") STOP 1452
+ if ("" /= achar ( ichar ( ""))) STOP 1453
i = 245
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(246)) /= 246) call abort
- if (iachar ("")/= 246) call abort
- if (achar (246) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1454
+ if (iachar(c) /= iachar("")) STOP 1455
+ if (iachar(achar(246)) /= 246) STOP 1456
+ if (iachar ("")/= 246) STOP 1457
+ if (achar (246) /= "") STOP 1458
+ if ("" /= achar ( ichar ( ""))) STOP 1459
i = 246
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(247)) /= 247) call abort
- if (iachar ("")/= 247) call abort
- if (achar (247) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1460
+ if (iachar(c) /= iachar("")) STOP 1461
+ if (iachar(achar(247)) /= 247) STOP 1462
+ if (iachar ("")/= 247) STOP 1463
+ if (achar (247) /= "") STOP 1464
+ if ("" /= achar ( ichar ( ""))) STOP 1465
i = 247
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(248)) /= 248) call abort
- if (iachar ("")/= 248) call abort
- if (achar (248) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1466
+ if (iachar(c) /= iachar("")) STOP 1467
+ if (iachar(achar(248)) /= 248) STOP 1468
+ if (iachar ("")/= 248) STOP 1469
+ if (achar (248) /= "") STOP 1470
+ if ("" /= achar ( ichar ( ""))) STOP 1471
i = 248
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(249)) /= 249) call abort
- if (iachar ("")/= 249) call abort
- if (achar (249) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1472
+ if (iachar(c) /= iachar("")) STOP 1473
+ if (iachar(achar(249)) /= 249) STOP 1474
+ if (iachar ("")/= 249) STOP 1475
+ if (achar (249) /= "") STOP 1476
+ if ("" /= achar ( ichar ( ""))) STOP 1477
i = 249
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(250)) /= 250) call abort
- if (iachar ("")/= 250) call abort
- if (achar (250) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1478
+ if (iachar(c) /= iachar("")) STOP 1479
+ if (iachar(achar(250)) /= 250) STOP 1480
+ if (iachar ("")/= 250) STOP 1481
+ if (achar (250) /= "") STOP 1482
+ if ("" /= achar ( ichar ( ""))) STOP 1483
i = 250
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(251)) /= 251) call abort
- if (iachar ("")/= 251) call abort
- if (achar (251) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1484
+ if (iachar(c) /= iachar("")) STOP 1485
+ if (iachar(achar(251)) /= 251) STOP 1486
+ if (iachar ("")/= 251) STOP 1487
+ if (achar (251) /= "") STOP 1488
+ if ("" /= achar ( ichar ( ""))) STOP 1489
i = 251
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(252)) /= 252) call abort
- if (iachar ("")/= 252) call abort
- if (achar (252) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1490
+ if (iachar(c) /= iachar("")) STOP 1491
+ if (iachar(achar(252)) /= 252) STOP 1492
+ if (iachar ("")/= 252) STOP 1493
+ if (achar (252) /= "") STOP 1494
+ if ("" /= achar ( ichar ( ""))) STOP 1495
i = 252
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(253)) /= 253) call abort
- if (iachar ("")/= 253) call abort
- if (achar (253) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1496
+ if (iachar(c) /= iachar("")) STOP 1497
+ if (iachar(achar(253)) /= 253) STOP 1498
+ if (iachar ("")/= 253) STOP 1499
+ if (achar (253) /= "") STOP 1500
+ if ("" /= achar ( ichar ( ""))) STOP 1501
i = 253
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(254)) /= 254) call abort
- if (iachar ("")/= 254) call abort
- if (achar (254) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1502
+ if (iachar(c) /= iachar("")) STOP 1503
+ if (iachar(achar(254)) /= 254) STOP 1504
+ if (iachar ("")/= 254) STOP 1505
+ if (achar (254) /= "") STOP 1506
+ if ("" /= achar ( ichar ( ""))) STOP 1507
i = 254
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
- if (iachar(achar(255)) /= 255) call abort
- if (iachar ("")/= 255) call abort
- if (achar (255) /= "") call abort
- if ("" /= achar ( ichar ( ""))) call abort
+ if (achar(i) /= "") STOP 1508
+ if (iachar(c) /= iachar("")) STOP 1509
+ if (iachar(achar(255)) /= 255) STOP 1510
+ if (iachar ("")/= 255) STOP 1511
+ if (achar (255) /= "") STOP 1512
+ if ("" /= achar ( ichar ( ""))) STOP 1513
i = 255
c = ""
- if (achar(i) /= "") call abort
- if (iachar(c) /= iachar("")) call abort
+ if (achar(i) /= "") STOP 1514
+ if (iachar(c) /= iachar("")) STOP 1515
end program main
diff --git a/gcc/testsuite/gfortran.dg/achar_4.f90 b/gcc/testsuite/gfortran.dg/achar_4.f90
index eb49db896d9..556b42f9eba 100644
--- a/gcc/testsuite/gfortran.dg/achar_4.f90
+++ b/gcc/testsuite/gfortran.dg/achar_4.f90
@@ -6,7 +6,7 @@
! The code comes from http://www.star.le.ac.uk/~cgp/fortran.html (by Clive Page)
! Reported by Thomas Koenig <tkoenig@gcc.gnu.org>
!
- if (any (Up ("AbCdEfGhIjKlM") .ne. (/"ABCDEFGHIJKLM"/))) call abort ()
+ if (any (Up ("AbCdEfGhIjKlM") .ne. (/"ABCDEFGHIJKLM"/))) STOP 1
contains
Character (len=20) Function Up (string)
Character(len=*) string
diff --git a/gcc/testsuite/gfortran.dg/achar_6.F90 b/gcc/testsuite/gfortran.dg/achar_6.F90
index dd93c27472c..9226e4cd684 100644
--- a/gcc/testsuite/gfortran.dg/achar_6.F90
+++ b/gcc/testsuite/gfortran.dg/achar_6.F90
@@ -26,28 +26,28 @@ subroutine test (s1, s4, i, i1, i2, i3, i4)
character(kind=4,len=1) :: s4
integer :: i, i1, i2, i3, i4
- if (i /= i1) call abort
- if (i /= i2) call abort
- if (i /= i3) call abort
- if (i /= i4) call abort
+ if (i /= i1) STOP 1
+ if (i /= i2) STOP 2
+ if (i /= i3) STOP 3
+ if (i /= i4) STOP 4
- if (iachar (s1) /= i) call abort
- if (iachar (s4) /= i) call abort
+ if (iachar (s1) /= i) STOP 5
+ if (iachar (s4) /= i) STOP 6
- if (ichar (s1) /= i) call abort
- if (ichar (s4) /= i) call abort
+ if (ichar (s1) /= i) STOP 7
+ if (ichar (s4) /= i) STOP 8
- if (achar(i, kind=1) /= s1) call abort
- if (achar(i, kind=4) /= s4) call abort
+ if (achar(i, kind=1) /= s1) STOP 9
+ if (achar(i, kind=4) /= s4) STOP 10
- if (char(i, kind=1) /= s1) call abort
- if (char(i, kind=4) /= s4) call abort
+ if (char(i, kind=1) /= s1) STOP 11
+ if (char(i, kind=4) /= s4) STOP 12
- if (iachar(achar(i, kind=1)) /= i) call abort
- if (iachar(achar(i, kind=4)) /= i) call abort
+ if (iachar(achar(i, kind=1)) /= i) STOP 13
+ if (iachar(achar(i, kind=4)) /= i) STOP 14
- if (ichar(char(i, kind=1)) /= i) call abort
- if (ichar(char(i, kind=4)) /= i) call abort
+ if (ichar(char(i, kind=1)) /= i) STOP 15
+ if (ichar(char(i, kind=4)) /= i) STOP 16
end subroutine test
@@ -55,15 +55,15 @@ subroutine test_bis (s4, i, i2, i4)
character(kind=4,len=1) :: s4
integer :: i, i2, i4
- if (i /= i2) call abort
- if (i /= i4) call abort
+ if (i /= i2) STOP 17
+ if (i /= i4) STOP 18
- if (iachar (s4) /= i) call abort
- if (ichar (s4) /= i) call abort
- if (achar(i, kind=4) /= s4) call abort
- if (char(i, kind=4) /= s4) call abort
- if (iachar(achar(i, kind=4)) /= i) call abort
- if (ichar(char(i, kind=4)) /= i) call abort
+ if (iachar (s4) /= i) STOP 19
+ if (ichar (s4) /= i) STOP 20
+ if (achar(i, kind=4) /= s4) STOP 21
+ if (char(i, kind=4) /= s4) STOP 22
+ if (iachar(achar(i, kind=4)) /= i) STOP 23
+ if (ichar(char(i, kind=4)) /= i) STOP 24
end subroutine test_bis
diff --git a/gcc/testsuite/gfortran.dg/actual_array_constructor_1.f90 b/gcc/testsuite/gfortran.dg/actual_array_constructor_1.f90
index 1caf6522128..8ba20ecb437 100644
--- a/gcc/testsuite/gfortran.dg/actual_array_constructor_1.f90
+++ b/gcc/testsuite/gfortran.dg/actual_array_constructor_1.f90
@@ -20,7 +20,7 @@ contains
end subroutine
subroutine redirect_ (ch)
character(*) :: ch(:)
- if (ch(1) /= line) call abort ()
+ if (ch(1) /= line) STOP 1
end subroutine redirect_
end module global
@@ -40,8 +40,8 @@ contains
use global
type(point), pointer :: ptr
character(128) :: io(:)
- if (associated (ptr)) call abort ()
- if (io(1) .ne. line) call abort ()
+ if (associated (ptr)) STOP 2
+ if (io(1) .ne. line) STOP 3
end subroutine r
end module my_module
@@ -74,7 +74,7 @@ contains
end subroutine option_stopwatch_s
subroutine option_stopwatch_a (a)
character (*) :: a(:)
- if (any (a .ne. (/'hello ','hola! ','goddag'/))) call abort ()
+ if (any (a .ne. (/'hello ','hola! ','goddag'/))) STOP 4
end subroutine option_stopwatch_a
end program main
diff --git a/gcc/testsuite/gfortran.dg/actual_array_constructor_2.f90 b/gcc/testsuite/gfortran.dg/actual_array_constructor_2.f90
index ba05ac698bf..d39e97bb3b4 100644
--- a/gcc/testsuite/gfortran.dg/actual_array_constructor_2.f90
+++ b/gcc/testsuite/gfortran.dg/actual_array_constructor_2.f90
@@ -11,21 +11,21 @@
! Test the original problem
call foo ((/( 'abcd',i=1,m )/), c2)
if (any(c2(:) .ne. (/'abcd','abcd', &
- 'abcd','abcd'/))) call abort ()
+ 'abcd','abcd'/))) STOP 1
! Now get a bit smarter
call foo ((/"abcd", "efgh", "ijkl", "mnop"/), c1) ! worked previously
call foo ((/(c1(i), i = m,1,-1)/), c2) ! was broken
- if (any(c2(4:1:-1) .ne. c1)) call abort ()
+ if (any(c2(4:1:-1) .ne. c1)) STOP 2
! gfc_todo: Not Implemented: complex character array constructors
call foo ((/(c1(i)(i/2+1:i/2+2), i = 1,4)/), c2) ! Ha! take that..!
- if (any (c2 .ne. (/"ab ","fg ","jk ","op "/))) call abort ()
+ if (any (c2 .ne. (/"ab ","fg ","jk ","op "/))) STOP 3
! Check functions in the constructor
call foo ((/(achar(64+i)//achar(68+i)//achar(72+i)// &
achar(76+i),i=1,4 )/), c1) ! was broken
- if (any (c1 .ne. (/"AEIM","BFJN","CGKO","DHLP"/))) call abort ()
+ if (any (c1 .ne. (/"AEIM","BFJN","CGKO","DHLP"/))) STOP 4
contains
subroutine foo (chr1, chr2)
character(*), dimension(:) :: chr1, chr2
diff --git a/gcc/testsuite/gfortran.dg/actual_array_constructor_3.f90 b/gcc/testsuite/gfortran.dg/actual_array_constructor_3.f90
index 5b0d28a0d02..8519d67a597 100644
--- a/gcc/testsuite/gfortran.dg/actual_array_constructor_3.f90
+++ b/gcc/testsuite/gfortran.dg/actual_array_constructor_3.f90
@@ -19,7 +19,7 @@ program pr28914
enddo
summation = abs(summation - 11303932.9138271_8)
- if (summation.gt.0.00001) call abort()
+ if (summation.gt.0.00001) STOP 1
end program pr28914
diff --git a/gcc/testsuite/gfortran.dg/actual_array_offset_1.f90 b/gcc/testsuite/gfortran.dg/actual_array_offset_1.f90
index f67bcfd9651..a78f54611c6 100644
--- a/gcc/testsuite/gfortran.dg/actual_array_offset_1.f90
+++ b/gcc/testsuite/gfortran.dg/actual_array_offset_1.f90
@@ -151,12 +151,12 @@ program test_quicksort
array%value = int (1000000 * values)
! It would be pretty perverse if this failed!
- if (check (array)) call abort
+ if (check (array)) STOP 1
call quicksort( array )
! Check the the array is correctly ordered
- if (.not.check (array)) call abort
+ if (.not.check (array)) STOP 2
contains
logical function check (arg)
type(mysortable), dimension(:) :: arg
diff --git a/gcc/testsuite/gfortran.dg/actual_array_result_1.f90 b/gcc/testsuite/gfortran.dg/actual_array_result_1.f90
index 04c7e679b10..6a2aa0b5de1 100644
--- a/gcc/testsuite/gfortran.dg/actual_array_result_1.f90
+++ b/gcc/testsuite/gfortran.dg/actual_array_result_1.f90
@@ -60,11 +60,11 @@ program main
use one
integer :: n
n = 3
- if(any (foo1(n) /= [ 1,2,3 ])) call abort()
- if(any (foo2(n) /= [ 1,2,3 ])) call abort()
+ if(any (foo1(n) /= [ 1,2,3 ])) STOP 1
+ if(any (foo2(n) /= [ 1,2,3 ])) STOP 2
flag = 1
- if(any (foo1(n) /= [ 1,2,3 ])) call abort()
- if(any (foo2(n) /= [ 1,2,3 ])) call abort()
+ if(any (foo1(n) /= [ 1,2,3 ])) STOP 3
+ if(any (foo2(n) /= [ 1,2,3 ])) STOP 4
n = 5
- if(any (foo3(n) /= [ 0,1,2,3,0 ])) call abort()
+ if(any (foo3(n) /= [ 0,1,2,3,0 ])) STOP 5
end program
diff --git a/gcc/testsuite/gfortran.dg/actual_array_substr_1.f90 b/gcc/testsuite/gfortran.dg/actual_array_substr_1.f90
index 90108ec35cb..7c10c7020eb 100644
--- a/gcc/testsuite/gfortran.dg/actual_array_substr_1.f90
+++ b/gcc/testsuite/gfortran.dg/actual_array_substr_1.f90
@@ -13,10 +13,10 @@ program gfcbug33
contains
subroutine foo (chr)
character(7) :: chr(:)
- if (chr(1)//chr(2) .ne. "rstuvwxfghijkl") call abort ()
+ if (chr(1)//chr(2) .ne. "rstuvwxfghijkl") STOP 1
end subroutine foo
subroutine bar (chr)
character(*) :: chr(:)
- if (trim(chr(1))//trim(chr(2)) .ne. "ghijkstuvw") call abort ()
+ if (trim(chr(1))//trim(chr(2)) .ne. "ghijkstuvw") STOP 2
end subroutine bar
end program gfcbug33
diff --git a/gcc/testsuite/gfortran.dg/actual_array_substr_2.f90 b/gcc/testsuite/gfortran.dg/actual_array_substr_2.f90
index 6613751d0ad..fed51342ee0 100644
--- a/gcc/testsuite/gfortran.dg/actual_array_substr_2.f90
+++ b/gcc/testsuite/gfortran.dg/actual_array_substr_2.f90
@@ -21,12 +21,12 @@ program pr28174
! Make sure that variable substring references work.
call foo (a(:)(m:m+5), c(:)(n:m+2), d(:)(5:9))
- if (any (a .ne. teststring)) call abort ()
- if (any (b .ne. teststring)) call abort ()
+ if (any (a .ne. teststring)) STOP 1
+ if (any (b .ne. teststring)) STOP 2
if (any (c .ne. (/"ab456789#hij", &
- "kl7654321rst"/))) call abort ()
+ "kl7654321rst"/))) STOP 3
if (any (d .ne. (/"abc 23456hij", &
- "klm 98765rst"/))) call abort ()
+ "klm 98765rst"/))) STOP 4
contains
subroutine foo (w, x, y)
character(len=*), intent(in) :: w(:)
@@ -36,7 +36,7 @@ contains
"$#9876543210"/)
! This next is not required by the standard but tests the
! functioning of the gfortran implementation.
-! if (all (x(:)(3:7) .eq. y)) call abort ()
+! if (all (x(:)(3:7) .eq. y)) STOP 5
x = foostring (:)(5 : 4 + len (x))
y = foostring (:)(3 : 2 + len (y))
end subroutine foo
diff --git a/gcc/testsuite/gfortran.dg/actual_pointer_function_1.f90 b/gcc/testsuite/gfortran.dg/actual_pointer_function_1.f90
index 8fa882d9315..01213fd4e34 100644
--- a/gcc/testsuite/gfortran.dg/actual_pointer_function_1.f90
+++ b/gcc/testsuite/gfortran.dg/actual_pointer_function_1.f90
@@ -10,8 +10,8 @@
INTEGER :: a
END TYPE cp_logger_type
- if (cp_logger_log(cp_get_default_logger (0))) call abort ()
- if (.not. cp_logger_log(cp_get_default_logger (42))) call abort ()
+ if (cp_logger_log(cp_get_default_logger (0))) STOP 1
+ if (.not. cp_logger_log(cp_get_default_logger (42))) STOP 2
CONTAINS
diff --git a/gcc/testsuite/gfortran.dg/actual_procedure_1.f90 b/gcc/testsuite/gfortran.dg/actual_procedure_1.f90
index 4a7f3d81180..2686cad1d83 100644
--- a/gcc/testsuite/gfortran.dg/actual_procedure_1.f90
+++ b/gcc/testsuite/gfortran.dg/actual_procedure_1.f90
@@ -32,11 +32,11 @@ program procPtrTest
end interface
! Check the passing of a module function
call foo (proc4, chr)
- if (trim (chr) .ne. "proc4") call abort
+ if (trim (chr) .ne. "proc4") STOP 1
! Check the passing of an external function
call foo (proc_ext, chr)
! Check the passing of a character function
- if (trim (chr) .ne. "proc_ext") call abort
+ if (trim (chr) .ne. "proc_ext") STOP 2
call bar (chr_proc)
contains
subroutine foo (p, chr)
@@ -50,7 +50,7 @@ contains
end function
end interface
i = p (99, chr)
- if (any(i .ne. 99)) call abort
+ if (any(i .ne. 99)) STOP 3
end subroutine
subroutine bar (p)
interface
@@ -58,7 +58,7 @@ contains
character(8):: p
end function
end interface
- if (p () .ne. "chr_proc") call abort
+ if (p () .ne. "chr_proc") STOP 4
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.dg/adjustl_1.f90 b/gcc/testsuite/gfortran.dg/adjustl_1.f90
index 1238da8c29d..4871e330d22 100644
--- a/gcc/testsuite/gfortran.dg/adjustl_1.f90
+++ b/gcc/testsuite/gfortran.dg/adjustl_1.f90
@@ -4,5 +4,5 @@
PROGRAM test
character(len=10) :: u
WRITE(unit=u,fmt='(3A)') PACK(ADJUSTL([" a", " b"]), [.TRUE., .FALSE.])
- if (u .ne. 'a ') call abort
+ if (u .ne. 'a ') STOP 1
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/advance_1.f90 b/gcc/testsuite/gfortran.dg/advance_1.f90
index 9002c52b5f7..e41e2b13612 100644
--- a/gcc/testsuite/gfortran.dg/advance_1.f90
+++ b/gcc/testsuite/gfortran.dg/advance_1.f90
@@ -8,6 +8,6 @@ program pr25463
write (10,'(TL2,A)') 'c'
rewind (10)
read (10, '(a)') str
- if (str.ne.'abc') call abort()
+ if (str.ne.'abc') STOP 1
close (10, status='delete')
end
diff --git a/gcc/testsuite/gfortran.dg/advance_4.f90 b/gcc/testsuite/gfortran.dg/advance_4.f90
index 3676558fb2b..bfceca22da1 100644
--- a/gcc/testsuite/gfortran.dg/advance_4.f90
+++ b/gcc/testsuite/gfortran.dg/advance_4.f90
@@ -6,5 +6,5 @@ program main
close (12)
read (12, '(6A)') answer
close (12, status="delete")
- if (answer /= "XABCDX") call abort()
+ if (answer /= "XABCDX") STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/advance_5.f90 b/gcc/testsuite/gfortran.dg/advance_5.f90
index 3a48e536606..cd2c92a4f97 100644
--- a/gcc/testsuite/gfortran.dg/advance_5.f90
+++ b/gcc/testsuite/gfortran.dg/advance_5.f90
@@ -13,5 +13,5 @@ close(10)
open(10,file="fort.10",position="rewind")
read(10,'(a)') b
close(10, status="delete")
-if (b.ne."abcxxx") call abort()
+if (b.ne."abcxxx") STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/advance_6.f90 b/gcc/testsuite/gfortran.dg/advance_6.f90
index 1a42cca923d..4673386b351 100644
--- a/gcc/testsuite/gfortran.dg/advance_6.f90
+++ b/gcc/testsuite/gfortran.dg/advance_6.f90
@@ -15,7 +15,7 @@ program main
backspace 95
c = 'xxx'
read (95,'(A)') c
- if (c /= 'ab ') call abort
+ if (c /= 'ab ') STOP 1
close (95)
call check_end_record
@@ -34,7 +34,7 @@ program main
rewind 95
c = 'xxx'
read (95,'(A)') c
- if (c /= 'ab ') call abort
+ if (c /= 'ab ') STOP 2
close (95)
call check_end_record
@@ -42,7 +42,7 @@ program main
rewind 95
c = 'xxx'
read (95,'(A)') c
- if (c /= 'ab ') call abort
+ if (c /= 'ab ') STOP 3
close (95)
call check_end_record
@@ -60,15 +60,15 @@ contains
character(len=1) :: x
open(2003, file=fname, status="old", access="stream", form="unformatted")
read(2003) x
- if (x /= 'a') call abort
+ if (x /= 'a') STOP 4
read(2003) x
- if (x /= 'b') call abort
+ if (x /= 'b') STOP 5
read(2003) x
if (x /= achar(10)) then
read(2003) x
if (x /= achar(13)) then
else
- call abort
+ STOP 6
end if
end if
close(2003,status="delete")
diff --git a/gcc/testsuite/gfortran.dg/aint_anint_1.f90 b/gcc/testsuite/gfortran.dg/aint_anint_1.f90
index aadb62cd96d..812e9e467ce 100644
--- a/gcc/testsuite/gfortran.dg/aint_anint_1.f90
+++ b/gcc/testsuite/gfortran.dg/aint_anint_1.f90
@@ -8,19 +8,19 @@ program aint_anint_1
r1 = aint(r)
r2 = aint(r,kind=8)
- if (abs(r1 - r2) > 0.1) call abort()
+ if (abs(r1 - r2) > 0.1) STOP 1
r1 = anint(r)
r2 = anint(r,kind=8)
- if (abs(r1 - r2) > 0.1) call abort()
+ if (abs(r1 - r2) > 0.1) STOP 2
s1 = aint(s)
s2 = aint(s, kind=4)
- if (abs(s1 - s2) > 0.1) call abort()
+ if (abs(s1 - s2) > 0.1) STOP 3
s1 = anint(s)
s2 = anint(s, kind=4)
- if (abs(s1 - s2) > 0.1) call abort()
+ if (abs(s1 - s2) > 0.1) STOP 4
end program aint_anint_1
diff --git a/gcc/testsuite/gfortran.dg/aliasing_array_result_1.f90 b/gcc/testsuite/gfortran.dg/aliasing_array_result_1.f90
index ddfba012ae6..a8898fd7abf 100644
--- a/gcc/testsuite/gfortran.dg/aliasing_array_result_1.f90
+++ b/gcc/testsuite/gfortran.dg/aliasing_array_result_1.f90
@@ -117,7 +117,7 @@ program test
if (any (c .ne. check)) call myabort (7)
call aaa
call tobias
- if (abort_flag) call abort
+ if (abort_flag) STOP 1
contains
function f()
integer :: f(ONE)
diff --git a/gcc/testsuite/gfortran.dg/aliasing_dummy_1.f90 b/gcc/testsuite/gfortran.dg/aliasing_dummy_1.f90
index 686853a1c08..dcc2d7c05c8 100644
--- a/gcc/testsuite/gfortran.dg/aliasing_dummy_1.f90
+++ b/gcc/testsuite/gfortran.dg/aliasing_dummy_1.f90
@@ -27,14 +27,14 @@ program test_lex
! Test 1D with assumed shape (original bug) and assumed size.
call bar (table, 2, 4)
- if (any (table%list%word.ne.(/"one ","i= 2","three","i= 4"/))) call abort ()
+ if (any (table%list%word.ne.(/"one ","i= 2","three","i= 4"/))) STOP 1
elist = reshape (table%list, (/2,2/))
! Check 2D is OK with assumed shape and assumed size.
call foo3 (elist%word, 1)
call foo1 (elist%word, 3)
- if (any (elist%word.ne.reshape ((/"i= 1","i= 2","i= 3","i= 4"/), (/2,2/)))) call abort ()
+ if (any (elist%word.ne.reshape ((/"i= 1","i= 2","i= 3","i= 4"/), (/2,2/)))) STOP 2
contains
diff --git a/gcc/testsuite/gfortran.dg/aliasing_dummy_4.f90 b/gcc/testsuite/gfortran.dg/aliasing_dummy_4.f90
index 826ada16277..5f497571360 100644
--- a/gcc/testsuite/gfortran.dg/aliasing_dummy_4.f90
+++ b/gcc/testsuite/gfortran.dg/aliasing_dummy_4.f90
@@ -20,17 +20,17 @@ program test_f90
call test_sub(s%a(1, 1), 1000) ! Test the original problem.
- if ( any (s(1, 1)%a(:, :) /= reshape ([1111, 112, 121, 122], [2, 2]))) call abort ()
- if ( any (s(1, 2)%a(:, :) /= reshape ([1121, 122, 141, 142], [2, 2]))) call abort ()
- if ( any (s(2, 1)%a(:, :) /= reshape ([1112, 114, 122, 124], [2, 2]))) call abort ()
- if ( any (s(2, 2)%a(:, :) /= reshape ([1122, 124, 142, 144], [2, 2]))) call abort ()
+ if ( any (s(1, 1)%a(:, :) /= reshape ([1111, 112, 121, 122], [2, 2]))) STOP 1
+ if ( any (s(1, 2)%a(:, :) /= reshape ([1121, 122, 141, 142], [2, 2]))) STOP 2
+ if ( any (s(2, 1)%a(:, :) /= reshape ([1112, 114, 122, 124], [2, 2]))) STOP 3
+ if ( any (s(2, 2)%a(:, :) /= reshape ([1122, 124, 142, 144], [2, 2]))) STOP 4
call test_sub(s(1, 1)%a(:, :), 1000) ! Check "normal" references.
- if ( any (s(1, 1)%a(:, :) /= reshape ([2111,1112,1121,1122], [2, 2]))) call abort ()
- if ( any (s(1, 2)%a(:, :) /= reshape ([1121, 122, 141, 142], [2, 2]))) call abort ()
- if ( any (s(2, 1)%a(:, :) /= reshape ([1112, 114, 122, 124], [2, 2]))) call abort ()
- if ( any (s(2, 2)%a(:, :) /= reshape ([1122, 124, 142, 144], [2, 2]))) call abort ()
+ if ( any (s(1, 1)%a(:, :) /= reshape ([2111,1112,1121,1122], [2, 2]))) STOP 5
+ if ( any (s(1, 2)%a(:, :) /= reshape ([1121, 122, 141, 142], [2, 2]))) STOP 6
+ if ( any (s(2, 1)%a(:, :) /= reshape ([1112, 114, 122, 124], [2, 2]))) STOP 7
+ if ( any (s(2, 2)%a(:, :) /= reshape ([1122, 124, 142, 144], [2, 2]))) STOP 8
contains
subroutine test_sub(array, offset)
integer array(:, :), offset
diff --git a/gcc/testsuite/gfortran.dg/aliasing_dummy_5.f90 b/gcc/testsuite/gfortran.dg/aliasing_dummy_5.f90
index cc52456f0d9..319a4aeaad0 100644
--- a/gcc/testsuite/gfortran.dg/aliasing_dummy_5.f90
+++ b/gcc/testsuite/gfortran.dg/aliasing_dummy_5.f90
@@ -20,7 +20,7 @@ PROGRAM main
IMPLICIT NONE
arr = (/ 1, 2, 3 /)
CALL bar(arr)
- if (any (arr /= (/ 1, 1, 2 /))) call abort()
+ if (any (arr /= (/ 1, 1, 2 /))) STOP 1
CALL test()
contains
subroutine bar(x)
@@ -37,7 +37,7 @@ CONTAINS
INTEGER, TARGET :: arg(:)
arr(1) = 5
arg(1) = 6
- if (arr(1) == 5) call abort()
+ if (arr(1) == 5) STOP 2
END SUBROUTINE foobar
END MODULE m2
subroutine test
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_assign_1.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_assign_1.f90
index 9d87af2f847..1576bdaf290 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_assign_1.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_assign_1.f90
@@ -17,16 +17,16 @@
! An intrinsic assignment must deallocate the l-value and copy across
! the array from the r-value.
b = a
- if (any (b%chars .ne. (/"h","e","l","l","o"/))) call abort ()
- if (allocated (a%chars) .eqv. .false.) call abort ()
+ if (any (b%chars .ne. (/"h","e","l","l","o"/))) STOP 1
+ if (allocated (a%chars) .eqv. .false.) STOP 2
! Scalar to array needs to copy the derived type, to its ultimate components,
! to each of the l-value elements. */
x = b
x(2)%chars = (/"g","'","d","a","y"/)
- if (any (x(1)%chars .ne. (/"h","e","l","l","o"/))) call abort ()
- if (any (x(2)%chars .ne. (/"g","'","d","a","y"/))) call abort ()
- if (allocated (b%chars) .eqv. .false.) call abort ()
+ if (any (x(1)%chars .ne. (/"h","e","l","l","o"/))) STOP 3
+ if (any (x(2)%chars .ne. (/"g","'","d","a","y"/))) STOP 4
+ if (allocated (b%chars) .eqv. .false.) STOP 5
deallocate (x(1)%chars, x(2)%chars, x(3)%chars)
! Array intrinsic assignments are like their scalar counterpart and
@@ -37,21 +37,21 @@
x(2)%chars = (/"g","'","d","a","y"/)
x(3)%chars = (/"g","o","d","a","g"/)
y(2:1:-1) = x(1:2)
- if (any (y(1)%chars .ne. (/"g","'","d","a","y"/))) call abort ()
- if (any (y(2)%chars .ne. (/"h","e","l","l","o"/))) call abort ()
- if (any (x(3)%chars .ne. (/"g","o","d","a","g"/))) call abort ()
+ if (any (y(1)%chars .ne. (/"g","'","d","a","y"/))) STOP 6
+ if (any (y(2)%chars .ne. (/"h","e","l","l","o"/))) STOP 7
+ if (any (x(3)%chars .ne. (/"g","o","d","a","g"/))) STOP 8
! In the case of an assignment where there is a dependency, so that a
! temporary is necessary, each element must be copied to its
! destination after it has been deallocated.
y(2:3) = y(1:2)
- if (any (y(1)%chars .ne. (/"g","'","d","a","y"/))) call abort ()
- if (any (y(2)%chars .ne. (/"g","'","d","a","y"/))) call abort ()
- if (any (y(3)%chars .ne. (/"h","e","l","l","o"/))) call abort ()
+ if (any (y(1)%chars .ne. (/"g","'","d","a","y"/))) STOP 9
+ if (any (y(2)%chars .ne. (/"g","'","d","a","y"/))) STOP 10
+ if (any (y(3)%chars .ne. (/"h","e","l","l","o"/))) STOP 11
! An identity assignment must not do any deallocation....!
y = y
- if (any (y(1)%chars .ne. (/"g","'","d","a","y"/))) call abort ()
- if (any (y(2)%chars .ne. (/"g","'","d","a","y"/))) call abort ()
- if (any (y(3)%chars .ne. (/"h","e","l","l","o"/))) call abort ()
+ if (any (y(1)%chars .ne. (/"g","'","d","a","y"/))) STOP 12
+ if (any (y(2)%chars .ne. (/"g","'","d","a","y"/))) STOP 13
+ if (any (y(3)%chars .ne. (/"h","e","l","l","o"/))) STOP 14
end
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_assign_10.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_assign_10.f90
index 808a2898cfa..9f1d35dd08d 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_assign_10.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_assign_10.f90
@@ -51,8 +51,8 @@ program tao_program
u%design%bunch_params%n_live_particle = [(i, i = 0, n)]
u%model = u%design
u%model = u%design ! The double assignment was the cause of the ICE
- if (.not. allocated (u%model%bunch_params)) call abort
- if (any (u%model%bunch_params%n_live_particle .ne. [(i, i = 0, n)])) call abort
+ if (.not. allocated (u%model%bunch_params)) STOP 1
+ if (any (u%model%bunch_params%n_live_particle .ne. [(i, i = 0, n)])) STOP 2
Deallocate (u%model%bunch_params, u%design%bunch_params)
deallocate (u%design, u%model)
deallocate (s%u)
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_assign_11.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_assign_11.f90
index 2d2b85b841f..7817e7e800a 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_assign_11.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_assign_11.f90
@@ -23,7 +23,7 @@ z = [ x, y ]
!print *, z(1)%a, z(2)%a, x%A, y%A
if (any (z(1)%a /= 11) .or. z(2)%a(1) /= 22 .or. any (x%A /= 11) &
.or. y%A(1) /= 22) &
- call abort()
+ STOP 1
x%A(:) = 444
y%A(:) = 555
@@ -31,11 +31,11 @@ y%A(:) = 555
!print *, z(1)%a, z(2)%a, x%A, y%A
if (any (z(1)%a /= 11) .or. z(2)%a(1) /= 22 .or. any (x%A /= 444) &
.or. y%A(1) /= 555) &
- call abort()
+ STOP 2
z(:) = [ x, y ]
!print *, z(1)%a, z(2)%a, x%A, y%A
if (any (z(1)%a /= 444) .or. z(2)%a(1) /= 555 .or. any (x%A /= 444) &
.or. y%A(1) /= 555) &
- call abort()
+ STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_assign_12.f03 b/gcc/testsuite/gfortran.dg/alloc_comp_assign_12.f03
index ea8067d389c..82e5e7abfbc 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_assign_12.f03
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_assign_12.f03
@@ -18,7 +18,7 @@ contains
class(foo_t) :: this
real, intent(in) :: u(:)
this%u = u(int (u)) ! The failure to allocate occurred here.
- if (.not.allocated (this%u)) call abort
+ if (.not.allocated (this%u)) STOP 1
end subroutine make
function disp(this)
implicit none
@@ -35,8 +35,8 @@ program main2
real, allocatable :: u(:)
u=real ([3,2,1,4])
call o%make(u)
- if (any (int (o%disp()) .ne. [1,2,3,4])) call abort
+ if (any (int (o%disp()) .ne. [1,2,3,4])) STOP 2
u=real ([2,1])
call o%make(u)
- if (any (int (o%disp()) .ne. [1,2])) call abort
+ if (any (int (o%disp()) .ne. [1,2])) STOP 3
end program main2
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_assign_13.f08 b/gcc/testsuite/gfortran.dg/alloc_comp_assign_13.f08
index fe697908a2d..d6a22475ad1 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_assign_13.f08
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_assign_13.f08
@@ -15,11 +15,11 @@ program test_allocatable_components
Me= A(X= 1, Y= 2, C="correctly allocated")
- if (Me%X /= 1) call abort()
- if (.not. allocated(Me%y) .or. Me%y /= 2) call abort()
- if (.not. allocated(Me%c)) call abort()
- if (len(Me%c) /= 19) call abort()
- if (Me%c /= "correctly allocated") call abort()
+ if (Me%X /= 1) STOP 1
+ if (.not. allocated(Me%y) .or. Me%y /= 2) STOP 2
+ if (.not. allocated(Me%c)) STOP 3
+ if (len(Me%c) /= 19) STOP 4
+ if (Me%c /= "correctly allocated") STOP 5
! Now check explicitly allocated components.
Ea%X = 9
@@ -28,16 +28,16 @@ program test_allocatable_components
! Implicit allocate on assign in the next line
Ea%c = "13 characters"
- if (Ea%X /= 9) call abort()
- if (.not. allocated(Ea%y) .or. Ea%y /= 42) call abort()
- if (.not. allocated(Ea%c)) call abort()
- if (len(Ea%c) /= 13) call abort()
- if (Ea%c /= "13 characters") call abort()
+ if (Ea%X /= 9) STOP 6
+ if (.not. allocated(Ea%y) .or. Ea%y /= 42) STOP 7
+ if (.not. allocated(Ea%c)) STOP 8
+ if (len(Ea%c) /= 13) STOP 9
+ if (Ea%c /= "13 characters") STOP 10
deallocate(Ea%y)
deallocate(Ea%c)
- if (allocated(Ea%y)) call abort()
- if (allocated(Ea%c)) call abort()
+ if (allocated(Ea%y)) STOP 11
+ if (allocated(Ea%c)) STOP 12
end program
! vim:ts=4:sts=4:sw=4:
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_assign_14.f08 b/gcc/testsuite/gfortran.dg/alloc_comp_assign_14.f08
index 0fd4d91f0c1..7b9c681f6bd 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_assign_14.f08
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_assign_14.f08
@@ -19,11 +19,11 @@ program test_allocatable_components
Me= A(X= 1, Y= 2, C="correctly allocated")
- if (Me%X /= 1) call abort()
- if (.not. allocated(Me%y) .or. Me%y /= 2) call abort()
- if (.not. allocated(Me%c)) call abort()
- if (len(Me%c) /= 19) call abort()
- if (Me%c /= "correctly allocated") call abort()
+ if (Me%X /= 1) STOP 1
+ if (.not. allocated(Me%y) .or. Me%y /= 2) STOP 2
+ if (.not. allocated(Me%c)) STOP 3
+ if (len(Me%c) /= 19) STOP 4
+ if (Me%c /= "correctly allocated") STOP 5
! Now check explicitly allocated components.
Ea%X = 9
@@ -32,15 +32,15 @@ program test_allocatable_components
! Implicit allocate on assign in the next line
Ea%c = "13 characters"
- if (Ea%X /= 9) call abort()
- if (.not. allocated(Ea%y) .or. Ea%y /= 42) call abort()
- if (.not. allocated(Ea%c)) call abort()
- if (len(Ea%c) /= 13) call abort()
- if (Ea%c /= "13 characters") call abort()
+ if (Ea%X /= 9) STOP 6
+ if (.not. allocated(Ea%y) .or. Ea%y /= 42) STOP 7
+ if (.not. allocated(Ea%c)) STOP 8
+ if (len(Ea%c) /= 13) STOP 9
+ if (Ea%c /= "13 characters") STOP 10
deallocate(Ea%y)
deallocate(Ea%c)
- if (allocated(Ea%y)) call abort()
- if (allocated(Ea%c)) call abort()
+ if (allocated(Ea%y)) STOP 11
+ if (allocated(Ea%c)) STOP 12
end program
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_assign_15.f03 b/gcc/testsuite/gfortran.dg/alloc_comp_assign_15.f03
index 94e04003151..23448dde13d 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_assign_15.f03
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_assign_15.f03
@@ -26,7 +26,7 @@ program Test1
allocate(X%P)
X%P%Source = 'test string'
- if (.not.allocated (X%P%Source)) call abort
- if (X%P%Source .ne. 'test string') call abort
+ if (.not.allocated (X%P%Source)) STOP 1
+ if (X%P%Source .ne. 'test string') STOP 2
end program Test1
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_assign_2.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_assign_2.f90
index 32c3c82dc67..c1b2149bb71 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_assign_2.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_assign_2.f90
@@ -22,7 +22,7 @@
x(2) = a ((/1, 2, 3, 4/) + 10)
forall (j = 1:2, i = 1:4, x(j)%i(i) > 2 + (j-1)*10) x(j)%i(i) = j*4-i
if (any ((/((x(i)%i(j), j = 1,4), i = 1,2)/) .ne. &
- (/1, 2, 1, 0, 11, 12, 5, 4/))) call abort ()
+ (/1, 2, 1, 0, 11, 12, 5, 4/))) STOP 1
y(1) = b ((/x(1),x(2)/))
y(2) = b ((/x(2),x(1)/))
@@ -30,13 +30,13 @@
y(k)%at(j)%i(i) = j*4-i+k
end forall
if (any ((/(((y(k)%at(i)%i(j), j = 1,4), i = 1,2), k = 1,2)/) .ne. &
- (/4,3,2,1,11,12,6,5,11,12,3,2,9,8,7,6/))) call abort ()
+ (/4,3,2,1,11,12,6,5,11,12,3,2,9,8,7,6/))) STOP 2
! Now simple assignments in WHERE.
where (y(1)%at(1)%i > 2) y(1)%at(1)%i = 0
if (any( (/(((y(k)%at(i)%i(j), j = 1,4), i = 1,2), k = 1,2)/) .ne. &
- (/0,0,2,1,11,12,6,5,11,12,3,2,9,8,7,6/))) call abort ()
+ (/0,0,2,1,11,12,6,5,11,12,3,2,9,8,7,6/))) STOP 3
! Check that temporaries and full array alloctable component assignments
! are correctly handled in FORALL.
@@ -46,6 +46,6 @@
forall (i=1:2) y(i) = y(3-i) ! This needs a temporary.
forall (i=1:2) z(i) = y(i)
if (any ((/(((z(k)%at(i)%i(j), j = 1,4), i = 1,1), k = 1,2)/) .ne. &
- (/(/5,6,7,8/),(/1,2,3,4/)/))) call abort ()
+ (/(/5,6,7,8/),(/1,2,3,4/)/))) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_assign_3.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_assign_3.f90
index 5be6bd99091..486d4b3d6e6 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_assign_3.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_assign_3.f90
@@ -25,12 +25,12 @@
y(2) = y(1)
forall (j=1:2,k=1:4, y(1)%at(j)%i(k) .ne. y(2)%at(j)%i(k)) &
y(1)%at(j)%i(k) = 999
- if (any ((/((y(1)%at(j)%i(k), k=1,4),j=1,2)/) .eq. 999)) call abort ()
+ if (any ((/((y(1)%at(j)%i(k), k=1,4),j=1,2)/) .eq. 999)) STOP 1
z = y
forall (i=1:2,j=1:2,k=1:4, z(i)%at(j)%i(k) .ne. y(i)%at(j)%i(k)) &
z(i)%at(j)%i(k) = 999
- if (any ((/(((z(i)%at(j)%i(k), k=1,4),j=1,2),i=1,2)/) .eq. 999)) call abort ()
+ if (any ((/(((z(i)%at(j)%i(k), k=1,4),j=1,2),i=1,2)/) .eq. 999)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_assign_4.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_assign_4.f90
index b204106da2d..112f2a2fb84 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_assign_4.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_assign_4.f90
@@ -31,7 +31,7 @@
y(2) = y(1)
if (any((/((y(2)%at(i)%ch(j),j=1,4),i=1,2)/) .ne. &
- (/chr1, chr2/))) call abort ()
+ (/chr1, chr2/))) STOP 1
call test_ab6 ()
@@ -56,7 +56,7 @@ contains
p = c((/b(a((/"Mary","Lamb"/)))/))
bv = p%b(1)
- if (any ((bv%a%ch(:)) .ne. (/"Mary","Lamb"/))) call abort ()
+ if (any ((bv%a%ch(:)) .ne. (/"Mary","Lamb"/))) STOP 2
end subroutine test_ab6
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_assign_5.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_assign_5.f90
index 3cc3695c4cf..f8e7f596a53 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_assign_5.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_assign_5.f90
@@ -19,7 +19,7 @@ implicit none
x = f()
- if (ctr /= 1) call abort ()
+ if (ctr /= 1) STOP 1
contains
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_assign_6.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_assign_6.f90
index c3882761f95..ef4b178e71b 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_assign_6.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_assign_6.f90
@@ -48,6 +48,6 @@ program VST28
res = res//char_a(6:6)
if(size(res%chars) /= 2 .or. any(res%chars /= ['e','f'])) then
write(*,*) 'ERROR: should be ef, got: ', res%chars, size(res%chars)
- call abort ()
+ STOP 1
end if
end program VST28
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_assign_7.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_assign_7.f90
index 08e98c2c332..252558dc780 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_assign_7.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_assign_7.f90
@@ -33,6 +33,6 @@ end module PrettyPix_module
p = path ([spline([x(1)]),spline([x(2)]),spline([x(3)])])
call scene_set_look_at_path(this,p)
do i = 1, 3
- if (this%look_at_path%r(i)%y2(1) .ne. x(i)) call abort
+ if (this%look_at_path%r(i)%y2(1) .ne. x(i)) STOP 1
end do
end
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_assign_8.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_assign_8.f90
index 655ef856ba8..c4d67f5960e 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_assign_8.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_assign_8.f90
@@ -39,10 +39,10 @@ end module
t1%b(1)=1d0
t1%b(2)=2d0
t2=-t1
- if (t2%a .ne. -0.5d0) call abort
- if (any(t2%b .ne. [-1d0, -2d0])) call abort
+ if (t2%a .ne. -0.5d0) STOP 1
+ if (any(t2%b .ne. [-1d0, -2d0])) STOP 2
t1=-t1
- if (t1%a .ne. -0.5d0) call abort
- if (any(t1%b .ne. [-1d0, -2d0])) call abort
+ if (t1%a .ne. -0.5d0) STOP 3
+ if (any(t1%b .ne. [-1d0, -2d0])) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_assign_9.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_assign_9.f90
index 9051bafa019..0d0a2bf2874 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_assign_9.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_assign_9.f90
@@ -16,5 +16,5 @@ PROGRAM X
T1%A = 23
T2 = T1
T1%A = 42
- if (T2%A(1) .NE. 23) CALL ABORT
+ if (T2%A(1) .NE. 23) STOP 1
END PROGRAM X
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_auto_array_1.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_auto_array_1.f90
index 915b2108f46..d02fb7c8b2c 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_auto_array_1.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_auto_array_1.f90
@@ -35,8 +35,8 @@ CONTAINS
SUBROUTINE extend_lists2
type(VARYING_STRING),DIMENSION(list_size) :: vocab_swap
allocate (vocab_swap(1)%chars(10))
- if (.not.allocated(vocab_swap(1)%chars)) call abort ()
- if (allocated(vocab_swap(10)%chars)) call abort ()
+ if (.not.allocated(vocab_swap(1)%chars)) STOP 1
+ if (allocated(vocab_swap(10)%chars)) STOP 2
ENDSUBROUTINE extend_lists2
ENDPROGRAM vocabulary_word_count
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_auto_array_2.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_auto_array_2.f90
index 556e2724374..4cd5a4c8316 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_auto_array_2.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_auto_array_2.f90
@@ -18,10 +18,10 @@ contains
type(grid_index_region),allocatable :: iregion(:)
allocate (iregion(npiece + 1))
call read_iregion(npiece,iregion)
- if (size(iregion) .ne. npiece + 1) call abort
- if (.not.allocated (iregion(npiece)%lons)) call abort
- if (allocated (iregion(npiece+1)%lons)) call abort
- if (any (iregion(npiece)%lons .ne. [(i, i = 1, npiece)])) call abort
+ if (size(iregion) .ne. npiece + 1) STOP 1
+ if (.not.allocated (iregion(npiece)%lons)) STOP 2
+ if (allocated (iregion(npiece+1)%lons)) STOP 3
+ if (any (iregion(npiece)%lons .ne. [(i, i = 1, npiece)])) STOP 4
deallocate (iregion)
end subroutine read_grid_header
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_basics_1.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_basics_1.f90
index 44d1c8bc0e6..49109a46409 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_basics_1.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_basics_1.f90
@@ -41,7 +41,7 @@ program alloc
if (allocated(b%a2) .OR. allocated(b%a1)) then
write (0, *) 'main - 1'
- call abort()
+ STOP 1
end if
! 3 calls to _gfortran_deallocate (INTENT(OUT) dummy)
@@ -75,7 +75,7 @@ contains
if (allocated(b%a2) .OR. allocated(b%a1)) then
write (0, *) 'allocate_alloc2 - 1'
- call abort()
+ STOP 2
end if
allocate (b%a2(3))
@@ -86,7 +86,7 @@ contains
do i = 1, 3
if (allocated(b%a1(i)%x)) then
write (0, *) 'allocate_alloc2 - 2', i
- call abort()
+ STOP 3
end if
allocate (b%a1(i)%x(3))
b%a1(i)%x = i + [ 1.0, 2.0, 3.0 ]
@@ -98,7 +98,7 @@ contains
type(alloc2) function return_alloc2() result(b)
if (allocated(b%a2) .OR. allocated(b%a1)) then
write (0, *) 'return_alloc2 - 1'
- call abort()
+ STOP 4
end if
allocate (b%a2(3))
@@ -109,7 +109,7 @@ contains
do i = 1, 3
if (allocated(b%a1(i)%x)) then
write (0, *) 'return_alloc2 - 2', i
- call abort()
+ STOP 5
end if
allocate (b%a1(i)%x(3))
b%a1(i)%x = i + [ 1.0, 2.0, 3.0 ]
@@ -122,20 +122,20 @@ contains
if (.NOT.(allocated(b%a2) .AND. allocated(b%a1))) then
write (0, *) 'check_alloc2 - 1'
- call abort()
+ STOP 6
end if
if (any(b%a2 /= [ 1, 2, 3 ])) then
write (0, *) 'check_alloc2 - 2'
- call abort()
+ STOP 7
end if
do i = 1, 3
if (.NOT.allocated(b%a1(i)%x)) then
write (0, *) 'check_alloc2 - 3', i
- call abort()
+ STOP 8
end if
if (any(b%a1(i)%x /= i + [ 1.0, 2.0, 3.0 ])) then
write (0, *) 'check_alloc2 - 4', i
- call abort()
+ STOP 9
end if
end do
end subroutine check_alloc2
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_basics_2.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_basics_2.f90
index 170a8871f71..f10eaf7c932 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_basics_2.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_basics_2.f90
@@ -19,21 +19,21 @@ program main
allocate (mol(1))
allocate (mol(1), stat=i)
!print *, i ! /= 0
- if (i == 0) call abort()
+ if (i == 0) STOP 1
allocate (mol(1)%array(5))
allocate (mol(1)%array(5),stat=i)
!print *, i ! /= 0
- if (i == 0) call abort()
+ if (i == 0) STOP 2
allocate (molp(1))
allocate (molp(1), stat=i)
!print *, i ! == 0
- if (i /= 0) call abort()
+ if (i /= 0) STOP 3
allocate (molp(1)%array(5))
allocate (molp(1)%array(5),stat=i)
!print *, i ! /= 0
- if (i == 0) call abort()
+ if (i == 0) STOP 4
end program main
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_basics_5.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_basics_5.f90
index 9dd4e97f5bb..7e88cf26947 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_basics_5.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_basics_5.f90
@@ -38,8 +38,8 @@ program tsave
integer :: info
call bar_foo_ab(info)
- if (info .ne. 0) call abort ()
+ if (info .ne. 0) STOP 1
call bar_foo_ab(info)
- if (info .ne. 10) call abort ()
+ if (info .ne. 10) STOP 2
end program tsave
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_bounds_1.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_bounds_1.f90
index 28ad177e5a9..d6ead5842ab 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_bounds_1.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_bounds_1.f90
@@ -17,15 +17,15 @@ contains
integer(ik4), allocatable :: ia(:)
type(struct) :: x
allocate(ia(from:to))
- if (any(lbound(ia) .ne. -1) .or. any(ubound(ia) .ne. 2)) call abort
- if (any(lbound(ia(:)) .ne. 1) .or. any(ubound(ia(:)) .ne. 4)) call abort
- if (any(lbound(ia(from:to)) .ne. 1) .or. any(ubound(ia(from:to)) .ne. 4)) call abort
+ if (any(lbound(ia) .ne. -1) .or. any(ubound(ia) .ne. 2)) STOP 1
+ if (any(lbound(ia(:)) .ne. 1) .or. any(ubound(ia(:)) .ne. 4)) STOP 2
+ if (any(lbound(ia(from:to)) .ne. 1) .or. any(ubound(ia(from:to)) .ne. 4)) STOP 3
x=struct(ia)
- if (any(lbound(x%ib) .ne. -1) .or. any(ubound(x%ib) .ne. 2)) call abort
+ if (any(lbound(x%ib) .ne. -1) .or. any(ubound(x%ib) .ne. 2)) STOP 4
x=struct(ia(:))
- if (any(lbound(x%ib) .ne. 1) .or. any(ubound(x%ib) .ne. 4)) call abort
+ if (any(lbound(x%ib) .ne. 1) .or. any(ubound(x%ib) .ne. 4)) STOP 5
x=struct(ia(from:to))
- if (any(lbound(x%ib) .ne. 1) .or. any(ubound(x%ib) .ne. 4)) call abort
+ if (any(lbound(x%ib) .ne. 1) .or. any(ubound(x%ib) .ne. 4)) STOP 6
deallocate(ia)
end subroutine
subroutine bar
@@ -35,15 +35,15 @@ contains
integer(ik8), allocatable :: ia(:)
type(struct) :: x
allocate(ia(from:to))
- if (any(lbound(ia) .ne. -1) .or. any(ubound(ia) .ne. 2)) call abort
- if (any(lbound(ia(:)) .ne. 1) .or. any(ubound(ia(:)) .ne. 4)) call abort
- if (any(lbound(ia(from:to)) .ne. 1) .or. any(ubound(ia(from:to)) .ne. 4)) call abort
+ if (any(lbound(ia) .ne. -1) .or. any(ubound(ia) .ne. 2)) STOP 7
+ if (any(lbound(ia(:)) .ne. 1) .or. any(ubound(ia(:)) .ne. 4)) STOP 8
+ if (any(lbound(ia(from:to)) .ne. 1) .or. any(ubound(ia(from:to)) .ne. 4)) STOP 9
x=struct(ia)
- if (any(lbound(x%ib) .ne. -1) .or. any(ubound(x%ib) .ne. 2)) call abort
+ if (any(lbound(x%ib) .ne. -1) .or. any(ubound(x%ib) .ne. 2)) STOP 10
x=struct(ia(:))
- if (any(lbound(x%ib) .ne. 1) .or. any(ubound(x%ib) .ne. 4)) call abort
+ if (any(lbound(x%ib) .ne. 1) .or. any(ubound(x%ib) .ne. 4)) STOP 11
x=struct(ia(from:to))
- if (any(lbound(x%ib) .ne. 1) .or. any(ubound(x%ib) .ne. 4)) call abort
+ if (any(lbound(x%ib) .ne. 1) .or. any(ubound(x%ib) .ne. 4)) STOP 12
deallocate(ia)
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_class_1.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_class_1.f90
index 8add2c7f486..722efc80fe1 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_class_1.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_class_1.f90
@@ -23,7 +23,7 @@ end module d_mat_mod
allocate (b%a)
b%a%i = 42
call bug14 (b)
- if (allocated (b%a)) call abort
+ if (allocated (b%a)) STOP 1
contains
subroutine bug14(a)
implicit none
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_class_2.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_class_2.f90
index 71862818951..5aff3381650 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_class_2.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_class_2.f90
@@ -23,7 +23,7 @@ contains
subroutine cdall(desc)
type(desc_type), intent(out) :: desc
- if (allocated(desc%indxmap)) call abort()
+ if (allocated(desc%indxmap)) STOP 1
end subroutine cdall
end program
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_class_4.f03 b/gcc/testsuite/gfortran.dg/alloc_comp_class_4.f03
index 28b7e631a87..3118b552a30 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_class_4.f03
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_class_4.f03
@@ -93,7 +93,7 @@ program test_pr58586
call add_t(static_t_init())
! temp = t_init() ! <-- This derefs a null-pointer currently
! Filed as pr66775
- if (allocated (temp)) call abort()
+ if (allocated (temp)) STOP 1
allocate(od)
call add_c(od%init())
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_class_5.f03 b/gcc/testsuite/gfortran.dg/alloc_comp_class_5.f03
index f07ffa10012..913ff0c3d99 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_class_5.f03
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_class_5.f03
@@ -41,7 +41,7 @@ program test_pr61337
call add_item(a_list, [.true., .false.])
call add_item(a_list, ["foo", "bar", "baz"])
- if (size(a_list) /= 4) call abort()
+ if (size(a_list) /= 4) STOP 1
do i = 1, size(a_list)
call checkarr(a_list(i))
end do
@@ -56,19 +56,19 @@ contains
if (allocated(c%items)) then
select type (x=>c%items)
type is (integer)
- if (any(x /= [1, 2])) call abort()
+ if (any(x /= [1, 2])) STOP 2
type is (real(kind=8))
- if (any(x /= [3.0_8, 4.0_8])) call abort()
+ if (any(x /= [3.0_8, 4.0_8])) STOP 3
type is (logical)
- if (any(x .neqv. [.true., .false.])) call abort()
+ if (any(x .neqv. [.true., .false.])) STOP 4
type is (character(len=*))
- if (len(x) /= 3) call abort()
- if (any(x /= ["foo", "bar", "baz"])) call abort()
+ if (len(x) /= 3) STOP 5
+ if (any(x /= ["foo", "bar", "baz"])) STOP 6
class default
- call abort()
+ STOP 7
end select
else
- call abort()
+ STOP 8
end if
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_constructor_1.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_constructor_1.f90
index acdb64b7b19..df05f27a4cf 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_constructor_1.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_constructor_1.f90
@@ -31,21 +31,21 @@ Program test_constructor
! Check that null() works
x = mytype(null(), null())
- if (allocated(x%a) .or. allocated(x%q)) call abort()
+ if (allocated(x%a) .or. allocated(x%q)) STOP 1
! Check that unallocated allocatables work
x = mytype(yy, bar)
- if (allocated(x%a) .or. allocated(x%q)) call abort()
+ if (allocated(x%a) .or. allocated(x%q)) STOP 2
! Check that non-allocatables work
x = mytype(y, [foo, foo])
- if (.not.allocated(x%a) .or. .not.allocated(x%q)) call abort()
- if (any(lbound(x%a) /= lbound(y))) call abort()
- if (any(ubound(x%a) /= ubound(y))) call abort()
- if (any(x%a /= y)) call abort()
- if (size(x%q) /= 2) call abort()
+ if (.not.allocated(x%a) .or. .not.allocated(x%q)) STOP 3
+ if (any(lbound(x%a) /= lbound(y))) STOP 4
+ if (any(ubound(x%a) /= ubound(y))) STOP 5
+ if (any(x%a /= y)) STOP 6
+ if (size(x%q) /= 2) STOP 7
do i = 1, 2
- if (any(x%q(i)%a /= foo%a)) call abort()
+ if (any(x%q(i)%a /= foo%a)) STOP 8
end do
! Check that allocated allocatables work
@@ -54,22 +54,22 @@ Program test_constructor
allocate(bar(2))
bar = [foo, foo]
x = mytype(yy, bar)
- if (.not.allocated(x%a) .or. .not.allocated(x%q)) call abort()
- if (any(x%a /= y)) call abort()
- if (size(x%q) /= 2) call abort()
+ if (.not.allocated(x%a) .or. .not.allocated(x%q)) STOP 9
+ if (any(x%a /= y)) STOP 10
+ if (size(x%q) /= 2) STOP 11
do i = 1, 2
- if (any(x%q(i)%a /= foo%a)) call abort()
+ if (any(x%q(i)%a /= foo%a)) STOP 12
end do
! Functions returning arrays
x = mytype(bluhu(), null())
- if (.not.allocated(x%a) .or. allocated(x%q)) call abort()
- if (any(x%a /= reshape ([41, 98, 54, 76], [2,2]))) call abort()
+ if (.not.allocated(x%a) .or. allocated(x%q)) STOP 13
+ if (any(x%a /= reshape ([41, 98, 54, 76], [2,2]))) STOP 14
! Functions returning allocatable arrays
x = mytype(blaha(), null())
- if (.not.allocated(x%a) .or. allocated(x%q)) call abort()
- if (any(x%a /= reshape ([40, 97, 53, 75], [2,2]))) call abort()
+ if (.not.allocated(x%a) .or. allocated(x%q)) STOP 15
+ if (any(x%a /= reshape ([40, 97, 53, 75], [2,2]))) STOP 16
! Check that passing the constructor to a procedure works
call check_mytype (mytype(y, [foo, foo]))
@@ -80,13 +80,13 @@ contains
type(mytype), intent(in) :: x
integer :: i
- if (.not.allocated(x%a) .or. .not.allocated(x%q)) call abort()
- if (any(lbound(x%a) /= lbound(y))) call abort()
- if (any(ubound(x%a) /= ubound(y))) call abort()
- if (any(x%a /= y)) call abort()
- if (size(x%q) /= 2) call abort()
+ if (.not.allocated(x%a) .or. .not.allocated(x%q)) STOP 17
+ if (any(lbound(x%a) /= lbound(y))) STOP 18
+ if (any(ubound(x%a) /= ubound(y))) STOP 19
+ if (any(x%a /= y)) STOP 20
+ if (size(x%q) /= 2) STOP 21
do i = 1, 2
- if (any(x%q(i)%a /= foo%a)) call abort()
+ if (any(x%q(i)%a /= foo%a)) STOP 22
end do
end subroutine check_mytype
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_constructor_2.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_constructor_2.f90
index 08c3bdf696e..cd4fb0e95bb 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_constructor_2.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_constructor_2.f90
@@ -18,9 +18,9 @@
w = (/thytype(y), thytype (2*y)/)
x = mytype (w)
- if (any ((/((x%q(j)%h(i),j=1,2),i=1,2)/) .ne. (/1,2,2,4/))) call abort ()
+ if (any ((/((x%q(j)%h(i),j=1,2),i=1,2)/) .ne. (/1,2,2,4/))) STOP 1
x = mytype ((/thytype(3*y), thytype (4*y)/))
- if (any ((/((x%q(j)%h(i),j=1,2),i=1,2)/) .ne. (/3,4,6,8/))) call abort ()
+ if (any ((/((x%q(j)%h(i),j=1,2),i=1,2)/) .ne. (/3,4,6,8/))) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_constructor_3.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_constructor_3.f90
index 53fa79c00f0..73aef783314 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_constructor_3.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_constructor_3.f90
@@ -12,5 +12,5 @@
a = x ((/ 1, 2, 3 /)) ! This is also pr31320.
a = x ((/ a%a, 4 /))
- if (any (a%a .ne. (/1,2,3,4/))) call abort ()
+ if (any (a%a .ne. (/1,2,3,4/))) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_constructor_4.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_constructor_4.f90
index 4b047daf349..680085b6506 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_constructor_4.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_constructor_4.f90
@@ -12,5 +12,5 @@
type(a) :: x, y
x = a ([1, 2, 3])
y = a (x%i(:)) ! used to cause a memory leak and wrong result
- if (any (x%i .ne. [1, 2, 3])) call abort
+ if (any (x%i .ne. [1, 2, 3])) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_constructor_5.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_constructor_5.f90
index 9526112c995..df62bde0d4b 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_constructor_5.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_constructor_5.f90
@@ -18,12 +18,12 @@ Program test_constructor
type (thytype), allocatable :: bar(:)
type (mytype) :: x, y
x = mytype(yy, bar)
- if (allocated (x%a) .or. allocated (x%q)) call abort
+ if (allocated (x%a) .or. allocated (x%q)) STOP 1
allocate (yy(2,2))
allocate (bar(2))
yy = reshape ([10,20,30,40],[2,2])
bar = thytype (reshape ([1,2,3,4],[2,2]))
! Check that unallocated allocatables work
y = mytype(yy, bar)
- if (.not.allocated (y%a) .or. .not.allocated (y%q)) call abort
+ if (.not.allocated (y%a) .or. .not.allocated (y%q)) STOP 2
end program test_constructor
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_constructor_6.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_constructor_6.f90
index b2ac4f723be..c235901f3f3 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_constructor_6.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_constructor_6.f90
@@ -24,7 +24,7 @@ contains
subroutine non_alloc
type (mytype) :: x
x = mytype(yy, bar)
- if (allocated (x%a) .or. allocated (x%q)) call abort
+ if (allocated (x%a) .or. allocated (x%q)) STOP 1
end subroutine non_alloc
subroutine alloc
type (mytype) :: x
@@ -33,6 +33,6 @@ contains
yy = reshape ([10,20,30,40],[2,2])
bar = thytype (reshape ([1,2,3,4],[2,2]))
x = mytype(yy, bar)
- if (.not.allocated (x%a) .or. .not.allocated (x%q)) call abort
+ if (.not.allocated (x%a) .or. .not.allocated (x%q)) STOP 2
end subroutine alloc
end program test_constructor
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_constructor_7.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_constructor_7.f90
index 45d82726ae0..ddc18ba5de5 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_constructor_7.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_constructor_7.f90
@@ -12,7 +12,7 @@ end type
Type(A) :: Me = A(X=1)
-if (allocated(Me%y)) call abort
-if (allocated(Me%z)) call abort
+if (allocated(Me%y)) STOP 1
+if (allocated(Me%z)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_deep_copy_1.f03 b/gcc/testsuite/gfortran.dg/alloc_comp_deep_copy_1.f03
index df42b342b67..58338960406 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_deep_copy_1.f03
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_deep_copy_1.f03
@@ -24,238 +24,238 @@ program alloc_comp_copy_test
o1%i = 42
call copyO(o1, o2)
- if (o2%i /= 42) call abort ()
- if (allocated(o2%a_i)) call abort()
- if (allocated(o2%it)) call abort()
- if (allocated(o2%vec)) call abort()
+ if (o2%i /= 42) STOP 1
+ if (allocated(o2%a_i)) STOP 2
+ if (allocated(o2%it)) STOP 3
+ if (allocated(o2%vec)) STOP 4
allocate (o1%a_i, source=2)
call copyO(o1, o2)
- if (o2%i /= 42) call abort ()
- if (.not. allocated(o2%a_i)) call abort()
- if (o2%a_i /= 2) call abort()
- if (allocated(o2%it)) call abort()
- if (allocated(o2%vec)) call abort()
+ if (o2%i /= 42) STOP 5
+ if (.not. allocated(o2%a_i)) STOP 6
+ if (o2%a_i /= 2) STOP 7
+ if (allocated(o2%it)) STOP 8
+ if (allocated(o2%vec)) STOP 9
allocate (o1%it)
o1%it%ii = 3
call copyO(o1, o2)
- if (o2%i /= 42) call abort ()
- if (.not. allocated(o2%a_i)) call abort()
- if (o2%a_i /= 2) call abort()
- if (.not. allocated(o2%it)) call abort()
- if (o2%it%ii /= 3) call abort()
- if (allocated(o2%it%ai)) call abort()
- if (allocated(o2%it%v)) call abort()
- if (allocated(o2%vec)) call abort()
+ if (o2%i /= 42) STOP 10
+ if (.not. allocated(o2%a_i)) STOP 11
+ if (o2%a_i /= 2) STOP 12
+ if (.not. allocated(o2%it)) STOP 13
+ if (o2%it%ii /= 3) STOP 14
+ if (allocated(o2%it%ai)) STOP 15
+ if (allocated(o2%it%v)) STOP 16
+ if (allocated(o2%vec)) STOP 17
allocate (o1%it%ai)
o1%it%ai = 4
call copyO(o1, o2)
- if (o2%i /= 42) call abort ()
- if (.not. allocated(o2%a_i)) call abort()
- if (o2%a_i /= 2) call abort()
- if (.not. allocated(o2%it)) call abort()
- if (o2%it%ii /= 3) call abort()
- if (.not. allocated(o2%it%ai)) call abort()
- if (o2%it%ai /= 4) call abort()
- if (allocated(o2%it%v)) call abort()
- if (allocated(o2%vec)) call abort()
+ if (o2%i /= 42) STOP 18
+ if (.not. allocated(o2%a_i)) STOP 19
+ if (o2%a_i /= 2) STOP 20
+ if (.not. allocated(o2%it)) STOP 21
+ if (o2%it%ii /= 3) STOP 22
+ if (.not. allocated(o2%it%ai)) STOP 23
+ if (o2%it%ai /= 4) STOP 24
+ if (allocated(o2%it%v)) STOP 25
+ if (allocated(o2%vec)) STOP 26
allocate (o1%it%v(3), source= 5)
call copyO(o1, o2)
- if (o2%i /= 42) call abort ()
- if (.not. allocated(o2%a_i)) call abort()
- if (o2%a_i /= 2) call abort()
- if (.not. allocated(o2%it)) call abort()
- if (o2%it%ii /= 3) call abort()
- if (.not. allocated(o2%it%ai)) call abort()
- if (o2%it%ai /= 4) call abort()
- if (.not. allocated(o2%it%v)) call abort()
- if (any (o2%it%v /= 5) .or. size (o2%it%v) /= 3) call abort()
- if (allocated(o2%vec)) call abort()
+ if (o2%i /= 42) STOP 27
+ if (.not. allocated(o2%a_i)) STOP 28
+ if (o2%a_i /= 2) STOP 29
+ if (.not. allocated(o2%it)) STOP 30
+ if (o2%it%ii /= 3) STOP 31
+ if (.not. allocated(o2%it%ai)) STOP 32
+ if (o2%it%ai /= 4) STOP 33
+ if (.not. allocated(o2%it%v)) STOP 34
+ if (any (o2%it%v /= 5) .or. size (o2%it%v) /= 3) STOP 35
+ if (allocated(o2%vec)) STOP 36
allocate (o1%vec(2))
o1%vec(:)%ii = 6
call copyO(o1, o2)
- if (o2%i /= 42) call abort ()
- if (.not. allocated(o2%a_i)) call abort()
- if (o2%a_i /= 2) call abort()
- if (.not. allocated(o2%it)) call abort()
- if (o2%it%ii /= 3) call abort()
- if (.not. allocated(o2%it%ai)) call abort()
- if (o2%it%ai /= 4) call abort()
- if (.not. allocated(o2%it%v)) call abort()
- if (size (o2%it%v) /= 3) call abort()
- if (any (o2%it%v /= 5)) call abort()
- if (.not. allocated(o2%vec)) call abort()
- if (size(o2%vec) /= 2) call abort()
- if (any(o2%vec(:)%ii /= 6)) call abort()
- if (allocated(o2%vec(1)%ai) .or. allocated(o2%vec(2)%ai)) call abort()
- if (allocated(o2%vec(1)%v) .or. allocated(o2%vec(2)%v)) call abort()
+ if (o2%i /= 42) STOP 37
+ if (.not. allocated(o2%a_i)) STOP 38
+ if (o2%a_i /= 2) STOP 39
+ if (.not. allocated(o2%it)) STOP 40
+ if (o2%it%ii /= 3) STOP 41
+ if (.not. allocated(o2%it%ai)) STOP 42
+ if (o2%it%ai /= 4) STOP 43
+ if (.not. allocated(o2%it%v)) STOP 44
+ if (size (o2%it%v) /= 3) STOP 45
+ if (any (o2%it%v /= 5)) STOP 46
+ if (.not. allocated(o2%vec)) STOP 47
+ if (size(o2%vec) /= 2) STOP 48
+ if (any(o2%vec(:)%ii /= 6)) STOP 49
+ if (allocated(o2%vec(1)%ai) .or. allocated(o2%vec(2)%ai)) STOP 50
+ if (allocated(o2%vec(1)%v) .or. allocated(o2%vec(2)%v)) STOP 51
allocate (o1%vec(2)%ai)
o1%vec(2)%ai = 7
call copyO(o1, o2)
- if (o2%i /= 42) call abort ()
- if (.not. allocated(o2%a_i)) call abort()
- if (o2%a_i /= 2) call abort()
- if (.not. allocated(o2%it)) call abort()
- if (o2%it%ii /= 3) call abort()
- if (.not. allocated(o2%it%ai)) call abort()
- if (o2%it%ai /= 4) call abort()
- if (.not. allocated(o2%it%v)) call abort()
- if (size (o2%it%v) /= 3) call abort()
- if (any (o2%it%v /= 5)) call abort()
- if (.not. allocated(o2%vec)) call abort()
- if (size(o2%vec) /= 2) call abort()
- if (any(o2%vec(:)%ii /= 6)) call abort()
- if (allocated(o2%vec(1)%ai)) call abort()
- if (.not. allocated(o2%vec(2)%ai)) call abort()
- if (o2%vec(2)%ai /= 7) call abort()
- if (allocated(o2%vec(1)%v) .or. allocated(o2%vec(2)%v)) call abort()
+ if (o2%i /= 42) STOP 52
+ if (.not. allocated(o2%a_i)) STOP 53
+ if (o2%a_i /= 2) STOP 54
+ if (.not. allocated(o2%it)) STOP 55
+ if (o2%it%ii /= 3) STOP 56
+ if (.not. allocated(o2%it%ai)) STOP 57
+ if (o2%it%ai /= 4) STOP 58
+ if (.not. allocated(o2%it%v)) STOP 59
+ if (size (o2%it%v) /= 3) STOP 60
+ if (any (o2%it%v /= 5)) STOP 61
+ if (.not. allocated(o2%vec)) STOP 62
+ if (size(o2%vec) /= 2) STOP 63
+ if (any(o2%vec(:)%ii /= 6)) STOP 64
+ if (allocated(o2%vec(1)%ai)) STOP 65
+ if (.not. allocated(o2%vec(2)%ai)) STOP 66
+ if (o2%vec(2)%ai /= 7) STOP 67
+ if (allocated(o2%vec(1)%v) .or. allocated(o2%vec(2)%v)) STOP 68
allocate (o1%vec(1)%v(3))
o1%vec(1)%v = [8, 9, 10]
call copyO(o1, o2)
- if (o2%i /= 42) call abort ()
- if (.not. allocated(o2%a_i)) call abort()
- if (o2%a_i /= 2) call abort()
- if (.not. allocated(o2%it)) call abort()
- if (o2%it%ii /= 3) call abort()
- if (.not. allocated(o2%it%ai)) call abort()
- if (o2%it%ai /= 4) call abort()
- if (.not. allocated(o2%it%v)) call abort()
- if (size (o2%it%v) /= 3) call abort()
- if (any (o2%it%v /= 5)) call abort()
- if (.not. allocated(o2%vec)) call abort()
- if (size(o2%vec) /= 2) call abort()
- if (any(o2%vec(:)%ii /= 6)) call abort()
- if (allocated(o2%vec(1)%ai)) call abort()
- if (.not. allocated(o2%vec(2)%ai)) call abort()
- if (o2%vec(2)%ai /= 7) call abort()
- if (.not. allocated(o2%vec(1)%v)) call abort()
- if (any (o2%vec(1)%v /= [8,9,10])) call abort()
- if (allocated(o2%vec(2)%v)) call abort()
+ if (o2%i /= 42) STOP 69
+ if (.not. allocated(o2%a_i)) STOP 70
+ if (o2%a_i /= 2) STOP 71
+ if (.not. allocated(o2%it)) STOP 72
+ if (o2%it%ii /= 3) STOP 73
+ if (.not. allocated(o2%it%ai)) STOP 74
+ if (o2%it%ai /= 4) STOP 75
+ if (.not. allocated(o2%it%v)) STOP 76
+ if (size (o2%it%v) /= 3) STOP 77
+ if (any (o2%it%v /= 5)) STOP 78
+ if (.not. allocated(o2%vec)) STOP 79
+ if (size(o2%vec) /= 2) STOP 80
+ if (any(o2%vec(:)%ii /= 6)) STOP 81
+ if (allocated(o2%vec(1)%ai)) STOP 82
+ if (.not. allocated(o2%vec(2)%ai)) STOP 83
+ if (o2%vec(2)%ai /= 7) STOP 84
+ if (.not. allocated(o2%vec(1)%v)) STOP 85
+ if (any (o2%vec(1)%v /= [8,9,10])) STOP 86
+ if (allocated(o2%vec(2)%v)) STOP 87
! Now all the above for class objects.
allocate (o3, o4)
o3%i = 42
call copyO(o3, o4)
- if (o4%i /= 42) call abort ()
- if (allocated(o4%a_i)) call abort()
- if (allocated(o4%it)) call abort()
- if (allocated(o4%vec)) call abort()
+ if (o4%i /= 42) STOP 88
+ if (allocated(o4%a_i)) STOP 89
+ if (allocated(o4%it)) STOP 90
+ if (allocated(o4%vec)) STOP 91
allocate (o3%a_i, source=2)
call copyO(o3, o4)
- if (o4%i /= 42) call abort ()
- if (.not. allocated(o4%a_i)) call abort()
- if (o4%a_i /= 2) call abort()
- if (allocated(o4%it)) call abort()
- if (allocated(o4%vec)) call abort()
+ if (o4%i /= 42) STOP 92
+ if (.not. allocated(o4%a_i)) STOP 93
+ if (o4%a_i /= 2) STOP 94
+ if (allocated(o4%it)) STOP 95
+ if (allocated(o4%vec)) STOP 96
allocate (o3%it)
o3%it%ii = 3
call copyO(o3, o4)
- if (o4%i /= 42) call abort ()
- if (.not. allocated(o4%a_i)) call abort()
- if (o4%a_i /= 2) call abort()
- if (.not. allocated(o4%it)) call abort()
- if (o4%it%ii /= 3) call abort()
- if (allocated(o4%it%ai)) call abort()
- if (allocated(o4%it%v)) call abort()
- if (allocated(o4%vec)) call abort()
+ if (o4%i /= 42) STOP 97
+ if (.not. allocated(o4%a_i)) STOP 98
+ if (o4%a_i /= 2) STOP 99
+ if (.not. allocated(o4%it)) STOP 100
+ if (o4%it%ii /= 3) STOP 101
+ if (allocated(o4%it%ai)) STOP 102
+ if (allocated(o4%it%v)) STOP 103
+ if (allocated(o4%vec)) STOP 104
allocate (o3%it%ai)
o3%it%ai = 4
call copyO(o3, o4)
- if (o4%i /= 42) call abort ()
- if (.not. allocated(o4%a_i)) call abort()
- if (o4%a_i /= 2) call abort()
- if (.not. allocated(o4%it)) call abort()
- if (o4%it%ii /= 3) call abort()
- if (.not. allocated(o4%it%ai)) call abort()
- if (o4%it%ai /= 4) call abort()
- if (allocated(o4%it%v)) call abort()
- if (allocated(o4%vec)) call abort()
+ if (o4%i /= 42) STOP 105
+ if (.not. allocated(o4%a_i)) STOP 106
+ if (o4%a_i /= 2) STOP 107
+ if (.not. allocated(o4%it)) STOP 108
+ if (o4%it%ii /= 3) STOP 109
+ if (.not. allocated(o4%it%ai)) STOP 110
+ if (o4%it%ai /= 4) STOP 111
+ if (allocated(o4%it%v)) STOP 112
+ if (allocated(o4%vec)) STOP 113
allocate (o3%it%v(3), source= 5)
call copyO(o3, o4)
- if (o4%i /= 42) call abort ()
- if (.not. allocated(o4%a_i)) call abort()
- if (o4%a_i /= 2) call abort()
- if (.not. allocated(o4%it)) call abort()
- if (o4%it%ii /= 3) call abort()
- if (.not. allocated(o4%it%ai)) call abort()
- if (o4%it%ai /= 4) call abort()
- if (.not. allocated(o4%it%v)) call abort()
- if (any (o4%it%v /= 5) .or. size (o4%it%v) /= 3) call abort()
- if (allocated(o4%vec)) call abort()
+ if (o4%i /= 42) STOP 114
+ if (.not. allocated(o4%a_i)) STOP 115
+ if (o4%a_i /= 2) STOP 116
+ if (.not. allocated(o4%it)) STOP 117
+ if (o4%it%ii /= 3) STOP 118
+ if (.not. allocated(o4%it%ai)) STOP 119
+ if (o4%it%ai /= 4) STOP 120
+ if (.not. allocated(o4%it%v)) STOP 121
+ if (any (o4%it%v /= 5) .or. size (o4%it%v) /= 3) STOP 122
+ if (allocated(o4%vec)) STOP 123
allocate (o3%vec(2))
o3%vec(:)%ii = 6
call copyO(o3, o4)
- if (o4%i /= 42) call abort ()
- if (.not. allocated(o4%a_i)) call abort()
- if (o4%a_i /= 2) call abort()
- if (.not. allocated(o4%it)) call abort()
- if (o4%it%ii /= 3) call abort()
- if (.not. allocated(o4%it%ai)) call abort()
- if (o4%it%ai /= 4) call abort()
- if (.not. allocated(o4%it%v)) call abort()
- if (size (o4%it%v) /= 3) call abort()
- if (any (o4%it%v /= 5)) call abort()
- if (.not. allocated(o4%vec)) call abort()
- if (size(o4%vec) /= 2) call abort()
- if (any(o4%vec(:)%ii /= 6)) call abort()
- if (allocated(o4%vec(1)%ai) .or. allocated(o4%vec(2)%ai)) call abort()
- if (allocated(o4%vec(1)%v) .or. allocated(o4%vec(2)%v)) call abort()
+ if (o4%i /= 42) STOP 124
+ if (.not. allocated(o4%a_i)) STOP 125
+ if (o4%a_i /= 2) STOP 126
+ if (.not. allocated(o4%it)) STOP 127
+ if (o4%it%ii /= 3) STOP 128
+ if (.not. allocated(o4%it%ai)) STOP 129
+ if (o4%it%ai /= 4) STOP 130
+ if (.not. allocated(o4%it%v)) STOP 131
+ if (size (o4%it%v) /= 3) STOP 132
+ if (any (o4%it%v /= 5)) STOP 133
+ if (.not. allocated(o4%vec)) STOP 134
+ if (size(o4%vec) /= 2) STOP 135
+ if (any(o4%vec(:)%ii /= 6)) STOP 136
+ if (allocated(o4%vec(1)%ai) .or. allocated(o4%vec(2)%ai)) STOP 137
+ if (allocated(o4%vec(1)%v) .or. allocated(o4%vec(2)%v)) STOP 138
allocate (o3%vec(2)%ai)
o3%vec(2)%ai = 7
call copyO(o3, o4)
- if (o4%i /= 42) call abort ()
- if (.not. allocated(o4%a_i)) call abort()
- if (o4%a_i /= 2) call abort()
- if (.not. allocated(o4%it)) call abort()
- if (o4%it%ii /= 3) call abort()
- if (.not. allocated(o4%it%ai)) call abort()
- if (o4%it%ai /= 4) call abort()
- if (.not. allocated(o4%it%v)) call abort()
- if (size (o4%it%v) /= 3) call abort()
- if (any (o4%it%v /= 5)) call abort()
- if (.not. allocated(o4%vec)) call abort()
- if (size(o4%vec) /= 2) call abort()
- if (any(o4%vec(:)%ii /= 6)) call abort()
- if (allocated(o4%vec(1)%ai)) call abort()
- if (.not. allocated(o4%vec(2)%ai)) call abort()
- if (o4%vec(2)%ai /= 7) call abort()
- if (allocated(o4%vec(1)%v) .or. allocated(o4%vec(2)%v)) call abort()
+ if (o4%i /= 42) STOP 139
+ if (.not. allocated(o4%a_i)) STOP 140
+ if (o4%a_i /= 2) STOP 141
+ if (.not. allocated(o4%it)) STOP 142
+ if (o4%it%ii /= 3) STOP 143
+ if (.not. allocated(o4%it%ai)) STOP 144
+ if (o4%it%ai /= 4) STOP 145
+ if (.not. allocated(o4%it%v)) STOP 146
+ if (size (o4%it%v) /= 3) STOP 147
+ if (any (o4%it%v /= 5)) STOP 148
+ if (.not. allocated(o4%vec)) STOP 149
+ if (size(o4%vec) /= 2) STOP 150
+ if (any(o4%vec(:)%ii /= 6)) STOP 151
+ if (allocated(o4%vec(1)%ai)) STOP 152
+ if (.not. allocated(o4%vec(2)%ai)) STOP 153
+ if (o4%vec(2)%ai /= 7) STOP 154
+ if (allocated(o4%vec(1)%v) .or. allocated(o4%vec(2)%v)) STOP 155
allocate (o3%vec(1)%v(3))
o3%vec(1)%v = [8, 9, 10]
call copyO(o3, o4)
- if (o4%i /= 42) call abort ()
- if (.not. allocated(o4%a_i)) call abort()
- if (o4%a_i /= 2) call abort()
- if (.not. allocated(o4%it)) call abort()
- if (o4%it%ii /= 3) call abort()
- if (.not. allocated(o4%it%ai)) call abort()
- if (o4%it%ai /= 4) call abort()
- if (.not. allocated(o4%it%v)) call abort()
- if (size (o4%it%v) /= 3) call abort()
- if (any (o4%it%v /= 5)) call abort()
- if (.not. allocated(o4%vec)) call abort()
- if (size(o4%vec) /= 2) call abort()
- if (any(o4%vec(:)%ii /= 6)) call abort()
- if (allocated(o4%vec(1)%ai)) call abort()
- if (.not. allocated(o4%vec(2)%ai)) call abort()
- if (o4%vec(2)%ai /= 7) call abort()
- if (.not. allocated(o4%vec(1)%v)) call abort()
- if (any (o4%vec(1)%v /= [8,9,10])) call abort()
- if (allocated(o4%vec(2)%v)) call abort()
+ if (o4%i /= 42) STOP 156
+ if (.not. allocated(o4%a_i)) STOP 157
+ if (o4%a_i /= 2) STOP 158
+ if (.not. allocated(o4%it)) STOP 159
+ if (o4%it%ii /= 3) STOP 160
+ if (.not. allocated(o4%it%ai)) STOP 161
+ if (o4%it%ai /= 4) STOP 162
+ if (.not. allocated(o4%it%v)) STOP 163
+ if (size (o4%it%v) /= 3) STOP 164
+ if (any (o4%it%v /= 5)) STOP 165
+ if (.not. allocated(o4%vec)) STOP 166
+ if (size(o4%vec) /= 2) STOP 167
+ if (any(o4%vec(:)%ii /= 6)) STOP 168
+ if (allocated(o4%vec(1)%ai)) STOP 169
+ if (.not. allocated(o4%vec(2)%ai)) STOP 170
+ if (o4%vec(2)%ai /= 7) STOP 171
+ if (.not. allocated(o4%vec(1)%v)) STOP 172
+ if (any (o4%vec(1)%v /= [8,9,10])) STOP 173
+ if (allocated(o4%vec(2)%v)) STOP 174
contains
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_deep_copy_2.f03 b/gcc/testsuite/gfortran.dg/alloc_comp_deep_copy_2.f03
index 582a2b8e3e1..595775b32ce 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_deep_copy_2.f03
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_deep_copy_2.f03
@@ -15,7 +15,7 @@ program alloc_comp_deep_copy_2
c%g=a(1.)
d=c
- if (d%g%f /= 1.0) call abort()
+ if (d%g%f /= 1.0) STOP 1
d%g%f = 2.0
- if (d%g%f /= 2.0) call abort()
+ if (d%g%f /= 2.0) STOP 2
end program
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_deep_copy_3.f03 b/gcc/testsuite/gfortran.dg/alloc_comp_deep_copy_3.f03
index 7032eaf8f3a..20a415e8e15 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_deep_copy_3.f03
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_deep_copy_3.f03
@@ -22,9 +22,9 @@ program p
v(3)%c2%c1 = 11
v(4)%c2%c1 = 13
- if (v(1)%c2%c1 /= 3) call abort
- if (v(2)%c2%c1 /= 7) call abort
- if (v(3)%c2%c1 /= 11) call abort
- if (v(4)%c2%c1 /= 13) call abort
+ if (v(1)%c2%c1 /= 3) STOP 1
+ if (v(2)%c2%c1 /= 7) STOP 2
+ if (v(3)%c2%c1 /= 11) STOP 3
+ if (v(4)%c2%c1 /= 13) STOP 4
end block
end program p
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_default_init_1.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_default_init_1.f90
index 48947cd2e66..6cc383c7192 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_default_init_1.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_default_init_1.f90
@@ -12,13 +12,13 @@ program boh
call mah (1, c2)
call mah (2, c3)
!
- if (c1 /= c2) call abort
- if (c1 /= c3) call abort
+ if (c1 /= c2) STOP 1
+ if (c1 /= c3) STOP 1
!
call mah0 (c4) ! These calls deal with PR34704
call mah1 (c5)
!
- if (c4 /= c5) call abort
+ if (c4 /= c5) STOP 2
!
end program boh
!
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_default_init_2.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_default_init_2.f90
index db106ccee91..d9a386676d7 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_default_init_2.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_default_init_2.f90
@@ -11,7 +11,7 @@ program testprog
integer, save :: callnb = 0
type(t_type) :: this
allocate ( this % chars ( 4))
- if (.not.recursivefunc (this) .or. (callnb .ne. 10)) call abort ()
+ if (.not.recursivefunc (this) .or. (callnb .ne. 10)) STOP 1
contains
recursive function recursivefunc ( this ) result ( match )
type(t_type), intent(in) :: this
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_initializer_1.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_initializer_1.f90
index ac37fd6e389..1ef5f2ab262 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_initializer_1.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_initializer_1.f90
@@ -37,11 +37,11 @@ program foo
call p_bld (a, pre)
- if (associated (wee%ap) .or. wee%i /= 101) call abort ()
+ if (associated (wee%ap) .or. wee%i /= 101) STOP 1
wee%ap => a
- if (.not.associated (wee%ap) .or. allocated (wee%av)) call abort ()
+ if (.not.associated (wee%ap) .or. allocated (wee%av)) STOP 2
wee = basep_type ((/m_type ((/201, 202, 203/))/), null (), 99)
- if (.not.allocated (wee%av) .or. associated (wee%ap) .or. (wee%i .ne. 99)) call abort ()
+ if (.not.allocated (wee%av) .or. associated (wee%ap) .or. (wee%i .ne. 99)) STOP 3
contains
@@ -53,9 +53,9 @@ contains
if (.not.allocated(p%basepv)) then
allocate(p%basepv(1),stat=ierr)
endif
- if (allocated (p%basepv) .neqv. .true.) call abort ()
- if (allocated (p%basepv(1)%av) .neqv. .false.) call abort
- if (p%basepv(1)%i .ne. 101) call abort ()
+ if (allocated (p%basepv) .neqv. .true.) STOP 4
+ if (allocated (p%basepv(1)%av) .neqv. .false.) STOP 1
+ if (p%basepv(1)%i .ne. 101) STOP 5
end subroutine test_ab8
@@ -63,8 +63,8 @@ contains
use p_type_mod
type (m_type) :: a
type(p_type) :: p
- if (any (a%p .ne. (/101,102/))) call abort ()
- if (allocated (p%basepv) .or. (p%p2 .ne. 1)) call abort ()
+ if (any (a%p .ne. (/101,102/))) STOP 6
+ if (allocated (p%basepv) .or. (p%p2 .ne. 1)) STOP 7
end subroutine p_bld
end program foo
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_initializer_4.f03 b/gcc/testsuite/gfortran.dg/alloc_comp_initializer_4.f03
index 66a5553dec4..2356e16ddb9 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_initializer_4.f03
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_initializer_4.f03
@@ -10,5 +10,5 @@ PROGRAM main
END TYPE
TYPE(test_typ) :: my_test_typ
my_test_typ = test_typ (a = 1.0)
- if (abs (my_test_typ%a - 1.0) .gt. 1e-6) call abort
+ if (abs (my_test_typ%a - 1.0) .gt. 1e-6) STOP 1
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_optional_1.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_optional_1.f90
index be1fa42fb17..3961dc2174d 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_optional_1.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_optional_1.f90
@@ -12,10 +12,10 @@ program test_iso
type(ivs) :: v_str
integer :: i
call foo(v_str, i)
- if (v_str%chars(1) .ne. "a") call abort
- if (i .ne. 0) call abort
+ if (v_str%chars(1) .ne. "a") STOP 1
+ if (i .ne. 0) STOP 2
call foo(flag = i)
- if (i .ne. 1) call abort
+ if (i .ne. 1) STOP 3
contains
subroutine foo (arg, flag)
type(ivs), optional, intent(out) :: arg
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_result_1.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_result_1.f90
index 34f25c0ed61..bba3a439675 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_result_1.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_result_1.f90
@@ -28,5 +28,5 @@ program test
implicit none
type(t_2) x(1)
x = a_fun(0)
- if (any (x(1)%mons%coeff .ne. 99)) call abort
+ if (any (x(1)%mons%coeff .ne. 99)) STOP 1
end program test
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_result_2.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_result_2.f90
index be61f2afbe6..89ff5ac4182 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_result_2.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_result_2.f90
@@ -17,12 +17,12 @@ contains
type(t), pointer :: func
type(t), target :: a
integer, save :: i = 0
- if (i /= 0) call abort ! multiple calls would cause this abort
+ if (i /= 0) STOP 1! multiple calls would cause this abort
i = i + 1
func => a
end function func
subroutine sub (a)
type(t), intent(IN), target :: a
- if (any (a%A .ne. [1,2,3])) call abort
+ if (any (a%A .ne. [1,2,3])) STOP 2
end subroutine sub
end
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_scalar_1.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_scalar_1.f90
index 82cf71fc4fe..14597c3282e 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_scalar_1.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_scalar_1.f90
@@ -13,5 +13,5 @@ program main
a2(1)%entry = 1
a1(1:1) = pack (a2(1:1), mask = [.true.])
deallocate (a2(1)%entry)
- if (a1(1)%entry .ne. 1) call abort
+ if (a1(1)%entry .ne. 1) STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/alloc_comp_transformational_1.f90 b/gcc/testsuite/gfortran.dg/alloc_comp_transformational_1.f90
index 13ee8a88bde..fa5fd511858 100644
--- a/gcc/testsuite/gfortran.dg/alloc_comp_transformational_1.f90
+++ b/gcc/testsuite/gfortran.dg/alloc_comp_transformational_1.f90
@@ -31,24 +31,24 @@ contains
end do
a1(1:2) = pack (a2, [.true., .false., .true., .false.])
do i = 1, 4
- if (.not.allocated (a1(i)%entry)) call abort
+ if (.not.allocated (a1(i)%entry)) STOP 1
if (i .gt. 2) then
- if (any (a1(i)%entry .ne. [1,2])) call abort
+ if (any (a1(i)%entry .ne. [1,2])) STOP 2
else
- if (any (a1(i)%entry .ne. [3,4])) call abort
+ if (any (a1(i)%entry .ne. [3,4])) STOP 3
end if
end do
!
! Now check unpack
!
a1 = unpack (a1, [.true., .true., .false., .false.], a3)
- if (any (a1%index .ne. [1,3,3,4])) call abort
+ if (any (a1%index .ne. [1,3,3,4])) STOP 4
do i = 1, 4
- if (.not.allocated (a1(i)%entry)) call abort
+ if (.not.allocated (a1(i)%entry)) STOP 5
if (i .gt. 2) then
- if (any (a1(i)%entry .ne. [4,5])) call abort
+ if (any (a1(i)%entry .ne. [4,5])) STOP 6
else
- if (any (a1(i)%entry .ne. [3,4])) call abort
+ if (any (a1(i)%entry .ne. [3,4])) STOP 7
end if
end do
end subroutine
@@ -71,8 +71,8 @@ contains
a1 = transpose (a2)
do i = 1, 2
do j = 1, 2
- if (a1(i,j)%index .ne. i + (j - 1)*2) call abort
- if (any (a1(i,j)%entry .ne. [j,i])) call abort
+ if (a1(i,j)%index .ne. i + (j - 1)*2) STOP 8
+ if (any (a1(i,j)%entry .ne. [j,i])) STOP 9
end do
end do
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/allocatable_dummy_1.f90 b/gcc/testsuite/gfortran.dg/allocatable_dummy_1.f90
index 9aba8b8fc6d..57a81f2c061 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_dummy_1.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_dummy_1.f90
@@ -7,19 +7,19 @@ program alloc_dummy
integer, allocatable :: b(:)
call init(a)
- if (.NOT.allocated(a)) call abort()
- if (.NOT.all(a == [ 1, 2, 3 ])) call abort()
+ if (.NOT.allocated(a)) STOP 1
+ if (.NOT.all(a == [ 1, 2, 3 ])) STOP 2
call useit(a, b)
- if (.NOT.all(b == [ 1, 2, 3 ])) call abort()
+ if (.NOT.all(b == [ 1, 2, 3 ])) STOP 3
- if (.NOT.all(whatever(a) == [ 1, 2, 3 ])) call abort()
+ if (.NOT.all(whatever(a) == [ 1, 2, 3 ])) STOP 4
call kill(a)
- if (allocated(a)) call abort()
+ if (allocated(a)) STOP 5
call kill(b)
- if (allocated(b)) call abort()
+ if (allocated(b)) STOP 6
contains
@@ -32,7 +32,7 @@ contains
subroutine useit(x, y)
integer, allocatable, intent(in) :: x(:)
integer, allocatable, intent(out) :: y(:)
- if (allocated(y)) call abort()
+ if (allocated(y)) STOP 7
call init(y)
y = x
end subroutine useit
diff --git a/gcc/testsuite/gfortran.dg/allocatable_dummy_3.f90 b/gcc/testsuite/gfortran.dg/allocatable_dummy_3.f90
index d2b4e1eba02..b58f08abd55 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_dummy_3.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_dummy_3.f90
@@ -13,7 +13,7 @@ program main
end interface
call foo(a)
- if (any(a /= [ 1, 2, 3 ])) call abort()
+ if (any(a /= [ 1, 2, 3 ])) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.dg/allocatable_function_1.f90 b/gcc/testsuite/gfortran.dg/allocatable_function_1.f90
index 7c19017003b..f96ebc499e8 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_function_1.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_function_1.f90
@@ -8,7 +8,7 @@
subroutine moobar (a)
integer, intent(in) :: a(:)
- if (.not.all(a == [ 1, 2, 3 ])) call abort()
+ if (.not.all(a == [ 1, 2, 3 ])) STOP 1
end subroutine moobar
function foo2 (n)
@@ -55,21 +55,21 @@ program alloc_fun
end interface
! 2 _gfortran_internal_free's
- if (.not.all(foo1(3) == [ 1, 2, 3 ])) call abort()
+ if (.not.all(foo1(3) == [ 1, 2, 3 ])) STOP 2
a = foo1(size(a))
! 1 _gfortran_internal_free
- if (.not.all(a == [ 1, 2, 3 ])) call abort()
+ if (.not.all(a == [ 1, 2, 3 ])) STOP 3
call foobar(foo1(3))
! 1 _gfortran_internal_free
- if (.not.all(2*bar(size(a)) + 5 == [ 7, 9, 11 ])) call abort()
+ if (.not.all(2*bar(size(a)) + 5 == [ 7, 9, 11 ])) STOP 4
! Although the rhs determines the loop size, the lhs reference is
! evaluated, in case it has side-effects or is needed for bounds checking.
! 3 _gfortran_internal_free's
a(1:size (bar (3))) = 2*bar(size(a)) + 2 + a(size (bar (3)))
- if (.not.all(a == [ 7, 9, 11 ])) call abort()
+ if (.not.all(a == [ 7, 9, 11 ])) STOP 5
! 3 _gfortran_internal_free's
call moobar(foo1(3)) ! internal function
@@ -82,7 +82,7 @@ contains
subroutine foobar (a)
integer, intent(in) :: a(:)
- if (.not.all(a == [ 1, 2, 3 ])) call abort()
+ if (.not.all(a == [ 1, 2, 3 ])) STOP 6
end subroutine foobar
function foo1 (n)
diff --git a/gcc/testsuite/gfortran.dg/allocatable_function_10.f90 b/gcc/testsuite/gfortran.dg/allocatable_function_10.f90
index 8d171976b01..2f93bb0f841 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_function_10.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_function_10.f90
@@ -39,8 +39,8 @@ program p
implicit none
type(t), dimension(2) :: c
c=tt(ts([99,199,1999]),ts([42,142]))
- if (any (c(1)%r .ne. [99,199,1999])) call abort
- if (any (c(2)%r .ne. [42,142])) call abort
+ if (any (c(1)%r .ne. [99,199,1999])) STOP 1
+ if (any (c(2)%r .ne. [42,142])) STOP 2
deallocate(c(1)%r)
deallocate(c(2)%r)
end program p
diff --git a/gcc/testsuite/gfortran.dg/allocatable_function_3.f90 b/gcc/testsuite/gfortran.dg/allocatable_function_3.f90
index 538924f6719..9209860f9d1 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_function_3.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_function_3.f90
@@ -20,5 +20,5 @@ end subroutine
integer, allocatable :: spectral(:)
end function transform_to_spectral_from
end interface
- if (any (transform_to_spectral_from () .ne. (/1,2/))) call abort ()
+ if (any (transform_to_spectral_from () .ne. (/1,2/))) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/allocatable_function_5.f90 b/gcc/testsuite/gfortran.dg/allocatable_function_5.f90
index 8e7d49b0fa8..308db8fb04b 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_function_5.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_function_5.f90
@@ -20,20 +20,20 @@ end module
use m
character (:), allocatable :: lhs
lhs = foo ("foo calling ")
- if (lhs .ne. "foo") call abort
- if (len (lhs) .ne. 3) call abort
+ if (lhs .ne. "foo") STOP 1
+ if (len (lhs) .ne. 3) STOP 2
deallocate (lhs)
lhs = bar ("bar calling - baaaa!")
- if (lhs .ne. "bar calling") call abort
- if (len (lhs) .ne. 12) call abort
+ if (lhs .ne. "bar calling") STOP 3
+ if (len (lhs) .ne. 12) STOP 4
deallocate (lhs)
lhs = mfoo ("mfoo calling ")
- if (lhs .ne. "foo") call abort
- if (len (lhs) .ne. 3) call abort
+ if (lhs .ne. "foo") STOP 5
+ if (len (lhs) .ne. 3) STOP 6
deallocate (lhs)
lhs = mbar ("mbar calling - baaaa!")
- if (lhs .ne. "bar calling") call abort
- if (len (lhs) .ne. 12) call abort
+ if (lhs .ne. "bar calling") STOP 7
+ if (len (lhs) .ne. 12) STOP 8
contains
function foo (carg) result(res)
character (:), allocatable :: res
diff --git a/gcc/testsuite/gfortran.dg/allocatable_function_6.f90 b/gcc/testsuite/gfortran.dg/allocatable_function_6.f90
index 3af68cc182b..8edb40acff9 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_function_6.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_function_6.f90
@@ -6,11 +6,11 @@
!
implicit none
CHARACTER(LEN=:),ALLOCATABLE :: str
-if (s_to_c("ABCdef") /= "ABCdef" .or. len(s_to_c("ABCdef")) /= 6) call abort()
+if (s_to_c("ABCdef") /= "ABCdef" .or. len(s_to_c("ABCdef")) /= 6) STOP 1
str = s_to_c("ABCdef")
-if (str /= "ABCdef" .or. len(str) /= 6) call abort()
+if (str /= "ABCdef" .or. len(str) /= 6) STOP 2
str(1:3) = s_to_c("123")
-if (str /= "123def" .or. len(str) /= 6) call abort()
+if (str /= "123def" .or. len(str) /= 6) STOP 3
contains
diff --git a/gcc/testsuite/gfortran.dg/allocatable_function_7.f90 b/gcc/testsuite/gfortran.dg/allocatable_function_7.f90
index 755584ca1b6..6629cd4b366 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_function_7.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_function_7.f90
@@ -13,11 +13,11 @@ PURE FUNCTION s_to_c(string)
ENDFUNCTION s_to_c
end interface
CHARACTER(LEN=:),ALLOCATABLE :: str
-if (s_to_c("ABCdef") /= "ABCdef" .or. len(s_to_c("ABCdef")) /= 6) call abort()
+if (s_to_c("ABCdef") /= "ABCdef" .or. len(s_to_c("ABCdef")) /= 6) STOP 1
str = s_to_c("ABCdef")
-if (str /= "ABCdef" .or. len(str) /= 6) call abort()
+if (str /= "ABCdef" .or. len(str) /= 6) STOP 2
str(1:3) = s_to_c("123")
-if (str /= "123def" .or. len(str) /= 6) call abort()
+if (str /= "123def" .or. len(str) /= 6) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/allocatable_function_8.f90 b/gcc/testsuite/gfortran.dg/allocatable_function_8.f90
index fc4b05e0c0a..b80327545f6 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_function_8.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_function_8.f90
@@ -45,10 +45,10 @@ program main
real, dimension(2) :: x = 1.0, y
! PR61459
y = f_workaround (x)
- if (any (f_segfault (x) .ne. y)) call abort
- if (any (f_segfault_plus (x) .ne. y)) call abort
+ if (any (f_segfault (x) .ne. y)) STOP 1
+ if (any (f_segfault_plus (x) .ne. y)) STOP 2
! PR58883
- if (any (foo () .ne. reshape([1,2,3,4,5,6,7,8],[2,4]))) call abort
+ if (any (foo () .ne. reshape([1,2,3,4,5,6,7,8],[2,4]))) STOP 3
contains
function foo()
integer, allocatable :: foo(:,:)
diff --git a/gcc/testsuite/gfortran.dg/allocatable_scalar_1.f90 b/gcc/testsuite/gfortran.dg/allocatable_scalar_1.f90
index d83d2f7f72b..12731940e05 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_scalar_1.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_scalar_1.f90
@@ -10,9 +10,9 @@ real, allocatable :: scalar
allocate(scalar)
scalar = exp(1.)
print *,scalar
-if (.not. allocated(scalar)) call abort()
+if (.not. allocated(scalar)) STOP 1
deallocate(scalar)
-if (allocated(scalar)) call abort()
+if (allocated(scalar)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/allocatable_scalar_10.f90 b/gcc/testsuite/gfortran.dg/allocatable_scalar_10.f90
index 0d3be8845f9..d648554c6bf 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_scalar_10.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_scalar_10.f90
@@ -10,5 +10,5 @@ end type t
type(t), allocatable :: a
deallocate(a,stat=istat)
-if (istat == 0) call abort()
+if (istat == 0) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/allocatable_scalar_12.f90 b/gcc/testsuite/gfortran.dg/allocatable_scalar_12.f90
index eade363ea95..3521468e491 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_scalar_12.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_scalar_12.f90
@@ -8,23 +8,23 @@ implicit none
character(len=5), allocatable :: str
allocate(str)
str = '1bcde'
-if(str /= '1bcde') call abort()
+if(str /= '1bcde') STOP 1
call sub(str,len(str))
-if(str /= '1bcde') call abort()
+if(str /= '1bcde') STOP 2
call subOUT(str,len(str))
-if (len(str) /= 5) call abort()
-if(allocated(str)) call abort()
+if (len(str) /= 5) STOP 3
+if(allocated(str)) STOP 4
contains
subroutine sub(x,n)
integer :: n
character(len=n), allocatable :: x
- if(len(x) /= 5) call abort()
- if(x /= '1bcde') call abort()
+ if(len(x) /= 5) STOP 5
+ if(x /= '1bcde') STOP 6
end subroutine sub
subroutine subOUT(x,n)
integer :: n
character(len=n), allocatable,intent(out) :: x
- if(allocated(x)) call abort()
- if(len(x) /= 5) call abort()
+ if(allocated(x)) STOP 7
+ if(len(x) /= 5) STOP 8
end subroutine subOUT
end
diff --git a/gcc/testsuite/gfortran.dg/allocatable_scalar_13.f90 b/gcc/testsuite/gfortran.dg/allocatable_scalar_13.f90
index bc6f01739f5..df403a0143f 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_scalar_13.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_scalar_13.f90
@@ -21,17 +21,17 @@ contains
allocate(d,source=subdata(1)) ! memory was lost, now OK
allocate(e,source=d) ! OK
allocate(f,source=create (99)) ! memory was lost, now OK
- if (d%b .ne. 1) call abort
- if (e%b .ne. 1) call abort
- if (f%b .ne. 99) call abort
+ if (d%b .ne. 1) STOP 1
+ if (e%b .ne. 1) STOP 2
+ if (f%b .ne. 99) STOP 3
allocate (g, source = greeting1("good day"))
- if (g .ne. "good day") call abort
+ if (g .ne. "good day") STOP 4
allocate (h, source = greeting2("hello"))
- if (h .ne. "hello") call abort
+ if (h .ne. "hello") STOP 5
allocate (i, source = greeting3("hiya!"))
- if (i .ne. "hiya!") call abort
+ if (i .ne. "hiya!") STOP 6
call greeting4 (j, "Goodbye ") ! Test that dummy arguments are OK
- if (j .ne. "Goodbye ") call abort
+ if (j .ne. "Goodbye ") STOP 7
end subroutine
function create (arg) result(res)
@@ -56,7 +56,7 @@ contains
character(5) :: arg
Character(5), allocatable :: res, res1
allocate(res, res1, source = arg) ! Caused an ICE
- if (res1 .ne. res) call abort
+ if (res1 .ne. res) STOP 8
end function
subroutine greeting4 (res, arg)
diff --git a/gcc/testsuite/gfortran.dg/allocatable_scalar_3.f90 b/gcc/testsuite/gfortran.dg/allocatable_scalar_3.f90
index c624de22d36..bdeff0cab5e 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_scalar_3.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_scalar_3.f90
@@ -16,10 +16,10 @@ allocate(x%i)
x%i = 13
print *,x%i
-if (.not. allocated(x%i)) call abort()
+if (.not. allocated(x%i)) STOP 1
deallocate(x%i)
-if (allocated(x%i)) call abort()
+if (allocated(x%i)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/allocatable_scalar_4.f90 b/gcc/testsuite/gfortran.dg/allocatable_scalar_4.f90
index 9f7a7a07d70..57afbd4eccd 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_scalar_4.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_scalar_4.f90
@@ -9,57 +9,57 @@ program test
integer, allocatable :: b
allocate(a)
call foo(a)
- if(.not. allocated(a)) call abort()
- if (a /= 5) call abort()
+ if(.not. allocated(a)) STOP 1
+ if (a /= 5) STOP 2
call bar(a)
- if (a /= 7) call abort()
+ if (a /= 7) STOP 3
deallocate(a)
- if(allocated(a)) call abort()
+ if(allocated(a)) STOP 4
call check3(a)
- if(.not. allocated(a)) call abort()
- if(a /= 6874) call abort()
+ if(.not. allocated(a)) STOP 5
+ if(a /= 6874) STOP 6
call check4(a)
- if(.not. allocated(a)) call abort()
- if(a /= -478) call abort()
+ if(.not. allocated(a)) STOP 7
+ if(a /= -478) STOP 8
allocate(b)
b = 7482
call checkOptional(.false.,.true., 7482)
- if (b /= 7482) call abort()
+ if (b /= 7482) STOP 9
call checkOptional(.true., .true., 7482, b)
- if (b /= 46) call abort()
+ if (b /= 46) STOP 10
contains
subroutine foo(a)
integer, allocatable, intent(out) :: a
- if(allocated(a)) call abort()
+ if(allocated(a)) STOP 11
allocate(a)
a = 5
end subroutine foo
subroutine bar(a)
integer, allocatable, intent(inout) :: a
- if(.not. allocated(a)) call abort()
- if (a /= 5) call abort()
+ if(.not. allocated(a)) STOP 12
+ if (a /= 5) STOP 13
a = 7
end subroutine bar
subroutine check3(a)
integer, allocatable, intent(inout) :: a
- if(allocated(a)) call abort()
+ if(allocated(a)) STOP 14
allocate(a)
a = 6874
end subroutine check3
subroutine check4(a)
integer, allocatable, intent(inout) :: a
- if(.not.allocated(a)) call abort()
- if (a /= 6874) call abort
+ if(.not.allocated(a)) STOP 15
+ if (a /= 6874) STOP 1
deallocate(a)
- if(allocated(a)) call abort()
+ if(allocated(a)) STOP 16
allocate(a)
- if(.not.allocated(a)) call abort()
+ if(.not.allocated(a)) STOP 17
a = -478
end subroutine check4
@@ -67,19 +67,19 @@ contains
logical, intent(in) :: prsnt, alloc
integer, allocatable, optional :: x
integer, intent(in) :: val
- if (present(x) .neqv. prsnt) call abort()
+ if (present(x) .neqv. prsnt) STOP 18
if (present(x)) then
- if (allocated(x) .neqv. alloc) call abort()
+ if (allocated(x) .neqv. alloc) STOP 19
end if
if (present(x)) then
if (allocated(x)) then
- if (x /= val) call abort()
+ if (x /= val) STOP 20
end if
end if
call checkOptional2(x)
if (present(x)) then
- if (.not. allocated(x)) call abort()
- if (x /= -6784) call abort()
+ if (.not. allocated(x)) STOP 21
+ if (x /= -6784) STOP 22
x = 46
end if
call checkOptional2()
@@ -87,7 +87,7 @@ contains
subroutine checkOptional2(x)
integer, allocatable, optional, intent(out) :: x
if (present(x)) then
- if (allocated(x)) call abort()
+ if (allocated(x)) STOP 23
allocate(x)
x = -6784
end if
diff --git a/gcc/testsuite/gfortran.dg/allocatable_scalar_5.f90 b/gcc/testsuite/gfortran.dg/allocatable_scalar_5.f90
index efa40e92597..8a9bfaf1a1b 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_scalar_5.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_scalar_5.f90
@@ -10,28 +10,28 @@ program test
integer, allocatable :: a
integer :: b
- if (allocated (a)) call abort ()
+ if (allocated (a)) STOP 1
b = 7
b = func(.true.)
- if (b /= 5332) call abort ()
+ if (b /= 5332) STOP 2
b = 7
b = func(.true.) + 1
- if (b /= 5333) call abort ()
+ if (b /= 5333) STOP 3
call intout (a, .false.)
- if (allocated (a)) call abort ()
+ if (allocated (a)) STOP 4
call intout (a, .true.)
- if (.not.allocated (a)) call abort ()
- if (a /= 764) call abort ()
+ if (.not.allocated (a)) STOP 5
+ if (a /= 764) STOP 6
call intout2 (a)
- if (allocated (a)) call abort ()
+ if (allocated (a)) STOP 7
contains
function func (alloc)
integer, allocatable :: func
logical :: alloc
- if (allocated (func)) call abort ()
+ if (allocated (func)) STOP 8
if (alloc) then
allocate(func)
func = 5332
@@ -42,7 +42,7 @@ contains
implicit none
integer, allocatable,intent(out) :: dum
logical :: alloc
- if (allocated (dum)) call abort()
+ if (allocated (dum)) STOP 9
if (alloc) then
allocate (dum)
dum = 764
diff --git a/gcc/testsuite/gfortran.dg/allocatable_scalar_6.f90 b/gcc/testsuite/gfortran.dg/allocatable_scalar_6.f90
index 33daee4b848..d21e8daea0e 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_scalar_6.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_scalar_6.f90
@@ -11,16 +11,16 @@ program test
integer :: stat
stat=99
allocate(a, stat=stat)
- if (stat /= 0) call abort ()
+ if (stat /= 0) STOP 1
allocate(a, stat=stat)
- if (stat == 0) call abort ()
+ if (stat == 0) STOP 2
allocate (b)
deallocate (b, stat=stat)
- if (stat /= 0) call abort ()
+ if (stat /= 0) STOP 3
deallocate (b, stat=stat)
- if (stat == 0) call abort ()
+ if (stat == 0) STOP 4
deallocate (c, stat=stat)
- if (stat == 0) call abort ()
+ if (stat == 0) STOP 5
end program test
diff --git a/gcc/testsuite/gfortran.dg/allocatable_scalar_7.f90 b/gcc/testsuite/gfortran.dg/allocatable_scalar_7.f90
index 001dd241b94..0963e6fc902 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_scalar_7.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_scalar_7.f90
@@ -14,13 +14,13 @@ contains
integer, intent(in) :: no
integer, allocatable, save :: a
if (no == 0) then
- if (allocated (a)) call abort ()
+ if (allocated (a)) STOP 1
allocate (a)
else if (no == 1) then
- if (.not. allocated (a)) call abort ()
+ if (.not. allocated (a)) STOP 2
deallocate (a)
else
- if (allocated (a)) call abort ()
+ if (allocated (a)) STOP 3
end if
end subroutine sub
end program test
diff --git a/gcc/testsuite/gfortran.dg/allocatable_scalar_8.f90 b/gcc/testsuite/gfortran.dg/allocatable_scalar_8.f90
index f7940ede575..de5d1109072 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_scalar_8.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_scalar_8.f90
@@ -6,11 +6,11 @@
!
program test
implicit none
- if (func () /= 'abc') call abort ()
+ if (func () /= 'abc') STOP 1
contains
function func() result (str)
character(len=3), allocatable :: str
- if (allocated (str)) call abort ()
+ if (allocated (str)) STOP 2
allocate (str)
str = 'abc'
end function func
diff --git a/gcc/testsuite/gfortran.dg/allocatable_scalar_9.f90 b/gcc/testsuite/gfortran.dg/allocatable_scalar_9.f90
index 802c5f7bc8d..7bf84ef79c8 100644
--- a/gcc/testsuite/gfortran.dg/allocatable_scalar_9.f90
+++ b/gcc/testsuite/gfortran.dg/allocatable_scalar_9.f90
@@ -36,19 +36,19 @@ type(t4) :: na4, a4, aa4(:)
allocatable :: a1, a2, a3, a4, aa1, aa2, aa3,aa4
-if(allocated(a1)) call abort()
-if(allocated(a2)) call abort()
-if(allocated(a3)) call abort()
-if(allocated(a4)) call abort()
-if(allocated(aa1)) call abort()
-if(allocated(aa2)) call abort()
-if(allocated(aa3)) call abort()
-if(allocated(aa4)) call abort()
+if(allocated(a1)) STOP 1
+if(allocated(a2)) STOP 2
+if(allocated(a3)) STOP 3
+if(allocated(a4)) STOP 4
+if(allocated(aa1)) STOP 5
+if(allocated(aa2)) STOP 6
+if(allocated(aa3)) STOP 7
+if(allocated(aa4)) STOP 8
-if(allocated(na1%b1)) call abort()
-if(allocated(na2%b2)) call abort()
-if(allocated(na3%b3)) call abort()
-if(allocated(na4%b4)) call abort()
+if(allocated(na1%b1)) STOP 9
+if(allocated(na2%b2)) STOP 10
+if(allocated(na3%b3)) STOP 11
+if(allocated(na4%b4)) STOP 12
end block
end
diff --git a/gcc/testsuite/gfortran.dg/allocate_alloc_opt_10.f90 b/gcc/testsuite/gfortran.dg/allocate_alloc_opt_10.f90
index f5dae1ac6e8..f9d92381f95 100644
--- a/gcc/testsuite/gfortran.dg/allocate_alloc_opt_10.f90
+++ b/gcc/testsuite/gfortran.dg/allocate_alloc_opt_10.f90
@@ -24,10 +24,10 @@ allocate(x,MOLD=z)
select type (x)
type is (t2)
print *,x%j
- if (x%j/=4) call abort
+ if (x%j/=4) STOP 1
x%j = 5
class default
- call abort()
+ STOP 1
end select
@@ -38,9 +38,9 @@ allocate(y,MOLD=x)
select type (y)
type is (t2)
print *,y%j
- if (y%j/=4) call abort
+ if (y%j/=4) STOP 2
class default
- call abort()
+ STOP 2
end select
end
diff --git a/gcc/testsuite/gfortran.dg/allocate_alloc_opt_3.f90 b/gcc/testsuite/gfortran.dg/allocate_alloc_opt_3.f90
index d8c177f117d..cf8e1d61446 100644
--- a/gcc/testsuite/gfortran.dg/allocate_alloc_opt_3.f90
+++ b/gcc/testsuite/gfortran.dg/allocate_alloc_opt_3.f90
@@ -10,24 +10,24 @@ program a
e1 = 'No error'
allocate(i(4), stat=n, errmsg=e1)
- if (trim(e1) /= 'No error') call abort
+ if (trim(e1) /= 'No error') STOP 1
deallocate(i)
e2 = 'No error'
allocate(i(4),stat=n, errmsg=e2)
- if (trim(e2) /= 'No error') call abort
+ if (trim(e2) /= 'No error') STOP 2
deallocate(i)
e1 = 'No error'
allocate(i(4), stat=n, errmsg=e1)
allocate(i(4), stat=n, errmsg=e1)
- if (trim(e1) /= 'Attempt to allocate an allocated object') call abort
+ if (trim(e1) /= 'Attempt to allocate an allocated object') STOP 3
deallocate(i)
e2 = 'No error'
allocate(i(4), stat=n, errmsg=e2)
allocate(i(4), stat=n, errmsg=e2)
- if (trim(e2) /= 'Attempt to allocate an allocat') call abort
+ if (trim(e2) /= 'Attempt to allocate an allocat') STOP 4
end program a
diff --git a/gcc/testsuite/gfortran.dg/allocate_alloc_opt_6.f90 b/gcc/testsuite/gfortran.dg/allocate_alloc_opt_6.f90
index d470b424a1c..b9edf9ca694 100644
--- a/gcc/testsuite/gfortran.dg/allocate_alloc_opt_6.f90
+++ b/gcc/testsuite/gfortran.dg/allocate_alloc_opt_6.f90
@@ -18,17 +18,17 @@ program a
z = 99.
allocate(i(4), source=n)
- if (any(i /= 42)) call abort
+ if (any(i /= 42)) STOP 1
allocate(x(4), source=z)
- if (any(x /= 99.)) call abort
+ if (any(x /= 99.)) STOP 2
allocate(t, source=mytype(1.0,2))
- if (t%r /= 1. .or. t%i /= 2) call abort
+ if (t%r /= 1. .or. t%i /= 2) STOP 3
deallocate(i)
allocate(i(3), source=(/1, 2, 3/))
- if (i(1) /= 1 .or. i(2) /= 2 .or. i(3) /= 3) call abort
+ if (i(1) /= 1 .or. i(2) /= 2 .or. i(3) /= 3) STOP 4
call sub1(i)
@@ -38,5 +38,5 @@ subroutine sub1(j)
integer, intent(in) :: j(*)
integer, allocatable :: k(:)
allocate(k(2), source=j(1:2))
- if (k(1) /= 1 .or. k(2) /= 2) call abort
+ if (k(1) /= 1 .or. k(2) /= 2) STOP 5
end subroutine sub1
diff --git a/gcc/testsuite/gfortran.dg/allocate_assumed_charlen_1.f90 b/gcc/testsuite/gfortran.dg/allocate_assumed_charlen_1.f90
index 382df36375d..bef620d9e6d 100644
--- a/gcc/testsuite/gfortran.dg/allocate_assumed_charlen_1.f90
+++ b/gcc/testsuite/gfortran.dg/allocate_assumed_charlen_1.f90
@@ -12,8 +12,8 @@
call alloc( foo , foofoo)
- if (len(foo) .ne. 42) call abort
- if (len(foofoo) .ne. 22) call abort
+ if (len(foo) .ne. 42) STOP 1
+ if (len(foofoo) .ne. 22) STOP 2
contains
diff --git a/gcc/testsuite/gfortran.dg/allocate_assumed_charlen_2.f90 b/gcc/testsuite/gfortran.dg/allocate_assumed_charlen_2.f90
index e54a04353a3..df5d3aa9722 100644
--- a/gcc/testsuite/gfortran.dg/allocate_assumed_charlen_2.f90
+++ b/gcc/testsuite/gfortran.dg/allocate_assumed_charlen_2.f90
@@ -5,8 +5,8 @@ program a
character(len=42), allocatable :: f
character(len=22), allocatable :: ff
call alloc(f, ff)
- if (len(f) .ne. 42) call abort
- if (len(ff) .ne. 22) call abort
+ if (len(f) .ne. 42) STOP 1
+ if (len(ff) .ne. 22) STOP 2
contains
subroutine alloc( a, b )
character(len=*), allocatable :: a
diff --git a/gcc/testsuite/gfortran.dg/allocate_class_3.f90 b/gcc/testsuite/gfortran.dg/allocate_class_3.f90
index ddc7e23283f..44de36e3608 100644
--- a/gcc/testsuite/gfortran.dg/allocate_class_3.f90
+++ b/gcc/testsuite/gfortran.dg/allocate_class_3.f90
@@ -73,7 +73,7 @@ end module
call AddArray1 (P, Pt)
select type (x => Pt%p)
type is (t)
- if (any (x%i .ne. [1,2])) call abort
+ if (any (x%i .ne. [1,2])) STOP 1
end select
deallocate (P)
deallocate (pt)
@@ -83,7 +83,7 @@ end module
call AddArray2 (P, Pt)
select type (x => Pt%p)
type is (t)
- if (any (x%i .ne. [3,4,5])) call abort
+ if (any (x%i .ne. [3,4,5])) STOP 2
end select
deallocate (P)
deallocate (pt)
@@ -92,7 +92,7 @@ end module
call AddArray3 (t(6), Pt)
select type (x => Pt%p)
type is (t)
- if (any (x%i .ne. [6,6,6,6])) call abort
+ if (any (x%i .ne. [6,6,6,6])) STOP 3
end select
deallocate (pt)
@@ -100,7 +100,7 @@ end module
call AddArray4 ([t(7), t(8)], Pt)
select type (x => Pt%p)
type is (t)
- if (any (x%i .ne. [7,8])) call abort
+ if (any (x%i .ne. [7,8])) STOP 4
end select
deallocate (pt)
end
diff --git a/gcc/testsuite/gfortran.dg/allocate_deferred_char_scalar_1.f03 b/gcc/testsuite/gfortran.dg/allocate_deferred_char_scalar_1.f03
index d5ca573cd9f..9117ffe29d2 100644
--- a/gcc/testsuite/gfortran.dg/allocate_deferred_char_scalar_1.f03
+++ b/gcc/testsuite/gfortran.dg/allocate_deferred_char_scalar_1.f03
@@ -25,27 +25,27 @@ contains
character(len=:), pointer :: str4, str5
nullify(str4)
str3 = 'AbCdEfGhIj'
- if(allocated(str)) call abort()
+ if(allocated(str)) STOP 1
allocate(str, source=str3)
- if(.not.allocated(str)) call abort()
- if(len(str) /= 8) call abort()
- if(str /= 'AbCdEfGh') call abort()
- if(associated(str4)) call abort()
+ if(.not.allocated(str)) STOP 2
+ if(len(str) /= 8) STOP 3
+ if(str /= 'AbCdEfGh') STOP 4
+ if(associated(str4)) STOP 5
str4 => str
- if(str4 /= str .or. len(str4)/=8) call abort()
- if(.not.associated(str4, str)) call abort()
+ if(str4 /= str .or. len(str4)/=8) STOP 6
+ if(.not.associated(str4, str)) STOP 7
str4 => null()
str = '12a56b78'
- if(str4 == '12a56b78') call abort()
+ if(str4 == '12a56b78') STOP 8
str4 = 'ABCDEFGH'
- if(str == 'ABCDEFGH') call abort()
+ if(str == 'ABCDEFGH') STOP 9
allocate(str5, source=str)
- if(associated(str5, str)) call abort()
- if(str5 /= '12a56b78' .or. len(str5)/=8) call abort()
+ if(associated(str5, str)) STOP 10
+ if(str5 /= '12a56b78' .or. len(str5)/=8) STOP 11
str = 'abcdef'
- if(str5 == 'abcdef') call abort()
+ if(str5 == 'abcdef') STOP 12
str5 = 'ABCDEF'
- if(str == 'ABCDEF') call abort()
+ if(str == 'ABCDEF') STOP 13
end subroutine source_check
subroutine source_check4()
character(kind=4,len=:), allocatable :: str, str2
@@ -54,27 +54,27 @@ contains
character(kind=4,len=:), pointer :: str4, str5
nullify(str4)
str3 = 4_'AbCdEfGhIj'
- if(allocated(str)) call abort()
+ if(allocated(str)) STOP 14
allocate(str, source=str3)
- if(.not.allocated(str)) call abort()
- if(len(str) /= 8) call abort()
- if(str /= 4_'AbCdEfGh') call abort()
- if(associated(str4)) call abort()
+ if(.not.allocated(str)) STOP 15
+ if(len(str) /= 8) STOP 16
+ if(str /= 4_'AbCdEfGh') STOP 17
+ if(associated(str4)) STOP 18
str4 => str
- if(str4 /= str .or. len(str4)/=8) call abort()
- if(.not.associated(str4, str)) call abort()
+ if(str4 /= str .or. len(str4)/=8) STOP 19
+ if(.not.associated(str4, str)) STOP 20
str4 => null()
str = 4_'12a56b78'
- if(str4 == 4_'12a56b78') call abort()
+ if(str4 == 4_'12a56b78') STOP 21
str4 = 4_'ABCDEFGH'
- if(str == 4_'ABCDEFGH') call abort()
+ if(str == 4_'ABCDEFGH') STOP 22
allocate(str5, source=str)
- if(associated(str5, str)) call abort()
- if(str5 /= 4_'12a56b78' .or. len(str5)/=8) call abort()
+ if(associated(str5, str)) STOP 23
+ if(str5 /= 4_'12a56b78' .or. len(str5)/=8) STOP 24
str = 4_'abcdef'
- if(str5 == 4_'abcdef') call abort()
+ if(str5 == 4_'abcdef') STOP 25
str5 = 4_'ABCDEF'
- if(str == 4_'ABCDEF') call abort()
+ if(str == 4_'ABCDEF') STOP 26
end subroutine source_check4
subroutine mold_check()
character(len=:), allocatable :: str, str2
@@ -83,26 +83,26 @@ contains
nullify(str4)
str2 = "ABCE"
ALLOCATE( str, MOLD=str3)
- if (len(str) /= 8) call abort()
+ if (len(str) /= 8) STOP 27
DEALLOCATE(str)
ALLOCATE( str, MOLD=str2)
- if (len(str) /= 4) call abort()
+ if (len(str) /= 4) STOP 28
- IF (associated(str4)) call abort()
+ IF (associated(str4)) STOP 29
ALLOCATE( str4, MOLD=str3)
- IF (.not.associated(str4)) call abort()
+ IF (.not.associated(str4)) STOP 30
str4 = '12345678'
- if (len(str4) /= 8) call abort()
- if(str4 /= '12345678') call abort()
+ if (len(str4) /= 8) STOP 31
+ if(str4 /= '12345678') STOP 32
DEALLOCATE(str4)
ALLOCATE( str4, MOLD=str2)
str4 = 'ABCD'
- if (len(str4) /= 4) call abort()
- if (str4 /= 'ABCD') call abort()
+ if (len(str4) /= 4) STOP 33
+ if (str4 /= 'ABCD') STOP 34
str5 => str4
- if(.not.associated(str4,str5)) call abort()
- if(len(str5) /= 4 .or. len(str4) /= len(str5)) call abort()
- if(str5 /= str4) call abort()
+ if(.not.associated(str4,str5)) STOP 35
+ if(len(str5) /= 4 .or. len(str4) /= len(str5)) STOP 36
+ if(str5 /= str4) STOP 37
deallocate(str4)
end subroutine mold_check
subroutine mold_check4()
@@ -112,26 +112,26 @@ contains
nullify(str4)
str2 = 4_"ABCE"
ALLOCATE( str, MOLD=str3)
- if (len(str) /= 8) call abort()
+ if (len(str) /= 8) STOP 38
DEALLOCATE(str)
ALLOCATE( str, MOLD=str2)
- if (len(str) /= 4) call abort()
+ if (len(str) /= 4) STOP 39
- IF (associated(str4)) call abort()
+ IF (associated(str4)) STOP 40
ALLOCATE( str4, MOLD=str3)
- IF (.not.associated(str4)) call abort()
+ IF (.not.associated(str4)) STOP 41
str4 = 4_'12345678'
- if (len(str4) /= 8) call abort()
- if(str4 /= 4_'12345678') call abort()
+ if (len(str4) /= 8) STOP 42
+ if(str4 /= 4_'12345678') STOP 43
DEALLOCATE(str4)
ALLOCATE( str4, MOLD=str2)
str4 = 4_'ABCD'
- if (len(str4) /= 4) call abort()
- if (str4 /= 4_'ABCD') call abort()
+ if (len(str4) /= 4) STOP 44
+ if (str4 /= 4_'ABCD') STOP 45
str5 => str4
- if(.not.associated(str4,str5)) call abort()
- if(len(str5) /= 4 .or. len(str4) /= len(str5)) call abort()
- if(str5 /= str4) call abort()
+ if(.not.associated(str4,str5)) STOP 46
+ if(len(str5) /= 4 .or. len(str4) /= len(str5)) STOP 47
+ if(str5 /= str4) STOP 48
deallocate(str4)
end subroutine mold_check4
subroutine ftn_test()
@@ -139,22 +139,22 @@ contains
character(len=:), pointer :: str_p
nullify(str_p)
call proc_test(str_a, str_p, .false.)
- if (str_p /= '123457890abcdef') call abort()
- if (len(str_p) /= 50) call abort()
- if (str_a(1:5) /= 'ABCDE ') call abort()
- if (len(str_a) /= 50) call abort()
+ if (str_p /= '123457890abcdef') STOP 49
+ if (len(str_p) /= 50) STOP 50
+ if (str_a(1:5) /= 'ABCDE ') STOP 51
+ if (len(str_a) /= 50) STOP 52
deallocate(str_p)
str_a = '1245'
- if(len(str_a) /= 4) call abort()
- if(str_a /= '1245') call abort()
+ if(len(str_a) /= 4) STOP 53
+ if(str_a /= '1245') STOP 54
allocate(character(len=6) :: str_p)
- if(len(str_p) /= 6) call abort()
+ if(len(str_p) /= 6) STOP 55
str_p = 'AbCdEf'
call proc_test(str_a, str_p, .true.)
- if (str_p /= '123457890abcdef') call abort()
- if (len(str_p) /= 50) call abort()
- if (str_a(1:5) /= 'ABCDE ') call abort()
- if (len(str_a) /= 50) call abort()
+ if (str_p /= '123457890abcdef') STOP 56
+ if (len(str_p) /= 50) STOP 57
+ if (str_a(1:5) /= 'ABCDE ') STOP 58
+ if (len(str_a) /= 50) STOP 59
deallocate(str_p)
end subroutine ftn_test
subroutine proc_test(a, p, alloc)
@@ -163,56 +163,56 @@ contains
character(len=5), target :: loc
logical :: alloc
if (.not. alloc) then
- if(associated(p)) call abort()
- if(allocated(a)) call abort()
+ if(associated(p)) STOP 60
+ if(allocated(a)) STOP 61
else
- if(len(a) /= 4) call abort()
- if(a /= '1245') call abort()
- if(len(p) /= 6) call abort()
- if(p /= 'AbCdEf') call abort()
+ if(len(a) /= 4) STOP 62
+ if(a /= '1245') STOP 63
+ if(len(p) /= 6) STOP 64
+ if(p /= 'AbCdEf') STOP 65
deallocate(a)
nullify(p)
end if
allocate(character(len=50) :: a)
a(1:5) = 'ABCDE'
- if(len(a) /= 50) call abort()
- if(a(1:5) /= "ABCDE") call abort()
+ if(len(a) /= 50) STOP 66
+ if(a(1:5) /= "ABCDE") STOP 67
loc = '12345'
p => loc
- if (len(p) /= 5) call abort()
- if (p /= '12345') call abort()
+ if (len(p) /= 5) STOP 68
+ if (p /= '12345') STOP 69
p = '12345679'
- if (len(p) /= 5) call abort()
- if (p /= '12345') call abort()
+ if (len(p) /= 5) STOP 70
+ if (p /= '12345') STOP 71
p = 'ABC'
- if (loc /= 'ABC ') call abort()
+ if (loc /= 'ABC ') STOP 72
allocate(p, mold=a)
- if (.not.associated(p)) call abort()
+ if (.not.associated(p)) STOP 73
p = '123457890abcdef'
- if (p /= '123457890abcdef') call abort()
- if (len(p) /= 50) call abort()
+ if (p /= '123457890abcdef') STOP 74
+ if (len(p) /= 50) STOP 75
end subroutine proc_test
subroutine ftn_test4()
character(len=:,kind=4), allocatable :: str_a
character(len=:,kind=4), pointer :: str_p
nullify(str_p)
call proc_test4(str_a, str_p, .false.)
- if (str_p /= 4_'123457890abcdef') call abort()
- if (len(str_p) /= 50) call abort()
- if (str_a(1:5) /= 4_'ABCDE ') call abort()
- if (len(str_a) /= 50) call abort()
+ if (str_p /= 4_'123457890abcdef') STOP 76
+ if (len(str_p) /= 50) STOP 77
+ if (str_a(1:5) /= 4_'ABCDE ') STOP 78
+ if (len(str_a) /= 50) STOP 79
deallocate(str_p)
str_a = 4_'1245'
- if(len(str_a) /= 4) call abort()
- if(str_a /= 4_'1245') call abort()
+ if(len(str_a) /= 4) STOP 80
+ if(str_a /= 4_'1245') STOP 81
allocate(character(len=6, kind = 4) :: str_p)
- if(len(str_p) /= 6) call abort()
+ if(len(str_p) /= 6) STOP 82
str_p = 4_'AbCdEf'
call proc_test4(str_a, str_p, .true.)
- if (str_p /= 4_'123457890abcdef') call abort()
- if (len(str_p) /= 50) call abort()
- if (str_a(1:5) /= 4_'ABCDE ') call abort()
- if (len(str_a) /= 50) call abort()
+ if (str_p /= 4_'123457890abcdef') STOP 83
+ if (len(str_p) /= 50) STOP 84
+ if (str_a(1:5) /= 4_'ABCDE ') STOP 85
+ if (len(str_a) /= 50) STOP 86
deallocate(str_p)
end subroutine ftn_test4
subroutine proc_test4(a, p, alloc)
@@ -221,34 +221,34 @@ contains
character(len=5,kind=4), target :: loc
logical :: alloc
if (.not. alloc) then
- if(associated(p)) call abort()
- if(allocated(a)) call abort()
+ if(associated(p)) STOP 87
+ if(allocated(a)) STOP 88
else
- if(len(a) /= 4) call abort()
- if(a /= 4_'1245') call abort()
- if(len(p) /= 6) call abort()
- if(p /= 4_'AbCdEf') call abort()
+ if(len(a) /= 4) STOP 89
+ if(a /= 4_'1245') STOP 90
+ if(len(p) /= 6) STOP 91
+ if(p /= 4_'AbCdEf') STOP 92
deallocate(a)
nullify(p)
end if
allocate(character(len=50,kind=4) :: a)
a(1:5) = 4_'ABCDE'
- if(len(a) /= 50) call abort()
- if(a(1:5) /= 4_"ABCDE") call abort()
+ if(len(a) /= 50) STOP 93
+ if(a(1:5) /= 4_"ABCDE") STOP 94
loc = '12345'
p => loc
- if (len(p) /= 5) call abort()
- if (p /= 4_'12345') call abort()
+ if (len(p) /= 5) STOP 95
+ if (p /= 4_'12345') STOP 96
p = 4_'12345679'
- if (len(p) /= 5) call abort()
- if (p /= 4_'12345') call abort()
+ if (len(p) /= 5) STOP 97
+ if (p /= 4_'12345') STOP 98
p = 4_'ABC'
- if (loc /= 4_'ABC ') call abort()
+ if (loc /= 4_'ABC ') STOP 99
allocate(p, mold=a)
- if (.not.associated(p)) call abort()
+ if (.not.associated(p)) STOP 100
p = 4_'123457890abcdef'
- if (p /= 4_'123457890abcdef') call abort()
- if (len(p) /= 50) call abort()
+ if (p /= 4_'123457890abcdef') STOP 101
+ if (len(p) /= 50) STOP 102
end subroutine proc_test4
subroutine source3()
character(len=:, kind=1), allocatable :: a1
@@ -256,13 +256,13 @@ contains
character(len=:, kind=1), pointer :: p1
character(len=:, kind=4), pointer :: p4
allocate(a1, source='ABC') ! << ICE
- if(len(a1) /= 3 .or. a1 /= 'ABC') call abort()
+ if(len(a1) /= 3 .or. a1 /= 'ABC') STOP 103
allocate(a4, source=4_'12345') ! << ICE
- if(len(a4) /= 5 .or. a4 /= 4_'12345') call abort()
+ if(len(a4) /= 5 .or. a4 /= 4_'12345') STOP 104
allocate(p1, mold='AB') ! << ICE
- if(len(p1) /= 2) call abort()
+ if(len(p1) /= 2) STOP 105
allocate(p4, mold=4_'145') ! << ICE
- if(len(p4) /= 3) call abort()
+ if(len(p4) /= 3) STOP 106
end subroutine source3
end program test
! Spurious -Wstringop-overflow warning with -O1
diff --git a/gcc/testsuite/gfortran.dg/allocate_deferred_char_scalar_2.f03 b/gcc/testsuite/gfortran.dg/allocate_deferred_char_scalar_2.f03
index 1f0f4330105..0c9314987a6 100644
--- a/gcc/testsuite/gfortran.dg/allocate_deferred_char_scalar_2.f03
+++ b/gcc/testsuite/gfortran.dg/allocate_deferred_char_scalar_2.f03
@@ -11,11 +11,11 @@ program note7_35
integer n
n = 10
allocate(name, SOURCE=repeat('x',n))
- if (name .ne. 'xxxxxxxxxx') call abort
- if (len (name) .ne. 10 ) call abort
+ if (name .ne. 'xxxxxxxxxx') STOP 1
+ if (len (name) .ne. 10 ) STOP 2
deallocate(name)
src = 'xyxy'
allocate(name, SOURCE=repeat(src,n))
- if (name(37:40) .ne. 'xyxy') call abort
- if (len (name) .ne. 40 ) call abort
+ if (name(37:40) .ne. 'xyxy') STOP 3
+ if (len (name) .ne. 40 ) STOP 4
end program note7_35
diff --git a/gcc/testsuite/gfortran.dg/allocate_derived_5.f90 b/gcc/testsuite/gfortran.dg/allocate_derived_5.f90
index 70d63aa1a46..00aa0cc8a6b 100644
--- a/gcc/testsuite/gfortran.dg/allocate_derived_5.f90
+++ b/gcc/testsuite/gfortran.dg/allocate_derived_5.f90
@@ -16,5 +16,5 @@ program fail1
type(b), allocatable :: c(:)
allocate(c(1))
- if (c(1) % acomp % i /= 5) call abort()
+ if (c(1) % acomp % i /= 5) STOP 1
end program fail1
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_arrayspec_1.f90 b/gcc/testsuite/gfortran.dg/allocate_with_arrayspec_1.f90
index 686b612408a..0bec9bb3961 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_arrayspec_1.f90
+++ b/gcc/testsuite/gfortran.dg/allocate_with_arrayspec_1.f90
@@ -23,7 +23,7 @@ PROGRAM example
USE mo_test
INTEGER, ALLOCATABLE :: query_buf(:)
ALLOCATE(query_buf(nquery()))
- if (n /= 1 .or. size(query_buf) /= n) call abort()
+ if (n /= 1 .or. size(query_buf) /= n) STOP 1
END PROGRAM example
! { dg-final { scan-tree-dump-times "nquery" 5 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_mold_1.f90 b/gcc/testsuite/gfortran.dg/allocate_with_mold_1.f90
index 6a3f0adce1f..fd47abf0c24 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_mold_1.f90
+++ b/gcc/testsuite/gfortran.dg/allocate_with_mold_1.f90
@@ -37,7 +37,7 @@ contains
class default
i = 2
end select
- if (i .ne. 1) call abort
+ if (i .ne. 1) STOP 1
end subroutine
end module UnstructuredGridImages
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_source_1.f90 b/gcc/testsuite/gfortran.dg/allocate_with_source_1.f90
index 0069092f6b8..da012369bc9 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_source_1.f90
+++ b/gcc/testsuite/gfortran.dg/allocate_with_source_1.f90
@@ -23,6 +23,6 @@ program note7_35
integer n
n = 10
allocate(name, SOURCE=repeat('x',bar()))
- if (name .ne. 'xxxxxxxxxx') call abort
- if (len (name) .ne. 10 ) call abort
+ if (name .ne. 'xxxxxxxxxx') STOP 1
+ if (len (name) .ne. 10 ) STOP 2
end program note7_35
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_source_10.f08 b/gcc/testsuite/gfortran.dg/allocate_with_source_10.f08
index b9c68b4b45b..764ab31bc51 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_source_10.f08
+++ b/gcc/testsuite/gfortran.dg/allocate_with_source_10.f08
@@ -37,8 +37,8 @@ contains
type(t1_t), dimension(:), allocatable :: p_born
allocate (p_born(1:size(t3%int_born%func ())), &
source = t3%int_born%func ())
- if (.not. allocated(p_born)) call abort()
- if (size(p_born) /= 5) call abort()
+ if (.not. allocated(p_born)) STOP 1
+ if (size(p_born) /= 5) STOP 2
end subroutine evaluate
end module processes
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_source_11.f08 b/gcc/testsuite/gfortran.dg/allocate_with_source_11.f08
index 5491b49218d..e8815c68aa0 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_source_11.f08
+++ b/gcc/testsuite/gfortran.dg/allocate_with_source_11.f08
@@ -37,8 +37,8 @@ contains
type(t1_t), dimension(:), allocatable :: p_born
allocate (p_born(1:size(t3%int_born%func ())), &
source = t3%int_born%func ())
- if (.not. allocated(p_born)) call abort()
- if (size(p_born) /= 5) call abort()
+ if (.not. allocated(p_born)) STOP 1
+ if (size(p_born) /= 5) STOP 2
end subroutine evaluate
end module processes
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_source_12.f03 b/gcc/testsuite/gfortran.dg/allocate_with_source_12.f03
index 76deb6174db..5dcf0ec9bf6 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_source_12.f03
+++ b/gcc/testsuite/gfortran.dg/allocate_with_source_12.f03
@@ -21,11 +21,11 @@ program z
! write (*,*) tmp( 1, :)
allocate (d(DIM1_SIZE / 2, 2), source = tmp(1 : DIM1_SIZE / 2, :) , stat=errstat)
- if (any (d .ne. tmp(1:DIM1_SIZE/2,:))) call abort
+ if (any (d .ne. tmp(1:DIM1_SIZE/2,:))) STOP 1
deallocate (d)
allocate (d(DIM1_SIZE / 2, 2), source = foo (tmp(1 : DIM1_SIZE / 2, :)) , stat=errstat)
- if (any (d .ne. tmp(1 : DIM1_SIZE / 2, :))) call abort
+ if (any (d .ne. tmp(1 : DIM1_SIZE / 2, :))) STOP 2
deallocate (tmp , d)
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_source_15.f03 b/gcc/testsuite/gfortran.dg/allocate_with_source_15.f03
index f939aa3d9df..b22c8fe5d6d 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_source_15.f03
+++ b/gcc/testsuite/gfortran.dg/allocate_with_source_15.f03
@@ -64,10 +64,10 @@ contains
end select
end do
! print "(10i6,/)", j
- if (any (j .ne. [(i, i = 1,20)])) call abort
+ if (any (j .ne. [(i, i = 1,20)])) STOP 1
! print "(10f6.2,/)", r
- if (any (r(1:10) .ne. [(real (2 * i), i = 1,10)])) call abort
- if (any (r(11:20) .ne. zero)) call abort
+ if (any (r(1:10) .ne. [(real (2 * i), i = 1,10)])) STOP 2
+ if (any (r(11:20) .ne. zero)) STOP 3
end subroutine Typeme
end module test_mod
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_source_16.f90 b/gcc/testsuite/gfortran.dg/allocate_with_source_16.f90
index cb5f16f2745..0f1e9b67287 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_source_16.f90
+++ b/gcc/testsuite/gfortran.dg/allocate_with_source_16.f90
@@ -62,14 +62,14 @@ endmodule m2
c1%steps= 1
d=> c1%construct(prev)
- if (.not. associated(d) ) call abort()
+ if (.not. associated(d) ) STOP 1
select type (d)
class is (exttype)
- if (d%i2 /= 5) call abort()
+ if (d%i2 /= 5) STOP 2
class default
- call abort()
+ STOP 3
end select
- if (d%i /= 2) call abort()
+ if (d%i /= 2) STOP 4
deallocate(c1)
deallocate(prev)
deallocate(d)
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_source_17.f03 b/gcc/testsuite/gfortran.dg/allocate_with_source_17.f03
index bce71f5bbce..191da595c96 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_source_17.f03
+++ b/gcc/testsuite/gfortran.dg/allocate_with_source_17.f03
@@ -25,11 +25,11 @@ contains
subroutine check
select type (z => a%x)
type is (real(8))
- if (any (z .ne. r)) call abort
+ if (any (z .ne. r)) STOP 1
type is (character(kind = 1, len = *))
- if (any(z .ne. chr1)) call abort
+ if (any(z .ne. chr1)) STOP 2
type is (character(kind = 4, len = *))
- if (any(z .ne. chr4)) call abort
+ if (any(z .ne. chr4)) STOP 3
end select
deallocate (a%x)
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_source_18.f03 b/gcc/testsuite/gfortran.dg/allocate_with_source_18.f03
index 746bd0ddd66..c9665309bc1 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_source_18.f03
+++ b/gcc/testsuite/gfortran.dg/allocate_with_source_18.f03
@@ -22,8 +22,8 @@ contains
select type (copyofvar)
type is (character(len=*))
! print*, len(copyofvar), copyofvar
- if (len(copyofvar) /= 11) call abort ()
- if (copyofvar /= "A test case") call abort ()
+ if (len(copyofvar) /= 11) STOP 1
+ if (copyofvar /= "A test case") STOP 2
end select
deallocate(copyofvar)
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_source_2.f90 b/gcc/testsuite/gfortran.dg/allocate_with_source_2.f90
index 8e48b226062..16732e23f1c 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_source_2.f90
+++ b/gcc/testsuite/gfortran.dg/allocate_with_source_2.f90
@@ -10,7 +10,7 @@ program helloworld
character(:),allocatable::string
real::rnd
call hello(5, string)
- if (string /= 'hello' .or. len(string) /= 5) call abort
+ if (string /= 'hello' .or. len(string) /= 5) STOP 1
contains
subroutine hello (n,string)
character(:),allocatable,intent(out)::string
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_source_20.f03 b/gcc/testsuite/gfortran.dg/allocate_with_source_20.f03
index 67b50ec0d85..243214bd962 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_source_20.f03
+++ b/gcc/testsuite/gfortran.dg/allocate_with_source_20.f03
@@ -14,8 +14,8 @@ program p
character(3), parameter :: c = 'abc'
character(:), allocatable :: z
allocate (z, source=repeat(c(2:1), f()))
- if (len(z) /= 0) call abort()
- if (z /= "") call abort()
+ if (len(z) /= 0) STOP 1
+ if (z /= "") STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_source_22.f03 b/gcc/testsuite/gfortran.dg/allocate_with_source_22.f03
index b8689f95a54..38131b91456 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_source_22.f03
+++ b/gcc/testsuite/gfortran.dg/allocate_with_source_22.f03
@@ -19,29 +19,29 @@ subroutine test_class()
class(t), allocatable, dimension(:) :: a, b
allocate(tt::a(1:2))
a(:)%i = [ 1,2 ]
- if (size(a) /= 2) call abort()
- if (any(a(:)%i /= [ 1,2])) call abort()
+ if (size(a) /= 2) STOP 1
+ if (any(a(:)%i /= [ 1,2])) STOP 2
allocate(b(1:4), source=a)
! b is incorrectly initialized here. This only is diagnosed when compiled
! with -fcheck=bounds.
- if (size(b) /= 4) call abort()
- if (any(b(1:2)%i /= [ 1,2])) call abort()
- select type (b(1))
+ if (size(b) /= 4) STOP 3
+ if (any(b(1:2)%i /= [ 1,2])) STOP 4
+ select type (b1 => b(1))
class is (tt)
continue
class default
- call abort()
+ STOP 5
end select
end subroutine
subroutine test_type()
type(t), allocatable, dimension(:) :: a, b
allocate(a(1:2))
- if (size(a) /= 2) call abort()
+ if (size(a) /= 2) STOP 6
allocate(b(1:4), source=a)
- if (size(b) /= 4) call abort()
+ if (size(b) /= 4) STOP 7
end subroutine
end program allocate_source
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_source_23.f03 b/gcc/testsuite/gfortran.dg/allocate_with_source_23.f03
index cfe8bd80e2f..c47e6304998 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_source_23.f03
+++ b/gcc/testsuite/gfortran.dg/allocate_with_source_23.f03
@@ -22,17 +22,17 @@ subroutine test_class_correct()
class(t), allocatable, dimension(:) :: a, b
allocate(tt::a(1:2))
a(:)%i = [ 1,2 ]
- if (size(a) /= 2) call abort()
- if (any(a(:)%i /= [ 1,2])) call abort()
+ if (size(a) /= 2) STOP 1
+ if (any(a(:)%i /= [ 1,2])) STOP 2
allocate(b(1:4), source=a(1))
- if (size(b) /= 4) call abort()
- if (any(b(:)%i /= [ 1,1,1,1])) call abort()
- select type (b(1))
+ if (size(b) /= 4) STOP 3
+ if (any(b(:)%i /= [ 1,1,1,1])) STOP 4
+ select type (b1 => b(1))
class is (tt)
continue
class default
- call abort()
+ STOP 5
end select
end subroutine
@@ -40,27 +40,27 @@ subroutine test_class_fail()
class(t), allocatable, dimension(:) :: a, b
allocate(tt::a(1:2))
a(:)%i = [ 1,2 ]
- if (size(a) /= 2) call abort()
- if (any(a(:)%i /= [ 1,2])) call abort()
+ if (size(a) /= 2) STOP 6
+ if (any(a(:)%i /= [ 1,2])) STOP 7
allocate(b(1:4), source=a) ! Fail expected: sizes do not conform
- if (size(b) /= 4) call abort()
- if (any(b(1:2)%i /= [ 1,2])) call abort()
- select type (b(1))
+ if (size(b) /= 4) STOP 8
+ if (any(b(1:2)%i /= [ 1,2])) STOP 9
+ select type (b1 => b(1))
class is (tt)
continue
class default
- call abort()
+ STOP 10
end select
end subroutine
subroutine test_type()
type(t), allocatable, dimension(:) :: a, b
allocate(a(1:2))
- if (size(a) /= 2) call abort()
+ if (size(a) /= 2) STOP 11
allocate(b(1:4), source=a)
- if (size(b) /= 4) call abort()
+ if (size(b) /= 4) STOP 12
end subroutine
end program allocate_source
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_source_24.f90 b/gcc/testsuite/gfortran.dg/allocate_with_source_24.f90
index ec11d7af401..a26ae0c62af 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_source_24.f90
+++ b/gcc/testsuite/gfortran.dg/allocate_with_source_24.f90
@@ -117,16 +117,16 @@ contains
type(field_data_t), intent(in) :: prt_src
integer :: i
if (allocated (prt_src%name)) then
- if (prt_src%name(1) /= "foo") call abort()
- if (prt_src%name(2) /= "bar") call abort()
+ if (prt_src%name(1) /= "foo") STOP 1
+ if (prt_src%name(2) /= "bar") STOP 2
if (allocated (prt%name)) deallocate (prt%name)
allocate (prt%name (size (prt_src%name)), source = prt_src%name)
! The issue was, that prt_src was empty after sourced-allocate.
- if (prt_src%name(1) /= "foo") call abort()
- if (prt_src%name(2) /= "bar") call abort()
- if (prt%name(1) /= "foo") call abort()
- if (prt%name(2) /= "bar") call abort()
+ if (prt_src%name(1) /= "foo") STOP 3
+ if (prt_src%name(2) /= "bar") STOP 4
+ if (prt%name(1) /= "foo") STOP 5
+ if (prt%name(2) /= "bar") STOP 6
end if
end subroutine copy
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_source_5.f90 b/gcc/testsuite/gfortran.dg/allocate_with_source_5.f90
index e18d6426e51..e2a9735f558 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_source_5.f90
+++ b/gcc/testsuite/gfortran.dg/allocate_with_source_5.f90
@@ -116,9 +116,9 @@ contains
class(t2), intent(inout) :: this
character(32), dimension(:), allocatable :: md5
allocate (md5 (this%n), source=this%md5)
- if (md5(1) /= "tst ") call abort()
- if (md5(2) /= " ") call abort()
- if (md5(3) /= "fooblabar ") call abort()
+ if (md5(1) /= "tst ") STOP 1
+ if (md5(2) /= " ") STOP 2
+ if (md5(3) /= "fooblabar ") STOP 3
end subroutine t2_init
end module foo2
@@ -136,14 +136,14 @@ program test
call sel%init([2., 0., 3., 0., 4.])
- if (any(sel%map /= [1, 3, 5])) call abort()
- if (any(abs(sel%weight - [2., 3., 4.] / 9.) > 1E-6)) call abort()
+ if (any(sel%map /= [1, 3, 5])) STOP 4
+ if (any(abs(sel%weight - [2., 3., 4.] / 9.) > 1E-6)) STOP 5
phs_config%n_in = 2
allocate (phs_config%flv (phs_config%n_in, 1))
call phs_base_init (phs, phs_config)
- if (any(abs(phs%m_in - [42.0, 42.0]) > 1E-6)) call abort()
+ if (any(abs(phs%m_in - [42.0, 42.0]) > 1E-6)) STOP 6
o%n = 2
allocate (o%val(0:1,4))
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_source_6.f90 b/gcc/testsuite/gfortran.dg/allocate_with_source_6.f90
index 7f2473aafd9..ab968969695 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_source_6.f90
+++ b/gcc/testsuite/gfortran.dg/allocate_with_source_6.f90
@@ -118,9 +118,9 @@ contains
class(t2), intent(inout) :: this
character(32), dimension(:), allocatable :: md5
allocate (md5 (this%n), source=this%md5)
- if (md5(1) /= "tst ") call abort()
- if (md5(2) /= " ") call abort()
- if (md5(3) /= "fooblabar ") call abort()
+ if (md5(1) /= "tst ") STOP 1
+ if (md5(2) /= " ") STOP 2
+ if (md5(3) /= "fooblabar ") STOP 3
end subroutine t2_init
end module foo2
@@ -138,14 +138,14 @@ program test
call sel%init([2., 0., 3., 0., 4.])
- if (any(sel%map /= [1, 3, 5])) call abort()
- if (any(abs(sel%weight - [2., 3., 4.] / 9.) > 1E-6)) call abort()
+ if (any(sel%map /= [1, 3, 5])) STOP 4
+ if (any(abs(sel%weight - [2., 3., 4.] / 9.) > 1E-6)) STOP 5
phs_config%n_in = 2
allocate (phs_config%flv (phs_config%n_in, 1))
call phs_base_init (phs, phs_config)
- if (any(abs(phs%m_in - [42.0, 42.0]) > 1E-6)) call abort()
+ if (any(abs(phs%m_in - [42.0, 42.0]) > 1E-6)) STOP 6
o%n = 2
allocate (o%val(0:1,4))
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_source_7.f08 b/gcc/testsuite/gfortran.dg/allocate_with_source_7.f08
index 86df5319f25..f5b3da8c25d 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_source_7.f08
+++ b/gcc/testsuite/gfortran.dg/allocate_with_source_7.f08
@@ -26,7 +26,7 @@ program allocate_with_source_6
deallocate(a)
allocate(a, source=c)
allocate(m, source=[(I, I=1, num_params_used)])
- if (any(m /= [(I, I=1, num_params_used)])) call abort()
+ if (any(m /= [(I, I=1, num_params_used)])) STOP 1
deallocate(a,b,m)
call testArrays()
@@ -45,9 +45,9 @@ contains
select type (R => Y%X)
type is (real)
if (any(reshape(R, [15]) /= [5,5,5,5,5, 5,5,5,5,5, 5,5,5,5,5])) &
- call abort()
+ STOP 2
class default
- call abort()
+ STOP 3
end select
deallocate(Y%X)
@@ -55,9 +55,9 @@ contains
select type (R => Y%X)
type is (real)
if (any(reshape(R, [4]) /= [5,5,5,5])) &
- call abort()
+ STOP 4
class default
- call abort()
+ STOP 5
end select
deallocate(Y%X)
@@ -65,14 +65,14 @@ contains
select type (R => o%v)
type is (real)
if (any(R /= [5,5])) &
- call abort()
+ STOP 6
class default
- call abort()
+ STOP 7
end select
deallocate(o%v)
allocate(v, source=arr(2,1:5))
- if (any(v /= [5,5,5,5,5])) call abort()
+ if (any(v /= [5,5,5,5,5])) STOP 8
deallocate(v)
end subroutine testArrays
end
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_source_8.f08 b/gcc/testsuite/gfortran.dg/allocate_with_source_8.f08
index b3318669ddf..3d7c10d542b 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_source_8.f08
+++ b/gcc/testsuite/gfortran.dg/allocate_with_source_8.f08
@@ -17,60 +17,60 @@ program assumed_shape_01
integer, parameter :: lcim(2,10) = reshape([(i, i=1,10),(i,i=1,10)], [2,10])
allocate(iv, source= [ 1, 2, 3, 4])
- if (any(iv /= [ 1, 2, 3, 4])) call abort()
+ if (any(iv /= [ 1, 2, 3, 4])) STOP 1
deallocate(iv)
allocate(iv, source=(/(i, i=1,10)/))
- if (any(iv /= (/(i, i=1,10)/))) call abort()
+ if (any(iv /= (/(i, i=1,10)/))) STOP 2
! Now 2D
allocate(im, source= cim)
- if (any(im /= cim)) call abort()
+ if (any(im /= cim)) STOP 3
deallocate(im)
allocate(im, source= reshape([iv, iv], [2, size(iv, 1)]))
- if (any(im /= lcim)) call abort()
+ if (any(im /= lcim)) STOP 4
deallocate(im)
deallocate(iv)
allocate(u, source=[cstruct( 4, [1.1,2.2] )] )
- if (any(u(:)%i /= 4) .or. any(abs(u(1)%r(:) - [1.1,2.2]) > 1E-6)) call abort()
+ if (any(u(:)%i /= 4) .or. any(abs(u(1)%r(:) - [1.1,2.2]) > 1E-6)) STOP 5
deallocate (u)
allocate(iv, source= arrval())
- if (any(iv /= [ 1, 2, 4, 5, 6])) call abort()
+ if (any(iv /= [ 1, 2, 4, 5, 6])) STOP 6
! Check simple array assign
allocate(iv2, source=iv)
- if (any(iv2 /= [ 1, 2, 4, 5, 6])) call abort()
+ if (any(iv2 /= [ 1, 2, 4, 5, 6])) STOP 7
deallocate(iv, iv2)
! Now check for mold=
allocate(iv, mold= [ 1, 2, 3, 4])
- if (any(shape(iv) /= [4])) call abort()
+ if (any(shape(iv) /= [4])) STOP 8
deallocate(iv)
allocate(iv, mold=(/(i, i=1,10)/))
- if (any(shape(iv) /= [10])) call abort()
+ if (any(shape(iv) /= [10])) STOP 9
! Now 2D
allocate(im, mold= cim)
- if (any(shape(im) /= shape(cim))) call abort()
+ if (any(shape(im) /= shape(cim))) STOP 10
deallocate(im)
allocate(im, mold= reshape([iv, iv], [2, size(iv, 1)]))
- if (any(shape(im) /= shape(lcim))) call abort()
+ if (any(shape(im) /= shape(lcim))) STOP 11
deallocate(im)
deallocate(iv)
allocate(u, mold=[cstruct( 4, [1.1,2.2] )] )
- if (any(shape(u(1)%r(:)) /= 2)) call abort()
+ if (any(shape(u(1)%r(:)) /= 2)) STOP 12
deallocate (u)
allocate(iv, mold= arrval())
- if (any(shape(iv) /= [5])) call abort()
+ if (any(shape(iv) /= [5])) STOP 13
! Check simple array assign
allocate(iv2, mold=iv)
- if (any(shape(iv2) /= [5])) call abort()
+ if (any(shape(iv2) /= [5])) STOP 14
deallocate(iv, iv2)
call addData([4, 5])
@@ -87,23 +87,23 @@ contains
allocate (cP, source= P)
select type (cP)
type is (integer)
- if (any(cP /= [4,5])) call abort()
+ if (any(cP /= [4,5])) STOP 15
type is (character(*))
- if (len(cP) /= 3) call abort()
- if (any(cP /= ["foo", "bar"])) call abort()
+ if (len(cP) /= 3) STOP 16
+ if (any(cP /= ["foo", "bar"])) STOP 17
class default
- call abort()
+ STOP 18
end select
deallocate (cP)
allocate (cP, mold= P)
select type (cP)
type is (integer)
- if (any(size(cP) /= [2])) call abort()
+ if (any(size(cP) /= [2])) STOP 19
type is (character(*))
- if (len(cP) /= 3) call abort()
- if (any(size(cP) /= [2])) call abort()
+ if (len(cP) /= 3) STOP 20
+ if (any(size(cP) /= [2])) STOP 21
class default
- call abort()
+ STOP 22
end select
deallocate (cP)
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/allocate_with_source_9.f08 b/gcc/testsuite/gfortran.dg/allocate_with_source_9.f08
index aa7cb476879..5be70c99655 100644
--- a/gcc/testsuite/gfortran.dg/allocate_with_source_9.f08
+++ b/gcc/testsuite/gfortran.dg/allocate_with_source_9.f08
@@ -18,12 +18,12 @@ program main
ub = lb + 2
allocate(o1%acc, source=vec)
allocate(o2%acc, source=o1%acc(lb:ub))
- if (any (o2%acc /= [7, 8, 9])) call abort()
+ if (any (o2%acc /= [7, 8, 9])) STOP 1
block
real, dimension(0:n) :: a
real, dimension(:), allocatable :: c
call random_number(a)
allocate(c,source=a(:))
- if (any (abs(a - c) > 1E-6)) call abort()
+ if (any (abs(a - c) > 1E-6)) STOP 2
end block
end program main
diff --git a/gcc/testsuite/gfortran.dg/allocate_zerosize_1.f90 b/gcc/testsuite/gfortran.dg/allocate_zerosize_1.f90
index c482ea0f3b3..158624e86ee 100644
--- a/gcc/testsuite/gfortran.dg/allocate_zerosize_1.f90
+++ b/gcc/testsuite/gfortran.dg/allocate_zerosize_1.f90
@@ -9,11 +9,11 @@ program main
two = ' 2'
allocate (a(1:-1))
- if (size(a) /= 0) call abort
+ if (size(a) /= 0) STOP 1
deallocate (a)
allocate (b(1:-1,0:10))
- if (size(b) /= 0) call abort
+ if (size(b) /= 0) STOP 2
deallocate (b)
! Use variables for array bounds. The internal reads
@@ -21,11 +21,11 @@ program main
read (unit=one, fmt='(I2)') n
allocate (a(n:-1))
- if (size(a) /= 0) call abort
+ if (size(a) /= 0) STOP 3
deallocate (a)
read (unit=two, fmt='(I2)') m
allocate (b(1:3, m:0))
- if (size(b) /= 0) call abort
+ if (size(b) /= 0) STOP 4
deallocate (b)
end program main
diff --git a/gcc/testsuite/gfortran.dg/allocate_zerosize_3.f b/gcc/testsuite/gfortran.dg/allocate_zerosize_3.f
index 57f2d75b67c..7c4c8c22cfb 100644
--- a/gcc/testsuite/gfortran.dg/allocate_zerosize_3.f
+++ b/gcc/testsuite/gfortran.dg/allocate_zerosize_3.f
@@ -28,12 +28,12 @@ C CORRECT FOR THE ZERO DIMENSIONED TERM TO ALLOW AN EASIER VERIFY
DO J1 = 1,7
IVAL = 3-J1
- IF (ILA1(J1) .NE. IVAL) call abort ()
+ IF (ILA1(J1) .NE. IVAL) STOP 1
100 ENDDO
DO J1 = 1,7
IVAL = 2+J1
- IF (ILA2(J1) .NE. IVAL) call abort ()
+ IF (ILA2(J1) .NE. IVAL) STOP 2
101 ENDDO
END SUBROUTINE
diff --git a/gcc/testsuite/gfortran.dg/altreturn_3.f90 b/gcc/testsuite/gfortran.dg/altreturn_3.f90
index c445159872f..8da65a373a5 100644
--- a/gcc/testsuite/gfortran.dg/altreturn_3.f90
+++ b/gcc/testsuite/gfortran.dg/altreturn_3.f90
@@ -34,11 +34,11 @@ program test
implicit none
integer :: i = 0
call gen (i, *10)
- if (i /= -2) call abort ()
+ if (i /= -2) STOP 1
i = 2
call gen (i, *20)
10 continue
- call abort()
+ STOP 2
20 continue
- if (i /= -1) call abort ()
+ if (i /= -1) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/altreturn_5.f90 b/gcc/testsuite/gfortran.dg/altreturn_5.f90
index a552d3904ac..1a4b22d8888 100644
--- a/gcc/testsuite/gfortran.dg/altreturn_5.f90
+++ b/gcc/testsuite/gfortran.dg/altreturn_5.f90
@@ -26,7 +26,7 @@
EXTERNAL R
character(3) res
call PHLOAD (R, 1, res)
- if (res .ne. "one") call abort ()
+ if (res .ne. "one") STOP 1
CALL PHLOAD (R, 2, res)
- if (res .ne. "two") call abort ()
+ if (res .ne. "two") STOP 2
END
diff --git a/gcc/testsuite/gfortran.dg/altreturn_7.f90 b/gcc/testsuite/gfortran.dg/altreturn_7.f90
index 522d7677943..71b6a62c73b 100644
--- a/gcc/testsuite/gfortran.dg/altreturn_7.f90
+++ b/gcc/testsuite/gfortran.dg/altreturn_7.f90
@@ -27,6 +27,6 @@ END MODULE
USE TT
CALL M(1,*2)
- CALL ABORT()
+ STOP 1
2 CONTINUE
END
diff --git a/gcc/testsuite/gfortran.dg/and_or_xor.f90 b/gcc/testsuite/gfortran.dg/and_or_xor.f90
index 412008b77bf..75f842cc312 100644
--- a/gcc/testsuite/gfortran.dg/and_or_xor.f90
+++ b/gcc/testsuite/gfortran.dg/and_or_xor.f90
@@ -1,7 +1,7 @@
! { dg-do run }
program L
- if (and(.TRUE._1, .TRUE._1) .neqv. .true.) call abort
- if (or(.TRUE._1, .TRUE._1) .neqv. .true.) call abort
- if (xor(.TRUE._1, .TRUE._1) .neqv. .false.) call abort
+ if (and(.TRUE._1, .TRUE._1) .neqv. .true.) STOP 1
+ if (or(.TRUE._1, .TRUE._1) .neqv. .true.) STOP 2
+ if (xor(.TRUE._1, .TRUE._1) .neqv. .false.) STOP 3
end program L
diff --git a/gcc/testsuite/gfortran.dg/anint_1.f90 b/gcc/testsuite/gfortran.dg/anint_1.f90
index a6b92cbcd3a..c4176790ff6 100644
--- a/gcc/testsuite/gfortran.dg/anint_1.f90
+++ b/gcc/testsuite/gfortran.dg/anint_1.f90
@@ -12,5 +12,5 @@ PROGRAM Test
A = ANINT ( A , DP)
B = A
A = ANINT ( A)
- if (any (A .ne. B)) call abort ()
+ if (any (A .ne. B)) STOP 1
END PROGRAM Test
diff --git a/gcc/testsuite/gfortran.dg/any_all_1.f90 b/gcc/testsuite/gfortran.dg/any_all_1.f90
index f00c477b74a..169cb77625c 100644
--- a/gcc/testsuite/gfortran.dg/any_all_1.f90
+++ b/gcc/testsuite/gfortran.dg/any_all_1.f90
@@ -10,9 +10,9 @@ program main
i = 16843009 ! Initialize i to put junk into b
b = any(a>0.5,dim=1)
- if (b(2) .or. .not. b(1)) call abort
+ if (b(2) .or. .not. b(1)) STOP 1
i = 16843009 ! Initialize i to put junk into b
b = all(a>0.5,dim=1)
- if (b(2) .or. .not. b(1)) call abort
+ if (b(2) .or. .not. b(1)) STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/anyallcount_1.f90 b/gcc/testsuite/gfortran.dg/anyallcount_1.f90
index 9e8c7768b50..efc406d90bc 100644
--- a/gcc/testsuite/gfortran.dg/anyallcount_1.f90
+++ b/gcc/testsuite/gfortran.dg/anyallcount_1.f90
@@ -16,56 +16,56 @@ program main
m8 = a > 0
write (unit=res,fmt=f) any(m1,dim=1)
- if (res /= 'FTT') call abort
+ if (res /= 'FTT') STOP 1
write (unit=res,fmt=f) any(m2,dim=1)
- if (res /= 'FTT') call abort
+ if (res /= 'FTT') STOP 2
write (unit=res,fmt=f) any(m4,dim=1)
- if (res /= 'FTT') call abort
+ if (res /= 'FTT') STOP 3
write (unit=res,fmt=f) any(m8,dim=1)
- if (res /= 'FTT') call abort
+ if (res /= 'FTT') STOP 4
write (unit=res,fmt=f) any(m1,dim=2)
- if (res /= 'TTT') call abort
+ if (res /= 'TTT') STOP 5
write (unit=res,fmt=f) any(m2,dim=2)
- if (res /= 'TTT') call abort
+ if (res /= 'TTT') STOP 6
write (unit=res,fmt=f) any(m4,dim=2)
- if (res /= 'TTT') call abort
+ if (res /= 'TTT') STOP 7
write (unit=res,fmt=f) any(m8,dim=2)
- if (res /= 'TTT') call abort
+ if (res /= 'TTT') STOP 8
write (unit=res,fmt=f) all(m1,dim=1)
- if (res /= 'FFT') call abort
+ if (res /= 'FFT') STOP 9
write (unit=res,fmt=f) all(m2,dim=1)
- if (res /= 'FFT') call abort
+ if (res /= 'FFT') STOP 10
write (unit=res,fmt=f) all(m4,dim=1)
- if (res /= 'FFT') call abort
+ if (res /= 'FFT') STOP 11
write (unit=res,fmt=f) all(m8,dim=1)
- if (res /= 'FFT') call abort
+ if (res /= 'FFT') STOP 12
write (unit=res,fmt=f) all(m1,dim=2)
- if (res /= 'FFF') call abort
+ if (res /= 'FFF') STOP 13
write (unit=res,fmt=f) all(m2,dim=2)
- if (res /= 'FFF') call abort
+ if (res /= 'FFF') STOP 14
write (unit=res,fmt=f) all(m4,dim=2)
- if (res /= 'FFF') call abort
+ if (res /= 'FFF') STOP 15
write (unit=res,fmt=f) all(m8,dim=2)
- if (res /= 'FFF') call abort
+ if (res /= 'FFF') STOP 16
write (unit=res,fmt=g) count(m1,dim=1)
- if (res /= '023') call abort
+ if (res /= '023') STOP 17
write (unit=res,fmt=g) count(m2,dim=1)
- if (res /= '023') call abort
+ if (res /= '023') STOP 18
write (unit=res,fmt=g) count(m4,dim=1)
- if (res /= '023') call abort
+ if (res /= '023') STOP 19
write (unit=res,fmt=g) count(m8,dim=1)
- if (res /= '023') call abort
+ if (res /= '023') STOP 20
write (unit=res,fmt=g) count(m1,dim=2)
- if (res /= '221') call abort
+ if (res /= '221') STOP 21
write (unit=res,fmt=g) count(m2,dim=2)
- if (res /= '221') call abort
+ if (res /= '221') STOP 22
write (unit=res,fmt=g) count(m4,dim=2)
- if (res /= '221') call abort
+ if (res /= '221') STOP 23
write (unit=res,fmt=g) count(m8,dim=2)
- if (res /= '221') call abort
+ if (res /= '221') STOP 24
end program main
diff --git a/gcc/testsuite/gfortran.dg/append_1.f90 b/gcc/testsuite/gfortran.dg/append_1.f90
index 8b81bc38484..824b4185524 100644
--- a/gcc/testsuite/gfortran.dg/append_1.f90
+++ b/gcc/testsuite/gfortran.dg/append_1.f90
@@ -4,7 +4,7 @@
! { dg-do run }
subroutine failed
close (10,status='delete')
- call abort
+ STOP 1
end subroutine failed
integer,parameter :: n = 13
diff --git a/gcc/testsuite/gfortran.dg/argument_checking_1.f90 b/gcc/testsuite/gfortran.dg/argument_checking_1.f90
index b42047ae624..ec89b9708c6 100644
--- a/gcc/testsuite/gfortran.dg/argument_checking_1.f90
+++ b/gcc/testsuite/gfortran.dg/argument_checking_1.f90
@@ -7,15 +7,15 @@ program main
character :: digit_arr(10)
call copy(digit_string, digit_arr)
call copy(digit_arr,str)
- if(str /= '123456789') call abort()
+ if(str /= '123456789') STOP 1
digit_string = 'qwertasdf'
call copy2(digit_string, digit_arr)
call copy2(digit_arr,str)
- if(str /= 'qwertasdf') call abort()
+ if(str /= 'qwertasdf') STOP 2
digit_string = '1qayxsw23e'
call copy3("1qayxsw23e", digit_arr)
call copy3(digit_arr,str)
- if(str /= '1qayxsw23e') call abort()
+ if(str /= '1qayxsw23e') STOP 3
contains
subroutine copy(in, out)
character, dimension(*) :: in
diff --git a/gcc/testsuite/gfortran.dg/argument_checking_2.f90 b/gcc/testsuite/gfortran.dg/argument_checking_2.f90
index ba1dd633a47..848a7ac14f5 100644
--- a/gcc/testsuite/gfortran.dg/argument_checking_2.f90
+++ b/gcc/testsuite/gfortran.dg/argument_checking_2.f90
@@ -8,15 +8,15 @@ program main
character :: digit_arr(10)
call copy(digit_string, digit_arr) ! { dg-error "Scalar CHARACTER actual argument with array dummy argument 'in'" }
call copy(digit_arr,str) ! { dg-error "Scalar CHARACTER actual argument with array dummy argument 'out'" }
- if(str /= '123456789') call abort()
+ if(str /= '123456789') STOP 1
digit_string = 'qwertasdf'
call copy2(digit_string, digit_arr) ! { dg-error "Scalar CHARACTER actual argument with array dummy argument 'in'" }
call copy2(digit_arr,str) ! { dg-error "Scalar CHARACTER actual argument with array dummy argument 'out'" }
- if(str /= 'qwertasdf') call abort()
+ if(str /= 'qwertasdf') STOP 2
digit_string = '1qayxsw23e'
call copy('1qayxsw23e', digit_arr) ! { dg-error "Scalar CHARACTER actual argument with array dummy argument 'in'" }
call copy(digit_arr,str) ! { dg-error "Scalar CHARACTER actual argument with array dummy argument 'out'" }
- if(str /= '1qayxsw23e') call abort()
+ if(str /= '1qayxsw23e') STOP 3
contains
subroutine copy(in, out)
character, dimension(*) :: in
diff --git a/gcc/testsuite/gfortran.dg/argument_checking_8.f90 b/gcc/testsuite/gfortran.dg/argument_checking_8.f90
index fd1daa64f9e..25124dfa5a7 100644
--- a/gcc/testsuite/gfortran.dg/argument_checking_8.f90
+++ b/gcc/testsuite/gfortran.dg/argument_checking_8.f90
@@ -21,8 +21,8 @@ program test
character(10) astr
integer i
write(astr,'(a)') ouch('YOW! ','jerry ')
- if (astr(1:5) /= "3*%SY") call abort
+ if (astr(1:5) /= "3*%SY") STOP 1
do i=6,10
- if (astr(i:i) /= achar(0)) call abort
+ if (astr(i:i) /= achar(0)) STOP 2
end do
end program test
diff --git a/gcc/testsuite/gfortran.dg/arithmetic_if.f90 b/gcc/testsuite/gfortran.dg/arithmetic_if.f90
index 16dccae03fc..995d985b505 100644
--- a/gcc/testsuite/gfortran.dg/arithmetic_if.f90
+++ b/gcc/testsuite/gfortran.dg/arithmetic_if.f90
@@ -13,16 +13,16 @@ program pr28439
integer myfunc
if (myfunc(0)) 10, 20, 30 ! Should go to 30
-10 call abort
-20 call abort
+10 STOP 1
+20 STOP 2
30 if (myfunc(0)) 40, 50, 60 ! Should go to 50
-40 call abort
-60 call abort
+40 STOP 3
+60 STOP 4
50 if (myfunc(0)) 70, 80, 90 ! Should go to 70
-80 call abort
-90 call abort
+80 STOP 5
+90 STOP 6
70 continue
diff --git a/gcc/testsuite/gfortran.dg/array_1.f90 b/gcc/testsuite/gfortran.dg/array_1.f90
index 6609025a50e..e976d171b39 100644
--- a/gcc/testsuite/gfortran.dg/array_1.f90
+++ b/gcc/testsuite/gfortran.dg/array_1.f90
@@ -20,7 +20,7 @@ program arrpack
21, 22, 23, 24, 25, 26, &
31, 32, 33, 34, 35, 36, &
41, 42, 43, 44, 45, 46, &
- 51, 52, 53, 54, 55, 56 /))) call abort ()
+ 51, 52, 53, 54, 55, 56 /))) STOP 1
contains
diff --git a/gcc/testsuite/gfortran.dg/array_2.f90 b/gcc/testsuite/gfortran.dg/array_2.f90
index d182f044a7a..982daa75a91 100644
--- a/gcc/testsuite/gfortran.dg/array_2.f90
+++ b/gcc/testsuite/gfortran.dg/array_2.f90
@@ -11,7 +11,7 @@ program test
pre = 3.0
call EOS(N, rho, pre, cs, gamma)
if (abs(CS(1) - sqrt(gamma*pre(1)/rho(1))) > epsilon(cs)) &
- call abort()
+ STOP 1
contains
SUBROUTINE EOS(NODES, DENS, PRES, CS, CGAMMA)
IMPLICIT NONE
diff --git a/gcc/testsuite/gfortran.dg/array_alloc_1.f90 b/gcc/testsuite/gfortran.dg/array_alloc_1.f90
index 17be757a918..6b770779c6f 100644
--- a/gcc/testsuite/gfortran.dg/array_alloc_1.f90
+++ b/gcc/testsuite/gfortran.dg/array_alloc_1.f90
@@ -9,7 +9,7 @@ contains
integer, dimension (10) :: x
integer :: i
do i = 1, 10
- if (x (i) .ne. i * 100) call abort
+ if (x (i) .ne. i * 100) STOP 1
end do
end subroutine test
diff --git a/gcc/testsuite/gfortran.dg/array_alloc_2.f90 b/gcc/testsuite/gfortran.dg/array_alloc_2.f90
index a225854f097..c321518e2a2 100644
--- a/gcc/testsuite/gfortran.dg/array_alloc_2.f90
+++ b/gcc/testsuite/gfortran.dg/array_alloc_2.f90
@@ -11,9 +11,9 @@ contains
subroutine test (expected, x)
integer, dimension (:) :: x
integer :: i, expected
- if (size (x, 1) .ne. expected) call abort
+ if (size (x, 1) .ne. expected) STOP 1
do i = 1, expected
- if (x (i) .ne. i * 100) call abort
+ if (x (i) .ne. i * 100) STOP 2
end do
end subroutine test
diff --git a/gcc/testsuite/gfortran.dg/array_alloc_3.f90 b/gcc/testsuite/gfortran.dg/array_alloc_3.f90
index 5e27297b13c..97a90c50333 100644
--- a/gcc/testsuite/gfortran.dg/array_alloc_3.f90
+++ b/gcc/testsuite/gfortran.dg/array_alloc_3.f90
@@ -9,12 +9,12 @@ contains
integer, dimension (3) :: expected
integer :: i, i1, i2, i3
do i = 1, 3
- if (size (x, i) .ne. expected (i)) call abort
+ if (size (x, i) .ne. expected (i)) STOP 1
end do
do i1 = 1, expected (1)
do i2 = 1, expected (2)
do i3 = 1, expected (3)
- if (x (i1, i2, i3) .ne. i1 + i2 * 10 + i3 * 100) call abort
+ if (x (i1, i2, i3) .ne. i1 + i2 * 10 + i3 * 100) STOP 2
end do
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/array_assignment_1.F90 b/gcc/testsuite/gfortran.dg/array_assignment_1.F90
index 328107011cb..830b0caa504 100644
--- a/gcc/testsuite/gfortran.dg/array_assignment_1.F90
+++ b/gcc/testsuite/gfortran.dg/array_assignment_1.F90
@@ -6,7 +6,7 @@
! a temporary) match.
#define TST(b,c,d,e,f,g,r) a=init; a(b:c:d) = a(e:f:g); \
write(unit=line ,fmt="(9I1)") a;\
- if (line /= r) call abort ; \
+ if (line /= r) STOP 1; \
call mytst(b,c,d,e,f,g,r);
program main
@@ -35,5 +35,5 @@ subroutine mytst(b,c,d,e,f,g,r)
a = (/(i,i=1,9)/)
a(b:c:d) = a(e:f:g)
write (unit=line,fmt='(9I1)') a
- if (line /= r) call abort
+ if (line /= r) STOP 2
end subroutine mytst
diff --git a/gcc/testsuite/gfortran.dg/array_assignment_5.f90 b/gcc/testsuite/gfortran.dg/array_assignment_5.f90
index 6d585270cea..fffb6104f64 100644
--- a/gcc/testsuite/gfortran.dg/array_assignment_5.f90
+++ b/gcc/testsuite/gfortran.dg/array_assignment_5.f90
@@ -12,5 +12,5 @@ PROGRAM test
fileNames = (/ "file1", "file2" /)
fullNames = SPREAD(TRIM(pathName),1,2) // fileNames
if (fullNames(1) /= '/dir1/dir2/file1' .or. &
- & fullnames(2) /= '/dir1/dir2/file2') call abort
+ & fullnames(2) /= '/dir1/dir2/file2') STOP 1
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_1.f90 b/gcc/testsuite/gfortran.dg/array_constructor_1.f90
index 0ba8ba0d0a4..7654c10046a 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_1.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_1.f90
@@ -6,12 +6,12 @@ program bracket_array_constructor
a = [ 1, 2, 3, 4 ]
do i = 1, size(a)
- if (a(i) /= i) call abort()
+ if (a(i) /= i) STOP 1
end do
a = [ (/ 1, 2, 3, 4 /) ]
do i = 1, size(a)
- if (a(i) /= i) call abort()
+ if (a(i) /= i) STOP 2
end do
end program bracket_array_constructor
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_10.f90 b/gcc/testsuite/gfortran.dg/array_constructor_10.f90
index c439e0c7f7e..a1e55384c5c 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_10.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_10.f90
@@ -17,11 +17,11 @@ contains
integer, dimension (3:) :: values
integer :: order, i
- if (size (values, dim = 1) .ne. order * 3) call abort
+ if (size (values, dim = 1) .ne. order * 3) STOP 1
do i = 1, order
- if (values (i * 3) .ne. i) call abort
- if (values (i * 3 + 1) .ne. i) call abort
- if (values (i * 3 + 2) .ne. i * 2) call abort
+ if (values (i * 3) .ne. i) STOP 2
+ if (values (i * 3 + 1) .ne. i) STOP 3
+ if (values (i * 3 + 2) .ne. i * 2) STOP 4
end do
end subroutine test
end program main
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_11.f90 b/gcc/testsuite/gfortran.dg/array_constructor_11.f90
index 410fbcb7ddf..8816db5bbb6 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_11.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_11.f90
@@ -41,8 +41,8 @@ contains
last = 0
do i = from, to, step
last = last + 1
- if (values (last) .ne. i) call abort
+ if (values (last) .ne. i) STOP 1
end do
- if (size (values, dim = 1) .ne. last) call abort
+ if (size (values, dim = 1) .ne. last) STOP 2
end subroutine test
end program main
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_12.f90 b/gcc/testsuite/gfortran.dg/array_constructor_12.f90
index 082e90ecc0d..8d989649829 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_12.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_12.f90
@@ -43,9 +43,9 @@ contains
j = 1
do i = l, u, step
- if (a (j) .ne. i) call abort
+ if (a (j) .ne. i) STOP 1
j = j + 1
end do
- if (size (a, 1) .ne. j - 1) call abort
+ if (size (a, 1) .ne. j - 1) STOP 2
end subroutine test
end program main
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_15.f90 b/gcc/testsuite/gfortran.dg/array_constructor_15.f90
index 67f3aff390e..245f91f0b59 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_15.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_15.f90
@@ -1,6 +1,6 @@
! { dg-do compile }
! { dg-options "-O2 -fdump-tree-original" }
integer :: x(2,2)
- if (any(x(:,:) .ne. reshape ((/ 3, 1, 4, 1 /), (/ 2, 2 /)))) call abort ()
+ if (any(x(:,:) .ne. reshape ((/ 3, 1, 4, 1 /), (/ 2, 2 /)))) STOP 1
end
! { dg-final { scan-tree-dump-times "atmp" 0 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_16.f90 b/gcc/testsuite/gfortran.dg/array_constructor_16.f90
index 7c2e8d156c4..2d87680b5ab 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_16.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_16.f90
@@ -26,9 +26,9 @@ CONTAINS
ii = 0
iii = 0
CALL one
- IF (i .NE. 0) CALL ABORT ()
- IF (ii .NE. 99) CALL ABORT ()
- IF (iii .NE. 999) CALL ABORT ()
+ IF (i .NE. 0) STOP 1
+ IF (ii .NE. 99) STOP 2
+ IF (iii .NE. 999) STOP 3
END SUBROUTINE
END
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_17.f90 b/gcc/testsuite/gfortran.dg/array_constructor_17.f90
index 3ce7a91835d..37ac34af4c5 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_17.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_17.f90
@@ -9,7 +9,7 @@
CHARACTER(LEN = 8) :: str
J = 3
write (str,'(2A4)') (/( F(I, J), I = 1, 2)/)
- IF (str .NE. " ODD EVE") call abort ()
+ IF (str .NE. " ODD EVE") STOP 1
! Comment #1 from F-X Coudert (noted by T. Burnus) that
! actually exercises a different part of the bug.
@@ -33,8 +33,8 @@ CONTAINS
end function
subroutine gee(a)
character(*),dimension(1) :: a
- if(len (a) /= 3) call abort ()
- if(a(1) /= '123') call abort ()
+ if(len (a) /= 3) STOP 2
+ if(a(1) /= '123') STOP 3
end subroutine gee
END
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_19.f90 b/gcc/testsuite/gfortran.dg/array_constructor_19.f90
index 460a34f5c1b..f4af94bece7 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_19.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_19.f90
@@ -10,8 +10,8 @@
real, parameter :: x3(1) = -(/ x /)
real, parameter :: x4(2) = (/ x, 1. /) + (/ 2, (/3/) /)
- if (any (x1 /= (/43./))) call abort
- if (any (x2 /= (/43./))) call abort
- if (any (x3 /= (/-42./))) call abort
- if (any (x4 /= (/44., 4./))) call abort
+ if (any (x1 /= (/43./))) STOP 1
+ if (any (x2 /= (/43./))) STOP 2
+ if (any (x3 /= (/-42./))) STOP 3
+ if (any (x4 /= (/44., 4./))) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_23.f b/gcc/testsuite/gfortran.dg/array_constructor_23.f
index fa0a28a1f17..43fa3a87724 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_23.f
+++ b/gcc/testsuite/gfortran.dg/array_constructor_23.f
@@ -20,7 +20,7 @@
DDA1 = ATAN2 ((/(REAL(J1,KV),J1=1,10)/),
$ REAL((/(J1,J1=nf10,nf1,mf1)/), KV)) !fails
DDA2 = ATAN2 (DDA, DDA(10:1:-1))
- if (any (DDA1 - DDA2 .gt. epsilon(dval))) call abort ()
+ if (any (DDA1 - DDA2 .gt. epsilon(dval))) STOP 1
END
subroutine FA6077 (nf10,nf1,mf1, ida)
@@ -29,7 +29,7 @@
IDA1 = IEOR((/1,2,3,4,5,6,7,8,9,10/),
$ (/(IDA(J1),J1=10,1,-1)/) )
IDA2 = IEOR ((/1,2,3,4,5,6,7,8,9,10/), (/10,9,8,7,6,5,4,3,2,1/) )
- if (any (ida1 .ne. ida2)) call abort ()
+ if (any (ida1 .ne. ida2)) STOP 2
END SUBROUTINE
subroutine fa2083
@@ -42,7 +42,7 @@
QDA1 = MOD ( 1.1_k*( QDA(1) -5.0_k), P=( QDA -2.5_k))
DO J1 = 1,10
QVAL = MOD(1.1_k*(QDA(1)-5.0_k),P=(QDA(J1)-2.5_k))
- if (qval - qda1(j1) .gt. epsilon(qval)) call abort ()
+ if (qval - qda1(j1) .gt. epsilon(qval)) STOP 3
ENDDO
END
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_24.f b/gcc/testsuite/gfortran.dg/array_constructor_24.f
index ee7b55694a4..09613975612 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_24.f
+++ b/gcc/testsuite/gfortran.dg/array_constructor_24.f
@@ -19,7 +19,7 @@
DDA1 = ATAN2 ((/(REAL(J1,KV),J1=1,10)/),
$ REAL((/(J1,J1=nf10,nf1,mf1)/), KV)) !fails
DDA2 = ATAN2 (DDA, DDA(10:1:-1))
- if (any (abs(DDA1-DDA2) .gt. 1.0e-6)) call abort ()
+ if (any (abs(DDA1-DDA2) .gt. 1.0e-6)) STOP 1
END
subroutine FA6077 (nf10,nf1,mf1, ida)
@@ -28,7 +28,7 @@
IDA1 = IEOR((/1,2,3,4,5,6,7,8,9,10/),
$ (/(IDA(J1),J1=10,1,-1)/) )
IDA2 = IEOR ((/1,2,3,4,5,6,7,8,9,10/), (/10,9,8,7,6,5,4,3,2,1/) )
- if (any (ida1 .ne. ida2)) call abort ()
+ if (any (ida1 .ne. ida2)) STOP 2
END SUBROUTINE
subroutine fa2083
@@ -41,7 +41,7 @@
QDA1 = MOD ( 1.1_k*( QDA(1) -5.0_k), P=( QDA -2.5_k))
DO J1 = 1,10
QVAL = MOD(1.1_k*(QDA(1)-5.0_k),P=(QDA(J1)-2.5_k))
- if (qval .ne. qda1(j1)) call abort ()
+ if (qval .ne. qda1(j1)) STOP 3
ENDDO
END
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_32.f90 b/gcc/testsuite/gfortran.dg/array_constructor_32.f90
index 5cf49aee744..5b2dbf29da9 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_32.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_32.f90
@@ -20,9 +20,9 @@
data (b(i), i = 1, n) /a(d1), a(d2), a(d3)/
data (z(i), i = 1, n) / 1, 2, 3/
- if (any(z.ne.[1, 2, 3])) call abort
+ if (any(z.ne.[1, 2, 3])) STOP 1
if (any(b(1)%x.ne.[1, 2, 3]) .or. &
any(b(2)%x.ne.[4, 5, 6]) .or. &
- any(b(3)%x.ne.[7, 8, 9])) call abort
+ any(b(3)%x.ne.[7, 8, 9])) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_36.f90 b/gcc/testsuite/gfortran.dg/array_constructor_36.f90
index a74d256d95e..87b91a62613 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_36.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_36.f90
@@ -15,7 +15,7 @@ program main
q = 'xy'
i = 2
write (buffer, fmt) (/ trim(q), 'ae' /)//'c'
- if (buffer .ne. test) Call abort
+ if (buffer .ne. test) STOP 1
write (buffer, FMT) (/ q(1:i), 'ae' /)//'c'
- if (buffer .ne. test) Call abort
+ if (buffer .ne. test) STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_39.f90 b/gcc/testsuite/gfortran.dg/array_constructor_39.f90
index 83eff05ddca..90c2d545c18 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_39.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_39.f90
@@ -7,7 +7,7 @@
! Original testcase by Vittorio Zecca <zeccav@gmail.com>
!
I=5
- if (any((/(i,i=1,I)/) /= (/1,2,3,4,5/))) call abort ! { dg-warning "final expression references control variable" }
- if (I /= 5) call abort
+ if (any((/(i,i=1,I)/) /= (/1,2,3,4,5/))) STOP 1! { dg-warning "final expression references control variable" }
+ if (I /= 5) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_4.f90 b/gcc/testsuite/gfortran.dg/array_constructor_4.f90
index cae65156793..1c3fc2c1bd8 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_4.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_4.f90
@@ -6,18 +6,18 @@ integer :: i(5), n, m, l, k
n = 5
i = (/ (m, m = n, 1, -1) /)
-if (any (i /= (/ 5, 4, 3, 2, 1 /))) call abort
+if (any (i /= (/ 5, 4, 3, 2, 1 /))) STOP 1
k = 1
i(5:1:-1) = (/ (m, m = n, k, -1) /)
-if (any (i /= (/ 1, 2, 3, 4, 5 /))) call abort
+if (any (i /= (/ 1, 2, 3, 4, 5 /))) STOP 2
l = -1
i = (/ (m, m = n, 1, l) /)
-if (any (i /= (/ 5, 4, 3, 2, 1 /))) call abort
+if (any (i /= (/ 5, 4, 3, 2, 1 /))) STOP 3
i(5:1:-1) = (/ (m, m = n, k, l) /)
-if (any (i /= (/ 1, 2, 3, 4, 5 /))) call abort
+if (any (i /= (/ 1, 2, 3, 4, 5 /))) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_40.f90 b/gcc/testsuite/gfortran.dg/array_constructor_40.f90
index 63c1259bf3d..ad42f9abcb4 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_40.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_40.f90
@@ -44,8 +44,8 @@ program main
lo = .false.
lo(3,3) = .true.
call bar(a,b,c,lo)
- if (c /= 1) call abort
+ if (c /= 1) STOP 1
call baz(a,b,res);
- if (abs(res - 8.1) > 1e-5) call abort
+ if (abs(res - 8.1) > 1e-5) STOP 2
end program main
! { dg-final { scan-tree-dump-times "while" 5 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_44.f90 b/gcc/testsuite/gfortran.dg/array_constructor_44.f90
index e0cffd168be..71cabab9f7a 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_44.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_44.f90
@@ -8,5 +8,5 @@
s = 2.0
m = 4
res = SUM([(s**(REAL(k-1)/REAL(m-1)),k=1,m)])
- if (abs(res - 5.84732246) > 1e-6) call abort
+ if (abs(res - 5.84732246) > 1e-6) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_45.f90 b/gcc/testsuite/gfortran.dg/array_constructor_45.f90
index fdf049c378e..34d1b06d5d4 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_45.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_45.f90
@@ -11,5 +11,5 @@ program main
s = 1000.
res = SUM([3.0,(s**(REAL(k-1)/REAL(m-1)),k=1,m),17.])
- if (abs(res - 1021.)>1e-4) call abort
+ if (abs(res - 1021.)>1e-4) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_46.f90 b/gcc/testsuite/gfortran.dg/array_constructor_46.f90
index 4fac322c557..f6511fcb736 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_46.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_46.f90
@@ -9,6 +9,6 @@ program main
data a /2._dp,3._dp,5._dp,7._dp/
thirteen = 13._dp
- if (abs (product([[11._dp, thirteen], a]) - 30030._dp) > 1e-8) call abort
+ if (abs (product([[11._dp, thirteen], a]) - 30030._dp) > 1e-8) STOP 1
end program main
! { dg-final { scan-tree-dump-times "while" 2 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_47.f90 b/gcc/testsuite/gfortran.dg/array_constructor_47.f90
index 9570c66017d..19ec8c8fd8f 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_47.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_47.f90
@@ -10,7 +10,7 @@ program main
data a /2._dp,3._dp,5._dp,7._dp/
thirteen = 13._dp
- if (abs (product([[sum([eleven_ones()]), thirteen], a]) - 30030._dp) > 1e-8) call abort
+ if (abs (product([[sum([eleven_ones()]), thirteen], a]) - 30030._dp) > 1e-8) STOP 1
contains
function eleven_ones()
real(kind=dp) :: eleven_ones(11)
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_49.f90 b/gcc/testsuite/gfortran.dg/array_constructor_49.f90
index 0f5036a03da..bfba188e9dc 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_49.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_49.f90
@@ -7,6 +7,6 @@ program t
integer :: ndim=2, ndfp=4, i
character (len=8) :: line
write (unit=line,fmt='(4I2)') (/ ( i, i = 1, ndfp ) /) + ndim
- if (line /= ' 3 4 5 6') call abort
+ if (line /= ' 3 4 5 6') STOP 1
end program t
! { dg-final { scan-tree-dump-times "__var" 3 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_5.f90 b/gcc/testsuite/gfortran.dg/array_constructor_5.f90
index 8b8f6b0414b..773128fada5 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_5.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_5.f90
@@ -6,6 +6,6 @@ program array_constructor
i = 6
a = (/ 1, 2, 3, 4, 5, i /)
do i = 1, 6
- if (a(i) /= i) call abort()
+ if (a(i) /= i) STOP 1
end do
end program array_constructor
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_50.f90 b/gcc/testsuite/gfortran.dg/array_constructor_50.f90
index c22c980edde..843031fa370 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_50.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_50.f90
@@ -15,7 +15,7 @@
a = 2
ra = (/ (any(a(i).eq.(/1,2,3/)) ,i=1,n) /)
- if (.not. all(ra)) call abort
+ if (.not. all(ra)) STOP 1
rs = any ( (/ (any(a(i).eq.(/1,2,3/)) ,i=1,n) /) )
- if (.not. rs) call abort
+ if (.not. rs) STOP 2
end program test
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_6.f90 b/gcc/testsuite/gfortran.dg/array_constructor_6.f90
index 177fb20ee7a..a652dacea56 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_6.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_6.f90
@@ -17,9 +17,9 @@ contains
integer, dimension (:) :: values
integer :: order, i
- if (size (values, dim = 1) .ne. order) call abort
+ if (size (values, dim = 1) .ne. order) STOP 1
do i = 1, order
- if (values (i) .ne. i * 2) call abort
+ if (values (i) .ne. i * 2) STOP 2
end do
end subroutine test
end program main
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_7.f90 b/gcc/testsuite/gfortran.dg/array_constructor_7.f90
index 65ec26c8750..8046ae4ee95 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_7.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_7.f90
@@ -16,10 +16,10 @@ contains
integer, dimension (:) :: values
integer :: order, i, j
- if (size (values, dim = 1) .ne. order * (order + 1) / 2) call abort
+ if (size (values, dim = 1) .ne. order * (order + 1) / 2) STOP 1
do i = 1, order
do j = 1, i
- if (values (i * (i - 1) / 2 + j) .ne. (j + 100) * i) call abort
+ if (values (i * (i - 1) / 2 + j) .ne. (j + 100) * i) STOP 2
end do
end do
end subroutine test
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_8.f90 b/gcc/testsuite/gfortran.dg/array_constructor_8.f90
index 0ecebbca9f8..49013076795 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_8.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_8.f90
@@ -35,12 +35,12 @@ contains
integer, dimension (:) :: values
integer :: order, repeat, trail, i
- if (size (values, dim = 1) .ne. order * repeat + trail) call abort
+ if (size (values, dim = 1) .ne. order * repeat + trail) STOP 1
do i = 1, order * repeat
- if (values (i) .ne. mod (i - 1, repeat) + 1) call abort
+ if (values (i) .ne. mod (i - 1, repeat) + 1) STOP 2
end do
do i = 1, trail
- if (values (i + order * repeat) .ne. i * 100) call abort
+ if (values (i + order * repeat) .ne. i * 100) STOP 3
end do
end subroutine test
end program main
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_9.f90 b/gcc/testsuite/gfortran.dg/array_constructor_9.f90
index 71e939bf0db..2f92fe0f284 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_9.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_9.f90
@@ -29,15 +29,15 @@ contains
do i = 1, order
do j = 1, prefix
last = last + 1
- if (values (last) .ne. 1.5) call abort
+ if (values (last) .ne. 1.5) STOP 1
end do
do j = 1, i + 1
do k = 1, i
last = last + 1
- if (values (last) .ne. j + k * k) call abort
+ if (values (last) .ne. j + k * k) STOP 2
end do
end do
end do
- if (size (values, dim = 1) .ne. last) call abort
+ if (size (values, dim = 1) .ne. last) STOP 3
end subroutine test
end program main
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_type_1.f03 b/gcc/testsuite/gfortran.dg/array_constructor_type_1.f03
index fc8813cc561..07ecbccfa3d 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_type_1.f03
+++ b/gcc/testsuite/gfortran.dg/array_constructor_type_1.f03
@@ -12,6 +12,6 @@ PROGRAM test
IF (array(1) /= 18 .OR. array(2) /= 12 .OR. &
array(3) /= 31 .OR. array(4) /= 3 .OR. array(5) /= 42) THEN
- CALL abort()
+ STOP 1
END IF
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_type_10.f03 b/gcc/testsuite/gfortran.dg/array_constructor_type_10.f03
index f4dfae2bd79..ab0190fa7fe 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_type_10.f03
+++ b/gcc/testsuite/gfortran.dg/array_constructor_type_10.f03
@@ -17,7 +17,7 @@ CONTAINS
INTEGER :: n
arr = [ character(len=n) :: s, s ]
IF (arr(1) /= shouldBe .OR. arr(2) /= shouldBe) THEN
- CALL abort ()
+ STOP 1
END IF
END SUBROUTINE foo
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_type_11.f03 b/gcc/testsuite/gfortran.dg/array_constructor_type_11.f03
index e27515c7d7a..e980158d642 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_type_11.f03
+++ b/gcc/testsuite/gfortran.dg/array_constructor_type_11.f03
@@ -6,6 +6,6 @@
!
integer :: i(3)
i(3:2) = (/ integer :: /)
- if (len((/ character(5) :: /)) /= 5) call abort()
- if (kind((/ integer(8) :: /)) /= 8) call abort()
+ if (len((/ character(5) :: /)) /= 5) STOP 1
+ if (kind((/ integer(8) :: /)) /= 8) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_type_12.f03 b/gcc/testsuite/gfortran.dg/array_constructor_type_12.f03
index e06fd47991a..a59734fdb8d 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_type_12.f03
+++ b/gcc/testsuite/gfortran.dg/array_constructor_type_12.f03
@@ -8,5 +8,5 @@ real :: a(3)
integer :: j(3)
a = (/ integer :: 1.4, 2.2, 3.33 /)
j = (/ 1.4, 2.2, 3.33 /)
-if( any(a /= j )) call abort()
+if( any(a /= j )) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_type_13.f90 b/gcc/testsuite/gfortran.dg/array_constructor_type_13.f90
index eab35ccd191..a6a64c0e825 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_type_13.f90
+++ b/gcc/testsuite/gfortran.dg/array_constructor_type_13.f90
@@ -10,5 +10,5 @@ real :: a(3)
integer :: j(3)
a = (/ integer :: 1.4, 2.2, 3.33 /) ! { dg-error "Fortran 2003" }
j = (/ 1.4, 2.2, 3.33 /)
-if( any(a /= j )) call abort()
+if( any(a /= j )) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_type_14.f03 b/gcc/testsuite/gfortran.dg/array_constructor_type_14.f03
index 0e24334dcfc..c55d25c3328 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_type_14.f03
+++ b/gcc/testsuite/gfortran.dg/array_constructor_type_14.f03
@@ -19,6 +19,6 @@ PROGRAM test
arr = (/ foo :: x, foo(0, 1.) /)
IF (arr(1)%i /= 42 .OR. arr(1)%x /= 42. .OR. &
arr(2)%i /= 0 .OR. arr(2)%x /= 1.) THEN
- CALL abort()
+ STOP 1
END IF
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_type_16.f03 b/gcc/testsuite/gfortran.dg/array_constructor_type_16.f03
index a6950997e56..ec6e21f4c3f 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_type_16.f03
+++ b/gcc/testsuite/gfortran.dg/array_constructor_type_16.f03
@@ -10,16 +10,16 @@ PROGRAM test
CHARACTER(len=6) :: carr(3)
arr = (/ INTEGER(KIND=8) :: 4, [ INTEGER(KIND=4) :: 42, 12 ] /)
- IF (arr(1) /= 4 .OR. arr(2) /= 42 .OR. arr(3) /= 12) CALL abort()
+ IF (arr(1) /= 4 .OR. arr(2) /= 42 .OR. arr(3) /= 12) STOP 1
arr = (/ INTEGER(KIND=8) :: [ INTEGER(KIND=4) :: 4, 42, 12 ] /)
- IF (arr(1) /= 4 .OR. arr(2) /= 42 .OR. arr(3) /= 12) CALL abort()
+ IF (arr(1) /= 4 .OR. arr(2) /= 42 .OR. arr(3) /= 12) STOP 2
arr = (/ INTEGER(KIND=8) :: [ INTEGER(KIND=4) :: 4, 42 ], 12 /)
- IF (arr(1) /= 4 .OR. arr(2) /= 42 .OR. arr(3) /= 12) CALL abort()
+ IF (arr(1) /= 4 .OR. arr(2) /= 42 .OR. arr(3) /= 12) STOP 3
arr = (/ INTEGER(KIND=8) :: [ INTEGER(KIND=4) :: ], 4, 42, 12 /)
- IF (arr(1) /= 4 .OR. arr(2) /= 42 .OR. arr(3) /= 12) CALL abort()
+ IF (arr(1) /= 4 .OR. arr(2) /= 42 .OR. arr(3) /= 12) STOP 4
carr = [ CHARACTER(len=6) :: "foo", [ CHARACTER(len=4) :: "foobar", "xyz" ] ]
IF (carr(1) /= "foo" .OR. carr(2) /= "foob" .OR. carr(3) /= "xyz") THEN
- CALL abort()
+ STOP 5
END IF
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_type_2.f03 b/gcc/testsuite/gfortran.dg/array_constructor_type_2.f03
index 49255505552..403013be396 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_type_2.f03
+++ b/gcc/testsuite/gfortran.dg/array_constructor_type_2.f03
@@ -8,13 +8,13 @@ program test
implicit none
character(15) :: a(3)
a = (/ character(len=7) :: 'Takata', 'Tanaka', 'Hayashi' /)
- if ( len([ character(len=7) :: ]) /= 7) call abort()
- if ( size([ integer :: ]) /= 0) call abort()
+ if ( len([ character(len=7) :: ]) /= 7) STOP 1
+ if ( size([ integer :: ]) /= 0) STOP 2
if( a(1) /= 'Takata' .or. a(1)(7:7) /= achar(32) &
.or. a(1)(15:15) /= achar(32) &
.or. a(2) /= 'Tanaka' .or. a(2)(7:7) /= achar(32) &
.or. a(2)(15:15) /= achar(32) &
.or. a(3) /= 'Hayashi' .or. a(3)(8:8) /= achar(32) &
.or. a(3)(15:15) /= achar(32))&
- call abort()
+ STOP 3
end program test
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_type_22.f03 b/gcc/testsuite/gfortran.dg/array_constructor_type_22.f03
index 9122eb51e86..6562297e6ca 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_type_22.f03
+++ b/gcc/testsuite/gfortran.dg/array_constructor_type_22.f03
@@ -24,6 +24,6 @@ program foo
p = [real(kind=4) :: x, y]
q = [real(kind=8) :: x, y]
- if (any(p .ne. r2)) call abort
- if (any(q .ne. r3)) call abort
+ if (any(p .ne. r2)) STOP 1
+ if (any(q .ne. r3)) STOP 2
end program foo
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_type_3.f03 b/gcc/testsuite/gfortran.dg/array_constructor_type_3.f03
index bebaea5c5d9..e8d10bf37f6 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_type_3.f03
+++ b/gcc/testsuite/gfortran.dg/array_constructor_type_3.f03
@@ -11,6 +11,6 @@ PROGRAM test
array = (/ 5, [INTEGER ::], 6 /)
IF (array(1) /= 5 .OR. array(2) /= 6) THEN
- CALL abort()
+ STOP 1
END IF
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_type_4.f03 b/gcc/testsuite/gfortran.dg/array_constructor_type_4.f03
index d804bfada1b..8e54fc5782b 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_type_4.f03
+++ b/gcc/testsuite/gfortran.dg/array_constructor_type_4.f03
@@ -10,6 +10,6 @@ PROGRAM test
array = [ INTEGER ]
IF (array(1) /= 42) THEN
- CALL abort()
+ STOP 1
END IF
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_type_5.f03 b/gcc/testsuite/gfortran.dg/array_constructor_type_5.f03
index 98ddfa38e49..905f1d27551 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_type_5.f03
+++ b/gcc/testsuite/gfortran.dg/array_constructor_type_5.f03
@@ -14,5 +14,5 @@ program test
.or. a(2)(15:15) /= achar(32) &
.or. a(3) /= 'Hay' .or. a(3)(4:4) /= achar(32) &
.or. a(3)(15:15) /= achar(32))&
- call abort()
+ STOP 1
end program test
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_type_6.f03 b/gcc/testsuite/gfortran.dg/array_constructor_type_6.f03
index df784f872ba..70211d5628c 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_type_6.f03
+++ b/gcc/testsuite/gfortran.dg/array_constructor_type_6.f03
@@ -14,17 +14,17 @@ program test
a = (/ character(len=7) :: trim(b(1)), trim(b(2)), trim(b(3)) /)
if (a(1) /= 'Takata' .or. a(2) /= 'Tanaka' .or. a(3) /= 'Hayashi') then
- call abort ()
+ STOP 1
end if
a = (/ character(len=2) :: trim(b(1)), trim(b(2)), trim(b(3)) /)
if (a(1) /= 'Ta' .or. a(2) /= 'Ta' .or. a(3) /= 'Ha') then
- call abort ()
+ STOP 2
end if
a = (/ character(len=8) :: trim(b(1)), trim(b(2)), trim(b(3)) /)
if (a(1) /= 'Takata' .or. a(2) /= 'Tanaka' .or. a(3) /= 'Hayashi') then
- call abort ()
+ STOP 3
end if
end program test
diff --git a/gcc/testsuite/gfortran.dg/array_constructor_type_7.f03 b/gcc/testsuite/gfortran.dg/array_constructor_type_7.f03
index 8fb210a68c6..13604ee3183 100644
--- a/gcc/testsuite/gfortran.dg/array_constructor_type_7.f03
+++ b/gcc/testsuite/gfortran.dg/array_constructor_type_7.f03
@@ -17,7 +17,7 @@ CONTAINS
INTEGER :: n
arr = [ character(len=n) :: 'test', s ]
IF (arr(1) /= a1 .OR. arr(2) /= a2) THEN
- CALL abort ()
+ STOP 1
END IF
END SUBROUTINE foo
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/array_function_1.f90 b/gcc/testsuite/gfortran.dg/array_function_1.f90
index 281ae88b852..34f363495d3 100644
--- a/gcc/testsuite/gfortran.dg/array_function_1.f90
+++ b/gcc/testsuite/gfortran.dg/array_function_1.f90
@@ -8,16 +8,16 @@ program array_function_1
a = (/ 1, 2, 3, 4, 5 /)
b = f(a(l:u) - 2)
- if (b /= 0) call abort
+ if (b /= 0) STOP 1
b = f(a(4:2) - 2)
- if (b /= 0) call abort
+ if (b /= 0) STOP 2
b = f(a(u:l) - 2)
- if (b /= 3) call abort
+ if (b /= 3) STOP 3
b = f(a(2:4) - 2)
- if (b /= 3) call abort
+ if (b /= 3) STOP 4
contains
integer function f(x)
diff --git a/gcc/testsuite/gfortran.dg/array_function_5.f90 b/gcc/testsuite/gfortran.dg/array_function_5.f90
index 9c95f800517..c5e5aa0de3a 100644
--- a/gcc/testsuite/gfortran.dg/array_function_5.f90
+++ b/gcc/testsuite/gfortran.dg/array_function_5.f90
@@ -13,5 +13,5 @@ program bug
matB=matmul(transpose(0.5*matA),matA)
matC = transpose(0.5*matA)
matC = matmul(matC, matA)
- if (any(matB.ne.matC)) call abort()
+ if (any(matB.ne.matC)) STOP 1
end program bug
diff --git a/gcc/testsuite/gfortran.dg/array_initializer_1.f90 b/gcc/testsuite/gfortran.dg/array_initializer_1.f90
index 3347758dcd8..d4f5e940c10 100644
--- a/gcc/testsuite/gfortran.dg/array_initializer_1.f90
+++ b/gcc/testsuite/gfortran.dg/array_initializer_1.f90
@@ -21,15 +21,15 @@
character(4), parameter :: chrt(2) = (/chr(2:2)(2:3), chr(ii-1)(3:ii)/)
character(2), parameter :: chrx(2) = (/(chr(i)(i:i+1), i=2,3)/)
- if (any (y .ne. (/5., 6., 15., 16./))) call abort ()
- if (any (z .ne. (/11., 12./))) call abort ()
- if (any (r .ne. (/1., 2., 6., 7., 11., 12./))) call abort ()
+ if (any (y .ne. (/5., 6., 15., 16./))) STOP 1
+ if (any (z .ne. (/11., 12./))) STOP 2
+ if (any (r .ne. (/1., 2., 6., 7., 11., 12./))) STOP 3
if (any (s .ne. (/11., 7., 3., 16., 12., 8., 4., &
- 11., 7., 16., 12., 8. /))) call abort ()
+ 11., 7., 16., 12., 8. /))) STOP 4
- if (any (t .ne. (/11., 12., 8., 6., 11., 12., 27., 15. /))) call abort ()
+ if (any (t .ne. (/11., 12., 8., 6., 11., 12., 27., 15. /))) STOP 5
- if (chrs .ne. "noef") call abort ()
- if (any (chrt .ne. (/"fg", "kl"/))) call abort ()
- if (any (chrx .ne. (/"fg", "kl"/))) call abort ()
+ if (chrs .ne. "noef") STOP 6
+ if (any (chrt .ne. (/"fg", "kl"/))) STOP 7
+ if (any (chrx .ne. (/"fg", "kl"/))) STOP 8
end
diff --git a/gcc/testsuite/gfortran.dg/array_initializer_2.f90 b/gcc/testsuite/gfortran.dg/array_initializer_2.f90
index ef30b84d409..331678dabfb 100644
--- a/gcc/testsuite/gfortran.dg/array_initializer_2.f90
+++ b/gcc/testsuite/gfortran.dg/array_initializer_2.f90
@@ -21,11 +21,11 @@
!
! PR28496
!
- if (any (b .ne. (/1,2,3/))) call abort ()
- if (any (reshape(d,(/6/)) .ne. (/3, 2, 6, 5, 9, 8/))) call abort ()
- if (any (reshape(f,(/6/)) .ne. (/2, 1, 5, 4, 8, 7/))) call abort ()
+ if (any (b .ne. (/1,2,3/))) STOP 1
+ if (any (reshape(d,(/6/)) .ne. (/3, 2, 6, 5, 9, 8/))) STOP 2
+ if (any (reshape(f,(/6/)) .ne. (/2, 1, 5, 4, 8, 7/))) STOP 3
!
! PR29975
!
- IF (all(h(2:2) /= g(3:4))) call abort ()
+ IF (all(h(2:2) /= g(3:4))) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/array_memcpy_5.f90 b/gcc/testsuite/gfortran.dg/array_memcpy_5.f90
index 40fb6957a0d..cda4bbef0df 100644
--- a/gcc/testsuite/gfortran.dg/array_memcpy_5.f90
+++ b/gcc/testsuite/gfortran.dg/array_memcpy_5.f90
@@ -14,9 +14,9 @@ program main
a%i = 0
print *, a
a%i = (/ 12, 2/)
- if (any (a%c .ne. (/"uvw", "xyz"/))) call abort ()
- if (any (a%i .ne. (/12, 2/))) call abort ()
+ if (any (a%c .ne. (/"uvw", "xyz"/))) STOP 1
+ if (any (a%i .ne. (/12, 2/))) STOP 2
a%i = b%i
- if (any (a%c .ne. (/"uvw", "xyz"/))) call abort ()
- if (any (a%i .ne. (/101, 102/))) call abort ()
+ if (any (a%c .ne. (/"uvw", "xyz"/))) STOP 3
+ if (any (a%i .ne. (/101, 102/))) STOP 4
end program main
diff --git a/gcc/testsuite/gfortran.dg/array_memset_2.f90 b/gcc/testsuite/gfortran.dg/array_memset_2.f90
index 125b5685464..06f33653d7d 100644
--- a/gcc/testsuite/gfortran.dg/array_memset_2.f90
+++ b/gcc/testsuite/gfortran.dg/array_memset_2.f90
@@ -25,11 +25,11 @@ program test
d(:,1) = 0. ! This can't be otimized to a memset.
call bar(e)
- if (any(a /= reshape((/ 0.0, 1.0, 0.0, 1.0/), shape(a)))) call abort
- if (any(b /= 0.)) call abort
- if (any(c /= 0.)) call abort
- if (any(d /= reshape((/ 0.0, 0.0, 1.0, 1.0/), shape(d)))) call abort
- if (any(e /= reshape((/ 0.0, 1.0, 0.0, 1.0/), shape(e)))) call abort
+ if (any(a /= reshape((/ 0.0, 1.0, 0.0, 1.0/), shape(a)))) STOP 1
+ if (any(b /= 0.)) STOP 2
+ if (any(c /= 0.)) STOP 3
+ if (any(d /= reshape((/ 0.0, 0.0, 1.0, 1.0/), shape(d)))) STOP 4
+ if (any(e /= reshape((/ 0.0, 1.0, 0.0, 1.0/), shape(e)))) STOP 5
end program
diff --git a/gcc/testsuite/gfortran.dg/array_reference_1.f90 b/gcc/testsuite/gfortran.dg/array_reference_1.f90
index 6de09919f17..246f8ceacaa 100644
--- a/gcc/testsuite/gfortran.dg/array_reference_1.f90
+++ b/gcc/testsuite/gfortran.dg/array_reference_1.f90
@@ -20,7 +20,7 @@ contains
b=conjg (transpose (a))
c=transpose (a)
c=conjg (c)
- if (any (b .ne. c)) call abort ()
+ if (any (b .ne. c)) STOP 1
end subroutine PR31994
subroutine PR31994_comment6
implicit none
@@ -30,6 +30,6 @@ contains
b=int (transpose(a))
c = int (a)
c = transpose (c)
- if (any (b .ne. c)) call abort ()
+ if (any (b .ne. c)) STOP 2
end subroutine PR31994_comment6
END program main
diff --git a/gcc/testsuite/gfortran.dg/array_return_value_1.f90 b/gcc/testsuite/gfortran.dg/array_return_value_1.f90
index 45699ffd7d5..5a35f28465a 100644
--- a/gcc/testsuite/gfortran.dg/array_return_value_1.f90
+++ b/gcc/testsuite/gfortran.dg/array_return_value_1.f90
@@ -10,9 +10,9 @@
INTEGER :: Array(2, 3) = reshape ((/1,4,2,5,3,6/),(/2,3/))
integer :: Brray(2, 3) = 0
Brray(1,:) = Function_Test (Array(1,:))
- if (any(reshape (Brray, (/6/)) .ne. (/11, 0, 12, 0, 13, 0/))) call abort ()
+ if (any(reshape (Brray, (/6/)) .ne. (/11, 0, 12, 0, 13, 0/))) STOP 1
Array(1,:) = Function_Test (Array(1,:))
- if (any(reshape (Array, (/6/)) .ne. (/11, 4, 12, 5, 13, 6/))) call abort ()
+ if (any(reshape (Array, (/6/)) .ne. (/11, 4, 12, 5, 13, 6/))) STOP 2
contains
FUNCTION Function_Test (Input)
diff --git a/gcc/testsuite/gfortran.dg/array_section_1.f90 b/gcc/testsuite/gfortran.dg/array_section_1.f90
index 4d5eedf2ae1..59f25412e70 100644
--- a/gcc/testsuite/gfortran.dg/array_section_1.f90
+++ b/gcc/testsuite/gfortran.dg/array_section_1.f90
@@ -13,23 +13,23 @@
! Check the lhs references
cnt = 0
a(bar(1):3) = b
- if (cnt /= 1) call abort ()
+ if (cnt /= 1) STOP 1
cnt = 0
a(1:bar(3)) = b
- if (cnt /= 1) call abort ()
+ if (cnt /= 1) STOP 2
cnt = 0
a(1:3:bar(1)) = b
- if (cnt /= 1) call abort ()
+ if (cnt /= 1) STOP 3
! Check the rhs references
cnt = 0
a(1:3) = b(bar(1):3)
- if (cnt /= 1) call abort ()
+ if (cnt /= 1) STOP 4
cnt = 0
a(1:3) = b(1:bar(3))
- if (cnt /= 1) call abort ()
+ if (cnt /= 1) STOP 5
cnt = 0
a(1:3) = b(1:3:bar(1))
- if (cnt /= 1) call abort ()
+ if (cnt /= 1) STOP 6
contains
integer function bar(n)
integer, intent(in) :: n
diff --git a/gcc/testsuite/gfortran.dg/array_temporaries_3.f90 b/gcc/testsuite/gfortran.dg/array_temporaries_3.f90
index 909c7ec5e7a..e3bb560b6ab 100644
--- a/gcc/testsuite/gfortran.dg/array_temporaries_3.f90
+++ b/gcc/testsuite/gfortran.dg/array_temporaries_3.f90
@@ -25,5 +25,5 @@ contains
end module bar
use bar
call xmain
- if (c(1) .ne. "ab") call abort
+ if (c(1) .ne. "ab") STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/arrayio_1.f90 b/gcc/testsuite/gfortran.dg/arrayio_1.f90
index 7b40d65734e..b5b583162ba 100644
--- a/gcc/testsuite/gfortran.dg/arrayio_1.f90
+++ b/gcc/testsuite/gfortran.dg/arrayio_1.f90
@@ -12,11 +12,11 @@
write(r,'(3(2x,i4/)/3(3x,i6/))') i
i = 0
read(r,'(3(2x,i4/)/3(3x,i6/))') i
- if (any(i.ne.(/(j,j=1,6)/))) call abort()
+ if (any(i.ne.(/(j,j=1,6)/))) STOP 1
do j=1,12
do k=1,2
if ((j.gt.8.and.k.eq.1).or.(k.eq.2)) then
- if (r(j,k).ne.'0123456789AB') call abort()
+ if (r(j,k).ne.'0123456789AB') STOP 2
end if
end do
end do
@@ -24,9 +24,9 @@
! Write to a portion of a character array
r = '0123456789AB'
write(r(3:9,1),'(6(i12/))') i
- if (r(2,1).ne.'0123456789AB') call abort()
+ if (r(2,1).ne.'0123456789AB') STOP 3
do j=3,8
- if (iachar(trim(adjustl(r(j,1))))-46.ne.j) call abort()
+ if (iachar(trim(adjustl(r(j,1))))-46.ne.j) STOP 4
end do
- if (r(9,1).ne.' ') call abort()
+ if (r(9,1).ne.' ') STOP 5
end program arrayio_1
diff --git a/gcc/testsuite/gfortran.dg/arrayio_10.f90 b/gcc/testsuite/gfortran.dg/arrayio_10.f90
index 2be99ec727d..22139a2cfab 100644
--- a/gcc/testsuite/gfortran.dg/arrayio_10.f90
+++ b/gcc/testsuite/gfortran.dg/arrayio_10.f90
@@ -6,7 +6,7 @@ program pr29563
character(len=4), dimension(3)::arraydata = (/'1123',' 456','789 '/)
real(kind=8), dimension(3) :: tmp
read(arraydata,*,iostat=iostat)tmp
- if (tmp(1).ne.1123.0) call abort()
- if (tmp(2).ne.456.0) call abort()
- if (tmp(3).ne.789.0) call abort()
+ if (tmp(1).ne.1123.0) STOP 1
+ if (tmp(2).ne.456.0) STOP 2
+ if (tmp(3).ne.789.0) STOP 3
end program pr29563 \ No newline at end of file
diff --git a/gcc/testsuite/gfortran.dg/arrayio_11.f90 b/gcc/testsuite/gfortran.dg/arrayio_11.f90
index 04735d11bec..243d960f8a2 100644
--- a/gcc/testsuite/gfortran.dg/arrayio_11.f90
+++ b/gcc/testsuite/gfortran.dg/arrayio_11.f90
@@ -22,11 +22,11 @@ program gfcbug51
'200812231200'/)
call date_to_year (FILE)
- if (any (time%year .ne. (/2006, 2007, 2008/))) call abort ()
+ if (any (time%year .ne. (/2006, 2007, 2008/))) STOP 1
call month_to_date ((/8, 9, 10/), FILE)
if ( any (file%date .ne. (/'200608231200', '200709231200', &
- '200810231200'/))) call abort ()
+ '200810231200'/))) STOP 2
contains
diff --git a/gcc/testsuite/gfortran.dg/arrayio_12.f90 b/gcc/testsuite/gfortran.dg/arrayio_12.f90
index 09fa6c8a15e..5f34c4d0f8d 100644
--- a/gcc/testsuite/gfortran.dg/arrayio_12.f90
+++ b/gcc/testsuite/gfortran.dg/arrayio_12.f90
@@ -19,11 +19,11 @@ program gfcbug51
'200812231200'/)
call date_to_year (cdate)
- if (any (time%year .ne. (/2006, 2007, 2008/))) call abort ()
+ if (any (time%year .ne. (/2006, 2007, 2008/))) STOP 1
call month_to_date ((/8, 9, 10/), cdate)
if ( any (cdate .ne. (/'200608231200', '200709231200', &
- '200810231200'/))) call abort ()
+ '200810231200'/))) STOP 2
contains
diff --git a/gcc/testsuite/gfortran.dg/arrayio_13.f90 b/gcc/testsuite/gfortran.dg/arrayio_13.f90
index 92a856bc869..aaa4d8fd8a4 100644
--- a/gcc/testsuite/gfortran.dg/arrayio_13.f90
+++ b/gcc/testsuite/gfortran.dg/arrayio_13.f90
@@ -9,6 +9,6 @@ program readstrlist
ver(1) = '285 383'
ver(2) = '985'
read( ver, *) a, b, c
- if (a /= 285 .or. b /= 383 .or. c /= 985) call abort
+ if (a /= 285 .or. b /= 383 .or. c /= 985) STOP 1
!write ( *, *) a, b, c
end
diff --git a/gcc/testsuite/gfortran.dg/arrayio_14.f90 b/gcc/testsuite/gfortran.dg/arrayio_14.f90
index 3d878c75644..441fcd4951b 100644
--- a/gcc/testsuite/gfortran.dg/arrayio_14.f90
+++ b/gcc/testsuite/gfortran.dg/arrayio_14.f90
@@ -14,5 +14,5 @@ program read_internal
call init_data
read(source,*) (x(i), i=1,6)
- if (any(x/=[1,1,1,4,4,4])) call abort
+ if (any(x/=[1,1,1,4,4,4])) STOP 1
end program read_internal
diff --git a/gcc/testsuite/gfortran.dg/arrayio_16.f90 b/gcc/testsuite/gfortran.dg/arrayio_16.f90
index 46814ae5d55..21c66fdbe9b 100644
--- a/gcc/testsuite/gfortran.dg/arrayio_16.f90
+++ b/gcc/testsuite/gfortran.dg/arrayio_16.f90
@@ -9,5 +9,5 @@ program read_internal
source=[4_" 1 1 -1",4_" 1 -1 1",4_" -1 1 1"]
!print *, (trim(source(i)), i=1,3)
read(source,*) (x(i), i=1,9) ! This read fails for KIND=4 character
- if (any(x /= y )) call abort
+ if (any(x /= y )) STOP 1
end program read_internal
diff --git a/gcc/testsuite/gfortran.dg/arrayio_2.f90 b/gcc/testsuite/gfortran.dg/arrayio_2.f90
index 00b96bf41c6..5c9f297be35 100644
--- a/gcc/testsuite/gfortran.dg/arrayio_2.f90
+++ b/gcc/testsuite/gfortran.dg/arrayio_2.f90
@@ -23,6 +23,6 @@
r(1,2).ne.'HELLO ! ' .or. &
r(2,2).ne.'WORLD ' .or. &
r(3,2).ne.'0123456789ab' .or. &
- r(4,2).ne.'0123456789ab') call abort()
+ r(4,2).ne.'0123456789ab') STOP 1
end program arrayio_2
diff --git a/gcc/testsuite/gfortran.dg/arrayio_3.f90 b/gcc/testsuite/gfortran.dg/arrayio_3.f90
index eb872eb15ca..25add0001cc 100644
--- a/gcc/testsuite/gfortran.dg/arrayio_3.f90
+++ b/gcc/testsuite/gfortran.dg/arrayio_3.f90
@@ -12,5 +12,5 @@
i = (/(j,j=1,6)/)
write(r,'(3(2x,i4/)/3(4x,i9/))', iostat=ierr) i
- if (ierr.ne.-2) call abort()
+ if (ierr.ne.-2) STOP 1
end program arrayio_3
diff --git a/gcc/testsuite/gfortran.dg/arrayio_4.f90 b/gcc/testsuite/gfortran.dg/arrayio_4.f90
index 6236d2d6766..b3261893293 100644
--- a/gcc/testsuite/gfortran.dg/arrayio_4.f90
+++ b/gcc/testsuite/gfortran.dg/arrayio_4.f90
@@ -8,15 +8,15 @@ program arrayio_4
character(12) :: r(2,3,4) = '0123456789AB'
write(r(::2,:,::1),'(i5)', iostat=ierr) 1,2,3,4,5
- if (ierr.ne.0) call abort()
+ if (ierr.ne.0) STOP 1
write(r(:,:,::2),'(i5)', iostat=ierr) 1,2,3,4,5
- if (ierr.ne.0) call abort()
+ if (ierr.ne.0) STOP 2
write(r(::1,::2,::1),'(i5)', iostat=ierr) 1,2,3,4,5
- if (ierr.ne.0) call abort()
+ if (ierr.ne.0) STOP 3
write(r(::1,::1,::1),'(i5)', iostat=ierr) 1,2,3,4,5
- if (ierr.ne.0) call abort()
+ if (ierr.ne.0) STOP 4
end program arrayio_4
diff --git a/gcc/testsuite/gfortran.dg/arrayio_5.f90 b/gcc/testsuite/gfortran.dg/arrayio_5.f90
index cb062037a4a..ef290c84b93 100644
--- a/gcc/testsuite/gfortran.dg/arrayio_5.f90
+++ b/gcc/testsuite/gfortran.dg/arrayio_5.f90
@@ -8,6 +8,6 @@ program arrayio_5
character(12) :: r(10) = '0123456789AB'
write(r,'(i12)',iostat=ierr) 1,2,3,4,5,6,7,8,9,10,11
- if (ierr.ne.-1) call abort()
+ if (ierr.ne.-1) STOP 1
end program arrayio_5
diff --git a/gcc/testsuite/gfortran.dg/arrayio_6.f90 b/gcc/testsuite/gfortran.dg/arrayio_6.f90
index d9343ab3611..53128b75b53 100644
--- a/gcc/testsuite/gfortran.dg/arrayio_6.f90
+++ b/gcc/testsuite/gfortran.dg/arrayio_6.f90
@@ -11,21 +11,21 @@
i = (/(j,j=1,3)/)
write(r(1:4:2,2:4:1,3:4:2),'(3(2x,i4/)/3(3x,i6/))') i
- if (s(36).ne.'0123456789AB') call abort()
- if (s(37).ne.' 1 ') call abort()
- if (s(38).ne.'0123456789AB') call abort()
- if (s(39).ne.' 2 ') call abort()
- if (s(40).ne.'0123456789AB') call abort()
- if (s(41).ne.' 3 ') call abort()
- if (s(42).ne.'0123456789AB') call abort()
- if (s(43).ne.' ') call abort()
- if (s(44).ne.'0123456789AB') call abort()
- if (s(45).ne.' ') call abort()
- if (s(46).ne.'0123456789AB') call abort()
+ if (s(36).ne.'0123456789AB') STOP 1
+ if (s(37).ne.' 1 ') STOP 2
+ if (s(38).ne.'0123456789AB') STOP 3
+ if (s(39).ne.' 2 ') STOP 4
+ if (s(40).ne.'0123456789AB') STOP 5
+ if (s(41).ne.' 3 ') STOP 6
+ if (s(42).ne.'0123456789AB') STOP 7
+ if (s(43).ne.' ') STOP 8
+ if (s(44).ne.'0123456789AB') STOP 9
+ if (s(45).ne.' ') STOP 10
+ if (s(46).ne.'0123456789AB') STOP 11
k = i
i = 0
read(r(1:4:2,2:4:1,3:4:2),'(3(2x,i4/)/3(3x,i6/))') i
- if (any(i.ne.k)) call abort()
+ if (any(i.ne.k)) STOP 12
end program arrayio_6
diff --git a/gcc/testsuite/gfortran.dg/arrayio_7.f90 b/gcc/testsuite/gfortran.dg/arrayio_7.f90
index 68d1fbf97e6..f1d200c013c 100644
--- a/gcc/testsuite/gfortran.dg/arrayio_7.f90
+++ b/gcc/testsuite/gfortran.dg/arrayio_7.f90
@@ -11,5 +11,5 @@ program arrayio_7
character*8 :: a
equivalence (buf,abuf)
read(buf(2, 1:3:2), '(a8)') a
- if (a.ne."4567") call abort()
+ if (a.ne."4567") STOP 1
end program arrayio_7
diff --git a/gcc/testsuite/gfortran.dg/arrayio_8.f90 b/gcc/testsuite/gfortran.dg/arrayio_8.f90
index 7b609bd061c..c2fcbbf6995 100644
--- a/gcc/testsuite/gfortran.dg/arrayio_8.f90
+++ b/gcc/testsuite/gfortran.dg/arrayio_8.f90
@@ -9,9 +9,9 @@
character*8 rec(3)
rec = ""
write (rec,fmt=99999)
- if (rec(1).ne.'12345678') call abort()
- if (rec(2).ne.'record2') call abort()
- if (rec(3).ne.'record3') call abort()
+ if (rec(1).ne.'12345678') STOP 1
+ if (rec(2).ne.'record2') STOP 2
+ if (rec(3).ne.'record3') STOP 3
99999 format ('12345678',/'record2',/'record3')
end
diff --git a/gcc/testsuite/gfortran.dg/arrayio_9.f90 b/gcc/testsuite/gfortran.dg/arrayio_9.f90
index f8efdf19daa..3e1fcbaf395 100644
--- a/gcc/testsuite/gfortran.dg/arrayio_9.f90
+++ b/gcc/testsuite/gfortran.dg/arrayio_9.f90
@@ -7,5 +7,5 @@ program pr29563
real(kind=8), dimension(3,3) :: tmp
tmp = 0.0
read(arraydata,*,iostat=iostat)((tmp(i,j),j=1,3),i=1,3)
- if (tmp(3,3)-9.0.gt.0.0000001) call abort()
+ if (tmp(3,3)-9.0.gt.0.0000001) STOP 1
end program pr29563 \ No newline at end of file
diff --git a/gcc/testsuite/gfortran.dg/arrayio_derived_1.f90 b/gcc/testsuite/gfortran.dg/arrayio_derived_1.f90
index dd12561b763..2192a96255d 100644
--- a/gcc/testsuite/gfortran.dg/arrayio_derived_1.f90
+++ b/gcc/testsuite/gfortran.dg/arrayio_derived_1.f90
@@ -17,7 +17,7 @@ program arrayio_derived_1
read(a, *) b
do i = 1, 5
if (b(i) /= 256) then
- call abort ()
+ STOP 1
end if
end do
write(a, *) x ! Just test that the library doesn't abort.
@@ -26,7 +26,7 @@ program arrayio_derived_1
read(a, *) b
do i = 1, 5
if (b(i) /= 256) then
- call abort ()
+ STOP 2
end if
end do
diff --git a/gcc/testsuite/gfortran.dg/assign_10.f90 b/gcc/testsuite/gfortran.dg/assign_10.f90
index 58124b69b78..42f66e5b533 100644
--- a/gcc/testsuite/gfortran.dg/assign_10.f90
+++ b/gcc/testsuite/gfortran.dg/assign_10.f90
@@ -15,8 +15,8 @@
q4(q4) = (/(i, i = 1, 4)/)
p8(q8) = (/(i, i = 1, 4)/)
q8(q8) = (/(i, i = 1, 4)/)
- if (any(p4 .ne. q4)) call abort ()
- if (any(p8 .ne. q8)) call abort ()
+ if (any(p4 .ne. q4)) STOP 1
+ if (any(p8 .ne. q8)) STOP 2
end
! Whichever is the default length for array indices will yield
! parm 18 times, because a temporary is not necessary. The other
diff --git a/gcc/testsuite/gfortran.dg/assign_9.f90 b/gcc/testsuite/gfortran.dg/assign_9.f90
index 2c2337ec0f4..05e85b5b3b2 100644
--- a/gcc/testsuite/gfortran.dg/assign_9.f90
+++ b/gcc/testsuite/gfortran.dg/assign_9.f90
@@ -9,6 +9,6 @@
integer(8) :: q(4) = (/2,4,1,3/)
p(p) = (/(i, i = 1, 4)/)
q(q) = (/(i, i = 1, 4)/)
- if (any(p .ne. q)) call abort ()
+ if (any(p .ne. q)) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/assign_func_dtcomp_1.f90 b/gcc/testsuite/gfortran.dg/assign_func_dtcomp_1.f90
index 385eb2715f6..ee9fd79e61e 100644
--- a/gcc/testsuite/gfortran.dg/assign_func_dtcomp_1.f90
+++ b/gcc/testsuite/gfortran.dg/assign_func_dtcomp_1.f90
@@ -26,13 +26,13 @@ program assign_func_dtcomp
z(:)%y = foo (b)
- if (any(z%x.ne.a).or.any(z%y.ne.b)) call abort ()
+ if (any(z%x.ne.a).or.any(z%y.ne.b)) STOP 1
! Make sure we did not break anything on the way.
w%x(:) = foo (b)
a = foo (b)
- if (any(w%x.ne.b).or.any(a.ne.b)) call abort ()
+ if (any(w%x.ne.b).or.any(a.ne.b)) STOP 2
contains
diff --git a/gcc/testsuite/gfortran.dg/assignment_1.f90 b/gcc/testsuite/gfortran.dg/assignment_1.f90
index 4022b0db989..067b701ce4e 100644
--- a/gcc/testsuite/gfortran.dg/assignment_1.f90
+++ b/gcc/testsuite/gfortran.dg/assignment_1.f90
@@ -14,15 +14,15 @@ p => s
! We didn't dereference the pointer in the following line.
p = f() ! { dg-warning "POINTER-valued function" }
p = p+1
-if (p.ne.2) call abort()
-if (p.ne.s) call abort()
+if (p.ne.2) STOP 1
+if (p.ne.s) STOP 2
!!$! verify that we also dereference correctly the result of a function
!!$! which returns its result by reference
!!$c = "Hallo"
!!$d => e
!!$d = g() ! dg-warning "POINTER valued function" ""
-!!$if (d.ne."Hallo") call abort()
+!!$if (d.ne."Hallo") STOP 3
contains
function f()
diff --git a/gcc/testsuite/gfortran.dg/associate_1.f03 b/gcc/testsuite/gfortran.dg/associate_1.f03
index bb32399d6fa..f9a27e043f4 100644
--- a/gcc/testsuite/gfortran.dg/associate_1.f03
+++ b/gcc/testsuite/gfortran.dg/associate_1.f03
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2003 -fall-intrinsics -cpp" }
+! { dg-options "-std=f2003 -cpp" }
! PR fortran/38936
! Check the basic semantics of the ASSOCIATE construct.
@@ -23,39 +23,39 @@ PROGRAM main
! Simple association to expressions.
ASSOCIATE (r => SQRT (a**2 + b**2 + c**2), t => a + b)
PRINT *, t, a, b
- IF (ABS (r - SQRT (4.0 + 9.0 + 16.0)) > 1.0e-3) CALL abort ()
- IF (ABS (t - a - b) > 1.0e-3) CALL abort ()
+ IF (ABS (r - SQRT (4.0 + 9.0 + 16.0)) > 1.0e-3) STOP 1
+ IF (ABS (t - a - b) > 1.0e-3) STOP 2
END ASSOCIATE
! Test association to arrays.
ALLOCATE (arr(3))
arr = (/ 1, 2, 3 /)
ASSOCIATE (doubled => 2 * arr, xyz => func ())
- IF (SIZE (doubled) /= SIZE (arr)) CALL abort ()
+ IF (SIZE (doubled) /= SIZE (arr)) STOP 3
IF (doubled(1) /= 2 .OR. doubled(2) /= 4 .OR. doubled(3) /= 6) &
- CALL abort ()
+ STOP 4
- IF (ANY (xyz /= (/ 1, 3, 5 /))) CALL abort ()
+ IF (ANY (xyz /= (/ 1, 3, 5 /))) STOP 5
END ASSOCIATE
! Target is vector-indexed.
ASSOCIATE (foo => arr((/ 3, 1 /)))
- IF (LBOUND (foo, 1) /= 1 .OR. UBOUND (foo, 1) /= 2) CALL abort ()
- IF (foo(1) /= 3 .OR. foo(2) /= 1) CALL abort ()
+ IF (LBOUND (foo, 1) /= 1 .OR. UBOUND (foo, 1) /= 2) STOP 6
+ IF (foo(1) /= 3 .OR. foo(2) /= 1) STOP 7
END ASSOCIATE
! Named and nested associate.
myname: ASSOCIATE (x => a - b * c)
ASSOCIATE (y => 2.0 * x)
- IF (ABS (y - 2.0 * (a - b * c)) > 1.0e-3) CALL abort ()
+ IF (ABS (y - 2.0 * (a - b * c)) > 1.0e-3) STOP 8
END ASSOCIATE
END ASSOCIATE myname ! Matching end-label.
! Correct behavior when shadowing already existing names.
ASSOCIATE (a => 1 * b, b => 1 * a, x => 1, y => 2)
- IF (ABS (a - 3.0) > 1.0e-3 .OR. ABS (b + 2.0) > 1.0e-3) CALL abort ()
+ IF (ABS (a - 3.0) > 1.0e-3 .OR. ABS (b + 2.0) > 1.0e-3) STOP 9
ASSOCIATE (x => 1 * y, y => 1 * x)
- IF (x /= 2 .OR. y /= 1) CALL abort ()
+ IF (x /= 2 .OR. y /= 1) STOP 10
END ASSOCIATE
END ASSOCIATE
@@ -63,25 +63,25 @@ PROGRAM main
mat = 0
mat(2, 2) = 5;
ASSOCIATE (x => arr(2), y => mat(2:3, 1:2))
- IF (x /= 2) CALL abort ()
+ IF (x /= 2) STOP 11
IF (ANY (LBOUND (y) /= (/ 1, 1 /) .OR. UBOUND (y) /= (/ 2, 2 /))) &
- CALL abort ()
- IF (y(1, 2) /= 5) CALL abort ()
+ STOP 12
+ IF (y(1, 2) /= 5) STOP 13
x = 7
y = 8
END ASSOCIATE
- IF (arr(2) /= 7 .OR. ANY (mat(2:3, 1:2) /= 8)) CALL abort ()
+ IF (arr(2) /= 7 .OR. ANY (mat(2:3, 1:2) /= 8)) STOP 14
! Association to derived type and component.
tp = myt (1)
ASSOCIATE (x => tp, y => tp%comp)
- IF (x%comp /= 1) CALL abort ()
- IF (y /= 1) CALL abort ()
+ IF (x%comp /= 1) STOP 15
+ IF (y /= 1) STOP 16
y = 5
- IF (x%comp /= 5) CALL abort ()
+ IF (x%comp /= 5) STOP 17
END ASSOCIATE
- IF (tp%comp /= 5) CALL abort ()
+ IF (tp%comp /= 5) STOP 18
! Association to character variables.
CALL test_char (5)
@@ -101,11 +101,11 @@ CONTAINS
str = "foobar"
ASSOCIATE (my => str)
- IF (LEN (my) /= n) CALL abort ()
- IF (my /= "fooba") CALL abort ()
+ IF (LEN (my) /= n) STOP 19
+ IF (my /= "fooba") STOP 20
my = "abcdef"
END ASSOCIATE
- IF (str /= "abcde") CALL abort ()
+ IF (str /= "abcde") STOP 21
END SUBROUTINE test_char
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/associate_11.f90 b/gcc/testsuite/gfortran.dg/associate_11.f90
index 3ef31f48fa1..3f2c7d80ca0 100644
--- a/gcc/testsuite/gfortran.dg/associate_11.f90
+++ b/gcc/testsuite/gfortran.dg/associate_11.f90
@@ -13,7 +13,7 @@ program bug
call foo(a)
end associate
! write(*,*) i
- if (i(1) /= 2) call abort
+ if (i(1) /= 2) STOP 1
contains
subroutine foo(v)
integer, dimension(*) :: v
diff --git a/gcc/testsuite/gfortran.dg/associate_13.f90 b/gcc/testsuite/gfortran.dg/associate_13.f90
index 7c64d3f0aa7..bd89264842c 100644
--- a/gcc/testsuite/gfortran.dg/associate_13.f90
+++ b/gcc/testsuite/gfortran.dg/associate_13.f90
@@ -17,5 +17,5 @@
associate (template => initial(1)%variant_def)
template%i = 77
end associate
- if (initial(1)%variant_def%i .ne. 77) call abort
+ if (initial(1)%variant_def%i .ne. 77) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/associate_15.f90 b/gcc/testsuite/gfortran.dg/associate_15.f90
index 7e34eb518e0..cadc9e7ce98 100644
--- a/gcc/testsuite/gfortran.dg/associate_15.f90
+++ b/gcc/testsuite/gfortran.dg/associate_15.f90
@@ -20,14 +20,14 @@ end module
b = x(2)
write (line1, *) a, b
write (line2, *) x
- if (trim (line1) .ne. trim (line2)) call abort
+ if (trim (line1) .ne. trim (line2)) STOP 1
end associate
associate (x=>[1,2])
a = x(1)
b = x(2)
write (line1, *) a, b
write (line2, *) x
- if (trim (line1) .ne. trim (line2)) call abort
+ if (trim (line1) .ne. trim (line2)) STOP 2
end associate
associate (x=>bar(5)) ! make sure that we haven't broken function association
a = x(1)
@@ -35,6 +35,6 @@ end module
c = x(3)
write (line1, *) a, b, c
write (line2, *) x
- if (trim (line1) .ne. trim (line2)) call abort
+ if (trim (line1) .ne. trim (line2)) STOP 3
end associate
end
diff --git a/gcc/testsuite/gfortran.dg/associate_17.f90 b/gcc/testsuite/gfortran.dg/associate_17.f90
index 5c39cf06247..b25bcc265d6 100644
--- a/gcc/testsuite/gfortran.dg/associate_17.f90
+++ b/gcc/testsuite/gfortran.dg/associate_17.f90
@@ -6,7 +6,7 @@ program test
real :: theta = 1.0
associate (n => [cos(theta), sin(theta)])
- if (abs (norm2(n) - 1.0) .gt. 1.0e-4) call abort
+ if (abs (norm2(n) - 1.0) .gt. 1.0e-4) STOP 1
end associate
end program test
diff --git a/gcc/testsuite/gfortran.dg/associate_18.f08 b/gcc/testsuite/gfortran.dg/associate_18.f08
index 16168500191..37f1d242761 100644
--- a/gcc/testsuite/gfortran.dg/associate_18.f08
+++ b/gcc/testsuite/gfortran.dg/associate_18.f08
@@ -25,7 +25,7 @@ program associate_18
associate(i => av(1))
i%map = 2
end associate
- if (any (av%map /= [2,1])) call abort()
+ if (any (av%map /= [2,1])) STOP 1
deallocate(av)
allocate(am(3,4))
@@ -33,14 +33,14 @@ program associate_18
pam%map = 7
pam(1,2)%map = 8
end associate
- if (any (reshape(am%map, [12]) /= [1,1,1, 1,7,7, 1,8,7, 1,1,1])) call abort()
+ if (any (reshape(am%map, [12]) /= [1,1,1, 1,7,7, 1,8,7, 1,1,1])) STOP 2
deallocate(am)
allocate(pv(2))
associate(i => pv(1))
i%map = 2
end associate
- if (any (pv%map /= [2,1])) call abort()
+ if (any (pv%map /= [2,1])) STOP 3
deallocate(pv)
allocate(pm(3,4))
@@ -48,13 +48,13 @@ program associate_18
ppm%map = 7
ppm(1,2)%map = 8
end associate
- if (any (reshape(pm%map, [12]) /= [1,1,1, 1,7,7, 1,8,7, 1,1,1])) call abort()
+ if (any (reshape(pm%map, [12]) /= [1,1,1, 1,7,7, 1,8,7, 1,1,1])) STOP 4
deallocate(pm)
associate(i => iv(1))
i = 7
end associate
- if (any (iv /= [7, 17, 17, 17, 17])) call abort()
+ if (any (iv /= [7, 17, 17, 17, 17])) STOP 5
associate(pam => im(2:3, 2:3))
pam = 9
@@ -64,7 +64,7 @@ program associate_18
end do
end associate
if (any (reshape(im, [20]) /= [23,23,23,23, 23,9,0,23, &
- 23,10,0,23, 23,23,23,23, 23,23,23,23])) call abort()
+ 23,10,0,23, 23,23,23,23, 23,23,23,23])) STOP 6
expect(2:3) = 9
do c = 1, 5
@@ -72,7 +72,7 @@ program associate_18
associate(pam => im(:, c))
pam(2:3) = 9
end associate
- if (any (reshape(im, [20]) /= expect)) call abort()
+ if (any (reshape(im, [20]) /= expect)) STOP 7
! Shift expect
expect = [expect(17:), expect(:16)]
end do
diff --git a/gcc/testsuite/gfortran.dg/associate_19.f03 b/gcc/testsuite/gfortran.dg/associate_19.f03
index 76534c57a5f..e85873f775e 100644
--- a/gcc/testsuite/gfortran.dg/associate_19.f03
+++ b/gcc/testsuite/gfortran.dg/associate_19.f03
@@ -16,8 +16,8 @@ program p
i(:,2) = (/ 4 , 5 , 6 /)
associate( ai => a(:,i(:,1)) )
- if (any(shape(ai) /= [2, 3])) call abort()
- if (any(reshape(ai, [6]) /= [1 , -10, 3, -30, 5, -50])) call abort()
+ if (any(shape(ai) /= [2, 3])) STOP 1
+ if (any(reshape(ai, [6]) /= [1 , -10, 3, -30, 5, -50])) STOP 2
end associate
end program p
diff --git a/gcc/testsuite/gfortran.dg/associate_20.f03 b/gcc/testsuite/gfortran.dg/associate_20.f03
index 9d420efd9d6..884931155f7 100644
--- a/gcc/testsuite/gfortran.dg/associate_20.f03
+++ b/gcc/testsuite/gfortran.dg/associate_20.f03
@@ -23,8 +23,8 @@ program p
i(:,2) = (/ 4 , 5 , 6 /)
associate( ai => a(:,i(:,1))%i )
- if (any(shape(ai) /= [2, 3])) call abort()
- if (any(reshape(ai, [6]) /= [1 , -10, 3, -30, 5, -50])) call abort()
+ if (any(shape(ai) /= [2, 3])) STOP 1
+ if (any(reshape(ai, [6]) /= [1 , -10, 3, -30, 5, -50])) STOP 2
end associate
deallocate(a)
diff --git a/gcc/testsuite/gfortran.dg/associate_22.f90 b/gcc/testsuite/gfortran.dg/associate_22.f90
index edf59321dd5..35daf89098d 100644
--- a/gcc/testsuite/gfortran.dg/associate_22.f90
+++ b/gcc/testsuite/gfortran.dg/associate_22.f90
@@ -9,30 +9,29 @@ program foo
! This works.
s = 'abc'
associate(t => s)
- if (trim(t) /= 'abc') call abort
+ if (trim(t) /= 'abc') STOP 1
end associate
! This failed.
associate(u => 'abc')
- if (trim(u) /= 'abc') call abort
+ if (trim(u) /= 'abc') STOP 2
end associate
! This failed.
a = s // 'abc'
associate(v => s // 'abc')
- if (trim(v) /= trim(a)) call abort
+ if (trim(v) /= trim(a)) STOP 3
end associate
! This failed.
- ! This still doesn't work correctly, see PR 83344
-! a = trim(s) // 'abc'
-! associate(w => trim(s) // 'abc')
-! if (trim(w) /= trim(a)) call abort
-! end associate
+ a = trim(s) // 'abc'
+ associate(w => trim(s) // 'abc')
+ if (trim(w) /= trim(a)) STOP 4
+ end associate
! This failed.
associate(x => trim('abc'))
- if (trim(x) /= 'abc') call abort
+ if (trim(x) /= 'abc') STOP 5
end associate
end program foo
diff --git a/gcc/testsuite/gfortran.dg/associate_23.f90 b/gcc/testsuite/gfortran.dg/associate_23.f90
index fc07671676d..7bbf2eddf5c 100644
--- a/gcc/testsuite/gfortran.dg/associate_23.f90
+++ b/gcc/testsuite/gfortran.dg/associate_23.f90
@@ -15,7 +15,7 @@ program test_this
write (buffer, *) should_work(5:14)
END ASSOCIATE
- if (trim (buffer) .ne. " succesful") call abort
+ if (trim (buffer) .ne. " succesful") STOP 1
! Found to be failing during debugging
ASSOCIATE(should_work=>char_var_dim)
@@ -23,7 +23,7 @@ program test_this
write (buffer, *) should_work(:)(5:14)
END ASSOCIATE
- if (trim (buffer) .ne. " SUCCESFUL_SUCCESFUL.SUCCESFUL") call abort
+ if (trim (buffer) .ne. " SUCCESFUL_SUCCESFUL.SUCCESFUL") STOP 2
! Found to be failing during debugging
ASSOCIATE(should_work=>char_var_dim(1:2))
@@ -31,6 +31,6 @@ program test_this
write (buffer, *) should_work(:)(5:14)
END ASSOCIATE
- if (trim (buffer) .ne. " SUCCESFUL_SUCCESFUL") call abort
+ if (trim (buffer) .ne. " SUCCESFUL_SUCCESFUL") STOP 3
end program
diff --git a/gcc/testsuite/gfortran.dg/associate_24.f90 b/gcc/testsuite/gfortran.dg/associate_24.f90
index 94ba378b6e5..68334c899a6 100644
--- a/gcc/testsuite/gfortran.dg/associate_24.f90
+++ b/gcc/testsuite/gfortran.dg/associate_24.f90
@@ -27,7 +27,7 @@ PROGRAM X
contains
subroutine check (lbnd, ubnd, lower, upper)
integer :: lbnd, ubnd, lower, upper
- if (lbnd .ne. lower) call abort
- if (ubnd .ne. upper) call abort
+ if (lbnd .ne. lower) STOP 1
+ if (ubnd .ne. upper) STOP 2
end subroutine
END PROGRAM X
diff --git a/gcc/testsuite/gfortran.dg/associate_25.f90 b/gcc/testsuite/gfortran.dg/associate_25.f90
index 5644031e15e..d3137300282 100644
--- a/gcc/testsuite/gfortran.dg/associate_25.f90
+++ b/gcc/testsuite/gfortran.dg/associate_25.f90
@@ -23,7 +23,7 @@ contains
end associate
! This should now be 4 but the finalization is not happening.
! TODO put it right!
- if (final_flag .ne. 2) call abort
+ if (final_flag .ne. 2) STOP 1
end subroutine Testf
end module
diff --git a/gcc/testsuite/gfortran.dg/associate_27.f90 b/gcc/testsuite/gfortran.dg/associate_27.f90
index 6fcb8a990fd..b677438d688 100644
--- a/gcc/testsuite/gfortran.dg/associate_27.f90
+++ b/gcc/testsuite/gfortran.dg/associate_27.f90
@@ -16,8 +16,8 @@ program p
x%text(2) = "defgh"
associate( c => x%text )
- if (c(1)(:maxval(len_trim(c))) .ne. trim (x%text(1))) call abort
- if (c(2)(:maxval(len_trim(c))) .ne. trim (x%text(2))) call abort
+ if (c(1)(:maxval(len_trim(c))) .ne. trim (x%text(1))) STOP 1
+ if (c(2)(:maxval(len_trim(c))) .ne. trim (x%text(2))) STOP 2
end associate
end program p
diff --git a/gcc/testsuite/gfortran.dg/associate_28.f90 b/gcc/testsuite/gfortran.dg/associate_28.f90
index 8715472799e..d2279a037f8 100644
--- a/gcc/testsuite/gfortran.dg/associate_28.f90
+++ b/gcc/testsuite/gfortran.dg/associate_28.f90
@@ -44,7 +44,7 @@ contains
End Do
end associate
End block outer
- if (sum_a .ne. 30) call abort
+ if (sum_a .ne. 30) STOP 1
End Procedure
End Submodule SetPt
Program Test
diff --git a/gcc/testsuite/gfortran.dg/associate_32.f03 b/gcc/testsuite/gfortran.dg/associate_32.f03
index 9a1f5983df0..9d771e81eb0 100644
--- a/gcc/testsuite/gfortran.dg/associate_32.f03
+++ b/gcc/testsuite/gfortran.dg/associate_32.f03
@@ -18,46 +18,46 @@ program test
s = 'ab'
associate(ss => s)
- if (ss .ne. 'ab') call abort ! This is the original bug.
+ if (ss .ne. 'ab') STOP 1! This is the original bug.
ss = 'c'
end associate
- if (s .ne. 'c ') call abort ! No reallocation within ASSOCIATE block!
+ if (s .ne. 'c ') STOP 2! No reallocation within ASSOCIATE block!
sf = 'c'
associate(ss => sf)
- if (ss .ne. 'c ') call abort ! This the bug in comment #2 of the PR.
+ if (ss .ne. 'c ') STOP 3! This the bug in comment #2 of the PR.
ss = 'cd'
end associate
sd = [s, sf]
associate(ss => sd)
- if (any (ss .ne. ['c ','cd'])) call abort
+ if (any (ss .ne. ['c ','cd'])) STOP 4
end associate
sfd = [sd,'ef']
associate(ss => sfd)
- if (any (ss .ne. ['c ','cd','ef'])) call abort
+ if (any (ss .ne. ['c ','cd','ef'])) STOP 5
ss = ['gh']
end associate
- if (any (sfd .ne. ['gh','cd','ef'])) call abort ! No reallocation!
+ if (any (sfd .ne. ['gh','cd','ef'])) STOP 6! No reallocation!
string%str = 'xyz'
associate(ss => string%str)
- if (ss .ne. 'xyz') call abort
+ if (ss .ne. 'xyz') STOP 7
ss = 'c'
end associate
- if (string%str .ne. 'c ') call abort ! No reallocation!
+ if (string%str .ne. 'c ') STOP 8! No reallocation!
str = "foobar"
call test_char (5 , str)
- IF (str /= "abcder") call abort
+ IF (str /= "abcder") STOP 9
associate(ss => foo())
- if (ss .ne. 'pqrst') call abort
+ if (ss .ne. 'pqrst') STOP 10
end associate
associate(ss => bar())
- if (ss(2) .ne. 'uvwxy') call abort
+ if (ss(2) .ne. 'uvwxy') STOP 11
end associate
! The deallocation is not strictly necessary but it does allow
@@ -73,11 +73,11 @@ contains
CHARACTER(LEN=n) :: str
ASSOCIATE (my => str)
- IF (LEN (my) /= n) call abort
- IF (my /= "fooba") call abort
+ IF (LEN (my) /= n) STOP 12
+ IF (my /= "fooba") STOP 13
my = "abcde"
END ASSOCIATE
- IF (str /= "abcde") call abort
+ IF (str /= "abcde") STOP 14
END SUBROUTINE test_char
function foo() result(res)
diff --git a/gcc/testsuite/gfortran.dg/associate_33.f03 b/gcc/testsuite/gfortran.dg/associate_33.f03
index 1f87b22e8e4..a4fcfd6f2a1 100644
--- a/gcc/testsuite/gfortran.dg/associate_33.f03
+++ b/gcc/testsuite/gfortran.dg/associate_33.f03
@@ -6,6 +6,6 @@
!
program p
associate (x => ['1','2'])
- if (any (x .ne. ['1','2'])) call abort
+ if (any (x .ne. ['1','2'])) STOP 1
end associate
end
diff --git a/gcc/testsuite/gfortran.dg/associate_34.f90 b/gcc/testsuite/gfortran.dg/associate_34.f90
index 629c0b43611..925dee9ff74 100644
--- a/gcc/testsuite/gfortran.dg/associate_34.f90
+++ b/gcc/testsuite/gfortran.dg/associate_34.f90
@@ -15,7 +15,7 @@ contains
character(:), allocatable :: x
character(*) :: carg
associate (y => x)
- if (y .ne. carg) call abort
+ if (y .ne. carg) STOP 1
end associate
end
end
diff --git a/gcc/testsuite/gfortran.dg/associate_35.f90 b/gcc/testsuite/gfortran.dg/associate_35.f90
index 417ec7c426b..67329785bc4 100644
--- a/gcc/testsuite/gfortran.dg/associate_35.f90
+++ b/gcc/testsuite/gfortran.dg/associate_35.f90
@@ -1,6 +1,6 @@
-! { dg-do compile }
+! { dg-do run }
!
-! Test the fix for PR84115 comment #1 (except for s1(x)!).
+! Test the fix for PR84115 comment #1.
!
! Contributed by G Steinmetz <gscfq@t-online.de>
!
@@ -14,22 +14,22 @@
contains
subroutine s1(x)
character(:), allocatable :: x
- associate (y => x//x) ! { dg-error "type character and non-constant length" }
- print *, y
+ associate (y => x//x)
+ if (y .ne. x//x) stop 1
end associate
end
subroutine s2(x)
character(:), allocatable :: x
associate (y => [x])
- print *, y
+ if (any(y .ne. [x])) stop 2
end associate
end
subroutine s3(x)
character(:), allocatable :: x
associate (y => [x,x])
- print *, y
+ if (any(y .ne. [x,x])) stop 3
end associate
end
end
diff --git a/gcc/testsuite/gfortran.dg/associate_36.f90 b/gcc/testsuite/gfortran.dg/associate_36.f90
new file mode 100644
index 00000000000..ba236b431aa
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/associate_36.f90
@@ -0,0 +1,28 @@
+! { dg-do run }
+!
+! Test the fix for PR83344.
+!
+! Contributed by <Janne Blomqvist <jb@gcc.gnu.org>
+!
+program foo
+ implicit none
+ character(len=1) a
+ character(len=2) b
+ character(len=3) c
+ a = 'a'
+ call bah(a, len (a))
+ b = 'bb'
+ call bah(b, len (b))
+ c = 'ccc'
+ call bah(c, len (c))
+ contains
+ subroutine bah(x, clen)
+ implicit none
+ integer :: clen
+ character(len=*), intent(in) :: x
+ associate(y => x)
+ if (len(y) .ne. clen) stop 1
+ if (y .ne. x) stop 2
+ end associate
+ end subroutine bah
+end program foo
diff --git a/gcc/testsuite/gfortran.dg/associate_6.f03 b/gcc/testsuite/gfortran.dg/associate_6.f03
index bedfb665ef2..8f864364b6e 100644
--- a/gcc/testsuite/gfortran.dg/associate_6.f03
+++ b/gcc/testsuite/gfortran.dg/associate_6.f03
@@ -30,8 +30,8 @@ PROGRAM main
ASSOCIATE (arr => func (4))
! func should only be called once here, not again for the bounds!
- IF (LBOUND (arr, 1) /= 1 .OR. UBOUND (arr, 1) /= 4) CALL abort ()
- IF (arr(1) /= 1 .OR. arr(4) /= 4) CALL abort ()
+ IF (LBOUND (arr, 1) /= 1 .OR. UBOUND (arr, 1) /= 4) STOP 1
+ IF (arr(1) /= 1 .OR. arr(4) /= 4) STOP 2
END ASSOCIATE
END PROGRAM main
! { dg-final { scan-tree-dump-times "func" 2 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/associate_7.f03 b/gcc/testsuite/gfortran.dg/associate_7.f03
index 6fd3f343d00..cd37259443e 100644
--- a/gcc/testsuite/gfortran.dg/associate_7.f03
+++ b/gcc/testsuite/gfortran.dg/associate_7.f03
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2003 -fall-intrinsics" }
+! { dg-options "-std=f2003 " }
! PR fortran/38936
! Check association and pointers.
@@ -14,8 +14,8 @@ PROGRAM main
tgt = 1
ASSOCIATE (x => tgt)
ptr => x
- IF (ptr /= 1) CALL abort ()
+ IF (ptr /= 1) STOP 1
ptr = 2
END ASSOCIATE
- IF (tgt /= 2) CALL abort ()
+ IF (tgt /= 2) STOP 2
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/associate_8.f03 b/gcc/testsuite/gfortran.dg/associate_8.f03
index a6f9938f0bb..f6c286f30fd 100644
--- a/gcc/testsuite/gfortran.dg/associate_8.f03
+++ b/gcc/testsuite/gfortran.dg/associate_8.f03
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2003 -fall-intrinsics" }
+! { dg-options "-std=f2003 " }
! PR fortran/38936
! Check associate to polymorphic entities.
@@ -19,19 +19,19 @@ allocate( t2 :: b)
associate ( one => a, two => b)
select type(two)
type is (t)
- call abort ()
+ STOP 1
type is (t2)
print *, 'OK', two
class default
- call abort ()
+ STOP 2
end select
select type(one)
type is (t2)
- call abort ()
+ STOP 3
type is (t)
print *, 'OK', one
class default
- call abort ()
+ STOP 4
end select
end associate
end
diff --git a/gcc/testsuite/gfortran.dg/associate_9.f03 b/gcc/testsuite/gfortran.dg/associate_9.f03
index 56aad453e37..f5f4fe2a8ad 100644
--- a/gcc/testsuite/gfortran.dg/associate_9.f03
+++ b/gcc/testsuite/gfortran.dg/associate_9.f03
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2003 -fall-intrinsics" }
+! { dg-options "-std=f2003 " }
! PR fortran/38936
@@ -38,10 +38,10 @@ PROGRAM main
a = mynum (5)
ASSOCIATE (x => add (a, a))
- IF (x%comp /= 10) CALL abort ()
+ IF (x%comp /= 10) STOP 1
END ASSOCIATE
ASSOCIATE (x => a + a)
- IF (x%comp /= 10) CALL abort ()
+ IF (x%comp /= 10) STOP 2
END ASSOCIATE
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/associated_1.f90 b/gcc/testsuite/gfortran.dg/associated_1.f90
index e214fe2729e..6fe3f059075 100644
--- a/gcc/testsuite/gfortran.dg/associated_1.f90
+++ b/gcc/testsuite/gfortran.dg/associated_1.f90
@@ -5,16 +5,16 @@ program test
real, pointer :: a, b
nullify(a,b)
- if(associated(a,b).or.associated(a,a)) call abort()
+ if(associated(a,b).or.associated(a,a)) STOP 1
allocate(a)
- if(associated(b,a)) call abort()
- if (.not.associated(x(a))) call abort ()
- if (.not.associated(a, x(a))) call abort ()
+ if(associated(b,a)) STOP 2
+ if (.not.associated(x(a))) STOP 3
+ if (.not.associated(a, x(a))) STOP 4
nullify(b)
- if (associated(x(b))) call abort ()
+ if (associated(x(b))) STOP 5
allocate(b)
- if (associated(x(b), x(a))) call abort ()
+ if (associated(x(b), x(a))) STOP 6
contains
diff --git a/gcc/testsuite/gfortran.dg/associated_2.f90 b/gcc/testsuite/gfortran.dg/associated_2.f90
index 1ff8006de00..3089c7b514f 100644
--- a/gcc/testsuite/gfortran.dg/associated_2.f90
+++ b/gcc/testsuite/gfortran.dg/associated_2.f90
@@ -15,13 +15,13 @@ contains
b => a
! Even though b is zero length, associated returns true because
! the target argument is not present (case (i))
- if (.not. associated (b)) call abort ()
+ if (.not. associated (b)) STOP 1
deallocate (a)
nullify(a)
- if(associated(a,a)) call abort()
+ if(associated(a,a)) STOP 2
allocate (a(2,1,2))
b => a
- if (.not.associated (b)) call abort ()
+ if (.not.associated (b)) STOP 3
deallocate (a)
end subroutine test1
subroutine test2 ()
@@ -29,11 +29,11 @@ contains
allocate (a(2,0,2))
b => a
! Associated returns false because target is present (case(iii)).
- if (associated (b, a)) call abort ()
+ if (associated (b, a)) STOP 4
deallocate (a)
allocate (a(2,1,2))
b => a
- if (.not.associated (b, a)) call abort ()
+ if (.not.associated (b, a)) STOP 5
deallocate (a)
end subroutine test2
subroutine test3 (n)
@@ -43,9 +43,9 @@ contains
b => a
! Again, with zero character length associated returns false
! if target is present.
- if (associated (b, a) .and. (n .eq. 0)) call abort ()
+ if (associated (b, a) .and. (n .eq. 0)) STOP 6
!
- if ((.not.associated (b, a)) .and. (n .ne. 0)) call abort ()
+ if ((.not.associated (b, a)) .and. (n .ne. 0)) STOP 7
deallocate (a)
end subroutine test3
end
diff --git a/gcc/testsuite/gfortran.dg/associated_5.f90 b/gcc/testsuite/gfortran.dg/associated_5.f90
index a2007752f3c..d70e5f5a18e 100644
--- a/gcc/testsuite/gfortran.dg/associated_5.f90
+++ b/gcc/testsuite/gfortran.dg/associated_5.f90
@@ -13,7 +13,7 @@
ptr => ILA1
- if (ASSOCIATED (ptr, ILA1(NF1:NF2,NF4:NF3) ) ) call abort
- if ( .not. ASSOCIATED(ptr) ) call abort
+ if (ASSOCIATED (ptr, ILA1(NF1:NF2,NF4:NF3) ) ) STOP 1
+ if ( .not. ASSOCIATED(ptr) ) STOP 2
END SUBROUTINE
diff --git a/gcc/testsuite/gfortran.dg/associated_6.f90 b/gcc/testsuite/gfortran.dg/associated_6.f90
index b31c5bb9159..08bdf6cb3d4 100644
--- a/gcc/testsuite/gfortran.dg/associated_6.f90
+++ b/gcc/testsuite/gfortran.dg/associated_6.f90
@@ -12,9 +12,9 @@
type(treeNode) :: n
- if (associated(RightOf(n))) call abort()
+ if (associated(RightOf(n))) STOP 1
allocate(n%right)
- if (.not.associated(RightOf(n))) call abort()
+ if (.not.associated(RightOf(n))) STOP 2
deallocate(n%right)
contains
diff --git a/gcc/testsuite/gfortran.dg/associated_target_3.f90 b/gcc/testsuite/gfortran.dg/associated_target_3.f90
index 423499a2f76..300c73410ed 100644
--- a/gcc/testsuite/gfortran.dg/associated_target_3.f90
+++ b/gcc/testsuite/gfortran.dg/associated_target_3.f90
@@ -20,7 +20,7 @@ use m
implicit none
type(t2), pointer :: a
allocate(a)
-if (.not. associated(a,f(a))) call abort()
+if (.not. associated(a,f(a))) STOP 1
call cmpPtr(a,f2(a))
call cmpPtr(a,f(a))
deallocate(a)
@@ -28,6 +28,6 @@ contains
subroutine cmpPtr(a,b)
type(t2), pointer :: a,b
! print *, associated(a,b)
- if (.not. associated (a, b)) call abort()
+ if (.not. associated (a, b)) STOP 2
end subroutine cmpPtr
end
diff --git a/gcc/testsuite/gfortran.dg/associated_target_4.f90 b/gcc/testsuite/gfortran.dg/associated_target_4.f90
index 24f331785e8..4596f337f77 100644
--- a/gcc/testsuite/gfortran.dg/associated_target_4.f90
+++ b/gcc/testsuite/gfortran.dg/associated_target_4.f90
@@ -19,5 +19,5 @@ program rte1
root%child%id=2
print *,root%child%id," is child of ",root%id,":"
print *,root%child%parent%id,root%id
- if (.not. associated(root%child%parent,root)) call abort()
+ if (.not. associated(root%child%parent,root)) STOP 1
end program rte1
diff --git a/gcc/testsuite/gfortran.dg/associated_target_5.f03 b/gcc/testsuite/gfortran.dg/associated_target_5.f03
index 5c29b6014bf..b7125967ee1 100644
--- a/gcc/testsuite/gfortran.dg/associated_target_5.f03
+++ b/gcc/testsuite/gfortran.dg/associated_target_5.f03
@@ -15,22 +15,22 @@ program test_associate
associate (a => t%a)
! Test 'a' is OK on lhs and/or rhs of assignments
c = a - 1
- if (any (c .ne. [-1,0,1,2])) call abort
+ if (any (c .ne. [-1,0,1,2])) STOP 1
a = a + 1
- if (any (a .ne. [1,2,3,4])) call abort
+ if (any (a .ne. [1,2,3,4])) STOP 2
a = t%b
- if (any (a .ne. t%b)) call abort
+ if (any (a .ne. t%b)) STOP 3
! Test 'a' is OK as an actual argument
c = foo(a)
- if (any (c .ne. t%b + 10)) call abort
+ if (any (c .ne. t%b + 10)) STOP 4
end associate
! Make sure that the fix works for multi-dimensional arrays...
associate (a => u%a)
- if (any (a .ne. reshape ([1,1,1,1],[2,2]))) call abort
+ if (any (a .ne. reshape ([1,1,1,1],[2,2]))) STOP 5
end associate
! ...and sections
associate (a => t(2:3)%b)
- if (any (a .ne. [5,6])) call abort
+ if (any (a .ne. [5,6])) STOP 6
end associate
contains
function foo(arg) result(res)
diff --git a/gcc/testsuite/gfortran.dg/associated_target_6.f03 b/gcc/testsuite/gfortran.dg/associated_target_6.f03
index 15f795124c3..afca85434b3 100644
--- a/gcc/testsuite/gfortran.dg/associated_target_6.f03
+++ b/gcc/testsuite/gfortran.dg/associated_target_6.f03
@@ -42,8 +42,8 @@ program p
!.. create i with some value
allocate (i, source=42)
call foo%setptr (i)
- if (.not.associated (i, foo%iptr())) call abort () ! Gave bad result.
- if (.not.associated (foo%iptr(), i)) call abort () ! Was OK.
+ if (.not.associated (i, foo%iptr())) STOP 1 ! Gave bad result.
+ if (.not.associated (foo%iptr(), i)) STOP 2 ! Was OK.
j => foo%iptr()
- if (.not.associated (i, j)) call abort ! Was OK.
+ if (.not.associated (i, j)) STOP 1! Was OK.
end program p
diff --git a/gcc/testsuite/gfortran.dg/assumed_dummy_1.f90 b/gcc/testsuite/gfortran.dg/assumed_dummy_1.f90
index 7935898d879..a3bf08b2392 100644
--- a/gcc/testsuite/gfortran.dg/assumed_dummy_1.f90
+++ b/gcc/testsuite/gfortran.dg/assumed_dummy_1.f90
@@ -34,7 +34,7 @@ end interface
call foo (y, j)
call goo (y, j)
call roo (y, j)
- if (any(y.ne.(/21.0, 99.0, 42.0/))) call abort ()
+ if (any(y.ne.(/21.0, 99.0, 42.0/))) STOP 1
contains
SUBROUTINE roo (x, i)
REAL, DIMENSION(i:) :: x
diff --git a/gcc/testsuite/gfortran.dg/assumed_rank_1.f90 b/gcc/testsuite/gfortran.dg/assumed_rank_1.f90
index afddc830097..547836c1b58 100644
--- a/gcc/testsuite/gfortran.dg/assumed_rank_1.f90
+++ b/gcc/testsuite/gfortran.dg/assumed_rank_1.f90
@@ -23,7 +23,7 @@ integer :: i
allocate(z(1:4, -2:5, 4, 10:11))
-if (rank(x) /= 2) call abort ()
+if (rank(x) /= 2) STOP 1
val = [(2*i+3, i = 1, size(x))]
x = reshape (val, shape(x))
call foo(x, rank(x), lbound(x), ubound(x), val)
@@ -31,7 +31,7 @@ call foo2(x, rank(x), lbound(x), ubound(x), val)
call bar(x,x,.true.)
call bar(x,prsnt=.false.)
-if (rank(y) /= 1) call abort ()
+if (rank(y) /= 1) STOP 2
val = [(2*i+7, i = 1, size(y))]
y = reshape (val, shape(y))
call foo(y, rank(y), lbound(y), ubound(y), val)
@@ -39,7 +39,7 @@ call foo2(y, rank(y), lbound(y), ubound(y), val)
call bar(y,y,.true.)
call bar(y,prsnt=.false.)
-if (rank(z) /= 4) call abort ()
+if (rank(z) /= 4) STOP 3
val = [(2*i+5, i = 1, size(z))]
z(:,:,:,:) = reshape (val, shape(z))
call foo(z, rank(z), lbound(z), ubound(z), val)
@@ -52,16 +52,16 @@ contains
subroutine bar(a,b, prsnt)
integer, pointer, optional, intent(in) :: a(..),b(..)
logical, value :: prsnt
- if (.not. associated(a)) call abort()
+ if (.not. associated(a)) STOP 4
if (present(b)) then
! The following is not valid.
! Technically, it could be allowed and might be in Fortran 2015:
- ! if (.not. associated(a,b)) call abort()
+ ! if (.not. associated(a,b)) STOP 5
else
- if (.not. associated(a)) call abort()
+ if (.not. associated(a)) STOP 6
end if
- if (.not. present(a)) call abort()
- if (prsnt .neqv. present(b)) call abort()
+ if (.not. present(a)) STOP 7
+ if (prsnt .neqv. present(b)) STOP 8
end subroutine
! POINTER argument - bounds as specified before
@@ -73,20 +73,20 @@ contains
- if (rank(a) /= rnk) call abort()
- if (size(low) /= rnk .or. size(high) /= rnk) call abort()
- if (size(a) /= product (high - low +1)) call abort()
+ if (rank(a) /= rnk) STOP 9
+ if (size(low) /= rnk .or. size(high) /= rnk) STOP 10
+ if (size(a) /= product (high - low +1)) STOP 11
if (rnk > 0) then
- if (low(1) /= lbound(a,1)) call abort()
- if (high(1) /= ubound(a,1)) call abort()
- if (size (a,1) /= high(1)-low(1)+1) call abort()
+ if (low(1) /= lbound(a,1)) STOP 12
+ if (high(1) /= ubound(a,1)) STOP 13
+ if (size (a,1) /= high(1)-low(1)+1) STOP 14
end if
do i = 1, rnk
- if (low(i) /= lbound(a,i)) call abort()
- if (high(i) /= ubound(a,i)) call abort()
- if (size (a,i) /= high(i)-low(i)+1) call abort()
+ if (low(i) /= lbound(a,i)) STOP 15
+ if (high(i) /= ubound(a,i)) STOP 16
+ if (size (a,i) /= high(i)-low(i)+1) STOP 17
end do
call check_value (a, rnk, val)
call foo2(a, rnk, low, high, val)
@@ -99,20 +99,20 @@ contains
integer, intent(in) :: low(:), high(:), val(:)
integer :: i
- if (rank(a) /= rnk) call abort()
- if (size(low) /= rnk .or. size(high) /= rnk) call abort()
- if (size(a) /= product (high - low +1)) call abort()
+ if (rank(a) /= rnk) STOP 18
+ if (size(low) /= rnk .or. size(high) /= rnk) STOP 19
+ if (size(a) /= product (high - low +1)) STOP 20
if (rnk > 0) then
- if (1 /= lbound(a,1)) call abort()
- if (high(1)-low(1)+1 /= ubound(a,1)) call abort()
- if (size (a,1) /= high(1)-low(1)+1) call abort()
+ if (1 /= lbound(a,1)) STOP 21
+ if (high(1)-low(1)+1 /= ubound(a,1)) STOP 22
+ if (size (a,1) /= high(1)-low(1)+1) STOP 23
end if
do i = 1, rnk
- if (1 /= lbound(a,i)) call abort()
- if (high(i)-low(i)+1 /= ubound(a,i)) call abort()
- if (size (a,i) /= high(i)-low(i)+1) call abort()
+ if (1 /= lbound(a,i)) STOP 24
+ if (high(i)-low(i)+1 /= ubound(a,i)) STOP 25
+ if (size (a,i) /= high(i)-low(i)+1) STOP 26
end do
call check_value (a, rnk, val)
end subroutine foo2
@@ -124,20 +124,20 @@ contains
integer, intent(in) :: low(:), high(:), val(:)
integer :: i
- if (rank(a) /= rnk) call abort()
- if (size(low) /= rnk .or. size(high) /= rnk) call abort()
- if (size(a) /= product (high - low +1)) call abort()
+ if (rank(a) /= rnk) STOP 27
+ if (size(low) /= rnk .or. size(high) /= rnk) STOP 28
+ if (size(a) /= product (high - low +1)) STOP 29
if (rnk > 0) then
- if (low(1) /= lbound(a,1)) call abort()
- if (high(1) /= ubound(a,1)) call abort()
- if (size (a,1) /= high(1)-low(1)+1) call abort()
+ if (low(1) /= lbound(a,1)) STOP 30
+ if (high(1) /= ubound(a,1)) STOP 31
+ if (size (a,1) /= high(1)-low(1)+1) STOP 32
end if
do i = 1, rnk
- if (low(i) /= lbound(a,i)) call abort()
- if (high(i) /= ubound(a,i)) call abort()
- if (size (a,i) /= high(i)-low(i)+1) call abort()
+ if (low(i) /= lbound(a,i)) STOP 33
+ if (high(i) /= ubound(a,i)) STOP 34
+ if (size (a,i) /= high(i)-low(i)+1) STOP 35
end do
call check_value (a, rnk, val)
call foo(a, rnk, low, high, val)
diff --git a/gcc/testsuite/gfortran.dg/assumed_rank_10.f90 b/gcc/testsuite/gfortran.dg/assumed_rank_10.f90
index 4a6b9088de0..6a3cc94483e 100644
--- a/gcc/testsuite/gfortran.dg/assumed_rank_10.f90
+++ b/gcc/testsuite/gfortran.dg/assumed_rank_10.f90
@@ -30,23 +30,23 @@ program test
jjp = t(88)
call faa(iia, jja) ! Copy back
- if (iia /= 7 .and. jja%aa /= 88) call abort ()
+ if (iia /= 7 .and. jja%aa /= 88) STOP 1
call fai(iia, jja) ! No copy back
- if (iia /= 7 .and. jja%aa /= 88) call abort ()
+ if (iia /= 7 .and. jja%aa /= 88) STOP 2
call fpa(iip, jjp) ! Copy back
- if (iip /= 7 .and. jjp%aa /= 88) call abort ()
+ if (iip /= 7 .and. jjp%aa /= 88) STOP 3
call fpi(iip, jjp) ! No copy back
- if (iip /= 7 .and. jjp%aa /= 88) call abort ()
+ if (iip /= 7 .and. jjp%aa /= 88) STOP 4
call fnn(iia, jja) ! No copy back
- if (iia /= 7 .and. jja%aa /= 88) call abort ()
+ if (iia /= 7 .and. jja%aa /= 88) STOP 5
call fno(iia, jja) ! No copy back
- if (iia /= 7 .and. jja%aa /= 88) call abort ()
+ if (iia /= 7 .and. jja%aa /= 88) STOP 6
call fnn(iip, jjp) ! No copy back
- if (iip /= 7 .and. jjp%aa /= 88) call abort ()
+ if (iip /= 7 .and. jjp%aa /= 88) STOP 7
call fno(iip, jjp) ! No copy back
- if (iip /= 7 .and. jjp%aa /= 88) call abort ()
+ if (iip /= 7 .and. jjp%aa /= 88) STOP 8
is_present = .false.
@@ -61,27 +61,27 @@ contains
subroutine faa (xx1, yy1)
integer, allocatable :: xx1(..)
type(t), allocatable :: yy1(..)
- if (.not. allocated (xx1)) call abort ()
- if (.not. allocated (yy1)) call abort ()
+ if (.not. allocated (xx1)) STOP 9
+ if (.not. allocated (yy1)) STOP 10
end subroutine faa
subroutine fai (xx1, yy1)
integer, allocatable, intent(in) :: xx1(..)
type(t), allocatable, intent(in) :: yy1(..)
- if (.not. allocated (xx1)) call abort ()
- if (.not. allocated (yy1)) call abort ()
+ if (.not. allocated (xx1)) STOP 11
+ if (.not. allocated (yy1)) STOP 12
end subroutine fai
subroutine fpa (xx1, yy1)
integer, pointer :: xx1(..)
type(t), pointer :: yy1(..)
- if (is_present .neqv. associated (xx1)) call abort ()
- if (is_present .neqv. associated (yy1)) call abort ()
+ if (is_present .neqv. associated (xx1)) STOP 13
+ if (is_present .neqv. associated (yy1)) STOP 14
end subroutine fpa
subroutine fpi (xx1, yy1)
integer, pointer, intent(in) :: xx1(..)
type(t), pointer, intent(in) :: yy1(..)
- if (is_present .neqv. associated (xx1)) call abort ()
- if (is_present .neqv. associated (yy1)) call abort ()
+ if (is_present .neqv. associated (xx1)) STOP 15
+ if (is_present .neqv. associated (yy1)) STOP 16
end subroutine fpi
subroutine fnn(xx2,yy2)
@@ -92,8 +92,8 @@ contains
subroutine fno(xx2,yy2)
integer, optional :: xx2(..)
type(t), optional :: yy2(..)
- if (is_present .neqv. present (xx2)) call abort ()
- if (is_present .neqv. present (yy2)) call abort ()
+ if (is_present .neqv. present (xx2)) STOP 17
+ if (is_present .neqv. present (yy2)) STOP 18
end subroutine fno
end program test
diff --git a/gcc/testsuite/gfortran.dg/assumed_rank_2.f90 b/gcc/testsuite/gfortran.dg/assumed_rank_2.f90
index 8a1ea05768c..cdc75933e5e 100644
--- a/gcc/testsuite/gfortran.dg/assumed_rank_2.f90
+++ b/gcc/testsuite/gfortran.dg/assumed_rank_2.f90
@@ -16,7 +16,7 @@ integer :: i
allocate(z(1:4, -2:5, 4, 10:11))
-if (rank(x) /= 2) call abort ()
+if (rank(x) /= 2) STOP 1
val = [(2*i+3, i = 1, size(x))]
x = reshape (val, shape(x))
call foo(x, rank(x), lbound(x), ubound(x), val)
@@ -24,7 +24,7 @@ call foo2(x, rank(x), lbound(x), ubound(x), val)
call bar(x,x,.true.)
call bar(x,prsnt=.false.)
-if (rank(y) /= 1) call abort ()
+if (rank(y) /= 1) STOP 2
val = [(2*i+7, i = 1, size(y))]
y = reshape (val, shape(y))
call foo(y, rank(y), lbound(y), ubound(y), val)
@@ -32,7 +32,7 @@ call foo2(y, rank(y), lbound(y), ubound(y), val)
call bar(y,y,.true.)
call bar(y,prsnt=.false.)
-if (rank(z) /= 4) call abort ()
+if (rank(z) /= 4) STOP 3
val = [(2*i+5, i = 1, size(z))]
z(:,:,:,:) = reshape (val, shape(z))
call foo(z, rank(z), lbound(z), ubound(z), val)
@@ -45,16 +45,16 @@ contains
subroutine bar(a,b, prsnt)
integer, pointer, optional, intent(in) :: a(..),b(..)
logical, value :: prsnt
- if (.not. associated(a)) call abort()
+ if (.not. associated(a)) STOP 4
if (present(b)) then
! The following is not valid
! Technically, it could be allowed and might be in Fortran 2015:
- ! if (.not. associated(a,b)) call abort()
+ ! if (.not. associated(a,b)) STOP 5
else
- if (.not. associated(a)) call abort()
+ if (.not. associated(a)) STOP 6
end if
- if (.not. present(a)) call abort()
- if (prsnt .neqv. present(b)) call abort()
+ if (.not. present(a)) STOP 7
+ if (prsnt .neqv. present(b)) STOP 8
end subroutine
! POINTER argument - bounds as specified before
@@ -66,20 +66,20 @@ contains
- if (rank(a) /= rnk) call abort()
- if (size(low) /= rnk .or. size(high) /= rnk) call abort()
- if (size(a) /= product (high - low +1)) call abort()
+ if (rank(a) /= rnk) STOP 9
+ if (size(low) /= rnk .or. size(high) /= rnk) STOP 10
+ if (size(a) /= product (high - low +1)) STOP 11
if (rnk > 0) then
- if (low(1) /= lbound(a,1)) call abort()
- if (high(1) /= ubound(a,1)) call abort()
- if (size (a,1) /= high(1)-low(1)+1) call abort()
+ if (low(1) /= lbound(a,1)) STOP 12
+ if (high(1) /= ubound(a,1)) STOP 13
+ if (size (a,1) /= high(1)-low(1)+1) STOP 14
end if
do i = 1, rnk
- if (low(i) /= lbound(a,i)) call abort()
- if (high(i) /= ubound(a,i)) call abort()
- if (size (a,i) /= high(i)-low(i)+1) call abort()
+ if (low(i) /= lbound(a,i)) STOP 15
+ if (high(i) /= ubound(a,i)) STOP 16
+ if (size (a,i) /= high(i)-low(i)+1) STOP 17
end do
call foo2(a, rnk, low, high, val)
end subroutine
@@ -91,20 +91,20 @@ contains
integer, intent(in) :: low(:), high(:), val(:)
integer :: i
- if (rank(a) /= rnk) call abort()
- if (size(low) /= rnk .or. size(high) /= rnk) call abort()
- if (size(a) /= product (high - low +1)) call abort()
+ if (rank(a) /= rnk) STOP 18
+ if (size(low) /= rnk .or. size(high) /= rnk) STOP 19
+ if (size(a) /= product (high - low +1)) STOP 20
if (rnk > 0) then
- if (1 /= lbound(a,1)) call abort()
- if (high(1)-low(1)+1 /= ubound(a,1)) call abort()
- if (size (a,1) /= high(1)-low(1)+1) call abort()
+ if (1 /= lbound(a,1)) STOP 21
+ if (high(1)-low(1)+1 /= ubound(a,1)) STOP 22
+ if (size (a,1) /= high(1)-low(1)+1) STOP 23
end if
do i = 1, rnk
- if (1 /= lbound(a,i)) call abort()
- if (high(i)-low(i)+1 /= ubound(a,i)) call abort()
- if (size (a,i) /= high(i)-low(i)+1) call abort()
+ if (1 /= lbound(a,i)) STOP 24
+ if (high(i)-low(i)+1 /= ubound(a,i)) STOP 25
+ if (size (a,i) /= high(i)-low(i)+1) STOP 26
end do
end subroutine foo2
@@ -115,20 +115,20 @@ contains
integer, intent(in) :: low(:), high(:), val(:)
integer :: i
- if (rank(a) /= rnk) call abort()
- if (size(low) /= rnk .or. size(high) /= rnk) call abort()
- if (size(a) /= product (high - low +1)) call abort()
+ if (rank(a) /= rnk) STOP 27
+ if (size(low) /= rnk .or. size(high) /= rnk) STOP 28
+ if (size(a) /= product (high - low +1)) STOP 29
if (rnk > 0) then
- if (low(1) /= lbound(a,1)) call abort()
- if (high(1) /= ubound(a,1)) call abort()
- if (size (a,1) /= high(1)-low(1)+1) call abort()
+ if (low(1) /= lbound(a,1)) STOP 30
+ if (high(1) /= ubound(a,1)) STOP 31
+ if (size (a,1) /= high(1)-low(1)+1) STOP 32
end if
do i = 1, rnk
- if (low(i) /= lbound(a,i)) call abort()
- if (high(i) /= ubound(a,i)) call abort()
- if (size (a,i) /= high(i)-low(i)+1) call abort()
+ if (low(i) /= lbound(a,i)) STOP 33
+ if (high(i) /= ubound(a,i)) STOP 34
+ if (size (a,i) /= high(i)-low(i)+1) STOP 35
end do
call foo(a, rnk, low, high, val)
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/assumed_rank_7.f90 b/gcc/testsuite/gfortran.dg/assumed_rank_7.f90
index f9ff3b9aa42..183b1e8b796 100644
--- a/gcc/testsuite/gfortran.dg/assumed_rank_7.f90
+++ b/gcc/testsuite/gfortran.dg/assumed_rank_7.f90
@@ -22,43 +22,43 @@ call foo(ac)
call foo(at)
call bar(ac)
call bar(at)
-if (i /= 12) call abort()
+if (i /= 12) STOP 1
contains
subroutine bar(x)
type(t) :: x(..)
- if (lbound(x,1) /= 1 .or. lbound(x,2) /= 1) call abort()
- if (size(x) /= 6) call abort()
- if (size(x,1) /= 2 .or. size(x,2) /= 3) call abort()
- if (ubound(x,1) /= 2 .or. ubound(x,2) /= 3) call abort()
+ if (lbound(x,1) /= 1 .or. lbound(x,2) /= 1) STOP 2
+ if (size(x) /= 6) STOP 3
+ if (size(x,1) /= 2 .or. size(x,2) /= 3) STOP 4
+ if (ubound(x,1) /= 2 .or. ubound(x,2) /= 3) STOP 5
i = i + 1
call foo(x)
call bar2(x)
end subroutine
subroutine bar2(x)
type(t) :: x(..)
- if (lbound(x,1) /= 1 .or. lbound(x,2) /= 1) call abort()
- if (size(x) /= 6) call abort()
- if (size(x,1) /= 2 .or. size(x,2) /= 3) call abort()
- if (ubound(x,1) /= 2 .or. ubound(x,2) /= 3) call abort()
+ if (lbound(x,1) /= 1 .or. lbound(x,2) /= 1) STOP 6
+ if (size(x) /= 6) STOP 7
+ if (size(x,1) /= 2 .or. size(x,2) /= 3) STOP 8
+ if (ubound(x,1) /= 2 .or. ubound(x,2) /= 3) STOP 9
i = i + 1
end subroutine
subroutine foo(x)
class(t) :: x(..)
- if (lbound(x,1) /= 1 .or. lbound(x,2) /= 1) call abort()
- if (size(x) /= 6) call abort()
- if (size(x,1) /= 2 .or. size(x,2) /= 3) call abort()
- if (ubound(x,1) /= 2 .or. ubound(x,2) /= 3) call abort()
+ if (lbound(x,1) /= 1 .or. lbound(x,2) /= 1) STOP 10
+ if (size(x) /= 6) STOP 11
+ if (size(x,1) /= 2 .or. size(x,2) /= 3) STOP 12
+ if (ubound(x,1) /= 2 .or. ubound(x,2) /= 3) STOP 13
i = i + 1
call foo2(x)
! call bar2(x) ! Passing a CLASS to a TYPE does not yet work
end subroutine
subroutine foo2(x)
class(t) :: x(..)
- if (lbound(x,1) /= 1 .or. lbound(x,2) /= 1) call abort()
- if (size(x) /= 6) call abort()
- if (size(x,1) /= 2 .or. size(x,2) /= 3) call abort()
- if (ubound(x,1) /= 2 .or. ubound(x,2) /= 3) call abort()
+ if (lbound(x,1) /= 1 .or. lbound(x,2) /= 1) STOP 14
+ if (size(x) /= 6) STOP 15
+ if (size(x,1) /= 2 .or. size(x,2) /= 3) STOP 16
+ if (ubound(x,1) /= 2 .or. ubound(x,2) /= 3) STOP 17
i = i + 1
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/assumed_rank_8.f90 b/gcc/testsuite/gfortran.dg/assumed_rank_8.f90
index b1ccab5322c..5873296a7a5 100644
--- a/gcc/testsuite/gfortran.dg/assumed_rank_8.f90
+++ b/gcc/testsuite/gfortran.dg/assumed_rank_8.f90
@@ -24,20 +24,20 @@ program main
call f ()
call f (null())
call f (kk)
- if (j /= 2) call abort()
+ if (j /= 2) STOP 1
j = 0
nullify (ll)
call g (null())
call g (ll)
call g (ii)
- if (j /= 1) call abort()
+ if (j /= 1) STOP 2
j = 0
call h (kk)
kk = 489
call h (kk)
- if (j /= 1) call abort()
+ if (j /= 1) STOP 3
contains
@@ -45,7 +45,7 @@ contains
integer, optional :: x(..)
if (.not. present (x)) return
- if (rank (x) /= 0) call abort
+ if (rank (x) /= 0) STOP 1
call check (x)
j = j + 1
end subroutine
@@ -54,7 +54,7 @@ contains
integer, pointer, intent(in) :: x(..)
if (.not. associated (x)) return
- if (rank (x) /= 0) call abort ()
+ if (rank (x) /= 0) STOP 4
call check (x)
j = j + 1
end subroutine
@@ -63,7 +63,7 @@ contains
integer, allocatable :: x(..)
if (.not. allocated (x)) return
- if (rank (x) /= 0) call abort
+ if (rank (x) /= 0) STOP 2
call check (x)
j = j + 1
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/assumed_rank_9.f90 b/gcc/testsuite/gfortran.dg/assumed_rank_9.f90
index 39151f58789..1296d068959 100644
--- a/gcc/testsuite/gfortran.dg/assumed_rank_9.f90
+++ b/gcc/testsuite/gfortran.dg/assumed_rank_9.f90
@@ -35,7 +35,7 @@ program main
call fc(null())
call fc(y)
call fc(yac)
- if (j /= 2) call abort ()
+ if (j /= 2) STOP 1
j = 0
call gc(null())
@@ -43,21 +43,21 @@ program main
call gc(yac)
deallocate (yac)
call gc(yac)
- if (j /= 2) call abort ()
+ if (j /= 2) STOP 2
j = 0
call hc(yac)
allocate (yac)
yac%i = 489
call hc(yac)
- if (j /= 1) call abort ()
+ if (j /= 1) STOP 3
j = 0
call ft()
call ft(null())
call ft(y)
call ft(yac)
- if (j /= 2) call abort ()
+ if (j /= 2) STOP 4
j = 0
call gt(null())
@@ -65,14 +65,14 @@ program main
call gt(yac)
deallocate (yac)
call gt(yac)
- if (j /= 2) call abort ()
+ if (j /= 2) STOP 5
j = 0
call ht(yac)
allocate (yac)
yac%i = 489
call ht(yac)
- if (j /= 1) call abort ()
+ if (j /= 1) STOP 6
contains
@@ -80,8 +80,8 @@ contains
class(t), optional :: x(..)
if (.not. present (x)) return
- if (.not. SAME_TYPE_AS (x, yac)) call abort ()
- if (rank (x) /= 0) call abort
+ if (.not. SAME_TYPE_AS (x, yac)) STOP 7
+ if (rank (x) /= 0) STOP 1
call check2 (x)
j = j + 1
end subroutine
@@ -90,8 +90,8 @@ contains
class(t), pointer, intent(in) :: x(..)
if (.not. associated (x)) return
- if (.not. SAME_TYPE_AS (x, yac)) call abort ()
- if (rank (x) /= 0) call abort ()
+ if (.not. SAME_TYPE_AS (x, yac)) STOP 8
+ if (rank (x) /= 0) STOP 9
call check2 (x)
j = j + 1
end subroutine
@@ -100,8 +100,8 @@ contains
class(t), allocatable :: x(..)
if (.not. allocated (x)) return
- if (.not. SAME_TYPE_AS (x, yac)) call abort ()
- if (rank (x) /= 0) call abort
+ if (.not. SAME_TYPE_AS (x, yac)) STOP 10
+ if (rank (x) /= 0) STOP 2
call check2 (x)
j = j + 1
end subroutine
@@ -110,8 +110,8 @@ contains
type(t), optional :: x(..)
if (.not. present (x)) return
- if (.not. SAME_TYPE_AS (x, yac)) call abort ()
- if (rank (x) /= 0) call abort
+ if (.not. SAME_TYPE_AS (x, yac)) STOP 11
+ if (rank (x) /= 0) STOP 3
call check2 (x)
j = j + 1
end subroutine
@@ -120,8 +120,8 @@ contains
type(t), pointer, intent(in) :: x(..)
if (.not. associated (x)) return
- if (.not. SAME_TYPE_AS (x, yac)) call abort ()
- if (rank (x) /= 0) call abort ()
+ if (.not. SAME_TYPE_AS (x, yac)) STOP 12
+ if (rank (x) /= 0) STOP 13
call check2 (x)
j = j + 1
end subroutine
@@ -130,8 +130,8 @@ contains
type(t), allocatable :: x(..)
if (.not. allocated (x)) return
- if (.not. SAME_TYPE_AS (x, yac)) call abort ()
- if (rank (x) /= 0) call abort
+ if (.not. SAME_TYPE_AS (x, yac)) STOP 14
+ if (rank (x) /= 0) STOP 4
call check2 (x)
j = j + 1
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/assumed_rank_bounds_1.f90 b/gcc/testsuite/gfortran.dg/assumed_rank_bounds_1.f90
index fbca70777fc..7fb6a886971 100644
--- a/gcc/testsuite/gfortran.dg/assumed_rank_bounds_1.f90
+++ b/gcc/testsuite/gfortran.dg/assumed_rank_bounds_1.f90
@@ -27,36 +27,36 @@ contains
!print *, lbound(arg)
!print *, id(lbound(arg))
- if (any(lbound(arg) /= [1, 1])) call abort
- if (any(id(lbound(arg)) /= [1, 1])) call abort
+ if (any(lbound(arg) /= [1, 1])) STOP 1
+ if (any(id(lbound(arg)) /= [1, 1])) STOP 2
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) lbound(arg)
- if (buffer /= ' 1 1') call abort
+ if (buffer /= ' 1 1') STOP 3
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) id(lbound(arg))
- if (buffer /= ' 1 1') call abort
+ if (buffer /= ' 1 1') STOP 4
!print *, ubound(arg)
!print *, id(ubound(arg))
- if (any(ubound(arg) /= [3, 8])) call abort
- if (any(id(ubound(arg)) /= [3, 8])) call abort
+ if (any(ubound(arg) /= [3, 8])) STOP 5
+ if (any(id(ubound(arg)) /= [3, 8])) STOP 6
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) ubound(arg)
- if (buffer /= ' 3 8') call abort
+ if (buffer /= ' 3 8') STOP 7
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) id(ubound(arg))
- if (buffer /= ' 3 8') call abort
+ if (buffer /= ' 3 8') STOP 8
!print *, shape(arg)
!print *, id(shape(arg))
- if (any(shape(arg) /= [3, 8])) call abort
- if (any(id(shape(arg)) /= [3, 8])) call abort
+ if (any(shape(arg) /= [3, 8])) STOP 9
+ if (any(id(shape(arg)) /= [3, 8])) STOP 10
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) shape(arg)
- if (buffer /= ' 3 8') call abort
+ if (buffer /= ' 3 8') STOP 11
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) id(shape(arg))
- if (buffer /= ' 3 8') call abort
+ if (buffer /= ' 3 8') STOP 12
end subroutine foo
subroutine bar(arg)
@@ -64,36 +64,36 @@ contains
!print *, lbound(arg)
!print *, id(lbound(arg))
- if (any(lbound(arg) /= [2, -2])) call abort
- if (any(id(lbound(arg)) /= [2, -2])) call abort
+ if (any(lbound(arg) /= [2, -2])) STOP 13
+ if (any(id(lbound(arg)) /= [2, -2])) STOP 14
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) lbound(arg)
- if (buffer /= ' 2 -2') call abort
+ if (buffer /= ' 2 -2') STOP 15
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) id(lbound(arg))
- if (buffer /= ' 2 -2') call abort
+ if (buffer /= ' 2 -2') STOP 16
!print *, ubound(arg)
!print *, id(ubound(arg))
- if (any(ubound(arg) /= [4, 5])) call abort
- if (any(id(ubound(arg)) /= [4, 5])) call abort
+ if (any(ubound(arg) /= [4, 5])) STOP 17
+ if (any(id(ubound(arg)) /= [4, 5])) STOP 18
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) ubound(arg)
- if (buffer /= ' 4 5') call abort
+ if (buffer /= ' 4 5') STOP 19
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) id(ubound(arg))
- if (buffer /= ' 4 5') call abort
+ if (buffer /= ' 4 5') STOP 20
!print *, shape(arg)
!print *, id(shape(arg))
- if (any(shape(arg) /= [3, 8])) call abort
- if (any(id(shape(arg)) /= [3, 8])) call abort
+ if (any(shape(arg) /= [3, 8])) STOP 21
+ if (any(id(shape(arg)) /= [3, 8])) STOP 22
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) shape(arg)
- if (buffer /= ' 3 8') call abort
+ if (buffer /= ' 3 8') STOP 23
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) id(shape(arg))
- if (buffer /= ' 3 8') call abort
+ if (buffer /= ' 3 8') STOP 24
end subroutine bar
subroutine baz(arg)
@@ -101,36 +101,36 @@ contains
!print *, lbound(arg)
!print *, id(lbound(arg))
- if (any(lbound(arg) /= [2, -2])) call abort
- if (any(id(lbound(arg)) /= [2, -2])) call abort
+ if (any(lbound(arg) /= [2, -2])) STOP 25
+ if (any(id(lbound(arg)) /= [2, -2])) STOP 26
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) lbound(arg)
- if (buffer /= ' 2 -2') call abort
+ if (buffer /= ' 2 -2') STOP 27
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) id(lbound(arg))
- if (buffer /= ' 2 -2') call abort
+ if (buffer /= ' 2 -2') STOP 28
!print *, ubound(arg)
!print *, id(ubound(arg))
- if (any(ubound(arg) /= [4, 5])) call abort
- if (any(id(ubound(arg)) /= [4, 5])) call abort
+ if (any(ubound(arg) /= [4, 5])) STOP 29
+ if (any(id(ubound(arg)) /= [4, 5])) STOP 30
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) ubound(arg)
- if (buffer /= ' 4 5') call abort
+ if (buffer /= ' 4 5') STOP 31
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) id(ubound(arg))
- if (buffer /= ' 4 5') call abort
+ if (buffer /= ' 4 5') STOP 32
!print *, shape(arg)
!print *, id(shape(arg))
- if (any(shape(arg) /= [3, 8])) call abort
- if (any(id(shape(arg)) /= [3, 8])) call abort
+ if (any(shape(arg) /= [3, 8])) STOP 33
+ if (any(id(shape(arg)) /= [3, 8])) STOP 34
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) shape(arg)
- if (buffer /= ' 3 8') call abort
+ if (buffer /= ' 3 8') STOP 35
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) id(shape(arg))
- if (buffer /= ' 3 8') call abort
+ if (buffer /= ' 3 8') STOP 36
end subroutine baz
elemental function id(arg)
diff --git a/gcc/testsuite/gfortran.dg/assumed_rank_bounds_2.f90 b/gcc/testsuite/gfortran.dg/assumed_rank_bounds_2.f90
index 91752e5fc41..b5d06269bc8 100644
--- a/gcc/testsuite/gfortran.dg/assumed_rank_bounds_2.f90
+++ b/gcc/testsuite/gfortran.dg/assumed_rank_bounds_2.f90
@@ -14,64 +14,64 @@ program test
b = foo(a)
!print *,b(:,1)
- if (any(b(:,1) /= [11, 101])) call abort
+ if (any(b(:,1) /= [11, 101])) STOP 1
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) b(:,1)
- if (buffer /= ' 11 101') call abort
+ if (buffer /= ' 11 101') STOP 2
!print *,b(:,2)
- if (any(b(:,2) /= [3, 8])) call abort
+ if (any(b(:,2) /= [3, 8])) STOP 3
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) b(:,2)
- if (buffer /= ' 3 8') call abort
+ if (buffer /= ' 3 8') STOP 4
!print *,b(:,3)
- if (any(b(:,3) /= [13, 108])) call abort
+ if (any(b(:,3) /= [13, 108])) STOP 5
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) b(:,3)
- if (buffer /= ' 13 108') call abort
+ if (buffer /= ' 13 108') STOP 6
allocate(c(1:2,-3:6))
b = bar(c)
!print *,b(:,1)
- if (any(b(:,1) /= [11, 97])) call abort
+ if (any(b(:,1) /= [11, 97])) STOP 7
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) b(:,1)
- if (buffer /= ' 11 97') call abort
+ if (buffer /= ' 11 97') STOP 8
!print *,b(:,2)
- if (any(b(:,2) /= [12, 106])) call abort
+ if (any(b(:,2) /= [12, 106])) STOP 9
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) b(:,2)
- if (buffer /= ' 12 106') call abort
+ if (buffer /= ' 12 106') STOP 10
!print *,b(:,3)
- if (any(b(:,3) /= [2, 10])) call abort
+ if (any(b(:,3) /= [2, 10])) STOP 11
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) b(:,3)
- if (buffer /= ' 2 10') call abort
+ if (buffer /= ' 2 10') STOP 12
allocate(d(3:5,-1:10))
b = baz(d)
!print *,b(:,1)
- if (any(b(:,1) /= [3, -1])) call abort
+ if (any(b(:,1) /= [3, -1])) STOP 13
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) b(:,1)
- if (buffer /= ' 3 -1') call abort
+ if (buffer /= ' 3 -1') STOP 14
!print *,b(:,2)
- if (any(b(:,2) /= [15, 110])) call abort
+ if (any(b(:,2) /= [15, 110])) STOP 15
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) b(:,2)
- if (buffer /= ' 15 110') call abort
+ if (buffer /= ' 15 110') STOP 16
!print *,b(:,3)
- if (any(b(:,3) /= [13, 112])) call abort
+ if (any(b(:,3) /= [13, 112])) STOP 17
buffer = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'
write(buffer,*) b(:,3)
- if (buffer /= ' 13 112') call abort
+ if (buffer /= ' 13 112') STOP 18
contains
diff --git a/gcc/testsuite/gfortran.dg/assumed_shape_ranks_2.f90 b/gcc/testsuite/gfortran.dg/assumed_shape_ranks_2.f90
index 641d3d929f4..8d6f2393c7b 100644
--- a/gcc/testsuite/gfortran.dg/assumed_shape_ranks_2.f90
+++ b/gcc/testsuite/gfortran.dg/assumed_shape_ranks_2.f90
@@ -33,13 +33,13 @@ end module mod1
i = 0
call foo (1e0, i)
- if (i .ne. 1) call abort ()
+ if (i .ne. 1) STOP 1
i = 0
call foo (bar(1), i)
- if (i .ne. 1) call abort ()
+ if (i .ne. 1) STOP 2
i = 0
call foo (bar, i)
- if (i .ne. 2) call abort ()
+ if (i .ne. 2) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/assumed_type_2.f90 b/gcc/testsuite/gfortran.dg/assumed_type_2.f90
index a0e1bc1b19c..acf587386c5 100644
--- a/gcc/testsuite/gfortran.dg/assumed_type_2.f90
+++ b/gcc/testsuite/gfortran.dg/assumed_type_2.f90
@@ -26,7 +26,7 @@ contains
type(*), target, optional :: arg1
logical :: presnt
type(c_ptr) :: cpt
- if (presnt .neqv. present (arg1)) call abort ()
+ if (presnt .neqv. present (arg1)) STOP 1
cpt = c_loc (arg1)
end subroutine sub_scalar
@@ -34,12 +34,12 @@ contains
type(*), target :: arg2(:,:)
type(c_ptr) :: cpt
integer :: lbounds(2), ubounds(2)
- if (any (lbound(arg2) /= lbounds)) call abort ()
- if (any (ubound(arg2) /= ubounds)) call abort ()
- if (any (shape(arg2) /= ubounds-lbounds+1)) call abort ()
- if (size(arg2) /= product (ubounds-lbounds+1)) call abort ()
- if (rank (arg2) /= 2) call abort ()
-! if (.not. is_continuous (arg2)) call abort () !<< Not yet implemented
+ if (any (lbound(arg2) /= lbounds)) STOP 2
+ if (any (ubound(arg2) /= ubounds)) STOP 3
+ if (any (shape(arg2) /= ubounds-lbounds+1)) STOP 4
+ if (size(arg2) /= product (ubounds-lbounds+1)) STOP 5
+ if (rank (arg2) /= 2) STOP 6
+! if (.not. is_continuous (arg2)) STOP 7 !<< Not yet implemented
! cpt = c_loc (arg2) ! << FIXME: Valid since TS29113
call sub_array_assumed (arg2)
end subroutine sub_array_shape
diff --git a/gcc/testsuite/gfortran.dg/atan2_1.f90 b/gcc/testsuite/gfortran.dg/atan2_1.f90
index 65da63cd2d3..df9381b1137 100644
--- a/gcc/testsuite/gfortran.dg/atan2_1.f90
+++ b/gcc/testsuite/gfortran.dg/atan2_1.f90
@@ -10,28 +10,28 @@ integer :: i
real, parameter :: pi4 = 2*acos(0.0)
real, parameter :: pi8 = 2*acos(0.0d0)
do i = 1, 10
- if(atan(1.0, i/10.0) -atan2(1.0, i/10.) /= 0.0) call abort()
- if(atan(1.0d0,i/10.0d0)-atan2(1.0d0,i/10.0d0) /= 0.0d0) call abort()
+ if(atan(1.0, i/10.0) -atan2(1.0, i/10.) /= 0.0) STOP 1
+ if(atan(1.0d0,i/10.0d0)-atan2(1.0d0,i/10.0d0) /= 0.0d0) STOP 2
end do
! Atan(1,1) = Pi/4
-if (abs(atan(1.0,1.0) -pi4/4.0) > epsilon(pi4)) call abort()
-if (abs(atan(1.0d0,1.0d0)-pi8/4.0d0) > epsilon(pi8)) call abort()
+if (abs(atan(1.0,1.0) -pi4/4.0) > epsilon(pi4)) STOP 3
+if (abs(atan(1.0d0,1.0d0)-pi8/4.0d0) > epsilon(pi8)) STOP 4
! Atan(-1,1) = -Pi/4
-if (abs(atan(-1.0,1.0) +pi4/4.0) > epsilon(pi4)) call abort()
-if (abs(atan(-1.0d0,1.0d0)+pi8/4.0d0) > epsilon(pi8)) call abort()
+if (abs(atan(-1.0,1.0) +pi4/4.0) > epsilon(pi4)) STOP 5
+if (abs(atan(-1.0d0,1.0d0)+pi8/4.0d0) > epsilon(pi8)) STOP 6
! Atan(1,-1) = 3/4*Pi
-if (abs(atan(1.0,-1.0) -3.0*pi4/4.0) > epsilon(pi4)) call abort()
-if (abs(atan(1.0d0,-1.0d0)-3.0d0*pi8/4.0d0) > epsilon(pi8)) call abort()
+if (abs(atan(1.0,-1.0) -3.0*pi4/4.0) > epsilon(pi4)) STOP 7
+if (abs(atan(1.0d0,-1.0d0)-3.0d0*pi8/4.0d0) > epsilon(pi8)) STOP 8
! Atan(-1,-1) = -3/4*Pi
-if (abs(atan(-1.0,-1.0) +3.0*pi4/4.0) > epsilon(pi4)) call abort()
-if (abs(atan(-1.0d0,-1.0d0)+3.0d0*pi8/4.0d0) > epsilon(pi8)) call abort()
+if (abs(atan(-1.0,-1.0) +3.0*pi4/4.0) > epsilon(pi4)) STOP 9
+if (abs(atan(-1.0d0,-1.0d0)+3.0d0*pi8/4.0d0) > epsilon(pi8)) STOP 10
! Atan(3,-5) = 2.60117315331920908301906501867... = Pi - 3/2 atan(3/5)
-if (abs(atan(3.0,-5.0) -2.60117315331920908301906501867) > epsilon(pi4)) call abort()
-if (abs(atan(3.0d0,-5.0d0)-2.60117315331920908301906501867d0) > epsilon(pi8)) call abort()
+if (abs(atan(3.0,-5.0) -2.60117315331920908301906501867) > epsilon(pi4)) STOP 11
+if (abs(atan(3.0d0,-5.0d0)-2.60117315331920908301906501867d0) > epsilon(pi8)) STOP 12
end
diff --git a/gcc/testsuite/gfortran.dg/auto_array_1.f90 b/gcc/testsuite/gfortran.dg/auto_array_1.f90
index 64cc113f863..e33e2ced51a 100644
--- a/gcc/testsuite/gfortran.dg/auto_array_1.f90
+++ b/gcc/testsuite/gfortran.dg/auto_array_1.f90
@@ -21,7 +21,7 @@ contains
! Check it worked.
if (any (z .ne. reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/)))) &
- call abort
+ STOP 1
end subroutine foo
subroutine foo1(n,x)
diff --git a/gcc/testsuite/gfortran.dg/auto_char_dummy_array_1.f90 b/gcc/testsuite/gfortran.dg/auto_char_dummy_array_1.f90
index f24ce887643..d94f81af3c6 100644
--- a/gcc/testsuite/gfortran.dg/auto_char_dummy_array_1.f90
+++ b/gcc/testsuite/gfortran.dg/auto_char_dummy_array_1.f90
@@ -14,20 +14,20 @@ program oh_no_not_pr15908_again
nullify(ptr)
call a (ptr, 12)
- if (.not.associated (ptr) ) call abort ()
- if (any (ptr.ne."abc")) call abort ()
+ if (.not.associated (ptr) ) STOP 1
+ if (any (ptr.ne."abc")) STOP 2
ptr => null () ! ptr points to 't' here.
allocate (ptr(3))
ptr = "xyz"
call a (ptr, 12)
- if (.not.associated (ptr)) call abort ()
- if (any (ptr.ne."lmn")) call abort ()
+ if (.not.associated (ptr)) STOP 3
+ if (any (ptr.ne."lmn")) STOP 4
call a (ptr, 0)
- if (associated (ptr)) call abort ()
+ if (associated (ptr)) STOP 5
contains
@@ -48,8 +48,8 @@ contains
t = "abc"
p => t
else
- if (size (p,1).ne.3) call abort ()
- if (any (p.ne."xyz")) call abort ()
+ if (size (p,1).ne.3) STOP 6
+ if (any (p.ne."xyz")) STOP 7
p = s
end if
end subroutine a
diff --git a/gcc/testsuite/gfortran.dg/auto_char_dummy_array_3.f90 b/gcc/testsuite/gfortran.dg/auto_char_dummy_array_3.f90
index 053956cabfd..85f3e4cb8d3 100644
--- a/gcc/testsuite/gfortran.dg/auto_char_dummy_array_3.f90
+++ b/gcc/testsuite/gfortran.dg/auto_char_dummy_array_3.f90
@@ -19,7 +19,7 @@ CONTAINS
CHARACTER(MAX (80, nb)) :: bad_rec(1)
bad_rec(1)(1:2) = 'abc'
- IF (bad_rec(1)(1:2) /= 'ab') CALL abort ()
+ IF (bad_rec(1)(1:2) /= 'ab') STOP 1
END SUBROUTINE s
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/auto_char_len_3.f90 b/gcc/testsuite/gfortran.dg/auto_char_len_3.f90
index b94151148af..d709c4cc3dd 100644
--- a/gcc/testsuite/gfortran.dg/auto_char_len_3.f90
+++ b/gcc/testsuite/gfortran.dg/auto_char_len_3.f90
@@ -21,5 +21,5 @@ program TestStringTools
(/(char(i+64),char(i+96), i = 1,26)/)
txt = chararray2string(chararr)
if (txt .ne. "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz") &
- call abort ()
+ STOP 1
end program TestStringTools
diff --git a/gcc/testsuite/gfortran.dg/auto_char_pointer_array_result_1.f90 b/gcc/testsuite/gfortran.dg/auto_char_pointer_array_result_1.f90
index 8e3eb94c261..1ae0d9b1e35 100644
--- a/gcc/testsuite/gfortran.dg/auto_char_pointer_array_result_1.f90
+++ b/gcc/testsuite/gfortran.dg/auto_char_pointer_array_result_1.f90
@@ -8,10 +8,10 @@
character(10), dimension (2) :: source
source = "abcdefghij"
explicit_result = join_1(source)
- if (any (explicit_result .ne. source)) call abort ()
+ if (any (explicit_result .ne. source)) STOP 1
implicit_result = reallocate_hnv (source, size(source, 1), LEN (source))
- if (any (implicit_result .ne. source)) call abort ()
+ if (any (implicit_result .ne. source)) STOP 2
contains
diff --git a/gcc/testsuite/gfortran.dg/auto_internal_assumed.f90 b/gcc/testsuite/gfortran.dg/auto_internal_assumed.f90
index ec0ea7f1510..781aa2e0960 100644
--- a/gcc/testsuite/gfortran.dg/auto_internal_assumed.f90
+++ b/gcc/testsuite/gfortran.dg/auto_internal_assumed.f90
@@ -4,7 +4,7 @@
!
character (6) :: c
c = f1 ()
- if (c .ne. 'abcdef') call abort
+ if (c .ne. 'abcdef') STOP 1
contains
function f1 () ! { dg-error "must not be assumed length" }
character (*) :: f1
diff --git a/gcc/testsuite/gfortran.dg/auto_pointer_array_result_1.f90 b/gcc/testsuite/gfortran.dg/auto_pointer_array_result_1.f90
index 7e7cde5fbdd..1cd5fcbdc7f 100644
--- a/gcc/testsuite/gfortran.dg/auto_pointer_array_result_1.f90
+++ b/gcc/testsuite/gfortran.dg/auto_pointer_array_result_1.f90
@@ -8,10 +8,10 @@
character(10), dimension (2) :: source
source = "abcdefghij"
explicit_result = join_1(source)
- if (any (explicit_result .ne. source)) call abort ()
+ if (any (explicit_result .ne. source)) STOP 1
implicit_result = reallocate_hnv (source, size(source, 1), LEN (source))
- if (any (implicit_result .ne. source)) call abort ()
+ if (any (implicit_result .ne. source)) STOP 2
contains
diff --git a/gcc/testsuite/gfortran.dg/auto_save_2.f90 b/gcc/testsuite/gfortran.dg/auto_save_2.f90
index 0ec469d93ae..c93f0b07c7b 100644
--- a/gcc/testsuite/gfortran.dg/auto_save_2.f90
+++ b/gcc/testsuite/gfortran.dg/auto_save_2.f90
@@ -60,22 +60,22 @@ implicit none
integer f, f2, g, g2
! Should return static value of a; accumulates y
-if ( f(3) .ne. 3 ) call abort ()
-if ( f(4) .ne. 7 ) call abort ()
-if ( f(2) .ne. 9 ) call abort ()
+if ( f(3) .ne. 3 ) STOP 1
+if ( f(4) .ne. 7 ) STOP 2
+if ( f(2) .ne. 9 ) STOP 3
-if ( f2(3) .ne. 3 ) call abort ()
-if ( f2(4) .ne. 7 ) call abort ()
-if ( f2(2) .ne. 9 ) call abort ()
+if ( f2(3) .ne. 3 ) STOP 4
+if ( f2(4) .ne. 7 ) STOP 5
+if ( f2(2) .ne. 9 ) STOP 6
! Should return automatic value of a; equal to y each time
-if ( g(3) .ne. 3 ) call abort ()
-if ( g(4) .ne. 4 ) call abort ()
-if ( g(2) .ne. 2 ) call abort ()
+if ( g(3) .ne. 3 ) STOP 7
+if ( g(4) .ne. 4 ) STOP 8
+if ( g(2) .ne. 2 ) STOP 9
-if ( g2(3) .ne. 3 ) call abort ()
-if ( g2(4) .ne. 4 ) call abort ()
-if ( g2(2) .ne. 2 ) call abort ()
+if ( g2(3) .ne. 3 ) STOP 10
+if ( g2(4) .ne. 4 ) STOP 11
+if ( g2(2) .ne. 2 ) STOP 12
end
diff --git a/gcc/testsuite/gfortran.dg/automatic_default_init_1.f90 b/gcc/testsuite/gfortran.dg/automatic_default_init_1.f90
index 178706a3422..571ece95d78 100644
--- a/gcc/testsuite/gfortran.dg/automatic_default_init_1.f90
+++ b/gcc/testsuite/gfortran.dg/automatic_default_init_1.f90
@@ -12,7 +12,7 @@ CONTAINS
SUBROUTINE S1(I)
INTEGER, INTENT(IN) :: I
TYPE(T1) :: D(1:I)
- IF (any (D(:)%I.NE.7)) CALL ABORT()
+ IF (any (D(:)%I.NE.7)) STOP 1
END SUBROUTINE S1
END MODULE M1
USE M1
diff --git a/gcc/testsuite/gfortran.dg/backslash_1.f90 b/gcc/testsuite/gfortran.dg/backslash_1.f90
index b9851342bb2..8785c8b844d 100644
--- a/gcc/testsuite/gfortran.dg/backslash_1.f90
+++ b/gcc/testsuite/gfortran.dg/backslash_1.f90
@@ -4,5 +4,5 @@
write (10,'(A)') '1\n2'
rewind (10)
read (10,'(A)') a
- if (a /= '1\n2') call abort
+ if (a /= '1\n2') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/backslash_2.f90 b/gcc/testsuite/gfortran.dg/backslash_2.f90
index 2f954d53949..1e9d1c3b546 100644
--- a/gcc/testsuite/gfortran.dg/backslash_2.f90
+++ b/gcc/testsuite/gfortran.dg/backslash_2.f90
@@ -5,7 +5,7 @@
write (10,'(A)') '1\n2'
rewind (10)
read (10,*,iostat=e) i
- if (e /= 0 .or. i /= 1) call abort
+ if (e /= 0 .or. i /= 1) STOP 1
read (10,*,iostat=e) i
- if (e /= 0 .or. i /= 2) call abort
+ if (e /= 0 .or. i /= 2) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/backslash_3.f b/gcc/testsuite/gfortran.dg/backslash_3.f
index 8625b3724e4..96f45983417 100644
--- a/gcc/testsuite/gfortran.dg/backslash_3.f
+++ b/gcc/testsuite/gfortran.dg/backslash_3.f
@@ -11,14 +11,14 @@ C PR fortran/30278
rewind(10)
read(10,'(A34)') str1
str2 = 'Does ' // c1 // 'ackslash result in ' // c1 // 'ackslash'
- if (str1 .ne. str2) call abort
+ if (str1 .ne. str2) STOP 1
rewind(10)
write (10, 200)
rewind(10)
read(10,'(A37)') str3
str4 = 'Does ' //c2// 'backslash result in ' //c2// 'backslash'
- if (str3 .ne. str4) call abort
+ if (str3 .ne. str4) STOP 2
stop
100 format ('Does \backslash result in \backslash')
diff --git a/gcc/testsuite/gfortran.dg/backspace_1.f b/gcc/testsuite/gfortran.dg/backspace_1.f
index 4cfc9c13225..6067901caf5 100644
--- a/gcc/testsuite/gfortran.dg/backspace_1.f
+++ b/gcc/testsuite/gfortran.dg/backspace_1.f
@@ -11,11 +11,11 @@
write (20,*) 3
rewind (20)
read (20,*) i
- if (i .ne. 1) call abort
+ if (i .ne. 1) STOP 1
write (*,*) ' '
backspace (20)
read (20,*) i
- if (i .ne. 1) call abort
+ if (i .ne. 1) STOP 2
close (20)
! PR libfortran/20125
@@ -23,14 +23,14 @@
write (20,*) 7
backspace (20)
read (20,*) i
- if (i .ne. 7) call abort
+ if (i .ne. 7) STOP 3
close (20)
open (20, status='scratch', form='unformatted')
write (20) 8
backspace (20)
read (20) i
- if (i .ne. 8) call abort
+ if (i .ne. 8) STOP 4
close (20)
! PR libfortran/20471
@@ -44,7 +44,7 @@
read (3) (y(n),n=1,10)
do n = 1, 10
- if (abs(x(n)-y(n)) > 0.00001) call abort
+ if (abs(x(n)-y(n)) > 0.00001) STOP 5
end do
close (3)
@@ -61,7 +61,7 @@
nr = nr + 1
goto 20
30 continue
- if (nr .ne. 5) call abort
+ if (nr .ne. 5) STOP 6
do i = 1, nr+1
backspace (3)
@@ -69,14 +69,14 @@
do i = 1, nr
read(3,end=70,err=90) n, (x(n),n=1,10)
- if (abs(x(1) - i) .gt. 0.001) call abort
+ if (abs(x(1) - i) .gt. 0.001) STOP 7
end do
close (3)
stop
70 continue
- call abort
+ STOP 8
90 continue
- call abort
+ STOP 9
end
diff --git a/gcc/testsuite/gfortran.dg/backspace_10.f90 b/gcc/testsuite/gfortran.dg/backspace_10.f90
index 574d464c4b3..a5c48246e4a 100644
--- a/gcc/testsuite/gfortran.dg/backspace_10.f90
+++ b/gcc/testsuite/gfortran.dg/backspace_10.f90
@@ -17,21 +17,21 @@ program gfcbug69b
open (iunit, action="read", status="old")
read (iunit,'(a)',iostat=ios) line
- if (ios /= 0) call abort
+ if (ios /= 0) STOP 1
read (iunit,'(a)',iostat=ios) line
- if (ios /= 0) call abort
+ if (ios /= 0) STOP 2
read (iunit,'(a)',iostat=ios) line
- if (ios /= 0) call abort
+ if (ios /= 0) STOP 3
read (iunit,'(a)',iostat=ios) line
if (ios /= 0) backspace (iunit)
rewind (iunit)
read (iunit,'(a)',iostat=ios) line
- if (ios /= 0) call abort
+ if (ios /= 0) STOP 4
read (iunit,'(a)',iostat=ios) line
- if (ios /= 0) call abort
+ if (ios /= 0) STOP 5
read (iunit,'(a)',iostat=ios) line
- if (ios /= 0) call abort
+ if (ios /= 0) STOP 6
read (iunit,'(a)',iostat=ios) line
- if (ios /= -1) call abort
+ if (ios /= -1) STOP 7
close (iunit, status="delete")
end program gfcbug69b
diff --git a/gcc/testsuite/gfortran.dg/backspace_11.f90 b/gcc/testsuite/gfortran.dg/backspace_11.f90
index e369b75f67c..f222a2c279c 100644
--- a/gcc/testsuite/gfortran.dg/backspace_11.f90
+++ b/gcc/testsuite/gfortran.dg/backspace_11.f90
@@ -14,11 +14,11 @@ program backspace_11
!the file pointer is now at EOF
read(10,*,end=2) str
- call abort
+ STOP 1
2 backspace 10
!the file pointer is now at EOF
read(10,'(A)',end=3) str
- call abort
+ STOP 2
3 continue
end program backspace_11
diff --git a/gcc/testsuite/gfortran.dg/backspace_2.f b/gcc/testsuite/gfortran.dg/backspace_2.f
index 3b633355b2b..4fdcb27f97a 100644
--- a/gcc/testsuite/gfortran.dg/backspace_2.f
+++ b/gcc/testsuite/gfortran.dg/backspace_2.f
@@ -8,12 +8,12 @@
rewind 11
write(11) dat
read(11,end=1008) dat
- call abort()
+ STOP 1
1008 continue
backspace 11
write(11) dat
read(11,end=1011) dat
- call abort()
+ STOP 2
1011 continue
backspace 11
backspace 11
diff --git a/gcc/testsuite/gfortran.dg/backspace_3.f b/gcc/testsuite/gfortran.dg/backspace_3.f
index 419063b94a2..80fd40129a4 100644
--- a/gcc/testsuite/gfortran.dg/backspace_3.f
+++ b/gcc/testsuite/gfortran.dg/backspace_3.f
@@ -7,14 +7,14 @@
open(unit=11,status='scratch',form='unformatted')
write(11)data
read(11,end= 1000 )data
- call abort()
+ STOP 1
1000 continue
backspace 11
backspace 11
backspace 11
read(11,end= 1001 )data
1001 continue
- if (data.ne.-1) call abort
+ if (data.ne.-1) STOP 1
close(11)
end
diff --git a/gcc/testsuite/gfortran.dg/backspace_4.f b/gcc/testsuite/gfortran.dg/backspace_4.f
index 69e0f40c7a1..8d28e6184f1 100644
--- a/gcc/testsuite/gfortran.dg/backspace_4.f
+++ b/gcc/testsuite/gfortran.dg/backspace_4.f
@@ -7,12 +7,12 @@
open(unit=11,status='scratch',form='unformatted')
write(11)data
read(11,end= 1000 )data
- call abort()
+ STOP 1
1000 continue
backspace 11
backspace 11
read(11,end= 1001 )data
1001 continue
- if (data.ne.-1) call abort
+ if (data.ne.-1) STOP 1
close(11)
end
diff --git a/gcc/testsuite/gfortran.dg/backspace_5.f b/gcc/testsuite/gfortran.dg/backspace_5.f
index 4cd657a7838..ed7f0ff7c9d 100644
--- a/gcc/testsuite/gfortran.dg/backspace_5.f
+++ b/gcc/testsuite/gfortran.dg/backspace_5.f
@@ -20,16 +20,16 @@
idata( datasize) = -5
write(11)idata
read(11,end= 1000 )idata
- call abort()
+ STOP 1
1000 continue
backspace 11
backspace 11
backspace 11
read(11,end= 1001 )idata
- if(idata(1).ne.-3 .or. idata(datasize).ne.-4) call abort()
+ if(idata(1).ne.-3 .or. idata(datasize).ne.-4) STOP 2
stop
1001 continue
- call abort()
+ STOP 3
1010 stop
end
diff --git a/gcc/testsuite/gfortran.dg/backspace_6.f b/gcc/testsuite/gfortran.dg/backspace_6.f
index 90affdc7791..d76a6bf59b1 100644
--- a/gcc/testsuite/gfortran.dg/backspace_6.f
+++ b/gcc/testsuite/gfortran.dg/backspace_6.f
@@ -22,12 +22,12 @@
idata(datasize) = -3
write(11)idata
read(11,end= 1003 )idata
- call abort()
+ STOP 1
1003 continue
backspace 11
backspace 11
read(11,end= 1004 )idata
- if(idata(1).ne.-2 .or.idata(datasize).ne.-3) call abort()
+ if(idata(1).ne.-2 .or.idata(datasize).ne.-3) STOP 2
stop
1004 continue
end
diff --git a/gcc/testsuite/gfortran.dg/backspace_7.f90 b/gcc/testsuite/gfortran.dg/backspace_7.f90
index 09cce731a90..d2ce623f68c 100644
--- a/gcc/testsuite/gfortran.dg/backspace_7.f90
+++ b/gcc/testsuite/gfortran.dg/backspace_7.f90
@@ -7,5 +7,5 @@
backspace(10)
backspace(10)
read(10,*)I
- if (I.NE.199) call abort
+ if (I.NE.199) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/backspace_8.f b/gcc/testsuite/gfortran.dg/backspace_8.f
index 2dd6b72e9d9..26b60c2bbf1 100644
--- a/gcc/testsuite/gfortran.dg/backspace_8.f
+++ b/gcc/testsuite/gfortran.dg/backspace_8.f
@@ -11,10 +11,10 @@ C PR libfortran/31618 - backspace after an error didn't work.
rewind (21)
read (21) i,j
read (21,err=100,end=100) i,j,k
- call abort
+ STOP 1
100 continue
backspace 21
read (21) i,j
- if (i .ne. 4711 .or. j .ne. 4712) call abort
+ if (i .ne. 4711 .or. j .ne. 4712) STOP 2
close (21,status="delete")
end
diff --git a/gcc/testsuite/gfortran.dg/backspace_9.f b/gcc/testsuite/gfortran.dg/backspace_9.f
index 851f518a2a9..ce93f540053 100644
--- a/gcc/testsuite/gfortran.dg/backspace_9.f
+++ b/gcc/testsuite/gfortran.dg/backspace_9.f
@@ -17,7 +17,7 @@
call inlist(ncards)
read(input,1000)a
- if (a.ne."Three") call abort
+ if (a.ne."Three") STOP 1
close(10,status="delete")
stop
1000 format(a10)
@@ -38,9 +38,9 @@ c
30 read(input,1000,end=60) data
40 kard=kard + 1
50 continue
- if ((kard .eq. 1) .and. (DATA(1) .ne. "One")) call abort
- if ((kard .eq. 2) .and. (DATA(1) .ne. "Two")) call abort
- if ((kard .eq. 3) .and. (DATA(1) .ne. "Thre")) call abort
+ if ((kard .eq. 1) .and. (DATA(1) .ne. "One")) STOP 2
+ if ((kard .eq. 2) .and. (DATA(1) .ne. "Two")) STOP 3
+ if ((kard .eq. 3) .and. (DATA(1) .ne. "Thre")) STOP 4
go to 30
60 continue
diff --git a/gcc/testsuite/gfortran.dg/bessel_1.f90 b/gcc/testsuite/gfortran.dg/bessel_1.f90
index 728c5ce49ca..3493d7e1103 100644
--- a/gcc/testsuite/gfortran.dg/bessel_1.f90
+++ b/gcc/testsuite/gfortran.dg/bessel_1.f90
@@ -28,10 +28,10 @@ program test
contains
subroutine check_r4 (a, b)
real(kind=4), intent(in) :: a, b
- if (abs(a - b) > 1.e-5 * abs(b)) call abort
+ if (abs(a - b) > 1.e-5 * abs(b)) STOP 1
end subroutine
subroutine check_r8 (a, b)
real(kind=8), intent(in) :: a, b
- if (abs(a - b) > 1.e-7 * abs(b)) call abort
+ if (abs(a - b) > 1.e-7 * abs(b)) STOP 2
end subroutine
end program test
diff --git a/gcc/testsuite/gfortran.dg/bessel_2.f90 b/gcc/testsuite/gfortran.dg/bessel_2.f90
index 3b4c2e2e4ee..f57799e9f72 100644
--- a/gcc/testsuite/gfortran.dg/bessel_2.f90
+++ b/gcc/testsuite/gfortran.dg/bessel_2.f90
@@ -13,5 +13,5 @@ program bug3
integer, parameter :: kind_if_real = &
(1-is_int)*k2+is_int*kind(1.0)
complex :: z = cmplx(0,1,kind_if_real) ! FAILS
- if (kind_if_real /= kind(Qarg1)) call abort ()
+ if (kind_if_real /= kind(Qarg1)) STOP 1
end program bug3
diff --git a/gcc/testsuite/gfortran.dg/bessel_5.f90 b/gcc/testsuite/gfortran.dg/bessel_5.f90
index aab45cafe17..e61ec4baba1 100644
--- a/gcc/testsuite/gfortran.dg/bessel_5.f90
+++ b/gcc/testsuite/gfortran.dg/bessel_5.f90
@@ -21,7 +21,7 @@ integer :: i
if (any (abs (BESSEL_JN(2, 5, 2.457) - [(BESSEL_JN(i, 2.457), i = 2, 5)]) &
> epsilon(0.0))) then
print *, 'FAIL 1'
- call abort()
+ STOP 1
end if
@@ -29,7 +29,7 @@ end if
if (any (abs (BESSEL_YN(2, 5, 2.457) - [(BESSEL_YN(i, 2.457), i = 2, 5)]) &
> epsilon(0.0)*4)) then
- call abort()
+ STOP 2
end if
@@ -38,7 +38,7 @@ end if
if (any (abs (BESSEL_JN(0, 10, 4.457) &
- [ (BESSEL_JN(i, 4.457), i = 0, 10) ]) &
> epsilon(0.0))) then
- call abort()
+ STOP 3
end if
@@ -47,7 +47,7 @@ end if
if (any (abs (BESSEL_YN(0, 10, 4.457) &
- [ (BESSEL_YN(i, 4.457), i = 0, 10) ]) &
> epsilon(0.0)*192)) then
- call abort()
+ STOP 4
end if
@@ -55,7 +55,7 @@ end if
if (any (BESSEL_JN(0, 10, 0.0) /= [ (BESSEL_JN(i, 0.0), i = 0, 10) ])) &
then
- call abort()
+ STOP 5
end if
@@ -63,7 +63,7 @@ end if
if (any (BESSEL_YN(0, 10, 0.0) /= [ (BESSEL_YN(i, 0.0), i = 0, 10) ])) &
then
- call abort()
+ STOP 6
end if
@@ -72,7 +72,7 @@ end if
if (any (abs (BESSEL_JN(0, 10, 1.0) &
- [ (BESSEL_JN(i, 1.0), i = 0, 10) ]) &
> epsilon(0.0)*1)) then
- call abort()
+ STOP 7
end if
! Difference to mpfr_yn <= 32 epsilon
@@ -80,7 +80,7 @@ end if
if (any (abs (BESSEL_YN(0, 10, 1.0) &
- [ (BESSEL_YN(i, 1.0), i = 0, 10) ]) &
> epsilon(0.0)*32)) then
- call abort()
+ STOP 8
end if
end
diff --git a/gcc/testsuite/gfortran.dg/bessel_6.f90 b/gcc/testsuite/gfortran.dg/bessel_6.f90
index da917ff8805..e2336a2b4a0 100644
--- a/gcc/testsuite/gfortran.dg/bessel_6.f90
+++ b/gcc/testsuite/gfortran.dg/bessel_6.f90
@@ -43,7 +43,7 @@ do i = 0, mymax
! rec(i) == lib(i), abs((rec(i)-lib(i))/rec(i)) < myeps
if (rec(i) == lib(i)) CYCLE
if (abs((rec(i)-lib(i))/rec(i)) > myeps) &
- call abort()
+ STOP 1
end do
end
diff --git a/gcc/testsuite/gfortran.dg/bessel_7.f90 b/gcc/testsuite/gfortran.dg/bessel_7.f90
index c6b5f7407f7..16bb4847e27 100644
--- a/gcc/testsuite/gfortran.dg/bessel_7.f90
+++ b/gcc/testsuite/gfortran.dg/bessel_7.f90
@@ -49,9 +49,9 @@ do i = 0, Nmax
! rec(i) == lib(i) .or. abs((rec(i)-lib(i))/rec(i)) < myeps
if (.not. (i > nit .or. rec(i) == lib(i) &
.or. abs((rec(i)-lib(i))/rec(i)) < myeps2)) &
- call abort ()
+ STOP 1
if (.not. (rec(i) == lib(i) .or. abs((rec(i)-lib(i))/rec(i)) < myeps)) &
- call abort ()
+ STOP 2
end do
end
diff --git a/gcc/testsuite/gfortran.dg/bind_c_dts_2.f03 b/gcc/testsuite/gfortran.dg/bind_c_dts_2.f03
index 4e5e61b4ee8..fc77d1e2a45 100644
--- a/gcc/testsuite/gfortran.dg/bind_c_dts_2.f03
+++ b/gcc/testsuite/gfortran.dg/bind_c_dts_2.f03
@@ -30,32 +30,32 @@ contains
integer(c_int), value :: expected_j
if (my_type%my_nested_type%i .ne. expected_i) then
- call abort ()
+ STOP 1
end if
if (.not. c_associated(my_type%my_nested_type%nested_c_address, &
expected_nested_c_address)) then
- call abort ()
+ STOP 2
end if
if (my_type%my_nested_type%array(1) .ne. expected_array_1) then
- call abort ()
+ STOP 3
end if
if (my_type%my_nested_type%array(2) .ne. expected_array_2) then
- call abort ()
+ STOP 4
end if
if (my_type%my_nested_type%array(3) .ne. expected_array_3) then
- call abort ()
+ STOP 5
end if
if (.not. c_associated(my_type%c_address, expected_c_address)) then
- call abort ()
+ STOP 6
end if
if (my_type%j .ne. expected_j) then
- call abort ()
+ STOP 7
end if
end subroutine sub0
end module bind_c_dts_2
diff --git a/gcc/testsuite/gfortran.dg/bind_c_dts_3.f03 b/gcc/testsuite/gfortran.dg/bind_c_dts_3.f03
index e28769ddf84..71a9b4c50b8 100644
--- a/gcc/testsuite/gfortran.dg/bind_c_dts_3.f03
+++ b/gcc/testsuite/gfortran.dg/bind_c_dts_3.f03
@@ -31,7 +31,7 @@ contains
integer(c_int), value :: expected_value
if (my_type%my_nested_type%i .ne. expected_value) then
- call abort ()
+ STOP 1
end if
end subroutine sub0
end module bind_c_dts_3
diff --git a/gcc/testsuite/gfortran.dg/bind_c_usage_15.f90 b/gcc/testsuite/gfortran.dg/bind_c_usage_15.f90
index c5201a634db..5e5495e9226 100644
--- a/gcc/testsuite/gfortran.dg/bind_c_usage_15.f90
+++ b/gcc/testsuite/gfortran.dg/bind_c_usage_15.f90
@@ -25,5 +25,5 @@ program main
integer(c_int) :: x
x = -44
call gen(x)
- if(x /= 17) call abort()
+ if(x /= 17) STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/bind_c_usage_16.f03 b/gcc/testsuite/gfortran.dg/bind_c_usage_16.f03
index 990918fcc59..45305812a28 100644
--- a/gcc/testsuite/gfortran.dg/bind_c_usage_16.f03
+++ b/gcc/testsuite/gfortran.dg/bind_c_usage_16.f03
@@ -35,23 +35,23 @@ subroutine test() bind(c)
d = 'uuuuu'
a = bar('x')
- if (a /= 'A') call abort()
+ if (a /= 'A') STOP 1
b = bar('y')
- if (b /= 'A' .or. iachar(b(2:2))/=32 .or. iachar(b(3:3))/=32) call abort()
+ if (b /= 'A' .or. iachar(b(2:2))/=32 .or. iachar(b(3:3))/=32) STOP 2
c = bar('x')
- if (any(c /= 'A')) call abort()
+ if (any(c /= 'A')) STOP 3
d = bar('y')
- if (any(d /= 'A')) call abort()
+ if (any(d /= 'A')) STOP 4
a = foo()
- if (a /= 'B') call abort()
+ if (a /= 'B') STOP 5
b = foo()
- if (b /= 'B') call abort()
+ if (b /= 'B') STOP 6
c = foo()
- if (any(c /= 'B')) call abort()
+ if (any(c /= 'B')) STOP 7
d = foo()
- if (any(d /= 'B')) call abort()
+ if (any(d /= 'B')) STOP 8
do i = 1,3
- if(iachar(d(i)(2:2)) /=32 .or. iachar(d(i)(3:3)) /= 32) call abort()
+ if(iachar(d(i)(2:2)) /=32 .or. iachar(d(i)(3:3)) /= 32) STOP 9
end do
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/bind_c_usage_17.f90 b/gcc/testsuite/gfortran.dg/bind_c_usage_17.f90
index ad7ffd08f3d..69702c43bb1 100644
--- a/gcc/testsuite/gfortran.dg/bind_c_usage_17.f90
+++ b/gcc/testsuite/gfortran.dg/bind_c_usage_17.f90
@@ -22,15 +22,15 @@ PROGRAM test
str1 = 'x'
str4 = 'xyzz'
str1 = cdir()
- if(str1 /= '/') call abort()
+ if(str1 /= '/') STOP 1
str4 = cdir()
- if(str4 /= '/' .or. ichar(str4(2:2)) /= 32) call abort()
+ if(str4 /= '/' .or. ichar(str4(2:2)) /= 32) STOP 2
i = ICHAR(cdir())
- if (i /= 47) call abort()
+ if (i /= 47) STOP 3
str4 = 'xyzz'
WRITE(str4,'(a)') cdir()
- if(str4 /= '/' .or. ichar(str4(2:2)) /= 32) call abort()
+ if(str4 /= '/' .or. ichar(str4(2:2)) /= 32) STOP 4
str4 = 'xyzz'
WRITE(str4,'(i0)') ICHAR(cdir())
- if(str4 /= '47' .or. ichar(str4(3:3)) /= 32) call abort()
+ if(str4 /= '47' .or. ichar(str4(3:3)) /= 32) STOP 5
END PROGRAM
diff --git a/gcc/testsuite/gfortran.dg/bind_c_usage_24.f90 b/gcc/testsuite/gfortran.dg/bind_c_usage_24.f90
index a46772be249..a3167a56721 100644
--- a/gcc/testsuite/gfortran.dg/bind_c_usage_24.f90
+++ b/gcc/testsuite/gfortran.dg/bind_c_usage_24.f90
@@ -20,11 +20,11 @@ contains
logical(c_bool), intent(in), value :: is_present
integer(c_int), intent(inout), optional :: var
if (is_present) then
- if (.not. present (var)) call abort ()
- if (var /= 43) call abort ()
+ if (.not. present (var)) STOP 1
+ if (var /= 43) STOP 2
var = -45
else
- if (present (var)) call abort ()
+ if (present (var)) STOP 3
end if
end subroutine subtest
end module m
@@ -37,5 +37,5 @@ program test
val = 4
call c_proc (.false._c_bool)
call c_proc (.true._c_bool, val)
- if (val /= 7) call abort ()
+ if (val /= 7) STOP 4
end program test
diff --git a/gcc/testsuite/gfortran.dg/binding_c_table_15_1.f03 b/gcc/testsuite/gfortran.dg/binding_c_table_15_1.f03
index a5573092d85..30ad436559c 100644
--- a/gcc/testsuite/gfortran.dg/binding_c_table_15_1.f03
+++ b/gcc/testsuite/gfortran.dg/binding_c_table_15_1.f03
@@ -3,12 +3,12 @@
program a
use, intrinsic :: iso_c_binding
implicit none
- if (C_NULL_CHAR /= CHAR(0) ) call abort
- if (C_ALERT /= ACHAR(7) ) call abort
- if (C_BACKSPACE /= ACHAR(8) ) call abort
- if (C_FORM_FEED /= ACHAR(12)) call abort
- if (C_NEW_LINE /= ACHAR(10)) call abort
- if (C_CARRIAGE_RETURN /= ACHAR(13)) call abort
- if (C_HORIZONTAL_TAB /= ACHAR(9) ) call abort
- if (C_VERTICAL_TAB /= ACHAR(11)) call abort
+ if (C_NULL_CHAR /= CHAR(0) ) STOP 1
+ if (C_ALERT /= ACHAR(7) ) STOP 2
+ if (C_BACKSPACE /= ACHAR(8) ) STOP 3
+ if (C_FORM_FEED /= ACHAR(12)) STOP 4
+ if (C_NEW_LINE /= ACHAR(10)) STOP 5
+ if (C_CARRIAGE_RETURN /= ACHAR(13)) STOP 6
+ if (C_HORIZONTAL_TAB /= ACHAR(9) ) STOP 7
+ if (C_VERTICAL_TAB /= ACHAR(11)) STOP 8
end program a
diff --git a/gcc/testsuite/gfortran.dg/binding_label_tests_16.f03 b/gcc/testsuite/gfortran.dg/binding_label_tests_16.f03
index 7029b2ea191..b7f6e034c77 100644
--- a/gcc/testsuite/gfortran.dg/binding_label_tests_16.f03
+++ b/gcc/testsuite/gfortran.dg/binding_label_tests_16.f03
@@ -17,5 +17,5 @@ use m
use n, b=>a
implicit none
print *, a, b
- if (a /= 5 .or. b /= -5) call abort()
+ if (a /= 5 .or. b /= -5) STOP 1
end program prog
diff --git a/gcc/testsuite/gfortran.dg/binding_label_tests_23.f90 b/gcc/testsuite/gfortran.dg/binding_label_tests_23.f90
index ba9e61550f4..f31abe9c00c 100644
--- a/gcc/testsuite/gfortran.dg/binding_label_tests_23.f90
+++ b/gcc/testsuite/gfortran.dg/binding_label_tests_23.f90
@@ -4,7 +4,7 @@
!
integer function foo(x)
integer :: x
- call abort()
+ STOP 1
foo = 99
end function foo
@@ -17,5 +17,5 @@ program test
integer function foo() bind(C, name="bar")
end function foo
end interface
- if (foo() /= 42) call abort() ! Ensure that the binding name is all what counts
+ if (foo() /= 42) STOP 2 ! Ensure that the binding name is all what counts
end program test
diff --git a/gcc/testsuite/gfortran.dg/bit_comparison_1.F90 b/gcc/testsuite/gfortran.dg/bit_comparison_1.F90
index 97b00b5be7f..2a17e5a44de 100644
--- a/gcc/testsuite/gfortran.dg/bit_comparison_1.F90
+++ b/gcc/testsuite/gfortran.dg/bit_comparison_1.F90
@@ -32,14 +32,14 @@
end interface
#define CHECK(I,J,RES) \
- if (bge(I,J) .neqv. RES) call abort ; \
- if (run_bge(I,J) .neqv. RES) call abort ; \
- if (bgt(I,J) .neqv. (RES .and. (I/=J))) call abort ; \
- if (run_bgt(I,J) .neqv. (RES .and. (I/=J))) call abort ; \
- if (ble(J,I) .neqv. RES) call abort ; \
- if (run_ble(J,I) .neqv. RES) call abort ; \
- if (blt(J,I) .neqv. (RES .and. (I/=J))) call abort ; \
- if (run_blt(J,I) .neqv. (RES .and. (I/=J))) call abort
+ if (bge(I,J) .neqv. RES) STOP 1; \
+ if (run_bge(I,J) .neqv. RES) STOP 2; \
+ if (bgt(I,J) .neqv. (RES .and. (I/=J))) STOP 3; \
+ if (run_bgt(I,J) .neqv. (RES .and. (I/=J))) STOP 4; \
+ if (ble(J,I) .neqv. RES) STOP 5; \
+ if (run_ble(J,I) .neqv. RES) STOP 6; \
+ if (blt(J,I) .neqv. (RES .and. (I/=J))) STOP 7; \
+ if (run_blt(J,I) .neqv. (RES .and. (I/=J))) STOP 8
#define T .true.
#define F .false.
diff --git a/gcc/testsuite/gfortran.dg/bit_comparison_2.F90 b/gcc/testsuite/gfortran.dg/bit_comparison_2.F90
index 73d0679d088..71513ed2dcc 100644
--- a/gcc/testsuite/gfortran.dg/bit_comparison_2.F90
+++ b/gcc/testsuite/gfortran.dg/bit_comparison_2.F90
@@ -5,14 +5,14 @@
! { dg-require-effective-target fortran_integer_16 }
#define CHECK(I,J,RES) \
- if (bge(I,J) .neqv. RES) call abort ; \
- if (run_bge(I,J) .neqv. RES) call abort ; \
- if (bgt(I,J) .neqv. (RES .and. (I/=J))) call abort ; \
- if (run_bgt(I,J) .neqv. (RES .and. (I/=J))) call abort ; \
- if (ble(J,I) .neqv. RES) call abort ; \
- if (run_ble(J,I) .neqv. RES) call abort ; \
- if (blt(J,I) .neqv. (RES .and. (I/=J))) call abort ; \
- if (run_blt(J,I) .neqv. (RES .and. (I/=J))) call abort
+ if (bge(I,J) .neqv. RES) STOP 1; \
+ if (run_bge(I,J) .neqv. RES) STOP 2; \
+ if (bgt(I,J) .neqv. (RES .and. (I/=J))) STOP 3; \
+ if (run_bgt(I,J) .neqv. (RES .and. (I/=J))) STOP 4; \
+ if (ble(J,I) .neqv. RES) STOP 5; \
+ if (run_ble(J,I) .neqv. RES) STOP 6; \
+ if (blt(J,I) .neqv. (RES .and. (I/=J))) STOP 7; \
+ if (run_blt(J,I) .neqv. (RES .and. (I/=J))) STOP 8
#define T .true.
#define F .false.
diff --git a/gcc/testsuite/gfortran.dg/block_1.f08 b/gcc/testsuite/gfortran.dg/block_1.f08
index a2a67bc2950..8f9ff575017 100644
--- a/gcc/testsuite/gfortran.dg/block_1.f08
+++ b/gcc/testsuite/gfortran.dg/block_1.f08
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2008 -fall-intrinsics" }
+! { dg-options "-std=f2008 " }
! Basic Fortran 2008 BLOCK construct test.
@@ -15,20 +15,20 @@ PROGRAM main
! Block without local variables but name.
BLOCK
- IF (i /= 42) CALL abort ()
+ IF (i /= 42) STOP 1
i = 5
END BLOCK
- IF (i /= 5) CALL abort ()
+ IF (i /= 5) STOP 2
! Named block with local variable and nested block.
myblock: BLOCK
INTEGER :: i
i = -1
BLOCK
- IF (i /= -1) CALL abort ()
+ IF (i /= -1) STOP 3
i = -2
END BLOCK
- IF (i /= -2) CALL abort ()
+ IF (i /= -2) STOP 4
END BLOCK myblock ! Matching end-label.
- IF (i /= 5) CALL abort ()
+ IF (i /= 5) STOP 5
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/block_13.f08 b/gcc/testsuite/gfortran.dg/block_13.f08
index 5956a90c240..b3df6aa440d 100644
--- a/gcc/testsuite/gfortran.dg/block_13.f08
+++ b/gcc/testsuite/gfortran.dg/block_13.f08
@@ -41,13 +41,13 @@ program main
contains
subroutine check (arg1, arg2)
real :: arg1, arg2
- if (arg1 .ne. arg2) call abort ()
+ if (arg1 .ne. arg2) STOP 1
end subroutine
subroutine check_chr (arg1, arg2)
character(*) :: arg1, arg2
- if (len (arg1) .ne. len (arg2)) call abort
- if (arg1 .ne. arg2) call abort
+ if (len (arg1) .ne. len (arg2)) STOP 1
+ if (arg1 .ne. arg2) STOP 2
end subroutine
type(type1) function foo (arg)
diff --git a/gcc/testsuite/gfortran.dg/block_14.f90 b/gcc/testsuite/gfortran.dg/block_14.f90
index 50e65687e49..824cb6ab2b7 100644
--- a/gcc/testsuite/gfortran.dg/block_14.f90
+++ b/gcc/testsuite/gfortran.dg/block_14.f90
@@ -17,5 +17,5 @@ program main
end block
end block
end block
- if (s /= 9) call abort
+ if (s /= 9) STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/block_2.f08 b/gcc/testsuite/gfortran.dg/block_2.f08
index a2ba2d5caea..319fca79e95 100644
--- a/gcc/testsuite/gfortran.dg/block_2.f08
+++ b/gcc/testsuite/gfortran.dg/block_2.f08
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2008 -fall-intrinsics -fdump-tree-original" }
+! { dg-options "-std=f2008 -fdump-tree-original" }
! More sophisticated BLOCK runtime checks for correct initialization/clean-up.
@@ -11,28 +11,28 @@ PROGRAM main
myblock: BLOCK
INTEGER :: arr(n)
- IF (SIZE (arr) /= 5) CALL abort ()
+ IF (SIZE (arr) /= 5) STOP 1
BLOCK
INTEGER :: arr(2*n)
- IF (SIZE (arr) /= 10) CALL abort ()
+ IF (SIZE (arr) /= 10) STOP 2
END BLOCK
- IF (SIZE (arr) /= 5) CALL abort ()
+ IF (SIZE (arr) /= 5) STOP 3
END BLOCK myblock
BLOCK
INTEGER, ALLOCATABLE :: alloc_arr(:)
- IF (ALLOCATED (alloc_arr)) CALL abort ()
+ IF (ALLOCATED (alloc_arr)) STOP 4
ALLOCATE (alloc_arr(n))
- IF (SIZE (alloc_arr) /= 5) CALL abort ()
+ IF (SIZE (alloc_arr) /= 5) STOP 5
! Should be free'ed here (but at least somewhere), this is checked
! with pattern below.
END BLOCK
BLOCK
CHARACTER(LEN=n) :: str
- IF (LEN (str) /= 5) CALL abort ()
+ IF (LEN (str) /= 5) STOP 6
str = "123456789"
- IF (str /= "12345") CALL abort ()
+ IF (str /= "12345") STOP 7
END BLOCK
END PROGRAM main
! { dg-final { scan-tree-dump-times "free \\(\\(void \\*\\) alloc_arr\\.data" 1 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/block_6.f08 b/gcc/testsuite/gfortran.dg/block_6.f08
index 621a93304b0..c8cadb34d32 100644
--- a/gcc/testsuite/gfortran.dg/block_6.f08
+++ b/gcc/testsuite/gfortran.dg/block_6.f08
@@ -1,5 +1,5 @@
! { dg-do run { xfail *-*-* } }
-! { dg-options "-std=f2008 -fall-intrinsics" }
+! { dg-options "-std=f2008 " }
! Check for correct scope of variables that are implicit typed within a BLOCK.
! This is not yet implemented, thus XFAIL'ed the test.
@@ -13,5 +13,5 @@ PROGRAM main
END BLOCK
! Here, we should still access the same a that was set above.
- IF (a /= 42) CALL abort ()
+ IF (a /= 42) STOP 1
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/block_7.f08 b/gcc/testsuite/gfortran.dg/block_7.f08
index 3a267edc37b..77d34c95c18 100644
--- a/gcc/testsuite/gfortran.dg/block_7.f08
+++ b/gcc/testsuite/gfortran.dg/block_7.f08
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2008 -fall-intrinsics" }
+! { dg-options "-std=f2008 " }
! Check for correct placement (on the stack) of local variables with BLOCK
! and recursive container procedures.
@@ -13,7 +13,7 @@ RECURSIVE SUBROUTINE myproc (i)
INTEGER :: x
x = i
IF (i > 0) CALL myproc (i - 1)
- IF (x /= i) CALL abort ()
+ IF (x /= i) STOP 1
END BLOCK
EXIT
END DO
diff --git a/gcc/testsuite/gfortran.dg/block_8.f08 b/gcc/testsuite/gfortran.dg/block_8.f08
index 6059fa89c79..677125edff2 100644
--- a/gcc/testsuite/gfortran.dg/block_8.f08
+++ b/gcc/testsuite/gfortran.dg/block_8.f08
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2008 -fall-intrinsics" }
+! { dg-options "-std=f2008 " }
! Check BLOCK with SAVE'ed variables.
@@ -11,7 +11,7 @@ PROGRAM main
BLOCK
INTEGER, SAVE :: summed = 0
summed = summed + i
- IF (i == 100 .AND. summed /= 5050) CALL abort ()
+ IF (i == 100 .AND. summed /= 5050) STOP 1
END BLOCK
END DO
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/blockdata_1.f90 b/gcc/testsuite/gfortran.dg/blockdata_1.f90
index 74910c4d49f..47a27cfb461 100644
--- a/gcc/testsuite/gfortran.dg/blockdata_1.f90
+++ b/gcc/testsuite/gfortran.dg/blockdata_1.f90
@@ -23,6 +23,6 @@ common /a/ x(3)
common /b/ y
common i
-if (any(x /= 1.)) call abort ()
-if (y /= 1. .or. i /= 1) call abort ()
+if (any(x /= 1.)) STOP 1
+if (y /= 1. .or. i /= 1) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/bound_1.f90 b/gcc/testsuite/gfortran.dg/bound_1.f90
index ce872bb0af5..e0c90556bfa 100644
--- a/gcc/testsuite/gfortran.dg/bound_1.f90
+++ b/gcc/testsuite/gfortran.dg/bound_1.f90
@@ -9,12 +9,12 @@
integer i
i = ubound(tt(1)%a, 1)
- if (i/=5) call abort()
+ if (i/=5) STOP 1
i = lbound(tt(1)%a, 1)
- if (i/=1) call abort()
+ if (i/=1) STOP 2
i = ubound(tt, 1)
- if (i/=2) call abort()
+ if (i/=2) STOP 3
i = lbound(tt, 1)
- if (i/=1) call abort()
+ if (i/=1) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/bound_2.f90 b/gcc/testsuite/gfortran.dg/bound_2.f90
index d26695c30fb..66e2ed48f6f 100644
--- a/gcc/testsuite/gfortran.dg/bound_2.f90
+++ b/gcc/testsuite/gfortran.dg/bound_2.f90
@@ -13,151 +13,151 @@
call jackal(-1,-8)
call jackal(-1,8)
- if (any(lbound(i(-1:1,-1:1)) /= 1)) call abort
- if (lbound(i(-1:1,-1:1), 1) /= 1) call abort
- if (lbound(i(-1:1,-1:1), 2) /= 1) call abort
+ if (any(lbound(i(-1:1,-1:1)) /= 1)) STOP 1
+ if (lbound(i(-1:1,-1:1), 1) /= 1) STOP 2
+ if (lbound(i(-1:1,-1:1), 2) /= 1) STOP 3
- if (any(ubound(i(-1:1,-1:1)) /= 3)) call abort
- if (ubound(i(-1:1,-1:1), 1) /= 3) call abort
- if (ubound(i(-1:1,-1:1), 2) /= 3) call abort
+ if (any(ubound(i(-1:1,-1:1)) /= 3)) STOP 4
+ if (ubound(i(-1:1,-1:1), 1) /= 3) STOP 5
+ if (ubound(i(-1:1,-1:1), 2) /= 3) STOP 6
- if (any(lbound(i(:,:)) /= 1)) call abort
- if (lbound(i(:,:), 1) /= 1) call abort
- if (lbound(i(:,:), 2) /= 1) call abort
+ if (any(lbound(i(:,:)) /= 1)) STOP 7
+ if (lbound(i(:,:), 1) /= 1) STOP 8
+ if (lbound(i(:,:), 2) /= 1) STOP 9
- if (any(ubound(i(:,:)) /= 3)) call abort
- if (ubound(i(:,:), 1) /= 3) call abort
- if (ubound(i(:,:), 2) /= 3) call abort
+ if (any(ubound(i(:,:)) /= 3)) STOP 10
+ if (ubound(i(:,:), 1) /= 3) STOP 11
+ if (ubound(i(:,:), 2) /= 3) STOP 12
- if (any(lbound(i(0:,-1:)) /= 1)) call abort
- if (lbound(i(0:,-1:), 1) /= 1) call abort
- if (lbound(i(0:,-1:), 2) /= 1) call abort
+ if (any(lbound(i(0:,-1:)) /= 1)) STOP 13
+ if (lbound(i(0:,-1:), 1) /= 1) STOP 14
+ if (lbound(i(0:,-1:), 2) /= 1) STOP 15
- if (any(ubound(i(0:,-1:)) /= [2,3])) call abort
- if (ubound(i(0:,-1:), 1) /= 2) call abort
- if (ubound(i(0:,-1:), 2) /= 3) call abort
+ if (any(ubound(i(0:,-1:)) /= [2,3])) STOP 16
+ if (ubound(i(0:,-1:), 1) /= 2) STOP 17
+ if (ubound(i(0:,-1:), 2) /= 3) STOP 18
- if (any(lbound(i(:0,:0)) /= 1)) call abort
- if (lbound(i(:0,:0), 1) /= 1) call abort
- if (lbound(i(:0,:0), 2) /= 1) call abort
+ if (any(lbound(i(:0,:0)) /= 1)) STOP 19
+ if (lbound(i(:0,:0), 1) /= 1) STOP 20
+ if (lbound(i(:0,:0), 2) /= 1) STOP 21
- if (any(ubound(i(:0,:0)) /= 2)) call abort
- if (ubound(i(:0,:0), 1) /= 2) call abort
- if (ubound(i(:0,:0), 2) /= 2) call abort
+ if (any(ubound(i(:0,:0)) /= 2)) STOP 22
+ if (ubound(i(:0,:0), 1) /= 2) STOP 23
+ if (ubound(i(:0,:0), 2) /= 2) STOP 24
- if (any(lbound(transpose(i)) /= 1)) call abort
- if (lbound(transpose(i), 1) /= 1) call abort
- if (lbound(transpose(i), 2) /= 1) call abort
+ if (any(lbound(transpose(i)) /= 1)) STOP 25
+ if (lbound(transpose(i), 1) /= 1) STOP 26
+ if (lbound(transpose(i), 2) /= 1) STOP 27
- if (any(ubound(transpose(i)) /= 3)) call abort
- if (ubound(transpose(i), 1) /= 3) call abort
- if (ubound(transpose(i), 2) /= 3) call abort
+ if (any(ubound(transpose(i)) /= 3)) STOP 28
+ if (ubound(transpose(i), 1) /= 3) STOP 29
+ if (ubound(transpose(i), 2) /= 3) STOP 30
- if (any(lbound(reshape(i,[2,2])) /= 1)) call abort
- if (lbound(reshape(i,[2,2]), 1) /= 1) call abort
- if (lbound(reshape(i,[2,2]), 2) /= 1) call abort
+ if (any(lbound(reshape(i,[2,2])) /= 1)) STOP 31
+ if (lbound(reshape(i,[2,2]), 1) /= 1) STOP 32
+ if (lbound(reshape(i,[2,2]), 2) /= 1) STOP 33
- if (any(ubound(reshape(i,[2,2])) /= 2)) call abort
- if (ubound(reshape(i,[2,2]), 1) /= 2) call abort
- if (ubound(reshape(i,[2,2]), 2) /= 2) call abort
+ if (any(ubound(reshape(i,[2,2])) /= 2)) STOP 34
+ if (ubound(reshape(i,[2,2]), 1) /= 2) STOP 35
+ if (ubound(reshape(i,[2,2]), 2) /= 2) STOP 36
- if (any(lbound(cshift(i,-1)) /= 1)) call abort
- if (lbound(cshift(i,-1), 1) /= 1) call abort
- if (lbound(cshift(i,-1), 2) /= 1) call abort
+ if (any(lbound(cshift(i,-1)) /= 1)) STOP 37
+ if (lbound(cshift(i,-1), 1) /= 1) STOP 38
+ if (lbound(cshift(i,-1), 2) /= 1) STOP 39
- if (any(ubound(cshift(i,-1)) /= 3)) call abort
- if (ubound(cshift(i,-1), 1) /= 3) call abort
- if (ubound(cshift(i,-1), 2) /= 3) call abort
+ if (any(ubound(cshift(i,-1)) /= 3)) STOP 40
+ if (ubound(cshift(i,-1), 1) /= 3) STOP 41
+ if (ubound(cshift(i,-1), 2) /= 3) STOP 42
- if (any(lbound(eoshift(i,-1)) /= 1)) call abort
- if (lbound(eoshift(i,-1), 1) /= 1) call abort
- if (lbound(eoshift(i,-1), 2) /= 1) call abort
+ if (any(lbound(eoshift(i,-1)) /= 1)) STOP 43
+ if (lbound(eoshift(i,-1), 1) /= 1) STOP 44
+ if (lbound(eoshift(i,-1), 2) /= 1) STOP 45
- if (any(ubound(eoshift(i,-1)) /= 3)) call abort
- if (ubound(eoshift(i,-1), 1) /= 3) call abort
- if (ubound(eoshift(i,-1), 2) /= 3) call abort
+ if (any(ubound(eoshift(i,-1)) /= 3)) STOP 46
+ if (ubound(eoshift(i,-1), 1) /= 3) STOP 47
+ if (ubound(eoshift(i,-1), 2) /= 3) STOP 48
- if (any(lbound(spread(i,1,2)) /= 1)) call abort
- if (lbound(spread(i,1,2), 1) /= 1) call abort
- if (lbound(spread(i,1,2), 2) /= 1) call abort
+ if (any(lbound(spread(i,1,2)) /= 1)) STOP 49
+ if (lbound(spread(i,1,2), 1) /= 1) STOP 50
+ if (lbound(spread(i,1,2), 2) /= 1) STOP 51
- if (any(ubound(spread(i,1,2)) /= [2,3,3])) call abort
- if (ubound(spread(i,1,2), 1) /= 2) call abort
- if (ubound(spread(i,1,2), 2) /= 3) call abort
- if (ubound(spread(i,1,2), 3) /= 3) call abort
+ if (any(ubound(spread(i,1,2)) /= [2,3,3])) STOP 52
+ if (ubound(spread(i,1,2), 1) /= 2) STOP 53
+ if (ubound(spread(i,1,2), 2) /= 3) STOP 54
+ if (ubound(spread(i,1,2), 3) /= 3) STOP 55
- if (any(lbound(maxloc(i)) /= 1)) call abort
- if (lbound(maxloc(i), 1) /= 1) call abort
+ if (any(lbound(maxloc(i)) /= 1)) STOP 56
+ if (lbound(maxloc(i), 1) /= 1) STOP 57
- if (any(ubound(maxloc(i)) /= 2)) call abort
- if (ubound(maxloc(i), 1) /= 2) call abort
+ if (any(ubound(maxloc(i)) /= 2)) STOP 58
+ if (ubound(maxloc(i), 1) /= 2) STOP 59
- if (any(lbound(minloc(i)) /= 1)) call abort
- if (lbound(minloc(i), 1) /= 1) call abort
+ if (any(lbound(minloc(i)) /= 1)) STOP 60
+ if (lbound(minloc(i), 1) /= 1) STOP 61
- if (any(ubound(minloc(i)) /= 2)) call abort
- if (ubound(minloc(i), 1) /= 2) call abort
+ if (any(ubound(minloc(i)) /= 2)) STOP 62
+ if (ubound(minloc(i), 1) /= 2) STOP 63
- if (any(lbound(maxval(i,2)) /= 1)) call abort
- if (lbound(maxval(i,2), 1) /= 1) call abort
+ if (any(lbound(maxval(i,2)) /= 1)) STOP 64
+ if (lbound(maxval(i,2), 1) /= 1) STOP 65
- if (any(ubound(maxval(i,2)) /= 3)) call abort
- if (ubound(maxval(i,2), 1) /= 3) call abort
+ if (any(ubound(maxval(i,2)) /= 3)) STOP 66
+ if (ubound(maxval(i,2), 1) /= 3) STOP 67
- if (any(lbound(minval(i,2)) /= 1)) call abort
- if (lbound(minval(i,2), 1) /= 1) call abort
+ if (any(lbound(minval(i,2)) /= 1)) STOP 68
+ if (lbound(minval(i,2), 1) /= 1) STOP 69
- if (any(ubound(minval(i,2)) /= 3)) call abort
- if (ubound(minval(i,2), 1) /= 3) call abort
+ if (any(ubound(minval(i,2)) /= 3)) STOP 70
+ if (ubound(minval(i,2), 1) /= 3) STOP 71
- if (any(lbound(any(i==1,2)) /= 1)) call abort
- if (lbound(any(i==1,2), 1) /= 1) call abort
+ if (any(lbound(any(i==1,2)) /= 1)) STOP 72
+ if (lbound(any(i==1,2), 1) /= 1) STOP 73
- if (any(ubound(any(i==1,2)) /= 3)) call abort
- if (ubound(any(i==1,2), 1) /= 3) call abort
+ if (any(ubound(any(i==1,2)) /= 3)) STOP 74
+ if (ubound(any(i==1,2), 1) /= 3) STOP 75
- if (any(lbound(count(i==1,2)) /= 1)) call abort
- if (lbound(count(i==1,2), 1) /= 1) call abort
+ if (any(lbound(count(i==1,2)) /= 1)) STOP 76
+ if (lbound(count(i==1,2), 1) /= 1) STOP 77
- if (any(ubound(count(i==1,2)) /= 3)) call abort
- if (ubound(count(i==1,2), 1) /= 3) call abort
+ if (any(ubound(count(i==1,2)) /= 3)) STOP 78
+ if (ubound(count(i==1,2), 1) /= 3) STOP 79
- if (any(lbound(merge(i,i,.true.)) /= 1)) call abort
- if (lbound(merge(i,i,.true.), 1) /= 1) call abort
- if (lbound(merge(i,i,.true.), 2) /= 1) call abort
+ if (any(lbound(merge(i,i,.true.)) /= 1)) STOP 80
+ if (lbound(merge(i,i,.true.), 1) /= 1) STOP 81
+ if (lbound(merge(i,i,.true.), 2) /= 1) STOP 82
- if (any(ubound(merge(i,i,.true.)) /= 3)) call abort
- if (ubound(merge(i,i,.true.), 1) /= 3) call abort
- if (ubound(merge(i,i,.true.), 2) /= 3) call abort
+ if (any(ubound(merge(i,i,.true.)) /= 3)) STOP 83
+ if (ubound(merge(i,i,.true.), 1) /= 3) STOP 84
+ if (ubound(merge(i,i,.true.), 2) /= 3) STOP 85
- if (any(lbound(lbound(i)) /= 1)) call abort
- if (lbound(lbound(i), 1) /= 1) call abort
+ if (any(lbound(lbound(i)) /= 1)) STOP 86
+ if (lbound(lbound(i), 1) /= 1) STOP 87
- if (any(ubound(lbound(i)) /= 2)) call abort
- if (ubound(lbound(i), 1) /= 2) call abort
+ if (any(ubound(lbound(i)) /= 2)) STOP 88
+ if (ubound(lbound(i), 1) /= 2) STOP 89
- if (any(lbound(ubound(i)) /= 1)) call abort
- if (lbound(ubound(i), 1) /= 1) call abort
+ if (any(lbound(ubound(i)) /= 1)) STOP 90
+ if (lbound(ubound(i), 1) /= 1) STOP 91
- if (any(ubound(ubound(i)) /= 2)) call abort
- if (ubound(ubound(i), 1) /= 2) call abort
+ if (any(ubound(ubound(i)) /= 2)) STOP 92
+ if (ubound(ubound(i), 1) /= 2) STOP 93
- if (any(lbound(shape(i)) /= 1)) call abort
- if (lbound(shape(i), 1) /= 1) call abort
+ if (any(lbound(shape(i)) /= 1)) STOP 94
+ if (lbound(shape(i), 1) /= 1) STOP 95
- if (any(ubound(shape(i)) /= 2)) call abort
- if (ubound(shape(i), 1) /= 2) call abort
+ if (any(ubound(shape(i)) /= 2)) STOP 96
+ if (ubound(shape(i), 1) /= 2) STOP 97
- if (any(lbound(product(i,2)) /= 1)) call abort
- if (any(ubound(product(i,2)) /= 3)) call abort
- if (any(lbound(sum(i,2)) /= 1)) call abort
- if (any(ubound(sum(i,2)) /= 3)) call abort
- if (any(lbound(matmul(i,i)) /= 1)) call abort
- if (any(ubound(matmul(i,i)) /= 3)) call abort
- if (any(lbound(pack(i,.true.)) /= 1)) call abort
- if (any(ubound(pack(i,.true.)) /= 9)) call abort
- if (any(lbound(unpack(j,[.true.],[2])) /= 1)) call abort
- if (any(ubound(unpack(j,[.true.],[2])) /= 1)) call abort
+ if (any(lbound(product(i,2)) /= 1)) STOP 98
+ if (any(ubound(product(i,2)) /= 3)) STOP 99
+ if (any(lbound(sum(i,2)) /= 1)) STOP 100
+ if (any(ubound(sum(i,2)) /= 3)) STOP 101
+ if (any(lbound(matmul(i,i)) /= 1)) STOP 102
+ if (any(ubound(matmul(i,i)) /= 3)) STOP 103
+ if (any(lbound(pack(i,.true.)) /= 1)) STOP 104
+ if (any(ubound(pack(i,.true.)) /= 9)) STOP 105
+ if (any(lbound(unpack(j,[.true.],[2])) /= 1)) STOP 106
+ if (any(ubound(unpack(j,[.true.],[2])) /= 1)) STOP 107
call sub1(i,3)
call sub1(reshape([7,9,4,6,7,9],[3,2]),3)
@@ -168,35 +168,35 @@ contains
subroutine sub1(a,n)
integer :: n, a(2:n+1,4:*)
- if (any([lbound(a,1), lbound(a,2)] /= [2, 4])) call abort
- if (any(lbound(a) /= [2, 4])) call abort
+ if (any([lbound(a,1), lbound(a,2)] /= [2, 4])) STOP 108
+ if (any(lbound(a) /= [2, 4])) STOP 109
end subroutine sub1
subroutine sub2
integer :: x(3:2, 1:2)
- if (size(x) /= 0) call abort
- if (lbound (x, 1) /= 1 .or. lbound(x, 2) /= 1) call abort
- if (any (lbound (x) /= [1, 1])) call abort
- if (ubound (x, 1) /= 0 .or. ubound(x, 2) /= 2) call abort
- if (any (ubound (x) /= [0, 2])) call abort
+ if (size(x) /= 0) STOP 110
+ if (lbound (x, 1) /= 1 .or. lbound(x, 2) /= 1) STOP 111
+ if (any (lbound (x) /= [1, 1])) STOP 112
+ if (ubound (x, 1) /= 0 .or. ubound(x, 2) /= 2) STOP 113
+ if (any (ubound (x) /= [0, 2])) STOP 114
end subroutine sub2
subroutine sub3
integer :: x(4:5, 1:2)
- if (size(x) /= 0) call abort
- if (lbound (x, 1) /= 4 .or. lbound(x, 2) /= 1) call abort
- if (any (lbound (x) /= [4, 1])) call abort
- if (ubound (x, 1) /= 4 .or. ubound(x, 2) /= 2) call abort
- if (any (ubound (x) /= [4, 2])) call abort
+ if (size(x) /= 0) STOP 115
+ if (lbound (x, 1) /= 4 .or. lbound(x, 2) /= 1) STOP 116
+ if (any (lbound (x) /= [4, 1])) STOP 117
+ if (ubound (x, 1) /= 4 .or. ubound(x, 2) /= 2) STOP 118
+ if (any (ubound (x) /= [4, 2])) STOP 119
end subroutine sub3
subroutine foo (x,n)
integer :: n
integer :: x(7,n,2,*)
- if (ubound(x,1) /= 7 .or. ubound(x,2) /= 4 .or. ubound(x,3) /= 2) call abort
+ if (ubound(x,1) /= 7 .or. ubound(x,2) /= 4 .or. ubound(x,3) /= 2) STOP 120
end subroutine foo
subroutine jackal (b, c)
@@ -204,16 +204,16 @@ contains
integer :: soda(b:c, 3:4)
if (b > c) then
- if (size(soda) /= 0) call abort
- if (lbound (soda, 1) /= 1 .or. ubound (soda, 1) /= 0) call abort
+ if (size(soda) /= 0) STOP 121
+ if (lbound (soda, 1) /= 1 .or. ubound (soda, 1) /= 0) STOP 122
else
- if (size(soda) /= 2*(c-b+1)) call abort
- if (lbound (soda, 1) /= b .or. ubound (soda, 1) /= c) call abort
+ if (size(soda) /= 2*(c-b+1)) STOP 123
+ if (lbound (soda, 1) /= b .or. ubound (soda, 1) /= c) STOP 124
end if
- if (lbound (soda, 2) /= 3 .or. ubound (soda, 2) /= 4) call abort
- if (any (lbound (soda) /= [lbound(soda,1), lbound(soda,2)])) call abort
- if (any (ubound (soda) /= [ubound(soda,1), ubound(soda,2)])) call abort
+ if (lbound (soda, 2) /= 3 .or. ubound (soda, 2) /= 4) STOP 125
+ if (any (lbound (soda) /= [lbound(soda,1), lbound(soda,2)])) STOP 126
+ if (any (ubound (soda) /= [ubound(soda,1), ubound(soda,2)])) STOP 127
end subroutine jackal
diff --git a/gcc/testsuite/gfortran.dg/bound_3.f90 b/gcc/testsuite/gfortran.dg/bound_3.f90
index 7b1696d09f6..d8431432559 100644
--- a/gcc/testsuite/gfortran.dg/bound_3.f90
+++ b/gcc/testsuite/gfortran.dg/bound_3.f90
@@ -12,9 +12,9 @@ contains
implicit none
integer n, m
real x(10)
- if (any (lbound(x(5:n)) /= 1)) call abort
- if (lbound(x(5:n),1) /= 1) call abort
- if (any (ubound(x(5:n)) /= m)) call abort
- if (ubound(x(5:n),1) /= m) call abort
+ if (any (lbound(x(5:n)) /= 1)) STOP 1
+ if (lbound(x(5:n),1) /= 1) STOP 2
+ if (any (ubound(x(5:n)) /= m)) STOP 3
+ if (ubound(x(5:n),1) /= m) STOP 4
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.dg/bound_4.f90 b/gcc/testsuite/gfortran.dg/bound_4.f90
index b63ce9ec6a9..9f32af5ae17 100644
--- a/gcc/testsuite/gfortran.dg/bound_4.f90
+++ b/gcc/testsuite/gfortran.dg/bound_4.f90
@@ -4,7 +4,7 @@ program test
integer x(20)
integer, volatile :: n
n = 1
- if (size(x(n:2:-3)) /= 0) call abort
+ if (size(x(n:2:-3)) /= 0) STOP 1
call ha0020(-3)
call ha0020(-1)
@@ -19,12 +19,12 @@ subroutine ha0020(mf3)
xca(1:2:-1) = xda(1:2:mf3)
- if (any (xca /= 1)) call abort
- if (any(xda(1:2:mf3) /= xda(1:0))) call abort
- if (size(xda(1:2:mf3)) /= 0) call abort
- if (any(shape(xda(1:2:mf3)) /= 0)) call abort
- if (any(ubound(xda(1:2:mf3)) /= 0)) call abort
- if (ubound(xda(1:2:mf3),1) /= 0) call abort
- if (lbound(xda(1:2:mf3),1) /= 1) call abort
+ if (any (xca /= 1)) STOP 2
+ if (any(xda(1:2:mf3) /= xda(1:0))) STOP 3
+ if (size(xda(1:2:mf3)) /= 0) STOP 4
+ if (any(shape(xda(1:2:mf3)) /= 0)) STOP 5
+ if (any(ubound(xda(1:2:mf3)) /= 0)) STOP 6
+ if (ubound(xda(1:2:mf3),1) /= 0) STOP 7
+ if (lbound(xda(1:2:mf3),1) /= 1) STOP 8
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/bound_5.f90 b/gcc/testsuite/gfortran.dg/bound_5.f90
index 04245d6d869..4cd2e70e1cb 100644
--- a/gcc/testsuite/gfortran.dg/bound_5.f90
+++ b/gcc/testsuite/gfortran.dg/bound_5.f90
@@ -12,15 +12,15 @@
integer ida(2)
ida = lbound(a)
- if (any(ida /= (/0,2/))) call abort
+ if (any(ida /= (/0,2/))) STOP 1
ida = lbound(a%i)
- if (any(ida /= (/1,1/))) call abort
+ if (any(ida /= (/1,1/))) STOP 2
ida = ubound(a)
- if (any(ida /= (/5,8/))) call abort
+ if (any(ida /= (/5,8/))) STOP 3
ida = ubound(a%i)
- if (any(ida /= (/6,7/))) call abort
+ if (any(ida /= (/6,7/))) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/bound_6.f90 b/gcc/testsuite/gfortran.dg/bound_6.f90
index 5e0e3f7dc55..954f4ebda4a 100644
--- a/gcc/testsuite/gfortran.dg/bound_6.f90
+++ b/gcc/testsuite/gfortran.dg/bound_6.f90
@@ -28,7 +28,7 @@ contains
integer, intent(in) :: array1(:,:), array2(:,:)
integer :: j
do j = 1, ubound(array2,2)
- if (any (array1(:,j) .ne. array2(:,4-j))) call abort
+ if (any (array1(:,j) .ne. array2(:,4-j))) STOP 1
end do
end subroutine
end
@@ -41,19 +41,19 @@ SUBROUTINE PR38852(IDA,DDA,nf2,nf5,mf2)
TARGET DDA
DLA => DDA(2:3, 1:3:2, 5:4:-1, NF2, NF5:NF2:MF2)
IDA = UBOUND(DLA)
- if (any(ida /= 2)) call abort
+ if (any(ida /= 2)) STOP 1
DLA => DDA(2:3, 1:3:2, 5:4:-1, 2, 5:2:-2)
IDA = UBOUND(DLA)
- if (any(ida /= 2)) call abort
+ if (any(ida /= 2)) STOP 1
!
! These worked.
!
DLA => DDA(2:3, 1:3:2, 5:4:-1, 2, 5:2:-2)
IDA = shape(DLA)
- if (any(ida /= 2)) call abort
+ if (any(ida /= 2)) STOP 1
DLA => DDA(2:3, 1:3:2, 5:4:-1, 2, 5:2:-2)
IDA = LBOUND(DLA)
- if (any(ida /= 1)) call abort
+ if (any(ida /= 1)) STOP 1
END SUBROUTINE
subroutine mikael
@@ -66,6 +66,6 @@ contains
subroutine test (a, b, expect)
integer :: a, b, expect
integer :: c(a:b)
- if (ubound (c, 1) .ne. expect) call abort
+ if (ubound (c, 1) .ne. expect) STOP 1
end subroutine test
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/bound_7.f90 b/gcc/testsuite/gfortran.dg/bound_7.f90
index e422845b900..17970876250 100644
--- a/gcc/testsuite/gfortran.dg/bound_7.f90
+++ b/gcc/testsuite/gfortran.dg/bound_7.f90
@@ -17,151 +17,151 @@
call jackal(-1,-8)
call jackal(-1,8)
- if (any(lbound(i(-1:1,-1:1)) /= 1)) call abort
- if (lbound(i(-1:1,-1:1), 1) /= 1) call abort
- if (lbound(i(-1:1,-1:1), 2) /= 1) call abort
+ if (any(lbound(i(-1:1,-1:1)) /= 1)) STOP 1
+ if (lbound(i(-1:1,-1:1), 1) /= 1) STOP 2
+ if (lbound(i(-1:1,-1:1), 2) /= 1) STOP 3
- if (any(ubound(i(-1:1,-1:1)) /= 3)) call abort
- if (ubound(i(-1:1,-1:1), 1) /= 3) call abort
- if (ubound(i(-1:1,-1:1), 2) /= 3) call abort
+ if (any(ubound(i(-1:1,-1:1)) /= 3)) STOP 4
+ if (ubound(i(-1:1,-1:1), 1) /= 3) STOP 5
+ if (ubound(i(-1:1,-1:1), 2) /= 3) STOP 6
- if (any(lbound(i(:,:)) /= 1)) call abort
- if (lbound(i(:,:), 1) /= 1) call abort
- if (lbound(i(:,:), 2) /= 1) call abort
+ if (any(lbound(i(:,:)) /= 1)) STOP 7
+ if (lbound(i(:,:), 1) /= 1) STOP 8
+ if (lbound(i(:,:), 2) /= 1) STOP 9
- if (any(ubound(i(:,:)) /= 3)) call abort
- if (ubound(i(:,:), 1) /= 3) call abort
- if (ubound(i(:,:), 2) /= 3) call abort
+ if (any(ubound(i(:,:)) /= 3)) STOP 10
+ if (ubound(i(:,:), 1) /= 3) STOP 11
+ if (ubound(i(:,:), 2) /= 3) STOP 12
- if (any(lbound(i(0:,-1:)) /= 1)) call abort
- if (lbound(i(0:,-1:), 1) /= 1) call abort
- if (lbound(i(0:,-1:), 2) /= 1) call abort
+ if (any(lbound(i(0:,-1:)) /= 1)) STOP 13
+ if (lbound(i(0:,-1:), 1) /= 1) STOP 14
+ if (lbound(i(0:,-1:), 2) /= 1) STOP 15
- if (any(ubound(i(0:,-1:)) /= [2,3])) call abort
- if (ubound(i(0:,-1:), 1) /= 2) call abort
- if (ubound(i(0:,-1:), 2) /= 3) call abort
+ if (any(ubound(i(0:,-1:)) /= [2,3])) STOP 16
+ if (ubound(i(0:,-1:), 1) /= 2) STOP 17
+ if (ubound(i(0:,-1:), 2) /= 3) STOP 18
- if (any(lbound(i(:0,:0)) /= 1)) call abort
- if (lbound(i(:0,:0), 1) /= 1) call abort
- if (lbound(i(:0,:0), 2) /= 1) call abort
+ if (any(lbound(i(:0,:0)) /= 1)) STOP 19
+ if (lbound(i(:0,:0), 1) /= 1) STOP 20
+ if (lbound(i(:0,:0), 2) /= 1) STOP 21
- if (any(ubound(i(:0,:0)) /= 2)) call abort
- if (ubound(i(:0,:0), 1) /= 2) call abort
- if (ubound(i(:0,:0), 2) /= 2) call abort
+ if (any(ubound(i(:0,:0)) /= 2)) STOP 22
+ if (ubound(i(:0,:0), 1) /= 2) STOP 23
+ if (ubound(i(:0,:0), 2) /= 2) STOP 24
- if (any(lbound(transpose(i)) /= 1)) call abort
- if (lbound(transpose(i), 1) /= 1) call abort
- if (lbound(transpose(i), 2) /= 1) call abort
+ if (any(lbound(transpose(i)) /= 1)) STOP 25
+ if (lbound(transpose(i), 1) /= 1) STOP 26
+ if (lbound(transpose(i), 2) /= 1) STOP 27
- if (any(ubound(transpose(i)) /= 3)) call abort
- if (ubound(transpose(i), 1) /= 3) call abort
- if (ubound(transpose(i), 2) /= 3) call abort
+ if (any(ubound(transpose(i)) /= 3)) STOP 28
+ if (ubound(transpose(i), 1) /= 3) STOP 29
+ if (ubound(transpose(i), 2) /= 3) STOP 30
- if (any(lbound(reshape(i,[2,2])) /= 1)) call abort
- if (lbound(reshape(i,[2,2]), 1) /= 1) call abort
- if (lbound(reshape(i,[2,2]), 2) /= 1) call abort
+ if (any(lbound(reshape(i,[2,2])) /= 1)) STOP 31
+ if (lbound(reshape(i,[2,2]), 1) /= 1) STOP 32
+ if (lbound(reshape(i,[2,2]), 2) /= 1) STOP 33
- if (any(ubound(reshape(i,[2,2])) /= 2)) call abort
- if (ubound(reshape(i,[2,2]), 1) /= 2) call abort
- if (ubound(reshape(i,[2,2]), 2) /= 2) call abort
+ if (any(ubound(reshape(i,[2,2])) /= 2)) STOP 34
+ if (ubound(reshape(i,[2,2]), 1) /= 2) STOP 35
+ if (ubound(reshape(i,[2,2]), 2) /= 2) STOP 36
- if (any(lbound(cshift(i,-1)) /= 1)) call abort
- if (lbound(cshift(i,-1), 1) /= 1) call abort
- if (lbound(cshift(i,-1), 2) /= 1) call abort
+ if (any(lbound(cshift(i,-1)) /= 1)) STOP 37
+ if (lbound(cshift(i,-1), 1) /= 1) STOP 38
+ if (lbound(cshift(i,-1), 2) /= 1) STOP 39
- if (any(ubound(cshift(i,-1)) /= 3)) call abort
- if (ubound(cshift(i,-1), 1) /= 3) call abort
- if (ubound(cshift(i,-1), 2) /= 3) call abort
+ if (any(ubound(cshift(i,-1)) /= 3)) STOP 40
+ if (ubound(cshift(i,-1), 1) /= 3) STOP 41
+ if (ubound(cshift(i,-1), 2) /= 3) STOP 42
- if (any(lbound(eoshift(i,-1)) /= 1)) call abort
- if (lbound(eoshift(i,-1), 1) /= 1) call abort
- if (lbound(eoshift(i,-1), 2) /= 1) call abort
+ if (any(lbound(eoshift(i,-1)) /= 1)) STOP 43
+ if (lbound(eoshift(i,-1), 1) /= 1) STOP 44
+ if (lbound(eoshift(i,-1), 2) /= 1) STOP 45
- if (any(ubound(eoshift(i,-1)) /= 3)) call abort
- if (ubound(eoshift(i,-1), 1) /= 3) call abort
- if (ubound(eoshift(i,-1), 2) /= 3) call abort
+ if (any(ubound(eoshift(i,-1)) /= 3)) STOP 46
+ if (ubound(eoshift(i,-1), 1) /= 3) STOP 47
+ if (ubound(eoshift(i,-1), 2) /= 3) STOP 48
- if (any(lbound(spread(i,1,2)) /= 1)) call abort
- if (lbound(spread(i,1,2), 1) /= 1) call abort
- if (lbound(spread(i,1,2), 2) /= 1) call abort
+ if (any(lbound(spread(i,1,2)) /= 1)) STOP 49
+ if (lbound(spread(i,1,2), 1) /= 1) STOP 50
+ if (lbound(spread(i,1,2), 2) /= 1) STOP 51
- if (any(ubound(spread(i,1,2)) /= [2,3,3])) call abort
- if (ubound(spread(i,1,2), 1) /= 2) call abort
- if (ubound(spread(i,1,2), 2) /= 3) call abort
- if (ubound(spread(i,1,2), 3) /= 3) call abort
+ if (any(ubound(spread(i,1,2)) /= [2,3,3])) STOP 52
+ if (ubound(spread(i,1,2), 1) /= 2) STOP 53
+ if (ubound(spread(i,1,2), 2) /= 3) STOP 54
+ if (ubound(spread(i,1,2), 3) /= 3) STOP 55
- if (any(lbound(maxloc(i)) /= 1)) call abort
- if (lbound(maxloc(i), 1) /= 1) call abort
+ if (any(lbound(maxloc(i)) /= 1)) STOP 56
+ if (lbound(maxloc(i), 1) /= 1) STOP 57
- if (any(ubound(maxloc(i)) /= 2)) call abort
- if (ubound(maxloc(i), 1) /= 2) call abort
+ if (any(ubound(maxloc(i)) /= 2)) STOP 58
+ if (ubound(maxloc(i), 1) /= 2) STOP 59
- if (any(lbound(minloc(i)) /= 1)) call abort
- if (lbound(minloc(i), 1) /= 1) call abort
+ if (any(lbound(minloc(i)) /= 1)) STOP 60
+ if (lbound(minloc(i), 1) /= 1) STOP 61
- if (any(ubound(minloc(i)) /= 2)) call abort
- if (ubound(minloc(i), 1) /= 2) call abort
+ if (any(ubound(minloc(i)) /= 2)) STOP 62
+ if (ubound(minloc(i), 1) /= 2) STOP 63
- if (any(lbound(maxval(i,2)) /= 1)) call abort
- if (lbound(maxval(i,2), 1) /= 1) call abort
+ if (any(lbound(maxval(i,2)) /= 1)) STOP 64
+ if (lbound(maxval(i,2), 1) /= 1) STOP 65
- if (any(ubound(maxval(i,2)) /= 3)) call abort
- if (ubound(maxval(i,2), 1) /= 3) call abort
+ if (any(ubound(maxval(i,2)) /= 3)) STOP 66
+ if (ubound(maxval(i,2), 1) /= 3) STOP 67
- if (any(lbound(minval(i,2)) /= 1)) call abort
- if (lbound(minval(i,2), 1) /= 1) call abort
+ if (any(lbound(minval(i,2)) /= 1)) STOP 68
+ if (lbound(minval(i,2), 1) /= 1) STOP 69
- if (any(ubound(minval(i,2)) /= 3)) call abort
- if (ubound(minval(i,2), 1) /= 3) call abort
+ if (any(ubound(minval(i,2)) /= 3)) STOP 70
+ if (ubound(minval(i,2), 1) /= 3) STOP 71
- if (any(lbound(any(i==1,2)) /= 1)) call abort
- if (lbound(any(i==1,2), 1) /= 1) call abort
+ if (any(lbound(any(i==1,2)) /= 1)) STOP 72
+ if (lbound(any(i==1,2), 1) /= 1) STOP 73
- if (any(ubound(any(i==1,2)) /= 3)) call abort
- if (ubound(any(i==1,2), 1) /= 3) call abort
+ if (any(ubound(any(i==1,2)) /= 3)) STOP 74
+ if (ubound(any(i==1,2), 1) /= 3) STOP 75
- if (any(lbound(count(i==1,2)) /= 1)) call abort
- if (lbound(count(i==1,2), 1) /= 1) call abort
+ if (any(lbound(count(i==1,2)) /= 1)) STOP 76
+ if (lbound(count(i==1,2), 1) /= 1) STOP 77
- if (any(ubound(count(i==1,2)) /= 3)) call abort
- if (ubound(count(i==1,2), 1) /= 3) call abort
+ if (any(ubound(count(i==1,2)) /= 3)) STOP 78
+ if (ubound(count(i==1,2), 1) /= 3) STOP 79
- if (any(lbound(merge(i,i,.true.)) /= 1)) call abort
- if (lbound(merge(i,i,.true.), 1) /= 1) call abort
- if (lbound(merge(i,i,.true.), 2) /= 1) call abort
+ if (any(lbound(merge(i,i,.true.)) /= 1)) STOP 80
+ if (lbound(merge(i,i,.true.), 1) /= 1) STOP 81
+ if (lbound(merge(i,i,.true.), 2) /= 1) STOP 82
- if (any(ubound(merge(i,i,.true.)) /= 3)) call abort
- if (ubound(merge(i,i,.true.), 1) /= 3) call abort
- if (ubound(merge(i,i,.true.), 2) /= 3) call abort
+ if (any(ubound(merge(i,i,.true.)) /= 3)) STOP 83
+ if (ubound(merge(i,i,.true.), 1) /= 3) STOP 84
+ if (ubound(merge(i,i,.true.), 2) /= 3) STOP 85
- if (any(lbound(lbound(i)) /= 1)) call abort
- if (lbound(lbound(i), 1) /= 1) call abort
+ if (any(lbound(lbound(i)) /= 1)) STOP 86
+ if (lbound(lbound(i), 1) /= 1) STOP 87
- if (any(ubound(lbound(i)) /= 2)) call abort
- if (ubound(lbound(i), 1) /= 2) call abort
+ if (any(ubound(lbound(i)) /= 2)) STOP 88
+ if (ubound(lbound(i), 1) /= 2) STOP 89
- if (any(lbound(ubound(i)) /= 1)) call abort
- if (lbound(ubound(i), 1) /= 1) call abort
+ if (any(lbound(ubound(i)) /= 1)) STOP 90
+ if (lbound(ubound(i), 1) /= 1) STOP 91
- if (any(ubound(ubound(i)) /= 2)) call abort
- if (ubound(ubound(i), 1) /= 2) call abort
+ if (any(ubound(ubound(i)) /= 2)) STOP 92
+ if (ubound(ubound(i), 1) /= 2) STOP 93
- if (any(lbound(shape(i)) /= 1)) call abort
- if (lbound(shape(i), 1) /= 1) call abort
+ if (any(lbound(shape(i)) /= 1)) STOP 94
+ if (lbound(shape(i), 1) /= 1) STOP 95
- if (any(ubound(shape(i)) /= 2)) call abort
- if (ubound(shape(i), 1) /= 2) call abort
+ if (any(ubound(shape(i)) /= 2)) STOP 96
+ if (ubound(shape(i), 1) /= 2) STOP 97
- if (any(lbound(product(i,2)) /= 1)) call abort
- if (any(ubound(product(i,2)) /= 3)) call abort
- if (any(lbound(sum(i,2)) /= 1)) call abort
- if (any(ubound(sum(i,2)) /= 3)) call abort
- if (any(lbound(matmul(i,i)) /= 1)) call abort
- if (any(ubound(matmul(i,i)) /= 3)) call abort
- if (any(lbound(pack(i,.true.)) /= 1)) call abort
- if (any(ubound(pack(i,.true.)) /= 9)) call abort
- if (any(lbound(unpack(j,[.true.],[2])) /= 1)) call abort
- if (any(ubound(unpack(j,[.true.],[2])) /= 1)) call abort
+ if (any(lbound(product(i,2)) /= 1)) STOP 98
+ if (any(ubound(product(i,2)) /= 3)) STOP 99
+ if (any(lbound(sum(i,2)) /= 1)) STOP 100
+ if (any(ubound(sum(i,2)) /= 3)) STOP 101
+ if (any(lbound(matmul(i,i)) /= 1)) STOP 102
+ if (any(ubound(matmul(i,i)) /= 3)) STOP 103
+ if (any(lbound(pack(i,.true.)) /= 1)) STOP 104
+ if (any(ubound(pack(i,.true.)) /= 9)) STOP 105
+ if (any(lbound(unpack(j,[.true.],[2])) /= 1)) STOP 106
+ if (any(ubound(unpack(j,[.true.],[2])) /= 1)) STOP 107
call sub1(i,3)
call sub1(reshape([7,9,4,6,7,9],[3,2]),3)
@@ -172,34 +172,34 @@ contains
subroutine sub1(a,n)
integer :: n, a(2:n+1,4:*)
- if (any([lbound(a,1), lbound(a,2)] /= [2, 4])) call abort
- if (any(lbound(a) /= [2, 4])) call abort
+ if (any([lbound(a,1), lbound(a,2)] /= [2, 4])) STOP 108
+ if (any(lbound(a) /= [2, 4])) STOP 109
end subroutine sub1
subroutine sub2
integer :: x(3:2, 1:2)
- if (size(x) /= 0) call abort
- if (lbound (x, 1) /= 1 .or. lbound(x, 2) /= 1) call abort
- if (any (lbound (x) /= [1, 1])) call abort
- if (ubound (x, 1) /= 0 .or. ubound(x, 2) /= 2) call abort
- if (any (ubound (x) /= [0, 2])) call abort
+ if (size(x) /= 0) STOP 110
+ if (lbound (x, 1) /= 1 .or. lbound(x, 2) /= 1) STOP 111
+ if (any (lbound (x) /= [1, 1])) STOP 112
+ if (ubound (x, 1) /= 0 .or. ubound(x, 2) /= 2) STOP 113
+ if (any (ubound (x) /= [0, 2])) STOP 114
end subroutine sub2
subroutine sub3
integer :: x(4:5, 1:2)
- if (size(x) /= 0) call abort
- if (lbound (x, 1) /= 4 .or. lbound(x, 2) /= 1) call abort
- if (any (lbound (x) /= [4, 1])) call abort
- if (ubound (x, 1) /= 4 .or. ubound(x, 2) /= 2) call abort
- if (any (ubound (x) /= [4, 2])) call abort
+ if (size(x) /= 0) STOP 115
+ if (lbound (x, 1) /= 4 .or. lbound(x, 2) /= 1) STOP 116
+ if (any (lbound (x) /= [4, 1])) STOP 117
+ if (ubound (x, 1) /= 4 .or. ubound(x, 2) /= 2) STOP 118
+ if (any (ubound (x) /= [4, 2])) STOP 119
end subroutine sub3
subroutine foo (x,n)
integer :: x(7,n,2,*), n
- if (ubound(x,1) /= 7 .or. ubound(x,2) /= 4 .or. ubound(x,3) /= 2) call abort
+ if (ubound(x,1) /= 7 .or. ubound(x,2) /= 4 .or. ubound(x,3) /= 2) STOP 120
end subroutine foo
subroutine jackal (b, c)
@@ -207,16 +207,16 @@ contains
integer :: soda(b:c, 3:4)
if (b > c) then
- if (size(soda) /= 0) call abort
- if (lbound (soda, 1) /= 1 .or. ubound (soda, 1) /= 0) call abort
+ if (size(soda) /= 0) STOP 121
+ if (lbound (soda, 1) /= 1 .or. ubound (soda, 1) /= 0) STOP 122
else
- if (size(soda) /= 2*(c-b+1)) call abort
- if (lbound (soda, 1) /= b .or. ubound (soda, 1) /= c) call abort
+ if (size(soda) /= 2*(c-b+1)) STOP 123
+ if (lbound (soda, 1) /= b .or. ubound (soda, 1) /= c) STOP 124
end if
- if (lbound (soda, 2) /= 3 .or. ubound (soda, 2) /= 4) call abort
- if (any (lbound (soda) /= [lbound(soda,1), lbound(soda,2)])) call abort
- if (any (ubound (soda) /= [ubound(soda,1), ubound(soda,2)])) call abort
+ if (lbound (soda, 2) /= 3 .or. ubound (soda, 2) /= 4) STOP 125
+ if (any (lbound (soda) /= [lbound(soda,1), lbound(soda,2)])) STOP 126
+ if (any (ubound (soda) /= [ubound(soda,1), ubound(soda,2)])) STOP 127
end subroutine jackal
diff --git a/gcc/testsuite/gfortran.dg/bound_8.f90 b/gcc/testsuite/gfortran.dg/bound_8.f90
index 046fc7eb2af..50345d173d6 100644
--- a/gcc/testsuite/gfortran.dg/bound_8.f90
+++ b/gcc/testsuite/gfortran.dg/bound_8.f90
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-Warray-temporaries -fall-intrinsics" }
+! { dg-options "-Warray-temporaries " }
! Check that LBOUND/UBOUND/SIZE/SHAPE of array-expressions get simplified
! in certain cases.
@@ -26,19 +26,19 @@ PROGRAM main
! and additionally correct (of course).
! Shape of expressions known at compile-time.
- IF (ANY (LBOUND (a + b) /= 1)) CALL abort ()
- IF (ANY (UBOUND (2 * b) /= (/ 2, 3 /))) CALL abort ()
- IF (ANY (SHAPE (- b) /= (/ 2, 3 /))) CALL abort ()
- IF (SIZE (a ** 2) /= 6) CALL abort
+ IF (ANY (LBOUND (a + b) /= 1)) STOP 1
+ IF (ANY (UBOUND (2 * b) /= (/ 2, 3 /))) STOP 2
+ IF (ANY (SHAPE (- b) /= (/ 2, 3 /))) STOP 3
+ IF (SIZE (a ** 2) /= 6) STOP 1
! Shape unknown at compile-time.
- IF (ANY (LBOUND (x + y) /= 1)) CALL abort ()
- IF (SIZE (x ** 2) /= 6) CALL abort ()
+ IF (ANY (LBOUND (x + y) /= 1)) STOP 4
+ IF (SIZE (x ** 2) /= 6) STOP 5
! Unfortunately, the array-version of UBOUND and SHAPE keep generating
! temporary arrays for their results (not for the operation). Thus we
! can not check SHAPE in this case and do UBOUND in the single-dimension
! version.
- IF (UBOUND (2 * y, 1) /= 2 .OR. UBOUND (2 * y, 2) /= 3) CALL abort ()
- !IF (ANY (SHAPE (- y) /= (/ 2, 3 /))) CALL abort ()
+ IF (UBOUND (2 * y, 1) /= 2 .OR. UBOUND (2 * y, 2) /= 3) STOP 6
+ !IF (ANY (SHAPE (- y) /= (/ 2, 3 /))) STOP 7
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/bound_9.f90 b/gcc/testsuite/gfortran.dg/bound_9.f90
index 9d1e15a4103..0bceff3334d 100644
--- a/gcc/testsuite/gfortran.dg/bound_9.f90
+++ b/gcc/testsuite/gfortran.dg/bound_9.f90
@@ -48,23 +48,23 @@ program main
call foo(a,b,n,m)
- if (n .ne. 1 .or. m .ne. -2) call abort
+ if (n .ne. 1 .or. m .ne. -2) STOP 1
call foo(a(2:0), empty, n, m)
- if (n .ne. 1 .or. m .ne. 1) call abort
+ if (n .ne. 1 .or. m .ne. 1) STOP 2
call foo(empty, a(2:0), n, m)
- if (n .ne. 1 .or. m .ne. 1) call abort
+ if (n .ne. 1 .or. m .ne. 1) STOP 3
allocate (x(0))
y => a(3:2)
call bar (x, y, n, m)
- if (n .ne. 1 .or. m .ne. 1) call abort
+ if (n .ne. 1 .or. m .ne. 1) STOP 4
call baz(a,3,2,n)
- if (n .ne. 1) call abort
+ if (n .ne. 1) STOP 5
call baz(a,2,3,n)
- if (n .ne. 2) call abort
+ if (n .ne. 2) STOP 6
call qux(a, -3, n)
- if (n .ne. 1) call abort
+ if (n .ne. 1) STOP 7
end program main
! { dg-final { scan-tree-dump-times "\\*one = 1" 2 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/bound_simplification_1.f90 b/gcc/testsuite/gfortran.dg/bound_simplification_1.f90
index def5b7005ef..69ad6e73366 100644
--- a/gcc/testsuite/gfortran.dg/bound_simplification_1.f90
+++ b/gcc/testsuite/gfortran.dg/bound_simplification_1.f90
@@ -7,8 +7,8 @@
varu(:) = ubound(f)
varl(:) = lbound(f)
- if (any (varu /= upper)) call abort
- if (any (varl /= lower)) call abort
+ if (any (varu /= upper)) STOP 1
+ if (any (varl /= lower)) STOP 2
call check (f, upper, lower)
call check (f, ubound(f), lbound(f))
@@ -20,8 +20,8 @@ contains
integer :: upper(5), lower(5)
real :: f(:,:,:,:,:)
- if (any (ubound(f) /= upper)) call abort
- if (any (lbound(f) /= lower)) call abort
+ if (any (ubound(f) /= upper)) STOP 3
+ if (any (lbound(f) /= lower)) STOP 4
end subroutine check
end
diff --git a/gcc/testsuite/gfortran.dg/bound_simplification_3.f90 b/gcc/testsuite/gfortran.dg/bound_simplification_3.f90
index 728f131d8ba..2a03f3b7f67 100644
--- a/gcc/testsuite/gfortran.dg/bound_simplification_3.f90
+++ b/gcc/testsuite/gfortran.dg/bound_simplification_3.f90
@@ -14,8 +14,8 @@ program testit
integer, parameter :: i=lbound(arr,1)
integer, parameter :: j=ubound(arr,1)
! write(6,*) i, j
- if (i /= 0) call abort
- if (j /= 2) call abort
+ if (i /= 0) STOP 1
+ if (j /= 2) STOP 2
end program testit
! { dg-final { scan-tree-dump-times "bound" 0 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/bound_simplification_4.f90 b/gcc/testsuite/gfortran.dg/bound_simplification_4.f90
index fc399251159..521647289cd 100644
--- a/gcc/testsuite/gfortran.dg/bound_simplification_4.f90
+++ b/gcc/testsuite/gfortran.dg/bound_simplification_4.f90
@@ -10,19 +10,19 @@
type(t) :: d(3:8) = t(7)
type(t) :: e[5:9,-1:*]
- if (lbound(d, 1) /= 3) call abort
- if (lbound(d(3:5), 1) /= 1) call abort
- if (lbound(d%c, 1) /= 1) call abort
- if (ubound(d, 1) /= 8) call abort
- if (ubound(d(3:5), 1) /= 3) call abort
- if (ubound(d%c, 1) /= 6) call abort
+ if (lbound(d, 1) /= 3) STOP 1
+ if (lbound(d(3:5), 1) /= 1) STOP 2
+ if (lbound(d%c, 1) /= 1) STOP 3
+ if (ubound(d, 1) /= 8) STOP 4
+ if (ubound(d(3:5), 1) /= 3) STOP 5
+ if (ubound(d%c, 1) /= 6) STOP 6
- if (lcobound(e, 1) /= 5) call abort
- if (lcobound(e%c, 1) /= 5) call abort
- if (lcobound(e, 2) /= -1) call abort
- if (lcobound(e%c, 2) /= -1) call abort
- if (ucobound(e, 1) /= 9) call abort
- if (ucobound(e%c, 1) /= 9) call abort
+ if (lcobound(e, 1) /= 5) STOP 7
+ if (lcobound(e%c, 1) /= 5) STOP 8
+ if (lcobound(e, 2) /= -1) STOP 9
+ if (lcobound(e%c, 2) /= -1) STOP 10
+ if (ucobound(e, 1) /= 9) STOP 11
+ if (ucobound(e%c, 1) /= 9) STOP 12
! no simplification for ucobound(e{,%c}, dim=2)
end
! { dg-final { scan-tree-dump-not "bound" "original" } }
diff --git a/gcc/testsuite/gfortran.dg/bound_simplification_5.f90 b/gcc/testsuite/gfortran.dg/bound_simplification_5.f90
index b1cf6eb6d7d..77563b29e59 100644
--- a/gcc/testsuite/gfortran.dg/bound_simplification_5.f90
+++ b/gcc/testsuite/gfortran.dg/bound_simplification_5.f90
@@ -14,30 +14,30 @@
type(t) :: h(3), j(4), k(0)
!Test full arrays vs subarrays
- if (lbound(d, 1) /= 3) call abort
- if (lbound(d(3:5), 1) /= 1) call abort
- if (lbound(d%c, 1) /= 1) call abort
- if (ubound(d, 1) /= 8) call abort
- if (ubound(d(3:5), 1) /= 3) call abort
- if (ubound(d%c, 1) /= 6) call abort
+ if (lbound(d, 1) /= 3) STOP 1
+ if (lbound(d(3:5), 1) /= 1) STOP 2
+ if (lbound(d%c, 1) /= 1) STOP 3
+ if (ubound(d, 1) /= 8) STOP 4
+ if (ubound(d(3:5), 1) /= 3) STOP 5
+ if (ubound(d%c, 1) /= 6) STOP 6
- if (lcobound(e, 1) /= 5) call abort
- if (lcobound(e%c, 1) /= 5) call abort
- if (lcobound(e, 2) /= -1) call abort
- if (lcobound(e%c, 2) /= -1) call abort
- if (ucobound(e, 1) /= 9) call abort
- if (ucobound(e%c, 1) /= 9) call abort
+ if (lcobound(e, 1) /= 5) STOP 7
+ if (lcobound(e%c, 1) /= 5) STOP 8
+ if (lcobound(e, 2) /= -1) STOP 9
+ if (lcobound(e%c, 2) /= -1) STOP 10
+ if (ucobound(e, 1) /= 9) STOP 11
+ if (ucobound(e%c, 1) /= 9) STOP 12
! no simplification for ucobound(e{,%c}, dim=2)
- if (any(lbound(d ) /= [3])) call abort
- if (any(lbound(d(3:5)) /= [1])) call abort
- if (any(lbound(d%c ) /= [1])) call abort
- if (any(ubound(d ) /= [8])) call abort
- if (any(ubound(d(3:5)) /= [3])) call abort
- if (any(ubound(d%c ) /= [6])) call abort
+ if (any(lbound(d ) /= [3])) STOP 13
+ if (any(lbound(d(3:5)) /= [1])) STOP 14
+ if (any(lbound(d%c ) /= [1])) STOP 15
+ if (any(ubound(d ) /= [8])) STOP 16
+ if (any(ubound(d(3:5)) /= [3])) STOP 17
+ if (any(ubound(d%c ) /= [6])) STOP 18
- if (any(lcobound(e ) /= [5, -1])) call abort
- if (any(lcobound(e%c) /= [5, -1])) call abort
+ if (any(lcobound(e ) /= [5, -1])) STOP 19
+ if (any(lcobound(e%c) /= [5, -1])) STOP 20
! no simplification for ucobound(e{,%c})
call test_empty_arrays(h, j, k)
@@ -47,27 +47,27 @@ contains
type(t) :: a(:), c(-3:0), d(3:1)
type(t) :: f(4:2), g(0:6)
- if (lbound(a, 1) /= 1) call abort
- if (lbound(c, 1) /= -3) call abort
- if (lbound(d, 1) /= 1) call abort
- if (lbound(f, 1) /= 1) call abort
- if (lbound(g, 1) /= 0) call abort
+ if (lbound(a, 1) /= 1) STOP 21
+ if (lbound(c, 1) /= -3) STOP 22
+ if (lbound(d, 1) /= 1) STOP 23
+ if (lbound(f, 1) /= 1) STOP 24
+ if (lbound(g, 1) /= 0) STOP 25
- if (ubound(c, 1) /= 0) call abort
- if (ubound(d, 1) /= 0) call abort
- if (ubound(f, 1) /= 0) call abort
- if (ubound(g, 1) /= 6) call abort
+ if (ubound(c, 1) /= 0) STOP 26
+ if (ubound(d, 1) /= 0) STOP 27
+ if (ubound(f, 1) /= 0) STOP 28
+ if (ubound(g, 1) /= 6) STOP 29
- if (any(lbound(a) /= [ 1])) call abort
- if (any(lbound(c) /= [-3])) call abort
- if (any(lbound(d) /= [ 1])) call abort
- if (any(lbound(f) /= [ 1])) call abort
- if (any(lbound(g) /= [ 0])) call abort
+ if (any(lbound(a) /= [ 1])) STOP 30
+ if (any(lbound(c) /= [-3])) STOP 31
+ if (any(lbound(d) /= [ 1])) STOP 32
+ if (any(lbound(f) /= [ 1])) STOP 33
+ if (any(lbound(g) /= [ 0])) STOP 34
- if (any(ubound(c) /= [0])) call abort
- if (any(ubound(d) /= [0])) call abort
- if (any(ubound(f) /= [0])) call abort
- if (any(ubound(g) /= [6])) call abort
+ if (any(ubound(c) /= [0])) STOP 35
+ if (any(ubound(d) /= [0])) STOP 36
+ if (any(ubound(f) /= [0])) STOP 37
+ if (any(ubound(g) /= [6])) STOP 38
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/bound_simplification_6.f90 b/gcc/testsuite/gfortran.dg/bound_simplification_6.f90
index 9ab757dd5f2..2480f2806fd 100644
--- a/gcc/testsuite/gfortran.dg/bound_simplification_6.f90
+++ b/gcc/testsuite/gfortran.dg/bound_simplification_6.f90
@@ -18,8 +18,8 @@ MODULE qs_integrate_potential_low
SUBROUTINE integrate_general_opt()
REAL(KIND=dp) :: gp(3)
INTEGER :: ng
- if (any(lbound(cell%h_inv) /= 1)) call abort
- if (any(ubound(cell%h_inv) /= 3)) call abort
+ if (any(lbound(cell%h_inv) /= 1)) STOP 1
+ if (any(ubound(cell%h_inv) /= 3)) STOP 2
END SUBROUTINE integrate_general_opt
END MODULE qs_integrate_potential_low
! { dg-final { scan-tree-dump-not "bound" "original" } }
diff --git a/gcc/testsuite/gfortran.dg/bounds_check_1.f90 b/gcc/testsuite/gfortran.dg/bounds_check_1.f90
index c05f4456a11..1f4810a5eaa 100644
--- a/gcc/testsuite/gfortran.dg/bounds_check_1.f90
+++ b/gcc/testsuite/gfortran.dg/bounds_check_1.f90
@@ -3,7 +3,7 @@
! PR fortran/27524
integer :: res(1)
res = F()
- if (res(1) /= 1) call abort
+ if (res(1) /= 1) STOP 1
contains
function F()
integer :: F(1)
diff --git a/gcc/testsuite/gfortran.dg/bounds_check_12.f90 b/gcc/testsuite/gfortran.dg/bounds_check_12.f90
index f671badbaa5..7e73419719f 100644
--- a/gcc/testsuite/gfortran.dg/bounds_check_12.f90
+++ b/gcc/testsuite/gfortran.dg/bounds_check_12.f90
@@ -17,9 +17,9 @@ program array_char
z = ""
z = (/y(1: len (trim(y))), x(1: len (trim(x)))/)
j = ichar ([(z(1)(i:i), i=1,5)])
- if (any (j .ne. (/99,100,32,32,32/))) call abort ()
+ if (any (j .ne. (/99,100,32,32,32/))) STOP 1
j = ichar ([(z(2)(i:i), i=1,5)])
- if (any (j .ne. (/97,98,32,32,32/))) call abort ()
+ if (any (j .ne. (/97,98,32,32,32/))) STOP 2
x = "a "
z = (/y(1: len (trim(y))), x(1: len (trim(x)))/)
end program array_char
diff --git a/gcc/testsuite/gfortran.dg/bounds_check_14.f90 b/gcc/testsuite/gfortran.dg/bounds_check_14.f90
index 1e5a4aeeee3..67ed14bb7da 100644
--- a/gcc/testsuite/gfortran.dg/bounds_check_14.f90
+++ b/gcc/testsuite/gfortran.dg/bounds_check_14.f90
@@ -5,7 +5,7 @@ program test
integer x(20)
integer, volatile :: n
n = 1
- if (size(x(n:2:-3)) /= 0) call abort
+ if (size(x(n:2:-3)) /= 0) STOP 1
call ha0020(-3)
call ha0020(-1)
@@ -20,12 +20,12 @@ subroutine ha0020(mf3)
xca(1:2:-1) = xda(1:2:mf3)
- if (any (xca /= 1)) call abort
- if (any(xda(1:2:mf3) /= xda(1:0))) call abort
- if (size(xda(1:2:mf3)) /= 0) call abort
- if (any(shape(xda(1:2:mf3)) /= 0)) call abort
- if (any(ubound(xda(1:2:mf3)) /= 0)) call abort
- if (ubound(xda(1:2:mf3),1) /= 0) call abort
- if (lbound(xda(1:2:mf3),1) /= 1) call abort
+ if (any (xca /= 1)) STOP 2
+ if (any(xda(1:2:mf3) /= xda(1:0))) STOP 3
+ if (size(xda(1:2:mf3)) /= 0) STOP 4
+ if (any(shape(xda(1:2:mf3)) /= 0)) STOP 5
+ if (any(ubound(xda(1:2:mf3)) /= 0)) STOP 6
+ if (ubound(xda(1:2:mf3),1) /= 0) STOP 7
+ if (lbound(xda(1:2:mf3),1) /= 1) STOP 8
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/bounds_check_15.f90 b/gcc/testsuite/gfortran.dg/bounds_check_15.f90
index 947ffb2f4b4..5576af97684 100644
--- a/gcc/testsuite/gfortran.dg/bounds_check_15.f90
+++ b/gcc/testsuite/gfortran.dg/bounds_check_15.f90
@@ -23,7 +23,7 @@ contains
do i = 1, size (mnem_list)
if (mnem_list(i) /= "") then
j = j + 1
- if (j > len (ml)/8) call abort ()
+ if (j > len (ml)/8) STOP 1
ml((j-1)*8+1:(j-1)*8+8) = mnem_list(i)
end if
end do
diff --git a/gcc/testsuite/gfortran.dg/bounds_check_19.f90 b/gcc/testsuite/gfortran.dg/bounds_check_19.f90
index 21651f1fa6b..1238803f616 100644
--- a/gcc/testsuite/gfortran.dg/bounds_check_19.f90
+++ b/gcc/testsuite/gfortran.dg/bounds_check_19.f90
@@ -13,12 +13,12 @@
a = b ! Implicit conversion
- if (lbound (a, 1) .ne. lbound(b, 1)) call abort
- if (ubound (a, 1) .ne. ubound(b, 1)) call abort
+ if (lbound (a, 1) .ne. lbound(b, 1)) STOP 1
+ if (ubound (a, 1) .ne. ubound(b, 1)) STOP 2
c = sin(real(b(9:11))/100_8) ! Elemental intrinsic
- if ((ubound(c, 1) - lbound(c, 1)) .ne. 2) call abort
- if (any (nint(asin(c)*100.0) .ne. b(9:11))) call abort
+ if ((ubound(c, 1) - lbound(c, 1)) .ne. 2) STOP 3
+ if (any (nint(asin(c)*100.0) .ne. b(9:11))) STOP 4
deallocate (a, b, c)
end
diff --git a/gcc/testsuite/gfortran.dg/bounds_check_8.f90 b/gcc/testsuite/gfortran.dg/bounds_check_8.f90
index 11be29bdab4..62f3c11ab04 100644
--- a/gcc/testsuite/gfortran.dg/bounds_check_8.f90
+++ b/gcc/testsuite/gfortran.dg/bounds_check_8.f90
@@ -19,13 +19,13 @@ program test
xyz(3)%x = 0
write(s,*) xyz(bar())
- if (trim(adjustl(s)) /= "11111") call abort
+ if (trim(adjustl(s)) /= "11111") STOP 1
a(1)%field = 0
a(2)%field = 0
calls = 0
- if (sum(a(foo(calls))%field) /= 0) call abort
- if (calls .ne. 1) call abort
+ if (sum(a(foo(calls))%field) /= 0) STOP 2
+ if (calls .ne. 1) STOP 3
contains
diff --git a/gcc/testsuite/gfortran.dg/bounds_check_9.f90 b/gcc/testsuite/gfortran.dg/bounds_check_9.f90
index c0abd2896ec..e98042dc2be 100644
--- a/gcc/testsuite/gfortran.dg/bounds_check_9.f90
+++ b/gcc/testsuite/gfortran.dg/bounds_check_9.f90
@@ -19,12 +19,12 @@ elemental subroutine set_optional(i,idef,iopt)
integer, intent(in), optional :: ivec(:)
integer :: ivec_(2)
call set_optional(ivec_,(/1,2/))
- if (any (ivec_ /= (/1, 2/))) call abort
+ if (any (ivec_ /= (/1, 2/))) STOP 1
call set_optional(ivec_,(/1,2/),ivec)
if (present (ivec)) then
- if (any (ivec_ /= ivec)) call abort
+ if (any (ivec_ /= ivec)) STOP 2
else
- if (any (ivec_ /= (/1, 2/))) call abort
+ if (any (ivec_ /= (/1, 2/))) STOP 3
end if
end subroutine sub
end module sub_mod
diff --git a/gcc/testsuite/gfortran.dg/bounds_check_fail_2.f90 b/gcc/testsuite/gfortran.dg/bounds_check_fail_2.f90
index bb2c247bf31..6ddd9df262a 100644
--- a/gcc/testsuite/gfortran.dg/bounds_check_fail_2.f90
+++ b/gcc/testsuite/gfortran.dg/bounds_check_fail_2.f90
@@ -20,12 +20,12 @@ contains
integer , intent(in), optional :: ivec(:)
integer :: ivec_(2)
call set_optional(ivec_,(/1,2/))
- if (any (ivec_ /= (/1,2/))) call abort
+ if (any (ivec_ /= (/1,2/))) STOP 1
call set_optional(ivec_,(/1,2/),ivec)
if (present (ivec)) then
- if (any (ivec_ /= ivec)) call abort
+ if (any (ivec_ /= ivec)) STOP 2
else
- if (any (ivec_ /= (/1,2/))) call abort
+ if (any (ivec_ /= (/1,2/))) STOP 3
end if
end subroutine sub
end module sub_mod
diff --git a/gcc/testsuite/gfortran.dg/bounds_check_fail_3.f90 b/gcc/testsuite/gfortran.dg/bounds_check_fail_3.f90
index ce4d0368d57..0c38a83b67e 100644
--- a/gcc/testsuite/gfortran.dg/bounds_check_fail_3.f90
+++ b/gcc/testsuite/gfortran.dg/bounds_check_fail_3.f90
@@ -6,7 +6,7 @@
m = -3
n = -2
x(7:1:m) = x(6:2:n)
- if (any(x /= (/ 2, 2, 3, 4, 5, 6, 6, 8, 9, 10 /))) call abort()
+ if (any(x /= (/ 2, 2, 3, 4, 5, 6, 6, 8, 9, 10 /))) STOP 1
x(8:1:m) = x(5:2:n)
end
! { dg-output "line 10 .* bound mismatch .* dimension 1 .* array \'x\' \\\(3/2\\\)" }
diff --git a/gcc/testsuite/gfortran.dg/bounds_check_fail_4.f90 b/gcc/testsuite/gfortran.dg/bounds_check_fail_4.f90
index 718d0058e49..cbe24d165f5 100644
--- a/gcc/testsuite/gfortran.dg/bounds_check_fail_4.f90
+++ b/gcc/testsuite/gfortran.dg/bounds_check_fail_4.f90
@@ -6,7 +6,7 @@
m = -3
n = -2
x(7:1:m) = x(1:3) + x(6:2:n)
- if (any(x /= (/ 5, 2, 3, 6, 5, 6, 7, 8, 9, 10 /))) call abort()
+ if (any(x /= (/ 5, 2, 3, 6, 5, 6, 7, 8, 9, 10 /))) STOP 1
x(8:1:m) = x(1:3) + x(5:2:n)
end
! { dg-output "line 10 .* bound mismatch .* dimension 1 .* array \'x\' \\\(2/3\\\)" }
diff --git a/gcc/testsuite/gfortran.dg/boz_1.f90 b/gcc/testsuite/gfortran.dg/boz_1.f90
index d3fa7c7acaf..56aab76e538 100644
--- a/gcc/testsuite/gfortran.dg/boz_1.f90
+++ b/gcc/testsuite/gfortran.dg/boz_1.f90
@@ -21,19 +21,19 @@ program boz
integer(4), parameter :: z4 = z'dead'
integer(8), parameter :: z8 = z'deadbeef'
- if (z1 /= 10_1) call abort
- if (z2 /= 171_2) call abort
- if (z4 /= 57005_4) call abort
- if (z8 /= 3735928559_8) call abort
-
- if (b1 /= 1_1) call abort
- if (b2 /= 21930_2) call abort
- if (b4 /= 1894838512_4) call abort
- if (b8 /= 8138269444283625712_8) call abort
-
- if (o1 /= 10_1) call abort
- if (o2 /= 2257_2) call abort
- if (o4 /= 9245173_4) call abort
- if (o8 /= 45954958542472_8) call abort
+ if (z1 /= 10_1) STOP 1
+ if (z2 /= 171_2) STOP 2
+ if (z4 /= 57005_4) STOP 3
+ if (z8 /= 3735928559_8) STOP 4
+
+ if (b1 /= 1_1) STOP 5
+ if (b2 /= 21930_2) STOP 6
+ if (b4 /= 1894838512_4) STOP 7
+ if (b8 /= 8138269444283625712_8) STOP 8
+
+ if (o1 /= 10_1) STOP 9
+ if (o2 /= 2257_2) STOP 10
+ if (o4 /= 9245173_4) STOP 11
+ if (o8 /= 45954958542472_8) STOP 12
end program boz
diff --git a/gcc/testsuite/gfortran.dg/boz_11.f90 b/gcc/testsuite/gfortran.dg/boz_11.f90
index 2bbf0221995..751dc230514 100644
--- a/gcc/testsuite/gfortran.dg/boz_11.f90
+++ b/gcc/testsuite/gfortran.dg/boz_11.f90
@@ -10,18 +10,18 @@ program test0
complex(kind=8), parameter :: zd = (0._8, 1._8) * rd
integer :: x = 0
- if (cmplx(b'01000000001010010101001111111101',x,4) /= r) call abort
- if (cmplx(x,b'01000000001010010101001111111101',4) /= z) call abort
- if (complex(b'01000000001010010101001111111101',0) /= r) call abort
- if (complex(0,b'01000000001010010101001111111101') /= z) call abort
+ if (cmplx(b'01000000001010010101001111111101',x,4) /= r) STOP 1
+ if (cmplx(x,b'01000000001010010101001111111101',4) /= z) STOP 2
+ if (complex(b'01000000001010010101001111111101',0) /= r) STOP 3
+ if (complex(0,b'01000000001010010101001111111101') /= z) STOP 4
!if (cmplx(b'00000000000000000000000000000000&
- ! &01000000001010010101001111111101',x,8) /= rd) call abort
+ ! &01000000001010010101001111111101',x,8) /= rd) STOP 5
!if (cmplx(x,b'00000000000000000000000000000000&
- ! &01000000001010010101001111111101',8) /= zd) call abort
+ ! &01000000001010010101001111111101',8) /= zd) STOP 6
!if (dcmplx(b'00000000000000000000000000000000&
- ! &01000000001010010101001111111101',x) /= rd) call abort
+ ! &01000000001010010101001111111101',x) /= rd) STOP 7
!if (dcmplx(x,b'00000000000000000000000000000000&
- ! &01000000001010010101001111111101') /= zd) call abort
+ ! &01000000001010010101001111111101') /= zd) STOP 8
end program test0
diff --git a/gcc/testsuite/gfortran.dg/boz_13.f90 b/gcc/testsuite/gfortran.dg/boz_13.f90
index a522f82ec87..fe31310e396 100644
--- a/gcc/testsuite/gfortran.dg/boz_13.f90
+++ b/gcc/testsuite/gfortran.dg/boz_13.f90
@@ -9,5 +9,5 @@ implicit none
&402953FD', 8)
if (real (z'00000000&
- &402953FD', 8) /= rd) call abort
+ &402953FD', 8) /= rd) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/boz_14.f90 b/gcc/testsuite/gfortran.dg/boz_14.f90
index 1e571780eee..58e27cd7f41 100644
--- a/gcc/testsuite/gfortran.dg/boz_14.f90
+++ b/gcc/testsuite/gfortran.dg/boz_14.f90
@@ -15,5 +15,5 @@
cmplx(b'00000000000000000000000000000000&
&01000000001010010101001111111101',0,8)
r = 0.
- if (z /= rd) call abort
+ if (z /= rd) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/boz_15.f90 b/gcc/testsuite/gfortran.dg/boz_15.f90
index f481f16e80e..1045e9ffc70 100644
--- a/gcc/testsuite/gfortran.dg/boz_15.f90
+++ b/gcc/testsuite/gfortran.dg/boz_15.f90
@@ -18,32 +18,32 @@ r1 = 2.0_xp
! Real B(OZ)
write(str,'(b128)') r1
read (str,'(b128)') r2
-if(r2 /= r1) call abort()
+if(r2 /= r1) STOP 1
! Real (B)O(Z)
r2 = 5.0_xp
write(str,'(o126)') r1
read (str,'(o126)') r2
-if(r2 /= r1) call abort()
+if(r2 /= r1) STOP 2
! Real (BO)Z
r2 = 5.0_xp
write(str,'(z126)') r1
read (str,'(z126)') r2
-if(r2 /= r1) call abort()
+if(r2 /= r1) STOP 3
z2 = cmplx(5.0_xp,7.0_xp)
z1 = cmplx(2.0_xp,3.0_xp)
! Complex B(OZ)
write(str,'(2b128)') z1
read (str,'(2b128)') z2
-if(z2 /= z1) call abort()
+if(z2 /= z1) STOP 4
! Complex (B)O(Z)
z2 = cmplx(5.0_xp,7.0_xp)
write(str,'(2o126)') z1
read (str,'(2o126)') z2
-if(z2 /= z1) call abort()
+if(z2 /= z1) STOP 5
! Complex (BO)Z
z2 = cmplx(5.0_xp,7.0_xp)
write(str,'(2z126)') z1
read (str,'(2z126)') z2
-if(z2 /= z1) call abort()
+if(z2 /= z1) STOP 6
end
diff --git a/gcc/testsuite/gfortran.dg/boz_3.f90 b/gcc/testsuite/gfortran.dg/boz_3.f90
index e8a93d129a9..2bfef007126 100644
--- a/gcc/testsuite/gfortran.dg/boz_3.f90
+++ b/gcc/testsuite/gfortran.dg/boz_3.f90
@@ -20,16 +20,16 @@ program boz
integer(2), parameter :: z2 = z'00ab'
integer(4), parameter :: z4 = z'0000dead'
- if (b1 /= 15_1) call abort
- if (b2 /= 28912_2) call abort
- if (b4 /= 1894838512_4) call abort
+ if (b1 /= 15_1) STOP 1
+ if (b2 /= 28912_2) STOP 2
+ if (b4 /= 1894838512_4) STOP 3
- if (o1 /= 10_1) call abort
- if (o2 /= 2257_2) call abort
- if (o4 /= 9245173_4) call abort
+ if (o1 /= 10_1) STOP 4
+ if (o2 /= 2257_2) STOP 5
+ if (o4 /= 9245173_4) STOP 6
- if (z1 /= 10_1) call abort
- if (z2 /= 171_2) call abort
- if (z4 /= 57005_4) call abort
+ if (z1 /= 10_1) STOP 7
+ if (z2 /= 171_2) STOP 8
+ if (z4 /= 57005_4) STOP 9
end program boz
diff --git a/gcc/testsuite/gfortran.dg/boz_6.f90 b/gcc/testsuite/gfortran.dg/boz_6.f90
index d7a287d5804..379a44f324e 100644
--- a/gcc/testsuite/gfortran.dg/boz_6.f90
+++ b/gcc/testsuite/gfortran.dg/boz_6.f90
@@ -8,8 +8,8 @@ program test
data io, jo /o'234', '234'o/
data iz, jz /z'abc', 'abc'z/
data ix, jx /x'abc', 'abc'x/
- if (ib /= jb) call abort
- if (io /= jo) call abort
- if (iz /= jz) call abort
- if (ix /= jx) call abort
+ if (ib /= jb) STOP 1
+ if (io /= jo) STOP 2
+ if (iz /= jz) STOP 3
+ if (ix /= jx) STOP 4
end program test
diff --git a/gcc/testsuite/gfortran.dg/boz_9.f90 b/gcc/testsuite/gfortran.dg/boz_9.f90
index ec728cc6517..17920edc39d 100644
--- a/gcc/testsuite/gfortran.dg/boz_9.f90
+++ b/gcc/testsuite/gfortran.dg/boz_9.f90
@@ -20,17 +20,17 @@ double precision :: d = dble(Z'3FD34413509F79FF')
complex :: z1 = cmplx(b'11000001010001101101110110000011', 3.049426e-10)
complex :: z2 = cmplx(4.160326e16, o'6503667306')
-if (r2c /= 13107.0) call abort()
-if (rc /= 2.732958e10) call abort()
-if (dc /= 0.30102999566398120d0) call abort()
-if (real(z1c) /= -1.242908e1 .or. aimag(z1c) /= 3.049426e-10) call abort()
-if (real(z2c) /= 4.160326e16 .or. aimag(z2c) /= 5.343285e-7) call abort()
-
-if (r2 /= 13107.0) call abort()
-if (r /= 2.732958e10) call abort()
-if (d /= 0.30102999566398120d0) call abort()
-if (real(z1) /= -1.242908e1 .or. aimag(z1) /= 3.049426e-10) call abort()
-if (real(z2) /= 4.160326e16 .or. aimag(z2) /= 5.343285e-7) call abort()
+if (r2c /= 13107.0) STOP 1
+if (rc /= 2.732958e10) STOP 2
+if (dc /= 0.30102999566398120d0) STOP 3
+if (real(z1c) /= -1.242908e1 .or. aimag(z1c) /= 3.049426e-10) STOP 4
+if (real(z2c) /= 4.160326e16 .or. aimag(z2c) /= 5.343285e-7) STOP 5
+
+if (r2 /= 13107.0) STOP 6
+if (r /= 2.732958e10) STOP 7
+if (d /= 0.30102999566398120d0) STOP 8
+if (real(z1) /= -1.242908e1 .or. aimag(z1) /= 3.049426e-10) STOP 9
+if (real(z2) /= 4.160326e16 .or. aimag(z2) /= 5.343285e-7) STOP 10
r2 = dble(int(z'3333'))
r = real(z'50CB9F09')
@@ -38,11 +38,11 @@ d = dble(Z'3FD34413509F79FF')
z1 = cmplx(b'11000001010001101101110110000011', 3.049426e-10)
z2 = cmplx(4.160326e16, o'6503667306')
-if (r2 /= 13107d0) call abort()
-if (r /= 2.732958e10) call abort()
-if (d /= 0.30102999566398120d0) call abort()
-if (real(z1) /= -1.242908e1 .or. aimag(z1) /= 3.049426e-10) call abort()
-if (real(z2) /= 4.160326e16 .or. aimag(z2) /= 5.343285e-7) call abort()
+if (r2 /= 13107d0) STOP 11
+if (r /= 2.732958e10) STOP 12
+if (d /= 0.30102999566398120d0) STOP 13
+if (real(z1) /= -1.242908e1 .or. aimag(z1) /= 3.049426e-10) STOP 14
+if (real(z2) /= 4.160326e16 .or. aimag(z2) /= 5.343285e-7) STOP 15
call test4()
call test8()
@@ -60,25 +60,25 @@ real :: r = real(z'50CB9F09', kind=4)
complex :: z1 = cmplx(b'11000001010001101101110110000011', 3.049426e-10, kind=4)
complex :: z2 = cmplx(4.160326e16, o'6503667306', kind=4)
-if (r2c /= 13107.0) call abort()
-if (rc /= 2.732958e10) call abort()
-if (real(z1) /= -1.242908e1 .or. aimag(z1) /= 3.049426e-10) call abort()
-if (real(z2) /= 4.160326e16 .or. aimag(z2) /= 5.343285e-7) call abort()
+if (r2c /= 13107.0) STOP 16
+if (rc /= 2.732958e10) STOP 17
+if (real(z1) /= -1.242908e1 .or. aimag(z1) /= 3.049426e-10) STOP 18
+if (real(z2) /= 4.160326e16 .or. aimag(z2) /= 5.343285e-7) STOP 19
-if (r2 /= 13107.0) call abort()
-if (r /= 2.732958e10) call abort()
-if (real(z1) /= -1.242908e1 .or. aimag(z1) /= 3.049426e-10) call abort()
-if (real(z2) /= 4.160326e16 .or. aimag(z2) /= 5.343285e-7) call abort()
+if (r2 /= 13107.0) STOP 20
+if (r /= 2.732958e10) STOP 21
+if (real(z1) /= -1.242908e1 .or. aimag(z1) /= 3.049426e-10) STOP 22
+if (real(z2) /= 4.160326e16 .or. aimag(z2) /= 5.343285e-7) STOP 23
r2 = real(int(z'3333'), kind=4)
r = real(z'50CB9F09', kind=4)
z1 = cmplx(b'11000001010001101101110110000011', 3.049426e-10, kind=4)
z2 = cmplx(4.160326e16, o'6503667306', kind=4)
-if (r2 /= 13107.0) call abort()
-if (r /= 2.732958e10) call abort()
-if (real(z1) /= -1.242908e1 .or. aimag(z1) /= 3.049426e-10) call abort()
-if (real(z2) /= 4.160326e16 .or. aimag(z2) /= 5.343285e-7) call abort()
+if (r2 /= 13107.0) STOP 24
+if (r /= 2.732958e10) STOP 25
+if (real(z1) /= -1.242908e1 .or. aimag(z1) /= 3.049426e-10) STOP 26
+if (real(z2) /= 4.160326e16 .or. aimag(z2) /= 5.343285e-7) STOP 27
end subroutine test4
@@ -93,25 +93,25 @@ real(8) :: r = real(z'AAAAAFFFFFFF3333', kind=8)
complex(8) :: z1 = cmplx(b'11111011111111111111111111111111111111111111111111111111110101',-4.0, kind=8)
complex(8) :: z2 = cmplx(5.0, o'442222222222233301245', kind=8)
-if (r2c /= 1099511575347.0d0) call abort()
-if (rc /= -3.72356884822177915d-103) call abort()
-if (real(z1c) /= 3.05175781249999627d-5 .or. aimag(z1c) /= -4.0) call abort()
-if (real(z2c) /= 5.0 .or. aimag(z2c) /= 3.98227593015308981d41) call abort()
+if (r2c /= 1099511575347.0d0) STOP 28
+if (rc /= -3.72356884822177915d-103) STOP 29
+if (real(z1c) /= 3.05175781249999627d-5 .or. aimag(z1c) /= -4.0) STOP 30
+if (real(z2c) /= 5.0 .or. aimag(z2c) /= 3.98227593015308981d41) STOP 31
-if (r2 /= 1099511575347.0d0) call abort()
-if (r /= -3.72356884822177915d-103) call abort()
-if (real(z1) /= 3.05175781249999627d-5 .or. aimag(z1) /= -4.0) call abort()
-if (real(z2) /= 5.0 .or. aimag(z2) /= 3.98227593015308981d41) call abort()
+if (r2 /= 1099511575347.0d0) STOP 32
+if (r /= -3.72356884822177915d-103) STOP 33
+if (real(z1) /= 3.05175781249999627d-5 .or. aimag(z1) /= -4.0) STOP 34
+if (real(z2) /= 5.0 .or. aimag(z2) /= 3.98227593015308981d41) STOP 35
r2 = real(int(z'FFFFFF3333',kind=8),kind=8)
r = real(z'AAAAAFFFFFFF3333', kind=8)
z1 = cmplx(b'11111011111111111111111111111111111111111111111111111111110101',-4.0, kind=8)
z2 = cmplx(5.0, o'442222222222233301245', kind=8)
-if (r2 /= 1099511575347.0d0) call abort()
-if (r /= -3.72356884822177915d-103) call abort()
-if (real(z1) /= 3.05175781249999627d-5 .or. aimag(z1) /= -4.0) call abort()
-if (real(z2) /= 5.0 .or. aimag(z2) /= 3.98227593015308981d41) call abort()
+if (r2 /= 1099511575347.0d0) STOP 36
+if (r /= -3.72356884822177915d-103) STOP 37
+if (real(z1) /= 3.05175781249999627d-5 .or. aimag(z1) /= -4.0) STOP 38
+if (real(z2) /= 5.0 .or. aimag(z2) /= 3.98227593015308981d41) STOP 39
end subroutine test8
diff --git a/gcc/testsuite/gfortran.dg/byte_1.f90 b/gcc/testsuite/gfortran.dg/byte_1.f90
index 6cac4216f85..b87034c0a67 100644
--- a/gcc/testsuite/gfortran.dg/byte_1.f90
+++ b/gcc/testsuite/gfortran.dg/byte_1.f90
@@ -1,5 +1,5 @@
! { dg-do compile }
-! { dg-options "-fall-intrinsics -std=f95" }
+! { dg-options " -std=f95" }
program testbyte
integer(1) :: ii = 7
call foo(ii)
@@ -17,6 +17,6 @@ subroutine bar(ii,b)
byte b ! { dg-error "BYTE type" }
if (b.ne.ii) then
! print *,"Failed"
- call abort
+ STOP 1
end if
end subroutine bar
diff --git a/gcc/testsuite/gfortran.dg/byte_2.f90 b/gcc/testsuite/gfortran.dg/byte_2.f90
index a4100555776..8d75eb431b6 100644
--- a/gcc/testsuite/gfortran.dg/byte_2.f90
+++ b/gcc/testsuite/gfortran.dg/byte_2.f90
@@ -17,6 +17,6 @@ subroutine bar(ii,b)
byte b
if (b.ne.ii) then
! print *,"Failed"
- call abort
+ STOP 1
end if
end subroutine bar
diff --git a/gcc/testsuite/gfortran.dg/c_assoc.f90 b/gcc/testsuite/gfortran.dg/c_assoc.f90
index 9b2af24f984..89f06915408 100644
--- a/gcc/testsuite/gfortran.dg/c_assoc.f90
+++ b/gcc/testsuite/gfortran.dg/c_assoc.f90
@@ -57,11 +57,11 @@ contains
type(c_ptr), value :: my_c_ptr_2
if(.not. c_associated(my_c_ptr_1)) then
- call abort()
+ STOP 1
else if(.not. c_associated(my_c_ptr_2)) then
- call abort()
+ STOP 2
else if(.not. c_associated(my_c_ptr_1, my_c_ptr_2)) then
- call abort()
+ STOP 3
endif
end subroutine verify_assoc
diff --git a/gcc/testsuite/gfortran.dg/c_assoc_2.f03 b/gcc/testsuite/gfortran.dg/c_assoc_2.f03
index fe6e5a9439a..1a12926bca1 100644
--- a/gcc/testsuite/gfortran.dg/c_assoc_2.f03
+++ b/gcc/testsuite/gfortran.dg/c_assoc_2.f03
@@ -9,27 +9,27 @@ contains
integer :: my_integer
if(.not. c_associated(my_c_ptr)) then
- call abort()
+ STOP 1
end if
if(.not. c_associated(my_c_ptr, my_c_ptr)) then
- call abort()
+ STOP 2
end if
if(.not. c_associated(my_c_ptr, my_c_ptr, my_c_ptr)) then ! { dg-error "Too many arguments in call" }
- call abort()
+ STOP 3
end if
if(.not. c_associated()) then ! { dg-error "Missing actual argument" }
- call abort()
+ STOP 4
end if
if(.not. c_associated(my_c_ptr_2)) then
- call abort()
+ STOP 5
end if
if(.not. c_associated(my_integer)) then ! { dg-error "shall have the type TYPE.C_PTR. or TYPE.C_FUNPTR." }
- call abort()
+ STOP 6
end if
end subroutine sub0
diff --git a/gcc/testsuite/gfortran.dg/c_assoc_3.f90 b/gcc/testsuite/gfortran.dg/c_assoc_3.f90
index 0aceb42ec5b..024c2d8d5d5 100644
--- a/gcc/testsuite/gfortran.dg/c_assoc_3.f90
+++ b/gcc/testsuite/gfortran.dg/c_assoc_3.f90
@@ -9,5 +9,5 @@ PROGRAM c_assoc
type(c_ptr) :: x
x = c_null_ptr
print *, C_ASSOCIATED(x) ! <<< was ICEing here
- if (C_ASSOCIATED(x)) call abort ()
+ if (C_ASSOCIATED(x)) STOP 1
END PROGRAM c_assoc
diff --git a/gcc/testsuite/gfortran.dg/c_by_val_1.f b/gcc/testsuite/gfortran.dg/c_by_val_1.f
index 3c5c3d7def7..3db1fa1759f 100644
--- a/gcc/testsuite/gfortran.dg/c_by_val_1.f
+++ b/gcc/testsuite/gfortran.dg/c_by_val_1.f
@@ -16,37 +16,37 @@ C { dg-options "-ff2c -w -O0" }
b = 0.0
c = a
call f_to_f (b, %VAL (a), %REF (c), %LOC (c))
- if ((2.0 * a).ne.b) call abort ()
+ if ((2.0 * a).ne.b) STOP 1
a8 = 43.0
b8 = 1.0
c8 = a8
call f_to_f8 (b8, %VAL (a8), %REF (c8), %LOC (c8))
- if ((2.0 * a8).ne.b8) call abort ()
+ if ((2.0 * a8).ne.b8) STOP 2
i = 99
j = 0
k = i
call i_to_i (j, %VAL (i), %REF (k), %LOC (k))
- if ((3 * i).ne.j) call abort ()
+ if ((3 * i).ne.j) STOP 3
i8 = 199
j8 = 10
k8 = i8
call i_to_i8 (j8, %VAL (i8), %REF (k8), %LOC (k8))
- if ((3 * i8).ne.j8) call abort ()
+ if ((3 * i8).ne.j8) STOP 4
u = (-1.0, 2.0)
v = (1.0, -2.0)
w = u
call c_to_c (v, %VAL (u), %REF (w), %LOC (w))
- if ((4.0 * u).ne.v) call abort ()
+ if ((4.0 * u).ne.v) STOP 5
u8 = (-1.0, 2.0)
v8 = (1.0, -2.0)
w8 = u8
call c_to_c8 (v8, %VAL (u8), %REF (w8), %LOC (w8))
- if ((4.0 * u8).ne.v8) call abort ()
+ if ((4.0 * u8).ne.v8) STOP 6
stop
end
diff --git a/gcc/testsuite/gfortran.dg/c_by_val_5.f90 b/gcc/testsuite/gfortran.dg/c_by_val_5.f90
index 3a8bc3bf750..bbef6bda892 100644
--- a/gcc/testsuite/gfortran.dg/c_by_val_5.f90
+++ b/gcc/testsuite/gfortran.dg/c_by_val_5.f90
@@ -9,9 +9,9 @@
subroutine bmp_write(nx)
implicit none
integer, value :: nx
- if(nx /= 10) call abort()
+ if(nx /= 10) STOP 1
nx = 11
- if(nx /= 11) call abort()
+ if(nx /= 11) STOP 2
end subroutine bmp_write
module x
@@ -29,9 +29,9 @@ module x
contains
SUBROUTINE Grid2BMP(NX)
INTEGER, INTENT(IN) :: NX
- if(nx /= 10) call abort()
+ if(nx /= 10) STOP 3
call bmp_write(%val(nx))
- if(nx /= 10) call abort()
+ if(nx /= 10) STOP 4
END SUBROUTINE Grid2BMP
END module x
@@ -46,15 +46,15 @@ END module x
! implicit none
! integer :: n
! n = 5
-! if(n /= 5) call abort()
+! if(n /= 5) STOP 5
! call test2(%VAL(n))
-! if(n /= 5) call abort()
+! if(n /= 5) STOP 6
! contains
! subroutine test2(a)
! integer, value :: a
-! if(a /= 5) call abort()
+! if(a /= 5) STOP 7
! a = 2
-! if(a /= 2) call abort()
+! if(a /= 2) STOP 8
! end subroutine test2
!end subroutine test
diff --git a/gcc/testsuite/gfortran.dg/c_char_tests.f03 b/gcc/testsuite/gfortran.dg/c_char_tests.f03
index cbdfd9f2a9a..adace7f343c 100644
--- a/gcc/testsuite/gfortran.dg/c_char_tests.f03
+++ b/gcc/testsuite/gfortran.dg/c_char_tests.f03
@@ -10,8 +10,8 @@ contains
subroutine param_test(my_char, my_char_2) bind(c)
character(c_char), value :: my_char
character(c_char), value :: my_char_2
- if(my_char /= c_char_'y') call abort()
- if(my_char_2 /= c_char_'z') call abort()
+ if(my_char /= c_char_'y') STOP 1
+ if(my_char_2 /= c_char_'z') STOP 2
call sub1(my_char)
end subroutine param_test
@@ -22,6 +22,6 @@ contains
subroutine sub1(my_char_ref) bind(c)
character(c_char) :: my_char_ref
- if(my_char_ref /= c_char_'y') call abort()
+ if(my_char_ref /= c_char_'y') STOP 3
end subroutine sub1
end module c_char_tests
diff --git a/gcc/testsuite/gfortran.dg/c_char_tests_2.f03 b/gcc/testsuite/gfortran.dg/c_char_tests_2.f03
index 4e5edb085d1..02211ba5b44 100644
--- a/gcc/testsuite/gfortran.dg/c_char_tests_2.f03
+++ b/gcc/testsuite/gfortran.dg/c_char_tests_2.f03
@@ -5,13 +5,13 @@
subroutine bar(a)
use, intrinsic :: iso_c_binding, only: c_char
character(c_char), value :: a
- if(a /= c_char_'a') call abort()
+ if(a /= c_char_'a') STOP 1
end subroutine bar
subroutine bar2(a)
use, intrinsic :: iso_c_binding, only: c_char
character(c_char) :: a
- if(a /= c_char_'a') call abort()
+ if(a /= c_char_'a') STOP 2
end subroutine bar2
use iso_c_binding
diff --git a/gcc/testsuite/gfortran.dg/c_f_pointer_complex.f03 b/gcc/testsuite/gfortran.dg/c_f_pointer_complex.f03
index b68eadbf9ab..fc8741a5e04 100644
--- a/gcc/testsuite/gfortran.dg/c_f_pointer_complex.f03
+++ b/gcc/testsuite/gfortran.dg/c_f_pointer_complex.f03
@@ -21,10 +21,10 @@ contains
call c_f_pointer(my_c_double_complex, my_f03_double_complex)
call c_f_pointer(my_c_long_double_complex, my_f03_long_double_complex)
- if(my_f03_float_complex /= (1.0, 0.0)) call abort ()
- if(my_f03_double_complex /= (2.0d0, 0.0d0)) call abort ()
+ if(my_f03_float_complex /= (1.0, 0.0)) STOP 1
+ if(my_f03_double_complex /= (2.0d0, 0.0d0)) STOP 2
if(my_f03_long_double_complex /= (3.0_c_long_double, &
- 0.0_c_long_double)) call abort ()
+ 0.0_c_long_double)) STOP 3
end subroutine test_complex_scalars
subroutine test_complex_arrays(float_complex_array, double_complex_array, &
@@ -49,11 +49,11 @@ contains
do i = 1, num_elems
if(f03_float_complex_array(i) &
- /= (i*(1.0, 0.0))) call abort ()
+ /= (i*(1.0, 0.0))) STOP 4
if(f03_double_complex_array(i) &
- /= (i*(1.0d0, 0.0d0))) call abort ()
+ /= (i*(1.0d0, 0.0d0))) STOP 5
if(f03_long_double_complex_array(i) &
- /= (i*(1.0_c_long_double, 0.0_c_long_double))) call abort ()
+ /= (i*(1.0_c_long_double, 0.0_c_long_double))) STOP 6
end do
end subroutine test_complex_arrays
end module c_f_pointer_complex
diff --git a/gcc/testsuite/gfortran.dg/c_f_pointer_logical.f03 b/gcc/testsuite/gfortran.dg/c_f_pointer_logical.f03
index 5558697c1f5..1397505c2c5 100644
--- a/gcc/testsuite/gfortran.dg/c_f_pointer_logical.f03
+++ b/gcc/testsuite/gfortran.dg/c_f_pointer_logical.f03
@@ -9,7 +9,7 @@ contains
logical(c_bool), pointer :: f03_logical_ptr
call c_f_pointer(c_logical_ptr, f03_logical_ptr)
- if(f03_logical_ptr .neqv. .true.) call abort ()
+ if(f03_logical_ptr .neqv. .true.) STOP 1
end subroutine test_scalar
subroutine test_array(c_logical_array, num_elems) bind(c)
@@ -22,12 +22,12 @@ contains
! Odd numbered locations are true (even numbered offsets in C)
do i = 1, num_elems, 2
- if(f03_logical_array(i) .neqv. .true.) call abort ()
+ if(f03_logical_array(i) .neqv. .true.) STOP 2
end do
! Even numbered locations are false.
do i = 2, num_elems, 2
- if(f03_logical_array(i) .neqv. .false.) call abort ()
+ if(f03_logical_array(i) .neqv. .false.) STOP 3
end do
end subroutine test_array
end module c_f_pointer_logical
diff --git a/gcc/testsuite/gfortran.dg/c_f_pointer_shape_tests_2.f03 b/gcc/testsuite/gfortran.dg/c_f_pointer_shape_tests_2.f03
index 426279b5cfb..5ba1cb640e1 100644
--- a/gcc/testsuite/gfortran.dg/c_f_pointer_shape_tests_2.f03
+++ b/gcc/testsuite/gfortran.dg/c_f_pointer_shape_tests_2.f03
@@ -19,7 +19,7 @@ contains
shape(1) = num_elems
call c_f_pointer(cPtr, myArrayPtr, shape)
do i = 1, num_elems
- if(myArrayPtr(i) /= (i-1)) call abort ()
+ if(myArrayPtr(i) /= (i-1)) STOP 1
end do
end subroutine test_long_long_1d
@@ -37,7 +37,7 @@ contains
call c_f_pointer(cPtr, myArrayPtr, shape)
do j = 1, num_cols
do i = 1, num_rows
- if(myArrayPtr(i,j) /= ((j-1)*num_rows)+(i-1)) call abort ()
+ if(myArrayPtr(i,j) /= ((j-1)*num_rows)+(i-1)) STOP 2
end do
end do
end subroutine test_long_long_2d
@@ -53,7 +53,7 @@ contains
shape(1) = num_elems
call c_f_pointer(cPtr, myArrayPtr, shape)
do i = 1, num_elems
- if(myArrayPtr(i) /= (i-1)) call abort ()
+ if(myArrayPtr(i) /= (i-1)) STOP 3
end do
end subroutine test_long_1d
@@ -68,7 +68,7 @@ contains
shape(1) = num_elems
call c_f_pointer(cPtr, myArrayPtr, shape)
do i = 1, num_elems
- if(myArrayPtr(i) /= (i-1)) call abort ()
+ if(myArrayPtr(i) /= (i-1)) STOP 4
end do
end subroutine test_int_1d
@@ -83,7 +83,7 @@ contains
shape(1) = num_elems
call c_f_pointer(cPtr, myArrayPtr, shape)
do i = 1, num_elems
- if(myArrayPtr(i) /= (i-1)) call abort ()
+ if(myArrayPtr(i) /= (i-1)) STOP 5
end do
end subroutine test_short_1d
@@ -99,14 +99,14 @@ contains
shape1(1) = num_elems
call c_f_pointer(cPtr, myArrayPtr, shape1)
do i = 1, num_elems
- if(myArrayPtr(i) /= (i-1)) call abort ()
+ if(myArrayPtr(i) /= (i-1)) STOP 6
end do
nullify(myArrayPtr)
shape2(1) = num_elems
call c_f_pointer(cPtr, myArrayPtr, shape2)
do i = 1, num_elems
- if(myArrayPtr(i) /= (i-1)) call abort ()
+ if(myArrayPtr(i) /= (i-1)) STOP 7
end do
end subroutine test_mixed
end module c_f_pointer_shape_tests_2
diff --git a/gcc/testsuite/gfortran.dg/c_f_pointer_shape_tests_4.f03 b/gcc/testsuite/gfortran.dg/c_f_pointer_shape_tests_4.f03
index b3caff0a5a9..8ee79a3b7ea 100644
--- a/gcc/testsuite/gfortran.dg/c_f_pointer_shape_tests_4.f03
+++ b/gcc/testsuite/gfortran.dg/c_f_pointer_shape_tests_4.f03
@@ -19,7 +19,7 @@ contains
shape(1) = num_elems
call c_f_pointer(cPtr, myArrayPtr, shape)
do i = 1, num_elems
- if(myArrayPtr(i) /= (i-1)) call abort ()
+ if(myArrayPtr(i) /= (i-1)) STOP 1
end do
end subroutine test_long_long_1d
@@ -38,7 +38,7 @@ contains
call c_f_pointer(cPtr, myArrayPtr, shape(1:3:2))
do j = 1, num_cols
do i = 1, num_rows
- if(myArrayPtr(i,j) /= ((j-1)*num_rows)+(i-1)) call abort ()
+ if(myArrayPtr(i,j) /= ((j-1)*num_rows)+(i-1)) STOP 2
end do
end do
end subroutine test_long_long_2d
@@ -54,7 +54,7 @@ contains
shape(1) = num_elems
call c_f_pointer(cPtr, myArrayPtr, shape)
do i = 1, num_elems
- if(myArrayPtr(i) /= (i-1)) call abort ()
+ if(myArrayPtr(i) /= (i-1)) STOP 3
end do
end subroutine test_long_1d
@@ -69,7 +69,7 @@ contains
shape(1) = num_elems
call c_f_pointer(cPtr, myArrayPtr, shape)
do i = 1, num_elems
- if(myArrayPtr(i) /= (i-1)) call abort ()
+ if(myArrayPtr(i) /= (i-1)) STOP 4
end do
end subroutine test_int_1d
@@ -84,7 +84,7 @@ contains
shape(1) = num_elems
call c_f_pointer(cPtr, myArrayPtr, shape)
do i = 1, num_elems
- if(myArrayPtr(i) /= (i-1)) call abort ()
+ if(myArrayPtr(i) /= (i-1)) STOP 5
end do
end subroutine test_short_1d
@@ -100,14 +100,14 @@ contains
shape1(1) = num_elems
call c_f_pointer(cPtr, myArrayPtr, shape1)
do i = 1, num_elems
- if(myArrayPtr(i) /= (i-1)) call abort ()
+ if(myArrayPtr(i) /= (i-1)) STOP 6
end do
nullify(myArrayPtr)
shape2(1) = num_elems
call c_f_pointer(cPtr, myArrayPtr, shape2)
do i = 1, num_elems
- if(myArrayPtr(i) /= (i-1)) call abort ()
+ if(myArrayPtr(i) /= (i-1)) STOP 7
end do
end subroutine test_mixed
end module c_f_pointer_shape_tests_4
diff --git a/gcc/testsuite/gfortran.dg/c_f_pointer_shape_tests_5.f90 b/gcc/testsuite/gfortran.dg/c_f_pointer_shape_tests_5.f90
index f3e17892bf9..bf9fad20665 100644
--- a/gcc/testsuite/gfortran.dg/c_f_pointer_shape_tests_5.f90
+++ b/gcc/testsuite/gfortran.dg/c_f_pointer_shape_tests_5.f90
@@ -14,14 +14,14 @@ x = c_loc(array)
myshape = [1,2,3,4,1]
call c_f_pointer(x, ptr, shape=myshape(1:4:2))
-if (any (lbound(ptr) /= [ 1, 1])) call abort ()
-if (any (ubound(ptr) /= [ 1, 3])) call abort ()
-if (any (shape(ptr) /= [ 1, 3])) call abort ()
-if (any (ptr(1,:) /= array)) call abort()
+if (any (lbound(ptr) /= [ 1, 1])) STOP 1
+if (any (ubound(ptr) /= [ 1, 3])) STOP 2
+if (any (shape(ptr) /= [ 1, 3])) STOP 3
+if (any (ptr(1,:) /= array)) STOP 4
call c_f_pointer(x, ptr2, shape=myshape([1,3,1]))
-if (any (lbound(ptr2) /= [ 1, 1, 1])) call abort ()
-if (any (ubound(ptr2) /= [ 1, 3, 1])) call abort ()
-if (any (shape(ptr2) /= [ 1, 3, 1])) call abort ()
-if (any (ptr2(1,:,1) /= array)) call abort()
+if (any (lbound(ptr2) /= [ 1, 1, 1])) STOP 5
+if (any (ubound(ptr2) /= [ 1, 3, 1])) STOP 6
+if (any (shape(ptr2) /= [ 1, 3, 1])) STOP 7
+if (any (ptr2(1,:,1) /= array)) STOP 8
end
diff --git a/gcc/testsuite/gfortran.dg/c_f_pointer_tests.f90 b/gcc/testsuite/gfortran.dg/c_f_pointer_tests.f90
index 1e4dbc0201f..18c3525f3cd 100644
--- a/gcc/testsuite/gfortran.dg/c_f_pointer_tests.f90
+++ b/gcc/testsuite/gfortran.dg/c_f_pointer_tests.f90
@@ -38,16 +38,16 @@ module c_f_pointer_tests
call c_f_pointer(myCDerived, myF90Type)
! make sure numbers are ok. initialized in c_f_tests_driver.c
if(myF90Type%cInt .ne. 1) then
- call abort()
+ STOP 1
endif
if(myF90Type%cDouble .ne. 2.0d0) then
- call abort()
+ STOP 2
endif
if(myF90Type%cFloat .ne. 3.0) then
- call abort()
+ STOP 3
endif
if(myF90Type%cShort .ne. 4) then
- call abort()
+ STOP 4
endif
shapeArray(1) = arrayLen
@@ -62,7 +62,7 @@ module c_f_pointer_tests
(derivedArray2D(dim1, dim2)%cDouble .ne. 4.0d0) .or. &
(derivedArray2D(dim1, dim2)%cFloat .ne. 4.0) .or. &
(derivedArray2D(dim1, dim2)%cShort .ne. 4)) then
- call abort()
+ STOP 5
endif
end subroutine testDerivedPtrs
end module c_f_pointer_tests
diff --git a/gcc/testsuite/gfortran.dg/c_f_pointer_tests_4.f90 b/gcc/testsuite/gfortran.dg/c_f_pointer_tests_4.f90
index 4f5338d605a..d70b91dc29e 100644
--- a/gcc/testsuite/gfortran.dg/c_f_pointer_tests_4.f90
+++ b/gcc/testsuite/gfortran.dg/c_f_pointer_tests_4.f90
@@ -10,6 +10,6 @@ contains
type(c_ptr), intent(in) :: cptr
integer, dimension(:,:,:), pointer :: table_tmp
call c_f_pointer (cptr, table_tmp, (/2,1,2/))
- if (any(table_tmp /= table)) call abort
+ if (any(table_tmp /= table)) STOP 1
end subroutine set_table
end program main
diff --git a/gcc/testsuite/gfortran.dg/c_kind_int128_test2.f03 b/gcc/testsuite/gfortran.dg/c_kind_int128_test2.f03
index 4fe2dac2913..a66c8142244 100644
--- a/gcc/testsuite/gfortran.dg/c_kind_int128_test2.f03
+++ b/gcc/testsuite/gfortran.dg/c_kind_int128_test2.f03
@@ -10,7 +10,7 @@ program c_kind_int128
integer(c_int_least128_t) :: b
! integer(c_int_fast128_t) :: c
- if (sizeof (a) /= 16) call abort
- if (sizeof (b) /= 16) call abort
-! if (sizeof (c) /= 16) call abort
+ if (sizeof (a) /= 16) STOP 1
+ if (sizeof (b) /= 16) STOP 2
+! if (sizeof (c) /= 16) STOP 3
end program c_kind_int128
diff --git a/gcc/testsuite/gfortran.dg/c_kind_params.f90 b/gcc/testsuite/gfortran.dg/c_kind_params.f90
index c595a3bbcf0..622ab97b0f3 100644
--- a/gcc/testsuite/gfortran.dg/c_kind_params.f90
+++ b/gcc/testsuite/gfortran.dg/c_kind_params.f90
@@ -41,36 +41,36 @@ contains
character(c_char), value :: my_char
logical(c_bool), value :: my_bool
- if(my_short /= 1_c_short) call abort()
- if(my_int /= 2_c_int) call abort()
- if(my_long /= 3_c_long) call abort()
- if(my_long_long /= 4_c_long_long) call abort()
+ if(my_short /= 1_c_short) STOP 1
+ if(my_int /= 2_c_int) STOP 2
+ if(my_long /= 3_c_long) STOP 3
+ if(my_long_long /= 4_c_long_long) STOP 4
- if(my_int8_t /= 1_c_int8_t) call abort()
- if(my_int_least8_t /= 2_c_int_least8_t ) call abort()
- if(my_int_fast8_t /= 3_c_int_fast8_t ) call abort()
+ if(my_int8_t /= 1_c_int8_t) STOP 5
+ if(my_int_least8_t /= 2_c_int_least8_t ) STOP 6
+ if(my_int_fast8_t /= 3_c_int_fast8_t ) STOP 7
- if(my_int16_t /= 1_c_int16_t) call abort()
- if(my_int_least16_t /= 2_c_int_least16_t) call abort()
- if(my_int_fast16_t /= 3_c_int_fast16_t ) call abort()
+ if(my_int16_t /= 1_c_int16_t) STOP 8
+ if(my_int_least16_t /= 2_c_int_least16_t) STOP 9
+ if(my_int_fast16_t /= 3_c_int_fast16_t ) STOP 10
- if(my_int32_t /= 1_c_int32_t) call abort()
- if(my_int_least32_t /= 2_c_int_least32_t) call abort()
- if(my_int_fast32_t /= 3_c_int_fast32_t ) call abort()
+ if(my_int32_t /= 1_c_int32_t) STOP 11
+ if(my_int_least32_t /= 2_c_int_least32_t) STOP 12
+ if(my_int_fast32_t /= 3_c_int_fast32_t ) STOP 13
- if(my_int64_t /= 1_c_int64_t) call abort()
- if(my_int_least64_t /= 2_c_int_least64_t) call abort()
- if(my_int_fast64_t /= 3_c_int_fast64_t ) call abort()
+ if(my_int64_t /= 1_c_int64_t) STOP 14
+ if(my_int_least64_t /= 2_c_int_least64_t) STOP 15
+ if(my_int_fast64_t /= 3_c_int_fast64_t ) STOP 16
- if(my_intmax_t /= 1_c_intmax_t) call abort()
- if(my_intptr_t /= 0_c_intptr_t) call abort()
+ if(my_intmax_t /= 1_c_intmax_t) STOP 17
+ if(my_intptr_t /= 0_c_intptr_t) STOP 18
- if(my_float /= 1.0_c_float) call abort()
- if(my_double /= 2.0_c_double) call abort()
- if(my_long_double /= 3.0_c_long_double) call abort()
+ if(my_float /= 1.0_c_float) STOP 19
+ if(my_double /= 2.0_c_double) STOP 20
+ if(my_long_double /= 3.0_c_long_double) STOP 21
- if(my_char /= c_char_'y') call abort()
- if(my_bool .neqv. .true._c_bool) call abort()
+ if(my_char /= c_char_'y') STOP 22
+ if(my_bool .neqv. .true._c_bool) STOP 23
end subroutine param_test
end module c_kind_params
diff --git a/gcc/testsuite/gfortran.dg/c_loc_test_20.f90 b/gcc/testsuite/gfortran.dg/c_loc_test_20.f90
index 4ff0ca1bac0..8e3dd8d6675 100644
--- a/gcc/testsuite/gfortran.dg/c_loc_test_20.f90
+++ b/gcc/testsuite/gfortran.dg/c_loc_test_20.f90
@@ -25,10 +25,10 @@ program testcloc
cptr = c_loc (obj1%array)
call c_f_pointer (cptr, array, shape=[100])
- if (any (array /= [(i, i=1,100)])) call abort ()
+ if (any (array /= [(i, i=1,100)])) STOP 1
cptr = c_loc (obj1%array2)
call c_f_pointer (cptr, array, shape=[100])
- if (any (array /= [(i, i=1,100)])) call abort ()
+ if (any (array /= [(i, i=1,100)])) STOP 2
end program testcloc
diff --git a/gcc/testsuite/gfortran.dg/c_loc_tests_2.f03 b/gcc/testsuite/gfortran.dg/c_loc_tests_2.f03
index b8e2436b679..8a2911e3d9f 100644
--- a/gcc/testsuite/gfortran.dg/c_loc_tests_2.f03
+++ b/gcc/testsuite/gfortran.dg/c_loc_tests_2.f03
@@ -36,10 +36,10 @@ contains
my_c_ptr_1 = c_loc(xtar)
my_c_ptr_2 = c_loc(xptr)
if(test_scalar_address(my_c_ptr_1) .ne. 1) then
- call abort()
+ STOP 1
end if
if(test_scalar_address(my_c_ptr_2) .ne. 1) then
- call abort()
+ STOP 2
end if
end subroutine test0
@@ -51,7 +51,7 @@ contains
int_array_tar = 100
my_c_ptr_1 = c_loc(int_array_tar)
if(test_array_address(my_c_ptr_1, 100) .ne. 1) then
- call abort()
+ STOP 3
end if
end subroutine test1
@@ -71,10 +71,10 @@ contains
my_c_ptr_1 = c_loc(type_tar)
my_c_ptr_2 = c_loc(type_ptr)
if(test_type_address(my_c_ptr_1) .ne. 1) then
- call abort()
+ STOP 4
end if
if(test_type_address(my_c_ptr_2) .ne. 1) then
- call abort()
+ STOP 5
end if
end subroutine test2
end module c_loc_tests_2
diff --git a/gcc/testsuite/gfortran.dg/c_ptr_tests_14.f90 b/gcc/testsuite/gfortran.dg/c_ptr_tests_14.f90
index 999a3efd0bc..40dd2b84b78 100644
--- a/gcc/testsuite/gfortran.dg/c_ptr_tests_14.f90
+++ b/gcc/testsuite/gfortran.dg/c_ptr_tests_14.f90
@@ -29,14 +29,14 @@ program test
integer, target :: tgt
call sub(file, noreinit)
- if(c_associated(file%gsl_file)) call abort()
- if(c_associated(file%gsl_func)) call abort()
+ if(c_associated(file%gsl_file)) STOP 1
+ if(c_associated(file%gsl_func)) STOP 2
file%gsl_file = c_loc(tgt)
file%gsl_func = c_funloc(proc)
call sub(file, noreinit)
- if(c_associated(file%gsl_file)) call abort()
- if(c_associated(file%gsl_func)) call abort()
+ if(c_associated(file%gsl_file)) STOP 3
+ if(c_associated(file%gsl_func)) STOP 4
end program test
! { dg-final { scan-tree-dump-times "c_funptr.\[0-9\]+ = 0B;" 1 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/c_ptr_tests_15.f90 b/gcc/testsuite/gfortran.dg/c_ptr_tests_15.f90
index 19dd2d11b2e..40d1ba3fdbd 100644
--- a/gcc/testsuite/gfortran.dg/c_ptr_tests_15.f90
+++ b/gcc/testsuite/gfortran.dg/c_ptr_tests_15.f90
@@ -31,14 +31,14 @@ program test
integer, target :: tgt
call sub(file, noreinit)
- if(c_associated(file%gsl_file)) call abort()
- if(c_associated(file%gsl_func)) call abort()
+ if(c_associated(file%gsl_file)) STOP 1
+ if(c_associated(file%gsl_func)) STOP 2
file%gsl_file = c_loc(tgt)
file%gsl_func = c_funloc(proc)
call sub(file, noreinit)
- if(c_associated(file%gsl_file)) call abort()
- if(c_associated(file%gsl_func)) call abort()
+ if(c_associated(file%gsl_file)) STOP 3
+ if(c_associated(file%gsl_func)) STOP 4
end program test
! { dg-final { scan-tree-dump-times "c_funptr.\[0-9\]+ = 0B;" 1 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/c_size_t_test.f03 b/gcc/testsuite/gfortran.dg/c_size_t_test.f03
index 91d7aa57b05..7325b3df389 100644
--- a/gcc/testsuite/gfortran.dg/c_size_t_test.f03
+++ b/gcc/testsuite/gfortran.dg/c_size_t_test.f03
@@ -10,7 +10,7 @@ contains
! if the value of c_size_t isn't equal to the value of C's sizeof(size_t)
! we call abort.
if(c_size_t .ne. my_c_size) then
- call abort ()
+ STOP 1
end if
end subroutine sub0
end module c_size_t_test
diff --git a/gcc/testsuite/gfortran.dg/c_sizeof_1.f90 b/gcc/testsuite/gfortran.dg/c_sizeof_1.f90
index d601f1ec8ec..ea36c20f458 100644
--- a/gcc/testsuite/gfortran.dg/c_sizeof_1.f90
+++ b/gcc/testsuite/gfortran.dg/c_sizeof_1.f90
@@ -11,34 +11,34 @@ integer(c_intptr_t) :: iptr
! Using F2008's C_SIZEOF
i = c_sizeof(i)
-if (i /= 4) call abort()
+if (i /= 4) STOP 1
i = c_sizeof(j)
-if (i /= 40) call abort()
+if (i /= 40) STOP 2
i = c_sizeof(str2)
-if (i /= 4) call abort()
+if (i /= 4) STOP 3
i = c_sizeof(str2(1))
-if (i /= 1) call abort()
+if (i /= 1) STOP 4
write(*,*) c_sizeof(cptr), c_sizeof(iptr), c_sizeof(C_NULL_PTR)
! Using GNU's SIZEOF
i = sizeof(i)
-if (i /= 4) call abort()
+if (i /= 4) STOP 5
i = sizeof(j)
-if (i /= 40) call abort()
+if (i /= 40) STOP 6
i = sizeof(str)
-if (i /= 4) call abort()
+if (i /= 4) STOP 7
i = sizeof(str(1))
-if (i /= 4) call abort()
+if (i /= 4) STOP 8
i = sizeof(str(1)(1:3))
-if (i /= 3) call abort()
+if (i /= 3) STOP 9
end
diff --git a/gcc/testsuite/gfortran.dg/c_sizeof_5.f90 b/gcc/testsuite/gfortran.dg/c_sizeof_5.f90
index 127a24ab6a4..1fd319c0d6d 100644
--- a/gcc/testsuite/gfortran.dg/c_sizeof_5.f90
+++ b/gcc/testsuite/gfortran.dg/c_sizeof_5.f90
@@ -7,6 +7,6 @@ real pointee(10)
pointer (ipt, pointee)
integer(c_intptr_t) :: int_cptr
real :: x
-if (c_sizeof(ipt) /= c_sizeof(int_cptr)) call abort()
-if (c_sizeof(pointee) /= c_sizeof(x)*10) call abort()
+if (c_sizeof(ipt) /= c_sizeof(int_cptr)) STOP 1
+if (c_sizeof(pointee) /= c_sizeof(x)*10) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/c_sizeof_6.f90 b/gcc/testsuite/gfortran.dg/c_sizeof_6.f90
index 0b57964ea5b..a676a5b8986 100644
--- a/gcc/testsuite/gfortran.dg/c_sizeof_6.f90
+++ b/gcc/testsuite/gfortran.dg/c_sizeof_6.f90
@@ -10,7 +10,7 @@ program foo
i = c_sizeof(str2(1:3)) ! { dg-error "must be an interoperable data" }
- if (i /= 3) call abort()
+ if (i /= 3) STOP 1
end program foo
diff --git a/gcc/testsuite/gfortran.dg/char4_iunit_1.f03 b/gcc/testsuite/gfortran.dg/char4_iunit_1.f03
index 0c7b70e45b9..eaa2bd84a4b 100644
--- a/gcc/testsuite/gfortran.dg/char4_iunit_1.f03
+++ b/gcc/testsuite/gfortran.dg/char4_iunit_1.f03
@@ -16,19 +16,19 @@ program char4_iunit_1
string = 4_"123456789x"
write(string,'(a11)') 4_"abcdefg"
- if (string .ne. 4_" abcdefg ") call abort
+ if (string .ne. 4_" abcdefg ") STOP 1
write(string,*) 12345
- if (string .ne. 4_" 12345 ") call abort
+ if (string .ne. 4_" 12345 ") STOP 2
write(string, '(i6,5x,i8,a5)') 78932, 123456, "abc"
- if (string .ne. 4_" 78932 123456 abc ") call abort
+ if (string .ne. 4_" 78932 123456 abc ") STOP 3
write(string, *) .true., .false. , .true.
- if (string .ne. 4_" T F T ") call abort
+ if (string .ne. 4_" T F T ") STOP 4
write(string, *) 1.2345e-06, 4.2846e+10_8
- if (string .ne. 4_" 1.23450002E-06 42846000000.000000 ") call abort
+ if (string .ne. 4_" 1.23450002E-06 42846000000.000000 ") STOP 5
write(string, *) nan, inf
- if (string .ne. 4_" NaN Infinity ") call abort
+ if (string .ne. 4_" NaN Infinity ") STOP 6
write(string, '(10x,f3.1,3x,f9.1)') nan, inf
- if (string .ne. 4_" NaN Infinity ") call abort
+ if (string .ne. 4_" NaN Infinity ") STOP 7
write(string, *) (1.2, 3.4 )
- if (string .ne. 4_" (1.20000005,3.40000010)") call abort
+ if (string .ne. 4_" (1.20000005,3.40000010)") STOP 8
end program char4_iunit_1
diff --git a/gcc/testsuite/gfortran.dg/char4_iunit_2.f03 b/gcc/testsuite/gfortran.dg/char4_iunit_2.f03
index cbf0f7fbd3d..402b0a92782 100644
--- a/gcc/testsuite/gfortran.dg/char4_iunit_2.f03
+++ b/gcc/testsuite/gfortran.dg/char4_iunit_2.f03
@@ -19,7 +19,7 @@ program char4_iunit_2
read(widestring,'(i5,1x,f7.5,1x,a9,1x,a15)') i, x, str_default, str_char4
if (i /= 12345 .or. (x - 2.5436001) > epsilon(x) .or. &
str_default /= "hijklmnop" .or. str_char4 /= k_"qwertyuiopasdfg")&
- call abort
+ STOP 1
i = 77777
x = 0.0
str_default = "xxxxxxxxx"
@@ -28,20 +28,20 @@ program char4_iunit_2
str_char4
if (i /= 345 .or. (x - 52.542999) > epsilon(x) .or. &
str_default /= "0 hijklmn" .or. str_char4 /= k_"p qwertyuiopasd")&
- call abort
+ STOP 2
read(skinnystring,'(2x,i4,tl3,1x,f7.5,1x,a9,1x,a15)')i, x, str_default,&
str_char4
if (i /= 345 .or. (x - 52.542999) > epsilon(x) .or. &
str_default /= "0 hijklmn" .or. str_char4 /= k_"p qwertyuiopasd")&
- call abort
+ STOP 3
write(widestring,'(2x,i4,tl3,1x,f10.5,1x,a9,1x,a15)')i, x, str_default,&
trim(str_char4)
- if (widestring .ne. k_" 3 52.54300 0 hijklmn p qwertyuiopasd") call abort
+ if (widestring .ne. k_" 3 52.54300 0 hijklmn p qwertyuiopasd") STOP 4
write(skinnystring,'(2x,i4,tl3,1x,f10.5,1x,a9,1x,a15)')i, x, str_default,&
trim(str_char4)
- if (skinnystring .ne. " 3 52.54300 0 hijklmn p qwertyuiopasd") call abort
+ if (skinnystring .ne. " 3 52.54300 0 hijklmn p qwertyuiopasd") STOP 5
write(widestring,*)"test",i, x, str_default,&
trim(str_char4)
if (widestring .ne. &
- k_" test 345 52.5429993 0 hijklmnp qwertyuiopasd") call abort
+ k_" test 345 52.5429993 0 hijklmnp qwertyuiopasd") STOP 6
end program char4_iunit_2
diff --git a/gcc/testsuite/gfortran.dg/char_allocation_1.f90 b/gcc/testsuite/gfortran.dg/char_allocation_1.f90
index 119badb4d10..e0aefcf7845 100644
--- a/gcc/testsuite/gfortran.dg/char_allocation_1.f90
+++ b/gcc/testsuite/gfortran.dg/char_allocation_1.f90
@@ -4,7 +4,7 @@
integer :: n
character (len = n) :: v(n)
v = ''
- if (any (v /= '')) call abort
+ if (any (v /= '')) STOP 1
end subroutine foo
call foo(7)
diff --git a/gcc/testsuite/gfortran.dg/char_array_constructor.f90 b/gcc/testsuite/gfortran.dg/char_array_constructor.f90
index 2cf3ae722c5..b3b375f79d9 100644
--- a/gcc/testsuite/gfortran.dg/char_array_constructor.f90
+++ b/gcc/testsuite/gfortran.dg/char_array_constructor.f90
@@ -7,8 +7,8 @@ end module
program y
use z
- if (a(1) /= 'main ') call abort
- if (a(2) /= 'main ') call abort
- if (b(1) /= 'abcd ') call abort
- if (b(2) /= 'efghij') call abort
+ if (a(1) /= 'main ') STOP 1
+ if (a(2) /= 'main ') STOP 2
+ if (b(1) /= 'abcd ') STOP 3
+ if (b(2) /= 'efghij') STOP 4
end program y
diff --git a/gcc/testsuite/gfortran.dg/char_array_structure_constructor.f90 b/gcc/testsuite/gfortran.dg/char_array_structure_constructor.f90
index cfe787b5375..b67557123fa 100644
--- a/gcc/testsuite/gfortran.dg/char_array_structure_constructor.f90
+++ b/gcc/testsuite/gfortran.dg/char_array_structure_constructor.f90
@@ -21,7 +21,7 @@ program char_array_structure_constructor
call alloc (2)
if ((any (c%a /= "wxyz")) .OR. &
(any (c%b(1) /= "abcd")) .OR. &
- (any (c%b(2) /= "efgh"))) call abort ()
+ (any (c%b(2) /= "efgh"))) STOP 1
contains
SUBROUTINE alloc (n)
USE global
diff --git a/gcc/testsuite/gfortran.dg/char_assign_1.f90 b/gcc/testsuite/gfortran.dg/char_assign_1.f90
index 0d31cee7a15..9cccbc09426 100644
--- a/gcc/testsuite/gfortran.dg/char_assign_1.f90
+++ b/gcc/testsuite/gfortran.dg/char_assign_1.f90
@@ -12,12 +12,12 @@ character(len=3), dimension(5) :: q
y(:)%c = "abcdef" ! { dg-warning "in assignment \\(5/6\\)" }
p(1) = y(1)%c(3:) ! { dg-warning "in assignment \\(2/3\\)" }
-if (p(1).ne."cd") call abort()
+if (p(1).ne."cd") STOP 1
p(1) = y(1)%c ! { dg-warning "in assignment \\(2/5\\)" }
-if (p(1).ne."ab") call abort()
+if (p(1).ne."ab") STOP 2
q = "xyz"
p = q ! { dg-warning "CHARACTER expression will be truncated in assignment \\(2/3\\)" }
-if (any (p.ne.q(:)(1:2))) call abort()
+if (any (p.ne.q(:)(1:2))) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/char_associated_1.f90 b/gcc/testsuite/gfortran.dg/char_associated_1.f90
index f38f27331da..415079ce185 100644
--- a/gcc/testsuite/gfortran.dg/char_associated_1.f90
+++ b/gcc/testsuite/gfortran.dg/char_associated_1.f90
@@ -4,5 +4,5 @@ program main
character (len = 5), dimension (:), pointer :: ptr
character (len = 5), dimension (2), target :: a = (/ 'abcde', 'fghij' /)
ptr => a
- if (.not. associated (ptr, a)) call abort
+ if (.not. associated (ptr, a)) STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/char_cast_2.f90 b/gcc/testsuite/gfortran.dg/char_cast_2.f90
index 4c038b36684..a6b351812bb 100644
--- a/gcc/testsuite/gfortran.dg/char_cast_2.f90
+++ b/gcc/testsuite/gfortran.dg/char_cast_2.f90
@@ -6,7 +6,7 @@
! The code comes from http://www.star.le.ac.uk/~cgp/fortran.html (by Clive Page)
! Reported by Thomas Koenig <tkoenig@gcc.gnu.org>
!
- if (any (Up ("AbCdEfGhIjKlM") .ne. (/"ABCDEFGHIJKLM"/))) call abort ()
+ if (any (Up ("AbCdEfGhIjKlM") .ne. (/"ABCDEFGHIJKLM"/))) STOP 1
contains
Character (len=20) Function Up (string)
Character(len=*) string
diff --git a/gcc/testsuite/gfortran.dg/char_comparison_1.f b/gcc/testsuite/gfortran.dg/char_comparison_1.f
index 02f69e07661..8622f55937e 100644
--- a/gcc/testsuite/gfortran.dg/char_comparison_1.f
+++ b/gcc/testsuite/gfortran.dg/char_comparison_1.f
@@ -11,18 +11,18 @@ C Comparison between char(255) and space padding
C
c2 = 'a' // char(255)
c1 = 'a'
- if (.not. (c2 .gt. c1)) call abort
+ if (.not. (c2 .gt. c1)) STOP 1
C
C Comparison between char(255) and space
C
c3 = ' '
c4 = char(255)
- if (.not. (c4 .gt. c3)) call abort
+ if (.not. (c4 .gt. c3)) STOP 2
C
C Check constant folding
C
- if (.not. ('a' // char(255) .gt. 'a')) call abort
+ if (.not. ('a' // char(255) .gt. 'a')) STOP 3
- if (.not. (char(255) .gt. 'a')) call abort
+ if (.not. (char(255) .gt. 'a')) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/char_component_initializer_1.f90 b/gcc/testsuite/gfortran.dg/char_component_initializer_1.f90
index 8642ddfca41..74a41032910 100644
--- a/gcc/testsuite/gfortran.dg/char_component_initializer_1.f90
+++ b/gcc/testsuite/gfortran.dg/char_component_initializer_1.f90
@@ -14,5 +14,5 @@ program gfcbug62
type(t_ctl) :: ctl
integer :: i,k
- if (tdefi(1) .ne. ctl%tdefi(1)) call abort ()
+ if (tdefi(1) .ne. ctl%tdefi(1)) STOP 1
end program gfcbug62
diff --git a/gcc/testsuite/gfortran.dg/char_component_initializer_2.f90 b/gcc/testsuite/gfortran.dg/char_component_initializer_2.f90
index e57fc865912..4d9dc7ebd35 100644
--- a/gcc/testsuite/gfortran.dg/char_component_initializer_2.f90
+++ b/gcc/testsuite/gfortran.dg/char_component_initializer_2.f90
@@ -12,5 +12,5 @@ program gfcbug62
integer :: i,k
i = 1
k = 1
- if (tdefi(1) .ne. ctl%tdefi(1)) call abort ()
+ if (tdefi(1) .ne. ctl%tdefi(1)) STOP 1
end program gfcbug62
diff --git a/gcc/testsuite/gfortran.dg/char_cons_len.f90 b/gcc/testsuite/gfortran.dg/char_cons_len.f90
index cf920bdfb29..f88cc055fe2 100644
--- a/gcc/testsuite/gfortran.dg/char_cons_len.f90
+++ b/gcc/testsuite/gfortran.dg/char_cons_len.f90
@@ -7,7 +7,7 @@
j = len ((/"abcdefghijk", chr1, chr2/))
k = len ((/'hello ','goodbye'/))
l = foo ("yes siree, Bob")
- if (any ((/11,11,7,14/) /= (/i,j,k,l/))) call abort ()
+ if (any ((/11,11,7,14/) /= (/i,j,k,l/))) STOP 1
contains
integer function foo (arg)
character(*) :: arg
diff --git a/gcc/testsuite/gfortran.dg/char_conversion.f90 b/gcc/testsuite/gfortran.dg/char_conversion.f90
index 7120a1c6baa..65bc8cdaec9 100644
--- a/gcc/testsuite/gfortran.dg/char_conversion.f90
+++ b/gcc/testsuite/gfortran.dg/char_conversion.f90
@@ -6,5 +6,5 @@
program p
character, parameter :: c = char(256,4) ! { dg-error "cannot be converted" }
- if (rank(c) /= 0) call abort
+ if (rank(c) /= 0) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/char_cshift_1.f90 b/gcc/testsuite/gfortran.dg/char_cshift_1.f90
index 7ba61e7095b..c4d218a1afa 100644
--- a/gcc/testsuite/gfortran.dg/char_cshift_1.f90
+++ b/gcc/testsuite/gfortran.dg/char_cshift_1.f90
@@ -32,7 +32,7 @@ contains
do i1 = 1, n1
if (b (i1, i2, i3) .ne. a (mod (d1 + i1 - 1, n1) + 1, &
mod (d2 + i2 - 1, n2) + 1, &
- mod (d3 + i3 - 1, n3) + 1)) call abort
+ mod (d3 + i3 - 1, n3) + 1)) STOP 1
end do
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/char_cshift_2.f90 b/gcc/testsuite/gfortran.dg/char_cshift_2.f90
index 89d452f713e..b768b755cc9 100644
--- a/gcc/testsuite/gfortran.dg/char_cshift_2.f90
+++ b/gcc/testsuite/gfortran.dg/char_cshift_2.f90
@@ -37,7 +37,7 @@ contains
do i2 = 1, n2
do i1 = 1, n1
i2p = mod (shift1 (i1, i3) + i2 - 1, n2) + 1
- if (b (i1, i2, i3) .ne. a (i1, i2p, i3)) call abort
+ if (b (i1, i2, i3) .ne. a (i1, i2p, i3)) STOP 1
end do
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/char_decl_2.f90 b/gcc/testsuite/gfortran.dg/char_decl_2.f90
index ffce6b158e2..a4b6ca2e779 100644
--- a/gcc/testsuite/gfortran.dg/char_decl_2.f90
+++ b/gcc/testsuite/gfortran.dg/char_decl_2.f90
@@ -1,4 +1,4 @@
! { dg-do run }
character (kind=kind("a")) :: u
- if (kind(u) /= kind("a")) call abort
+ if (kind(u) /= kind("a")) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/char_eoshift_1.f90 b/gcc/testsuite/gfortran.dg/char_eoshift_1.f90
index ba51fa13193..f50cf20a69c 100644
--- a/gcc/testsuite/gfortran.dg/char_eoshift_1.f90
+++ b/gcc/testsuite/gfortran.dg/char_eoshift_1.f90
@@ -39,9 +39,9 @@ contains
do i2 = 1, n2
do i1 = 1, n1
if (i1 + d1 .gt. n1 .or. i2 + d2 .gt. n2 .or. i3 + d3 .gt. n3) then
- if (b (i1, i2, i3) .ne. filler) call abort
+ if (b (i1, i2, i3) .ne. filler) STOP 1
else
- if (b (i1, i2, i3) .ne. a (i1 + d1, i2 + d2, i3 + d3)) call abort
+ if (b (i1, i2, i3) .ne. a (i1 + d1, i2 + d2, i3 + d3)) STOP 2
end if
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/char_eoshift_2.f90 b/gcc/testsuite/gfortran.dg/char_eoshift_2.f90
index bdb654c77ce..3dce0f83fa1 100644
--- a/gcc/testsuite/gfortran.dg/char_eoshift_2.f90
+++ b/gcc/testsuite/gfortran.dg/char_eoshift_2.f90
@@ -46,9 +46,9 @@ contains
do i1 = 1, n1
i2p = i2 + shift1 (i1, i3)
if (i2p .gt. n2) then
- if (b (i1, i2, i3) .ne. filler) call abort
+ if (b (i1, i2, i3) .ne. filler) STOP 1
else
- if (b (i1, i2, i3) .ne. a (i1, i2p, i3)) call abort
+ if (b (i1, i2, i3) .ne. a (i1, i2p, i3)) STOP 2
end if
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/char_eoshift_3.f90 b/gcc/testsuite/gfortran.dg/char_eoshift_3.f90
index 62bc04c8004..6e30123379a 100644
--- a/gcc/testsuite/gfortran.dg/char_eoshift_3.f90
+++ b/gcc/testsuite/gfortran.dg/char_eoshift_3.f90
@@ -41,11 +41,11 @@ contains
do i2 = 1, n2
do i1 = 1, n1
if (i2 + d2 .le. n2) then
- if (b (i1, i2, i3) .ne. a (i1, i2 + d2, i3)) call abort
+ if (b (i1, i2, i3) .ne. a (i1, i2 + d2, i3)) STOP 1
else if (has_filler) then
- if (b (i1, i2, i3) .ne. filler (i1, i3)) call abort
+ if (b (i1, i2, i3) .ne. filler (i1, i3)) STOP 2
else
- if (b (i1, i2, i3) .ne. '') call abort
+ if (b (i1, i2, i3) .ne. '') STOP 3
end if
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/char_eoshift_4.f90 b/gcc/testsuite/gfortran.dg/char_eoshift_4.f90
index b7c86709034..4b25286af2e 100644
--- a/gcc/testsuite/gfortran.dg/char_eoshift_4.f90
+++ b/gcc/testsuite/gfortran.dg/char_eoshift_4.f90
@@ -48,11 +48,11 @@ contains
do i1 = 1, n1
i2p = i2 + shift1 (i1, i3)
if (i2p .le. n2) then
- if (b (i1, i2, i3) .ne. a (i1, i2p, i3)) call abort
+ if (b (i1, i2, i3) .ne. a (i1, i2p, i3)) STOP 1
else if (has_filler) then
- if (b (i1, i2, i3) .ne. filler (i1, i3)) call abort
+ if (b (i1, i2, i3) .ne. filler (i1, i3)) STOP 2
else
- if (b (i1, i2, i3) .ne. '') call abort
+ if (b (i1, i2, i3) .ne. '') STOP 3
end if
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/char_eoshift_5.f90 b/gcc/testsuite/gfortran.dg/char_eoshift_5.f90
index 93c701a4f1b..7917aba7d4c 100644
--- a/gcc/testsuite/gfortran.dg/char_eoshift_5.f90
+++ b/gcc/testsuite/gfortran.dg/char_eoshift_5.f90
@@ -16,7 +16,7 @@ contains
chk(1:8) = "5"
chk(9:10) = " "
Z(:)="456"
- if (any (EOSHIFT(Z(:)(2:2),2) .ne. chk)) call abort
+ if (any (EOSHIFT(Z(:)(2:2),2) .ne. chk)) STOP 1
END subroutine
END
diff --git a/gcc/testsuite/gfortran.dg/char_expr_1.f90 b/gcc/testsuite/gfortran.dg/char_expr_1.f90
index 35bfe347702..0b5e4bd26a9 100644
--- a/gcc/testsuite/gfortran.dg/char_expr_1.f90
+++ b/gcc/testsuite/gfortran.dg/char_expr_1.f90
@@ -9,7 +9,7 @@ program main
character (len=10), allocatable :: str(:)
allocate (str(1))
str(1) = "dog"
- if (size(str) /= 1 .or. str(1) /= "dog") call abort()
+ if (size(str) /= 1 .or. str(1) /= "dog") STOP 1
contains
subroutine foo(xx,yy)
character (len=*), intent(in) :: xx(:)
diff --git a/gcc/testsuite/gfortran.dg/char_expr_3.f90 b/gcc/testsuite/gfortran.dg/char_expr_3.f90
index fed0f3c78bc..4b9c06e4ed9 100644
--- a/gcc/testsuite/gfortran.dg/char_expr_3.f90
+++ b/gcc/testsuite/gfortran.dg/char_expr_3.f90
@@ -12,8 +12,8 @@ program main
xx(1) = ""
xx(2) = "dog"
call foo ((xx),xx)
- if (trim (xx(1)) .ne. "dog") call abort
- if (size (xx, 1) .ne. 1) call abort
+ if (trim (xx(1)) .ne. "dog") STOP 1
+ if (size (xx, 1) .ne. 1) STOP 2
contains
subroutine foo (xx,yy)
character(len=*), intent(in) :: xx(:)
diff --git a/gcc/testsuite/gfortran.dg/char_initialiser_actual.f90 b/gcc/testsuite/gfortran.dg/char_initialiser_actual.f90
index dbd78909ec2..db752376fa3 100644
--- a/gcc/testsuite/gfortran.dg/char_initialiser_actual.f90
+++ b/gcc/testsuite/gfortran.dg/char_initialiser_actual.f90
@@ -15,11 +15,11 @@ program char_initialiser
contains
subroutine sfoo(ch1, ch2)
character*(*) :: ch1, ch2
- if (ch1 /= ch2) call abort ()
+ if (ch1 /= ch2) STOP 1
end subroutine sfoo
subroutine afoo(ch1, ch2)
character*(*), dimension(:) :: ch1, ch2
- if (any(ch1 /= ch2)) call abort ()
+ if (any(ch1 /= ch2)) STOP 2
end subroutine afoo
function pfoo(ch2)
character*5, dimension(:), target :: ch2
diff --git a/gcc/testsuite/gfortran.dg/char_length_12.f90 b/gcc/testsuite/gfortran.dg/char_length_12.f90
index f22eb6c7229..8e290023f6b 100644
--- a/gcc/testsuite/gfortran.dg/char_length_12.f90
+++ b/gcc/testsuite/gfortran.dg/char_length_12.f90
@@ -7,6 +7,6 @@
character(len=3), dimension(3,3) :: m1
m1 = p
- if (any (spread (p, 1, 2) /= spread (m1, 1, 2))) call abort
+ if (any (spread (p, 1, 2) /= spread (m1, 1, 2))) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/char_length_14.f90 b/gcc/testsuite/gfortran.dg/char_length_14.f90
index 5827dd95eee..4e5bb0cfb45 100644
--- a/gcc/testsuite/gfortran.dg/char_length_14.f90
+++ b/gcc/testsuite/gfortran.dg/char_length_14.f90
@@ -7,10 +7,10 @@
!
program main
implicit none
- if (f5 ('1') .ne. "a") call abort
- if (len (f5 ('1')) .ne. 1) call abort
- if (f5 ('4') .ne. "abcd") call abort
- if (len (f5 ('4')) .ne. 4) call abort
+ if (f5 ('1') .ne. "a") STOP 1
+ if (len (f5 ('1')) .ne. 1) STOP 1
+ if (f5 ('4') .ne. "abcd") STOP 1
+ if (len (f5 ('4')) .ne. 4) STOP 1
contains
function f5 (c)
character(len=1_8) :: c
diff --git a/gcc/testsuite/gfortran.dg/char_length_15.f90 b/gcc/testsuite/gfortran.dg/char_length_15.f90
index 700da0eb175..f91d89e6b34 100644
--- a/gcc/testsuite/gfortran.dg/char_length_15.f90
+++ b/gcc/testsuite/gfortran.dg/char_length_15.f90
@@ -23,11 +23,11 @@ program cg0033_41
LL(4)%c = 'QWERTYUIO'
RR%c = LL%c ! The equivalence forces a dependency
L%c = LL(2:4)%c
- if (any (RR(2:4)%c .ne. L%c)) call abort
+ if (any (RR(2:4)%c .ne. L%c)) STOP 1
nfv1 = (/1,2,3/)
nfv2 = nfv1
L%c = R%c
L(nfv1)%c = L(nfv2)%c ! The vector indices force a dependency
- if (any (R%c .ne. L%c)) call abort
+ if (any (R%c .ne. L%c)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/char_length_17.f90 b/gcc/testsuite/gfortran.dg/char_length_17.f90
index a9cf1f75586..75398d8e148 100644
--- a/gcc/testsuite/gfortran.dg/char_length_17.f90
+++ b/gcc/testsuite/gfortran.dg/char_length_17.f90
@@ -8,7 +8,7 @@ program main
i = 3
c(i:i) = 'a'
c(i+1:i+1) = 'b'
- if (c(i:i) /= 'a') call abort ()
- if (c(i+1:i+1) /= 'b') call abort ()
+ if (c(i:i) /= 'a') STOP 1
+ if (c(i+1:i+1) /= 'b') STOP 2
end program main
! { dg-final { scan-tree-dump-times "gfortran_compare_string" 0 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/char_length_20.f90 b/gcc/testsuite/gfortran.dg/char_length_20.f90
index 38a19c5b0ba..84a09e2aad4 100644
--- a/gcc/testsuite/gfortran.dg/char_length_20.f90
+++ b/gcc/testsuite/gfortran.dg/char_length_20.f90
@@ -8,6 +8,6 @@ program rabbithole
character(len=20) :: ctwenty='abcdefghijabcdefghij'
ii = -6
text_block=[ character(len=ii) :: cten, ctwenty ]
- if (any(len_trim(text_block) /= 0)) call abort
+ if (any(len_trim(text_block) /= 0)) STOP 1
end program rabbithole
! { dg-output "At line 10 of file .*char_length_20.f90.*Fortran runtime warning: Negative character length treated as LEN = 0" }
diff --git a/gcc/testsuite/gfortran.dg/char_length_21.f90 b/gcc/testsuite/gfortran.dg/char_length_21.f90
index 76b7e8e28e8..188d84e6b40 100644
--- a/gcc/testsuite/gfortran.dg/char_length_21.f90
+++ b/gcc/testsuite/gfortran.dg/char_length_21.f90
@@ -7,5 +7,5 @@ program rabbithole
character(len=20) :: ctwenty='abcdefghijabcdefghij'
ii = -6
text_block = [character(len=ii) :: cten, ctwenty]
- if (any(len_trim(text_block) /= 0)) call abort
+ if (any(len_trim(text_block) /= 0)) STOP 1
end program rabbithole
diff --git a/gcc/testsuite/gfortran.dg/char_length_5.f90 b/gcc/testsuite/gfortran.dg/char_length_5.f90
index 929f01b22b4..100e362118e 100644
--- a/gcc/testsuite/gfortran.dg/char_length_5.f90
+++ b/gcc/testsuite/gfortran.dg/char_length_5.f90
@@ -33,28 +33,28 @@ program xjoin
character (len=5) :: words(5:8) = (/"two ","three","four ","five "/), sep = "^#^"
character (len=5) :: words2(4) = (/"bat ","ball ","goal ","stump"/), sep2 = "&"
- if (join (words, sep) .ne. "two^#^three^#^four^#^five") call abort ()
- if (len (join (words, sep)) .ne. 25) call abort ()
+ if (join (words, sep) .ne. "two^#^three^#^four^#^five") STOP 1
+ if (len (join (words, sep)) .ne. 25) STOP 2
- if (join (words(5:6), sep) .ne. "two^#^three") call abort ()
- if (len (join (words(5:6), sep)) .ne. 11) call abort ()
+ if (join (words(5:6), sep) .ne. "two^#^three") STOP 3
+ if (len (join (words(5:6), sep)) .ne. 11) STOP 4
- if (join (words(7:8), sep) .ne. "four^#^five") call abort ()
- if (len (join (words(7:8), sep)) .ne. 11) call abort ()
+ if (join (words(7:8), sep) .ne. "four^#^five") STOP 5
+ if (len (join (words(7:8), sep)) .ne. 11) STOP 6
- if (join (words(5:7:2), sep) .ne. "two^#^four") call abort ()
- if (len (join (words(5:7:2), sep)) .ne. 10) call abort ()
+ if (join (words(5:7:2), sep) .ne. "two^#^four") STOP 7
+ if (len (join (words(5:7:2), sep)) .ne. 10) STOP 8
- if (join (words(6:8:2), sep) .ne. "three^#^five") call abort ()
- if (len (join (words(6:8:2), sep)) .ne. 12) call abort ()
+ if (join (words(6:8:2), sep) .ne. "three^#^five") STOP 9
+ if (len (join (words(6:8:2), sep)) .ne. 12) STOP 10
- if (join (words2, sep2) .ne. "bat&ball&goal&stump") call abort ()
- if (len (join (words2, sep2)) .ne. 19) call abort ()
+ if (join (words2, sep2) .ne. "bat&ball&goal&stump") STOP 11
+ if (len (join (words2, sep2)) .ne. 19) STOP 12
- if (join (words2(1:2), sep2) .ne. "bat&ball") call abort ()
- if (len (join (words2(1:2), sep2)) .ne. 8) call abort ()
+ if (join (words2(1:2), sep2) .ne. "bat&ball") STOP 13
+ if (len (join (words2(1:2), sep2)) .ne. 8) STOP 14
- if (join (words2(2:4:2), sep2) .ne. "ball&stump") call abort ()
- if (len (join (words2(2:4:2), sep2)) .ne. 10) call abort ()
+ if (join (words2(2:4:2), sep2) .ne. "ball&stump") STOP 15
+ if (len (join (words2(2:4:2), sep2)) .ne. 10) STOP 16
end program xjoin
diff --git a/gcc/testsuite/gfortran.dg/char_length_6.f90 b/gcc/testsuite/gfortran.dg/char_length_6.f90
index 1a8b2f106c3..f2ed529638e 100644
--- a/gcc/testsuite/gfortran.dg/char_length_6.f90
+++ b/gcc/testsuite/gfortran.dg/char_length_6.f90
@@ -6,11 +6,11 @@ program test
c = "aa"
l = c .eq. "aa"
- if (any (.not. l)) call abort
+ if (any (.not. l)) STOP 1
call foo ([c(1)])
l = c .eq. "aa"
- if (any (.not. l)) call abort
+ if (any (.not. l)) STOP 2
contains
diff --git a/gcc/testsuite/gfortran.dg/char_length_7.f90 b/gcc/testsuite/gfortran.dg/char_length_7.f90
index d9c1b387441..3d16235e635 100644
--- a/gcc/testsuite/gfortran.dg/char_length_7.f90
+++ b/gcc/testsuite/gfortran.dg/char_length_7.f90
@@ -21,11 +21,11 @@ program xx
character(3) :: zz(2) = (/"abc","cde"/)
character(2) :: ans(2)
integer :: i = 2, j = 3
- if (any(ccopy("_&_"//(/"A","B"/)//"?") .ne. (/"_&_A?","_&_B?"/))) call abort ()
- if (any(ccopy(z//zz) .ne. (/"zzabc","zzcde"/))) call abort ()
- if (any(ccopy(z//zz(:)(1:2)) .ne. (/"zzab ","zzcd "/))) call abort ()
- if (any(ccopy(z//mz(:)(2:3)) .ne. (/"zzgh ","zzjk "/))) call abort ()
+ if (any(ccopy("_&_"//(/"A","B"/)//"?") .ne. (/"_&_A?","_&_B?"/))) STOP 1
+ if (any(ccopy(z//zz) .ne. (/"zzabc","zzcde"/))) STOP 2
+ if (any(ccopy(z//zz(:)(1:2)) .ne. (/"zzab ","zzcd "/))) STOP 3
+ if (any(ccopy(z//mz(:)(2:3)) .ne. (/"zzgh ","zzjk "/))) STOP 4
! This was another bug, uncovered when the PR was fixed.
- if (any(ccopy(z//mz(:)(i:j)) .ne. (/"zzgh ","zzjk "/))) call abort ()
+ if (any(ccopy(z//mz(:)(i:j)) .ne. (/"zzgh ","zzjk "/))) STOP 5
end program xx
diff --git a/gcc/testsuite/gfortran.dg/char_length_8.f90 b/gcc/testsuite/gfortran.dg/char_length_8.f90
index dd91de3145f..420b881ccd4 100644
--- a/gcc/testsuite/gfortran.dg/char_length_8.f90
+++ b/gcc/testsuite/gfortran.dg/char_length_8.f90
@@ -16,11 +16,11 @@
call test_pack
call test_unpack
call test_pr31197
- if (ctr .ne. 8) call abort
+ if (ctr .ne. 8) STOP 1
contains
subroutine test_reshape
Z(:)="123"
- if (any (RESHAPE(Z(:)(2:2),(/5,2/)) .ne. "2")) call abort
+ if (any (RESHAPE(Z(:)(2:2),(/5,2/)) .ne. "2")) STOP 2
ctr = ctr + 1
end subroutine
subroutine test_eoshift
@@ -28,34 +28,34 @@ contains
chk(1:8) = "5"
chk(9:10) = " "
Z(:)="456"
- if (any (EOSHIFT(Z(:)(2:2),2) .ne. chk)) call abort
+ if (any (EOSHIFT(Z(:)(2:2),2) .ne. chk)) STOP 3
ctr = ctr + 1
END subroutine
subroutine test_cshift
Z(:)="901"
- if (any (CSHIFT(Z(:)(2:2),2) .ne. "0")) call abort
+ if (any (CSHIFT(Z(:)(2:2),2) .ne. "0")) STOP 4
ctr = ctr + 1
end subroutine
subroutine test_spread
Z(:)="789"
- if (any (SPREAD(Z(:)(2:2),dim=1,ncopies=2) .ne. "8")) call abort
+ if (any (SPREAD(Z(:)(2:2),dim=1,ncopies=2) .ne. "8")) STOP 5
ctr = ctr + 1
end subroutine
subroutine test_transpose
W(:, :)="abc"
- if (any (TRANSPOSE(W(:,:)(1:2)) .ne. "ab")) call abort
+ if (any (TRANSPOSE(W(:,:)(1:2)) .ne. "ab")) STOP 6
ctr = ctr + 1
end subroutine
subroutine test_pack
W(:, :)="def"
- if (any (pack(W(:,:)(2:3),mask=.true.) .ne. "ef")) call abort
+ if (any (pack(W(:,:)(2:3),mask=.true.) .ne. "ef")) STOP 7
ctr = ctr + 1
end subroutine
subroutine test_unpack
logical, dimension(5,2) :: mask
Z(:)="hij"
mask = .true.
- if (any (unpack(Z(:)(2:2),mask,' ') .ne. "i")) call abort
+ if (any (unpack(Z(:)(2:2),mask,' ') .ne. "i")) STOP 8
ctr = ctr + 1
end subroutine
subroutine test_pr31197
@@ -63,7 +63,7 @@ contains
CHARACTER(LEN=3) :: A = "xyz"
END TYPE
TYPE(data), DIMENSION(10), TARGET :: T
- if (any (TRANSPOSE(RESHAPE(T(:)%A(2:2),(/5,2/))) .ne. "y")) call abort
+ if (any (TRANSPOSE(RESHAPE(T(:)%A(2:2),(/5,2/))) .ne. "y")) STOP 9
ctr = ctr + 1
end subroutine
END
diff --git a/gcc/testsuite/gfortran.dg/char_pack_1.f90 b/gcc/testsuite/gfortran.dg/char_pack_1.f90
index 839f6c6b1a1..ee9213ba92a 100644
--- a/gcc/testsuite/gfortran.dg/char_pack_1.f90
+++ b/gcc/testsuite/gfortran.dg/char_pack_1.f90
@@ -32,28 +32,28 @@ contains
do i1 = 1, n1
if (mask (i1, i2)) then
i = i + 1
- if (b (i) .ne. a (i1, i2)) call abort
+ if (b (i) .ne. a (i1, i2)) STOP 1
end if
end do
end do
- if (size (b, 1) .ne. i) call abort
+ if (size (b, 1) .ne. i) STOP 2
end subroutine test1
subroutine test2 (b)
character (len = slen), dimension (:) :: b
- if (size (b, 1) .ne. nv) call abort
+ if (size (b, 1) .ne. nv) STOP 3
i = 0
do i2 = 1, n2
do i1 = 1, n1
if (mask (i1, i2)) then
i = i + 1
- if (b (i) .ne. a (i1, i2)) call abort
+ if (b (i) .ne. a (i1, i2)) STOP 4
end if
end do
end do
do i = i + 1, nv
- if (b (i) .ne. vector (i)) call abort
+ if (b (i) .ne. vector (i)) STOP 5
end do
end subroutine test2
end program main
diff --git a/gcc/testsuite/gfortran.dg/char_pack_2.f90 b/gcc/testsuite/gfortran.dg/char_pack_2.f90
index 4bf165b29cb..dc4cf0e1006 100644
--- a/gcc/testsuite/gfortran.dg/char_pack_2.f90
+++ b/gcc/testsuite/gfortran.dg/char_pack_2.f90
@@ -29,25 +29,25 @@ contains
do i2 = 1, n2
do i1 = 1, n1
i = i + 1
- if (b (i) .ne. a (i1, i2)) call abort
+ if (b (i) .ne. a (i1, i2)) STOP 1
end do
end do
- if (size (b, 1) .ne. i) call abort
+ if (size (b, 1) .ne. i) STOP 2
end subroutine test1
subroutine test2 (b)
character (len = slen), dimension (:) :: b
- if (size (b, 1) .ne. nv) call abort
+ if (size (b, 1) .ne. nv) STOP 3
i = 0
do i2 = 1, n2
do i1 = 1, n1
i = i + 1
- if (b (i) .ne. a (i1, i2)) call abort
+ if (b (i) .ne. a (i1, i2)) STOP 4
end do
end do
do i = i + 1, nv
- if (b (i) .ne. vector (i)) call abort
+ if (b (i) .ne. vector (i)) STOP 5
end do
end subroutine test2
end program main
diff --git a/gcc/testsuite/gfortran.dg/char_pointer_assign.f90 b/gcc/testsuite/gfortran.dg/char_pointer_assign.f90
index 62fcf0360a3..0785754b2df 100644
--- a/gcc/testsuite/gfortran.dg/char_pointer_assign.f90
+++ b/gcc/testsuite/gfortran.dg/char_pointer_assign.f90
@@ -21,8 +21,8 @@ program char_pointer_assign
c3(1:1) = "o"
c3(4:4) = "l"
c1 => c3 ! pointer => pointer
- if (t1 /= "lnmo") call abort ()
- if (c1 /= "onml") call abort ()
+ if (t1 /= "lnmo") STOP 1
+ if (c1 /= "onml") STOP 2
! Now arrays.
c4 = "lmno" ! pointer = constant
@@ -37,8 +37,8 @@ program char_pointer_assign
const(4:4) ="l" ! c4(:)(4:4) = "l" is still broken
c4 = const
c2 => c4 ! pointer => pointer
- if (any (t2 /= "lnmo")) call abort ()
- if (any (c2 /= "onml")) call abort ()
+ if (any (t2 /= "lnmo")) STOP 3
+ if (any (c2 /= "onml")) STOP 4
deallocate (c3, c4)
end program char_pointer_assign
diff --git a/gcc/testsuite/gfortran.dg/char_pointer_assign_3.f90 b/gcc/testsuite/gfortran.dg/char_pointer_assign_3.f90
index 21db2df14a8..d404ffc6e1b 100644
--- a/gcc/testsuite/gfortran.dg/char_pointer_assign_3.f90
+++ b/gcc/testsuite/gfortran.dg/char_pointer_assign_3.f90
@@ -9,10 +9,10 @@ program test
character (len = 5), pointer :: textp2
textp => textt
textp2 => textt(1:5)
- if(len(textp) /= 7) call abort()
- if(len(textp2) /= 5) call abort()
+ if(len(textp) /= 7) STOP 1
+ if(len(textp2) /= 5) STOP 2
textp = 'aaaaaaa'
textp2 = 'bbbbbbb'
- if(textp /= 'bbbbbaa') call abort()
- if(textp2 /= 'bbbbb') call abort()
+ if(textp /= 'bbbbbaa') STOP 3
+ if(textp2 /= 'bbbbb') STOP 4
end program test
diff --git a/gcc/testsuite/gfortran.dg/char_pointer_comp_assign.f90 b/gcc/testsuite/gfortran.dg/char_pointer_comp_assign.f90
index 4e2d853b185..90a92c7214f 100644
--- a/gcc/testsuite/gfortran.dg/char_pointer_comp_assign.f90
+++ b/gcc/testsuite/gfortran.dg/char_pointer_comp_assign.f90
@@ -17,15 +17,15 @@ program char_pointer_comp_assign
! Do assignments first
allocate (a%scalar, a%array(2))
a%scalar = scalar_t
- if (a%scalar /= "abcd") call abort ()
+ if (a%scalar /= "abcd") STOP 1
a%array = array_t
- if (any(a%array /= (/"abcd","efgh"/))) call abort ()
+ if (any(a%array /= (/"abcd","efgh"/))) STOP 2
deallocate (a%scalar, a%array)
! Now do pointer assignments.
a%scalar => scalar_t
- if (a%scalar /= "abcd") call abort ()
+ if (a%scalar /= "abcd") STOP 3
a%array => array_t
- if (any(a%array /= (/"abcd","efgh"/))) call abort ()
+ if (any(a%array /= (/"abcd","efgh"/))) STOP 4
end program char_pointer_comp_assign
diff --git a/gcc/testsuite/gfortran.dg/char_pointer_dependency.f90 b/gcc/testsuite/gfortran.dg/char_pointer_dependency.f90
index ef2d783e1ff..bfc581a5a79 100644
--- a/gcc/testsuite/gfortran.dg/char_pointer_dependency.f90
+++ b/gcc/testsuite/gfortran.dg/char_pointer_dependency.f90
@@ -10,8 +10,8 @@ program char_pointer_dependency
allocate (c2(2))
c2 = (/"abcd","efgh"/)
c2 = afoo (c2)
- if (c2(1) /= "efgh") call abort ()
- if (c2(2) /= "abcd") call abort ()
+ if (c2(1) /= "efgh") STOP 1
+ if (c2(2) /= "abcd") STOP 2
deallocate (c2)
contains
function afoo (ac0) result (ac1)
diff --git a/gcc/testsuite/gfortran.dg/char_pointer_dummy.f90 b/gcc/testsuite/gfortran.dg/char_pointer_dummy.f90
index b533a1cb98c..e1939e1fc57 100644
--- a/gcc/testsuite/gfortran.dg/char_pointer_dummy.f90
+++ b/gcc/testsuite/gfortran.dg/char_pointer_dummy.f90
@@ -22,15 +22,15 @@ program char_pointer_dummy
contains
subroutine foo (cc1)
character*4 :: cc1
- if (cc1 /= "wxyz") call abort ()
+ if (cc1 /= "wxyz") STOP 1
end subroutine foo
subroutine sfoo (sc1)
character*4, pointer :: sc1
- if (sc1 /= "wxyz") call abort ()
+ if (sc1 /= "wxyz") STOP 2
end subroutine sfoo
subroutine afoo (ac1)
character*4, pointer :: ac1(:)
- if (ac1(1) /= "wxyz") call abort ()
+ if (ac1(1) /= "wxyz") STOP 3
end subroutine afoo
end program char_pointer_dummy
diff --git a/gcc/testsuite/gfortran.dg/char_pointer_func.f90 b/gcc/testsuite/gfortran.dg/char_pointer_func.f90
index 23f867eeb45..6338b380971 100644
--- a/gcc/testsuite/gfortran.dg/char_pointer_func.f90
+++ b/gcc/testsuite/gfortran.dg/char_pointer_func.f90
@@ -12,18 +12,18 @@ program char_pointer_func
allocate (c1, c2(1))
! Check that we have not broken non-pointer characters.
c0 = foo ()
- if (c0 /= "abcd") call abort ()
+ if (c0 /= "abcd") STOP 1
! Value assignments
c1 = sfoo ()
- if (c1 /= "abcd") call abort ()
+ if (c1 /= "abcd") STOP 2
c2 = afoo (c0)
- if (c2(1) /= "abcd") call abort ()
+ if (c2(1) /= "abcd") STOP 3
deallocate (c1, c2)
! Pointer assignments
c1 => sfoo ()
- if (c1 /= "abcd") call abort ()
+ if (c1 /= "abcd") STOP 4
c2 => afoo (c0)
- if (c2(1) /= "abcd") call abort ()
+ if (c2(1) /= "abcd") STOP 5
deallocate (c1, c2)
contains
function foo () result (cc1)
diff --git a/gcc/testsuite/gfortran.dg/char_reshape_1.f90 b/gcc/testsuite/gfortran.dg/char_reshape_1.f90
index b3b624459c9..47fc076dc4c 100644
--- a/gcc/testsuite/gfortran.dg/char_reshape_1.f90
+++ b/gcc/testsuite/gfortran.dg/char_reshape_1.f90
@@ -21,7 +21,7 @@ contains
integer :: i1, i2, i3, ai, padi
do i = 1, 3
- if (size (b, i) .ne. shape (i)) call abort
+ if (size (b, i) .ne. shape (i)) STOP 1
end do
ai = 0
padi = 0
@@ -30,11 +30,11 @@ contains
do i3 = 1, shape (3)
if (ai .lt. n) then
ai = ai + 1
- if (b (i1, i2, i3) .ne. a (ai)) call abort
+ if (b (i1, i2, i3) .ne. a (ai)) STOP 2
else
padi = padi + 1
if (padi .gt. n) padi = 1
- if (b (i1, i2, i3) .ne. pad (padi)) call abort
+ if (b (i1, i2, i3) .ne. pad (padi)) STOP 3
end if
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/char_result_1.f90 b/gcc/testsuite/gfortran.dg/char_result_1.f90
index 2e0b4ef1426..b8736ee9c95 100644
--- a/gcc/testsuite/gfortran.dg/char_result_1.f90
+++ b/gcc/testsuite/gfortran.dg/char_result_1.f90
@@ -109,6 +109,6 @@ contains
subroutine test (string, length)
character (len = *) :: string
integer, intent (in) :: length
- if (len (string) .ne. length) call abort
+ if (len (string) .ne. length) STOP 1
end subroutine test
end program main
diff --git a/gcc/testsuite/gfortran.dg/char_result_12.f90 b/gcc/testsuite/gfortran.dg/char_result_12.f90
index 6612dcf888f..c25be41f029 100644
--- a/gcc/testsuite/gfortran.dg/char_result_12.f90
+++ b/gcc/testsuite/gfortran.dg/char_result_12.f90
@@ -14,13 +14,13 @@
temper(1) = 'doncaster'
temper(2) = 'uxbridge'
ctemp = temper
- if (any (ctemp /= ["donc", "uxbr"])) call abort ()
+ if (any (ctemp /= ["donc", "uxbr"])) STOP 1
!
!------------------------
!'This went a bit wrong.'
!------------------------
ctemp = jetter(1,2)
- if (any (ctemp /= ["donc", "uxbr"])) call abort ()
+ if (any (ctemp /= ["donc", "uxbr"])) STOP 2
contains
function jetter(id1,id2)
diff --git a/gcc/testsuite/gfortran.dg/char_result_13.f90 b/gcc/testsuite/gfortran.dg/char_result_13.f90
index 638d6381e19..02c858af3f7 100644
--- a/gcc/testsuite/gfortran.dg/char_result_13.f90
+++ b/gcc/testsuite/gfortran.dg/char_result_13.f90
@@ -38,7 +38,7 @@ contains
subroutine foo(cc, teststr)
character (len=*), intent(in) :: cc(:)
character (len=*), intent(in) :: teststr
- if (any (cc .ne. teststr)) call abort
+ if (any (cc .ne. teststr)) STOP 1
end subroutine foo
end module abc
diff --git a/gcc/testsuite/gfortran.dg/char_result_14.f90 b/gcc/testsuite/gfortran.dg/char_result_14.f90
index 3083ecce4c5..37b35e60ee5 100644
--- a/gcc/testsuite/gfortran.dg/char_result_14.f90
+++ b/gcc/testsuite/gfortran.dg/char_result_14.f90
@@ -74,26 +74,26 @@ PROGRAM WheresThatbLinkingConstantGone
integer :: i
! Test the fix for the original bug
- if (len (Get0(1)) .ne. 5) call abort
- if (Get0(2) .ne. "Orange") call abort
+ if (len (Get0(1)) .ne. 5) STOP 1
+ if (Get0(2) .ne. "Orange") STOP 2
! Test the fix for the subsequent issues
call fruity
- if (trim (buffer) .ne. " 6Orange") call abort
+ if (trim (buffer) .ne. " 6Orange") STOP 3
call fruity2
- if (trim (buffer) .ne. " 5Mango") call abort
+ if (trim (buffer) .ne. " 5Mango") STOP 4
call fruity3
- if (trim (buffer) .ne. " 4Pear") call abort
+ if (trim (buffer) .ne. " 4Pear") STOP 5
do i = 3, 4
call Sget (i, arg)
if (i == 3) then
- if (trim (buffer) .ne. " 5Mango") call abort
- if (trim (arg) .ne. "Mango") call abort
+ if (trim (buffer) .ne. " 5Mango") STOP 6
+ if (trim (arg) .ne. "Mango") STOP 7
else
- if (trim (buffer) .ne. " 4Pear") call abort
+ if (trim (buffer) .ne. " 4Pear") STOP 8
! Since arg is fixed length in this scope, it gets over-written
! by s, which in this case is length 4. Thus, the 'o' remains.
- if (trim (arg) .ne. "Pearo") call abort
+ if (trim (arg) .ne. "Pearo") STOP 9
end if
enddo
contains
diff --git a/gcc/testsuite/gfortran.dg/char_result_15.f90 b/gcc/testsuite/gfortran.dg/char_result_15.f90
index 3c9a879d359..e67a09afb70 100644
--- a/gcc/testsuite/gfortran.dg/char_result_15.f90
+++ b/gcc/testsuite/gfortran.dg/char_result_15.f90
@@ -37,8 +37,8 @@ PROGRAM WheresThatbLinkingConstantGone
IMPLICIT NONE
integer :: i
write (buffer, '(i2,a)') len (Get (1)), Get (1)
- if (trim (buffer) .ne. " 5Apple") call abort
+ if (trim (buffer) .ne. " 5Apple") STOP 1
call fruity(3)
- if (trim (buffer) .ne. " 5Mango") call abort
- if (trim (names(3)) .ne. "Mangue") Call abort
+ if (trim (buffer) .ne. " 5Mango") STOP 2
+ if (trim (names(3)) .ne. "Mangue") STOP 3
END PROGRAM WheresThatbLinkingConstantGone
diff --git a/gcc/testsuite/gfortran.dg/char_result_2.f90 b/gcc/testsuite/gfortran.dg/char_result_2.f90
index 4127ecf94e9..4447069fa5e 100644
--- a/gcc/testsuite/gfortran.dg/char_result_2.f90
+++ b/gcc/testsuite/gfortran.dg/char_result_2.f90
@@ -102,6 +102,6 @@ contains
subroutine test (string, length)
character (len = *) :: string
integer, intent (in) :: length
- if (len (string) .ne. length) call abort
+ if (len (string) .ne. length) STOP 1
end subroutine test
end program main
diff --git a/gcc/testsuite/gfortran.dg/char_result_3.f90 b/gcc/testsuite/gfortran.dg/char_result_3.f90
index 8b9aa92477f..3c17b9c3239 100644
--- a/gcc/testsuite/gfortran.dg/char_result_3.f90
+++ b/gcc/testsuite/gfortran.dg/char_result_3.f90
@@ -73,6 +73,6 @@ contains
subroutine test (string, length)
character (len = *) :: string
integer, intent (in) :: length
- if (len (string) .ne. length) call abort
+ if (len (string) .ne. length) STOP 1
end subroutine test
end program main
diff --git a/gcc/testsuite/gfortran.dg/char_result_4.f90 b/gcc/testsuite/gfortran.dg/char_result_4.f90
index 5e4f58e188b..4d9cd04b2dc 100644
--- a/gcc/testsuite/gfortran.dg/char_result_4.f90
+++ b/gcc/testsuite/gfortran.dg/char_result_4.f90
@@ -57,6 +57,6 @@ contains
subroutine test (string, length)
character (len = *) :: string
integer, intent (in) :: length
- if (len (string) .ne. length) call abort
+ if (len (string) .ne. length) STOP 1
end subroutine test
end program main
diff --git a/gcc/testsuite/gfortran.dg/char_result_5.f90 b/gcc/testsuite/gfortran.dg/char_result_5.f90
index 96832b3b32c..ebab8e7f980 100644
--- a/gcc/testsuite/gfortran.dg/char_result_5.f90
+++ b/gcc/testsuite/gfortran.dg/char_result_5.f90
@@ -132,6 +132,6 @@ contains
subroutine test (string, length)
character (len = *) :: string
integer, intent (in) :: length
- if (len (string) .ne. length) call abort
+ if (len (string) .ne. length) STOP 1
end subroutine test
end program main
diff --git a/gcc/testsuite/gfortran.dg/char_result_6.f90 b/gcc/testsuite/gfortran.dg/char_result_6.f90
index de8e1059c28..66f5230aa12 100644
--- a/gcc/testsuite/gfortran.dg/char_result_6.f90
+++ b/gcc/testsuite/gfortran.dg/char_result_6.f90
@@ -102,6 +102,6 @@ contains
subroutine test (string, length)
character (len = *) :: string
integer, intent (in) :: length
- if (len (string) .ne. length) call abort
+ if (len (string) .ne. length) STOP 1
end subroutine test
end program main
diff --git a/gcc/testsuite/gfortran.dg/char_result_7.f90 b/gcc/testsuite/gfortran.dg/char_result_7.f90
index 7b8692f403e..58fd9a6fcd7 100644
--- a/gcc/testsuite/gfortran.dg/char_result_7.f90
+++ b/gcc/testsuite/gfortran.dg/char_result_7.f90
@@ -42,6 +42,6 @@ contains
subroutine test (string, length)
character (len = *) :: string
integer, intent (in) :: length
- if (len (string) .ne. length) call abort
+ if (len (string) .ne. length) STOP 1
end subroutine test
end program main
diff --git a/gcc/testsuite/gfortran.dg/char_result_8.f90 b/gcc/testsuite/gfortran.dg/char_result_8.f90
index 69b119647c4..8256122a19a 100644
--- a/gcc/testsuite/gfortran.dg/char_result_8.f90
+++ b/gcc/testsuite/gfortran.dg/char_result_8.f90
@@ -46,6 +46,6 @@ contains
subroutine test (string, length)
character (len = *) :: string
integer, intent (in) :: length
- if (len (string) .ne. length) call abort
+ if (len (string) .ne. length) STOP 1
end subroutine test
end program main
diff --git a/gcc/testsuite/gfortran.dg/char_spread_1.f90 b/gcc/testsuite/gfortran.dg/char_spread_1.f90
index bb152ee394d..59ba26ba2f8 100644
--- a/gcc/testsuite/gfortran.dg/char_spread_1.f90
+++ b/gcc/testsuite/gfortran.dg/char_spread_1.f90
@@ -17,14 +17,14 @@ contains
subroutine test (b)
character (len = slen), dimension (:, :, :) :: b
- if (size (b, 1) .ne. n1) call abort
- if (size (b, 2) .ne. n2) call abort
- if (size (b, 3) .ne. n3) call abort
+ if (size (b, 1) .ne. n1) STOP 1
+ if (size (b, 2) .ne. n2) STOP 2
+ if (size (b, 3) .ne. n3) STOP 3
do i3 = 1, n3
do i2 = 1, n2
do i1 = 1, n1
- if (b (i1, i2, i3) .ne. a (i1, i3)) call abort
+ if (b (i1, i2, i3) .ne. a (i1, i3)) STOP 4
end do
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/char_transpose_1.f90 b/gcc/testsuite/gfortran.dg/char_transpose_1.f90
index 4b9c21a2ff4..3dd55caa241 100644
--- a/gcc/testsuite/gfortran.dg/char_transpose_1.f90
+++ b/gcc/testsuite/gfortran.dg/char_transpose_1.f90
@@ -17,12 +17,12 @@ contains
subroutine test (b)
character (len = slen), dimension (:, :) :: b
- if (size (b, 1) .ne. n2) call abort
- if (size (b, 2) .ne. n1) call abort
+ if (size (b, 1) .ne. n2) STOP 1
+ if (size (b, 2) .ne. n1) STOP 2
do i2 = 1, n2
do i1 = 1, n1
- if (b (i2, i1) .ne. a (i1, i2)) call abort
+ if (b (i2, i1) .ne. a (i1, i2)) STOP 3
end do
end do
end subroutine test
diff --git a/gcc/testsuite/gfortran.dg/char_type_len.f90 b/gcc/testsuite/gfortran.dg/char_type_len.f90
index 706f9341fe0..f517e27699d 100644
--- a/gcc/testsuite/gfortran.dg/char_type_len.f90
+++ b/gcc/testsuite/gfortran.dg/char_type_len.f90
@@ -8,5 +8,5 @@ program char_type_len
end type foo_t
type(foo_t) :: foo
- if (len(foo%bar) /= 80 .or. len(foo%gee) /= 75) call abort
+ if (len(foo%bar) /= 80 .or. len(foo%gee) /= 75) STOP 1
end program char_type_len
diff --git a/gcc/testsuite/gfortran.dg/char_unpack_1.f90 b/gcc/testsuite/gfortran.dg/char_unpack_1.f90
index 65dd888a8d8..cb2c52886c5 100644
--- a/gcc/testsuite/gfortran.dg/char_unpack_1.f90
+++ b/gcc/testsuite/gfortran.dg/char_unpack_1.f90
@@ -26,17 +26,17 @@ contains
subroutine test (a)
character (len = slen), dimension (:, :) :: a
- if (size (a, 1) .ne. n1) call abort
- if (size (a, 2) .ne. n2) call abort
+ if (size (a, 1) .ne. n1) STOP 1
+ if (size (a, 2) .ne. n2) STOP 2
i = 0
do i2 = 1, n2
do i1 = 1, n1
if (mask (i1, i2)) then
i = i + 1
- if (a (i1, i2) .ne. vector (i)) call abort
+ if (a (i1, i2) .ne. vector (i)) STOP 3
else
- if (a (i1, i2) .ne. field (i1, i2)) call abort
+ if (a (i1, i2) .ne. field (i1, i2)) STOP 4
end if
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/char_unpack_2.f90 b/gcc/testsuite/gfortran.dg/char_unpack_2.f90
index 3b2c4a32729..62307d78935 100644
--- a/gcc/testsuite/gfortran.dg/char_unpack_2.f90
+++ b/gcc/testsuite/gfortran.dg/char_unpack_2.f90
@@ -22,17 +22,17 @@ contains
subroutine test (a)
character (len = slen), dimension (:, :) :: a
- if (size (a, 1) .ne. n1) call abort
- if (size (a, 2) .ne. n2) call abort
+ if (size (a, 1) .ne. n1) STOP 1
+ if (size (a, 2) .ne. n2) STOP 2
i = 0
do i2 = 1, n2
do i1 = 1, n1
if (mask (i1, i2)) then
i = i + 1
- if (a (i1, i2) .ne. vector (i)) call abort
+ if (a (i1, i2) .ne. vector (i)) STOP 3
else
- if (a (i1, i2) .ne. field) call abort
+ if (a (i1, i2) .ne. field) STOP 4
end if
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/character_array_constructor_1.f90 b/gcc/testsuite/gfortran.dg/character_array_constructor_1.f90
index ac0f7e315df..b55b6844350 100644
--- a/gcc/testsuite/gfortran.dg/character_array_constructor_1.f90
+++ b/gcc/testsuite/gfortran.dg/character_array_constructor_1.f90
@@ -35,12 +35,12 @@ contains
character(*), dimension(:) :: chr
character(len = len(chr)) :: tmp
if (size(chr,1) == 2) then
- if (any (chr .ne. (/"Label 1", "Label 2"/))) call abort ()
+ if (any (chr .ne. (/"Label 1", "Label 2"/))) STOP 1
elseif (size(chr,1) == 4) then
- if (any (chr .ne. (/"Label 3", "Label 4","Label 1", "Label 2"/))) call abort ()
+ if (any (chr .ne. (/"Label 3", "Label 4","Label 1", "Label 2"/))) STOP 2
elseif (size(chr,1) == 5) then
if (any (chr .ne. (/"Label 3", "Label 4","Label 1", "Label 2", "Label 5"/))) &
- call abort ()
+ STOP 3
end if
end subroutine read_library_data_
diff --git a/gcc/testsuite/gfortran.dg/character_comparison_1.f90 b/gcc/testsuite/gfortran.dg/character_comparison_1.f90
index e7f25adb725..71adefa58ed 100644
--- a/gcc/testsuite/gfortran.dg/character_comparison_1.f90
+++ b/gcc/testsuite/gfortran.dg/character_comparison_1.f90
@@ -16,13 +16,13 @@ program main
n = n + 1 ; if (c .eq. c) call yes
n = n + 1 ; if (c .ge. c) call yes
n = n + 1 ; if (c .le. c) call yes
- if (c /= c) call abort
- if (c > c) call abort
- if (c < c) call abort
- if (c .ne. c) call abort
- if (c .gt. c) call abort
- if (c .lt. c) call abort
- if (n /= i) call abort
+ if (c /= c) STOP 1
+ if (c > c) STOP 2
+ if (c < c) STOP 3
+ if (c .ne. c) STOP 4
+ if (c .gt. c) STOP 5
+ if (c .lt. c) STOP 6
+ if (n /= i) STOP 7
end program main
subroutine yes
diff --git a/gcc/testsuite/gfortran.dg/character_comparison_2.f90 b/gcc/testsuite/gfortran.dg/character_comparison_2.f90
index d4c38e82784..33fa5a9d3b8 100644
--- a/gcc/testsuite/gfortran.dg/character_comparison_2.f90
+++ b/gcc/testsuite/gfortran.dg/character_comparison_2.f90
@@ -19,13 +19,13 @@ program main
n = n + 1 ; if (c(k2:) .eq. c(k2:4)) call yes
n = n + 1 ; if (c(:) .ge. c) call yes
n = n + 1 ; if (c .le. c) call yes
- if (c(1:2) /= c(1:2)) call abort
- if (c(k1:k2) > c(k1:k2)) call abort
- if (c(:2) < c(1:2)) call abort
- if (c(:) .ne. c) call abort
- if (c(:2) .gt. c(1:2)) call abort
- if (c(1:2) .lt. c(:2)) call abort
- if (n /= i) call abort
+ if (c(1:2) /= c(1:2)) STOP 1
+ if (c(k1:k2) > c(k1:k2)) STOP 2
+ if (c(:2) < c(1:2)) STOP 3
+ if (c(:) .ne. c) STOP 4
+ if (c(:2) .gt. c(1:2)) STOP 5
+ if (c(1:2) .lt. c(:2)) STOP 6
+ if (n /= i) STOP 7
end program main
subroutine yes
diff --git a/gcc/testsuite/gfortran.dg/character_comparison_3.f90 b/gcc/testsuite/gfortran.dg/character_comparison_3.f90
index 0c93e14476c..cfc7cb23fc7 100644
--- a/gcc/testsuite/gfortran.dg/character_comparison_3.f90
+++ b/gcc/testsuite/gfortran.dg/character_comparison_3.f90
@@ -15,14 +15,14 @@ program main
k33 = 3
k44 = 4
c = 'abcd'
- if (c(2:) /= c(k2:k4)) call abort
- if (c(k2:k4) /= c(k22:)) call abort
- if (c(2:3) == c(1:2)) call abort
- if (c(1:2) == c(2:3)) call abort
- if (c(k1:) == c(k2:)) call abort
- if (c(:3) == c(:k4)) call abort
- if (c(:k4) == c(:3)) call abort
- if (c(:k3) == c(:k44)) call abort
+ if (c(2:) /= c(k2:k4)) STOP 1
+ if (c(k2:k4) /= c(k22:)) STOP 2
+ if (c(2:3) == c(1:2)) STOP 3
+ if (c(1:2) == c(2:3)) STOP 4
+ if (c(k1:) == c(k2:)) STOP 5
+ if (c(:3) == c(:k4)) STOP 6
+ if (c(:k4) == c(:3)) STOP 7
+ if (c(:k3) == c(:k44)) STOP 8
end program main
! { dg-final { scan-tree-dump-times "gfortran_compare_string" 6 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/character_comparison_4.f90 b/gcc/testsuite/gfortran.dg/character_comparison_4.f90
index a08c45c058f..d442b50a249 100644
--- a/gcc/testsuite/gfortran.dg/character_comparison_4.f90
+++ b/gcc/testsuite/gfortran.dg/character_comparison_4.f90
@@ -17,14 +17,14 @@ program main
n = n + 1; if ('b' // c > 'a' // d) call yes
n = n + 1; if (c // 'b' > c // 'a') call yes
- if ('a' // c /= 'a' // c) call abort
- if ('a' // c // 'b' == 'a' // c // 'a') call abort
- if ('b' // c == 'a' // c) call abort
- if (c // 'a' == c // 'b') call abort
- if (c // 'a ' /= c // 'a') call abort
- if (c // 'b' /= c // 'b ') call abort
+ if ('a' // c /= 'a' // c) STOP 1
+ if ('a' // c // 'b' == 'a' // c // 'a') STOP 2
+ if ('b' // c == 'a' // c) STOP 3
+ if (c // 'a' == c // 'b') STOP 4
+ if (c // 'a ' /= c // 'a') STOP 5
+ if (c // 'b' /= c // 'b ') STOP 6
- if (n /= i) call abort
+ if (n /= i) STOP 7
end program main
subroutine yes
diff --git a/gcc/testsuite/gfortran.dg/character_comparison_5.f90 b/gcc/testsuite/gfortran.dg/character_comparison_5.f90
index aef698ef20b..38aed04b2cc 100644
--- a/gcc/testsuite/gfortran.dg/character_comparison_5.f90
+++ b/gcc/testsuite/gfortran.dg/character_comparison_5.f90
@@ -11,8 +11,8 @@ program main
i = 0
c = 'abcd'
d = 'efgh'
- if (c // 'a' >= d // 'a') call abort
- if ('a' // c >= 'a' // d) call abort
+ if (c // 'a' >= d // 'a') STOP 1
+ if ('a' // c >= 'a' // d) STOP 2
end program main
! { dg-final { scan-tree-dump-times "gfortran_concat_string" 0 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/character_comparison_6.f90 b/gcc/testsuite/gfortran.dg/character_comparison_6.f90
index 5391f88697d..b42343f22c5 100644
--- a/gcc/testsuite/gfortran.dg/character_comparison_6.f90
+++ b/gcc/testsuite/gfortran.dg/character_comparison_6.f90
@@ -10,8 +10,8 @@ program main
n = 0
i = 0
c = 'abcd'
- if ('a ' // c == 'a' // c) call abort
- if ('a' // c == 'a ' // c) call abort
+ if ('a ' // c == 'a' // c) STOP 1
+ if ('a' // c == 'a ' // c) STOP 2
end program main
! { dg-final { scan-tree-dump-times "gfortran_concat_string" 4 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/character_comparison_7.f90 b/gcc/testsuite/gfortran.dg/character_comparison_7.f90
index 850e23408bd..1f132cac736 100644
--- a/gcc/testsuite/gfortran.dg/character_comparison_7.f90
+++ b/gcc/testsuite/gfortran.dg/character_comparison_7.f90
@@ -12,13 +12,13 @@ end program main
subroutine yes(a)
implicit none
logical, intent(in) :: a
- if (.not. a) call abort
+ if (.not. a) STOP 1
end subroutine yes
subroutine no(a)
implicit none
logical, intent(in) :: a
- if (a) call abort
+ if (a) STOP 2
end subroutine no
! { dg-final { scan-tree-dump-times "gfortran_compare_string" 0 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/character_comparison_8.f90 b/gcc/testsuite/gfortran.dg/character_comparison_8.f90
index ee22486ca55..2cc1a3057bd 100644
--- a/gcc/testsuite/gfortran.dg/character_comparison_8.f90
+++ b/gcc/testsuite/gfortran.dg/character_comparison_8.f90
@@ -4,10 +4,10 @@
program main
character(3) :: a
a = 'ab'
- if (.not. LLE(a,a)) call abort
- if (LLT(a,a)) call abort
- if (.not. LGE(a,a)) call abort
- if (LGT(a,a)) call abort
+ if (.not. LLE(a,a)) STOP 1
+ if (LLT(a,a)) STOP 2
+ if (.not. LGE(a,a)) STOP 3
+ if (LGT(a,a)) STOP 4
end program main
! { dg-final { scan-tree-dump-times "gfortran_compare_string" 0 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/character_comparison_9.f90 b/gcc/testsuite/gfortran.dg/character_comparison_9.f90
index 18b7b5e4812..737a424d66d 100644
--- a/gcc/testsuite/gfortran.dg/character_comparison_9.f90
+++ b/gcc/testsuite/gfortran.dg/character_comparison_9.f90
@@ -5,11 +5,11 @@ program main
character (kind=4,len=4) :: c,d
a = 'ab'
b = 'aa'
- if (a < b) call abort
+ if (a < b) STOP 1
c = 4_"aaaa"
d = 4_"aaab"
- if (c == d) call abort
- if (c > d) call abort
+ if (c == d) STOP 2
+ if (c > d) STOP 3
end program main
! { dg-final { scan-tree-dump-times "_gfortran_compare_string_char4" 1 "original" } }
! { dg-final { scan-tree-dump-times "__builtin_memcmp" 2 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/charlen_15.f90 b/gcc/testsuite/gfortran.dg/charlen_15.f90
index ed8ff00bec1..3401ff030f1 100644
--- a/gcc/testsuite/gfortran.dg/charlen_15.f90
+++ b/gcc/testsuite/gfortran.dg/charlen_15.f90
@@ -8,5 +8,5 @@ module m
end
program foo
use m
- if (trim(x%c(1)) /= 'ab') call abort
+ if (trim(x%c(1)) /= 'ab') STOP 1
end program foo
diff --git a/gcc/testsuite/gfortran.dg/charlen_16.f90 b/gcc/testsuite/gfortran.dg/charlen_16.f90
index 826f733c82d..ba81b788c15 100644
--- a/gcc/testsuite/gfortran.dg/charlen_16.f90
+++ b/gcc/testsuite/gfortran.dg/charlen_16.f90
@@ -5,5 +5,5 @@ program p
character(2) :: c(1) = [character(3) :: 'abc']
end type
type(t) :: x
- if (trim(x%c(1)) /= 'ab') call abort
+ if (trim(x%c(1)) /= 'ab') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/chkbits.f90 b/gcc/testsuite/gfortran.dg/chkbits.f90
index 4652439fddd..39202087a42 100644
--- a/gcc/testsuite/gfortran.dg/chkbits.f90
+++ b/gcc/testsuite/gfortran.dg/chkbits.f90
@@ -15,19 +15,19 @@ program chkbits
i2 = ibset(huge(0_2), bit_size(i2)-1)
i4 = ibset(huge(0_4), bit_size(i4)-1)
i8 = ibset(huge(0_8), bit_size(i8)-1)
- if (i1 /= -1 .or. i2 /= -1 .or. i4 /= -1 .or. i8 /= -1) call abort
+ if (i1 /= -1 .or. i2 /= -1 .or. i4 /= -1 .or. i8 /= -1) STOP 1
i1 = ibclr(-1_1, bit_size(i1)-1)
i2 = ibclr(-1_2, bit_size(i2)-1)
i4 = ibclr(-1_4, bit_size(i4)-1)
i8 = ibclr(-1_8, bit_size(i8)-1)
- if (i1 /= huge(0_1) .or. i2 /= huge(0_2)) call abort
- if (i4 /= huge(0_4) .or. i8 /= huge(0_8)) call abort
+ if (i1 /= huge(0_1) .or. i2 /= huge(0_2)) STOP 2
+ if (i4 /= huge(0_4) .or. i8 /= huge(0_8)) STOP 3
i1 = not(0_1)
i2 = not(0_2)
i4 = not(0_4)
i8 = not(0_8)
- if (i1 /= -1 .or. i2 /= -1 .or. i4 /= -1 .or. i8 /= -1) call abort
+ if (i1 /= -1 .or. i2 /= -1 .or. i4 /= -1 .or. i8 /= -1) STOP 4
end program chkbits
diff --git a/gcc/testsuite/gfortran.dg/chmod_1.f90 b/gcc/testsuite/gfortran.dg/chmod_1.f90
index 452b333dc35..7aeeaaa3c65 100644
--- a/gcc/testsuite/gfortran.dg/chmod_1.f90
+++ b/gcc/testsuite/gfortran.dg/chmod_1.f90
@@ -13,16 +13,16 @@
if (access(n,"") /= 0 .or. access(n," ") /= 0 .or. access(n,"r") /= 0 .or. &
access(n,"R") /= 0 .or. access(n,"w") /= 0 .or. access(n,"W") /= 0) &
- call abort
+ STOP 1
call chmod (n, "a+x", i)
if (i == 0) then
- if (access(n,"x") /= 0 .or. access(n,"X") /= 0) call abort
+ if (access(n,"x") /= 0 .or. access(n,"X") /= 0) STOP 2
end if
call chmod (n, "a-w", i)
if (i == 0 .and. getuid() /= 0) then
- if (access(n,"w") == 0 .or. access(n,"W") == 0) call abort
+ if (access(n,"w") == 0 .or. access(n,"W") == 0) STOP 3
end if
open (10,file=n)
@@ -30,6 +30,6 @@
if (access(n,"") == 0 .or. access(n," ") == 0 .or. access(n,"r") == 0 .or. &
access(n,"R") == 0 .or. access(n,"w") == 0 .or. access(n,"W") == 0) &
- call abort
+ STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/chmod_2.f90 b/gcc/testsuite/gfortran.dg/chmod_2.f90
index 68ff17d6cbf..176879dfb13 100644
--- a/gcc/testsuite/gfortran.dg/chmod_2.f90
+++ b/gcc/testsuite/gfortran.dg/chmod_2.f90
@@ -13,16 +13,16 @@
if (access(n,"") /= 0 .or. access(n," ") /= 0 .or. access(n,"r") /= 0 .or. &
access(n,"R") /= 0 .or. access(n,"w") /= 0 .or. access(n,"W") /= 0) &
- call abort
+ STOP 1
i = chmod (n, "a+x")
if (i == 0) then
- if (access(n,"x") /= 0 .or. access(n,"X") /= 0) call abort
+ if (access(n,"x") /= 0 .or. access(n,"X") /= 0) STOP 2
end if
i = chmod (n, "a-w")
if (i == 0 .and. getuid() /= 0) then
- if (access(n,"w") == 0 .or. access(n,"W") == 0) call abort
+ if (access(n,"w") == 0 .or. access(n,"W") == 0) STOP 3
end if
open (10,file=n)
@@ -30,6 +30,6 @@
if (access(n,"") == 0 .or. access(n," ") == 0 .or. access(n,"r") == 0 .or. &
access(n,"R") == 0 .or. access(n,"w") == 0 .or. access(n,"W") == 0) &
- call abort
+ STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/chmod_3.f90 b/gcc/testsuite/gfortran.dg/chmod_3.f90
index 5df752844a8..3528acd3ff9 100644
--- a/gcc/testsuite/gfortran.dg/chmod_3.f90
+++ b/gcc/testsuite/gfortran.dg/chmod_3.f90
@@ -13,16 +13,16 @@
if (access(n,"") /= 0 .or. access(n," ") /= 0 .or. access(n,"r") /= 0 .or. &
access(n,"R") /= 0 .or. access(n,"w") /= 0 .or. access(n,"W") /= 0) &
- call abort
+ STOP 1
i = chmod (n, "a+x")
if (i == 0) then
- if (access(n,"x") /= 0 .or. access(n,"X") /= 0) call abort
+ if (access(n,"x") /= 0 .or. access(n,"X") /= 0) STOP 2
end if
i = chmod (n, "a-w")
if (i == 0 .and. getuid() /= 0) then
- if (access(n,"w") == 0 .or. access(n,"W") == 0) call abort
+ if (access(n,"w") == 0 .or. access(n,"W") == 0) STOP 3
end if
open (10,file=n)
@@ -30,6 +30,6 @@
if (access(n,"") == 0 .or. access(n," ") == 0 .or. access(n,"r") == 0 .or. &
access(n,"R") == 0 .or. access(n,"w") == 0 .or. access(n,"W") == 0) &
- call abort
+ STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/class_1.f03 b/gcc/testsuite/gfortran.dg/class_1.f03
index f21133a05ad..c2ff505a38a 100644
--- a/gcc/testsuite/gfortran.dg/class_1.f03
+++ b/gcc/testsuite/gfortran.dg/class_1.f03
@@ -22,7 +22,7 @@ print *,c1%comp
call sub(c1)
-if (c1%comp/=5) call abort()
+if (c1%comp/=5) STOP 1
deallocate(c1)
diff --git a/gcc/testsuite/gfortran.dg/class_18.f03 b/gcc/testsuite/gfortran.dg/class_18.f03
index 576f931f969..01850e630de 100644
--- a/gcc/testsuite/gfortran.dg/class_18.f03
+++ b/gcc/testsuite/gfortran.dg/class_18.f03
@@ -11,8 +11,8 @@
type(parent), target :: t
class(parent), pointer :: cp => null()
- if (associated(cp)) call abort()
+ if (associated(cp)) STOP 1
cp => t
- if (.not. associated(cp)) call abort()
+ if (.not. associated(cp)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/class_19.f03 b/gcc/testsuite/gfortran.dg/class_19.f03
index ff84dc44901..8ae48fa1b06 100644
--- a/gcc/testsuite/gfortran.dg/class_19.f03
+++ b/gcc/testsuite/gfortran.dg/class_19.f03
@@ -20,11 +20,11 @@ subroutine foo_checkit()
type(foo_outer),allocatable :: try2
class(foo_outer), allocatable :: try3
- if (allocated(try%int)) call abort()
+ if (allocated(try%int)) STOP 1
allocate(foo_outer :: try3)
- if (allocated(try3%int)) call abort()
+ if (allocated(try3%int)) STOP 2
allocate(try2)
- if (allocated(try2%int)) call abort()
+ if (allocated(try2%int)) STOP 3
end subroutine foo_checkit
end module foo_mod
diff --git a/gcc/testsuite/gfortran.dg/class_35.f90 b/gcc/testsuite/gfortran.dg/class_35.f90
index 87a5c871294..e82567c2559 100644
--- a/gcc/testsuite/gfortran.dg/class_35.f90
+++ b/gcc/testsuite/gfortran.dg/class_35.f90
@@ -19,6 +19,6 @@ use one_two
class(two_three), allocatable :: a1
class(three), allocatable :: a2
-if (same_type_as(a1,a2)) call abort()
+if (same_type_as(a1,a2)) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/class_46.f03 b/gcc/testsuite/gfortran.dg/class_46.f03
index ef718db25d4..04a419fc45f 100644
--- a/gcc/testsuite/gfortran.dg/class_46.f03
+++ b/gcc/testsuite/gfortran.dg/class_46.f03
@@ -12,5 +12,5 @@ end module m
use m
implicit none
-if (allocated(x)) call abort()
+if (allocated(x)) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/class_48.f90 b/gcc/testsuite/gfortran.dg/class_48.f90
index 37ee8626c35..8e7413ba528 100644
--- a/gcc/testsuite/gfortran.dg/class_48.f90
+++ b/gcc/testsuite/gfortran.dg/class_48.f90
@@ -18,16 +18,16 @@ subroutine test1 ()
type(t2) :: one, two
one = two
- if (allocated (one%a)) call abort ()
+ if (allocated (one%a)) STOP 1
allocate (two%a)
two%a%x = 7890
one = two
- if (one%a%x /= 7890) call abort ()
+ if (one%a%x /= 7890) STOP 2
deallocate (two%a)
one = two
- if (allocated (one%a)) call abort ()
+ if (allocated (one%a)) STOP 3
end subroutine test1
subroutine test2 ()
@@ -42,21 +42,21 @@ subroutine test2 ()
type(t2) :: one, two
one = two
- if (allocated (one%a)) call abort ()
+ if (allocated (one%a)) STOP 4
allocate (two%a)
one = two
- if (.not.allocated (one%a)) call abort ()
- if (allocated (one%a%x)) call abort ()
+ if (.not.allocated (one%a)) STOP 5
+ if (allocated (one%a%x)) STOP 6
allocate (two%a%x(2))
two%a%x(:) = 7890
one = two
- if (any (one%a%x /= 7890)) call abort ()
+ if (any (one%a%x /= 7890)) STOP 7
deallocate (two%a)
one = two
- if (allocated (one%a)) call abort ()
+ if (allocated (one%a)) STOP 8
end subroutine test2
@@ -74,35 +74,35 @@ subroutine test3 ()
! Test allocate with array source - PR52102
allocate (two%a(2), source = [t(4), t(6)])
- if (allocated (one%a)) call abort ()
+ if (allocated (one%a)) STOP 9
one = two
- if (.not.allocated (one%a)) call abort ()
+ if (.not.allocated (one%a)) STOP 10
- if ((one%a(1)%x /= 4)) call abort ()
- if ((one%a(2)%x /= 6)) call abort ()
+ if ((one%a(1)%x /= 4)) STOP 11
+ if ((one%a(2)%x /= 6)) STOP 12
deallocate (two%a)
one = two
- if (allocated (one%a)) call abort ()
+ if (allocated (one%a)) STOP 13
! Test allocate with no source followed by assignments.
allocate (two%a(2))
two%a(1)%x = 5
two%a(2)%x = 7
- if (allocated (one%a)) call abort ()
+ if (allocated (one%a)) STOP 14
one = two
- if (.not.allocated (one%a)) call abort ()
+ if (.not.allocated (one%a)) STOP 15
- if ((one%a(1)%x /= 5)) call abort ()
- if ((one%a(2)%x /= 7)) call abort ()
+ if ((one%a(1)%x /= 5)) STOP 16
+ if ((one%a(2)%x /= 7)) STOP 17
deallocate (two%a)
one = two
- if (allocated (one%a)) call abort ()
+ if (allocated (one%a)) STOP 18
end subroutine test3
subroutine test4 ()
@@ -116,40 +116,40 @@ subroutine test4 ()
type(t2) :: one, two
- if (allocated (one%a)) call abort ()
- if (allocated (two%a)) call abort ()
+ if (allocated (one%a)) STOP 19
+ if (allocated (two%a)) STOP 20
allocate (two%a(2))
- if (allocated (two%a(1)%x)) call abort ()
- if (allocated (two%a(2)%x)) call abort ()
+ if (allocated (two%a(1)%x)) STOP 21
+ if (allocated (two%a(2)%x)) STOP 22
allocate (two%a(1)%x(3), source=[1,2,3])
allocate (two%a(2)%x(5), source=[5,6,7,8,9])
one = two
- if (.not. allocated (one%a)) call abort ()
- if (.not. allocated (one%a(1)%x)) call abort ()
- if (.not. allocated (one%a(2)%x)) call abort ()
+ if (.not. allocated (one%a)) STOP 23
+ if (.not. allocated (one%a(1)%x)) STOP 24
+ if (.not. allocated (one%a(2)%x)) STOP 25
- if (size(one%a) /= 2) call abort()
- if (size(one%a(1)%x) /= 3) call abort()
- if (size(one%a(2)%x) /= 5) call abort()
- if (any (one%a(1)%x /= [1,2,3])) call abort ()
- if (any (one%a(2)%x /= [5,6,7,8,9])) call abort ()
+ if (size(one%a) /= 2) STOP 26
+ if (size(one%a(1)%x) /= 3) STOP 27
+ if (size(one%a(2)%x) /= 5) STOP 28
+ if (any (one%a(1)%x /= [1,2,3])) STOP 29
+ if (any (one%a(2)%x /= [5,6,7,8,9])) STOP 30
deallocate (two%a(1)%x)
one = two
- if (.not. allocated (one%a)) call abort ()
- if (allocated (one%a(1)%x)) call abort ()
- if (.not. allocated (one%a(2)%x)) call abort ()
+ if (.not. allocated (one%a)) STOP 31
+ if (allocated (one%a(1)%x)) STOP 32
+ if (.not. allocated (one%a(2)%x)) STOP 33
- if (size(one%a) /= 2) call abort()
- if (size(one%a(2)%x) /= 5) call abort()
- if (any (one%a(2)%x /= [5,6,7,8,9])) call abort ()
+ if (size(one%a) /= 2) STOP 34
+ if (size(one%a(2)%x) /= 5) STOP 35
+ if (any (one%a(2)%x /= [5,6,7,8,9])) STOP 36
deallocate (two%a)
one = two
- if (allocated (one%a)) call abort ()
- if (allocated (two%a)) call abort ()
+ if (allocated (one%a)) STOP 37
+ if (allocated (two%a)) STOP 38
end subroutine test4
diff --git a/gcc/testsuite/gfortran.dg/class_51.f90 b/gcc/testsuite/gfortran.dg/class_51.f90
index a24cae772df..d5595f2f9b7 100644
--- a/gcc/testsuite/gfortran.dg/class_51.f90
+++ b/gcc/testsuite/gfortran.dg/class_51.f90
@@ -13,7 +13,7 @@
Type(t),Target :: x
Call sub(x)
Print *,x%c
- if (x%c /= 3) call abort ()
+ if (x%c /= 3) STOP 1
Contains
Subroutine sub(p)
Class(t),Pointer,Intent(In) :: p
diff --git a/gcc/testsuite/gfortran.dg/class_52.f90 b/gcc/testsuite/gfortran.dg/class_52.f90
index 42cb86db4a3..33c03729e02 100644
--- a/gcc/testsuite/gfortran.dg/class_52.f90
+++ b/gcc/testsuite/gfortran.dg/class_52.f90
@@ -13,7 +13,7 @@
Type(t),Target :: x
Call sub(x) ! { dg-error "Fortran 2008: Non-pointer actual argument" }
Print *,x%c
- if (x%c /= 3) call abort ()
+ if (x%c /= 3) STOP 1
Contains
Subroutine sub(p)
Class(t),Pointer,Intent(In) :: p
diff --git a/gcc/testsuite/gfortran.dg/class_6.f03 b/gcc/testsuite/gfortran.dg/class_6.f03
index 2f3ff62a6fa..fab1b8c1599 100644
--- a/gcc/testsuite/gfortran.dg/class_6.f03
+++ b/gcc/testsuite/gfortran.dg/class_6.f03
@@ -16,6 +16,6 @@
a%comp = 3
x => a
print *,x%comp
- if (x%comp/=3) call abort()
+ if (x%comp/=3) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/class_63.f90 b/gcc/testsuite/gfortran.dg/class_63.f90
index cf99bcf9cb2..c3561d5ec0c 100644
--- a/gcc/testsuite/gfortran.dg/class_63.f90
+++ b/gcc/testsuite/gfortran.dg/class_63.f90
@@ -75,6 +75,6 @@ end module
class (vector_iter_t), pointer :: x
call factory (x)
- if (x%get_vector_value() .ne. 99) call abort
- if (x%get_pointer_value() .ne. 99) call abort
+ if (x%get_vector_value() .ne. 99) STOP 1
+ if (x%get_pointer_value() .ne. 99) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/class_64.f90 b/gcc/testsuite/gfortran.dg/class_64.f90
index 059ebaa8a01..d0209a101c9 100644
--- a/gcc/testsuite/gfortran.dg/class_64.f90
+++ b/gcc/testsuite/gfortran.dg/class_64.f90
@@ -22,7 +22,7 @@ contains
class(*) :: arg
select type (arg)
type is (mytype)
- if (arg%i .ne. 99_8) call abort
+ if (arg%i .ne. 99_8) STOP 1
end select
end subroutine
@@ -30,7 +30,7 @@ contains
class(mytype) :: arg
select type (arg)
type is (mytype)
- if (arg%i .ne. 99_8) call abort
+ if (arg%i .ne. 99_8) STOP 2
end select
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/class_65.f90 b/gcc/testsuite/gfortran.dg/class_65.f90
index a82918c2087..b6ec3baa929 100644
--- a/gcc/testsuite/gfortran.dg/class_65.f90
+++ b/gcc/testsuite/gfortran.dg/class_65.f90
@@ -26,9 +26,9 @@ Program p
Type Is (t)
Continue
Class Is (t)
- call abort
+ STOP 1
Class Default
- call abort
+ STOP 2
End Select
! Print *, 'ok'
End Program
diff --git a/gcc/testsuite/gfortran.dg/class_66.f90 b/gcc/testsuite/gfortran.dg/class_66.f90
index 1843ea7eb69..475b7b26555 100644
--- a/gcc/testsuite/gfortran.dg/class_66.f90
+++ b/gcc/testsuite/gfortran.dg/class_66.f90
@@ -14,7 +14,7 @@
allocate(barfoo,source = f(11))
bar = [f(33), [f(22), barfoo], f(1)]
- if (any (bar%i .ne. [33, 22, 11, 1])) call abort
+ if (any (bar%i .ne. [33, 22, 11, 1])) STOP 1
deallocate (barfoo)
contains
diff --git a/gcc/testsuite/gfortran.dg/class_67.f90 b/gcc/testsuite/gfortran.dg/class_67.f90
index 20029939d64..ae56f314794 100644
--- a/gcc/testsuite/gfortran.dg/class_67.f90
+++ b/gcc/testsuite/gfortran.dg/class_67.f90
@@ -47,9 +47,9 @@ program test
type(t1), dimension(3) :: v1, v2
v1%i = [1,2,3]
v2 = return_t1(v1)
- if (any (v2%i .ne. v1%i)) call abort
+ if (any (v2%i .ne. v1%i)) STOP 1
v1%i = [4,5,6]
v2 = return_t1_p(v1)
- if (any (v2%i .ne. v1%i)) call abort
+ if (any (v2%i .ne. v1%i)) STOP 2
end program test
diff --git a/gcc/testsuite/gfortran.dg/class_68.f90 b/gcc/testsuite/gfortran.dg/class_68.f90
new file mode 100644
index 00000000000..fce30eac197
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/class_68.f90
@@ -0,0 +1,25 @@
+! { dg-do compile }
+!
+! Test the fix for PR83148.
+!
+! Contributed by Neil Carlson <neil.n.carlson@gmail.com>
+!
+module fhypre
+ use iso_c_binding, only: c_ptr, c_null_ptr
+ use iso_c_binding, only: hypre_obj => c_ptr, hypre_null_obj => c_null_ptr
+ private
+ public :: hypre_obj, hypre_null_obj
+end module
+
+module hypre_hybrid_type
+ use fhypre
+ type hypre_hybrid
+ type(hypre_obj) :: solver = hypre_null_obj
+ end type hypre_hybrid
+end module
+
+ use hypre_hybrid_type
+ class(hypre_hybrid), allocatable :: x
+ allocate (x)
+end
+
diff --git a/gcc/testsuite/gfortran.dg/class_9.f03 b/gcc/testsuite/gfortran.dg/class_9.f03
index 0e6509c0503..f871d4a23f4 100644
--- a/gcc/testsuite/gfortran.dg/class_9.f03
+++ b/gcc/testsuite/gfortran.dg/class_9.f03
@@ -33,26 +33,26 @@ contains
subroutine d (x)
real :: x
- if (abs(x-3.0)>1E-3) call abort()
+ if (abs(x-3.0)>1E-3) STOP 1
end subroutine
subroutine s (x)
class(t) :: x
real :: r
r = x%a (1.1) ! worked
- if (r .ne. a (1.1)) call abort
+ if (r .ne. a (1.1)) STOP 1
r = x%a (b (1.2)) ! worked
- if (r .ne. a(b (1.2))) call abort
+ if (r .ne. a(b (1.2))) STOP 2
r = b ( x%a (1.3)) ! worked
- if (r .ne. b(a (1.3))) call abort
+ if (r .ne. b(a (1.3))) STOP 3
r = x%a(x%b (1.4)) ! failed
- if (r .ne. a(b (1.4))) call abort
+ if (r .ne. a(b (1.4))) STOP 4
r = x%a(x%c ()) ! failed
- if (r .ne. a(c (x))) call abort
+ if (r .ne. a(c (x))) STOP 5
call x%d (x%a(1.5)) ! failed
diff --git a/gcc/testsuite/gfortran.dg/class_alias.f90 b/gcc/testsuite/gfortran.dg/class_alias.f90
index baf41c737f9..dfb33bf9b65 100644
--- a/gcc/testsuite/gfortran.dg/class_alias.f90
+++ b/gcc/testsuite/gfortran.dg/class_alias.f90
@@ -87,8 +87,8 @@ use test_module
! pointer -> pointer
! { dg-final { scan-tree-dump-not "par_p\[^\n]*VIEW_CONVERT_EXPR\[^\n]*var_p" "original" } }
call do_it4 (var_p)
- if (var_a%x .ne. 2) call abort()
- if (var_p%x .ne. 2) call abort()
+ if (var_a%x .ne. 2) STOP 1
+ if (var_p%x .ne. 2) STOP 2
deallocate (var_a)
deallocate (var_p)
end
diff --git a/gcc/testsuite/gfortran.dg/class_allocate_1.f03 b/gcc/testsuite/gfortran.dg/class_allocate_1.f03
index 67c8065794b..b2e9dfdc496 100644
--- a/gcc/testsuite/gfortran.dg/class_allocate_1.f03
+++ b/gcc/testsuite/gfortran.dg/class_allocate_1.f03
@@ -38,7 +38,7 @@
i = 3
end select
deallocate(cp)
- if (i /= 1) call abort()
+ if (i /= 1) STOP 1
i = 0
allocate(t2 :: cp)
@@ -51,7 +51,7 @@
i = 3
end select
deallocate(cp)
- if (i /= 2) call abort()
+ if (i /= 2) STOP 2
i = 0
allocate(cp, source = x)
@@ -64,7 +64,7 @@
i = 3
end select
deallocate(cp)
- if (i /= 3) call abort()
+ if (i /= 3) STOP 3
i = 0
allocate(t2 :: cp2)
@@ -81,18 +81,18 @@
end select
deallocate(cp)
deallocate(cp2)
- if (i /= 2) call abort()
+ if (i /= 2) STOP 4
! (2) check initialization (default initialization vs. SOURCE)
allocate(cp)
- if (cp%comp /= 5) call abort()
+ if (cp%comp /= 5) STOP 5
deallocate(cp)
x%comp = 4
allocate(cp, source=x)
- if (cp%comp /= 4) call abort()
+ if (cp%comp /= 4) STOP 6
deallocate(cp)
end
diff --git a/gcc/testsuite/gfortran.dg/class_allocate_10.f03 b/gcc/testsuite/gfortran.dg/class_allocate_10.f03
index 2e4f3b8aa39..ecaad1b2e95 100644
--- a/gcc/testsuite/gfortran.dg/class_allocate_10.f03
+++ b/gcc/testsuite/gfortran.dg/class_allocate_10.f03
@@ -39,14 +39,14 @@ program main
allocate(kernel1(5), kernel2(5),mold=executive_producer%create_show_array (5))
select type(kernel1)
- type is (integrand); if (any (kernel1%variable .ne. 1)) call abort
+ type is (integrand); if (any (kernel1%variable .ne. 1)) STOP 1
end select
deallocate (kernel1)
allocate(kernel1(3),mold=executive_producer%create_show ())
select type(kernel1)
- type is (integrand); if (any (kernel1%variable .ne. 1)) call abort
+ type is (integrand); if (any (kernel1%variable .ne. 1)) STOP 2
end select
deallocate (kernel1)
@@ -57,6 +57,6 @@ program main
allocate(kernel1(3),source = kernel2(3:5))
select type(kernel1)
- type is (integrand); if (any (kernel1%variable .ne. [3,4,5])) call abort
+ type is (integrand); if (any (kernel1%variable .ne. [3,4,5])) STOP 3
end select
end program
diff --git a/gcc/testsuite/gfortran.dg/class_allocate_13.f90 b/gcc/testsuite/gfortran.dg/class_allocate_13.f90
index 64f37dc59b5..b527aea7c5e 100644
--- a/gcc/testsuite/gfortran.dg/class_allocate_13.f90
+++ b/gcc/testsuite/gfortran.dg/class_allocate_13.f90
@@ -26,6 +26,6 @@ program bug
allocate(d%L(2)%B,source=b1) ! wrong code
- if (d%L(2)%B%fields/=5.) call abort()
+ if (d%L(2)%B%fields/=5.) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.dg/class_allocate_14.f90 b/gcc/testsuite/gfortran.dg/class_allocate_14.f90
index 0eed2bd3c85..d2514772a03 100644
--- a/gcc/testsuite/gfortran.dg/class_allocate_14.f90
+++ b/gcc/testsuite/gfortran.dg/class_allocate_14.f90
@@ -11,12 +11,12 @@ contains
subroutine sub
type(t), save, allocatable :: x
class(t), save,allocatable :: y
- if (.not. same_type_as(x,y)) call abort()
+ if (.not. same_type_as(x,y)) STOP 1
end subroutine sub
subroutine sub2
type(t), save, allocatable :: a(:)
class(t), save,allocatable :: b(:)
- if (.not. same_type_as(a,b)) call abort()
+ if (.not. same_type_as(a,b)) STOP 2
end subroutine sub2
end module m
diff --git a/gcc/testsuite/gfortran.dg/class_allocate_15.f90 b/gcc/testsuite/gfortran.dg/class_allocate_15.f90
index d0e85a2a9ba..46cb9c0bc01 100644
--- a/gcc/testsuite/gfortran.dg/class_allocate_15.f90
+++ b/gcc/testsuite/gfortran.dg/class_allocate_15.f90
@@ -13,14 +13,14 @@ call bar()
contains
subroutine foo()
class(t), allocatable :: x
- if(allocated(x)) call abort()
- if(.not.same_type_as(x,y)) call abort()
+ if(allocated(x)) STOP 1
+ if(.not.same_type_as(x,y)) STOP 2
allocate (t2 :: x)
end
subroutine bar()
class(t), allocatable :: x(:)
- if(allocated(x)) call abort()
- if(.not.same_type_as(x,y)) call abort()
+ if(allocated(x)) STOP 3
+ if(.not.same_type_as(x,y)) STOP 4
allocate (t2 :: x(4))
end
end
diff --git a/gcc/testsuite/gfortran.dg/class_allocate_19.f03 b/gcc/testsuite/gfortran.dg/class_allocate_19.f03
index 719be3e0718..6d948efab61 100644
--- a/gcc/testsuite/gfortran.dg/class_allocate_19.f03
+++ b/gcc/testsuite/gfortran.dg/class_allocate_19.f03
@@ -8,12 +8,12 @@ real, target :: e
class(*), allocatable, target :: a(:)
e = 1.0
call add_element_poly(a,e)
-if (size(a) /= 1) call abort()
+if (size(a) /= 1) STOP 1
call add_element_poly(a,e)
-if (size(a) /= 2) call abort()
+if (size(a) /= 2) STOP 2
select type (a)
type is (real)
- if (any (a /= [ 1, 1])) call abort()
+ if (any (a /= [ 1, 1])) STOP 3
end select
contains
subroutine add_element_poly(a,e)
diff --git a/gcc/testsuite/gfortran.dg/class_allocate_21.f90 b/gcc/testsuite/gfortran.dg/class_allocate_21.f90
index a8ed291f8df..122d7cd652d 100644
--- a/gcc/testsuite/gfortran.dg/class_allocate_21.f90
+++ b/gcc/testsuite/gfortran.dg/class_allocate_21.f90
@@ -15,7 +15,7 @@ implicit none
x%i = reshape([( i, i = 1, 9 )], [3, 3])
allocate(z(9), source=reshape(x, (/ 9 /)))
- if (any( z%i /= [( i, i = 1, 9 )])) call abort()
+ if (any( z%i /= [( i, i = 1, 9 )])) STOP 1
deallocate (x, z)
end
diff --git a/gcc/testsuite/gfortran.dg/class_allocate_22.f90 b/gcc/testsuite/gfortran.dg/class_allocate_22.f90
index 5fec72fafe1..589548d58a2 100644
--- a/gcc/testsuite/gfortran.dg/class_allocate_22.f90
+++ b/gcc/testsuite/gfortran.dg/class_allocate_22.f90
@@ -19,8 +19,8 @@ program pr57117
end select
allocate(y, source=transpose(x))
- if (any( ubound(y) /= [6,2])) call abort()
- if (any(reshape(y(:,:)%i, [12]) /= [ 1,3,5,7,9,11, 2,4,6,8,10,12])) call abort()
+ if (any( ubound(y) /= [6,2])) STOP 1
+ if (any(reshape(y(:,:)%i, [12]) /= [ 1,3,5,7,9,11, 2,4,6,8,10,12])) STOP 2
deallocate (x,y)
end
diff --git a/gcc/testsuite/gfortran.dg/class_allocate_3.f03 b/gcc/testsuite/gfortran.dg/class_allocate_3.f03
index c6128a8ab51..e29b1c016a4 100644
--- a/gcc/testsuite/gfortran.dg/class_allocate_3.f03
+++ b/gcc/testsuite/gfortran.dg/class_allocate_3.f03
@@ -18,22 +18,22 @@
select type(m2)
type is (t2)
print *, m2%i, m2%r
- if (m2%i/=54) call abort()
- if (abs(m2%r-384.02)>1E-3) call abort()
+ if (m2%i/=54) STOP 1
+ if (abs(m2%r-384.02)>1E-3) STOP 2
m2%i = 42
m2%r = -4.0
class default
- call abort()
+ STOP 3
end select
allocate(m1, source=m2)
select type(m1)
type is (t2)
print *, m1%i, m1%r
- if (m1%i/=42) call abort()
- if (abs(m1%r+4.0)>1E-3) call abort()
+ if (m1%i/=42) STOP 4
+ if (abs(m1%r+4.0)>1E-3) STOP 5
class default
- call abort()
+ STOP 6
end select
end
diff --git a/gcc/testsuite/gfortran.dg/class_allocate_4.f03 b/gcc/testsuite/gfortran.dg/class_allocate_4.f03
index d1ebf8cc915..0bb5b51d4d7 100644
--- a/gcc/testsuite/gfortran.dg/class_allocate_4.f03
+++ b/gcc/testsuite/gfortran.dg/class_allocate_4.f03
@@ -14,10 +14,10 @@ end type t2
class(t), allocatable :: a
allocate(a, source=t2(1,2))
print *,a%i
-if(a%i /= 1) call abort()
+if(a%i /= 1) STOP 1
select type (a)
type is (t2)
print *,a%j
- if(a%j /= 2) call abort()
+ if(a%j /= 2) STOP 2
end select
end
diff --git a/gcc/testsuite/gfortran.dg/class_allocate_5.f90 b/gcc/testsuite/gfortran.dg/class_allocate_5.f90
index 592161ef519..3af3e84953f 100644
--- a/gcc/testsuite/gfortran.dg/class_allocate_5.f90
+++ b/gcc/testsuite/gfortran.dg/class_allocate_5.f90
@@ -29,6 +29,6 @@ program bug23
write(*,*) a%irp(:)
- if (any (a%irp /= [1,3,4,5])) call abort()
+ if (any (a%irp /= [1,3,4,5])) STOP 1
end program bug23
diff --git a/gcc/testsuite/gfortran.dg/class_allocate_6.f03 b/gcc/testsuite/gfortran.dg/class_allocate_6.f03
index 8b96d1db246..e8e6013e851 100644
--- a/gcc/testsuite/gfortran.dg/class_allocate_6.f03
+++ b/gcc/testsuite/gfortran.dg/class_allocate_6.f03
@@ -22,7 +22,7 @@ select type(x)
x%a = [ (i, i = 1,10) ]
print '(*(i3))', x%a
class default
- call abort()
+ STOP 1
end select
allocate(y, source=x)
@@ -32,15 +32,15 @@ select type(x)
x%a = [ (i, i = 11,20) ]
print '(*(i3))', x%a
class default
- call abort()
+ STOP 2
end select
select type(y)
type is (t2)
print '(*(i3))', y%a
- if (any (y%a /= [ (i, i = 1,10) ])) call abort()
+ if (any (y%a /= [ (i, i = 1,10) ])) STOP 3
class default
- call abort()
+ STOP 4
end select
end
diff --git a/gcc/testsuite/gfortran.dg/class_allocate_7.f03 b/gcc/testsuite/gfortran.dg/class_allocate_7.f03
index ee01faddf44..5150206489d 100644
--- a/gcc/testsuite/gfortran.dg/class_allocate_7.f03
+++ b/gcc/testsuite/gfortran.dg/class_allocate_7.f03
@@ -29,5 +29,5 @@ program main
type(show_producer) :: executive_producer
allocate(kernel,source=executive_producer%create_show ())
- if (kernel%variable .ne. 99) call abort
+ if (kernel%variable .ne. 99) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.dg/class_allocate_8.f03 b/gcc/testsuite/gfortran.dg/class_allocate_8.f03
index 1abc55776f8..cc9748487ce 100644
--- a/gcc/testsuite/gfortran.dg/class_allocate_8.f03
+++ b/gcc/testsuite/gfortran.dg/class_allocate_8.f03
@@ -39,13 +39,13 @@ program main
allocate(kernel(5),source=executive_producer%create_show_array (5))
select type(kernel)
- type is (integrand); if (any (kernel%variable .ne. [1,2,3,4,5])) call abort
+ type is (integrand); if (any (kernel%variable .ne. [1,2,3,4,5])) STOP 1
end select
deallocate (kernel)
allocate(kernel(3),source=executive_producer%create_show ())
select type(kernel)
- type is (integrand); if (any (kernel%variable .ne. -1)) call abort
+ type is (integrand); if (any (kernel%variable .ne. -1)) STOP 2
end select
end program
diff --git a/gcc/testsuite/gfortran.dg/class_allocate_9.f03 b/gcc/testsuite/gfortran.dg/class_allocate_9.f03
index 0c7b1f79cef..7d15a21a880 100644
--- a/gcc/testsuite/gfortran.dg/class_allocate_9.f03
+++ b/gcc/testsuite/gfortran.dg/class_allocate_9.f03
@@ -29,6 +29,6 @@ program main
type(show_producer) :: executive_producer
allocate(kernel1, kernel2,mold=executive_producer%create_show ())
- if (kernel1%variable .ne. -1) call abort
- if (kernel2%variable .ne. -1) call abort
+ if (kernel1%variable .ne. -1) STOP 1
+ if (kernel2%variable .ne. -1) STOP 2
end program
diff --git a/gcc/testsuite/gfortran.dg/class_array_1.f03 b/gcc/testsuite/gfortran.dg/class_array_1.f03
index 32a0e54bf0a..4458982764c 100644
--- a/gcc/testsuite/gfortran.dg/class_array_1.f03
+++ b/gcc/testsuite/gfortran.dg/class_array_1.f03
@@ -21,14 +21,14 @@
call display(x, [1], [4], t2 = [(type2(i,42.0 + float (i)), i = 1, 4)])
call display(x, [1], [4], t2 = [(type2(111,99.0), i = 1, 4)])
- if (any (disp (x) .ne. [99.0,99.0,99.0,99.0])) call abort
+ if (any (disp (x) .ne. [99.0,99.0,99.0,99.0])) STOP 1
if (allocated (x)) deallocate (x)
allocate(x(1:4), source = type1(42))
call display(x, [1], [4], t1 = [(type1(42), i = 1, 4)])
call display(x, [1], [4], t1 = [type1(42),type1(99),type1(42),type1(42)])
- if (any (disp (x) .ne. [0.0,0.0,0.0,0.0])) call abort
+ if (any (disp (x) .ne. [0.0,0.0,0.0,0.0])) STOP 2
contains
subroutine display(x, lower, upper, t1, t2)
@@ -39,17 +39,17 @@ contains
select type (x)
type is (type1)
if (present (t1)) then
- if (any (x%i .ne. t1%i)) call abort
+ if (any (x%i .ne. t1%i)) STOP 3
else
- call abort
+ STOP 4
end if
x(2)%i = 99
type is (type2)
if (present (t2)) then
- if (any (x%i .ne. t2%i)) call abort
- if (any (x%r .ne. t2%r)) call abort
+ if (any (x%i .ne. t2%i)) STOP 5
+ if (any (x%r .ne. t2%r)) STOP 6
else
- call abort
+ STOP 7
end if
x%i = 111
x%r = 99.0
@@ -59,8 +59,8 @@ contains
subroutine bounds (x, lower, upper)
class(type1), allocatable, dimension (:) :: x
integer, dimension (:) :: lower, upper
- if (any (lower .ne. lbound (x))) call abort
- if (any (upper .ne. ubound (x))) call abort
+ if (any (lower .ne. lbound (x))) STOP 8
+ if (any (upper .ne. ubound (x))) STOP 9
end subroutine
elemental function disp(y) result(ans)
class(type1), intent(in) :: y
diff --git a/gcc/testsuite/gfortran.dg/class_array_14.f90 b/gcc/testsuite/gfortran.dg/class_array_14.f90
index ad227a9074c..08a0e8ae7d5 100644
--- a/gcc/testsuite/gfortran.dg/class_array_14.f90
+++ b/gcc/testsuite/gfortran.dg/class_array_14.f90
@@ -15,7 +15,7 @@ subroutine test1()
x%i = 77
call f(x)
- if (x%i /= 6) call abort ()
+ if (x%i /= 6) STOP 1
call f()
contains
subroutine f(y1)
@@ -32,11 +32,11 @@ subroutine test2()
class(mytype), allocatable :: x,y
allocate (mytype2 :: x)
call g(x)
- if (allocated (x) .or. .not. same_type_as (x,y)) call abort()
+ if (allocated (x) .or. .not. same_type_as (x,y)) STOP 2
allocate (mytype2 :: x)
call h(x)
- if (allocated (x) .or. .not. same_type_as (x,y)) call abort()
+ if (allocated (x) .or. .not. same_type_as (x,y)) STOP 3
call h()
contains
diff --git a/gcc/testsuite/gfortran.dg/class_array_15.f03 b/gcc/testsuite/gfortran.dg/class_array_15.f03
index fd9e04c2828..4e4c0a64ded 100644
--- a/gcc/testsuite/gfortran.dg/class_array_15.f03
+++ b/gcc/testsuite/gfortran.dg/class_array_15.f03
@@ -68,7 +68,7 @@ subroutine pr53876
CONTAINS
SUBROUTINE display_indv(self)
CLASS(individual), INTENT(IN) :: self
- if (any(self%genes .ne. [999,9999]) )call abort
+ if (any(self%genes .ne. [999,9999]) )STOP 1
END SUBROUTINE
END
@@ -89,9 +89,9 @@ subroutine pr54990
allocate (a%cBh(2), source = [(ncBhStde(i*99, [1,2]), i = 1,2)])
select type (q => a%cBh(2)) ! Similarly, reference 2nd element to test offset
type is (ncBhStd)
- call abort
+ STOP 2
type is (ncBhStde)
- if (q%i .ne. 198) call abort ! This tests that the component really gets the
+ if (q%i .ne. 198) STOP 3! This tests that the component really gets the
end select ! language specific flag denoting a class type
end
@@ -104,15 +104,15 @@ subroutine pr54992 ! This test remains as the original.
allocate(b%cBh(1),source=defaultBhC)
b%cBh(1)%hostNode => b
! #1 this worked
- if (loc(b) .ne. loc(b%cBh(1)%hostNode)) call abort
+ if (loc(b) .ne. loc(b%cBh(1)%hostNode)) STOP 4
call Node_C_Bh_Move(b)
! #2 this worked
- if (loc(b) .ne. loc(b%cBh(1)%hostNode)) call abort
- if (loc(b) .ne. loc(b%cBh(2)%hostNode)) call abort
+ if (loc(b) .ne. loc(b%cBh(1)%hostNode)) STOP 5
+ if (loc(b) .ne. loc(b%cBh(2)%hostNode)) STOP 6
! #3 this did not
bh => bhGet(b,instance=1)
- if (loc (b) .ne. loc(bh%hostNode)) call abort
+ if (loc (b) .ne. loc(bh%hostNode)) STOP 7
bh => bhGet(b,instance=2)
- if (loc (b) .ne. loc(bh%hostNode)) call abort
+ if (loc (b) .ne. loc(bh%hostNode)) STOP 8
end
! { dg-final { scan-tree-dump-times "builtin_free" 12 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/class_array_16.f90 b/gcc/testsuite/gfortran.dg/class_array_16.f90
index 3630ad19234..14ed8426936 100644
--- a/gcc/testsuite/gfortran.dg/class_array_16.f90
+++ b/gcc/testsuite/gfortran.dg/class_array_16.f90
@@ -15,8 +15,8 @@ contains
subroutine sub(x)
class(t), allocatable, intent(out) :: x(:)
- if (allocated (x)) call abort()
- if (.not. same_type_as(x, var_t)) call abort()
+ if (allocated (x)) STOP 1
+ if (.not. same_type_as(x, var_t)) STOP 2
allocate (t2 :: x(5))
end subroutine sub
@@ -25,8 +25,8 @@ contains
class(t), allocatable, OPTIONAL, intent(out) :: x(:)
if (.not. present(x)) return
- if (allocated (x)) call abort()
- if (.not. same_type_as(x, var_t)) call abort()
+ if (allocated (x)) STOP 3
+ if (.not. same_type_as(x, var_t)) STOP 4
allocate (t2 :: x(5))
end subroutine sub2
@@ -36,34 +36,34 @@ use m
implicit none
class(t), save, allocatable :: y(:)
-if (allocated (y)) call abort()
-if (.not. same_type_as(y,var_t)) call abort()
+if (allocated (y)) STOP 5
+if (.not. same_type_as(y,var_t)) STOP 6
call sub(y)
-if (.not.allocated(y)) call abort()
-if (.not. same_type_as(y, var_t2)) call abort()
-if (size (y) /= 5) call abort()
+if (.not.allocated(y)) STOP 7
+if (.not. same_type_as(y, var_t2)) STOP 8
+if (size (y) /= 5) STOP 9
call sub(y)
-if (.not.allocated(y)) call abort()
-if (.not. same_type_as(y, var_t2)) call abort()
-if (size (y) /= 5) call abort()
+if (.not.allocated(y)) STOP 10
+if (.not. same_type_as(y, var_t2)) STOP 11
+if (size (y) /= 5) STOP 12
deallocate (y)
-if (allocated (y)) call abort()
-if (.not. same_type_as(y,var_t)) call abort()
+if (allocated (y)) STOP 13
+if (.not. same_type_as(y,var_t)) STOP 14
call sub2()
call sub2(y)
-if (.not.allocated(y)) call abort()
-if (.not. same_type_as(y, var_t2)) call abort()
-if (size (y) /= 5) call abort()
+if (.not.allocated(y)) STOP 15
+if (.not. same_type_as(y, var_t2)) STOP 16
+if (size (y) /= 5) STOP 17
call sub2(y)
-if (.not.allocated(y)) call abort()
-if (.not. same_type_as(y, var_t2)) call abort()
-if (size (y) /= 5) call abort()
+if (.not.allocated(y)) STOP 18
+if (.not. same_type_as(y, var_t2)) STOP 19
+if (size (y) /= 5) STOP 20
end
! { dg-final { scan-tree-dump-times "__builtin_free" 5 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/class_array_2.f03 b/gcc/testsuite/gfortran.dg/class_array_2.f03
index 68f1b71e552..2bc02765d9c 100644
--- a/gcc/testsuite/gfortran.dg/class_array_2.f03
+++ b/gcc/testsuite/gfortran.dg/class_array_2.f03
@@ -21,14 +21,14 @@
call display(x, [1], [4], t2 = [(type2(i,42.0 + float (i)), i = 1, 4)])
call display(x, [1], [4], t2 = [(type2(111,99.0), i = 1, 4)])
- if (any (disp (x) .ne. [99.0,99.0,99.0,99.0])) call abort
+ if (any (disp (x) .ne. [99.0,99.0,99.0,99.0])) STOP 1
if (associated (x)) deallocate (x)
allocate(x(1:4), source = type1(42))
call display(x, [1], [4], t1 = [(type1(42), i = 1, 4)])
call display(x, [1], [4], t1 = [type1(42),type1(99),type1(42),type1(42)])
- if (any (disp (x) .ne. [0.0,0.0,0.0,0.0])) call abort
+ if (any (disp (x) .ne. [0.0,0.0,0.0,0.0])) STOP 2
if (associated (x)) deallocate (x)
@@ -41,17 +41,17 @@ contains
select type (x)
type is (type1)
if (present (t1)) then
- if (any (x%i .ne. t1%i)) call abort
+ if (any (x%i .ne. t1%i)) STOP 3
else
- call abort
+ STOP 4
end if
x(2)%i = 99
type is (type2)
if (present (t2)) then
- if (any (x%i .ne. t2%i)) call abort
- if (any (x%r .ne. t2%r)) call abort
+ if (any (x%i .ne. t2%i)) STOP 5
+ if (any (x%r .ne. t2%r)) STOP 6
else
- call abort
+ STOP 7
end if
x%i = 111
x%r = 99.0
@@ -61,8 +61,8 @@ contains
subroutine bounds (x, lower, upper)
class(type1), pointer, dimension (:) :: x
integer, dimension (:) :: lower, upper
- if (any (lower .ne. lbound (x))) call abort
- if (any (upper .ne. ubound (x))) call abort
+ if (any (lower .ne. lbound (x))) STOP 8
+ if (any (upper .ne. ubound (x))) STOP 9
end subroutine
elemental function disp(y) result(ans)
class(type1), intent(in) :: y
diff --git a/gcc/testsuite/gfortran.dg/class_array_20.f03 b/gcc/testsuite/gfortran.dg/class_array_20.f03
index b4be0457966..8a718bab32e 100644
--- a/gcc/testsuite/gfortran.dg/class_array_20.f03
+++ b/gcc/testsuite/gfortran.dg/class_array_20.f03
@@ -41,9 +41,9 @@ contains
subroutine copyFromClassArray(classarray)
class (Foo), intent(in) :: classarray(:)
- if (lbound(classarray, 1) .ne. 1) call abort()
- if (ubound(classarray, 1) .ne. 2) call abort()
- if (size(classarray) .ne. 2) call abort()
+ if (lbound(classarray, 1) .ne. 1) STOP 1
+ if (ubound(classarray, 1) .ne. 2) STOP 2
+ if (size(classarray) .ne. 2) STOP 3
end subroutine
subroutine AddArray(P)
@@ -54,46 +54,46 @@ contains
select type (P)
type is (double precision)
- if (abs(P(1)-3.d0) .gt. 1.d-8) call abort()
- if (abs(P(2)-4.d0) .gt. 1.d-8) call abort()
+ if (abs(P(1)-3.d0) .gt. 1.d-8) STOP 4
+ if (abs(P(2)-4.d0) .gt. 1.d-8) STOP 5
class default
- call abort()
+ STOP 6
end select
select type (Pt)
type is (double precision)
- if (abs(Pt(1)-3.d0) .gt. 1.d-8) call abort()
- if (abs(Pt(2)-4.d0) .gt. 1.d-8) call abort()
+ if (abs(Pt(1)-3.d0) .gt. 1.d-8) STOP 7
+ if (abs(Pt(2)-4.d0) .gt. 1.d-8) STOP 8
class default
- call abort()
+ STOP 9
end select
end subroutine
subroutine W(ar)
class(*), intent(in) :: ar(:)
- if (lbound(ar, 1) /= 1) call abort()
+ if (lbound(ar, 1) /= 1) STOP 10
select type (ar)
type is (integer)
! The indeces 1:2 are essential here, or else one would not
! note, that the array internally starts at 0, although the
! check for the lbound above went fine.
- if (any (ar(1:2) .ne. [3, 4])) call abort()
+ if (any (ar(1:2) .ne. [3, 4])) STOP 11
class default
- call abort()
+ STOP 12
end select
end subroutine
subroutine WtwoD(ar)
class(*), intent(in) :: ar(:,:)
- if (any (lbound(ar) /= [1, 1])) call abort()
+ if (any (lbound(ar) /= [1, 1])) STOP 13
select type (ar)
type is (integer)
if (any (reshape(ar(1:2,1:3), [6]) .ne. [3, 4, 5, 5, 6, 7])) &
- call abort()
+ STOP 14
class default
- call abort()
+ STOP 15
end select
end subroutine
end program class_array_20
diff --git a/gcc/testsuite/gfortran.dg/class_array_21.f03 b/gcc/testsuite/gfortran.dg/class_array_21.f03
index ed03ed8d3f4..d9488e5d3aa 100644
--- a/gcc/testsuite/gfortran.dg/class_array_21.f03
+++ b/gcc/testsuite/gfortran.dg/class_array_21.f03
@@ -62,14 +62,14 @@ program test
i_p => o%arr
call o%P(i_p)
- if (any(o%arr%i /= reshape([9,42,42,42],[2,2]))) call abort()
+ if (any(o%arr%i /= reshape([9,42,42,42],[2,2]))) STOP 1
do l= 1, 10
do i= 1, 2
do j= 1,2
if ((i == 1 .and. j == 1 .and. l == 5 .and. &
o%arr(i,j)%a(5) /= 1) &
.or. (.not. (i == 1 .and. j == 1 .and. l == 5) &
- .and. o%arr(i,j)%a(l) /= 72)) call abort()
+ .and. o%arr(i,j)%a(l) /= 72)) STOP 2
end do
end do
end do
@@ -83,7 +83,7 @@ program test
if ((i == 1 .and. j == 1 .and. l == 5 .and. &
i_a(i,j)%a(5) /= 1) &
.or. (.not. (i == 1 .and. j == 1 .and. l == 5) &
- .and. i_a(i,j)%a(l) /= 72)) call abort()
+ .and. i_a(i,j)%a(l) /= 72)) STOP 3
end do
end do
end do
@@ -91,7 +91,7 @@ program test
i_p%i = 4
call indir(o, i_p)
- if (any(o%arr%i /= reshape([9,42,42,42],[2,2]))) call abort()
+ if (any(o%arr%i /= reshape([9,42,42,42],[2,2]))) STOP 4
end program test
! vim:ts=2:sts=2:cindent:sw=2:tw=80:
diff --git a/gcc/testsuite/gfortran.dg/class_array_3.f03 b/gcc/testsuite/gfortran.dg/class_array_3.f03
index cab2b1be874..27a94dca1ed 100644
--- a/gcc/testsuite/gfortran.dg/class_array_3.f03
+++ b/gcc/testsuite/gfortran.dg/class_array_3.f03
@@ -134,5 +134,5 @@ program main
! print *, "Before qsort: ", A%disp()
call qsort(A)
! print *, "After qsort: ", A%disp()
- if (any (A%disp() .ne. [2,3,4,5,7])) call abort
+ if (any (A%disp() .ne. [2,3,4,5,7])) STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/class_array_4.f03 b/gcc/testsuite/gfortran.dg/class_array_4.f03
index 46b254db676..ee5dde39441 100644
--- a/gcc/testsuite/gfortran.dg/class_array_4.f03
+++ b/gcc/testsuite/gfortran.dg/class_array_4.f03
@@ -21,5 +21,5 @@ end module m
type(t) :: x(3)
integer :: n(3) = [0,100,200]
call x(:)%foo(n)
- if (any(n .ne. [99,199,299])) call abort
+ if (any(n .ne. [99,199,299])) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/class_array_7.f03 b/gcc/testsuite/gfortran.dg/class_array_7.f03
index e6d79d8f6ef..5dd59d8ab65 100644
--- a/gcc/testsuite/gfortran.dg/class_array_7.f03
+++ b/gcc/testsuite/gfortran.dg/class_array_7.f03
@@ -29,7 +29,7 @@ contains
class(base_type), dimension(:), allocatable, intent(inout) :: a
class(base_type), dimension(:), allocatable :: tmp
allocate (tmp (2 * size (a))) ! how to alloc b with same type as a ?
- if (trim (print_type ("tmp", tmp)) .ne. "tmp is base_type") call abort
+ if (trim (print_type ("tmp", tmp)) .ne. "tmp is base_type") STOP 1
tmp(:size(a)) = a ! polymorphic l.h.s.
call move_alloc (from=tmp, to=a)
end subroutine reallocate
@@ -51,8 +51,8 @@ program main
class(base_type), dimension(:), allocatable :: a
allocate (extended_type :: a(10))
- if (trim (print_type ("a", a)) .ne. "a is extended_type") call abort
+ if (trim (print_type ("a", a)) .ne. "a is extended_type") STOP 2
call reallocate (a)
- if (trim (print_type ("a", a)) .ne. "a is base_type") call abort
+ if (trim (print_type ("a", a)) .ne. "a is base_type") STOP 3
deallocate (a)
end program main
diff --git a/gcc/testsuite/gfortran.dg/class_array_8.f03 b/gcc/testsuite/gfortran.dg/class_array_8.f03
index 20c57ec03ff..1e28c88ac3b 100644
--- a/gcc/testsuite/gfortran.dg/class_array_8.f03
+++ b/gcc/testsuite/gfortran.dg/class_array_8.f03
@@ -13,6 +13,6 @@
end type
type(desc_type) :: desc
- if (allocated(desc%indxmap)) call abort()
+ if (allocated(desc%indxmap)) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/class_array_9.f03 b/gcc/testsuite/gfortran.dg/class_array_9.f03
index c771c61a129..c0f267c47fc 100644
--- a/gcc/testsuite/gfortran.dg/class_array_9.f03
+++ b/gcc/testsuite/gfortran.dg/class_array_9.f03
@@ -29,16 +29,16 @@ end module
use m
class(t1), allocatable :: x(:)
allocate (x(4), source = [(t1 (i), i=1,4)])
- if (any (x%disp () .ne. [1,2,3,4])) call abort
- if (any (x(2:3)%disp () .ne. [2,3])) call abort
- if (any (x(4:3:-1)%disp () .ne. [4,3])) call abort
- if (x(4)%disp () .ne. 4) call abort
+ if (any (x%disp () .ne. [1,2,3,4])) STOP 1
+ if (any (x(2:3)%disp () .ne. [2,3])) STOP 2
+ if (any (x(4:3:-1)%disp () .ne. [4,3])) STOP 3
+ if (x(4)%disp () .ne. 4) STOP 4
deallocate (x)
allocate (x(4), source = [(t2 (2 * i, real (i) + 0.333), i=1,4)])
- if (any (x%disp () .ne. [1,2,3,4])) call abort
- if (any (x(2:3)%disp () .ne. [2,3])) call abort
- if (any (x(4:3:-1)%disp () .ne. [4,3])) call abort
- if (x(4)%disp () .ne. 4) call abort
+ if (any (x%disp () .ne. [1,2,3,4])) STOP 5
+ if (any (x(2:3)%disp () .ne. [2,3])) STOP 6
+ if (any (x(4:3:-1)%disp () .ne. [4,3])) STOP 7
+ if (x(4)%disp () .ne. 4) STOP 8
end
diff --git a/gcc/testsuite/gfortran.dg/class_defined_operator_1.f03 b/gcc/testsuite/gfortran.dg/class_defined_operator_1.f03
index 008739e3f98..1c2f087cb91 100644
--- a/gcc/testsuite/gfortran.dg/class_defined_operator_1.f03
+++ b/gcc/testsuite/gfortran.dg/class_defined_operator_1.f03
@@ -84,15 +84,15 @@ program main
! foo's assign negates, whilst its '*' negates and mutliplies.
unitf%foo_x = 1
call rescale(unitf, 42)
- if (unitf%foo_x .ne. 42) call abort
+ if (unitf%foo_x .ne. 42) STOP 1
! bar's assign negates foo_x, whilst its '*' copies foo_x
! and does a multiply by twice factor.
unitb%foo_x = 1
unitb%bar_x = 2
call rescale(unitb, 3)
- if (unitb%bar_x .ne. 12) call abort
- if (unitb%foo_x .ne. -1) call abort
+ if (unitb%bar_x .ne. 12) STOP 2
+ if (unitb%foo_x .ne. -1) STOP 3
contains
subroutine rescale(this,scale)
class(foo) ,intent(inout) :: this
diff --git a/gcc/testsuite/gfortran.dg/class_dummy_1.f03 b/gcc/testsuite/gfortran.dg/class_dummy_1.f03
index 950379027fd..2d55c8ce836 100644
--- a/gcc/testsuite/gfortran.dg/class_dummy_1.f03
+++ b/gcc/testsuite/gfortran.dg/class_dummy_1.f03
@@ -19,12 +19,12 @@
y%a = 44
y%b = 55
call intent_out (y)
- if (y%a/=1 .or. y%b/=3) call abort()
+ if (y%a/=1 .or. y%b/=3) STOP 1
y%a = 66
y%b = 77
call intent_out_unused (y)
- if (y%a/=1 .or. y%b/=3) call abort()
+ if (y%a/=1 .or. y%b/=3) STOP 2
contains
@@ -32,7 +32,7 @@ contains
class(t), intent(out) :: x
select type (x)
type is (t2)
- if (x%a/=1 .or. x%b/=3) call abort()
+ if (x%a/=1 .or. x%b/=3) STOP 3
end select
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/class_optional_1.f90 b/gcc/testsuite/gfortran.dg/class_optional_1.f90
index 2b408dbda05..86c1f9ebc76 100644
--- a/gcc/testsuite/gfortran.dg/class_optional_1.f90
+++ b/gcc/testsuite/gfortran.dg/class_optional_1.f90
@@ -21,73 +21,73 @@
call suba(alloc=.false., prsnt=.false.)
call suba(xa, alloc=.false., prsnt=.true.)
- if (.not. allocated (xa)) call abort ()
- if (.not. allocated (xa%i)) call abort ()
- if (xa%i /= 5) call abort ()
+ if (.not. allocated (xa)) STOP 1
+ if (.not. allocated (xa%i)) STOP 2
+ if (xa%i /= 5) STOP 3
xa%i = -3
call suba(xa, alloc=.true., prsnt=.true.)
- if (allocated (xa)) call abort ()
+ if (allocated (xa)) STOP 4
call suba2(alloc=.false., prsnt=.false.)
call suba2(xa2, alloc=.false., prsnt=.true.)
- if (.not. allocated (xa2)) call abort ()
- if (size (xa2) /= 1) call abort ()
- if (.not. allocated (xa2(1)%i)) call abort ()
- if (xa2(1)%i /= 5) call abort ()
+ if (.not. allocated (xa2)) STOP 5
+ if (size (xa2) /= 1) STOP 6
+ if (.not. allocated (xa2(1)%i)) STOP 7
+ if (xa2(1)%i /= 5) STOP 8
xa2(1)%i = -3
call suba2(xa2, alloc=.true., prsnt=.true.)
- if (allocated (xa2)) call abort ()
+ if (allocated (xa2)) STOP 9
call subp(alloc=.false., prsnt=.false.)
call subp(xp, alloc=.false., prsnt=.true.)
- if (.not. associated (xp)) call abort ()
- if (.not. allocated (xp%i)) call abort ()
- if (xp%i /= 5) call abort ()
+ if (.not. associated (xp)) STOP 10
+ if (.not. allocated (xp%i)) STOP 11
+ if (xp%i /= 5) STOP 12
xp%i = -3
call subp(xp, alloc=.true., prsnt=.true.)
- if (associated (xp)) call abort ()
+ if (associated (xp)) STOP 13
call subp2(alloc=.false., prsnt=.false.)
call subp2(xp2, alloc=.false., prsnt=.true.)
- if (.not. associated (xp2)) call abort ()
- if (size (xp2) /= 1) call abort ()
- if (.not. allocated (xp2(1)%i)) call abort ()
- if (xp2(1)%i /= 5) call abort ()
+ if (.not. associated (xp2)) STOP 14
+ if (size (xp2) /= 1) STOP 15
+ if (.not. allocated (xp2(1)%i)) STOP 16
+ if (xp2(1)%i /= 5) STOP 17
xp2(1)%i = -3
call subp2(xp2, alloc=.true., prsnt=.true.)
- if (associated (xp2)) call abort ()
+ if (associated (xp2)) STOP 18
call subac(alloc=.false., prsnt=.false.)
call subac(xac, alloc=.false., prsnt=.true.)
- if (.not. allocated (xac)) call abort ()
- if (.not. allocated (xac%i)) call abort ()
- if (xac%i /= 5) call abort ()
+ if (.not. allocated (xac)) STOP 19
+ if (.not. allocated (xac%i)) STOP 20
+ if (xac%i /= 5) STOP 21
xac%i = -3
call subac(xac, alloc=.true., prsnt=.true.)
- if (allocated (xac)) call abort ()
+ if (allocated (xac)) STOP 22
call suba2c(alloc=.false., prsnt=.false.)
call suba2c(xa2c, alloc=.false., prsnt=.true.)
- if (.not. allocated (xa2c)) call abort ()
- if (size (xa2c) /= 1) call abort ()
- if (.not. allocated (xa2c(1)%i)) call abort ()
- if (xa2c(1)%i /= 5) call abort ()
+ if (.not. allocated (xa2c)) STOP 23
+ if (size (xa2c) /= 1) STOP 24
+ if (.not. allocated (xa2c(1)%i)) STOP 25
+ if (xa2c(1)%i /= 5) STOP 26
xa2c(1)%i = -3
call suba2c(xa2c, alloc=.true., prsnt=.true.)
- if (allocated (xa2c)) call abort ()
+ if (allocated (xa2c)) STOP 27
contains
subroutine suba2c(x, prsnt, alloc)
class(t), optional, allocatable :: x(:)[:]
logical prsnt, alloc
- if (present (x) .neqv. prsnt) call abort ()
+ if (present (x) .neqv. prsnt) STOP 28
if (prsnt) then
- if (alloc .neqv. allocated(x)) call abort ()
+ if (alloc .neqv. allocated(x)) STOP 29
if (.not. allocated (x)) then
allocate (x(1)[*])
x(1)%i = 5
else
- if (x(1)%i /= -3) call abort()
+ if (x(1)%i /= -3) STOP 30
deallocate (x)
end if
end if
@@ -96,14 +96,14 @@ contains
subroutine subac(x, prsnt, alloc)
class(t), optional, allocatable :: x[:]
logical prsnt, alloc
- if (present (x) .neqv. prsnt) call abort ()
+ if (present (x) .neqv. prsnt) STOP 31
if (present (x)) then
- if (alloc .neqv. allocated(x)) call abort ()
+ if (alloc .neqv. allocated(x)) STOP 32
if (.not. allocated (x)) then
allocate (x[*])
x%i = 5
else
- if (x%i /= -3) call abort()
+ if (x%i /= -3) STOP 33
deallocate (x)
end if
end if
@@ -112,14 +112,14 @@ contains
subroutine suba2(x, prsnt, alloc)
class(t), optional, allocatable :: x(:)
logical prsnt, alloc
- if (present (x) .neqv. prsnt) call abort ()
+ if (present (x) .neqv. prsnt) STOP 34
if (prsnt) then
- if (alloc .neqv. allocated(x)) call abort ()
+ if (alloc .neqv. allocated(x)) STOP 35
if (.not. allocated (x)) then
allocate (x(1))
x(1)%i = 5
else
- if (x(1)%i /= -3) call abort()
+ if (x(1)%i /= -3) STOP 36
deallocate (x)
end if
end if
@@ -128,14 +128,14 @@ contains
subroutine suba(x, prsnt, alloc)
class(t), optional, allocatable :: x
logical prsnt, alloc
- if (present (x) .neqv. prsnt) call abort ()
+ if (present (x) .neqv. prsnt) STOP 37
if (present (x)) then
- if (alloc .neqv. allocated(x)) call abort ()
+ if (alloc .neqv. allocated(x)) STOP 38
if (.not. allocated (x)) then
allocate (x)
x%i = 5
else
- if (x%i /= -3) call abort()
+ if (x%i /= -3) STOP 39
deallocate (x)
end if
end if
@@ -144,14 +144,14 @@ contains
subroutine subp2(x, prsnt, alloc)
class(t), optional, pointer :: x(:)
logical prsnt, alloc
- if (present (x) .neqv. prsnt) call abort ()
+ if (present (x) .neqv. prsnt) STOP 40
if (present (x)) then
- if (alloc .neqv. associated(x)) call abort ()
+ if (alloc .neqv. associated(x)) STOP 41
if (.not. associated (x)) then
allocate (x(1))
x(1)%i = 5
else
- if (x(1)%i /= -3) call abort()
+ if (x(1)%i /= -3) STOP 42
deallocate (x)
end if
end if
@@ -160,14 +160,14 @@ contains
subroutine subp(x, prsnt, alloc)
class(t), optional, pointer :: x
logical prsnt, alloc
- if (present (x) .neqv. prsnt) call abort ()
+ if (present (x) .neqv. prsnt) STOP 43
if (present (x)) then
- if (alloc .neqv. associated(x)) call abort ()
+ if (alloc .neqv. associated(x)) STOP 44
if (.not. associated (x)) then
allocate (x)
x%i = 5
else
- if (x%i /= -3) call abort()
+ if (x%i /= -3) STOP 45
deallocate (x)
end if
end if
diff --git a/gcc/testsuite/gfortran.dg/class_optional_2.f90 b/gcc/testsuite/gfortran.dg/class_optional_2.f90
index 3472eaa9735..0aa200fd1d6 100644
--- a/gcc/testsuite/gfortran.dg/class_optional_2.f90
+++ b/gcc/testsuite/gfortran.dg/class_optional_2.f90
@@ -262,55 +262,55 @@ contains
subroutine s2(x)
class(t), intent(in), optional :: x
- if (present (x)) call abort ()
+ if (present (x)) STOP 1
!print *, present(x)
end subroutine s2
subroutine s2p(x,psnt)
class(t), intent(in), pointer, optional :: x
logical psnt
- if (present (x).neqv. psnt) call abort ()
+ if (present (x).neqv. psnt) STOP 2
!print *, present(x)
end subroutine s2p
subroutine s2caf(x)
class(t), intent(in), optional :: x[*]
- if (present (x)) call abort ()
+ if (present (x)) STOP 3
!print *, present(x)
end subroutine s2caf
subroutine s2t(x)
type(t), intent(in), optional :: x
- if (present (x)) call abort ()
+ if (present (x)) STOP 4
!print *, present(x)
end subroutine s2t
subroutine s2t2(x)
type(t2), intent(in), optional :: x
- if (present (x)) call abort ()
+ if (present (x)) STOP 5
!print *, present(x)
end subroutine s2t2
subroutine s2tp(x, psnt)
type(t), pointer, intent(in), optional :: x
logical psnt
- if (present (x).neqv. psnt) call abort ()
+ if (present (x).neqv. psnt) STOP 6
!print *, present(x)
end subroutine s2tp
subroutine s2t2p(x, psnt)
type(t2), pointer, intent(in), optional :: x
logical psnt
- if (present (x).neqv. psnt) call abort ()
+ if (present (x).neqv. psnt) STOP 7
!print *, present(x)
end subroutine s2t2p
impure elemental subroutine s2elem(x)
class(t), intent(in), optional :: x
- if (present (x)) call abort ()
+ if (present (x)) STOP 8
!print *, present(x)
end subroutine s2elem
impure elemental subroutine s2elem_t(x)
type(t), intent(in), optional :: x
- if (present (x)) call abort ()
+ if (present (x)) STOP 9
!print *, present(x)
end subroutine s2elem_t
impure elemental subroutine s2elem_t2(x)
type(t2), intent(in), optional :: x
- if (present (x)) call abort ()
+ if (present (x)) STOP 10
!print *, present(x)
end subroutine s2elem_t2
@@ -486,18 +486,18 @@ contains
subroutine a2(x)
class(t), intent(in), optional :: x(:)
- if (present (x)) call abort ()
+ if (present (x)) STOP 11
! print *, present(x)
end subroutine a2
subroutine a2p(x, psnt)
class(t), pointer, intent(in), optional :: x(:)
logical psnt
- if (present (x).neqv. psnt) call abort ()
+ if (present (x).neqv. psnt) STOP 12
! print *, present(x)
end subroutine a2p
subroutine a2caf(x)
class(t), intent(in), optional :: x(:)[*]
- if (present (x)) call abort ()
+ if (present (x)) STOP 13
! print *, present(x)
end subroutine a2caf
@@ -687,67 +687,67 @@ contains
subroutine a4(x)
class(t), intent(in), optional :: x(4)
- if (present (x)) call abort ()
+ if (present (x)) STOP 14
!print *, present(x)
end subroutine a4
subroutine a4p(x, psnt)
class(t), pointer, intent(in), optional :: x(:)
logical psnt
- if (present (x).neqv. psnt) call abort ()
+ if (present (x).neqv. psnt) STOP 15
!print *, present(x)
end subroutine a4p
subroutine a4caf(x)
class(t), intent(in), optional :: x(4)[*]
- if (present (x)) call abort ()
+ if (present (x)) STOP 16
!print *, present(x)
end subroutine a4caf
subroutine a4t(x)
type(t), intent(in), optional :: x(4)
- if (present (x)) call abort ()
+ if (present (x)) STOP 17
!print *, present(x)
end subroutine a4t
subroutine a4t2(x)
type(t2), intent(in), optional :: x(4)
- if (present (x)) call abort ()
+ if (present (x)) STOP 18
!print *, present(x)
end subroutine a4t2
subroutine a4tp(x, psnt)
type(t), pointer, intent(in), optional :: x(:)
logical psnt
- if (present (x).neqv. psnt) call abort ()
+ if (present (x).neqv. psnt) STOP 19
!print *, present(x)
end subroutine a4tp
subroutine a4t2p(x, psnt)
type(t2), pointer, intent(in), optional :: x(:)
logical psnt
- if (present (x).neqv. psnt) call abort ()
+ if (present (x).neqv. psnt) STOP 20
!print *, present(x)
end subroutine a4t2p
subroutine ar(x)
class(t), intent(in), optional :: x(..)
- if (present (x)) call abort ()
+ if (present (x)) STOP 21
!print *, present(x)
end subroutine ar
subroutine art(x)
type(t), intent(in), optional :: x(..)
- if (present (x)) call abort ()
+ if (present (x)) STOP 22
!print *, present(x)
end subroutine art
subroutine arp(x, psnt)
class(t), pointer, intent(in), optional :: x(..)
logical psnt
- if (present (x).neqv. psnt) call abort ()
+ if (present (x).neqv. psnt) STOP 23
!print *, present(x)
end subroutine arp
subroutine artp(x, psnt)
type(t), intent(in), pointer, optional :: x(..)
logical psnt
- if (present (x).neqv. psnt) call abort ()
+ if (present (x).neqv. psnt) STOP 24
!print *, present(x)
end subroutine artp
diff --git a/gcc/testsuite/gfortran.dg/class_result_5.f90 b/gcc/testsuite/gfortran.dg/class_result_5.f90
index c557ed37180..39eeb7bcf4a 100644
--- a/gcc/testsuite/gfortran.dg/class_result_5.f90
+++ b/gcc/testsuite/gfortran.dg/class_result_5.f90
@@ -13,7 +13,7 @@ function foo(string)
foo => string
select type (foo)
type is (character(*))
- if (foo .ne. 'foo') call abort
+ if (foo .ne. 'foo') STOP 1
foo = 'bar'
end select
end function
@@ -32,7 +32,7 @@ end function
select type (res)
type is (character(*))
- if (res .ne. 'bar') call abort
+ if (res .ne. 'bar') STOP 2
end select
- if (string .ne. 'bar') call abort
+ if (string .ne. 'bar') STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/class_result_6.f90 b/gcc/testsuite/gfortran.dg/class_result_6.f90
index 44e17a22025..9daabb0a0d6 100644
--- a/gcc/testsuite/gfortran.dg/class_result_6.f90
+++ b/gcc/testsuite/gfortran.dg/class_result_6.f90
@@ -10,7 +10,7 @@
b => ptr()
select type (b)
type is (character(*))
- if (a .ne. "bar") call abort
+ if (a .ne. "bar") STOP 1
end select
contains
function ptr()
diff --git a/gcc/testsuite/gfortran.dg/class_to_type_1.f03 b/gcc/testsuite/gfortran.dg/class_to_type_1.f03
index 0243343d637..f9de0762be0 100644
--- a/gcc/testsuite/gfortran.dg/class_to_type_1.f03
+++ b/gcc/testsuite/gfortran.dg/class_to_type_1.f03
@@ -17,17 +17,17 @@ class(t), allocatable :: x(:)
allocate(t2 :: x(10))
select type(x)
type is(t2)
- if (size (x) /= 10) call abort ()
+ if (size (x) /= 10) STOP 1
x = [(t2(a=-i, B=[1*i,2*i,3*i,4*i]), i = 1, 10)]
do i = 1, 10
if (x(i)%a /= -i .or. size (x(i)%b) /= 4 &
.or. any (x(i)%b /= [1*i,2*i,3*i,4*i])) then
- call abort()
+ STOP 2
end if
- if (x(i)%z /= cmplx(3.3, 4.4)) call abort()
+ if (x(i)%z /= cmplx(3.3, 4.4)) STOP 3
end do
class default
- call abort()
+ STOP 4
end select
call base(x)
@@ -37,22 +37,22 @@ call classExplicit(x, size(x))
contains
subroutine base(y)
type(t) :: y(:)
- if (size (y) /= 10) call abort ()
+ if (size (y) /= 10) STOP 5
do i = 1, 10
if (y(i)%a /= -i .or. size (y(i)%b) /= 4 &
.or. any (y(i)%b /= [1*i,2*i,3*i,4*i])) then
- call abort()
+ STOP 6
end if
end do
end subroutine base
subroutine baseExplicit(v, n)
integer, intent(in) :: n
type(t) :: v(n)
- if (size (v) /= 10) call abort ()
+ if (size (v) /= 10) STOP 7
do i = 1, 10
if (v(i)%a /= -i .or. size (v(i)%b) /= 4 &
.or. any (v(i)%b /= [1*i,2*i,3*i,4*i])) then
- call abort()
+ STOP 8
end if
end do
end subroutine baseExplicit
@@ -60,16 +60,16 @@ contains
class(t), intent(in) :: z(:)
select type(z)
type is(t2)
- if (size (z) /= 10) call abort ()
+ if (size (z) /= 10) STOP 9
do i = 1, 10
if (z(i)%a /= -i .or. size (z(i)%b) /= 4 &
.or. any (z(i)%b /= [1*i,2*i,3*i,4*i])) then
- call abort()
+ STOP 10
end if
- if (z(i)%z /= cmplx(3.3, 4.4)) call abort()
+ if (z(i)%z /= cmplx(3.3, 4.4)) STOP 11
end do
class default
- call abort()
+ STOP 12
end select
call base(z)
call baseExplicit(z, size(z))
@@ -79,16 +79,16 @@ contains
class(t), intent(in) :: u(n)
select type(u)
type is(t2)
- if (size (u) /= 10) call abort ()
+ if (size (u) /= 10) STOP 13
do i = 1, 10
if (u(i)%a /= -i .or. size (u(i)%b) /= 4 &
.or. any (u(i)%b /= [1*i,2*i,3*i,4*i])) then
- call abort()
+ STOP 14
end if
- if (u(i)%z /= cmplx(3.3, 4.4)) call abort()
+ if (u(i)%z /= cmplx(3.3, 4.4)) STOP 15
end do
class default
- call abort()
+ STOP 16
end select
call base(u)
call baseExplicit(u, n)
diff --git a/gcc/testsuite/gfortran.dg/class_to_type_2.f90 b/gcc/testsuite/gfortran.dg/class_to_type_2.f90
index e6181a4d337..61f371001be 100644
--- a/gcc/testsuite/gfortran.dg/class_to_type_2.f90
+++ b/gcc/testsuite/gfortran.dg/class_to_type_2.f90
@@ -37,12 +37,12 @@ contains
subroutine subpr2 (x)
type(foo) :: x
- if (x%i /= 55) call abort ()
+ if (x%i /= 55) STOP 1
end subroutine
subroutine subpr2_array (x)
type(foo) :: x(:)
- if (any(x(:)%i /= 55)) call abort ()
+ if (any(x(:)%i /= 55)) STOP 2
end subroutine
function f ()
@@ -66,30 +66,30 @@ program prog
allocate (foo_1 :: xx)
xx%i = 33
call subpr (xx)
- if (xx%i /= 3) call abort ()
+ if (xx%i /= 3) STOP 3
xx%i = 33
call subpr_elem (xx)
- if (xx%i /= 3) call abort ()
+ if (xx%i /= 3) STOP 4
call subpr (f ())
allocate (foo_1 :: yy(2))
yy(:)%i = 33
call subpr_elem (yy)
- if (any (yy%i /= 3)) call abort ()
+ if (any (yy%i /= 3)) STOP 5
yy(:)%i = 33
call subpr_elem (yy(1))
- if (yy(1)%i /= 3) call abort ()
+ if (yy(1)%i /= 3) STOP 6
yy(:)%i = 33
call subpr_array (yy)
- if (any (yy%i /= 3)) call abort ()
+ if (any (yy%i /= 3)) STOP 7
yy(:)%i = 33
call subpr_array (yy(1:2))
- if (any (yy(1:2)%i /= 3)) call abort ()
+ if (any (yy(1:2)%i /= 3)) STOP 8
call subpr2_array (g ())
end program
diff --git a/gcc/testsuite/gfortran.dg/class_to_type_3.f03 b/gcc/testsuite/gfortran.dg/class_to_type_3.f03
index 2d7a823ff85..2db2be82e23 100644
--- a/gcc/testsuite/gfortran.dg/class_to_type_3.f03
+++ b/gcc/testsuite/gfortran.dg/class_to_type_3.f03
@@ -23,7 +23,7 @@ contains
allocate (cm)
cm%i = 77
tm = cm
- if (tm%i .ne. cm%i) call abort
+ if (tm%i .ne. cm%i) STOP 1
end subroutine
subroutine comment2
@@ -36,6 +36,6 @@ contains
type is (child)
cm2%mother=cm
end select
- if (cm2%i .ne. cm%i) call abort
+ if (cm2%i .ne. cm%i) STOP 2
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.dg/class_to_type_4.f90 b/gcc/testsuite/gfortran.dg/class_to_type_4.f90
index cfa6d26339c..2f28d748504 100644
--- a/gcc/testsuite/gfortran.dg/class_to_type_4.f90
+++ b/gcc/testsuite/gfortran.dg/class_to_type_4.f90
@@ -26,41 +26,41 @@ program test
type(v) :: a, b(3)
x = func1() ! scalar to scalar - no alloc comps
- if (x%ii .ne. 77) call abort
+ if (x%ii .ne. 77) STOP 1
y = func2() ! array to array - no alloc comps
- if (any (y%ii .ne. [1,2,3])) call abort
+ if (any (y%ii .ne. [1,2,3])) STOP 2
y = func1() ! scalar to array - no alloc comps
- if (any (y%ii .ne. 77)) call abort
+ if (any (y%ii .ne. 77)) STOP 3
x = func3() ! scalar daughter type to scalar - no alloc comps
- if (x%ii .ne. 99) call abort
+ if (x%ii .ne. 99) STOP 4
y = func4() ! array daughter type to array - no alloc comps
- if (any (y%ii .ne. [3,4,5])) call abort
+ if (any (y%ii .ne. [3,4,5])) STOP 5
y = func3() ! scalar daughter type to array - no alloc comps
- if (any (y%ii .ne. [99,99,99])) call abort
+ if (any (y%ii .ne. [99,99,99])) STOP 6
a = func5() ! scalar to scalar - alloc comps in parent type
- if (any (a%rr .ne. [10.0,20.0])) call abort
+ if (any (a%rr .ne. [10.0,20.0])) STOP 7
b = func6() ! array to array - alloc comps in parent type
- if (any (b(3)%rr .ne. [3.0,4.0])) call abort
+ if (any (b(3)%rr .ne. [3.0,4.0])) STOP 8
a = func7() ! scalar daughter type to scalar - alloc comps in parent type
- if (any (a%rr .ne. [10.0,20.0])) call abort
+ if (any (a%rr .ne. [10.0,20.0])) STOP 9
b = func8() ! array daughter type to array - alloc comps in parent type
- if (any (b(3)%rr .ne. [3.0,4.0])) call abort
+ if (any (b(3)%rr .ne. [3.0,4.0])) STOP 10
b = func7() ! scalar daughter type to array - alloc comps in parent type
- if (any (b(2)%rr .ne. [10.0,20.0])) call abort
+ if (any (b(2)%rr .ne. [10.0,20.0])) STOP 11
! This is an extension of class_to_type_2.f90's test using a daughter type
! instead of the declared type.
- if (subpr2_array (g ()) .ne. 99 ) call abort
+ if (subpr2_array (g ()) .ne. 99 ) STOP 12
contains
function func1() result(res)
@@ -106,7 +106,7 @@ contains
integer function subpr2_array (x)
type(t) :: x(:)
- if (any(x(:)%ii /= 55)) call abort
+ if (any(x(:)%ii /= 55)) STOP 13
subpr2_array = 99
end function
diff --git a/gcc/testsuite/gfortran.dg/coarray/alloc_comp_1.f90 b/gcc/testsuite/gfortran.dg/coarray/alloc_comp_1.f90
index f1136e30e60..f809a5f4d11 100644
--- a/gcc/testsuite/gfortran.dg/coarray/alloc_comp_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/alloc_comp_1.f90
@@ -8,9 +8,9 @@ end type t
type(t) :: a
allocate (a%caf[3:*])
a%caf = 7
-if (a%caf /= 7) call abort ()
+if (a%caf /= 7) STOP 1
if (any (lcobound (a%caf) /= [ 3 ]) &
.or. ucobound (a%caf, dim=1) /= this_image ()+2) &
- call abort ()
+ STOP 2
deallocate (a%caf)
end
diff --git a/gcc/testsuite/gfortran.dg/coarray/alloc_comp_4.f90 b/gcc/testsuite/gfortran.dg/coarray/alloc_comp_4.f90
index 0bae25c3923..2ee8ff0253d 100644
--- a/gcc/testsuite/gfortran.dg/coarray/alloc_comp_4.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/alloc_comp_4.f90
@@ -17,5 +17,5 @@ program main
allocate(object%indices(me))
object%indices = 42
- if ( any( object[me]%indices(:) /= 42 ) ) call abort()
+ if ( any( object[me]%indices(:) /= 42 ) ) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.dg/coarray/allocate_errgmsg.f90 b/gcc/testsuite/gfortran.dg/coarray/allocate_errgmsg.f90
index e5a19543742..5d5987242b1 100644
--- a/gcc/testsuite/gfortran.dg/coarray/allocate_errgmsg.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/allocate_errgmsg.f90
@@ -13,24 +13,24 @@ str = repeat('X', len(str))
allocate(a[*], stat=stat, errmsg=str)
!print *, stat, trim(str)
if (stat == 0 .or. str /= "Attempt to allocate an allocated object") &
- call abort ()
+ STOP 1
str = repeat('Y', len(str))
allocate(b(2)[*], stat=stat, errmsg=str)
!print *, stat, trim(str)
if (stat == 0 .or. str /= "Attempt to allocate an allocated object") &
- call abort ()
+ STOP 2
str = repeat('Q', len(str))
allocate(c, stat=stat, errmsg=str)
!print *, stat, trim(str)
if (stat == 0 .or. str /= "Attempt to allocate an allocated object") &
- call abort ()
+ STOP 3
str = repeat('P', len(str))
allocate(d(3), stat=stat, errmsg=str)
!print *, stat, trim(str)
if (stat == 0 .or. str /= "Attempt to allocate an allocated object") &
- call abort ()
+ STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/coarray/atomic_1.f90 b/gcc/testsuite/gfortran.dg/coarray/atomic_1.f90
index 1cf621287a6..4fdfa3c2cdb 100644
--- a/gcc/testsuite/gfortran.dg/coarray/atomic_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/atomic_1.f90
@@ -16,12 +16,12 @@ logical(1) :: d
call atomic_define(a(1), 7_2)
call atomic_ref(b, a(1))
-if (b /= a(1)) call abort()
+if (b /= a(1)) STOP 1
call atomic_define(c, .false.)
call atomic_ref(d, c[this_image()])
-if (d .neqv. .false.) call abort()
+if (d .neqv. .false.) STOP 2
call atomic_define(c[this_image()], .true.)
call atomic_ref(d, c)
-if (d .neqv. .true.) call abort()
+if (d .neqv. .true.) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/coarray/atomic_2.f90 b/gcc/testsuite/gfortran.dg/coarray/atomic_2.f90
index 20b6890a967..5e1c4967248 100644
--- a/gcc/testsuite/gfortran.dg/coarray/atomic_2.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/atomic_2.f90
@@ -24,26 +24,26 @@ sync all
if (this_image() == 1) then
call atomic_define(caf[num_images()], 5, stat=stat)
- if (stat /= 0) call abort()
+ if (stat /= 0) STOP 1
call atomic_define(caf_log[num_images()], .true., stat=stat)
- if (stat /= 0) call abort()
+ if (stat /= 0) STOP 2
end if
sync all
if (this_image() == num_images()) then
- if (caf /= 5) call abort()
- if (.not. caf_log) call abort()
+ if (caf /= 5) STOP 3
+ if (.not. caf_log) STOP 4
var = 99
call atomic_ref(var, caf, stat=stat)
- if (stat /= 0 .or. var /= 5) call abort()
+ if (stat /= 0 .or. var /= 5) STOP 5
var2 = .false.
call atomic_ref(var2, caf_log, stat=stat)
- if (stat /= 0 .or. .not. var2) call abort()
+ if (stat /= 0 .or. .not. var2) STOP 6
end if
call atomic_ref(var, caf[num_images()], stat=stat)
-if (stat /= 0 .or. var /= 5) call abort()
+if (stat /= 0 .or. var /= 5) STOP 7
call atomic_ref(var2, caf_log[num_images()], stat=stat)
-if (stat /= 0 .or. .not. var2) call abort()
+if (stat /= 0 .or. .not. var2) STOP 8
sync all
! ADD
@@ -51,20 +51,20 @@ caf = 0
sync all
call atomic_add(caf, this_image(), stat=stat)
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 9
do i = 1, num_images()
call atomic_add(caf[i], 1, stat=stat)
- if (stat /= 0) call abort()
+ if (stat /= 0) STOP 10
call atomic_ref(var, caf, stat=stat)
- if (stat /= 0 .or. var < this_image()) call abort()
+ if (stat /= 0 .or. var < this_image()) STOP 11
end do
sync all
call atomic_ref(var, caf[num_images()], stat=stat)
-if (stat /= 0 .or. var /= num_images() + this_image()) call abort()
+if (stat /= 0 .or. var /= num_images() + this_image()) STOP 12
do i = 1, num_images()
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= num_images() + i) call abort()
+ if (stat /= 0 .or. var /= num_images() + i) STOP 13
end do
sync all
@@ -75,7 +75,7 @@ sync all
if (this_image() < storage_size(caf)-2) then
do i = this_image(), min(num_images(), storage_size(caf)-2)
call atomic_and(caf[i], shiftl(1, this_image()), stat=stat)
- if (stat /= 0) call abort()
+ if (stat /= 0) STOP 14
end do
end if
sync all
@@ -85,10 +85,10 @@ if (this_image() < storage_size(caf)-2) then
do i = 1, min(num_images(), storage_size(caf)-2)
var3 = iand(var3, shiftl(1, i))
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 15
if (i == this_image()) then
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 16
end if
end do
end if
@@ -101,7 +101,7 @@ sync all
if (this_image() < storage_size(caf)-2) then
do i = this_image(), min(num_images(), storage_size(caf)-2)
call atomic_and(caf[i], shiftl(1, this_image()), stat=stat)
- if (stat /= 0) call abort()
+ if (stat /= 0) STOP 17
end do
end if
sync all
@@ -111,10 +111,10 @@ if (this_image() < storage_size(caf)-2) then
do i = 1, min(num_images(), storage_size(caf)-2)
var3 = iand(var3, shiftl(1, i))
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 18
if (i == this_image()) then
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 19
end if
end do
end if
@@ -131,7 +131,7 @@ sync all
if (this_image() < storage_size(caf)-2) then
do i = this_image(), min(num_images(), storage_size(caf)-2)
call atomic_and(caf[i], shiftl(1, this_image()), stat=stat)
- if (stat /= 0) call abort()
+ if (stat /= 0) STOP 20
end do
end if
sync all
@@ -140,10 +140,10 @@ if (this_image() < storage_size(caf)-2) then
do i = 1, min(num_images(), storage_size(caf)-2)
var3 = iand(var3, shiftl(1, i))
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 21
if (i == this_image()) then
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 22
end if
end do
end if
@@ -156,7 +156,7 @@ sync all
if (this_image() < storage_size(caf)-2) then
do i = this_image(), min(num_images(), storage_size(caf)-2)
call atomic_or(caf[i], shiftl(1, this_image()), stat=stat)
- if (stat /= 0) call abort()
+ if (stat /= 0) STOP 23
end do
end if
sync all
@@ -166,10 +166,10 @@ if (this_image() < storage_size(caf)-2) then
do i = 1, min(num_images(), storage_size(caf)-2)
var3 = ior(var3, shiftl(1, i))
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 24
if (i == this_image()) then
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 25
end if
end do
end if
@@ -182,7 +182,7 @@ sync all
if (this_image() < storage_size(caf)-2) then
do i = this_image(), min(num_images(), storage_size(caf)-2)
call atomic_or(caf[i], shiftl(1, this_image()), stat=stat)
- if (stat /= 0) call abort()
+ if (stat /= 0) STOP 26
end do
end if
sync all
@@ -192,10 +192,10 @@ if (this_image() < storage_size(caf)-2) then
do i = 1, min(num_images(), storage_size(caf)-2)
var3 = ior(var3, shiftl(1, i))
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 27
if (i == this_image()) then
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 28
end if
end do
end if
@@ -212,7 +212,7 @@ sync all
if (this_image() < storage_size(caf)-2) then
do i = this_image(), min(num_images(), storage_size(caf)-2)
call atomic_or(caf[i], shiftl(1, this_image()), stat=stat)
- if (stat /= 0) call abort()
+ if (stat /= 0) STOP 29
end do
end if
sync all
@@ -221,10 +221,10 @@ if (this_image() < storage_size(caf)-2) then
do i = 1, min(num_images(), storage_size(caf)-2)
var3 = ior(var3, shiftl(1, i))
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 30
if (i == this_image()) then
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 31
end if
end do
end if
@@ -237,7 +237,7 @@ sync all
if (this_image() < storage_size(caf)-2) then
do i = this_image(), min(num_images(), storage_size(caf)-2)
call atomic_xor(caf[i], shiftl(1, this_image()), stat=stat)
- if (stat /= 0) call abort()
+ if (stat /= 0) STOP 32
end do
end if
sync all
@@ -247,10 +247,10 @@ if (this_image() < storage_size(caf)-2) then
do i = 1, min(num_images(), storage_size(caf)-2)
var3 = ieor(var3, shiftl(1, i))
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 33
if (i == this_image()) then
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 34
end if
end do
end if
@@ -263,7 +263,7 @@ sync all
if (this_image() < storage_size(caf)-2) then
do i = this_image(), min(num_images(), storage_size(caf)-2)
call atomic_xor(caf[i], shiftl(1, this_image()), stat=stat)
- if (stat /= 0) call abort()
+ if (stat /= 0) STOP 35
end do
end if
sync all
@@ -273,10 +273,10 @@ if (this_image() < storage_size(caf)-2) then
do i = 1, min(num_images(), storage_size(caf)-2)
var3 = ieor(var3, shiftl(1, i))
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 36
if (i == this_image()) then
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 37
end if
end do
end if
@@ -293,7 +293,7 @@ sync all
if (this_image() < storage_size(caf)-2) then
do i = this_image(), min(num_images(), storage_size(caf)-2)
call atomic_xor(caf[i], shiftl(1, this_image()), stat=stat)
- if (stat /= 0) call abort()
+ if (stat /= 0) STOP 38
end do
end if
sync all
@@ -302,10 +302,10 @@ if (this_image() < storage_size(caf)-2) then
do i = 1, min(num_images(), storage_size(caf)-2)
var3 = ieor(var3, shiftl(1, i))
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 39
if (i == this_image()) then
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 40
end if
end do
end if
@@ -316,22 +316,22 @@ caf = 0
sync all
var = -99
call atomic_fetch_add(caf, this_image(), var, stat=stat)
-if (stat /= 0 .or. var < 0) call abort()
-if (num_images() == 1 .and. var /= 0) call abort()
+if (stat /= 0 .or. var < 0) STOP 41
+if (num_images() == 1 .and. var /= 0) STOP 42
do i = 1, num_images()
var = -99
call atomic_fetch_add(caf[i], 1, var, stat=stat)
- if (stat /= 0 .or. var < 0) call abort()
+ if (stat /= 0 .or. var < 0) STOP 43
call atomic_ref(var, caf, stat=stat)
- if (stat /= 0 .or. var < this_image()) call abort()
+ if (stat /= 0 .or. var < this_image()) STOP 44
end do
sync all
call atomic_ref(var, caf[num_images()], stat=stat)
-if (stat /= 0 .or. var /= num_images() + this_image()) call abort()
+if (stat /= 0 .or. var /= num_images() + this_image()) STOP 45
do i = 1, num_images()
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= num_images() + i) call abort()
+ if (stat /= 0 .or. var /= num_images() + i) STOP 46
end do
sync all
@@ -344,7 +344,7 @@ if (this_image() < storage_size(caf)-2) then
do i = this_image(), min(num_images(), storage_size(caf)-2)
var = 99
call atomic_fetch_and(caf[i], shiftl(1, this_image()), var, stat=stat)
- if (stat /= 0 .or. var /= 0) call abort()
+ if (stat /= 0 .or. var /= 0) STOP 47
end do
end if
sync all
@@ -354,10 +354,10 @@ if (this_image() < storage_size(caf)-2) then
do i = 1, min(num_images(), storage_size(caf)-2)
var3 = iand(var3, shiftl(1, i))
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 48
if (i == this_image()) then
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 49
end if
end do
end if
@@ -371,7 +371,7 @@ if (this_image() < storage_size(caf)-2) then
do i = this_image(), min(num_images(), storage_size(caf)-2)
var = -99
call atomic_fetch_and(caf[i], shiftl(1, this_image()), var, stat=stat)
- if (stat /= 0 .or. var == shiftl(1, this_image())) call abort()
+ if (stat /= 0 .or. var == shiftl(1, this_image())) STOP 50
end do
end if
sync all
@@ -381,10 +381,10 @@ if (this_image() < storage_size(caf)-2) then
do i = 1, min(num_images(), storage_size(caf)-2)
var3 = iand(var3, shiftl(1, i))
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 51
if (i == this_image()) then
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 52
end if
end do
end if
@@ -403,7 +403,7 @@ if (this_image() < storage_size(caf)-2) then
do i = this_image(), min(num_images(), storage_size(caf)-2)
var = -99
call atomic_fetch_and(caf[i], shiftl(1, this_image()), var, stat=stat)
- if (stat /= 0 .or. var <= 0) call abort()
+ if (stat /= 0 .or. var <= 0) STOP 53
end do
end if
sync all
@@ -412,10 +412,10 @@ if (this_image() < storage_size(caf)-2) then
do i = 1, min(num_images(), storage_size(caf)-2)
var3 = iand(var3, shiftl(1, i))
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 54
if (i == this_image()) then
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 55
end if
end do
end if
@@ -431,7 +431,7 @@ if (this_image() < storage_size(caf)-2) then
do i = this_image(), min(num_images(), storage_size(caf)-2)
var = -99
call atomic_fetch_or(caf[i], shiftl(1, this_image()), var, stat=stat)
- if (stat /= 0 .or. var < 0 .or. var == shiftl(1, this_image())) call abort()
+ if (stat /= 0 .or. var < 0 .or. var == shiftl(1, this_image())) STOP 56
end do
end if
sync all
@@ -441,10 +441,10 @@ if (this_image() < storage_size(caf)-2) then
do i = 1, min(num_images(), storage_size(caf)-2)
var3 = ior(var3, shiftl(1, i))
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 57
if (i == this_image()) then
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 58
end if
end do
end if
@@ -458,7 +458,7 @@ if (this_image() < storage_size(caf)-2) then
do i = this_image(), min(num_images(), storage_size(caf)-2)
var = -99
call atomic_fetch_or(caf[i], shiftl(1, this_image()), var, stat=stat)
- if (stat /= 0 .or. (var < 0 .and. var /= -1)) call abort()
+ if (stat /= 0 .or. (var < 0 .and. var /= -1)) STOP 59
end do
end if
sync all
@@ -468,10 +468,10 @@ if (this_image() < storage_size(caf)-2) then
do i = 1, min(num_images(), storage_size(caf)-2)
var3 = ior(var3, shiftl(1, i))
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 60
if (i == this_image()) then
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 61
end if
end do
end if
@@ -490,7 +490,7 @@ if (this_image() < storage_size(caf)-2) then
do i = this_image(), min(num_images(), storage_size(caf)-2)
var = -99
call atomic_fetch_or(caf[i], shiftl(1, this_image()), var, stat=stat)
- if (stat /= 0 .or. var <= 0) call abort()
+ if (stat /= 0 .or. var <= 0) STOP 62
end do
end if
sync all
@@ -499,10 +499,10 @@ if (this_image() < storage_size(caf)-2) then
do i = 1, min(num_images(), storage_size(caf)-2)
var3 = ior(var3, shiftl(1, i))
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 63
if (i == this_image()) then
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 64
end if
end do
end if
@@ -517,7 +517,7 @@ if (this_image() < storage_size(caf)-2) then
do i = this_image(), min(num_images(), storage_size(caf)-2)
var = -99
call atomic_fetch_xor(caf[i], shiftl(1, this_image()), var, stat=stat)
- if (stat /= 0 .or. var < 0 .or. var == shiftl(1, this_image())) call abort()
+ if (stat /= 0 .or. var < 0 .or. var == shiftl(1, this_image())) STOP 65
end do
end if
sync all
@@ -527,10 +527,10 @@ if (this_image() < storage_size(caf)-2) then
do i = 1, min(num_images(), storage_size(caf)-2)
var3 = ieor(var3, shiftl(1, i))
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 66
if (i == this_image()) then
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 67
end if
end do
end if
@@ -544,7 +544,7 @@ if (this_image() < storage_size(caf)-2) then
do i = this_image(), min(num_images(), storage_size(caf)-2)
var = -99
call atomic_fetch_xor(caf[i], shiftl(1, this_image()), var, stat=stat)
- if (stat /= 0 .or. (var < 0 .and. var /= -1)) call abort()
+ if (stat /= 0 .or. (var < 0 .and. var /= -1)) STOP 68
end do
end if
sync all
@@ -554,10 +554,10 @@ if (this_image() < storage_size(caf)-2) then
do i = 1, min(num_images(), storage_size(caf)-2)
var3 = ieor(var3, shiftl(1, i))
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 69
if (i == this_image()) then
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 70
end if
end do
end if
@@ -576,7 +576,7 @@ if (this_image() < storage_size(caf)-2) then
do i = this_image(), min(num_images(), storage_size(caf)-2)
var = -99
call atomic_fetch_xor(caf[i], shiftl(1, this_image()), var, stat=stat)
- if (stat /= 0 .or. var <= 0) call abort()
+ if (stat /= 0 .or. var <= 0) STOP 71
end do
end if
sync all
@@ -585,10 +585,10 @@ if (this_image() < storage_size(caf)-2) then
do i = 1, min(num_images(), storage_size(caf)-2)
var3 = ieor(var3, shiftl(1, i))
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 72
if (i == this_image()) then
call atomic_ref(var, caf[i], stat=stat)
- if (stat /= 0 .or. var /= var3) call abort()
+ if (stat /= 0 .or. var /= var3) STOP 73
end if
end do
end if
@@ -601,53 +601,53 @@ sync all
if (this_image() == 1) then
call atomic_cas(caf[num_images()], compare=5, new=3, old=var, stat=stat)
- if (stat /= 0 .or. var /= 9) call abort()
+ if (stat /= 0 .or. var /= 9) STOP 74
call atomic_ref(var, caf[num_images()], stat=stat)
- if (stat /= 0 .or. var /= 9) call abort()
+ if (stat /= 0 .or. var /= 9) STOP 75
end if
sync all
-if (this_image() == num_images() .and. caf /= 9) call abort()
+if (this_image() == num_images() .and. caf /= 9) STOP 76
call atomic_ref(var, caf[num_images()], stat=stat)
-if (stat /= 0 .or. var /= 9) call abort()
+if (stat /= 0 .or. var /= 9) STOP 77
sync all
if (this_image() == 1) then
call atomic_cas(caf[num_images()], compare=9, new=3, old=var, stat=stat)
- if (stat /= 0 .or. var /= 9) call abort()
+ if (stat /= 0 .or. var /= 9) STOP 78
call atomic_ref(var, caf[num_images()], stat=stat)
- if (stat /= 0 .or. var /= 3) call abort()
+ if (stat /= 0 .or. var /= 3) STOP 79
end if
sync all
-if (this_image() == num_images() .and. caf /= 3) call abort()
+if (this_image() == num_images() .and. caf /= 3) STOP 80
call atomic_ref(var, caf[num_images()], stat=stat)
-if (stat /= 0 .or. var /= 3) call abort()
+if (stat /= 0 .or. var /= 3) STOP 81
sync all
if (this_image() == 1) then
call atomic_cas(caf_log[num_images()], compare=.false., new=.false., old=var2, stat=stat)
- if (stat /= 0 .or. var2 .neqv. .true.) call abort()
+ if (stat /= 0 .or. var2 .neqv. .true.) STOP 82
call atomic_ref(var2, caf_log[num_images()], stat=stat)
- if (stat /= 0 .or. var2 .neqv. .true.) call abort()
+ if (stat /= 0 .or. var2 .neqv. .true.) STOP 83
end if
sync all
-if (this_image() == num_images() .and. caf_log .neqv. .true.) call abort()
+if (this_image() == num_images() .and. caf_log .neqv. .true.) STOP 84
call atomic_ref(var2, caf_log[num_images()], stat=stat)
-if (stat /= 0 .or. var2 .neqv. .true.) call abort()
+if (stat /= 0 .or. var2 .neqv. .true.) STOP 85
sync all
if (this_image() == 1) then
call atomic_cas(caf_log[num_images()], compare=.true., new=.false., old=var2, stat=stat)
- if (stat /= 0 .or. var2 .neqv. .true.) call abort()
+ if (stat /= 0 .or. var2 .neqv. .true.) STOP 86
call atomic_ref(var2, caf_log[num_images()], stat=stat)
- if (stat /= 0 .or. var2 .neqv. .false.) call abort()
+ if (stat /= 0 .or. var2 .neqv. .false.) STOP 87
end if
sync all
-if (this_image() == num_images() .and. caf_log .neqv. .false.) call abort()
+if (this_image() == num_images() .and. caf_log .neqv. .false.) STOP 88
call atomic_ref(var2, caf_log[num_images()], stat=stat)
-if (stat /= 0 .or. var2 .neqv. .false.) call abort()
+if (stat /= 0 .or. var2 .neqv. .false.) STOP 89
end
diff --git a/gcc/testsuite/gfortran.dg/coarray/codimension.f90 b/gcc/testsuite/gfortran.dg/coarray/codimension.f90
index 706048f33ef..077cbefb393 100644
--- a/gcc/testsuite/gfortran.dg/coarray/codimension.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/codimension.f90
@@ -25,10 +25,10 @@ contains
call expl (y)
i = lcobound(x, dim=1)
j = ucobound(x, dim=1)
- if (i /= 1 .or. j /= num_images()) call abort()
+ if (i /= 1 .or. j /= num_images()) STOP 1
i = lcobound(y, dim=1)
j = ucobound(y, dim=1)
- if (i /= 1 .or. j /= num_images()) call abort()
+ if (i /= 1 .or. j /= num_images()) STOP 2
end subroutine foo
subroutine bar(y)
@@ -36,7 +36,7 @@ contains
integer :: i, j
i = lcobound(y, dim=1)
j = ucobound(y, dim=1)
- if (i /= 1 .or. j /= num_images()) call abort()
+ if (i /= 1 .or. j /= num_images()) STOP 3
end subroutine bar
subroutine expl(z)
@@ -44,6 +44,6 @@ contains
integer :: i, j
i = lcobound(z, dim=1)
j = ucobound(z, dim=1)
- if (i /= 1 .or. j /= num_images()) call abort()
+ if (i /= 1 .or. j /= num_images()) STOP 4
end subroutine expl
end program test_caf
diff --git a/gcc/testsuite/gfortran.dg/coarray/coindexed_1.f90 b/gcc/testsuite/gfortran.dg/coarray/coindexed_1.f90
index 86f86d1af2c..f90b65cb389 100644
--- a/gcc/testsuite/gfortran.dg/coarray/coindexed_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/coindexed_1.f90
@@ -26,9 +26,9 @@ subroutine char_test()
end if
sync all
if (this_image() == 1) then
- if (str2a /= 1_"abc ") call abort()
+ if (str2a /= 1_"abc ") STOP 1
else
- if (str2a /= 1_"XXXXXXX") call abort()
+ if (str2a /= 1_"XXXXXXX") STOP 2
end if
! SCALAR - kind 4 - with padding
@@ -42,9 +42,9 @@ subroutine char_test()
end if
sync all
if (this_image() == 1) then
- if (ustr2a /= 4_"abc ") call abort()
+ if (ustr2a /= 4_"abc ") STOP 3
else
- if (ustr2a /= 4_"XXXXXXX") call abort()
+ if (ustr2a /= 4_"XXXXXXX") STOP 4
end if
! SCALAR - kind 1 - with trimming
@@ -58,9 +58,9 @@ subroutine char_test()
end if
sync all
if (this_image() == 1) then
- if (str1a /= 1_"abc") call abort()
+ if (str1a /= 1_"abc") STOP 5
else
- if (str1a /= 1_"XXX") call abort()
+ if (str1a /= 1_"XXX") STOP 6
end if
! SCALAR - kind 4 - with trimming
@@ -74,9 +74,9 @@ subroutine char_test()
end if
sync all
if (this_image() == 1) then
- if (ustr1a /= 4_"abc") call abort()
+ if (ustr1a /= 4_"abc") STOP 7
else
- if (ustr1a /= 4_"XXX") call abort()
+ if (ustr1a /= 4_"XXX") STOP 8
end if
! - - - - - array = array
@@ -97,10 +97,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (str2b(1) /= 1_"abc " .or. str2b(2) /= 1_"def " &
- .or. str2b(3) /= 1_"gjh ") call abort()
+ .or. str2b(3) /= 1_"gjh ") STOP 9
else
if (str2b(1) /= 1_"XXXXXXX" .or. str2b(2) /= 1_"YYYYYYY" &
- .or. str2b(3) /= 1_"ZZZZZZZ") call abort()
+ .or. str2b(3) /= 1_"ZZZZZZZ") STOP 10
end if
! contiguous ARRAY - kind 4 - with padding
@@ -119,10 +119,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (ustr2b(1) /= 4_"abc " .or. ustr2b(2) /= 4_"def " &
- .or. ustr2b(3) /= 4_"gjh ") call abort()
+ .or. ustr2b(3) /= 4_"gjh ") STOP 11
else
if (ustr2b(1) /= 4_"XXXXXXX" .or. ustr2b(2) /= 4_"YYYYYYY" &
- .or. ustr2b(3) /= 4_"ZZZZZZZ") call abort()
+ .or. ustr2b(3) /= 4_"ZZZZZZZ") STOP 12
end if
! contiguous ARRAY - kind 1 - with trimming
@@ -141,10 +141,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (str1b(1) /= 1_"abc" .or. str1b(2) /= 1_"hij" &
- .or. str1b(3) /= 1_"opq") call abort()
+ .or. str1b(3) /= 1_"opq") STOP 13
else
if (str1b(1) /= 1_"XXX" .or. str1b(2) /= 1_"YYY" &
- .or. str1b(3) /= 1_"ZZZ") call abort()
+ .or. str1b(3) /= 1_"ZZZ") STOP 14
end if
! contiguous ARRAY - kind 4 - with trimming
@@ -163,10 +163,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (ustr1b(1) /= 4_"abc" .or. ustr1b(2) /= 4_"hij" &
- .or. ustr1b(3) /= 4_"opq") call abort()
+ .or. ustr1b(3) /= 4_"opq") STOP 15
else
if (ustr1b(1) /= 4_"XXX" .or. ustr1b(2) /= 4_"YYY" &
- .or. ustr1b(3) /= 4_"ZZZ") call abort()
+ .or. ustr1b(3) /= 4_"ZZZ") STOP 16
end if
! - - - - - array = scalar
@@ -185,10 +185,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (str2b(1) /= 1_"abc " .or. str2b(2) /= 1_"abc " &
- .or. str2b(3) /= 1_"abc ") call abort()
+ .or. str2b(3) /= 1_"abc ") STOP 17
else
if (str2b(1) /= 1_"XXXXXXX" .or. str2b(2) /= 1_"YYYYYYY" &
- .or. str2b(3) /= 1_"ZZZZZZZ") call abort()
+ .or. str2b(3) /= 1_"ZZZZZZZ") STOP 18
end if
! contiguous ARRAY - kind 4 - with padding
@@ -205,10 +205,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (ustr2b(1) /= 4_"abc " .or. ustr2b(2) /= 4_"abc " &
- .or. ustr2b(3) /= 4_"abc ") call abort()
+ .or. ustr2b(3) /= 4_"abc ") STOP 19
else
if (ustr2b(1) /= 4_"XXXXXXX" .or. ustr2b(2) /= 4_"YYYYYYY" &
- .or. ustr2b(3) /= 4_"ZZZZZZZ") call abort()
+ .or. ustr2b(3) /= 4_"ZZZZZZZ") STOP 20
end if
! contiguous ARRAY - kind 1 - with trimming
@@ -225,10 +225,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (str1b(1) /= 1_"abc" .or. str1b(2) /= 1_"abc" &
- .or. str1b(3) /= 1_"abc") call abort()
+ .or. str1b(3) /= 1_"abc") STOP 21
else
if (str1b(1) /= 1_"XXX" .or. str1b(2) /= 1_"YYY" &
- .or. str1b(3) /= 1_"ZZZ") call abort()
+ .or. str1b(3) /= 1_"ZZZ") STOP 22
end if
! contiguous ARRAY - kind 4 - with trimming
@@ -245,10 +245,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (ustr1b(1) /= 4_"abc" .or. ustr1b(2) /= 4_"abc" &
- .or. ustr1b(3) /= 4_"abc") call abort()
+ .or. ustr1b(3) /= 4_"abc") STOP 23
else
if (ustr1b(1) /= 4_"XXX" .or. ustr1b(2) /= 4_"YYY" &
- .or. ustr1b(3) /= 4_"ZZZ") call abort()
+ .or. ustr1b(3) /= 4_"ZZZ") STOP 24
end if
! ---------- Take from a coindexed variable -------------
@@ -266,9 +266,9 @@ subroutine char_test()
end if
sync all
if (this_image() == num_images()) then
- if (str2a /= 1_"abc ") call abort()
+ if (str2a /= 1_"abc ") STOP 25
else
- if (str2a /= 1_"XXXXXXX") call abort()
+ if (str2a /= 1_"XXXXXXX") STOP 26
end if
! SCALAR - kind 4 - with padding
@@ -282,9 +282,9 @@ subroutine char_test()
end if
sync all
if (this_image() == num_images()) then
- if (ustr2a /= 4_"abc ") call abort()
+ if (ustr2a /= 4_"abc ") STOP 27
else
- if (ustr2a /= 4_"XXXXXXX") call abort()
+ if (ustr2a /= 4_"XXXXXXX") STOP 28
end if
! SCALAR - kind 1 - with trimming
@@ -298,9 +298,9 @@ subroutine char_test()
end if
sync all
if (this_image() == num_images()) then
- if (str1a /= 1_"abc") call abort()
+ if (str1a /= 1_"abc") STOP 29
else
- if (str1a /= 1_"XXX") call abort()
+ if (str1a /= 1_"XXX") STOP 30
end if
! SCALAR - kind 4 - with trimming
@@ -314,9 +314,9 @@ subroutine char_test()
end if
sync all
if (this_image() == num_images()) then
- if (ustr1a /= 4_"abc") call abort()
+ if (ustr1a /= 4_"abc") STOP 31
else
- if (ustr1a /= 4_"XXX") call abort()
+ if (ustr1a /= 4_"XXX") STOP 32
end if
! - - - - - array = array
@@ -337,10 +337,10 @@ subroutine char_test()
sync all
if (this_image() == num_images()) then
if (str2b(1) /= 1_"abc " .or. str2b(2) /= 1_"def " &
- .or. str2b(3) /= 1_"gjh ") call abort()
+ .or. str2b(3) /= 1_"gjh ") STOP 33
else
if (str2b(1) /= 1_"XXXXXXX" .or. str2b(2) /= 1_"YYYYYYY" &
- .or. str2b(3) /= 1_"ZZZZZZZ") call abort()
+ .or. str2b(3) /= 1_"ZZZZZZZ") STOP 34
end if
! contiguous ARRAY - kind 4 - with padding
@@ -359,10 +359,10 @@ subroutine char_test()
sync all
if (this_image() == num_images()) then
if (ustr2b(1) /= 4_"abc " .or. ustr2b(2) /= 4_"def " &
- .or. ustr2b(3) /= 4_"gjh ") call abort()
+ .or. ustr2b(3) /= 4_"gjh ") STOP 35
else
if (ustr2b(1) /= 4_"XXXXXXX" .or. ustr2b(2) /= 4_"YYYYYYY" &
- .or. ustr2b(3) /= 4_"ZZZZZZZ") call abort()
+ .or. ustr2b(3) /= 4_"ZZZZZZZ") STOP 36
end if
! contiguous ARRAY - kind 1 - with trimming
@@ -381,10 +381,10 @@ subroutine char_test()
sync all
if (this_image() == num_images()) then
if (str1b(1) /= 1_"abc" .or. str1b(2) /= 1_"hij" &
- .or. str1b(3) /= 1_"opq") call abort()
+ .or. str1b(3) /= 1_"opq") STOP 37
else
if (str1b(1) /= 1_"XXX" .or. str1b(2) /= 1_"YYY" &
- .or. str1b(3) /= 1_"ZZZ") call abort()
+ .or. str1b(3) /= 1_"ZZZ") STOP 38
end if
! contiguous ARRAY - kind 4 - with trimming
@@ -403,10 +403,10 @@ subroutine char_test()
sync all
if (this_image() == num_images()) then
if (ustr1b(1) /= 4_"abc" .or. ustr1b(2) /= 4_"hij" &
- .or. ustr1b(3) /= 4_"opq") call abort()
+ .or. ustr1b(3) /= 4_"opq") STOP 39
else
if (ustr1b(1) /= 4_"XXX" .or. ustr1b(2) /= 4_"YYY" &
- .or. ustr1b(3) /= 4_"ZZZ") call abort()
+ .or. ustr1b(3) /= 4_"ZZZ") STOP 40
end if
! - - - - - array = scalar
@@ -425,10 +425,10 @@ subroutine char_test()
sync all
if (this_image() == num_images()) then
if (str2b(1) /= 1_"abc " .or. str2b(2) /= 1_"abc " &
- .or. str2b(3) /= 1_"abc ") call abort()
+ .or. str2b(3) /= 1_"abc ") STOP 41
else
if (str2b(1) /= 1_"XXXXXXX" .or. str2b(2) /= 1_"YYYYYYY" &
- .or. str2b(3) /= 1_"ZZZZZZZ") call abort()
+ .or. str2b(3) /= 1_"ZZZZZZZ") STOP 42
end if
! contiguous ARRAY - kind 4 - with padding
@@ -445,10 +445,10 @@ subroutine char_test()
sync all
if (this_image() == num_images()) then
if (ustr2b(1) /= 4_"abc " .or. ustr2b(2) /= 4_"abc " &
- .or. ustr2b(3) /= 4_"abc ") call abort()
+ .or. ustr2b(3) /= 4_"abc ") STOP 43
else
if (ustr2b(1) /= 4_"XXXXXXX" .or. ustr2b(2) /= 4_"YYYYYYY" &
- .or. ustr2b(3) /= 4_"ZZZZZZZ") call abort()
+ .or. ustr2b(3) /= 4_"ZZZZZZZ") STOP 44
end if
! contiguous ARRAY - kind 1 - with trimming
@@ -465,10 +465,10 @@ subroutine char_test()
sync all
if (this_image() == num_images()) then
if (str1b(1) /= 1_"abc" .or. str1b(2) /= 1_"abc" &
- .or. str1b(3) /= 1_"abc") call abort()
+ .or. str1b(3) /= 1_"abc") STOP 45
else
if (str1b(1) /= 1_"XXX" .or. str1b(2) /= 1_"YYY" &
- .or. str1b(3) /= 1_"ZZZ") call abort()
+ .or. str1b(3) /= 1_"ZZZ") STOP 46
end if
! contiguous ARRAY - kind 4 - with trimming
@@ -485,10 +485,10 @@ subroutine char_test()
sync all
if (this_image() == num_images()) then
if (ustr1b(1) /= 4_"abc" .or. ustr1b(2) /= 4_"abc" &
- .or. ustr1b(3) /= 4_"abc") call abort()
+ .or. ustr1b(3) /= 4_"abc") STOP 47
else
if (ustr1b(1) /= 4_"XXX" .or. ustr1b(2) /= 4_"YYY" &
- .or. ustr1b(3) /= 4_"ZZZ") call abort()
+ .or. ustr1b(3) /= 4_"ZZZ") STOP 48
end if
@@ -507,9 +507,9 @@ subroutine char_test()
end if
sync all
if (this_image() == 1) then
- if (str2a /= 1_"abc ") call abort()
+ if (str2a /= 1_"abc ") STOP 49
else
- if (str2a /= 1_"XXXXXXX") call abort()
+ if (str2a /= 1_"XXXXXXX") STOP 50
end if
! SCALAR - kind 4 - with padding
@@ -523,9 +523,9 @@ subroutine char_test()
end if
sync all
if (this_image() == 1) then
- if (ustr2a /= 4_"abc ") call abort()
+ if (ustr2a /= 4_"abc ") STOP 51
else
- if (ustr2a /= 4_"XXXXXXX") call abort()
+ if (ustr2a /= 4_"XXXXXXX") STOP 52
end if
! SCALAR - kind 1 - with trimming
@@ -539,9 +539,9 @@ subroutine char_test()
end if
sync all
if (this_image() == 1) then
- if (str1a /= 1_"abc") call abort()
+ if (str1a /= 1_"abc") STOP 53
else
- if (str1a /= 1_"XXX") call abort()
+ if (str1a /= 1_"XXX") STOP 54
end if
! SCALAR - kind 4 - with trimming
@@ -555,9 +555,9 @@ subroutine char_test()
end if
sync all
if (this_image() == 1) then
- if (ustr1a /= 4_"abc") call abort()
+ if (ustr1a /= 4_"abc") STOP 55
else
- if (ustr1a /= 4_"XXX") call abort()
+ if (ustr1a /= 4_"XXX") STOP 56
end if
! - - - - - array = array
@@ -578,10 +578,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (str2b(1) /= 1_"abc " .or. str2b(2) /= 1_"def " &
- .or. str2b(3) /= 1_"gjh ") call abort()
+ .or. str2b(3) /= 1_"gjh ") STOP 57
else
if (str2b(1) /= 1_"XXXXXXX" .or. str2b(2) /= 1_"YYYYYYY" &
- .or. str2b(3) /= 1_"ZZZZZZZ") call abort()
+ .or. str2b(3) /= 1_"ZZZZZZZ") STOP 58
end if
! contiguous ARRAY - kind 4 - with padding
@@ -600,10 +600,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (ustr2b(1) /= 4_"abc " .or. ustr2b(2) /= 4_"def " &
- .or. ustr2b(3) /= 4_"gjh ") call abort()
+ .or. ustr2b(3) /= 4_"gjh ") STOP 59
else
if (ustr2b(1) /= 4_"XXXXXXX" .or. ustr2b(2) /= 4_"YYYYYYY" &
- .or. ustr2b(3) /= 4_"ZZZZZZZ") call abort()
+ .or. ustr2b(3) /= 4_"ZZZZZZZ") STOP 60
end if
! contiguous ARRAY - kind 1 - with trimming
@@ -622,10 +622,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (str1b(1) /= 1_"abc" .or. str1b(2) /= 1_"hij" &
- .or. str1b(3) /= 1_"opq") call abort()
+ .or. str1b(3) /= 1_"opq") STOP 61
else
if (str1b(1) /= 1_"XXX" .or. str1b(2) /= 1_"YYY" &
- .or. str1b(3) /= 1_"ZZZ") call abort()
+ .or. str1b(3) /= 1_"ZZZ") STOP 62
end if
! contiguous ARRAY - kind 4 - with trimming
@@ -644,10 +644,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (ustr1b(1) /= 4_"abc" .or. ustr1b(2) /= 4_"hij" &
- .or. ustr1b(3) /= 4_"opq") call abort()
+ .or. ustr1b(3) /= 4_"opq") STOP 63
else
if (ustr1b(1) /= 4_"XXX" .or. ustr1b(2) /= 4_"YYY" &
- .or. ustr1b(3) /= 4_"ZZZ") call abort()
+ .or. ustr1b(3) /= 4_"ZZZ") STOP 64
end if
! - - - - - array = scalar
@@ -666,10 +666,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (str2b(1) /= 1_"abc " .or. str2b(2) /= 1_"abc " &
- .or. str2b(3) /= 1_"abc ") call abort()
+ .or. str2b(3) /= 1_"abc ") STOP 65
else
if (str2b(1) /= 1_"XXXXXXX" .or. str2b(2) /= 1_"YYYYYYY" &
- .or. str2b(3) /= 1_"ZZZZZZZ") call abort()
+ .or. str2b(3) /= 1_"ZZZZZZZ") STOP 66
end if
! contiguous ARRAY - kind 4 - with padding
@@ -686,10 +686,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (ustr2b(1) /= 4_"abc " .or. ustr2b(2) /= 4_"abc " &
- .or. ustr2b(3) /= 4_"abc ") call abort()
+ .or. ustr2b(3) /= 4_"abc ") STOP 67
else
if (ustr2b(1) /= 4_"XXXXXXX" .or. ustr2b(2) /= 4_"YYYYYYY" &
- .or. ustr2b(3) /= 4_"ZZZZZZZ") call abort()
+ .or. ustr2b(3) /= 4_"ZZZZZZZ") STOP 68
end if
! contiguous ARRAY - kind 1 - with trimming
@@ -706,10 +706,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (str1b(1) /= 1_"abc" .or. str1b(2) /= 1_"abc" &
- .or. str1b(3) /= 1_"abc") call abort()
+ .or. str1b(3) /= 1_"abc") STOP 69
else
if (str1b(1) /= 1_"XXX" .or. str1b(2) /= 1_"YYY" &
- .or. str1b(3) /= 1_"ZZZ") call abort()
+ .or. str1b(3) /= 1_"ZZZ") STOP 70
end if
! contiguous ARRAY - kind 4 - with trimming
@@ -726,10 +726,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (ustr1b(1) /= 4_"abc" .or. ustr1b(2) /= 4_"abc" &
- .or. ustr1b(3) /= 4_"abc") call abort()
+ .or. ustr1b(3) /= 4_"abc") STOP 71
else
if (ustr1b(1) /= 4_"XXX" .or. ustr1b(2) /= 4_"YYY" &
- .or. ustr1b(3) /= 4_"ZZZ") call abort()
+ .or. ustr1b(3) /= 4_"ZZZ") STOP 72
end if
! ============== char1 <-> char4 =====================
@@ -749,9 +749,9 @@ subroutine char_test()
end if
sync all
if (this_image() == 1) then
- if (str2a /= 1_"abc ") call abort()
+ if (str2a /= 1_"abc ") STOP 73
else
- if (str2a /= 1_"XXXXXXX") call abort()
+ if (str2a /= 1_"XXXXXXX") STOP 74
end if
! SCALAR - kind 4 <- 1 - with padding
@@ -765,9 +765,9 @@ subroutine char_test()
end if
sync all
if (this_image() == 1) then
- if (ustr2a /= 4_"abc ") call abort()
+ if (ustr2a /= 4_"abc ") STOP 75
else
- if (ustr2a /= 4_"XXXXXXX") call abort()
+ if (ustr2a /= 4_"XXXXXXX") STOP 76
end if
! SCALAR - kind 1 <- 4 - with trimming
@@ -781,9 +781,9 @@ subroutine char_test()
end if
sync all
if (this_image() == 1) then
- if (str1a /= 1_"abc") call abort()
+ if (str1a /= 1_"abc") STOP 77
else
- if (str1a /= 1_"XXX") call abort()
+ if (str1a /= 1_"XXX") STOP 78
end if
! SCALAR - kind 4 <- 1 - with trimming
@@ -797,9 +797,9 @@ subroutine char_test()
end if
sync all
if (this_image() == 1) then
- if (ustr1a /= 4_"abc") call abort()
+ if (ustr1a /= 4_"abc") STOP 79
else
- if (ustr1a /= 4_"XXX") call abort()
+ if (ustr1a /= 4_"XXX") STOP 80
end if
! - - - - - array = array
@@ -820,10 +820,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (str2b(1) /= 1_"abc " .or. str2b(2) /= 1_"def " &
- .or. str2b(3) /= 1_"gjh ") call abort()
+ .or. str2b(3) /= 1_"gjh ") STOP 81
else
if (str2b(1) /= 1_"XXXXXXX" .or. str2b(2) /= 1_"YYYYYYY" &
- .or. str2b(3) /= 1_"ZZZZZZZ") call abort()
+ .or. str2b(3) /= 1_"ZZZZZZZ") STOP 82
end if
! contiguous ARRAY - kind 4 <- 1 - with padding
@@ -842,10 +842,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (ustr2b(1) /= 4_"abc " .or. ustr2b(2) /= 4_"def " &
- .or. ustr2b(3) /= 4_"gjh ") call abort()
+ .or. ustr2b(3) /= 4_"gjh ") STOP 83
else
if (ustr2b(1) /= 4_"XXXXXXX" .or. ustr2b(2) /= 4_"YYYYYYY" &
- .or. ustr2b(3) /= 4_"ZZZZZZZ") call abort()
+ .or. ustr2b(3) /= 4_"ZZZZZZZ") STOP 84
end if
! contiguous ARRAY - kind 1 <- 4 - with trimming
@@ -864,10 +864,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (str1b(1) /= 1_"abc" .or. str1b(2) /= 1_"hij" &
- .or. str1b(3) /= 1_"opq") call abort()
+ .or. str1b(3) /= 1_"opq") STOP 85
else
if (str1b(1) /= 1_"XXX" .or. str1b(2) /= 1_"YYY" &
- .or. str1b(3) /= 1_"ZZZ") call abort()
+ .or. str1b(3) /= 1_"ZZZ") STOP 86
end if
! contiguous ARRAY - kind 4 <- 1 - with trimming
@@ -886,10 +886,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (ustr1b(1) /= 4_"abc" .or. ustr1b(2) /= 4_"hij" &
- .or. ustr1b(3) /= 4_"opq") call abort()
+ .or. ustr1b(3) /= 4_"opq") STOP 87
else
if (ustr1b(1) /= 4_"XXX" .or. ustr1b(2) /= 4_"YYY" &
- .or. ustr1b(3) /= 4_"ZZZ") call abort()
+ .or. ustr1b(3) /= 4_"ZZZ") STOP 88
end if
! - - - - - array = scalar
@@ -908,10 +908,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (str2b(1) /= 1_"abc " .or. str2b(2) /= 1_"abc " &
- .or. str2b(3) /= 1_"abc ") call abort()
+ .or. str2b(3) /= 1_"abc ") STOP 89
else
if (str2b(1) /= 1_"XXXXXXX" .or. str2b(2) /= 1_"YYYYYYY" &
- .or. str2b(3) /= 1_"ZZZZZZZ") call abort()
+ .or. str2b(3) /= 1_"ZZZZZZZ") STOP 90
end if
! contiguous ARRAY - kind 4 <- 1 - with padding
@@ -928,10 +928,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (ustr2b(1) /= 4_"abc " .or. ustr2b(2) /= 4_"abc " &
- .or. ustr2b(3) /= 4_"abc ") call abort()
+ .or. ustr2b(3) /= 4_"abc ") STOP 91
else
if (ustr2b(1) /= 4_"XXXXXXX" .or. ustr2b(2) /= 4_"YYYYYYY" &
- .or. ustr2b(3) /= 4_"ZZZZZZZ") call abort()
+ .or. ustr2b(3) /= 4_"ZZZZZZZ") STOP 92
end if
! contiguous ARRAY - kind 1 <- 4 - with trimming
@@ -948,10 +948,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (str1b(1) /= 1_"abc" .or. str1b(2) /= 1_"abc" &
- .or. str1b(3) /= 1_"abc") call abort()
+ .or. str1b(3) /= 1_"abc") STOP 93
else
if (str1b(1) /= 1_"XXX" .or. str1b(2) /= 1_"YYY" &
- .or. str1b(3) /= 1_"ZZZ") call abort()
+ .or. str1b(3) /= 1_"ZZZ") STOP 94
end if
! contiguous ARRAY - kind 4 <- 1 - with trimming
@@ -968,10 +968,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (ustr1b(1) /= 4_"abc" .or. ustr1b(2) /= 4_"abc" &
- .or. ustr1b(3) /= 4_"abc") call abort()
+ .or. ustr1b(3) /= 4_"abc") STOP 95
else
if (ustr1b(1) /= 4_"XXX" .or. ustr1b(2) /= 4_"YYY" &
- .or. ustr1b(3) /= 4_"ZZZ") call abort()
+ .or. ustr1b(3) /= 4_"ZZZ") STOP 96
end if
! ---------- Take from a coindexed variable -------------
@@ -989,9 +989,9 @@ subroutine char_test()
end if
sync all
if (this_image() == num_images()) then
- if (str2a /= 1_"abc ") call abort()
+ if (str2a /= 1_"abc ") STOP 97
else
- if (str2a /= 1_"XXXXXXX") call abort()
+ if (str2a /= 1_"XXXXXXX") STOP 98
end if
! SCALAR - kind 4 <- 1 - with padding
@@ -1005,9 +1005,9 @@ subroutine char_test()
end if
sync all
if (this_image() == num_images()) then
- if (ustr2a /= 4_"abc ") call abort()
+ if (ustr2a /= 4_"abc ") STOP 99
else
- if (ustr2a /= 4_"XXXXXXX") call abort()
+ if (ustr2a /= 4_"XXXXXXX") STOP 100
end if
! SCALAR - kind 1 <- 4 - with trimming
@@ -1021,9 +1021,9 @@ subroutine char_test()
end if
sync all
if (this_image() == num_images()) then
- if (str1a /= 1_"abc") call abort()
+ if (str1a /= 1_"abc") STOP 101
else
- if (str1a /= 1_"XXX") call abort()
+ if (str1a /= 1_"XXX") STOP 102
end if
! SCALAR - kind 4 <- 1 - with trimming
@@ -1037,9 +1037,9 @@ subroutine char_test()
end if
sync all
if (this_image() == num_images()) then
- if (ustr1a /= 4_"abc") call abort()
+ if (ustr1a /= 4_"abc") STOP 103
else
- if (ustr1a /= 4_"XXX") call abort()
+ if (ustr1a /= 4_"XXX") STOP 104
end if
! - - - - - array = array
@@ -1060,10 +1060,10 @@ subroutine char_test()
sync all
if (this_image() == num_images()) then
if (str2b(1) /= 1_"abc " .or. str2b(2) /= 1_"def " &
- .or. str2b(3) /= 1_"gjh ") call abort()
+ .or. str2b(3) /= 1_"gjh ") STOP 105
else
if (str2b(1) /= 1_"XXXXXXX" .or. str2b(2) /= 1_"YYYYYYY" &
- .or. str2b(3) /= 1_"ZZZZZZZ") call abort()
+ .or. str2b(3) /= 1_"ZZZZZZZ") STOP 106
end if
! contiguous ARRAY - kind 4 <- 1 - with padding
@@ -1082,10 +1082,10 @@ subroutine char_test()
sync all
if (this_image() == num_images()) then
if (ustr2b(1) /= 4_"abc " .or. ustr2b(2) /= 4_"def " &
- .or. ustr2b(3) /= 4_"gjh ") call abort()
+ .or. ustr2b(3) /= 4_"gjh ") STOP 107
else
if (ustr2b(1) /= 4_"XXXXXXX" .or. ustr2b(2) /= 4_"YYYYYYY" &
- .or. ustr2b(3) /= 4_"ZZZZZZZ") call abort()
+ .or. ustr2b(3) /= 4_"ZZZZZZZ") STOP 108
end if
! contiguous ARRAY - kind 1 <- 4 - with trimming
@@ -1104,10 +1104,10 @@ subroutine char_test()
sync all
if (this_image() == num_images()) then
if (str1b(1) /= 1_"abc" .or. str1b(2) /= 1_"hij" &
- .or. str1b(3) /= 1_"opq") call abort()
+ .or. str1b(3) /= 1_"opq") STOP 109
else
if (str1b(1) /= 1_"XXX" .or. str1b(2) /= 1_"YYY" &
- .or. str1b(3) /= 1_"ZZZ") call abort()
+ .or. str1b(3) /= 1_"ZZZ") STOP 110
end if
! contiguous ARRAY - kind 4 <- 1 - with trimming
@@ -1126,10 +1126,10 @@ subroutine char_test()
sync all
if (this_image() == num_images()) then
if (ustr1b(1) /= 4_"abc" .or. ustr1b(2) /= 4_"hij" &
- .or. ustr1b(3) /= 4_"opq") call abort()
+ .or. ustr1b(3) /= 4_"opq") STOP 111
else
if (ustr1b(1) /= 4_"XXX" .or. ustr1b(2) /= 4_"YYY" &
- .or. ustr1b(3) /= 4_"ZZZ") call abort()
+ .or. ustr1b(3) /= 4_"ZZZ") STOP 112
end if
! - - - - - array = scalar
@@ -1148,10 +1148,10 @@ subroutine char_test()
sync all
if (this_image() == num_images()) then
if (str2b(1) /= 1_"abc " .or. str2b(2) /= 1_"abc " &
- .or. str2b(3) /= 1_"abc ") call abort()
+ .or. str2b(3) /= 1_"abc ") STOP 113
else
if (str2b(1) /= 1_"XXXXXXX" .or. str2b(2) /= 1_"YYYYYYY" &
- .or. str2b(3) /= 1_"ZZZZZZZ") call abort()
+ .or. str2b(3) /= 1_"ZZZZZZZ") STOP 114
end if
! contiguous ARRAY - kind 4 <- 1 - with padding
@@ -1168,10 +1168,10 @@ subroutine char_test()
sync all
if (this_image() == num_images()) then
if (ustr2b(1) /= 4_"abc " .or. ustr2b(2) /= 4_"abc " &
- .or. ustr2b(3) /= 4_"abc ") call abort()
+ .or. ustr2b(3) /= 4_"abc ") STOP 115
else
if (ustr2b(1) /= 4_"XXXXXXX" .or. ustr2b(2) /= 4_"YYYYYYY" &
- .or. ustr2b(3) /= 4_"ZZZZZZZ") call abort()
+ .or. ustr2b(3) /= 4_"ZZZZZZZ") STOP 116
end if
! contiguous ARRAY - kind 1 <- 4 - with trimming
@@ -1188,10 +1188,10 @@ subroutine char_test()
sync all
if (this_image() == num_images()) then
if (str1b(1) /= 1_"abc" .or. str1b(2) /= 1_"abc" &
- .or. str1b(3) /= 1_"abc") call abort()
+ .or. str1b(3) /= 1_"abc") STOP 117
else
if (str1b(1) /= 1_"XXX" .or. str1b(2) /= 1_"YYY" &
- .or. str1b(3) /= 1_"ZZZ") call abort()
+ .or. str1b(3) /= 1_"ZZZ") STOP 118
end if
! contiguous ARRAY - kind 4 <- 1 - with trimming
@@ -1208,10 +1208,10 @@ subroutine char_test()
sync all
if (this_image() == num_images()) then
if (ustr1b(1) /= 4_"abc" .or. ustr1b(2) /= 4_"abc" &
- .or. ustr1b(3) /= 4_"abc") call abort()
+ .or. ustr1b(3) /= 4_"abc") STOP 119
else
if (ustr1b(1) /= 4_"XXX" .or. ustr1b(2) /= 4_"YYY" &
- .or. ustr1b(3) /= 4_"ZZZ") call abort()
+ .or. ustr1b(3) /= 4_"ZZZ") STOP 120
end if
@@ -1230,9 +1230,9 @@ subroutine char_test()
end if
sync all
if (this_image() == 1) then
- if (str2a /= 1_"abc ") call abort()
+ if (str2a /= 1_"abc ") STOP 121
else
- if (str2a /= 1_"XXXXXXX") call abort()
+ if (str2a /= 1_"XXXXXXX") STOP 122
end if
! SCALAR - kind 4 <- 1 - with padding
@@ -1246,9 +1246,9 @@ subroutine char_test()
end if
sync all
if (this_image() == 1) then
- if (ustr2a /= 4_"abc ") call abort()
+ if (ustr2a /= 4_"abc ") STOP 123
else
- if (ustr2a /= 4_"XXXXXXX") call abort()
+ if (ustr2a /= 4_"XXXXXXX") STOP 124
end if
! SCALAR - kind 1 <- 4 - with trimming
@@ -1262,9 +1262,9 @@ subroutine char_test()
end if
sync all
if (this_image() == 1) then
- if (str1a /= 1_"abc") call abort()
+ if (str1a /= 1_"abc") STOP 125
else
- if (str1a /= 1_"XXX") call abort()
+ if (str1a /= 1_"XXX") STOP 126
end if
! SCALAR - kind 4 <- 1 - with trimming
@@ -1278,9 +1278,9 @@ subroutine char_test()
end if
sync all
if (this_image() == 1) then
- if (ustr1a /= 4_"abc") call abort()
+ if (ustr1a /= 4_"abc") STOP 127
else
- if (ustr1a /= 4_"XXX") call abort()
+ if (ustr1a /= 4_"XXX") STOP 128
end if
! - - - - - array = array
@@ -1301,10 +1301,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (str2b(1) /= 1_"abc " .or. str2b(2) /= 1_"def " &
- .or. str2b(3) /= 1_"gjh ") call abort()
+ .or. str2b(3) /= 1_"gjh ") STOP 129
else
if (str2b(1) /= 1_"XXXXXXX" .or. str2b(2) /= 1_"YYYYYYY" &
- .or. str2b(3) /= 1_"ZZZZZZZ") call abort()
+ .or. str2b(3) /= 1_"ZZZZZZZ") STOP 130
end if
! contiguous ARRAY - kind 4 <- 1 - with padding
@@ -1323,10 +1323,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (ustr2b(1) /= 4_"abc " .or. ustr2b(2) /= 4_"def " &
- .or. ustr2b(3) /= 4_"gjh ") call abort()
+ .or. ustr2b(3) /= 4_"gjh ") STOP 131
else
if (ustr2b(1) /= 4_"XXXXXXX" .or. ustr2b(2) /= 4_"YYYYYYY" &
- .or. ustr2b(3) /= 4_"ZZZZZZZ") call abort()
+ .or. ustr2b(3) /= 4_"ZZZZZZZ") STOP 132
end if
! contiguous ARRAY - kind 1 <- 4 - with trimming
@@ -1345,10 +1345,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (str1b(1) /= 1_"abc" .or. str1b(2) /= 1_"hij" &
- .or. str1b(3) /= 1_"opq") call abort()
+ .or. str1b(3) /= 1_"opq") STOP 133
else
if (str1b(1) /= 1_"XXX" .or. str1b(2) /= 1_"YYY" &
- .or. str1b(3) /= 1_"ZZZ") call abort()
+ .or. str1b(3) /= 1_"ZZZ") STOP 134
end if
! contiguous ARRAY - kind 4 <- 1 - with trimming
@@ -1367,10 +1367,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (ustr1b(1) /= 4_"abc" .or. ustr1b(2) /= 4_"hij" &
- .or. ustr1b(3) /= 4_"opq") call abort()
+ .or. ustr1b(3) /= 4_"opq") STOP 135
else
if (ustr1b(1) /= 4_"XXX" .or. ustr1b(2) /= 4_"YYY" &
- .or. ustr1b(3) /= 4_"ZZZ") call abort()
+ .or. ustr1b(3) /= 4_"ZZZ") STOP 136
end if
! - - - - - array = scalar
@@ -1389,10 +1389,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (str2b(1) /= 1_"abc " .or. str2b(2) /= 1_"abc " &
- .or. str2b(3) /= 1_"abc ") call abort()
+ .or. str2b(3) /= 1_"abc ") STOP 137
else
if (str2b(1) /= 1_"XXXXXXX" .or. str2b(2) /= 1_"YYYYYYY" &
- .or. str2b(3) /= 1_"ZZZZZZZ") call abort()
+ .or. str2b(3) /= 1_"ZZZZZZZ") STOP 138
end if
! contiguous ARRAY - kind 4 <- 1 - with padding
@@ -1409,10 +1409,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (ustr2b(1) /= 4_"abc " .or. ustr2b(2) /= 4_"abc " &
- .or. ustr2b(3) /= 4_"abc ") call abort()
+ .or. ustr2b(3) /= 4_"abc ") STOP 139
else
if (ustr2b(1) /= 4_"XXXXXXX" .or. ustr2b(2) /= 4_"YYYYYYY" &
- .or. ustr2b(3) /= 4_"ZZZZZZZ") call abort()
+ .or. ustr2b(3) /= 4_"ZZZZZZZ") STOP 140
end if
! contiguous ARRAY - kind 1 <- 4 - with trimming
@@ -1429,10 +1429,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (str1b(1) /= 1_"abc" .or. str1b(2) /= 1_"abc" &
- .or. str1b(3) /= 1_"abc") call abort()
+ .or. str1b(3) /= 1_"abc") STOP 141
else
if (str1b(1) /= 1_"XXX" .or. str1b(2) /= 1_"YYY" &
- .or. str1b(3) /= 1_"ZZZ") call abort()
+ .or. str1b(3) /= 1_"ZZZ") STOP 142
end if
! contiguous ARRAY - kind 4 <- 1 - with trimming
@@ -1449,10 +1449,10 @@ subroutine char_test()
sync all
if (this_image() == 1) then
if (ustr1b(1) /= 4_"abc" .or. ustr1b(2) /= 4_"abc" &
- .or. ustr1b(3) /= 4_"abc") call abort()
+ .or. ustr1b(3) /= 4_"abc") STOP 143
else
if (ustr1b(1) /= 4_"XXX" .or. ustr1b(2) /= 4_"YYY" &
- .or. ustr1b(3) /= 4_"ZZZ") call abort()
+ .or. ustr1b(3) /= 4_"ZZZ") STOP 144
end if
end subroutine char_test
diff --git a/gcc/testsuite/gfortran.dg/coarray/collectives_1.f90 b/gcc/testsuite/gfortran.dg/coarray/collectives_1.f90
index 68b19a0dda8..d9a8c73f93c 100644
--- a/gcc/testsuite/gfortran.dg/coarray/collectives_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/collectives_1.f90
@@ -17,7 +17,7 @@ contains
call co_max (val, result_image=1)
if (this_image() == 1) then
!write(*,*) "Maximal value", val
- if (val /= num_images()) call abort()
+ if (val /= num_images()) STOP 1
end if
end subroutine test_max
@@ -27,7 +27,7 @@ contains
call co_min (val, result_image=1)
if (this_image() == 1) then
!write(*,*) "Minimal value", val
- if (val /= 1) call abort()
+ if (val /= 1) STOP 2
end if
end subroutine test_min
@@ -38,7 +38,7 @@ contains
if (this_image() == 1) then
!write(*,*) "The sum is ", val
n = num_images()
- if (val /= (n**2 + n)/2) call abort()
+ if (val /= (n**2 + n)/2) STOP 3
end if
end subroutine test_sum
end program test
diff --git a/gcc/testsuite/gfortran.dg/coarray/collectives_2.f90 b/gcc/testsuite/gfortran.dg/coarray/collectives_2.f90
index 3ff9383b8eb..7a7204b2310 100644
--- a/gcc/testsuite/gfortran.dg/coarray/collectives_2.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/collectives_2.f90
@@ -32,17 +32,17 @@ contains
integer :: tmp
call co_max (val(::2))
if (num_images() > 1) then
- if (any (val /= [42, this_image(), 101])) call abort()
+ if (any (val /= [42, this_image(), 101])) STOP 1
else
- if (any (val /= [42, this_image(), -55])) call abort()
+ if (any (val /= [42, this_image(), -55])) STOP 2
endif
val = tmp_val
call co_max (val(:))
if (num_images() > 1) then
- if (any (val /= [42, num_images(), 101])) call abort()
+ if (any (val /= [42, num_images(), 101])) STOP 3
else
- if (any (val /= [42, num_images(), -55])) call abort()
+ if (any (val /= [42, num_images(), -55])) STOP 4
endif
end subroutine test_max
@@ -51,12 +51,12 @@ contains
if (this_image() == num_images()) then
!write(*,*) "Minimal value", val
if (num_images() > 1) then
- if (any (val /= [-99, 1, -55])) call abort()
+ if (any (val /= [-99, 1, -55])) STOP 5
else
- if (any (val /= [42, 1, -55])) call abort()
+ if (any (val /= [42, 1, -55])) STOP 6
endif
else
- if (any (val /= tmp_val)) call abort()
+ if (any (val /= tmp_val)) STOP 7
endif
end subroutine test_min
@@ -64,13 +64,13 @@ contains
integer :: n
n = 88
call co_sum (val, result_image=1, stat=n)
- if (n /= 0) call abort()
+ if (n /= 0) STOP 8
if (this_image() == 1) then
n = num_images()
!write(*,*) "The sum is ", val
- if (any (val /= [42 + (n-1)*(-99), (n**2 + n)/2, -55+(n-1)*101])) call abort()
+ if (any (val /= [42 + (n-1)*(-99), (n**2 + n)/2, -55+(n-1)*101])) STOP 9
else
- if (any (val /= tmp_val)) call abort()
+ if (any (val /= tmp_val)) STOP 10
end if
end subroutine test_sum
end program test
diff --git a/gcc/testsuite/gfortran.dg/coarray/collectives_3.f90 b/gcc/testsuite/gfortran.dg/coarray/collectives_3.f90
index 123a85702a5..42387f8387e 100644
--- a/gcc/testsuite/gfortran.dg/coarray/collectives_3.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/collectives_3.f90
@@ -37,41 +37,41 @@ program test
sync all
call co_broadcast(i, source_image=num_images(), stat=stat, errmsg=errstr)
- if (stat /= 0) call abort()
- if (errstr /= "ZZZZZ") call abort()
- if (i /= 2) call abort()
+ if (stat /= 0) STOP 1
+ if (errstr /= "ZZZZZ") STOP 2
+ if (i /= 2) STOP 3
call co_broadcast(j, source_image=num_images(), stat=stat, errmsg=errstr)
- if (stat /= 0) call abort()
- if (errstr /= "ZZZZZ") call abort()
- if (any (j /= 66)) call abort
+ if (stat /= 0) STOP 4
+ if (errstr /= "ZZZZZ") STOP 5
+ if (any (j /= 66)) STOP 1
call co_broadcast(a, source_image=num_images(), stat=stat, errmsg=errstr)
- if (stat /= 0) call abort()
- if (errstr /= "ZZZZZ") call abort()
- if (any (a /= -99.0)) call abort
+ if (stat /= 0) STOP 6
+ if (errstr /= "ZZZZZ") STOP 7
+ if (any (a /= -99.0)) STOP 2
call co_broadcast(str1, source_image=num_images(), stat=stat, errmsg=errstr)
- if (stat /= 0) call abort()
- if (errstr /= "ZZZZZ") call abort()
- if (str1 /= "abcd") call abort()
+ if (stat /= 0) STOP 8
+ if (errstr /= "ZZZZZ") STOP 9
+ if (str1 /= "abcd") STOP 10
call co_broadcast(str2, source_image=num_images(), stat=stat, errmsg=errstr)
- if (stat /= 0) call abort()
- if (errstr /= "ZZZZZ") call abort()
- if (any (str2 /= 4_"12 3 4 5")) call abort
+ if (stat /= 0) STOP 11
+ if (errstr /= "ZZZZZ") STOP 12
+ if (any (str2 /= 4_"12 3 4 5")) STOP 3
call co_broadcast(dt, source_image=num_images(), stat=stat, errmsg=errstr)
- if (stat /= 0) call abort()
- if (errstr /= "ZZZZZ") call abort()
- if (any (dt(:)%i /= -1)) call abort()
- if (any (dt(:)%c /= 'a')) call abort()
- if (any (dt(:)%x(1) /= 3.)) call abort()
- if (any (dt(:)%x(2) /= 1.)) call abort()
- if (any (dt(:)%x(3) /= 8.)) call abort()
- if (any (dt(:)%y(1) /= 99.)) call abort()
- if (any (dt(:)%y(2) /= 24.)) call abort()
- if (any (dt(:)%y(3) /= 5.)) call abort()
+ if (stat /= 0) STOP 13
+ if (errstr /= "ZZZZZ") STOP 14
+ if (any (dt(:)%i /= -1)) STOP 15
+ if (any (dt(:)%c /= 'a')) STOP 16
+ if (any (dt(:)%x(1) /= 3.)) STOP 17
+ if (any (dt(:)%x(2) /= 1.)) STOP 18
+ if (any (dt(:)%x(3) /= 8.)) STOP 19
+ if (any (dt(:)%y(1) /= 99.)) STOP 20
+ if (any (dt(:)%y(2) /= 24.)) STOP 21
+ if (any (dt(:)%y(3) /= 5.)) STOP 22
sync all
dt = t(1, 'C', [1.,2.,3.], [3,3,3])
@@ -83,54 +83,54 @@ program test
call co_broadcast(str2(::2), source_image=num_images(), stat=stat, &
errmsg=errstr)
- if (stat /= 0) call abort()
- if (errstr /= "ZZZZZ") call abort()
- if (str2(1) /= 4_"001122") call abort()
+ if (stat /= 0) STOP 23
+ if (errstr /= "ZZZZZ") STOP 24
+ if (str2(1) /= 4_"001122") STOP 25
if (this_image() == num_images()) then
- if (str2(1) /= 4_"001122") call abort()
+ if (str2(1) /= 4_"001122") STOP 26
else
- if (str2(2) /= 4_"12 3 4 5") call abort()
+ if (str2(2) /= 4_"12 3 4 5") STOP 27
end if
call co_broadcast(dt(2::2), source_image=num_images(), stat=stat, &
errmsg=errstr)
- if (stat /= 0) call abort()
- if (errstr /= "ZZZZZ") call abort()
+ if (stat /= 0) STOP 28
+ if (errstr /= "ZZZZZ") STOP 29
if (this_image() == num_images()) then
- if (any (dt(1:1)%i /= 1)) call abort()
- if (any (dt(1:1)%c /= 'C')) call abort()
- if (any (dt(1:1)%x(1) /= 1.)) call abort()
- if (any (dt(1:1)%x(2) /= 2.)) call abort()
- if (any (dt(1:1)%x(3) /= 3.)) call abort()
- if (any (dt(1:1)%y(1) /= 3.)) call abort()
- if (any (dt(1:1)%y(2) /= 3.)) call abort()
- if (any (dt(1:1)%y(3) /= 3.)) call abort()
+ if (any (dt(1:1)%i /= 1)) STOP 30
+ if (any (dt(1:1)%c /= 'C')) STOP 31
+ if (any (dt(1:1)%x(1) /= 1.)) STOP 32
+ if (any (dt(1:1)%x(2) /= 2.)) STOP 33
+ if (any (dt(1:1)%x(3) /= 3.)) STOP 34
+ if (any (dt(1:1)%y(1) /= 3.)) STOP 35
+ if (any (dt(1:1)%y(2) /= 3.)) STOP 36
+ if (any (dt(1:1)%y(3) /= 3.)) STOP 37
- if (any (dt(2:)%i /= -2)) call abort()
- if (any (dt(2:)%c /= 'i')) call abort()
- if (any (dt(2:)%x(1) /= 9.)) call abort()
- if (any (dt(2:)%x(2) /= 2.)) call abort()
- if (any (dt(2:)%x(3) /= 3.)) call abort()
- if (any (dt(2:)%y(1) /= 4.)) call abort()
- if (any (dt(2:)%y(2) /= 44.)) call abort()
- if (any (dt(2:)%y(3) /= 321.)) call abort()
+ if (any (dt(2:)%i /= -2)) STOP 38
+ if (any (dt(2:)%c /= 'i')) STOP 39
+ if (any (dt(2:)%x(1) /= 9.)) STOP 40
+ if (any (dt(2:)%x(2) /= 2.)) STOP 41
+ if (any (dt(2:)%x(3) /= 3.)) STOP 42
+ if (any (dt(2:)%y(1) /= 4.)) STOP 43
+ if (any (dt(2:)%y(2) /= 44.)) STOP 44
+ if (any (dt(2:)%y(3) /= 321.)) STOP 45
else
- if (any (dt(1::2)%i /= 1)) call abort()
- if (any (dt(1::2)%c /= 'C')) call abort()
- if (any (dt(1::2)%x(1) /= 1.)) call abort()
- if (any (dt(1::2)%x(2) /= 2.)) call abort()
- if (any (dt(1::2)%x(3) /= 3.)) call abort()
- if (any (dt(1::2)%y(1) /= 3.)) call abort()
- if (any (dt(1::2)%y(2) /= 3.)) call abort()
- if (any (dt(1::2)%y(3) /= 3.)) call abort()
+ if (any (dt(1::2)%i /= 1)) STOP 46
+ if (any (dt(1::2)%c /= 'C')) STOP 47
+ if (any (dt(1::2)%x(1) /= 1.)) STOP 48
+ if (any (dt(1::2)%x(2) /= 2.)) STOP 49
+ if (any (dt(1::2)%x(3) /= 3.)) STOP 50
+ if (any (dt(1::2)%y(1) /= 3.)) STOP 51
+ if (any (dt(1::2)%y(2) /= 3.)) STOP 52
+ if (any (dt(1::2)%y(3) /= 3.)) STOP 53
- if (any (dt(2::2)%i /= -2)) call abort()
- if (any (dt(2::2)%c /= 'i')) call abort()
- if (any (dt(2::2)%x(1) /= 9.)) call abort()
- if (any (dt(2::2)%x(2) /= 2.)) call abort()
- if (any (dt(2::2)%x(3) /= 3.)) call abort()
- if (any (dt(2::2)%y(1) /= 4.)) call abort()
- if (any (dt(2::2)%y(2) /= 44.)) call abort()
- if (any (dt(2::2)%y(3) /= 321.)) call abort()
+ if (any (dt(2::2)%i /= -2)) STOP 54
+ if (any (dt(2::2)%c /= 'i')) STOP 55
+ if (any (dt(2::2)%x(1) /= 9.)) STOP 56
+ if (any (dt(2::2)%x(2) /= 2.)) STOP 57
+ if (any (dt(2::2)%x(3) /= 3.)) STOP 58
+ if (any (dt(2::2)%y(1) /= 4.)) STOP 59
+ if (any (dt(2::2)%y(2) /= 44.)) STOP 60
+ if (any (dt(2::2)%y(3) /= 321.)) STOP 61
endif
end program test
diff --git a/gcc/testsuite/gfortran.dg/coarray/collectives_4.f90 b/gcc/testsuite/gfortran.dg/coarray/collectives_4.f90
index 6e7be46eb3c..870f9481960 100644
--- a/gcc/testsuite/gfortran.dg/coarray/collectives_4.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/collectives_4.f90
@@ -13,8 +13,8 @@ do i = 2, num_images()
i4_2 = i4_2 * 21 * i
end do
call co_reduce(i4, op_i4, stat=stat)
-if (stat /= 0) call abort()
-if (i4_2 /= i4) call abort()
+if (stat /= 0) STOP 1
+if (i4_2 /= i4) STOP 2
contains
pure integer function op_i4(a,b)
diff --git a/gcc/testsuite/gfortran.dg/coarray/cosubscript_1.f90 b/gcc/testsuite/gfortran.dg/coarray/cosubscript_1.f90
index 20ee454450f..426c1dd463a 100644
--- a/gcc/testsuite/gfortran.dg/coarray/cosubscript_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/cosubscript_1.f90
@@ -32,7 +32,7 @@ program cosubscript_test
k = 1
j = -1
i = 0
- if (scalar[i,j,k] /= this_image()) call abort
+ if (scalar[i,j,k] /= this_image()) STOP 1
stop "OK"
else if (num_images() == 2) then
k = 1
@@ -40,7 +40,7 @@ program cosubscript_test
counter = 0
do i = 0,P
counter = counter+1
- if (counter /= scalar[i,j,k]) call abort()
+ if (counter /= scalar[i,j,k]) STOP 1
end do
stop "OK"
end if
@@ -61,6 +61,6 @@ program cosubscript_test
end do
if (is_err) then
- call abort()
+ STOP 2
end if
end program cosubscript_test
diff --git a/gcc/testsuite/gfortran.dg/coarray/dummy_1.f90 b/gcc/testsuite/gfortran.dg/coarray/dummy_1.f90
index 8e4b7d7fcf1..33e95853ad4 100644
--- a/gcc/testsuite/gfortran.dg/coarray/dummy_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/dummy_1.f90
@@ -33,38 +33,38 @@
subroutine sub(A,n)
integer :: n
integer :: A(n:)[n:2*n,3*n:*]
- if (lbound(A,dim=1) /= n) call abort ()
- if (any (lcobound(A) /= [n, 3*n])) call abort ()
- if (ucobound(A, dim=1) /= 2*n) call abort()
+ if (lbound(A,dim=1) /= n) STOP 1
+ if (any (lcobound(A) /= [n, 3*n])) STOP 2
+ if (ucobound(A, dim=1) /= 2*n) STOP 3
end subroutine sub
subroutine sub2(A,n)
integer :: n
integer :: A(:)[-n:*]
- if (lbound(A,dim=1) /= 1) call abort ()
- if (lcobound(A, dim=1) /= -n) call abort ()
+ if (lbound(A,dim=1) /= 1) STOP 4
+ if (lcobound(A, dim=1) /= -n) STOP 5
end subroutine sub2
subroutine sub3(A)
integer :: A(:)[0,*]
- if (lbound(A,dim=1) /= 1) call abort ()
- if (lcobound(A, dim=1) /= 1) call abort ()
- if (ucobound(A, dim=1) /= 0) call abort ()
- if (lcobound(A, dim=2) /= 1) call abort ()
+ if (lbound(A,dim=1) /= 1) STOP 6
+ if (lcobound(A, dim=1) /= 1) STOP 7
+ if (ucobound(A, dim=1) /= 0) STOP 8
+ if (lcobound(A, dim=2) /= 1) STOP 9
end subroutine sub3
subroutine sub4(A)
integer :: A(:)[*]
- if (lbound(A,dim=1) /= 1) call abort ()
- if (lcobound(A, dim=1) /= 1) call abort ()
+ if (lbound(A,dim=1) /= 1) STOP 10
+ if (lcobound(A, dim=1) /= 1) STOP 11
end subroutine sub4
subroutine sub5(A)
integer, allocatable :: A(:)[:,:]
- if (lbound(A,dim=1) /= 1) call abort ()
- if (lcobound(A, dim=1) /= 2) call abort ()
- if (ucobound(A, dim=1) /= 3) call abort ()
- if (lcobound(A, dim=2) /= 5) call abort ()
+ if (lbound(A,dim=1) /= 1) STOP 12
+ if (lcobound(A, dim=1) /= 2) STOP 13
+ if (ucobound(A, dim=1) /= 3) STOP 14
+ if (lcobound(A, dim=2) /= 5) STOP 15
end subroutine sub5
end
diff --git a/gcc/testsuite/gfortran.dg/coarray/event_1.f90 b/gcc/testsuite/gfortran.dg/coarray/event_1.f90
index b4385f340ed..81dc90b7197 100644
--- a/gcc/testsuite/gfortran.dg/coarray/event_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/event_1.f90
@@ -10,42 +10,42 @@ integer :: count, stat
count = -42
call event_query (var, count)
-if (count /= 0) call abort()
+if (count /= 0) STOP 1
stat = 99
event post (var, stat=stat)
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 2
call event_query(var, count, stat=stat)
-if (count /= 1 .or. stat /= 0) call abort()
+if (count /= 1 .or. stat /= 0) STOP 3
stat = 99
event post (var[this_image()])
call event_query(var, count)
-if (count /= 2) call abort()
+if (count /= 2) STOP 4
stat = 99
event wait (var)
call event_query(var, count)
-if (count /= 1) call abort()
+if (count /= 1) STOP 5
stat = 99
event post (var)
call event_query(var, count)
-if (count /= 2) call abort()
+if (count /= 2) STOP 6
stat = 99
event post (var)
call event_query(var, count)
-if (count /= 3) call abort()
+if (count /= 3) STOP 7
stat = 99
event wait (var, until_count=2)
call event_query(var, count)
-if (count /= 1) call abort()
+if (count /= 1) STOP 8
stat = 99
event wait (var, stat=stat, until_count=1)
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 9
call event_query(event=var, stat=stat, count=count)
-if (count /= 0 .or. stat /= 0) call abort()
+if (count /= 0 .or. stat /= 0) STOP 10
end
diff --git a/gcc/testsuite/gfortran.dg/coarray/event_2.f90 b/gcc/testsuite/gfortran.dg/coarray/event_2.f90
index 2d451a557a9..d06c05b515c 100644
--- a/gcc/testsuite/gfortran.dg/coarray/event_2.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/event_2.f90
@@ -12,78 +12,78 @@ allocate(var(3)[*])
count = -42
call event_query (var(1), count)
-if (count /= 0) call abort()
+if (count /= 0) STOP 1
call event_query (var(1), count)
-if (count /= 0) call abort()
+if (count /= 0) STOP 2
call event_query (var(2), count)
-if (count /= 0) call abort()
+if (count /= 0) STOP 3
call event_query (var(3), count)
-if (count /= 0) call abort()
+if (count /= 0) STOP 4
stat = 99
event post (var(2), stat=stat)
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 5
call event_query (var(1), count)
-if (count /= 0) call abort()
+if (count /= 0) STOP 6
call event_query(var(2), count, stat=stat)
-if (count /= 1 .or. stat /= 0) call abort()
+if (count /= 1 .or. stat /= 0) STOP 7
call event_query (var(3), count)
-if (count /= 0) call abort()
+if (count /= 0) STOP 8
stat = 99
event post (var(2)[this_image()])
call event_query(var(1), count)
-if (count /= 0) call abort()
+if (count /= 0) STOP 9
call event_query(var(2), count)
-if (count /= 2) call abort()
+if (count /= 2) STOP 10
call event_query(var(2), count)
-if (count /= 2) call abort()
+if (count /= 2) STOP 11
call event_query(var(3), count)
-if (count /= 0) call abort()
+if (count /= 0) STOP 12
stat = 99
event wait (var(2))
call event_query(var(1), count)
-if (count /= 0) call abort()
+if (count /= 0) STOP 13
call event_query(var(2), count)
-if (count /= 1) call abort()
+if (count /= 1) STOP 14
call event_query(var(3), count)
-if (count /= 0) call abort()
+if (count /= 0) STOP 15
stat = 99
event post (var(2))
call event_query(var(1), count)
-if (count /= 0) call abort()
+if (count /= 0) STOP 16
call event_query(var(2), count)
-if (count /= 2) call abort()
+if (count /= 2) STOP 17
call event_query(var(3), count)
-if (count /= 0) call abort()
+if (count /= 0) STOP 18
stat = 99
event post (var(2))
call event_query(var(1), count)
-if (count /= 0) call abort()
+if (count /= 0) STOP 19
call event_query(var(2), count)
-if (count /= 3) call abort()
+if (count /= 3) STOP 20
call event_query(var(3), count)
-if (count /= 0) call abort()
+if (count /= 0) STOP 21
stat = 99
event wait (var(2), until_count=2)
call event_query(var(1), count)
-if (count /= 0) call abort()
+if (count /= 0) STOP 22
call event_query(var(2), count)
-if (count /= 1) call abort()
+if (count /= 1) STOP 23
call event_query(var(3), count)
-if (count /= 0) call abort()
+if (count /= 0) STOP 24
stat = 99
event wait (var(2), stat=stat, until_count=1)
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 25
call event_query(event=var(1), stat=stat, count=count)
-if (count /= 0 .or. stat /= 0) call abort()
+if (count /= 0 .or. stat /= 0) STOP 26
call event_query(event=var(2), stat=stat, count=count)
-if (count /= 0 .or. stat /= 0) call abort()
+if (count /= 0 .or. stat /= 0) STOP 27
call event_query(event=var(3), stat=stat, count=count)
-if (count /= 0 .or. stat /= 0) call abort()
+if (count /= 0 .or. stat /= 0) STOP 28
end
diff --git a/gcc/testsuite/gfortran.dg/coarray/get_array.f90 b/gcc/testsuite/gfortran.dg/coarray/get_array.f90
index c4c96671f62..34f5d82ab44 100644
--- a/gcc/testsuite/gfortran.dg/coarray/get_array.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/get_array.f90
@@ -50,7 +50,7 @@ contains
a(:,:) = b(:,:)
c(:,:) = caf(:,:)[num_images()]
if (any (a /= c)) then
- call abort()
+ STOP 1
end if
sync all
@@ -75,7 +75,7 @@ contains
end do
end do
if (any (a /= c)) then
- call abort()
+ STOP 2
end if
sync all
@@ -101,7 +101,7 @@ contains
c(i:i_e:i_s*i_sgn1, j:j_e:j_s*i_sgn2) &
= caf(i:i_e:i_s*i_sgn1, j:j_e:j_s*i_sgn2)[num_images()]
if (any (c /= a)) then
- call abort()
+ STOP 3
end if
sync all
end do
@@ -136,7 +136,7 @@ contains
a(:,:) = b(:,:)
c(:,:) = caf(:,:)[num_images()]
if (any (a /= c)) then
- call abort()
+ STOP 4
end if
sync all
@@ -161,7 +161,7 @@ contains
end do
end do
if (any (a /= c)) then
- call abort()
+ STOP 5
end if
sync all
@@ -187,7 +187,7 @@ contains
c(i:i_e:i_s*i_sgn1, j:j_e:j_s*i_sgn2) &
= caf(i:i_e:i_s*i_sgn1, j:j_e:j_s*i_sgn2)[num_images()]
if (any (c /= a)) then
- call abort()
+ STOP 6
end if
sync all
end do
@@ -222,7 +222,7 @@ contains
a(:,:) = b(:,:)
c(:,:) = caf(:,:)[num_images()]
if (any (a /= c)) then
- call abort()
+ STOP 7
end if
sync all
@@ -247,7 +247,7 @@ contains
end do
end do
if (any (a /= c)) then
- call abort()
+ STOP 8
end if
sync all
@@ -273,7 +273,7 @@ contains
c(i:i_e:i_s*i_sgn1, j:j_e:j_s*i_sgn2) &
= caf(i:i_e:i_s*i_sgn1, j:j_e:j_s*i_sgn2)[num_images()]
if (any (c /= a)) then
- call abort()
+ STOP 9
end if
sync all
end do
diff --git a/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90 b/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90
index 00e5e09a74f..5f03cc67a12 100644
--- a/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/image_index_1.f90
@@ -29,7 +29,7 @@ allocate(c(3,3)[*])
index1 = image_index(a, [3, -4, 88] )
index2 = image_index(b, [-1, 0] )
index3 = image_index(c, [1] )
-if (index1 /= 1 .or. index2 /= 1 .or. index3 /= 1) call abort()
+if (index1 /= 1 .or. index2 /= 1 .or. index3 /= 1) STOP 1
index1 = image_index(a, [3, -3, 88] )
@@ -37,26 +37,26 @@ index2 = image_index(b, [0, 0] )
index3 = image_index(c, [2] )
if (one .and. (index1 /= 0 .or. index2 /= 0 .or. index3 /= 0)) &
- call abort()
+ STOP 2
if (.not. one .and. (index1 /= 2 .or. index2 /= 2 .or. index3 /= 2)) &
- call abort()
+ STOP 3
index1 = image_index(d, [-1, 1] )
index2 = image_index(d, [0, 1] )
if (one .and. (index1 /= 1 .or. index2 /= 0)) &
- call abort()
+ STOP 4
if (.not. one .and. (index1 /= 1 .or. index2 /= 2)) &
- call abort()
+ STOP 5
index1 = image_index(e, [-1, 3] )
index2 = image_index(e, [-1, 4] )
if (one .and. (index1 /= 1 .or. index2 /= 0)) &
- call abort()
+ STOP 6
if (.not. one .and. (index1 /= 1 .or. index2 /= 2)) &
- call abort()
+ STOP 7
call test(1, a,b,c)
@@ -69,11 +69,11 @@ index2 = image_index(a, [3, 1, 2] ) ! = 213, yeah!
index3 = image_index(a, [3, 1, 0] ) ! = 13
if (num_images() < 13 .and. (index1 /= 1 .or. index2 /= 0 .or. index3 /= 0)) &
- call abort()
+ STOP 8
if (num_images() >= 213 .and. (index1 /= 1 .or. index2 /= 213 .or. index3 /= 13)) &
- call abort()
+ STOP 9
if (num_images() >= 13 .and. (index1 /= 1 .or. index2 /= 0 .or. index3 /= 13)) &
- call abort()
+ STOP 10
contains
@@ -84,7 +84,7 @@ subroutine test(n, a, b, c)
index1 = image_index(a, [3, -4, 88] )
index2 = image_index(b, [-1, 0] )
index3 = image_index(c, [1] )
- if (index1 /= 1 .or. index2 /= 1 .or. index3 /= 1) call abort()
+ if (index1 /= 1 .or. index2 /= 1 .or. index3 /= 1) STOP 11
index1 = image_index(a, [3, -3, 88] )
@@ -92,8 +92,8 @@ subroutine test(n, a, b, c)
index3 = image_index(c, [2] )
if (one .and. (index1 /= 0 .or. index2 /= 0 .or. index3 /= 0)) &
- call abort()
+ STOP 12
if (.not. one .and. (index1 /= 2 .or. index2 /= 2 .or. index3 /= 2)) &
- call abort()
+ STOP 13
end subroutine test
end program test_image_index
diff --git a/gcc/testsuite/gfortran.dg/coarray/image_index_2.f90 b/gcc/testsuite/gfortran.dg/coarray/image_index_2.f90
index 794781c7add..2768f09c515 100644
--- a/gcc/testsuite/gfortran.dg/coarray/image_index_2.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/image_index_2.f90
@@ -27,17 +27,17 @@ index1 = image_index(d, [-1, 1] )
index2 = image_index(d, [0, 1] )
if (one .and. (index1 /= 1 .or. index2 /= 0)) &
- call abort()
+ STOP 1
if (.not. one .and. (index1 /= 1 .or. index2 /= 2)) &
- call abort()
+ STOP 2
index1 = image_index(e, [-1, 3] )
index2 = image_index(e, [-1, 4] )
if (one .and. (index1 /= 1 .or. index2 /= 0)) &
- call abort()
+ STOP 3
if (.not. one .and. (index1 /= 1 .or. index2 /= 2)) &
- call abort()
+ STOP 4
call test(1, e, d, e)
call test(2, e, d, e)
@@ -52,11 +52,11 @@ subroutine test(n, a, b, c)
index3 = image_index(c, [1] )
if (n == 1) then
- if (index1 /= 1 .or. index2 /= 1 .or. index3 /= 1) call abort()
+ if (index1 /= 1 .or. index2 /= 1 .or. index3 /= 1) STOP 5
else if (num_images() == 1) then
- if (index1 /= 1 .or. index2 /= 0 .or. index3 /= 1) call abort()
+ if (index1 /= 1 .or. index2 /= 0 .or. index3 /= 1) STOP 6
else
- if (index1 /= 1 .or. index2 /= 2 .or. index3 /= 1) call abort()
+ if (index1 /= 1 .or. index2 /= 2 .or. index3 /= 1) STOP 7
end if
index1 = image_index(a, [3*n, -3*n, 88*n] )
@@ -64,13 +64,13 @@ subroutine test(n, a, b, c)
index3 = image_index(c, [2] )
if (one .and. (index1 /= 0 .or. index2 /= 0 .or. index3 /= 0)) &
- call abort()
+ STOP 8
if (n == 1 .and. num_images() == 2) then
if (index1 /= 2 .or. index2 /= 2 .or. index3 /= 2) &
- call abort()
+ STOP 9
else if (n == 2 .and. num_images() == 2) then
if (index1 /= 0 .or. index2 /= 0 .or. index3 /= 2) &
- call abort()
+ STOP 10
end if
end subroutine test
end program test_image_index
diff --git a/gcc/testsuite/gfortran.dg/coarray/image_index_3.f90 b/gcc/testsuite/gfortran.dg/coarray/image_index_3.f90
index 9bfa02db3e6..3f9a79c165e 100644
--- a/gcc/testsuite/gfortran.dg/coarray/image_index_3.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/image_index_3.f90
@@ -33,7 +33,7 @@ allocate(c(3,3)[*])
index1 = image_index(a, [3, -4, 88] )
index2 = image_index(b, [-1, 0] )
index3 = image_index(c, [1] )
-if (index1 /= 1 .or. index2 /= 1 .or. index3 /= 1) call abort()
+if (index1 /= 1 .or. index2 /= 1 .or. index3 /= 1) STOP 1
index1 = image_index(a, [3, -3, 88] )
@@ -41,26 +41,26 @@ index2 = image_index(b, [0, 0] )
index3 = image_index(c, [2] )
if (one .and. (index1 /= 0 .or. index2 /= 0 .or. index3 /= 0)) &
- call abort()
+ STOP 2
if (.not. one .and. (index1 /= 2 .or. index2 /= 2 .or. index3 /= 2)) &
- call abort()
+ STOP 3
index1 = image_index(d, [-1, 1] )
index2 = image_index(d, [0, 1] )
if (one .and. (index1 /= 1 .or. index2 /= 0)) &
- call abort()
+ STOP 4
if (.not. one .and. (index1 /= 1 .or. index2 /= 2)) &
- call abort()
+ STOP 5
index1 = image_index(e, [-1, 3] )
index2 = image_index(e, [-1, 4] )
if (one .and. (index1 /= 1 .or. index2 /= 0)) &
- call abort()
+ STOP 6
if (.not. one .and. (index1 /= 1 .or. index2 /= 2)) &
- call abort()
+ STOP 7
call test(1, a,b,c)
@@ -73,11 +73,11 @@ index2 = image_index(a, [3, 1, 2] ) ! = 213, yeah!
index3 = image_index(a, [3, 1, 0] ) ! = 13
if (num_images() < 13 .and. (index1 /= 1 .or. index2 /= 0 .or. index3 /= 0)) &
- call abort()
+ STOP 8
if (num_images() >= 213 .and. (index1 /= 1 .or. index2 /= 213 .or. index3 /= 13)) &
- call abort()
+ STOP 9
if (num_images() >= 13 .and. (index1 /= 1 .or. index2 /= 0 .or. index3 /= 13)) &
- call abort()
+ STOP 10
contains
@@ -88,7 +88,7 @@ subroutine test(n, a, b, c)
index1 = image_index(a, [3, -4, 88] )
index2 = image_index(b, [-1, 0] )
index3 = image_index(c, [1] )
- if (index1 /= 1 .or. index2 /= 1 .or. index3 /= 1) call abort()
+ if (index1 /= 1 .or. index2 /= 1 .or. index3 /= 1) STOP 11
index1 = image_index(a, [3, -3, 88] )
@@ -96,8 +96,8 @@ subroutine test(n, a, b, c)
index3 = image_index(c, [2] )
if (one .and. (index1 /= 0 .or. index2 /= 0 .or. index3 /= 0)) &
- call abort()
+ STOP 12
if (.not. one .and. (index1 /= 2 .or. index2 /= 2 .or. index3 /= 2)) &
- call abort()
+ STOP 13
end subroutine test
end program test_image_index
diff --git a/gcc/testsuite/gfortran.dg/coarray/lib_realloc_1.f90 b/gcc/testsuite/gfortran.dg/coarray/lib_realloc_1.f90
index f3d7f35f271..73fe74ed9cb 100644
--- a/gcc/testsuite/gfortran.dg/coarray/lib_realloc_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/lib_realloc_1.f90
@@ -16,14 +16,14 @@ integer, pointer :: ptr
allocate(x%caf[*], y%caf[*])
ptr => y%caf
ptr = 6
-if (.not.allocated(x%caf)) call abort()
-if (.not.allocated(y%caf)) call abort()
-if (y%caf /= 6) call abort ()
+if (.not.allocated(x%caf)) STOP 1
+if (.not.allocated(y%caf)) STOP 2
+if (y%caf /= 6) STOP 3
x = y
-if (x%caf /= 6) call abort ()
-if (.not. associated (ptr,y%caf)) call abort()
-if (associated (ptr,x%caf)) call abort()
+if (x%caf /= 6) STOP 4
+if (.not. associated (ptr,y%caf)) STOP 5
+if (associated (ptr,x%caf)) STOP 6
ptr = 123
-if (y%caf /= 123) call abort ()
-if (x%caf /= 6) call abort ()
+if (y%caf /= 123) STOP 7
+if (x%caf /= 6) STOP 8
end program main
diff --git a/gcc/testsuite/gfortran.dg/coarray/lock_1.f90 b/gcc/testsuite/gfortran.dg/coarray/lock_1.f90
index db4fbc8f7cb..1ec5984a4d3 100644
--- a/gcc/testsuite/gfortran.dg/coarray/lock_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/lock_1.f90
@@ -17,15 +17,15 @@ UNLOCK(lock)
stat = 99
LOCK(lock, stat=stat)
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 1
stat = 99
UNLOCK(lock, stat=stat)
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 2
if (this_image() == 1) then
acquired = .false.
LOCK (lock[this_image()], acquired_lock=acquired)
- if (.not. acquired) call abort()
+ if (.not. acquired) STOP 3
UNLOCK (lock[1])
end if
end
diff --git a/gcc/testsuite/gfortran.dg/coarray/lock_2.f90 b/gcc/testsuite/gfortran.dg/coarray/lock_2.f90
index 3afd8246ff4..8e96154996d 100644
--- a/gcc/testsuite/gfortran.dg/coarray/lock_2.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/lock_2.f90
@@ -32,52 +32,52 @@ UNLOCK(lock3(4))
stat = 99
LOCK(lock1, stat=stat)
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 1
LOCK(lock2(1,1), stat=stat)
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 2
LOCK(lock2(2,2), stat=stat)
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 3
LOCK(lock3(3), stat=stat)
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 4
LOCK(lock3(4), stat=stat)
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 5
stat = 99
UNLOCK(lock1, stat=stat)
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 6
UNLOCK(lock2(1,1), stat=stat)
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 7
UNLOCK(lock2(2,2), stat=stat)
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 8
UNLOCK(lock3(3), stat=stat)
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 9
UNLOCK(lock3(4), stat=stat)
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 10
if (this_image() == 1) then
acquired = .false.
LOCK (lock1[this_image()], acquired_lock=acquired)
- if (.not. acquired) call abort()
+ if (.not. acquired) STOP 11
acquired = .false.
LOCK (lock2(1,1)[this_image()], acquired_lock=acquired)
- if (.not. acquired) call abort()
+ if (.not. acquired) STOP 12
acquired = .false.
LOCK (lock2(2,2)[this_image()], acquired_lock=acquired)
- if (.not. acquired) call abort()
+ if (.not. acquired) STOP 13
acquired = .false.
LOCK (lock3(3)[this_image()], acquired_lock=acquired)
- if (.not. acquired) call abort()
+ if (.not. acquired) STOP 14
acquired = .false.
LOCK (lock3(4)[this_image()], acquired_lock=acquired)
- if (.not. acquired) call abort()
+ if (.not. acquired) STOP 15
UNLOCK (lock1[1])
UNLOCK (lock2(1,1)[1])
diff --git a/gcc/testsuite/gfortran.dg/coarray/move_alloc_1.f90 b/gcc/testsuite/gfortran.dg/coarray/move_alloc_1.f90
index 1f320522489..3cd71febcce 100644
--- a/gcc/testsuite/gfortran.dg/coarray/move_alloc_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/move_alloc_1.f90
@@ -9,16 +9,16 @@ integer, allocatable :: u[:], v[:], w(:)[:,:], x(:)[:,:]
allocate (u[4:*])
call move_alloc (u, v)
-if (allocated (u)) call abort ()
-if (lcobound (v, dim=1) /= 4) call abort ()
-if (ucobound (v, dim=1) /= 3 + num_images()) call abort ()
+if (allocated (u)) STOP 1
+if (lcobound (v, dim=1) /= 4) STOP 2
+if (ucobound (v, dim=1) /= 3 + num_images()) STOP 3
allocate (w(-2:3)[4:5,-1:*])
call move_alloc (w, x)
-if (allocated (w)) call abort ()
-if (lbound (x, dim=1) /= -2) call abort ()
-if (ubound (x, dim=1) /= 3) call abort ()
-if (any (lcobound (x) /= [4, -1])) call abort ()
-if (any (ucobound (x) /= [5, -2 + (num_images()+1)/2])) call abort ()
+if (allocated (w)) STOP 4
+if (lbound (x, dim=1) /= -2) STOP 5
+if (ubound (x, dim=1) /= 3) STOP 6
+if (any (lcobound (x) /= [4, -1])) STOP 7
+if (any (ucobound (x) /= [5, -2 + (num_images()+1)/2])) STOP 8
end
diff --git a/gcc/testsuite/gfortran.dg/coarray/poly_run_1.f90 b/gcc/testsuite/gfortran.dg/coarray/poly_run_1.f90
index 436c1d410fd..43525d96663 100644
--- a/gcc/testsuite/gfortran.dg/coarray/poly_run_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/poly_run_1.f90
@@ -6,11 +6,11 @@ type t
end type t
class(t), allocatable :: A(:)[:,:]
allocate (A(2)[1:4,-5:*])
-if (any (lcobound(A) /= [1, -5])) call abort ()
+if (any (lcobound(A) /= [1, -5])) STOP 1
if (num_images() == 1) then
- if (any (ucobound(A) /= [4, -5])) call abort ()
+ if (any (ucobound(A) /= [4, -5])) STOP 2
else
- if (ucobound(A,dim=1) /= 4) call abort ()
+ if (ucobound(A,dim=1) /= 4) STOP 3
end if
if (allocated(A)) i = 5
call s(A)
@@ -20,31 +20,31 @@ contains
subroutine s(x)
class(t),allocatable :: x(:)[:,:]
- if (any (lcobound(x) /= [1, -5])) call abort ()
+ if (any (lcobound(x) /= [1, -5])) STOP 4
if (num_images() == 1) then
- if (any (ucobound(x) /= [4, -5])) call abort ()
+ if (any (ucobound(x) /= [4, -5])) STOP 5
else
- if (ucobound(x,dim=1) /= 4) call abort ()
+ if (ucobound(x,dim=1) /= 4) STOP 6
end if
end subroutine s
subroutine st(x)
class(t) :: x(:)[4,2:*]
! FIXME
-! if (any (lcobound(x) /= [1, 2])) call abort ()
-! if (lcobound(x, dim=1) /= 1) call abort ()
-! if (lcobound(x, dim=2) /= 2) call abort ()
+! if (any (lcobound(x) /= [1, 2])) STOP 7
+! if (lcobound(x, dim=1) /= 1) STOP 8
+! if (lcobound(x, dim=2) /= 2) STOP 9
! if (this_image() == 1) then
-! if (any (this_image(x) /= lcobound(x))) call abort ()
-! if (this_image(x, dim=1) /= lcobound(x, dim=1)) call abort ()
-! if (this_image(x, dim=2) /= lcobound(x, dim=2)) call abort ()
+! if (any (this_image(x) /= lcobound(x))) STOP 10
+! if (this_image(x, dim=1) /= lcobound(x, dim=1)) STOP 11
+! if (this_image(x, dim=2) /= lcobound(x, dim=2)) STOP 12
! end if
! if (num_images() == 1) then
-! if (any (ucobound(x) /= [4, 2])) call abort ()
-! if (ucobound(x, dim=1) /= 4) call abort ()
-! if (ucobound(x, dim=2) /= 2) call abort ()
+! if (any (ucobound(x) /= [4, 2])) STOP 13
+! if (ucobound(x, dim=1) /= 4) STOP 14
+! if (ucobound(x, dim=2) /= 2) STOP 15
! else
-! if (ucobound(x,dim=1) /= 4) call abort ()
+! if (ucobound(x,dim=1) /= 4) STOP 16
! end if
end subroutine st
end
diff --git a/gcc/testsuite/gfortran.dg/coarray/poly_run_2.f90 b/gcc/testsuite/gfortran.dg/coarray/poly_run_2.f90
index 02704dd7796..48a6f7b4cc0 100644
--- a/gcc/testsuite/gfortran.dg/coarray/poly_run_2.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/poly_run_2.f90
@@ -7,11 +7,11 @@ end type t
class(t), allocatable :: A[:,:]
allocate (A[1:4,-5:*])
if (allocated(A)) stop
-if (any (lcobound(A) /= [1, -5])) call abort ()
+if (any (lcobound(A) /= [1, -5])) STOP 1
if (num_images() == 1) then
- if (any (ucobound(A) /= [4, -5])) call abort ()
+ if (any (ucobound(A) /= [4, -5])) STOP 2
else
- if (ucobound(A,dim=1) /= 4) call abort ()
+ if (ucobound(A,dim=1) /= 4) STOP 3
end if
if (allocated(A)) i = 5
call s(A)
@@ -19,20 +19,20 @@ call st(A)
contains
subroutine s(x)
class(t) :: x[4,2:*]
- if (any (lcobound(x) /= [1, 2])) call abort ()
+ if (any (lcobound(x) /= [1, 2])) STOP 4
if (num_images() == 1) then
- if (any (ucobound(x) /= [4, 2])) call abort ()
+ if (any (ucobound(x) /= [4, 2])) STOP 5
else
- if (ucobound(x,dim=1) /= 4) call abort ()
+ if (ucobound(x,dim=1) /= 4) STOP 6
end if
end subroutine s
subroutine st(x)
class(t) :: x[:,:]
- if (any (lcobound(x) /= [1, -5])) call abort ()
+ if (any (lcobound(x) /= [1, -5])) STOP 7
if (num_images() == 1) then
- if (any (ucobound(x) /= [4, -5])) call abort ()
+ if (any (ucobound(x) /= [4, -5])) STOP 8
else
- if (ucobound(x,dim=1) /= 4) call abort ()
+ if (ucobound(x,dim=1) /= 4) STOP 9
end if
end subroutine st
end
diff --git a/gcc/testsuite/gfortran.dg/coarray/poly_run_3.f90 b/gcc/testsuite/gfortran.dg/coarray/poly_run_3.f90
index 17a010844eb..c284a566760 100644
--- a/gcc/testsuite/gfortran.dg/coarray/poly_run_3.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/poly_run_3.f90
@@ -10,30 +10,30 @@ class(t), allocatable :: b[:], d[:]
allocate(a(1)[*])
if (this_image() == 1 .and. any (this_image(a) /= lcobound(a))) &
- call abort ()
-if (any (lcobound(a) /= 1)) call abort()
-if (any (ucobound(a) /= this_image())) call abort ()
+ STOP 1
+if (any (lcobound(a) /= 1)) STOP 2
+if (any (ucobound(a) /= this_image())) STOP 3
deallocate(a)
allocate(b[*])
if (this_image() == 1 .and. any (this_image(b) /= lcobound(b))) &
- call abort ()
-if (any (lcobound(b) /= 1)) call abort()
-if (any (ucobound(b) /= this_image())) call abort ()
+ STOP 4
+if (any (lcobound(b) /= 1)) STOP 5
+if (any (ucobound(b) /= this_image())) STOP 6
deallocate(b)
allocate(a(1)[-10:*])
if (this_image() == 1 .and. any (this_image(a) /= lcobound(a))) &
- call abort ()
-if (any (lcobound(a) /= -10)) call abort()
-if (any (ucobound(a) /= -11+this_image())) call abort ()
+ STOP 7
+if (any (lcobound(a) /= -10)) STOP 8
+if (any (ucobound(a) /= -11+this_image())) STOP 9
deallocate(a)
allocate(d[23:*])
if (this_image() == 1 .and. any (this_image(d) /= lcobound(d))) &
- call abort ()
-if (any (lcobound(d) /= 23)) call abort()
-if (any (ucobound(d) /= 22+this_image())) call abort ()
+ STOP 10
+if (any (lcobound(d) /= 23)) STOP 11
+if (any (ucobound(d) /= 22+this_image())) STOP 12
deallocate(d)
end
diff --git a/gcc/testsuite/gfortran.dg/coarray/ptr_comp_3.f08 b/gcc/testsuite/gfortran.dg/coarray/ptr_comp_3.f08
index ad7137f009e..fca6d54a60f 100644
--- a/gcc/testsuite/gfortran.dg/coarray/ptr_comp_3.f08
+++ b/gcc/testsuite/gfortran.dg/coarray/ptr_comp_3.f08
@@ -18,5 +18,5 @@ program main
allocate(object%indices(me))
object%indices = 42
- if ( any( object[me]%indices(:) /= 42 ) ) call abort()
+ if ( any( object[me]%indices(:) /= 42 ) ) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.dg/coarray/registering_1.f90 b/gcc/testsuite/gfortran.dg/coarray/registering_1.f90
index a18ba615af7..3e266324eec 100644
--- a/gcc/testsuite/gfortran.dg/coarray/registering_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/registering_1.f90
@@ -9,33 +9,33 @@ module m
end module m
use m
-if (any (a /= 7)) call abort()
+if (any (a /= 7)) STOP 1
a = 88
-if (any (a /= 88)) call abort()
+if (any (a /= 88)) STOP 2
block
integer :: b[*] = 8494
- if (b /= 8494) call abort()
+ if (b /= 8494) STOP 3
end block
-if (any (a /= 88)) call abort()
+if (any (a /= 88)) STOP 4
call test ()
end
subroutine test()
real :: z[*] = sqrt(2.0)
- if (z /= sqrt(2.0)) call abort()
+ if (z /= sqrt(2.0)) STOP 5
call sub1()
contains
subroutine sub1
real :: r[4,*] = -1
- if (r /= -1) call abort
+ if (r /= -1) STOP 1
r = 10
- if (r /= 10) call abort
+ if (r /= 10) STOP 2
end subroutine sub1
subroutine uncalled()
integer :: not_refed[2:*] = 784
- if (not_refed /= 784) call abort()
+ if (not_refed /= 784) STOP 6
end subroutine uncalled
end subroutine test
diff --git a/gcc/testsuite/gfortran.dg/coarray/scalar_alloc_1.f90 b/gcc/testsuite/gfortran.dg/coarray/scalar_alloc_1.f90
index 528dd3e092f..b0d27bdfb8f 100644
--- a/gcc/testsuite/gfortran.dg/coarray/scalar_alloc_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/scalar_alloc_1.f90
@@ -4,36 +4,36 @@ implicit none
integer, allocatable :: A[:], B[:,:]
integer :: n1, n2, n3
-if (allocated (a)) call abort ()
-if (allocated (b)) call abort ()
+if (allocated (a)) STOP 1
+if (allocated (b)) STOP 2
allocate(a[*])
a = 5 + this_image ()
-if (a[this_image ()] /= 5 + this_image ()) call abort
+if (a[this_image ()] /= 5 + this_image ()) STOP 1
a[this_image ()] = 8 - 2*this_image ()
-if (a[this_image ()] /= 8 - 2*this_image ()) call abort
+if (a[this_image ()] /= 8 - 2*this_image ()) STOP 2
if (lcobound(a, dim=1) /= 1 .or. ucobound(a,dim=1) /= num_images()) &
- call abort ()
+ STOP 3
deallocate(a)
allocate(a[4:*])
a[this_image ()] = 8 - 2*this_image ()
if (lcobound(a, dim=1) /= 4 .or. ucobound(a,dim=1) /= 3 + num_images()) &
- call abort ()
+ STOP 4
n1 = -1
n2 = 5
n3 = 3
allocate (B[n1:n2, n3:*])
if (any (lcobound(b) /= [-1, 3]) .or. lcobound(B, dim=2) /= n3) &
- call abort()
+ STOP 5
call sub(A, B)
-if (allocated (a)) call abort ()
-if (.not.allocated (b)) call abort ()
+if (allocated (a)) STOP 6
+if (.not.allocated (b)) STOP 7
call two(.true.)
call two(.false.)
@@ -44,10 +44,10 @@ contains
integer, allocatable :: x[:], y[:,:]
if (any (lcobound(y) /= [-1, 3]) .or. lcobound(y, dim=2) /= n3) &
- call abort()
+ STOP 8
if (lcobound(x, dim=1) /= 4 .or. ucobound(x,dim=1) /= 3 + num_images()) &
- call abort ()
- if (x[this_image ()] /= 8 - 2*this_image ()) call abort
+ STOP 9
+ if (x[this_image ()] /= 8 - 2*this_image ()) STOP 3
deallocate(x)
end subroutine sub
@@ -56,12 +56,12 @@ contains
integer, allocatable, SAVE :: a[:]
if (init) then
- if (allocated(a)) call abort()
+ if (allocated(a)) STOP 10
allocate(a[*])
a = 45
else
- if (.not. allocated(a)) call abort()
- if (a /= 45) call abort()
+ if (.not. allocated(a)) STOP 11
+ if (a /= 45) STOP 12
deallocate(a)
end if
end subroutine two
diff --git a/gcc/testsuite/gfortran.dg/coarray/scalar_alloc_2.f90 b/gcc/testsuite/gfortran.dg/coarray/scalar_alloc_2.f90
index 50c3dfb2ea8..a7c3074f6ee 100644
--- a/gcc/testsuite/gfortran.dg/coarray/scalar_alloc_2.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/scalar_alloc_2.f90
@@ -17,13 +17,13 @@ p%x = 11
p%y = 13
p%z = 15
-if (a /= 7) call abort()
+if (a /= 7) STOP 1
a = 88
-if (a /= 88) call abort()
+if (a /= 88) STOP 2
-if (p%x /= 11) call abort()
+if (p%x /= 11) STOP 3
p%x = 17
-if (p%x /= 17) call abort()
+if (p%x /= 17) STOP 4
block
integer, allocatable :: b[:]
@@ -31,10 +31,10 @@ if (p%x /= 17) call abort()
allocate(b[*])
b = 8494
- if (b /= 8494) call abort()
+ if (b /= 8494) STOP 5
end block
-if (a /= 88) call abort()
+if (a /= 88) STOP 6
call test ()
end
@@ -54,7 +54,7 @@ subroutine test()
v%y = 23
v%z = 25
- if (z /= sqrt(2.0)) call abort()
- if (v%x /= 21) call abort()
+ if (z /= sqrt(2.0)) STOP 7
+ if (v%x /= 21) STOP 8
end subroutine test
diff --git a/gcc/testsuite/gfortran.dg/coarray/send_array.f90 b/gcc/testsuite/gfortran.dg/coarray/send_array.f90
index dc4700785c3..01b76703398 100644
--- a/gcc/testsuite/gfortran.dg/coarray/send_array.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/send_array.f90
@@ -42,7 +42,7 @@ contains
sync all
if (this_image() == num_images()) then
if (any (a /= caf)) &
- call abort()
+ STOP 1
end if
sync all
@@ -57,7 +57,7 @@ contains
sync all
if (this_image() == num_images()) then
if (any (a /= caf)) &
- call abort()
+ STOP 2
end if
sync all
@@ -90,7 +90,7 @@ contains
sync all
if (this_image() == num_images()) then
if (any (a /= caf)) &
- call abort()
+ STOP 3
end if
sync all
@@ -136,7 +136,7 @@ contains
print *, a
print *, caf
print *, a-caf
- call abort()
+ STOP 4
endif
end if
sync all
@@ -171,7 +171,7 @@ contains
sync all
if (this_image() == num_images()) then
if (any (a /= caf)) &
- call abort()
+ STOP 5
end if
! Whole array: ARRAY = ARRAY
@@ -185,7 +185,7 @@ contains
sync all
if (this_image() == num_images()) then
if (any (a /= caf)) &
- call abort()
+ STOP 6
end if
sync all
@@ -218,7 +218,7 @@ contains
sync all
if (this_image() == num_images()) then
if (any (a /= caf)) &
- call abort()
+ STOP 7
end if
sync all
@@ -264,7 +264,7 @@ contains
print *, a
print *, caf
print *, a-caf
- call abort()
+ STOP 8
endif
end if
sync all
@@ -299,7 +299,7 @@ contains
sync all
if (this_image() == num_images()) then
if (any (a /= caf)) &
- call abort()
+ STOP 9
end if
! Whole array: ARRAY = ARRAY
@@ -313,7 +313,7 @@ contains
sync all
if (this_image() == num_images()) then
if (any (a /= caf)) &
- call abort()
+ STOP 10
end if
sync all
@@ -346,7 +346,7 @@ contains
sync all
if (this_image() == num_images()) then
if (any (a /= caf)) &
- call abort()
+ STOP 11
end if
! Array sections with different ranges and pos/neg strides
@@ -391,7 +391,7 @@ contains
print *, a
print *, caf
print *, a-caf
- call abort()
+ STOP 12
endif
end if
sync all
diff --git a/gcc/testsuite/gfortran.dg/coarray/send_char_array_1.f90 b/gcc/testsuite/gfortran.dg/coarray/send_char_array_1.f90
index 800a8acc34c..3e16fa83685 100644
--- a/gcc/testsuite/gfortran.dg/coarray/send_char_array_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/send_char_array_1.f90
@@ -26,28 +26,28 @@ program send_convert_char_array
! First check send/copy to self
co_str_k1_scal[1] = str_k1_scal
- if (co_str_k1_scal /= str_k1_scal // ' ') call abort()
+ if (co_str_k1_scal /= str_k1_scal // ' ') STOP 1
co_str_k4_scal[1] = str_k4_scal
- if (co_str_k4_scal /= str_k4_scal // 4_' ') call abort()
+ if (co_str_k4_scal /= str_k4_scal // 4_' ') STOP 2
co_str_k4_scal[1] = str_k1_scal
- if (co_str_k4_scal /= str_k4_scal // 4_' ') call abort()
+ if (co_str_k4_scal /= str_k4_scal // 4_' ') STOP 3
co_str_k1_scal[1] = str_k4_scal
- if (co_str_k1_scal /= str_k1_scal // ' ') call abort()
+ if (co_str_k1_scal /= str_k1_scal // ' ') STOP 4
co_str_k1_arr(:)[1] = str_k1_arr
- if (any(co_str_k1_arr /= ['abc ', 'EFG ', 'klm ', 'NOP '])) call abort()
+ if (any(co_str_k1_arr /= ['abc ', 'EFG ', 'klm ', 'NOP '])) STOP 5
co_str_k4_arr(:)[1] = [4_'abc', 4_'EFG', 4_'klm', 4_'NOP']! str_k4_arr
- if (any(co_str_k4_arr /= [4_'abc ', 4_'EFG ', 4_'klm ', 4_'NOP '])) call abort()
+ if (any(co_str_k4_arr /= [4_'abc ', 4_'EFG ', 4_'klm ', 4_'NOP '])) STOP 6
co_str_k4_arr(:)[1] = str_k1_arr
- if (any(co_str_k4_arr /= [ 4_'abc ', 4_'EFG ', 4_'klm ', 4_'NOP '])) call abort()
+ if (any(co_str_k4_arr /= [ 4_'abc ', 4_'EFG ', 4_'klm ', 4_'NOP '])) STOP 7
co_str_k1_arr(:)[1] = str_k4_arr
- if (any(co_str_k1_arr /= ['abc ', 'EFG ', 'klm ', 'NOP '])) call abort()
+ if (any(co_str_k1_arr /= ['abc ', 'EFG ', 'klm ', 'NOP '])) STOP 8
end program send_convert_char_array
diff --git a/gcc/testsuite/gfortran.dg/coarray/sendget_array.f90 b/gcc/testsuite/gfortran.dg/coarray/sendget_array.f90
index a53d3d3ac25..f5c50025cd1 100644
--- a/gcc/testsuite/gfortran.dg/coarray/sendget_array.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/sendget_array.f90
@@ -50,7 +50,7 @@ contains
a(:,:) = b(:,:)
caf2(:,:)[this_image()] = caf(:,:)[num_images()]
if (any (a /= caf2)) then
- call abort()
+ STOP 1
end if
sync all
@@ -75,7 +75,7 @@ contains
end do
end do
if (any (a /= caf2)) then
- call abort()
+ STOP 2
end if
sync all
@@ -101,7 +101,7 @@ contains
caf2(i:i_e:i_s*i_sgn1, j:j_e:j_s*i_sgn2)[this_image()] &
= caf(i:i_e:i_s*i_sgn1, j:j_e:j_s*i_sgn2)[num_images()]
if (any (caf2 /= a)) then
- call abort()
+ STOP 3
end if
sync all
end do
@@ -136,7 +136,7 @@ contains
a(:,:) = b(:,:)
caf2(:,:)[this_image()] = caf(:,:)[num_images()]
if (any (a /= caf2)) then
- call abort()
+ STOP 4
end if
sync all
@@ -161,7 +161,7 @@ contains
end do
end do
if (any (a /= caf2)) then
- call abort()
+ STOP 5
end if
sync all
@@ -187,7 +187,7 @@ contains
caf2(i:i_e:i_s*i_sgn1, j:j_e:j_s*i_sgn2)[this_image()] &
= caf(i:i_e:i_s*i_sgn1, j:j_e:j_s*i_sgn2)[num_images()]
if (any (caf2 /= a)) then
- call abort()
+ STOP 6
end if
sync all
end do
@@ -222,7 +222,7 @@ contains
a(:,:) = b(:,:)
caf2(:,:)[this_image()] = caf(:,:)[num_images()]
if (any (a /= caf2)) then
- call abort()
+ STOP 7
end if
sync all
@@ -247,7 +247,7 @@ contains
end do
end do
if (any (a /= caf2)) then
- call abort()
+ STOP 8
end if
sync all
@@ -273,7 +273,7 @@ contains
caf2(i:i_e:i_s*i_sgn1, j:j_e:j_s*i_sgn2)[this_image()] &
= caf(i:i_e:i_s*i_sgn1, j:j_e:j_s*i_sgn2)[num_images()]
if (any (caf2 /= a)) then
- call abort()
+ STOP 9
end if
sync all
end do
diff --git a/gcc/testsuite/gfortran.dg/coarray/subobject_1.f90 b/gcc/testsuite/gfortran.dg/coarray/subobject_1.f90
index 028c24a8e65..9ada95849e4 100644
--- a/gcc/testsuite/gfortran.dg/coarray/subobject_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/subobject_1.f90
@@ -22,22 +22,22 @@
allocate(b%a[lb:*])
b%a%i = 7
- if (b%a%i /= 7) call abort
- if (any (lcobound(b%a) /= (/ lb /))) call abort
- if (ucobound(b%a, dim=1) /= num_images() + lb - 1) call abort
- if (any (lcobound(b%a%i) /= (/ lb /))) call abort
- if (ucobound(b%a%i, dim=1) /= num_images() + lb - 1) call abort
+ if (b%a%i /= 7) STOP 1
+ if (any (lcobound(b%a) /= (/ lb /))) STOP 2
+ if (ucobound(b%a, dim=1) /= num_images() + lb - 1) STOP 3
+ if (any (lcobound(b%a%i) /= (/ lb /))) STOP 4
+ if (ucobound(b%a%i, dim=1) /= num_images() + lb - 1) STOP 5
allocate(c%a(la)[lc:*])
c%a%i = init
- if (any(c%a%i /= init)) call abort
- if (any (lcobound(c%a) /= (/ lc /))) call abort
- if (ucobound(c%a, dim=1) /= num_images() + lc - 1) call abort
- if (any (lcobound(c%a%i) /= (/ lc /))) call abort
- if (ucobound(c%a%i, dim=1) /= num_images() + lc - 1) call abort
- if (c%a(2)%i /= init(2)) call abort
- if (any (lcobound(c%a(2)) /= (/ lc /))) call abort
- if (ucobound(c%a(2), dim=1) /= num_images() + lc - 1) call abort
- if (any (lcobound(c%a(2)%i) /= (/ lc /))) call abort
- if (ucobound(c%a(2)%i, dim=1) /= num_images() + lc - 1) call abort
+ if (any(c%a%i /= init)) STOP 6
+ if (any (lcobound(c%a) /= (/ lc /))) STOP 7
+ if (ucobound(c%a, dim=1) /= num_images() + lc - 1) STOP 8
+ if (any (lcobound(c%a%i) /= (/ lc /))) STOP 9
+ if (ucobound(c%a%i, dim=1) /= num_images() + lc - 1) STOP 10
+ if (c%a(2)%i /= init(2)) STOP 11
+ if (any (lcobound(c%a(2)) /= (/ lc /))) STOP 12
+ if (ucobound(c%a(2), dim=1) /= num_images() + lc - 1) STOP 13
+ if (any (lcobound(c%a(2)%i) /= (/ lc /))) STOP 14
+ if (ucobound(c%a(2)%i, dim=1) /= num_images() + lc - 1) STOP 15
deallocate(b%a, c%a)
end
diff --git a/gcc/testsuite/gfortran.dg/coarray/sync_1.f90 b/gcc/testsuite/gfortran.dg/coarray/sync_1.f90
index 7c084e0bf46..8633c4aa527 100644
--- a/gcc/testsuite/gfortran.dg/coarray/sync_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/sync_1.f90
@@ -20,11 +20,11 @@ sync all (errmsg=str)
n = 5
sync all (stat=n)
-if (n /= 0) call abort()
+if (n /= 0) STOP 1
n = 5
sync all (stat=n,errmsg=str)
-if (n /= 0) call abort()
+if (n /= 0) STOP 2
!
@@ -36,11 +36,11 @@ sync memory (errmsg=str)
n = 5
sync memory (stat=n)
-if (n /= 0) call abort()
+if (n /= 0) STOP 3
n = 5
sync memory (errmsg=str,stat=n)
-if (n /= 0) call abort()
+if (n /= 0) STOP 4
!
@@ -55,10 +55,10 @@ end if
n = 5
sync images (*, stat=n)
-if (n /= 0) call abort()
+if (n /= 0) STOP 5
n = 5
sync images (*,errmsg=str,stat=n)
-if (n /= 0) call abort()
+if (n /= 0) STOP 6
end
diff --git a/gcc/testsuite/gfortran.dg/coarray/sync_3.f90 b/gcc/testsuite/gfortran.dg/coarray/sync_3.f90
index 205a7877678..fe1e4c548c8 100644
--- a/gcc/testsuite/gfortran.dg/coarray/sync_3.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/sync_3.f90
@@ -25,11 +25,11 @@ sync all (errmsg=str)
n = 5
sync all (stat=n)
-if (n /= 0) call abort()
+if (n /= 0) STOP 1
n = 5
sync all (stat=n,errmsg=str)
-if (n /= 0) call abort()
+if (n /= 0) STOP 2
!
@@ -41,11 +41,11 @@ sync memory (errmsg=str)
n = 5
sync memory (stat=n)
-if (n /= 0) call abort()
+if (n /= 0) STOP 3
n = 5
sync memory (errmsg=str,stat=n)
-if (n /= 0) call abort()
+if (n /= 0) STOP 4
!
@@ -60,11 +60,11 @@ end if
n = 5
sync images (*, stat=n)
-if (n /= 0) call abort()
+if (n /= 0) STOP 5
n = 5
sync images (*,errmsg=str,stat=n)
-if (n /= 0) call abort()
+if (n /= 0) STOP 6
n = -1
sync images ( num_images() )
diff --git a/gcc/testsuite/gfortran.dg/coarray/this_image_1.f90 b/gcc/testsuite/gfortran.dg/coarray/this_image_1.f90
index 9ee4b153231..28942ff3ca0 100644
--- a/gcc/testsuite/gfortran.dg/coarray/this_image_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/this_image_1.f90
@@ -14,82 +14,82 @@ integer :: b(:)[:, :,:]
allocatable :: b
integer :: i
-if (this_image(A, dim=1) /= 2) call abort()
+if (this_image(A, dim=1) /= 2) STOP 1
i = 1
-if (this_image(A, dim=i) /= 2) call abort()
+if (this_image(A, dim=i) /= 2) STOP 2
select case (this_image())
case (1)
- if (this_image(A, dim=2) /= 3) call abort()
- if (this_image(A, dim=3) /= 7) call abort()
+ if (this_image(A, dim=2) /= 3) STOP 3
+ if (this_image(A, dim=3) /= 7) STOP 4
i = 2
- if (this_image(A, dim=i) /= 3) call abort()
+ if (this_image(A, dim=i) /= 3) STOP 5
i = 3
- if (this_image(A, dim=i) /= 7) call abort()
- if (any (this_image(A) /= [2,3,7])) call abort()
+ if (this_image(A, dim=i) /= 7) STOP 6
+ if (any (this_image(A) /= [2,3,7])) STOP 7
case (2)
- if (this_image(A, dim=2) /= 4) call abort()
- if (this_image(A, dim=3) /= 7) call abort()
+ if (this_image(A, dim=2) /= 4) STOP 8
+ if (this_image(A, dim=3) /= 7) STOP 9
i = 2
- if (this_image(A, dim=i) /= 4) call abort()
+ if (this_image(A, dim=i) /= 4) STOP 10
i = 3
- if (this_image(A, dim=i) /= 7) call abort()
- if (any (this_image(A) /= [2,4,7])) call abort()
+ if (this_image(A, dim=i) /= 7) STOP 11
+ if (any (this_image(A) /= [2,4,7])) STOP 12
case (3)
- if (this_image(A, dim=2) /= 3) call abort()
- if (this_image(A, dim=3) /= 8) call abort()
+ if (this_image(A, dim=2) /= 3) STOP 13
+ if (this_image(A, dim=3) /= 8) STOP 14
i = 2
- if (this_image(A, dim=i) /= 3) call abort()
+ if (this_image(A, dim=i) /= 3) STOP 15
i = 3
- if (this_image(A, dim=i) /= 8) call abort()
- if (any (this_image(A) /= [2,3,8])) call abort()
+ if (this_image(A, dim=i) /= 8) STOP 16
+ if (any (this_image(A) /= [2,3,8])) STOP 17
case (4)
- if (this_image(A, dim=2) /= 4) call abort()
- if (this_image(A, dim=3) /= 8) call abort()
+ if (this_image(A, dim=2) /= 4) STOP 18
+ if (this_image(A, dim=3) /= 8) STOP 19
i = 2
- if (this_image(A, dim=i) /= 4) call abort()
+ if (this_image(A, dim=i) /= 4) STOP 20
i = 3
- if (this_image(A, dim=i) /= 8) call abort()
- if (any (this_image(A) /= [2,4,8])) call abort()
+ if (this_image(A, dim=i) /= 8) STOP 21
+ if (any (this_image(A) /= [2,4,8])) STOP 22
case (5)
- if (this_image(A, dim=2) /= 3) call abort()
- if (this_image(A, dim=3) /= 9) call abort()
+ if (this_image(A, dim=2) /= 3) STOP 23
+ if (this_image(A, dim=3) /= 9) STOP 24
i = 2
- if (this_image(A, dim=i) /= 3) call abort()
+ if (this_image(A, dim=i) /= 3) STOP 25
i = 3
- if (this_image(A, dim=i) /= 9) call abort()
- if (any (this_image(A) /= [2,3,9])) call abort()
+ if (this_image(A, dim=i) /= 9) STOP 26
+ if (any (this_image(A) /= [2,3,9])) STOP 27
case (6)
- if (this_image(A, dim=2) /= 4) call abort()
- if (this_image(A, dim=3) /= 9) call abort()
+ if (this_image(A, dim=2) /= 4) STOP 28
+ if (this_image(A, dim=3) /= 9) STOP 29
i = 2
- if (this_image(A, dim=i) /= 4) call abort()
+ if (this_image(A, dim=i) /= 4) STOP 30
i = 3
- if (this_image(A, dim=i) /= 9) call abort()
- if (any (this_image(A) /= [2,4,9])) call abort()
+ if (this_image(A, dim=i) /= 9) STOP 31
+ if (any (this_image(A) /= [2,4,9])) STOP 32
case (7)
- if (this_image(A, dim=2) /= 3) call abort()
- if (this_image(A, dim=3) /= 10) call abort()
+ if (this_image(A, dim=2) /= 3) STOP 33
+ if (this_image(A, dim=3) /= 10) STOP 34
i = 2
- if (this_image(A, dim=i) /= 3) call abort()
+ if (this_image(A, dim=i) /= 3) STOP 35
i = 3
- if (this_image(A, dim=i) /= 10) call abort()
- if (any (this_image(A) /= [2,3,10])) call abort()
+ if (this_image(A, dim=i) /= 10) STOP 36
+ if (any (this_image(A) /= [2,3,10])) STOP 37
case (8)
- if (this_image(A, dim=2) /= 4) call abort()
- if (this_image(A, dim=3) /= 10) call abort()
+ if (this_image(A, dim=2) /= 4) STOP 38
+ if (this_image(A, dim=3) /= 10) STOP 39
i = 2
- if (this_image(A, dim=i) /= 4) call abort()
+ if (this_image(A, dim=i) /= 4) STOP 40
i = 3
- if (this_image(A, dim=i) /= 10) call abort()
- if (any (this_image(A) /= [2,4,10])) call abort()
+ if (this_image(A, dim=i) /= 10) STOP 41
+ if (any (this_image(A) /= [2,4,10])) STOP 42
end select
@@ -97,100 +97,100 @@ allocate (b(3)[-1:0,2:4,*])
select case (this_image())
case (1)
- if (this_image(B, dim=1) /= -1) call abort()
- if (this_image(B, dim=2) /= 2) call abort()
- if (this_image(B, dim=3) /= 1) call abort()
+ if (this_image(B, dim=1) /= -1) STOP 43
+ if (this_image(B, dim=2) /= 2) STOP 44
+ if (this_image(B, dim=3) /= 1) STOP 45
i = 1
- if (this_image(B, dim=i) /= -1) call abort()
+ if (this_image(B, dim=i) /= -1) STOP 46
i = 2
- if (this_image(B, dim=i) /= 2) call abort()
+ if (this_image(B, dim=i) /= 2) STOP 47
i = 3
- if (this_image(B, dim=i) /= 1) call abort()
- if (any (this_image(B) /= [-1,2,1])) call abort()
+ if (this_image(B, dim=i) /= 1) STOP 48
+ if (any (this_image(B) /= [-1,2,1])) STOP 49
case (2)
- if (this_image(B, dim=1) /= 0) call abort()
- if (this_image(B, dim=2) /= 2) call abort()
- if (this_image(B, dim=3) /= 1) call abort()
+ if (this_image(B, dim=1) /= 0) STOP 50
+ if (this_image(B, dim=2) /= 2) STOP 51
+ if (this_image(B, dim=3) /= 1) STOP 52
i = 1
- if (this_image(B, dim=i) /= 0) call abort()
+ if (this_image(B, dim=i) /= 0) STOP 53
i = 2
- if (this_image(B, dim=i) /= 2) call abort()
+ if (this_image(B, dim=i) /= 2) STOP 54
i = 3
- if (this_image(B, dim=i) /= 1) call abort()
- if (any (this_image(B) /= [0,2,1])) call abort()
+ if (this_image(B, dim=i) /= 1) STOP 55
+ if (any (this_image(B) /= [0,2,1])) STOP 56
case (3)
- if (this_image(B, dim=1) /= -1) call abort()
- if (this_image(B, dim=2) /= 3) call abort()
- if (this_image(B, dim=3) /= 1) call abort()
+ if (this_image(B, dim=1) /= -1) STOP 57
+ if (this_image(B, dim=2) /= 3) STOP 58
+ if (this_image(B, dim=3) /= 1) STOP 59
i = 1
- if (this_image(B, dim=i) /= -1) call abort()
+ if (this_image(B, dim=i) /= -1) STOP 60
i = 2
- if (this_image(B, dim=i) /= 3) call abort()
+ if (this_image(B, dim=i) /= 3) STOP 61
i = 3
- if (this_image(B, dim=i) /= 1) call abort()
- if (any (this_image(B) /= [-1,3,1])) call abort()
+ if (this_image(B, dim=i) /= 1) STOP 62
+ if (any (this_image(B) /= [-1,3,1])) STOP 63
case (4)
- if (this_image(B, dim=1) /= 0) call abort()
- if (this_image(B, dim=2) /= 3) call abort()
- if (this_image(B, dim=3) /= 1) call abort()
+ if (this_image(B, dim=1) /= 0) STOP 64
+ if (this_image(B, dim=2) /= 3) STOP 65
+ if (this_image(B, dim=3) /= 1) STOP 66
i = 1
- if (this_image(B, dim=i) /= 0) call abort()
+ if (this_image(B, dim=i) /= 0) STOP 67
i = 2
- if (this_image(B, dim=i) /= 3) call abort()
+ if (this_image(B, dim=i) /= 3) STOP 68
i = 3
- if (this_image(B, dim=i) /= 1) call abort()
- if (any (this_image(B) /= [0,3,1])) call abort()
+ if (this_image(B, dim=i) /= 1) STOP 69
+ if (any (this_image(B) /= [0,3,1])) STOP 70
case (5)
- if (this_image(B, dim=1) /= -1) call abort()
- if (this_image(B, dim=2) /= 4) call abort()
- if (this_image(B, dim=3) /= 1) call abort()
+ if (this_image(B, dim=1) /= -1) STOP 71
+ if (this_image(B, dim=2) /= 4) STOP 72
+ if (this_image(B, dim=3) /= 1) STOP 73
i = 1
- if (this_image(B, dim=i) /= -1) call abort()
+ if (this_image(B, dim=i) /= -1) STOP 74
i = 2
- if (this_image(B, dim=i) /= 4) call abort()
+ if (this_image(B, dim=i) /= 4) STOP 75
i = 3
- if (this_image(B, dim=i) /= 1) call abort()
- if (any (this_image(B) /= [-1,4,1])) call abort()
+ if (this_image(B, dim=i) /= 1) STOP 76
+ if (any (this_image(B) /= [-1,4,1])) STOP 77
case (6)
- if (this_image(B, dim=1) /= 0) call abort()
- if (this_image(B, dim=2) /= 4) call abort()
- if (this_image(B, dim=3) /= 1) call abort()
+ if (this_image(B, dim=1) /= 0) STOP 78
+ if (this_image(B, dim=2) /= 4) STOP 79
+ if (this_image(B, dim=3) /= 1) STOP 80
i = 1
- if (this_image(B, dim=i) /= 0) call abort()
+ if (this_image(B, dim=i) /= 0) STOP 81
i = 2
- if (this_image(B, dim=i) /= 4) call abort()
+ if (this_image(B, dim=i) /= 4) STOP 82
i = 3
- if (this_image(B, dim=i) /= 1) call abort()
- if (any (this_image(B) /= [0,4,1])) call abort()
+ if (this_image(B, dim=i) /= 1) STOP 83
+ if (any (this_image(B) /= [0,4,1])) STOP 84
case (7)
- if (this_image(B, dim=1) /= -1) call abort()
- if (this_image(B, dim=2) /= 2) call abort()
- if (this_image(B, dim=3) /= 2) call abort()
+ if (this_image(B, dim=1) /= -1) STOP 85
+ if (this_image(B, dim=2) /= 2) STOP 86
+ if (this_image(B, dim=3) /= 2) STOP 87
i = 1
- if (this_image(B, dim=i) /= -1) call abort()
+ if (this_image(B, dim=i) /= -1) STOP 88
i = 2
- if (this_image(B, dim=i) /= 2) call abort()
+ if (this_image(B, dim=i) /= 2) STOP 89
i = 3
- if (this_image(B, dim=i) /= 2) call abort()
- if (any (this_image(B) /= [-1,2,2])) call abort()
+ if (this_image(B, dim=i) /= 2) STOP 90
+ if (any (this_image(B) /= [-1,2,2])) STOP 91
case (8)
- if (this_image(B, dim=1) /= 0) call abort()
- if (this_image(B, dim=2) /= 2) call abort()
- if (this_image(B, dim=3) /= 2) call abort()
+ if (this_image(B, dim=1) /= 0) STOP 92
+ if (this_image(B, dim=2) /= 2) STOP 93
+ if (this_image(B, dim=3) /= 2) STOP 94
i = 1
- if (this_image(B, dim=i) /= 0) call abort()
+ if (this_image(B, dim=i) /= 0) STOP 95
i = 2
- if (this_image(B, dim=i) /= 2) call abort()
+ if (this_image(B, dim=i) /= 2) STOP 96
i = 3
- if (this_image(B, dim=i) /= 2) call abort()
- if (any (this_image(B) /= [0,2,2])) call abort()
+ if (this_image(B, dim=i) /= 2) STOP 97
+ if (any (this_image(B) /= [0,2,2])) STOP 98
end select
end
diff --git a/gcc/testsuite/gfortran.dg/coarray/this_image_2.f90 b/gcc/testsuite/gfortran.dg/coarray/this_image_2.f90
index d5a5eef8de1..f72c432a55b 100644
--- a/gcc/testsuite/gfortran.dg/coarray/this_image_2.f90
+++ b/gcc/testsuite/gfortran.dg/coarray/this_image_2.f90
@@ -14,82 +14,82 @@ implicit none
integer :: a[2:2, 3:4, 7:*]
integer :: i
-if (this_image(A, dim=1) /= 2) call abort()
+if (this_image(A, dim=1) /= 2) STOP 1
i = 1
-if (this_image(A, dim=i) /= 2) call abort()
+if (this_image(A, dim=i) /= 2) STOP 2
select case (this_image())
case (1)
- if (this_image(A, dim=2) /= 3) call abort()
- if (this_image(A, dim=3) /= 7) call abort()
+ if (this_image(A, dim=2) /= 3) STOP 3
+ if (this_image(A, dim=3) /= 7) STOP 4
i = 2
- if (this_image(A, dim=i) /= 3) call abort()
+ if (this_image(A, dim=i) /= 3) STOP 5
i = 3
- if (this_image(A, dim=i) /= 7) call abort()
- if (any (this_image(A) /= [2,3,7])) call abort()
+ if (this_image(A, dim=i) /= 7) STOP 6
+ if (any (this_image(A) /= [2,3,7])) STOP 7
case (2)
- if (this_image(A, dim=2) /= 4) call abort()
- if (this_image(A, dim=3) /= 7) call abort()
+ if (this_image(A, dim=2) /= 4) STOP 8
+ if (this_image(A, dim=3) /= 7) STOP 9
i = 2
- if (this_image(A, dim=i) /= 4) call abort()
+ if (this_image(A, dim=i) /= 4) STOP 10
i = 3
- if (this_image(A, dim=i) /= 7) call abort()
- if (any (this_image(A) /= [2,4,7])) call abort()
+ if (this_image(A, dim=i) /= 7) STOP 11
+ if (any (this_image(A) /= [2,4,7])) STOP 12
case (3)
- if (this_image(A, dim=2) /= 3) call abort()
- if (this_image(A, dim=3) /= 8) call abort()
+ if (this_image(A, dim=2) /= 3) STOP 13
+ if (this_image(A, dim=3) /= 8) STOP 14
i = 2
- if (this_image(A, dim=i) /= 3) call abort()
+ if (this_image(A, dim=i) /= 3) STOP 15
i = 3
- if (this_image(A, dim=i) /= 8) call abort()
- if (any (this_image(A) /= [2,3,8])) call abort()
+ if (this_image(A, dim=i) /= 8) STOP 16
+ if (any (this_image(A) /= [2,3,8])) STOP 17
case (4)
- if (this_image(A, dim=2) /= 4) call abort()
- if (this_image(A, dim=3) /= 8) call abort()
+ if (this_image(A, dim=2) /= 4) STOP 18
+ if (this_image(A, dim=3) /= 8) STOP 19
i = 2
- if (this_image(A, dim=i) /= 4) call abort()
+ if (this_image(A, dim=i) /= 4) STOP 20
i = 3
- if (this_image(A, dim=i) /= 8) call abort()
- if (any (this_image(A) /= [2,4,8])) call abort()
+ if (this_image(A, dim=i) /= 8) STOP 21
+ if (any (this_image(A) /= [2,4,8])) STOP 22
case (5)
- if (this_image(A, dim=2) /= 3) call abort()
- if (this_image(A, dim=3) /= 9) call abort()
+ if (this_image(A, dim=2) /= 3) STOP 23
+ if (this_image(A, dim=3) /= 9) STOP 24
i = 2
- if (this_image(A, dim=i) /= 3) call abort()
+ if (this_image(A, dim=i) /= 3) STOP 25
i = 3
- if (this_image(A, dim=i) /= 9) call abort()
- if (any (this_image(A) /= [2,3,9])) call abort()
+ if (this_image(A, dim=i) /= 9) STOP 26
+ if (any (this_image(A) /= [2,3,9])) STOP 27
case (6)
- if (this_image(A, dim=2) /= 4) call abort()
- if (this_image(A, dim=3) /= 9) call abort()
+ if (this_image(A, dim=2) /= 4) STOP 28
+ if (this_image(A, dim=3) /= 9) STOP 29
i = 2
- if (this_image(A, dim=i) /= 4) call abort()
+ if (this_image(A, dim=i) /= 4) STOP 30
i = 3
- if (this_image(A, dim=i) /= 9) call abort()
- if (any (this_image(A) /= [2,4,9])) call abort()
+ if (this_image(A, dim=i) /= 9) STOP 31
+ if (any (this_image(A) /= [2,4,9])) STOP 32
case (7)
- if (this_image(A, dim=2) /= 3) call abort()
- if (this_image(A, dim=3) /= 10) call abort()
+ if (this_image(A, dim=2) /= 3) STOP 33
+ if (this_image(A, dim=3) /= 10) STOP 34
i = 2
- if (this_image(A, dim=i) /= 3) call abort()
+ if (this_image(A, dim=i) /= 3) STOP 35
i = 3
- if (this_image(A, dim=i) /= 10) call abort()
- if (any (this_image(A) /= [2,3,10])) call abort()
+ if (this_image(A, dim=i) /= 10) STOP 36
+ if (any (this_image(A) /= [2,3,10])) STOP 37
case (8)
- if (this_image(A, dim=2) /= 4) call abort()
- if (this_image(A, dim=3) /= 10) call abort()
+ if (this_image(A, dim=2) /= 4) STOP 38
+ if (this_image(A, dim=3) /= 10) STOP 39
i = 2
- if (this_image(A, dim=i) /= 4) call abort()
+ if (this_image(A, dim=i) /= 4) STOP 40
i = 3
- if (this_image(A, dim=i) /= 10) call abort()
- if (any (this_image(A) /= [2,4,10])) call abort()
+ if (this_image(A, dim=i) /= 10) STOP 41
+ if (any (this_image(A) /= [2,4,10])) STOP 42
end select
contains
@@ -108,17 +108,17 @@ index1 = image_index(d, [-1, 1] )
index2 = image_index(d, [0, 1] )
if (one .and. (index1 /= 1 .or. index2 /= 0)) &
- call abort()
+ STOP 43
if (.not. one .and. (index1 /= 1 .or. index2 /= 2)) &
- call abort()
+ STOP 44
index1 = image_index(e, [-1, 3] )
index2 = image_index(e, [-1, 4] )
if (one .and. (index1 /= 1 .or. index2 /= 0)) &
- call abort()
+ STOP 45
if (.not. one .and. (index1 /= 1 .or. index2 /= 2)) &
- call abort()
+ STOP 46
end subroutine test_image_index
diff --git a/gcc/testsuite/gfortran.dg/coarray_13.f90 b/gcc/testsuite/gfortran.dg/coarray_13.f90
index 6283fa02c57..178baea1ea3 100644
--- a/gcc/testsuite/gfortran.dg/coarray_13.f90
+++ b/gcc/testsuite/gfortran.dg/coarray_13.f90
@@ -23,42 +23,42 @@ contains
integer, allocatable :: a(:)[:,:,:]
allocate(a(1)[-4:9,8,4:*])
- if (this_image(a,dim=1) /= -4_8) call abort()
- if (lcobound (a,dim=1) /= -4_8) call abort()
- if (ucobound (a,dim=1) /= 9_8) call abort()
+ if (this_image(a,dim=1) /= -4_8) STOP 1
+ if (lcobound (a,dim=1) /= -4_8) STOP 2
+ if (ucobound (a,dim=1) /= 9_8) STOP 3
- if (this_image(a,dim=2) /= 1_8) call abort()
- if (lcobound (a,dim=2) /= 1_8) call abort()
- if (ucobound (a,dim=2) /= 8_8) call abort()
+ if (this_image(a,dim=2) /= 1_8) STOP 4
+ if (lcobound (a,dim=2) /= 1_8) STOP 5
+ if (ucobound (a,dim=2) /= 8_8) STOP 6
- if (this_image(a,dim=3) /= 4_8) call abort()
- if (lcobound (a,dim=3) /= 4_8) call abort()
- if (ucobound (a,dim=3) /= 4_8) call abort()
+ if (this_image(a,dim=3) /= 4_8) STOP 7
+ if (lcobound (a,dim=3) /= 4_8) STOP 8
+ if (ucobound (a,dim=3) /= 4_8) STOP 9
- if (any(this_image(a) /= [-4_8, 1_8, 4_8])) call abort()
- if (any(lcobound (a) /= [-4_8, 1_8, 4_8])) call abort()
- if (any(ucobound (a) /= [9_8, 8_8, 4_8])) call abort()
+ if (any(this_image(a) /= [-4_8, 1_8, 4_8])) STOP 10
+ if (any(lcobound (a) /= [-4_8, 1_8, 4_8])) STOP 11
+ if (any(ucobound (a) /= [9_8, 8_8, 4_8])) STOP 12
end subroutine one
subroutine two()
integer, allocatable :: a(:)[:,:,:]
allocate(a(1)[-4:9,8,4:*])
- if (this_image(a,dim=1) /= -4) call abort()
- if (lcobound (a,dim=1) /= -4) call abort()
- if (ucobound (a,dim=1) /= 9) call abort()
+ if (this_image(a,dim=1) /= -4) STOP 13
+ if (lcobound (a,dim=1) /= -4) STOP 14
+ if (ucobound (a,dim=1) /= 9) STOP 15
- if (this_image(a,dim=2) /= 1) call abort()
- if (lcobound (a,dim=2) /= 1) call abort()
- if (ucobound (a,dim=2) /= 8) call abort()
+ if (this_image(a,dim=2) /= 1) STOP 16
+ if (lcobound (a,dim=2) /= 1) STOP 17
+ if (ucobound (a,dim=2) /= 8) STOP 18
- if (this_image(a,dim=3) /= 4) call abort()
- if (lcobound (a,dim=3) /= 4) call abort()
- if (ucobound (a,dim=3) /= 4) call abort()
+ if (this_image(a,dim=3) /= 4) STOP 19
+ if (lcobound (a,dim=3) /= 4) STOP 20
+ if (ucobound (a,dim=3) /= 4) STOP 21
- if (any(this_image(a) /= [-4, 1, 4])) call abort()
- if (any(lcobound (a) /= [-4, 1, 4])) call abort()
- if (any(ucobound (a) /= [9, 8, 4])) call abort()
+ if (any(this_image(a) /= [-4, 1, 4])) STOP 22
+ if (any(lcobound (a) /= [-4, 1, 4])) STOP 23
+ if (any(ucobound (a) /= [9, 8, 4])) STOP 24
end subroutine two
subroutine three(n,A, n2)
@@ -66,17 +66,17 @@ contains
integer :: A(3)[n:*]
A(1) = 42
- if (A(1) /= 42) call abort()
+ if (A(1) /= 42) STOP 25
A(1)[n2] = -42
- if (A(1)[n2] /= -42) call abort()
+ if (A(1)[n2] /= -42) STOP 26
- if (this_image(A,dim=1) /= n) call abort()
- if (lcobound (A,dim=1) /= n) call abort()
- if (ucobound (A,dim=1) /= n) call abort()
+ if (this_image(A,dim=1) /= n) STOP 27
+ if (lcobound (A,dim=1) /= n) STOP 28
+ if (ucobound (A,dim=1) /= n) STOP 29
- if (any(this_image(A) /= n)) call abort()
- if (any(lcobound (A) /= n)) call abort()
- if (any(ucobound (A) /= n)) call abort()
+ if (any(this_image(A) /= n)) STOP 30
+ if (any(lcobound (A) /= n)) STOP 31
+ if (any(ucobound (A) /= n)) STOP 32
end subroutine three
subroutine three_a(n,A)
@@ -84,21 +84,21 @@ contains
integer :: A(3)[n+2:n+5,n-1:*]
A(1) = 42
- if (A(1) /= 42) call abort()
+ if (A(1) /= 42) STOP 33
A(1)[4,n] = -42
- if (A(1)[4,n] /= -42) call abort()
+ if (A(1)[4,n] /= -42) STOP 34
- if (this_image(A,dim=1) /= n+2) call abort()
- if (lcobound (A,dim=1) /= n+2) call abort()
- if (ucobound (A,dim=1) /= n+5) call abort()
+ if (this_image(A,dim=1) /= n+2) STOP 35
+ if (lcobound (A,dim=1) /= n+2) STOP 36
+ if (ucobound (A,dim=1) /= n+5) STOP 37
- if (this_image(A,dim=2) /= n-1) call abort()
- if (lcobound (A,dim=2) /= n-1) call abort()
- if (ucobound (A,dim=2) /= n-1) call abort()
+ if (this_image(A,dim=2) /= n-1) STOP 38
+ if (lcobound (A,dim=2) /= n-1) STOP 39
+ if (ucobound (A,dim=2) /= n-1) STOP 40
- if (any(this_image(A) /= [n+2,n-1])) call abort()
- if (any(lcobound (A) /= [n+2,n-1])) call abort()
- if (any(ucobound (A) /= [n+5,n-1])) call abort()
+ if (any(this_image(A) /= [n+2,n-1])) STOP 41
+ if (any(lcobound (A) /= [n+2,n-1])) STOP 42
+ if (any(ucobound (A) /= [n+5,n-1])) STOP 43
end subroutine three_a
subroutine three_b(n,A)
@@ -106,28 +106,28 @@ contains
integer :: A(-1:3,0:4,-2:5,-4:7)[n+2:n+5,n-1:*]
A(-1,0,-2,-4) = 42
- if (A(-1,0,-2,-4) /= 42) call abort()
+ if (A(-1,0,-2,-4) /= 42) STOP 44
A(1,0,-2,-4) = 99
- if (A(1,0,-2,-4) /= 99) call abort()
+ if (A(1,0,-2,-4) /= 99) STOP 45
- if (this_image(A,dim=1) /= n+2) call abort()
- if (lcobound (A,dim=1) /= n+2) call abort()
- if (ucobound (A,dim=1) /= n+5) call abort()
+ if (this_image(A,dim=1) /= n+2) STOP 46
+ if (lcobound (A,dim=1) /= n+2) STOP 47
+ if (ucobound (A,dim=1) /= n+5) STOP 48
- if (this_image(A,dim=2) /= n-1) call abort()
- if (lcobound (A,dim=2) /= n-1) call abort()
- if (ucobound (A,dim=2) /= n-1) call abort()
+ if (this_image(A,dim=2) /= n-1) STOP 49
+ if (lcobound (A,dim=2) /= n-1) STOP 50
+ if (ucobound (A,dim=2) /= n-1) STOP 51
- if (any(this_image(A) /= [n+2,n-1])) call abort()
- if (any(lcobound (A) /= [n+2,n-1])) call abort()
- if (any(ucobound (A) /= [n+5,n-1])) call abort()
+ if (any(this_image(A) /= [n+2,n-1])) STOP 52
+ if (any(lcobound (A) /= [n+2,n-1])) STOP 53
+ if (any(ucobound (A) /= [n+5,n-1])) STOP 54
end subroutine three_b
subroutine four(A)
integer, allocatable :: A(:)[:]
- if (this_image(A,dim=1) /= -4_8) call abort()
- if (lcobound (A,dim=1) /= -4_8) call abort()
- if (ucobound (A,dim=1) /= -4_8) call abort()
+ if (this_image(A,dim=1) /= -4_8) STOP 55
+ if (lcobound (A,dim=1) /= -4_8) STOP 56
+ if (ucobound (A,dim=1) /= -4_8) STOP 57
end subroutine four
subroutine five()
@@ -136,14 +136,14 @@ contains
i = 1
foo(1)[5,4] = 42
- if (foo(1)[5,4] /= 42) call abort()
- if (this_image(foo,dim=i) /= 5) call abort()
- if (lcobound(foo,dim=i) /= 5) call abort()
- if (ucobound(foo,dim=i) /= 7) call abort()
+ if (foo(1)[5,4] /= 42) STOP 58
+ if (this_image(foo,dim=i) /= 5) STOP 59
+ if (lcobound(foo,dim=i) /= 5) STOP 60
+ if (ucobound(foo,dim=i) /= 7) STOP 61
i = 2
- if (this_image(foo,dim=i) /= 4) call abort()
- if (lcobound(foo,dim=i) /= 4) call abort()
- if (ucobound(foo,dim=i) /= 4) call abort()
+ if (this_image(foo,dim=i) /= 4) STOP 62
+ if (lcobound(foo,dim=i) /= 4) STOP 63
+ if (ucobound(foo,dim=i) /= 4) STOP 64
end subroutine five
end program test
diff --git a/gcc/testsuite/gfortran.dg/coarray_15.f90 b/gcc/testsuite/gfortran.dg/coarray_15.f90
index ee01e61ccc1..8e7fb59dfce 100644
--- a/gcc/testsuite/gfortran.dg/coarray_15.f90
+++ b/gcc/testsuite/gfortran.dg/coarray_15.f90
@@ -26,17 +26,17 @@ program ex2
str = repeat('X', len(str))
write(str,*) 'z=',z(:),' on image',this_image()
if (str /= " z= 1.20000005 1.20000005 1.20000005 on image 1") &
- call abort
+ STOP 1
str = repeat('X', len(str))
write(str,*) 'z=',z,' on image',this_image()
if (str /= " z= 1.20000005 1.20000005 1.20000005 on image 1") &
- call abort
+ STOP 2
str = repeat('X', len(str))
write(str,*) 'z=',z(1:3)[this_image()],' on image',this_image()
if (str /= " z= 1.20000005 1.20000005 1.20000005 on image 1") &
- call abort
+ STOP 3
call ex2a()
call ex5()
@@ -63,12 +63,12 @@ subroutine ex2a()
str = repeat('X', len(str))
write(str,*) 'z=',z(:,:),' on image',this_image()
if (str /= " z= 1.20000005 1.20000005 1.20000005 1.20000005 on image 1") &
- call abort
+ STOP 4
str = repeat('X', len(str))
write(str,*) 'z=',z,' on image',this_image()
if (str /= " z= 1.20000005 1.20000005 1.20000005 1.20000005 on image 1") &
- call abort
+ STOP 5
end subroutine ex2a
subroutine ex5
@@ -83,17 +83,17 @@ subroutine ex5
str = repeat('X', len(str))
write(str,*) 'In main on image',this_image(), 'w= ',w
if (str /= " In main on image 1 w= 1.00000000 1.00000000 1.00000000 1.00000000") &
- call abort
+ STOP 6
str = repeat('X', len(str))
write(str,*) 'In main on image',this_image(), 'w= ',w(1:4)
if (str /= " In main on image 1 w= 1.00000000 1.00000000 1.00000000 1.00000000") &
- call abort
+ STOP 7
str = repeat('X', len(str))
write(str,*) 'In main on image',this_image(), 'w= ',w(:)[1]
if (str /= " In main on image 1 w= 1.00000000 1.00000000 1.00000000 1.00000000") &
- call abort
+ STOP 8
sync all
call ex5_sub(me,w)
@@ -108,5 +108,5 @@ subroutine ex5_sub(n,w)
str = repeat('X', len(str))
write(str,*) 'In sub on image',this_image(), 'w= ',w
if (str /= " In sub on image 1 w= 1.00000000") &
- call abort
+ STOP 9
end subroutine ex5_sub
diff --git a/gcc/testsuite/gfortran.dg/coarray_16.f90 b/gcc/testsuite/gfortran.dg/coarray_16.f90
index 282e8706848..ac59f6deeb7 100644
--- a/gcc/testsuite/gfortran.dg/coarray_16.f90
+++ b/gcc/testsuite/gfortran.dg/coarray_16.f90
@@ -30,7 +30,7 @@ allocate(c(3,3)[*])
index1 = image_index(a, [3, -4, 88] )
index2 = image_index(b, [-1, 0] )
index3 = image_index(c, [1] )
-if (index1 /= 1 .or. index2 /= 1 .or. index3 /= 1) call abort()
+if (index1 /= 1 .or. index2 /= 1 .or. index3 /= 1) STOP 1
index1 = image_index(a, [3, -3, 88] )
@@ -38,26 +38,26 @@ index2 = image_index(b, [0, 0] )
index3 = image_index(c, [2] )
if (one .and. (index1 /= 0 .or. index2 /= 0 .or. index3 /= 0)) &
- call abort()
+ STOP 2
if (.not. one .and. (index1 /= 2 .or. index2 /= 2 .or. index3 /= 2)) &
- call abort()
+ STOP 3
index1 = image_index(d, [-1, 1] )
index2 = image_index(d, [0, 1] )
if (one .and. (index1 /= 1 .or. index2 /= 0)) &
- call abort()
+ STOP 4
if (.not. one .and. (index1 /= 1 .or. index2 /= 2)) &
- call abort()
+ STOP 5
index1 = image_index(e, [-1, 3] )
index2 = image_index(e, [-1, 4] )
if (one .and. (index1 /= 1 .or. index2 /= 0)) &
- call abort()
+ STOP 6
if (.not. one .and. (index1 /= 1 .or. index2 /= 2)) &
- call abort()
+ STOP 7
call test(1, a,b,c)
@@ -70,11 +70,11 @@ index2 = image_index(a, [3, 1, 2] ) ! = 213, yeah!
index3 = image_index(a, [3, 1, 0] ) ! = 13
if (num_images() < 13 .and. (index1 /= 1 .or. index2 /= 0 .or. index3 /= 0)) &
- call abort()
+ STOP 8
if (num_images() >= 213 .and. (index1 /= 1 .or. index2 /= 213 .or. index3 /= 13)) &
- call abort()
+ STOP 9
if (num_images() >= 13 .and. (index1 /= 1 .or. index2 /= 0 .or. index3 /= 13)) &
- call abort()
+ STOP 10
contains
@@ -85,7 +85,7 @@ subroutine test(n, a, b, c)
index1 = image_index(a, [3, -4, 88] )
index2 = image_index(b, [-1, 0] )
index3 = image_index(c, [1] )
- if (index1 /= 1 .or. index2 /= 1 .or. index3 /= 1) call abort()
+ if (index1 /= 1 .or. index2 /= 1 .or. index3 /= 1) STOP 11
index1 = image_index(a, [3, -3, 88] )
@@ -93,8 +93,8 @@ subroutine test(n, a, b, c)
index3 = image_index(c, [2] )
if (one .and. (index1 /= 0 .or. index2 /= 0 .or. index3 /= 0)) &
- call abort()
+ STOP 12
if (.not. one .and. (index1 /= 2 .or. index2 /= 2 .or. index3 /= 2)) &
- call abort()
+ STOP 13
end subroutine test
end program test_image_index
diff --git a/gcc/testsuite/gfortran.dg/coarray_2.f90 b/gcc/testsuite/gfortran.dg/coarray_2.f90
index 902a0dd9820..1aff4d354ce 100644
--- a/gcc/testsuite/gfortran.dg/coarray_2.f90
+++ b/gcc/testsuite/gfortran.dg/coarray_2.f90
@@ -16,20 +16,20 @@ end critical myCr
sync all ( )
n = 5
sync all (stat=n)
- if (n /= 0) call abort()
+ if (n /= 0) STOP 1
n = 5
sync all (stat=n,errmsg=str)
- if (n /= 0) call abort()
+ if (n /= 0) STOP 2
sync all (errmsg=str)
sync memory
sync memory ( )
n = 5
sync memory (stat=n)
- if (n /= 0) call abort()
+ if (n /= 0) STOP 3
n = 5
sync memory (errmsg=str,stat=n)
- if (n /= 0) call abort()
+ if (n /= 0) STOP 4
sync memory (errmsg=str)
sync images (*, stat=n)
@@ -40,7 +40,7 @@ sync images (*)
sync images (1)
sync images ([1])
-if (num_images() /= 1) call abort()
+if (num_images() /= 1) STOP 5
error stop 'stop'
end
diff --git a/gcc/testsuite/gfortran.dg/coarray_23.f90 b/gcc/testsuite/gfortran.dg/coarray_23.f90
index 429928a4d86..b0cbd5f80a9 100644
--- a/gcc/testsuite/gfortran.dg/coarray_23.f90
+++ b/gcc/testsuite/gfortran.dg/coarray_23.f90
@@ -9,5 +9,5 @@
subroutine test
complex, save :: z[*]
- if (z /= cmplx (0.0, 0.0)) call abort()
+ if (z /= cmplx (0.0, 0.0)) STOP 1
end subroutine test
diff --git a/gcc/testsuite/gfortran.dg/coarray_40.f90 b/gcc/testsuite/gfortran.dg/coarray_40.f90
index d40a65accce..93a74bea011 100644
--- a/gcc/testsuite/gfortran.dg/coarray_40.f90
+++ b/gcc/testsuite/gfortran.dg/coarray_40.f90
@@ -21,6 +21,6 @@ program cp_bug
! v2 should get value in u (0)
v2 = v1
- if(v2 /= u) call abort()
+ if(v2 /= u) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.dg/coarray_alloc_comp_1.f08 b/gcc/testsuite/gfortran.dg/coarray_alloc_comp_1.f08
index 8c35fc8093b..0efef49d2a4 100644
--- a/gcc/testsuite/gfortran.dg/coarray_alloc_comp_1.f08
+++ b/gcc/testsuite/gfortran.dg/coarray_alloc_comp_1.f08
@@ -44,52 +44,52 @@ object%matrix = reshape([(i, i=1, 70)], [10, 7])
object%dynvol = vol_static
sync all
neighbor = merge(1,neighbor,me==num_images())
-if (object[neighbor]%scalar /= 42) call abort()
-if (object[neighbor]%indices(4) /= 4) call abort()
-if (object[neighbor]%matrix(3,6) /= 53) call abort()
-if (any( object[neighbor]%indices(:) /= [1,2,3,4,5] )) call abort()
-if (any( object[neighbor]%matrix(:,:) /= reshape([(i, i=1, 70)], [10, 7]))) call abort()
-if (any( object[neighbor]%matrix(3,:) /= [(i * 10 + 3, i=0, 6)])) call abort()
-if (any( object[neighbor]%matrix(:,2) /= [(i + 10, i=1, 10)])) call abort()
-if (any( object[neighbor]%matrix(idx,2) /= [11, 12, 11, 17, 15])) call abort()
-if (any( object[neighbor]%matrix(3,idx) /= [3, 13, 3, 63, 43])) call abort()
-if (any( object[neighbor]%matrix(2:8:4, 5:1:-1) /= reshape([42, 46, 32, 36, 22, 26, 12, 16, 2, 6], [2,5]))) call abort()
-if (any( object[neighbor]%matrix(:8:4, 2::2) /= reshape([11, 15, 31, 35, 51, 55], [2,3]))) call abort()
-if (any( object[neighbor]%volume /= vol_static)) call abort()
-if (any( object[neighbor]%dynvol /= vol_static)) call abort()
-if (any( object[neighbor]%volume(:, 2:4, :) /= vol_static(:, 2:4, :))) call abort()
-if (any( object[neighbor]%dynvol(:, 2:4, :) /= vol_static(:, 2:4, :))) call abort()
+if (object[neighbor]%scalar /= 42) STOP 1
+if (object[neighbor]%indices(4) /= 4) STOP 2
+if (object[neighbor]%matrix(3,6) /= 53) STOP 3
+if (any( object[neighbor]%indices(:) /= [1,2,3,4,5] )) STOP 4
+if (any( object[neighbor]%matrix(:,:) /= reshape([(i, i=1, 70)], [10, 7]))) STOP 5
+if (any( object[neighbor]%matrix(3,:) /= [(i * 10 + 3, i=0, 6)])) STOP 6
+if (any( object[neighbor]%matrix(:,2) /= [(i + 10, i=1, 10)])) STOP 7
+if (any( object[neighbor]%matrix(idx,2) /= [11, 12, 11, 17, 15])) STOP 8
+if (any( object[neighbor]%matrix(3,idx) /= [3, 13, 3, 63, 43])) STOP 9
+if (any( object[neighbor]%matrix(2:8:4, 5:1:-1) /= reshape([42, 46, 32, 36, 22, 26, 12, 16, 2, 6], [2,5]))) STOP 10
+if (any( object[neighbor]%matrix(:8:4, 2::2) /= reshape([11, 15, 31, 35, 51, 55], [2,3]))) STOP 11
+if (any( object[neighbor]%volume /= vol_static)) STOP 12
+if (any( object[neighbor]%dynvol /= vol_static)) STOP 13
+if (any( object[neighbor]%volume(:, 2:4, :) /= vol_static(:, 2:4, :))) STOP 14
+if (any( object[neighbor]%dynvol(:, 2:4, :) /= vol_static(:, 2:4, :))) STOP 15
vol2 = vol_static(:, ::2, :)
-if (any( object[neighbor]%volume(:, ::2, :) /= vol2)) call abort()
-if (any( object[neighbor]%dynvol(:, ::2, :) /= vol2)) call abort()
+if (any( object[neighbor]%volume(:, ::2, :) /= vol2)) STOP 16
+if (any( object[neighbor]%dynvol(:, ::2, :) /= vol2)) STOP 17
allocate(bar%vec(-2:2))
bar%vec(1)%volume = vol_static
-if (any(bar[neighbor]%vec(1)%volume /= vol_static)) call abort()
+if (any(bar[neighbor]%vec(1)%volume /= vol_static)) STOP 18
i = 15
bar%vec(1)%scalar = i
-if (.not. allocated(bar%vec(1)%scalar)) call abort()
-if (bar[neighbor]%vec(1)%scalar /= 15) call abort()
+if (.not. allocated(bar%vec(1)%scalar)) STOP 19
+if (bar[neighbor]%vec(1)%scalar /= 15) STOP 20
bar%vec(0)%scalar = 27
-if (.not. allocated(bar%vec(0)%scalar)) call abort()
-if (bar[neighbor]%vec(0)%scalar /= 27) call abort()
+if (.not. allocated(bar%vec(0)%scalar)) STOP 21
+if (bar[neighbor]%vec(0)%scalar /= 27) STOP 22
bar%vec(1)%indices = [ 3, 4, 15 ]
allocate(bar%vec(2)%indices(5))
bar%vec(2)%indices = 89
-if (.not. allocated(bar%vec(1)%indices)) call abort()
-if (allocated(bar%vec(-2)%indices)) call abort()
-if (allocated(bar%vec(-1)%indices)) call abort()
-if (allocated(bar%vec( 0)%indices)) call abort()
-if (.not. allocated(bar%vec( 2)%indices)) call abort()
-if (any(bar[me]%vec(2)%indices /= 89)) call abort()
+if (.not. allocated(bar%vec(1)%indices)) STOP 23
+if (allocated(bar%vec(-2)%indices)) STOP 24
+if (allocated(bar%vec(-1)%indices)) STOP 25
+if (allocated(bar%vec( 0)%indices)) STOP 26
+if (.not. allocated(bar%vec( 2)%indices)) STOP 27
+if (any(bar[me]%vec(2)%indices /= 89)) STOP 28
-if (any (bar[neighbor]%vec(1)%indices /= [ 3,4,15])) call abort()
+if (any (bar[neighbor]%vec(1)%indices /= [ 3,4,15])) STOP 29
deallocate(bar%vec(2)%indices, object%scalar, object%matrix)
deallocate(bar%vec)
diff --git a/gcc/testsuite/gfortran.dg/coarray_alloc_comp_2.f08 b/gcc/testsuite/gfortran.dg/coarray_alloc_comp_2.f08
index 3b3ae6c641a..b07d882196e 100644
--- a/gcc/testsuite/gfortran.dg/coarray_alloc_comp_2.f08
+++ b/gcc/testsuite/gfortran.dg/coarray_alloc_comp_2.f08
@@ -43,43 +43,43 @@ object[neighbor]%volume = vol_static
object[neighbor]%matrix = reshape([(i, i=1, 70)], [10, 7])
object[neighbor]%dynvol = vol_static
sync all
-if (object%scalar /= 42) call abort()
-if (any( object%indices /= [1,2,3,4,5] )) call abort()
-if (any( object%matrix /= reshape([(i, i=1, 70)], [10, 7]))) call abort()
-if (any( object%volume /= vol_static)) call abort()
-if (any( object%dynvol /= vol_static)) call abort()
+if (object%scalar /= 42) STOP 1
+if (any( object%indices /= [1,2,3,4,5] )) STOP 2
+if (any( object%matrix /= reshape([(i, i=1, 70)], [10, 7]))) STOP 3
+if (any( object%volume /= vol_static)) STOP 4
+if (any( object%dynvol /= vol_static)) STOP 5
vol2 = vol_static
vol2(:, ::2, :) = 42
object[neighbor]%volume(:, ::2, :) = 42
object[neighbor]%dynvol(:, ::2, :) = 42
-if (any( object%volume /= vol2)) call abort()
-if (any( object%dynvol /= vol2)) call abort()
+if (any( object%volume /= vol2)) STOP 6
+if (any( object%dynvol /= vol2)) STOP 7
allocate(bar%vec(-2:2))
bar[neighbor]%vec(1)%volume = vol_static
-if (any(bar%vec(1)%volume /= vol_static)) call abort()
+if (any(bar%vec(1)%volume /= vol_static)) STOP 8
i = 15
bar[neighbor]%vec(1)%scalar = i
-if (.not. allocated(bar%vec(1)%scalar)) call abort()
-if (bar%vec(1)%scalar /= 15) call abort()
+if (.not. allocated(bar%vec(1)%scalar)) STOP 9
+if (bar%vec(1)%scalar /= 15) STOP 10
bar[neighbor]%vec(0)%scalar = 27
-if (.not. allocated(bar%vec(0)%scalar)) call abort()
-if (bar%vec(0)%scalar /= 27) call abort()
+if (.not. allocated(bar%vec(0)%scalar)) STOP 11
+if (bar%vec(0)%scalar /= 27) STOP 12
bar[neighbor]%vec(1)%indices = [ 3, 4, 15 ]
allocate(bar%vec(2)%indices(5))
bar[neighbor]%vec(2)%indices = 89
-if (.not. allocated(bar%vec(1)%indices)) call abort()
-if (allocated(bar%vec(-2)%indices)) call abort()
-if (allocated(bar%vec(-1)%indices)) call abort()
-if (allocated(bar%vec( 0)%indices)) call abort()
-if (.not. allocated(bar%vec( 2)%indices)) call abort()
-if (any(bar%vec(2)%indices /= 89)) call abort()
+if (.not. allocated(bar%vec(1)%indices)) STOP 13
+if (allocated(bar%vec(-2)%indices)) STOP 14
+if (allocated(bar%vec(-1)%indices)) STOP 15
+if (allocated(bar%vec( 0)%indices)) STOP 16
+if (.not. allocated(bar%vec( 2)%indices)) STOP 17
+if (any(bar%vec(2)%indices /= 89)) STOP 18
-if (any (bar%vec(1)%indices /= [ 3,4,15])) call abort()
+if (any (bar%vec(1)%indices /= [ 3,4,15])) STOP 19
end program
diff --git a/gcc/testsuite/gfortran.dg/coarray_alloc_comp_6.f08 b/gcc/testsuite/gfortran.dg/coarray_alloc_comp_6.f08
new file mode 100644
index 00000000000..a37554ffc1b
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/coarray_alloc_comp_6.f08
@@ -0,0 +1,55 @@
+! { dg-do run }
+! { dg-options "-fcoarray=lib -lcaf_single" }
+! { dg-additional-options "-latomic" { target libatomic_available } }
+
+! Check that type conversion during caf_get_by_ref is done for components.
+
+program main
+
+ implicit none
+
+ type :: mytype
+ integer :: i
+ integer :: i4
+ integer(kind=1) :: i1
+ real :: r8
+ real(kind=4) :: r4
+ integer :: arr_i4(4)
+ integer(kind=1) :: arr_i1(4)
+ real :: arr_r8(4)
+ real(kind=4) :: arr_r4(4)
+ end type
+
+ type T
+ type(mytype), allocatable :: obj
+ end type T
+
+ type(T), save :: bar[*]
+ integer :: i4, arr_i4(4)
+ integer(kind=1) :: i1, arr_i1(4)
+ real :: r8, arr_r8(4)
+ real(kind=4) :: r4, arr_r4(4)
+
+ bar%obj = mytype(42, 4, INT(1, 1), 8.0, REAL(4.0, 4), (/ 1,2,3,4 /), &
+ & INT((/ 5,6,7,8 /), 1), (/ 1.2,3.4,5.6,7.8 /), REAL( &
+ & (/ 8.7,6.5,4.3,2.1 /), 4))
+
+ i1 = bar[1]%obj%r4
+ if (i1 /= 4) stop 1
+ i4 = bar[1]%obj%r8
+ if (i4 /= 8) stop 2
+ r4 = bar[1]%obj%i1
+ if (abs(r4 - 1.0) > 1E-4) stop 3
+ r8 = bar[1]%obj%i4
+ if (abs(r8 - 4.0) > 1E-6) stop 4
+
+ arr_i1 = bar[1]%obj%arr_r4
+ if (any(arr_i1 /= INT((/ 8,6,4,2 /), 1))) stop 5
+ arr_i4 = bar[1]%obj%arr_r8
+ if (any(arr_i4 /= (/ 1,3,5,7 /))) stop 6
+ arr_r4 = bar[1]%obj%arr_i1
+ if (any(abs(arr_r4 - REAL((/ 5,6,7,8 /), 4)) > 1E-4)) stop 7
+ arr_r8 = bar[1]%obj%arr_i4
+ if (any(abs(arr_r8 - (/ 1,2,3,4 /)) > 1E-6)) stop 8
+end program
+
diff --git a/gcc/testsuite/gfortran.dg/coarray_alloc_comp_7.f08 b/gcc/testsuite/gfortran.dg/coarray_alloc_comp_7.f08
new file mode 100644
index 00000000000..93925828da1
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/coarray_alloc_comp_7.f08
@@ -0,0 +1,62 @@
+! { dg-do run }
+! { dg-options "-fcoarray=lib -lcaf_single" }
+! { dg-additional-options "-latomic" { target libatomic_available } }
+
+! Check that type conversion during caf_send_by_ref is done for components.
+
+program main
+
+ implicit none
+
+ type :: mytype
+ integer :: i
+ integer :: i4
+ integer(kind=1) :: i1
+ real :: r8
+ real(kind=4) :: r4
+ integer :: arr_i4(4)
+ integer(kind=1) :: arr_i1(4)
+ real :: arr_r8(4)
+ real(kind=4) :: arr_r4(4)
+ end type
+
+ type T
+ type(mytype), allocatable :: obj
+ end type T
+
+ type(T), save :: bar[*]
+ integer :: i4, arr_i4(4)
+ integer(kind=1) :: i1, arr_i1(4)
+ real :: r8, arr_r8(4)
+ real(kind=4) :: r4, arr_r4(4)
+
+ allocate(bar%obj)
+ i1 = INT(1, 1)
+ i4 = 4
+ r4 = REAL(4.0, 4)
+ r8 = 8.0
+ arr_i1 = INT((/ 5,6,7,8 /), 1)
+ arr_i4 = (/ 1,2,3,4 /)
+ arr_r8 = (/ 1.2,3.4,5.6,7.8 /)
+ arr_r4 = REAL((/ 8.7,6.5,4.3,2.1 /), 4)
+
+ bar[1]%obj%r4 = i1
+ if (abs(bar%obj%r4 - 1.0) > 1E-4) stop 1
+ bar[1]%obj%r8 = i4
+ if (abs(bar%obj%r8 - 4.0) > 1E-6) stop 2
+ bar[1]%obj%i1 = r4
+ if (bar%obj%i1 /= 4) stop 3
+ bar[1]%obj%i4 = r8
+ if (bar%obj%i4 /= 8) stop 4
+
+ bar[1]%obj%arr_r4 = arr_i1
+ print *, bar%obj%arr_r4
+ if (any(abs(bar%obj%arr_r4 - REAL((/ 5,6,7,8 /), 4)) > 1E-4)) stop 5
+ bar[1]%obj%arr_r8 = arr_i4
+ if (any(abs(bar%obj%arr_r8 - (/ 1,2,3,4 /)) > 1E-6)) stop 6
+ bar[1]%obj%arr_i1 = arr_r4
+ if (any(bar%obj%arr_i1 /= INT((/ 8,6,4,2 /), 1))) stop 7
+ bar[1]%obj%arr_i4 = arr_r8
+ if (any(bar%obj%arr_i4 /= (/ 1,3,5,7 /))) stop 8
+end program
+
diff --git a/gcc/testsuite/gfortran.dg/coarray_alloc_comp_8.f08 b/gcc/testsuite/gfortran.dg/coarray_alloc_comp_8.f08
new file mode 100644
index 00000000000..679bec32902
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/coarray_alloc_comp_8.f08
@@ -0,0 +1,59 @@
+! { dg-do run }
+! { dg-options "-fcoarray=lib -lcaf_single" }
+! { dg-additional-options "-latomic" { target libatomic_available } }
+
+! Check that type conversion during caf_sendget_by_ref is done for components.
+
+program main
+
+ implicit none
+
+ type :: mytype
+ integer :: i
+ integer :: i4
+ integer(kind=1) :: i1
+ real :: r8
+ real(kind=4) :: r4
+ integer :: arr_i4(4)
+ integer(kind=1) :: arr_i1(4)
+ real :: arr_r8(4)
+ real(kind=4) :: arr_r4(4)
+ end type
+
+ type T
+ type(mytype), allocatable :: obj
+ end type T
+
+ type(T), save :: bar[*]
+ integer :: i4, arr_i4(4)
+ integer(kind=1) :: i1, arr_i1(4)
+ real :: r8, arr_r8(4)
+ real(kind=4) :: r4, arr_r4(4)
+
+ bar%obj = mytype(42, 4, INT(1, 1), 8.0, REAL(4.0, 4), (/ 1,2,3,4 /), &
+ & INT((/ 5,6,7,8 /), 1), (/ 1.2,3.4,5.6,7.8 /), REAL( &
+ & (/ 8.7,6.5,4.3,2.1 /), 4))
+
+ bar[1]%obj%i1 = bar[1]%obj%r4
+ if (bar%obj%i1 /= 4) stop 1
+ bar[1]%obj%i4 = bar[1]%obj%r8
+ if (bar%obj%i4 /= 8) stop 2
+ bar[1]%obj%arr_i1 = bar[1]%obj%arr_r4
+ if (any(bar%obj%arr_i1 /= (/ 8,6,4,2 /))) stop 3
+ bar[1]%obj%arr_i4 = bar[1]%obj%arr_r8
+ if (any(bar%obj%arr_i4 /= (/ 1,3,5,7 /))) stop 4
+
+ bar%obj%i1 = INT(1, 1)
+ bar%obj%i4 = 4
+ bar%obj%arr_i1 = INT((/ 5,6,7,8 /), 1)
+ bar%obj%arr_i4 = (/ 1,2,3,4 /)
+ bar[1]%obj%r4 = bar[1]%obj%i1
+ if (abs(bar%obj%r4 - 1.0) > 1E-4) stop 5
+ bar[1]%obj%r8 = bar[1]%obj%i4
+ if (abs(bar%obj%r8 - 4.0) > 1E-6) stop 6
+ bar[1]%obj%arr_r4 = bar[1]%obj%arr_i1
+ if (any(abs(bar%obj%arr_r4 - REAL((/ 5,6,7,8 /), 4)) > 1E-4)) stop 7
+ bar[1]%obj%arr_r8 = bar[1]%obj%arr_i4
+ if (any(abs(bar%obj%arr_r8 - (/ 1,2,3,4 /)) > 1E-6)) stop 8
+end program
+
diff --git a/gcc/testsuite/gfortran.dg/coarray_allocate_10.f08 b/gcc/testsuite/gfortran.dg/coarray_allocate_10.f08
index 89e7bb4a981..519e0db467f 100644
--- a/gcc/testsuite/gfortran.dg/coarray_allocate_10.f08
+++ b/gcc/testsuite/gfortran.dg/coarray_allocate_10.f08
@@ -30,10 +30,10 @@ program alloc_comp
sync all
- if(me == 1 .and. o%coo[np]%x(10) /= 11 ) call abort()
+ if(me == 1 .and. o%coo[np]%x(10) /= 11 ) STOP 1
! Check the whole array is correct.
- if (me == 1 .and. any( o%coo[np]%x /= [(i, i=2, 101)] ) ) call abort()
+ if (me == 1 .and. any( o%coo[np]%x /= [(i, i=2, 101)] ) ) STOP 2
deallocate(o%coo%x)
diff --git a/gcc/testsuite/gfortran.dg/coarray_allocate_2.f08 b/gcc/testsuite/gfortran.dg/coarray_allocate_2.f08
index 7a712a94203..f0ec6ffe798 100644
--- a/gcc/testsuite/gfortran.dg/coarray_allocate_2.f08
+++ b/gcc/testsuite/gfortran.dg/coarray_allocate_2.f08
@@ -17,8 +17,8 @@
allocate(some_local_object, source=foobar)
- if (.not. allocated(foobar)) call abort()
- if (.not. allocated(some_local_object)) call abort()
+ if (.not. allocated(foobar)) STOP 1
+ if (.not. allocated(some_local_object)) STOP 2
deallocate(some_local_object)
deallocate(foobar)
diff --git a/gcc/testsuite/gfortran.dg/coarray_allocate_3.f08 b/gcc/testsuite/gfortran.dg/coarray_allocate_3.f08
index 46f34c08d69..3d116d22af8 100644
--- a/gcc/testsuite/gfortran.dg/coarray_allocate_3.f08
+++ b/gcc/testsuite/gfortran.dg/coarray_allocate_3.f08
@@ -17,10 +17,10 @@
allocate(some_local_object, source=foobar)
- if (.not. allocated(foobar)) call abort()
- if (lbound(foobar, 1) /= 1 .OR. ubound(foobar, 1) /= 10) call abort()
- if (.not. allocated(some_local_object)) call abort()
- if (any(some_local_object(:)%bar /= [99, 99, 99, 99, 99, 99, 99, 99, 99, 99])) call abort()
+ if (.not. allocated(foobar)) STOP 1
+ if (lbound(foobar, 1) /= 1 .OR. ubound(foobar, 1) /= 10) STOP 2
+ if (.not. allocated(some_local_object)) STOP 3
+ if (any(some_local_object(:)%bar /= [99, 99, 99, 99, 99, 99, 99, 99, 99, 99])) STOP 4
deallocate(some_local_object)
deallocate(foobar)
diff --git a/gcc/testsuite/gfortran.dg/coarray_allocate_4.f08 b/gcc/testsuite/gfortran.dg/coarray_allocate_4.f08
index a36d7968b42..d2e57f56780 100644
--- a/gcc/testsuite/gfortran.dg/coarray_allocate_4.f08
+++ b/gcc/testsuite/gfortran.dg/coarray_allocate_4.f08
@@ -23,10 +23,10 @@ select type (z)
class is (foo)
r => z
class default
- call abort()
+ STOP 1
end select
-if (.not. associated(r)) call abort()
+if (.not. associated(r)) STOP 2
deallocate(r)
deallocate(p)
diff --git a/gcc/testsuite/gfortran.dg/coarray_allocate_5.f08 b/gcc/testsuite/gfortran.dg/coarray_allocate_5.f08
index 2d8785420c9..161d18f6df3 100644
--- a/gcc/testsuite/gfortran.dg/coarray_allocate_5.f08
+++ b/gcc/testsuite/gfortran.dg/coarray_allocate_5.f08
@@ -18,10 +18,10 @@
allocate(some_local_object, source=foobar)
- if (.not. allocated(foobar)) call abort()
- if (lbound(foobar, 1) /= 1 .OR. ubound(foobar, 1) /= 10) call abort()
- if (.not. allocated(some_local_object)) call abort()
- if (any(some_local_object(:)%bar /= [99, 99, 99, 99, 99, 99, 99, 99, 99, 99])) call abort()
+ if (.not. allocated(foobar)) STOP 1
+ if (lbound(foobar, 1) /= 1 .OR. ubound(foobar, 1) /= 10) STOP 2
+ if (.not. allocated(some_local_object)) STOP 3
+ if (any(some_local_object(:)%bar /= [99, 99, 99, 99, 99, 99, 99, 99, 99, 99])) STOP 4
deallocate(some_local_object)
deallocate(foobar)
diff --git a/gcc/testsuite/gfortran.dg/coarray_allocate_7.f08 b/gcc/testsuite/gfortran.dg/coarray_allocate_7.f08
index d9241768cc1..5a72438e862 100644
--- a/gcc/testsuite/gfortran.dg/coarray_allocate_7.f08
+++ b/gcc/testsuite/gfortran.dg/coarray_allocate_7.f08
@@ -18,9 +18,9 @@ program main
me=this_image() ! me is always 1 here
object%indices=[(i,i=1,me)]
- if ( size(object%indices) /= 1 ) call abort()
+ if ( size(object%indices) /= 1 ) STOP 1
! therefore no array is present here and no array test needed.
- if ( object%indices(1) /= 1 ) call abort()
+ if ( object%indices(1) /= 1 ) STOP 2
end program
! { dg-final { scan-tree-dump-times "_gfortran_caf_register \\(D.\[0-9\]+, 1, &\\(\\(struct mytype\\) \\*object\\).indices.token, &\\(\\(struct mytype\\) \\*object\\).indices, 0B, 0B, 0\\);" 1 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/coarray_allocate_8.f08 b/gcc/testsuite/gfortran.dg/coarray_allocate_8.f08
index 6a85ded0251..0e83ec5c46c 100644
--- a/gcc/testsuite/gfortran.dg/coarray_allocate_8.f08
+++ b/gcc/testsuite/gfortran.dg/coarray_allocate_8.f08
@@ -29,10 +29,10 @@ program alloc_comp
sync all
! Check the caf_get()-offset is computed correctly.
- if(me == 1 .and. coo[np]%y(10) /= 11 ) call abort()
+ if(me == 1 .and. coo[np]%y(10) /= 11 ) STOP 1
! Check the whole array is correct.
- if (me == 1 .and. any( coo[np]%y /= [(i, i=2, 101)] ) ) call abort()
+ if (me == 1 .and. any( coo[np]%y /= [(i, i=2, 101)] ) ) STOP 2
deallocate(coo%x)
diff --git a/gcc/testsuite/gfortran.dg/coarray_allocate_9.f08 b/gcc/testsuite/gfortran.dg/coarray_allocate_9.f08
index 71409e9e6f8..a3deb09679a 100644
--- a/gcc/testsuite/gfortran.dg/coarray_allocate_9.f08
+++ b/gcc/testsuite/gfortran.dg/coarray_allocate_9.f08
@@ -20,13 +20,13 @@ program main
allocate(outbox%v(1), source=particles(this_image()))
- if (any( outbox[1]%v(1)%x(1:2) /= [ 1.0, 1.0] )) call abort()
- if (any( outbox[1]%v(1)%x(:) /= [ 1.0, 1.0] )) call abort()
- if (any( outbox[1]%v(1)%x /= [ 1.0, 1.0] )) call abort()
+ if (any( outbox[1]%v(1)%x(1:2) /= [ 1.0, 1.0] )) STOP 1
+ if (any( outbox[1]%v(1)%x(:) /= [ 1.0, 1.0] )) STOP 2
+ if (any( outbox[1]%v(1)%x /= [ 1.0, 1.0] )) STOP 3
allocate(object(1)[*], source=particles(this_image()))
- if (any( object(1)[1]%x(1:2) /= [ 1.0, 1.0] )) call abort()
- if (any( object(1)[1]%x(:) /= [ 1.0, 1.0] )) call abort()
- if (any( object(1)[1]%x /= [ 1.0, 1.0] )) call abort()
+ if (any( object(1)[1]%x(1:2) /= [ 1.0, 1.0] )) STOP 4
+ if (any( object(1)[1]%x(:) /= [ 1.0, 1.0] )) STOP 5
+ if (any( object(1)[1]%x /= [ 1.0, 1.0] )) STOP 6
end program
diff --git a/gcc/testsuite/gfortran.dg/coarray_lib_alloc_4.f90 b/gcc/testsuite/gfortran.dg/coarray_lib_alloc_4.f90
index c6de955c020..c08378816ca 100644
--- a/gcc/testsuite/gfortran.dg/coarray_lib_alloc_4.f90
+++ b/gcc/testsuite/gfortran.dg/coarray_lib_alloc_4.f90
@@ -16,24 +16,24 @@ program test_caf_alloc
allocate (xx[*])
- if (allocated(xx%i)) call abort()
- if (allocated(xx[1]%i)) call abort()
- if (allocated(xx[1]%r)) call abort()
+ if (allocated(xx%i)) STOP 1
+ if (allocated(xx[1]%i)) STOP 2
+ if (allocated(xx[1]%r)) STOP 3
allocate(xx%i)
- if (.not. allocated(xx[1]%i)) call abort()
- if (allocated(xx[1]%r)) call abort()
+ if (.not. allocated(xx[1]%i)) STOP 4
+ if (allocated(xx[1]%r)) STOP 5
allocate(xx%r(5))
- if (.not. allocated(xx[1]%i)) call abort()
- if (.not. allocated(xx[1]%r)) call abort()
+ if (.not. allocated(xx[1]%i)) STOP 6
+ if (.not. allocated(xx[1]%r)) STOP 7
deallocate(xx%i)
- if (allocated(xx[1]%i)) call abort()
- if (.not. allocated(xx[1]%r)) call abort()
+ if (allocated(xx[1]%i)) STOP 8
+ if (.not. allocated(xx[1]%r)) STOP 9
deallocate(xx%r)
- if (allocated(xx[1]%i)) call abort()
- if (allocated(xx[1]%r)) call abort()
+ if (allocated(xx[1]%i)) STOP 10
+ if (allocated(xx[1]%r)) STOP 11
deallocate(xx)
end
diff --git a/gcc/testsuite/gfortran.dg/coarray_lib_comm_1.f90 b/gcc/testsuite/gfortran.dg/coarray_lib_comm_1.f90
index 8ad6b081a13..a7567af7b8f 100644
--- a/gcc/testsuite/gfortran.dg/coarray_lib_comm_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray_lib_comm_1.f90
@@ -12,19 +12,19 @@ A = [1,2,3,4,5,6,7,8,9,10]
B = [1,2,3,4,5,6,7,8,9,10]
A(10:2:-1) = A(9:1:-1)[1] ! 0
B(10:2:-1) = B(9:1:-1)
-if (any (A-B /= 0)) call abort
+if (any (A-B /= 0)) STOP 1
A = [1,2,3,4,5,6,7,8,9,10]
B = [1,2,3,4,5,6,7,8,9,10]
A(9:1:-1) = A(10:2:-1)[1] ! 1
B(9:1:-1) = B(10:2:-1)
-if (any (A-B /= 0)) call abort
+if (any (A-B /= 0)) STOP 2
A = [1,2,3,4,5,6,7,8,9,10]
B = [1,2,3,4,5,6,7,8,9,10]
allocate(P(10))
P(:) = A(:)[1] ! 1
-if (any (A-B /= 0)) call abort
+if (any (A-B /= 0)) STOP 3
A = [1,2,3,4,5,6,7,8,9,10]
B = [1,2,3,4,5,6,7,8,9,10]
@@ -35,7 +35,7 @@ A = [1,2,3,4,5,6,7,8,9,10]
B = [1,2,3,4,5,6,7,8,9,10]
A(1:5)[1] = A(3:7)[1] ! 1
B(1:5) = B(3:7)
-if (any (A-B /= 0)) call abort
+if (any (A-B /= 0)) STOP 4
end
! { dg-final { scan-tree-dump-times "_gfortran_caf_get \\\(caf_token.0, \\\(integer\\\(kind=\[48\]\\\)\\\) parm.\[0-9\]+.data - \\\(integer\\\(kind=\[48\]\\\)\\\) a, 1, &parm.\[0-9\]+, 0B, &parm.\[0-9\]+, 4, 4, 0, 0B\\\);" 1 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/coarray_lib_realloc_1.f90 b/gcc/testsuite/gfortran.dg/coarray_lib_realloc_1.f90
index 559d880b5ac..752c9080641 100644
--- a/gcc/testsuite/gfortran.dg/coarray_lib_realloc_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray_lib_realloc_1.f90
@@ -16,7 +16,7 @@ end module m
subroutine foo()
use m
type(t) :: x,y
-if (allocated(x%caf)) call abort()
+if (allocated(x%caf)) STOP 1
x = y
end
diff --git a/gcc/testsuite/gfortran.dg/coarray_lib_token_1.f90 b/gcc/testsuite/gfortran.dg/coarray_lib_token_1.f90
index 2833d45e7ff..edd6b3b8feb 100644
--- a/gcc/testsuite/gfortran.dg/coarray_lib_token_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray_lib_token_1.f90
@@ -16,10 +16,10 @@ program main
caf_dt = t (1,2)
call sub (caf, caf_dt%b)
print *,caf, caf_dt%b
- if (caf /= -99 .or. caf_dt%b /= -101) call abort ()
+ if (caf /= -99 .or. caf_dt%b /= -101) STOP 1
call sub_opt ()
call sub_opt (caf)
- if (caf /= 124) call abort ()
+ if (caf /= 124) STOP 2
contains
subroutine sub (x1, x2)
@@ -32,7 +32,7 @@ contains
integer :: y1[*], y2[*]
print *, y1, y2
- if (y1 /= 42 .or. y2 /= 2) call abort ()
+ if (y1 /= 42 .or. y2 /= 2) STOP 3
y1 = -99
y2 = -101
end subroutine sub2
@@ -40,7 +40,7 @@ contains
subroutine sub_opt (z)
integer, optional :: z[*]
if (present (z)) then
- if (z /= -99) call abort ()
+ if (z /= -99) STOP 4
z = 124
end if
end subroutine sub_opt
diff --git a/gcc/testsuite/gfortran.dg/coarray_lib_token_2.f90 b/gcc/testsuite/gfortran.dg/coarray_lib_token_2.f90
index b408529184b..6aecc34b665 100644
--- a/gcc/testsuite/gfortran.dg/coarray_lib_token_2.f90
+++ b/gcc/testsuite/gfortran.dg/coarray_lib_token_2.f90
@@ -43,10 +43,10 @@ program main
caf_dt = t (1,2)
call sub (caf, caf_dt%b)
print *,caf, caf_dt%b
- if (caf /= -99 .or. caf_dt%b /= -101) call abort ()
+ if (caf /= -99 .or. caf_dt%b /= -101) STOP 1
call sub_opt ()
call sub_opt (caf)
- if (caf /= 124) call abort ()
+ if (caf /= 124) STOP 2
contains
subroutine sub (x1, x2)
@@ -58,7 +58,7 @@ contains
integer :: y1[*], y2[*]
print *, y1, y2
- if (y1 /= 42 .or. y2 /= 2) call abort ()
+ if (y1 /= 42 .or. y2 /= 2) STOP 3
y1 = -99
y2 = -101
end subroutine sub2
@@ -66,7 +66,7 @@ contains
subroutine sub_opt (z)
integer, optional :: z[*]
if (present (z)) then
- if (z /= -99) call abort ()
+ if (z /= -99) STOP 4
z = 124
end if
end subroutine sub_opt
diff --git a/gcc/testsuite/gfortran.dg/coarray_ptr_comp_1.f08 b/gcc/testsuite/gfortran.dg/coarray_ptr_comp_1.f08
index f0b51d5ead1..e76d56dd6bc 100644
--- a/gcc/testsuite/gfortran.dg/coarray_ptr_comp_1.f08
+++ b/gcc/testsuite/gfortran.dg/coarray_ptr_comp_1.f08
@@ -45,53 +45,53 @@ object%matrix = reshape([(i, i=1, 70)], [10, 7])
object%dynvol => vol_static
sync all
neighbor = merge(1,neighbor,me==num_images())
-if (object[neighbor]%scalar /= 42) call abort()
-if (object[neighbor]%indices(4) /= 4) call abort()
-if (object[neighbor]%matrix(3,6) /= 53) call abort()
-if (any( object[neighbor]%indices(:) /= [1,2,3,4,5] )) call abort()
-if (any( object[neighbor]%matrix(:,:) /= reshape([(i, i=1, 70)], [10, 7]))) call abort()
-if (any( object[neighbor]%matrix(3,:) /= [(i * 10 + 3, i=0, 6)])) call abort()
-if (any( object[neighbor]%matrix(:,2) /= [(i + 10, i=1, 10)])) call abort()
-if (any( object[neighbor]%matrix(idx,2) /= [11, 12, 11, 17, 15])) call abort()
-if (any( object[neighbor]%matrix(3,idx) /= [3, 13, 3, 63, 43])) call abort()
-if (any( object[neighbor]%matrix(2:8:4, 5:1:-1) /= reshape([42, 46, 32, 36, 22, 26, 12, 16, 2, 6], [2,5]))) call abort()
-if (any( object[neighbor]%matrix(:8:4, 2::2) /= reshape([11, 15, 31, 35, 51, 55], [2,3]))) call abort()
-if (any( object[neighbor]%volume /= vol_static)) call abort()
-if (any( object[neighbor]%dynvol /= vol_static)) call abort()
-if (any( object[neighbor]%volume(:, 2:4, :) /= vol_static(:, 2:4, :))) call abort()
-if (any( object[neighbor]%dynvol(:, 2:4, :) /= vol_static(:, 2:4, :))) call abort()
+if (object[neighbor]%scalar /= 42) STOP 1
+if (object[neighbor]%indices(4) /= 4) STOP 2
+if (object[neighbor]%matrix(3,6) /= 53) STOP 3
+if (any( object[neighbor]%indices(:) /= [1,2,3,4,5] )) STOP 4
+if (any( object[neighbor]%matrix(:,:) /= reshape([(i, i=1, 70)], [10, 7]))) STOP 5
+if (any( object[neighbor]%matrix(3,:) /= [(i * 10 + 3, i=0, 6)])) STOP 6
+if (any( object[neighbor]%matrix(:,2) /= [(i + 10, i=1, 10)])) STOP 7
+if (any( object[neighbor]%matrix(idx,2) /= [11, 12, 11, 17, 15])) STOP 8
+if (any( object[neighbor]%matrix(3,idx) /= [3, 13, 3, 63, 43])) STOP 9
+if (any( object[neighbor]%matrix(2:8:4, 5:1:-1) /= reshape([42, 46, 32, 36, 22, 26, 12, 16, 2, 6], [2,5]))) STOP 10
+if (any( object[neighbor]%matrix(:8:4, 2::2) /= reshape([11, 15, 31, 35, 51, 55], [2,3]))) STOP 11
+if (any( object[neighbor]%volume /= vol_static)) STOP 12
+if (any( object[neighbor]%dynvol /= vol_static)) STOP 13
+if (any( object[neighbor]%volume(:, 2:4, :) /= vol_static(:, 2:4, :))) STOP 14
+if (any( object[neighbor]%dynvol(:, 2:4, :) /= vol_static(:, 2:4, :))) STOP 15
vol2 = vol_static(:, ::2, :)
-if (any( object[neighbor]%volume(:, ::2, :) /= vol2)) call abort()
-if (any( object[neighbor]%dynvol(:, ::2, :) /= vol2)) call abort()
+if (any( object[neighbor]%volume(:, ::2, :) /= vol2)) STOP 16
+if (any( object[neighbor]%dynvol(:, ::2, :) /= vol2)) STOP 17
allocate(bar%vec(-2:2))
bar%vec(1)%volume = vol_static
-if (any(bar[neighbor]%vec(1)%volume /= vol_static)) call abort()
+if (any(bar[neighbor]%vec(1)%volume /= vol_static)) STOP 18
i = 15
allocate(bar%vec(1)%scalar, bar%vec(0)%scalar)
bar%vec(1)%scalar = i
-if (.not. associated(bar%vec(1)%scalar)) call abort()
-if (bar[neighbor]%vec(1)%scalar /= 15) call abort()
+if (.not. associated(bar%vec(1)%scalar)) STOP 19
+if (bar[neighbor]%vec(1)%scalar /= 15) STOP 20
bar%vec(0)%scalar = 27
-if (.not. associated(bar%vec(0)%scalar)) call abort()
-if (bar[neighbor]%vec(0)%scalar /= 27) call abort()
+if (.not. associated(bar%vec(0)%scalar)) STOP 21
+if (bar[neighbor]%vec(0)%scalar /= 27) STOP 22
allocate(bar%vec(1)%indices(3), bar%vec(2)%indices(5))
bar%vec(1)%indices = [ 3, 4, 15 ]
bar%vec(2)%indices = 89
-if (.not. associated(bar%vec(1)%indices)) call abort()
-if (associated(bar%vec(-2)%indices)) call abort()
-if (associated(bar%vec(-1)%indices)) call abort()
-if (associated(bar%vec( 0)%indices)) call abort()
-if (.not. associated(bar%vec( 2)%indices)) call abort()
-if (any(bar[me]%vec(2)%indices /= 89)) call abort()
+if (.not. associated(bar%vec(1)%indices)) STOP 23
+if (associated(bar%vec(-2)%indices)) STOP 24
+if (associated(bar%vec(-1)%indices)) STOP 25
+if (associated(bar%vec( 0)%indices)) STOP 26
+if (.not. associated(bar%vec( 2)%indices)) STOP 27
+if (any(bar[me]%vec(2)%indices /= 89)) STOP 28
-if (any (bar[neighbor]%vec(1)%indices /= [ 3,4,15])) call abort()
+if (any (bar[neighbor]%vec(1)%indices /= [ 3,4,15])) STOP 29
deallocate(bar%vec(2)%indices, bar%vec(1)%indices, bar%vec(1)%scalar, bar%vec(0)%scalar)
deallocate(object%indices, object%scalar, object%matrix)
diff --git a/gcc/testsuite/gfortran.dg/coarray_ptr_comp_2.f08 b/gcc/testsuite/gfortran.dg/coarray_ptr_comp_2.f08
index d930a82f8a3..7fb96a70e49 100644
--- a/gcc/testsuite/gfortran.dg/coarray_ptr_comp_2.f08
+++ b/gcc/testsuite/gfortran.dg/coarray_ptr_comp_2.f08
@@ -45,44 +45,44 @@ object[neighbor]%volume = vol_static
object[neighbor]%matrix = reshape([(i, i=1, 70)], [10, 7])
object[neighbor]%dynvol = vol_static
sync all
-if (object%scalar /= 42) call abort()
-if (any( object%indices /= [1,2,3,4,5] )) call abort()
-if (any( object%matrix /= reshape([(i, i=1, 70)], [10, 7]))) call abort()
-if (any( object%volume /= vol_static)) call abort()
-if (any( object%dynvol /= vol_static)) call abort()
+if (object%scalar /= 42) STOP 1
+if (any( object%indices /= [1,2,3,4,5] )) STOP 2
+if (any( object%matrix /= reshape([(i, i=1, 70)], [10, 7]))) STOP 3
+if (any( object%volume /= vol_static)) STOP 4
+if (any( object%dynvol /= vol_static)) STOP 5
vol2 = vol_static
vol2(:, ::2, :) = 42
object[neighbor]%volume(:, ::2, :) = 42
object[neighbor]%dynvol(:, ::2, :) = 42
-if (any( object%volume /= vol2)) call abort()
-if (any( object%dynvol /= vol2)) call abort()
+if (any( object%volume /= vol2)) STOP 6
+if (any( object%dynvol /= vol2)) STOP 7
allocate(bar%vec(-2:2))
bar[neighbor]%vec(1)%volume = vol_static
-if (any(bar%vec(1)%volume /= vol_static)) call abort()
+if (any(bar%vec(1)%volume /= vol_static)) STOP 8
allocate(bar%vec(1)%scalar, bar%vec(0)%scalar, bar%vec(1)%indices(3))
i = 15
bar[neighbor]%vec(1)%scalar = i
-if (.not. associated(bar%vec(1)%scalar)) call abort()
-if (bar%vec(1)%scalar /= 15) call abort()
+if (.not. associated(bar%vec(1)%scalar)) STOP 9
+if (bar%vec(1)%scalar /= 15) STOP 10
bar[neighbor]%vec(0)%scalar = 27
-if (.not. associated(bar%vec(0)%scalar)) call abort()
-if (bar%vec(0)%scalar /= 27) call abort()
+if (.not. associated(bar%vec(0)%scalar)) STOP 11
+if (bar%vec(0)%scalar /= 27) STOP 12
bar[neighbor]%vec(1)%indices = [ 3, 4, 15 ]
allocate(bar%vec(2)%indices(5))
bar[neighbor]%vec(2)%indices = 89
-if (.not. associated(bar%vec(1)%indices)) call abort()
-if (associated(bar%vec(-2)%indices)) call abort()
-if (associated(bar%vec(-1)%indices)) call abort()
-if (associated(bar%vec( 0)%indices)) call abort()
-if (.not. associated(bar%vec( 2)%indices)) call abort()
-if (any(bar%vec(2)%indices /= 89)) call abort()
+if (.not. associated(bar%vec(1)%indices)) STOP 13
+if (associated(bar%vec(-2)%indices)) STOP 14
+if (associated(bar%vec(-1)%indices)) STOP 15
+if (associated(bar%vec( 0)%indices)) STOP 16
+if (.not. associated(bar%vec( 2)%indices)) STOP 17
+if (any(bar%vec(2)%indices /= 89)) STOP 18
-if (any (bar%vec(1)%indices /= [ 3,4,15])) call abort()
+if (any (bar%vec(1)%indices /= [ 3,4,15])) STOP 19
end program
diff --git a/gcc/testsuite/gfortran.dg/coarray_send_by_ref_1.f08 b/gcc/testsuite/gfortran.dg/coarray_send_by_ref_1.f08
index 75773f6465c..838121ee3a9 100644
--- a/gcc/testsuite/gfortran.dg/coarray_send_by_ref_1.f08
+++ b/gcc/testsuite/gfortran.dg/coarray_send_by_ref_1.f08
@@ -20,11 +20,11 @@ program check_caf_send_by_ref
obj[np]%scal = 42
! Check the token for the scalar is set.
- if (obj[np]%scal /= 42) call abort()
+ if (obj[np]%scal /= 42) STOP 1
! Now the same for arrays.
obj[np]%array = [(i * np + me, i = 1, 15)]
- if (any(obj[np]%array /= [(i * np + me, i = 1, 15)])) call abort()
+ if (any(obj[np]%array /= [(i * np + me, i = 1, 15)])) STOP 2
end program check_caf_send_by_ref
diff --git a/gcc/testsuite/gfortran.dg/coarray_stat_2.f90 b/gcc/testsuite/gfortran.dg/coarray_stat_2.f90
index 9eed860ea57..96e5abaa173 100644
--- a/gcc/testsuite/gfortran.dg/coarray_stat_2.f90
+++ b/gcc/testsuite/gfortran.dg/coarray_stat_2.f90
@@ -19,6 +19,6 @@ program whitespace
stat = 42
tmp = me[num_images(),stat = stat]
- if(stat /= 0) call abort()
+ if(stat /= 0) STOP 1
end program whitespace
diff --git a/gcc/testsuite/gfortran.dg/coarray_subobject_1.f90 b/gcc/testsuite/gfortran.dg/coarray_subobject_1.f90
index 52c65e149b5..1e58d3706d3 100644
--- a/gcc/testsuite/gfortran.dg/coarray_subobject_1.f90
+++ b/gcc/testsuite/gfortran.dg/coarray_subobject_1.f90
@@ -18,14 +18,14 @@ allocate(b%a)
allocate(b%c)
b%a%i = 7
b%c%i = 13
-if (b%a%i /= 7) call abort
-if (any (lcobound(b%a) /= (/ 5 /))) call abort ! { dg-error "Expected coarray variable" }
-if (ucobound(b%a, dim=1) /= this_image() + 4) call abort ! { dg-error "Expected coarray variable" }
-if (any (lcobound(b%a%i) /= (/ 5 /))) call abort ! { dg-error "Expected coarray variable" }
-if (ucobound(b%a%i, dim=1) /= this_image() + 4) call abort ! { dg-error "Expected coarray variable" }
-if (b%c%i /= 13) call abort
-if (any (lcobound(b%c) /= (/ 5 /))) call abort ! { dg-error "Expected coarray variable" }
-if (ucobound(b%c, dim=1) /= this_image() + 4) call abort ! { dg-error "Expected coarray variable" }
-if (any (lcobound(b%c%i) /= (/ 5 /))) call abort ! { dg-error "Expected coarray variable" }
-if (ucobound(b%c%i, dim=1) /= this_image() + 4) call abort ! { dg-error "Expected coarray variable" }
+if (b%a%i /= 7) STOP 1
+if (any (lcobound(b%a) /= (/ 5 /))) STOP 2! { dg-error "Expected coarray variable" }
+if (ucobound(b%a, dim=1) /= this_image() + 4) STOP 3! { dg-error "Expected coarray variable" }
+if (any (lcobound(b%a%i) /= (/ 5 /))) STOP 4! { dg-error "Expected coarray variable" }
+if (ucobound(b%a%i, dim=1) /= this_image() + 4) STOP 5! { dg-error "Expected coarray variable" }
+if (b%c%i /= 13) STOP 6
+if (any (lcobound(b%c) /= (/ 5 /))) STOP 7! { dg-error "Expected coarray variable" }
+if (ucobound(b%c, dim=1) /= this_image() + 4) STOP 8! { dg-error "Expected coarray variable" }
+if (any (lcobound(b%c%i) /= (/ 5 /))) STOP 9! { dg-error "Expected coarray variable" }
+if (ucobound(b%c%i, dim=1) /= this_image() + 4) STOP 10! { dg-error "Expected coarray variable" }
end
diff --git a/gcc/testsuite/gfortran.dg/coindexed_1.f90 b/gcc/testsuite/gfortran.dg/coindexed_1.f90
index b3b41de10dc..ac62e26425f 100644
--- a/gcc/testsuite/gfortran.dg/coindexed_1.f90
+++ b/gcc/testsuite/gfortran.dg/coindexed_1.f90
@@ -31,14 +31,14 @@ program pmup
!WRITE(*,*) 'OK'
ELSE
WRITE(*,*) 'FAIL'
- call abort()
+ STOP 1
END IF
TYPE IS (t)
ii = a(1)[1]%a
- call abort()
+ STOP 2
CLASS IS (t)
ii = a(1)[1]%a
- call abort()
+ STOP 3
END SELECT
END IF
@@ -57,17 +57,17 @@ program pmup
SELECT TYPE (a)
TYPE IS (real)
ii = a(1)[1]
- call abort()
+ STOP 4
TYPE IS (t)
IF (ALL(A(:)[1]%a == 4.0)) THEN
!WRITE(*,*) 'OK'
ELSE
WRITE(*,*) 'FAIL'
- call abort()
+ STOP 5
END IF
CLASS IS (t)
ii = a(1)[1]%a
- call abort()
+ STOP 6
END SELECT
END IF
end program
diff --git a/gcc/testsuite/gfortran.dg/comma.f b/gcc/testsuite/gfortran.dg/comma.f
index 08c45179528..15a58fe0a8c 100644
--- a/gcc/testsuite/gfortran.dg/comma.f
+++ b/gcc/testsuite/gfortran.dg/comma.f
@@ -7,13 +7,13 @@
write(11,'(a)') ",,"
rewind(11)
read(11,*)stuff, stuff2
- if (stuff.ne.1.0) call abort()
- if (stuff2.ne.2.0) call abort()
+ if (stuff.ne.1.0) STOP 1
+ if (stuff2.ne.2.0) STOP 2
rewind (11)
write(11,'(a)') ","
rewind(11)
read(11,*)stuff
- if (stuff.ne.1.0) call abort()
+ if (stuff.ne.1.0) STOP 3
close(11, status='delete')
end
diff --git a/gcc/testsuite/gfortran.dg/comma_format_extension_3.f b/gcc/testsuite/gfortran.dg/comma_format_extension_3.f
index 776254e29df..0b002249b46 100644
--- a/gcc/testsuite/gfortran.dg/comma_format_extension_3.f
+++ b/gcc/testsuite/gfortran.dg/comma_format_extension_3.f
@@ -7,10 +7,10 @@
character*12 c
write (c,100) 0, 1
- if (c .ne. 'i = 0, j = 1') call abort
+ if (c .ne. 'i = 0, j = 1') STOP 1
write (c,100) 0
- if (c .ne. 'i = 0 ') call abort
+ if (c .ne. 'i = 0 ') STOP 2
100 format ('i = 'i1,:,', j = ',i1)
end
diff --git a/gcc/testsuite/gfortran.dg/comma_format_extension_4.f b/gcc/testsuite/gfortran.dg/comma_format_extension_4.f
index 3053d3fb145..30f07e803c5 100644
--- a/gcc/testsuite/gfortran.dg/comma_format_extension_4.f
+++ b/gcc/testsuite/gfortran.dg/comma_format_extension_4.f
@@ -4,7 +4,7 @@
! { dg-options "" }
character*6 c
write (c,1001) 1
- if (c .ne. ' 1 ') call abort
+ if (c .ne. ' 1 ') STOP 1
1001 format (' ',i4' ')
end
diff --git a/gcc/testsuite/gfortran.dg/common_2.f90 b/gcc/testsuite/gfortran.dg/common_2.f90
index 661e582059f..2c4bd475c93 100644
--- a/gcc/testsuite/gfortran.dg/common_2.f90
+++ b/gcc/testsuite/gfortran.dg/common_2.f90
@@ -11,5 +11,5 @@ program common_2
b = 2
c = 3
d = 4
- if (any (n .ne. (/1, 2, 3, 4/))) call abort
+ if (any (n .ne. (/1, 2, 3, 4/))) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.dg/common_4.f90 b/gcc/testsuite/gfortran.dg/common_4.f90
index cde2e27a8c3..f3dbf52ac56 100644
--- a/gcc/testsuite/gfortran.dg/common_4.f90
+++ b/gcc/testsuite/gfortran.dg/common_4.f90
@@ -15,5 +15,5 @@ subroutine foo
common /block/ a, b, c
integer(kind=1) a
integer b, c
- if (a .ne. 1 .or. b .ne. HUGE(b) .or. c .ne. 2) call abort
+ if (a .ne. 1 .or. b .ne. HUGE(b) .or. c .ne. 2) STOP 1
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/common_align_1.f90 b/gcc/testsuite/gfortran.dg/common_align_1.f90
index 4a6803e961b..782329fd439 100644
--- a/gcc/testsuite/gfortran.dg/common_align_1.f90
+++ b/gcc/testsuite/gfortran.dg/common_align_1.f90
@@ -10,7 +10,7 @@
subroutine one()
integer :: i
common i
- if (i/=5) call abort()
+ if (i/=5) STOP 1
end subroutine one
program test
diff --git a/gcc/testsuite/gfortran.dg/common_align_2.f90 b/gcc/testsuite/gfortran.dg/common_align_2.f90
index 66b10e6ea9d..6138d05a066 100644
--- a/gcc/testsuite/gfortran.dg/common_align_2.f90
+++ b/gcc/testsuite/gfortran.dg/common_align_2.f90
@@ -9,9 +9,9 @@ subroutine foo (z)
real(8) x, y, z
common i(8)
equivalence (x, i(3)),(y,i(7))
- if ((i(1) .ne. 42) .or. (i(5) .ne. 43)) call abort
- if ((i(2) .ne. 0) .or. (i(2) .ne. 0)) call abort
- if ((x .ne. z) .or. (y .ne. z)) call abort
+ if ((i(1) .ne. 42) .or. (i(5) .ne. 43)) STOP 1
+ if ((i(2) .ne. 0) .or. (i(2) .ne. 0)) STOP 2
+ if ((x .ne. z) .or. (y .ne. z)) STOP 3
end subroutine
subroutine bar
diff --git a/gcc/testsuite/gfortran.dg/common_equivalence_1.f b/gcc/testsuite/gfortran.dg/common_equivalence_1.f
index 2f15b93a4ae..bea51824f8c 100644
--- a/gcc/testsuite/gfortran.dg/common_equivalence_1.f
+++ b/gcc/testsuite/gfortran.dg/common_equivalence_1.f
@@ -15,7 +15,7 @@ c
integer a(2), b, c, d
COMMON /foo/ a
EQUIVALENCE (a(1),b), (c, a(2))
- if (b.ne.101) call abort ()
- if (c.ne.102) call abort ()
+ if (b.ne.101) STOP 1
+ if (c.ne.102) STOP 2
END
diff --git a/gcc/testsuite/gfortran.dg/common_pointer_1.f90 b/gcc/testsuite/gfortran.dg/common_pointer_1.f90
index e0f90ca72be..1aa51730355 100644
--- a/gcc/testsuite/gfortran.dg/common_pointer_1.f90
+++ b/gcc/testsuite/gfortran.dg/common_pointer_1.f90
@@ -7,7 +7,7 @@ subroutine test
real, pointer :: p(:), q
common /block/ p, q
- if (any (p .ne. (/1.0, 2.0/)) .or. (q .ne. 42.0)) call abort ()
+ if (any (p .ne. (/1.0, 2.0/)) .or. (q .ne. 42.0)) STOP 1
end subroutine
program common_pointer_1
diff --git a/gcc/testsuite/gfortran.dg/common_resize_1.f b/gcc/testsuite/gfortran.dg/common_resize_1.f
index ecf692d2d48..dd78fba6198 100644
--- a/gcc/testsuite/gfortran.dg/common_resize_1.f
+++ b/gcc/testsuite/gfortran.dg/common_resize_1.f
@@ -125,8 +125,8 @@ c
do 60 i=lft,llt
60 dett(i)=o64th/det(i)
- if (det(lft) .ne. 1d0) call abort ()
- if (det(llt) .ne. 1d0) call abort ()
+ if (det(lft) .ne. 1d0) STOP 1
+ if (det(llt) .ne. 1d0) STOP 2
return
c
diff --git a/gcc/testsuite/gfortran.dg/complex_intrinsic_1.f90 b/gcc/testsuite/gfortran.dg/complex_intrinsic_1.f90
index 3c299151e9e..62c14f2e6c5 100644
--- a/gcc/testsuite/gfortran.dg/complex_intrinsic_1.f90
+++ b/gcc/testsuite/gfortran.dg/complex_intrinsic_1.f90
@@ -1,5 +1,5 @@
! Testcase for the COMPLEX intrinsic
! { dg-do run }
- if (complex(1_1, -1_2) /= complex(1.0_4, -1.0_8)) call abort
- if (complex(1_4, -1.0) /= complex(1.0_4, -1_8)) call abort
+ if (complex(1_1, -1_2) /= complex(1.0_4, -1.0_8)) STOP 1
+ if (complex(1_4, -1.0) /= complex(1.0_4, -1_8)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/complex_intrinsic_3.f90 b/gcc/testsuite/gfortran.dg/complex_intrinsic_3.f90
index f0d12d6ef14..4ad6bcc599c 100644
--- a/gcc/testsuite/gfortran.dg/complex_intrinsic_3.f90
+++ b/gcc/testsuite/gfortran.dg/complex_intrinsic_3.f90
@@ -16,24 +16,24 @@ complex(8), volatile :: z80_0 = cmplx(0.0_8, 0.0_8, kind=8)
complex(8), volatile :: z81_1 = cmplx(1.0_8, 1.0_8, kind=8)
complex(8), volatile :: z8p_p = cmplx(pi8, pi8, kind=8)
-if (abs(tan(z0_0) - cmplx(0.0,0.0,4)) > eps) call abort()
-if (abs(tan(z1_1) - cmplx(0.27175257,1.0839232,4)) > eps) call abort()
-if (abs(tan(z80_0) - cmplx(0.0_8,0.0_8,8)) > eps8) call abort()
-if (abs(tan(z81_1) - cmplx(0.27175258531951174_8,1.0839233273386946_8,8)) > eps8) call abort()
+if (abs(tan(z0_0) - cmplx(0.0,0.0,4)) > eps) STOP 1
+if (abs(tan(z1_1) - cmplx(0.27175257,1.0839232,4)) > eps) STOP 2
+if (abs(tan(z80_0) - cmplx(0.0_8,0.0_8,8)) > eps8) STOP 3
+if (abs(tan(z81_1) - cmplx(0.27175258531951174_8,1.0839233273386946_8,8)) > eps8) STOP 4
-if (abs(cosh(z0_0) - cmplx(1.0,0.0,4)) > eps) call abort()
-if (abs(cosh(z1_1) - cmplx(0.83372992,0.98889768,4)) > eps) call abort()
-if (abs(cosh(z80_0) - cmplx(1.0_8,0.0_8,8)) > eps8) call abort()
-if (abs(cosh(z81_1) - cmplx(0.83373002513114913_8,0.98889770576286506_8,8)) > eps8) call abort()
+if (abs(cosh(z0_0) - cmplx(1.0,0.0,4)) > eps) STOP 5
+if (abs(cosh(z1_1) - cmplx(0.83372992,0.98889768,4)) > eps) STOP 6
+if (abs(cosh(z80_0) - cmplx(1.0_8,0.0_8,8)) > eps8) STOP 7
+if (abs(cosh(z81_1) - cmplx(0.83373002513114913_8,0.98889770576286506_8,8)) > eps8) STOP 8
-if (abs(sinh(z0_0) - cmplx(0.0,0.0,4)) > eps) call abort()
-if (abs(sinh(z1_1) - cmplx(0.63496387,1.2984575,4)) > eps) call abort()
-if (abs(sinh(z80_0) - cmplx(0.0_8,0.0_8,8)) > eps8) call abort()
-if (abs(sinh(z81_1) - cmplx(0.63496391478473613_8,1.2984575814159773_8,8)) > eps8) call abort()
+if (abs(sinh(z0_0) - cmplx(0.0,0.0,4)) > eps) STOP 9
+if (abs(sinh(z1_1) - cmplx(0.63496387,1.2984575,4)) > eps) STOP 10
+if (abs(sinh(z80_0) - cmplx(0.0_8,0.0_8,8)) > eps8) STOP 11
+if (abs(sinh(z81_1) - cmplx(0.63496391478473613_8,1.2984575814159773_8,8)) > eps8) STOP 12
-if (abs(tanh(z0_0) - cmplx(0.0,0.0,4)) > eps) call abort()
-if (abs(tanh(z1_1) - cmplx(1.0839232,0.27175257,4)) > eps) call abort()
-if (abs(tanh(z80_0) - cmplx(0.0_8,0.0_8,8)) > eps8) call abort()
-if (abs(tanh(z81_1) - cmplx(1.0839233273386946_8,0.27175258531951174_8,8)) > eps8) call abort()
+if (abs(tanh(z0_0) - cmplx(0.0,0.0,4)) > eps) STOP 13
+if (abs(tanh(z1_1) - cmplx(1.0839232,0.27175257,4)) > eps) STOP 14
+if (abs(tanh(z80_0) - cmplx(0.0_8,0.0_8,8)) > eps8) STOP 15
+if (abs(tanh(z81_1) - cmplx(1.0839233273386946_8,0.27175258531951174_8,8)) > eps8) STOP 16
end
diff --git a/gcc/testsuite/gfortran.dg/complex_intrinsic_5.f90 b/gcc/testsuite/gfortran.dg/complex_intrinsic_5.f90
index 1f76f0ad054..b068da46a13 100644
--- a/gcc/testsuite/gfortran.dg/complex_intrinsic_5.f90
+++ b/gcc/testsuite/gfortran.dg/complex_intrinsic_5.f90
@@ -23,7 +23,7 @@ contains
print '(a,g0," + I*",g0," eps=",g0)', 'Diff: ', &
real(z)-real(zref), &
aimag(z)-aimag(zref), eps4
- call abort()
+ STOP 1
end if
END SUBROUTINE check4
SUBROUTINE check8(z, zref)
@@ -34,7 +34,7 @@ contains
print '(a,g0," + I*",g0," eps=",g0)', 'Diff: ', &
real(z)-real(zref), &
aimag(z)-aimag(zref), eps8
- call abort()
+ STOP 2
end if
END SUBROUTINE check8
end module test
diff --git a/gcc/testsuite/gfortran.dg/complex_intrinsic_7.f90 b/gcc/testsuite/gfortran.dg/complex_intrinsic_7.f90
index 88e2db80551..3cc67bd8776 100644
--- a/gcc/testsuite/gfortran.dg/complex_intrinsic_7.f90
+++ b/gcc/testsuite/gfortran.dg/complex_intrinsic_7.f90
@@ -19,25 +19,25 @@ complex(8), parameter :: z80_0 = cmplx(0.0_8, 0.0_8, kind=8)
complex(8), parameter :: z81_1 = cmplx(1.0_8, 1.0_8, kind=8)
complex(8), parameter :: z8p_p = cmplx(pi8, pi8, kind=8)
-if (abs(tan(z0_0) - cmplx(0.0,0.0,4)) > eps) call abort()
-if (abs(tan(z1_1) - cmplx(0.27175257,1.0839232,4)) > eps) call abort()
-if (abs(tan(z80_0) - cmplx(0.0_8,0.0_8,8)) > eps8) call abort()
-if (abs(tan(z81_1) - cmplx(0.27175258531951174_8,1.0839233273386946_8,8)) > eps8) call abort()
+if (abs(tan(z0_0) - cmplx(0.0,0.0,4)) > eps) STOP 1
+if (abs(tan(z1_1) - cmplx(0.27175257,1.0839232,4)) > eps) STOP 2
+if (abs(tan(z80_0) - cmplx(0.0_8,0.0_8,8)) > eps8) STOP 3
+if (abs(tan(z81_1) - cmplx(0.27175258531951174_8,1.0839233273386946_8,8)) > eps8) STOP 4
-if (abs(cosh(z0_0) - cmplx(1.0,0.0,4)) > eps) call abort()
-if (abs(cosh(z1_1) - cmplx(0.83372992,0.98889768,4)) > eps) call abort()
-if (abs(cosh(z80_0) - cmplx(1.0_8,0.0_8,8)) > eps8) call abort()
-if (abs(cosh(z81_1) - cmplx(0.83373002513114913_8,0.98889770576286506_8,8)) > eps8) call abort()
+if (abs(cosh(z0_0) - cmplx(1.0,0.0,4)) > eps) STOP 5
+if (abs(cosh(z1_1) - cmplx(0.83372992,0.98889768,4)) > eps) STOP 6
+if (abs(cosh(z80_0) - cmplx(1.0_8,0.0_8,8)) > eps8) STOP 7
+if (abs(cosh(z81_1) - cmplx(0.83373002513114913_8,0.98889770576286506_8,8)) > eps8) STOP 8
-if (abs(sinh(z0_0) - cmplx(0.0,0.0,4)) > eps) call abort()
-if (abs(sinh(z1_1) - cmplx(0.63496387,1.2984575,4)) > eps) call abort()
-if (abs(sinh(z80_0) - cmplx(0.0_8,0.0_8,8)) > eps8) call abort()
-if (abs(sinh(z81_1) - cmplx(0.63496391478473613_8,1.2984575814159773_8,8)) > eps8) call abort()
+if (abs(sinh(z0_0) - cmplx(0.0,0.0,4)) > eps) STOP 9
+if (abs(sinh(z1_1) - cmplx(0.63496387,1.2984575,4)) > eps) STOP 10
+if (abs(sinh(z80_0) - cmplx(0.0_8,0.0_8,8)) > eps8) STOP 11
+if (abs(sinh(z81_1) - cmplx(0.63496391478473613_8,1.2984575814159773_8,8)) > eps8) STOP 12
-if (abs(tanh(z0_0) - cmplx(0.0,0.0,4)) > eps) call abort()
-if (abs(tanh(z1_1) - cmplx(1.0839232,0.27175257,4)) > eps) call abort()
-if (abs(tanh(z80_0) - cmplx(0.0_8,0.0_8,8)) > eps8) call abort()
-if (abs(tanh(z81_1) - cmplx(1.0839233273386946_8,0.27175258531951174_8,8)) > eps8) call abort()
+if (abs(tanh(z0_0) - cmplx(0.0,0.0,4)) > eps) STOP 13
+if (abs(tanh(z1_1) - cmplx(1.0839232,0.27175257,4)) > eps) STOP 14
+if (abs(tanh(z80_0) - cmplx(0.0_8,0.0_8,8)) > eps8) STOP 15
+if (abs(tanh(z81_1) - cmplx(1.0839233273386946_8,0.27175258531951174_8,8)) > eps8) STOP 16
end
! { dg-final { scan-tree-dump-times "abort" 0 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/complex_read.f90 b/gcc/testsuite/gfortran.dg/complex_read.f90
index 102a13522f9..c2c0759edd1 100644
--- a/gcc/testsuite/gfortran.dg/complex_read.f90
+++ b/gcc/testsuite/gfortran.dg/complex_read.f90
@@ -11,7 +11,7 @@ program complex_read
write (10, *) " ( 0.99 , 9.9 )"
rewind (10)
read (10,*) a
- if (a.ne.(0.99, 9.90)) call abort ()
+ if (a.ne.(0.99, 9.90)) STOP 1
! Test a new record after the.comma (the original bug).
@@ -20,7 +20,7 @@ program complex_read
write (10, *) " 999.0 )"
rewind (10)
read (10,*) a
- if (a.ne.(99.0, 999.0)) call abort ()
+ if (a.ne.(99.0, 999.0)) STOP 2
! Test a new record before the.comma
@@ -29,7 +29,7 @@ program complex_read
write (10, *) " , 9.9 )"
rewind (10)
read (10,*) a
- if (a.ne.(0.99, 9.90)) call abort ()
+ if (a.ne.(0.99, 9.90)) STOP 3
! Test a new records before and after the.comma
@@ -39,7 +39,7 @@ program complex_read
write (10, *) " 999.0 )"
rewind (10)
read (10,*) a
- if (a.ne.(99.0, 999.0)) call abort ()
+ if (a.ne.(99.0, 999.0)) STOP 4
! Test a new records and blank records before and after the.comma
@@ -51,7 +51,7 @@ program complex_read
write (10, *) " 9.9 )"
rewind (10)
read (10,*) a
- if (a.ne.(0.99, 9.9)) call abort ()
+ if (a.ne.(0.99, 9.9)) STOP 5
close (10)
end program complex_read
diff --git a/gcc/testsuite/gfortran.dg/complex_write.f90 b/gcc/testsuite/gfortran.dg/complex_write.f90
index 694c069e368..38f79788778 100644
--- a/gcc/testsuite/gfortran.dg/complex_write.f90
+++ b/gcc/testsuite/gfortran.dg/complex_write.f90
@@ -11,5 +11,5 @@
rewind(74)
! can read the complex in as two reals, one on each line
read(74,'(E13.5)')r1,r2
- if (r1.ne.1.0 .and. r2.ne.2.0) call abort
+ if (r1.ne.1.0 .and. r2.ne.2.0) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/constant_substring.f b/gcc/testsuite/gfortran.dg/constant_substring.f
index 4ca11bc160a..f8a9f64630e 100644
--- a/gcc/testsuite/gfortran.dg/constant_substring.f
+++ b/gcc/testsuite/gfortran.dg/constant_substring.f
@@ -8,6 +8,6 @@
parameter (a="12")
parameter (b = a(1:2))
write (c,'("#",A,"#")') b
- if (c .ne. '#12 #') call abort
+ if (c .ne. '#12 #') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/constructor_2.f90 b/gcc/testsuite/gfortran.dg/constructor_2.f90
index 294319aebce..31c72150774 100644
--- a/gcc/testsuite/gfortran.dg/constructor_2.f90
+++ b/gcc/testsuite/gfortran.dg/constructor_2.f90
@@ -18,9 +18,9 @@ contains
subroutine test_foo()
type(foo) :: f
f = foo()
- if (f%bar /= 1) call abort ()
+ if (f%bar /= 1) STOP 1
f = foo(2)
- if (f%bar /= 2) call abort ()
+ if (f%bar /= 2) STOP 2
end subroutine test_foo
end module foo_module
@@ -43,9 +43,9 @@ contains
subroutine test_bar()
type(bar) :: f
f = bar()
- if (f%bar /= 3) call abort ()
+ if (f%bar /= 3) STOP 3
f = bar(4)
- if (f%bar /= 4) call abort ()
+ if (f%bar /= 4) STOP 4
end subroutine test_bar
end module bar_module
@@ -59,14 +59,14 @@ program main
call test_foo()
f = foo()
- if (f%bar /= 1) call abort ()
+ if (f%bar /= 1) STOP 5
f = foo(2)
- if (f%bar /= 2) call abort ()
+ if (f%bar /= 2) STOP 6
call test_bar()
b = bar()
- if (b%bar /= 3) call abort ()
+ if (b%bar /= 3) STOP 7
b = bar(4)
- if (b%bar /= 4) call abort ()
+ if (b%bar /= 4) STOP 8
end program main
diff --git a/gcc/testsuite/gfortran.dg/constructor_3.f90 b/gcc/testsuite/gfortran.dg/constructor_3.f90
index badff3f6af5..a0d726adc18 100644
--- a/gcc/testsuite/gfortran.dg/constructor_3.f90
+++ b/gcc/testsuite/gfortran.dg/constructor_3.f90
@@ -38,8 +38,8 @@ type(cons) :: x
integer :: k
x = cons(3)
k = cons()
-if (x%j /= 9) call abort ()
-if (k /= 42) call abort ()
+if (x%j /= 9) STOP 1
+if (k /= 42) STOP 2
!print *, x%j
!print *, k
end
diff --git a/gcc/testsuite/gfortran.dg/constructor_6.f90 b/gcc/testsuite/gfortran.dg/constructor_6.f90
index 84b6f375c39..2522ea11afd 100644
--- a/gcc/testsuite/gfortran.dg/constructor_6.f90
+++ b/gcc/testsuite/gfortran.dg/constructor_6.f90
@@ -33,7 +33,7 @@ contains
type (rational_t) :: return_type
! print *, trim (message_)
- if (my_test_cnt /= 1) call abort()
+ if (my_test_cnt /= 1) STOP 1
my_test_cnt = my_test_cnt + 1
call return_type % Rational_t_init
@@ -44,11 +44,11 @@ contains
! print *, "n, id", this_% n, this_% id
if (my_test_cnt == 0) then
- if (this_% n /= 0 .or. this_% id /= 1) call abort ()
+ if (this_% n /= 0 .or. this_% id /= 1) STOP 2
else if (my_test_cnt == 2) then
- if (this_% n /= 10 .or. this_% id /= 0) call abort ()
+ if (this_% n /= 10 .or. this_% id /= 0) STOP 3
else
- call abort ()
+ STOP 4
end if
my_test_cnt = my_test_cnt + 1
end subroutine Print_rational_t
@@ -90,7 +90,7 @@ contains
type (temp_node_t) :: return_type
!print *, trim (message_)
- if (my_test_cnt /= 4) call abort()
+ if (my_test_cnt /= 4) STOP 5
my_test_cnt = my_test_cnt + 1
call return_type % Temp_node_t_init
@@ -101,11 +101,11 @@ contains
! print *, "temp, id", this_% temperature, this_% id
if (my_test_cnt == 3) then
- if (this_% temperature /= 20 .or. this_% id /= 1) call abort ()
+ if (this_% temperature /= 20 .or. this_% id /= 1) STOP 6
else if (my_test_cnt == 5) then
- if (this_% temperature /= 10 .or. this_% id /= 0) call abort ()
+ if (this_% temperature /= 10 .or. this_% id /= 0) STOP 7
else
- call abort ()
+ STOP 8
end if
my_test_cnt = my_test_cnt + 1
end subroutine Print_temp_node_t
@@ -135,19 +135,19 @@ program Struct_over
! print *, ""
!
! print *, "after declaration"
- if (my_test_cnt /= 0) call abort()
+ if (my_test_cnt /= 0) STOP 9
call sample_rational_t % print
- if (my_test_cnt /= 1) call abort()
+ if (my_test_cnt /= 1) STOP 10
sample_rational_t = sample_rational_t % rational_t ("using override")
- if (my_test_cnt /= 2) call abort()
+ if (my_test_cnt /= 2) STOP 11
! print *, "after override"
! call print (sample_rational_t)
! call sample_rational_t % print ()
call sample_rational_t % print
- if (my_test_cnt /= 3) call abort()
+ if (my_test_cnt /= 3) STOP 12
! print *, "sample_t"
! print *, "--------"
@@ -156,14 +156,14 @@ program Struct_over
! print *, "after declaration"
call sample_temp_node_t % print
- if (my_test_cnt /= 4) call abort()
+ if (my_test_cnt /= 4) STOP 13
sample_temp_node_t = temp_node_t ("using override")
- if (my_test_cnt /= 5) call abort()
+ if (my_test_cnt /= 5) STOP 14
! print *, "after override"
! call print (sample_rational_t)
! call sample_rational_t % print ()
call sample_temp_node_t % print
- if (my_test_cnt /= 6) call abort()
+ if (my_test_cnt /= 6) STOP 15
end program Struct_over
diff --git a/gcc/testsuite/gfortran.dg/contained_1.f90 b/gcc/testsuite/gfortran.dg/contained_1.f90
index 9b6e4395492..142bc3f6173 100644
--- a/gcc/testsuite/gfortran.dg/contained_1.f90
+++ b/gcc/testsuite/gfortran.dg/contained_1.f90
@@ -21,7 +21,7 @@ subroutine sub (proc, var)
external proc1
integer var
- if (var .ne. 42) call abort
+ if (var .ne. 42) STOP 1
call proc
end subroutine
@@ -29,5 +29,5 @@ program contained_1
use contained_1_mod
i = 0
call a
- if (i .ne. 1) call abort
+ if (i .ne. 1) STOP 2
end program
diff --git a/gcc/testsuite/gfortran.dg/contained_3.f90 b/gcc/testsuite/gfortran.dg/contained_3.f90
index d5543a149f0..157c95f5c16 100644
--- a/gcc/testsuite/gfortran.dg/contained_3.f90
+++ b/gcc/testsuite/gfortran.dg/contained_3.f90
@@ -10,14 +10,14 @@ MODULE ksbin1_aux_mod
SUBROUTINE nxtstg1()
INTEGER :: i
i = setbd() ! available by host association.
- if (setbd () .ne. 99 ) call abort ()
+ if (setbd () .ne. 99 ) STOP 1
END SUBROUTINE nxtstg1
SUBROUTINE nxtstg2()
INTEGER :: i
integer :: setbd ! makes it external.
i = setbd() ! this is the PR
- if (setbd () .ne. 42 ) call abort ()
+ if (setbd () .ne. 42 ) STOP 2
END SUBROUTINE nxtstg2
FUNCTION binden()
@@ -34,12 +34,12 @@ PROGRAM test
integer setbd ! setbd is external, since not use assoc.
CALL nxtstg1()
CALL nxtstg2()
- if (setbd () .ne. 42 ) call abort ()
+ if (setbd () .ne. 42 ) STOP 3
call foo
contains
subroutine foo
USE ksbin1_aux_mod ! module setbd is available
- if (setbd () .ne. 99 ) call abort ()
+ if (setbd () .ne. 99 ) STOP 4
end subroutine
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/contained_equivalence_1.f90 b/gcc/testsuite/gfortran.dg/contained_equivalence_1.f90
index 7c6b0126cdb..1fe12e74b29 100644
--- a/gcc/testsuite/gfortran.dg/contained_equivalence_1.f90
+++ b/gcc/testsuite/gfortran.dg/contained_equivalence_1.f90
@@ -8,7 +8,7 @@ program contained_equiv
real a
a = 1.0
call foo ()
- if (a.ne.1.0) call abort ()
+ if (a.ne.1.0) STOP 1
contains
subroutine foo ()
real b
diff --git a/gcc/testsuite/gfortran.dg/contained_module_proc_1.f90 b/gcc/testsuite/gfortran.dg/contained_module_proc_1.f90
index a6c2462f64a..dde58ed3c27 100644
--- a/gcc/testsuite/gfortran.dg/contained_module_proc_1.f90
+++ b/gcc/testsuite/gfortran.dg/contained_module_proc_1.f90
@@ -34,5 +34,5 @@ end module chk_gfortran
program fire
use chk_gfortran
implicit none
- if(.not. is_gfortran()) call abort()
+ if(.not. is_gfortran()) STOP 1
end program fire
diff --git a/gcc/testsuite/gfortran.dg/continuation_1.f90 b/gcc/testsuite/gfortran.dg/continuation_1.f90
index 1036db9cb1e..10b277dfae1 100644
--- a/gcc/testsuite/gfortran.dg/continuation_1.f90
+++ b/gcc/testsuite/gfortran.dg/continuation_1.f90
@@ -11,5 +11,5 @@ program main
world!" ! { dg-warning "Missing '&' in continued character constant" }
if (c.ne.&
"Hello, world!")&
- call abort();end program main
+ STOP 1;end program main
diff --git a/gcc/testsuite/gfortran.dg/continuation_11.f90 b/gcc/testsuite/gfortran.dg/continuation_11.f90
index d8cd46b8a17..46716a681fc 100644
--- a/gcc/testsuite/gfortran.dg/continuation_11.f90
+++ b/gcc/testsuite/gfortran.dg/continuation_11.f90
@@ -11,5 +11,5 @@ write(str,'(a)') 'Print rather a lot of ampersands &&&&&
&&&&&'
if (len(trim(str)) /= 44 &
.or. str /= 'Print rather a lot of ampersands &&&&&&&&&&&') &
- call abort()
+ STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/continuation_12.f90 b/gcc/testsuite/gfortran.dg/continuation_12.f90
index 171d826cb6c..3d1f004631a 100644
--- a/gcc/testsuite/gfortran.dg/continuation_12.f90
+++ b/gcc/testsuite/gfortran.dg/continuation_12.f90
@@ -4,5 +4,5 @@ character(15) :: astring
1 FORMAT (''&
' abcdefg x')
write(astring, 1)
-if (astring.ne."' abcdefg x") call abort
+if (astring.ne."' abcdefg x") STOP 1
END
diff --git a/gcc/testsuite/gfortran.dg/continuation_13.f90 b/gcc/testsuite/gfortran.dg/continuation_13.f90
index 95ff1f9f9e9..9799b59e86e 100644
--- a/gcc/testsuite/gfortran.dg/continuation_13.f90
+++ b/gcc/testsuite/gfortran.dg/continuation_13.f90
@@ -23,22 +23,22 @@ character(25) :: astring
900 format('This is actually ok.' & !comment
' end' )
write(astring,100)
-if (astring.ne."This format is OK.") call abort
+if (astring.ne."This format is OK.") STOP 1
write(astring,200)
-if (astring.ne."This format now works.") call abort
+if (astring.ne."This format now works.") STOP 2
write(astring,300)
-if (astring.ne."This format now works.") call abort
+if (astring.ne."This format now works.") STOP 3
write(astring,400)
-if (astring.ne."This format is OK.") call abort
+if (astring.ne."This format is OK.") STOP 4
write(astring,500)
-if (astring.ne."This format is OK.") call abort
+if (astring.ne."This format is OK.") STOP 5
write(astring,600)
-if (astring.ne."This format now works.'") call abort
+if (astring.ne."This format now works.'") STOP 6
write(astring,700)
-if (astring.ne."This format now works.'") call abort
+if (astring.ne."This format now works.'") STOP 7
write(astring,800)
-if (astring.ne."This is actually ok.' end") call abort
+if (astring.ne."This is actually ok.' end") STOP 8
write(astring,900)
-if (astring.ne."This is actually ok. end") call abort
+if (astring.ne."This is actually ok. end") STOP 9
end
diff --git a/gcc/testsuite/gfortran.dg/continuation_14.f b/gcc/testsuite/gfortran.dg/continuation_14.f
index a001903f7af..0f0740a5ec9 100644
--- a/gcc/testsuite/gfortran.dg/continuation_14.f
+++ b/gcc/testsuite/gfortran.dg/continuation_14.f
@@ -16,15 +16,15 @@
600 format('This format is OK.''' !comment
& )
write(astring,100)
- if (astring.ne."This format is OK.") call abort
+ if (astring.ne."This format is OK.") STOP 1
write(astring,200)
- if (astring.ne."This format works now.") call abort
+ if (astring.ne."This format works now.") STOP 2
write(astring,300)
- if (astring.ne."This format is OK.") call abort
+ if (astring.ne."This format is OK.") STOP 3
write(astring,400)
- if (astring.ne."This format is OK.") call abort
+ if (astring.ne."This format is OK.") STOP 4
write(astring,500)
- if (astring.ne."This format is now OK.'") call abort
+ if (astring.ne."This format is now OK.'") STOP 5
write(astring,600)
- if (astring.ne."This format is OK.'") call abort
+ if (astring.ne."This format is OK.'") STOP 6
end
diff --git a/gcc/testsuite/gfortran.dg/continuation_8.f90 b/gcc/testsuite/gfortran.dg/continuation_8.f90
index 251af99ef03..b4658270266 100644
--- a/gcc/testsuite/gfortran.dg/continuation_8.f90
+++ b/gcc/testsuite/gfortran.dg/continuation_8.f90
@@ -5,5 +5,5 @@ character (len=50) :: str
str = "hello world &
& &
&!"
-if (str.ne."hello world !") call abort
+if (str.ne."hello world !") STOP 1
end program print_ascertain
diff --git a/gcc/testsuite/gfortran.dg/convert_2.f90 b/gcc/testsuite/gfortran.dg/convert_2.f90
index 9f90606885a..b8b73affe6a 100644
--- a/gcc/testsuite/gfortran.dg/convert_2.f90
+++ b/gcc/testsuite/gfortran.dg/convert_2.f90
@@ -11,10 +11,10 @@ program main
close (20)
open(20,file="convert.dat",form="unformatted",access="stream")
read(20) i,c,j
- if (i .ne. two_swap .or. j .ne. two_swap .or. c .ne. "ab") call abort
+ if (i .ne. two_swap .or. j .ne. two_swap .or. c .ne. "ab") STOP 1
close (20)
open(20,file="convert.dat",form="unformatted",convert="swap") ! { dg-warning "CONVERT" }
read (20) d
close (20,status="delete")
- if (d .ne. "ab") call abort
+ if (d .ne. "ab") STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/convert_implied_open.f90 b/gcc/testsuite/gfortran.dg/convert_implied_open.f90
index 9c25b5d961c..e538ddeaf71 100644
--- a/gcc/testsuite/gfortran.dg/convert_implied_open.f90
+++ b/gcc/testsuite/gfortran.dg/convert_implied_open.f90
@@ -10,6 +10,6 @@ program main
read (10,rec=1) i1
read (10,rec=2) i2
read (10,rec=3) i3
- if (i1 /= 4 .or. i2 /= 1 .or. i3 /= 4) call abort
+ if (i1 /= 4 .or. i2 /= 1 .or. i3 /= 4) STOP 1
close (10,status="delete")
end program main
diff --git a/gcc/testsuite/gfortran.dg/count_init_expr.f03 b/gcc/testsuite/gfortran.dg/count_init_expr.f03
index ad7b74b96a9..148833afcfe 100644
--- a/gcc/testsuite/gfortran.dg/count_init_expr.f03
+++ b/gcc/testsuite/gfortran.dg/count_init_expr.f03
@@ -6,10 +6,10 @@
INTEGER, PARAMETER :: odd(4) = COUNT (MOD(m, 2) == 1, dim=1)
INTEGER, PARAMETER :: even = COUNT (MOD(m, 2) == 0)
- IF (sevens /= 1) CALL abort()
- IF (ANY(odd /= [ 2,2,2,2 ])) CALL abort()
- IF (even /= 8) CALL abort()
+ IF (sevens /= 1) STOP 1
+ IF (ANY(odd /= [ 2,2,2,2 ])) STOP 2
+ IF (even /= 8) STOP 3
! check the kind parameter
- IF (KIND(COUNT (m == 7, KIND=2)) /= 2) CALL abort()
+ IF (KIND(COUNT (m == 7, KIND=2)) /= 2) STOP 4
END
diff --git a/gcc/testsuite/gfortran.dg/cr_lf.f90 b/gcc/testsuite/gfortran.dg/cr_lf.f90
index eb5500e01d3..59eced51639 100644
--- a/gcc/testsuite/gfortran.dg/cr_lf.f90
+++ b/gcc/testsuite/gfortran.dg/cr_lf.f90
@@ -18,27 +18,27 @@ program main
read( unit=10, fmt='(64A)', advance='NO', iostat=iostat, &
size=n_chars_read ) buffer
- if (n_chars_read.ne.1) call abort
- if (any(buffer(1:n_chars_read).ne."a")) call abort
- if (.not.is_iostat_eor(iostat)) call abort
+ if (n_chars_read.ne.1) STOP 1
+ if (any(buffer(1:n_chars_read).ne."a")) STOP 2
+ if (.not.is_iostat_eor(iostat)) STOP 3
read( unit=10, fmt='(64A)', advance='NO', iostat=iostat, &
size=n_chars_read ) buffer
- if (n_chars_read.ne.1) call abort
- if (any(buffer(1:n_chars_read).ne."b")) call abort
- if (.not.is_iostat_eor(iostat)) call abort
+ if (n_chars_read.ne.1) STOP 4
+ if (any(buffer(1:n_chars_read).ne."b")) STOP 5
+ if (.not.is_iostat_eor(iostat)) STOP 6
read( unit=10, fmt='(64A)', advance='NO', iostat=iostat, &
size=n_chars_read ) buffer
- if (n_chars_read.ne.1) call abort
- if (any(buffer(1:n_chars_read).ne."c")) call abort
- if (.not.is_iostat_eor(iostat)) call abort
+ if (n_chars_read.ne.1) STOP 7
+ if (any(buffer(1:n_chars_read).ne."c")) STOP 8
+ if (.not.is_iostat_eor(iostat)) STOP 9
read( unit=10, fmt='(64A)', advance='NO', iostat=iostat, &
size=n_chars_read ) buffer
- if (n_chars_read.ne.0) call abort
- if (any(buffer(1:n_chars_read).ne."a")) call abort
- if (.not.is_iostat_end(iostat)) call abort
+ if (n_chars_read.ne.0) STOP 10
+ if (any(buffer(1:n_chars_read).ne."a")) STOP 11
+ if (.not.is_iostat_end(iostat)) STOP 12
close(10, status="delete")
! Set up the test file with normal file end.
@@ -56,9 +56,9 @@ program main
100 continue
close(10, status="delete")
- call abort
+ STOP 13
101 continue
close(10, status="delete")
- if (u(1:len_trim(u)).ne."no end of line marker") call abort
+ if (u(1:len_trim(u)).ne."no end of line marker") STOP 14
end program main
diff --git a/gcc/testsuite/gfortran.dg/cray_pointers_10.f90 b/gcc/testsuite/gfortran.dg/cray_pointers_10.f90
index 1ac98f3ea46..f673dbd4848 100644
--- a/gcc/testsuite/gfortran.dg/cray_pointers_10.f90
+++ b/gcc/testsuite/gfortran.dg/cray_pointers_10.f90
@@ -14,5 +14,5 @@ program test
real :: z
c_a = loc(z)
a = 42
- if (z /= 42) call abort
+ if (z /= 42) STOP 1
end program test
diff --git a/gcc/testsuite/gfortran.dg/cray_pointers_2.f90 b/gcc/testsuite/gfortran.dg/cray_pointers_2.f90
index 82ce2915982..4351874825e 100644
--- a/gcc/testsuite/gfortran.dg/cray_pointers_2.f90
+++ b/gcc/testsuite/gfortran.dg/cray_pointers_2.f90
@@ -36,12 +36,12 @@ program craytest
do i=13,400
if (errors(i)) then
! print *,"Test",i,"failed."
- call abort()
+ STOP 1
endif
end do
if (foo.eq.0) then
! print *,"Test did not run correctly."
- call abort()
+ STOP 2
endif
end program craytest
@@ -3608,7 +3608,7 @@ subroutine donothing(ii,jj)
ii = -1
jj = 1
! print *,"Test did not run correctly"
- call abort()
+ STOP 3
endif
end subroutine donothing
diff --git a/gcc/testsuite/gfortran.dg/cray_pointers_5.f90 b/gcc/testsuite/gfortran.dg/cray_pointers_5.f90
index 76bb9791b8a..0821b3cb358 100644
--- a/gcc/testsuite/gfortran.dg/cray_pointers_5.f90
+++ b/gcc/testsuite/gfortran.dg/cray_pointers_5.f90
@@ -11,5 +11,5 @@ end module cray_pointers_5
forall (i = 1:100) arr(i) = i
ipt = loc (arr)
- if (any (var .ne. (/1, 2, 3, 4, 5, 6, 7, 8, 9, 10/))) call abort
+ if (any (var .ne. (/1, 2, 3, 4, 5, 6, 7, 8, 9, 10/))) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/cray_pointers_7.f90 b/gcc/testsuite/gfortran.dg/cray_pointers_7.f90
index 1fe52c0af59..49c0e03e8f7 100644
--- a/gcc/testsuite/gfortran.dg/cray_pointers_7.f90
+++ b/gcc/testsuite/gfortran.dg/cray_pointers_7.f90
@@ -21,12 +21,12 @@ program cray_pointers_7
! Check pointers to subroutines.
subptr = loc(sub)
call subpte(tmp)
- if (tmp .ne. 17) call abort()
+ if (tmp .ne. 17) STOP 1
! Check pointers to functions.
fnptr = loc(fn)
tmp = fnpte(7)
- if (tmp .ne. 14) call abort()
+ if (tmp .ne. 14) STOP 2
end program cray_pointers_7
diff --git a/gcc/testsuite/gfortran.dg/cray_pointers_8.f90 b/gcc/testsuite/gfortran.dg/cray_pointers_8.f90
index 592e4d283f1..de4387b8018 100644
--- a/gcc/testsuite/gfortran.dg/cray_pointers_8.f90
+++ b/gcc/testsuite/gfortran.dg/cray_pointers_8.f90
@@ -59,5 +59,5 @@ program main
x = x + dx
end do
z = euler(0.0,1.0,0.0005,fcn)
- if (abs (y - z) .gt. 1e-6) call abort
+ if (abs (y - z) .gt. 1e-6) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/cshift_1.f90 b/gcc/testsuite/gfortran.dg/cshift_1.f90
index e2024ea99dd..a5e221b80dd 100644
--- a/gcc/testsuite/gfortran.dg/cshift_1.f90
+++ b/gcc/testsuite/gfortran.dg/cshift_1.f90
@@ -93,7 +93,7 @@ program testme
do i=-3,3,2
call cshift_sp_3_v1 (a, i, k, b)
c = cshift(a,i,k)
- if (any (c /= b)) call abort
+ if (any (c /= b)) STOP 1
end do
end do
deallocate (b,c)
@@ -102,7 +102,7 @@ program testme
do i=-3,3,2
call cshift_sp_3_v1 (a(1:n-1,1:n-1,1:n-1), i, k, b)
c = cshift(a(1:n-1,1:n-1,1:n-1), i, k)
- if (any (c /= b)) call abort
+ if (any (c /= b)) STOP 2
end do
end do
end program testme
diff --git a/gcc/testsuite/gfortran.dg/cshift_2.f90 b/gcc/testsuite/gfortran.dg/cshift_2.f90
index 66a6e2b7268..b13456925f7 100644
--- a/gcc/testsuite/gfortran.dg/cshift_2.f90
+++ b/gcc/testsuite/gfortran.dg/cshift_2.f90
@@ -117,36 +117,36 @@ program main
if (any(b /= c)) then
print *,b
print *,c
- call abort
+ STOP 1
end if
tb = cshift(ta,sh1,1)
- if (any(tb%i1 /= c)) call abort
+ if (any(tb%i1 /= c)) STOP 2
b = cshift(a,sh2,2)
call emul_cshift(a,sh2,2,c)
- if (any(b /= c)) call abort
+ if (any(b /= c)) STOP 3
tb = cshift(ta,sh2,2)
- if (any (tb%i2 /= c*2)) call abort
+ if (any (tb%i2 /= c*2)) STOP 4
b = cshift(a,sh3,3)
call emul_cshift(a,sh3,3,c)
- if (any(b /= c)) call abort
+ if (any(b /= c)) STOP 5
tb = cshift(ta,sh3,3)
- if (any(tb%i3 /= c*3)) call abort
+ if (any(tb%i3 /= c*3)) STOP 6
b = -42
c = -42
b(1:n1:2,:,:) = cshift(a(1:n1/2,:,:),sh1,1)
call emul_cshift(a(1:n1/2,:,:), sh1, 1, c(1:n1:2,:,:))
- if (any(b /= c)) call abort
+ if (any(b /= c)) STOP 7
tb%i1 = -42
tb%i2 = -2*42
tb%i3 = -3*42
tb(1:n1:2,:,:) = cshift(ta(1:n1/2,:,:),sh1,1)
- if (any(tb%i1 /= b)) call abort
- if (any(tb%i2 /= 2*b)) call abort
- if (any(tb%i3 /= 3*b)) call abort
+ if (any(tb%i1 /= b)) STOP 8
+ if (any(tb%i2 /= 2*b)) STOP 9
+ if (any(tb%i3 /= 3*b)) STOP 10
9000 format (99(3(I3,1X),2X))
end program main
diff --git a/gcc/testsuite/gfortran.dg/cshift_large_1.f90 b/gcc/testsuite/gfortran.dg/cshift_large_1.f90
index e9d064e2186..c964d6a0733 100644
--- a/gcc/testsuite/gfortran.dg/cshift_large_1.f90
+++ b/gcc/testsuite/gfortran.dg/cshift_large_1.f90
@@ -10,23 +10,23 @@ program intrinsic_cshift
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
a = cshift (a, 1_k, 1_k)
if (any (a .ne. reshape ((/2_k, 3_k, 1_k, 5_k, 6_k, 4_k, 8_k, 9_k, 7_k/), (/3_k, 3_k/)))) &
- call abort
+ STOP 1
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
a = cshift (a, -2_k, dim = 2_k)
if (any (a .ne. reshape ((/4_k, 5_k, 6_k, 7_k, 8_k, 9_k, 1_k, 2_k, 3_k/), (/3_k, 3_k/)))) &
- call abort
+ STOP 2
! Array shift
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
a = cshift (a, (/1_k, 0_k, -1_k/))
if (any (a .ne. reshape ((/2_k, 3_k, 1_k, 4_k, 5_k, 6_k, 9_k, 7_k, 8_k/), (/3_k, 3_k/)))) &
- call abort
+ STOP 3
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
a = cshift (a, (/2_k, -2_k, 0_k/), dim = 2_k)
if (any (a .ne. reshape ((/7_k, 5_k, 3_k, 1_k, 8_k, 6_k, 4_k, 2_k, 9_k/), (/3_k, 3_k/)))) &
- call abort
+ STOP 4
! Test arrays > rank 2
b = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k, 11_k, 12_k, 13_k, 14_k, 15_k, 16_k, 17_k,&
@@ -34,13 +34,13 @@ program intrinsic_cshift
b = cshift (b, 1_k)
if (any (b .ne. reshape ((/2_k, 3_k, 1_k, 5_k, 6_k, 4_k, 8_k, 9_k, 7_k, 12_k, 13_k, 11_k, 15_k,&
16_k, 14_k, 18_k, 19_k, 17_k/), (/3_k, 3_k, 2_k/)))) &
- call abort
+ STOP 5
b = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k, 11_k, 12_k, 13_k, 14_k, 15_k, 16_k, 17_k,&
18_k, 19_k/), (/3_k, 3_k, 2_k/))
b = cshift (b, reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/)), 3_k)
if (any (b .ne. reshape ((/11_k, 2_k, 13_k, 4_k, 15_k, 6_k, 17_k, 8_k, 19_k, 1_k, 12_k, 3_k,&
14_k, 5_k, 16_k, 7_k, 18_k, 9_k/), (/3_k, 3_k, 2_k/)))) &
- call abort
+ STOP 6
end program
diff --git a/gcc/testsuite/gfortran.dg/cshift_nan_1.f90 b/gcc/testsuite/gfortran.dg/cshift_nan_1.f90
index 896ecb3a4e1..96a136fda2c 100644
--- a/gcc/testsuite/gfortran.dg/cshift_nan_1.f90
+++ b/gcc/testsuite/gfortran.dg/cshift_nan_1.f90
@@ -19,6 +19,6 @@ program main
u%b = (/(i,i=-1,-4,-1)/)
v(1:3:2) = cshift(u(1:3:2),1)
v(2:4:2) = cshift(u(2:4:2),-1)
- if (any(v%a /= (/-5242880, -3145728, 2142240768, 2144337920 /))) call abort
- if (any(v%b /= (/-3, -4, -1, -2/))) call abort
+ if (any(v%a /= (/-5242880, -3145728, 2142240768, 2144337920 /))) STOP 1
+ if (any(v%b /= (/-3, -4, -1, -2/))) STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/csqrt_2.f b/gcc/testsuite/gfortran.dg/csqrt_2.f
index dc3d9a80d40..e1011a8bea9 100644
--- a/gcc/testsuite/gfortran.dg/csqrt_2.f
+++ b/gcc/testsuite/gfortran.dg/csqrt_2.f
@@ -5,15 +5,15 @@ c Fix PR libgfortran/24313
z = cmplx(0.707106, -0.707106)
x = cmplx(0.0,-1.0)
y = sqrt(x)
- if (abs(y - z) / abs(z) > 1.e-4) call abort
+ if (abs(y - z) / abs(z) > 1.e-4) STOP 1
x = cmplx(tiny(1.),-1.0)
y = sqrt(x)
- if (abs(y - z) / abs(z) > 1.e-4) call abort
+ if (abs(y - z) / abs(z) > 1.e-4) STOP 2
x = cmplx(-tiny(1.),-1.0)
y = sqrt(x)
- if (abs(y - z) / abs(z) > 1.e-4) call abort
+ if (abs(y - z) / abs(z) > 1.e-4) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/data_array_1.f90 b/gcc/testsuite/gfortran.dg/data_array_1.f90
index 46c9a5bb7f9..3d696cd540e 100644
--- a/gcc/testsuite/gfortran.dg/data_array_1.f90
+++ b/gcc/testsuite/gfortran.dg/data_array_1.f90
@@ -11,7 +11,7 @@ program chkdata
data a(3:5) / myint(1), myint(3), myint(1) /
data c / mychar(1), mychar(2), mychar(3), mychar(1), mychar(2) /
buffer = ""
- if (any(a.ne.[1,3,4,2,4])) call abort
+ if (any(a.ne.[1,3,4,2,4])) STOP 1
write(buffer,'(5(a))')c
- if (buffer.ne."abc def ghi abc def ") call abort
+ if (buffer.ne."abc def ghi abc def ") STOP 2
end program chkdata
diff --git a/gcc/testsuite/gfortran.dg/data_char_1.f90 b/gcc/testsuite/gfortran.dg/data_char_1.f90
index 96db4fd30eb..95ca51d891c 100644
--- a/gcc/testsuite/gfortran.dg/data_char_1.f90
+++ b/gcc/testsuite/gfortran.dg/data_char_1.f90
@@ -9,6 +9,6 @@ program data_char_1
data b(:)(1:4), b(1)(5:5), b(2)(5:5) &
/'abcdefg', 'hi', 'j', 'k'/ ! { dg-warning "truncated" }
- if ((a(1) .ne. 'Hello') .or. (a(2) .ne. 'orld ')) call abort
- if ((b(1) .ne. 'abcdj') .or. (b(2) .ne. 'hi k')) call abort
+ if ((a(1) .ne. 'Hello') .or. (a(2) .ne. 'orld ')) STOP 1
+ if ((b(1) .ne. 'abcdj') .or. (b(2) .ne. 'hi k')) STOP 2
end program
diff --git a/gcc/testsuite/gfortran.dg/data_char_2.f90 b/gcc/testsuite/gfortran.dg/data_char_2.f90
index 26e31a14f08..7d3f4852de5 100644
--- a/gcc/testsuite/gfortran.dg/data_char_2.f90
+++ b/gcc/testsuite/gfortran.dg/data_char_2.f90
@@ -9,6 +9,6 @@ CHARACTER C1
DATA INTSTR / '0123456789' /
C1 = INTSTR(1:1)
-if(C1 .ne. '0') call abort()
+if(C1 .ne. '0') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/data_char_3.f90 b/gcc/testsuite/gfortran.dg/data_char_3.f90
index 022ec5c12e7..2ff3520474c 100644
--- a/gcc/testsuite/gfortran.dg/data_char_3.f90
+++ b/gcc/testsuite/gfortran.dg/data_char_3.f90
@@ -7,5 +7,5 @@
!
character(LEN=2) :: a(2)
data ((a(I)(k:k),I=1,2),k=1,2) /2*'a',2*'z'/
- IF (ANY(a.NE."az")) CALL ABORT()
+ IF (ANY(a.NE."az")) STOP 1
END
diff --git a/gcc/testsuite/gfortran.dg/data_derived_1.f90 b/gcc/testsuite/gfortran.dg/data_derived_1.f90
index 3ec08e2f336..4318f5824f9 100644
--- a/gcc/testsuite/gfortran.dg/data_derived_1.f90
+++ b/gcc/testsuite/gfortran.dg/data_derived_1.f90
@@ -8,6 +8,6 @@ program main
DATA e1 / t(1) /
DATA e2 / t(1.0) /
- if (abs(e1%r - 1.0) > 1e-6) call abort
- if (abs(e2%r - 1.0) > 1e-6) call abort
+ if (abs(e1%r - 1.0) > 1e-6) STOP 1
+ if (abs(e2%r - 1.0) > 1e-6) STOP 2
END
diff --git a/gcc/testsuite/gfortran.dg/data_implied_do_1.f90 b/gcc/testsuite/gfortran.dg/data_implied_do_1.f90
index 1cc977c343a..6fadcce6949 100644
--- a/gcc/testsuite/gfortran.dg/data_implied_do_1.f90
+++ b/gcc/testsuite/gfortran.dg/data_implied_do_1.f90
@@ -10,6 +10,6 @@ PROGRAM p
DATA ((TWO_ARRAY (K, J), K = 1, J-1), J = 1, 3) /3 * 1.0/
DATA ((TWO_ARRAY (K, J), K = J, 3), J = 1, 3) /6 * 2.0/
if (any (reshape (two_array, (/9/)) &
- .ne. (/2.0,2.0,2.0,1.0,2.0,2.0,1.0,1.0,2.0/))) call abort ()
+ .ne. (/2.0,2.0,2.0,1.0,2.0,2.0,1.0,1.0,2.0/))) STOP 1
END PROGRAM
diff --git a/gcc/testsuite/gfortran.dg/data_namelist_conflict.f90 b/gcc/testsuite/gfortran.dg/data_namelist_conflict.f90
index 177553c716e..6d74090a213 100644
--- a/gcc/testsuite/gfortran.dg/data_namelist_conflict.f90
+++ b/gcc/testsuite/gfortran.dg/data_namelist_conflict.f90
@@ -20,6 +20,6 @@ program test
j = 42
rewind(10)
read(10,nl)
- if (i /= 0 .or. j /= 1) call abort
+ if (i /= 0 .or. j /= 1) STOP 1
close(10)
end program
diff --git a/gcc/testsuite/gfortran.dg/deallocate_alloc_opt_3.f90 b/gcc/testsuite/gfortran.dg/deallocate_alloc_opt_3.f90
index 67ec14a4a19..36f9a187a74 100644
--- a/gcc/testsuite/gfortran.dg/deallocate_alloc_opt_3.f90
+++ b/gcc/testsuite/gfortran.dg/deallocate_alloc_opt_3.f90
@@ -11,19 +11,19 @@ program a
e1 = 'No error'
allocate(i(4))
deallocate(i, stat=n, errmsg=e1)
- if (trim(e1) /= 'No error') call abort
+ if (trim(e1) /= 'No error') STOP 1
e2 = 'No error'
allocate(i(4))
deallocate(i, stat=n, errmsg=e2)
- if (trim(e2) /= 'No error') call abort
+ if (trim(e2) /= 'No error') STOP 2
e1 = 'No error'
deallocate(i, stat=n, errmsg=e1)
- if (trim(e1) /= 'Attempt to deallocate an unallocated object') call abort
+ if (trim(e1) /= 'Attempt to deallocate an unallocated object') STOP 3
e2 = 'No error'
deallocate(i, stat=n, errmsg=e2)
- if (trim(e2) /= 'Attempt to deallocate an unall') call abort
+ if (trim(e2) /= 'Attempt to deallocate an unall') STOP 4
end program a
diff --git a/gcc/testsuite/gfortran.dg/deallocate_stat.f90 b/gcc/testsuite/gfortran.dg/deallocate_stat.f90
index b2ba95c740a..4c09ec75e73 100644
--- a/gcc/testsuite/gfortran.dg/deallocate_stat.f90
+++ b/gcc/testsuite/gfortran.dg/deallocate_stat.f90
@@ -20,22 +20,22 @@ program deallocate_stat
a1 = 1. ; a2 = 2. ; a3 = 3. ; a4 = 4. ; a5 = 5. ; a6 = 6. ; a7 = 7.
i = 13
- deallocate(a1, stat=i) ; if (i /= 0) call abort
- deallocate(a2, stat=i) ; if (i /= 0) call abort
- deallocate(a3, stat=i) ; if (i /= 0) call abort
- deallocate(a4, stat=i) ; if (i /= 0) call abort
- deallocate(a5, stat=i) ; if (i /= 0) call abort
- deallocate(a6, stat=i) ; if (i /= 0) call abort
- deallocate(a7, stat=i) ; if (i /= 0) call abort
+ deallocate(a1, stat=i) ; if (i /= 0) STOP 1
+ deallocate(a2, stat=i) ; if (i /= 0) STOP 2
+ deallocate(a3, stat=i) ; if (i /= 0) STOP 3
+ deallocate(a4, stat=i) ; if (i /= 0) STOP 4
+ deallocate(a5, stat=i) ; if (i /= 0) STOP 5
+ deallocate(a6, stat=i) ; if (i /= 0) STOP 6
+ deallocate(a7, stat=i) ; if (i /= 0) STOP 7
i = 14
- deallocate(a1, stat=i) ; if (i /= 1) call abort
- deallocate(a2, stat=i) ; if (i /= 1) call abort
- deallocate(a3, stat=i) ; if (i /= 1) call abort
- deallocate(a4, stat=i) ; if (i /= 1) call abort
- deallocate(a5, stat=i) ; if (i /= 1) call abort
- deallocate(a6, stat=i) ; if (i /= 1) call abort
- deallocate(a7, stat=i) ; if (i /= 1) call abort
+ deallocate(a1, stat=i) ; if (i /= 1) STOP 8
+ deallocate(a2, stat=i) ; if (i /= 1) STOP 9
+ deallocate(a3, stat=i) ; if (i /= 1) STOP 10
+ deallocate(a4, stat=i) ; if (i /= 1) STOP 11
+ deallocate(a5, stat=i) ; if (i /= 1) STOP 12
+ deallocate(a6, stat=i) ; if (i /= 1) STOP 13
+ deallocate(a7, stat=i) ; if (i /= 1) STOP 14
allocate(b1(2), b2(2,2), b3(2,2,2), b4(2,2,2,2), b5(2,2,2,2,2))
allocate(b6(2,2,2,2,2,2), b7(2,2,2,2,2,2,2))
@@ -43,22 +43,22 @@ program deallocate_stat
b1 = 1. ; b2 = 2. ; b3 = 3. ; b4 = 4. ; b5 = 5. ; b6 = 6. ; b7 = 7.
i = 13
- deallocate(b1, stat=i) ; if (i /= 0) call abort
- deallocate(b2, stat=i) ; if (i /= 0) call abort
- deallocate(b3, stat=i) ; if (i /= 0) call abort
- deallocate(b4, stat=i) ; if (i /= 0) call abort
- deallocate(b5, stat=i) ; if (i /= 0) call abort
- deallocate(b6, stat=i) ; if (i /= 0) call abort
- deallocate(b7, stat=i) ; if (i /= 0) call abort
+ deallocate(b1, stat=i) ; if (i /= 0) STOP 15
+ deallocate(b2, stat=i) ; if (i /= 0) STOP 16
+ deallocate(b3, stat=i) ; if (i /= 0) STOP 17
+ deallocate(b4, stat=i) ; if (i /= 0) STOP 18
+ deallocate(b5, stat=i) ; if (i /= 0) STOP 19
+ deallocate(b6, stat=i) ; if (i /= 0) STOP 20
+ deallocate(b7, stat=i) ; if (i /= 0) STOP 21
i = 14
- deallocate(b1, stat=i) ; if (i /= 1) call abort
- deallocate(b2, stat=i) ; if (i /= 1) call abort
- deallocate(b3, stat=i) ; if (i /= 1) call abort
- deallocate(b4, stat=i) ; if (i /= 1) call abort
- deallocate(b5, stat=i) ; if (i /= 1) call abort
- deallocate(b6, stat=i) ; if (i /= 1) call abort
- deallocate(b7, stat=i) ; if (i /= 1) call abort
+ deallocate(b1, stat=i) ; if (i /= 1) STOP 22
+ deallocate(b2, stat=i) ; if (i /= 1) STOP 23
+ deallocate(b3, stat=i) ; if (i /= 1) STOP 24
+ deallocate(b4, stat=i) ; if (i /= 1) STOP 25
+ deallocate(b5, stat=i) ; if (i /= 1) STOP 26
+ deallocate(b6, stat=i) ; if (i /= 1) STOP 27
+ deallocate(b7, stat=i) ; if (i /= 1) STOP 28
allocate(a1(2), a2(2,2), a3(2,2,2), b4(2,2,2,2), b5(2,2,2,2,2))
@@ -67,11 +67,11 @@ program deallocate_stat
a1 = 1. ; a2 = 2. ; a3 = 3. ; b4 = 4. ; b5 = 5. ; b6 = 6.
i = 13
- deallocate(a1, stat=i) ; if (i /= 0) call abort
- deallocate(a2, a1, stat=i) ; if (i /= 1) call abort
- deallocate(a1, a3, a2, stat=i) ; if (i /= 1) call abort
- deallocate(b4, stat=i) ; if (i /= 0) call abort
- deallocate(b4, b5, stat=i) ; if (i /= 1) call abort
- deallocate(b4, b5, b6, stat=i) ; if (i /= 1) call abort
+ deallocate(a1, stat=i) ; if (i /= 0) STOP 29
+ deallocate(a2, a1, stat=i) ; if (i /= 1) STOP 30
+ deallocate(a1, a3, a2, stat=i) ; if (i /= 1) STOP 31
+ deallocate(b4, stat=i) ; if (i /= 0) STOP 32
+ deallocate(b4, b5, stat=i) ; if (i /= 1) STOP 33
+ deallocate(b4, b5, b6, stat=i) ; if (i /= 1) STOP 34
end program deallocate_stat
diff --git a/gcc/testsuite/gfortran.dg/deallocate_stat_2.f90 b/gcc/testsuite/gfortran.dg/deallocate_stat_2.f90
index e93f446a818..68320e1ccd8 100644
--- a/gcc/testsuite/gfortran.dg/deallocate_stat_2.f90
+++ b/gcc/testsuite/gfortran.dg/deallocate_stat_2.f90
@@ -10,21 +10,21 @@ character(len=200) :: str
str = repeat('X', len(str))
deallocate(a, stat=stat, errmsg=str)
!print *, stat, trim(str)
-if (stat == 0 .or. str /= "Attempt to deallocate an unallocated object") call abort()
+if (stat == 0 .or. str /= "Attempt to deallocate an unallocated object") STOP 1
str = repeat('Y', len(str))
deallocate(b, stat=stat, errmsg=str)
!print *, stat, trim(str)
-if (stat == 0 .or. str /= "Attempt to deallocate an unallocated object") call abort()
+if (stat == 0 .or. str /= "Attempt to deallocate an unallocated object") STOP 2
sstr = repeat('Q', len(sstr))
deallocate(a, stat=stat, errmsg=sstr)
!print *, stat, trim(sstr)
-if (stat == 0 .or. sstr /= "Attem") call abort()
+if (stat == 0 .or. sstr /= "Attem") STOP 3
sstr = repeat('P', len(sstr))
deallocate(b, stat=stat, errmsg=sstr)
!print *, stat, trim(sstr)
-if (stat == 0 .or. sstr /= "Attem") call abort()
+if (stat == 0 .or. sstr /= "Attem") STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/debug/pr37738.f b/gcc/testsuite/gfortran.dg/debug/pr37738.f
index fddc44c7ad4..336e981d5d2 100644
--- a/gcc/testsuite/gfortran.dg/debug/pr37738.f
+++ b/gcc/testsuite/gfortran.dg/debug/pr37738.f
@@ -19,8 +19,8 @@ C { dg-options "-dA -gno-strict-dwarf" }
subroutine c
integer*4 a_i, c_i
common /block/a_i, c_i
- if (a_i .ne. 2) call abort
- if (c_i .ne. 5) call abort
+ if (a_i .ne. 2) STOP 1
+ if (c_i .ne. 5) STOP 2
end subroutine c
program abc
call a
diff --git a/gcc/testsuite/gfortran.dg/dec_bitwise_ops_1.f90 b/gcc/testsuite/gfortran.dg/dec_bitwise_ops_1.f90
index 491577cc553..6ada8d7d993 100644
--- a/gcc/testsuite/gfortran.dg/dec_bitwise_ops_1.f90
+++ b/gcc/testsuite/gfortran.dg/dec_bitwise_ops_1.f90
@@ -11,7 +11,7 @@ subroutine assert(expected, actual, str)
integer, intent(in) :: expected, actual
if (actual .ne. expected) then
write (*, '(A,I4,I4)') str, expected, actual
- call abort()
+ STOP 1
endif
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/dec_bitwise_ops_2.f90 b/gcc/testsuite/gfortran.dg/dec_bitwise_ops_2.f90
index 5559a875b35..33ae8fa6be0 100644
--- a/gcc/testsuite/gfortran.dg/dec_bitwise_ops_2.f90
+++ b/gcc/testsuite/gfortran.dg/dec_bitwise_ops_2.f90
@@ -13,7 +13,7 @@ subroutine assert(expected, actual, str)
do i=1,9
if (expected .ne. actual(i)) then
write (*, '(A,I8,I8)') str, expected, actual(i)
- call abort()
+ STOP 1
endif
enddo
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/dec_exp_1.f90 b/gcc/testsuite/gfortran.dg/dec_exp_1.f90
index c8b395aa9ce..bad3702ab42 100644
--- a/gcc/testsuite/gfortran.dg/dec_exp_1.f90
+++ b/gcc/testsuite/gfortran.dg/dec_exp_1.f90
@@ -10,7 +10,7 @@ subroutine asserteq (rexp, ract, msg)
character(*), intent(in) :: msg
if (rexp .ne. ract) then
write (*, '(A,F12.6,F12.6)') msg, rexp, ract
- call abort()
+ STOP 1
endif
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/dec_init_1.f90 b/gcc/testsuite/gfortran.dg/dec_init_1.f90
index 5e1956aed73..48c4b99d8ac 100644
--- a/gcc/testsuite/gfortran.dg/dec_init_1.f90
+++ b/gcc/testsuite/gfortran.dg/dec_init_1.f90
@@ -15,10 +15,10 @@ subroutine dummy(i1,r1,c1,l1,i2,r2,c2,l2)
character, intent(inout) :: c2
logical, intent(inout) :: l2
print *, i1, i2, l1, l2, ichar(c1), ichar(c2), r1, r2
- if ( i1 .ne. 0 .or. i2 .ne. 0 ) call abort()
- if ( l1 .or. l2 ) call abort()
- if ( c1 .ne. achar(0) .or. c2 .ne. achar(0) ) call abort()
- if ( r1 .ne. 0.0 .or. r2 .ne. 0.0 ) call abort()
+ if ( i1 .ne. 0 .or. i2 .ne. 0 ) STOP 1
+ if ( l1 .or. l2 ) STOP 2
+ if ( c1 .ne. achar(0) .or. c2 .ne. achar(0) ) STOP 3
+ if ( r1 .ne. 0.0 .or. r2 .ne. 0.0 ) STOP 4
end subroutine
structure /s3/
diff --git a/gcc/testsuite/gfortran.dg/dec_init_2.f90 b/gcc/testsuite/gfortran.dg/dec_init_2.f90
index eae55492adf..2563c2ff653 100644
--- a/gcc/testsuite/gfortran.dg/dec_init_2.f90
+++ b/gcc/testsuite/gfortran.dg/dec_init_2.f90
@@ -16,10 +16,10 @@ subroutine dummy(i1,r1,c1,l1,i2,r2,c2,l2)
character, intent(inout) :: c2
logical, intent(inout) :: l2
print *, i1, i2, l1, l2, ichar(c1), ichar(c2), r1, r2
- if ( i1 .ne. 42 .or. i2 .ne. 42 ) call abort()
- if ( (.not. l1) .or. (.not. l2) ) call abort()
- if ( c1 .ne. achar(32) .or. c2 .ne. achar(32) ) call abort()
- if ( (.not. isnan(r1)) .or. (.not. isnan(r2)) ) call abort()
+ if ( i1 .ne. 42 .or. i2 .ne. 42 ) STOP 1
+ if ( (.not. l1) .or. (.not. l2) ) STOP 2
+ if ( c1 .ne. achar(32) .or. c2 .ne. achar(32) ) STOP 3
+ if ( (.not. isnan(r1)) .or. (.not. isnan(r2)) ) STOP 4
end subroutine
! Nb. the current implementation decides the -finit-* flags are meaningless
diff --git a/gcc/testsuite/gfortran.dg/dec_init_3.f90 b/gcc/testsuite/gfortran.dg/dec_init_3.f90
index 253cd9b2fa2..da964ab9376 100644
--- a/gcc/testsuite/gfortran.dg/dec_init_3.f90
+++ b/gcc/testsuite/gfortran.dg/dec_init_3.f90
@@ -15,10 +15,10 @@ subroutine dummy(i1,r1,c1,l1,i2,r2,c2,l2)
character, intent(inout) :: c2
logical, intent(inout) :: l2
print *, i1, i2, l1, l2, ichar(c1), ichar(c2), r1, r2
- if ( i1 .ne. 0 .or. i2 .ne. 0 ) call abort()
- if ( l1 .or. l2 ) call abort()
- if ( c1 .ne. achar(0) .or. c2 .ne. achar(0) ) call abort()
- if ( r1 .ne. 0.0 .or. r2 .ne. 0.0 ) call abort()
+ if ( i1 .ne. 0 .or. i2 .ne. 0 ) STOP 1
+ if ( l1 .or. l2 ) STOP 2
+ if ( c1 .ne. achar(0) .or. c2 .ne. achar(0) ) STOP 3
+ if ( r1 .ne. 0.0 .or. r2 .ne. 0.0 ) STOP 4
end subroutine
subroutine sub
@@ -50,7 +50,7 @@ subroutine sub
call dummy (x.m11, x.m12, x.m13, x.m14, x.m24, x.m23, x.m22, x.m21)
print *, x.r.i
if ( x.r.i .ne. 0 ) then
- call abort ()
+ STOP 5
endif
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/dec_init_4.f90 b/gcc/testsuite/gfortran.dg/dec_init_4.f90
index dc5995cbd12..867d9862e21 100644
--- a/gcc/testsuite/gfortran.dg/dec_init_4.f90
+++ b/gcc/testsuite/gfortran.dg/dec_init_4.f90
@@ -22,21 +22,21 @@ subroutine sub
! Initialized unions
if ( r2.i .ne. 8 ) then
print *, 'structure init'
- call abort()
+ STOP 1
endif
! Explicit initializations
if ( r2.x .ne. 1600 .or. r2.y .ne. 1800) then
r2.x = r2.y
print *, 'union explicit init'
- call abort()
+ STOP 2
endif
! Initialization from -finit-derived
if ( r2.h .ne. 0 ) then
r2.h = 135
print *, 'union default init'
- call abort()
+ STOP 3
endif
end subroutine
@@ -60,21 +60,21 @@ record /s3/ r3
! Initialized unions
if ( r3.i .ne. 8 ) then
print *, 'structure init'
- call abort()
+ STOP 4
endif
! Explicit initializations
if ( r3.x .ne. 1600 .or. r3.y .ne. 1800) then
r3.x = r3.y
print *, 'union explicit init'
- call abort()
+ STOP 5
endif
! Initialization from -finit-derived
if ( r3.e .ne. 0 ) then
r3.e = 135
print *, 'union default init'
- call abort()
+ STOP 6
endif
end
diff --git a/gcc/testsuite/gfortran.dg/dec_io_1.f90 b/gcc/testsuite/gfortran.dg/dec_io_1.f90
index c7f59d69a2b..2edc4277a93 100644
--- a/gcc/testsuite/gfortran.dg/dec_io_1.f90
+++ b/gcc/testsuite/gfortran.dg/dec_io_1.f90
@@ -12,7 +12,7 @@ subroutine check_cc (fd, cc)
inquire(unit=fd, carriagecontrol=cc_inq)
if (cc_inq .ne. cc) then
print *, '(', fd, ') cc expected ', cc, ' was ', cc_inq
- call abort()
+ STOP 1
endif
endsubroutine
@@ -24,7 +24,7 @@ subroutine check_share (fd, share)
inquire(unit=fd, share=share_inq)
if (share_inq .ne. share) then
print *, '(', fd, ') share expected ', share, ' was ', share_inq
- call abort()
+ STOP 2
endif
endsubroutine
@@ -36,7 +36,7 @@ subroutine check_action (fd, acc)
inquire(unit=fd, action=acc_inq)
if (acc_inq .ne. acc) then
print *, '(', fd, ') access expected ', acc, ' was ', acc_inq
- call abort()
+ STOP 3
endif
endsubroutine
diff --git a/gcc/testsuite/gfortran.dg/dec_io_2.f90 b/gcc/testsuite/gfortran.dg/dec_io_2.f90
index dc05f5170c9..83c7c2f2d8f 100644
--- a/gcc/testsuite/gfortran.dg/dec_io_2.f90
+++ b/gcc/testsuite/gfortran.dg/dec_io_2.f90
@@ -48,7 +48,7 @@ subroutine check_cc (cc, fname, expected)
print *, expected
deallocate(buf)
close(unit=fd)
- call abort()
+ STOP 1
else
deallocate(buf)
close(unit=fd, status='delete')
diff --git a/gcc/testsuite/gfortran.dg/dec_io_2a.f90 b/gcc/testsuite/gfortran.dg/dec_io_2a.f90
index f3e4739cf8d..666c5d771ea 100644
--- a/gcc/testsuite/gfortran.dg/dec_io_2a.f90
+++ b/gcc/testsuite/gfortran.dg/dec_io_2a.f90
@@ -48,7 +48,7 @@ subroutine check_cc (cc, fname, expected)
print *, expected
deallocate(buf)
close(unit=fd)
- call abort()
+ STOP 1
else
deallocate(buf)
close(unit=fd, status='delete')
diff --git a/gcc/testsuite/gfortran.dg/dec_io_6.f90 b/gcc/testsuite/gfortran.dg/dec_io_6.f90
index 2dfaf9d8901..12bcbed0581 100644
--- a/gcc/testsuite/gfortran.dg/dec_io_6.f90
+++ b/gcc/testsuite/gfortran.dg/dec_io_6.f90
@@ -20,7 +20,7 @@ close(unit=fd,status='delete') ! { dg-output "file protected by READONLY" }
inquire(file=f, EXIST=exists)
if (.not. exists) then
print *, 'file was not protected by READONLY!'
- call abort()
+ STOP 1
endif
open(unit=fd,file=f,action='write')
diff --git a/gcc/testsuite/gfortran.dg/dec_loc_rval_1.f90 b/gcc/testsuite/gfortran.dg/dec_loc_rval_1.f90
index 070b8db1c08..0d27f51cf8d 100644
--- a/gcc/testsuite/gfortran.dg/dec_loc_rval_1.f90
+++ b/gcc/testsuite/gfortran.dg/dec_loc_rval_1.f90
@@ -13,7 +13,7 @@ k = %loc(j)
if (i .ne. k) then
print *, "bad %loc value"
- call abort()
+ STOP 1
endif
end
diff --git a/gcc/testsuite/gfortran.dg/dec_logical_xor_1.f90 b/gcc/testsuite/gfortran.dg/dec_logical_xor_1.f90
index d10fa19892a..e443e337cc4 100644
--- a/gcc/testsuite/gfortran.dg/dec_logical_xor_1.f90
+++ b/gcc/testsuite/gfortran.dg/dec_logical_xor_1.f90
@@ -22,7 +22,7 @@ do i = 1,2
if ( neqv_out .neqv. lxor_out ) then
print *, "(",in1,in2,") .neqv.: ",neqv_out," .xor.: ",lxor_out
- call abort()
+ STOP 1
endif
! make sure we didn't break xor() intrinsic
@@ -31,7 +31,7 @@ do i = 1,2
if ( ixor_out .ne. ieor_out ) then
print *, "(",in1,in2,") ieor(): ",ieor_out," xor(): ",ixor_out
- call abort()
+ STOP 2
endif
enddo
diff --git a/gcc/testsuite/gfortran.dg/dec_math.f90 b/gcc/testsuite/gfortran.dg/dec_math.f90
index 857a261892b..2a50f976543 100644
--- a/gcc/testsuite/gfortran.dg/dec_math.f90
+++ b/gcc/testsuite/gfortran.dg/dec_math.f90
@@ -10,7 +10,7 @@
character(len=*), intent(in) :: str
if ( abs(f2 - f1) .gt. tolerance ) then
write (*, '(A,F12.6,F12.6)') str, f1, f2
- call abort()
+ STOP 1
endif
endsubroutine
@@ -20,7 +20,7 @@
character(len=*), intent(in) :: str
if ( dabs(d2 - d1) .gt. tolerance ) then
write (*, '(A,F12.6,F12.6)') str, d1, d2
- call abort()
+ STOP 2
endif
endsubroutine
diff --git a/gcc/testsuite/gfortran.dg/dec_parameter_1.f b/gcc/testsuite/gfortran.dg/dec_parameter_1.f
index 62e635f4ce8..b5d5c672f1d 100644
--- a/gcc/testsuite/gfortran.dg/dec_parameter_1.f
+++ b/gcc/testsuite/gfortran.dg/dec_parameter_1.f
@@ -57,7 +57,7 @@
if (x1 .ne. x2 .or. y1 .ne. y2
& .or. x1 .ne. y1 .or. x2 .ne. y2
& .or. y2 .ne. z2) then
- call abort()
+ STOP 1
endif
end
diff --git a/gcc/testsuite/gfortran.dg/dec_parameter_2.f90 b/gcc/testsuite/gfortran.dg/dec_parameter_2.f90
index d0c9f8b7eb0..4586ff514ff 100644
--- a/gcc/testsuite/gfortran.dg/dec_parameter_2.f90
+++ b/gcc/testsuite/gfortran.dg/dec_parameter_2.f90
@@ -56,7 +56,7 @@ write(*,'(4D18.5)') t, x2, y2, z2
if (x1 .ne. x2 .or. y1 .ne. y2 &
.or. x1 .ne. y1 .or. x2 .ne. y2 &
.or. y2 .ne. z2) then
- call abort()
+ STOP 1
endif
end
diff --git a/gcc/testsuite/gfortran.dg/dec_static_1.f90 b/gcc/testsuite/gfortran.dg/dec_static_1.f90
index 7f319ec0a5c..fc2b907e63a 100644
--- a/gcc/testsuite/gfortran.dg/dec_static_1.f90
+++ b/gcc/testsuite/gfortran.dg/dec_static_1.f90
@@ -9,7 +9,7 @@ subroutine assert(s, i1, i2)
character(*), intent(in) :: s
if (i1 .ne. i2) then
print *, s, ": expected ", i2, " but was ", i1
- call abort
+ STOP 1
endif
endsubroutine assert
diff --git a/gcc/testsuite/gfortran.dg/dec_static_2.f90 b/gcc/testsuite/gfortran.dg/dec_static_2.f90
index 392f3427c14..72e5e34fbde 100644
--- a/gcc/testsuite/gfortran.dg/dec_static_2.f90
+++ b/gcc/testsuite/gfortran.dg/dec_static_2.f90
@@ -9,7 +9,7 @@ subroutine assert(s, i1, i2)
character(*), intent(in) :: s
if (i1 .ne. i2) then
print *, s, ": expected ", i2, " but was ", i1
- call abort
+ STOP 1
endif
endsubroutine
diff --git a/gcc/testsuite/gfortran.dg/dec_structure_1.f90 b/gcc/testsuite/gfortran.dg/dec_structure_1.f90
index 4dfee3c602e..27c8f051b58 100644
--- a/gcc/testsuite/gfortran.dg/dec_structure_1.f90
+++ b/gcc/testsuite/gfortran.dg/dec_structure_1.f90
@@ -7,7 +7,7 @@
subroutine aborts (s)
character(*), intent(in) :: s
print *, s
- call abort()
+ STOP 1
end subroutine
! Basic structure
diff --git a/gcc/testsuite/gfortran.dg/dec_structure_10.f90 b/gcc/testsuite/gfortran.dg/dec_structure_10.f90
index 2d92b1ad8fd..befe07fea1c 100644
--- a/gcc/testsuite/gfortran.dg/dec_structure_10.f90
+++ b/gcc/testsuite/gfortran.dg/dec_structure_10.f90
@@ -97,23 +97,23 @@ j = (r) .ne. i ! <intrinsic> ne(r, i)
! Nested access: struct has a member eq which has a member i
j = struct .eq. i ! struct%eq%i
-if ( j .ne. struct%eq%i ) call abort()
+if ( j .ne. struct%eq%i ) STOP 1
! User op: struct is compared to i with eq_func
j = (struct) .eq. i ! eq_func(struct, i) -> struct%eq%i + i
-if ( j .ne. struct%eq%i + i ) call abort()
+if ( j .ne. struct%eq%i + i ) STOP 2
! User op: struct has a member test which has a member i, but test is a uop
j = struct .test. i ! tstfunc(struct, i) -> struct%i + i
-if ( j .ne. struct%i + i ) call abort()
+if ( j .ne. struct%i + i ) STOP 3
! User op: struct is compared to i with eq_func
j = (struct) .test. i ! tstfunc(struct, i) -> struct%i + i
-if ( j .ne. struct%i + i ) call abort()
+if ( j .ne. struct%i + i ) STOP 4
! Deep nested access tests
r7.r6.r5.r4.r3.r2.i = 1337
j = r7.r6.r5.r4.r3.r2.i
-if ( j .ne. 1337 ) call abort()
+if ( j .ne. 1337 ) STOP 5
end
diff --git a/gcc/testsuite/gfortran.dg/dec_structure_18.f90 b/gcc/testsuite/gfortran.dg/dec_structure_18.f90
index 1e6b229216b..9a479c28a90 100644
--- a/gcc/testsuite/gfortran.dg/dec_structure_18.f90
+++ b/gcc/testsuite/gfortran.dg/dec_structure_18.f90
@@ -23,16 +23,16 @@
x.j = '34'
if (y.buf(1) .ne. '1') then
- call abort
+ STOP 1
endif
if (y.buf(2) .ne. '2') then
- call abort
+ STOP 2
endif
if (y.buf(5) .ne. '3') then
- call abort
+ STOP 3
endif
if (y.buf(6) .ne. '4') then
- call abort
+ STOP 4
endif
end
diff --git a/gcc/testsuite/gfortran.dg/dec_structure_19.f90 b/gcc/testsuite/gfortran.dg/dec_structure_19.f90
index 9ea0b3efe13..1ec58b2f99c 100644
--- a/gcc/testsuite/gfortran.dg/dec_structure_19.f90
+++ b/gcc/testsuite/gfortran.dg/dec_structure_19.f90
@@ -23,16 +23,16 @@ x.i = "12"
x.j = "34"
if (y.buf(1) .ne. '1') then
- call abort
+ STOP 1
endif
if (y.buf(2) .ne. '2') then
- call abort
+ STOP 2
endif
if (y.buf(5) .ne. '3') then
- call abort
+ STOP 3
endif
if (y.buf(6) .ne. '4') then
- call abort
+ STOP 4
endif
end
diff --git a/gcc/testsuite/gfortran.dg/dec_structure_2.f90 b/gcc/testsuite/gfortran.dg/dec_structure_2.f90
index 18db719c149..1d37101c3f0 100644
--- a/gcc/testsuite/gfortran.dg/dec_structure_2.f90
+++ b/gcc/testsuite/gfortran.dg/dec_structure_2.f90
@@ -7,7 +7,7 @@
subroutine aborts (s)
character(*), intent(in) :: s
print *, s
- call abort()
+ STOP 1
end subroutine
! Basic structure
diff --git a/gcc/testsuite/gfortran.dg/dec_structure_22.f90 b/gcc/testsuite/gfortran.dg/dec_structure_22.f90
index ddbee02602a..b2767b3dc64 100644
--- a/gcc/testsuite/gfortran.dg/dec_structure_22.f90
+++ b/gcc/testsuite/gfortran.dg/dec_structure_22.f90
@@ -32,7 +32,7 @@
! r.c16_1 and r.c16_2 are in a union, thus share the same memory
! and the first 16 bytes of instr are overwritten
if ( r.c16_1 .ne. instr(17:32) .or. r.c16_2 .ne. instr(17:32) ) then
- call abort()
+ STOP 1
endif
end
diff --git a/gcc/testsuite/gfortran.dg/dec_structure_3.f90 b/gcc/testsuite/gfortran.dg/dec_structure_3.f90
index 9cb7adb6719..0a49ead77d0 100644
--- a/gcc/testsuite/gfortran.dg/dec_structure_3.f90
+++ b/gcc/testsuite/gfortran.dg/dec_structure_3.f90
@@ -7,7 +7,7 @@
subroutine aborts (s)
character(*), intent(in) :: s
print *, s
- call abort()
+ STOP 1
end subroutine
structure /s3/
diff --git a/gcc/testsuite/gfortran.dg/dec_structure_4.f90 b/gcc/testsuite/gfortran.dg/dec_structure_4.f90
index a941c220b7e..f4d8a72ef15 100644
--- a/gcc/testsuite/gfortran.dg/dec_structure_4.f90
+++ b/gcc/testsuite/gfortran.dg/dec_structure_4.f90
@@ -7,7 +7,7 @@
subroutine aborts (s)
character(*), intent(in) :: s
print *, s
- call abort()
+ STOP 1
end subroutine
structure /s5/
diff --git a/gcc/testsuite/gfortran.dg/dec_structure_5.f90 b/gcc/testsuite/gfortran.dg/dec_structure_5.f90
index abda3c3e9fb..897a53c93cd 100644
--- a/gcc/testsuite/gfortran.dg/dec_structure_5.f90
+++ b/gcc/testsuite/gfortran.dg/dec_structure_5.f90
@@ -7,7 +7,7 @@
subroutine aborts (s)
character(*), intent(in) :: s
print *, s
- call abort()
+ STOP 1
end subroutine
! Special regression where shared names within a module caused an ICE
diff --git a/gcc/testsuite/gfortran.dg/dec_structure_6.f90 b/gcc/testsuite/gfortran.dg/dec_structure_6.f90
index 6494d71fd1c..91a4df966db 100644
--- a/gcc/testsuite/gfortran.dg/dec_structure_6.f90
+++ b/gcc/testsuite/gfortran.dg/dec_structure_6.f90
@@ -7,7 +7,7 @@
subroutine aborts (s)
character(*), intent(in) :: s
print *, s
- call abort()
+ STOP 1
end subroutine
integer, parameter :: as = 3
diff --git a/gcc/testsuite/gfortran.dg/dec_structure_7.f90 b/gcc/testsuite/gfortran.dg/dec_structure_7.f90
index baba1ef2b5f..21c531cdf12 100644
--- a/gcc/testsuite/gfortran.dg/dec_structure_7.f90
+++ b/gcc/testsuite/gfortran.dg/dec_structure_7.f90
@@ -7,7 +7,7 @@
subroutine aborts (s)
character(*), intent(in) :: s
print *, s
- call abort()
+ STOP 1
end subroutine
module dec_structure_7m
diff --git a/gcc/testsuite/gfortran.dg/dec_union_1.f90 b/gcc/testsuite/gfortran.dg/dec_union_1.f90
index 36af53adfe1..074782ce175 100644
--- a/gcc/testsuite/gfortran.dg/dec_union_1.f90
+++ b/gcc/testsuite/gfortran.dg/dec_union_1.f90
@@ -9,7 +9,7 @@
subroutine aborts (s)
character(*), intent(in) :: s
print *, s
- call abort()
+ STOP 1
end subroutine
subroutine sub ()
diff --git a/gcc/testsuite/gfortran.dg/dec_union_2.f90 b/gcc/testsuite/gfortran.dg/dec_union_2.f90
index 61e4fd8bd80..99db431964d 100644
--- a/gcc/testsuite/gfortran.dg/dec_union_2.f90
+++ b/gcc/testsuite/gfortran.dg/dec_union_2.f90
@@ -7,7 +7,7 @@
subroutine aborts (s)
character(*), intent(in) :: s
print *, s
- call abort()
+ STOP 1
end subroutine
! Empty union
diff --git a/gcc/testsuite/gfortran.dg/dec_union_3.f90 b/gcc/testsuite/gfortran.dg/dec_union_3.f90
index ce5ae797859..9f1dfd31f74 100644
--- a/gcc/testsuite/gfortran.dg/dec_union_3.f90
+++ b/gcc/testsuite/gfortran.dg/dec_union_3.f90
@@ -7,7 +7,7 @@
subroutine aborts (s)
character(*), intent(in) :: s
print *, s
- call abort()
+ STOP 1
end subroutine
! Initialization expressions
diff --git a/gcc/testsuite/gfortran.dg/dec_union_4.f90 b/gcc/testsuite/gfortran.dg/dec_union_4.f90
index 4c1c6efe605..101095a2413 100644
--- a/gcc/testsuite/gfortran.dg/dec_union_4.f90
+++ b/gcc/testsuite/gfortran.dg/dec_union_4.f90
@@ -7,7 +7,7 @@
subroutine aborts (s)
character(*), intent(in) :: s
print *, s
- call abort()
+ STOP 1
end subroutine
! Nested unions
diff --git a/gcc/testsuite/gfortran.dg/dec_union_5.f90 b/gcc/testsuite/gfortran.dg/dec_union_5.f90
index bb1611a0289..f3cca5db96f 100644
--- a/gcc/testsuite/gfortran.dg/dec_union_5.f90
+++ b/gcc/testsuite/gfortran.dg/dec_union_5.f90
@@ -7,7 +7,7 @@
subroutine aborts (s)
character(*), intent(in) :: s
print *, s
- call abort()
+ STOP 1
end subroutine
! Unions with arrays
diff --git a/gcc/testsuite/gfortran.dg/default_format_1.f90 b/gcc/testsuite/gfortran.dg/default_format_1.f90
index 65307bb4719..9f88d3f45e6 100644
--- a/gcc/testsuite/gfortran.dg/default_format_1.f90
+++ b/gcc/testsuite/gfortran.dg/default_format_1.f90
@@ -11,16 +11,16 @@ include "default_format_1.inc"
program main
use test_default_format
- if (test (1.0_4, 0) /= 0) call abort
- if (test (tiny(0.0_4), 1) /= 0) call abort
- if (test (-tiny(0.0_4), -1) /= 0) call abort
- if (test (huge(0.0_4), -1) /= 0) call abort
- if (test (-huge(0.0_4), 1) /= 0) call abort
+ if (test (1.0_4, 0) /= 0) STOP 1
+ if (test (tiny(0.0_4), 1) /= 0) STOP 2
+ if (test (-tiny(0.0_4), -1) /= 0) STOP 3
+ if (test (huge(0.0_4), -1) /= 0) STOP 4
+ if (test (-huge(0.0_4), 1) /= 0) STOP 5
- if (test (1.0_8, 0) /= 0) call abort
- if (test (tiny(0.0_8), 1) /= 0) call abort
- if (test (-tiny(0.0_8), -1) /= 0) call abort
- if (test (huge(0.0_8), -1) /= 0) call abort
- if (test (-huge(0.0_8), 1) /= 0) call abort
+ if (test (1.0_8, 0) /= 0) STOP 6
+ if (test (tiny(0.0_8), 1) /= 0) STOP 7
+ if (test (-tiny(0.0_8), -1) /= 0) STOP 8
+ if (test (huge(0.0_8), -1) /= 0) STOP 9
+ if (test (-huge(0.0_8), 1) /= 0) STOP 10
end program main
!
diff --git a/gcc/testsuite/gfortran.dg/default_format_2.f90 b/gcc/testsuite/gfortran.dg/default_format_2.f90
index 9c5af7bec12..5ad7b3a6429 100644
--- a/gcc/testsuite/gfortran.dg/default_format_2.f90
+++ b/gcc/testsuite/gfortran.dg/default_format_2.f90
@@ -12,11 +12,11 @@ include "default_format_2.inc"
program main
use test_default_format
- if (test (1.0_kl, 0) /= 0) call abort
- if (test (0.0_kl, 0) /= 0) call abort
- if (test (tiny(0.0_kl), 1) /= 0) call abort
- if (test (-tiny(0.0_kl), -1) /= 0) call abort
- if (test (huge(0.0_kl), -1) /= 0) call abort
- if (test (-huge(0.0_kl), 1) /= 0) call abort
+ if (test (1.0_kl, 0) /= 0) STOP 1
+ if (test (0.0_kl, 0) /= 0) STOP 2
+ if (test (tiny(0.0_kl), 1) /= 0) STOP 3
+ if (test (-tiny(0.0_kl), -1) /= 0) STOP 4
+ if (test (huge(0.0_kl), -1) /= 0) STOP 5
+ if (test (-huge(0.0_kl), 1) /= 0) STOP 6
end program main
!
diff --git a/gcc/testsuite/gfortran.dg/default_format_denormal_1.f90 b/gcc/testsuite/gfortran.dg/default_format_denormal_1.f90
index d74daacdd3e..3b767573c58 100644
--- a/gcc/testsuite/gfortran.dg/default_format_denormal_1.f90
+++ b/gcc/testsuite/gfortran.dg/default_format_denormal_1.f90
@@ -13,13 +13,13 @@ include "default_format_1.inc"
program main
use test_default_format
- if (test (tiny(0.0_4), -1) /= 0) call abort
- if (test (-tiny(0.0_4), 1) /= 0) call abort
- if (test (0.0_4, 0) /= 0) call abort
+ if (test (tiny(0.0_4), -1) /= 0) STOP 1
+ if (test (-tiny(0.0_4), 1) /= 0) STOP 2
+ if (test (0.0_4, 0) /= 0) STOP 3
- if (test (tiny(0.0_8), -1) /= 0) call abort
- if (test (-tiny(0.0_8), 1) /= 0) call abort
- if (test (0.0_8, 0) /= 0) call abort
+ if (test (tiny(0.0_8), -1) /= 0) STOP 4
+ if (test (-tiny(0.0_8), 1) /= 0) STOP 5
+ if (test (0.0_8, 0) /= 0) STOP 6
end program main
!
diff --git a/gcc/testsuite/gfortran.dg/default_format_denormal_2.f90 b/gcc/testsuite/gfortran.dg/default_format_denormal_2.f90
index b0fdef33874..e9ccf5e8f61 100644
--- a/gcc/testsuite/gfortran.dg/default_format_denormal_2.f90
+++ b/gcc/testsuite/gfortran.dg/default_format_denormal_2.f90
@@ -14,7 +14,7 @@ include "default_format_2.inc"
program main
use test_default_format
- if (test (tiny(0.0_kl), -1) /= 0) call abort
- if (test (-tiny(0.0_kl), 1) /= 0) call abort
+ if (test (tiny(0.0_kl), -1) /= 0) STOP 1
+ if (test (-tiny(0.0_kl), 1) /= 0) STOP 2
end program main
!
diff --git a/gcc/testsuite/gfortran.dg/default_initialization_3.f90 b/gcc/testsuite/gfortran.dg/default_initialization_3.f90
index e0bd63d004d..219b4333c3a 100644
--- a/gcc/testsuite/gfortran.dg/default_initialization_3.f90
+++ b/gcc/testsuite/gfortran.dg/default_initialization_3.f90
@@ -20,8 +20,8 @@ subroutine original
integer val1 (6)
integer val2 (6)
call recfunc (1)
- if (any (val1 .ne. (/1, 2, 3, 1, 2, 3/))) call abort ()
- if (any (val2 .ne. (/1, 2, 3, 4, 4, 4/))) call abort ()
+ if (any (val1 .ne. (/1, 2, 3, 1, 2, 3/))) STOP 1
+ if (any (val2 .ne. (/1, 2, 3, 4, 4, 4/))) STOP 2
contains
recursive subroutine recfunc (ivalue)
@@ -65,9 +65,9 @@ subroutine other
end interface
type(myint) :: val1, val2
call func (1, val1, val2)
- if ((val1%bar .ne. 42) .or. (val2%bar .ne. 77)) call abort ()
+ if ((val1%bar .ne. 42) .or. (val2%bar .ne. 77)) STOP 3
call func (2, val1, val2)
- if ((val1%bar .ne. 42) .or. (val2%bar .ne. 999)) call abort ()
+ if ((val1%bar .ne. 42) .or. (val2%bar .ne. 999)) STOP 4
end subroutine other
@@ -95,9 +95,9 @@ subroutine dominique ()
USE M1
TYPE(T1) :: D1
D1=T1(3)
- if (F1(D1) .ne. 7) call abort ()
+ if (F1(D1) .ne. 7) STOP 5
D1=T1(3)
- if (E1(D1) .ne. 3) call abort ()
+ if (E1(D1) .ne. 3) STOP 6
END
! Run both tests.
diff --git a/gcc/testsuite/gfortran.dg/default_initialization_4.f90 b/gcc/testsuite/gfortran.dg/default_initialization_4.f90
index b65020f1877..80587b48eab 100644
--- a/gcc/testsuite/gfortran.dg/default_initialization_4.f90
+++ b/gcc/testsuite/gfortran.dg/default_initialization_4.f90
@@ -15,7 +15,7 @@ module good
end module good
use good
-if (t%x /= 42) call abort()
+if (t%x /= 42) STOP 1
t%x = 0
-if (t%x /= 0) call abort()
+if (t%x /= 0) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/default_initialization_5.f90 b/gcc/testsuite/gfortran.dg/default_initialization_5.f90
index 0effcccb1ed..a0ca2fe1e39 100644
--- a/gcc/testsuite/gfortran.dg/default_initialization_5.f90
+++ b/gcc/testsuite/gfortran.dg/default_initialization_5.f90
@@ -44,13 +44,13 @@ contains
type(data_all_t2) :: dum2
if (associated(dum%my_data%head)) then
- call abort()
+ STOP 1
else
print *, 'OK: do_job my_data%head is NOT associated'
end if
if (dum2%my_data%head%a /= 77) &
- call abort()
+ STOP 2
end subroutine
end module
!***************
diff --git a/gcc/testsuite/gfortran.dg/deferred_character_1.f90 b/gcc/testsuite/gfortran.dg/deferred_character_1.f90
index 0772c70537f..b2472112c0e 100644
--- a/gcc/testsuite/gfortran.dg/deferred_character_1.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_character_1.f90
@@ -23,7 +23,7 @@ contains
! print '(3a)', '>',str(1),'<'
! print '(3a)', '>',str(2),'<'
! print '(3a)', '>',str(3),'<'
- if (any (str .ne. const)) call abort
+ if (any (str .ne. const)) STOP 1
end subroutine test
subroutine doit()
str = const
@@ -35,6 +35,6 @@ contains
character(:), allocatable, dimension(:) :: array
array = (/'xx', 'yy', 'zz'/)
! print *, 'array=', array, len(array(1)), size(array)
- if (any (array .ne. ["xx", "yy", "zz"])) call abort
+ if (any (array .ne. ["xx", "yy", "zz"])) STOP 2
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/deferred_character_10.f90 b/gcc/testsuite/gfortran.dg/deferred_character_10.f90
index 6a3674150a1..bb237d1526c 100644
--- a/gcc/testsuite/gfortran.dg/deferred_character_10.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_character_10.f90
@@ -47,6 +47,6 @@ end module
str = "abcdefghij"//char(0)
cptr = c_loc (str)
- if (len (C2FChar (cptr)) .ne. 10) call abort
- if (C2FChar (cptr) .ne. "abcdefghij") call abort
+ if (len (C2FChar (cptr)) .ne. 10) STOP 1
+ if (C2FChar (cptr) .ne. "abcdefghij") STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/deferred_character_11.f90 b/gcc/testsuite/gfortran.dg/deferred_character_11.f90
index 454cf47e1b1..2b040abee2f 100644
--- a/gcc/testsuite/gfortran.dg/deferred_character_11.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_character_11.f90
@@ -31,8 +31,8 @@ program main
obj%string = 'foo'
p => toPointer(obj)
- If (len (p) .ne. 3) call abort
- If (p .ne. "foo") call abort
+ If (len (p) .ne. 3) STOP 1
+ If (p .ne. "foo") STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/deferred_character_12.f90 b/gcc/testsuite/gfortran.dg/deferred_character_12.f90
index cdb6c893756..51c50f2b59e 100644
--- a/gcc/testsuite/gfortran.dg/deferred_character_12.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_character_12.f90
@@ -31,7 +31,7 @@ program test
type(wrapper) :: mywrapper
call sub2(mywrapper%string)
- if (.not. allocated(mywrapper%string)) call abort
- if (trim(mywrapper%string) .ne. "test") call abort
+ if (.not. allocated(mywrapper%string)) STOP 1
+ if (trim(mywrapper%string) .ne. "test") STOP 2
end program test
diff --git a/gcc/testsuite/gfortran.dg/deferred_character_13.f90 b/gcc/testsuite/gfortran.dg/deferred_character_13.f90
index 822cc5de3a8..2e9871e7587 100644
--- a/gcc/testsuite/gfortran.dg/deferred_character_13.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_character_13.f90
@@ -22,7 +22,7 @@ contains
subroutine do_something(this)
class(abc_type),intent(in)::this
- if (this%abc_function() .ne. "hello") call abort
+ if (this%abc_function() .ne. "hello") STOP 1
end subroutine do_something
end module abc
diff --git a/gcc/testsuite/gfortran.dg/deferred_character_14.f90 b/gcc/testsuite/gfortran.dg/deferred_character_14.f90
index 3c4163ee7ac..c6b7b25ee2f 100644
--- a/gcc/testsuite/gfortran.dg/deferred_character_14.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_character_14.f90
@@ -20,11 +20,11 @@ program stringtest
character(:), dimension(:), allocatable :: s
! Comment #1
allocate(character(1) :: s(10))
- if (size (s) .ne. 10) call abort
- if (len (s) .ne. 1) call abort
+ if (size (s) .ne. 10) STOP 1
+ if (len (s) .ne. 1) STOP 2
! Comment #4
call allocate_array(s4)
- if (size (s4) .ne. 2) call abort
- if (len (s4) .ne. 2) call abort
- if (any (s4 .ne. ["ab", "cd"])) call abort
+ if (size (s4) .ne. 2) STOP 3
+ if (len (s4) .ne. 2) STOP 4
+ if (any (s4 .ne. ["ab", "cd"])) STOP 5
end program
diff --git a/gcc/testsuite/gfortran.dg/deferred_character_15.f90 b/gcc/testsuite/gfortran.dg/deferred_character_15.f90
index c641c1fb87b..fd0ff9b1bf4 100644
--- a/gcc/testsuite/gfortran.dg/deferred_character_15.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_character_15.f90
@@ -7,13 +7,13 @@
program tester
character(LEN=:), allocatable :: S
S= test(2)
- if (len(S) .ne. 4) call abort
- if (S .ne. "test") call abort
+ if (len(S) .ne. 4) STOP 1
+ if (S .ne. "test") STOP 2
if (allocated (S)) deallocate (S)
S= test2(2)
- if (len(S) .ne. 4) call abort
- if (S .ne. "test") call abort
+ if (len(S) .ne. 4) STOP 3
+ if (S .ne. "test") STOP 4
if (allocated (S)) deallocate (S)
contains
function test(alen)
@@ -25,8 +25,8 @@ contains
end do
! This line would print nothing when compiled with -O1 and higher.
! print *, len(test),test
- if (len(test) .ne. 4) call abort
- if (test .ne. "test") call abort
+ if (len(test) .ne. 4) STOP 5
+ if (test .ne. "test") STOP 6
end function test
function test2(alen) result (test)
@@ -38,7 +38,7 @@ contains
end do
! This worked before the fix.
! print *, len(test),test
- if (len(test) .ne. 4) call abort
- if (test .ne. "test") call abort
+ if (len(test) .ne. 4) STOP 7
+ if (test .ne. "test") STOP 8
end function test2
end program tester
diff --git a/gcc/testsuite/gfortran.dg/deferred_character_16.f90 b/gcc/testsuite/gfortran.dg/deferred_character_16.f90
index f5931acd3c7..fea06dd943b 100644
--- a/gcc/testsuite/gfortran.dg/deferred_character_16.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_character_16.f90
@@ -7,7 +7,7 @@ PROGRAM main
CHARACTER(len=:), DIMENSION(:), POINTER :: cp
INTEGER :: i
ALLOCATE(CHARACTER(len=1) :: cp(1:6))
- if (SIZE(cp) /= 6 .or. LBOUND(cp,1) /= 1 .or. UBOUND(cp,1) /= 6) call abort()
+ if (SIZE(cp) /= 6 .or. LBOUND(cp,1) /= 1 .or. UBOUND(cp,1) /= 6) STOP 1
cp(1)='1'
cp(2)='2'
cp(3)='3'
@@ -15,5 +15,5 @@ PROGRAM main
cp(5)='5'
cp(6)='6'
write (res, *) cp
- if (res /= ' 123456') call abort()
+ if (res /= ' 123456') STOP 2
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/deferred_character_19.f90 b/gcc/testsuite/gfortran.dg/deferred_character_19.f90
new file mode 100644
index 00000000000..96722a144f6
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/deferred_character_19.f90
@@ -0,0 +1,20 @@
+! { dg-do run }
+!
+! Test fix for PR80945, in which the character length was fixed at zero.
+!
+! Contributed by Nicolas Koenig <koenigni@gcc.gnu.org>
+!
+program main
+ implicit none
+ integer:: i
+ integer, parameter:: N = 10
+ character(20) :: buffer
+ character(len=:), dimension(:),allocatable:: ca
+ character(len=:), dimension(:,:),allocatable:: cb
+ allocate(character(len=N) :: ca(3))
+ ca(1) = "foo"
+ ca(2) = "bar"
+ ca(3) = "xyzzy"
+ write (buffer, '(3A5)') ca(1:3)
+ if (trim (buffer) .ne. "foo bar xyzzy") stop 1
+end program
diff --git a/gcc/testsuite/gfortran.dg/deferred_character_2.f90 b/gcc/testsuite/gfortran.dg/deferred_character_2.f90
index 3e6535c7624..8466bb3efbc 100644
--- a/gcc/testsuite/gfortran.dg/deferred_character_2.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_character_2.f90
@@ -37,29 +37,29 @@ PROGRAM hello
! DO i=1,cant_lineas
! WRITE(*,*) array_lineas(i)
! ENDDO
- if (any (array_lineas .ne. array_fijo)) call abort
+ if (any (array_lineas .ne. array_fijo)) STOP 1
! The following are additional tests beyond that of the original.
!
! Check that allocation with source = another deferred length is OK
allocate (array_copia, source = array_lineas)
- if (any (array_copia .ne. array_fijo)) call abort
+ if (any (array_copia .ne. array_fijo)) STOP 2
deallocate (array_lineas, array_copia)
! Check that allocation with source = a non-deferred length is OK
allocate (array_lineas, source = array_fijo)
- if (any (array_lineas .ne. array_fijo)) call abort
+ if (any (array_lineas .ne. array_fijo)) STOP 3
deallocate (array_lineas)
! Check that allocation with MOLD = a non-deferred length is OK
allocate (array_copia, mold = [array_fijo(:)(1:2), array_fijo(:)(1:2)])
- if (size (array_copia, 1) .ne. 4) call abort
- if (LEN (array_copia, 1) .ne. 2) call abort
+ if (size (array_copia, 1) .ne. 4) STOP 4
+ if (LEN (array_copia, 1) .ne. 2) STOP 5
! Check that allocation with MOLD = another deferred length is OK
allocate (array_lineas, mold = array_copia)
- if (size (array_copia, 1) .ne. 4) call abort
- if (LEN (array_copia, 1) .ne. 2) call abort
+ if (size (array_copia, 1) .ne. 4) STOP 6
+ if (LEN (array_copia, 1) .ne. 2) STOP 7
deallocate (array_lineas, array_copia)
! READ(*,*)
@@ -75,10 +75,10 @@ contains
allocate(character(3) :: test(2))
test(1) = 'abc'
test(2) = 'def'
- if (any (test .ne. ['abc', 'def'])) call abort
+ if (any (test .ne. ['abc', 'def'])) STOP 8
test = ['aa','bb','cc']
- if (any (test .ne. ['aa', 'bb', 'cc'])) call abort
+ if (any (test .ne. ['aa', 'bb', 'cc'])) STOP 9
end subroutine testdefchar
diff --git a/gcc/testsuite/gfortran.dg/deferred_character_3.f90 b/gcc/testsuite/gfortran.dg/deferred_character_3.f90
index 6ba25df48bf..6b57cc7a1ae 100644
--- a/gcc/testsuite/gfortran.dg/deferred_character_3.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_character_3.f90
@@ -21,7 +21,7 @@ program test
! print *, 'length main program after',len(my_string_type%name)
! print *, 'final result:',my_string_type%name
- if (my_string_type%name .ne. 'here the word is finally set') call abort
+ if (my_string_type%name .ne. 'here the word is finally set') STOP 1
contains
subroutine inputreadword1(word_intermediate)
diff --git a/gcc/testsuite/gfortran.dg/deferred_character_4.f90 b/gcc/testsuite/gfortran.dg/deferred_character_4.f90
index 5bb865810c1..98a30b48e9f 100644
--- a/gcc/testsuite/gfortran.dg/deferred_character_4.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_character_4.f90
@@ -15,16 +15,16 @@ program chk_alloc_string
strings = [ "A ", "C ", "ABCD", "V " ]
- if (len(strings) .ne. 4) call abort
- if (size(strings, 1) .ne. 4) call abort
- if (any (strings .ne. [character(len=4) :: "A", "C", "ABCD", "V"])) call abort
+ if (len(strings) .ne. 4) STOP 1
+ if (size(strings, 1) .ne. 4) STOP 2
+ if (any (strings .ne. [character(len=4) :: "A", "C", "ABCD", "V"])) STOP 3
strings = [character(len=4) :: "A", "C", "ABCDE", "V", "zzzz"]
- if (len(strings) .ne. 4) call abort
- if (size(strings, 1) .ne. 5) call abort
- if (any (strings .ne. [character(len=4) :: "A", "C", "ABCD", "V", "zzzz"])) call abort
+ if (len(strings) .ne. 4) STOP 4
+ if (size(strings, 1) .ne. 5) STOP 5
+ if (any (strings .ne. [character(len=4) :: "A", "C", "ABCD", "V", "zzzz"])) STOP 6
write (buffer, "(5a4)") strings
- if (buffer .ne. "A C ABCDV zzzz") call abort
+ if (buffer .ne. "A C ABCDV zzzz") STOP 7
end program chk_alloc_string
diff --git a/gcc/testsuite/gfortran.dg/deferred_character_5.f90 b/gcc/testsuite/gfortran.dg/deferred_character_5.f90
index b5d64b43840..44818849ce1 100644
--- a/gcc/testsuite/gfortran.dg/deferred_character_5.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_character_5.f90
@@ -28,5 +28,5 @@ program test
type(u) :: b
a%c = 'something'
call a%get (a = b%c)
- if (b%c .ne. 'something') call abort
+ if (b%c .ne. 'something') STOP 1
end program test
diff --git a/gcc/testsuite/gfortran.dg/deferred_character_6.f90 b/gcc/testsuite/gfortran.dg/deferred_character_6.f90
index 94afa0c0f28..44746b31b33 100644
--- a/gcc/testsuite/gfortran.dg/deferred_character_6.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_character_6.f90
@@ -39,16 +39,16 @@ program thistest
test_vary%string = str
- if (test_vary%string .ne. str) call abort
+ if (test_vary%string .ne. str) STOP 1
! This previously gave a blank string.
my_stuff%string = test_vary
- if (my_stuff%string .ne. str) call abort
+ if (my_stuff%string .ne. str) STOP 2
test_char = test_vary
- if (test_char .ne. str) call abort
+ if (test_char .ne. str) STOP 3
my_stuff = test_vary
- if (my_stuff%string .ne. str) call abort
+ if (my_stuff%string .ne. str) STOP 4
end program thistest
diff --git a/gcc/testsuite/gfortran.dg/deferred_character_7.f90 b/gcc/testsuite/gfortran.dg/deferred_character_7.f90
index 64b03aba0bd..aa7a6621bef 100644
--- a/gcc/testsuite/gfortran.dg/deferred_character_7.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_character_7.f90
@@ -15,25 +15,25 @@ implicit none
a1 = ["ABCDEFGH","abcdefgh"]
a2 = "_"//a1//chr//"_"
- if (any (a2 .ne. ["_ABCDEFGHIJKLMNOP_","_abcdefghIJKLMNOP_"])) call abort
+ if (any (a2 .ne. ["_ABCDEFGHIJKLMNOP_","_abcdefghIJKLMNOP_"])) STOP 1
! Check that the descriptor dtype is OK - the array write needs it.
write (buffer, "(2a18)") a2
- if (trim (buffer) .ne. "_ABCDEFGHIJKLMNOP__abcdefghIJKLMNOP_") call abort
+ if (trim (buffer) .ne. "_ABCDEFGHIJKLMNOP__abcdefghIJKLMNOP_") STOP 2
! Make sure scalars survived the fix!
b1 = "ABCDEFGH"
b2 = "_"//b1//chr//"_"
- if (b2 .ne. "_ABCDEFGHIJKLMNOP_") call abort
+ if (b2 .ne. "_ABCDEFGHIJKLMNOP_") STOP 3
! Check the dependency is detected and dealt with by generation of a temporary.
a1 = "?"//a1//"?"
- if (any (a1 .ne. ["?ABCDEFGH?","?abcdefgh?"])) call abort
+ if (any (a1 .ne. ["?ABCDEFGH?","?abcdefgh?"])) STOP 4
! With an array reference...
a1 = "?"//a1(1:2)//"?"
- if (any (a1 .ne. ["??ABCDEFGH??","??abcdefgh??"])) call abort
+ if (any (a1 .ne. ["??ABCDEFGH??","??abcdefgh??"])) STOP 5
!... together with a substring.
a1 = "?"//a1(1:1)(2:4)//"?"
- if (any (a1 .ne. ["??AB?"])) call abort
+ if (any (a1 .ne. ["??AB?"])) STOP 6
contains
end
diff --git a/gcc/testsuite/gfortran.dg/deferred_character_8.f90 b/gcc/testsuite/gfortran.dg/deferred_character_8.f90
index 009acc1d290..30fc700d85e 100644
--- a/gcc/testsuite/gfortran.dg/deferred_character_8.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_character_8.f90
@@ -69,16 +69,16 @@ end module
end function
end interface
- if (f () .ne. "ABC") call abort
- if (any (g (["ab","cd"]) .ne. ["ab","cd","ef","gh"])) call abort
+ if (f () .ne. "ABC") STOP 1
+ if (any (g (["ab","cd"]) .ne. ["ab","cd","ef","gh"])) STOP 2
chr = h (["ABC","DEF","GHI"])
- if (any (chr .ne. ["abc","def","ghi"])) call abort
- if (any (return_string ("abcdefg") .ne. ["abcdefg","abcdefg"])) call abort
+ if (any (chr .ne. ["abc","def","ghi"])) STOP 3
+ if (any (return_string ("abcdefg") .ne. ["abcdefg","abcdefg"])) STOP 4
! Comment #23
allocate(character(3)::s(2))
s(1) = 'foo'
s(2) = 'bar'
write (buffer, '(2A3)') s
- if (buffer .ne. 'foobar') call abort
+ if (buffer .ne. 'foobar') STOP 5
end
diff --git a/gcc/testsuite/gfortran.dg/deferred_character_9.f90 b/gcc/testsuite/gfortran.dg/deferred_character_9.f90
index f88de7a4ad5..5dbd068108a 100644
--- a/gcc/testsuite/gfortran.dg/deferred_character_9.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_character_9.f90
@@ -23,6 +23,6 @@ END MODULE m
character(:), allocatable :: str
integer :: i = 999
str = .ToString. i
- if (str .ne. " 999") call abort
+ if (str .ne. " 999") STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/deferred_character_assignment_1.f90 b/gcc/testsuite/gfortran.dg/deferred_character_assignment_1.f90
index f3a739f503d..888fd56ec25 100644
--- a/gcc/testsuite/gfortran.dg/deferred_character_assignment_1.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_character_assignment_1.f90
@@ -10,13 +10,13 @@
z = "cockatoo"
length = len (z)
z(:) = ''
- if (len(z) .ne. length) call abort
- if (trim (z) .ne. '') call abort
+ if (len(z) .ne. length) STOP 1
+ if (trim (z) .ne. '') STOP 2
z(:3) = "foo"
- if (len(z) .ne. length) call abort
- if (trim (z) .ne. "foo") call abort
+ if (len(z) .ne. length) STOP 3
+ if (trim (z) .ne. "foo") STOP 4
z(4:) = "__bar"
- if (len(z) .ne. length) call abort
- if (trim (z) .ne. "foo__bar") call abort
+ if (len(z) .ne. length) STOP 5
+ if (trim (z) .ne. "foo__bar") STOP 6
deallocate (z)
end
diff --git a/gcc/testsuite/gfortran.dg/deferred_type_component_1.f90 b/gcc/testsuite/gfortran.dg/deferred_type_component_1.f90
index a7826d9bdea..28e222c3549 100644
--- a/gcc/testsuite/gfortran.dg/deferred_type_component_1.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_type_component_1.f90
@@ -53,8 +53,8 @@ contains
subroutine check (chr1, chr2)
character (*) :: chr1, chr2
- if (len(chr1) .ne. len (chr2)) call abort
- if (chr1 .ne. chr2) call abort
+ if (len(chr1) .ne. len (chr2)) STOP 1
+ if (chr1 .ne. chr2) STOP 2
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/deferred_type_component_2.f90 b/gcc/testsuite/gfortran.dg/deferred_type_component_2.f90
index 63e7fa39301..8f0dcead792 100644
--- a/gcc/testsuite/gfortran.dg/deferred_type_component_2.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_type_component_2.f90
@@ -53,8 +53,8 @@ contains
subroutine check (chr1, chr2)
character (len=*,kind=4) :: chr1, chr2
- if (len(chr1) .ne. len (chr2)) call abort
- if (chr1 .ne. chr2) call abort
+ if (len(chr1) .ne. len (chr2)) STOP 1
+ if (chr1 .ne. chr2) STOP 2
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/deferred_type_param_2.f90 b/gcc/testsuite/gfortran.dg/deferred_type_param_2.f90
index 8ac48c3f153..885dcb63192 100644
--- a/gcc/testsuite/gfortran.dg/deferred_type_param_2.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_type_param_2.f90
@@ -50,9 +50,9 @@ subroutine four()
character(len=:), pointer :: pstr
pstr => str
str = "abc"
- if(len(pstr) /= len(str) .or. len(str)/= 3) call abort()
+ if(len(pstr) /= len(str) .or. len(str)/= 3) STOP 1
str = "abcd"
- if(len(pstr) /= len(str) .or. len(str)/= 4) call abort()
+ if(len(pstr) /= len(str) .or. len(str)/= 4) STOP 2
end subroutine four
subroutine five()
diff --git a/gcc/testsuite/gfortran.dg/deferred_type_param_4.f90 b/gcc/testsuite/gfortran.dg/deferred_type_param_4.f90
index c0583f5686c..160fdf124ca 100644
--- a/gcc/testsuite/gfortran.dg/deferred_type_param_4.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_type_param_4.f90
@@ -23,11 +23,11 @@ contains
! print *, len(str)
! print '(3a)', '>',str,'<'
if (i == 5) then
- if (str /= "12345" .or. len(str) /= 5) call abort ()
+ if (str /= "12345" .or. len(str) /= 5) STOP 1
else if (i == 7) then
- if (str /= "XXXXXXX" .or. len(str) /= 7) call abort ()
+ if (str /= "XXXXXXX" .or. len(str) /= 7) STOP 2
else
- call abort ()
+ STOP 3
end if
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/deferred_type_param_5.f90 b/gcc/testsuite/gfortran.dg/deferred_type_param_5.f90
index 8380b9d2d4d..6f2c11f559b 100644
--- a/gcc/testsuite/gfortran.dg/deferred_type_param_5.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_type_param_5.f90
@@ -47,5 +47,5 @@ end module mod1
use mod1
character(len=:), allocatable :: str
str = c2fstring("ABCDEF"//c_null_char//"GHI")
-if (len(str) /= 6 .or. str /= "ABCDEF") call abort()
+if (len(str) /= 6 .or. str /= "ABCDEF") STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/deferred_type_param_6.f90 b/gcc/testsuite/gfortran.dg/deferred_type_param_6.f90
index a2fabe87acf..9899752e5a9 100644
--- a/gcc/testsuite/gfortran.dg/deferred_type_param_6.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_type_param_6.f90
@@ -11,27 +11,27 @@ subroutine test()
character(len=:), pointer :: s2
character(len=5), target :: fifeC = 'FIVEC'
call sub(s1, i)
- if (len(s1) /= 5) call abort()
- if (s1 /= "ZZZZZ") call abort()
+ if (len(s1) /= 5) STOP 1
+ if (s1 /= "ZZZZZ") STOP 2
s2 => subfunc()
- if (len(s2) /= 5) call abort()
- if (s2 /= "FIVEC") call abort()
+ if (len(s2) /= 5) STOP 3
+ if (s2 /= "FIVEC") STOP 4
s1 = addPrefix(subfunc())
- if (len(s1) /= 7) call abort()
- if (s1 /= "..FIVEC") call abort()
+ if (len(s1) /= 7) STOP 5
+ if (s1 /= "..FIVEC") STOP 6
contains
subroutine sub(str,j)
character(len=:), allocatable :: str
integer :: j
str = REPEAT("Z",j)
- if (len(str) /= 5) call abort()
- if (str /= "ZZZZZ") call abort()
+ if (len(str) /= 5) STOP 7
+ if (str /= "ZZZZZ") STOP 8
end subroutine sub
function subfunc() result(res)
character(len=:), pointer :: res
res => fifec
- if (len(res) /= 5) call abort()
- if (res /= "FIVEC") call abort()
+ if (len(res) /= 5) STOP 9
+ if (res /= "FIVEC") STOP 10
end function subfunc
function addPrefix(str) result(res)
character(len=:), pointer :: str
@@ -44,9 +44,9 @@ program a
character(len=:),allocatable :: s
integer :: j=2
s = repeat ('x', j)
- if (len(repeat(' ',j)) /= 2) call abort()
- if (repeat('y',j) /= "yy") call abort()
- if (len(s) /= 2) call abort()
- if (s /= "xx") call abort()
+ if (len(repeat(' ',j)) /= 2) STOP 11
+ if (repeat('y',j) /= "yy") STOP 12
+ if (len(s) /= 2) STOP 13
+ if (s /= "xx") STOP 14
call test()
end program a
diff --git a/gcc/testsuite/gfortran.dg/deferred_type_param_8.f90 b/gcc/testsuite/gfortran.dg/deferred_type_param_8.f90
index 3c768c567a7..34a4bb2c1f1 100644
--- a/gcc/testsuite/gfortran.dg/deferred_type_param_8.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_type_param_8.f90
@@ -15,7 +15,7 @@ PROGRAM helloworld
n = ceiling(11*rnd)
call hello(n, string)
! print '(A,1X,I0)', '>' // string // '<', len(string)
- if (n /= len (string) .or. string /= cmp(1:n)) call abort ()
+ if (n /= len (string) .or. string /= cmp(1:n)) STOP 1
end do
call test_PR53642()
@@ -38,17 +38,17 @@ contains
character(:), allocatable :: trimmed
trimmed = trim(string)
- if (len_trim(string) /= len(trimmed)) call abort ()
- if (len(trimmed) /= 3) call abort ()
- if (trimmed /= "123") call abort ()
+ if (len_trim(string) /= len(trimmed)) STOP 2
+ if (len(trimmed) /= 3) STOP 3
+ if (trimmed /= "123") STOP 4
! print *,len_trim(string),len(trimmed)
! Clear
trimmed = "XXXXXX"
- if (trimmed /= "XXXXXX" .or. len(trimmed) /= 6) call abort ()
+ if (trimmed /= "XXXXXX" .or. len(trimmed) /= 6) STOP 5
trimmed = string(1:len_trim(string))
- if (len_trim(trimmed) /= 3) call abort ()
- if (trimmed /= "123") call abort ()
+ if (len_trim(trimmed) /= 3) STOP 6
+ if (trimmed /= "123") STOP 7
end subroutine test_PR53642
end PROGRAM helloworld
diff --git a/gcc/testsuite/gfortran.dg/deferred_type_param_9.f90 b/gcc/testsuite/gfortran.dg/deferred_type_param_9.f90
index a6e685753f4..0f3d409f121 100644
--- a/gcc/testsuite/gfortran.dg/deferred_type_param_9.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_type_param_9.f90
@@ -12,11 +12,11 @@ contains
SUBROUTINE get (c_val)
CHARACTER( : ), INTENT( INOUT ), ALLOCATABLE, OPTIONAL :: c_val
CHARACTER( 10 ) :: c_val_tmp
- if(present(c_val)) call abort()
+ if(present(c_val)) STOP 1
END SUBROUTINE get
SUBROUTINE get2 (c_val)
CHARACTER( : ), INTENT( OUT ), ALLOCATABLE, OPTIONAL :: c_val
CHARACTER( 10 ) :: c_val_tmp
- if(present(c_val)) call abort()
+ if(present(c_val)) STOP 2
END SUBROUTINE get2
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/deferred_type_proc_pointer_1.f90 b/gcc/testsuite/gfortran.dg/deferred_type_proc_pointer_1.f90
index 3fc055e0e9c..ed4ca6ec4a4 100644
--- a/gcc/testsuite/gfortran.dg/deferred_type_proc_pointer_1.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_type_proc_pointer_1.f90
@@ -18,7 +18,7 @@ contains
subroutine doIt()
type(t) :: x
x%ppt => deferred_len
- if ("abc" /= x%ppt()) call abort()
+ if ("abc" /= x%ppt()) STOP 1
end subroutine doIt
end module test
diff --git a/gcc/testsuite/gfortran.dg/deferred_type_proc_pointer_2.f90 b/gcc/testsuite/gfortran.dg/deferred_type_proc_pointer_2.f90
index dbdb3bdba34..069c7f28b65 100644
--- a/gcc/testsuite/gfortran.dg/deferred_type_proc_pointer_2.f90
+++ b/gcc/testsuite/gfortran.dg/deferred_type_proc_pointer_2.f90
@@ -18,7 +18,7 @@ contains
character(:), allocatable :: temp
x%ppt => deferred_len
temp = deferred_len()
- if ("abc" /= temp) call abort()
+ if ("abc" /= temp) STOP 1
end subroutine doIt
end module test
diff --git a/gcc/testsuite/gfortran.dg/defined_assignment_1.f90 b/gcc/testsuite/gfortran.dg/defined_assignment_1.f90
index da06f26d191..5733ea20838 100644
--- a/gcc/testsuite/gfortran.dg/defined_assignment_1.f90
+++ b/gcc/testsuite/gfortran.dg/defined_assignment_1.f90
@@ -76,15 +76,15 @@ program main
! Test the reported problem.
infant0 = new_child()
- if (infant0%parent%foo%i .ne. 20) call abort
+ if (infant0%parent%foo%i .ne. 20) STOP 1
! Test the case of comment #1 of the PR.
infant1 = newchild1
- if (infant1%foo%i .ne. 21) call abort
+ if (infant1%foo%i .ne. 21) STOP 2
! Test the case of comment #2 of the PR.
infant2 = newchild2
- if (infant2%foo%i .ne. 2) call abort
+ if (infant2%foo%i .ne. 2) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/defined_assignment_10.f90 b/gcc/testsuite/gfortran.dg/defined_assignment_10.f90
index 4385925dcd1..8de9ebbcdb7 100644
--- a/gcc/testsuite/gfortran.dg/defined_assignment_10.f90
+++ b/gcc/testsuite/gfortran.dg/defined_assignment_10.f90
@@ -31,5 +31,5 @@ program main
! print *, right%foo
left = right
! print *, left%foo
- if (left%foo%i /= 20) call abort()
+ if (left%foo%i /= 20) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/defined_assignment_11.f90 b/gcc/testsuite/gfortran.dg/defined_assignment_11.f90
index ec297d5492a..3867339dba4 100644
--- a/gcc/testsuite/gfortran.dg/defined_assignment_11.f90
+++ b/gcc/testsuite/gfortran.dg/defined_assignment_11.f90
@@ -39,5 +39,5 @@ program main
! print *, right%x%foo%i
left = right
! print *, left%x%foo%i
- if (left%x%foo%i /= 20) call abort()
+ if (left%x%foo%i /= 20) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/defined_assignment_2.f90 b/gcc/testsuite/gfortran.dg/defined_assignment_2.f90
index 78f2abb22fe..a774a78b46f 100644
--- a/gcc/testsuite/gfortran.dg/defined_assignment_2.f90
+++ b/gcc/testsuite/gfortran.dg/defined_assignment_2.f90
@@ -50,25 +50,25 @@ program main
! Check that the INTENT(INOUT) of assign0 is respected and that the
! correct thing is done with allocatable components.
infant0 = new_child()
- if (infant0%parent%foo1%i .ne. 20) call abort
- if (infant0%foo2%i .ne. 21) call abort
- if (any (infant0%parent%foo1%j .ne. [99,199])) call abort
- if (any (infant0%foo2%j .ne. [199,299])) call abort
- if (infant0%foo2%i .ne. 21) call abort
- if (any (infant0%l .ne. [299,399])) call abort
+ if (infant0%parent%foo1%i .ne. 20) STOP 1
+ if (infant0%foo2%i .ne. 21) STOP 2
+ if (any (infant0%parent%foo1%j .ne. [99,199])) STOP 3
+ if (any (infant0%foo2%j .ne. [199,299])) STOP 4
+ if (infant0%foo2%i .ne. 21) STOP 5
+ if (any (infant0%l .ne. [299,399])) STOP 6
! Now, since the defined assignment depends on whether or not the 'i'
! component is the default initialization value, the result will be
! different.
infant0 = new_child()
- if (infant0%parent%foo1%i .ne. 40) call abort
- if (any (infant0%parent%foo1%j .ne. [99,199,198,398])) call abort
- if (any (infant0%foo2%j .ne. [199,299,398,598])) call abort
- if (infant0%foo2%i .ne. 42) call abort
- if (any (infant0%l .ne. [299,399])) call abort
+ if (infant0%parent%foo1%i .ne. 40) STOP 7
+ if (any (infant0%parent%foo1%j .ne. [99,199,198,398])) STOP 8
+ if (any (infant0%foo2%j .ne. [199,299,398,598])) STOP 9
+ if (infant0%foo2%i .ne. 42) STOP 10
+ if (any (infant0%l .ne. [299,399])) STOP 11
! Finally, make sure that normal components of the declared type survive.
- if (infant0%k .ne. 1001) call abort
+ if (infant0%k .ne. 1001) STOP 12
end
diff --git a/gcc/testsuite/gfortran.dg/defined_assignment_3.f90 b/gcc/testsuite/gfortran.dg/defined_assignment_3.f90
index ce58cee6359..8df86a5d06d 100644
--- a/gcc/testsuite/gfortran.dg/defined_assignment_3.f90
+++ b/gcc/testsuite/gfortran.dg/defined_assignment_3.f90
@@ -31,7 +31,7 @@ program main
type(child) :: infant0, infant1(2)
infant0 = child([component(1),component(2)], 99)
- if (any (infant0%parent%foo%i .ne. [20, 20])) call abort
+ if (any (infant0%parent%foo%i .ne. [20, 20])) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/defined_assignment_4.f90 b/gcc/testsuite/gfortran.dg/defined_assignment_4.f90
index e7a1b8e0f64..f7e310de691 100644
--- a/gcc/testsuite/gfortran.dg/defined_assignment_4.f90
+++ b/gcc/testsuite/gfortran.dg/defined_assignment_4.f90
@@ -31,5 +31,5 @@ program assign
type(b) :: tt
type(b) :: tb1
tt = tb1
- if (tt%tc%ta%i .ne. 198) call abort
+ if (tt%tc%ta%i .ne. 198) STOP 1
end program assign
diff --git a/gcc/testsuite/gfortran.dg/defined_assignment_5.f90 b/gcc/testsuite/gfortran.dg/defined_assignment_5.f90
index ca5a9262698..56427c133cb 100644
--- a/gcc/testsuite/gfortran.dg/defined_assignment_5.f90
+++ b/gcc/testsuite/gfortran.dg/defined_assignment_5.f90
@@ -64,13 +64,13 @@ program main
i = 3
j = 4
orphan(i:j) = child1(component1(777), 1)
- if (any (orphan%parent1%foo%i .ne. [0,0,30,30,0])) call abort
- if (any (orphan%j .ne. [7,7,1,1,7])) call abort
+ if (any (orphan%parent1%foo%i .ne. [0,0,30,30,0])) STOP 1
+ if (any (orphan%j .ne. [7,7,1,1,7])) STOP 2
! Check that allocatable lhs's work OK.
annie = [(child1(component1(k), 2*k), k = 1,3)]
- if (any (annie%parent1%foo%i .ne. [30,30,30])) call abort
- if (any (annie%j .ne. [2,4,6])) call abort
+ if (any (annie%parent1%foo%i .ne. [30,30,30])) STOP 3
+ if (any (annie%j .ne. [2,4,6])) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/defined_assignment_8.f90 b/gcc/testsuite/gfortran.dg/defined_assignment_8.f90
index aab808583ad..bef58de3b06 100644
--- a/gcc/testsuite/gfortran.dg/defined_assignment_8.f90
+++ b/gcc/testsuite/gfortran.dg/defined_assignment_8.f90
@@ -36,5 +36,5 @@ program main
print *, right%foo
left = right
print *, left%foo
- if (left%foo%i /= 42) call abort()
+ if (left%foo%i /= 42) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/defined_assignment_9.f90 b/gcc/testsuite/gfortran.dg/defined_assignment_9.f90
index 50fa0070f18..b5be91e5458 100644
--- a/gcc/testsuite/gfortran.dg/defined_assignment_9.f90
+++ b/gcc/testsuite/gfortran.dg/defined_assignment_9.f90
@@ -32,7 +32,7 @@ program main
! print *, right%foo
left = right
! print *, left%foo
- if (left%foo%i /= 20) call abort()
+ if (left%foo%i /= 20) STOP 1
end block
block
type(parent), allocatable :: left(:)
@@ -40,6 +40,6 @@ program main
! print *, right%foo
left = right
! print *, left%foo
- if (any (left%foo%i /= 20)) call abort()
+ if (any (left%foo%i /= 20)) STOP 2
end block
end
diff --git a/gcc/testsuite/gfortran.dg/dependency_2.f90 b/gcc/testsuite/gfortran.dg/dependency_2.f90
index 1cbdec795e1..2371ac9a430 100644
--- a/gcc/testsuite/gfortran.dg/dependency_2.f90
+++ b/gcc/testsuite/gfortran.dg/dependency_2.f90
@@ -5,7 +5,7 @@
real, dimension (3) :: a = (/1., 2., 3./), b, c
equivalence (a(2), b), (a(1), c)
b = a;
-if (any(b .ne. (/1., 2., 3./))) call abort ()
+if (any(b .ne. (/1., 2., 3./))) STOP 1
b = c
-if (any(b .ne. (/1., 1., 2./))) call abort ()
+if (any(b .ne. (/1., 1., 2./))) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/dependency_21.f90 b/gcc/testsuite/gfortran.dg/dependency_21.f90
index ca25458f7f2..daf5521acbf 100644
--- a/gcc/testsuite/gfortran.dg/dependency_21.f90
+++ b/gcc/testsuite/gfortran.dg/dependency_21.f90
@@ -17,5 +17,5 @@ program laplsolv
T(1:n,1)=(T(0:n-1,1)+T(1:n,1+1)+1d0)
- if (any (T(1:n,1) .ne. 1d0 )) call abort ()
+ if (any (T(1:n,1) .ne. 1d0 )) STOP 1
end program laplsolv
diff --git a/gcc/testsuite/gfortran.dg/dependency_22.f90 b/gcc/testsuite/gfortran.dg/dependency_22.f90
index bedf702767d..b8c6212e0eb 100644
--- a/gcc/testsuite/gfortran.dg/dependency_22.f90
+++ b/gcc/testsuite/gfortran.dg/dependency_22.f90
@@ -20,7 +20,7 @@
UDA(1)%IA(1:9) = UDA(1)%IA(9:1:-1)+1
DO J1 = 1,9
- if (UDA1R%IA(10-J1)+1 /= Uda(1)%IA(J1)) call abort()
+ if (UDA1R%IA(10-J1)+1 /= Uda(1)%IA(J1)) STOP 1
ENDDO
end
diff --git a/gcc/testsuite/gfortran.dg/dependency_23.f90 b/gcc/testsuite/gfortran.dg/dependency_23.f90
index 5a90cdaaa0c..429b2600d56 100644
--- a/gcc/testsuite/gfortran.dg/dependency_23.f90
+++ b/gcc/testsuite/gfortran.dg/dependency_23.f90
@@ -44,8 +44,8 @@ contains
elsewhere
tla2l = -1
endwhere
- if (any (tla2l%i .ne. tda2l%i)) call abort
- if (any (tla2l%l .neqv. tda2l%l)) call abort
+ if (any (tla2l%i .ne. tda2l%i)) STOP 1
+ if (any (tla2l%l .neqv. tda2l%l)) STOP 2
end subroutine
end module rg0045_stuff
diff --git a/gcc/testsuite/gfortran.dg/dependency_24.f90 b/gcc/testsuite/gfortran.dg/dependency_24.f90
index 81c2be288ac..f6bb53acd42 100644
--- a/gcc/testsuite/gfortran.dg/dependency_24.f90
+++ b/gcc/testsuite/gfortran.dg/dependency_24.f90
@@ -49,10 +49,10 @@ contains
where (l)
a = p%i ! Comment #1 of PR38863 concerned WHERE assignment
end where
- if (any (a%j .ne. [101, 102, 103])) call abort
+ if (any (a%j .ne. [101, 102, 103])) STOP 1
a = p%i ! Ordinary assignment was wrong too.
- if (any (a%j .ne. [101, 102, 103])) call abort
+ if (any (a%j .ne. [101, 102, 103])) STOP 2
end subroutine
subroutine test_ti
@@ -72,9 +72,9 @@ contains
where (l)
a = p%i
end where
- if (any (a%j .ne. 99)) call abort
+ if (any (a%j .ne. 99)) STOP 3
a = p%i
- if (any (a%j .ne. 99)) call abort
+ if (any (a%j .ne. 99)) STOP 4
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/dependency_25.f90 b/gcc/testsuite/gfortran.dg/dependency_25.f90
index f2517f52ebf..14cdd50adcc 100644
--- a/gcc/testsuite/gfortran.dg/dependency_25.f90
+++ b/gcc/testsuite/gfortran.dg/dependency_25.f90
@@ -88,6 +88,6 @@ program TestProgram
Table%RealData(:,5) = Table%RealData(:,5) * CENTIMETER
! print *, Table%RealData
- if (any (abs(Table%RealData(:,4) - 1) > epsilon(1.0))) call abort ()
- if (any (abs(Table%RealData(:,[1,2,3,5]) - 42) > epsilon(1.0))) call abort ()
+ if (any (abs(Table%RealData(:,4) - 1) > epsilon(1.0))) STOP 1
+ if (any (abs(Table%RealData(:,[1,2,3,5]) - 42) > epsilon(1.0))) STOP 2
end program TestProgram
diff --git a/gcc/testsuite/gfortran.dg/dependency_26.f90 b/gcc/testsuite/gfortran.dg/dependency_26.f90
index 3b652ea0c87..bd5856b8d5e 100644
--- a/gcc/testsuite/gfortran.dg/dependency_26.f90
+++ b/gcc/testsuite/gfortran.dg/dependency_26.f90
@@ -37,7 +37,7 @@ CONTAINS
REAL :: a(3)
REAL :: b(3) = [1, 2, 3]
a=MATMUL(cell%h,b)
- if (ANY (INT (a) .ne. [30, 36, 42])) call abort
+ if (ANY (INT (a) .ne. [30, 36, 42])) STOP 1
END SUBROUTINE S1
END MODULE M1
diff --git a/gcc/testsuite/gfortran.dg/dependency_39.f90 b/gcc/testsuite/gfortran.dg/dependency_39.f90
index 357827c7e7f..43119f6c999 100644
--- a/gcc/testsuite/gfortran.dg/dependency_39.f90
+++ b/gcc/testsuite/gfortran.dg/dependency_39.f90
@@ -26,11 +26,11 @@ program main
t%data=(/(i,i=1,10)/)
d=>t%data(5:9)
call s1(t,d)
- if (any(d.ne.(/3,4,5,6,7/))) call abort()
+ if (any(d.ne.(/3,4,5,6,7/))) STOP 1
t%data=(/(i,i=1,10)/)
d=>t%data(1:5)
call s2(d,t)
- if (any(t%data.ne.(/1,2,1,2,3,4,5,8,9,10/))) call abort
+ if (any(t%data.ne.(/1,2,1,2,3,4,5,8,9,10/))) STOP 1
deallocate(t%data)
deallocate(t)
end program main
diff --git a/gcc/testsuite/gfortran.dg/dependency_40.f90 b/gcc/testsuite/gfortran.dg/dependency_40.f90
index b7bd4f91184..8baad9a8345 100644
--- a/gcc/testsuite/gfortran.dg/dependency_40.f90
+++ b/gcc/testsuite/gfortran.dg/dependency_40.f90
@@ -14,16 +14,16 @@ program ala
v1 = v0
v1(2:n-1) = v1(1:n-2) + v1(3:n)
- if (any(v1 /= result)) call abort
+ if (any(v1 /= result)) STOP 1
v1 = v0
v1(2:n-1) = v0(1:n-2) + v0(3:n)
- if (any(v1 /= result)) call abort
+ if (any(v1 /= result)) STOP 2
v1 = v0
v1(2:n-1) = v1(3:n) + v1(1:n-2)
- if (any(v1 /= result)) call abort
+ if (any(v1 /= result)) STOP 3
v1 = v0
v1(2:n-1) = v0(3:n) + v0(1:n-2)
- if (any(v1 /= result)) call abort
+ if (any(v1 /= result)) STOP 4
end program ala
diff --git a/gcc/testsuite/gfortran.dg/dependency_41.f90 b/gcc/testsuite/gfortran.dg/dependency_41.f90
index db9e0e6288e..f37281bb871 100644
--- a/gcc/testsuite/gfortran.dg/dependency_41.f90
+++ b/gcc/testsuite/gfortran.dg/dependency_41.f90
@@ -14,6 +14,6 @@ program main
! Same result when assigning to a or b
b(n+1:10:4) = a(n+2:8:2)
a(n+1:10:4) = a(n+2:8:2)
- if (any (a/=b)) call abort
+ if (any (a/=b)) STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/dependency_42.f90 b/gcc/testsuite/gfortran.dg/dependency_42.f90
index 8f067322f9a..20bc0f23d31 100644
--- a/gcc/testsuite/gfortran.dg/dependency_42.f90
+++ b/gcc/testsuite/gfortran.dg/dependency_42.f90
@@ -12,5 +12,5 @@ program main
q(4) = q(4) + p(1)
q(3) = q(3) + p(2)
q(1) = q(1) + p(3)
- if (any (q - r /= 0)) call abort
+ if (any (q - r /= 0)) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/dependency_43.f90 b/gcc/testsuite/gfortran.dg/dependency_43.f90
index c407369c5e6..e5d1887ea4c 100644
--- a/gcc/testsuite/gfortran.dg/dependency_43.f90
+++ b/gcc/testsuite/gfortran.dg/dependency_43.f90
@@ -9,6 +9,6 @@ program main
i1 = [ 1, 2, 3 ]
i2 = [ 3, 2, 1 ]
a (i1,1) = a (i2,2)
- if (a(1,1) /= 6.0 .or. a(2,1) /= 5.0 .or. a(3,1) /= 4.0) call abort
- if (a(1,2) /= 4.0 .or. a(2,2) /= 5.0 .or. a(3,2) /= 6.0) call abort
+ if (a(1,1) /= 6.0 .or. a(2,1) /= 5.0 .or. a(3,1) /= 4.0) STOP 1
+ if (a(1,2) /= 4.0 .or. a(2,2) /= 5.0 .or. a(3,2) /= 6.0) STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/dependency_44.f90 b/gcc/testsuite/gfortran.dg/dependency_44.f90
index ebfeec64c8d..e5c2b319b3e 100644
--- a/gcc/testsuite/gfortran.dg/dependency_44.f90
+++ b/gcc/testsuite/gfortran.dg/dependency_44.f90
@@ -32,5 +32,5 @@ program prgm3
res2 = y(k,:)
! print *, res1
! print *, res2
- if (any(res1 /= res2)) call abort ()
+ if (any(res1 /= res2)) STOP 1
end program prgm3
diff --git a/gcc/testsuite/gfortran.dg/dependency_45.f90 b/gcc/testsuite/gfortran.dg/dependency_45.f90
index 8b43f7507b6..46a8ff57c15 100644
--- a/gcc/testsuite/gfortran.dg/dependency_45.f90
+++ b/gcc/testsuite/gfortran.dg/dependency_45.f90
@@ -8,5 +8,5 @@ program main
c(2) = '1234'
c(3) = 'wxyz'
c(:)(1:2) = c(2)(2:3) ! { dg-warning "array temporary" }
- if (c(3) .ne. '23yz') call abort
+ if (c(3) .ne. '23yz') STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/dependency_50.f90 b/gcc/testsuite/gfortran.dg/dependency_50.f90
index dfe0a3b9f5e..c55da8fdb9d 100644
--- a/gcc/testsuite/gfortran.dg/dependency_50.f90
+++ b/gcc/testsuite/gfortran.dg/dependency_50.f90
@@ -7,6 +7,6 @@ program dusty_corner
words=[character(len=3) :: 'one', 'two']
words=[character(len=5) :: words, 'three']
- if (any(words /= [ "one ", "two ", "three"])) call abort
+ if (any(words /= [ "one ", "two ", "three"])) STOP 1
end program dusty_corner
diff --git a/gcc/testsuite/gfortran.dg/dependency_51.f90 b/gcc/testsuite/gfortran.dg/dependency_51.f90
index 62b76e1543a..6cd6af91221 100644
--- a/gcc/testsuite/gfortran.dg/dependency_51.f90
+++ b/gcc/testsuite/gfortran.dg/dependency_51.f90
@@ -9,6 +9,6 @@ program dusty_corner
words=[character(len=3) :: 'one', 'two']
n = 5
words=[character(len=n) :: words, 'three']
- if (any(words /= [ "one ", "two ", "three"])) call abort
+ if (any(words /= [ "one ", "two ", "three"])) STOP 1
end program dusty_corner
diff --git a/gcc/testsuite/gfortran.dg/dependent_decls_1.f90 b/gcc/testsuite/gfortran.dg/dependent_decls_1.f90
index cca0eae5178..5e863152904 100644
--- a/gcc/testsuite/gfortran.dg/dependent_decls_1.f90
+++ b/gcc/testsuite/gfortran.dg/dependent_decls_1.f90
@@ -16,16 +16,16 @@ contains
real :: x(size(xmin)+1) ! The declaration for r would be added
real :: r(size(x)-1) ! to the function before that of x
xmin = r
- if (size(r) .ne. 10) call abort ()
- if (size(x) .ne. 11) call abort ()
+ if (size(r) .ne. 10) STOP 1
+ if (size(x) .ne. 11) STOP 2
end subroutine foo1
subroutine foo2 (xmin) ! This version was OK because of the
real, intent(inout) :: xmin(:) ! renaming of r which pushed it up
real :: x(size(xmin)+3) ! the symtree.
real :: zr(size(x)-3)
xmin = zr
- if (size(zr) .ne. 10) call abort ()
- if (size(x) .ne. 13) call abort ()
+ if (size(zr) .ne. 10) STOP 3
+ if (size(x) .ne. 13) STOP 4
end subroutine foo2
subroutine foo3 (xmin)
real, intent(inout) :: xmin(:)
@@ -33,7 +33,7 @@ contains
character(len(y)+3) :: z ! This did not work for any combination
real :: r(len(z)-5) ! of names.
xmin = r
- if (size(r) .ne. 10) call abort ()
- if (len(z) .ne. 15) call abort ()
+ if (size(r) .ne. 10) STOP 5
+ if (len(z) .ne. 15) STOP 6
end subroutine foo3
end program bar
diff --git a/gcc/testsuite/gfortran.dg/der_array_1.f90 b/gcc/testsuite/gfortran.dg/der_array_1.f90
index 00dc7a5c2b3..703b151a8b6 100644
--- a/gcc/testsuite/gfortran.dg/der_array_1.f90
+++ b/gcc/testsuite/gfortran.dg/der_array_1.f90
@@ -26,7 +26,7 @@ program der_array_1
v = t((/1, 2/), reshape (f, (/m/)), d, e);
if (any (v%a .ne. (/1, 2/)) .or. any (v%b .ne. (/3, 4/)) &
.or. any (v%c .ne. d) .or. .not. associated (v%p, e)) &
- call abort ()
+ STOP 1
deallocate(e)
end program
diff --git a/gcc/testsuite/gfortran.dg/der_array_io_1.f90 b/gcc/testsuite/gfortran.dg/der_array_io_1.f90
index 244b600746c..02764585e41 100644
--- a/gcc/testsuite/gfortran.dg/der_array_io_1.f90
+++ b/gcc/testsuite/gfortran.dg/der_array_io_1.f90
@@ -22,5 +22,5 @@ program main
write (buf1, '(20i4)') foo
write (buf2, '(20i4)') (foo(i)%x, (foo(i)%y(j), j=1,3), foo(i)%z, i=1,4)
- if (buf1.ne.buf2) call abort
+ if (buf1.ne.buf2) STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/der_array_io_2.f90 b/gcc/testsuite/gfortran.dg/der_array_io_2.f90
index 21e10d21306..d9ef6d9490f 100644
--- a/gcc/testsuite/gfortran.dg/der_array_io_2.f90
+++ b/gcc/testsuite/gfortran.dg/der_array_io_2.f90
@@ -27,5 +27,5 @@ program main
write (buf1,*) foo
write (buf2,*) ((foo(i)%x(j),j=1,3), (foo(i)%y(j),j=1,4), (foo(i)%z(j),j=1,5), (foo(i)%a(j),j=1,3), i=1,2)
- if (buf1.ne.buf2) call abort
+ if (buf1.ne.buf2) STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/der_array_io_3.f90 b/gcc/testsuite/gfortran.dg/der_array_io_3.f90
index de562152c49..f4746a1bb86 100644
--- a/gcc/testsuite/gfortran.dg/der_array_io_3.f90
+++ b/gcc/testsuite/gfortran.dg/der_array_io_3.f90
@@ -11,5 +11,5 @@ program main
! foo = foo_type("hello world ")
write (buf1,*) foo
write (buf2,*) (foo%name(i), i=1,13)
- if (buf1.ne.buf2) call abort
+ if (buf1.ne.buf2) STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/der_io_1.f90 b/gcc/testsuite/gfortran.dg/der_io_1.f90
index 03a191302b6..ae7e4a79b31 100644
--- a/gcc/testsuite/gfortran.dg/der_io_1.f90
+++ b/gcc/testsuite/gfortran.dg/der_io_1.f90
@@ -12,6 +12,6 @@ program der_io_1
v%p => i
i = 42
write (unit=s, fmt='(I2)') v ! { dg-error "POINTER components" }
- if (s .ne. '42') call abort ()
+ if (s .ne. '42') STOP 1
end program
diff --git a/gcc/testsuite/gfortran.dg/der_io_3.f90 b/gcc/testsuite/gfortran.dg/der_io_3.f90
index 13035fe9861..bf8357df76c 100644
--- a/gcc/testsuite/gfortran.dg/der_io_3.f90
+++ b/gcc/testsuite/gfortran.dg/der_io_3.f90
@@ -32,9 +32,9 @@ contains
b % i = 255
write(c,*) a
- if (trim(adjustl(c)) /= "31337") call abort
+ if (trim(adjustl(c)) /= "31337") STOP 1
write(c,*) b
- if (trim(adjustl(c)) /= "255") call abort
+ if (trim(adjustl(c)) /= "255") STOP 2
end subroutine test
end module m2
diff --git a/gcc/testsuite/gfortran.dg/der_pointer_2.f90 b/gcc/testsuite/gfortran.dg/der_pointer_2.f90
index 3749fc24ff8..baf0aa564e5 100644
--- a/gcc/testsuite/gfortran.dg/der_pointer_2.f90
+++ b/gcc/testsuite/gfortran.dg/der_pointer_2.f90
@@ -11,7 +11,7 @@ SUBROUTINE N
TYPE(T), POINTER :: P
TYPE(T), TARGET :: Q
P => Q
- if (P%I.ne.99) call abort ()
+ if (P%I.ne.99) STOP 1
END SUBROUTINE N
program test_pr15975
diff --git a/gcc/testsuite/gfortran.dg/derived_comp_array_ref_1.f90 b/gcc/testsuite/gfortran.dg/derived_comp_array_ref_1.f90
index bbc109d92bd..6fea23f5460 100644
--- a/gcc/testsuite/gfortran.dg/derived_comp_array_ref_1.f90
+++ b/gcc/testsuite/gfortran.dg/derived_comp_array_ref_1.f90
@@ -29,5 +29,5 @@ end module gd_calc
forall (i = 1:ndim) outputs_(i)%signal_number = ndim + 1 - i
used_ = (/.true., .false., .true., .true./)
call activate_gd_calcs (used_, outputs_)
- if (any (outputs_(ndim:1:-1)%used .neqv. used_)) call abort ()
+ if (any (outputs_(ndim:1:-1)%used .neqv. used_)) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/derived_comp_array_ref_2.f90 b/gcc/testsuite/gfortran.dg/derived_comp_array_ref_2.f90
index 014a3fb809b..9f195f9dad9 100644
--- a/gcc/testsuite/gfortran.dg/derived_comp_array_ref_2.f90
+++ b/gcc/testsuite/gfortran.dg/derived_comp_array_ref_2.f90
@@ -12,7 +12,7 @@ MODULE cdf_aux_mod
CONTAINS
SUBROUTINE set_bound(arg_name, test)
INTEGER, INTENT (IN) :: arg_name, test
- if (arg_name .ne. test) call abort ()
+ if (arg_name .ne. test) STOP 1
END SUBROUTINE set_bound
END MODULE cdf_aux_mod
diff --git a/gcc/testsuite/gfortran.dg/derived_comp_array_ref_4.f90 b/gcc/testsuite/gfortran.dg/derived_comp_array_ref_4.f90
index 1fe03fc6510..621d4ce2252 100644
--- a/gcc/testsuite/gfortran.dg/derived_comp_array_ref_4.f90
+++ b/gcc/testsuite/gfortran.dg/derived_comp_array_ref_4.f90
@@ -23,9 +23,9 @@ contains
subroutine chk (i)
integer, intent(in) :: i
if (i .eq. 1) then
- if (chk_(i)% str .ne. "abcd") call abort ()
+ if (chk_(i)% str .ne. "abcd") STOP 1
else
- if (chk_(i)% str .ne. "efgh") call abort ()
+ if (chk_(i)% str .ne. "efgh") STOP 2
end if
end subroutine chk
diff --git a/gcc/testsuite/gfortran.dg/derived_comp_array_ref_7.f90 b/gcc/testsuite/gfortran.dg/derived_comp_array_ref_7.f90
index 89005658989..f0c1d3fb988 100644
--- a/gcc/testsuite/gfortran.dg/derived_comp_array_ref_7.f90
+++ b/gcc/testsuite/gfortran.dg/derived_comp_array_ref_7.f90
@@ -12,7 +12,7 @@ program testCode
integer :: i
real, dimension(2,2), parameter :: vy = reshape ((/1,2,3,4/),(/2,2/))
i = 1
- if (any (foo(vec(vy(i, :))) /= vy(i, :))) call abort ()
+ if (any (foo(vec(vy(i, :))) /= vy(i, :))) STOP 1
contains
diff --git a/gcc/testsuite/gfortran.dg/derived_constructor_char_3.f90 b/gcc/testsuite/gfortran.dg/derived_constructor_char_3.f90
index e23878541bb..4daa02b9f93 100644
--- a/gcc/testsuite/gfortran.dg/derived_constructor_char_3.f90
+++ b/gcc/testsuite/gfortran.dg/derived_constructor_char_3.f90
@@ -15,12 +15,12 @@
if (DepEcoSystem%name /= "Gridxxxx" &
.or. DepEcoSystem%name(9:9) /= ' ' &
- .or. DepEcoSystem%name(10:10) /= ' ') call abort()
+ .or. DepEcoSystem%name(10:10) /= ' ') STOP 1
DepEcoSystem%name = 'ABCDEFGHIJ'
call Init_EcoSystems()
if (DepEcoSystem%name /= "StringYY" &
.or. DepEcoSystem%name(9:9) /= ' ' &
- .or. DepEcoSystem%name(10:10) /= ' ') call abort()
+ .or. DepEcoSystem%name(10:10) /= ' ') STOP 2
contains
subroutine Init_EcoSystems()
diff --git a/gcc/testsuite/gfortran.dg/derived_constructor_comps_1.f90 b/gcc/testsuite/gfortran.dg/derived_constructor_comps_1.f90
index 1c02a31c7a3..6b6cbc34a11 100644
--- a/gcc/testsuite/gfortran.dg/derived_constructor_comps_1.f90
+++ b/gcc/testsuite/gfortran.dg/derived_constructor_comps_1.f90
@@ -33,16 +33,16 @@ program prog
dat = date_m(1)
xx = file_info(date_m(-1)) ! This always worked - a constructor
- if (xx%date%month /= -1) call abort
+ if (xx%date%month /= -1) STOP 1
xx = file_info(dat) ! This was the original PR - a variable
- if (xx%date%month /= 1) call abort
+ if (xx%date%month /= 1) STOP 2
xx = file_info(foo(2)) ! ...functions were also broken
- if (xx%date%month /= 2) call abort
+ if (xx%date%month /= 2) STOP 3
xx = file_info(christmas) ! ...and parameters
- if (xx%date%month /= 12) call abort
+ if (xx%date%month /= 12) STOP 4
contains
diff --git a/gcc/testsuite/gfortran.dg/derived_constructor_comps_4.f90 b/gcc/testsuite/gfortran.dg/derived_constructor_comps_4.f90
index e70551838ae..2585367e287 100644
--- a/gcc/testsuite/gfortran.dg/derived_constructor_comps_4.f90
+++ b/gcc/testsuite/gfortran.dg/derived_constructor_comps_4.f90
@@ -13,6 +13,6 @@ end type
type(two) :: wo = two(6)
-if (wo%a /= 6) call abort()
+if (wo%a /= 6) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/derived_constructor_comps_5.f90 b/gcc/testsuite/gfortran.dg/derived_constructor_comps_5.f90
index 083c1313042..c2095bf7f88 100644
--- a/gcc/testsuite/gfortran.dg/derived_constructor_comps_5.f90
+++ b/gcc/testsuite/gfortran.dg/derived_constructor_comps_5.f90
@@ -30,12 +30,12 @@ program main
! scalar elemental function with structure constructor
prt_in = string_t(["D"])
tmpc = new_prt_spec2 (string_container_t(prt_in))
- if (any(tmpc%comp%chars .ne. ["D"])) call abort
+ if (any(tmpc%comp%chars .ne. ["D"])) STOP 1
deallocate (prt_in%chars)
deallocate(tmpc%comp%chars)
! Check that function arguments are OK too
tmpc = new_prt_spec2 (string_container_t(new_str_t(["h","e","l","l","o"])))
- if (any(tmpc%comp%chars .ne. ["h","e","l","l","o"])) call abort
+ if (any(tmpc%comp%chars .ne. ["h","e","l","l","o"])) STOP 1
deallocate(tmpc%comp%chars)
end do
diff --git a/gcc/testsuite/gfortran.dg/derived_constructor_comps_6.f90 b/gcc/testsuite/gfortran.dg/derived_constructor_comps_6.f90
index 9cdb81ae520..bdfa47b1df5 100644
--- a/gcc/testsuite/gfortran.dg/derived_constructor_comps_6.f90
+++ b/gcc/testsuite/gfortran.dg/derived_constructor_comps_6.f90
@@ -32,27 +32,27 @@ program main
! Test without intermediary function
prt_in = string_t(["A"])
- if (.not. allocated(prt_in%chars)) call abort
- if (any(prt_in%chars .ne. "A")) call abort
+ if (.not. allocated(prt_in%chars)) STOP 1
+ if (any(prt_in%chars .ne. "A")) STOP 2
deallocate (prt_in%chars)
! scalar elemental function
prt_in = string_t(["B"])
- if (.not. allocated(prt_in%chars)) call abort
- if (any(prt_in%chars .ne. "B")) call abort
+ if (.not. allocated(prt_in%chars)) STOP 3
+ if (any(prt_in%chars .ne. "B")) STOP 4
tmp = new_prt_spec (prt_in)
- if (.not. allocated(prt_in%chars)) call abort
- if (any(prt_in%chars .ne. "B")) call abort
+ if (.not. allocated(prt_in%chars)) STOP 5
+ if (any(prt_in%chars .ne. "B")) STOP 6
deallocate (prt_in%chars)
deallocate (tmp%chars)
! array elemental function with array constructor
prt_in = string_t(["C"])
- if (.not. allocated(prt_in%chars)) call abort
- if (any(prt_in%chars .ne. "C")) call abort
+ if (.not. allocated(prt_in%chars)) STOP 7
+ if (any(prt_in%chars .ne. "C")) STOP 8
tmpa = new_prt_spec ([(prt_in, i=1,2)])
- if (.not. allocated(prt_in%chars)) call abort
- if (any(prt_in%chars .ne. "C")) call abort
+ if (.not. allocated(prt_in%chars)) STOP 9
+ if (any(prt_in%chars .ne. "C")) STOP 10
deallocate (prt_in%chars)
do j=1,n
deallocate (tmpa(j)%chars)
@@ -60,21 +60,21 @@ program main
! scalar elemental function with structure constructor
prt_in = string_t(["D"])
- if (.not. allocated(prt_in%chars)) call abort
- if (any(prt_in%chars .ne. "D")) call abort
+ if (.not. allocated(prt_in%chars)) STOP 11
+ if (any(prt_in%chars .ne. "D")) STOP 12
tmpc = new_prt_spec2 (string_container_t(prt_in))
- if (.not. allocated(prt_in%chars)) call abort
- if (any(prt_in%chars .ne. "D")) call abort
+ if (.not. allocated(prt_in%chars)) STOP 13
+ if (any(prt_in%chars .ne. "D")) STOP 14
deallocate (prt_in%chars)
deallocate(tmpc%comp%chars)
! array elemental function of an array constructor of structure constructors
prt_in = string_t(["E"])
- if (.not. allocated(prt_in%chars)) call abort
- if (any(prt_in%chars .ne. "E")) call abort
+ if (.not. allocated(prt_in%chars)) STOP 15
+ if (any(prt_in%chars .ne. "E")) STOP 16
tmpca = new_prt_spec2 ([ (string_container_t(prt_in), i=1,2) ])
- if (.not. allocated(prt_in%chars)) call abort
- if (any(prt_in%chars .ne. "E")) call abort
+ if (.not. allocated(prt_in%chars)) STOP 17
+ if (any(prt_in%chars .ne. "E")) STOP 18
deallocate (prt_in%chars)
do j=1,n
deallocate (tmpca(j)%comp%chars)
@@ -82,11 +82,11 @@ program main
! scalar elemental function with a structure constructor and a nested array constructor
prt_in = string_t(["F"])
- if (.not. allocated(prt_in%chars)) call abort
- if (any(prt_in%chars .ne. "F")) call abort
+ if (.not. allocated(prt_in%chars)) STOP 19
+ if (any(prt_in%chars .ne. "F")) STOP 20
tmpac = new_prt_spec3 (string_array_container_t([ (prt_in, i=1,2) ]))
- if (.not. allocated(prt_in%chars)) call abort
- if (any(prt_in%chars .ne. "F")) call abort
+ if (.not. allocated(prt_in%chars)) STOP 21
+ if (any(prt_in%chars .ne. "F")) STOP 22
deallocate (prt_in%chars)
do j=1,n
deallocate (tmpac%comp(j)%chars)
@@ -95,11 +95,11 @@ program main
! array elemental function with an array constructor nested inside
! a structure constructor nested inside an array constructor
prt_in = string_t(["G"])
- if (.not. allocated(prt_in%chars)) call abort
- if (any(prt_in%chars .ne. "G")) call abort
+ if (.not. allocated(prt_in%chars)) STOP 23
+ if (any(prt_in%chars .ne. "G")) STOP 24
tmpaca = new_prt_spec3 ([ (string_array_container_t([ (prt_in, i=1,2) ]), j=1,2) ])
- if (.not. allocated(prt_in%chars)) call abort
- if (any(prt_in%chars .ne. "G")) call abort
+ if (.not. allocated(prt_in%chars)) STOP 25
+ if (any(prt_in%chars .ne. "G")) STOP 26
deallocate (prt_in%chars)
do j=1,n
do k=1,n
diff --git a/gcc/testsuite/gfortran.dg/derived_external_function_1.f90 b/gcc/testsuite/gfortran.dg/derived_external_function_1.f90
index 7421c4c0f22..b45eb88c136 100644
--- a/gcc/testsuite/gfortran.dg/derived_external_function_1.f90
+++ b/gcc/testsuite/gfortran.dg/derived_external_function_1.f90
@@ -23,5 +23,5 @@ end
type(t) f
write (line1, *) f()
write (line2, *) 42_4
- if (line1 .ne. line2) call abort
+ if (line1 .ne. line2) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/derived_init_1.f90 b/gcc/testsuite/gfortran.dg/derived_init_1.f90
index bdd7d3773d7..a2542b049a0 100644
--- a/gcc/testsuite/gfortran.dg/derived_init_1.f90
+++ b/gcc/testsuite/gfortran.dg/derived_init_1.f90
@@ -18,15 +18,15 @@ program test
type(s) :: x(2)
allocate(p, q(2,2))
- if (p%a /= 3) call abort()
- if (any(q(:,:)%a /= 3)) call abort()
+ if (p%a /= 3) STOP 1
+ if (any(q(:,:)%a /= 3)) STOP 2
allocate(z%p2, z%p(2:3))
- if (z%p2%a /= 3) call abort()
- if (any(z%p(:)%a /= 3)) call abort()
+ if (z%p2%a /= 3) STOP 3
+ if (any(z%p(:)%a /= 3)) STOP 4
allocate(x(1)%p2, x(1)%p(2))
- if (x(1)%p2%a /= 3) call abort()
- if (any(x(1)%p(:)%a /= 3)) call abort()
+ if (x(1)%p2%a /= 3) STOP 5
+ if (any(x(1)%p(:)%a /= 3)) STOP 6
end program test
diff --git a/gcc/testsuite/gfortran.dg/derived_init_2.f90 b/gcc/testsuite/gfortran.dg/derived_init_2.f90
index 10a16b532a2..0114999fba1 100644
--- a/gcc/testsuite/gfortran.dg/derived_init_2.f90
+++ b/gcc/testsuite/gfortran.dg/derived_init_2.f90
@@ -24,9 +24,9 @@ contains
use dt
type(drv), intent(out) :: fa
- if (any(fa%a /= [ 1, 2, 3 ])) call abort()
- if (fa%s /= "abc") call abort()
- if (associated(fa%p)) call abort()
+ if (any(fa%a /= [ 1, 2, 3 ])) STOP 1
+ if (fa%s /= "abc") STOP 2
+ if (associated(fa%p)) STOP 3
end subroutine sub
end module subs
diff --git a/gcc/testsuite/gfortran.dg/derived_init_3.f90 b/gcc/testsuite/gfortran.dg/derived_init_3.f90
index a1c4a0c7e0d..e1f25aead45 100644
--- a/gcc/testsuite/gfortran.dg/derived_init_3.f90
+++ b/gcc/testsuite/gfortran.dg/derived_init_3.f90
@@ -22,7 +22,7 @@ program main
ptr => tgt
call set_ptr (ptr)
- if (associated(ptr)) call abort()
+ if (associated(ptr)) STOP 1
contains
diff --git a/gcc/testsuite/gfortran.dg/derived_init_4.f90 b/gcc/testsuite/gfortran.dg/derived_init_4.f90
index 114975150aa..eaf593db97c 100644
--- a/gcc/testsuite/gfortran.dg/derived_init_4.f90
+++ b/gcc/testsuite/gfortran.dg/derived_init_4.f90
@@ -15,13 +15,13 @@ program test
b = g2(a)
b = g2(a)
ans = g1(a)
- if (ans%f .ne. -1) call abort
+ if (ans%f .ne. -1) STOP 1
ans = g1(a)
- if (ans%f .ne. -1) call abort
+ if (ans%f .ne. -1) STOP 2
ans = g1a(a)
- if (ans%f .ne. -1) call abort
+ if (ans%f .ne. -1) STOP 3
ans = g1a(a)
- if (ans%f .ne. -1) call abort
+ if (ans%f .ne. -1) STOP 4
b = g3(a)
b = g3(a)
contains
@@ -31,7 +31,7 @@ contains
if (res(j)%f == -1) then
res(j)%f = a%f - 1
else
- call abort
+ STOP 5
endif
enddo
end function g3
@@ -42,19 +42,19 @@ contains
if (g2(j)%f == -1) then
g2(j)%f = a%f - 1
else
- call abort
+ STOP 6
endif
enddo
end function g2
function g1(a)
type(f) :: g1, a
- if (g1%f .ne. -1 ) call abort
+ if (g1%f .ne. -1 ) STOP 7
end function
function g1a(a) result(res)
type(f) :: res, a
- if (res%f .ne. -1 ) call abort
+ if (res%f .ne. -1 ) STOP 8
end function
end program test
diff --git a/gcc/testsuite/gfortran.dg/derived_init_5.f90 b/gcc/testsuite/gfortran.dg/derived_init_5.f90
new file mode 100644
index 00000000000..b94ca39ce02
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/derived_init_5.f90
@@ -0,0 +1,24 @@
+! { dg-do run }
+! PR 59781 - this was not initialized correctly before.
+! Original test case by James Spencer.
+ implicit none
+
+ type t1
+ integer :: s
+ end type
+
+ type t2
+ type(t1) :: state = t1(1)
+ real, allocatable :: store(:)
+ end type
+
+ call test
+
+contains
+
+ subroutine test
+ type(t2) :: rng
+ if (rng%state%s /= 1) STOP 1
+ end subroutine
+
+end
diff --git a/gcc/testsuite/gfortran.dg/derived_pointer_null_1.f90 b/gcc/testsuite/gfortran.dg/derived_pointer_null_1.f90
index 3e7673f3bcd..def6998b8a1 100644
--- a/gcc/testsuite/gfortran.dg/derived_pointer_null_1.f90
+++ b/gcc/testsuite/gfortran.dg/derived_pointer_null_1.f90
@@ -15,10 +15,10 @@
real, target, dimension(10) :: rt
my_ast_obs%geopos => rt
- if (.not.associated (my_ast_obs%geopos)) call abort ()
+ if (.not.associated (my_ast_obs%geopos)) STOP 1
call get_null_ast_obs (my_ast_obs)
- if (associated (my_ast_obs%geopos)) call abort ()
+ if (associated (my_ast_obs%geopos)) STOP 2
CONTAINS
diff --git a/gcc/testsuite/gfortran.dg/derived_pointer_recursion_2.f90 b/gcc/testsuite/gfortran.dg/derived_pointer_recursion_2.f90
index 75f72d5c1e1..2eeebb18d15 100644
--- a/gcc/testsuite/gfortran.dg/derived_pointer_recursion_2.f90
+++ b/gcc/testsuite/gfortran.dg/derived_pointer_recursion_2.f90
@@ -40,6 +40,6 @@ program pr40594
am%dummy = 0
call init(ap)
- if (ap%initialized .neqv. .false.) call abort()
+ if (ap%initialized .neqv. .false.) STOP 1
END
diff --git a/gcc/testsuite/gfortran.dg/dev_null.F90 b/gcc/testsuite/gfortran.dg/dev_null.F90
index b8ba5748593..120c6c1ddf7 100644
--- a/gcc/testsuite/gfortran.dg/dev_null.F90
+++ b/gcc/testsuite/gfortran.dg/dev_null.F90
@@ -13,6 +13,6 @@
write(10,'(A)') "Hello"
rewind(10)
read(10,'(A)',end=100) foo
- call abort
+ STOP 1
100 continue
end
diff --git a/gcc/testsuite/gfortran.dg/dfloat_1.f90 b/gcc/testsuite/gfortran.dg/dfloat_1.f90
index 6971c6a1313..6c907fc3754 100644
--- a/gcc/testsuite/gfortran.dg/dfloat_1.f90
+++ b/gcc/testsuite/gfortran.dg/dfloat_1.f90
@@ -8,11 +8,11 @@ program dfloat_1
i2 = -4_2
i4 = 4_4
i8 = 10_8
- if (dfloat(i2) /= -4.d0) call abort() ! { dg-warning "non-default INTEGER" }
- if (dfloat(i4) /= 4.d0) call abort()
- if (dfloat(i8) /= 10.d0) call abort() ! { dg-warning "non-default INTEGER" }
- if (dfloat(i4*i2) /= -16.d0) call abort()
+ if (dfloat(i2) /= -4.d0) STOP 1 ! { dg-warning "non-default INTEGER" }
+ if (dfloat(i4) /= 4.d0) STOP 2
+ if (dfloat(i8) /= 10.d0) STOP 3 ! { dg-warning "non-default INTEGER" }
+ if (dfloat(i4*i2) /= -16.d0) STOP 4
- if (kind(dfloat(i4)) /= kind(1.0_8)) call abort
- if (kind(dfloat(i8)) /= kind(1.0_8)) call abort ! { dg-warning "non-default INTEGER" }
+ if (kind(dfloat(i4)) /= kind(1.0_8)) STOP 1
+ if (kind(dfloat(i8)) /= kind(1.0_8)) STOP 2! { dg-warning "non-default INTEGER" }
end program dfloat_1
diff --git a/gcc/testsuite/gfortran.dg/dim_sum_1.f90 b/gcc/testsuite/gfortran.dg/dim_sum_1.f90
index b2fb94312d3..6a41ed99d43 100644
--- a/gcc/testsuite/gfortran.dg/dim_sum_1.f90
+++ b/gcc/testsuite/gfortran.dg/dim_sum_1.f90
@@ -19,11 +19,11 @@ program summation
r1 = sum(arr,dim=1)
write (unit=c2, fmt=fmt) r1
call print_sum(1,c1)
- if (c1 /= c2) call abort
+ if (c1 /= c2) STOP 1
r2 = sum(arr,dim=2)
write (unit=c2, fmt=fmt) r2
call print_sum(2,c1)
- if (c1 /= c2) call abort
+ if (c1 /= c2) STOP 2
call print_sum(5,c1)
contains
diff --git a/gcc/testsuite/gfortran.dg/dim_sum_2.f90 b/gcc/testsuite/gfortran.dg/dim_sum_2.f90
index 6290444a81d..58a724ac43a 100644
--- a/gcc/testsuite/gfortran.dg/dim_sum_2.f90
+++ b/gcc/testsuite/gfortran.dg/dim_sum_2.f90
@@ -19,11 +19,11 @@ program summation
r1 = sum(arr,dim=1,mask=arr>23)
write (unit=c2, fmt=fmt) r1
call print_sum(1,c1)
- if (c1 /= c2) call abort
+ if (c1 /= c2) STOP 1
r2 = sum(arr,dim=2,mask=arr>23)
write (unit=c2, fmt=fmt) r2
call print_sum(2,c1)
- if (c1 /= c2) call abort
+ if (c1 /= c2) STOP 2
call print_sum(5,c1)
contains
diff --git a/gcc/testsuite/gfortran.dg/dim_sum_3.f90 b/gcc/testsuite/gfortran.dg/dim_sum_3.f90
index 2661b3700fd..b6c782439ed 100644
--- a/gcc/testsuite/gfortran.dg/dim_sum_3.f90
+++ b/gcc/testsuite/gfortran.dg/dim_sum_3.f90
@@ -19,11 +19,11 @@ program summation
r1 = sum(arr,dim=1,mask=.true.)
write (unit=c2, fmt=fmt) r1
call print_sum(1,c1)
- if (c1 /= c2) call abort
+ if (c1 /= c2) STOP 1
r2 = sum(arr,dim=2,mask=.true.)
write (unit=c2, fmt=fmt) r2
call print_sum(2,c1)
- if (c1 /= c2) call abort
+ if (c1 /= c2) STOP 2
call print_sum(5,c1)
contains
diff --git a/gcc/testsuite/gfortran.dg/direct_io_10.f b/gcc/testsuite/gfortran.dg/direct_io_10.f
index c470272086d..a874c6fdb58 100644
--- a/gcc/testsuite/gfortran.dg/direct_io_10.f
+++ b/gcc/testsuite/gfortran.dg/direct_io_10.f
@@ -29,18 +29,18 @@
write (48,iostat = istat, rec = 3) bda1(nf1:nf10:nf2),
$ bda1(nf4:nf3), bda1(nf2:nf10:nf2)
if ( istat .ne. 0) then
- call abort
+ STOP 1
endif
istat = -314
read (48,iostat = istat, rec = np2+1) bda(nf1:nf9:nf2),
$ bda(nf4:nf3), bda(nf2:nf10:nf2)
if ( istat .ne. 0) then
- call abort
+ STOP 2
endif
do j1 = 1,10
bval = bda1(j1)
- if (bda(j1) .ne. bval) call abort
+ if (bda(j1) .ne. bval) STOP 3
enddo
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/direct_io_11.f90 b/gcc/testsuite/gfortran.dg/direct_io_11.f90
index a2b8afc358f..ad18d83936c 100644
--- a/gcc/testsuite/gfortran.dg/direct_io_11.f90
+++ b/gcc/testsuite/gfortran.dg/direct_io_11.f90
@@ -24,32 +24,32 @@ program da_good_now
read( 10, rec = 1, fmt = '( f6.4 )' ) a, b
!write( *, '( "partial record 2", t25, 2( f6.4, 1x ) )' ) a, b
- if (a /= 1.1111 .and. b /= 2.2222) call abort()
+ if (a /= 1.1111 .and. b /= 2.2222) STOP 1
a = -1.0
b = -1.0
read( 10, rec = 1, fmt = '( f12.4, /, f12.4 )' ) a, b
!write( *, '( "full record 1", t25, 2( f6.4, 1x ) )' ) a, b
- if (a /= 1.1111 .and. b /= 2.2222) call abort()
+ if (a /= 1.1111 .and. b /= 2.2222) STOP 2
a = -1.0
b = -1.0
read( 10, rec = 1, fmt = '( f12.4 )' ) a, b
!write( *, '( "full record 2", t25, 2( f6.4, 1x ) )' ) a, b
- if (a /= 1.1111 .and. b /= 2.2222) call abort()
+ if (a /= 1.1111 .and. b /= 2.2222) STOP 3
a = -1.0
b = -1.0
read( 10, rec = 1, fmt = '( f6.4, 6x, /, f6.4, 6x )' ) a, b
!write( *, '( "full record with 6x", t25, 2( f6.4, 1x ) )' ) a, b
- if (a /= 1.1111 .and. b /= 2.2222) call abort()
+ if (a /= 1.1111 .and. b /= 2.2222) STOP 4
a = -1.0
b = -1.0
read( 10, rec = 1, fmt = '( f6.4 )' ) a
read( 10, rec = 2, fmt = '( f6.4 )' ) b
!write( *, '( "record at a time", t25, 2( f6.4, 1x ) )' ) a, b
- if (a /= 1.1111 .and. b /= 2.2222) call abort()
+ if (a /= 1.1111 .and. b /= 2.2222) STOP 5
close( 10, status="delete")
end program da_good_now
diff --git a/gcc/testsuite/gfortran.dg/direct_io_12.f90 b/gcc/testsuite/gfortran.dg/direct_io_12.f90
index 53367027242..21317ada646 100644
--- a/gcc/testsuite/gfortran.dg/direct_io_12.f90
+++ b/gcc/testsuite/gfortran.dg/direct_io_12.f90
@@ -21,11 +21,11 @@ end do
do i = 1, 10
read(99,rec=i) dummy
- if (any (dummy /= vec1(:,i))) call abort()
+ if (any (dummy /= vec1(:,i))) STOP 1
read(99,rec=i+10) dummy
- if (any (dummy /= vec1(:,i+10))) call abort()
+ if (any (dummy /= vec1(:,i+10))) STOP 2
read(99,rec=i+20) dummy
- if (any (dummy /= vec1(:,i+20))) call abort() ! << aborted here for rec = 21
+ if (any (dummy /= vec1(:,i+20))) STOP 3 ! << aborted here for rec = 21
end do
close(99, status='delete')
diff --git a/gcc/testsuite/gfortran.dg/direct_io_2.f90 b/gcc/testsuite/gfortran.dg/direct_io_2.f90
index 8e18052ff01..2ee47651505 100644
--- a/gcc/testsuite/gfortran.dg/direct_io_2.f90
+++ b/gcc/testsuite/gfortran.dg/direct_io_2.f90
@@ -32,7 +32,7 @@
IREC = IREC + 2
IRECCK = IRECCK + 2
READ(7, REC = IREC) IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,IVON21, IVON22, IVON31, IVON32, IVON33, IVON34, IVON55, IVON56
- IF (IRECN .NE. IRECCK) CALL ABORT
+ IF (IRECN .NE. IRECCK) STOP 1
4134 CONTINUE
IRECCK = 216
IRECN = 0
@@ -41,7 +41,7 @@
IREC = IREC - 2
IRECCK = IRECCK - 2
READ(7, REC = IREC) IPROG, IFILE, ITOTR, IRLGN, IRECN, IEOF,IVON21, IVON22, IVON31, IVON32, IVON33, IVON34, IVON55, IVON56
- IF (IRECN .NE. IRECCK) CALL ABORT
+ IF (IRECN .NE. IRECCK) STOP 2
4135 CONTINUE
CLOSE(7, STATUS='DELETE')
STOP
diff --git a/gcc/testsuite/gfortran.dg/direct_io_3.f90 b/gcc/testsuite/gfortran.dg/direct_io_3.f90
index 03cbf39b0bf..ebb8ef3b9df 100644
--- a/gcc/testsuite/gfortran.dg/direct_io_3.f90
+++ b/gcc/testsuite/gfortran.dg/direct_io_3.f90
@@ -9,12 +9,12 @@
C = (120.0,240.0)
WRITE(9,REC=1)C
READ(9,REC=1)D
- if (c /= d) call abort()
+ if (c /= d) STOP 1
E = (120.0,240.0)
WRITE(9,REC=1)E
READ(9,REC=1)F
- if (E /= F) call abort()
+ if (E /= F) STOP 2
CLOSE(UNIT=9,STATUS='DELETE')
END
diff --git a/gcc/testsuite/gfortran.dg/direct_io_4.f90 b/gcc/testsuite/gfortran.dg/direct_io_4.f90
index 05079673514..93fa4bbf9f1 100644
--- a/gcc/testsuite/gfortran.dg/direct_io_4.f90
+++ b/gcc/testsuite/gfortran.dg/direct_io_4.f90
@@ -10,13 +10,13 @@ program main
write(10,rec=1) a
read (10,rec=2, iostat=ios) b
- if (ios == 0) call abort
+ if (ios == 0) STOP 1
read (10, rec=82641, iostat=ios) b ! This used to cause a segfault
- if (ios == 0) call abort
+ if (ios == 0) STOP 2
read(10, rec=1, iostat=ios) b
- if (ios /= 0) call abort
- if (a /= b) call abort
+ if (ios /= 0) STOP 3
+ if (a /= b) STOP 4
end program main
diff --git a/gcc/testsuite/gfortran.dg/direct_io_5.f90 b/gcc/testsuite/gfortran.dg/direct_io_5.f90
index 62139984452..7fa7120b59e 100644
--- a/gcc/testsuite/gfortran.dg/direct_io_5.f90
+++ b/gcc/testsuite/gfortran.dg/direct_io_5.f90
@@ -24,9 +24,9 @@ program testdirect
do j=1,100
read(unit=15, rec=a(j), iostat=ier) k
if (ier.ne.0) then
- call abort()
+ STOP 1
else
- if (a(j) /= k) call abort()
+ if (a(j) /= k) STOP 2
endif
enddo
close(unit=15, status="delete")
diff --git a/gcc/testsuite/gfortran.dg/direct_io_6.f90 b/gcc/testsuite/gfortran.dg/direct_io_6.f90
index d090704edfa..0c29d2953fb 100644
--- a/gcc/testsuite/gfortran.dg/direct_io_6.f90
+++ b/gcc/testsuite/gfortran.dg/direct_io_6.f90
@@ -11,6 +11,6 @@
read(76, rec=1) as_read, byte, byte, byte, byte
read(76, rec=2, err=3) as_read, byte, byte, byte, byte
stop
- 3 call abort()
+ 3 STOP 1
end program test
diff --git a/gcc/testsuite/gfortran.dg/direct_io_7.f90 b/gcc/testsuite/gfortran.dg/direct_io_7.f90
index ff116b0a109..18ffb2a55a6 100644
--- a/gcc/testsuite/gfortran.dg/direct_io_7.f90
+++ b/gcc/testsuite/gfortran.dg/direct_io_7.f90
@@ -11,20 +11,20 @@ program test
msg = " "
backspace (95,iostat=ios,iomsg=msg)
if (ios == 0 .or. &
- msg /= "Cannot BACKSPACE a file opened for DIRECT access") call abort
+ msg /= "Cannot BACKSPACE a file opened for DIRECT access") STOP 1
ios = 0
msg = " "
endfile (95,iostat=ios,iomsg=msg)
if (ios == 0 .or. &
msg /= "Cannot perform ENDFILE on a file opened for DIRECT access") &
- call abort
+ STOP 2
ios = 0
msg = " "
rewind (95,iostat=ios,iomsg=msg)
if (ios == 0 .or. &
- msg /= "Cannot REWIND a file opened for DIRECT access ") call abort
+ msg /= "Cannot REWIND a file opened for DIRECT access ") STOP 3
close (95)
end program test
diff --git a/gcc/testsuite/gfortran.dg/direct_io_8.f90 b/gcc/testsuite/gfortran.dg/direct_io_8.f90
index 87a8a6b54e3..e0514308650 100644
--- a/gcc/testsuite/gfortran.dg/direct_io_8.f90
+++ b/gcc/testsuite/gfortran.dg/direct_io_8.f90
@@ -10,15 +10,15 @@ program main
open(11,file="foo_direct_io_8.dat")
! Try a direct access read on a formatted sequential rile
READ (11, REC = I, ERR = 99) TEMP_CHANGES
- call abort
+ STOP 1
99 continue
! Variant 2: ir is ok, but does not jump to 99
READ (11, REC = I, IOSTAT = IR, ERR = 98) TEMP_CHANGES
- call abort
+ STOP 2
98 continue
if(ir == 0) then
- call abort
+ STOP 3
end if
close(11,status="delete")
end program main
diff --git a/gcc/testsuite/gfortran.dg/direct_io_9.f b/gcc/testsuite/gfortran.dg/direct_io_9.f
index bdb40453a6f..9128244625f 100644
--- a/gcc/testsuite/gfortran.dg/direct_io_9.f
+++ b/gcc/testsuite/gfortran.dg/direct_io_9.f
@@ -19,21 +19,21 @@
$ action='readwrite')
- if (istat /= 0) call abort
+ if (istat /= 0) STOP 1
bda = 'xxxxxxxxx'
bda1 = 'yyyyyyyyy'
write (48,iostat = istat, rec = 10) bda1(4:3)
if ( istat .ne. 0) then
- call abort
+ STOP 2
endif
istat = -314
read (48,iostat = istat, rec=10) bda(4:3)
if ( istat .ne. 0) then
- call abort
+ STOP 3
endif
- if (any(bda1.ne.'yyyyyyyyy')) call abort
- if (any(bda.ne.'xxxxxxxxx')) call abort
+ if (any(bda1.ne.'yyyyyyyyy')) STOP 4
+ if (any(bda.ne.'xxxxxxxxx')) STOP 5
end
diff --git a/gcc/testsuite/gfortran.dg/do_1.f90 b/gcc/testsuite/gfortran.dg/do_1.f90
index b1db8c6fe27..f98eb534847 100644
--- a/gcc/testsuite/gfortran.dg/do_1.f90
+++ b/gcc/testsuite/gfortran.dg/do_1.f90
@@ -10,34 +10,34 @@ program do_1
do i = HUGE(i) - 10, HUGE(i), 2
j = j + 1
end do
- if (j .ne. 6) call abort
+ if (j .ne. 6) STOP 1
j = 0
do i = HUGE(i) - 9, HUGE(i), 2
j = j + 1
end do
- if (j .ne. 5) call abort
+ if (j .ne. 5) STOP 2
! Same again, but unknown loop step
- if (test1(10, 1) .ne. 11) call abort
- if (test1(10, 2) .ne. 6) call abort
- if (test1(9, 2) .ne. 5) call abort
+ if (test1(10, 1) .ne. 11) STOP 3
+ if (test1(10, 2) .ne. 6) STOP 4
+ if (test1(9, 2) .ne. 5) STOP 5
! Zero iterations
j = 0
do i = 1, 0, 1 ! { dg-warning "executed zero times" }
j = j + 1
end do
- if (j .ne. 0) call abort
+ if (j .ne. 0) STOP 6
j = 0
do i = 1, 0, 2 ! { dg-warning "executed zero times" }
j = j + 1
end do
- if (j .ne. 0) call abort
+ if (j .ne. 0) STOP 7
j = 0
do i = 1, 2, -1 ! { dg-warning "executed zero times" }
j = j + 1
end do
- if (j .ne. 0) call abort
+ if (j .ne. 0) STOP 8
call test2 (0, 1)
call test2 (0, 2)
call test2 (2, -1)
@@ -48,7 +48,7 @@ program do_1
do i = -HUGE(i), -HUGE(i), 10
j = j + 1
end do
- if (j .ne. 1) call abort
+ if (j .ne. 1) STOP 9
contains
! Returns the number of iterations performed.
function test1(r, step)
@@ -70,6 +70,6 @@ subroutine test2 (lim, step)
do n = 1, lim, step
k = k + 1
end do
- if (k .ne. 0) call abort
+ if (k .ne. 0) STOP 10
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.dg/do_3.F90 b/gcc/testsuite/gfortran.dg/do_3.F90
index 0f2c315f874..83b084ede44 100644
--- a/gcc/testsuite/gfortran.dg/do_3.F90
+++ b/gcc/testsuite/gfortran.dg/do_3.F90
@@ -8,8 +8,8 @@ program test
#define TEST_LOOP(var,from,to,step,total,test,final) \
count = 0 ; do var = from, to, step ; count = count + 1 ; end do ; \
- if (count /= total) call abort ; \
- if (test (from, to, step, final) /= total) call abort
+ if (count /= total) STOP 1; \
+ if (test (from, to, step, final) /= total) STOP 2
! Integer loops
TEST_LOOP(i, 0, 0, 1, 1, test_i, 1)
@@ -81,7 +81,7 @@ contains
do i = from, to, step
res = res + 1
end do
- if (i /= final) call abort
+ if (i /= final) STOP 3
end function test_i1
function test_i (from, to, step, final) result(res)
@@ -93,7 +93,7 @@ contains
do i = from, to, step
res = res + 1
end do
- if (i /= final) call abort
+ if (i /= final) STOP 4
end function test_i
function test_r (from, to, step, final) result(res)
diff --git a/gcc/testsuite/gfortran.dg/do_concurrent_2.f90 b/gcc/testsuite/gfortran.dg/do_concurrent_2.f90
index b059356c719..f9a6879fbed 100644
--- a/gcc/testsuite/gfortran.dg/do_concurrent_2.f90
+++ b/gcc/testsuite/gfortran.dg/do_concurrent_2.f90
@@ -14,11 +14,11 @@ do concurrent (i=1:5, j=1:5, (i/=j))
A(i,j) = i*j
end do
-if (any (A(:,1) /= [0, 2, 3, 4, 0])) call abort()
-if (any (A(:,2) /= [2, 0, 6, 8, 0])) call abort()
-if (any (A(:,3) /= [3, 6, 0, 12, 0])) call abort()
-if (any (A(:,4) /= [4, 8, 12, 0, 0])) call abort()
-if (any (A(:,5) /= [5, 10, 15, 20, 0])) call abort()
+if (any (A(:,1) /= [0, 2, 3, 4, 0])) STOP 1
+if (any (A(:,2) /= [2, 0, 6, 8, 0])) STOP 2
+if (any (A(:,3) /= [3, 6, 0, 12, 0])) STOP 3
+if (any (A(:,4) /= [4, 8, 12, 0, 0])) STOP 4
+if (any (A(:,5) /= [5, 10, 15, 20, 0])) STOP 5
A = -99
@@ -31,10 +31,10 @@ do concurrent (i = 1 : 5)
end if
end do
-if (any (A(:,1) /= [-99, 2, 3, 4, 5])) call abort ()
-if (any (A(:,2) /= [ 2, -99, 6, 8, 10])) call abort ()
-if (any (A(:,3) /= [ 3, 6, -99, 12, 15])) call abort ()
-if (any (A(:,4) /= [ 4, 8, 12, -99, 20])) call abort ()
-if (any (A(:,5) /= [-99, -99, -99, -99, -5])) call abort ()
+if (any (A(:,1) /= [-99, 2, 3, 4, 5])) STOP 6
+if (any (A(:,2) /= [ 2, -99, 6, 8, 10])) STOP 7
+if (any (A(:,3) /= [ 3, 6, -99, 12, 15])) STOP 8
+if (any (A(:,4) /= [ 4, 8, 12, -99, 20])) STOP 9
+if (any (A(:,5) /= [-99, -99, -99, -99, -5])) STOP 10
end
diff --git a/gcc/testsuite/gfortran.dg/do_concurrent_4.f90 b/gcc/testsuite/gfortran.dg/do_concurrent_4.f90
index 9c2409ecb00..8f8338aa443 100644
--- a/gcc/testsuite/gfortran.dg/do_concurrent_4.f90
+++ b/gcc/testsuite/gfortran.dg/do_concurrent_4.f90
@@ -20,7 +20,7 @@ contains
subroutine check_err(a, s)
real, dimension(:,:), intent(in) :: a
real, intent(in) :: s
- if (abs(sum(a) - s) > 1e-5) call abort
+ if (abs(sum(a) - s) > 1e-5) STOP 1
end subroutine check_err
end module test_mod
diff --git a/gcc/testsuite/gfortran.dg/do_corner_warn.f90 b/gcc/testsuite/gfortran.dg/do_corner_warn.f90
index 07484d3ca7b..d5293376a25 100644
--- a/gcc/testsuite/gfortran.dg/do_corner_warn.f90
+++ b/gcc/testsuite/gfortran.dg/do_corner_warn.f90
@@ -10,13 +10,13 @@ program do_1
do i = HUGE(i) - 10, HUGE(i), 1 ! { dg-warning "is undefined as it overflows" }
j = j + 1
end do
- if (j .ne. 11) call abort
+ if (j .ne. 11) STOP 1
! limit=-HUGE(i)-1, step -1
j = 0
do i = -HUGE(i) + 10 - 1, -HUGE(i) - 1, -1 ! { dg-warning "is undefined as it underflows" }
j = j + 1
end do
- if (j .ne. 11) call abort
+ if (j .ne. 11) STOP 2
end program
diff --git a/gcc/testsuite/gfortran.dg/do_iterator_2.f90 b/gcc/testsuite/gfortran.dg/do_iterator_2.f90
index 7422b9eb575..040865c2f23 100644
--- a/gcc/testsuite/gfortran.dg/do_iterator_2.f90
+++ b/gcc/testsuite/gfortran.dg/do_iterator_2.f90
@@ -18,8 +18,8 @@ subroutine something
i = 1
n = 5
line = 'PZ0R1'
- if (internal (1)) call abort ()
- if (m .ne. 4) call abort ()
+ if (internal (1)) STOP 1
+ if (m .ne. 4) STOP 2
contains
logical function internal (j)
intent(in) j
diff --git a/gcc/testsuite/gfortran.dg/dollar_edit_descriptor_1.f b/gcc/testsuite/gfortran.dg/dollar_edit_descriptor_1.f
index af22c453636..4029ff2db65 100644
--- a/gcc/testsuite/gfortran.dg/dollar_edit_descriptor_1.f
+++ b/gcc/testsuite/gfortran.dg/dollar_edit_descriptor_1.f
@@ -9,5 +9,5 @@
read (42,'(A)') c
close (42)
- if (c /= 'abcde') call abort
+ if (c /= 'abcde') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/dollar_edit_descriptor_2.f b/gcc/testsuite/gfortran.dg/dollar_edit_descriptor_2.f
index 4973d87ac0e..437f4dfd811 100644
--- a/gcc/testsuite/gfortran.dg/dollar_edit_descriptor_2.f
+++ b/gcc/testsuite/gfortran.dg/dollar_edit_descriptor_2.f
@@ -5,5 +5,5 @@
character*20 line
line = '1234567890ABCDEFGHIJ'
write (line, '(A$)') 'asdf'
- if (line.ne.'asdf') call abort()
+ if (line.ne.'asdf') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/dos_eol.f b/gcc/testsuite/gfortran.dg/dos_eol.f
index 3a22a14b143..72926bf06bc 100644
--- a/gcc/testsuite/gfortran.dg/dos_eol.f
+++ b/gcc/testsuite/gfortran.dg/dos_eol.f
@@ -6,7 +6,7 @@
write (10,'(2A)') '1', achar(13)
rewind (10)
read (10,*) i
- if (i .ne. 1) call abort
+ if (i .ne. 1) STOP 1
close (10)
open (10,status='scratch')
@@ -15,5 +15,5 @@
rewind (10)
read (10,'(I4)') i
read (10,'(I5)') j
- if ((i .ne. 1) .or. (j .ne. 2)) call abort
+ if ((i .ne. 1) .or. (j .ne. 2)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/dot_product_1.f03 b/gcc/testsuite/gfortran.dg/dot_product_1.f03
index 45d658526d5..954f24d09e8 100644
--- a/gcc/testsuite/gfortran.dg/dot_product_1.f03
+++ b/gcc/testsuite/gfortran.dg/dot_product_1.f03
@@ -6,6 +6,6 @@
INTEGER, PARAMETER :: p = DOT_PRODUCT(a, a)
INTEGER, PARAMETER :: e = DOT_PRODUCT(SHAPE(1), SHAPE(1))
- IF (p /= n) CALL abort()
- IF (e /= 0) CALL abort()
+ IF (p /= n) STOP 1
+ IF (e /= 0) STOP 2
END
diff --git a/gcc/testsuite/gfortran.dg/dot_product_2.f90 b/gcc/testsuite/gfortran.dg/dot_product_2.f90
index d3a037db73a..f40122b8d13 100644
--- a/gcc/testsuite/gfortran.dg/dot_product_2.f90
+++ b/gcc/testsuite/gfortran.dg/dot_product_2.f90
@@ -13,24 +13,24 @@
!if (DOT_PRODUCT ((/ (1.0, 2.0), (2.0, 3.0) /), (/ (1.0, 1.0), (1.0, 4.0) /)) &
! /= SUM (CONJG ((/ (1.0, 2.0), (2.0, 3.0) /))*(/ (1.0, 1.0), (1.0, 4.0) /))) &
-! call abort ()
+! STOP 1
!
!if (ANY (MATMUL ((/ (1.0, 2.0), (2.0, 3.0) /), &
! RESHAPE ((/ (1.0, 1.0), (1.0, 4.0) /),(/2, 1/))) /= &
! SUM ((/ (1.0, 2.0), (2.0, 3.0) /)*(/ (1.0, 1.0), (1.0, 4.0) /)))) &
-! call abort ()
+! STOP 2
if (DOT_PRODUCT ((/ (1.0, 2.0), (2.0, 3.0) /), (/ (1.0, 1.0), (1.0, 4.0) /)) &
/= CONJG (cmplx(1.0, 2.0)) * cmplx(1.0, 1.0) &
+ CONJG (cmplx(2.0, 3.0)) * cmplx(1.0, 4.0)) &
- call abort ()
+ STOP 3
if (ANY (MATMUL ((/ (1.0, 2.0), (2.0, 3.0) /), &
RESHAPE ((/ (1.0, 1.0), (1.0, 4.0) /),(/2, 1/))) &
/= cmplx(1.0, 2.0) * cmplx(1.0, 1.0) &
+ cmplx(2.0, 3.0) * cmplx(1.0, 4.0))) &
- call abort ()
+ STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/dot_product_4.f90 b/gcc/testsuite/gfortran.dg/dot_product_4.f90
index fe632027389..d2fd77335f4 100644
--- a/gcc/testsuite/gfortran.dg/dot_product_4.f90
+++ b/gcc/testsuite/gfortran.dg/dot_product_4.f90
@@ -5,9 +5,9 @@ program p
real, parameter :: b(0) = 1
complex, parameter :: c(0) = 1
logical, parameter :: d(0) = .true.
- if (dot_product(a,a) /= 0) call abort
- if (dot_product(b,b) /= 0) call abort
- if (dot_product(c,c) /= 0) call abort
- if (dot_product(d,d) .neqv. .false.) call abort
+ if (dot_product(a,a) /= 0) STOP 1
+ if (dot_product(b,b) /= 0) STOP 2
+ if (dot_product(c,c) /= 0) STOP 3
+ if (dot_product(d,d) .neqv. .false.) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/dshift_1.F90 b/gcc/testsuite/gfortran.dg/dshift_1.F90
index ce2a5f43204..ff0d8adfff6 100644
--- a/gcc/testsuite/gfortran.dg/dshift_1.F90
+++ b/gcc/testsuite/gfortran.dg/dshift_1.F90
@@ -24,10 +24,10 @@
IOR(SHIFTL(I,BIT_SIZE(I)-SHIFT),SHIFTR(J,SHIFT))
#define CHECK(I,J,SHIFT) \
- if (dshiftl(I,J,SHIFT) /= RESL(I,J,SHIFT)) call abort ; \
- if (dshiftr(I,J,SHIFT) /= RESR(I,J,SHIFT)) call abort ; \
- if (run_dshiftl(I,J,SHIFT) /= RESL(I,J,SHIFT)) call abort ; \
- if (run_dshiftr(I,J,SHIFT) /= RESR(I,J,SHIFT)) call abort
+ if (dshiftl(I,J,SHIFT) /= RESL(I,J,SHIFT)) STOP 1; \
+ if (dshiftr(I,J,SHIFT) /= RESR(I,J,SHIFT)) STOP 2; \
+ if (run_dshiftl(I,J,SHIFT) /= RESL(I,J,SHIFT)) STOP 3; \
+ if (run_dshiftr(I,J,SHIFT) /= RESR(I,J,SHIFT)) STOP 4
CHECK(0_1,0_1,0)
CHECK(0_1,0_1,1)
diff --git a/gcc/testsuite/gfortran.dg/dshift_2.F90 b/gcc/testsuite/gfortran.dg/dshift_2.F90
index f0cfff68069..8598bd326e8 100644
--- a/gcc/testsuite/gfortran.dg/dshift_2.F90
+++ b/gcc/testsuite/gfortran.dg/dshift_2.F90
@@ -12,10 +12,10 @@
IOR(SHIFTL(I,BIT_SIZE(I)-SHIFT),SHIFTR(J,SHIFT))
#define CHECK(I,J,SHIFT) \
- if (dshiftl(I,J,SHIFT) /= RESL(I,J,SHIFT)) call abort ; \
- if (dshiftr(I,J,SHIFT) /= RESR(I,J,SHIFT)) call abort ; \
- if (run_dshiftl(I,J,SHIFT) /= RESL(I,J,SHIFT)) call abort ; \
- if (run_dshiftr(I,J,SHIFT) /= RESR(I,J,SHIFT)) call abort
+ if (dshiftl(I,J,SHIFT) /= RESL(I,J,SHIFT)) STOP 1; \
+ if (dshiftr(I,J,SHIFT) /= RESR(I,J,SHIFT)) STOP 2; \
+ if (run_dshiftl(I,J,SHIFT) /= RESL(I,J,SHIFT)) STOP 3; \
+ if (run_dshiftr(I,J,SHIFT) /= RESR(I,J,SHIFT)) STOP 4
CHECK(0_16,0_16,0)
CHECK(0_16,0_16,1)
diff --git a/gcc/testsuite/gfortran.dg/dtio_1.f90 b/gcc/testsuite/gfortran.dg/dtio_1.f90
index f5b526393f3..7e5d1669ace 100644
--- a/gcc/testsuite/gfortran.dg/dtio_1.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_1.f90
@@ -46,7 +46,7 @@ CONTAINS
if (iostat.ne.0) iomsg = "Fail PWF DTzeroth"
endif
if (iotype.eq."DTtwo") then
- if (size(vlist).ne.2) call abort
+ if (size(vlist).ne.2) STOP 1
WRITE(udfmt,'(A,A,I1,A,I1,A)') '(', 'A', vlist(1),',I', vlist(2), ')'
WRITE(unit, FMT='(A8,I2)') dtv%name, dtv%age
if (iostat.ne.0) iomsg = "Fail PWF DTtwo"
@@ -91,7 +91,7 @@ CONTAINS
if (iostat.ne.0) iomsg = "Fail PWF DTzeroth"
endif
if (iotype.eq."DTtwo") then
- if (size(vlist).ne.2) call abort
+ if (size(vlist).ne.2) STOP 2
WRITE(udfmt,'(A,A,I1,A,I1,A)') '(', 'A', vlist(1),',I', vlist(2), ')'
READ(unit, FMT='(A8,I2)') dtv%name, dtv%age
if (iostat.ne.0) iomsg = "Fail PWF DTtwo"
@@ -129,12 +129,12 @@ PROGRAM test
astring = "FAILURE"
write (10, "(DT'zeroth',3x, DT'three'(11,4,10),11x,DT'two'(8,2))", &
& iostat=myiostat, iomsg=astring) member, chairman, member
- if (myiostat.ne.0) call abort
- if (astring.ne."SUCCESS") call abort
+ if (myiostat.ne.0) STOP 3
+ if (astring.ne."SUCCESS") STOP 4
astring = "FAILURE"
write (10, *, iostat=myiostat, iomsg=astring) member, chairman, member
- if (myiostat.ne.0) call abort
- if (astring.ne."SUCCESS") call abort
+ if (myiostat.ne.0) STOP 5
+ if (astring.ne."SUCCESS") STOP 6
write(10,*) ! See note below
rewind(10)
chairman%name="bogus1"
@@ -143,10 +143,10 @@ PROGRAM test
member%age=66
astring = "FAILURE"
read(10,"(DT'zeroth',3x, DT'three'(11,4,10),11x,DT'two'(8,2))") member, chairman, member
- if (member%name.ne."George") call abort
- if (chairman%name.ne." Charlie") call abort
- if (member%age.ne.42) call abort
- if (chairman%age.ne.62) call abort
+ if (member%name.ne."George") STOP 7
+ if (chairman%name.ne." Charlie") STOP 8
+ if (member%age.ne.42) STOP 9
+ if (chairman%age.ne.62) STOP 10
chairman%name="bogus1"
chairman%age=99
member%name="bogus2"
@@ -156,9 +156,9 @@ PROGRAM test
! The user defined procedure reads to the end of the line/file, then finalizing the parent
! reads past, so we wrote a blank line above. User needs to address these nuances in their
! procedures. (subject to interpretation)
- if (astring.ne."SUCCESS") call abort
- if (member%name.ne."George") call abort
- if (chairman%name.ne."Charlie") call abort
- if (member%age.ne.42) call abort
- if (chairman%age.ne.62) call abort
+ if (astring.ne."SUCCESS") STOP 11
+ if (member%name.ne."George") STOP 12
+ if (chairman%name.ne."Charlie") STOP 13
+ if (member%age.ne.42) STOP 14
+ if (chairman%age.ne.62) STOP 15
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/dtio_10.f90 b/gcc/testsuite/gfortran.dg/dtio_10.f90
index 6ab6c3e68b4..9ca20ab2784 100644
--- a/gcc/testsuite/gfortran.dg/dtio_10.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_10.f90
@@ -22,6 +22,6 @@ program test1
read (10, fmt='(dt)', advance='no', size=thesize, iostat=ios, &
& iomsg=errormsg) i, udt1
- if (ios.ne.5006) call abort
- if (errormsg(27:47).ne."intrinsic type passed") call abort
+ if (ios.ne.5006) STOP 1
+ if (errormsg(27:47).ne."intrinsic type passed") STOP 2
end program test1
diff --git a/gcc/testsuite/gfortran.dg/dtio_12.f90 b/gcc/testsuite/gfortran.dg/dtio_12.f90
index cf1bfe38e2f..54b10cbfc0c 100644
--- a/gcc/testsuite/gfortran.dg/dtio_12.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_12.f90
@@ -58,23 +58,23 @@ end module
call baby%write_formatted(10, "abcd", v, istat, msg) ! Call the dtio proc directly
rewind (10)
read (10, *) msg
- if (trim (msg) .ne. "99") call abort
+ if (trim (msg) .ne. "99") STOP 1
rewind (10)
baby%i = 42
write (10,"(DT)") baby ! Call the dtio proc via the library
rewind (10)
read (10, *) msg
- if (trim (msg) .ne. "42") call abort
+ if (trim (msg) .ne. "42") STOP 2
rewind (10)
write (10,"(DT)") child (77) ! The original testcase
rewind (10)
read (10, *) msg
- if (trim (msg) .ne. "77") call abort
+ if (trim (msg) .ne. "77") STOP 3
rewind (10)
write (10,40) child (77) ! Modified using format label
40 format(DT)
rewind (10)
read (10, *) msg
- if (trim (msg) .ne. "77") call abort
+ if (trim (msg) .ne. "77") STOP 4
close(10)
end
diff --git a/gcc/testsuite/gfortran.dg/dtio_14.f90 b/gcc/testsuite/gfortran.dg/dtio_14.f90
index 16d5b1e40c9..50bdd53b7c1 100644
--- a/gcc/testsuite/gfortran.dg/dtio_14.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_14.f90
@@ -47,18 +47,18 @@ PROGRAM test
answer = chairman
! KIND=1 test
write (str1, *) chairman
- if (trim(str1).ne." Charlie 62") call abort
+ if (trim(str1).ne." Charlie 62") STOP 1
chairman%name="Bogus"
chairman%age=99
read (str1, *) chairman
- if (chairman%name.ne.answer%name) call abort
- if (chairman%age.ne.answer%age) call abort
+ if (chairman%name.ne.answer%name) STOP 2
+ if (chairman%age.ne.answer%age) STOP 3
! KIND=4 test
write (str4, *) chairman
- if (trim(str4).ne.4_" Charlie 62") call abort
+ if (trim(str4).ne.4_" Charlie 62") STOP 4
chairman%name="Bogus"
chairman%age=99
read (str4, *) chairman
- if (chairman%name.ne.answer%name) call abort
- if (chairman%age.ne.answer%age) call abort
+ if (chairman%name.ne.answer%name) STOP 5
+ if (chairman%age.ne.answer%age) STOP 6
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/dtio_15.f90 b/gcc/testsuite/gfortran.dg/dtio_15.f90
index 776f442a465..1e0c4caa962 100644
--- a/gcc/testsuite/gfortran.dg/dtio_15.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_15.f90
@@ -29,5 +29,5 @@ program p
integer :: istat
character(len=256) :: imsg = ""
write( msg, "(DT)", iostat=istat) s
- if (istat /= 5018) call abort
+ if (istat /= 5018) STOP 1
end program p
diff --git a/gcc/testsuite/gfortran.dg/dtio_16.f90 b/gcc/testsuite/gfortran.dg/dtio_16.f90
index 0f462d5c463..eaabfed5de0 100644
--- a/gcc/testsuite/gfortran.dg/dtio_16.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_16.f90
@@ -69,5 +69,5 @@ PROGRAM test
chairman%age=62
inquire(iolength=rl) rl, kl, chairman, rl, chairman, tl
- if (rl.ne.64) call abort
+ if (rl.ne.64) STOP 1
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/dtio_17.f90 b/gcc/testsuite/gfortran.dg/dtio_17.f90
index 85794d7b1eb..be4f25177e1 100644
--- a/gcc/testsuite/gfortran.dg/dtio_17.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_17.f90
@@ -76,6 +76,6 @@ PROGRAM test
!print *, chairman
read(28, '(i10,i10,DT,i15,DT,i12)', advance='no', size=thesize) rl, &
& kl, chairman, rl, chairman, tl
- if (thesize.ne.91) call abort
+ if (thesize.ne.91) STOP 1
close(28)
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/dtio_19.f90 b/gcc/testsuite/gfortran.dg/dtio_19.f90
index f4d375748ec..b93e19ed0ae 100644
--- a/gcc/testsuite/gfortran.dg/dtio_19.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_19.f90
@@ -61,8 +61,8 @@ program p
use object_interface
call assert (non_abstract_child1 (99))
- if (trim (buffer(1)) .ne. "write_formatted1 => 99") call abort
+ if (trim (buffer(1)) .ne. "write_formatted1 => 99") STOP 1
call assert (non_abstract_child2 (42.0))
- if (trim (buffer(1)) .ne. "write_formatted2 => 42.0") call abort
+ if (trim (buffer(1)) .ne. "write_formatted2 => 42.0") STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/dtio_2.f90 b/gcc/testsuite/gfortran.dg/dtio_2.f90
index 2041c5ec608..cc8cdfd3037 100644
--- a/gcc/testsuite/gfortran.dg/dtio_2.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_2.f90
@@ -49,23 +49,23 @@ program test
chairman%name="boggle"
chairman%age=1234
read (71) tmpstr1, chairman, tmpstr2
- if (tmpstr1.ne."abc") call abort
- if (tmpstr2.ne."efg") call abort
- if (chairman%name.ne."charlie") call abort
- if (chairman%age.ne.62) call abort
+ if (tmpstr1.ne."abc") STOP 1
+ if (tmpstr2.ne."efg") STOP 2
+ if (chairman%name.ne."charlie") STOP 3
+ if (chairman%age.ne.62) STOP 4
chairman%name="boggle"
chairman%age=1234
read (71) tmpstr1, chairman, tmpstr2
- if (tmpstr1.ne."hij") call abort
- if (tmpstr2.ne."klm") call abort
- if (chairman%name.ne."charlie") call abort
- if (chairman%age.ne.62) call abort
+ if (tmpstr1.ne."hij") STOP 5
+ if (tmpstr2.ne."klm") STOP 6
+ if (chairman%name.ne."charlie") STOP 7
+ if (chairman%age.ne.62) STOP 8
chairman%name="boggle"
chairman%age=1234
read (71) tmpstr1, chairman, tmpstr2
- if (tmpstr1.ne."nop") call abort
- if (tmpstr2.ne."qrs") call abort
- if (chairman%name.ne."charlie") call abort
- if (chairman%age.ne.62) call abort
+ if (tmpstr1.ne."nop") STOP 9
+ if (tmpstr2.ne."qrs") STOP 10
+ if (chairman%name.ne."charlie") STOP 11
+ if (chairman%age.ne.62) STOP 12
close (unit = 71, status='delete')
end program test
diff --git a/gcc/testsuite/gfortran.dg/dtio_20.f03 b/gcc/testsuite/gfortran.dg/dtio_20.f03
index dce487256fa..d823e9c978a 100644
--- a/gcc/testsuite/gfortran.dg/dtio_20.f03
+++ b/gcc/testsuite/gfortran.dg/dtio_20.f03
@@ -27,5 +27,5 @@ PROGRAM p
TYPE(t) :: x
WRITE (str, "(DT'a''b')") x
- if (str.ne."DTa'b") call abort
+ if (str.ne."DTa'b") STOP 1
END PROGRAM p
diff --git a/gcc/testsuite/gfortran.dg/dtio_21.f90 b/gcc/testsuite/gfortran.dg/dtio_21.f90
index 8bfe3aa4367..e8d433c58b2 100644
--- a/gcc/testsuite/gfortran.dg/dtio_21.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_21.f90
@@ -19,10 +19,10 @@ program p
allocate(z2)
print *, z2
contains
- subroutine wf2(this, a, b, c, d, e)
+ subroutine wf2(this, a, b, c, d, e) ! { dg-error "must have assumed length" }
class(t2), intent(in) :: this
integer, intent(in) :: a
- character, intent(in) :: b
+ character(*), intent(in) :: b
integer, intent(in) :: c(:)
integer, intent(out) :: d
character, intent(inout) :: e
diff --git a/gcc/testsuite/gfortran.dg/dtio_22.f90 b/gcc/testsuite/gfortran.dg/dtio_22.f90
index f39450cbca2..13df20e1590 100644
--- a/gcc/testsuite/gfortran.dg/dtio_22.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_22.f90
@@ -15,10 +15,10 @@ contains
subroutine wf(this, unit, b, c, iostat, iomsg)
class(t), intent(in) :: this
integer, intent(in) :: unit
- character, intent(in) :: b
+ character(*), intent(in) :: b
integer, intent(in) :: c(:)
integer, intent(out) :: iostat
- character, intent(inout) :: iomsg
+ character(*), intent(inout) :: iomsg
write (unit, "(i3)", IOSTAT=iostat, IOMSG=iomsg) this%i
end subroutine
end
@@ -29,5 +29,5 @@ program p
class(t), allocatable :: z
allocate(z)
write(buffer,"(DT)") z
- if (buffer /= "123") call abort()
+ if (buffer /= "123") STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/dtio_24.f90 b/gcc/testsuite/gfortran.dg/dtio_24.f90
index eb59b9ec8ba..2015e49cab1 100644
--- a/gcc/testsuite/gfortran.dg/dtio_24.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_24.f90
@@ -46,6 +46,6 @@ program test_dollar
type (dollar_type), parameter :: wage = dollar_type(15.10)
write (unit=*, fmt="(DT)", iostat=ios, iomsg=errormsg) wage
- if (ios.ne.5006) call abort
- if (errormsg(1:22).ne."Missing DTIO procedure") call abort
+ if (ios.ne.5006) STOP 1
+ if (errormsg(1:22).ne."Missing DTIO procedure") STOP 2
end program test_dollar
diff --git a/gcc/testsuite/gfortran.dg/dtio_25.f90 b/gcc/testsuite/gfortran.dg/dtio_25.f90
index a90a238ed51..8ca084899de 100644
--- a/gcc/testsuite/gfortran.dg/dtio_25.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_25.f90
@@ -38,7 +38,7 @@ contains
else
read (unit,*) dtv%c, comma, dtv%k
end if
- if (comma /= ',') call abort()
+ if (comma /= ',') STOP 1
end subroutine
end module
@@ -50,8 +50,8 @@ program p
namelist /nml/ x
x = t('a', 5)
write (buffer, nml)
- if (buffer.ne.'&NML X=a, 5 /') call abort
+ if (buffer.ne.'&NML X=a, 5 /') STOP 1
x = t('x', 0)
read (buffer, nml)
- if (x%c.ne.'a'.or. x%k.ne.5) call abort
+ if (x%c.ne.'a'.or. x%k.ne.5) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/dtio_26.f03 b/gcc/testsuite/gfortran.dg/dtio_26.f03
index ad05da0523e..54813ca2a24 100644
--- a/gcc/testsuite/gfortran.dg/dtio_26.f03
+++ b/gcc/testsuite/gfortran.dg/dtio_26.f03
@@ -55,13 +55,13 @@ program p
write(10,'(a)') 'hello'
rewind(10)
read(unit=10, fmt='(dt)', iostat=istat, iomsg=imsg) foo
- if (imsg.ne."End of record") call abort
+ if (imsg.ne."End of record") STOP 1
rewind(10)
read(unit=10, fmt=*, iostat=istat, iomsg=imsg) foo
- if (imsg.ne."End of record") call abort
+ if (imsg.ne."End of record") STOP 2
s = "hello"
read( unit=s, fmt='(dt)', iostat=istat, iomsg=imsg) foo
- if (imsg.ne."End of record") call abort
+ if (imsg.ne."End of record") STOP 3
read( unit=s, fmt=*, iostat=istat, iomsg=imsg) foo
- if (imsg.ne."End of record") call abort
+ if (imsg.ne."End of record") STOP 4
end program p
diff --git a/gcc/testsuite/gfortran.dg/dtio_27.f90 b/gcc/testsuite/gfortran.dg/dtio_27.f90
index b8b6bad98f5..677ef5cece3 100644
--- a/gcc/testsuite/gfortran.dg/dtio_27.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_27.f90
@@ -51,7 +51,7 @@ contains
namelist /n1/ x
x = t('a')
write (buffer, n1)
- if (buffer(2) /= " X=a") call abort()
+ if (buffer(2) /= " X=a") STOP 1
end subroutine
subroutine test_class
@@ -59,7 +59,7 @@ contains
namelist /n2/ y
y = t('b')
write (buffer, n2)
- if (buffer(2) /= " Y=b") call abort()
+ if (buffer(2) /= " Y=b") STOP 2
end subroutine
END
diff --git a/gcc/testsuite/gfortran.dg/dtio_28.f03 b/gcc/testsuite/gfortran.dg/dtio_28.f03
index c70dc344e64..053678b7fd8 100644
--- a/gcc/testsuite/gfortran.dg/dtio_28.f03
+++ b/gcc/testsuite/gfortran.dg/dtio_28.f03
@@ -68,7 +68,7 @@ PROGRAM p
j=99
k=99
READ (unit, nml, iostat=iostatus)
- if (iostatus.ne.0) call abort
- if (j.ne.1 .or. k.ne.2 .or. x%c.ne.'a' .or. y%c.ne.'b' .or. z%c.ne.'c') call abort
+ if (iostatus.ne.0) STOP 1
+ if (j.ne.1 .or. k.ne.2 .or. x%c.ne.'a' .or. y%c.ne.'b' .or. z%c.ne.'c') STOP 2
!WRITE(*, nml)
END PROGRAM p
diff --git a/gcc/testsuite/gfortran.dg/dtio_3.f90 b/gcc/testsuite/gfortran.dg/dtio_3.f90
index d6b992aaf40..d960812524d 100644
--- a/gcc/testsuite/gfortran.dg/dtio_3.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_3.f90
@@ -46,7 +46,7 @@ CONTAINS
if (iostat.ne.0) iomsg = "Fail PWF DTzeroth"
endif
if (iotype.eq."DTtwo") then
- if (size(vlist).ne.2) call abort
+ if (size(vlist).ne.2) STOP 1
WRITE(udfmt,'(A,A,I1,A,I1,A)') '(', 'A', vlist(1),',I', vlist(2), ')'
WRITE(unit, FMT='(A8,I2)') dtv%name, dtv%age
if (iostat.ne.0) iomsg = "Fail PWF DTtwo"
@@ -100,7 +100,7 @@ CONTAINS
if (iostat.ne.0) iomsg = "Fail PWF DTzeroth"
endif
if (iotype.eq."DTtwo") then
- if (size(vlist).ne.2) call abort
+ if (size(vlist).ne.2) STOP 1
WRITE(udfmt,'(A,A,I1,A,I1,A)') '(', 'A', vlist(1),',I', vlist(2), ')'
READ(unit, FMT='(A8,I2)') dtv%name, dtv%age
if (iostat.ne.0) iomsg = "Fail PWF DTtwo"
@@ -147,10 +147,10 @@ PROGRAM test
member%age=66
read (10, *, iostat=myiostat, iomsg=astring) member, chairman
if (astring.ne."SUCCESS") print *, astring
- if (member%name.ne."George") call abort
- if (chairman%name.ne."Charlie") call abort
- if (member%age.ne.42) call abort
- if (chairman%age.ne.62) call abort
+ if (member%name.ne."George") STOP 1
+ if (chairman%name.ne."Charlie") STOP 1
+ if (member%age.ne.42) STOP 1
+ if (chairman%age.ne.62) STOP 1
close(10, status='delete')
! Now we set next to point to member. This changes the code path
! in the pwf and prf procedures.
@@ -164,9 +164,9 @@ PROGRAM test
member%age=66
read (10,"(DT)", iomsg=astring) chairman
!print *, trim(astring)
- if (member%name.ne."George") call abort
- if (chairman%name.ne."Charlie") call abort
- if (member%age.ne.42) call abort
- if (chairman%age.ne.62) call abort
+ if (member%name.ne."George") STOP 1
+ if (chairman%name.ne."Charlie") STOP 1
+ if (member%age.ne.42) STOP 1
+ if (chairman%age.ne.62) STOP 1
close(10)
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/dtio_30.f03 b/gcc/testsuite/gfortran.dg/dtio_30.f03
index 9edc8f3878d..3a709025e5c 100644
--- a/gcc/testsuite/gfortran.dg/dtio_30.f03
+++ b/gcc/testsuite/gfortran.dg/dtio_30.f03
@@ -53,8 +53,8 @@ program p
read(10, nml)
write(str,*) w
if (str.ne." jr jr jr jr jr jr jr jr jr jr jr jr jr jr kr kr kr jr jr jr jr jr jr jr jr jr jr jr jr jr") &
- & call abort
+ & STOP 1
str = ""
write(str,"(*(DT))") w
- if (str.ne."jrjrjrjrjrjrjrjrjrjrjrjrjrjrkrkrkrjrjrjrjrjrjrjrjrjrjrjrjrjr") call abort
+ if (str.ne."jrjrjrjrjrjrjrjrjrjrjrjrjrjrkrkrkrjrjrjrjrjrjrjrjrjrjrjrjrjr") STOP 2
end program p
diff --git a/gcc/testsuite/gfortran.dg/dtio_31.f03 b/gcc/testsuite/gfortran.dg/dtio_31.f03
index 1886ef424c4..9d622a21b5a 100644
--- a/gcc/testsuite/gfortran.dg/dtio_31.f03
+++ b/gcc/testsuite/gfortran.dg/dtio_31.f03
@@ -42,6 +42,6 @@ program test_dollar
type(dollar_type), parameter :: wage = dollar_type(15.10)
character(len=10) str
write (str, fmt="(DT)") wage
- if(trim(adjustl(str)) /= '15.10') call abort
+ if(trim(adjustl(str)) /= '15.10') STOP 1
end program test_dollar
diff --git a/gcc/testsuite/gfortran.dg/dtio_32.f03 b/gcc/testsuite/gfortran.dg/dtio_32.f03
index 1e55359e237..254a47eb94d 100644
--- a/gcc/testsuite/gfortran.dg/dtio_32.f03
+++ b/gcc/testsuite/gfortran.dg/dtio_32.f03
@@ -41,6 +41,6 @@ program test_dollar
type(dollar_type), parameter :: wage = dollar_type(15.10)
character(len=10) str
write(str, fmt="(DT)") wage
- if (trim(adjustl(str)) /= '15.10') call abort
+ if (trim(adjustl(str)) /= '15.10') STOP 1
end program test_dollar
diff --git a/gcc/testsuite/gfortran.dg/dtio_33.f90 b/gcc/testsuite/gfortran.dg/dtio_33.f90
new file mode 100644
index 00000000000..2deca43db90
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/dtio_33.f90
@@ -0,0 +1,28 @@
+! { dg-do run }
+! PR84389 rejected valid use of ':' in format
+module m
+ type :: t
+ integer :: i
+ contains
+ procedure, pass(this) :: write_t
+ generic, public :: write(formatted) => write_t
+ end type
+contains
+ subroutine write_t(this, lun, iotype, vlist, istat, imsg)
+ ! argument definitions
+ class(t), intent(in) :: this
+ integer, intent(in) :: lun
+ character(len=*), intent(in) :: iotype
+ integer, intent(in) :: vlist(:)
+ integer, intent(out) :: istat
+ character(len=*), intent(inout) :: imsg
+ write(lun, fmt=*, iostat=istat, iomsg=imsg) "Hello World!"
+ end subroutine write_t
+end module
+program p
+ use m, only : t
+ character(50) :: str
+ type(t) :: foo(2)
+ write(str, "(*(dt:,','))") foo
+ if (str.ne." Hello World!, Hello World!") stop 1
+end program
diff --git a/gcc/testsuite/gfortran.dg/dtio_4.f90 b/gcc/testsuite/gfortran.dg/dtio_4.f90
index 44352c1b754..0e2e2c543cc 100644
--- a/gcc/testsuite/gfortran.dg/dtio_4.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_4.f90
@@ -93,15 +93,15 @@ program test1
result_array = (/ (i, i = 1, 15) /)
more1%myarray = result_array
read (10, fmt='(dt)', advance='no', iomsg=iomsg) udt1
- if (iomsg.ne.'SUCCESS') call abort
- if (any(udt1%myarray.ne.result_array)) call abort
+ if (iomsg.ne.'SUCCESS') STOP 1
+ if (any(udt1%myarray.ne.result_array)) STOP 1
close(10)
open (10, form='formatted', status='scratch')
write (10, '(dt)') more1
rewind(10)
more1%myarray = 99
read (10, '(dt)', iostat=ios, iomsg=iomsg) more1
- if (iomsg.ne.'SUCCESS') call abort
- if (any(more1%myarray.ne.result_array)) call abort
+ if (iomsg.ne.'SUCCESS') STOP 1
+ if (any(more1%myarray.ne.result_array)) STOP 1
close (10)
end program test1
diff --git a/gcc/testsuite/gfortran.dg/dtio_5.f90 b/gcc/testsuite/gfortran.dg/dtio_5.f90
index 8642240c4d5..f761b259486 100644
--- a/gcc/testsuite/gfortran.dg/dtio_5.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_5.f90
@@ -269,7 +269,7 @@ program stack_demo
case(4)
print *, "too few values in stack"
end select
- call abort
+ STOP 1
end if
close(10)
diff --git a/gcc/testsuite/gfortran.dg/dtio_7.f90 b/gcc/testsuite/gfortran.dg/dtio_7.f90
index 33518667488..77ecc88b23c 100644
--- a/gcc/testsuite/gfortran.dg/dtio_7.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_7.f90
@@ -89,7 +89,7 @@ CONTAINS
if (iotype .ne. "DTmembers") iostat = 4
class default
- call abort
+ STOP 1
end select
end subroutine
END MODULE p
@@ -124,16 +124,16 @@ PROGRAM test
rewind (7)
read (7, "(DT'staff')", iostat = i) social_club%staff
- if (i .ne. 0) call abort
+ if (i .ne. 0) STOP 2
social_club%committee(2)%age = 33 ! Introduce an error
read (7, "(DT'officers')", iostat = i) social_club%committee
- if (i .ne. 2) call abort ! Pick up error
+ if (i .ne. 2) STOP 3! Pick up error
do j = 1, size (social_club%membership, 1)
read (7, "(DT'members')", iostat = i) social_club%membership(j)
- if (i .ne. 0) call abort
+ if (i .ne. 0) STOP 4
end do
close (7)
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/dtio_8.f90 b/gcc/testsuite/gfortran.dg/dtio_8.f90
index 6e9f841fe89..dc0c8067505 100644
--- a/gcc/testsuite/gfortran.dg/dtio_8.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_8.f90
@@ -58,7 +58,7 @@ PROGRAM test
! Straight comparisons fail at any level of optimization.
write(line, "(A7)") chairman%name
- if (trim (line) .ne. "Charlie") call abort
+ if (trim (line) .ne. "Charlie") STOP 1
line = " "
write(line, "(I4)") chairman%age
if (trim (line) .eq. " 62") print *, trim(line)
diff --git a/gcc/testsuite/gfortran.dg/dtio_9.f90 b/gcc/testsuite/gfortran.dg/dtio_9.f90
index a6ddea8dce2..992e2a7b0cb 100644
--- a/gcc/testsuite/gfortran.dg/dtio_9.f90
+++ b/gcc/testsuite/gfortran.dg/dtio_9.f90
@@ -60,7 +60,7 @@ PROGRAM test
close (unit = 71)
write(line, "(I4)") chairman%id_no
- if (trim (line) .ne. " 1") call abort
+ if (trim (line) .ne. " 1") STOP 1
write(line, "(I4)") chairman%age
- if (trim (line) .ne. " 62") call abort
+ if (trim (line) .ne. " 62") STOP 2
end program
diff --git a/gcc/testsuite/gfortran.dg/dummy_procedure_3.f90 b/gcc/testsuite/gfortran.dg/dummy_procedure_3.f90
index 2a17b06d19f..6b81295f416 100644
--- a/gcc/testsuite/gfortran.dg/dummy_procedure_3.f90
+++ b/gcc/testsuite/gfortran.dg/dummy_procedure_3.f90
@@ -18,8 +18,8 @@ program prog
character(3) :: str
integer :: i(3) = (/1,2,3/)
str = p(i,mysize)
- if (len(str) .ne. 3) call abort
- if (str .ne. "BCD") call abort
+ if (len(str) .ne. 3) STOP 1
+ if (str .ne. "BCD") STOP 2
contains
function p(y,asz)
implicit none
diff --git a/gcc/testsuite/gfortran.dg/dummy_procedure_7.f90 b/gcc/testsuite/gfortran.dg/dummy_procedure_7.f90
index 0e5b7d9eef1..1f6a77b751d 100644
--- a/gcc/testsuite/gfortran.dg/dummy_procedure_7.f90
+++ b/gcc/testsuite/gfortran.dg/dummy_procedure_7.f90
@@ -19,7 +19,7 @@ subroutine sol(cost)
end function cost
end interface
- if (any (cost([1d0,2d0]) /= [2.d0, 4.d0])) call abort ()
+ if (any (cost([1d0,2d0]) /= [2.d0, 4.d0])) STOP 1
icheck = icheck + 1
end subroutine
@@ -56,8 +56,8 @@ program test
implicit none
call init()
- if (any (cost([3.d0,7.d0]) /= [6.d0, 14.d0])) call abort ()
- if (icheck /= 0) call abort ()
+ if (any (cost([3.d0,7.d0]) /= [6.d0, 14.d0])) STOP 2
+ if (icheck /= 0) STOP 3
call sol(cost)
- if (icheck /= 1) call abort ()
+ if (icheck /= 1) STOP 4
end program test
diff --git a/gcc/testsuite/gfortran.dg/dup_save_1.f90 b/gcc/testsuite/gfortran.dg/dup_save_1.f90
index 7f22b62d167..20e29626f2d 100644
--- a/gcc/testsuite/gfortran.dg/dup_save_1.f90
+++ b/gcc/testsuite/gfortran.dg/dup_save_1.f90
@@ -5,16 +5,16 @@ program save_1
integer foo1, foo2, foo3, foo4
do i=1,10
if (foo1().ne.i) then
- call abort
+ STOP 1
end if
if (foo2().ne.i) then
- call abort
+ STOP 2
end if
if (foo3().ne.i) then
- call abort
+ STOP 3
end if
if (foo4().ne.i) then
- call abort
+ STOP 4
end if
end do
end program save_1
diff --git a/gcc/testsuite/gfortran.dg/dup_save_2.f90 b/gcc/testsuite/gfortran.dg/dup_save_2.f90
index a0d340ad6e8..2b32d64bce2 100644
--- a/gcc/testsuite/gfortran.dg/dup_save_2.f90
+++ b/gcc/testsuite/gfortran.dg/dup_save_2.f90
@@ -1,21 +1,21 @@
! { dg-do compile }
-! { dg-options "-fall-intrinsics -std=f95" }
+! { dg-options " -std=f95" }
program save_2
implicit none
integer i
integer foo1, foo2, foo3, foo4
do i=1,10
if (foo1().ne.i) then
- call abort
+ STOP 1
end if
if (foo2().ne.i) then
- call abort
+ STOP 2
end if
if (foo3().ne.i) then
- call abort
+ STOP 3
end if
if (foo4().ne.i) then
- call abort
+ STOP 4
end if
end do
end program save_2
diff --git a/gcc/testsuite/gfortran.dg/dynamic_dispatch_1.f03 b/gcc/testsuite/gfortran.dg/dynamic_dispatch_1.f03
index c07b189e217..dc7d7b70948 100644
--- a/gcc/testsuite/gfortran.dg/dynamic_dispatch_1.f03
+++ b/gcc/testsuite/gfortran.dg/dynamic_dispatch_1.f03
@@ -64,15 +64,15 @@ end module m
type(t2), target :: c
type(l1), target :: d
a => b ! declared type
- if (a%real() .ne. real (42)) call abort
- if (a%prod() .ne. 42) call abort
- if (a%extract (2) .ne. 84) call abort
+ if (a%real() .ne. real (42)) STOP 1
+ if (a%prod() .ne. 42) STOP 2
+ if (a%extract (2) .ne. 84) STOP 3
a => c ! extension in module
- if (a%real() .ne. real (99)) call abort
- if (a%prod() .ne. 99) call abort
- if (a%extract (3) .ne. 297) call abort
+ if (a%real() .ne. real (99)) STOP 4
+ if (a%prod() .ne. 99) STOP 5
+ if (a%extract (3) .ne. 297) STOP 6
a => d ! extension in main
- if (a%real() .ne. real (42)) call abort
- if (a%prod() .ne. 42) call abort
- if (a%extract (4) .ne. 168) call abort
+ if (a%real() .ne. real (42)) STOP 7
+ if (a%prod() .ne. 42) STOP 8
+ if (a%extract (4) .ne. 168) STOP 9
end
diff --git a/gcc/testsuite/gfortran.dg/dynamic_dispatch_11.f03 b/gcc/testsuite/gfortran.dg/dynamic_dispatch_11.f03
index a4fb39a8090..84a361c6907 100644
--- a/gcc/testsuite/gfortran.dg/dynamic_dispatch_11.f03
+++ b/gcc/testsuite/gfortran.dg/dynamic_dispatch_11.f03
@@ -28,5 +28,5 @@ end module
use mod1 ! order of use statements is important
class(t1),allocatable :: a
allocate(a)
- if (a%get()/=1) call abort()
+ if (a%get()/=1) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/dynamic_dispatch_12.f90 b/gcc/testsuite/gfortran.dg/dynamic_dispatch_12.f90
index 53cc957c4d2..ce821dfb13e 100644
--- a/gcc/testsuite/gfortran.dg/dynamic_dispatch_12.f90
+++ b/gcc/testsuite/gfortran.dg/dynamic_dispatch_12.f90
@@ -66,7 +66,7 @@ contains
use TestResult_mod, only: TestResult
class (TestResult) :: result
call result%run()
- if (result%numRun /= 1) call abort()
+ if (result%numRun /= 1) STOP 1
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/dynamic_dispatch_2.f03 b/gcc/testsuite/gfortran.dg/dynamic_dispatch_2.f03
index c30ce6a808e..bae3aa746a3 100644
--- a/gcc/testsuite/gfortran.dg/dynamic_dispatch_2.f03
+++ b/gcc/testsuite/gfortran.dg/dynamic_dispatch_2.f03
@@ -72,25 +72,25 @@ end module m
a => b ! declared type
call a%real(r)
- if (r .ne. real (42)) call abort
+ if (r .ne. real (42)) STOP 1
call a%prod(i)
- if (i .ne. 42) call abort
+ if (i .ne. 42) STOP 2
call a%extract (2, i)
- if (i .ne. 84) call abort
+ if (i .ne. 84) STOP 3
a => c ! extension in module
call a%real(r)
- if (r .ne. real (99)) call abort
+ if (r .ne. real (99)) STOP 4
call a%prod(i)
- if (i .ne. 99) call abort
+ if (i .ne. 99) STOP 5
call a%extract (3, i)
- if (i .ne. 297) call abort
+ if (i .ne. 297) STOP 6
a => d ! extension in main
call a%real(r)
- if (r .ne. real (42)) call abort
+ if (r .ne. real (42)) STOP 7
call a%prod(i)
- if (i .ne. 42) call abort
+ if (i .ne. 42) STOP 8
call a%extract (4, i)
- if (i .ne. 168) call abort
+ if (i .ne. 168) STOP 9
end
diff --git a/gcc/testsuite/gfortran.dg/dynamic_dispatch_3.f03 b/gcc/testsuite/gfortran.dg/dynamic_dispatch_3.f03
index 41c784d1705..e9fe8665bc6 100644
--- a/gcc/testsuite/gfortran.dg/dynamic_dispatch_3.f03
+++ b/gcc/testsuite/gfortran.dg/dynamic_dispatch_3.f03
@@ -71,15 +71,15 @@ end module m2
type(t2), target :: c
type(l1), target :: d
a => b ! declared type in module m1
- if (a%real() .ne. real (42)) call abort
- if (a%prod() .ne. 42) call abort
- if (a%extract (2) .ne. 84) call abort
+ if (a%real() .ne. real (42)) STOP 1
+ if (a%prod() .ne. 42) STOP 2
+ if (a%extract (2) .ne. 84) STOP 3
a => c ! extension in module m2
- if (a%real() .ne. real (99)) call abort
- if (a%prod() .ne. 99) call abort
- if (a%extract (3) .ne. 297) call abort
+ if (a%real() .ne. real (99)) STOP 4
+ if (a%prod() .ne. 99) STOP 5
+ if (a%extract (3) .ne. 297) STOP 6
a => d ! extension in main
- if (a%real() .ne. real (42)) call abort
- if (a%prod() .ne. 42) call abort
- if (a%extract (4) .ne. 168) call abort
+ if (a%real() .ne. real (42)) STOP 7
+ if (a%prod() .ne. 42) STOP 8
+ if (a%extract (4) .ne. 168) STOP 9
end
diff --git a/gcc/testsuite/gfortran.dg/dynamic_dispatch_4.f03 b/gcc/testsuite/gfortran.dg/dynamic_dispatch_4.f03
index b31f910cfb0..0910d9cb094 100644
--- a/gcc/testsuite/gfortran.dg/dynamic_dispatch_4.f03
+++ b/gcc/testsuite/gfortran.dg/dynamic_dispatch_4.f03
@@ -84,11 +84,11 @@ end module a_bar_mod
class(foo), pointer :: a
a => b
call a%doit
- if (a%getit () .ne. 1) call abort
+ if (a%getit () .ne. 1) STOP 1
a => c
call a%doit
- if (a%getit () .ne. 2) call abort
+ if (a%getit () .ne. 2) STOP 2
a => d
call a%doit
- if (a%getit () .ne. 3) call abort
+ if (a%getit () .ne. 3) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/dynamic_dispatch_5.f03 b/gcc/testsuite/gfortran.dg/dynamic_dispatch_5.f03
index dee6aae596d..9f67482889b 100644
--- a/gcc/testsuite/gfortran.dg/dynamic_dispatch_5.f03
+++ b/gcc/testsuite/gfortran.dg/dynamic_dispatch_5.f03
@@ -181,5 +181,5 @@ end module s_mat_mod
b%a => c
a => b
call a%scal (1.0_spk_, info)
- if (info .ne. 700) call abort
+ if (info .ne. 700) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/dynamic_dispatch_7.f03 b/gcc/testsuite/gfortran.dg/dynamic_dispatch_7.f03
index 89ed05c753a..fa4df633d5d 100644
--- a/gcc/testsuite/gfortran.dg/dynamic_dispatch_7.f03
+++ b/gcc/testsuite/gfortran.dg/dynamic_dispatch_7.f03
@@ -52,8 +52,8 @@ end module
type(t2), target :: y
type(t3) :: z
z%a => x
- if ((z%sizeof() .ne. 1) .or. (z%a%sizeof() .ne. 1)) call abort
+ if ((z%sizeof() .ne. 1) .or. (z%a%sizeof() .ne. 1)) STOP 1
z%a => y
- if ((z%sizeof() .ne. 2) .or. (z%a%sizeof() .ne. 2)) call abort
+ if ((z%sizeof() .ne. 2) .or. (z%a%sizeof() .ne. 2)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/dynamic_dispatch_8.f03 b/gcc/testsuite/gfortran.dg/dynamic_dispatch_8.f03
index 889cd33c033..a01fd9cdb2b 100644
--- a/gcc/testsuite/gfortran.dg/dynamic_dispatch_8.f03
+++ b/gcc/testsuite/gfortran.dg/dynamic_dispatch_8.f03
@@ -95,11 +95,11 @@ program testd10
allocate(foo :: a%a)
call a%doit()
! write(*,*) 'Getit value : ', a%getit()
- if (a%getit() .ne. 1) call abort
+ if (a%getit() .ne. 1) STOP 1
deallocate(a%a)
allocate(foo2 :: a%a)
call a%doit()
! write(*,*) 'Getit value : ', a%getit()
- if (a%getit() .ne. 3) call abort
+ if (a%getit() .ne. 3) STOP 2
end program testd10
diff --git a/gcc/testsuite/gfortran.dg/dynamic_dispatch_9.f03 b/gcc/testsuite/gfortran.dg/dynamic_dispatch_9.f03
index 9541fa8d698..b9b1b1a6e06 100644
--- a/gcc/testsuite/gfortran.dg/dynamic_dispatch_9.f03
+++ b/gcc/testsuite/gfortran.dg/dynamic_dispatch_9.f03
@@ -44,8 +44,8 @@ end
allocate(o1)
allocate(o2)
- if (t1%gen(2.0) .ne. o1%gen(2.0)) call abort
- if (t1%gen(2.0) .ne. o2%gen(2.0)) call abort
- if (o2%gen(3) .ne. 9) call abort
+ if (t1%gen(2.0) .ne. o1%gen(2.0)) STOP 1
+ if (t1%gen(2.0) .ne. o2%gen(2.0)) STOP 2
+ if (o2%gen(3) .ne. 9) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/e_d_fmt.f90 b/gcc/testsuite/gfortran.dg/e_d_fmt.f90
index f2a3a5fc553..c583f2e460f 100644
--- a/gcc/testsuite/gfortran.dg/e_d_fmt.f90
+++ b/gcc/testsuite/gfortran.dg/e_d_fmt.f90
@@ -9,7 +9,7 @@ r = 1.0
write(c1,"(e9.2)") r
write(c2,"(d9.2)") r
-if (trim(adjustl(c1)) .ne. "0.10E+01") call abort()
-if (trim(adjustl(c2)) .ne. "0.10D+01") call abort()
+if (trim(adjustl(c1)) .ne. "0.10E+01") STOP 1
+if (trim(adjustl(c2)) .ne. "0.10D+01") STOP 2
END
diff --git a/gcc/testsuite/gfortran.dg/edit_real_1.f90 b/gcc/testsuite/gfortran.dg/edit_real_1.f90
index 594b2f17223..4033905736a 100644
--- a/gcc/testsuite/gfortran.dg/edit_real_1.f90
+++ b/gcc/testsuite/gfortran.dg/edit_real_1.f90
@@ -11,68 +11,68 @@ program edit_real_1
s = x
! G -> F format
write (s, '(G10.3,A)') 12.36, "z"
- if (s .ne. " 12.4 z") call abort
+ if (s .ne. " 12.4 z") STOP 1
s = x
! G -> E format
write (s, '(G10.3,A)') -0.0012346, "z"
- if (s .ne. "-0.123E-02z") call abort
+ if (s .ne. "-0.123E-02z") STOP 2
s = x
! Gw.eEe format
write (s, '(G10.3e1,a)') 12.34, "z"
- if (s .ne. " 12.3 z") call abort
+ if (s .ne. " 12.3 z") STOP 3
! E format with excessive precision
write (t, '(E199.192,A)') 1.5, "z"
- if ((t(1:7) .ne. " 0.1500") .or. (t(194:200) .ne. "00E+01z")) call abort
+ if ((t(1:7) .ne. " 0.1500") .or. (t(194:200) .ne. "00E+01z")) STOP 4
! EN format
s = x
write (s, '(EN15.3,A)') 12873.6, "z"
- if (s .ne. " 12.874E+03z") call abort
+ if (s .ne. " 12.874E+03z") STOP 5
! EN format, negative exponent
s = x
write (s, '(EN15.3,A)') 12.345e-6, "z"
- if (s .ne. " 12.345E-06z") call abort
+ if (s .ne. " 12.345E-06z") STOP 6
! ES format
s = x
write (s, '(ES10.3,A)') 16.235, "z"
- if (s .ne. " 1.624E+01z") call abort
+ if (s .ne. " 1.624E+01z") STOP 7
! F format, small number
s = x
write (s, '(F10.8,A)') 1.0e-20, "z"
- if (s .ne. "0.00000000z") call abort
+ if (s .ne. "0.00000000z") STOP 8
! E format, very large number.
! Used to overflow with positive scale factor
s = x
write (s, '(1PE10.3,A)') huge(0d0), "z"
! The actual value is target specific, so just do a basic check
if ((s(1:1) .eq. "*") .or. (s(7:7) .ne. "+") .or. &
- (s(11:11) .ne. "z")) call abort
+ (s(11:11) .ne. "z")) STOP 9
! F format, round up with carry to most significant digit.
s = x
write (s, '(F10.3,A)') 0.9999, "z"
- if (s .ne. " 1.000z") call abort
+ if (s .ne. " 1.000z") STOP 10
! F format, round up with carry to most significant digit < 0.1.
s = x
write (s, '(F10.3,A)') 0.0099, "z"
- if (s .ne. " 0.010z") call abort
+ if (s .ne. " 0.010z") STOP 11
! E format, round up with carry to most significant digit.
s = x
write (s, '(E10.3,A)') 0.9999, "z"
- if (s .ne. " 0.100E+01z") call abort
+ if (s .ne. " 0.100E+01z") STOP 12
! EN format, round up with carry to most significant digit.
s = x
write (s, '(EN15.3,A)') 999.9999, "z"
- if (s .ne. " 1.000E+03z") call abort
+ if (s .ne. " 1.000E+03z") STOP 13
! E format, positive scale factor
s = x
write (s, '(2PE10.4,A)') 1.2345, "z"
- if (s .ne. '12.345E-01z') call abort
+ if (s .ne. '12.345E-01z') STOP 14
! E format, negative scale factor
s = x
write (s, '(-2PE10.4,A)') 1.250001, "z"
- if (s .ne. '0.0013E+03z') call abort
+ if (s .ne. '0.0013E+03z') STOP 15
! E format, single digit precision
s = x
write (s, '(E10.1,A)') 1.1, "z"
- if (s .ne. ' 0.1E+01z') call abort
+ if (s .ne. ' 0.1E+01z') STOP 16
end
diff --git a/gcc/testsuite/gfortran.dg/elemental_by_value_1.f90 b/gcc/testsuite/gfortran.dg/elemental_by_value_1.f90
index 4fc59471b5b..10b2ce88671 100644
--- a/gcc/testsuite/gfortran.dg/elemental_by_value_1.f90
+++ b/gcc/testsuite/gfortran.dg/elemental_by_value_1.f90
@@ -17,6 +17,6 @@ end function
end function
end interface
- if (foo(42) .ne. 43) call abort
- if (any (foo([0,1]) .ne. [1,2])) call abort
+ if (foo(42) .ne. 43) STOP 1
+ if (any (foo([0,1]) .ne. [1,2])) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/elemental_dependency_1.f90 b/gcc/testsuite/gfortran.dg/elemental_dependency_1.f90
index 39ba453c287..dbf05d4bc0e 100644
--- a/gcc/testsuite/gfortran.dg/elemental_dependency_1.f90
+++ b/gcc/testsuite/gfortran.dg/elemental_dependency_1.f90
@@ -19,17 +19,17 @@ PROGRAM main
b = a
CALL double (a, a) ! same range, no temporary
- IF (ANY(a /= 2*b)) CALL abort
+ IF (ANY(a /= 2*b)) STOP 1
b = a
CALL double (a+1, a) ! same range, no temporary
- IF (ANY(a /= 2*b+2)) CALL abort
+ IF (ANY(a /= 2*b+2)) STOP 2
b = a
CALL double ((a(1:sz)), a(1:sz)) ! same range, no temporary
- IF (ANY(a /= 2*b)) CALL abort
+ IF (ANY(a /= 2*b)) STOP 3
b = a
@@ -42,26 +42,26 @@ PROGRAM main
CALL double((a(1:sz-1)), a(2:sz)) ! paren expression, temporary created
! { dg-final { scan-tree-dump-times "A\.16\\\[4\\\]" 1 "original" } }
- IF (ANY(a /= (/ b(1), (2*b(i), i=1,sz-1) /))) CALL abort
+ IF (ANY(a /= (/ b(1), (2*b(i), i=1,sz-1) /))) STOP 4
b = a
CALL double(a(1:sz-1)+1, a(2:sz)) ! op expression, temporary created
! { dg-final { scan-tree-dump-times "A\.25\\\[4\\\]" 1 "original" } }
- IF (ANY(a /= (/ b(1), (2*b(i)+2, i=1,sz-1) /))) CALL abort
+ IF (ANY(a /= (/ b(1), (2*b(i)+2, i=1,sz-1) /))) STOP 5
b = a
CALL double(self(a), a) ! same range, no temporary
- IF (ANY(a /= 2*b)) CALL abort
+ IF (ANY(a /= 2*b)) STOP 6
b = a
CALL double(self(a(1:sz-1)), a(2:sz)) ! function expr, temporary created
! { dg-final { scan-tree-dump-times "A\.37\\\[4\\\]" 1 "original" } }
- IF (ANY(a /= (/ b(1), (2*b(i), i=1,sz-1) /))) CALL abort
+ IF (ANY(a /= (/ b(1), (2*b(i), i=1,sz-1) /))) STOP 7
CONTAINS
diff --git a/gcc/testsuite/gfortran.dg/elemental_dependency_4.f90 b/gcc/testsuite/gfortran.dg/elemental_dependency_4.f90
index 79dd7ceff31..58d90c01928 100644
--- a/gcc/testsuite/gfortran.dg/elemental_dependency_4.f90
+++ b/gcc/testsuite/gfortran.dg/elemental_dependency_4.f90
@@ -55,49 +55,49 @@ PROGRAM Main
! Original testcase
array = Nick(index,array)
- If (any (array .ne. array(1))) call abort
+ If (any (array .ne. array(1))) STOP 1
array = (/ (i+0.0, i = 1,5) /)
! This should not create a temporary
array = Charles(array)
- If (any (array .ne. index)) call abort
+ If (any (array .ne. index)) STOP 2
! { dg-final { scan-tree-dump-times "array\\\[\[^\\\]\]*\\\]\\s*=\\s*charles\\s*\\(&array\\\[\[^\\\]\]*\\\]\\);" 1 "original" } }
! Check use association of the function works correctly.
arraym = Bill(index,arraym)
- if (any (arraym .ne. arraym(1))) call abort
+ if (any (arraym .ne. arraym(1))) STOP 3
! Check siblings interact correctly.
array = (/ (i+0.0, i = 1,5) /)
array = Henry(index)
- if (any (array .ne. array(1))) call abort
+ if (any (array .ne. array(1))) STOP 4
array = (/ (i+0.0, i = 1,5) /)
! This should not create a temporary
array = index + Henry2(0) - array
! { dg-final { scan-tree-dump-times "array\\\[\[^\\\]\]*\\\]\\s*=\\s*\\(\\(real\\(kind=4\\)\\)\\s*index\\\[\[^\\\]\]*\\\]\\s*\\+\\s*D.\\d*\\)\\s*-\\s*array\\\[\[^\\\]\]*\\\];" 1 "original" } }
- if (any (array .ne. 15.0)) call abort
+ if (any (array .ne. 15.0)) STOP 5
arraym = (/ (i+0.0, i = 1,5) /)
arraym = Peter(index, arraym)
- if (any (arraym .ne. 15.0)) call abort
+ if (any (arraym .ne. 15.0)) STOP 6
array = (/ (i+0.0, i = 1,5) /)
array = Robert(index)
- if (any (arraym .ne. 15.0)) call abort
+ if (any (arraym .ne. 15.0)) STOP 7
missme => Robert2
array = (/ (i+0.0, i = 1,5) /)
array = David(index)
- if (any (arraym .ne. 15.0)) call abort
+ if (any (arraym .ne. 15.0)) STOP 8
array = (/ (i+0.0, i = 1,5) /)
array = James(index)
- if (any (arraym .ne. 15.0)) call abort
+ if (any (arraym .ne. 15.0)) STOP 9
array = (/ (i+0.0, i = 1,5) /)
array = Romeo(index)
- if (any (arraym .ne. 15.0)) call abort
+ if (any (arraym .ne. 15.0)) STOP 10
CONTAINS
ELEMENTAL FUNCTION Nick (n, x)
diff --git a/gcc/testsuite/gfortran.dg/elemental_dependency_5.f90 b/gcc/testsuite/gfortran.dg/elemental_dependency_5.f90
index 71a8c480db6..b879f37e271 100644
--- a/gcc/testsuite/gfortran.dg/elemental_dependency_5.f90
+++ b/gcc/testsuite/gfortran.dg/elemental_dependency_5.f90
@@ -47,7 +47,7 @@ PROGRAM Main
INTEGER :: i, index(5) = (/ (i, i = 1,5) /)
array%f = array%tbp(index)
- if (any (array%f .ne. array(1)%f)) call abort
+ if (any (array%f .ne. array(1)%f)) STOP 1
array%f = index
call Jack(array)
@@ -56,7 +56,7 @@ PROGRAM Main
CLASS(t) :: dummy(:)
dummy%f = dummy%tbp(index)
!print *, dummy%f
- if (any (dummy%f .ne. 15.0)) call abort
+ if (any (dummy%f .ne. 15.0)) STOP 2
END SUBROUTINE
END PROGRAM Main
diff --git a/gcc/testsuite/gfortran.dg/elemental_dependency_6.f90 b/gcc/testsuite/gfortran.dg/elemental_dependency_6.f90
index fd1aa401cd1..74739d84637 100644
--- a/gcc/testsuite/gfortran.dg/elemental_dependency_6.f90
+++ b/gcc/testsuite/gfortran.dg/elemental_dependency_6.f90
@@ -14,7 +14,7 @@
c = t(13)
c = plus(c(1), b)
! print *, c
- if (any(c%c /= 20)) call abort
+ if (any(c%c /= 20)) STOP 1
contains
diff --git a/gcc/testsuite/gfortran.dg/elemental_optional_args_2.f90 b/gcc/testsuite/gfortran.dg/elemental_optional_args_2.f90
index c09384a4fed..c3e3f82b8f2 100644
--- a/gcc/testsuite/gfortran.dg/elemental_optional_args_2.f90
+++ b/gcc/testsuite/gfortran.dg/elemental_optional_args_2.f90
@@ -18,12 +18,12 @@ PROGRAM test
rr=f1(aa,1)
! WRITE(*,*) ' rr(1)=', rr(1), ' rr(2)=', rr(2)
- IF (ANY(rr /= (/ 110, 132 /))) CALL ABORT
+ IF (ANY(rr /= (/ 110, 132 /))) STOP 1
rr=0
rr=ff(aa,1)
! WRITE(*,*) ' rr(1)=', rr(1), ' rr(2)=', rr(2)
- IF (ANY(rr /= (/ 110, 132 /))) CALL ABORT
+ IF (ANY(rr /= (/ 110, 132 /))) STOP 2
! WRITE(*,*) 'But only f1 works if the optional parameter is absent:'
@@ -31,12 +31,12 @@ PROGRAM test
rr=0
rr=f1(aa)
! WRITE(*,*) ' rr(1)=', rr(1), ' rr(2)=', rr(2)
- IF (ANY(rr /= (/ 110, 132 /))) CALL ABORT
+ IF (ANY(rr /= (/ 110, 132 /))) STOP 3
rr = 0
rr=ff(aa)
! WRITE(*,*) ' rr(1)=', rr(1), ' rr(2)=', rr(2)
- IF (ANY(rr /= (/ 110, 132 /))) CALL ABORT
+ IF (ANY(rr /= (/ 110, 132 /))) STOP 4
CONTAINS
diff --git a/gcc/testsuite/gfortran.dg/elemental_optional_args_3.f90 b/gcc/testsuite/gfortran.dg/elemental_optional_args_3.f90
index c1098b34eb9..7d4fbb6d5d8 100644
--- a/gcc/testsuite/gfortran.dg/elemental_optional_args_3.f90
+++ b/gcc/testsuite/gfortran.dg/elemental_optional_args_3.f90
@@ -22,12 +22,12 @@ PROGRAM test
rr=f1(aa,b)
! WRITE(*,*) ' rr(1)=', rr(1), ' rr(2)=', rr(2)
- IF (ANY(rr /= (/ 110, 132 /))) CALL ABORT
+ IF (ANY(rr /= (/ 110, 132 /))) STOP 1
rr=0
rr=ff(aa,b)
! WRITE(*,*) ' rr(1)=', rr(1), ' rr(2)=', rr(2)
- IF (ANY(rr /= (/ 110, 132 /))) CALL ABORT
+ IF (ANY(rr /= (/ 110, 132 /))) STOP 2
b => NULL()
@@ -36,12 +36,12 @@ PROGRAM test
rr=0
rr=f1(aa, b)
! WRITE(*,*) ' rr(1)=', rr(1), ' rr(2)=', rr(2)
- IF (ANY(rr /= (/ 110, 132 /))) CALL ABORT
+ IF (ANY(rr /= (/ 110, 132 /))) STOP 3
rr = 0
rr=ff(aa, b)
! WRITE(*,*) ' rr(1)=', rr(1), ' rr(2)=', rr(2)
- IF (ANY(rr /= (/ 110, 132 /))) CALL ABORT
+ IF (ANY(rr /= (/ 110, 132 /))) STOP 4
CONTAINS
diff --git a/gcc/testsuite/gfortran.dg/elemental_optional_args_4.f90 b/gcc/testsuite/gfortran.dg/elemental_optional_args_4.f90
index fa359fb1b9d..eaff7a16d87 100644
--- a/gcc/testsuite/gfortran.dg/elemental_optional_args_4.f90
+++ b/gcc/testsuite/gfortran.dg/elemental_optional_args_4.f90
@@ -21,12 +21,12 @@ PROGRAM test
rr=f1(aa,b)
! WRITE(*,*) ' rr(1)=', rr(1), ' rr(2)=', rr(2)
- IF (ANY(rr /= (/ 110, 132 /))) CALL ABORT
+ IF (ANY(rr /= (/ 110, 132 /))) STOP 1
rr=0
rr=ff(aa,b)
! WRITE(*,*) ' rr(1)=', rr(1), ' rr(2)=', rr(2)
- IF (ANY(rr /= (/ 110, 132 /))) CALL ABORT
+ IF (ANY(rr /= (/ 110, 132 /))) STOP 2
DEALLOCATE(b)
@@ -35,12 +35,12 @@ PROGRAM test
rr=0
rr=f1(aa, b)
! WRITE(*,*) ' rr(1)=', rr(1), ' rr(2)=', rr(2)
- IF (ANY(rr /= (/ 110, 132 /))) CALL ABORT
+ IF (ANY(rr /= (/ 110, 132 /))) STOP 3
rr = 0
rr=ff(aa, b)
! WRITE(*,*) ' rr(1)=', rr(1), ' rr(2)=', rr(2)
- IF (ANY(rr /= (/ 110, 132 /))) CALL ABORT
+ IF (ANY(rr /= (/ 110, 132 /))) STOP 4
CONTAINS
diff --git a/gcc/testsuite/gfortran.dg/elemental_optional_args_5.f03 b/gcc/testsuite/gfortran.dg/elemental_optional_args_5.f03
index e0ed0c20d5e..fbbdb6c10b8 100644
--- a/gcc/testsuite/gfortran.dg/elemental_optional_args_5.f03
+++ b/gcc/testsuite/gfortran.dg/elemental_optional_args_5.f03
@@ -41,14 +41,14 @@ v = [9, 33]
call sub1 (s, x%a, .false.)
call sub1 (v, x%a, .false.)
!print *, s, v
-if (s /= 3) call abort()
-if (any (v /= [9, 33])) call abort()
+if (s /= 3) STOP 1
+if (any (v /= [9, 33])) STOP 2
call sub1 (s, x%p, .false.)
call sub1 (v, x%p, .false.)
!print *, s, v
-if (s /= 3) call abort()
-if (any (v /= [9, 33])) call abort()
+if (s /= 3) STOP 3
+if (any (v /= [9, 33])) STOP 4
! SCALAR COMPONENTS: alloc/assoc
@@ -59,14 +59,14 @@ x%p = 5
call sub1 (s, x%a, .true.)
call sub1 (v, x%a, .true.)
!print *, s, v
-if (s /= 4*2) call abort()
-if (any (v /= [4*2, 4*2])) call abort()
+if (s /= 4*2) STOP 5
+if (any (v /= [4*2, 4*2])) STOP 6
call sub1 (s, x%p, .true.)
call sub1 (v, x%p, .true.)
!print *, s, v
-if (s /= 5*2) call abort()
-if (any (v /= [5*2, 5*2])) call abort()
+if (s /= 5*2) STOP 7
+if (any (v /= [5*2, 5*2])) STOP 8
! ARRAY COMPONENTS: Non alloc/assoc
@@ -75,11 +75,11 @@ v = [9, 33]
call sub1 (v, x%a2, .false.)
!print *, v
-if (any (v /= [9, 33])) call abort()
+if (any (v /= [9, 33])) STOP 9
call sub1 (v, x%p2, .false.)
!print *, v
-if (any (v /= [9, 33])) call abort()
+if (any (v /= [9, 33])) STOP 10
! ARRAY COMPONENTS: alloc/assoc
@@ -90,11 +90,11 @@ x%p2 = [35, 58]
call sub1 (v, x%a2, .true.)
!print *, v
-if (any (v /= [84*2, 82*2])) call abort()
+if (any (v /= [84*2, 82*2])) STOP 11
call sub1 (v, x%p2, .true.)
!print *, v
-if (any (v /= [35*2, 58*2])) call abort()
+if (any (v /= [35*2, 58*2])) STOP 12
! =============== sub_t ==================
@@ -106,26 +106,26 @@ v = [9, 33]
call sub_t (s, ta, .false.)
call sub_t (v, ta, .false.)
!print *, s, v
-if (s /= 3) call abort()
-if (any (v /= [9, 33])) call abort()
+if (s /= 3) STOP 13
+if (any (v /= [9, 33])) STOP 14
call sub_t (s, tp, .false.)
call sub_t (v, tp, .false.)
!print *, s, v
-if (s /= 3) call abort()
-if (any (v /= [9, 33])) call abort()
+if (s /= 3) STOP 15
+if (any (v /= [9, 33])) STOP 16
call sub_t (s, ca, .false.)
call sub_t (v, ca, .false.)
!print *, s, v
-if (s /= 3) call abort()
-if (any (v /= [9, 33])) call abort()
+if (s /= 3) STOP 17
+if (any (v /= [9, 33])) STOP 18
call sub_t (s, cp, .false.)
call sub_t (v, cp, .false.)
!print *, s, v
-if (s /= 3) call abort()
-if (any (v /= [9, 33])) call abort()
+if (s /= 3) STOP 19
+if (any (v /= [9, 33])) STOP 20
! SCALAR COMPONENTS: alloc/assoc
@@ -138,26 +138,26 @@ cp%a = 7
call sub_t (s, ta, .true.)
call sub_t (v, ta, .true.)
!print *, s, v
-if (s /= 4*2) call abort()
-if (any (v /= [4*2, 4*2])) call abort()
+if (s /= 4*2) STOP 21
+if (any (v /= [4*2, 4*2])) STOP 22
call sub_t (s, tp, .true.)
call sub_t (v, tp, .true.)
!print *, s, v
-if (s /= 5*2) call abort()
-if (any (v /= [5*2, 5*2])) call abort()
+if (s /= 5*2) STOP 23
+if (any (v /= [5*2, 5*2])) STOP 24
call sub_t (s, ca, .true.)
call sub_t (v, ca, .true.)
!print *, s, v
-if (s /= 6*2) call abort()
-if (any (v /= [6*2, 6*2])) call abort()
+if (s /= 6*2) STOP 25
+if (any (v /= [6*2, 6*2])) STOP 26
call sub_t (s, cp, .true.)
call sub_t (v, cp, .true.)
!print *, s, v
-if (s /= 7*2) call abort()
-if (any (v /= [7*2, 7*2])) call abort()
+if (s /= 7*2) STOP 27
+if (any (v /= [7*2, 7*2])) STOP 28
! ARRAY COMPONENTS: Non alloc/assoc
@@ -165,19 +165,19 @@ v = [9, 33]
call sub_t (v, taa, .false.)
!print *, v
-if (any (v /= [9, 33])) call abort()
+if (any (v /= [9, 33])) STOP 29
call sub_t (v, tpa, .false.)
!print *, v
-if (any (v /= [9, 33])) call abort()
+if (any (v /= [9, 33])) STOP 30
call sub_t (v, caa, .false.)
!print *, v
-if (any (v /= [9, 33])) call abort()
+if (any (v /= [9, 33])) STOP 31
call sub_t (v, cpa, .false.)
!print *, v
-if (any (v /= [9, 33])) call abort()
+if (any (v /= [9, 33])) STOP 32
deallocate(ta, tp, ca, cp)
@@ -192,30 +192,30 @@ allocate (cpa(2), source=[t(77), t(777)])
select type (caa)
type is (t)
- if (any (caa(:)%a /= [66, 666])) call abort()
+ if (any (caa(:)%a /= [66, 666])) STOP 33
end select
select type (cpa)
type is (t)
- if (any (cpa(:)%a /= [77, 777])) call abort()
+ if (any (cpa(:)%a /= [77, 777])) STOP 34
end select
call sub_t (v, taa, .true.)
!print *, v
-if (any (v /= [44*2, 444*2])) call abort()
+if (any (v /= [44*2, 444*2])) STOP 35
call sub_t (v, tpa, .true.)
!print *, v
-if (any (v /= [55*2, 555*2])) call abort()
+if (any (v /= [55*2, 555*2])) STOP 36
call sub_t (v, caa, .true.)
!print *, v
-if (any (v /= [66*2, 666*2])) call abort()
+if (any (v /= [66*2, 666*2])) STOP 37
call sub_t (v, cpa, .true.)
!print *, v
-if (any (v /= [77*2, 777*2])) call abort()
+if (any (v /= [77*2, 777*2])) STOP 38
deallocate (taa, tpa, caa, cpa)
diff --git a/gcc/testsuite/gfortran.dg/elemental_optional_args_6.f90 b/gcc/testsuite/gfortran.dg/elemental_optional_args_6.f90
index 2dece646dde..c19c1df3e2b 100644
--- a/gcc/testsuite/gfortran.dg/elemental_optional_args_6.f90
+++ b/gcc/testsuite/gfortran.dg/elemental_optional_args_6.f90
@@ -21,8 +21,8 @@ contains
integer, optional :: arg1(:)
integer :: arg2(:)
! print *, fun1 (arg1, arg2)
- if (size (fun1 (arg1, arg2)) /= 2) call abort() ! { dg-warning "is an array and OPTIONAL" }
- if (any (fun1 (arg1, arg2) /= [1,2])) call abort() ! { dg-warning "is an array and OPTIONAL" }
+ if (size (fun1 (arg1, arg2)) /= 2) STOP 1 ! { dg-warning "is an array and OPTIONAL" }
+ if (any (fun1 (arg1, arg2) /= [1,2])) STOP 2 ! { dg-warning "is an array and OPTIONAL" }
end subroutine
elemental function fun1 (arg1, arg2)
@@ -44,8 +44,8 @@ contains
integer, optional :: arg1(:)
integer, optional :: arg2(:)
! print *, fun2 (arg1, arg2)
- if (size (fun2 (arg1, arg2)) /= 2) call abort() ! { dg-warning "is an array and OPTIONAL" }
- if (any (fun2 (arg1, arg2) /= [1,2])) call abort() ! { dg-warning "is an array and OPTIONAL" }
+ if (size (fun2 (arg1, arg2)) /= 2) STOP 3 ! { dg-warning "is an array and OPTIONAL" }
+ if (any (fun2 (arg1, arg2) /= [1,2])) STOP 4 ! { dg-warning "is an array and OPTIONAL" }
end subroutine
elemental function fun2 (arg1,arg2)
diff --git a/gcc/testsuite/gfortran.dg/elemental_optional_args_7.f90 b/gcc/testsuite/gfortran.dg/elemental_optional_args_7.f90
index 8d366c37838..ca5689d3fac 100644
--- a/gcc/testsuite/gfortran.dg/elemental_optional_args_7.f90
+++ b/gcc/testsuite/gfortran.dg/elemental_optional_args_7.f90
@@ -31,7 +31,7 @@ contains
integer :: b(n)
b = five(a, nonopt2=i, opt2=opt)
- if (any(b /= 5)) call abort
+ if (any(b /= 5)) STOP 1
end subroutine do_test
end
diff --git a/gcc/testsuite/gfortran.dg/elemental_scalar_args_1.f90 b/gcc/testsuite/gfortran.dg/elemental_scalar_args_1.f90
index 4e2a21ea82c..74362ed204a 100644
--- a/gcc/testsuite/gfortran.dg/elemental_scalar_args_1.f90
+++ b/gcc/testsuite/gfortran.dg/elemental_scalar_args_1.f90
@@ -57,7 +57,7 @@ contains
type(polar_t), dimension(3) :: b
b = polar_t (2.0,0.5)
b(:) = b(:)/b(1)
- if (any (b .ne. one)) call abort
+ if (any (b .ne. one)) STOP 1
end subroutine test_member
subroutine test_other
type(polar_t), dimension(3) :: b
@@ -65,7 +65,7 @@ contains
b = polar_t (3.0,1.0)
c = polar_t (3.0,1.0)
b(:) = b(:)/c(1)
- if (any (b .ne. one)) call abort
+ if (any (b .ne. one)) STOP 2
end subroutine test_other
subroutine test_scalar
type(polar_t), dimension(3) :: b
@@ -73,7 +73,7 @@ contains
b = polar_t (4.0,1.5)
c = b(1)
b(:) = b(:)/c
- if (any (b .ne. one)) call abort
+ if (any (b .ne. one)) STOP 3
end subroutine test_scalar
subroutine test_real
real,dimension(3) :: b
@@ -81,6 +81,6 @@ contains
b = 2.0
real_one = b(2)/b(1)
b(:) = b(:)/b(1)
- if (any (b .ne. real_one)) call abort
+ if (any (b .ne. real_one)) STOP 4
end subroutine test_real
end program main
diff --git a/gcc/testsuite/gfortran.dg/elemental_scalar_args_2.f90 b/gcc/testsuite/gfortran.dg/elemental_scalar_args_2.f90
index c2b5df8d18b..fa3b263f5d6 100644
--- a/gcc/testsuite/gfortran.dg/elemental_scalar_args_2.f90
+++ b/gcc/testsuite/gfortran.dg/elemental_scalar_args_2.f90
@@ -10,12 +10,12 @@
integer :: j = 64
character (len = 2) :: chr1 = "lm"
character (len = 1), dimension (2) :: chr2 = ["r", "s"]
- if (any (foo (i, bar()) .ne. ["a", "b"])) call abort ! This would fail
- if (any (foo (i, "xy") .ne. ["x", "y"])) call abort ! OK - not a function
- if (any (foo (i, chr1) .ne. ["l", "m"])) call abort ! ditto
- if (any (foo (i, char (j)) .ne. ["A", "B"])) call abort ! This would fail
- if (any (foo (i, chr2) .ne. ["s", "u"])) call abort ! OK - not a scalar
- if (any (foo (i, bar2()) .ne. ["e", "g"])) call abort ! OK - not a scalar function
+ if (any (foo (i, bar()) .ne. ["a", "b"])) STOP 1! This would fail
+ if (any (foo (i, "xy") .ne. ["x", "y"])) STOP 2! OK - not a function
+ if (any (foo (i, chr1) .ne. ["l", "m"])) STOP 3! ditto
+ if (any (foo (i, char (j)) .ne. ["A", "B"])) STOP 4! This would fail
+ if (any (foo (i, chr2) .ne. ["s", "u"])) STOP 5! OK - not a scalar
+ if (any (foo (i, bar2()) .ne. ["e", "g"])) STOP 6! OK - not a scalar function
contains
elemental character(len = 1) function foo (arg1, arg2)
integer, intent (in) :: arg1
diff --git a/gcc/testsuite/gfortran.dg/elemental_subroutine_1.f90 b/gcc/testsuite/gfortran.dg/elemental_subroutine_1.f90
index a19a7807c16..6c46c641844 100644
--- a/gcc/testsuite/gfortran.dg/elemental_subroutine_1.f90
+++ b/gcc/testsuite/gfortran.dg/elemental_subroutine_1.f90
@@ -33,22 +33,22 @@ end module pr22146
! Check the various combinations of scalar and array.
call foobar (x, y)
- if (any(y.ne.-x)) call abort ()
+ if (any(y.ne.-x)) STOP 1
call foobar (u, y)
- if (any(y.ne.-42.0)) call abort ()
+ if (any(y.ne.-42.0)) STOP 2
call foobar (u, v)
- if (v.ne.-42.0) call abort ()
+ if (v.ne.-42.0) STOP 3
v = 2.0
call foobar (v, x)
- if (any(x /= -2.0)) call abort ()
+ if (any(x /= -2.0)) STOP 4
! Test an expression in the INTENT(IN) argument
x = (/1.0, 2.0/)
call foobar (cos (x) + u, y)
- if (any(abs (y + cos (x) + u) .gt. 4.0e-6)) call abort ()
+ if (any(abs (y + cos (x) + u) .gt. 4.0e-6)) STOP 5
contains
diff --git a/gcc/testsuite/gfortran.dg/elemental_subroutine_10.f90 b/gcc/testsuite/gfortran.dg/elemental_subroutine_10.f90
index 011a7046e3a..74eed91ea1b 100644
--- a/gcc/testsuite/gfortran.dg/elemental_subroutine_10.f90
+++ b/gcc/testsuite/gfortran.dg/elemental_subroutine_10.f90
@@ -64,5 +64,5 @@ program main
name = 'test'
call ast%assertion_array_character ( name, 5 )
call ast%write (line)
- if (line(2:len (line)) .ne. "testtesttesttesttest") call abort
+ if (line(2:len (line)) .ne. "testtesttesttesttest") STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/elemental_subroutine_11.f90 b/gcc/testsuite/gfortran.dg/elemental_subroutine_11.f90
index 02ac7c7251b..53c7055eebb 100644
--- a/gcc/testsuite/gfortran.dg/elemental_subroutine_11.f90
+++ b/gcc/testsuite/gfortran.dg/elemental_subroutine_11.f90
@@ -103,8 +103,8 @@ contains
return
end if
pdg_abs = abs (pdg)
- if (lbound(model%field, 1) /= 1) call abort()
- if (ubound(model%field, 1) /= 19) call abort()
+ if (lbound(model%field, 1) /= 1) STOP 1
+ if (ubound(model%field, 1) /= 19) STOP 2
do i = 1, size (model%field)
if (model%field(i)%get_pdg () == pdg_abs) then
ptr => model%field(i)
@@ -118,8 +118,8 @@ contains
class(model_data_t), intent(in), target :: model
integer, intent(in) :: i
type(field_data_t), pointer :: ptr
- if (lbound(model%field, 1) /= 1) call abort()
- if (ubound(model%field, 1) /= 19) call abort()
+ if (lbound(model%field, 1) /= 1) STOP 3
+ if (ubound(model%field, 1) /= 19) STOP 4
ptr => model%field(i)
end function model_data_get_field_ptr_index
@@ -161,8 +161,8 @@ contains
class(model_data_t), intent(in), target :: model
! Check the field l/ubound at various stages, because w/o the patch
! the bounds get mixed up.
- if (lbound(model%field, 1) /= 1) call abort()
- if (ubound(model%field, 1) /= 19) call abort()
+ if (lbound(model%field, 1) /= 1) STOP 5
+ if (ubound(model%field, 1) /= 19) STOP 6
flv%f = f
flv%field_data => model%get_field_ptr (f, check=.true.)
end subroutine flavor_init0_model
diff --git a/gcc/testsuite/gfortran.dg/elemental_subroutine_2.f90 b/gcc/testsuite/gfortran.dg/elemental_subroutine_2.f90
index b7d9afe9e08..b2d80e08f81 100644
--- a/gcc/testsuite/gfortran.dg/elemental_subroutine_2.f90
+++ b/gcc/testsuite/gfortran.dg/elemental_subroutine_2.f90
@@ -47,18 +47,18 @@ program test_assign
forall (j = 1:2, k = 1:2)
i(j, k) = i_from_itype (x (j, k))
end forall
- if (any(reshape (i, (/4/)).ne.(/1,2,3,4/))) call abort ()
+ if (any(reshape (i, (/4/)).ne.(/1,2,3,4/))) STOP 1
! Check the interface assignment (not part of the patch).
x = reshape ((/(itype (j**2, "b"), j = 1,4)/), (/2,2/))
i = x
- if (any(reshape (i, (/4/)).ne.(/1,4,9,16/))) call abort ()
+ if (any(reshape (i, (/4/)).ne.(/1,4,9,16/))) STOP 2
! Use the interface assignment within a forall block.
x = reshape ((/(itype (j**3, "c"), j = 1,4)/), (/2,2/))
forall (j = 1:2, k = 1:2)
i(j, k) = x (j, k)
end forall
- if (any(reshape (i, (/4/)).ne.(/1,8,27,64/))) call abort ()
+ if (any(reshape (i, (/4/)).ne.(/1,8,27,64/))) STOP 3
end program test_assign
diff --git a/gcc/testsuite/gfortran.dg/elemental_subroutine_3.f90 b/gcc/testsuite/gfortran.dg/elemental_subroutine_3.f90
index 22c0b20b151..e8c1c56643e 100644
--- a/gcc/testsuite/gfortran.dg/elemental_subroutine_3.f90
+++ b/gcc/testsuite/gfortran.dg/elemental_subroutine_3.f90
@@ -32,19 +32,19 @@ program test
type(mytype) :: z(2, 3)
! The original case - dependency between lhs and rhs.
x = x((/2,3,1,4,5,6/))
- if (any(x%x .ne. (/40, 600, 2, 8000, 100000, 2000000/))) call abort ()
+ if (any(x%x .ne. (/40, 600, 2, 8000, 100000, 2000000/))) STOP 1
! Slightly more elborate case with non-trivial array ref on lhs.
x(4:1:-1) = x((/1,3,2,4/))
- if (any(x%x .ne. (/16000, 1200, 4, 80, 100000, 2000000/))) call abort ()
+ if (any(x%x .ne. (/16000, 1200, 4, 80, 100000, 2000000/))) STOP 2
! Check that no-dependence case works....
y = x
- if (any(y%x .ne. (/32000, 2400, 8, 160, 200000, 4000000/))) call abort ()
+ if (any(y%x .ne. (/32000, 2400, 8, 160, 200000, 4000000/))) STOP 3
! ...and now a case that caused headaches during the preparation of the patch
x(2:5) = x(1:4)
- if (any(x%x .ne. (/16000, 32000, 2400, 8, 160, 2000000/))) call abort ()
+ if (any(x%x .ne. (/16000, 32000, 2400, 8, 160, 2000000/))) STOP 4
! Check offsets are done correctly in multi-dimensional cases
z = reshape (x, (/2,3/))
z(:, 3:2:-1) = z(:, 1:2)
y = reshape (z, (/6/))
- if (any(y%x .ne. (/ 64000, 128000, 19200, 64, 128000, 256000/))) call abort ()
+ if (any(y%x .ne. (/ 64000, 128000, 19200, 64, 128000, 256000/))) STOP 5
end program test
diff --git a/gcc/testsuite/gfortran.dg/elemental_subroutine_7.f90 b/gcc/testsuite/gfortran.dg/elemental_subroutine_7.f90
index 7c7875bbfcd..366c88d40a3 100644
--- a/gcc/testsuite/gfortran.dg/elemental_subroutine_7.f90
+++ b/gcc/testsuite/gfortran.dg/elemental_subroutine_7.f90
@@ -19,15 +19,15 @@ program gfcbu84_main
q = 0
call tq_tvgh (q(k_lev:), p(k_lev:))
- if (any (p /= q)) call abort
+ if (any (p /= q)) STOP 1
q = 0
call tq_tvgh (q(k_lev:), (p(k_lev:)))
- if (any (p /= q)) call abort
+ if (any (p /= q)) STOP 2
q = 0
call tq_tvgh (q(k_lev:), (p(p(k_lev:))))
- if (any (p(p) /= q)) call abort
+ if (any (p(p) /= q)) STOP 3
deallocate (q)
diff --git a/gcc/testsuite/gfortran.dg/elemental_subroutine_9.f90 b/gcc/testsuite/gfortran.dg/elemental_subroutine_9.f90
index 8f574bf595e..ffdb7d149fb 100644
--- a/gcc/testsuite/gfortran.dg/elemental_subroutine_9.f90
+++ b/gcc/testsuite/gfortran.dg/elemental_subroutine_9.f90
@@ -19,14 +19,14 @@ contains
str_aux = str
! Compiled but did not give correct result
- if (any (str_cmp((/'aaa','bbb'/), str) .neqv. [.FALSE.,.TRUE.])) call abort
+ if (any (str_cmp((/'aaa','bbb'/), str) .neqv. [.FALSE.,.TRUE.])) STOP 1
! Did not compile
- if (any (str_cmp((/'bbb', 'aaa'/), str_aux) .neqv. [.TRUE.,.FALSE.])) call abort
+ if (any (str_cmp((/'bbb', 'aaa'/), str_aux) .neqv. [.TRUE.,.FALSE.])) STOP 2
! Verify patch
- if (any (str_cmp((/'bbb', 'aaa'/), str3) .neqv. [.FALSE.,.FALSE.])) call abort
- if (any (str_cmp((/'bbb', 'aaa'/), 'aaa') .neqv. [.FALSE.,.TRUE.])) call abort
+ if (any (str_cmp((/'bbb', 'aaa'/), str3) .neqv. [.FALSE.,.FALSE.])) STOP 3
+ if (any (str_cmp((/'bbb', 'aaa'/), 'aaa') .neqv. [.FALSE.,.TRUE.])) STOP 4
end subroutine y
diff --git a/gcc/testsuite/gfortran.dg/empty_format_1.f90 b/gcc/testsuite/gfortran.dg/empty_format_1.f90
index ad60afa3f47..b0396cbd5da 100644
--- a/gcc/testsuite/gfortran.dg/empty_format_1.f90
+++ b/gcc/testsuite/gfortran.dg/empty_format_1.f90
@@ -14,10 +14,10 @@ program main
write (io_unit, '(A)') "Line3"
rewind (io_unit)
read (io_unit,'(A)') str
- if (str .ne. "Line1") call abort
+ if (str .ne. "Line1") STOP 1
read (io_unit,'()')
read (io_unit,'(A)') str
- if (str .ne. "Line3") call abort
+ if (str .ne. "Line3") STOP 2
close(unit=io_unit)
end
diff --git a/gcc/testsuite/gfortran.dg/endfile.f b/gcc/testsuite/gfortran.dg/endfile.f
index 6ece5459fa3..ae8256b8f71 100644
--- a/gcc/testsuite/gfortran.dg/endfile.f
+++ b/gcc/testsuite/gfortran.dg/endfile.f
@@ -7,12 +7,12 @@
open(unit=11,status='scratch',form='unformatted')
write(11)data
read(11,end=1000 )data
- call abort()
+ STOP 1
1000 continue
rewind (11)
read(11)data
1001 continue
- if(data.ne.-1) call abort
+ if(data.ne.-1) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/endfile.f90 b/gcc/testsuite/gfortran.dg/endfile.f90
index 60875ce2338..d86659503eb 100644
--- a/gcc/testsuite/gfortran.dg/endfile.f90
+++ b/gcc/testsuite/gfortran.dg/endfile.f90
@@ -24,8 +24,8 @@
read (10,'(I4)',end=99) j
end do
! should never get here
- call abort
+ STOP 1
99 continue ! end of file
- if (j.ne.10) call abort
+ if (j.ne.10) STOP 2
close(10,status='delete')
end
diff --git a/gcc/testsuite/gfortran.dg/endfile_2.f90 b/gcc/testsuite/gfortran.dg/endfile_2.f90
index e91e80eb2aa..db9a42cf34b 100644
--- a/gcc/testsuite/gfortran.dg/endfile_2.f90
+++ b/gcc/testsuite/gfortran.dg/endfile_2.f90
@@ -6,7 +6,7 @@
endfile(8)
rewind(8)
read(8,end=0023)i
- call abort ! should never get here
+ STOP 1! should never get here
stop
0023 continue
close(8,status='delete')
diff --git a/gcc/testsuite/gfortran.dg/entry_1.f90 b/gcc/testsuite/gfortran.dg/entry_1.f90
index dae868ec851..b58332d615c 100644
--- a/gcc/testsuite/gfortran.dg/entry_1.f90
+++ b/gcc/testsuite/gfortran.dg/entry_1.f90
@@ -19,13 +19,13 @@ end subroutine
subroutine foo(a, b)
integer a, b
logical, save :: was_foo = .false.
- if ((a .ne. 3) .or. (b .ne. 4)) call abort
+ if ((a .ne. 3) .or. (b .ne. 4)) STOP 1
was_foo = .true.
entry bar(a)
if (was_foo) then
- if ((a .ne. 3) .or. (b .ne. 4)) call abort
+ if ((a .ne. 3) .or. (b .ne. 4)) STOP 2
else
- if (a .ne. 5) call abort
+ if (a .ne. 5) STOP 3
end if
was_foo = .false.
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/entry_10.f90 b/gcc/testsuite/gfortran.dg/entry_10.f90
index dc80c7949e0..2f526e20056 100644
--- a/gcc/testsuite/gfortran.dg/entry_10.f90
+++ b/gcc/testsuite/gfortran.dg/entry_10.f90
@@ -28,8 +28,8 @@ contains
end module
use a
- if (b (1.0) .ne. 1.0) call abort ()
- if (b (1 ) .ne. 2.0) call abort ()
- if (e (1.0) .ne. 3.0) call abort ()
- if (f (1 ) .ne. 4.0) call abort ()
+ if (b (1.0) .ne. 1.0) STOP 1
+ if (b (1 ) .ne. 2.0) STOP 2
+ if (e (1.0) .ne. 3.0) STOP 3
+ if (f (1 ) .ne. 4.0) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/entry_12.f90 b/gcc/testsuite/gfortran.dg/entry_12.f90
index 15e874e2b05..1c9b1cd49e5 100644
--- a/gcc/testsuite/gfortran.dg/entry_12.f90
+++ b/gcc/testsuite/gfortran.dg/entry_12.f90
@@ -26,5 +26,5 @@ END MODULE ksbin1_aux_mod
use ksbin1_aux_mod
if (any ((/foo (), bar (99), foobar (), foobar (99), j (), k (99)/) .ne. &
- (/1, 2, 1, 2, 1, 2/))) Call abort ()
+ (/1, 2, 1, 2, 1, 2/))) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/entry_13.f90 b/gcc/testsuite/gfortran.dg/entry_13.f90
index 1858cc37735..c94e5562234 100644
--- a/gcc/testsuite/gfortran.dg/entry_13.f90
+++ b/gcc/testsuite/gfortran.dg/entry_13.f90
@@ -67,12 +67,12 @@ program test
type(z) z1
z1 = x1//y1
- if (abs(z1%x - (19.0_4 + 7.0_4)) > epsilon(x1%x)) call abort ()
+ if (abs(z1%x - (19.0_4 + 7.0_4)) > epsilon(x1%x)) STOP 1
z1 = y1//x1
- if (abs(z1%x - (19.0_4 - 7.0_4)) > epsilon(x1%x)) call abort ()
+ if (abs(z1%x - (19.0_4 - 7.0_4)) > epsilon(x1%x)) STOP 2
z1 = x1==y1
- if (abs(z1%x - 19.0_4/7.0_4) > epsilon(x1%x)) call abort ()
+ if (abs(z1%x - 19.0_4/7.0_4) > epsilon(x1%x)) STOP 3
z1 = y1==x1
- if (abs(z1%x - 19.0_4/7.0_4) > epsilon(x1%x)) call abort ()
+ if (abs(z1%x - 19.0_4/7.0_4) > epsilon(x1%x)) STOP 4
end program test
diff --git a/gcc/testsuite/gfortran.dg/entry_14.f90 b/gcc/testsuite/gfortran.dg/entry_14.f90
index dfed19549f7..6c6af74b81f 100644
--- a/gcc/testsuite/gfortran.dg/entry_14.f90
+++ b/gcc/testsuite/gfortran.dg/entry_14.f90
@@ -77,25 +77,25 @@ contains
subroutine test1()
use m1
implicit none
- if(func(3) /= 12) call abort()
- if(abs(ent(7) + 14.0) > tiny(1.0)) call abort()
+ if(func(3) /= 12) STOP 1
+ if(abs(ent(7) + 14.0) > tiny(1.0)) STOP 2
end subroutine test1
subroutine test2()
use m2
implicit none
- if(func(9) /= 72) call abort()
- if(abs(ent(11) + 44.0) > tiny(1.0)) call abort()
+ if(func(9) /= 72) STOP 3
+ if(abs(ent(11) + 44.0) > tiny(1.0)) STOP 4
end subroutine test2
subroutine test3()
use m3
implicit none
- if(func(13) /= 156) call abort()
- if(abs(ent(17) + 102.0) > tiny(1.0)) call abort()
+ if(func(13) /= 156) STOP 5
+ if(abs(ent(17) + 102.0) > tiny(1.0)) STOP 6
end subroutine test3
subroutine test4()
use m4
implicit none
- if(func(23) /= 368) call abort()
- if(abs(ent(27) + 216.0) > tiny(1.0)) call abort()
+ if(func(23) /= 368) STOP 7
+ if(abs(ent(27) + 216.0) > tiny(1.0)) STOP 8
end subroutine test4
end program main
diff --git a/gcc/testsuite/gfortran.dg/entry_16.f90 b/gcc/testsuite/gfortran.dg/entry_16.f90
index ba8eff86b8d..9707bc6007b 100644
--- a/gcc/testsuite/gfortran.dg/entry_16.f90
+++ b/gcc/testsuite/gfortran.dg/entry_16.f90
@@ -38,6 +38,6 @@ END MODULE complex
type(cx) :: a = cx (1, 2), c, d
logical :: f
integer :: b = 3
- if (.not.((a + b) .eq. (b + a))) call abort ()
- if (.not.((a + b) .eq. cx (4, 2))) call abort ()
+ if (.not.((a + b) .eq. (b + a))) STOP 1
+ if (.not.((a + b) .eq. cx (4, 2))) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/entry_3.f90 b/gcc/testsuite/gfortran.dg/entry_3.f90
index 36595ee31e1..991ade54b00 100644
--- a/gcc/testsuite/gfortran.dg/entry_3.f90
+++ b/gcc/testsuite/gfortran.dg/entry_3.f90
@@ -19,7 +19,7 @@ program entry_4_prog
integer :: a(2)
a = 0
call foo(a)
- if (any (a .ne. (/1, 2/))) call abort
+ if (any (a .ne. (/1, 2/))) STOP 1
call bar(a)
- if (any (a .ne. (/3, 4/))) call abort
+ if (any (a .ne. (/3, 4/))) STOP 2
end program
diff --git a/gcc/testsuite/gfortran.dg/entry_6.f90 b/gcc/testsuite/gfortran.dg/entry_6.f90
index c1d6c7cbb2d..e092062e408 100644
--- a/gcc/testsuite/gfortran.dg/entry_6.f90
+++ b/gcc/testsuite/gfortran.dg/entry_6.f90
@@ -42,13 +42,13 @@ contains
end function c1
end module foo
use foo
- if (n1(9) .ne. 729) call abort ()
- if (n2(2) .ne. 324) call abort ()
- if (n3(19) .ne. 200564019) call abort ()
- if (c1("lmno") .ne. "lmno") call abort ()
- if (c1("abcd") .ne. "ABCD") call abort ()
- if (c2("lmno") .ne. "lmno") call abort ()
- if (c2("wxyz") .ne. "WXYZ") call abort ()
- if (z1((3,4)) .ne. (-5, 10)) call abort ()
- if (z2((5,6)) .ne. (-9, 38)) call abort ()
+ if (n1(9) .ne. 729) STOP 1
+ if (n2(2) .ne. 324) STOP 2
+ if (n3(19) .ne. 200564019) STOP 3
+ if (c1("lmno") .ne. "lmno") STOP 4
+ if (c1("abcd") .ne. "ABCD") STOP 5
+ if (c2("lmno") .ne. "lmno") STOP 6
+ if (c2("wxyz") .ne. "WXYZ") STOP 7
+ if (z1((3,4)) .ne. (-5, 10)) STOP 8
+ if (z2((5,6)) .ne. (-9, 38)) STOP 9
end
diff --git a/gcc/testsuite/gfortran.dg/entry_9.f90 b/gcc/testsuite/gfortran.dg/entry_9.f90
index ecffcd83a60..53d68af5dbe 100644
--- a/gcc/testsuite/gfortran.dg/entry_9.f90
+++ b/gcc/testsuite/gfortran.dg/entry_9.f90
@@ -23,7 +23,7 @@ END MODULE M1
program main
use m1
- if (E1(5) /= -5) call abort()
- if (F2(4) /= -4) call abort()
- if (F1(1) /= -1) call abort()
+ if (E1(5) /= -5) STOP 1
+ if (F2(4) /= -4) STOP 2
+ if (F1(1) /= -1) STOP 3
end program main
diff --git a/gcc/testsuite/gfortran.dg/entry_array_specs_2.f b/gcc/testsuite/gfortran.dg/entry_array_specs_2.f
index ba4de318c88..2320697d3ea 100644
--- a/gcc/testsuite/gfortran.dg/entry_array_specs_2.f
+++ b/gcc/testsuite/gfortran.dg/entry_array_specs_2.f
@@ -9,9 +9,9 @@
real a(10)
a(1) = 999.
call x
- if (j .ne. 1) call abort ()
+ if (j .ne. 1) STOP 1
call y(a,10)
- if (j .ne. 2) call abort ()
+ if (j .ne. 2) STOP 2
stop
end
subroutine x
diff --git a/gcc/testsuite/gfortran.dg/enum_1.f90 b/gcc/testsuite/gfortran.dg/enum_1.f90
index 0156cb576f0..73c17307086 100644
--- a/gcc/testsuite/gfortran.dg/enum_1.f90
+++ b/gcc/testsuite/gfortran.dg/enum_1.f90
@@ -7,5 +7,5 @@ program main
enumerator :: red, black
enumerator blue
end enum
- if (red /= 0) call abort
+ if (red /= 0) STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/enum_9.f90 b/gcc/testsuite/gfortran.dg/enum_9.f90
index a9b95b439e2..431297ff89b 100644
--- a/gcc/testsuite/gfortran.dg/enum_9.f90
+++ b/gcc/testsuite/gfortran.dg/enum_9.f90
@@ -9,7 +9,7 @@ program main
enumerator :: red, black = 127
enumerator blue
end enum
- if (red /= 0) call abort
- if (black /= 127) call abort
- if (blue /= 128) call abort
+ if (red /= 0) STOP 1
+ if (black /= 127) STOP 2
+ if (blue /= 128) STOP 3
end program main
diff --git a/gcc/testsuite/gfortran.dg/eof_1.f90 b/gcc/testsuite/gfortran.dg/eof_1.f90
index 05726bd1413..b9d229508fe 100644
--- a/gcc/testsuite/gfortran.dg/eof_1.f90
+++ b/gcc/testsuite/gfortran.dg/eof_1.f90
@@ -9,9 +9,9 @@ program eof_1
write (11, '(a)') "Hello"
rewind(11)
read(11, *) s
- if (s .ne. "Hello") call abort
+ if (s .ne. "Hello") STOP 1
read(11, '(a5)', end=10) s
- call abort
+ STOP 2
10 continue
close (11)
end
diff --git a/gcc/testsuite/gfortran.dg/eof_2.f90 b/gcc/testsuite/gfortran.dg/eof_2.f90
index b7c2c9172c9..cf8f09bbc3f 100644
--- a/gcc/testsuite/gfortran.dg/eof_2.f90
+++ b/gcc/testsuite/gfortran.dg/eof_2.f90
@@ -6,8 +6,8 @@ program eof_2
open (11, status="SCRATCH")
ierr = 0
read (11, *, end=10, iostat=ierr) i
- call abort
+ STOP 1
10 continue
- if (ierr .ge. 0) call abort
+ if (ierr .ge. 0) STOP 2
end program
diff --git a/gcc/testsuite/gfortran.dg/eof_4.f90 b/gcc/testsuite/gfortran.dg/eof_4.f90
index 293c0fa39f6..2fe1bd8f6c2 100644
--- a/gcc/testsuite/gfortran.dg/eof_4.f90
+++ b/gcc/testsuite/gfortran.dg/eof_4.f90
@@ -18,20 +18,20 @@ close(99)
! Test character kind
open(99, file="test.dat")
read (99,*, iostat=stat) cvar
-if (stat /= 0 .or. cvar /= "1") call abort()
+if (stat /= 0 .or. cvar /= "1") STOP 1
read (99,*, iostat=stat) cvar
-if (stat /= 0 .or. cvar /= "2") call abort()
+if (stat /= 0 .or. cvar /= "2") STOP 2
read (99,*, iostat=stat) cvar ! << FAILS: stat /= 0
-if (stat /= 0 .or. cvar /= "3") call abort() ! << aborts here
+if (stat /= 0 .or. cvar /= "3") STOP 3 ! << aborts here
! Test real kind
rewind(99)
read (99,*, iostat=stat) var
-if (stat /= 0 .or. var /= 1.0) call abort()
+if (stat /= 0 .or. var /= 1.0) STOP 4
read (99,*, iostat=stat) var
-if (stat /= 0 .or. var /= 2.0) call abort()
+if (stat /= 0 .or. var /= 2.0) STOP 5
read (99,*, iostat=stat) var ! << FAILS: stat /= 0
-if (stat /= 0 .or. var /= 3.0) call abort()
+if (stat /= 0 .or. var /= 3.0) STOP 6
close(99, status="delete")
! Test real kind with exponents
@@ -43,11 +43,11 @@ close(99)
open(99, file="test.dat")
read (99,*, iostat=stat) var
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 7
read (99,*, iostat=stat) var
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 8
read (99,*) var ! << FAILS: stat /= 0
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 9
close(99, status="delete")
! Test logical kind
@@ -59,11 +59,11 @@ close(99)
open(99, file="test.dat")
read (99,*, iostat=stat) lvar
-if (stat /= 0 .or. (.not.lvar)) call abort()
+if (stat /= 0 .or. (.not.lvar)) STOP 10
read (99,*, iostat=stat) lvar
-if (stat /= 0 .or. lvar) call abort()
+if (stat /= 0 .or. lvar) STOP 11
read (99,*) lvar ! << FAILS: stat /= 0
-if (stat /= 0 .or. (.not.lvar)) call abort()
+if (stat /= 0 .or. (.not.lvar)) STOP 12
close(99, status="delete")
! Test combinations of Inf and Nan
@@ -75,11 +75,11 @@ close(99)
open(99, file="test.dat")
read (99,*, iostat=stat) var
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 13
read (99,*, iostat=stat) var
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 14
read (99,*) var ! << FAILS: stat /= 0
-if (stat /= 0) call abort ! << aborts here
+if (stat /= 0) STOP 1! << aborts here
close(99, status="delete")
open(99, file="test.dat", access="stream", form="unformatted", status="new")
@@ -90,11 +90,11 @@ close(99)
open(99, file="test.dat")
read (99,*, iostat=stat) var
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 15
read (99,*, iostat=stat) var
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 16
read (99,*) var ! << FAILS: stat /= 0
-if (stat /= 0) call abort ! << aborts here
+if (stat /= 0) STOP 2! << aborts here
close(99, status="delete")
open(99, file="test.dat", access="stream", form="unformatted", status="new")
@@ -105,11 +105,11 @@ close(99)
open(99, file="test.dat")
read (99,*, iostat=stat) var
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 17
read (99,*, iostat=stat) var
-if (stat /= 0) call abort()
+if (stat /= 0) STOP 18
read (99,*) var ! << FAILS: stat /= 0
-if (stat /= 0) call abort ! << aborts here
+if (stat /= 0) STOP 3! << aborts here
close(99, status="delete")
! Test complex kind
@@ -121,10 +121,10 @@ close(99)
open(99, file="test.dat")
read (99,*, iostat=stat) cval
-if (stat /= 0 .or. cval /= cmplx(1,2)) call abort()
+if (stat /= 0 .or. cval /= cmplx(1,2)) STOP 19
read (99,*, iostat=stat) cval
-if (stat /= 0 .or. cval /= cmplx(2,3)) call abort()
+if (stat /= 0 .or. cval /= cmplx(2,3)) STOP 20
read (99,*, iostat=stat) cval ! << FAILS: stat /= 0, value is okay
-if (stat /= 0 .or. cval /= cmplx(4,5)) call abort()
+if (stat /= 0 .or. cval /= cmplx(4,5)) STOP 21
close(99, status="delete")
end
diff --git a/gcc/testsuite/gfortran.dg/eof_5.f90 b/gcc/testsuite/gfortran.dg/eof_5.f90
index 88671ba2374..3efcc125561 100644
--- a/gcc/testsuite/gfortran.dg/eof_5.f90
+++ b/gcc/testsuite/gfortran.dg/eof_5.f90
@@ -12,10 +12,10 @@ program iotest
real :: a1, a2, a3, a4
read(inp2,*,iostat=ios) a1, a2, a3, a4
- if (ios /= 0) call abort ()
+ if (ios /= 0) STOP 1
read(inp,*,iostat=ios) a1, a2, a3, a4
- if (ios == 0) call abort ()
+ if (ios == 0) STOP 2
! write(*,*) 'IOSTAT=',ios
end program iotest
diff --git a/gcc/testsuite/gfortran.dg/eor_handling_1.f90 b/gcc/testsuite/gfortran.dg/eor_handling_1.f90
index 241f8a0fe4e..b0e91b5d288 100644
--- a/gcc/testsuite/gfortran.dg/eor_handling_1.f90
+++ b/gcc/testsuite/gfortran.dg/eor_handling_1.f90
@@ -9,6 +9,6 @@ program main
i = 42
j = 42
read(77,'(/2i2)') i,j
- if (i /= 0 .or. j /= 0) call abort
+ if (i /= 0 .or. j /= 0) STOP 1
close(77)
end program main
diff --git a/gcc/testsuite/gfortran.dg/eor_handling_2.f90 b/gcc/testsuite/gfortran.dg/eor_handling_2.f90
index 9ae56384695..6c03974cf4b 100644
--- a/gcc/testsuite/gfortran.dg/eor_handling_2.f90
+++ b/gcc/testsuite/gfortran.dg/eor_handling_2.f90
@@ -8,6 +8,6 @@ program main
rewind(77)
read(77,'(10A1)'), c1 ! { dg-warning "Comma before i/o item list" }
read(77,'(10A1)'), c2 ! { dg-warning "Comma before i/o item list" }
- if (c1(1) /= 'L' .or. c2(1) /= 'L') call abort
+ if (c1(1) /= 'L' .or. c2(1) /= 'L') STOP 1
close(77)
end program main
diff --git a/gcc/testsuite/gfortran.dg/eor_handling_3.f90 b/gcc/testsuite/gfortran.dg/eor_handling_3.f90
index 4225e867a85..f17cb0fe8ff 100644
--- a/gcc/testsuite/gfortran.dg/eor_handling_3.f90
+++ b/gcc/testsuite/gfortran.dg/eor_handling_3.f90
@@ -6,8 +6,8 @@ program main
write (77,'(A)') '123','456'
rewind(77)
read(77,'(2I2)',advance='no',eor=100) i1,i2
- call abort
+ STOP 1
100 continue
- if (i1 /= 12 .or. i2 /= 3) call abort
+ if (i1 /= 12 .or. i2 /= 3) STOP 2
close(77)
end program main
diff --git a/gcc/testsuite/gfortran.dg/eor_handling_4.f90 b/gcc/testsuite/gfortran.dg/eor_handling_4.f90
index 300c10b820a..45afaa22dde 100644
--- a/gcc/testsuite/gfortran.dg/eor_handling_4.f90
+++ b/gcc/testsuite/gfortran.dg/eor_handling_4.f90
@@ -12,6 +12,6 @@ program main
read(5,'(80a1)') a
if (a(1) == 's') goto 100
end do
- call abort
+ STOP 1
100 continue
end program main
diff --git a/gcc/testsuite/gfortran.dg/eor_handling_5.f90 b/gcc/testsuite/gfortran.dg/eor_handling_5.f90
index c116fb7bdea..5bbc0135d3a 100644
--- a/gcc/testsuite/gfortran.dg/eor_handling_5.f90
+++ b/gcc/testsuite/gfortran.dg/eor_handling_5.f90
@@ -7,13 +7,13 @@ program fc002
integer :: k,k2
character(len=*), parameter :: f="(a)"
open(11,status="scratch", iostat=k)
- if (k /= 0) call abort
+ if (k /= 0) STOP 1
write(11,f) "x"
rewind (11)
read(11, f, advance="no", iostat=k) c
- if (k /= 0) call abort
+ if (k /= 0) STOP 2
read(11, f, advance="no", iostat=k) c
- if (k >= 0) call abort
+ if (k >= 0) STOP 3
read(11, f, advance="no", iostat=k2) c
- if (k2 >= 0 .or. k == k2) call abort
+ if (k2 >= 0 .or. k == k2) STOP 4
end program fc002
diff --git a/gcc/testsuite/gfortran.dg/eoshift_3.f90 b/gcc/testsuite/gfortran.dg/eoshift_3.f90
index d1087aa8654..2c2f7073a43 100644
--- a/gcc/testsuite/gfortran.dg/eoshift_3.f90
+++ b/gcc/testsuite/gfortran.dg/eoshift_3.f90
@@ -152,7 +152,7 @@ program main
call eoshift_0 (a, shift=shift, dim=dim, res=c)
if (any (b /= c)) then
print *,"dim = ", dim, "shift = ", shift
- call abort
+ STOP 1
end if
end do
end do
@@ -171,7 +171,7 @@ program main
do shift=-shift_lim, shift_lim
b(1:n1:2,:,:) = eoshift(a(1:n1/2,:,:),shift,dim=dim)
call eoshift_0 (a(1:n1/2,:,:), shift=shift, dim=dim, res=c(1:n1:2,:,:))
- if (any (b /= c)) call abort
+ if (any (b /= c)) STOP 2
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/eoshift_4.f90 b/gcc/testsuite/gfortran.dg/eoshift_4.f90
index 6d1a28a8479..85e5dab607d 100644
--- a/gcc/testsuite/gfortran.dg/eoshift_4.f90
+++ b/gcc/testsuite/gfortran.dg/eoshift_4.f90
@@ -166,21 +166,21 @@ program main
print *,"dim = ", dim, "shift = ", shift
print *,b
print *,c
- call abort
+ STOP 1
end if
a2 = 42.
a2(1:2*n1:2,:,:) = a
b = eoshift(a2(1:2*n1:2,:,:), shift, dim=dim, boundary=bp)
if (any (b /= c)) then
- call abort
+ STOP 2
end if
c2 = 43.
c2(1:2*n1:2,:,:) = eoshift(a,shift,dim=dim, boundary=bp)
if (any(c2(1:2*n1:2,:,:) /= c)) then
- call abort
+ STOP 3
end if
if (any(c2(2:2*n1:2,:,:) /= 43)) then
- call abort
+ STOP 4
end if
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/eoshift_5.f90 b/gcc/testsuite/gfortran.dg/eoshift_5.f90
index a8c2494ad76..89b04bde433 100644
--- a/gcc/testsuite/gfortran.dg/eoshift_5.f90
+++ b/gcc/testsuite/gfortran.dg/eoshift_5.f90
@@ -162,21 +162,21 @@ program main
print *,"sp = ", sp
print '(99F8.4)',b
print '(99F8.4)',c
- call abort
+ STOP 1
end if
a2 = 42.
a2(1:2*n1:2,:,:) = a
b = eoshift(a2(1:2*n1:2,:,:), shift=sp, dim=dim, boundary=-0.5)
if (any(b /= c)) then
- call abort
+ STOP 2
end if
c2 = 43.
c2(1:2*n1:2,:,:) = eoshift(a, shift=sp, dim=dim, boundary=-0.5)
if (any(c2(1:2*n1:2,:,:) /= c)) then
- call abort
+ STOP 3
end if
if (any(c2(2:2*n1:2,:,:) /= 43.)) then
- call abort
+ STOP 4
end if
end do
end program main
diff --git a/gcc/testsuite/gfortran.dg/eoshift_6.f90 b/gcc/testsuite/gfortran.dg/eoshift_6.f90
index f3f833cc941..864be5aa035 100644
--- a/gcc/testsuite/gfortran.dg/eoshift_6.f90
+++ b/gcc/testsuite/gfortran.dg/eoshift_6.f90
@@ -161,21 +161,21 @@ program main
b = eoshift(a,shift=sp,dim=dim,boundary=bp)
call eoshift_3 (a, shift=sp, dim=dim, boundary=bp,res=c)
if (any (b /= c)) then
- call abort
+ STOP 1
end if
a2 = 42.
a2(1:2*n1:2,:,:) = a
b = eoshift(a2(1:2*n1:2,:,:), shift=sp, dim=dim, boundary=bp)
if (any(b /= c)) then
- call abort
+ STOP 2
end if
c2 = 43.
c2(1:2*n1:2,:,:) = eoshift(a, shift=sp, dim=dim, boundary=bp)
if (any(c2(1:2*n1:2,:,:) /= c)) then
- call abort
+ STOP 3
end if
if (any(c2(2:2*n1:2,:,:) /= 43.)) then
- call abort
+ STOP 4
end if
end do
end program main
diff --git a/gcc/testsuite/gfortran.dg/eoshift_large_1.f90 b/gcc/testsuite/gfortran.dg/eoshift_large_1.f90
index 3b0ef7e36b0..158d4216cfd 100644
--- a/gcc/testsuite/gfortran.dg/eoshift_large_1.f90
+++ b/gcc/testsuite/gfortran.dg/eoshift_large_1.f90
@@ -12,95 +12,95 @@ program intrinsic_eoshift
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
a = eoshift (a, 1_k, 99_k, 1_k)
if (any (a .ne. reshape ((/2_k, 3_k, 99_k, 5_k, 6_k, 99_k, 8_k, 9_k, 99_k/), (/3_k, 3_k/)))) &
- call abort
+ STOP 1
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
a = eoshift (a, 9999_k, 99_k, 1_k)
- if (any (a .ne. 99_k)) call abort
+ if (any (a .ne. 99_k)) STOP 2
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
a = eoshift (a, -2_k, dim = 2_k)
if (any (a .ne. reshape ((/0_k, 0_k, 0_k, 0_k, 0_k, 0_k, 1_k, 2_k, 3_k/), (/3_k, 3_k/)))) &
- call abort
+ STOP 3
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
a = eoshift (a, -9999_k, 99_k, 1_k)
- if (any (a .ne. 99_k)) call abort
+ if (any (a .ne. 99_k)) STOP 4
! Array shift and scalar bound.
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
a = eoshift (a, (/1_k, 0_k, -1_k/), 99_k, 1_k)
if (any (a .ne. reshape ((/2_k, 3_k, 99_k, 4_k, 5_k, 6_k, 99_k, 7_k, 8_k/), (/3_k, 3_k/)))) &
- call abort
+ STOP 5
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
a = eoshift (a, (/9999_k, 0_k, -9999_k/), 99_k, 1_k)
if (any (a .ne. reshape ((/99_k, 99_k, 99_k, 4_k, 5_k, 6_k, 99_k, 99_k, 99_k/), (/3_k, 3_k/)))) &
- call abort
+ STOP 6
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
a = eoshift (a, (/2_k, -2_k, 0_k/), dim = 2_k)
if (any (a .ne. reshape ((/7_k, 0_k, 3_k, 0_k, 0_k, 6_k, 0_k, 2_k, 9_k/), (/3_k, 3_k/)))) &
- call abort
+ STOP 7
! Scalar shift and array bound.
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
a = eoshift (a, 1_k, (/99_k, -1_k, 42_k/), 1_k)
if (any (a .ne. reshape ((/2_k, 3_k, 99_k, 5_k, 6_k, -1_k, 8_k, 9_k, 42_k/), (/3_k, 3_k/)))) &
- call abort
+ STOP 8
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
a = eoshift (a, 9999_k, (/99_k, -1_k, 42_k/), 1_k)
if (any (a .ne. reshape ((/99_k, 99_k, 99_k, -1_k, -1_k, -1_k, 42_k, 42_k, 42_k/), &
- (/3_k, 3_k/)))) call abort
+ (/3_k, 3_k/)))) STOP 9
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
a = eoshift (a, -9999_k, (/99_k, -1_k, 42_k/), 1_k)
if (any (a .ne. reshape ((/99_k, 99_k, 99_k, -1_k, -1_k, -1_k, 42_k, 42_k, 42_k/), &
- (/3_k, 3_k/)))) call abort
+ (/3_k, 3_k/)))) STOP 10
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
a = eoshift (a, -2_k, (/99_k, -1_k, 42_k/), 2_k)
if (any (a .ne. reshape ((/99_k, -1_k, 42_k, 99_k, -1_k, 42_k, 1_k, 2_k, 3_k/), (/3_k, 3_k/)))) &
- call abort
+ STOP 11
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
bo = (/99_k, -1_k, 42_k/)
a = eoshift (a, -2_k, bo, 2_k)
if (any (a .ne. reshape ((/99_k, -1_k, 42_k, 99_k, -1_k, 42_k, 1_k, 2_k, 3_k/), (/3_k, 3_k/)))) &
- call abort
+ STOP 12
! Array shift and array bound.
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
a = eoshift (a, (/1_k, 0_k, -1_k/), (/99_k, -1_k, 42_k/), 1_k)
if (any (a .ne. reshape ((/2_k, 3_k, 99_k, 4_k, 5_k, 6_k, 42_k, 7_k, 8_k/), (/3_k, 3_k/)))) &
- call abort
+ STOP 13
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
a = eoshift (a, (/2_k, -2_k, 0_k/), (/99_k, -1_k, 42_k/), 2_k)
if (any (a .ne. reshape ((/7_k, -1_k, 3_k, 99_k, -1_k, 6_k, 99_k, 2_k, 9_k/), (/3_k, 3_k/)))) &
- call abort
+ STOP 14
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
sh = (/ 3_k, -1_k, -3_k /)
bo = (/-999_k, -99_k, -9_k /)
a = eoshift(a, shift=sh, boundary=bo)
if (any (a .ne. reshape ((/ -999_k, -999_k, -999_k, -99_k, 4_k, 5_k, -9_k, -9_k, -9_k /), &
- shape(a)))) call abort
+ shape(a)))) STOP 15
a = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
a = eoshift (a, (/9999_k, -9999_k, 0_k/), (/99_k, -1_k, 42_k/), 2_k)
if (any (a .ne. reshape ((/99_k, -1_k, 3_k, 99_k, -1_k, 6_k, 99_k, -1_k, 9_k/), (/3_k, 3_k/)))) &
- call abort
+ STOP 16
! Test arrays > rank 2
b(:, :, 1_k) = reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
b(:, :, 2_k) = 10_k + reshape ((/1_k, 2_k, 3_k, 4_k, 5_k, 6_k, 7_k, 8_k, 9_k/), (/3_k, 3_k/))
b = eoshift (b, 1_k, 99_k, 1_k)
if (any (b(:, :, 1_k) .ne. reshape ((/2_k, 3_k, 99_k, 5_k, 6_k, 99_k, 8_k, 9_k, 99_k/), (/3_k, 3_k/)))) &
- call abort
+ STOP 17
if (any (b(:, :, 2_k) .ne. reshape ((/12_k, 13_k, 99_k, 15_k, 16_k, 99_k, 18_k, 19_k, 99_k/), (/3_k, 3_k/)))) &
- call abort
+ STOP 18
! TODO: Test array sections
end program
diff --git a/gcc/testsuite/gfortran.dg/equiv_6.f90 b/gcc/testsuite/gfortran.dg/equiv_6.f90
index 1ab1a051373..a757771c1f8 100644
--- a/gcc/testsuite/gfortran.dg/equiv_6.f90
+++ b/gcc/testsuite/gfortran.dg/equiv_6.f90
@@ -21,7 +21,7 @@ program check_6
call set_array_listpr (listpr)
call set_array_lisbit (lisbit)
- if (any (listpr.ne.lischk)) call abort ()
+ if (any (listpr.ne.lischk)) STOP 1
call sub1
call sub2
call sub3
@@ -36,7 +36,7 @@ subroutine sub1
(listpr(10),lispat(1))
call set_array_listpr (listpr)
call set_array_lisbit (lisbit)
- if (any (listpr .ne. lischk)) call abort ()
+ if (any (listpr .ne. lischk)) STOP 2
end
!
! Equivalences not in COMMON
@@ -50,7 +50,7 @@ subroutine sub2
(mwkx(10),lisbit(1),listpr(10))
call set_array_listpr (listpr)
call set_array_lisbit (lisbit)
- if (any (listpr .ne. lischk)) call abort ()
+ if (any (listpr .ne. lischk)) STOP 3
end
! This gave correct results because the order in which the
! equivalences are taken is different and was given in the PR.
@@ -62,7 +62,7 @@ subroutine sub3
(lispat(1),listpr(10))
call set_array_listpr (listpr)
call set_array_lisbit (lisbit)
- if (any (listpr .ne. lischk)) call abort ()
+ if (any (listpr .ne. lischk)) STOP 4
end
subroutine set_array_listpr (listpr)
diff --git a/gcc/testsuite/gfortran.dg/equiv_7.f90 b/gcc/testsuite/gfortran.dg/equiv_7.f90
index 23f707b39c4..6ced922ac63 100644
--- a/gcc/testsuite/gfortran.dg/equiv_7.f90
+++ b/gcc/testsuite/gfortran.dg/equiv_7.f90
@@ -27,11 +27,11 @@ end block data
! Thanks Dominique d'Humieres:)
!
if (bigendian) then
- if (d1mach_little (1) .ne. transfer ((/0_4, 1048576_4/), 1d0)) call abort ()
- if (d1mach_little (2) .ne. transfer ((/-1_4,2146435071_4/), 1d0)) call abort ()
+ if (d1mach_little (1) .ne. transfer ((/0_4, 1048576_4/), 1d0)) STOP 1
+ if (d1mach_little (2) .ne. transfer ((/-1_4,2146435071_4/), 1d0)) STOP 2
else
- if (d1mach_big (1) .ne. transfer ((/1048576_4, 0_4/), 1d0)) call abort ()
- if (d1mach_big (2) .ne. transfer ((/2146435071_4,-1_4/), 1d0)) call abort ()
+ if (d1mach_big (1) .ne. transfer ((/1048576_4, 0_4/), 1d0)) STOP 3
+ if (d1mach_big (2) .ne. transfer ((/2146435071_4,-1_4/), 1d0)) STOP 4
end if
!
contains
@@ -41,7 +41,7 @@ contains
equivalence (b,a(3))
data b/3/
data (a(i), i=1,2) /1,2/, a(4) /4/
- if (any (a .ne. (/1, 2, 3, 4/))) call abort ()
+ if (any (a .ne. (/1, 2, 3, 4/))) STOP 5
end subroutine int4_int4
subroutine real4_real4
real(4) a(4)
@@ -51,7 +51,7 @@ contains
data (a(i), i=1,2) /1.0_4, 2.0_4/, &
a(4) /4.0_4/
if (sum (abs (a - &
- (/1.0_4, 2.0_4, 3.0_4, 4.0_4/))) > 1.0e-6) call abort ()
+ (/1.0_4, 2.0_4, 3.0_4, 4.0_4/))) > 1.0e-6) STOP 6
end subroutine real4_real4
subroutine complex_real
complex(4) a(4)
@@ -61,13 +61,13 @@ contains
data (a(i), i=1,2) /(0.0_4, 1.0_4),(2.0_4,0.0_4)/, &
a(4) /(0.0_4,5.0_4)/
if (sum (abs (a - (/(0.0_4, 1.0_4),(2.0_4, 0.0_4), &
- (3.0_4, 4.0_4),(0.0_4, 5.0_4)/))) > 1.0e-6) call abort ()
+ (3.0_4, 4.0_4),(0.0_4, 5.0_4)/))) > 1.0e-6) STOP 7
end subroutine complex_real
subroutine check_block_data
common /global/ ca (4)
equivalence (ca(3), cb)
integer(4) ca
- if (any (ca .ne. (/42, 43, 99, 44/))) call abort ()
+ if (any (ca .ne. (/42, 43, 99, 44/))) STOP 8
end subroutine check_block_data
function d1mach_little(i) result(d1mach)
implicit none
@@ -107,8 +107,8 @@ contains
TYPE(T1) :: a1
TYPE(T2) :: a2
EQUIVALENCE(a1,a2) ! { dg-warning="mixed|components" }
- if (a1%chr .ne. "wxy") call abort ()
- if (a1%i .ne. 1) call abort ()
- if (a1%j .ne. 4) call abort ()
+ if (a1%chr .ne. "wxy") STOP 9
+ if (a1%i .ne. 1) STOP 10
+ if (a1%j .ne. 4) STOP 11
end subroutine derived_types
end
diff --git a/gcc/testsuite/gfortran.dg/equiv_9.f90 b/gcc/testsuite/gfortran.dg/equiv_9.f90
index 5a226282161..c82c6d3be8c 100644
--- a/gcc/testsuite/gfortran.dg/equiv_9.f90
+++ b/gcc/testsuite/gfortran.dg/equiv_9.f90
@@ -17,5 +17,5 @@ end program
subroutine another()
use constant, only : x2
implicit none
- if (x2 /= 2) call abort
+ if (x2 /= 2) STOP 1
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/equiv_constraint_4.f90 b/gcc/testsuite/gfortran.dg/equiv_constraint_4.f90
index be9591afbb4..2c71ba33a01 100644
--- a/gcc/testsuite/gfortran.dg/equiv_constraint_4.f90
+++ b/gcc/testsuite/gfortran.dg/equiv_constraint_4.f90
@@ -9,7 +9,7 @@ END TYPE data_type
INTEGER :: J = 7
TYPE(data_type) :: dd
EQUIVALENCE(dd,J)
-if (dd%i.ne.7) call abort ()
+if (dd%i.ne.7) STOP 1
END
diff --git a/gcc/testsuite/gfortran.dg/erf_2.F90 b/gcc/testsuite/gfortran.dg/erf_2.F90
index c92f45b0476..e9fd99aa05d 100644
--- a/gcc/testsuite/gfortran.dg/erf_2.F90
+++ b/gcc/testsuite/gfortran.dg/erf_2.F90
@@ -44,12 +44,12 @@ contains
subroutine check_r4 (a, b)
real(kind=4), intent(in) :: a, b
- if (abs(a - b) > 10 * spacing(a)) call abort
+ if (abs(a - b) > 10 * spacing(a)) STOP 1
end subroutine
subroutine check_r8 (a, b)
real(kind=8), intent(in) :: a, b
- if (abs(a - b) > 10 * spacing(a)) call abort
+ if (abs(a - b) > 10 * spacing(a)) STOP 2
end subroutine
end program test
diff --git a/gcc/testsuite/gfortran.dg/erf_3.F90 b/gcc/testsuite/gfortran.dg/erf_3.F90
index df82e126bd8..8c287e857fb 100644
--- a/gcc/testsuite/gfortran.dg/erf_3.F90
+++ b/gcc/testsuite/gfortran.dg/erf_3.F90
@@ -48,7 +48,7 @@ contains
subroutine check (a, b)
real(kind=qp), intent(in) :: a, b
print *, abs(a-b) / spacing(a)
- if (abs(a - b) > 10 * spacing(a)) call abort
+ if (abs(a - b) > 10 * spacing(a)) STOP 1
end subroutine
end program test
diff --git a/gcc/testsuite/gfortran.dg/erfc_scaled_1.f90 b/gcc/testsuite/gfortran.dg/erfc_scaled_1.f90
index eeb54c829dc..6524a91c378 100644
--- a/gcc/testsuite/gfortran.dg/erfc_scaled_1.f90
+++ b/gcc/testsuite/gfortran.dg/erfc_scaled_1.f90
@@ -23,10 +23,10 @@ program test
contains
subroutine check_r4 (a, b)
real(kind=4), intent(in) :: a, b
- if (abs(a - b) > 1.e-5 * abs(b)) call abort
+ if (abs(a - b) > 1.e-5 * abs(b)) STOP 1
end subroutine
subroutine check_r8 (a, b)
real(kind=8), intent(in) :: a, b
- if (abs(a - b) > 1.e-7 * abs(b)) call abort
+ if (abs(a - b) > 1.e-7 * abs(b)) STOP 2
end subroutine
end program test
diff --git a/gcc/testsuite/gfortran.dg/error_format_2.f90 b/gcc/testsuite/gfortran.dg/error_format_2.f90
index 421da9a0261..19b62985064 100644
--- a/gcc/testsuite/gfortran.dg/error_format_2.f90
+++ b/gcc/testsuite/gfortran.dg/error_format_2.f90
@@ -9,8 +9,8 @@ subroutine s(fmt)
integer :: i
write (c, fmt, iostat=i) 42
! print *, i
- if (i==0) call abort()
+ if (i==0) STOP 1
write (c, fmt, err=100) 42
- call abort()
+ STOP 2
100 continue
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/error_recovery_5.f90 b/gcc/testsuite/gfortran.dg/error_recovery_5.f90
index 88acf93ccf7..1d23017d6fd 100644
--- a/gcc/testsuite/gfortran.dg/error_recovery_5.f90
+++ b/gcc/testsuite/gfortran.dg/error_recovery_5.f90
@@ -24,7 +24,7 @@ program pr34411
read(10,'(T7,2F9.3)', iostat=ii, end=666) x,y
end do
666 continue
- if (i /= 12) call abort
- if (x /= 379.76901 .and. y /= 231.22600) call abort
+ if (i /= 12) STOP 1
+ if (x /= 379.76901 .and. y /= 231.22600) STOP 2
close(10)
end program pr34411
diff --git a/gcc/testsuite/gfortran.dg/execute_command_line_2.f90 b/gcc/testsuite/gfortran.dg/execute_command_line_2.f90
index 5a4e9cc7b82..43b97c906de 100644
--- a/gcc/testsuite/gfortran.dg/execute_command_line_2.f90
+++ b/gcc/testsuite/gfortran.dg/execute_command_line_2.f90
@@ -8,7 +8,7 @@
! This should fail, set CMDSTAT to nonzero value, and an error message
! in CMDMSG.
call execute_command_line ("/nosuchfile", exitstat=s, cmdstat=c, cmdmsg=msg)
- if (c == 0) call abort
- if (len_trim(msg) == 0) call abort
+ if (c == 0) STOP 1
+ if (len_trim(msg) == 0) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/execute_command_line_3.f90 b/gcc/testsuite/gfortran.dg/execute_command_line_3.f90
index c1790d801f3..7db17c25291 100644
--- a/gcc/testsuite/gfortran.dg/execute_command_line_3.f90
+++ b/gcc/testsuite/gfortran.dg/execute_command_line_3.f90
@@ -10,14 +10,14 @@ character(len=:), allocatable :: command
msg='' ! seems to only be defined if exitstatus.ne.0
! ok -- these work
call execute_command_line(command , wait=.false., exitstat=i, cmdstat=j, cmdmsg=msg)
- if (j /= 0 .or. msg /= '') call abort
+ if (j /= 0 .or. msg /= '') STOP 1
call execute_command_line(command , exitstat=i, cmdstat=j, cmdmsg=msg )
- if (j /= 3 .or. msg /= "Invalid command line" ) call abort
+ if (j /= 3 .or. msg /= "Invalid command line" ) STOP 2
msg = ''
call execute_command_line(command , wait=.false., exitstat=i, cmdmsg=msg )
- if (j /= 3) call abort
+ if (j /= 3) STOP 3
call execute_command_line(command , wait=.false., exitstat=i )
- if (msg /= '') call abort
+ if (msg /= '') STOP 4
call execute_command_line(command , exitstat=i, cmdstat=j )
end program boom
diff --git a/gcc/testsuite/gfortran.dg/exit_1.f08 b/gcc/testsuite/gfortran.dg/exit_1.f08
index 9ebc2eccb50..c01a6f41fd0 100644
--- a/gcc/testsuite/gfortran.dg/exit_1.f08
+++ b/gcc/testsuite/gfortran.dg/exit_1.f08
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2008 -fall-intrinsics" }
+! { dg-options "-std=f2008 " }
! PR fortran/44709
! Check that exit and cycle from within a BLOCK works for loops as expected.
@@ -15,7 +15,7 @@ PROGRAM main
BLOCK
EXIT
END BLOCK
- CALL abort ()
+ STOP 1
END DO
! Cycle without loop name.
@@ -23,7 +23,7 @@ PROGRAM main
BLOCK
CYCLE
END BLOCK
- CALL abort ()
+ STOP 2
END DO
! Exit loop by name from within a BLOCK.
@@ -32,9 +32,9 @@ PROGRAM main
BLOCK
EXIT loop1
END BLOCK
- CALL abort ()
+ STOP 3
END DO
- CALL abort ()
+ STOP 4
END DO loop1
! Cycle loop by name from within a BLOCK.
@@ -43,8 +43,8 @@ PROGRAM main
BLOCK
CYCLE loop2
END BLOCK
- CALL abort ()
+ STOP 5
END DO loop3
- CALL abort ()
+ STOP 6
END DO loop2
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/exit_3.f08 b/gcc/testsuite/gfortran.dg/exit_3.f08
index 301b017357e..6fa735afc6d 100644
--- a/gcc/testsuite/gfortran.dg/exit_3.f08
+++ b/gcc/testsuite/gfortran.dg/exit_3.f08
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2008 -fall-intrinsics" }
+! { dg-options "-std=f2008 " }
! PR fortran/44602
! Check for correct behavior of EXIT / CYCLE combined with non-loop
@@ -23,57 +23,57 @@ PROGRAM main
i = 2
myif: IF (i == 1) THEN
- CALL abort ()
+ STOP 1
EXIT myif
ELSE IF (i == 2) THEN
EXIT myif
- CALL abort ()
+ STOP 2
ELSE
- CALL abort ()
+ STOP 3
EXIT myif
END IF myif
mysel: SELECT CASE (i)
CASE (1)
- CALL abort ()
+ STOP 4
EXIT mysel
CASE (2)
EXIT mysel
- CALL abort ()
+ STOP 5
CASE DEFAULT
- CALL abort ()
+ STOP 6
EXIT mysel
END SELECT mysel
mycharsel: SELECT CASE ("foobar")
CASE ("abc")
- CALL abort ()
+ STOP 7
EXIT mycharsel
CASE ("xyz")
- CALL abort ()
+ STOP 8
EXIT mycharsel
CASE DEFAULT
EXIT mycharsel
- CALL abort ()
+ STOP 9
END SELECT mycharsel
myblock: BLOCK
EXIT myblock
- CALL abort ()
+ STOP 10
END BLOCK myblock
myassoc: ASSOCIATE (x => 5 + 2)
EXIT myassoc
- CALL abort ()
+ STOP 11
END ASSOCIATE myassoc
ALLOCATE (t :: var)
mytypesel: SELECT TYPE (var)
TYPE IS (t)
EXIT mytypesel
- CALL abort ()
+ STOP 12
CLASS DEFAULT
- CALL abort ()
+ STOP 13
EXIT mytypesel
END SELECT mytypesel
@@ -81,8 +81,8 @@ PROGRAM main
outer: BLOCK
inner: IF (.TRUE.) THEN
EXIT outer
- CALL abort ()
+ STOP 14
END IF inner
- CALL abort ()
+ STOP 15
END BLOCK outer
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/exponent_1.f90 b/gcc/testsuite/gfortran.dg/exponent_1.f90
index 9f701e82be1..ebc028a7fc7 100644
--- a/gcc/testsuite/gfortran.dg/exponent_1.f90
+++ b/gcc/testsuite/gfortran.dg/exponent_1.f90
@@ -8,16 +8,16 @@ program gfcbug36
real, parameter :: one = 1.0
real :: a = one
- if (fraction(a) /= 0.5) call abort
- if (fraction(one) /= 0.5) call abort
- if (fraction(1.0) /= 0.5) call abort
+ if (fraction(a) /= 0.5) STOP 1
+ if (fraction(one) /= 0.5) STOP 2
+ if (fraction(1.0) /= 0.5) STOP 3
- if (exponent(a) /= 1.0) call abort
- if (exponent(one) /= 1.0) call abort
- if (exponent (1.0) /= 1.0) call abort
+ if (exponent(a) /= 1.0) STOP 4
+ if (exponent(one) /= 1.0) STOP 5
+ if (exponent (1.0) /= 1.0) STOP 6
- if (scale(fraction(a), exponent(a)) / a /= 1.) call abort
- if (scale(fraction(one), exponent(one)) / one /= 1.) call abort
- if (scale(fraction(1.0), exponent(1.0)) / 1.0 /= 1.) call abort
+ if (scale(fraction(a), exponent(a)) / a /= 1.) STOP 7
+ if (scale(fraction(one), exponent(one)) / one /= 1.) STOP 8
+ if (scale(fraction(1.0), exponent(1.0)) / 1.0 /= 1.) STOP 9
end program gfcbug36
diff --git a/gcc/testsuite/gfortran.dg/exponent_2.f90 b/gcc/testsuite/gfortran.dg/exponent_2.f90
index 1b917066cd0..97569dadd47 100644
--- a/gcc/testsuite/gfortran.dg/exponent_2.f90
+++ b/gcc/testsuite/gfortran.dg/exponent_2.f90
@@ -5,7 +5,7 @@
integer i
real x
x = 3.0
-if (2 /= exponent(x)) call abort
+if (2 /= exponent(x)) STOP 1
i = exponent (x)
-if (i /= 2) call abort
+if (i /= 2) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/extended_char_comparison_1.f b/gcc/testsuite/gfortran.dg/extended_char_comparison_1.f
index b3d7c045620..17883562b44 100644
--- a/gcc/testsuite/gfortran.dg/extended_char_comparison_1.f
+++ b/gcc/testsuite/gfortran.dg/extended_char_comparison_1.f
@@ -12,7 +12,7 @@
a1 = c1 > c2;
call setval(c1, c2)
a2 = c1 > c2
- if (a1 .neqv. a2) call abort
+ if (a1 .neqv. a2) STOP 1
end
subroutine setval(c1, c2)
diff --git a/gcc/testsuite/gfortran.dg/extends_1.f03 b/gcc/testsuite/gfortran.dg/extends_1.f03
index bb01728a5e7..84e408c292a 100644
--- a/gcc/testsuite/gfortran.dg/extends_1.f03
+++ b/gcc/testsuite/gfortran.dg/extends_1.f03
@@ -43,10 +43,10 @@ end module person_education
recruit => entry ("John Smith", 123456, 1, "Bog Hill High School", &
99, "Records", supervisor)
- if (trim (recruit%name) /= "John Smith") call abort
- if (recruit%name /= recruit%service%name) call abort
- if (recruit%supervisor%ss /= 123455) call abort
- if (recruit%supervisor%ss /= supervisor%person%ss) call abort
+ if (trim (recruit%name) /= "John Smith") STOP 1
+ if (recruit%name /= recruit%service%name) STOP 2
+ if (recruit%supervisor%ss /= 123455) STOP 3
+ if (recruit%supervisor%ss /= supervisor%person%ss) STOP 4
deallocate (supervisor)
deallocate (recruit)
diff --git a/gcc/testsuite/gfortran.dg/extends_16.f90 b/gcc/testsuite/gfortran.dg/extends_16.f90
index 376fcaae49d..069e3d079d5 100644
--- a/gcc/testsuite/gfortran.dg/extends_16.f90
+++ b/gcc/testsuite/gfortran.dg/extends_16.f90
@@ -18,8 +18,8 @@
type(Grandchild), parameter :: object = Grandchild(23, 42, -99)
- if (object%member1 /= 23) call abort
- if (object%member2 /= 42) call abort
- if (object%member3 /= -99) call abort
+ if (object%member1 /= 23) STOP 1
+ if (object%member2 /= 42) STOP 1
+ if (object%member3 /= -99) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/extends_2.f03 b/gcc/testsuite/gfortran.dg/extends_2.f03
index ca92378a72f..9456e30c7b1 100644
--- a/gcc/testsuite/gfortran.dg/extends_2.f03
+++ b/gcc/testsuite/gfortran.dg/extends_2.f03
@@ -39,10 +39,10 @@ end module person_education
recruit => entry ("John Smith", 123456, 1, "Bog Hill High School", &
99, "Records", supervisor)
- if (trim (recruit%name) /= "John Smith") call abort
- if (recruit%name /= recruit%service%name) call abort
- if (recruit%supervisor%ss /= 123455) call abort
- if (recruit%supervisor%ss /= supervisor%person%ss) call abort
+ if (trim (recruit%name) /= "John Smith") STOP 1
+ if (recruit%name /= recruit%service%name) STOP 2
+ if (recruit%supervisor%ss /= 123455) STOP 3
+ if (recruit%supervisor%ss /= supervisor%person%ss) STOP 4
deallocate (supervisor)
deallocate (recruit)
diff --git a/gcc/testsuite/gfortran.dg/extends_3.f03 b/gcc/testsuite/gfortran.dg/extends_3.f03
index eabac67b684..5877658fea5 100644
--- a/gcc/testsuite/gfortran.dg/extends_3.f03
+++ b/gcc/testsuite/gfortran.dg/extends_3.f03
@@ -37,15 +37,15 @@ end module person_education
recruit => entry ("John Smith", 123456, 1, "Bog Hill High School", &
99, "Records", supervisor)
- if (supervisor%ss /= 123455) call abort
- if (trim (supervisor%name) /= "Joe Honcho") call abort
- if (trim (supervisor%institution) /= "") call abort
- if (supervisor%attainment /= 0) call abort
+ if (supervisor%ss /= 123455) STOP 1
+ if (trim (supervisor%name) /= "Joe Honcho") STOP 2
+ if (trim (supervisor%institution) /= "") STOP 3
+ if (supervisor%attainment /= 0) STOP 4
- if (trim (recruit%name) /= "John Smith") call abort
- if (recruit%name /= recruit%service%name) call abort
- if (recruit%supervisor%ss /= 123455) call abort
- if (recruit%supervisor%ss /= supervisor%person%ss) call abort
+ if (trim (recruit%name) /= "John Smith") STOP 5
+ if (recruit%name /= recruit%service%name) STOP 6
+ if (recruit%supervisor%ss /= 123455) STOP 7
+ if (recruit%supervisor%ss /= supervisor%person%ss) STOP 8
deallocate (supervisor)
deallocate (recruit)
diff --git a/gcc/testsuite/gfortran.dg/extends_4.f03 b/gcc/testsuite/gfortran.dg/extends_4.f03
index a0c91fd1984..32c508b3328 100644
--- a/gcc/testsuite/gfortran.dg/extends_4.f03
+++ b/gcc/testsuite/gfortran.dg/extends_4.f03
@@ -24,8 +24,8 @@ contains
end function
subroutine check_b (arg)
type(b) :: arg
- if (any (arg%x /= [10.0, 20.0])) call abort
- if (arg%i /= 1) call abort
+ if (any (arg%x /= [10.0, 20.0])) STOP 1
+ if (arg%i /= 1) STOP 2
end subroutine
end module mymod
@@ -41,7 +41,7 @@ end module mymod
type(d) :: q
p = f (x = [1.0, 2.0], if = 3)
- if (any (p%e%x /= [1.0, 2.0])) call abort
+ if (any (p%e%x /= [1.0, 2.0])) STOP 3
q%b = set_b ()
call check_b (q%b)
diff --git a/gcc/testsuite/gfortran.dg/extends_type_of_1.f03 b/gcc/testsuite/gfortran.dg/extends_type_of_1.f03
index 9e983846c90..f9ac08086d9 100644
--- a/gcc/testsuite/gfortran.dg/extends_type_of_1.f03
+++ b/gcc/testsuite/gfortran.dg/extends_type_of_1.f03
@@ -29,20 +29,20 @@
c2 => y
z%cc => y
- if (.not. extends_type_of (c1, c1)) call abort()
- if ( extends_type_of (c1, c2)) call abort()
- if (.not. extends_type_of (c2, c1)) call abort()
+ if (.not. extends_type_of (c1, c1)) STOP 1
+ if ( extends_type_of (c1, c2)) STOP 2
+ if (.not. extends_type_of (c2, c1)) STOP 3
- if (.not. extends_type_of (x, x)) call abort()
- if ( extends_type_of (x, y)) call abort()
- if (.not. extends_type_of (y, x)) call abort()
+ if (.not. extends_type_of (x, x)) STOP 4
+ if ( extends_type_of (x, y)) STOP 5
+ if (.not. extends_type_of (y, x)) STOP 6
- if (.not. extends_type_of (c1, x)) call abort()
- if ( extends_type_of (c1, y)) call abort()
- if (.not. extends_type_of (x, c1)) call abort()
- if (.not. extends_type_of (y, c1)) call abort()
+ if (.not. extends_type_of (c1, x)) STOP 7
+ if ( extends_type_of (c1, y)) STOP 8
+ if (.not. extends_type_of (x, c1)) STOP 9
+ if (.not. extends_type_of (y, c1)) STOP 10
- if (.not. extends_type_of (z, c1)) call abort()
- if ( extends_type_of (z%cc, z)) call abort()
+ if (.not. extends_type_of (z, c1)) STOP 11
+ if ( extends_type_of (z%cc, z)) STOP 12
end
diff --git a/gcc/testsuite/gfortran.dg/extends_type_of_2.f03 b/gcc/testsuite/gfortran.dg/extends_type_of_2.f03
index f882cb1c6b0..b55eded96f9 100644
--- a/gcc/testsuite/gfortran.dg/extends_type_of_2.f03
+++ b/gcc/testsuite/gfortran.dg/extends_type_of_2.f03
@@ -22,15 +22,15 @@ class(t11), pointer :: b11
b1 => NULL()
b11 => NULL()
-if (.not. extends_type_of(b1 , a1)) call abort()
-if (.not. extends_type_of(b11, a1)) call abort()
-if (.not. extends_type_of(b11,a11)) call abort()
+if (.not. extends_type_of(b1 , a1)) STOP 1
+if (.not. extends_type_of(b11, a1)) STOP 2
+if (.not. extends_type_of(b11,a11)) STOP 3
b1 => a1
b11 => a11
-if (.not. extends_type_of(b1 , a1)) call abort()
-if (.not. extends_type_of(b11, a1)) call abort()
-if (.not. extends_type_of(b11,a11)) call abort()
+if (.not. extends_type_of(b1 , a1)) STOP 4
+if (.not. extends_type_of(b11, a1)) STOP 5
+if (.not. extends_type_of(b11,a11)) STOP 6
end
diff --git a/gcc/testsuite/gfortran.dg/extends_type_of_3.f90 b/gcc/testsuite/gfortran.dg/extends_type_of_3.f90
index 6ba1dc3212d..2c58c358aef 100644
--- a/gcc/testsuite/gfortran.dg/extends_type_of_3.f90
+++ b/gcc/testsuite/gfortran.dg/extends_type_of_3.f90
@@ -38,15 +38,15 @@ if (p1 .or. p2 .or. p3 .or. p4 .or. .not. p5 .or. .not. p6) call should_not_exis
if (same_type_as(b1,b1) .neqv. .true.) call should_not_exist()
! Not (trivially) compile-time simplifiable:
-if (same_type_as(b1,a1) .neqv. .true.) call abort()
-if (same_type_as(b1,a11) .neqv. .false.) call abort()
+if (same_type_as(b1,a1) .neqv. .true.) STOP 1
+if (same_type_as(b1,a11) .neqv. .false.) STOP 2
allocate(t1 :: b1)
-if (same_type_as(b1,a1) .neqv. .true.) call abort()
-if (same_type_as(b1,a11) .neqv. .false.) call abort()
+if (same_type_as(b1,a1) .neqv. .true.) STOP 3
+if (same_type_as(b1,a11) .neqv. .false.) STOP 4
deallocate(b1)
allocate(t11 :: b1)
-if (same_type_as(b1,a1) .neqv. .false.) call abort()
-if (same_type_as(b1,a11) .neqv. .true.) call abort()
+if (same_type_as(b1,a1) .neqv. .false.) STOP 5
+if (same_type_as(b1,a11) .neqv. .true.) STOP 6
deallocate(b1)
@@ -88,38 +88,38 @@ if (extends_type_of(a1,b11) .neqv. .false.) call should_not_exist()
! Special case, simplified at tree folding:
-if (extends_type_of(b1,b1) .neqv. .true.) call abort()
+if (extends_type_of(b1,b1) .neqv. .true.) STOP 7
! All other possibilities are not compile-time checkable
-if (extends_type_of(b11,b1) .neqv. .true.) call abort()
-if (extends_type_of(b1,b11) .neqv. .false.) call abort()
-if (extends_type_of(a11,b11) .neqv. .true.) call abort()
+if (extends_type_of(b11,b1) .neqv. .true.) STOP 8
+if (extends_type_of(b1,b11) .neqv. .false.) STOP 9
+if (extends_type_of(a11,b11) .neqv. .true.) STOP 10
allocate(t11 :: b11)
-if (extends_type_of(a11,b11) .neqv. .true.) call abort()
+if (extends_type_of(a11,b11) .neqv. .true.) STOP 11
deallocate(b11)
allocate(t111 :: b11)
-if (extends_type_of(a11,b11) .neqv. .false.) call abort()
+if (extends_type_of(a11,b11) .neqv. .false.) STOP 12
deallocate(b11)
allocate(t11 :: b1)
-if (extends_type_of(a11,b1) .neqv. .true.) call abort()
+if (extends_type_of(a11,b1) .neqv. .true.) STOP 13
deallocate(b1)
allocate(t11::b1)
-if (extends_type_of(b1,a11) .neqv. .true.) call abort()
+if (extends_type_of(b1,a11) .neqv. .true.) STOP 14
deallocate(b1)
allocate(b1,source=a11)
-if (extends_type_of(b1,a11) .neqv. .true.) call abort()
+if (extends_type_of(b1,a11) .neqv. .true.) STOP 15
deallocate(b1)
allocate( b1,source=a1)
-if (extends_type_of(b1,a11) .neqv. .false.) call abort()
+if (extends_type_of(b1,a11) .neqv. .false.) STOP 16
deallocate(b1)
end
-! { dg-final { scan-tree-dump-times "abort" 16 "original" } }
+! { dg-final { scan-tree-dump-times "stop_numeric" 16 "original" } }
! { dg-final { scan-tree-dump-times "should_not_exist" 0 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/external_procedures_3.f90 b/gcc/testsuite/gfortran.dg/external_procedures_3.f90
index 987ba793cd0..73b618dffa4 100644
--- a/gcc/testsuite/gfortran.dg/external_procedures_3.f90
+++ b/gcc/testsuite/gfortran.dg/external_procedures_3.f90
@@ -29,7 +29,7 @@ end subroutine foo
common // chr
character(8) :: chr
call foo (foobar1)
- if (chr .ne. "foobar1") call abort ()
+ if (chr .ne. "foobar1") STOP 1
call foo (foobar2)
- if (chr .ne. "foobar2") call abort ()
+ if (chr .ne. "foobar2") STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/f2003_inquire_1.f03 b/gcc/testsuite/gfortran.dg/f2003_inquire_1.f03
index 87ddf59c4a4..e51f619c863 100644
--- a/gcc/testsuite/gfortran.dg/f2003_inquire_1.f03
+++ b/gcc/testsuite/gfortran.dg/f2003_inquire_1.f03
@@ -11,11 +11,11 @@ inquire(unit=10, round=sround, sign=ssign, size=vsize, id=vid, &
& pending=vpending, asynchronous=sasynchronous, decimal=sdecimal, &
& encoding=sencoding)
-if (ssign.ne."PLUS") call abort
-if (sasynchronous.ne."YES") call abort
-if (sdecimal.ne."COMMA") call abort
-if (sencoding.ne."UTF-8") call abort
-if (vpending) call abort
+if (ssign.ne."PLUS") STOP 1
+if (sasynchronous.ne."YES") STOP 2
+if (sdecimal.ne."COMMA") STOP 3
+if (sencoding.ne."UTF-8") STOP 4
+if (vpending) STOP 5
close(10, status="delete")
end
diff --git a/gcc/testsuite/gfortran.dg/f2003_io_1.f03 b/gcc/testsuite/gfortran.dg/f2003_io_1.f03
index 2a2294fa21d..8021d7906fd 100644
--- a/gcc/testsuite/gfortran.dg/f2003_io_1.f03
+++ b/gcc/testsuite/gfortran.dg/f2003_io_1.f03
@@ -13,18 +13,18 @@ open(10, file='mydata_f2003_io_1', asynchronous="yes", blank="null")
write(10,'(10f8.3)', asynchronous="yes", decimal="comma", id=j) a
rewind(10)
read(10,'(10f8.3)', asynchronous="yes", decimal="comma", blank="zero") b
-if (any(b.ne.23.45)) call abort
+if (any(b.ne.23.45)) STOP 1
c = 3.14
write(msg, *, decimal="comma") c
-if (msg(1:7).ne." 3,14") call abort
+if (msg(1:7).ne." 3,14") STOP 2
b = 0.0
rewind(10)
write(10,'(10f8.3)', asynchronous="yes", decimal="point") a
rewind(10)
read(10,'(10f8.3)', asynchronous="yes", decimal="point") b
-if (any(b.ne.23.45)) call abort
+if (any(b.ne.23.45)) STOP 3
wait(unit=10, err=25, iostat=istat, iomsg=msg, end=35, id=j)
diff --git a/gcc/testsuite/gfortran.dg/f2003_io_4.f03 b/gcc/testsuite/gfortran.dg/f2003_io_4.f03
index fa09737b402..4ab1612eca5 100644
--- a/gcc/testsuite/gfortran.dg/f2003_io_4.f03
+++ b/gcc/testsuite/gfortran.dg/f2003_io_4.f03
@@ -15,10 +15,10 @@ write(99,'(10f8.3)') a
a = 0.0
rewind(99)
read(99,'(10f8.3)') a
-if (any(a.ne.43.21)) call abort
+if (any(a.ne.43.21)) STOP 1
write(msg,'(dp,f8.3,dc,f8.2,dp,f8.3)', decimal="comma") a(1), b(1), c(1)
-if (trim(msg).ne." 43.210 3,13 5.432") call abort
+if (trim(msg).ne." 43.210 3,13 5.432") STOP 2
close(99)
open(99, decimal="comma", status="scratch")
@@ -27,7 +27,7 @@ a = 0.0
b = 0.0
rewind(99)
read(99,nml=mynml)
-if (any(a.ne.43.21)) call abort
-if (any(b.ne.3.131)) call abort
+if (any(a.ne.43.21)) STOP 3
+if (any(b.ne.3.131)) STOP 4
close(99)
end
diff --git a/gcc/testsuite/gfortran.dg/f2003_io_5.f03 b/gcc/testsuite/gfortran.dg/f2003_io_5.f03
index 34b8adbb0ad..3ad75daeeba 100644
--- a/gcc/testsuite/gfortran.dg/f2003_io_5.f03
+++ b/gcc/testsuite/gfortran.dg/f2003_io_5.f03
@@ -13,14 +13,14 @@ write(99,nml=nm,decimal="comma")
a = 5.55
rewind(99)
read(99,nml=nm,decimal="comma")
-if (any (a /= [ (i*1.3, i=1,10) ])) call abort
+if (any (a /= [ (i*1.3, i=1,10) ])) STOP 1
close(99, status="delete")
c = (3.123,4.456)
write(complex,*,decimal="comma") c
-if (complex.ne." (3,12299991;4,45599985)") call abort
+if (complex.ne." (3,12299991;4,45599985)") STOP 2
c = (0.0, 0.0)
read(complex,*,decimal="comma") c
-if (complex.ne." (3,12299991;4,45599985)") call abort
+if (complex.ne." (3,12299991;4,45599985)") STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/f2003_io_6.f03 b/gcc/testsuite/gfortran.dg/f2003_io_6.f03
index 40758e2232d..24908f280c4 100644
--- a/gcc/testsuite/gfortran.dg/f2003_io_6.f03
+++ b/gcc/testsuite/gfortran.dg/f2003_io_6.f03
@@ -7,5 +7,5 @@ real :: a(6) = 0.0
character(len=30) :: str = '&nm a = 1,3; 4, 5; 5; 7; /'
namelist /nm/ a
read(str,nml=nm,decimal='comma')
-if (any(a.ne.[ 1.3, 4.0, 5.0, 5.0, 7.0, 0.0 ])) call abort
+if (any(a.ne.[ 1.3, 4.0, 5.0, 5.0, 7.0, 0.0 ])) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/f2003_io_7.f03 b/gcc/testsuite/gfortran.dg/f2003_io_7.f03
index 6d2c11dfcbe..a9228a86ff9 100644
--- a/gcc/testsuite/gfortran.dg/f2003_io_7.f03
+++ b/gcc/testsuite/gfortran.dg/f2003_io_7.f03
@@ -9,19 +9,19 @@ program iotests
real(kind=8), dimension(3) :: b
!
write(a,'(f10.3,s,f10.3,sp,f10.3,ss,f10.3)',SIGN='PLUS') pi, pi, pi, pi
- if (a /= " +3.142 3.142 +3.142 3.142") call abort
+ if (a /= " +3.142 3.142 +3.142 3.142") STOP 1
!
open(8,sign="plus")
write(8,'(f10.3,dc,f10.3,dp,f10.3)',DECIMAL='COMMA',&
& sign="suppress") pi, pi, pi
rewind(8)
read(8,'(a)') a
- if (a /= " 3,142 3,142 3.142") call abort
+ if (a /= " 3,142 3,142 3.142") STOP 2
close(8,status="delete")
!
! "123456789 123456789 12345678901
write(a,'(a)') "53 256.84, 2 2 2. ; 33.3 3 1 "
read(a, '(f9.2,1x,f8.2,2x,f11.7)', blank="zero") b(1),b(2),b(3)
- if (any(abs(b - [530256.84, 20202.00, 33.3030001]) > .03)) call abort
+ if (any(abs(b - [530256.84, 20202.00, 33.3030001]) > .03)) STOP 3
end program iotests
diff --git a/gcc/testsuite/gfortran.dg/f2c_1.f90 b/gcc/testsuite/gfortran.dg/f2c_1.f90
index 9f45d05bf22..5d54ac0187d 100644
--- a/gcc/testsuite/gfortran.dg/f2c_1.f90
+++ b/gcc/testsuite/gfortran.dg/f2c_1.f90
@@ -37,17 +37,17 @@ subroutine test_with_interface()
double precision z, w
x = 8.625
- if (x /= f(x)) call abort ()
+ if (x /= f(x)) STOP 1
y = f(x)
- if (x /= y) call abort ()
+ if (x /= y) STOP 2
a = 1.
b = -1.
- if (c(a,b) /= cmplx(a,b)) call abort ()
+ if (c(a,b) /= cmplx(a,b)) STOP 3
z = 1.
w = -1.
- if (d(z,w) /= cmplx(z,w, kind(z))) call abort ()
+ if (d(z,w) /= cmplx(z,w, kind(z))) STOP 4
end subroutine test_with_interface
external f, c, d
@@ -57,17 +57,17 @@ double complex d
double precision z, w
x = 8.625
-if (x /= f(x)) call abort ()
+if (x /= f(x)) STOP 5
y = f(x)
-if (x /= y) call abort ()
+if (x /= y) STOP 6
a = 1.
b = -1.
-if (c(a,b) /= cmplx(a,b)) call abort ()
+if (c(a,b) /= cmplx(a,b)) STOP 7
z = 1.
w = -1.
-if (d(z,w) /= cmplx(z,w, kind(z))) call abort ()
+if (d(z,w) /= cmplx(z,w, kind(z))) STOP 8
call test_with_interface ()
end
diff --git a/gcc/testsuite/gfortran.dg/f2c_2.f90 b/gcc/testsuite/gfortran.dg/f2c_2.f90
index 51556894b7d..022dedaa374 100644
--- a/gcc/testsuite/gfortran.dg/f2c_2.f90
+++ b/gcc/testsuite/gfortran.dg/f2c_2.f90
@@ -12,12 +12,12 @@ complex c
double complex d
x = 2.
-if ((sqrt(x) - 1.41)**2 > 1.e-4) call abort ()
+if ((sqrt(x) - 1.41)**2 > 1.e-4) STOP 1
x = 1.
-if ((atan(x) - 3.14/4) ** 2 > 1.e-4) call abort ()
+if ((atan(x) - 3.14/4) ** 2 > 1.e-4) STOP 2
c = (-1.,0.)
-if (sqrt(c) /= (0., 1.)) call abort ()
+if (sqrt(c) /= (0., 1.)) STOP 3
d = c
-if (sqrt(d) /= (0._8, 1._8)) call abort ()
+if (sqrt(d) /= (0._8, 1._8)) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/f2c_3.f90 b/gcc/testsuite/gfortran.dg/f2c_3.f90
index 685445702b0..b7a9785085e 100644
--- a/gcc/testsuite/gfortran.dg/f2c_3.f90
+++ b/gcc/testsuite/gfortran.dg/f2c_3.f90
@@ -8,7 +8,7 @@ program test
f = 1.0
q=>f
g = foo(q)
- if (g .ne. 1.0) call abort
+ if (g .ne. 1.0) STOP 1
contains
function foo (p)
real, pointer :: foo
diff --git a/gcc/testsuite/gfortran.dg/f2c_4.f90 b/gcc/testsuite/gfortran.dg/f2c_4.f90
index a0d1909bf2f..74b473f8893 100644
--- a/gcc/testsuite/gfortran.dg/f2c_4.f90
+++ b/gcc/testsuite/gfortran.dg/f2c_4.f90
@@ -24,10 +24,10 @@ program f2c_4
! Return COMPLEX arg - call C routines from Fortran
c = cmplx(1234.0,5678.0)
z = dcmplx(1234.0d0,5678.0d0)
- if ( c .ne. f2c_4k(c) ) call abort
- if ( c .ne. f2c_4l(i,c) ) call abort
- if ( z .ne. f2c_4m(z) ) call abort
- if ( z .ne. f2c_4n(i,z) ) call abort
+ if ( c .ne. f2c_4k(c) ) STOP 1
+ if ( c .ne. f2c_4l(i,c) ) STOP 2
+ if ( z .ne. f2c_4m(z) ) STOP 3
+ if ( z .ne. f2c_4n(i,z) ) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/f2c_6.f90 b/gcc/testsuite/gfortran.dg/f2c_6.f90
index d28724cfa56..63cb61a1df2 100644
--- a/gcc/testsuite/gfortran.dg/f2c_6.f90
+++ b/gcc/testsuite/gfortran.dg/f2c_6.f90
@@ -65,20 +65,20 @@ complex, pointer :: p
z = (1.,0.)
p => c()
z = (2.,0.)
-if (p /= z) call abort ()
+if (p /= z) STOP 1
NULLIFY(p)
p => d()
z = (3.,0.)
-if (p /= z) call abort ()
+if (p /= z) STOP 2
NULLIFY(p)
p => e()
z = (4.,0.)
-if (p /= z) call abort ()
+if (p /= z) STOP 3
NULLIFY(p)
p => f()
z = (5.,0.)
-if (p /= z) call abort ()
+if (p /= z) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/f2c_7.f90 b/gcc/testsuite/gfortran.dg/f2c_7.f90
index d67e10bc2c7..f36e8e5f113 100644
--- a/gcc/testsuite/gfortran.dg/f2c_7.f90
+++ b/gcc/testsuite/gfortran.dg/f2c_7.f90
@@ -28,9 +28,9 @@ interface
end interface
complex z(5)
z = c()
-if (any(z /= 0.)) call abort ()
+if (any(z /= 0.)) STOP 1
z = d()
-if (any(z /= 1.)) call abort ()
+if (any(z /= 1.)) STOP 2
end subroutine test_without_result
subroutine test_with_result
@@ -46,9 +46,9 @@ interface
end interface
complex z(5)
z = c()
-if (any(z /= 0.)) call abort ()
+if (any(z /= 0.)) STOP 3
z = d()
-if (any(z /= 1.)) call abort ()
+if (any(z /= 1.)) STOP 4
end subroutine test_with_result
call test_without_result
diff --git a/gcc/testsuite/gfortran.dg/f2c_9.f90 b/gcc/testsuite/gfortran.dg/f2c_9.f90
index 59c3fbe8b47..dc83341f02e 100644
--- a/gcc/testsuite/gfortran.dg/f2c_9.f90
+++ b/gcc/testsuite/gfortran.dg/f2c_9.f90
@@ -47,6 +47,6 @@ program test
contains
subroutine check (a, b)
real(8), intent(in) :: a, b
- if (abs(a - b) > 1.e-10_8) call abort
+ if (abs(a - b) > 1.e-10_8) STOP 1
end subroutine check
end program test
diff --git a/gcc/testsuite/gfortran.dg/fgetc_1.f90 b/gcc/testsuite/gfortran.dg/fgetc_1.f90
index 966e15a98a4..ac6b71ce5b1 100644
--- a/gcc/testsuite/gfortran.dg/fgetc_1.f90
+++ b/gcc/testsuite/gfortran.dg/fgetc_1.f90
@@ -8,32 +8,32 @@
write(10,"(A)") "abcde"
rewind(10)
call fgetc(10,s,st)
- if ((st /= 0) .or. (s /= "a ")) call abort
+ if ((st /= 0) .or. (s /= "a ")) STOP 1
call fgetc(10,s,st)
close(10)
open(10,status="scratch")
s = "12345"
call fputc(10,s,st)
- if (st /= 0) call abort
+ if (st /= 0) STOP 2
call fputc(10,"2",st)
- if (st /= 0) call abort
+ if (st /= 0) STOP 3
call fputc(10,"3 ",st)
- if (st /= 0) call abort
+ if (st /= 0) STOP 4
rewind(10)
call fgetc(10,s)
- if (s(1:1) /= "1") call abort
+ if (s(1:1) /= "1") STOP 5
call fgetc(10,s)
- if (s(1:1) /= "2") call abort
+ if (s(1:1) /= "2") STOP 6
call fgetc(10,s,st)
- if ((s(1:1) /= "3") .or. (st /= 0)) call abort
+ if ((s(1:1) /= "3") .or. (st /= 0)) STOP 7
call fgetc(10,s,st)
- if (st /= -1) call abort
+ if (st /= -1) STOP 8
close (10)
! FGETC and FPUTC on units not opened should not work
call fgetc(12,s,st)
- if (st /= -1) call abort
+ if (st /= -1) STOP 9
call fputc(12,s,st)
- if (st /= -1) call abort
+ if (st /= -1) STOP 10
end
diff --git a/gcc/testsuite/gfortran.dg/fgetc_2.f90 b/gcc/testsuite/gfortran.dg/fgetc_2.f90
index 6dd12c4e242..5df75b63897 100644
--- a/gcc/testsuite/gfortran.dg/fgetc_2.f90
+++ b/gcc/testsuite/gfortran.dg/fgetc_2.f90
@@ -8,32 +8,32 @@
write(10,"(A)") "abcde"
rewind(10)
st = fgetc(10,s)
- if ((st /= 0) .or. (s /= "a ")) call abort
+ if ((st /= 0) .or. (s /= "a ")) STOP 1
st = fgetc(10,s)
close(10)
open(10,status="scratch")
s = "12345"
st = fputc(10,s)
- if (st /= 0) call abort
+ if (st /= 0) STOP 2
st = fputc(10,"2")
- if (st /= 0) call abort
+ if (st /= 0) STOP 3
st = fputc(10,"3 ")
- if (st /= 0) call abort
+ if (st /= 0) STOP 4
rewind(10)
st = fgetc(10,s)
- if (s(1:1) /= "1") call abort
+ if (s(1:1) /= "1") STOP 5
st = fgetc(10,s)
- if (s(1:1) /= "2") call abort
+ if (s(1:1) /= "2") STOP 6
st = fgetc(10,s)
- if ((s(1:1) /= "3") .or. (st /= 0)) call abort
+ if ((s(1:1) /= "3") .or. (st /= 0)) STOP 7
st = fgetc(10,s)
- if (st /= -1) call abort
+ if (st /= -1) STOP 8
close (10)
! FGETC and FPUTC on units not opened should not work
st = fgetc(12,s)
- if (st /= -1) call abort
+ if (st /= -1) STOP 9
st = fputc(12,s)
- if (st /= -1) call abort
+ if (st /= -1) STOP 10
end
diff --git a/gcc/testsuite/gfortran.dg/filename_null.f90 b/gcc/testsuite/gfortran.dg/filename_null.f90
index f24d2438daf..0bd09f63f3f 100644
--- a/gcc/testsuite/gfortran.dg/filename_null.f90
+++ b/gcc/testsuite/gfortran.dg/filename_null.f90
@@ -10,8 +10,8 @@ program filename_null
logical :: l
open(10, file=s)
inquire(unit=10, name=r)
- if (r /= s2) call abort()
+ if (r /= s2) STOP 1
inquire(file=s2, exist=l)
- if (.not. l) call abort()
+ if (.not. l) STOP 2
close(10, status="delete")
end program filename_null
diff --git a/gcc/testsuite/gfortran.dg/finalize_12.f90 b/gcc/testsuite/gfortran.dg/finalize_12.f90
index f1508ec8135..272b3b4f195 100644
--- a/gcc/testsuite/gfortran.dg/finalize_12.f90
+++ b/gcc/testsuite/gfortran.dg/finalize_12.f90
@@ -15,17 +15,17 @@ contains
subroutine fini(x)
type(t) :: x
!print *, 'fini:',x%i
- if (global_count1 == -1) call abort ()
- if (x%i /= 42) call abort()
+ if (global_count1 == -1) STOP 1
+ if (x%i /= 42) STOP 2
x%i = 33
global_count1 = global_count1 + 1
end subroutine fini
subroutine fini2(x)
type(t) :: x(:)
!print *, 'fini2', x%i
- if (global_count2 == -1) call abort ()
- if (size(x) /= 5) call abort()
- if (any (x%i /= [1,2,3,4,5]) .and. any (x%i /= [6,7,8,9,10])) call abort()
+ if (global_count2 == -1) STOP 3
+ if (size(x) /= 5) STOP 4
+ if (any (x%i /= [1,2,3,4,5]) .and. any (x%i /= [6,7,8,9,10])) STOP 5
x%i = 33
global_count2 = global_count2 + 10
end subroutine fini2
@@ -55,8 +55,8 @@ program pp
yca%i = [1,2,3,4,5]
call foo(ya, yc, yaa, yca)
- if (global_count1 /= 2) call abort ()
- if (global_count2 /= 20) call abort ()
+ if (global_count1 /= 2) STOP 6
+ if (global_count2 /= 20) STOP 7
! Coarray finalization
allocate (ca[*], cc[*], caa(5)[*], cca(5)[*])
@@ -67,8 +67,8 @@ program pp
caa%i = [1,2,3,4,5]
cca%i = [1,2,3,4,5]
deallocate (ca, cc, caa, cca)
- if (global_count1 /= 2) call abort ()
- if (global_count2 /= 20) call abort ()
+ if (global_count1 /= 2) STOP 8
+ if (global_count2 /= 20) STOP 9
global_count1 = -1
global_count2 = -1
@@ -88,8 +88,8 @@ program pp
zca%i = [1,2,3,4,5]
call foo(za, zc, zaa, zca)
- if (global_count1 /= 2) call abort ()
- if (global_count2 /= 20) call abort ()
+ if (global_count1 /= 2) STOP 10
+ if (global_count2 /= 20) STOP 11
! Test intent(out) finalization with optional
call foo_opt()
@@ -105,8 +105,8 @@ program pp
zca%i = [1,2,3,4,5]
call foo_opt(za, zc, zaa, zca)
- if (global_count1 /= 2) call abort ()
- if (global_count2 /= 20) call abort ()
+ if (global_count1 /= 2) STOP 12
+ if (global_count2 /= 20) STOP 13
! Test DEALLOCATE finalization
allocate (za, zc, zaa(5), zca(5))
@@ -117,8 +117,8 @@ program pp
zaa%i = [1,2,3,4,5]
zca%i = [6,7,8,9,10]
deallocate (za, zc, zaa, zca)
- if (global_count1 /= 2) call abort ()
- if (global_count2 /= 20) call abort ()
+ if (global_count1 /= 2) STOP 14
+ if (global_count2 /= 20) STOP 15
! Test end-of-scope finalization
allocate (za, zc, zaa(5), zca(5))
@@ -130,8 +130,8 @@ program pp
zca%i = [6,7,8,9,10]
end block
- if (global_count1 /= 2) call abort ()
- if (global_count2 /= 20) call abort ()
+ if (global_count1 /= 2) STOP 16
+ if (global_count2 /= 20) STOP 17
! Test that no end-of-scope finalization occurs
! for SAVED variable in main
@@ -157,19 +157,19 @@ contains
if (.not. present(xa)) &
return
- if (allocated (xa)) call abort ()
- if (allocated (xc)) call abort ()
- if (allocated (xaa)) call abort ()
- if (allocated (xca)) call abort ()
+ if (allocated (xa)) STOP 18
+ if (allocated (xc)) STOP 19
+ if (allocated (xaa)) STOP 20
+ if (allocated (xca)) STOP 21
end subroutine foo_opt
subroutine foo(xa, xc, xaa, xca)
type(t), allocatable, intent(out) :: xa
class(t), allocatable, intent(out) :: xc
type(t), allocatable, intent(out) :: xaa(:)
class(t), allocatable, intent(out) :: xca(:)
- if (allocated (xa)) call abort ()
- if (allocated (xc)) call abort ()
- if (allocated (xaa)) call abort ()
- if (allocated (xca)) call abort ()
+ if (allocated (xa)) STOP 22
+ if (allocated (xc)) STOP 23
+ if (allocated (xaa)) STOP 24
+ if (allocated (xca)) STOP 25
end subroutine foo
end program
diff --git a/gcc/testsuite/gfortran.dg/finalize_13.f90 b/gcc/testsuite/gfortran.dg/finalize_13.f90
index 78b20acd5d7..61d017545e9 100644
--- a/gcc/testsuite/gfortran.dg/finalize_13.f90
+++ b/gcc/testsuite/gfortran.dg/finalize_13.f90
@@ -25,25 +25,25 @@ module m
contains
subroutine fini2 (x)
type(t), intent(in), contiguous :: x(:,:)
- if (.not. rank2_call) call abort ()
- if (size(x,1) /= 2 .or. size(x,2) /= 3) call abort()
+ if (.not. rank2_call) STOP 1
+ if (size(x,1) /= 2 .or. size(x,2) /= 3) STOP 2
!print *, 'fini2:', x%i
- if (any (x%i /= reshape([11, 12, 21, 22, 31, 32], [2,3]))) call abort()
+ if (any (x%i /= reshape([11, 12, 21, 22, 31, 32], [2,3]))) STOP 3
fini_call = fini_call + 1
end subroutine
subroutine fini3 (x)
type(t), intent(in) :: x(2,2,*)
integer :: i,j,k
- if (.not. elem_call) call abort ()
- if (.not. rank3_call) call abort ()
- if (cnt2 /= 9) call abort()
- if (cnt /= 1) call abort()
+ if (.not. elem_call) STOP 4
+ if (.not. rank3_call) STOP 5
+ if (cnt2 /= 9) STOP 6
+ if (cnt /= 1) STOP 7
do i = 1, 2
do j = 1, 2
do k = 1, 2
!print *, k,j,i,x(k,j,i)%i
- if (x(k,j,i)%i /= k+10*j+100*i) call abort()
+ if (x(k,j,i)%i /= k+10*j+100*i) STOP 8
end do
end do
end do
@@ -52,10 +52,10 @@ contains
impure elemental subroutine fini_elm (x)
type(t), intent(in) :: x
- if (.not. elem_call) call abort ()
- if (rank3_call) call abort ()
- if (cnt2 /= 6) call abort()
- if (cnt /= x%i) call abort()
+ if (.not. elem_call) STOP 9
+ if (rank3_call) STOP 10
+ if (cnt2 /= 6) STOP 11
+ if (cnt /= x%i) STOP 12
!print *, 'fini_elm:', cnt, x%i
fini_call = fini_call + 1
cnt = cnt + 1
@@ -63,12 +63,12 @@ contains
subroutine f2ini2 (x)
type(t2), intent(in), target :: x(:,:)
- if (.not. rank2_call) call abort ()
- if (size(x,1) /= 2 .or. size(x,2) /= 3) call abort()
+ if (.not. rank2_call) STOP 13
+ if (size(x,1) /= 2 .or. size(x,2) /= 3) STOP 14
!print *, 'f2ini2:', x%i
!print *, 'f2ini2:', x%j
- if (any (x%i /= reshape([11, 12, 21, 22, 31, 32], [2,3]))) call abort()
- if (any (x%j /= 100*reshape([11, 12, 21, 22, 31, 32], [2,3]))) call abort()
+ if (any (x%i /= reshape([11, 12, 21, 22, 31, 32], [2,3]))) STOP 15
+ if (any (x%j /= 100*reshape([11, 12, 21, 22, 31, 32], [2,3]))) STOP 16
fini_call = fini_call + 1
end subroutine
@@ -77,13 +77,13 @@ contains
integer, parameter :: exprected(*) &
= [111, 112, 121, 122, 211, 212, 221, 222]
- if (.not. elem_call) call abort ()
+ if (.not. elem_call) STOP 17
!print *, 'f2ini_elm:', cnt2, x%i, x%j
if (rank3_call) then
- if (x%i /= exprected(cnt2)) call abort ()
- if (x%j /= 1000*exprected(cnt2)) call abort ()
+ if (x%i /= exprected(cnt2)) STOP 18
+ if (x%j /= 1000*exprected(cnt2)) STOP 19
else
- if (cnt2 /= x%i .or. cnt2*10 /= x%j) call abort()
+ if (cnt2 /= x%i .or. cnt2*10 /= x%j) STOP 20
end if
cnt2 = cnt2 + 1
fini_call = fini_call + 1
@@ -114,7 +114,7 @@ program test
fini_call = 0
elem_call = .true.
deallocate (y)
- if (fini_call /= 10) call abort ()
+ if (fini_call /= 10) STOP 21
elem_call = .false.
rank2_call = .false.
@@ -134,7 +134,7 @@ program test
fini_call = 0
rank2_call = .true.
deallocate (z)
- if (fini_call /= 2) call abort ()
+ if (fini_call /= 2) STOP 22
elem_call = .false.
rank2_call = .false.
@@ -157,5 +157,5 @@ program test
rank3_call = .true.
elem_call = .true.
deallocate (zz)
- if (fini_call /= 2*2*2+1) call abort ()
+ if (fini_call /= 2*2*2+1) STOP 23
end program test
diff --git a/gcc/testsuite/gfortran.dg/finalize_15.f90 b/gcc/testsuite/gfortran.dg/finalize_15.f90
index d5ba28f14d3..f3b9ba4d352 100644
--- a/gcc/testsuite/gfortran.dg/finalize_15.f90
+++ b/gcc/testsuite/gfortran.dg/finalize_15.f90
@@ -52,12 +52,12 @@ contains
type(t1), intent(inout) :: x
integer :: i, j, i2, j2
- if (cnt1e /= 5*4) call abort ()
+ if (cnt1e /= 5*4) STOP 1
j = mod (cnt1,5)+1
i = cnt1/5 + 1
i2 = (i-1)*3 + 1
j2 = (j-1)*2 + 1
- if (x%i /= j2 + 100*i2) call abort ()
+ if (x%i /= j2 + 100*i2) STOP 2
x%i = x%i * (-13)
cnt1 = cnt1 + 1
end subroutine fini_elem
@@ -70,15 +70,15 @@ contains
i = cnt1e/5 + 1
i2 = (i-1)*3 + 1
j2 = (j-1)*2 + 1
- if (x%i /= j2 + 100*i2) call abort ()
- if (x%j /= (j2 + 100*i2)*100) call abort ()
+ if (x%i /= j2 + 100*i2) STOP 3
+ if (x%j /= (j2 + 100*i2)*100) STOP 4
x%j = x%j * (-13)
cnt1e = cnt1e + 1
end subroutine fini_elem2
subroutine fini_shape(x)
type(t2) :: x(:,:)
- if (cnt2e /= 1 .or. cnt2 /= 0) call abort ()
+ if (cnt2e /= 1 .or. cnt2 /= 0) STOP 5
call check_var_sec(x%i, 1)
x%i = x%i * (-13)
cnt2 = cnt2 + 1
@@ -94,7 +94,7 @@ contains
subroutine fini_explicit(x)
type(t3) :: x(5,4)
- if (cnt3e /= 1 .or. cnt3 /= 0) call abort ()
+ if (cnt3e /= 1 .or. cnt3 /= 0) STOP 6
call check_var_sec(x%i, 1)
x%i = x%i * (-13)
cnt3 = cnt3 + 1
@@ -118,7 +118,7 @@ contains
subroutine fin_test_3(x)
class(t3), intent(out) :: x(:,:)
- if (any (shape(x) /= [5,4])) call abort ()
+ if (any (shape(x) /= [5,4])) STOP 7
end subroutine fin_test_3
subroutine check_var_sec(x, factor)
@@ -130,7 +130,7 @@ contains
i2 = (i-1)*3 + 1
do j = 1, 5
j2 = (j-1)*2 + 1
- if (x(j,i) /= (j2 + 100*i2)*factor) call abort ()
+ if (x(j,i) /= (j2 + 100*i2)*factor) STOP 8
end do
end do
end subroutine check_var_sec
@@ -182,25 +182,25 @@ program test
end do
end select
- if (cnt1 + cnt1e + cnt2 + cnt2e + cnt3 + cnt3e /= 0) call abort()
+ if (cnt1 + cnt1e + cnt2 + cnt2e + cnt3 + cnt3e /= 0) STOP 9
call fin_test_1(x(::2,::3))
- if (cnt1 /= 5*4) call abort ()
- if (cnt1e /= 5*4) call abort ()
+ if (cnt1 /= 5*4) STOP 10
+ if (cnt1e /= 5*4) STOP 11
cnt1 = 0; cnt1e = 0
- if (cnt2 + cnt2e + cnt3 + cnt3e /= 0) call abort()
+ if (cnt2 + cnt2e + cnt3 + cnt3e /= 0) STOP 12
call fin_test_2(y(::2,::3))
- if (cnt2 /= 1) call abort ()
- if (cnt2e /= 1) call abort ()
+ if (cnt2 /= 1) STOP 13
+ if (cnt2e /= 1) STOP 14
cnt2 = 0; cnt2e = 0
- if (cnt1 + cnt1e + cnt3 + cnt3e /= 0) call abort()
+ if (cnt1 + cnt1e + cnt3 + cnt3e /= 0) STOP 15
call fin_test_3(z(::2,::3))
- if (cnt3 /= 1) call abort ()
- if (cnt3e /= 1) call abort ()
+ if (cnt3 /= 1) STOP 16
+ if (cnt3e /= 1) STOP 17
cnt3 = 0; cnt3e = 0
- if (cnt1 + cnt1e + cnt2 + cnt2e /= 0) call abort()
+ if (cnt1 + cnt1e + cnt2 + cnt2e /= 0) STOP 18
select type(x)
type is (t1e)
@@ -228,9 +228,9 @@ contains
do i = 1, 10
do j = 1, 10
if (mod (j-1, 2) == 0 .and. mod (i-1, 3) == 0) then
- if (x(j,i) /= val) call abort ()
+ if (x(j,i) /= val) STOP 19
else
- if (x(j,i) /= (j + 100*i)*factor) call abort ()
+ if (x(j,i) /= (j + 100*i)*factor) STOP 20
end if
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/finalize_17.f90 b/gcc/testsuite/gfortran.dg/finalize_17.f90
index ce2306cce8a..6cf114a62d6 100644
--- a/gcc/testsuite/gfortran.dg/finalize_17.f90
+++ b/gcc/testsuite/gfortran.dg/finalize_17.f90
@@ -15,9 +15,9 @@ module m
contains
impure elemental subroutine finit(x)
type(t), intent(in) :: x
- if (called_final == -1) call abort ()
+ if (called_final == -1) STOP 1
called_final = called_final + 1
- if (called_final /= x%i) call abort ()
+ if (called_final /= x%i) STOP 2
end subroutine finit
end module m
@@ -33,7 +33,7 @@ end module m
x3%i = -6
called_final = 0
end block
- if (called_final /= 3) call abort
+ if (called_final /= 3) STOP 1
called_final = -1
y2%i = [-7, -8]
x2%i = -9
diff --git a/gcc/testsuite/gfortran.dg/finalize_18.f90 b/gcc/testsuite/gfortran.dg/finalize_18.f90
index 3e643327628..f3e3863a172 100644
--- a/gcc/testsuite/gfortran.dg/finalize_18.f90
+++ b/gcc/testsuite/gfortran.dg/finalize_18.f90
@@ -19,7 +19,7 @@ module m
contains
subroutine fini(x)
type(t) :: x
- if (cnt == -1) call abort ()
+ if (cnt == -1) STOP 1
cnt = cnt + 1
end subroutine fini
end module m
diff --git a/gcc/testsuite/gfortran.dg/finalize_25.f90 b/gcc/testsuite/gfortran.dg/finalize_25.f90
index cdbec4caca0..20137b46b64 100644
--- a/gcc/testsuite/gfortran.dg/finalize_25.f90
+++ b/gcc/testsuite/gfortran.dg/finalize_25.f90
@@ -42,11 +42,11 @@ program main
cnt = 0
call ndm(x)
- if (cnt /= 2) call abort()
+ if (cnt /= 2) STOP 1
cnt = 0
call ndm2()
- if (cnt /= 3) call abort()
+ if (cnt /= 3) STOP 2
contains
subroutine ndm2
type(nde2) :: s,i
diff --git a/gcc/testsuite/gfortran.dg/finalize_29.f08 b/gcc/testsuite/gfortran.dg/finalize_29.f08
index 9640f4f7f9c..de29dac64df 100644
--- a/gcc/testsuite/gfortran.dg/finalize_29.f08
+++ b/gcc/testsuite/gfortran.dg/finalize_29.f08
@@ -203,87 +203,87 @@ program finalize_29
call ten_init(x_ten(::2, ::3))
- if (ten_fin_counts /= 6) call abort()
+ if (ten_fin_counts /= 6) STOP 1
if (tee_fin_counts + tne_fin_counts + tnn_fin_counts + tae_fin_counts + &
tan_fin_counts + tge_scalar_fin_counts + tge_array_fin_counts + &
- tgn_scalar_fin_counts + tgn_array_fin_counts /= 0) call abort()
+ tgn_scalar_fin_counts + tgn_array_fin_counts /= 0) STOP 2
ten_fin_counts = 0
call tee_init(x_tee(::2, ::3))
- if (tee_fin_counts /= 6) call abort()
+ if (tee_fin_counts /= 6) STOP 3
if (ten_fin_counts + tne_fin_counts + tnn_fin_counts + tae_fin_counts + &
tan_fin_counts + tge_scalar_fin_counts + tge_array_fin_counts + &
- tgn_scalar_fin_counts + tgn_array_fin_counts /= 0) call abort()
+ tgn_scalar_fin_counts + tgn_array_fin_counts /= 0) STOP 4
tee_fin_counts = 0
call tne_init(x_tne(::2, ::3))
- if (tne_fin_counts /= 6) call abort()
+ if (tne_fin_counts /= 6) STOP 5
if (ten_fin_counts + tee_fin_counts + tnn_fin_counts + tae_fin_counts + &
tan_fin_counts + tge_scalar_fin_counts + tge_array_fin_counts + &
- tgn_scalar_fin_counts + tgn_array_fin_counts /= 0) call abort()
+ tgn_scalar_fin_counts + tgn_array_fin_counts /= 0) STOP 6
tne_fin_counts = 0
call tnn_init(x_tnn(::2, ::3))
- if (tnn_fin_counts /= 0) call abort()
+ if (tnn_fin_counts /= 0) STOP 7
if (ten_fin_counts + tee_fin_counts + tne_fin_counts + tae_fin_counts + &
tan_fin_counts + tge_scalar_fin_counts + tge_array_fin_counts + &
- tgn_scalar_fin_counts + tgn_array_fin_counts /= 0) call abort()
+ tgn_scalar_fin_counts + tgn_array_fin_counts /= 0) STOP 8
call tae_init(x_tae(::2, ::3))
- if (tae_fin_counts /= 0) call abort()
+ if (tae_fin_counts /= 0) STOP 9
if (ten_fin_counts + tee_fin_counts + tne_fin_counts + tnn_fin_counts + &
tan_fin_counts + tge_scalar_fin_counts + tge_array_fin_counts + &
- tgn_scalar_fin_counts + tgn_array_fin_counts /= 0) call abort()
+ tgn_scalar_fin_counts + tgn_array_fin_counts /= 0) STOP 10
call tan_init(x_tan(::2, ::3))
- if (tan_fin_counts /= 1) call abort()
+ if (tan_fin_counts /= 1) STOP 11
if (ten_fin_counts + tee_fin_counts + tne_fin_counts + tnn_fin_counts + &
tae_fin_counts + tge_scalar_fin_counts + tge_array_fin_counts + &
- tgn_scalar_fin_counts + tgn_array_fin_counts /= 0) call abort()
+ tgn_scalar_fin_counts + tgn_array_fin_counts /= 0) STOP 12
tan_fin_counts = 0
call tge_init(x_tge(::2, ::3))
- if (tge_scalar_fin_counts /= 6) call abort()
+ if (tge_scalar_fin_counts /= 6) STOP 13
if (ten_fin_counts + tee_fin_counts + tne_fin_counts + tnn_fin_counts + &
tae_fin_counts + tan_fin_counts + tgn_array_fin_counts + &
- tgn_scalar_fin_counts + tgn_array_fin_counts /= 0) call abort()
+ tgn_scalar_fin_counts + tgn_array_fin_counts /= 0) STOP 14
tge_scalar_fin_counts = 0
call tgn_init(x_tgn(::2, ::3))
- if (tgn_array_fin_counts /= 1) call abort()
+ if (tgn_array_fin_counts /= 1) STOP 15
if (ten_fin_counts + tee_fin_counts + tne_fin_counts + tnn_fin_counts + &
tae_fin_counts + tan_fin_counts + tge_scalar_fin_counts + &
- tge_array_fin_counts + tgn_scalar_fin_counts /= 0) call abort()
+ tge_array_fin_counts + tgn_scalar_fin_counts /= 0) STOP 16
tgn_array_fin_counts = 0
if (any (reshape (x_ten%i, [25]) /= [[40, 1, 40, 1, 40], [1, 1, 1, 1, 1],&
- [1, 1, 1, 1, 1], [40, 1, 40, 1, 40], [1, 1, 1, 1, 1]])) call abort()
+ [1, 1, 1, 1, 1], [40, 1, 40, 1, 40], [1, 1, 1, 1, 1]])) STOP 17
if (any (reshape (x_tee%i, [25]) /= [[41, 2, 41, 2, 41], [2, 2, 2, 2, 2],&
- [2, 2, 2, 2, 2], [41, 2, 41, 2, 41], [2, 2, 2, 2, 2]])) call abort()
+ [2, 2, 2, 2, 2], [41, 2, 41, 2, 41], [2, 2, 2, 2, 2]])) STOP 18
if (any (reshape (x_tne%i, [25]) /= [[42, 3, 42, 3, 42], [3, 3, 3, 3, 3],&
- [3, 3, 3, 3, 3], [42, 3, 42, 3, 42], [3, 3, 3, 3, 3]])) call abort()
+ [3, 3, 3, 3, 3], [42, 3, 42, 3, 42], [3, 3, 3, 3, 3]])) STOP 19
if (any (reshape (x_tnn%i, [25]) /= [[43, 4, 43, 4, 43], [4, 4, 4, 4, 4],&
- [4, 4, 4, 4, 4], [43, 4, 43, 4, 43], [4, 4, 4, 4, 4]])) call abort()
+ [4, 4, 4, 4, 4], [43, 4, 43, 4, 43], [4, 4, 4, 4, 4]])) STOP 20
if (any (reshape (x_tae%i, [25]) /= [[44, 5, 44, 5, 44], [5, 5, 5, 5, 5],&
- [5, 5, 5, 5, 5], [44, 5, 44, 5, 44], [5, 5, 5, 5, 5]])) call abort()
+ [5, 5, 5, 5, 5], [44, 5, 44, 5, 44], [5, 5, 5, 5, 5]])) STOP 21
if (any (reshape (x_tan%i, [25]) /= [[45, 6, 45, 6, 45], [6, 6, 6, 6, 6],&
- [6, 6, 6, 6, 6], [45, 6, 45, 6, 45], [6, 6, 6, 6, 6]])) call abort()
+ [6, 6, 6, 6, 6], [45, 6, 45, 6, 45], [6, 6, 6, 6, 6]])) STOP 22
if (any (reshape (x_tge%i, [25]) /= [[46, 7, 46, 7, 46], [7, 7, 7, 7, 7],&
- [7, 7, 7, 7, 7], [46, 7, 46, 7, 46], [7, 7, 7, 7, 7]])) call abort()
+ [7, 7, 7, 7, 7], [46, 7, 46, 7, 46], [7, 7, 7, 7, 7]])) STOP 23
if (any (reshape (x_tgn%i, [25]) /= [[47, 8, 47, 8, 47], [8, 8, 8, 8, 8],&
- [8, 8, 8, 8, 8], [47, 8, 47, 8, 47], [8, 8, 8, 8, 8]])) call abort()
+ [8, 8, 8, 8, 8], [47, 8, 47, 8, 47], [8, 8, 8, 8, 8]])) STOP 24
end program finalize_29
diff --git a/gcc/testsuite/gfortran.dg/finalize_31.f90 b/gcc/testsuite/gfortran.dg/finalize_31.f90
index 8817a4f6365..0c061a23a23 100644
--- a/gcc/testsuite/gfortran.dg/finalize_31.f90
+++ b/gcc/testsuite/gfortran.dg/finalize_31.f90
@@ -17,7 +17,7 @@ contains
subroutine Finalize ( C )
type ( CommunicatorForm ) :: C
! should not be called
- call abort()
+ STOP 1
end subroutine
end module
diff --git a/gcc/testsuite/gfortran.dg/float_1.f90 b/gcc/testsuite/gfortran.dg/float_1.f90
index 0f3c0626cb0..219d0a24381 100644
--- a/gcc/testsuite/gfortran.dg/float_1.f90
+++ b/gcc/testsuite/gfortran.dg/float_1.f90
@@ -5,11 +5,11 @@ program test_float
integer(2) :: i2 = 1
integer(4) :: i4 = 1
integer(8) :: i8 = 1
- if (float(i1) /= 1.) call abort ! { dg-warning "non-default INTEGER" }
- if (float(i2) /= 1.) call abort ! { dg-warning "non-default INTEGER" }
- if (float(i4) /= 1.) call abort
- if (float(i8) /= 1.) call abort ! { dg-warning "non-default INTEGER" }
+ if (float(i1) /= 1.) STOP 1! { dg-warning "non-default INTEGER" }
+ if (float(i2) /= 1.) STOP 2! { dg-warning "non-default INTEGER" }
+ if (float(i4) /= 1.) STOP 3
+ if (float(i8) /= 1.) STOP 4! { dg-warning "non-default INTEGER" }
- if (kind(float(i4)) /= kind(1.0)) call abort
- if (kind(float(i8)) /= kind(1.0)) call abort ! { dg-warning "non-default INTEGER" }
+ if (kind(float(i4)) /= kind(1.0)) STOP 5
+ if (kind(float(i8)) /= kind(1.0)) STOP 6! { dg-warning "non-default INTEGER" }
end program test_float
diff --git a/gcc/testsuite/gfortran.dg/flush_1.f90 b/gcc/testsuite/gfortran.dg/flush_1.f90
index 90875dc651b..2fb1497cc03 100644
--- a/gcc/testsuite/gfortran.dg/flush_1.f90
+++ b/gcc/testsuite/gfortran.dg/flush_1.f90
@@ -15,12 +15,12 @@ program flush_1
write (10, *) 42
flush(unit=10, iostat=ios)
- if (ios /= 0) call abort
+ if (ios /= 0) STOP 1
write (10, *) 42
flush (unit=10, err=20)
goto 30
-20 call abort
+20 STOP 2
30 continue
call flush(10)
diff --git a/gcc/testsuite/gfortran.dg/fmt_bz_bn.f b/gcc/testsuite/gfortran.dg/fmt_bz_bn.f
index b24ebab5ee9..35f17789718 100644
--- a/gcc/testsuite/gfortran.dg/fmt_bz_bn.f
+++ b/gcc/testsuite/gfortran.dg/fmt_bz_bn.f
@@ -8,19 +8,19 @@ c Test case derived from reporter.
f = 0.0
read (a,'(BZ,E11.0)') f
- if (f .ne. 2003.0) call abort
+ if (f .ne. 2003.0) STOP 1
f = 0.0
read (a,'(BN,E11.0)') f
- if (f .ne. 2300.0) call abort
+ if (f .ne. 2300.0) STOP 2
f = 0.0
read (b,'(BN,E11.0)') f
- if (f .ne. 2003.0) call abort
+ if (f .ne. 2003.0) STOP 3
f = 0.0
read (c,'(E11.0)') f
- if (f .ne. 20.020) call abort
+ if (f .ne. 20.020) STOP 4
f = 0.0
read (c,'(BZ,E11.0)') f
- if (f .ne. 2.002e10) call abort
+ if (f .ne. 2.002e10) STOP 5
end
c end of program
diff --git a/gcc/testsuite/gfortran.dg/fmt_bz_bn_err.f b/gcc/testsuite/gfortran.dg/fmt_bz_bn_err.f
index 579ab26f4d9..cfee57b471c 100644
--- a/gcc/testsuite/gfortran.dg/fmt_bz_bn_err.f
+++ b/gcc/testsuite/gfortran.dg/fmt_bz_bn_err.f
@@ -12,6 +12,6 @@
r = 3.14159d0
ok=.true.
read(temp,'(f20.0)',err=8888) r
- call abort
+ STOP 1
8888 continue
end
diff --git a/gcc/testsuite/gfortran.dg/fmt_cache_1.f b/gcc/testsuite/gfortran.dg/fmt_cache_1.f
index 3344e5d86ca..9a934f408b5 100644
--- a/gcc/testsuite/gfortran.dg/fmt_cache_1.f
+++ b/gcc/testsuite/gfortran.dg/fmt_cache_1.f
@@ -24,10 +24,10 @@
rewind 10
teststring = ""
read(10,'(a)') teststring
- if (teststring.ne." arlxca = 0.00000 arlxcc =")call abort
+ if (teststring.ne." arlxca = 0.00000 arlxcc =")STOP 1
teststring = ""
read(10,'(a)') teststring
- if (teststring.ne." arlxca = 0.00000 arlxcc =")call abort
+ if (teststring.ne." arlxca = 0.00000 arlxcc =")STOP 2
close(10, status='delete')
end program astap
diff --git a/gcc/testsuite/gfortran.dg/fmt_cache_2.f b/gcc/testsuite/gfortran.dg/fmt_cache_2.f
index f557a166c87..40e1135c337 100644
--- a/gcc/testsuite/gfortran.dg/fmt_cache_2.f
+++ b/gcc/testsuite/gfortran.dg/fmt_cache_2.f
@@ -32,5 +32,5 @@ c write(0,*) "interation ",j,": ",len_trim(fmtstr2)
loopcounter = j
enddo
close(10)
- if (loopcounter /= 74) call abort
+ if (loopcounter /= 74) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/fmt_cache_3.f90 b/gcc/testsuite/gfortran.dg/fmt_cache_3.f90
index ec8e1b389f9..c426ecac84a 100644
--- a/gcc/testsuite/gfortran.dg/fmt_cache_3.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_cache_3.f90
@@ -76,5 +76,5 @@ program test
rewind (66)
read (66, '(a)') str
close (66)
- if (any (str /= " ===== end of level 1 =====")) call abort()
+ if (any (str /= " ===== end of level 1 =====")) STOP 1
end program test
diff --git a/gcc/testsuite/gfortran.dg/fmt_colon.f90 b/gcc/testsuite/gfortran.dg/fmt_colon.f90
index 03d31f87004..34dfff16cf8 100644
--- a/gcc/testsuite/gfortran.dg/fmt_colon.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_colon.f90
@@ -7,8 +7,8 @@ PROGRAM test
character(30) :: astring
WRITE(astring, 10) i
10 FORMAT('i =',I2:' this should not print')
- if (astring.ne."i = 1") call abort
+ if (astring.ne."i = 1") STOP 1
write(astring, 20) i, i
20 format('i =',I2:' this should print',I2)
- if (astring.ne."i = 1 this should print 1") call abort
+ if (astring.ne."i = 1 this should print 1") STOP 2
END PROGRAM test \ No newline at end of file
diff --git a/gcc/testsuite/gfortran.dg/fmt_e.f90 b/gcc/testsuite/gfortran.dg/fmt_e.f90
index a85506b0929..37ec86824d2 100644
--- a/gcc/testsuite/gfortran.dg/fmt_e.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_e.f90
@@ -3,8 +3,8 @@
program test
character(25) :: s
write(s, '(1pe5.0e1)') 1.e-4
- if (s.ne."1.E-4") call abort
+ if (s.ne."1.E-4") STOP 1
write(s, '(e5.1e1)') 1.e12
- if (s.ne."*****") call abort
+ if (s.ne."*****") STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/fmt_en.f90 b/gcc/testsuite/gfortran.dg/fmt_en.f90
index e511af58b3b..b3597e4a423 100644
--- a/gcc/testsuite/gfortran.dg/fmt_en.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_en.f90
@@ -148,7 +148,7 @@ use ISO_FORTRAN_ENV
call checkfmt("(en15.6)", -2.9296875E-03," -2.929688E-03")
! print *, n_tst, n_cnt, n_skip
- if (n_cnt /= 0) call abort
+ if (n_cnt /= 0) STOP 1
if (all(.not. l_skip)) write (10, *) "All kinds rounded to nearest"
close (10)
diff --git a/gcc/testsuite/gfortran.dg/fmt_error_10.f b/gcc/testsuite/gfortran.dg/fmt_error_10.f
index c2a9117bb68..7ea6aec1220 100644
--- a/gcc/testsuite/gfortran.dg/fmt_error_10.f
+++ b/gcc/testsuite/gfortran.dg/fmt_error_10.f
@@ -9,21 +9,21 @@
x = 555.25
write (line,str,iostat=istat, iomsg=msg) 1.0d0, 1.234
- if (istat.ne.0) call abort
- if (line.ne." 1.000000000000000D+001.E+00") call abort
+ if (istat.ne.0) STOP 1
+ if (line.ne." 1.000000000000000D+001.E+00") STOP 2
write (line,'(1pd24.15e6)',iostat=istat, iomsg=msg) 1.0d0, 1.234 ! { dg-warning "Period required" }
- if (istat.ne.0) call abort
- if (line.ne." 1.000000000000000D+001.E+00") call abort
+ if (istat.ne.0) STOP 3
+ if (line.ne." 1.000000000000000D+001.E+00") STOP 4
str = '(1pd0.15)'
write (line,str,iostat=istat, iomsg=msg) 1.0d0
- if (istat.ne.5006 .or. msg(1:15).ne."Positive width ") call abort
+ if (istat.ne.5006 .or. msg(1:15).ne."Positive width ") STOP 5
read (*,str,iostat=istat, iomsg=msg) x
- if (istat.ne.5006 .or. msg(1:15).ne."Positive width ") call abort
- if (x.ne.555.25) call abort
+ if (istat.ne.5006 .or. msg(1:15).ne."Positive width ") STOP 6
+ if (x.ne.555.25) STOP 7
write (line,'(1pd24.15e11.3)') 1.0d0, 1.234
- if (line.ne." 1.000000000000000D+00 1.234E+00") call abort
+ if (line.ne." 1.000000000000000D+00 1.234E+00") STOP 8
end
diff --git a/gcc/testsuite/gfortran.dg/fmt_error_9.f b/gcc/testsuite/gfortran.dg/fmt_error_9.f
index d8abb851210..1d677509e37 100644
--- a/gcc/testsuite/gfortran.dg/fmt_error_9.f
+++ b/gcc/testsuite/gfortran.dg/fmt_error_9.f
@@ -9,18 +9,18 @@
x = 555.25
write (line,str,iostat=istat, iomsg=msg) 1.0d0, 1.234
- if (istat.ne.5006 .or. msg(1:15).ne."Period required") call abort
- if (line.ne."initial string") call abort
+ if (istat.ne.5006 .or. msg(1:15).ne."Period required") STOP 1
+ if (line.ne."initial string") STOP 2
str = '(1pf0.15)'
write (line,str,iostat=istat, iomsg=msg) 1.0d0
- if (istat.ne.0) call abort
+ if (istat.ne.0) STOP 3
read (*,str,iostat=istat, iomsg=msg) x
- if (istat.ne.5006 .or. msg(1:15).ne."Positive width ") call abort
- if (x.ne.555.25) call abort
+ if (istat.ne.5006 .or. msg(1:15).ne."Positive width ") STOP 4
+ if (x.ne.555.25) STOP 5
write (line,'(1pd24.15e11.3)') 1.0d0, 1.234
- if (line.ne." 1.000000000000000D+00 1.234E+00") call abort
+ if (line.ne." 1.000000000000000D+00 1.234E+00") STOP 6
str = '(1p2d24.15)'
msg = " 1.000000000000000D+00 1.233999967575073D+00That's it!"
diff --git a/gcc/testsuite/gfortran.dg/fmt_exhaust.f90 b/gcc/testsuite/gfortran.dg/fmt_exhaust.f90
index bd9c8bcfb3f..78d2a471939 100644
--- a/gcc/testsuite/gfortran.dg/fmt_exhaust.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_exhaust.f90
@@ -7,6 +7,6 @@
n = 1
open(10, status="scratch")
write(10,"(i7,(' abcd'))", err=10) n, n
- call abort()
+ STOP 1
10 close(10)
end program test
diff --git a/gcc/testsuite/gfortran.dg/fmt_f0_1.f90 b/gcc/testsuite/gfortran.dg/fmt_f0_1.f90
index dd66f6557e9..cb0b2314475 100644
--- a/gcc/testsuite/gfortran.dg/fmt_f0_1.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_f0_1.f90
@@ -6,59 +6,59 @@
CHARACTER(80) :: str
x = 0.0
write (str,'(f0.0)') x
- if (str.ne."0.") call abort
+ if (str.ne."0.") STOP 1
write (str,'(f0.1)') x
- if (str.ne.".0") call abort
+ if (str.ne.".0") STOP 2
write (str,'(f0.2)') x
- if (str.ne.".00") call abort
+ if (str.ne.".00") STOP 3
write (str,'(f0.3)') x
- if (str.ne.".000") call abort
+ if (str.ne.".000") STOP 4
write (str,'(f0.4)') x
- if (str.ne.".0000") call abort
+ if (str.ne.".0000") STOP 5
write (str,'(F0.0)') 0.0
- if (str.ne."0.") call abort
+ if (str.ne."0.") STOP 6
write (str,'(F0.0)') 0.001
- if (str.ne."0.") call abort
+ if (str.ne."0.") STOP 7
write (str,'(F0.0)') 0.01
- if (str.ne."0.") call abort
+ if (str.ne."0.") STOP 8
write (str,'(F0.0)') 0.1
- if (str.ne."0.") call abort
+ if (str.ne."0.") STOP 9
write (str,'(F1.0)') -0.0
- if (str.ne."*") call abort
+ if (str.ne."*") STOP 10
write (str,'(F1.0)') 0.001
- if (str.ne."*") call abort
+ if (str.ne."*") STOP 11
write (str,'(F1.0)') 0.01
- if (str.ne."*") call abort
+ if (str.ne."*") STOP 12
write (str,'(F1.0)') 0.1
- if (str.ne."*") call abort
+ if (str.ne."*") STOP 13
write (str,'(F2.0)') -0.001
- if (str.ne."**") call abort
+ if (str.ne."**") STOP 14
write (str,'(F2.0)') -0.01
- if (str.ne."**") call abort
+ if (str.ne."**") STOP 15
write (str,'(F2.0)') -0.1
- if (str.ne."**") call abort
+ if (str.ne."**") STOP 16
write (str,'(F0.2)') 0.0
- if (str.ne.".00") call abort
+ if (str.ne.".00") STOP 17
write (str,'(F0.0)') -0.0
- if (str.ne."-0.") call abort
+ if (str.ne."-0.") STOP 18
write (str,'(F0.1)') -0.0
- if (str.ne."-.0") call abort
+ if (str.ne."-.0") STOP 19
write (str,'(F0.2)') -0.0
- if (str.ne."-.00") call abort
+ if (str.ne."-.00") STOP 20
write (str,'(F0.3)') -0.0
- if (str.ne."-.000") call abort
+ if (str.ne."-.000") STOP 21
write (str,'(F3.0)') -0.0
- if (str.ne."-0.") call abort
+ if (str.ne."-0.") STOP 22
write (str,'(F2.0)') -0.0
- if (str.ne."**") call abort
+ if (str.ne."**") STOP 23
write (str,'(F1.0)') -0.0
- if (str.ne."*") call abort
+ if (str.ne."*") STOP 24
write (str,'(F0.1)') -0.0
- if (str.ne."-.0") call abort
+ if (str.ne."-.0") STOP 25
write (str,'(F3.1)') -0.0
- if (str.ne."-.0") call abort
+ if (str.ne."-.0") STOP 26
write (str,'(F2.1)') -0.0
- if (str.ne."**") call abort
+ if (str.ne."**") STOP 27
write (str,'(F1.1)') -0.0
- if (str.ne."*") call abort
+ if (str.ne."*") STOP 28
END
diff --git a/gcc/testsuite/gfortran.dg/fmt_f_an_p.f b/gcc/testsuite/gfortran.dg/fmt_f_an_p.f
index e492cec380a..f3b71169ae8 100644
--- a/gcc/testsuite/gfortran.dg/fmt_f_an_p.f
+++ b/gcc/testsuite/gfortran.dg/fmt_f_an_p.f
@@ -5,6 +5,6 @@
character(28) string
write(string,1) 3742. , 0.3742
1 format ( f14.0, 4pf14.0 )
- if (string.ne." 3742. 3742.") call abort
+ if (string.ne." 3742. 3742.") STOP 1
end program f_and_p
diff --git a/gcc/testsuite/gfortran.dg/fmt_fw_d.f90 b/gcc/testsuite/gfortran.dg/fmt_fw_d.f90
index 1af3bda55d8..0cd096d757a 100644
--- a/gcc/testsuite/gfortran.dg/fmt_fw_d.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_fw_d.f90
@@ -127,5 +127,5 @@ subroutine errormsg(x, str, len, w, d, reason)
fmt_len = len_trim(fmt)
!print *, "print '", fmt(:fmt_len), "', ", x, " ! => ", str(:len), ": ", reason
- call abort
+ STOP 1
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/fmt_g.f b/gcc/testsuite/gfortran.dg/fmt_g.f
index cb73492829e..7ed9348a60f 100644
--- a/gcc/testsuite/gfortran.dg/fmt_g.f
+++ b/gcc/testsuite/gfortran.dg/fmt_g.f
@@ -5,39 +5,39 @@
character(len=50) :: buffer
WRITE(buffer,"(G0.5,'<')") -10000.
- if (buffer.ne."-10000.<") call abort
+ if (buffer.ne."-10000.<") STOP 1
WRITE(buffer,"(G1.5E5,'<')") -10000.
- if (buffer.ne."*<") call abort
+ if (buffer.ne."*<") STOP 2
WRITE(buffer,"(G2.5E5,'<')") -10000.
- if (buffer.ne."**<") call abort
+ if (buffer.ne."**<") STOP 3
WRITE(buffer,"(G3.5E5,'<')") -10000.
- if (buffer.ne."***<") call abort
+ if (buffer.ne."***<") STOP 4
WRITE(buffer,"(G4.5E5,'<')") -10000.
- if (buffer.ne."****<") call abort
+ if (buffer.ne."****<") STOP 5
WRITE(buffer,"(G5.5E5,'<')") -10000.
- if (buffer.ne."*****<") call abort
+ if (buffer.ne."*****<") STOP 6
WRITE(buffer,"(G6.5E5,'<')") -10000.
- if (buffer.ne."******<") call abort
+ if (buffer.ne."******<") STOP 7
WRITE(buffer,"(G7.5E5,'<')") -10000.
- if (buffer.ne."*******<") call abort
+ if (buffer.ne."*******<") STOP 8
WRITE(buffer,"(G8.5E5,'<')") -10000.
- if (buffer.ne."********<") call abort
+ if (buffer.ne."********<") STOP 9
WRITE(buffer,"(G9.5E5,'<')") -10000.
- if (buffer.ne."*********<") call abort
+ if (buffer.ne."*********<") STOP 10
WRITE(buffer,"(G10.5E5,'<')") -10000.
- if (buffer.ne."**********<") call abort
+ if (buffer.ne."**********<") STOP 11
WRITE(buffer,"(G11.5E5,'<')") -10000.
- if (buffer.ne."***********<") call abort
+ if (buffer.ne."***********<") STOP 12
WRITE(buffer,"(G12.5E5,'<')") -10000.
- if (buffer.ne."************<") call abort
+ if (buffer.ne."************<") STOP 13
WRITE(buffer,"(G13.5E5,'<')") -10000.
- if (buffer.ne."*************<") call abort
+ if (buffer.ne."*************<") STOP 14
WRITE(buffer,"(G14.5E5,'<')") -10000.
- if (buffer.ne."-10000. <") call abort
+ if (buffer.ne."-10000. <") STOP 15
WRITE(buffer,"(G15.5E5,'<')") -10000.
- if (buffer.ne." -10000. <") call abort
+ if (buffer.ne." -10000. <") STOP 16
WRITE(buffer,"(G16.5E5,'<')") -10000.
- if (buffer.ne." -10000. <") call abort
+ if (buffer.ne." -10000. <") STOP 17
STOP
END
diff --git a/gcc/testsuite/gfortran.dg/fmt_g0_1.f08 b/gcc/testsuite/gfortran.dg/fmt_g0_1.f08
index 5b74a3e29a9..6bb6539954a 100644
--- a/gcc/testsuite/gfortran.dg/fmt_g0_1.f08
+++ b/gcc/testsuite/gfortran.dg/fmt_g0_1.f08
@@ -4,17 +4,17 @@
character(25) :: string = "(g0,g0,g0)"
character(50) :: buffer
write(buffer, '(g0,g0,g0)') ':',12340,':'
- if (buffer.ne.":12340:") call abort
+ if (buffer.ne.":12340:") STOP 1
write(buffer, string) ':',0,':'
- if (buffer.ne.":0:") call abort
+ if (buffer.ne.":0:") STOP 2
write(buffer, string) ':',1.0_8/3.0_8,':'
- if (buffer.ne.":0.33333333333333331:") call abort
+ if (buffer.ne.":0.33333333333333331:") STOP 3
write(buffer, '(1x,a,g0,a)') ':',1.0_8/3.0_8,':'
- if (buffer.ne." :0.33333333333333331:") call abort
+ if (buffer.ne." :0.33333333333333331:") STOP 4
write(buffer, string) ':',"hello",':'
- if (buffer.ne.":hello:") call abort
+ if (buffer.ne.":hello:") STOP 5
write(buffer, "(g0,g0,g0,g0)") ':',.true.,.false.,':'
- if (buffer.ne.":TF:") call abort
+ if (buffer.ne.":TF:") STOP 6
write(buffer, "(g0,g0,',',g0,g0)") '(',( 1.2345_8, 2.4567_8 ),')'
- if (buffer.ne."(1.2344999999999999,2.4567000000000001)") call abort
+ if (buffer.ne."(1.2344999999999999,2.4567000000000001)") STOP 7
end
diff --git a/gcc/testsuite/gfortran.dg/fmt_g0_2.f08 b/gcc/testsuite/gfortran.dg/fmt_g0_2.f08
index 3567561802b..80f3d84d4fa 100644
--- a/gcc/testsuite/gfortran.dg/fmt_g0_2.f08
+++ b/gcc/testsuite/gfortran.dg/fmt_g0_2.f08
@@ -1,11 +1,11 @@
! { dg-do run }
-! { dg-options "-std=f95 -pedantic -fall-intrinsics" }
+! { dg-options "-std=f95 -pedantic " }
! { dg-shouldfail "Zero width in format descriptor" }
! PR36420 Fortran 2008: g0 edit descriptor
! Test case provided by Jerry DeLisle <jvdelisle@gcc.gnu.org>
character(25) :: string = "(g0,g0,g0)"
character(33) :: buffer
write(buffer, string) ':',0,':'
- if (buffer.ne.":0:") call abort
+ if (buffer.ne.":0:") STOP 1
end
! { dg-output "Fortran runtime error: Zero width in format descriptor(\n|\r\n|\r)" }
diff --git a/gcc/testsuite/gfortran.dg/fmt_g0_4.f08 b/gcc/testsuite/gfortran.dg/fmt_g0_4.f08
index 500117ec80f..fff6580ebf9 100644
--- a/gcc/testsuite/gfortran.dg/fmt_g0_4.f08
+++ b/gcc/testsuite/gfortran.dg/fmt_g0_4.f08
@@ -3,13 +3,13 @@
! PR36725 Compile time error for g0 edit descriptor
character(30) :: line
write(line, '(g0.3)') 0.1
-if (line.ne." 1.000E-01") call abort
+if (line.ne." 1.000E-01") STOP 1
write(line, '(g0.9)') 1.0
-if (line.ne."1.000000000E+00") call abort
+if (line.ne."1.000000000E+00") STOP 2
write(line, '(g0.5)') 29.23
-if (line.ne." 2.92300E+01") call abort
+if (line.ne." 2.92300E+01") STOP 3
write(line, '(g0.8)') -28.4
-if (line.ne."-2.83999996E+01") call abort
+if (line.ne."-2.83999996E+01") STOP 4
write(line, '(g0.8)') -0.0001
-if (line.ne."-9.99999975E-05") call abort
+if (line.ne."-9.99999975E-05") STOP 5
end
diff --git a/gcc/testsuite/gfortran.dg/fmt_g0_5.f08 b/gcc/testsuite/gfortran.dg/fmt_g0_5.f08
index 3de84846605..d2a97b1ac80 100644
--- a/gcc/testsuite/gfortran.dg/fmt_g0_5.f08
+++ b/gcc/testsuite/gfortran.dg/fmt_g0_5.f08
@@ -32,7 +32,7 @@ contains
write(s1, fmt1) r
write(s2, fmt2) r
- if (s1 /= s2) call abort
+ if (s1 /= s2) STOP 1
!if (s1 /= s2) print "(6a)", trim(fmt1), ": '", trim(s1), "' /= '", trim(s2), "'"
!print "(6a)", trim(fmt1), ": '", trim(s1), "' /= '", trim(s2), "'"
end subroutine check_equal
diff --git a/gcc/testsuite/gfortran.dg/fmt_g0_6.f08 b/gcc/testsuite/gfortran.dg/fmt_g0_6.f08
index 982412a4631..89907434a99 100644
--- a/gcc/testsuite/gfortran.dg/fmt_g0_6.f08
+++ b/gcc/testsuite/gfortran.dg/fmt_g0_6.f08
@@ -74,7 +74,7 @@ contains
end if
write(s_g, "('''', " // trim(fmt_g) // ",'''')") val
write(s_f, "('''', " // trim(fmt_f) // ",'''')") val
- if (s_g /= s_f) call abort
+ if (s_g /= s_f) STOP 1
!if (s_g /= s_f) then
!print "(a,g0,a,g0)", "lower=", lower, " upper=", upper
! print "(a, ' /= ', a, ' ', a, '/', a, ':', g0)", trim(s_g), trim(s_f), trim(fmt_g), trim(fmt_f), val
diff --git a/gcc/testsuite/gfortran.dg/fmt_g0_7.f08 b/gcc/testsuite/gfortran.dg/fmt_g0_7.f08
index d0b572e23e1..ba2d89e59a9 100644
--- a/gcc/testsuite/gfortran.dg/fmt_g0_7.f08
+++ b/gcc/testsuite/gfortran.dg/fmt_g0_7.f08
@@ -27,5 +27,5 @@ use ISO_FORTRAN_ENV
end if
end if
end do
- if (n /= 0) call abort
+ if (n /= 0) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.dg/fmt_g_1.f90 b/gcc/testsuite/gfortran.dg/fmt_g_1.f90
index 715df0dfc09..21f79276b5c 100644
--- a/gcc/testsuite/gfortran.dg/fmt_g_1.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_g_1.f90
@@ -7,5 +7,5 @@
write (buffer ,'(6(1X,1PG9.0e2))') 0.0, 0.04, 0.06, 0.4, 0.6, 243.0
write (buffer1,'(6(1X,1PE9.0e2))') 0.0, 0.04, 0.06, 0.4, 0.6, 243.0
- if (buffer /= buffer1) call abort
+ if (buffer /= buffer1) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/fmt_int_sign.f90 b/gcc/testsuite/gfortran.dg/fmt_int_sign.f90
index 2257fd8296c..78408ce2868 100644
--- a/gcc/testsuite/gfortran.dg/fmt_int_sign.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_int_sign.f90
@@ -11,6 +11,6 @@ program IntAdtest
value = -9223372036854775807_i8_ -1
write(str_value, format_IntAd) value
- if (str_value.ne." -9223372036854775808") call abort
+ if (str_value.ne." -9223372036854775808") STOP 1
end program IntAdtest
diff --git a/gcc/testsuite/gfortran.dg/fmt_l.f90 b/gcc/testsuite/gfortran.dg/fmt_l.f90
index 0fd195515fc..ffefa0d548c 100644
--- a/gcc/testsuite/gfortran.dg/fmt_l.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_l.f90
@@ -13,42 +13,42 @@ program test_l
l1 = .true.
write (str,"(L)") l1 ! { dg-warning "Extension: Missing positive width after L descriptor" }
read (str,"(L)") l1 ! { dg-warning "Extension: Missing positive width after L descriptor" }
- if (l1 .neqv. .true.) call abort
+ if (l1 .neqv. .true.) STOP 1
l2 = .true.
write (str,"(L)") l2 ! { dg-warning "Extension: Missing positive width after L descriptor" }
read (str,"(L)") l2 ! { dg-warning "Extension: Missing positive width after L descriptor" }
- if (l2 .neqv. .true.) call abort
+ if (l2 .neqv. .true.) STOP 2
l4 = .true.
write (str,"(L)") l4 ! { dg-warning "Extension: Missing positive width after L descriptor" }
read (str,"(L)") l4 ! { dg-warning "Extension: Missing positive width after L descriptor" }
- if (l4 .neqv. .true.) call abort
+ if (l4 .neqv. .true.) STOP 3
l8 = .true.
write (str,"(L)") l8 ! { dg-warning "Extension: Missing positive width after L descriptor" }
read (str,"(L)") l8 ! { dg-warning "Extension: Missing positive width after L descriptor" }
- if (l8 .neqv. .true.) call abort
+ if (l8 .neqv. .true.) STOP 4
l1 = .false.
write (str,"(L)") l1 ! { dg-warning "Extension: Missing positive width after L descriptor" }
read (str,"(L)") l1 ! { dg-warning "Extension: Missing positive width after L descriptor" }
- if (l1 .neqv. .false.) call abort
+ if (l1 .neqv. .false.) STOP 5
l2 = .false.
write (str,"(L)") l2 ! { dg-warning "Extension: Missing positive width after L descriptor" }
read (str,"(L)") l2 ! { dg-warning "Extension: Missing positive width after L descriptor" }
- if (l2 .neqv. .false.) call abort
+ if (l2 .neqv. .false.) STOP 6
l4 = .false.
write (str,"(L)") l4 ! { dg-warning "Extension: Missing positive width after L descriptor" }
read (str,"(L)") l4 ! { dg-warning "Extension: Missing positive width after L descriptor" }
- if (l4 .neqv. .false.) call abort
+ if (l4 .neqv. .false.) STOP 7
l8 = .false.
write (str,"(L)") l8 ! { dg-warning "Extension: Missing positive width after L descriptor" }
read (str,"(L)") l8 ! { dg-warning "Extension: Missing positive width after L descriptor" }
- if (l8 .neqv. .false.) call abort
+ if (l8 .neqv. .false.) STOP 8
end program test_l
! { dg-output "At line 14 of file.*" }
diff --git a/gcc/testsuite/gfortran.dg/fmt_missing_period_2.f b/gcc/testsuite/gfortran.dg/fmt_missing_period_2.f
index a8f584921d1..d6b8504d46d 100644
--- a/gcc/testsuite/gfortran.dg/fmt_missing_period_2.f
+++ b/gcc/testsuite/gfortran.dg/fmt_missing_period_2.f
@@ -6,11 +6,11 @@
character(6) :: str = "xyz"
character(12) :: input = "1234abcdef"
read(input,'(f4,a6)') aval, str
- if (aval.ne.1234.0) call abort()
- if (str.ne."abcdef") call abort()
+ if (aval.ne.1234.0) STOP 1
+ if (str.ne."abcdef") STOP 2
aval = 0.0
str = "xyz"
read(input,'(d4,a6)') aval, str
- if (aval.ne.1234.0) call abort()
- if (str.ne."abcdef") call abort()
+ if (aval.ne.1234.0) STOP 3
+ if (str.ne."abcdef") STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/fmt_missing_period_3.f b/gcc/testsuite/gfortran.dg/fmt_missing_period_3.f
index 71a6c70f6c5..801a7f53fcc 100644
--- a/gcc/testsuite/gfortran.dg/fmt_missing_period_3.f
+++ b/gcc/testsuite/gfortran.dg/fmt_missing_period_3.f
@@ -9,7 +9,7 @@
aval = 0.0
str = "xyz"
read(input,fmtstr) aval, str
- if (aval.ne.1234.0) call abort()
- if (str.ne."abcdef") call abort()
+ if (aval.ne.1234.0) STOP 1
+ if (str.ne."abcdef") STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/fmt_p_1.f90 b/gcc/testsuite/gfortran.dg/fmt_p_1.f90
index 2f3c66289a8..25ece76e201 100644
--- a/gcc/testsuite/gfortran.dg/fmt_p_1.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_p_1.f90
@@ -5,9 +5,9 @@ program gfcbug66
real(8) :: x = 1.0e-100_8
character(50) :: outstr
write (outstr,'(1X,2E12.3)') x, 2 * x
- if (outstr.ne." 0.100E-99 0.200E-99") call abort
+ if (outstr.ne." 0.100E-99 0.200E-99") STOP 1
! Before patch 2 * x was put out wrong
write (outstr,'(1X,1P,2E12.3)') x, 2 * x
- if (outstr.ne." 1.000-100 2.000-100") call abort
+ if (outstr.ne." 1.000-100 2.000-100") STOP 2
end program gfcbug66
diff --git a/gcc/testsuite/gfortran.dg/fmt_pf.f90 b/gcc/testsuite/gfortran.dg/fmt_pf.f90
index 743fcbf680b..11171b278ae 100644
--- a/gcc/testsuite/gfortran.dg/fmt_pf.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_pf.f90
@@ -190,7 +190,7 @@ use ISO_FORTRAN_ENV
call checkfmt("(rp, 0pf18.3)", -643.125, " -643.125")
! print *, n_tst, n_cnt, n_skip
- if (n_cnt /= 0) call abort
+ if (n_cnt /= 0) STOP 1
if (all(.not. l_skip)) print *, "All kinds rounded to nearest"
contains
diff --git a/gcc/testsuite/gfortran.dg/fmt_read.f90 b/gcc/testsuite/gfortran.dg/fmt_read.f90
index 3b33946a523..9d34aeaf437 100644
--- a/gcc/testsuite/gfortran.dg/fmt_read.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_read.f90
@@ -6,6 +6,6 @@
rewind(7)
read(7,'(F15.5)') a,b
! note the read format is wider than the write
- if (abs(a-1.0) .gt. 1e-5) call abort
- if (abs(b-2.0) .gt. 1e-5) call abort
+ if (abs(a-1.0) .gt. 1e-5) STOP 1
+ if (abs(b-2.0) .gt. 1e-5) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/fmt_read_bz_bn.f90 b/gcc/testsuite/gfortran.dg/fmt_read_bz_bn.f90
index 5eea29a6c14..cf699f6b9e5 100644
--- a/gcc/testsuite/gfortran.dg/fmt_read_bz_bn.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_read_bz_bn.f90
@@ -23,7 +23,7 @@ READ(IDATA1, 10) I1(1,2), IVI, A1(3), JVI, KVI, A1(2), AVS, A1(1)
WRITE(ODATA, 20) I1(1,2), IVI, A1(3), JVI, KVI, A1(2), AVS, A1(1)
20 FORMAT (2I5, 1X, E10.5, BN, 2I5, F6.1, BZ, F6.2, BN, 1X, E8.3, I5)
-if (ODATA /= CORRECT1) call abort
+if (ODATA /= CORRECT1) STOP 1
ODATA=""
READ(IDATA2, 30) I2(1,2,1), A1(3), AVS, IVI, I1(1,1), JVI, BVS, A1(2), I2(1,1,1)
@@ -32,7 +32,7 @@ READ(IDATA2, 30) I2(1,2,1), A1(3), AVS, IVI, I1(1,1), JVI, BVS, A1(2), I2(1,1,1)
WRITE(ODATA, 40) I2(1,2,1), A1(3), AVS, IVI, I1(1,1), JVI, BVS, A1(2), I2(1,1,1)
40 FORMAT (I5, F7.0, BZ, 1X, F5.2, 2(1X,I4),I5, F7.0, BZ, 1X, F5.2, 1X, I4)
-if (ODATA /= CORRECT2) call abort
+if (ODATA /= CORRECT2) STOP 2
ODATA=""
READ(IDATA3, 50) A2
@@ -41,6 +41,6 @@ READ(IDATA3, 50) A2
WRITE(ODATA,60) A2
60 FORMAT (4D20.10)
-if (ODATA /= CORRECT3) call abort
+if (ODATA /= CORRECT3) STOP 3
end program test_bn
diff --git a/gcc/testsuite/gfortran.dg/fmt_t_1.f90 b/gcc/testsuite/gfortran.dg/fmt_t_1.f90
index 157ba131e40..07556c0b52d 100644
--- a/gcc/testsuite/gfortran.dg/fmt_t_1.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_t_1.f90
@@ -7,6 +7,6 @@
rewind (10)
read (10, fmt='(i6, (t7, 6i2))') nrow, (vec(i), i=1,15)
close (10)
- if (nrow.ne.1) call abort
- if (any (vec.ne.(/1,2,3,4,5,6,7,8,9,10,11,12,13,14,15/))) call abort
+ if (nrow.ne.1) STOP 1
+ if (any (vec.ne.(/1,2,3,4,5,6,7,8,9,10,11,12,13,14,15/))) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/fmt_t_2.f90 b/gcc/testsuite/gfortran.dg/fmt_t_2.f90
index c2b869481df..01647655de6 100644
--- a/gcc/testsuite/gfortran.dg/fmt_t_2.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_t_2.f90
@@ -10,18 +10,18 @@
rewind(11)
read (11, '(a040,t1,040a)', end = 999) foost1 , foost2
- if (foost1.ne.foost2) call abort()
+ if (foost1.ne.foost2) STOP 1
read (11, '(a032,t2,a032t3,a032)', end = 999) foost1 , foost2, foost3
- if (foost1(1:32).ne."123456789 123456789 123456789 ") call abort()
- if (foost2(1:32).ne."23456789 123456789 123456789 ") call abort()
- if (foost3(1:32).ne."3456789 123456789 123456789 ") call abort()
+ if (foost1(1:32).ne."123456789 123456789 123456789 ") STOP 2
+ if (foost2(1:32).ne."23456789 123456789 123456789 ") STOP 3
+ if (foost3(1:32).ne."3456789 123456789 123456789 ") STOP 4
read (11, '(a017,t1,a0017)', end = 999) foost1 , foost2
- if (foost1.ne.foost2) call abort()
- if (foost2(1:17).ne." Now is the time ") call abort()
+ if (foost1.ne.foost2) STOP 5
+ if (foost2(1:17).ne." Now is the time ") STOP 6
goto 1000
- 999 call abort()
+ 999 STOP 7
1000 continue
close(11)
end
diff --git a/gcc/testsuite/gfortran.dg/fmt_t_3.f90 b/gcc/testsuite/gfortran.dg/fmt_t_3.f90
index 1ec67e11839..6705534ae29 100644
--- a/gcc/testsuite/gfortran.dg/fmt_t_3.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_t_3.f90
@@ -11,5 +11,5 @@ program t
write(10, fmt) 'xxxx', (y(i), i = 1,n)
rewind(10)
read(10, '(a)') fmt
- if (fmt.ne."xxxx a a a") call abort()
+ if (fmt.ne."xxxx a a a") STOP 1
end program t
diff --git a/gcc/testsuite/gfortran.dg/fmt_t_4.f90 b/gcc/testsuite/gfortran.dg/fmt_t_4.f90
index 6c96f7ba8bf..22f86177114 100644
--- a/gcc/testsuite/gfortran.dg/fmt_t_4.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_t_4.f90
@@ -12,7 +12,7 @@
read(10,*) b
read(10,*) c
close(10)
- if (a.ne.b) call abort()
- IF (b.ne.c) call abort()
+ if (a.ne.b) STOP 1
+ IF (b.ne.c) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/fmt_t_5.f90 b/gcc/testsuite/gfortran.dg/fmt_t_5.f90
index e3c69319bd1..b68094fd167 100644
--- a/gcc/testsuite/gfortran.dg/fmt_t_5.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_t_5.f90
@@ -10,9 +10,9 @@
close (10, status="keep")
open (unit=10, file="pr32678testfile", access="stream")
read(10, pos=1) output(1:21)
- if (output(1:21).ne."ab x") call abort
+ if (output(1:21).ne."ab x") STOP 1
read(10) c
- if ((c.ne.achar(10)) .and. (c.ne.achar(13))) call abort
+ if ((c.ne.achar(10)) .and. (c.ne.achar(13))) STOP 2
close (10, status="delete")
10 format (a2,t1,a1,t2,a1,t20,' x')
end
diff --git a/gcc/testsuite/gfortran.dg/fmt_t_6.f b/gcc/testsuite/gfortran.dg/fmt_t_6.f
index 04141a15566..c9991b2c06c 100644
--- a/gcc/testsuite/gfortran.dg/fmt_t_6.f
+++ b/gcc/testsuite/gfortran.dg/fmt_t_6.f
@@ -6,5 +6,5 @@
!write(*,'(a)') "123456789012345678901234567890"
write(output,'(T20,A3, T1,A4, T5,A2, T7,A2, T9,A4, T17,A2)')
1 'a', 'b', 'c', 'd', 'e', 'f'
- if (output .ne. " b c d e f a") call abort
+ if (output .ne. " b c d e f a") STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/fmt_t_7.f b/gcc/testsuite/gfortran.dg/fmt_t_7.f
index 718668ff404..382fd11976e 100644
--- a/gcc/testsuite/gfortran.dg/fmt_t_7.f
+++ b/gcc/testsuite/gfortran.dg/fmt_t_7.f
@@ -10,7 +10,7 @@
read (10, pos=50000) b
read (10, pos=25474) c
close (10, status="delete")
- if (a /= "a") call abort
- if (b /= "b") call abort
- if (c /= " ") call abort
+ if (a /= "a") STOP 1
+ if (b /= "b") STOP 2
+ if (c /= " ") STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/fmt_t_9.f b/gcc/testsuite/gfortran.dg/fmt_t_9.f
index bfe0361d0e1..e4aa7a93af4 100644
--- a/gcc/testsuite/gfortran.dg/fmt_t_9.f
+++ b/gcc/testsuite/gfortran.dg/fmt_t_9.f
@@ -29,13 +29,13 @@ c write(6,fmt='(2i6)') IFLGHT,NFLCYC
c write(6,fmt='(20I4)') (IFLTSQ(I), I=1,NFLCYC)
c write(6,*) "Program is correct"
close(29)
- if (IFLGHT.ne.451) call abort
- if (NFLCYC.ne.40) call abort
+ if (IFLGHT.ne.451) STOP 1
+ if (NFLCYC.ne.40) STOP 2
stop
C
100 CONTINUE
C write(6,*) "End of file encountered (wrong)"
close (29)
- call abort
+ STOP 3
STOP
END
diff --git a/gcc/testsuite/gfortran.dg/fmt_tl.f b/gcc/testsuite/gfortran.dg/fmt_tl.f
index 656499ed05e..619f8c9691c 100644
--- a/gcc/testsuite/gfortran.dg/fmt_tl.f
+++ b/gcc/testsuite/gfortran.dg/fmt_tl.f
@@ -8,20 +8,20 @@
x = 12.34
write(line,10) x
10 format(tr2,tl2,g11.4)
- if (line.ne.' 12.34 ') call abort()
+ if (line.ne.' 12.34 ') STOP 1
write(line,20) x
20 format(tr5,tl3,g11.4)
- if (line.ne.' 12.34 ') call abort()
+ if (line.ne.' 12.34 ') STOP 2
write(line,30) x
30 format(tr5,tl3,tl3,g11.4)
- if (line.ne.' 12.34 ') call abort()
+ if (line.ne.' 12.34 ') STOP 3
write(line,40) x
40 format(tr25,tl35,f11.4)
- if (line.ne.' 12.3400 ') call abort()
+ if (line.ne.' 12.3400 ') STOP 4
write(line,50) x
50 format(tl5,tr3,f11.4)
- if (line.ne.' 12.3400 ') call abort()
+ if (line.ne.' 12.3400 ') STOP 5
write(line,60) x
60 format(t5,tl3,f11.4)
- if (line.ne.' 12.3400 ') call abort()
+ if (line.ne.' 12.3400 ') STOP 6
end
diff --git a/gcc/testsuite/gfortran.dg/fmt_unlimited.f90 b/gcc/testsuite/gfortran.dg/fmt_unlimited.f90
index b1743a35622..b06068c29bc 100644
--- a/gcc/testsuite/gfortran.dg/fmt_unlimited.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_unlimited.f90
@@ -4,7 +4,7 @@ program IOtest
character(40) :: str
double precision :: d = 5.0
write (str, '(*(2(E15.7)))') d, d
- if (str /= " 0.5000000E+01 0.5000000E+01") call abort
+ if (str /= " 0.5000000E+01 0.5000000E+01") STOP 1
write (str, '(*(2E15.7))') d, d
- if (str /= " 0.5000000E+01 0.5000000E+01") call abort
+ if (str /= " 0.5000000E+01 0.5000000E+01") STOP 2
end program
diff --git a/gcc/testsuite/gfortran.dg/fmt_white.f b/gcc/testsuite/gfortran.dg/fmt_white.f
index 6921a722f6a..467205b7ad0 100644
--- a/gcc/testsuite/gfortran.dg/fmt_white.f
+++ b/gcc/testsuite/gfortran.dg/fmt_white.f
@@ -12,9 +12,9 @@
write(line,10) x
10 format(g1
* 1.4)
- if (line.ne." 12.34") call abort()
+ if (line.ne." 12.34") STOP 1
line = ""
write(line,20) x
20 format(t r 2 , g 1 1 . 4)
- if (line.ne." 12.34") call abort()
+ if (line.ne." 12.34") STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/fmt_zero_digits.f90 b/gcc/testsuite/gfortran.dg/fmt_zero_digits.f90
index e7342397ada..05d2806f923 100644
--- a/gcc/testsuite/gfortran.dg/fmt_zero_digits.f90
+++ b/gcc/testsuite/gfortran.dg/fmt_zero_digits.f90
@@ -9,22 +9,22 @@ program test
50 FORMAT (1PD20.0)
astr = ""
write(astr,50) -8.0D0
- if (astr.ne." -8.D+00") call abort
+ if (astr.ne." -8.D+00") STOP 1
write(astr,50) 8.0D0
- if (astr.ne." 8.D+00") call abort
+ if (astr.ne." 8.D+00") STOP 2
write(astr, '(E15.0)', iostat=istat) 1e5
- if (istat /= 5006) call abort
+ if (istat /= 5006) STOP 3
write(astr, '(D15.0)', iostat=istat) 1e5
- if (istat /= 5006) call abort
+ if (istat /= 5006) STOP 4
write(astr, '(G15.0)', iostat=istat) 1e5
- if (istat /= 5006) call abort
+ if (istat /= 5006) STOP 5
write(astr, '(2PE15.0)', iostat=istat) 1e5
- if (istat /= 5006) call abort
+ if (istat /= 5006) STOP 6
write(astr, '(0PE15.0)', iostat=istat) 1e5
- if (istat /= 5006) call abort
+ if (istat /= 5006) STOP 7
write(astr, '(1PE15.0)', iostat=istat) 1e5
- if (istat /= 0) call abort
+ if (istat /= 0) STOP 8
write(astr, '(F15.0)', iostat=istat) 1e5
- if (astr.ne." 100000.") call abort
- if (istat /= 0) call abort
+ if (astr.ne." 100000.") STOP 9
+ if (istat /= 0) STOP 10
end program test
diff --git a/gcc/testsuite/gfortran.dg/fold_nearest.f90 b/gcc/testsuite/gfortran.dg/fold_nearest.f90
index 743e2023ab6..5dd41377321 100644
--- a/gcc/testsuite/gfortran.dg/fold_nearest.f90
+++ b/gcc/testsuite/gfortran.dg/fold_nearest.f90
@@ -11,17 +11,17 @@ REAL, PARAMETER :: x(10) = (/ 1., 0.49999997, 0.5, 8388609.0, -1., &
REAL :: a(10)
a = x
-if (nearest (x(1), dir(1)) /= nearest (a(1), dir(1))) call abort ()
-if (nearest (x(2), dir(2)) /= nearest (a(2), dir(2))) call abort ()
-if (nearest (x(3), dir(3)) /= nearest (a(3), dir(3))) call abort ()
-if (nearest (x(4), dir(4)) /= nearest (a(4), dir(4))) call abort ()
-if (nearest (x(5), dir(5)) /= nearest (a(5), dir(5))) call abort ()
-if (nearest (x(6), dir(6)) /= nearest (a(6), dir(6))) call abort ()
-if (nearest (x(7), dir(7)) /= nearest (a(7), dir(7))) call abort ()
-if (nearest (x(8), dir(8)) /= nearest (a(8), dir(8))) call abort ()
+if (nearest (x(1), dir(1)) /= nearest (a(1), dir(1))) STOP 1
+if (nearest (x(2), dir(2)) /= nearest (a(2), dir(2))) STOP 2
+if (nearest (x(3), dir(3)) /= nearest (a(3), dir(3))) STOP 3
+if (nearest (x(4), dir(4)) /= nearest (a(4), dir(4))) STOP 4
+if (nearest (x(5), dir(5)) /= nearest (a(5), dir(5))) STOP 5
+if (nearest (x(6), dir(6)) /= nearest (a(6), dir(6))) STOP 6
+if (nearest (x(7), dir(7)) /= nearest (a(7), dir(7))) STOP 7
+if (nearest (x(8), dir(8)) /= nearest (a(8), dir(8))) STOP 8
! These last two tests are commented out because mpfr provides no support
! for denormals, and therefore we get TINY instead of the correct result.
-!if (nearest (x(9), dir(9)) /= nearest (a(9), dir(9))) call abort ()
-!if (nearest (x(10), dir(10)) /= nearest (a(10), dir(10))) call abort ()
+!if (nearest (x(9), dir(9)) /= nearest (a(9), dir(9))) STOP 9
+!if (nearest (x(10), dir(10)) /= nearest (a(10), dir(10))) STOP 10
end
diff --git a/gcc/testsuite/gfortran.dg/forall_1.f90 b/gcc/testsuite/gfortran.dg/forall_1.f90
index 35fcfdd7fd2..cddb1ba1926 100644
--- a/gcc/testsuite/gfortran.dg/forall_1.f90
+++ b/gcc/testsuite/gfortran.dg/forall_1.f90
@@ -11,18 +11,18 @@ i1 = (/ 0, 1, 2, 3, 4, 0, 6, 7, 8, 9, 10, 0, 0, 13, 14 /)
forall (i=1:15, i1(i) /= 0)
i1(i) = 0
end forall
-if (any(i1 /= 0)) call abort
+if (any(i1 /= 0)) STOP 1
a1(:)%k = i1(1:10)
forall (i=1:10, a1(i)%k == 0)
a1(i)%k = i
end forall
-if (any (a1(:)%k /= (/ (i, i=1,10) /))) call abort
+if (any (a1(:)%k /= (/ (i, i=1,10) /))) STOP 2
forall (i=1:15, j=1:10, a1(j)%k <= j)
i2(i,j) = j + i*11
end forall
do i=1,15
- if (any (i2(i,:) /= (/ (i*11 + j, j=1,10) /))) call abort
+ if (any (i2(i,:) /= (/ (i*11 + j, j=1,10) /))) STOP 3
end do
end
diff --git a/gcc/testsuite/gfortran.dg/forall_10.f90 b/gcc/testsuite/gfortran.dg/forall_10.f90
index 1b16840e643..7820ed17d60 100644
--- a/gcc/testsuite/gfortran.dg/forall_10.f90
+++ b/gcc/testsuite/gfortran.dg/forall_10.f90
@@ -17,9 +17,9 @@ program pr30400_1
a (i, j, k, l) = i - j + k - l
end forall
end forall
- if (sum (a) .ne. 2625.0) call abort ()
+ if (sum (a) .ne. 2625.0) STOP 1
! Check that the fix has not broken the treatment of the '=='
forall (i = 1:5, i == 3) a(i, i, i, i) = -5
- if (sum (a) .ne. 2616.0) call abort ()
+ if (sum (a) .ne. 2616.0) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/forall_12.f90 b/gcc/testsuite/gfortran.dg/forall_12.f90
index 207977c5144..9f2b8e771d3 100644
--- a/gcc/testsuite/gfortran.dg/forall_12.f90
+++ b/gcc/testsuite/gfortran.dg/forall_12.f90
@@ -14,15 +14,15 @@
forall(i=1:1) b(i:i) = b(i:i) ! The rest were found to be broken
forall(i=1:1) b(:)(i:i) = b(:)(i:i)
forall(i=1:1) b(1:3)(i:i) = b(2:4)(i:i)
- if (any (b .ne. (/"2","3","4","4"/))) call abort ()
+ if (any (b .ne. (/"2","3","4","4"/))) STOP 1
b = c
forall(i=1:1) b(2:4)(i:i) = b(1:3)(i:i)
- if (any (b .ne. (/"1","1","2","3"/))) call abort ()
+ if (any (b .ne. (/"1","1","2","3"/))) STOP 2
b = c
do i = 1, 1
b(2:4)(i:i) = b(1:3)(i:i) ! This was PR33811 and Paul's bit
end do
- if (any (b .ne. (/"1","1","2","3"/))) call abort ()
+ if (any (b .ne. (/"1","1","2","3"/))) STOP 3
call foo
contains
subroutine foo
@@ -30,11 +30,11 @@ contains
character(LEN=12) :: b = "123456789012"
! These are Dominique's
forall (i = 3:10) a(:)(i:i+2) = a(:)(i-2:i)
- IF (a(1) .ne. "121234567890") CALL abort ()
+ IF (a(1) .ne. "121234567890") STOP 4
forall (i = 3:10) a(2)(i:i+2) = a(1)(i-2:i)
- IF (a(2) .ne. "121212345678") call abort ()
+ IF (a(2) .ne. "121212345678") STOP 5
forall (i = 3:10) b(i:i+2) = b(i-2:i)
- IF (b .ne. "121234567890") CALL abort ()
+ IF (b .ne. "121234567890") STOP 6
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/forall_13.f90 b/gcc/testsuite/gfortran.dg/forall_13.f90
index c7819f10183..2d9aee97c07 100644
--- a/gcc/testsuite/gfortran.dg/forall_13.f90
+++ b/gcc/testsuite/gfortran.dg/forall_13.f90
@@ -10,8 +10,8 @@
!
integer :: p(4) = (/2,4,1,3/)
forall (i = 1:4) p(p(i)) = i ! This was the original
- if (any (p .ne. (/3,1,4,2/))) call abort ()
+ if (any (p .ne. (/3,1,4,2/))) STOP 1
forall (i = 1:4) p(5 - p(i)) = p(5 - i) ! This is a more complicated version
- if (any (p .ne. (/1,2,3,4/))) call abort ()
+ if (any (p .ne. (/1,2,3,4/))) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/forall_15.f90 b/gcc/testsuite/gfortran.dg/forall_15.f90
index d832783eede..6de04479bf9 100644
--- a/gcc/testsuite/gfortran.dg/forall_15.f90
+++ b/gcc/testsuite/gfortran.dg/forall_15.f90
@@ -15,11 +15,11 @@ program test
forall(iTime=1:2)
timeSteps(iTime)=ratio**(dble(iTime)-0.5d0)-ratio**(dble(iTime)-1.5d0)
end forall
- if (any(abs(timesteps - control) > 1d-10)) call abort
+ if (any(abs(timesteps - control) > 1d-10)) STOP 1
! Make sure we still do the front-end optimization after a forall
a = cos(ratio)*cos(ratio) + sin(ratio)*sin(ratio)
- if (abs(a-1.d0) > 1d-10) call abort
+ if (abs(a-1.d0) > 1d-10) STOP 2
end program test
! { dg-final { scan-tree-dump-times "__builtin_cos" 1 "original" } }
! { dg-final { scan-tree-dump-times "__builtin_sin" 1 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/forall_4.f90 b/gcc/testsuite/gfortran.dg/forall_4.f90
index 0b0d7316507..58e5885a895 100644
--- a/gcc/testsuite/gfortran.dg/forall_4.f90
+++ b/gcc/testsuite/gfortran.dg/forall_4.f90
@@ -25,34 +25,34 @@ end module foo
! Check that non-mask case is still OK and the fix for PR28119
a = 0
- forall (i=1:n) a(i) = i ; if (any (a .ne. (/1,2,3,4/))) call abort ()
+ forall (i=1:n) a(i) = i ; if (any (a .ne. (/1,2,3,4/))) STOP 1
! Now a mask using a function with an explicit interface
! via use association.
a = 0
forall (i=1:n, foot (i)) a(i) = i
- if (any (a .ne. (/0,2,3,0/))) call abort ()
+ if (any (a .ne. (/0,2,3,0/))) STOP 2
! Now an array variable mask
a = 0
forall (i=1:n, .not. s(i)) a(i) = i
- if (any (a .ne. (/1,0,0,4/))) call abort ()
+ if (any (a .ne. (/1,0,0,4/))) STOP 3
! This was the PR - an internal function mask
a = 0
forall (i=1:n, t (i)) a(i) = i
- if (any (a .ne. (/0,2,0,4/))) call abort ()
+ if (any (a .ne. (/0,2,0,4/))) STOP 4
! Check that an expression is OK - this also gave a syntax
! error
a = 0
forall (i=1:n, mod (i, 2) == 0) a(i) = i
- if (any (a .ne. (/0,2,0,4/))) call abort ()
+ if (any (a .ne. (/0,2,0,4/))) STOP 5
! And that an expression that used to work is OK
a = 0
forall (i=1:n, s (i) .or. t(i)) a(i) = w (i)
- if (any (a .ne. (/0,3,2,1/))) call abort ()
+ if (any (a .ne. (/0,3,2,1/))) STOP 6
contains
pure logical function t(i)
diff --git a/gcc/testsuite/gfortran.dg/forall_5.f90 b/gcc/testsuite/gfortran.dg/forall_5.f90
index 55491f5bd45..244917277de 100644
--- a/gcc/testsuite/gfortran.dg/forall_5.f90
+++ b/gcc/testsuite/gfortran.dg/forall_5.f90
@@ -19,14 +19,14 @@ end module foo
a = 0
forall (i=1:n, foot (i)) a(i) = i ! { dg-error "impure" }
- if (any (a .ne. (/0,2,3,0/))) call abort ()
+ if (any (a .ne. (/0,2,3,0/))) STOP 1
forall (i=1:n, s (i) .or. t(i)) a(i) = i ! { dg-error "impure|LOGICAL" }
- if (any (a .ne. (/0,3,2,1/))) call abort ()
+ if (any (a .ne. (/0,3,2,1/))) STOP 2
a = 0
forall (i=1:n, mod (i, 2) == 0) a(i) = w (i) ! { dg-error "impure" }
- if (any (a .ne. (/0,2,0,4/))) call abort ()
+ if (any (a .ne. (/0,2,0,4/))) STOP 3
contains
logical function t(i)
diff --git a/gcc/testsuite/gfortran.dg/forall_6.f90 b/gcc/testsuite/gfortran.dg/forall_6.f90
index 158c549cce1..206a7df67bd 100644
--- a/gcc/testsuite/gfortran.dg/forall_6.f90
+++ b/gcc/testsuite/gfortran.dg/forall_6.f90
@@ -14,5 +14,5 @@
end forall
! print *, l1
! print '(4i2)', it
- if (any (it .ne. reshape ((/1, 0, 0, 4/), (/2, 2/)))) call abort ()
+ if (any (it .ne. reshape ((/1, 0, 0, 4/), (/2, 2/)))) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/forall_7.f90 b/gcc/testsuite/gfortran.dg/forall_7.f90
index bea437f3bf5..b707246f06b 100644
--- a/gcc/testsuite/gfortran.dg/forall_7.f90
+++ b/gcc/testsuite/gfortran.dg/forall_7.f90
@@ -12,5 +12,5 @@
end forall
tot = sum(a(:,:))
! print *, tot
- if (tot .ne. 200) call abort ()
+ if (tot .ne. 200) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/fraction.f90 b/gcc/testsuite/gfortran.dg/fraction.f90
index 7a981118e0a..89aa7a15ca2 100644
--- a/gcc/testsuite/gfortran.dg/fraction.f90
+++ b/gcc/testsuite/gfortran.dg/fraction.f90
@@ -7,9 +7,9 @@ program test_frac
real :: y
y=fraction (-2.0)
- if (fraction (-2.0) /= -0.5) call abort ()
- if (fraction (-0.0) /= 0.0) call abort ()
- if (sign(1.0, fraction(-0.0)) /= -1.0) call abort ()
- if (fraction (-2.0_8) /= -0.5) call abort ()
+ if (fraction (-2.0) /= -0.5) STOP 1
+ if (fraction (-0.0) /= 0.0) STOP 2
+ if (sign(1.0, fraction(-0.0)) /= -1.0) STOP 3
+ if (fraction (-2.0_8) /= -0.5) STOP 4
end program test_frac
diff --git a/gcc/testsuite/gfortran.dg/fseek.f90 b/gcc/testsuite/gfortran.dg/fseek.f90
index 9e3c7195a3a..bd8debc5999 100644
--- a/gcc/testsuite/gfortran.dg/fseek.f90
+++ b/gcc/testsuite/gfortran.dg/fseek.f90
@@ -10,43 +10,43 @@ PROGRAM test_fseek
write(911,"()")
newline_length = ftell(911)
close (911)
- if (newline_length < 1 .or. newline_length > 2) call abort()
+ if (newline_length < 1 .or. newline_length > 2) STOP 1
open(fd, status="scratch")
! expected position: one leading blank + 10 + newline
WRITE(fd, *) "1234567890"
- IF (FTELL(fd) /= 11 + newline_length) CALL abort()
+ IF (FTELL(fd) /= 11 + newline_length) STOP 2
! move backward from current position
CALL FSEEK(fd, -11 - newline_length, SEEK_CUR, ierr)
- IF (ierr /= 0 .OR. FTELL(fd) /= 0) CALL abort()
+ IF (ierr /= 0 .OR. FTELL(fd) /= 0) STOP 3
! move to negative position (error)
CALL FSEEK(fd, -1, SEEK_SET, ierr)
- IF (ierr == 0 .OR. FTELL(fd) /= 0) CALL abort()
+ IF (ierr == 0 .OR. FTELL(fd) /= 0) STOP 4
! move forward from end (11 + 10 + newline)
CALL FSEEK(fd, 10, SEEK_END, ierr)
- IF (ierr /= 0 .OR. FTELL(fd) /= 21 + newline_length) CALL abort()
+ IF (ierr /= 0 .OR. FTELL(fd) /= 21 + newline_length) STOP 5
! set position (0)
CALL FSEEK(fd, 0, SEEK_SET, ierr)
- IF (ierr /= 0 .OR. FTELL(fd) /= 0) CALL abort()
+ IF (ierr /= 0 .OR. FTELL(fd) /= 0) STOP 6
! move forward from current position
CALL FSEEK(fd, 5, SEEK_CUR, ierr)
- IF (ierr /= 0 .OR. FTELL(fd) /= 5) CALL abort()
+ IF (ierr /= 0 .OR. FTELL(fd) /= 5) STOP 7
CALL FSEEK(fd, HUGE(0_1), SEEK_SET, ierr)
- IF (ierr /= 0 .OR. FTELL(fd) /= HUGE(0_1)) CALL abort()
+ IF (ierr /= 0 .OR. FTELL(fd) /= HUGE(0_1)) STOP 8
CALL FSEEK(fd, HUGE(0_2), SEEK_SET, ierr)
- IF (ierr /= 0 .OR. FTELL(fd) /= HUGE(0_2)) CALL abort()
+ IF (ierr /= 0 .OR. FTELL(fd) /= HUGE(0_2)) STOP 9
CALL FSEEK(fd, HUGE(0_4), SEEK_SET, ierr)
- IF (ierr /= 0 .OR. FTELL(fd) /= HUGE(0_4)) CALL abort()
+ IF (ierr /= 0 .OR. FTELL(fd) /= HUGE(0_4)) STOP 10
CALL FSEEK(fd, -HUGE(0_4), SEEK_CUR, ierr)
- IF (ierr /= 0 .OR. FTELL(fd) /= 0) CALL abort()
+ IF (ierr /= 0 .OR. FTELL(fd) /= 0) STOP 11
END PROGRAM
diff --git a/gcc/testsuite/gfortran.dg/ftell_1.f90 b/gcc/testsuite/gfortran.dg/ftell_1.f90
index 4f617acb0f4..3e622def927 100644
--- a/gcc/testsuite/gfortran.dg/ftell_1.f90
+++ b/gcc/testsuite/gfortran.dg/ftell_1.f90
@@ -3,14 +3,14 @@
open (10, status="scratch")
call ftell (10, o)
- if (o /= 0) call abort
+ if (o /= 0) STOP 1
write (10,"(A)") "1234567"
call ftell (10, o)
- if (o /= 8 .and. o /= 9) call abort
+ if (o /= 8 .and. o /= 9) STOP 2
write (10,"(A)") "1234567"
call ftell (10, o2)
- if (o2 /= 2 * o) call abort
+ if (o2 /= 2 * o) STOP 3
close (10)
call ftell (10, o)
- if (o /= -1) call abort
+ if (o /= -1) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/ftell_2.f90 b/gcc/testsuite/gfortran.dg/ftell_2.f90
index ec7c96c3da4..ea9da060978 100644
--- a/gcc/testsuite/gfortran.dg/ftell_2.f90
+++ b/gcc/testsuite/gfortran.dg/ftell_2.f90
@@ -1,12 +1,12 @@
! { dg-do run }
integer(kind=8) o
open (10, status="scratch")
- if (ftell(10) /= 0) call abort
+ if (ftell(10) /= 0) STOP 1
write (10,"(A)") "1234567"
- if (ftell(10) /= 8 .and. ftell(10) /= 9) call abort
+ if (ftell(10) /= 8 .and. ftell(10) /= 9) STOP 2
o = ftell(10)
write (10,"(A)") "1234567"
- if (ftell(10) /= 2 * o) call abort
+ if (ftell(10) /= 2 * o) STOP 3
close (10)
- if (ftell(10) /= -1) call abort
+ if (ftell(10) /= -1) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/ftell_3.f90 b/gcc/testsuite/gfortran.dg/ftell_3.f90
index 3e4681b58f5..f3c036b18b3 100644
--- a/gcc/testsuite/gfortran.dg/ftell_3.f90
+++ b/gcc/testsuite/gfortran.dg/ftell_3.f90
@@ -16,11 +16,11 @@ program ftell_3
call ftell(10, i)
! Expected: On '\n' systems: 7, on \r\n systems: 8
if(i /= 7 .and. i /= 8) then
- call abort
+ STOP 1
end if
read(10,'(a)') buffer
if (trim(buffer) /= "789") then
- call abort()
+ STOP 1
end if
call ftell(10,j)
close(10)
@@ -28,15 +28,15 @@ program ftell_3
! Expected: On '\n' systems: 11, on \r\n systems: 13
if (i == 7) then
read(10, pos=7) ch
- if (ch /= char(10)) call abort
- if (j /= 11) call abort
+ if (ch /= char(10)) STOP 2
+ if (j /= 11) STOP 3
end if
if (i == 8) then
read(10, pos=7) ch
- if (ch /= char(13)) call abort
+ if (ch /= char(13)) STOP 4
read(10) ch
- if (ch /= char(10)) call abort
- if (j /= 13) call abort
+ if (ch /= char(10)) STOP 5
+ if (j /= 13) STOP 6
end if
close(10, status="delete")
end program ftell_3
diff --git a/gcc/testsuite/gfortran.dg/func_assign_2.f90 b/gcc/testsuite/gfortran.dg/func_assign_2.f90
index e308375ef9d..a56b86b99c0 100644
--- a/gcc/testsuite/gfortran.dg/func_assign_2.f90
+++ b/gcc/testsuite/gfortran.dg/func_assign_2.f90
@@ -10,16 +10,16 @@
integer :: a(2,2)
a = -42
a(1,:) = func()
-if (any (reshape (a, [4]) /= [1, -42, 2, -42])) call abort
+if (any (reshape (a, [4]) /= [1, -42, 2, -42])) STOP 1
a = -42
a(2,:) = func()
-if (any (reshape (a, [4]) /= [-42, 1, -42, 2])) call abort
+if (any (reshape (a, [4]) /= [-42, 1, -42, 2])) STOP 2
a = -42
a(:,1) = func()
-if (any (reshape (a, [4]) /= [1, 2, -42, -42])) call abort
+if (any (reshape (a, [4]) /= [1, 2, -42, -42])) STOP 3
a = -42
a(:,2) = func()
-if (any (reshape (a, [4]) /= [-42, -42, 1, 2])) call abort
+if (any (reshape (a, [4]) /= [-42, -42, 1, 2])) STOP 4
contains
function func()
integer :: func(2)
diff --git a/gcc/testsuite/gfortran.dg/func_assign_3.f90 b/gcc/testsuite/gfortran.dg/func_assign_3.f90
index db81adf8ec0..1d4ff15f07b 100644
--- a/gcc/testsuite/gfortran.dg/func_assign_3.f90
+++ b/gcc/testsuite/gfortran.dg/func_assign_3.f90
@@ -27,5 +27,5 @@ program bugTest
double precision, dimension(2,2):: testCatch
type( boundTest ):: testObj
testCatch = testObj%test(2,2) ! This would cause an ICE
- if (any (testCatch .ne. dble (reshape ([(i, i = 1, 4)],[2,2])))) call abort
+ if (any (testCatch .ne. dble (reshape ([(i, i = 1, 4)],[2,2])))) STOP 1
end program bugTest
diff --git a/gcc/testsuite/gfortran.dg/func_derived_1.f90 b/gcc/testsuite/gfortran.dg/func_derived_1.f90
index c8820aac3bb..35c6ec9daed 100644
--- a/gcc/testsuite/gfortran.dg/func_derived_1.f90
+++ b/gcc/testsuite/gfortran.dg/func_derived_1.f90
@@ -21,11 +21,11 @@ do i=1,25
arr = reshape (vect, shape(arr))
r = f(i,real(i),"HALLO",arr)
- if (r%i .ne. i) call abort()
- if (r%x .ne. real(i)) call abort()
- if (r%c .ne. "HALLO") call abort()
+ if (r%i .ne. i) STOP 1
+ if (r%x .ne. real(i)) STOP 2
+ if (r%c .ne. "HALLO") STOP 3
vect2 = reshape (r%arr, shape(vect2))
- if (any(vect2.ne.vect)) call abort()
+ if (any(vect2.ne.vect)) STOP 4
end do
contains
diff --git a/gcc/testsuite/gfortran.dg/func_derived_2.f90 b/gcc/testsuite/gfortran.dg/func_derived_2.f90
index d79f120b054..2ac9dea869c 100644
--- a/gcc/testsuite/gfortran.dg/func_derived_2.f90
+++ b/gcc/testsuite/gfortran.dg/func_derived_2.f90
@@ -32,9 +32,9 @@ program func_derived_2
type (mytype), pointer :: y
x = mytype (42)
y => get (x)
- if (y%i.ne.42) call abort ()
+ if (y%i.ne.42) STOP 1
x = mytype (112)
y => get2 (x)
- if (y%i.ne.112) call abort ()
+ if (y%i.ne.112) STOP 2
end program func_derived_2
diff --git a/gcc/testsuite/gfortran.dg/func_derived_3.f90 b/gcc/testsuite/gfortran.dg/func_derived_3.f90
index a271fe98f6e..7a5abee9acb 100644
--- a/gcc/testsuite/gfortran.dg/func_derived_3.f90
+++ b/gcc/testsuite/gfortran.dg/func_derived_3.f90
@@ -114,12 +114,12 @@ end module func_derived_3a
rewind (10)
read (10, '(80a)') line
- if (trim (line).ne."derived = 2") call abort ()
+ if (trim (line).ne."derived = 2") STOP 1
read (10, '(80a)') line
- if (trim (line).ne."simple = 1") call abort ()
+ if (trim (line).ne."simple = 1") STOP 2
read (10, '(80a)') line
- if (trim (line).ne."simple = 1") call abort ()
+ if (trim (line).ne."simple = 1") STOP 3
read (10, '(80a)') line
- if (trim (line).ne."simple = 1") call abort ()
+ if (trim (line).ne."simple = 1") STOP 4
close (10)
end program
diff --git a/gcc/testsuite/gfortran.dg/func_result_1.f90 b/gcc/testsuite/gfortran.dg/func_result_1.f90
index 51f5cd4ca9e..2415baec18d 100644
--- a/gcc/testsuite/gfortran.dg/func_result_1.f90
+++ b/gcc/testsuite/gfortran.dg/func_result_1.f90
@@ -2,7 +2,7 @@
! From PR 19673 : We didn't dereference the result from POINTER
! functions with a RESULT clause
program ret_ptr
- if (foo(99) /= bar(99)) call abort ()
+ if (foo(99) /= bar(99)) STOP 1
contains
function foo (arg) result(ptr)
integer :: arg
diff --git a/gcc/testsuite/gfortran.dg/func_result_2.f90 b/gcc/testsuite/gfortran.dg/func_result_2.f90
index 6b91653ed9d..8d25e87caf8 100644
--- a/gcc/testsuite/gfortran.dg/func_result_2.f90
+++ b/gcc/testsuite/gfortran.dg/func_result_2.f90
@@ -1,7 +1,7 @@
! { dg-do run }
! Character functions with a result clause were broken
program testch
- if (ch().ne."hello ") call abort()
+ if (ch().ne."hello ") STOP 1
contains
function ch () result(str)
character(len = 10) :: str
diff --git a/gcc/testsuite/gfortran.dg/func_result_6.f90 b/gcc/testsuite/gfortran.dg/func_result_6.f90
index 48b34f3b709..7301aef6f51 100644
--- a/gcc/testsuite/gfortran.dg/func_result_6.f90
+++ b/gcc/testsuite/gfortran.dg/func_result_6.f90
@@ -35,17 +35,17 @@ ptr1 => bar1(2)
ptr2 => bar2(2)
bar1 = x%gen(1)
-if (ptr1 /= 11) call abort()
+if (ptr1 /= 11) STOP 1
bar1 = x%foo(2)
-if (ptr1 /= 12) call abort()
+if (ptr1 /= 12) STOP 2
bar2 = x%gen(3)
-if (ptr2 /= 13) call abort()
+if (ptr2 /= 13) STOP 3
bar2 = x%foo(4)
-if (ptr2 /= 14) call abort()
+if (ptr2 /= 14) STOP 4
bar2(:) = x%gen(5)
-if (ptr2 /= 15) call abort()
+if (ptr2 /= 15) STOP 5
bar2(:) = x%foo(6)
-if (ptr2 /= 16) call abort()
+if (ptr2 /= 16) STOP 6
call test()
end
@@ -59,9 +59,9 @@ integer, target :: bar(2)
integer, pointer :: ptr
bar = [1,2]
ptr => bar(2)
-if (ptr /= 2) call abort()
+if (ptr /= 2) STOP 7
bar = gen()
-if (ptr /= 77) call abort()
+if (ptr /= 77) STOP 8
contains
function foo()
integer, allocatable :: foo(:)
diff --git a/gcc/testsuite/gfortran.dg/function_charlen_2.f90 b/gcc/testsuite/gfortran.dg/function_charlen_2.f90
index 5713c307bd9..29b925bcc6f 100644
--- a/gcc/testsuite/gfortran.dg/function_charlen_2.f90
+++ b/gcc/testsuite/gfortran.dg/function_charlen_2.f90
@@ -15,11 +15,11 @@ program test
character(len = 10) :: c
character(4) :: cl
c = f ()
- if (g () /= "2") call abort
+ if (g () /= "2") STOP 1
contains
character(len = l) function f ()
use m
- if (len (f) /= 2) call abort
+ if (len (f) /= 2) STOP 2
f = "a"
end function f
character(len = len (cl)) function g ()
diff --git a/gcc/testsuite/gfortran.dg/function_charlen_3.f b/gcc/testsuite/gfortran.dg/function_charlen_3.f
index dd4417abade..9482aa2e79d 100644
--- a/gcc/testsuite/gfortran.dg/function_charlen_3.f
+++ b/gcc/testsuite/gfortran.dg/function_charlen_3.f
@@ -14,5 +14,5 @@ C had a label.
END FUNCTION t
character t
- if (t() .ne. "q") call abort ()
+ if (t() .ne. "q") STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/function_kinds_1.f90 b/gcc/testsuite/gfortran.dg/function_kinds_1.f90
index 7d143740c24..ac843a5cac1 100644
--- a/gcc/testsuite/gfortran.dg/function_kinds_1.f90
+++ b/gcc/testsuite/gfortran.dg/function_kinds_1.f90
@@ -44,10 +44,10 @@ end module mymodule
use mymodule
type(t), external :: func
type(t) :: z
- if (kind (y ()) .ne. 4) call abort ()
- if (kind (declared_dp_before_defined ()) .ne. 8) call abort ()
- if (int (declared_dp_before_defined ()) .ne. 4) call abort ()
- if (int (another_dp_before_defined ()) .ne. 4) call abort ()
+ if (kind (y ()) .ne. 4) STOP 1
+ if (kind (declared_dp_before_defined ()) .ne. 8) STOP 2
+ if (int (declared_dp_before_defined ()) .ne. 4) STOP 3
+ if (int (another_dp_before_defined ()) .ne. 4) STOP 4
z = func()
- if (z%i .ne. 5) call abort ()
+ if (z%i .ne. 5) STOP 5
end
diff --git a/gcc/testsuite/gfortran.dg/function_kinds_4.f90 b/gcc/testsuite/gfortran.dg/function_kinds_4.f90
index d0e48f6b4d2..6d800ee6fdc 100644
--- a/gcc/testsuite/gfortran.dg/function_kinds_4.f90
+++ b/gcc/testsuite/gfortran.dg/function_kinds_4.f90
@@ -19,7 +19,7 @@ integer(i1) function three()
use m1, only: i2
use m2 ! This provides the function kind
three = i1
- if(three /= kind(three)) call abort()
+ if(three /= kind(three)) STOP 1
end function three
! At one stage during the development of the patch, this started failing
@@ -39,17 +39,17 @@ implicit none
real (kind(0d0)) foo
i = one()
i = two()
- if(three() /= 8) call abort()
- if (int(foo()) /= 8) call abort ()
+ if(three() /= 8) STOP 2
+ if (int(foo()) /= 8) STOP 3
contains
integer(i1) function one() ! Host associated kind
- if (kind(one) /= 4) call abort()
+ if (kind(one) /= 4) STOP 4
one = 1
end function one
integer(i1) function two() ! Use associated kind
use m1, only: i2
use m2
- if (kind(two) /= 8) call abort()
+ if (kind(two) /= 8) STOP 5
two = 1
end function two
end program main
diff --git a/gcc/testsuite/gfortran.dg/function_optimize_10.f90 b/gcc/testsuite/gfortran.dg/function_optimize_10.f90
index 8906934d1c7..6d8a87a1fa3 100644
--- a/gcc/testsuite/gfortran.dg/function_optimize_10.f90
+++ b/gcc/testsuite/gfortran.dg/function_optimize_10.f90
@@ -18,7 +18,7 @@ program main
else if ((my_ichar(charq).ge.97 .and. my_ichar(charq).le.103)) then
test2_OK = .true.
end if
- if ((.not. test1_ok) .or. (.not. test2_ok)) call abort
+ if ((.not. test1_ok) .or. (.not. test2_ok)) STOP 1
test1_ok = .true.
test2_ok = .true.
@@ -31,7 +31,7 @@ program main
else if ((my_ichar(charq).ge.97 .and. my_ichar(charq).le.103)) then
test3_ok = .true.
end if
- if ((.not. test1_ok) .or. (.not. test2_ok) .or. (.not. test3_ok)) call abort
+ if ((.not. test1_ok) .or. (.not. test2_ok) .or. (.not. test3_ok)) STOP 2
test1_ok = .true.
test2_ok = .true.
@@ -45,7 +45,7 @@ program main
test3_ok = .true.
end if
- if ((.not. test1_ok) .or. (.not. test2_ok) .or. (.not. test3_ok)) call abort
+ if ((.not. test1_ok) .or. (.not. test2_ok) .or. (.not. test3_ok)) STOP 3
contains
pure function my_ichar(c)
diff --git a/gcc/testsuite/gfortran.dg/function_optimize_11.f90 b/gcc/testsuite/gfortran.dg/function_optimize_11.f90
index 2e4831b4ee0..6df81b71296 100644
--- a/gcc/testsuite/gfortran.dg/function_optimize_11.f90
+++ b/gcc/testsuite/gfortran.dg/function_optimize_11.f90
@@ -13,5 +13,5 @@ program test
h1 = [(cos(2*pi*mod(i*k,N)/N),k=0,N/2), &
& (sin(2*pi*mod(i*k,N)/N),k=1,N/2-1)]
h2 = (/ 1._dp, 0._dp, -1._dp, 1._dp /)
- if (any(abs(h1 - h2) > eps)) call abort
+ if (any(abs(h1 - h2) > eps)) STOP 1
end program test
diff --git a/gcc/testsuite/gfortran.dg/function_optimize_12.f90 b/gcc/testsuite/gfortran.dg/function_optimize_12.f90
index 3c49add5ae7..542bba0820e 100644
--- a/gcc/testsuite/gfortran.dg/function_optimize_12.f90
+++ b/gcc/testsuite/gfortran.dg/function_optimize_12.f90
@@ -8,5 +8,5 @@ program main
n = 3
goto 100
100 x = dble(n) + dble(n)
- if (x /= 6.d0) call abort
+ if (x /= 6.d0) STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/function_optimize_4.f90 b/gcc/testsuite/gfortran.dg/function_optimize_4.f90
index 20fc46d3078..7114c2faa47 100644
--- a/gcc/testsuite/gfortran.dg/function_optimize_4.f90
+++ b/gcc/testsuite/gfortran.dg/function_optimize_4.f90
@@ -16,5 +16,5 @@ ENDIF
END FUNCTION
INTEGER :: s1
-IF (S1(1,2,1).NE.0) CALL ABORT()
+IF (S1(1,2,1).NE.0) STOP 1
END
diff --git a/gcc/testsuite/gfortran.dg/function_optimize_8.f90 b/gcc/testsuite/gfortran.dg/function_optimize_8.f90
index a6fe1036d13..550aeecb92a 100644
--- a/gcc/testsuite/gfortran.dg/function_optimize_8.f90
+++ b/gcc/testsuite/gfortran.dg/function_optimize_8.f90
@@ -26,9 +26,9 @@ program main
character(len=20) :: line
n = 3
write (unit=line,fmt='(3I2)') myfunc(n) + myfunc(n)
- if (line /= ' 61218') call abort
+ if (line /= ' 61218') STOP 1
write (unit=line,fmt='(A)') mychar(2) // mychar(2)
- if (line /= '2323') call abort
+ if (line /= '2323') STOP 2
end program main
! { dg-final { scan-tree-dump-times "myfunc" 2 "original" } }
! { dg-final { scan-tree-dump-times "mychar" 2 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/g77/13037.f b/gcc/testsuite/gfortran.dg/g77/13037.f
index 01c2bab19b3..b9abc6fcd68 100644
--- a/gcc/testsuite/gfortran.dg/g77/13037.f
+++ b/gcc/testsuite/gfortran.dg/g77/13037.f
@@ -52,7 +52,7 @@ c test driver
call bug1(expnt)
if ((zeta(1).ne.1) .or. (zeta(2).ne.2) .or. (zeta(3).ne.3)) then
- call abort
+ STOP 1
endif
end
diff --git a/gcc/testsuite/gfortran.dg/g77/1832.f b/gcc/testsuite/gfortran.dg/g77/1832.f
index 6b7617d62e0..e40c87878bd 100644
--- a/gcc/testsuite/gfortran.dg/g77/1832.f
+++ b/gcc/testsuite/gfortran.dg/g77/1832.f
@@ -3,7 +3,7 @@ c { dg-do run }
!
character*5 string
write(string, *) "a "
- if (string .ne. ' a') call abort
+ if (string .ne. ' a') STOP 1
C-- The leading space is normal for list-directed output
end
diff --git a/gcc/testsuite/gfortran.dg/g77/19981119-0.f b/gcc/testsuite/gfortran.dg/g77/19981119-0.f
index 17c6e06405c..8ca048b30ee 100644
--- a/gcc/testsuite/gfortran.dg/g77/19981119-0.f
+++ b/gcc/testsuite/gfortran.dg/g77/19981119-0.f
@@ -33,7 +33,7 @@ C vvvv CRASH HERE vvvvv
data a/441*1d0/
N=10
call sub(N,a)
- if (a(-N,N) .ne. 0d0) call abort
+ if (a(-N,N) .ne. 0d0) STOP 1
end
*
* C --- PROGRAM END -------
diff --git a/gcc/testsuite/gfortran.dg/g77/19990313-0.f b/gcc/testsuite/gfortran.dg/g77/19990313-0.f
index fd74351d24d..8b6fc8d14fb 100644
--- a/gcc/testsuite/gfortran.dg/g77/19990313-0.f
+++ b/gcc/testsuite/gfortran.dg/g77/19990313-0.f
@@ -16,7 +16,7 @@ c { dg-do run }
data r/4e10/
foo = 4e10
bar = r
- if (foo .ne. bar) call abort
+ if (foo .ne. bar) STOP 1
end
* $ g77 x.f && ./a.out
* 1345294336
diff --git a/gcc/testsuite/gfortran.dg/g77/19990313-1.f b/gcc/testsuite/gfortran.dg/g77/19990313-1.f
index a73ec4ea7dc..f018e260818 100644
--- a/gcc/testsuite/gfortran.dg/g77/19990313-1.f
+++ b/gcc/testsuite/gfortran.dg/g77/19990313-1.f
@@ -4,5 +4,5 @@ c { dg-do run }
data r/4d10/
foo = 4d10
bar = r
- if (foo .ne. bar) call abort
+ if (foo .ne. bar) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/g77/19990313-2.f b/gcc/testsuite/gfortran.dg/g77/19990313-2.f
index 51f16685e21..3b81af9144e 100644
--- a/gcc/testsuite/gfortran.dg/g77/19990313-2.f
+++ b/gcc/testsuite/gfortran.dg/g77/19990313-2.f
@@ -4,5 +4,5 @@ c { dg-do run }
data c/(4e10,0)/
foo = 4e10
bar = c
- if (foo .ne. bar) call abort
+ if (foo .ne. bar) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/g77/19990313-3.f b/gcc/testsuite/gfortran.dg/g77/19990313-3.f
index 782f39568b1..32ad83be2b7 100644
--- a/gcc/testsuite/gfortran.dg/g77/19990313-3.f
+++ b/gcc/testsuite/gfortran.dg/g77/19990313-3.f
@@ -4,5 +4,5 @@ c { dg-do run }
data c/(4d10,0)/
foo = 4d10
bar = c
- if (foo .ne. bar) call abort
+ if (foo .ne. bar) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/g77/19990419-1.f b/gcc/testsuite/gfortran.dg/g77/19990419-1.f
index e6a4a9bc049..acd5160a014 100644
--- a/gcc/testsuite/gfortran.dg/g77/19990419-1.f
+++ b/gcc/testsuite/gfortran.dg/g77/19990419-1.f
@@ -5,10 +5,10 @@ c { dg-do run }
j = 0
do while (i() .eq. 1)
j = j + 1
- if (j .gt. 5) call abort
+ if (j .gt. 5) STOP 1
end do
- if (j .ne. 4) call abort
- if (ival .ne. 5) call abort
+ if (j .ne. 4) STOP 2
+ if (ival .ne. 5) STOP 3
end
function i()
common /x/ ival
diff --git a/gcc/testsuite/gfortran.dg/g77/19990826-0.f b/gcc/testsuite/gfortran.dg/g77/19990826-0.f
index bc471f0bf1a..0bcbd0ac861 100644
--- a/gcc/testsuite/gfortran.dg/g77/19990826-0.f
+++ b/gcc/testsuite/gfortran.dg/g77/19990826-0.f
@@ -6,7 +6,7 @@ c { dg-do run }
* Date: Sun, 06 Jun 1999 16:39:35 -0400
* X-UIDL: 6aa9208d7bda8b6182a095dfd37016b7
- IF (DNINT(0.0D0) .NE. 0.) CALL ABORT
+ IF (DNINT(0.0D0) .NE. 0.) STOP 1
STOP
END
diff --git a/gcc/testsuite/gfortran.dg/g77/19990826-2.f b/gcc/testsuite/gfortran.dg/g77/19990826-2.f
index 8870c2588d4..90febafe935 100644
--- a/gcc/testsuite/gfortran.dg/g77/19990826-2.f
+++ b/gcc/testsuite/gfortran.dg/g77/19990826-2.f
@@ -31,6 +31,6 @@ c
a = f1(one)
if ( abs(a-1.0) .gt. 1.0e-5 ) then
write(6,*) 'A should be 1.0 but it is',a
- call abort()
+ STOP 1
end if
end
diff --git a/gcc/testsuite/gfortran.dg/g77/20000503-1.f b/gcc/testsuite/gfortran.dg/g77/20000503-1.f
index 2a48a353334..d18e953e77e 100644
--- a/gcc/testsuite/gfortran.dg/g77/20000503-1.f
+++ b/gcc/testsuite/gfortran.dg/g77/20000503-1.f
@@ -10,7 +10,7 @@ c { dg-do run }
I = SLASQX( N )
IF ( I .NE. 2*N ) THEN
WRITE(6,*) 'I = ', I, ' but should be ', 2*N
- CALL ABORT()
+ STOP 1
END IF
END
diff --git a/gcc/testsuite/gfortran.dg/g77/20001111.f b/gcc/testsuite/gfortran.dg/g77/20001111.f
index 366956a66e3..060c6145417 100644
--- a/gcc/testsuite/gfortran.dg/g77/20001111.f
+++ b/gcc/testsuite/gfortran.dg/g77/20001111.f
@@ -7,7 +7,7 @@ c { dg-do run }
IF(BK .GT. TOLD) GOTO 10
ENDDO
WRITE(*,*)'Error: BK = ', BK
- CALL ABORT
+ STOP 1
10 CONTINUE
WRITE(*,*)'No Error: BK = ', BK
END
diff --git a/gcc/testsuite/gfortran.dg/g77/20010116.f b/gcc/testsuite/gfortran.dg/g77/20010116.f
index ca7375d0f68..2d32fd0fef6 100644
--- a/gcc/testsuite/gfortran.dg/g77/20010116.f
+++ b/gcc/testsuite/gfortran.dg/g77/20010116.f
@@ -36,6 +36,6 @@ c Should not reach here, but need a statement
PRINT*
90 IF ( I .NE. 4 ) THEN
PRINT*,'I =', I, ' but should be 4'
- CALL ABORT()
+ STOP 1
END IF
END
diff --git a/gcc/testsuite/gfortran.dg/g77/20010216-1.f b/gcc/testsuite/gfortran.dg/g77/20010216-1.f
index 7874da2ad02..d3c2b9c65b4 100644
--- a/gcc/testsuite/gfortran.dg/g77/20010216-1.f
+++ b/gcc/testsuite/gfortran.dg/g77/20010216-1.f
@@ -46,7 +46,7 @@ C and its expected return value.
result = foo(a(i), b(i))
if (abs(result - x(i)) > tolerance) then
print *, i, a(i), b(i), x(i), result
- call abort
+ STOP 1
end if
end do
end
diff --git a/gcc/testsuite/gfortran.dg/g77/20010430.f b/gcc/testsuite/gfortran.dg/g77/20010430.f
index c6af4968d99..d2ad1447e35 100644
--- a/gcc/testsuite/gfortran.dg/g77/20010430.f
+++ b/gcc/testsuite/gfortran.dg/g77/20010430.f
@@ -16,6 +16,6 @@ c { dg-do run }
ENDDO
ENDDO
DO I = 1, 4
- IF (DAT(1,I) .GT. DAT(1,I+1)) CALL ABORT
+ IF (DAT(1,I) .GT. DAT(1,I+1)) STOP 1
ENDDO
END
diff --git a/gcc/testsuite/gfortran.dg/g77/20010610.f b/gcc/testsuite/gfortran.dg/g77/20010610.f
index 5adbcd67278..8d05f0eb8b6 100644
--- a/gcc/testsuite/gfortran.dg/g77/20010610.f
+++ b/gcc/testsuite/gfortran.dg/g77/20010610.f
@@ -1,5 +1,5 @@
c { dg-do run }
DO I = 0, 255
- IF (ICHAR(CHAR(I)) .NE. I) CALL ABORT
+ IF (ICHAR(CHAR(I)) .NE. I) STOP 1
ENDDO
END
diff --git a/gcc/testsuite/gfortran.dg/g77/6177.f b/gcc/testsuite/gfortran.dg/g77/6177.f
index d708652a6b1..8f0cf6edc07 100644
--- a/gcc/testsuite/gfortran.dg/g77/6177.f
+++ b/gcc/testsuite/gfortran.dg/g77/6177.f
@@ -11,5 +11,5 @@ C
w(1) = x
x = conjg(x)
w(1) = conjg(w(1))
- if (abs(x-w(1)) .gt. 1.0e-5) call abort
+ if (abs(x-w(1)) .gt. 1.0e-5) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/g77/7388.f b/gcc/testsuite/gfortran.dg/g77/7388.f
index 0b8374646b0..66c0640071e 100644
--- a/gcc/testsuite/gfortran.dg/g77/7388.f
+++ b/gcc/testsuite/gfortran.dg/g77/7388.f
@@ -8,5 +8,5 @@ C { dg-options "-fbounds-check" }
m2 = 7
buff(i) = 'tcase0a'
write(line,*) buff(i)(m1:m2)
- if (line .ne. ' tcase0a') call abort
+ if (line .ne. ' tcase0a') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/g77/947.f b/gcc/testsuite/gfortran.dg/g77/947.f
index 247c1a09e54..80b03aa7202 100644
--- a/gcc/testsuite/gfortran.dg/g77/947.f
+++ b/gcc/testsuite/gfortran.dg/g77/947.f
@@ -9,5 +9,5 @@ c { dg-do run }
IF (A(IM5) .NE. -5. .OR. A(IM1) .NE. -1. .OR.
, A(IZ) .NE. 0. .OR.
, A(IP5) .NE. +5. .OR. A(IP1) .NE. +1. )
- , CALL ABORT
+ , STOP 1
END
diff --git a/gcc/testsuite/gfortran.dg/g77/970625-2.f b/gcc/testsuite/gfortran.dg/g77/970625-2.f
index df9ed3d36db..42f4bc513be 100644
--- a/gcc/testsuite/gfortran.dg/g77/970625-2.f
+++ b/gcc/testsuite/gfortran.dg/g77/970625-2.f
@@ -46,7 +46,7 @@
END IF
END DO
10 FORMAT(I2/I2) = WHILE*REAL*THEN
- IF (FORMAT(I2) .NE. FORMAT(I2+I2)) CALL ABORT
+ IF (FORMAT(I2) .NE. FORMAT(I2+I2)) STOP 1
END ! DO
SUBROUTINE FUNCTION PROGRAM (REAL,INTEGER, LOGICAL)
LOGICAL REAL
diff --git a/gcc/testsuite/gfortran.dg/g77/971102-1.f b/gcc/testsuite/gfortran.dg/g77/971102-1.f
index 6181a177191..cfeb2f16dcb 100644
--- a/gcc/testsuite/gfortran.dg/g77/971102-1.f
+++ b/gcc/testsuite/gfortran.dg/g77/971102-1.f
@@ -7,6 +7,6 @@ c { dg-do run }
do i=3,i
j = j+i
end do
- if (i.ne.7) call abort()
+ if (i.ne.7) STOP 1
print *, i,j
end
diff --git a/gcc/testsuite/gfortran.dg/g77/980628-0.f b/gcc/testsuite/gfortran.dg/g77/980628-0.f
index 9943e3c2135..0d8930d6e55 100644
--- a/gcc/testsuite/gfortran.dg/g77/980628-0.f
+++ b/gcc/testsuite/gfortran.dg/g77/980628-0.f
@@ -43,20 +43,20 @@ c { dg-do run }
double precision d1, d2, d3
integer i1, i2, i3
- if (r1(1) .ne. 1.) call abort
- if (d1 .ne. 10.) call abort
- if (r1(4) .ne. 1.) call abort
- if (r1(5) .ne. 1.) call abort
- if (i1 .ne. 1) call abort
- if (r2(1) .ne. 2.) call abort
- if (d2 .ne. 20.) call abort
- if (r2(4) .ne. 2.) call abort
- if (r2(5) .ne. 2.) call abort
- if (i2 .ne. 2) call abort
- if (r3(1) .ne. 3.) call abort
- if (d3 .ne. 30.) call abort
- if (r3(4) .ne. 3.) call abort
- if (r3(5) .ne. 3.) call abort
- if (i3 .ne. 3) call abort
+ if (r1(1) .ne. 1.) STOP 1
+ if (d1 .ne. 10.) STOP 2
+ if (r1(4) .ne. 1.) STOP 3
+ if (r1(5) .ne. 1.) STOP 4
+ if (i1 .ne. 1) STOP 5
+ if (r2(1) .ne. 2.) STOP 6
+ if (d2 .ne. 20.) STOP 7
+ if (r2(4) .ne. 2.) STOP 8
+ if (r2(5) .ne. 2.) STOP 9
+ if (i2 .ne. 2) STOP 10
+ if (r3(1) .ne. 3.) STOP 11
+ if (d3 .ne. 30.) STOP 12
+ if (r3(4) .ne. 3.) STOP 13
+ if (r3(5) .ne. 3.) STOP 14
+ if (i3 .ne. 3) STOP 15
end
diff --git a/gcc/testsuite/gfortran.dg/g77/980628-1.f b/gcc/testsuite/gfortran.dg/g77/980628-1.f
index 7524a3f8aeb..b298b0a1aa6 100644
--- a/gcc/testsuite/gfortran.dg/g77/980628-1.f
+++ b/gcc/testsuite/gfortran.dg/g77/980628-1.f
@@ -44,20 +44,20 @@ c { dg-do run }
double precision d1, d2, d3
integer i1, i2, i3
- if (r1(1) .ne. 1.) call abort
- if (d1 .ne. 10.) call abort
- if (r1(4) .ne. 1.) call abort
- if (r1(5) .ne. 1.) call abort
- if (i1 .ne. 1) call abort
- if (r2(1) .ne. 2.) call abort
- if (d2 .ne. 20.) call abort
- if (r2(4) .ne. 2.) call abort
- if (r2(5) .ne. 2.) call abort
- if (i2 .ne. 2) call abort
- if (r3(1) .ne. 3.) call abort
- if (d3 .ne. 30.) call abort
- if (r3(4) .ne. 3.) call abort
- if (r3(5) .ne. 3.) call abort
- if (i3 .ne. 3) call abort
+ if (r1(1) .ne. 1.) STOP 1
+ if (d1 .ne. 10.) STOP 2
+ if (r1(4) .ne. 1.) STOP 3
+ if (r1(5) .ne. 1.) STOP 4
+ if (i1 .ne. 1) STOP 5
+ if (r2(1) .ne. 2.) STOP 6
+ if (d2 .ne. 20.) STOP 7
+ if (r2(4) .ne. 2.) STOP 8
+ if (r2(5) .ne. 2.) STOP 9
+ if (i2 .ne. 2) STOP 10
+ if (r3(1) .ne. 3.) STOP 11
+ if (d3 .ne. 30.) STOP 12
+ if (r3(4) .ne. 3.) STOP 13
+ if (r3(5) .ne. 3.) STOP 14
+ if (i3 .ne. 3) STOP 15
end
diff --git a/gcc/testsuite/gfortran.dg/g77/980628-10.f b/gcc/testsuite/gfortran.dg/g77/980628-10.f
index b7429e4c9cb..c787c54b9bc 100644
--- a/gcc/testsuite/gfortran.dg/g77/980628-10.f
+++ b/gcc/testsuite/gfortran.dg/g77/980628-10.f
@@ -42,18 +42,18 @@ c { dg-options "-std=gnu" }
real r1, r2, r3
character c4, c5, c6
- if (c1(1) .ne. '1') call abort
- if (r1 .ne. 1.) call abort
- if (c1(11) .ne. '1') call abort
- if (c4 .ne. '4') call abort
- if (c2(1) .ne. '2') call abort
- if (r2 .ne. 2.) call abort
- if (c2(11) .ne. '2') call abort
- if (c5 .ne. '5') call abort
- if (c3(1) .ne. '3') call abort
- if (r3 .ne. 3.) call abort
- if (c3(11) .ne. '3') call abort
- if (c6 .ne. '6') call abort
+ if (c1(1) .ne. '1') STOP 1
+ if (r1 .ne. 1.) STOP 2
+ if (c1(11) .ne. '1') STOP 3
+ if (c4 .ne. '4') STOP 4
+ if (c2(1) .ne. '2') STOP 5
+ if (r2 .ne. 2.) STOP 6
+ if (c2(11) .ne. '2') STOP 7
+ if (c5 .ne. '5') STOP 8
+ if (c3(1) .ne. '3') STOP 9
+ if (r3 .ne. 3.) STOP 10
+ if (c3(11) .ne. '3') STOP 11
+ if (c6 .ne. '6') STOP 12
end
diff --git a/gcc/testsuite/gfortran.dg/g77/980628-2.f b/gcc/testsuite/gfortran.dg/g77/980628-2.f
index 89a9e235422..fbbbc32729e 100644
--- a/gcc/testsuite/gfortran.dg/g77/980628-2.f
+++ b/gcc/testsuite/gfortran.dg/g77/980628-2.f
@@ -41,17 +41,17 @@ c { dg-options "-std=gnu" }
real r1, r2, r3
character c4, c5, c6
- if (c1(1) .ne. '1') call abort
- if (r1 .ne. 1.) call abort
- if (c1(11) .ne. '1') call abort
- if (c4 .ne. '4') call abort
- if (c2(1) .ne. '2') call abort
- if (r2 .ne. 2.) call abort
- if (c2(11) .ne. '2') call abort
- if (c5 .ne. '5') call abort
- if (c3(1) .ne. '3') call abort
- if (r3 .ne. 3.) call abort
- if (c3(11) .ne. '3') call abort
- if (c6 .ne. '6') call abort
+ if (c1(1) .ne. '1') STOP 1
+ if (r1 .ne. 1.) STOP 2
+ if (c1(11) .ne. '1') STOP 3
+ if (c4 .ne. '4') STOP 4
+ if (c2(1) .ne. '2') STOP 5
+ if (r2 .ne. 2.) STOP 6
+ if (c2(11) .ne. '2') STOP 7
+ if (c5 .ne. '5') STOP 8
+ if (c3(1) .ne. '3') STOP 9
+ if (r3 .ne. 3.) STOP 10
+ if (c3(11) .ne. '3') STOP 11
+ if (c6 .ne. '6') STOP 12
end
diff --git a/gcc/testsuite/gfortran.dg/g77/980628-3.f b/gcc/testsuite/gfortran.dg/g77/980628-3.f
index dea368d02bd..40656002ce3 100644
--- a/gcc/testsuite/gfortran.dg/g77/980628-3.f
+++ b/gcc/testsuite/gfortran.dg/g77/980628-3.f
@@ -43,17 +43,17 @@ c
real r1, r2, r3
character c4, c5, c6
- if (c1(1) .ne. '1') call abort
- if (r1 .ne. 1.) call abort
- if (c1(11) .ne. '1') call abort
- if (c4 .ne. '4') call abort
- if (c2(1) .ne. '2') call abort
- if (r2 .ne. 2.) call abort
- if (c2(11) .ne. '2') call abort
- if (c5 .ne. '5') call abort
- if (c3(1) .ne. '3') call abort
- if (r3 .ne. 3.) call abort
- if (c3(11) .ne. '3') call abort
- if (c6 .ne. '6') call abort
+ if (c1(1) .ne. '1') STOP 1
+ if (r1 .ne. 1.) STOP 2
+ if (c1(11) .ne. '1') STOP 3
+ if (c4 .ne. '4') STOP 4
+ if (c2(1) .ne. '2') STOP 5
+ if (r2 .ne. 2.) STOP 6
+ if (c2(11) .ne. '2') STOP 7
+ if (c5 .ne. '5') STOP 8
+ if (c3(1) .ne. '3') STOP 9
+ if (r3 .ne. 3.) STOP 10
+ if (c3(11) .ne. '3') STOP 11
+ if (c6 .ne. '6') STOP 12
end
diff --git a/gcc/testsuite/gfortran.dg/g77/980628-7.f b/gcc/testsuite/gfortran.dg/g77/980628-7.f
index 22ef08a47fd..15841cc768c 100644
--- a/gcc/testsuite/gfortran.dg/g77/980628-7.f
+++ b/gcc/testsuite/gfortran.dg/g77/980628-7.f
@@ -43,21 +43,21 @@ c { dg-do run }
double precision d1, d2, d3
integer i1, i2, i3
- if (r1(1) .ne. 1.) call abort
- if (d1 .ne. 10.) call abort
- if (r1(4) .ne. 1.) call abort
- if (r1(5) .ne. 1.) call abort
- if (i1 .ne. 1) call abort
- if (r2(1) .ne. 2.) call abort
- if (d2 .ne. 20.) call abort
- if (r2(4) .ne. 2.) call abort
- if (r2(5) .ne. 2.) call abort
- if (i2 .ne. 2) call abort
- if (r3(1) .ne. 3.) call abort
- if (d3 .ne. 30.) call abort
- if (r3(4) .ne. 3.) call abort
- if (r3(5) .ne. 3.) call abort
- if (i3 .ne. 3) call abort
+ if (r1(1) .ne. 1.) STOP 1
+ if (d1 .ne. 10.) STOP 2
+ if (r1(4) .ne. 1.) STOP 3
+ if (r1(5) .ne. 1.) STOP 4
+ if (i1 .ne. 1) STOP 5
+ if (r2(1) .ne. 2.) STOP 6
+ if (d2 .ne. 20.) STOP 7
+ if (r2(4) .ne. 2.) STOP 8
+ if (r2(5) .ne. 2.) STOP 9
+ if (i2 .ne. 2) STOP 10
+ if (r3(1) .ne. 3.) STOP 11
+ if (d3 .ne. 30.) STOP 12
+ if (r3(4) .ne. 3.) STOP 13
+ if (r3(5) .ne. 3.) STOP 14
+ if (i3 .ne. 3) STOP 15
end
diff --git a/gcc/testsuite/gfortran.dg/g77/980628-8.f b/gcc/testsuite/gfortran.dg/g77/980628-8.f
index 3b4a4a3fc8e..7172249b09b 100644
--- a/gcc/testsuite/gfortran.dg/g77/980628-8.f
+++ b/gcc/testsuite/gfortran.dg/g77/980628-8.f
@@ -44,21 +44,21 @@ c { dg-do run }
double precision d1, d2, d3
integer i1, i2, i3
- if (r1(1) .ne. 1.) call abort
- if (d1 .ne. 10.) call abort
- if (r1(4) .ne. 1.) call abort
- if (r1(5) .ne. 1.) call abort
- if (i1 .ne. 1) call abort
- if (r2(1) .ne. 2.) call abort
- if (d2 .ne. 20.) call abort
- if (r2(4) .ne. 2.) call abort
- if (r2(5) .ne. 2.) call abort
- if (i2 .ne. 2) call abort
- if (r3(1) .ne. 3.) call abort
- if (d3 .ne. 30.) call abort
- if (r3(4) .ne. 3.) call abort
- if (r3(5) .ne. 3.) call abort
- if (i3 .ne. 3) call abort
+ if (r1(1) .ne. 1.) STOP 1
+ if (d1 .ne. 10.) STOP 2
+ if (r1(4) .ne. 1.) STOP 3
+ if (r1(5) .ne. 1.) STOP 4
+ if (i1 .ne. 1) STOP 5
+ if (r2(1) .ne. 2.) STOP 6
+ if (d2 .ne. 20.) STOP 7
+ if (r2(4) .ne. 2.) STOP 8
+ if (r2(5) .ne. 2.) STOP 9
+ if (i2 .ne. 2) STOP 10
+ if (r3(1) .ne. 3.) STOP 11
+ if (d3 .ne. 30.) STOP 12
+ if (r3(4) .ne. 3.) STOP 13
+ if (r3(5) .ne. 3.) STOP 14
+ if (i3 .ne. 3) STOP 15
end
diff --git a/gcc/testsuite/gfortran.dg/g77/980628-9.f b/gcc/testsuite/gfortran.dg/g77/980628-9.f
index 7e2f2279f23..1b8be310092 100644
--- a/gcc/testsuite/gfortran.dg/g77/980628-9.f
+++ b/gcc/testsuite/gfortran.dg/g77/980628-9.f
@@ -41,18 +41,18 @@ c { dg-options "-std=gnu" }
real r1, r2, r3
character c4, c5, c6
- if (c1(1) .ne. '1') call abort
- if (r1 .ne. 1.) call abort
- if (c1(11) .ne. '1') call abort
- if (c4 .ne. '4') call abort
- if (c2(1) .ne. '2') call abort
- if (r2 .ne. 2.) call abort
- if (c2(11) .ne. '2') call abort
- if (c5 .ne. '5') call abort
- if (c3(1) .ne. '3') call abort
- if (r3 .ne. 3.) call abort
- if (c3(11) .ne. '3') call abort
- if (c6 .ne. '6') call abort
+ if (c1(1) .ne. '1') STOP 1
+ if (r1 .ne. 1.) STOP 2
+ if (c1(11) .ne. '1') STOP 3
+ if (c4 .ne. '4') STOP 4
+ if (c2(1) .ne. '2') STOP 5
+ if (r2 .ne. 2.) STOP 6
+ if (c2(11) .ne. '2') STOP 7
+ if (c5 .ne. '5') STOP 8
+ if (c3(1) .ne. '3') STOP 9
+ if (r3 .ne. 3.) STOP 10
+ if (c3(11) .ne. '3') STOP 11
+ if (c6 .ne. '6') STOP 12
end
diff --git a/gcc/testsuite/gfortran.dg/g77/980701-0.f b/gcc/testsuite/gfortran.dg/g77/980701-0.f
index 2820d2e1d18..d3d68781f72 100644
--- a/gcc/testsuite/gfortran.dg/g77/980701-0.f
+++ b/gcc/testsuite/gfortran.dg/g77/980701-0.f
@@ -51,23 +51,23 @@ c { dg-do run }
double precision d1, d2, d3
integer i1, i2, i3
- if (s1(1) .ne. 1.) call abort
- if (r1(1) .ne. 1.) call abort
- if (d1 .ne. 10.) call abort
- if (r1(4) .ne. 1.) call abort
- if (r1(5) .ne. 1.) call abort
- if (i1 .ne. 1) call abort
- if (s2(1) .ne. 2.) call abort
- if (r2(1) .ne. 2.) call abort
- if (d2 .ne. 20.) call abort
- if (r2(4) .ne. 2.) call abort
- if (r2(5) .ne. 2.) call abort
- if (i2 .ne. 2) call abort
- if (s3(1) .ne. 3.) call abort
- if (r3(1) .ne. 3.) call abort
- if (d3 .ne. 30.) call abort
- if (r3(4) .ne. 3.) call abort
- if (r3(5) .ne. 3.) call abort
- if (i3 .ne. 3) call abort
+ if (s1(1) .ne. 1.) STOP 1
+ if (r1(1) .ne. 1.) STOP 2
+ if (d1 .ne. 10.) STOP 3
+ if (r1(4) .ne. 1.) STOP 4
+ if (r1(5) .ne. 1.) STOP 5
+ if (i1 .ne. 1) STOP 6
+ if (s2(1) .ne. 2.) STOP 7
+ if (r2(1) .ne. 2.) STOP 8
+ if (d2 .ne. 20.) STOP 9
+ if (r2(4) .ne. 2.) STOP 10
+ if (r2(5) .ne. 2.) STOP 11
+ if (i2 .ne. 2) STOP 12
+ if (s3(1) .ne. 3.) STOP 13
+ if (r3(1) .ne. 3.) STOP 14
+ if (d3 .ne. 30.) STOP 15
+ if (r3(4) .ne. 3.) STOP 16
+ if (r3(5) .ne. 3.) STOP 17
+ if (i3 .ne. 3) STOP 18
end
diff --git a/gcc/testsuite/gfortran.dg/g77/980701-1.f b/gcc/testsuite/gfortran.dg/g77/980701-1.f
index 0f07de3f4ba..894b79b24b0 100644
--- a/gcc/testsuite/gfortran.dg/g77/980701-1.f
+++ b/gcc/testsuite/gfortran.dg/g77/980701-1.f
@@ -51,23 +51,23 @@ c { dg-do run }
double precision d1, d2, d3
integer i1, i2, i3
- if (s1(1) .ne. 1.) call abort
- if (r1(1) .ne. 1.) call abort
- if (d1 .ne. 10.) call abort
- if (r1(4) .ne. 1.) call abort
- if (r1(5) .ne. 1.) call abort
- if (i1 .ne. 1) call abort
- if (s2(1) .ne. 2.) call abort
- if (r2(1) .ne. 2.) call abort
- if (d2 .ne. 20.) call abort
- if (r2(4) .ne. 2.) call abort
- if (r2(5) .ne. 2.) call abort
- if (i2 .ne. 2) call abort
- if (s3(1) .ne. 3.) call abort
- if (r3(1) .ne. 3.) call abort
- if (d3 .ne. 30.) call abort
- if (r3(4) .ne. 3.) call abort
- if (r3(5) .ne. 3.) call abort
- if (i3 .ne. 3) call abort
+ if (s1(1) .ne. 1.) STOP 1
+ if (r1(1) .ne. 1.) STOP 2
+ if (d1 .ne. 10.) STOP 3
+ if (r1(4) .ne. 1.) STOP 4
+ if (r1(5) .ne. 1.) STOP 5
+ if (i1 .ne. 1) STOP 6
+ if (s2(1) .ne. 2.) STOP 7
+ if (r2(1) .ne. 2.) STOP 8
+ if (d2 .ne. 20.) STOP 9
+ if (r2(4) .ne. 2.) STOP 10
+ if (r2(5) .ne. 2.) STOP 11
+ if (i2 .ne. 2) STOP 12
+ if (s3(1) .ne. 3.) STOP 13
+ if (r3(1) .ne. 3.) STOP 14
+ if (d3 .ne. 30.) STOP 15
+ if (r3(4) .ne. 3.) STOP 16
+ if (r3(5) .ne. 3.) STOP 17
+ if (i3 .ne. 3) STOP 18
end
diff --git a/gcc/testsuite/gfortran.dg/g77/cabs.f b/gcc/testsuite/gfortran.dg/g77/cabs.f
index eafe92c8f19..73becbcadf4 100644
--- a/gcc/testsuite/gfortran.dg/g77/cabs.f
+++ b/gcc/testsuite/gfortran.dg/g77/cabs.f
@@ -7,9 +7,9 @@ c { dg-do run }
z0 = cmplx(3.,4.)
r0 = cabs(z0)
- if (r0 .ne. 5.) call abort
+ if (r0 .ne. 5.) STOP 1
z1 = dcmplx(3.d0,4.d0)
r1 = zabs(z1)
- if (r1 .ne. 5.d0) call abort
+ if (r1 .ne. 5.d0) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/g77/claus.f b/gcc/testsuite/gfortran.dg/g77/claus.f
index 391d1cb9a85..75f2bb42995 100644
--- a/gcc/testsuite/gfortran.dg/g77/claus.f
+++ b/gcc/testsuite/gfortran.dg/g77/claus.f
@@ -7,8 +7,8 @@ c { dg-do run }
k=1
n=2
ind=k-n+2
- if (ind /= 1) call abort
- if (ab(ind) /= 1) call abort
- if (k-n+2 /= 1) call abort
- if (ab(k-n+2) /= 1) call abort
+ if (ind /= 1) STOP 1
+ if (ab(ind) /= 1) STOP 2
+ if (k-n+2 /= 1) STOP 3
+ if (ab(k-n+2) /= 1) STOP 4
END
diff --git a/gcc/testsuite/gfortran.dg/g77/complex_1.f b/gcc/testsuite/gfortran.dg/g77/complex_1.f
index ddfbeff3f9c..dea37e41160 100644
--- a/gcc/testsuite/gfortran.dg/g77/complex_1.f
+++ b/gcc/testsuite/gfortran.dg/g77/complex_1.f
@@ -4,16 +4,16 @@ c { dg-do run }
z0 = cmplx(0.,.5)
z1 = 1./z0
- if (z1 .ne. cmplx(0.,-2)) call abort
+ if (z1 .ne. cmplx(0.,-2)) STOP 1
z0 = 10.*z0
- if (z0 .ne. cmplx(0.,5.)) call abort
+ if (z0 .ne. cmplx(0.,5.)) STOP 2
z2 = cmplx(1.,2.)
z1 = z0/z2
- if (z1 .ne. cmplx(2.,1.)) call abort
+ if (z1 .ne. cmplx(2.,1.)) STOP 3
z1 = z0*z2
- if (z1 .ne. cmplx(-10.,5.)) call abort
+ if (z1 .ne. cmplx(-10.,5.)) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/g77/cpp3.F b/gcc/testsuite/gfortran.dg/g77/cpp3.F
index ab25b532945..b7fe29cbf8b 100644
--- a/gcc/testsuite/gfortran.dg/g77/cpp3.F
+++ b/gcc/testsuite/gfortran.dg/g77/cpp3.F
@@ -4,5 +4,5 @@ c
! Some versions of cpp will delete "//'World' as a C++ comment.
character*40 title
title = 'Hello '//'World'
- if (title .ne. 'Hello World') call abort
+ if (title .ne. 'Hello World') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/g77/cpp4.F b/gcc/testsuite/gfortran.dg/g77/cpp4.F
index bc14e0469ea..3b4728776d2 100644
--- a/gcc/testsuite/gfortran.dg/g77/cpp4.F
+++ b/gcc/testsuite/gfortran.dg/g77/cpp4.F
@@ -5,7 +5,7 @@ C which contain apostrophes.
character(4) j
data i /4hbla'/
write (j, '(4a)') i
- if (j .ne. "bla'") call abort
+ if (j .ne. "bla'") STOP 1
end
! { dg-warning "Hollerith constant" "const" { target *-*-* } 6 }
diff --git a/gcc/testsuite/gfortran.dg/g77/cpp5.F b/gcc/testsuite/gfortran.dg/g77/cpp5.F
index 9b8d15bd79f..6dcd1e4d2e3 100644
--- a/gcc/testsuite/gfortran.dg/g77/cpp5.F
+++ b/gcc/testsuite/gfortran.dg/g77/cpp5.F
@@ -1,4 +1,4 @@
! { dg-do run }
#include "cpp5.h"
- IF (FOO().NE.1) CALL ABORT ()
+ IF (FOO().NE.1) STOP 1
END
diff --git a/gcc/testsuite/gfortran.dg/g77/dcomplex.f b/gcc/testsuite/gfortran.dg/g77/dcomplex.f
index f25e7c570bd..1d286e63d0a 100644
--- a/gcc/testsuite/gfortran.dg/g77/dcomplex.f
+++ b/gcc/testsuite/gfortran.dg/g77/dcomplex.f
@@ -4,16 +4,16 @@ c { dg-do run }
z0 = dcmplx(0.,.5)
z1 = 1./z0
- if (z1 .ne. dcmplx(0.,-2)) call abort
+ if (z1 .ne. dcmplx(0.,-2)) STOP 1
z0 = 10.*z0
- if (z0 .ne. dcmplx(0.,5.)) call abort
+ if (z0 .ne. dcmplx(0.,5.)) STOP 2
z2 = cmplx(1.,2.)
z1 = z0/z2
- if (z1 .ne. dcmplx(2.,1.)) call abort
+ if (z1 .ne. dcmplx(2.,1.)) STOP 3
z1 = z0*z2
- if (z1 .ne. dcmplx(-10.,5.)) call abort
+ if (z1 .ne. dcmplx(-10.,5.)) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/g77/dnrm2.f b/gcc/testsuite/gfortran.dg/g77/dnrm2.f
index 8c91ac55b8b..184aaf3a1c2 100644
--- a/gcc/testsuite/gfortran.dg/g77/dnrm2.f
+++ b/gcc/testsuite/gfortran.dg/g77/dnrm2.f
@@ -21,7 +21,7 @@ c current Netlib BLAS.)
do i=1,100
a(i)=0.D0
enddo
- if (dnrm2(100,a,1) .ne. 0.0) call abort
+ if (dnrm2(100,a,1) .ne. 0.0) STOP 1
end
double precision function dnrm2 ( n, dx, incx)
diff --git a/gcc/testsuite/gfortran.dg/g77/erfc.f b/gcc/testsuite/gfortran.dg/g77/erfc.f
index 9897162af3d..a937ca0fe0b 100644
--- a/gcc/testsuite/gfortran.dg/g77/erfc.f
+++ b/gcc/testsuite/gfortran.dg/g77/erfc.f
@@ -4,28 +4,28 @@ c============================================== test.f
real(kind=8) x1, y1
x=0.
y = erfc(x)
- if (y .ne. 1.) call abort
+ if (y .ne. 1.) STOP 1
x=1.1
y = erfc(x)
- if (abs(y - .1197949) .ge. 1.e-6) call abort
+ if (abs(y - .1197949) .ge. 1.e-6) STOP 2
c modified from x=10, y .gt. 1.5e-44 to avoid lack of -mieee on Alphas.
x=8
y = erfc(x)
- if (y .gt. 1.2e-28) call abort
+ if (y .gt. 1.2e-28) STOP 3
x1=0.
y1 = erfc(x1)
- if (y1 .ne. 1.) call abort
+ if (y1 .ne. 1.) STOP 4
x1=1.1d0
y1 = erfc(x1)
- if (abs(y1 - .1197949d0) .ge. 1.d-6) call abort
+ if (abs(y1 - .1197949d0) .ge. 1.d-6) STOP 5
x1=10
y1 = erfc(x1)
- if (y1 .gt. 1.5d-44) call abort
+ if (y1 .gt. 1.5d-44) STOP 6
end
c=================================================
!output:
diff --git a/gcc/testsuite/gfortran.dg/g77/f77-edit-i-in.f b/gcc/testsuite/gfortran.dg/g77/f77-edit-i-in.f
index 0369b79db33..18e1cb0d006 100644
--- a/gcc/testsuite/gfortran.dg/g77/f77-edit-i-in.f
+++ b/gcc/testsuite/gfortran.dg/g77/f77-edit-i-in.f
@@ -13,12 +13,12 @@ C
write(buf,'(A)') '1 -1'
read(buf,'(I1)') i
- if ( i.ne.1 ) call abort()
+ if ( i.ne.1 ) STOP 1
read(buf,'(1X,I1)') i
- if ( i.ne.0 ) call abort()
+ if ( i.ne.0 ) STOP 2
read(buf,'(1X,I1,1X,I2)') i,j
- if ( i.ne.0 .and. j.ne.-1 ) call abort()
+ if ( i.ne.0 .and. j.ne.-1 ) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/g77/f77-edit-t-in.f b/gcc/testsuite/gfortran.dg/g77/f77-edit-t-in.f
index 524b18e3179..b6a79e58b6f 100644
--- a/gcc/testsuite/gfortran.dg/g77/f77-edit-t-in.f
+++ b/gcc/testsuite/gfortran.dg/g77/f77-edit-t-in.f
@@ -12,22 +12,22 @@ C
in = '1234 8'
read(in,'(T3,I1)') i
- if ( i.ne.3 ) call abort()
+ if ( i.ne.3 ) STOP 1
read(in,'(5X,TL4,I2)') i
- if ( i.ne.23 ) call abort()
+ if ( i.ne.23 ) STOP 2
read(in,'(3X,I1,TR3,I1)') i,j
- if ( i.ne.4 ) call abort()
- if ( j.ne.8 ) call abort()
+ if ( i.ne.4 ) STOP 3
+ if ( j.ne.8 ) STOP 4
in = ' 1.5 -12.62 348.75 1.0E-6'
100 format(F6.0,TL6,I4,1X,I1,8X,I5,F3.0,T10,F5.0,T17,F6.0,TR2,F6.0)
read(in,100) a,i,j,k,b,c,d,e
- if ( abs(a-1.5).gt.1.0e-5 ) call abort()
- if ( i.ne.1 ) call abort()
- if ( j.ne.5 ) call abort()
- if ( k.ne.348 ) call abort()
- if ( abs(b-0.75).gt.1.0e-5 ) call abort()
- if ( abs(c-12.62).gt.1.0e-5 ) call abort()
- if ( abs(d-348.75).gt.1.0e-4 ) call abort()
- if ( abs(e-1.0e-6).gt.1.0e-11 ) call abort()
+ if ( abs(a-1.5).gt.1.0e-5 ) STOP 5
+ if ( i.ne.1 ) STOP 6
+ if ( j.ne.5 ) STOP 7
+ if ( k.ne.348 ) STOP 8
+ if ( abs(b-0.75).gt.1.0e-5 ) STOP 9
+ if ( abs(c-12.62).gt.1.0e-5 ) STOP 10
+ if ( abs(d-348.75).gt.1.0e-4 ) STOP 11
+ if ( abs(e-1.0e-6).gt.1.0e-11 ) STOP 12
end
diff --git a/gcc/testsuite/gfortran.dg/g77/f90-intrinsic-bit.f b/gcc/testsuite/gfortran.dg/g77/f90-intrinsic-bit.f
index 01436d1973d..0ce45decfb9 100644
--- a/gcc/testsuite/gfortran.dg/g77/f90-intrinsic-bit.f
+++ b/gcc/testsuite/gfortran.dg/g77/f90-intrinsic-bit.f
@@ -405,7 +405,7 @@ c Rather than assume integer sizes, mask off high bits
call c_i1(IAND(NOT(k),k2),ka,'NOT(integer(1))')
call c_i8(IAND(NOT(m),m2),ma,'NOT(integer(8))')
- if ( fail ) call abort()
+ if ( fail ) STOP 1
end
subroutine failure(label)
diff --git a/gcc/testsuite/gfortran.dg/g77/f90-intrinsic-mathematical.f b/gcc/testsuite/gfortran.dg/g77/f90-intrinsic-mathematical.f
index bb984999412..d151fd0a38d 100644
--- a/gcc/testsuite/gfortran.dg/g77/f90-intrinsic-mathematical.f
+++ b/gcc/testsuite/gfortran.dg/g77/f90-intrinsic-mathematical.f
@@ -85,7 +85,7 @@ c TANH - Section 13.13.106
call c_r(TANH(1.0),0.76159416,'TANH(real)')
call c_d(TANH(1.d0),0.76159416d0,'TANH(double)')
- if ( fail ) call abort()
+ if ( fail ) STOP 1
end
subroutine failure(label)
diff --git a/gcc/testsuite/gfortran.dg/g77/f90-intrinsic-numeric.f b/gcc/testsuite/gfortran.dg/g77/f90-intrinsic-numeric.f
index 41bf59694d4..c8d7c569524 100644
--- a/gcc/testsuite/gfortran.dg/g77/f90-intrinsic-numeric.f
+++ b/gcc/testsuite/gfortran.dg/g77/f90-intrinsic-numeric.f
@@ -200,7 +200,7 @@ c SIGN - Section 13.13.96
call c_r(SIGN(-3.0,2.),3.,'SIGN(real,real)')
call c_d(SIGN(-3.d0,2.d0),3.d0,'SIGN(double,double)')
- if ( fail ) call abort()
+ if ( fail ) STOP 1
end
subroutine failure(label)
diff --git a/gcc/testsuite/gfortran.dg/g77/int8421.f b/gcc/testsuite/gfortran.dg/g77/int8421.f
index 0eb1520024f..2444ba85c45 100644
--- a/gcc/testsuite/gfortran.dg/g77/int8421.f
+++ b/gcc/testsuite/gfortran.dg/g77/int8421.f
@@ -10,12 +10,12 @@ c { dg-do run }
real(kind=8) r8, r88
parameter (i1 = 1, i2 = 2, i4 = 4, i = 5, i8 = i + i4*i2 + i2*i1)
parameter (r = 3.0, r4 = 4.0, r8 = 8.d0, d = i8*r + r4*i2 + r8*i1)
- if (i8 .ne. 15 ) call abort
- if (d .ne. 61.d0) call abort
+ if (i8 .ne. 15 ) STOP 1
+ if (d .ne. 61.d0) STOP 2
i11 = 1; i22 = 2; i44 = 4; ii = 5
i88 = i + i4*i2 + i2*i1
- if (i88 .ne. i8) call abort
+ if (i88 .ne. i8) STOP 3
rr = 3.0; r44 = 4.0; r88 = 8.0d0
dd = i88*rr + r44*i22 + r88*i11
- if (dd .ne. d) call abort
+ if (dd .ne. d) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/g77/intrinsic-unix-bessel.f b/gcc/testsuite/gfortran.dg/g77/intrinsic-unix-bessel.f
index 696392ffac0..b388806399b 100644
--- a/gcc/testsuite/gfortran.dg/g77/intrinsic-unix-bessel.f
+++ b/gcc/testsuite/gfortran.dg/g77/intrinsic-unix-bessel.f
@@ -76,7 +76,7 @@ c BESYN - Bessel function of second kind of order N
call c_d(DBESYN(j,dx),da,'DBESYN(integer(2),double)')
call c_d(DBESYN(k,dx),da,'DBESYN(integer(1),double)')
- if ( fail ) call abort()
+ if ( fail ) STOP 1
end
subroutine failure(label)
diff --git a/gcc/testsuite/gfortran.dg/g77/intrinsic-unix-erf.f b/gcc/testsuite/gfortran.dg/g77/intrinsic-unix-erf.f
index 460ddeea417..250519af7b7 100644
--- a/gcc/testsuite/gfortran.dg/g77/intrinsic-unix-erf.f
+++ b/gcc/testsuite/gfortran.dg/g77/intrinsic-unix-erf.f
@@ -28,7 +28,7 @@ c ERFC - complementary error function
call c_d(ERFC(dx),da,'ERFC(double)')
call c_d(DERFC(dx),da,'DERFC(double)')
- if ( fail ) call abort()
+ if ( fail ) STOP 1
end
subroutine failure(label)
diff --git a/gcc/testsuite/gfortran.dg/g77/le.f b/gcc/testsuite/gfortran.dg/g77/le.f
index c62ac46cd0f..1c6452c4b76 100644
--- a/gcc/testsuite/gfortran.dg/g77/le.f
+++ b/gcc/testsuite/gfortran.dg/g77/le.f
@@ -9,22 +9,22 @@ c { dg-do run }
n = 5
t = (n > foo)
- if (t .neqv. .true.) call abort
+ if (t .neqv. .true.) STOP 1
t = (n >= foo)
- if (t .neqv. .true.) call abort
+ if (t .neqv. .true.) STOP 2
t = (n < foo)
- if (t .neqv. .false.) call abort
+ if (t .neqv. .false.) STOP 3
t = (n <= 5)
- if (t .neqv. .true.) call abort
+ if (t .neqv. .true.) STOP 4
t = (n >= 5 )
- if (t .neqv. .true.) call abort
+ if (t .neqv. .true.) STOP 5
t = (n == 5)
- if (t .neqv. .true.) call abort
+ if (t .neqv. .true.) STOP 6
t = (n /= 5)
- if (t .neqv. .false.) call abort
+ if (t .neqv. .false.) STOP 7
t = (n /= foo)
- if (t .neqv. .true.) call abort
+ if (t .neqv. .true.) STOP 8
t = (n == foo)
- if (t .neqv. .false.) call abort
+ if (t .neqv. .false.) STOP 9
end
diff --git a/gcc/testsuite/gfortran.dg/g77/short.f b/gcc/testsuite/gfortran.dg/g77/short.f
index 330f0ac52b1..2609abcb15d 100644
--- a/gcc/testsuite/gfortran.dg/g77/short.f
+++ b/gcc/testsuite/gfortran.dg/g77/short.f
@@ -49,11 +49,11 @@ c another four-way average of rhobar
270 continue
do k=0,N
- if (yzin1(k) .ne. yzin2(k)) call abort
+ if (yzin1(k) .ne. yzin2(k)) STOP 1
enddo
- if (yzin1(0) .ne. -1371.) call abort
- if (yzin1(1) .ne. -685.5) call abort
- if (yzin1(2) .ne. 0.) call abort
+ if (yzin1(0) .ne. -1371.) STOP 2
+ if (yzin1(1) .ne. -685.5) STOP 3
+ if (yzin1(2) .ne. 0.) STOP 4
return
end
diff --git a/gcc/testsuite/gfortran.dg/gamma_1.f90 b/gcc/testsuite/gfortran.dg/gamma_1.f90
index 9946166952a..bd81479ca1b 100644
--- a/gcc/testsuite/gfortran.dg/gamma_1.f90
+++ b/gcc/testsuite/gfortran.dg/gamma_1.f90
@@ -15,15 +15,15 @@ integer, parameter :: dp = kind(1.0d0)
real(sp) :: rsp
real(dp) :: rdp
-if (abs(gamma(1.0_sp) - 1.0_sp) > tiny(1.0_sp)) call abort()
-if (abs(gamma(1.0_dp) - 1.0_dp) > tiny(1.0_dp)) call abort()
-if (abs(dgamma(1.0_dp) - 1.0_dp) > tiny(1.0_dp)) call abort()
+if (abs(gamma(1.0_sp) - 1.0_sp) > tiny(1.0_sp)) STOP 1
+if (abs(gamma(1.0_dp) - 1.0_dp) > tiny(1.0_dp)) STOP 2
+if (abs(dgamma(1.0_dp) - 1.0_dp) > tiny(1.0_dp)) STOP 3
-if (abs(lgamma(1.0_sp)) > tiny(1.0_sp)) call abort()
-if (abs(lgamma(1.0_dp)) > tiny(1.0_dp)) call abort()
-if (abs(log_gamma(1.0_sp)) > tiny(1.0_sp)) call abort()
-if (abs(log_gamma(1.0_dp)) > tiny(1.0_dp)) call abort()
-if (abs(algama(1.0_sp)) > tiny(1.0_sp)) call abort()
-if (abs(dlgama(1.0_dp)) > tiny(1.0_dp)) call abort()
+if (abs(lgamma(1.0_sp)) > tiny(1.0_sp)) STOP 4
+if (abs(lgamma(1.0_dp)) > tiny(1.0_dp)) STOP 5
+if (abs(log_gamma(1.0_sp)) > tiny(1.0_sp)) STOP 6
+if (abs(log_gamma(1.0_dp)) > tiny(1.0_dp)) STOP 7
+if (abs(algama(1.0_sp)) > tiny(1.0_sp)) STOP 8
+if (abs(dlgama(1.0_dp)) > tiny(1.0_dp)) STOP 9
end program gamma_test
diff --git a/gcc/testsuite/gfortran.dg/gamma_4.f90 b/gcc/testsuite/gfortran.dg/gamma_4.f90
index 67e9e2314a1..cb3d79da3e7 100644
--- a/gcc/testsuite/gfortran.dg/gamma_4.f90
+++ b/gcc/testsuite/gfortran.dg/gamma_4.f90
@@ -12,7 +12,7 @@ integer, parameter :: qp = selected_real_kind(precision (0.0_8) + 1)
real(qp) :: rqp
-if (abs(gamma(1.0_qp) - 1.0_qp) > tiny(1.0_qp)) call abort()
-if (abs(log_gamma(1.0_qp)) > tiny(1.0_qp)) call abort()
+if (abs(gamma(1.0_qp) - 1.0_qp) > tiny(1.0_qp)) STOP 1
+if (abs(log_gamma(1.0_qp)) > tiny(1.0_qp)) STOP 2
end program gamma_test
diff --git a/gcc/testsuite/gfortran.dg/gamma_5.f90 b/gcc/testsuite/gfortran.dg/gamma_5.f90
index 467c5796244..9b05fdac0ca 100644
--- a/gcc/testsuite/gfortran.dg/gamma_5.f90
+++ b/gcc/testsuite/gfortran.dg/gamma_5.f90
@@ -21,8 +21,8 @@ program main
xd = n + 0.5d0
td = c(n)*sqrt(pi)
ts = c(n)*sqrt(pi)
- if (abs(gamma(xs)-ts)/ts > 9e-6) call abort
- if (abs(gamma(xd)-td)/td > 5e-14) call abort
+ if (abs(gamma(xs)-ts)/ts > 9e-6) STOP 1
+ if (abs(gamma(xd)-td)/td > 5e-14) STOP 2
end do
call tst_s(2.3, gamma(2.3))
call tst_s(3.7, gamma(3.7))
@@ -32,11 +32,11 @@ program main
contains
subroutine tst_s(a, b)
real :: a, b
- if (abs(gamma(a) - b)/b > 1e-6) call abort
+ if (abs(gamma(a) - b)/b > 1e-6) STOP 3
end subroutine tst_s
subroutine tst_d(a, b)
double precision :: a,b
- if (abs(gamma(a) - b)/b > 5e-14) call abort
+ if (abs(gamma(a) - b)/b > 5e-14) STOP 4
end subroutine tst_d
end program main
diff --git a/gcc/testsuite/gfortran.dg/generic_13.f90 b/gcc/testsuite/gfortran.dg/generic_13.f90
index 58b886d9d4d..29f860adf4a 100644
--- a/gcc/testsuite/gfortran.dg/generic_13.f90
+++ b/gcc/testsuite/gfortran.dg/generic_13.f90
@@ -31,5 +31,5 @@ PROGRAM TT
USE TOO
INTEGER :: I
CALL SUB(xx,I)
- IF (I.NE.7) CALL ABORT()
+ IF (I.NE.7) STOP 1
END PROGRAM
diff --git a/gcc/testsuite/gfortran.dg/generic_15.f90 b/gcc/testsuite/gfortran.dg/generic_15.f90
index 179d04a53cc..73ca4060158 100644
--- a/gcc/testsuite/gfortran.dg/generic_15.f90
+++ b/gcc/testsuite/gfortran.dg/generic_15.f90
@@ -37,7 +37,7 @@ PROGRAM main
CHARACTER(14) :: cname
CHARACTER(14) :: cnames(1)
CALL odfname(base,i,cname)
- if (trim (cname) .ne. "odfamilycname") call abort
+ if (trim (cname) .ne. "odfamilycname") STOP 1
CALL odfname(base,i,cnames)
- if (trim (cnames(1)) .ne. "odfamilycnames") call abort
+ if (trim (cnames(1)) .ne. "odfamilycnames") STOP 2
END PROGRAM
diff --git a/gcc/testsuite/gfortran.dg/generic_19.f90 b/gcc/testsuite/gfortran.dg/generic_19.f90
index 8bbbf8a0ee1..f2144d14bcf 100644
--- a/gcc/testsuite/gfortran.dg/generic_19.f90
+++ b/gcc/testsuite/gfortran.dg/generic_19.f90
@@ -9,8 +9,8 @@ contains
subroutine sub(x, chr)
real x
character(8) chr
- if (trim (chr) .ne. "real") call abort
- if (int (x) .ne. 1) call abort
+ if (trim (chr) .ne. "real") STOP 1
+ if (int (x) .ne. 1) STOP 2
end subroutine sub
end module mod1
@@ -23,8 +23,8 @@ contains
subroutine sub_int(i, chr)
character(8) chr
integer i
- if (trim (chr) .ne. "integer") call abort
- if (i .ne. 1) call abort
+ if (trim (chr) .ne. "integer") STOP 3
+ if (i .ne. 1) STOP 4
end subroutine sub_int
end module mod2
diff --git a/gcc/testsuite/gfortran.dg/generic_20.f90 b/gcc/testsuite/gfortran.dg/generic_20.f90
index 83485b6f7b9..f5e6bed7d32 100644
--- a/gcc/testsuite/gfortran.dg/generic_20.f90
+++ b/gcc/testsuite/gfortran.dg/generic_20.f90
@@ -25,5 +25,5 @@ end module m
use m
real :: res(1)
res = matmul (one(2.0), (/ 2.0/))
-if (abs (res(1)-4.0) > epsilon (res)) call abort ()
+if (abs (res(1)-4.0) > epsilon (res)) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/generic_23.f03 b/gcc/testsuite/gfortran.dg/generic_23.f03
index 94dbbbcc163..d70a04598cf 100644
--- a/gcc/testsuite/gfortran.dg/generic_23.f03
+++ b/gcc/testsuite/gfortran.dg/generic_23.f03
@@ -59,7 +59,7 @@ program testd15
type(foo2) :: af2
call af2%do()
- if (af2%i .ne. 2) call abort
- if (af2%get() .ne. 3) call abort
+ if (af2%i .ne. 2) STOP 1
+ if (af2%get() .ne. 3) STOP 2
end program testd15
diff --git a/gcc/testsuite/gfortran.dg/generic_25.f90 b/gcc/testsuite/gfortran.dg/generic_25.f90
index 39b7e23eb0f..619b792217f 100644
--- a/gcc/testsuite/gfortran.dg/generic_25.f90
+++ b/gcc/testsuite/gfortran.dg/generic_25.f90
@@ -12,8 +12,8 @@
integer, allocatable :: a1
integer, pointer :: a2
- if (.not.test(a1)) call abort()
- if (test(a2)) call abort()
+ if (.not.test(a1)) STOP 1
+ if (test(a2)) STOP 2
contains
diff --git a/gcc/testsuite/gfortran.dg/generic_27.f90 b/gcc/testsuite/gfortran.dg/generic_27.f90
index 6f603ae4c91..7ddaf1b1596 100644
--- a/gcc/testsuite/gfortran.dg/generic_27.f90
+++ b/gcc/testsuite/gfortran.dg/generic_27.f90
@@ -26,7 +26,7 @@ program test
implicit none
intrinsic :: cos
- if (testIF(2.0)/=2.0) call abort()
- if (testIF(cos)/=1.0) call abort()
+ if (testIF(2.0)/=2.0) STOP 1
+ if (testIF(cos)/=1.0) STOP 2
end program
diff --git a/gcc/testsuite/gfortran.dg/generic_31.f90 b/gcc/testsuite/gfortran.dg/generic_31.f90
index 2c0d0299005..449ca5e558a 100644
--- a/gcc/testsuite/gfortran.dg/generic_31.f90
+++ b/gcc/testsuite/gfortran.dg/generic_31.f90
@@ -31,5 +31,5 @@ program p
use m
integer :: i
i = bar()
- if (i /= -10) call abort
+ if (i /= -10) STOP 1
end program p
diff --git a/gcc/testsuite/gfortran.dg/generic_4.f90 b/gcc/testsuite/gfortran.dg/generic_4.f90
index 62bc569a21c..4c1b66b3859 100644
--- a/gcc/testsuite/gfortran.dg/generic_4.f90
+++ b/gcc/testsuite/gfortran.dg/generic_4.f90
@@ -24,5 +24,5 @@ use foo
integer :: y(3), z(3)
y = (/1,2,3/)
call baz(y,z)
-if (any (y /= z)) call abort ()
+if (any (y /= z)) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/global_vars_c_init.f90 b/gcc/testsuite/gfortran.dg/global_vars_c_init.f90
index 60408083951..cd689325529 100644
--- a/gcc/testsuite/gfortran.dg/global_vars_c_init.f90
+++ b/gcc/testsuite/gfortran.dg/global_vars_c_init.f90
@@ -10,7 +10,7 @@ contains
subroutine test_globals() bind(c)
! the value of I is initialized above
if(I .ne. 2) then
- call abort()
+ STOP 1
endif
end subroutine test_globals
end module global_vars_c_init
diff --git a/gcc/testsuite/gfortran.dg/global_vars_f90_init.f90 b/gcc/testsuite/gfortran.dg/global_vars_f90_init.f90
index 7702f3dbb72..6b228b11ab7 100644
--- a/gcc/testsuite/gfortran.dg/global_vars_f90_init.f90
+++ b/gcc/testsuite/gfortran.dg/global_vars_f90_init.f90
@@ -10,7 +10,7 @@ contains
subroutine test_globals() bind(c)
! the value of I is initialized above
if(I .ne. 2) then
- call abort()
+ STOP 1
endif
end subroutine test_globals
end module global_vars_f90_init
diff --git a/gcc/testsuite/gfortran.dg/gnu_logical_1.F b/gcc/testsuite/gfortran.dg/gnu_logical_1.F
index 3c4a1860952..19e368ce820 100644
--- a/gcc/testsuite/gfortran.dg/gnu_logical_1.F
+++ b/gcc/testsuite/gfortran.dg/gnu_logical_1.F
@@ -13,12 +13,12 @@
#define TEST_INTEGER(u,ukind,v,vkind) \
ukind = u;\
vkind = v;\
- if (iand(u,v) /= and(ukind, vkind)) call abort;\
- if (iand(u,v) /= and(vkind, ukind)) call abort;\
- if (ieor(u,v) /= xor(ukind, vkind)) call abort;\
- if (ieor(u,v) /= xor(vkind, ukind)) call abort;\
- if (ior(u,v) /= or(ukind, vkind)) call abort;\
- if (ior(u,v) /= or(vkind, ukind)) call abort
+ if (iand(u,v) /= and(ukind, vkind)) STOP 1;\
+ if (iand(u,v) /= and(vkind, ukind)) STOP 1;\
+ if (ieor(u,v) /= xor(ukind, vkind)) STOP 1;\
+ if (ieor(u,v) /= xor(vkind, ukind)) STOP 1;\
+ if (ior(u,v) /= or(ukind, vkind)) STOP 1;\
+ if (ior(u,v) /= or(vkind, ukind)) STOP 1
TEST_INTEGER(19,i1,6,j1)
TEST_INTEGER(19,i1,6,j2)
@@ -45,12 +45,12 @@
#define TEST_LOGICAL(u,ukind,v,vkind) \
ukind = u;\
vkind = v;\
- if ((u .and. v) .neqv. and(ukind, vkind)) call abort;\
- if ((u .and. v) .neqv. and(vkind, ukind)) call abort;\
- if (((u .and. .not. v) .or. (.not. u .and. v)) .neqv. xor(ukind, vkind)) call abort;\
- if (((u .and. .not. v) .or. (.not. u .and. v)) .neqv. xor(vkind, ukind)) call abort;\
- if ((u .or. v) .neqv. or(ukind, vkind)) call abort;\
- if ((u .or. v) .neqv. or(vkind, ukind)) call abort
+ if ((u .and. v) .neqv. and(ukind, vkind)) STOP 1;\
+ if ((u .and. v) .neqv. and(vkind, ukind)) STOP 1;\
+ if (((u .and. .not. v) .or. (.not. u .and. v)) .neqv. xor(ukind, vkind)) STOP 1;\
+ if (((u .and. .not. v) .or. (.not. u .and. v)) .neqv. xor(vkind, ukind)) STOP 1;\
+ if ((u .or. v) .neqv. or(ukind, vkind)) STOP 1;\
+ if ((u .or. v) .neqv. or(vkind, ukind)) STOP 2
TEST_LOGICAL(.true.,l1,.false.,k1)
TEST_LOGICAL(.true.,l1,.true.,k1)
diff --git a/gcc/testsuite/gfortran.dg/goacc/fixed-1.f b/gcc/testsuite/gfortran.dg/goacc/fixed-1.f
index 6a454190102..974f2702260 100644
--- a/gcc/testsuite/gfortran.dg/goacc/fixed-1.f
+++ b/gcc/testsuite/gfortran.dg/goacc/fixed-1.f
@@ -4,7 +4,7 @@
!$OMP PARALLEL
!$ACC PARALLEL COPYIN(ARGC)
IF (ARGC .NE. 0) THEN
- CALL ABORT
+ STOP 1
END IF
!$ACC END PARALLEL
!$OMP END PARALLEL
diff --git a/gcc/testsuite/gfortran.dg/goacc/fixed-2.f b/gcc/testsuite/gfortran.dg/goacc/fixed-2.f
index 2c2b0a38e00..afbc6b03d7f 100644
--- a/gcc/testsuite/gfortran.dg/goacc/fixed-2.f
+++ b/gcc/testsuite/gfortran.dg/goacc/fixed-2.f
@@ -7,7 +7,7 @@
!$OMP xPARALLEL
!$ACC xPARALLEL COPYIN(ARGC) ! { dg-error "Unclassifiable OpenACC directive" }
IF (ARGC .NE. 0) THEN
- CALL ABORT
+ STOP 1
END IF
!$ACC END PARALLEL ! { dg-error "Unexpected" }
!$OMP END PARALLEL
diff --git a/gcc/testsuite/gfortran.dg/goacc/gang-static.f95 b/gcc/testsuite/gfortran.dg/goacc/gang-static.f95
index 34810852d19..cc83c7dd65b 100644
--- a/gcc/testsuite/gfortran.dg/goacc/gang-static.f95
+++ b/gcc/testsuite/gfortran.dg/goacc/gang-static.f95
@@ -69,7 +69,7 @@ subroutine test (a, b, sarg, n)
integer i
do i = 1, n
- if (a(i) .ne. b(i) + sarg) call abort ()
+ if (a(i) .ne. b(i) + sarg) STOP 1
end do
end subroutine test
diff --git a/gcc/testsuite/gfortran.dg/goacc/kernels-loop-2.f95 b/gcc/testsuite/gfortran.dg/goacc/kernels-loop-2.f95
index 516aedef24c..ef53324dd2a 100644
--- a/gcc/testsuite/gfortran.dg/goacc/kernels-loop-2.f95
+++ b/gcc/testsuite/gfortran.dg/goacc/kernels-loop-2.f95
@@ -27,7 +27,7 @@ program main
!$acc end kernels
do i = 0, n - 1
- if (c(i) .ne. a(i) + b(i)) call abort
+ if (c(i) .ne. a(i) + b(i)) STOP 1
end do
end program main
diff --git a/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-2.f95 b/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-2.f95
index ff3788a96e2..2f1dcd603a1 100644
--- a/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-2.f95
+++ b/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-2.f95
@@ -33,7 +33,7 @@ program main
!$acc end data
do i = 0, n - 1
- if (c(i) .ne. a(i) + b(i)) call abort
+ if (c(i) .ne. a(i) + b(i)) STOP 1
end do
end program main
diff --git a/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-enter-exit-2.f95 b/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-enter-exit-2.f95
index 60a5c96dac5..447e85d6448 100644
--- a/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-enter-exit-2.f95
+++ b/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-enter-exit-2.f95
@@ -33,7 +33,7 @@ program main
!$acc exit data copyout (c(0:n-1))
do i = 0, n - 1
- if (c(i) .ne. a(i) + b(i)) call abort
+ if (c(i) .ne. a(i) + b(i)) STOP 1
end do
end program main
diff --git a/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-enter-exit.f95 b/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-enter-exit.f95
index ce04749f04a..4edb2889b7b 100644
--- a/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-enter-exit.f95
+++ b/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-enter-exit.f95
@@ -31,7 +31,7 @@ program main
!$acc exit data copyout (a(0:n-1), b(0:n-1), c(0:n-1))
do i = 0, n - 1
- if (c(i) .ne. a(i) + b(i)) call abort
+ if (c(i) .ne. a(i) + b(i)) STOP 1
end do
end program main
diff --git a/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-update.f95 b/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-update.f95
index d2de1389c31..fc113e1f660 100644
--- a/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-update.f95
+++ b/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data-update.f95
@@ -31,7 +31,7 @@ program main
!$acc exit data copyout (a(0:n-1), c(0:n-1))
do i = 0, n - 1
- if (c(i) .ne. a(i) + b(i)) call abort
+ if (c(i) .ne. a(i) + b(i)) STOP 1
end do
end program main
diff --git a/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data.f95 b/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data.f95
index 92872b27ff2..94522f58636 100644
--- a/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data.f95
+++ b/gcc/testsuite/gfortran.dg/goacc/kernels-loop-data.f95
@@ -31,7 +31,7 @@ program main
!$acc end data
do i = 0, n - 1
- if (c(i) .ne. a(i) + b(i)) call abort
+ if (c(i) .ne. a(i) + b(i)) STOP 1
end do
end program main
diff --git a/gcc/testsuite/gfortran.dg/goacc/kernels-loop-n.f95 b/gcc/testsuite/gfortran.dg/goacc/kernels-loop-n.f95
index 079712f29cb..b9c4aea074d 100644
--- a/gcc/testsuite/gfortran.dg/goacc/kernels-loop-n.f95
+++ b/gcc/testsuite/gfortran.dg/goacc/kernels-loop-n.f95
@@ -24,7 +24,7 @@ contains
!$acc end kernels
do i = 0, n - 1
- if (c(i) .ne. a(i) + b(i)) call abort
+ if (c(i) .ne. a(i) + b(i)) STOP 1
end do
end subroutine foo
diff --git a/gcc/testsuite/gfortran.dg/goacc/kernels-loop.f95 b/gcc/testsuite/gfortran.dg/goacc/kernels-loop.f95
index cc9a3a9a4bd..6dc7b2e0f28 100644
--- a/gcc/testsuite/gfortran.dg/goacc/kernels-loop.f95
+++ b/gcc/testsuite/gfortran.dg/goacc/kernels-loop.f95
@@ -23,7 +23,7 @@ program main
!$acc end kernels
do i = 0, n - 1
- if (c(i) .ne. a(i) + b(i)) call abort
+ if (c(i) .ne. a(i) + b(i)) STOP 1
end do
end program main
diff --git a/gcc/testsuite/gfortran.dg/goacc/omp-fixed.f b/gcc/testsuite/gfortran.dg/goacc/omp-fixed.f
index e715673de16..c6206e71773 100644
--- a/gcc/testsuite/gfortran.dg/goacc/omp-fixed.f
+++ b/gcc/testsuite/gfortran.dg/goacc/omp-fixed.f
@@ -8,7 +8,7 @@
!$ACC PARALLEL &
!$ACC& COPYIN(ARGC) ! { dg-error "directive cannot be specified within" }
IF (ARGC .NE. 0) THEN
- CALL ABORT
+ STOP 1
END IF
!$ACC END PARALLEL
!$OMP END PARALLEL
diff --git a/gcc/testsuite/gfortran.dg/gomp/crayptr5.f90 b/gcc/testsuite/gfortran.dg/gomp/crayptr5.f90
index 5ade16c83bc..460a7d38fa0 100644
--- a/gcc/testsuite/gfortran.dg/gomp/crayptr5.f90
+++ b/gcc/testsuite/gfortran.dg/gomp/crayptr5.f90
@@ -6,7 +6,7 @@
subroutine pete(A)
real(8) :: A
print *, 'pete got ',A
- if (A /= 3.0) call abort()
+ if (A /= 3.0) STOP 1
end subroutine pete
subroutine bob()
diff --git a/gcc/testsuite/gfortran.dg/gomp/pr48794-2.f90 b/gcc/testsuite/gfortran.dg/gomp/pr48794-2.f90
index b3f9d3c9cf0..ef586a3e927 100644
--- a/gcc/testsuite/gfortran.dg/gomp/pr48794-2.f90
+++ b/gcc/testsuite/gfortran.dg/gomp/pr48794-2.f90
@@ -6,7 +6,7 @@
integer :: b(48)
logical :: l
if (allocated (a)) then
- call abort
+ STOP 1
call bla(b)
end if
!$omp parallel private (a) reduction (.or.:l)
diff --git a/gcc/testsuite/gfortran.dg/gomp/pr48794.f90 b/gcc/testsuite/gfortran.dg/gomp/pr48794.f90
index 11edb0bb498..6c5a15fa343 100644
--- a/gcc/testsuite/gfortran.dg/gomp/pr48794.f90
+++ b/gcc/testsuite/gfortran.dg/gomp/pr48794.f90
@@ -4,7 +4,7 @@
integer, allocatable :: a(:)
logical :: l
- if (allocated (a)) call abort
+ if (allocated (a)) STOP 1
!$omp parallel private (a) reduction (.or.:l)
do i = 1, 7
end do
diff --git a/gcc/testsuite/gfortran.dg/gomp/pr72744.f90 b/gcc/testsuite/gfortran.dg/gomp/pr72744.f90
index e321b6752f9..007bf0e6d56 100644
--- a/gcc/testsuite/gfortran.dg/gomp/pr72744.f90
+++ b/gcc/testsuite/gfortran.dg/gomp/pr72744.f90
@@ -8,7 +8,7 @@ program pr72744
z = [(i, i=1,n)]
h = [(i, i=n,1,-1)]
call sub (n, h)
- if ( any(h/=z) ) call abort
+ if ( any(h/=z) ) STOP 1
end
subroutine sub (n, x)
integer :: n, x(n)
diff --git a/gcc/testsuite/gfortran.dg/gomp/pr77665.f90 b/gcc/testsuite/gfortran.dg/gomp/pr77665.f90
index 50183cbce6d..eb9843d2fe6 100644
--- a/gcc/testsuite/gfortran.dg/gomp/pr77665.f90
+++ b/gcc/testsuite/gfortran.dg/gomp/pr77665.f90
@@ -11,7 +11,7 @@ program pr77665
!$omp declare reduction (+:t: omp_out%a = omp_out%a + omp_in%a)
!$omp simd reduction(+:x)
do i = 1, 8
- if (abs(i) < 5) call abort
+ if (abs(i) < 5) STOP 1
x%a = x%a + 1
end do
print *, x%a
diff --git a/gcc/testsuite/gfortran.dg/gomp/workshare2.f90 b/gcc/testsuite/gfortran.dg/gomp/workshare2.f90
index 9260a5b9b1e..5d784a0fbe3 100644
--- a/gcc/testsuite/gfortran.dg/gomp/workshare2.f90
+++ b/gcc/testsuite/gfortran.dg/gomp/workshare2.f90
@@ -28,7 +28,7 @@ program foo
do j=1,n
if (abs(a(j)-c(j)) > eps) then
print *,1,j,a(j), c(j)
- call abort
+ STOP 1
end if
end do
@@ -44,7 +44,7 @@ program foo
do j=1,n
if (abs(a(j)-c(j)) > eps) then
print *,2,j,a(j), c(j)
- call abort
+ STOP 2
end if
end do
diff --git a/gcc/testsuite/gfortran.dg/gomp/workshare3.f90 b/gcc/testsuite/gfortran.dg/gomp/workshare3.f90
index 111959ba6bd..a10c48277db 100644
--- a/gcc/testsuite/gfortran.dg/gomp/workshare3.f90
+++ b/gcc/testsuite/gfortran.dg/gomp/workshare3.f90
@@ -30,7 +30,7 @@ program foo
do j=1,n
if (abs(a(j)-c(j)) > eps) then
print *,1,j,a(j), c(j)
- call abort
+ STOP 1
end if
end do
diff --git a/gcc/testsuite/gfortran.dg/goto_1.f b/gcc/testsuite/gfortran.dg/goto_1.f
index 11b7c535f10..729fecdf946 100644
--- a/gcc/testsuite/gfortran.dg/goto_1.f
+++ b/gcc/testsuite/gfortran.dg/goto_1.f
@@ -5,11 +5,11 @@
I = 1
GO TO 2
IF (I .EQ. 0) THEN
- 2 IF (I .NE. 1) CALL ABORT
+ 2 IF (I .NE. 1) STOP 1
I = 0
GOTO 3
ELSE
3 I = 2
END IF
- IF (I .NE. 2) CALL ABORT
+ IF (I .NE. 2) STOP 2
END
diff --git a/gcc/testsuite/gfortran.dg/goto_2.f90 b/gcc/testsuite/gfortran.dg/goto_2.f90
index fc5e8d83008..4910e2d58ba 100644
--- a/gcc/testsuite/gfortran.dg/goto_2.f90
+++ b/gcc/testsuite/gfortran.dg/goto_2.f90
@@ -53,7 +53,7 @@
i = 0
call check_if (i)
- if (i /= 2) call abort ()
+ if (i /= 2) STOP 1
call check_select (i)
- if (i /= 2) call abort ()
+ if (i /= 2) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/goto_4.f90 b/gcc/testsuite/gfortran.dg/goto_4.f90
index 7340814cc01..06ad5aa34e1 100644
--- a/gcc/testsuite/gfortran.dg/goto_4.f90
+++ b/gcc/testsuite/gfortran.dg/goto_4.f90
@@ -7,5 +7,5 @@
if(i == 2) goto 10
j = j+1
10 enddo
- if (j/=2) call abort
+ if (j/=2) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/goto_6.f b/gcc/testsuite/gfortran.dg/goto_6.f
index 5b054b636bc..71f69424209 100644
--- a/gcc/testsuite/gfortran.dg/goto_6.f
+++ b/gcc/testsuite/gfortran.dg/goto_6.f
@@ -20,5 +20,5 @@
GO TO 1271
21260 IVFAIL = IVFAIL + 1
1271 CONTINUE
- IF (IVFAIL /= 0) CALL abort ()
+ IF (IVFAIL /= 0) STOP 1
END
diff --git a/gcc/testsuite/gfortran.dg/graphite/id-26.f03 b/gcc/testsuite/gfortran.dg/graphite/id-26.f03
index c22cb169015..b8fa125359b 100644
--- a/gcc/testsuite/gfortran.dg/graphite/id-26.f03
+++ b/gcc/testsuite/gfortran.dg/graphite/id-26.f03
@@ -41,12 +41,12 @@
end do
call foo (p, q, c_loc (r(1)), s)
do i = 1, 1024
- if (p(i) /= i * i + 3 * i + 2) call abort
+ if (p(i) /= i * i + 3 * i + 2) STOP 1
p(i) = i
end do
call bar (p, q, c_loc (r(1)), s)
do i = 1, 1024
- if (p(i) /= i * i + 3 * i + 2) call abort
+ if (p(i) /= i * i + 3 * i + 2) STOP 2
end do
! Attempt to create 64-byte aligned allocatable
do i = 1, 64
@@ -64,7 +64,7 @@
end do
call baz (p, c)
do i = 1, 1024
- if (p(i) /= i * i + 5 * i + 2) call abort
+ if (p(i) /= i * i + 5 * i + 2) STOP 3
end do
end if
end
diff --git a/gcc/testsuite/gfortran.dg/graphite/id-pr45370.f90 b/gcc/testsuite/gfortran.dg/graphite/id-pr45370.f90
index 94eebd1f8a5..8cd9d2e6434 100644
--- a/gcc/testsuite/gfortran.dg/graphite/id-pr45370.f90
+++ b/gcc/testsuite/gfortran.dg/graphite/id-pr45370.f90
@@ -33,60 +33,60 @@
ptr => tar1%i
ptr = ptr + 1 ! check the scalarizer is OK
- if (any (ptr .ne. (/3, 5/))) call abort ()
- if (any ((/ptr(1), ptr(2)/) .ne. (/3, 5/))) call abort ()
- if (any (tar1%i .ne. (/3, 5/))) call abort ()
+ if (any (ptr .ne. (/3, 5/))) STOP 1
+ if (any ((/ptr(1), ptr(2)/) .ne. (/3, 5/))) STOP 2
+ if (any (tar1%i .ne. (/3, 5/))) STOP 3
! Make sure that the other components are not touched.
- if (any (tar1%r .ne. (/1.0, 3.0/))) call abort ()
- if (any (tar1%chr .ne. (/"abc", "efg"/))) call abort ()
+ if (any (tar1%r .ne. (/1.0, 3.0/))) STOP 4
+ if (any (tar1%chr .ne. (/"abc", "efg"/))) STOP 5
! Check that the pointer is passed correctly as an actual argument.
call foo (ptr)
- if (any (tar1%i .ne. (/2, 4/))) call abort ()
+ if (any (tar1%i .ne. (/2, 4/))) STOP 6
! And that dummy pointers are OK too.
call bar (ptr)
- if (any (tar1%i .ne. (/101, 103/))) call abort ()
+ if (any (tar1%i .ne. (/101, 103/))) STOP 7
!_______________substring subreference___________
ptr2 => tar2(:)(2:3)
ptr2 = ptr2(:)(2:2)//"z" ! again, check the scalarizer
- if (any (ptr2 .ne. (/"cz", "gz"/))) call abort ()
- if (any ((/ptr2(1), ptr2(2)/) .ne. (/"cz", "gz"/))) call abort ()
- if (any (tar2 .ne. (/"aczd", "egzh"/))) call abort ()
+ if (any (ptr2 .ne. (/"cz", "gz"/))) STOP 8
+ if (any ((/ptr2(1), ptr2(2)/) .ne. (/"cz", "gz"/))) STOP 9
+ if (any (tar2 .ne. (/"aczd", "egzh"/))) STOP 10
!_______________substring component subreference___________
ptr2 => tar1(:)%chr(1:2)
ptr2 = ptr2(:)(2:2)//"q" ! yet again, check the scalarizer
- if (any (ptr2 .ne. (/"bq","fq"/))) call abort ()
- if (any (tar1%chr .ne. (/"bqc","fqg"/))) call abort ()
+ if (any (ptr2 .ne. (/"bq","fq"/))) STOP 11
+ if (any (tar1%chr .ne. (/"bqc","fqg"/))) STOP 12
!_______________trailing array element subreference___________
ptr3 => tar5%r(1,2)
ptr3 = (/99.0, 999.0/)
- if (any (tar5(1)%r .ne. reshape ((/1.0,2.0,99.0,4.0/), sh))) call abort ()
- if (any (tar5(2)%r .ne. reshape ((/5.0,6.0,999.0,8.0/), sh))) call abort ()
+ if (any (tar5(1)%r .ne. reshape ((/1.0,2.0,99.0,4.0/), sh))) STOP 13
+ if (any (tar5(2)%r .ne. reshape ((/5.0,6.0,999.0,8.0/), sh))) STOP 14
!_______________forall assignment___________
ptr2 => tar2(:)(1:2)
forall (i = 1:2) ptr2(i)(1:1) = "z"
- if (any (tar2 .ne. (/"zczd", "zgzh"/))) call abort ()
+ if (any (tar2 .ne. (/"zczd", "zgzh"/))) STOP 15
!_______________something more complicated___________
tar3%t => tar1
ptr3 => tar3%t%r
ptr3 = cos (ptr3)
- if (any (abs(ptr3 - (/cos(1.0_4), cos(3.0_4)/)) >= epsilon(1.0_4))) call abort ()
+ if (any (abs(ptr3 - (/cos(1.0_4), cos(3.0_4)/)) >= epsilon(1.0_4))) STOP 16
ptr2 => tar3%t(:)%chr(2:3)
ptr2 = " x"
- if (any (tar1%chr .ne. (/"b x", "f x"/))) call abort ()
+ if (any (tar1%chr .ne. (/"b x", "f x"/))) STOP 17
!_______________check non-subref works still___________
ptr2 => tar4
- if (any (ptr2 .ne. (/"ab","cd"/))) call abort ()
+ if (any (ptr2 .ne. (/"ab","cd"/))) STOP 18
contains
subroutine foo (arg)
diff --git a/gcc/testsuite/gfortran.dg/graphite/pr29581.f90 b/gcc/testsuite/gfortran.dg/graphite/pr29581.f90
index bfcb860215a..3359ef23d59 100644
--- a/gcc/testsuite/gfortran.dg/graphite/pr29581.f90
+++ b/gcc/testsuite/gfortran.dg/graphite/pr29581.f90
@@ -22,7 +22,7 @@
INTEGER A(5,5)
COMMON A
CALL FOO (2)
- IF (A(1,1).NE.8) CALL ABORT
+ IF (A(1,1).NE.8) STOP 1
A(1,1) = 0
- IF (ANY(A.NE.0)) CALL ABORT
+ IF (ANY(A.NE.0)) STOP 2
END
diff --git a/gcc/testsuite/gfortran.dg/graphite/pr29832.f90 b/gcc/testsuite/gfortran.dg/graphite/pr29832.f90
index f98a7d36f35..aea1d5f1381 100644
--- a/gcc/testsuite/gfortran.dg/graphite/pr29832.f90
+++ b/gcc/testsuite/gfortran.dg/graphite/pr29832.f90
@@ -20,7 +20,7 @@ program testarray
a(:, 2:4) = a(:, 1:3)
do n = 1, 5
- if (a(n, 3) .ne. (n + 1)) call abort
- if (b(4, n) .ne. (6 - n)) call abort
+ if (a(n, 3) .ne. (n + 1)) STOP 1
+ if (b(4, n) .ne. (6 - n)) STOP 2
end do
end program
diff --git a/gcc/testsuite/gfortran.dg/graphite/run-id-1.f b/gcc/testsuite/gfortran.dg/graphite/run-id-1.f
index 521d268f37a..cf00dbd00a1 100644
--- a/gcc/testsuite/gfortran.dg/graphite/run-id-1.f
+++ b/gcc/testsuite/gfortran.dg/graphite/run-id-1.f
@@ -41,7 +41,7 @@
end if
if (w1(1,1).ne.21.0d0) then
- call abort()
+ STOP 1
end if
end
diff --git a/gcc/testsuite/gfortran.dg/graphite/run-id-2.f90 b/gcc/testsuite/gfortran.dg/graphite/run-id-2.f90
index c4fa1d06141..d250d57dd34 100644
--- a/gcc/testsuite/gfortran.dg/graphite/run-id-2.f90
+++ b/gcc/testsuite/gfortran.dg/graphite/run-id-2.f90
@@ -7,7 +7,7 @@
(/1.0D0,0.0D0,0.0D0/),&
(/1.0D0,0.0D0,0.0D0/),&
1.0D0,1.0D0,1.0D0,1.0D0)
- if (res.ne.1.0d0) call abort()
+ if (res.ne.1.0d0) STOP 1
CONTAINS
diff --git a/gcc/testsuite/gfortran.dg/graphite/run-id-3.f90 b/gcc/testsuite/gfortran.dg/graphite/run-id-3.f90
index ab16a44b949..d9267ce3477 100644
--- a/gcc/testsuite/gfortran.dg/graphite/run-id-3.f90
+++ b/gcc/testsuite/gfortran.dg/graphite/run-id-3.f90
@@ -9,5 +9,5 @@
s = 2.0
m = 4
res = SUM([(s**(REAL(k-1)/REAL(m-1)),k=1,m)])
- if (abs(res - 5.84732246) > 1e-6) call abort
+ if (abs(res - 5.84732246) > 1e-6) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/hollerith.f90 b/gcc/testsuite/gfortran.dg/hollerith.f90
index 697ed22d892..7a4fb736018 100644
--- a/gcc/testsuite/gfortran.dg/hollerith.f90
+++ b/gcc/testsuite/gfortran.dg/hollerith.f90
@@ -23,31 +23,31 @@ i = 4hHell
j = 4Ho wo
r = 4Hrld!
write (line, '(3A4)') i, j, r
-if (line .ne. 'Hello world!') call abort
+if (line .ne. 'Hello world!') STOP 1
i = 2Hab
j = 2Hab
r = 2Hab
c = 2Hab
write (line, '(3A4, 8A)') i, j, r, c
-if (line .ne. 'ab ab ab ab ') call abort
+if (line .ne. 'ab ab ab ab ') STOP 2
write(line, '(4A8, "!")' ) x
-if (line .ne. 'abcdefghijklmnopqrstuvwxyz012345!') call abort
+if (line .ne. 'abcdefghijklmnopqrstuvwxyz012345!') STOP 3
write (line, a) 3
-if (line .ne. ' 3') call abort
+if (line .ne. ' 3') STOP 4
write (line, a (1,2)) 4
-if (line .ne. ' 4') call abort
+if (line .ne. ' 4') STOP 5
write (line, z) 5
-if (line .ne. ' 5') call abort
+if (line .ne. ' 5') STOP 6
write (line, z1) 6
-if (line .ne. ' 6') call abort
+if (line .ne. ' 6') STOP 7
write (line, z2) 7
-if (line .ne. ' 7') call abort
+if (line .ne. ' 7') STOP 8
write (line, z2 (1,2)) 8
-if (line .ne. ' 8') call abort
+if (line .ne. ' 8') STOP 9
write (line, '(16A)') z2
-if (line .ne. '(i7)xxxx(i8)xxxx') call abort
+if (line .ne. '(i7)xxxx(i8)xxxx') STOP 10
call test (8h hello)
end
@@ -56,7 +56,7 @@ integer(kind=8) h
character(80) line
write (line, '(8a)') h
-if (line .ne. ' hello') call abort
+if (line .ne. ' hello') STOP 11
end subroutine
! { dg-warning "Hollerith constant" "const" { target *-*-* } 15 }
diff --git a/gcc/testsuite/gfortran.dg/hollerith4.f90 b/gcc/testsuite/gfortran.dg/hollerith4.f90
index bd2b411f3b1..ded3c636483 100644
--- a/gcc/testsuite/gfortran.dg/hollerith4.f90
+++ b/gcc/testsuite/gfortran.dg/hollerith4.f90
@@ -10,16 +10,16 @@ c(1,1) = 4H(A4)
c(1,2) = 4H(A5)
write (ch, "(2A4)") c
-if (ch .ne. "(A4)(A5)") call abort()
+if (ch .ne. "(A4)(A5)") STOP 1
write (ch, c) 'Hello'
-if (ch .ne. "Hell") call abort()
+if (ch .ne. "Hell") STOP 2
write (ch, c (1,2)) 'Hello'
-if (ch .ne. "Hello") call abort()
+if (ch .ne. "Hello") STOP 3
write (ch, *) 5Hhello
-if (ch .ne. " hello") call abort()
+if (ch .ne. " hello") STOP 4
write (ch, "(A5)") 5Hhello
-if (ch .ne. "hello") call abort()
+if (ch .ne. "hello") STOP 5
end
diff --git a/gcc/testsuite/gfortran.dg/hollerith6.f90 b/gcc/testsuite/gfortran.dg/hollerith6.f90
index 93e857dd511..2464f5640cc 100644
--- a/gcc/testsuite/gfortran.dg/hollerith6.f90
+++ b/gcc/testsuite/gfortran.dg/hollerith6.f90
@@ -5,7 +5,7 @@ subroutine foo (a)
integer(kind=4) :: a(1, 3)
character(len=40) :: t
write (t, fmt=a(1,2)) 1, 2, 3, 4, 5, 6, 7, 8
- if (t .ne. ' 1 2 3 4 5 6 7 8') call abort
+ if (t .ne. ' 1 2 3 4 5 6 7 8') STOP 1
end subroutine foo
interface
subroutine foo (a)
@@ -18,7 +18,7 @@ end subroutine foo
b(1,2) = 4H (8I
b(1,3) = 2H4)
write (t, fmt=b(1,2)) 1, 2, 3, 4, 5, 6, 7, 8
- if (t .ne. ' 1 2 3 4 5 6 7 8') call abort
+ if (t .ne. ' 1 2 3 4 5 6 7 8') STOP 2
call foo (b)
end
diff --git a/gcc/testsuite/gfortran.dg/hollerith8.f90 b/gcc/testsuite/gfortran.dg/hollerith8.f90
index 65cb681cb13..b9f25d05a71 100644
--- a/gcc/testsuite/gfortran.dg/hollerith8.f90
+++ b/gcc/testsuite/gfortran.dg/hollerith8.f90
@@ -19,7 +19,7 @@ subroutine wrtout (iarray, nchrs)
nwrds = (nchrs + icpw - 1) /icpw
write(outstr,'(4(z8," "))') (iarray(i), i=1,nwrds)
if (outstr.ne."4C4C4548 4F59204F 20202055" .and. &
- & outstr.ne."48454C4C 4F20594F 55202020") call abort
+ & outstr.ne."48454C4C 4F20594F 55202020") STOP 1
return
end
! { dg-warning "Hollerith constant" "" { target *-*-* } 6 }
diff --git a/gcc/testsuite/gfortran.dg/hollerith_1.f90 b/gcc/testsuite/gfortran.dg/hollerith_1.f90
index 829ca7f99c2..fc163d83f37 100644
--- a/gcc/testsuite/gfortran.dg/hollerith_1.f90
+++ b/gcc/testsuite/gfortran.dg/hollerith_1.f90
@@ -8,6 +8,6 @@
write(c,8000)
8000 format(36(2H!)))
do i = 1,72,2
- if (c(i:i+1) /= '!)') call abort
+ if (c(i:i+1) /= '!)') STOP 1
end do
end
diff --git a/gcc/testsuite/gfortran.dg/hollerith_character_array_constructor.f90 b/gcc/testsuite/gfortran.dg/hollerith_character_array_constructor.f90
index 086d46efc2e..469262242be 100644
--- a/gcc/testsuite/gfortran.dg/hollerith_character_array_constructor.f90
+++ b/gcc/testsuite/gfortran.dg/hollerith_character_array_constructor.f90
@@ -4,8 +4,8 @@
! Original code contributed by Gerhard Steinmetz
program p
character :: c(4) = [1h(, 1hi, 1h4, 1h)]
- if (c(1) /= '(') call abort
- if (c(2) /= 'i') call abort
- if (c(3) /= '4') call abort
- if (c(4) /= ')') call abort
+ if (c(1) /= '(') STOP 1
+ if (c(2) /= 'i') STOP 2
+ if (c(3) /= '4') STOP 3
+ if (c(4) /= ')') STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/hollerith_f95.f90 b/gcc/testsuite/gfortran.dg/hollerith_f95.f90
index dc52187adb9..7202ca3d975 100644
--- a/gcc/testsuite/gfortran.dg/hollerith_f95.f90
+++ b/gcc/testsuite/gfortran.dg/hollerith_f95.f90
@@ -1,5 +1,5 @@
! { dg-do compile }
-! { dg-options "-fall-intrinsics -std=f95" }
+! { dg-options " -std=f95" }
! PR15966, PR18781 & PR16531
implicit none
complex(kind=8) x(2)
@@ -24,31 +24,31 @@ i = 4hHell
l = 4Ho wo
r = 4Hrld!
write (line, '(3A4)') i, l, r
-if (line .ne. 'Hello world!') call abort
+if (line .ne. 'Hello world!') STOP 1
i = 2Hab
r = 2Hab
l = 2Hab
c = 2Hab
write (line, '(3A4, 8A)') i, l, r, c
-if (line .ne. 'ab ab ab ab ') call abort
+if (line .ne. 'ab ab ab ab ') STOP 2
write(line, '(4A8, "!")' ) x
-if (line .ne. 'abcdefghijklmnopqrstuvwxyz012345!') call abort
+if (line .ne. 'abcdefghijklmnopqrstuvwxyz012345!') STOP 3
write (line, a) 3
-if (line .ne. ' 3') call abort
+if (line .ne. ' 3') STOP 4
write (line, a (1,2)) 4
-if (line .ne. ' 4') call abort
+if (line .ne. ' 4') STOP 5
write (line, z) 5
-if (line .ne. ' 5') call abort
+if (line .ne. ' 5') STOP 6
write (line, z1) 6
-if (line .ne. ' 6') call abort
+if (line .ne. ' 6') STOP 7
write (line, z2) 7
-if (line .ne. ' 7') call abort
+if (line .ne. ' 7') STOP 8
write (line, z2 (1,2)) 8
-if (line .ne. ' 8') call abort
+if (line .ne. ' 8') STOP 9
write (line, '(16A)') z2
-if (line .ne. '(i7)xxxx(i8)xxxx') call abort
+if (line .ne. '(i7)xxxx(i8)xxxx') STOP 10
call test (8h hello)
end
@@ -57,7 +57,7 @@ integer(kind=8) h
character(80) line
write (line, '(8a)') h
-if (line .ne. ' hello') call abort
+if (line .ne. ' hello') STOP 11
end subroutine
! { dg-error "Hollerith constant" "const" { target *-*-* } 16 }
diff --git a/gcc/testsuite/gfortran.dg/hollerith_legacy.f90 b/gcc/testsuite/gfortran.dg/hollerith_legacy.f90
index 1bbaf3f68f9..c3322498345 100644
--- a/gcc/testsuite/gfortran.dg/hollerith_legacy.f90
+++ b/gcc/testsuite/gfortran.dg/hollerith_legacy.f90
@@ -24,31 +24,31 @@ i = 4hHell
l = 4Ho wo ! { dg-warning "has undefined result" }
r = 4Hrld!
write (line, '(3A4)') i, l, r
-if (line .ne. 'Hello world!') call abort
+if (line .ne. 'Hello world!') STOP 1
i = 2Hab
r = 2Hab
l = 2Hab ! { dg-warning "has undefined result" }
c = 2Hab
write (line, '(3A4, 8A)') i, l, r, c
-if (line .ne. 'ab ab ab ab ') call abort
+if (line .ne. 'ab ab ab ab ') STOP 2
write(line, '(4A8, "!")' ) x
-if (line .ne. 'abcdefghijklmnopqrstuvwxyz012345!') call abort
+if (line .ne. 'abcdefghijklmnopqrstuvwxyz012345!') STOP 3
write (line, a) 3
-if (line .ne. ' 3') call abort
+if (line .ne. ' 3') STOP 4
write (line, a (1,2)) 4
-if (line .ne. ' 4') call abort
+if (line .ne. ' 4') STOP 5
write (line, z) 5
-if (line .ne. ' 5') call abort
+if (line .ne. ' 5') STOP 6
write (line, z1) 6
-if (line .ne. ' 6') call abort
+if (line .ne. ' 6') STOP 7
write (line, z2) 7
-if (line .ne. ' 7') call abort
+if (line .ne. ' 7') STOP 8
write (line, z2 (1,2)) 8
-if (line .ne. ' 8') call abort
+if (line .ne. ' 8') STOP 9
write (line, '(16A)') z2
-if (line .ne. '(i7)xxxx(i8)xxxx') call abort
+if (line .ne. '(i7)xxxx(i8)xxxx') STOP 10
call test (8h hello)
end
@@ -57,5 +57,5 @@ integer(kind=8) h
character*80 line
write (line, '(8a)') h
-if (line .ne. ' hello') call abort
+if (line .ne. ' hello') STOP 11
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/host_assoc_call_3.f90 b/gcc/testsuite/gfortran.dg/host_assoc_call_3.f90
index 49dff0c5f61..d6fe1b9e998 100644
--- a/gcc/testsuite/gfortran.dg/host_assoc_call_3.f90
+++ b/gcc/testsuite/gfortran.dg/host_assoc_call_3.f90
@@ -24,9 +24,9 @@ CONTAINS
SUBROUTINE S3
integer :: check = 0
CALL putaline()
- if (check .ne. 1) call abort
+ if (check .ne. 1) STOP 1
CALL putaline("xx")
- if (check .ne. 2) call abort
+ if (check .ne. 2) STOP 2
! CALL putaline(1.0) ! => this now causes an error, as it should
CONTAINS
SUBROUTINE putaline(x)
@@ -42,9 +42,9 @@ CONTAINS
integer :: check = 0
REAL :: rcheck = 0.0
call putaline(check)
- if (check .ne. 3) call abort
+ if (check .ne. 3) STOP 3
call putaline(rcheck)
- if (rcheck .ne. 4.0) call abort
+ if (rcheck .ne. 4.0) STOP 4
end subroutine s4
END MODULE
diff --git a/gcc/testsuite/gfortran.dg/host_assoc_function_1.f90 b/gcc/testsuite/gfortran.dg/host_assoc_function_1.f90
index dffaa93333a..f0e0bb9198b 100644
--- a/gcc/testsuite/gfortran.dg/host_assoc_function_1.f90
+++ b/gcc/testsuite/gfortran.dg/host_assoc_function_1.f90
@@ -19,14 +19,14 @@ MODULE m
end interface
CONTAINS
SUBROUTINE s
- if (x(2, 3) .ne. real (2)**3) call abort ()
- if (z(3, 3) .ne. real (3)**3) call abort ()
+ if (x(2, 3) .ne. real (2)**3) STOP 1
+ if (z(3, 3) .ne. real (3)**3) STOP 2
CALL inner
CONTAINS
SUBROUTINE inner
i = 7
- if (x(i, 7) .ne. real (7)**7) call abort ()
- if (z(i, 7) .ne. real (7)**7) call abort ()
+ if (x(i, 7) .ne. real (7)**7) STOP 3
+ if (z(i, 7) .ne. real (7)**7) STOP 4
END SUBROUTINE
FUNCTION x(n, m)
x = REAL(n)**m
diff --git a/gcc/testsuite/gfortran.dg/host_assoc_function_3.f90 b/gcc/testsuite/gfortran.dg/host_assoc_function_3.f90
index cebe646fa58..cb898bc48ec 100644
--- a/gcc/testsuite/gfortran.dg/host_assoc_function_3.f90
+++ b/gcc/testsuite/gfortran.dg/host_assoc_function_3.f90
@@ -9,7 +9,7 @@ MODULE m
REAL :: x(3) = (/ 1.5, 2.5, 3.5 /)
CONTAINS
SUBROUTINE s
- if (x(2) .eq. 2.5) call abort ()
+ if (x(2) .eq. 2.5) STOP 1
CONTAINS
FUNCTION x(n, m)
integer, optional :: m
diff --git a/gcc/testsuite/gfortran.dg/host_assoc_function_4.f90 b/gcc/testsuite/gfortran.dg/host_assoc_function_4.f90
index 46fb5f80062..7178cc980cb 100644
--- a/gcc/testsuite/gfortran.dg/host_assoc_function_4.f90
+++ b/gcc/testsuite/gfortran.dg/host_assoc_function_4.f90
@@ -16,7 +16,7 @@ MODULE M2
USE M1
CONTAINS
SUBROUTINE S2
- if (s1 () .ne. 1) call abort
+ if (s1 () .ne. 1) STOP 1
CONTAINS
integer function S1 ()
s1 = 1
diff --git a/gcc/testsuite/gfortran.dg/host_assoc_function_9.f90 b/gcc/testsuite/gfortran.dg/host_assoc_function_9.f90
index 1bdd6e842a5..8447109012e 100644
--- a/gcc/testsuite/gfortran.dg/host_assoc_function_9.f90
+++ b/gcc/testsuite/gfortran.dg/host_assoc_function_9.f90
@@ -14,14 +14,14 @@ CONTAINS
CONTAINS
SUBROUTINE upper
y = x(3,1)
- if (int(y) .ne. 3) call abort
+ if (int(y) .ne. 3) STOP 1
END SUBROUTINE
FUNCTION x(n, m)
x = m*n
END FUNCTION
SUBROUTINE lower
y = x(2,1)
- if (int(y) .ne. 2) call abort
+ if (int(y) .ne. 2) STOP 2
END SUBROUTINE
END SUBROUTINE
END MODULE
diff --git a/gcc/testsuite/gfortran.dg/host_dummy_index_1.f90 b/gcc/testsuite/gfortran.dg/host_dummy_index_1.f90
index 62080f940f7..c67a0b82108 100644
--- a/gcc/testsuite/gfortran.dg/host_dummy_index_1.f90
+++ b/gcc/testsuite/gfortran.dg/host_dummy_index_1.f90
@@ -13,8 +13,8 @@ PROGRAM TST
CALL S(A)
CALL T(A)
CALL U(A)
- if ( ALL(A.ne.(/2,2,3,4/))) CALL ABORT ()
- if ( ALL(F().ne.(/2.0,2.0/))) CALL ABORT()
+ if ( ALL(A.ne.(/2,2,3,4/))) STOP 1
+ if ( ALL(F().ne.(/2.0,2.0/))) STOP 2
CONTAINS
SUBROUTINE S(A)
diff --git a/gcc/testsuite/gfortran.dg/hypot_1.f90 b/gcc/testsuite/gfortran.dg/hypot_1.f90
index 59022fab93c..74d8bb6d37d 100644
--- a/gcc/testsuite/gfortran.dg/hypot_1.f90
+++ b/gcc/testsuite/gfortran.dg/hypot_1.f90
@@ -20,10 +20,10 @@ program test
contains
subroutine check_r4 (a, b)
real(kind=4), intent(in) :: a, b
- if (abs(a - b) > 1.e-5 * abs(b)) call abort
+ if (abs(a - b) > 1.e-5 * abs(b)) STOP 1
end subroutine
subroutine check_r8 (a, b)
real(kind=8), intent(in) :: a, b
- if (abs(a - b) > 1.e-7 * abs(b)) call abort
+ if (abs(a - b) > 1.e-7 * abs(b)) STOP 2
end subroutine
end program test
diff --git a/gcc/testsuite/gfortran.dg/iall_iany_iparity_1.f90 b/gcc/testsuite/gfortran.dg/iall_iany_iparity_1.f90
index 35b4e168e77..3a9454865a6 100644
--- a/gcc/testsuite/gfortran.dg/iall_iany_iparity_1.f90
+++ b/gcc/testsuite/gfortran.dg/iall_iany_iparity_1.f90
@@ -8,19 +8,19 @@ integer :: a(2,1)
a(1,1) = 35
a(2,1) = -74
-if (iand(a(1,1),a(2,1)) /= iall(a)) call abort ()
-if (iand(a(1,1),a(2,1)) /= iall(array=[35, -74])) call abort ()
-if (any (iand(a(1,1),a(2,1)) /= iall(a,dim=1))) call abort ()
-if (iand(a(1,1),a(2,1)) /= iall(dim=1,mask=[.true.,.true.],array=[35, -74])) call abort ()
+if (iand(a(1,1),a(2,1)) /= iall(a)) STOP 1
+if (iand(a(1,1),a(2,1)) /= iall(array=[35, -74])) STOP 2
+if (any (iand(a(1,1),a(2,1)) /= iall(a,dim=1))) STOP 3
+if (iand(a(1,1),a(2,1)) /= iall(dim=1,mask=[.true.,.true.],array=[35, -74])) STOP 4
-if (ior(a(1,1),a(2,1)) /= iany(a)) call abort ()
-if (ior(a(1,1),a(2,1)) /= iany(array=[35, -74])) call abort ()
-if (any (ior(a(1,1),a(2,1)) /= iany(a,dim=1))) call abort ()
-if (ior(a(1,1),a(2,1)) /= iany(dim=1,mask=[.true.,.true.],array=[35, -74])) call abort ()
+if (ior(a(1,1),a(2,1)) /= iany(a)) STOP 5
+if (ior(a(1,1),a(2,1)) /= iany(array=[35, -74])) STOP 6
+if (any (ior(a(1,1),a(2,1)) /= iany(a,dim=1))) STOP 7
+if (ior(a(1,1),a(2,1)) /= iany(dim=1,mask=[.true.,.true.],array=[35, -74])) STOP 8
-if (ieor(a(1,1),a(2,1)) /= iparity(a)) call abort ()
-if (ieor(a(1,1),a(2,1)) /= iparity(array=[35, -74])) call abort ()
-if (any (ieor(a(1,1),a(2,1)) /= iparity(a,dim=1))) call abort ()
-if (ieor(a(1,1),a(2,1)) /= iparity(dim=1,mask=[.true.,.true.],array=[35, -74])) call abort ()
+if (ieor(a(1,1),a(2,1)) /= iparity(a)) STOP 9
+if (ieor(a(1,1),a(2,1)) /= iparity(array=[35, -74])) STOP 10
+if (any (ieor(a(1,1),a(2,1)) /= iparity(a,dim=1))) STOP 11
+if (ieor(a(1,1),a(2,1)) /= iparity(dim=1,mask=[.true.,.true.],array=[35, -74])) STOP 12
end
diff --git a/gcc/testsuite/gfortran.dg/iargc.f90 b/gcc/testsuite/gfortran.dg/iargc.f90
index a91e9003ac6..c2b9ad80f6d 100644
--- a/gcc/testsuite/gfortran.dg/iargc.f90
+++ b/gcc/testsuite/gfortran.dg/iargc.f90
@@ -1,6 +1,6 @@
! { dg-do compile }
-! { dg-options "-fall-intrinsics -std=f95" }
+! { dg-options " -std=f95" }
! PR fortran/20248
program z
- if (iargc() /= 0) call abort
+ if (iargc() /= 0) STOP 1
end program z
diff --git a/gcc/testsuite/gfortran.dg/ibits.f90 b/gcc/testsuite/gfortran.dg/ibits.f90
index 9233b97a37a..780c8e67e55 100644
--- a/gcc/testsuite/gfortran.dg/ibits.f90
+++ b/gcc/testsuite/gfortran.dg/ibits.f90
@@ -9,7 +9,7 @@ program ibits_test
j = ishft(j,1) + 1
k = ibits(j, 0, 32)
m = iand(j,n)
- if (k /= m) call abort
+ if (k /= m) STOP 1
end do
end program ibits_test
diff --git a/gcc/testsuite/gfortran.dg/ichar_1.f90 b/gcc/testsuite/gfortran.dg/ichar_1.f90
index dea146e776f..3a36ef0235f 100644
--- a/gcc/testsuite/gfortran.dg/ichar_1.f90
+++ b/gcc/testsuite/gfortran.dg/ichar_1.f90
@@ -34,16 +34,16 @@ program ichar_1
type(derivedtype) :: dt
type(derivedtype1) :: dt1
- if (ichar(c(3:3)) /= 97) call abort
- if (ichar(c(:1)) /= 97) call abort
- if (ichar(c(j:j)) /= 98) call abort
- if (ichar(s1) /= 101) call abort
- if (ichar('f') /= 102) call abort
+ if (ichar(c(3:3)) /= 97) STOP 1
+ if (ichar(c(:1)) /= 97) STOP 2
+ if (ichar(c(j:j)) /= 98) STOP 3
+ if (ichar(s1) /= 101) STOP 4
+ if (ichar('f') /= 102) STOP 5
g1(1) = 'a'
- if (ichar(g1(1)) /= 97) call abort
- if (ichar(g1(1)(:)) /= 97) call abort
+ if (ichar(g1(1)) /= 97) STOP 6
+ if (ichar(g1(1)(:)) /= 97) STOP 7
g2(1,1) = 'a'
- if (ichar(g2(1,1)) /= 97) call abort
+ if (ichar(g2(1,1)) /= 97) STOP 8
i = ichar(c) ! { dg-error "must be of length one" }
i = ichar(c(:)) ! { dg-error "must be of length one" }
@@ -55,7 +55,7 @@ program ichar_1
! ichar and iachar use the same checking routines. DO a couple of tests to
! make sure it's not totally broken.
- if (ichar(c(3:3)) /= 97) call abort
+ if (ichar(c(3:3)) /= 97) STOP 9
i = ichar(c) ! { dg-error "must be of length one" }
i = ichar(dt%addr(1:1))
diff --git a/gcc/testsuite/gfortran.dg/ichar_2.f90 b/gcc/testsuite/gfortran.dg/ichar_2.f90
index 27b9ffcc401..014ab7d5af6 100644
--- a/gcc/testsuite/gfortran.dg/ichar_2.f90
+++ b/gcc/testsuite/gfortran.dg/ichar_2.f90
@@ -3,14 +3,14 @@
Program test
integer i
-if (ichar (char (0)) .ne. 0) call abort ()
-if (ichar (char (255)) .ne. 255) call abort ()
-if (ichar (char (127)) .ne. 127) call abort ()
+if (ichar (char (0)) .ne. 0) STOP 1
+if (ichar (char (255)) .ne. 255) STOP 2
+if (ichar (char (127)) .ne. 127) STOP 3
i = 0
-if (ichar (char (i)) .ne. i) call abort ()
+if (ichar (char (i)) .ne. i) STOP 4
i = 255
-if (ichar (char (i)) .ne. i) call abort ()
+if (ichar (char (i)) .ne. i) STOP 5
i = 127
-if (ichar (char (i)) .ne. i) call abort ()
+if (ichar (char (i)) .ne. i) STOP 6
end
diff --git a/gcc/testsuite/gfortran.dg/ieee/ieee_1.F90 b/gcc/testsuite/gfortran.dg/ieee/ieee_1.F90
index 7477c803818..343ba4c5789 100644
--- a/gcc/testsuite/gfortran.dg/ieee/ieee_1.F90
+++ b/gcc/testsuite/gfortran.dg/ieee/ieee_1.F90
@@ -26,7 +26,7 @@
FLAGS_STRING(s) ; \
if (s /= expected) then ; \
write (*,"(A,I0,A,A)") "Flags at line ", __LINE__, ": ", s ; \
- call abort ; \
+ STOP 1; \
end if ; \
call check_flag_sub
@@ -143,7 +143,7 @@ contains
if (any(l)) then
print *, "Flags not cleared in subroutine"
- call abort
+ STOP 2
end if
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/ieee/ieee_2.f90 b/gcc/testsuite/gfortran.dg/ieee/ieee_2.f90
index b138061254f..8383f479992 100644
--- a/gcc/testsuite/gfortran.dg/ieee/ieee_2.f90
+++ b/gcc/testsuite/gfortran.dg/ieee/ieee_2.f90
@@ -19,245 +19,245 @@
! Test IEEE_COPY_SIGN
sx1 = 1.3
- if (ieee_copy_sign(sx1, sx1) /= sx1) call abort
- if (ieee_copy_sign(sx1, -sx1) /= -sx1) call abort
- if (ieee_copy_sign(sx1, 1.) /= sx1) call abort
- if (ieee_copy_sign(sx1, -1.) /= -sx1) call abort
+ if (ieee_copy_sign(sx1, sx1) /= sx1) STOP 1
+ if (ieee_copy_sign(sx1, -sx1) /= -sx1) STOP 2
+ if (ieee_copy_sign(sx1, 1.) /= sx1) STOP 3
+ if (ieee_copy_sign(sx1, -1.) /= -sx1) STOP 4
sx1 = huge(sx1)
- if (ieee_copy_sign(sx1, sx1) /= sx1) call abort
- if (ieee_copy_sign(sx1, -sx1) /= -sx1) call abort
- if (ieee_copy_sign(sx1, 1.) /= sx1) call abort
- if (ieee_copy_sign(sx1, -1.) /= -sx1) call abort
+ if (ieee_copy_sign(sx1, sx1) /= sx1) STOP 5
+ if (ieee_copy_sign(sx1, -sx1) /= -sx1) STOP 6
+ if (ieee_copy_sign(sx1, 1.) /= sx1) STOP 7
+ if (ieee_copy_sign(sx1, -1.) /= -sx1) STOP 8
sx1 = ieee_value(sx1, ieee_positive_inf)
- if (ieee_copy_sign(sx1, sx1) /= sx1) call abort
- if (ieee_copy_sign(sx1, -sx1) /= -sx1) call abort
- if (ieee_copy_sign(sx1, 1.) /= sx1) call abort
- if (ieee_copy_sign(sx1, -1.) /= -sx1) call abort
+ if (ieee_copy_sign(sx1, sx1) /= sx1) STOP 9
+ if (ieee_copy_sign(sx1, -sx1) /= -sx1) STOP 10
+ if (ieee_copy_sign(sx1, 1.) /= sx1) STOP 11
+ if (ieee_copy_sign(sx1, -1.) /= -sx1) STOP 12
sx1 = tiny(sx1)
- if (ieee_copy_sign(sx1, sx1) /= sx1) call abort
- if (ieee_copy_sign(sx1, -sx1) /= -sx1) call abort
- if (ieee_copy_sign(sx1, 1.) /= sx1) call abort
- if (ieee_copy_sign(sx1, -1.) /= -sx1) call abort
+ if (ieee_copy_sign(sx1, sx1) /= sx1) STOP 13
+ if (ieee_copy_sign(sx1, -sx1) /= -sx1) STOP 14
+ if (ieee_copy_sign(sx1, 1.) /= sx1) STOP 15
+ if (ieee_copy_sign(sx1, -1.) /= -sx1) STOP 16
sx1 = tiny(sx1)
sx1 = sx1 / 101
- if (ieee_copy_sign(sx1, sx1) /= sx1) call abort
- if (ieee_copy_sign(sx1, -sx1) /= -sx1) call abort
- if (ieee_copy_sign(sx1, 1.) /= sx1) call abort
- if (ieee_copy_sign(sx1, -1.) /= -sx1) call abort
+ if (ieee_copy_sign(sx1, sx1) /= sx1) STOP 17
+ if (ieee_copy_sign(sx1, -sx1) /= -sx1) STOP 18
+ if (ieee_copy_sign(sx1, 1.) /= sx1) STOP 19
+ if (ieee_copy_sign(sx1, -1.) /= -sx1) STOP 20
sx1 = -1.3
- if (ieee_copy_sign(sx1, sx1) /= sx1) call abort
- if (ieee_copy_sign(sx1, -sx1) /= -sx1) call abort
- if (ieee_copy_sign(sx1, 1.) /= abs(sx1)) call abort
- if (ieee_copy_sign(sx1, -1.) /= -abs(sx1)) call abort
+ if (ieee_copy_sign(sx1, sx1) /= sx1) STOP 21
+ if (ieee_copy_sign(sx1, -sx1) /= -sx1) STOP 22
+ if (ieee_copy_sign(sx1, 1.) /= abs(sx1)) STOP 23
+ if (ieee_copy_sign(sx1, -1.) /= -abs(sx1)) STOP 24
sx1 = -huge(sx1)
- if (ieee_copy_sign(sx1, sx1) /= sx1) call abort
- if (ieee_copy_sign(sx1, -sx1) /= -sx1) call abort
- if (ieee_copy_sign(sx1, 1.) /= abs(sx1)) call abort
- if (ieee_copy_sign(sx1, -1.) /= -abs(sx1)) call abort
+ if (ieee_copy_sign(sx1, sx1) /= sx1) STOP 25
+ if (ieee_copy_sign(sx1, -sx1) /= -sx1) STOP 26
+ if (ieee_copy_sign(sx1, 1.) /= abs(sx1)) STOP 27
+ if (ieee_copy_sign(sx1, -1.) /= -abs(sx1)) STOP 28
sx1 = ieee_value(sx1, ieee_negative_inf)
- if (ieee_copy_sign(sx1, sx1) /= sx1) call abort
- if (ieee_copy_sign(sx1, -sx1) /= -sx1) call abort
- if (ieee_copy_sign(sx1, 1.) /= abs(sx1)) call abort
- if (ieee_copy_sign(sx1, -1.) /= -abs(sx1)) call abort
+ if (ieee_copy_sign(sx1, sx1) /= sx1) STOP 29
+ if (ieee_copy_sign(sx1, -sx1) /= -sx1) STOP 30
+ if (ieee_copy_sign(sx1, 1.) /= abs(sx1)) STOP 31
+ if (ieee_copy_sign(sx1, -1.) /= -abs(sx1)) STOP 32
sx1 = -tiny(sx1)
- if (ieee_copy_sign(sx1, sx1) /= sx1) call abort
- if (ieee_copy_sign(sx1, -sx1) /= -sx1) call abort
- if (ieee_copy_sign(sx1, 1.) /= abs(sx1)) call abort
- if (ieee_copy_sign(sx1, -1.) /= -abs(sx1)) call abort
+ if (ieee_copy_sign(sx1, sx1) /= sx1) STOP 33
+ if (ieee_copy_sign(sx1, -sx1) /= -sx1) STOP 34
+ if (ieee_copy_sign(sx1, 1.) /= abs(sx1)) STOP 35
+ if (ieee_copy_sign(sx1, -1.) /= -abs(sx1)) STOP 36
sx1 = -tiny(sx1)
sx1 = sx1 / 101
- if (ieee_copy_sign(sx1, sx1) /= sx1) call abort
- if (ieee_copy_sign(sx1, -sx1) /= -sx1) call abort
- if (ieee_copy_sign(sx1, 1.) /= abs(sx1)) call abort
- if (ieee_copy_sign(sx1, -1.) /= -abs(sx1)) call abort
+ if (ieee_copy_sign(sx1, sx1) /= sx1) STOP 37
+ if (ieee_copy_sign(sx1, -sx1) /= -sx1) STOP 38
+ if (ieee_copy_sign(sx1, 1.) /= abs(sx1)) STOP 39
+ if (ieee_copy_sign(sx1, -1.) /= -abs(sx1)) STOP 40
- if (ieee_class(ieee_copy_sign(0., -1.)) /= ieee_negative_zero) call abort
- if (ieee_class(ieee_copy_sign(-0., -1.)) /= ieee_negative_zero) call abort
- if (ieee_class(ieee_copy_sign(0., 1.)) /= ieee_positive_zero) call abort
- if (ieee_class(ieee_copy_sign(-0., 1.)) /= ieee_positive_zero) call abort
+ if (ieee_class(ieee_copy_sign(0., -1.)) /= ieee_negative_zero) STOP 41
+ if (ieee_class(ieee_copy_sign(-0., -1.)) /= ieee_negative_zero) STOP 42
+ if (ieee_class(ieee_copy_sign(0., 1.)) /= ieee_positive_zero) STOP 43
+ if (ieee_class(ieee_copy_sign(-0., 1.)) /= ieee_positive_zero) STOP 44
sx1 = ieee_value(0., ieee_quiet_nan)
- if (ieee_class(ieee_copy_sign(sx1, 1.)) /= ieee_quiet_nan) call abort
- if (ieee_class(ieee_copy_sign(sx1, -1.)) /= ieee_quiet_nan) call abort
+ if (ieee_class(ieee_copy_sign(sx1, 1.)) /= ieee_quiet_nan) STOP 45
+ if (ieee_class(ieee_copy_sign(sx1, -1.)) /= ieee_quiet_nan) STOP 46
dx1 = 1.3
- if (ieee_copy_sign(dx1, dx1) /= dx1) call abort
- if (ieee_copy_sign(dx1, -dx1) /= -dx1) call abort
- if (ieee_copy_sign(dx1, 1.) /= dx1) call abort
- if (ieee_copy_sign(dx1, -1.d0) /= -dx1) call abort
+ if (ieee_copy_sign(dx1, dx1) /= dx1) STOP 47
+ if (ieee_copy_sign(dx1, -dx1) /= -dx1) STOP 48
+ if (ieee_copy_sign(dx1, 1.) /= dx1) STOP 49
+ if (ieee_copy_sign(dx1, -1.d0) /= -dx1) STOP 50
dx1 = huge(dx1)
- if (ieee_copy_sign(dx1, dx1) /= dx1) call abort
- if (ieee_copy_sign(dx1, -dx1) /= -dx1) call abort
- if (ieee_copy_sign(dx1, 1.d0) /= dx1) call abort
- if (ieee_copy_sign(dx1, -1.) /= -dx1) call abort
+ if (ieee_copy_sign(dx1, dx1) /= dx1) STOP 51
+ if (ieee_copy_sign(dx1, -dx1) /= -dx1) STOP 52
+ if (ieee_copy_sign(dx1, 1.d0) /= dx1) STOP 53
+ if (ieee_copy_sign(dx1, -1.) /= -dx1) STOP 54
dx1 = ieee_value(dx1, ieee_positive_inf)
- if (ieee_copy_sign(dx1, dx1) /= dx1) call abort
- if (ieee_copy_sign(dx1, -dx1) /= -dx1) call abort
- if (ieee_copy_sign(dx1, 1.) /= dx1) call abort
- if (ieee_copy_sign(dx1, -1.d0) /= -dx1) call abort
+ if (ieee_copy_sign(dx1, dx1) /= dx1) STOP 55
+ if (ieee_copy_sign(dx1, -dx1) /= -dx1) STOP 56
+ if (ieee_copy_sign(dx1, 1.) /= dx1) STOP 57
+ if (ieee_copy_sign(dx1, -1.d0) /= -dx1) STOP 58
dx1 = tiny(dx1)
- if (ieee_copy_sign(dx1, dx1) /= dx1) call abort
- if (ieee_copy_sign(dx1, -dx1) /= -dx1) call abort
- if (ieee_copy_sign(dx1, 1.d0) /= dx1) call abort
- if (ieee_copy_sign(dx1, -1.) /= -dx1) call abort
+ if (ieee_copy_sign(dx1, dx1) /= dx1) STOP 59
+ if (ieee_copy_sign(dx1, -dx1) /= -dx1) STOP 60
+ if (ieee_copy_sign(dx1, 1.d0) /= dx1) STOP 61
+ if (ieee_copy_sign(dx1, -1.) /= -dx1) STOP 62
dx1 = tiny(dx1)
dx1 = dx1 / 101
- if (ieee_copy_sign(dx1, dx1) /= dx1) call abort
- if (ieee_copy_sign(dx1, -dx1) /= -dx1) call abort
- if (ieee_copy_sign(dx1, 1.) /= dx1) call abort
- if (ieee_copy_sign(dx1, -1.d0) /= -dx1) call abort
+ if (ieee_copy_sign(dx1, dx1) /= dx1) STOP 63
+ if (ieee_copy_sign(dx1, -dx1) /= -dx1) STOP 64
+ if (ieee_copy_sign(dx1, 1.) /= dx1) STOP 65
+ if (ieee_copy_sign(dx1, -1.d0) /= -dx1) STOP 66
dx1 = -1.3d0
- if (ieee_copy_sign(dx1, dx1) /= dx1) call abort
- if (ieee_copy_sign(dx1, -dx1) /= -dx1) call abort
- if (ieee_copy_sign(dx1, 1.d0) /= abs(dx1)) call abort
- if (ieee_copy_sign(dx1, -1.) /= -abs(dx1)) call abort
+ if (ieee_copy_sign(dx1, dx1) /= dx1) STOP 67
+ if (ieee_copy_sign(dx1, -dx1) /= -dx1) STOP 68
+ if (ieee_copy_sign(dx1, 1.d0) /= abs(dx1)) STOP 69
+ if (ieee_copy_sign(dx1, -1.) /= -abs(dx1)) STOP 70
dx1 = -huge(dx1)
- if (ieee_copy_sign(dx1, dx1) /= dx1) call abort
- if (ieee_copy_sign(dx1, -dx1) /= -dx1) call abort
- if (ieee_copy_sign(dx1, 1.) /= abs(dx1)) call abort
- if (ieee_copy_sign(dx1, -1.d0) /= -abs(dx1)) call abort
+ if (ieee_copy_sign(dx1, dx1) /= dx1) STOP 71
+ if (ieee_copy_sign(dx1, -dx1) /= -dx1) STOP 72
+ if (ieee_copy_sign(dx1, 1.) /= abs(dx1)) STOP 73
+ if (ieee_copy_sign(dx1, -1.d0) /= -abs(dx1)) STOP 74
dx1 = ieee_value(dx1, ieee_negative_inf)
- if (ieee_copy_sign(dx1, dx1) /= dx1) call abort
- if (ieee_copy_sign(dx1, -dx1) /= -dx1) call abort
- if (ieee_copy_sign(dx1, 1.d0) /= abs(dx1)) call abort
- if (ieee_copy_sign(dx1, -1.) /= -abs(dx1)) call abort
+ if (ieee_copy_sign(dx1, dx1) /= dx1) STOP 75
+ if (ieee_copy_sign(dx1, -dx1) /= -dx1) STOP 76
+ if (ieee_copy_sign(dx1, 1.d0) /= abs(dx1)) STOP 77
+ if (ieee_copy_sign(dx1, -1.) /= -abs(dx1)) STOP 78
dx1 = -tiny(dx1)
- if (ieee_copy_sign(dx1, dx1) /= dx1) call abort
- if (ieee_copy_sign(dx1, -dx1) /= -dx1) call abort
- if (ieee_copy_sign(dx1, 1.) /= abs(dx1)) call abort
- if (ieee_copy_sign(dx1, -1.d0) /= -abs(dx1)) call abort
+ if (ieee_copy_sign(dx1, dx1) /= dx1) STOP 79
+ if (ieee_copy_sign(dx1, -dx1) /= -dx1) STOP 80
+ if (ieee_copy_sign(dx1, 1.) /= abs(dx1)) STOP 81
+ if (ieee_copy_sign(dx1, -1.d0) /= -abs(dx1)) STOP 82
dx1 = -tiny(dx1)
dx1 = dx1 / 101
- if (ieee_copy_sign(dx1, dx1) /= dx1) call abort
- if (ieee_copy_sign(dx1, -dx1) /= -dx1) call abort
- if (ieee_copy_sign(dx1, 1.d0) /= abs(dx1)) call abort
- if (ieee_copy_sign(dx1, -1.) /= -abs(dx1)) call abort
+ if (ieee_copy_sign(dx1, dx1) /= dx1) STOP 83
+ if (ieee_copy_sign(dx1, -dx1) /= -dx1) STOP 84
+ if (ieee_copy_sign(dx1, 1.d0) /= abs(dx1)) STOP 85
+ if (ieee_copy_sign(dx1, -1.) /= -abs(dx1)) STOP 86
- if (ieee_class(ieee_copy_sign(0.d0, -1.)) /= ieee_negative_zero) call abort
- if (ieee_class(ieee_copy_sign(-0.d0, -1.)) /= ieee_negative_zero) call abort
- if (ieee_class(ieee_copy_sign(0.d0, 1.)) /= ieee_positive_zero) call abort
- if (ieee_class(ieee_copy_sign(-0.d0, 1.)) /= ieee_positive_zero) call abort
+ if (ieee_class(ieee_copy_sign(0.d0, -1.)) /= ieee_negative_zero) STOP 87
+ if (ieee_class(ieee_copy_sign(-0.d0, -1.)) /= ieee_negative_zero) STOP 88
+ if (ieee_class(ieee_copy_sign(0.d0, 1.)) /= ieee_positive_zero) STOP 89
+ if (ieee_class(ieee_copy_sign(-0.d0, 1.)) /= ieee_positive_zero) STOP 90
dx1 = ieee_value(0.d0, ieee_quiet_nan)
- if (ieee_class(ieee_copy_sign(dx1, 1.d0)) /= ieee_quiet_nan) call abort
- if (ieee_class(ieee_copy_sign(dx1, -1.)) /= ieee_quiet_nan) call abort
+ if (ieee_class(ieee_copy_sign(dx1, 1.d0)) /= ieee_quiet_nan) STOP 91
+ if (ieee_class(ieee_copy_sign(dx1, -1.)) /= ieee_quiet_nan) STOP 92
! Test IEEE_LOGB
- if (ieee_logb(1.17) /= exponent(1.17) - 1) call abort
- if (ieee_logb(-1.17) /= exponent(-1.17) - 1) call abort
- if (ieee_logb(huge(sx1)) /= exponent(huge(sx1)) - 1) call abort
- if (ieee_logb(-huge(sx1)) /= exponent(-huge(sx1)) - 1) call abort
- if (ieee_logb(tiny(sx1)) /= exponent(tiny(sx1)) - 1) call abort
- if (ieee_logb(-tiny(sx1)) /= exponent(-tiny(sx1)) - 1) call abort
+ if (ieee_logb(1.17) /= exponent(1.17) - 1) STOP 93
+ if (ieee_logb(-1.17) /= exponent(-1.17) - 1) STOP 94
+ if (ieee_logb(huge(sx1)) /= exponent(huge(sx1)) - 1) STOP 95
+ if (ieee_logb(-huge(sx1)) /= exponent(-huge(sx1)) - 1) STOP 96
+ if (ieee_logb(tiny(sx1)) /= exponent(tiny(sx1)) - 1) STOP 97
+ if (ieee_logb(-tiny(sx1)) /= exponent(-tiny(sx1)) - 1) STOP 98
- if (ieee_class(ieee_logb(0.)) /= ieee_negative_inf) call abort
- if (ieee_class(ieee_logb(-0.)) /= ieee_negative_inf) call abort
+ if (ieee_class(ieee_logb(0.)) /= ieee_negative_inf) STOP 99
+ if (ieee_class(ieee_logb(-0.)) /= ieee_negative_inf) STOP 100
sx1 = ieee_value(sx1, ieee_positive_inf)
- if (ieee_class(ieee_logb(sx1)) /= ieee_positive_inf) call abort
- if (ieee_class(ieee_logb(-sx1)) /= ieee_positive_inf) call abort
+ if (ieee_class(ieee_logb(sx1)) /= ieee_positive_inf) STOP 101
+ if (ieee_class(ieee_logb(-sx1)) /= ieee_positive_inf) STOP 102
sx1 = ieee_value(sx1, ieee_quiet_nan)
- if (ieee_class(ieee_logb(sx1)) /= ieee_quiet_nan) call abort
+ if (ieee_class(ieee_logb(sx1)) /= ieee_quiet_nan) STOP 103
- if (ieee_logb(1.17d0) /= exponent(1.17d0) - 1) call abort
- if (ieee_logb(-1.17d0) /= exponent(-1.17d0) - 1) call abort
- if (ieee_logb(huge(dx1)) /= exponent(huge(dx1)) - 1) call abort
- if (ieee_logb(-huge(dx1)) /= exponent(-huge(dx1)) - 1) call abort
- if (ieee_logb(tiny(dx1)) /= exponent(tiny(dx1)) - 1) call abort
- if (ieee_logb(-tiny(dx1)) /= exponent(-tiny(dx1)) - 1) call abort
+ if (ieee_logb(1.17d0) /= exponent(1.17d0) - 1) STOP 104
+ if (ieee_logb(-1.17d0) /= exponent(-1.17d0) - 1) STOP 105
+ if (ieee_logb(huge(dx1)) /= exponent(huge(dx1)) - 1) STOP 106
+ if (ieee_logb(-huge(dx1)) /= exponent(-huge(dx1)) - 1) STOP 107
+ if (ieee_logb(tiny(dx1)) /= exponent(tiny(dx1)) - 1) STOP 108
+ if (ieee_logb(-tiny(dx1)) /= exponent(-tiny(dx1)) - 1) STOP 109
- if (ieee_class(ieee_logb(0.d0)) /= ieee_negative_inf) call abort
- if (ieee_class(ieee_logb(-0.d0)) /= ieee_negative_inf) call abort
+ if (ieee_class(ieee_logb(0.d0)) /= ieee_negative_inf) STOP 110
+ if (ieee_class(ieee_logb(-0.d0)) /= ieee_negative_inf) STOP 111
dx1 = ieee_value(dx1, ieee_positive_inf)
- if (ieee_class(ieee_logb(dx1)) /= ieee_positive_inf) call abort
- if (ieee_class(ieee_logb(-dx1)) /= ieee_positive_inf) call abort
+ if (ieee_class(ieee_logb(dx1)) /= ieee_positive_inf) STOP 112
+ if (ieee_class(ieee_logb(-dx1)) /= ieee_positive_inf) STOP 113
dx1 = ieee_value(dx1, ieee_quiet_nan)
- if (ieee_class(ieee_logb(dx1)) /= ieee_quiet_nan) call abort
+ if (ieee_class(ieee_logb(dx1)) /= ieee_quiet_nan) STOP 114
! Test IEEE_NEXT_AFTER
- if (ieee_next_after(0.12, 1.0) /= nearest(0.12, 1.0)) call abort
- if (ieee_next_after(0.12, -1.0) /= nearest(0.12, -1.0)) call abort
+ if (ieee_next_after(0.12, 1.0) /= nearest(0.12, 1.0)) STOP 115
+ if (ieee_next_after(0.12, -1.0) /= nearest(0.12, -1.0)) STOP 116
sx1 = 0.12
- if (ieee_next_after(sx1, sx1) /= sx1) call abort
+ if (ieee_next_after(sx1, sx1) /= sx1) STOP 117
sx1 = -0.12
- if (ieee_next_after(sx1, sx1) /= sx1) call abort
+ if (ieee_next_after(sx1, sx1) /= sx1) STOP 118
sx1 = huge(sx1)
- if (ieee_next_after(sx1, sx1) /= sx1) call abort
+ if (ieee_next_after(sx1, sx1) /= sx1) STOP 119
sx1 = tiny(sx1)
- if (ieee_next_after(sx1, sx1) /= sx1) call abort
+ if (ieee_next_after(sx1, sx1) /= sx1) STOP 120
sx1 = 0
- if (ieee_next_after(sx1, sx1) /= sx1) call abort
+ if (ieee_next_after(sx1, sx1) /= sx1) STOP 121
sx1 = ieee_value(sx1, ieee_negative_inf)
- if (ieee_next_after(sx1, sx1) /= sx1) call abort
+ if (ieee_next_after(sx1, sx1) /= sx1) STOP 122
sx1 = ieee_value(sx1, ieee_quiet_nan)
- if (ieee_class(ieee_next_after(sx1, sx1)) /= ieee_quiet_nan) call abort
+ if (ieee_class(ieee_next_after(sx1, sx1)) /= ieee_quiet_nan) STOP 123
- if (ieee_next_after(0., 1.0) <= 0) call abort
- if (ieee_next_after(0., -1.0) >= 0) call abort
+ if (ieee_next_after(0., 1.0) <= 0) STOP 124
+ if (ieee_next_after(0., -1.0) >= 0) STOP 125
sx1 = ieee_next_after(huge(sx1), ieee_value(sx1, ieee_negative_inf))
- if (.not. sx1 < huge(sx1)) call abort
+ if (.not. sx1 < huge(sx1)) STOP 126
sx1 = ieee_next_after(huge(sx1), ieee_value(sx1, ieee_positive_inf))
- if (ieee_class(sx1) /= ieee_positive_inf) call abort
+ if (ieee_class(sx1) /= ieee_positive_inf) STOP 127
sx1 = ieee_next_after(-tiny(sx1), 1.0)
- if (ieee_class(sx1) /= ieee_negative_denormal) call abort
+ if (ieee_class(sx1) /= ieee_negative_denormal) STOP 128
- if (ieee_next_after(0.12d0, 1.0d0) /= nearest(0.12d0, 1.0)) call abort
- if (ieee_next_after(0.12d0, -1.0) /= nearest(0.12d0, -1.0)) call abort
+ if (ieee_next_after(0.12d0, 1.0d0) /= nearest(0.12d0, 1.0)) STOP 129
+ if (ieee_next_after(0.12d0, -1.0) /= nearest(0.12d0, -1.0)) STOP 130
dx1 = 0.12
- if (ieee_next_after(dx1, dx1) /= dx1) call abort
+ if (ieee_next_after(dx1, dx1) /= dx1) STOP 131
dx1 = -0.12
- if (ieee_next_after(dx1, dx1) /= dx1) call abort
+ if (ieee_next_after(dx1, dx1) /= dx1) STOP 132
dx1 = huge(dx1)
- if (ieee_next_after(dx1, dx1) /= dx1) call abort
+ if (ieee_next_after(dx1, dx1) /= dx1) STOP 133
dx1 = tiny(dx1)
- if (ieee_next_after(dx1, dx1) /= dx1) call abort
+ if (ieee_next_after(dx1, dx1) /= dx1) STOP 134
dx1 = 0
- if (ieee_next_after(dx1, dx1) /= dx1) call abort
+ if (ieee_next_after(dx1, dx1) /= dx1) STOP 135
dx1 = ieee_value(dx1, ieee_negative_inf)
- if (ieee_next_after(dx1, dx1) /= dx1) call abort
+ if (ieee_next_after(dx1, dx1) /= dx1) STOP 136
dx1 = ieee_value(dx1, ieee_quiet_nan)
- if (ieee_class(ieee_next_after(dx1, dx1)) /= ieee_quiet_nan) call abort
+ if (ieee_class(ieee_next_after(dx1, dx1)) /= ieee_quiet_nan) STOP 137
- if (ieee_next_after(0.d0, 1.0) <= 0) call abort
- if (ieee_next_after(0.d0, -1.0d0) >= 0) call abort
+ if (ieee_next_after(0.d0, 1.0) <= 0) STOP 138
+ if (ieee_next_after(0.d0, -1.0d0) >= 0) STOP 139
dx1 = ieee_next_after(huge(dx1), ieee_value(dx1, ieee_negative_inf))
- if (.not. dx1 < huge(dx1)) call abort
+ if (.not. dx1 < huge(dx1)) STOP 140
dx1 = ieee_next_after(huge(dx1), ieee_value(dx1, ieee_positive_inf))
- if (ieee_class(dx1) /= ieee_positive_inf) call abort
+ if (ieee_class(dx1) /= ieee_positive_inf) STOP 141
dx1 = ieee_next_after(-tiny(dx1), 1.0d0)
- if (ieee_class(dx1) /= ieee_negative_denormal) call abort
+ if (ieee_class(dx1) /= ieee_negative_denormal) STOP 142
! Test IEEE_REM
- if (ieee_rem(4.0, 3.0) /= 1.0) call abort
- if (ieee_rem(-4.0, 3.0) /= -1.0) call abort
- if (ieee_rem(2.0, 3.0d0) /= -1.0d0) call abort
- if (ieee_rem(-2.0, 3.0d0) /= 1.0d0) call abort
- if (ieee_rem(2.0d0, 3.0d0) /= -1.0d0) call abort
- if (ieee_rem(-2.0d0, 3.0d0) /= 1.0d0) call abort
+ if (ieee_rem(4.0, 3.0) /= 1.0) STOP 143
+ if (ieee_rem(-4.0, 3.0) /= -1.0) STOP 144
+ if (ieee_rem(2.0, 3.0d0) /= -1.0d0) STOP 145
+ if (ieee_rem(-2.0, 3.0d0) /= 1.0d0) STOP 146
+ if (ieee_rem(2.0d0, 3.0d0) /= -1.0d0) STOP 147
+ if (ieee_rem(-2.0d0, 3.0d0) /= 1.0d0) STOP 148
if (ieee_class(ieee_rem(ieee_value(0., ieee_quiet_nan), 1.0)) &
- /= ieee_quiet_nan) call abort
+ /= ieee_quiet_nan) STOP 149
if (ieee_class(ieee_rem(1.0, ieee_value(0.d0, ieee_quiet_nan))) &
- /= ieee_quiet_nan) call abort
+ /= ieee_quiet_nan) STOP 150
if (ieee_class(ieee_rem(ieee_value(0., ieee_positive_inf), 1.0)) &
- /= ieee_quiet_nan) call abort
+ /= ieee_quiet_nan) STOP 151
if (ieee_class(ieee_rem(ieee_value(0.d0, ieee_negative_inf), 1.0)) &
- /= ieee_quiet_nan) call abort
+ /= ieee_quiet_nan) STOP 152
if (ieee_rem(-1.0, ieee_value(0., ieee_positive_inf)) &
- /= -1.0) call abort
+ /= -1.0) STOP 153
if (ieee_rem(1.0, ieee_value(0.d0, ieee_negative_inf)) &
- /= 1.0) call abort
+ /= 1.0) STOP 154
! Test IEEE_RINT
@@ -268,7 +268,7 @@
sx1 = 7 / 3.
sx1 = ieee_rint (sx1)
call ieee_set_rounding_mode (mode)
- if (sx1 /= 2) call abort
+ if (sx1 /= 2) STOP 155
end if
if (ieee_support_rounding (ieee_up, sx1)) then
@@ -277,7 +277,7 @@
sx1 = 7 / 3.
sx1 = ieee_rint (sx1)
call ieee_set_rounding_mode (mode)
- if (sx1 /= 3) call abort
+ if (sx1 /= 3) STOP 156
end if
if (ieee_support_rounding (ieee_down, sx1)) then
@@ -286,7 +286,7 @@
sx1 = 7 / 3.
sx1 = ieee_rint (sx1)
call ieee_set_rounding_mode (mode)
- if (sx1 /= 2) call abort
+ if (sx1 /= 2) STOP 157
end if
if (ieee_support_rounding (ieee_to_zero, sx1)) then
@@ -295,11 +295,11 @@
sx1 = 7 / 3.
sx1 = ieee_rint (sx1)
call ieee_set_rounding_mode (mode)
- if (sx1 /= 2) call abort
+ if (sx1 /= 2) STOP 158
end if
- if (ieee_class(ieee_rint(0.)) /= ieee_positive_zero) call abort
- if (ieee_class(ieee_rint(-0.)) /= ieee_negative_zero) call abort
+ if (ieee_class(ieee_rint(0.)) /= ieee_positive_zero) STOP 159
+ if (ieee_class(ieee_rint(-0.)) /= ieee_negative_zero) STOP 160
if (ieee_support_rounding (ieee_nearest, dx1)) then
call ieee_get_rounding_mode (mode)
@@ -307,7 +307,7 @@
dx1 = 7 / 3.d0
dx1 = ieee_rint (dx1)
call ieee_set_rounding_mode (mode)
- if (dx1 /= 2) call abort
+ if (dx1 /= 2) STOP 161
end if
if (ieee_support_rounding (ieee_up, dx1)) then
@@ -316,7 +316,7 @@
dx1 = 7 / 3.d0
dx1 = ieee_rint (dx1)
call ieee_set_rounding_mode (mode)
- if (dx1 /= 3) call abort
+ if (dx1 /= 3) STOP 162
end if
if (ieee_support_rounding (ieee_down, dx1)) then
@@ -325,7 +325,7 @@
dx1 = 7 / 3.d0
dx1 = ieee_rint (dx1)
call ieee_set_rounding_mode (mode)
- if (dx1 /= 2) call abort
+ if (dx1 /= 2) STOP 163
end if
if (ieee_support_rounding (ieee_to_zero, dx1)) then
@@ -334,47 +334,47 @@
dx1 = 7 / 3.d0
dx1 = ieee_rint (dx1)
call ieee_set_rounding_mode (mode)
- if (dx1 /= 2) call abort
+ if (dx1 /= 2) STOP 164
end if
- if (ieee_class(ieee_rint(0.d0)) /= ieee_positive_zero) call abort
- if (ieee_class(ieee_rint(-0.d0)) /= ieee_negative_zero) call abort
+ if (ieee_class(ieee_rint(0.d0)) /= ieee_positive_zero) STOP 165
+ if (ieee_class(ieee_rint(-0.d0)) /= ieee_negative_zero) STOP 166
! Test IEEE_SCALB
sx1 = 1
- if (ieee_scalb(sx1, 2) /= 4.) call abort
- if (ieee_scalb(-sx1, 2) /= -4.) call abort
- if (ieee_scalb(sx1, -2) /= 1/4.) call abort
- if (ieee_scalb(-sx1, -2) /= -1/4.) call abort
- if (ieee_class(ieee_scalb(sx1, huge(0))) /= ieee_positive_inf) call abort
- if (ieee_class(ieee_scalb(-sx1, huge(0))) /= ieee_negative_inf) call abort
- if (ieee_class(ieee_scalb(sx1, -huge(0))) /= ieee_positive_zero) call abort
- if (ieee_class(ieee_scalb(-sx1, -huge(0))) /= ieee_negative_zero) call abort
+ if (ieee_scalb(sx1, 2) /= 4.) STOP 167
+ if (ieee_scalb(-sx1, 2) /= -4.) STOP 168
+ if (ieee_scalb(sx1, -2) /= 1/4.) STOP 169
+ if (ieee_scalb(-sx1, -2) /= -1/4.) STOP 170
+ if (ieee_class(ieee_scalb(sx1, huge(0))) /= ieee_positive_inf) STOP 171
+ if (ieee_class(ieee_scalb(-sx1, huge(0))) /= ieee_negative_inf) STOP 172
+ if (ieee_class(ieee_scalb(sx1, -huge(0))) /= ieee_positive_zero) STOP 173
+ if (ieee_class(ieee_scalb(-sx1, -huge(0))) /= ieee_negative_zero) STOP 174
sx1 = ieee_value(sx1, ieee_quiet_nan)
- if (ieee_class(ieee_scalb(sx1, 1)) /= ieee_quiet_nan) call abort
+ if (ieee_class(ieee_scalb(sx1, 1)) /= ieee_quiet_nan) STOP 175
sx1 = ieee_value(sx1, ieee_positive_inf)
- if (ieee_class(ieee_scalb(sx1, -42)) /= ieee_positive_inf) call abort
+ if (ieee_class(ieee_scalb(sx1, -42)) /= ieee_positive_inf) STOP 176
sx1 = ieee_value(sx1, ieee_negative_inf)
- if (ieee_class(ieee_scalb(sx1, -42)) /= ieee_negative_inf) call abort
+ if (ieee_class(ieee_scalb(sx1, -42)) /= ieee_negative_inf) STOP 177
dx1 = 1
- if (ieee_scalb(dx1, 2) /= 4.d0) call abort
- if (ieee_scalb(-dx1, 2) /= -4.d0) call abort
- if (ieee_scalb(dx1, -2) /= 1/4.d0) call abort
- if (ieee_scalb(-dx1, -2) /= -1/4.d0) call abort
- if (ieee_class(ieee_scalb(dx1, huge(0))) /= ieee_positive_inf) call abort
- if (ieee_class(ieee_scalb(-dx1, huge(0))) /= ieee_negative_inf) call abort
- if (ieee_class(ieee_scalb(dx1, -huge(0))) /= ieee_positive_zero) call abort
- if (ieee_class(ieee_scalb(-dx1, -huge(0))) /= ieee_negative_zero) call abort
+ if (ieee_scalb(dx1, 2) /= 4.d0) STOP 178
+ if (ieee_scalb(-dx1, 2) /= -4.d0) STOP 179
+ if (ieee_scalb(dx1, -2) /= 1/4.d0) STOP 180
+ if (ieee_scalb(-dx1, -2) /= -1/4.d0) STOP 181
+ if (ieee_class(ieee_scalb(dx1, huge(0))) /= ieee_positive_inf) STOP 182
+ if (ieee_class(ieee_scalb(-dx1, huge(0))) /= ieee_negative_inf) STOP 183
+ if (ieee_class(ieee_scalb(dx1, -huge(0))) /= ieee_positive_zero) STOP 184
+ if (ieee_class(ieee_scalb(-dx1, -huge(0))) /= ieee_negative_zero) STOP 185
dx1 = ieee_value(dx1, ieee_quiet_nan)
- if (ieee_class(ieee_scalb(dx1, 1)) /= ieee_quiet_nan) call abort
+ if (ieee_class(ieee_scalb(dx1, 1)) /= ieee_quiet_nan) STOP 186
dx1 = ieee_value(dx1, ieee_positive_inf)
- if (ieee_class(ieee_scalb(dx1, -42)) /= ieee_positive_inf) call abort
+ if (ieee_class(ieee_scalb(dx1, -42)) /= ieee_positive_inf) STOP 187
dx1 = ieee_value(dx1, ieee_negative_inf)
- if (ieee_class(ieee_scalb(dx1, -42)) /= ieee_negative_inf) call abort
+ if (ieee_class(ieee_scalb(dx1, -42)) /= ieee_negative_inf) STOP 188
contains
@@ -382,7 +382,7 @@ contains
real, intent(in) :: x, y
if (x /= y) then
print *, x, y
- call abort
+ STOP 189
end if
end subroutine
@@ -390,7 +390,7 @@ contains
double precision, intent(in) :: x, y
if (x /= y) then
print *, x, y
- call abort
+ STOP 190
end if
end subroutine
@@ -398,7 +398,7 @@ contains
real, intent(in) :: x, y
if (x == y) then
print *, x, y
- call abort
+ STOP 191
end if
end subroutine
@@ -406,7 +406,7 @@ contains
double precision, intent(in) :: x, y
if (x == y) then
print *, x, y
- call abort
+ STOP 192
end if
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/ieee/ieee_3.f90 b/gcc/testsuite/gfortran.dg/ieee/ieee_3.f90
index b2c718641a3..ca1706b08fc 100644
--- a/gcc/testsuite/gfortran.dg/ieee/ieee_3.f90
+++ b/gcc/testsuite/gfortran.dg/ieee/ieee_3.f90
@@ -11,157 +11,157 @@
! Test IEEE_IS_FINITE
if (ieee_support_datatype(0._s)) then
- if (.not. ieee_is_finite(0.2_s)) call abort
- if (.not. ieee_is_finite(-0.2_s)) call abort
- if (.not. ieee_is_finite(0._s)) call abort
- if (.not. ieee_is_finite(-0._s)) call abort
- if (.not. ieee_is_finite(tiny(0._s))) call abort
- if (.not. ieee_is_finite(tiny(0._s)/100)) call abort
- if (.not. ieee_is_finite(huge(0._s))) call abort
- if (.not. ieee_is_finite(-huge(0._s))) call abort
+ if (.not. ieee_is_finite(0.2_s)) STOP 1
+ if (.not. ieee_is_finite(-0.2_s)) STOP 2
+ if (.not. ieee_is_finite(0._s)) STOP 3
+ if (.not. ieee_is_finite(-0._s)) STOP 4
+ if (.not. ieee_is_finite(tiny(0._s))) STOP 5
+ if (.not. ieee_is_finite(tiny(0._s)/100)) STOP 6
+ if (.not. ieee_is_finite(huge(0._s))) STOP 7
+ if (.not. ieee_is_finite(-huge(0._s))) STOP 8
sx1 = huge(sx1)
- if (ieee_is_finite(2*sx1)) call abort
- if (ieee_is_finite(2*(-sx1))) call abort
+ if (ieee_is_finite(2*sx1)) STOP 9
+ if (ieee_is_finite(2*(-sx1))) STOP 10
sx1 = ieee_value(sx1, ieee_quiet_nan)
- if (ieee_is_finite(sx1)) call abort
+ if (ieee_is_finite(sx1)) STOP 11
end if
if (ieee_support_datatype(0._d)) then
- if (.not. ieee_is_finite(0.2_d)) call abort
- if (.not. ieee_is_finite(-0.2_d)) call abort
- if (.not. ieee_is_finite(0._d)) call abort
- if (.not. ieee_is_finite(-0._d)) call abort
- if (.not. ieee_is_finite(tiny(0._d))) call abort
- if (.not. ieee_is_finite(tiny(0._d)/100)) call abort
- if (.not. ieee_is_finite(huge(0._d))) call abort
- if (.not. ieee_is_finite(-huge(0._d))) call abort
+ if (.not. ieee_is_finite(0.2_d)) STOP 12
+ if (.not. ieee_is_finite(-0.2_d)) STOP 13
+ if (.not. ieee_is_finite(0._d)) STOP 14
+ if (.not. ieee_is_finite(-0._d)) STOP 15
+ if (.not. ieee_is_finite(tiny(0._d))) STOP 16
+ if (.not. ieee_is_finite(tiny(0._d)/100)) STOP 17
+ if (.not. ieee_is_finite(huge(0._d))) STOP 18
+ if (.not. ieee_is_finite(-huge(0._d))) STOP 19
dx1 = huge(dx1)
- if (ieee_is_finite(2*dx1)) call abort
- if (ieee_is_finite(2*(-dx1))) call abort
+ if (ieee_is_finite(2*dx1)) STOP 20
+ if (ieee_is_finite(2*(-dx1))) STOP 21
dx1 = ieee_value(dx1, ieee_quiet_nan)
- if (ieee_is_finite(dx1)) call abort
+ if (ieee_is_finite(dx1)) STOP 22
end if
! Test IEEE_IS_NAN
if (ieee_support_datatype(0._s)) then
- if (ieee_is_nan(0.2_s)) call abort
- if (ieee_is_nan(-0.2_s)) call abort
- if (ieee_is_nan(0._s)) call abort
- if (ieee_is_nan(-0._s)) call abort
- if (ieee_is_nan(tiny(0._s))) call abort
- if (ieee_is_nan(tiny(0._s)/100)) call abort
- if (ieee_is_nan(huge(0._s))) call abort
- if (ieee_is_nan(-huge(0._s))) call abort
+ if (ieee_is_nan(0.2_s)) STOP 23
+ if (ieee_is_nan(-0.2_s)) STOP 24
+ if (ieee_is_nan(0._s)) STOP 25
+ if (ieee_is_nan(-0._s)) STOP 26
+ if (ieee_is_nan(tiny(0._s))) STOP 27
+ if (ieee_is_nan(tiny(0._s)/100)) STOP 28
+ if (ieee_is_nan(huge(0._s))) STOP 29
+ if (ieee_is_nan(-huge(0._s))) STOP 30
sx1 = huge(sx1)
- if (ieee_is_nan(2*sx1)) call abort
- if (ieee_is_nan(2*(-sx1))) call abort
+ if (ieee_is_nan(2*sx1)) STOP 31
+ if (ieee_is_nan(2*(-sx1))) STOP 32
sx1 = ieee_value(sx1, ieee_quiet_nan)
- if (.not. ieee_is_nan(sx1)) call abort
+ if (.not. ieee_is_nan(sx1)) STOP 33
sx1 = -1
- if (.not. ieee_is_nan(sqrt(sx1))) call abort
+ if (.not. ieee_is_nan(sqrt(sx1))) STOP 34
end if
if (ieee_support_datatype(0._d)) then
- if (ieee_is_nan(0.2_d)) call abort
- if (ieee_is_nan(-0.2_d)) call abort
- if (ieee_is_nan(0._d)) call abort
- if (ieee_is_nan(-0._d)) call abort
- if (ieee_is_nan(tiny(0._d))) call abort
- if (ieee_is_nan(tiny(0._d)/100)) call abort
- if (ieee_is_nan(huge(0._d))) call abort
- if (ieee_is_nan(-huge(0._d))) call abort
+ if (ieee_is_nan(0.2_d)) STOP 35
+ if (ieee_is_nan(-0.2_d)) STOP 36
+ if (ieee_is_nan(0._d)) STOP 37
+ if (ieee_is_nan(-0._d)) STOP 38
+ if (ieee_is_nan(tiny(0._d))) STOP 39
+ if (ieee_is_nan(tiny(0._d)/100)) STOP 40
+ if (ieee_is_nan(huge(0._d))) STOP 41
+ if (ieee_is_nan(-huge(0._d))) STOP 42
dx1 = huge(dx1)
- if (ieee_is_nan(2*dx1)) call abort
- if (ieee_is_nan(2*(-dx1))) call abort
+ if (ieee_is_nan(2*dx1)) STOP 43
+ if (ieee_is_nan(2*(-dx1))) STOP 44
dx1 = ieee_value(dx1, ieee_quiet_nan)
- if (.not. ieee_is_nan(dx1)) call abort
+ if (.not. ieee_is_nan(dx1)) STOP 45
dx1 = -1
- if (.not. ieee_is_nan(sqrt(dx1))) call abort
+ if (.not. ieee_is_nan(sqrt(dx1))) STOP 46
end if
! IEEE_IS_NEGATIVE
if (ieee_support_datatype(0._s)) then
- if (ieee_is_negative(0.2_s)) call abort
- if (.not. ieee_is_negative(-0.2_s)) call abort
- if (ieee_is_negative(0._s)) call abort
- if (.not. ieee_is_negative(-0._s)) call abort
- if (ieee_is_negative(tiny(0._s))) call abort
- if (ieee_is_negative(tiny(0._s)/100)) call abort
- if (.not. ieee_is_negative(-tiny(0._s))) call abort
- if (.not. ieee_is_negative(-tiny(0._s)/100)) call abort
- if (ieee_is_negative(huge(0._s))) call abort
- if (.not. ieee_is_negative(-huge(0._s))) call abort
+ if (ieee_is_negative(0.2_s)) STOP 47
+ if (.not. ieee_is_negative(-0.2_s)) STOP 48
+ if (ieee_is_negative(0._s)) STOP 49
+ if (.not. ieee_is_negative(-0._s)) STOP 50
+ if (ieee_is_negative(tiny(0._s))) STOP 51
+ if (ieee_is_negative(tiny(0._s)/100)) STOP 52
+ if (.not. ieee_is_negative(-tiny(0._s))) STOP 53
+ if (.not. ieee_is_negative(-tiny(0._s)/100)) STOP 54
+ if (ieee_is_negative(huge(0._s))) STOP 55
+ if (.not. ieee_is_negative(-huge(0._s))) STOP 56
sx1 = huge(sx1)
- if (ieee_is_negative(2*sx1)) call abort
- if (.not. ieee_is_negative(2*(-sx1))) call abort
+ if (ieee_is_negative(2*sx1)) STOP 57
+ if (.not. ieee_is_negative(2*(-sx1))) STOP 58
sx1 = ieee_value(sx1, ieee_quiet_nan)
- if (ieee_is_negative(sx1)) call abort
+ if (ieee_is_negative(sx1)) STOP 59
sx1 = -1
- if (ieee_is_negative(sqrt(sx1))) call abort
+ if (ieee_is_negative(sqrt(sx1))) STOP 60
end if
if (ieee_support_datatype(0._d)) then
- if (ieee_is_negative(0.2_d)) call abort
- if (.not. ieee_is_negative(-0.2_d)) call abort
- if (ieee_is_negative(0._d)) call abort
- if (.not. ieee_is_negative(-0._d)) call abort
- if (ieee_is_negative(tiny(0._d))) call abort
- if (ieee_is_negative(tiny(0._d)/100)) call abort
- if (.not. ieee_is_negative(-tiny(0._d))) call abort
- if (.not. ieee_is_negative(-tiny(0._d)/100)) call abort
- if (ieee_is_negative(huge(0._d))) call abort
- if (.not. ieee_is_negative(-huge(0._d))) call abort
+ if (ieee_is_negative(0.2_d)) STOP 61
+ if (.not. ieee_is_negative(-0.2_d)) STOP 62
+ if (ieee_is_negative(0._d)) STOP 63
+ if (.not. ieee_is_negative(-0._d)) STOP 64
+ if (ieee_is_negative(tiny(0._d))) STOP 65
+ if (ieee_is_negative(tiny(0._d)/100)) STOP 66
+ if (.not. ieee_is_negative(-tiny(0._d))) STOP 67
+ if (.not. ieee_is_negative(-tiny(0._d)/100)) STOP 68
+ if (ieee_is_negative(huge(0._d))) STOP 69
+ if (.not. ieee_is_negative(-huge(0._d))) STOP 70
dx1 = huge(dx1)
- if (ieee_is_negative(2*dx1)) call abort
- if (.not. ieee_is_negative(2*(-dx1))) call abort
+ if (ieee_is_negative(2*dx1)) STOP 71
+ if (.not. ieee_is_negative(2*(-dx1))) STOP 72
dx1 = ieee_value(dx1, ieee_quiet_nan)
- if (ieee_is_negative(dx1)) call abort
+ if (ieee_is_negative(dx1)) STOP 73
dx1 = -1
- if (ieee_is_negative(sqrt(dx1))) call abort
+ if (ieee_is_negative(sqrt(dx1))) STOP 74
end if
! Test IEEE_IS_NORMAL
if (ieee_support_datatype(0._s)) then
- if (.not. ieee_is_normal(0.2_s)) call abort
- if (.not. ieee_is_normal(-0.2_s)) call abort
- if (.not. ieee_is_normal(0._s)) call abort
- if (.not. ieee_is_normal(-0._s)) call abort
- if (.not. ieee_is_normal(tiny(0._s))) call abort
- if (ieee_is_normal(tiny(0._s)/100)) call abort
- if (.not. ieee_is_normal(-tiny(0._s))) call abort
- if (ieee_is_normal(-tiny(0._s)/100)) call abort
- if (.not. ieee_is_normal(huge(0._s))) call abort
- if (.not. ieee_is_normal(-huge(0._s))) call abort
+ if (.not. ieee_is_normal(0.2_s)) STOP 75
+ if (.not. ieee_is_normal(-0.2_s)) STOP 76
+ if (.not. ieee_is_normal(0._s)) STOP 77
+ if (.not. ieee_is_normal(-0._s)) STOP 78
+ if (.not. ieee_is_normal(tiny(0._s))) STOP 79
+ if (ieee_is_normal(tiny(0._s)/100)) STOP 80
+ if (.not. ieee_is_normal(-tiny(0._s))) STOP 81
+ if (ieee_is_normal(-tiny(0._s)/100)) STOP 82
+ if (.not. ieee_is_normal(huge(0._s))) STOP 83
+ if (.not. ieee_is_normal(-huge(0._s))) STOP 84
sx1 = huge(sx1)
- if (ieee_is_normal(2*sx1)) call abort
- if (ieee_is_normal(2*(-sx1))) call abort
+ if (ieee_is_normal(2*sx1)) STOP 85
+ if (ieee_is_normal(2*(-sx1))) STOP 86
sx1 = ieee_value(sx1, ieee_quiet_nan)
- if (ieee_is_normal(sx1)) call abort
+ if (ieee_is_normal(sx1)) STOP 87
sx1 = -1
- if (ieee_is_normal(sqrt(sx1))) call abort
+ if (ieee_is_normal(sqrt(sx1))) STOP 88
end if
if (ieee_support_datatype(0._d)) then
- if (.not. ieee_is_normal(0.2_d)) call abort
- if (.not. ieee_is_normal(-0.2_d)) call abort
- if (.not. ieee_is_normal(0._d)) call abort
- if (.not. ieee_is_normal(-0._d)) call abort
- if (.not. ieee_is_normal(tiny(0._d))) call abort
- if (ieee_is_normal(tiny(0._d)/100)) call abort
- if (.not. ieee_is_normal(-tiny(0._d))) call abort
- if (ieee_is_normal(-tiny(0._d)/100)) call abort
- if (.not. ieee_is_normal(huge(0._d))) call abort
- if (.not. ieee_is_normal(-huge(0._d))) call abort
+ if (.not. ieee_is_normal(0.2_d)) STOP 89
+ if (.not. ieee_is_normal(-0.2_d)) STOP 90
+ if (.not. ieee_is_normal(0._d)) STOP 91
+ if (.not. ieee_is_normal(-0._d)) STOP 92
+ if (.not. ieee_is_normal(tiny(0._d))) STOP 93
+ if (ieee_is_normal(tiny(0._d)/100)) STOP 94
+ if (.not. ieee_is_normal(-tiny(0._d))) STOP 95
+ if (ieee_is_normal(-tiny(0._d)/100)) STOP 96
+ if (.not. ieee_is_normal(huge(0._d))) STOP 97
+ if (.not. ieee_is_normal(-huge(0._d))) STOP 98
dx1 = huge(dx1)
- if (ieee_is_normal(2*dx1)) call abort
- if (ieee_is_normal(2*(-dx1))) call abort
+ if (ieee_is_normal(2*dx1)) STOP 99
+ if (ieee_is_normal(2*(-dx1))) STOP 100
dx1 = ieee_value(dx1, ieee_quiet_nan)
- if (ieee_is_normal(dx1)) call abort
+ if (ieee_is_normal(dx1)) STOP 101
dx1 = -1
- if (ieee_is_normal(sqrt(dx1))) call abort
+ if (ieee_is_normal(sqrt(dx1))) STOP 102
end if
end
diff --git a/gcc/testsuite/gfortran.dg/ieee/ieee_4.f90 b/gcc/testsuite/gfortran.dg/ieee/ieee_4.f90
index ffa13f0acd7..bca52562800 100644
--- a/gcc/testsuite/gfortran.dg/ieee/ieee_4.f90
+++ b/gcc/testsuite/gfortran.dg/ieee/ieee_4.f90
@@ -12,177 +12,177 @@
if (ieee_support_datatype(0._s)) then
sx1 = 0.1_s
- if (ieee_class(sx1) /= ieee_positive_normal) call abort
- if (ieee_class(-sx1) /= ieee_negative_normal) call abort
+ if (ieee_class(sx1) /= ieee_positive_normal) STOP 1
+ if (ieee_class(-sx1) /= ieee_negative_normal) STOP 2
sx1 = huge(sx1)
- if (ieee_class(sx1) /= ieee_positive_normal) call abort
- if (ieee_class(-sx1) /= ieee_negative_normal) call abort
- if (ieee_class(2*sx1) /= ieee_positive_inf) call abort
- if (ieee_class(2*(-sx1)) /= ieee_negative_inf) call abort
+ if (ieee_class(sx1) /= ieee_positive_normal) STOP 3
+ if (ieee_class(-sx1) /= ieee_negative_normal) STOP 4
+ if (ieee_class(2*sx1) /= ieee_positive_inf) STOP 5
+ if (ieee_class(2*(-sx1)) /= ieee_negative_inf) STOP 6
sx1 = tiny(sx1)
- if (ieee_class(sx1) /= ieee_positive_normal) call abort
- if (ieee_class(-sx1) /= ieee_negative_normal) call abort
- if (ieee_class(sx1 / 2) /= ieee_positive_denormal) call abort
- if (ieee_class((-sx1) / 2) /= ieee_negative_denormal) call abort
+ if (ieee_class(sx1) /= ieee_positive_normal) STOP 7
+ if (ieee_class(-sx1) /= ieee_negative_normal) STOP 8
+ if (ieee_class(sx1 / 2) /= ieee_positive_denormal) STOP 9
+ if (ieee_class((-sx1) / 2) /= ieee_negative_denormal) STOP 10
sx1 = -1
- if (ieee_class(sqrt(sx1)) /= ieee_quiet_nan) call abort
+ if (ieee_class(sqrt(sx1)) /= ieee_quiet_nan) STOP 11
sx1 = 0
- if (ieee_class(sx1) /= ieee_positive_zero) call abort
- if (ieee_class(-sx1) /= ieee_negative_zero) call abort
+ if (ieee_class(sx1) /= ieee_positive_zero) STOP 12
+ if (ieee_class(-sx1) /= ieee_negative_zero) STOP 13
end if
if (ieee_support_datatype(0._d)) then
dx1 = 0.1_d
- if (ieee_class(dx1) /= ieee_positive_normal) call abort
- if (ieee_class(-dx1) /= ieee_negative_normal) call abort
+ if (ieee_class(dx1) /= ieee_positive_normal) STOP 14
+ if (ieee_class(-dx1) /= ieee_negative_normal) STOP 15
dx1 = huge(dx1)
- if (ieee_class(dx1) /= ieee_positive_normal) call abort
- if (ieee_class(-dx1) /= ieee_negative_normal) call abort
- if (ieee_class(2*dx1) /= ieee_positive_inf) call abort
- if (ieee_class(2*(-dx1)) /= ieee_negative_inf) call abort
+ if (ieee_class(dx1) /= ieee_positive_normal) STOP 16
+ if (ieee_class(-dx1) /= ieee_negative_normal) STOP 17
+ if (ieee_class(2*dx1) /= ieee_positive_inf) STOP 18
+ if (ieee_class(2*(-dx1)) /= ieee_negative_inf) STOP 19
dx1 = tiny(dx1)
- if (ieee_class(dx1) /= ieee_positive_normal) call abort
- if (ieee_class(-dx1) /= ieee_negative_normal) call abort
- if (ieee_class(dx1 / 2) /= ieee_positive_denormal) call abort
- if (ieee_class((-dx1) / 2) /= ieee_negative_denormal) call abort
+ if (ieee_class(dx1) /= ieee_positive_normal) STOP 20
+ if (ieee_class(-dx1) /= ieee_negative_normal) STOP 21
+ if (ieee_class(dx1 / 2) /= ieee_positive_denormal) STOP 22
+ if (ieee_class((-dx1) / 2) /= ieee_negative_denormal) STOP 23
dx1 = -1
- if (ieee_class(sqrt(dx1)) /= ieee_quiet_nan) call abort
+ if (ieee_class(sqrt(dx1)) /= ieee_quiet_nan) STOP 24
dx1 = 0
- if (ieee_class(dx1) /= ieee_positive_zero) call abort
- if (ieee_class(-dx1) /= ieee_negative_zero) call abort
+ if (ieee_class(dx1) /= ieee_positive_zero) STOP 25
+ if (ieee_class(-dx1) /= ieee_negative_zero) STOP 26
end if
! Test IEEE_VALUE and IEEE_UNORDERED
if (ieee_support_datatype(0._s)) then
sx1 = ieee_value(sx1, ieee_quiet_nan)
- if (.not. ieee_is_nan(sx1)) call abort
- if (.not. ieee_unordered(sx1, sx1)) call abort
- if (.not. ieee_unordered(sx1, 0._s)) call abort
- if (.not. ieee_unordered(sx1, 0._d)) call abort
- if (.not. ieee_unordered(0._s, sx1)) call abort
- if (.not. ieee_unordered(0._d, sx1)) call abort
- if (ieee_unordered(0._s, 0._s)) call abort
+ if (.not. ieee_is_nan(sx1)) STOP 27
+ if (.not. ieee_unordered(sx1, sx1)) STOP 28
+ if (.not. ieee_unordered(sx1, 0._s)) STOP 29
+ if (.not. ieee_unordered(sx1, 0._d)) STOP 30
+ if (.not. ieee_unordered(0._s, sx1)) STOP 31
+ if (.not. ieee_unordered(0._d, sx1)) STOP 32
+ if (ieee_unordered(0._s, 0._s)) STOP 33
sx1 = ieee_value(sx1, ieee_positive_inf)
- if (ieee_is_finite(sx1)) call abort
- if (ieee_is_nan(sx1)) call abort
- if (ieee_is_negative(sx1)) call abort
- if (ieee_is_normal(sx1)) call abort
+ if (ieee_is_finite(sx1)) STOP 34
+ if (ieee_is_nan(sx1)) STOP 35
+ if (ieee_is_negative(sx1)) STOP 36
+ if (ieee_is_normal(sx1)) STOP 37
sx1 = ieee_value(sx1, ieee_negative_inf)
- if (ieee_is_finite(sx1)) call abort
- if (ieee_is_nan(sx1)) call abort
- if (.not. ieee_is_negative(sx1)) call abort
- if (ieee_is_normal(sx1)) call abort
+ if (ieee_is_finite(sx1)) STOP 38
+ if (ieee_is_nan(sx1)) STOP 39
+ if (.not. ieee_is_negative(sx1)) STOP 40
+ if (ieee_is_normal(sx1)) STOP 41
sx1 = ieee_value(sx1, ieee_positive_normal)
- if (.not. ieee_is_finite(sx1)) call abort
- if (ieee_is_nan(sx1)) call abort
- if (ieee_is_negative(sx1)) call abort
- if (.not. ieee_is_normal(sx1)) call abort
+ if (.not. ieee_is_finite(sx1)) STOP 42
+ if (ieee_is_nan(sx1)) STOP 43
+ if (ieee_is_negative(sx1)) STOP 44
+ if (.not. ieee_is_normal(sx1)) STOP 45
sx1 = ieee_value(sx1, ieee_negative_normal)
- if (.not. ieee_is_finite(sx1)) call abort
- if (ieee_is_nan(sx1)) call abort
- if (.not. ieee_is_negative(sx1)) call abort
- if (.not. ieee_is_normal(sx1)) call abort
+ if (.not. ieee_is_finite(sx1)) STOP 46
+ if (ieee_is_nan(sx1)) STOP 47
+ if (.not. ieee_is_negative(sx1)) STOP 48
+ if (.not. ieee_is_normal(sx1)) STOP 49
sx1 = ieee_value(sx1, ieee_positive_denormal)
- if (.not. ieee_is_finite(sx1)) call abort
- if (ieee_is_nan(sx1)) call abort
- if (ieee_is_negative(sx1)) call abort
- if (ieee_is_normal(sx1)) call abort
- if (sx1 <= 0) call abort
- if (sx1 >= tiny(sx1)) call abort
+ if (.not. ieee_is_finite(sx1)) STOP 50
+ if (ieee_is_nan(sx1)) STOP 51
+ if (ieee_is_negative(sx1)) STOP 52
+ if (ieee_is_normal(sx1)) STOP 53
+ if (sx1 <= 0) STOP 54
+ if (sx1 >= tiny(sx1)) STOP 55
sx1 = ieee_value(sx1, ieee_negative_denormal)
- if (.not. ieee_is_finite(sx1)) call abort
- if (ieee_is_nan(sx1)) call abort
- if (.not. ieee_is_negative(sx1)) call abort
- if (ieee_is_normal(sx1)) call abort
- if (sx1 >= 0) call abort
- if (sx1 <= -tiny(sx1)) call abort
+ if (.not. ieee_is_finite(sx1)) STOP 56
+ if (ieee_is_nan(sx1)) STOP 57
+ if (.not. ieee_is_negative(sx1)) STOP 58
+ if (ieee_is_normal(sx1)) STOP 59
+ if (sx1 >= 0) STOP 60
+ if (sx1 <= -tiny(sx1)) STOP 61
sx1 = ieee_value(sx1, ieee_positive_zero)
- if (.not. ieee_is_finite(sx1)) call abort
- if (ieee_is_nan(sx1)) call abort
- if (ieee_is_negative(sx1)) call abort
- if (.not. ieee_is_normal(sx1)) call abort
- if (sx1 /= 0) call abort
+ if (.not. ieee_is_finite(sx1)) STOP 62
+ if (ieee_is_nan(sx1)) STOP 63
+ if (ieee_is_negative(sx1)) STOP 64
+ if (.not. ieee_is_normal(sx1)) STOP 65
+ if (sx1 /= 0) STOP 66
sx1 = ieee_value(sx1, ieee_negative_zero)
- if (.not. ieee_is_finite(sx1)) call abort
- if (ieee_is_nan(sx1)) call abort
- if (.not. ieee_is_negative(sx1)) call abort
- if (.not. ieee_is_normal(sx1)) call abort
- if (sx1 /= 0) call abort
+ if (.not. ieee_is_finite(sx1)) STOP 67
+ if (ieee_is_nan(sx1)) STOP 68
+ if (.not. ieee_is_negative(sx1)) STOP 69
+ if (.not. ieee_is_normal(sx1)) STOP 70
+ if (sx1 /= 0) STOP 71
end if
if (ieee_support_datatype(0._d)) then
dx1 = ieee_value(dx1, ieee_quiet_nan)
- if (.not. ieee_is_nan(dx1)) call abort
- if (.not. ieee_unordered(dx1, dx1)) call abort
- if (.not. ieee_unordered(dx1, 0._s)) call abort
- if (.not. ieee_unordered(dx1, 0._d)) call abort
- if (.not. ieee_unordered(0._s, dx1)) call abort
- if (.not. ieee_unordered(0._d, dx1)) call abort
- if (ieee_unordered(0._d, 0._d)) call abort
+ if (.not. ieee_is_nan(dx1)) STOP 72
+ if (.not. ieee_unordered(dx1, dx1)) STOP 73
+ if (.not. ieee_unordered(dx1, 0._s)) STOP 74
+ if (.not. ieee_unordered(dx1, 0._d)) STOP 75
+ if (.not. ieee_unordered(0._s, dx1)) STOP 76
+ if (.not. ieee_unordered(0._d, dx1)) STOP 77
+ if (ieee_unordered(0._d, 0._d)) STOP 78
dx1 = ieee_value(dx1, ieee_positive_inf)
- if (ieee_is_finite(dx1)) call abort
- if (ieee_is_nan(dx1)) call abort
- if (ieee_is_negative(dx1)) call abort
- if (ieee_is_normal(dx1)) call abort
+ if (ieee_is_finite(dx1)) STOP 79
+ if (ieee_is_nan(dx1)) STOP 80
+ if (ieee_is_negative(dx1)) STOP 81
+ if (ieee_is_normal(dx1)) STOP 82
dx1 = ieee_value(dx1, ieee_negative_inf)
- if (ieee_is_finite(dx1)) call abort
- if (ieee_is_nan(dx1)) call abort
- if (.not. ieee_is_negative(dx1)) call abort
- if (ieee_is_normal(dx1)) call abort
+ if (ieee_is_finite(dx1)) STOP 83
+ if (ieee_is_nan(dx1)) STOP 84
+ if (.not. ieee_is_negative(dx1)) STOP 85
+ if (ieee_is_normal(dx1)) STOP 86
dx1 = ieee_value(dx1, ieee_positive_normal)
- if (.not. ieee_is_finite(dx1)) call abort
- if (ieee_is_nan(dx1)) call abort
- if (ieee_is_negative(dx1)) call abort
- if (.not. ieee_is_normal(dx1)) call abort
+ if (.not. ieee_is_finite(dx1)) STOP 87
+ if (ieee_is_nan(dx1)) STOP 88
+ if (ieee_is_negative(dx1)) STOP 89
+ if (.not. ieee_is_normal(dx1)) STOP 90
dx1 = ieee_value(dx1, ieee_negative_normal)
- if (.not. ieee_is_finite(dx1)) call abort
- if (ieee_is_nan(dx1)) call abort
- if (.not. ieee_is_negative(dx1)) call abort
- if (.not. ieee_is_normal(dx1)) call abort
+ if (.not. ieee_is_finite(dx1)) STOP 91
+ if (ieee_is_nan(dx1)) STOP 92
+ if (.not. ieee_is_negative(dx1)) STOP 93
+ if (.not. ieee_is_normal(dx1)) STOP 94
dx1 = ieee_value(dx1, ieee_positive_denormal)
- if (.not. ieee_is_finite(dx1)) call abort
- if (ieee_is_nan(dx1)) call abort
- if (ieee_is_negative(dx1)) call abort
- if (ieee_is_normal(dx1)) call abort
- if (dx1 <= 0) call abort
- if (dx1 >= tiny(dx1)) call abort
+ if (.not. ieee_is_finite(dx1)) STOP 95
+ if (ieee_is_nan(dx1)) STOP 96
+ if (ieee_is_negative(dx1)) STOP 97
+ if (ieee_is_normal(dx1)) STOP 98
+ if (dx1 <= 0) STOP 99
+ if (dx1 >= tiny(dx1)) STOP 100
dx1 = ieee_value(dx1, ieee_negative_denormal)
- if (.not. ieee_is_finite(dx1)) call abort
- if (ieee_is_nan(dx1)) call abort
- if (.not. ieee_is_negative(dx1)) call abort
- if (ieee_is_normal(dx1)) call abort
- if (dx1 >= 0) call abort
- if (dx1 <= -tiny(dx1)) call abort
+ if (.not. ieee_is_finite(dx1)) STOP 101
+ if (ieee_is_nan(dx1)) STOP 102
+ if (.not. ieee_is_negative(dx1)) STOP 103
+ if (ieee_is_normal(dx1)) STOP 104
+ if (dx1 >= 0) STOP 105
+ if (dx1 <= -tiny(dx1)) STOP 106
dx1 = ieee_value(dx1, ieee_positive_zero)
- if (.not. ieee_is_finite(dx1)) call abort
- if (ieee_is_nan(dx1)) call abort
- if (ieee_is_negative(dx1)) call abort
- if (.not. ieee_is_normal(dx1)) call abort
- if (dx1 /= 0) call abort
+ if (.not. ieee_is_finite(dx1)) STOP 107
+ if (ieee_is_nan(dx1)) STOP 108
+ if (ieee_is_negative(dx1)) STOP 109
+ if (.not. ieee_is_normal(dx1)) STOP 110
+ if (dx1 /= 0) STOP 111
dx1 = ieee_value(dx1, ieee_negative_zero)
- if (.not. ieee_is_finite(dx1)) call abort
- if (ieee_is_nan(dx1)) call abort
- if (.not. ieee_is_negative(dx1)) call abort
- if (.not. ieee_is_normal(dx1)) call abort
- if (dx1 /= 0) call abort
+ if (.not. ieee_is_finite(dx1)) STOP 112
+ if (ieee_is_nan(dx1)) STOP 113
+ if (.not. ieee_is_negative(dx1)) STOP 114
+ if (.not. ieee_is_normal(dx1)) STOP 115
+ if (dx1 /= 0) STOP 116
end if
diff --git a/gcc/testsuite/gfortran.dg/ieee/ieee_6.f90 b/gcc/testsuite/gfortran.dg/ieee/ieee_6.f90
index 43aa3bfe0a5..96ceaff09b0 100644
--- a/gcc/testsuite/gfortran.dg/ieee/ieee_6.f90
+++ b/gcc/testsuite/gfortran.dg/ieee/ieee_6.f90
@@ -24,18 +24,18 @@
call ieee_set_status(s1)
call ieee_get_flag(ieee_all, flags)
- if (any(flags)) call abort
+ if (any(flags)) STOP 1
call ieee_get_rounding_mode(mode)
- if (mode /= ieee_down) call abort
+ if (mode /= ieee_down) STOP 2
call ieee_get_halting_mode(ieee_all, halt)
- if (any(halt)) call abort
+ if (any(halt)) STOP 3
call ieee_set_rounding_mode(ieee_to_zero)
call ieee_set_flag(ieee_underflow, .true.)
call ieee_set_halting_mode(ieee_overflow, .true.)
x = -1
x = sqrt(x)
- if (.not. ieee_is_nan(x)) call abort
+ if (.not. ieee_is_nan(x)) STOP 4
call ieee_get_status(s2)
@@ -43,11 +43,11 @@
if (.not. (all(flags .eqv. [.false.,.false.,.true.,.true.,.false.]) &
.or. all(flags .eqv. [.false.,.false.,.true.,.true.,.true.]) &
.or. all(flags .eqv. [.false.,.false.,.true.,.false.,.false.]) &
- .or. all(flags .eqv. [.false.,.false.,.true.,.false.,.true.]))) call abort
+ .or. all(flags .eqv. [.false.,.false.,.true.,.false.,.true.]))) STOP 5
call ieee_get_rounding_mode(mode)
- if (mode /= ieee_to_zero) call abort
+ if (mode /= ieee_to_zero) STOP 6
call ieee_get_halting_mode(ieee_all, halt)
- if ((haltworks .and. .not. halt(1)) .or. any(halt(2:))) call abort
+ if ((haltworks .and. .not. halt(1)) .or. any(halt(2:))) STOP 7
call ieee_set_status(s2)
@@ -55,20 +55,20 @@
if (.not. (all(flags .eqv. [.false.,.false.,.true.,.true.,.false.]) &
.or. all(flags .eqv. [.false.,.false.,.true.,.true.,.true.]) &
.or. all(flags .eqv. [.false.,.false.,.true.,.false.,.false.]) &
- .or. all(flags .eqv. [.false.,.false.,.true.,.false.,.true.]))) call abort
+ .or. all(flags .eqv. [.false.,.false.,.true.,.false.,.true.]))) STOP 8
call ieee_get_rounding_mode(mode)
- if (mode /= ieee_to_zero) call abort
+ if (mode /= ieee_to_zero) STOP 9
call ieee_get_halting_mode(ieee_all, halt)
- if ((haltworks .and. .not. halt(1)) .or. any(halt(2:))) call abort
+ if ((haltworks .and. .not. halt(1)) .or. any(halt(2:))) STOP 10
call ieee_set_status(s1)
call ieee_get_flag(ieee_all, flags)
- if (any(flags)) call abort
+ if (any(flags)) STOP 11
call ieee_get_rounding_mode(mode)
- if (mode /= ieee_down) call abort
+ if (mode /= ieee_down) STOP 12
call ieee_get_halting_mode(ieee_all, halt)
- if (any(halt)) call abort
+ if (any(halt)) STOP 13
call ieee_set_status(s2)
@@ -76,10 +76,10 @@
if (.not. (all(flags .eqv. [.false.,.false.,.true.,.true.,.false.]) &
.or. all(flags .eqv. [.false.,.false.,.true.,.true.,.true.]) &
.or. all(flags .eqv. [.false.,.false.,.true.,.false.,.false.]) &
- .or. all(flags .eqv. [.false.,.false.,.true.,.false.,.true.]))) call abort
+ .or. all(flags .eqv. [.false.,.false.,.true.,.false.,.true.]))) STOP 14
call ieee_get_rounding_mode(mode)
- if (mode /= ieee_to_zero) call abort
+ if (mode /= ieee_to_zero) STOP 15
call ieee_get_halting_mode(ieee_all, halt)
- if ((haltworks .and. .not. halt(1)) .or. any(halt(2:))) call abort
+ if ((haltworks .and. .not. halt(1)) .or. any(halt(2:))) STOP 16
end
diff --git a/gcc/testsuite/gfortran.dg/ieee/ieee_7.f90 b/gcc/testsuite/gfortran.dg/ieee/ieee_7.f90
index 272b698d499..363755e7668 100644
--- a/gcc/testsuite/gfortran.dg/ieee/ieee_7.f90
+++ b/gcc/testsuite/gfortran.dg/ieee/ieee_7.f90
@@ -19,22 +19,22 @@
! Test IEEE_SELECTED_REAL_KIND
if (ieee_support_datatype(0.)) then
- if (ieee_selected_real_kind() /= kind(0.)) call abort
- if (ieee_selected_real_kind(0) /= kind(0.)) call abort
- if (ieee_selected_real_kind(0,0) /= kind(0.)) call abort
- if (ieee_selected_real_kind(0,0,2) /= kind(0.)) call abort
+ if (ieee_selected_real_kind() /= kind(0.)) STOP 1
+ if (ieee_selected_real_kind(0) /= kind(0.)) STOP 2
+ if (ieee_selected_real_kind(0,0) /= kind(0.)) STOP 3
+ if (ieee_selected_real_kind(0,0,2) /= kind(0.)) STOP 4
end if
if (ieee_support_datatype(0.d0)) then
- if (ieee_selected_real_kind(precision(0.)+1) /= kind(0.d0)) call abort
- if (ieee_selected_real_kind(precision(0.),range(0.)+1) /= kind(0.d0)) call abort
- if (ieee_selected_real_kind(precision(0.)+1,range(0.)+1) /= kind(0.d0)) call abort
- if (ieee_selected_real_kind(precision(0.)+1,range(0.)+1,2) /= kind(0.d0)) call abort
+ if (ieee_selected_real_kind(precision(0.)+1) /= kind(0.d0)) STOP 5
+ if (ieee_selected_real_kind(precision(0.),range(0.)+1) /= kind(0.d0)) STOP 6
+ if (ieee_selected_real_kind(precision(0.)+1,range(0.)+1) /= kind(0.d0)) STOP 7
+ if (ieee_selected_real_kind(precision(0.)+1,range(0.)+1,2) /= kind(0.d0)) STOP 8
end if
- if (ieee_selected_real_kind(0,0,3) /= -5) call abort
- if (ieee_selected_real_kind(100*precision(0._maxreal)) /= -1) call abort
- if (ieee_selected_real_kind(0,100*range(0._maxreal)) /= -2) call abort
- if (ieee_selected_real_kind(100*precision(0._maxreal),100*range(0._maxreal)) /= -3) call abort
+ if (ieee_selected_real_kind(0,0,3) /= -5) STOP 9
+ if (ieee_selected_real_kind(100*precision(0._maxreal)) /= -1) STOP 10
+ if (ieee_selected_real_kind(0,100*range(0._maxreal)) /= -2) STOP 11
+ if (ieee_selected_real_kind(100*precision(0._maxreal),100*range(0._maxreal)) /= -3) STOP 12
end
diff --git a/gcc/testsuite/gfortran.dg/ieee/ieee_8.f90 b/gcc/testsuite/gfortran.dg/ieee/ieee_8.f90
index 0a3213a7c58..d847b1b3eee 100644
--- a/gcc/testsuite/gfortran.dg/ieee/ieee_8.f90
+++ b/gcc/testsuite/gfortran.dg/ieee/ieee_8.f90
@@ -98,16 +98,16 @@ subroutine gee(n, rounding, flag)
integer, parameter :: x8 = merge(4,2,ieee_support_halting(ieee_overflow))
- if (len(s1) /= x1) call abort
- if (len(s2) /= x2) call abort
- if (len(s3) /= x3) call abort
+ if (len(s1) /= x1) STOP 1
+ if (len(s2) /= x2) STOP 2
+ if (len(s3) /= x3) STOP 3
- if (len(s4) /= x4) call abort
- if (len(s5) /= x5) call abort
+ if (len(s4) /= x4) STOP 4
+ if (len(s5) /= x5) STOP 5
- if (len(s6) /= x6) call abort
- if (len(s7) /= x7) call abort
+ if (len(s6) /= x6) STOP 6
+ if (len(s7) /= x7) STOP 7
- if (len(s8) /= x8) call abort
+ if (len(s8) /= x8) STOP 8
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/ieee/intrinsics_1.f90 b/gcc/testsuite/gfortran.dg/ieee/intrinsics_1.f90
index 6a9abdd670b..f0debeb38de 100644
--- a/gcc/testsuite/gfortran.dg/ieee/intrinsics_1.f90
+++ b/gcc/testsuite/gfortran.dg/ieee/intrinsics_1.f90
@@ -11,33 +11,33 @@ program test
call check_positive_zero(fraction(0.))
call check_negative_zero(fraction(-0.))
- if (.not. isnan(fraction(inf))) call abort
- if (.not. isnan(fraction(-inf))) call abort
- if (.not. isnan(fraction(nan))) call abort
-
- if (exponent(0.) /= 0) call abort
- if (exponent(-0.) /= 0) call abort
- if (exponent(inf) /= huge(0)) call abort
- if (exponent(-inf) /= huge(0)) call abort
- if (exponent(nan) /= huge(0)) call abort
-
- if (spacing(0.) /= spacing(tiny(0.))) call abort
- if (spacing(-0.) /= spacing(tiny(0.))) call abort
- if (.not. isnan(spacing(inf))) call abort
- if (.not. isnan(spacing(-inf))) call abort
- if (.not. isnan(spacing(nan))) call abort
+ if (.not. isnan(fraction(inf))) STOP 1
+ if (.not. isnan(fraction(-inf))) STOP 2
+ if (.not. isnan(fraction(nan))) STOP 3
+
+ if (exponent(0.) /= 0) STOP 4
+ if (exponent(-0.) /= 0) STOP 5
+ if (exponent(inf) /= huge(0)) STOP 6
+ if (exponent(-inf) /= huge(0)) STOP 7
+ if (exponent(nan) /= huge(0)) STOP 8
+
+ if (spacing(0.) /= spacing(tiny(0.))) STOP 9
+ if (spacing(-0.) /= spacing(tiny(0.))) STOP 10
+ if (.not. isnan(spacing(inf))) STOP 11
+ if (.not. isnan(spacing(-inf))) STOP 12
+ if (.not. isnan(spacing(nan))) STOP 13
call check_positive_zero(rrspacing(0.))
call check_positive_zero(rrspacing(-0.))
- if (.not. isnan(rrspacing(inf))) call abort
- if (.not. isnan(rrspacing(-inf))) call abort
- if (.not. isnan(rrspacing(nan))) call abort
+ if (.not. isnan(rrspacing(inf))) STOP 14
+ if (.not. isnan(rrspacing(-inf))) STOP 15
+ if (.not. isnan(rrspacing(nan))) STOP 16
call check_positive_zero(set_exponent(0.,42))
call check_negative_zero(set_exponent(-0.,42))
- if (.not. isnan(set_exponent(inf, 42))) call abort
- if (.not. isnan(set_exponent(-inf, 42))) call abort
- if (.not. isnan(set_exponent(nan, 42))) call abort
+ if (.not. isnan(set_exponent(inf, 42))) STOP 17
+ if (.not. isnan(set_exponent(-inf, 42))) STOP 18
+ if (.not. isnan(set_exponent(nan, 42))) STOP 19
contains
@@ -46,7 +46,7 @@ contains
implicit none
real, value :: x
- if (ieee_class (x) /= ieee_positive_zero) call abort
+ if (ieee_class (x) /= ieee_positive_zero) STOP 20
end
subroutine check_negative_zero(x)
@@ -54,7 +54,7 @@ contains
implicit none
real, value :: x
- if (ieee_class (x) /= ieee_negative_zero) call abort
+ if (ieee_class (x) /= ieee_negative_zero) STOP 21
end
end
diff --git a/gcc/testsuite/gfortran.dg/ieee/intrinsics_2.F90 b/gcc/testsuite/gfortran.dg/ieee/intrinsics_2.F90
index a179da24090..de0b2850337 100644
--- a/gcc/testsuite/gfortran.dg/ieee/intrinsics_2.F90
+++ b/gcc/testsuite/gfortran.dg/ieee/intrinsics_2.F90
@@ -13,38 +13,38 @@ program test
x = 0.
call check_positive_zero(fraction(x))
- if (exponent(x) /= 0) call abort
- if (spacing(x) /= spacing(tiny(x))) call abort
+ if (exponent(x) /= 0) STOP 1
+ if (spacing(x) /= spacing(tiny(x))) STOP 2
call check_positive_zero(rrspacing(x))
call check_positive_zero(set_exponent(x,42))
x = -0.
call check_negative_zero(fraction(x))
- if (exponent(x) /= 0) call abort
- if (spacing(x) /= spacing(tiny(x))) call abort
+ if (exponent(x) /= 0) STOP 3
+ if (spacing(x) /= spacing(tiny(x))) STOP 4
call check_positive_zero(rrspacing(x))
call check_negative_zero(set_exponent(x,42))
x = inf
- if (.not. isnan(fraction(x))) call abort
- if (exponent(x) /= huge(0)) call abort
- if (.not. isnan(spacing(x))) call abort
- if (.not. isnan(rrspacing(x))) call abort
- if (.not. isnan(set_exponent(x, 42))) call abort
+ if (.not. isnan(fraction(x))) STOP 5
+ if (exponent(x) /= huge(0)) STOP 6
+ if (.not. isnan(spacing(x))) STOP 7
+ if (.not. isnan(rrspacing(x))) STOP 8
+ if (.not. isnan(set_exponent(x, 42))) STOP 9
x = -inf
- if (.not. isnan(fraction(x))) call abort
- if (exponent(x) /= huge(0)) call abort
- if (.not. isnan(spacing(x))) call abort
- if (.not. isnan(rrspacing(x))) call abort
- if (.not. isnan(set_exponent(x, 42))) call abort
+ if (.not. isnan(fraction(x))) STOP 10
+ if (exponent(x) /= huge(0)) STOP 11
+ if (.not. isnan(spacing(x))) STOP 12
+ if (.not. isnan(rrspacing(x))) STOP 13
+ if (.not. isnan(set_exponent(x, 42))) STOP 14
x = nan
- if (.not. isnan(fraction(x))) call abort
- if (exponent(x) /= huge(0)) call abort
- if (.not. isnan(spacing(x))) call abort
- if (.not. isnan(rrspacing(x))) call abort
- if (.not. isnan(set_exponent(x, 42))) call abort
+ if (.not. isnan(fraction(x))) STOP 15
+ if (exponent(x) /= huge(0)) STOP 16
+ if (.not. isnan(spacing(x))) STOP 17
+ if (.not. isnan(rrspacing(x))) STOP 18
+ if (.not. isnan(set_exponent(x, 42))) STOP 19
contains
@@ -53,7 +53,7 @@ contains
implicit none
real, value :: x
- if (ieee_class (x) /= ieee_positive_zero) call abort
+ if (ieee_class (x) /= ieee_positive_zero) STOP 20
end
subroutine check_negative_zero(x)
@@ -61,7 +61,7 @@ contains
implicit none
real, value :: x
- if (ieee_class (x) /= ieee_negative_zero) call abort
+ if (ieee_class (x) /= ieee_negative_zero) STOP 21
end
end
diff --git a/gcc/testsuite/gfortran.dg/ieee/large_1.f90 b/gcc/testsuite/gfortran.dg/ieee/large_1.f90
index 92cdba67bf0..65b42e9041f 100644
--- a/gcc/testsuite/gfortran.dg/ieee/large_1.f90
+++ b/gcc/testsuite/gfortran.dg/ieee/large_1.f90
@@ -20,122 +20,122 @@ program test
! Checking ieee_is_finite
- if (.not. ieee_is_finite(huge(0._k1))) call abort
- if (ieee_is_finite(ieee_value(0._k1, ieee_negative_inf))) call abort
+ if (.not. ieee_is_finite(huge(0._k1))) STOP 1
+ if (ieee_is_finite(ieee_value(0._k1, ieee_negative_inf))) STOP 2
x1 = -42
- if (.not. ieee_is_finite(x1)) call abort
- if (ieee_is_finite(sqrt(x1))) call abort
+ if (.not. ieee_is_finite(x1)) STOP 3
+ if (ieee_is_finite(sqrt(x1))) STOP 4
- if (.not. ieee_is_finite(huge(0._k2))) call abort
- if (ieee_is_finite(ieee_value(0._k2, ieee_negative_inf))) call abort
+ if (.not. ieee_is_finite(huge(0._k2))) STOP 5
+ if (ieee_is_finite(ieee_value(0._k2, ieee_negative_inf))) STOP 6
x2 = -42
- if (.not. ieee_is_finite(x2)) call abort
- if (ieee_is_finite(sqrt(x2))) call abort
+ if (.not. ieee_is_finite(x2)) STOP 7
+ if (ieee_is_finite(sqrt(x2))) STOP 8
! Other ieee_is intrinsics
- if (ieee_is_nan(huge(0._k1))) call abort
- if (.not. ieee_is_negative(-huge(0._k1))) call abort
- if (.not. ieee_is_normal(-huge(0._k1))) call abort
+ if (ieee_is_nan(huge(0._k1))) STOP 9
+ if (.not. ieee_is_negative(-huge(0._k1))) STOP 10
+ if (.not. ieee_is_normal(-huge(0._k1))) STOP 11
- if (ieee_is_nan(huge(0._k2))) call abort
- if (.not. ieee_is_negative(-huge(0._k2))) call abort
- if (.not. ieee_is_normal(-huge(0._k2))) call abort
+ if (ieee_is_nan(huge(0._k2))) STOP 12
+ if (.not. ieee_is_negative(-huge(0._k2))) STOP 13
+ if (.not. ieee_is_normal(-huge(0._k2))) STOP 14
! ieee_support intrinsics
- if (.not. ieee_support_datatype(x1)) call abort
- if (.not. ieee_support_denormal(x1)) call abort
- if (.not. ieee_support_divide(x1)) call abort
- if (.not. ieee_support_inf(x1)) call abort
- if (.not. ieee_support_io(x1)) call abort
- if (.not. ieee_support_nan(x1)) call abort
- if (.not. ieee_support_rounding(ieee_nearest, x1)) call abort
- if (.not. ieee_support_sqrt(x1)) call abort
- if (.not. ieee_support_standard(x1)) call abort
+ if (.not. ieee_support_datatype(x1)) STOP 15
+ if (.not. ieee_support_denormal(x1)) STOP 16
+ if (.not. ieee_support_divide(x1)) STOP 17
+ if (.not. ieee_support_inf(x1)) STOP 18
+ if (.not. ieee_support_io(x1)) STOP 19
+ if (.not. ieee_support_nan(x1)) STOP 20
+ if (.not. ieee_support_rounding(ieee_nearest, x1)) STOP 21
+ if (.not. ieee_support_sqrt(x1)) STOP 22
+ if (.not. ieee_support_standard(x1)) STOP 23
l = ieee_support_underflow_control(x1)
- if (.not. ieee_support_datatype(x2)) call abort
- if (.not. ieee_support_denormal(x2)) call abort
- if (.not. ieee_support_divide(x2)) call abort
- if (.not. ieee_support_inf(x2)) call abort
- if (.not. ieee_support_io(x2)) call abort
- if (.not. ieee_support_nan(x2)) call abort
- if (.not. ieee_support_rounding(ieee_nearest, x2)) call abort
- if (.not. ieee_support_sqrt(x2)) call abort
- if (.not. ieee_support_standard(x2)) call abort
+ if (.not. ieee_support_datatype(x2)) STOP 24
+ if (.not. ieee_support_denormal(x2)) STOP 25
+ if (.not. ieee_support_divide(x2)) STOP 26
+ if (.not. ieee_support_inf(x2)) STOP 27
+ if (.not. ieee_support_io(x2)) STOP 28
+ if (.not. ieee_support_nan(x2)) STOP 29
+ if (.not. ieee_support_rounding(ieee_nearest, x2)) STOP 30
+ if (.not. ieee_support_sqrt(x2)) STOP 31
+ if (.not. ieee_support_standard(x2)) STOP 32
l = ieee_support_underflow_control(x2)
! ieee_value and ieee_class
- if (.not. ieee_is_nan(ieee_value(x1, ieee_quiet_nan))) call abort
+ if (.not. ieee_is_nan(ieee_value(x1, ieee_quiet_nan))) STOP 33
if (ieee_class(ieee_value(x1, ieee_positive_denormal)) &
- /= ieee_positive_denormal) call abort
+ /= ieee_positive_denormal) STOP 34
- if (.not. ieee_is_nan(ieee_value(x2, ieee_quiet_nan))) call abort
+ if (.not. ieee_is_nan(ieee_value(x2, ieee_quiet_nan))) STOP 35
if (ieee_class(ieee_value(x2, ieee_positive_denormal)) &
- /= ieee_positive_denormal) call abort
+ /= ieee_positive_denormal) STOP 36
! ieee_unordered
- if (.not. ieee_unordered(ieee_value(x1, ieee_quiet_nan), 0._k1)) call abort
- if (ieee_unordered(ieee_value(x1, ieee_negative_inf), 0._k1)) call abort
+ if (.not. ieee_unordered(ieee_value(x1, ieee_quiet_nan), 0._k1)) STOP 37
+ if (ieee_unordered(ieee_value(x1, ieee_negative_inf), 0._k1)) STOP 38
- if (.not. ieee_unordered(ieee_value(x2, ieee_quiet_nan), 0._k2)) call abort
- if (ieee_unordered(ieee_value(x2, ieee_negative_inf), 0._k2)) call abort
+ if (.not. ieee_unordered(ieee_value(x2, ieee_quiet_nan), 0._k2)) STOP 39
+ if (ieee_unordered(ieee_value(x2, ieee_negative_inf), 0._k2)) STOP 40
! ieee_copy_sign
if (.not. ieee_class(ieee_copy_sign(ieee_value(x1, ieee_positive_inf), -1.)) &
- == ieee_negative_inf) call abort
+ == ieee_negative_inf) STOP 41
if (.not. ieee_class(ieee_copy_sign(0._k1, -42._k2)) &
- == ieee_negative_zero) call abort
+ == ieee_negative_zero) STOP 42
if (.not. ieee_class(ieee_copy_sign(ieee_value(x2, ieee_positive_inf), -1.)) &
- == ieee_negative_inf) call abort
+ == ieee_negative_inf) STOP 43
if (.not. ieee_class(ieee_copy_sign(0._k2, -42._k1)) &
- == ieee_negative_zero) call abort
+ == ieee_negative_zero) STOP 44
! ieee_logb
- if (ieee_logb (42._k1) /= exponent(42._k1) - 1) call abort
+ if (ieee_logb (42._k1) /= exponent(42._k1) - 1) STOP 45
- if (ieee_logb (42._k2) /= exponent(42._k2) - 1) call abort
+ if (ieee_logb (42._k2) /= exponent(42._k2) - 1) STOP 46
! ieee_next_after
if (ieee_next_after(42._k1, ieee_value(x1, ieee_positive_inf)) &
- /= 42._k1 + spacing(42._k1)) call abort
+ /= 42._k1 + spacing(42._k1)) STOP 47
if (ieee_next_after(42._k2, ieee_value(x2, ieee_positive_inf)) &
- /= 42._k2 + spacing(42._k2)) call abort
+ /= 42._k2 + spacing(42._k2)) STOP 48
! ieee_rem
if (ieee_class(ieee_rem(-42._k1, 2._k1)) /= ieee_negative_zero) &
- call abort
+ STOP 49
if (ieee_class(ieee_rem(-42._k2, 2._k2)) /= ieee_negative_zero) &
- call abort
+ STOP 50
! ieee_rint
- if (ieee_rint(-1.1_k1) /= -1._k1) call abort
- if (ieee_rint(huge(x1)) /= huge(x1)) call abort
+ if (ieee_rint(-1.1_k1) /= -1._k1) STOP 51
+ if (ieee_rint(huge(x1)) /= huge(x1)) STOP 52
- if (ieee_rint(-1.1_k2) /= -1._k2) call abort
- if (ieee_rint(huge(x2)) /= huge(x2)) call abort
+ if (ieee_rint(-1.1_k2) /= -1._k2) STOP 53
+ if (ieee_rint(huge(x2)) /= huge(x2)) STOP 54
! ieee_scalb
x1 = sqrt(42._k1)
- if (ieee_scalb(x1, 2) /= 4._k1 * x1) call abort
- if (ieee_scalb(x1, -2) /= x1 / 4._k1) call abort
+ if (ieee_scalb(x1, 2) /= 4._k1 * x1) STOP 55
+ if (ieee_scalb(x1, -2) /= x1 / 4._k1) STOP 56
x2 = sqrt(42._k2)
- if (ieee_scalb(x2, 2) /= 4._k2 * x2) call abort
- if (ieee_scalb(x2, -2) /= x2 / 4._k2) call abort
+ if (ieee_scalb(x2, 2) /= 4._k2 * x2) STOP 57
+ if (ieee_scalb(x2, -2) /= x2 / 4._k2) STOP 58
end program test
diff --git a/gcc/testsuite/gfortran.dg/ieee/large_2.f90 b/gcc/testsuite/gfortran.dg/ieee/large_2.f90
index 54e33971054..0ec429a006f 100644
--- a/gcc/testsuite/gfortran.dg/ieee/large_2.f90
+++ b/gcc/testsuite/gfortran.dg/ieee/large_2.f90
@@ -114,7 +114,7 @@ contains
real(kind=k1), intent(in) :: x, y
if (x /= y) then
print *, x, y
- call abort
+ STOP 1
end if
end subroutine
@@ -122,7 +122,7 @@ contains
real(kind=k2), intent(in) :: x, y
if (x /= y) then
print *, x, y
- call abort
+ STOP 2
end if
end subroutine
@@ -130,7 +130,7 @@ contains
real(kind=k1), intent(in) :: x, y
if (x == y) then
print *, x, y
- call abort
+ STOP 3
end if
end subroutine
@@ -138,7 +138,7 @@ contains
real(kind=k2), intent(in) :: x, y
if (x == y) then
print *, x, y
- call abort
+ STOP 4
end if
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/ieee/large_3.F90 b/gcc/testsuite/gfortran.dg/ieee/large_3.F90
index fbba091d031..7fae9acf4c5 100644
--- a/gcc/testsuite/gfortran.dg/ieee/large_3.F90
+++ b/gcc/testsuite/gfortran.dg/ieee/large_3.F90
@@ -32,7 +32,7 @@
FLAGS_STRING(s) ; \
if (s /= expected) then ; \
write (*,"(A,I0,A,A)") "Flags at line ", __LINE__, ": ", s ; \
- call abort ; \
+ STOP 1; \
end if ; \
call check_flag_sub
@@ -150,7 +150,7 @@ contains
if (any(l)) then
print *, "Flags not cleared in subroutine"
- call abort
+ STOP 2
end if
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/ieee/large_4.f90 b/gcc/testsuite/gfortran.dg/ieee/large_4.f90
index c653d299ce9..be2ae643147 100644
--- a/gcc/testsuite/gfortran.dg/ieee/large_4.f90
+++ b/gcc/testsuite/gfortran.dg/ieee/large_4.f90
@@ -20,16 +20,16 @@ program test_underflow_control
x = tiny(x)
call ieee_set_underflow_mode(.true.)
x = x / 2000._kx
- if (x == 0) call abort
+ if (x == 0) STOP 1
call ieee_get_underflow_mode(l)
- if (.not. l) call abort
+ if (.not. l) STOP 2
x = tiny(x)
call ieee_set_underflow_mode(.false.)
x = x / 2000._kx
- if (x > 0) call abort
+ if (x > 0) STOP 3
call ieee_get_underflow_mode(l)
- if (l) call abort
+ if (l) STOP 4
end if
@@ -38,16 +38,16 @@ program test_underflow_control
y = tiny(y)
call ieee_set_underflow_mode(.true.)
y = y / 2000._ky
- if (y == 0) call abort
+ if (y == 0) STOP 5
call ieee_get_underflow_mode(l)
- if (.not. l) call abort
+ if (.not. l) STOP 6
y = tiny(y)
call ieee_set_underflow_mode(.false.)
y = y / 2000._ky
- if (y > 0) call abort
+ if (y > 0) STOP 7
call ieee_get_underflow_mode(l)
- if (l) call abort
+ if (l) STOP 8
end if
diff --git a/gcc/testsuite/gfortran.dg/ieee/rounding_1.f90 b/gcc/testsuite/gfortran.dg/ieee/rounding_1.f90
index c44178ee1ae..469d2d61eb0 100644
--- a/gcc/testsuite/gfortran.dg/ieee/rounding_1.f90
+++ b/gcc/testsuite/gfortran.dg/ieee/rounding_1.f90
@@ -23,15 +23,15 @@
! We should support at least C float and C double types
if (ieee_support_rounding(ieee_nearest)) then
- if (.not. ieee_support_rounding(ieee_nearest, 0.)) call abort
- if (.not. ieee_support_rounding(ieee_nearest, 0.d0)) call abort
+ if (.not. ieee_support_rounding(ieee_nearest, 0.)) STOP 1
+ if (.not. ieee_support_rounding(ieee_nearest, 0.d0)) STOP 2
end if
! The initial rounding mode should probably be NEAREST
! (at least on the platforms we currently support)
if (ieee_support_rounding(ieee_nearest, 0.)) then
call ieee_get_rounding_mode (mode)
- if (mode /= ieee_nearest) call abort
+ if (mode /= ieee_nearest) STOP 3
end if
@@ -121,7 +121,7 @@ contains
real, intent(in) :: x, y
if (x /= y) then
print *, x, y
- call abort
+ STOP 4
end if
end subroutine
@@ -129,7 +129,7 @@ contains
double precision, intent(in) :: x, y
if (x /= y) then
print *, x, y
- call abort
+ STOP 5
end if
end subroutine
@@ -137,7 +137,7 @@ contains
real, intent(in) :: x, y
if (x == y) then
print *, x, y
- call abort
+ STOP 6
end if
end subroutine
@@ -145,7 +145,7 @@ contains
double precision, intent(in) :: x, y
if (x == y) then
print *, x, y
- call abort
+ STOP 7
end if
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/ieee/underflow_1.f90 b/gcc/testsuite/gfortran.dg/ieee/underflow_1.f90
index b77a90c240d..d8a16415828 100644
--- a/gcc/testsuite/gfortran.dg/ieee/underflow_1.f90
+++ b/gcc/testsuite/gfortran.dg/ieee/underflow_1.f90
@@ -16,16 +16,16 @@ program test_underflow_control
x = tiny(x)
call ieee_set_underflow_mode(.true.)
x = x / 2000._kx
- if (x == 0) call abort
+ if (x == 0) STOP 1
call ieee_get_underflow_mode(l)
- if (.not. l) call abort
+ if (.not. l) STOP 2
x = tiny(x)
call ieee_set_underflow_mode(.false.)
x = x / 2000._kx
- if (x > 0) call abort
+ if (x > 0) STOP 3
call ieee_get_underflow_mode(l)
- if (l) call abort
+ if (l) STOP 4
end if
@@ -34,16 +34,16 @@ program test_underflow_control
y = tiny(y)
call ieee_set_underflow_mode(.true.)
y = y / 2000._ky
- if (y == 0) call abort
+ if (y == 0) STOP 5
call ieee_get_underflow_mode(l)
- if (.not. l) call abort
+ if (.not. l) STOP 6
y = tiny(y)
call ieee_set_underflow_mode(.false.)
y = y / 2000._ky
- if (y > 0) call abort
+ if (y > 0) STOP 7
call ieee_get_underflow_mode(l)
- if (l) call abort
+ if (l) STOP 8
end if
diff --git a/gcc/testsuite/gfortran.dg/impl_do_var_data.f90 b/gcc/testsuite/gfortran.dg/impl_do_var_data.f90
index 191562d61fd..44c097e47ca 100644
--- a/gcc/testsuite/gfortran.dg/impl_do_var_data.f90
+++ b/gcc/testsuite/gfortran.dg/impl_do_var_data.f90
@@ -8,5 +8,5 @@ program main
integer:: i
integer, dimension(3):: A
data (A(i:i+2:i+1), i=1,2) /1, 2, 3/
- if(any(A .ne. [1,3,2])) call abort()
+ if(any(A .ne. [1,3,2])) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.dg/implicit_10.f90 b/gcc/testsuite/gfortran.dg/implicit_10.f90
index 4bb14939173..ab251f5dfa5 100644
--- a/gcc/testsuite/gfortran.dg/implicit_10.f90
+++ b/gcc/testsuite/gfortran.dg/implicit_10.f90
@@ -26,7 +26,7 @@
INTEGER i
dimension di(5)
i = 1
- if (fun(di(i),1,2).NE.5) call abort()
+ if (fun(di(i),1,2).NE.5) STOP 1
call sub(di(i),i)
- if (i.NE.4) call abort()
+ if (i.NE.4) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/implicit_12.f90 b/gcc/testsuite/gfortran.dg/implicit_12.f90
index 161d4402669..444b27934ca 100644
--- a/gcc/testsuite/gfortran.dg/implicit_12.f90
+++ b/gcc/testsuite/gfortran.dg/implicit_12.f90
@@ -8,16 +8,16 @@ module mod
parameter(Q2 = 'abcdefghijkl') ! len=12
contains
subroutine sub(Q3)
- if(len('#'//Q3//'#') /= 15) call abort()
- if('#'//Q3//'#' /= '#ABCDEFGHIJKLM#') call abort()
+ if(len('#'//Q3//'#') /= 15) STOP 1
+ if('#'//Q3//'#' /= '#ABCDEFGHIJKLM#') STOP 2
end subroutine sub
end module mod
program startest
use mod
implicit none
- if(len('#'//Q1//'#') /= 10) call abort()
- if(len('#'//Q2//'#') /= 14) call abort()
- if('#'//Q1//'#' /='#12345678#') call abort()
- if('#'//Q2//'#' /='#abcdefghijkl#') call abort()
+ if(len('#'//Q1//'#') /= 10) STOP 3
+ if(len('#'//Q2//'#') /= 14) STOP 4
+ if('#'//Q1//'#' /='#12345678#') STOP 5
+ if('#'//Q2//'#' /='#abcdefghijkl#') STOP 6
call sub('ABCDEFGHIJKLM') ! len=13
end program startest
diff --git a/gcc/testsuite/gfortran.dg/implicit_class_1.f90 b/gcc/testsuite/gfortran.dg/implicit_class_1.f90
index ae689704525..2e2270b9176 100644
--- a/gcc/testsuite/gfortran.dg/implicit_class_1.f90
+++ b/gcc/testsuite/gfortran.dg/implicit_class_1.f90
@@ -23,17 +23,17 @@ program upimp
allocate(aaf, source=foo(2))
select type (aaf)
type is (foo)
- if (aaf%i /= 2) call abort
+ if (aaf%i /= 2) STOP 1
class default
- call abort
+ STOP 2
end select
allocate(caf, source=foo(3))
select type (caf)
type is (foo)
- if (caf%i /= 3) call abort
+ if (caf%i /= 3) STOP 3
class default
- call abort
+ STOP 4
end select
contains
diff --git a/gcc/testsuite/gfortran.dg/implicit_pure_1.f90 b/gcc/testsuite/gfortran.dg/implicit_pure_1.f90
index f49b9ae1938..cc35ab38397 100644
--- a/gcc/testsuite/gfortran.dg/implicit_pure_1.f90
+++ b/gcc/testsuite/gfortran.dg/implicit_pure_1.f90
@@ -37,16 +37,16 @@ program gfcbug114a
use b
implicit none
real :: x = 1, y = 1, t, u, v, w
- if (neval /= 0) call abort ()
+ if (neval /= 0) STOP 1
t = f(x)*f(y)
- if (neval /= 0) call abort ()
+ if (neval /= 0) STOP 2
u = f(x)*f(y) + f(x)*f(y)
- if (neval /= 0) call abort ()
+ if (neval /= 0) STOP 3
v = g(x)*g(y)
- if (neval /= 2) call abort ()
+ if (neval /= 2) STOP 4
w = g(x)*g(y) + g(x)*g(y)
- if (neval /= 6) call abort ()
- if (t /= 1.0 .or. u /= 2.0 .or. v /= 1.0 .or. w /= 2) call abort ()
+ if (neval /= 6) STOP 5
+ if (t /= 1.0 .or. u /= 2.0 .or. v /= 1.0 .or. w /= 2) STOP 6
end program gfcbug114a
! { dg-final { scan-module "b" "IMPLICIT_PURE" } }
diff --git a/gcc/testsuite/gfortran.dg/implied_do_1.f90 b/gcc/testsuite/gfortran.dg/implied_do_1.f90
index d837e8f9f03..93031b5200f 100644
--- a/gcc/testsuite/gfortran.dg/implied_do_1.f90
+++ b/gcc/testsuite/gfortran.dg/implied_do_1.f90
@@ -7,5 +7,5 @@
n = SUM((/(i,i=1,n)/))
! 'i' must not be changed
- IF (i /= 10) CALL abort()
+ IF (i /= 10) STOP 1
END
diff --git a/gcc/testsuite/gfortran.dg/implied_do_io_1.f90 b/gcc/testsuite/gfortran.dg/implied_do_io_1.f90
index aef36af13eb..206129feac7 100644
--- a/gcc/testsuite/gfortran.dg/implied_do_io_1.f90
+++ b/gcc/testsuite/gfortran.dg/implied_do_io_1.f90
@@ -50,7 +50,7 @@ program main
rewind (10)
do i=1,linenum
read (10,'(A)') line
- if (line .ne. res(i)) call abort
+ if (line .ne. res(i)) STOP 1
end do
close(10,status="delete")
1000 format (A2,100I4)
diff --git a/gcc/testsuite/gfortran.dg/implied_do_io_2.f90 b/gcc/testsuite/gfortran.dg/implied_do_io_2.f90
index 52edde54329..30cec9089fe 100644
--- a/gcc/testsuite/gfortran.dg/implied_do_io_2.f90
+++ b/gcc/testsuite/gfortran.dg/implied_do_io_2.f90
@@ -13,11 +13,11 @@ program main
ca(2) = "bar"
ca(3) = "xyzzy"
write (unit=line, fmt='(3A5)') (ca(i),i=1,3)
- if (line /= buffer) call abort
+ if (line /= buffer) STOP 1
ca(1) = ""
ca(2) = ""
ca(3) = ""
read (unit=line, fmt='(3A5)') (ca(i),i=1,3)
- if (line /= buffer) call abort
+ if (line /= buffer) STOP 2
end program
diff --git a/gcc/testsuite/gfortran.dg/implied_do_io_3.f90 b/gcc/testsuite/gfortran.dg/implied_do_io_3.f90
index 6ac89ac8d2c..2f90d57ffaa 100644
--- a/gcc/testsuite/gfortran.dg/implied_do_io_3.f90
+++ b/gcc/testsuite/gfortran.dg/implied_do_io_3.f90
@@ -11,9 +11,9 @@ program main
a = reshape([(((i*10+j),i=1,3),j=1,3)], shape(a))
i = 2147483548
write (unit=line,fmt='(10I3)') (a(i,i),i=1,3)
- if (line /= ' 11 22 33') call abort
+ if (line /= ' 11 22 33') STOP 1
write (unit=line,fmt='(10I3)') (a(i+1,i+1),i=1,2)
- if (line /= ' 22 33') call abort
+ if (line /= ' 22 33') STOP 2
do k=1,3
do j=1,3
do i=1,3
@@ -23,5 +23,5 @@ program main
end do
i = -2147483548
write (unit=line,fmt='(10I4)') ((b(i,j,i),i=1,3),j=1,3)
- if (line /= ' 111 212 313 121 222 323 131 232 333') call abort
+ if (line /= ' 111 212 313 121 222 323 131 232 333') STOP 3
end program main
diff --git a/gcc/testsuite/gfortran.dg/implied_do_io_4.f90 b/gcc/testsuite/gfortran.dg/implied_do_io_4.f90
new file mode 100644
index 00000000000..4b484d7d500
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/implied_do_io_4.f90
@@ -0,0 +1,22 @@
+! { dg-do run }
+! { dg-additional-options "-ffrontend-optimize -fdump-tree-original" }
+! PR fortran/35339 - make sure that I/O of an implied DO loop
+! of allocatable character arrays a) works and b) is converted
+! to a transfer_array
+program main
+ implicit none
+ integer:: i
+ integer, parameter:: N = 10
+ character(len=:), dimension(:),allocatable:: ca
+ allocate(character(len=N):: ca(3))
+ open(unit=10,status="scratch")
+ ca(1) = "foo"
+ ca(2) = "bar"
+ ca(3) = "xyzzy"
+ write (10, '(3A10)') (ca(i),i=1,3)
+ rewind (10)
+ ca(:) = ''
+ read (10, '(3A10)') (ca(i),i=1,3)
+ if (ca(1) /= 'foo' .or. ca(2) /= 'bar' .or. ca(3) /= 'xyzzy') call abort
+end program
+! { dg-final { scan-tree-dump-times "_gfortran_transfer_array" 2 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/implied_shape_1.f08 b/gcc/testsuite/gfortran.dg/implied_shape_1.f08
index 07a1ce83509..d1da90b7216 100644
--- a/gcc/testsuite/gfortran.dg/implied_shape_1.f08
+++ b/gcc/testsuite/gfortran.dg/implied_shape_1.f08
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2008 -fall-intrinsics" }
+! { dg-options "-std=f2008 " }
! Test for correct semantics of implied-shape arrays.
@@ -22,16 +22,16 @@ PROGRAM main
! Character array.
CHARACTER(LEN=*), PARAMETER :: arr4(*) = (/ CHARACTER(LEN=3) :: "ab", "cde" /)
- IF (LBOUND (arr1, 1) /= n .OR. UBOUND (arr1, 1) /= n + 2) CALL abort ()
- IF (SIZE (arr1) /= 3) CALL abort ()
+ IF (LBOUND (arr1, 1) /= n .OR. UBOUND (arr1, 1) /= n + 2) STOP 1
+ IF (SIZE (arr1) /= 3) STOP 2
- IF (LBOUND (arr2, 1) /= 1 .OR. UBOUND (arr2, 1) /= 3) CALL abort ()
- IF (SIZE (arr2) /= 3) CALL abort ()
+ IF (LBOUND (arr2, 1) /= 1 .OR. UBOUND (arr2, 1) /= 3) STOP 3
+ IF (SIZE (arr2) /= 3) STOP 4
IF (ANY (LBOUND (arr3) /= (/ n, 1 /) .OR. UBOUND (arr3) /= (/ n + 1, 2 /))) &
- CALL abort ()
- IF (SIZE (arr3) /= 4) CALL abort ()
+ STOP 5
+ IF (SIZE (arr3) /= 4) STOP 6
- IF (LBOUND (arr4, 1) /= 1 .OR. UBOUND (arr4, 1) /= 2) CALL abort ()
- IF (SIZE (arr4) /= 2) CALL abort ()
+ IF (LBOUND (arr4, 1) /= 1 .OR. UBOUND (arr4, 1) /= 2) STOP 7
+ IF (SIZE (arr4) /= 2) STOP 8
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/import.f90 b/gcc/testsuite/gfortran.dg/import.f90
index 1934a2c49a7..4830eccc87d 100644
--- a/gcc/testsuite/gfortran.dg/import.f90
+++ b/gcc/testsuite/gfortran.dg/import.f90
@@ -8,7 +8,7 @@ subroutine test(x)
integer :: i
end type myType3
type(myType3) :: x
- if(x%i /= 7) call abort()
+ if(x%i /= 7) STOP 1
x%i = 1
end subroutine test
@@ -20,8 +20,8 @@ subroutine bar(x,y)
end type myType
type(myType) :: x
integer(8) :: y
- if(y /= 8) call abort()
- if(x%i /= 2) call abort()
+ if(y /= 8) STOP 2
+ if(x%i /= 2) STOP 3
x%i = 5
y = 42
end subroutine bar
@@ -70,8 +70,8 @@ program foo
y%i = 2
i8 = 8
call bar(y,i8)
- if(y%i /= 5 .or. i8/= 42) call abort()
+ if(y%i /= 5 .or. i8/= 42) STOP 4
z%i = 7
call test(z)
- if(z%i /= 1) call abort()
+ if(z%i /= 1) STOP 5
end program foo
diff --git a/gcc/testsuite/gfortran.dg/import4.f90 b/gcc/testsuite/gfortran.dg/import4.f90
index 99ffd8ad5a2..2cec1cf0aeb 100644
--- a/gcc/testsuite/gfortran.dg/import4.f90
+++ b/gcc/testsuite/gfortran.dg/import4.f90
@@ -5,7 +5,7 @@
subroutine bar(r)
implicit none
integer(8) :: r
- if(r /= 42) call abort()
+ if(r /= 42) STOP 1
r = 13
end subroutine bar
@@ -16,7 +16,7 @@ subroutine foo(a)
character(len=3) :: c
end type myT
type(myT) :: a
- if(a%c /= "xyz") call abort()
+ if(a%c /= "xyz") STOP 2
a%c = "abc"
end subroutine
@@ -28,7 +28,7 @@ subroutine new(a,b)
end type gType
real(8) :: a
type(gType) :: b
- if(a /= 99.0 .or. b%c /= 11) call abort()
+ if(a /= 99.0 .or. b%c /= 11) STOP 3
a = -123.0
b%c = -44
end subroutine new
@@ -70,13 +70,13 @@ module modtest
integer(dp) :: y
y = 42
call bar(y)
- if(y /= 13) call abort()
+ if(y /= 13) STOP 4
end subroutine test
subroutine test2()
type(myT) :: z
z%c = "xyz"
call foo(z)
- if(z%c /= "abc") call abort()
+ if(z%c /= "abc") STOP 5
end subroutine test2
end module modtest
@@ -93,6 +93,6 @@ contains
r = 99.0
t%c = 11
call new(r,t)
- if(r /= -123.0 .or. t%c /= -44) call abort()
+ if(r /= -123.0 .or. t%c /= -44) STOP 6
end subroutine test3
end program all
diff --git a/gcc/testsuite/gfortran.dg/impure_1.f08 b/gcc/testsuite/gfortran.dg/impure_1.f08
index 694b6e38b27..38ecedefb42 100644
--- a/gcc/testsuite/gfortran.dg/impure_1.f08
+++ b/gcc/testsuite/gfortran.dg/impure_1.f08
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2008 -fall-intrinsics" }
+! { dg-options "-std=f2008 " }
! PR fortran/45197
! Check that IMPURE and IMPURE ELEMENTAL in particular works.
@@ -42,18 +42,18 @@ PROGRAM main
! Traverse in forward order.
s = 0
b = accumulate (a, s)
- IF (ANY (b /= (/ 1, 3, 6, 10, 15 /))) CALL abort ()
+ IF (ANY (b /= (/ 1, 3, 6, 10, 15 /))) STOP 1
! And now backward.
s = 0
b = accumulate (a(n:1:-1), s)
- IF (ANY (b /= (/ 5, 9, 12, 14, 15 /))) CALL abort ()
+ IF (ANY (b /= (/ 5, 9, 12, 14, 15 /))) STOP 2
! Use subroutine.
i = 1
arr = 0
CALL impureSub (a)
- IF (ANY (arr /= a)) CALL abort ()
+ IF (ANY (arr /= a)) STOP 3
CONTAINS
diff --git a/gcc/testsuite/gfortran.dg/index.f90 b/gcc/testsuite/gfortran.dg/index.f90
index 58cd25c701e..38b0d0e6d5d 100644
--- a/gcc/testsuite/gfortran.dg/index.f90
+++ b/gcc/testsuite/gfortran.dg/index.f90
@@ -12,11 +12,11 @@
IDA1 = INDEX ( 'DEFDEF' , 'DEF', GDA1 ) !fails
do I = 1, 10
- if (IDA1(i).NE.RSLT(i)) call abort
+ if (IDA1(i).NE.RSLT(i)) STOP 1
end do
IDA1 = INDEX ( (/ ('DEFDEF',i=1,10) /) , 'DEF', GDA1 ) !works
do I = 1, 10
- if (IDA1(i).NE.RSLT(i)) call abort
+ if (IDA1(i).NE.RSLT(i)) STOP 2
end do
END
diff --git a/gcc/testsuite/gfortran.dg/index_2.f90 b/gcc/testsuite/gfortran.dg/index_2.f90
index 9b92f0acee7..d0e99bd99d4 100644
--- a/gcc/testsuite/gfortran.dg/index_2.f90
+++ b/gcc/testsuite/gfortran.dg/index_2.f90
@@ -8,47 +8,47 @@
string1 = 'ABCDEEDCBA'
string4 = 'ABCDEEDCBA'
- if(index(string1,1_'A') /= 1) call abort()
- if(index(string4,4_'A') /= 1) call abort()
- if(index(string1,1_'A',kind=4) /= 1_4) call abort()
- if(index(string4,4_'A',kind=4) /= 1_4) call abort()
- if(index(string1,1_'A',kind=1) /= 1_1) call abort()
- if(index(string4,4_'A',kind=1) /= 1_1) call abort()
+ if(index(string1,1_'A') /= 1) STOP 1
+ if(index(string4,4_'A') /= 1) STOP 2
+ if(index(string1,1_'A',kind=4) /= 1_4) STOP 3
+ if(index(string4,4_'A',kind=4) /= 1_4) STOP 4
+ if(index(string1,1_'A',kind=1) /= 1_1) STOP 5
+ if(index(string4,4_'A',kind=1) /= 1_1) STOP 6
- if(index(string1,1_'A',back=.true.) /= 10) call abort()
- if(index(string4,4_'A',back=.true.) /= 10) call abort()
- if(index(string1,1_'A',kind=4,back=.true.) /= 10_4) call abort()
- if(index(string4,4_'A',kind=4,back=.true.) /= 10_4) call abort()
- if(index(string1,1_'A',kind=1,back=.true.) /= 10_1) call abort()
- if(index(string4,4_'A',kind=1,back=.true.) /= 10_1) call abort()
+ if(index(string1,1_'A',back=.true.) /= 10) STOP 7
+ if(index(string4,4_'A',back=.true.) /= 10) STOP 8
+ if(index(string1,1_'A',kind=4,back=.true.) /= 10_4) STOP 9
+ if(index(string4,4_'A',kind=4,back=.true.) /= 10_4) STOP 10
+ if(index(string1,1_'A',kind=1,back=.true.) /= 10_1) STOP 11
+ if(index(string4,4_'A',kind=1,back=.true.) /= 10_1) STOP 12
- if(index(string1,1_'A',back=.false.) /= 1) call abort()
- if(index(string4,4_'A',back=.false.) /= 1) call abort()
- if(index(string1,1_'A',kind=4,back=.false.) /= 1_4) call abort()
- if(index(string4,4_'A',kind=4,back=.false.) /= 1_4) call abort()
- if(index(string1,1_'A',kind=1,back=.false.) /= 1_1) call abort()
- if(index(string4,4_'A',kind=1,back=.false.) /= 1_1) call abort()
+ if(index(string1,1_'A',back=.false.) /= 1) STOP 13
+ if(index(string4,4_'A',back=.false.) /= 1) STOP 14
+ if(index(string1,1_'A',kind=4,back=.false.) /= 1_4) STOP 15
+ if(index(string4,4_'A',kind=4,back=.false.) /= 1_4) STOP 16
+ if(index(string1,1_'A',kind=1,back=.false.) /= 1_1) STOP 17
+ if(index(string4,4_'A',kind=1,back=.false.) /= 1_1) STOP 18
- if(scan(string1,1_'A') /= 1) call abort()
- if(scan(string4,4_'A') /= 1) call abort()
- if(scan(string1,1_'A',kind=4) /= 1_4) call abort()
- if(scan(string4,4_'A',kind=4) /= 1_4) call abort()
- if(scan(string1,1_'A',kind=1) /= 1_1) call abort()
- if(scan(string4,4_'A',kind=1) /= 1_1) call abort()
+ if(scan(string1,1_'A') /= 1) STOP 19
+ if(scan(string4,4_'A') /= 1) STOP 20
+ if(scan(string1,1_'A',kind=4) /= 1_4) STOP 21
+ if(scan(string4,4_'A',kind=4) /= 1_4) STOP 22
+ if(scan(string1,1_'A',kind=1) /= 1_1) STOP 23
+ if(scan(string4,4_'A',kind=1) /= 1_1) STOP 24
- if(scan(string1,1_'A',back=.true.) /= 10) call abort()
- if(scan(string4,4_'A',back=.true.) /= 10) call abort()
- if(scan(string1,1_'A',kind=4,back=.true.) /= 10_4) call abort()
- if(scan(string4,4_'A',kind=4,back=.true.) /= 10_4) call abort()
- if(scan(string1,1_'A',kind=1,back=.true.) /= 10_1) call abort()
- if(scan(string4,4_'A',kind=1,back=.true.) /= 10_1) call abort()
+ if(scan(string1,1_'A',back=.true.) /= 10) STOP 25
+ if(scan(string4,4_'A',back=.true.) /= 10) STOP 26
+ if(scan(string1,1_'A',kind=4,back=.true.) /= 10_4) STOP 27
+ if(scan(string4,4_'A',kind=4,back=.true.) /= 10_4) STOP 28
+ if(scan(string1,1_'A',kind=1,back=.true.) /= 10_1) STOP 29
+ if(scan(string4,4_'A',kind=1,back=.true.) /= 10_1) STOP 30
- if(scan(string1,1_'A',back=.false.) /= 1) call abort()
- if(scan(string4,4_'A',back=.false.) /= 1) call abort()
- if(scan(string1,1_'A',kind=4,back=.false.) /= 1_4) call abort()
- if(scan(string4,4_'A',kind=4,back=.false.) /= 1_4) call abort()
- if(scan(string1,1_'A',kind=1,back=.false.) /= 1_1) call abort()
- if(scan(string4,4_'A',kind=1,back=.false.) /= 1_1) call abort()
+ if(scan(string1,1_'A',back=.false.) /= 1) STOP 31
+ if(scan(string4,4_'A',back=.false.) /= 1) STOP 32
+ if(scan(string1,1_'A',kind=4,back=.false.) /= 1_4) STOP 33
+ if(scan(string4,4_'A',kind=4,back=.false.) /= 1_4) STOP 34
+ if(scan(string1,1_'A',kind=1,back=.false.) /= 1_1) STOP 35
+ if(scan(string4,4_'A',kind=1,back=.false.) /= 1_1) STOP 36
end
! { dg-final { scan-tree-dump-times "if ..integer.kind=1.. _gfortran_string_index" 6 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/init_flag_1.f90 b/gcc/testsuite/gfortran.dg/init_flag_1.f90
index 764d3225256..44714086f86 100644
--- a/gcc/testsuite/gfortran.dg/init_flag_1.f90
+++ b/gcc/testsuite/gfortran.dg/init_flag_1.f90
@@ -15,43 +15,43 @@ subroutine real_test
real r1
real r2(10)
dimension r3(10,10)
- if (r1 /= 0.0) call abort
- if (r2(2) /= 0.0) call abort
- if (r3(5,5) /= 0.0) call abort
- if (r4 /= 0.0) call abort
+ if (r1 /= 0.0) STOP 1
+ if (r2(2) /= 0.0) STOP 2
+ if (r3(5,5) /= 0.0) STOP 3
+ if (r4 /= 0.0) STOP 4
end subroutine real_test
subroutine logical_test
logical l1
logical l2(2)
- if (l1 .neqv. .false.) call abort
- if (l2(2) .neqv. .false.) call abort
+ if (l1 .neqv. .false.) STOP 5
+ if (l2(2) .neqv. .false.) STOP 6
end subroutine logical_test
subroutine int_test
integer i1
integer i2(10)
dimension i3(10,10)
- if (i1 /= 0) call abort
- if (i2(2) /= 0) call abort
- if (i3(5,5) /= 0) call abort
- if (i4 /= 0) call abort
+ if (i1 /= 0) STOP 7
+ if (i2(2) /= 0) STOP 8
+ if (i3(5,5) /= 0) STOP 9
+ if (i4 /= 0) STOP 10
end subroutine int_test
subroutine complex_test
complex c1
complex c2(20,20)
- if (c1 /= (0.0,0.0)) call abort
- if (c2(1,1) /= (0.0,0.0)) call abort
+ if (c1 /= (0.0,0.0)) STOP 11
+ if (c2(1,1) /= (0.0,0.0)) STOP 12
end subroutine complex_test
subroutine char_test
character*1 c1
character*8 c2, c3(5)
character c4(10)
- if (c1 /= '\0') call abort
- if (c2 /= '\0\0\0\0\0\0\0\0') call abort
- if (c3(1) /= '\0\0\0\0\0\0\0\0') call abort
- if (c3(5) /= '\0\0\0\0\0\0\0\0') call abort
- if (c4(5) /= '\0') call abort
+ if (c1 /= '\0') STOP 13
+ if (c2 /= '\0\0\0\0\0\0\0\0') STOP 14
+ if (c3(1) /= '\0\0\0\0\0\0\0\0') STOP 15
+ if (c3(5) /= '\0\0\0\0\0\0\0\0') STOP 16
+ if (c4(5) /= '\0') STOP 17
end subroutine char_test
diff --git a/gcc/testsuite/gfortran.dg/init_flag_10.f90 b/gcc/testsuite/gfortran.dg/init_flag_10.f90
index dac9418d614..64782456f43 100644
--- a/gcc/testsuite/gfortran.dg/init_flag_10.f90
+++ b/gcc/testsuite/gfortran.dg/init_flag_10.f90
@@ -21,15 +21,15 @@ contains
real :: var1, var2 ! Should get NaN initialized
! Should be the default value
- if (e%rmult /= 1.0) call abort ()
+ if (e%rmult /= 1.0) STOP 1
! Check that NaN initialization is really turned on
- if (var1 == var1) call abort ()
- if (var2 == var2) call abort ()
+ if (var1 == var1) STOP 2
+ if (var2 == var2) STOP 3
! The following was failing:
associate (rmult=>e%rmult)
- if (e%rmult /= 1.0) call abort ()
+ if (e%rmult /= 1.0) STOP 4
end associate
end subroutine test
end module testa2
diff --git a/gcc/testsuite/gfortran.dg/init_flag_15.f03 b/gcc/testsuite/gfortran.dg/init_flag_15.f03
index fef9442dd50..576d53024a2 100644
--- a/gcc/testsuite/gfortran.dg/init_flag_15.f03
+++ b/gcc/testsuite/gfortran.dg/init_flag_15.f03
@@ -58,7 +58,7 @@ program init_flag_15
call print(vsum)
if (vsum%x .ne. 3 .or. vsum%y .ne. 3) then
- call abort()
+ STOP 1
endif
end program
diff --git a/gcc/testsuite/gfortran.dg/init_flag_2.f90 b/gcc/testsuite/gfortran.dg/init_flag_2.f90
index c46cf1bd27f..6390bbd653d 100644
--- a/gcc/testsuite/gfortran.dg/init_flag_2.f90
+++ b/gcc/testsuite/gfortran.dg/init_flag_2.f90
@@ -14,32 +14,32 @@ subroutine real_test
real r1
real r2(10)
dimension r3(10,10)
- if (r1 /= 0.0) call abort
- if (r2(2) /= 0.0) call abort
- if (r3(5,5) /= 0.0) call abort
- if (r4 /= 0.0) call abort
+ if (r1 /= 0.0) STOP 1
+ if (r2(2) /= 0.0) STOP 2
+ if (r3(5,5) /= 0.0) STOP 3
+ if (r4 /= 0.0) STOP 4
end subroutine real_test
subroutine logical_test
logical l1
logical l2(2)
- if (l1 .neqv. .true.) call abort
- if (l2(2) .neqv. .true.) call abort
+ if (l1 .neqv. .true.) STOP 5
+ if (l2(2) .neqv. .true.) STOP 6
end subroutine logical_test
subroutine int_test
integer i1
integer i2(10)
dimension i3(10,10)
- if (i1 /= 1) call abort
- if (i2(2) /= 1) call abort
- if (i3(5,5) /= 1) call abort
- if (i4 /= 1) call abort
+ if (i1 /= 1) STOP 7
+ if (i2(2) /= 1) STOP 8
+ if (i3(5,5) /= 1) STOP 9
+ if (i4 /= 1) STOP 10
end subroutine int_test
subroutine complex_test
complex c1
complex c2(20,20)
- if (c1 /= (0.0,0.0)) call abort
- if (c2(1,1) /= (0.0,0.0)) call abort
+ if (c1 /= (0.0,0.0)) STOP 11
+ if (c2(1,1) /= (0.0,0.0)) STOP 12
end subroutine complex_test
diff --git a/gcc/testsuite/gfortran.dg/init_flag_3.f90 b/gcc/testsuite/gfortran.dg/init_flag_3.f90
index 30e00814490..1efde30df0a 100644
--- a/gcc/testsuite/gfortran.dg/init_flag_3.f90
+++ b/gcc/testsuite/gfortran.dg/init_flag_3.f90
@@ -16,32 +16,32 @@ subroutine real_test
real r1
real r2(10)
dimension r3(10,10)
- if (r1 .eq. r1) call abort
- if (r2(2) .eq. r2(2)) call abort
- if (r3(5,5) .eq. r3(5,5)) call abort
- if (r4 .eq. r4) call abort
+ if (r1 .eq. r1) STOP 1
+ if (r2(2) .eq. r2(2)) STOP 2
+ if (r3(5,5) .eq. r3(5,5)) STOP 3
+ if (r4 .eq. r4) STOP 4
end subroutine real_test
subroutine logical_test
logical l1
logical l2(2)
- if (l1 .neqv. .false.) call abort
- if (l2(2) .neqv. .false.) call abort
+ if (l1 .neqv. .false.) STOP 5
+ if (l2(2) .neqv. .false.) STOP 6
end subroutine logical_test
subroutine int_test
integer i1
integer i2(10)
dimension i3(10,10)
- if (i1 /= -1) call abort
- if (i2(2) /= -1) call abort
- if (i3(5,5) /= -1) call abort
- if (i4 /= -1) call abort
+ if (i1 /= -1) STOP 7
+ if (i2(2) /= -1) STOP 8
+ if (i3(5,5) /= -1) STOP 9
+ if (i4 /= -1) STOP 10
end subroutine int_test
subroutine complex_test
complex c1
complex c2(20,20)
- if (c1 .eq. c1) call abort
- if (c2(1,1) .eq. c2(1,1)) call abort
+ if (c1 .eq. c1) STOP 11
+ if (c2(1,1) .eq. c2(1,1)) STOP 12
end subroutine complex_test
diff --git a/gcc/testsuite/gfortran.dg/init_flag_4.f90 b/gcc/testsuite/gfortran.dg/init_flag_4.f90
index b79ec61f115..7610f862adc 100644
--- a/gcc/testsuite/gfortran.dg/init_flag_4.f90
+++ b/gcc/testsuite/gfortran.dg/init_flag_4.f90
@@ -12,8 +12,8 @@ subroutine real_test
real r1
real r2(10)
dimension r3(10,10)
- if (r1 .le. 0 .or. r1 .ne. 2*r1) call abort
- if (r2(2) .le. 0 .or. r2(2) .ne. 2*r2(2)) call abort
- if (r3(5,5) .le. 0 .or. r3(5,5) .ne. 2*r3(5,5)) call abort
- if (r4 .le. 0 .or. r4 .ne. 2*r4) call abort
+ if (r1 .le. 0 .or. r1 .ne. 2*r1) STOP 1
+ if (r2(2) .le. 0 .or. r2(2) .ne. 2*r2(2)) STOP 2
+ if (r3(5,5) .le. 0 .or. r3(5,5) .ne. 2*r3(5,5)) STOP 3
+ if (r4 .le. 0 .or. r4 .ne. 2*r4) STOP 4
end subroutine real_test
diff --git a/gcc/testsuite/gfortran.dg/init_flag_5.f90 b/gcc/testsuite/gfortran.dg/init_flag_5.f90
index 54f891f49e8..dc3872619e6 100644
--- a/gcc/testsuite/gfortran.dg/init_flag_5.f90
+++ b/gcc/testsuite/gfortran.dg/init_flag_5.f90
@@ -12,8 +12,8 @@ subroutine real_test
real r1
real r2(10)
dimension r3(10,10)
- if (r1 .ge. 0 .or. r1 .ne. 2*r1) call abort
- if (r2(2) .ge. 0 .or. r2(2) .ne. 2*r2(2)) call abort
- if (r3(5,5) .ge. 0 .or. r3(5,5) .ne. 2*r3(5,5)) call abort
- if (r4 .ge. 0 .or. r4 .ne. 2*r4) call abort
+ if (r1 .ge. 0 .or. r1 .ne. 2*r1) STOP 1
+ if (r2(2) .ge. 0 .or. r2(2) .ne. 2*r2(2)) STOP 2
+ if (r3(5,5) .ge. 0 .or. r3(5,5) .ne. 2*r3(5,5)) STOP 3
+ if (r4 .ge. 0 .or. r4 .ne. 2*r4) STOP 4
end subroutine real_test
diff --git a/gcc/testsuite/gfortran.dg/init_flag_6.f90 b/gcc/testsuite/gfortran.dg/init_flag_6.f90
index 45b05cd7d3c..97bb4b7ca4f 100644
--- a/gcc/testsuite/gfortran.dg/init_flag_6.f90
+++ b/gcc/testsuite/gfortran.dg/init_flag_6.f90
@@ -11,10 +11,10 @@ subroutine char_test
character*1 c1
character*8 c2, c3(5)
character c4(10)
- if (c1 /= ' ') call abort
- if (c2 /= ' ') call abort
- if (c3(1) /= ' ') call abort
- if (c3(5) /= ' ') call abort
- if (c4(5) /= ' ') call abort
+ if (c1 /= ' ') STOP 1
+ if (c2 /= ' ') STOP 2
+ if (c3(1) /= ' ') STOP 3
+ if (c3(5) /= ' ') STOP 4
+ if (c4(5) /= ' ') STOP 5
end subroutine char_test
diff --git a/gcc/testsuite/gfortran.dg/init_flag_7.f90 b/gcc/testsuite/gfortran.dg/init_flag_7.f90
index 78829811d95..ebb14146494 100644
--- a/gcc/testsuite/gfortran.dg/init_flag_7.f90
+++ b/gcc/testsuite/gfortran.dg/init_flag_7.f90
@@ -17,13 +17,13 @@ subroutine save_test1 (first)
integer i3
save i2
if (first) then
- if (i1 .ne. -100) call abort
- if (i2 .ne. 101) call abort
- if (i3 .ne. 101) call abort
+ if (i1 .ne. -100) STOP 1
+ if (i2 .ne. 101) STOP 2
+ if (i3 .ne. 101) STOP 3
else
- if (i1 .ne. 1001) call abort
- if (i2 .ne. 1002) call abort
- if (i3 .ne. 101) call abort
+ if (i1 .ne. 1001) STOP 4
+ if (i2 .ne. 1002) STOP 5
+ if (i3 .ne. 101) STOP 6
end if
i1 = 1001
i2 = 1002
@@ -36,11 +36,11 @@ subroutine save_test2 (first)
integer i2
save
if (first) then
- if (i1 .ne. -100) call abort
- if (i2 .ne. 101) call abort
+ if (i1 .ne. -100) STOP 7
+ if (i2 .ne. 101) STOP 8
else
- if (i1 .ne. 1001) call abort
- if (i2 .ne. 1002) call abort
+ if (i1 .ne. 1001) STOP 9
+ if (i2 .ne. 1002) STOP 10
end if
i1 = 1001
i2 = 1002
diff --git a/gcc/testsuite/gfortran.dg/init_flag_9.f90 b/gcc/testsuite/gfortran.dg/init_flag_9.f90
index 512396455bd..48d97fddf0f 100644
--- a/gcc/testsuite/gfortran.dg/init_flag_9.f90
+++ b/gcc/testsuite/gfortran.dg/init_flag_9.f90
@@ -7,7 +7,7 @@
subroutine foo(n)
character(len=n) :: str
! print *, str
- if (str /= repeat ('Y', n)) call abort()
+ if (str /= repeat ('Y', n)) STOP 1
end subroutine foo
call foo(3)
diff --git a/gcc/testsuite/gfortran.dg/initialization_11.f90 b/gcc/testsuite/gfortran.dg/initialization_11.f90
index a9acbec22db..03da3d1633b 100644
--- a/gcc/testsuite/gfortran.dg/initialization_11.f90
+++ b/gcc/testsuite/gfortran.dg/initialization_11.f90
@@ -11,7 +11,7 @@ program test
call set(d)
if(d%i /= 2) then
print *, 'Expect: 2, got: ', d%i
- call abort()
+ STOP 1
end if
contains
subroutine set(x1)
diff --git a/gcc/testsuite/gfortran.dg/initialization_19.f90 b/gcc/testsuite/gfortran.dg/initialization_19.f90
index 1fba5f01d38..ea1dbae9780 100644
--- a/gcc/testsuite/gfortran.dg/initialization_19.f90
+++ b/gcc/testsuite/gfortran.dg/initialization_19.f90
@@ -17,7 +17,7 @@ subroutine g
type(d) :: a
! Without the following line it passes with 4.3.0:
print *, a%i
- if(a%i /= -1) call abort()
+ if(a%i /= -1) STOP 1
a%i=0
end subroutine g
end module s
diff --git a/gcc/testsuite/gfortran.dg/initialization_2.f90 b/gcc/testsuite/gfortran.dg/initialization_2.f90
index cfc08499b42..adcc87b54d9 100644
--- a/gcc/testsuite/gfortran.dg/initialization_2.f90
+++ b/gcc/testsuite/gfortran.dg/initialization_2.f90
@@ -14,9 +14,9 @@ program test
integer :: b3(4) = a(1, v, 3)
integer :: b4(3,3) = a(v([2,4,3]), 2, [2,3,4])
- if (any(b1 /= reshape([21,22,23, 37,38,39, 53,54,55], [3,3]))) call abort()
- if (any(b2 /= reshape([14, 62, 46], [1,3]))) call abort()
- if (any(b2b /= [53, 56, 55])) call abort()
- if (any(b3 /= [45, 33, 41, 37])) call abort()
- if (any(b4 /= reshape([21,22,23, 37,38,39, 53,54,55], [3,3]))) call abort()
+ if (any(b1 /= reshape([21,22,23, 37,38,39, 53,54,55], [3,3]))) STOP 1
+ if (any(b2 /= reshape([14, 62, 46], [1,3]))) STOP 2
+ if (any(b2b /= [53, 56, 55])) STOP 3
+ if (any(b3 /= [45, 33, 41, 37])) STOP 4
+ if (any(b4 /= reshape([21,22,23, 37,38,39, 53,54,55], [3,3]))) STOP 5
end program test
diff --git a/gcc/testsuite/gfortran.dg/initialization_22.f90 b/gcc/testsuite/gfortran.dg/initialization_22.f90
index f788109e66a..4c8bba652a6 100644
--- a/gcc/testsuite/gfortran.dg/initialization_22.f90
+++ b/gcc/testsuite/gfortran.dg/initialization_22.f90
@@ -6,5 +6,5 @@
!
integer :: n
real, dimension(2) :: a = (/ ( (float(n))**(1.0), n=1,2) /)
- if (any (a .ne. (/ ( (float(n))**(1.0), n=1,2) /))) call abort
+ if (any (a .ne. (/ ( (float(n))**(1.0), n=1,2) /))) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/initialization_27.f90 b/gcc/testsuite/gfortran.dg/initialization_27.f90
index 8e21936f6f9..6c499e2174c 100644
--- a/gcc/testsuite/gfortran.dg/initialization_27.f90
+++ b/gcc/testsuite/gfortran.dg/initialization_27.f90
@@ -16,15 +16,15 @@ program test_init
end type A
type(A):: x, y(3)
x=f()
- if (associated(x%p) .or. x%i /= 3) call abort ()
+ if (associated(x%p) .or. x%i /= 3) STOP 1
y(1)%p => tgt
y%i = 99
call sub1(3,y)
- if (associated(y(1)%p) .or. any(y(:)%i /= 3)) call abort ()
+ if (associated(y(1)%p) .or. any(y(:)%i /= 3)) STOP 2
y(1)%p => tgt
y%i = 99
call sub2(y)
- if (associated(y(1)%p) .or. any(y(:)%i /= 3)) call abort ()
+ if (associated(y(1)%p) .or. any(y(:)%i /= 3)) STOP 3
contains
function f() result (fr)
type(A):: fr
diff --git a/gcc/testsuite/gfortran.dg/initialization_5.f90 b/gcc/testsuite/gfortran.dg/initialization_5.f90
index b5cfe0f0e6b..e73a4cc97ec 100644
--- a/gcc/testsuite/gfortran.dg/initialization_5.f90
+++ b/gcc/testsuite/gfortran.dg/initialization_5.f90
@@ -1,7 +1,7 @@
! initialization expression, now allowed in Fortran 2003
! PR fortran/29962
! { dg-do run }
-! { dg-options "-std=f2003 -fall-intrinsics" }
+! { dg-options "-std=f2003 " }
real, parameter :: three = 27.0**(1.0/3.0)
- if(abs(three-3.0)>epsilon(three)) call abort()
+ if(abs(three-3.0)>epsilon(three)) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/initialization_6.f90 b/gcc/testsuite/gfortran.dg/initialization_6.f90
index 71ef1717fd3..3ed867c14d1 100644
--- a/gcc/testsuite/gfortran.dg/initialization_6.f90
+++ b/gcc/testsuite/gfortran.dg/initialization_6.f90
@@ -15,8 +15,8 @@
integer, parameter :: i(3) = index (ch, ch2)
integer :: ic(1) = len_trim((/"a"/))
- if (any (reshape (b, (/4/)) .ne. (/(sin(real(k)), k = 1,4)/))) call abort ()
- if (any (ob .ne. (/5,6,5/))) call abort () ! Original PR29507
- if (any (i .ne. (/2,3,4/))) call abort ()
- if (ic(1) .ne. 1) call abort () ! Original PR31404
+ if (any (reshape (b, (/4/)) .ne. (/(sin(real(k)), k = 1,4)/))) STOP 1
+ if (any (ob .ne. (/5,6,5/))) STOP 2 ! Original PR29507
+ if (any (i .ne. (/2,3,4/))) STOP 3
+ if (ic(1) .ne. 1) STOP 4 ! Original PR31404
end
diff --git a/gcc/testsuite/gfortran.dg/inline_matmul_1.f90 b/gcc/testsuite/gfortran.dg/inline_matmul_1.f90
index c3177d72361..b0d5a037b4f 100644
--- a/gcc/testsuite/gfortran.dg/inline_matmul_1.f90
+++ b/gcc/testsuite/gfortran.dg/inline_matmul_1.f90
@@ -61,50 +61,50 @@ program main
c2_lower = 1 + offset ; c2_upper = c2 + offset
c = matmul(a,b)
- if (sum(abs(c-cres))>1e-4) call abort
+ if (sum(abs(c-cres))>1e-4) STOP 1
c_alloc = matmul(a,b) ! { dg-warning "Code for reallocating the allocatable array" }
- if (sum(abs(c_alloc-cres))>1e-4) call abort
- if (any([size(c_alloc,1), size(c_alloc,2)] /= [3,4])) call abort
+ if (sum(abs(c_alloc-cres))>1e-4) STOP 2
+ if (any([size(c_alloc,1), size(c_alloc,2)] /= [3,4])) STOP 3
deallocate(c_alloc)
allocate(c_alloc(4,4))
c_alloc = matmul(a,b) ! { dg-warning "Code for reallocating the allocatable array" }
- if (sum(abs(c_alloc-cres))>1e-4) call abort
- if (any([size(c_alloc,1), size(c_alloc,2)] /= [3,4])) call abort
+ if (sum(abs(c_alloc-cres))>1e-4) STOP 4
+ if (any([size(c_alloc,1), size(c_alloc,2)] /= [3,4])) STOP 5
deallocate(c_alloc)
allocate(c_alloc(3,3))
c_alloc = matmul(a,b) ! { dg-warning "Code for reallocating the allocatable array" }
- if (sum(abs(c_alloc-cres))>1e-4) call abort
- if (any([size(c_alloc,1), size(c_alloc,2)] /= [3,4])) call abort
+ if (sum(abs(c_alloc-cres))>1e-4) STOP 6
+ if (any([size(c_alloc,1), size(c_alloc,2)] /= [3,4])) STOP 7
c_alloc = 42.
c_alloc(:,:) = matmul(a,b)
- if (sum(abs(c_alloc-cres))>1e-4) call abort
- if (any([size(c_alloc,1), size(c_alloc,2)] /= [3,4])) call abort
+ if (sum(abs(c_alloc-cres))>1e-4) STOP 8
+ if (any([size(c_alloc,1), size(c_alloc,2)] /= [3,4])) STOP 9
deallocate(c_alloc)
ap = a
bp = b
cp = matmul(ap, bp)
- if (sum(abs(cp-cres)) > 1e-4) call abort
+ if (sum(abs(cp-cres)) > 1e-4) STOP 10
f = 0
f(1,1:3,2:3) = a
f(2,2:3,:) = b
c = matmul(f(1,1:3,2:3), f(2,2:3,:))
- if (sum(abs(c-cres))>1e-4) call abort
+ if (sum(abs(c-cres))>1e-4) STOP 11
f(3,1:eight:2,:) = matmul(a, b)
- if (sum(abs(f(3,1:eight:2,:)-cres))>1e-4) call abort
+ if (sum(abs(f(3,1:eight:2,:)-cres))>1e-4) STOP 12
afoo%a = a
bfoo%a = b
cfoo%a = matmul(afoo%a, bfoo%a)
- if (sum(abs(cfoo%a-cres)) > 1e-4) call abort
+ if (sum(abs(cfoo%a-cres)) > 1e-4) STOP 13
block
real :: aa(a1, a2), bb(b1, b2), cc(c1, c2)
@@ -118,32 +118,32 @@ program main
bm = b
cc = matmul(aa,bb)
- if (sum(cc-cres)>1e-4) call abort
+ if (sum(cc-cres)>1e-4) STOP 14
c_alloc = matmul(aa,bb) ! { dg-warning "Code for reallocating the allocatable array" }
- if (sum(abs(c_alloc-cres))>1e-4) call abort
- if (any([size(c_alloc,1), size(c_alloc,2)] /= [3,4])) call abort
+ if (sum(abs(c_alloc-cres))>1e-4) STOP 15
+ if (any([size(c_alloc,1), size(c_alloc,2)] /= [3,4])) STOP 16
c_alloc = 42.
deallocate(c_alloc)
allocate(c_alloc(4,4))
c_alloc = matmul(aa,bb) ! { dg-warning "Code for reallocating the allocatable array" }
- if (sum(abs(c_alloc-cres))>1e-4) call abort
- if (any([size(c_alloc,1), size(c_alloc,2)] /= [3,4])) call abort
+ if (sum(abs(c_alloc-cres))>1e-4) STOP 17
+ if (any([size(c_alloc,1), size(c_alloc,2)] /= [3,4])) STOP 18
deallocate(c_alloc)
allocate(c_alloc(3,3))
c_alloc = matmul(aa,bb) ! { dg-warning "Code for reallocating the allocatable array" }
- if (sum(abs(c_alloc-cres))>1e-4) call abort
- if (any([size(c_alloc,1), size(c_alloc,2)] /= [3,4])) call abort
+ if (sum(abs(c_alloc-cres))>1e-4) STOP 19
+ if (any([size(c_alloc,1), size(c_alloc,2)] /= [3,4])) STOP 20
deallocate(c_alloc)
cm = matmul(am, bm)
- if (sum(abs(cm-cres)) > 1e-4) call abort
+ if (sum(abs(cm-cres)) > 1e-4) STOP 21
cm = 42.
cm(:,:) = matmul(a,bm)
- if (sum(abs(cm-cres)) > 1e-4) call abort
+ if (sum(abs(cm-cres)) > 1e-4) STOP 22
end block
diff --git a/gcc/testsuite/gfortran.dg/inline_matmul_10.f90 b/gcc/testsuite/gfortran.dg/inline_matmul_10.f90
index 3a577b00d8e..fe0d3ad1056 100644
--- a/gcc/testsuite/gfortran.dg/inline_matmul_10.f90
+++ b/gcc/testsuite/gfortran.dg/inline_matmul_10.f90
@@ -24,12 +24,12 @@ implicit none
+286, -294, +240, -254, &
+422, -430, +352, -370 ]
!print *,c
- if (any(c /= reshape(res, shape(c)))) call abort
+ if (any(c /= reshape(res, shape(c)))) STOP 1
c(:,v) = matmul(a, b)
- if (any(c(:,v) /= reshape(res, shape(c)))) call abort
+ if (any(c(:,v) /= reshape(res, shape(c)))) STOP 2
c(v,:) = matmul(a, b)
- if (any(c(v,:) /= reshape(res, shape(c)))) call abort
+ if (any(c(v,:) /= reshape(res, shape(c)))) STOP 3
c = matmul(a(:,v),b(v,:))
- if (any(c /= reshape(res, shape(c)))) call abort
+ if (any(c /= reshape(res, shape(c)))) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/inline_matmul_11.f90 b/gcc/testsuite/gfortran.dg/inline_matmul_11.f90
index 016d8d701cb..d4a944de724 100644
--- a/gcc/testsuite/gfortran.dg/inline_matmul_11.f90
+++ b/gcc/testsuite/gfortran.dg/inline_matmul_11.f90
@@ -20,13 +20,13 @@ program main
& (956.,4264.),(9532.,344.)/
c = matmul(a,b)
- if (any(res1 /= c)) call abort
+ if (any(res1 /= c)) STOP 1
b2 = conjg(b)
c = matmul(a,conjg(b2))
- if (any(res1 /= c)) call abort
+ if (any(res1 /= c)) STOP 2
c = matmul(a,conjg(b))
- if (any(res2 /= c)) call abort
+ if (any(res2 /= c)) STOP 3
c = matmul(conjg(a), b)
- if (any(conjg(c) /= res2)) call abort
+ if (any(conjg(c) /= res2)) STOP 4
end program main
! { dg-final { scan-tree-dump-times "_gfortran_matmul" 0 "optimized" } }
diff --git a/gcc/testsuite/gfortran.dg/inline_matmul_13.f90 b/gcc/testsuite/gfortran.dg/inline_matmul_13.f90
index e887ee982fe..6338aadac3e 100644
--- a/gcc/testsuite/gfortran.dg/inline_matmul_13.f90
+++ b/gcc/testsuite/gfortran.dg/inline_matmul_13.f90
@@ -26,21 +26,21 @@ program main
-229., 364., -388., 267., -424., 456./
c = matmul(a,transpose(b))
- if (sum(c-cres)>1e-4) call abort
+ if (sum(c-cres)>1e-4) STOP 1
call mm1 (a, b, c)
- if (sum(c-cres)>1e-4) call abort
+ if (sum(c-cres)>1e-4) STOP 2
! Unallocated
calloc = matmul(a,transpose(b)) ! { dg-warning "Code for reallocating the allocatable array" }
- if (any(shape(c) /= shape(calloc))) call abort
- if (sum(calloc-cres)>1e-4) call abort
+ if (any(shape(c) /= shape(calloc))) STOP 3
+ if (sum(calloc-cres)>1e-4) STOP 4
deallocate(calloc)
! Allocated to wrong shape
allocate (calloc(10,10))
calloc = matmul(a,transpose(b)) ! { dg-warning "Code for reallocating the allocatable array" }
- if (any(shape(c) /= shape(calloc))) call abort
- if (sum(calloc-cres)>1e-4) call abort
+ if (any(shape(c) /= shape(calloc))) STOP 5
+ if (sum(calloc-cres)>1e-4) STOP 6
deallocate(calloc)
end program main
diff --git a/gcc/testsuite/gfortran.dg/inline_matmul_14.f90 b/gcc/testsuite/gfortran.dg/inline_matmul_14.f90
index 740b3a11e6d..2272b4084b0 100644
--- a/gcc/testsuite/gfortran.dg/inline_matmul_14.f90
+++ b/gcc/testsuite/gfortran.dg/inline_matmul_14.f90
@@ -33,14 +33,14 @@ contains
write (unit=r1, fmt='(12F12.5)') matmul(a1,b1)
write (unit=r2, fmt='(12F12.5)') cres1
- if (r1 /= r2) call abort
+ if (r1 /= r2) STOP 1
r = dot_product(matmul(a2,v1),v2)
- if (abs(r+208320) > 1) call abort
+ if (abs(r+208320) > 1) STOP 2
write (unit=r1,fmt='(1P,9E18.10)') matmul(matmul(a3,b3),matmul(c3,d3))
write (unit=r2,fmt='(1P,9E18.10)') res3
- if (r1 /= r2) call abort
+ if (r1 /= r2) STOP 3
end subroutine test1
@@ -72,14 +72,14 @@ contains
write (unit=r1, fmt='(12F12.5)') matmul(a1,b1)
write (unit=r2, fmt='(12F12.5)') cres1
- if (r1 /= r2) call abort
+ if (r1 /= r2) STOP 4
r = dot_product(matmul(a2,v1),v2)
- if (abs(r+208320) > 1) call abort
+ if (abs(r+208320) > 1) STOP 5
write (unit=r1,fmt='(1P,9E18.10)') matmul(matmul(a3,b3),matmul(c3,d3))
write (unit=r2,fmt='(1P,9E18.10)') res3
- if (r1 /= r2) call abort
+ if (r1 /= r2) STOP 6
end subroutine test2
diff --git a/gcc/testsuite/gfortran.dg/inline_matmul_16.f90 b/gcc/testsuite/gfortran.dg/inline_matmul_16.f90
index 37dc5ef0ba3..9d54094cd90 100644
--- a/gcc/testsuite/gfortran.dg/inline_matmul_16.f90
+++ b/gcc/testsuite/gfortran.dg/inline_matmul_16.f90
@@ -16,20 +16,20 @@ program main
191., 458., 914., 223., 534., 1062./
c = matmul(transpose(a),b)
- if (sum(c-cres)>1e-4) call abort
- if (sum(c-cres)>1e-4) call abort
+ if (sum(c-cres)>1e-4) STOP 1
+ if (sum(c-cres)>1e-4) STOP 2
! Unallocated
calloc = matmul(transpose(a),b) ! { dg-warning "Code for reallocating the allocatable array" }
- if (any(shape(c) /= shape(calloc))) call abort
- if (sum(calloc-cres)>1e-4) call abort
+ if (any(shape(c) /= shape(calloc))) STOP 3
+ if (sum(calloc-cres)>1e-4) STOP 4
deallocate(calloc)
! Allocated to wrong shape
allocate (calloc(10,10))
calloc = matmul(transpose(a),b) ! { dg-warning "Code for reallocating the allocatable array" }
- if (any(shape(c) /= shape(calloc))) call abort
- if (sum(calloc-cres)>1e-4) call abort
+ if (any(shape(c) /= shape(calloc))) STOP 5
+ if (sum(calloc-cres)>1e-4) STOP 6
deallocate(calloc)
! cycle through a few test cases...
@@ -52,7 +52,7 @@ program main
end do
end do
cr = matmul(transpose(a2), b2)
- if (any(abs(c2-cr) > 1e-4)) call abort
+ if (any(abs(c2-cr) > 1e-4)) STOP 7
end block
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/inline_matmul_17.f90 b/gcc/testsuite/gfortran.dg/inline_matmul_17.f90
index 053dc384554..d2ca8e2948a 100644
--- a/gcc/testsuite/gfortran.dg/inline_matmul_17.f90
+++ b/gcc/testsuite/gfortran.dg/inline_matmul_17.f90
@@ -28,21 +28,21 @@ program main
b = bval
c = matmul(a,b)
a = matmul(a,b)
- if (any(a-c /= 0)) call abort
+ if (any(a-c /= 0)) STOP 1
a = aval
b = bval
b = matmul(a,b)
- if (any(b-c /= 0)) call abort
+ if (any(b-c /= 0)) STOP 2
b = bval
a = matmul(aval, b)
- if (any(a-c /= 0)) call abort
+ if (any(a-c /= 0)) STOP 3
ind = [1, 3, 2]
c = matmul(a(ind,:),b)
- if (any(c-ri /= 0)) call abort
+ if (any(c-ri /= 0)) STOP 4
c = matmul(afunc(),b)
- if (any(c-d /= 0)) call abort
+ if (any(c-d /= 0)) STOP 5
a = afunc()
c = matmul(a, bfunc())
- if (any(c-d /= 0)) call abort
+ if (any(c-d /= 0)) STOP 6
end program main
! { dg-final { scan-tree-dump-times "matmul_r4" 2 "optimized" } }
diff --git a/gcc/testsuite/gfortran.dg/inline_matmul_18.f90 b/gcc/testsuite/gfortran.dg/inline_matmul_18.f90
index c846733c8c2..afca8f03a1b 100644
--- a/gcc/testsuite/gfortran.dg/inline_matmul_18.f90
+++ b/gcc/testsuite/gfortran.dg/inline_matmul_18.f90
@@ -9,7 +9,7 @@ program bogus_matmul
w = 7
w = matmul(M,v)
if( any(w .ne. 0) ) then
- call abort
+ STOP 1
end if
end program bogus_matmul
! { dg-final { scan-tree-dump-times "matmul_r4" 0 "optimized" } }
diff --git a/gcc/testsuite/gfortran.dg/inline_matmul_19.f90 b/gcc/testsuite/gfortran.dg/inline_matmul_19.f90
index 62856a7de44..bf832387866 100644
--- a/gcc/testsuite/gfortran.dg/inline_matmul_19.f90
+++ b/gcc/testsuite/gfortran.dg/inline_matmul_19.f90
@@ -20,7 +20,7 @@
end do
end do
res = MATMUL(TRANSPOSE(CONJG(R)), M)
- if (any(abs(res-c) >= 1e-6)) call abort
+ if (any(abs(res-c) >= 1e-6)) STOP 1
c = 0
do k=1,3
do j=1,3
@@ -30,5 +30,5 @@
end do
end do
res = matmul(m, transpose(conjg(r)))
- if (any(abs(res-c) >= 1e-6)) call abort
+ if (any(abs(res-c) >= 1e-6)) STOP 2
END
diff --git a/gcc/testsuite/gfortran.dg/inline_matmul_2.f90 b/gcc/testsuite/gfortran.dg/inline_matmul_2.f90
index 007e4a38150..17a978c9fb8 100644
--- a/gcc/testsuite/gfortran.dg/inline_matmul_2.f90
+++ b/gcc/testsuite/gfortran.dg/inline_matmul_2.f90
@@ -15,23 +15,23 @@ program main
data b /17., -23., 29., -31., 37., -39., 41., -47./
data cres /195., -304., 384., 275., -428., 548., 347., -540., 692., 411., -640., 816./
c = matmul(a,b)
- if (sum(c-cres)>1e-4) call abort
+ if (sum(c-cres)>1e-4) STOP 1
calloc = matmul(a,b)
- if (sum(calloc-cres)>1e-4) call abort
- if (any([size(calloc,1), size(calloc,2)] /= [3,4])) call abort
+ if (sum(calloc-cres)>1e-4) STOP 2
+ if (any([size(calloc,1), size(calloc,2)] /= [3,4])) STOP 3
deallocate(calloc)
allocate(calloc(4,4))
calloc = matmul(a,b)
- if (sum(calloc-cres)>1e-4) call abort
- if (any([size(calloc,1), size(calloc,2)] /= [3,4])) call abort
+ if (sum(calloc-cres)>1e-4) STOP 4
+ if (any([size(calloc,1), size(calloc,2)] /= [3,4])) STOP 5
deallocate(calloc)
allocate(calloc(3,3))
calloc = matmul(a,b)
- if (sum(calloc-cres)>1e-4) call abort
- if (any([size(calloc,1), size(calloc,2)] /= [3,4])) call abort
+ if (sum(calloc-cres)>1e-4) STOP 6
+ if (any([size(calloc,1), size(calloc,2)] /= [3,4])) STOP 7
deallocate(calloc)
block
@@ -40,23 +40,23 @@ program main
bb = b
cc = matmul(aa,bb)
- if (sum(cc-cres)>1e-4) call abort
+ if (sum(cc-cres)>1e-4) STOP 8
calloc = matmul(aa,bb)
- if (sum(calloc-cres)>1e-4) call abort
- if (any([size(calloc,1), size(calloc,2)] /= [3,4])) call abort
+ if (sum(calloc-cres)>1e-4) STOP 9
+ if (any([size(calloc,1), size(calloc,2)] /= [3,4])) STOP 10
calloc = 42.
deallocate(calloc)
allocate(calloc(4,4))
calloc = matmul(aa,bb)
- if (sum(calloc-cres)>1e-4) call abort
- if (any([size(calloc,1), size(calloc,2)] /= [3,4])) call abort
+ if (sum(calloc-cres)>1e-4) STOP 11
+ if (any([size(calloc,1), size(calloc,2)] /= [3,4])) STOP 12
deallocate(calloc)
allocate(calloc(3,3))
calloc = matmul(aa,bb)
- if (sum(calloc-cres)>1e-4) call abort
- if (any([size(calloc,1), size(calloc,2)] /= [3,4])) call abort
+ if (sum(calloc-cres)>1e-4) STOP 13
+ if (any([size(calloc,1), size(calloc,2)] /= [3,4])) STOP 14
deallocate(calloc)
end block
diff --git a/gcc/testsuite/gfortran.dg/inline_matmul_20.f90 b/gcc/testsuite/gfortran.dg/inline_matmul_20.f90
index 0f8728ab1dc..8f27292fd1a 100644
--- a/gcc/testsuite/gfortran.dg/inline_matmul_20.f90
+++ b/gcc/testsuite/gfortran.dg/inline_matmul_20.f90
@@ -10,5 +10,5 @@ program gfcbug142
allocate (b(n,n))
call random_number (b)
write (unit=line,fmt='(2I5)') shape (matmul (b, transpose (b)))
- if (line /= ' 5 5') call abort
+ if (line /= ' 5 5') STOP 1
end program gfcbug142
diff --git a/gcc/testsuite/gfortran.dg/inline_matmul_22.f90 b/gcc/testsuite/gfortran.dg/inline_matmul_22.f90
new file mode 100644
index 00000000000..702e32e7467
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/inline_matmul_22.f90
@@ -0,0 +1,44 @@
+! { dg-do compile }
+! { dg-additional-options "-ffrontend-optimize" }
+! PR 84270 - this used to be rejected.
+! Test case by Michael Weinert
+
+module fp_precision
+
+ integer, parameter :: fp = selected_real_kind(13)
+
+end module fp_precision
+
+ subroutine lhcal(nrot,orth,ngpts,vgauss,vr_0)
+
+ use fp_precision ! floating point precision
+
+ implicit none
+
+!---> rotation matrices and rotations (input)
+ integer, intent(in) :: nrot
+! real(kind=fp), intent(in) :: orth(3,3,nrot) ! fine at all -O
+ real(kind=fp), intent(in) :: orth(3,3,*)
+
+!---> gaussian integration points
+ integer, intent(in) :: ngpts
+ real(kind=fp), intent(in) :: vgauss(3,*)
+
+!---> output results
+ real(kind=fp), intent(out) :: vr_0(3)
+
+ real(kind=fp) :: v(3),vr(3)
+ integer :: n,nn
+
+ vr_0 = 0
+ do nn=1,ngpts
+ v(:) = vgauss(:,nn)
+!---> apply rotations
+ do n=2,nrot
+ vr = matmul( orth(:,:,n), v )
+ vr_0 = vr_0 + vr
+ enddo
+ enddo
+
+ return
+ end subroutine lhcal
diff --git a/gcc/testsuite/gfortran.dg/inline_matmul_3.f90 b/gcc/testsuite/gfortran.dg/inline_matmul_3.f90
index 96e53dc4633..adb59e074b9 100644
--- a/gcc/testsuite/gfortran.dg/inline_matmul_3.f90
+++ b/gcc/testsuite/gfortran.dg/inline_matmul_3.f90
@@ -15,23 +15,23 @@ program main
data b /17., -23., 29., -31., 37., -39., 41., -47./
data cres /195., -304., 384., 275., -428., 548., 347., -540., 692., 411., -640., 816./
c = matmul(a,b)
- if (sum(c-cres)>1e-4) call abort
+ if (sum(c-cres)>1e-4) STOP 1
calloc = matmul(a,b)
- if (sum(calloc-cres)>1e-4) call abort
- if (any([size(calloc,1), size(calloc,2)] /= [3,4])) call abort
+ if (sum(calloc-cres)>1e-4) STOP 2
+ if (any([size(calloc,1), size(calloc,2)] /= [3,4])) STOP 3
deallocate(calloc)
allocate(calloc(4,4))
calloc = matmul(a,b)
- if (sum(calloc-cres)>1e-4) call abort
- if (any([size(calloc,1), size(calloc,2)] /= [3,4])) call abort
+ if (sum(calloc-cres)>1e-4) STOP 4
+ if (any([size(calloc,1), size(calloc,2)] /= [3,4])) STOP 5
deallocate(calloc)
allocate(calloc(3,3))
calloc = matmul(a,b)
- if (sum(calloc-cres)>1e-4) call abort
- if (any([size(calloc,1), size(calloc,2)] /= [3,4])) call abort
+ if (sum(calloc-cres)>1e-4) STOP 6
+ if (any([size(calloc,1), size(calloc,2)] /= [3,4])) STOP 7
deallocate(calloc)
block
@@ -40,23 +40,23 @@ program main
bb = b
cc = matmul(aa,bb)
- if (sum(cc-cres)>1e-4) call abort
+ if (sum(cc-cres)>1e-4) STOP 8
calloc = matmul(aa,bb)
- if (sum(calloc-cres)>1e-4) call abort
- if (any([size(calloc,1), size(calloc,2)] /= [3,4])) call abort
+ if (sum(calloc-cres)>1e-4) STOP 9
+ if (any([size(calloc,1), size(calloc,2)] /= [3,4])) STOP 10
calloc = 42.
deallocate(calloc)
allocate(calloc(4,4))
calloc = matmul(aa,bb)
- if (sum(calloc-cres)>1e-4) call abort
- if (any([size(calloc,1), size(calloc,2)] /= [3,4])) call abort
+ if (sum(calloc-cres)>1e-4) STOP 11
+ if (any([size(calloc,1), size(calloc,2)] /= [3,4])) STOP 12
deallocate(calloc)
allocate(calloc(3,3))
calloc = matmul(aa,bb)
- if (sum(calloc-cres)>1e-4) call abort
- if (any([size(calloc,1), size(calloc,2)] /= [3,4])) call abort
+ if (sum(calloc-cres)>1e-4) STOP 13
+ if (any([size(calloc,1), size(calloc,2)] /= [3,4])) STOP 14
deallocate(calloc)
end block
diff --git a/gcc/testsuite/gfortran.dg/inline_matmul_4.f90 b/gcc/testsuite/gfortran.dg/inline_matmul_4.f90
index bd25e6b1a9f..cb4e05121ca 100644
--- a/gcc/testsuite/gfortran.dg/inline_matmul_4.f90
+++ b/gcc/testsuite/gfortran.dg/inline_matmul_4.f90
@@ -16,23 +16,23 @@ program main
data b /17., -23., 29., -31., 37., -39., 41., -47./
data cres /195., -304., 384., 275., -428., 548., 347., -540., 692., 411., -640., 816./
c = matmul(a,b)
- if (sum(c-cres)>1e-4) call abort
+ if (sum(c-cres)>1e-4) STOP 1
calloc = matmul(a,b)
- if (sum(calloc-cres)>1e-4) call abort
- if (any([size(calloc,1), size(calloc,2)] /= [3,4])) call abort
+ if (sum(calloc-cres)>1e-4) STOP 2
+ if (any([size(calloc,1), size(calloc,2)] /= [3,4])) STOP 3
deallocate(calloc)
allocate(calloc(4,4))
calloc = matmul(a,b)
- if (sum(calloc-cres)>1e-4) call abort
- if (any([size(calloc,1), size(calloc,2)] /= [3,4])) call abort
+ if (sum(calloc-cres)>1e-4) STOP 4
+ if (any([size(calloc,1), size(calloc,2)] /= [3,4])) STOP 5
deallocate(calloc)
allocate(calloc(3,3))
calloc = matmul(a,b)
- if (sum(calloc-cres)>1e-4) call abort
- if (any([size(calloc,1), size(calloc,2)] /= [3,4])) call abort
+ if (sum(calloc-cres)>1e-4) STOP 6
+ if (any([size(calloc,1), size(calloc,2)] /= [3,4])) STOP 7
deallocate(calloc)
block
@@ -41,23 +41,23 @@ program main
bb = b
cc = matmul(aa,bb)
- if (sum(cc-cres)>1e-4) call abort
+ if (sum(cc-cres)>1e-4) STOP 8
calloc = matmul(aa,bb)
- if (sum(calloc-cres)>1e-4) call abort
- if (any([size(calloc,1), size(calloc,2)] /= [3,4])) call abort
+ if (sum(calloc-cres)>1e-4) STOP 9
+ if (any([size(calloc,1), size(calloc,2)] /= [3,4])) STOP 10
calloc = 42.
deallocate(calloc)
allocate(calloc(4,4))
calloc = matmul(aa,bb)
- if (sum(calloc-cres)>1e-4) call abort
- if (any([size(calloc,1), size(calloc,2)] /= [3,4])) call abort
+ if (sum(calloc-cres)>1e-4) STOP 11
+ if (any([size(calloc,1), size(calloc,2)] /= [3,4])) STOP 12
deallocate(calloc)
allocate(calloc(3,3))
calloc = matmul(aa,bb)
- if (sum(calloc-cres)>1e-4) call abort
- if (any([size(calloc,1), size(calloc,2)] /= [3,4])) call abort
+ if (sum(calloc-cres)>1e-4) STOP 13
+ if (any([size(calloc,1), size(calloc,2)] /= [3,4])) STOP 14
deallocate(calloc)
end block
diff --git a/gcc/testsuite/gfortran.dg/inline_matmul_5.f90 b/gcc/testsuite/gfortran.dg/inline_matmul_5.f90
index bed1cb6a0af..3f5a9d391ab 100644
--- a/gcc/testsuite/gfortran.dg/inline_matmul_5.f90
+++ b/gcc/testsuite/gfortran.dg/inline_matmul_5.f90
@@ -9,5 +9,5 @@ program main
c = matmul(a,b)
a = matmul(a,b)
- if (any(a /= c)) call abort
+ if (any(a /= c)) STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/inline_matmul_6.f90 b/gcc/testsuite/gfortran.dg/inline_matmul_6.f90
index b3030162f86..491a7215258 100644
--- a/gcc/testsuite/gfortran.dg/inline_matmul_6.f90
+++ b/gcc/testsuite/gfortran.dg/inline_matmul_6.f90
@@ -40,9 +40,9 @@ program main
a2 = -b1
call a1b2(a1,b1,c1)
- if (any(abs(c1 - (/248., -749./)) > 1e-3)) call abort
+ if (any(abs(c1 - (/248., -749./)) > 1e-3)) STOP 1
call a2b1(a2,b2,c2)
- if (any(abs(c2 - (/39., -61., 75./)) > 1e-3)) call abort
+ if (any(abs(c2 - (/39., -61., 75./)) > 1e-3)) STOP 2
end program main
! { dg-final { scan-tree-dump-times "_gfortran_matmul" 0 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/inline_matmul_7.f90 b/gcc/testsuite/gfortran.dg/inline_matmul_7.f90
index fa2021dd856..34716bc5daa 100644
--- a/gcc/testsuite/gfortran.dg/inline_matmul_7.f90
+++ b/gcc/testsuite/gfortran.dg/inline_matmul_7.f90
@@ -23,10 +23,10 @@ program main
DO i=1,N
v1 = MATMUL(a,b(:,i))
- if (any(abs(v1-v1res(:,i)) > 1e-10)) call abort
+ if (any(abs(v1-v1res(:,i)) > 1e-10)) STOP 1
v2 = MATMUL(a,b(i,:))
- if (any(abs(v2-v2res(:,i)) > 1e-10)) call abort
+ if (any(abs(v2-v2res(:,i)) > 1e-10)) STOP 2
ENDDO
diff --git a/gcc/testsuite/gfortran.dg/inline_matmul_8.f90 b/gcc/testsuite/gfortran.dg/inline_matmul_8.f90
index bc8bc4a5b18..272f65f55ea 100644
--- a/gcc/testsuite/gfortran.dg/inline_matmul_8.f90
+++ b/gcc/testsuite/gfortran.dg/inline_matmul_8.f90
@@ -11,7 +11,7 @@ program main
data b1 / 2., -3., 5., -7., 11., -13./
c1 = matmul(a1(1,:), b1)
- if (any (c1-[248., -749.] /= 0.)) call abort
+ if (any (c1-[248., -749.] /= 0.)) STOP 1
end program main
! { dg-final { scan-tree-dump-times "_gfortran_matmul" 0 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/inline_matmul_9.f90 b/gcc/testsuite/gfortran.dg/inline_matmul_9.f90
index 901cd96e24f..074936ae2ce 100644
--- a/gcc/testsuite/gfortran.dg/inline_matmul_9.f90
+++ b/gcc/testsuite/gfortran.dg/inline_matmul_9.f90
@@ -15,10 +15,10 @@ program main
data b1 / 2., -3., 5., -7., 11., -13./
c1 = matmul(a1(1,:)%c, b1)
- if (any (c1-[248., -749.] /= 0.)) call abort
+ if (any (c1-[248., -749.] /= 0.)) STOP 1
c2 = matmul(a1%c, b1)
- if (any (c2-reshape([248., -749.],shape(c2)) /= 0.)) call abort
+ if (any (c2-reshape([248., -749.],shape(c2)) /= 0.)) STOP 2
end program main
! { dg-final { scan-tree-dump-times "_gfortran_matmul" 0 "optimized" } }
diff --git a/gcc/testsuite/gfortran.dg/inline_sum_1.f90 b/gcc/testsuite/gfortran.dg/inline_sum_1.f90
index bff01bcbf31..c1b2db899ec 100644
--- a/gcc/testsuite/gfortran.dg/inline_sum_1.f90
+++ b/gcc/testsuite/gfortran.dg/inline_sum_1.f90
@@ -65,53 +65,53 @@
! Correct results in simple cases
ax = sum(a,1)
- if (any(ax /= px)) call abort
+ if (any(ax /= px)) STOP 1
ay = sum(a,2)
- if (any(ay /= py)) call abort
+ if (any(ay /= py)) STOP 2
az = sum(a,3)
- if (any(az /= pz)) call abort
+ if (any(az /= pz)) STOP 3
! Masks work
- if (any(sum(a,1,.false.) /= 0)) call abort
- if (any(sum(a,2,.true.) /= py)) call abort
- if (any(sum(a,3,m) /= merge(pz,0,m(:,:,1)))) call abort
+ if (any(sum(a,1,.false.) /= 0)) STOP 4
+ if (any(sum(a,2,.true.) /= py)) STOP 5
+ if (any(sum(a,3,m) /= merge(pz,0,m(:,:,1)))) STOP 6
if (any(sum(a,2,m) /= merge(sum(a(:, ::2,:),2),&
sum(a(:,2::2,:),2),&
- m(:,1,:)))) call abort
+ m(:,1,:)))) STOP 7
! It works too with array constructors ...
if (any(sum( &
reshape((/ (i*i,i=1,size(a)) /), shape(a)), &
1, &
- true) /= ax)) call abort
+ true) /= ax)) STOP 8
! ... and with vector subscripts
if (any(sum( &
a((/ (i,i=1,nx) /), &
(/ (i,i=1,ny) /), &
(/ (i,i=1,nz) /)), &
- 1) /= ax)) call abort
+ 1) /= ax)) STOP 9
if (any(sum( &
a(sum(onesx(:,:),1), & ! unnecessary { dg-warning "Creating array temporary" }
sum(onesy(:,:),1), & ! unnecessary { dg-warning "Creating array temporary" }
sum(onesz(:,:),1)), & ! unnecessary { dg-warning "Creating array temporary" }
- 1) /= ax)) call abort
+ 1) /= ax)) STOP 10
! Nested sums work
- if (sum(sum(sum(a,1),1),1) /= sum(a)) call abort
- if (sum(sum(sum(a,1),2),1) /= sum(a)) call abort
- if (sum(sum(sum(a,3),1),1) /= sum(a)) call abort
- if (sum(sum(sum(a,3),2),1) /= sum(a)) call abort
+ if (sum(sum(sum(a,1),1),1) /= sum(a)) STOP 11
+ if (sum(sum(sum(a,1),2),1) /= sum(a)) STOP 12
+ if (sum(sum(sum(a,3),1),1) /= sum(a)) STOP 13
+ if (sum(sum(sum(a,3),2),1) /= sum(a)) STOP 14
- if (any(sum(sum(a,1),1) /= sum(sum(a,2),1))) call abort
- if (any(sum(sum(a,1),2) /= sum(sum(a,3),1))) call abort
- if (any(sum(sum(a,2),2) /= sum(sum(a,3),2))) call abort
+ if (any(sum(sum(a,1),1) /= sum(sum(a,2),1))) STOP 15
+ if (any(sum(sum(a,1),2) /= sum(sum(a,3),1))) STOP 16
+ if (any(sum(sum(a,2),2) /= sum(sum(a,3),2))) STOP 17
! Temps are unavoidable here (function call's argument or result)
@@ -119,37 +119,37 @@
! Sums as part of a bigger expr work
if (any(1+sum(eid(a),1)+ax+sum( &
neid3(a), & ! { dg-warning "Creating array temporary" }
- 1)+1 /= 3*ax+2)) call abort
+ 1)+1 /= 3*ax+2)) STOP 18
if (any(1+eid(sum(a,2))+ay+ &
neid2( & ! { dg-warning "Creating array temporary" }
sum(a,2) & ! { dg-warning "Creating array temporary" }
- )+1 /= 3*ay+2)) call abort
+ )+1 /= 3*ay+2)) STOP 19
if (any(sum(eid(sum(a,3))+az+2* &
neid2(az) & ! { dg-warning "Creating array temporary" }
- ,1)+1 /= 4*sum(az,1)+1)) call abort
+ ,1)+1 /= 4*sum(az,1)+1)) STOP 20
- if (any(sum(transpose(sum(a,1)),1)+sum(az,1) /= sum(ax,2)+sum(sum(a,3),1))) call abort
+ if (any(sum(transpose(sum(a,1)),1)+sum(az,1) /= sum(ax,2)+sum(sum(a,3),1))) STOP 21
! Creates a temp when needed.
a(1,:,:) = sum(a,1) ! unnecessary { dg-warning "Creating array temporary" }
- if (any(a(1,:,:) /= ax)) call abort
+ if (any(a(1,:,:) /= ax)) STOP 22
b = p(:,:,1)
call set(b(2:,1), sum(b(:nx-1,:),2)) ! { dg-warning "Creating array temporary" }
- if (any(b(2:,1) /= ay(1:nx-1,1))) call abort
+ if (any(b(2:,1) /= ay(1:nx-1,1))) STOP 23
b = p(:,:,1)
call set(b(:,1), sum(b,2)) ! unnecessary { dg-warning "Creating array temporary" }
- if (any(b(:,1) /= ay(:,1))) call abort
+ if (any(b(:,1) /= ay(:,1))) STOP 24
b = p(:,:,1)
call tes(sum(eid(b(:nx-1,:)),2), b(2:,1)) ! { dg-warning "Creating array temporary" }
- if (any(b(2:,1) /= ay(1:nx-1,1))) call abort
+ if (any(b(2:,1) /= ay(1:nx-1,1))) STOP 25
b = p(:,:,1)
call tes(eid(sum(b,2)), b(:,1)) ! unnecessary { dg-warning "Creating array temporary" }
- if (any(b(:,1) /= ay(:,1))) call abort
+ if (any(b(:,1) /= ay(:,1))) STOP 26
contains
diff --git a/gcc/testsuite/gfortran.dg/inline_sum_3.f90 b/gcc/testsuite/gfortran.dg/inline_sum_3.f90
index 6858228aade..b3ea5e3559c 100644
--- a/gcc/testsuite/gfortran.dg/inline_sum_3.f90
+++ b/gcc/testsuite/gfortran.dg/inline_sum_3.f90
@@ -19,13 +19,13 @@ program gfcbug115
do j = 1, nboxes
pes(j) = modulo (j-1, nprocs)
end do
- if (any(nbx /= 1)) call abort
+ if (any(nbx /= 1)) STOP 1
do j = 0, nprocs-1
- if (.not. all(spread (pes==j,dim=1,ncopies=n_obstype))) call abort
+ if (.not. all(spread (pes==j,dim=1,ncopies=n_obstype))) STOP 2
! The two following tests used to fail
if (any(shape(sum(nbx,dim=2,mask=spread (pes==j,dim=1,ncopies=n_obstype))) &
- /= (/ 2 /))) call abort
+ /= (/ 2 /))) STOP 3
if (any(sum (nbx,dim=2,mask=spread (pes==j,dim=1,ncopies=n_obstype)) &
- /= (/ 1, 1 /))) call abort
+ /= (/ 1, 1 /))) STOP 4
end do
end program gfcbug115
diff --git a/gcc/testsuite/gfortran.dg/inline_sum_5.f90 b/gcc/testsuite/gfortran.dg/inline_sum_5.f90
index bda73fd99a3..916056be400 100644
--- a/gcc/testsuite/gfortran.dg/inline_sum_5.f90
+++ b/gcc/testsuite/gfortran.dg/inline_sum_5.f90
@@ -25,7 +25,7 @@ program test
real, dimension(m,n):: y
y = 1.0
- if (any(sum(y*func(m,n), dim=1) /= m)) call abort
+ if (any(sum(y*func(m,n), dim=1) /= m)) STOP 1
end subroutine sub
diff --git a/gcc/testsuite/gfortran.dg/inline_transpose_1.f90 b/gcc/testsuite/gfortran.dg/inline_transpose_1.f90
index 4195562c560..1204c972a21 100644
--- a/gcc/testsuite/gfortran.dg/inline_transpose_1.f90
+++ b/gcc/testsuite/gfortran.dg/inline_transpose_1.f90
@@ -27,160 +27,160 @@
a = p
c = transpose(a)
- if (any(c /= q)) call abort
+ if (any(c /= q)) STOP 1
write(u,*) transpose(a)
write(v,*) q
- if (u /= v) call abort
+ if (u /= v) STOP 2
e = r
f = s
g = transpose(e+f)
- if (any(g /= r + s)) call abort
+ if (any(g /= r + s)) STOP 3
write(u,*) transpose(e+f)
write(v,*) r + s
- if (u /= v) call abort
+ if (u /= v) STOP 4
e = transpose(e) ! { dg-warning "Creating array temporary" }
- if (any(e /= s)) call abort
+ if (any(e /= s)) STOP 5
write(u,*) transpose(transpose(e))
write(v,*) s
- if (u /= v) call abort
+ if (u /= v) STOP 6
e = transpose(e+f) ! { dg-warning "Creating array temporary" }
- if (any(e /= 2*r)) call abort
+ if (any(e /= 2*r)) STOP 7
write(u,*) transpose(transpose(e+f))-f
write(v,*) 2*r
- if (u /= v) call abort
+ if (u /= v) STOP 8
a = foo(transpose(c))
- if (any(a /= p+1)) call abort
+ if (any(a /= p+1)) STOP 9
write(u,*) foo(transpose(c)) ! { dg-warning "Creating array temporary" }
write(v,*) p+1
- if (u /= v) call abort
+ if (u /= v) STOP 10
c = transpose(foo(a)) ! Unnecessary { dg-warning "Creating array temporary" }
- if (any(c /= q+2)) call abort
+ if (any(c /= q+2)) STOP 11
write(u,*) transpose(foo(a)) ! { dg-warning "Creating array temporary" }
write(v,*) q+2
- if (u /= v) call abort
+ if (u /= v) STOP 12
e = foo(transpose(e)) ! { dg-warning "Creating array temporary" }
- if (any(e /= 2*s+1)) call abort
+ if (any(e /= 2*s+1)) STOP 13
write(u,*) transpose(foo(transpose(e))-1) ! { dg-warning "Creating array temporary" }
write(v,*) 2*s+1
- if (u /= v) call abort
+ if (u /= v) STOP 14
e = transpose(foo(e)) ! { dg-warning "Creating array temporary" }
- if (any(e /= 2*r+2)) call abort
+ if (any(e /= 2*r+2)) STOP 15
write(u,*) transpose(foo(transpose(e)-1)) ! 2 temps { dg-warning "Creating array temporary" }
write(v,*) 2*r+2
- if (u /= v) call abort
+ if (u /= v) STOP 16
a = bar(transpose(c))
- if (any(a /= p+4)) call abort
+ if (any(a /= p+4)) STOP 17
write(u,*) bar(transpose(c))
write(v,*) p+4
- if (u /= v) call abort
+ if (u /= v) STOP 18
c = transpose(bar(a))
- if (any(c /= q+6)) call abort
+ if (any(c /= q+6)) STOP 19
write(u,*) transpose(bar(a))
write(v,*) q+6
- if (u /= v) call abort
+ if (u /= v) STOP 20
e = bar(transpose(e)) ! { dg-warning "Creating array temporary" }
- if (any(e /= 2*s+4)) call abort
+ if (any(e /= 2*s+4)) STOP 21
write(u,*) transpose(bar(transpose(e)))-2
write(v,*) 2*s+4
- if (u /= v) call abort
+ if (u /= v) STOP 22
e = transpose(bar(e)) ! { dg-warning "Creating array temporary" }
- if (any(e /= 2*r+6)) call abort
+ if (any(e /= 2*r+6)) STOP 23
write(u,*) transpose(transpose(bar(e))-2)
write(v,*) 2*r+6
- if (u /= v) call abort
+ if (u /= v) STOP 24
- if (any(a /= transpose(transpose(a)))) call abort ! optimized away
+ if (any(a /= transpose(transpose(a)))) STOP 25! optimized away
write(u,*) a
write(v,*) transpose(transpose(a))
- if (u /= v) call abort
+ if (u /= v) STOP 26
b = a * a
- if (any(transpose(a+b) /= transpose(a)+transpose(b))) call abort ! optimized away
+ if (any(transpose(a+b) /= transpose(a)+transpose(b))) STOP 27! optimized away
write(u,*) transpose(a+b)
write(v,*) transpose(a) + transpose(b)
- if (u /= v) call abort
+ if (u /= v) STOP 28
- if (any(transpose(matmul(a,c)) /= matmul(transpose(c), transpose(a)))) call abort ! 2 temps { dg-warning "Creating array temporary" }
+ if (any(transpose(matmul(a,c)) /= matmul(transpose(c), transpose(a)))) STOP 29! 2 temps { dg-warning "Creating array temporary" }
write(u,*) transpose(matmul(a,c)) ! { dg-warning "Creating array temporary" }
write(v,*) matmul(transpose(c), transpose(a)) ! { dg-warning "Creating array temporary" }
- if (u /= v) call abort
+ if (u /= v) STOP 30
- if (any(transpose(matmul(e,a)) /= matmul(transpose(a), transpose(e)))) call abort ! 2 temps { dg-warning "Creating array temporary" }
+ if (any(transpose(matmul(e,a)) /= matmul(transpose(a), transpose(e)))) STOP 31! 2 temps { dg-warning "Creating array temporary" }
write(u,*) transpose(matmul(e,a)) ! { dg-warning "Creating array temporary" }
write(v,*) matmul(transpose(a), transpose(e)) ! { dg-warning "Creating array temporary" }
- if (u /= v) call abort
+ if (u /= v) STOP 32
call baz (transpose(a))
call toto1 (a, transpose (c))
- if (any (a /= 2 * p + 12)) call abort
+ if (any (a /= 2 * p + 12)) STOP 33
call toto1 (e, transpose (e)) ! { dg-warning "Creating array temporary" }
- if (any (e /= 4 * s + 12)) call abort
+ if (any (e /= 4 * s + 12)) STOP 34
call toto2 (c, transpose (a))
- if (any (c /= 2 * q + 13)) call abort
+ if (any (c /= 2 * q + 13)) STOP 35
call toto2 (e, transpose(e)) ! { dg-warning "Creating array temporary" }
- if (any (e /= 4 * r + 13)) call abort
+ if (any (e /= 4 * r + 13)) STOP 36
call toto2 (e, transpose(transpose(e))) ! { dg-warning "Creating array temporary" }
- if (any (e /= 4 * r + 14)) call abort
+ if (any (e /= 4 * r + 14)) STOP 37
call toto3 (e, transpose(e))
- if (any (e /= 4 * r + 14)) call abort
+ if (any (e /= 4 * r + 14)) STOP 38
call titi (nx, e, transpose(e)) ! { dg-warning "Creating array temporary" }
- if (any (e /= 4 * s + 17)) call abort
+ if (any (e /= 4 * s + 17)) STOP 39
contains
@@ -230,7 +230,7 @@ end subroutine titi
! { dg-final { scan-tree-dump-times "struct\[^\\n\]*atmp" 24 "original" } }
!
! 2 tests optimized out
-! { dg-final { scan-tree-dump-times "_gfortran_abort" 39 "original" } }
-! { # Commented out as failing at -O0: dg-final { scan-tree-dump-times "_gfortran_abort" 37 "optimized" } }
+! { dg-final { scan-tree-dump-times "_gfortran_stop" 39 "original" } }
+! { # Commented out as failing at -O0: dg-final { scan-tree-dump-times "_gfortran_stop" 37 "optimized" } }
!
! cleanup
diff --git a/gcc/testsuite/gfortran.dg/inquire-complex.f90 b/gcc/testsuite/gfortran.dg/inquire-complex.f90
index 40d08d4ebb1..8532f49f4a7 100644
--- a/gcc/testsuite/gfortran.dg/inquire-complex.f90
+++ b/gcc/testsuite/gfortran.dg/inquire-complex.f90
@@ -9,6 +9,6 @@ program main
inquire (iolength=s4) c4
inquire (iolength=s8) c8
- if (s4 /= 8 .or. s8 /= 16) call abort
+ if (s4 /= 8 .or. s8 /= 16) STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/inquire.f90 b/gcc/testsuite/gfortran.dg/inquire.f90
index 7115913c6c6..0661b99f55f 100644
--- a/gcc/testsuite/gfortran.dg/inquire.f90
+++ b/gcc/testsuite/gfortran.dg/inquire.f90
@@ -9,5 +9,5 @@
OPEN(UNIT=7, ACCESS='DIRECT',RECL=132,STATUS='SCRATCH')
INQUIRE(UNIT=7,SEQUENTIAL=D4VK)
CLOSE(UNIT=7,STATUS='DELETE')
- IF (D4VK.NE.'NO') CALL ABORT
+ IF (D4VK.NE.'NO') STOP 1
END
diff --git a/gcc/testsuite/gfortran.dg/inquire_10.f90 b/gcc/testsuite/gfortran.dg/inquire_10.f90
index bc7d6e36b38..d8cf6c36531 100644
--- a/gcc/testsuite/gfortran.dg/inquire_10.f90
+++ b/gcc/testsuite/gfortran.dg/inquire_10.f90
@@ -6,14 +6,14 @@
open(file='cseq', unit=23)
inquire(file='cseq',number=unit)
- if (unit /= 23) call abort
+ if (unit /= 23) STOP 1
inquire(file=trim(cwd) // '/cseq',number=unit)
- if (unit /= 23) call abort
+ if (unit /= 23) STOP 2
close(unit=23, status = 'delete')
inquire(file='foo/../cseq2',number=unit)
- if (unit >= 0) call abort
+ if (unit >= 0) STOP 3
inquire(file='cseq2',number=unit)
- if (unit >= 0) call abort
+ if (unit >= 0) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/inquire_13.f90 b/gcc/testsuite/gfortran.dg/inquire_13.f90
index d074861a97b..2de32404db5 100644
--- a/gcc/testsuite/gfortran.dg/inquire_13.f90
+++ b/gcc/testsuite/gfortran.dg/inquire_13.f90
@@ -10,93 +10,93 @@ logical opn
fname="inquire_13_test"
inquire(unit=6, direct=drct, opened=opn, access=acc)
-if (drct.ne."NO" .and. .not.opn .and. acc.ne."SEQUENTIAL") call abort
+if (drct.ne."NO" .and. .not.opn .and. acc.ne."SEQUENTIAL") STOP 1
inquire(unit=10, direct=drct, opened=opn, access=acc)
-if (drct.ne."UNKNOWN" .and. opn .and. acc.ne."UNDEFINED") call abort
+if (drct.ne."UNKNOWN" .and. opn .and. acc.ne."UNDEFINED") STOP 2
inquire(unit=10, direct=drct, opened=opn, access=acc, formatted=frmt)
-if (drct.ne."UNKNOWN" .and. opn .and. acc.ne."UNDEFINED") call abort
-if (frmt.ne."UNKNOWN") call abort
+if (drct.ne."UNKNOWN" .and. opn .and. acc.ne."UNDEFINED") STOP 3
+if (frmt.ne."UNKNOWN") STOP 4
open(unit=19,file=fname,status='replace',err=170,form="formatted")
inquire(unit=19, direct=drct, opened=opn, access=acc,formatted=frmt)
-if (drct.ne."NO" .and. .not.opn .and. acc.ne."SEQUENTIAL") call abort
-if (frmt.ne."YES") call abort
+if (drct.ne."NO" .and. .not.opn .and. acc.ne."SEQUENTIAL") STOP 5
+if (frmt.ne."YES") STOP 6
! Inquire on filename, open file with DIRECT and FORMATTED
inquire(file=fname, direct=drct, opened=opn, access=acc, FORMATTED=frmt)
-if (drct.ne."NO" .and. .not.opn .and. acc.ne."SEQUENTIAL") call abort
-if (frmt.ne."YES") call abort
+if (drct.ne."NO" .and. .not.opn .and. acc.ne."SEQUENTIAL") STOP 7
+if (frmt.ne."YES") STOP 8
close(19)
! Inquire on filename, closed file with DIRECT and FORMATTED
inquire(file=fname, direct=drct, opened=opn, access=acc, formatted=frmt)
-if (drct.ne."UNKNOWN" .and. opn .and. acc.ne."UNDEFINED") call abort
-if (frmt.ne."UNKNOWN") call abort
+if (drct.ne."UNKNOWN" .and. opn .and. acc.ne."UNDEFINED") STOP 9
+if (frmt.ne."UNKNOWN") STOP 10
open(unit=19,file=fname,status='replace',err=170,form="unformatted")
inquire(unit=19, direct=drct, opened=opn, access=acc, formatted=frmt)
-if (drct.ne."NO" .and. .not.opn .and. acc.ne."SEQUENTIAL") call abort
-if (frmt.ne."NO") call abort
+if (drct.ne."NO" .and. .not.opn .and. acc.ne."SEQUENTIAL") STOP 11
+if (frmt.ne."NO") STOP 12
close(19)
open(unit=19,file=fname,status='replace',err=170,form="formatted")
inquire(unit=19, direct=drct, opened=opn, access=acc, unformatted=frmt)
-if (drct.ne."NO" .and. .not.opn .and. acc.ne."SEQUENTIAL") call abort
+if (drct.ne."NO" .and. .not.opn .and. acc.ne."SEQUENTIAL") STOP 13
! Inquire on filename, open file with DIRECT and UNFORMATTED
inquire(file=fname, direct=drct, opened=opn, access=acc, UNFORMATTED=frmt)
-if (drct.ne."NO" .and. .not.opn .and. acc.ne."SEQUENTIAL") call abort
-if (frmt.ne."NO") call abort
+if (drct.ne."NO" .and. .not.opn .and. acc.ne."SEQUENTIAL") STOP 14
+if (frmt.ne."NO") STOP 15
close(19)
! Inquire on filename, closed file with DIRECT and UNFORMATTED
inquire(file=fname, direct=drct, opened=opn, access=acc, unformatted=frmt)
-if (drct.ne."UNKNOWN" .and. opn .and. acc.ne."UNDEFINED") call abort
-if (frmt.ne."UNKNOWN") call abort
+if (drct.ne."UNKNOWN" .and. opn .and. acc.ne."UNDEFINED") STOP 16
+if (frmt.ne."UNKNOWN") STOP 17
open(unit=19,file=fname,status='replace',err=170,form="unformatted")
inquire(unit=19, direct=drct, opened=opn, access=acc,unformatted=frmt)
-if (drct.ne."NO" .and. .not.opn .and. acc.ne."SEQUENTIAL") call abort
-if (frmt.ne."YES") call abort
+if (drct.ne."NO" .and. .not.opn .and. acc.ne."SEQUENTIAL") STOP 18
+if (frmt.ne."YES") STOP 19
close(19)
open(unit=19,file=fname,status='replace',err=170)
inquire(unit=19, direct=drct, opened=opn, access=acc)
-if (drct.ne."NO" .and. .not.opn .and. acc.ne."SEQUENTIAL") call abort
+if (drct.ne."NO" .and. .not.opn .and. acc.ne."SEQUENTIAL") STOP 20
close(19)
open(unit=19,file=fname,status='replace',err=170,access='SEQUENTIAL')
inquire(unit=19, direct=drct, opened=opn, access=acc)
-if (drct.ne."NO" .and. .not.opn .and. acc.ne."SEQUENTIAL") call abort
+if (drct.ne."NO" .and. .not.opn .and. acc.ne."SEQUENTIAL") STOP 21
! Inquire on filename, open file with SEQUENTIAL
inquire(file=fname, SEQUENTIAL=seqn, opened=opn, access=acc)
-if (seqn.ne."YES" .and. .not.opn .and. acc.ne."DIRECT") call abort
+if (seqn.ne."YES" .and. .not.opn .and. acc.ne."DIRECT") STOP 22
close(19)
! Inquire on filename, closed file with SEQUENTIAL
inquire(file=fname, SEQUENTIAL=seqn, opened=opn, access=acc)
-if (seqn.ne."UNKNOWN" .and. opn .and. acc.ne."UNDEFINED") call abort
+if (seqn.ne."UNKNOWN" .and. opn .and. acc.ne."UNDEFINED") STOP 23
open(unit=19,file=fname,status='replace',err=170,form='UNFORMATTED',access='DIRECT',recl=72)
inquire(unit=19, direct=drct, opened=opn, access=acc)
-if (drct.ne."YES" .and. .not.opn .and. acc.ne."DIRECT") call abort
+if (drct.ne."YES" .and. .not.opn .and. acc.ne."DIRECT") STOP 24
! Inquire on filename, open file with DIRECT
inquire(file=fname, direct=drct, opened=opn, access=acc)
-if (drct.ne."YES" .and. .not.opn .and. acc.ne."DIRECT") call abort
+if (drct.ne."YES" .and. .not.opn .and. acc.ne."DIRECT") STOP 25
close(19, status="delete")
! Inquire on filename, closed file with DIRECT
inquire(file=fname, direct=drct, opened=opn, access=acc)
-if (drct.ne."UNKNOWN" .and. opn .and. acc.ne."UNDEFINED") call abort
+if (drct.ne."UNKNOWN" .and. opn .and. acc.ne."UNDEFINED") STOP 26
stop
170 write(*,*) "ERROR: unable to open testdirect.f"
diff --git a/gcc/testsuite/gfortran.dg/inquire_15.f90 b/gcc/testsuite/gfortran.dg/inquire_15.f90
index ae94270ca8f..5971dc6fe0c 100644
--- a/gcc/testsuite/gfortran.dg/inquire_15.f90
+++ b/gcc/testsuite/gfortran.dg/inquire_15.f90
@@ -4,10 +4,10 @@ character(len=20) :: str
str = "abcdefg"
inquire(file="abcddummy", stream=str)
!print *, "str=",str
-if (str /= "UNKNOWN") call abort
+if (str /= "UNKNOWN") STOP 1
inquire(99, stream=str)
!print *, "str=",str
-if (str /= "UNKNOWN") call abort
+if (str /= "UNKNOWN") STOP 2
open(99,access="stream")
inquire(99, stream=str)
!print *, "str=",str
@@ -25,5 +25,5 @@ if (str /= "NO") goto 10
close(99, status="delete")
stop
10 close(99, status="delete")
-call abort
+STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/inquire_16.f90 b/gcc/testsuite/gfortran.dg/inquire_16.f90
index b52e23db6b4..8b7e662a85b 100644
--- a/gcc/testsuite/gfortran.dg/inquire_16.f90
+++ b/gcc/testsuite/gfortran.dg/inquire_16.f90
@@ -12,18 +12,18 @@ program test_inquire
inquire(unit=input_unit, read=s_read, write=s_write, &
readwrite=s_readwrite)
if (s_read /= "YES" .or. s_write /= "NO" .or. s_readwrite /="NO") then
- call abort()
+ STOP 1
endif
inquire(unit=output_unit, read=s_read, write=s_write, &
readwrite=s_readwrite)
if (s_read /= "NO" .or. s_write /= "YES" .or. s_readwrite /="NO") then
- call abort()
+ STOP 2
endif
inquire(unit=error_unit, read=s_read, write=s_write, &
readwrite=s_readwrite)
if (s_read /= "NO" .or. s_write /= "YES" .or. s_readwrite /="NO") then
- call abort()
+ STOP 3
endif
end program test_inquire
diff --git a/gcc/testsuite/gfortran.dg/inquire_17.f90 b/gcc/testsuite/gfortran.dg/inquire_17.f90
index 8a722f0e733..ce27078b1ab 100644
--- a/gcc/testsuite/gfortran.dg/inquire_17.f90
+++ b/gcc/testsuite/gfortran.dg/inquire_17.f90
@@ -5,6 +5,6 @@ program directaccess_formatted
open(10, status='scratch', form='formatted', access='direct', recl=10*4)
write(10,'(10i4)',rec=9) 1,2,3,4,5,6,7,8,9,10
inquire(unit=10,nextrec=nextrec)
- if (nextrec.ne.10) call abort
+ if (nextrec.ne.10) STOP 1
close(10)
end
diff --git a/gcc/testsuite/gfortran.dg/inquire_18.f90 b/gcc/testsuite/gfortran.dg/inquire_18.f90
new file mode 100644
index 00000000000..9829688225b
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/inquire_18.f90
@@ -0,0 +1,11 @@
+! { dg-do run }
+! PR84412 Wrong "Inquire statement identifies an internal file" error
+program bug
+ implicit none
+ integer :: i
+ character(len=1) :: s
+ write (s,'(i1)') 0
+ open(newUnit=i,file='inquire_18.txt',status='unknown')
+ inquire(unit=i)
+ close(i, status="delete")
+end program bug
diff --git a/gcc/testsuite/gfortran.dg/inquire_19.f90 b/gcc/testsuite/gfortran.dg/inquire_19.f90
new file mode 100644
index 00000000000..7d01b6b56ce
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/inquire_19.f90
@@ -0,0 +1,13 @@
+! { dg-do run }
+! PR84506 INQUIRE(pos=) always sets pos=0 with -fdefault-integer-8
+program TestInquire
+ implicit none
+ integer(8) :: iUnit
+ integer(8) :: iPos
+ open(newunit=iunit, file='output.txt', access='stream', status='replace')
+ write(iUnit) 'TEXT'
+ inquire(iUnit, pos=iPos)
+ close(iUnit, status='delete')
+ !print *, iPos
+ if (iPos.ne.5) stop 1
+end program TestInquire
diff --git a/gcc/testsuite/gfortran.dg/inquire_5.f90 b/gcc/testsuite/gfortran.dg/inquire_5.f90
index 2be3a34c3f3..78ffa33c03b 100644
--- a/gcc/testsuite/gfortran.dg/inquire_5.f90
+++ b/gcc/testsuite/gfortran.dg/inquire_5.f90
@@ -7,32 +7,32 @@
character(len=20) chr
open(7,STATUS='SCRATCH')
inquire(7,position=chr)
- if (chr.NE.'ASIS') CALL ABORT
+ if (chr.NE.'ASIS') STOP 1
close(7)
open(7,STATUS='SCRATCH',ACCESS='DIRECT',RECL=100)
inquire(7,position=chr)
- if (chr.NE.'UNDEFINED') CALL ABORT
+ if (chr.NE.'UNDEFINED') STOP 2
close(7)
open(7,STATUS='SCRATCH',POSITION='REWIND')
inquire(7,position=chr)
- if (chr.NE.'REWIND') CALL ABORT
+ if (chr.NE.'REWIND') STOP 3
close(7)
open(7,STATUS='SCRATCH',POSITION='ASIS')
inquire(7,position=chr)
- if (chr.NE.'ASIS') CALL ABORT
+ if (chr.NE.'ASIS') STOP 4
close(7)
open(7,STATUS='SCRATCH',POSITION='APPEND')
inquire(7,position=chr)
- if (chr.NE.'APPEND') CALL ABORT
+ if (chr.NE.'APPEND') STOP 5
close(7)
open(7,STATUS='SCRATCH',POSITION='REWIND')
write(7,*)'this is a record written to the file'
write(7,*)'this is another record'
backspace(7)
inquire(7,position=chr)
- if (chr .NE. 'UNSPECIFIED') CALL ABORT
+ if (chr .NE. 'UNSPECIFIED') STOP 6
rewind(7)
inquire(7,position=chr)
- if (chr.NE.'REWIND') CALL ABORT
+ if (chr.NE.'REWIND') STOP 7
close(7)
end
diff --git a/gcc/testsuite/gfortran.dg/inquire_6.f90 b/gcc/testsuite/gfortran.dg/inquire_6.f90
index b657df831d9..27fc5d4a4bf 100644
--- a/gcc/testsuite/gfortran.dg/inquire_6.f90
+++ b/gcc/testsuite/gfortran.dg/inquire_6.f90
@@ -10,24 +10,24 @@
! not connected
inquire(7,pad=chr)
! if (debug) print*,chr
- if (chr.ne.'UNDEFINED') call abort
+ if (chr.ne.'UNDEFINED') STOP 1
chr=''
! not a formatted file
open(7,FORM='UNFORMATTED',STATUS='SCRATCH')
inquire(7,pad=chr)
! if (debug) print*,chr
- if (chr.ne.'UNDEFINED') call abort
+ if (chr.ne.'UNDEFINED') STOP 2
chr=''
! yes
open(8,STATUS='SCRATCH',PAD='YES')
inquire(8,pad=chr)
! if (debug) print*,chr
- if (chr.ne.'YES') call abort
+ if (chr.ne.'YES') STOP 3
chr=''
! no
open(9,STATUS='SCRATCH',PAD='NO')
inquire(9,pad=chr)
! if (debug) print*,chr
- if (chr.ne.'NO') call abort
+ if (chr.ne.'NO') STOP 4
chr=''
end
diff --git a/gcc/testsuite/gfortran.dg/inquire_7.f90 b/gcc/testsuite/gfortran.dg/inquire_7.f90
index 02e96ab4dcb..c34d5e55f7c 100644
--- a/gcc/testsuite/gfortran.dg/inquire_7.f90
+++ b/gcc/testsuite/gfortran.dg/inquire_7.f90
@@ -8,20 +8,20 @@
open(10,delim='quote',status='SCRATCH')
inquire(10,delim=delim)
close(10)
- if (delim .ne. 'QUOTE') call abort
+ if (delim .ne. 'QUOTE') STOP 1
! apostrophe
open(10,delim='apostrophe',status='SCRATCH')
inquire(10,delim=delim)
close(10)
- if (delim .ne. 'APOSTROPHE') call abort
+ if (delim .ne. 'APOSTROPHE') STOP 2
! none
open(10,status='SCRATCH')
inquire(10,delim=delim)
close(10)
- if (delim .ne. 'NONE') call abort
+ if (delim .ne. 'NONE') STOP 3
! undefined
open(10,form='UNFORMATTED',status='SCRATCH')
inquire(10,delim=delim)
close(10)
- if (delim .ne. 'UNDEFINED') call abort
+ if (delim .ne. 'UNDEFINED') STOP 4
end program main
diff --git a/gcc/testsuite/gfortran.dg/inquire_9.f90 b/gcc/testsuite/gfortran.dg/inquire_9.f90
index 99cd1af19cf..c1785cb1274 100644
--- a/gcc/testsuite/gfortran.dg/inquire_9.f90
+++ b/gcc/testsuite/gfortran.dg/inquire_9.f90
@@ -3,22 +3,22 @@
logical :: l
l = .true.
inquire (file='inquire_9 file that should not exist', exist=l)
- if (l) call abort
+ if (l) STOP 1
l = .true.
inquire (unit=-16, exist=l)
- if (l) call abort
+ if (l) STOP 2
open (unit=16, file='inquire_9.tst')
write (unit=16, fmt='(a)') 'Test'
l = .false.
inquire (unit=16, exist=l)
- if (.not.l) call abort
+ if (.not.l) STOP 3
l = .false.
inquire (file='inquire_9.tst', exist=l)
- if (.not.l) call abort
+ if (.not.l) STOP 4
close (unit=16)
l = .false.
inquire (file='inquire_9.tst', exist=l)
- if (.not.l) call abort
+ if (.not.l) STOP 5
open (unit=16, file='inquire_9.tst')
close (unit=16, status='delete')
end
diff --git a/gcc/testsuite/gfortran.dg/inquire_internal.f90 b/gcc/testsuite/gfortran.dg/inquire_internal.f90
index 26570e6e43e..cb27d66daea 100644
--- a/gcc/testsuite/gfortran.dg/inquire_internal.f90
+++ b/gcc/testsuite/gfortran.dg/inquire_internal.f90
@@ -10,6 +10,6 @@
!print *, "Error Code is : ", IOSTAT_INQUIRE_INTERNAL_UNIT
!print *, "IOSTAT Code is: ", istat
!print *, tunit, unit_exists
- if (istat.ne.iostat_inquire_internal_unit) call abort()
- if (unit_exists) call abort()
+ if (istat.ne.iostat_inquire_internal_unit) STOP 1
+ if (unit_exists) STOP 2
END
diff --git a/gcc/testsuite/gfortran.dg/inquire_recl_f2018.f90 b/gcc/testsuite/gfortran.dg/inquire_recl_f2018.f90
index 8a1334029fc..b744e920f7b 100644
--- a/gcc/testsuite/gfortran.dg/inquire_recl_f2018.f90
+++ b/gcc/testsuite/gfortran.dg/inquire_recl_f2018.f90
@@ -7,7 +7,7 @@ program inqrecl
! F2018 (N2137) 12.10.2.26: recl for unconnected should be -1
inquire(10, recl=r)
if (r /= -1) then
- call abort()
+ STOP 1
end if
! Formatted sequential
@@ -16,10 +16,10 @@ program inqrecl
inquire(10, recl=r4)
close(10)
if (r /= huge(0_8) - huge(0_4) - 1) then
- call abort()
+ STOP 2
end if
if (r4 /= huge(0)) then
- call abort()
+ STOP 3
end if
! Formatted sequential with recl= specifier
@@ -27,7 +27,7 @@ program inqrecl
inquire(10, recl=r)
close(10)
if (r /= 100) then
- call abort()
+ STOP 4
end if
! Formatted stream
@@ -37,6 +37,6 @@ program inqrecl
inquire(10, recl=r)
close(10)
if (r /= -2) then
- call abort()
+ STOP 5
end if
end program inqrecl
diff --git a/gcc/testsuite/gfortran.dg/inquire_size.f90 b/gcc/testsuite/gfortran.dg/inquire_size.f90
index ce2db48e725..07ed0ba6b0f 100644
--- a/gcc/testsuite/gfortran.dg/inquire_size.f90
+++ b/gcc/testsuite/gfortran.dg/inquire_size.f90
@@ -13,18 +13,18 @@ enddo
! flush(25)
inquire(unit=25, named=is_named, name=aname, size=i)
-if (.not.is_named) call abort
-if (aname /= "testfile_inquire_size") call abort
-if (i /= 3000) call abort
+if (.not.is_named) STOP 1
+if (aname /= "testfile_inquire_size") STOP 2
+if (i /= 3000) STOP 3
inquire(file="testfile_inquire_size", size=i)
-if (.not.is_named) call abort
-if (aname /= "testfile_inquire_size") call abort
-if (i /= 3000) call abort
+if (.not.is_named) STOP 4
+if (aname /= "testfile_inquire_size") STOP 5
+if (i /= 3000) STOP 6
close(25, status="delete")
inquire(file="testfile_inquire_size", size=i)
-if (i /= -1) call abort
+if (i /= -1) STOP 7
end
diff --git a/gcc/testsuite/gfortran.dg/int_1.f90 b/gcc/testsuite/gfortran.dg/int_1.f90
index 77ba1e2e69b..7729df5cb6e 100644
--- a/gcc/testsuite/gfortran.dg/int_1.f90
+++ b/gcc/testsuite/gfortran.dg/int_1.f90
@@ -62,22 +62,22 @@ program test_int
i2 = int(-3)
i4 = int(-3)
i8 = int(-3)
- if (i1 /= -3_ik1 .or. i2 /= -3_ik2) call abort
- if (i4 /= -3_ik4 .or. i8 /= -3_ik8) call abort
+ if (i1 /= -3_ik1 .or. i2 /= -3_ik2) STOP 1
+ if (i4 /= -3_ik4 .or. i8 /= -3_ik8) STOP 2
i1 = int(5, ik1)
i2 = int(i1, ik2)
i4 = int(i1, ik4)
i8 = int(i1, ik8)
- if (i1 /= 5_ik1 .or. i2 /= 5_ik2) call abort
- if (i4 /= 5_ik4 .or. i8 /= 5_ik8) call abort
+ if (i1 /= 5_ik1 .or. i2 /= 5_ik2) STOP 3
+ if (i4 /= 5_ik4 .or. i8 /= 5_ik8) STOP 4
i8 = int(10, ik8)
i1 = int(i8, ik1)
i2 = int(i8, ik2)
i4 = int(i8, ik4)
- if (i1 /= 10_ik1 .or. i2 /= 10_ik2) call abort
- if (i4 /= 10_ik4 .or. i8 /= 10_ik8) call abort
+ if (i1 /= 10_ik1 .or. i2 /= 10_ik2) STOP 5
+ if (i4 /= 10_ik4 .or. i8 /= 10_ik8) STOP 6
!
! case 2(b)
!
@@ -86,16 +86,16 @@ program test_int
i2 = int(r4, ik2)
i4 = int(r4, ik4)
i8 = int(r4, ik8)
- if (i1 /= -3_ik1 .or. i2 /= -3_ik2) call abort
- if (i4 /= -3_ik4 .or. i8 /= -3_ik8) call abort
+ if (i1 /= -3_ik1 .or. i2 /= -3_ik2) STOP 7
+ if (i4 /= -3_ik4 .or. i8 /= -3_ik8) STOP 8
r8 = -3.7_dp
i1 = int(r8, ik1)
i2 = int(r8, ik2)
i4 = int(r8, ik4)
i8 = int(r8, ik8)
- if (i1 /= -3_ik1 .or. i2 /= -3_ik2) call abort
- if (i4 /= -3_ik4 .or. i8 /= -3_ik8) call abort
+ if (i1 /= -3_ik1 .or. i2 /= -3_ik2) STOP 9
+ if (i4 /= -3_ik4 .or. i8 /= -3_ik8) STOP 10
!
! Case 2(a)
!
@@ -104,16 +104,16 @@ program test_int
i2 = int(r4, ik2)
i4 = int(r4, ik4)
i8 = int(r4, ik8)
- if (i1 /= 0_ik1 .or. i2 /= 0_ik2) call abort
- if (i4 /= 0_ik4 .or. i8 /= 0_ik8) call abort
+ if (i1 /= 0_ik1 .or. i2 /= 0_ik2) STOP 11
+ if (i4 /= 0_ik4 .or. i8 /= 0_ik8) STOP 12
r8 = -3.7E-1_dp
i1 = int(r8, ik1)
i2 = int(r8, ik2)
i4 = int(r8, ik4)
i8 = int(r8, ik8)
- if (i1 /= 0_ik1 .or. i2 /= 0_ik2) call abort
- if (i4 /= 0_ik4 .or. i8 /= 0_ik8) call abort
+ if (i1 /= 0_ik1 .or. i2 /= 0_ik2) STOP 13
+ if (i4 /= 0_ik4 .or. i8 /= 0_ik8) STOP 14
!
! Case 3
!
@@ -122,32 +122,32 @@ program test_int
i2 = int(c4, ik2)
i4 = int(c4, ik4)
i8 = int(c4, ik8)
- if (i1 /= 0_ik1 .or. i2 /= 0_ik2) call abort
- if (i4 /= 0_ik4 .or. i8 /= 0_ik8) call abort
+ if (i1 /= 0_ik1 .or. i2 /= 0_ik2) STOP 15
+ if (i4 /= 0_ik4 .or. i8 /= 0_ik8) STOP 16
c8 = (-3.7E-1_dp,3.7E-1_dp)
i1 = int(c8, ik1)
i2 = int(c8, ik2)
i4 = int(c8, ik4)
i8 = int(c8, ik8)
- if (i1 /= 0_ik1 .or. i2 /= 0_ik2) call abort
- if (i4 /= 0_ik4 .or. i8 /= 0_ik8) call abort
+ if (i1 /= 0_ik1 .or. i2 /= 0_ik2) STOP 17
+ if (i4 /= 0_ik4 .or. i8 /= 0_ik8) STOP 18
c4 = (-3.7_sp,3.7_sp)
i1 = int(c4, ik1)
i2 = int(c4, ik2)
i4 = int(c4, ik4)
i8 = int(c4, ik8)
- if (i1 /= -3_ik1 .or. i2 /= -3_ik2) call abort
- if (i4 /= -3_ik4 .or. i8 /= -3_ik8) call abort
+ if (i1 /= -3_ik1 .or. i2 /= -3_ik2) STOP 19
+ if (i4 /= -3_ik4 .or. i8 /= -3_ik8) STOP 20
c8 = (3.7_dp,3.7_dp)
i1 = int(c8, ik1)
i2 = int(c8, ik2)
i4 = int(c8, ik4)
i8 = int(c8, ik8)
- if (i1 /= 3_ik1 .or. i2 /= 3_ik2) call abort
- if (i4 /= 3_ik4 .or. i8 /= 3_ik8) call abort
+ if (i1 /= 3_ik1 .or. i2 /= 3_ik2) STOP 21
+ if (i4 /= 3_ik4 .or. i8 /= 3_ik8) STOP 22
!
! Case 4
!
@@ -155,19 +155,19 @@ program test_int
i2 = int(b'0011', ik2)
i4 = int(b'0011', ik4)
i8 = int(b'0011', ik8)
- if (i1 /= 3_ik1 .or. i2 /= 3_ik2) call abort
- if (i4 /= 3_ik4 .or. i8 /= 3_ik8) call abort
+ if (i1 /= 3_ik1 .or. i2 /= 3_ik2) STOP 23
+ if (i4 /= 3_ik4 .or. i8 /= 3_ik8) STOP 24
i1 = int(o'0011', ik1)
i2 = int(o'0011', ik2)
i4 = int(o'0011', ik4)
i8 = int(o'0011', ik8)
- if (i1 /= 9_ik1 .or. i2 /= 9_ik2) call abort
- if (i4 /= 9_ik4 .or. i8 /= 9_ik8) call abort
+ if (i1 /= 9_ik1 .or. i2 /= 9_ik2) STOP 25
+ if (i4 /= 9_ik4 .or. i8 /= 9_ik8) STOP 26
i1 = int(z'0011', ik1)
i2 = int(z'0011', ik2)
i4 = int(z'0011', ik4)
i8 = int(z'0011', ik8)
- if (i1 /= 17_ik1 .or. i2 /= 17_ik2) call abort
- if (i4 /= 17_ik4 .or. i8 /= 17_ik8) call abort
+ if (i1 /= 17_ik1 .or. i2 /= 17_ik2) STOP 27
+ if (i4 /= 17_ik4 .or. i8 /= 17_ik8) STOP 28
end program test_int
diff --git a/gcc/testsuite/gfortran.dg/int_conv_1.f90 b/gcc/testsuite/gfortran.dg/int_conv_1.f90
index 15f71f9336c..a3e8783847f 100644
--- a/gcc/testsuite/gfortran.dg/int_conv_1.f90
+++ b/gcc/testsuite/gfortran.dg/int_conv_1.f90
@@ -17,20 +17,20 @@
o2 = short(i4)
if (i8 /= i2 .or. i4 /= i2 .or. j2 /= i2 .or. k2 /= i2 &
- .or. l2 /= i2 .or. m2 /= i2 .or. n2 /= i2 .or. o2 /= i2) call abort
+ .or. l2 /= i2 .or. m2 /= i2 .or. n2 /= i2 .or. o2 /= i2) STOP 1
x = i2
i8 = int8(x)
i4 = long(x)
j2 = short(x)
k2 = int2(x)
- if (i8 /= i2 .or. i4 /= i2 .or. j2 /= i2 .or. k2 /= i2) call abort
+ if (i8 /= i2 .or. i4 /= i2 .or. j2 /= i2 .or. k2 /= i2) STOP 2
z = i2 + (0.,-42.)
i8 = int8(z)
i4 = long(z)
j2 = short(z)
k2 = int2(z)
- if (i8 /= i2 .or. i4 /= i2 .or. j2 /= i2 .or. k2 /= i2) call abort
+ if (i8 /= i2 .or. i4 /= i2 .or. j2 /= i2 .or. k2 /= i2) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/int_range_io_1.f90 b/gcc/testsuite/gfortran.dg/int_range_io_1.f90
index de1fdb81304..31e192e58ad 100644
--- a/gcc/testsuite/gfortran.dg/int_range_io_1.f90
+++ b/gcc/testsuite/gfortran.dg/int_range_io_1.f90
@@ -12,23 +12,23 @@ program int_range
read(inputline,100) test
100 format(1i11)
- if (test /= -2147483648) call abort
+ if (test /= -2147483648) STOP 1
inputline(1:1) = " "
read(inputline, 100, iostat=st) test
- if (st == 0) call abort
+ if (st == 0) STOP 2
inputline(11:11) = "7"
read(inputline, 100) test
- if (test /= 2147483647) call abort
+ if (test /= 2147483647) STOP 3
! Same as above but with list-formatted IO
inputline = "-2147483648"
read(inputline, *) test
- if (test /= -2147483648) call abort
+ if (test /= -2147483648) STOP 4
inputline(1:1) = " "
read(inputline, *, iostat=st) test
- if (st == 0) call abort
+ if (st == 0) STOP 5
inputline(11:11) = "7"
read(inputline, *) test
- if (test /= 2147483647) call abort
+ if (test /= 2147483647) STOP 6
end program int_range
diff --git a/gcc/testsuite/gfortran.dg/integer_exponentiation_2.f90 b/gcc/testsuite/gfortran.dg/integer_exponentiation_2.f90
index d55f70c9a95..41f4cbfc64c 100644
--- a/gcc/testsuite/gfortran.dg/integer_exponentiation_2.f90
+++ b/gcc/testsuite/gfortran.dg/integer_exponentiation_2.f90
@@ -82,17 +82,17 @@ contains
subroutine check_equal_r (a, b)
real, intent(in) :: a, b
- if (abs(a - b) > 1.e-5 * abs(b)) call abort
+ if (abs(a - b) > 1.e-5 * abs(b)) STOP 1
end subroutine check_equal_r
subroutine check_equal_c (a, b)
complex, intent(in) :: a, b
- if (abs(a - b) > 1.e-5 * abs(b)) call abort
+ if (abs(a - b) > 1.e-5 * abs(b)) STOP 2
end subroutine check_equal_c
subroutine check_equal_i (a, b)
integer, intent(in) :: a, b
- if (a /= b) call abort
+ if (a /= b) STOP 3
end subroutine check_equal_i
end subroutine run_me
diff --git a/gcc/testsuite/gfortran.dg/integer_exponentiation_3.F90 b/gcc/testsuite/gfortran.dg/integer_exponentiation_3.F90
index e4088c361aa..fe1f3a8a95e 100644
--- a/gcc/testsuite/gfortran.dg/integer_exponentiation_3.F90
+++ b/gcc/testsuite/gfortran.dg/integer_exponentiation_3.F90
@@ -25,42 +25,42 @@ contains
subroutine check_i8 (a, b)
integer(kind=8), intent(in) :: a, b
- if (a /= b) call abort()
+ if (a /= b) STOP 1
end subroutine check_i8
subroutine check_i4 (a, b)
integer(kind=4), intent(in) :: a, b
- if (a /= b) call abort()
+ if (a /= b) STOP 2
end subroutine check_i4
subroutine check_r8 (a, b)
real(kind=8), intent(in) :: a, b
- if (a /= b) call abort()
+ if (a /= b) STOP 3
end subroutine check_r8
subroutine check_r4 (a, b)
real(kind=4), intent(in) :: a, b
- if (a /= b) call abort()
+ if (a /= b) STOP 4
end subroutine check_r4
subroutine check_c8 (a, b)
complex(kind=8), intent(in) :: a, b
- if (a /= b) call abort()
+ if (a /= b) STOP 5
end subroutine check_c8
subroutine check_c4 (a, b)
complex(kind=4), intent(in) :: a, b
- if (a /= b) call abort()
+ if (a /= b) STOP 6
end subroutine check_c4
subroutine acheck_c8 (a, b)
complex(kind=8), intent(in) :: a, b
- if (abs(a-b) > 1.d-9 * min(abs(a),abs(b))) call abort()
+ if (abs(a-b) > 1.d-9 * min(abs(a),abs(b))) STOP 7
end subroutine acheck_c8
subroutine acheck_c4 (a, b)
complex(kind=4), intent(in) :: a, b
- if (abs(a-b) > 1.e-5 * min(abs(a),abs(b))) call abort()
+ if (abs(a-b) > 1.e-5 * min(abs(a),abs(b))) STOP 8
end subroutine acheck_c4
end module mod_check
diff --git a/gcc/testsuite/gfortran.dg/integer_exponentiation_5.F90 b/gcc/testsuite/gfortran.dg/integer_exponentiation_5.F90
index 35bb2816784..6069bdf7d37 100644
--- a/gcc/testsuite/gfortran.dg/integer_exponentiation_5.F90
+++ b/gcc/testsuite/gfortran.dg/integer_exponentiation_5.F90
@@ -18,32 +18,32 @@ contains
subroutine check_i8 (a, b)
integer(kind=8), intent(in) :: a, b
- if (a /= b) call abort()
+ if (a /= b) STOP 1
end subroutine check_i8
subroutine check_i4 (a, b)
integer(kind=4), intent(in) :: a, b
- if (a /= b) call abort()
+ if (a /= b) STOP 2
end subroutine check_i4
subroutine check_r8 (a, b)
real(kind=8), intent(in) :: a, b
- if (a /= b) call abort()
+ if (a /= b) STOP 3
end subroutine check_r8
subroutine check_r4 (a, b)
real(kind=4), intent(in) :: a, b
- if (a /= b) call abort()
+ if (a /= b) STOP 4
end subroutine check_r4
subroutine check_c8 (a, b)
complex(kind=8), intent(in) :: a, b
- if (a /= b) call abort()
+ if (a /= b) STOP 5
end subroutine check_c8
subroutine check_c4 (a, b)
complex(kind=4), intent(in) :: a, b
- if (a /= b) call abort()
+ if (a /= b) STOP 6
end subroutine check_c4
end module mod_check
diff --git a/gcc/testsuite/gfortran.dg/integer_plus.f90 b/gcc/testsuite/gfortran.dg/integer_plus.f90
index 695f9d34621..64c4b1c9853 100644
--- a/gcc/testsuite/gfortran.dg/integer_plus.f90
+++ b/gcc/testsuite/gfortran.dg/integer_plus.f90
@@ -8,5 +8,5 @@ write(10,*) i
rewind(10)
read(10,*) astring
close (10)
-if (astring.ne.'+789') call abort
+if (astring.ne.'+789') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/intent_out_2.f90 b/gcc/testsuite/gfortran.dg/intent_out_2.f90
index e85cf84f3a1..a563742eb7d 100644
--- a/gcc/testsuite/gfortran.dg/intent_out_2.f90
+++ b/gcc/testsuite/gfortran.dg/intent_out_2.f90
@@ -26,14 +26,14 @@ contains
do i=1,2
allocate (temp (2))
call construct_temp (temp)
- if (any (temp % p% mn .ne. 'ijklmnop')) call abort ()
+ if (any (temp % p% mn .ne. 'ijklmnop')) STOP 1
deallocate (temp)
end do
end subroutine setup
!--
subroutine construct_temp (temp)
type (t_temp), intent(out) :: temp (:)
- if (any (temp % p% mn .ne. 'abcdefgh')) call abort ()
+ if (any (temp % p% mn .ne. 'abcdefgh')) STOP 2
temp(:)% p% mn = 'ijklmnop'
end subroutine construct_temp
end module gfcbug72
diff --git a/gcc/testsuite/gfortran.dg/intent_out_5.f90 b/gcc/testsuite/gfortran.dg/intent_out_5.f90
index 6a9c6f4bd39..0df04f7f04a 100644
--- a/gcc/testsuite/gfortran.dg/intent_out_5.f90
+++ b/gcc/testsuite/gfortran.dg/intent_out_5.f90
@@ -13,13 +13,13 @@ program main
type(container_t) :: container
- if (container%n /= 42) call abort()
- if (allocated(container%a)) call abort()
+ if (container%n /= 42) STOP 1
+ if (allocated(container%a)) STOP 2
container%n = 1
allocate(container%a(50))
call init (container)
- if (container%n /= 42) call abort()
- if (allocated(container%a)) call abort()
+ if (container%n /= 42) STOP 3
+ if (allocated(container%a)) STOP 4
contains
subroutine init (container)
type(container_t), intent(out) :: container
diff --git a/gcc/testsuite/gfortran.dg/intent_out_6.f90 b/gcc/testsuite/gfortran.dg/intent_out_6.f90
index a36316428fa..51ae9499667 100644
--- a/gcc/testsuite/gfortran.dg/intent_out_6.f90
+++ b/gcc/testsuite/gfortran.dg/intent_out_6.f90
@@ -9,7 +9,7 @@ contains
implicit none
real,allocatable,intent(out),optional :: a(:)
if(present(a)) then
- if(allocated(a)) call abort()
+ if(allocated(a)) STOP 1
allocate(a(1))
a(1) = 5
end if
@@ -20,7 +20,7 @@ contains
! print *,'in sub1'
call sub2(a)
if(present(a)) then
- if(a(1) /= 5) call abort()
+ if(a(1) /= 5) STOP 2
end if
end subroutine sub1
end module test_module
@@ -33,5 +33,5 @@ program test
call sub1()
x = 8
call sub1(x)
- if(x(1) /= 5) call abort()
+ if(x(1) /= 5) STOP 3
end program
diff --git a/gcc/testsuite/gfortran.dg/interface_12.f90 b/gcc/testsuite/gfortran.dg/interface_12.f90
index d519789bf93..facd2a0f7e7 100644
--- a/gcc/testsuite/gfortran.dg/interface_12.f90
+++ b/gcc/testsuite/gfortran.dg/interface_12.f90
@@ -77,8 +77,8 @@ program test
character(21) :: chr (3)
chr = "ABCDEFGHIJKLMNOPQRSTU"
- if (len (test2 (10)) .ne. 21) call abort ()
- if (any (test2 (10) .ne. chr)) call abort ()
+ if (len (test2 (10)) .ne. 21) STOP 1
+ if (any (test2 (10) .ne. chr)) STOP 2
end program test
pure function f (x)
diff --git a/gcc/testsuite/gfortran.dg/interface_19.f90 b/gcc/testsuite/gfortran.dg/interface_19.f90
index 2d72caa058d..c42d4ad160c 100644
--- a/gcc/testsuite/gfortran.dg/interface_19.f90
+++ b/gcc/testsuite/gfortran.dg/interface_19.f90
@@ -16,7 +16,7 @@ contains
end interface
if(present(a)) then
write(temp,'(f16.10)')a(4.0d0)
- if (trim(temp) /= ' -0.6536436209') call abort
+ if (trim(temp) /= ' -0.6536436209') STOP 1
endif
end subroutine sub
end module m
diff --git a/gcc/testsuite/gfortran.dg/interface_4.f90 b/gcc/testsuite/gfortran.dg/interface_4.f90
index a09d656f91c..328bd4a18ef 100644
--- a/gcc/testsuite/gfortran.dg/interface_4.f90
+++ b/gcc/testsuite/gfortran.dg/interface_4.f90
@@ -39,7 +39,7 @@ program main
USE f77_blas_generic
character(6) :: chr
call bl_copy(1, chr)
- if (chr /= "sdcopy") call abort ()
+ if (chr /= "sdcopy") STOP 1
call bl_copy(1.0, chr)
- if (chr /= "recopy") call abort ()
+ if (chr /= "recopy") STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/interface_5.f90 b/gcc/testsuite/gfortran.dg/interface_5.f90
index a014862f8b1..990abab68fa 100644
--- a/gcc/testsuite/gfortran.dg/interface_5.f90
+++ b/gcc/testsuite/gfortran.dg/interface_5.f90
@@ -42,7 +42,7 @@ subroutine i_am_ok
USE f77_blas_generic
character(6) :: chr
chr = ""
- if (chr /= "recopy") call abort ()
+ if (chr /= "recopy") STOP 1
end subroutine i_am_ok
program main
@@ -51,5 +51,5 @@ program main
character(6) :: chr
chr = ""
call bl_copy(1.0, chr)
- if (chr /= "recopy") call abort ()
+ if (chr /= "recopy") STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/interface_9.f90 b/gcc/testsuite/gfortran.dg/interface_9.f90
index 2f38040b933..9d5de338a52 100644
--- a/gcc/testsuite/gfortran.dg/interface_9.f90
+++ b/gcc/testsuite/gfortran.dg/interface_9.f90
@@ -33,12 +33,12 @@ end module module2
program gfcbug48
use module1, only : inverse
call sub ()
- if (inverse(1.0_4) /= 1.0_4) call abort ()
- if (inverse(1_4) /= 3_4) call abort ()
+ if (inverse(1.0_4) /= 1.0_4) STOP 1
+ if (inverse(1_4) /= 3_4) STOP 2
contains
subroutine sub ()
use module2, only : inverse
- if (inverse(1.0_4) /= 2.0_4) call abort ()
- if (inverse(1_4) /= 3_4) call abort ()
+ if (inverse(1.0_4) /= 2.0_4) STOP 3
+ if (inverse(1_4) /= 3_4) STOP 4
end subroutine sub
end program gfcbug48
diff --git a/gcc/testsuite/gfortran.dg/interface_assignment_1.f90 b/gcc/testsuite/gfortran.dg/interface_assignment_1.f90
index f76b9da496d..8bbe6932e91 100644
--- a/gcc/testsuite/gfortran.dg/interface_assignment_1.f90
+++ b/gcc/testsuite/gfortran.dg/interface_assignment_1.f90
@@ -33,6 +33,6 @@ D=D
E%I=4
CALL set(E,(E))
-IF (D%I.NE.4) call abort ()
-IF (4.NE.E%I) call abort ()
+IF (D%I.NE.4) STOP 1
+IF (4.NE.E%I) STOP 2
END
diff --git a/gcc/testsuite/gfortran.dg/interface_assignment_2.f90 b/gcc/testsuite/gfortran.dg/interface_assignment_2.f90
index e17d78e5a7d..2e3f1652384 100644
--- a/gcc/testsuite/gfortran.dg/interface_assignment_2.f90
+++ b/gcc/testsuite/gfortran.dg/interface_assignment_2.f90
@@ -43,6 +43,6 @@ PROGRAM VST_2
char_arb(1)= "Hello"
char_arb(2)= "World"
str_ara = char_arb
- if (any (str_ara(1)%chars(1:5) .ne. char_elm(1:5))) call abort
- if (any (str_ara(2)%chars(1:5) .ne. char_elm(6:10))) call abort
+ if (any (str_ara(1)%chars(1:5) .ne. char_elm(1:5))) STOP 1
+ if (any (str_ara(2)%chars(1:5) .ne. char_elm(6:10))) STOP 2
END PROGRAM VST_2
diff --git a/gcc/testsuite/gfortran.dg/internal_dummy_2.f08 b/gcc/testsuite/gfortran.dg/internal_dummy_2.f08
index 2d2ec6837b7..5137b6cd9a4 100644
--- a/gcc/testsuite/gfortran.dg/internal_dummy_2.f08
+++ b/gcc/testsuite/gfortran.dg/internal_dummy_2.f08
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2008 -fall-intrinsics" }
+! { dg-options "-std=f2008 " }
! PR fortran/34162
! Internal procedures as actual arguments (like restricted closures).
@@ -43,10 +43,10 @@ PROGRAM main
INTEGER :: a
a = 42
- IF (callIt (myA) /= 42) CALL abort ()
+ IF (callIt (myA) /= 42) STOP 1
CALL callSub (incA)
- IF (a /= 43) CALL abort ()
+ IF (a /= 43) STOP 2
CONTAINS
diff --git a/gcc/testsuite/gfortran.dg/internal_dummy_3.f08 b/gcc/testsuite/gfortran.dg/internal_dummy_3.f08
index ff8dd822ec3..48302cf3024 100644
--- a/gcc/testsuite/gfortran.dg/internal_dummy_3.f08
+++ b/gcc/testsuite/gfortran.dg/internal_dummy_3.f08
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2008 -fall-intrinsics" }
+! { dg-options "-std=f2008 " }
! PR fortran/34162
! Internal procedures as actual arguments (like restricted closures).
@@ -25,17 +25,17 @@ CONTAINS
PROCEDURE(returnValue), OPTIONAL :: previous, current
IF (PRESENT (current)) THEN
- IF (current () /= level - 1) CALL abort ()
+ IF (current () /= level - 1) STOP 1
END IF
IF (PRESENT (previous)) THEN
- IF (previous () /= level - 2) CALL abort ()
+ IF (previous () /= level - 2) STOP 2
END IF
IF (level == 1) THEN
first => myLevel
END IF
- IF (first () /= 1) CALL abort ()
+ IF (first () /= 1) STOP 3
IF (level == 10) RETURN
diff --git a/gcc/testsuite/gfortran.dg/internal_dummy_4.f08 b/gcc/testsuite/gfortran.dg/internal_dummy_4.f08
index 8ade99efb88..c88925a597e 100644
--- a/gcc/testsuite/gfortran.dg/internal_dummy_4.f08
+++ b/gcc/testsuite/gfortran.dg/internal_dummy_4.f08
@@ -21,7 +21,7 @@ contains
integer(c_int), intent(inout) :: arg
integer(c_int), intent(in) :: res
call a(arg)
- if(arg /= res) call abort()
+ if(arg /= res) STOP 1
end subroutine test_sub
subroutine test_func(a, arg, res)
interface
@@ -32,7 +32,7 @@ contains
end interface
integer(c_int), intent(in) :: arg
integer(c_int), intent(in) :: res
- if(a(arg) /= res) call abort()
+ if(a(arg) /= res) STOP 2
end subroutine test_func
end module test_mod
diff --git a/gcc/testsuite/gfortran.dg/internal_pack_1.f90 b/gcc/testsuite/gfortran.dg/internal_pack_1.f90
index aded78dc26a..8aed136a4d2 100644
--- a/gcc/testsuite/gfortran.dg/internal_pack_1.f90
+++ b/gcc/testsuite/gfortran.dg/internal_pack_1.f90
@@ -19,88 +19,88 @@ program main
i1 = (/ -1, 1, -3 /)
call sub_i1(i1(1:3:2))
- if (any(i1 /= (/ 3, 1, 2 /))) call abort
+ if (any(i1 /= (/ 3, 1, 2 /))) STOP 1
i2 = (/ -1, 1, -3 /)
call sub_i2(i2(1:3:2))
- if (any(i2 /= (/ 3, 1, 2 /))) call abort
+ if (any(i2 /= (/ 3, 1, 2 /))) STOP 2
i4 = (/ -1, 1, -3 /)
call sub_i4(i4(1:3:2))
- if (any(i4 /= (/ 3, 1, 2 /))) call abort
+ if (any(i4 /= (/ 3, 1, 2 /))) STOP 3
i8 = (/ -1, 1, -3 /)
call sub_i8(i8(1:3:2))
- if (any(i8 /= (/ 3, 1, 2 /))) call abort
+ if (any(i8 /= (/ 3, 1, 2 /))) STOP 4
r4 = (/ -1.0, 1.0, -3.0 /)
call sub_r4(r4(1:3:2))
- if (any(r4 /= (/ 3.0, 1.0, 2.0/))) call abort
+ if (any(r4 /= (/ 3.0, 1.0, 2.0/))) STOP 5
r8 = (/ -1.0_8, 1.0_8, -3.0_8 /)
call sub_r8(r8(1:3:2))
- if (any(r8 /= (/ 3.0_8, 1.0_8, 2.0_8/))) call abort
+ if (any(r8 /= (/ 3.0_8, 1.0_8, 2.0_8/))) STOP 6
c4 = (/ (-1.0_4, 0._4), (1.0_4, 0._4), (-3.0_4, 0._4) /)
call sub_c4(c4(1:3:2))
- if (any(real(c4) /= (/ 3.0_4, 1.0_4, 2.0_4/))) call abort
- if (any(aimag(c4) /= 0._4)) call abort
+ if (any(real(c4) /= (/ 3.0_4, 1.0_4, 2.0_4/))) STOP 7
+ if (any(aimag(c4) /= 0._4)) STOP 8
c8 = (/ (-1.0_4, 0._4), (1.0_4, 0._4), (-3.0_4, 0._4) /)
call sub_c8(c8(1:3:2))
- if (any(real(c8) /= (/ 3.0_4, 1.0_4, 2.0_4/))) call abort
- if (any(aimag(c8) /= 0._4)) call abort
+ if (any(real(c8) /= (/ 3.0_4, 1.0_4, 2.0_4/))) STOP 9
+ if (any(aimag(c8) /= 0._4)) STOP 10
d_i8%v = (/ -1, 1, -3 /)
call sub_d_i8(d_i8(1:3:2))
- if (any(d_i8%v /= (/ 3, 1, 2 /))) call abort
+ if (any(d_i8%v /= (/ 3, 1, 2 /))) STOP 11
end program main
subroutine sub_i1(i)
integer(kind=1), dimension(2) :: i
- if (i(1) /= -1) call abort
- if (i(2) /= -3) call abort
+ if (i(1) /= -1) STOP 12
+ if (i(2) /= -3) STOP 13
i(1) = 3
i(2) = 2
end subroutine sub_i1
subroutine sub_i2(i)
integer(kind=2), dimension(2) :: i
- if (i(1) /= -1) call abort
- if (i(2) /= -3) call abort
+ if (i(1) /= -1) STOP 14
+ if (i(2) /= -3) STOP 15
i(1) = 3
i(2) = 2
end subroutine sub_i2
subroutine sub_i4(i)
integer(kind=4), dimension(2) :: i
- if (i(1) /= -1) call abort
- if (i(2) /= -3) call abort
+ if (i(1) /= -1) STOP 16
+ if (i(2) /= -3) STOP 17
i(1) = 3
i(2) = 2
end subroutine sub_i4
subroutine sub_i8(i)
integer(kind=8), dimension(2) :: i
- if (i(1) /= -1) call abort
- if (i(2) /= -3) call abort
+ if (i(1) /= -1) STOP 18
+ if (i(2) /= -3) STOP 19
i(1) = 3
i(2) = 2
end subroutine sub_i8
subroutine sub_r4(r)
real(kind=4), dimension(2) :: r
- if (r(1) /= -1.) call abort
- if (r(2) /= -3.) call abort
+ if (r(1) /= -1.) STOP 20
+ if (r(2) /= -3.) STOP 21
r(1) = 3.
r(2) = 2.
end subroutine sub_r4
subroutine sub_r8(r)
real(kind=8), dimension(2) :: r
- if (r(1) /= -1._8) call abort
- if (r(2) /= -3._8) call abort
+ if (r(1) /= -1._8) STOP 22
+ if (r(2) /= -3._8) STOP 23
r(1) = 3._8
r(2) = 2._8
end subroutine sub_r8
@@ -108,8 +108,8 @@ end subroutine sub_r8
subroutine sub_c8(r)
implicit none
complex(kind=8), dimension(2) :: r
- if (r(1) /= (-1._8,0._8)) call abort
- if (r(2) /= (-3._8,0._8)) call abort
+ if (r(1) /= (-1._8,0._8)) STOP 24
+ if (r(2) /= (-3._8,0._8)) STOP 25
r(1) = 3._8
r(2) = 2._8
end subroutine sub_c8
@@ -117,8 +117,8 @@ end subroutine sub_c8
subroutine sub_c4(r)
implicit none
complex(kind=4), dimension(2) :: r
- if (r(1) /= (-1._4,0._4)) call abort
- if (r(2) /= (-3._4,0._4)) call abort
+ if (r(1) /= (-1._4,0._4)) STOP 26
+ if (r(2) /= (-3._4,0._4)) STOP 27
r(1) = 3._4
r(2) = 2._4
end subroutine sub_c4
@@ -129,8 +129,8 @@ subroutine sub_d_i8(i)
integer(kind=8) :: v
end type i8_t
type(i8_t), dimension(2) :: i
- if (i(1)%v /= -1) call abort
- if (i(2)%v /= -3) call abort
+ if (i(1)%v /= -1) STOP 28
+ if (i(2)%v /= -3) STOP 29
i(1)%v = 3
i(2)%v = 2
end subroutine sub_d_i8
diff --git a/gcc/testsuite/gfortran.dg/internal_pack_10.f90 b/gcc/testsuite/gfortran.dg/internal_pack_10.f90
index fd1574dbfa9..49168515aaf 100644
--- a/gcc/testsuite/gfortran.dg/internal_pack_10.f90
+++ b/gcc/testsuite/gfortran.dg/internal_pack_10.f90
@@ -19,15 +19,15 @@ contains
subroutine get_rule (c)
type(t_set) :: c (:)
ru(1)%c(:)%use = 99
- if (any (c(:)%use .ne. 42)) call abort
+ if (any (c(:)%use .ne. 42)) STOP 1
call set_set_v (ru(1)%c, c)
- if (any (c(:)%use .ne. 99)) call abort
+ if (any (c(:)%use .ne. 99)) STOP 2
contains
subroutine set_set_v (src, dst)
type(t_set), intent(in) :: src(1)
type(t_set), intent(inout) :: dst(1)
- if (any (src%use .ne. 99)) call abort
- if (any (dst%use .ne. 42)) call abort
+ if (any (src%use .ne. 99)) STOP 3
+ if (any (dst%use .ne. 42)) STOP 4
dst = src
end subroutine set_set_v
end subroutine get_rule
diff --git a/gcc/testsuite/gfortran.dg/internal_pack_12.f90 b/gcc/testsuite/gfortran.dg/internal_pack_12.f90
index 532cac112ed..55631c80e6e 100644
--- a/gcc/testsuite/gfortran.dg/internal_pack_12.f90
+++ b/gcc/testsuite/gfortran.dg/internal_pack_12.f90
@@ -53,6 +53,6 @@ end
subroutine bar(x)
integer :: x(1:*)
print *, x(1:3)
- if (any (x(1:3) /= [1,3,5])) call abort ()
+ if (any (x(1:3) /= [1,3,5])) STOP 1
end subroutine bar
! { dg-final { scan-tree-dump-times "unpack" 4 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/internal_pack_13.f90 b/gcc/testsuite/gfortran.dg/internal_pack_13.f90
index 21fdc541878..5b801c33ee2 100644
--- a/gcc/testsuite/gfortran.dg/internal_pack_13.f90
+++ b/gcc/testsuite/gfortran.dg/internal_pack_13.f90
@@ -29,6 +29,6 @@ contains
subroutine bar(x)
type(t) :: x(*)
print *,x(1:4)%i
- if (any (x(1:4)%i /= [1, 9, 3, 11])) call abort()
+ if (any (x(1:4)%i /= [1, 9, 3, 11])) STOP 1
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/internal_pack_14.f90 b/gcc/testsuite/gfortran.dg/internal_pack_14.f90
index 1a4b3725fbb..bb826d278e8 100644
--- a/gcc/testsuite/gfortran.dg/internal_pack_14.f90
+++ b/gcc/testsuite/gfortran.dg/internal_pack_14.f90
@@ -28,7 +28,7 @@ contains
subroutine s2(k)
type(particle) :: k(1:2)
print *,k(:)%ID
- if (any (k(1:2)%ID /= [1, 1])) call abort()
+ if (any (k(1:2)%ID /= [1, 1])) STOP 1
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/internal_pack_15.f90 b/gcc/testsuite/gfortran.dg/internal_pack_15.f90
index 13e33047e48..0d0a4d96f07 100644
--- a/gcc/testsuite/gfortran.dg/internal_pack_15.f90
+++ b/gcc/testsuite/gfortran.dg/internal_pack_15.f90
@@ -58,20 +58,20 @@ program main
n = 5
a = 0
call foo1(a,n)
- if (any(a /= b)) call abort
+ if (any(a /= b)) STOP 1
n = 5
a = 0
call foo2(a,n)
- if (any(a /= b)) call abort
+ if (any(a /= b)) STOP 2
n = 5
a = 0
call foo3(a,n)
- if (any(a /= b)) call abort
+ if (any(a /= b)) STOP 3
n = 5
a = 0
call foo4(a,n)
- if (any(a /= 1)) call abort
+ if (any(a /= 1)) STOP 4
end program main
diff --git a/gcc/testsuite/gfortran.dg/internal_pack_2.f90 b/gcc/testsuite/gfortran.dg/internal_pack_2.f90
index 1f0473e2455..5f0118b3d5c 100644
--- a/gcc/testsuite/gfortran.dg/internal_pack_2.f90
+++ b/gcc/testsuite/gfortran.dg/internal_pack_2.f90
@@ -11,12 +11,12 @@ program main
rk = (/ -1.0_k, 1.0_k, -3.0_k /)
call sub_rk(rk(1:3:2))
- if (any(rk /= (/ 3.0_k, 1.0_k, 2.0_k/))) call abort
+ if (any(rk /= (/ 3.0_k, 1.0_k, 2.0_k/))) STOP 1
ck = (/ (-1.0_k, 0._k), (1.0_k, 0._k), (-3.0_k, 0._k) /)
call sub_ck(ck(1:3:2))
- if (any(real(ck) /= (/ 3.0_k, 1.0_k, 2.0_k/))) call abort
- if (any(aimag(ck) /= 0._k)) call abort
+ if (any(real(ck) /= (/ 3.0_k, 1.0_k, 2.0_k/))) STOP 2
+ if (any(aimag(ck) /= 0._k)) STOP 3
end program main
@@ -24,8 +24,8 @@ subroutine sub_rk(r)
implicit none
integer,parameter :: k = selected_real_kind (precision (0.0_8) + 1)
real(kind=k), dimension(2) :: r
- if (r(1) /= -1._k) call abort
- if (r(2) /= -3._k) call abort
+ if (r(1) /= -1._k) STOP 4
+ if (r(2) /= -3._k) STOP 5
r(1) = 3._k
r(2) = 2._k
end subroutine sub_rk
@@ -34,8 +34,8 @@ subroutine sub_ck(r)
implicit none
integer,parameter :: k = selected_real_kind (precision (0.0_8) + 1)
complex(kind=k), dimension(2) :: r
- if (r(1) /= (-1._k,0._k)) call abort
- if (r(2) /= (-3._k,0._k)) call abort
+ if (r(1) /= (-1._k,0._k)) STOP 6
+ if (r(2) /= (-3._k,0._k)) STOP 7
r(1) = 3._k
r(2) = 2._k
end subroutine sub_ck
diff --git a/gcc/testsuite/gfortran.dg/internal_pack_3.f90 b/gcc/testsuite/gfortran.dg/internal_pack_3.f90
index 08f3c7d15ed..1d5a0acab07 100644
--- a/gcc/testsuite/gfortran.dg/internal_pack_3.f90
+++ b/gcc/testsuite/gfortran.dg/internal_pack_3.f90
@@ -9,14 +9,14 @@ program main
ik = (/ -1, 1, -3 /)
call sub_ik(ik(1:3:2))
- if (any(ik /= (/ 3, 1, 2 /))) call abort
+ if (any(ik /= (/ 3, 1, 2 /))) STOP 1
end program main
subroutine sub_ik(i)
integer,parameter :: k = selected_int_kind (range (0_8) + 1)
integer(kind=k), dimension(2) :: i
- if (i(1) /= -1) call abort
- if (i(2) /= -3) call abort
+ if (i(1) /= -1) STOP 2
+ if (i(2) /= -3) STOP 3
i(1) = 3
i(2) = 2
end subroutine sub_ik
diff --git a/gcc/testsuite/gfortran.dg/internal_pack_4.f90 b/gcc/testsuite/gfortran.dg/internal_pack_4.f90
index 368e9804bc4..00f316414bc 100644
--- a/gcc/testsuite/gfortran.dg/internal_pack_4.f90
+++ b/gcc/testsuite/gfortran.dg/internal_pack_4.f90
@@ -13,7 +13,7 @@ CONTAINS
SUBROUTINE S1(a)
REAL(dp), DIMENSION(45), INTENT(OUT), &
OPTIONAL :: a
- if (present(a)) call abort()
+ if (present(a)) STOP 1
END SUBROUTINE S1
SUBROUTINE S2(a)
REAL(dp), DIMENSION(:, :), INTENT(OUT), &
diff --git a/gcc/testsuite/gfortran.dg/internal_pack_6.f90 b/gcc/testsuite/gfortran.dg/internal_pack_6.f90
index 7928fecd442..d6102761904 100644
--- a/gcc/testsuite/gfortran.dg/internal_pack_6.f90
+++ b/gcc/testsuite/gfortran.dg/internal_pack_6.f90
@@ -19,7 +19,7 @@ CONTAINS
do j = 1, i
subsum = subsum + data(j)
end do
- if (abs(subsum - chksum) > 1e-6) call abort
+ if (abs(subsum - chksum) > 1e-6) STOP 1
END SUBROUTINE S1
END MODULE
diff --git a/gcc/testsuite/gfortran.dg/internal_pack_8.f90 b/gcc/testsuite/gfortran.dg/internal_pack_8.f90
index 0e27aab7652..d65604c9a24 100644
--- a/gcc/testsuite/gfortran.dg/internal_pack_8.f90
+++ b/gcc/testsuite/gfortran.dg/internal_pack_8.f90
@@ -9,7 +9,7 @@
SUBROUTINE S2(I)
INTEGER :: I(4)
!write(6,*) I
- IF (ANY(I.NE.(/3,5,7,9/))) CALL ABORT()
+ IF (ANY(I.NE.(/3,5,7,9/))) STOP 1
END SUBROUTINE S2
MODULE M1
diff --git a/gcc/testsuite/gfortran.dg/internal_readwrite_1.f90 b/gcc/testsuite/gfortran.dg/internal_readwrite_1.f90
index 405f5815460..eb05628a879 100644
--- a/gcc/testsuite/gfortran.dg/internal_readwrite_1.f90
+++ b/gcc/testsuite/gfortran.dg/internal_readwrite_1.f90
@@ -11,5 +11,5 @@ program main
write (unit=c(5:1:-2),fmt="(A)") '5','3', '1'
write (unit=c(2:4:2),fmt="(A)") '2', '4'
read (c(5:1:-1),fmt="(I2)") (n(i), i=5,1,-1)
- if (any(n /= (/ (i,i=1,5) /))) call abort
+ if (any(n /= (/ (i,i=1,5) /))) STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/internal_readwrite_2.f90 b/gcc/testsuite/gfortran.dg/internal_readwrite_2.f90
index 48b65865200..93e71df23d3 100644
--- a/gcc/testsuite/gfortran.dg/internal_readwrite_2.f90
+++ b/gcc/testsuite/gfortran.dg/internal_readwrite_2.f90
@@ -10,5 +10,5 @@ program main
character(len=2), dimension(n1,n2,n3):: c
write (unit=c(:,n2:1:-1,:),fmt="(I2)") (i,i=1,n1*n2*n3)
line = transfer(c,mold=line)
- if (line /=" 5 6 3 4 1 21112 910 7 8171815161314232421221920293027282526") call abort
+ if (line /=" 5 6 3 4 1 21112 910 7 8171815161314232421221920293027282526") STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/internal_readwrite_3.f90 b/gcc/testsuite/gfortran.dg/internal_readwrite_3.f90
index 279fac5a6d8..245a778ddeb 100644
--- a/gcc/testsuite/gfortran.dg/internal_readwrite_3.f90
+++ b/gcc/testsuite/gfortran.dg/internal_readwrite_3.f90
@@ -7,5 +7,5 @@ program main
buffer = 4_"123"
read(buffer,*) i
write (a,'(I3)') i
- if (a /= 4_"123") call abort
+ if (a /= 4_"123") STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_actual_1.f b/gcc/testsuite/gfortran.dg/intrinsic_actual_1.f
index 7596e322305..460366026d4 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_actual_1.f
+++ b/gcc/testsuite/gfortran.dg/intrinsic_actual_1.f
@@ -9,7 +9,7 @@
external proc
real proc, z
if ((proc(z) .ne. abs (z)) .and.
- & (proc(z) .ne. alog10 (abs(z)))) call abort ()
+ & (proc(z) .ne. alog10 (abs(z)))) STOP 1
return
end
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_actual_2.f90 b/gcc/testsuite/gfortran.dg/intrinsic_actual_2.f90
index d7a9c0d8733..82d4f552b19 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_actual_2.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_actual_2.f90
@@ -18,7 +18,7 @@
! print *, len(SUB(j + 2)//"a"), ans ! This still fails (no charlen).
print *, len(bar(2)), ans
- IF(.NOT.ASSOCIATED(F1(10))) CALL ABORT()
+ IF(.NOT.ASSOCIATED(F1(10))) STOP 1
deallocate (tar)
CONTAINS
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_actual_4.f90 b/gcc/testsuite/gfortran.dg/intrinsic_actual_4.f90
index d5cd99c57ac..4521c968af7 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_actual_4.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_actual_4.f90
@@ -8,7 +8,7 @@
external proc
integer proc
character*(*) chr
- if (proc (chr) .ne. 6) call abort ()
+ if (proc (chr) .ne. 6) STOP 1
end subroutine sub
implicit none
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_argument_conformance_2.f90 b/gcc/testsuite/gfortran.dg/intrinsic_argument_conformance_2.f90
index daff64f8065..423fb131516 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_argument_conformance_2.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_argument_conformance_2.f90
@@ -36,9 +36,9 @@ program main
b = eoshift (a,(/1/), boundary=c(1,:)) ! { dg-error "invalid shape in dimension" }
- if (any(eoshift(foo,dim=1,shift=1,boundary=(/42.0,-7.0/))/= 0)) call abort() ! { dg-error "must be a scalar" }
- if (any(eoshift(tempn(2:1),dim=1,shift=1,boundary=(/42.0,-7.0/))/= 0)) call abort() ! { dg-error "must be a scalar" }
+ if (any(eoshift(foo,dim=1,shift=1,boundary=(/42.0,-7.0/))/= 0)) STOP 1 ! { dg-error "must be a scalar" }
+ if (any(eoshift(tempn(2:1),dim=1,shift=1,boundary=(/42.0,-7.0/))/= 0)) STOP 2 ! { dg-error "must be a scalar" }
- if (any(unpack(tempv,tempv(1:0)/=0,tempv) /= -47)) call abort() ! { dg-error "must have identical shape" }
- if (any(unpack(tempv(5:4),tempv(1:0)/=0,tempv) /= -47)) call abort() ! { dg-error "must have identical shape" }
+ if (any(unpack(tempv,tempv(1:0)/=0,tempv) /= -47)) STOP 3 ! { dg-error "must have identical shape" }
+ if (any(unpack(tempv(5:4),tempv(1:0)/=0,tempv) /= -47)) STOP 4 ! { dg-error "must have identical shape" }
end program main
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_char_1.f90 b/gcc/testsuite/gfortran.dg/intrinsic_char_1.f90
index 845493cb649..57f689e4a26 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_char_1.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_char_1.f90
@@ -11,7 +11,7 @@ program FA0005
INTEGER :: IDA(10) = [(i, i = 97,106)]
CDA1 = CHAR ( IDA, KIND("A" )) !failed
- if (transfer (CDA1, CDA10) /= "abcdefghij") call abort ()
+ if (transfer (CDA1, CDA10) /= "abcdefghij") STOP 1
CDA1 = CHAR ( IDA ) !worked
- if (transfer (CDA1, CDA10) /= "abcdefghij") call abort ()
+ if (transfer (CDA1, CDA10) /= "abcdefghij") STOP 2
END
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_ifunction_1.f90 b/gcc/testsuite/gfortran.dg/intrinsic_ifunction_1.f90
index a27c220ee46..e1c2ca7ec1c 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_ifunction_1.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_ifunction_1.f90
@@ -17,20 +17,20 @@
lda = (/ (i/2*2 .eq. I, i=1,9) /)
LDA = ALL ( IDA .NE. -1000, 1)
- if (.not. all(lda)) call abort
- if (.not. all(ida .ne. -1000)) call abort
+ if (.not. all(lda)) STOP 1
+ if (.not. all(ida .ne. -1000)) STOP 2
lda = (/ (i/2*2 .eq. I, i=1,9) /)
LDA = any ( IDA .NE. -1000, 1)
print *, lda !expect FALSE
- if (any(lda)) call abort
+ if (any(lda)) STOP 3
print *, any(ida .ne. -1000) !expect FALSE
- if (any(ida .ne. -1000)) call abort
+ if (any(ida .ne. -1000)) STOP 4
iii = 137
iii = count ( IDA .NE. -1000, 1)
- if (any(iii /= 0)) call abort
- if (count(ida .ne. -1000) /= 0) call abort
+ if (any(iii /= 0)) STOP 5
+ if (count(ida .ne. -1000) /= 0) STOP 6
END SUBROUTINE
@@ -39,5 +39,5 @@
integer, dimension(nf0,9) :: ida
res = (/ (-i, i=1,9) /)
res = product (ida, 1)
- if (any(res /= 1)) call abort
+ if (any(res /= 1)) STOP 7
end subroutine foo
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_intkinds_1.f90 b/gcc/testsuite/gfortran.dg/intrinsic_intkinds_1.f90
index ea5057ac82e..cd35a80eaf0 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_intkinds_1.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_intkinds_1.f90
@@ -9,12 +9,12 @@ program main
ma = .false.
a = reshape((/ 1_1, 2_1, 3_1, 4_1/), shape(a))
b = reshape((/ 1_2, 2_2, 3_2, 4_2/), shape(b))
- if (any(sum(a,dim=2) /= (/ 4, 6 /))) call abort
- if (any(sum(b,dim=2) /= (/ 4, 6 /))) call abort
- if (any(product(a,dim=2) /= (/ 3, 8 /))) call abort
- if (any(product(b,dim=2) /= (/ 3, 8 /))) call abort
- if (any(matmul(a,a) /= reshape ( (/ 7, 10, 15, 22 /), shape(a)))) call abort
- if (any(matmul(b,b) /= reshape ( (/ 7, 10, 15, 22 /), shape(b)))) call abort
- if (any(maxval(a,dim=2,mask=ma) /= -128)) call abort
- if (any(maxval(b,dim=2,mask=ma) /= -32768)) call abort
+ if (any(sum(a,dim=2) /= (/ 4, 6 /))) STOP 1
+ if (any(sum(b,dim=2) /= (/ 4, 6 /))) STOP 2
+ if (any(product(a,dim=2) /= (/ 3, 8 /))) STOP 3
+ if (any(product(b,dim=2) /= (/ 3, 8 /))) STOP 4
+ if (any(matmul(a,a) /= reshape ( (/ 7, 10, 15, 22 /), shape(a)))) STOP 5
+ if (any(matmul(b,b) /= reshape ( (/ 7, 10, 15, 22 /), shape(b)))) STOP 6
+ if (any(maxval(a,dim=2,mask=ma) /= -128)) STOP 7
+ if (any(maxval(b,dim=2,mask=ma) /= -32768)) STOP 8
end program main
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_modulo_1.f90 b/gcc/testsuite/gfortran.dg/intrinsic_modulo_1.f90
index 6d44f451abe..bda51cd3e67 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_modulo_1.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_modulo_1.f90
@@ -26,12 +26,12 @@ program main
if (modulo_result(i) /= floor_result(i) ) then
! print "(A,4F5.0)" ,"real case failed: ", &
! ar(i),br(i), modulo_result(i), floor_result(i)
- call abort()
+ STOP 1
end if
if (imodulo_result(i) /= ifloor_result(i)) then
! print "(A,4I5)", "int case failed: ", &
! ai(i), bi(i), imodulo_result(i), ifloor_result(i)
- call abort ()
+ STOP 2
end if
end do
end program main
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_pack_1.f90 b/gcc/testsuite/gfortran.dg/intrinsic_pack_1.f90
index 22d110ba77c..554d82aa822 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_pack_1.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_pack_1.f90
@@ -48,68 +48,68 @@ program main
& -4_1, 5_1/), shape(i1))
d_ri1 = pack(d_i1,d_i1%v>0,d_vi1)
if (any(d_ri1%v /= (/1_1, 2_1, 3_1, 4_1, 5_1, 16_1, 17_1, 18_1, 19_1/))) &
- & call abort
+ & STOP 1
d_vi4%v = (/(i+10,i=1,9)/)
d_i4%v = reshape((/1_4, -1_4, 2_4, -2_4, 3_4, -3_4, 4_4, &
& -4_4, 5_4/), shape(d_i4))
d_ri4 = pack(d_i4,d_i4%v>0,d_vi4)
if (any(d_ri4%v /= (/1_4, 2_4, 3_4, 4_4, 5_4, 16_4, 17_4, 18_4, 19_4/))) &
- & call abort
+ & STOP 2
vr4 = (/(i+10,i=1,9)/)
r4 = reshape((/1.0_4, -3.0_4, 2.1_4, -4.21_4, 1.2_4, 0.98_4, -1.2_4, &
& -7.1_4, -9.9_4, 0.3_4 /), shape(r4))
rr4 = pack(r4,r4>0,vr4)
if (any(rr4 /= (/ 1.0_4, 2.1_4, 1.2_4, 0.98_4, 15._4, 16._4, 17._4, &
- & 18._4, 19._4 /))) call abort
+ & 18._4, 19._4 /))) STOP 3
vr8 = (/(i+10,i=1,9)/)
r8 = reshape((/1.0_8, -3.0_8, 2.1_8, -4.21_8, 1.2_8, 0.98_8, -1.2_8, &
& -7.1_8, -9.9_8, 0.3_8 /), shape(r8))
rr8 = pack(r8,r8>0,vr8)
if (any(rr8 /= (/ 1.0_8, 2.1_8, 1.2_8, 0.98_8, 15._8, 16._8, 17._8, &
- & 18._8, 19._8 /))) call abort
+ & 18._8, 19._8 /))) STOP 4
vc4 = (/(i+10,i=1,9)/)
c4 = reshape((/1.0_4, -3.0_4, 2.1_4, -4.21_4, 1.2_4, 0.98_4, -1.2_4, &
& -7.1_4, -9.9_4, 0.3_4 /), shape(c4))
rc4 = pack(c4,real(c4)>0,vc4)
if (any(real(rc4) /= (/ 1.0_4, 2.1_4, 1.2_4, 0.98_4, 15._4, 16._4, 17._4, &
- & 18._4, 19._4 /))) call abort
- if (any(aimag(rc4) /= 0)) call abort
+ & 18._4, 19._4 /))) STOP 5
+ if (any(aimag(rc4) /= 0)) STOP 6
vc8 = (/(i+10,i=1,9)/)
c8 = reshape((/1.0_4, -3.0_4, 2.1_4, -4.21_4, 1.2_4, 0.98_4, -1.2_4, &
& -7.1_4, -9.9_4, 0.3_4 /), shape(c8))
rc8 = pack(c8,real(c8)>0,vc8)
if (any(real(rc8) /= (/ 1.0_4, 2.1_4, 1.2_4, 0.98_4, 15._4, 16._4, 17._4, &
- & 18._4, 19._4 /))) call abort
- if (any(aimag(rc8) /= 0)) call abort
+ & 18._4, 19._4 /))) STOP 7
+ if (any(aimag(rc8) /= 0)) STOP 8
vi1 = (/(i+10,i=1,9)/)
i1 = reshape((/1_1, -1_1, 2_1, -2_1, 3_1, -3_1, 4_1, -4_1, 5_1/), shape(i1))
ri1 = pack(i1,i1>0,vi1)
if (any(ri1 /= (/1_1, 2_1, 3_1, 4_1, 5_1, 16_1, 17_1, 18_1, 19_1/))) &
- & call abort
+ & STOP 9
vi2 = (/(i+10,i=1,9)/)
i2 = reshape((/1_2, -1_2, 2_2, -2_2, 3_2, -3_2, 4_2, -4_2, 5_2/), shape(i2))
ri2 = pack(i2,i2>0,vi2)
if (any(ri2 /= (/1_2, 2_2, 3_2, 4_2, 5_2, 16_2, 17_2, 18_2, 19_2/))) &
- & call abort
+ & STOP 10
vi4 = (/(i+10,i=1,9)/)
i4 = reshape((/1_4, -1_4, 2_4, -2_4, 3_4, -3_4, 4_4, -4_4, 5_4/), shape(i4))
ri4 = pack(i4,i4>0,vi4)
if (any(ri4 /= (/1_4, 2_4, 3_4, 4_4, 5_4, 16_4, 17_4, 18_4, 19_4/))) &
- & call abort
+ & STOP 11
vi8 = (/(i+10,i=1,9)/)
i8 = reshape((/1_8, -1_8, 2_8, -2_8, 3_8, -3_8, 4_8, -4_8, 5_8/), shape(i8))
ri8 = pack(i8,i8>0,vi8)
if (any(ri8 /= (/1_8, 2_8, 3_8, 4_8, 5_8, 16_8, 17_8, 18_8, 19_8/))) &
- & call abort
+ & STOP 12
end program main
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_pack_2.f90 b/gcc/testsuite/gfortran.dg/intrinsic_pack_2.f90
index 642cd5c1f82..e85b78a5ed4 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_pack_2.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_pack_2.f90
@@ -18,14 +18,14 @@ program main
& -7.1_k, -9.9_k, 0.3_k /), shape(rk))
rrk = pack(rk,rk>0,vrk)
if (any(rrk /= (/ 1.0_k, 2.1_k, 1.2_k, 0.98_k, 15._k, 16._k, 17._k, &
- & 18._k, 19._k /))) call abort
+ & 18._k, 19._k /))) STOP 1
vck = (/(i+10,i=1,9)/)
ck = reshape((/1.0_k, -3.0_k, 2.1_k, -4.21_k, 1.2_k, 0.98_k, -1.2_k, &
& -7.1_k, -9.9_k, 0.3_k /), shape(ck))
rck = pack(ck,real(ck)>0,vck)
if (any(real(rck) /= (/ 1.0_k, 2.1_k, 1.2_k, 0.98_k, 15._k, 16._k, 17._k, &
- & 18._k, 19._k /))) call abort
- if (any(aimag(rck) /= 0)) call abort
+ & 18._k, 19._k /))) STOP 2
+ if (any(aimag(rck) /= 0)) STOP 3
end program main
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_pack_3.f90 b/gcc/testsuite/gfortran.dg/intrinsic_pack_3.f90
index d559e911207..803e52e4a9d 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_pack_3.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_pack_3.f90
@@ -14,7 +14,7 @@ program main
ik = reshape((/1_k, -1_k, 2_k, -2_k, 3_k, -3_k, 4_k, -4_k, 5_k/), shape(ik))
rik = pack(ik,ik>0,vik)
if (any(rik /= (/1_k, 2_k, 3_k, 4_k, 5_k, 16_k, 17_k, 18_k, 19_k/))) &
- & call abort
+ & STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_pack_5.f90 b/gcc/testsuite/gfortran.dg/intrinsic_pack_5.f90
index c0540b63d3e..d0d2e2be19f 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_pack_5.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_pack_5.f90
@@ -12,5 +12,5 @@ end type container_t
type(container_t), dimension(1) :: a1, a2
a2(1)%entry = 1
a1 = pack (a2, mask = [.true.])
-if (a1(1)%entry/=1) call abort()
+if (a1(1)%entry/=1) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_product_1.f90 b/gcc/testsuite/gfortran.dg/intrinsic_product_1.f90
index 34d34fe8158..09890a006bf 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_product_1.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_product_1.f90
@@ -16,14 +16,14 @@
ida = -3
IDA(NF1:NF2,NF1:NF3) = PRODUCT(IDA1,NF2, NF1 .LT. 0) !fails
- if (any(ida /= 1)) call abort
+ if (any(ida /= 1)) STOP 1
ida = -3
IDA(NF1:NF2,NF1:NF3) = PRODUCT(IDA1,NF2, .false. ) !fails
- if (any(ida /= 1)) call abort
+ if (any(ida /= 1)) STOP 2
ida = -3
IDA(NF1:NF2,NF1:NF3) = PRODUCT(IDA1,NF2, ida1 .eq. 137 ) !works
- if (any(ida /= 1)) call abort
+ if (any(ida /= 1)) STOP 3
END SUBROUTINE
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_sign_1.f90 b/gcc/testsuite/gfortran.dg/intrinsic_sign_1.f90
index 03addde78c4..a5e5ff621c3 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_sign_1.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_sign_1.f90
@@ -4,9 +4,9 @@
program sign1
integer :: i
i = 1
- if (sign(foo(i), 1) /= 1) call abort
+ if (sign(foo(i), 1) /= 1) STOP 1
i = 1
- if (sign(foo(i), -1) /= -1) call abort
+ if (sign(foo(i), -1) /= -1) STOP 2
contains
integer function foo(i)
integer :: i
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_sign_2.f90 b/gcc/testsuite/gfortran.dg/intrinsic_sign_2.f90
index 0bc9b07b87c..d4c4df303eb 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_sign_2.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_sign_2.f90
@@ -18,40 +18,40 @@ program sign1
integer :: i = 1
i1 = huge(0_1) ; j1 = -huge(0_1)
- if (sign(i1, j1) /= j1) call abort()
- if (sign(j1, i1) /= i1) call abort()
- if (sign(i1,one1) /= i1 .or. sign(j1,one1) /= i1) call abort()
- if (sign(i1,mone1) /= j1 .or. sign(j1,mone1) /= j1) call abort()
+ if (sign(i1, j1) /= j1) STOP 1
+ if (sign(j1, i1) /= i1) STOP 2
+ if (sign(i1,one1) /= i1 .or. sign(j1,one1) /= i1) STOP 3
+ if (sign(i1,mone1) /= j1 .or. sign(j1,mone1) /= j1) STOP 4
i2 = huge(0_2) ; j2 = -huge(0_2)
- if (sign(i2, j2) /= j2) call abort()
- if (sign(j2, i2) /= i2) call abort()
- if (sign(i2,one2) /= i2 .or. sign(j2,one2) /= i2) call abort()
- if (sign(i2,mone2) /= j2 .or. sign(j2,mone2) /= j2) call abort()
+ if (sign(i2, j2) /= j2) STOP 5
+ if (sign(j2, i2) /= i2) STOP 6
+ if (sign(i2,one2) /= i2 .or. sign(j2,one2) /= i2) STOP 7
+ if (sign(i2,mone2) /= j2 .or. sign(j2,mone2) /= j2) STOP 8
i4 = huge(0_4) ; j4 = -huge(0_4)
- if (sign(i4, j4) /= j4) call abort()
- if (sign(j4, i4) /= i4) call abort()
- if (sign(i4,one4) /= i4 .or. sign(j4,one4) /= i4) call abort()
- if (sign(i4,mone4) /= j4 .or. sign(j4,mone4) /= j4) call abort()
+ if (sign(i4, j4) /= j4) STOP 9
+ if (sign(j4, i4) /= i4) STOP 10
+ if (sign(i4,one4) /= i4 .or. sign(j4,one4) /= i4) STOP 11
+ if (sign(i4,mone4) /= j4 .or. sign(j4,mone4) /= j4) STOP 12
i8 = huge(0_8) ; j8 = -huge(0_8)
- if (sign(i8, j8) /= j8) call abort()
- if (sign(j8, i8) /= i8) call abort()
- if (sign(i8,one8) /= i8 .or. sign(j8,one8) /= i8) call abort()
- if (sign(i8,mone8) /= j8 .or. sign(j8,mone8) /= j8) call abort()
+ if (sign(i8, j8) /= j8) STOP 13
+ if (sign(j8, i8) /= i8) STOP 14
+ if (sign(i8,one8) /= i8 .or. sign(j8,one8) /= i8) STOP 15
+ if (sign(i8,mone8) /= j8 .or. sign(j8,mone8) /= j8) STOP 16
- if (sign(foo(i), 1) /= 1) call abort
- if (sign(foo(i), -1) /= -2) call abort
- if (sign(42, foo(i)) /= 42) call abort
- if (sign(42, -foo(i)) /= -42) call abort
- if (i /= 5) call abort
+ if (sign(foo(i), 1) /= 1) STOP 1
+ if (sign(foo(i), -1) /= -2) STOP 2
+ if (sign(42, foo(i)) /= 42) STOP 3
+ if (sign(42, -foo(i)) /= -42) STOP 4
+ if (i /= 5) STOP 5
- if (sign(bar(), 1) /= 1) call abort
- if (sign(bar(), -1) /= -2) call abort
- if (sign(17, bar()) /= 17) call abort
- if (sign(17, -bar()) /= -17) call abort
- if (bar() /= 5) call abort
+ if (sign(bar(), 1) /= 1) STOP 6
+ if (sign(bar(), -1) /= -2) STOP 7
+ if (sign(17, bar()) /= 17) STOP 8
+ if (sign(17, -bar()) /= -17) STOP 9
+ if (bar() /= 5) STOP 10
contains
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_spread_1.f90 b/gcc/testsuite/gfortran.dg/intrinsic_spread_1.f90
index 04e4c577ac6..84137ef4694 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_spread_1.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_spread_1.f90
@@ -39,143 +39,143 @@ program foo
b_1 = spread (a_1, 1, 2)
if (any (b_1 .ne. reshape ((/1_1, 1_1, 2_1, 2_1, 3_1, 3_1, 4_1, 4_1, 5_1, 5_1, 6_1, 6_1/), &
(/2, 2, 3/)))) &
- call abort
+ STOP 1
line1 = ' '
write(line1, 9000) b_1
line2 = ' '
write(line2, 9000) spread (a_1, 1, 2)
- if (line1 /= line2) call abort
+ if (line1 /= line2) STOP 2
line3 = ' '
write(line3, 9000) spread (a_1, 1, 2) + 0_1
- if (line1 /= line3) call abort
+ if (line1 /= line3) STOP 3
i_1 = spread(1_1,1,10)
- if (any(i_1 /= 1_1)) call abort
+ if (any(i_1 /= 1_1)) STOP 4
a_2 = reshape ((/1_2, 2_2, 3_2, 4_2, 5_2, 6_2/), (/2, 3/))
b_2 = spread (a_2, 1, 2)
if (any (b_2 .ne. reshape ((/1_2, 1_2, 2_2, 2_2, 3_2, 3_2, 4_2, 4_2, 5_2, 5_2, 6_2, 6_2/), &
(/2, 2, 3/)))) &
- call abort
+ STOP 5
line1 = ' '
write(line1, 9000) b_2
line2 = ' '
write(line2, 9000) spread (a_2, 1, 2)
- if (line1 /= line2) call abort
+ if (line1 /= line2) STOP 6
line3 = ' '
write(line3, 9000) spread (a_2, 1, 2) + 0_2
- if (line1 /= line3) call abort
+ if (line1 /= line3) STOP 7
i_2 = spread(1_2,1,10)
- if (any(i_2 /= 1_2)) call abort
+ if (any(i_2 /= 1_2)) STOP 8
a_4 = reshape ((/1_4, 2_4, 3_4, 4_4, 5_4, 6_4/), (/2, 3/))
b_4 = spread (a_4, 1, 2)
if (any (b_4 .ne. reshape ((/1_4, 1_4, 2_4, 2_4, 3_4, 3_4, 4_4, 4_4, 5_4, 5_4, 6_4, 6_4/), &
(/2, 2, 3/)))) &
- call abort
+ STOP 9
line1 = ' '
write(line1, 9000) b_4
line2 = ' '
write(line2, 9000) spread (a_4, 1, 2)
- if (line1 /= line2) call abort
+ if (line1 /= line2) STOP 10
line3 = ' '
write(line3, 9000) spread (a_4, 1, 2) + 0_4
- if (line1 /= line3) call abort
+ if (line1 /= line3) STOP 11
i_4 = spread(1_4,1,10)
- if (any(i_4 /= 1_4)) call abort
+ if (any(i_4 /= 1_4)) STOP 12
a_8 = reshape ((/1_8, 2_8, 3_8, 4_8, 5_8, 6_8/), (/2, 3/))
b_8 = spread (a_8, 1, 2)
if (any (b_8 .ne. reshape ((/1_8, 1_8, 2_8, 2_8, 3_8, 3_8, 4_8, 4_8, 5_8, 5_8, 6_8, 6_8/), &
(/2, 2, 3/)))) &
- call abort
+ STOP 13
line1 = ' '
write(line1, 9000) b_8
line2 = ' '
write(line2, 9000) spread (a_8, 1, 2)
- if (line1 /= line2) call abort
+ if (line1 /= line2) STOP 14
line3 = ' '
write(line3, 9000) spread (a_8, 1, 2) + 0_8
- if (line1 /= line3) call abort
+ if (line1 /= line3) STOP 15
i_8 = spread(1_8,1,10)
- if (any(i_8 /= 1_8)) call abort
+ if (any(i_8 /= 1_8)) STOP 16
ar_4 = reshape ((/1._4, 2._4, 3._4, 4._4, 5._4, 6._4/), (/2, 3/))
br_4 = spread (ar_4, 1, 2)
if (any (br_4 .ne. reshape ((/1._4, 1._4, 2._4, 2._4, 3._4, 3._4, &
- & 4._4, 4._4, 5._4, 5._4, 6._4, 6._4/), (/2, 2, 3/)))) call abort
+ & 4._4, 4._4, 5._4, 5._4, 6._4, 6._4/), (/2, 2, 3/)))) STOP 17
line1 = ' '
write(line1, 9010) br_4
line2 = ' '
write(line2, 9010) spread (ar_4, 1, 2)
- if (line1 /= line2) call abort
+ if (line1 /= line2) STOP 18
line3 = ' '
write(line3, 9010) spread (ar_4, 1, 2) + 0._4
- if (line1 /= line3) call abort
+ if (line1 /= line3) STOP 19
r_4 = spread(1._4,1,10)
- if (any(r_4 /= 1._4)) call abort
+ if (any(r_4 /= 1._4)) STOP 20
ar_8 = reshape ((/1._8, 2._8, 3._8, 4._8, 5._8, 6._8/), (/2, 3/))
br_8 = spread (ar_8, 1, 2)
if (any (br_8 .ne. reshape ((/1._8, 1._8, 2._8, 2._8, 3._8, 3._8, &
- & 4._8, 4._8, 5._8, 5._8, 6._8, 6._8/), (/2, 2, 3/)))) call abort
+ & 4._8, 4._8, 5._8, 5._8, 6._8, 6._8/), (/2, 2, 3/)))) STOP 21
line1 = ' '
write(line1, 9010) br_8
line2 = ' '
write(line2, 9010) spread (ar_8, 1, 2)
- if (line1 /= line2) call abort
+ if (line1 /= line2) STOP 22
line3 = ' '
write(line3, 9010) spread (ar_8, 1, 2) + 0._8
- if (line1 /= line3) call abort
+ if (line1 /= line3) STOP 23
r_8 = spread(1._8,1,10)
- if (any(r_8 /= 1._8)) call abort
+ if (any(r_8 /= 1._8)) STOP 24
ac_4 = reshape ((/(1._4,-1._4), (2._4,-2._4), (3._4, -3._4), (4._4, -4._4), &
& (5._4,-5._4), (6._4,-6._4)/), (/2, 3/))
bc_4 = spread (ac_4, 1, 2)
if (any (real(bc_4) .ne. reshape ((/1._4, 1._4, 2._4, 2._4, 3._4, 3._4, &
- & 4._4, 4._4, 5._4, 5._4, 6._4, 6._4/), (/2, 2, 3/)))) call abort
+ & 4._4, 4._4, 5._4, 5._4, 6._4, 6._4/), (/2, 2, 3/)))) STOP 25
if (any (-aimag(bc_4) .ne. reshape ((/1._4, 1._4, 2._4, 2._4, 3._4, 3._4, &
- & 4._4, 4._4, 5._4, 5._4, 6._4, 6._4/), (/2, 2, 3/)))) call abort
+ & 4._4, 4._4, 5._4, 5._4, 6._4, 6._4/), (/2, 2, 3/)))) STOP 26
line1 = ' '
write(line1, 9020) bc_4
line2 = ' '
write(line2, 9020) spread (ac_4, 1, 2)
- if (line1 /= line2) call abort
+ if (line1 /= line2) STOP 27
line3 = ' '
write(line3, 9020) spread (ac_4, 1, 2) + 0._4
- if (line1 /= line3) call abort
+ if (line1 /= line3) STOP 28
c_4 = spread((1._4,-1._4),1,10)
- if (any(c_4 /= (1._4,-1._4))) call abort
+ if (any(c_4 /= (1._4,-1._4))) STOP 29
ac_8 = reshape ((/(1._8,-1._8), (2._8,-2._8), (3._8, -3._8), (4._8, -4._8), &
& (5._8,-5._8), (6._8,-6._8)/), (/2, 3/))
bc_8 = spread (ac_8, 1, 2)
if (any (real(bc_8) .ne. reshape ((/1._8, 1._8, 2._8, 2._8, 3._8, 3._8, &
- & 4._8, 4._8, 5._8, 5._8, 6._8, 6._8/), (/2, 2, 3/)))) call abort
+ & 4._8, 4._8, 5._8, 5._8, 6._8, 6._8/), (/2, 2, 3/)))) STOP 30
if (any (-aimag(bc_8) .ne. reshape ((/1._8, 1._8, 2._8, 2._8, 3._8, 3._8, &
- & 4._8, 4._8, 5._8, 5._8, 6._8, 6._8/), (/2, 2, 3/)))) call abort
+ & 4._8, 4._8, 5._8, 5._8, 6._8, 6._8/), (/2, 2, 3/)))) STOP 31
line1 = ' '
write(line1, 9020) bc_8
line2 = ' '
write(line2, 9020) spread (ac_8, 1, 2)
- if (line1 /= line2) call abort
+ if (line1 /= line2) STOP 32
line3 = ' '
write(line3, 9020) spread (ac_8, 1, 2) + 0._8
- if (line1 /= line3) call abort
+ if (line1 /= line3) STOP 33
c_8 = spread((1._8,-1._8),1,10)
- if (any(c_8 /= (1._8,-1._8))) call abort
+ if (any(c_8 /= (1._8,-1._8))) STOP 34
at_4%v = reshape ((/1_4, 2_4, 3_4, 4_4, 5_4, 6_4/), (/2, 3/))
bt_4 = spread (at_4, 1, 2)
if (any (bt_4%v .ne. reshape ((/1_4, 1_4, 2_4, 2_4, 3_4, 3_4, 4_4, &
& 4_4, 5_4, 5_4, 6_4, 6_4/), (/2, 2, 3/)))) &
- call abort
+ STOP 35
iv_4%v = 123_4
it_4 = spread(iv_4,1,10)
- if (any(it_4%v /= 123_4)) call abort
+ if (any(it_4%v /= 123_4)) STOP 36
9000 format(12I3)
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_spread_2.f90 b/gcc/testsuite/gfortran.dg/intrinsic_spread_2.f90
index 0a91be7b599..5530b3f3660 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_spread_2.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_spread_2.f90
@@ -15,35 +15,35 @@ program foo
ar_k = reshape ((/1._k, 2._k, 3._k, 4._k, 5._k, 6._k/), (/2, 3/))
br_k = spread (ar_k, 1, 2)
if (any (br_k .ne. reshape ((/1._k, 1._k, 2._k, 2._k, 3._k, 3._k, &
- & 4._k, 4._k, 5._k, 5._k, 6._k, 6._k/), (/2, 2, 3/)))) call abort
+ & 4._k, 4._k, 5._k, 5._k, 6._k, 6._k/), (/2, 2, 3/)))) STOP 1
line1 = ' '
write(line1, 9010) br_k
line2 = ' '
write(line2, 9010) spread (ar_k, 1, 2)
- if (line1 /= line2) call abort
+ if (line1 /= line2) STOP 2
line3 = ' '
write(line3, 9010) spread (ar_k, 1, 2) + 0._k
- if (line1 /= line3) call abort
+ if (line1 /= line3) STOP 3
r_k = spread(1._k,1,10)
- if (any(r_k /= 1._k)) call abort
+ if (any(r_k /= 1._k)) STOP 4
ac_k = reshape ((/(1._k,-1._k), (2._k,-2._k), (3._k, -3._k), (4._k, -4._k), &
& (5._k,-5._k), (6._k,-6._k)/), (/2, 3/))
bc_k = spread (ac_k, 1, 2)
if (any (real(bc_k) .ne. reshape ((/1._k, 1._k, 2._k, 2._k, 3._k, 3._k, &
- & 4._k, 4._k, 5._k, 5._k, 6._k, 6._k/), (/2, 2, 3/)))) call abort
+ & 4._k, 4._k, 5._k, 5._k, 6._k, 6._k/), (/2, 2, 3/)))) STOP 5
if (any (-aimag(bc_k) .ne. reshape ((/1._k, 1._k, 2._k, 2._k, 3._k, 3._k, &
- & 4._k, 4._k, 5._k, 5._k, 6._k, 6._k/), (/2, 2, 3/)))) call abort
+ & 4._k, 4._k, 5._k, 5._k, 6._k, 6._k/), (/2, 2, 3/)))) STOP 6
line1 = ' '
write(line1, 9020) bc_k
line2 = ' '
write(line2, 9020) spread (ac_k, 1, 2)
- if (line1 /= line2) call abort
+ if (line1 /= line2) STOP 7
line3 = ' '
write(line3, 9020) spread (ac_k, 1, 2) + 0._k
- if (line1 /= line3) call abort
+ if (line1 /= line3) STOP 8
c_k = spread((1._k,-1._k),1,10)
- if (any(c_k /= (1._k,-1._k))) call abort
+ if (any(c_k /= (1._k,-1._k))) STOP 9
9010 format(12F7.3)
9020 format(25F7.3)
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_spread_3.f90 b/gcc/testsuite/gfortran.dg/intrinsic_spread_3.f90
index 1dd2feb1d21..76837809b12 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_spread_3.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_spread_3.f90
@@ -14,17 +14,17 @@ program foo
b_k = spread (a_k, 1, 2)
if (any (b_k .ne. reshape ((/1_k, 1_k, 2_k, 2_k, 3_k, 3_k, 4_k, 4_k, 5_k, 5_k, 6_k, 6_k/), &
(/2, 2, 3/)))) &
- call abort
+ STOP 1
line1 = ' '
write(line1, 9000) b_k
line2 = ' '
write(line2, 9000) spread (a_k, 1, 2)
- if (line1 /= line2) call abort
+ if (line1 /= line2) STOP 2
line3 = ' '
write(line3, 9000) spread (a_k, 1, 2) + 0_k
- if (line1 /= line3) call abort
+ if (line1 /= line3) STOP 3
i_k = spread(1_k,1,10)
- if (any(i_k /= 1_k)) call abort
+ if (any(i_k /= 1_k)) STOP 4
9000 format(12I3)
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_unpack_1.f90 b/gcc/testsuite/gfortran.dg/intrinsic_unpack_1.f90
index 47b9aef2e3f..709d957b81f 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_unpack_1.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_unpack_1.f90
@@ -25,111 +25,111 @@ program intrinsic_unpack
a1 = reshape ((/1, 0, 0, 0, 1, 0, 0, 0, 1/), (/3, 3/));
b1 = unpack ((/2_1, 3_1, 4_1/), mask, a1)
if (any (b1 .ne. reshape ((/1, 2, 0, 3, 1, 0, 0, 0, 4/), (/3, 3/)))) &
- call abort
+ STOP 1
write (line1,'(10I4)') b1
write (line2,'(10I4)') unpack((/2_1, 3_1, 4_1/), mask, a1)
- if (line1 .ne. line2) call abort
+ if (line1 .ne. line2) STOP 2
b1 = -1
b1 = unpack ((/2_1, 3_1, 4_1/), mask, 0_1)
if (any (b1 .ne. reshape ((/0, 2, 0, 3, 0, 0, 0, 0, 4/), (/3, 3/)))) &
- call abort
+ STOP 3
a2 = reshape ((/1, 0, 0, 0, 1, 0, 0, 0, 1/), (/3, 3/));
b2 = unpack ((/2_2, 3_2, 4_2/), mask, a2)
if (any (b2 .ne. reshape ((/1, 2, 0, 3, 1, 0, 0, 0, 4/), (/3, 3/)))) &
- call abort
+ STOP 4
write (line1,'(10I4)') b2
write (line2,'(10I4)') unpack((/2_2, 3_2, 4_2/), mask, a2)
- if (line1 .ne. line2) call abort
+ if (line1 .ne. line2) STOP 5
b2 = -1
b2 = unpack ((/2_2, 3_2, 4_2/), mask, 0_2)
if (any (b2 .ne. reshape ((/0, 2, 0, 3, 0, 0, 0, 0, 4/), (/3, 3/)))) &
- call abort
+ STOP 6
a4 = reshape ((/1, 0, 0, 0, 1, 0, 0, 0, 1/), (/3, 3/));
b4 = unpack ((/2_4, 3_4, 4_4/), mask, a4)
if (any (b4 .ne. reshape ((/1, 2, 0, 3, 1, 0, 0, 0, 4/), (/3, 3/)))) &
- call abort
+ STOP 7
write (line1,'(10I4)') b4
write (line2,'(10I4)') unpack((/2_4, 3_4, 4_4/), mask, a4)
- if (line1 .ne. line2) call abort
+ if (line1 .ne. line2) STOP 8
b4 = -1
b4 = unpack ((/2_4, 3_4, 4_4/), mask, 0_4)
if (any (b4 .ne. reshape ((/0, 2, 0, 3, 0, 0, 0, 0, 4/), (/3, 3/)))) &
- call abort
+ STOP 9
a8 = reshape ((/1, 0, 0, 0, 1, 0, 0, 0, 1/), (/3, 3/));
b8 = unpack ((/2_8, 3_8, 4_8/), mask, a8)
if (any (b8 .ne. reshape ((/1, 2, 0, 3, 1, 0, 0, 0, 4/), (/3, 3/)))) &
- call abort
+ STOP 10
write (line1,'(10I4)') b8
write (line2,'(10I4)') unpack((/2_8, 3_8, 4_8/), mask, a8)
- if (line1 .ne. line2) call abort
+ if (line1 .ne. line2) STOP 11
b8 = -1
b8 = unpack ((/2_8, 3_8, 4_8/), mask, 0_8)
if (any (b8 .ne. reshape ((/0, 2, 0, 3, 0, 0, 0, 0, 4/), (/3, 3/)))) &
- call abort
+ STOP 12
ar4 = reshape ((/1._4, 0._4, 0._4, 0._4, 1._4, 0._4, 0._4, 0._4, 1._4/), &
(/3, 3/));
br4 = unpack ((/2._4, 3._4, 4._4/), mask, ar4)
if (any (br4 .ne. reshape ((/1._4, 2._4, 0._4, 3._4, 1._4, 0._4, &
0._4, 0._4, 4._4/), (/3, 3/)))) &
- call abort
+ STOP 13
write (line1,'(9F9.5)') br4
write (line2,'(9F9.5)') unpack((/2._4, 3._4, 4._4/), mask, ar4)
- if (line1 .ne. line2) call abort
+ if (line1 .ne. line2) STOP 14
br4 = -1._4
br4 = unpack ((/2._4, 3._4, 4._4/), mask, 0._4)
if (any (br4 .ne. reshape ((/0._4, 2._4, 0._4, 3._4, 0._4, 0._4, &
0._4, 0._4, 4._4/), (/3, 3/)))) &
- call abort
+ STOP 15
ar8 = reshape ((/1._8, 0._8, 0._8, 0._8, 1._8, 0._8, 0._8, 0._8, 1._8/), &
(/3, 3/));
br8 = unpack ((/2._8, 3._8, 4._8/), mask, ar8)
if (any (br8 .ne. reshape ((/1._8, 2._8, 0._8, 3._8, 1._8, 0._8, &
0._8, 0._8, 4._8/), (/3, 3/)))) &
- call abort
+ STOP 16
write (line1,'(9F9.5)') br8
write (line2,'(9F9.5)') unpack((/2._8, 3._8, 4._8/), mask, ar8)
- if (line1 .ne. line2) call abort
+ if (line1 .ne. line2) STOP 17
br8 = -1._8
br8 = unpack ((/2._8, 3._8, 4._8/), mask, 0._8)
if (any (br8 .ne. reshape ((/0._8, 2._8, 0._8, 3._8, 0._8, 0._8, &
0._8, 0._8, 4._8/), (/3, 3/)))) &
- call abort
+ STOP 18
ac4 = reshape ((/1._4, 0._4, 0._4, 0._4, 1._4, 0._4, 0._4, 0._4, 1._4/), &
(/3, 3/));
bc4 = unpack ((/(2._4, 0._4), (3._4, 0._4), (4._4, 0._4)/), mask, ac4)
if (any (real(bc4) .ne. reshape ((/1._4, 2._4, 0._4, 3._4, 1._4, 0._4, &
0._4, 0._4, 4._4/), (/3, 3/)))) &
- call abort
+ STOP 19
write (line1,'(18F9.5)') bc4
write (line2,'(18F9.5)') unpack((/(2._4, 0._4), (3._4, 0._4), (4._4,0._4)/), &
mask, ac4)
- if (line1 .ne. line2) call abort
+ if (line1 .ne. line2) STOP 20
ac8 = reshape ((/1._8, 0._8, 0._8, 0._8, 1._8, 0._8, 0._8, 0._8, 1._8/), &
(/3, 3/));
bc8 = unpack ((/(2._8, 0._8), (3._8, 0._8), (4._8, 0._8)/), mask, ac8)
if (any (real(bc8) .ne. reshape ((/1._8, 2._8, 0._8, 3._8, 1._8, 0._8, &
0._8, 0._8, 4._8/), (/3, 3/)))) &
- call abort
+ STOP 21
write (line1,'(18F9.5)') bc8
write (line2,'(18F9.5)') unpack((/(2._8, 0._8), (3._8, 0._8), (4._8,0._8)/), &
mask, ac8)
- if (line1 .ne. line2) call abort
+ if (line1 .ne. line2) STOP 22
at4%v = reshape ((/1, 0, 0, 0, 1, 0, 0, 0, 1/), (/3, 3/));
vt4%v = (/2_4, 3_4, 4_4/)
bt4 = unpack (vt4, mask, at4)
if (any (bt4%v .ne. reshape ((/1, 2, 0, 3, 1, 0, 0, 0, 4/), (/3, 3/)))) &
- call abort
+ STOP 23
bt4%v = -1
bt4 = unpack (vt4, mask, i4_t(0_4))
if (any (bt4%v .ne. reshape ((/0, 2, 0, 3, 0, 0, 0, 0, 4/), (/3, 3/)))) &
- call abort
+ STOP 24
end program
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_unpack_2.f90 b/gcc/testsuite/gfortran.dg/intrinsic_unpack_2.f90
index d993f234065..6b0187085db 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_unpack_2.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_unpack_2.f90
@@ -20,25 +20,25 @@ program intrinsic_unpack
brk = unpack ((/2._k, 3._k, 4._k/), mask, ark)
if (any (brk .ne. reshape ((/1._k, 2._k, 0._k, 3._k, 1._k, 0._k, &
0._k, 0._k, 4._k/), (/3, 3/)))) &
- call abort
+ STOP 1
write (line1,'(9F9.5)') brk
write (line2,'(9F9.5)') unpack((/2._k, 3._k, 4._k/), mask, ark)
- if (line1 .ne. line2) call abort
+ if (line1 .ne. line2) STOP 2
brk = -1._k
brk = unpack ((/2._k, 3._k, 4._k/), mask, 0._k)
if (any (brk .ne. reshape ((/0._k, 2._k, 0._k, 3._k, 0._k, 0._k, &
0._k, 0._k, 4._k/), (/3, 3/)))) &
- call abort
+ STOP 3
ack = reshape ((/1._k, 0._k, 0._k, 0._k, 1._k, 0._k, 0._k, 0._k, 1._k/), &
(/3, 3/));
bck = unpack ((/(2._k, 0._k), (3._k, 0._k), (4._k, 0._k)/), mask, ack)
if (any (real(bck) .ne. reshape ((/1._k, 2._k, 0._k, 3._k, 1._k, 0._k, &
0._k, 0._k, 4._k/), (/3, 3/)))) &
- call abort
+ STOP 4
write (line1,'(18F9.5)') bck
write (line2,'(18F9.5)') unpack((/(2._k, 0._k), (3._k, 0._k), (4._k,0._k)/), &
mask, ack)
- if (line1 .ne. line2) call abort
+ if (line1 .ne. line2) STOP 5
end program
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_unpack_3.f90 b/gcc/testsuite/gfortran.dg/intrinsic_unpack_3.f90
index 4a4443facf5..573e28a942b 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_unpack_3.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_unpack_3.f90
@@ -15,13 +15,13 @@ program intrinsic_unpack
ak = reshape ((/1, 0, 0, 0, 1, 0, 0, 0, 1/), (/3, 3/));
bk = unpack ((/2_k, 3_k, 4_k/), mask, ak)
if (any (bk .ne. reshape ((/1, 2, 0, 3, 1, 0, 0, 0, 4/), (/3, 3/)))) &
- call abort
+ STOP 1
write (line1,'(10I4)') bk
write (line2,'(10I4)') unpack((/2_k, 3_k, 4_k/), mask, ak)
- if (line1 .ne. line2) call abort
+ if (line1 .ne. line2) STOP 2
bk = -1
bk = unpack ((/2_k, 3_k, 4_k/), mask, 0_k)
if (any (bk .ne. reshape ((/0, 2, 0, 3, 0, 0, 0, 0, 4/), (/3, 3/)))) &
- call abort
+ STOP 3
end program
diff --git a/gcc/testsuite/gfortran.dg/intrinsic_verify_1.f90 b/gcc/testsuite/gfortran.dg/intrinsic_verify_1.f90
index c894043de08..69ead3168b9 100644
--- a/gcc/testsuite/gfortran.dg/intrinsic_verify_1.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsic_verify_1.f90
@@ -4,9 +4,9 @@ program prog
character(len=1) :: c1
character(len=4) :: c4
c1 = "E"
- if (verify(c1, "1") .ne. 1) call abort
+ if (verify(c1, "1") .ne. 1) STOP 1
c4 = "ABBA"
- if (verify(c4, "A") .ne. 2) call abort
- if (verify(c4, "A", back = .true.) .ne. 3) call abort
- if (verify(c4, "AB") .ne. 0) call abort
+ if (verify(c4, "A") .ne. 2) STOP 2
+ if (verify(c4, "A", back = .true.) .ne. 3) STOP 3
+ if (verify(c4, "AB") .ne. 0) STOP 4
end program
diff --git a/gcc/testsuite/gfortran.dg/intrinsics_kind_argument_1.f90 b/gcc/testsuite/gfortran.dg/intrinsics_kind_argument_1.f90
index 0a3ca079127..6c43ddfcf2d 100644
--- a/gcc/testsuite/gfortran.dg/intrinsics_kind_argument_1.f90
+++ b/gcc/testsuite/gfortran.dg/intrinsics_kind_argument_1.f90
@@ -13,24 +13,24 @@ program test
t = "bartutugee"
call check (count(l_array, kind=k), 20)
- if (any (count(l_array, 2, kind=k) /= 5)) call abort
- if (any (count(l_array, kind=k, dim=2) /= 5)) call abort
+ if (any (count(l_array, 2, kind=k) /= 5)) STOP 1
+ if (any (count(l_array, kind=k, dim=2) /= 5)) STOP 2
call check (iachar (s, k), 117)
call check (iachar (s, kind=k), 117)
call check (ichar (s, k), 117)
call check (ichar (s, kind=k), 117)
- if (achar(107) /= achar(107,1)) call abort
+ if (achar(107) /= achar(107,1)) STOP 3
call check (index (t, s, .true., k), 7)
call check (index (t, s, kind=k, back=.false.), 5)
- if (any (lbound (l_array, kind=k) /= 1)) call abort
+ if (any (lbound (l_array, kind=k) /= 1)) STOP 4
call check (lbound (l_array, 1), 1)
call check (lbound (l_array, 1, kind=k), 1)
- if (any (ubound (l_array, kind=k) /= (/4, 5/))) call abort
+ if (any (ubound (l_array, kind=k) /= (/4, 5/))) STOP 5
call check (ubound (l_array, 1), 4)
call check (ubound (l_array, 1, kind=k), 4)
@@ -50,7 +50,7 @@ contains
subroutine check(x,y)
integer, intent(in) :: x, y
- if (x /= y) call abort
+ if (x /= y) STOP 6
end subroutine check
end program test
diff --git a/gcc/testsuite/gfortran.dg/io_err_1.f90 b/gcc/testsuite/gfortran.dg/io_err_1.f90
index 4159a041a72..22c124c1678 100644
--- a/gcc/testsuite/gfortran.dg/io_err_1.f90
+++ b/gcc/testsuite/gfortran.dg/io_err_1.f90
@@ -6,7 +6,7 @@ program read
character(50) :: buf='0.D99999'
double precision val
read (UNIT=buf, FMT='(D60.0)', ERR=10) Val
- call abort
+ STOP 1
10 read (UNIT=buf, FMT='(D60.0)') Val
end program read
! { dg-output "At line 10 of file.*" }
diff --git a/gcc/testsuite/gfortran.dg/io_real_boz.f90 b/gcc/testsuite/gfortran.dg/io_real_boz.f90
index d5b0cb6b04a..2f51dc6a5c9 100644
--- a/gcc/testsuite/gfortran.dg/io_real_boz.f90
+++ b/gcc/testsuite/gfortran.dg/io_real_boz.f90
@@ -18,49 +18,49 @@ program real_boz
write(str,'(b0)') i
write(fmt,'(a,i0,a)') '(b',len_trim(str),')'
read(str,fmt) i2
- if(i /= i2) call abort()
+ if(i /= i2) STOP 1
write(str,'(o0)') i
write(fmt,'(a,i0,a)') '(o',len_trim(str),')'
read(str,fmt) i2
- if(i /= i2) call abort()
+ if(i /= i2) STOP 2
write(str,'(z0)') i
write(fmt,'(a,i0,a)') '(z',len_trim(str),')'
read(str,fmt) i2
- if(i /= i2) call abort()
+ if(i /= i2) STOP 3
write(str,'(b0)') r
write(fmt,'(a,i0,a)') '(b',len_trim(str),')'
read(str,fmt) r2
- if(r /= r2) call abort()
+ if(r /= r2) STOP 4
write(str,'(o0)') r
write(fmt,'(a,i0,a)') '(o',len_trim(str),')'
read(str,fmt) r2
- if(r /= r2) call abort()
+ if(r /= r2) STOP 5
write(str,'(z0)') r
write(fmt,'(a,i0,a)') '(z',len_trim(str),')'
read(str,fmt) r2
- if(r /= r2) call abort()
+ if(r /= r2) STOP 6
write(str,'(b0)') c
write(fmt,'(a,i0,a)') '(b',len_trim(str),')'
read(str,fmt) c2
- if(c /= c2) call abort()
+ if(c /= c2) STOP 7
write(str,'(o0)') c
write(fmt,'(a,i0,a)') '(o',len_trim(str),')'
read(str,fmt) c2
- if(c /= c2) call abort()
+ if(c /= c2) STOP 8
write(str,'(z0)') c
write(fmt,'(a,i0,a)') '(z',len_trim(str),')'
read(str,fmt) c2
- if(c /= c2) call abort()
+ if(c /= c2) STOP 9
end program real_boz
diff --git a/gcc/testsuite/gfortran.dg/io_real_boz2.f90 b/gcc/testsuite/gfortran.dg/io_real_boz2.f90
index b62385f02a6..9171e24966e 100644
--- a/gcc/testsuite/gfortran.dg/io_real_boz2.f90
+++ b/gcc/testsuite/gfortran.dg/io_real_boz2.f90
@@ -1,6 +1,6 @@
! { dg-do run }
! { dg-shouldfail "Real BOZ not allowed" }
-! { dg-options "-fall-intrinsics -std=f2003" }
+! { dg-options "-std=f2003" }
! Test for invalid (F95/F2003) writing of real with octal edit descriptor
! PR fortran/29625
program real_boz
diff --git a/gcc/testsuite/gfortran.dg/iomsg_1.f90 b/gcc/testsuite/gfortran.dg/iomsg_1.f90
index 0916fd861f1..026eec2a07c 100644
--- a/gcc/testsuite/gfortran.dg/iomsg_1.f90
+++ b/gcc/testsuite/gfortran.dg/iomsg_1.f90
@@ -6,23 +6,23 @@ program iomsg_test
! Test that iomsg is left unchanged with no error
ch = 'asdf'
open(10, status='scratch', iomsg=ch, iostat=i)
- if (ch .ne. 'asdf') call abort
+ if (ch .ne. 'asdf') STOP 1
! Test iomsg with data transfer statement
read(10,'(I2)', iomsg=ch, end=100) k
- call abort
+ STOP 2
100 continue
- if (ch .ne. 'End of file') call abort
+ if (ch .ne. 'End of file') STOP 3
! Test iomsg with open
open (-3, err=200, iomsg=ch)
- call abort
+ STOP 4
200 continue
- if (ch .ne. 'Bad unit number in OPEN statement') call abort
+ if (ch .ne. 'Bad unit number in OPEN statement') STOP 5
! Test iomsg with close
close(23,status="no_idea", err=500, iomsg=ch) ! { dg-warning "STATUS specifier in CLOSE statement.*has invalid value" }
500 continue
- if (ch .ne. "Bad STATUS parameter in CLOSE statement") call abort
+ if (ch .ne. "Bad STATUS parameter in CLOSE statement") STOP 6
end program iomsg_test
diff --git a/gcc/testsuite/gfortran.dg/iostat_1.f90 b/gcc/testsuite/gfortran.dg/iostat_1.f90
index 79bc0018fbd..e0f015647ae 100644
--- a/gcc/testsuite/gfortran.dg/iostat_1.f90
+++ b/gcc/testsuite/gfortran.dg/iostat_1.f90
@@ -10,5 +10,5 @@ program main
read (10,'(I2)',iostat=ios) i
ios = -4321
read (10, '(I1)', iostat=ios) i
- if (ios /= 0) call abort
+ if (ios /= 0) STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/iostat_2.f90 b/gcc/testsuite/gfortran.dg/iostat_2.f90
index afda93e8092..f4887bf815b 100644
--- a/gcc/testsuite/gfortran.dg/iostat_2.f90
+++ b/gcc/testsuite/gfortran.dg/iostat_2.f90
@@ -2,7 +2,7 @@
! { dg-do run }
integer i
close(10, status="whatever", iostat=i) ! { dg-warning "STATUS specifier in CLOSE statement.*has invalid value" }
- if (i == 0) call abort()
+ if (i == 0) STOP 1
write(17,*) 'foo'
close(17, status="delete")
end
diff --git a/gcc/testsuite/gfortran.dg/iostat_4.f90 b/gcc/testsuite/gfortran.dg/iostat_4.f90
index 34c25f962d4..8d902e7a0ab 100644
--- a/gcc/testsuite/gfortran.dg/iostat_4.f90
+++ b/gcc/testsuite/gfortran.dg/iostat_4.f90
@@ -4,6 +4,6 @@
integer :: i
character(len=50) :: str
write (2_8*int(huge(0_4),kind=8)+9_8, iostat=i, iomsg=str) 555
- if (i.ne.5005) call abort
- if (str.ne."Unit number in I/O statement too large") call abort
+ if (i.ne.5005) STOP 1
+ if (str.ne."Unit number in I/O statement too large") STOP 2
end \ No newline at end of file
diff --git a/gcc/testsuite/gfortran.dg/is_iostat_end_eor_1.f90 b/gcc/testsuite/gfortran.dg/is_iostat_end_eor_1.f90
index dfa3a5c03c9..24619c17739 100644
--- a/gcc/testsuite/gfortran.dg/is_iostat_end_eor_1.f90
+++ b/gcc/testsuite/gfortran.dg/is_iostat_end_eor_1.f90
@@ -4,6 +4,6 @@
program test
use iso_fortran_env
implicit none
- if ((.not. is_iostat_end(IOSTAT_END)) .or. is_iostat_end(0)) call abort()
- if ((.not. is_iostat_eor(IOSTAT_EOR)) .or. is_iostat_end(0)) call abort()
+ if ((.not. is_iostat_end(IOSTAT_END)) .or. is_iostat_end(0)) STOP 1
+ if ((.not. is_iostat_eor(IOSTAT_EOR)) .or. is_iostat_end(0)) STOP 2
end program test
diff --git a/gcc/testsuite/gfortran.dg/ishft_1.f90 b/gcc/testsuite/gfortran.dg/ishft_1.f90
index 88edd30efdd..82fdb02a4a9 100644
--- a/gcc/testsuite/gfortran.dg/ishft_1.f90
+++ b/gcc/testsuite/gfortran.dg/ishft_1.f90
@@ -1,59 +1,59 @@
! { dg-do run }
! verifies basic functioning of the ishft and ishftc intrinsics
-if (ishft (1_1, 0) /= 1) call abort
-if (ishft (1_1, 1) /= 2) call abort
-if (ishft (3_1, 1) /= 6) call abort
-if (ishft (-1_1, 1) /= -2) call abort
-if (ishft (-1_1, -1) /= 127) call abort
-if (ishft (96_1, 2) /= -128) call abort
-
-if (ishft (1_2, 0) /= 1) call abort
-if (ishft (1_2, 1) /= 2) call abort
-if (ishft (3_2, 1) /= 6) call abort
-if (ishft (-1_2, 1) /= -2) call abort
-if (ishft (-1_2, -1) /= 32767) call abort
-if (ishft (16384_2 + 8192_2, 2) /= -32768_4) call abort
-
-if (ishft (1_4, 0) /= 1) call abort
-if (ishft (1_4, 1) /= 2) call abort
-if (ishft (3_4, 1) /= 6) call abort
-if (ishft (-1_4, 1) /= -2) call abort
-if (ishft (-1_4, -1) /= 2147483647) call abort
-if (ishft (1073741824_4 + 536870912_4, 2) /= -2147483648_8) call abort
-
-if (ishft (1_8, 0) /= 1) call abort
-if (ishft (1_8, 1) /= 2) call abort
-if (ishft (3_8, 1) /= 6) call abort
-if (ishft (-1_8, 1) /= -2) call abort
-if (ishft (-1_8, -60) /= z'F') call abort
-
-if (ishftc (1_1, 0) /= 1) call abort
-if (ishftc (1_1, 1) /= 2) call abort
-if (ishftc (3_1, 1) /= 6) call abort
-if (ishftc (-1_1, 1) /= -1) call abort
-if (ishftc (-1_1, -1) /= -1) call abort
-if (ishftc (ishftc (96_1, 2), -2) /= 96) call abort
-
-if (ishftc (1_2, 0) /= 1) call abort
-if (ishftc (1_2, 1) /= 2) call abort
-if (ishftc (3_2, 1) /= 6) call abort
-if (ishftc (-1_2, 1) /= -1) call abort
-if (ishftc (-1_2, -1) /= -1) call abort
-if (ishftc (ishftc (25000_2, 2), -2) /= 25000) call abort
-
-if (ishftc (1_4, 0) /= 1) call abort
-if (ishftc (1_4, 1) /= 2) call abort
-if (ishftc (3_4, 1) /= 6) call abort
-if (ishftc (-1_4, 1) /= -1) call abort
-if (ishftc (-1_4, -1) /= -1) call abort
-if (ishftc (ishftc (1325876_4, 2), -2) /= 1325876) call abort
-
-if (ishftc (1_8, 0) /= 1) call abort
-if (ishftc (1_8, 1) /= 2) call abort
-if (ishftc (3_8, 1) /= 6) call abort
-if (ishftc (-1_8, 1) /= -1) call abort
-if (ishftc (-1_8, -1) /= -1) call abort
-if (ishftc (ishftc (1325876_8, 2), -2) /= 1325876) call abort
+if (ishft (1_1, 0) /= 1) STOP 1
+if (ishft (1_1, 1) /= 2) STOP 2
+if (ishft (3_1, 1) /= 6) STOP 3
+if (ishft (-1_1, 1) /= -2) STOP 4
+if (ishft (-1_1, -1) /= 127) STOP 5
+if (ishft (96_1, 2) /= -128) STOP 6
+
+if (ishft (1_2, 0) /= 1) STOP 7
+if (ishft (1_2, 1) /= 2) STOP 8
+if (ishft (3_2, 1) /= 6) STOP 9
+if (ishft (-1_2, 1) /= -2) STOP 10
+if (ishft (-1_2, -1) /= 32767) STOP 11
+if (ishft (16384_2 + 8192_2, 2) /= -32768_4) STOP 12
+
+if (ishft (1_4, 0) /= 1) STOP 13
+if (ishft (1_4, 1) /= 2) STOP 14
+if (ishft (3_4, 1) /= 6) STOP 15
+if (ishft (-1_4, 1) /= -2) STOP 16
+if (ishft (-1_4, -1) /= 2147483647) STOP 17
+if (ishft (1073741824_4 + 536870912_4, 2) /= -2147483648_8) STOP 18
+
+if (ishft (1_8, 0) /= 1) STOP 19
+if (ishft (1_8, 1) /= 2) STOP 20
+if (ishft (3_8, 1) /= 6) STOP 21
+if (ishft (-1_8, 1) /= -2) STOP 22
+if (ishft (-1_8, -60) /= z'F') STOP 23
+
+if (ishftc (1_1, 0) /= 1) STOP 24
+if (ishftc (1_1, 1) /= 2) STOP 25
+if (ishftc (3_1, 1) /= 6) STOP 26
+if (ishftc (-1_1, 1) /= -1) STOP 27
+if (ishftc (-1_1, -1) /= -1) STOP 28
+if (ishftc (ishftc (96_1, 2), -2) /= 96) STOP 29
+
+if (ishftc (1_2, 0) /= 1) STOP 30
+if (ishftc (1_2, 1) /= 2) STOP 31
+if (ishftc (3_2, 1) /= 6) STOP 32
+if (ishftc (-1_2, 1) /= -1) STOP 33
+if (ishftc (-1_2, -1) /= -1) STOP 34
+if (ishftc (ishftc (25000_2, 2), -2) /= 25000) STOP 35
+
+if (ishftc (1_4, 0) /= 1) STOP 36
+if (ishftc (1_4, 1) /= 2) STOP 37
+if (ishftc (3_4, 1) /= 6) STOP 38
+if (ishftc (-1_4, 1) /= -1) STOP 39
+if (ishftc (-1_4, -1) /= -1) STOP 40
+if (ishftc (ishftc (1325876_4, 2), -2) /= 1325876) STOP 41
+
+if (ishftc (1_8, 0) /= 1) STOP 42
+if (ishftc (1_8, 1) /= 2) STOP 43
+if (ishftc (3_8, 1) /= 6) STOP 44
+if (ishftc (-1_8, 1) /= -1) STOP 45
+if (ishftc (-1_8, -1) /= -1) STOP 46
+if (ishftc (ishftc (1325876_8, 2), -2) /= 1325876) STOP 47
end
diff --git a/gcc/testsuite/gfortran.dg/ishft_2.f90 b/gcc/testsuite/gfortran.dg/ishft_2.f90
index 96acf0e3b9b..6c5bd6f2b31 100644
--- a/gcc/testsuite/gfortran.dg/ishft_2.f90
+++ b/gcc/testsuite/gfortran.dg/ishft_2.f90
@@ -1,6 +1,6 @@
! { dg-do run }
program ishft_2
- if ( ishftc(3, 2, 3) /= 5 ) call abort()
- if ( ishftc(256+3, 2, 3) /= 256+5 ) call abort()
- if ( ishftc(1_4, 31)+1 /= -huge(1_4) ) call abort()
+ if ( ishftc(3, 2, 3) /= 5 ) STOP 1
+ if ( ishftc(256+3, 2, 3) /= 256+5 ) STOP 2
+ if ( ishftc(1_4, 31)+1 /= -huge(1_4) ) STOP 3
end program
diff --git a/gcc/testsuite/gfortran.dg/ishft_4.f90 b/gcc/testsuite/gfortran.dg/ishft_4.f90
index bb914651ba5..c79b4a6edc3 100644
--- a/gcc/testsuite/gfortran.dg/ishft_4.f90
+++ b/gcc/testsuite/gfortran.dg/ishft_4.f90
@@ -5,15 +5,15 @@
program test
- if (ishft (foo(), 2) /= 4) call abort
- if (ishft (foo(), -1) /= 1) call abort
- if (ishft (1, foo()) /= 8) call abort
- if (ishft (16, -foo()) /= 1) call abort
+ if (ishft (foo(), 2) /= 4) STOP 1
+ if (ishft (foo(), -1) /= 1) STOP 2
+ if (ishft (1, foo()) /= 8) STOP 3
+ if (ishft (16, -foo()) /= 1) STOP 4
- if (ishftc (bar(), 2) /= 4) call abort
- if (ishftc (bar(), -1) /= 1) call abort
- if (ishftc (1, bar()) /= 8) call abort
- if (ishftc (16, -bar()) /= 1) call abort
+ if (ishftc (bar(), 2) /= 4) STOP 5
+ if (ishftc (bar(), -1) /= 1) STOP 6
+ if (ishftc (1, bar()) /= 8) STOP 7
+ if (ishftc (16, -bar()) /= 1) STOP 8
contains
diff --git a/gcc/testsuite/gfortran.dg/isnan_1.f90 b/gcc/testsuite/gfortran.dg/isnan_1.f90
index 2a13d3a6f93..fe77bf4717a 100644
--- a/gcc/testsuite/gfortran.dg/isnan_1.f90
+++ b/gcc/testsuite/gfortran.dg/isnan_1.f90
@@ -8,14 +8,14 @@
real :: x
x = -1.0
x = sqrt(x)
- if (.not. isnan(x)) call abort
+ if (.not. isnan(x)) STOP 1
x = 0.0
x = x / x
- if (.not. isnan(x)) call abort
+ if (.not. isnan(x)) STOP 2
x = 5.0
- if (isnan(x)) call abort
+ if (isnan(x)) STOP 3
x = huge(x)
x = 2*x
- if (isnan(x)) call abort
+ if (isnan(x)) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/isnan_2.f90 b/gcc/testsuite/gfortran.dg/isnan_2.f90
index c5360cb0e9f..c52affbd46a 100644
--- a/gcc/testsuite/gfortran.dg/isnan_2.f90
+++ b/gcc/testsuite/gfortran.dg/isnan_2.f90
@@ -8,11 +8,11 @@
implicit none
character(len=1) :: s
write(s,'(L1)') isnan(0.)
- if (s /= 'F') call abort
+ if (s /= 'F') STOP 1
write(s,'(L1)') isnan(exp(huge(0.)))
- if (s /= 'F') call abort
+ if (s /= 'F') STOP 2
write(s,'(L1)') isnan(0./0.)
- if (s /= 'T') call abort
+ if (s /= 'T') STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/iso_c_binding_rename_1.f03 b/gcc/testsuite/gfortran.dg/iso_c_binding_rename_1.f03
index 12828a7f545..0ad888b444f 100644
--- a/gcc/testsuite/gfortran.dg/iso_c_binding_rename_1.f03
+++ b/gcc/testsuite/gfortran.dg/iso_c_binding_rename_1.f03
@@ -19,7 +19,7 @@ contains
subroutine sub0(my_int) bind(c)
integer(my_c_int), value :: my_int
if(my_int .ne. 1) then
- call abort()
+ STOP 1
end if
end subroutine sub0
@@ -27,7 +27,7 @@ contains
type(my_c_ptr), value :: my_ptr
if(.not. my_c_associated(my_ptr)) then
- call abort()
+ STOP 2
end if
end subroutine sub1
@@ -38,10 +38,10 @@ contains
integer(my_c_long_2), value :: my_long
if(my_int .ne. 1) then
- call abort()
+ STOP 3
end if
if(my_long .ne. 1) then
- call abort()
+ STOP 4
end if
end subroutine sub2
@@ -51,11 +51,11 @@ contains
integer(my_c_int), pointer :: my_f90_c_ptr
if(.not. my_c_associated(cptr1)) then
- call abort()
+ STOP 5
end if
if(.not. my_c_associated(cptr1, cptr2)) then
- call abort()
+ STOP 6
end if
call my_c_f_pointer(cptr1, my_f90_c_ptr)
@@ -72,11 +72,11 @@ contains
type(my_c_ptr_local), value :: cptr2
if(.not. my_c_associated_2(cptr1)) then
- call abort()
+ STOP 7
end if
if(.not. my_c_associated_2(cptr2)) then
- call abort()
+ STOP 8
end if
end subroutine sub4
end module iso_c_binding_rename_1
diff --git a/gcc/testsuite/gfortran.dg/iso_c_binding_rename_2.f03 b/gcc/testsuite/gfortran.dg/iso_c_binding_rename_2.f03
index 75797e78f73..c7f153f785d 100644
--- a/gcc/testsuite/gfortran.dg/iso_c_binding_rename_2.f03
+++ b/gcc/testsuite/gfortran.dg/iso_c_binding_rename_2.f03
@@ -15,7 +15,7 @@ contains
implicit none
type(my_c_ptr_2) :: my_ptr1
if( .not. my_c_associated_2(my_ptr1)) then
- call abort()
+ STOP 1
end if
end subroutine sub2
@@ -24,7 +24,7 @@ contains
implicit none
type(my_c_ptr_2) :: my_ptr1
if( .not. my_c_associated(my_ptr1)) then
- call abort()
+ STOP 2
end if
end subroutine sub3
@@ -33,7 +33,7 @@ contains
implicit none
type(my_c_ptr) :: my_ptr1
if( .not. my_c_associated_3(my_ptr1)) then
- call abort()
+ STOP 3
end if
end subroutine sub4
diff --git a/gcc/testsuite/gfortran.dg/iso_fortran_env_1.f90 b/gcc/testsuite/gfortran.dg/iso_fortran_env_1.f90
index 17e9c7ade36..0169bb938fd 100644
--- a/gcc/testsuite/gfortran.dg/iso_fortran_env_1.f90
+++ b/gcc/testsuite/gfortran.dg/iso_fortran_env_1.f90
@@ -7,14 +7,14 @@ subroutine bar
use , intrinsic :: iso_fortran_env
implicit none
- if (file_storage_size /= 8) call abort
- if (character_storage_size /= 8) call abort
- if (all (numeric_storage_size /= [ 8, 16, 32, 64, 128])) call abort
- if (input_unit /= 5) call abort
- if (output_unit /= 6) call abort
- if (error_unit /= 0) call abort
- if (iostat_end /= -1) call abort
- if (iostat_eor /= -2) call abort
+ if (file_storage_size /= 8) STOP 1
+ if (character_storage_size /= 8) STOP 2
+ if (all (numeric_storage_size /= [ 8, 16, 32, 64, 128])) STOP 3
+ if (input_unit /= 5) STOP 4
+ if (output_unit /= 6) STOP 5
+ if (error_unit /= 0) STOP 6
+ if (iostat_end /= -1) STOP 7
+ if (iostat_eor /= -2) STOP 8
end
subroutine bar2
@@ -23,21 +23,21 @@ subroutine bar2
error_unit, iostat_end, iostat_eor
implicit none
- if (file_storage_size /= 8) call abort
- if (character_storage_size /= 8) call abort
- if (all (numeric_storage_size /= [ 8, 16, 32, 64, 128])) call abort
- if (input_unit /= 5) call abort
- if (output_unit /= 6) call abort
- if (error_unit /= 0) call abort
- if (iostat_end /= -1) call abort
- if (iostat_eor /= -2) call abort
+ if (file_storage_size /= 8) STOP 9
+ if (character_storage_size /= 8) STOP 10
+ if (all (numeric_storage_size /= [ 8, 16, 32, 64, 128])) STOP 11
+ if (input_unit /= 5) STOP 12
+ if (output_unit /= 6) STOP 13
+ if (error_unit /= 0) STOP 14
+ if (iostat_end /= -1) STOP 15
+ if (iostat_eor /= -2) STOP 16
end
program test
use , intrinsic :: iso_fortran_env, uu => output_unit
implicit none
- if (input_unit /= 5 .or. uu /= 6) call abort
+ if (input_unit /= 5 .or. uu /= 6) STOP 17
call bar
call bar2
end
diff --git a/gcc/testsuite/gfortran.dg/iso_fortran_env_3.f90 b/gcc/testsuite/gfortran.dg/iso_fortran_env_3.f90
index a90315958a9..65c1db2e937 100644
--- a/gcc/testsuite/gfortran.dg/iso_fortran_env_3.f90
+++ b/gcc/testsuite/gfortran.dg/iso_fortran_env_3.f90
@@ -11,14 +11,14 @@ subroutine foo2 (x,y)
use iso_fortran_env, foo => numeric_storage_size
integer, intent(in) :: x, y
- if (foo /= x .or. character_storage_size /= y) call abort
+ if (foo /= x .or. character_storage_size /= y) STOP 1
end
subroutine foo3 (x,y)
use iso_fortran_env, only : numeric_storage_size, character_storage_size
integer, intent(in) :: x, y
- if (numeric_storage_size /= x .or. character_storage_size /= y) call abort
+ if (numeric_storage_size /= x .or. character_storage_size /= y) STOP 2
end
program test
diff --git a/gcc/testsuite/gfortran.dg/iso_fortran_env_5.f90 b/gcc/testsuite/gfortran.dg/iso_fortran_env_5.f90
index d87ce43f31f..efe012143ca 100644
--- a/gcc/testsuite/gfortran.dg/iso_fortran_env_5.f90
+++ b/gcc/testsuite/gfortran.dg/iso_fortran_env_5.f90
@@ -12,13 +12,13 @@ integer(kind=ATOMIC_INT_KIND) :: atomic_int
logical(kind=ATOMIC_LOGICAL_KIND) :: atomic_bool
i = 0
-if (IOSTAT_INQUIRE_INTERNAL_UNIT <= 0) call abort()
-if (IOSTAT_INQUIRE_INTERNAL_UNIT == STAT_STOPPED_IMAGE) call abort()
-if (STAT_STOPPED_IMAGE <= 0) call abort()
+if (IOSTAT_INQUIRE_INTERNAL_UNIT <= 0) STOP 1
+if (IOSTAT_INQUIRE_INTERNAL_UNIT == STAT_STOPPED_IMAGE) STOP 2
+if (STAT_STOPPED_IMAGE <= 0) STOP 3
if ((STAT_LOCKED_OTHER_IMAGE == STAT_LOCKED) &
- .or.(STAT_LOCKED_OTHER_IMAGE == STAT_UNLOCKED)) call abort()
-if (STAT_LOCKED == STAT_UNLOCKED) call abort()
+ .or.(STAT_LOCKED_OTHER_IMAGE == STAT_UNLOCKED)) STOP 4
+if (STAT_LOCKED == STAT_UNLOCKED) STOP 5
end
diff --git a/gcc/testsuite/gfortran.dg/iso_fortran_env_6.f90 b/gcc/testsuite/gfortran.dg/iso_fortran_env_6.f90
index 0f5aedf0b36..128efa6be39 100644
--- a/gcc/testsuite/gfortran.dg/iso_fortran_env_6.f90
+++ b/gcc/testsuite/gfortran.dg/iso_fortran_env_6.f90
@@ -12,7 +12,7 @@ logical(kind=ATOMIC_LOGICAL_KIND) :: atomic_bool ! { dg-error "has no IMPLICIT t
print *, OUTPUT_UNIT
-if (IOSTAT_INQUIRE_INTERNAL_UNIT <= 0) call abort() ! { dg-error "has no IMPLICIT type" }
+if (IOSTAT_INQUIRE_INTERNAL_UNIT <= 0) STOP 1 ! { dg-error "has no IMPLICIT type" }
print *,STAT_STOPPED_IMAGE ! { dg-error "has no IMPLICIT type" }
print *, STAT_LOCKED_OTHER_IMAGE ! { dg-error "has no IMPLICIT type" }
print *, STAT_LOCKED ! { dg-error "has no IMPLICIT type" }
diff --git a/gcc/testsuite/gfortran.dg/itime_idate_1.f b/gcc/testsuite/gfortran.dg/itime_idate_1.f
index 618a83f1769..2705aaeef67 100644
--- a/gcc/testsuite/gfortran.dg/itime_idate_1.f
+++ b/gcc/testsuite/gfortran.dg/itime_idate_1.f
@@ -4,9 +4,9 @@
call itime(x)
if (x(1) < 0 .or. x(1) > 23 .or.
& x(2) < 0 .or. x(2) > 59 .or.
- & x(3) < 0 .or. x(3) > 61) call abort
+ & x(3) < 0 .or. x(3) > 61) STOP 1
call idate(x)
if (x(1) < 1 .or. x(1) > 31 .or.
& x(2) < 1 .or. x(2) > 12 .or.
- & x(3) < 2001 .or. x(3) > 2100) call abort
+ & x(3) < 2001 .or. x(3) > 2100) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/itime_idate_2.f b/gcc/testsuite/gfortran.dg/itime_idate_2.f
index 11c582dd6ee..8e3d30c3c90 100644
--- a/gcc/testsuite/gfortran.dg/itime_idate_2.f
+++ b/gcc/testsuite/gfortran.dg/itime_idate_2.f
@@ -5,9 +5,9 @@
call itime(x)
if (x(1) < 0 .or. x(1) > 23 .or.
& x(2) < 0 .or. x(2) > 59 .or.
- & x(3) < 0 .or. x(3) > 61) call abort
+ & x(3) < 0 .or. x(3) > 61) STOP 1
call idate(x)
if (x(1) < 1 .or. x(1) > 31 .or.
& x(2) < 1 .or. x(2) > 12 .or.
- & x(3) < 2001 .or. x(3) > 2100) call abort
+ & x(3) < 2001 .or. x(3) > 2100) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/large_integer_kind_1.f90 b/gcc/testsuite/gfortran.dg/large_integer_kind_1.f90
index 9511317901c..69e4de36df4 100644
--- a/gcc/testsuite/gfortran.dg/large_integer_kind_1.f90
+++ b/gcc/testsuite/gfortran.dg/large_integer_kind_1.f90
@@ -15,7 +15,7 @@ contains
write (ca,f) a
write (cb,f) b
- if (ca /= cb) call abort
+ if (ca /= cb) STOP 1
end subroutine testoutput
end module testmod
diff --git a/gcc/testsuite/gfortran.dg/large_integer_kind_2.f90 b/gcc/testsuite/gfortran.dg/large_integer_kind_2.f90
index 68e64ab8ee4..3e90300fe70 100644
--- a/gcc/testsuite/gfortran.dg/large_integer_kind_2.f90
+++ b/gcc/testsuite/gfortran.dg/large_integer_kind_2.f90
@@ -10,6 +10,6 @@
integer(8) :: a, b
i = 0; j = 1; a = i; b = j
- if (i ** j /= a ** b) call abort
+ if (i ** j /= a ** b) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/large_real_kind_1.f90 b/gcc/testsuite/gfortran.dg/large_real_kind_1.f90
index 0d95718eb43..e3c27bc7afd 100644
--- a/gcc/testsuite/gfortran.dg/large_real_kind_1.f90
+++ b/gcc/testsuite/gfortran.dg/large_real_kind_1.f90
@@ -15,7 +15,7 @@ contains
write (ca,f) a
write (cb,f) b
- if (ca /= cb) call abort
+ if (ca /= cb) STOP 1
end subroutine testoutput
subroutine outputstring (a,f,s)
@@ -26,7 +26,7 @@ contains
character(len=len(s)) :: c
write (c,f) a
- if (c /= s) call abort
+ if (c /= s) STOP 2
end subroutine outputstring
end module testmod
@@ -61,9 +61,9 @@ program test
write (c1,'(G20.10E5)') x
write (c2,'(G20.10E5)') -x
- if (c2(1:1) /= '-') call abort
+ if (c2(1:1) /= '-') STOP 3
c2(1:1) = ' '
- if (c1 /= c2) call abort
+ if (c1 /= c2) STOP 4
x = tiny(x)
call outputstring (x,'(F20.15)',' 0.000000000000000')
@@ -71,7 +71,7 @@ program test
write (c1,'(G20.10E5)') x
write (c2,'(G20.10E5)') -x
- if (c2(1:1) /= '-') call abort
+ if (c2(1:1) /= '-') STOP 5
c2(1:1) = ' '
- if (c1 /= c2) call abort
+ if (c1 /= c2) STOP 6
end program test
diff --git a/gcc/testsuite/gfortran.dg/large_real_kind_2.F90 b/gcc/testsuite/gfortran.dg/large_real_kind_2.F90
index 486c8c00361..93e32af89b5 100644
--- a/gcc/testsuite/gfortran.dg/large_real_kind_2.F90
+++ b/gcc/testsuite/gfortran.dg/large_real_kind_2.F90
@@ -17,14 +17,14 @@
y = x ;\
x = func (x) ;\
y = func (y) ;\
- if (abs((y - x) / y) > eps) call abort
+ if (abs((y - x) / y) > eps) STOP 1
#define CTEST_FUNCTION(func,valc) \
z = valc ;\
w = z ;\
z = func (z) ;\
w = func (w) ;\
- if (abs((z - w) / w) > eps) call abort
+ if (abs((z - w) / w) > eps) STOP 2
TEST_FUNCTION(cos,17.456)
TEST_FUNCTION(sin,17.456)
@@ -54,14 +54,14 @@
y = x ; \
x1 = val2 ; \
y1 = x1; \
- if (abs((x**x1 - y**y1)/(y**y1)) > eps) call abort
+ if (abs((x**x1 - y**y1)/(y**y1)) > eps) STOP 3
#define CTEST_POWER(val1,val2) \
z = val1 ; \
w = z ; \
z1 = val2 ; \
w1 = z1; \
- if (abs((z**z1 - w**w1)/(w**w1)) > eps) call abort
+ if (abs((z**z1 - w**w1)/(w**w1)) > eps) STOP 4
CTEST_POWER (1.0,1.0)
CTEST_POWER (1.0,5.4)
diff --git a/gcc/testsuite/gfortran.dg/large_real_kind_3.F90 b/gcc/testsuite/gfortran.dg/large_real_kind_3.F90
index 128376963ba..8f4a0ba4cf5 100644
--- a/gcc/testsuite/gfortran.dg/large_real_kind_3.F90
+++ b/gcc/testsuite/gfortran.dg/large_real_kind_3.F90
@@ -15,7 +15,7 @@
y = x ;\
x = func (x) ;\
y = func (y) ;\
- if (abs((y - x) / y) > eps) call abort
+ if (abs((y - x) / y) > eps) STOP 1
TEST_FUNCTION(erf,1.45123231)
TEST_FUNCTION(erfc,-0.123789)
diff --git a/gcc/testsuite/gfortran.dg/large_real_kind_form_io_1.f90 b/gcc/testsuite/gfortran.dg/large_real_kind_form_io_1.f90
index 3e49dc19282..360203a3a3c 100644
--- a/gcc/testsuite/gfortran.dg/large_real_kind_form_io_1.f90
+++ b/gcc/testsuite/gfortran.dg/large_real_kind_form_io_1.f90
@@ -12,16 +12,16 @@ program large_real_kind_form_io_1
b(:) = 2.0_k
write (tmp, *) b
read (tmp, *) a, c
- if (abs (a - b(1)) > eps) call abort ()
- if (abs (c - b(2)) > eps) call abort ()
+ if (abs (a - b(1)) > eps) STOP 1
+ if (abs (c - b(2)) > eps) STOP 2
! Complex(k) scalar and array formatted and list formatted IO
d = cmplx ( 1.0_k, 2.0_k, k)
f = d
write (tmp, *) f
read (tmp, *) e, g
- if (abs (e - d) > eps) call abort ()
- if (abs (g - d) > eps) call abort ()
+ if (abs (e - d) > eps) STOP 3
+ if (abs (g - d) > eps) STOP 4
write (tmp, '(2(e12.4e5, 2x))') d
read (tmp, '(2(e12.4e5, 2x))') e
- if (abs (e - d) > eps) call abort()
+ if (abs (e - d) > eps) STOP 5
end program large_real_kind_form_io_1
diff --git a/gcc/testsuite/gfortran.dg/large_real_kind_form_io_2.f90 b/gcc/testsuite/gfortran.dg/large_real_kind_form_io_2.f90
index a72c7183785..34b8aec462c 100644
--- a/gcc/testsuite/gfortran.dg/large_real_kind_form_io_2.f90
+++ b/gcc/testsuite/gfortran.dg/large_real_kind_form_io_2.f90
@@ -12,24 +12,24 @@ program large_real_kind_form_io_2
b(:) = huge(0.0_k)
write (tmp, *) b
read (tmp, *) a, c
- if (a /= b(1)) call abort ()
- if (c /= b(2)) call abort ()
+ if (a /= b(1)) STOP 1
+ if (c /= b(2)) STOP 2
b(:) = -huge(0.0_k)
write (tmp, *) b
read (tmp, *) a, c
- if (a /= b(1)) call abort ()
- if (c /= b(2)) call abort ()
+ if (a /= b(1)) STOP 3
+ if (c /= b(2)) STOP 4
b(:) = nearest(tiny(0.0_k),1.0_k)
write (tmp, *) b
read (tmp, *) a, c
- if (a /= b(1)) call abort ()
- if (c /= b(2)) call abort ()
+ if (a /= b(1)) STOP 5
+ if (c /= b(2)) STOP 6
b(:) = nearest(-tiny(0.0_k),-1.0_k)
write (tmp, *) b
read (tmp, *) a, c
- if (a /= b(1)) call abort ()
- if (c /= b(2)) call abort ()
+ if (a /= b(1)) STOP 7
+ if (c /= b(2)) STOP 8
end program large_real_kind_form_io_2
diff --git a/gcc/testsuite/gfortran.dg/large_recl.f90 b/gcc/testsuite/gfortran.dg/large_recl.f90
index 97ac63f7e4d..736e7909b9a 100644
--- a/gcc/testsuite/gfortran.dg/large_recl.f90
+++ b/gcc/testsuite/gfortran.dg/large_recl.f90
@@ -7,6 +7,6 @@ program large_recl
inquire(10, recl=r)
close(10, status="delete")
if (r /= 12345678901_8) then
- call abort()
+ STOP 1
end if
end program large_recl
diff --git a/gcc/testsuite/gfortran.dg/large_unit_1.f90 b/gcc/testsuite/gfortran.dg/large_unit_1.f90
index 60e2d1f17e8..11a946349c9 100644
--- a/gcc/testsuite/gfortran.dg/large_unit_1.f90
+++ b/gcc/testsuite/gfortran.dg/large_unit_1.f90
@@ -10,7 +10,7 @@
IF (ex) THEN
OPEN(unit=k)
INQUIRE(unit=j, opened=op)
- IF (op) CALL ABORT()
+ IF (op) STOP 1
ENDIF
print *, k
close(k)
diff --git a/gcc/testsuite/gfortran.dg/large_unit_2.f90 b/gcc/testsuite/gfortran.dg/large_unit_2.f90
index 5f3554cc5bb..1ccc14cddb9 100644
--- a/gcc/testsuite/gfortran.dg/large_unit_2.f90
+++ b/gcc/testsuite/gfortran.dg/large_unit_2.f90
@@ -5,9 +5,9 @@
logical :: l
character(len=60) :: s
open(2_8*huge(0)+20_8,file="foo",iostat=i)
- if (i == 0) call abort
+ if (i == 0) STOP 1
open(2_8*huge(0)+20_8,file="foo",err=99)
- call abort
+ STOP 2
99 inquire(unit=18,opened=l)
- if (l) call abort
+ if (l) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/largeequiv_1.f90 b/gcc/testsuite/gfortran.dg/largeequiv_1.f90
index 39b1f815938..d52df8c1353 100644
--- a/gcc/testsuite/gfortran.dg/largeequiv_1.f90
+++ b/gcc/testsuite/gfortran.dg/largeequiv_1.f90
@@ -6,7 +6,7 @@ integer i(1000000), j
equivalence (i(50), j)
j = 1
-if (i(50) /= j) call abort()
+if (i(50) /= j) STOP 1
end subroutine test
call test
diff --git a/gcc/testsuite/gfortran.dg/leadz_trailz_1.f90 b/gcc/testsuite/gfortran.dg/leadz_trailz_1.f90
index a0cd1979225..5030775b632 100644
--- a/gcc/testsuite/gfortran.dg/leadz_trailz_1.f90
+++ b/gcc/testsuite/gfortran.dg/leadz_trailz_1.f90
@@ -10,124 +10,124 @@
i4 = -1
i8 = -1
- if (leadz(i1) /= 0) call abort
- if (leadz(i2) /= 0) call abort
- if (leadz(i4) /= 0) call abort
- if (leadz(i8) /= 0) call abort
-
- if (trailz(i1) /= 0) call abort
- if (trailz(i2) /= 0) call abort
- if (trailz(i4) /= 0) call abort
- if (trailz(i8) /= 0) call abort
-
- if (leadz(-1_1) /= 0) call abort
- if (leadz(-1_2) /= 0) call abort
- if (leadz(-1_4) /= 0) call abort
- if (leadz(-1_8) /= 0) call abort
-
- if (trailz(-1_1) /= 0) call abort
- if (trailz(-1_2) /= 0) call abort
- if (trailz(-1_4) /= 0) call abort
- if (trailz(-1_8) /= 0) call abort
+ if (leadz(i1) /= 0) STOP 1
+ if (leadz(i2) /= 0) STOP 2
+ if (leadz(i4) /= 0) STOP 3
+ if (leadz(i8) /= 0) STOP 4
+
+ if (trailz(i1) /= 0) STOP 5
+ if (trailz(i2) /= 0) STOP 6
+ if (trailz(i4) /= 0) STOP 7
+ if (trailz(i8) /= 0) STOP 8
+
+ if (leadz(-1_1) /= 0) STOP 9
+ if (leadz(-1_2) /= 0) STOP 10
+ if (leadz(-1_4) /= 0) STOP 11
+ if (leadz(-1_8) /= 0) STOP 12
+
+ if (trailz(-1_1) /= 0) STOP 13
+ if (trailz(-1_2) /= 0) STOP 14
+ if (trailz(-1_4) /= 0) STOP 15
+ if (trailz(-1_8) /= 0) STOP 16
i1 = -64
i2 = -64
i4 = -64
i8 = -64
- if (leadz(i1) /= 0) call abort
- if (leadz(i2) /= 0) call abort
- if (leadz(i4) /= 0) call abort
- if (leadz(i8) /= 0) call abort
+ if (leadz(i1) /= 0) STOP 17
+ if (leadz(i2) /= 0) STOP 18
+ if (leadz(i4) /= 0) STOP 19
+ if (leadz(i8) /= 0) STOP 20
- if (trailz(i1) /= 6) call abort
- if (trailz(i2) /= 6) call abort
- if (trailz(i4) /= 6) call abort
- if (trailz(i8) /= 6) call abort
+ if (trailz(i1) /= 6) STOP 21
+ if (trailz(i2) /= 6) STOP 22
+ if (trailz(i4) /= 6) STOP 23
+ if (trailz(i8) /= 6) STOP 24
- if (leadz(-64_1) /= 0) call abort
- if (leadz(-64_2) /= 0) call abort
- if (leadz(-64_4) /= 0) call abort
- if (leadz(-64_8) /= 0) call abort
+ if (leadz(-64_1) /= 0) STOP 25
+ if (leadz(-64_2) /= 0) STOP 26
+ if (leadz(-64_4) /= 0) STOP 27
+ if (leadz(-64_8) /= 0) STOP 28
- if (trailz(-64_1) /= 6) call abort
- if (trailz(-64_2) /= 6) call abort
- if (trailz(-64_4) /= 6) call abort
- if (trailz(-64_8) /= 6) call abort
+ if (trailz(-64_1) /= 6) STOP 29
+ if (trailz(-64_2) /= 6) STOP 30
+ if (trailz(-64_4) /= 6) STOP 31
+ if (trailz(-64_8) /= 6) STOP 32
i1 = -108
i2 = -108
i4 = -108
i8 = -108
- if (leadz(i1) /= 0) call abort
- if (leadz(i2) /= 0) call abort
- if (leadz(i4) /= 0) call abort
- if (leadz(i8) /= 0) call abort
+ if (leadz(i1) /= 0) STOP 33
+ if (leadz(i2) /= 0) STOP 34
+ if (leadz(i4) /= 0) STOP 35
+ if (leadz(i8) /= 0) STOP 36
- if (trailz(i1) /= 2) call abort
- if (trailz(i2) /= 2) call abort
- if (trailz(i4) /= 2) call abort
- if (trailz(i8) /= 2) call abort
+ if (trailz(i1) /= 2) STOP 37
+ if (trailz(i2) /= 2) STOP 38
+ if (trailz(i4) /= 2) STOP 39
+ if (trailz(i8) /= 2) STOP 40
- if (leadz(-108_1) /= 0) call abort
- if (leadz(-108_2) /= 0) call abort
- if (leadz(-108_4) /= 0) call abort
- if (leadz(-108_8) /= 0) call abort
+ if (leadz(-108_1) /= 0) STOP 41
+ if (leadz(-108_2) /= 0) STOP 42
+ if (leadz(-108_4) /= 0) STOP 43
+ if (leadz(-108_8) /= 0) STOP 44
- if (trailz(-108_1) /= 2) call abort
- if (trailz(-108_2) /= 2) call abort
- if (trailz(-108_4) /= 2) call abort
- if (trailz(-108_8) /= 2) call abort
+ if (trailz(-108_1) /= 2) STOP 45
+ if (trailz(-108_2) /= 2) STOP 46
+ if (trailz(-108_4) /= 2) STOP 47
+ if (trailz(-108_8) /= 2) STOP 48
i1 = 1
i2 = 1
i4 = 1
i8 = 1
- if (leadz(i1) /= bit_size(i1) - 1) call abort
- if (leadz(i2) /= bit_size(i2) - 1) call abort
- if (leadz(i4) /= bit_size(i4) - 1) call abort
- if (leadz(i8) /= bit_size(i8) - 1) call abort
+ if (leadz(i1) /= bit_size(i1) - 1) STOP 49
+ if (leadz(i2) /= bit_size(i2) - 1) STOP 50
+ if (leadz(i4) /= bit_size(i4) - 1) STOP 51
+ if (leadz(i8) /= bit_size(i8) - 1) STOP 52
- if (trailz(i1) /= 0) call abort
- if (trailz(i2) /= 0) call abort
- if (trailz(i4) /= 0) call abort
- if (trailz(i8) /= 0) call abort
+ if (trailz(i1) /= 0) STOP 53
+ if (trailz(i2) /= 0) STOP 54
+ if (trailz(i4) /= 0) STOP 55
+ if (trailz(i8) /= 0) STOP 56
- if (leadz(1_1) /= bit_size(1_1) - 1) call abort
- if (leadz(1_2) /= bit_size(1_2) - 1) call abort
- if (leadz(1_4) /= bit_size(1_4) - 1) call abort
- if (leadz(1_8) /= bit_size(1_8) - 1) call abort
+ if (leadz(1_1) /= bit_size(1_1) - 1) STOP 57
+ if (leadz(1_2) /= bit_size(1_2) - 1) STOP 58
+ if (leadz(1_4) /= bit_size(1_4) - 1) STOP 59
+ if (leadz(1_8) /= bit_size(1_8) - 1) STOP 60
- if (trailz(1_1) /= 0) call abort
- if (trailz(1_2) /= 0) call abort
- if (trailz(1_4) /= 0) call abort
- if (trailz(1_8) /= 0) call abort
+ if (trailz(1_1) /= 0) STOP 61
+ if (trailz(1_2) /= 0) STOP 62
+ if (trailz(1_4) /= 0) STOP 63
+ if (trailz(1_8) /= 0) STOP 64
i1 = 64
i2 = 64
i4 = 64
i8 = 64
- if (leadz(i1) /= 1) call abort
- if (leadz(i2) /= 9) call abort
- if (leadz(i4) /= 25) call abort
- if (leadz(i8) /= 57) call abort
-
- if (trailz(i1) /= 6) call abort
- if (trailz(i2) /= 6) call abort
- if (trailz(i4) /= 6) call abort
- if (trailz(i8) /= 6) call abort
-
- if (leadz(64_1) /= 1) call abort
- if (leadz(64_2) /= 9) call abort
- if (leadz(64_4) /= 25) call abort
- if (leadz(64_8) /= 57) call abort
-
- if (trailz(64_1) /= 6) call abort
- if (trailz(64_2) /= 6) call abort
- if (trailz(64_4) /= 6) call abort
- if (trailz(64_8) /= 6) call abort
+ if (leadz(i1) /= 1) STOP 65
+ if (leadz(i2) /= 9) STOP 66
+ if (leadz(i4) /= 25) STOP 67
+ if (leadz(i8) /= 57) STOP 68
+
+ if (trailz(i1) /= 6) STOP 69
+ if (trailz(i2) /= 6) STOP 70
+ if (trailz(i4) /= 6) STOP 71
+ if (trailz(i8) /= 6) STOP 72
+
+ if (leadz(64_1) /= 1) STOP 73
+ if (leadz(64_2) /= 9) STOP 74
+ if (leadz(64_4) /= 25) STOP 75
+ if (leadz(64_8) /= 57) STOP 76
+
+ if (trailz(64_1) /= 6) STOP 77
+ if (trailz(64_2) /= 6) STOP 78
+ if (trailz(64_4) /= 6) STOP 79
+ if (trailz(64_8) /= 6) STOP 80
end
diff --git a/gcc/testsuite/gfortran.dg/leadz_trailz_2.f90 b/gcc/testsuite/gfortran.dg/leadz_trailz_2.f90
index 08701d8a537..9a58e6ba918 100644
--- a/gcc/testsuite/gfortran.dg/leadz_trailz_2.f90
+++ b/gcc/testsuite/gfortran.dg/leadz_trailz_2.f90
@@ -4,33 +4,33 @@
integer(kind=16) :: i16
i16 = -1
- if (leadz(i16) /= 0) call abort
- if (trailz(i16) /= 0) call abort
- if (leadz(-1_16) /= 0) call abort
- if (trailz(-1_16) /= 0) call abort
+ if (leadz(i16) /= 0) STOP 1
+ if (trailz(i16) /= 0) STOP 2
+ if (leadz(-1_16) /= 0) STOP 3
+ if (trailz(-1_16) /= 0) STOP 4
i16 = -64
- if (leadz(i16) /= 0) call abort
- if (trailz(i16) /= 6) call abort
- if (leadz(-64_16) /= 0) call abort
- if (trailz(-64_16) /= 6) call abort
+ if (leadz(i16) /= 0) STOP 5
+ if (trailz(i16) /= 6) STOP 6
+ if (leadz(-64_16) /= 0) STOP 7
+ if (trailz(-64_16) /= 6) STOP 8
i16 = -108
- if (leadz(i16) /= 0) call abort
- if (trailz(i16) /= 2) call abort
- if (leadz(-108_16) /= 0) call abort
- if (trailz(-108_16) /= 2) call abort
+ if (leadz(i16) /= 0) STOP 9
+ if (trailz(i16) /= 2) STOP 10
+ if (leadz(-108_16) /= 0) STOP 11
+ if (trailz(-108_16) /= 2) STOP 12
i16 = 1
- if (leadz(i16) /= bit_size(i16) - 1) call abort
- if (trailz(i16) /= 0) call abort
- if (leadz(1_16) /= bit_size(1_16) - 1) call abort
- if (trailz(1_16) /= 0) call abort
+ if (leadz(i16) /= bit_size(i16) - 1) STOP 13
+ if (trailz(i16) /= 0) STOP 14
+ if (leadz(1_16) /= bit_size(1_16) - 1) STOP 15
+ if (trailz(1_16) /= 0) STOP 16
i16 = 64
- if (leadz(i16) /= 121) call abort
- if (trailz(i16) /= 6) call abort
- if (leadz(64_16) /= 121) call abort
- if (trailz(64_16) /= 6) call abort
+ if (leadz(i16) /= 121) STOP 17
+ if (trailz(i16) /= 6) STOP 18
+ if (leadz(64_16) /= 121) STOP 19
+ if (trailz(64_16) /= 6) STOP 20
end
diff --git a/gcc/testsuite/gfortran.dg/leadz_trailz_3.f90 b/gcc/testsuite/gfortran.dg/leadz_trailz_3.f90
index e6ad9f385d1..c3223c4844e 100644
--- a/gcc/testsuite/gfortran.dg/leadz_trailz_3.f90
+++ b/gcc/testsuite/gfortran.dg/leadz_trailz_3.f90
@@ -5,12 +5,12 @@
program test
- if (leadz (foo()) /= bit_size(0) - 1) call abort
- if (leadz (foo()) /= bit_size(0) - 2) call abort
- if (trailz (foo()) /= 0) call abort
- if (trailz (foo()) /= 2) call abort
- if (trailz (foo()) /= 0) call abort
- if (trailz (foo()) /= 1) call abort
+ if (leadz (foo()) /= bit_size(0) - 1) STOP 1
+ if (leadz (foo()) /= bit_size(0) - 2) STOP 2
+ if (trailz (foo()) /= 0) STOP 3
+ if (trailz (foo()) /= 2) STOP 4
+ if (trailz (foo()) /= 0) STOP 5
+ if (trailz (foo()) /= 1) STOP 6
contains
diff --git a/gcc/testsuite/gfortran.dg/list_read_1.f90 b/gcc/testsuite/gfortran.dg/list_read_1.f90
index 6fba90ae738..7a3ce63b5f3 100644
--- a/gcc/testsuite/gfortran.dg/list_read_1.f90
+++ b/gcc/testsuite/gfortran.dg/list_read_1.f90
@@ -12,11 +12,11 @@ program list_read_1
rewind(11)
read (11, *) i
- if (i .ne. 42) call abort
+ if (i .ne. 42) STOP 1
read (11, *) i
- if (i .ne. 43) call abort
+ if (i .ne. 43) STOP 2
read (11, *) i
- if (i .ne. 44) call abort
+ if (i .ne. 44) STOP 3
close (11)
end
diff --git a/gcc/testsuite/gfortran.dg/list_read_10.f90 b/gcc/testsuite/gfortran.dg/list_read_10.f90
index 1ad3304d50c..153cee9da32 100644
--- a/gcc/testsuite/gfortran.dg/list_read_10.f90
+++ b/gcc/testsuite/gfortran.dg/list_read_10.f90
@@ -9,6 +9,6 @@ program main
write (10,'(A)') ' 1 2 3 4*5 /'
rewind 10
read (10,*) i1
- if (any(i1 /= i2)) call abort
+ if (any(i1 /= i2)) STOP 1
close (10,status="delete")
end program main
diff --git a/gcc/testsuite/gfortran.dg/list_read_11.f90 b/gcc/testsuite/gfortran.dg/list_read_11.f90
index 10344a1959e..8e5fdd1ed23 100644
--- a/gcc/testsuite/gfortran.dg/list_read_11.f90
+++ b/gcc/testsuite/gfortran.dg/list_read_11.f90
@@ -16,12 +16,12 @@ program teststuff
s1 = repeat('x', len(s1))
a = 99
read(11,*)s1,a
- if (s1 /= "line1" .or. a /= 1) call abort()
+ if (s1 /= "line1" .or. a /= 1) STOP 1
s1 = repeat('x', len(s1))
read(11,"(a)")s1
close(11,status="delete")
- if (s1 /= "line2") call abort()
+ if (s1 /= "line2") STOP 2
open(11,file="testcase.txt",form='unformatted',access='stream',status='new')
@@ -33,6 +33,6 @@ program teststuff
s2 = repeat('x', len(s1))
read(11,*)s1,s2
close(11,status="delete")
- if (s1 /= "word1") call abort()
- if (s2 /= "word2") call abort()
+ if (s1 /= "word1") STOP 3
+ if (s2 /= "word2") STOP 4
end program teststuff
diff --git a/gcc/testsuite/gfortran.dg/list_read_12.f90 b/gcc/testsuite/gfortran.dg/list_read_12.f90
index 860469222e5..9c0e807a569 100644
--- a/gcc/testsuite/gfortran.dg/list_read_12.f90
+++ b/gcc/testsuite/gfortran.dg/list_read_12.f90
@@ -8,5 +8,5 @@ close(99)
open(99, access='sequential', form='formatted')
read(99, *, iostat=ios) i
close(99, status="delete")
-if (ios /= 0) call abort
+if (ios /= 0) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/list_read_13.f b/gcc/testsuite/gfortran.dg/list_read_13.f
index 0f8efd86c30..2bf96507fc3 100644
--- a/gcc/testsuite/gfortran.dg/list_read_13.f
+++ b/gcc/testsuite/gfortran.dg/list_read_13.f
@@ -6,7 +6,7 @@ c PR61049, reduced test case by Dominique d'Humieres
read(buff, *, err=10) AVD, AVC, BVC, BVD, CVC, CVD
goto 20
- 10 call abort
+ 10 STOP 1
20 continue
end
diff --git a/gcc/testsuite/gfortran.dg/list_read_14.f90 b/gcc/testsuite/gfortran.dg/list_read_14.f90
index 15bcfad500d..2e16c036334 100644
--- a/gcc/testsuite/gfortran.dg/list_read_14.f90
+++ b/gcc/testsuite/gfortran.dg/list_read_14.f90
@@ -21,5 +21,5 @@ rewind(funit)
a=0d0
read(funit,*) (a(i),i=1,isize)
close(funit)
-if (any(a /= res)) call abort
+if (any(a /= res)) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/list_read_2.f90 b/gcc/testsuite/gfortran.dg/list_read_2.f90
index 3e6c233c09a..f77633ee807 100644
--- a/gcc/testsuite/gfortran.dg/list_read_2.f90
+++ b/gcc/testsuite/gfortran.dg/list_read_2.f90
@@ -13,15 +13,15 @@ program list_read_2
logical debug
data debug /.TRUE./
read(a,*)i
- if (i.ne.1234567890) call abort
+ if (i.ne.1234567890) STOP 1
read(a(1:1),*)i
- if (i.ne.1) call abort
+ if (i.ne.1) STOP 2
read(a(2:2),*)i
- if (i.ne.2) call abort
+ if (i.ne.2) STOP 3
read(a(1:5),*)i
- if (i.ne.12345) call abort
+ if (i.ne.12345) STOP 4
read(a(5:10),*)i
- if (i.ne.567890) call abort
+ if (i.ne.567890) STOP 5
read(a(10:10),*)i
- if (i.ne.0) call abort
+ if (i.ne.0) STOP 6
end
diff --git a/gcc/testsuite/gfortran.dg/list_read_3.f90 b/gcc/testsuite/gfortran.dg/list_read_3.f90
index 908139a4194..c8a21c6793d 100644
--- a/gcc/testsuite/gfortran.dg/list_read_3.f90
+++ b/gcc/testsuite/gfortran.dg/list_read_3.f90
@@ -20,10 +20,10 @@ program fg
print*,a, b, c, d
end if
- if (abs(10. - a) > 1e-5) call abort
- if (abs(20. - b) > 1e-5) call abort
- if (abs(30. - c) > 1e-5) call abort
- if (abs(40. - d) > 1e-5) call abort
+ if (abs(10. - a) > 1e-5) STOP 1
+ if (abs(20. - b) > 1e-5) STOP 2
+ if (abs(30. - c) > 1e-5) STOP 3
+ if (abs(40. - d) > 1e-5) STOP 4
a = 0
b = 0
@@ -32,10 +32,10 @@ program fg
write (buff,'(a)') '10.,20.,30.,40.'
read(buff,*) a, b, c, d
- if (abs(10. - a) > 1e-5) call abort
- if (abs(20. - b) > 1e-5) call abort
- if (abs(30. - c) > 1e-5) call abort
- if (abs(40. - d) > 1e-5) call abort
+ if (abs(10. - a) > 1e-5) STOP 5
+ if (abs(20. - b) > 1e-5) STOP 6
+ if (abs(30. - c) > 1e-5) STOP 7
+ if (abs(40. - d) > 1e-5) STOP 8
if (debug) then
print*,buff
@@ -49,10 +49,10 @@ program fg
write (buff,'(a)') '10.0,20.0,30.0,40.0'
read(buff,*) a, b, c, d
- if (abs(10. - a) > 1e-5) call abort
- if (abs(20. - b) > 1e-5) call abort
- if (abs(30. - c) > 1e-5) call abort
- if (abs(40. - d) > 1e-5) call abort
+ if (abs(10. - a) > 1e-5) STOP 9
+ if (abs(20. - b) > 1e-5) STOP 10
+ if (abs(30. - c) > 1e-5) STOP 11
+ if (abs(40. - d) > 1e-5) STOP 12
if (debug) then
print*,buff
@@ -67,10 +67,10 @@ program fg
write (buff,'(a)') '10.0,,30.0,40.0'
read(buff,*) a, b, c, d
- if (abs(10. - a) > 1e-5) call abort
- if (abs(-99. - b) > 1e-5) call abort
- if (abs(30. - c) > 1e-5) call abort
- if (abs(40. - d) > 1e-5) call abort
+ if (abs(10. - a) > 1e-5) STOP 13
+ if (abs(-99. - b) > 1e-5) STOP 14
+ if (abs(30. - c) > 1e-5) STOP 15
+ if (abs(40. - d) > 1e-5) STOP 16
if (debug) then
print*,buff
@@ -93,9 +93,9 @@ subroutine abc
write (buff,'(a)') '10,-20,30,-40'
read(buff,*) a, b, c, d
- if (abs(10. - a) > 1e-5) call abort
- if (abs(-20. - b) > 1e-5) call abort
- if (abs(30. - c) > 1e-5) call abort
- if (abs(-40. - d) > 1e-5) call abort
+ if (abs(10. - a) > 1e-5) STOP 17
+ if (abs(-20. - b) > 1e-5) STOP 18
+ if (abs(30. - c) > 1e-5) STOP 19
+ if (abs(-40. - d) > 1e-5) STOP 20
end subroutine abc
diff --git a/gcc/testsuite/gfortran.dg/list_read_4.f90 b/gcc/testsuite/gfortran.dg/list_read_4.f90
index fb1770e2303..ef0b685e10c 100644
--- a/gcc/testsuite/gfortran.dg/list_read_4.f90
+++ b/gcc/testsuite/gfortran.dg/list_read_4.f90
@@ -24,21 +24,21 @@
x(k) = -1.0
enddo
read (10,*,iostat=ier) x
- if (ier.ne.0) call abort
+ if (ier.ne.0) STOP 1
do k = 1,10
- if (x(k).ne.y(k)) call abort
+ if (x(k).ne.y(k)) STOP 2
x(k) = -1
end do
READ(10,*,iostat=ier) x
- if (ier.ne.0) call abort
+ if (ier.ne.0) STOP 3
do k = 1,10
- if (x(k).ne.y(k)) call abort
+ if (x(k).ne.y(k)) STOP 4
x(k) = -1
end do
READ(10,*,iostat=ier) x
- if (ier.ne.0) call abort
+ if (ier.ne.0) STOP 5
do k = 1,10
- if (x(k).ne.y(k)) call abort
+ if (x(k).ne.y(k)) STOP 6
x(k) = -1
end do
! integer
@@ -46,9 +46,9 @@
i(k) = -1
end do
READ(10,*,iostat=ier) (i(j),j=1,10)
- if (ier.ne.0) call abort
+ if (ier.ne.0) STOP 7
do k = 1,10
- if (i(k).ne.y(k)) call abort
+ if (i(k).ne.y(k)) STOP 8
i(k) = -1
end do
end
diff --git a/gcc/testsuite/gfortran.dg/list_read_5.f90 b/gcc/testsuite/gfortran.dg/list_read_5.f90
index 14b0d1648a4..c2604ce4b52 100644
--- a/gcc/testsuite/gfortran.dg/list_read_5.f90
+++ b/gcc/testsuite/gfortran.dg/list_read_5.f90
@@ -12,28 +12,28 @@ program pr25307
i = 0
j = 0
read( str, *, end=10 ) i,j
- call abort()
+ STOP 1
10 continue
- if (i.ne.123) call abort()
- if (j.ne.0) call abort()
+ if (i.ne.123) STOP 2
+ if (j.ne.0) STOP 3
! Check file unit
i = 0
open(10, status="scratch")
write(10,'(a)') "123"
rewind(10)
read(10, *, end=20) i,j
- call abort()
+ STOP 4
20 continue
- if (i.ne.123) call abort()
- if (j.ne.0) call abort()
+ if (i.ne.123) STOP 5
+ if (j.ne.0) STOP 6
! Check internal array unit
i = 0
j = 0
k = 0
read(a(1:5:2),*, end=30)i,j,k
- call abort()
+ STOP 7
30 continue
- if (i.ne.123) call abort()
- if (j.ne.234) call abort()
- if (k.ne.0) call abort()
+ if (i.ne.123) STOP 8
+ if (j.ne.234) STOP 9
+ if (k.ne.0) STOP 10
end program pr25307
diff --git a/gcc/testsuite/gfortran.dg/list_read_6.f90 b/gcc/testsuite/gfortran.dg/list_read_6.f90
index 296d94ca846..fb80b1b7d46 100644
--- a/gcc/testsuite/gfortran.dg/list_read_6.f90
+++ b/gcc/testsuite/gfortran.dg/list_read_6.f90
@@ -10,7 +10,7 @@ program t
rewind(10)
a = -1; b = -1; c = -1; d = -1;
read(10,*) a,b,c,d
- if (d.ne.-1) call abort()
+ if (d.ne.-1) STOP 1
! This worked as expected
rewind(10)
@@ -18,7 +18,7 @@ program t
rewind(10)
a = -2; b = -2; c = -2; d = -2;
read(10,*) a,b,c,d
- if (d.ne.-2) call abort()
+ if (d.ne.-2) STOP 2
! This worked as expected.
rewind(10)
@@ -27,7 +27,7 @@ program t
rewind(10)
a = -3; b = -3; c = -3; d = -3;
read(10,*) a,b,c,d
- if (d.ne.-3) call abort()
+ if (d.ne.-3) STOP 3
! This failed before the patch.
rewind(10)
@@ -36,7 +36,7 @@ program t
rewind(10)
a = -4; b = -4; c = -4; d = -4;
read(10,*) a,b,c,d
- if (d.ne.-4) call abort()
+ if (d.ne.-4) STOP 4
close(unit=10, status='delete')
end program t
diff --git a/gcc/testsuite/gfortran.dg/list_read_7.f90 b/gcc/testsuite/gfortran.dg/list_read_7.f90
index 4ee08354b1d..fd420ee5303 100644
--- a/gcc/testsuite/gfortran.dg/list_read_7.f90
+++ b/gcc/testsuite/gfortran.dg/list_read_7.f90
@@ -10,9 +10,9 @@ rewind(20)
read(20, fmt=*) ieee_str1, ieee_str2
if (trim(ieee_str1) /= &
'1.0101010101010101010101010101010101010101010101010101*2^-2') &
- call abort
+ STOP 1
if (trim(ieee_str2) /= &
'1.01010101010101010101011*2^-2') &
- call abort
+ STOP 2
close(20, status="delete")
end
diff --git a/gcc/testsuite/gfortran.dg/list_read_8.f90 b/gcc/testsuite/gfortran.dg/list_read_8.f90
index 4be75fdb4e2..5fe6482c79e 100644
--- a/gcc/testsuite/gfortran.dg/list_read_8.f90
+++ b/gcc/testsuite/gfortran.dg/list_read_8.f90
@@ -13,5 +13,5 @@ do i=1,10
read(10,*,iostat=badness)
if (badness/=0) exit
enddo
-if (i /= 4) call abort
+if (i /= 4) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/list_read_9.f90 b/gcc/testsuite/gfortran.dg/list_read_9.f90
index dac0dc8cd1d..38078db37eb 100644
--- a/gcc/testsuite/gfortran.dg/list_read_9.f90
+++ b/gcc/testsuite/gfortran.dg/list_read_9.f90
@@ -8,6 +8,6 @@ call fputc(10,'3')
close(10, status="keep")
open(unit=10,file="atest",form='formatted',status="old")
read(10,*) a, b, c
-if (a.ne.1.2 .or. b.ne.2.2 .or. c.ne.3.3) call abort
+if (a.ne.1.2 .or. b.ne.2.2 .or. c.ne.3.3) STOP 1
close(10, status="delete")
end
diff --git a/gcc/testsuite/gfortran.dg/loc_2.f90 b/gcc/testsuite/gfortran.dg/loc_2.f90
index d905fc0f74b..fc4992bd669 100644
--- a/gcc/testsuite/gfortran.dg/loc_2.f90
+++ b/gcc/testsuite/gfortran.dg/loc_2.f90
@@ -10,7 +10,7 @@ program test
call testloc
do i=1,12
if (errors(i)) then
- call abort()
+ STOP 1
endif
end do
end program test
diff --git a/gcc/testsuite/gfortran.dg/logical_1.f90 b/gcc/testsuite/gfortran.dg/logical_1.f90
index 69d9e6a437e..486675d47d4 100644
--- a/gcc/testsuite/gfortran.dg/logical_1.f90
+++ b/gcc/testsuite/gfortran.dg/logical_1.f90
@@ -19,6 +19,6 @@ program logical_1
write(t(4),*) t8
write(f(4),*) f8
- if (any(t .ne. " T")) call abort
- if (any(f .ne. " F")) call abort
+ if (any(t .ne. " T")) STOP 1
+ if (any(f .ne. " F")) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/logical_dot_product.f90 b/gcc/testsuite/gfortran.dg/logical_dot_product.f90
index e35595c430f..3c6d1c0073f 100644
--- a/gcc/testsuite/gfortran.dg/logical_dot_product.f90
+++ b/gcc/testsuite/gfortran.dg/logical_dot_product.f90
@@ -5,7 +5,7 @@
!
logical :: l1(4) = (/.TRUE.,.FALSE.,.TRUE.,.FALSE./)
logical :: l2(4) = (/.FALSE.,.TRUE.,.FALSE.,.TRUE./)
- if (dot_product (l1, l2)) call abort ()
+ if (dot_product (l1, l2)) STOP 1
l2 = .TRUE.
- if (.not.dot_product (l1, l2)) call abort ()
+ if (.not.dot_product (l1, l2)) STOP 2
end \ No newline at end of file
diff --git a/gcc/testsuite/gfortran.dg/logical_temp_io.f90 b/gcc/testsuite/gfortran.dg/logical_temp_io.f90
index 77260a9c669..dbe52bb14a1 100644
--- a/gcc/testsuite/gfortran.dg/logical_temp_io.f90
+++ b/gcc/testsuite/gfortran.dg/logical_temp_io.f90
@@ -8,6 +8,6 @@ program pr82869
character(len=4) :: s
write (s, *) c_associated(p), c_associated(c_null_ptr)
if (s /= ' F F') then
- call abort()
+ STOP 1
end if
end program pr82869
diff --git a/gcc/testsuite/gfortran.dg/logical_temp_io_kind8.f90 b/gcc/testsuite/gfortran.dg/logical_temp_io_kind8.f90
index 662289e1c34..88456f8b3ef 100644
--- a/gcc/testsuite/gfortran.dg/logical_temp_io_kind8.f90
+++ b/gcc/testsuite/gfortran.dg/logical_temp_io_kind8.f90
@@ -9,6 +9,6 @@ program pr82869_8
character(len=4) :: s
write (s, *) c_associated(p), c_associated(c_null_ptr)
if (s /= ' F F') then
- call abort()
+ STOP 1
end if
end program pr82869_8
diff --git a/gcc/testsuite/gfortran.dg/lrshift_1.f90 b/gcc/testsuite/gfortran.dg/lrshift_1.f90
index 7feed2962ea..b0e53794943 100644
--- a/gcc/testsuite/gfortran.dg/lrshift_1.f90
+++ b/gcc/testsuite/gfortran.dg/lrshift_1.f90
@@ -11,8 +11,8 @@ program test_rshift_lshift
do n = 1, size(i)
do j = -30, 30
- if (lshift(i(n),j) /= c_lshift(i(n),j)) call abort
- if (rshift(i(n),j) /= c_rshift(i(n),j)) call abort
+ if (lshift(i(n),j) /= c_lshift(i(n),j)) STOP 1
+ if (rshift(i(n),j) /= c_rshift(i(n),j)) STOP 2
end do
end do
end program test_rshift_lshift
diff --git a/gcc/testsuite/gfortran.dg/ltime_gmtime_1.f90 b/gcc/testsuite/gfortran.dg/ltime_gmtime_1.f90
index cdbb973356b..2d34b22c70b 100644
--- a/gcc/testsuite/gfortran.dg/ltime_gmtime_1.f90
+++ b/gcc/testsuite/gfortran.dg/ltime_gmtime_1.f90
@@ -5,5 +5,5 @@
t = time()
call ltime(t,x)
call gmtime(t,y)
- if (x(1) /= y(1) .or. mod(x(2),30) /= mod(y(2),30)) call abort
+ if (x(1) /= y(1) .or. mod(x(2),30) /= mod(y(2),30)) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/ltime_gmtime_2.f90 b/gcc/testsuite/gfortran.dg/ltime_gmtime_2.f90
index c1480b72356..90d436b7958 100644
--- a/gcc/testsuite/gfortran.dg/ltime_gmtime_2.f90
+++ b/gcc/testsuite/gfortran.dg/ltime_gmtime_2.f90
@@ -5,5 +5,5 @@
t = time()
call ltime(t,x)
call gmtime(t,y)
- if (x(1) /= y(1) .or. mod(x(2),30) /= mod(y(2),30)) call abort
+ if (x(1) /= y(1) .or. mod(x(2),30) /= mod(y(2),30)) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/lto/pr40725_0.f03 b/gcc/testsuite/gfortran.dg/lto/pr40725_0.f03
index 91d84bd0740..a97a011eea1 100644
--- a/gcc/testsuite/gfortran.dg/lto/pr40725_0.f03
+++ b/gcc/testsuite/gfortran.dg/lto/pr40725_0.f03
@@ -9,7 +9,7 @@ contains
type(my_c_type_1) :: my_type
integer(c_int), value :: expected_j
if (my_type%j .ne. expected_j) then
- call abort ()
+ STOP 1
end if
end subroutine sub0
end module bind_c_dts_2
diff --git a/gcc/testsuite/gfortran.dg/lto/pr41576_1.f90 b/gcc/testsuite/gfortran.dg/lto/pr41576_1.f90
index 118d9c68e95..61d44516cc0 100644
--- a/gcc/testsuite/gfortran.dg/lto/pr41576_1.f90
+++ b/gcc/testsuite/gfortran.dg/lto/pr41576_1.f90
@@ -6,6 +6,6 @@ interface
end subroutine
end interface
call foo
- if (c/=1 .or. d/=2) call abort
+ if (c/=1 .or. d/=2) STOP 1
end program test
diff --git a/gcc/testsuite/gfortran.dg/make_unit.f90 b/gcc/testsuite/gfortran.dg/make_unit.f90
index ffeb5f1b2d0..22cc5fb5157 100644
--- a/gcc/testsuite/gfortran.dg/make_unit.f90
+++ b/gcc/testsuite/gfortran.dg/make_unit.f90
@@ -4,13 +4,13 @@ program makeunit
integer :: ic, istat, nc
logical :: exists, is_open
-if (get_unit_number("foo0.dat") .ne. 10) call abort
-if (get_unit_number("foo1.dat") .ne. 11) call abort
-if (get_unit_number("foo2.dat") .ne. 12) call abort
-if (get_unit_number("foo3.dat") .ne. 13) call abort
+if (get_unit_number("foo0.dat") .ne. 10) STOP 1
+if (get_unit_number("foo1.dat") .ne. 11) STOP 2
+if (get_unit_number("foo2.dat") .ne. 12) STOP 3
+if (get_unit_number("foo3.dat") .ne. 13) STOP 4
close(unit=12, status="delete")
-if (get_unit_number("foo2.dat") .ne. 12) call abort()
+if (get_unit_number("foo2.dat") .ne. 12) STOP 1
close(unit=10, status="delete")
close(unit=11, status="delete")
close(unit=12, status="delete")
diff --git a/gcc/testsuite/gfortran.dg/mapping_1.f90 b/gcc/testsuite/gfortran.dg/mapping_1.f90
index eda198e8284..bfcbbc4f735 100644
--- a/gcc/testsuite/gfortran.dg/mapping_1.f90
+++ b/gcc/testsuite/gfortran.dg/mapping_1.f90
@@ -65,5 +65,5 @@ program spec_test
character(54) :: chr
c_size = 5
- if (tricky ('Help me', butt_ugly) .ne. transfer (butt_ugly (1), chr)) call abort ()
+ if (tricky ('Help me', butt_ugly) .ne. transfer (butt_ugly (1), chr)) STOP 1
end program spec_test
diff --git a/gcc/testsuite/gfortran.dg/mapping_2.f90 b/gcc/testsuite/gfortran.dg/mapping_2.f90
index 1245c6640bd..e60be0b6c13 100644
--- a/gcc/testsuite/gfortran.dg/mapping_2.f90
+++ b/gcc/testsuite/gfortran.dg/mapping_2.f90
@@ -27,5 +27,5 @@ program len_test
implicit none
real x(7)
- if (my_string(x) .ne. "01234567890") call abort ()
+ if (my_string(x) .ne. "01234567890") STOP 1
end program len_test
diff --git a/gcc/testsuite/gfortran.dg/mapping_3.f90 b/gcc/testsuite/gfortran.dg/mapping_3.f90
index 318ec00c027..b2713372ab9 100644
--- a/gcc/testsuite/gfortran.dg/mapping_3.f90
+++ b/gcc/testsuite/gfortran.dg/mapping_3.f90
@@ -26,7 +26,7 @@ contains
subroutine process (strings)
character(*), intent(in) :: strings(:)
- if (any (strings .ne. indata)) call abort ()
+ if (any (strings .ne. indata)) STOP 1
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/masklr_1.F90 b/gcc/testsuite/gfortran.dg/masklr_1.F90
index 82472c571b4..798d7b25a96 100644
--- a/gcc/testsuite/gfortran.dg/masklr_1.F90
+++ b/gcc/testsuite/gfortran.dg/masklr_1.F90
@@ -4,10 +4,10 @@
! { dg-options "-ffree-line-length-none" }
#define CHECK(I,KIND,FUNCL,FUNCR,RESL,RESR) \
- if (maskl(I,KIND) /= RESL) call abort ; \
- if (FUNCL(I) /= RESL) call abort ; \
- if (maskr(I,KIND) /= RESR) call abort ; \
- if (FUNCR(I) /= RESR) call abort
+ if (maskl(I,KIND) /= RESL) STOP 1; \
+ if (FUNCL(I) /= RESL) STOP 2; \
+ if (maskr(I,KIND) /= RESR) STOP 3; \
+ if (FUNCR(I) /= RESR) STOP 4
CHECK(0,1,run_maskl1,run_maskr1,0_1,0_1)
CHECK(1,1,run_maskl1,run_maskr1,-huge(0_1)-1_1,1_1)
diff --git a/gcc/testsuite/gfortran.dg/masklr_2.F90 b/gcc/testsuite/gfortran.dg/masklr_2.F90
index a7545a1881c..0c0bbe415ba 100644
--- a/gcc/testsuite/gfortran.dg/masklr_2.F90
+++ b/gcc/testsuite/gfortran.dg/masklr_2.F90
@@ -5,10 +5,10 @@
! { dg-require-effective-target fortran_integer_16 }
#define CHECK(I,KIND,FUNCL,FUNCR,RESL,RESR) \
- if (maskl(I,KIND) /= RESL) call abort ; \
- if (FUNCL(I) /= RESL) call abort ; \
- if (maskr(I,KIND) /= RESR) call abort ; \
- if (FUNCR(I) /= RESR) call abort
+ if (maskl(I,KIND) /= RESL) STOP 1; \
+ if (FUNCL(I) /= RESL) STOP 2; \
+ if (maskr(I,KIND) /= RESR) STOP 3; \
+ if (FUNCR(I) /= RESR) STOP 4
CHECK(0,16,run_maskl16,run_maskr16,0_16,0_16)
CHECK(1,16,run_maskl16,run_maskr16,-huge(0_16)-1_16,1_16)
diff --git a/gcc/testsuite/gfortran.dg/matmul_1.f90 b/gcc/testsuite/gfortran.dg/matmul_1.f90
index 6496f88a2c7..9bf276ac435 100644
--- a/gcc/testsuite/gfortran.dg/matmul_1.f90
+++ b/gcc/testsuite/gfortran.dg/matmul_1.f90
@@ -28,25 +28,25 @@ Program matmul_1
z = 0.0_T
z = matmul (x, y)
- if (sum (z) /= 750.0_T) call abort ()
+ if (sum (z) /= 750.0_T) STOP 1
! array sections
c = 0.0_T
c(1:3,1:2) = matmul (a(7:9,3:N), b(3:N,3:4))
- if (sum (c) /= 576.0_T) call abort ()
+ if (sum (c) /= 576.0_T) STOP 2
! uses a temp
c = 0.0_T
c = matmul (a, b + x)
- if (sum (c) /= 9625.0_T) call abort ()
+ if (sum (c) /= 9625.0_T) STOP 3
! returns to a temp
c = 0.0_T
c = a + matmul (a, b)
- if (sum (c) /= 5775.0_T) call abort ()
+ if (sum (c) /= 5775.0_T) STOP 4
deallocate (a, b, c)
diff --git a/gcc/testsuite/gfortran.dg/matmul_10.f90 b/gcc/testsuite/gfortran.dg/matmul_10.f90
index 55f1c9cf336..a4a2589796f 100644
--- a/gcc/testsuite/gfortran.dg/matmul_10.f90
+++ b/gcc/testsuite/gfortran.dg/matmul_10.f90
@@ -11,12 +11,12 @@ program main
a=1 ; b=2
a(:,1:2)=matmul(a(:,1:4),b(:,:)) ! { dg-warning "Creating array temporary" }
if (any(a /= reshape((/8,8,8,8,8,8,8,8,1,1,1,1,1,1,1,1/),(/4,4/)))) &
- call abort
+ STOP 1
a = reshape([((-1**i)*i,i=1,16)],[4,4])
b = reshape([((-1**(i-1))*i**2,i=1,8)],[4,2])
b(1:2,1:2) = matmul(a(1:2,:),b) ! { dg-warning "Creating array temporary" }
if (any(b /= reshape([310, 340, -9, -16, 1478, 1652, -49, -64],[4,2]))) &
- call abort
+ STOP 2
deallocate(a)
deallocate(b)
end program main
diff --git a/gcc/testsuite/gfortran.dg/matmul_12.f90 b/gcc/testsuite/gfortran.dg/matmul_12.f90
index 5badd3f0b11..6f6fb31852b 100644
--- a/gcc/testsuite/gfortran.dg/matmul_12.f90
+++ b/gcc/testsuite/gfortran.dg/matmul_12.f90
@@ -18,5 +18,5 @@ program main
r(1:su,1:su) = matmul(a(l:u,l:u),b(l:u,l:u))
if (any(reshape(r,[sz*sz]) /= [30, 36, 42, -1, -1, 66, 81, 96, -1, -1,&
& 102, 126, 150, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1])) &
- call abort
+ STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/matmul_16.f90 b/gcc/testsuite/gfortran.dg/matmul_16.f90
index 9def1336344..8d8429136f6 100644
--- a/gcc/testsuite/gfortran.dg/matmul_16.f90
+++ b/gcc/testsuite/gfortran.dg/matmul_16.f90
@@ -8,6 +8,6 @@ program bogus_matmul
w = 7
w = matmul(M,v)
if( any(w .ne. 0) ) then
- call abort
+ STOP 1
end if
end program bogus_matmul
diff --git a/gcc/testsuite/gfortran.dg/matmul_17.f90 b/gcc/testsuite/gfortran.dg/matmul_17.f90
index b21f02be392..dc4c4184b35 100644
--- a/gcc/testsuite/gfortran.dg/matmul_17.f90
+++ b/gcc/testsuite/gfortran.dg/matmul_17.f90
@@ -5,5 +5,5 @@ program p
integer, parameter :: a(3,2) = 1
real, parameter :: b(2,3) = 2
real, parameter :: c(3,3) = matmul(a, b)
- if (any(c /= 4.)) call abort
+ if (any(c /= 4.)) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/matmul_18.f90 b/gcc/testsuite/gfortran.dg/matmul_18.f90
index acfd3c304ca..2ff7c081151 100644
--- a/gcc/testsuite/gfortran.dg/matmul_18.f90
+++ b/gcc/testsuite/gfortran.dg/matmul_18.f90
@@ -4,5 +4,5 @@ program p
real, parameter :: b(2,3) = 2
real d(3,3)
d = 4
- if (any(d /= matmul(a,b))) call abort
+ if (any(d /= matmul(a,b))) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/matmul_2.f90 b/gcc/testsuite/gfortran.dg/matmul_2.f90
index fb678afb896..56a6bca9253 100644
--- a/gcc/testsuite/gfortran.dg/matmul_2.f90
+++ b/gcc/testsuite/gfortran.dg/matmul_2.f90
@@ -16,6 +16,6 @@ program matmul_2
c(1,4) /= 1789789 .or. c(2,4) /= 1789789 .or. &
c(1,5) /= 18 .or. c(2,5) /= 18 .or. &
c(1,6) /= 1789789 .or. c(2,6) /= 1789789 .or. &
- c(1,7) /= 18 .or. c(2,7) /= 18) call abort
+ c(1,7) /= 18 .or. c(2,7) /= 18) STOP 1
end program matmul_2
diff --git a/gcc/testsuite/gfortran.dg/matmul_3.f90 b/gcc/testsuite/gfortran.dg/matmul_3.f90
index e8512330b5e..c72312cc18c 100644
--- a/gcc/testsuite/gfortran.dg/matmul_3.f90
+++ b/gcc/testsuite/gfortran.dg/matmul_3.f90
@@ -22,8 +22,8 @@
iX2(1:n,1) = matmul( iB(2,1:n),iC(1:n,1:n) )
! Whereas, we should have 8, 8, 99
- if (any (iX1(1:n+1,1) .ne. (/8, 8, 99/))) call abort ()
- if (any (iX1 .ne. iX2)) call abort ()
+ if (any (iX1(1:n+1,1) .ne. (/8, 8, 99/))) STOP 1
+ if (any (iX1 .ne. iX2)) STOP 2
! Make sure that the fix does not break transpose temporaries.
iB = reshape((/(i, i = 1, 9)/),(/3,3/))
@@ -31,6 +31,6 @@
iX1 = transpose (iB)
iX1 = matmul (iX1, iC)
iX2 = matmul (transpose (iB), iC)
- if (any (iX1 .ne. iX2)) call abort ()
- if (any (iX1 .ne. iChk)) call abort ()
+ if (any (iX1 .ne. iX2)) STOP 3
+ if (any (iX1 .ne. iChk)) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/matmul_4.f90 b/gcc/testsuite/gfortran.dg/matmul_4.f90
index 8bbaef934c1..164099d9fbe 100644
--- a/gcc/testsuite/gfortran.dg/matmul_4.f90
+++ b/gcc/testsuite/gfortran.dg/matmul_4.f90
@@ -17,6 +17,6 @@ program gfcbug40
mat(:,:) = 1
h(3,:) = h(3,:) + matmul (matmul (h(3,:), transpose (mat)), mat)
- if (any (h(3,:) .ne. (/2.0, 2.0, 3.0/))) call abort ()
+ if (any (h(3,:) .ne. (/2.0, 2.0, 3.0/))) STOP 1
end program gfcbug40
diff --git a/gcc/testsuite/gfortran.dg/matmul_6.f90 b/gcc/testsuite/gfortran.dg/matmul_6.f90
index 737c5c43759..348cae62383 100644
--- a/gcc/testsuite/gfortran.dg/matmul_6.f90
+++ b/gcc/testsuite/gfortran.dg/matmul_6.f90
@@ -31,7 +31,7 @@ program main
l2 = reshape(laux,shape(l2))
m2 = ltoi(l2)
if (any(matmul(l1,l2) .neqv. (matmul(m1,m2) /= 0))) then
- call abort
+ STOP 1
end if
end do
@@ -42,10 +42,10 @@ program main
end forall
iv = ltoi(lv)
if (any(matmul(lv,l1) .neqv. (matmul(iv,m1) /=0))) then
- call abort
+ STOP 2
end if
if (any(matmul(l1,lv) .neqv. (matmul(m1,iv) /= 0))) then
- call abort
+ STOP 3
end if
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/matmul_8.f03 b/gcc/testsuite/gfortran.dg/matmul_8.f03
index fcd4b0d56b6..27301e31c16 100644
--- a/gcc/testsuite/gfortran.dg/matmul_8.f03
+++ b/gcc/testsuite/gfortran.dg/matmul_8.f03
@@ -8,5 +8,5 @@
REAL, PARAMETER :: m2(2,2) = RESHAPE([COS(theta), -SIN(theta), SIN(theta), COS(theta)], [2, 2])
REAL, PARAMETER :: m(2,2) = MATMUL(m1, m2)
- IF (ANY(ABS(m - unity) > EPSILON(0.0))) CALL abort()
+ IF (ANY(ABS(m - unity) > EPSILON(0.0))) STOP 1
END
diff --git a/gcc/testsuite/gfortran.dg/matmul_9.f90 b/gcc/testsuite/gfortran.dg/matmul_9.f90
index 4d582647775..10670bffd41 100644
--- a/gcc/testsuite/gfortran.dg/matmul_9.f90
+++ b/gcc/testsuite/gfortran.dg/matmul_9.f90
@@ -21,7 +21,7 @@ SUBROUTINE mass_matrix
0.d0, 1.d0/3.d0, 0.d0, &
0.d0, 0.d0, 0.d0], &
[3,3])) > epsilon(1.0d0))) &
- call abort ()
+ STOP 1
END SUBROUTINE mass_matrix
program name
@@ -32,13 +32,13 @@ program name
integer, parameter :: m1 = 1
! print *, matmul(B,C)
- if (any (matmul(B,C) /= [-1079, -1793])) call abort()
+ if (any (matmul(B,C) /= [-1079, -1793])) STOP 2
! print *, matmul(C,A)
- if (any (matmul(C,A) /= [-82, -181])) call abort()
+ if (any (matmul(C,A) /= [-82, -181])) STOP 3
! print '(3i5)', m1*matmul(A,B)
if (any (m1*matmul(A,B) /= reshape([71,91,111, 147,201,255, 327,441,555],&
[3,3]))) &
- call abort()
+ STOP 4
call mass_matrix
end program name
diff --git a/gcc/testsuite/gfortran.dg/matmul_bounds_12.f90 b/gcc/testsuite/gfortran.dg/matmul_bounds_12.f90
index 01b3df92c3f..b5d31c5eaa3 100644
--- a/gcc/testsuite/gfortran.dg/matmul_bounds_12.f90
+++ b/gcc/testsuite/gfortran.dg/matmul_bounds_12.f90
@@ -11,7 +11,7 @@ program main
data res2 /158., -353./
c3 = matmul(bp,a)
- if (size(c3,1) /= 2) call abort
- if (any(c3 /= res2)) call abort
+ if (size(c3,1) /= 2) STOP 1
+ if (any(c3 /= res2)) STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/matmul_bounds_6.f90 b/gcc/testsuite/gfortran.dg/matmul_bounds_6.f90
index 7d96c2d7b8b..959b2cf15e3 100644
--- a/gcc/testsuite/gfortran.dg/matmul_bounds_6.f90
+++ b/gcc/testsuite/gfortran.dg/matmul_bounds_6.f90
@@ -12,15 +12,15 @@ program main
data res2 /158., -353./
c1 = matmul(a,[29.,37.])
- if (size(c1,1) /= 3) call abort
- if (any(c1/=res1)) call abort
+ if (size(c1,1) /= 3) STOP 1
+ if (any(c1/=res1)) STOP 2
c2 = matmul(a,pack(b,[b>20.]))
- if (size(c1,1) /= 3) call abort
- if (any(c1/=res1)) call abort
+ if (size(c1,1) /= 3) STOP 3
+ if (any(c1/=res1)) STOP 4
c3 = matmul(pack(b,[b<0.]),a)
- if (size(c3,1) /= 2) call abort
- if (any(c3 /= res2)) call abort
+ if (size(c3,1) /= 2) STOP 5
+ if (any(c3 /= res2)) STOP 6
end program main
diff --git a/gcc/testsuite/gfortran.dg/matmul_const.f90 b/gcc/testsuite/gfortran.dg/matmul_const.f90
index 35dce322774..11cc31ab26a 100644
--- a/gcc/testsuite/gfortran.dg/matmul_const.f90
+++ b/gcc/testsuite/gfortran.dg/matmul_const.f90
@@ -5,6 +5,6 @@ program main
integer, parameter :: B(2,3) = reshape([1,1,1,1,1,1],[2,3])
character (len=30) :: line
write (unit=line,fmt='(9i3)') matmul(A,B)
- if (line /= ' 5 7 9 5 7 9 5 7 9') call abort
+ if (line /= ' 5 7 9 5 7 9 5 7 9') STOP 1
end program main
! dg-final { scan-tree-dump-times "matmul_i4" 0 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/maxloc_1.f90 b/gcc/testsuite/gfortran.dg/maxloc_1.f90
index 41115eda981..f5a732dc6c3 100644
--- a/gcc/testsuite/gfortran.dg/maxloc_1.f90
+++ b/gcc/testsuite/gfortran.dg/maxloc_1.f90
@@ -7,8 +7,8 @@
a(2) = a(2) - 1
a(3) = a(3) - 1
n = maxloc (a, dim = 1)
- if (n .ne. 1) call abort
+ if (n .ne. 1) STOP 1
a(2) = -huge(n)
n = maxloc (a, dim = 1)
- if (n .ne. 2) call abort
+ if (n .ne. 2) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/maxloc_2.f90 b/gcc/testsuite/gfortran.dg/maxloc_2.f90
index 1cf79bace98..00318e8cdcd 100644
--- a/gcc/testsuite/gfortran.dg/maxloc_2.f90
+++ b/gcc/testsuite/gfortran.dg/maxloc_2.f90
@@ -17,140 +17,140 @@
allocate (c(3))
a(:) = nan
ia = maxloc (a)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 1
a(:) = minf
ia = maxloc (a)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 2
a(1:2) = nan
ia = maxloc (a)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 3
a(2) = 1.0
ia = maxloc (a)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 4
a(2) = pinf
ia = maxloc (a)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 5
c(:) = nan
ia = maxloc (c)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 6
c(:) = minf
ia = maxloc (c)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 7
c(1:2) = nan
ia = maxloc (c)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 8
c(2) = 1.0
ia = maxloc (c)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 9
c(2) = pinf
ia = maxloc (c)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 10
l = .false.
l2(:) = .false.
a(:) = nan
ia = maxloc (a, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 11
ia = maxloc (a, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 12
a(:) = minf
ia = maxloc (a, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 13
ia = maxloc (a, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 14
a(1:2) = nan
ia = maxloc (a, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 15
ia = maxloc (a, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 16
a(2) = 1.0
ia = maxloc (a, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 17
ia = maxloc (a, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 18
a(2) = pinf
ia = maxloc (a, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 19
ia = maxloc (a, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 20
c(:) = nan
ia = maxloc (c, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 21
ia = maxloc (c, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 22
c(:) = minf
ia = maxloc (c, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 23
ia = maxloc (c, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 24
c(1:2) = nan
ia = maxloc (c, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 25
ia = maxloc (c, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 26
c(2) = 1.0
ia = maxloc (c, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 27
ia = maxloc (c, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 28
c(2) = pinf
ia = maxloc (c, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 29
ia = maxloc (c, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 30
l = .true.
l2(:) = .true.
a(:) = nan
ia = maxloc (a, mask = l)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 31
ia = maxloc (a, mask = l2)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 32
a(:) = minf
ia = maxloc (a, mask = l)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 33
ia = maxloc (a, mask = l2)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 34
a(1:2) = nan
ia = maxloc (a, mask = l)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 35
ia = maxloc (a, mask = l2)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 36
a(2) = 1.0
ia = maxloc (a, mask = l)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 37
ia = maxloc (a, mask = l2)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 38
a(2) = pinf
ia = maxloc (a, mask = l)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 39
ia = maxloc (a, mask = l2)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 40
c(:) = nan
ia = maxloc (c, mask = l)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 41
ia = maxloc (c, mask = l2)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 42
c(:) = minf
ia = maxloc (c, mask = l)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 43
ia = maxloc (c, mask = l2)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 44
c(1:2) = nan
ia = maxloc (c, mask = l)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 45
ia = maxloc (c, mask = l2)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 46
c(2) = 1.0
ia = maxloc (c, mask = l)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 47
ia = maxloc (c, mask = l2)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 48
c(2) = pinf
ia = maxloc (c, mask = l)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 49
ia = maxloc (c, mask = l2)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 50
deallocate (c)
allocate (c(-2:-3))
ia = maxloc (c)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 51
end
diff --git a/gcc/testsuite/gfortran.dg/maxloc_3.f90 b/gcc/testsuite/gfortran.dg/maxloc_3.f90
index c89e8749c09..3713b97d4e8 100644
--- a/gcc/testsuite/gfortran.dg/maxloc_3.f90
+++ b/gcc/testsuite/gfortran.dg/maxloc_3.f90
@@ -9,114 +9,114 @@
allocate (c(3))
a(:) = 5
ia = maxloc (a)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 1
a(2) = huge(h)
ia = maxloc (a)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 2
a(:) = h
ia = maxloc (a)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 3
a(3) = -huge(h)
ia = maxloc (a)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 4
c(:) = 5
ia = maxloc (c)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 5
c(2) = huge(h)
ia = maxloc (c)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 6
c(:) = h
ia = maxloc (c)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 7
c(3) = -huge(h)
ia = maxloc (c)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 8
l = .false.
l2(:) = .false.
a(:) = 5
ia = maxloc (a, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 9
ia = maxloc (a, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 10
a(2) = huge(h)
ia = maxloc (a, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 11
ia = maxloc (a, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 12
a(:) = h
ia = maxloc (a, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 13
ia = maxloc (a, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 14
a(3) = -huge(h)
ia = maxloc (a, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 15
ia = maxloc (a, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 16
c(:) = 5
ia = maxloc (c, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 17
ia = maxloc (c, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 18
c(2) = huge(h)
ia = maxloc (c, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 19
ia = maxloc (c, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 20
c(:) = h
ia = maxloc (c, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 21
ia = maxloc (c, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 22
c(3) = -huge(h)
ia = maxloc (c, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 23
ia = maxloc (c, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 24
l = .true.
l2(:) = .true.
a(:) = 5
ia = maxloc (a, mask = l)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 25
ia = maxloc (a, mask = l2)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 26
a(2) = huge(h)
ia = maxloc (a, mask = l)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 27
ia = maxloc (a, mask = l2)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 28
a(:) = h
ia = maxloc (a, mask = l)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 29
ia = maxloc (a, mask = l2)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 30
a(3) = -huge(h)
ia = maxloc (a, mask = l)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 31
ia = maxloc (a, mask = l2)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 32
c(:) = 5
ia = maxloc (c, mask = l)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 33
ia = maxloc (c, mask = l2)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 34
c(2) = huge(h)
ia = maxloc (c, mask = l)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 35
ia = maxloc (c, mask = l2)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 36
c(:) = h
ia = maxloc (c, mask = l)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 37
ia = maxloc (c, mask = l2)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 38
c(3) = -huge(h)
ia = maxloc (c, mask = l)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 39
ia = maxloc (c, mask = l2)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 40
deallocate (c)
allocate (c(-2:-3))
ia = maxloc (c)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 41
end
diff --git a/gcc/testsuite/gfortran.dg/maxloc_4.f90 b/gcc/testsuite/gfortran.dg/maxloc_4.f90
index 33834127124..b17a55f5a30 100644
--- a/gcc/testsuite/gfortran.dg/maxloc_4.f90
+++ b/gcc/testsuite/gfortran.dg/maxloc_4.f90
@@ -21,20 +21,20 @@ program main
integer, parameter, dimension(2) :: b11 = maxloc(i2, dim=2)
integer, parameter, dimension(3) :: b12 = maxloc(i2,dim=1,mask=i2<0)
integer, parameter, dimension(2) :: b13 = maxloc(i2,dim=2, mask=i2<-10)
- if (b /= 1) call abort
- if (b2 /= 0) call abort
- if (b3 /= 3) call abort
- if (b4 /= 1) call abort
- if (any(b5 /= [2,1])) call abort
- if (any(b6 /= [0, 0])) call abort
- if (any(b7 /= [1,1])) call abort
- if (any(b8 /= b5)) call abort
- if (any(b9 /= [0, 0])) call abort
+ if (b /= 1) STOP 1
+ if (b2 /= 0) STOP 2
+ if (b3 /= 3) STOP 3
+ if (b4 /= 1) STOP 4
+ if (any(b5 /= [2,1])) STOP 5
+ if (any(b6 /= [0, 0])) STOP 6
+ if (any(b7 /= [1,1])) STOP 7
+ if (any(b8 /= b5)) STOP 8
+ if (any(b9 /= [0, 0])) STOP 9
d = 1
- if (any(b10 /= maxloc(i2,dim=d))) call abort
+ if (any(b10 /= maxloc(i2,dim=d))) STOP 10
d = 2
- if (any(b11 /= maxloc(i2,dim=2))) call abort
+ if (any(b11 /= maxloc(i2,dim=2))) STOP 11
d = 1
- if (any(b12 /= maxloc(i2, dim=d,mask=i2<0))) call abort
- if (any(b13 /= 0)) call abort
+ if (any(b12 /= maxloc(i2, dim=d,mask=i2<0))) STOP 12
+ if (any(b13 /= 0)) STOP 13
end program main
diff --git a/gcc/testsuite/gfortran.dg/maxloc_string_1.f90 b/gcc/testsuite/gfortran.dg/maxloc_string_1.f90
index a5511624dd5..5cad518d33b 100644
--- a/gcc/testsuite/gfortran.dg/maxloc_string_1.f90
+++ b/gcc/testsuite/gfortran.dg/maxloc_string_1.f90
@@ -28,64 +28,64 @@ program main
res1 = maxloc(c)
res2 = maxloc(a)
- if (any(res1 /= res2)) call abort
+ if (any(res1 /= res2)) STOP 1
res1 = maxloc(c4)
- if (any(res1 /= res2)) call abort
+ if (any(res1 /= res2)) STOP 2
amask = a < 50
res1 = maxloc(c,mask=amask)
res2 = maxloc(a,mask=amask)
- if (any(res1 /= res2)) call abort
+ if (any(res1 /= res2)) STOP 3
amask = .false.
res1 = maxloc(c,mask=amask)
- if (any(res1 /= 0)) call abort
+ if (any(res1 /= 0)) STOP 4
amask(2,3) = .true.
res1 = maxloc(c,mask=amask)
- if (any(res1 /= [2,3])) call abort
+ if (any(res1 /= [2,3])) STOP 5
res1 = maxloc(c,mask=.false.)
- if (any(res1 /= 0)) call abort
+ if (any(res1 /= 0)) STOP 6
res2 = maxloc(a)
res1 = maxloc(c,mask=.true.)
- if (any(res1 /= res2)) call abort
+ if (any(res1 /= res2)) STOP 7
q1 = maxloc(c, dim=1)
q2 = maxloc(a, dim=1)
- if (any(q1 /= q2)) call abort
+ if (any(q1 /= q2)) STOP 8
q1 = maxloc(c, dim=2)
q2 = maxloc(a, dim=2)
- if (any(q1 /= q2)) call abort
+ if (any(q1 /= q2)) STOP 9
q1 = maxloc(c, dim=1, mask=amask)
q2 = maxloc(a, dim=1, mask=amask)
- if (any(q1 /= q2)) call abort
+ if (any(q1 /= q2)) STOP 10
q1 = maxloc(c, dim=2, mask=amask)
q2 = maxloc(a, dim=2, mask=amask)
- if (any(q1 /= q2)) call abort
+ if (any(q1 /= q2)) STOP 11
amask = a < 50
q1 = maxloc(c, dim=1, mask=amask)
q2 = maxloc(a, dim=1, mask=amask)
- if (any(q1 /= q2)) call abort
+ if (any(q1 /= q2)) STOP 12
q1 = maxloc(c, dim=2, mask=amask)
q2 = maxloc(a, dim=2, mask=amask)
- if (any(q1 /= q2)) call abort
+ if (any(q1 /= q2)) STOP 13
e = reshape(c, shape(e))
f = reshape(a, shape(f))
- if (maxloc(e,dim=1) /= maxloc(f,dim=1)) call abort
+ if (maxloc(e,dim=1) /= maxloc(f,dim=1)) STOP 14
cmask = .false.
- if (maxloc(e,dim=1,mask=cmask) /= 0) call abort
+ if (maxloc(e,dim=1,mask=cmask) /= 0) STOP 15
cmask = f > 50
- if ( maxloc(e, dim=1, mask=cmask) /= maxloc (f, dim=1, mask=cmask)) call abort
+ if ( maxloc(e, dim=1, mask=cmask) /= maxloc (f, dim=1, mask=cmask)) STOP 16
end program main
diff --git a/gcc/testsuite/gfortran.dg/maxlocval_1.f90 b/gcc/testsuite/gfortran.dg/maxlocval_1.f90
index 11a92ca7725..a095b64d70c 100644
--- a/gcc/testsuite/gfortran.dg/maxlocval_1.f90
+++ b/gcc/testsuite/gfortran.dg/maxlocval_1.f90
@@ -20,25 +20,25 @@ i2 = 1
i4 = 1
i8 = 1
-if(-huge(i1)-1_1 /= maxval(i1, msk)) call abort() ! { dg-warning "outside symmetric range implied by Standard Fortran" }
-if(-huge(a1)-1_1 /= maxval(a1)) call abort() ! { dg-warning "outside symmetric range implied by Standard Fortran" }
+if(-huge(i1)-1_1 /= maxval(i1, msk)) STOP 1 ! { dg-warning "outside symmetric range implied by Standard Fortran" }
+if(-huge(a1)-1_1 /= maxval(a1)) STOP 2 ! { dg-warning "outside symmetric range implied by Standard Fortran" }
-if(-huge(i2)-1_2 /= maxval(i2, msk)) call abort() ! { dg-warning "outside symmetric range implied by Standard Fortran" }
-if(-huge(a2)-1_2 /= maxval(a2)) call abort() ! { dg-warning "outside symmetric range implied by Standard Fortran" }
+if(-huge(i2)-1_2 /= maxval(i2, msk)) STOP 3 ! { dg-warning "outside symmetric range implied by Standard Fortran" }
+if(-huge(a2)-1_2 /= maxval(a2)) STOP 4 ! { dg-warning "outside symmetric range implied by Standard Fortran" }
-if(-huge(i4)-1_4 /= maxval(i4, msk)) call abort() ! { dg-warning "outside symmetric range implied by Standard Fortran" }
-if(-huge(a4)-1_4 /= maxval(a4)) call abort() ! { dg-warning "outside symmetric range implied by Standard Fortran" }
+if(-huge(i4)-1_4 /= maxval(i4, msk)) STOP 5 ! { dg-warning "outside symmetric range implied by Standard Fortran" }
+if(-huge(a4)-1_4 /= maxval(a4)) STOP 6 ! { dg-warning "outside symmetric range implied by Standard Fortran" }
-if(-huge(i8)-1_4 /= maxval(i8, msk)) call abort() ! { dg-warning "outside symmetric range implied by Standard Fortran" }
-if(-huge(a8)-1_4 /= maxval(a8)) call abort() ! { dg-warning "outside symmetric range implied by Standard Fortran" }
+if(-huge(i8)-1_4 /= maxval(i8, msk)) STOP 7 ! { dg-warning "outside symmetric range implied by Standard Fortran" }
+if(-huge(a8)-1_4 /= maxval(a8)) STOP 8 ! { dg-warning "outside symmetric range implied by Standard Fortran" }
allocate (a(0:-1,1:1))
allocate (b(0:-1,1:1))
-if(any(maxval(a,dim=1) /= -huge(a)-1_4)) call abort() ! { dg-warning "outside symmetric range implied by Standard Fortran" }
-if(any(minval(a,dim=1) /= huge(a) )) call abort()
+if(any(maxval(a,dim=1) /= -huge(a)-1_4)) STOP 9 ! { dg-warning "outside symmetric range implied by Standard Fortran" }
+if(any(minval(a,dim=1) /= huge(a) )) STOP 10
-if(any(maxval(b,dim=1) /= -huge(b)-1_8)) call abort() ! { dg-warning "outside symmetric range implied by Standard Fortran" }
-if(any(minval(b,dim=1) /= huge(b) )) call abort()
+if(any(maxval(b,dim=1) /= -huge(b)-1_8)) STOP 11 ! { dg-warning "outside symmetric range implied by Standard Fortran" }
+if(any(minval(b,dim=1) /= huge(b) )) STOP 12
end program main
diff --git a/gcc/testsuite/gfortran.dg/maxlocval_2.f90 b/gcc/testsuite/gfortran.dg/maxlocval_2.f90
index cd985ff4ce9..ee69a6e9ff7 100644
--- a/gcc/testsuite/gfortran.dg/maxlocval_2.f90
+++ b/gcc/testsuite/gfortran.dg/maxlocval_2.f90
@@ -15,141 +15,141 @@
allocate (c(3))
a(:) = nan
- if (maxloc (a, dim = 1).ne.1) call abort
- if (.not.isnan(maxval (a, dim = 1))) call abort
+ if (maxloc (a, dim = 1).ne.1) STOP 1
+ if (.not.isnan(maxval (a, dim = 1))) STOP 2
a(:) = minf
- if (maxloc (a, dim = 1).ne.1) call abort
- if (maxval (a, dim = 1).ne.minf) call abort
+ if (maxloc (a, dim = 1).ne.1) STOP 3
+ if (maxval (a, dim = 1).ne.minf) STOP 4
a(1:2) = nan
- if (maxloc (a, dim = 1).ne.3) call abort
- if (maxval (a, dim = 1).ne.minf) call abort
+ if (maxloc (a, dim = 1).ne.3) STOP 5
+ if (maxval (a, dim = 1).ne.minf) STOP 6
a(2) = 1.0
- if (maxloc (a, dim = 1).ne.2) call abort
- if (maxval (a, dim = 1).ne.1) call abort
+ if (maxloc (a, dim = 1).ne.2) STOP 7
+ if (maxval (a, dim = 1).ne.1) STOP 8
a(2) = pinf
- if (maxloc (a, dim = 1).ne.2) call abort
- if (maxval (a, dim = 1).ne.pinf) call abort
+ if (maxloc (a, dim = 1).ne.2) STOP 9
+ if (maxval (a, dim = 1).ne.pinf) STOP 10
c(:) = nan
- if (maxloc (c, dim = 1).ne.1) call abort
- if (.not.isnan(maxval (c, dim = 1))) call abort
+ if (maxloc (c, dim = 1).ne.1) STOP 11
+ if (.not.isnan(maxval (c, dim = 1))) STOP 12
c(:) = minf
- if (maxloc (c, dim = 1).ne.1) call abort
- if (maxval (c, dim = 1).ne.minf) call abort
+ if (maxloc (c, dim = 1).ne.1) STOP 13
+ if (maxval (c, dim = 1).ne.minf) STOP 14
c(1:2) = nan
- if (maxloc (c, dim = 1).ne.3) call abort
- if (maxval (c, dim = 1).ne.minf) call abort
+ if (maxloc (c, dim = 1).ne.3) STOP 15
+ if (maxval (c, dim = 1).ne.minf) STOP 16
c(2) = 1.0
- if (maxloc (c, dim = 1).ne.2) call abort
- if (maxval (c, dim = 1).ne.1) call abort
+ if (maxloc (c, dim = 1).ne.2) STOP 17
+ if (maxval (c, dim = 1).ne.1) STOP 18
c(2) = pinf
- if (maxloc (c, dim = 1).ne.2) call abort
- if (maxval (c, dim = 1).ne.pinf) call abort
+ if (maxloc (c, dim = 1).ne.2) STOP 19
+ if (maxval (c, dim = 1).ne.pinf) STOP 20
l = .false.
l2(:) = .false.
a(:) = nan
- if (maxloc (a, dim = 1, mask = l).ne.0) call abort
- if (maxval (a, dim = 1, mask = l).ne.-huge(minf)) call abort
- if (maxloc (a, dim = 1, mask = l2).ne.0) call abort
- if (maxval (a, dim = 1, mask = l2).ne.-huge(minf)) call abort
+ if (maxloc (a, dim = 1, mask = l).ne.0) STOP 21
+ if (maxval (a, dim = 1, mask = l).ne.-huge(minf)) STOP 22
+ if (maxloc (a, dim = 1, mask = l2).ne.0) STOP 23
+ if (maxval (a, dim = 1, mask = l2).ne.-huge(minf)) STOP 24
a(:) = minf
- if (maxloc (a, dim = 1, mask = l).ne.0) call abort
- if (maxval (a, dim = 1, mask = l).ne.-huge(minf)) call abort
- if (maxloc (a, dim = 1, mask = l2).ne.0) call abort
- if (maxval (a, dim = 1, mask = l2).ne.-huge(minf)) call abort
+ if (maxloc (a, dim = 1, mask = l).ne.0) STOP 25
+ if (maxval (a, dim = 1, mask = l).ne.-huge(minf)) STOP 26
+ if (maxloc (a, dim = 1, mask = l2).ne.0) STOP 27
+ if (maxval (a, dim = 1, mask = l2).ne.-huge(minf)) STOP 28
a(1:2) = nan
- if (maxloc (a, dim = 1, mask = l).ne.0) call abort
- if (maxval (a, dim = 1, mask = l).ne.-huge(minf)) call abort
- if (maxloc (a, dim = 1, mask = l2).ne.0) call abort
- if (maxval (a, dim = 1, mask = l2).ne.-huge(minf)) call abort
+ if (maxloc (a, dim = 1, mask = l).ne.0) STOP 29
+ if (maxval (a, dim = 1, mask = l).ne.-huge(minf)) STOP 30
+ if (maxloc (a, dim = 1, mask = l2).ne.0) STOP 31
+ if (maxval (a, dim = 1, mask = l2).ne.-huge(minf)) STOP 32
a(2) = 1.0
- if (maxloc (a, dim = 1, mask = l).ne.0) call abort
- if (maxval (a, dim = 1, mask = l).ne.-huge(minf)) call abort
- if (maxloc (a, dim = 1, mask = l2).ne.0) call abort
- if (maxval (a, dim = 1, mask = l2).ne.-huge(minf)) call abort
+ if (maxloc (a, dim = 1, mask = l).ne.0) STOP 33
+ if (maxval (a, dim = 1, mask = l).ne.-huge(minf)) STOP 34
+ if (maxloc (a, dim = 1, mask = l2).ne.0) STOP 35
+ if (maxval (a, dim = 1, mask = l2).ne.-huge(minf)) STOP 36
a(2) = pinf
- if (maxloc (a, dim = 1, mask = l).ne.0) call abort
- if (maxval (a, dim = 1, mask = l).ne.-huge(minf)) call abort
- if (maxloc (a, dim = 1, mask = l2).ne.0) call abort
- if (maxval (a, dim = 1, mask = l2).ne.-huge(minf)) call abort
+ if (maxloc (a, dim = 1, mask = l).ne.0) STOP 37
+ if (maxval (a, dim = 1, mask = l).ne.-huge(minf)) STOP 38
+ if (maxloc (a, dim = 1, mask = l2).ne.0) STOP 39
+ if (maxval (a, dim = 1, mask = l2).ne.-huge(minf)) STOP 40
c(:) = nan
- if (maxloc (c, dim = 1, mask = l).ne.0) call abort
- if (maxval (c, dim = 1, mask = l).ne.-huge(minf)) call abort
- if (maxloc (c, dim = 1, mask = l2).ne.0) call abort
- if (maxval (c, dim = 1, mask = l2).ne.-huge(minf)) call abort
+ if (maxloc (c, dim = 1, mask = l).ne.0) STOP 41
+ if (maxval (c, dim = 1, mask = l).ne.-huge(minf)) STOP 42
+ if (maxloc (c, dim = 1, mask = l2).ne.0) STOP 43
+ if (maxval (c, dim = 1, mask = l2).ne.-huge(minf)) STOP 44
c(:) = minf
- if (maxloc (c, dim = 1, mask = l).ne.0) call abort
- if (maxval (c, dim = 1, mask = l).ne.-huge(minf)) call abort
- if (maxloc (c, dim = 1, mask = l2).ne.0) call abort
- if (maxval (c, dim = 1, mask = l2).ne.-huge(minf)) call abort
+ if (maxloc (c, dim = 1, mask = l).ne.0) STOP 45
+ if (maxval (c, dim = 1, mask = l).ne.-huge(minf)) STOP 46
+ if (maxloc (c, dim = 1, mask = l2).ne.0) STOP 47
+ if (maxval (c, dim = 1, mask = l2).ne.-huge(minf)) STOP 48
c(1:2) = nan
- if (maxloc (c, dim = 1, mask = l).ne.0) call abort
- if (maxval (c, dim = 1, mask = l).ne.-huge(minf)) call abort
- if (maxloc (c, dim = 1, mask = l2).ne.0) call abort
- if (maxval (c, dim = 1, mask = l2).ne.-huge(minf)) call abort
+ if (maxloc (c, dim = 1, mask = l).ne.0) STOP 49
+ if (maxval (c, dim = 1, mask = l).ne.-huge(minf)) STOP 50
+ if (maxloc (c, dim = 1, mask = l2).ne.0) STOP 51
+ if (maxval (c, dim = 1, mask = l2).ne.-huge(minf)) STOP 52
c(2) = 1.0
- if (maxloc (c, dim = 1, mask = l).ne.0) call abort
- if (maxval (c, dim = 1, mask = l).ne.-huge(minf)) call abort
- if (maxloc (c, dim = 1, mask = l2).ne.0) call abort
- if (maxval (c, dim = 1, mask = l2).ne.-huge(minf)) call abort
+ if (maxloc (c, dim = 1, mask = l).ne.0) STOP 53
+ if (maxval (c, dim = 1, mask = l).ne.-huge(minf)) STOP 54
+ if (maxloc (c, dim = 1, mask = l2).ne.0) STOP 55
+ if (maxval (c, dim = 1, mask = l2).ne.-huge(minf)) STOP 56
c(2) = pinf
- if (maxloc (c, dim = 1, mask = l).ne.0) call abort
- if (maxval (c, dim = 1, mask = l).ne.-huge(minf)) call abort
- if (maxloc (c, dim = 1, mask = l2).ne.0) call abort
- if (maxval (c, dim = 1, mask = l2).ne.-huge(minf)) call abort
+ if (maxloc (c, dim = 1, mask = l).ne.0) STOP 57
+ if (maxval (c, dim = 1, mask = l).ne.-huge(minf)) STOP 58
+ if (maxloc (c, dim = 1, mask = l2).ne.0) STOP 59
+ if (maxval (c, dim = 1, mask = l2).ne.-huge(minf)) STOP 60
l = .true.
l2(:) = .true.
a(:) = nan
- if (maxloc (a, dim = 1, mask = l).ne.1) call abort
- if (.not.isnan(maxval (a, dim = 1, mask = l))) call abort
- if (maxloc (a, dim = 1, mask = l2).ne.1) call abort
- if (.not.isnan(maxval (a, dim = 1, mask = l2))) call abort
+ if (maxloc (a, dim = 1, mask = l).ne.1) STOP 61
+ if (.not.isnan(maxval (a, dim = 1, mask = l))) STOP 62
+ if (maxloc (a, dim = 1, mask = l2).ne.1) STOP 63
+ if (.not.isnan(maxval (a, dim = 1, mask = l2))) STOP 64
a(:) = minf
- if (maxloc (a, dim = 1, mask = l).ne.1) call abort
- if (maxval (a, dim = 1, mask = l).ne.minf) call abort
- if (maxloc (a, dim = 1, mask = l2).ne.1) call abort
- if (maxval (a, dim = 1, mask = l2).ne.minf) call abort
+ if (maxloc (a, dim = 1, mask = l).ne.1) STOP 65
+ if (maxval (a, dim = 1, mask = l).ne.minf) STOP 66
+ if (maxloc (a, dim = 1, mask = l2).ne.1) STOP 67
+ if (maxval (a, dim = 1, mask = l2).ne.minf) STOP 68
a(1:2) = nan
- if (maxloc (a, dim = 1, mask = l).ne.3) call abort
- if (maxval (a, dim = 1, mask = l).ne.minf) call abort
- if (maxloc (a, dim = 1, mask = l2).ne.3) call abort
- if (maxval (a, dim = 1, mask = l2).ne.minf) call abort
+ if (maxloc (a, dim = 1, mask = l).ne.3) STOP 69
+ if (maxval (a, dim = 1, mask = l).ne.minf) STOP 70
+ if (maxloc (a, dim = 1, mask = l2).ne.3) STOP 71
+ if (maxval (a, dim = 1, mask = l2).ne.minf) STOP 72
a(2) = 1.0
- if (maxloc (a, dim = 1, mask = l).ne.2) call abort
- if (maxval (a, dim = 1, mask = l).ne.1) call abort
- if (maxloc (a, dim = 1, mask = l2).ne.2) call abort
- if (maxval (a, dim = 1, mask = l2).ne.1) call abort
+ if (maxloc (a, dim = 1, mask = l).ne.2) STOP 73
+ if (maxval (a, dim = 1, mask = l).ne.1) STOP 74
+ if (maxloc (a, dim = 1, mask = l2).ne.2) STOP 75
+ if (maxval (a, dim = 1, mask = l2).ne.1) STOP 76
a(2) = pinf
- if (maxloc (a, dim = 1, mask = l).ne.2) call abort
- if (maxval (a, dim = 1, mask = l).ne.pinf) call abort
- if (maxloc (a, dim = 1, mask = l2).ne.2) call abort
- if (maxval (a, dim = 1, mask = l2).ne.pinf) call abort
+ if (maxloc (a, dim = 1, mask = l).ne.2) STOP 77
+ if (maxval (a, dim = 1, mask = l).ne.pinf) STOP 78
+ if (maxloc (a, dim = 1, mask = l2).ne.2) STOP 79
+ if (maxval (a, dim = 1, mask = l2).ne.pinf) STOP 80
c(:) = nan
- if (maxloc (c, dim = 1, mask = l).ne.1) call abort
- if (.not.isnan(maxval (c, dim = 1, mask = l))) call abort
- if (maxloc (c, dim = 1, mask = l2).ne.1) call abort
- if (.not.isnan(maxval (c, dim = 1, mask = l2))) call abort
+ if (maxloc (c, dim = 1, mask = l).ne.1) STOP 81
+ if (.not.isnan(maxval (c, dim = 1, mask = l))) STOP 82
+ if (maxloc (c, dim = 1, mask = l2).ne.1) STOP 83
+ if (.not.isnan(maxval (c, dim = 1, mask = l2))) STOP 84
c(:) = minf
- if (maxloc (c, dim = 1, mask = l).ne.1) call abort
- if (maxval (c, dim = 1, mask = l).ne.minf) call abort
- if (maxloc (c, dim = 1, mask = l2).ne.1) call abort
- if (maxval (c, dim = 1, mask = l2).ne.minf) call abort
+ if (maxloc (c, dim = 1, mask = l).ne.1) STOP 85
+ if (maxval (c, dim = 1, mask = l).ne.minf) STOP 86
+ if (maxloc (c, dim = 1, mask = l2).ne.1) STOP 87
+ if (maxval (c, dim = 1, mask = l2).ne.minf) STOP 88
c(1:2) = nan
- if (maxloc (c, dim = 1, mask = l).ne.3) call abort
- if (maxval (c, dim = 1, mask = l).ne.minf) call abort
- if (maxloc (c, dim = 1, mask = l2).ne.3) call abort
- if (maxval (c, dim = 1, mask = l2).ne.minf) call abort
+ if (maxloc (c, dim = 1, mask = l).ne.3) STOP 89
+ if (maxval (c, dim = 1, mask = l).ne.minf) STOP 90
+ if (maxloc (c, dim = 1, mask = l2).ne.3) STOP 91
+ if (maxval (c, dim = 1, mask = l2).ne.minf) STOP 92
c(2) = 1.0
- if (maxloc (c, dim = 1, mask = l).ne.2) call abort
- if (maxval (c, dim = 1, mask = l).ne.1) call abort
- if (maxloc (c, dim = 1, mask = l2).ne.2) call abort
- if (maxval (c, dim = 1, mask = l2).ne.1) call abort
+ if (maxloc (c, dim = 1, mask = l).ne.2) STOP 93
+ if (maxval (c, dim = 1, mask = l).ne.1) STOP 94
+ if (maxloc (c, dim = 1, mask = l2).ne.2) STOP 95
+ if (maxval (c, dim = 1, mask = l2).ne.1) STOP 96
c(2) = pinf
- if (maxloc (c, dim = 1, mask = l).ne.2) call abort
- if (maxval (c, dim = 1, mask = l).ne.pinf) call abort
- if (maxloc (c, dim = 1, mask = l2).ne.2) call abort
- if (maxval (c, dim = 1, mask = l2).ne.pinf) call abort
+ if (maxloc (c, dim = 1, mask = l).ne.2) STOP 97
+ if (maxval (c, dim = 1, mask = l).ne.pinf) STOP 98
+ if (maxloc (c, dim = 1, mask = l2).ne.2) STOP 99
+ if (maxval (c, dim = 1, mask = l2).ne.pinf) STOP 100
deallocate (c)
allocate (c(-2:-3))
- if (maxloc (c, dim = 1).ne.0) call abort
- if (maxval (c, dim = 1).ne.-huge(minf)) call abort
+ if (maxloc (c, dim = 1).ne.0) STOP 101
+ if (maxval (c, dim = 1).ne.-huge(minf)) STOP 102
end
diff --git a/gcc/testsuite/gfortran.dg/maxlocval_3.f90 b/gcc/testsuite/gfortran.dg/maxlocval_3.f90
index cbd35957b13..b69a4a8961e 100644
--- a/gcc/testsuite/gfortran.dg/maxlocval_3.f90
+++ b/gcc/testsuite/gfortran.dg/maxlocval_3.f90
@@ -8,115 +8,115 @@
h = h - 1
allocate (c(3))
a(:) = 5
- if (maxloc (a, dim = 1).ne.1) call abort
- if (maxval (a, dim = 1).ne.5) call abort
+ if (maxloc (a, dim = 1).ne.1) STOP 1
+ if (maxval (a, dim = 1).ne.5) STOP 2
a(2) = huge(h)
- if (maxloc (a, dim = 1).ne.2) call abort
- if (maxval (a, dim = 1).ne.huge(h)) call abort
+ if (maxloc (a, dim = 1).ne.2) STOP 3
+ if (maxval (a, dim = 1).ne.huge(h)) STOP 4
a(:) = h
- if (maxloc (a, dim = 1).ne.1) call abort
- if (maxval (a, dim = 1).ne.h) call abort
+ if (maxloc (a, dim = 1).ne.1) STOP 5
+ if (maxval (a, dim = 1).ne.h) STOP 6
a(3) = -huge(h)
- if (maxloc (a, dim = 1).ne.3) call abort
- if (maxval (a, dim = 1).ne.-huge(h)) call abort
+ if (maxloc (a, dim = 1).ne.3) STOP 7
+ if (maxval (a, dim = 1).ne.-huge(h)) STOP 8
c(:) = 5
- if (maxloc (c, dim = 1).ne.1) call abort
- if (maxval (c, dim = 1).ne.5) call abort
+ if (maxloc (c, dim = 1).ne.1) STOP 9
+ if (maxval (c, dim = 1).ne.5) STOP 10
c(2) = huge(h)
- if (maxloc (c, dim = 1).ne.2) call abort
- if (maxval (c, dim = 1).ne.huge(h)) call abort
+ if (maxloc (c, dim = 1).ne.2) STOP 11
+ if (maxval (c, dim = 1).ne.huge(h)) STOP 12
c(:) = h
- if (maxloc (c, dim = 1).ne.1) call abort
- if (maxval (c, dim = 1).ne.h) call abort
+ if (maxloc (c, dim = 1).ne.1) STOP 13
+ if (maxval (c, dim = 1).ne.h) STOP 14
c(3) = -huge(h)
- if (maxloc (c, dim = 1).ne.3) call abort
- if (maxval (c, dim = 1).ne.-huge(h)) call abort
+ if (maxloc (c, dim = 1).ne.3) STOP 15
+ if (maxval (c, dim = 1).ne.-huge(h)) STOP 16
l = .false.
l2(:) = .false.
a(:) = 5
- if (maxloc (a, dim = 1, mask = l).ne.0) call abort
- if (maxval (a, dim = 1, mask = l).ne.h) call abort
- if (maxloc (a, dim = 1, mask = l2).ne.0) call abort
- if (maxval (a, dim = 1, mask = l2).ne.h) call abort
+ if (maxloc (a, dim = 1, mask = l).ne.0) STOP 17
+ if (maxval (a, dim = 1, mask = l).ne.h) STOP 18
+ if (maxloc (a, dim = 1, mask = l2).ne.0) STOP 19
+ if (maxval (a, dim = 1, mask = l2).ne.h) STOP 20
a(2) = huge(h)
- if (maxloc (a, dim = 1, mask = l).ne.0) call abort
- if (maxval (a, dim = 1, mask = l).ne.h) call abort
- if (maxloc (a, dim = 1, mask = l2).ne.0) call abort
- if (maxval (a, dim = 1, mask = l2).ne.h) call abort
+ if (maxloc (a, dim = 1, mask = l).ne.0) STOP 21
+ if (maxval (a, dim = 1, mask = l).ne.h) STOP 22
+ if (maxloc (a, dim = 1, mask = l2).ne.0) STOP 23
+ if (maxval (a, dim = 1, mask = l2).ne.h) STOP 24
a(:) = h
- if (maxloc (a, dim = 1, mask = l).ne.0) call abort
- if (maxval (a, dim = 1, mask = l).ne.h) call abort
- if (maxloc (a, dim = 1, mask = l2).ne.0) call abort
- if (maxval (a, dim = 1, mask = l2).ne.h) call abort
+ if (maxloc (a, dim = 1, mask = l).ne.0) STOP 25
+ if (maxval (a, dim = 1, mask = l).ne.h) STOP 26
+ if (maxloc (a, dim = 1, mask = l2).ne.0) STOP 27
+ if (maxval (a, dim = 1, mask = l2).ne.h) STOP 28
a(3) = -huge(h)
- if (maxloc (a, dim = 1, mask = l).ne.0) call abort
- if (maxval (a, dim = 1, mask = l).ne.h) call abort
- if (maxloc (a, dim = 1, mask = l2).ne.0) call abort
- if (maxval (a, dim = 1, mask = l2).ne.h) call abort
+ if (maxloc (a, dim = 1, mask = l).ne.0) STOP 29
+ if (maxval (a, dim = 1, mask = l).ne.h) STOP 30
+ if (maxloc (a, dim = 1, mask = l2).ne.0) STOP 31
+ if (maxval (a, dim = 1, mask = l2).ne.h) STOP 32
c(:) = 5
- if (maxloc (c, dim = 1, mask = l).ne.0) call abort
- if (maxval (c, dim = 1, mask = l).ne.h) call abort
- if (maxloc (c, dim = 1, mask = l2).ne.0) call abort
- if (maxval (c, dim = 1, mask = l2).ne.h) call abort
+ if (maxloc (c, dim = 1, mask = l).ne.0) STOP 33
+ if (maxval (c, dim = 1, mask = l).ne.h) STOP 34
+ if (maxloc (c, dim = 1, mask = l2).ne.0) STOP 35
+ if (maxval (c, dim = 1, mask = l2).ne.h) STOP 36
c(2) = huge(h)
- if (maxloc (c, dim = 1, mask = l).ne.0) call abort
- if (maxval (c, dim = 1, mask = l).ne.h) call abort
- if (maxloc (c, dim = 1, mask = l2).ne.0) call abort
- if (maxval (c, dim = 1, mask = l2).ne.h) call abort
+ if (maxloc (c, dim = 1, mask = l).ne.0) STOP 37
+ if (maxval (c, dim = 1, mask = l).ne.h) STOP 38
+ if (maxloc (c, dim = 1, mask = l2).ne.0) STOP 39
+ if (maxval (c, dim = 1, mask = l2).ne.h) STOP 40
c(:) = h
- if (maxloc (c, dim = 1, mask = l).ne.0) call abort
- if (maxval (c, dim = 1, mask = l).ne.h) call abort
- if (maxloc (c, dim = 1, mask = l2).ne.0) call abort
- if (maxval (c, dim = 1, mask = l2).ne.h) call abort
+ if (maxloc (c, dim = 1, mask = l).ne.0) STOP 41
+ if (maxval (c, dim = 1, mask = l).ne.h) STOP 42
+ if (maxloc (c, dim = 1, mask = l2).ne.0) STOP 43
+ if (maxval (c, dim = 1, mask = l2).ne.h) STOP 44
c(3) = -huge(h)
- if (maxloc (c, dim = 1, mask = l).ne.0) call abort
- if (maxval (c, dim = 1, mask = l).ne.h) call abort
- if (maxloc (c, dim = 1, mask = l2).ne.0) call abort
- if (maxval (c, dim = 1, mask = l2).ne.h) call abort
+ if (maxloc (c, dim = 1, mask = l).ne.0) STOP 45
+ if (maxval (c, dim = 1, mask = l).ne.h) STOP 46
+ if (maxloc (c, dim = 1, mask = l2).ne.0) STOP 47
+ if (maxval (c, dim = 1, mask = l2).ne.h) STOP 48
l = .true.
l2(:) = .true.
a(:) = 5
- if (maxloc (a, dim = 1, mask = l).ne.1) call abort
- if (maxval (a, dim = 1, mask = l).ne.5) call abort
- if (maxloc (a, dim = 1, mask = l2).ne.1) call abort
- if (maxval (a, dim = 1, mask = l2).ne.5) call abort
+ if (maxloc (a, dim = 1, mask = l).ne.1) STOP 49
+ if (maxval (a, dim = 1, mask = l).ne.5) STOP 50
+ if (maxloc (a, dim = 1, mask = l2).ne.1) STOP 51
+ if (maxval (a, dim = 1, mask = l2).ne.5) STOP 52
a(2) = huge(h)
- if (maxloc (a, dim = 1, mask = l).ne.2) call abort
- if (maxval (a, dim = 1, mask = l).ne.huge(h)) call abort
- if (maxloc (a, dim = 1, mask = l2).ne.2) call abort
- if (maxval (a, dim = 1, mask = l2).ne.huge(h)) call abort
+ if (maxloc (a, dim = 1, mask = l).ne.2) STOP 53
+ if (maxval (a, dim = 1, mask = l).ne.huge(h)) STOP 54
+ if (maxloc (a, dim = 1, mask = l2).ne.2) STOP 55
+ if (maxval (a, dim = 1, mask = l2).ne.huge(h)) STOP 56
a(:) = h
- if (maxloc (a, dim = 1, mask = l).ne.1) call abort
- if (maxval (a, dim = 1, mask = l).ne.h) call abort
- if (maxloc (a, dim = 1, mask = l2).ne.1) call abort
- if (maxval (a, dim = 1, mask = l2).ne.h) call abort
+ if (maxloc (a, dim = 1, mask = l).ne.1) STOP 57
+ if (maxval (a, dim = 1, mask = l).ne.h) STOP 58
+ if (maxloc (a, dim = 1, mask = l2).ne.1) STOP 59
+ if (maxval (a, dim = 1, mask = l2).ne.h) STOP 60
a(3) = -huge(h)
- if (maxloc (a, dim = 1, mask = l).ne.3) call abort
- if (maxval (a, dim = 1, mask = l).ne.-huge(h)) call abort
- if (maxloc (a, dim = 1, mask = l2).ne.3) call abort
- if (maxval (a, dim = 1, mask = l2).ne.-huge(h)) call abort
+ if (maxloc (a, dim = 1, mask = l).ne.3) STOP 61
+ if (maxval (a, dim = 1, mask = l).ne.-huge(h)) STOP 62
+ if (maxloc (a, dim = 1, mask = l2).ne.3) STOP 63
+ if (maxval (a, dim = 1, mask = l2).ne.-huge(h)) STOP 64
c(:) = 5
- if (maxloc (c, dim = 1, mask = l).ne.1) call abort
- if (maxval (c, dim = 1, mask = l).ne.5) call abort
- if (maxloc (c, dim = 1, mask = l2).ne.1) call abort
- if (maxval (c, dim = 1, mask = l2).ne.5) call abort
+ if (maxloc (c, dim = 1, mask = l).ne.1) STOP 65
+ if (maxval (c, dim = 1, mask = l).ne.5) STOP 66
+ if (maxloc (c, dim = 1, mask = l2).ne.1) STOP 67
+ if (maxval (c, dim = 1, mask = l2).ne.5) STOP 68
c(2) = huge(h)
- if (maxloc (c, dim = 1, mask = l).ne.2) call abort
- if (maxval (c, dim = 1, mask = l).ne.huge(h)) call abort
- if (maxloc (c, dim = 1, mask = l2).ne.2) call abort
- if (maxval (c, dim = 1, mask = l2).ne.huge(h)) call abort
+ if (maxloc (c, dim = 1, mask = l).ne.2) STOP 69
+ if (maxval (c, dim = 1, mask = l).ne.huge(h)) STOP 70
+ if (maxloc (c, dim = 1, mask = l2).ne.2) STOP 71
+ if (maxval (c, dim = 1, mask = l2).ne.huge(h)) STOP 72
c(:) = h
- if (maxloc (c, dim = 1, mask = l).ne.1) call abort
- if (maxval (c, dim = 1, mask = l).ne.h) call abort
- if (maxloc (c, dim = 1, mask = l2).ne.1) call abort
- if (maxval (c, dim = 1, mask = l2).ne.h) call abort
+ if (maxloc (c, dim = 1, mask = l).ne.1) STOP 73
+ if (maxval (c, dim = 1, mask = l).ne.h) STOP 74
+ if (maxloc (c, dim = 1, mask = l2).ne.1) STOP 75
+ if (maxval (c, dim = 1, mask = l2).ne.h) STOP 76
c(3) = -huge(h)
- if (maxloc (c, dim = 1, mask = l).ne.3) call abort
- if (maxval (c, dim = 1, mask = l).ne.-huge(h)) call abort
- if (maxloc (c, dim = 1, mask = l2).ne.3) call abort
- if (maxval (c, dim = 1, mask = l2).ne.-huge(h)) call abort
+ if (maxloc (c, dim = 1, mask = l).ne.3) STOP 77
+ if (maxval (c, dim = 1, mask = l).ne.-huge(h)) STOP 78
+ if (maxloc (c, dim = 1, mask = l2).ne.3) STOP 79
+ if (maxval (c, dim = 1, mask = l2).ne.-huge(h)) STOP 80
deallocate (c)
allocate (c(-2:-3))
- if (maxloc (c, dim = 1).ne.0) call abort
- if (maxval (c, dim = 1).ne.h) call abort
+ if (maxloc (c, dim = 1).ne.0) STOP 81
+ if (maxval (c, dim = 1).ne.h) STOP 82
end
diff --git a/gcc/testsuite/gfortran.dg/maxlocval_4.f90 b/gcc/testsuite/gfortran.dg/maxlocval_4.f90
index b8743325ad8..67fd8e7ff1e 100644
--- a/gcc/testsuite/gfortran.dg/maxlocval_4.f90
+++ b/gcc/testsuite/gfortran.dg/maxlocval_4.f90
@@ -21,100 +21,100 @@
l5(1,2) = .false.
l5(2,3) = .false.
a = reshape ((/ nan, nan, nan, minf, minf, minf, minf, pinf, minf /), (/ 3, 3 /))
- if (maxval (a).ne.pinf) call abort
- if (any (maxloc (a).ne.(/ 2, 3 /))) call abort
+ if (maxval (a).ne.pinf) STOP 1
+ if (any (maxloc (a).ne.(/ 2, 3 /))) STOP 2
b = maxval (a, dim = 1)
- if (.not.isnan(b(1))) call abort
+ if (.not.isnan(b(1))) STOP 3
b(1) = 0.0
- if (any (b.ne.(/ 0.0, minf, pinf /))) call abort
- if (any (maxloc (a, dim = 1).ne.(/ 1, 1, 2 /))) call abort
+ if (any (b.ne.(/ 0.0, minf, pinf /))) STOP 4
+ if (any (maxloc (a, dim = 1).ne.(/ 1, 1, 2 /))) STOP 5
b = maxval (a, dim = 2)
- if (any (b.ne.(/ minf, pinf, minf /))) call abort
- if (any (maxloc (a, dim = 2).ne.(/ 2, 3, 2 /))) call abort
- if (maxval (a, mask = l).ne.h) call abort
- if (any (maxloc (a, mask = l).ne.(/ 0, 0 /))) call abort
+ if (any (b.ne.(/ minf, pinf, minf /))) STOP 6
+ if (any (maxloc (a, dim = 2).ne.(/ 2, 3, 2 /))) STOP 7
+ if (maxval (a, mask = l).ne.h) STOP 8
+ if (any (maxloc (a, mask = l).ne.(/ 0, 0 /))) STOP 9
b = maxval (a, dim = 1, mask = l)
- if (any (b.ne.(/ h, h, h /))) call abort
- if (any (maxloc (a, dim = 1, mask = l).ne.(/ 0, 0, 0 /))) call abort
+ if (any (b.ne.(/ h, h, h /))) STOP 10
+ if (any (maxloc (a, dim = 1, mask = l).ne.(/ 0, 0, 0 /))) STOP 11
b = maxval (a, dim = 2, mask = l)
- if (any (b.ne.(/ h, h, h /))) call abort
- if (any (maxloc (a, dim = 2, mask = l).ne.(/ 0, 0, 0 /))) call abort
- if (maxval (a, mask = l3).ne.h) call abort
- if (any (maxloc (a, mask = l3).ne.(/ 0, 0 /))) call abort
+ if (any (b.ne.(/ h, h, h /))) STOP 12
+ if (any (maxloc (a, dim = 2, mask = l).ne.(/ 0, 0, 0 /))) STOP 13
+ if (maxval (a, mask = l3).ne.h) STOP 14
+ if (any (maxloc (a, mask = l3).ne.(/ 0, 0 /))) STOP 15
b = maxval (a, dim = 1, mask = l3)
- if (any (b.ne.(/ h, h, h /))) call abort
- if (any (maxloc (a, dim = 1, mask = l3).ne.(/ 0, 0, 0 /))) call abort
+ if (any (b.ne.(/ h, h, h /))) STOP 16
+ if (any (maxloc (a, dim = 1, mask = l3).ne.(/ 0, 0, 0 /))) STOP 17
b = maxval (a, dim = 2, mask = l3)
- if (any (b.ne.(/ h, h, h /))) call abort
- if (any (maxloc (a, dim = 2, mask = l3).ne.(/ 0, 0, 0 /))) call abort
- if (maxval (a, mask = l2).ne.pinf) call abort
- if (maxval (a, mask = l4).ne.pinf) call abort
- if (any (maxloc (a, mask = l2).ne.(/ 2, 3 /))) call abort
- if (any (maxloc (a, mask = l4).ne.(/ 2, 3 /))) call abort
+ if (any (b.ne.(/ h, h, h /))) STOP 18
+ if (any (maxloc (a, dim = 2, mask = l3).ne.(/ 0, 0, 0 /))) STOP 19
+ if (maxval (a, mask = l2).ne.pinf) STOP 20
+ if (maxval (a, mask = l4).ne.pinf) STOP 21
+ if (any (maxloc (a, mask = l2).ne.(/ 2, 3 /))) STOP 22
+ if (any (maxloc (a, mask = l4).ne.(/ 2, 3 /))) STOP 23
b = maxval (a, dim = 1, mask = l2)
- if (.not.isnan(b(1))) call abort
+ if (.not.isnan(b(1))) STOP 24
b(1) = 0.0
- if (any (b.ne.(/ 0.0, minf, pinf /))) call abort
- if (any (maxloc (a, dim = 1, mask = l2).ne.(/ 1, 1, 2 /))) call abort
+ if (any (b.ne.(/ 0.0, minf, pinf /))) STOP 25
+ if (any (maxloc (a, dim = 1, mask = l2).ne.(/ 1, 1, 2 /))) STOP 26
b = maxval (a, dim = 2, mask = l2)
- if (any (b.ne.(/ minf, pinf, minf /))) call abort
- if (any (maxloc (a, dim = 2, mask = l2).ne.(/ 2, 3, 2 /))) call abort
+ if (any (b.ne.(/ minf, pinf, minf /))) STOP 27
+ if (any (maxloc (a, dim = 2, mask = l2).ne.(/ 2, 3, 2 /))) STOP 28
b = maxval (a, dim = 1, mask = l4)
- if (.not.isnan(b(1))) call abort
+ if (.not.isnan(b(1))) STOP 29
b(1) = 0.0
- if (any (b.ne.(/ 0.0, minf, pinf /))) call abort
- if (any (maxloc (a, dim = 1, mask = l2).ne.(/ 1, 1, 2 /))) call abort
+ if (any (b.ne.(/ 0.0, minf, pinf /))) STOP 30
+ if (any (maxloc (a, dim = 1, mask = l2).ne.(/ 1, 1, 2 /))) STOP 31
b = maxval (a, dim = 2, mask = l4)
- if (any (b.ne.(/ minf, pinf, minf /))) call abort
- if (any (maxloc (a, dim = 2, mask = l2).ne.(/ 2, 3, 2 /))) call abort
- if (maxval (a, mask = l5).ne.minf) call abort
- if (any (maxloc (a, mask = l5).ne.(/ 2, 2 /))) call abort
+ if (any (b.ne.(/ minf, pinf, minf /))) STOP 32
+ if (any (maxloc (a, dim = 2, mask = l2).ne.(/ 2, 3, 2 /))) STOP 33
+ if (maxval (a, mask = l5).ne.minf) STOP 34
+ if (any (maxloc (a, mask = l5).ne.(/ 2, 2 /))) STOP 35
b = maxval (a, dim = 1, mask = l5)
- if (.not.isnan(b(1))) call abort
+ if (.not.isnan(b(1))) STOP 36
b(1) = 0.0
- if (any (b.ne.(/ 0.0, minf, minf /))) call abort
- if (any (maxloc (a, dim = 1, mask = l5).ne.(/ 2, 2, 1 /))) call abort
+ if (any (b.ne.(/ 0.0, minf, minf /))) STOP 37
+ if (any (maxloc (a, dim = 1, mask = l5).ne.(/ 2, 2, 1 /))) STOP 38
b = maxval (a, dim = 2, mask = l5)
- if (any (b.ne.(/ minf, minf, minf /))) call abort
- if (any (maxloc (a, dim = 2, mask = l5).ne.(/ 3, 2, 2 /))) call abort
+ if (any (b.ne.(/ minf, minf, minf /))) STOP 39
+ if (any (maxloc (a, dim = 2, mask = l5).ne.(/ 3, 2, 2 /))) STOP 40
a = nan
- if (.not.isnan(maxval (a))) call abort
- if (maxval (a, mask = l).ne.h) call abort
- if (.not.isnan(maxval (a, mask = l2))) call abort
- if (maxval (a, mask = l3).ne.h) call abort
- if (.not.isnan(maxval (a, mask = l4))) call abort
- if (.not.isnan(maxval (a, mask = l5))) call abort
- if (any (maxloc (a).ne.(/ 1, 1 /))) call abort
- if (any (maxloc (a, mask = l).ne.(/ 0, 0 /))) call abort
- if (any (maxloc (a, mask = l2).ne.(/ 1, 1 /))) call abort
- if (any (maxloc (a, mask = l3).ne.(/ 0, 0 /))) call abort
- if (any (maxloc (a, mask = l4).ne.(/ 1, 1 /))) call abort
- if (any (maxloc (a, mask = l5).ne.(/ 2, 1 /))) call abort
+ if (.not.isnan(maxval (a))) STOP 41
+ if (maxval (a, mask = l).ne.h) STOP 42
+ if (.not.isnan(maxval (a, mask = l2))) STOP 43
+ if (maxval (a, mask = l3).ne.h) STOP 44
+ if (.not.isnan(maxval (a, mask = l4))) STOP 45
+ if (.not.isnan(maxval (a, mask = l5))) STOP 46
+ if (any (maxloc (a).ne.(/ 1, 1 /))) STOP 47
+ if (any (maxloc (a, mask = l).ne.(/ 0, 0 /))) STOP 48
+ if (any (maxloc (a, mask = l2).ne.(/ 1, 1 /))) STOP 49
+ if (any (maxloc (a, mask = l3).ne.(/ 0, 0 /))) STOP 50
+ if (any (maxloc (a, mask = l4).ne.(/ 1, 1 /))) STOP 51
+ if (any (maxloc (a, mask = l5).ne.(/ 2, 1 /))) STOP 52
a = minf
- if (maxval (a).ne.minf) call abort
- if (maxval (a, mask = l).ne.h) call abort
- if (maxval (a, mask = l2).ne.minf) call abort
- if (maxval (a, mask = l3).ne.h) call abort
- if (maxval (a, mask = l4).ne.minf) call abort
- if (maxval (a, mask = l5).ne.minf) call abort
- if (any (maxloc (a).ne.(/ 1, 1 /))) call abort
- if (any (maxloc (a, mask = l).ne.(/ 0, 0 /))) call abort
- if (any (maxloc (a, mask = l2).ne.(/ 1, 1 /))) call abort
- if (any (maxloc (a, mask = l3).ne.(/ 0, 0 /))) call abort
- if (any (maxloc (a, mask = l4).ne.(/ 1, 1 /))) call abort
- if (any (maxloc (a, mask = l5).ne.(/ 2, 1 /))) call abort
+ if (maxval (a).ne.minf) STOP 53
+ if (maxval (a, mask = l).ne.h) STOP 54
+ if (maxval (a, mask = l2).ne.minf) STOP 55
+ if (maxval (a, mask = l3).ne.h) STOP 56
+ if (maxval (a, mask = l4).ne.minf) STOP 57
+ if (maxval (a, mask = l5).ne.minf) STOP 58
+ if (any (maxloc (a).ne.(/ 1, 1 /))) STOP 59
+ if (any (maxloc (a, mask = l).ne.(/ 0, 0 /))) STOP 60
+ if (any (maxloc (a, mask = l2).ne.(/ 1, 1 /))) STOP 61
+ if (any (maxloc (a, mask = l3).ne.(/ 0, 0 /))) STOP 62
+ if (any (maxloc (a, mask = l4).ne.(/ 1, 1 /))) STOP 63
+ if (any (maxloc (a, mask = l5).ne.(/ 2, 1 /))) STOP 64
a = nan
a(1,3) = minf
- if (maxval (a).ne.minf) call abort
- if (maxval (a, mask = l).ne.h) call abort
- if (maxval (a, mask = l2).ne.minf) call abort
- if (maxval (a, mask = l3).ne.h) call abort
- if (maxval (a, mask = l4).ne.minf) call abort
- if (maxval (a, mask = l5).ne.minf) call abort
- if (any (maxloc (a).ne.(/ 1, 3 /))) call abort
- if (any (maxloc (a, mask = l).ne.(/ 0, 0 /))) call abort
- if (any (maxloc (a, mask = l2).ne.(/ 1, 3 /))) call abort
- if (any (maxloc (a, mask = l3).ne.(/ 0, 0 /))) call abort
- if (any (maxloc (a, mask = l4).ne.(/ 1, 3 /))) call abort
- if (any (maxloc (a, mask = l5).ne.(/ 1, 3 /))) call abort
+ if (maxval (a).ne.minf) STOP 65
+ if (maxval (a, mask = l).ne.h) STOP 66
+ if (maxval (a, mask = l2).ne.minf) STOP 67
+ if (maxval (a, mask = l3).ne.h) STOP 68
+ if (maxval (a, mask = l4).ne.minf) STOP 69
+ if (maxval (a, mask = l5).ne.minf) STOP 70
+ if (any (maxloc (a).ne.(/ 1, 3 /))) STOP 71
+ if (any (maxloc (a, mask = l).ne.(/ 0, 0 /))) STOP 72
+ if (any (maxloc (a, mask = l2).ne.(/ 1, 3 /))) STOP 73
+ if (any (maxloc (a, mask = l3).ne.(/ 0, 0 /))) STOP 74
+ if (any (maxloc (a, mask = l4).ne.(/ 1, 3 /))) STOP 75
+ if (any (maxloc (a, mask = l5).ne.(/ 1, 3 /))) STOP 76
end
diff --git a/gcc/testsuite/gfortran.dg/maxval_char_1.f90 b/gcc/testsuite/gfortran.dg/maxval_char_1.f90
index 2e529005ac2..ce663a34dc1 100644
--- a/gcc/testsuite/gfortran.dg/maxval_char_1.f90
+++ b/gcc/testsuite/gfortran.dg/maxval_char_1.f90
@@ -15,9 +15,9 @@ program main
write (unit=a,fmt='(I5.5)') (21-i*i+6*i,i=1,n)
res = maxval(a)
- if (res /= '00030') call abort
+ if (res /= '00030') STOP 1
res = maxval(a,dim=1)
- if (res /= '00030') call abort
+ if (res /= '00030') STOP 2
do
call random_number(r)
v = int(r * 100)
@@ -25,18 +25,18 @@ program main
end do
write (unit=b,fmt='(I5.5)') v
write (unit=res,fmt='(I5.5)') maxval(v)
- if (res /= maxval(b)) call abort
+ if (res /= maxval(b)) STOP 3
smask = .true.
- if (res /= maxval(b, smask)) call abort
+ if (res /= maxval(b, smask)) STOP 4
smask = .false.
- if (all_zero /= maxval(b, smask)) call abort
+ if (all_zero /= maxval(b, smask)) STOP 5
mask = v > 20
write (unit=res,fmt='(I5.5)') maxval(v,mask)
- if (res /= maxval(b, mask)) call abort
+ if (res /= maxval(b, mask)) STOP 6
mask = .false.
- if (maxval(b, mask) /= all_zero) call abort
+ if (maxval(b, mask) /= all_zero) STOP 7
allocate (empty(0:3,0))
res = maxval(empty)
- if (res /= all_zero) call abort
+ if (res /= all_zero) STOP 8
end program main
diff --git a/gcc/testsuite/gfortran.dg/maxval_char_2.f90 b/gcc/testsuite/gfortran.dg/maxval_char_2.f90
index c9ba125c330..2fe64cf4f86 100644
--- a/gcc/testsuite/gfortran.dg/maxval_char_2.f90
+++ b/gcc/testsuite/gfortran.dg/maxval_char_2.f90
@@ -15,7 +15,7 @@ program main
write (unit=a,fmt='(I5.5)') (21-i*i+6*i,i=1,n)
res = maxval(a)
- if (res /= 4_'00030') call abort
+ if (res /= 4_'00030') STOP 1
do
call random_number(r)
v = int(r * 100)
@@ -23,18 +23,18 @@ program main
end do
write (unit=b,fmt='(I5.5)') v
write (unit=res,fmt='(I5.5)') maxval(v)
- if (res /= maxval(b)) call abort
+ if (res /= maxval(b)) STOP 2
smask = .true.
- if (res /= maxval(b, smask)) call abort
+ if (res /= maxval(b, smask)) STOP 3
smask = .false.
- if (all_zero /= maxval(b, smask)) call abort
+ if (all_zero /= maxval(b, smask)) STOP 4
mask = v > 20
write (unit=res,fmt='(I5.5)') maxval(v,mask)
- if (res /= maxval(b, mask)) call abort
+ if (res /= maxval(b, mask)) STOP 5
mask = .false.
- if (maxval(b, mask) /= all_zero) call abort
+ if (maxval(b, mask) /= all_zero) STOP 6
allocate (empty(0:3,0))
res = maxval(empty)
- if (res /= all_zero) call abort
+ if (res /= all_zero) STOP 7
end program main
diff --git a/gcc/testsuite/gfortran.dg/maxval_char_3.f90 b/gcc/testsuite/gfortran.dg/maxval_char_3.f90
index 3fd5aa559d4..cc41ae049fb 100644
--- a/gcc/testsuite/gfortran.dg/maxval_char_3.f90
+++ b/gcc/testsuite/gfortran.dg/maxval_char_3.f90
@@ -18,33 +18,33 @@ program main
r1 = maxval(a,dim=1)
write (unit=r2,fmt='(I6.6)') maxval(v,dim=1)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 1
r1 = 'x'
write (unit=r1,fmt='(I6.6)') maxval(v,dim=1)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 2
r1 = 'y'
r1 = maxval(a,dim=2)
write (unit=r2,fmt='(I6.6)') maxval(v,dim=2)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 3
r1 = 'z'
write (unit=r1,fmt='(I6.6)') maxval(v,dim=2)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 4
allocate (a_alloc(0,1), v_alloc(0,1))
ret = 'what'
ret = maxval(a_alloc,dim=1)
- if (ret(1) /= zero) call abort
+ if (ret(1) /= zero) STOP 5
r1 = 'qq'
r1 = maxval(a, dim=1, mask=a>"000200");
- if (any(r1 /= zero .neqv. maxval(v,dim=1, mask=v>200) > 0)) call abort
- if (any(maxval(a, dim=1, mask=a>"000200") /= zero .neqv. maxval(v,dim=1, mask=v>200) > 0)) call abort
+ if (any(r1 /= zero .neqv. maxval(v,dim=1, mask=v>200) > 0)) STOP 6
+ if (any(maxval(a, dim=1, mask=a>"000200") /= zero .neqv. maxval(v,dim=1, mask=v>200) > 0)) STOP 7
r1 = 'rr'
r1 = maxval(a, dim=2, mask=a>"000200");
- if (any(r1 /= zero .neqv. maxval(v,dim=2, mask=v>200) > 0)) call abort
- if (any(maxval(a, dim=2, mask=a>"000200") /= zero .neqv. maxval(v,dim=2, mask=v>200) > 0)) call abort
+ if (any(r1 /= zero .neqv. maxval(v,dim=2, mask=v>200) > 0)) STOP 8
+ if (any(maxval(a, dim=2, mask=a>"000200") /= zero .neqv. maxval(v,dim=2, mask=v>200) > 0)) STOP 9
mask = .true.
forall (i=1:n)
@@ -54,16 +54,16 @@ program main
r1 = 'aa'
r1 = maxval(a, dim=1, mask=mask)
write(unit=r2,fmt='(I6.6)') maxval(v,dim=1, mask=mask)
- if (any(r1 /= r2)) call abort
+ if (any(r1 /= r2)) STOP 10
r1 = 'xyz'
smask = .true.
r1 = maxval(a, dim=1, mask=smask)
write (unit=r2,fmt='(I6.6)') maxval(v,dim=1)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 11
smask = .false.
r1 = 'foobar'
r1 = maxval(a, dim=1, mask=smask)
- if (any(r1 /= zero)) call abort
+ if (any(r1 /= zero)) STOP 12
end program main
diff --git a/gcc/testsuite/gfortran.dg/maxval_char_4.f90 b/gcc/testsuite/gfortran.dg/maxval_char_4.f90
index 076fba51284..6d2fb01ebad 100644
--- a/gcc/testsuite/gfortran.dg/maxval_char_4.f90
+++ b/gcc/testsuite/gfortran.dg/maxval_char_4.f90
@@ -18,33 +18,33 @@ program main
r1 = maxval(a,dim=1)
write (unit=r2,fmt='(I6.6)') maxval(v,dim=1)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 1
r1 = 4_'x'
write (unit=r1,fmt='(I6.6)') maxval(v,dim=1)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 2
r1 = 4_'y'
r1 = maxval(a,dim=2)
write (unit=r2,fmt='(I6.6)') maxval(v,dim=2)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 3
r1 = 4_'z'
write (unit=r1,fmt='(I6.6)') maxval(v,dim=2)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 4
allocate (a_alloc(0,1), v_alloc(0,1))
ret = 4_'what'
ret = maxval(a_alloc,dim=1)
- if (ret(1) /= zero) call abort
+ if (ret(1) /= zero) STOP 5
r1 = 4_'qq'
r1 = maxval(a, dim=1, mask=a>4_"000200");
- if (any(r1 /= zero .neqv. maxval(v,dim=1, mask=v>200) > 0)) call abort
- if (any(maxval(a, dim=1, mask=a>4_"000200") /= zero .neqv. maxval(v,dim=1, mask=v>200) > 0)) call abort
+ if (any(r1 /= zero .neqv. maxval(v,dim=1, mask=v>200) > 0)) STOP 6
+ if (any(maxval(a, dim=1, mask=a>4_"000200") /= zero .neqv. maxval(v,dim=1, mask=v>200) > 0)) STOP 7
r1 = 4_'rr'
r1 = maxval(a, dim=2, mask=a>4_"000200");
- if (any(r1 /= zero .neqv. maxval(v,dim=2, mask=v>200) > 0)) call abort
- if (any(maxval(a, dim=2, mask=a>4_"000200") /= zero .neqv. maxval(v,dim=2, mask=v>200) > 0)) call abort
+ if (any(r1 /= zero .neqv. maxval(v,dim=2, mask=v>200) > 0)) STOP 8
+ if (any(maxval(a, dim=2, mask=a>4_"000200") /= zero .neqv. maxval(v,dim=2, mask=v>200) > 0)) STOP 9
mask = .true.
forall (i=1:n)
@@ -54,16 +54,16 @@ program main
r1 = 4_'aa'
r1 = maxval(a, dim=1, mask=mask)
write(unit=r2,fmt='(I6.6)') maxval(v,dim=1, mask=mask)
- if (any(r1 /= r2)) call abort
+ if (any(r1 /= r2)) STOP 10
r1 = 4_'xyz'
smask = .true.
r1 = maxval(a, dim=1, mask=smask)
write (unit=r2,fmt='(I6.6)') maxval(v,dim=1)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 11
smask = .false.
r1 = 4_'foobar'
r1 = maxval(a, dim=1, mask=smask)
- if (any(r1 /= zero)) call abort
+ if (any(r1 /= zero)) STOP 12
end program main
diff --git a/gcc/testsuite/gfortran.dg/maxval_parameter_1.f90 b/gcc/testsuite/gfortran.dg/maxval_parameter_1.f90
index a8a1cb05d71..4c809d82c1c 100644
--- a/gcc/testsuite/gfortran.dg/maxval_parameter_1.f90
+++ b/gcc/testsuite/gfortran.dg/maxval_parameter_1.f90
@@ -29,23 +29,23 @@ program main
character(len=3), parameter :: cm4 = maxval (c, c<"g")
character(len=3), dimension(3), parameter :: cm5 = maxval(c,dim=1,mask=c<"p")
- if (any (im1 /= [ 2, 5, 11])) call abort
- if (im2 /= -1) call abort
- if (any (im3 /= [ -1,11])) call abort
- if (im4 /= -3) call abort
- if (any (im5 /= [-huge(im5)-1, -3, -7])) call abort ! { dg-warning "Integer outside symmetric range" }
- if (any (im6 /= [-1, -huge(im6)-1])) call abort ! { dg-warning "Integer outside symmetric range" }
+ if (any (im1 /= [ 2, 5, 11])) STOP 1
+ if (im2 /= -1) STOP 2
+ if (any (im3 /= [ -1,11])) STOP 3
+ if (im4 /= -3) STOP 4
+ if (any (im5 /= [-huge(im5)-1, -3, -7])) STOP 5! { dg-warning "Integer outside symmetric range" }
+ if (any (im6 /= [-1, -huge(im6)-1])) STOP 6! { dg-warning "Integer outside symmetric range" }
- if (any (rm1 /= [ 2., 5., 11.])) call abort
- if (rm2 /= -1.) call abort
- if (any (rm3 /= [ -1.,11.])) call abort
- if (rm4 /= -3.) call abort
- if (any (rm5 /= [-huge(rm5), -3., -7.])) call abort
- if (any (rm6 /= [-1.,-huge(rm6)])) call abort
+ if (any (rm1 /= [ 2., 5., 11.])) STOP 7
+ if (rm2 /= -1.) STOP 8
+ if (any (rm3 /= [ -1.,11.])) STOP 9
+ if (rm4 /= -3.) STOP 10
+ if (any (rm5 /= [-huge(rm5), -3., -7.])) STOP 11
+ if (any (rm6 /= [-1.,-huge(rm6)])) STOP 12
- if (cm1 /= "zui") call abort
- if (any (cm2 /= ["fgh", "qwe", "zui" ])) call abort
- if (any (cm3 /= ["qwe", "zui" ])) call abort
- if (cm4 /= "fgh") call abort
- if (any(cm5 /= [ "fgh", "jkl", "ert" ] )) call abort
+ if (cm1 /= "zui") STOP 13
+ if (any (cm2 /= ["fgh", "qwe", "zui" ])) STOP 14
+ if (any (cm3 /= ["qwe", "zui" ])) STOP 15
+ if (cm4 /= "fgh") STOP 16
+ if (any(cm5 /= [ "fgh", "jkl", "ert" ] )) STOP 17
end program main
diff --git a/gcc/testsuite/gfortran.dg/mclock.f90 b/gcc/testsuite/gfortran.dg/mclock.f90
index 5af96d0fc9f..cd28c570b28 100644
--- a/gcc/testsuite/gfortran.dg/mclock.f90
+++ b/gcc/testsuite/gfortran.dg/mclock.f90
@@ -8,6 +8,6 @@
j4 = mclock()
j8 = mclock8()
- if (i4 > j4 .or. i8 > j8 .or. i4 > i8 .or. j4 > j8) call abort
+ if (i4 > j4 .or. i8 > j8 .or. i4 > i8 .or. j4 > j8) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/merge_bits_1.F90 b/gcc/testsuite/gfortran.dg/merge_bits_1.F90
index e8f5e2af4d7..92589a619f8 100644
--- a/gcc/testsuite/gfortran.dg/merge_bits_1.F90
+++ b/gcc/testsuite/gfortran.dg/merge_bits_1.F90
@@ -11,8 +11,8 @@
end interface
#define CHECK(I,J,K) \
- if (merge_bits(I,J,K) /= ior(iand(I,K),iand(J,not(K)))) call abort ; \
- if (run_merge(I,J,K) /= merge_bits(I,J,K)) call abort
+ if (merge_bits(I,J,K) /= ior(iand(I,K),iand(J,not(K)))) STOP 1; \
+ if (run_merge(I,J,K) /= merge_bits(I,J,K)) STOP 2
CHECK(13_1,18_1,22_1)
CHECK(-13_1,18_1,22_1)
diff --git a/gcc/testsuite/gfortran.dg/merge_bits_2.F90 b/gcc/testsuite/gfortran.dg/merge_bits_2.F90
index 4f2421e02ae..b12534e6d4c 100644
--- a/gcc/testsuite/gfortran.dg/merge_bits_2.F90
+++ b/gcc/testsuite/gfortran.dg/merge_bits_2.F90
@@ -5,8 +5,8 @@
! { dg-require-effective-target fortran_integer_16 }
#define CHECK(I,J,K) \
- if (merge_bits(I,J,K) /= ior(iand(I,K),iand(J,not(K)))) call abort ; \
- if (run_merge(I,J,K) /= merge_bits(I,J,K)) call abort
+ if (merge_bits(I,J,K) /= ior(iand(I,K),iand(J,not(K)))) STOP 1; \
+ if (run_merge(I,J,K) /= merge_bits(I,J,K)) STOP 2
CHECK(13_16,18_16,22_16)
CHECK(-13_16,18_16,22_16)
diff --git a/gcc/testsuite/gfortran.dg/merge_char_1.f90 b/gcc/testsuite/gfortran.dg/merge_char_1.f90
index ece939eea06..bd4c64f69c8 100644
--- a/gcc/testsuite/gfortran.dg/merge_char_1.f90
+++ b/gcc/testsuite/gfortran.dg/merge_char_1.f90
@@ -8,9 +8,9 @@ logical :: ll(2)
ll = (/ .TRUE., .FALSE. /)
c = merge( (/ "AA", "BB" /), (/ "CC", "DD" /), ll )
-if (c(1).ne."AA" .or. c(2).ne."DD") call abort ()
+if (c(1).ne."AA" .or. c(2).ne."DD") STOP 1
c = ""
c = merge( (/ "AA", "BB" /), (/ "CC", "DD" /), (/ .TRUE., .FALSE. /) )
-if (c(1).ne."AA" .or. c(2).ne."DD") call abort ()
+if (c(1).ne."AA" .or. c(2).ne."DD") STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/merge_init_expr.f90 b/gcc/testsuite/gfortran.dg/merge_init_expr.f90
index c691aa0e325..188d3cd6aea 100644
--- a/gcc/testsuite/gfortran.dg/merge_init_expr.f90
+++ b/gcc/testsuite/gfortran.dg/merge_init_expr.f90
@@ -18,11 +18,11 @@
INTEGER, PARAMETER :: array_7(3) = MERGE ([1,2,3], -array, mask)
- IF (scalar_1 /= 1 .OR. scalar_2 /= 1) CALL abort
- IF (.NOT. ALL (array_1 == array)) CALL abort
- IF (.NOT. ALL (array_2 == [0, 0, 0])) CALL abort
- IF (.NOT. ALL (array_3 == [0, 0, 0])) CALL abort
- IF (.NOT. ALL (array_4 == array)) CALL abort
- IF (.NOT. ALL (array_5 == [1, 0, 1])) CALL abort
- IF (.NOT. ALL (array_6 == [1, -2, 3])) CALL abort
+ IF (scalar_1 /= 1 .OR. scalar_2 /= 1) STOP 1
+ IF (.NOT. ALL (array_1 == array)) STOP 2
+ IF (.NOT. ALL (array_2 == [0, 0, 0])) STOP 3
+ IF (.NOT. ALL (array_3 == [0, 0, 0])) STOP 4
+ IF (.NOT. ALL (array_4 == array)) STOP 5
+ IF (.NOT. ALL (array_5 == [1, 0, 1])) STOP 6
+ IF (.NOT. ALL (array_6 == [1, -2, 3])) STOP 7
END
diff --git a/gcc/testsuite/gfortran.dg/min_max_optional_1.f90 b/gcc/testsuite/gfortran.dg/min_max_optional_1.f90
index 250010dffb9..de263dab3f4 100644
--- a/gcc/testsuite/gfortran.dg/min_max_optional_1.f90
+++ b/gcc/testsuite/gfortran.dg/min_max_optional_1.f90
@@ -1,8 +1,8 @@
! { dg-do run }
-IF (T1(1.0,1.0) .NE. (1.0,1.0) ) CALL ABORT()
-IF (T1(1.0) .NE. (1.0,0.0)) CALL ABORT()
-IF (M1(1,2,3) .NE. 3) CALL ABORT()
-IF (M1(1,2,A4=4) .NE. 4) CALL ABORT()
+IF (T1(1.0,1.0) .NE. (1.0,1.0) ) STOP 1
+IF (T1(1.0) .NE. (1.0,0.0)) STOP 2
+IF (M1(1,2,3) .NE. 3) STOP 3
+IF (M1(1,2,A4=4) .NE. 4) STOP 4
CONTAINS
COMPLEX FUNCTION T1(X,Y)
diff --git a/gcc/testsuite/gfortran.dg/min_max_optional_5.f90 b/gcc/testsuite/gfortran.dg/min_max_optional_5.f90
index ae3344f790f..583e766be4e 100644
--- a/gcc/testsuite/gfortran.dg/min_max_optional_5.f90
+++ b/gcc/testsuite/gfortran.dg/min_max_optional_5.f90
@@ -2,12 +2,12 @@
! PR33095
!
! { dg-do run }
- if (m1(3,4) /= 4) call abort
- if (m1(3) /= 3) call abort
- if (m1() /= 2) call abort
+ if (m1(3,4) /= 4) STOP 1
+ if (m1(3) /= 3) STOP 2
+ if (m1() /= 2) STOP 3
- if (m1(3,4) /= 4) call abort
- if (m1(3) /= 3) call abort
+ if (m1(3,4) /= 4) STOP 4
+ if (m1(3) /= 3) STOP 5
contains
integer function m1(a1,a2)
integer, optional, intent(in) :: a1, a2
diff --git a/gcc/testsuite/gfortran.dg/minloc_1.f90 b/gcc/testsuite/gfortran.dg/minloc_1.f90
index b8572945b31..fe12cae9140 100644
--- a/gcc/testsuite/gfortran.dg/minloc_1.f90
+++ b/gcc/testsuite/gfortran.dg/minloc_1.f90
@@ -17,140 +17,140 @@
allocate (c(3))
a(:) = nan
ia = minloc (a)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 1
a(:) = pinf
ia = minloc (a)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 2
a(1:2) = nan
ia = minloc (a)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 3
a(2) = 1.0
ia = minloc (a)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 4
a(2) = minf
ia = minloc (a)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 5
c(:) = nan
ia = minloc (c)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 6
c(:) = pinf
ia = minloc (c)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 7
c(1:2) = nan
ia = minloc (c)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 8
c(2) = 1.0
ia = minloc (c)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 9
c(2) = minf
ia = minloc (c)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 10
l = .false.
l2(:) = .false.
a(:) = nan
ia = minloc (a, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 11
ia = minloc (a, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 12
a(:) = pinf
ia = minloc (a, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 13
ia = minloc (a, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 14
a(1:2) = nan
ia = minloc (a, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 15
ia = minloc (a, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 16
a(2) = 1.0
ia = minloc (a, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 17
ia = minloc (a, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 18
a(2) = minf
ia = minloc (a, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 19
ia = minloc (a, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 20
c(:) = nan
ia = minloc (c, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 21
ia = minloc (c, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 22
c(:) = pinf
ia = minloc (c, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 23
ia = minloc (c, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 24
c(1:2) = nan
ia = minloc (c, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 25
ia = minloc (c, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 26
c(2) = 1.0
ia = minloc (c, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 27
ia = minloc (c, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 28
c(2) = minf
ia = minloc (c, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 29
ia = minloc (c, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 30
l = .true.
l2(:) = .true.
a(:) = nan
ia = minloc (a, mask = l)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 31
ia = minloc (a, mask = l2)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 32
a(:) = pinf
ia = minloc (a, mask = l)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 33
ia = minloc (a, mask = l2)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 34
a(1:2) = nan
ia = minloc (a, mask = l)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 35
ia = minloc (a, mask = l2)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 36
a(2) = 1.0
ia = minloc (a, mask = l)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 37
ia = minloc (a, mask = l2)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 38
a(2) = minf
ia = minloc (a, mask = l)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 39
ia = minloc (a, mask = l2)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 40
c(:) = nan
ia = minloc (c, mask = l)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 41
ia = minloc (c, mask = l2)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 42
c(:) = pinf
ia = minloc (c, mask = l)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 43
ia = minloc (c, mask = l2)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 44
c(1:2) = nan
ia = minloc (c, mask = l)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 45
ia = minloc (c, mask = l2)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 46
c(2) = 1.0
ia = minloc (c, mask = l)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 47
ia = minloc (c, mask = l2)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 48
c(2) = minf
ia = minloc (c, mask = l)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 49
ia = minloc (c, mask = l2)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 50
deallocate (c)
allocate (c(-2:-3))
ia = minloc (c)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 51
end
diff --git a/gcc/testsuite/gfortran.dg/minloc_2.f90 b/gcc/testsuite/gfortran.dg/minloc_2.f90
index 7a659f786c9..cecb3de1a5e 100644
--- a/gcc/testsuite/gfortran.dg/minloc_2.f90
+++ b/gcc/testsuite/gfortran.dg/minloc_2.f90
@@ -9,114 +9,114 @@
allocate (c(3))
a(:) = 5
ia = minloc (a)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 1
a(2) = h
ia = minloc (a)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 2
a(:) = huge(h)
ia = minloc (a)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 3
a(3) = huge(h) - 1
ia = minloc (a)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 4
c(:) = 5
ia = minloc (c)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 5
c(2) = h
ia = minloc (c)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 6
c(:) = huge(h)
ia = minloc (c)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 7
c(3) = huge(h) - 1
ia = minloc (c)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 8
l = .false.
l2(:) = .false.
a(:) = 5
ia = minloc (a, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 9
ia = minloc (a, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 10
a(2) = h
ia = minloc (a, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 11
ia = minloc (a, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 12
a(:) = huge(h)
ia = minloc (a, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 13
ia = minloc (a, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 14
a(3) = huge(h) - 1
ia = minloc (a, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 15
ia = minloc (a, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 16
c(:) = 5
ia = minloc (c, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 17
ia = minloc (c, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 18
c(2) = h
ia = minloc (c, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 19
ia = minloc (c, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 20
c(:) = huge(h)
ia = minloc (c, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 21
ia = minloc (c, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 22
c(3) = huge(h) - 1
ia = minloc (c, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 23
ia = minloc (c, mask = l2)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 24
l = .true.
l2(:) = .true.
a(:) = 5
ia = minloc (a, mask = l)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 25
ia = minloc (a, mask = l2)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 26
a(2) = h
ia = minloc (a, mask = l)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 27
ia = minloc (a, mask = l2)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 28
a(:) = huge(h)
ia = minloc (a, mask = l)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 29
ia = minloc (a, mask = l2)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 30
a(3) = huge(h) - 1
ia = minloc (a, mask = l)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 31
ia = minloc (a, mask = l2)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 32
c(:) = 5
ia = minloc (c, mask = l)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 33
ia = minloc (c, mask = l2)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 34
c(2) = h
ia = minloc (c, mask = l)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 35
ia = minloc (c, mask = l2)
- if (ia(1).ne.2) call abort
+ if (ia(1).ne.2) STOP 36
c(:) = huge(h)
ia = minloc (c, mask = l)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 37
ia = minloc (c, mask = l2)
- if (ia(1).ne.1) call abort
+ if (ia(1).ne.1) STOP 38
c(3) = huge(h) - 1
ia = minloc (c, mask = l)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 39
ia = minloc (c, mask = l2)
- if (ia(1).ne.3) call abort
+ if (ia(1).ne.3) STOP 40
deallocate (c)
allocate (c(-2:-3))
ia = minloc (c)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 41
end
diff --git a/gcc/testsuite/gfortran.dg/minloc_3.f90 b/gcc/testsuite/gfortran.dg/minloc_3.f90
index 465c77c9996..14c29d002f1 100644
--- a/gcc/testsuite/gfortran.dg/minloc_3.f90
+++ b/gcc/testsuite/gfortran.dg/minloc_3.f90
@@ -17,79 +17,79 @@
e(7) = 6
g(7) = 6
ia = minloc (a)
- if (ia(1).ne.7) call abort
+ if (ia(1).ne.7) STOP 1
ia = minloc (a(::2))
- if (ia(1).ne.4) call abort
- if (any (minloc (a).ne.(/ 7 /))) call abort
- if (any (minloc (a(::2)).ne.(/ 4 /))) call abort
+ if (ia(1).ne.4) STOP 2
+ if (any (minloc (a).ne.(/ 7 /))) STOP 3
+ if (any (minloc (a(::2)).ne.(/ 4 /))) STOP 4
ia = minloc (c)
- if (ia(1).ne.7) call abort
+ if (ia(1).ne.7) STOP 5
ia = minloc (c(::2))
- if (ia(1).ne.4) call abort
- if (any (minloc (c).ne.(/ 7 /))) call abort
- if (any (minloc (c(::2)).ne.(/ 4 /))) call abort
+ if (ia(1).ne.4) STOP 6
+ if (any (minloc (c).ne.(/ 7 /))) STOP 7
+ if (any (minloc (c(::2)).ne.(/ 4 /))) STOP 8
ia = minloc (e)
- if (ia(1).ne.7) call abort
+ if (ia(1).ne.7) STOP 9
ia = minloc (e(::2))
- if (ia(1).ne.4) call abort
- if (any (minloc (e).ne.(/ 7 /))) call abort
- if (any (minloc (e(::2)).ne.(/ 4 /))) call abort
+ if (ia(1).ne.4) STOP 10
+ if (any (minloc (e).ne.(/ 7 /))) STOP 11
+ if (any (minloc (e(::2)).ne.(/ 4 /))) STOP 12
ia = minloc (g)
- if (ia(1).ne.7) call abort
+ if (ia(1).ne.7) STOP 13
ia = minloc (g(::2))
- if (ia(1).ne.4) call abort
- if (any (minloc (g).ne.(/ 7 /))) call abort
- if (any (minloc (g(::2)).ne.(/ 4 /))) call abort
+ if (ia(1).ne.4) STOP 14
+ if (any (minloc (g).ne.(/ 7 /))) STOP 15
+ if (any (minloc (g(::2)).ne.(/ 4 /))) STOP 16
l = .true.
ia = minloc (a, mask = l)
- if (ia(1).ne.7) call abort
+ if (ia(1).ne.7) STOP 17
ia = minloc (a(::2), mask = l(::2))
- if (ia(1).ne.4) call abort
- if (any (minloc (a, mask = l).ne.(/ 7 /))) call abort
- if (any (minloc (a(::2), mask = l(::2)).ne.(/ 4 /))) call abort
+ if (ia(1).ne.4) STOP 18
+ if (any (minloc (a, mask = l).ne.(/ 7 /))) STOP 19
+ if (any (minloc (a(::2), mask = l(::2)).ne.(/ 4 /))) STOP 20
ia = minloc (c, mask = l)
- if (ia(1).ne.7) call abort
+ if (ia(1).ne.7) STOP 21
ia = minloc (c(::2), mask = l(::2))
- if (ia(1).ne.4) call abort
- if (any (minloc (c, mask = l).ne.(/ 7 /))) call abort
- if (any (minloc (c(::2), mask = l(::2)).ne.(/ 4 /))) call abort
+ if (ia(1).ne.4) STOP 22
+ if (any (minloc (c, mask = l).ne.(/ 7 /))) STOP 23
+ if (any (minloc (c(::2), mask = l(::2)).ne.(/ 4 /))) STOP 24
ia = minloc (e, mask = l)
- if (ia(1).ne.7) call abort
+ if (ia(1).ne.7) STOP 25
ia = minloc (e(::2), mask = l(::2))
- if (ia(1).ne.4) call abort
- if (any (minloc (e, mask = l).ne.(/ 7 /))) call abort
- if (any (minloc (e(::2), mask = l(::2)).ne.(/ 4 /))) call abort
+ if (ia(1).ne.4) STOP 26
+ if (any (minloc (e, mask = l).ne.(/ 7 /))) STOP 27
+ if (any (minloc (e(::2), mask = l(::2)).ne.(/ 4 /))) STOP 28
ia = minloc (g, mask = l)
- if (ia(1).ne.7) call abort
+ if (ia(1).ne.7) STOP 29
ia = minloc (g(::2), mask = l(::2))
- if (ia(1).ne.4) call abort
- if (any (minloc (g, mask = l).ne.(/ 7 /))) call abort
- if (any (minloc (g(::2), mask = l(::2)).ne.(/ 4 /))) call abort
+ if (ia(1).ne.4) STOP 30
+ if (any (minloc (g, mask = l).ne.(/ 7 /))) STOP 31
+ if (any (minloc (g(::2), mask = l(::2)).ne.(/ 4 /))) STOP 32
l = .false.
ia = minloc (a, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 33
ia = minloc (a(::2), mask = l(::2))
- if (ia(1).ne.0) call abort
- if (any (minloc (a, mask = l).ne.(/ 0 /))) call abort
- if (any (minloc (a(::2), mask = l(::2)).ne.(/ 0 /))) call abort
+ if (ia(1).ne.0) STOP 34
+ if (any (minloc (a, mask = l).ne.(/ 0 /))) STOP 35
+ if (any (minloc (a(::2), mask = l(::2)).ne.(/ 0 /))) STOP 36
ia = minloc (c, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 37
ia = minloc (c(::2), mask = l(::2))
- if (ia(1).ne.0) call abort
- if (any (minloc (c, mask = l).ne.(/ 0 /))) call abort
- if (any (minloc (c(::2), mask = l(::2)).ne.(/ 0 /))) call abort
+ if (ia(1).ne.0) STOP 38
+ if (any (minloc (c, mask = l).ne.(/ 0 /))) STOP 39
+ if (any (minloc (c(::2), mask = l(::2)).ne.(/ 0 /))) STOP 40
ia = minloc (e, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 41
ia = minloc (e(::2), mask = l(::2))
- if (ia(1).ne.0) call abort
- if (any (minloc (e, mask = l).ne.(/ 0 /))) call abort
- if (any (minloc (e(::2), mask = l(::2)).ne.(/ 0 /))) call abort
+ if (ia(1).ne.0) STOP 42
+ if (any (minloc (e, mask = l).ne.(/ 0 /))) STOP 43
+ if (any (minloc (e(::2), mask = l(::2)).ne.(/ 0 /))) STOP 44
ia = minloc (g, mask = l)
- if (ia(1).ne.0) call abort
+ if (ia(1).ne.0) STOP 45
ia = minloc (g(::2), mask = l(::2))
- if (ia(1).ne.0) call abort
- if (any (minloc (g, mask = l).ne.(/ 0 /))) call abort
- if (any (minloc (g(::2), mask = l(::2)).ne.(/ 0 /))) call abort
+ if (ia(1).ne.0) STOP 46
+ if (any (minloc (g, mask = l).ne.(/ 0 /))) STOP 47
+ if (any (minloc (g(::2), mask = l(::2)).ne.(/ 0 /))) STOP 48
a = 7.0
c = 7.0
end
diff --git a/gcc/testsuite/gfortran.dg/minloc_4.f90 b/gcc/testsuite/gfortran.dg/minloc_4.f90
index 1d9c0acca07..de9f40a8956 100644
--- a/gcc/testsuite/gfortran.dg/minloc_4.f90
+++ b/gcc/testsuite/gfortran.dg/minloc_4.f90
@@ -21,20 +21,20 @@ program main
integer, parameter, dimension(2) :: b11 = minloc(i2, dim=2)
integer, parameter, dimension(3) :: b12 = minloc(i2,dim=1,mask=i2>3)
integer, parameter, dimension(2) :: b13 = minloc(i2,dim=2, mask=i2<-10)
- if (b /= 2) call abort
- if (b2 /= 0) call abort
- if (b3 /= 2) call abort
- if (b4 /= 1) call abort
- if (any(b5 /= [1, 2])) call abort
- if (any(b6 /= [0, 0])) call abort
- if (any(b7 /= [2, 1])) call abort
- if (any(b8 /= [1, 2])) call abort
- if (any(b9 /= [0, 0])) call abort
+ if (b /= 2) STOP 1
+ if (b2 /= 0) STOP 2
+ if (b3 /= 2) STOP 3
+ if (b4 /= 1) STOP 4
+ if (any(b5 /= [1, 2])) STOP 5
+ if (any(b6 /= [0, 0])) STOP 6
+ if (any(b7 /= [2, 1])) STOP 7
+ if (any(b8 /= [1, 2])) STOP 8
+ if (any(b9 /= [0, 0])) STOP 9
d = 1
- if (any(b10 /= minloc(i2,dim=d))) call abort
+ if (any(b10 /= minloc(i2,dim=d))) STOP 10
d = 2
- if (any(b11 /= minloc(i2,dim=2))) call abort
+ if (any(b11 /= minloc(i2,dim=2))) STOP 11
d = 1
- if (any(b12 /= minloc(i2, dim=d,mask=i2>3))) call abort
- if (any(b13 /= 0)) call abort
+ if (any(b12 /= minloc(i2, dim=d,mask=i2>3))) STOP 12
+ if (any(b13 /= 0)) STOP 13
end program main
diff --git a/gcc/testsuite/gfortran.dg/minloc_string_1.f90 b/gcc/testsuite/gfortran.dg/minloc_string_1.f90
index 88847cce8a2..2ef2fa8491d 100644
--- a/gcc/testsuite/gfortran.dg/minloc_string_1.f90
+++ b/gcc/testsuite/gfortran.dg/minloc_string_1.f90
@@ -28,64 +28,64 @@ program main
res1 = minloc(c)
res2 = minloc(a)
- if (any(res1 /= res2)) call abort
+ if (any(res1 /= res2)) STOP 1
res1 = minloc(c4)
- if (any(res1 /= res2)) call abort
+ if (any(res1 /= res2)) STOP 2
amask = a < 50
res1 = minloc(c,mask=amask)
res2 = minloc(a,mask=amask)
- if (any(res1 /= res2)) call abort
+ if (any(res1 /= res2)) STOP 3
amask = .false.
res1 = minloc(c,mask=amask)
- if (any(res1 /= 0)) call abort
+ if (any(res1 /= 0)) STOP 4
amask(2,3) = .true.
res1 = minloc(c,mask=amask)
- if (any(res1 /= [2,3])) call abort
+ if (any(res1 /= [2,3])) STOP 5
res1 = minloc(c,mask=.false.)
- if (any(res1 /= 0)) call abort
+ if (any(res1 /= 0)) STOP 6
res2 = minloc(a)
res1 = minloc(c,mask=.true.)
- if (any(res1 /= res2)) call abort
+ if (any(res1 /= res2)) STOP 7
q1 = minloc(c, dim=1)
q2 = minloc(a, dim=1)
- if (any(q1 /= q2)) call abort
+ if (any(q1 /= q2)) STOP 8
q1 = minloc(c, dim=2)
q2 = minloc(a, dim=2)
- if (any(q1 /= q2)) call abort
+ if (any(q1 /= q2)) STOP 9
q1 = minloc(c, dim=1, mask=amask)
q2 = minloc(a, dim=1, mask=amask)
- if (any(q1 /= q2)) call abort
+ if (any(q1 /= q2)) STOP 10
q1 = minloc(c, dim=2, mask=amask)
q2 = minloc(a, dim=2, mask=amask)
- if (any(q1 /= q2)) call abort
+ if (any(q1 /= q2)) STOP 11
amask = a < 50
q1 = minloc(c, dim=1, mask=amask)
q2 = minloc(a, dim=1, mask=amask)
- if (any(q1 /= q2)) call abort
+ if (any(q1 /= q2)) STOP 12
q1 = minloc(c, dim=2, mask=amask)
q2 = minloc(a, dim=2, mask=amask)
- if (any(q1 /= q2)) call abort
+ if (any(q1 /= q2)) STOP 13
e = reshape(c, shape(e))
f = reshape(a, shape(f))
- if (minloc(e,dim=1) /= minloc(f,dim=1)) call abort
+ if (minloc(e,dim=1) /= minloc(f,dim=1)) STOP 14
cmask = .false.
- if (minloc(e,dim=1,mask=cmask) /= 0) call abort
+ if (minloc(e,dim=1,mask=cmask) /= 0) STOP 15
cmask = f > 50
- if ( minloc(e, dim=1, mask=cmask) /= minloc (f, dim=1, mask=cmask)) call abort
+ if ( minloc(e, dim=1, mask=cmask) /= minloc (f, dim=1, mask=cmask)) STOP 16
end program main
diff --git a/gcc/testsuite/gfortran.dg/minlocval_1.f90 b/gcc/testsuite/gfortran.dg/minlocval_1.f90
index c877f1e823a..8d8f8af9af1 100644
--- a/gcc/testsuite/gfortran.dg/minlocval_1.f90
+++ b/gcc/testsuite/gfortran.dg/minlocval_1.f90
@@ -15,141 +15,141 @@
allocate (c(3))
a(:) = nan
- if (minloc (a, dim = 1).ne.1) call abort
- if (.not.isnan(minval (a, dim = 1))) call abort
+ if (minloc (a, dim = 1).ne.1) STOP 1
+ if (.not.isnan(minval (a, dim = 1))) STOP 2
a(:) = pinf
- if (minloc (a, dim = 1).ne.1) call abort
- if (minval (a, dim = 1).ne.pinf) call abort
+ if (minloc (a, dim = 1).ne.1) STOP 3
+ if (minval (a, dim = 1).ne.pinf) STOP 4
a(1:2) = nan
- if (minloc (a, dim = 1).ne.3) call abort
- if (minval (a, dim = 1).ne.pinf) call abort
+ if (minloc (a, dim = 1).ne.3) STOP 5
+ if (minval (a, dim = 1).ne.pinf) STOP 6
a(2) = 1.0
- if (minloc (a, dim = 1).ne.2) call abort
- if (minval (a, dim = 1).ne.1) call abort
+ if (minloc (a, dim = 1).ne.2) STOP 7
+ if (minval (a, dim = 1).ne.1) STOP 8
a(2) = minf
- if (minloc (a, dim = 1).ne.2) call abort
- if (minval (a, dim = 1).ne.minf) call abort
+ if (minloc (a, dim = 1).ne.2) STOP 9
+ if (minval (a, dim = 1).ne.minf) STOP 10
c(:) = nan
- if (minloc (c, dim = 1).ne.1) call abort
- if (.not.isnan(minval (c, dim = 1))) call abort
+ if (minloc (c, dim = 1).ne.1) STOP 11
+ if (.not.isnan(minval (c, dim = 1))) STOP 12
c(:) = pinf
- if (minloc (c, dim = 1).ne.1) call abort
- if (minval (c, dim = 1).ne.pinf) call abort
+ if (minloc (c, dim = 1).ne.1) STOP 13
+ if (minval (c, dim = 1).ne.pinf) STOP 14
c(1:2) = nan
- if (minloc (c, dim = 1).ne.3) call abort
- if (minval (c, dim = 1).ne.pinf) call abort
+ if (minloc (c, dim = 1).ne.3) STOP 15
+ if (minval (c, dim = 1).ne.pinf) STOP 16
c(2) = 1.0
- if (minloc (c, dim = 1).ne.2) call abort
- if (minval (c, dim = 1).ne.1) call abort
+ if (minloc (c, dim = 1).ne.2) STOP 17
+ if (minval (c, dim = 1).ne.1) STOP 18
c(2) = minf
- if (minloc (c, dim = 1).ne.2) call abort
- if (minval (c, dim = 1).ne.minf) call abort
+ if (minloc (c, dim = 1).ne.2) STOP 19
+ if (minval (c, dim = 1).ne.minf) STOP 20
l = .false.
l2(:) = .false.
a(:) = nan
- if (minloc (a, dim = 1, mask = l).ne.0) call abort
- if (minval (a, dim = 1, mask = l).ne.huge(pinf)) call abort
- if (minloc (a, dim = 1, mask = l2).ne.0) call abort
- if (minval (a, dim = 1, mask = l2).ne.huge(pinf)) call abort
+ if (minloc (a, dim = 1, mask = l).ne.0) STOP 21
+ if (minval (a, dim = 1, mask = l).ne.huge(pinf)) STOP 22
+ if (minloc (a, dim = 1, mask = l2).ne.0) STOP 23
+ if (minval (a, dim = 1, mask = l2).ne.huge(pinf)) STOP 24
a(:) = pinf
- if (minloc (a, dim = 1, mask = l).ne.0) call abort
- if (minval (a, dim = 1, mask = l).ne.huge(pinf)) call abort
- if (minloc (a, dim = 1, mask = l2).ne.0) call abort
- if (minval (a, dim = 1, mask = l2).ne.huge(pinf)) call abort
+ if (minloc (a, dim = 1, mask = l).ne.0) STOP 25
+ if (minval (a, dim = 1, mask = l).ne.huge(pinf)) STOP 26
+ if (minloc (a, dim = 1, mask = l2).ne.0) STOP 27
+ if (minval (a, dim = 1, mask = l2).ne.huge(pinf)) STOP 28
a(1:2) = nan
- if (minloc (a, dim = 1, mask = l).ne.0) call abort
- if (minval (a, dim = 1, mask = l).ne.huge(pinf)) call abort
- if (minloc (a, dim = 1, mask = l2).ne.0) call abort
- if (minval (a, dim = 1, mask = l2).ne.huge(pinf)) call abort
+ if (minloc (a, dim = 1, mask = l).ne.0) STOP 29
+ if (minval (a, dim = 1, mask = l).ne.huge(pinf)) STOP 30
+ if (minloc (a, dim = 1, mask = l2).ne.0) STOP 31
+ if (minval (a, dim = 1, mask = l2).ne.huge(pinf)) STOP 32
a(2) = 1.0
- if (minloc (a, dim = 1, mask = l).ne.0) call abort
- if (minval (a, dim = 1, mask = l).ne.huge(pinf)) call abort
- if (minloc (a, dim = 1, mask = l2).ne.0) call abort
- if (minval (a, dim = 1, mask = l2).ne.huge(pinf)) call abort
+ if (minloc (a, dim = 1, mask = l).ne.0) STOP 33
+ if (minval (a, dim = 1, mask = l).ne.huge(pinf)) STOP 34
+ if (minloc (a, dim = 1, mask = l2).ne.0) STOP 35
+ if (minval (a, dim = 1, mask = l2).ne.huge(pinf)) STOP 36
a(2) = minf
- if (minloc (a, dim = 1, mask = l).ne.0) call abort
- if (minval (a, dim = 1, mask = l).ne.huge(pinf)) call abort
- if (minloc (a, dim = 1, mask = l2).ne.0) call abort
- if (minval (a, dim = 1, mask = l2).ne.huge(pinf)) call abort
+ if (minloc (a, dim = 1, mask = l).ne.0) STOP 37
+ if (minval (a, dim = 1, mask = l).ne.huge(pinf)) STOP 38
+ if (minloc (a, dim = 1, mask = l2).ne.0) STOP 39
+ if (minval (a, dim = 1, mask = l2).ne.huge(pinf)) STOP 40
c(:) = nan
- if (minloc (c, dim = 1, mask = l).ne.0) call abort
- if (minval (c, dim = 1, mask = l).ne.huge(pinf)) call abort
- if (minloc (c, dim = 1, mask = l2).ne.0) call abort
- if (minval (c, dim = 1, mask = l2).ne.huge(pinf)) call abort
+ if (minloc (c, dim = 1, mask = l).ne.0) STOP 41
+ if (minval (c, dim = 1, mask = l).ne.huge(pinf)) STOP 42
+ if (minloc (c, dim = 1, mask = l2).ne.0) STOP 43
+ if (minval (c, dim = 1, mask = l2).ne.huge(pinf)) STOP 44
c(:) = pinf
- if (minloc (c, dim = 1, mask = l).ne.0) call abort
- if (minval (c, dim = 1, mask = l).ne.huge(pinf)) call abort
- if (minloc (c, dim = 1, mask = l2).ne.0) call abort
- if (minval (c, dim = 1, mask = l2).ne.huge(pinf)) call abort
+ if (minloc (c, dim = 1, mask = l).ne.0) STOP 45
+ if (minval (c, dim = 1, mask = l).ne.huge(pinf)) STOP 46
+ if (minloc (c, dim = 1, mask = l2).ne.0) STOP 47
+ if (minval (c, dim = 1, mask = l2).ne.huge(pinf)) STOP 48
c(1:2) = nan
- if (minloc (c, dim = 1, mask = l).ne.0) call abort
- if (minval (c, dim = 1, mask = l).ne.huge(pinf)) call abort
- if (minloc (c, dim = 1, mask = l2).ne.0) call abort
- if (minval (c, dim = 1, mask = l2).ne.huge(pinf)) call abort
+ if (minloc (c, dim = 1, mask = l).ne.0) STOP 49
+ if (minval (c, dim = 1, mask = l).ne.huge(pinf)) STOP 50
+ if (minloc (c, dim = 1, mask = l2).ne.0) STOP 51
+ if (minval (c, dim = 1, mask = l2).ne.huge(pinf)) STOP 52
c(2) = 1.0
- if (minloc (c, dim = 1, mask = l).ne.0) call abort
- if (minval (c, dim = 1, mask = l).ne.huge(pinf)) call abort
- if (minloc (c, dim = 1, mask = l2).ne.0) call abort
- if (minval (c, dim = 1, mask = l2).ne.huge(pinf)) call abort
+ if (minloc (c, dim = 1, mask = l).ne.0) STOP 53
+ if (minval (c, dim = 1, mask = l).ne.huge(pinf)) STOP 54
+ if (minloc (c, dim = 1, mask = l2).ne.0) STOP 55
+ if (minval (c, dim = 1, mask = l2).ne.huge(pinf)) STOP 56
c(2) = minf
- if (minloc (c, dim = 1, mask = l).ne.0) call abort
- if (minval (c, dim = 1, mask = l).ne.huge(pinf)) call abort
- if (minloc (c, dim = 1, mask = l2).ne.0) call abort
- if (minval (c, dim = 1, mask = l2).ne.huge(pinf)) call abort
+ if (minloc (c, dim = 1, mask = l).ne.0) STOP 57
+ if (minval (c, dim = 1, mask = l).ne.huge(pinf)) STOP 58
+ if (minloc (c, dim = 1, mask = l2).ne.0) STOP 59
+ if (minval (c, dim = 1, mask = l2).ne.huge(pinf)) STOP 60
l = .true.
l2(:) = .true.
a(:) = nan
- if (minloc (a, dim = 1, mask = l).ne.1) call abort
- if (.not.isnan(minval (a, dim = 1, mask = l))) call abort
- if (minloc (a, dim = 1, mask = l2).ne.1) call abort
- if (.not.isnan(minval (a, dim = 1, mask = l2))) call abort
+ if (minloc (a, dim = 1, mask = l).ne.1) STOP 61
+ if (.not.isnan(minval (a, dim = 1, mask = l))) STOP 62
+ if (minloc (a, dim = 1, mask = l2).ne.1) STOP 63
+ if (.not.isnan(minval (a, dim = 1, mask = l2))) STOP 64
a(:) = pinf
- if (minloc (a, dim = 1, mask = l).ne.1) call abort
- if (minval (a, dim = 1, mask = l).ne.pinf) call abort
- if (minloc (a, dim = 1, mask = l2).ne.1) call abort
- if (minval (a, dim = 1, mask = l2).ne.pinf) call abort
+ if (minloc (a, dim = 1, mask = l).ne.1) STOP 65
+ if (minval (a, dim = 1, mask = l).ne.pinf) STOP 66
+ if (minloc (a, dim = 1, mask = l2).ne.1) STOP 67
+ if (minval (a, dim = 1, mask = l2).ne.pinf) STOP 68
a(1:2) = nan
- if (minloc (a, dim = 1, mask = l).ne.3) call abort
- if (minval (a, dim = 1, mask = l).ne.pinf) call abort
- if (minloc (a, dim = 1, mask = l2).ne.3) call abort
- if (minval (a, dim = 1, mask = l2).ne.pinf) call abort
+ if (minloc (a, dim = 1, mask = l).ne.3) STOP 69
+ if (minval (a, dim = 1, mask = l).ne.pinf) STOP 70
+ if (minloc (a, dim = 1, mask = l2).ne.3) STOP 71
+ if (minval (a, dim = 1, mask = l2).ne.pinf) STOP 72
a(2) = 1.0
- if (minloc (a, dim = 1, mask = l).ne.2) call abort
- if (minval (a, dim = 1, mask = l).ne.1) call abort
- if (minloc (a, dim = 1, mask = l2).ne.2) call abort
- if (minval (a, dim = 1, mask = l2).ne.1) call abort
+ if (minloc (a, dim = 1, mask = l).ne.2) STOP 73
+ if (minval (a, dim = 1, mask = l).ne.1) STOP 74
+ if (minloc (a, dim = 1, mask = l2).ne.2) STOP 75
+ if (minval (a, dim = 1, mask = l2).ne.1) STOP 76
a(2) = minf
- if (minloc (a, dim = 1, mask = l).ne.2) call abort
- if (minval (a, dim = 1, mask = l).ne.minf) call abort
- if (minloc (a, dim = 1, mask = l2).ne.2) call abort
- if (minval (a, dim = 1, mask = l2).ne.minf) call abort
+ if (minloc (a, dim = 1, mask = l).ne.2) STOP 77
+ if (minval (a, dim = 1, mask = l).ne.minf) STOP 78
+ if (minloc (a, dim = 1, mask = l2).ne.2) STOP 79
+ if (minval (a, dim = 1, mask = l2).ne.minf) STOP 80
c(:) = nan
- if (minloc (c, dim = 1, mask = l).ne.1) call abort
- if (.not.isnan(minval (c, dim = 1, mask = l))) call abort
- if (minloc (c, dim = 1, mask = l2).ne.1) call abort
- if (.not.isnan(minval (c, dim = 1, mask = l2))) call abort
+ if (minloc (c, dim = 1, mask = l).ne.1) STOP 81
+ if (.not.isnan(minval (c, dim = 1, mask = l))) STOP 82
+ if (minloc (c, dim = 1, mask = l2).ne.1) STOP 83
+ if (.not.isnan(minval (c, dim = 1, mask = l2))) STOP 84
c(:) = pinf
- if (minloc (c, dim = 1, mask = l).ne.1) call abort
- if (minval (c, dim = 1, mask = l).ne.pinf) call abort
- if (minloc (c, dim = 1, mask = l2).ne.1) call abort
- if (minval (c, dim = 1, mask = l2).ne.pinf) call abort
+ if (minloc (c, dim = 1, mask = l).ne.1) STOP 85
+ if (minval (c, dim = 1, mask = l).ne.pinf) STOP 86
+ if (minloc (c, dim = 1, mask = l2).ne.1) STOP 87
+ if (minval (c, dim = 1, mask = l2).ne.pinf) STOP 88
c(1:2) = nan
- if (minloc (c, dim = 1, mask = l).ne.3) call abort
- if (minval (c, dim = 1, mask = l).ne.pinf) call abort
- if (minloc (c, dim = 1, mask = l2).ne.3) call abort
- if (minval (c, dim = 1, mask = l2).ne.pinf) call abort
+ if (minloc (c, dim = 1, mask = l).ne.3) STOP 89
+ if (minval (c, dim = 1, mask = l).ne.pinf) STOP 90
+ if (minloc (c, dim = 1, mask = l2).ne.3) STOP 91
+ if (minval (c, dim = 1, mask = l2).ne.pinf) STOP 92
c(2) = 1.0
- if (minloc (c, dim = 1, mask = l).ne.2) call abort
- if (minval (c, dim = 1, mask = l).ne.1) call abort
- if (minloc (c, dim = 1, mask = l2).ne.2) call abort
- if (minval (c, dim = 1, mask = l2).ne.1) call abort
+ if (minloc (c, dim = 1, mask = l).ne.2) STOP 93
+ if (minval (c, dim = 1, mask = l).ne.1) STOP 94
+ if (minloc (c, dim = 1, mask = l2).ne.2) STOP 95
+ if (minval (c, dim = 1, mask = l2).ne.1) STOP 96
c(2) = minf
- if (minloc (c, dim = 1, mask = l).ne.2) call abort
- if (minval (c, dim = 1, mask = l).ne.minf) call abort
- if (minloc (c, dim = 1, mask = l2).ne.2) call abort
- if (minval (c, dim = 1, mask = l2).ne.minf) call abort
+ if (minloc (c, dim = 1, mask = l).ne.2) STOP 97
+ if (minval (c, dim = 1, mask = l).ne.minf) STOP 98
+ if (minloc (c, dim = 1, mask = l2).ne.2) STOP 99
+ if (minval (c, dim = 1, mask = l2).ne.minf) STOP 100
deallocate (c)
allocate (c(-2:-3))
- if (minloc (c, dim = 1).ne.0) call abort
- if (minval (c, dim = 1).ne.huge(pinf)) call abort
+ if (minloc (c, dim = 1).ne.0) STOP 101
+ if (minval (c, dim = 1).ne.huge(pinf)) STOP 102
end
diff --git a/gcc/testsuite/gfortran.dg/minlocval_2.f90 b/gcc/testsuite/gfortran.dg/minlocval_2.f90
index 8e04dc6ded8..637bec8f3ec 100644
--- a/gcc/testsuite/gfortran.dg/minlocval_2.f90
+++ b/gcc/testsuite/gfortran.dg/minlocval_2.f90
@@ -8,115 +8,115 @@
h = h - 1
allocate (c(3))
a(:) = 5
- if (minloc (a, dim = 1).ne.1) call abort
- if (minval (a, dim = 1).ne.5) call abort
+ if (minloc (a, dim = 1).ne.1) STOP 1
+ if (minval (a, dim = 1).ne.5) STOP 2
a(2) = h
- if (minloc (a, dim = 1).ne.2) call abort
- if (minval (a, dim = 1).ne.h) call abort
+ if (minloc (a, dim = 1).ne.2) STOP 3
+ if (minval (a, dim = 1).ne.h) STOP 4
a(:) = huge(h)
- if (minloc (a, dim = 1).ne.1) call abort
- if (minval (a, dim = 1).ne.huge(h)) call abort
+ if (minloc (a, dim = 1).ne.1) STOP 5
+ if (minval (a, dim = 1).ne.huge(h)) STOP 6
a(3) = huge(h) - 1
- if (minloc (a, dim = 1).ne.3) call abort
- if (minval (a, dim = 1).ne.huge(h)-1) call abort
+ if (minloc (a, dim = 1).ne.3) STOP 7
+ if (minval (a, dim = 1).ne.huge(h)-1) STOP 8
c(:) = 5
- if (minloc (c, dim = 1).ne.1) call abort
- if (minval (c, dim = 1).ne.5) call abort
+ if (minloc (c, dim = 1).ne.1) STOP 9
+ if (minval (c, dim = 1).ne.5) STOP 10
c(2) = h
- if (minloc (c, dim = 1).ne.2) call abort
- if (minval (c, dim = 1).ne.h) call abort
+ if (minloc (c, dim = 1).ne.2) STOP 11
+ if (minval (c, dim = 1).ne.h) STOP 12
c(:) = huge(h)
- if (minloc (c, dim = 1).ne.1) call abort
- if (minval (c, dim = 1).ne.huge(h)) call abort
+ if (minloc (c, dim = 1).ne.1) STOP 13
+ if (minval (c, dim = 1).ne.huge(h)) STOP 14
c(3) = huge(h) - 1
- if (minloc (c, dim = 1).ne.3) call abort
- if (minval (c, dim = 1).ne.huge(h)-1) call abort
+ if (minloc (c, dim = 1).ne.3) STOP 15
+ if (minval (c, dim = 1).ne.huge(h)-1) STOP 16
l = .false.
l2(:) = .false.
a(:) = 5
- if (minloc (a, dim = 1, mask = l).ne.0) call abort
- if (minval (a, dim = 1, mask = l).ne.huge(h)) call abort
- if (minloc (a, dim = 1, mask = l2).ne.0) call abort
- if (minval (a, dim = 1, mask = l2).ne.huge(h)) call abort
+ if (minloc (a, dim = 1, mask = l).ne.0) STOP 17
+ if (minval (a, dim = 1, mask = l).ne.huge(h)) STOP 18
+ if (minloc (a, dim = 1, mask = l2).ne.0) STOP 19
+ if (minval (a, dim = 1, mask = l2).ne.huge(h)) STOP 20
a(2) = h
- if (minloc (a, dim = 1, mask = l).ne.0) call abort
- if (minval (a, dim = 1, mask = l).ne.huge(h)) call abort
- if (minloc (a, dim = 1, mask = l2).ne.0) call abort
- if (minval (a, dim = 1, mask = l2).ne.huge(h)) call abort
+ if (minloc (a, dim = 1, mask = l).ne.0) STOP 21
+ if (minval (a, dim = 1, mask = l).ne.huge(h)) STOP 22
+ if (minloc (a, dim = 1, mask = l2).ne.0) STOP 23
+ if (minval (a, dim = 1, mask = l2).ne.huge(h)) STOP 24
a(:) = huge(h)
- if (minloc (a, dim = 1, mask = l).ne.0) call abort
- if (minval (a, dim = 1, mask = l).ne.huge(h)) call abort
- if (minloc (a, dim = 1, mask = l2).ne.0) call abort
- if (minval (a, dim = 1, mask = l2).ne.huge(h)) call abort
+ if (minloc (a, dim = 1, mask = l).ne.0) STOP 25
+ if (minval (a, dim = 1, mask = l).ne.huge(h)) STOP 26
+ if (minloc (a, dim = 1, mask = l2).ne.0) STOP 27
+ if (minval (a, dim = 1, mask = l2).ne.huge(h)) STOP 28
a(3) = huge(h) - 1
- if (minloc (a, dim = 1, mask = l).ne.0) call abort
- if (minval (a, dim = 1, mask = l).ne.huge(h)) call abort
- if (minloc (a, dim = 1, mask = l2).ne.0) call abort
- if (minval (a, dim = 1, mask = l2).ne.huge(h)) call abort
+ if (minloc (a, dim = 1, mask = l).ne.0) STOP 29
+ if (minval (a, dim = 1, mask = l).ne.huge(h)) STOP 30
+ if (minloc (a, dim = 1, mask = l2).ne.0) STOP 31
+ if (minval (a, dim = 1, mask = l2).ne.huge(h)) STOP 32
c(:) = 5
- if (minloc (c, dim = 1, mask = l).ne.0) call abort
- if (minval (c, dim = 1, mask = l).ne.huge(h)) call abort
- if (minloc (c, dim = 1, mask = l2).ne.0) call abort
- if (minval (c, dim = 1, mask = l2).ne.huge(h)) call abort
+ if (minloc (c, dim = 1, mask = l).ne.0) STOP 33
+ if (minval (c, dim = 1, mask = l).ne.huge(h)) STOP 34
+ if (minloc (c, dim = 1, mask = l2).ne.0) STOP 35
+ if (minval (c, dim = 1, mask = l2).ne.huge(h)) STOP 36
c(2) = h
- if (minloc (c, dim = 1, mask = l).ne.0) call abort
- if (minval (c, dim = 1, mask = l).ne.huge(h)) call abort
- if (minloc (c, dim = 1, mask = l2).ne.0) call abort
- if (minval (c, dim = 1, mask = l2).ne.huge(h)) call abort
+ if (minloc (c, dim = 1, mask = l).ne.0) STOP 37
+ if (minval (c, dim = 1, mask = l).ne.huge(h)) STOP 38
+ if (minloc (c, dim = 1, mask = l2).ne.0) STOP 39
+ if (minval (c, dim = 1, mask = l2).ne.huge(h)) STOP 40
c(:) = huge(h)
- if (minloc (c, dim = 1, mask = l).ne.0) call abort
- if (minval (c, dim = 1, mask = l).ne.huge(h)) call abort
- if (minloc (c, dim = 1, mask = l2).ne.0) call abort
- if (minval (c, dim = 1, mask = l2).ne.huge(h)) call abort
+ if (minloc (c, dim = 1, mask = l).ne.0) STOP 41
+ if (minval (c, dim = 1, mask = l).ne.huge(h)) STOP 42
+ if (minloc (c, dim = 1, mask = l2).ne.0) STOP 43
+ if (minval (c, dim = 1, mask = l2).ne.huge(h)) STOP 44
c(3) = huge(h) - 1
- if (minloc (c, dim = 1, mask = l).ne.0) call abort
- if (minval (c, dim = 1, mask = l).ne.huge(h)) call abort
- if (minloc (c, dim = 1, mask = l2).ne.0) call abort
- if (minval (c, dim = 1, mask = l2).ne.huge(h)) call abort
+ if (minloc (c, dim = 1, mask = l).ne.0) STOP 45
+ if (minval (c, dim = 1, mask = l).ne.huge(h)) STOP 46
+ if (minloc (c, dim = 1, mask = l2).ne.0) STOP 47
+ if (minval (c, dim = 1, mask = l2).ne.huge(h)) STOP 48
l = .true.
l2(:) = .true.
a(:) = 5
- if (minloc (a, dim = 1, mask = l).ne.1) call abort
- if (minval (a, dim = 1, mask = l).ne.5) call abort
- if (minloc (a, dim = 1, mask = l2).ne.1) call abort
- if (minval (a, dim = 1, mask = l2).ne.5) call abort
+ if (minloc (a, dim = 1, mask = l).ne.1) STOP 49
+ if (minval (a, dim = 1, mask = l).ne.5) STOP 50
+ if (minloc (a, dim = 1, mask = l2).ne.1) STOP 51
+ if (minval (a, dim = 1, mask = l2).ne.5) STOP 52
a(2) = h
- if (minloc (a, dim = 1, mask = l).ne.2) call abort
- if (minval (a, dim = 1, mask = l).ne.h) call abort
- if (minloc (a, dim = 1, mask = l2).ne.2) call abort
- if (minval (a, dim = 1, mask = l2).ne.h) call abort
+ if (minloc (a, dim = 1, mask = l).ne.2) STOP 53
+ if (minval (a, dim = 1, mask = l).ne.h) STOP 54
+ if (minloc (a, dim = 1, mask = l2).ne.2) STOP 55
+ if (minval (a, dim = 1, mask = l2).ne.h) STOP 56
a(:) = huge(h)
- if (minloc (a, dim = 1, mask = l).ne.1) call abort
- if (minval (a, dim = 1, mask = l).ne.huge(h)) call abort
- if (minloc (a, dim = 1, mask = l2).ne.1) call abort
- if (minval (a, dim = 1, mask = l2).ne.huge(h)) call abort
+ if (minloc (a, dim = 1, mask = l).ne.1) STOP 57
+ if (minval (a, dim = 1, mask = l).ne.huge(h)) STOP 58
+ if (minloc (a, dim = 1, mask = l2).ne.1) STOP 59
+ if (minval (a, dim = 1, mask = l2).ne.huge(h)) STOP 60
a(3) = huge(h) - 1
- if (minloc (a, dim = 1, mask = l).ne.3) call abort
- if (minval (a, dim = 1, mask = l).ne.huge(h)-1) call abort
- if (minloc (a, dim = 1, mask = l2).ne.3) call abort
- if (minval (a, dim = 1, mask = l2).ne.huge(h)-1) call abort
+ if (minloc (a, dim = 1, mask = l).ne.3) STOP 61
+ if (minval (a, dim = 1, mask = l).ne.huge(h)-1) STOP 62
+ if (minloc (a, dim = 1, mask = l2).ne.3) STOP 63
+ if (minval (a, dim = 1, mask = l2).ne.huge(h)-1) STOP 64
c(:) = 5
- if (minloc (c, dim = 1, mask = l).ne.1) call abort
- if (minval (c, dim = 1, mask = l).ne.5) call abort
- if (minloc (c, dim = 1, mask = l2).ne.1) call abort
- if (minval (c, dim = 1, mask = l2).ne.5) call abort
+ if (minloc (c, dim = 1, mask = l).ne.1) STOP 65
+ if (minval (c, dim = 1, mask = l).ne.5) STOP 66
+ if (minloc (c, dim = 1, mask = l2).ne.1) STOP 67
+ if (minval (c, dim = 1, mask = l2).ne.5) STOP 68
c(2) = h
- if (minloc (c, dim = 1, mask = l).ne.2) call abort
- if (minval (c, dim = 1, mask = l).ne.h) call abort
- if (minloc (c, dim = 1, mask = l2).ne.2) call abort
- if (minval (c, dim = 1, mask = l2).ne.h) call abort
+ if (minloc (c, dim = 1, mask = l).ne.2) STOP 69
+ if (minval (c, dim = 1, mask = l).ne.h) STOP 70
+ if (minloc (c, dim = 1, mask = l2).ne.2) STOP 71
+ if (minval (c, dim = 1, mask = l2).ne.h) STOP 72
c(:) = huge(h)
- if (minloc (c, dim = 1, mask = l).ne.1) call abort
- if (minval (c, dim = 1, mask = l).ne.huge(h)) call abort
- if (minloc (c, dim = 1, mask = l2).ne.1) call abort
- if (minval (c, dim = 1, mask = l2).ne.huge(h)) call abort
+ if (minloc (c, dim = 1, mask = l).ne.1) STOP 73
+ if (minval (c, dim = 1, mask = l).ne.huge(h)) STOP 74
+ if (minloc (c, dim = 1, mask = l2).ne.1) STOP 75
+ if (minval (c, dim = 1, mask = l2).ne.huge(h)) STOP 76
c(3) = huge(h) - 1
- if (minloc (c, dim = 1, mask = l).ne.3) call abort
- if (minval (c, dim = 1, mask = l).ne.huge(h)-1) call abort
- if (minloc (c, dim = 1, mask = l2).ne.3) call abort
- if (minval (c, dim = 1, mask = l2).ne.huge(h)-1) call abort
+ if (minloc (c, dim = 1, mask = l).ne.3) STOP 77
+ if (minval (c, dim = 1, mask = l).ne.huge(h)-1) STOP 78
+ if (minloc (c, dim = 1, mask = l2).ne.3) STOP 79
+ if (minval (c, dim = 1, mask = l2).ne.huge(h)-1) STOP 80
deallocate (c)
allocate (c(-2:-3))
- if (minloc (c, dim = 1).ne.0) call abort
- if (minval (c, dim = 1).ne.huge(h)) call abort
+ if (minloc (c, dim = 1).ne.0) STOP 81
+ if (minval (c, dim = 1).ne.huge(h)) STOP 82
end
diff --git a/gcc/testsuite/gfortran.dg/minlocval_3.f90 b/gcc/testsuite/gfortran.dg/minlocval_3.f90
index 5b25d057769..56dd4470617 100644
--- a/gcc/testsuite/gfortran.dg/minlocval_3.f90
+++ b/gcc/testsuite/gfortran.dg/minlocval_3.f90
@@ -34,250 +34,250 @@
h(5, 5) = 6
h(5, 6) = 5
h(6, 7) = 4
- if (minloc (a, dim = 1).ne.7) call abort
- if (minval (a, dim = 1).ne.6.0) call abort
- if (minloc (a(::2), dim = 1).ne.4) call abort
- if (minval (a(::2), dim = 1).ne.6.0) call abort
- if (any (minloc (a).ne.(/ 7 /))) call abort
- if (minval (a).ne.6.0) call abort
- if (any (minloc (a(::2)).ne.(/ 4 /))) call abort
- if (minval (a(::2)).ne.6.0) call abort
- if (any (minloc (b, dim = 1).ne.(/ 1, 1, 1, 1, 5, 5, 6, 1, 1, 1 /))) call abort
- if (any (minval (b, dim = 1).ne.(/ 7.0, 7.0, 7.0, 7.0, 6.0, 5.0, 4.0, 7.0, 7.0, 7.0 /))) call abort
- if (any (minloc (b(::2,::2), dim = 1).ne.(/ 1, 1, 3, 1, 1 /))) call abort
- if (any (minval (b(::2,::2), dim = 1).ne.(/ 7.0, 7.0, 6.0, 7.0, 7.0 /))) call abort
- if (any (minloc (b, dim = 2).ne.(/ 1, 1, 1, 1, 6, 7, 1, 1, 1, 1 /))) call abort
- if (any (minval (b, dim = 2).ne.(/ 7.0, 7.0, 7.0, 7.0, 5.0, 4.0, 7.0, 7.0, 7.0, 7.0 /))) call abort
- if (any (minloc (b(::2,::2), dim = 2).ne.(/ 1, 1, 3, 1, 1 /))) call abort
- if (any (minval (b(::2,::2), dim = 2).ne.(/ 7.0, 7.0, 6.0, 7.0, 7.0 /))) call abort
- if (any (minloc (b).ne.(/ 6, 7 /))) call abort
- if (minval (b).ne.4.0) call abort
- if (any (minloc (b(::2,::2)).ne.(/ 3, 3 /))) call abort
- if (minval (b(::2,::2)).ne.6.0) call abort
- if (minloc (c, dim = 1).ne.7) call abort
- if (minval (c, dim = 1).ne.6.0) call abort
- if (minloc (c(::2), dim = 1).ne.4) call abort
- if (minval (c(::2), dim = 1).ne.6.0) call abort
- if (any (minloc (c).ne.(/ 7 /))) call abort
- if (minval (c).ne.6.0) call abort
- if (any (minloc (c(::2)).ne.(/ 4 /))) call abort
- if (minval (c(::2)).ne.6.0) call abort
- if (any (minloc (d, dim = 1).ne.(/ 1, 1, 1, 1, 5, 5, 6, 1, 1, 1 /))) call abort
- if (any (minval (d, dim = 1).ne.(/ 7.0, 7.0, 7.0, 7.0, 6.0, 5.0, 4.0, 7.0, 7.0, 7.0 /))) call abort
- if (any (minloc (d(::2,::2), dim = 1).ne.(/ 1, 1, 3, 1, 1 /))) call abort
- if (any (minval (d(::2,::2), dim = 1).ne.(/ 7.0, 7.0, 6.0, 7.0, 7.0 /))) call abort
- if (any (minloc (d, dim = 2).ne.(/ 1, 1, 1, 1, 6, 7, 1, 1, 1, 1 /))) call abort
- if (any (minval (d, dim = 2).ne.(/ 7.0, 7.0, 7.0, 7.0, 5.0, 4.0, 7.0, 7.0, 7.0, 7.0 /))) call abort
- if (any (minloc (d(::2,::2), dim = 2).ne.(/ 1, 1, 3, 1, 1 /))) call abort
- if (any (minval (d(::2,::2), dim = 2).ne.(/ 7.0, 7.0, 6.0, 7.0, 7.0 /))) call abort
- if (any (minloc (d).ne.(/ 6, 7 /))) call abort
- if (minval (d).ne.4.0) call abort
- if (any (minloc (d(::2,::2)).ne.(/ 3, 3 /))) call abort
- if (minval (d(::2,::2)).ne.6.0) call abort
- if (minloc (e, dim = 1).ne.7) call abort
- if (minval (e, dim = 1).ne.6) call abort
- if (minloc (e(::2), dim = 1).ne.4) call abort
- if (minval (e(::2), dim = 1).ne.6) call abort
- if (any (minloc (e).ne.(/ 7 /))) call abort
- if (minval (e).ne.6) call abort
- if (any (minloc (e(::2)).ne.(/ 4 /))) call abort
- if (minval (e(::2)).ne.6) call abort
- if (any (minloc (f, dim = 1).ne.(/ 1, 1, 1, 1, 5, 5, 6, 1, 1, 1 /))) call abort
- if (any (minval (f, dim = 1).ne.(/ 7, 7, 7, 7, 6, 5, 4, 7, 7, 7 /))) call abort
- if (any (minloc (f(::2,::2), dim = 1).ne.(/ 1, 1, 3, 1, 1 /))) call abort
- if (any (minval (f(::2,::2), dim = 1).ne.(/ 7, 7, 6, 7, 7 /))) call abort
- if (any (minloc (f, dim = 2).ne.(/ 1, 1, 1, 1, 6, 7, 1, 1, 1, 1 /))) call abort
- if (any (minval (f, dim = 2).ne.(/ 7, 7, 7, 7, 5, 4, 7, 7, 7, 7 /))) call abort
- if (any (minloc (f(::2,::2), dim = 2).ne.(/ 1, 1, 3, 1, 1 /))) call abort
- if (any (minval (f(::2,::2), dim = 2).ne.(/ 7, 7, 6, 7, 7 /))) call abort
- if (any (minloc (f).ne.(/ 6, 7 /))) call abort
- if (minval (f).ne.4) call abort
- if (any (minloc (f(::2,::2)).ne.(/ 3, 3 /))) call abort
- if (minval (f(::2,::2)).ne.6) call abort
- if (minloc (g, dim = 1).ne.7) call abort
- if (minval (g, dim = 1).ne.6) call abort
- if (minloc (g(::2), dim = 1).ne.4) call abort
- if (minval (g(::2), dim = 1).ne.6) call abort
- if (any (minloc (g).ne.(/ 7 /))) call abort
- if (minval (g).ne.6) call abort
- if (any (minloc (g(::2)).ne.(/ 4 /))) call abort
- if (minval (g(::2)).ne.6) call abort
- if (any (minloc (h, dim = 1).ne.(/ 1, 1, 1, 1, 5, 5, 6, 1, 1, 1 /))) call abort
- if (any (minval (h, dim = 1).ne.(/ 7, 7, 7, 7, 6, 5, 4, 7, 7, 7 /))) call abort
- if (any (minloc (h(::2,::2), dim = 1).ne.(/ 1, 1, 3, 1, 1 /))) call abort
- if (any (minval (h(::2,::2), dim = 1).ne.(/ 7, 7, 6, 7, 7 /))) call abort
- if (any (minloc (h, dim = 2).ne.(/ 1, 1, 1, 1, 6, 7, 1, 1, 1, 1 /))) call abort
- if (any (minval (h, dim = 2).ne.(/ 7, 7, 7, 7, 5, 4, 7, 7, 7, 7 /))) call abort
- if (any (minloc (h(::2,::2), dim = 2).ne.(/ 1, 1, 3, 1, 1 /))) call abort
- if (any (minval (h(::2,::2), dim = 2).ne.(/ 7, 7, 6, 7, 7 /))) call abort
- if (any (minloc (h).ne.(/ 6, 7 /))) call abort
- if (minval (h).ne.4) call abort
- if (any (minloc (h(::2,::2)).ne.(/ 3, 3 /))) call abort
- if (minval (h(::2,::2)).ne.6) call abort
+ if (minloc (a, dim = 1).ne.7) STOP 1
+ if (minval (a, dim = 1).ne.6.0) STOP 2
+ if (minloc (a(::2), dim = 1).ne.4) STOP 3
+ if (minval (a(::2), dim = 1).ne.6.0) STOP 4
+ if (any (minloc (a).ne.(/ 7 /))) STOP 5
+ if (minval (a).ne.6.0) STOP 6
+ if (any (minloc (a(::2)).ne.(/ 4 /))) STOP 7
+ if (minval (a(::2)).ne.6.0) STOP 8
+ if (any (minloc (b, dim = 1).ne.(/ 1, 1, 1, 1, 5, 5, 6, 1, 1, 1 /))) STOP 9
+ if (any (minval (b, dim = 1).ne.(/ 7.0, 7.0, 7.0, 7.0, 6.0, 5.0, 4.0, 7.0, 7.0, 7.0 /))) STOP 10
+ if (any (minloc (b(::2,::2), dim = 1).ne.(/ 1, 1, 3, 1, 1 /))) STOP 11
+ if (any (minval (b(::2,::2), dim = 1).ne.(/ 7.0, 7.0, 6.0, 7.0, 7.0 /))) STOP 12
+ if (any (minloc (b, dim = 2).ne.(/ 1, 1, 1, 1, 6, 7, 1, 1, 1, 1 /))) STOP 13
+ if (any (minval (b, dim = 2).ne.(/ 7.0, 7.0, 7.0, 7.0, 5.0, 4.0, 7.0, 7.0, 7.0, 7.0 /))) STOP 14
+ if (any (minloc (b(::2,::2), dim = 2).ne.(/ 1, 1, 3, 1, 1 /))) STOP 15
+ if (any (minval (b(::2,::2), dim = 2).ne.(/ 7.0, 7.0, 6.0, 7.0, 7.0 /))) STOP 16
+ if (any (minloc (b).ne.(/ 6, 7 /))) STOP 17
+ if (minval (b).ne.4.0) STOP 18
+ if (any (minloc (b(::2,::2)).ne.(/ 3, 3 /))) STOP 19
+ if (minval (b(::2,::2)).ne.6.0) STOP 20
+ if (minloc (c, dim = 1).ne.7) STOP 21
+ if (minval (c, dim = 1).ne.6.0) STOP 22
+ if (minloc (c(::2), dim = 1).ne.4) STOP 23
+ if (minval (c(::2), dim = 1).ne.6.0) STOP 24
+ if (any (minloc (c).ne.(/ 7 /))) STOP 25
+ if (minval (c).ne.6.0) STOP 26
+ if (any (minloc (c(::2)).ne.(/ 4 /))) STOP 27
+ if (minval (c(::2)).ne.6.0) STOP 28
+ if (any (minloc (d, dim = 1).ne.(/ 1, 1, 1, 1, 5, 5, 6, 1, 1, 1 /))) STOP 29
+ if (any (minval (d, dim = 1).ne.(/ 7.0, 7.0, 7.0, 7.0, 6.0, 5.0, 4.0, 7.0, 7.0, 7.0 /))) STOP 30
+ if (any (minloc (d(::2,::2), dim = 1).ne.(/ 1, 1, 3, 1, 1 /))) STOP 31
+ if (any (minval (d(::2,::2), dim = 1).ne.(/ 7.0, 7.0, 6.0, 7.0, 7.0 /))) STOP 32
+ if (any (minloc (d, dim = 2).ne.(/ 1, 1, 1, 1, 6, 7, 1, 1, 1, 1 /))) STOP 33
+ if (any (minval (d, dim = 2).ne.(/ 7.0, 7.0, 7.0, 7.0, 5.0, 4.0, 7.0, 7.0, 7.0, 7.0 /))) STOP 34
+ if (any (minloc (d(::2,::2), dim = 2).ne.(/ 1, 1, 3, 1, 1 /))) STOP 35
+ if (any (minval (d(::2,::2), dim = 2).ne.(/ 7.0, 7.0, 6.0, 7.0, 7.0 /))) STOP 36
+ if (any (minloc (d).ne.(/ 6, 7 /))) STOP 37
+ if (minval (d).ne.4.0) STOP 38
+ if (any (minloc (d(::2,::2)).ne.(/ 3, 3 /))) STOP 39
+ if (minval (d(::2,::2)).ne.6.0) STOP 40
+ if (minloc (e, dim = 1).ne.7) STOP 41
+ if (minval (e, dim = 1).ne.6) STOP 42
+ if (minloc (e(::2), dim = 1).ne.4) STOP 43
+ if (minval (e(::2), dim = 1).ne.6) STOP 44
+ if (any (minloc (e).ne.(/ 7 /))) STOP 45
+ if (minval (e).ne.6) STOP 46
+ if (any (minloc (e(::2)).ne.(/ 4 /))) STOP 47
+ if (minval (e(::2)).ne.6) STOP 48
+ if (any (minloc (f, dim = 1).ne.(/ 1, 1, 1, 1, 5, 5, 6, 1, 1, 1 /))) STOP 49
+ if (any (minval (f, dim = 1).ne.(/ 7, 7, 7, 7, 6, 5, 4, 7, 7, 7 /))) STOP 50
+ if (any (minloc (f(::2,::2), dim = 1).ne.(/ 1, 1, 3, 1, 1 /))) STOP 51
+ if (any (minval (f(::2,::2), dim = 1).ne.(/ 7, 7, 6, 7, 7 /))) STOP 52
+ if (any (minloc (f, dim = 2).ne.(/ 1, 1, 1, 1, 6, 7, 1, 1, 1, 1 /))) STOP 53
+ if (any (minval (f, dim = 2).ne.(/ 7, 7, 7, 7, 5, 4, 7, 7, 7, 7 /))) STOP 54
+ if (any (minloc (f(::2,::2), dim = 2).ne.(/ 1, 1, 3, 1, 1 /))) STOP 55
+ if (any (minval (f(::2,::2), dim = 2).ne.(/ 7, 7, 6, 7, 7 /))) STOP 56
+ if (any (minloc (f).ne.(/ 6, 7 /))) STOP 57
+ if (minval (f).ne.4) STOP 58
+ if (any (minloc (f(::2,::2)).ne.(/ 3, 3 /))) STOP 59
+ if (minval (f(::2,::2)).ne.6) STOP 60
+ if (minloc (g, dim = 1).ne.7) STOP 61
+ if (minval (g, dim = 1).ne.6) STOP 62
+ if (minloc (g(::2), dim = 1).ne.4) STOP 63
+ if (minval (g(::2), dim = 1).ne.6) STOP 64
+ if (any (minloc (g).ne.(/ 7 /))) STOP 65
+ if (minval (g).ne.6) STOP 66
+ if (any (minloc (g(::2)).ne.(/ 4 /))) STOP 67
+ if (minval (g(::2)).ne.6) STOP 68
+ if (any (minloc (h, dim = 1).ne.(/ 1, 1, 1, 1, 5, 5, 6, 1, 1, 1 /))) STOP 69
+ if (any (minval (h, dim = 1).ne.(/ 7, 7, 7, 7, 6, 5, 4, 7, 7, 7 /))) STOP 70
+ if (any (minloc (h(::2,::2), dim = 1).ne.(/ 1, 1, 3, 1, 1 /))) STOP 71
+ if (any (minval (h(::2,::2), dim = 1).ne.(/ 7, 7, 6, 7, 7 /))) STOP 72
+ if (any (minloc (h, dim = 2).ne.(/ 1, 1, 1, 1, 6, 7, 1, 1, 1, 1 /))) STOP 73
+ if (any (minval (h, dim = 2).ne.(/ 7, 7, 7, 7, 5, 4, 7, 7, 7, 7 /))) STOP 74
+ if (any (minloc (h(::2,::2), dim = 2).ne.(/ 1, 1, 3, 1, 1 /))) STOP 75
+ if (any (minval (h(::2,::2), dim = 2).ne.(/ 7, 7, 6, 7, 7 /))) STOP 76
+ if (any (minloc (h).ne.(/ 6, 7 /))) STOP 77
+ if (minval (h).ne.4) STOP 78
+ if (any (minloc (h(::2,::2)).ne.(/ 3, 3 /))) STOP 79
+ if (minval (h(::2,::2)).ne.6) STOP 80
l = .true.
l2 = .true.
- if (minloc (a, dim = 1, mask = l).ne.7) call abort
- if (minval (a, dim = 1, mask = l).ne.6.0) call abort
- if (minloc (a(::2), dim = 1, mask = l(::2)).ne.4) call abort
- if (minval (a(::2), dim = 1, mask = l(::2)).ne.6.0) call abort
- if (any (minloc (a, mask = l).ne.(/ 7 /))) call abort
- if (minval (a, mask = l).ne.6.0) call abort
- if (any (minloc (a(::2), mask = l(::2)).ne.(/ 4 /))) call abort
- if (minval (a(::2), mask = l(::2)).ne.6.0) call abort
- if (any (minloc (b, dim = 1, mask = l2).ne.(/ 1, 1, 1, 1, 5, 5, 6, 1, 1, 1 /))) call abort
- if (any (minval (b, dim = 1, mask = l2).ne.(/ 7.0, 7.0, 7.0, 7.0, 6.0, 5.0, 4.0, 7.0, 7.0, 7.0 /))) call abort
- if (any (minloc (b(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 1, 1, 3, 1, 1 /))) call abort
- if (any (minval (b(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 7.0, 7.0, 6.0, 7.0, 7.0 /))) call abort
- if (any (minloc (b, dim = 2, mask = l2).ne.(/ 1, 1, 1, 1, 6, 7, 1, 1, 1, 1 /))) call abort
- if (any (minval (b, dim = 2, mask = l2).ne.(/ 7.0, 7.0, 7.0, 7.0, 5.0, 4.0, 7.0, 7.0, 7.0, 7.0 /))) call abort
- if (any (minloc (b(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 1, 1, 3, 1, 1 /))) call abort
- if (any (minval (b(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 7.0, 7.0, 6.0, 7.0, 7.0 /))) call abort
- if (any (minloc (b, mask = l2).ne.(/ 6, 7 /))) call abort
- if (minval (b, mask = l2).ne.4.0) call abort
- if (any (minloc (b(::2,::2), mask = l2(::2,::2)).ne.(/ 3, 3 /))) call abort
- if (minval (b(::2,::2), mask = l2(::2,::2)).ne.6.0) call abort
- if (minloc (c, dim = 1, mask = l).ne.7) call abort
- if (minval (c, dim = 1, mask = l).ne.6.0) call abort
- if (minloc (c(::2), dim = 1, mask = l(::2)).ne.4) call abort
- if (minval (c(::2), dim = 1, mask = l(::2)).ne.6.0) call abort
- if (any (minloc (c, mask = l).ne.(/ 7 /))) call abort
- if (minval (c, mask = l).ne.6.0) call abort
- if (any (minloc (c(::2), mask = l(::2)).ne.(/ 4 /))) call abort
- if (minval (c(::2), mask = l(::2)).ne.6.0) call abort
- if (any (minloc (d, dim = 1, mask = l2).ne.(/ 1, 1, 1, 1, 5, 5, 6, 1, 1, 1 /))) call abort
- if (any (minval (d, dim = 1, mask = l2).ne.(/ 7.0, 7.0, 7.0, 7.0, 6.0, 5.0, 4.0, 7.0, 7.0, 7.0 /))) call abort
- if (any (minloc (d(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 1, 1, 3, 1, 1 /))) call abort
- if (any (minval (d(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 7.0, 7.0, 6.0, 7.0, 7.0 /))) call abort
- if (any (minloc (d, dim = 2, mask = l2).ne.(/ 1, 1, 1, 1, 6, 7, 1, 1, 1, 1 /))) call abort
- if (any (minval (d, dim = 2, mask = l2).ne.(/ 7.0, 7.0, 7.0, 7.0, 5.0, 4.0, 7.0, 7.0, 7.0, 7.0 /))) call abort
- if (any (minloc (d(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 1, 1, 3, 1, 1 /))) call abort
- if (any (minval (d(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 7.0, 7.0, 6.0, 7.0, 7.0 /))) call abort
- if (any (minloc (d, mask = l2).ne.(/ 6, 7 /))) call abort
- if (minval (d, mask = l2).ne.4.0) call abort
- if (any (minloc (d(::2,::2), mask = l2(::2,::2)).ne.(/ 3, 3 /))) call abort
- if (minval (d(::2,::2), mask = l2(::2,::2)).ne.6.0) call abort
- if (minloc (e, dim = 1, mask = l).ne.7) call abort
- if (minval (e, dim = 1, mask = l).ne.6) call abort
- if (minloc (e(::2), dim = 1, mask = l(::2)).ne.4) call abort
- if (minval (e(::2), dim = 1, mask = l(::2)).ne.6) call abort
- if (any (minloc (e, mask = l).ne.(/ 7 /))) call abort
- if (minval (e, mask = l).ne.6) call abort
- if (any (minloc (e(::2), mask = l(::2)).ne.(/ 4 /))) call abort
- if (minval (e(::2), mask = l(::2)).ne.6) call abort
- if (any (minloc (f, dim = 1, mask = l2).ne.(/ 1, 1, 1, 1, 5, 5, 6, 1, 1, 1 /))) call abort
- if (any (minval (f, dim = 1, mask = l2).ne.(/ 7, 7, 7, 7, 6, 5, 4, 7, 7, 7 /))) call abort
- if (any (minloc (f(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 1, 1, 3, 1, 1 /))) call abort
- if (any (minval (f(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 7, 7, 6, 7, 7 /))) call abort
- if (any (minloc (f, dim = 2, mask = l2).ne.(/ 1, 1, 1, 1, 6, 7, 1, 1, 1, 1 /))) call abort
- if (any (minval (f, dim = 2, mask = l2).ne.(/ 7, 7, 7, 7, 5, 4, 7, 7, 7, 7 /))) call abort
- if (any (minloc (f(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 1, 1, 3, 1, 1 /))) call abort
- if (any (minval (f(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 7, 7, 6, 7, 7 /))) call abort
- if (any (minloc (f, mask = l2).ne.(/ 6, 7 /))) call abort
- if (minval (f, mask = l2).ne.4) call abort
- if (any (minloc (f(::2,::2), mask = l2(::2,::2)).ne.(/ 3, 3 /))) call abort
- if (minval (f(::2,::2), mask = l2(::2,::2)).ne.6) call abort
- if (minloc (g, dim = 1, mask = l).ne.7) call abort
- if (minval (g, dim = 1, mask = l).ne.6) call abort
- if (minloc (g(::2), dim = 1, mask = l(::2)).ne.4) call abort
- if (minval (g(::2), dim = 1, mask = l(::2)).ne.6) call abort
- if (any (minloc (g, mask = l).ne.(/ 7 /))) call abort
- if (minval (g, mask = l).ne.6) call abort
- if (any (minloc (g(::2), mask = l(::2)).ne.(/ 4 /))) call abort
- if (minval (g(::2), mask = l(::2)).ne.6) call abort
- if (any (minloc (h, dim = 1, mask = l2).ne.(/ 1, 1, 1, 1, 5, 5, 6, 1, 1, 1 /))) call abort
- if (any (minval (h, dim = 1, mask = l2).ne.(/ 7, 7, 7, 7, 6, 5, 4, 7, 7, 7 /))) call abort
- if (any (minloc (h(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 1, 1, 3, 1, 1 /))) call abort
- if (any (minval (h(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 7, 7, 6, 7, 7 /))) call abort
- if (any (minloc (h, dim = 2, mask = l2).ne.(/ 1, 1, 1, 1, 6, 7, 1, 1, 1, 1 /))) call abort
- if (any (minval (h, dim = 2, mask = l2).ne.(/ 7, 7, 7, 7, 5, 4, 7, 7, 7, 7 /))) call abort
- if (any (minloc (h(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 1, 1, 3, 1, 1 /))) call abort
- if (any (minval (h(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 7, 7, 6, 7, 7 /))) call abort
- if (any (minloc (h, mask = l2).ne.(/ 6, 7 /))) call abort
- if (minval (h, mask = l2).ne.4) call abort
- if (any (minloc (h(::2,::2), mask = l2(::2,::2)).ne.(/ 3, 3 /))) call abort
- if (minval (h(::2,::2), mask = l2(::2,::2)).ne.6) call abort
+ if (minloc (a, dim = 1, mask = l).ne.7) STOP 81
+ if (minval (a, dim = 1, mask = l).ne.6.0) STOP 82
+ if (minloc (a(::2), dim = 1, mask = l(::2)).ne.4) STOP 83
+ if (minval (a(::2), dim = 1, mask = l(::2)).ne.6.0) STOP 84
+ if (any (minloc (a, mask = l).ne.(/ 7 /))) STOP 85
+ if (minval (a, mask = l).ne.6.0) STOP 86
+ if (any (minloc (a(::2), mask = l(::2)).ne.(/ 4 /))) STOP 87
+ if (minval (a(::2), mask = l(::2)).ne.6.0) STOP 88
+ if (any (minloc (b, dim = 1, mask = l2).ne.(/ 1, 1, 1, 1, 5, 5, 6, 1, 1, 1 /))) STOP 89
+ if (any (minval (b, dim = 1, mask = l2).ne.(/ 7.0, 7.0, 7.0, 7.0, 6.0, 5.0, 4.0, 7.0, 7.0, 7.0 /))) STOP 90
+ if (any (minloc (b(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 1, 1, 3, 1, 1 /))) STOP 91
+ if (any (minval (b(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 7.0, 7.0, 6.0, 7.0, 7.0 /))) STOP 92
+ if (any (minloc (b, dim = 2, mask = l2).ne.(/ 1, 1, 1, 1, 6, 7, 1, 1, 1, 1 /))) STOP 93
+ if (any (minval (b, dim = 2, mask = l2).ne.(/ 7.0, 7.0, 7.0, 7.0, 5.0, 4.0, 7.0, 7.0, 7.0, 7.0 /))) STOP 94
+ if (any (minloc (b(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 1, 1, 3, 1, 1 /))) STOP 95
+ if (any (minval (b(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 7.0, 7.0, 6.0, 7.0, 7.0 /))) STOP 96
+ if (any (minloc (b, mask = l2).ne.(/ 6, 7 /))) STOP 97
+ if (minval (b, mask = l2).ne.4.0) STOP 98
+ if (any (minloc (b(::2,::2), mask = l2(::2,::2)).ne.(/ 3, 3 /))) STOP 99
+ if (minval (b(::2,::2), mask = l2(::2,::2)).ne.6.0) STOP 100
+ if (minloc (c, dim = 1, mask = l).ne.7) STOP 101
+ if (minval (c, dim = 1, mask = l).ne.6.0) STOP 102
+ if (minloc (c(::2), dim = 1, mask = l(::2)).ne.4) STOP 103
+ if (minval (c(::2), dim = 1, mask = l(::2)).ne.6.0) STOP 104
+ if (any (minloc (c, mask = l).ne.(/ 7 /))) STOP 105
+ if (minval (c, mask = l).ne.6.0) STOP 106
+ if (any (minloc (c(::2), mask = l(::2)).ne.(/ 4 /))) STOP 107
+ if (minval (c(::2), mask = l(::2)).ne.6.0) STOP 108
+ if (any (minloc (d, dim = 1, mask = l2).ne.(/ 1, 1, 1, 1, 5, 5, 6, 1, 1, 1 /))) STOP 109
+ if (any (minval (d, dim = 1, mask = l2).ne.(/ 7.0, 7.0, 7.0, 7.0, 6.0, 5.0, 4.0, 7.0, 7.0, 7.0 /))) STOP 110
+ if (any (minloc (d(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 1, 1, 3, 1, 1 /))) STOP 111
+ if (any (minval (d(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 7.0, 7.0, 6.0, 7.0, 7.0 /))) STOP 112
+ if (any (minloc (d, dim = 2, mask = l2).ne.(/ 1, 1, 1, 1, 6, 7, 1, 1, 1, 1 /))) STOP 113
+ if (any (minval (d, dim = 2, mask = l2).ne.(/ 7.0, 7.0, 7.0, 7.0, 5.0, 4.0, 7.0, 7.0, 7.0, 7.0 /))) STOP 114
+ if (any (minloc (d(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 1, 1, 3, 1, 1 /))) STOP 115
+ if (any (minval (d(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 7.0, 7.0, 6.0, 7.0, 7.0 /))) STOP 116
+ if (any (minloc (d, mask = l2).ne.(/ 6, 7 /))) STOP 117
+ if (minval (d, mask = l2).ne.4.0) STOP 118
+ if (any (minloc (d(::2,::2), mask = l2(::2,::2)).ne.(/ 3, 3 /))) STOP 119
+ if (minval (d(::2,::2), mask = l2(::2,::2)).ne.6.0) STOP 120
+ if (minloc (e, dim = 1, mask = l).ne.7) STOP 121
+ if (minval (e, dim = 1, mask = l).ne.6) STOP 122
+ if (minloc (e(::2), dim = 1, mask = l(::2)).ne.4) STOP 123
+ if (minval (e(::2), dim = 1, mask = l(::2)).ne.6) STOP 124
+ if (any (minloc (e, mask = l).ne.(/ 7 /))) STOP 125
+ if (minval (e, mask = l).ne.6) STOP 126
+ if (any (minloc (e(::2), mask = l(::2)).ne.(/ 4 /))) STOP 127
+ if (minval (e(::2), mask = l(::2)).ne.6) STOP 128
+ if (any (minloc (f, dim = 1, mask = l2).ne.(/ 1, 1, 1, 1, 5, 5, 6, 1, 1, 1 /))) STOP 129
+ if (any (minval (f, dim = 1, mask = l2).ne.(/ 7, 7, 7, 7, 6, 5, 4, 7, 7, 7 /))) STOP 130
+ if (any (minloc (f(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 1, 1, 3, 1, 1 /))) STOP 131
+ if (any (minval (f(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 7, 7, 6, 7, 7 /))) STOP 132
+ if (any (minloc (f, dim = 2, mask = l2).ne.(/ 1, 1, 1, 1, 6, 7, 1, 1, 1, 1 /))) STOP 133
+ if (any (minval (f, dim = 2, mask = l2).ne.(/ 7, 7, 7, 7, 5, 4, 7, 7, 7, 7 /))) STOP 134
+ if (any (minloc (f(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 1, 1, 3, 1, 1 /))) STOP 135
+ if (any (minval (f(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 7, 7, 6, 7, 7 /))) STOP 136
+ if (any (minloc (f, mask = l2).ne.(/ 6, 7 /))) STOP 137
+ if (minval (f, mask = l2).ne.4) STOP 138
+ if (any (minloc (f(::2,::2), mask = l2(::2,::2)).ne.(/ 3, 3 /))) STOP 139
+ if (minval (f(::2,::2), mask = l2(::2,::2)).ne.6) STOP 140
+ if (minloc (g, dim = 1, mask = l).ne.7) STOP 141
+ if (minval (g, dim = 1, mask = l).ne.6) STOP 142
+ if (minloc (g(::2), dim = 1, mask = l(::2)).ne.4) STOP 143
+ if (minval (g(::2), dim = 1, mask = l(::2)).ne.6) STOP 144
+ if (any (minloc (g, mask = l).ne.(/ 7 /))) STOP 145
+ if (minval (g, mask = l).ne.6) STOP 146
+ if (any (minloc (g(::2), mask = l(::2)).ne.(/ 4 /))) STOP 147
+ if (minval (g(::2), mask = l(::2)).ne.6) STOP 148
+ if (any (minloc (h, dim = 1, mask = l2).ne.(/ 1, 1, 1, 1, 5, 5, 6, 1, 1, 1 /))) STOP 149
+ if (any (minval (h, dim = 1, mask = l2).ne.(/ 7, 7, 7, 7, 6, 5, 4, 7, 7, 7 /))) STOP 150
+ if (any (minloc (h(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 1, 1, 3, 1, 1 /))) STOP 151
+ if (any (minval (h(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 7, 7, 6, 7, 7 /))) STOP 152
+ if (any (minloc (h, dim = 2, mask = l2).ne.(/ 1, 1, 1, 1, 6, 7, 1, 1, 1, 1 /))) STOP 153
+ if (any (minval (h, dim = 2, mask = l2).ne.(/ 7, 7, 7, 7, 5, 4, 7, 7, 7, 7 /))) STOP 154
+ if (any (minloc (h(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 1, 1, 3, 1, 1 /))) STOP 155
+ if (any (minval (h(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 7, 7, 6, 7, 7 /))) STOP 156
+ if (any (minloc (h, mask = l2).ne.(/ 6, 7 /))) STOP 157
+ if (minval (h, mask = l2).ne.4) STOP 158
+ if (any (minloc (h(::2,::2), mask = l2(::2,::2)).ne.(/ 3, 3 /))) STOP 159
+ if (minval (h(::2,::2), mask = l2(::2,::2)).ne.6) STOP 160
l = .false.
l2 = .false.
- if (minloc (a, dim = 1, mask = l).ne.0) call abort
- if (minval (a, dim = 1, mask = l).ne.m) call abort
- if (minloc (a(::2), dim = 1, mask = l(::2)).ne.0) call abort
- if (minval (a(::2), dim = 1, mask = l(::2)).ne.m) call abort
- if (any (minloc (a, mask = l).ne.(/ 0 /))) call abort
- if (minval (a, mask = l).ne.m) call abort
- if (any (minloc (a(::2), mask = l(::2)).ne.(/ 0 /))) call abort
- if (minval (a(::2), mask = l(::2)).ne.m) call abort
- if (any (minloc (b, dim = 1, mask = l2).ne.(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /))) call abort
- if (any (minval (b, dim = 1, mask = l2).ne.(/ m, m, m, m, m, m, m, m, m, m /))) call abort
- if (any (minloc (b(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 0, 0, 0, 0, 0 /))) call abort
- if (any (minval (b(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ m, m, m, m, m /))) call abort
- if (any (minloc (b, dim = 2, mask = l2).ne.(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /))) call abort
- if (any (minval (b, dim = 2, mask = l2).ne.(/ m, m, m, m, m, m, m, m, m, m /))) call abort
- if (any (minloc (b(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 0, 0, 0, 0, 0 /))) call abort
- if (any (minval (b(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ m, m, m, m, m /))) call abort
- if (any (minloc (b, mask = l2).ne.(/ 0, 0 /))) call abort
- if (minval (b, mask = l2).ne.m) call abort
- if (any (minloc (b(::2,::2), mask = l2(::2,::2)).ne.(/ 0, 0 /))) call abort
- if (minval (b(::2,::2), mask = l2(::2,::2)).ne.m) call abort
- if (minloc (c, dim = 1, mask = l).ne.0) call abort
- if (minval (c, dim = 1, mask = l).ne.m) call abort
- if (minloc (c(::2), dim = 1, mask = l(::2)).ne.0) call abort
- if (minval (c(::2), dim = 1, mask = l(::2)).ne.m) call abort
- if (any (minloc (c, mask = l).ne.(/ 0 /))) call abort
- if (minval (c, mask = l).ne.m) call abort
- if (any (minloc (c(::2), mask = l(::2)).ne.(/ 0 /))) call abort
- if (minval (c(::2), mask = l(::2)).ne.m) call abort
- if (any (minloc (d, dim = 1, mask = l2).ne.(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /))) call abort
- if (any (minval (d, dim = 1, mask = l2).ne.(/ m, m, m, m, m, m, m, m, m, m /))) call abort
- if (any (minloc (d(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 0, 0, 0, 0, 0 /))) call abort
- if (any (minval (d(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ m, m, m, m, m /))) call abort
- if (any (minloc (d, dim = 2, mask = l2).ne.(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /))) call abort
- if (any (minval (d, dim = 2, mask = l2).ne.(/ m, m, m, m, m, m, m, m, m, m /))) call abort
- if (any (minloc (d(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 0, 0, 0, 0, 0 /))) call abort
- if (any (minval (d(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ m, m, m, m, m /))) call abort
- if (any (minloc (d, mask = l2).ne.(/ 0, 0 /))) call abort
- if (minval (d, mask = l2).ne.m) call abort
- if (any (minloc (d(::2,::2), mask = l2(::2,::2)).ne.(/ 0, 0 /))) call abort
- if (minval (d(::2,::2), mask = l2(::2,::2)).ne.m) call abort
- if (minloc (e, dim = 1, mask = l).ne.0) call abort
- if (minval (e, dim = 1, mask = l).ne.n) call abort
- if (minloc (e(::2), dim = 1, mask = l(::2)).ne.0) call abort
- if (minval (e(::2), dim = 1, mask = l(::2)).ne.n) call abort
- if (any (minloc (e, mask = l).ne.(/ 0 /))) call abort
- if (minval (e, mask = l).ne.n) call abort
- if (any (minloc (e(::2), mask = l(::2)).ne.(/ 0 /))) call abort
- if (minval (e(::2), mask = l(::2)).ne.n) call abort
- if (any (minloc (f, dim = 1, mask = l2).ne.(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /))) call abort
- if (any (minval (f, dim = 1, mask = l2).ne.(/ n, n, n, n, n, n, n, n, n, n /))) call abort
- if (any (minloc (f(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 0, 0, 0, 0, 0 /))) call abort
- if (any (minval (f(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ n, n, n, n, n /))) call abort
- if (any (minloc (f, dim = 2, mask = l2).ne.(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /))) call abort
- if (any (minval (f, dim = 2, mask = l2).ne.(/ n, n, n, n, n, n, n, n, n, n /))) call abort
- if (any (minloc (f(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 0, 0, 0, 0, 0 /))) call abort
- if (any (minval (f(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ n, n, n, n, n /))) call abort
- if (any (minloc (f, mask = l2).ne.(/ 0, 0 /))) call abort
- if (minval (f, mask = l2).ne.n) call abort
- if (any (minloc (f(::2,::2), mask = l2(::2,::2)).ne.(/ 0, 0 /))) call abort
- if (minval (f(::2,::2), mask = l2(::2,::2)).ne.n) call abort
- if (minloc (g, dim = 1, mask = l).ne.0) call abort
- if (minval (g, dim = 1, mask = l).ne.n) call abort
- if (minloc (g(::2), dim = 1, mask = l(::2)).ne.0) call abort
- if (minval (g(::2), dim = 1, mask = l(::2)).ne.n) call abort
- if (any (minloc (g, mask = l).ne.(/ 0 /))) call abort
- if (minval (g, mask = l).ne.n) call abort
- if (any (minloc (g(::2), mask = l(::2)).ne.(/ 0 /))) call abort
- if (minval (g(::2), mask = l(::2)).ne.n) call abort
- if (any (minloc (h, dim = 1, mask = l2).ne.(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /))) call abort
- if (any (minval (h, dim = 1, mask = l2).ne.(/ n, n, n, n, n, n, n, n, n, n /))) call abort
- if (any (minloc (h(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 0, 0, 0, 0, 0 /))) call abort
- if (any (minval (h(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ n, n, n, n, n /))) call abort
- if (any (minloc (h, dim = 2, mask = l2).ne.(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /))) call abort
- if (any (minval (h, dim = 2, mask = l2).ne.(/ n, n, n, n, n, n, n, n, n, n /))) call abort
- if (any (minloc (h(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 0, 0, 0, 0, 0 /))) call abort
- if (any (minval (h(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ n, n, n, n, n /))) call abort
- if (any (minloc (h, mask = l2).ne.(/ 0, 0 /))) call abort
- if (minval (h, mask = l2).ne.n) call abort
- if (any (minloc (h(::2,::2), mask = l2(::2,::2)).ne.(/ 0, 0 /))) call abort
- if (minval (h(::2,::2), mask = l2(::2,::2)).ne.n) call abort
+ if (minloc (a, dim = 1, mask = l).ne.0) STOP 161
+ if (minval (a, dim = 1, mask = l).ne.m) STOP 162
+ if (minloc (a(::2), dim = 1, mask = l(::2)).ne.0) STOP 163
+ if (minval (a(::2), dim = 1, mask = l(::2)).ne.m) STOP 164
+ if (any (minloc (a, mask = l).ne.(/ 0 /))) STOP 165
+ if (minval (a, mask = l).ne.m) STOP 166
+ if (any (minloc (a(::2), mask = l(::2)).ne.(/ 0 /))) STOP 167
+ if (minval (a(::2), mask = l(::2)).ne.m) STOP 168
+ if (any (minloc (b, dim = 1, mask = l2).ne.(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /))) STOP 169
+ if (any (minval (b, dim = 1, mask = l2).ne.(/ m, m, m, m, m, m, m, m, m, m /))) STOP 170
+ if (any (minloc (b(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 0, 0, 0, 0, 0 /))) STOP 171
+ if (any (minval (b(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ m, m, m, m, m /))) STOP 172
+ if (any (minloc (b, dim = 2, mask = l2).ne.(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /))) STOP 173
+ if (any (minval (b, dim = 2, mask = l2).ne.(/ m, m, m, m, m, m, m, m, m, m /))) STOP 174
+ if (any (minloc (b(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 0, 0, 0, 0, 0 /))) STOP 175
+ if (any (minval (b(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ m, m, m, m, m /))) STOP 176
+ if (any (minloc (b, mask = l2).ne.(/ 0, 0 /))) STOP 177
+ if (minval (b, mask = l2).ne.m) STOP 178
+ if (any (minloc (b(::2,::2), mask = l2(::2,::2)).ne.(/ 0, 0 /))) STOP 179
+ if (minval (b(::2,::2), mask = l2(::2,::2)).ne.m) STOP 180
+ if (minloc (c, dim = 1, mask = l).ne.0) STOP 181
+ if (minval (c, dim = 1, mask = l).ne.m) STOP 182
+ if (minloc (c(::2), dim = 1, mask = l(::2)).ne.0) STOP 183
+ if (minval (c(::2), dim = 1, mask = l(::2)).ne.m) STOP 184
+ if (any (minloc (c, mask = l).ne.(/ 0 /))) STOP 185
+ if (minval (c, mask = l).ne.m) STOP 186
+ if (any (minloc (c(::2), mask = l(::2)).ne.(/ 0 /))) STOP 187
+ if (minval (c(::2), mask = l(::2)).ne.m) STOP 188
+ if (any (minloc (d, dim = 1, mask = l2).ne.(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /))) STOP 189
+ if (any (minval (d, dim = 1, mask = l2).ne.(/ m, m, m, m, m, m, m, m, m, m /))) STOP 190
+ if (any (minloc (d(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 0, 0, 0, 0, 0 /))) STOP 191
+ if (any (minval (d(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ m, m, m, m, m /))) STOP 192
+ if (any (minloc (d, dim = 2, mask = l2).ne.(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /))) STOP 193
+ if (any (minval (d, dim = 2, mask = l2).ne.(/ m, m, m, m, m, m, m, m, m, m /))) STOP 194
+ if (any (minloc (d(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 0, 0, 0, 0, 0 /))) STOP 195
+ if (any (minval (d(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ m, m, m, m, m /))) STOP 196
+ if (any (minloc (d, mask = l2).ne.(/ 0, 0 /))) STOP 197
+ if (minval (d, mask = l2).ne.m) STOP 198
+ if (any (minloc (d(::2,::2), mask = l2(::2,::2)).ne.(/ 0, 0 /))) STOP 199
+ if (minval (d(::2,::2), mask = l2(::2,::2)).ne.m) STOP 200
+ if (minloc (e, dim = 1, mask = l).ne.0) STOP 201
+ if (minval (e, dim = 1, mask = l).ne.n) STOP 202
+ if (minloc (e(::2), dim = 1, mask = l(::2)).ne.0) STOP 203
+ if (minval (e(::2), dim = 1, mask = l(::2)).ne.n) STOP 204
+ if (any (minloc (e, mask = l).ne.(/ 0 /))) STOP 205
+ if (minval (e, mask = l).ne.n) STOP 206
+ if (any (minloc (e(::2), mask = l(::2)).ne.(/ 0 /))) STOP 207
+ if (minval (e(::2), mask = l(::2)).ne.n) STOP 208
+ if (any (minloc (f, dim = 1, mask = l2).ne.(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /))) STOP 209
+ if (any (minval (f, dim = 1, mask = l2).ne.(/ n, n, n, n, n, n, n, n, n, n /))) STOP 210
+ if (any (minloc (f(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 0, 0, 0, 0, 0 /))) STOP 211
+ if (any (minval (f(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ n, n, n, n, n /))) STOP 212
+ if (any (minloc (f, dim = 2, mask = l2).ne.(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /))) STOP 213
+ if (any (minval (f, dim = 2, mask = l2).ne.(/ n, n, n, n, n, n, n, n, n, n /))) STOP 214
+ if (any (minloc (f(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 0, 0, 0, 0, 0 /))) STOP 215
+ if (any (minval (f(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ n, n, n, n, n /))) STOP 216
+ if (any (minloc (f, mask = l2).ne.(/ 0, 0 /))) STOP 217
+ if (minval (f, mask = l2).ne.n) STOP 218
+ if (any (minloc (f(::2,::2), mask = l2(::2,::2)).ne.(/ 0, 0 /))) STOP 219
+ if (minval (f(::2,::2), mask = l2(::2,::2)).ne.n) STOP 220
+ if (minloc (g, dim = 1, mask = l).ne.0) STOP 221
+ if (minval (g, dim = 1, mask = l).ne.n) STOP 222
+ if (minloc (g(::2), dim = 1, mask = l(::2)).ne.0) STOP 223
+ if (minval (g(::2), dim = 1, mask = l(::2)).ne.n) STOP 224
+ if (any (minloc (g, mask = l).ne.(/ 0 /))) STOP 225
+ if (minval (g, mask = l).ne.n) STOP 226
+ if (any (minloc (g(::2), mask = l(::2)).ne.(/ 0 /))) STOP 227
+ if (minval (g(::2), mask = l(::2)).ne.n) STOP 228
+ if (any (minloc (h, dim = 1, mask = l2).ne.(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /))) STOP 229
+ if (any (minval (h, dim = 1, mask = l2).ne.(/ n, n, n, n, n, n, n, n, n, n /))) STOP 230
+ if (any (minloc (h(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ 0, 0, 0, 0, 0 /))) STOP 231
+ if (any (minval (h(::2,::2), dim = 1, mask = l2(::2,::2)).ne.(/ n, n, n, n, n /))) STOP 232
+ if (any (minloc (h, dim = 2, mask = l2).ne.(/ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /))) STOP 233
+ if (any (minval (h, dim = 2, mask = l2).ne.(/ n, n, n, n, n, n, n, n, n, n /))) STOP 234
+ if (any (minloc (h(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ 0, 0, 0, 0, 0 /))) STOP 235
+ if (any (minval (h(::2,::2), dim = 2, mask = l2(::2,::2)).ne.(/ n, n, n, n, n /))) STOP 236
+ if (any (minloc (h, mask = l2).ne.(/ 0, 0 /))) STOP 237
+ if (minval (h, mask = l2).ne.n) STOP 238
+ if (any (minloc (h(::2,::2), mask = l2(::2,::2)).ne.(/ 0, 0 /))) STOP 239
+ if (minval (h(::2,::2), mask = l2(::2,::2)).ne.n) STOP 240
a = 7.0
b = 7.0
c = 7.0
diff --git a/gcc/testsuite/gfortran.dg/minlocval_4.f90 b/gcc/testsuite/gfortran.dg/minlocval_4.f90
index b37123164b2..b06910c6aba 100644
--- a/gcc/testsuite/gfortran.dg/minlocval_4.f90
+++ b/gcc/testsuite/gfortran.dg/minlocval_4.f90
@@ -21,100 +21,100 @@
l5(1,2) = .false.
l5(2,3) = .false.
a = reshape ((/ nan, nan, nan, pinf, pinf, pinf, pinf, minf, pinf /), (/ 3, 3 /))
- if (minval (a).ne.minf) call abort
- if (any (minloc (a).ne.(/ 2, 3 /))) call abort
+ if (minval (a).ne.minf) STOP 1
+ if (any (minloc (a).ne.(/ 2, 3 /))) STOP 2
b = minval (a, dim = 1)
- if (.not.isnan(b(1))) call abort
+ if (.not.isnan(b(1))) STOP 3
b(1) = 0.0
- if (any (b.ne.(/ 0.0, pinf, minf /))) call abort
- if (any (minloc (a, dim = 1).ne.(/ 1, 1, 2 /))) call abort
+ if (any (b.ne.(/ 0.0, pinf, minf /))) STOP 4
+ if (any (minloc (a, dim = 1).ne.(/ 1, 1, 2 /))) STOP 5
b = minval (a, dim = 2)
- if (any (b.ne.(/ pinf, minf, pinf /))) call abort
- if (any (minloc (a, dim = 2).ne.(/ 2, 3, 2 /))) call abort
- if (minval (a, mask = l).ne.h) call abort
- if (any (minloc (a, mask = l).ne.(/ 0, 0 /))) call abort
+ if (any (b.ne.(/ pinf, minf, pinf /))) STOP 6
+ if (any (minloc (a, dim = 2).ne.(/ 2, 3, 2 /))) STOP 7
+ if (minval (a, mask = l).ne.h) STOP 8
+ if (any (minloc (a, mask = l).ne.(/ 0, 0 /))) STOP 9
b = minval (a, dim = 1, mask = l)
- if (any (b.ne.(/ h, h, h /))) call abort
- if (any (minloc (a, dim = 1, mask = l).ne.(/ 0, 0, 0 /))) call abort
+ if (any (b.ne.(/ h, h, h /))) STOP 10
+ if (any (minloc (a, dim = 1, mask = l).ne.(/ 0, 0, 0 /))) STOP 11
b = minval (a, dim = 2, mask = l)
- if (any (b.ne.(/ h, h, h /))) call abort
- if (any (minloc (a, dim = 2, mask = l).ne.(/ 0, 0, 0 /))) call abort
- if (minval (a, mask = l3).ne.h) call abort
- if (any (minloc (a, mask = l3).ne.(/ 0, 0 /))) call abort
+ if (any (b.ne.(/ h, h, h /))) STOP 12
+ if (any (minloc (a, dim = 2, mask = l).ne.(/ 0, 0, 0 /))) STOP 13
+ if (minval (a, mask = l3).ne.h) STOP 14
+ if (any (minloc (a, mask = l3).ne.(/ 0, 0 /))) STOP 15
b = minval (a, dim = 1, mask = l3)
- if (any (b.ne.(/ h, h, h /))) call abort
- if (any (minloc (a, dim = 1, mask = l3).ne.(/ 0, 0, 0 /))) call abort
+ if (any (b.ne.(/ h, h, h /))) STOP 16
+ if (any (minloc (a, dim = 1, mask = l3).ne.(/ 0, 0, 0 /))) STOP 17
b = minval (a, dim = 2, mask = l3)
- if (any (b.ne.(/ h, h, h /))) call abort
- if (any (minloc (a, dim = 2, mask = l3).ne.(/ 0, 0, 0 /))) call abort
- if (minval (a, mask = l2).ne.minf) call abort
- if (minval (a, mask = l4).ne.minf) call abort
- if (any (minloc (a, mask = l2).ne.(/ 2, 3 /))) call abort
- if (any (minloc (a, mask = l4).ne.(/ 2, 3 /))) call abort
+ if (any (b.ne.(/ h, h, h /))) STOP 18
+ if (any (minloc (a, dim = 2, mask = l3).ne.(/ 0, 0, 0 /))) STOP 19
+ if (minval (a, mask = l2).ne.minf) STOP 20
+ if (minval (a, mask = l4).ne.minf) STOP 21
+ if (any (minloc (a, mask = l2).ne.(/ 2, 3 /))) STOP 22
+ if (any (minloc (a, mask = l4).ne.(/ 2, 3 /))) STOP 23
b = minval (a, dim = 1, mask = l2)
- if (.not.isnan(b(1))) call abort
+ if (.not.isnan(b(1))) STOP 24
b(1) = 0.0
- if (any (b.ne.(/ 0.0, pinf, minf /))) call abort
- if (any (minloc (a, dim = 1, mask = l2).ne.(/ 1, 1, 2 /))) call abort
+ if (any (b.ne.(/ 0.0, pinf, minf /))) STOP 25
+ if (any (minloc (a, dim = 1, mask = l2).ne.(/ 1, 1, 2 /))) STOP 26
b = minval (a, dim = 2, mask = l2)
- if (any (b.ne.(/ pinf, minf, pinf /))) call abort
- if (any (minloc (a, dim = 2, mask = l2).ne.(/ 2, 3, 2 /))) call abort
+ if (any (b.ne.(/ pinf, minf, pinf /))) STOP 27
+ if (any (minloc (a, dim = 2, mask = l2).ne.(/ 2, 3, 2 /))) STOP 28
b = minval (a, dim = 1, mask = l4)
- if (.not.isnan(b(1))) call abort
+ if (.not.isnan(b(1))) STOP 29
b(1) = 0.0
- if (any (b.ne.(/ 0.0, pinf, minf /))) call abort
- if (any (minloc (a, dim = 1, mask = l2).ne.(/ 1, 1, 2 /))) call abort
+ if (any (b.ne.(/ 0.0, pinf, minf /))) STOP 30
+ if (any (minloc (a, dim = 1, mask = l2).ne.(/ 1, 1, 2 /))) STOP 31
b = minval (a, dim = 2, mask = l4)
- if (any (b.ne.(/ pinf, minf, pinf /))) call abort
- if (any (minloc (a, dim = 2, mask = l2).ne.(/ 2, 3, 2 /))) call abort
- if (minval (a, mask = l5).ne.pinf) call abort
- if (any (minloc (a, mask = l5).ne.(/ 2, 2 /))) call abort
+ if (any (b.ne.(/ pinf, minf, pinf /))) STOP 32
+ if (any (minloc (a, dim = 2, mask = l2).ne.(/ 2, 3, 2 /))) STOP 33
+ if (minval (a, mask = l5).ne.pinf) STOP 34
+ if (any (minloc (a, mask = l5).ne.(/ 2, 2 /))) STOP 35
b = minval (a, dim = 1, mask = l5)
- if (.not.isnan(b(1))) call abort
+ if (.not.isnan(b(1))) STOP 36
b(1) = 0.0
- if (any (b.ne.(/ 0.0, pinf, pinf /))) call abort
- if (any (minloc (a, dim = 1, mask = l5).ne.(/ 2, 2, 1 /))) call abort
+ if (any (b.ne.(/ 0.0, pinf, pinf /))) STOP 37
+ if (any (minloc (a, dim = 1, mask = l5).ne.(/ 2, 2, 1 /))) STOP 38
b = minval (a, dim = 2, mask = l5)
- if (any (b.ne.(/ pinf, pinf, pinf /))) call abort
- if (any (minloc (a, dim = 2, mask = l5).ne.(/ 3, 2, 2 /))) call abort
+ if (any (b.ne.(/ pinf, pinf, pinf /))) STOP 39
+ if (any (minloc (a, dim = 2, mask = l5).ne.(/ 3, 2, 2 /))) STOP 40
a = nan
- if (.not.isnan(minval (a))) call abort
- if (minval (a, mask = l).ne.h) call abort
- if (.not.isnan(minval (a, mask = l2))) call abort
- if (minval (a, mask = l3).ne.h) call abort
- if (.not.isnan(minval (a, mask = l4))) call abort
- if (.not.isnan(minval (a, mask = l5))) call abort
- if (any (minloc (a).ne.(/ 1, 1 /))) call abort
- if (any (minloc (a, mask = l).ne.(/ 0, 0 /))) call abort
- if (any (minloc (a, mask = l2).ne.(/ 1, 1 /))) call abort
- if (any (minloc (a, mask = l3).ne.(/ 0, 0 /))) call abort
- if (any (minloc (a, mask = l4).ne.(/ 1, 1 /))) call abort
- if (any (minloc (a, mask = l5).ne.(/ 2, 1 /))) call abort
+ if (.not.isnan(minval (a))) STOP 41
+ if (minval (a, mask = l).ne.h) STOP 42
+ if (.not.isnan(minval (a, mask = l2))) STOP 43
+ if (minval (a, mask = l3).ne.h) STOP 44
+ if (.not.isnan(minval (a, mask = l4))) STOP 45
+ if (.not.isnan(minval (a, mask = l5))) STOP 46
+ if (any (minloc (a).ne.(/ 1, 1 /))) STOP 47
+ if (any (minloc (a, mask = l).ne.(/ 0, 0 /))) STOP 48
+ if (any (minloc (a, mask = l2).ne.(/ 1, 1 /))) STOP 49
+ if (any (minloc (a, mask = l3).ne.(/ 0, 0 /))) STOP 50
+ if (any (minloc (a, mask = l4).ne.(/ 1, 1 /))) STOP 51
+ if (any (minloc (a, mask = l5).ne.(/ 2, 1 /))) STOP 52
a = pinf
- if (minval (a).ne.pinf) call abort
- if (minval (a, mask = l).ne.h) call abort
- if (minval (a, mask = l2).ne.pinf) call abort
- if (minval (a, mask = l3).ne.h) call abort
- if (minval (a, mask = l4).ne.pinf) call abort
- if (minval (a, mask = l5).ne.pinf) call abort
- if (any (minloc (a).ne.(/ 1, 1 /))) call abort
- if (any (minloc (a, mask = l).ne.(/ 0, 0 /))) call abort
- if (any (minloc (a, mask = l2).ne.(/ 1, 1 /))) call abort
- if (any (minloc (a, mask = l3).ne.(/ 0, 0 /))) call abort
- if (any (minloc (a, mask = l4).ne.(/ 1, 1 /))) call abort
- if (any (minloc (a, mask = l5).ne.(/ 2, 1 /))) call abort
+ if (minval (a).ne.pinf) STOP 53
+ if (minval (a, mask = l).ne.h) STOP 54
+ if (minval (a, mask = l2).ne.pinf) STOP 55
+ if (minval (a, mask = l3).ne.h) STOP 56
+ if (minval (a, mask = l4).ne.pinf) STOP 57
+ if (minval (a, mask = l5).ne.pinf) STOP 58
+ if (any (minloc (a).ne.(/ 1, 1 /))) STOP 59
+ if (any (minloc (a, mask = l).ne.(/ 0, 0 /))) STOP 60
+ if (any (minloc (a, mask = l2).ne.(/ 1, 1 /))) STOP 61
+ if (any (minloc (a, mask = l3).ne.(/ 0, 0 /))) STOP 62
+ if (any (minloc (a, mask = l4).ne.(/ 1, 1 /))) STOP 63
+ if (any (minloc (a, mask = l5).ne.(/ 2, 1 /))) STOP 64
a = nan
a(1,3) = pinf
- if (minval (a).ne.pinf) call abort
- if (minval (a, mask = l).ne.h) call abort
- if (minval (a, mask = l2).ne.pinf) call abort
- if (minval (a, mask = l3).ne.h) call abort
- if (minval (a, mask = l4).ne.pinf) call abort
- if (minval (a, mask = l5).ne.pinf) call abort
- if (any (minloc (a).ne.(/ 1, 3 /))) call abort
- if (any (minloc (a, mask = l).ne.(/ 0, 0 /))) call abort
- if (any (minloc (a, mask = l2).ne.(/ 1, 3 /))) call abort
- if (any (minloc (a, mask = l3).ne.(/ 0, 0 /))) call abort
- if (any (minloc (a, mask = l4).ne.(/ 1, 3 /))) call abort
- if (any (minloc (a, mask = l5).ne.(/ 1, 3 /))) call abort
+ if (minval (a).ne.pinf) STOP 65
+ if (minval (a, mask = l).ne.h) STOP 66
+ if (minval (a, mask = l2).ne.pinf) STOP 67
+ if (minval (a, mask = l3).ne.h) STOP 68
+ if (minval (a, mask = l4).ne.pinf) STOP 69
+ if (minval (a, mask = l5).ne.pinf) STOP 70
+ if (any (minloc (a).ne.(/ 1, 3 /))) STOP 71
+ if (any (minloc (a, mask = l).ne.(/ 0, 0 /))) STOP 72
+ if (any (minloc (a, mask = l2).ne.(/ 1, 3 /))) STOP 73
+ if (any (minloc (a, mask = l3).ne.(/ 0, 0 /))) STOP 74
+ if (any (minloc (a, mask = l4).ne.(/ 1, 3 /))) STOP 75
+ if (any (minloc (a, mask = l5).ne.(/ 1, 3 /))) STOP 76
end
diff --git a/gcc/testsuite/gfortran.dg/minmax_char_1.f90 b/gcc/testsuite/gfortran.dg/minmax_char_1.f90
index 9e73e9850be..8765aa4819a 100644
--- a/gcc/testsuite/gfortran.dg/minmax_char_1.f90
+++ b/gcc/testsuite/gfortran.dg/minmax_char_1.f90
@@ -15,38 +15,38 @@ program test
v = "da"
w = "flunch"
- if (.not. equal(min("foo", "bar"), "bar")) call abort
- if (.not. equal(max("foo", "bar"), "foo")) call abort
- if (.not. equal(min("bar", "foo"), "bar")) call abort
- if (.not. equal(max("bar", "foo"), "foo")) call abort
+ if (.not. equal(min("foo", "bar"), "bar")) STOP 1
+ if (.not. equal(max("foo", "bar"), "foo")) STOP 2
+ if (.not. equal(min("bar", "foo"), "bar")) STOP 3
+ if (.not. equal(max("bar", "foo"), "foo")) STOP 4
- if (.not. equal(min("bar", "foo", sp), "bar")) call abort
- if (.not. equal(max("bar", "foo", sp), "gee")) call abort
- if (.not. equal(min("bar", sp, "foo"), "bar")) call abort
- if (.not. equal(max("bar", sp, "foo"), "gee")) call abort
- if (.not. equal(min(sp, "bar", "foo"), "bar")) call abort
- if (.not. equal(max(sp, "bar", "foo"), "gee")) call abort
+ if (.not. equal(min("bar", "foo", sp), "bar")) STOP 5
+ if (.not. equal(max("bar", "foo", sp), "gee")) STOP 6
+ if (.not. equal(min("bar", sp, "foo"), "bar")) STOP 7
+ if (.not. equal(max("bar", sp, "foo"), "gee")) STOP 8
+ if (.not. equal(min(sp, "bar", "foo"), "bar")) STOP 9
+ if (.not. equal(max(sp, "bar", "foo"), "gee")) STOP 10
- if (.not. equal(min("foo", "bar", s), "bar")) call abort
- if (.not. equal(max("foo", "bar", s), "gee")) call abort
- if (.not. equal(min("foo", s, "bar"), "bar")) call abort
- if (.not. equal(max("foo", s, "bar"), "gee")) call abort
- if (.not. equal(min(s, "foo", "bar"), "bar")) call abort
- if (.not. equal(max(s, "foo", "bar"), "gee")) call abort
+ if (.not. equal(min("foo", "bar", s), "bar")) STOP 11
+ if (.not. equal(max("foo", "bar", s), "gee")) STOP 12
+ if (.not. equal(min("foo", s, "bar"), "bar")) STOP 13
+ if (.not. equal(max("foo", s, "bar"), "gee")) STOP 14
+ if (.not. equal(min(s, "foo", "bar"), "bar")) STOP 15
+ if (.not. equal(max(s, "foo", "bar"), "gee")) STOP 16
- if (.not. equal(min("", ""), "")) call abort
- if (.not. equal(max("", ""), "")) call abort
- if (.not. equal(min("", " "), " ")) call abort
- if (.not. equal(max("", " "), " ")) call abort
+ if (.not. equal(min("", ""), "")) STOP 17
+ if (.not. equal(max("", ""), "")) STOP 18
+ if (.not. equal(min("", " "), " ")) STOP 19
+ if (.not. equal(max("", " "), " ")) STOP 20
- if (.not. equal(min(u,v,w), "az ")) call abort
- if (.not. equal(max(u,v,w), "flunch")) call abort
- if (.not. equal(min(u,vp,w), "az ")) call abort
- if (.not. equal(max(u,vp,w), "flunch")) call abort
- if (.not. equal(min(u,v,wp), "az ")) call abort
- if (.not. equal(max(u,v,wp), "flunch")) call abort
- if (.not. equal(min(up,v,w), "az ")) call abort
- if (.not. equal(max(up,v,w), "flunch")) call abort
+ if (.not. equal(min(u,v,w), "az ")) STOP 21
+ if (.not. equal(max(u,v,w), "flunch")) STOP 22
+ if (.not. equal(min(u,vp,w), "az ")) STOP 23
+ if (.not. equal(max(u,vp,w), "flunch")) STOP 24
+ if (.not. equal(min(u,v,wp), "az ")) STOP 25
+ if (.not. equal(max(u,v,wp), "flunch")) STOP 26
+ if (.not. equal(min(up,v,w), "az ")) STOP 27
+ if (.not. equal(max(up,v,w), "flunch")) STOP 28
call foo("gee ","az ",s,t,u,v)
call foo("gee ","az ",s,t,u,v)
@@ -59,8 +59,8 @@ contains
character(len=*) :: res_min, res_max
character(len=*), optional :: a, b, c, d
- if (.not. equal(min(a,b,c,d), res_min)) call abort
- if (.not. equal(max(a,b,c,d), res_max)) call abort
+ if (.not. equal(min(a,b,c,d), res_min)) STOP 29
+ if (.not. equal(max(a,b,c,d), res_max)) STOP 30
end subroutine foo
pure function equal(a,b)
diff --git a/gcc/testsuite/gfortran.dg/minmaxloc_1.f90 b/gcc/testsuite/gfortran.dg/minmaxloc_1.f90
index fcdf7952e66..39db4fb4943 100644
--- a/gcc/testsuite/gfortran.dg/minmaxloc_1.f90
+++ b/gcc/testsuite/gfortran.dg/minmaxloc_1.f90
@@ -111,7 +111,7 @@ contains
subroutine check(n, i,j)
integer, value, intent(in) :: i,j,n
if(i /= j) then
- call abort()
+ STOP 1
! print *, 'ERROR: Test',n,' expected ',i,' received ', j
end if
end subroutine check
diff --git a/gcc/testsuite/gfortran.dg/minmaxloc_10.f90 b/gcc/testsuite/gfortran.dg/minmaxloc_10.f90
index 932a40be266..581ab9508a6 100644
--- a/gcc/testsuite/gfortran.dg/minmaxloc_10.f90
+++ b/gcc/testsuite/gfortran.dg/minmaxloc_10.f90
@@ -111,7 +111,7 @@ contains
subroutine check(n, i,j)
integer, value, intent(in) :: i,j,n
if(i /= j) then
- call abort()
+ STOP 1
! print *, 'ERROR: Test',n,' expected ',i,' received ', j
end if
end subroutine check
diff --git a/gcc/testsuite/gfortran.dg/minmaxloc_11.f90 b/gcc/testsuite/gfortran.dg/minmaxloc_11.f90
index 1ab8eb11d73..ff720a1c0ed 100644
--- a/gcc/testsuite/gfortran.dg/minmaxloc_11.f90
+++ b/gcc/testsuite/gfortran.dg/minmaxloc_11.f90
@@ -3,7 +3,7 @@ program main
character(len=3), dimension(2) :: a
a(1) = 'aaa'
a(2) = 'bbb'
- if (maxloc(a,dim=1) /= 2) call abort
- if (minloc(a,dim=1) /= 1) call abort
+ if (maxloc(a,dim=1) /= 2) STOP 1
+ if (minloc(a,dim=1) /= 1) STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/minmaxloc_2.f90 b/gcc/testsuite/gfortran.dg/minmaxloc_2.f90
index a4fd7ae5e77..24efebbab63 100644
--- a/gcc/testsuite/gfortran.dg/minmaxloc_2.f90
+++ b/gcc/testsuite/gfortran.dg/minmaxloc_2.f90
@@ -21,8 +21,8 @@ PROGRAM ERR_MINLOC
K(I) = MAXLOC (ABS (A - B), 1)
END DO
- if (any (J .NE. (/1,2,3,4,5,6,7/))) call abort ()
- if (any (K .NE. (/7,7,1,1,1,1,1/))) call abort ()
+ if (any (J .NE. (/1,2,3,4,5,6,7/))) STOP 1
+ if (any (K .NE. (/7,7,1,1,1,1,1/))) STOP 2
STOP
diff --git a/gcc/testsuite/gfortran.dg/minmaxloc_3.f90 b/gcc/testsuite/gfortran.dg/minmaxloc_3.f90
index fbc1b09f727..e782e24603c 100644
--- a/gcc/testsuite/gfortran.dg/minmaxloc_3.f90
+++ b/gcc/testsuite/gfortran.dg/minmaxloc_3.f90
@@ -112,7 +112,7 @@ contains
subroutine check(n, i,j)
integer, value, intent(in) :: i,j,n
if(i /= j) then
- call abort()
+ STOP 1
! print *, 'ERROR: Test',n,' expected ',i,' received ', j
end if
end subroutine check
diff --git a/gcc/testsuite/gfortran.dg/minmaxloc_4.f90 b/gcc/testsuite/gfortran.dg/minmaxloc_4.f90
index 673739518dc..753fc51e072 100644
--- a/gcc/testsuite/gfortran.dg/minmaxloc_4.f90
+++ b/gcc/testsuite/gfortran.dg/minmaxloc_4.f90
@@ -9,7 +9,7 @@ PROGRAM TST
!WRITE(*,*) SUM(A(:,1:3),1)
!WRITE(*,*) MINLOC(SUM(A(:,1:3),1),1)
- if (minloc(sum(a(:,1:3),1),1) .ne. 1) call abort()
- if (maxloc(sum(a(:,1:3),1),1) .ne. 3) call abort()
+ if (minloc(sum(a(:,1:3),1),1) .ne. 1) STOP 1
+ if (maxloc(sum(a(:,1:3),1),1) .ne. 3) STOP 2
END PROGRAM TST
diff --git a/gcc/testsuite/gfortran.dg/minmaxloc_5.f90 b/gcc/testsuite/gfortran.dg/minmaxloc_5.f90
index 92e2103dedf..2f2b82ee052 100644
--- a/gcc/testsuite/gfortran.dg/minmaxloc_5.f90
+++ b/gcc/testsuite/gfortran.dg/minmaxloc_5.f90
@@ -4,15 +4,15 @@ program GA4076
REAL DDA(100)
dda = (/(J1,J1=1,100)/)
IDS = MAXLOC(DDA,1)
- if (ids.ne.100) call abort !expect 100
+ if (ids.ne.100) STOP 1!expect 100
IDS = MAXLOC(DDA,1, (/(J1,J1=1,100)/) > 50)
- if (ids.ne.100) call abort !expect 100
+ if (ids.ne.100) STOP 2!expect 100
IDS = minLOC(DDA,1)
- if (ids.ne.1) call abort !expect 1
+ if (ids.ne.1) STOP 3!expect 1
IDS = MinLOC(DDA,1, (/(J1,J1=1,100)/) > 50)
- if (ids.ne.51) call abort !expect 51
+ if (ids.ne.51) STOP 4!expect 51
END
diff --git a/gcc/testsuite/gfortran.dg/minmaxloc_6.f90 b/gcc/testsuite/gfortran.dg/minmaxloc_6.f90
index c61fab47edf..9ac79be797d 100644
--- a/gcc/testsuite/gfortran.dg/minmaxloc_6.f90
+++ b/gcc/testsuite/gfortran.dg/minmaxloc_6.f90
@@ -4,8 +4,8 @@
dda = (/(J1,J1=1,100)/)
IDS = MAXLOC(DDA,1)
- if (ids.ne.100) call abort !expect 100
+ if (ids.ne.100) STOP 1!expect 100
IDS = MAXLOC(DDA,1, (/(J1,J1=1,100)/) > 50)
- if (ids.ne.100) call abort !expect 100
+ if (ids.ne.100) STOP 2!expect 100
END
diff --git a/gcc/testsuite/gfortran.dg/minmaxloc_7.f90 b/gcc/testsuite/gfortran.dg/minmaxloc_7.f90
index 2645a96e444..4270348e12c 100644
--- a/gcc/testsuite/gfortran.dg/minmaxloc_7.f90
+++ b/gcc/testsuite/gfortran.dg/minmaxloc_7.f90
@@ -12,10 +12,10 @@ program test
call sub2 (minloc(A),11)
call sub2 (maxloc(A, mask=mask),9)
A = minloc(A)
- if (size (A) /= 1 .or. A(1) /= 11) call abort ()
+ if (size (A) /= 1 .or. A(1) /= 11) STOP 1
contains
subroutine sub2(A,n)
integer :: A(:),n
- if (A(1) /= n .or. size (A) /= 1) call abort ()
+ if (A(1) /= n .or. size (A) /= 1) STOP 2
end subroutine sub2
end program test
diff --git a/gcc/testsuite/gfortran.dg/minmaxloc_8.f90 b/gcc/testsuite/gfortran.dg/minmaxloc_8.f90
index e9f37f2b689..e4097e50d4b 100644
--- a/gcc/testsuite/gfortran.dg/minmaxloc_8.f90
+++ b/gcc/testsuite/gfortran.dg/minmaxloc_8.f90
@@ -13,36 +13,36 @@ program main
a = [ 1.0, 3.0, 2.0]
write (unit=l1,fmt=*) 2_1
write (unit=l2,fmt=*) maxloc(a,kind=1)
- if (l1 /= l2) call abort
+ if (l1 /= l2) STOP 1
write (unit=l1,fmt=*) 2_2
write (unit=l2,fmt=*) maxloc(a,kind=2)
- if (l1 /= l2) call abort
+ if (l1 /= l2) STOP 2
write (unit=l1,fmt=*) 2_4
write (unit=l2,fmt=*) maxloc(a,kind=4)
- if (l1 /= l2) call abort
+ if (l1 /= l2) STOP 3
write (unit=l1,fmt=*) 2_8
write (unit=l2,fmt=*) maxloc(a,kind=8)
- if (l1 /= l2) call abort
+ if (l1 /= l2) STOP 4
a = [ 3.0, -1.0, 2.0]
write (unit=l1,fmt=*) 2_1
write (unit=l2,fmt=*) minloc(a,kind=1)
- if (l1 /= l2) call abort
+ if (l1 /= l2) STOP 5
write (unit=l1,fmt=*) 2_2
write (unit=l2,fmt=*) minloc(a,kind=2)
- if (l1 /= l2) call abort
+ if (l1 /= l2) STOP 6
write (unit=l1,fmt=*) 2_4
write (unit=l2,fmt=*) minloc(a,kind=4)
- if (l1 /= l2) call abort
+ if (l1 /= l2) STOP 7
write (unit=l1,fmt=*) 2_8
write (unit=l2,fmt=*) minloc(a,kind=8)
- if (l1 /= l2) call abort
+ if (l1 /= l2) STOP 8
end program main
diff --git a/gcc/testsuite/gfortran.dg/minmaxval_1.f90 b/gcc/testsuite/gfortran.dg/minmaxval_1.f90
index bb16d2e5f0f..4466b38f358 100644
--- a/gcc/testsuite/gfortran.dg/minmaxval_1.f90
+++ b/gcc/testsuite/gfortran.dg/minmaxval_1.f90
@@ -24,6 +24,6 @@
EXTERNAL fun4a, fun4b
integer fun4a, fun4b
- if (fun4a () .ne. 15) call abort
- if (fun4b () .ne. 25) call abort
+ if (fun4a () .ne. 15) STOP 1
+ if (fun4b () .ne. 25) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/minval_char_1.f90 b/gcc/testsuite/gfortran.dg/minval_char_1.f90
index 4d2598ea8e4..c7aa0a12f3c 100644
--- a/gcc/testsuite/gfortran.dg/minval_char_1.f90
+++ b/gcc/testsuite/gfortran.dg/minval_char_1.f90
@@ -15,7 +15,7 @@ program main
write (unit=a,fmt='(I5.5)') (21-i*i+6*i,i=1,n)
res = minval(a)
- if (res /= '00026') call abort
+ if (res /= '00026') STOP 1
do
call random_number(r)
v = int(r * 100)
@@ -23,18 +23,18 @@ program main
end do
write (unit=b,fmt='(I5.5)') v
write (unit=res,fmt='(I5.5)') minval(v)
- if (res /= minval(b)) call abort
+ if (res /= minval(b)) STOP 2
smask = .true.
- if (res /= minval(b, smask)) call abort
+ if (res /= minval(b, smask)) STOP 3
smask = .false.
- if (all_full /= minval(b, smask)) call abort
+ if (all_full /= minval(b, smask)) STOP 4
mask = v < 30
write (unit=res,fmt='(I5.5)') minval(v,mask)
- if (res /= minval(b, mask)) call abort
+ if (res /= minval(b, mask)) STOP 5
mask = .false.
- if (minval(b, mask) /= all_full) call abort
+ if (minval(b, mask) /= all_full) STOP 6
allocate (empty(0:3,0))
res = minval(empty)
- if (res /= all_full) call abort
+ if (res /= all_full) STOP 7
end program main
diff --git a/gcc/testsuite/gfortran.dg/minval_char_2.f90 b/gcc/testsuite/gfortran.dg/minval_char_2.f90
index 93ea4f6e18f..b61fb6c4332 100644
--- a/gcc/testsuite/gfortran.dg/minval_char_2.f90
+++ b/gcc/testsuite/gfortran.dg/minval_char_2.f90
@@ -17,7 +17,7 @@ program main
all_full = transfer(kmin,all_full)
write (unit=a,fmt='(I5.5)') (21-i*i+6*i,i=1,n)
res = minval(a)
- if (res /= 4_'00026') call abort
+ if (res /= 4_'00026') STOP 1
do
call random_number(r)
v = int(r * 100)
@@ -25,18 +25,18 @@ program main
end do
write (unit=b,fmt='(I5.5)') v
write (unit=res,fmt='(I5.5)') minval(v)
- if (res /= minval(b)) call abort
+ if (res /= minval(b)) STOP 2
smask = .true.
- if (res /= minval(b, smask)) call abort
+ if (res /= minval(b, smask)) STOP 3
smask = .false.
- if (all_full /= minval(b, smask)) call abort
+ if (all_full /= minval(b, smask)) STOP 4
mask = v < 30
write (unit=res,fmt='(I5.5)') minval(v,mask)
- if (res /= minval(b, mask)) call abort
+ if (res /= minval(b, mask)) STOP 5
mask = .false.
- if (minval(b, mask) /= all_full) call abort
+ if (minval(b, mask) /= all_full) STOP 6
allocate (empty(0:3,0))
res = minval(empty)
- if (res /= all_full) call abort
+ if (res /= all_full) STOP 7
end program main
diff --git a/gcc/testsuite/gfortran.dg/minval_char_3.f90 b/gcc/testsuite/gfortran.dg/minval_char_3.f90
index eea9aa6cd4c..110fc5603b9 100644
--- a/gcc/testsuite/gfortran.dg/minval_char_3.f90
+++ b/gcc/testsuite/gfortran.dg/minval_char_3.f90
@@ -18,33 +18,33 @@ program main
r1 = minval(a,dim=1)
write (unit=r2,fmt='(I6.6)') minval(v,dim=1)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 1
r1 = 'x'
write (unit=r1,fmt='(I6.6)') minval(v,dim=1)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 2
r1 = 'y'
r1 = minval(a,dim=2)
write (unit=r2,fmt='(I6.6)') minval(v,dim=2)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 3
r1 = 'z'
write (unit=r1,fmt='(I6.6)') minval(v,dim=2)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 4
allocate (a_alloc(0,1), v_alloc(0,1))
ret = 'what'
ret = minval(a_alloc,dim=1)
- if (ret(1) /= all_full) call abort
+ if (ret(1) /= all_full) STOP 5
r1 = 'qq'
r1 = minval(a, dim=1, mask=a>"000200");
- if (any(r1 /= all_full .neqv. minval(v,dim=1, mask=v>200) < 1000)) call abort
- if (any(minval(a, dim=1, mask=a>"000200") /= all_full .neqv. minval(v,dim=1, mask=v>200) < 1000)) call abort
+ if (any(r1 /= all_full .neqv. minval(v,dim=1, mask=v>200) < 1000)) STOP 6
+ if (any(minval(a, dim=1, mask=a>"000200") /= all_full .neqv. minval(v,dim=1, mask=v>200) < 1000)) STOP 7
r1 = 'rr'
r1 = minval(a, dim=2, mask=a>"000200");
- if (any(r1 /= all_full .neqv. minval(v,dim=2, mask=v>200) < 1000)) call abort
- if (any(minval(a, dim=2, mask=a>"000200") /= all_full .neqv. minval(v,dim=2, mask=v>200) < 1000)) call abort
+ if (any(r1 /= all_full .neqv. minval(v,dim=2, mask=v>200) < 1000)) STOP 8
+ if (any(minval(a, dim=2, mask=a>"000200") /= all_full .neqv. minval(v,dim=2, mask=v>200) < 1000)) STOP 9
mask = .true.
forall (i=1:n)
@@ -54,16 +54,16 @@ program main
r1 = 'aa'
r1 = minval(a, dim=1, mask=mask)
write(unit=r2,fmt='(I6.6)') minval(v,dim=1, mask=mask)
- if (any(r1 /= r2)) call abort
+ if (any(r1 /= r2)) STOP 10
r1 = 'xyz'
smask = .true.
r1 = minval(a, dim=1, mask=smask)
write (unit=r2,fmt='(I6.6)') minval(v,dim=1)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 11
smask = .false.
r1 = 'foobar'
r1 = minval(a, dim=1, mask=smask)
- if (any(r1 /= all_full)) call abort
+ if (any(r1 /= all_full)) STOP 12
end program main
diff --git a/gcc/testsuite/gfortran.dg/minval_char_4.f90 b/gcc/testsuite/gfortran.dg/minval_char_4.f90
index 49176be033a..6417c01767b 100644
--- a/gcc/testsuite/gfortran.dg/minval_char_4.f90
+++ b/gcc/testsuite/gfortran.dg/minval_char_4.f90
@@ -21,33 +21,33 @@ program main
r1 = minval(a,dim=1)
write (unit=r2,fmt='(I6.6)') minval(v,dim=1)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 1
r1 = 4_'x'
write (unit=r1,fmt='(I6.6)') minval(v,dim=1)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 2
r1 = 4_'y'
r1 = minval(a,dim=2)
write (unit=r2,fmt='(I6.6)') minval(v,dim=2)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 3
r1 = 4_'z'
write (unit=r1,fmt='(I6.6)') minval(v,dim=2)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 4
allocate (a_alloc(0,1), v_alloc(0,1))
ret = 4_'what'
ret = minval(a_alloc,dim=1)
- if (ret(1) /= all_full) call abort
+ if (ret(1) /= all_full) STOP 5
r1 = 4_'qq'
r1 = minval(a, dim=1, mask=a>4_"000200");
- if (any(r1 /= all_full .neqv. minval(v,dim=1, mask=v>200) < 1000)) call abort
- if (any(minval(a, dim=1, mask=a>4_"000200") /= all_full .neqv. minval(v,dim=1, mask=v>200) < 1000)) call abort
+ if (any(r1 /= all_full .neqv. minval(v,dim=1, mask=v>200) < 1000)) STOP 6
+ if (any(minval(a, dim=1, mask=a>4_"000200") /= all_full .neqv. minval(v,dim=1, mask=v>200) < 1000)) STOP 7
r1 = 4_'rr'
r1 = minval(a, dim=2, mask=a>4_"000200");
- if (any(r1 /= all_full .neqv. minval(v,dim=2, mask=v>200) < 1000)) call abort
- if (any(minval(a, dim=2, mask=a>4_"000200") /= all_full .neqv. minval(v,dim=2, mask=v>200) < 1000)) call abort
+ if (any(r1 /= all_full .neqv. minval(v,dim=2, mask=v>200) < 1000)) STOP 8
+ if (any(minval(a, dim=2, mask=a>4_"000200") /= all_full .neqv. minval(v,dim=2, mask=v>200) < 1000)) STOP 9
mask = .true.
forall (i=1:n)
@@ -57,16 +57,16 @@ program main
r1 = 4_'aa'
r1 = minval(a, dim=1, mask=mask)
write(unit=r2,fmt='(I6.6)') minval(v,dim=1, mask=mask)
- if (any(r1 /= r2)) call abort
+ if (any(r1 /= r2)) STOP 10
r1 = 4_'xyz'
smask = .true.
r1 = minval(a, dim=1, mask=smask)
write (unit=r2,fmt='(I6.6)') minval(v,dim=1)
- if (any (r1 /= r2)) call abort
+ if (any (r1 /= r2)) STOP 11
smask = .false.
r1 = 4_'foobar'
r1 = minval(a, dim=1, mask=smask)
- if (any(r1 /= all_full)) call abort
+ if (any(r1 /= all_full)) STOP 12
end program main
diff --git a/gcc/testsuite/gfortran.dg/minval_char_5.f90 b/gcc/testsuite/gfortran.dg/minval_char_5.f90
index 5af344dc803..31b873427c9 100644
--- a/gcc/testsuite/gfortran.dg/minval_char_5.f90
+++ b/gcc/testsuite/gfortran.dg/minval_char_5.f90
@@ -8,11 +8,11 @@ program tminmaxval
character(len=*), parameter :: s(3) = (/"a", "b", "c"/)
if (minval(s) /= b) then
- call abort
+ STOP 1
end if
if (maxval(s) /= e) then
- call abort
+ STOP 2
end if
end program tminmaxval
diff --git a/gcc/testsuite/gfortran.dg/minval_parameter_1.f90 b/gcc/testsuite/gfortran.dg/minval_parameter_1.f90
index 2d0193596f9..dd136ec0a85 100644
--- a/gcc/testsuite/gfortran.dg/minval_parameter_1.f90
+++ b/gcc/testsuite/gfortran.dg/minval_parameter_1.f90
@@ -29,23 +29,23 @@ program main
character(len=3), parameter :: cm4 = minval (c, c>"g")
character(len=3), dimension(3), parameter :: cm5 = minval(c,dim=1,mask=c>"g")
- if (any (im1 /= [ -1, -3, -7])) call abort
- if (im2 /= 5) call abort
- if (any (im3 /= [ -7,2])) call abort
- if (im4 /= 2) call abort
- if (any (im5 /= [huge(im5), 5, 11])) call abort
- if (any (im6 /= [huge(im6), 5])) call abort
+ if (any (im1 /= [ -1, -3, -7])) STOP 1
+ if (im2 /= 5) STOP 2
+ if (any (im3 /= [ -7,2])) STOP 3
+ if (im4 /= 2) STOP 4
+ if (any (im5 /= [huge(im5), 5, 11])) STOP 5
+ if (any (im6 /= [huge(im6), 5])) STOP 6
- if (any (rm1 /= [ -1., -3., -7.])) call abort
- if (rm2 /= 5) call abort
- if (any (rm3 /= [ -7.,2.])) call abort
- if (rm4 /= 2) call abort
- if (any (rm5 /= [huge(rm5), 5., 11.])) call abort
- if (any (rm6 /= [huge(rm6), 5.])) call abort
+ if (any (rm1 /= [ -1., -3., -7.])) STOP 7
+ if (rm2 /= 5) STOP 8
+ if (any (rm3 /= [ -7.,2.])) STOP 9
+ if (rm4 /= 2) STOP 10
+ if (any (rm5 /= [huge(rm5), 5., 11.])) STOP 11
+ if (any (rm6 /= [huge(rm6), 5.])) STOP 12
- if (cm1 /= "asd") call abort
- if (any (cm2 /= ["asd", "jkl", "ert" ])) call abort
- if (any (cm3 /= ["asd", "fgh" ])) call abort
- if (cm4 /= "jkl") call abort
- if (any(cm5 /= [ maxv, "jkl", "zui" ] )) call abort
+ if (cm1 /= "asd") STOP 13
+ if (any (cm2 /= ["asd", "jkl", "ert" ])) STOP 14
+ if (any (cm3 /= ["asd", "fgh" ])) STOP 15
+ if (cm4 /= "jkl") STOP 16
+ if (any(cm5 /= [ maxv, "jkl", "zui" ] )) STOP 17
end program main
diff --git a/gcc/testsuite/gfortran.dg/missing_optional_dummy_1.f90 b/gcc/testsuite/gfortran.dg/missing_optional_dummy_1.f90
index 29f08f9e0e8..c869819956e 100644
--- a/gcc/testsuite/gfortran.dg/missing_optional_dummy_1.f90
+++ b/gcc/testsuite/gfortran.dg/missing_optional_dummy_1.f90
@@ -9,17 +9,17 @@
! This was the case that would fail - PR case was an intrinsic call.
if (scan ("A quick brown fox jumps over the lazy dog", "lazy", back) &
.ne. myscan ("A quick brown fox jumps over the lazy dog", "lazy")) &
- call abort ()
+ STOP 1
! Check that the patch works with non-intrinsic functions.
if (myscan ("A quick brown fox jumps over the lazy dog", "fox", back) &
.ne. thyscan ("A quick brown fox jumps over the lazy dog", "fox")) &
- call abort ()
+ STOP 2
! Check that missing, optional character actual arguments are OK.
if (scan ("A quick brown fox jumps over the lazy dog", "over", back) &
.ne. thyscan ("A quick brown fox jumps over the lazy dog")) &
- call abort ()
+ STOP 3
contains
integer function myscan (str, substr, back)
diff --git a/gcc/testsuite/gfortran.dg/missing_optional_dummy_2.f90 b/gcc/testsuite/gfortran.dg/missing_optional_dummy_2.f90
index d6d0cf09529..7e05d848082 100644
--- a/gcc/testsuite/gfortran.dg/missing_optional_dummy_2.f90
+++ b/gcc/testsuite/gfortran.dg/missing_optional_dummy_2.f90
@@ -29,7 +29,7 @@ MODULE myint
END SUBROUTINE SUB
END MODULE myint
- if (isscan () /= 0) call abort
+ if (isscan () /= 0) STOP 1
contains
integer function isscan (substr)
character(*), optional :: substr
diff --git a/gcc/testsuite/gfortran.dg/missing_optional_dummy_6.f90 b/gcc/testsuite/gfortran.dg/missing_optional_dummy_6.f90
index 8c2ea6a8a89..4468ff159b9 100644
--- a/gcc/testsuite/gfortran.dg/missing_optional_dummy_6.f90
+++ b/gcc/testsuite/gfortran.dg/missing_optional_dummy_6.f90
@@ -32,17 +32,17 @@ contains
! Called functions
subroutine assumed_shape2 (as2)
integer, dimension(:),optional :: as2
- if (present (as2)) call abort()
+ if (present (as2)) STOP 1
end subroutine assumed_shape2
subroutine explicit_shape2 (es2)
integer, dimension(5),optional :: es2
- if (present (es2)) call abort()
+ if (present (es2)) STOP 2
end subroutine explicit_shape2
subroutine scalar2 (slr2)
integer, optional :: slr2
- if (present (slr2)) call abort()
+ if (present (slr2)) STOP 3
end subroutine scalar2
end program test
diff --git a/gcc/testsuite/gfortran.dg/missing_parens_1.f90 b/gcc/testsuite/gfortran.dg/missing_parens_1.f90
index e9657f9bcad..96c96774400 100644
--- a/gcc/testsuite/gfortran.dg/missing_parens_1.f90
+++ b/gcc/testsuite/gfortran.dg/missing_parens_1.f90
@@ -7,10 +7,10 @@ real(kind=8),dimension((1)::r2 ! { dg-error "Missing '\\)' in statement" }
real(kind=8),dimension(3,3)::r3
character(25) :: a
a = 'I am not a )))))'')''.'
-if ((((((a /= "I am not a )))))')'.")))))) call abort
-if ((((((a /= 'I am not a )))))'')''.')))))) call abort
+if ((((((a /= "I am not a )))))')'.")))))) STOP 1
+if ((((((a /= 'I am not a )))))'')''.')))))) STOP 2
a = "I am not a )))))"")""."
-if ((((((a /= "I am not a )))))"")"".")))))) call abort
+if ((((((a /= "I am not a )))))"")"".")))))) STOP 3
if (((3*r1)**2)>= 0) a = "good"
if ((3*r1)**2)>= 0) a = "bad" ! { dg-error "Missing '\\(' in statement" }
r3((2,2)) = 4.3 ! { dg-error "found COMPLEX" }
diff --git a/gcc/testsuite/gfortran.dg/missing_parens_2.f90 b/gcc/testsuite/gfortran.dg/missing_parens_2.f90
index b06c2ae6756..117ae4601d1 100644
--- a/gcc/testsuite/gfortran.dg/missing_parens_2.f90
+++ b/gcc/testsuite/gfortran.dg/missing_parens_2.f90
@@ -5,10 +5,10 @@ implicit none
real(kind=8)::r1=0
character(25) :: a
a = 'I am not a )))))'')''.'
-if ((((((a /= "I am not a )))))')'.")))))) call abort
-if ((((((a /= 'I am not a )))))'')''.')))))) call abort
+if ((((((a /= "I am not a )))))')'.")))))) STOP 1
+if ((((((a /= 'I am not a )))))'')''.')))))) STOP 2
a = "I am not a )))))"")""."
-if ((((((a /= "I am not a )))))"")"".")))))) call abort
+if ((((((a /= "I am not a )))))"")"".")))))) STOP 3
if (((3*r1)**2)>= 0) a = "good"
-if (a /= "good") call abort
+if (a /= "good") STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/mod_large_1.f90 b/gcc/testsuite/gfortran.dg/mod_large_1.f90
index 1047ad62e98..98304c895ea 100644
--- a/gcc/testsuite/gfortran.dg/mod_large_1.f90
+++ b/gcc/testsuite/gfortran.dg/mod_large_1.f90
@@ -10,7 +10,7 @@ program mod_large_1
implicit none
real :: r1
r1 = mod (1e22, 1.7)
- if (abs(r1 - 0.995928764) > 1e-5) call abort
+ if (abs(r1 - 0.995928764) > 1e-5) STOP 1
r1 = modulo (1e22, -1.7)
- if (abs(r1 + 0.704071283) > 1e-5) call abort
+ if (abs(r1 + 0.704071283) > 1e-5) STOP 2
end program mod_large_1
diff --git a/gcc/testsuite/gfortran.dg/mod_sign0_1.f90 b/gcc/testsuite/gfortran.dg/mod_sign0_1.f90
index 61ef5fd046c..369296abac8 100644
--- a/gcc/testsuite/gfortran.dg/mod_sign0_1.f90
+++ b/gcc/testsuite/gfortran.dg/mod_sign0_1.f90
@@ -21,34 +21,34 @@ program mod_sign0_1
r = mod (4., 2.)
t = sign (1., r)
- if (t < 0.) call abort
+ if (t < 0.) STOP 1
r = modulo (4., 2.)
t = sign (1., r)
- if (t < 0.) call abort
+ if (t < 0.) STOP 2
r = mod (-4., 2.)
t = sign (1., r)
- if (t > 0.) call abort
+ if (t > 0.) STOP 3
r = modulo (-4., 2.)
t = sign (1., r)
- if (t < 0.) call abort
+ if (t < 0.) STOP 4
r = mod (4., -2.)
t = sign (1., r)
- if (t < 0.) call abort
+ if (t < 0.) STOP 5
r = modulo (4., -2.)
t = sign (1., r)
- if (t > 0.) call abort
+ if (t > 0.) STOP 6
r = mod (-4., -2.)
t = sign (1., r)
- if (t > 0.) call abort
+ if (t > 0.) STOP 7
r = modulo (-4., -2.)
t = sign (1., r)
- if (t > 0.) call abort
+ if (t > 0.) STOP 8
end program mod_sign0_1
diff --git a/gcc/testsuite/gfortran.dg/module_blank_common.f90 b/gcc/testsuite/gfortran.dg/module_blank_common.f90
index 1eab444938b..d0e4311c5d7 100644
--- a/gcc/testsuite/gfortran.dg/module_blank_common.f90
+++ b/gcc/testsuite/gfortran.dg/module_blank_common.f90
@@ -13,5 +13,5 @@ program blank_common
complex z
a = 999.0_4
b = -999.0_4
- if (z.ne.cmplx (a,b)) call abort ()
+ if (z.ne.cmplx (a,b)) STOP 1
end program blank_common
diff --git a/gcc/testsuite/gfortran.dg/module_commons_1.f90 b/gcc/testsuite/gfortran.dg/module_commons_1.f90
index 73d5257f7a7..091d4e8eca1 100644
--- a/gcc/testsuite/gfortran.dg/module_commons_1.f90
+++ b/gcc/testsuite/gfortran.dg/module_commons_1.f90
@@ -12,7 +12,7 @@ end module m2
subroutine foo ()
use m2
- if (a.ne.99.0) call abort ()
+ if (a.ne.99.0) STOP 1
end subroutine foo
program collision
diff --git a/gcc/testsuite/gfortran.dg/module_commons_3.f90 b/gcc/testsuite/gfortran.dg/module_commons_3.f90
index 89c71b897eb..9fd580b1534 100644
--- a/gcc/testsuite/gfortran.dg/module_commons_3.f90
+++ b/gcc/testsuite/gfortran.dg/module_commons_3.f90
@@ -19,7 +19,7 @@ MODULE TEST4
CONTAINS
subroutine FOOBAR (CHECK)
CHARACTER(LEN=80) :: CHECK
- IF (TESTCHAR .NE. CHECK) CALL ABORT
+ IF (TESTCHAR .NE. CHECK) STOP 1
end subroutine
END MODULE TEST4
@@ -41,8 +41,8 @@ contains
end subroutine
subroutine BAR (CHECK)
CHARACTER(LEN=80) :: CHECK
- IF (TESTCHAR .NE. CHECK) CALL ABORT
- IF (CHR .NE. CHECK) CALL ABORT
+ IF (TESTCHAR .NE. CHECK) STOP 2
+ IF (CHR .NE. CHECK) STOP 3
end subroutine
END MODULE TEST2
diff --git a/gcc/testsuite/gfortran.dg/module_double_reuse.f90 b/gcc/testsuite/gfortran.dg/module_double_reuse.f90
index 04e851220a9..361dd992ce1 100644
--- a/gcc/testsuite/gfortran.dg/module_double_reuse.f90
+++ b/gcc/testsuite/gfortran.dg/module_double_reuse.f90
@@ -14,6 +14,6 @@ program d
x = 1.e0_e
y = 1.e0_f
u = 99.0
- if (kind(x).ne.kind(y)) call abort ()
- if (v.ne.u) call abort ()
+ if (kind(x).ne.kind(y)) STOP 1
+ if (v.ne.u) STOP 2
end program d
diff --git a/gcc/testsuite/gfortran.dg/module_equivalence_1.f90 b/gcc/testsuite/gfortran.dg/module_equivalence_1.f90
index 50a19f2a438..03cbf6b07ad 100644
--- a/gcc/testsuite/gfortran.dg/module_equivalence_1.f90
+++ b/gcc/testsuite/gfortran.dg/module_equivalence_1.f90
@@ -12,7 +12,7 @@ end module test_equiv
subroutine foo ()
use test_equiv, z=>b
- if (any (d(5:8)/=z)) call abort ()
+ if (any (d(5:8)/=z)) STOP 1
end subroutine foo
program module_equiv
diff --git a/gcc/testsuite/gfortran.dg/module_equivalence_2.f90 b/gcc/testsuite/gfortran.dg/module_equivalence_2.f90
index 3ec8efb41a4..69feb610058 100644
--- a/gcc/testsuite/gfortran.dg/module_equivalence_2.f90
+++ b/gcc/testsuite/gfortran.dg/module_equivalence_2.f90
@@ -18,7 +18,7 @@ end module b
use a
use b
- if (reM .ne. 1.77d0) call abort ()
+ if (reM .ne. 1.77d0) STOP 1
reM = 0.57d1
- if (M .ne. 0.57d1) call abort ()
+ if (M .ne. 0.57d1) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/module_equivalence_3.f90 b/gcc/testsuite/gfortran.dg/module_equivalence_3.f90
index 75b90285a2c..4aa4027a3e0 100644
--- a/gcc/testsuite/gfortran.dg/module_equivalence_3.f90
+++ b/gcc/testsuite/gfortran.dg/module_equivalence_3.f90
@@ -20,17 +20,17 @@ end module aap
contains
subroutine foo
use aap, only : c=>b
- if (any(c .ne. b)) call abort ()
+ if (any(c .ne. b)) STOP 1
end subroutine
subroutine bar
use aap, only : a
- if (any(a(3:5) .ne. b)) call abort ()
+ if (any(a(3:5) .ne. b)) STOP 2
end subroutine
! Make sure that bad things do not happen if we do not USE a or b.
subroutine foobar
use aap, only : d
- if (any(d(3:5) .ne. b)) call abort ()
+ if (any(d(3:5) .ne. b)) STOP 3
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/module_equivalence_5.f90 b/gcc/testsuite/gfortran.dg/module_equivalence_5.f90
index e5acfaaa9dc..a4d81af65cb 100644
--- a/gcc/testsuite/gfortran.dg/module_equivalence_5.f90
+++ b/gcc/testsuite/gfortran.dg/module_equivalence_5.f90
@@ -19,7 +19,7 @@ contains
QLA3 = QCA
QLA3( 2:10:3) = QCA ( 1:5:2) + 1
QLA1( 2:10:3) = QLA2( 1:5:2) + 1 !failed because of dependency
- if (any (qla1 .ne. qla3)) call abort
+ if (any (qla1 .ne. qla3)) STOP 1
END SUBROUTINE
end module
diff --git a/gcc/testsuite/gfortran.dg/module_interface_1.f90 b/gcc/testsuite/gfortran.dg/module_interface_1.f90
index 354aa97f649..6a471b76520 100644
--- a/gcc/testsuite/gfortran.dg/module_interface_1.f90
+++ b/gcc/testsuite/gfortran.dg/module_interface_1.f90
@@ -30,7 +30,7 @@
integer, intent (in), dimension(:) :: Unsorted
integer, dimension (1) :: N
N = Max_Location (Unsorted)
- if (N(1).ne.5) call abort ()
+ if (N(1).ne.5) STOP 1
return
end subroutine Selection_Sort
end program module_interface
diff --git a/gcc/testsuite/gfortran.dg/module_nan.f90 b/gcc/testsuite/gfortran.dg/module_nan.f90
index 7e496c07161..81d3784a38e 100644
--- a/gcc/testsuite/gfortran.dg/module_nan.f90
+++ b/gcc/testsuite/gfortran.dg/module_nan.f90
@@ -16,13 +16,13 @@ program a
use nonordinal
implicit none
character(len=20) :: str
- if (log(abs(inf)) < huge(inf)) call abort()
- if (log(abs(minf)) < huge(inf)) call abort()
- if (.not. isnan(nan)) call abort()
+ if (log(abs(inf)) < huge(inf)) STOP 1
+ if (log(abs(minf)) < huge(inf)) STOP 2
+ if (.not. isnan(nan)) STOP 3
write(str,"(sp,f10.2)") inf
- if (adjustl(str) /= "+Infinity") call abort()
+ if (adjustl(str) /= "+Infinity") STOP 4
write(str,*) minf
- if (adjustl(str) /= "-Infinity") call abort()
+ if (adjustl(str) /= "-Infinity") STOP 5
write(str,*) nan
- if (adjustl(str) /= "NaN") call abort()
+ if (adjustl(str) /= "NaN") STOP 6
end program a
diff --git a/gcc/testsuite/gfortran.dg/module_private_array_refs_1.f90 b/gcc/testsuite/gfortran.dg/module_private_array_refs_1.f90
index 56bd6f261e7..0a587faee23 100644
--- a/gcc/testsuite/gfortran.dg/module_private_array_refs_1.f90
+++ b/gcc/testsuite/gfortran.dg/module_private_array_refs_1.f90
@@ -24,8 +24,8 @@ contains
subroutine mysub(n, parray1)
integer, intent(in) :: n
real, dimension(a(n):b(n)) :: parray1
- if ((n == 1) .and. size(parray1, 1) /= 10) call abort ()
- if ((n == 2) .and. size(parray1, 1) /= 42) call abort ()
+ if ((n == 1) .and. size(parray1, 1) /= 10) STOP 1
+ if ((n == 2) .and. size(parray1, 1) /= 42) STOP 2
end subroutine mysub
end module bar
diff --git a/gcc/testsuite/gfortran.dg/module_procedure_1.f90 b/gcc/testsuite/gfortran.dg/module_procedure_1.f90
index 35ec18c0b61..8fadb035378 100644
--- a/gcc/testsuite/gfortran.dg/module_procedure_1.f90
+++ b/gcc/testsuite/gfortran.dg/module_procedure_1.f90
@@ -27,7 +27,7 @@ program test_interface
input1 = (/0,1/)
input2 = (/3,3/)
mysum = input1 .myadd. input2
- if (mysum(1) /= 3 .and. mysum(2) /= 4) call abort
+ if (mysum(1) /= 3 .and. mysum(2) /= 4) STOP 1
call test_sub(input1, input2)
@@ -47,6 +47,6 @@ subroutine test_sub(input1, input2)
integer mysum(2)
mysum = input1 .myadd. input2
- if (mysum(1) /= 3 .and. mysum(2) /= 4) call abort
+ if (mysum(1) /= 3 .and. mysum(2) /= 4) STOP 2
end subroutine test_sub
diff --git a/gcc/testsuite/gfortran.dg/module_read_1.f90 b/gcc/testsuite/gfortran.dg/module_read_1.f90
index ad3e3d1dcde..50ee534ad29 100644
--- a/gcc/testsuite/gfortran.dg/module_read_1.f90
+++ b/gcc/testsuite/gfortran.dg/module_read_1.f90
@@ -22,8 +22,8 @@ end module foo
program test
use foo
- if(len(pop(0)) /= 0) call abort()
- if(len(pop(1)) /= 1) call abort()
- if(len(push(0)) /= 0) call abort()
- if(len(push(1)) /= 1) call abort()
+ if(len(pop(0)) /= 0) STOP 1
+ if(len(pop(1)) /= 1) STOP 2
+ if(len(push(0)) /= 0) STOP 3
+ if(len(push(1)) /= 1) STOP 4
end program
diff --git a/gcc/testsuite/gfortran.dg/module_read_2.f90 b/gcc/testsuite/gfortran.dg/module_read_2.f90
index 565c188f88f..0723590d056 100644
--- a/gcc/testsuite/gfortran.dg/module_read_2.f90
+++ b/gcc/testsuite/gfortran.dg/module_read_2.f90
@@ -23,6 +23,6 @@ use m_string
type(t_string) :: str
allocate(str%string(5))
str%string = ['H','e','l','l','o']
-if (len (string_to_char (str)) /= 5) call abort ()
-if (string_to_char (str) /= "Hello") call abort ()
+if (len (string_to_char (str)) /= 5) STOP 1
+if (string_to_char (str) /= "Hello") STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/module_widestring_1.f90 b/gcc/testsuite/gfortran.dg/module_widestring_1.f90
index c34091015db..332b24d0c06 100644
--- a/gcc/testsuite/gfortran.dg/module_widestring_1.f90
+++ b/gcc/testsuite/gfortran.dg/module_widestring_1.f90
@@ -8,7 +8,7 @@ end module m
use m
character(len=20) :: s
- if (a /= 'H\0z') call abort
- if (ichar(a(2:2)) /= 0) call abort
+ if (a /= 'H\0z') STOP 1
+ if (ichar(a(2:2)) /= 0) STOP 2
write (s,"(A)") a
end
diff --git a/gcc/testsuite/gfortran.dg/move_alloc.f90 b/gcc/testsuite/gfortran.dg/move_alloc.f90
index 2d8217750d1..df8b910077a 100644
--- a/gcc/testsuite/gfortran.dg/move_alloc.f90
+++ b/gcc/testsuite/gfortran.dg/move_alloc.f90
@@ -17,23 +17,23 @@ program test_move_alloc
x = [ 42, 77 ]
call move_alloc (x, y)
- if (allocated(x)) call abort()
- if (.not.allocated(y)) call abort()
- if (any(y /= [ 42, 77 ])) call abort()
+ if (allocated(x)) STOP 1
+ if (.not.allocated(y)) STOP 2
+ if (any(y /= [ 42, 77 ])) STOP 3
a = [ "abcd", "efgh" ]
call move_alloc (a, b)
- if (allocated(a)) call abort()
- if (.not.allocated(b)) call abort()
- if (any(b /= [ "abcd", "efgh" ])) call abort()
+ if (allocated(a)) STOP 4
+ if (.not.allocated(b)) STOP 5
+ if (any(b /= [ "abcd", "efgh" ])) STOP 6
! Now one of the intended applications of move_alloc; resizing
call move_alloc (y, temp)
allocate (y(6), stat=i)
- if (i /= 0) call abort()
+ if (i /= 0) STOP 7
y(1:2) = temp
y(3:) = 99
deallocate(temp)
- if (any(y /= [ 42, 77, 99, 99, 99, 99 ])) call abort()
+ if (any(y /= [ 42, 77, 99, 99, 99, 99 ])) STOP 8
end program test_move_alloc
diff --git a/gcc/testsuite/gfortran.dg/move_alloc_10.f90 b/gcc/testsuite/gfortran.dg/move_alloc_10.f90
index e5979287af6..5fc82069484 100644
--- a/gcc/testsuite/gfortran.dg/move_alloc_10.f90
+++ b/gcc/testsuite/gfortran.dg/move_alloc_10.f90
@@ -22,31 +22,31 @@ contains
allocate (tmp)
- if (tmp%i /= 2 .or. tmp%j /= 77) call abort()
+ if (tmp%i /= 2 .or. tmp%j /= 77) STOP 1
tmp%i = 5
tmp%j = 88
select type(a)
type is(base_type)
- if (a%i /= -44) call abort()
+ if (a%i /= -44) STOP 2
a%i = -99
class default
- call abort ()
+ STOP 3
end select
call move_alloc (from=tmp, to=a)
select type(a)
type is(extended_type)
- if (a%i /= 5) call abort()
- if (a%j /= 88) call abort()
+ if (a%i /= 5) STOP 4
+ if (a%j /= 88) STOP 5
a%i = 123
a%j = 9498
class default
- call abort ()
+ STOP 6
end select
- if (allocated (tmp)) call abort()
+ if (allocated (tmp)) STOP 7
end subroutine myallocate
end module myalloc
@@ -59,19 +59,19 @@ program main
select type(a)
type is(base_type)
- if (a%i /= 2) call abort()
+ if (a%i /= 2) STOP 8
a%i = -44
class default
- call abort ()
+ STOP 9
end select
call myallocate (a)
select type(a)
type is(extended_type)
- if (a%i /= 123) call abort()
- if (a%j /= 9498) call abort()
+ if (a%i /= 123) STOP 10
+ if (a%j /= 9498) STOP 11
class default
- call abort ()
+ STOP 12
end select
end program main
diff --git a/gcc/testsuite/gfortran.dg/move_alloc_13.f90 b/gcc/testsuite/gfortran.dg/move_alloc_13.f90
index f889e11a58e..c07dc89c44f 100644
--- a/gcc/testsuite/gfortran.dg/move_alloc_13.f90
+++ b/gcc/testsuite/gfortran.dg/move_alloc_13.f90
@@ -16,9 +16,9 @@ call func2(y,z)
select type(z)
type is(t2)
- if (any (z(:)%a /= [2, 3])) call abort()
+ if (any (z(:)%a /= [2, 3])) STOP 1
class default
- call abort()
+ STOP 2
end select
contains
diff --git a/gcc/testsuite/gfortran.dg/move_alloc_14.f90 b/gcc/testsuite/gfortran.dg/move_alloc_14.f90
index bc5e4916512..71cb086b49a 100644
--- a/gcc/testsuite/gfortran.dg/move_alloc_14.f90
+++ b/gcc/testsuite/gfortran.dg/move_alloc_14.f90
@@ -17,6 +17,6 @@ call move_alloc (from=a, to=b)
call move_alloc (from=a2, to=b2)
!print *, same_type_as (a,c), same_type_as (a,b)
!print *, same_type_as (a2,c2), same_type_as (a2,b2)
-if (.not. same_type_as (a,c) .or. same_type_as (a,b)) call abort ()
-if (.not. same_type_as (a2,c2) .or. same_type_as (a2,b2)) call abort ()
+if (.not. same_type_as (a,c) .or. same_type_as (a,b)) STOP 1
+if (.not. same_type_as (a2,c2) .or. same_type_as (a2,b2)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/move_alloc_15.f90 b/gcc/testsuite/gfortran.dg/move_alloc_15.f90
index 0c8cacf3cf0..740826dff63 100644
--- a/gcc/testsuite/gfortran.dg/move_alloc_15.f90
+++ b/gcc/testsuite/gfortran.dg/move_alloc_15.f90
@@ -77,9 +77,9 @@ contains
integer :: i
do i = 1, OLDSIZE
if (.not.flag .and. allocated (myarray(i)%i)) then
- if (any (myarray(i)%i .ne. [1,2,3,4,5])) call abort
+ if (any (myarray(i)%i .ne. [1,2,3,4,5])) STOP 1
else
- if (.not.flag) call abort
+ if (.not.flag) STOP 2
end if
end do
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/move_alloc_16.f90 b/gcc/testsuite/gfortran.dg/move_alloc_16.f90
index fc09f7778c3..8cb26cdbaa7 100644
--- a/gcc/testsuite/gfortran.dg/move_alloc_16.f90
+++ b/gcc/testsuite/gfortran.dg/move_alloc_16.f90
@@ -29,14 +29,14 @@ program str
! functioning when it should not if the lhs is a substring - PR67977
tmpstr%text(1:3) = 'foo'
- if (.not.allocated (teststrs%strlist(1)%text)) call abort
- if (len (tmpstr%text) .ne. strlen) call abort
+ if (.not.allocated (teststrs%strlist(1)%text)) STOP 1
+ if (len (tmpstr%text) .ne. strlen) STOP 2
call move_alloc(tmpstr%text,teststrs%strlist(1)%text)
- if (.not.allocated (teststrs%strlist(1)%text)) call abort
- if (len (teststrs%strlist(1)%text) .ne. strlen) call abort
- if (trim (teststrs%strlist(1)%text(1:3)) .ne. 'foo') call abort
+ if (.not.allocated (teststrs%strlist(1)%text)) STOP 3
+ if (len (teststrs%strlist(1)%text) .ne. strlen) STOP 4
+ if (trim (teststrs%strlist(1)%text(1:3)) .ne. 'foo') STOP 5
! Clean up so that valgrind reports all allocated memory freed.
if (allocated (teststrs%strlist(1)%text)) deallocate (teststrs%strlist(1)%text)
diff --git a/gcc/testsuite/gfortran.dg/move_alloc_2.f90 b/gcc/testsuite/gfortran.dg/move_alloc_2.f90
index 5dabca849db..2c95d1c44f8 100644
--- a/gcc/testsuite/gfortran.dg/move_alloc_2.f90
+++ b/gcc/testsuite/gfortran.dg/move_alloc_2.f90
@@ -20,8 +20,8 @@ program bug18
allocate(foo :: afab)
afab%i = 8
call move_alloc(afab, bb%bf)
- if (.not. allocated(bb%bf)) call abort()
- if (allocated(afab)) call abort()
- if (bb%bf%i/=8) call abort()
+ if (.not. allocated(bb%bf)) STOP 1
+ if (allocated(afab)) STOP 2
+ if (bb%bf%i/=8) STOP 3
end program bug18
diff --git a/gcc/testsuite/gfortran.dg/move_alloc_5.f90 b/gcc/testsuite/gfortran.dg/move_alloc_5.f90
index b2759de2c1d..444b2e583d2 100644
--- a/gcc/testsuite/gfortran.dg/move_alloc_5.f90
+++ b/gcc/testsuite/gfortran.dg/move_alloc_5.f90
@@ -18,7 +18,7 @@ program testmv1
allocate (sm2)
call move_alloc (sm2,sm)
- if (allocated(sm2)) call abort()
- if (.not. allocated(sm)) call abort()
+ if (allocated(sm2)) STOP 1
+ if (.not. allocated(sm)) STOP 2
end program
diff --git a/gcc/testsuite/gfortran.dg/move_alloc_6.f90 b/gcc/testsuite/gfortran.dg/move_alloc_6.f90
index b62a023a9ea..c9ba313fea1 100644
--- a/gcc/testsuite/gfortran.dg/move_alloc_6.f90
+++ b/gcc/testsuite/gfortran.dg/move_alloc_6.f90
@@ -22,34 +22,34 @@ contains
select type(tmp)
type is(base_type)
- call abort ()
+ STOP 1
type is(extended_type)
- if (tmp%i /= 2 .or. tmp%j /= 77) call abort()
+ if (tmp%i /= 2 .or. tmp%j /= 77) STOP 2
tmp%i = 5
tmp%j = 88
end select
select type(a)
type is(base_type)
- if (a%i /= -44) call abort()
+ if (a%i /= -44) STOP 3
a%i = -99
class default
- call abort ()
+ STOP 4
end select
call move_alloc (from=tmp, to=a)
select type(a)
type is(extended_type)
- if (a%i /= 5) call abort()
- if (a%j /= 88) call abort()
+ if (a%i /= 5) STOP 5
+ if (a%j /= 88) STOP 6
a%i = 123
a%j = 9498
class default
- call abort ()
+ STOP 7
end select
- if (allocated (tmp)) call abort()
+ if (allocated (tmp)) STOP 8
end subroutine myallocate
end module myalloc
@@ -62,19 +62,19 @@ program main
select type(a)
type is(base_type)
- if (a%i /= 2) call abort()
+ if (a%i /= 2) STOP 9
a%i = -44
class default
- call abort ()
+ STOP 10
end select
call myallocate (a)
select type(a)
type is(extended_type)
- if (a%i /= 123) call abort()
- if (a%j /= 9498) call abort()
+ if (a%i /= 123) STOP 11
+ if (a%j /= 9498) STOP 12
class default
- call abort ()
+ STOP 13
end select
end program main
diff --git a/gcc/testsuite/gfortran.dg/move_alloc_9.f90 b/gcc/testsuite/gfortran.dg/move_alloc_9.f90
index bf3f7b1b73f..4c5144c9e46 100644
--- a/gcc/testsuite/gfortran.dg/move_alloc_9.f90
+++ b/gcc/testsuite/gfortran.dg/move_alloc_9.f90
@@ -50,6 +50,6 @@ program testmv1
allocate (sm2)
call move_alloc (sm,sm2) ! { dg-error "must be polymorphic if FROM is polymorphic" }
- if (allocated(sm2)) call abort()
- if (.not. allocated(sm)) call abort()
+ if (allocated(sm2)) STOP 1
+ if (.not. allocated(sm)) STOP 2
end program
diff --git a/gcc/testsuite/gfortran.dg/multiple_allocation_1.f90 b/gcc/testsuite/gfortran.dg/multiple_allocation_1.f90
index 58888f0e31b..a7e8fe5fae1 100644
--- a/gcc/testsuite/gfortran.dg/multiple_allocation_1.f90
+++ b/gcc/testsuite/gfortran.dg/multiple_allocation_1.f90
@@ -12,9 +12,9 @@ program alloc_test
allocate(a(4))
! This should set the stat code but not change the size.
allocate(a(3),stat=i)
- if (i == 0) call abort
- if (.not. allocated(a)) call abort
- if (size(a) /= 4) call abort
+ if (i == 0) STOP 1
+ if (.not. allocated(a)) STOP 2
+ if (size(a) /= 4) STOP 3
! It's OK to allocate pointers twice (even though this causes
! a memory leak)
diff --git a/gcc/testsuite/gfortran.dg/multiple_allocation_3.f90 b/gcc/testsuite/gfortran.dg/multiple_allocation_3.f90
index 482b388a4d5..06e996b7796 100644
--- a/gcc/testsuite/gfortran.dg/multiple_allocation_3.f90
+++ b/gcc/testsuite/gfortran.dg/multiple_allocation_3.f90
@@ -12,8 +12,8 @@ program test
allocate (A(5,5), stat=stat)
! Expected: Error stat and previous allocation status
- if (stat == 0) call abort ()
- if (any (shape (A) /= [20, 20])) call abort ()
- if (any (A /= 42)) call abort ()
+ if (stat == 0) STOP 1
+ if (any (shape (A) /= [20, 20])) STOP 2
+ if (any (A /= 42)) STOP 3
end program
diff --git a/gcc/testsuite/gfortran.dg/mvbits_1.f90 b/gcc/testsuite/gfortran.dg/mvbits_1.f90
index 15cbf8c8b8c..ea24727e35c 100644
--- a/gcc/testsuite/gfortran.dg/mvbits_1.f90
+++ b/gcc/testsuite/gfortran.dg/mvbits_1.f90
@@ -14,27 +14,27 @@ do n=1,ibits
i1=-1
call mvbits(1_1, 0,n,i1,0)
j1=-1-2_1**n+2
- if(i1.ne.j1)call abort
+ if(i1.ne.j1)STOP 1
enddo
ibits=bit_size(1_2)
do n=1,ibits
i2=-1
call mvbits(1_2, 0,n,i2,0)
j2=-1-2_2**n+2
- if(i2.ne.j2)call abort
+ if(i2.ne.j2)STOP 2
enddo
ibits=bit_size(1_4)
do n=1,ibits
i4=-1
call mvbits(1_4, 0,n,i4,0)
j4=-1-2_4**n+2
- if(i4.ne.j4)call abort
+ if(i4.ne.j4)STOP 3
enddo
ibits=bit_size(1_8)
do n=1,ibits
i8=-1
call mvbits(1_8, 0,n,i8,0)
j8=-1-2_8**n+2
- if(i8.ne.j8)call abort
+ if(i8.ne.j8)STOP 4
enddo
end
diff --git a/gcc/testsuite/gfortran.dg/mvbits_2.f90 b/gcc/testsuite/gfortran.dg/mvbits_2.f90
index 885002ad6f2..bf98ad07f17 100644
--- a/gcc/testsuite/gfortran.dg/mvbits_2.f90
+++ b/gcc/testsuite/gfortran.dg/mvbits_2.f90
@@ -6,11 +6,11 @@
integer(kind=2) :: i2 = 0
integer(kind=1) :: i1 = 0
call mvbits (1_1, 0, 8, i1, 0)
- if (i1 /= 1) call abort
+ if (i1 /= 1) STOP 1
call mvbits (1_2, 0, 16, i2, 0)
- if (i2 /= 1) call abort
+ if (i2 /= 1) STOP 2
call mvbits (1_4, 0, 16, i4, 0)
- if (i4 /= 1) call abort
+ if (i4 /= 1) STOP 3
call mvbits (1_8, 0, 16, i8, 0)
- if (i8 /= 1) call abort
+ if (i8 /= 1) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/mvbits_3.f90 b/gcc/testsuite/gfortran.dg/mvbits_3.f90
index 74f24e001ee..7362394c8e9 100644
--- a/gcc/testsuite/gfortran.dg/mvbits_3.f90
+++ b/gcc/testsuite/gfortran.dg/mvbits_3.f90
@@ -27,5 +27,5 @@ program main
! write (*, *) 'y: ', y
! write (*, *)
- if ( any (b /= y) ) call abort()
+ if ( any (b /= y) ) STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/mvbits_4.f90 b/gcc/testsuite/gfortran.dg/mvbits_4.f90
index b8d32140c78..dcfe94f90e4 100644
--- a/gcc/testsuite/gfortran.dg/mvbits_4.f90
+++ b/gcc/testsuite/gfortran.dg/mvbits_4.f90
@@ -17,17 +17,17 @@
! Argument is already packed.
call mvbits (ila1(INDEX_VECTOR), 2, 4, ila1, 3)
write (*,'(10(I3))') ila1
- if (any (ila1 /= SHOULD_BE)) call abort ()
+ if (any (ila1 /= SHOULD_BE)) STOP 1
! Argument is not packed.
call mvbits (ila2(2*INDEX_VECTOR), 2, 4, ila2(2:20:2), 3)
write (*,'(10(I3))') ila2(2:20:2)
- if (any (ila2(2:20:2) /= SHOULD_BE)) call abort ()
+ if (any (ila2(2:20:2) /= SHOULD_BE)) STOP 2
! Pointer and target
ila3_ptr => ila3
call mvbits (ila3(INDEX_VECTOR), 2, 4, ila3_ptr, 3)
write (*,'(10(I3))') ila3
- if (any (ila3 /= SHOULD_BE)) call abort ()
+ if (any (ila3 /= SHOULD_BE)) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/mvbits_7.f90 b/gcc/testsuite/gfortran.dg/mvbits_7.f90
index 47586c319d1..8855ce877d4 100644
--- a/gcc/testsuite/gfortran.dg/mvbits_7.f90
+++ b/gcc/testsuite/gfortran.dg/mvbits_7.f90
@@ -15,7 +15,7 @@
call foo (x)
y = reshape ([((t (i*j*2, "a"),i = 1,4), j=1,3)], [4,3])
call bar(y, 4, 3, 1, -1, -4, -3)
- if (any (x%i .ne. y%i)) call abort
+ if (any (x%i .ne. y%i)) STOP 1
contains
SUBROUTINE foo (x)
TYPE(t) x(4, 3) ! No dependency at all
diff --git a/gcc/testsuite/gfortran.dg/mvbits_8.f90 b/gcc/testsuite/gfortran.dg/mvbits_8.f90
index f69d1e84f9a..4cc543294fe 100644
--- a/gcc/testsuite/gfortran.dg/mvbits_8.f90
+++ b/gcc/testsuite/gfortran.dg/mvbits_8.f90
@@ -22,8 +22,8 @@ PROGRAM main
CALL foobar (var, 1, 2)
- IF (ANY (var%comp%i /= (/ 1, 2 /))) CALL abort ()
- IF (ANY (var%comp%j /= (/ 3, 4 /))) CALL abort ()
+ IF (ANY (var%comp%i /= (/ 1, 2 /))) STOP 1
+ IF (ANY (var%comp%j /= (/ 3, 4 /))) STOP 2
CONTAINS
diff --git a/gcc/testsuite/gfortran.dg/namelist_11.f b/gcc/testsuite/gfortran.dg/namelist_11.f
index 672ee261c20..4b37470e2bb 100644
--- a/gcc/testsuite/gfortran.dg/namelist_11.f
+++ b/gcc/testsuite/gfortran.dg/namelist_11.f
@@ -31,25 +31,25 @@ c provided by Paul Thomas - pault@gcc.gnu.org
rewind (10)
read (10, nml=mynml, IOSTAT=ier)
- if (ier.ne.0) call abort
+ if (ier.ne.0) STOP 1
rewind (10)
do i = 1 , 10
- if ( abs( x(i) - real(i) ) .gt. 1e-8 ) call abort
+ if ( abs( x(i) - real(i) ) .gt. 1e-8 ) STOP 2
end do
- if ( abs( xx - 10d0 ) .gt. 1e-8 ) call abort
+ if ( abs( xx - 10d0 ) .gt. 1e-8 ) STOP 3
write (10, nml=mynml, iostat=ier)
- if (ier.ne.0) call abort
+ if (ier.ne.0) STOP 4
rewind (10)
read (10, NML=mynml, IOSTAT=ier)
- if (ier.ne.0) call abort
+ if (ier.ne.0) STOP 5
close (10)
do i = 1 , 10
- if ( abs( x(i) - real(i) ) .gt. 1e-8 ) call abort
+ if ( abs( x(i) - real(i) ) .gt. 1e-8 ) STOP 6
end do
- if ( abs( xx - 10d0 ) .gt. 1e-8 ) call abort
+ if ( abs( xx - 10d0 ) .gt. 1e-8 ) STOP 7
end program
diff --git a/gcc/testsuite/gfortran.dg/namelist_12.f b/gcc/testsuite/gfortran.dg/namelist_12.f
index 1752bfa07df..1be31cf2bf6 100644
--- a/gcc/testsuite/gfortran.dg/namelist_12.f
+++ b/gcc/testsuite/gfortran.dg/namelist_12.f
@@ -38,20 +38,20 @@ c set debug = 0 or 1 in the namelist! (line 33)
rewind (10)
read (10, nml=mynml, IOSTAT=ier)
- if (ier.ne.0) call abort
+ if (ier.ne.0) STOP 1
rewind (10)
write (10, nml=mynml, iostat=ier)
- if (ier.ne.0) call abort
+ if (ier.ne.0) STOP 2
rewind (10)
read (10, NML=mynml, IOSTAT=ier)
- if (ier.ne.0) call abort
+ if (ier.ne.0) STOP 3
close (10)
do i = 1 , 10
- if ( abs( x(i) - i ) .ne. 0 ) call abort ()
- if ( ch(i:i).ne.check(I:I) ) call abort
+ if ( abs( x(i) - i ) .ne. 0 ) STOP 1
+ if ( ch(i:i).ne.check(I:I) ) STOP 4
end do
- if (xx.ne.42) call abort ()
+ if (xx.ne.42) STOP 2
end program
diff --git a/gcc/testsuite/gfortran.dg/namelist_13.f90 b/gcc/testsuite/gfortran.dg/namelist_13.f90
index 185b522e7f0..fc358a4fb99 100644
--- a/gcc/testsuite/gfortran.dg/namelist_13.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_13.f90
@@ -27,11 +27,11 @@ program namelist_13
open(10,status="scratch", delim="apostrophe")
write (10, nml=mynml, iostat=ier)
- if (ier.ne.0) call abort
+ if (ier.ne.0) STOP 1
rewind (10)
read (10, NML=mynml, IOSTAT=ier)
- if (ier.ne.0) call abort
+ if (ier.ne.0) STOP 2
close (10)
end program namelist_13
diff --git a/gcc/testsuite/gfortran.dg/namelist_14.f90 b/gcc/testsuite/gfortran.dg/namelist_14.f90
index 341d1a3e98d..d24295f7046 100644
--- a/gcc/testsuite/gfortran.dg/namelist_14.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_14.f90
@@ -60,7 +60,7 @@ contains
open (10, status = "scratch", delim='apostrophe')
write (10, nml = z, iostat = ier)
- if (ier /= 0 ) call abort()
+ if (ier /= 0 ) STOP 1
rewind (10)
i = 0
@@ -76,7 +76,7 @@ contains
chl = ""
read (10, nml = z, iostat = ier)
- if (ier /= 0 ) call abort()
+ if (ier /= 0 ) STOP 2
close (10)
if (.not.(dttest (dt(1), mt ((/99,999,9999,99999/))) .and. &
@@ -91,7 +91,7 @@ contains
(chs == "singleton") .and. &
(chl == "abcdefg") .and. &
(cha(1)(1:10) == "first ") .and. &
- (cha(2)(1:10) == "second "))) call abort ()
+ (cha(2)(1:10) == "second "))) STOP 3
end subroutine foo
end program namelist_14
diff --git a/gcc/testsuite/gfortran.dg/namelist_15.f90 b/gcc/testsuite/gfortran.dg/namelist_15.f90
index ea02f9f7afa..357e50541ba 100644
--- a/gcc/testsuite/gfortran.dg/namelist_15.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_15.f90
@@ -36,7 +36,7 @@ program namelist_15
rewind (10)
read (10, nml = mynml, iostat = ier)
- if (ier .ne. 0) call abort ()
+ if (ier .ne. 0) STOP 1
close (10)
open (10, status = "scratch", delim='apostrophe')
@@ -44,7 +44,7 @@ program namelist_15
rewind (10)
read (10, nml = mynml, iostat = ier)
- if (ier .ne. 0) call abort ()
+ if (ier .ne. 0) STOP 2
close(10)
if (.not. ((x(1)%i(1) == 3) .and. &
@@ -58,6 +58,6 @@ program namelist_15
(x(2)%m(1)%ch(1) == "hz") .and. &
(x(2)%m(1)%ch(2) == "qz") .and. &
(x(2)%m(2)%ch(1) == "wz") .and. &
- (x(2)%m(2)%ch(2) == "kz"))) call abort ()
+ (x(2)%m(2)%ch(2) == "kz"))) STOP 3
end program namelist_15
diff --git a/gcc/testsuite/gfortran.dg/namelist_16.f90 b/gcc/testsuite/gfortran.dg/namelist_16.f90
index c6eb8f75595..0ee2c8a18de 100644
--- a/gcc/testsuite/gfortran.dg/namelist_16.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_16.f90
@@ -11,19 +11,19 @@ program namelist_16
rewind (10)
read (10, mynml, iostat = ier)
- if (ier .ne. 0) call abort ()
+ if (ier .ne. 0) STOP 1
close (10)
open (10, status = "scratch")
write (10, mynml, iostat = ier)
- if (ier .ne. 0) call abort ()
+ if (ier .ne. 0) STOP 2
rewind (10)
z = (/(1.0,2.0), (3.0,4.0)/)
read (10, mynml, iostat = ier)
- if (ier .ne. 0) call abort ()
+ if (ier .ne. 0) STOP 3
close (10)
- if ((z(1) .ne. (5.0,6.0)) .or. (z(2) .ne. (7.0,8.0))) call abort ()
+ if ((z(1) .ne. (5.0,6.0)) .or. (z(2) .ne. (7.0,8.0))) STOP 4
end program namelist_16
diff --git a/gcc/testsuite/gfortran.dg/namelist_17.f90 b/gcc/testsuite/gfortran.dg/namelist_17.f90
index e3eac5210bf..be608f43757 100644
--- a/gcc/testsuite/gfortran.dg/namelist_17.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_17.f90
@@ -12,19 +12,19 @@ program namelist_17
rewind (10)
read (10, mynml, iostat = ier)
- if (ier .ne. 0) call abort ()
+ if (ier .ne. 0) STOP 1
close (10)
open (10, status = "scratch")
write (10, mynml, iostat = ier)
- if (ier .ne. 0) call abort ()
+ if (ier .ne. 0) STOP 2
rewind (10)
l = (/.true., .false./)
read (10, mynml, iostat = ier)
- if (ier .ne. 0) call abort ()
+ if (ier .ne. 0) STOP 3
close (10)
- if (l(1) .or. (.not.l(2))) call abort ()
+ if (l(1) .or. (.not.l(2))) STOP 4
end program namelist_17
diff --git a/gcc/testsuite/gfortran.dg/namelist_18.f90 b/gcc/testsuite/gfortran.dg/namelist_18.f90
index 87b66012d4c..02a406796a5 100644
--- a/gcc/testsuite/gfortran.dg/namelist_18.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_18.f90
@@ -14,26 +14,26 @@ program namelist_18
rewind (10)
read (10, '(a)', iostat = ier) buffer
read (10, '(a)', iostat = ier) buffer
- if (ier .ne. 0) call abort ()
+ if (ier .ne. 0) STOP 1
close (10)
- If ((buffer(6:6) /= "f") .or. (buffer(9:9) /= """")) call abort ()
+ If ((buffer(6:6) /= "f") .or. (buffer(9:9) /= """")) STOP 2
open (10, status = "scratch", delim ="quote")
write (10, mynml)
rewind (10)
read (10, '(a)', iostat = ier) buffer
read (10, '(a)', iostat = ier) buffer
- if (ier .ne. 0) call abort ()
+ if (ier .ne. 0) STOP 3
close (10)
- If ((buffer(5:5) /= """") .or. (buffer(9:9) /= """")) call abort ()
+ If ((buffer(5:5) /= """") .or. (buffer(9:9) /= """")) STOP 4
open (10, status = "scratch", delim ="apostrophe")
write (10, mynml)
rewind (10)
read (10, '(a)', iostat = ier) buffer
read (10, '(a)', iostat = ier) buffer
- if (ier .ne. 0) call abort ()
+ if (ier .ne. 0) STOP 5
close (10)
- If ((buffer(5:5) /= "'") .or. (buffer(9:9) /= "'")) call abort ()
+ If ((buffer(5:5) /= "'") .or. (buffer(9:9) /= "'")) STOP 6
end program namelist_18
diff --git a/gcc/testsuite/gfortran.dg/namelist_19.f90 b/gcc/testsuite/gfortran.dg/namelist_19.f90
index 4821033ecd7..945b05505c1 100644
--- a/gcc/testsuite/gfortran.dg/namelist_19.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_19.f90
@@ -122,7 +122,7 @@ contains
rewind (10)
read (10, z, iostat = ier)
close(10)
- if (ier == 0) call abort ()
+ if (ier == 0) STOP 1
! Check that right namelist input gives no error
@@ -131,7 +131,7 @@ contains
rewind (10)
read (10, z, iostat = ier)
close(10)
- if (ier /= 0) call abort ()
+ if (ier /= 0) STOP 2
end subroutine test_err
end program namelist_19
diff --git a/gcc/testsuite/gfortran.dg/namelist_20.f90 b/gcc/testsuite/gfortran.dg/namelist_20.f90
index 155cf6f8ed2..0530b6006a6 100644
--- a/gcc/testsuite/gfortran.dg/namelist_20.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_20.f90
@@ -17,19 +17,19 @@ program namelist_20
ier=0
read(10, a, iostat=ier)
- if (ier == 0) call abort ()
+ if (ier == 0) STOP 1
ier=0
read(10, a, iostat=ier)
- if (ier == 0) call abort ()
+ if (ier == 0) STOP 2
ier=0
read(10, a, iostat=ier)
- if (ier == 0) call abort ()
+ if (ier == 0) STOP 3
ier=0
read(10, a, iostat=ier)
- if (ier /= 0) call abort ()
+ if (ier /= 0) STOP 4
do i = -4,-2
- if (x(i) /= i) call abort ()
+ if (x(i) /= i) STOP 5
end do
end program namelist_20
diff --git a/gcc/testsuite/gfortran.dg/namelist_21.f90 b/gcc/testsuite/gfortran.dg/namelist_21.f90
index de88200c167..da0428b75ea 100644
--- a/gcc/testsuite/gfortran.dg/namelist_21.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_21.f90
@@ -23,21 +23,21 @@ program pr24794
rewind (12)
read (12, nml=ccsopr, iostat=ier)
- if (ier.ne.0) call abort()
+ if (ier.ne.0) STOP 1
rewind (12)
write(12,nml=ccsopr)
rewind (12)
read (12, nml=ccsopr, iostat=ier)
- if (ier.ne.0) call abort()
+ if (ier.ne.0) STOP 2
- if (namea(2).ne."spi02o ") call abort()
- if (namea(9).ne." ") call abort()
- if (namea(15).ne." ") call abort()
- if (nameb(1).ne."spi01h ") call abort()
- if (nameb(6).ne." ") call abort()
- if (nameb(15).ne." ") call abort()
+ if (namea(2).ne."spi02o ") STOP 3
+ if (namea(9).ne." ") STOP 4
+ if (namea(15).ne." ") STOP 5
+ if (nameb(1).ne."spi01h ") STOP 6
+ if (nameb(6).ne." ") STOP 7
+ if (nameb(15).ne." ") STOP 8
close (12)
end program pr24794
diff --git a/gcc/testsuite/gfortran.dg/namelist_22.f90 b/gcc/testsuite/gfortran.dg/namelist_22.f90
index e877b5beeae..cd149d3bb82 100644
--- a/gcc/testsuite/gfortran.dg/namelist_22.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_22.f90
@@ -24,20 +24,20 @@ program pr24794
rewind (12)
read (12, nml=ccsopr, iostat=ier)
- if (ier.ne.0) call abort()
+ if (ier.ne.0) STOP 1
rewind (12)
write(12,nml=ccsopr)
rewind (12)
read (12, nml=ccsopr, iostat=ier)
- if (ier.ne.0) call abort()
- if (namea(2).ne."spi02o ") call abort()
- if (namea(9).ne." ") call abort()
- if (namea(15).ne." ") call abort()
- if (nameb(1).ne."spi01h ") call abort()
- if (nameb(6).ne." ") call abort()
- if (nameb(15).ne." ") call abort()
+ if (ier.ne.0) STOP 2
+ if (namea(2).ne."spi02o ") STOP 3
+ if (namea(9).ne." ") STOP 4
+ if (namea(15).ne." ") STOP 5
+ if (nameb(1).ne."spi01h ") STOP 6
+ if (nameb(6).ne." ") STOP 7
+ if (nameb(15).ne." ") STOP 8
close (12)
end program pr24794
diff --git a/gcc/testsuite/gfortran.dg/namelist_23.f90 b/gcc/testsuite/gfortran.dg/namelist_23.f90
index 7d69ef62f3c..f6b41985c99 100644
--- a/gcc/testsuite/gfortran.dg/namelist_23.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_23.f90
@@ -19,8 +19,8 @@ program read_logical
write(10,*) "/"
rewind(10)
read (10, nml=mynml, err = 1000)
- if (.not.all(truely(1:3))) call abort()
- if (.not.all(truely_a_very_long_variable_name(1:3).eq.4)) call abort()
+ if (.not.all(truely(1:3))) STOP 1
+ if (.not.all(truely_a_very_long_variable_name(1:3).eq.4)) STOP 2
truely = .false.
truely_a_very_long_variable_name = 0
@@ -32,8 +32,8 @@ program read_logical
write(10,*) "/"
rewind(10)
read (10, nml=mynml, err = 1000)
- if (.not.all(truely(1:2))) call abort()
- if (.not.all(truely_a_very_long_variable_name(1:3).eq.4)) call abort()
+ if (.not.all(truely(1:2))) STOP 3
+ if (.not.all(truely_a_very_long_variable_name(1:3).eq.4)) STOP 4
truely = .true.
truely_a_very_long_variable_name = 0
@@ -45,9 +45,9 @@ program read_logical
write(10,*) "/"
rewind(10)
read (10, nml=mynml, err = 1000)
- if (all(truely(1:2))) call abort()
- if (.not.all(truely_a_very_long_variable_name(1:3).eq.4)) call abort()
+ if (all(truely(1:2))) STOP 5
+ if (.not.all(truely_a_very_long_variable_name(1:3).eq.4)) STOP 6
close(10)
stop
-1000 call abort()
+1000 STOP 7
end program read_logical
diff --git a/gcc/testsuite/gfortran.dg/namelist_24.f90 b/gcc/testsuite/gfortran.dg/namelist_24.f90
index 11cd2d0a466..ec8c888f686 100644
--- a/gcc/testsuite/gfortran.dg/namelist_24.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_24.f90
@@ -23,20 +23,20 @@
write (20, '(a)') "/"
rewind(20)
read(20,nml=mynml, iostat=ier)
- if (ier.ne.0) call abort()
- if (any(names(:,3:5).ne."0")) call abort()
- if (names(2,2).ne."frogger") call abort()
- if (names(1,1).ne."E123") call abort()
- if (names(2,1).ne."E456") call abort()
- if (names(3,1).ne."D789") call abort()
- if (names(4,1).ne."P135") call abort()
- if (names(5,1).ne."P246") call abort()
- if (any(names2(:,1).ne."0")) call abort()
- if (any(names2(:,3:5).ne."0")) call abort()
- if (names2(1,2).ne."abcde") call abort()
- if (names2(2,2).ne."0") call abort()
- if (names2(3,2).ne."fghij") call abort()
- if (names2(4,2).ne."0") call abort()
- if (names2(5,2).ne."klmno") call abort()
- if (any(names3.ne.names)) call abort()
+ if (ier.ne.0) STOP 1
+ if (any(names(:,3:5).ne."0")) STOP 2
+ if (names(2,2).ne."frogger") STOP 3
+ if (names(1,1).ne."E123") STOP 4
+ if (names(2,1).ne."E456") STOP 5
+ if (names(3,1).ne."D789") STOP 6
+ if (names(4,1).ne."P135") STOP 7
+ if (names(5,1).ne."P246") STOP 8
+ if (any(names2(:,1).ne."0")) STOP 9
+ if (any(names2(:,3:5).ne."0")) STOP 10
+ if (names2(1,2).ne."abcde") STOP 11
+ if (names2(2,2).ne."0") STOP 12
+ if (names2(3,2).ne."fghij") STOP 13
+ if (names2(4,2).ne."0") STOP 14
+ if (names2(5,2).ne."klmno") STOP 15
+ if (any(names3.ne.names)) STOP 16
end
diff --git a/gcc/testsuite/gfortran.dg/namelist_26.f90 b/gcc/testsuite/gfortran.dg/namelist_26.f90
index 2c1b26062e1..7c1edb871e9 100644
--- a/gcc/testsuite/gfortran.dg/namelist_26.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_26.f90
@@ -43,6 +43,6 @@ program gfcbug58
if (ios /= 0) exit
iuse = iuse + 1
end do
- if (iuse /= 1) call abort()
+ if (iuse /= 1) STOP 1
end program gfcbug58
diff --git a/gcc/testsuite/gfortran.dg/namelist_27.f90 b/gcc/testsuite/gfortran.dg/namelist_27.f90
index 06381b11634..5cc81d2bc81 100644
--- a/gcc/testsuite/gfortran.dg/namelist_27.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_27.f90
@@ -20,18 +20,18 @@ program gfcbug61
! Read /REPORT/ the first time
rewind (12)
call position_nml (12, "REPORT", stat)
- if (stat.ne.0) call abort()
+ if (stat.ne.0) STOP 1
if (stat == 0) call read_report (12, stat)
! Comment out the following lines to hide the bug
rewind (12)
call position_nml (12, "MISSING", stat)
- if (stat.ne.-1) call abort ()
+ if (stat.ne.-1) STOP 2
! Read /REPORT/ again
rewind (12)
call position_nml (12, "REPORT", stat)
- if (stat.ne.0) call abort()
+ if (stat.ne.0) STOP 3
contains
@@ -99,7 +99,7 @@ contains
if (ios /= 0) exit
iuse = iuse + 1
end do
- if (iuse.ne.1) call abort()
+ if (iuse.ne.1) STOP 4
status = ios
end subroutine read_report
diff --git a/gcc/testsuite/gfortran.dg/namelist_28.f90 b/gcc/testsuite/gfortran.dg/namelist_28.f90
index 22bddf66239..32c0267f369 100644
--- a/gcc/testsuite/gfortran.dg/namelist_28.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_28.f90
@@ -51,7 +51,7 @@ contains
return
end if
end do
- if (k.gt.10) call abort
+ if (k.gt.10) STOP 1
end subroutine position_nml
subroutine read_report (unit, status)
@@ -78,14 +78,14 @@ contains
call position_nml (unit, "REPORT", status)
if (stat /= 0) then
ios = status
- if (iuse /= 2) call abort()
+ if (iuse /= 2) STOP 1
return
end if
read (unit, nml=REPORT, iostat=ios)
if (ios /= 0) exit
iuse = iuse + 1
end do
- if (k.gt.10) call abort
+ if (k.gt.10) STOP 2
status = ios
end subroutine read_report
diff --git a/gcc/testsuite/gfortran.dg/namelist_29.f90 b/gcc/testsuite/gfortran.dg/namelist_29.f90
index 55bff0c906f..ca434383e63 100644
--- a/gcc/testsuite/gfortran.dg/namelist_29.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_29.f90
@@ -6,7 +6,7 @@
! Contributed by Joost VandeVondele <jv244@cam.ac.uk>
!
character(80) :: buffer
- if (f1 (buffer) .ne. 42) call abort ()
+ if (f1 (buffer) .ne. 42) STOP 1
CONTAINS
INTEGER FUNCTION F1 (buffer)
NAMELIST /mynml/ F1
diff --git a/gcc/testsuite/gfortran.dg/namelist_37.f90 b/gcc/testsuite/gfortran.dg/namelist_37.f90
index 4a46b534f67..a1f73043f78 100644
--- a/gcc/testsuite/gfortran.dg/namelist_37.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_37.f90
@@ -22,11 +22,11 @@ rewind(10)
CHAR = 'Initialize string ***'
X = -777.
READ(10, nml=CODE, END=999)
-if (x.ne.-3.0) call abort
+if (x.ne.-3.0) STOP 1
READ(10, nml=CODE, END=999)
-if (x.ne.44.0) call abort
+if (x.ne.44.0) STOP 2
READ(10, nml=CODE, END=999)
-if (x.ne.66.0) call abort
+if (x.ne.66.0) STOP 3
READ(10, nml=CODE, END=999)
- 999 if (x.ne.77.0) call abort
+ 999 if (x.ne.77.0) STOP 1
END PROGRAM namelist
diff --git a/gcc/testsuite/gfortran.dg/namelist_38.f90 b/gcc/testsuite/gfortran.dg/namelist_38.f90
index b51463cfa8a..13f9c8eeb57 100644
--- a/gcc/testsuite/gfortran.dg/namelist_38.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_38.f90
@@ -14,7 +14,7 @@ program main
rewind 10
a = ""
read (10,foo) ! This gave a runtime error before the patch.
- if (a.ne.'a"a') call abort
+ if (a.ne.'a"a') STOP 1
close (10)
open(10, status="scratch", delim="apostrophe")
@@ -23,7 +23,7 @@ program main
rewind 10
a = ""
read (10,foo)
- if (a.ne."a'a") call abort
+ if (a.ne."a'a") STOP 2
close (10)
open(10, status="scratch", delim="none")
@@ -31,10 +31,10 @@ program main
write(10,foo)
rewind (10)
read(10,"(a)") b
- if (b .ne. "&FOO") call abort
+ if (b .ne. "&FOO") STOP 3
read(10,"(a)") b
- if (b .ne. " A=a'a") call abort
+ if (b .ne. " A=a'a") STOP 4
read(10,"(a)") b
- if (b .ne. " /") call abort
+ if (b .ne. " /") STOP 5
close(10)
end program main
diff --git a/gcc/testsuite/gfortran.dg/namelist_39.f90 b/gcc/testsuite/gfortran.dg/namelist_39.f90
index 427ba6dc2bf..d7ab6ca64df 100644
--- a/gcc/testsuite/gfortran.dg/namelist_39.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_39.f90
@@ -20,10 +20,10 @@ read(99,nml=nam)
close(99)
if (b01234567890123456789012345678901234567890123456789012345678901(1).ne.&
- " AAP NOOT MIES WIM ZUS JET ") call abort
+ " AAP NOOT MIES WIM ZUS JET ") STOP 1
if (b01234567890123456789012345678901234567890123456789012345678901(2).ne.&
- "SURF.PRESSURE ") call abort
+ "SURF.PRESSURE ") STOP 2
if (b01234567890123456789012345678901234567890123456789012345678901(3).ne.&
- "APEKOOL ") call abort
+ "APEKOOL ") STOP 3
end program test
diff --git a/gcc/testsuite/gfortran.dg/namelist_40.f90 b/gcc/testsuite/gfortran.dg/namelist_40.f90
index 195a78b64d0..23b3e720be9 100644
--- a/gcc/testsuite/gfortran.dg/namelist_40.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_40.f90
@@ -40,7 +40,7 @@ subroutine writenml (astring)
write (10, '(A)') "/"
rewind (10)
read (10, nml = mynml, iostat=ierror, iomsg=errmessage)
- if (ierror == 0) call abort
+ if (ierror == 0) STOP 1
print '(a)', trim(errmessage)
close (10)
diff --git a/gcc/testsuite/gfortran.dg/namelist_41.f90 b/gcc/testsuite/gfortran.dg/namelist_41.f90
index 16e0d42b8af..3c439c3bed7 100644
--- a/gcc/testsuite/gfortran.dg/namelist_41.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_41.f90
@@ -10,7 +10,7 @@
write (11, *) "&end"
rewind (11)
read(11,nml=inx)
- if (var(1) /= 'hello' .and. var(2) /= 'goodbye') call abort
+ if (var(1) /= 'hello' .and. var(2) /= 'goodbye') STOP 1
var = "goodbye"
rewind (11)
write (11, *) "$inx"
@@ -18,5 +18,5 @@
write (11, *) "$end"
rewind (11)
read(11,nml=inx)
- if (var(1) /= 'hello' .and. var(2) /= 'goodbye') call abort
+ if (var(1) /= 'hello' .and. var(2) /= 'goodbye') STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/namelist_42.f90 b/gcc/testsuite/gfortran.dg/namelist_42.f90
index 9875d6ada1d..ea98307f2a9 100644
--- a/gcc/testsuite/gfortran.dg/namelist_42.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_42.f90
@@ -25,10 +25,10 @@
READ (10, NML = nl)
close (10)
- if(infinity /= 1) call abort()
+ if(infinity /= 1) STOP 1
if(any(foo(1:3) /= [5.0, 5.0, 5.0]) .or. .not.isnan(foo(4)) &
.or. foo(5) <= huge(foo) .or. any(foo(6:11) /= -1.0)) &
- call abort()
+ STOP 2
! Works too:
foo = -1.0
infinity = -1
@@ -41,8 +41,8 @@
READ (10, NML = nl)
CLOSE (10)
- if(infinity /= 1) call abort()
+ if(infinity /= 1) STOP 3
if(any(foo(1:3) /= [5.0, 5.0, 5.0]) .or. .not.isnan(foo(4)) &
.or. foo(5) <= huge(foo) .or. any(foo(6:11) /= -1.0)) &
- call abort()
+ STOP 4
END PROGRAM TEST
diff --git a/gcc/testsuite/gfortran.dg/namelist_43.f90 b/gcc/testsuite/gfortran.dg/namelist_43.f90
index a6e4eb67885..a9304f35603 100644
--- a/gcc/testsuite/gfortran.dg/namelist_43.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_43.f90
@@ -40,8 +40,8 @@ PROGRAM TEST
rewind (10)
READ (10, NML = nl)
CLOSE (10)
- if(infinity /= 1) call abort
+ if(infinity /= 1) STOP 1
if(any(foo(1:3) /= [5.0, 5.0, 5.0]) .or. .not.isnan(foo(4)) &
.or. (foo(5) <= huge(foo)) .or. any(foo(6:10) /= -1.0)) &
- call abort
+ STOP 2
END PROGRAM TEST
diff --git a/gcc/testsuite/gfortran.dg/namelist_44.f90 b/gcc/testsuite/gfortran.dg/namelist_44.f90
index 143990261fe..bfb2563adbd 100644
--- a/gcc/testsuite/gfortran.dg/namelist_44.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_44.f90
@@ -24,6 +24,6 @@ program gfcbug77
rewind(nnml)
read (nnml, nml=BLACKLIST)
close(nnml,status="delete")
- if(file /= "myfile" .or. default) call abort()
+ if(file /= "myfile" .or. default) STOP 1
! write (*,nml=BLACKLIST)
end program gfcbug77
diff --git a/gcc/testsuite/gfortran.dg/namelist_47.f90 b/gcc/testsuite/gfortran.dg/namelist_47.f90
index 45f3823552e..2e9b424d659 100644
--- a/gcc/testsuite/gfortran.dg/namelist_47.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_47.f90
@@ -38,7 +38,7 @@ subroutine writenml (astring)
write (10, '(A)') "/"
rewind (10)
read (10, nml = mynml, iostat=ierror, iomsg=errmessage)
- if (ierror == 0) call abort
+ if (ierror == 0) STOP 1
print '(a)', trim(errmessage)
close (10)
diff --git a/gcc/testsuite/gfortran.dg/namelist_48.f90 b/gcc/testsuite/gfortran.dg/namelist_48.f90
index e9a29285b17..b96b1c5e767 100644
--- a/gcc/testsuite/gfortran.dg/namelist_48.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_48.f90
@@ -11,5 +11,5 @@
rewind(1)
x = 0
read(1,casein)
- if (x.ne.1) call abort
+ if (x.ne.1) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/namelist_49.f90 b/gcc/testsuite/gfortran.dg/namelist_49.f90
index aec83eea965..06664199024 100644
--- a/gcc/testsuite/gfortran.dg/namelist_49.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_49.f90
@@ -14,6 +14,6 @@
b = 0.0
c = 0.0
read(1,casedat)
- if ((a.ne.1.0) .or. (b.ne.2.0) .or. (c.ne.3.0)) call abort
+ if ((a.ne.1.0) .or. (b.ne.2.0) .or. (c.ne.3.0)) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/namelist_50.f90 b/gcc/testsuite/gfortran.dg/namelist_50.f90
index 57e93fcbf25..5ffe2dad27e 100644
--- a/gcc/testsuite/gfortran.dg/namelist_50.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_50.f90
@@ -11,6 +11,6 @@ program gfcbug79
write(nnml,*) "/"
rewind(nnml)
read (nnml, nml=NML)
- if (model /= 'foo') call abort
+ if (model /= 'foo') STOP 1
close(nnml)
end program gfcbug79
diff --git a/gcc/testsuite/gfortran.dg/namelist_51.f90 b/gcc/testsuite/gfortran.dg/namelist_51.f90
index 9663bd68d9f..c285726f5a3 100644
--- a/gcc/testsuite/gfortran.dg/namelist_51.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_51.f90
@@ -20,7 +20,7 @@ write(101,'(a)')"nxc = 100"
write(101,'(a)')"&END"
rewind(101)
read(unit = 101, nml = INPUT)
-if (nxc /= 100) call abort
+if (nxc /= 100) STOP 1
close(unit = 101)
endsubroutine
end program mem_nml
diff --git a/gcc/testsuite/gfortran.dg/namelist_52.f90 b/gcc/testsuite/gfortran.dg/namelist_52.f90
index 6e31382927f..39fb02561f8 100644
--- a/gcc/testsuite/gfortran.dg/namelist_52.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_52.f90
@@ -27,6 +27,6 @@ write(31, '(a)') "adjoint%screen_io_fs_ntime%begin = 42"
write(31, '(a)') "/"
rewind(31)
read(31,nml=info_adjoint)
-if (adjoint%solver_type /= 'direct') call abort
-if (adjoint%screen_io_fs_ntime%begin /= 42) call abort
+if (adjoint%solver_type /= 'direct') STOP 1
+if (adjoint%screen_io_fs_ntime%begin /= 42) STOP 2
end program gfortran_error_2
diff --git a/gcc/testsuite/gfortran.dg/namelist_54.f90 b/gcc/testsuite/gfortran.dg/namelist_54.f90
index 01332689340..5f3a96a8eb1 100644
--- a/gcc/testsuite/gfortran.dg/namelist_54.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_54.f90
@@ -13,5 +13,5 @@ a%m=[87,88,89]
a%n=[97,98,99]
read(l,namlis)
if (a(1)%m /= 1 .or. a(2)%m /= 2 .or. a(1)%n /= 5 .or. a(2)%n /= 6 .or. &
- & a(3)%m /= 89 .or. a(3)%n /= 99) call abort
+ & a(3)%m /= 89 .or. a(3)%n /= 99) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/namelist_55.f90 b/gcc/testsuite/gfortran.dg/namelist_55.f90
index 9690d858d07..7c99c5eab96 100644
--- a/gcc/testsuite/gfortran.dg/namelist_55.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_55.f90
@@ -42,11 +42,11 @@ character*600 :: l = " &NAMINTERP atmkey%ppp = 076,058,062,079, atmkey%nnn = 000
namelist /naminterp/outgeo,ahalf,bhalf,atmkey
print *, outgeo%nlev
read(l,nml=naminterp)
-if (outgeo%nlev /= 10) call abort
-if (any(ahalf(1:10) .ne. [0.,1.,2.,3.,4.,5.,6.,7.,8.,9.])) call abort
-if (any(bhalf(1:10) .ne. [0.,1.,2.,3.,4.,5.,6.,7.,8.,9.])) call abort
-if (any(atmkey(1:4)%ppp .ne. [076,058,062,079])) call abort
-if (any(atmkey(1:4)%nnn .ne. [0,0,0,0])) call abort
+if (outgeo%nlev /= 10) STOP 1
+if (any(ahalf(1:10) .ne. [0.,1.,2.,3.,4.,5.,6.,7.,8.,9.])) STOP 2
+if (any(bhalf(1:10) .ne. [0.,1.,2.,3.,4.,5.,6.,7.,8.,9.])) STOP 3
+if (any(atmkey(1:4)%ppp .ne. [076,058,062,079])) STOP 4
+if (any(atmkey(1:4)%nnn .ne. [0,0,0,0])) STOP 5
if (any(atmkey(1:4)%name .ne. ['LIQUID_WATER','SOLID_WATER ','SNOW ',&
- &'RAIN '])) call abort
+ &'RAIN '])) STOP 6
end
diff --git a/gcc/testsuite/gfortran.dg/namelist_56.f90 b/gcc/testsuite/gfortran.dg/namelist_56.f90
index 658d12f6fca..8e17b7d4c84 100644
--- a/gcc/testsuite/gfortran.dg/namelist_56.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_56.f90
@@ -16,7 +16,7 @@
j = -54
str = 'XXXX'
read(99,nml)
- if (j.ne.5) call abort
- if (any(str.ne.["a ","b ","cde "," "])) call abort
+ if (j.ne.5) STOP 1
+ if (any(str.ne.["a ","b ","cde "," "])) STOP 2
close(99)
end
diff --git a/gcc/testsuite/gfortran.dg/namelist_57.f90 b/gcc/testsuite/gfortran.dg/namelist_57.f90
index a110fa0d840..a72b866d575 100644
--- a/gcc/testsuite/gfortran.dg/namelist_57.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_57.f90
@@ -6,7 +6,7 @@
n = 123
line = ""
write(line,nml=stuff)
- if (line(1) .ne. "&STUFF") call abort
- if (line(2) .ne. " N=123 ,") call abort
- if (line(3) .ne. " /") call abort
+ if (line(1) .ne. "&STUFF") STOP 1
+ if (line(2) .ne. " N=123 ,") STOP 2
+ if (line(3) .ne. " /") STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/namelist_58.f90 b/gcc/testsuite/gfortran.dg/namelist_58.f90
index fcce01653a4..5c032d1e80c 100644
--- a/gcc/testsuite/gfortran.dg/namelist_58.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_58.f90
@@ -19,7 +19,7 @@ program test
write(10,'(a)')"/"
rewind(10)
read (10, nml = params)
- if (any(plot_page%size .ne. (/ 5, 2 /))) call abort
+ if (any(plot_page%size .ne. (/ 5, 2 /))) STOP 1
close (10)
end program
diff --git a/gcc/testsuite/gfortran.dg/namelist_59.f90 b/gcc/testsuite/gfortran.dg/namelist_59.f90
index f69a49a5534..9bce428c532 100644
--- a/gcc/testsuite/gfortran.dg/namelist_59.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_59.f90
@@ -21,5 +21,5 @@ subroutine process(string)
lines(3)='/'
read(lines,nml=cmd,iostat=ios,iomsg=message)
- if (ios.ne.0) call abort
+ if (ios.ne.0) STOP 1
end subroutine process
diff --git a/gcc/testsuite/gfortran.dg/namelist_60.f90 b/gcc/testsuite/gfortran.dg/namelist_60.f90
index 5cab78b8ca3..e0d45d62bc6 100644
--- a/gcc/testsuite/gfortran.dg/namelist_60.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_60.f90
@@ -20,8 +20,8 @@ write(10,'(a)') " field_setup%vel(3)%number= 27,"
write(10,'(a)') "/"
rewind(10)
read(10,nml=nl_setup)
-if (field_setup%vel(1)%number .ne. 3) call abort
-if (field_setup%vel(2)%number .ne. 9) call abort
-if (field_setup%vel(3)%number .ne. 27) call abort
+if (field_setup%vel(1)%number .ne. 3) STOP 1
+if (field_setup%vel(2)%number .ne. 9) STOP 2
+if (field_setup%vel(3)%number .ne. 27) STOP 3
! write(*,nml=nl_setup)
end program test_nml
diff --git a/gcc/testsuite/gfortran.dg/namelist_61.f90 b/gcc/testsuite/gfortran.dg/namelist_61.f90
index c7214dd2bb9..1c918fac43d 100644
--- a/gcc/testsuite/gfortran.dg/namelist_61.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_61.f90
@@ -9,23 +9,23 @@ namelist /nml/a
a = -1
str = '&nml a(1,:) = 1 2 3 /'
read(str, nml=nml)
-if (any (a(1,:) /= [1, 2, 3])) call abort ()
-if (any (a([2,3],:) /= -1)) call abort ()
+if (any (a(1,:) /= [1, 2, 3])) STOP 1
+if (any (a([2,3],:) /= -1)) STOP 2
a = -1
str = '&nml a(1,1) = 1 2 3 4 /'
read(str, nml=nml)
-if (any (a(:,1) /= [1, 2, 3])) call abort ()
-if (any (a(:,2) /= [4, -1, -1])) call abort ()
-if (any (a(:,3) /= -1)) call abort ()
+if (any (a(:,1) /= [1, 2, 3])) STOP 3
+if (any (a(:,2) /= [4, -1, -1])) STOP 4
+if (any (a(:,3) /= -1)) STOP 5
str = '&nml a(1,:) = 1 2 3 , &
& a(2,:) = 4,5,6 &
& a(3,:) = 7 8 9/'
read(str, nml=nml)
-if (any (a(1,:) /= [1, 2, 3])) call abort ()
-if (any (a(2,:) /= [4, 5, 6])) call abort ()
-if (any (a(3,:) /= [7, 8, 9])) call abort ()
+if (any (a(1,:) /= [1, 2, 3])) STOP 6
+if (any (a(2,:) /= [4, 5, 6])) STOP 7
+if (any (a(3,:) /= [7, 8, 9])) STOP 8
!print *, a(:,1)
!print *, a(:,2)
diff --git a/gcc/testsuite/gfortran.dg/namelist_64.f90 b/gcc/testsuite/gfortran.dg/namelist_64.f90
index b5084e0f63c..46d7847ccaa 100644
--- a/gcc/testsuite/gfortran.dg/namelist_64.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_64.f90
@@ -22,6 +22,6 @@ write(10,*) " curve(1)%symbol%typee = 1234"
write(10,*) "/"
rewind(10)
read (10, nml = params)
-if (curve(1)%symbol%typee /= 1234) call abort
+if (curve(1)%symbol%typee /= 1234) STOP 1
close(10)
end program
diff --git a/gcc/testsuite/gfortran.dg/namelist_65.f90 b/gcc/testsuite/gfortran.dg/namelist_65.f90
index 7efbe7083a3..2ca67f2d43f 100644
--- a/gcc/testsuite/gfortran.dg/namelist_65.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_65.f90
@@ -13,10 +13,10 @@ do i=1,len(out)
enddo
write(out,nl1)
-if (out(1).ne."&NL1") call abort
-if (out(2).ne." A= 1.00000000 ,") call abort
-if (out(3).ne." B= 2.00000000 ,") call abort
-if (out(4).ne." C= 3.00000000 ,") call abort
-if (out(5).ne." /") call abort
+if (out(1).ne."&NL1") STOP 1
+if (out(2).ne." A= 1.00000000 ,") STOP 2
+if (out(3).ne." B= 2.00000000 ,") STOP 3
+if (out(4).ne." C= 3.00000000 ,") STOP 4
+if (out(5).ne." /") STOP 5
end program oneline
diff --git a/gcc/testsuite/gfortran.dg/namelist_69.f90 b/gcc/testsuite/gfortran.dg/namelist_69.f90
index 6261aabcf1d..1c3f3d7c09f 100644
--- a/gcc/testsuite/gfortran.dg/namelist_69.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_69.f90
@@ -96,33 +96,33 @@ program nml_test
read(str,nml=nml)
! Check result
- if (any (a /= [1,2])) call abort()
- if (any (ap /= [98, 99])) call abort()
- if (b /= 7) call abort()
- if (bp /= 101) call abort()
- if (c /= 8) call abort()
- if (any (d /= [-1, -2, -3])) call abort()
-
- if (e%c1 /= -701) call abort()
- if (any (e%c2 /= [-702,-703,-704])) call abort()
- if (f(1)%c1 /= 33001) call abort()
- if (f(2)%c1 /= 33002) call abort()
- if (any (f(1)%c2 /= [44001,44002,44003])) call abort()
- if (any (f(2)%c2 /= [44011,44012,44013])) call abort()
-
- if (g%c1 /= -601) call abort()
- if (any(g%c2 /= [-602,6703,-604])) call abort()
- if (h(1)%c1 /= 35001) call abort()
- if (h(2)%c1 /= 35002) call abort()
- if (any (h(1)%c2 /= [45001,45002,45003])) call abort()
- if (any (h(2)%c2 /= [45011,45012,45013])) call abort()
-
- if (i%c1 /= -501) call abort()
- if (any (i%c2 /= [-502,-503,-504])) call abort()
- if (j(1)%c1 /= 36001) call abort()
- if (j(2)%c1 /= 36002) call abort()
- if (any (j(1)%c2 /= [46001,46002,46003])) call abort()
- if (any (j(2)%c2 /= [46011,46012,46013])) call abort()
+ if (any (a /= [1,2])) STOP 1
+ if (any (ap /= [98, 99])) STOP 2
+ if (b /= 7) STOP 3
+ if (bp /= 101) STOP 4
+ if (c /= 8) STOP 5
+ if (any (d /= [-1, -2, -3])) STOP 6
+
+ if (e%c1 /= -701) STOP 7
+ if (any (e%c2 /= [-702,-703,-704])) STOP 8
+ if (f(1)%c1 /= 33001) STOP 9
+ if (f(2)%c1 /= 33002) STOP 10
+ if (any (f(1)%c2 /= [44001,44002,44003])) STOP 11
+ if (any (f(2)%c2 /= [44011,44012,44013])) STOP 12
+
+ if (g%c1 /= -601) STOP 13
+ if (any(g%c2 /= [-602,6703,-604])) STOP 14
+ if (h(1)%c1 /= 35001) STOP 15
+ if (h(2)%c1 /= 35002) STOP 16
+ if (any (h(1)%c2 /= [45001,45002,45003])) STOP 17
+ if (any (h(2)%c2 /= [45011,45012,45013])) STOP 18
+
+ if (i%c1 /= -501) STOP 19
+ if (any (i%c2 /= [-502,-503,-504])) STOP 20
+ if (j(1)%c1 /= 36001) STOP 21
+ if (j(2)%c1 /= 36002) STOP 22
+ if (any (j(1)%c2 /= [46001,46002,46003])) STOP 23
+ if (any (j(2)%c2 /= [46011,46012,46013])) STOP 24
! Check argument passing (dummy processing)
call test2(a,b,c,d,ap,bp,e,f,g,h,i,j,2)
@@ -195,39 +195,39 @@ contains
read(str,nml=nml2)
! Check result
- if (any (x1 /= [1,2])) call abort()
- if (any (x1p /= [98, 99])) call abort()
- if (x2 /= 7) call abort()
- if (x2p /= 101) call abort()
- if (x3 /= 8) call abort()
- if (any (x4 /= [-1, -2, -3])) call abort()
-
- if (x6%c1 /= -701) call abort()
- if (any (x6%c2 /= [-702,-703,-704])) call abort()
- if (x7(1)%c1 /= 33001) call abort()
- if (x7(2)%c1 /= 33002) call abort()
- if (any (x7(1)%c2 /= [44001,44002,44003])) call abort()
- if (any (x7(2)%c2 /= [44011,44012,44013])) call abort()
-
- if (x8%c1 /= -601) call abort()
- if (any(x8%c2 /= [-602,6703,-604])) call abort()
- if (x9(1)%c1 /= 35001) call abort()
- if (x9(2)%c1 /= 35002) call abort()
- if (any (x9(1)%c2 /= [45001,45002,45003])) call abort()
- if (any (x9(2)%c2 /= [45011,45012,45013])) call abort()
-
- if (x10%c1 /= -501) call abort()
- if (any (x10%c2 /= [-502,-503,-504])) call abort()
- if (x11(1)%c1 /= 36001) call abort()
- if (x11(2)%c1 /= 36002) call abort()
- if (any (x11(1)%c2 /= [46001,46002,46003])) call abort()
- if (any (x11(2)%c2 /= [46011,46012,46013])) call abort()
-
- if (any (x5 /= [ 42, 53 ])) call abort()
-
- if (x12(1)%c1 /= 37001) call abort()
- if (x12(2)%c1 /= 37002) call abort()
- if (any (x12(1)%c2 /= [47001,47002,47003])) call abort()
- if (any (x12(2)%c2 /= [47011,47012,47013])) call abort()
+ if (any (x1 /= [1,2])) STOP 25
+ if (any (x1p /= [98, 99])) STOP 26
+ if (x2 /= 7) STOP 27
+ if (x2p /= 101) STOP 28
+ if (x3 /= 8) STOP 29
+ if (any (x4 /= [-1, -2, -3])) STOP 30
+
+ if (x6%c1 /= -701) STOP 31
+ if (any (x6%c2 /= [-702,-703,-704])) STOP 32
+ if (x7(1)%c1 /= 33001) STOP 33
+ if (x7(2)%c1 /= 33002) STOP 34
+ if (any (x7(1)%c2 /= [44001,44002,44003])) STOP 35
+ if (any (x7(2)%c2 /= [44011,44012,44013])) STOP 36
+
+ if (x8%c1 /= -601) STOP 37
+ if (any(x8%c2 /= [-602,6703,-604])) STOP 38
+ if (x9(1)%c1 /= 35001) STOP 39
+ if (x9(2)%c1 /= 35002) STOP 40
+ if (any (x9(1)%c2 /= [45001,45002,45003])) STOP 41
+ if (any (x9(2)%c2 /= [45011,45012,45013])) STOP 42
+
+ if (x10%c1 /= -501) STOP 43
+ if (any (x10%c2 /= [-502,-503,-504])) STOP 44
+ if (x11(1)%c1 /= 36001) STOP 45
+ if (x11(2)%c1 /= 36002) STOP 46
+ if (any (x11(1)%c2 /= [46001,46002,46003])) STOP 47
+ if (any (x11(2)%c2 /= [46011,46012,46013])) STOP 48
+
+ if (any (x5 /= [ 42, 53 ])) STOP 49
+
+ if (x12(1)%c1 /= 37001) STOP 50
+ if (x12(2)%c1 /= 37002) STOP 51
+ if (any (x12(1)%c2 /= [47001,47002,47003])) STOP 52
+ if (any (x12(2)%c2 /= [47011,47012,47013])) STOP 53
end subroutine test2
end program nml_test
diff --git a/gcc/testsuite/gfortran.dg/namelist_70.f90 b/gcc/testsuite/gfortran.dg/namelist_70.f90
index f3edfc50cc1..da9c4045916 100644
--- a/gcc/testsuite/gfortran.dg/namelist_70.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_70.f90
@@ -96,33 +96,33 @@ program nml_test
read(str,nml=nml)
! Check result
- if (any (a /= ['aa01','aa02'])) call abort()
- if (any (ap /= ['98', '99'])) call abort()
- if (b /= '7') call abort()
- if (bp /= '101') call abort()
- if (c /= '8') call abort()
- if (any (d /= ['-1', '-2', '-3'])) call abort()
-
- if (e%c1 /= '-701') call abort()
- if (any (e%c2 /= ['-702','-703','-704'])) call abort()
- if (f(1)%c1 /= '33001') call abort()
- if (f(2)%c1 /= '33002') call abort()
- if (any (f(1)%c2 /= ['44001','44002','44003'])) call abort()
- if (any (f(2)%c2 /= ['44011','44012','44013'])) call abort()
-
- if (g%c1 /= '-601') call abort()
- if (any(g%c2 /= ['-602','6703','-604'])) call abort()
- if (h(1)%c1 /= '35001') call abort()
- if (h(2)%c1 /= '35002') call abort()
- if (any (h(1)%c2 /= ['45001','45002','45003'])) call abort()
- if (any (h(2)%c2 /= ['45011','45012','45013'])) call abort()
-
- if (i%c1 /= '-501') call abort()
- if (any (i%c2 /= ['-502','-503','-504'])) call abort()
- if (j(1)%c1 /= '36001') call abort()
- if (j(2)%c1 /= '36002') call abort()
- if (any (j(1)%c2 /= ['46001','46002','46003'])) call abort()
- if (any (j(2)%c2 /= ['46011','46012','46013'])) call abort()
+ if (any (a /= ['aa01','aa02'])) STOP 1
+ if (any (ap /= ['98', '99'])) STOP 2
+ if (b /= '7') STOP 3
+ if (bp /= '101') STOP 4
+ if (c /= '8') STOP 5
+ if (any (d /= ['-1', '-2', '-3'])) STOP 6
+
+ if (e%c1 /= '-701') STOP 7
+ if (any (e%c2 /= ['-702','-703','-704'])) STOP 8
+ if (f(1)%c1 /= '33001') STOP 9
+ if (f(2)%c1 /= '33002') STOP 10
+ if (any (f(1)%c2 /= ['44001','44002','44003'])) STOP 11
+ if (any (f(2)%c2 /= ['44011','44012','44013'])) STOP 12
+
+ if (g%c1 /= '-601') STOP 13
+ if (any(g%c2 /= ['-602','6703','-604'])) STOP 14
+ if (h(1)%c1 /= '35001') STOP 15
+ if (h(2)%c1 /= '35002') STOP 16
+ if (any (h(1)%c2 /= ['45001','45002','45003'])) STOP 17
+ if (any (h(2)%c2 /= ['45011','45012','45013'])) STOP 18
+
+ if (i%c1 /= '-501') STOP 19
+ if (any (i%c2 /= ['-502','-503','-504'])) STOP 20
+ if (j(1)%c1 /= '36001') STOP 21
+ if (j(2)%c1 /= '36002') STOP 22
+ if (any (j(1)%c2 /= ['46001','46002','46003'])) STOP 23
+ if (any (j(2)%c2 /= ['46011','46012','46013'])) STOP 24
! Check argument passing (dummy processing)
call test2(a,b,c,d,ap,bp,e,f,g,h,i,j,2)
@@ -197,40 +197,40 @@ contains
read(str,nml=nml2)
! Check result
- if (any (x1 /= ['aa01','aa02'])) call abort()
- if (any (x1p /= ['98', '99'])) call abort()
- if (x2 /= '7') call abort()
- if (x2p /= '101') call abort()
- if (x3 /= '8') call abort()
- if (any (x4 /= ['-1', '-2', '-3'])) call abort()
-
- if (x6%c1 /= '-701') call abort()
- if (any (x6%c2 /= ['-702','-703','-704'])) call abort()
- if (x7(1)%c1 /= '33001') call abort()
- if (x7(2)%c1 /= '33002') call abort()
- if (any (x7(1)%c2 /= ['44001','44002','44003'])) call abort()
- if (any (x7(2)%c2 /= ['44011','44012','44013'])) call abort()
-
- if (x8%c1 /= '-601') call abort()
- if (any(x8%c2 /= ['-602','6703','-604'])) call abort()
- if (x9(1)%c1 /= '35001') call abort()
- if (x9(2)%c1 /= '35002') call abort()
- if (any (x9(1)%c2 /= ['45001','45002','45003'])) call abort()
- if (any (x9(2)%c2 /= ['45011','45012','45013'])) call abort()
+ if (any (x1 /= ['aa01','aa02'])) STOP 25
+ if (any (x1p /= ['98', '99'])) STOP 26
+ if (x2 /= '7') STOP 27
+ if (x2p /= '101') STOP 28
+ if (x3 /= '8') STOP 29
+ if (any (x4 /= ['-1', '-2', '-3'])) STOP 30
+
+ if (x6%c1 /= '-701') STOP 31
+ if (any (x6%c2 /= ['-702','-703','-704'])) STOP 32
+ if (x7(1)%c1 /= '33001') STOP 33
+ if (x7(2)%c1 /= '33002') STOP 34
+ if (any (x7(1)%c2 /= ['44001','44002','44003'])) STOP 35
+ if (any (x7(2)%c2 /= ['44011','44012','44013'])) STOP 36
+
+ if (x8%c1 /= '-601') STOP 37
+ if (any(x8%c2 /= ['-602','6703','-604'])) STOP 38
+ if (x9(1)%c1 /= '35001') STOP 39
+ if (x9(2)%c1 /= '35002') STOP 40
+ if (any (x9(1)%c2 /= ['45001','45002','45003'])) STOP 41
+ if (any (x9(2)%c2 /= ['45011','45012','45013'])) STOP 42
- if (x10%c1 /= '-501') call abort()
- if (any (x10%c2 /= ['-502','-503','-504'])) call abort()
- if (x11(1)%c1 /= '36001') call abort()
- if (x11(2)%c1 /= '36002') call abort()
- if (any (x11(1)%c2 /= ['46001','46002','46003'])) call abort()
- if (any (x11(2)%c2 /= ['46011','46012','46013'])) call abort()
-
- if (any (x5 /= [ 'x5-42', 'x5-53' ])) call abort()
-
- if (x12(1)%c1 /= '37001') call abort()
- if (x12(2)%c1 /= '37002') call abort()
- if (any (x12(1)%c2 /= ['47001','47002','47003'])) call abort()
- if (any (x12(2)%c2 /= ['47011','47012','47013'])) call abort()
+ if (x10%c1 /= '-501') STOP 43
+ if (any (x10%c2 /= ['-502','-503','-504'])) STOP 44
+ if (x11(1)%c1 /= '36001') STOP 45
+ if (x11(2)%c1 /= '36002') STOP 46
+ if (any (x11(1)%c2 /= ['46001','46002','46003'])) STOP 47
+ if (any (x11(2)%c2 /= ['46011','46012','46013'])) STOP 48
+
+ if (any (x5 /= [ 'x5-42', 'x5-53' ])) STOP 49
+
+ if (x12(1)%c1 /= '37001') STOP 50
+ if (x12(2)%c1 /= '37002') STOP 51
+ if (any (x12(1)%c2 /= ['47001','47002','47003'])) STOP 52
+ if (any (x12(2)%c2 /= ['47011','47012','47013'])) STOP 53
end subroutine test2
subroutine test3(x1,x2,x3,x4,x1p,x2p,x6,x7,x8,x9,x10,x11,n,ll)
@@ -301,40 +301,40 @@ contains
read(str,nml=nml2)
! Check result
- if (any (x1 /= ['aa01','aa02'])) call abort()
- if (any (x1p /= ['98', '99'])) call abort()
- if (x2 /= '7') call abort()
- if (x2p /= '101') call abort()
- if (x3 /= '8') call abort()
- if (any (x4 /= ['-1', '-2', '-3'])) call abort()
-
- if (x6%c1 /= '-701') call abort()
- if (any (x6%c2 /= ['-702','-703','-704'])) call abort()
- if (x7(1)%c1 /= '33001') call abort()
- if (x7(2)%c1 /= '33002') call abort()
- if (any (x7(1)%c2 /= ['44001','44002','44003'])) call abort()
- if (any (x7(2)%c2 /= ['44011','44012','44013'])) call abort()
-
- if (x8%c1 /= '-601') call abort()
- if (any(x8%c2 /= ['-602','6703','-604'])) call abort()
- if (x9(1)%c1 /= '35001') call abort()
- if (x9(2)%c1 /= '35002') call abort()
- if (any (x9(1)%c2 /= ['45001','45002','45003'])) call abort()
- if (any (x9(2)%c2 /= ['45011','45012','45013'])) call abort()
+ if (any (x1 /= ['aa01','aa02'])) STOP 54
+ if (any (x1p /= ['98', '99'])) STOP 55
+ if (x2 /= '7') STOP 56
+ if (x2p /= '101') STOP 57
+ if (x3 /= '8') STOP 58
+ if (any (x4 /= ['-1', '-2', '-3'])) STOP 59
+
+ if (x6%c1 /= '-701') STOP 60
+ if (any (x6%c2 /= ['-702','-703','-704'])) STOP 61
+ if (x7(1)%c1 /= '33001') STOP 62
+ if (x7(2)%c1 /= '33002') STOP 63
+ if (any (x7(1)%c2 /= ['44001','44002','44003'])) STOP 64
+ if (any (x7(2)%c2 /= ['44011','44012','44013'])) STOP 65
+
+ if (x8%c1 /= '-601') STOP 66
+ if (any(x8%c2 /= ['-602','6703','-604'])) STOP 67
+ if (x9(1)%c1 /= '35001') STOP 68
+ if (x9(2)%c1 /= '35002') STOP 69
+ if (any (x9(1)%c2 /= ['45001','45002','45003'])) STOP 70
+ if (any (x9(2)%c2 /= ['45011','45012','45013'])) STOP 71
- if (x10%c1 /= '-501') call abort()
- if (any (x10%c2 /= ['-502','-503','-504'])) call abort()
- if (x11(1)%c1 /= '36001') call abort()
- if (x11(2)%c1 /= '36002') call abort()
- if (any (x11(1)%c2 /= ['46001','46002','46003'])) call abort()
- if (any (x11(2)%c2 /= ['46011','46012','46013'])) call abort()
-
- if (any (x5 /= [ 'x5-42', 'x5-53' ])) call abort()
-
- if (x12(1)%c1 /= '37001') call abort()
- if (x12(2)%c1 /= '37002') call abort()
- if (any (x12(1)%c2 /= ['47001','47002','47003'])) call abort()
- if (any (x12(2)%c2 /= ['47011','47012','47013'])) call abort()
+ if (x10%c1 /= '-501') STOP 72
+ if (any (x10%c2 /= ['-502','-503','-504'])) STOP 73
+ if (x11(1)%c1 /= '36001') STOP 74
+ if (x11(2)%c1 /= '36002') STOP 75
+ if (any (x11(1)%c2 /= ['46001','46002','46003'])) STOP 76
+ if (any (x11(2)%c2 /= ['46011','46012','46013'])) STOP 77
+
+ if (any (x5 /= [ 'x5-42', 'x5-53' ])) STOP 78
+
+ if (x12(1)%c1 /= '37001') STOP 79
+ if (x12(2)%c1 /= '37002') STOP 80
+ if (any (x12(1)%c2 /= ['47001','47002','47003'])) STOP 81
+ if (any (x12(2)%c2 /= ['47011','47012','47013'])) STOP 82
end subroutine test3
subroutine test4(x1,x2,x3,x4,x1p,x2p,x6,x7,x8,x9,x10,x11,n)
@@ -404,39 +404,39 @@ contains
read(str,nml=nml2)
! Check result
- if (any (x1 /= ['aa01','aa02'])) call abort()
- if (any (x1p /= ['98', '99'])) call abort()
- if (x2 /= '7') call abort()
- if (x2p /= '101') call abort()
- if (x3 /= '8') call abort()
- if (any (x4 /= ['-1', '-2', '-3'])) call abort()
-
- if (x6%c1 /= '-701') call abort()
- if (any (x6%c2 /= ['-702','-703','-704'])) call abort()
- if (x7(1)%c1 /= '33001') call abort()
- if (x7(2)%c1 /= '33002') call abort()
- if (any (x7(1)%c2 /= ['44001','44002','44003'])) call abort()
- if (any (x7(2)%c2 /= ['44011','44012','44013'])) call abort()
-
- if (x8%c1 /= '-601') call abort()
- if (any(x8%c2 /= ['-602','6703','-604'])) call abort()
- if (x9(1)%c1 /= '35001') call abort()
- if (x9(2)%c1 /= '35002') call abort()
- if (any (x9(1)%c2 /= ['45001','45002','45003'])) call abort()
- if (any (x9(2)%c2 /= ['45011','45012','45013'])) call abort()
+ if (any (x1 /= ['aa01','aa02'])) STOP 83
+ if (any (x1p /= ['98', '99'])) STOP 84
+ if (x2 /= '7') STOP 85
+ if (x2p /= '101') STOP 86
+ if (x3 /= '8') STOP 87
+ if (any (x4 /= ['-1', '-2', '-3'])) STOP 88
+
+ if (x6%c1 /= '-701') STOP 89
+ if (any (x6%c2 /= ['-702','-703','-704'])) STOP 90
+ if (x7(1)%c1 /= '33001') STOP 91
+ if (x7(2)%c1 /= '33002') STOP 92
+ if (any (x7(1)%c2 /= ['44001','44002','44003'])) STOP 93
+ if (any (x7(2)%c2 /= ['44011','44012','44013'])) STOP 94
+
+ if (x8%c1 /= '-601') STOP 95
+ if (any(x8%c2 /= ['-602','6703','-604'])) STOP 96
+ if (x9(1)%c1 /= '35001') STOP 97
+ if (x9(2)%c1 /= '35002') STOP 98
+ if (any (x9(1)%c2 /= ['45001','45002','45003'])) STOP 99
+ if (any (x9(2)%c2 /= ['45011','45012','45013'])) STOP 100
- if (x10%c1 /= '-501') call abort()
- if (any (x10%c2 /= ['-502','-503','-504'])) call abort()
- if (x11(1)%c1 /= '36001') call abort()
- if (x11(2)%c1 /= '36002') call abort()
- if (any (x11(1)%c2 /= ['46001','46002','46003'])) call abort()
- if (any (x11(2)%c2 /= ['46011','46012','46013'])) call abort()
-
- if (any (x5 /= [ 'x5-42', 'x5-53' ])) call abort()
-
- if (x12(1)%c1 /= '37001') call abort()
- if (x12(2)%c1 /= '37002') call abort()
- if (any (x12(1)%c2 /= ['47001','47002','47003'])) call abort()
- if (any (x12(2)%c2 /= ['47011','47012','47013'])) call abort()
+ if (x10%c1 /= '-501') STOP 101
+ if (any (x10%c2 /= ['-502','-503','-504'])) STOP 102
+ if (x11(1)%c1 /= '36001') STOP 103
+ if (x11(2)%c1 /= '36002') STOP 104
+ if (any (x11(1)%c2 /= ['46001','46002','46003'])) STOP 105
+ if (any (x11(2)%c2 /= ['46011','46012','46013'])) STOP 106
+
+ if (any (x5 /= [ 'x5-42', 'x5-53' ])) STOP 107
+
+ if (x12(1)%c1 /= '37001') STOP 108
+ if (x12(2)%c1 /= '37002') STOP 109
+ if (any (x12(1)%c2 /= ['47001','47002','47003'])) STOP 110
+ if (any (x12(2)%c2 /= ['47011','47012','47013'])) STOP 111
end subroutine test4
end program nml_test
diff --git a/gcc/testsuite/gfortran.dg/namelist_71.f90 b/gcc/testsuite/gfortran.dg/namelist_71.f90
index c0428d905b9..b50c8c60a26 100644
--- a/gcc/testsuite/gfortran.dg/namelist_71.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_71.f90
@@ -25,12 +25,12 @@ write(10,'(a)') " field_setup%scal(3)%number= 8,"
write(10,'(a)') "/"
rewind(10)
read(10,nml=nl_setup)
-if (field_setup%vel(1)%number .ne. 3) call abort
-if (field_setup%vel(2)%number .ne. 9) call abort
-if (field_setup%vel(3)%number .ne. 27) call abort
-if (field_setup%scal(1)%number .ne. 2) call abort
-if (field_setup%scal(2)%number .ne. 4) call abort
-if (field_setup%scal(3)%number .ne. 8) call abort
+if (field_setup%vel(1)%number .ne. 3) STOP 1
+if (field_setup%vel(2)%number .ne. 9) STOP 2
+if (field_setup%vel(3)%number .ne. 27) STOP 3
+if (field_setup%scal(1)%number .ne. 2) STOP 4
+if (field_setup%scal(2)%number .ne. 4) STOP 5
+if (field_setup%scal(3)%number .ne. 8) STOP 6
!write(*,nml=nl_setup)
end program test_nml
diff --git a/gcc/testsuite/gfortran.dg/namelist_72.f b/gcc/testsuite/gfortran.dg/namelist_72.f
index 22c08807616..96cacf1afae 100644
--- a/gcc/testsuite/gfortran.dg/namelist_72.f
+++ b/gcc/testsuite/gfortran.dg/namelist_72.f
@@ -26,8 +26,8 @@
!print *, 'xpos', xpos(1:10), 'ypos', ypos(1:10)
- if (any (xpos(1:5) /= [0.00, 0.10, 0.20, 0.30, 0.40]))call abort()
- if (any (ypos(1:5) /= [0.50, 0.60, 0.70, 0.80, 0.90]))call abort()
- if (any (xpos(6:) /= -huge(xpos))) call abort ()
- if (any (ypos(6:) /= -huge(ypos))) call abort ()
+ if (any (xpos(1:5) /= [0.00, 0.10, 0.20, 0.30, 0.40]))STOP 1
+ if (any (ypos(1:5) /= [0.50, 0.60, 0.70, 0.80, 0.90]))STOP 2
+ if (any (xpos(6:) /= -huge(xpos))) STOP 3
+ if (any (ypos(6:) /= -huge(ypos))) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/namelist_73.f90 b/gcc/testsuite/gfortran.dg/namelist_73.f90
index 8fc88aa1ed9..031491b56ee 100644
--- a/gcc/testsuite/gfortran.dg/namelist_73.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_73.f90
@@ -23,6 +23,6 @@
close(4)
! write(*,*) nfp
- if (nfp /= 5) call abort()
+ if (nfp /= 5) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/namelist_77.f90 b/gcc/testsuite/gfortran.dg/namelist_77.f90
index 5cbfe3aad65..924074b2921 100644
--- a/gcc/testsuite/gfortran.dg/namelist_77.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_77.f90
@@ -42,8 +42,8 @@ program error_namelist
read(10, nml=error_params)
close (10)
- if (beam_init%chars(1) /= 'JUNK') call abort
- if (beam_init%grid(1)%n_x /= 3) call abort
- if (beam_init%grid(1)%n_px /= 2) call abort
+ if (beam_init%chars(1) /= 'JUNK') STOP 1
+ if (beam_init%grid(1)%n_x /= 3) STOP 2
+ if (beam_init%grid(1)%n_px /= 2) STOP 3
end program
diff --git a/gcc/testsuite/gfortran.dg/namelist_78.f90 b/gcc/testsuite/gfortran.dg/namelist_78.f90
index d4e29ab8228..9830f6f2c4e 100644
--- a/gcc/testsuite/gfortran.dg/namelist_78.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_78.f90
@@ -29,6 +29,6 @@ program namelist
read(10, nml=nmlst)
close (10)
- if (der%d(1)%k%j /= 1) call abort
- if (der%d(2)%k%j /= 2) call abort
+ if (der%d(1)%k%j /= 1) STOP 1
+ if (der%d(2)%k%j /= 2) STOP 2
end program namelist
diff --git a/gcc/testsuite/gfortran.dg/namelist_79.f90 b/gcc/testsuite/gfortran.dg/namelist_79.f90
index 2b2ef310d09..f6399627936 100644
--- a/gcc/testsuite/gfortran.dg/namelist_79.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_79.f90
@@ -32,12 +32,12 @@ program testje
read(10, nml=namtoptrc)
close (10)
- if (getal /= 7) call abort
- if (tracer(1)%sname /= 'DIC ') call abort
- if (tracer(2)%sname /= 'Alkalini') call abort
- if (tracer(3)%sname /= 'O2 ') call abort
- if (.not. tracer(1)%lini) call abort
- if (.not. tracer(2)%lini) call abort
- if (.not. tracer(3)%lini) call abort
+ if (getal /= 7) STOP 1
+ if (tracer(1)%sname /= 'DIC ') STOP 2
+ if (tracer(2)%sname /= 'Alkalini') STOP 3
+ if (tracer(3)%sname /= 'O2 ') STOP 4
+ if (.not. tracer(1)%lini) STOP 5
+ if (.not. tracer(2)%lini) STOP 6
+ if (.not. tracer(3)%lini) STOP 7
end program testje
diff --git a/gcc/testsuite/gfortran.dg/namelist_80.f90 b/gcc/testsuite/gfortran.dg/namelist_80.f90
index 1961b11b13b..64b1f94508f 100644
--- a/gcc/testsuite/gfortran.dg/namelist_80.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_80.f90
@@ -23,5 +23,5 @@
READ (53, temp)
CLOSE (53)
- if (int1 /= 1 .or. int2 /= 2 .or. int3 /= 3) call abort()
+ if (int1 /= 1 .or. int2 /= 2 .or. int3 /= 3) STOP 1
END PROGRAM
diff --git a/gcc/testsuite/gfortran.dg/namelist_81.f90 b/gcc/testsuite/gfortran.dg/namelist_81.f90
index ddb100bf882..2adac1b0b53 100644
--- a/gcc/testsuite/gfortran.dg/namelist_81.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_81.f90
@@ -9,7 +9,7 @@ write(99,'(a)') '&nml i(3 ) = 5 /'
rewind(99)
read(99,nml=nml)
close(99)
-if (i(1)/=-42 .or. i(2)/=-42 .or. i(3)/=5) call abort()
+if (i(1)/=-42 .or. i(2)/=-42 .or. i(3)/=5) STOP 1
! Shorten the file so the read hits EOF
@@ -17,27 +17,27 @@ open(99,status='scratch')
write(99,'(a)') '&nml i(3 ) = 5 '
rewind(99)
read(99,nml=nml, end=30)
-call abort()
+STOP 2
! Shorten some more
30 close(99)
open(99,status='scratch')
write(99,'(a)') '&nml i(3 ) ='
rewind(99)
read(99,nml=nml, end=40)
-call abort()
+STOP 3
! Shorten some more
40 close(99)
open(99,status='scratch')
write(99,'(a)') '&nml i(3 )'
rewind(99)
read(99,nml=nml, end=50)
-call abort()
+STOP 4
! Shorten some more
50 close(99)
open(99,status='scratch')
write(99,'(a)') '&nml i(3 '
rewind(99)
read(99,nml=nml, end=60)
-call abort()
+STOP 5
60 close(99)
end
diff --git a/gcc/testsuite/gfortran.dg/namelist_82.f90 b/gcc/testsuite/gfortran.dg/namelist_82.f90
index aae700f686d..a660e99f0d3 100644
--- a/gcc/testsuite/gfortran.dg/namelist_82.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_82.f90
@@ -21,12 +21,12 @@ rewind(99)
read (99, nml=naml1)
close (99, status="delete")
-if (tracer(1)%sname.ne.'aa') call abort()
-if (.not.tracer(1)%lini) call abort()
-if (tracer(2)%sname.ne.'bb') call abort()
-if (.not.tracer(2)%lini) call abort()
-if (tracer(3)%sname.ne.'XX') call abort()
-if (tracer(3)%lini) call abort()
+if (tracer(1)%sname.ne.'aa') STOP 1
+if (.not.tracer(1)%lini) STOP 2
+if (tracer(2)%sname.ne.'bb') STOP 3
+if (.not.tracer(2)%lini) STOP 4
+if (tracer(3)%sname.ne.'XX') STOP 5
+if (tracer(3)%lini) STOP 6
!write (*, nml=naml1)
diff --git a/gcc/testsuite/gfortran.dg/namelist_84.f90 b/gcc/testsuite/gfortran.dg/namelist_84.f90
index 14b68a44e8a..9cbc3e4c6c2 100644
--- a/gcc/testsuite/gfortran.dg/namelist_84.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_84.f90
@@ -20,7 +20,7 @@ program namelist_delim_none
rewind(10)
do i=1,5
read(10,'(a)') internal_unit
- if (i.eq.2 .and. internal_unit .ne. " MYSTRING=mon tue wed thu fri ,") call abort
+ if (i.eq.2 .and. internal_unit .ne. " MYSTRING=mon tue wed thu fri ,") STOP 1
if (scan(internal_unit,"""'").ne.0) print *, internal_unit
end do
close(10)
diff --git a/gcc/testsuite/gfortran.dg/namelist_85.f90 b/gcc/testsuite/gfortran.dg/namelist_85.f90
index 17752856ad3..a0a0f025e24 100644
--- a/gcc/testsuite/gfortran.dg/namelist_85.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_85.f90
@@ -60,7 +60,7 @@ program test_type_extension
rewind(10)
read(10,NML=test_NML)
- if (tke%x - 3.14000010 > .00001) call abort
- if (tke%string /= "kf7rcc") call abort
- if (answer /= 42) call abort ! hitchkikers guide to the galaxy
+ if (tke%x - 3.14000010 > .00001) STOP 1
+ if (tke%string /= "kf7rcc") STOP 2
+ if (answer /= 42) STOP 3! hitchkikers guide to the galaxy
end program test_type_extension
diff --git a/gcc/testsuite/gfortran.dg/namelist_86.f90 b/gcc/testsuite/gfortran.dg/namelist_86.f90
index 88d90d2cf9f..ceb1ca3b95f 100644
--- a/gcc/testsuite/gfortran.dg/namelist_86.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_86.f90
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2003 -fall-intrinsics" }
+! { dg-options "-std=f2003 " }
! PR65596 Namelist reads too far.
integer ,parameter :: CL=80
integer ,parameter :: AL=4
@@ -29,13 +29,13 @@ dogs(:) = '________'
read (27, nml=theList, iostat=ierr)
-if (ierr .ne. 0) call abort
+if (ierr .ne. 0) STOP 1
rslt = ['Rover ','Spot ','________','________']
-if (any(dogs.ne.rslt)) call abort
+if (any(dogs.ne.rslt)) STOP 2
rslt = ['Fluffy ','Hairball','________','________']
-if (any(cats.ne.rslt)) call abort
+if (any(cats.ne.rslt)) STOP 3
close(27)
diff --git a/gcc/testsuite/gfortran.dg/namelist_87.f90 b/gcc/testsuite/gfortran.dg/namelist_87.f90
index c19d106d68f..d943c767508 100644
--- a/gcc/testsuite/gfortran.dg/namelist_87.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_87.f90
@@ -50,14 +50,14 @@ read (99, nml=nml)
!write (*, nml=nml)
close (99, status="delete")
- if (r1 /= 43) call abort ()
- if (r2 /= 43) call abort ()
- if (r3 /= r3 .or. r3 <= huge(r3)) call abort ()
- if (r4 == r4) call abort ()
- if (r5 /= 300000) call abort ()
- if (c /= cmplx(4,2)) call abort ()
- if (.not. ll) call abort ()
- if (c1 /= "a") call abort ()
- if (c2 /= "bc") call abort ()
- if (c3 /= "ax") call abort ()
+ if (r1 /= 43) STOP 1
+ if (r2 /= 43) STOP 2
+ if (r3 /= r3 .or. r3 <= huge(r3)) STOP 3
+ if (r4 == r4) STOP 4
+ if (r5 /= 300000) STOP 5
+ if (c /= cmplx(4,2)) STOP 6
+ if (.not. ll) STOP 7
+ if (c1 /= "a") STOP 8
+ if (c2 /= "bc") STOP 9
+ if (c3 /= "ax") STOP 10
end
diff --git a/gcc/testsuite/gfortran.dg/namelist_88.f90 b/gcc/testsuite/gfortran.dg/namelist_88.f90
index 0a6ac9b3bb3..ff61551828b 100644
--- a/gcc/testsuite/gfortran.dg/namelist_88.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_88.f90
@@ -22,8 +22,8 @@ program namelist
close(unit=23)
- if (tab(1).ne.'in1') call abort
- if (tab(2).ne.'in2') call abort
- if (any(tab(3:tabsz).ne.'invalid')) call abort
+ if (tab(1).ne.'in1') STOP 1
+ if (tab(2).ne.'in2') STOP 2
+ if (any(tab(3:tabsz).ne.'invalid')) STOP 3
end program namelist
diff --git a/gcc/testsuite/gfortran.dg/namelist_89.f90 b/gcc/testsuite/gfortran.dg/namelist_89.f90
index cfae4664d62..fbb71439242 100644
--- a/gcc/testsuite/gfortran.dg/namelist_89.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_89.f90
@@ -23,8 +23,8 @@ write(99,*) "/"
rewind(99)
read (99, nml=nml, iostat=ios, iomsg=errormsg)
-if (ios.ne.5010) call abort
-if (scan(errormsg, "5").ne.44) call abort
+if (ios.ne.5010) STOP 1
+if (scan(errormsg, "5").ne.44) STOP 2
rewind(99)
@@ -39,8 +39,8 @@ write(99,*) "/"
rewind(99)
read (99, nml=nml, iostat=ios, iomsg=errormsg)
-if (ios.ne.5010) call abort
-if (scan(errormsg, "2").ne.25) call abort
+if (ios.ne.5010) STOP 3
+if (scan(errormsg, "2").ne.25) STOP 4
close (99)
diff --git a/gcc/testsuite/gfortran.dg/namelist_90.f b/gcc/testsuite/gfortran.dg/namelist_90.f
index 9c0ae5b72bb..dfa80b12d91 100644
--- a/gcc/testsuite/gfortran.dg/namelist_90.f
+++ b/gcc/testsuite/gfortran.dg/namelist_90.f
@@ -23,6 +23,6 @@
open(unit=7,file='test.out',form='formatted')
read(7,nml=fith, iostat=ierr)
close(7, status="delete")
- if (ierr.ne.0) call abort
- if (any(senid.ne.res)) call abort
+ if (ierr.ne.0) STOP 1
+ if (any(senid.ne.res)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/namelist_95.f90 b/gcc/testsuite/gfortran.dg/namelist_95.f90
index 59566480865..bd224f0e5ec 100644
--- a/gcc/testsuite/gfortran.dg/namelist_95.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_95.f90
@@ -19,5 +19,5 @@ close(UNIT)
open(UNIT, file=FILE)
read(UNIT, nml=complex_namelist)
close(UNIT, status="delete")
-if (any(a.ne.(/ (0.0, 0.0), (0.0, 0.0), (3.0, 4.0) /))) call abort
+if (any(a.ne.(/ (0.0, 0.0), (0.0, 0.0), (3.0, 4.0) /))) STOP 1
end program test
diff --git a/gcc/testsuite/gfortran.dg/namelist_char_only.f90 b/gcc/testsuite/gfortran.dg/namelist_char_only.f90
index 9993669b38a..fbba71ffb7b 100644
--- a/gcc/testsuite/gfortran.dg/namelist_char_only.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_char_only.f90
@@ -24,6 +24,6 @@
READ(11,*) a
CLOSE(11)
- if (a /= "alls_well") call abort ()
+ if (a /= "alls_well") STOP 1
END
diff --git a/gcc/testsuite/gfortran.dg/namelist_empty.f90 b/gcc/testsuite/gfortran.dg/namelist_empty.f90
index 89493a84b34..fd8664fc3f9 100644
--- a/gcc/testsuite/gfortran.dg/namelist_empty.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_empty.f90
@@ -16,5 +16,5 @@
rewind(7)
read(7,NML=input)
close(7)
- if (var.ne.'') call abort
+ if (var.ne.'') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/namelist_internal.f90 b/gcc/testsuite/gfortran.dg/namelist_internal.f90
index 4f8aeb2272d..97d21aba65f 100644
--- a/gcc/testsuite/gfortran.dg/namelist_internal.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_internal.f90
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-fall-intrinsics -std=f2003" }
+! { dg-options " -std=f2003" }
! Checks internal file read/write of namelists
! (Fortran 2003 feature)
! PR fortran/28224
@@ -17,5 +17,5 @@ program nml_internal
j = 10
r = sin(1.0)
read(str,nml=nam)
- if(i /= 42 .or. j /= -718 .or. abs(r-exp(1.0)) > 1e-5) call abort()
+ if(i /= 42 .or. j /= -718 .or. abs(r-exp(1.0)) > 1e-5) STOP 1
end program nml_internal
diff --git a/gcc/testsuite/gfortran.dg/namelist_use.f90 b/gcc/testsuite/gfortran.dg/namelist_use.f90
index d7e6272330f..2c21f43dd2a 100644
--- a/gcc/testsuite/gfortran.dg/namelist_use.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_use.f90
@@ -22,10 +22,10 @@ program namelist_use
write (10,*) "&NML2 aa='pqrs' ii=2 rrr=3.5 /"
rewind (10)
read (10,nml=nml1,iostat=i)
- if ((i.ne.0).or.(aa.ne."lmno").or.(ii.ne.1).or.(rr.ne.2.5)) call abort ()
+ if ((i.ne.0).or.(aa.ne."lmno").or.(ii.ne.1).or.(rr.ne.2.5)) STOP 1
read (10,nml=nml2,iostat=i)
- if ((i.ne.0).or.(aa.ne."pqrs").or.(ii.ne.2).or.(rrr.ne.3.5)) call abort ()
+ if ((i.ne.0).or.(aa.ne."pqrs").or.(ii.ne.2).or.(rrr.ne.3.5)) STOP 2
close (10)
end program namelist_use
diff --git a/gcc/testsuite/gfortran.dg/namelist_use_only.f90 b/gcc/testsuite/gfortran.dg/namelist_use_only.f90
index d2a533e6d65..676eac7ae3d 100644
--- a/gcc/testsuite/gfortran.dg/namelist_use_only.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_use_only.f90
@@ -28,9 +28,9 @@ program namelist_use_only
write (10,'(a)') "&NML2 aaa='pqrs' iii=2 rrr=3.5 /"
rewind (10)
read (10,nml=nml1,iostat=i)
- if ((i.ne.0).or.(aa.ne."lmno").or.(ii.ne.1).or.(rr.ne.2.5)) call abort ()
+ if ((i.ne.0).or.(aa.ne."lmno").or.(ii.ne.1).or.(rr.ne.2.5)) STOP 1
read (10,nml=nml2,iostat=i)
- if ((i.ne.0).or.(rrrr.ne.3.5).or.foo()) call abort ()
+ if ((i.ne.0).or.(rrrr.ne.3.5).or.foo()) STOP 2
close (10)
end program namelist_use_only
diff --git a/gcc/testsuite/gfortran.dg/namelist_utf8.f90 b/gcc/testsuite/gfortran.dg/namelist_utf8.f90
index 6a9dde314ea..1fce7dcfe5e 100644
--- a/gcc/testsuite/gfortran.dg/namelist_utf8.f90
+++ b/gcc/testsuite/gfortran.dg/namelist_utf8.f90
@@ -18,13 +18,13 @@ str = 4_'XXXX'
str2 = 4_'YYYY'
read(99,nml=nml)
read(99, *) str2
-if (str2 /= str) call abort
+if (str2 /= str) STOP 1
rewind(99)
read(99,'(A)') str3
-if (str3 /= 4_'&nml str = "' // str // 4_'" /') call abort
+if (str3 /= 4_'&nml str = "' // str // 4_'" /') STOP 2
read(99,*) str3
-if (str3 /= str) call abort
+if (str3 /= str) STOP 3
close(99, status='delete')
end
diff --git a/gcc/testsuite/gfortran.dg/nan_1.f90 b/gcc/testsuite/gfortran.dg/nan_1.f90
index cfa85059414..e64b4ce65e1 100644
--- a/gcc/testsuite/gfortran.dg/nan_1.f90
+++ b/gcc/testsuite/gfortran.dg/nan_1.f90
@@ -55,70 +55,70 @@ program test
nan = 0
nan = nan / nan
if (nan == nan .or. nan > nan .or. nan < nan .or. nan >= nan &
- .or. nan <= nan) call abort
+ .or. nan <= nan) STOP 1
if (isnan (2.d0) .or. (.not. isnan(nan)) .or. &
- (.not. isnan(real(nan,kind=kind(2.d0))))) call abort
+ (.not. isnan(real(nan,kind=kind(2.d0))))) STOP 2
! Create an INF and check it
large = huge(large)
inf = 2 * large
- if (isinf(nan) .or. isinf(large) .or. .not. isinf(inf)) call abort
- if (isinf(-nan) .or. isinf(-large) .or. .not. isinf(-inf)) call abort
+ if (isinf(nan) .or. isinf(large) .or. .not. isinf(inf)) STOP 3
+ if (isinf(-nan) .or. isinf(-large) .or. .not. isinf(-inf)) STOP 4
! Check that MIN and MAX behave correctly
- if (max(2.0, nan) /= 2.0) call abort
- if (min(2.0, nan) /= 2.0) call abort
- if (max(nan, 2.0) /= 2.0) call abort
- if (min(nan, 2.0) /= 2.0) call abort
+ if (max(2.0, nan) /= 2.0) STOP 5
+ if (min(2.0, nan) /= 2.0) STOP 6
+ if (max(nan, 2.0) /= 2.0) STOP 7
+ if (min(nan, 2.0) /= 2.0) STOP 8
- if (max(2.d0, nan) /= 2.d0) call abort ! { dg-warning "Extension: Different type kinds" }
- if (min(2.d0, nan) /= 2.d0) call abort ! { dg-warning "Extension: Different type kinds" }
- if (max(nan, 2.d0) /= 2.d0) call abort ! { dg-warning "Extension: Different type kinds" }
- if (min(nan, 2.d0) /= 2.d0) call abort ! { dg-warning "Extension: Different type kinds" }
+ if (max(2.d0, nan) /= 2.d0) STOP 9! { dg-warning "Extension: Different type kinds" }
+ if (min(2.d0, nan) /= 2.d0) STOP 10! { dg-warning "Extension: Different type kinds" }
+ if (max(nan, 2.d0) /= 2.d0) STOP 11! { dg-warning "Extension: Different type kinds" }
+ if (min(nan, 2.d0) /= 2.d0) STOP 12! { dg-warning "Extension: Different type kinds" }
- if (.not. isnan(min(nan,nan))) call abort
- if (.not. isnan(max(nan,nan))) call abort
+ if (.not. isnan(min(nan,nan))) STOP 13
+ if (.not. isnan(max(nan,nan))) STOP 14
! Same thing, with more arguments
- if (max(3.0, 2.0, nan) /= 3.0) call abort
- if (min(3.0, 2.0, nan) /= 2.0) call abort
- if (max(3.0, nan, 2.0) /= 3.0) call abort
- if (min(3.0, nan, 2.0) /= 2.0) call abort
- if (max(nan, 3.0, 2.0) /= 3.0) call abort
- if (min(nan, 3.0, 2.0) /= 2.0) call abort
-
- if (max(3.d0, 2.d0, nan) /= 3.d0) call abort ! { dg-warning "Extension: Different type kinds" }
- if (min(3.d0, 2.d0, nan) /= 2.d0) call abort ! { dg-warning "Extension: Different type kinds" }
- if (max(3.d0, nan, 2.d0) /= 3.d0) call abort ! { dg-warning "Extension: Different type kinds" }
- if (min(3.d0, nan, 2.d0) /= 2.d0) call abort ! { dg-warning "Extension: Different type kinds" }
- if (max(nan, 3.d0, 2.d0) /= 3.d0) call abort ! { dg-warning "Extension: Different type kinds" }
- if (min(nan, 3.d0, 2.d0) /= 2.d0) call abort ! { dg-warning "Extension: Different type kinds" }
-
- if (.not. isnan(min(nan,nan,nan))) call abort
- if (.not. isnan(max(nan,nan,nan))) call abort
- if (.not. isnan(min(nan,nan,nan,nan))) call abort
- if (.not. isnan(max(nan,nan,nan,nan))) call abort
- if (.not. isnan(min(nan,nan,nan,nan,nan))) call abort
- if (.not. isnan(max(nan,nan,nan,nan,nan))) call abort
+ if (max(3.0, 2.0, nan) /= 3.0) STOP 15
+ if (min(3.0, 2.0, nan) /= 2.0) STOP 16
+ if (max(3.0, nan, 2.0) /= 3.0) STOP 17
+ if (min(3.0, nan, 2.0) /= 2.0) STOP 18
+ if (max(nan, 3.0, 2.0) /= 3.0) STOP 19
+ if (min(nan, 3.0, 2.0) /= 2.0) STOP 20
+
+ if (max(3.d0, 2.d0, nan) /= 3.d0) STOP 21! { dg-warning "Extension: Different type kinds" }
+ if (min(3.d0, 2.d0, nan) /= 2.d0) STOP 22! { dg-warning "Extension: Different type kinds" }
+ if (max(3.d0, nan, 2.d0) /= 3.d0) STOP 23! { dg-warning "Extension: Different type kinds" }
+ if (min(3.d0, nan, 2.d0) /= 2.d0) STOP 24! { dg-warning "Extension: Different type kinds" }
+ if (max(nan, 3.d0, 2.d0) /= 3.d0) STOP 25! { dg-warning "Extension: Different type kinds" }
+ if (min(nan, 3.d0, 2.d0) /= 2.d0) STOP 26! { dg-warning "Extension: Different type kinds" }
+
+ if (.not. isnan(min(nan,nan,nan))) STOP 27
+ if (.not. isnan(max(nan,nan,nan))) STOP 28
+ if (.not. isnan(min(nan,nan,nan,nan))) STOP 29
+ if (.not. isnan(max(nan,nan,nan,nan))) STOP 30
+ if (.not. isnan(min(nan,nan,nan,nan,nan))) STOP 31
+ if (.not. isnan(max(nan,nan,nan,nan,nan))) STOP 32
! Large values, INF and NaNs
- if (.not. isinf(max(large, inf))) call abort
- if (isinf(min(large, inf))) call abort
- if (.not. isinf(max(nan, large, inf))) call abort
- if (isinf(min(nan, large, inf))) call abort
- if (.not. isinf(max(large, nan, inf))) call abort
- if (isinf(min(large, nan, inf))) call abort
- if (.not. isinf(max(large, inf, nan))) call abort
- if (isinf(min(large, inf, nan))) call abort
-
- if (.not. isinf(min(-large, -inf))) call abort
- if (isinf(max(-large, -inf))) call abort
- if (.not. isinf(min(nan, -large, -inf))) call abort
- if (isinf(max(nan, -large, -inf))) call abort
- if (.not. isinf(min(-large, nan, -inf))) call abort
- if (isinf(max(-large, nan, -inf))) call abort
- if (.not. isinf(min(-large, -inf, nan))) call abort
- if (isinf(max(-large, -inf, nan))) call abort
+ if (.not. isinf(max(large, inf))) STOP 33
+ if (isinf(min(large, inf))) STOP 34
+ if (.not. isinf(max(nan, large, inf))) STOP 35
+ if (isinf(min(nan, large, inf))) STOP 36
+ if (.not. isinf(max(large, nan, inf))) STOP 37
+ if (isinf(min(large, nan, inf))) STOP 38
+ if (.not. isinf(max(large, inf, nan))) STOP 39
+ if (isinf(min(large, inf, nan))) STOP 40
+
+ if (.not. isinf(min(-large, -inf))) STOP 41
+ if (isinf(max(-large, -inf))) STOP 42
+ if (.not. isinf(min(nan, -large, -inf))) STOP 43
+ if (isinf(max(nan, -large, -inf))) STOP 44
+ if (.not. isinf(min(-large, nan, -inf))) STOP 45
+ if (isinf(max(-large, nan, -inf))) STOP 46
+ if (.not. isinf(min(-large, -inf, nan))) STOP 47
+ if (isinf(max(-large, -inf, nan))) STOP 48
end program test
diff --git a/gcc/testsuite/gfortran.dg/nan_2.f90 b/gcc/testsuite/gfortran.dg/nan_2.f90
index 9077883eb1a..7c7a8da3f0c 100644
--- a/gcc/testsuite/gfortran.dg/nan_2.f90
+++ b/gcc/testsuite/gfortran.dg/nan_2.f90
@@ -40,68 +40,68 @@ program test
real, parameter :: nan = 0.0/0.0, large = huge(large), inf = 1.0/0.0
if (nan == nan .or. nan > nan .or. nan < nan .or. nan >= nan &
- .or. nan <= nan) call abort
+ .or. nan <= nan) STOP 1
if (isnan (2.d0) .or. (.not. isnan(nan)) .or. &
- (.not. isnan(real(nan,kind=kind(2.d0))))) call abort
+ (.not. isnan(real(nan,kind=kind(2.d0))))) STOP 2
! Create an INF and check it
- if (isinf(nan) .or. isinf(large) .or. .not. isinf(inf)) call abort
- if (isinf(-nan) .or. isinf(-large) .or. .not. isinf(-inf)) call abort
+ if (isinf(nan) .or. isinf(large) .or. .not. isinf(inf)) STOP 3
+ if (isinf(-nan) .or. isinf(-large) .or. .not. isinf(-inf)) STOP 4
! Check that MIN and MAX behave correctly
- if (max(2.0, nan) /= 2.0) call abort
- if (min(2.0, nan) /= 2.0) call abort
- if (max(nan, 2.0) /= 2.0) call abort
- if (min(nan, 2.0) /= 2.0) call abort
+ if (max(2.0, nan) /= 2.0) STOP 5
+ if (min(2.0, nan) /= 2.0) STOP 6
+ if (max(nan, 2.0) /= 2.0) STOP 7
+ if (min(nan, 2.0) /= 2.0) STOP 8
- if (max(2.d0, nan) /= 2.d0) call abort ! { dg-warning "Extension: Different type kinds" }
- if (min(2.d0, nan) /= 2.d0) call abort ! { dg-warning "Extension: Different type kinds" }
- if (max(nan, 2.d0) /= 2.d0) call abort ! { dg-warning "Extension: Different type kinds" }
- if (min(nan, 2.d0) /= 2.d0) call abort ! { dg-warning "Extension: Different type kinds" }
+ if (max(2.d0, nan) /= 2.d0) STOP 9! { dg-warning "Extension: Different type kinds" }
+ if (min(2.d0, nan) /= 2.d0) STOP 10! { dg-warning "Extension: Different type kinds" }
+ if (max(nan, 2.d0) /= 2.d0) STOP 11! { dg-warning "Extension: Different type kinds" }
+ if (min(nan, 2.d0) /= 2.d0) STOP 12! { dg-warning "Extension: Different type kinds" }
- if (.not. isnan(min(nan,nan))) call abort
- if (.not. isnan(max(nan,nan))) call abort
+ if (.not. isnan(min(nan,nan))) STOP 13
+ if (.not. isnan(max(nan,nan))) STOP 14
! Same thing, with more arguments
- if (max(3.0, 2.0, nan) /= 3.0) call abort
- if (min(3.0, 2.0, nan) /= 2.0) call abort
- if (max(3.0, nan, 2.0) /= 3.0) call abort
- if (min(3.0, nan, 2.0) /= 2.0) call abort
- if (max(nan, 3.0, 2.0) /= 3.0) call abort
- if (min(nan, 3.0, 2.0) /= 2.0) call abort
-
- if (max(3.d0, 2.d0, nan) /= 3.d0) call abort ! { dg-warning "Extension: Different type kinds" }
- if (min(3.d0, 2.d0, nan) /= 2.d0) call abort ! { dg-warning "Extension: Different type kinds" }
- if (max(3.d0, nan, 2.d0) /= 3.d0) call abort ! { dg-warning "Extension: Different type kinds" }
- if (min(3.d0, nan, 2.d0) /= 2.d0) call abort ! { dg-warning "Extension: Different type kinds" }
- if (max(nan, 3.d0, 2.d0) /= 3.d0) call abort ! { dg-warning "Extension: Different type kinds" }
- if (min(nan, 3.d0, 2.d0) /= 2.d0) call abort ! { dg-warning "Extension: Different type kinds" }
-
- if (.not. isnan(min(nan,nan,nan))) call abort
- if (.not. isnan(max(nan,nan,nan))) call abort
- if (.not. isnan(min(nan,nan,nan,nan))) call abort
- if (.not. isnan(max(nan,nan,nan,nan))) call abort
- if (.not. isnan(min(nan,nan,nan,nan,nan))) call abort
- if (.not. isnan(max(nan,nan,nan,nan,nan))) call abort
+ if (max(3.0, 2.0, nan) /= 3.0) STOP 15
+ if (min(3.0, 2.0, nan) /= 2.0) STOP 16
+ if (max(3.0, nan, 2.0) /= 3.0) STOP 17
+ if (min(3.0, nan, 2.0) /= 2.0) STOP 18
+ if (max(nan, 3.0, 2.0) /= 3.0) STOP 19
+ if (min(nan, 3.0, 2.0) /= 2.0) STOP 20
+
+ if (max(3.d0, 2.d0, nan) /= 3.d0) STOP 21! { dg-warning "Extension: Different type kinds" }
+ if (min(3.d0, 2.d0, nan) /= 2.d0) STOP 22! { dg-warning "Extension: Different type kinds" }
+ if (max(3.d0, nan, 2.d0) /= 3.d0) STOP 23! { dg-warning "Extension: Different type kinds" }
+ if (min(3.d0, nan, 2.d0) /= 2.d0) STOP 24! { dg-warning "Extension: Different type kinds" }
+ if (max(nan, 3.d0, 2.d0) /= 3.d0) STOP 25! { dg-warning "Extension: Different type kinds" }
+ if (min(nan, 3.d0, 2.d0) /= 2.d0) STOP 26! { dg-warning "Extension: Different type kinds" }
+
+ if (.not. isnan(min(nan,nan,nan))) STOP 27
+ if (.not. isnan(max(nan,nan,nan))) STOP 28
+ if (.not. isnan(min(nan,nan,nan,nan))) STOP 29
+ if (.not. isnan(max(nan,nan,nan,nan))) STOP 30
+ if (.not. isnan(min(nan,nan,nan,nan,nan))) STOP 31
+ if (.not. isnan(max(nan,nan,nan,nan,nan))) STOP 32
! Large values, INF and NaNs
- if (.not. isinf(max(large, inf))) call abort
- if (isinf(min(large, inf))) call abort
- if (.not. isinf(max(nan, large, inf))) call abort
- if (isinf(min(nan, large, inf))) call abort
- if (.not. isinf(max(large, nan, inf))) call abort
- if (isinf(min(large, nan, inf))) call abort
- if (.not. isinf(max(large, inf, nan))) call abort
- if (isinf(min(large, inf, nan))) call abort
-
- if (.not. isinf(min(-large, -inf))) call abort
- if (isinf(max(-large, -inf))) call abort
- if (.not. isinf(min(nan, -large, -inf))) call abort
- if (isinf(max(nan, -large, -inf))) call abort
- if (.not. isinf(min(-large, nan, -inf))) call abort
- if (isinf(max(-large, nan, -inf))) call abort
- if (.not. isinf(min(-large, -inf, nan))) call abort
- if (isinf(max(-large, -inf, nan))) call abort
+ if (.not. isinf(max(large, inf))) STOP 33
+ if (isinf(min(large, inf))) STOP 34
+ if (.not. isinf(max(nan, large, inf))) STOP 35
+ if (isinf(min(nan, large, inf))) STOP 36
+ if (.not. isinf(max(large, nan, inf))) STOP 37
+ if (isinf(min(large, nan, inf))) STOP 38
+ if (.not. isinf(max(large, inf, nan))) STOP 39
+ if (isinf(min(large, inf, nan))) STOP 40
+
+ if (.not. isinf(min(-large, -inf))) STOP 41
+ if (isinf(max(-large, -inf))) STOP 42
+ if (.not. isinf(min(nan, -large, -inf))) STOP 43
+ if (isinf(max(nan, -large, -inf))) STOP 44
+ if (.not. isinf(min(-large, nan, -inf))) STOP 45
+ if (isinf(max(-large, nan, -inf))) STOP 46
+ if (.not. isinf(min(-large, -inf, nan))) STOP 47
+ if (isinf(max(-large, -inf, nan))) STOP 48
end program test
diff --git a/gcc/testsuite/gfortran.dg/nan_3.f90 b/gcc/testsuite/gfortran.dg/nan_3.f90
index aecb42b68a8..97b6fef179c 100644
--- a/gcc/testsuite/gfortran.dg/nan_3.f90
+++ b/gcc/testsuite/gfortran.dg/nan_3.f90
@@ -15,32 +15,32 @@ program main
str = "nan"
read(str,*) r
- if (.not.isnan(r)) call abort()
+ if (.not.isnan(r)) STOP 1
str = "(nan,4.0)"
read(str,*) z
- if (.not.isnan(real(z)) .or. aimag(z) /= 4.0) call abort()
+ if (.not.isnan(real(z)) .or. aimag(z) /= 4.0) STOP 2
str = "(7.0,nan)"
read(str,*) z
- if (.not.isnan(aimag(z)) .or. real(z) /= 7.0) call abort()
+ if (.not.isnan(aimag(z)) .or. real(z) /= 7.0) STOP 3
str = "inFinity"
read(str,*) r
- if (r <= huge(r)) call abort()
+ if (r <= huge(r)) STOP 4
str = "(+inFinity,4.0)"
read(str,*) z
- if ((real(z) <= huge(r)) .or. aimag(z) /= 4.0) call abort()
+ if ((real(z) <= huge(r)) .or. aimag(z) /= 4.0) STOP 5
str = "(7.0,-inFinity)"
read(str,*) z
- if ((aimag(z) >= -huge(r)) .or. real(z) /= 7.0) call abort()
+ if ((aimag(z) >= -huge(r)) .or. real(z) /= 7.0) STOP 6
str = "inf"
read(str,*) r
- if (r <= huge(r)) call abort()
+ if (r <= huge(r)) STOP 7
str = "(+inf,4.0)"
read(str,*) z
- if ((real(z) <= huge(r)) .or. aimag(z) /= 4.0) call abort()
+ if ((real(z) <= huge(r)) .or. aimag(z) /= 4.0) STOP 8
str = "(7.0,-inf)"
read(str,*) z
- if ((aimag(z) >= -huge(r)) .or. real(z) /= 7.0) call abort()
+ if ((aimag(z) >= -huge(r)) .or. real(z) /= 7.0) STOP 9
end program main
diff --git a/gcc/testsuite/gfortran.dg/nan_6.f90 b/gcc/testsuite/gfortran.dg/nan_6.f90
index f4adcd2100d..7cd20c245b9 100644
--- a/gcc/testsuite/gfortran.dg/nan_6.f90
+++ b/gcc/testsuite/gfortran.dg/nan_6.f90
@@ -15,85 +15,85 @@ complex :: z
r = 1.0
str = 'INfinity' ; read(str,*) r
-if (r < 0 .or. r /= r*1.1) call abort()
+if (r < 0 .or. r /= r*1.1) STOP 1
r = 1.0
str = '-INF' ; read(str,*) r
-if (r > 0 .or. r /= r*1.1) call abort()
+if (r > 0 .or. r /= r*1.1) STOP 2
r = 1.0
str = '+INF' ; read(str,*) r
-if (r < 0 .or. r /= r*1.1) call abort()
+if (r < 0 .or. r /= r*1.1) STOP 3
r = 1.0
str = '-inFiniTY' ; read(str,*) r
-if (r > 0 .or. r /= r*1.1) call abort()
+if (r > 0 .or. r /= r*1.1) STOP 4
r = 1.0
str = 'NAN' ; read(str,*) r
-if (.not. isnan(r)) call abort()
+if (.not. isnan(r)) STOP 5
r = 1.0
str = '-NAN' ; read(str,*) r
-if (.not. isnan(r)) call abort()
+if (.not. isnan(r)) STOP 6
r = 1.0
str = '+NAN' ; read(str,*) r
-if (.not. isnan(r)) call abort()
+if (.not. isnan(r)) STOP 7
r = 1.0
str = 'NAN(0x111)' ; read(str,*) r
-if (.not. isnan(r)) call abort()
+if (.not. isnan(r)) STOP 8
r = 1.0
str = '-NAN(123)' ; read(str,*) r
-if (.not. isnan(r)) call abort()
+if (.not. isnan(r)) STOP 9
r = 1.0
str = '+NAN(0xFFE)' ; read(str,*) r
-if (.not. isnan(r)) call abort()
+if (.not. isnan(r)) STOP 10
! parse_real
z = cmplx(-2.0,-4.0)
str = '(0.0,INfinity)' ; read(str,*) z
-if (aimag(z) < 0 .or. aimag(z) /= aimag(z)*1.1) call abort()
+if (aimag(z) < 0 .or. aimag(z) /= aimag(z)*1.1) STOP 11
z = cmplx(-2.0,-4.0)
str = '(-INF,0.0)' ; read(str,*) z
-if (real(z) > 0 .or. real(z) /= real(z)*1.1) call abort()
+if (real(z) > 0 .or. real(z) /= real(z)*1.1) STOP 12
z = cmplx(-2.0,-4.0)
str = '(0.0,+INF)' ; read(str,*) z
-if (aimag(z) < 0 .or. aimag(z) /= aimag(z)*1.1) call abort()
+if (aimag(z) < 0 .or. aimag(z) /= aimag(z)*1.1) STOP 13
z = cmplx(-2.0,-4.0)
str = '(-inFiniTY,0.0)' ; read(str,*) z
-if (real(z) > 0 .or. real(z) /= real(z)*1.1) call abort()
+if (real(z) > 0 .or. real(z) /= real(z)*1.1) STOP 14
z = cmplx(-2.0,-4.0)
str = '(NAN,0.0)' ; read(str,*) z
-if (.not. isnan(real(z))) call abort()
+if (.not. isnan(real(z))) STOP 15
z = cmplx(-2.0,-4.0)
str = '(0.0,-NAN)' ; read(str,*) z
-if (.not. isnan(aimag(z))) call abort()
+if (.not. isnan(aimag(z))) STOP 16
z = cmplx(-2.0,-4.0)
str = '(+NAN,0.0)' ; read(str,*) z
-if (.not. isnan(real(z))) call abort()
+if (.not. isnan(real(z))) STOP 17
z = cmplx(-2.0,-4.0)
str = '(NAN(0x111),0.0)' ; read(str,*) z
-if (.not. isnan(real(z))) call abort()
+if (.not. isnan(real(z))) STOP 18
z = cmplx(-2.0,-4.0)
str = '(0.0,-NaN(123))' ; read(str,*) z
-if (.not. isnan(aimag(z))) call abort()
+if (.not. isnan(aimag(z))) STOP 19
z = cmplx(-2.0,-4.0)
str = '(+nan(0xFFE),0.0)' ; read(str,*) z
-if (.not. isnan(real(z))) call abort()
+if (.not. isnan(real(z))) STOP 20
end
diff --git a/gcc/testsuite/gfortran.dg/nan_7.f90 b/gcc/testsuite/gfortran.dg/nan_7.f90
index 4aecfd64627..622e49f5054 100644
--- a/gcc/testsuite/gfortran.dg/nan_7.f90
+++ b/gcc/testsuite/gfortran.dg/nan_7.f90
@@ -12,5 +12,5 @@ r = 1.0
str = 'NAN' ; read(str,*) r
k2 = transfer(r,k2)
k2 = iand(k2, z'fff80000000000000000000000000000')
-if (k2.ne.quietnan) call abort
+if (k2.ne.quietnan) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/nearest_1.f90 b/gcc/testsuite/gfortran.dg/nearest_1.f90
index 1518e867d8a..4be11955042 100644
--- a/gcc/testsuite/gfortran.dg/nearest_1.f90
+++ b/gcc/testsuite/gfortran.dg/nearest_1.f90
@@ -15,6 +15,6 @@ program chop
y = nearest(tiny(o),-1.0)/2.0
ix = transfer(x,ix)
iy = transfer(y,iy)
- if (ix /= iy) call abort
+ if (ix /= iy) STOP 1
end program chop
diff --git a/gcc/testsuite/gfortran.dg/nearest_2.f90 b/gcc/testsuite/gfortran.dg/nearest_2.f90
index c5977415bc3..e6c8f2290da 100644
--- a/gcc/testsuite/gfortran.dg/nearest_2.f90
+++ b/gcc/testsuite/gfortran.dg/nearest_2.f90
@@ -14,154 +14,154 @@ program test
! 0+ > 0
if (nearest(0.0, 1.0) &
<= 0.0) &
- call abort()
+ STOP 1
! 0++ > 0+
if (nearest(nearest(0.0, 1.0), 1.0) &
<= nearest(0.0, 1.0)) &
- call abort()
+ STOP 2
! 0+++ > 0++
if (nearest(nearest(nearest(0.0, 1.0), 1.0), 1.0) &
<= nearest(nearest(0.0, 1.0), 1.0)) &
- call abort()
+ STOP 3
! 0+- = 0
if (nearest(nearest(0.0, 1.0), -1.0) &
/= 0.0) &
- call abort()
+ STOP 4
! 0++- = 0+
if (nearest(nearest(nearest(0.0, 1.0), 1.0), -1.0) &
/= nearest(0.0, 1.0)) &
- call abort()
+ STOP 5
! 0++-- = 0
if (nearest(nearest(nearest(nearest(0.0, 1.0), 1.0), -1.0), -1.0) &
/= 0.0) &
- call abort()
+ STOP 6
! 0- < 0
if (nearest(0.0, -1.0) &
>= 0.0) &
- call abort()
+ STOP 7
! 0-- < 0+
if (nearest(nearest(0.0, -1.0), -1.0) &
>= nearest(0.0, -1.0)) &
- call abort()
+ STOP 8
! 0--- < 0--
if (nearest(nearest(nearest(0.0, -1.0), -1.0), -1.0) &
>= nearest(nearest(0.0, -1.0), -1.0)) &
- call abort()
+ STOP 9
! 0-+ = 0
if (nearest(nearest(0.0, -1.0), 1.0) &
/= 0.0) &
- call abort()
+ STOP 10
! 0--+ = 0-
if (nearest(nearest(nearest(0.0, -1.0), -1.0), 1.0) &
/= nearest(0.0, -1.0)) &
- call abort()
+ STOP 11
! 0--++ = 0
if (nearest(nearest(nearest(nearest(0.0, -1.0), -1.0), 1.0), 1.0) &
/= 0.0) &
- call abort()
+ STOP 12
! 42++ > 42+
if (nearest(nearest(42.0, 1.0), 1.0) &
<= nearest(42.0, 1.0)) &
- call abort()
+ STOP 13
! 42-- < 42-
if (nearest(nearest(42.0, -1.0), -1.0) &
>= nearest(42.0, -1.0)) &
- call abort()
+ STOP 14
! 42-+ = 42
if (nearest(nearest(42.0, -1.0), 1.0) &
/= 42.0) &
- call abort()
+ STOP 15
! 42+- = 42
if (nearest(nearest(42.0, 1.0), -1.0) &
/= 42.0) &
- call abort()
+ STOP 16
! INF+ = INF
- if (nearest(1.0/0.0, 1.0) /= 1.0/0.0) call abort()
+ if (nearest(1.0/0.0, 1.0) /= 1.0/0.0) STOP 17
! -INF- = -INF
- if (nearest(-1.0/0.0, -1.0) /= -1.0/0.0) call abort()
+ if (nearest(-1.0/0.0, -1.0) /= -1.0/0.0) STOP 18
! NAN- = NAN
- if (.not.isnan(nearest(0.0d0/0.0, 1.0))) call abort()
+ if (.not.isnan(nearest(0.0d0/0.0, 1.0))) STOP 19
! NAN+ = NAN
- if (.not.isnan(nearest(0.0d0/0.0, -1.0))) call abort()
+ if (.not.isnan(nearest(0.0d0/0.0, -1.0))) STOP 20
! Double precision
! 0+ > 0
if (nearest(0.0d0, 1.0) &
<= 0.0d0) &
- call abort()
+ STOP 21
! 0++ > 0+
if (nearest(nearest(0.0d0, 1.0), 1.0) &
<= nearest(0.0d0, 1.0)) &
- call abort()
+ STOP 22
! 0+++ > 0++
if (nearest(nearest(nearest(0.0d0, 1.0), 1.0), 1.0) &
<= nearest(nearest(0.0d0, 1.0), 1.0)) &
- call abort()
+ STOP 23
! 0+- = 0
if (nearest(nearest(0.0d0, 1.0), -1.0) &
/= 0.0d0) &
- call abort()
+ STOP 24
! 0++- = 0+
if (nearest(nearest(nearest(0.0d0, 1.0), 1.0), -1.0) &
/= nearest(0.0d0, 1.0)) &
- call abort()
+ STOP 25
! 0++-- = 0
if (nearest(nearest(nearest(nearest(0.0d0, 1.0), 1.0), -1.0), -1.0) &
/= 0.0d0) &
- call abort()
+ STOP 26
! 0- < 0
if (nearest(0.0d0, -1.0) &
>= 0.0d0) &
- call abort()
+ STOP 27
! 0-- < 0+
if (nearest(nearest(0.0d0, -1.0), -1.0) &
>= nearest(0.0d0, -1.0)) &
- call abort()
+ STOP 28
! 0--- < 0--
if (nearest(nearest(nearest(0.0d0, -1.0), -1.0), -1.0) &
>= nearest(nearest(0.0d0, -1.0), -1.0)) &
- call abort()
+ STOP 29
! 0-+ = 0
if (nearest(nearest(0.0d0, -1.0), 1.0) &
/= 0.0d0) &
- call abort()
+ STOP 30
! 0--+ = 0-
if (nearest(nearest(nearest(0.0d0, -1.0), -1.0), 1.0) &
/= nearest(0.0d0, -1.0)) &
- call abort()
+ STOP 31
! 0--++ = 0
if (nearest(nearest(nearest(nearest(0.0d0, -1.0), -1.0), 1.0), 1.0) &
/= 0.0d0) &
- call abort()
+ STOP 32
! 42++ > 42+
if (nearest(nearest(42.0d0, 1.0), 1.0) &
<= nearest(42.0d0, 1.0)) &
- call abort()
+ STOP 33
! 42-- < 42-
if (nearest(nearest(42.0d0, -1.0), -1.0) &
>= nearest(42.0d0, -1.0)) &
- call abort()
+ STOP 34
! 42-+ = 42
if (nearest(nearest(42.0d0, -1.0), 1.0) &
/= 42.0d0) &
- call abort()
+ STOP 35
! 42+- = 42
if (nearest(nearest(42.0d0, 1.0), -1.0) &
/= 42.0d0) &
- call abort()
+ STOP 36
! INF+ = INF
- if (nearest(1.0d0/0.0d0, 1.0) /= 1.0d0/0.0d0) call abort()
+ if (nearest(1.0d0/0.0d0, 1.0) /= 1.0d0/0.0d0) STOP 37
! -INF- = -INF
- if (nearest(-1.0d0/0.0d0, -1.0) /= -1.0d0/0.0d0) call abort()
+ if (nearest(-1.0d0/0.0d0, -1.0) /= -1.0d0/0.0d0) STOP 38
! NAN- = NAN
- if (.not.isnan(nearest(0.0d0/0.0, 1.0))) call abort()
+ if (.not.isnan(nearest(0.0d0/0.0, 1.0))) STOP 39
! NAN+ = NAN
- if (.not.isnan(nearest(0.0d0/0.0, -1.0))) call abort()
+ if (.not.isnan(nearest(0.0d0/0.0, -1.0))) STOP 40
end program test
diff --git a/gcc/testsuite/gfortran.dg/nearest_3.f90 b/gcc/testsuite/gfortran.dg/nearest_3.f90
index 4aa0f4cae82..d7d8b4f82bf 100644
--- a/gcc/testsuite/gfortran.dg/nearest_3.f90
+++ b/gcc/testsuite/gfortran.dg/nearest_3.f90
@@ -17,80 +17,80 @@ program test
! 0+ > 0
if (nearest(r4, 1.0) &
<= r4) &
- call abort()
+ STOP 1
! 0++ > 0+
if (nearest(nearest(r4, 1.0), 1.0) &
<= nearest(r4, 1.0)) &
- call abort()
+ STOP 2
! 0+++ > 0++
if (nearest(nearest(nearest(r4, 1.0), 1.0), 1.0) &
<= nearest(nearest(r4, 1.0), 1.0)) &
- call abort()
+ STOP 3
! 0+- = 0
if (nearest(nearest(r4, 1.0), -1.0) &
/= r4) &
- call abort()
+ STOP 4
! 0++- = 0+
if (nearest(nearest(nearest(r4, 1.0), 1.0), -1.0) &
/= nearest(r4, 1.0)) &
- call abort()
+ STOP 5
! 0++-- = 0
if (nearest(nearest(nearest(nearest(r4, 1.0), 1.0), -1.0), -1.0) &
/= r4) &
- call abort()
+ STOP 6
! 0- < 0
if (nearest(r4, -1.0) &
>= r4) &
- call abort()
+ STOP 7
! 0-- < 0+
if (nearest(nearest(r4, -1.0), -1.0) &
>= nearest(r4, -1.0)) &
- call abort()
+ STOP 8
! 0--- < 0--
if (nearest(nearest(nearest(r4, -1.0), -1.0), -1.0) &
>= nearest(nearest(r4, -1.0), -1.0)) &
- call abort()
+ STOP 9
! 0-+ = 0
if (nearest(nearest(r4, -1.0), 1.0) &
/= r4) &
- call abort()
+ STOP 10
! 0--+ = 0-
if (nearest(nearest(nearest(r4, -1.0), -1.0), 1.0) &
/= nearest(r4, -1.0)) &
- call abort()
+ STOP 11
! 0--++ = 0
if (nearest(nearest(nearest(nearest(r4, -1.0), -1.0), 1.0), 1.0) &
/= r4) &
- call abort()
+ STOP 12
r4 = 42.0_4
! 42++ > 42+
if (nearest(nearest(r4, 1.0), 1.0) &
<= nearest(r4, 1.0)) &
- call abort()
+ STOP 13
! 42-- < 42-
if (nearest(nearest(r4, -1.0), -1.0) &
>= nearest(r4, -1.0)) &
- call abort()
+ STOP 14
! 42-+ = 42
if (nearest(nearest(r4, -1.0), 1.0) &
/= r4) &
- call abort()
+ STOP 15
! 42+- = 42
if (nearest(nearest(r4, 1.0), -1.0) &
/= r4) &
- call abort()
+ STOP 16
r4 = 0.0
! INF+ = INF
- if (nearest(1.0/r4, 1.0) /= 1.0/r4) call abort()
+ if (nearest(1.0/r4, 1.0) /= 1.0/r4) STOP 17
! -INF- = -INF
- if (nearest(-1.0/r4, -1.0) /= -1.0/r4) call abort()
+ if (nearest(-1.0/r4, -1.0) /= -1.0/r4) STOP 18
! NAN- = NAN
- if (.not.isnan(nearest(0.0/r4, 1.0))) call abort()
+ if (.not.isnan(nearest(0.0/r4, 1.0))) STOP 19
! NAN+ = NAN
- if (.not.isnan(nearest(0.0/r4, -1.0))) call abort()
+ if (.not.isnan(nearest(0.0/r4, -1.0))) STOP 20
! Double precision with single-precision sign
@@ -98,80 +98,80 @@ program test
! 0+ > 0
if (nearest(r8, 1.0) &
<= r8) &
- call abort()
+ STOP 21
! 0++ > 0+
if (nearest(nearest(r8, 1.0), 1.0) &
<= nearest(r8, 1.0)) &
- call abort()
+ STOP 22
! 0+++ > 0++
if (nearest(nearest(nearest(r8, 1.0), 1.0), 1.0) &
<= nearest(nearest(r8, 1.0), 1.0)) &
- call abort()
+ STOP 23
! 0+- = 0
if (nearest(nearest(r8, 1.0), -1.0) &
/= r8) &
- call abort()
+ STOP 24
! 0++- = 0+
if (nearest(nearest(nearest(r8, 1.0), 1.0), -1.0) &
/= nearest(r8, 1.0)) &
- call abort()
+ STOP 25
! 0++-- = 0
if (nearest(nearest(nearest(nearest(r8, 1.0), 1.0), -1.0), -1.0) &
/= r8) &
- call abort()
+ STOP 26
! 0- < 0
if (nearest(r8, -1.0) &
>= r8) &
- call abort()
+ STOP 27
! 0-- < 0+
if (nearest(nearest(r8, -1.0), -1.0) &
>= nearest(r8, -1.0)) &
- call abort()
+ STOP 28
! 0--- < 0--
if (nearest(nearest(nearest(r8, -1.0), -1.0), -1.0) &
>= nearest(nearest(r8, -1.0), -1.0)) &
- call abort()
+ STOP 29
! 0-+ = 0
if (nearest(nearest(r8, -1.0), 1.0) &
/= r8) &
- call abort()
+ STOP 30
! 0--+ = 0-
if (nearest(nearest(nearest(r8, -1.0), -1.0), 1.0) &
/= nearest(r8, -1.0)) &
- call abort()
+ STOP 31
! 0--++ = 0
if (nearest(nearest(nearest(nearest(r8, -1.0), -1.0), 1.0), 1.0) &
/= r8) &
- call abort()
+ STOP 32
r8 = 42.0_8
! 42++ > 42+
if (nearest(nearest(r8, 1.0), 1.0) &
<= nearest(r8, 1.0)) &
- call abort()
+ STOP 33
! 42-- < 42-
if (nearest(nearest(r8, -1.0), -1.0) &
>= nearest(r8, -1.0)) &
- call abort()
+ STOP 34
! 42-+ = 42
if (nearest(nearest(r8, -1.0), 1.0) &
/= r8) &
- call abort()
+ STOP 35
! 42+- = 42
if (nearest(nearest(r8, 1.0), -1.0) &
/= r8) &
- call abort()
+ STOP 36
r4 = 0.0
! INF+ = INF
- if (nearest(1.0/r4, 1.0) /= 1.0/r4) call abort()
+ if (nearest(1.0/r4, 1.0) /= 1.0/r4) STOP 37
! -INF- = -INF
- if (nearest(-1.0/r4, -1.0) /= -1.0/r4) call abort()
+ if (nearest(-1.0/r4, -1.0) /= -1.0/r4) STOP 38
! NAN- = NAN
- if (.not.isnan(nearest(0.0/r4, 1.0))) call abort()
+ if (.not.isnan(nearest(0.0/r4, 1.0))) STOP 39
! NAN+ = NAN
- if (.not.isnan(nearest(0.0/r4, -1.0))) call abort()
+ if (.not.isnan(nearest(0.0/r4, -1.0))) STOP 40
! Single precision with double-precision sign
@@ -180,80 +180,80 @@ program test
! 0+ > 0
if (nearest(r4, 1.0d0) &
<= r4) &
- call abort()
+ STOP 41
! 0++ > 0+
if (nearest(nearest(r4, 1.0d0), 1.0d0) &
<= nearest(r4, 1.0d0)) &
- call abort()
+ STOP 42
! 0+++ > 0++
if (nearest(nearest(nearest(r4, 1.0d0), 1.0d0), 1.0d0) &
<= nearest(nearest(r4, 1.0d0), 1.0d0)) &
- call abort()
+ STOP 43
! 0+- = 0
if (nearest(nearest(r4, 1.0d0), -1.0d0) &
/= r4) &
- call abort()
+ STOP 44
! 0++- = 0+
if (nearest(nearest(nearest(r4, 1.0d0), 1.0d0), -1.0d0) &
/= nearest(r4, 1.0d0)) &
- call abort()
+ STOP 45
! 0++-- = 0
if (nearest(nearest(nearest(nearest(r4, 1.0d0), 1.0d0), -1.0d0), -1.0d0) &
/= r4) &
- call abort()
+ STOP 46
! 0- < 0
if (nearest(r4, -1.0d0) &
>= r4) &
- call abort()
+ STOP 47
! 0-- < 0+
if (nearest(nearest(r4, -1.0d0), -1.0d0) &
>= nearest(r4, -1.0d0)) &
- call abort()
+ STOP 48
! 0--- < 0--
if (nearest(nearest(nearest(r4, -1.0d0), -1.0d0), -1.0d0) &
>= nearest(nearest(r4, -1.0d0), -1.0d0)) &
- call abort()
+ STOP 49
! 0-+ = 0
if (nearest(nearest(r4, -1.0d0), 1.0d0) &
/= r4) &
- call abort()
+ STOP 50
! 0--+ = 0-
if (nearest(nearest(nearest(r4, -1.0d0), -1.0d0), 1.0d0) &
/= nearest(r4, -1.0d0)) &
- call abort()
+ STOP 51
! 0--++ = 0
if (nearest(nearest(nearest(nearest(r4, -1.0d0), -1.0d0), 1.0d0), 1.0d0) &
/= r4) &
- call abort()
+ STOP 52
r4 = 42.0_4
! 42++ > 42+
if (nearest(nearest(r4, 1.0d0), 1.0d0) &
<= nearest(r4, 1.0d0)) &
- call abort()
+ STOP 53
! 42-- < 42-
if (nearest(nearest(r4, -1.0d0), -1.0d0) &
>= nearest(r4, -1.0d0)) &
- call abort()
+ STOP 54
! 42-+ = 42
if (nearest(nearest(r4, -1.0d0), 1.0d0) &
/= r4) &
- call abort()
+ STOP 55
! 42+- = 42
if (nearest(nearest(r4, 1.0d0), -1.0d0) &
/= r4) &
- call abort()
+ STOP 56
r4 = 0.0
! INF+ = INF
- if (nearest(1.0d0/r4, 1.0d0) /= 1.0d0/r4) call abort()
+ if (nearest(1.0d0/r4, 1.0d0) /= 1.0d0/r4) STOP 57
! -INF- = -INF
- if (nearest(-1.0d0/r4, -1.0d0) /= -1.0d0/r4) call abort()
+ if (nearest(-1.0d0/r4, -1.0d0) /= -1.0d0/r4) STOP 58
! NAN- = NAN
- if (.not.isnan(nearest(0.0/r4, 1.0d0))) call abort()
+ if (.not.isnan(nearest(0.0/r4, 1.0d0))) STOP 59
! NAN+ = NAN
- if (.not.isnan(nearest(0.0/r4, -1.0d0))) call abort()
+ if (.not.isnan(nearest(0.0/r4, -1.0d0))) STOP 60
! Double precision with double-precision sign
@@ -261,79 +261,79 @@ program test
! 0+ > 0
if (nearest(r8, 1.0d0) &
<= r8) &
- call abort()
+ STOP 61
! 0++ > 0+
if (nearest(nearest(r8, 1.0d0), 1.0d0) &
<= nearest(r8, 1.0d0)) &
- call abort()
+ STOP 62
! 0+++ > 0++
if (nearest(nearest(nearest(r8, 1.0d0), 1.0d0), 1.0d0) &
<= nearest(nearest(r8, 1.0d0), 1.0d0)) &
- call abort()
+ STOP 63
! 0+- = 0
if (nearest(nearest(r8, 1.0d0), -1.0d0) &
/= r8) &
- call abort()
+ STOP 64
! 0++- = 0+
if (nearest(nearest(nearest(r8, 1.0d0), 1.0d0), -1.0d0) &
/= nearest(r8, 1.0d0)) &
- call abort()
+ STOP 65
! 0++-- = 0
if (nearest(nearest(nearest(nearest(r8, 1.0d0), 1.0d0), -1.0d0), -1.0d0) &
/= r8) &
- call abort()
+ STOP 66
! 0- < 0
if (nearest(r8, -1.0d0) &
>= r8) &
- call abort()
+ STOP 67
! 0-- < 0+
if (nearest(nearest(r8, -1.0d0), -1.0d0) &
>= nearest(r8, -1.0d0)) &
- call abort()
+ STOP 68
! 0--- < 0--
if (nearest(nearest(nearest(r8, -1.0d0), -1.0d0), -1.0d0) &
>= nearest(nearest(r8, -1.0d0), -1.0d0)) &
- call abort()
+ STOP 69
! 0-+ = 0
if (nearest(nearest(r8, -1.0d0), 1.0d0) &
/= r8) &
- call abort()
+ STOP 70
! 0--+ = 0-
if (nearest(nearest(nearest(r8, -1.0d0), -1.0d0), 1.0d0) &
/= nearest(r8, -1.0d0)) &
- call abort()
+ STOP 71
! 0--++ = 0
if (nearest(nearest(nearest(nearest(r8, -1.0d0), -1.0d0), 1.0d0), 1.0d0) &
/= r8) &
- call abort()
+ STOP 72
r8 = 42.0_8
! 42++ > 42+
if (nearest(nearest(r8, 1.0d0), 1.0d0) &
<= nearest(r8, 1.0d0)) &
- call abort()
+ STOP 73
! 42-- < 42-
if (nearest(nearest(r8, -1.0d0), -1.0d0) &
>= nearest(r8, -1.0d0)) &
- call abort()
+ STOP 74
! 42-+ = 42
if (nearest(nearest(r8, -1.0d0), 1.0d0) &
/= r8) &
- call abort()
+ STOP 75
! 42+- = 42
if (nearest(nearest(r8, 1.0d0), -1.0d0) &
/= r8) &
- call abort()
+ STOP 76
r4 = 0.0
! INF+ = INF
- if (nearest(1.0d0/r4, 1.0d0) /= 1.0d0/r4) call abort()
+ if (nearest(1.0d0/r4, 1.0d0) /= 1.0d0/r4) STOP 77
! -INF- = -INF
- if (nearest(-1.0d0/r4, -1.0d0) /= -1.0d0/r4) call abort()
+ if (nearest(-1.0d0/r4, -1.0d0) /= -1.0d0/r4) STOP 78
! NAN- = NAN
- if (.not.isnan(nearest(0.0/r4, 1.0d0))) call abort()
+ if (.not.isnan(nearest(0.0/r4, 1.0d0))) STOP 79
! NAN+ = NAN
- if (.not.isnan(nearest(0.0/r4, -1.0d0))) call abort()
+ if (.not.isnan(nearest(0.0/r4, -1.0d0))) STOP 80
end program test
diff --git a/gcc/testsuite/gfortran.dg/negative-z-descriptor.f90 b/gcc/testsuite/gfortran.dg/negative-z-descriptor.f90
index 1ad3a32b3a3..e5a14ef024c 100644
--- a/gcc/testsuite/gfortran.dg/negative-z-descriptor.f90
+++ b/gcc/testsuite/gfortran.dg/negative-z-descriptor.f90
@@ -5,23 +5,23 @@ program main
character(len=70) line
character(len=20) fmt
write(unit=line,fmt='(Z4)') -1_1
- if (line(1:4) .ne. ' FF') call abort
+ if (line(1:4) .ne. ' FF') STOP 1
write(unit=line,fmt='(Z5)') -1_2
- if (line(1:5) .ne. ' FFFF') call abort
+ if (line(1:5) .ne. ' FFFF') STOP 2
write(unit=line,fmt='(Z9)') -1_4
- if (line(1:9) .ne. ' FFFFFFFF') call abort
+ if (line(1:9) .ne. ' FFFFFFFF') STOP 3
write(unit=line,fmt='(Z17)') -2_8
- if (line(1:17) .ne. ' FFFFFFFFFFFFFFFE') call abort
+ if (line(1:17) .ne. ' FFFFFFFFFFFFFFFE') STOP 4
write(unit=line,fmt='(Z2)') 10_8
- if (line(1:2) .ne. ' A') call abort
+ if (line(1:2) .ne. ' A') STOP 5
write(unit=line,fmt='(Z8)') -43_8
- if (line(1:1) .ne. '*') call abort
+ if (line(1:1) .ne. '*') STOP 6
write(unit=line,fmt='(B65)') -1_8
- if (line(1:2) .ne. ' 1') call abort
- if (line(64:66) .ne. '11 ') call abort
+ if (line(1:2) .ne. ' 1') STOP 7
+ if (line(64:66) .ne. '11 ') STOP 8
write(unit=line,fmt='(O4)') -2_1
- if (line(1:4) .ne. ' 376') call abort
+ if (line(1:4) .ne. ' 376') STOP 9
end
diff --git a/gcc/testsuite/gfortran.dg/negative_automatic_size.f90 b/gcc/testsuite/gfortran.dg/negative_automatic_size.f90
index 322eafe9fe1..25cc67dab2c 100644
--- a/gcc/testsuite/gfortran.dg/negative_automatic_size.f90
+++ b/gcc/testsuite/gfortran.dg/negative_automatic_size.f90
@@ -16,14 +16,14 @@ end
subroutine jackal (b, c)
integer :: b, c
integer :: jello(b:c), cake(1:2, b:c), soda(b:c, 1:2)
- if (lbound (jello, 1) <= ubound (jello, 1)) call abort ()
- if (size (jello) /= 0) call abort ()
+ if (lbound (jello, 1) <= ubound (jello, 1)) STOP 1
+ if (size (jello) /= 0) STOP 2
- if (.not.any(lbound (cake) <= ubound (cake))) call abort ()
- if (size (cake) /= 0) call abort ()
+ if (.not.any(lbound (cake) <= ubound (cake))) STOP 3
+ if (size (cake) /= 0) STOP 4
if ((lbound (soda, 1) > ubound (soda, 1)) .and. &
- (lbound (soda, 2) > ubound (soda, 2))) call abort ()
- if (size (soda) /= 0) call abort ()
+ (lbound (soda, 2) > ubound (soda, 2))) STOP 5
+ if (size (soda) /= 0) STOP 6
end subroutine jackal
diff --git a/gcc/testsuite/gfortran.dg/negative_unit.f b/gcc/testsuite/gfortran.dg/negative_unit.f
index f1733a8888f..3234afdb752 100644
--- a/gcc/testsuite/gfortran.dg/negative_unit.f
+++ b/gcc/testsuite/gfortran.dg/negative_unit.f
@@ -12,13 +12,13 @@
i = -1
! gfortran created a 'fort.-1' file and wrote "Hello" in it
write (unit=i, fmt=*, iostat=j) "Hello"
- if (j <= 0) call abort
+ if (j <= 0) STOP 1
i = -11
open (unit=i, file="xxx", iostat=j)
- if (j <= 0) call abort
+ if (j <= 0) STOP 2
i = -42
inquire (unit=i, exist=l)
- if (l) call abort
+ if (l) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/negative_unit2.f90 b/gcc/testsuite/gfortran.dg/negative_unit2.f90
index e7fb85e5bff..85da3518c66 100644
--- a/gcc/testsuite/gfortran.dg/negative_unit2.f90
+++ b/gcc/testsuite/gfortran.dg/negative_unit2.f90
@@ -5,5 +5,5 @@ program negative_unit2
! i should be <= NEWUNIT_FIRST in libgfortran/io/unit.c
i = -100
write(unit=i,fmt=*, iostat=j) 10
- if (j == 0) call abort
+ if (j == 0) STOP 1
end program negative_unit2
diff --git a/gcc/testsuite/gfortran.dg/negative_unit_int8.f b/gcc/testsuite/gfortran.dg/negative_unit_int8.f
index 9b4042e2c9f..b1fc054d27c 100644
--- a/gcc/testsuite/gfortran.dg/negative_unit_int8.f
+++ b/gcc/testsuite/gfortran.dg/negative_unit_int8.f
@@ -16,20 +16,20 @@
i = -1
! gfortran created a 'fort.-1' file and wrote "Hello" in it
write (unit=i, fmt=*, iostat=i) "Hello"
- if (i <= 0) call abort
+ if (i <= 0) STOP 1
i = -11
open (unit=i, file="xxx", iostat=i)
- if (i <= 0) call abort
+ if (i <= 0) STOP 2
i = -42
inquire (unit=i, exist=l)
- if (l) call abort
+ if (l) STOP 3
i = 2_8*huge(0_4)+20_8
! This one is nasty
inquire (unit=i, exist=l, iostat=i)
- if (l) call abort
- if (i.ne.0) call abort
+ if (l) STOP 4
+ if (i.ne.0) STOP 5
end
diff --git a/gcc/testsuite/gfortran.dg/nested_array_constructor_2.f90 b/gcc/testsuite/gfortran.dg/nested_array_constructor_2.f90
index 28c2b49e816..ced76d16719 100644
--- a/gcc/testsuite/gfortran.dg/nested_array_constructor_2.f90
+++ b/gcc/testsuite/gfortran.dg/nested_array_constructor_2.f90
@@ -16,7 +16,7 @@ c = (/ (/ trim(c(1)), 'a' /)//'c', 'cd' /)
print *, c
if (c(1) /= 'ac' .or. c(2) /= 'ac' .or. c(3) /= 'cd') then
- call abort ()
+ STOP 1
end if
end
diff --git a/gcc/testsuite/gfortran.dg/nested_array_constructor_3.f90 b/gcc/testsuite/gfortran.dg/nested_array_constructor_3.f90
index dd10e5fafc9..9d74e78488d 100644
--- a/gcc/testsuite/gfortran.dg/nested_array_constructor_3.f90
+++ b/gcc/testsuite/gfortran.dg/nested_array_constructor_3.f90
@@ -17,6 +17,6 @@ SUBROUTINE sub(str)
WRITE (*,*) str
IF (str(1) /= 'ac' .OR. str(2) /= 'ac') THEN
- CALL abort ()
+ STOP 1
END IF
END SUBROUTINE sub
diff --git a/gcc/testsuite/gfortran.dg/nested_array_constructor_4.f90 b/gcc/testsuite/gfortran.dg/nested_array_constructor_4.f90
index cb113e9c9ae..8399d7ce2b6 100644
--- a/gcc/testsuite/gfortran.dg/nested_array_constructor_4.f90
+++ b/gcc/testsuite/gfortran.dg/nested_array_constructor_4.f90
@@ -12,6 +12,6 @@ PROGRAM test
length = LEN ( (/ TRIM(x), 'a' /) // 'c')
IF (length /= 2) THEN
- CALL abort ()
+ STOP 1
END IF
END PROGRAM
diff --git a/gcc/testsuite/gfortran.dg/nested_modules_1.f90 b/gcc/testsuite/gfortran.dg/nested_modules_1.f90
index 336467f6098..5a5ea244228 100644
--- a/gcc/testsuite/gfortran.dg/nested_modules_1.f90
+++ b/gcc/testsuite/gfortran.dg/nested_modules_1.f90
@@ -26,10 +26,10 @@
contains
subroutine tigger (w)
complex(kind=8) w
- if (FOO.ne.(1.0d0, 1.0d0)) call abort ()
- if (KANGA.ne.(-1.0d0, -1.0d0)) call abort ()
- if (ROBIN.ne.(99.0d0, 99.0d0)) CALL abort ()
- if (w.ne.cmplx(re,im)) call abort ()
+ if (FOO.ne.(1.0d0, 1.0d0)) STOP 1
+ if (KANGA.ne.(-1.0d0, -1.0d0)) STOP 2
+ if (ROBIN.ne.(99.0d0, 99.0d0)) STOP 3
+ if (w.ne.cmplx(re,im)) STOP 4
end subroutine tigger
end module mod2
diff --git a/gcc/testsuite/gfortran.dg/nested_modules_2.f90 b/gcc/testsuite/gfortran.dg/nested_modules_2.f90
index deb980e39a6..8fec02c3f48 100644
--- a/gcc/testsuite/gfortran.dg/nested_modules_2.f90
+++ b/gcc/testsuite/gfortran.dg/nested_modules_2.f90
@@ -33,5 +33,5 @@ program testfoobar
call sub1 (l)
i = 1
call sub2 (l)
- if (any (l.ne.(/84,42,0/))) call abort ()
+ if (any (l.ne.(/84,42,0/))) STOP 1
end program testfoobar
diff --git a/gcc/testsuite/gfortran.dg/nested_modules_3.f90 b/gcc/testsuite/gfortran.dg/nested_modules_3.f90
index 364460c6138..30ecba4ae5d 100644
--- a/gcc/testsuite/gfortran.dg/nested_modules_3.f90
+++ b/gcc/testsuite/gfortran.dg/nested_modules_3.f90
@@ -51,5 +51,5 @@ PROGRAM use_foobar
CALL sub2 (z, j)
z%i1 = 1
CALL sub3 (z, j)
- IF (ALL (j.ne.(/3,2,1/))) CALL abort ()
+ IF (ALL (j.ne.(/3,2,1/))) STOP 1
END PROGRAM use_foobar
diff --git a/gcc/testsuite/gfortran.dg/nesting_1.f90 b/gcc/testsuite/gfortran.dg/nesting_1.f90
index 51ebfd999a8..09e93d258a2 100644
--- a/gcc/testsuite/gfortran.dg/nesting_1.f90
+++ b/gcc/testsuite/gfortran.dg/nesting_1.f90
@@ -10,7 +10,7 @@ contains
end subroutine b
subroutine c(m)
- if (m/=1) call abort
+ if (m/=1) STOP 1
end subroutine c
end subroutine a
diff --git a/gcc/testsuite/gfortran.dg/new_line.f90 b/gcc/testsuite/gfortran.dg/new_line.f90
index aacabc69f6e..036f8addef9 100644
--- a/gcc/testsuite/gfortran.dg/new_line.f90
+++ b/gcc/testsuite/gfortran.dg/new_line.f90
@@ -9,12 +9,12 @@ program new_line_check
character(len=10), parameter :: a4(2) = "1234567890"
character(len=10), parameter :: a5(2) = repeat("1234567890",2)
- if(achar(10) /= new_line('a')) call abort
+ if(achar(10) /= new_line('a')) STOP 1
- if (iachar(new_line(a1)) /= 10) call abort
- if (iachar(new_line(a2)) /= 10) call abort
- if (iachar(new_line(a3)) /= 10) call abort
- if (iachar(new_line(a4)) /= 10) call abort
- if (iachar(new_line(a5)) /= 10) call abort
+ if (iachar(new_line(a1)) /= 10) STOP 2
+ if (iachar(new_line(a2)) /= 10) STOP 3
+ if (iachar(new_line(a3)) /= 10) STOP 4
+ if (iachar(new_line(a4)) /= 10) STOP 5
+ if (iachar(new_line(a5)) /= 10) STOP 6
end program new_line_check
diff --git a/gcc/testsuite/gfortran.dg/newunit_1.f90 b/gcc/testsuite/gfortran.dg/newunit_1.f90
index 3a0c0b98cbe..b8ae6f290f1 100644
--- a/gcc/testsuite/gfortran.dg/newunit_1.f90
+++ b/gcc/testsuite/gfortran.dg/newunit_1.f90
@@ -14,7 +14,7 @@ program newunit_1
rewind(myunit)
rewind(myunit2)
read(myunit2,'(a)') str
- if (str.ne." abcdefghijklmnop") call abort
+ if (str.ne." abcdefghijklmnop") STOP 1
close(myunit)
close(myunit2, status="delete")
end program newunit_1
diff --git a/gcc/testsuite/gfortran.dg/newunit_3.f90 b/gcc/testsuite/gfortran.dg/newunit_3.f90
index a0e5a8a75a7..2500130fe6b 100644
--- a/gcc/testsuite/gfortran.dg/newunit_3.f90
+++ b/gcc/testsuite/gfortran.dg/newunit_3.f90
@@ -3,5 +3,5 @@
program test_newunit
integer :: st, un = 0
open (newunit=un, file='nonexisting.dat', status='old', iostat=st)
- if (un /= 0) call abort
+ if (un /= 0) STOP 1
end program test_newunit
diff --git a/gcc/testsuite/gfortran.dg/newunit_5.f90.f90 b/gcc/testsuite/gfortran.dg/newunit_5.f90.f90
index 5a238c44036..de3eb000905 100644
--- a/gcc/testsuite/gfortran.dg/newunit_5.f90.f90
+++ b/gcc/testsuite/gfortran.dg/newunit_5.f90.f90
@@ -8,7 +8,7 @@ program main
message = "12"
read(message, *) this
- if (this.ne.12) call abort
+ if (this.ne.12) STOP 1
open(newunit=funit, status="scratch")
write(funit, *) "13"
@@ -16,5 +16,5 @@ program main
read(funit, *) another
!write(*,*) another
close(funit)
- if (another.ne.13) call abort
+ if (another.ne.13) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/nint_1.f90 b/gcc/testsuite/gfortran.dg/nint_1.f90
index e487bec8ff6..39fed69535b 100644
--- a/gcc/testsuite/gfortran.dg/nint_1.f90
+++ b/gcc/testsuite/gfortran.dg/nint_1.f90
@@ -1,15 +1,15 @@
! { dg-do run }
program nint_1
- if (int(anint(8388609.0)) /= 8388609) call abort
- if (int(anint(0.49999997)) /= 0) call abort
- if (nint(8388609.0) /= 8388609) call abort
- if (nint(0.49999997) /= 0) call abort
- if (int(dnint(4503599627370497.0d0),8) /= 4503599627370497_8) call abort
- if (int(dnint(0.49999999999999994d0)) /= 0) call abort
- if (int(anint(-8388609.0)) /= -8388609) call abort
- if (int(anint(-0.49999997)) /= 0) call abort
- if (nint(-8388609.0) /= -8388609) call abort
- if (nint(-0.49999997) /= 0) call abort
- if (int(dnint(-4503599627370497.0d0),8) /= -4503599627370497_8) call abort
- if (int(dnint(-0.49999999999999994d0)) /= 0) call abort
+ if (int(anint(8388609.0)) /= 8388609) STOP 1
+ if (int(anint(0.49999997)) /= 0) STOP 2
+ if (nint(8388609.0) /= 8388609) STOP 3
+ if (nint(0.49999997) /= 0) STOP 4
+ if (int(dnint(4503599627370497.0d0),8) /= 4503599627370497_8) STOP 5
+ if (int(dnint(0.49999999999999994d0)) /= 0) STOP 6
+ if (int(anint(-8388609.0)) /= -8388609) STOP 7
+ if (int(anint(-0.49999997)) /= 0) STOP 8
+ if (nint(-8388609.0) /= -8388609) STOP 9
+ if (nint(-0.49999997) /= 0) STOP 10
+ if (int(dnint(-4503599627370497.0d0),8) /= -4503599627370497_8) STOP 11
+ if (int(dnint(-0.49999999999999994d0)) /= 0) STOP 12
end program nint_1
diff --git a/gcc/testsuite/gfortran.dg/nint_2.f90 b/gcc/testsuite/gfortran.dg/nint_2.f90
index be195e7c8fd..c2389d5d17b 100644
--- a/gcc/testsuite/gfortran.dg/nint_2.f90
+++ b/gcc/testsuite/gfortran.dg/nint_2.f90
@@ -13,40 +13,40 @@
a = nearest(0.5_8,-1.0_8)
i2 = nint(nearest(0.5_8,-1.0_8))
i1 = nint(a)
- if (i1 /= 0 .or. i2 /= 0) call abort
+ if (i1 /= 0 .or. i2 /= 0) STOP 1
a = 0.5_8
i2 = nint(0.5_8)
i1 = nint(a)
- if (i1 /= 1 .or. i2 /= 1) call abort
+ if (i1 /= 1 .or. i2 /= 1) STOP 2
a = nearest(0.5_8,1.0_8)
i2 = nint(nearest(0.5_8,1.0_8))
i1 = nint(a)
- if (i1 /= 1 .or. i2 /= 1) call abort
+ if (i1 /= 1 .or. i2 /= 1) STOP 3
b = nearest(0.5,-1.0)
j2 = nint(nearest(0.5,-1.0))
j1 = nint(b)
- if (j1 /= 0 .or. j2 /= 0) call abort
+ if (j1 /= 0 .or. j2 /= 0) STOP 4
b = 0.5
j2 = nint(0.5)
j1 = nint(b)
- if (j1 /= 1 .or. j2 /= 1) call abort
+ if (j1 /= 1 .or. j2 /= 1) STOP 5
b = nearest(0.5,1.0)
j2 = nint(nearest(0.5,1.0))
j1 = nint(b)
- if (j1 /= 1 .or. j2 /= 1) call abort
+ if (j1 /= 1 .or. j2 /= 1) STOP 6
a = 4503599627370497.0_8
i1 = nint(a,kind=8)
i2 = nint(4503599627370497.0_8,kind=8)
- if (i1 /= i2 .or. i1 /= 4503599627370497_8) call abort
+ if (i1 /= i2 .or. i1 /= 4503599627370497_8) STOP 7
a = -4503599627370497.0_8
i1 = nint(a,kind=8)
i2 = nint(-4503599627370497.0_8,kind=8)
- if (i1 /= i2 .or. i1 /= -4503599627370497_8) call abort
+ if (i1 /= i2 .or. i1 /= -4503599627370497_8) STOP 8
end
diff --git a/gcc/testsuite/gfortran.dg/no_arg_check_2.f90 b/gcc/testsuite/gfortran.dg/no_arg_check_2.f90
index 90e4c8cd515..f99a2e8e923 100644
--- a/gcc/testsuite/gfortran.dg/no_arg_check_2.f90
+++ b/gcc/testsuite/gfortran.dg/no_arg_check_2.f90
@@ -24,7 +24,7 @@ contains
logical :: presnt
type(c_ptr) :: cpt
!GCC$ attributes NO_ARG_CHECK :: arg1
- if (presnt .neqv. present (arg1)) call abort ()
+ if (presnt .neqv. present (arg1)) STOP 1
cpt = c_loc (arg1)
end subroutine sub_scalar
diff --git a/gcc/testsuite/gfortran.dg/no_range_check_1.f90 b/gcc/testsuite/gfortran.dg/no_range_check_1.f90
index 36890866e3a..d0bd242bbca 100644
--- a/gcc/testsuite/gfortran.dg/no_range_check_1.f90
+++ b/gcc/testsuite/gfortran.dg/no_range_check_1.f90
@@ -8,9 +8,9 @@
b = -huge(b) / 7
a = a ** 73
b = 7894_8 * b - 78941_8
- if ((-3)**73 /= a) call abort
- if (7894_8 * (-huge(b) / 7) - 78941_8 /= b) call abort
+ if ((-3)**73 /= a) STOP 1
+ if (7894_8 * (-huge(b) / 7) - 78941_8 /= b) STOP 2
a = 1234789786453123
- if (a - 1234789786453123 /= a - (-426244989)) call abort
+ if (a - 1234789786453123 /= a - (-426244989)) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/no_range_check_2.f90 b/gcc/testsuite/gfortran.dg/no_range_check_2.f90
index 4b45c4c8e4f..5e75edbca8f 100644
--- a/gcc/testsuite/gfortran.dg/no_range_check_2.f90
+++ b/gcc/testsuite/gfortran.dg/no_range_check_2.f90
@@ -7,5 +7,5 @@ character(25) :: inputline = "-2147483648"
integer*4 smallest
read(inputline,100) smallest
100 format(1i11)
-if (smallest.ne.-2147483648) call abort
+if (smallest.ne.-2147483648) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/no_range_check_3.f90 b/gcc/testsuite/gfortran.dg/no_range_check_3.f90
index 24223af5b38..ffab312380a 100644
--- a/gcc/testsuite/gfortran.dg/no_range_check_3.f90
+++ b/gcc/testsuite/gfortran.dg/no_range_check_3.f90
@@ -3,10 +3,10 @@
program test
integer :: i
i = int(z'FFFFFFFF',kind(i))
- if (i /= -1) call abort
- if (int(z'FFFFFFFF',kind(i)) /= -1) call abort
+ if (i /= -1) STOP 1
+ if (int(z'FFFFFFFF',kind(i)) /= -1) STOP 2
- if (popcnt(int(z'0F00F00080000001',8)) /= 10) call abort
- if (popcnt(int(z'800F0001',4)) /= 6) call abort
+ if (popcnt(int(z'0F00F00080000001',8)) /= 10) STOP 3
+ if (popcnt(int(z'800F0001',4)) /= 6) STOP 4
end program test
diff --git a/gcc/testsuite/gfortran.dg/noadv_size.f90 b/gcc/testsuite/gfortran.dg/noadv_size.f90
index a3a88b18ca7..fe66b3a21dd 100644
--- a/gcc/testsuite/gfortran.dg/noadv_size.f90
+++ b/gcc/testsuite/gfortran.dg/noadv_size.f90
@@ -5,7 +5,7 @@ program main
write(77,'(A)') '123'
rewind(77)
read(77,'(2I2)',advance='no',iostat=k,size=n) i1,i2
- if (k >=0) call abort
- if (n /= 3) call abort
- if (i1 /= 12 .or. i2 /= 3) call abort
+ if (k >=0) STOP 1
+ if (n /= 3) STOP 2
+ if (i1 /= 12 .or. i2 /= 3) STOP 3
end program main
diff --git a/gcc/testsuite/gfortran.dg/nonreturning_statements.f90 b/gcc/testsuite/gfortran.dg/nonreturning_statements.f90
index 6268f72291c..5a264d9191c 100644
--- a/gcc/testsuite/gfortran.dg/nonreturning_statements.f90
+++ b/gcc/testsuite/gfortran.dg/nonreturning_statements.f90
@@ -10,7 +10,7 @@ program main
read(unit=c,fmt='(A)') i
select case(i)
case(1)
- call abort
+ STOP 1
call abort_should_be_noreturn
case(2)
stop 65
diff --git a/gcc/testsuite/gfortran.dg/norm2_1.f90 b/gcc/testsuite/gfortran.dg/norm2_1.f90
index 6d69e6bb454..db8cb52f4d5 100644
--- a/gcc/testsuite/gfortran.dg/norm2_1.f90
+++ b/gcc/testsuite/gfortran.dg/norm2_1.f90
@@ -18,41 +18,41 @@ real :: g(4,1) = RESHAPE ([real :: 0, 0, 4, -1], [4,1])
! Check compile-time version
if (abs (NORM2 ([real :: 1, 2, huge(3.0)]) - huge(3.0)) &
- > epsilon(0.0)*huge(3.0)) call abort()
+ > epsilon(0.0)*huge(3.0)) STOP 1
if (abs (SNORM2([real :: 1, 2, huge(3.0)],3) - huge(3.0)) &
- > epsilon(0.0)*huge(3.0)) call abort()
+ > epsilon(0.0)*huge(3.0)) STOP 2
if (abs (SNORM2([real :: 1, 2, 3],3) - NORM2([real :: 1, 2, 3])) &
- > epsilon(0.0)*SNORM2([real :: 1, 2, 3],3)) call abort()
+ > epsilon(0.0)*SNORM2([real :: 1, 2, 3],3)) STOP 3
-if (NORM2([real :: ]) /= 0.0) call abort()
-if (abs (NORM2([real :: 0, 0, 3, 0]) - 3.0) > epsilon(0.0)) call abort()
+if (NORM2([real :: ]) /= 0.0) STOP 4
+if (abs (NORM2([real :: 0, 0, 3, 0]) - 3.0) > epsilon(0.0)) STOP 5
! Check TREE version
if (abs (NORM2 (a) - huge(3.0)) &
- > epsilon(0.0)*huge(3.0)) call abort()
+ > epsilon(0.0)*huge(3.0)) STOP 6
if (abs (SNORM2(b,3) - NORM2(b)) &
- > epsilon(0.0)*SNORM2(b,3)) call abort()
+ > epsilon(0.0)*SNORM2(b,3)) STOP 7
if (abs (SNORM2(c,4) - NORM2(c)) &
- > epsilon(0.0)*SNORM2(c,4)) call abort()
+ > epsilon(0.0)*SNORM2(c,4)) STOP 8
if (ANY (abs (abs(d(:,1)) - NORM2(d, 2)) &
- > epsilon(0.0))) call abort()
+ > epsilon(0.0))) STOP 9
! Check libgfortran version
if (ANY (abs (SNORM2(d,4) - NORM2(d, 1)) &
- > epsilon(0.0)*SNORM2(d,4))) call abort()
+ > epsilon(0.0)*SNORM2(d,4))) STOP 10
if (abs (SNORM2(f,4) - NORM2(f, 1)) &
- > epsilon(0.0)*SNORM2(d,4)) call abort()
+ > epsilon(0.0)*SNORM2(d,4)) STOP 11
if (ANY (abs (abs(g(:,1)) - NORM2(g, 2)) &
- > epsilon(0.0))) call abort()
+ > epsilon(0.0))) STOP 12
contains
! NORM2 algorithm based on BLAS, cf.
diff --git a/gcc/testsuite/gfortran.dg/norm2_3.f90 b/gcc/testsuite/gfortran.dg/norm2_3.f90
index a1a3b3f45bd..5d73f2a98e6 100644
--- a/gcc/testsuite/gfortran.dg/norm2_3.f90
+++ b/gcc/testsuite/gfortran.dg/norm2_3.f90
@@ -22,41 +22,41 @@ real(qp) :: g(4,1) = RESHAPE ([real(qp) :: 0, 0, 4, -1], [4,1])
! Check compile-time version
if (abs (NORM2 ([real(qp) :: 1, 2, huge(3.0_qp)]) - huge(3.0_qp)) &
- > epsilon(0.0_qp)*huge(3.0_qp)) call abort()
+ > epsilon(0.0_qp)*huge(3.0_qp)) STOP 1
if (abs (SNORM2([real(qp) :: 1, 2, huge(3.0_qp)],3) - huge(3.0_qp)) &
- > epsilon(0.0_qp)*huge(3.0_qp)) call abort()
+ > epsilon(0.0_qp)*huge(3.0_qp)) STOP 2
if (abs (SNORM2([real(qp) :: 1, 2, 3],3) - NORM2([real(qp) :: 1, 2, 3])) &
- > epsilon(0.0_qp)*SNORM2([real(qp) :: 1, 2, 3],3)) call abort()
+ > epsilon(0.0_qp)*SNORM2([real(qp) :: 1, 2, 3],3)) STOP 3
-if (NORM2([real(qp) :: ]) /= 0.0_qp) call abort()
-if (abs (NORM2([real(qp) :: 0, 0, 3, 0]) - 3.0_qp) > epsilon(0.0_qp)) call abort()
+if (NORM2([real(qp) :: ]) /= 0.0_qp) STOP 4
+if (abs (NORM2([real(qp) :: 0, 0, 3, 0]) - 3.0_qp) > epsilon(0.0_qp)) STOP 5
! Check TREE version
if (abs (NORM2 (a) - huge(3.0_qp)) &
- > epsilon(0.0_qp)*huge(3.0_qp)) call abort()
+ > epsilon(0.0_qp)*huge(3.0_qp)) STOP 6
if (abs (SNORM2(b,3) - NORM2(b)) &
- > epsilon(0.0_qp)*SNORM2(b,3)) call abort()
+ > epsilon(0.0_qp)*SNORM2(b,3)) STOP 7
if (abs (SNORM2(c,4) - NORM2(c)) &
- > epsilon(0.0_qp)*SNORM2(c,4)) call abort()
+ > epsilon(0.0_qp)*SNORM2(c,4)) STOP 8
if (ANY (abs (abs(d(:,1)) - NORM2(d, 2)) &
- > epsilon(0.0_qp))) call abort()
+ > epsilon(0.0_qp))) STOP 9
! Check libgfortran version
if (ANY (abs (SNORM2(d,4) - NORM2(d, 1)) &
- > epsilon(0.0_qp)*SNORM2(d,4))) call abort()
+ > epsilon(0.0_qp)*SNORM2(d,4))) STOP 10
if (abs (SNORM2(f,4) - NORM2(f, 1)) &
- > epsilon(0.0_qp)*SNORM2(d,4)) call abort()
+ > epsilon(0.0_qp)*SNORM2(d,4)) STOP 11
if (ANY (abs (abs(g(:,1)) - NORM2(g, 2)) &
- > epsilon(0.0_qp))) call abort()
+ > epsilon(0.0_qp))) STOP 12
contains
! NORM2 algorithm based on BLAS, cf.
diff --git a/gcc/testsuite/gfortran.dg/nosigned_zero_1.f90 b/gcc/testsuite/gfortran.dg/nosigned_zero_1.f90
index 51ac87945ce..f17efa59a9a 100644
--- a/gcc/testsuite/gfortran.dg/nosigned_zero_1.f90
+++ b/gcc/testsuite/gfortran.dg/nosigned_zero_1.f90
@@ -13,12 +13,12 @@
program s
x = sign(1.,0.)
y = sign(1.,-0.)
- if (x /= 1.) call abort()
- if (y /= -1.) call abort()
+ if (x /= 1.) STOP 1
+ if (y /= -1.) STOP 2
x = 1.
y = 0.
x = sign(x, y)
y = sign(x, -y)
- if (x /= 1.) call abort()
- if (y /= -1.) call abort()
+ if (x /= 1.) STOP 3
+ if (y /= -1.) STOP 4
end program s
diff --git a/gcc/testsuite/gfortran.dg/nosigned_zero_2.f90 b/gcc/testsuite/gfortran.dg/nosigned_zero_2.f90
index af05574ed3e..31f4b1024be 100644
--- a/gcc/testsuite/gfortran.dg/nosigned_zero_2.f90
+++ b/gcc/testsuite/gfortran.dg/nosigned_zero_2.f90
@@ -14,12 +14,12 @@
program s
x = sign(1.,0.)
y = sign(1.,-0.)
- if (x /= 1.) call abort()
- if (y /= 1.) call abort()
+ if (x /= 1.) STOP 1
+ if (y /= 1.) STOP 2
x = 1.
y = 0.
x = sign(x, y)
y = sign(x, -y)
- if (x /= 1.) call abort()
- if (y /= 1.) call abort()
+ if (x /= 1.) STOP 3
+ if (y /= 1.) STOP 4
end program s
diff --git a/gcc/testsuite/gfortran.dg/nosigned_zero_3.f90 b/gcc/testsuite/gfortran.dg/nosigned_zero_3.f90
index 3f0f7101f26..d1c34201c0c 100644
--- a/gcc/testsuite/gfortran.dg/nosigned_zero_3.f90
+++ b/gcc/testsuite/gfortran.dg/nosigned_zero_3.f90
@@ -9,7 +9,7 @@ program nosigned_zero_3
real(4) :: x = -1.2e-3
real(8) :: y = -1.2e-3
write(s,'(7f10.3)') x
- if (trim(adjustl(s)) /= "-0.001") call abort
+ if (trim(adjustl(s)) /= "-0.001") STOP 1
write(s, '(7f10.3)') y
- if (trim(adjustl(s)) /= "-0.001") call abort
+ if (trim(adjustl(s)) /= "-0.001") STOP 2
end program nosigned_zero_3
diff --git a/gcc/testsuite/gfortran.dg/null_4.f90 b/gcc/testsuite/gfortran.dg/null_4.f90
index dbbb681b801..20cf6294c7c 100644
--- a/gcc/testsuite/gfortran.dg/null_4.f90
+++ b/gcc/testsuite/gfortran.dg/null_4.f90
@@ -9,6 +9,6 @@ PROGRAM PASSES_NULL
CONTAINS
SUBROUTINE SUB(I)
INTEGER, POINTER :: I(:,:,:)
- IF (ASSOCIATED (I)) CALL ABORT ()
+ IF (ASSOCIATED (I)) STOP 1
END SUBROUTINE SUB
END PROGRAM PASSES_NULL
diff --git a/gcc/testsuite/gfortran.dg/null_9.f90 b/gcc/testsuite/gfortran.dg/null_9.f90
index 9afd93801cc..7f28c53f465 100644
--- a/gcc/testsuite/gfortran.dg/null_9.f90
+++ b/gcc/testsuite/gfortran.dg/null_9.f90
@@ -19,7 +19,7 @@ CONTAINS
TYPE(tb) :: b
b = tb(null())
- if (allocated( b%b_comp )) call abort()
+ if (allocated( b%b_comp )) STOP 1
END SUBROUTINE proc
END MODULE fold_convert_loc_ice
diff --git a/gcc/testsuite/gfortran.dg/nullify_3.f90 b/gcc/testsuite/gfortran.dg/nullify_3.f90
index 7d202a25893..0d64f2b7926 100644
--- a/gcc/testsuite/gfortran.dg/nullify_3.f90
+++ b/gcc/testsuite/gfortran.dg/nullify_3.f90
@@ -20,7 +20,7 @@ program test
nullify(p(i)%ket)
end do
do i = 1, 2
- if (associated (p(i)%bra)) call abort ()
- if (associated (p(i)%ket)) call abort ()
+ if (associated (p(i)%bra)) STOP 1
+ if (associated (p(i)%ket)) STOP 2
end do
end program
diff --git a/gcc/testsuite/gfortran.dg/oldstyle_1.f90 b/gcc/testsuite/gfortran.dg/oldstyle_1.f90
index 6d5d1891342..5e37e536a0e 100644
--- a/gcc/testsuite/gfortran.dg/oldstyle_1.f90
+++ b/gcc/testsuite/gfortran.dg/oldstyle_1.f90
@@ -3,8 +3,8 @@
integer k, l(3) /2*2,1/ ! { dg-warning "" }
real pi /3.1416/, e ! { dg-warning "" }
- if (j /= 1) call abort ()
- if (g /= 2) call abort ()
- if (any(l /= (/2,2,1/))) call abort ()
- if (pi /= 3.1416) call abort ()
+ if (j /= 1) STOP 1
+ if (g /= 2) STOP 2
+ if (any(l /= (/2,2,1/))) STOP 3
+ if (pi /= 3.1416) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/open_access_append_1.f90 b/gcc/testsuite/gfortran.dg/open_access_append_1.f90
index 8dae327968d..cc8f5761061 100644
--- a/gcc/testsuite/gfortran.dg/open_access_append_1.f90
+++ b/gcc/testsuite/gfortran.dg/open_access_append_1.f90
@@ -12,9 +12,9 @@
open (10,file="foo")
read (10,*) i
- if (i /= 42) call abort
+ if (i /= 42) STOP 1
read (10,*) i
- if (i /= -42) call abort
+ if (i /= -42) STOP 2
close (10,status="delete")
end
diff --git a/gcc/testsuite/gfortran.dg/open_access_append_2.f90 b/gcc/testsuite/gfortran.dg/open_access_append_2.f90
index 3f9dd914d6a..9dbb1c4f307 100644
--- a/gcc/testsuite/gfortran.dg/open_access_append_2.f90
+++ b/gcc/testsuite/gfortran.dg/open_access_append_2.f90
@@ -1,6 +1,6 @@
! { dg-do run }
! Testcase for the GNU extension OPEN(...,ACCESS="APPEND")
open (10,err=900,access="append",position="asis") ! { dg-warning "Extension: ACCESS specifier in OPEN statement" }
- call abort
+ STOP 1
900 end
! { dg-output ".*Extension.*" }
diff --git a/gcc/testsuite/gfortran.dg/open_errors.f90 b/gcc/testsuite/gfortran.dg/open_errors.f90
index 23d4b3d807b..f964338c0ec 100644
--- a/gcc/testsuite/gfortran.dg/open_errors.f90
+++ b/gcc/testsuite/gfortran.dg/open_errors.f90
@@ -15,26 +15,26 @@ if (.not.there) then
endif
msg=""
open(77,file=n,status="new", iomsg=msg, iostat=i)
-if (i == 0) call abort()
-if (msg(1:33) /= "Cannot open file 'temptestfile': ") call abort()
+if (i == 0) STOP 1
+if (msg(1:33) /= "Cannot open file 'temptestfile': ") STOP 2
open(77,file=n,status="old")
close(77, status="delete")
open(77,file=n,status="old", iomsg=msg, iostat=i)
-if (i == 0) call abort()
-if (msg(1:33) /= "Cannot open file 'temptestfile': ") call abort()
+if (i == 0) STOP 3
+if (msg(1:33) /= "Cannot open file 'temptestfile': ") STOP 4
open(77,file="./", iomsg=msg, iostat=i)
if (msg(1:23) /= "Cannot open file './': " &
- .and. msg /= "Invalid argument") call abort()
+ .and. msg /= "Invalid argument") STOP 5
open(77,file=n,status="new")
i = chmod(n, "-w")
if (i == 0 .and. getuid() /= 0) then
close(77, status="keep")
open(77,file=n, iomsg=msg, iostat=i, action="write")
- if (i == 0) call abort()
- if (msg(1:33) /= "Cannot open file 'temptestfile': ") call abort()
+ if (i == 0) STOP 6
+ if (msg(1:33) /= "Cannot open file 'temptestfile': ") STOP 7
endif
i = chmod(n,"+w")
diff --git a/gcc/testsuite/gfortran.dg/open_negative_unit_1.f90 b/gcc/testsuite/gfortran.dg/open_negative_unit_1.f90
index 93ea1f12178..0bcd3b92617 100644
--- a/gcc/testsuite/gfortran.dg/open_negative_unit_1.f90
+++ b/gcc/testsuite/gfortran.dg/open_negative_unit_1.f90
@@ -10,21 +10,21 @@ program nutest
integer id, ios
open(newunit=id, file="foo_open_negative_unit_1.txt", iostat=ios)
- if (ios /= 0) call abort
+ if (ios /= 0) STOP 1
open(id, file="bar.txt", iostat=ios)
- if (ios /= 0) call abort
+ if (ios /= 0) STOP 2
close(id, status="delete")
open(unit=10, file="foo_open_negative_unit_1.txt", status="old", iostat=ios)
- if (ios /= 0) call abort
+ if (ios /= 0) STOP 3
close(10, status="delete")
open(-10, file="foo_open_negative_unit_1.txt", iostat=ios)
- if (ios == 0) call abort
+ if (ios == 0) STOP 4
inquire(file="foo_open_negative_unit_1.txt", exist=l)
- if (l) call abort
+ if (l) STOP 5
end program nutest
diff --git a/gcc/testsuite/gfortran.dg/open_new.f90 b/gcc/testsuite/gfortran.dg/open_new.f90
index 6f36ca04d31..510eda5587a 100644
--- a/gcc/testsuite/gfortran.dg/open_new.f90
+++ b/gcc/testsuite/gfortran.dg/open_new.f90
@@ -6,6 +6,6 @@ program main
open(nout, file="foo_open_new.dat", status="replace") ! make sure foo_open_new.dat exists
close(nout)
open(nout, file="foo_open_new.dat", status="new",err=100)
- call abort ! This should never happen
+ STOP 1! This should never happen
100 call unlink ("foo_open_new.dat")
end program main
diff --git a/gcc/testsuite/gfortran.dg/open_readonly_1.f90 b/gcc/testsuite/gfortran.dg/open_readonly_1.f90
index 87d3ba7a909..547aa5188ae 100644
--- a/gcc/testsuite/gfortran.dg/open_readonly_1.f90
+++ b/gcc/testsuite/gfortran.dg/open_readonly_1.f90
@@ -8,7 +8,7 @@ program prog
close (10)
open (unit=10, file='PR19451.dat', action="read")
write (10,*,err=20) "Hello World"
- call abort()
+ STOP 1
20 close (10, status='delete')
end program
diff --git a/gcc/testsuite/gfortran.dg/operator_1.f90 b/gcc/testsuite/gfortran.dg/operator_1.f90
index 6f27246d731..48441382cf6 100644
--- a/gcc/testsuite/gfortran.dg/operator_1.f90
+++ b/gcc/testsuite/gfortran.dg/operator_1.f90
@@ -55,14 +55,14 @@ end module m1
complex, dimension(2) :: bc, cc
ai = reshape((/-2,-4,7,8/),(/2,2/)) ; bi = 3
- if (any((ai*bi) /= matmul(ai,bi))) call abort()
- if (any((ai .or. ai) /= ai+ai)) call abort()
- if (any((ai // ai) /= ai+ai)) call abort()
+ if (any((ai*bi) /= matmul(ai,bi))) STOP 1
+ if (any((ai .or. ai) /= ai+ai)) STOP 2
+ if (any((ai // ai) /= ai+ai)) STOP 3
ar = reshape((/-2,-4,7,8/),(/2,2/)) ; br = 3
- if (any((ar*br) /= matmul(ar,br))) call abort()
+ if (any((ar*br) /= matmul(ar,br))) STOP 4
ac = reshape((/-2,-4,7,8/),(/2,2/)) ; bc = 3
- if (any((ac*bc) /= matmul(ac,bc))) call abort()
+ if (any((ac*bc) /= matmul(ac,bc))) STOP 5
end
diff --git a/gcc/testsuite/gfortran.dg/optional_absent_1.f90 b/gcc/testsuite/gfortran.dg/optional_absent_1.f90
index 690c30fa214..bc6e31ca950 100644
--- a/gcc/testsuite/gfortran.dg/optional_absent_1.f90
+++ b/gcc/testsuite/gfortran.dg/optional_absent_1.f90
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2008 -fall-intrinsics" }
+! { dg-options "-std=f2008 " }
!
! Passing a null pointer or deallocated variable to an
! optional, non-pointer, non-allocatable dummy.
@@ -30,19 +30,19 @@ program test
contains
subroutine scalar(a)
integer, optional :: a
- if (present(a)) call abort()
+ if (present(a)) STOP 1
end subroutine scalar
subroutine assumed_size(a)
integer, optional :: a(*)
- if (present(a)) call abort()
+ if (present(a)) STOP 2
end subroutine assumed_size
subroutine assumed_shape(a)
integer, optional :: a(:)
- if (present(a)) call abort()
+ if (present(a)) STOP 3
end subroutine assumed_shape
subroutine ptr_func(is_psnt, a)
integer, optional, pointer :: a
logical :: is_psnt
- if (is_psnt .neqv. present(a)) call abort()
+ if (is_psnt .neqv. present(a)) STOP 4
end subroutine ptr_func
end program test
diff --git a/gcc/testsuite/gfortran.dg/optional_absent_2.f90 b/gcc/testsuite/gfortran.dg/optional_absent_2.f90
index 717bab7e7bd..a04e9a6df6f 100644
--- a/gcc/testsuite/gfortran.dg/optional_absent_2.f90
+++ b/gcc/testsuite/gfortran.dg/optional_absent_2.f90
@@ -15,17 +15,17 @@ program p
a = 0
a = foo((/ 1, 1 /), null())
! print *, a
- if (any(a /= 2)) call abort
+ if (any(a /= 2)) STOP 1
a = 0
a = bar((/ 1, 1 /), null())
! print *, a
- if (any(a /= 2)) call abort
+ if (any(a /= 2)) STOP 2
b = 0
b = bar(1, null())
! print *, b
- if (b /= 2) call abort
+ if (b /= 2) STOP 3
contains
@@ -34,7 +34,7 @@ contains
integer, optional :: b(:)
integer :: foo(size(a))
- if (present(b)) call abort
+ if (present(b)) STOP 4
foo = 2
end function foo
diff --git a/gcc/testsuite/gfortran.dg/optional_absent_3.f90 b/gcc/testsuite/gfortran.dg/optional_absent_3.f90
index f03b4798b3d..af55d4ae511 100644
--- a/gcc/testsuite/gfortran.dg/optional_absent_3.f90
+++ b/gcc/testsuite/gfortran.dg/optional_absent_3.f90
@@ -45,9 +45,9 @@ contains
logical, value :: ll
integer, value :: val
integer, value, optional :: x
- if (ll .neqv. present(x)) call abort
+ if (ll .neqv. present(x)) STOP 1
if (present(x)) then
- if (x /= val) call abort ()
+ if (x /= val) STOP 1
endif
end subroutine int_test
@@ -55,9 +55,9 @@ contains
logical, value :: ll
real, value :: val
real, value, optional :: x
- if (ll .neqv. present(x)) call abort
+ if (ll .neqv. present(x)) STOP 2
if (present(x)) then
- if (x /= val) call abort ()
+ if (x /= val) STOP 2
endif
end subroutine real_test
@@ -65,9 +65,9 @@ contains
logical, value :: ll
complex, value :: val
complex, value, optional :: x
- if (ll .neqv. present(x)) call abort
+ if (ll .neqv. present(x)) STOP 3
if (present(x)) then
- if (x /= val) call abort ()
+ if (x /= val) STOP 3
endif
end subroutine cmplx_test
@@ -75,9 +75,9 @@ contains
logical, value :: ll
logical, value :: val
logical, value, optional :: x
- if (ll .neqv. present(x)) call abort
+ if (ll .neqv. present(x)) STOP 4
if (present(x)) then
- if (x .neqv. val) call abort ()
+ if (x .neqv. val) STOP 4
endif
end subroutine bool_test
end program main
diff --git a/gcc/testsuite/gfortran.dg/optional_class_1.f90 b/gcc/testsuite/gfortran.dg/optional_class_1.f90
index 589fc6023e7..d72f9443a82 100644
--- a/gcc/testsuite/gfortran.dg/optional_class_1.f90
+++ b/gcc/testsuite/gfortran.dg/optional_class_1.f90
@@ -35,11 +35,11 @@ end module m
allocate (xca(1), source = t(42))
select type (xca)
type is (t)
- if (any (xca%i .ne. [42])) call abort
+ if (any (xca%i .ne. [42])) STOP 1
end select
call opt (xca = xca)
select type (xca)
type is (t)
- if (any (xca%i .ne. [9,99,999])) call abort
+ if (any (xca%i .ne. [9,99,999])) STOP 2
end select
end
diff --git a/gcc/testsuite/gfortran.dg/optional_dim_2.f90 b/gcc/testsuite/gfortran.dg/optional_dim_2.f90
index 41cbbf542ac..f107d1fffaa 100644
--- a/gcc/testsuite/gfortran.dg/optional_dim_2.f90
+++ b/gcc/testsuite/gfortran.dg/optional_dim_2.f90
@@ -14,11 +14,11 @@ contains
lotto = .false.
lotto = cshift((/.true.,.false.,.true.,.false./),1,dim=dimmy)
write(testbuf,*) lotto
- if (trim(testbuf).ne." F T F T") call abort
+ if (trim(testbuf).ne." F T F T") STOP 1
lotto = .false.
lotto = eoshift((/.true.,.true.,.true.,.true./),1,boundary=bound,dim=dimmy)
lotto = eoshift(lotto,1,dim=dimmy)
write(testbuf,*) lotto
- if (trim(testbuf).ne." T T F F") call abort
+ if (trim(testbuf).ne." T T F F") STOP 2
end subroutine
end program test \ No newline at end of file
diff --git a/gcc/testsuite/gfortran.dg/optional_dim_3.f90 b/gcc/testsuite/gfortran.dg/optional_dim_3.f90
index fc66ba5b843..509d8e422f0 100644
--- a/gcc/testsuite/gfortran.dg/optional_dim_3.f90
+++ b/gcc/testsuite/gfortran.dg/optional_dim_3.f90
@@ -12,13 +12,13 @@ contains
real, dimension(:,:) :: a
s1 = (/1, 1/)
write(testbuf,'(4F10.2)') cshift(a, shift=s1)
- if (testbuf /= " 2.00 1.00 4.00 3.00") CALL abort
+ if (testbuf /= " 2.00 1.00 4.00 3.00") STOP 1
write(testbuf,'(4F10.2)') cshift(a,shift=s1,dim=n2)
- if (testbuf /= " 2.00 1.00 4.00 3.00") CALL abort
+ if (testbuf /= " 2.00 1.00 4.00 3.00") STOP 2
write(testbuf,'(4F10.2)') eoshift(a,shift=s1,dim=n1)
- if (testbuf /= " 2.00 0.00 4.00 0.00") CALL abort
+ if (testbuf /= " 2.00 0.00 4.00 0.00") STOP 3
write(testbuf,'(4F10.2)') eoshift(a,shift=s1,dim=n2)
- if (testbuf /= " 2.00 0.00 4.00 0.00") CALL abort
+ if (testbuf /= " 2.00 0.00 4.00 0.00") STOP 4
end subroutine tst_optional
subroutine sub(bound, dimmy)
integer(kind=8), optional :: dimmy
@@ -28,12 +28,12 @@ contains
lotto = .false.
lotto = cshift((/.true.,.false.,.true.,.false./),1,dim=dimmy)
write(testbuf,*) lotto
- if (trim(testbuf).ne." F T F T") call abort
+ if (trim(testbuf).ne." F T F T") STOP 5
lotto = .false.
lotto = eoshift((/.true.,.true.,.true.,.true./),1,boundary=bound,dim=dimmy)
lotto = eoshift(lotto,1,dim=dimmy)
write(testbuf,*) lotto
- if (trim(testbuf).ne." T T F F") call abort
+ if (trim(testbuf).ne." T T F F") STOP 6
end subroutine
end module tst_foo
diff --git a/gcc/testsuite/gfortran.dg/output_exponents_1.f90 b/gcc/testsuite/gfortran.dg/output_exponents_1.f90
index db47b0bfc62..73ebd65a30e 100644
--- a/gcc/testsuite/gfortran.dg/output_exponents_1.f90
+++ b/gcc/testsuite/gfortran.dg/output_exponents_1.f90
@@ -5,11 +5,11 @@
! we used to take the logarithm of zero in this special case
character*10 c
write (c,'(e10.4)') 1.0
- if(c /= "0.1000E+01") call abort
+ if(c /= "0.1000E+01") STOP 1
write (c,'(e10.4)') 0.0
- if(c /= "0.0000E+00") call abort
+ if(c /= "0.0000E+00") STOP 2
write (c,'(e10.4)') 1.0d100
- if(c /= "0.1000+101") call abort
+ if(c /= "0.1000+101") STOP 3
write (c,'(e10.4)') 1.0d-102
- if(c /= "0.1000-101") call abort
+ if(c /= "0.1000-101") STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/overload_1.f90 b/gcc/testsuite/gfortran.dg/overload_1.f90
index 97aa8433510..afd4f818597 100644
--- a/gcc/testsuite/gfortran.dg/overload_1.f90
+++ b/gcc/testsuite/gfortran.dg/overload_1.f90
@@ -160,7 +160,7 @@ contains
r1 = (/ a == b, a /= b, a < b, a <= b, a > b, a >= b /)
r2 = (/ a.eq.b, a.ne.b, a.lt.b, a.le.b, a.gt.b, a.ge.b /)
- if (any (r1.neqv.r2)) call abort
+ if (any (r1.neqv.r2)) STOP 1
if (any (r1.neqv. &
(/ .false.,.true.,.true., .true., .false.,.false. /) )) call&
& abort
@@ -175,7 +175,7 @@ contains
r1 = (/ a == b, a /= b, a < b, a <= b, a > b, a >= b /)
r2 = (/ a.eq.b, a.ne.b, a.lt.b, a.le.b, a.gt.b, a.ge.b /)
- if (any (r1.neqv.r2)) call abort
+ if (any (r1.neqv.r2)) STOP 2
if (any (r1.neqv. &
(/ .false.,.true.,.true., .true., .false.,.false. /) )) call&
& abort
diff --git a/gcc/testsuite/gfortran.dg/overload_2.f90 b/gcc/testsuite/gfortran.dg/overload_2.f90
index feefb460722..9e414f131bf 100644
--- a/gcc/testsuite/gfortran.dg/overload_2.f90
+++ b/gcc/testsuite/gfortran.dg/overload_2.f90
@@ -15,7 +15,7 @@ subroutine test()
character :: str
external len
call len(str)
- if(str /= "X") call abort()
+ if(str /= "X") STOP 1
end subroutine test
PROGRAM VAL
@@ -23,5 +23,5 @@ PROGRAM VAL
external test
intrinsic len
call test()
- if(len(" ") /= 1) call abort()
+ if(len(" ") /= 1) STOP 2
END
diff --git a/gcc/testsuite/gfortran.dg/overwrite_1.f b/gcc/testsuite/gfortran.dg/overwrite_1.f
index f6c5fdbd979..21628a665af 100644
--- a/gcc/testsuite/gfortran.dg/overwrite_1.f
+++ b/gcc/testsuite/gfortran.dg/overwrite_1.f
@@ -11,10 +11,10 @@
close(1)
open(1,form='FORMATTED')
read(1,*)i
- if(i(1).ne.9.and.i(2).ne.8.and.i(3).ne.7.and.i(4).ne.9)call abort
+ if(i(1).ne.9.and.i(2).ne.8.and.i(3).ne.7.and.i(4).ne.9)STOP 1
read(1,*,end=200)i
! should only be able to read one line from the file
- call abort
+ STOP 2
200 continue
close(1,STATUS='DELETE')
end
diff --git a/gcc/testsuite/gfortran.dg/pad_no.f90 b/gcc/testsuite/gfortran.dg/pad_no.f90
index c023adec815..82ac6dc85c1 100644
--- a/gcc/testsuite/gfortran.dg/pad_no.f90
+++ b/gcc/testsuite/gfortran.dg/pad_no.f90
@@ -7,9 +7,9 @@ program main
write(77,'(A)') 'a','b'
rewind(77)
read(77,'(2A)',iostat=i) line(1)
- if (line(1) /= 'a' .or. line(2) /= 'x') call abort
+ if (line(1) /= 'a' .or. line(2) /= 'x') STOP 1
rewind(77)
line = 'y'
read(77,'(2A)',iostat=i,advance='no') line
- if (line(1) /= 'a' .or. line(2) /= 'y') call abort
+ if (line(1) /= 'a' .or. line(2) /= 'y') STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/parameter_array_init_1.f90 b/gcc/testsuite/gfortran.dg/parameter_array_init_1.f90
index bb029a5b080..fe101135d91 100644
--- a/gcc/testsuite/gfortran.dg/parameter_array_init_1.f90
+++ b/gcc/testsuite/gfortran.dg/parameter_array_init_1.f90
@@ -6,6 +6,6 @@
!
INTEGER :: K(3) = 1
INTEGER, PARAMETER :: J(3) = 2
- IF (ANY (MAXLOC (K, J<3) .NE. 1)) CALL ABORT ()
- IF (ANY (J .NE. 2)) CALL ABORT ()
+ IF (ANY (MAXLOC (K, J<3) .NE. 1)) STOP 1
+ IF (ANY (J .NE. 2)) STOP 2
END
diff --git a/gcc/testsuite/gfortran.dg/parameter_array_init_2.f90 b/gcc/testsuite/gfortran.dg/parameter_array_init_2.f90
index bf238e5ee32..ab6409dd400 100644
--- a/gcc/testsuite/gfortran.dg/parameter_array_init_2.f90
+++ b/gcc/testsuite/gfortran.dg/parameter_array_init_2.f90
@@ -7,20 +7,20 @@
!
integer,parameter :: i(1,1) = 0, j(2) = 42
- if (any (maxloc(j+j,mask=(j==2)) .ne. 0)) call abort ()
- if (size(j+j) .ne. 2) call abort ()
- if (minval(j+j) .ne. 84) call abort ()
- if (minval(j,mask=(j==2)) .ne. huge (j)) call abort ()
- if (maxval(j+j) .ne. 84) call abort ()
- if (maxval(j,mask=(j==2)) .ne. -huge (j)-1) call abort ()
- if (sum(j,mask=j==2) .ne. 0) call abort ()
- if (sum(j+j) .ne. 168) call abort ()
- if (product(j+j) .ne. 7056) call abort ()
- if (any(ubound(j+j) .ne. 2)) call abort ()
- if (any(lbound(j+j) .ne. 1)) call abort ()
- if (dot_product(j+j,j) .ne. 7056) call abort ()
- if (dot_product(j,j+j) .ne. 7056) call abort ()
- if (count(i==1) .ne. 0) call abort ()
- if (any(i==1)) call abort ()
- if (all(i==1)) call abort ()
+ if (any (maxloc(j+j,mask=(j==2)) .ne. 0)) STOP 1
+ if (size(j+j) .ne. 2) STOP 2
+ if (minval(j+j) .ne. 84) STOP 3
+ if (minval(j,mask=(j==2)) .ne. huge (j)) STOP 4
+ if (maxval(j+j) .ne. 84) STOP 5
+ if (maxval(j,mask=(j==2)) .ne. -huge (j)-1) STOP 6
+ if (sum(j,mask=j==2) .ne. 0) STOP 7
+ if (sum(j+j) .ne. 168) STOP 8
+ if (product(j+j) .ne. 7056) STOP 9
+ if (any(ubound(j+j) .ne. 2)) STOP 10
+ if (any(lbound(j+j) .ne. 1)) STOP 11
+ if (dot_product(j+j,j) .ne. 7056) STOP 12
+ if (dot_product(j,j+j) .ne. 7056) STOP 13
+ if (count(i==1) .ne. 0) STOP 14
+ if (any(i==1)) STOP 15
+ if (all(i==1)) STOP 16
end
diff --git a/gcc/testsuite/gfortran.dg/parameter_array_init_4.f90 b/gcc/testsuite/gfortran.dg/parameter_array_init_4.f90
index f6c2f84b2a8..7bc3c85fb28 100644
--- a/gcc/testsuite/gfortran.dg/parameter_array_init_4.f90
+++ b/gcc/testsuite/gfortran.dg/parameter_array_init_4.f90
@@ -20,36 +20,36 @@ PARAMETER ( MY_STRING_S4 = 4_"AB C" )
character(kind=4,len=*), parameter :: str4(2) = [ 4_'Ac',4_'cc']
character(kind=4,len=*), parameter :: str_s4 = 4_'Acc'
-if(len(MY_STRING) /= 1) call abort()
+if(len(MY_STRING) /= 1) STOP 1
if( MY_STRING(1) /= "A" &
.or.MY_STRING(2) /= "B" &
- .or.MY_STRING(3) /= "C") call abort()
-if(len(MY_STRING_s) /= 4) call abort()
-if(MY_STRING_S /= "AB C") call abort()
-if(len(str) /= 2) call abort()
-if(str(1) /= "Ac" .or. str(2) /= "cc") call abort()
-if(len(str_s) /= 3) call abort()
-if(str_s /= 'Acc') call abort()
+ .or.MY_STRING(3) /= "C") STOP 2
+if(len(MY_STRING_s) /= 4) STOP 3
+if(MY_STRING_S /= "AB C") STOP 4
+if(len(str) /= 2) STOP 5
+if(str(1) /= "Ac" .or. str(2) /= "cc") STOP 6
+if(len(str_s) /= 3) STOP 7
+if(str_s /= 'Acc') STOP 8
-if(len(MY_STRING1) /= 1) call abort()
+if(len(MY_STRING1) /= 1) STOP 9
if( MY_STRING1(1) /= 1_"A" &
.or.MY_STRING1(2) /= 1_"B" &
- .or.MY_STRING1(3) /= 1_"C") call abort()
-if(len(MY_STRING_s1) /= 4) call abort()
-if(MY_STRING_S1 /= 1_"AB C") call abort()
-if(len(str1) /= 2) call abort()
-if(str1(1) /= 1_"Ac" .or. str1(2) /= 1_"cc") call abort()
-if(len(str_s1) /= 3) call abort()
-if(str_s1 /= 1_'Acc') call abort()
+ .or.MY_STRING1(3) /= 1_"C") STOP 10
+if(len(MY_STRING_s1) /= 4) STOP 11
+if(MY_STRING_S1 /= 1_"AB C") STOP 12
+if(len(str1) /= 2) STOP 13
+if(str1(1) /= 1_"Ac" .or. str1(2) /= 1_"cc") STOP 14
+if(len(str_s1) /= 3) STOP 15
+if(str_s1 /= 1_'Acc') STOP 16
-if(len(MY_STRING4) /= 1) call abort()
+if(len(MY_STRING4) /= 1) STOP 17
if( MY_STRING4(1) /= 4_"A" &
.or.MY_STRING4(2) /= 4_"B" &
- .or.MY_STRING4(3) /= 4_"C") call abort()
-if(len(MY_STRING_s4) /= 4) call abort()
-if(MY_STRING_S4 /= 4_"AB C") call abort()
-if(len(str4) /= 2) call abort()
-if(str4(1) /= 4_"Ac" .or. str4(2) /= 4_"cc") call abort()
-if(len(str_s4) /= 3) call abort()
-if(str_s4 /= 4_'Acc') call abort()
+ .or.MY_STRING4(3) /= 4_"C") STOP 18
+if(len(MY_STRING_s4) /= 4) STOP 19
+if(MY_STRING_S4 /= 4_"AB C") STOP 20
+if(len(str4) /= 2) STOP 21
+if(str4(1) /= 4_"Ac" .or. str4(2) /= 4_"cc") STOP 22
+if(len(str_s4) /= 3) STOP 23
+if(str_s4 /= 4_'Acc') STOP 24
end
diff --git a/gcc/testsuite/gfortran.dg/parameter_array_init_5.f90 b/gcc/testsuite/gfortran.dg/parameter_array_init_5.f90
index 0f4127af271..53bc1475834 100644
--- a/gcc/testsuite/gfortran.dg/parameter_array_init_5.f90
+++ b/gcc/testsuite/gfortran.dg/parameter_array_init_5.f90
@@ -13,9 +13,9 @@ contains
parameter(parm=(/'xo ','yo ','ag ','xr ','yr '/))
str = 'XXXXXXXXXXXXXXXXXXXX'
- if(str /='XXXXXXXXXXXXXXXXXXXX') call abort()
+ if(str /='XXXXXXXXXXXXXXXXXXXX') STOP 1
write(str,*) parm
- if(str /= ' xo yo ag xr yr') call abort()
+ if(str /= ' xo yo ag xr yr') STOP 2
end subroutine SR
end Module BUG3
!
diff --git a/gcc/testsuite/gfortran.dg/parameter_array_section_2.f90 b/gcc/testsuite/gfortran.dg/parameter_array_section_2.f90
index aa212c050fa..0ecbce3434d 100644
--- a/gcc/testsuite/gfortran.dg/parameter_array_section_2.f90
+++ b/gcc/testsuite/gfortran.dg/parameter_array_section_2.f90
@@ -9,6 +9,6 @@ program PotentialMatrix
implicit none
real(kind=8),dimension(2),parameter::v2=(/1,2/)
real(kind=8),dimension(4),parameter::v4=(/1,2,3,4/)
- if (any (v2*v4(1:3:2) .ne. (/1,6/))) call abort ()
- if (any (v2*v4(3:1:-2) .ne. (/3,2/))) call abort ()
+ if (any (v2*v4(1:3:2) .ne. (/1,6/))) STOP 1
+ if (any (v2*v4(3:1:-2) .ne. (/3,2/))) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/parens_3.f90 b/gcc/testsuite/gfortran.dg/parens_3.f90
index 47bb75e401d..0dd82c5be60 100644
--- a/gcc/testsuite/gfortran.dg/parens_3.f90
+++ b/gcc/testsuite/gfortran.dg/parens_3.f90
@@ -26,13 +26,13 @@
k => l
j = tryme((i),i)
- if (j .ne. 3) call abort ()
+ if (j .ne. 3) STOP 1
j = tryme((k),k)
- if (j .ne. 5) call abort ()
+ if (j .ne. 5) STOP 2
n = tryyou((m),m)
- if (any(n .ne. 7)) call abort ()
+ if (any(n .ne. 7)) STOP 3
END
INTEGER FUNCTION TRYME(RTNME,HITME)
diff --git a/gcc/testsuite/gfortran.dg/parens_5.f90 b/gcc/testsuite/gfortran.dg/parens_5.f90
index 91c58d006d8..789fef8e1f9 100644
--- a/gcc/testsuite/gfortran.dg/parens_5.f90
+++ b/gcc/testsuite/gfortran.dg/parens_5.f90
@@ -17,5 +17,5 @@ program test
implicit none
character*5 c
c = bobo(5)
- if (c .ne. "12345") call abort
+ if (c .ne. "12345") STOP 1
end program test
diff --git a/gcc/testsuite/gfortran.dg/parens_6.f90 b/gcc/testsuite/gfortran.dg/parens_6.f90
index 6d5ee3b520f..21db3f717aa 100644
--- a/gcc/testsuite/gfortran.dg/parens_6.f90
+++ b/gcc/testsuite/gfortran.dg/parens_6.f90
@@ -8,6 +8,6 @@
character*1 :: c, d
if (any( (/ kind(i .and. j), kind(.not. (i .and. j)), kind((a + b)), &
kind((42_1)), kind((j .and. i)), kind((.true._1)), &
- kind(c // d), kind((c) // d), kind((c//d)) /) /= 1 )) call abort()
- if (any( (/ len(c // d), len((c) // d), len ((c // d)) /) /= 2)) call abort()
+ kind(c // d), kind((c) // d), kind((c//d)) /) /= 1 )) STOP 1
+ if (any( (/ len(c // d), len((c) // d), len ((c // d)) /) /= 2)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/parent_result_ref_1.f90 b/gcc/testsuite/gfortran.dg/parent_result_ref_1.f90
index c1c7c3d76ec..422d32ee2f6 100644
--- a/gcc/testsuite/gfortran.dg/parent_result_ref_1.f90
+++ b/gcc/testsuite/gfortran.dg/parent_result_ref_1.f90
@@ -15,5 +15,5 @@ contains
end function f
integer, external :: f
- if (f ().ne.2) call abort ()
+ if (f ().ne.2) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/parent_result_ref_2.f90 b/gcc/testsuite/gfortran.dg/parent_result_ref_2.f90
index 38a5fdc7b2c..721758c0358 100644
--- a/gcc/testsuite/gfortran.dg/parent_result_ref_2.f90
+++ b/gcc/testsuite/gfortran.dg/parent_result_ref_2.f90
@@ -30,6 +30,6 @@ contains
end function g
character(4), external :: f, g
- if (f ().ne."wxyz") call abort ()
- if (g ().ne."WXYZ") call abort ()
+ if (f ().ne."wxyz") STOP 1
+ if (g ().ne."WXYZ") STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/parent_result_ref_3.f90 b/gcc/testsuite/gfortran.dg/parent_result_ref_3.f90
index f8e93ff80dc..5a36c43b20e 100644
--- a/gcc/testsuite/gfortran.dg/parent_result_ref_3.f90
+++ b/gcc/testsuite/gfortran.dg/parent_result_ref_3.f90
@@ -23,6 +23,6 @@ contains
end function f
integer, external :: f, g
- if (f ().ne.2) call abort ()
- if (g ().ne.33) call abort ()
+ if (f ().ne.2) STOP 1
+ if (g ().ne.33) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/parent_result_ref_4.f90 b/gcc/testsuite/gfortran.dg/parent_result_ref_4.f90
index d8c84e7cd6b..deb2a90dc67 100644
--- a/gcc/testsuite/gfortran.dg/parent_result_ref_4.f90
+++ b/gcc/testsuite/gfortran.dg/parent_result_ref_4.f90
@@ -18,5 +18,5 @@ contains
end module m
use m
- if (f ().ne.2) call abort ()
+ if (f ().ne.2) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/parity_1.f90 b/gcc/testsuite/gfortran.dg/parity_1.f90
index 05f9537fa96..75537243267 100644
--- a/gcc/testsuite/gfortran.dg/parity_1.f90
+++ b/gcc/testsuite/gfortran.dg/parity_1.f90
@@ -12,29 +12,29 @@ logical :: Lf(1) = [ .false.]
logical :: Ltf(2) = [ .true., .false. ]
logical :: Ltftf(4) = [.true., .false., .true.,.false.]
-if (parity([logical ::]) .neqv. .false.) call abort()
-if (parity([.true., .false.]) .neqv. .true.) call abort()
-if (parity([.true.]) .neqv. .true.) call abort()
-if (parity([.false.]) .neqv. .false.) call abort()
-if (parity([.true., .false., .true.,.false.]) .neqv. .false.) call abort()
+if (parity([logical ::]) .neqv. .false.) STOP 1
+if (parity([.true., .false.]) .neqv. .true.) STOP 2
+if (parity([.true.]) .neqv. .true.) STOP 3
+if (parity([.false.]) .neqv. .false.) STOP 4
+if (parity([.true., .false., .true.,.false.]) .neqv. .false.) STOP 5
if (parity(reshape([.true., .false., .true.,.false.],[2,2])) &
- .neqv. .false.) call abort()
+ .neqv. .false.) STOP 6
if (any (parity(reshape([.true., .false., .true.,.false.],[2,2]),dim=1) &
- .neqv. [.true., .true.])) call abort()
+ .neqv. [.true., .true.])) STOP 7
if (any (parity(reshape([.true., .false., .true.,.false.],[2,2]),dim=2) &
- .neqv. [.false., .false.])) call abort()
+ .neqv. [.false., .false.])) STOP 8
i = 0
-if (parity(Lt(1:i)) .neqv. .false.) call abort()
-if (parity(Ltf) .neqv. .true.) call abort()
-if (parity(Lt) .neqv. .true.) call abort()
-if (parity(Lf) .neqv. .false.) call abort()
-if (parity(Ltftf) .neqv. .false.) call abort()
+if (parity(Lt(1:i)) .neqv. .false.) STOP 9
+if (parity(Ltf) .neqv. .true.) STOP 10
+if (parity(Lt) .neqv. .true.) STOP 11
+if (parity(Lf) .neqv. .false.) STOP 12
+if (parity(Ltftf) .neqv. .false.) STOP 13
if (parity(reshape(Ltftf,[2,2])) &
- .neqv. .false.) call abort()
+ .neqv. .false.) STOP 14
if (any (parity(reshape(Ltftf,[2,2]),dim=1) &
- .neqv. [.true., .true.])) call abort()
+ .neqv. [.true., .true.])) STOP 15
if (any (parity(reshape(Ltftf,[2,2]),dim=2) &
- .neqv. [.false., .false.])) call abort()
+ .neqv. [.false., .false.])) STOP 16
end
diff --git a/gcc/testsuite/gfortran.dg/past_eor.f90 b/gcc/testsuite/gfortran.dg/past_eor.f90
index e89ed227266..d47f2c6b98c 100644
--- a/gcc/testsuite/gfortran.dg/past_eor.f90
+++ b/gcc/testsuite/gfortran.dg/past_eor.f90
@@ -16,7 +16,7 @@ program past_eor
READ (UNIT=buffer,FMT=10) a, b, c, d
10 FORMAT (2(2(G7.5,1X),2X),2(G10.4E2,1X),1X,2(G11.7E4,1X))
- if (any (a.ne.e).or.any (b.ne.e).or.any (c.ne.e).or.any (d.ne.e)) call abort ()
+ if (any (a.ne.e).or.any (b.ne.e).or.any (c.ne.e).or.any (d.ne.e)) STOP 1
end program past_eor
diff --git a/gcc/testsuite/gfortran.dg/pdt_1.f03 b/gcc/testsuite/gfortran.dg/pdt_1.f03
index 9dfdc1d6652..2b62693cf0d 100644
--- a/gcc/testsuite/gfortran.dg/pdt_1.f03
+++ b/gcc/testsuite/gfortran.dg/pdt_1.f03
@@ -51,12 +51,12 @@ contains
end subroutine
subroutine bar (arg)
type(mytype(b=4)) :: arg(:)
- if (int (sum (arg(1)%d)) .ne. 136) call abort
- if (trim (arg(2)%chr) .ne. "goodbye pdt") call abort
+ if (int (sum (arg(1)%d)) .ne. 136) STOP 1
+ if (trim (arg(2)%chr) .ne. "goodbye pdt") STOP 2
end subroutine
subroutine foobar (arg)
type(mytype(ftype, pdt_len)) :: arg
- if (int (sum (arg%d)) .ne. 1344) call abort
- if (trim (arg%chr) .ne. "scalar pdt") call abort
+ if (int (sum (arg%d)) .ne. 1344) STOP 3
+ if (trim (arg%chr) .ne. "scalar pdt") STOP 4
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/pdt_10.f03 b/gcc/testsuite/gfortran.dg/pdt_10.f03
index 35c3bdd2fc0..856a933863a 100644
--- a/gcc/testsuite/gfortran.dg/pdt_10.f03
+++ b/gcc/testsuite/gfortran.dg/pdt_10.f03
@@ -20,12 +20,12 @@ program p
type(pdt_t(k = kind (c), l=12)) :: foo_4
foo%s = "Hello World!"
- if (foo%s .ne. "Hello World!") call abort
- if (KIND (foo%s) .ne. 1) call abort
- if (len (foo%s) .ne. 12) call abort
+ if (foo%s .ne. "Hello World!") STOP 1
+ if (KIND (foo%s) .ne. 1) STOP 2
+ if (len (foo%s) .ne. 12) STOP 3
foo_4%s = hello
- if (foo_4%s .ne. hello) call abort
- if (KIND (foo_4%s) .ne. 4) call abort
- if (len (foo_4%s) .ne. 12) call abort
+ if (foo_4%s .ne. hello) STOP 4
+ if (KIND (foo_4%s) .ne. 4) STOP 5
+ if (len (foo_4%s) .ne. 12) STOP 6
end program
diff --git a/gcc/testsuite/gfortran.dg/pdt_11.f03 b/gcc/testsuite/gfortran.dg/pdt_11.f03
index 42113ae6b2b..41b506af41e 100644
--- a/gcc/testsuite/gfortran.dg/pdt_11.f03
+++ b/gcc/testsuite/gfortran.dg/pdt_11.f03
@@ -36,7 +36,7 @@ program test
write(*,*) 'o_matrix OK'
else
write(*,*) 'o_matrix FAIL'
- call abort
+ STOP 1
end if
allocate(fdef(n=12)::o_fdef)
@@ -45,7 +45,7 @@ program test
write(*,*) 'o_fdef OK'
else
write(*,*) 'o_fdef FAIL'
- call abort
+ STOP 2
end if
end program test
diff --git a/gcc/testsuite/gfortran.dg/pdt_12.f03 b/gcc/testsuite/gfortran.dg/pdt_12.f03
index 8051b27f97a..729b023eff8 100644
--- a/gcc/testsuite/gfortran.dg/pdt_12.f03
+++ b/gcc/testsuite/gfortran.dg/pdt_12.f03
@@ -34,7 +34,7 @@ program test
write(*,*) 'OK'
else
write(*,*) 'FAIL'
- call abort
+ STOP 1
end if
end associate
diff --git a/gcc/testsuite/gfortran.dg/pdt_13.f03 b/gcc/testsuite/gfortran.dg/pdt_13.f03
index e53d0b7440b..9a3868470f4 100644
--- a/gcc/testsuite/gfortran.dg/pdt_13.f03
+++ b/gcc/testsuite/gfortran.dg/pdt_13.f03
@@ -84,9 +84,9 @@ program ch2701
current => push_8 (root, 2.0_8)
current => push_8 (root, 3.0_8)
- if (int (pop_8 (root)) .ne. 3) call abort
- if (int (pop_8 (root)) .ne. 2) call abort
- if (int (pop_8 (root)) .ne. 1) call abort
- if (int (pop_8 (root)) .ne. 0) call abort
+ if (int (pop_8 (root)) .ne. 3) STOP 1
+ if (int (pop_8 (root)) .ne. 2) STOP 2
+ if (int (pop_8 (root)) .ne. 1) STOP 3
+ if (int (pop_8 (root)) .ne. 0) STOP 4
end program ch2701
diff --git a/gcc/testsuite/gfortran.dg/pdt_14.f03 b/gcc/testsuite/gfortran.dg/pdt_14.f03
index 749789848e4..f11f3c50995 100644
--- a/gcc/testsuite/gfortran.dg/pdt_14.f03
+++ b/gcc/testsuite/gfortran.dg/pdt_14.f03
@@ -82,9 +82,9 @@ program ch2701
current => push_8 (root, 2.0_8)
current => push_8 (root, 3.0_8)
- if (int (pop_8 (root)) .ne. 3) call abort
- if (int (pop_8 (root)) .ne. 2) call abort
- if (int (pop_8 (root)) .ne. 1) call abort
- if (int (pop_8 (root)) .ne. 0) call abort
+ if (int (pop_8 (root)) .ne. 3) STOP 1
+ if (int (pop_8 (root)) .ne. 2) STOP 2
+ if (int (pop_8 (root)) .ne. 1) STOP 3
+ if (int (pop_8 (root)) .ne. 0) STOP 4
end program ch2701
diff --git a/gcc/testsuite/gfortran.dg/pdt_15.f03 b/gcc/testsuite/gfortran.dg/pdt_15.f03
index f2f0b67ec7a..30c7f18b709 100644
--- a/gcc/testsuite/gfortran.dg/pdt_15.f03
+++ b/gcc/testsuite/gfortran.dg/pdt_15.f03
@@ -95,10 +95,10 @@ contains
current => push_8 (root, 2.0_8)
current => push_8 (root, 3.0_8)
- if (int (pop_8 (root)) .ne. 3) call abort
- if (int (pop_8 (root)) .ne. 2) call abort
- if (int (pop_8 (root)) .ne. 1) call abort
-! if (int (pop_8 (root)) .ne. 0) call abort
+ if (int (pop_8 (root)) .ne. 3) STOP 1
+ if (int (pop_8 (root)) .ne. 2) STOP 2
+ if (int (pop_8 (root)) .ne. 1) STOP 3
+! if (int (pop_8 (root)) .ne. 0) STOP 4
end subroutine
end program ch2701
! { dg-final { scan-tree-dump-times "Pdtlink_8._deallocate " 5 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/pdt_19.f03 b/gcc/testsuite/gfortran.dg/pdt_19.f03
index 3a12e0e3556..cdcd00c63c6 100644
--- a/gcc/testsuite/gfortran.dg/pdt_19.f03
+++ b/gcc/testsuite/gfortran.dg/pdt_19.f03
@@ -13,6 +13,6 @@ program p
type(t(8, :)), allocatable :: x
real(x%a) :: y ! Used to die here because initializers were mixed up.
allocate(t(8, 2) :: x)
- if (kind(y) .ne. x%a) call abort
+ if (kind(y) .ne. x%a) STOP 1
deallocate(x)
end
diff --git a/gcc/testsuite/gfortran.dg/pdt_20.f03 b/gcc/testsuite/gfortran.dg/pdt_20.f03
index a8028a227af..b712ed59dbb 100644
--- a/gcc/testsuite/gfortran.dg/pdt_20.f03
+++ b/gcc/testsuite/gfortran.dg/pdt_20.f03
@@ -14,7 +14,7 @@ program p
end type
type(t2(:)), allocatable :: x
allocate (t2(3) :: x) ! Used to segfault in trans-array.c.
- if (x%b .ne. 3) call abort
- if (x%b .ne. size (x%r, 1)) call abort
- if (any (x%r%a .ne. 1)) call abort
+ if (x%b .ne. 3) STOP 1
+ if (x%b .ne. size (x%r, 1)) STOP 2
+ if (any (x%r%a .ne. 1)) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/pdt_22.f03 b/gcc/testsuite/gfortran.dg/pdt_22.f03
index 3516ae2420a..929f398635d 100644
--- a/gcc/testsuite/gfortran.dg/pdt_22.f03
+++ b/gcc/testsuite/gfortran.dg/pdt_22.f03
@@ -19,5 +19,5 @@ program p
type(t2(3)) :: x
write (buffer,*) x
read (buffer,*) i
- if (any (i .ne. [3,1,1,1])) call abort
+ if (any (i .ne. [3,1,1,1])) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pdt_23.f03 b/gcc/testsuite/gfortran.dg/pdt_23.f03
index 045b68db3db..b2156b9ce6e 100644
--- a/gcc/testsuite/gfortran.dg/pdt_23.f03
+++ b/gcc/testsuite/gfortran.dg/pdt_23.f03
@@ -18,16 +18,16 @@ program p
x = t(2,'ab')
write (buffer, *) x%c ! Tests the fix for PR82720
read (buffer, *) chr
- if (trim (chr) .ne. 'ab') call abort
+ if (trim (chr) .ne. 'ab') STOP 1
x = t(3,'xyz')
- if (len (x%c) .ne. 3) call abort
+ if (len (x%c) .ne. 3) STOP 2
write (buffer, *) x ! Tests the fix for PR82719
read (buffer, *) i, chr
- if (i .ne. 3) call abort
- if (chr .ne. 'xyz') call abort
+ if (i .ne. 3) STOP 3
+ if (chr .ne. 'xyz') STOP 4
buffer = " 3 lmn"
read (buffer, *) x ! Some thought will be needed for PDT reads.
- if (x%c .ne. 'lmn') call abort
+ if (x%c .ne. 'lmn') STOP 5
end
diff --git a/gcc/testsuite/gfortran.dg/pdt_25.f03 b/gcc/testsuite/gfortran.dg/pdt_25.f03
index 69dfdeb26e3..f233996129e 100644
--- a/gcc/testsuite/gfortran.dg/pdt_25.f03
+++ b/gcc/testsuite/gfortran.dg/pdt_25.f03
@@ -26,8 +26,8 @@
! Kind tests appear because of problem identified in comment #!
! due to Dominque d'Humieres <dominiq@lps.ens.fr>
- if (kind (x2%chr) .ne. 1) call abort
- if (kind (x3%chr) .ne. 4) call abort
+ if (kind (x2%chr) .ne. 1) STOP 1
+ if (kind (x3%chr) .ne. 4) STOP 2
contains
@@ -35,9 +35,9 @@ contains
type(pdt_t(1, *)) :: x
integer :: i
- if (x%l .ne. i) call abort
- if (len(x%chr) .ne. i) call abort
- if (size(x%i,1) .ne. i) call abort
+ if (x%l .ne. i) STOP 3
+ if (len(x%chr) .ne. i) STOP 4
+ if (size(x%i,1) .ne. i) STOP 5
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/pdt_26.f03 b/gcc/testsuite/gfortran.dg/pdt_26.f03
index 01ed64094a1..bf1273743d3 100644
--- a/gcc/testsuite/gfortran.dg/pdt_26.f03
+++ b/gcc/testsuite/gfortran.dg/pdt_26.f03
@@ -34,13 +34,13 @@ program test_pdt
u%foo=[1,2,3]
v%foo=[2,3,4]
w=addvv(u,v)
- if (any (w%foo .ne. [3,5,7])) call abort
+ if (any (w%foo .ne. [3,5,7])) STOP 1
do i = 1 , a(1)%k
a%foo(i) = i + 4
b%foo(i) = i + 7
end do
c = addvv(a,b)
- if (any (c(1)%foo .ne. [13,15,17])) call abort
+ if (any (c(1)%foo .ne. [13,15,17])) STOP 2
end program test_pdt
! { dg-final { scan-tree-dump-times "__builtin_free" 8 "original" } }
! { dg-final { scan-tree-dump-times "__builtin_malloc" 9 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/pdt_27.f03 b/gcc/testsuite/gfortran.dg/pdt_27.f03
index 89eb63d53e3..525b9999f3d 100644
--- a/gcc/testsuite/gfortran.dg/pdt_27.f03
+++ b/gcc/testsuite/gfortran.dg/pdt_27.f03
@@ -15,8 +15,8 @@ program test_pdt
use pdt_m
implicit none
type(vec) :: u,v
- if (any (u%foo .ne. [1,2,3])) call abort
+ if (any (u%foo .ne. [1,2,3])) STOP 1
u%foo = [7,8,9]
v = u
- if (any (v%foo .ne. [7,8,9])) call abort
+ if (any (v%foo .ne. [7,8,9])) STOP 2
end program test_pdt
diff --git a/gcc/testsuite/gfortran.dg/pdt_28.f03 b/gcc/testsuite/gfortran.dg/pdt_28.f03
index da4c9d68dbd..c0dc1a0d1be 100644
--- a/gcc/testsuite/gfortran.dg/pdt_28.f03
+++ b/gcc/testsuite/gfortran.dg/pdt_28.f03
@@ -27,5 +27,5 @@ program test_pdt
type(vec(k=123)) :: u
u%foo=1
- if (total(u) .ne. u%k) call abort
+ if (total(u) .ne. u%k) STOP 1
end program test_pdt
diff --git a/gcc/testsuite/gfortran.dg/pdt_3.f03 b/gcc/testsuite/gfortran.dg/pdt_3.f03
index 02ad757533d..e364eeae6df 100644
--- a/gcc/testsuite/gfortran.dg/pdt_3.f03
+++ b/gcc/testsuite/gfortran.dg/pdt_3.f03
@@ -40,18 +40,18 @@ end module
w%d = reshape ([(real(i), i = 1, d_dim*d_dim)],[d_dim,d_dim])
! Make sure that the type extension is ordering the parameters correctly.
- if (w%a .ne. ftype) call abort
- if (w%b .ne. 4) call abort
- if (w%h .ne. 4) call abort
- if (size (w%d) .ne. 16) call abort
- if (int (w%d(2,4)) .ne. 14) call abort
- if (kind (w%j) .ne. w%h) call abort
+ if (w%a .ne. ftype) STOP 1
+ if (w%b .ne. 4) STOP 2
+ if (w%h .ne. 4) STOP 3
+ if (size (w%d) .ne. 16) STOP 4
+ if (int (w%d(2,4)) .ne. 14) STOP 5
+ if (kind (w%j) .ne. w%h) STOP 6
! As a side issue, ensure PDT components are OK
- if (q%mat1%b .ne. q%s) call abort
- if (q%mat2%b .ne. q%s*2) call abort
- if (size (q%mat1%d) .ne. mat_dim**2) call abort
- if (size (q%mat2%d) .ne. 4*mat_dim**2) call abort
+ if (q%mat1%b .ne. q%s) STOP 7
+ if (q%mat2%b .ne. q%s*2) STOP 8
+ if (size (q%mat1%d) .ne. mat_dim**2) STOP 9
+ if (size (q%mat2%d) .ne. 4*mat_dim**2) STOP 10
! Now check some basic OOP with PDTs
matrix = w%d
@@ -60,9 +60,9 @@ end module
allocate (cz, source = mytype(ftype, d_dim, 0, matrix))
select type (cz)
type is (mytype(ftype, *))
- if (int (sum (cz%d)) .ne. 136) call abort
+ if (int (sum (cz%d)) .ne. 136) STOP 11
type is (thytype(ftype, *, 8))
- call abort
+ STOP 12
end select
deallocate (cz)
@@ -70,9 +70,9 @@ end module
cz%d = reshape ([(i*10, i = 1, cz%b**2)], [cz%b,cz%b])
select type (cz)
type is (mytype(ftype, *))
- call abort
+ STOP 13
type is (thytype(ftype, *, 8))
- if (int (sum (cz%d)) .ne. 20800) call abort
+ if (int (sum (cz%d)) .ne. 20800) STOP 14
end select
deallocate (cz)
diff --git a/gcc/testsuite/gfortran.dg/pdt_4.f03 b/gcc/testsuite/gfortran.dg/pdt_4.f03
index 5e953286588..0bb58f91c67 100644
--- a/gcc/testsuite/gfortran.dg/pdt_4.f03
+++ b/gcc/testsuite/gfortran.dg/pdt_4.f03
@@ -77,9 +77,9 @@ end module
allocate (cz, source = mytype(ftype, :, 0, matrix)) ! { dg-error "Syntax error" }
select type (cz)
type is (mytype(ftype, d_dim)) ! { dg-error "must be ASSUMED" }
- if (int (sum (cz%d)) .ne. 136) call abort ! { dg-error "Expected TYPE IS" }
+ if (int (sum (cz%d)) .ne. 136) STOP 1! { dg-error "Expected TYPE IS" }
type is (thytype(ftype, *, 8))
- call abort
+ STOP 2
end select
deallocate (cz)
@@ -87,9 +87,9 @@ end module
cz%d = reshape ([(i*10, i = 1, cz%b**2)], [cz%b,cz%b])
select type (cz)
type is (mytype(4, *)) ! { dg-error "must be an extension" }
- call abort
+ STOP 3
type is (thytype(ftype, *, 8))
- if (int (sum (cz%d)) .ne. 20800) call abort
+ if (int (sum (cz%d)) .ne. 20800) STOP 4
end select
deallocate (cz)
contains
diff --git a/gcc/testsuite/gfortran.dg/pdt_5.f03 b/gcc/testsuite/gfortran.dg/pdt_5.f03
index f888c3bb1ec..2472603db41 100644
--- a/gcc/testsuite/gfortran.dg/pdt_5.f03
+++ b/gcc/testsuite/gfortran.dg/pdt_5.f03
@@ -201,21 +201,21 @@ program adj3
! Check constructor of PDT and instrinsic assignment
adj = adj_matrix(INT(8,8),2,4)
- if (adj%k .ne. 8) call abort
- if (adj%c .ne. 2) call abort
- if (adj%r .ne. 4) call abort
+ if (adj%k .ne. 8) STOP 1
+ if (adj%c .ne. 2) STOP 2
+ if (adj%r .ne. 4) STOP 3
a = reshape ([(i, i = 1, 6)], [2,3])
adj = a
b = adj
- if (any (b .ne. a)) call abort
+ if (any (b .ne. a)) STOP 4
! Check allocation with MOLD of PDT. Note that only KIND parameters set.
allocate (adj_4, mold = adj_matrix(4,3,2)) ! Added check of KIND = 4
- if (adj_4%k .ne. 4) call abort
+ if (adj_4%k .ne. 4) STOP 5
a_4 = reshape (a, [3,2])
adj_4 = a_4
b_4 = adj_4
- if (any (b_4 .ne. a_4)) call abort
+ if (any (b_4 .ne. a_4)) STOP 6
end program adj3
diff --git a/gcc/testsuite/gfortran.dg/pdt_7.f03 b/gcc/testsuite/gfortran.dg/pdt_7.f03
index b987771aaa8..555bbd475c5 100644
--- a/gcc/testsuite/gfortran.dg/pdt_7.f03
+++ b/gcc/testsuite/gfortran.dg/pdt_7.f03
@@ -15,6 +15,6 @@ end type
type(param_matrix(8,3,2)) :: mat
real(kind=mat%k) :: m ! Corrected error: Parameter ‘mat’ at (1) has not been declared or ...
-if (kind(m) .ne. 8) call abort
+if (kind(m) .ne. 8) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pointer_1.f90 b/gcc/testsuite/gfortran.dg/pointer_1.f90
index 01ad8b951ca..ea474a82cfa 100644
--- a/gcc/testsuite/gfortran.dg/pointer_1.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_1.f90
@@ -9,6 +9,6 @@
enddo
z => x
do i = 0,12
- if (x(i) /= i .or. z(i) /= i) call abort
+ if (x(i) /= i .or. z(i) /= i) STOP 1
enddo
end
diff --git a/gcc/testsuite/gfortran.dg/pointer_array_1.f90 b/gcc/testsuite/gfortran.dg/pointer_array_1.f90
index b43101fb31b..1d080da52cc 100644
--- a/gcc/testsuite/gfortran.dg/pointer_array_1.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_array_1.f90
@@ -22,7 +22,7 @@ CONTAINS
if (any (values .ne. [1,2])) print *, values(2)
else
values => d(:)%tag
- if (any (values .ne. [101,102])) call abort
+ if (any (values .ne. [101,102])) STOP 1
end if
END SUBROUTINE
@@ -33,10 +33,10 @@ CONTAINS
allocate (d, source = [my_type(1,101), my_type(2,102)])
if (switch .eq. 1) then
values => d(:)%value
- if (any (values .ne. [1,2])) call abort
+ if (any (values .ne. [1,2])) STOP 2
else
values => d(:)%tag
- if (any (values([2,1]) .ne. [102,101])) call abort
+ if (any (values([2,1]) .ne. [102,101])) STOP 3
end if
END function
END MODULE
@@ -49,12 +49,12 @@ END MODULE
type(your_type) :: y
call get_values (x, 1)
- if (any (x .ne. [1,2])) call abort
+ if (any (x .ne. [1,2])) STOP 4
call get_values (y%x, 2)
- if (any (y%x .ne. [101,102])) call abort
+ if (any (y%x .ne. [101,102])) STOP 5
x => return_values (2)
- if (any (x .ne. [101,102])) call abort
+ if (any (x .ne. [101,102])) STOP 6
y%x => return_values (1)
- if (any (y%x .ne. [1,2])) call abort
+ if (any (y%x .ne. [1,2])) STOP 7
end
diff --git a/gcc/testsuite/gfortran.dg/pointer_array_3.f90 b/gcc/testsuite/gfortran.dg/pointer_array_3.f90
index d760167b76f..b390ee7f87e 100644
--- a/gcc/testsuite/gfortran.dg/pointer_array_3.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_array_3.f90
@@ -44,7 +44,7 @@
program test_prog
use test_mod
call as_set_alias(1)
- if (any (p .ne. ["abcdefgh","ijklmnop"])) call abort
+ if (any (p .ne. ["abcdefgh","ijklmnop"])) STOP 1
deallocate (as_typ(1)%as%fp)
deallocate (as_typ(1)%as)
deallocate (as_typ)
diff --git a/gcc/testsuite/gfortran.dg/pointer_array_4.f90 b/gcc/testsuite/gfortran.dg/pointer_array_4.f90
index 31a90a55707..e042977d859 100644
--- a/gcc/testsuite/gfortran.dg/pointer_array_4.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_array_4.f90
@@ -34,7 +34,7 @@ program prog_rtti_ptr
if (size(v) == 2 .and. all (v == [2.0, 3.0])) then
deallocate(o)
else
- call abort
+ STOP 1
end if
allocate(o(3), source=[foo(1.0, 1), foo(4.0, 4), foo(5.0, 5)])
@@ -42,13 +42,13 @@ program prog_rtti_ptr
if (size(v) == 2 .and. all (v == [4.0, 5.0])) then
deallocate(o)
else
- call abort
+ STOP 2
end if
! The rest tests the case in comment 2 <janus@gcc.gnu.org>
call extract1 (v, 1)
- if (any (v /= [1.0, 2.0])) call abort
+ if (any (v /= [1.0, 2.0])) STOP 3
call extract1 (v, 2) ! Call to deallocate pointer.
contains
diff --git a/gcc/testsuite/gfortran.dg/pointer_array_5.f90 b/gcc/testsuite/gfortran.dg/pointer_array_5.f90
index 312d097854b..2a17c0688c0 100644
--- a/gcc/testsuite/gfortran.dg/pointer_array_5.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_array_5.f90
@@ -26,7 +26,7 @@
scalar_vector( 1.2, (/ -1.4, 0.4, 0.8 /) ) /) )
call extract_vec(one_d_field, 1, 2)
- if (any (abs (vector_comp - [0.0,0.2,0.4]) .gt. 1e-4)) call abort
+ if (any (abs (vector_comp - [0.0,0.2,0.4]) .gt. 1e-4)) STOP 1
deallocate(one_d_field) ! v1 becomes undefined
allocate(one_d_field(1), &
@@ -35,9 +35,9 @@
(/3, 3/) ) ) /) )
call extract_vec(one_d_field, 2, 1)
- if (abs (vector_comp(1) + 1.0) > 1e-4) call abort
+ if (abs (vector_comp(1) + 1.0) > 1e-4) STOP 2
call extract_vec(one_d_field, 2, 3)
- if (abs (vector_comp(1) - 1.0) > 1e-4) call abort
+ if (abs (vector_comp(1) - 1.0) > 1e-4) STOP 3
deallocate(one_d_field) ! v1 becomes undefined
contains
subroutine extract_vec(field, tag, ic)
diff --git a/gcc/testsuite/gfortran.dg/pointer_array_6.f90 b/gcc/testsuite/gfortran.dg/pointer_array_6.f90
index 86685563209..16edb5f9c0f 100644
--- a/gcc/testsuite/gfortran.dg/pointer_array_6.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_array_6.f90
@@ -20,9 +20,9 @@
pArray => pCellArray%Ele
v_pointer => pArray(1,1)%v;
v_pointer = v_real !OK %%%%%%%%%%%%
- if (any (int (pArray(1,1)%v) .ne. 99)) call abort
+ if (any (int (pArray(1,1)%v) .ne. 99)) STOP 1
v_real = 88
pArray(1,1)%v = v_real !SEGFAULT %%%%%%%%%%%%%%%%%%%%%%%%
- if (any (int (v_pointer) .ne. 88)) call abort
+ if (any (int (v_pointer) .ne. 88)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/pointer_array_7.f90 b/gcc/testsuite/gfortran.dg/pointer_array_7.f90
index 1aa48b7a078..5d0e9f7ae4a 100644
--- a/gcc/testsuite/gfortran.dg/pointer_array_7.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_array_7.f90
@@ -38,9 +38,9 @@ program main
call printit(pc, s3)
s1 = transfer(c_loc(a(2)%c),s1)
- if (s1 /= s3) call abort
+ if (s1 /= s3) STOP 1
s2 = transfer(c_loc(pc(2)),s2)
- if (s2 /= s3) call abort
+ if (s2 /= s3) STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/pointer_array_8.f90 b/gcc/testsuite/gfortran.dg/pointer_array_8.f90
index bbf2c997dd6..3bb2a1bbecc 100644
--- a/gcc/testsuite/gfortran.dg/pointer_array_8.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_array_8.f90
@@ -22,37 +22,37 @@
tgt = [(thytype(int(i), i, mytype(int(2*i), 2*i)), i= 1,3)]
cptr => tgt%i
- if (lbound (cptr, 1) .ne. 1) Call abort ! Not a whole array target!
+ if (lbound (cptr, 1) .ne. 1) STOP 1! Not a whole array target!
s1 = loc(cptr)
call foo (cptr, s2) ! Check bounds not changed...
- if (s1 .ne. s2) Call abort ! ...and that the descriptor is passed.
+ if (s1 .ne. s2) STOP 2! ...and that the descriptor is passed.
select type (cptr)
type is (integer)
- if (any (cptr .ne. [1,2,3])) call abort ! Check the the scalarizer works.
- if (cptr(2) .ne. 2) call abort ! Check ordinary array indexing.
+ if (any (cptr .ne. [1,2,3])) STOP 3! Check the the scalarizer works.
+ if (cptr(2) .ne. 2) STOP 4! Check ordinary array indexing.
end select
cptr(1:3) => tgt%der%r ! Something a tad more complicated!
select type (cptr)
type is (real)
- if (any (int(cptr) .ne. [2,4,6])) call abort
- if (any (int(cptr([2,3,1])) .ne. [4,6,2])) call abort
- if (int(cptr(3)) .ne. 6) call abort
+ if (any (int(cptr) .ne. [2,4,6])) STOP 5
+ if (any (int(cptr([2,3,1])) .ne. [4,6,2])) STOP 6
+ if (int(cptr(3)) .ne. 6) STOP 7
end select
cptr1(1:3) => tgt%der
s1 = loc(cptr1)
call bar(cptr1, s2)
- if (s1 .ne. s2) Call abort ! Check that the descriptor is passed.
+ if (s1 .ne. s2) STOP 8! Check that the descriptor is passed.
select type (cptr1)
type is (mytype)
- if (any (cptr1%i .ne. [2,4,6])) call abort
- if (cptr1(2)%i .ne. 4) call abort
+ if (any (cptr1%i .ne. [2,4,6])) STOP 9
+ if (cptr1(2)%i .ne. 4) STOP 10
end select
contains
@@ -63,8 +63,8 @@ contains
addr = loc(arg)
select type (arg)
type is (integer)
- if (any (arg .ne. [1,2,3])) call abort ! Check the the scalarizer works.
- if (arg(2) .ne. 2) call abort ! Check ordinary array indexing.
+ if (any (arg .ne. [1,2,3])) STOP 11! Check the the scalarizer works.
+ if (arg(2) .ne. 2) STOP 12! Check ordinary array indexing.
end select
end subroutine
@@ -74,8 +74,8 @@ contains
addr = loc(arg)
select type (arg)
type is (mytype)
- if (any (arg%i .ne. [2,4,6])) call abort
- if (arg(2)%i .ne. 4) call abort
+ if (any (arg%i .ne. [2,4,6])) STOP 13
+ if (arg(2)%i .ne. 4) STOP 14
end select
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/pointer_array_9.f90 b/gcc/testsuite/gfortran.dg/pointer_array_9.f90
index a54a2b54f21..4c0336ef361 100644
--- a/gcc/testsuite/gfortran.dg/pointer_array_9.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_array_9.f90
@@ -17,7 +17,7 @@ contains
a = reshape ([cmplx(1, 1), cmplx(2, 2), cmplx(1, 2), cmplx(2, 1)], [2,2])
else
b = transpose(a)
- if (merge("PASSED", "FAILED", all (transpose (a) .eq. b)) .eq. "FAILED") call abort
+ if (merge("PASSED", "FAILED", all (transpose (a) .eq. b)) .eq. "FAILED") STOP 1
end if
end subroutine s
end program r187
diff --git a/gcc/testsuite/gfortran.dg/pointer_array_component_1.f90 b/gcc/testsuite/gfortran.dg/pointer_array_component_1.f90
index b96071b178a..cac1512954e 100644
--- a/gcc/testsuite/gfortran.dg/pointer_array_component_1.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_array_component_1.f90
@@ -21,10 +21,10 @@
x = [real_vars (11.0, 1.0), real_vars (42.0, 2.0)]
vtab_r%rvar => x%r
- if (any (abs (vtab_r%rvar - [11.0, 42.0]) > 1.0e-5)) call abort ! Check skipping 'index; is OK.
+ if (any (abs (vtab_r%rvar - [11.0, 42.0]) > 1.0e-5)) STOP 1! Check skipping 'index; is OK.
y = vtab_r%rvar
- if (any (abs (y - [11.0, 42.0]) > 1.0e-5)) call abort ! Check that the component is usable in assignment.
+ if (any (abs (y - [11.0, 42.0]) > 1.0e-5)) STOP 2! Check that the component is usable in assignment.
call foobar (vtab_r, [11.0, 42.0])
@@ -36,8 +36,8 @@ contains
subroutine foobar (vtab, array)
type(var_tables) :: vtab
real :: array (:)
- if (any (abs (vtab%rvar - array) > 1.0e-5)) call abort ! Check passing as a dummy.
- if (abs (vtab%rvar(2) - array(2)) > 1.0e-5) call abort ! Check component reference.
+ if (any (abs (vtab%rvar - array) > 1.0e-5)) STOP 3! Check passing as a dummy.
+ if (abs (vtab%rvar(2) - array(2)) > 1.0e-5) STOP 4! Check component reference.
end subroutine
function barfoo () result(res)
diff --git a/gcc/testsuite/gfortran.dg/pointer_array_component_2.f90 b/gcc/testsuite/gfortran.dg/pointer_array_component_2.f90
index bde66f67e5a..2eefd0ccbb9 100644
--- a/gcc/testsuite/gfortran.dg/pointer_array_component_2.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_array_component_2.f90
@@ -38,6 +38,6 @@
end do
! These lines would segfault.
- if (int (sum (z%s(1)%x)) .ne. 3) call abort
- if (int (sum (z%s(1)%x * z%s(2)%x)) .ne. 10) call abort
+ if (int (sum (z%s(1)%x)) .ne. 3) STOP 1
+ if (int (sum (z%s(1)%x * z%s(2)%x)) .ne. 10) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/pointer_assign_10.f90 b/gcc/testsuite/gfortran.dg/pointer_assign_10.f90
index 756e530209c..3f12afb4bb3 100644
--- a/gcc/testsuite/gfortran.dg/pointer_assign_10.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_assign_10.f90
@@ -28,9 +28,9 @@ program test
implicit none
type(t), pointer :: p1, p2(:), p3(:,:)
p1 => f1()
- if (p1%ii /= 123) call abort ()
+ if (p1%ii /= 123) STOP 1
p2 => f2()
- if (any (p2%ii /= [-11,-22,-33])) call abort ()
+ if (any (p2%ii /= [-11,-22,-33])) STOP 2
p3(2:2,1:3) => f2()
- if (any (p3(2,:)%ii /= [-11,-22,-33])) call abort ()
+ if (any (p3(2,:)%ii /= [-11,-22,-33])) STOP 3
end program test
diff --git a/gcc/testsuite/gfortran.dg/pointer_assign_11.f90 b/gcc/testsuite/gfortran.dg/pointer_assign_11.f90
index f32c5315711..78cb4b7bb69 100644
--- a/gcc/testsuite/gfortran.dg/pointer_assign_11.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_assign_11.f90
@@ -33,19 +33,19 @@ program test
type(t2) :: my_t2
allocate (t2 :: p1, p2(1), p3(1,1))
- if (.not. same_type_as (p1, my_t2)) call abort()
- if (.not. same_type_as (p2, my_t2)) call abort()
- if (.not. same_type_as (p3, my_t2)) call abort()
+ if (.not. same_type_as (p1, my_t2)) STOP 1
+ if (.not. same_type_as (p2, my_t2)) STOP 2
+ if (.not. same_type_as (p3, my_t2)) STOP 3
p1 => f1()
- if (p1%ii /= 123) call abort ()
- if (.not. same_type_as (p1, my_t)) call abort()
+ if (p1%ii /= 123) STOP 4
+ if (.not. same_type_as (p1, my_t)) STOP 5
p2 => f2()
- if (any (p2%ii /= [-11,-22,-33])) call abort ()
- if (.not. same_type_as (p2, my_t)) call abort()
+ if (any (p2%ii /= [-11,-22,-33])) STOP 6
+ if (.not. same_type_as (p2, my_t)) STOP 7
p3(2:2,1:3) => f2()
- if (any (p3(2,:)%ii /= [-11,-22,-33])) call abort ()
- if (.not. same_type_as (p3, my_t)) call abort()
+ if (any (p3(2,:)%ii /= [-11,-22,-33])) STOP 8
+ if (.not. same_type_as (p3, my_t)) STOP 9
end program test
diff --git a/gcc/testsuite/gfortran.dg/pointer_assign_4.f90 b/gcc/testsuite/gfortran.dg/pointer_assign_4.f90
index faf7c776c59..ed3dd856af2 100644
--- a/gcc/testsuite/gfortran.dg/pointer_assign_4.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_assign_4.f90
@@ -15,22 +15,22 @@ program prog
p => a
p2 => p
if((lbound(p, dim=1) /= -10) .or. (ubound(p, dim=1) /= 10)) &
- call abort()
+ STOP 1
if((lbound(p2,dim=1) /= -10) .or. (ubound(p2,dim=1) /= 10)) &
- call abort()
+ STOP 2
do i = -10, 10
- if(p(i) /= real(i)) call abort()
- if(p2(i) /= real(i)) call abort()
+ if(p(i) /= real(i)) STOP 3
+ if(p2(i) /= real(i)) STOP 4
end do
p => a(:)
p2 => p
if((lbound(p, dim=1) /= 1) .or. (ubound(p, dim=1) /= 21)) &
- call abort()
+ STOP 5
if((lbound(p2,dim=1) /= 1) .or. (ubound(p2,dim=1) /= 21)) &
- call abort()
+ STOP 6
p2 => p(:)
if((lbound(p2,dim=1) /= 1) .or. (ubound(p2,dim=1) /= 21)) &
- call abort()
+ STOP 7
call multdim()
contains
subroutine multdim()
@@ -49,11 +49,11 @@ contains
if((lbound(ptr,dim=1) /= -5) .or. (ubound(ptr,dim=1) /= 5) .or. &
(lbound(ptr,dim=2) /= 10) .or. (ubound(ptr,dim=2) /= 20) .or. &
(lbound(ptr,dim=3) /= 0) .or. (ubound(ptr,dim=3) /= 3)) &
- call abort()
+ STOP 8
do i = 0, 3
do j = 10, 20
do k = -5, 5
- if(ptr(k,j,i) /= real(i+10*j+100*k)) call abort()
+ if(ptr(k,j,i) /= real(i+10*j+100*k)) STOP 9
end do
end do
end do
@@ -61,6 +61,6 @@ contains
if((lbound(ptr,dim=1) /= 1) .or. (ubound(ptr,dim=1) /= 11) .or. &
(lbound(ptr,dim=2) /= 1) .or. (ubound(ptr,dim=2) /= 11) .or. &
(lbound(ptr,dim=3) /= 1) .or. (ubound(ptr,dim=3) /= 4)) &
- call abort()
+ STOP 10
end subroutine multdim
end program prog
diff --git a/gcc/testsuite/gfortran.dg/pointer_assign_8.f90 b/gcc/testsuite/gfortran.dg/pointer_assign_8.f90
index e8fb2c3a6b2..3c5c2d304bb 100644
--- a/gcc/testsuite/gfortran.dg/pointer_assign_8.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_assign_8.f90
@@ -15,25 +15,25 @@ contains
class(t), target :: tgt, tgt2(:)
type(t), pointer :: ptr, ptr2(:), ptr3(:,:)
- if (tgt%ii /= 43) call abort()
- if (size (tgt2) /= 3) call abort()
- if (any (tgt2(:)%ii /= [11,22,33])) call abort()
+ if (tgt%ii /= 43) STOP 1
+ if (size (tgt2) /= 3) STOP 2
+ if (any (tgt2(:)%ii /= [11,22,33])) STOP 3
ptr => tgt ! TYPE => CLASS
ptr2 => tgt2 ! TYPE => CLASS
ptr3(-3:-3,1:3) => tgt2 ! TYPE => CLASS
- if (.not. associated(ptr)) call abort()
- if (.not. associated(ptr2)) call abort()
- if (.not. associated(ptr3)) call abort()
- if (.not. associated(ptr,tgt)) call abort()
- if (.not. associated(ptr2,tgt2)) call abort()
- if (ptr%ii /= 43) call abort()
- if (size (ptr2) /= 3) call abort()
- if (size (ptr3) /= 3) call abort()
- if (any (ptr2(:)%ii /= [11,22,33])) call abort()
- if (any (shape (ptr3) /= [1,3])) call abort()
- if (any (ptr3(-3,:)%ii /= [11,22,33])) call abort()
+ if (.not. associated(ptr)) STOP 4
+ if (.not. associated(ptr2)) STOP 5
+ if (.not. associated(ptr3)) STOP 6
+ if (.not. associated(ptr,tgt)) STOP 7
+ if (.not. associated(ptr2,tgt2)) STOP 8
+ if (ptr%ii /= 43) STOP 9
+ if (size (ptr2) /= 3) STOP 10
+ if (size (ptr3) /= 3) STOP 11
+ if (any (ptr2(:)%ii /= [11,22,33])) STOP 12
+ if (any (shape (ptr3) /= [1,3])) STOP 13
+ if (any (ptr3(-3,:)%ii /= [11,22,33])) STOP 14
end subroutine sub
end module m
diff --git a/gcc/testsuite/gfortran.dg/pointer_assign_9.f90 b/gcc/testsuite/gfortran.dg/pointer_assign_9.f90
index 7f8152aae6b..5643235ff23 100644
--- a/gcc/testsuite/gfortran.dg/pointer_assign_9.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_assign_9.f90
@@ -28,9 +28,9 @@ program test
implicit none
type(t), pointer :: p1, p2(:),p3(:,:)
p1 => f1()
- if (p1%ii /= 123) call abort ()
+ if (p1%ii /= 123) STOP 1
p2 => f2()
- if (any (p2%ii /= [-11,-22,-33])) call abort ()
+ if (any (p2%ii /= [-11,-22,-33])) STOP 2
p3(2:2,1:3) => f2()
- if (any (p3(2,:)%ii /= [-11,-22,-33])) call abort ()
+ if (any (p3(2,:)%ii /= [-11,-22,-33])) STOP 3
end program test
diff --git a/gcc/testsuite/gfortran.dg/pointer_check_10.f90 b/gcc/testsuite/gfortran.dg/pointer_check_10.f90
index 642f0a08b21..7e445f962d0 100644
--- a/gcc/testsuite/gfortran.dg/pointer_check_10.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_check_10.f90
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-fcheck=all -std=f2003 -fall-intrinsics" }
+! { dg-options "-fcheck=all -std=f2003 " }
! { dg-shouldfail "Pointer actual argument 'ptr' is not associated" }
!
! PR fortran/49255
@@ -11,6 +11,6 @@ call foo (ptr)
contains
subroutine foo (x)
integer, optional :: x
- if (present (x)) call abort ()
+ if (present (x)) STOP 1
end subroutine foo
end
diff --git a/gcc/testsuite/gfortran.dg/pointer_check_9.f90 b/gcc/testsuite/gfortran.dg/pointer_check_9.f90
index d42ba64d78b..f9b49bf72f5 100644
--- a/gcc/testsuite/gfortran.dg/pointer_check_9.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_check_9.f90
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-fcheck=all -std=f2008 -fall-intrinsics" }
+! { dg-options "-fcheck=all -std=f2008 " }
!
! PR fortran/49255
!
@@ -10,6 +10,6 @@ call foo (ptr)
contains
subroutine foo (x)
integer, optional :: x
- if (present (x)) call abort ()
+ if (present (x)) STOP 1
end subroutine foo
end
diff --git a/gcc/testsuite/gfortran.dg/pointer_function_actual_1.f90 b/gcc/testsuite/gfortran.dg/pointer_function_actual_1.f90
index 0924117080c..53ae993b3b0 100644
--- a/gcc/testsuite/gfortran.dg/pointer_function_actual_1.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_function_actual_1.f90
@@ -43,7 +43,7 @@ PROGRAM TEST
CALL S1(F,*1,*2)
1 CONTINUE
- CALL ABORT()
+ STOP 1
GOTO 3
2 CONTINUE
diff --git a/gcc/testsuite/gfortran.dg/pointer_function_actual_2.f90 b/gcc/testsuite/gfortran.dg/pointer_function_actual_2.f90
index 11457ffd9a6..c151839c08b 100644
--- a/gcc/testsuite/gfortran.dg/pointer_function_actual_2.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_function_actual_2.f90
@@ -16,7 +16,7 @@ CONTAINS
REAL,TARGET :: targ
REAL,POINTER :: p
p => targ
- IF (.NOT. ASSOCIATED(p,x)) CALL ABORT()
+ IF (.NOT. ASSOCIATED(p,x)) STOP 1
END SUBROUTINE
END
diff --git a/gcc/testsuite/gfortran.dg/pointer_function_result_1.f90 b/gcc/testsuite/gfortran.dg/pointer_function_result_1.f90
index 764a666be96..f16905c9fd3 100644
--- a/gcc/testsuite/gfortran.dg/pointer_function_result_1.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_function_result_1.f90
@@ -12,8 +12,8 @@ PROGRAM test_pointer_value
INTEGER, POINTER, DIMENSION(:) :: ptr_array_fifth => NULL()
ptr_array => array
array_fifth = every_fifth (ptr_array)
- if (any (array_fifth .ne. [1,11])) call abort
- if (any (every_fifth(ptr_array) .ne. [1,11])) call abort
+ if (any (array_fifth .ne. [1,11])) STOP 1
+ if (any (every_fifth(ptr_array) .ne. [1,11])) STOP 2
CONTAINS
FUNCTION every_fifth (ptr_array) RESULT (ptr_fifth)
IMPLICIT NONE
diff --git a/gcc/testsuite/gfortran.dg/pointer_init_1.f90 b/gcc/testsuite/gfortran.dg/pointer_init_1.f90
index 0cfa9038190..51132052588 100644
--- a/gcc/testsuite/gfortran.dg/pointer_init_1.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_init_1.f90
@@ -8,8 +8,8 @@ program pointer_init_1
real, pointer :: b => NULL()
character, pointer :: c => NULL()
integer, pointer, dimension(:) :: d => NULL()
- if (associated(a)) call abort()
- if (associated(b)) call abort()
- if (associated(c)) call abort()
- if (associated(d)) call abort()
+ if (associated(a)) STOP 1
+ if (associated(b)) STOP 2
+ if (associated(c)) STOP 3
+ if (associated(d)) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/pointer_init_3.f90 b/gcc/testsuite/gfortran.dg/pointer_init_3.f90
index a91e518cc4b..37b89f77a2e 100644
--- a/gcc/testsuite/gfortran.dg/pointer_init_3.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_init_3.f90
@@ -28,15 +28,15 @@ integer, pointer :: dp2 => vec(2)
integer, pointer :: dp3 => u%i
dp = 5
-if (i0/=5) call abort()
+if (i0/=5) STOP 1
u%dpc = 6
-if (i0/=6) call abort()
+if (i0/=6) STOP 2
dp2 = 3
-if (vec(2)/=3) call abort()
+if (vec(2)/=3) STOP 3
dp3 = 4
-if (u%i/=4) call abort()
+if (u%i/=4) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/pointer_init_4.f90 b/gcc/testsuite/gfortran.dg/pointer_init_4.f90
index 2ca173468d8..16f1f454375 100644
--- a/gcc/testsuite/gfortran.dg/pointer_init_4.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_init_4.f90
@@ -34,7 +34,7 @@ end type
type (t) :: u
-if (pp()/=42) call abort()
-if (u%ppc()/=43) call abort()
+if (pp()/=42) STOP 1
+if (u%ppc()/=43) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/pointer_init_5.f90 b/gcc/testsuite/gfortran.dg/pointer_init_5.f90
index 1ca773874a2..befb1fe085c 100644
--- a/gcc/testsuite/gfortran.dg/pointer_init_5.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_init_5.f90
@@ -34,7 +34,7 @@ implicit none
type (t) :: u
-if (pp()/=42) call abort()
-if (u%ppc()/=43) call abort()
+if (pp()/=42) STOP 1
+if (u%ppc()/=43) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/pointer_init_8.f90 b/gcc/testsuite/gfortran.dg/pointer_init_8.f90
index 8c6bdb2a6a3..2e77b5cb58e 100644
--- a/gcc/testsuite/gfortran.dg/pointer_init_8.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_init_8.f90
@@ -17,8 +17,8 @@ end module m
class(c), pointer :: px => x
class(c), pointer :: py => y
- if (.not. associated(px, x)) call abort()
- if (.not. same_type_as(px, x)) call abort()
- if (.not. associated(py, y)) call abort()
- if (.not. same_type_as(py, y)) call abort()
+ if (.not. associated(px, x)) STOP 1
+ if (.not. same_type_as(px, x)) STOP 2
+ if (.not. associated(py, y)) STOP 3
+ if (.not. same_type_as(py, y)) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/pointer_intent_1.f90 b/gcc/testsuite/gfortran.dg/pointer_intent_1.f90
index 1bdab241c18..6585107436b 100644
--- a/gcc/testsuite/gfortran.dg/pointer_intent_1.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_intent_1.f90
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2003 -fall-intrinsics" }
+! { dg-options "-std=f2003 " }
! Pointer intent test
! PR fortran/29624
!
@@ -25,21 +25,21 @@ program test
allocate(t2%point)
t2%point = 42
call nonpointer(t2)
- if(t2%point /= 7) call abort()
+ if(t2%point /= 7) STOP 1
contains
subroutine a(p,t)
integer, pointer,intent(in) :: p
type(myT), pointer, intent(in) :: t
integer, pointer :: tmp
if(.not.associated(p)) return
- if(p /= 33) call abort()
+ if(p /= 33) STOP 2
p = 7
if (associated(t)) then
! allocating is valid as we don't change the status
! of the pointer "t", only of it's target
t%x = -15
- if(.not.associated(t%point)) call abort()
- if(t%point /= 55) call abort()
+ if(.not.associated(t%point)) STOP 3
+ if(t%point /= 55) STOP 4
nullify(t%point)
allocate(tmp)
t%point => tmp
@@ -48,14 +48,14 @@ contains
tmp => null(tmp)
allocate(t%point)
t%point = 27
- if(t%point /= 27) call abort()
- if(t%x /= -15) call abort()
+ if(t%point /= 27) STOP 5
+ if(t%x /= -15) STOP 6
call foo(t)
- if(t%x /= 32) call abort()
- if(t%point /= -98) call abort()
+ if(t%x /= 32) STOP 7
+ if(t%point /= -98) STOP 8
end if
call b(p)
- if(p /= 5) call abort()
+ if(p /= 5) STOP 9
end subroutine
subroutine b(v)
integer, intent(out) :: v
@@ -63,15 +63,15 @@ contains
end subroutine b
subroutine foo(comp)
type(myT), intent(inout) :: comp
- if(comp%x /= -15) call abort()
- if(comp%point /= 27) call abort()
+ if(comp%x /= -15) STOP 10
+ if(comp%point /= 27) STOP 11
comp%x = 32
comp%point = -98
end subroutine foo
subroutine nonpointer(t)
type(myT), intent(in) :: t
- if(t%x /= 5 ) call abort()
- if(t%point /= 42) call abort()
+ if(t%x /= 5 ) STOP 12
+ if(t%point /= 42) STOP 13
t%point = 7
end subroutine nonpointer
end program
diff --git a/gcc/testsuite/gfortran.dg/pointer_intent_3.f90 b/gcc/testsuite/gfortran.dg/pointer_intent_3.f90
index 7f87d10e9bb..055de3aae0f 100644
--- a/gcc/testsuite/gfortran.dg/pointer_intent_3.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_intent_3.f90
@@ -1,5 +1,5 @@
! { dg-do compile }
-! { dg-options "-std=f2003 -fall-intrinsics" }
+! { dg-options "-std=f2003" }
! { dg-shouldfail "Invalid code" }
!
! Pointer intent test
diff --git a/gcc/testsuite/gfortran.dg/pointer_intent_4.f90 b/gcc/testsuite/gfortran.dg/pointer_intent_4.f90
index 862edff4a58..74bb2874dca 100644
--- a/gcc/testsuite/gfortran.dg/pointer_intent_4.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_intent_4.f90
@@ -14,10 +14,10 @@ program test
allocate(t2%point)
t2%point = 42
call nonpointer(t2)
- if(t2%point /= 7) call abort()
+ if(t2%point /= 7) STOP 1
t2%point = 42
call nonpointer2(t2)
- if(t2%point /= 66) call abort()
+ if(t2%point /= 66) STOP 2
contains
subroutine nonpointer(t)
type(myT), intent(in) :: t
diff --git a/gcc/testsuite/gfortran.dg/pointer_intent_5.f90 b/gcc/testsuite/gfortran.dg/pointer_intent_5.f90
index c4e3c7a3c1d..d873c5b3ce2 100644
--- a/gcc/testsuite/gfortran.dg/pointer_intent_5.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_intent_5.f90
@@ -12,7 +12,7 @@ program bots_sparselu_pointer_intent_in
allocate(array(4))
array = 0
call sub(array)
- if (sum(array)/=1) call abort
+ if (sum(array)/=1) STOP 1
contains
diff --git a/gcc/testsuite/gfortran.dg/pointer_remapping_10.f90 b/gcc/testsuite/gfortran.dg/pointer_remapping_10.f90
index 48105069c45..14938670829 100644
--- a/gcc/testsuite/gfortran.dg/pointer_remapping_10.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_remapping_10.f90
@@ -25,11 +25,11 @@ logical :: negative
do i = 1, ubound(ptr,dim=2)
do j = 1, ubound(ptr,dim=1)
if (negative) then
- if (-cnt /= ptr(j, i)) call abort()
+ if (-cnt /= ptr(j, i)) STOP 1
cnt = cnt + 1
negative = .false.
else
- if (cnt /= ptr(j, i)) call abort()
+ if (cnt /= ptr(j, i)) STOP 2
negative = .true.
end if
end do
diff --git a/gcc/testsuite/gfortran.dg/pointer_remapping_4.f03 b/gcc/testsuite/gfortran.dg/pointer_remapping_4.f03
index d196ddeb0d1..3225d8c40cf 100644
--- a/gcc/testsuite/gfortran.dg/pointer_remapping_4.f03
+++ b/gcc/testsuite/gfortran.dg/pointer_remapping_4.f03
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2003 -fall-intrinsics -fcheck=bounds" }
+! { dg-options "-std=f2003 -fcheck=bounds" }
! PR fortran/45016
! Check pointer bounds remapping at runtime.
@@ -15,19 +15,19 @@ PROGRAM main
basem = RESHAPE (arr, SHAPE (basem))
vec(0:) => arr
- IF (LBOUND (vec, 1) /= 0 .OR. UBOUND (vec, 1) /= 3) CALL abort ()
- IF (ANY (vec /= arr)) CALL abort ()
- IF (vec(0) /= 1 .OR. vec(2) /= 3) CALL abort ()
+ IF (LBOUND (vec, 1) /= 0 .OR. UBOUND (vec, 1) /= 3) STOP 1
+ IF (ANY (vec /= arr)) STOP 2
+ IF (vec(0) /= 1 .OR. vec(2) /= 3) STOP 3
! Test with bound different of index type, so conversion is necessary.
vec2(-5_1:) => vec
- IF (LBOUND (vec2, 1) /= -5 .OR. UBOUND (vec2, 1) /= -2) CALL abort ()
- IF (ANY (vec2 /= arr)) CALL abort ()
- IF (vec2(-5) /= 1 .OR. vec2(-3) /= 3) CALL abort ()
+ IF (LBOUND (vec2, 1) /= -5 .OR. UBOUND (vec2, 1) /= -2) STOP 4
+ IF (ANY (vec2 /= arr)) STOP 5
+ IF (vec2(-5) /= 1 .OR. vec2(-3) /= 3) STOP 6
mat(1:, 2:) => basem
IF (ANY (LBOUND (mat) /= (/ 1, 2 /) .OR. UBOUND (mat) /= (/ 2, 3 /))) &
- CALL abort ()
- IF (ANY (mat /= basem)) CALL abort ()
- IF (mat(1, 2) /= 1 .OR. mat(1, 3) /= 3 .OR. mat(2, 3) /= 4) CALL abort ()
+ STOP 7
+ IF (ANY (mat /= basem)) STOP 8
+ IF (mat(1, 2) /= 1 .OR. mat(1, 3) /= 3 .OR. mat(2, 3) /= 4) STOP 9
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/pointer_remapping_5.f08 b/gcc/testsuite/gfortran.dg/pointer_remapping_5.f08
index 28c0a7d8da6..cdfb52cc719 100644
--- a/gcc/testsuite/gfortran.dg/pointer_remapping_5.f08
+++ b/gcc/testsuite/gfortran.dg/pointer_remapping_5.f08
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2008 -fall-intrinsics -fcheck=bounds" }
+! { dg-options "-std=f2008 -fcheck=bounds" }
! PR fortran/29785
! Check pointer rank remapping at runtime.
@@ -17,21 +17,21 @@ PROGRAM main
! We need not necessarily change the rank...
vec(2_1:5) => arr(1_1:12_1:2_1)
- IF (LBOUND (vec, 1) /= 2 .OR. UBOUND (vec, 1) /= 5) CALL abort ()
- IF (ANY (vec /= (/ 1, 3, 5, 7 /))) CALL abort ()
- IF (vec(2) /= 1 .OR. vec(5) /= 7) CALL abort ()
+ IF (LBOUND (vec, 1) /= 2 .OR. UBOUND (vec, 1) /= 5) STOP 1
+ IF (ANY (vec /= (/ 1, 3, 5, 7 /))) STOP 2
+ IF (vec(2) /= 1 .OR. vec(5) /= 7) STOP 3
! ...but it is of course the more interesting. Also try remapping a pointer.
vec => arr(1:12:2)
mat(1:3, 1:2) => vec
IF (ANY (LBOUND (mat) /= (/ 1, 1 /) .OR. UBOUND (mat) /= (/ 3, 2 /))) &
- CALL abort ()
- IF (ANY (mat /= RESHAPE (arr(1:12:2), SHAPE (mat)))) CALL abort ()
- IF (mat(1, 1) /= 1 .OR. mat(1, 2) /= 7) CALL abort ()
+ STOP 4
+ IF (ANY (mat /= RESHAPE (arr(1:12:2), SHAPE (mat)))) STOP 5
+ IF (mat(1, 1) /= 1 .OR. mat(1, 2) /= 7) STOP 6
! Remap with target of rank > 1.
vec(1:12_1) => basem
- IF (LBOUND (vec, 1) /= 1 .OR. UBOUND (vec, 1) /= 12) CALL abort ()
- IF (ANY (vec /= arr)) CALL abort ()
- IF (vec(1) /= 1 .OR. vec(5) /= 5 .OR. vec(12) /= 12) CALL abort ()
+ IF (LBOUND (vec, 1) /= 1 .OR. UBOUND (vec, 1) /= 12) STOP 7
+ IF (ANY (vec /= arr)) STOP 8
+ IF (vec(1) /= 1 .OR. vec(5) /= 5 .OR. vec(12) /= 12) STOP 9
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/pointer_remapping_9.f90 b/gcc/testsuite/gfortran.dg/pointer_remapping_9.f90
index 7c1e2320b4b..c9fc992f773 100644
--- a/gcc/testsuite/gfortran.dg/pointer_remapping_9.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_remapping_9.f90
@@ -16,8 +16,8 @@ tgt2 = [1,2,3,4,5,6,7,8,9,10]
ptr(-5:) => tgt(5:) ! Okay
-if (size(ptr) /= 6 .or. lbound(ptr,1) /= -5) call abort()
-if (any (ptr /= [5,6,7,8,9,10])) call abort()
+if (size(ptr) /= 6 .or. lbound(ptr,1) /= -5) STOP 1
+if (any (ptr /= [5,6,7,8,9,10])) STOP 2
ptr(-5:) => tgt2(5:) ! wrongly associates the whole array
@@ -25,7 +25,7 @@ ptr(-5:) => tgt2(5:) ! wrongly associates the whole array
print '(*(i4))', size(ptr), lbound(ptr)
print '(*(i4))', ptr
-if (size(ptr) /= 6 .or. lbound(ptr,1) /= -5) call abort()
-if (any (ptr /= [5,6,7,8,9,10])) call abort()
+if (size(ptr) /= 6 .or. lbound(ptr,1) /= -5) STOP 3
+if (any (ptr /= [5,6,7,8,9,10])) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/pointer_target_1.f90 b/gcc/testsuite/gfortran.dg/pointer_target_1.f90
index 0f1b7129b8b..d113072bc4d 100644
--- a/gcc/testsuite/gfortran.dg/pointer_target_1.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_target_1.f90
@@ -7,14 +7,14 @@ program test
integer, target :: a
a = 66
call foo(a)
- if (a /= 647) call abort()
+ if (a /= 647) STOP 1
contains
subroutine foo(p)
integer, pointer, intent(in) :: p
- if (a /= 66) call abort()
- if (p /= 66) call abort()
+ if (a /= 66) STOP 2
+ if (p /= 66) STOP 3
p = 647
- if (p /= 647) call abort()
- if (a /= 647) call abort()
+ if (p /= 647) STOP 4
+ if (a /= 647) STOP 5
end subroutine foo
end program test
diff --git a/gcc/testsuite/gfortran.dg/pointer_target_2.f90 b/gcc/testsuite/gfortran.dg/pointer_target_2.f90
index 95c3e5f7956..339278ed36a 100644
--- a/gcc/testsuite/gfortran.dg/pointer_target_2.f90
+++ b/gcc/testsuite/gfortran.dg/pointer_target_2.f90
@@ -8,14 +8,14 @@ program test
integer, target :: a
a = 66
call foo(a) ! { dg-error "Fortran 2008: Non-pointer actual argument" }
- if (a /= 647) call abort()
+ if (a /= 647) STOP 1
contains
subroutine foo(p)
integer, pointer, intent(in) :: p
- if (a /= 66) call abort()
- if (p /= 66) call abort()
+ if (a /= 66) STOP 2
+ if (p /= 66) STOP 3
p = 647
- if (p /= 647) call abort()
- if (a /= 647) call abort()
+ if (p /= 647) STOP 4
+ if (a /= 647) STOP 5
end subroutine foo
end program test
diff --git a/gcc/testsuite/gfortran.dg/popcnt_poppar_1.F90 b/gcc/testsuite/gfortran.dg/popcnt_poppar_1.F90
index 3b7322b94fa..5442ab8d24c 100644
--- a/gcc/testsuite/gfortran.dg/popcnt_poppar_1.F90
+++ b/gcc/testsuite/gfortran.dg/popcnt_poppar_1.F90
@@ -16,12 +16,12 @@ interface runtime_poppar
end interface
#define CHECK(val,res) \
- if (popcnt(val) /= res) call abort ; \
- if (runtime_popcnt(val) /= res) call abort
+ if (popcnt(val) /= res) STOP 1; \
+ if (runtime_popcnt(val) /= res) STOP 2
#define CHECK2(val) \
- if (poppar(val) /= modulo(popcnt(val),2)) call abort ; \
- if (runtime_poppar(val) /= poppar(val)) call abort
+ if (poppar(val) /= modulo(popcnt(val),2)) STOP 3; \
+ if (runtime_poppar(val) /= poppar(val)) STOP 4
CHECK(0_1, 0)
CHECK(0_2, 0)
diff --git a/gcc/testsuite/gfortran.dg/popcnt_poppar_2.F90 b/gcc/testsuite/gfortran.dg/popcnt_poppar_2.F90
index fb984e2f55a..e45cd75b5eb 100644
--- a/gcc/testsuite/gfortran.dg/popcnt_poppar_2.F90
+++ b/gcc/testsuite/gfortran.dg/popcnt_poppar_2.F90
@@ -3,12 +3,12 @@
! { dg-require-effective-target fortran_integer_16 }
#define CHECK(val,res) \
- if (popcnt(val) /= res) call abort ; \
- if (runtime_popcnt(val) /= res) call abort
+ if (popcnt(val) /= res) STOP 1; \
+ if (runtime_popcnt(val) /= res) STOP 2
#define CHECK2(val) \
- if (poppar(val) /= modulo(popcnt(val),2)) call abort ; \
- if (runtime_poppar(val) /= poppar(val)) call abort
+ if (poppar(val) /= modulo(popcnt(val),2)) STOP 3; \
+ if (runtime_poppar(val) /= poppar(val)) STOP 4
CHECK(0_16, 0)
CHECK(1_16, 1)
diff --git a/gcc/testsuite/gfortran.dg/power.f90 b/gcc/testsuite/gfortran.dg/power.f90
index 5f6b6c6c3a3..db4431e5f43 100644
--- a/gcc/testsuite/gfortran.dg/power.f90
+++ b/gcc/testsuite/gfortran.dg/power.f90
@@ -1,7 +1,7 @@
! { dg-do run }
integer i
i = 0
-if ( a (i) ** 5 .ne. 1) call abort ()
+if ( a (i) ** 5 .ne. 1) STOP 1
contains
function a (i)
integer a, i
diff --git a/gcc/testsuite/gfortran.dg/power1.f90 b/gcc/testsuite/gfortran.dg/power1.f90
index 50dbac2756d..0d8f3ea6e87 100644
--- a/gcc/testsuite/gfortran.dg/power1.f90
+++ b/gcc/testsuite/gfortran.dg/power1.f90
@@ -34,25 +34,25 @@ program power
real(d), parameter :: eps_d = 1.e-10_d
real(e), parameter :: eps_e = 1.e-10_e
- if (abs(ris - 4) > eps_s) call abort
- if (abs(rid - 4) > eps_d) call abort
- if (abs(rie - 4) > eps_e) call abort
- if (abs(real(cis, s) - 3) > eps_s .or. abs(aimag(cis) - 4) > eps_s) call abort
- if (abs(real(cid, d) - 3) > eps_d .or. abs(aimag(cid) - 4) > eps_d) call abort
- if (abs(real(cie, e) - 3) > eps_e .or. abs(aimag(cie) - 4) > eps_e) call abort
-
- if (abs(rrs - 4) > eps_s) call abort
- if (abs(rrd - 4) > eps_d) call abort
- if (abs(rre - 4) > eps_e) call abort
- if (abs(real(crs, s) - 3) > eps_s .or. abs(aimag(crs) - 4) > eps_s) call abort
- if (abs(real(crd, d) - 3) > eps_d .or. abs(aimag(crd) - 4) > eps_d) call abort
- if (abs(real(cre, e) - 3) > eps_e .or. abs(aimag(cre) - 4) > eps_e) call abort
-
- if (abs(rds - 4) > eps_s) call abort
- if (abs(rdd - 4) > eps_d) call abort
- if (abs(rde - 4) > eps_e) call abort
- if (abs(real(cds, s) - 3) > eps_s .or. abs(aimag(cds) - 4) > eps_s) call abort
- if (abs(real(cdd, d) - 3) > eps_d .or. abs(aimag(cdd) - 4) > eps_d) call abort
- if (abs(real(cde, e) - 3) > eps_e .or. abs(aimag(cde) - 4) > eps_e) call abort
+ if (abs(ris - 4) > eps_s) STOP 1
+ if (abs(rid - 4) > eps_d) STOP 2
+ if (abs(rie - 4) > eps_e) STOP 3
+ if (abs(real(cis, s) - 3) > eps_s .or. abs(aimag(cis) - 4) > eps_s) STOP 4
+ if (abs(real(cid, d) - 3) > eps_d .or. abs(aimag(cid) - 4) > eps_d) STOP 5
+ if (abs(real(cie, e) - 3) > eps_e .or. abs(aimag(cie) - 4) > eps_e) STOP 6
+
+ if (abs(rrs - 4) > eps_s) STOP 7
+ if (abs(rrd - 4) > eps_d) STOP 8
+ if (abs(rre - 4) > eps_e) STOP 9
+ if (abs(real(crs, s) - 3) > eps_s .or. abs(aimag(crs) - 4) > eps_s) STOP 10
+ if (abs(real(crd, d) - 3) > eps_d .or. abs(aimag(crd) - 4) > eps_d) STOP 11
+ if (abs(real(cre, e) - 3) > eps_e .or. abs(aimag(cre) - 4) > eps_e) STOP 12
+
+ if (abs(rds - 4) > eps_s) STOP 13
+ if (abs(rdd - 4) > eps_d) STOP 14
+ if (abs(rde - 4) > eps_e) STOP 15
+ if (abs(real(cds, s) - 3) > eps_s .or. abs(aimag(cds) - 4) > eps_s) STOP 16
+ if (abs(real(cdd, d) - 3) > eps_d .or. abs(aimag(cdd) - 4) > eps_d) STOP 17
+ if (abs(real(cde, e) - 3) > eps_e .or. abs(aimag(cde) - 4) > eps_e) STOP 18
end program power
diff --git a/gcc/testsuite/gfortran.dg/power_3.f90 b/gcc/testsuite/gfortran.dg/power_3.f90
index 001ea7347a0..c687c1f4249 100644
--- a/gcc/testsuite/gfortran.dg/power_3.f90
+++ b/gcc/testsuite/gfortran.dg/power_3.f90
@@ -14,23 +14,23 @@ program main
v = -1
! Test in scalar expressions
do i=-n,n
- if (v**i /= (-1)**i) call abort
+ if (v**i /= (-1)**i) STOP 1
end do
! Test in array constructors
a(-m:m) = [ ((-1)**i, i= -m, m) ]
b(-m:m) = [ ( v**i, i= -m, m) ]
- if (any(a .ne. b)) call abort
+ if (any(a .ne. b)) STOP 2
! Test in array expressions
c = [ ( i, i = -n , n ) ]
d = (-1)**c
e = v**c
- if (any(d .ne. e)) call abort
+ if (any(d .ne. e)) STOP 3
! Test in different kind expressions
do i2=-n,n
- if (v**i2 /= (-1)**i2) call abort
+ if (v**i2 /= (-1)**i2) STOP 4
end do
end program main
diff --git a/gcc/testsuite/gfortran.dg/power_4.f90 b/gcc/testsuite/gfortran.dg/power_4.f90
index 3b2688c77b8..d3e9ab86af7 100644
--- a/gcc/testsuite/gfortran.dg/power_4.f90
+++ b/gcc/testsuite/gfortran.dg/power_4.f90
@@ -11,18 +11,18 @@ program main
v = 2
! Test scalar expressions.
do i=-n,n
- if (2**i /= v**i) call abort
+ if (2**i /= v**i) STOP 1
end do
! Test array constructors
b = [(2**i,i=-m,m)]
c = [(v**i,i=-m,m)]
- if (any(b /= c)) call abort
+ if (any(b /= c)) STOP 2
! Test array expressions
a = [(i,i=-m,m)]
d = 2**a
e = v**a
- if (any(d /= e)) call abort
+ if (any(d /= e)) STOP 3
end program main
! { dg-final { scan-tree-dump-times "_gfortran_pow_i4_i4" 3 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/power_5.f90 b/gcc/testsuite/gfortran.dg/power_5.f90
index e9e591e7dd2..082b5e55681 100644
--- a/gcc/testsuite/gfortran.dg/power_5.f90
+++ b/gcc/testsuite/gfortran.dg/power_5.f90
@@ -14,21 +14,21 @@ program main
m = n
! Test in scalar expressions
do i=-n,n
- if (v /= 1**i) call abort
+ if (v /= 1**i) STOP 1
end do
! Test in array constructors
a(-m:m) = [ (1**i, i= -m, m) ]
- if (any(a .ne. v)) call abort
+ if (any(a .ne. v)) STOP 2
! Test in array expressions
c = [ ( i, i = -n , n ) ]
d = 1**c
- if (any(d .ne. v)) call abort
+ if (any(d .ne. v)) STOP 3
! Test in different kind expressions
do i2=-n,n
- if (v /= 1**i2) call abort
+ if (v /= 1**i2) STOP 4
end do
end program main
diff --git a/gcc/testsuite/gfortran.dg/pr12884.f b/gcc/testsuite/gfortran.dg/pr12884.f
index 425604c02c5..890aa3b5302 100644
--- a/gcc/testsuite/gfortran.dg/pr12884.f
+++ b/gcc/testsuite/gfortran.dg/pr12884.f
@@ -21,5 +21,5 @@ c Based on example provided by jean-pierre.flament@univ-lille1.fr
rewind (10)
read (10, cntrl)
if ((ispher.ne.1).or.(nosym.ne.2).or.(runflg.ne.3).or.
- & (noprop.ne.4)) call abort ()
+ & (noprop.ne.4)) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr15129.f90 b/gcc/testsuite/gfortran.dg/pr15129.f90
index df3854d7a5f..effaa1a838d 100644
--- a/gcc/testsuite/gfortran.dg/pr15129.f90
+++ b/gcc/testsuite/gfortran.dg/pr15129.f90
@@ -11,7 +11,7 @@ CALL T(A,B)
contains
SUBROUTINE T(A,B)
CHARACTER*(*) A,B
-if(len(a)/=10) call abort()
-if(len(b)/=8) call abort()
+if(len(a)/=10) STOP 1
+if(len(b)/=8) STOP 2
END SUBROUTINE
end
diff --git a/gcc/testsuite/gfortran.dg/pr15140.f90 b/gcc/testsuite/gfortran.dg/pr15140.f90
index 0f566dcd1d4..80c08dda954 100644
--- a/gcc/testsuite/gfortran.dg/pr15140.f90
+++ b/gcc/testsuite/gfortran.dg/pr15140.f90
@@ -3,11 +3,11 @@
! argument of the subroutine directly, but instead use a copy of it.
function M(NAMES)
CHARACTER*(*) NAMES(*)
- if (any(names(1:2).ne."asdfg")) call abort
+ if (any(names(1:2).ne."asdfg")) STOP 1
m = LEN(NAMES(1))
END function M
character(5) :: c(2)
c = "asdfg"
-if(m(c).ne.5) call abort()
+if(m(c).ne.5) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr15324.f90 b/gcc/testsuite/gfortran.dg/pr15324.f90
index d918717e748..dee027ebc39 100644
--- a/gcc/testsuite/gfortran.dg/pr15324.f90
+++ b/gcc/testsuite/gfortran.dg/pr15324.f90
@@ -12,11 +12,11 @@ deallocate(c)
contains
subroutine foo(x)
character (len = *), dimension(:) :: x
- if (any (x .ne. "BLUBB")) CALL abort()
+ if (any (x .ne. "BLUBB")) STOP 1
end subroutine foo
end
subroutine bar(x,n)
character (len = *), dimension(n) :: x
- if (any (x .ne. "BLUBB")) CALL abort()
+ if (any (x .ne. "BLUBB")) STOP 2
end subroutine bar
diff --git a/gcc/testsuite/gfortran.dg/pr15332.f b/gcc/testsuite/gfortran.dg/pr15332.f
index 813e3018839..d4d4538bd86 100644
--- a/gcc/testsuite/gfortran.dg/pr15332.f
+++ b/gcc/testsuite/gfortran.dg/pr15332.f
@@ -5,10 +5,10 @@
character*12 c
write (c,100) 0, 1
- if (c .ne. 'i = 0, j = 1') call abort
+ if (c .ne. 'i = 0, j = 1') STOP 1
write (c,100) 0
- if (c .ne. 'i = 0 ') call abort
+ if (c .ne. 'i = 0 ') STOP 2
100 format ('i = ',i1,:,', j = ',i1)
end
diff --git a/gcc/testsuite/gfortran.dg/pr15957.f90 b/gcc/testsuite/gfortran.dg/pr15957.f90
index b1439131f89..91f5826f223 100644
--- a/gcc/testsuite/gfortran.dg/pr15957.f90
+++ b/gcc/testsuite/gfortran.dg/pr15957.f90
@@ -15,13 +15,13 @@ m(1,:) = (/ 1, 2, 3, 4 /)
m(2,:) = (/ 5, 6, 0, 0 /)
! check that reshape does the right thing while constant folding
-if (any(i /= k)) call abort()
-if (any(j /= m)) call abort()
+if (any(i /= k)) STOP 1
+if (any(j /= m)) STOP 2
! check that reshape does the right thing at runtime
n = reshape ((/1,2,3,4,5,6/), (/2,3/))
-if (any(n /= k)) call abort()
+if (any(n /= k)) STOP 3
o = reshape ((/1,2,3,4,5,6/), (/2,4/), (/0,0/), (/2,1/))
-if (any(o /= m)) call abort()
+if (any(o /= m)) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/pr15959.f90 b/gcc/testsuite/gfortran.dg/pr15959.f90
index c28dce5255e..86518115448 100644
--- a/gcc/testsuite/gfortran.dg/pr15959.f90
+++ b/gcc/testsuite/gfortran.dg/pr15959.f90
@@ -1,5 +1,5 @@
! { dg-do run }
! Test initializer of character array. PR15959
character (*), parameter :: a (1:2) = (/'ab ', 'abc'/)
-if (a(2) .ne. 'abc') call abort()
+if (a(2) .ne. 'abc') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr16597.f90 b/gcc/testsuite/gfortran.dg/pr16597.f90
index fc191efef7c..47e3549aa80 100644
--- a/gcc/testsuite/gfortran.dg/pr16597.f90
+++ b/gcc/testsuite/gfortran.dg/pr16597.f90
@@ -20,11 +20,11 @@
write (iunit, rec=1) 'ABCD'
read (iunit, rec=1) string
close (iunit, status = 'delete')
- if (string.ne.'ABCD') call abort
+ if (string.ne.'ABCD') STOP 1
open (UNIT=iunit,FORM='unformatted',ACCESS='direct',STATUS='scratch',RECL=strlen)
write (iunit, rec=1) 'ABCD'
read (iunit, rec=1) string
close (iunit)
- if (string.ne.'ABCD') call abort
+ if (string.ne.'ABCD') STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/pr16861.f90 b/gcc/testsuite/gfortran.dg/pr16861.f90
index 4a73edaf4f0..000283ba6f5 100644
--- a/gcc/testsuite/gfortran.dg/pr16861.f90
+++ b/gcc/testsuite/gfortran.dg/pr16861.f90
@@ -12,7 +12,7 @@ contains
integer :: n
do n = 1, i
- if (j(n) /= n**2) call abort
+ if (j(n) /= n**2) STOP 1
end do
end subroutine baz
end module bar
diff --git a/gcc/testsuite/gfortran.dg/pr16938.f90 b/gcc/testsuite/gfortran.dg/pr16938.f90
index 8a9c286ef3e..f1300cb2e1a 100644
--- a/gcc/testsuite/gfortran.dg/pr16938.f90
+++ b/gcc/testsuite/gfortran.dg/pr16938.f90
@@ -19,9 +19,9 @@
ElementTable%Data(2) = Compound(2,"two")
ElementTable%L_size = 2
- if (elementtable%data(1)%count /= 1) call abort
- if (elementtable%data(2)%count /= 2) call abort
- if (elementtable%data(1)%name /= "one ") call abort
- if (elementtable%data(2)%name /= "two ") call abort
- if (elementtable%l_size /= 2) call abort
+ if (elementtable%data(1)%count /= 1) STOP 1
+ if (elementtable%data(2)%count /= 2) STOP 2
+ if (elementtable%data(1)%name /= "one ") STOP 3
+ if (elementtable%data(2)%name /= "two ") STOP 4
+ if (elementtable%l_size /= 2) STOP 5
end program Array_List
diff --git a/gcc/testsuite/gfortran.dg/pr17090.f90 b/gcc/testsuite/gfortran.dg/pr17090.f90
index 6a685c2eddd..8cffe3b729c 100644
--- a/gcc/testsuite/gfortran.dg/pr17090.f90
+++ b/gcc/testsuite/gfortran.dg/pr17090.f90
@@ -18,5 +18,5 @@
do i = 1,14
sum = sum + a(i)
end do
- if (sum.ne.105) call abort
+ if (sum.ne.105) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr17143.f90 b/gcc/testsuite/gfortran.dg/pr17143.f90
index 4423eab7354..0aef688c663 100644
--- a/gcc/testsuite/gfortran.dg/pr17143.f90
+++ b/gcc/testsuite/gfortran.dg/pr17143.f90
@@ -13,7 +13,7 @@
if (l.ne.' -9223372036854775808') then
! ^
! the space is required before a number
- call abort
+ STOP 1
endif
end
diff --git a/gcc/testsuite/gfortran.dg/pr17164.f90 b/gcc/testsuite/gfortran.dg/pr17164.f90
index c9b4d4537d7..92632efbbef 100644
--- a/gcc/testsuite/gfortran.dg/pr17164.f90
+++ b/gcc/testsuite/gfortran.dg/pr17164.f90
@@ -8,6 +8,6 @@
integer i
x='12345'
i=index(x,'blablabl')
- if (i.ne.0) call abort
+ if (i.ne.0) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr17229.f b/gcc/testsuite/gfortran.dg/pr17229.f
index 65f72b04d10..172f106b746 100644
--- a/gcc/testsuite/gfortran.dg/pr17229.f
+++ b/gcc/testsuite/gfortran.dg/pr17229.f
@@ -20,5 +20,5 @@
if (l) if (i) 999,999,30 ! { dg-warning "Obsolescent feature" }
go to 999
- 999 call abort
+ 999 STOP 1
30 end
diff --git a/gcc/testsuite/gfortran.dg/pr17285.f90 b/gcc/testsuite/gfortran.dg/pr17285.f90
index 58aee327aef..d96b901d6d4 100644
--- a/gcc/testsuite/gfortran.dg/pr17285.f90
+++ b/gcc/testsuite/gfortran.dg/pr17285.f90
@@ -19,7 +19,7 @@ program pr17285
number = 0
read (10, nml = mynml, iostat = ierr)
if ((ierr /= 0) .or. (any (number /= 42))) &
- call abort ()
+ STOP 1
end do
close(10)
end program pr17285
diff --git a/gcc/testsuite/gfortran.dg/pr17286.f90 b/gcc/testsuite/gfortran.dg/pr17286.f90
index e9beb6d375d..17d58af9991 100644
--- a/gcc/testsuite/gfortran.dg/pr17286.f90
+++ b/gcc/testsuite/gfortran.dg/pr17286.f90
@@ -28,7 +28,7 @@
if (dbg) write(*,mynml1)
else
if (dbg) print *, 'expected 16 32 got ',num1,num2
- call abort
+ STOP 1
endif
num3 = -1
num4 = -1
@@ -37,7 +37,7 @@
if (dbg) write(*,mynml2)
else
if (dbg) print *, 'expected 42 56 got ',num3,num4
- call abort
+ STOP 2
endif
close(10)
diff --git a/gcc/testsuite/gfortran.dg/pr17472.f b/gcc/testsuite/gfortran.dg/pr17472.f
index 4a1ecd937be..1e2df823da7 100644
--- a/gcc/testsuite/gfortran.dg/pr17472.f
+++ b/gcc/testsuite/gfortran.dg/pr17472.f
@@ -7,6 +7,6 @@ c Based on example provided by thomas.koenig@online.de
data a / 1,2,3,4,5,6,7,8,9,10 /
namelist /ints/ a
do ctr = 1,10
- if (a(ctr).ne.ctr) call abort ()
+ if (a(ctr).ne.ctr) STOP 1
end do
end
diff --git a/gcc/testsuite/gfortran.dg/pr17612.f90 b/gcc/testsuite/gfortran.dg/pr17612.f90
index 1b6853269ab..25b5f67a52a 100644
--- a/gcc/testsuite/gfortran.dg/pr17612.f90
+++ b/gcc/testsuite/gfortran.dg/pr17612.f90
@@ -15,7 +15,7 @@ program prog
! A full arrays.
c = (/"ab","cd","ef","gh"/)
call n(p)
- if (any (c /= p%els)) call abort
+ if (any (c /= p%els)) STOP 1
! An array section that needs a new array descriptor.
v%s(1) = "hello"
v%s(2) = "world"
@@ -30,7 +30,7 @@ contains
subroutine test(s)
character(len=*) :: s(:)
- if ((len (s) .ne. 5) .or. (any (s .ne. (/"hello", "world"/)))) call abort
+ if ((len (s) .ne. 5) .or. (any (s .ne. (/"hello", "world"/)))) STOP 2
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.dg/pr17706.f90 b/gcc/testsuite/gfortran.dg/pr17706.f90
index 5ddda3d35da..afe2179214f 100644
--- a/gcc/testsuite/gfortran.dg/pr17706.f90
+++ b/gcc/testsuite/gfortran.dg/pr17706.f90
@@ -13,13 +13,13 @@ program pr17706
s = x
write (s, '(F4.1)') small
! The plus is optional. We choose not to display it.
- if (s .ne. " 0.0") call abort
+ if (s .ne. " 0.0") STOP 1
s = x
write (s, '(SS,F4.1)') small
- if (s .ne. " 0.0") call abort
+ if (s .ne. " 0.0") STOP 2
s = x
write (s, '(SP,F4.1)') small
- if (s .ne. "+0.0") call abort
+ if (s .ne. "+0.0") STOP 3
end program
diff --git a/gcc/testsuite/gfortran.dg/pr18025.f90 b/gcc/testsuite/gfortran.dg/pr18025.f90
index 26d5c01e023..3c960e53b0d 100644
--- a/gcc/testsuite/gfortran.dg/pr18025.f90
+++ b/gcc/testsuite/gfortran.dg/pr18025.f90
@@ -2,7 +2,7 @@
! { dg-do run }
character(len=80) :: c
write(c, "('#',F0.2,'#')") 1.23
- if (c /= '#1.23#') call abort
+ if (c /= '#1.23#') STOP 1
write(c, "('#',F0.2,'#')") -1.23
- if (c /= '#-1.23#') call abort
+ if (c /= '#-1.23#') STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/pr18122.f90 b/gcc/testsuite/gfortran.dg/pr18122.f90
index 3907f0ae158..dda96e26c7b 100644
--- a/gcc/testsuite/gfortran.dg/pr18122.f90
+++ b/gcc/testsuite/gfortran.dg/pr18122.f90
@@ -41,5 +41,5 @@ program sechs_w
if ((z /= 1) .or. (dg /= 58.4_dr) .or. (a /= 48.0_dr) .or. &
(delta /= 0.4_dr).or. (s /= 0.4_dr) .or. (nk /= 6) .or. &
(rb(1) /= 60._dr).or. (rb(2) /= 0.0_dr).or. (rb(3) /=40.0_dr).or. &
- (alpha0 /= 20.0_dr)) call abort ()
+ (alpha0 /= 20.0_dr)) STOP 1
end program sechs_w
diff --git a/gcc/testsuite/gfortran.dg/pr18210.f90 b/gcc/testsuite/gfortran.dg/pr18210.f90
index 85c5afa3e95..b18d4c459ba 100644
--- a/gcc/testsuite/gfortran.dg/pr18210.f90
+++ b/gcc/testsuite/gfortran.dg/pr18210.f90
@@ -15,9 +15,9 @@ program pr18210
write (10,foo)
rewind (10)
read (10, '(a)') buffer
- if (buffer(2:4) /= "FOO") call abort ()
+ if (buffer(2:4) /= "FOO") STOP 1
read (10, '(a)') buffer
- if (buffer(1:2) /= " A") call abort ()
+ if (buffer(1:2) /= " A") STOP 2
close (10)
end program pr18210
diff --git a/gcc/testsuite/gfortran.dg/pr18392.f90 b/gcc/testsuite/gfortran.dg/pr18392.f90
index de156f5a5fd..62c3a75f64f 100644
--- a/gcc/testsuite/gfortran.dg/pr18392.f90
+++ b/gcc/testsuite/gfortran.dg/pr18392.f90
@@ -18,5 +18,5 @@ program pr18392
rewind (10)
read (10,nl)
close (10)
- IF (a%a /= 10.0) call abort ()
+ IF (a%a /= 10.0) STOP 1
end program pr18392
diff --git a/gcc/testsuite/gfortran.dg/pr19155.f b/gcc/testsuite/gfortran.dg/pr19155.f
index 770b008f9d9..753a1d61c59 100644
--- a/gcc/testsuite/gfortran.dg/pr19155.f
+++ b/gcc/testsuite/gfortran.dg/pr19155.f
@@ -12,10 +12,10 @@
write (19,'(A15)') 'E+00'
rewind (19)
read (19,'(E15.8)') a
- if (a .ne. 0) call abort
+ if (a .ne. 0) STOP 1
close (19)
c = "+ "
read (c,"(F10.4)") a
- if (a /= 0) call abort
+ if (a /= 0) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/pr19216.f b/gcc/testsuite/gfortran.dg/pr19216.f
index 76c393836c9..e63aeba436f 100644
--- a/gcc/testsuite/gfortran.dg/pr19216.f
+++ b/gcc/testsuite/gfortran.dg/pr19216.f
@@ -9,10 +9,10 @@
write (20,'(A)') '5 6 7 8'
rewind (20)
read (20,*) (dat(i), i=1,3)
- if (dat(1).ne.3 .or. dat(2).ne.2 .or. dat(3).ne.1) call abort
+ if (dat(1).ne.3 .or. dat(2).ne.2 .or. dat(3).ne.1) STOP 1
read (20,*) I,J
- if (i .ne. 1 .or. j .ne. 2) call abort
+ if (i .ne. 1 .or. j .ne. 2) STOP 2
read (20,*) I,J
- if (i .ne. 5 .or. j .ne. 6) call abort
+ if (i .ne. 5 .or. j .ne. 6) STOP 3
close(20)
end
diff --git a/gcc/testsuite/gfortran.dg/pr19467.f90 b/gcc/testsuite/gfortran.dg/pr19467.f90
index ab4fa99c40b..5b4fbf327cb 100644
--- a/gcc/testsuite/gfortran.dg/pr19467.f90
+++ b/gcc/testsuite/gfortran.dg/pr19467.f90
@@ -14,5 +14,5 @@ program pr19467
rewind (10)
READ (10,nml=a, iostat = ier)
close (10)
- if ((ier /= 0) .or. (any (ch /= dh))) call abort ()
+ if ((ier /= 0) .or. (any (ch /= dh))) STOP 1
end program pr19467
diff --git a/gcc/testsuite/gfortran.dg/pr19657.f b/gcc/testsuite/gfortran.dg/pr19657.f
index 1fe32ac7497..a2b6d73229b 100644
--- a/gcc/testsuite/gfortran.dg/pr19657.f
+++ b/gcc/testsuite/gfortran.dg/pr19657.f
@@ -15,7 +15,7 @@ c Based on example provided by fuyuki@ccsr.u-tokyo.ac.jp
rewind (10)
do ctr = 1,3
read (10,nm,end=190)
- if (i.ne.ctr) call abort ()
+ if (i.ne.ctr) STOP 1
enddo
190 continue
end
diff --git a/gcc/testsuite/gfortran.dg/pr19926.f90 b/gcc/testsuite/gfortran.dg/pr19926.f90
index 3b452c1cf65..f24ebfff5ee 100644
--- a/gcc/testsuite/gfortran.dg/pr19926.f90
+++ b/gcc/testsuite/gfortran.dg/pr19926.f90
@@ -10,11 +10,11 @@ program a
type(cat) z
integer :: i = 0, j(4,3,2) = 0
call string_comp(i)
- if (i /= 3) call abort
+ if (i /= 3) STOP 1
call string_comp(z%i)
- if (z%i /= 3) call abort
+ if (z%i /= 3) STOP 2
call string_comp(j(1,2,1))
- if (j(1,2,1) /= 3) call abort
+ if (j(1,2,1) /= 3) STOP 3
end program a
subroutine string_comp(i)
diff --git a/gcc/testsuite/gfortran.dg/pr19928-1.f90 b/gcc/testsuite/gfortran.dg/pr19928-1.f90
index a8b04d8e5e4..7a2ecad3baf 100644
--- a/gcc/testsuite/gfortran.dg/pr19928-1.f90
+++ b/gcc/testsuite/gfortran.dg/pr19928-1.f90
@@ -7,5 +7,5 @@ program main
character (len = 3), dimension (2) :: b
a = (/ 'abcde', 'ghijk' /)
b = a(:)(2:4)
- if (b(1) .ne. 'bcd' .or. b(2) .ne. 'hij') call abort
+ if (b(1) .ne. 'bcd' .or. b(2) .ne. 'hij') STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/pr19928-2.f90 b/gcc/testsuite/gfortran.dg/pr19928-2.f90
index 6bfdd0f30b2..240be7272ea 100644
--- a/gcc/testsuite/gfortran.dg/pr19928-2.f90
+++ b/gcc/testsuite/gfortran.dg/pr19928-2.f90
@@ -10,10 +10,10 @@ program main
forall (i = 1:2, j = 1:5) a(i)%field(j) = i * 100 + j
calls = 0
- if (sum (a%field(foo(calls))) .ne. 304) call abort
- if (calls .ne. 1) call abort
- if (sum (a(foo(calls))%field) .ne. 1015) call abort
- if (calls .ne. 2) call abort
+ if (sum (a%field(foo(calls))) .ne. 304) STOP 1
+ if (calls .ne. 1) STOP 2
+ if (sum (a(foo(calls))%field) .ne. 1015) STOP 3
+ if (calls .ne. 2) STOP 4
contains
function foo (calls)
integer :: calls, foo
diff --git a/gcc/testsuite/gfortran.dg/pr20086.f90 b/gcc/testsuite/gfortran.dg/pr20086.f90
index 26b53276dc3..674261e3cf7 100644
--- a/gcc/testsuite/gfortran.dg/pr20086.f90
+++ b/gcc/testsuite/gfortran.dg/pr20086.f90
@@ -5,9 +5,9 @@
implicit none
character*80 line
write(line,2070)
- if (line.ne.' stiffness reformed for this high step')call abort
+ if (line.ne.' stiffness reformed for this high step')STOP 1
write(line,2090)
- if (line.ne.' stiffness reformed for hello hello')call abort
+ if (line.ne.' stiffness reformed for hello hello')STOP 2
stop
2070 format (2x,37hstiffness reformed for this high step)
diff --git a/gcc/testsuite/gfortran.dg/pr20124.f90 b/gcc/testsuite/gfortran.dg/pr20124.f90
index 5d05abf6eb1..0e3f34d6664 100644
--- a/gcc/testsuite/gfortran.dg/pr20124.f90
+++ b/gcc/testsuite/gfortran.dg/pr20124.f90
@@ -6,5 +6,5 @@
x = -.01
y = .01
write(line,'(2f10.2)') x, y
- if (line.ne.' -0.01 0.01') call abort
+ if (line.ne.' -0.01 0.01') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr20163-2.f b/gcc/testsuite/gfortran.dg/pr20163-2.f
index 5849cfcb2f3..7b641ea906a 100644
--- a/gcc/testsuite/gfortran.dg/pr20163-2.f
+++ b/gcc/testsuite/gfortran.dg/pr20163-2.f
@@ -1,6 +1,6 @@
! { dg-do run }
open(10,status="foo",err=100) ! { dg-warning "STATUS specifier in OPEN statement .* has invalid value" }
- call abort
+ STOP 1
100 continue
open(10,status="scratch")
end
diff --git a/gcc/testsuite/gfortran.dg/pr20480.f90 b/gcc/testsuite/gfortran.dg/pr20480.f90
index 12e53009d91..ff2dd50e9f0 100644
--- a/gcc/testsuite/gfortran.dg/pr20480.f90
+++ b/gcc/testsuite/gfortran.dg/pr20480.f90
@@ -3,7 +3,7 @@
! fxcoudert@gcc.gnu.org
character(len=80) c
write (c,'(ES12.3)') 0.0
- if (trim(adjustl(c)) .ne. '0.000E+00') call abort ()
+ if (trim(adjustl(c)) .ne. '0.000E+00') STOP 1
write (c,'(EN12.3)') 0.0
- if (trim(adjustl(c)) .ne. '0.000E+00') call abort ()
+ if (trim(adjustl(c)) .ne. '0.000E+00') STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/pr20755.f b/gcc/testsuite/gfortran.dg/pr20755.f
index 4a9b69cad57..351f1cf21bd 100644
--- a/gcc/testsuite/gfortran.dg/pr20755.f
+++ b/gcc/testsuite/gfortran.dg/pr20755.f
@@ -5,8 +5,8 @@
character*30 s
write (s,2000) 0.0, 0.02
- if (s .ne. " 0.00 2.000E-02") call abort
+ if (s .ne. " 0.00 2.000E-02") STOP 1
write (s,2000) 0.01, 0.02
- if (s .ne. " 1.000E-02 2.000E-02") call abort
+ if (s .ne. " 1.000E-02 2.000E-02") STOP 2
2000 format (1PG12.3,G12.3)
end
diff --git a/gcc/testsuite/gfortran.dg/pr20950.f b/gcc/testsuite/gfortran.dg/pr20950.f
index 942696c618f..8b8beb81bc6 100644
--- a/gcc/testsuite/gfortran.dg/pr20950.f
+++ b/gcc/testsuite/gfortran.dg/pr20950.f
@@ -5,5 +5,5 @@
!
character*20 c
inquire (33, sequential = c)
- if (c .ne. "UNKNOWN") call abort
+ if (c .ne. "UNKNOWN") STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr21177.f90 b/gcc/testsuite/gfortran.dg/pr21177.f90
index 8ce0180dfc1..a2085007736 100644
--- a/gcc/testsuite/gfortran.dg/pr21177.f90
+++ b/gcc/testsuite/gfortran.dg/pr21177.f90
@@ -40,14 +40,14 @@ program test
complex(4), pointer :: c4
complex(8), pointer :: c8
- if (tt(l) /= 0) call abort()
- if (tt(i) /= 1) call abort()
- if (tt(r) /= 2) call abort()
- if (tt(c4) /= 3) call abort()
- if (tt(c8) /= 4) call abort()
- if (tt(null(l)) /= 0) call abort()
- if (tt(null(i)) /= 1) call abort()
- if (tt(null(r)) /= 2) call abort()
- if (tt(null(c4)) /= 3) call abort()
- if (tt(null(c8)) /= 4) call abort()
+ if (tt(l) /= 0) STOP 1
+ if (tt(i) /= 1) STOP 2
+ if (tt(r) /= 2) STOP 3
+ if (tt(c4) /= 3) STOP 4
+ if (tt(c8) /= 4) STOP 5
+ if (tt(null(l)) /= 0) STOP 6
+ if (tt(null(i)) /= 1) STOP 7
+ if (tt(null(r)) /= 2) STOP 8
+ if (tt(null(c4)) /= 3) STOP 9
+ if (tt(null(c8)) /= 4) STOP 10
end program test
diff --git a/gcc/testsuite/gfortran.dg/pr21730.f b/gcc/testsuite/gfortran.dg/pr21730.f
index 1fe19edfae4..88a08dde46a 100644
--- a/gcc/testsuite/gfortran.dg/pr21730.f
+++ b/gcc/testsuite/gfortran.dg/pr21730.f
@@ -8,6 +8,6 @@
parameter (a="12")
parameter (b = a)
write (c,'("#",A,"#")') b
- if (c .ne. '#12 #') call abort
+ if (c .ne. '#12 #') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr22491.f b/gcc/testsuite/gfortran.dg/pr22491.f
index 70210f6b095..f28b0f31918 100644
--- a/gcc/testsuite/gfortran.dg/pr22491.f
+++ b/gcc/testsuite/gfortran.dg/pr22491.f
@@ -8,6 +8,6 @@
parameter (a="12")
parameter (b = a)
write (c,'("#",A,"#")') b
- if (c .ne. '#12 #') call abort
+ if (c .ne. '#12 #') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr25603.f b/gcc/testsuite/gfortran.dg/pr25603.f
index fbcbdf51a93..52855c33cbd 100644
--- a/gcc/testsuite/gfortran.dg/pr25603.f
+++ b/gcc/testsuite/gfortran.dg/pr25603.f
@@ -41,7 +41,7 @@ C
DIMENSION WORK(*)
if (XSTART .NE. 201.0) then
- call abort
+ STOP 1
endif
LHELPA = 1
diff --git a/gcc/testsuite/gfortran.dg/pr26246_2.f90 b/gcc/testsuite/gfortran.dg/pr26246_2.f90
index 3ed2c12653e..d551fa02a0a 100644
--- a/gcc/testsuite/gfortran.dg/pr26246_2.f90
+++ b/gcc/testsuite/gfortran.dg/pr26246_2.f90
@@ -6,7 +6,7 @@ subroutine foo(string, n)
implicit none
integer :: n
character(len=n + 6), intent(in) :: string
- if (string .eq. 'abc') call abort
+ if (string .eq. 'abc') STOP 1
end subroutine foo
! { dg-final { scan-tree-dump-times "static int" 0 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/pr32136.f90 b/gcc/testsuite/gfortran.dg/pr32136.f90
index 304b7b4a212..ae99d9eed5c 100644
--- a/gcc/testsuite/gfortran.dg/pr32136.f90
+++ b/gcc/testsuite/gfortran.dg/pr32136.f90
@@ -6,6 +6,6 @@
!
real(kind(0d0)), parameter :: r(1) = &
transfer(transfer(sqrt(2d0), (/ .true. /) ), (/ 0d0 /), 1)
- if (r(1) .ne. sqrt(2d0)) call abort ()
+ if (r(1) .ne. sqrt(2d0)) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr32533.f90 b/gcc/testsuite/gfortran.dg/pr32533.f90
index c312415eb02..f13da82201b 100644
--- a/gcc/testsuite/gfortran.dg/pr32533.f90
+++ b/gcc/testsuite/gfortran.dg/pr32533.f90
@@ -14,5 +14,5 @@ REAL(dp) :: sab_max(3), subcells,nsubcell(3)
subcells=2.0_dp
sab_max=0.590060749244805_dp
CALL T(nsubcell,sab_max,subcells)
-IF (ANY(nsubcell.NE.2.0_dp)) CALL ABORT()
+IF (ANY(nsubcell.NE.2.0_dp)) STOP 1
END
diff --git a/gcc/testsuite/gfortran.dg/pr33794.f90 b/gcc/testsuite/gfortran.dg/pr33794.f90
index affad5eb66e..0fc931b4505 100644
--- a/gcc/testsuite/gfortran.dg/pr33794.f90
+++ b/gcc/testsuite/gfortran.dg/pr33794.f90
@@ -30,7 +30,7 @@ contains
tan(alpha)**2)
expected = 3.66008420600434162E-002_dp
if (abs(self_l - expected) / expected > 1e-3) &
- call abort
+ STOP 1
end subroutine self_ind_cir_coil
end module scc_m
diff --git a/gcc/testsuite/gfortran.dg/pr35662.f90 b/gcc/testsuite/gfortran.dg/pr35662.f90
index 33095f0026d..994cb42ae62 100644
--- a/gcc/testsuite/gfortran.dg/pr35662.f90
+++ b/gcc/testsuite/gfortran.dg/pr35662.f90
@@ -13,8 +13,8 @@ program pr35662
real :: x, y, z
x = 3.1415926535897932384626433832795029
call f (x, y, z)
- if (abs (y) > 1.0e-5 .or. abs (z + 1.0) > 1.0e-5) call abort
+ if (abs (y) > 1.0e-5 .or. abs (z + 1.0) > 1.0e-5) STOP 1
x = x / 2.0
call f (x, y, z)
- if (abs (y - 1.0) > 1.0e-5 .or. abs (z) > 1.0e-5) call abort
+ if (abs (y - 1.0) > 1.0e-5 .or. abs (z) > 1.0e-5) STOP 2
end program pr35662
diff --git a/gcc/testsuite/gfortran.dg/pr35944-1.f90 b/gcc/testsuite/gfortran.dg/pr35944-1.f90
index 76521cad9e9..0886f65165c 100644
--- a/gcc/testsuite/gfortran.dg/pr35944-1.f90
+++ b/gcc/testsuite/gfortran.dg/pr35944-1.f90
@@ -9,14 +9,14 @@
rDA1 = MOD (1.1*(rDA(1)-5.0), P=(rDA-2.5))
DO i = 1, 10
rVAL = MOD (1.1*(rDA(1)-5.0), P=(rDA(i)-2.5))
- if (rval /= rda1(i)) call abort
+ if (rval /= rda1(i)) STOP 1
enddo
dda = (/ 1,2,3,4,5,6,7,8,9,10 /)
dDA1 = MOD (1.1d0*(dDA(1)-5.0d0), P=(dDA-2.5d0))
DO i = 1, 10
dVAL = MOD (1.1d0*(dDA(1)-5.0d0), P=(dDA(i)-2.5d0))
- if (dval /= dda1(i)) call abort
+ if (dval /= dda1(i)) STOP 2
enddo
end
diff --git a/gcc/testsuite/gfortran.dg/pr35944-2.f90 b/gcc/testsuite/gfortran.dg/pr35944-2.f90
index 976332ded00..f2de2f4cd7c 100644
--- a/gcc/testsuite/gfortran.dg/pr35944-2.f90
+++ b/gcc/testsuite/gfortran.dg/pr35944-2.f90
@@ -10,6 +10,6 @@
QDA1 = MOD (1.1_k*(QDA(1)-5.0_k), P=(QDA-2.5_k))
DO i = 1, 10
QVAL = MOD (1.1_k*(QDA(1)-5.0_k), P=(QDA(i)-2.5_k))
- if (qval /= qda1(i)) call abort
+ if (qval /= qda1(i)) STOP 1
enddo
end
diff --git a/gcc/testsuite/gfortran.dg/pr35983.f90 b/gcc/testsuite/gfortran.dg/pr35983.f90
index 5cc38550294..aaa44d4224a 100644
--- a/gcc/testsuite/gfortran.dg/pr35983.f90
+++ b/gcc/testsuite/gfortran.dg/pr35983.f90
@@ -19,6 +19,6 @@ program main
DD = descr(c_loc(buf))
i = transfer (DD%address, 0_c_intptr_t)
j = transfer (c_loc(buf), 0_c_intptr_t)
- if (any((/ i,j /) == 0_c_intptr_t)) call abort
- if (i /= j) call abort
+ if (any((/ i,j /) == 0_c_intptr_t)) STOP 1
+ if (i /= j) STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/pr39865.f90 b/gcc/testsuite/gfortran.dg/pr39865.f90
index fac34367422..8e886f76a54 100644
--- a/gcc/testsuite/gfortran.dg/pr39865.f90
+++ b/gcc/testsuite/gfortran.dg/pr39865.f90
@@ -6,11 +6,11 @@ subroutine f1 (a)
character(len=12) :: b
character(len=1) :: c(2:10)
write (b, a) 'Hell', 'o wo', 'rld!'
- if (b .ne. 'Hello world!') call abort
+ if (b .ne. 'Hello world!') STOP 1
write (b, a(:)) 'hell', 'o Wo', 'rld!'
- if (b .ne. 'hello World!') call abort
+ if (b .ne. 'hello World!') STOP 2
write (b, a(8:)) 'Hell', 'o wo', 'rld!'
- if (b .ne. 'Hello world!') call abort
+ if (b .ne. 'Hello world!') STOP 3
c(2) = ' '
c(3) = '('
c(4) = '3'
@@ -18,20 +18,20 @@ subroutine f1 (a)
c(6) = '4'
c(7) = ')'
write (b, c) 'hell', 'o Wo', 'rld!'
- if (b .ne. 'hello World!') call abort
+ if (b .ne. 'hello World!') STOP 4
write (b, c(:)) 'Hell', 'o wo', 'rld!'
- if (b .ne. 'Hello world!') call abort
+ if (b .ne. 'Hello world!') STOP 5
write (b, c(3:)) 'hell', 'o Wo', 'rld!'
- if (b .ne. 'hello World!') call abort
+ if (b .ne. 'hello World!') STOP 6
end subroutine f1
subroutine f2 (a)
character(len=1) :: a(10:,20:)
character(len=12) :: b
write (b, a) 'Hell', 'o wo', 'rld!'
- if (b .ne. 'Hello world!') call abort
+ if (b .ne. 'Hello world!') STOP 7
write (b, a) 'hell', 'o Wo', 'rld!'
- if (b .ne. 'hello World!') call abort
+ if (b .ne. 'hello World!') STOP 8
end subroutine f2
function f3 ()
@@ -80,5 +80,5 @@ end function f3
call f2 (f)
call f2 (e(2:4,8:9))
write (b, f3 ()) 'Hell', 'o wo', 'rld!'
- if (b .ne. 'Hello world!') call abort
+ if (b .ne. 'Hello world!') STOP 9
end
diff --git a/gcc/testsuite/gfortran.dg/pr41212.f90 b/gcc/testsuite/gfortran.dg/pr41212.f90
index 4bdae6dad28..efec4bd79f6 100644
--- a/gcc/testsuite/gfortran.dg/pr41212.f90
+++ b/gcc/testsuite/gfortran.dg/pr41212.f90
@@ -3,7 +3,7 @@
program m
double precision :: y,z
call b(1.0d0,y,z)
- if (ABS (z - 1.213) > 0.1) call abort
+ if (ABS (z - 1.213) > 0.1) STOP 1
contains
subroutine b( x, y, z)
implicit none
diff --git a/gcc/testsuite/gfortran.dg/pr43808.f90 b/gcc/testsuite/gfortran.dg/pr43808.f90
index 97de6289286..a8919ab6a0c 100644
--- a/gcc/testsuite/gfortran.dg/pr43808.f90
+++ b/gcc/testsuite/gfortran.dg/pr43808.f90
@@ -14,5 +14,5 @@
x(2) = a((/1,2,3,4/)+10)
y(1) = b((/x(1),x(2)/))
y(2) = b((/x(1),x(2)/))
- if (y(1)%j(1)%i(1) .ne. 1) call abort
+ if (y(1)%j(1)%i(1) .ne. 1) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr44592.f90 b/gcc/testsuite/gfortran.dg/pr44592.f90
index 8b043ba33ed..a6a2391bfbf 100644
--- a/gcc/testsuite/gfortran.dg/pr44592.f90
+++ b/gcc/testsuite/gfortran.dg/pr44592.f90
@@ -16,5 +16,5 @@
if (any (b .ne. (/"1","1","2","3"/))) i = 2
print *, b
print *, b .ne. (/"1","1","2","3"/)
- if (i == 2) call abort
+ if (i == 2) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr44735.f90 b/gcc/testsuite/gfortran.dg/pr44735.f90
index 0c9b8dec18c..3ba7bbad0f6 100644
--- a/gcc/testsuite/gfortran.dg/pr44735.f90
+++ b/gcc/testsuite/gfortran.dg/pr44735.f90
@@ -1,7 +1,7 @@
! { dg-do run }
program main
- if (bug() /= "abcdefghij") call abort
+ if (bug() /= "abcdefghij") STOP 1
contains
function bug()
character(len=10) :: bug
diff --git a/gcc/testsuite/gfortran.dg/pr45308.f03 b/gcc/testsuite/gfortran.dg/pr45308.f03
index ba96104b02c..b5b4f634d1d 100644
--- a/gcc/testsuite/gfortran.dg/pr45308.f03
+++ b/gcc/testsuite/gfortran.dg/pr45308.f03
@@ -5,5 +5,5 @@
time = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
call date_and_time (date, time)
if (index (date, 'a') /= 0 .or. index (time, 'a') /= 0) &
- call abort
+ STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr46297.f b/gcc/testsuite/gfortran.dg/pr46297.f
index 333576064f7..cf99324bc19 100644
--- a/gcc/testsuite/gfortran.dg/pr46297.f
+++ b/gcc/testsuite/gfortran.dg/pr46297.f
@@ -17,9 +17,9 @@
real r1(5), r2(5), r3(5)
real s1(2), s2(2), s3(2)
double precision d1, d2, d3
- if (s1(1) .ne. 1.) call abort
- if (s3(1) .ne. 3.) call abort
- if (r3(1) .ne. 3.) call abort
- if (d3 .ne. 30.) call abort
- if (i3 .ne. 3) call abort
+ if (s1(1) .ne. 1.) STOP 1
+ if (s3(1) .ne. 3.) STOP 2
+ if (r3(1) .ne. 3.) STOP 3
+ if (d3 .ne. 30.) STOP 4
+ if (i3 .ne. 3) STOP 5
end
diff --git a/gcc/testsuite/gfortran.dg/pr46588.f90 b/gcc/testsuite/gfortran.dg/pr46588.f90
index 420fb4b2e90..1b4d78d8e4c 100644
--- a/gcc/testsuite/gfortran.dg/pr46588.f90
+++ b/gcc/testsuite/gfortran.dg/pr46588.f90
@@ -17,5 +17,5 @@ program ds
character(len = 4) :: ins = ' no!'
character(len = 20) st, aufun
st = aufun(ins)
- if (trim(st) /= 'Oh no!') call abort
+ if (trim(st) /= 'Oh no!') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr46665.f90 b/gcc/testsuite/gfortran.dg/pr46665.f90
index c59e7eaf5d8..ccf87520405 100644
--- a/gcc/testsuite/gfortran.dg/pr46665.f90
+++ b/gcc/testsuite/gfortran.dg/pr46665.f90
@@ -10,12 +10,12 @@ contains
integer, dimension (3) :: expected
integer :: i, i1, i2, i3
do i = 1, 3
- if (size (x, i) .ne. expected (i)) call abort
+ if (size (x, i) .ne. expected (i)) STOP 1
end do
do i1 = 1, expected (1)
do i2 = 1, expected (2)
do i3 = 1, expected (3)
- if (x (i1, i2, i3) .ne. i1 + i2 * 10 + i3 * 100) call abort
+ if (x (i1, i2, i3) .ne. i1 + i2 * 10 + i3 * 100) STOP 2
end do
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/pr46804.f90 b/gcc/testsuite/gfortran.dg/pr46804.f90
index ee44a56c897..9297b730705 100644
--- a/gcc/testsuite/gfortran.dg/pr46804.f90
+++ b/gcc/testsuite/gfortran.dg/pr46804.f90
@@ -28,7 +28,7 @@ contains
do i2 = 1, n2
do i1 = 1, n1
i2p = mod (shift1 (i1, i3) + i2 - 1, n2) + 1
- if (b (i1, i2, i3) .ne. a (i1, i2p, i3)) call abort
+ if (b (i1, i2, i3) .ne. a (i1, i2p, i3)) STOP 1
end do
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/pr47008.f03 b/gcc/testsuite/gfortran.dg/pr47008.f03
index a3e1e1dae0b..e35f8399b73 100644
--- a/gcc/testsuite/gfortran.dg/pr47008.f03
+++ b/gcc/testsuite/gfortran.dg/pr47008.f03
@@ -12,7 +12,7 @@ program main
allocate (p)
p = t (123455, "", p)
r => entry ("", 123456, 1, "", 99, "", p)
- if (p%i /= 123455) call abort
+ if (p%i /= 123455) STOP 1
contains
function entry (x, i, j, c, k, d, p) result (q)
integer :: i, j, k
diff --git a/gcc/testsuite/gfortran.dg/pr47614.f b/gcc/testsuite/gfortran.dg/pr47614.f
index 2317d72a66e..500d210a2a4 100644
--- a/gcc/testsuite/gfortran.dg/pr47614.f
+++ b/gcc/testsuite/gfortran.dg/pr47614.f
@@ -33,5 +33,5 @@
50 continue
call sfcpar(ar1,10,d2,d3,d1)
- if (d1.ne.10.0) call abort()
+ if (d1.ne.10.0) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr47878.f90 b/gcc/testsuite/gfortran.dg/pr47878.f90
index c9227f40007..f2a0f4d05fc 100644
--- a/gcc/testsuite/gfortran.dg/pr47878.f90
+++ b/gcc/testsuite/gfortran.dg/pr47878.f90
@@ -5,6 +5,6 @@
write (99, '(5i3)') 1, 2, 3
rewind (99)
read (99, '(5i3)') a
- if (any (a.ne.(/1, 2, 3, 0, 0/))) call abort
+ if (any (a.ne.(/1, 2, 3, 0, 0/))) STOP 1
close (99, status = 'delete')
end
diff --git a/gcc/testsuite/gfortran.dg/pr49103.f90 b/gcc/testsuite/gfortran.dg/pr49103.f90
index e744c9bbe7f..90c6456fdca 100644
--- a/gcc/testsuite/gfortran.dg/pr49103.f90
+++ b/gcc/testsuite/gfortran.dg/pr49103.f90
@@ -13,7 +13,7 @@
rewind (10)
do i = 0, 7
read (10, *) a
- if (any (a .ne. mod (i, 2))) call abort
+ if (any (a .ne. mod (i, 2))) STOP 1
end do
close (10)
end
diff --git a/gcc/testsuite/gfortran.dg/pr50069_1.f90 b/gcc/testsuite/gfortran.dg/pr50069_1.f90
index 74890fad6c4..125d052a9cd 100644
--- a/gcc/testsuite/gfortran.dg/pr50069_1.f90
+++ b/gcc/testsuite/gfortran.dg/pr50069_1.f90
@@ -5,5 +5,5 @@
character(LEN=6) :: a(1) = "123456"
forall (i = 3:4) a(1)(i:i+2) = a(1)(i-2:i)
!print *,a ! displays '12@' must be '121234'
- IF (a(1) .ne. "121234") call abort
+ IF (a(1) .ne. "121234") STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr50769.f90 b/gcc/testsuite/gfortran.dg/pr50769.f90
index 3a98543e3a6..a19d07663a7 100644
--- a/gcc/testsuite/gfortran.dg/pr50769.f90
+++ b/gcc/testsuite/gfortran.dg/pr50769.f90
@@ -11,10 +11,10 @@ program test_iso
type(ivs) :: v_str
integer :: i
call foo(v_str, i)
- if (v_str%chars(1) .ne. "a") call abort
- if (i .ne. 0) call abort
+ if (v_str%chars(1) .ne. "a") STOP 1
+ if (i .ne. 0) STOP 2
call foo(flag = i)
- if (i .ne. 1) call abort
+ if (i .ne. 1) STOP 3
contains
subroutine foo (arg, flag)
type(ivs), optional, intent(out) :: arg
diff --git a/gcc/testsuite/gfortran.dg/pr52608.f90 b/gcc/testsuite/gfortran.dg/pr52608.f90
index a632800128f..305a56564e5 100644
--- a/gcc/testsuite/gfortran.dg/pr52608.f90
+++ b/gcc/testsuite/gfortran.dg/pr52608.f90
@@ -12,6 +12,6 @@ program fm110_snippet
" .8765 8.765 87.65")
WRITE (s,35043) AAVS,AAVS,AAVS
WRITE (s2,5043)
- if (s(2) /= s2(2)) call abort()
+ if (s(2) /= s2(2)) STOP 1
end program fm110_snippet
diff --git a/gcc/testsuite/gfortran.dg/pr55086_2.f90 b/gcc/testsuite/gfortran.dg/pr55086_2.f90
index d731da4a165..904dc1a9a3e 100644
--- a/gcc/testsuite/gfortran.dg/pr55086_2.f90
+++ b/gcc/testsuite/gfortran.dg/pr55086_2.f90
@@ -18,15 +18,15 @@
forall (j = 1:2) a(j:j) = b(j:j)
- if (a /= "12cdefg") call abort
+ if (a /= "12cdefg") STOP 1
forall (j = 2:3) a(j:j) = v(j:j)
- if (a /= "123defg") call abort
+ if (a /= "123defg") STOP 2
forall (j = 3:4) u(j:j) = b(j:j)
- if (a /= "1234efg") call abort
+ if (a /= "1234efg") STOP 3
forall (j = 4:5) u(j:j) = v(j:j)
- if (a /= "12345fg") call abort
+ if (a /= "12345fg") STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/pr55086_2_tfat.f90 b/gcc/testsuite/gfortran.dg/pr55086_2_tfat.f90
index 7d09ed1d8c1..8ea26820903 100644
--- a/gcc/testsuite/gfortran.dg/pr55086_2_tfat.f90
+++ b/gcc/testsuite/gfortran.dg/pr55086_2_tfat.f90
@@ -19,15 +19,15 @@
forall (j = 1:2) a(j:j) = b(j:j)
- if (a /= "12cdefg") call abort
+ if (a /= "12cdefg") STOP 1
forall (j = 2:3) a(j:j) = v(j:j)
- if (a /= "123defg") call abort
+ if (a /= "123defg") STOP 2
forall (j = 3:4) u(j:j) = b(j:j)
- if (a /= "1234efg") call abort
+ if (a /= "1234efg") STOP 3
forall (j = 4:5) u(j:j) = v(j:j)
- if (a /= "12345fg") call abort
+ if (a /= "12345fg") STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/pr55086_aliasing_dummy_4_tfat.f90 b/gcc/testsuite/gfortran.dg/pr55086_aliasing_dummy_4_tfat.f90
index 3c45c0a0dd0..b1a5c21cead 100644
--- a/gcc/testsuite/gfortran.dg/pr55086_aliasing_dummy_4_tfat.f90
+++ b/gcc/testsuite/gfortran.dg/pr55086_aliasing_dummy_4_tfat.f90
@@ -18,17 +18,17 @@ program test_f90
call test_sub(s%a(1, 1), 1000) ! Test the original problem.
- if ( any (s(1, 1)%a(:, :) /= reshape ([1111, 112, 121, 122], [2, 2]))) call abort ()
- if ( any (s(1, 2)%a(:, :) /= reshape ([1121, 122, 141, 142], [2, 2]))) call abort ()
- if ( any (s(2, 1)%a(:, :) /= reshape ([1112, 114, 122, 124], [2, 2]))) call abort ()
- if ( any (s(2, 2)%a(:, :) /= reshape ([1122, 124, 142, 144], [2, 2]))) call abort ()
+ if ( any (s(1, 1)%a(:, :) /= reshape ([1111, 112, 121, 122], [2, 2]))) STOP 1
+ if ( any (s(1, 2)%a(:, :) /= reshape ([1121, 122, 141, 142], [2, 2]))) STOP 2
+ if ( any (s(2, 1)%a(:, :) /= reshape ([1112, 114, 122, 124], [2, 2]))) STOP 3
+ if ( any (s(2, 2)%a(:, :) /= reshape ([1122, 124, 142, 144], [2, 2]))) STOP 4
call test_sub(s(1, 1)%a(:, :), 1000) ! Check "normal" references.
- if ( any (s(1, 1)%a(:, :) /= reshape ([2111,1112,1121,1122], [2, 2]))) call abort ()
- if ( any (s(1, 2)%a(:, :) /= reshape ([1121, 122, 141, 142], [2, 2]))) call abort ()
- if ( any (s(2, 1)%a(:, :) /= reshape ([1112, 114, 122, 124], [2, 2]))) call abort ()
- if ( any (s(2, 2)%a(:, :) /= reshape ([1122, 124, 142, 144], [2, 2]))) call abort ()
+ if ( any (s(1, 1)%a(:, :) /= reshape ([2111,1112,1121,1122], [2, 2]))) STOP 5
+ if ( any (s(1, 2)%a(:, :) /= reshape ([1121, 122, 141, 142], [2, 2]))) STOP 6
+ if ( any (s(2, 1)%a(:, :) /= reshape ([1112, 114, 122, 124], [2, 2]))) STOP 7
+ if ( any (s(2, 2)%a(:, :) /= reshape ([1122, 124, 142, 144], [2, 2]))) STOP 8
contains
subroutine test_sub(array, offset)
integer array(:, :), offset
diff --git a/gcc/testsuite/gfortran.dg/pr55330.f90 b/gcc/testsuite/gfortran.dg/pr55330.f90
index 2e05a27729a..8432e09f23d 100644
--- a/gcc/testsuite/gfortran.dg/pr55330.f90
+++ b/gcc/testsuite/gfortran.dg/pr55330.f90
@@ -16,7 +16,7 @@ contains
end subroutine
subroutine redirect_ (ch)
character(*) :: ch(:)
- if (ch(1) /= line) call abort ()
+ if (ch(1) /= line) STOP 1
end subroutine redirect_
end module global
@@ -35,8 +35,8 @@ contains
use global
type(point), pointer :: ptr
character(128) :: io(:)
- if (associated (ptr)) call abort ()
- if (io(1) .ne. line) call abort ()
+ if (associated (ptr)) STOP 2
+ if (io(1) .ne. line) STOP 3
end subroutine r
end module my_module
@@ -67,7 +67,7 @@ contains
end subroutine option_stopwatch_s
subroutine option_stopwatch_a (a)
character (*) :: a(:)
- if (any (a .ne. (/'hello ','hola! ','goddag'/))) call abort ()
+ if (any (a .ne. (/'hello ','hola! ','goddag'/))) STOP 4
end subroutine option_stopwatch_a
end program main
diff --git a/gcc/testsuite/gfortran.dg/pr56015.f90 b/gcc/testsuite/gfortran.dg/pr56015.f90
index 21d9d64280f..529be702762 100644
--- a/gcc/testsuite/gfortran.dg/pr56015.f90
+++ b/gcc/testsuite/gfortran.dg/pr56015.f90
@@ -11,6 +11,6 @@ program pr56015
contains
subroutine foo (p)
complex*16 p(10)
- if (any (p .ne. (-0.2d0, 0.1d0))) call abort
+ if (any (p .ne. (-0.2d0, 0.1d0))) STOP 1
end subroutine
end program pr56015
diff --git a/gcc/testsuite/gfortran.dg/pr57910.f90 b/gcc/testsuite/gfortran.dg/pr57910.f90
index c3666a6fcd8..7da3d38c09d 100644
--- a/gcc/testsuite/gfortran.dg/pr57910.f90
+++ b/gcc/testsuite/gfortran.dg/pr57910.f90
@@ -10,7 +10,7 @@ program strtest
my_str = fstr(slen)
if (slen /= slen_init .or. len(my_str) /= slen .or. my_str /= ' ') then
- call abort
+ STOP 1
endif
contains
diff --git a/gcc/testsuite/gfortran.dg/pr59700.f90 b/gcc/testsuite/gfortran.dg/pr59700.f90
index 15bf26129ab..b91fc0da3d2 100644
--- a/gcc/testsuite/gfortran.dg/pr59700.f90
+++ b/gcc/testsuite/gfortran.dg/pr59700.f90
@@ -17,24 +17,24 @@ program foo
rewind(fd)
msg = 'ok'
read(fd, *, err=10, iomsg=msg) i1, i2, i3, i4
-10 if (msg /= 'Bad integer for item 3 in list input') call abort
+10 if (msg /= 'Bad integer for item 3 in list input') STOP 1
rewind(fd)
msg = 'ok'
read(fd, *, err=20, iomsg=msg) x1, x2, x3, x4
-20 if (msg /= 'Bad real number in item 4 of list input') call abort
+20 if (msg /= 'Bad real number in item 4 of list input') STOP 2
rewind(fd)
msg = 'ok'
read(fd, *, err=30, iomsg=msg) i1, x2, x1, a
-30 if (msg /= 'Bad logical value while reading item 4') call abort
+30 if (msg /= 'Bad logical value while reading item 4') STOP 3
rewind(fd)
read(fd, *, err=31, iomsg=msg) i1, x2, a, x1
-31 if (msg /= 'Bad repeat count in item 3 of list input') call abort
+31 if (msg /= 'Bad repeat count in item 3 of list input') STOP 4
close(fd)
open(unit=fd, status='scratch')
write(fd, '(A)') '(1, 2) (3.4, q)'
rewind(fd)
msg = 'ok'
read(fd, *, err=40, iomsg=msg) c1, c2
-40 if (msg /= 'Bad complex floating point number for item 2') call abort
+40 if (msg /= 'Bad complex floating point number for item 2') STOP 5
close(fd)
end program foo
diff --git a/gcc/testsuite/gfortran.dg/pr62125.f90 b/gcc/testsuite/gfortran.dg/pr62125.f90
index 3256d05cba0..b72fdf6fe6a 100644
--- a/gcc/testsuite/gfortran.dg/pr62125.f90
+++ b/gcc/testsuite/gfortran.dg/pr62125.f90
@@ -14,11 +14,11 @@ module m
contains
subroutine s(u)
class(t1), intent(in) :: u
- if(.not.u%l) call abort()
+ if(.not.u%l) STOP 1
select type(u); class is(t2)
- if(u%i.ne.2) call abort()
+ if(u%i.ne.2) STOP 2
select type(u); class is(t3)
- if(u%x.ne.3.5) call abort()
+ if(u%x.ne.3.5) STOP 3
end select
end select
end subroutine s
diff --git a/gcc/testsuite/gfortran.dg/pr64530.f90 b/gcc/testsuite/gfortran.dg/pr64530.f90
index 9805f628c83..5e1b89bdaaf 100644
--- a/gcc/testsuite/gfortran.dg/pr64530.f90
+++ b/gcc/testsuite/gfortran.dg/pr64530.f90
@@ -13,7 +13,7 @@ program bug
tmp(:) = 0.d0
call buggy(2.d0,asize,ave,old,tmp)
- if (any (tmp(:) .ne. 3.5)) call abort
+ if (any (tmp(:) .ne. 3.5)) STOP 1
end
subroutine buggy(scale_factor, asize, ave, old, tmp)
diff --git a/gcc/testsuite/gfortran.dg/pr65429.f90 b/gcc/testsuite/gfortran.dg/pr65429.f90
index 505413c0b49..7b1a8fea9db 100644
--- a/gcc/testsuite/gfortran.dg/pr65429.f90
+++ b/gcc/testsuite/gfortran.dg/pr65429.f90
@@ -9,11 +9,11 @@ program foo
character(*), parameter :: u(*) = [ 'qwerty', 'asdfgh', 'zxcvbn']
character(*), parameter :: v(*) = ['','']
- if ((size(s) /= 2).or.(len(s)/=5)) call abort
- if ((size(t) /= 0).or.(len(t)/=31)) call abort
- if ((size(u) /= 3).or.(len(u)/=6)) call abort
- if ((size(v) /= 2).or.(len(v)/=0)) call abort
- if ((s(1)/='abcde').or.(s(2)/='fghij')) call abort
- if ((u(1)/='qwerty').or.(u(2)/='asdfgh').or.(u(3)/='zxcvbn')) call abort
+ if ((size(s) /= 2).or.(len(s)/=5)) STOP 1
+ if ((size(t) /= 0).or.(len(t)/=31)) STOP 2
+ if ((size(u) /= 3).or.(len(u)/=6)) STOP 3
+ if ((size(v) /= 2).or.(len(v)/=0)) STOP 4
+ if ((s(1)/='abcde').or.(s(2)/='fghij')) STOP 5
+ if ((u(1)/='qwerty').or.(u(2)/='asdfgh').or.(u(3)/='zxcvbn')) STOP 6
end program foo
diff --git a/gcc/testsuite/gfortran.dg/pr65450.f90 b/gcc/testsuite/gfortran.dg/pr65450.f90
index 700fc64789c..856eed590cd 100644
--- a/gcc/testsuite/gfortran.dg/pr65450.f90
+++ b/gcc/testsuite/gfortran.dg/pr65450.f90
@@ -20,7 +20,7 @@ program pr65450
m = n
n = i
end do
- if (abs (v(17, 23) + h(17, 23, 2) + 768.0d0) > 0.5d0) call abort
+ if (abs (v(17, 23) + h(17, 23, 2) + 768.0d0) > 0.5d0) STOP 1
contains
function foo(a)
double precision :: a(:,:)
diff --git a/gcc/testsuite/gfortran.dg/pr65504.f90 b/gcc/testsuite/gfortran.dg/pr65504.f90
index 3860422b322..6c2422abca7 100644
--- a/gcc/testsuite/gfortran.dg/pr65504.f90
+++ b/gcc/testsuite/gfortran.dg/pr65504.f90
@@ -11,7 +11,7 @@ program pr65504
type (T) :: d
c = foo ("test")
d = foo ("test")
- if (trim(c%b) .ne. "foo") call abort
+ if (trim(c%b) .ne. "foo") STOP 1
contains
type (T) function foo (x) result (v)
character(len=*), intent(in) :: x
diff --git a/gcc/testsuite/gfortran.dg/pr65903.f90 b/gcc/testsuite/gfortran.dg/pr65903.f90
index 20e78cad315..152f1c231cb 100644
--- a/gcc/testsuite/gfortran.dg/pr65903.f90
+++ b/gcc/testsuite/gfortran.dg/pr65903.f90
@@ -8,13 +8,13 @@ character(20) :: astring
300 format ("&!")
write(astring,100)
-if (astring.ne."& notblank !") call abort
+if (astring.ne."& notblank !") STOP 1
!print *, astring
write(astring,200)
-if (astring.ne."& !") call abort
+if (astring.ne."& !") STOP 2
!print *, astring
write(astring,300)
-if (astring.ne."&!") call abort
+if (astring.ne."&!") STOP 3
!print *, astring
end
diff --git a/gcc/testsuite/gfortran.dg/pr66311.f90 b/gcc/testsuite/gfortran.dg/pr66311.f90
index dc40cb6b727..2cefa95e644 100644
--- a/gcc/testsuite/gfortran.dg/pr66311.f90
+++ b/gcc/testsuite/gfortran.dg/pr66311.f90
@@ -53,7 +53,7 @@ contains
character(len=100) :: buffer
write(buffer,*) i
- if (adjustl(buffer) /= adjustl(str)) call abort
+ if (adjustl(buffer) /= adjustl(str)) STOP 1
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/pr66864.f90 b/gcc/testsuite/gfortran.dg/pr66864.f90
index ebea99b3892..d529acdffa0 100644
--- a/gcc/testsuite/gfortran.dg/pr66864.f90
+++ b/gcc/testsuite/gfortran.dg/pr66864.f90
@@ -5,12 +5,12 @@ program t
implicit none
real(8) x
x = 2.0d0**26.5d0
- if (floor(x) /= 94906265) call abort
- if (floor(2.0d0**26.5d0)/= 94906265) call abort
+ if (floor(x) /= 94906265) STOP 1
+ if (floor(2.0d0**26.5d0)/= 94906265) STOP 2
x = 777666555.6d0
- if (floor(x) /= 777666555) call abort
- if (floor(777666555.6d0) /= 777666555) call abort
+ if (floor(x) /= 777666555) STOP 3
+ if (floor(777666555.6d0) /= 777666555) STOP 4
x = 2000111222.6d0
- if (floor(x) /= 2000111222) call abort
- if (floor(2000111222.6d0) /= 2000111222) call abort
+ if (floor(x) /= 2000111222) STOP 5
+ if (floor(2000111222.6d0) /= 2000111222) STOP 6
end program t
diff --git a/gcc/testsuite/gfortran.dg/pr67140.f90 b/gcc/testsuite/gfortran.dg/pr67140.f90
index 0a6782c3c3f..8dd6502a224 100644
--- a/gcc/testsuite/gfortran.dg/pr67140.f90
+++ b/gcc/testsuite/gfortran.dg/pr67140.f90
@@ -8,5 +8,5 @@ program test
integer(kind=k) :: i = 6
call mvbits(7_k,2,2,i,0)
- if (i /= 5) call abort
+ if (i /= 5) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr67524.f90 b/gcc/testsuite/gfortran.dg/pr67524.f90
index 6f5440f328f..10a3b6e3840 100644
--- a/gcc/testsuite/gfortran.dg/pr67524.f90
+++ b/gcc/testsuite/gfortran.dg/pr67524.f90
@@ -15,6 +15,6 @@ end module
program p
use m
- if (f(1) /= 1) call abort
- if (e(1) /= 1.0) call abort
+ if (f(1) /= 1) STOP 1
+ if (e(1) /= 1.0) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/pr67885.f90 b/gcc/testsuite/gfortran.dg/pr67885.f90
index 9b9adce4903..07f697976bc 100644
--- a/gcc/testsuite/gfortran.dg/pr67885.f90
+++ b/gcc/testsuite/gfortran.dg/pr67885.f90
@@ -7,6 +7,6 @@ program p
integer, parameter :: a(2) = [1, 2]
integer :: x(2)
x = a
- if (x(1) /= 1) call abort
+ if (x(1) /= 1) STOP 1
end block
end
diff --git a/gcc/testsuite/gfortran.dg/pr68053.f90 b/gcc/testsuite/gfortran.dg/pr68053.f90
index e59693c5f66..d43551078db 100644
--- a/gcc/testsuite/gfortran.dg/pr68053.f90
+++ b/gcc/testsuite/gfortran.dg/pr68053.f90
@@ -6,5 +6,5 @@ program p
integer, parameter :: n(3) = [1,2,3]
integer, parameter :: x(1) = 7
integer, parameter :: z(n(2):*) = x
- if (lbound(z,1) /= 2) call abort
+ if (lbound(z,1) /= 2) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr68566.f90 b/gcc/testsuite/gfortran.dg/pr68566.f90
index 160e9ac58f6..d47a8f7b8e3 100644
--- a/gcc/testsuite/gfortran.dg/pr68566.f90
+++ b/gcc/testsuite/gfortran.dg/pr68566.f90
@@ -5,9 +5,9 @@ program p
n = [2,1]
s1 = '1 5 2 6 3 0 4 0'
write(s2,'(8(I0,1x))') reshape ([1,2,3,4,5,6], [2,4], [0,0], [2,1])
- if (trim(s1) /= trim(s2)) call abort
+ if (trim(s1) /= trim(s2)) STOP 1
write(s2,'(8(I0,1x))') reshape ([1,2,3,4,5,6], [2,4], [0,0], n)
- if (trim(s1) /= trim(s2)) call abort
+ if (trim(s1) /= trim(s2)) STOP 2
write(s2,'(8(I0,1x))') reshape ([1,2,3,4,5,6], [2,4], [0,0], [n])
- if (trim(s1) /= trim(s2)) call abort
+ if (trim(s1) /= trim(s2)) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/pr69514_1.f90 b/gcc/testsuite/gfortran.dg/pr69514_1.f90
index d72a450dc58..561740fb35b 100644
--- a/gcc/testsuite/gfortran.dg/pr69514_1.f90
+++ b/gcc/testsuite/gfortran.dg/pr69514_1.f90
@@ -1,5 +1,5 @@
! { dg-do run }
program foo
real, parameter :: x(3) = 2.0 * [real :: 1, 2, 3 ]
- if (any(x /= [2., 4., 6.])) call abort
+ if (any(x /= [2., 4., 6.])) STOP 1
end program foo
diff --git a/gcc/testsuite/gfortran.dg/pr69514_2.f90 b/gcc/testsuite/gfortran.dg/pr69514_2.f90
index 0a5e8166a01..085ad66946b 100644
--- a/gcc/testsuite/gfortran.dg/pr69514_2.f90
+++ b/gcc/testsuite/gfortran.dg/pr69514_2.f90
@@ -22,28 +22,28 @@ program p
complex, parameter :: mci(3) = (4.5, 5.5) * [ integer :: 2, 2.5, (3.5, 4.0) ]
complex, parameter :: mcc(3) = (4.5, 5.5) * [ complex :: 2, 2.5, (3.5, 4.0) ]
- if (any(arr /= [2.00, 2.50, 1.50])) call abort
- if (any(ari /= [2.00, 2.00, 1.00])) call abort
- if (any(arc /= [2.00, 2.50, 1.50])) call abort
+ if (any(arr /= [2.00, 2.50, 1.50])) STOP 1
+ if (any(ari /= [2.00, 2.00, 1.00])) STOP 2
+ if (any(arc /= [2.00, 2.50, 1.50])) STOP 3
- if (any(air /= [2, 2, 1])) call abort
- if (any(aii /= [2, 2, 1])) call abort
- if (any(aic /= [2, 2, 1])) call abort
+ if (any(air /= [2, 2, 1])) STOP 4
+ if (any(aii /= [2, 2, 1])) STOP 5
+ if (any(aic /= [2, 2, 1])) STOP 6
- if (any(acr /= [(2.00, 0.00), (2.50, 0.00), (1.50, 0.00)])) call abort
- if (any(aci /= [(2.00, 0.00), (2.00, 0.00), (1.00, 0.00)])) call abort
- if (any(acc /= [(2.00, 0.00), (2.50, 0.00), (1.50, 2.50)])) call abort
+ if (any(acr /= [(2.00, 0.00), (2.50, 0.00), (1.50, 0.00)])) STOP 7
+ if (any(aci /= [(2.00, 0.00), (2.00, 0.00), (1.00, 0.00)])) STOP 8
+ if (any(acc /= [(2.00, 0.00), (2.50, 0.00), (1.50, 2.50)])) STOP 9
- if (any(mrr /= [9.00, 11.25, 15.75])) call abort
- if (any(mri /= [9.00, 9.00, 13.50])) call abort
- if (any(mrc /= [9.00, 11.25, 15.75])) call abort
+ if (any(mrr /= [9.00, 11.25, 15.75])) STOP 10
+ if (any(mri /= [9.00, 9.00, 13.50])) STOP 11
+ if (any(mrc /= [9.00, 11.25, 15.75])) STOP 12
- if (any(mir /= [8, 10, 14])) call abort
- if (any(mii /= [8, 8, 12])) call abort
- if (any(mic /= [8, 10, 14])) call abort
+ if (any(mir /= [8, 10, 14])) STOP 13
+ if (any(mii /= [8, 8, 12])) STOP 14
+ if (any(mic /= [8, 10, 14])) STOP 15
- if (any(mcr /= [(9.00, 11.00), (11.25, 13.75), (15.75, 19.25)])) call abort
- if (any(mci /= [(9.00, 11.00), ( 9.00, 11.00), (13.50, 16.50)])) call abort
- if (any(mcc /= [(9.00, 11.00), (11.25, 13.75), (-6.25, 37.25)])) call abort
+ if (any(mcr /= [(9.00, 11.00), (11.25, 13.75), (15.75, 19.25)])) STOP 16
+ if (any(mci /= [(9.00, 11.00), ( 9.00, 11.00), (13.50, 16.50)])) STOP 17
+ if (any(mcc /= [(9.00, 11.00), (11.25, 13.75), (-6.25, 37.25)])) STOP 18
end program p
diff --git a/gcc/testsuite/gfortran.dg/pr69739.f90 b/gcc/testsuite/gfortran.dg/pr69739.f90
index f5e2359878e..50fd57aeebf 100644
--- a/gcc/testsuite/gfortran.dg/pr69739.f90
+++ b/gcc/testsuite/gfortran.dg/pr69739.f90
@@ -35,5 +35,5 @@ end module test
use test
type(sometype) :: a(2, 2, 2)
- if (any(int (dosomething(a)) .ne. [1,2,3,4,5,6])) call abort
+ if (any(int (dosomething(a)) .ne. [1,2,3,4,5,6])) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr70673.f90 b/gcc/testsuite/gfortran.dg/pr70673.f90
index 67856e0332e..fa4bd2fe02b 100644
--- a/gcc/testsuite/gfortran.dg/pr70673.f90
+++ b/gcc/testsuite/gfortran.dg/pr70673.f90
@@ -12,9 +12,9 @@ contains
a = a ! This used to ICE.
a = inp
a = a ! This used to ICE too
- if ((len (a) .ne. 5) .or. (a .ne. "hello")) call abort
+ if ((len (a) .ne. 5) .or. (a .ne. "hello")) STOP 1
a = a(2:3) ! Make sure that temporary creation is not broken.
- if ((len (a) .ne. 2) .or. (a .ne. "el")) call abort
+ if ((len (a) .ne. 2) .or. (a .ne. "el")) STOP 2
deallocate (a)
a = a ! This would ICE too.
end subroutine s
diff --git a/gcc/testsuite/gfortran.dg/pr71523_2.f90 b/gcc/testsuite/gfortran.dg/pr71523_2.f90
index 5be0dd79881..b1730f2699a 100644
--- a/gcc/testsuite/gfortran.dg/pr71523_2.f90
+++ b/gcc/testsuite/gfortran.dg/pr71523_2.f90
@@ -22,17 +22,17 @@ end function
val = set(1, 5)
if (val .ne. 12345) then
- call abort()
+ STOP 1
endif
val = set(1, 10)
if (val .ne. 5) then
- call abort()
+ STOP 2
endif
val = set(1, 100)
if (val .ne. 10) then
- call abort()
+ STOP 3
endif
end
diff --git a/gcc/testsuite/gfortran.dg/pr71764.f90 b/gcc/testsuite/gfortran.dg/pr71764.f90
index 48176f8297e..4583feb9bb9 100644
--- a/gcc/testsuite/gfortran.dg/pr71764.f90
+++ b/gcc/testsuite/gfortran.dg/pr71764.f90
@@ -9,12 +9,12 @@ program p
nullptr = c_null_ptr
c = nullptr
rls = c_associated(c)
- if (rls) call abort
- if (c_associated(c)) call abort
+ if (rls) STOP 1
+ if (c_associated(c)) STOP 2
c = c_loc(rls)
- if (.not. c_associated(c)) call abort
+ if (.not. c_associated(c)) STOP 3
c = nullptr
- if (c_associated(c)) call abort
+ if (c_associated(c)) STOP 4
c = c_loc(t)
k => t
call association_test(k, c)
@@ -27,7 +27,7 @@ contains
if(c_associated(b, c_loc(a))) then
return
else
- call abort
+ STOP 5
end if
end subroutine association_test
end
diff --git a/gcc/testsuite/gfortran.dg/pr78092.f90 b/gcc/testsuite/gfortran.dg/pr78092.f90
index ba615d14c9a..20de8a3714c 100644
--- a/gcc/testsuite/gfortran.dg/pr78092.f90
+++ b/gcc/testsuite/gfortran.dg/pr78092.f90
@@ -8,7 +8,7 @@ program test_stuff
ivar1 = 6
call poly_sizeof(ivar1, ivar2)
- if (ivar2 /= 4) call abort
+ if (ivar2 /= 4) STOP 1
contains
diff --git a/gcc/testsuite/gfortran.dg/pr82004.f90 b/gcc/testsuite/gfortran.dg/pr82004.f90
new file mode 100644
index 00000000000..2ddc95f5145
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/pr82004.f90
@@ -0,0 +1,18 @@
+! PR middle-end/82004
+! { dg-do run }
+! { dg-options "-Ofast" }
+
+ integer, parameter :: r8 = selected_real_kind(13), i4 = kind(1)
+ integer (i4), parameter :: a = 400, b = 2
+ real (r8), parameter, dimension(b) :: c = (/ .001_r8, 10.00_r8 /)
+ real (r8) :: d, e, f, g, h
+ real (r8), parameter :: j &
+ = 10**(log10(c(1))-(log10(c(b))-log10(c(1)))/real(a))
+
+ d = c(1)
+ e = c(b)
+ f = (log10(e)-log10(d))/real(a)
+ g = log10(d) - f
+ h = 10**(g)
+ if (h.ne.j) stop 1
+end
diff --git a/gcc/testsuite/gfortran.dg/pr82973.f90 b/gcc/testsuite/gfortran.dg/pr82973.f90
index add58ce0dd1..b1343e3db61 100644
--- a/gcc/testsuite/gfortran.dg/pr82973.f90
+++ b/gcc/testsuite/gfortran.dg/pr82973.f90
@@ -22,10 +22,10 @@ program pr82973
ifloor_result = nint(real(ai-floor(real(ai)/real(bi))*bi))
do i=1,n
if (modulo_result(i) /= floor_result(i)) then
- call abort()
+ STOP 1
end if
if (imodulo_result(i) /= ifloor_result(i)) then
- call abort ()
+ STOP 2
end if
end do
end program pr82973
diff --git a/gcc/testsuite/gfortran.dg/pr83149.f90 b/gcc/testsuite/gfortran.dg/pr83149.f90
new file mode 100644
index 00000000000..fc0607e1369
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/pr83149.f90
@@ -0,0 +1,14 @@
+! Compiled with pr83149_1.f90
+!
+module mod1
+ integer :: ncells
+end module
+
+module mod2
+contains
+ function get() result(array)
+ use mod1
+ real array(ncells)
+ array = 1.0
+ end function
+end module
diff --git a/gcc/testsuite/gfortran.dg/pr83149_1.f90 b/gcc/testsuite/gfortran.dg/pr83149_1.f90
new file mode 100644
index 00000000000..3a8f5d55d9b
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/pr83149_1.f90
@@ -0,0 +1,24 @@
+! Compiled with pr83149.f90
+! { dg-do run }
+! { dg-options "-fno-whole-file" }
+! { dg-compile-aux-modules "pr83149.f90" }
+! { dg-additional-sources pr83149.f90 }
+!
+! Contributed by Neil Carlson <neil.n.carlson@gmail.com>
+!
+subroutine sub(s)
+ use mod2
+ real :: s
+ s = sum(get())
+end
+
+ use mod1
+ real :: s
+ ncells = 2
+ call sub (s)
+ if (int (s) .ne. ncells) stop 1
+ ncells = 10
+ call sub (s)
+ if (int (s) .ne. ncells) stop 2
+end
+
diff --git a/gcc/testsuite/gfortran.dg/pr83149_a.f90 b/gcc/testsuite/gfortran.dg/pr83149_a.f90
new file mode 100644
index 00000000000..3f15198bfe9
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/pr83149_a.f90
@@ -0,0 +1,11 @@
+! Compiled with pr83149_b.f90
+!
+module mod
+ character(8) string
+contains
+ function get_string() result(s)
+ character(len_trim(string)) s
+ s = string
+ end function
+end module
+
diff --git a/gcc/testsuite/gfortran.dg/pr83149_b.f90 b/gcc/testsuite/gfortran.dg/pr83149_b.f90
new file mode 100644
index 00000000000..f67ffd95159
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/pr83149_b.f90
@@ -0,0 +1,16 @@
+! Compiled with pr83149_a.f90
+! { dg-do run }
+! { dg-options "-fno-whole-file" }
+! { dg-compile-aux-modules "pr83149_a.f90" }
+! { dg-additional-sources pr83149_a.f90 }
+!
+! Contributed by Neil Carlson <neil.n.carlson@gmail.com>
+!
+ use mod
+ string = 'fubar'
+ select case (get_string())
+ case ('fubar')
+ case default
+ stop 1
+ end select
+end
diff --git a/gcc/testsuite/gfortran.dg/pr83864.f90 b/gcc/testsuite/gfortran.dg/pr83864.f90
index 3bf568ab316..a3858d23a02 100644
--- a/gcc/testsuite/gfortran.dg/pr83864.f90
+++ b/gcc/testsuite/gfortran.dg/pr83864.f90
@@ -9,5 +9,5 @@ program p
character :: c(3) = transfer('abc','z',3)
end type t
type(t) :: x
- if (any (x%c /= ["a", "b", "c"])) call abort ()
+ if (any (x%c /= ["a", "b", "c"])) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/pr83874.f90 b/gcc/testsuite/gfortran.dg/pr83874.f90
index d1bdc97b783..708293f7b5e 100644
--- a/gcc/testsuite/gfortran.dg/pr83874.f90
+++ b/gcc/testsuite/gfortran.dg/pr83874.f90
@@ -13,7 +13,7 @@ program charinit
character(len=1), parameter :: names1(*) = z% name
character(len=*), parameter :: names2(2) = z% name
character(len=*), parameter :: names3(*) = z% name
- if (.not. (names1(1) == "a" .and. names1(2) == "b")) call abort ()
- if (.not. (names2(1) == "a" .and. names2(2) == "b")) call abort ()
- if (.not. (names3(1) == "a" .and. names3(2) == "b")) call abort ()
+ if (.not. (names1(1) == "a" .and. names1(2) == "b")) STOP 1
+ if (.not. (names2(1) == "a" .and. names2(2) == "b")) STOP 2
+ if (.not. (names3(1) == "a" .and. names3(2) == "b")) STOP 3
end program charinit
diff --git a/gcc/testsuite/gfortran.dg/pr84088.f90 b/gcc/testsuite/gfortran.dg/pr84088.f90
index 36704afa151..692e93a8d57 100644
--- a/gcc/testsuite/gfortran.dg/pr84088.f90
+++ b/gcc/testsuite/gfortran.dg/pr84088.f90
@@ -13,7 +13,7 @@ contains
subroutine foo (a)
type (*), dimension (..), contiguous :: a
integer(kind = 4) :: i
- if(sizeof (a) .ne. sizeof (i)) call abort
+ if(sizeof (a) .ne. sizeof (i)) STOP 1
end subroutine foo
end program
diff --git a/gcc/testsuite/gfortran.dg/pr84155.f90 b/gcc/testsuite/gfortran.dg/pr84155.f90
index fe87b6c2ca7..ca05b5dbc30 100644
--- a/gcc/testsuite/gfortran.dg/pr84155.f90
+++ b/gcc/testsuite/gfortran.dg/pr84155.f90
@@ -34,7 +34,7 @@ contains
rewind (unit)
read (unit) check
close (unit)
- if (ival .ne. check) call abort
+ if (ival .ne. check) STOP 1
end subroutine proc
subroutine particle_write_raw (array, u)
diff --git a/gcc/testsuite/gfortran.dg/proc_decl_12.f90 b/gcc/testsuite/gfortran.dg/proc_decl_12.f90
index 37fc4a4e420..f6c3f99ab9e 100644
--- a/gcc/testsuite/gfortran.dg/proc_decl_12.f90
+++ b/gcc/testsuite/gfortran.dg/proc_decl_12.f90
@@ -9,7 +9,7 @@ module m
contains
subroutine one(a)
integer a(1:3)
- if (any(a /= [1,2,3])) call abort()
+ if (any(a /= [1,2,3])) STOP 1
end subroutine one
end module m
diff --git a/gcc/testsuite/gfortran.dg/proc_decl_13.f90 b/gcc/testsuite/gfortran.dg/proc_decl_13.f90
index 1df220b7cf6..986a0e7e509 100644
--- a/gcc/testsuite/gfortran.dg/proc_decl_13.f90
+++ b/gcc/testsuite/gfortran.dg/proc_decl_13.f90
@@ -7,9 +7,9 @@ contains
integer a(:)
print *, lbound(a), ubound(a), size(a)
if ((lbound(a,dim=1) /= 1) .or. (ubound(a,dim=1) /= 3)) &
- call abort()
+ STOP 1
print *, a
- if (any(a /= [1,2,3])) call abort()
+ if (any(a /= [1,2,3])) STOP 2
end subroutine one
end module m
diff --git a/gcc/testsuite/gfortran.dg/proc_decl_15.f90 b/gcc/testsuite/gfortran.dg/proc_decl_15.f90
index f099c1deafb..5cd0eedbde4 100644
--- a/gcc/testsuite/gfortran.dg/proc_decl_15.f90
+++ b/gcc/testsuite/gfortran.dg/proc_decl_15.f90
@@ -15,6 +15,6 @@ program test
end function
end interface
procedure(ai) :: f
- if(any(f() /= [9,8,7])) call abort()
- if(size(f()) /= 3) call abort()
+ if(any(f() /= [9,8,7])) STOP 1
+ if(size(f()) /= 3) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/proc_decl_17.f90 b/gcc/testsuite/gfortran.dg/proc_decl_17.f90
index 0daee466899..36e0f29c6a2 100644
--- a/gcc/testsuite/gfortran.dg/proc_decl_17.f90
+++ b/gcc/testsuite/gfortran.dg/proc_decl_17.f90
@@ -43,7 +43,7 @@ contains
m=iachar('a')
do k=1,size(a)
do l=1,size(my_message)
- if (c(k)(l:l) /= achar(m)) call abort()
+ if (c(k)(l:l) /= achar(m)) STOP 1
m = m + 1
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/proc_decl_18.f90 b/gcc/testsuite/gfortran.dg/proc_decl_18.f90
index c4216135106..7e98c86fc44 100644
--- a/gcc/testsuite/gfortran.dg/proc_decl_18.f90
+++ b/gcc/testsuite/gfortran.dg/proc_decl_18.f90
@@ -40,7 +40,7 @@ integer :: k,j(3),i(3) = (/1,2,3/)
j = p(i,mysize)
do k=1,mysize(i)
- if (j(k) /= 2*i(k)) call abort()
+ if (j(k) /= 2*i(k)) STOP 1
end do
end
diff --git a/gcc/testsuite/gfortran.dg/proc_decl_2.f90 b/gcc/testsuite/gfortran.dg/proc_decl_2.f90
index 97e06148e27..f1f7e098de6 100644
--- a/gcc/testsuite/gfortran.dg/proc_decl_2.f90
+++ b/gcc/testsuite/gfortran.dg/proc_decl_2.f90
@@ -76,21 +76,21 @@ program p
procedure(integer) :: p7
i=p1()
- if (i /= 5) call abort()
+ if (i /= 5) STOP 1
i=p2(3.1)
- if (i /= 3) call abort()
+ if (i /= 3) STOP 2
r=4.2
call p3(r)
- if (abs(r-5.2)>1e-6) call abort()
+ if (abs(r-5.2)>1e-6) STOP 3
call p4(r)
- if (abs(r-3.7)>1e-6) call abort()
+ if (abs(r-3.7)>1e-6) STOP 4
call p5()
call p6(r)
- if (abs(r-7.4)>1e-6) call abort()
+ if (abs(r-7.4)>1e-6) STOP 5
i=p7(4)
- if (i /= -8) call abort()
+ if (i /= -8) STOP 6
r=dummytest(p3)
- if (abs(r-2.1)>1e-6) call abort()
+ if (abs(r-2.1)>1e-6) STOP 7
contains
diff --git a/gcc/testsuite/gfortran.dg/proc_decl_5.f90 b/gcc/testsuite/gfortran.dg/proc_decl_5.f90
index d2cb0463788..0cdee156b92 100644
--- a/gcc/testsuite/gfortran.dg/proc_decl_5.f90
+++ b/gcc/testsuite/gfortran.dg/proc_decl_5.f90
@@ -22,5 +22,5 @@ end function x
program test
use modproc
implicit none
- if(x() /= -5) call abort()
+ if(x() /= -5) STOP 1
end program test
diff --git a/gcc/testsuite/gfortran.dg/proc_decl_9.f90 b/gcc/testsuite/gfortran.dg/proc_decl_9.f90
index 455c27ce986..bdb4b2891f4 100644
--- a/gcc/testsuite/gfortran.dg/proc_decl_9.f90
+++ b/gcc/testsuite/gfortran.dg/proc_decl_9.f90
@@ -10,5 +10,5 @@ program p
implicit none
intrinsic sin
procedure(sin) :: t
- if (t(1.0) /= 1.0) call abort
+ if (t(1.0) /= 1.0) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_1.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_1.f90
index b9c0ce6858f..f676282e74d 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_1.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_1.f90
@@ -39,33 +39,33 @@ program procPtrTest
EXTERNAL :: foo1,foo2
real :: foo2
- if(ASSOCIATED(ptr3)) call abort()
+ if(ASSOCIATED(ptr3)) STOP 1
NULLIFY(ptr1)
- if (ASSOCIATED(ptr1)) call abort()
+ if (ASSOCIATED(ptr1)) STOP 2
ptr1 => proc1
- if (.not. ASSOCIATED(ptr1)) call abort()
+ if (.not. ASSOCIATED(ptr1)) STOP 3
call ptr1 (str)
- if (str .ne. "proc1") call abort ()
+ if (str .ne. "proc1") STOP 4
ptr2 => NULL()
- if (ASSOCIATED(ptr2)) call abort()
+ if (ASSOCIATED(ptr2)) STOP 5
ptr2 => proc2
- if (.not. ASSOCIATED(ptr2,proc2)) call abort()
- if (10*ptr2 (10) .ne. 1000) call abort ()
+ if (.not. ASSOCIATED(ptr2,proc2)) STOP 6
+ if (10*ptr2 (10) .ne. 1000) STOP 7
ptr3 => NULL (ptr3)
- if (ASSOCIATED(ptr3)) call abort()
+ if (ASSOCIATED(ptr3)) STOP 8
ptr3 => proc3
- if (ptr3 (1.0, 2.0) .ne. (1.0, 2.0)) call abort ()
+ if (ptr3 (1.0, 2.0) .ne. (1.0, 2.0)) STOP 9
ptr4 => cos
- if (ptr4(0.0)/=1.0) call abort()
+ if (ptr4(0.0)/=1.0) STOP 10
ptr5 => foo1
call ptr5()
ptr6 => foo2
- if (ptr6()/=6.3) call abort()
+ if (ptr6()/=6.3) STOP 11
end program
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_10.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_10.f90
index dfe8ce9f0a5..3400379b315 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_10.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_10.f90
@@ -15,7 +15,7 @@ module myMod
subroutine proc4( arg1 )
procedure(real), pointer :: arg1
- if (arg1(0)/=7) call abort()
+ if (arg1(0)/=7) STOP 1
end subroutine proc4
end module myMod
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_12.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_12.f90
index 325703f499d..4989326132a 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_12.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_12.f90
@@ -6,7 +6,7 @@
procedure(integer),pointer :: p
p => foo()
-if (p(-1)/=1) call abort
+if (p(-1)/=1) STOP 1
contains
function foo() result(bar)
procedure(integer),pointer :: bar
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_18.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_18.f90
index 79cd68a513f..3d065867dc8 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_18.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_18.f90
@@ -10,7 +10,7 @@ PROGRAM test_prog
PROCEDURE(triple), POINTER :: f
f => triple
- if (sum(f(2.,4.)-triple(2.,4.))>1E-3) call abort()
+ if (sum(f(2.,4.)-triple(2.,4.))>1E-3) STOP 1
CONTAINS
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_19.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_19.f90
index a78a8d46432..55036edeb66 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_19.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_19.f90
@@ -16,7 +16,7 @@ PROGRAM test_prog
CALL set_ptr(forig,fset)
- if (forig(1,2) /= fset(1,2)) call abort()
+ if (forig(1,2) /= fset(1,2)) STOP 1
CONTAINS
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_21.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_21.f90
index 875173fd3d8..83ef5035601 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_21.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_21.f90
@@ -24,7 +24,7 @@ contains
call pptr2 (i)
pptr2 => sub2
call pptr2 (i)
- if (i .ne. 22) call abort
+ if (i .ne. 22) STOP 1
end subroutine test
subroutine sub2(arg)
integer arg
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_22.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_22.f90
index 69d165e33a8..47e2402b0ae 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_22.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_22.f90
@@ -21,7 +21,7 @@ program bugTest
implicit none
procedure(returnMat), pointer :: pp
pp => returnMat
- if (sum(pp(2,2))/=4) call abort()
+ if (sum(pp(2,2))/=4) STOP 1
pp2 => returnMat
- if (sum(pp2(3,2))/=6) call abort()
+ if (sum(pp2(3,2))/=6) STOP 2
end program bugTest
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_23.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_23.f90
index ee947122f2b..20f4f60dbb6 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_23.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_23.f90
@@ -9,7 +9,7 @@ procedure(character(len=5)), pointer :: pp
pp => abc
print *,pp()
str = pp()
-if (str/='abcde') call abort()
+if (str/='abcde') STOP 1
contains
function abc()
character(len=5) :: abc
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_25.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_25.f90
index cfa0d443478..f553810695d 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_25.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_25.f90
@@ -12,12 +12,12 @@ PROGRAM test
! Passing the function works
g=greater(4.,add(1.,2.))
- if (.not. g) call abort()
+ if (.not. g) STOP 1
! Passing the procedure pointer fails
f => add
g=greater(4.,f(1.,2.))
- if (.not. g) call abort()
+ if (.not. g) STOP 2
CONTAINS
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_26.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_26.f90
index 8ae027fe870..2dad5b931ad 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_26.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_26.f90
@@ -25,5 +25,5 @@ program main
procedure(intf), pointer :: p_fun2 => null()
if (associated(p_fun) .or. associated(p_fun2)) &
- call abort ()
+ STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_3.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_3.f90
index 1b146819f84..6baaf932ae9 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_3.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_3.f90
@@ -41,12 +41,12 @@ real :: c = 1.2
fp => e1
-if (abs(fp(2.5)-7.5)>0.01) call abort()
+if (abs(fp(2.5)-7.5)>0.01) STOP 1
sp => e2
call sp(c,3.4)
-if (abs(c-4.6)>0.01) call abort()
+if (abs(c-4.6)>0.01) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_36.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_36.f90
index 7f3525eed29..ba39d00fdff 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_36.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_36.f90
@@ -24,12 +24,12 @@ use m0, only : sub, s
procedure(sub) :: sub2, pp
pointer :: pp
pp => sub2
-if (.not. associated(pp)) call abort ()
-if (.not. associated(pp,sub2)) call abort ()
+if (.not. associated(pp)) STOP 1
+if (.not. associated(pp,sub2)) STOP 2
call s(pp, .true.)
pp => null()
-if (associated(pp)) call abort ()
-if (associated(pp,sub2)) call abort ()
+if (associated(pp)) STOP 3
+if (associated(pp,sub2)) STOP 4
call s(pp, .false.)
end
@@ -38,8 +38,8 @@ subroutine s(ss, isassoc)
logical :: isassoc
procedure(sub), pointer, intent(in) :: ss
procedure(sub) :: sub2
- if (isassoc .neqv. associated(ss)) call abort ()
- if (isassoc .neqv. associated(ss,sub2)) call abort ()
+ if (isassoc .neqv. associated(ss)) STOP 5
+ if (isassoc .neqv. associated(ss,sub2)) STOP 6
end subroutine s
subroutine sub2
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_47.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_47.f90
index 80a78f3852d..d3fa72c9b51 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_47.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_47.f90
@@ -14,10 +14,10 @@
res = my_AA%funct ()
- if (res%i .ne. 3) call abort
- if (.not.associated (res%funct)) call abort
- if (my_AA%i .ne. 4) call abort
- if (associated (my_AA%funct)) call abort
+ if (res%i .ne. 3) STOP 1
+ if (.not.associated (res%funct)) STOP 2
+ if (my_AA%i .ne. 4) STOP 3
+ if (associated (my_AA%funct)) STOP 4
contains
function foo(A)
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_48.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_48.f90
index deed635355b..4984eb7f885 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_48.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_48.f90
@@ -25,12 +25,12 @@
actual%boog => boogImplementation
res = actual%boog () ! Failed on bug in expr.c:3933
- if (res%scalar .ne. onenineeight) call abort
+ if (res%scalar .ne. onenineeight) STOP 1
! Make sure that the procedure pointer is assigned correctly
- if (actual%scalar .ne. ninetynine) call abort
+ if (actual%scalar .ne. ninetynine) STOP 2
actual = res%boog ()
- if (actual%scalar .ne. onenineeight) call abort
+ if (actual%scalar .ne. onenineeight) STOP 3
! Deallocate so that we can use valgrind to check for memory leaks
deallocate (res%scalar, actual%scalar)
@@ -44,7 +44,7 @@ contains
C = A
C%scalar = onenineeight
class default
- call abort
+ STOP 4
end select
end function
end
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_5.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_5.f90
index 61cf8a35d10..bf47d1ed362 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_5.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_5.f90
@@ -21,12 +21,12 @@ subroutine test(first)
procedure(integer), pointer :: x => null()
if(first) then
- if(associated(x)) call abort()
+ if(associated(x)) STOP 1
x => hello
else
- if(.not. associated(x)) call abort()
+ if(.not. associated(x)) STOP 2
i = x()
- if(i /= 42) call abort()
+ if(i /= 42) STOP 3
end if
end subroutine test
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_6.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_6.f90
index 6a5c7e5f462..2c70c0bc031 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_6.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_6.f90
@@ -18,10 +18,10 @@ INTEGER :: k = 0
ptr1 => foo
call s_in(ptr1,k)
-if (k /= 6) call abort()
+if (k /= 6) STOP 1
call s_out(ptr2)
-if (ptr2(-3.0) /= 3.0) call abort()
+if (ptr2(-3.0) /= 3.0) STOP 2
contains
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_7.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_7.f90
index 8b1ea0a44b3..9ac6cbe21fe 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_7.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_7.f90
@@ -20,21 +20,21 @@ program proc_pointer_test
procedure(Integer(c_int)), pointer :: ptr
call assignF(ptr)
- if(ptr() /= 42) call abort()
+ if(ptr() /= 42) STOP 1
ptr => f55
- if(ptr() /= 55) call abort()
+ if(ptr() /= 55) STOP 2
call foo(ptr)
- if(ptr() /= 65) call abort()
+ if(ptr() /= 65) STOP 3
contains
subroutine foo(a)
procedure(integer(c_int)), pointer :: a
- if(a() /= 55) call abort()
+ if(a() /= 55) STOP 4
a => f65
- if(a() /= 65) call abort()
+ if(a() /= 65) STOP 5
end subroutine foo
integer(c_int) function f55()
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_8.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_8.f90
index 4785383e96a..c1d69246faf 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_8.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_8.f90
@@ -27,11 +27,11 @@ PROCEDURE(mytype), POINTER :: ptype,ptype2
CALL init()
CALL C_F_PROCPOINTER(funpointer,ptype)
-if (ptype(3) /= 9) call abort()
+if (ptype(3) /= 9) STOP 1
! the stuff below was added with PR 42072
call setpointer(ptype2)
-if (ptype2(4) /= 12) call abort()
+if (ptype2(4) /= 12) STOP 2
contains
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_common_1.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_common_1.f90
index c6a4e6a3673..25ba4c5a037 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_common_1.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_common_1.f90
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2003 -fall-intrinsics" }
+! { dg-options "-std=f2003" }
!
! PR fortran/36592
!
@@ -13,7 +13,7 @@ subroutine one()
procedure(real), pointer :: p1,p2
integer :: a,b
common /com/ p1,p2,a,b
- if (a/=5 .or. b/=-9 .or. p1(0.0)/=1.0 .or. p2(0.0)/=0.0) call abort()
+ if (a/=5 .or. b/=-9 .or. p1(0.0)/=1.0 .or. p2(0.0)/=0.0) STOP 1
end subroutine one
program main
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_1.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_1.f90
index cbb69f1d50e..5e53ee4e44d 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_1.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_1.f90
@@ -27,27 +27,27 @@
pp => x%ppc
call sub(1)
- if (sum/=1) call abort
+ if (sum/=1) STOP 1
call pp(2)
- if (sum/=3) call abort
+ if (sum/=3) STOP 2
call x%ppc(3)
- if (sum/=6) call abort
+ if (sum/=6) STOP 3
! calling object as argument
x%proc => sub2
call x%proc(x)
- if (x%i/=7) call abort
+ if (x%i/=7) STOP 4
! type extension
x%proc => sub
call x%proc(4)
- if (sum/=10) call abort
+ if (sum/=10) STOP 5
x2%proc => sub
call x2%proc(5)
- if (sum/=15) call abort
+ if (sum/=15) STOP 6
x2%proc2 => sub
call x2%proc2(6)
- if (sum/=21) call abort
+ if (sum/=21) STOP 7
contains
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_11.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_11.f90
index 7e487fbb23e..330d930f81f 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_11.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_11.f90
@@ -32,9 +32,9 @@ CONTAINS
SUBROUTINE sub(i,arg2,arg3)
INTEGER, INTENT(in) :: i
INTEGER, INTENT(in), OPTIONAL :: arg2, arg3
- if (present(arg2)) call abort()
- if (.not. present(arg3)) call abort()
- if (2*i/=arg3) call abort()
+ if (present(arg2)) STOP 1
+ if (.not. present(arg3)) STOP 2
+ if (2*i/=arg3) STOP 3
END SUBROUTINE sub
END PROGRAM prog
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_12.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_12.f90
index 8c658d8838b..c02e0360e81 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_12.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_12.f90
@@ -26,7 +26,7 @@ program bugTest
testObj%test => returnMat
testCatch = testObj%test(2,2)
print *,testCatch
- if (sum(testCatch)/=4) call abort()
+ if (sum(testCatch)/=4) STOP 1
print *,testObj%test(3,3)
- if (sum(testObj%test(3,3))/=9) call abort()
+ if (sum(testObj%test(3,3))/=9) STOP 2
end program bugTest
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_13.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_13.f90
index afc8f55b5d3..c0a8b959d6e 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_13.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_13.f90
@@ -20,10 +20,10 @@ o%ppc => foo
o2 = o%ppc(o)
-if (o%data /= 1) call abort()
-if (o2%data /= 5) call abort()
-if (.not. associated(o%ppc)) call abort()
-if (associated(o2%ppc)) call abort()
+if (o%data /= 1) STOP 1
+if (o2%data /= 5) STOP 2
+if (.not. associated(o%ppc)) STOP 3
+if (associated(o2%ppc)) STOP 4
contains
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_14.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_14.f90
index 811223ee2d1..141e96e0d75 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_14.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_14.f90
@@ -16,7 +16,7 @@ program foo
obj1%proc => proc
call transfer_proc_ptr (obj2, obj1)
- if (obj2%proc()/=7) call abort()
+ if (obj2%proc()/=7) STOP 1
contains
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_15.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_15.f90
index 37f3a7ae487..1598ab2a031 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_15.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_15.f90
@@ -21,5 +21,5 @@ use m
x%ptr => abc
print *,x%ptr()
str = x%ptr()
- if (str/='abcde') call abort()
+ if (str/='abcde') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_16.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_16.f90
index ff5634b4e8d..320db6f055c 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_16.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_16.f90
@@ -21,7 +21,7 @@ use m
character(len=4) :: str
x%ptr => abc
print *,x%ptr(4)
- if (x%ptr(4)/='abcd') call abort
+ if (x%ptr(4)/='abcd') STOP 1
str = x%ptr(3)
- if (str/='abc') call abort()
+ if (str/='abc') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_17.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_17.f90
index 6a9f32fdebd..5f3077947f3 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_17.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_17.f90
@@ -23,7 +23,7 @@ use m
x%ptr => abc
print *,x%ptr(str)
strptr => x%ptr(str)
- if (strptr/='abcde') call abort()
+ if (strptr/='abcde') STOP 1
str = 'fghij'
- if (strptr/='fghij') call abort()
+ if (strptr/='fghij') STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_18.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_18.f90
index 4b849b64e18..a7e89d5a694 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_18.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_18.f90
@@ -14,7 +14,7 @@ PROGRAM test
o%f => add
g=greater(4.,o%f(1.,2.))
- if (.not. g) call abort()
+ if (.not. g) STOP 1
CONTAINS
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_19.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_19.f90
index 8027c82d39b..b9b7da25e9d 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_19.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_19.f90
@@ -14,7 +14,7 @@ PROGRAM test
o%f => three
g=greater(4.,o%f())
- if (.not. g) call abort()
+ if (.not. g) STOP 1
CONTAINS
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_2.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_2.f90
index 33e32aaf63e..84e98a693f7 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_2.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_2.f90
@@ -27,19 +27,19 @@
! Check with interface from contained function
obj%ppc => fcn
base=obj%ppc(2)
- if (base/=4) call abort
+ if (base/=4) STOP 1
call foo (obj%ppc,3)
! Check with abstract interface
obj%ppc1 => obj%ppc
base=obj%ppc1(4)
- if (base/=8) call abort
+ if (base/=8) STOP 1
call foo (obj%ppc1,5)
! Check compatibility components with non-components
f => obj%ppc
base=f(6)
- if (base/=12) call abort
+ if (base/=12) STOP 1
call foo (f,7)
contains
@@ -52,7 +52,7 @@ contains
subroutine foo (arg, i)
procedure (fcn), pointer :: arg
integer :: i
- if (arg(i)/=2*i) call abort
+ if (arg(i)/=2*i) STOP 1
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_29.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_29.f90
index 94c59cd1a3b..4a878516769 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_29.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_29.f90
@@ -11,7 +11,7 @@
real, dimension(2) :: r
x%p => fun
r = evaluate (x%p)
- if (r(1) /= 5 .and. r(2) /= 6) call abort()
+ if (r(1) /= 5 .and. r(2) /= 6) STOP 1
contains
function fun ()
real, dimension(2) :: fun
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_45.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_45.f90
index 31803453c54..32fb1d824e9 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_45.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_45.f90
@@ -43,7 +43,7 @@ end
allocate (template)
allocate (template%rng)
template%obs1_int => cos
- if (abs (template%obs1_int (arg) - cos (arg)) .gt. 1e-4) call abort
+ if (abs (template%obs1_int (arg) - cos (arg)) .gt. 1e-4) STOP 1
allocate (object, source = template)
- if (abs (object%obs1_int (arg) - cos (arg)) .gt. 1e-4) call abort
+ if (abs (object%obs1_int (arg) - cos (arg)) .gt. 1e-4) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_47.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_47.f90
index 1d5210019ff..1b784c01cd9 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_47.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_47.f90
@@ -31,10 +31,10 @@ CONTAINS
TYPE( sm_type ), DIMENSION( : ), ALLOCATABLE :: matrices_a, matrices_b
n_push_tot =2
ALLOCATE( matrices_a( n_push_tot + 1 ), matrices_b( n_push_tot + 1), STAT=istat )
- if (istat /= 0) call abort()
- if (.not. allocated(matrices_a)) call abort()
- if (.not. allocated(matrices_b)) call abort()
- if (associated(matrices_a(1)%dist%map_blk_to_proc)) call abort()
+ if (istat /= 0) STOP 1
+ if (.not. allocated(matrices_a)) STOP 2
+ if (.not. allocated(matrices_b)) STOP 3
+ if (associated(matrices_a(1)%dist%map_blk_to_proc)) STOP 4
END SUBROUTINE sm_multiply_a
END PROGRAM comp_proc_ptr_test
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_5.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_5.f90
index 216cb4e9b3a..7c97ddcd53b 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_5.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_5.f90
@@ -27,11 +27,11 @@ integer :: j = 0
x%c%s => is
call x%c%s
-if (j/=5) call abort
+if (j/=5) STOP 1
x%c%f => if
j=x%c%f()
-if (j/=42) call abort
+if (j/=42) STOP 2
contains
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_6.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_6.f90
index 12aaf7951b8..b953e48b1ff 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_6.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_6.f90
@@ -56,6 +56,6 @@ program main
x%proc => print_my_square
call x%proc(x, output_unit)
- if (calls/=2) call abort
+ if (calls/=2) STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_8.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_8.f90
index ed06c2bc651..f2160e4e3af 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_8.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_8.f90
@@ -33,12 +33,12 @@ PROGRAM test_prog
f_array(3)%f => f_array(1)%f
r = f(1.,2.)
- if (abs(r-3.)>1E-3) call abort()
+ if (abs(r-3.)>1E-3) STOP 1
r = f_array(1)%f(4.,2.)
- if (abs(r-6.)>1E-3) call abort()
+ if (abs(r-6.)>1E-3) STOP 2
r = f_array(2)%f(5.,3.)
- if (abs(r-2.)>1E-3) call abort()
- if (abs(f_array(1)%f(1.,3.)-f_array(3)%f(2.,2.))>1E-3) call abort()
+ if (abs(r-2.)>1E-3) STOP 3
+ if (abs(f_array(1)%f(1.,3.)-f_array(3)%f(2.,2.))>1E-3) STOP 4
CONTAINS
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_9.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_9.f90
index 951db485fb0..2f7fe9892ea 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_9.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_9.f90
@@ -18,11 +18,11 @@ PROGRAM test_prog
ppt%f => triple
f => ppt%f
tres = f(2,[2.,4.])
- if (abs(tres(1)-6.)>1E-3) call abort()
- if (abs(tres(2)-12.)>1E-3) call abort()
+ if (abs(tres(1)-6.)>1E-3) STOP 1
+ if (abs(tres(2)-12.)>1E-3) STOP 2
tres = ppt%f(2,[3.,5.])
- if (abs(tres(1)-9.)>1E-3) call abort()
- if (abs(tres(2)-15.)>1E-3) call abort()
+ if (abs(tres(1)-9.)>1E-3) STOP 3
+ if (abs(tres(2)-15.)>1E-3) STOP 4
CONTAINS
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_1.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_1.f90
index 0798a7b16f8..5678be6f878 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_1.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_1.f90
@@ -40,6 +40,6 @@ program Test_03
call m%seti(6)
- if (m%i/=6) call abort()
+ if (m%i/=6) STOP 1
end program Test_03
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_2.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_2.f90
index dc5253dd6d0..e8a3a59318c 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_2.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_2.f90
@@ -16,14 +16,14 @@ contains
subroutine print_me (arg, lun)
class(t), intent(in) :: arg
integer, intent(in) :: lun
- if (abs(arg%a-2.718)>1E-6) call abort()
+ if (abs(arg%a-2.718)>1E-6) STOP 1
write (lun,*) arg%a
end subroutine print_me
subroutine print_my_square (arg, lun)
class(t), intent(in) :: arg
integer, intent(in) :: lun
- if (abs(arg%a-2.718)>1E-6) call abort()
+ if (abs(arg%a-2.718)>1E-6) STOP 2
write (lun,*) arg%a**2
end subroutine print_my_square
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_3.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_3.f90
index add025cb050..291c6d8a04a 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_3.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_3.f90
@@ -28,8 +28,8 @@ contains
subroutine my_obp_sub(w,x)
integer :: w
class(t) :: x
- if (x%name/="doodoo") call abort()
- if (w/=32) call abort()
+ if (x%name/="doodoo") STOP 1
+ if (w/=32) STOP 2
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_5.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_5.f90
index 70a99f9211d..bc13d632f06 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_5.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_pass_5.f90
@@ -16,10 +16,10 @@ contains
type(t) :: y
if(present(x)) then
print *, 'foo', x%i, y%i
- if (mod(x%i+y%i,3)/=2) call abort()
+ if (mod(x%i+y%i,3)/=2) STOP 1
else
print *, 'foo', y%i
- if (mod(y%i,3)/=1) call abort()
+ if (mod(y%i,3)/=1) STOP 2
end if
end subroutine foo
end module m
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_result_1.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_result_1.f90
index 4a8020e35b8..6d7e89a7be0 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_result_1.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_result_1.f90
@@ -31,47 +31,47 @@ procedure(integer),pointer :: p,p2
procedure(sub),pointer :: ps
p => a()
-if (p(-1)/=1) call abort()
+if (p(-1)/=1) STOP 1
p => b()
-if (p(-2)/=2) call abort()
+if (p(-2)/=2) STOP 2
p => c()
-if (p(-3)/=3) call abort()
+if (p(-3)/=3) STOP 3
ps => d()
x = 4
call ps(x)
-if (x/=16) call abort()
+if (x/=16) STOP 4
p => dd()
-if (p(-4)/=4) call abort()
+if (p(-4)/=4) STOP 5
ps => e(sub)
x = 5
call ps(x)
-if (x/=25) call abort()
+if (x/=25) STOP 6
p => ee()
-if (p(-5)/=5) call abort()
+if (p(-5)/=5) STOP 7
p => f()
-if (p(-6)/=6) call abort()
+if (p(-6)/=6) STOP 8
p => g()
-if (p(-7)/=7) call abort()
+if (p(-7)/=7) STOP 9
ps => h(sub)
x = 2
call ps(x)
-if (x/=4) call abort()
+if (x/=4) STOP 10
p => i()
-if (p(-8)/=8) call abort()
+if (p(-8)/=8) STOP 11
p => j()
-if (p(-9)/=9) call abort()
+if (p(-9)/=9) STOP 12
p => k(p2)
-if (p(-10)/=p2(-10)) call abort()
+if (p(-10)/=p2(-10)) STOP 13
p => l()
-if (p(-11)/=11) call abort()
+if (p(-11)/=11) STOP 14
contains
@@ -180,7 +180,7 @@ contains
procedure(interf_iabs),pointer :: l
integer :: i
l => iabs
- if (l(-11)/=11) call abort()
+ if (l(-11)/=11) STOP 15
end function
end
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_result_3.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_result_3.f90
index 3ed899ce45c..07c781502e8 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_result_3.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_result_3.f90
@@ -39,10 +39,10 @@ program test
integer :: k = 1
call my_sub(k)
- if (k/=3) call abort
+ if (k/=3) STOP 1
qsub => get_sub()
call qsub(k)
- if (k/=9) call abort
+ if (k/=9) STOP 2
end program test
recursive subroutine my_sub(j)
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_result_6.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_result_6.f90
index 9d625afb7a6..2bb4fa1fdd0 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_result_6.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_result_6.f90
@@ -27,15 +27,15 @@ contains
procedure(sub) :: s
integer :: b
call s(b)
- if (b /= 42) call abort()
+ if (b /= 42) STOP 1
end subroutine
subroutine caller2(f)
procedure(integer) :: f
- if (f() /= 42) call abort()
+ if (f() /= 42) STOP 2
end subroutine
subroutine caller3(f)
procedure(func),pointer :: f
- if (f() /= 42) call abort()
+ if (f() /= 42) STOP 3
end subroutine
function getPtr1()
procedure(sub), pointer :: getPtr1
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_result_7.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_result_7.f90
index b77e40b7b69..5433cdeb560 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_result_7.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_result_7.f90
@@ -22,7 +22,7 @@ x%p => a
pp => x%p()
-if (pp(-3) /= 3) call abort
+if (pp(-3) /= 3) STOP 1
contains
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_result_8.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_result_8.f90
index be23f5196cd..6aabdfbdbfc 100644
--- a/gcc/testsuite/gfortran.dg/proc_ptr_result_8.f90
+++ b/gcc/testsuite/gfortran.dg/proc_ptr_result_8.f90
@@ -37,16 +37,16 @@ procedure(interf_iabs), pointer :: pp
procedure(foo), pointer :: pp1
x%p => a ! ok
-if (x%p(0) .ne. loc(foo)) call abort
-if (x%p(1) .ne. loc(iabs)) call abort
+if (x%p(0) .ne. loc(foo)) STOP 1
+if (x%p(1) .ne. loc(iabs)) STOP 2
x%p => a(1) ! { dg-error "PROCEDURE POINTER mismatch in function result" }
pp => a(1) ! ok
-if (pp(-99) .ne. iabs(-99)) call abort
+if (pp(-99) .ne. iabs(-99)) STOP 3
pp1 => a(2) ! ok
-if (pp1(-99) .ne. -iabs(-99)) call abort
+if (pp1(-99) .ne. -iabs(-99)) STOP 4
pp => a ! { dg-error "PROCEDURE POINTER mismatch in function result" }
diff --git a/gcc/testsuite/gfortran.dg/product_init_expr.f03 b/gcc/testsuite/gfortran.dg/product_init_expr.f03
index c6ff7e8caf6..53f45a9e31a 100644
--- a/gcc/testsuite/gfortran.dg/product_init_expr.f03
+++ b/gcc/testsuite/gfortran.dg/product_init_expr.f03
@@ -25,8 +25,8 @@
PRODUCT( rmatrix_prod_d1 ) == rmatrix_prod])
LOGICAL, PARAMETER :: r_empty_prod = PRODUCT(rmatrix, mask=.FALSE.) == 1.0
- IF (.NOT. ALL ([i_equal_prod, i_empty_prod])) CALL abort()
- IF (.NOT. ALL ([r_equal_prod, r_empty_prod])) CALL abort()
+ IF (.NOT. ALL ([i_equal_prod, i_empty_prod])) STOP 1
+ IF (.NOT. ALL ([r_equal_prod, r_empty_prod])) STOP 2
CALL ilib (imatrix, imatrix_prod)
CALL ilib_with_dim (imatrix, 1, imatrix_prod_d1)
@@ -39,27 +39,27 @@ CONTAINS
SUBROUTINE ilib (array, result)
INTEGER, DIMENSION(:,:), INTENT(in) :: array
INTEGER, INTENT(in) :: result
- IF (PRODUCT(array) /= result) CALL abort()
+ IF (PRODUCT(array) /= result) STOP 3
END SUBROUTINE
SUBROUTINE ilib_with_dim (array, dim, result)
INTEGER, DIMENSION(:,:), INTENT(in) :: array
INTEGER, INTENT(iN) :: dim
INTEGER, DIMENSION(:), INTENT(in) :: result
- IF (ANY (PRODUCT (array, dim=dim) /= result)) CALL abort()
+ IF (ANY (PRODUCT (array, dim=dim) /= result)) STOP 4
END SUBROUTINE
SUBROUTINE rlib (array, result)
REAL, DIMENSION(:,:), INTENT(in) :: array
REAL, INTENT(in) :: result
- IF (ABS(PRODUCT(array) - result) > 2e-6) CALL abort()
+ IF (ABS(PRODUCT(array) - result) > 2e-6) STOP 5
END SUBROUTINE
SUBROUTINE rlib_with_dim (array, dim, result)
REAL, DIMENSION(:,:), INTENT(in) :: array
INTEGER, INTENT(iN) :: dim
REAL, DIMENSION(:), INTENT(in) :: result
- IF (ANY (ABS(PRODUCT (array, dim=dim) - result) > 2e-6)) CALL abort()
+ IF (ANY (ABS(PRODUCT (array, dim=dim) - result) > 2e-6)) STOP 6
END SUBROUTINE
END
diff --git a/gcc/testsuite/gfortran.dg/promotion.f90 b/gcc/testsuite/gfortran.dg/promotion.f90
index fc46d853e94..0b87bf2a644 100644
--- a/gcc/testsuite/gfortran.dg/promotion.f90
+++ b/gcc/testsuite/gfortran.dg/promotion.f90
@@ -6,8 +6,8 @@ program a
integer i
real x
double precision d
- if (kind(l) /= 8) call abort
- if (kind(i) /= 8) call abort
- if (kind(x) /= 8) call abort
- if (kind(d) /= 8) call abort
+ if (kind(l) /= 8) STOP 1
+ if (kind(i) /= 8) STOP 2
+ if (kind(x) /= 8) STOP 3
+ if (kind(d) /= 8) STOP 4
end program a
diff --git a/gcc/testsuite/gfortran.dg/promotion_3.f90 b/gcc/testsuite/gfortran.dg/promotion_3.f90
index 3571bd175b2..337e45f44e0 100644
--- a/gcc/testsuite/gfortran.dg/promotion_3.f90
+++ b/gcc/testsuite/gfortran.dg/promotion_3.f90
@@ -10,8 +10,8 @@ real :: r
real(kind=4) :: r4
real(kind=8) :: r8
double precision :: d
-if (kind(r4) /= 4) call abort
-if (kind(r8) /= 8) call abort
-if (kind(r) /= 16) call abort
-if (kind(d) /= 16) call abort
+if (kind(r4) /= 4) STOP 1
+if (kind(r8) /= 8) STOP 2
+if (kind(r) /= 16) STOP 3
+if (kind(d) /= 16) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/promotion_4.f90 b/gcc/testsuite/gfortran.dg/promotion_4.f90
index 8378cdd264a..639caf46c56 100644
--- a/gcc/testsuite/gfortran.dg/promotion_4.f90
+++ b/gcc/testsuite/gfortran.dg/promotion_4.f90
@@ -10,8 +10,8 @@ real :: r
real(kind=4) :: r4
real(kind=8) :: r8
double precision :: d
-if (kind(r4) /= 4) call abort
-if (kind(r8) /= 8) call abort
-if (kind(r) /= 10) call abort
-if (kind(d) < 10) call abort
+if (kind(r4) /= 4) STOP 1
+if (kind(r8) /= 8) STOP 2
+if (kind(r) /= 10) STOP 3
+if (kind(d) < 10) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/protected_1.f90 b/gcc/testsuite/gfortran.dg/protected_1.f90
index 0805e98664f..0416e46ecfb 100644
--- a/gcc/testsuite/gfortran.dg/protected_1.f90
+++ b/gcc/testsuite/gfortran.dg/protected_1.f90
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2003 -fall-intrinsics" }
+! { dg-options "-std=f2003 " }
! PR fortran/23994
!
! Test PROTECTED attribute. Within the module everything is allowed.
@@ -25,7 +25,7 @@ contains
allocate(ap)
ap = 73
call increment(a,ap,at)
- if(a /= 44 .or. ap /= 74 .or. at /= 4) call abort()
+ if(a /= 44 .or. ap /= 74 .or. at /= 4) STOP 1
end subroutine setValue
subroutine increment(a1,a2,a3)
integer, intent(inout) :: a1, a2, a3
@@ -43,9 +43,9 @@ program main
bp = 4
bt = 7
call setValue()
- if(a /= 44 .or. ap /= 74 .or. at /= 4) call abort()
+ if(a /= 44 .or. ap /= 74 .or. at /= 4) STOP 2
call plus5(ap)
- if(a /= 44 .or. ap /= 79 .or. at /= 4) call abort()
+ if(a /= 44 .or. ap /= 79 .or. at /= 4) STOP 3
call checkVal(a,ap,at)
contains
subroutine plus5(j)
@@ -54,6 +54,6 @@ contains
end subroutine plus5
subroutine checkVal(x,y,z)
integer, intent(in) :: x, y, z
- if(a /= 44 .or. ap /= 79 .or. at /= 4) call abort()
+ if(a /= 44 .or. ap /= 79 .or. at /= 4) STOP 4
end subroutine
end program main
diff --git a/gcc/testsuite/gfortran.dg/protected_2.f90 b/gcc/testsuite/gfortran.dg/protected_2.f90
index c00222d08b2..1ea59e35609 100644
--- a/gcc/testsuite/gfortran.dg/protected_2.f90
+++ b/gcc/testsuite/gfortran.dg/protected_2.f90
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2003 -fall-intrinsics" }
+! { dg-options "-std=f2003 " }
! PR fortran/23994
!
! Test PROTECTED attribute. Within the module everything is allowed.
@@ -23,7 +23,7 @@ contains
allocate(ap)
ap = 73
call increment(a,ap,at)
- if(a /= 44 .or. ap /= 74 .or. at /= 4) call abort()
+ if(a /= 44 .or. ap /= 74 .or. at /= 4) STOP 1
end subroutine setValue
subroutine increment(a1,a2,a3)
integer, intent(inout) :: a1, a2, a3
@@ -37,9 +37,9 @@ program main
use protmod
implicit none
call setValue()
- if(a /= 44 .or. ap /= 74 .or. at /= 4) call abort()
+ if(a /= 44 .or. ap /= 74 .or. at /= 4) STOP 2
call plus5(ap)
- if(a /= 44 .or. ap /= 79 .or. at /= 4) call abort()
+ if(a /= 44 .or. ap /= 79 .or. at /= 4) STOP 3
call checkVal(a,ap,at)
contains
subroutine plus5(j)
@@ -48,6 +48,6 @@ contains
end subroutine plus5
subroutine checkVal(x,y,z)
integer, intent(in) :: x, y, z
- if(a /= 44 .or. ap /= 79 .or. at /= 4) call abort()
+ if(a /= 44 .or. ap /= 79 .or. at /= 4) STOP 4
end subroutine
end program main
diff --git a/gcc/testsuite/gfortran.dg/protected_3.f90 b/gcc/testsuite/gfortran.dg/protected_3.f90
index e3d31a6bf8f..95cdad057cf 100644
--- a/gcc/testsuite/gfortran.dg/protected_3.f90
+++ b/gcc/testsuite/gfortran.dg/protected_3.f90
@@ -1,4 +1,4 @@
-! { dg-options "-std=f95 -fall-intrinsics" }
+! { dg-options "-std=f95" }
! PR fortran/23994
!
! Test PROTECTED attribute. Within the module everything is allowed.
diff --git a/gcc/testsuite/gfortran.dg/protected_4.f90 b/gcc/testsuite/gfortran.dg/protected_4.f90
index 2834680a988..44ca6ac1392 100644
--- a/gcc/testsuite/gfortran.dg/protected_4.f90
+++ b/gcc/testsuite/gfortran.dg/protected_4.f90
@@ -1,6 +1,6 @@
! { dg-do compile }
! { dg-shouldfail "Invalid Fortran 2003 code" }
-! { dg-options "-std=f2003 -fall-intrinsics" }
+! { dg-options "-std=f2003" }
! PR fortran/23994
!
! Test PROTECTED attribute. Within the module everything is allowed.
diff --git a/gcc/testsuite/gfortran.dg/protected_5.f90 b/gcc/testsuite/gfortran.dg/protected_5.f90
index 4901b82143d..410dbdf9001 100644
--- a/gcc/testsuite/gfortran.dg/protected_5.f90
+++ b/gcc/testsuite/gfortran.dg/protected_5.f90
@@ -1,6 +1,6 @@
! { dg-do compile }
! { dg-shouldfail "Invalid Fortran 2003 code" }
-! { dg-options "-std=f2003 -fall-intrinsics" }
+! { dg-options "-std=f2003" }
! PR fortran/23994
!
! Test PROTECTED attribute. Within the module everything is allowed.
diff --git a/gcc/testsuite/gfortran.dg/protected_6.f90 b/gcc/testsuite/gfortran.dg/protected_6.f90
index 8e85bbfe06d..9df9ef47a10 100644
--- a/gcc/testsuite/gfortran.dg/protected_6.f90
+++ b/gcc/testsuite/gfortran.dg/protected_6.f90
@@ -1,6 +1,6 @@
! { dg-do compile }
! { dg-shouldfail "Invalid Fortran 2003 code" }
-! { dg-options "-std=f2003 -fall-intrinsics" }
+! { dg-options "-std=f2003" }
! PR fortran/23994
!
! Test PROTECTED attribute. Within the module everything is allowed.
diff --git a/gcc/testsuite/gfortran.dg/ptr-func-1.f90 b/gcc/testsuite/gfortran.dg/ptr-func-1.f90
index b7c1fc93da2..3d24cd5e37e 100644
--- a/gcc/testsuite/gfortran.dg/ptr-func-1.f90
+++ b/gcc/testsuite/gfortran.dg/ptr-func-1.f90
@@ -1,5 +1,5 @@
! { dg-do compile }
-! { dg-options "-std=f2008 -fall-intrinsics" }
+! { dg-options "-std=f2008 " }
!
! PR fortran/46100
!
@@ -8,11 +8,11 @@
!
integer, target :: tgt
call one (two ())
-if (tgt /= 774) call abort ()
+if (tgt /= 774) STOP 1
contains
subroutine one (x)
integer, intent(inout) :: x
- if (x /= 34) call abort ()
+ if (x /= 34) STOP 2
x = 774
end subroutine one
function two ()
diff --git a/gcc/testsuite/gfortran.dg/ptr-func-2.f90 b/gcc/testsuite/gfortran.dg/ptr-func-2.f90
index 8275f14c789..376c0d6b9cd 100644
--- a/gcc/testsuite/gfortran.dg/ptr-func-2.f90
+++ b/gcc/testsuite/gfortran.dg/ptr-func-2.f90
@@ -1,5 +1,5 @@
! { dg-do compile }
-! { dg-options "-std=f2003 -fall-intrinsics" }
+! { dg-options "-std=f2003 " }
!
! PR fortran/46100
!
@@ -8,11 +8,11 @@
!
integer, target :: tgt
call one (two ()) ! { dg-error "Fortran 2008: Pointer functions" }
-if (tgt /= 774) call abort ()
+if (tgt /= 774) STOP 1
contains
subroutine one (x)
integer, intent(inout) :: x
- if (x /= 34) call abort ()
+ if (x /= 34) STOP 2
x = 774
end subroutine one
function two ()
diff --git a/gcc/testsuite/gfortran.dg/ptr_func_assign_1.f08 b/gcc/testsuite/gfortran.dg/ptr_func_assign_1.f08
index 58efb812fd0..c01cdff7c3c 100644
--- a/gcc/testsuite/gfortran.dg/ptr_func_assign_1.f08
+++ b/gcc/testsuite/gfortran.dg/ptr_func_assign_1.f08
@@ -60,41 +60,41 @@ end module
integer :: foobar, z, i, ifill(4) = [2, 7, 19, 61], ifill2(2) = [1,2]
type(mydt) :: dt
foobar (z) = z**2 ! { dg-warning "Obsolescent feature: Statement function" }
- if (any (a .ne. [1,2,3])) call abort
+ if (any (a .ne. [1,2,3])) STOP 1
! Assignment to pointer result is after procedure call.
foo (a) = 77
! Assignment within procedure applies.
b => foo (a)
- if (b .ne. 99) call abort
+ if (b .ne. 99) STOP 2
! Use of index for assignment.
bar (a, 2) = 99
- if (any (a .ne. [99,99,3])) call abort
+ if (any (a .ne. [99,99,3])) STOP 3
! Make sure that statement function still works!
- if (foobar (10) .ne. 100) call abort
+ if (foobar (10) .ne. 100) STOP 4
bar (a, 3) = foobar (9)
- if (any (a .ne. [99,99,81])) call abort
+ if (any (a .ne. [99,99,81])) STOP 5
! Try typebound procedure
call dt%create (6)
dt%elem_fill (3) = 42
- if (dt%i(3) .ne. 42) call abort
+ if (dt%i(3) .ne. 42) STOP 6
dt%elem_fill (3) = 42 + dt%elem_fill (3) ! PR63921 style assignment
- if (dt%i(3) .ne. 84) call abort
+ if (dt%i(3) .ne. 84) STOP 7
dt%elem_fill (3) = dt%elem_fill (3) - dt%elem_fill (3)
- if (dt%i(3) .ne. 0) call abort
+ if (dt%i(3) .ne. 0) STOP 8
! Array is now reset
dt%fill (3) = ifill ! Check with array variable rhs
dt%fill (1) = [2,1] ! Check with array constructor rhs
- if (any (dt%i .ne. [2,1,ifill])) call abort
+ if (any (dt%i .ne. [2,1,ifill])) STOP 9
dt%fill (1) = footoo (size (dt%i, 1)) ! Check with array function rhs
- if (any (dt%i .ne. [6,5,4,3,2,1])) call abort
+ if (any (dt%i .ne. [6,5,4,3,2,1])) STOP 10
dt%fill (3) = ifill + dt%fill (3) ! Array version of PR63921 assignment
- if (any (dt%i .ne. [6,5,6,10,21,62])) call abort
+ if (any (dt%i .ne. [6,5,6,10,21,62])) STOP 11
call dt%delete
contains
diff --git a/gcc/testsuite/gfortran.dg/ptr_func_assign_2.f08 b/gcc/testsuite/gfortran.dg/ptr_func_assign_2.f08
index bb84b213f1d..3444d882005 100644
--- a/gcc/testsuite/gfortran.dg/ptr_func_assign_2.f08
+++ b/gcc/testsuite/gfortran.dg/ptr_func_assign_2.f08
@@ -61,41 +61,41 @@ end module
integer :: foobar, z, i, ifill(4) = [2, 7, 19, 61], ifill2(2) = [1,2]
type(mydt) :: dt
foobar (z) = z**2 ! { dg-warning "Obsolescent feature: Statement function" }
- if (any (a .ne. [1,2,3])) call abort
+ if (any (a .ne. [1,2,3])) STOP 1
! Assignment to pointer result is after procedure call.
foo (a) = 77 ! { dg-error "Pointer procedure assignment" }
! Assignment within procedure applies.
b => foo (a)
- if (b .ne. 99) call abort
+ if (b .ne. 99) STOP 2
! Use of index for assignment.
bar (a, 2) = 99 ! { dg-error "Pointer procedure assignment" }
- if (any (a .ne. [99,99,3])) call abort
+ if (any (a .ne. [99,99,3])) STOP 3
! Make sure that statement function still works!
- if (foobar (10) .ne. 100) call abort
+ if (foobar (10) .ne. 100) STOP 4
bar (a, 3) = foobar (9)! { dg-error "Pointer procedure assignment" }
- if (any (a .ne. [99,99,81])) call abort
+ if (any (a .ne. [99,99,81])) STOP 5
! Try typebound procedure
call dt%create (6)
dt%elem_fill (3) = 42 ! { dg-error "Pointer procedure assignment" }
- if (dt%i(3) .ne. 42) call abort
+ if (dt%i(3) .ne. 42) STOP 6
dt%elem_fill (3) = 42 + dt%elem_fill (3)! { dg-error "Pointer procedure assignment" }
- if (dt%i(3) .ne. 84) call abort
+ if (dt%i(3) .ne. 84) STOP 7
dt%elem_fill (3) = dt%elem_fill (3) - dt%elem_fill (3)! { dg-error "Pointer procedure assignment" }
- if (dt%i(3) .ne. 0) call abort
+ if (dt%i(3) .ne. 0) STOP 8
! Array is now reset
dt%fill (3) = ifill ! { dg-error "Pointer procedure assignment" }
dt%fill (1) = [2,1] ! { dg-error "Pointer procedure assignment" }
- if (any (dt%i .ne. [2,1,ifill])) call abort
+ if (any (dt%i .ne. [2,1,ifill])) STOP 9
dt%fill (1) = footoo (size (dt%i, 1)) ! { dg-error "Pointer procedure assignment" }
- if (any (dt%i .ne. [6,5,4,3,2,1])) call abort
+ if (any (dt%i .ne. [6,5,4,3,2,1])) STOP 10
dt%fill (3) = ifill + dt%fill (3) ! { dg-error "Pointer procedure assignment" }
- if (any (dt%i .ne. [6,5,6,10,21,62])) call abort
+ if (any (dt%i .ne. [6,5,6,10,21,62])) STOP 11
call dt%delete
contains
diff --git a/gcc/testsuite/gfortran.dg/ptr_func_assign_3.f08 b/gcc/testsuite/gfortran.dg/ptr_func_assign_3.f08
index 4d56afbe789..696828e2985 100644
--- a/gcc/testsuite/gfortran.dg/ptr_func_assign_3.f08
+++ b/gcc/testsuite/gfortran.dg/ptr_func_assign_3.f08
@@ -28,13 +28,13 @@ program p
type(dt) :: sdt = dt(1)
func (arg=b) = 1 ! This was rejected as an unclassifiable statement
- if (a /= 1) call abort
+ if (a /= 1) STOP 1
func (b + b - 3) = -1
- if (a /= -1) call abort
+ if (a /= -1) STOP 2
dtfunc () = sdt ! Check that defined assignment is resolved
- if (tdt%data /= 2) call abort
+ if (tdt%data /= 2) STOP 3
contains
function func(arg) result(r)
integer, pointer :: r
diff --git a/gcc/testsuite/gfortran.dg/pure_byref_1.f90 b/gcc/testsuite/gfortran.dg/pure_byref_1.f90
index 5e080e5af10..855295b1503 100644
--- a/gcc/testsuite/gfortran.dg/pure_byref_1.f90
+++ b/gcc/testsuite/gfortran.dg/pure_byref_1.f90
@@ -5,7 +5,7 @@ program main
character(2), dimension(2) :: a, b
a = 'ok'
b = fun(a)
- if (.not.all(b == 'ok')) call abort()
+ if (.not.all(b == 'ok')) STOP 1
contains
elemental function fun(a)
character(*), intent(in) :: a
diff --git a/gcc/testsuite/gfortran.dg/pure_byref_2.f90 b/gcc/testsuite/gfortran.dg/pure_byref_2.f90
index 805653e2ed3..d5474f091b0 100644
--- a/gcc/testsuite/gfortran.dg/pure_byref_2.f90
+++ b/gcc/testsuite/gfortran.dg/pure_byref_2.f90
@@ -4,7 +4,7 @@ program main
implicit none
integer, dimension(2) :: b
b = fun(size(b))
- if (b(1) /= 1 .or. b(2) /= 2) call abort()
+ if (b(1) /= 1 .or. b(2) /= 2) STOP 1
contains
pure function fun(n)
integer, intent(in) :: n
diff --git a/gcc/testsuite/gfortran.dg/pure_byref_3.f90 b/gcc/testsuite/gfortran.dg/pure_byref_3.f90
index cb2644ff898..2574e479ad9 100644
--- a/gcc/testsuite/gfortran.dg/pure_byref_3.f90
+++ b/gcc/testsuite/gfortran.dg/pure_byref_3.f90
@@ -26,8 +26,8 @@ program pure_byref_3
integer :: a(3)
a = huj()
- if (.not. all(a == (/1, 2, 3/))) call abort()
+ if (.not. all(a == (/1, 2, 3/))) STOP 1
a = hoj()
- if (.not. all(a == (/1, 2, 3/))) call abort()
+ if (.not. all(a == (/1, 2, 3/))) STOP 2
end program pure_byref_3
diff --git a/gcc/testsuite/gfortran.dg/quad_2.f90 b/gcc/testsuite/gfortran.dg/quad_2.f90
index f7a8a469861..d03f37864e2 100644
--- a/gcc/testsuite/gfortran.dg/quad_2.f90
+++ b/gcc/testsuite/gfortran.dg/quad_2.f90
@@ -27,41 +27,41 @@ program test_qp
! print '(3a)', '>',trim(str4),'<'
read (str1, *) fp3
- if (fp1 /= fp3) call abort()
+ if (fp1 /= fp3) STOP 1
read (str2, *) fp3
- if (fp1 /= fp3) call abort()
+ if (fp1 /= fp3) STOP 2
read (str3, *) fp4
- if (abs (fp2 - fp4)/fp2 > epsilon(fp2)) call abort()
+ if (abs (fp2 - fp4)/fp2 > epsilon(fp2)) STOP 3
read (str4, *) fp4
- if (abs (fp2 - fp4)/fp2 > epsilon(fp2)) call abort()
+ if (abs (fp2 - fp4)/fp2 > epsilon(fp2)) STOP 4
select case (qp)
case (8)
- if (str1 /= " 1.0000000000000000") call abort()
- if (str2 /= "1.0000000000000000") call abort()
- if (str3 /= " 1.4142135623730951") call abort()
- if (str4 /= "1.4142135623730951") call abort()
+ if (str1 /= " 1.0000000000000000") STOP 5
+ if (str2 /= "1.0000000000000000") STOP 6
+ if (str3 /= " 1.4142135623730951") STOP 7
+ if (str4 /= "1.4142135623730951") STOP 8
case (10)
- if (str1 /= " 1.00000000000000000000") call abort()
- if (str2 /= "1.00000000000000000000") call abort()
- if (str3 /= " 1.41421356237309504876") call abort()
- if (str4 /= "1.41421356237309504876") call abort()
+ if (str1 /= " 1.00000000000000000000") STOP 9
+ if (str2 /= "1.00000000000000000000") STOP 10
+ if (str3 /= " 1.41421356237309504876") STOP 11
+ if (str4 /= "1.41421356237309504876") STOP 12
case (16)
if (digits(1.0_qp) == 113) then
! IEEE 754 binary 128 format
! e.g. libquadmath/__float128 on i686/x86_64/ia64
- if (str1 /= " 1.00000000000000000000000000000000000") call abort()
- if (str2 /= "1.00000000000000000000000000000000000") call abort()
- if (str3 /= " 1.41421356237309504880168872420969798") call abort()
- if (str4 /= "1.41421356237309504880168872420969798") call abort()
+ if (str1 /= " 1.00000000000000000000000000000000000") STOP 13
+ if (str2 /= "1.00000000000000000000000000000000000") STOP 14
+ if (str3 /= " 1.41421356237309504880168872420969798") STOP 15
+ if (str4 /= "1.41421356237309504880168872420969798") STOP 16
else if (digits(1.0_qp) == 106) then
! IBM binary 128 format
- if (str1 /= " 1.0000000000000000000000000000000") call abort()
- if (str2 /= "1.0000000000000000000000000000000") call abort()
- if (str3(1:37) /= " 1.4142135623730950488016887242097") call abort()
- if (str4(1:34) /= "1.4142135623730950488016887242097") call abort()
+ if (str1 /= " 1.0000000000000000000000000000000") STOP 17
+ if (str2 /= "1.0000000000000000000000000000000") STOP 18
+ if (str3(1:37) /= " 1.4142135623730950488016887242097") STOP 19
+ if (str4(1:34) /= "1.4142135623730950488016887242097") STOP 20
end if
! Do a libm run-time test
@@ -69,11 +69,11 @@ program test_qp
real(qp), volatile :: fp2a
fp2a = 2.0_qp
fp2a = sqrt (fp2a)
- if (abs (fp2a - fp2) > sqrt(2.0_qp)-nearest(sqrt(2.0_qp),-1.0_qp)) call abort()
+ if (abs (fp2a - fp2) > sqrt(2.0_qp)-nearest(sqrt(2.0_qp),-1.0_qp)) STOP 21
end block
case default
- call abort()
+ STOP 22
end select
end program test_qp
diff --git a/gcc/testsuite/gfortran.dg/quad_3.f90 b/gcc/testsuite/gfortran.dg/quad_3.f90
index be8e3c38f1c..173829151e3 100644
--- a/gcc/testsuite/gfortran.dg/quad_3.f90
+++ b/gcc/testsuite/gfortran.dg/quad_3.f90
@@ -26,6 +26,6 @@ program test_qp
! print *, 'same value read again: ', a, c
! print *, 'difference: looks OK now ', a-b(1)
if (abs (a-b(1))/a > epsilon(0.0_qp) &
- .or. abs (c-b(1))/c > epsilon (0.0_qp)) call abort()
+ .or. abs (c-b(1))/c > epsilon (0.0_qp)) STOP 1
end if
end program test_qp
diff --git a/gcc/testsuite/gfortran.dg/random_3.f90 b/gcc/testsuite/gfortran.dg/random_3.f90
index 04910002c1f..8f0fbaf57b9 100644
--- a/gcc/testsuite/gfortran.dg/random_3.f90
+++ b/gcc/testsuite/gfortran.dg/random_3.f90
@@ -30,6 +30,6 @@ program random_3
call random_number(r10)
call random_number (r10(10))
- if (any ((r8 - r10) .gt. delta)) call abort
+ if (any ((r8 - r10) .gt. delta)) STOP 1
end if
end program random_3
diff --git a/gcc/testsuite/gfortran.dg/random_4.f90 b/gcc/testsuite/gfortran.dg/random_4.f90
index e60698f4906..2fe5d81a64b 100644
--- a/gcc/testsuite/gfortran.dg/random_4.f90
+++ b/gcc/testsuite/gfortran.dg/random_4.f90
@@ -11,7 +11,7 @@ program trs
call test_random_seed(get=check)
! With xorshift1024* the last seed value is special
seed(size) = check(size)
- if (any (seed /= check)) call abort
+ if (any (seed /= check)) STOP 1
contains
subroutine test_random_seed(size, put, get)
integer, optional :: size
diff --git a/gcc/testsuite/gfortran.dg/random_7.f90 b/gcc/testsuite/gfortran.dg/random_7.f90
index 8cd9c43bd66..b88dbc7a01d 100644
--- a/gcc/testsuite/gfortran.dg/random_7.f90
+++ b/gcc/testsuite/gfortran.dg/random_7.f90
@@ -13,7 +13,7 @@ program trs
! In the current xorshift1024* implementation the last seed value is
! special
seed(size) = check(size)
- if (any (seed /= check)) call abort
+ if (any (seed /= check)) STOP 1
contains
subroutine test_random_seed(size, put, get)
integer, optional :: size
diff --git a/gcc/testsuite/gfortran.dg/read_2.f90 b/gcc/testsuite/gfortran.dg/read_2.f90
index d12dcef71eb..f85e9552d40 100644
--- a/gcc/testsuite/gfortran.dg/read_2.f90
+++ b/gcc/testsuite/gfortran.dg/read_2.f90
@@ -8,5 +8,5 @@ implicit none
complex :: x
character(len=80) :: t="(1.0E-7,4.0E-3)"
read(t,*) x
-if (real(x) /= 1.0e-7 .or. aimag(x)/=4.0e-3) call abort()
+if (real(x) /= 1.0e-7 .or. aimag(x)/=4.0e-3) STOP 1
END
diff --git a/gcc/testsuite/gfortran.dg/read_3.f90 b/gcc/testsuite/gfortran.dg/read_3.f90
index 630666e2938..c49ab1e019c 100644
--- a/gcc/testsuite/gfortran.dg/read_3.f90
+++ b/gcc/testsuite/gfortran.dg/read_3.f90
@@ -9,5 +9,5 @@ program gfortran_710_io_bug
write(str,fmt='(a)') i
i = 0
read ( unit=str(1:4), fmt='(a)' ) i4
- if (i4.ne.256) call abort
+ if (i4.ne.256) STOP 1
end program gfortran_710_io_bug
diff --git a/gcc/testsuite/gfortran.dg/read_4.f90 b/gcc/testsuite/gfortran.dg/read_4.f90
index 7a835b124af..7229bebcf57 100644
--- a/gcc/testsuite/gfortran.dg/read_4.f90
+++ b/gcc/testsuite/gfortran.dg/read_4.f90
@@ -18,18 +18,18 @@ program p
x = 0
y = 0
read(io, test)
- if (x.ne.10 .or. y.ne.10) call abort
+ if (x.ne.10 .or. y.ne.10) STOP 1
!
read(io, *) line
- if (line.ne.'done') call abort
+ if (line.ne.'done') STOP 2
!
read(io, *, iostat=ios) line
- if (ios/=iostat_end) call abort
+ if (ios/=iostat_end) STOP 3
rewind(io)
x = 0
y = 0
read(io, test)
- if (x.ne.10 .or. y.ne.10) call abort
+ if (x.ne.10 .or. y.ne.10) STOP 4
read(io, *, iostat=ios) line
- if (line.ne.'done') call abort
+ if (line.ne.'done') STOP 5
end
diff --git a/gcc/testsuite/gfortran.dg/read_5.f90 b/gcc/testsuite/gfortran.dg/read_5.f90
index 81f1f11cf28..80ff651c9c2 100644
--- a/gcc/testsuite/gfortran.dg/read_5.f90
+++ b/gcc/testsuite/gfortran.dg/read_5.f90
@@ -14,8 +14,8 @@
write(value,'(i3,a5)') j," 5 69"
read(value,*,end=20) intvalues
20 write(result,*) (intvalues(i),i=2,4)
- if (result.ne.(' 5 69 33')) call abort
+ if (result.ne.(' 5 69 33')) STOP 1
call cpu_time(finish)
- if ((finish-start).gt. 0.5) call abort
+ if ((finish-start).gt. 0.5) STOP 2
enddo
end program internalread
diff --git a/gcc/testsuite/gfortran.dg/read_bad_advance.f90 b/gcc/testsuite/gfortran.dg/read_bad_advance.f90
index 539ada496be..d6d4d04d21d 100644
--- a/gcc/testsuite/gfortran.dg/read_bad_advance.f90
+++ b/gcc/testsuite/gfortran.dg/read_bad_advance.f90
@@ -28,5 +28,5 @@
close(10)
stop
99 close(10)
- call abort()
+ STOP 1
end program test
diff --git a/gcc/testsuite/gfortran.dg/read_bang.f90 b/gcc/testsuite/gfortran.dg/read_bang.f90
index 7806ca776eb..68509e2eadf 100644
--- a/gcc/testsuite/gfortran.dg/read_bang.f90
+++ b/gcc/testsuite/gfortran.dg/read_bang.f90
@@ -25,13 +25,13 @@ program test
write(15,*) " 'abcdefgh!' ' !klmnopq!'"
rewind(15)
read(15,*,iostat=ios) i, j
- if (ios.ne.5010) call abort
+ if (ios.ne.5010) STOP 1
read(15,*,iostat=ios) r, s
- if (ios.ne.5010) call abort
+ if (ios.ne.5010) STOP 2
read(15,*,iostat=ios) c, d
- if (ios.ne.5010) call abort
+ if (ios.ne.5010) STOP 3
read(15,*,iostat=ios) str1, str2
- if (ios.ne.0) call abort
+ if (ios.ne.0) STOP 4
if (str1.ne."abcdefgh!") print *, str1
if (str2.ne." !klmnopq!") print *, str2
close(15)
diff --git a/gcc/testsuite/gfortran.dg/read_bang4.f90 b/gcc/testsuite/gfortran.dg/read_bang4.f90
index 78101fcb8ad..6f5d282891a 100644
--- a/gcc/testsuite/gfortran.dg/read_bang4.f90
+++ b/gcc/testsuite/gfortran.dg/read_bang4.f90
@@ -34,14 +34,14 @@ program test
str1 = 4_"candy"
str2 = 4_"peppermint"
read(15,*,iostat=ios) i, j
- if (ios.ne.5010) call abort
+ if (ios.ne.5010) STOP 1
read(15,*,iostat=ios) r, s
- if (ios.ne.5010) call abort
+ if (ios.ne.5010) STOP 2
read(15,*,iostat=ios) c, d
- if (ios.ne.5010) call abort
+ if (ios.ne.5010) STOP 3
read(15,*,iostat=ios) str1, str2
- if (ios.ne.0) call abort
- if (str1.ne.4_"abcdefgh!") call abort
- if (str2.ne.str3) call abort
+ if (ios.ne.0) STOP 4
+ if (str1.ne.4_"abcdefgh!") STOP 5
+ if (str2.ne.str3) STOP 6
close(15)
end program
diff --git a/gcc/testsuite/gfortran.dg/read_comma.f b/gcc/testsuite/gfortran.dg/read_comma.f
index 024fceae72c..2ef61c43de6 100644
--- a/gcc/testsuite/gfortran.dg/read_comma.f
+++ b/gcc/testsuite/gfortran.dg/read_comma.f
@@ -14,13 +14,13 @@
write(10,'(a)') "1, 235"
rewind(10)
read(10,'(3i2)') i1,i2,i3
- if(i1.ne.1) call abort()
- if(i2.ne.2) call abort()
- if(i3.ne.35) call abort()
+ if(i1.ne.1) STOP 1
+ if(i2.ne.2) STOP 2
+ if(i3.ne.35) STOP 3
rewind(10)
! Make sure commas are read in character strings.
write(10,'(a)') "1234,6789,"
rewind(10)
read(10,'(a10)') a1
- if(a1.ne."1234,6789,") call abort()
+ if(a1.ne."1234,6789,") STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/read_dir.f90 b/gcc/testsuite/gfortran.dg/read_dir.f90
index 4e713e74d9e..c7ddc51fb90 100644
--- a/gcc/testsuite/gfortran.dg/read_dir.f90
+++ b/gcc/testsuite/gfortran.dg/read_dir.f90
@@ -9,12 +9,12 @@ program bug
open(unit=10, file='junko.dir',iostat=ios,action='read',access='stream')
if (ios.ne.0) then
call system('rmdir junko.dir')
- call abort
+ STOP 1
end if
read(10, iostat=ios) c
if (ios.ne.21.and.ios.ne.0) then
close(10, status='delete')
- call abort
+ STOP 2
end if
close(10, status='delete')
end program bug
diff --git a/gcc/testsuite/gfortran.dg/read_empty_file.f b/gcc/testsuite/gfortran.dg/read_empty_file.f
index d4077481bda..bf0f8622137 100644
--- a/gcc/testsuite/gfortran.dg/read_empty_file.f
+++ b/gcc/testsuite/gfortran.dg/read_empty_file.f
@@ -2,6 +2,6 @@
! PR43320 Missing EOF on read from empty file.
open(8,status='scratch',form='formatted') ! Create empty file
read(8,'(a80)', end=123) ! Reading from an empty file should be an EOF
- call abort
+ STOP 1
123 continue
end
diff --git a/gcc/testsuite/gfortran.dg/read_eof_1.f90 b/gcc/testsuite/gfortran.dg/read_eof_1.f90
index 78ff14a5d9b..2a670dce4c3 100644
--- a/gcc/testsuite/gfortran.dg/read_eof_1.f90
+++ b/gcc/testsuite/gfortran.dg/read_eof_1.f90
@@ -9,7 +9,7 @@
open(unit=11,status='scratch',form='unformatted')
write(11)data
read(11,end= 1000 )data
- call abort()
+ STOP 1
1000 continue
backspace 11
backspace 11
@@ -19,9 +19,9 @@
read(11,end= 1001 )data
1001 continue
read(11,end= 1002 )data
- call abort
+ STOP 1
1002 continue
- if (.not. all(data == -3)) call abort()
+ if (.not. all(data == -3)) STOP 2
close(11)
end
diff --git a/gcc/testsuite/gfortran.dg/read_eof_2.f90 b/gcc/testsuite/gfortran.dg/read_eof_2.f90
index 9017548d463..93e99d7978d 100644
--- a/gcc/testsuite/gfortran.dg/read_eof_2.f90
+++ b/gcc/testsuite/gfortran.dg/read_eof_2.f90
@@ -7,15 +7,15 @@
open(unit=11,status='scratch', form='unformatted')
write(11)data
read(11,end= 1000 )data
- call abort()
+ STOP 1
1000 continue
backspace 11
backspace 11
data = 0
read(11)data
- if (.not. all(data == -1)) call abort()
+ if (.not. all(data == -1)) STOP 2
read(11,end= 1002 )data
- call abort()
+ STOP 3
1002 continue
close(11)
end
diff --git a/gcc/testsuite/gfortran.dg/read_eof_3.f90 b/gcc/testsuite/gfortran.dg/read_eof_3.f90
index af35aa6d34c..27e81fc4e06 100644
--- a/gcc/testsuite/gfortran.dg/read_eof_3.f90
+++ b/gcc/testsuite/gfortran.dg/read_eof_3.f90
@@ -8,22 +8,22 @@
write(11)data
write(11)data
read(11,end= 1000 )data
- call abort()
+ STOP 1
1000 continue
backspace 11
rewind 11
write(11)data
read(11,end= 1001 )data
- call abort()
+ STOP 2
1001 continue
data = 0
backspace 11
rewind 11
read(11,end= 1002 )data
- if (.not. all(data == -256)) call abort()
+ if (.not. all(data == -256)) STOP 3
1002 continue
read(11,end= 1003 )data
- call abort()
+ STOP 4
1003 continue
close(11)
end
diff --git a/gcc/testsuite/gfortran.dg/read_eof_4.f90 b/gcc/testsuite/gfortran.dg/read_eof_4.f90
index ee95268d50d..8018b2a8766 100644
--- a/gcc/testsuite/gfortran.dg/read_eof_4.f90
+++ b/gcc/testsuite/gfortran.dg/read_eof_4.f90
@@ -15,16 +15,16 @@
open(unit=11,form='unformatted')
read(11, ERR=100) i1, i2, i3
- call abort()
+ STOP 1
100 continue
- if (i1 /= 1 .or. i2 /= 2) call abort
+ if (i1 /= 1 .or. i2 /= 2) STOP 1
read(11, ERR=110) i1, i2, i3
- call abort()
+ STOP 2
110 continue
- if (i1 /= 3 .or. i2 /= 4) call abort
+ if (i1 /= 3 .or. i2 /= 4) STOP 2
read(11, end=120) i3
- call abort()
+ STOP 3
120 close(11,status='delete')
end
diff --git a/gcc/testsuite/gfortran.dg/read_eof_5.f90 b/gcc/testsuite/gfortran.dg/read_eof_5.f90
index 3c606a024d6..132eed77e31 100644
--- a/gcc/testsuite/gfortran.dg/read_eof_5.f90
+++ b/gcc/testsuite/gfortran.dg/read_eof_5.f90
@@ -6,7 +6,7 @@ program main
a = "x"
line = 'ab'
read (line,'(A)',END=99) a
- call abort
+ STOP 1
99 continue
- if (any(a /= ['a','x','x'])) call abort
+ if (any(a /= ['a','x','x'])) STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/read_eof_6.f b/gcc/testsuite/gfortran.dg/read_eof_6.f
index d4077481bda..bf0f8622137 100644
--- a/gcc/testsuite/gfortran.dg/read_eof_6.f
+++ b/gcc/testsuite/gfortran.dg/read_eof_6.f
@@ -2,6 +2,6 @@
! PR43320 Missing EOF on read from empty file.
open(8,status='scratch',form='formatted') ! Create empty file
read(8,'(a80)', end=123) ! Reading from an empty file should be an EOF
- call abort
+ STOP 1
123 continue
end
diff --git a/gcc/testsuite/gfortran.dg/read_eof_7.f90 b/gcc/testsuite/gfortran.dg/read_eof_7.f90
index a478f06c77e..0bf6f95e807 100644
--- a/gcc/testsuite/gfortran.dg/read_eof_7.f90
+++ b/gcc/testsuite/gfortran.dg/read_eof_7.f90
@@ -12,9 +12,9 @@ program main
i = 54321
idum = 6789
read (10,'(2i5,4x)') i, idum ! Trailing 4x was setting EOF condition
- if (i /= 99999 .and. idum /= 9) call abort
+ if (i /= 99999 .and. idum /= 9) STOP 1
j = 12345
read (10,name) ! EOF condition tripped here.
- if (j /= 73) call abort
+ if (j /= 73) STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/read_eof_8.f90 b/gcc/testsuite/gfortran.dg/read_eof_8.f90
index 86228da567c..903e5b5f921 100644
--- a/gcc/testsuite/gfortran.dg/read_eof_8.f90
+++ b/gcc/testsuite/gfortran.dg/read_eof_8.f90
@@ -18,10 +18,10 @@ program test
read(25,'(a)',end=100,err=101) line
k = k+1
enddo
- call abort
-100 if (k /= 5) call abort
+ STOP 1
+100 if (k /= 5) STOP 2
close(25, status="delete")
stop
-101 call abort
+101 STOP 3
end program test
diff --git a/gcc/testsuite/gfortran.dg/read_eof_all.f90 b/gcc/testsuite/gfortran.dg/read_eof_all.f90
index db6def48716..04097b748e6 100644
--- a/gcc/testsuite/gfortran.dg/read_eof_all.f90
+++ b/gcc/testsuite/gfortran.dg/read_eof_all.f90
@@ -14,56 +14,56 @@
open(99,file='test.dat')
read(99, '(T7,i2)') i
close(99, status="delete")
- if (i /= 0) call abort
+ if (i /= 0) STOP 1
read(str(1:0), '(T7,i1)') i
- if (i /= 0) call abort
+ if (i /= 0) STOP 2
read(str,'(i2,/,i2)',end=111) a, b
- call abort !stop 'ERROR: Expected EOF error (1)'
+ STOP 3!stop 'ERROR: Expected EOF error (1)'
111 continue
read(str2,'(i2,/,i2)',end=112) a, b
read(str2,'(i2,/,i2,/,i2)',end=113) a, b, c
- call abort !stop 'ERROR: Expected EOF error (2)'
+ STOP 4!stop 'ERROR: Expected EOF error (2)'
- 112 call abort !stop 'ERROR: Unexpected EOF (3)'
+ 112 STOP 5!stop 'ERROR: Unexpected EOF (3)'
113 continue
read(str,'(i2,/,i2)',end=121,pad='no') a, b
- call abort !stop 'ERROR: Expected EOF error (1)'
+ STOP 6!stop 'ERROR: Expected EOF error (1)'
121 continue
read(str2(:),'(i2,/,i2)', end=122, pad='no') a, b
goto 125
- 122 call abort !stop 'ERROR: Expected no EOF error (2)'
+ 122 STOP 7!stop 'ERROR: Expected no EOF error (2)'
125 continue
read(str2(:),'(i2,/,i2,/,i2)',end=123,pad='no') a, b, c
- call abort !stop 'ERROR: Expected EOF error (3)'
+ STOP 8!stop 'ERROR: Expected EOF error (3)'
123 continue
read(str(2:1),'(i2,/,i2)',end=131, pad='no') a, b
- call abort !stop 'ERROR: Expected EOF error (1)'
+ STOP 9!stop 'ERROR: Expected EOF error (1)'
131 continue
read(str2(:)(2:1),'(i2,/,i2)',end=132, pad='no') a, b
- call abort !stop 'ERROR: Expected EOF error (2)'
+ STOP 10!stop 'ERROR: Expected EOF error (2)'
132 continue
read(str2(:)(2:1),'(i2,/,i2,/,i2)',end=133,pad='no') a, b, c
- call abort !stop 'ERROR: Expected EOF error (3)'
+ STOP 11!stop 'ERROR: Expected EOF error (3)'
133 continue
read(str(2:1),'(i2,/,i2)',iostat=ios, pad='no') a, b
- if (ios /= IOSTAT_END) call abort !stop 'ERROR: expected iostat /= 0 (1)'
+ if (ios /= IOSTAT_END) STOP 12!stop 'ERROR: expected iostat /= 0 (1)'
read(str2(:)(2:1),'(i2,/,i2)',iostat=ios, pad='no') a, b
- if (ios /= IOSTAT_END) call abort !stop 'ERROR: expected iostat /= 0 (2)'
+ if (ios /= IOSTAT_END) STOP 13!stop 'ERROR: expected iostat /= 0 (2)'
read(str2(:)(2:1),'(i2,/,i2,/,i2)',iostat=ios,pad='no') a, b, c
- if (ios /= IOSTAT_END) call abort !stop 'ERROR: expected iostat /= 0 (2)'
+ if (ios /= IOSTAT_END) STOP 14!stop 'ERROR: expected iostat /= 0 (2)'
! print *, "success"
end
diff --git a/gcc/testsuite/gfortran.dg/read_eor.f90 b/gcc/testsuite/gfortran.dg/read_eor.f90
index e6c849eab76..2c75866da70 100644
--- a/gcc/testsuite/gfortran.dg/read_eor.f90
+++ b/gcc/testsuite/gfortran.dg/read_eor.f90
@@ -12,5 +12,5 @@ program pr24489
character*8 :: a
equivalence (buf,abuf)
read(buf, '(a8)') a
- if (a.ne.'0123') call abort()
+ if (a.ne.'0123') STOP 1
end program pr24489
diff --git a/gcc/testsuite/gfortran.dg/read_float_1.f90 b/gcc/testsuite/gfortran.dg/read_float_1.f90
index 0848ee67590..6a66dfff4e6 100644
--- a/gcc/testsuite/gfortran.dg/read_float_1.f90
+++ b/gcc/testsuite/gfortran.dg/read_float_1.f90
@@ -9,6 +9,6 @@ program foo
real(kind=8) d
s = "-.18774312893273 "
read(unit=s, fmt='(g20.14)') d
- if (d + 0.18774312893273d0 .gt. 1d-13) call abort
+ if (d + 0.18774312893273d0 .gt. 1d-13) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.dg/read_float_2.f03 b/gcc/testsuite/gfortran.dg/read_float_2.f03
index 29344bcb555..a6002e7d982 100644
--- a/gcc/testsuite/gfortran.dg/read_float_2.f03
+++ b/gcc/testsuite/gfortran.dg/read_float_2.f03
@@ -12,7 +12,7 @@ read(str,'(G15.7)') y
print *, y
if (abs (x - should_be) > eps .or. abs (y - should_be) > eps) then
- call abort ()
+ STOP 1
end if
end
diff --git a/gcc/testsuite/gfortran.dg/read_float_3.f90 b/gcc/testsuite/gfortran.dg/read_float_3.f90
index 0fa2f5c4e7b..b96de6bd2b8 100644
--- a/gcc/testsuite/gfortran.dg/read_float_3.f90
+++ b/gcc/testsuite/gfortran.dg/read_float_3.f90
@@ -15,7 +15,7 @@ write (output, 100) c1, c2, c3, c4
print *, output
if (output /= should_be) then
print *, should_be
- call abort ()
+ STOP 1
end if
end
diff --git a/gcc/testsuite/gfortran.dg/read_float_4.f90 b/gcc/testsuite/gfortran.dg/read_float_4.f90
index 01a0de8c04f..e5e2dbe1917 100644
--- a/gcc/testsuite/gfortran.dg/read_float_4.f90
+++ b/gcc/testsuite/gfortran.dg/read_float_4.f90
@@ -13,6 +13,6 @@
r = 0
str = '1.0q0'
read(str, *, iostat=i) r
- if (r /= 1.0 .or. i /= 0) call abort()
+ if (r /= 1.0 .or. i /= 0) STOP 1
!print *, r
end
diff --git a/gcc/testsuite/gfortran.dg/read_infnan_1.f90 b/gcc/testsuite/gfortran.dg/read_infnan_1.f90
index 7fe2a0ac23e..09a3382fb65 100644
--- a/gcc/testsuite/gfortran.dg/read_infnan_1.f90
+++ b/gcc/testsuite/gfortran.dg/read_infnan_1.f90
@@ -22,9 +22,9 @@ read(10,'(7f10.3)') x4
rewind(10)
read(10,'(7f10.3)') x8
write (output, '("x4 =",7G6.0)') x4
-if (output.ne."x4 = Inf NaN Inf NaN -Inf NaN Inf") call abort
+if (output.ne."x4 = Inf NaN Inf NaN -Inf NaN Inf") STOP 1
write (output, '("x8 =",7G6.0)') x8
-if (output.ne."x8 = Inf NaN Inf NaN -Inf NaN Inf") call abort
+if (output.ne."x8 = Inf NaN Inf NaN -Inf NaN Inf") STOP 2
!print '("x4 =",7G6.0)', x4
!print '("x8 =",7G6.0)', x8
end program pr43298
diff --git a/gcc/testsuite/gfortran.dg/read_list_eof_1.f90 b/gcc/testsuite/gfortran.dg/read_list_eof_1.f90
index c33bc2e092e..a82e94f231a 100644
--- a/gcc/testsuite/gfortran.dg/read_list_eof_1.f90
+++ b/gcc/testsuite/gfortran.dg/read_list_eof_1.f90
@@ -13,7 +13,7 @@ program read_list_eof_1
read (20, fmt=*) s
close (20, status='delete')
if (trim(s) /= "a") then
- call abort ()
+ STOP 1
end if
call genfil ('1')
@@ -22,7 +22,7 @@ program read_list_eof_1
read (20, fmt=*) ii
close (20, status='delete')
if (ii /= 1) then
- call abort ()
+ STOP 2
end if
call genfil ('1.5')
@@ -31,7 +31,7 @@ program read_list_eof_1
read (20, fmt=*) rr
close (20, status='delete')
if (rr /= 1.5) then
- call abort ()
+ STOP 3
end if
call genfil ('T')
@@ -40,7 +40,7 @@ program read_list_eof_1
read (20, fmt=*) ll
close (20, status='delete')
if (.not. ll) then
- call abort ()
+ STOP 4
end if
contains
diff --git a/gcc/testsuite/gfortran.dg/read_logical.f90 b/gcc/testsuite/gfortran.dg/read_logical.f90
index 7b7ba8c3a25..aa66fc046c1 100644
--- a/gcc/testsuite/gfortran.dg/read_logical.f90
+++ b/gcc/testsuite/gfortran.dg/read_logical.f90
@@ -10,9 +10,9 @@ program bug
l = .true.
strg = "false"
read (strg,*) l
- if (l) call abort()
+ if (l) STOP 1
strg = "true"
read (strg,*) l
- if (.not.l) call abort()
+ if (.not.l) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/read_many_1.f b/gcc/testsuite/gfortran.dg/read_many_1.f
index 4fac689ac48..38500faefff 100644
--- a/gcc/testsuite/gfortran.dg/read_many_1.f
+++ b/gcc/testsuite/gfortran.dg/read_many_1.f
@@ -14,11 +14,11 @@
rewind 2
read(2) a
read(2) b
- if (a(1).ne.1) call abort()
- if (a(2).ne.3) call abort()
- if (b(1).ne.2) call abort()
- if (b(2).ne.5) call abort()
- if (a(3000).ne.1234) call abort()
- if (b(2048).ne.5678) call abort()
+ if (a(1).ne.1) STOP 1
+ if (a(2).ne.3) STOP 2
+ if (b(1).ne.2) STOP 3
+ if (b(2).ne.5) STOP 4
+ if (a(3000).ne.1234) STOP 5
+ if (b(2048).ne.5678) STOP 6
close(2, status='delete')
end
diff --git a/gcc/testsuite/gfortran.dg/read_no_eor.f90 b/gcc/testsuite/gfortran.dg/read_no_eor.f90
index 118816405bc..a313e305194 100644
--- a/gcc/testsuite/gfortran.dg/read_no_eor.f90
+++ b/gcc/testsuite/gfortran.dg/read_no_eor.f90
@@ -18,29 +18,29 @@ program eieio_stat
buffer = 'abcdefg'
read (unit,"(a)",advance="no",iostat=ios1, pad="yes") buffer
- if (ios1 /= iostat_eor .and. buffer /= "Line-1") call abort
+ if (ios1 /= iostat_eor .and. buffer /= "Line-1") STOP 1
buffer = '<'
read (unit,"(a)",advance="no",iostat=ios2,pad="yes") buffer
- if (ios2 /= iostat_eor .and. buffer /= "Line-2") call abort
+ if (ios2 /= iostat_eor .and. buffer /= "Line-2") STOP 2
buffer = '5678'
read (unit,"(a)",advance="no",iostat=ios3, iomsg=themessage) buffer
- if (ios3 /= iostat_end .and. buffer /= "5678") call abort
+ if (ios3 /= iostat_end .and. buffer /= "5678") STOP 3
rewind(10)
buffer = "abcdefg"
read (unit,"(a)",advance="no",iostat=ios1, pad="no") buffer
- if (ios1 /= iostat_eor .and. buffer /= "abcdefg") call abort
+ if (ios1 /= iostat_eor .and. buffer /= "abcdefg") STOP 4
buffer = '<'
read (unit,"(a)",advance="no",iostat=ios2,pad="no") buffer
- if (ios2 /= iostat_eor .and. buffer /= "<") call abort
+ if (ios2 /= iostat_eor .and. buffer /= "<") STOP 5
buffer = '1234'
read (unit,"(a)",advance="no",iostat=ios3, iomsg=themessage) buffer
- if (ios3 <= 0 .and. buffer /= "1234") call abort
+ if (ios3 <= 0 .and. buffer /= "1234") STOP 6
close(unit, status="delete")
end program eieio_stat
diff --git a/gcc/testsuite/gfortran.dg/read_noadvance.f90 b/gcc/testsuite/gfortran.dg/read_noadvance.f90
index e55763ad8bb..5c11a3feb3f 100644
--- a/gcc/testsuite/gfortran.dg/read_noadvance.f90
+++ b/gcc/testsuite/gfortran.dg/read_noadvance.f90
@@ -13,7 +13,7 @@
do
i = i + 1
10 read(unit = 11, fmt = '(a)', advance = 'no', end = 99, eor = 11) chr
- if (chr.ne.correct(i:i)) call abort()
+ if (chr.ne.correct(i:i)) STOP 1
cycle
11 continue
end do
diff --git a/gcc/testsuite/gfortran.dg/read_repeat.f90 b/gcc/testsuite/gfortran.dg/read_repeat.f90
index e0bf39ee01b..aa64fe8293c 100644
--- a/gcc/testsuite/gfortran.dg/read_repeat.f90
+++ b/gcc/testsuite/gfortran.dg/read_repeat.f90
@@ -16,10 +16,10 @@ program rread
read(10,*) (iarr(i), i=1,7)
read(10,*) ia, ib
- if (any(iarr(1:2).ne.1)) call abort
- if (any(iarr(3:5).ne.2)) call abort
- if (any(iarr(6:7).ne.0)) call abort
- if (ia .ne. 12 .or. ib .ne. 13) call abort
+ if (any(iarr(1:2).ne.1)) STOP 1
+ if (any(iarr(3:5).ne.2)) STOP 2
+ if (any(iarr(6:7).ne.0)) STOP 3
+ if (ia .ne. 12 .or. ib .ne. 13) STOP 4
close(10)
end program rread
diff --git a/gcc/testsuite/gfortran.dg/read_repeat_2.f90 b/gcc/testsuite/gfortran.dg/read_repeat_2.f90
index 4b8659e5f34..587690b6c88 100644
--- a/gcc/testsuite/gfortran.dg/read_repeat_2.f90
+++ b/gcc/testsuite/gfortran.dg/read_repeat_2.f90
@@ -15,5 +15,5 @@ program test
rewind (99)
read (99,*) a(:)
close (99)
- if (any (a /= cmplx (1.0,2.0))) call abort()
+ if (any (a /= cmplx (1.0,2.0))) STOP 1
end program test
diff --git a/gcc/testsuite/gfortran.dg/read_size_noadvance.f90 b/gcc/testsuite/gfortran.dg/read_size_noadvance.f90
index e611547b63b..e4440c234f6 100644
--- a/gcc/testsuite/gfortran.dg/read_size_noadvance.f90
+++ b/gcc/testsuite/gfortran.dg/read_size_noadvance.f90
@@ -10,14 +10,14 @@
write (10, '(a)') trim(line)
rewind (10)
read (10, '(a)', advance = 'no', size = nchars, eor = 998) buffer
- call abort()
-998 if (nchars.ne.44) call abort()
+ STOP 1
+998 if (nchars.ne.44) STOP 2
rewind (10)
buffer = "how about some random text here just to be sure on this one."
nchars = 80
read (10, '(a)', advance = 'no', size = nchars, eor = 999) buffer(:nchars)
-999 if (nchars.ne.44) call abort()
- if (buffer.ne.line) call abort()
+999 if (nchars.ne.44) STOP 3
+ if (buffer.ne.line) STOP 4
close (10)
end
diff --git a/gcc/testsuite/gfortran.dg/read_x_eof.f90 b/gcc/testsuite/gfortran.dg/read_x_eof.f90
index f79f78522a7..8ca3ebed735 100644
--- a/gcc/testsuite/gfortran.dg/read_x_eof.f90
+++ b/gcc/testsuite/gfortran.dg/read_x_eof.f90
@@ -12,5 +12,5 @@ rewind(23)
do i=1,10
read(23,'(1x)',end=12)
enddo
-12 if (i.ne.4) call abort
+12 if (i.ne.4) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/read_x_past.f b/gcc/testsuite/gfortran.dg/read_x_past.f
index eee68d38731..c4893470dbc 100644
--- a/gcc/testsuite/gfortran.dg/read_x_past.f
+++ b/gcc/testsuite/gfortran.dg/read_x_past.f
@@ -14,13 +14,13 @@
a = ""
read(10,20)(a(i),i=1,4)
- if (a(4).ne."jkl") call abort()
+ if (a(4).ne."jkl") STOP 1
rewind(10)
a = ""
read(10,30)(a(i),i=1,4)
- if (a(4).ne."jkl") call abort()
+ if (a(4).ne."jkl") STOP 2
20 format(1x,a3,1x,a3,1x,a3,1x,a3,10x)
30 format(1x,a3,1x,a3,1x,a3,1x,a3)
diff --git a/gcc/testsuite/gfortran.dg/readwrite_unf_direct_eor_1.f90 b/gcc/testsuite/gfortran.dg/readwrite_unf_direct_eor_1.f90
index 461846a7130..7d89ba17bbd 100644
--- a/gcc/testsuite/gfortran.dg/readwrite_unf_direct_eor_1.f90
+++ b/gcc/testsuite/gfortran.dg/readwrite_unf_direct_eor_1.f90
@@ -5,10 +5,10 @@
integer i,j
open (10, form="unformatted", access="direct", recl=4)
write (10, rec=1, err=10) 1,2
- call abort()
+ STOP 1
10 continue
read (10, rec=1, err=20) i, j
- call abort()
+ STOP 2
20 continue
close (10, status="delete")
end
diff --git a/gcc/testsuite/gfortran.dg/real_const_1.f b/gcc/testsuite/gfortran.dg/real_const_1.f
index 97b7f278b87..a2e033200b3 100644
--- a/gcc/testsuite/gfortran.dg/real_const_1.f
+++ b/gcc/testsuite/gfortran.dg/real_const_1.f
@@ -14,11 +14,11 @@ c
data rp /+ 1.0, + 1d0, + 1.d0, + 10.d-1/
real, parameter :: del = 1.e-5
- if (abs(c0 - cmplx(-0.5,-0.5)) > del) call abort
- if (abs(c1 - cmplx(-0.5,+0.5)) > del) call abort
- if (abs(c2 - cmplx(-0.5E2,+0.5)) > del) call abort
- if (abs(c3 - cmplx(-0.5,+0.5E-2)) > del) call abort
- if (abs(c4 - cmplx(-1.0,+1.0)) > del) call abort
- if (any (abs (rp - 1.0) > del)) call abort
- if (any (abs (rn + 1.0) > del)) call abort
+ if (abs(c0 - cmplx(-0.5,-0.5)) > del) STOP 1
+ if (abs(c1 - cmplx(-0.5,+0.5)) > del) STOP 2
+ if (abs(c2 - cmplx(-0.5E2,+0.5)) > del) STOP 3
+ if (abs(c3 - cmplx(-0.5,+0.5E-2)) > del) STOP 4
+ if (abs(c4 - cmplx(-1.0,+1.0)) > del) STOP 5
+ if (any (abs (rp - 1.0) > del)) STOP 6
+ if (any (abs (rn + 1.0) > del)) STOP 7
end program
diff --git a/gcc/testsuite/gfortran.dg/real_const_2.f90 b/gcc/testsuite/gfortran.dg/real_const_2.f90
index 552012e37b4..2cefe29085f 100644
--- a/gcc/testsuite/gfortran.dg/real_const_2.f90
+++ b/gcc/testsuite/gfortran.dg/real_const_2.f90
@@ -14,11 +14,11 @@ program real_const_2
data rp /+ 1.0, + 1d0, + 1.d0, + 10.d-1/
real, parameter :: del = 1.e-5
- if (abs(c0 - cmplx(-0.5,-0.5)) > del) call abort
- if (abs(c1 - cmplx(-0.5,+0.5)) > del) call abort
- if (abs(c2 - cmplx(-0.5E2,+0.5)) > del) call abort
- if (abs(c3 - cmplx(-0.5,+0.5E-2)) > del) call abort
- if (abs(c4 - cmplx(-1.0,+1.0)) > del) call abort
- if (any (abs (rp - 1.0) > del)) call abort
- if (any (abs (rn + 1.0) > del)) call abort
+ if (abs(c0 - cmplx(-0.5,-0.5)) > del) STOP 1
+ if (abs(c1 - cmplx(-0.5,+0.5)) > del) STOP 2
+ if (abs(c2 - cmplx(-0.5E2,+0.5)) > del) STOP 3
+ if (abs(c3 - cmplx(-0.5,+0.5E-2)) > del) STOP 4
+ if (abs(c4 - cmplx(-1.0,+1.0)) > del) STOP 5
+ if (any (abs (rp - 1.0) > del)) STOP 6
+ if (any (abs (rn + 1.0) > del)) STOP 7
end program
diff --git a/gcc/testsuite/gfortran.dg/real_const_3.f90 b/gcc/testsuite/gfortran.dg/real_const_3.f90
index b214bd0b1a6..58e589f1227 100644
--- a/gcc/testsuite/gfortran.dg/real_const_3.f90
+++ b/gcc/testsuite/gfortran.dg/real_const_3.f90
@@ -16,40 +16,40 @@ program main
b = 1/exp(1000.0)
write(str,*) a
- if (trim(adjustl(str)) .ne. 'Infinity') call abort
+ if (trim(adjustl(str)) .ne. 'Infinity') STOP 1
- if (b .ne. 0.) call abort
+ if (b .ne. 0.) STOP 2
write(str,*) -1.0/b
- if (trim(adjustl(str)) .ne. '-Infinity') call abort
+ if (trim(adjustl(str)) .ne. '-Infinity') STOP 3
write(str,*) b/0.0
- if (trim(adjustl(str)) .ne. 'NaN') call abort
+ if (trim(adjustl(str)) .ne. 'NaN') STOP 4
write(str,*) 0.0/0.0
- if (trim(adjustl(str)) .ne. 'NaN') call abort
+ if (trim(adjustl(str)) .ne. 'NaN') STOP 5
write(str,*) 1.0/(-0.)
- if (trim(adjustl(str)) .ne. '-Infinity') call abort
+ if (trim(adjustl(str)) .ne. '-Infinity') STOP 6
write(str,*) -2.0/0.
- if (trim(adjustl(str)) .ne. '-Infinity') call abort
+ if (trim(adjustl(str)) .ne. '-Infinity') STOP 7
write(str,*) 3.0/0.
- if (trim(adjustl(str)) .ne. 'Infinity') call abort
+ if (trim(adjustl(str)) .ne. 'Infinity') STOP 8
write(str,*) nan
- if (trim(adjustl(str)) .ne. 'NaN') call abort
+ if (trim(adjustl(str)) .ne. 'NaN') STOP 9
write(str,*) z
- if (trim(adjustl(str)) .ne. '(NaN,NaN)') call abort
+ if (trim(adjustl(str)) .ne. '(NaN,NaN)') STOP 10
write(str,*) z2
- if (trim(adjustl(str)) .ne. '(NaN,NaN)') call abort
+ if (trim(adjustl(str)) .ne. '(NaN,NaN)') STOP 11
write(str,*) z3
- if (trim(adjustl(str)) .ne. '(Inf,-Inf)') call abort
+ if (trim(adjustl(str)) .ne. '(Inf,-Inf)') STOP 12
write(str,*) z4
- if (trim(adjustl(str)) .ne. '(0.00000000,-0.00000000)') call abort
+ if (trim(adjustl(str)) .ne. '(0.00000000,-0.00000000)') STOP 13
end program main
diff --git a/gcc/testsuite/gfortran.dg/real_do_1.f90 b/gcc/testsuite/gfortran.dg/real_do_1.f90
index 95fb47378a5..38f2f94e891 100644
--- a/gcc/testsuite/gfortran.dg/real_do_1.f90
+++ b/gcc/testsuite/gfortran.dg/real_do_1.f90
@@ -15,11 +15,11 @@ program real_do_1
y = y + 0.1
n = n + 1
end do
- if (n .ne. 11) call abort()
+ if (n .ne. 11) STOP 1
contains
subroutine check (a, b)
real, intent(in) :: a, b
- if (abs (a - b) .gt. 0.00001) call abort()
+ if (abs (a - b) .gt. 0.00001) STOP 2
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.dg/real_index_1.f90 b/gcc/testsuite/gfortran.dg/real_index_1.f90
index 16ceca82774..5a144fd8501 100644
--- a/gcc/testsuite/gfortran.dg/real_index_1.f90
+++ b/gcc/testsuite/gfortran.dg/real_index_1.f90
@@ -3,5 +3,5 @@
integer I, A(10)
A = 2
I=A(1.0) ! { dg-warning "Extension" }
- if (i/=2) call abort ()
+ if (i/=2) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/realloc_on_assign_1.f03 b/gcc/testsuite/gfortran.dg/realloc_on_assign_1.f03
index e80084d97f2..0eb08b91cd2 100644
--- a/gcc/testsuite/gfortran.dg/realloc_on_assign_1.f03
+++ b/gcc/testsuite/gfortran.dg/realloc_on_assign_1.f03
@@ -15,61 +15,61 @@
mat = reshape (src, [2,2])
a = [4,3,2,1]
- if (size(a, 1) .ne. 4) call abort
- if (any (a .ne. [4,3,2,1])) call abort
+ if (size(a, 1) .ne. 4) STOP 1
+ if (any (a .ne. [4,3,2,1])) STOP 2
a = [((42 - i), i = 1, 10)]
- if (size(a, 1) .ne. 10) call abort
- if (any (a .ne. [((42 - i), i = 1, 10)])) call abort
+ if (size(a, 1) .ne. 10) STOP 3
+ if (any (a .ne. [((42 - i), i = 1, 10)])) STOP 4
b = a
- if (size(b, 1) .ne. 10) call abort
- if (any (b .ne. a)) call abort
+ if (size(b, 1) .ne. 10) STOP 5
+ if (any (b .ne. a)) STOP 6
a = [4,3,2,1]
- if (size(a, 1) .ne. 4) call abort
- if (any (a .ne. [4,3,2,1])) call abort
+ if (size(a, 1) .ne. 4) STOP 7
+ if (any (a .ne. [4,3,2,1])) STOP 8
a = b
- if (size(a, 1) .ne. 10) call abort
- if (any (a .ne. [((42 - i), i = 1, 10)])) call abort
+ if (size(a, 1) .ne. 10) STOP 9
+ if (any (a .ne. [((42 - i), i = 1, 10)])) STOP 10
j = 20
a = [(i, i = 1, j)]
- if (size(a, 1) .ne. j) call abort
- if (any (a .ne. [(i, i = 1, j)])) call abort
+ if (size(a, 1) .ne. j) STOP 11
+ if (any (a .ne. [(i, i = 1, j)])) STOP 12
a = foo (15)
- if (size(a, 1) .ne. 15) call abort
- if (any (a .ne. [((i + 15), i = 1, 15)])) call abort
+ if (size(a, 1) .ne. 15) STOP 13
+ if (any (a .ne. [((i + 15), i = 1, 15)])) STOP 14
a = src
- if (lbound(a, 1) .ne. lbound(src, 1)) call abort
- if (ubound(a, 1) .ne. ubound(src, 1)) call abort
- if (any (a .ne. [11,12,13,14])) call abort
+ if (lbound(a, 1) .ne. lbound(src, 1)) STOP 15
+ if (ubound(a, 1) .ne. ubound(src, 1)) STOP 16
+ if (any (a .ne. [11,12,13,14])) STOP 17
k = 7
a = b(k:8)
- if (lbound(a, 1) .ne. lbound (b(k:8), 1)) call abort
- if (ubound(a, 1) .ne. ubound (b(k:8), 1)) call abort
- if (any (a .ne. [35,34])) call abort
+ if (lbound(a, 1) .ne. lbound (b(k:8), 1)) STOP 18
+ if (ubound(a, 1) .ne. ubound (b(k:8), 1)) STOP 19
+ if (any (a .ne. [35,34])) STOP 20
c = mat
- if (any (lbound (c) .ne. lbound (mat))) call abort
- if (any (ubound (c) .ne. ubound (mat))) call abort
- if (any (c .ne. mat)) call abort
+ if (any (lbound (c) .ne. lbound (mat))) STOP 21
+ if (any (ubound (c) .ne. ubound (mat))) STOP 22
+ if (any (c .ne. mat)) STOP 23
deallocate (c)
c = mat(2:,:)
- if (any (lbound (c) .ne. lbound (mat(2:,:)))) call abort
+ if (any (lbound (c) .ne. lbound (mat(2:,:)))) STOP 24
chr1 = chr2(2:1:-1)
- if (lbound(chr1, 1) .ne. 1) call abort
- if (any (chr1 .ne. chr2(2:1:-1))) call abort
+ if (lbound(chr1, 1) .ne. 1) STOP 25
+ if (any (chr1 .ne. chr2(2:1:-1))) STOP 26
b = c(1, :) + c(2, :)
- if (lbound(b, 1) .ne. lbound (c(1, :) + c(2, :), 1)) call abort
- if (any (b .ne. c(1, :) + c(2, :))) call abort
+ if (lbound(b, 1) .ne. lbound (c(1, :) + c(2, :), 1)) STOP 27
+ if (any (b .ne. c(1, :) + c(2, :))) STOP 28
contains
function foo (n) result(res)
integer(4), allocatable, dimension(:) :: res
diff --git a/gcc/testsuite/gfortran.dg/realloc_on_assign_10.f90 b/gcc/testsuite/gfortran.dg/realloc_on_assign_10.f90
index 787a56ae9e9..d5883d41f6e 100644
--- a/gcc/testsuite/gfortran.dg/realloc_on_assign_10.f90
+++ b/gcc/testsuite/gfortran.dg/realloc_on_assign_10.f90
@@ -12,7 +12,7 @@ program gf
b(1,2,3) = one
allocate (a(size (b, 3), size (b, 2), size (b, 1)))
a = reshape (b, shape (a), order = [3, 2, 1])
- if (any (a(:, 2, 1) .ne. [zero, zero, one, zero, zero])) call abort
- if (a(3, 2, 1) /= one) call abort()
- if (sum (abs (a)) /= one) call abort()
+ if (any (a(:, 2, 1) .ne. [zero, zero, one, zero, zero])) STOP 1
+ if (a(3, 2, 1) /= one) STOP 1
+ if (sum (abs (a)) /= one) STOP 2
end program
diff --git a/gcc/testsuite/gfortran.dg/realloc_on_assign_11.f90 b/gcc/testsuite/gfortran.dg/realloc_on_assign_11.f90
index ab96bb9deaf..1cba580cbb1 100644
--- a/gcc/testsuite/gfortran.dg/realloc_on_assign_11.f90
+++ b/gcc/testsuite/gfortran.dg/realloc_on_assign_11.f90
@@ -11,26 +11,26 @@
! Shape conforms so bounds follow allocation.
allocate (a(7:9))
a = reshape( b, shape=[size(b)])
- if (any ([lbound(a), ubound(a), size(a), shape (a)] .ne. [7,9,3,3])) call abort
+ if (any ([lbound(a), ubound(a), size(a), shape (a)] .ne. [7,9,3,3])) STOP 1
deallocate (a)
! 'a' not allocated so lbound defaults to 1.
a = reshape( b, shape=[size(b)])
- if (any ([lbound(a), ubound(a), size(a), shape (a)] .ne. [1,3,3,3])) call abort
+ if (any ([lbound(a), ubound(a), size(a), shape (a)] .ne. [1,3,3,3])) STOP 2
deallocate (a)
! Shape conforms so bounds follow allocation.
allocate (a(0:0))
a(0) = 1
- if (any ([lbound(a), ubound(a), size(a), shape (a)] .ne. [0,0,1,1])) call abort
+ if (any ([lbound(a), ubound(a), size(a), shape (a)] .ne. [0,0,1,1])) STOP 3
! 'a' not allocated so lbound defaults to 1.
e = matmul (c(2:5,:), d(:, 3:4))
- if (any ([lbound(e), ubound(e), size(e), shape (e)] .ne. [1,1,4,2,8,4,2])) call abort
+ if (any ([lbound(e), ubound(e), size(e), shape (e)] .ne. [1,1,4,2,8,4,2])) STOP 4
deallocate (e)
! Shape conforms so bounds follow allocation.
allocate (e(4:7, 11:12))
e = matmul (c(2:5,:), d(:, 3:4))
- if (any ([lbound(e), ubound(e), size(e), shape (e)] .ne. [4,11,7,12,8,4,2])) call abort
+ if (any ([lbound(e), ubound(e), size(e), shape (e)] .ne. [4,11,7,12,8,4,2])) STOP 5
end
diff --git a/gcc/testsuite/gfortran.dg/realloc_on_assign_12.f90 b/gcc/testsuite/gfortran.dg/realloc_on_assign_12.f90
index 3e0ceb1e3d1..9f49d3ec1f2 100644
--- a/gcc/testsuite/gfortran.dg/realloc_on_assign_12.f90
+++ b/gcc/testsuite/gfortran.dg/realloc_on_assign_12.f90
@@ -37,9 +37,9 @@
B = RESHAPE(A, [n1,n2,n3])
- if (any (shape (B) /= [n1,n2,n3])) call abort ()
- if (any (ubound (B) /= [n1,n2,n3])) call abort ()
- if (any (lbound (B) /= [1,1,1])) call abort ()
+ if (any (shape (B) /= [n1,n2,n3])) STOP 1
+ if (any (ubound (B) /= [n1,n2,n3])) STOP 2
+ if (any (lbound (B) /= [1,1,1])) STOP 3
lc = 0
DO m3=1,n3
@@ -47,7 +47,7 @@
lc = lc+1
DO m1=1,n1
! PRINT *,'A(',m1,',',lc,') = ',A(m1,lc),' B = ',B(m1,m2,m3)
- if (A(m1,lc) /= B(m1,m2,m3)) call abort ()
+ if (A(m1,lc) /= B(m1,m2,m3)) STOP 4
END DO
END DO
END DO
@@ -77,9 +77,9 @@
B = RESHAPE(A, [n1,n2,n3])
- if (any (shape (B) /= [n1,n2,n3])) call abort ()
- if (any (ubound (B) /= [n1,n2,n3])) call abort ()
- if (any (lbound (B) /= [1,1,1])) call abort ()
+ if (any (shape (B) /= [n1,n2,n3])) STOP 5
+ if (any (ubound (B) /= [n1,n2,n3])) STOP 6
+ if (any (lbound (B) /= [1,1,1])) STOP 7
lc = 0
DO m3=1,n3
@@ -87,7 +87,7 @@
lc = lc+1
DO m1=1,n1
! PRINT *,'A(',m1,',',lc,') = ',A(m1,lc),' B = ',B(m1,m2,m3)
- if (A(m1,lc) /= B(m1,m2,m3)) call abort ()
+ if (A(m1,lc) /= B(m1,m2,m3)) STOP 8
END DO
END DO
END DO
diff --git a/gcc/testsuite/gfortran.dg/realloc_on_assign_16.f90 b/gcc/testsuite/gfortran.dg/realloc_on_assign_16.f90
index 84af6670f66..6b326b8f9c3 100644
--- a/gcc/testsuite/gfortran.dg/realloc_on_assign_16.f90
+++ b/gcc/testsuite/gfortran.dg/realloc_on_assign_16.f90
@@ -20,8 +20,8 @@ PROGRAM main
conc = [ xx, yy ]
- if (any (int (10.0*conc(1)%a) .ne. [10,20])) call abort
- if (any (int (10.0*conc(2)%a) .ne. [40,49])) call abort
+ if (any (int (10.0*conc(1)%a) .ne. [10,20])) STOP 1
+ if (any (int (10.0*conc(2)%a) .ne. [40,49])) STOP 2
!CALL MPI_FINALIZE(i)
diff --git a/gcc/testsuite/gfortran.dg/realloc_on_assign_17.f90 b/gcc/testsuite/gfortran.dg/realloc_on_assign_17.f90
index 61b1e91d641..0cd49087f63 100644
--- a/gcc/testsuite/gfortran.dg/realloc_on_assign_17.f90
+++ b/gcc/testsuite/gfortran.dg/realloc_on_assign_17.f90
@@ -30,7 +30,7 @@ program allocate_assign
x = x2
s = s+x(2)%headers(2)%parts(2)
end do
- if (s .ne. 40000) call abort
+ if (s .ne. 40000) STOP 1
contains
!
! TODO - these assignments lose 1872 bytes on x86_64/FC17
diff --git a/gcc/testsuite/gfortran.dg/realloc_on_assign_18.f90 b/gcc/testsuite/gfortran.dg/realloc_on_assign_18.f90
index 7dcd22e11b0..fe2faf22e76 100644
--- a/gcc/testsuite/gfortran.dg/realloc_on_assign_18.f90
+++ b/gcc/testsuite/gfortran.dg/realloc_on_assign_18.f90
@@ -11,8 +11,8 @@ type(t), allocatable :: x, y(:)
x = t()
y = [ t :: ]
-if (.not. allocated (x)) call abort ()
-if (.not. allocated (y)) call abort ()
+if (.not. allocated (x)) STOP 1
+if (.not. allocated (y)) STOP 2
end
! { dg-final { scan-tree-dump "x = \\(struct t .\\) __builtin_malloc \\(1\\);" "original" } }
diff --git a/gcc/testsuite/gfortran.dg/realloc_on_assign_2.f03 b/gcc/testsuite/gfortran.dg/realloc_on_assign_2.f03
index 6d6680d984c..43c49b545de 100644
--- a/gcc/testsuite/gfortran.dg/realloc_on_assign_2.f03
+++ b/gcc/testsuite/gfortran.dg/realloc_on_assign_2.f03
@@ -27,8 +27,8 @@ contains
real :: a(10) = 1, b(51:60) = 2
real, allocatable :: c(:), d(:)
c=a
- if (lbound (c, 1) .ne. lbound(a, 1)) call abort
- if (ubound (c, 1) .ne. ubound(a, 1)) call abort
+ if (lbound (c, 1) .ne. lbound(a, 1)) STOP 1
+ if (ubound (c, 1) .ne. ubound(a, 1)) STOP 2
c=b
! 7.4.1.3 "If variable is an allocated allocatable variable, it is
! deallocated if expr is an array of different shape or any of the
@@ -36,15 +36,15 @@ contains
! differ." Here the shape is the same so the deallocation does not
! occur and the bounds are not recalculated. This was corrected
! for the fix of PR47051.
- if (lbound (c, 1) .ne. lbound(a, 1)) call abort
- if (ubound (c, 1) .ne. ubound(a, 1)) call abort
+ if (lbound (c, 1) .ne. lbound(a, 1)) STOP 3
+ if (ubound (c, 1) .ne. ubound(a, 1)) STOP 4
d=b
- if (lbound (d, 1) .ne. lbound(b, 1)) call abort
- if (ubound (d, 1) .ne. ubound(b, 1)) call abort
+ if (lbound (d, 1) .ne. lbound(b, 1)) STOP 5
+ if (ubound (d, 1) .ne. ubound(b, 1)) STOP 6
d=a
! The other PR47051 correction.
- if (lbound (d, 1) .ne. lbound(b, 1)) call abort
- if (ubound (d, 1) .ne. ubound(b, 1)) call abort
+ if (lbound (d, 1) .ne. lbound(b, 1)) STOP 7
+ if (ubound (d, 1) .ne. ubound(b, 1)) STOP 8
end subroutine
subroutine test2
!
@@ -55,8 +55,8 @@ contains
integer(4), allocatable :: a(:)
integer(8) :: b(5:6)
a = b
- if (lbound (a, 1) .ne. lbound(b, 1)) call abort
- if (ubound (a, 1) .ne. ubound(b, 1)) call abort
+ if (lbound (a, 1) .ne. lbound(b, 1)) STOP 9
+ if (ubound (a, 1) .ne. ubound(b, 1)) STOP 10
end subroutine
subroutine test3
!
@@ -66,8 +66,8 @@ contains
integer(8), allocatable :: b(:)
allocate (b(7:11))
a = b
- if (lbound (a, 1) .ne. lbound(b, 1)) call abort
- if (ubound (a, 1) .ne. ubound(b, 1)) call abort
+ if (lbound (a, 1) .ne. lbound(b, 1)) STOP 11
+ if (ubound (a, 1) .ne. ubound(b, 1)) STOP 12
end subroutine
subroutine test4
!
@@ -76,13 +76,13 @@ contains
integer, allocatable :: a(:)
integer, allocatable :: c(:)
a = f()
- if (any (a .ne. [1, 2, 3, 4])) call abort
+ if (any (a .ne. [1, 2, 3, 4])) STOP 13
c = a + 8
a = f (c)
- if (any ((a - 8) .ne. [1, 2, 3, 4])) call abort
+ if (any ((a - 8) .ne. [1, 2, 3, 4])) STOP 14
deallocate (c)
a = f (c)
- if (any ((a - 4) .ne. [1, 2, 3, 4])) call abort
+ if (any ((a - 4) .ne. [1, 2, 3, 4])) STOP 15
end subroutine
function f(b)
integer, allocatable, optional :: b(:)
@@ -108,10 +108,10 @@ contains
allocate (utrsft(ncls, ncls), dtrsft(ncls, ncls))
nglobal = 0
xwrkt = trs2a2 (ival, ipic, ncls)
- if (any (shape (xwrkt) .ne. [ncls, ncls])) call abort
+ if (any (shape (xwrkt) .ne. [ncls, ncls])) STOP 16
xwrkt = invima (xwrkt, ival, ipic, ncls)
- if (nglobal .ne. 1) call abort
- if (sum(xwrkt) .ne. xwrkt(ival, ival)) call abort
+ if (nglobal .ne. 1) STOP 17
+ if (sum(xwrkt) .ne. xwrkt(ival, ival)) STOP 18
end subroutine
function trs2a2 (j, k, m)
real, dimension (1:m,1:m) :: trs2a2
@@ -129,15 +129,15 @@ contains
subroutine test6
character(kind=1, len=100), allocatable, dimension(:) :: str
str = [ "abc" ]
- if (TRIM(str(1)) .ne. "abc") call abort
- if (len(str) .ne. 100) call abort
+ if (TRIM(str(1)) .ne. "abc") STOP 19
+ if (len(str) .ne. 100) STOP 20
end subroutine
subroutine test7
character(kind=4, len=100), allocatable, dimension(:) :: str
character(kind=4, len=3) :: test = "abc"
str = [ "abc" ]
- if (TRIM(str(1)) .ne. test) call abort
- if (len(str) .ne. 100) call abort
+ if (TRIM(str(1)) .ne. test) STOP 21
+ if (len(str) .ne. 100) STOP 22
end subroutine
subroutine test8
type t
@@ -145,9 +145,9 @@ contains
end type t
type(t) :: x
x%a= [1,2,3]
- if (any (x%a .ne. [1,2,3])) call abort
+ if (any (x%a .ne. [1,2,3])) STOP 23
x%a = [4]
- if (any (x%a .ne. [4])) call abort
+ if (any (x%a .ne. [4])) STOP 24
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/realloc_on_assign_23.f90 b/gcc/testsuite/gfortran.dg/realloc_on_assign_23.f90
index f9897f17401..71a28e3902e 100644
--- a/gcc/testsuite/gfortran.dg/realloc_on_assign_23.f90
+++ b/gcc/testsuite/gfortran.dg/realloc_on_assign_23.f90
@@ -22,7 +22,7 @@
end if
end do
- if (sum ([(a(i)%i, i=1,size(a))]) .ne. chksum) call abort
+ if (sum ([(a(i)%i, i=1,size(a))]) .ne. chksum) STOP 1
contains
subroutine foo
a = [a, e]
diff --git a/gcc/testsuite/gfortran.dg/realloc_on_assign_25.f90 b/gcc/testsuite/gfortran.dg/realloc_on_assign_25.f90
index 1e2a2738976..a206c1520ad 100644
--- a/gcc/testsuite/gfortran.dg/realloc_on_assign_25.f90
+++ b/gcc/testsuite/gfortran.dg/realloc_on_assign_25.f90
@@ -8,13 +8,13 @@ program main
character(:), allocatable :: a
integer :: m, n
a = 'a'
- if (a .ne. 'a') call abort
+ if (a .ne. 'a') STOP 1
a = a // 'x'
- if (a .ne. 'ax') call abort
- if (len (a) .ne. 2) call abort
+ if (a .ne. 'ax') STOP 2
+ if (len (a) .ne. 2) STOP 3
n = 2
m = 2
a = a(m:n)
- if (a .ne. 'x') call abort
- if (len (a) .ne. 1) call abort
+ if (a .ne. 'x') STOP 4
+ if (len (a) .ne. 1) STOP 5
end program main
diff --git a/gcc/testsuite/gfortran.dg/realloc_on_assign_26.f90 b/gcc/testsuite/gfortran.dg/realloc_on_assign_26.f90
index 4791c24e14f..b871fb1d8fd 100644
--- a/gcc/testsuite/gfortran.dg/realloc_on_assign_26.f90
+++ b/gcc/testsuite/gfortran.dg/realloc_on_assign_26.f90
@@ -7,6 +7,6 @@ program test
name="./a.out"
if (index(name,"/") /= 0) THEN
name=name(3:)
- if (name .ne. "a.out") call abort
+ if (name .ne. "a.out") STOP 1
endif
end program
diff --git a/gcc/testsuite/gfortran.dg/realloc_on_assign_27.f08 b/gcc/testsuite/gfortran.dg/realloc_on_assign_27.f08
index 9a786299565..e408389a741 100644
--- a/gcc/testsuite/gfortran.dg/realloc_on_assign_27.f08
+++ b/gcc/testsuite/gfortran.dg/realloc_on_assign_27.f08
@@ -12,12 +12,12 @@
type(r) :: y = r (3, 42)
x = y
- if (x%i /= 3) call abort()
+ if (x%i /= 3) STOP 1
select type(x)
class is (r)
- if (x%r /= 42.0) call abort()
+ if (x%r /= 42.0) STOP 2
class default
- call abort()
+ STOP 3
end select
end
diff --git a/gcc/testsuite/gfortran.dg/realloc_on_assign_28.f90 b/gcc/testsuite/gfortran.dg/realloc_on_assign_28.f90
index 2e338e470fd..41f53c93a95 100644
--- a/gcc/testsuite/gfortran.dg/realloc_on_assign_28.f90
+++ b/gcc/testsuite/gfortran.dg/realloc_on_assign_28.f90
@@ -23,10 +23,10 @@
end if
end do
- if (sum ([(a(i)%i, i=1,size(a))]) .ne. chksum) call abort
- if (any([(a(i)%i, i=1,size(a))] /= [(i, i=1,size(a))])) call abort
- if (size(a) /= size(b)) call abort
- if (any([(b(i)%i, i=1,size(b))] /= [(i, i=1,size(b))])) call abort
+ if (sum ([(a(i)%i, i=1,size(a))]) .ne. chksum) STOP 1
+ if (any([(a(i)%i, i=1,size(a))] /= [(i, i=1,size(a))])) STOP 2
+ if (size(a) /= size(b)) STOP 3
+ if (any([(b(i)%i, i=1,size(b))] /= [(i, i=1,size(b))])) STOP 4
contains
subroutine foo
b = first_arg([b, e], [a, e])
diff --git a/gcc/testsuite/gfortran.dg/realloc_on_assign_29.f90 b/gcc/testsuite/gfortran.dg/realloc_on_assign_29.f90
index e7a7d2899d2..a9160660280 100644
--- a/gcc/testsuite/gfortran.dg/realloc_on_assign_29.f90
+++ b/gcc/testsuite/gfortran.dg/realloc_on_assign_29.f90
@@ -9,5 +9,5 @@ program test10
!
string = '1234567890'
string = string(1:5) // string(7:)
- if (string /= '123457890') call abort
+ if (string /= '123457890') STOP 1
end program test10
diff --git a/gcc/testsuite/gfortran.dg/realloc_on_assign_3.f03 b/gcc/testsuite/gfortran.dg/realloc_on_assign_3.f03
index d975f472705..fa93fb72bc3 100644
--- a/gcc/testsuite/gfortran.dg/realloc_on_assign_3.f03
+++ b/gcc/testsuite/gfortran.dg/realloc_on_assign_3.f03
@@ -14,10 +14,10 @@ contains
real, allocatable :: x
real :: y = 42
x = 42.0
- if (x .ne. y) call abort
+ if (x .ne. y) STOP 1
deallocate (x)
x = y
- if (x .ne. y) call abort
+ if (x .ne. y) STOP 2
end subroutine
subroutine test_derived
type :: mytype
@@ -26,62 +26,62 @@ contains
end type
type (mytype), allocatable :: t
t = mytype (99.0, "abcd")
- if (t%c .ne. "abcd") call abort
+ if (t%c .ne. "abcd") STOP 3
end subroutine
subroutine test_char1
character(len = 8), allocatable :: c1
character(len = 8) :: c2 = "abcd1234"
c1 = "abcd1234"
- if (c1 .ne. c2) call abort
+ if (c1 .ne. c2) STOP 4
deallocate (c1)
c1 = c2
- if (c1 .ne. c2) call abort
+ if (c1 .ne. c2) STOP 5
end subroutine
subroutine test_char4
character(len = 8, kind = 4), allocatable :: c1
character(len = 8, kind = 4) :: c2 = 4_"abcd1234"
c1 = 4_"abcd1234"
- if (c1 .ne. c2) call abort
+ if (c1 .ne. c2) STOP 6
deallocate (c1)
c1 = c2
- if (c1 .ne. c2) call abort
+ if (c1 .ne. c2) STOP 7
end subroutine
subroutine test_deferred_char1
character(:), allocatable :: c
c = "Hello"
- if (c .ne. "Hello") call abort
- if (len(c) .ne. 5) call abort
+ if (c .ne. "Hello") STOP 8
+ if (len(c) .ne. 5) STOP 9
c = "Goodbye"
- if (c .ne. "Goodbye") call abort
- if (len(c) .ne. 7) call abort
+ if (c .ne. "Goodbye") STOP 10
+ if (len(c) .ne. 7) STOP 11
! Check that the hidden LEN dummy is passed by reference
call test_pass_c1 (c)
if (c .ne. "Made in test!") print *, c
- if (len(c) .ne. 13) call abort
+ if (len(c) .ne. 13) STOP 12
end subroutine
subroutine test_pass_c1 (carg)
character(:), allocatable :: carg
- if (carg .ne. "Goodbye") call abort
- if (len(carg) .ne. 7) call abort
+ if (carg .ne. "Goodbye") STOP 13
+ if (len(carg) .ne. 7) STOP 14
carg = "Made in test!"
end subroutine
subroutine test_deferred_char4
character(:, kind = 4), allocatable :: c
c = 4_"Hello"
- if (c .ne. 4_"Hello") call abort
- if (len(c) .ne. 5) call abort
+ if (c .ne. 4_"Hello") STOP 15
+ if (len(c) .ne. 5) STOP 16
c = 4_"Goodbye"
- if (c .ne. 4_"Goodbye") call abort
- if (len(c) .ne. 7) call abort
+ if (c .ne. 4_"Goodbye") STOP 17
+ if (len(c) .ne. 7) STOP 18
! Check that the hidden LEN dummy is passed by reference
call test_pass_c4 (c)
if (c .ne. 4_"Made in test!") print *, c
- if (len(c) .ne. 13) call abort
+ if (len(c) .ne. 13) STOP 19
end subroutine
subroutine test_pass_c4 (carg)
character(:, kind = 4), allocatable :: carg
- if (carg .ne. 4_"Goodbye") call abort
- if (len(carg) .ne. 7) call abort
+ if (carg .ne. 4_"Goodbye") STOP 20
+ if (len(carg) .ne. 7) STOP 21
carg = 4_"Made in test!"
end subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/realloc_on_assign_4.f03 b/gcc/testsuite/gfortran.dg/realloc_on_assign_4.f03
index 8e7d49b0fa8..308db8fb04b 100644
--- a/gcc/testsuite/gfortran.dg/realloc_on_assign_4.f03
+++ b/gcc/testsuite/gfortran.dg/realloc_on_assign_4.f03
@@ -20,20 +20,20 @@ end module
use m
character (:), allocatable :: lhs
lhs = foo ("foo calling ")
- if (lhs .ne. "foo") call abort
- if (len (lhs) .ne. 3) call abort
+ if (lhs .ne. "foo") STOP 1
+ if (len (lhs) .ne. 3) STOP 2
deallocate (lhs)
lhs = bar ("bar calling - baaaa!")
- if (lhs .ne. "bar calling") call abort
- if (len (lhs) .ne. 12) call abort
+ if (lhs .ne. "bar calling") STOP 3
+ if (len (lhs) .ne. 12) STOP 4
deallocate (lhs)
lhs = mfoo ("mfoo calling ")
- if (lhs .ne. "foo") call abort
- if (len (lhs) .ne. 3) call abort
+ if (lhs .ne. "foo") STOP 5
+ if (len (lhs) .ne. 3) STOP 6
deallocate (lhs)
lhs = mbar ("mbar calling - baaaa!")
- if (lhs .ne. "bar calling") call abort
- if (len (lhs) .ne. 12) call abort
+ if (lhs .ne. "bar calling") STOP 7
+ if (len (lhs) .ne. 12) STOP 8
contains
function foo (carg) result(res)
character (:), allocatable :: res
diff --git a/gcc/testsuite/gfortran.dg/realloc_on_assign_5.f03 b/gcc/testsuite/gfortran.dg/realloc_on_assign_5.f03
index db4233d5f77..af5ce4a9b4c 100644
--- a/gcc/testsuite/gfortran.dg/realloc_on_assign_5.f03
+++ b/gcc/testsuite/gfortran.dg/realloc_on_assign_5.f03
@@ -8,11 +8,11 @@ program main
implicit none
character(:), allocatable :: a, b
a = 'a'
- if (a .ne. 'a') call abort
+ if (a .ne. 'a') STOP 1
a = a // 'x'
- if (a .ne. 'ax') call abort
- if (len (a) .ne. 2) call abort
+ if (a .ne. 'ax') STOP 2
+ if (len (a) .ne. 2) STOP 3
a = (a(2:2))
- if (a .ne. 'x') call abort
- if (len (a) .ne. 1) call abort
+ if (a .ne. 'x') STOP 4
+ if (len (a) .ne. 1) STOP 5
end program main
diff --git a/gcc/testsuite/gfortran.dg/realloc_on_assign_7.f03 b/gcc/testsuite/gfortran.dg/realloc_on_assign_7.f03
index f871d273942..2e29a8e532e 100644
--- a/gcc/testsuite/gfortran.dg/realloc_on_assign_7.f03
+++ b/gcc/testsuite/gfortran.dg/realloc_on_assign_7.f03
@@ -17,11 +17,11 @@ program main
aptr => a
call foo
- if (.not. associated (aptr, a)) call abort () ! reallocated to same size - remains associated
+ if (.not. associated (aptr, a)) STOP 1 ! reallocated to same size - remains associated
call bar
- if (.not. associated (aptr, a)) call abort () ! reallocated to smaller size - remains associated
+ if (.not. associated (aptr, a)) STOP 2 ! reallocated to smaller size - remains associated
call foobar
- if (associated (aptr, a)) call abort () ! reallocated to larger size - disassociates
+ if (associated (aptr, a)) STOP 3 ! reallocated to larger size - disassociates
call pr48746
contains
@@ -39,8 +39,8 @@ contains
a = matmul( matmul( a, b ), b )
delta = (a - reshape ([1d0, 2d0, 3d0, 4d0, 5d0, 6d0, 7d0, 8d0, 9d0], [3,3]))**2
- if (any (delta > 1d-12)) call abort
- if (any (lbound (a) .ne. [1, 1])) call abort
+ if (any (delta > 1d-12)) STOP 1
+ if (any (lbound (a) .ne. [1, 1])) STOP 2
end subroutine
!
! Check that all is well when the shape of 'a' changes.
@@ -55,8 +55,8 @@ contains
a = matmul( a, matmul( a, b ) )
delta = (a - reshape ([198d0, 243d0, 288d0], [3,1]))**2
- if (any (delta > 1d-12)) call abort
- if (any (lbound (a) .ne. [1, 1])) call abort
+ if (any (delta > 1d-12)) STOP 3
+ if (any (lbound (a) .ne. [1, 1])) STOP 4
end subroutine
subroutine foobar
integer :: i
@@ -77,8 +77,8 @@ contains
call random_number(a)
call random_number(b)
tmp = matmul(a,b)
- if (any (lbound (tmp) .ne. [1,1])) call abort
- if (any (ubound (tmp) .ne. [10,12])) call abort
+ if (any (lbound (tmp) .ne. [1,1])) STOP 5
+ if (any (ubound (tmp) .ne. [10,12])) STOP 6
end subroutine
end program main
diff --git a/gcc/testsuite/gfortran.dg/record_marker_1.f90 b/gcc/testsuite/gfortran.dg/record_marker_1.f90
index 5bcfbc611a5..13ebd2a55c5 100644
--- a/gcc/testsuite/gfortran.dg/record_marker_1.f90
+++ b/gcc/testsuite/gfortran.dg/record_marker_1.f90
@@ -16,9 +16,9 @@ program main
read (15,rec=2) i2
read (15,rec=3) i3
close (15, status="DELETE")
- if (i1 /= 4_4) call abort
- if (i2 /= 1_4) call abort
- if (i3 /= 4_4) call abort
+ if (i1 /= 4_4) STOP 1
+ if (i2 /= 1_4) STOP 2
+ if (i3 /= 4_4) STOP 3
open(15,form="UNFORMATTED",convert="SWAP")
write (15) 1_4
@@ -31,8 +31,8 @@ program main
read (15,rec=2) i2
read (15,rec=3) i3
close(15,status="DELETE")
- if (i1 /= 4_4) call abort
- if (i2 /= 1_4) call abort
- if (i3 /= 4_4) call abort
+ if (i1 /= 4_4) STOP 4
+ if (i2 /= 1_4) STOP 5
+ if (i3 /= 4_4) STOP 6
end program main
diff --git a/gcc/testsuite/gfortran.dg/record_marker_2.f b/gcc/testsuite/gfortran.dg/record_marker_2.f
index 83ee7feac11..86f329b11f0 100644
--- a/gcc/testsuite/gfortran.dg/record_marker_2.f
+++ b/gcc/testsuite/gfortran.dg/record_marker_2.f
@@ -13,10 +13,10 @@
write (20,*) 3
rewind (20)
read (20,*) i
- if (i .ne. 1) call abort
+ if (i .ne. 1) STOP 1
backspace (20)
read (20,*) i
- if (i .ne. 1) call abort
+ if (i .ne. 1) STOP 2
close (20)
! PR libfortran/20125
@@ -24,14 +24,14 @@
write (20,*) 7
backspace (20)
read (20,*) i
- if (i .ne. 7) call abort
+ if (i .ne. 7) STOP 3
close (20)
open (20, status='scratch', form='unformatted')
write (20) 8
backspace (20)
read (20) i
- if (i .ne. 8) call abort
+ if (i .ne. 8) STOP 4
close (20)
! PR libfortran/20471
@@ -45,7 +45,7 @@
read (3) (y(n),n=1,10)
do n = 1, 10
- if (abs(x(n)-y(n)) > 0.00001) call abort
+ if (abs(x(n)-y(n)) > 0.00001) STOP 5
end do
close (3)
@@ -62,7 +62,7 @@
nr = nr + 1
goto 20
30 continue
- if (nr .ne. 5) call abort
+ if (nr .ne. 5) STOP 6
do i = 1, nr+1
backspace (3)
@@ -70,14 +70,14 @@
do i = 1, nr
read(3,end=70,err=90) n, (x(n),n=1,10)
- if (abs(x(1) - i) .gt. 0.001) call abort
+ if (abs(x(1) - i) .gt. 0.001) STOP 7
end do
close (3)
stop
70 continue
- call abort
+ STOP 8
90 continue
- call abort
+ STOP 9
end
diff --git a/gcc/testsuite/gfortran.dg/record_marker_3.f90 b/gcc/testsuite/gfortran.dg/record_marker_3.f90
index 7459d7210a4..1544b348567 100644
--- a/gcc/testsuite/gfortran.dg/record_marker_3.f90
+++ b/gcc/testsuite/gfortran.dg/record_marker_3.f90
@@ -16,9 +16,9 @@ program main
read (15,rec=2) i2
read (15,rec=3) i3
close (15, status="DELETE")
- if (i1 /= 8) call abort
- if (i2 /= 1) call abort
- if (i3 /= 8) call abort
+ if (i1 /= 8) STOP 1
+ if (i2 /= 1) STOP 2
+ if (i3 /= 8) STOP 3
open(15,form="UNFORMATTED",convert="SWAP")
write (15) 1_8
@@ -31,8 +31,8 @@ program main
read (15,rec=2) i2
read (15,rec=3) i3
close(15,status="DELETE")
- if (i1 /= 8) call abort
- if (i2 /= 1) call abort
- if (i3 /= 8) call abort
+ if (i1 /= 8) STOP 4
+ if (i2 /= 1) STOP 5
+ if (i3 /= 8) STOP 6
end program main
diff --git a/gcc/testsuite/gfortran.dg/recursive_alloc_comp_1.f08 b/gcc/testsuite/gfortran.dg/recursive_alloc_comp_1.f08
index 383eff49106..62787d29ca1 100644
--- a/gcc/testsuite/gfortran.dg/recursive_alloc_comp_1.f08
+++ b/gcc/testsuite/gfortran.dg/recursive_alloc_comp_1.f08
@@ -23,22 +23,22 @@
d%ia = 3
call move_alloc (d, a%c%c)
- if (a%ia .ne. 1) call abort
- if (a%c%ia .ne. 2) call abort
- if (a%c%c%ia .ne. 3) call abort
+ if (a%ia .ne. 1) STOP 1
+ if (a%c%ia .ne. 2) STOP 2
+ if (a%c%c%ia .ne. 3) STOP 3
! Check that we can point anywhere in the chain
b => a%c%c
- if (b%ia .ne. 3) call abort
+ if (b%ia .ne. 3) STOP 4
b => a%c
- if (b%ia .ne. 2) call abort
+ if (b%ia .ne. 2) STOP 5
! Check that the pointer can be used as if it were an element in the chain.
- if (.not.allocated (b%c)) call abort
+ if (.not.allocated (b%c)) STOP 6
b => a%c%c
if (.not.allocated (b%c)) allocate (b%c)
b%c%ia = 4
- if (a%c%c%c%ia .ne. 4) call abort
+ if (a%c%c%c%ia .ne. 4) STOP 7
! A rudimentary iterator.
b => a
@@ -46,12 +46,12 @@
total = total + b%ia
b => b%c
end do
- if (total .ne. 10) call abort
+ if (total .ne. 10) STOP 8
! Take one element out of the chain.
call move_alloc (a%c%c, d)
call move_alloc (d%c, a%c%c)
- if (d%ia .ne. 3) call abort
+ if (d%ia .ne. 3) STOP 9
deallocate (d)
! Checkcount of remaining chain.
@@ -61,7 +61,7 @@
total = total + b%ia
b => b%c
end do
- if (total .ne. 7) call abort
+ if (total .ne. 7) STOP 10
! Deallocate to check that there are no memory leaks.
deallocate (a%c%c)
diff --git a/gcc/testsuite/gfortran.dg/recursive_alloc_comp_2.f08 b/gcc/testsuite/gfortran.dg/recursive_alloc_comp_2.f08
index 85ab14b9a48..a5055f2ec82 100644
--- a/gcc/testsuite/gfortran.dg/recursive_alloc_comp_2.f08
+++ b/gcc/testsuite/gfortran.dg/recursive_alloc_comp_2.f08
@@ -51,14 +51,14 @@ end module
a%right%ia = 5
! Checksum OK?
- if (foo(a) .ne. 15) call abort
+ if (foo(a) .ne. 15) STOP 1
! Return pointer to tree item that is present.
b => bar (a, 3)
- if (.not.associated (b) .or. (b%ia .ne. 3)) call abort
+ if (.not.associated (b) .or. (b%ia .ne. 3)) STOP 2
! Return NULL to tree item that is not present.
b => bar (a, 6)
- if (associated (b)) call abort
+ if (associated (b)) STOP 3
! Deallocate to check that there are no memory leaks.
deallocate (a)
diff --git a/gcc/testsuite/gfortran.dg/recursive_alloc_comp_3.f08 b/gcc/testsuite/gfortran.dg/recursive_alloc_comp_3.f08
index d7f8f6622be..8a0fe900960 100644
--- a/gcc/testsuite/gfortran.dg/recursive_alloc_comp_3.f08
+++ b/gcc/testsuite/gfortran.dg/recursive_alloc_comp_3.f08
@@ -17,10 +17,10 @@ end module
call poke (1)
call poke (2)
call poke (3)
- if (top%index .ne. 3) call abort
+ if (top%index .ne. 3) STOP 1
call output (top)
call pop
- if (top%index .ne. 2) call abort
+ if (top%index .ne. 2) STOP 2
call output (top)
deallocate (top)
contains
diff --git a/gcc/testsuite/gfortran.dg/recursive_alloc_comp_4.f08 b/gcc/testsuite/gfortran.dg/recursive_alloc_comp_4.f08
index 75fd8b0d368..e87fc58b83f 100644
--- a/gcc/testsuite/gfortran.dg/recursive_alloc_comp_4.f08
+++ b/gcc/testsuite/gfortran.dg/recursive_alloc_comp_4.f08
@@ -34,11 +34,11 @@ end module
b1%ia = 5
call move_alloc (d, a%c(2)%c)
- if (a%ia .ne. 1) call abort
- if (a%c(1)%ia .ne. 2) call abort
- if (a%c(2)%c(1)%ia .ne. 3) call abort
- if (a%c(2)%c(2)%ia .ne. 4) call abort
- if (a%c(2)%c(2)%c(1)%ia .ne. 5) call abort
+ if (a%ia .ne. 1) STOP 1
+ if (a%c(1)%ia .ne. 2) STOP 2
+ if (a%c(2)%c(1)%ia .ne. 3) STOP 3
+ if (a%c(2)%c(2)%ia .ne. 4) STOP 4
+ if (a%c(2)%c(2)%c(1)%ia .ne. 5) STOP 5
if (allocated (a)) deallocate (a)
if (allocated (d)) deallocate (d)
diff --git a/gcc/testsuite/gfortran.dg/recursive_check_7.f90 b/gcc/testsuite/gfortran.dg/recursive_check_7.f90
index c1af8adc810..d04cd999e63 100644
--- a/gcc/testsuite/gfortran.dg/recursive_check_7.f90
+++ b/gcc/testsuite/gfortran.dg/recursive_check_7.f90
@@ -23,7 +23,7 @@ subroutine invalid(x)
logical :: x
if(x) call sndInvalid()
print *, 'BUG'
- call abort()
+ STOP 1
end subroutine invalid
subroutine sndInvalid()
diff --git a/gcc/testsuite/gfortran.dg/recursive_reference_1.f90 b/gcc/testsuite/gfortran.dg/recursive_reference_1.f90
index 3ca6bcb1711..d810d8a6a45 100644
--- a/gcc/testsuite/gfortran.dg/recursive_reference_1.f90
+++ b/gcc/testsuite/gfortran.dg/recursive_reference_1.f90
@@ -8,9 +8,9 @@
! Based on PR testcase by Nicolas Bock <nicolasbock@gmail.com>
!
program test
- if (original_stuff(1) .ne. 5) call abort ()
- if (scalar_stuff(-4) .ne. 10) call abort ()
- if (any (array_stuff((/-19,-30/)) .ne. (/25,25/))) call abort ()
+ if (original_stuff(1) .ne. 5) STOP 1
+ if (scalar_stuff(-4) .ne. 10) STOP 2
+ if (any (array_stuff((/-19,-30/)) .ne. (/25,25/))) STOP 3
contains
recursive function original_stuff(n)
integer :: original_stuff
diff --git a/gcc/testsuite/gfortran.dg/recursive_reference_2.f90 b/gcc/testsuite/gfortran.dg/recursive_reference_2.f90
index 265b8701b9b..c329012c05c 100644
--- a/gcc/testsuite/gfortran.dg/recursive_reference_2.f90
+++ b/gcc/testsuite/gfortran.dg/recursive_reference_2.f90
@@ -27,6 +27,6 @@ END MODULE M1
USE M1
integer :: ans(5)
-IF (ANY(TEST(3).NE.(/5,5,5,5,5/))) CALL ABORT()
-IF (ANY(TEST(6).NE.(/0,0,0,0,0/))) CALL ABORT()
+IF (ANY(TEST(3).NE.(/5,5,5,5,5/))) STOP 1
+IF (ANY(TEST(6).NE.(/0,0,0,0,0/))) STOP 2
END
diff --git a/gcc/testsuite/gfortran.dg/recursive_stack.f90 b/gcc/testsuite/gfortran.dg/recursive_stack.f90
index c555c0d9f99..dcd63b672f2 100644
--- a/gcc/testsuite/gfortran.dg/recursive_stack.f90
+++ b/gcc/testsuite/gfortran.dg/recursive_stack.f90
@@ -10,7 +10,7 @@ subroutine foo (recurse)
if (recurse) then
iarray(49,49) = 17
call bar
- if (iarray(49,49) .ne. 17) call abort
+ if (iarray(49,49) .ne. 17) STOP 1
else
iarray(49,49) = 21
end if
diff --git a/gcc/testsuite/gfortran.dg/reduction.f90 b/gcc/testsuite/gfortran.dg/reduction.f90
index 82193542ff8..ac853159d58 100644
--- a/gcc/testsuite/gfortran.dg/reduction.f90
+++ b/gcc/testsuite/gfortran.dg/reduction.f90
@@ -55,7 +55,7 @@ program reduction_mask
val(35) = sum((/ 1, 2, 3 /), dim=1, mask=equal)
val(36) = sum((/ 1, 2, 3 /), mask=equal, dim=1)
- if (any (val /= res)) call abort
+ if (any (val /= res)) STOP 1
! Tests for complex arguments. These were broken by the original fix.
@@ -81,5 +81,5 @@ program reduction_mask
cval(17) = sum(cin, dim=1, mask=equal)
cval(18) = sum(cin, mask=equal, dim=1)
- if (any (cval /= cmplx(res(19:36)))) call abort
+ if (any (cval /= cmplx(res(19:36)))) STOP 2
end program reduction_mask
diff --git a/gcc/testsuite/gfortran.dg/repack_arrays_1.f90 b/gcc/testsuite/gfortran.dg/repack_arrays_1.f90
index adf20aa9095..f1d6bbc1048 100644
--- a/gcc/testsuite/gfortran.dg/repack_arrays_1.f90
+++ b/gcc/testsuite/gfortran.dg/repack_arrays_1.f90
@@ -10,7 +10,7 @@ program test2
type(c_ptr) cp1, cp2
x = 42
- if (.not. c_associated(c_loc(x(3)),point(x(::2)))) call abort
+ if (.not. c_associated(c_loc(x(3)),point(x(::2)))) STOP 1
contains
function point(x)
use iso_c_binding
diff --git a/gcc/testsuite/gfortran.dg/repeat_1.f90 b/gcc/testsuite/gfortran.dg/repeat_1.f90
index 1ac105c2e3c..f4690016da4 100644
--- a/gcc/testsuite/gfortran.dg/repeat_1.f90
+++ b/gcc/testsuite/gfortran.dg/repeat_1.f90
@@ -4,7 +4,7 @@
integer :: i
i = -1
write(str,"(a)") repeat ("a", f())
- if (trim(str) /= "aaaa") call abort
+ if (trim(str) /= "aaaa") STOP 1
write(str,"(a)") repeat ("a", i)
contains
diff --git a/gcc/testsuite/gfortran.dg/repeat_2.f90 b/gcc/testsuite/gfortran.dg/repeat_2.f90
index d71f1860aa3..dcb682af972 100644
--- a/gcc/testsuite/gfortran.dg/repeat_2.f90
+++ b/gcc/testsuite/gfortran.dg/repeat_2.f90
@@ -7,7 +7,7 @@ subroutine foo(i, j, s, t)
character(len=i), intent(in) :: s
character(len=i*j), intent(in) :: t
- if (repeat(s,j) /= t) call abort
+ if (repeat(s,j) /= t) STOP 1
call bar(j,s,t)
end subroutine foo
@@ -17,7 +17,7 @@ subroutine bar(j, s, t)
character(len=*), intent(in) :: s
character(len=len(s)*j), intent(in) :: t
- if (repeat(s,j) /= t) call abort
+ if (repeat(s,j) /= t) STOP 2
end subroutine bar
program test
@@ -34,51 +34,51 @@ program test
t1 = "a"
t2 = "ab"
- if (repeat(t0, 0) /= "") call abort
- if (repeat(t1, 0) /= "") call abort
- if (repeat(t2, 0) /= "") call abort
- if (repeat(t0, 1) /= "") call abort
- if (repeat(t1, 1) /= "a") call abort
- if (repeat(t2, 1) /= "ab") call abort
- if (repeat(t0, 2) /= "") call abort
- if (repeat(t1, 2) /= "aa") call abort
- if (repeat(t2, 2) /= "abab") call abort
+ if (repeat(t0, 0) /= "") STOP 3
+ if (repeat(t1, 0) /= "") STOP 4
+ if (repeat(t2, 0) /= "") STOP 5
+ if (repeat(t0, 1) /= "") STOP 6
+ if (repeat(t1, 1) /= "a") STOP 7
+ if (repeat(t2, 1) /= "ab") STOP 8
+ if (repeat(t0, 2) /= "") STOP 9
+ if (repeat(t1, 2) /= "aa") STOP 10
+ if (repeat(t2, 2) /= "abab") STOP 11
- if (repeat(s0, 0) /= "") call abort
- if (repeat(s1, 0) /= "") call abort
- if (repeat(s2, 0) /= "") call abort
- if (repeat(s0, 1) /= "") call abort
- if (repeat(s1, 1) /= "a") call abort
- if (repeat(s2, 1) /= "ab") call abort
- if (repeat(s0, 2) /= "") call abort
- if (repeat(s1, 2) /= "aa") call abort
- if (repeat(s2, 2) /= "abab") call abort
+ if (repeat(s0, 0) /= "") STOP 12
+ if (repeat(s1, 0) /= "") STOP 13
+ if (repeat(s2, 0) /= "") STOP 14
+ if (repeat(s0, 1) /= "") STOP 15
+ if (repeat(s1, 1) /= "a") STOP 16
+ if (repeat(s2, 1) /= "ab") STOP 17
+ if (repeat(s0, 2) /= "") STOP 18
+ if (repeat(s1, 2) /= "aa") STOP 19
+ if (repeat(s2, 2) /= "abab") STOP 20
i = 0
- if (repeat(t0, i) /= "") call abort
- if (repeat(t1, i) /= "") call abort
- if (repeat(t2, i) /= "") call abort
+ if (repeat(t0, i) /= "") STOP 21
+ if (repeat(t1, i) /= "") STOP 22
+ if (repeat(t2, i) /= "") STOP 23
i = 1
- if (repeat(t0, i) /= "") call abort
- if (repeat(t1, i) /= "a") call abort
- if (repeat(t2, i) /= "ab") call abort
+ if (repeat(t0, i) /= "") STOP 24
+ if (repeat(t1, i) /= "a") STOP 25
+ if (repeat(t2, i) /= "ab") STOP 26
i = 2
- if (repeat(t0, i) /= "") call abort
- if (repeat(t1, i) /= "aa") call abort
- if (repeat(t2, i) /= "abab") call abort
+ if (repeat(t0, i) /= "") STOP 27
+ if (repeat(t1, i) /= "aa") STOP 28
+ if (repeat(t2, i) /= "abab") STOP 29
i = 0
- if (repeat(s0, i) /= "") call abort
- if (repeat(s1, i) /= "") call abort
- if (repeat(s2, i) /= "") call abort
+ if (repeat(s0, i) /= "") STOP 30
+ if (repeat(s1, i) /= "") STOP 31
+ if (repeat(s2, i) /= "") STOP 32
i = 1
- if (repeat(s0, i) /= "") call abort
- if (repeat(s1, i) /= "a") call abort
- if (repeat(s2, i) /= "ab") call abort
+ if (repeat(s0, i) /= "") STOP 33
+ if (repeat(s1, i) /= "a") STOP 34
+ if (repeat(s2, i) /= "ab") STOP 35
i = 2
- if (repeat(s0, i) /= "") call abort
- if (repeat(s1, i) /= "aa") call abort
- if (repeat(s2, i) /= "abab") call abort
+ if (repeat(s0, i) /= "") STOP 36
+ if (repeat(s1, i) /= "aa") STOP 37
+ if (repeat(s2, i) /= "abab") STOP 38
call foo(0,0,"","")
call foo(0,1,"","")
diff --git a/gcc/testsuite/gfortran.dg/repeat_3.f90 b/gcc/testsuite/gfortran.dg/repeat_3.f90
index d571fc6e32a..1bd23449283 100644
--- a/gcc/testsuite/gfortran.dg/repeat_3.f90
+++ b/gcc/testsuite/gfortran.dg/repeat_3.f90
@@ -18,12 +18,12 @@ program test
r = nearest(r,r)
s2 = repeat(s1,i1)
- if (s2 /= s1) call abort
+ if (s2 /= s1) STOP 1
s2 = repeat(s1,i2)
- if (s2 /= s1) call abort
+ if (s2 /= s1) STOP 2
s2 = repeat(s1,i4)
- if (s2 /= s1) call abort
+ if (s2 /= s1) STOP 3
s2 = repeat(s1,i8)
- if (s2 /= s1) call abort
+ if (s2 /= s1) STOP 4
end program test
diff --git a/gcc/testsuite/gfortran.dg/repeat_6.f90 b/gcc/testsuite/gfortran.dg/repeat_6.f90
index 308941f9a2d..c2426b1374a 100644
--- a/gcc/testsuite/gfortran.dg/repeat_6.f90
+++ b/gcc/testsuite/gfortran.dg/repeat_6.f90
@@ -9,5 +9,5 @@
// repeat ("xxx", 0) &
// repeat ("string", 2)
- if (string /= "astringstring") CALL abort()
+ if (string /= "astringstring") STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/reshape-alloc.f90 b/gcc/testsuite/gfortran.dg/reshape-alloc.f90
index c4c7a0e2a8c..bb395c53f2f 100644
--- a/gcc/testsuite/gfortran.dg/reshape-alloc.f90
+++ b/gcc/testsuite/gfortran.dg/reshape-alloc.f90
@@ -21,12 +21,12 @@ program tryreshape
vect2=1
resh2 = reshape(vect2,s)
- if (resh2(1,1) /= 1.0) call abort
+ if (resh2(1,1) /= 1.0) STOP 1
resh1 = reshape(vect1,s)
- if (resh1(1,1) /= 1.0) call abort
+ if (resh1(1,1) /= 1.0) STOP 2
resh = reshape(vect,s)
- if (resh(1,1) /= 1.0) call abort
+ if (resh(1,1) /= 1.0) STOP 3
end program tryreshape
diff --git a/gcc/testsuite/gfortran.dg/reshape-complex.f90 b/gcc/testsuite/gfortran.dg/reshape-complex.f90
index 72cafe4f464..902debf6361 100644
--- a/gcc/testsuite/gfortran.dg/reshape-complex.f90
+++ b/gcc/testsuite/gfortran.dg/reshape-complex.f90
@@ -9,8 +9,8 @@ program main
b = (/(i,i=1,8)/)
a = reshape(b(1:8:2),shape(a))
if (a(1,1) /= (1.0, 0.0) .or. a(2,1) /= (3.0, 0.0) .or. &
- a(1,2) /= (5.0, 0.0) .or. a(2,2) /= (7.0, 0.0)) call abort
+ a(1,2) /= (5.0, 0.0) .or. a(2,2) /= (7.0, 0.0)) STOP 1
c = (/( 3.14, -3.14), (2.71, -2.71)/)
d = reshape(c, shape (d))
- if (any (c .ne. d)) call abort
+ if (any (c .ne. d)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/reshape.f90 b/gcc/testsuite/gfortran.dg/reshape.f90
index 3dba09892b6..de9d6c67961 100644
--- a/gcc/testsuite/gfortran.dg/reshape.f90
+++ b/gcc/testsuite/gfortran.dg/reshape.f90
@@ -17,17 +17,17 @@ program resh
b = (/(i,i=1,12)/)
a = reshape(b(1:12:2),shape(a),order=(/2,1/))
c = reshape(b(1:12:2),shape(a),order=(/2,1/))
- if (any (a /= c)) call abort
+ if (any (a /= c)) STOP 1
! Test generic reshape
br%r = b
ar = reshape(br(1:12:2),shape(a),order=(/2,1/))
- if (any (ar%r /= a)) call abort
+ if (any (ar%r /= a)) STOP 2
! Test callee-allocated memory with a write statement
write (line1,'(6F8.3)') reshape(b(1:12:2),shape(a),order=(/2,1/))
write (line2,'(6F8.3)') a
- if (line1 /= line2 ) call abort
+ if (line1 /= line2 ) STOP 3
write (line3,'(6F8.3)') reshape(br(1:12:2),shape(ar),order=(/2,1/))
- if (line1 /= line3 ) call abort
+ if (line1 /= line3 ) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/reshape_2.f90 b/gcc/testsuite/gfortran.dg/reshape_2.f90
index 1a85712292d..156969b6aa7 100644
--- a/gcc/testsuite/gfortran.dg/reshape_2.f90
+++ b/gcc/testsuite/gfortran.dg/reshape_2.f90
@@ -16,8 +16,8 @@ end module splitprms
program test
use splitprms
- if (nxttab(1, 1) .ne. 6) call abort
- if (nxttab(1, nplam) .ne. 1) call abort
- if (nxttab(linem, 1) .ne. 6) call abort
- if (nxttab(linem, nplam) .ne. 132) call abort
+ if (nxttab(1, 1) .ne. 6) STOP 1
+ if (nxttab(1, nplam) .ne. 1) STOP 2
+ if (nxttab(linem, 1) .ne. 6) STOP 3
+ if (nxttab(linem, nplam) .ne. 132) STOP 4
end program test
diff --git a/gcc/testsuite/gfortran.dg/reshape_7.f90 b/gcc/testsuite/gfortran.dg/reshape_7.f90
index 6e17f198d11..d752650aa4e 100644
--- a/gcc/testsuite/gfortran.dg/reshape_7.f90
+++ b/gcc/testsuite/gfortran.dg/reshape_7.f90
@@ -5,7 +5,7 @@ subroutine p0
integer, parameter :: sh(2) = [2, 3]
integer, parameter :: &
& a(2,2) = reshape([1, 2, 3, 4], sh) ! { dg-error "Different shape" }
- if (a(1,1) /= 0) call abort
+ if (a(1,1) /= 0) STOP 1
end subroutine p0
@@ -13,5 +13,5 @@ subroutine p1
integer, parameter :: sh(2) = [2, 1]
integer, parameter :: &
& a(2,2) = reshape([1, 2, 3, 4], sh) ! { dg-error "Different shape" }
- if (a(1,1) /= 0) call abort
+ if (a(1,1) /= 0) STOP 2
end subroutine p1
diff --git a/gcc/testsuite/gfortran.dg/reshape_empty_1.f03 b/gcc/testsuite/gfortran.dg/reshape_empty_1.f03
index df7a5d40653..d70b1b7cfd1 100644
--- a/gcc/testsuite/gfortran.dg/reshape_empty_1.f03
+++ b/gcc/testsuite/gfortran.dg/reshape_empty_1.f03
@@ -12,8 +12,8 @@ integer, parameter :: K = N*A(2,2)+A(2,3)
integer :: B(N,N) = reshape([1,2,2,2,1,2,2,2,1],[3,3])
integer :: i
i = 5
-if (any(A /= B)) call abort
-if (K /= i) call abort
+if (any(A /= B)) STOP 1
+if (K /= i) STOP 2
end
! { dg-final { scan-tree-dump-times "\\\{1, 2, 2, 2, 1, 2, 2, 2, 1\\\}" 2 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/reshape_pad_1.f90 b/gcc/testsuite/gfortran.dg/reshape_pad_1.f90
index 33afd89e5b3..2c723d938fe 100644
--- a/gcc/testsuite/gfortran.dg/reshape_pad_1.f90
+++ b/gcc/testsuite/gfortran.dg/reshape_pad_1.f90
@@ -15,11 +15,11 @@ program main
A1(1:N,1:N)=reshape(A1(1:0,1),(/N,N/),b1)
write(unit=line,fmt='(100i1)') A1
- if (line .ne. "122212221") call abort
+ if (line .ne. "122212221") STOP 1
b4 = (/ 3, 4, 4, 4 /)
a4 = reshape(a4(:0,1),(/n,n/),b4)
write(unit=line,fmt='(100i1)') a4
- if (line .ne. "344434443") call abort
+ if (line .ne. "344434443") STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/reshape_rank7.f90 b/gcc/testsuite/gfortran.dg/reshape_rank7.f90
index a003de013a8..d0302e2d376 100644
--- a/gcc/testsuite/gfortran.dg/reshape_rank7.f90
+++ b/gcc/testsuite/gfortran.dg/reshape_rank7.f90
@@ -16,7 +16,7 @@ program main
if (b(i1,i2,i3,i4,i5,i6,i7) /= &
2*((i1-1)+(i2-1)*2+(i3-1)*4+(i4-1)*8+&
(i5-1)*16+(i6-1)*32+(i7-1)*64)+1) &
- call abort
+ STOP 1
end do
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/reshape_transpose_1.f90 b/gcc/testsuite/gfortran.dg/reshape_transpose_1.f90
index 5ca52640f2e..2a858ecae2b 100644
--- a/gcc/testsuite/gfortran.dg/reshape_transpose_1.f90
+++ b/gcc/testsuite/gfortran.dg/reshape_transpose_1.f90
@@ -14,5 +14,5 @@ program main
data(2,2)%i = 4
write (unit=line1, fmt="(4I4)") reshape(transpose(data),shape(data))
write (unit=line2, fmt="(4I4)") (/ 1, 3, 2, 4 /)
- if (line1 /= line2) call abort
+ if (line1 /= line2) STOP 1
END program main
diff --git a/gcc/testsuite/gfortran.dg/reshape_zerosize_3.f90 b/gcc/testsuite/gfortran.dg/reshape_zerosize_3.f90
index de39a306da9..3e52103a250 100644
--- a/gcc/testsuite/gfortran.dg/reshape_zerosize_3.f90
+++ b/gcc/testsuite/gfortran.dg/reshape_zerosize_3.f90
@@ -11,17 +11,17 @@ CONTAINS
INTEGER, DIMENSION(:), INTENT(IN), &
OPTIONAL :: DATA
character(20) :: line
- IF (.not. PRESENT(data)) call abort
+ IF (.not. PRESENT(data)) STOP 1
write (unit=line,fmt='(I5)') size(data)
- if (line /= ' 0 ') call abort
+ if (line /= ' 0 ') STOP 2
END SUBROUTINE S1
subroutine s_type(data)
type(foo), dimension(:), intent(in), optional :: data
character(20) :: line
- IF (.not. PRESENT(data)) call abort
+ IF (.not. PRESENT(data)) STOP 3
write (unit=line,fmt='(I5)') size(data)
- if (line /= ' 0 ') call abort
+ if (line /= ' 0 ') STOP 4
end subroutine s_type
SUBROUTINE S2(N)
diff --git a/gcc/testsuite/gfortran.dg/result_default_init_1.f90 b/gcc/testsuite/gfortran.dg/result_default_init_1.f90
index 58872dfa65b..8803833f83e 100644
--- a/gcc/testsuite/gfortran.dg/result_default_init_1.f90
+++ b/gcc/testsuite/gfortran.dg/result_default_init_1.f90
@@ -9,18 +9,18 @@
integer:: i=3
end type A
type(A):: x,y
- if (associated(x%p) .or. x%i /= 3) call abort ()
+ if (associated(x%p) .or. x%i /= 3) STOP 1
x=f()
- if (associated(x%p) .or. x%i /= 3) call abort ()
+ if (associated(x%p) .or. x%i /= 3) STOP 2
x=g()
- if (associated(x%p) .or. x%i /= 3) call abort ()
+ if (associated(x%p) .or. x%i /= 3) STOP 3
contains
function f() result (fr)
type(A):: fr
- if (associated(fr%p) .or. fr%i /= 3) call abort ()
+ if (associated(fr%p) .or. fr%i /= 3) STOP 4
end function f
function g()
type(A):: g
- if (associated(g%p) .or. g%i /= 3) call abort ()
+ if (associated(g%p) .or. g%i /= 3) STOP 5
end function g
end
diff --git a/gcc/testsuite/gfortran.dg/result_in_spec_1.f90 b/gcc/testsuite/gfortran.dg/result_in_spec_1.f90
index 6189e55919d..4e6311ba18e 100644
--- a/gcc/testsuite/gfortran.dg/result_in_spec_1.f90
+++ b/gcc/testsuite/gfortran.dg/result_in_spec_1.f90
@@ -29,18 +29,18 @@ program test
use test1
implicit none
! Original problem
- if (len(test2(10)) .ne. 21) call abort ()
+ if (len(test2(10)) .ne. 21) STOP 1
! Check non-intrinsic calls are OK and check that fix does
! not confuse result variables.
- if (any (myfunc (test2(1)) .ne. "ABC")) call abort ()
+ if (any (myfunc (test2(1)) .ne. "ABC")) STOP 2
contains
function myfunc (ch) result (chr)
character (*) :: ch(:)
character(len(ch)) :: chr(4)
- if (len (ch) .ne. 3) call abort ()
- if (any (ch .ne. "ABC")) call abort ()
+ if (len (ch) .ne. 3) STOP 3
+ if (any (ch .ne. "ABC")) STOP 4
chr = test2 (1)
- if (len(test2(len(chr))) .ne. 7) call abort ()
+ if (len(test2(len(chr))) .ne. 7) STOP 5
end function myfunc
end program test
diff --git a/gcc/testsuite/gfortran.dg/result_in_spec_2.f90 b/gcc/testsuite/gfortran.dg/result_in_spec_2.f90
index 028e4034a6c..82105b98c2c 100644
--- a/gcc/testsuite/gfortran.dg/result_in_spec_2.f90
+++ b/gcc/testsuite/gfortran.dg/result_in_spec_2.f90
@@ -25,6 +25,6 @@ end function f
program test
use test1
implicit none
- if(len (test2()) /= 3) call abort ()
- if(test2() /= '123') call abort ()
+ if(len (test2()) /= 3) STOP 1
+ if(test2() /= '123') STOP 2
end program test
diff --git a/gcc/testsuite/gfortran.dg/ret_array_1.f90 b/gcc/testsuite/gfortran.dg/ret_array_1.f90
index 45e5a07c109..28561f63be7 100644
--- a/gcc/testsuite/gfortran.dg/ret_array_1.f90
+++ b/gcc/testsuite/gfortran.dg/ret_array_1.f90
@@ -10,30 +10,30 @@ program ret_array_1
! Using the return value as an actual argument
b = 0;
b = sum (transpose (a), 1);
- if (any (b .ne. (/9, 12/))) call abort ()
+ if (any (b .ne. (/9, 12/))) STOP 1
! Using the return value in an expression
b = 0;
b = sum (transpose (a) + 1, 1);
- if (any (b .ne. (/12, 15/))) call abort ()
+ if (any (b .ne. (/12, 15/))) STOP 2
! Same again testing a user function
! TODO: enable these once this is implemented
! b = 0;
! b = sum (my_transpose (a), 1);
-! if (any (b .ne. (/9, 12/))) call abort ()
+! if (any (b .ne. (/9, 12/))) STOP 3
!
! ! Using the return value in an expression
! b = 0;
! b = sum (my_transpose (a) + 1, 1);
-! if (any (b .ne. (/12, 15/))) call abort ()
+! if (any (b .ne. (/12, 15/))) STOP 4
contains
subroutine test(x, n)
integer, dimension (:, :) :: x
integer n
- if (any (shape (x) .ne. (/3, 2/))) call abort
- if (any (x .ne. (n + reshape((/1, 4, 2, 5, 3, 6/), (/3, 2/))))) call abort
+ if (any (shape (x) .ne. (/3, 2/))) STOP 1
+ if (any (x .ne. (n + reshape((/1, 4, 2, 5, 3, 6/), (/3, 2/))))) STOP 2
end subroutine
function my_transpose (x) result (r)
diff --git a/gcc/testsuite/gfortran.dg/ret_pointer_1.f90 b/gcc/testsuite/gfortran.dg/ret_pointer_1.f90
index 765f20a2f18..a39308c15dc 100644
--- a/gcc/testsuite/gfortran.dg/ret_pointer_1.f90
+++ b/gcc/testsuite/gfortran.dg/ret_pointer_1.f90
@@ -8,7 +8,7 @@ program ret_pointer_1
a => NULL()
a => foo()
p => b
- if (.not. associated (a, p)) call abort
+ if (.not. associated (a, p)) STOP 1
contains
subroutine bar(p)
integer, pointer, dimension(:) :: p
diff --git a/gcc/testsuite/gfortran.dg/ret_pointer_2.f90 b/gcc/testsuite/gfortran.dg/ret_pointer_2.f90
index 939411b7bc2..f505549b4c3 100644
--- a/gcc/testsuite/gfortran.dg/ret_pointer_2.f90
+++ b/gcc/testsuite/gfortran.dg/ret_pointer_2.f90
@@ -7,11 +7,11 @@ program a
print *, x(3) ! { dg-output " *1 *2 *3" }
- if (ssum(x(3)) /= 6) call abort()
+ if (ssum(x(3)) /= 6) STOP 1
s = 0
s = x(3)
- if (any(s /= (/1, 2, 3/))) call abort()
+ if (any(s /= (/1, 2, 3/))) STOP 2
contains
diff --git a/gcc/testsuite/gfortran.dg/rewind_1.f90 b/gcc/testsuite/gfortran.dg/rewind_1.f90
index 92edf6dfed9..96071daf40c 100644
--- a/gcc/testsuite/gfortran.dg/rewind_1.f90
+++ b/gcc/testsuite/gfortran.dg/rewind_1.f90
@@ -15,6 +15,6 @@ program foo
s = ""
read(11, '(a11)') s
close(11)
- if (s .ne. "Hello World") call abort
+ if (s .ne. "Hello World") STOP 1
end program
diff --git a/gcc/testsuite/gfortran.dg/round_1.f03 b/gcc/testsuite/gfortran.dg/round_1.f03
index f74b13791b5..9ee75b70f43 100644
--- a/gcc/testsuite/gfortran.dg/round_1.f03
+++ b/gcc/testsuite/gfortran.dg/round_1.f03
@@ -11,18 +11,18 @@ do i = 1, 7
!print fmt(i), 1.20, 1.22, 1.25, 1.27, 1.30, 1.125
end do
write(line, fmt(1)) 1.20, 1.22, 1.25, 1.27, 1.30, 1.125
-if (line.ne." 1.3 1.3 1.3 1.3 1.3 1.2") call abort
+if (line.ne." 1.3 1.3 1.3 1.3 1.3 1.2") STOP 1
write(line, fmt(2)) 1.20, 1.22, 1.25, 1.27, 1.30, 1.125
-if (line.ne." 1.2 1.2 1.2 1.2 1.2 1.1") call abort
+if (line.ne." 1.2 1.2 1.2 1.2 1.2 1.1") STOP 2
write(line, fmt(3)) 1.20, 1.22, 1.25, 1.27, 1.30, 1.125
-if (line.ne." 1.2 1.2 1.2 1.2 1.2 1.1") call abort
+if (line.ne." 1.2 1.2 1.2 1.2 1.2 1.1") STOP 3
write(line, fmt(4)) 1.20, 1.22, 1.25, 1.27, 1.30, 1.125
-if (line.ne." 1.20 1.22 1.25 1.27 1.30 1.12") call abort
+if (line.ne." 1.20 1.22 1.25 1.27 1.30 1.12") STOP 4
write(line, fmt(5)) 1.20, 1.22, 1.25, 1.27, 1.30, 1.125
-if (line.ne." 1.20 1.22 1.25 1.27 1.30 1.13") call abort
+if (line.ne." 1.20 1.22 1.25 1.27 1.30 1.13") STOP 5
write(line, fmt(6)) 1.20, 1.22, 1.250001, 1.27, 1.30, 1.125
-if (line.ne." 1.2 1.2 1.3 1.3 1.3 1.1") call abort
+if (line.ne." 1.2 1.2 1.3 1.3 1.3 1.1") STOP 6
write(line, fmt(7)) 1.20, 1.22, 1.250001, 1.27, 1.30, 1.125
-if (line.ne." +1.2 +1.2 +1.3 +1.3 +1.3 +1.1") call abort
+if (line.ne." +1.2 +1.2 +1.3 +1.3 +1.3 +1.1") STOP 7
end
diff --git a/gcc/testsuite/gfortran.dg/round_2.f03 b/gcc/testsuite/gfortran.dg/round_2.f03
index 62190d71673..6efc006fca2 100644
--- a/gcc/testsuite/gfortran.dg/round_2.f03
+++ b/gcc/testsuite/gfortran.dg/round_2.f03
@@ -5,20 +5,20 @@ integer,parameter :: j = max(4, selected_real_kind (precision (0.0_4) + 1))
integer,parameter :: k = max(4, selected_real_kind (precision (0.0_8) + 1))
character(64) :: line
write(line, '(RN, 4F10.3)') 0.0625_j, 0.1875_j
- if (line.ne." 0.062 0.188") call abort
+ if (line.ne." 0.062 0.188") STOP 1
write(line, '(RN, 4F10.2)') 0.125_j, 0.375_j, 1.125_j, 1.375_j
- if (line.ne." 0.12 0.38 1.12 1.38") call abort
+ if (line.ne." 0.12 0.38 1.12 1.38") STOP 2
write(line, '(RN, 4F10.1)') 0.25_j, 0.75_j, 1.25_j, 1.75_j
- if (line.ne." 0.2 0.8 1.2 1.8") call abort
+ if (line.ne." 0.2 0.8 1.2 1.8") STOP 3
write(line, '(RN, 4F10.0)') 0.5_j, 1.5_j, 2.5_j, 3.5_j
- if (line.ne." 0. 2. 2. 4.") call abort
+ if (line.ne." 0. 2. 2. 4.") STOP 4
write(line, '(RN, 4F10.3)') 0.0625_k, 0.1875_k
- if (line.ne." 0.062 0.188") call abort
+ if (line.ne." 0.062 0.188") STOP 5
write(line, '(RN, 4F10.2)') 0.125_k, 0.375_k, 1.125_k, 1.375_k
- if (line.ne." 0.12 0.38 1.12 1.38") call abort
+ if (line.ne." 0.12 0.38 1.12 1.38") STOP 6
write(line, '(RN, 4F10.1)') 0.25_k, 0.75_k, 1.25_k, 1.75_k
- if (line.ne." 0.2 0.8 1.2 1.8") call abort
+ if (line.ne." 0.2 0.8 1.2 1.8") STOP 7
write(line, '(RN, 4F10.0)') 0.5_k, 1.5_k, 2.5_k, 3.5_k
- if (line.ne." 0. 2. 2. 4.") call abort
+ if (line.ne." 0. 2. 2. 4.") STOP 8
end
diff --git a/gcc/testsuite/gfortran.dg/round_3.f08 b/gcc/testsuite/gfortran.dg/round_3.f08
index 2bb36d9eeef..57d83395531 100644
--- a/gcc/testsuite/gfortran.dg/round_3.f08
+++ b/gcc/testsuite/gfortran.dg/round_3.f08
@@ -118,7 +118,7 @@ contains
character(len=20) :: s
write(s, fmt) x
- if (s /= cmp) call abort
+ if (s /= cmp) STOP 1
!if (s /= cmp) print "(a,1x,a,' expected: ',1x)", fmt, s, cmp
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.dg/round_4.f90 b/gcc/testsuite/gfortran.dg/round_4.f90
index 7f5b3c34745..1f1511cebca 100644
--- a/gcc/testsuite/gfortran.dg/round_4.f90
+++ b/gcc/testsuite/gfortran.dg/round_4.f90
@@ -74,40 +74,40 @@ program main
round = 'up'
call t()
- if (rnd4 .and. (r4p /= ref4u .or. r4m /= -ref4d)) call abort()
- if (rnd8 .and. (r8p /= ref8u .or. r8m /= -ref8d)) call abort()
- if (rnd10 .and. (r10p /= ref10u .or. r10m /= -ref10d)) call abort()
- if (rnd16 .and. (r16p /= ref16u .or. r16m /= -ref16d)) call abort()
+ if (rnd4 .and. (r4p /= ref4u .or. r4m /= -ref4d)) STOP 1
+ if (rnd8 .and. (r8p /= ref8u .or. r8m /= -ref8d)) STOP 2
+ if (rnd10 .and. (r10p /= ref10u .or. r10m /= -ref10d)) STOP 3
+ if (rnd16 .and. (r16p /= ref16u .or. r16m /= -ref16d)) STOP 4
round = 'down'
call t()
- if (rnd4 .and. (r4p /= ref4d .or. r4m /= -ref4u)) call abort()
- if (rnd8 .and. (r8p /= ref8d .or. r8m /= -ref8u)) call abort()
- if (rnd10 .and. (r10p /= ref10d .or. r10m /= -ref10u)) call abort()
- if (rnd16 .and. (r16p /= ref16d .or. r16m /= -ref16u)) call abort()
+ if (rnd4 .and. (r4p /= ref4d .or. r4m /= -ref4u)) STOP 5
+ if (rnd8 .and. (r8p /= ref8d .or. r8m /= -ref8u)) STOP 6
+ if (rnd10 .and. (r10p /= ref10d .or. r10m /= -ref10u)) STOP 7
+ if (rnd16 .and. (r16p /= ref16d .or. r16m /= -ref16u)) STOP 8
round = 'zero'
call t()
- if (rnd4 .and. (r4p /= ref4d .or. r4m /= -ref4d)) call abort()
- if (rnd8 .and. (r8p /= ref8d .or. r8m /= -ref8d)) call abort()
- if (rnd10 .and. (r10p /= ref10d .or. r10m /= -ref10d)) call abort()
- if (rnd16 .and. (r16p /= ref16d .or. r16m /= -ref16d)) call abort()
+ if (rnd4 .and. (r4p /= ref4d .or. r4m /= -ref4d)) STOP 9
+ if (rnd8 .and. (r8p /= ref8d .or. r8m /= -ref8d)) STOP 10
+ if (rnd10 .and. (r10p /= ref10d .or. r10m /= -ref10d)) STOP 11
+ if (rnd16 .and. (r16p /= ref16d .or. r16m /= -ref16d)) STOP 12
round = 'nearest'
call t()
- if (rnd4 .and. (r4p /= ref4u .or. r4m /= -ref4u)) call abort()
- if (rnd8 .and. (r8p /= ref8u .or. r8m /= -ref8u)) call abort()
- if (rnd10 .and. (r10p /= ref10u .or. r10m /= -ref10u)) call abort()
- if (rnd16 .and. (r16p /= ref16u .or. r16m /= -ref16u)) call abort()
+ if (rnd4 .and. (r4p /= ref4u .or. r4m /= -ref4u)) STOP 13
+ if (rnd8 .and. (r8p /= ref8u .or. r8m /= -ref8u)) STOP 14
+ if (rnd10 .and. (r10p /= ref10u .or. r10m /= -ref10u)) STOP 15
+ if (rnd16 .and. (r16p /= ref16u .or. r16m /= -ref16u)) STOP 16
! Same as nearest (but rounding towards zero if there is a tie
! [does not apply here])
round = 'compatible'
call t()
- if (rnd4 .and. (r4p /= ref4u .or. r4m /= -ref4u)) call abort()
- if (rnd8 .and. (r8p /= ref8u .or. r8m /= -ref8u)) call abort()
- if (rnd10 .and. (r10p /= ref10u .or. r10m /= -ref10u)) call abort()
- if (rnd16 .and. (r16p /= ref16u .or. r16m /= -ref16u)) call abort()
+ if (rnd4 .and. (r4p /= ref4u .or. r4m /= -ref4u)) STOP 17
+ if (rnd8 .and. (r8p /= ref8u .or. r8m /= -ref8u)) STOP 18
+ if (rnd10 .and. (r10p /= ref10u .or. r10m /= -ref10u)) STOP 19
+ if (rnd16 .and. (r16p /= ref16u .or. r16m /= -ref16u)) STOP 20
contains
subroutine t()
! print *, round
diff --git a/gcc/testsuite/gfortran.dg/rrspacing_1.f90 b/gcc/testsuite/gfortran.dg/rrspacing_1.f90
index 8b866aaa272..551a61584b3 100644
--- a/gcc/testsuite/gfortran.dg/rrspacing_1.f90
+++ b/gcc/testsuite/gfortran.dg/rrspacing_1.f90
@@ -4,5 +4,5 @@ program m
real x,y
real, parameter :: a = -3.0
i = int(rrspacing(a))
- if (i /= 12582912) call abort
+ if (i /= 12582912) STOP 1
end program m
diff --git a/gcc/testsuite/gfortran.dg/runtime_warning_1.f90 b/gcc/testsuite/gfortran.dg/runtime_warning_1.f90
index 6e93e3f7dd7..64adcdbe366 100644
--- a/gcc/testsuite/gfortran.dg/runtime_warning_1.f90
+++ b/gcc/testsuite/gfortran.dg/runtime_warning_1.f90
@@ -12,6 +12,6 @@
rewind (42)
read (42,'(A)') c
close (42)
- if (c /= 'abcde') call abort ()
+ if (c /= 'abcde') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/same_type_as_2.f03 b/gcc/testsuite/gfortran.dg/same_type_as_2.f03
index 6fd03117007..3ceb95573eb 100644
--- a/gcc/testsuite/gfortran.dg/same_type_as_2.f03
+++ b/gcc/testsuite/gfortran.dg/same_type_as_2.f03
@@ -23,29 +23,29 @@
l = SAME_TYPE_AS (x1,x1)
print *,l
- if (.not.l) call abort()
+ if (.not.l) STOP 1
l = SAME_TYPE_AS (x1,x2)
print *,l
- if (l) call abort()
+ if (l) STOP 2
c1 => x1
l = SAME_TYPE_AS (c1,x1)
print *,l
- if (.not.l) call abort()
+ if (.not.l) STOP 3
l = SAME_TYPE_AS (c1,x2)
print *,l
- if (l) call abort()
+ if (l) STOP 4
c1 => x2
c2 => x2
l = SAME_TYPE_AS (c1,c2)
print *,l
- if (.not.l) call abort()
+ if (.not.l) STOP 5
c1 => x1
c2 => x2
l = SAME_TYPE_AS (c1,c2)
print *,l
- if (l) call abort()
+ if (l) STOP 6
end
diff --git a/gcc/testsuite/gfortran.dg/save_1.f90 b/gcc/testsuite/gfortran.dg/save_1.f90
index b0035f14a7d..ca757d34cde 100644
--- a/gcc/testsuite/gfortran.dg/save_1.f90
+++ b/gcc/testsuite/gfortran.dg/save_1.f90
@@ -10,13 +10,13 @@
j = 131
s = 'This is a test string'
else
- if (i .ne. 26 .or. j .ne. 131) call abort
- if (s .ne. 'This is a test string') call abort
+ if (i .ne. 26 .or. j .ne. 131) STOP 1
+ if (s .ne. 'This is a test string') STOP 2
end if
end subroutine foo
subroutine bar (s)
character*42 s
- if (s .ne. '0123456789012345678901234567890123456') call abort
+ if (s .ne. '0123456789012345678901234567890123456') STOP 3
call foo (.false.)
end subroutine bar
subroutine baz
diff --git a/gcc/testsuite/gfortran.dg/save_5.f90 b/gcc/testsuite/gfortran.dg/save_5.f90
index 20d3b7ad88a..bf8d5995637 100644
--- a/gcc/testsuite/gfortran.dg/save_5.f90
+++ b/gcc/testsuite/gfortran.dg/save_5.f90
@@ -11,8 +11,8 @@ subroutine foo(i)
integer :: i
integer, allocatable :: j
if (i == 1) j = 42
- if (.not. allocated (j)) call abort ()
- if (j /= 42) call abort ()
+ if (.not. allocated (j)) STOP 1
+ if (j /= 42) STOP 2
end
! Deferred-length string scalar
@@ -21,12 +21,12 @@ subroutine bar()
character(len=:), allocatable :: str
if (first) then
first = .false.
- if (allocated (str)) call abort ()
+ if (allocated (str)) STOP 3
str = "ABCDEF"
end if
- if (.not. allocated (str)) call abort ()
- if (len (str) /= 6) call abort ()
- if (str(1:6) /= "ABCDEF") call abort ()
+ if (.not. allocated (str)) STOP 4
+ if (len (str) /= 6) STOP 5
+ if (str(1:6) /= "ABCDEF") STOP 6
end subroutine bar
! Deferred-length string array
@@ -35,12 +35,12 @@ subroutine bar_array()
character(len=:), allocatable :: str
if (first) then
first = .false.
- if (allocated (str)) call abort ()
+ if (allocated (str)) STOP 7
str = "ABCDEF"
end if
- if (.not. allocated (str)) call abort ()
- if (len (str) /= 6) call abort ()
- if (str(1:6) /= "ABCDEF") call abort ()
+ if (.not. allocated (str)) STOP 8
+ if (len (str) /= 6) STOP 9
+ if (str(1:6) /= "ABCDEF") STOP 10
end subroutine bar_array
call foo(1)
diff --git a/gcc/testsuite/gfortran.dg/save_6.f90 b/gcc/testsuite/gfortran.dg/save_6.f90
index 0dcec29d5f7..f30c37a7b4b 100644
--- a/gcc/testsuite/gfortran.dg/save_6.f90
+++ b/gcc/testsuite/gfortran.dg/save_6.f90
@@ -13,8 +13,8 @@ subroutine foo(i)
integer :: i
integer, allocatable :: j
if (i == 1) j = 42
- if (.not. allocated (j)) call abort ()
- if (j /= 42) call abort ()
+ if (.not. allocated (j)) STOP 1
+ if (j /= 42) STOP 2
end
! Deferred-length string scalar
@@ -23,12 +23,12 @@ subroutine bar()
character(len=:), allocatable :: str
if (first) then
first = .false.
- if (allocated (str)) call abort ()
+ if (allocated (str)) STOP 3
str = "ABCDEF"
end if
- if (.not. allocated (str)) call abort ()
- if (len (str) /= 6) call abort ()
- if (str(1:6) /= "ABCDEF") call abort ()
+ if (.not. allocated (str)) STOP 4
+ if (len (str) /= 6) STOP 5
+ if (str(1:6) /= "ABCDEF") STOP 6
end subroutine bar
! Deferred-length string array
@@ -37,12 +37,12 @@ subroutine bar_array()
character(len=:), allocatable :: str
if (first) then
first = .false.
- if (allocated (str)) call abort ()
+ if (allocated (str)) STOP 7
str = "ABCDEF"
end if
- if (.not. allocated (str)) call abort ()
- if (len (str) /= 6) call abort ()
- if (str(1:6) /= "ABCDEF") call abort ()
+ if (.not. allocated (str)) STOP 8
+ if (len (str) /= 6) STOP 9
+ if (str(1:6) /= "ABCDEF") STOP 10
end subroutine bar_array
call foo(1)
diff --git a/gcc/testsuite/gfortran.dg/scalar_mask_1.f90 b/gcc/testsuite/gfortran.dg/scalar_mask_1.f90
index e2e5d6c421d..48bb6739a56 100644
--- a/gcc/testsuite/gfortran.dg/scalar_mask_1.f90
+++ b/gcc/testsuite/gfortran.dg/scalar_mask_1.f90
@@ -4,12 +4,12 @@ program main
real, dimension(2) :: a
a(1) = 2.0
a(2) = 3.0
- if (product (a, .false.) /= 1.0) call abort
- if (product (a, .true.) /= 6.0) call abort
- if (sum (a, .false.) /= 0.0) call abort
- if (sum (a, .true.) /= 5.0) call abort
- if (maxval (a, .true.) /= 3.0) call abort
- if (maxval (a, .false.) > -1e38) call abort
- if (maxloc (a, 1, .true.) /= 2) call abort
- if (maxloc (a, 1, .false.) /= 0) call abort ! Change to F2003 requirement.
+ if (product (a, .false.) /= 1.0) STOP 1
+ if (product (a, .true.) /= 6.0) STOP 2
+ if (sum (a, .false.) /= 0.0) STOP 3
+ if (sum (a, .true.) /= 5.0) STOP 4
+ if (maxval (a, .true.) /= 3.0) STOP 5
+ if (maxval (a, .false.) > -1e38) STOP 6
+ if (maxloc (a, 1, .true.) /= 2) STOP 7
+ if (maxloc (a, 1, .false.) /= 0) STOP 8! Change to F2003 requirement.
end program main
diff --git a/gcc/testsuite/gfortran.dg/scalar_mask_2.f90 b/gcc/testsuite/gfortran.dg/scalar_mask_2.f90
index 967ac5c22c2..0a91434f167 100644
--- a/gcc/testsuite/gfortran.dg/scalar_mask_2.f90
+++ b/gcc/testsuite/gfortran.dg/scalar_mask_2.f90
@@ -9,25 +9,25 @@ program main
a(1,2) = -1.
a(2,1) = 13.
a(2,2) = -31.
- if (any (minloc (a, lo) /= 0)) call abort
- if (any (minloc (a, .true.) /= (/ 2, 2 /))) call abort
- if (any (minloc(a, 1, .true.) /= (/ 1, 2/))) call abort
- if (any (minloc(a, 1, lo ) /= (/ 0, 0/))) call abort
+ if (any (minloc (a, lo) /= 0)) STOP 1
+ if (any (minloc (a, .true.) /= (/ 2, 2 /))) STOP 2
+ if (any (minloc(a, 1, .true.) /= (/ 1, 2/))) STOP 3
+ if (any (minloc(a, 1, lo ) /= (/ 0, 0/))) STOP 4
- if (any (maxloc (a, lo) /= 0)) call abort
- if (any (maxloc (a, .true.) /= (/ 2,1 /))) call abort
- if (any (maxloc(a, 1, .true.) /= (/ 2, 1/))) call abort
- if (any (maxloc(a, 1, lo) /= (/ 0, 0/))) call abort
+ if (any (maxloc (a, lo) /= 0)) STOP 5
+ if (any (maxloc (a, .true.) /= (/ 2,1 /))) STOP 6
+ if (any (maxloc(a, 1, .true.) /= (/ 2, 1/))) STOP 7
+ if (any (maxloc(a, 1, lo) /= (/ 0, 0/))) STOP 8
- if (any (maxval(a, 1, lo) /= -HUGE(a))) call abort
- if (any (maxval(a, 1, .true.) /= (/13., -1./))) call abort
- if (any (minval(a, 1, lo) /= HUGE(a))) call abort
- if (any (minval(a, 1, .true.) /= (/1., -31./))) call abort
+ if (any (maxval(a, 1, lo) /= -HUGE(a))) STOP 9
+ if (any (maxval(a, 1, .true.) /= (/13., -1./))) STOP 10
+ if (any (minval(a, 1, lo) /= HUGE(a))) STOP 11
+ if (any (minval(a, 1, .true.) /= (/1., -31./))) STOP 12
- if (any (product(a, 1, .true.) /= (/13., 31./))) call abort
- if (any (product(a, 1, lo ) /= (/1., 1./))) call abort
+ if (any (product(a, 1, .true.) /= (/13., 31./))) STOP 13
+ if (any (product(a, 1, lo ) /= (/1., 1./))) STOP 14
- if (any (sum(a, 1, .true.) /= (/14., -32./))) call abort
- if (any (sum(a, 1, lo) /= (/0., 0./))) call abort
+ if (any (sum(a, 1, .true.) /= (/14., -32./))) STOP 15
+ if (any (sum(a, 1, lo) /= (/0., 0./))) STOP 16
end program main
diff --git a/gcc/testsuite/gfortran.dg/scalarize_parameter_array_1.f90 b/gcc/testsuite/gfortran.dg/scalarize_parameter_array_1.f90
index 86bc92df47a..eeda602380a 100644
--- a/gcc/testsuite/gfortran.dg/scalarize_parameter_array_1.f90
+++ b/gcc/testsuite/gfortran.dg/scalarize_parameter_array_1.f90
@@ -11,17 +11,17 @@ program matrix
real,dimension(2,2)::m, n
m=f()+c
- if (any (m .ne. reshape((/2,3,4,5/),(/2,2/)))) call abort ()
+ if (any (m .ne. reshape((/2,3,4,5/),(/2,2/)))) STOP 1
m=c+f()
- if (any (m .ne. reshape((/2,3,4,5/),(/2,2/)))) call abort ()
+ if (any (m .ne. reshape((/2,3,4,5/),(/2,2/)))) STOP 2
call sub(m+f())
- if (any (n .ne. reshape((/3,4,5,6/),(/2,2/)))) call abort ()
+ if (any (n .ne. reshape((/3,4,5,6/),(/2,2/)))) STOP 3
call sub(c+m)
- if (any (n .ne. reshape((/3,5,7,9/),(/2,2/)))) call abort ()
+ if (any (n .ne. reshape((/3,5,7,9/),(/2,2/)))) STOP 4
call sub(f()+c)
- if (any (n .ne. reshape((/2,3,4,5/),(/2,2/)))) call abort ()
+ if (any (n .ne. reshape((/2,3,4,5/),(/2,2/)))) STOP 5
call sub(c+f())
- if (any (n .ne. reshape((/2,3,4,5/),(/2,2/)))) call abort ()
+ if (any (n .ne. reshape((/2,3,4,5/),(/2,2/)))) STOP 6
contains
diff --git a/gcc/testsuite/gfortran.dg/scale_1.f90 b/gcc/testsuite/gfortran.dg/scale_1.f90
index 72a9fd8d9c8..e3031be6690 100644
--- a/gcc/testsuite/gfortran.dg/scale_1.f90
+++ b/gcc/testsuite/gfortran.dg/scale_1.f90
@@ -20,16 +20,16 @@ I8 = -20
X = SCALE (X, I1)
X = SCALE (X, I2)
-IF (X.NE.1.) CALL ABORT()
+IF (X.NE.1.) STOP 1
X = SCALE (X, I4)
X = SCALE (X, I8)
-IF (X.NE.1.) CALL ABORT()
+IF (X.NE.1.) STOP 2
Y = SCALE (Y, I1)
Y = SCALE (Y, I2)
-IF (Y.NE.1._DP) CALL ABORT()
+IF (Y.NE.1._DP) STOP 3
Y = SCALE (Y, I4)
Y = SCALE (Y, I8)
-IF (Y.NE.1._DP) CALL ABORT()
+IF (Y.NE.1._DP) STOP 4
END
diff --git a/gcc/testsuite/gfortran.dg/scan_1.f90 b/gcc/testsuite/gfortran.dg/scan_1.f90
index 5ae64912e2e..1ae2c7d0041 100644
--- a/gcc/testsuite/gfortran.dg/scan_1.f90
+++ b/gcc/testsuite/gfortran.dg/scan_1.f90
@@ -5,26 +5,26 @@ program b
s = 'xi'
w = scan(s, 'iI')
- if (w /= 2) call abort
+ if (w /= 2) STOP 1
w = scan(s, 'xX', .true.)
- if (w /= 1) call abort
+ if (w /= 1) STOP 2
w = scan(s, 'ab')
- if (w /= 0) call abort
+ if (w /= 0) STOP 3
w = scan(s, 'ab', .true.)
- if (w /= 0) call abort
+ if (w /= 0) STOP 4
s = 'xi'
t = 'iI'
w = scan(s, t)
- if (w /= 2) call abort
+ if (w /= 2) STOP 5
t = 'xX'
w = scan(s, t, .true.)
- if (w /= 1) call abort
+ if (w /= 1) STOP 6
t = 'ab'
w = scan(s, t)
- if (w /= 0) call abort
+ if (w /= 0) STOP 7
w = scan(s, t, .true.)
- if (w /= 0) call abort
+ if (w /= 0) STOP 8
end program b
diff --git a/gcc/testsuite/gfortran.dg/scan_2.f90 b/gcc/testsuite/gfortran.dg/scan_2.f90
index 5ef02300d9b..ad042aa34d9 100644
--- a/gcc/testsuite/gfortran.dg/scan_2.f90
+++ b/gcc/testsuite/gfortran.dg/scan_2.f90
@@ -15,7 +15,7 @@ module m1
iscan = scan('AA','A',back=A)
iverify = verify('xx','A',back=A)
- if (iscan /= 2 .or. iverify /= 2) call abort ()
+ if (iscan /= 2 .or. iverify /= 2) STOP 1
print *, iverify, iscan
! write(*,'(a)') 'SCAN test: A = '//trim(tf(iscan)) ! should print true
! write(*,'(a)') 'VERIFY test: A = '//trim(tf(iverify)) ! should print true
diff --git a/gcc/testsuite/gfortran.dg/secnds-1.f b/gcc/testsuite/gfortran.dg/secnds-1.f
index c5f528357ad..4530579f0b4 100644
--- a/gcc/testsuite/gfortran.dg/secnds-1.f
+++ b/gcc/testsuite/gfortran.dg/secnds-1.f
@@ -17,7 +17,7 @@ C
if ((t1a - t1) < -12.0*3600.0 ) t1 = t1 - 24.0*3600.0
if ((t1a - dat1) < -12.0*3600.0 ) dat1 = dat1 - 24.0*3600.0
if ((dat1 < nearest(t1, -1.)) .or. (dat1 > nearest(t1a, 1.)))
- & call abort ()
+ & STOP 1
t2a = secnds (t1a)
call date_and_time (dum1, dum2, dum3, values)
t2 = secnds (t1)
@@ -26,5 +26,5 @@ C
! handle midnight shift
if ((dat2 - dat1) < -12.0*3600.0 ) dat1 = dat1 - 24.0*3600.0
if (((dat2 - dat1) < t2a - 0.008) .or.
- & ((dat2 - dat1) > t2 + 0.008)) call abort ()
+ & ((dat2 - dat1) > t2 + 0.008)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/secnds.f b/gcc/testsuite/gfortran.dg/secnds.f
index 3131598a201..c4a5ab36d3f 100644
--- a/gcc/testsuite/gfortran.dg/secnds.f
+++ b/gcc/testsuite/gfortran.dg/secnds.f
@@ -17,7 +17,7 @@ C
if ((t1a - t1) < -12.0*3600.0 ) t1 = t1 - 24.0*3600.0
if ((t1a - dat1) < -12.0*3600.0 ) dat1 = dat1 - 24.0*3600.0
if ((dat1 < nearest(t1, -1.)) .or. (dat1 > nearest(t1a, 1.)))
- & call abort ()
+ & STOP 1
do j=1,10000
do i=1,10000
end do
@@ -30,5 +30,5 @@ C
! handle midnight shift
if ((dat2 - dat1) < -12.0*3600.0 ) dat1 = dat1 - 24.0*3600.0
if (((dat2 - dat1) < t2a - 0.008) .or.
- & ((dat2 - dat1) > t2 + 0.008)) call abort ()
+ & ((dat2 - dat1) > t2 + 0.008)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/select_1.f90 b/gcc/testsuite/gfortran.dg/select_1.f90
index 4d9d597f794..d6d6610c4b4 100644
--- a/gcc/testsuite/gfortran.dg/select_1.f90
+++ b/gcc/testsuite/gfortran.dg/select_1.f90
@@ -6,13 +6,13 @@ program select_2
do i = 1, 5
select case(i)
case (1)
- if (i /= 1) call abort
+ if (i /= 1) STOP 1
case (2:3)
- if (i /= 2 .and. i /= 3) call abort
+ if (i /= 2 .and. i /= 3) STOP 2
case (4)
- if (i /= 4) call abort
+ if (i /= 4) STOP 3
case default
- if (i /= 5) call abort
+ if (i /= 5) STOP 4
end select
end do
end program select_2
diff --git a/gcc/testsuite/gfortran.dg/select_2.f90 b/gcc/testsuite/gfortran.dg/select_2.f90
index 6ece65840f0..2133744b6dc 100644
--- a/gcc/testsuite/gfortran.dg/select_2.f90
+++ b/gcc/testsuite/gfortran.dg/select_2.f90
@@ -7,13 +7,13 @@ program select_3
do i = 1, 4
select case(i)
case (1)
- if (i /= 1) call abort
+ if (i /= 1) STOP 1
case (3:2)
- call abort
+ STOP 2
case (4)
- if (i /= 4) call abort
+ if (i /= 4) STOP 3
case default
- if (i /= 2 .and. i /= 3) call abort
+ if (i /= 2 .and. i /= 3) STOP 4
end select
end do
end program select_3
diff --git a/gcc/testsuite/gfortran.dg/select_3.f90 b/gcc/testsuite/gfortran.dg/select_3.f90
index d1f2d690499..90792a2f433 100644
--- a/gcc/testsuite/gfortran.dg/select_3.f90
+++ b/gcc/testsuite/gfortran.dg/select_3.f90
@@ -6,13 +6,13 @@ program select_4
do i = 1, 34, 4
select case(i)
case (:5)
- if (i /= 1 .and. i /= 5) call abort
+ if (i /= 1 .and. i /= 5) STOP 1
case (13:21)
- if (i /= 13 .and. i /= 17 .and. i /= 21) call abort
+ if (i /= 13 .and. i /= 17 .and. i /= 21) STOP 2
case (29:)
- if (i /= 29 .and. i /= 33) call abort
+ if (i /= 29 .and. i /= 33) STOP 3
case default
- if (i /= 9 .and. i /= 25) call abort
+ if (i /= 9 .and. i /= 25) STOP 4
end select
end do
end program select_4
diff --git a/gcc/testsuite/gfortran.dg/select_5.f90 b/gcc/testsuite/gfortran.dg/select_5.f90
index 9afc1603ba2..659cf61e8ee 100644
--- a/gcc/testsuite/gfortran.dg/select_5.f90
+++ b/gcc/testsuite/gfortran.dg/select_5.f90
@@ -7,18 +7,18 @@ program select_5
! kind = 4, reachable
case (1_4)
- if (i /= 1_4) call abort
+ if (i /= 1_4) STOP 1
! kind = 8, reachable
case (2_8)
- if (i /= 2_8) call abort
+ if (i /= 2_8) STOP 2
! kind = 4, unreachable because of range of i
case (200) ! { dg-warning "not in the range" }
- call abort
+ STOP 3
case default
- if (i /= 3) call abort
+ if (i /= 3) STOP 4
end select
end do
end program select_5
diff --git a/gcc/testsuite/gfortran.dg/select_char_1.f90 b/gcc/testsuite/gfortran.dg/select_char_1.f90
index d4e1852e200..1b79aac1129 100644
--- a/gcc/testsuite/gfortran.dg/select_char_1.f90
+++ b/gcc/testsuite/gfortran.dg/select_char_1.f90
@@ -47,31 +47,31 @@ program test
end function char_select2
end interface
- if (char_select("foo") /= 1) call abort
- if (char_select("foo ") /= 1) call abort
- if (char_select("foo2 ") /= -1) call abort
- if (char_select("bar") /= 2) call abort
- if (char_select("gee") /= 2) call abort
- if (char_select("000") /= -1) call abort
- if (char_select("101") /= -1) call abort
- if (char_select("109") /= -1) call abort
- if (char_select("111") /= 3) call abort
- if (char_select("254") /= -1) call abort
- if (char_select("999") /= 3) call abort
- if (char_select("9989") /= -1) call abort
- if (char_select("1882") /= -1) call abort
+ if (char_select("foo") /= 1) STOP 1
+ if (char_select("foo ") /= 1) STOP 2
+ if (char_select("foo2 ") /= -1) STOP 3
+ if (char_select("bar") /= 2) STOP 4
+ if (char_select("gee") /= 2) STOP 5
+ if (char_select("000") /= -1) STOP 6
+ if (char_select("101") /= -1) STOP 7
+ if (char_select("109") /= -1) STOP 8
+ if (char_select("111") /= 3) STOP 9
+ if (char_select("254") /= -1) STOP 10
+ if (char_select("999") /= 3) STOP 11
+ if (char_select("9989") /= -1) STOP 12
+ if (char_select("1882") /= -1) STOP 13
- if (char_select2("foo") /= 1) call abort
- if (char_select2("foo ") /= 1) call abort
- if (char_select2("foo2 ") /= -1) call abort
- if (char_select2("bar") /= 2) call abort
- if (char_select2("gee") /= 2) call abort
- if (char_select2("000") /= -1) call abort
- if (char_select2("101") /= -1) call abort
- if (char_select2("109") /= -1) call abort
- if (char_select2("111") /= 3) call abort
- if (char_select2("254") /= -1) call abort
- if (char_select2("999") /= 3) call abort
- if (char_select2("9989") /= -1) call abort
- if (char_select2("1882") /= -1) call abort
+ if (char_select2("foo") /= 1) STOP 14
+ if (char_select2("foo ") /= 1) STOP 15
+ if (char_select2("foo2 ") /= -1) STOP 16
+ if (char_select2("bar") /= 2) STOP 17
+ if (char_select2("gee") /= 2) STOP 18
+ if (char_select2("000") /= -1) STOP 19
+ if (char_select2("101") /= -1) STOP 20
+ if (char_select2("109") /= -1) STOP 21
+ if (char_select2("111") /= 3) STOP 22
+ if (char_select2("254") /= -1) STOP 23
+ if (char_select2("999") /= 3) STOP 24
+ if (char_select2("9989") /= -1) STOP 25
+ if (char_select2("1882") /= -1) STOP 26
end program test
diff --git a/gcc/testsuite/gfortran.dg/select_char_2.f90 b/gcc/testsuite/gfortran.dg/select_char_2.f90
index bcdc94a8861..48a04906bfd 100644
--- a/gcc/testsuite/gfortran.dg/select_char_2.f90
+++ b/gcc/testsuite/gfortran.dg/select_char_2.f90
@@ -1,15 +1,15 @@
! { dg-do run }
! { dg-options "-O -fdump-tree-original" }
- if (foo ('E') .ne. 1) call abort
- if (foo ('e') .ne. 1) call abort
- if (foo ('f') .ne. 2) call abort
- if (foo ('g') .ne. 2) call abort
- if (foo ('h') .ne. 2) call abort
- if (foo ('Q') .ne. 3) call abort
- if (foo (' ') .ne. 4) call abort
- if (bar ('e') .ne. 1) call abort
- if (bar ('f') .ne. 3) call abort
+ if (foo ('E') .ne. 1) STOP 1
+ if (foo ('e') .ne. 1) STOP 2
+ if (foo ('f') .ne. 2) STOP 3
+ if (foo ('g') .ne. 2) STOP 4
+ if (foo ('h') .ne. 2) STOP 5
+ if (foo ('Q') .ne. 3) STOP 6
+ if (foo (' ') .ne. 4) STOP 7
+ if (bar ('e') .ne. 1) STOP 8
+ if (bar ('f') .ne. 3) STOP 9
contains
function foo (c)
character :: c
diff --git a/gcc/testsuite/gfortran.dg/select_type_1.f03 b/gcc/testsuite/gfortran.dg/select_type_1.f03
index b92366db704..695f75661b8 100644
--- a/gcc/testsuite/gfortran.dg/select_type_1.f03
+++ b/gcc/testsuite/gfortran.dg/select_type_1.f03
@@ -23,6 +23,7 @@
end type
class(t1), pointer :: a => NULL()
+ class(t1), allocatable, dimension(:) :: ca
type(t1), target :: b
type(t2), target :: c
a => b
@@ -32,6 +33,7 @@
select type (3.5) ! { dg-error "is not a named variable" }
select type (a%cp) ! { dg-error "is not a named variable" }
+ select type (ca(1))! { dg-error "is not a named variable" }
select type (b) ! { dg-error "Selector shall be polymorphic" }
end select
diff --git a/gcc/testsuite/gfortran.dg/select_type_13.f03 b/gcc/testsuite/gfortran.dg/select_type_13.f03
index 8546ccbe825..e3ff65ed81e 100644
--- a/gcc/testsuite/gfortran.dg/select_type_13.f03
+++ b/gcc/testsuite/gfortran.dg/select_type_13.f03
@@ -18,7 +18,7 @@ program bug20
select type(aa => a)
type is (d_base_sparse_mat)
write(0,*) 'NV = ',size(aa%v)
- if (size(aa%v) /= 10) call abort ()
+ if (size(aa%v) /= 10) STOP 1
class default
write(0,*) 'Not implemented yet '
end select
diff --git a/gcc/testsuite/gfortran.dg/select_type_14.f03 b/gcc/testsuite/gfortran.dg/select_type_14.f03
index 2d37bbc7f8b..3b170eacd4e 100644
--- a/gcc/testsuite/gfortran.dg/select_type_14.f03
+++ b/gcc/testsuite/gfortran.dg/select_type_14.f03
@@ -19,6 +19,6 @@ m%i = 5
select type(bar => m%foo)
type is(t0)
print *, bar
- if (bar%j /= 42) call abort ()
+ if (bar%j /= 42) STOP 1
end select
end
diff --git a/gcc/testsuite/gfortran.dg/select_type_15.f03 b/gcc/testsuite/gfortran.dg/select_type_15.f03
index f408527d602..a467a741292 100644
--- a/gcc/testsuite/gfortran.dg/select_type_15.f03
+++ b/gcc/testsuite/gfortran.dg/select_type_15.f03
@@ -62,13 +62,13 @@ program bug20
class(d_base_sparse_mat), allocatable :: a
allocate(x_base_sparse_mat :: a)
- if (a%get_fmt()/="XBASE") call abort()
+ if (a%get_fmt()/="XBASE") STOP 1
select type(a)
type is (d_base_sparse_mat)
- call abort()
+ STOP 2
class default
- if (a%get_fmt()/="XBASE") call abort()
+ if (a%get_fmt()/="XBASE") STOP 3
end select
end program bug20
diff --git a/gcc/testsuite/gfortran.dg/select_type_19.f03 b/gcc/testsuite/gfortran.dg/select_type_19.f03
index 0ae2e1ce2fe..2608981eed0 100644
--- a/gcc/testsuite/gfortran.dg/select_type_19.f03
+++ b/gcc/testsuite/gfortran.dg/select_type_19.f03
@@ -17,7 +17,7 @@
select type (aa=>a)
type is (t1)
- if (allocated(aa%ja)) call abort()
+ if (allocated(aa%ja)) STOP 1
end select
end
diff --git a/gcc/testsuite/gfortran.dg/select_type_2.f03 b/gcc/testsuite/gfortran.dg/select_type_2.f03
index d4a5343d7b2..41f7f080eaa 100644
--- a/gcc/testsuite/gfortran.dg/select_type_2.f03
+++ b/gcc/testsuite/gfortran.dg/select_type_2.f03
@@ -34,7 +34,7 @@
i = 3
end select
- if (i /= 1) call abort()
+ if (i /= 1) STOP 1
cp => b
i = 0
@@ -48,7 +48,7 @@
i = 3
end select
- if (i /= 2) call abort()
+ if (i /= 2) STOP 2
cp => c
i = 0
@@ -62,6 +62,6 @@
i = 3
end select
- if (i /= 3) call abort()
+ if (i /= 3) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/select_type_26.f03 b/gcc/testsuite/gfortran.dg/select_type_26.f03
index 7d9c43739fe..6940f54f11e 100644
--- a/gcc/testsuite/gfortran.dg/select_type_26.f03
+++ b/gcc/testsuite/gfortran.dg/select_type_26.f03
@@ -30,9 +30,9 @@
allocate(m%foo(3), source = [(t0(n), n = 1,3)])
select type(bar => m%foo)
type is(t0)
- if (any (bar%j .ne. [1,2,3])) call abort
+ if (any (bar%j .ne. [1,2,3])) STOP 1
type is(t1)
- call abort
+ STOP 2
end select
deallocate(m%foo)
@@ -41,48 +41,48 @@
! Then with m%foo of another dynamic type.
select type(bar => m%foo)
type is(t0)
- call abort
+ STOP 3
type is(t1)
- if (any (bar%k .ne. [40,50,60])) call abort
+ if (any (bar%k .ne. [40,50,60])) STOP 4
end select
! Try it with a selector array section.
select type(bar => m%foo(2:3))
type is(t0)
- call abort
+ STOP 5
type is(t1)
- if (any (bar%k .ne. [50,60])) call abort
+ if (any (bar%k .ne. [50,60])) STOP 6
end select
! Try it with a selector array element.
select type(bar => m%foo(2))
type is(t0)
- call abort
+ STOP 7
type is(t1)
- if (bar%k .ne. 50) call abort
+ if (bar%k .ne. 50) STOP 8
end select
! Now try class is and a selector which is an array section of an associate name.
select type(bar => m%foo)
type is(t0)
- call abort
+ STOP 9
class is (t1)
- if (any (bar%j .ne. [4,5,6])) call abort
+ if (any (bar%j .ne. [4,5,6])) STOP 10
select type (foobar => bar(3:2:-1))
type is (t1)
- if (any (foobar%k .ne. [60,50])) call abort
+ if (any (foobar%k .ne. [60,50])) STOP 11
end select
end select
! Now try class is and a selector which is an array element of an associate name.
select type(bar => m%foo)
type is(t0)
- call abort
+ STOP 12
class is (t1)
- if (any (bar%j .ne. [4,5,6])) call abort
+ if (any (bar%j .ne. [4,5,6])) STOP 13
select type (foobar => bar(2))
type is (t1)
- if (foobar%k .ne. 50) call abort
+ if (foobar%k .ne. 50) STOP 14
end select
end select
@@ -97,14 +97,14 @@
end do
select type(bar => m1(3)%foo)
type is(t0)
- if (bar%j .ne. 297) call abort
+ if (bar%j .ne. 297) STOP 15
type is(t1)
- call abort
+ STOP 16
end select
select type(bar => m1(1)%foo)
type is(t0)
- call abort
+ STOP 17
type is(t1)
- if (bar%k .ne. 999) call abort
+ if (bar%k .ne. 999) STOP 18
end select
end
diff --git a/gcc/testsuite/gfortran.dg/select_type_27.f03 b/gcc/testsuite/gfortran.dg/select_type_27.f03
index 5bd3c1a357b..1fe9dfd6f8d 100644
--- a/gcc/testsuite/gfortran.dg/select_type_27.f03
+++ b/gcc/testsuite/gfortran.dg/select_type_27.f03
@@ -35,9 +35,9 @@
allocate(m%foo(3), source = [(t0(n), n = 1,3)])
select type(bar => m%foo)
type is(t0)
- if (any (bar%j .ne. [1,2,3])) call abort
+ if (any (bar%j .ne. [1,2,3])) STOP 1
type is(t1)
- call abort
+ STOP 2
end select
deallocate(m%foo)
@@ -46,48 +46,48 @@
! Then with m%foo of another dynamic type.
select type(bar => m%foo)
type is(t0)
- call abort
+ STOP 3
type is(t1)
- if (any (bar%k .ne. [40,50,60])) call abort
+ if (any (bar%k .ne. [40,50,60])) STOP 4
end select
! Try it with a selector array section.
select type(bar => m%foo(2:3))
type is(t0)
- call abort
+ STOP 5
type is(t1)
- if (any (bar%k .ne. [50,60])) call abort
+ if (any (bar%k .ne. [50,60])) STOP 6
end select
! Try it with a selector array element.
select type(bar => m%foo(2))
type is(t0)
- call abort
+ STOP 7
type is(t1)
- if (bar%k .ne. 50) call abort
+ if (bar%k .ne. 50) STOP 8
end select
! Now try class is and a selector which is an array section of an associate name.
select type(bar => m%foo)
type is(t0)
- call abort
+ STOP 9
class is (t1)
- if (any (bar%j .ne. [4,5,6])) call abort
+ if (any (bar%j .ne. [4,5,6])) STOP 10
select type (foobar => bar(3:2:-1))
type is (t1)
- if (any (foobar%k .ne. [60,50])) call abort
+ if (any (foobar%k .ne. [60,50])) STOP 11
end select
end select
! Now try class is and a selector which is an array element of an associate name.
select type(bar => m%foo)
type is(t0)
- call abort
+ STOP 12
class is (t1)
- if (any (bar%j .ne. [4,5,6])) call abort
+ if (any (bar%j .ne. [4,5,6])) STOP 13
select type (foobar => bar(2))
type is (t1)
- if (foobar%k .ne. 50) call abort
+ if (foobar%k .ne. 50) STOP 14
end select
end select
@@ -102,14 +102,14 @@
end do
select type(bar => m1(3)%foo)
type is(t0)
- if (bar%j .ne. 297) call abort
+ if (bar%j .ne. 297) STOP 15
type is(t1)
- call abort
+ STOP 16
end select
select type(bar => m1(1)%foo)
type is(t0)
- call abort
+ STOP 17
type is(t1)
- if (bar%k .ne. 999) call abort
+ if (bar%k .ne. 999) STOP 18
end select
end
diff --git a/gcc/testsuite/gfortran.dg/select_type_28.f03 b/gcc/testsuite/gfortran.dg/select_type_28.f03
index 9cab7214491..cd1649b398c 100644
--- a/gcc/testsuite/gfortran.dg/select_type_28.f03
+++ b/gcc/testsuite/gfortran.dg/select_type_28.f03
@@ -28,9 +28,9 @@
select type(bar => m%foo) ! { dg-error "part reference with nonzero rank" }
type is(t0)
- if (any (bar%j .ne. [99, 198, 297, 396])) call abort
+ if (any (bar%j .ne. [99, 198, 297, 396])) STOP 1
type is(t1)
- call abort
+ STOP 2
end select
end
diff --git a/gcc/testsuite/gfortran.dg/select_type_3.f03 b/gcc/testsuite/gfortran.dg/select_type_3.f03
index 13cd3c11a82..ba9a88818bf 100644
--- a/gcc/testsuite/gfortran.dg/select_type_3.f03
+++ b/gcc/testsuite/gfortran.dg/select_type_3.f03
@@ -25,8 +25,8 @@
end select
print *,b%i,b%j
- if (b%i /= -1) call abort()
- if (b%j /= 2) call abort()
+ if (b%i /= -1) STOP 1
+ if (b%j /= 2) STOP 2
select type (cp)
type is (t1)
@@ -36,7 +36,7 @@
end select
print *,b%i,b%j
- if (b%i /= 6) call abort()
- if (b%j /= 2) call abort()
+ if (b%i /= 6) STOP 3
+ if (b%j /= 2) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/select_type_35.f03 b/gcc/testsuite/gfortran.dg/select_type_35.f03
index 92d2f275313..b7b695c08d1 100644
--- a/gcc/testsuite/gfortran.dg/select_type_35.f03
+++ b/gcc/testsuite/gfortran.dg/select_type_35.f03
@@ -28,13 +28,13 @@ contains
select type(me)
type is(t_Foo)
- if (len(me%string) /= 9) call abort()
+ if (len(me%string) /= 9) STOP 1
end select
alias => me
select type(alias)
type is(t_Foo)
- if (len(alias%string) /= 9) call abort()
+ if (len(alias%string) /= 9) STOP 2
end select
end subroutine bar
end program foo
diff --git a/gcc/testsuite/gfortran.dg/select_type_36.f03 b/gcc/testsuite/gfortran.dg/select_type_36.f03
index a667ece3326..10a314d4325 100644
--- a/gcc/testsuite/gfortran.dg/select_type_36.f03
+++ b/gcc/testsuite/gfortran.dg/select_type_36.f03
@@ -23,11 +23,11 @@ module types
integer :: switch
select type(x)
type is(CS5SS)
- if (switch .ne. 1) call abort
+ if (switch .ne. 1) STOP 1
type is(SQS3C)
- if (switch .ne. 2) call abort
+ if (switch .ne. 2) STOP 2
class default
- call abort
+ STOP 3
end select
end subroutine sub
end module types
diff --git a/gcc/testsuite/gfortran.dg/select_type_37.f03 b/gcc/testsuite/gfortran.dg/select_type_37.f03
index c9fd23cea3e..ad61cb6dfd8 100644
--- a/gcc/testsuite/gfortran.dg/select_type_37.f03
+++ b/gcc/testsuite/gfortran.dg/select_type_37.f03
@@ -16,29 +16,29 @@ program pr69556
real :: cst3(2) = [5.0, 6.0]
write (buffer1, *) cst1
- if (.not.associated(return_pointer1(cst1))) call abort
- if (trim (buffer1) .ne. trim (buffer2)) call abort
+ if (.not.associated(return_pointer1(cst1))) STOP 1
+ if (trim (buffer1) .ne. trim (buffer2)) STOP 2
select type (ptr)
type is (real)
- if (any (ptr .ne. cst2)) call abort
+ if (any (ptr .ne. cst2)) STOP 3
end select
deallocate (ptr)
write (buffer1, *) cst2
- if (.not.associated(return_pointer(cst2))) call abort
- if (trim (buffer1) .ne. trim (buffer2)) call abort
+ if (.not.associated(return_pointer(cst2))) STOP 4
+ if (trim (buffer1) .ne. trim (buffer2)) STOP 5
select type (ptr)
type is (real)
- if (any (ptr .ne. cst3)) call abort
+ if (any (ptr .ne. cst3)) STOP 6
end select
deallocate (ptr)
write (buffer1, *) cst1
- if (.not.associated(return_pointer2(cst1))) call abort
- if (trim (buffer1) .ne. trim (buffer2)) call abort
+ if (.not.associated(return_pointer2(cst1))) STOP 7
+ if (trim (buffer1) .ne. trim (buffer2)) STOP 8
select type (ptr)
type is (real)
- if (any (ptr .ne. cst2)) call abort
+ if (any (ptr .ne. cst2)) STOP 9
end select
deallocate (ptr)
diff --git a/gcc/testsuite/gfortran.dg/select_type_39.f03 b/gcc/testsuite/gfortran.dg/select_type_39.f03
index 08d619536ab..c0ff3a209f1 100644
--- a/gcc/testsuite/gfortran.dg/select_type_39.f03
+++ b/gcc/testsuite/gfortran.dg/select_type_39.f03
@@ -8,9 +8,9 @@ class(*), allocatable :: val(:)
call get_value (val)
select type (val)
type is (character(*))
- if (size (val) .ne. 2) call abort
- if (len(val) .ne. 3) call abort
- if (any (val .ne. ['foo','bar'])) call abort
+ if (size (val) .ne. 2) STOP 1
+ if (len(val) .ne. 3) STOP 2
+ if (any (val .ne. ['foo','bar'])) STOP 3
end select
contains
subroutine get_value (value)
diff --git a/gcc/testsuite/gfortran.dg/select_type_4.f90 b/gcc/testsuite/gfortran.dg/select_type_4.f90
index 7e12d935447..06a61a519e0 100644
--- a/gcc/testsuite/gfortran.dg/select_type_4.f90
+++ b/gcc/testsuite/gfortran.dg/select_type_4.f90
@@ -153,22 +153,22 @@ program main
write (*,*) node%x
if (.not.( (cnt == 1 .and. node%x == 1.23) &
.or. (cnt == 5 .and. node%x == 4.56))) then
- call abort()
+ STOP 1
end if
type is (integer_node_type)
write (*,*) node%i
- if (cnt /= 2 .or. node%i /= 42) call abort()
+ if (cnt /= 2 .or. node%i /= 42) STOP 2
type is (node_type)
write (*,*) "Node with no data."
- if (cnt /= 3) call abort()
+ if (cnt /= 3) STOP 3
class default
Write (*,*) "Some other node type."
- if (cnt /= 4) call abort()
+ if (cnt /= 4) STOP 4
end select
node => next_node(node)
end do
- if (cnt /= 5) call abort()
+ if (cnt /= 5) STOP 5
call destroy_list(list)
stop
end program main
diff --git a/gcc/testsuite/gfortran.dg/select_type_5.f03 b/gcc/testsuite/gfortran.dg/select_type_5.f03
index ec9d3cd8d17..5b897de21a8 100644
--- a/gcc/testsuite/gfortran.dg/select_type_5.f03
+++ b/gcc/testsuite/gfortran.dg/select_type_5.f03
@@ -27,8 +27,8 @@
end select
print *,b%i,b%j
- if (b%i /= -1) call abort()
- if (b%j /= 2) call abort()
+ if (b%i /= -1) STOP 1
+ if (b%j /= 2) STOP 2
select type (aa => b%c)
type is (t1)
@@ -38,10 +38,10 @@
end select
print *,b%i,b%j
- if (b%i /= 6) call abort()
- if (b%j /= 2) call abort()
+ if (b%i /= 6) STOP 3
+ if (b%j /= 2) STOP 4
print *,aa
- if (aa/=5) call abort()
+ if (aa/=5) STOP 5
end
diff --git a/gcc/testsuite/gfortran.dg/select_type_6.f03 b/gcc/testsuite/gfortran.dg/select_type_6.f03
index 3b3c08e2296..b9fb64a5219 100644
--- a/gcc/testsuite/gfortran.dg/select_type_6.f03
+++ b/gcc/testsuite/gfortran.dg/select_type_6.f03
@@ -27,12 +27,12 @@
type is(t3)
mt3%j = 2*mt2%i
print *,mt3%j
- if (mt3%j /= 10) call abort()
+ if (mt3%j /= 10) STOP 1
class default
- call abort()
+ STOP 2
end select
class default
- call abort()
+ STOP 3
end select
end
diff --git a/gcc/testsuite/gfortran.dg/select_type_7.f03 b/gcc/testsuite/gfortran.dg/select_type_7.f03
index 554b6cd122d..236c54df512 100644
--- a/gcc/testsuite/gfortran.dg/select_type_7.f03
+++ b/gcc/testsuite/gfortran.dg/select_type_7.f03
@@ -24,9 +24,9 @@
cp%b = 76
call s(cp)
print *,cp%a,cp%b
- if (cp%a /= cp%b) call abort()
+ if (cp%a /= cp%b) STOP 1
class default
- call abort()
+ STOP 2
end select
contains
diff --git a/gcc/testsuite/gfortran.dg/select_type_8.f03 b/gcc/testsuite/gfortran.dg/select_type_8.f03
index 306f2d18286..996e9812958 100644
--- a/gcc/testsuite/gfortran.dg/select_type_8.f03
+++ b/gcc/testsuite/gfortran.dg/select_type_8.f03
@@ -37,7 +37,7 @@
i = 4
end select
print *,i
- if (i /= 3) call abort()
+ if (i /= 3) STOP 1
cp => a
select type (cp)
@@ -49,7 +49,7 @@
i = 3
end select
print *,i
- if (i /= 1) call abort()
+ if (i /= 1) STOP 2
cp => b
select type (cp)
@@ -63,7 +63,7 @@
i = 5
end select
print *,i
- if (i /= 4) call abort()
+ if (i /= 4) STOP 3
cp => b
select type (cp)
@@ -77,7 +77,7 @@
i = 3
end select
print *,i
- if (i /= 4) call abort()
+ if (i /= 4) STOP 4
cp => a
select type (cp)
@@ -93,6 +93,6 @@
i = 5
end select
print *,i
- if (i /= 3) call abort()
+ if (i /= 3) STOP 5
end
diff --git a/gcc/testsuite/gfortran.dg/selected_char_kind_1.f90 b/gcc/testsuite/gfortran.dg/selected_char_kind_1.f90
index f11fd0fb3f4..bd5348e7149 100644
--- a/gcc/testsuite/gfortran.dg/selected_char_kind_1.f90
+++ b/gcc/testsuite/gfortran.dg/selected_char_kind_1.f90
@@ -10,17 +10,17 @@
character(kind=selected_char_kind ("ascii")) :: s3
character(kind=selected_char_kind ("default")) :: s4
- if (kind (s1) /= selected_char_kind ("ascii")) call abort
- if (kind (s2) /= selected_char_kind ("default")) call abort
- if (kind (s3) /= ascii) call abort
- if (kind (s4) /= default) call abort
+ if (kind (s1) /= selected_char_kind ("ascii")) STOP 1
+ if (kind (s2) /= selected_char_kind ("default")) STOP 2
+ if (kind (s3) /= ascii) STOP 3
+ if (kind (s4) /= default) STOP 4
- if (selected_char_kind("ascii") /= 1) call abort
- if (selected_char_kind("default") /= 1) call abort
- if (selected_char_kind("defauLt") /= 1) call abort
- if (selected_char_kind("foo") /= -1) call abort
- if (selected_char_kind("asciiiii") /= -1) call abort
- if (selected_char_kind("default ") /= 1) call abort
+ if (selected_char_kind("ascii") /= 1) STOP 5
+ if (selected_char_kind("default") /= 1) STOP 6
+ if (selected_char_kind("defauLt") /= 1) STOP 7
+ if (selected_char_kind("foo") /= -1) STOP 8
+ if (selected_char_kind("asciiiii") /= -1) STOP 9
+ if (selected_char_kind("default ") /= 1) STOP 10
call test("ascii", 1)
call test("default", 1)
@@ -46,7 +46,7 @@
call test(default_"default ", 1)
call test(default_"default x", -1)
- if (kind (selected_char_kind ("")) /= kind(0)) call abort
+ if (kind (selected_char_kind ("")) /= kind(0)) STOP 11
end
subroutine test(s,i)
@@ -54,12 +54,12 @@ subroutine test(s,i)
integer i
call test2(s,i)
- if (selected_char_kind (s) /= i) call abort
+ if (selected_char_kind (s) /= i) STOP 12
end subroutine test
subroutine test2(s,i)
character(len=*,kind=selected_char_kind("default")) s
integer i
- if (selected_char_kind (s) /= i) call abort
+ if (selected_char_kind (s) /= i) STOP 13
end subroutine test2
diff --git a/gcc/testsuite/gfortran.dg/selected_char_kind_4.f90 b/gcc/testsuite/gfortran.dg/selected_char_kind_4.f90
index 046ddf0e74c..8dc7019e926 100644
--- a/gcc/testsuite/gfortran.dg/selected_char_kind_4.f90
+++ b/gcc/testsuite/gfortran.dg/selected_char_kind_4.f90
@@ -7,18 +7,18 @@
character(len=20) :: s
s = "ascii"
- if (selected_char_kind(s) /= selected_char_kind("ascii")) call abort
+ if (selected_char_kind(s) /= selected_char_kind("ascii")) STOP 1
s = "default"
- if (selected_char_kind(s) /= selected_char_kind("default")) call abort
+ if (selected_char_kind(s) /= selected_char_kind("default")) STOP 2
s = "iso_10646"
- if (selected_char_kind(s) /= selected_char_kind("iso_10646")) call abort
+ if (selected_char_kind(s) /= selected_char_kind("iso_10646")) STOP 3
s = ""
- if (selected_char_kind(s) /= selected_char_kind("")) call abort
+ if (selected_char_kind(s) /= selected_char_kind("")) STOP 4
s = "invalid"
- if (selected_char_kind(s) /= selected_char_kind("invalid")) call abort
+ if (selected_char_kind(s) /= selected_char_kind("invalid")) STOP 5
end
diff --git a/gcc/testsuite/gfortran.dg/selected_kind_1.f90 b/gcc/testsuite/gfortran.dg/selected_kind_1.f90
index 0c710546d4e..50524c5f5ed 100644
--- a/gcc/testsuite/gfortran.dg/selected_kind_1.f90
+++ b/gcc/testsuite/gfortran.dg/selected_kind_1.f90
@@ -3,14 +3,14 @@
! PR fortran/32968
program selected
- if (selected_int_kind (1) /= 1) call abort
- if (selected_int_kind (3) /= 2) call abort
- if (selected_int_kind (5) /= 4) call abort
- if (selected_int_kind (10) /= 8) call abort
- if (selected_real_kind (1) /= 4) call abort
- if (selected_real_kind (2) /= 4) call abort
- if (selected_real_kind (9) /= 8) call abort
- if (selected_real_kind (10) /= 8) call abort
+ if (selected_int_kind (1) /= 1) STOP 1
+ if (selected_int_kind (3) /= 2) STOP 2
+ if (selected_int_kind (5) /= 4) STOP 3
+ if (selected_int_kind (10) /= 8) STOP 4
+ if (selected_real_kind (1) /= 4) STOP 5
+ if (selected_real_kind (2) /= 4) STOP 6
+ if (selected_real_kind (9) /= 8) STOP 7
+ if (selected_real_kind (10) /= 8) STOP 8
end program selected
diff --git a/gcc/testsuite/gfortran.dg/selected_real_kind_2.f90 b/gcc/testsuite/gfortran.dg/selected_real_kind_2.f90
index cf73520f930..d2d38d46578 100644
--- a/gcc/testsuite/gfortran.dg/selected_real_kind_2.f90
+++ b/gcc/testsuite/gfortran.dg/selected_real_kind_2.f90
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2008 -fall-intrinsics" }
+! { dg-options "-std=f2008 " }
!
integer :: p, r, rdx
@@ -16,17 +16,17 @@ if (selected_real_kind(precision(0.0d0),range(0.0d0),radix(0.0d0)) /= kind(0.0d0
! Run-time version
rdx = 2
-if (selected_real_kind(radix=rdx) /= 4) call abort()
+if (selected_real_kind(radix=rdx) /= 4) STOP 1
rdx = 4
-if (selected_real_kind(radix=rdx) /= -5) call abort()
+if (selected_real_kind(radix=rdx) /= -5) STOP 2
rdx = radix(0.0)
p = precision(0.0)
r = range(0.0)
-if (selected_real_kind(p,r,rdx) /= kind(0.0)) call abort()
+if (selected_real_kind(p,r,rdx) /= kind(0.0)) STOP 3
rdx = radix(0.0d0)
p = precision(0.0d0)
r = range(0.0d0)
-if (selected_real_kind(p,r,rdx) /= kind(0.0d0)) call abort()
+if (selected_real_kind(p,r,rdx) /= kind(0.0d0)) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/shape_2.f90 b/gcc/testsuite/gfortran.dg/shape_2.f90
index 057cb4c8558..94faae40ac5 100644
--- a/gcc/testsuite/gfortran.dg/shape_2.f90
+++ b/gcc/testsuite/gfortran.dg/shape_2.f90
@@ -8,23 +8,23 @@ contains
integer, dimension (11:, -8:), target :: b
integer, dimension (:, :), pointer :: ptr
- if (lbound (b, 1) .ne. 11) call abort
- if (ubound (b, 1) .ne. 50) call abort
- if (lbound (b, 2) .ne. -8) call abort
- if (ubound (b, 2) .ne. 71) call abort
+ if (lbound (b, 1) .ne. 11) STOP 1
+ if (ubound (b, 1) .ne. 50) STOP 2
+ if (lbound (b, 2) .ne. -8) STOP 3
+ if (ubound (b, 2) .ne. 71) STOP 4
- if (lbound (b (:, :), 1) .ne. 1) call abort
- if (ubound (b (:, :), 1) .ne. 40) call abort
- if (lbound (b (:, :), 2) .ne. 1) call abort
- if (ubound (b (:, :), 2) .ne. 80) call abort
+ if (lbound (b (:, :), 1) .ne. 1) STOP 5
+ if (ubound (b (:, :), 1) .ne. 40) STOP 6
+ if (lbound (b (:, :), 2) .ne. 1) STOP 7
+ if (ubound (b (:, :), 2) .ne. 80) STOP 8
- if (lbound (b (20:30:3, 40), 1) .ne. 1) call abort
- if (ubound (b (20:30:3, 40), 1) .ne. 4) call abort
+ if (lbound (b (20:30:3, 40), 1) .ne. 1) STOP 9
+ if (ubound (b (20:30:3, 40), 1) .ne. 4) STOP 10
ptr => b
- if (lbound (ptr, 1) .ne. 11) call abort
- if (ubound (ptr, 1) .ne. 50) call abort
- if (lbound (ptr, 2) .ne. -8) call abort
- if (ubound (ptr, 2) .ne. 71) call abort
+ if (lbound (ptr, 1) .ne. 11) STOP 11
+ if (ubound (ptr, 1) .ne. 50) STOP 12
+ if (lbound (ptr, 2) .ne. -8) STOP 13
+ if (ubound (ptr, 2) .ne. 71) STOP 14
end subroutine test
end program main
diff --git a/gcc/testsuite/gfortran.dg/shape_4.f90 b/gcc/testsuite/gfortran.dg/shape_4.f90
index 31f3d78a4a7..ac79fa1a33c 100644
--- a/gcc/testsuite/gfortran.dg/shape_4.f90
+++ b/gcc/testsuite/gfortran.dg/shape_4.f90
@@ -7,7 +7,7 @@ program main
j = 1
i = 10
res = shape(a(1:1,i:j:1))
- if (res(1) /=1 .or. res(2) /= 0) call abort
+ if (res(1) /=1 .or. res(2) /= 0) STOP 1
res = shape(a(1:1,j:i:-1))
- if (res(1) /=1 .or. res(2) /= 0) call abort
+ if (res(1) /=1 .or. res(2) /= 0) STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/shape_5.f90 b/gcc/testsuite/gfortran.dg/shape_5.f90
index ed128bcd202..cb1c28e81d3 100644
--- a/gcc/testsuite/gfortran.dg/shape_5.f90
+++ b/gcc/testsuite/gfortran.dg/shape_5.f90
@@ -4,5 +4,5 @@
integer, dimension(:), pointer :: int1d_retrieved
allocate(int1d_retrieved(10))
- if (any(shape(int1d_retrieved) /= shape(INT1D))) call abort()
+ if (any(shape(int1d_retrieved) /= shape(INT1D))) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/shape_7.f90 b/gcc/testsuite/gfortran.dg/shape_7.f90
index 03f59511972..7b0bed7bd66 100644
--- a/gcc/testsuite/gfortran.dg/shape_7.f90
+++ b/gcc/testsuite/gfortran.dg/shape_7.f90
@@ -11,20 +11,20 @@ Program Main
Integer:: X(2,2)
Integer:: X2(7:11,8:9)
- if (size((X)) /= 4) call abort ()
- if (any (Shape((X)) /= [2,2])) call abort ()
- if (any (lbound((X)) /= [1,1])) call abort ()
- if (any (ubound((X)) /= [2,2])) call abort ()
+ if (size((X)) /= 4) STOP 1
+ if (any (Shape((X)) /= [2,2])) STOP 2
+ if (any (lbound((X)) /= [1,1])) STOP 3
+ if (any (ubound((X)) /= [2,2])) STOP 4
- if (size(X2) /= 10) call abort ()
- if (any (Shape(X2) /= [5,2])) call abort ()
- if (any (lbound(X2) /= [7,8])) call abort ()
- if (any (ubound(X2) /= [11,9])) call abort ()
+ if (size(X2) /= 10) STOP 5
+ if (any (Shape(X2) /= [5,2])) STOP 6
+ if (any (lbound(X2) /= [7,8])) STOP 7
+ if (any (ubound(X2) /= [11,9])) STOP 8
- if (size((X2)) /= 10) call abort ()
- if (any (Shape((X2)) /= [5,2])) call abort ()
- if (any (lbound((X2)) /= [1,1])) call abort ()
- if (any (ubound((X2)) /= [5,2])) call abort ()
+ if (size((X2)) /= 10) STOP 9
+ if (any (Shape((X2)) /= [5,2])) STOP 10
+ if (any (lbound((X2)) /= [1,1])) STOP 11
+ if (any (ubound((X2)) /= [5,2])) STOP 12
End Program Main
! { dg-final { scan-tree-dump-times "abort" 0 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/shape_8.f90 b/gcc/testsuite/gfortran.dg/shape_8.f90
index 51c6e552b51..3b716db2e5e 100644
--- a/gcc/testsuite/gfortran.dg/shape_8.f90
+++ b/gcc/testsuite/gfortran.dg/shape_8.f90
@@ -7,9 +7,9 @@ program test
real, allocatable :: x(:,:)
allocate(x(2,5))
- if (any(shape(x) /= [ 2, 5 ])) call abort
- if (any(shape(x,kind=1) /= [ 2, 5 ])) call abort
- if (any(shape(x,kind=2) /= [ 2, 5 ])) call abort
- if (any(shape(x,kind=4) /= [ 2, 5 ])) call abort
- if (any(shape(x,kind=8) /= [ 2, 5 ])) call abort
+ if (any(shape(x) /= [ 2, 5 ])) STOP 1
+ if (any(shape(x,kind=1) /= [ 2, 5 ])) STOP 2
+ if (any(shape(x,kind=2) /= [ 2, 5 ])) STOP 3
+ if (any(shape(x,kind=4) /= [ 2, 5 ])) STOP 4
+ if (any(shape(x,kind=8) /= [ 2, 5 ])) STOP 5
end
diff --git a/gcc/testsuite/gfortran.dg/shape_9.f90 b/gcc/testsuite/gfortran.dg/shape_9.f90
index 6d33f976cb8..8deb3b2a999 100644
--- a/gcc/testsuite/gfortran.dg/shape_9.f90
+++ b/gcc/testsuite/gfortran.dg/shape_9.f90
@@ -8,9 +8,9 @@ program test
real, allocatable :: x(:,:)
allocate(x(2,5))
- if (any(shape(x) /= [ 2, 5 ])) call abort
- if (any(shape(x,kind=1) /= [ 2, 5 ])) call abort
- if (any(shape(x,kind=2) /= [ 2, 5 ])) call abort
- if (any(shape(x,kind=4) /= [ 2, 5 ])) call abort
- if (any(shape(x,kind=8) /= [ 2, 5 ])) call abort
+ if (any(shape(x) /= [ 2, 5 ])) STOP 1
+ if (any(shape(x,kind=1) /= [ 2, 5 ])) STOP 2
+ if (any(shape(x,kind=2) /= [ 2, 5 ])) STOP 3
+ if (any(shape(x,kind=4) /= [ 2, 5 ])) STOP 4
+ if (any(shape(x,kind=8) /= [ 2, 5 ])) STOP 5
end program test
diff --git a/gcc/testsuite/gfortran.dg/shift-kind_2.f90 b/gcc/testsuite/gfortran.dg/shift-kind_2.f90
index 30e32639820..3d1bdef3963 100644
--- a/gcc/testsuite/gfortran.dg/shift-kind_2.f90
+++ b/gcc/testsuite/gfortran.dg/shift-kind_2.f90
@@ -21,12 +21,12 @@ program main
d2 = 1
d4 = 1
d8 = 1
- if (any(eoshift(r,shift=s1,dim=d1) /= r1)) call abort
- if (any(eoshift(r,shift=s2,dim=d2) /= r1)) call abort
- if (any(eoshift(r,shift=s4,dim=d4) /= r1)) call abort
- if (any(eoshift(r,shift=s8,dim=d8) /= r1)) call abort
- if (any(cshift(r,shift=s1,dim=d1) /= r2)) call abort
- if (any(cshift(r,shift=s2,dim=d2) /= r2)) call abort
- if (any(cshift(r,shift=s4,dim=d4) /= r2)) call abort
- if (any(cshift(r,shift=s8,dim=d8) /= r2)) call abort
+ if (any(eoshift(r,shift=s1,dim=d1) /= r1)) STOP 1
+ if (any(eoshift(r,shift=s2,dim=d2) /= r1)) STOP 2
+ if (any(eoshift(r,shift=s4,dim=d4) /= r1)) STOP 3
+ if (any(eoshift(r,shift=s8,dim=d8) /= r1)) STOP 4
+ if (any(cshift(r,shift=s1,dim=d1) /= r2)) STOP 5
+ if (any(cshift(r,shift=s2,dim=d2) /= r2)) STOP 6
+ if (any(cshift(r,shift=s4,dim=d4) /= r2)) STOP 7
+ if (any(cshift(r,shift=s8,dim=d8) /= r2)) STOP 8
end program main
diff --git a/gcc/testsuite/gfortran.dg/shiftalr_1.F90 b/gcc/testsuite/gfortran.dg/shiftalr_1.F90
index 9f2707bd96d..b5cae15d996 100644
--- a/gcc/testsuite/gfortran.dg/shiftalr_1.F90
+++ b/gcc/testsuite/gfortran.dg/shiftalr_1.F90
@@ -29,16 +29,16 @@
end interface
#define CHECK(I,SHIFT,RESA,RESL,RESR) \
- if (shifta(I,SHIFT) /= RESA) call abort ; \
- if (shiftr(I,SHIFT) /= RESR) call abort ; \
- if (shiftl(I,SHIFT) /= RESL) call abort ; \
- if (run_shifta(I,SHIFT) /= RESA) call abort ; \
- if (run_shiftr(I,SHIFT) /= RESR) call abort ; \
- if (run_shiftl(I,SHIFT) /= RESL) call abort ; \
- if (ishft(I,SHIFT) /= RESL) call abort ; \
- if (ishft(I,-SHIFT) /= RESR) call abort ; \
- if (run_ishft(I,SHIFT) /= RESL) call abort ; \
- if (run_ishft(I,-SHIFT) /= RESR) call abort
+ if (shifta(I,SHIFT) /= RESA) STOP 1; \
+ if (shiftr(I,SHIFT) /= RESR) STOP 2; \
+ if (shiftl(I,SHIFT) /= RESL) STOP 3; \
+ if (run_shifta(I,SHIFT) /= RESA) STOP 4; \
+ if (run_shiftr(I,SHIFT) /= RESR) STOP 5; \
+ if (run_shiftl(I,SHIFT) /= RESL) STOP 6; \
+ if (ishft(I,SHIFT) /= RESL) STOP 7; \
+ if (ishft(I,-SHIFT) /= RESR) STOP 8; \
+ if (run_ishft(I,SHIFT) /= RESL) STOP 9; \
+ if (run_ishft(I,-SHIFT) /= RESR) STOP 10
CHECK(0_1,0,0_1,0_1,0_1)
CHECK(11_1,0,11_1,11_1,11_1)
diff --git a/gcc/testsuite/gfortran.dg/shiftalr_2.F90 b/gcc/testsuite/gfortran.dg/shiftalr_2.F90
index 0a34af5ec65..8336a56aed4 100644
--- a/gcc/testsuite/gfortran.dg/shiftalr_2.F90
+++ b/gcc/testsuite/gfortran.dg/shiftalr_2.F90
@@ -7,16 +7,16 @@
implicit none
#define CHECK(I,SHIFT,RESA,RESL,RESR) \
- if (shifta(I,SHIFT) /= RESA) call abort ; \
- if (shiftr(I,SHIFT) /= RESR) call abort ; \
- if (shiftl(I,SHIFT) /= RESL) call abort ; \
- if (run_shifta(I,SHIFT) /= RESA) call abort ; \
- if (run_shiftr(I,SHIFT) /= RESR) call abort ; \
- if (run_shiftl(I,SHIFT) /= RESL) call abort ; \
- if (ishft(I,SHIFT) /= RESL) call abort ; \
- if (ishft(I,-SHIFT) /= RESR) call abort ; \
- if (run_ishft(I,SHIFT) /= RESL) call abort ; \
- if (run_ishft(I,-SHIFT) /= RESR) call abort
+ if (shifta(I,SHIFT) /= RESA) STOP 1; \
+ if (shiftr(I,SHIFT) /= RESR) STOP 2; \
+ if (shiftl(I,SHIFT) /= RESL) STOP 3; \
+ if (run_shifta(I,SHIFT) /= RESA) STOP 4; \
+ if (run_shiftr(I,SHIFT) /= RESR) STOP 5; \
+ if (run_shiftl(I,SHIFT) /= RESL) STOP 6; \
+ if (ishft(I,SHIFT) /= RESL) STOP 7; \
+ if (ishft(I,-SHIFT) /= RESR) STOP 8; \
+ if (run_ishft(I,SHIFT) /= RESL) STOP 9; \
+ if (run_ishft(I,-SHIFT) /= RESR) STOP 10
CHECK(0_16,0,0_16,0_16,0_16)
CHECK(11_16,0,11_16,11_16,11_16)
diff --git a/gcc/testsuite/gfortran.dg/simpleif_1.f90 b/gcc/testsuite/gfortran.dg/simpleif_1.f90
index ee432ba9079..c26bbd26283 100644
--- a/gcc/testsuite/gfortran.dg/simpleif_1.f90
+++ b/gcc/testsuite/gfortran.dg/simpleif_1.f90
@@ -5,12 +5,12 @@ DIMENSION ia(4,4)
logical,dimension(4,4) :: index
if (.true.) forall (i = 1:4, j = 1:4) ia(i,j) = 1
-if (any (ia.ne.1)) CALL abort()
+if (any (ia.ne.1)) STOP 1
index(:,:)=.false.
index(2,3) = .true.
if (.true.) where (index) ia = 2
-if (ia(2,3).ne.2) call abort()
+if (ia(2,3).ne.2) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/simplify_argN_1.f90 b/gcc/testsuite/gfortran.dg/simplify_argN_1.f90
index 6cc64715c6b..58fef33c444 100644
--- a/gcc/testsuite/gfortran.dg/simplify_argN_1.f90
+++ b/gcc/testsuite/gfortran.dg/simplify_argN_1.f90
@@ -19,7 +19,7 @@ END MODULE MODS
integer, dimension(N) :: Y = B
! Check the simplifed expressions against the library
- if (any (ISHFTC(3, Y, 5) /= C)) call abort ()
- if (any (ISHFTC(X, 3, 5) /= D)) call abort ()
- if (any (ISHFTC(X, Y, 5) /= E)) call abort ()
+ if (any (ISHFTC(3, Y, 5) /= C)) STOP 1
+ if (any (ISHFTC(X, 3, 5) /= D)) STOP 2
+ if (any (ISHFTC(X, Y, 5) /= E)) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/simplify_cshift_1.f90 b/gcc/testsuite/gfortran.dg/simplify_cshift_1.f90
index 4bc8374eea7..5e4be799151 100644
--- a/gcc/testsuite/gfortran.dg/simplify_cshift_1.f90
+++ b/gcc/testsuite/gfortran.dg/simplify_cshift_1.f90
@@ -17,30 +17,30 @@ program foo
b = cshift(a, -2)
v = cshift(c, -2)
- if (any(b /= v)) call abort
+ if (any(b /= v)) STOP 1
b = cshift(a, 2)
v = cshift(c, 2)
- if (any(b /= v)) call abort
+ if (any(b /= v)) STOP 2
! Special cases shift = 0, size(a), -size(a)
b = cshift([1, 2, 3, 4, 5], 0)
- if (any(b /= a)) call abort
+ if (any(b /= a)) STOP 3
b = cshift([1, 2, 3, 4, 5], size(a))
- if (any(b /= a)) call abort
+ if (any(b /= a)) STOP 4
b = cshift([1, 2, 3, 4, 5], -size(a))
- if (any(b /= a)) call abort
+ if (any(b /= a)) STOP 5
! simplification of array arg.
b = cshift(2 * a, 0)
- if (any(b /= 2 * a)) call abort
+ if (any(b /= 2 * a)) STOP 6
! An array of derived types works too.
e = [t(1), t(2), t(3), t(4), t(5)]
e = cshift(e, 3)
q = cshift(d, 3)
do i = 1, 5
- if (e(i)%i /= q(i)%i) call abort
+ if (e(i)%i /= q(i)%i) STOP 7
end do
end program foo
diff --git a/gcc/testsuite/gfortran.dg/simplify_cshift_4.f90 b/gcc/testsuite/gfortran.dg/simplify_cshift_4.f90
index bbbe2a53941..2c7842fa3f3 100644
--- a/gcc/testsuite/gfortran.dg/simplify_cshift_4.f90
+++ b/gcc/testsuite/gfortran.dg/simplify_cshift_4.f90
@@ -19,19 +19,19 @@ program main
integer, parameter, dimension(3,4,5) :: c3 = cshift(c,shift=sh3,dim=3)
b = a
- if (any(cshift(a,1) /= cshift(b,1))) call abort
- if (any(cshift(a,2) /= cshift(b,2))) call abort
- if (any(cshift(a,1,dim=2) /= cshift(b,1,dim=2))) call abort
+ if (any(cshift(a,1) /= cshift(b,1))) STOP 1
+ if (any(cshift(a,2) /= cshift(b,2))) STOP 2
+ if (any(cshift(a,1,dim=2) /= cshift(b,1,dim=2))) STOP 3
d = c
- if (any(cshift(c,1) /= cshift(d,1))) call abort
- if (any(cshift(c,2) /= cshift(d,2))) call abort
- if (any(cshift(c,3) /= cshift(d,3))) call abort
+ if (any(cshift(c,1) /= cshift(d,1))) STOP 4
+ if (any(cshift(c,2) /= cshift(d,2))) STOP 5
+ if (any(cshift(c,3) /= cshift(d,3))) STOP 6
- if (any(cshift(c,1,dim=2) /= cshift(d,1,dim=2))) call abort
- if (any(cshift(c,2,dim=2) /= cshift(d,2,dim=2))) call abort
- if (any(cshift(c,3,dim=3) /= cshift(d,3,dim=3))) call abort
+ if (any(cshift(c,1,dim=2) /= cshift(d,1,dim=2))) STOP 7
+ if (any(cshift(c,2,dim=2) /= cshift(d,2,dim=2))) STOP 8
+ if (any(cshift(c,3,dim=3) /= cshift(d,3,dim=3))) STOP 9
- if (any(cshift(d,shift=sh1,dim=1) /= c1)) call abort
- if (any(cshift(d,shift=sh2,dim=2) /= c2)) call abort
- if (any(cshift(d,shift=sh3,dim=3) /= c3)) call abort
+ if (any(cshift(d,shift=sh1,dim=1) /= c1)) STOP 10
+ if (any(cshift(d,shift=sh2,dim=2) /= c2)) STOP 11
+ if (any(cshift(d,shift=sh3,dim=3) /= c3)) STOP 12
end program main
diff --git a/gcc/testsuite/gfortran.dg/simplify_eoshift_1.f90 b/gcc/testsuite/gfortran.dg/simplify_eoshift_1.f90
index 29521b22eed..f69c21db40e 100644
--- a/gcc/testsuite/gfortran.dg/simplify_eoshift_1.f90
+++ b/gcc/testsuite/gfortran.dg/simplify_eoshift_1.f90
@@ -40,44 +40,44 @@ program main
n2 = 2
n3 = 3
- if (any(b1 /= a)) call abort
- if (any(b2 /= [2, 3, 0])) call abort
- if (any(b3 /= [0, 0, 1])) call abort
- if (any(b4 /= 42)) call abort
- if (any(eoshift(c,shift=1,dim=n1,boundary=33) /= b5)) call abort
- if (any(eoshift(c,shift=2,dim=1) /= b6)) call abort
- if (any(eoshift(c,shift=-1,dim=2) /= b7)) call abort
- if (any(eoshift(c,shift=-1,dim=n2,boundary=[-1,-2,-3]) /= b8)) call abort
- if (any(eoshift(c,shift=-1) /= b9)) call abort
- if (any(eoshift(r,shift=1,dim=n3) /= q1)) call abort
- if (any(b10 /= reshape([ 0, 1, 2, 4, 5, 6, 8, 9, 0],shape(b10)))) call abort
- if (any(b11 /= reshape([42, 42, 6, 42, 2, 9, 1, 5, 42],shape(b11)))) call abort
- if (any(b12 /= reshape([ -3, 1, 2, -7, -7, 4, 7, 8, 9],shape(b11)))) call abort
+ if (any(b1 /= a)) STOP 1
+ if (any(b2 /= [2, 3, 0])) STOP 2
+ if (any(b3 /= [0, 0, 1])) STOP 3
+ if (any(b4 /= 42)) STOP 4
+ if (any(eoshift(c,shift=1,dim=n1,boundary=33) /= b5)) STOP 5
+ if (any(eoshift(c,shift=2,dim=1) /= b6)) STOP 6
+ if (any(eoshift(c,shift=-1,dim=2) /= b7)) STOP 7
+ if (any(eoshift(c,shift=-1,dim=n2,boundary=[-1,-2,-3]) /= b8)) STOP 8
+ if (any(eoshift(c,shift=-1) /= b9)) STOP 9
+ if (any(eoshift(r,shift=1,dim=n3) /= q1)) STOP 10
+ if (any(b10 /= reshape([ 0, 1, 2, 4, 5, 6, 8, 9, 0],shape(b10)))) STOP 11
+ if (any(b11 /= reshape([42, 42, 6, 42, 2, 9, 1, 5, 42],shape(b11)))) STOP 12
+ if (any(b12 /= reshape([ -3, 1, 2, -7, -7, 4, 7, 8, 9],shape(b11)))) STOP 13
if (any(q1 /= reshape([169.,196.,225.,256.,289.,324.,361.,400.,441.,484.,529.,576.,625.,&
676.,729.,784.,841.,900.,961.,1024.,1089.,1156.,1225.,1296.,1369.,1444.,1521.,&
1600.,1681.,1764.,1849.,1936.,2025.,2116.,2209.,2304.,2401.,2500.,2601.,2704.,&
2809.,2916.,3025.,3136.,3249.,3364.,3481.,3600.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.,0.],&
- shape(q1)))) call abort
+ shape(q1)))) STOP 14
if (any(q2 /= reshape([0.,0.,9.,1600.,841.,0.,0.,0.,2025.,484.,0.,0.,1.,0.,225.,2704.,&
1681.,0.,0.,0.,3249.,1156.,121.,0.,169.,4.,729.,0.,2809.,0.,0.,0.,0.,2116.,&
529.,0.,625.,196.,1521.,0.,0.,0.,0.,0.,0.,3364.,1225.,0.,1369.,676.,2601.,&
- 0.,0.,0.,0.,0.,0.,0.,2209.,0.],shape(q2)))) call abort
+ 0.,0.,0.,0.,0.,0.,0.,2209.,0.],shape(q2)))) STOP 15
if (any(q3 /= reshape([-1.,-2.,9.,1600.,841.,-6.,-7.,-8.,2025.,484.,-11.,-12.,1.,&
-2.,225.,2704.,1681.,-6.,-7.,-8.,3249.,1156.,121.,-12.,169.,4.,729.,-4.,&
2809.,-6.,-7.,-8.,-9.,2116.,529.,-12.,625.,196.,1521.,-4.,-5.,-6.,-7.,-8.,&
-9.,3364.,1225.,-12.,1369.,676.,2601.,-4.,-5.,-6.,-7.,-8.,-9.,-10.,2209.,-12.],&
- shape(q3)))) call abort
+ shape(q3)))) STOP 16
if (any(f1 /= reshape(["bbb"," ","ddd"," ","fff"," ","hhh"," ","jjj"," ","lll"," ",&
"nnn"," ","ppp"," ","rrr"," ","ttt"," ","vvv"," ","xxx"," "], &
- shape(f1)))) call abort
+ shape(f1)))) STOP 17
if (any(f2 /= reshape(["AAA","BBB","aaa","bbb","ccc","ddd","CCC","DDD","ggg","hhh","iii","jjj",&
- "EEE","FFF","mmm","nnn","ooo","ppp","GGG","HHH","sss","ttt","uuu","vvv"],shape(f2)))) call abort
+ "EEE","FFF","mmm","nnn","ooo","ppp","GGG","HHH","sss","ttt","uuu","vvv"],shape(f2)))) STOP 18
e2 = e
- if (any (f2 /= eoshift(e2,dim=2,shift=-1,boundary=bnd2))) call abort
+ if (any (f2 /= eoshift(e2,dim=2,shift=-1,boundary=bnd2))) STOP 19
if (any (f3 /= reshape (["ggg"," ","ccc","jjj","qqq"," ","mmm"," ","iii","ppp",&
"www","fff","sss","bbb","ooo","vvv"," ","lll"," ","hhh","uuu",&
- " "," ","rrr"], shape(f3)))) call abort
- if (size(empty) /=0) call abort
- if (any(t /= (0.0_8, 0.0_8))) call abort
+ " "," ","rrr"], shape(f3)))) STOP 20
+ if (size(empty) /=0) STOP 21
+ if (any(t /= (0.0_8, 0.0_8))) STOP 22
end program main
diff --git a/gcc/testsuite/gfortran.dg/simplify_modulo.f90 b/gcc/testsuite/gfortran.dg/simplify_modulo.f90
index 550a3adb9c7..4f2ad911297 100644
--- a/gcc/testsuite/gfortran.dg/simplify_modulo.f90
+++ b/gcc/testsuite/gfortran.dg/simplify_modulo.f90
@@ -1,5 +1,5 @@
! { dg-do run }
-if (modulo (-8., -5.) .ne. -3.) call abort ()
+if (modulo (-8., -5.) .ne. -3.) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/single_char_string.f90 b/gcc/testsuite/gfortran.dg/single_char_string.f90
index cb56dc2afae..bffb977477d 100644
--- a/gcc/testsuite/gfortran.dg/single_char_string.f90
+++ b/gcc/testsuite/gfortran.dg/single_char_string.f90
@@ -10,21 +10,21 @@ integer i
b = 'a'
a = b
-if (a .ne. 'a') call abort()
-if (a .ne. b) call abort()
+if (a .ne. 'a') STOP 1
+if (a .ne. b) STOP 2
c (3:3) = 'a'
-if (c (3:3) .ne. b) call abort ()
-if (c (3:3) .ne. 'a') call abort ()
-if (LGT (a, c (3:3))) call abort ()
-if (LGT (a, 'a')) call abort ()
+if (c (3:3) .ne. b) STOP 3
+if (c (3:3) .ne. 'a') STOP 4
+if (LGT (a, c (3:3))) STOP 5
+if (LGT (a, 'a')) STOP 6
i = 3
c (i:i) = 'a'
-if (c (i:i) .ne. b) call abort ()
-if (c (i:i) .ne. 'a') call abort ()
-if (LGT (a, c (i:i))) call abort ()
+if (c (i:i) .ne. b) STOP 7
+if (c (i:i) .ne. 'a') STOP 8
+if (LGT (a, c (i:i))) STOP 9
-if (a .gt. char (255)) call abort ()
+if (a .gt. char (255)) STOP 10
end
! There should not be _gfortran_compare_string and _gfortran_copy_string in
diff --git a/gcc/testsuite/gfortran.dg/size_dim.f90 b/gcc/testsuite/gfortran.dg/size_dim.f90
index 9d3938ed001..79e9b369d0d 100644
--- a/gcc/testsuite/gfortran.dg/size_dim.f90
+++ b/gcc/testsuite/gfortran.dg/size_dim.f90
@@ -10,6 +10,6 @@ program main
contains
subroutine S1(a)
integer :: a(*)
- if(size(a(1:10),1) /= 10) call abort()
+ if(size(a(1:10),1) /= 10) STOP 1
end subroutine S1
end program main
diff --git a/gcc/testsuite/gfortran.dg/size_optional_dim_1.f90 b/gcc/testsuite/gfortran.dg/size_optional_dim_1.f90
index de5a739f56b..c6e8f761538 100644
--- a/gcc/testsuite/gfortran.dg/size_optional_dim_1.f90
+++ b/gcc/testsuite/gfortran.dg/size_optional_dim_1.f90
@@ -7,9 +7,9 @@ program main
integer :: ires
call checkv (ires, a)
- if (ires /= 6) call abort
+ if (ires /= 6) STOP 1
call checkv (ires, a, 1)
- if (ires /= 2) call abort
+ if (ires /= 2) STOP 2
contains
subroutine checkv(ires,a1,opt1)
integer, intent(out) :: ires
diff --git a/gcc/testsuite/gfortran.dg/sizeof.f90 b/gcc/testsuite/gfortran.dg/sizeof.f90
index fbe6b868fb0..a9d844a89fa 100644
--- a/gcc/testsuite/gfortran.dg/sizeof.f90
+++ b/gcc/testsuite/gfortran.dg/sizeof.f90
@@ -7,12 +7,12 @@ subroutine check_int (j)
logical :: l(6)
integer(8) :: jb(5,4)
- if (sizeof (jb) /= 2*sizeof (ib)) call abort
+ if (sizeof (jb) /= 2*sizeof (ib)) STOP 1
if (sizeof(j) == 4) then
- if (sizeof (j) /= sizeof (i)) call abort
+ if (sizeof (j) /= sizeof (i)) STOP 2
else
- if (sizeof (j) /= 2 * sizeof (i)) call abort
+ if (sizeof (j) /= 2 * sizeof (i)) STOP 3
end if
ipa=>ib(2:3,1)
@@ -20,9 +20,9 @@ subroutine check_int (j)
l = (/ sizeof(i) == 4, sizeof(ia) == 20, sizeof(ib) == 80, &
sizeof(ip) == 4, sizeof(ipa) == 8, sizeof(ib(1:5:2,3)) == 12 /)
- if (any(.not.l)) call abort
+ if (any(.not.l)) STOP 4
- if (sizeof(l) /= 6*sizeof(l(1))) call abort
+ if (sizeof(l) /= 6*sizeof(l(1))) STOP 5
end subroutine check_int
subroutine check_real (x, y)
@@ -33,14 +33,14 @@ subroutine check_real (x, y)
double precision :: d(5,5)
complex(kind=4) :: c(5)
- if (sizeof (y) /= 5*sizeof (x)) call abort
+ if (sizeof (y) /= 5*sizeof (x)) STOP 6
- if (sizeof (r) /= 8000*4) call abort
+ if (sizeof (r) /= 8000*4) STOP 7
rp => r(5,2:10,1:5)
- if (sizeof (rp) /= 45*4) call abort
+ if (sizeof (rp) /= 45*4) STOP 8
rp => r(1:5,1:5,1)
- if (sizeof (d) /= 2*sizeof (rp)) call abort
- if (sizeof (c(1)) /= 2*sizeof(r(1,1,1))) call abort
+ if (sizeof (d) /= 2*sizeof (rp)) STOP 9
+ if (sizeof (c(1)) /= 2*sizeof(r(1,1,1))) STOP 10
end subroutine check_real
subroutine check_derived ()
@@ -68,8 +68,8 @@ subroutine check_derived ()
real :: r(200), s(500)
type(all) :: v
- if (sizeof(a) /= sizeof(i)) call abort
- if (sizeof(oof) /= sizeof(rab)) call abort
+ if (sizeof(a) /= sizeof(i)) STOP 11
+ if (sizeof(oof) /= sizeof(rab)) STOP 12
allocate (v%r(500))
sizev500 = sizeof (v)
size_500 = sizeof (v%r)
@@ -79,7 +79,7 @@ subroutine check_derived ()
size_200 = sizeof (v%r)
deallocate (v%r)
if (size_500 - size_200 /= sizeof(s) - sizeof(r) .or. sizev500 /= sizev200) &
- call abort
+ STOP 13
end subroutine check_derived
call check_int (1)
diff --git a/gcc/testsuite/gfortran.dg/sizeof_4.f90 b/gcc/testsuite/gfortran.dg/sizeof_4.f90
index d4d8baa8d04..8c934086844 100644
--- a/gcc/testsuite/gfortran.dg/sizeof_4.f90
+++ b/gcc/testsuite/gfortran.dg/sizeof_4.f90
@@ -41,55 +41,55 @@ contains
subroutine dim0(x, expected_size)
integer :: x
integer, value :: expected_size
- if (sizeof(x) /= expected_size) call abort()
- if (storage_size(x)/8 /= expected_size) call abort()
+ if (sizeof(x) /= expected_size) STOP 1
+ if (storage_size(x)/8 /= expected_size) STOP 2
end
subroutine dim1(x, expected_size)
integer, dimension(:) :: x
integer, value :: expected_size
- if (sizeof(x) /= expected_size) call abort()
- if (storage_size(x)/8*size(x) /= expected_size) call abort()
+ if (sizeof(x) /= expected_size) STOP 3
+ if (storage_size(x)/8*size(x) /= expected_size) STOP 4
end
subroutine dimd(x, expected_size)
integer, dimension(..) :: x
integer, value :: expected_size
- if (sizeof(x) /= expected_size) call abort()
- if (storage_size(x)/8*size(x) /= expected_size) call abort()
+ if (sizeof(x) /= expected_size) STOP 5
+ if (storage_size(x)/8*size(x) /= expected_size) STOP 6
end
subroutine cdim0(x, expected_size)
class(*) :: x
integer, value :: expected_size
- if (sizeof(x) /= expected_size) call abort()
- if (storage_size(x)/8 /= expected_size) call abort()
+ if (sizeof(x) /= expected_size) STOP 7
+ if (storage_size(x)/8 /= expected_size) STOP 8
end
subroutine cdim1(x, expected_size)
class(*), dimension(:) :: x
integer, value :: expected_size
- if (sizeof(x) /= expected_size) call abort()
- if (storage_size(x)/8*size(x) /= expected_size) call abort()
+ if (sizeof(x) /= expected_size) STOP 9
+ if (storage_size(x)/8*size(x) /= expected_size) STOP 10
end
subroutine cdimd(x, expected_size)
class(*), dimension(..) :: x
integer, value :: expected_size
- if (sizeof(x) /= expected_size) call abort()
- if (storage_size(x)/8*size(x) /= expected_size) call abort()
+ if (sizeof(x) /= expected_size) STOP 11
+ if (storage_size(x)/8*size(x) /= expected_size) STOP 12
end
subroutine tdim1(x, expected_size)
type(*), dimension(:) :: x
integer, value :: expected_size
- if (sizeof(x) /= expected_size) call abort()
+ if (sizeof(x) /= expected_size) STOP 13
end
subroutine tdimd(x, expected_size)
type(*), dimension(..) :: x
integer, value :: expected_size
- if (sizeof(x) /= expected_size) call abort()
+ if (sizeof(x) /= expected_size) STOP 14
end
end
diff --git a/gcc/testsuite/gfortran.dg/slash_1.f90 b/gcc/testsuite/gfortran.dg/slash_1.f90
index d4a59a31acf..854d5d578f6 100644
--- a/gcc/testsuite/gfortran.dg/slash_1.f90
+++ b/gcc/testsuite/gfortran.dg/slash_1.f90
@@ -5,9 +5,9 @@
write (10,'(A,2/,A)') '12', '17'
rewind (10)
read (10,'(I2)') i
- if (i /= 12) call abort
+ if (i /= 12) STOP 1
read (10,'(I2)') i
- if (i /= 0) call abort
+ if (i /= 0) STOP 2
read (10,'(I2)') i
- if (i /= 17) call abort
+ if (i /= 17) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/sms-1.f90 b/gcc/testsuite/gfortran.dg/sms-1.f90
index 754cb8caeb1..45e4c363aff 100644
--- a/gcc/testsuite/gfortran.dg/sms-1.f90
+++ b/gcc/testsuite/gfortran.dg/sms-1.f90
@@ -20,10 +20,10 @@ contains
j = 1
do i = l, u, step
- if (a (j) .ne. i) call abort
+ if (a (j) .ne. i) STOP 1
j = j + 1
end do
- if (size (a, 1) .ne. j - 1) call abort
+ if (size (a, 1) .ne. j - 1) STOP 2
end subroutine test
end program main
diff --git a/gcc/testsuite/gfortran.dg/sms-2.f90 b/gcc/testsuite/gfortran.dg/sms-2.f90
index 80ab9bf4915..d7aa6ecf6d5 100644
--- a/gcc/testsuite/gfortran.dg/sms-2.f90
+++ b/gcc/testsuite/gfortran.dg/sms-2.f90
@@ -13,7 +13,7 @@ program foo
a(i, i, i, i) = -5
end forall
- if (sum (a) .ne. 2541.0) call abort ()
+ if (sum (a) .ne. 2541.0) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/spec_expr_7.f90 b/gcc/testsuite/gfortran.dg/spec_expr_7.f90
index 0680d1207a8..c710f3b2611 100644
--- a/gcc/testsuite/gfortran.dg/spec_expr_7.f90
+++ b/gcc/testsuite/gfortran.dg/spec_expr_7.f90
@@ -28,7 +28,7 @@ end module
program testspecexpr
use recur
implicit none
- if (usef(1) /= '*') call abort()
- if (usef(2) /= '**') call abort()
- if (usef(3) /= '******') call abort()
+ if (usef(1) /= '*') STOP 1
+ if (usef(2) /= '**') STOP 2
+ if (usef(3) /= '******') STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/specifics_1.f90 b/gcc/testsuite/gfortran.dg/specifics_1.f90
index 8970607db0c..66b20a38cb1 100644
--- a/gcc/testsuite/gfortran.dg/specifics_1.f90
+++ b/gcc/testsuite/gfortran.dg/specifics_1.f90
@@ -12,7 +12,7 @@ subroutine test_c(fn, val, res)
complex fn
complex val, res
- if (diff(fn(val),res)) call abort
+ if (diff(fn(val),res)) STOP 1
contains
function diff(a,b)
complex a,b
@@ -25,7 +25,7 @@ subroutine test_z(fn, val, res)
double complex fn
double complex val, res
- if (diff(fn(val),res)) call abort
+ if (diff(fn(val),res)) STOP 2
contains
function diff(a,b)
double complex a,b
@@ -38,7 +38,7 @@ subroutine test_cabs(fn, val, res)
real fn, res
complex val
- if (diff(fn(val),res)) call abort
+ if (diff(fn(val),res)) STOP 3
contains
function diff(a,b)
real a,b
@@ -51,7 +51,7 @@ subroutine test_cdabs(fn, val, res)
double precision fn, res
double complex val
- if (diff(fn(val),res)) call abort
+ if (diff(fn(val),res)) STOP 4
contains
function diff(a,b)
double precision a,b
@@ -64,7 +64,7 @@ subroutine test_r(fn, val, res)
real fn
real val, res
- if (diff(fn(val), res)) call abort
+ if (diff(fn(val), res)) STOP 5
contains
function diff(a, b)
real a, b
@@ -77,7 +77,7 @@ subroutine test_d(fn, val, res)
double precision fn
double precision val, res
- if (diff(fn(val), res)) call abort
+ if (diff(fn(val), res)) STOP 6
contains
function diff(a, b)
double precision a, b
@@ -90,7 +90,7 @@ subroutine test_r2(fn, val1, val2, res)
real fn
real val1, val2, res
- if (diff(fn(val1, val2), res)) call abort
+ if (diff(fn(val1, val2), res)) STOP 7
contains
function diff(a, b)
real a, b
@@ -103,7 +103,7 @@ subroutine test_d2(fn, val1, val2, res)
double precision fn
double precision val1, val2, res
- if (diff(fn(val1, val2), res)) call abort
+ if (diff(fn(val1, val2), res)) STOP 8
contains
function diff(a, b)
double precision a, b
@@ -114,41 +114,41 @@ end subroutine
subroutine test_dprod(fn)
double precision fn
- if (abs (fn (2.0, 3.0) - 6d0) .gt. 0.00001) call abort
+ if (abs (fn (2.0, 3.0) - 6d0) .gt. 0.00001) STOP 9
end subroutine
subroutine test_nint(fn,val,res)
integer fn, res
real val
- if (res .ne. fn(val)) call abort
+ if (res .ne. fn(val)) STOP 10
end subroutine
subroutine test_idnint(fn,val,res)
integer fn, res
double precision val
- if (res .ne. fn(val)) call abort
+ if (res .ne. fn(val)) STOP 11
end subroutine
subroutine test_idim(fn,val1,val2,res)
integer fn, res, val1, val2
- if (res .ne. fn(val1,val2)) call abort
+ if (res .ne. fn(val1,val2)) STOP 12
end subroutine
subroutine test_iabs(fn,val,res)
integer fn, res, val
- if (res .ne. fn(val)) call abort
+ if (res .ne. fn(val)) STOP 13
end subroutine
subroutine test_len(fn,val,res)
integer fn, res
character(len=*) val
- if (res .ne. fn(val)) call abort
+ if (res .ne. fn(val)) STOP 14
end subroutine
subroutine test_index(fn,val1,val2,res)
integer fn, res
character(len=*) val1, val2
- if (fn(val1,val2) .ne. res) call abort
+ if (fn(val1,val2) .ne. res) STOP 15
end subroutine
program specifics
diff --git a/gcc/testsuite/gfortran.dg/spellcheck-procedure_1.f90 b/gcc/testsuite/gfortran.dg/spellcheck-procedure_1.f90
index 3b7f7169468..2afce4a1dc7 100644
--- a/gcc/testsuite/gfortran.dg/spellcheck-procedure_1.f90
+++ b/gcc/testsuite/gfortran.dg/spellcheck-procedure_1.f90
@@ -33,9 +33,9 @@ program spellchekc
j = something_goof(j) ! { dg-error "no IMPLICIT type; did you mean .something_good.\\?" }
j = myaddd(i, j) ! { dg-error "no IMPLICIT type; did you mean .myadd.\\?" }
- if (j /= 42) call abort
+ if (j /= 42) STOP 1
j = add_fourtytow(i, j) ! { dg-error "no IMPLICIT type; did you mean .add_fourtytwo.\\?" }
myval = myadd(i, j) ! { dg-error "no IMPLICIT type; did you mean .myvar.\\?" }
- if (j /= 42 * 2) call abort
+ if (j /= 42 * 2) STOP 2
end program spellchekc
diff --git a/gcc/testsuite/gfortran.dg/spellcheck-procedure_2.f90 b/gcc/testsuite/gfortran.dg/spellcheck-procedure_2.f90
index fbd4dcde540..c390254678f 100644
--- a/gcc/testsuite/gfortran.dg/spellcheck-procedure_2.f90
+++ b/gcc/testsuite/gfortran.dg/spellcheck-procedure_2.f90
@@ -15,7 +15,7 @@ program spellchekc
integer :: i
i = 0
- if (i /= 1) call abort
+ if (i /= 1) STOP 1
call bark_unless_0(i) ! { dg-error "not explicitly declared; did you mean .bark_unless_zero.\\?" }
! call complain_about_0(i) ! { -dg-error "not explicitly declared; did you mean .complain_about_zero.\\?" }
@@ -23,7 +23,7 @@ contains
! We cannot reliably see this ATM, would need an unambiguous bit somewhere
subroutine complain_about_zero(iarg)
integer, intent(in) :: iarg
- if (iarg /= 0) call abort
+ if (iarg /= 0) STOP 2
end subroutine complain_about_zero
end program spellchekc
@@ -31,5 +31,5 @@ end program spellchekc
subroutine bark_unless_zero(iarg)
implicit none
integer, intent(in) :: iarg
- if (iarg /= 0) call abort
+ if (iarg /= 0) STOP 3
end subroutine bark_unless_zero
diff --git a/gcc/testsuite/gfortran.dg/spread_init_expr.f03 b/gcc/testsuite/gfortran.dg/spread_init_expr.f03
index 05714f623ed..34cc2fd1618 100644
--- a/gcc/testsuite/gfortran.dg/spread_init_expr.f03
+++ b/gcc/testsuite/gfortran.dg/spread_init_expr.f03
@@ -5,13 +5,13 @@
INTEGER, PARAMETER :: a2(n, 3) = SPREAD([1,2,3], DIM=1, NCOPIES=n)
INTEGER, PARAMETER :: a3(3, n) = SPREAD([1,2,3], DIM=2, NCOPIES=n)
- IF (ANY(a1 /= [ 1, 1, 1, 1, 1 ])) CALL abort()
+ IF (ANY(a1 /= [ 1, 1, 1, 1, 1 ])) STOP 1
- IF (ANY(a2(:, 1) /= 1)) CALL abort()
- IF (ANY(a2(:, 2) /= 2)) CALL abort()
- IF (ANY(a2(:, 3) /= 3)) CALL abort()
+ IF (ANY(a2(:, 1) /= 1)) STOP 2
+ IF (ANY(a2(:, 2) /= 2)) STOP 3
+ IF (ANY(a2(:, 3) /= 3)) STOP 4
- IF (ANY(a3(1, :) /= 1)) CALL abort()
- IF (ANY(a3(2, :) /= 2)) CALL abort()
- IF (ANY(a3(3, :) /= 3)) CALL abort()
+ IF (ANY(a3(1, :) /= 1)) STOP 5
+ IF (ANY(a3(2, :) /= 2)) STOP 6
+ IF (ANY(a3(3, :) /= 3)) STOP 7
END
diff --git a/gcc/testsuite/gfortran.dg/spread_scalar_source.f90 b/gcc/testsuite/gfortran.dg/spread_scalar_source.f90
index 118a2de6ef8..2911c07fb07 100644
--- a/gcc/testsuite/gfortran.dg/spread_scalar_source.f90
+++ b/gcc/testsuite/gfortran.dg/spread_scalar_source.f90
@@ -18,35 +18,35 @@
! Test constant sources.
j = spread ("z", 1 , 10)
- if (any (j /= "z")) call abort ()
+ if (any (j /= "z")) STOP 1
jj = spread (19, 1 , 10)
- if (any (jj /= 19)) call abort ()
+ if (any (jj /= 19)) STOP 2
! Test variable sources.
j = spread (i, 1 , 10)
- if (any (j /= "w")) call abort ()
+ if (any (j /= "w")) STOP 3
jj = spread (ii, 1 , 10)
- if (any (jj /= 42)) call abort ()
+ if (any (jj /= 42)) STOP 4
jjj = spread (iii, 1 , 10)
- if (any (jjj%x /= 41.9999_8)) call abort ()
- if (any (jjj%i /= 77)) call abort ()
- if (any (jjj%ch /= "test_of_spread_")) call abort ()
+ if (any (jjj%x /= 41.9999_8)) STOP 5
+ if (any (jjj%i /= 77)) STOP 6
+ if (any (jjj%ch /= "test_of_spread_")) STOP 7
! Check that spread != 1 is OK.
jj(2:10:2) = spread (1, 1, 5)
- if (any (jj(1:9:2) /= 42) .or. any (jj(2:10:2) /= 1)) call abort ()
+ if (any (jj(1:9:2) /= 42) .or. any (jj(2:10:2) /= 1)) STOP 8
! Finally, check that temporaries and trans-io.c work correctly.
write (buffer, '(4a1)') spread (i, 1 , 4)
- if (trim(buffer) /= "wwww") call abort ()
+ if (trim(buffer) /= "wwww") STOP 9
write (buffer, '(4a1)') spread ("r", 1 , 4)
- if (trim(buffer) /= "rrrr") call abort ()
+ if (trim(buffer) /= "rrrr") STOP 10
write (buffer, '(4i2)') spread (ii, 1 , 4)
- if (trim(buffer) /= "42424242") call abort ()
+ if (trim(buffer) /= "42424242") STOP 11
write (buffer, '(4i2)') spread (31, 1 , 4)
- if (trim(buffer) /= "31313131") call abort ()
+ if (trim(buffer) /= "31313131") STOP 12
end
diff --git a/gcc/testsuite/gfortran.dg/spread_shape_1.f90 b/gcc/testsuite/gfortran.dg/spread_shape_1.f90
index 650584ecf43..28ed5a8140d 100644
--- a/gcc/testsuite/gfortran.dg/spread_shape_1.f90
+++ b/gcc/testsuite/gfortran.dg/spread_shape_1.f90
@@ -13,10 +13,10 @@
! Original PR
ptr(:, :) = u + spread ((/1.0, 2.0/), 2, size(u, 2))
if (any (ptr .ne. &
- reshape ((/1.25, 2.50, 1.75, 3.00/), (/2, 2/)))) call abort ()
+ reshape ((/1.25, 2.50, 1.75, 3.00/), (/2, 2/)))) STOP 1
! Check that the fix works correctly with the source shape after ncopies
ptr(:, :) = u + spread ((/2.0, 3.0/), 1, size (u, 1))
if (any (ptr .ne. &
- reshape ((/2.25, 2.50, 3.75, 4.00/), (/2,2/)))) call abort ()
+ reshape ((/2.25, 2.50, 3.75, 4.00/), (/2,2/)))) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/stat_1.f90 b/gcc/testsuite/gfortran.dg/stat_1.f90
index 49ef23a7800..a170393db64 100644
--- a/gcc/testsuite/gfortran.dg/stat_1.f90
+++ b/gcc/testsuite/gfortran.dg/stat_1.f90
@@ -14,14 +14,14 @@
call fstat (10, s3, r3)
call stat (".", d, rd)
- if (r1 /= 0 .or. r2 /= 0 .or. r3 /= 0 .or. rd /= 0) call abort
- if (any (s1 /= s2) .or. any (s1 /= s3)) call abort
- if (s1(5) /= getuid()) call abort
+ if (r1 /= 0 .or. r2 /= 0 .or. r3 /= 0 .or. rd /= 0) STOP 1
+ if (any (s1 /= s2) .or. any (s1 /= s3)) STOP 2
+ if (s1(5) /= getuid()) STOP 3
! If the test is run in a directory with the sgid bit set or on a filesystem
! mounted with the grpid option, new files are created with the directory's
! gid instead of the user's primary gid, so allow for that.
- if (s1(6) /= getgid() .and. s1(6) /= d(6) .and. getgid() /= 0) call abort
- if (s1(8) < 3 .or. s1(8) > 5) call abort
+ if (s1(6) /= getgid() .and. s1(6) /= d(6) .and. getgid() /= 0) STOP 4
+ if (s1(8) < 3 .or. s1(8) > 5) STOP 5
close (10,status="delete")
end
diff --git a/gcc/testsuite/gfortran.dg/stat_2.f90 b/gcc/testsuite/gfortran.dg/stat_2.f90
index ae029dc9424..32563cb99ed 100644
--- a/gcc/testsuite/gfortran.dg/stat_2.f90
+++ b/gcc/testsuite/gfortran.dg/stat_2.f90
@@ -14,14 +14,14 @@
r3 = fstat (10, s3)
rd = stat (".", d)
- if (r1 /= 0 .or. r2 /= 0 .or. r3 /= 0 .or. rd /= 0) call abort
- if (any (s1 /= s2) .or. any (s1 /= s3)) call abort
- if (s1(5) /= getuid()) call abort
+ if (r1 /= 0 .or. r2 /= 0 .or. r3 /= 0 .or. rd /= 0) STOP 1
+ if (any (s1 /= s2) .or. any (s1 /= s3)) STOP 2
+ if (s1(5) /= getuid()) STOP 3
! If the test is run in a directory with the sgid bit set or on a filesystem
! mounted with the grpid option, new files are created with the directory's
! gid instead of the user's primary gid, so allow for that.
- if (s1(6) /= getgid() .and. s1(6) /= d(6) .and. getgid() /= 0) call abort
- if (s1(8) < 3 .or. s1(8) > 5) call abort
+ if (s1(6) /= getgid() .and. s1(6) /= d(6) .and. getgid() /= 0) STOP 4
+ if (s1(8) < 3 .or. s1(8) > 5) STOP 5
close (10,status="delete")
end
diff --git a/gcc/testsuite/gfortran.dg/statement_function_1.f90 b/gcc/testsuite/gfortran.dg/statement_function_1.f90
index f26f25c8712..e717725e67e 100644
--- a/gcc/testsuite/gfortran.dg/statement_function_1.f90
+++ b/gcc/testsuite/gfortran.dg/statement_function_1.f90
@@ -19,10 +19,6 @@
qofs(s, i) = i * s
i = 42
w = qofs(hh, i)
-!
-! The following line should cause an error, because keywords are not
-! allowed in a function with an implicit interface.
-!
- w = qofs(i = i, s = hh)
+ w = qofs(i = i, s = hh) ! { dg-error "invalid in a statement function" }
end subroutine step
! { dg-prune-output " Obsolescent feature" }
diff --git a/gcc/testsuite/gfortran.dg/stfunc_1.f90 b/gcc/testsuite/gfortran.dg/stfunc_1.f90
index 46dde6286b6..42b0a89e89b 100644
--- a/gcc/testsuite/gfortran.dg/stfunc_1.f90
+++ b/gcc/testsuite/gfortran.dg/stfunc_1.f90
@@ -7,5 +7,5 @@
a(b) = .true.
b = .false.
if (a(.false.)) b = .true.
- if (.not.b) call abort
+ if (.not.b) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/stfunc_4.f90 b/gcc/testsuite/gfortran.dg/stfunc_4.f90
index 2f0efccf326..d6139d523e1 100644
--- a/gcc/testsuite/gfortran.dg/stfunc_4.f90
+++ b/gcc/testsuite/gfortran.dg/stfunc_4.f90
@@ -10,8 +10,8 @@
st1 (i) = i * i * i
FORALL(i=1:4) a(i) = st1 (i)
FORALL(i=1:4) a(i) = u (a(i)) - a(i)** 2
- if (any (a .ne. 0)) call abort ()
- if (i .ne. 99) call abort ()
+ if (any (a .ne. 0)) STOP 1
+ if (i .ne. 99) STOP 2
contains
pure integer function u (x)
integer,intent(in) :: x
diff --git a/gcc/testsuite/gfortran.dg/stfunc_6.f90 b/gcc/testsuite/gfortran.dg/stfunc_6.f90
index 37137fb41f8..8fa7eb86222 100644
--- a/gcc/testsuite/gfortran.dg/stfunc_6.f90
+++ b/gcc/testsuite/gfortran.dg/stfunc_6.f90
@@ -15,8 +15,8 @@
st3 (i) = i * v(i)
FORALL(i=1:4) a(i) = st1 (i)
FORALL(i=1:4) a(i) = u (a(i)) - a(i)** 2
- if (any (a .ne. 0)) call abort ()
- if (i .ne. 99) call abort ()
+ if (any (a .ne. 0)) STOP 1
+ if (i .ne. 99) STOP 2
FORALL (i=1:4) a(i) = st3 (i) ! { dg-error "impure function" "impure reference in FORALL" { xfail *-*-*} }
FORALL (i=1:4) a(i) = v(i) ! { dg-error "impure function" }
contains
diff --git a/gcc/testsuite/gfortran.dg/stop_shouldfail.f90 b/gcc/testsuite/gfortran.dg/stop_shouldfail.f90
new file mode 100644
index 00000000000..11fc12b4dc9
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/stop_shouldfail.f90
@@ -0,0 +1,5 @@
+! { dg-do run }
+! { dg-shouldfail "STOP 1" }
+program main
+ stop 1
+end program main
diff --git a/gcc/testsuite/gfortran.dg/storage_size_1.f08 b/gcc/testsuite/gfortran.dg/storage_size_1.f08
index 71d3589c8ed..c444dac4cdf 100644
--- a/gcc/testsuite/gfortran.dg/storage_size_1.f08
+++ b/gcc/testsuite/gfortran.dg/storage_size_1.f08
@@ -19,13 +19,13 @@ class(t), allocatable :: cp
allocate(t2::cp)
-if (sizeof(a) /= 8) call abort()
-if (storage_size(a) /= 64) call abort()
+if (sizeof(a) /= 8) STOP 1
+if (storage_size(a) /= 64) STOP 2
-if (sizeof(b) /= 24) call abort()
-if (storage_size(b) /= 64) call abort()
+if (sizeof(b) /= 24) STOP 3
+if (storage_size(b) /= 64) STOP 4
-if (sizeof(cp) /= 12) call abort()
-if (storage_size(cp) /= 96) call abort()
+if (sizeof(cp) /= 12) STOP 5
+if (storage_size(cp) /= 96) STOP 6
end
diff --git a/gcc/testsuite/gfortran.dg/storage_size_3.f08 b/gcc/testsuite/gfortran.dg/storage_size_3.f08
index 57b50af5610..ca4e786b765 100644
--- a/gcc/testsuite/gfortran.dg/storage_size_3.f08
+++ b/gcc/testsuite/gfortran.dg/storage_size_3.f08
@@ -13,15 +13,15 @@ end type
class(t), pointer :: x => null()
class(t), allocatable :: y
-if (storage_size(x)/=32) call abort()
-if (storage_size(y)/=32) call abort()
+if (storage_size(x)/=32) STOP 1
+if (storage_size(y)/=32) STOP 2
allocate(y)
-if (storage_size(y)/=32) call abort()
+if (storage_size(y)/=32) STOP 3
deallocate(y)
-if (storage_size(y)/=32) call abort()
+if (storage_size(y)/=32) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/storage_size_4.f90 b/gcc/testsuite/gfortran.dg/storage_size_4.f90
index b66dcb9eec6..8650b90f79d 100644
--- a/gcc/testsuite/gfortran.dg/storage_size_4.f90
+++ b/gcc/testsuite/gfortran.dg/storage_size_4.f90
@@ -9,8 +9,8 @@
implicit none
integer, parameter :: ESize = storage_size('a')
integer, parameter :: ESize2 = storage_size('aa')
- if ( ESize/CHARACTER_STORAGE_SIZE /= 1) call abort()
- if ( ESize2/CHARACTER_STORAGE_SIZE /= 2) call abort()
+ if ( ESize/CHARACTER_STORAGE_SIZE /= 1) STOP 1
+ if ( ESize2/CHARACTER_STORAGE_SIZE /= 2) STOP 2
end
subroutine S ( A )
diff --git a/gcc/testsuite/gfortran.dg/streamio_1.f90 b/gcc/testsuite/gfortran.dg/streamio_1.f90
index 5a853fc8e89..3cbb37a2cc8 100644
--- a/gcc/testsuite/gfortran.dg/streamio_1.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_1.f90
@@ -11,8 +11,8 @@ PROGRAM stream_io_1
WRITE(11) 1234567
write(11) 3.14159_8
read(11, pos=12)i
- if (i.ne.1234567) call abort()
+ if (i.ne.1234567) STOP 1
read(11) r
- if (r-3.14159 .gt. 0.00001) call abort()
+ if (r-3.14159 .gt. 0.00001) STOP 2
CLOSE(UNIT=11, status="delete")
END PROGRAM stream_io_1 \ No newline at end of file
diff --git a/gcc/testsuite/gfortran.dg/streamio_10.f90 b/gcc/testsuite/gfortran.dg/streamio_10.f90
index 9874405cc37..3aec4847f65 100644
--- a/gcc/testsuite/gfortran.dg/streamio_10.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_10.f90
@@ -11,27 +11,27 @@ program stream_io_10
open(10, file="teststream_streamio_10", access="stream")
write(10) a
inquire(10, pos=thepos)
- if (thepos.ne.17) call abort()
+ if (thepos.ne.17) STOP 1
read(10, pos=1)
inquire(10, pos=thepos)
- if (thepos.ne.1) call abort()
+ if (thepos.ne.1) STOP 2
write(10, pos=15)
inquire(10, pos=thepos)
- if (thepos.ne.15) call abort()
+ if (thepos.ne.15) STOP 3
read(10, pos=3)
inquire(10, pos=thepos)
- if (thepos.ne.3) call abort()
+ if (thepos.ne.3) STOP 4
write(10, pos=1)
inquire(10, pos=thepos)
- if (thepos.ne.1) call abort()
+ if (thepos.ne.1) STOP 5
a = 0
read(10) a
- if (any(a /= b)) call abort()
+ if (any(a /= b)) STOP 6
close(10, status="delete")
end program stream_io_10
diff --git a/gcc/testsuite/gfortran.dg/streamio_11.f90 b/gcc/testsuite/gfortran.dg/streamio_11.f90
index 2084a23159b..11983aa9c52 100644
--- a/gcc/testsuite/gfortran.dg/streamio_11.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_11.f90
@@ -15,11 +15,11 @@ program stream_test
rewind(10)
read(10,*) str1
read(10,*) str2
- if(str1 /= rec1 .or. str2 /= rec2) call abort()
+ if(str1 /= rec1 .or. str2 /= rec2) STOP 1
rewind(10)
read(10,'(a)') str1
read(10,'(a)') str2
- if(str1 /= rec1 .or. str2 /= rec2) call abort()
+ if(str1 /= rec1 .or. str2 /= rec2) STOP 2
close(10)
open(10,form='formatted',access='stream',&
@@ -30,7 +30,7 @@ program stream_test
read(10,*) i,str1
read(10,*) r
if(i /= 123 .or. str1 /= rec1 .or. r /= 12345.6789) &
- call abort()
+ STOP 3
close(10)
open(unit=10,form='unformatted',access='stream', &
@@ -39,5 +39,5 @@ program stream_test
len = len_trim(rec1//new_line('a')//rec2)
rewind(10)
read(10) str1(1:len)
- if(str1 /= rec1//new_line('a')//rec2) call abort()
+ if(str1 /= rec1//new_line('a')//rec2) STOP 4
end program stream_test
diff --git a/gcc/testsuite/gfortran.dg/streamio_12.f90 b/gcc/testsuite/gfortran.dg/streamio_12.f90
index f90d685248b..89a0322b8c0 100644
--- a/gcc/testsuite/gfortran.dg/streamio_12.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_12.f90
@@ -13,6 +13,6 @@ program streamtest
anarray = 0.0
read(10) anarray
anarray = abs(anarray - 3.14159)
- if (any(anarray.gt.0.00001)) call abort()
+ if (any(anarray.gt.0.00001)) STOP 1
close(10,status="delete")
end program streamtest \ No newline at end of file
diff --git a/gcc/testsuite/gfortran.dg/streamio_13.f90 b/gcc/testsuite/gfortran.dg/streamio_13.f90
index e37535b7b6b..556d78c314a 100644
--- a/gcc/testsuite/gfortran.dg/streamio_13.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_13.f90
@@ -11,5 +11,5 @@ program main
msg = ' '
backspace (2003,iostat=ios,iomsg=msg)
if (ios == 0 .or. msg /="Cannot BACKSPACE an unformatted stream file") &
- call abort
+ STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/streamio_14.f90 b/gcc/testsuite/gfortran.dg/streamio_14.f90
index 54522fe6bd5..33674bccf7d 100644
--- a/gcc/testsuite/gfortran.dg/streamio_14.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_14.f90
@@ -7,16 +7,16 @@ program main
write (10) '1234567890abcde'
c = ''
read (10,pos=1) c
- if (c /= '1234567890') call abort
+ if (c /= '1234567890') STOP 1
c = ''
read (10,pos=6) c
- if (c /= '67890abcde') call abort
+ if (c /= '67890abcde') STOP 2
write (10,pos=3) 'AB'
c = ''
read (10,pos=1) c
- if (c /= '12AB567890') call abort
+ if (c /= '12AB567890') STOP 3
c = ''
read (10,pos=6) c
- if (c /= '67890abcde') call abort
+ if (c /= '67890abcde') STOP 4
close (10,status="delete")
end program main
diff --git a/gcc/testsuite/gfortran.dg/streamio_15.f90 b/gcc/testsuite/gfortran.dg/streamio_15.f90
index eee59a4e888..593b7332dff 100644
--- a/gcc/testsuite/gfortran.dg/streamio_15.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_15.f90
@@ -10,7 +10,7 @@ program main
write(20,"()")
inquire(20,pos=newline_length)
newline_length = newline_length - 1
- if (newline_length < 1 .or. newline_length > 2) call abort
+ if (newline_length < 1 .or. newline_length > 2) STOP 1
close(20)
open(20,file="foo_streamio_15.txt",form="formatted",access="stream")
@@ -20,13 +20,13 @@ program main
rewind 20
! Skip over the first line
read(20,'(A)') c
- if (c.ne.'123456') call abort
+ if (c.ne.'123456') STOP 2
! Save the position
inquire(20,pos=i)
- if (i.ne.7+newline_length) call abort
+ if (i.ne.7+newline_length) STOP 3
! Read in the complete line...
read(20,'(A)') c
- if (c.ne.'abcdef') call abort
+ if (c.ne.'abcdef') STOP 4
! Write out the first four characters
write(20,'(A)',pos=i,advance="no") 'ASDF'
! Fill up the rest of the line. Here, we know the length. If we
@@ -36,10 +36,10 @@ program main
rewind 20
c = ""
read(20,'(A)') c
- if (c.ne.'123456') call abort
+ if (c.ne.'123456') STOP 5
read(20,'(A)') c
- if (c.ne.'ASDFef') call abort
+ if (c.ne.'ASDFef') STOP 6
read(20,'(A)', iostat=i) c
- if (i /= -1) call abort
+ if (i /= -1) STOP 7
close (20, status="delete")
end program main
diff --git a/gcc/testsuite/gfortran.dg/streamio_16.f90 b/gcc/testsuite/gfortran.dg/streamio_16.f90
index 7a1ab115da7..ded5c826dc5 100644
--- a/gcc/testsuite/gfortran.dg/streamio_16.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_16.f90
@@ -9,11 +9,11 @@ write(50, *, pos=1) "Just something "
do i=1,17
read( 50, *,pos=i)
inquire(50, access=sAccess, pos=mypos)
- if (sAccess.ne."STREAM") call abort
- if ((mypos.ne.18).and.(mypos.ne.19)) call abort
+ if (sAccess.ne."STREAM") STOP 1
+ if ((mypos.ne.18).and.(mypos.ne.19)) STOP 2
end do
read (50,*, end=10)
-call abort
+STOP 3
10 continue
close(50,status="delete")
end
diff --git a/gcc/testsuite/gfortran.dg/streamio_17.f90 b/gcc/testsuite/gfortran.dg/streamio_17.f90
index 41fa0b98f9e..0cfdd8e15bc 100644
--- a/gcc/testsuite/gfortran.dg/streamio_17.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_17.f90
@@ -5,8 +5,8 @@ integer :: ios
character(128) :: message
open(10, status='scratch', access='stream')
write (10, rec=1, iostat=ios, iomsg=message) "This is a test" !
-if (ios.ne.5001) call abort
+if (ios.ne.5001) STOP 1
if (message.ne. &
&"Record number not allowed for stream access data transfer") &
- call abort
+ STOP 2
end program
diff --git a/gcc/testsuite/gfortran.dg/streamio_2.f90 b/gcc/testsuite/gfortran.dg/streamio_2.f90
index 8260a7481c9..b1b22074e47 100644
--- a/gcc/testsuite/gfortran.dg/streamio_2.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_2.f90
@@ -15,8 +15,8 @@ PROGRAM readUstream
WRITE(11) 7
READ(11, POS=3) string
READ(11, POS=12) n
- if (string.ne."rst") call abort()
- if (n.ne.7) call abort()
+ if (string.ne."rst") STOP 1
+ if (n.ne.7) STOP 2
close(unit=11, status="delete")
END PROGRAM readUstream
diff --git a/gcc/testsuite/gfortran.dg/streamio_3.f90 b/gcc/testsuite/gfortran.dg/streamio_3.f90
index d73e431a09f..a5d648af9b8 100644
--- a/gcc/testsuite/gfortran.dg/streamio_3.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_3.f90
@@ -11,8 +11,8 @@ program streamio_3
i = 0
rewind(10)
read(10,'(3(2x,i4/)/3(3x,i6/))') i
- if (any(i.ne.(/(j,j=1,6)/))) call abort()
+ if (any(i.ne.(/(j,j=1,6)/))) STOP 1
inquire(unit=10, access=myaccess)
- if (myaccess.ne."STREAM") call abort()
+ if (myaccess.ne."STREAM") STOP 2
close(10,status="delete")
end program streamio_3
diff --git a/gcc/testsuite/gfortran.dg/streamio_4.f90 b/gcc/testsuite/gfortran.dg/streamio_4.f90
index 0ed3d2ed88e..234eef61dfb 100644
--- a/gcc/testsuite/gfortran.dg/streamio_4.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_4.f90
@@ -30,7 +30,7 @@ program streamtest
do i=1,lines
do j=0,9
read(10,"(i5)") k
- if (k.ne.j) call abort()
+ if (k.ne.j) STOP 1
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/streamio_5.f90 b/gcc/testsuite/gfortran.dg/streamio_5.f90
index fe7c21ce7d5..a070f39d658 100644
--- a/gcc/testsuite/gfortran.dg/streamio_5.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_5.f90
@@ -23,10 +23,10 @@ program streamtest5
do i=1,1229
do j=0,9
read(10) k
- if (k.ne.j) call abort()
+ if (k.ne.j) STOP 1
end do
read(10) tchar
- if (tchar.ne.lf) call abort()
+ if (tchar.ne.lf) STOP 2
end do
close(10,status="delete")
end program streamtest5 \ No newline at end of file
diff --git a/gcc/testsuite/gfortran.dg/streamio_6.f90 b/gcc/testsuite/gfortran.dg/streamio_6.f90
index dc208899247..327d5d0d8f6 100644
--- a/gcc/testsuite/gfortran.dg/streamio_6.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_6.f90
@@ -23,9 +23,9 @@ program streamio_6
do j=1,100
read(unit=15, pos=a(j), iostat=ier) c
if (ier.ne.0) then
- call abort
+ STOP 1
else
- if (achar(a(j)) /= c) call abort
+ if (achar(a(j)) /= c) STOP 2
endif
enddo
close(unit=15, status="delete")
diff --git a/gcc/testsuite/gfortran.dg/streamio_7.f90 b/gcc/testsuite/gfortran.dg/streamio_7.f90
index 4d6e4a0b680..329a2f68ae1 100644
--- a/gcc/testsuite/gfortran.dg/streamio_7.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_7.f90
@@ -13,6 +13,6 @@ program streamtest
anarray = 0.0
read(10, pos=1) anarray
anarray = abs(anarray - 3.14159)
- if (any(anarray.gt.0.00001)) call abort()
+ if (any(anarray.gt.0.00001)) STOP 1
close(10,status="delete")
end program streamtest \ No newline at end of file
diff --git a/gcc/testsuite/gfortran.dg/streamio_8.f90 b/gcc/testsuite/gfortran.dg/streamio_8.f90
index 420f5b91a56..f4f8eba1ba9 100644
--- a/gcc/testsuite/gfortran.dg/streamio_8.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_8.f90
@@ -11,24 +11,24 @@ PROGRAM stream_io_8
r = 12.25d0
OPEN(UNIT=11, ACCESS="stream")
inquire(unit=11, pos=mypos)
- if (mypos.ne.1) call abort()
+ if (mypos.ne.1) STOP 1
WRITE(11) "first"
inquire(unit=11, pos=mypos)
- if (mypos.ne.6) call abort()
+ if (mypos.ne.6) STOP 2
WRITE(11) "second"
inquire(unit=11, pos=mypos)
- if (mypos.ne.12) call abort()
+ if (mypos.ne.12) STOP 3
WRITE(11) 1234567_4
inquire(unit=11, pos=mypos)
- if (mypos.ne.16) call abort()
+ if (mypos.ne.16) STOP 4
write(11) r
r = 0.0
inquire (11, pos=mypos)
read(11,pos=16)r
- if (abs(r-12.25d0)>1e-10) call abort()
+ if (abs(r-12.25d0)>1e-10) STOP 5
inquire(unit=11, pos=mypos)
inquire(unit=11, access=mystring)
- if (mypos.ne.24) call abort()
- if (mystring.ne."STREAM") call abort()
+ if (mypos.ne.24) STOP 6
+ if (mystring.ne."STREAM") STOP 7
CLOSE(UNIT=11, status="delete")
END PROGRAM stream_io_8
diff --git a/gcc/testsuite/gfortran.dg/streamio_9.f90 b/gcc/testsuite/gfortran.dg/streamio_9.f90
index 150c1c6c393..b6bddb973f8 100644
--- a/gcc/testsuite/gfortran.dg/streamio_9.f90
+++ b/gcc/testsuite/gfortran.dg/streamio_9.f90
@@ -21,9 +21,9 @@ program pr29053
do i = 1, 10
t = i * dt
read(12) a
- if (any(a.ne.b)) call abort()
+ if (any(a.ne.b)) STOP 1
read(11) u
- if (u.ne.t) call abort()
+ if (u.ne.t) STOP 2
end do
close(11, status="delete")
close(12, status="delete")
diff --git a/gcc/testsuite/gfortran.dg/string_0xfe_0xff_1.f90 b/gcc/testsuite/gfortran.dg/string_0xfe_0xff_1.f90
index 16867f05c68..2ebf7fd8911 100644
--- a/gcc/testsuite/gfortran.dg/string_0xfe_0xff_1.f90
+++ b/gcc/testsuite/gfortran.dg/string_0xfe_0xff_1.f90
@@ -2,6 +2,6 @@
! PR 30452 - this used to cause syntax errors due to the presence,
! as characters, of bytes 0xfe and 0xff.
program main
- if (char (254) /= "") call abort
- if (char (255) /= "") call abort
+ if (char (254) /= "") STOP 1
+ if (char (255) /= "") STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/string_4.f90 b/gcc/testsuite/gfortran.dg/string_4.f90
index 12f501bb9ab..d4e37e8736d 100644
--- a/gcc/testsuite/gfortran.dg/string_4.f90
+++ b/gcc/testsuite/gfortran.dg/string_4.f90
@@ -12,7 +12,7 @@
character*32 ddname,stmtfnt1
stmtfnt1(x)= 'h810 e=0.01 '
ddname=stmtfnt1(0.d0)
- if (ddname /= "h810 e=0.01") call abort()
+ if (ddname /= "h810 e=0.01") STOP 1
END
SUBROUTINE TEST2()
@@ -21,7 +21,7 @@
real :: x
stmtfnt2(x)= 'x'
ddname=stmtfnt2(0.0)
- if(ddname /= 'x') call abort()
+ if(ddname /= 'x') STOP 2
END
SUBROUTINE TEST3()
@@ -30,7 +30,7 @@
character*2 :: c
dname(c) = 'h810 e=0.01 '
ddname=dname("w ")
- if (ddname /= "h810 e=0.01") call abort()
+ if (ddname /= "h810 e=0.01") STOP 3
END
SUBROUTINE TEST4()
@@ -40,8 +40,8 @@
dname(c) = 'h810 e=0.01 '
c = 'aa'
ddname=dname("w ")
- if (ddname /= "h810 e=0.01") call abort()
- if (c /= "aa") call abort()
+ if (ddname /= "h810 e=0.01") STOP 4
+ if (c /= "aa") STOP 5
END
call test1()
diff --git a/gcc/testsuite/gfortran.dg/string_array_constructor_2.f90 b/gcc/testsuite/gfortran.dg/string_array_constructor_2.f90
index 0d352b7f5ca..c7ec0a36a02 100644
--- a/gcc/testsuite/gfortran.dg/string_array_constructor_2.f90
+++ b/gcc/testsuite/gfortran.dg/string_array_constructor_2.f90
@@ -25,7 +25,7 @@ contains
!print *, ca(1)
cb = (/Uppercase(c)/) ! This gets an ICE
if (ca(1) .ne. cb(1)) then
- call abort()
+ STOP 1
end if
!print *, ca(1)
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/string_assign_2.f90 b/gcc/testsuite/gfortran.dg/string_assign_2.f90
index f3cfa45e0de..d7084594009 100644
--- a/gcc/testsuite/gfortran.dg/string_assign_2.f90
+++ b/gcc/testsuite/gfortran.dg/string_assign_2.f90
@@ -3,7 +3,7 @@
program main
character (len=:), allocatable :: a
a = 'a'
- if (len(a) /= 1) call abort
+ if (len(a) /= 1) STOP 1
a = ' '
- if (len(a) /= 2) call abort
+ if (len(a) /= 2) STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/string_compare_1.f90 b/gcc/testsuite/gfortran.dg/string_compare_1.f90
index 30cf357174f..54bae53b44c 100644
--- a/gcc/testsuite/gfortran.dg/string_compare_1.f90
+++ b/gcc/testsuite/gfortran.dg/string_compare_1.f90
@@ -20,6 +20,6 @@ PROGRAM main
PRINT '(L1)', tmp2
IF (.NOT. tmp(1) .OR. .NOT. tmp2(1)) THEN
- CALL abort ()
+ STOP 1
END IF
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/string_compare_2.f90 b/gcc/testsuite/gfortran.dg/string_compare_2.f90
index dc68bef2ada..774a08cda53 100644
--- a/gcc/testsuite/gfortran.dg/string_compare_2.f90
+++ b/gcc/testsuite/gfortran.dg/string_compare_2.f90
@@ -31,7 +31,7 @@ program pack_bug
print '(55L1)', tmp(:,i)
if (any ((exprs(:)(1:1)=='a') .neqv. tmp(:,i))) then
- call abort ()
+ STOP 1
end if
end do
end
diff --git a/gcc/testsuite/gfortran.dg/string_compare_3.f90 b/gcc/testsuite/gfortran.dg/string_compare_3.f90
index 46a11d3f55a..15644790dac 100644
--- a/gcc/testsuite/gfortran.dg/string_compare_3.f90
+++ b/gcc/testsuite/gfortran.dg/string_compare_3.f90
@@ -17,5 +17,5 @@ print *, c0lst(:)(1:1) == char(96+i)
tmp = c1lst(:)(1:1) == char(96+i)
print *, tmp
print *, c1lst(:)(1:1) == 'e'
-if (any(tmp .neqv. (c0lst(:)(1:1) == char(96+i)))) call abort()
+if (any(tmp .neqv. (c0lst(:)(1:1) == char(96+i)))) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/string_ctor_1.f90 b/gcc/testsuite/gfortran.dg/string_ctor_1.f90
index 7e5c2f9f030..9acf742a93b 100644
--- a/gcc/testsuite/gfortran.dg/string_ctor_1.f90
+++ b/gcc/testsuite/gfortran.dg/string_ctor_1.f90
@@ -12,7 +12,7 @@ subroutine test1 (n, t, u)
! A variable array constructor.
s = (/t, u/)
! An array constructor as part of an expression.
- if (any (s .ne. (/"Hell", "Worl"/))) call abort
+ if (any (s .ne. (/"Hell", "Worl"/))) STOP 1
end subroutine
subroutine test2
@@ -20,7 +20,7 @@ subroutine test2
! A constant array constructor
s = (/"Hello", "World"/)
- if ((s(1) .ne. "Hello") .or. (s(2) .ne. "World")) call abort
+ if ((s(1) .ne. "Hello") .or. (s(2) .ne. "World")) STOP 2
end subroutine
subroutine test3
@@ -40,7 +40,7 @@ subroutine test3
do i=1, 26
t(i:i) = s(i)
end do
- if (t .ne. "zyxwvutsrqponmlkjihgfedcba") call abort
+ if (t .ne. "zyxwvutsrqponmlkjihgfedcba") STOP 3
end subroutine
program string_ctor_1
diff --git a/gcc/testsuite/gfortran.dg/string_length_1.f90 b/gcc/testsuite/gfortran.dg/string_length_1.f90
index 50883f0106c..42deb08dffe 100644
--- a/gcc/testsuite/gfortran.dg/string_length_1.f90
+++ b/gcc/testsuite/gfortran.dg/string_length_1.f90
@@ -4,8 +4,8 @@
subroutine foo(i)
integer :: i
character(len=i) :: s(2)
- if (len(s) < 0) call abort
- if (len(s) /= max(i,0)) call abort
+ if (len(s) < 0) STOP 1
+ if (len(s) /= max(i,0)) STOP 2
end
function gee(i)
@@ -17,7 +17,7 @@ end function gee
subroutine s1(i,j)
character(len=i-j) :: a
- if (len(a) < 0) call abort()
+ if (len(a) < 0) STOP 1
end subroutine
program test
@@ -34,20 +34,20 @@ program test
call s1(-1,-8)
call s1(-8,-1)
- if (len(gee(2)) /= 2) call abort
- if (len(gee(-5)) /= 0) call abort
- if (len(gee(intfunc(3))) /= max(intfunc(3),0)) call abort
- if (len(gee(intfunc(2))) /= max(intfunc(2),0)) call abort
+ if (len(gee(2)) /= 2) STOP 3
+ if (len(gee(-5)) /= 0) STOP 4
+ if (len(gee(intfunc(3))) /= max(intfunc(3),0)) STOP 5
+ if (len(gee(intfunc(2))) /= max(intfunc(2),0)) STOP 6
- if (len(bar(2)) /= 2) call abort
- if (len(bar(-5)) /= 0) call abort
- if (len(bar(intfunc(3))) /= max(intfunc(3),0)) call abort
- if (len(bar(intfunc(2))) /= max(intfunc(2),0)) call abort
+ if (len(bar(2)) /= 2) STOP 7
+ if (len(bar(-5)) /= 0) STOP 8
+ if (len(bar(intfunc(3))) /= max(intfunc(3),0)) STOP 9
+ if (len(bar(intfunc(2))) /= max(intfunc(2),0)) STOP 10
- if (cow(bar(2)) /= 2) call abort
- if (cow(bar(-5)) /= 0) call abort
- if (cow(bar(intfunc(3))) /= max(intfunc(3),0)) call abort
- if (cow(bar(intfunc(2))) /= max(intfunc(2),0)) call abort
+ if (cow(bar(2)) /= 2) STOP 11
+ if (cow(bar(-5)) /= 0) STOP 12
+ if (cow(bar(intfunc(3))) /= max(intfunc(3),0)) STOP 13
+ if (cow(bar(intfunc(2))) /= max(intfunc(2),0)) STOP 14
contains
diff --git a/gcc/testsuite/gfortran.dg/string_length_2.f90 b/gcc/testsuite/gfortran.dg/string_length_2.f90
index ff70eea687c..96afa81f804 100644
--- a/gcc/testsuite/gfortran.dg/string_length_2.f90
+++ b/gcc/testsuite/gfortran.dg/string_length_2.f90
@@ -9,23 +9,23 @@ program main
read (unit=unit,fmt='(I5)') i ! Hide from optimizers
j = 7
c = '123456789'
- if (len(c( 3 : 5 )) /= 3) call abort ! Case 1
- if (len(c( i*(i+1) : (i+1)*i + 2 )) /= 3) call abort ! Case 2
- if (len(c( i*(i+1) : 2 + (i+1)*i )) /= 3) call abort ! Case 3
- if (len(c( i*(i+1) + 2 : (i+1)*i + 3 )) /= 2) call abort ! Case 4
- if (len(c( 2 + i*(i+1) : (i+1)*i + 3 )) /= 2) call abort ! Case 5
- if (len(c( i*(i+1) + 2 : 3 + (i+1)*i )) /= 2) call abort ! Case 6
- if (len(c( 2 + i*(i+1) : 3 + (i+1)*i )) /= 2) call abort ! Case 7
- if (len(c( i*(i+1) - 1 : (i+1)*i + 1 )) /= 3) call abort ! Case 8
- if (len(c( i*(i+1) - 1 : 1 + (i+1)*i )) /= 3) call abort ! Case 9
- if (len(c( i*(i+1) : (i+1)*i -(-1))) /= 2) call abort ! Case 10
- if (len(c( i*(i+1) +(-2): (i+1)*i - 1 )) /= 2) call abort ! Case 11
- if (len(c( i*(i+1) + 2 : (i+1)*i -(-4))) /= 3) call abort ! Case 12
- if (len(c( i*(i+1) - 3 : (i+1)*i - 1 )) /= 3) call abort ! Case 13
- if (len(c(13 - i*(i+1) :15 - (i+1)*i )) /= 3) call abort ! Case 14
- if (len(c( i*(i+1) +(-1): (i+1)*i )) /= 2) call abort ! Case 15
- if (len(c(-1 + i*(i+1) : (i+1)*i )) /= 2) call abort ! Case 16
- if (len(c( i*(i+1) - 2 : (i+1)*i )) /= 3) call abort ! Case 17
- if (len(c( (i-2)*(i-3) : (i-3)*(i-2) )) /= 1) call abort ! Case 18
+ if (len(c( 3 : 5 )) /= 3) STOP 1! Case 1
+ if (len(c( i*(i+1) : (i+1)*i + 2 )) /= 3) STOP 2! Case 2
+ if (len(c( i*(i+1) : 2 + (i+1)*i )) /= 3) STOP 3! Case 3
+ if (len(c( i*(i+1) + 2 : (i+1)*i + 3 )) /= 2) STOP 4! Case 4
+ if (len(c( 2 + i*(i+1) : (i+1)*i + 3 )) /= 2) STOP 5! Case 5
+ if (len(c( i*(i+1) + 2 : 3 + (i+1)*i )) /= 2) STOP 6! Case 6
+ if (len(c( 2 + i*(i+1) : 3 + (i+1)*i )) /= 2) STOP 7! Case 7
+ if (len(c( i*(i+1) - 1 : (i+1)*i + 1 )) /= 3) STOP 8! Case 8
+ if (len(c( i*(i+1) - 1 : 1 + (i+1)*i )) /= 3) STOP 9! Case 9
+ if (len(c( i*(i+1) : (i+1)*i -(-1))) /= 2) STOP 10! Case 10
+ if (len(c( i*(i+1) +(-2): (i+1)*i - 1 )) /= 2) STOP 11! Case 11
+ if (len(c( i*(i+1) + 2 : (i+1)*i -(-4))) /= 3) STOP 12! Case 12
+ if (len(c( i*(i+1) - 3 : (i+1)*i - 1 )) /= 3) STOP 13! Case 13
+ if (len(c(13 - i*(i+1) :15 - (i+1)*i )) /= 3) STOP 14! Case 14
+ if (len(c( i*(i+1) +(-1): (i+1)*i )) /= 2) STOP 15! Case 15
+ if (len(c(-1 + i*(i+1) : (i+1)*i )) /= 2) STOP 16! Case 16
+ if (len(c( i*(i+1) - 2 : (i+1)*i )) /= 3) STOP 17! Case 17
+ if (len(c( (i-2)*(i-3) : (i-3)*(i-2) )) /= 1) STOP 18! Case 18
end program main
! { dg-final { scan-tree-dump-times "_abort" 0 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/string_length_3.f90 b/gcc/testsuite/gfortran.dg/string_length_3.f90
index e745eb9fdfa..9b69ffec824 100644
--- a/gcc/testsuite/gfortran.dg/string_length_3.f90
+++ b/gcc/testsuite/gfortran.dg/string_length_3.f90
@@ -7,7 +7,7 @@ PROGRAM test_o_char
implicit none
integer :: n
n = mylen('c') + mylen('c ')
- if (n /= 5) call abort
+ if (n /= 5) STOP 1
CONTAINS
FUNCTION mylen(c)
diff --git a/gcc/testsuite/gfortran.dg/string_length_4.f90 b/gcc/testsuite/gfortran.dg/string_length_4.f90
index 759066b078a..8586c0cc2e0 100644
--- a/gcc/testsuite/gfortran.dg/string_length_4.f90
+++ b/gcc/testsuite/gfortran.dg/string_length_4.f90
@@ -3,7 +3,7 @@
! { dg-options "-flto" }
! PR 78867, test case adapted from gfortran.dg/string_length_1.f90
program pr78867
- if (len(bar(2_8)) /= 2) call abort
+ if (len(bar(2_8)) /= 2) STOP 1
contains
function bar(i)
diff --git a/gcc/testsuite/gfortran.dg/string_null_compare_1.f b/gcc/testsuite/gfortran.dg/string_null_compare_1.f
index 659b3eb3709..35c56384fc3 100644
--- a/gcc/testsuite/gfortran.dg/string_null_compare_1.f
+++ b/gcc/testsuite/gfortran.dg/string_null_compare_1.f
@@ -7,7 +7,7 @@
program main
character*3 str1, str2
call setval(str1, str2)
- if (str1 == str2) call abort
+ if (str1 == str2) STOP 1
end
subroutine setval(str1, str2)
diff --git a/gcc/testsuite/gfortran.dg/string_pad_trunc.f90 b/gcc/testsuite/gfortran.dg/string_pad_trunc.f90
index 738a181b962..15e6e349206 100644
--- a/gcc/testsuite/gfortran.dg/string_pad_trunc.f90
+++ b/gcc/testsuite/gfortran.dg/string_pad_trunc.f90
@@ -7,14 +7,14 @@ character(len = 6),parameter:: c (1:1) = 'hello'
character(len = 11) line
write (line, '(6A)') a, 'world'
-if (line .ne. 'hello world') call abort
+if (line .ne. 'hello world') STOP 1
write (line, '(6A)') b, 'world'
-if (line .ne. 'hello world') call abort
+if (line .ne. 'hello world') STOP 2
write (line, '(6A)') c, 'world'
-if (line .ne. 'hello world') call abort
+if (line .ne. 'hello world') STOP 3
write (line, '(6A)') c(1), 'world'
-if (line .ne. 'hello world') call abort
+if (line .ne. 'hello world') STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/structure_constructor_1.f03 b/gcc/testsuite/gfortran.dg/structure_constructor_1.f03
index 8f8f58ef920..21f235cc97a 100644
--- a/gcc/testsuite/gfortran.dg/structure_constructor_1.f03
+++ b/gcc/testsuite/gfortran.dg/structure_constructor_1.f03
@@ -46,13 +46,13 @@ PROGRAM test
basics = basics_t (42, -1.5, (.5, .5), .FALSE.)
IF (basics%i /= 42 .OR. basics%r /= -1.5 &
.OR. basics%c /= (.5, .5) .OR. basics%l) THEN
- CALL abort()
+ STOP 1
END IF
strings = strings_t ("hello", "abc", "this one is long")
IF (strings%str1 /= "hello" .OR. strings%str2 /= "abc" &
.OR. strings%long /= "this one i") THEN
- CALL abort()
+ STOP 2
END IF
arrays = array_t ( (/ 1, 2, 3, 4 /), RESHAPE((/ 5, 6, 7, 8 /), (/ 2, 2 /)) )
@@ -60,7 +60,7 @@ PROGRAM test
.OR. arrays%ints(4) /= 3 .OR. arrays%ints(5) /= 4 &
.OR. arrays%matrix(1, 1) /= 5. .OR. arrays%matrix(2, 1) /= 6. &
.OR. arrays%matrix(1, 2) /= 7. .OR. arrays%matrix(2, 2) /= 8.) THEN
- CALL abort()
+ STOP 3
END IF
nestedStruct = nestedStruct_t (basics_t (42, -1.5, (.5, .5), .FALSE.), arrays)
@@ -68,7 +68,7 @@ PROGRAM test
.OR. nestedStruct%basics%c /= (.5, .5) .OR. nestedStruct%basics%l &
.OR. ANY(nestedStruct%arrays%ints /= arrays%ints) &
.OR. ANY(nestedStruct%arrays%matrix /= arrays%matrix)) THEN
- CALL abort()
+ STOP 4
END IF
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/structure_constructor_11.f90 b/gcc/testsuite/gfortran.dg/structure_constructor_11.f90
index 6ee6a162ff8..28caebd7618 100644
--- a/gcc/testsuite/gfortran.dg/structure_constructor_11.f90
+++ b/gcc/testsuite/gfortran.dg/structure_constructor_11.f90
@@ -57,7 +57,7 @@ program ala
call bar%a%init()
! They should be called once
- if (count1 /= 23 .or. count2 /= 42) call abort ()
+ if (count1 /= 23 .or. count2 /= 42) STOP 1
contains
diff --git a/gcc/testsuite/gfortran.dg/structure_constructor_13.f03 b/gcc/testsuite/gfortran.dg/structure_constructor_13.f03
index c74e325ce89..deb05690945 100644
--- a/gcc/testsuite/gfortran.dg/structure_constructor_13.f03
+++ b/gcc/testsuite/gfortran.dg/structure_constructor_13.f03
@@ -22,7 +22,7 @@ contains
class is (t)
list = [w(o)] ! This caused an ICE
class default
- call abort()
+ STOP 1
end select
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.dg/structure_constructor_14.f90 b/gcc/testsuite/gfortran.dg/structure_constructor_14.f90
new file mode 100644
index 00000000000..10626f2a12a
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/structure_constructor_14.f90
@@ -0,0 +1,24 @@
+! { dg-do run }
+! PR 48890, PR 83823
+! Test fix for wrong length in parameters. Original test cases
+! by mhp77 (a) gmx.at and Harald Anlauf.
+
+program gfcbug145
+ implicit none
+ type t_obstyp
+ character(len=8) :: name
+ end type t_obstyp
+ type (t_obstyp) ,parameter :: obstyp(*)= &
+ [ t_obstyp ('SYNOP' ), &
+ t_obstyp ('DRIBU' ), &
+ t_obstyp ('TEMP' ), &
+ t_obstyp ('RADAR' ) ]
+ logical :: mask(size(obstyp)) = .true.
+ character(len=100) :: line
+ type (t_obstyp), parameter :: x = t_obstyp('asdf')
+
+ write(line,'(20(a8,:,"|"))') pack (obstyp% name, mask)
+ if (line /= 'SYNOP |DRIBU |TEMP |RADAR') STOP 1
+ write (line,'("|",A,"|")') x
+ if (line /= "|asdf |") STOP 2
+end program gfcbug145
diff --git a/gcc/testsuite/gfortran.dg/structure_constructor_2.f03 b/gcc/testsuite/gfortran.dg/structure_constructor_2.f03
index c551ebfde88..287f3c01ec8 100644
--- a/gcc/testsuite/gfortran.dg/structure_constructor_2.f03
+++ b/gcc/testsuite/gfortran.dg/structure_constructor_2.f03
@@ -17,13 +17,13 @@ PROGRAM test
basics = basics_t (42, -1.5, c=(.5, .5), l=.FALSE.)
IF (basics%i /= 42 .OR. basics%r /= -1.5 &
.OR. basics%c /= (.5, .5) .OR. basics%l) THEN
- CALL abort()
+ STOP 1
END IF
basics = basics_t (r=-1.5, i=42, l=.FALSE., c=(.5, .5))
IF (basics%i /= 42 .OR. basics%r /= -1.5 &
.OR. basics%c /= (.5, .5) .OR. basics%l) THEN
- CALL abort()
+ STOP 2
END IF
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/structure_constructor_5.f03 b/gcc/testsuite/gfortran.dg/structure_constructor_5.f03
index 064db66a2bf..e81203f6199 100644
--- a/gcc/testsuite/gfortran.dg/structure_constructor_5.f03
+++ b/gcc/testsuite/gfortran.dg/structure_constructor_5.f03
@@ -21,18 +21,18 @@ PROGRAM test
empty = quasiempty_t ()
IF (empty%greeting /= "hello") THEN
- CALL abort()
+ STOP 1
END IF
basics = basics_t (r = 1.5)
IF (basics%i /= 42 .OR. basics%r /= 1.5 .OR. basics%c /= (0., 1.)) THEN
- CALL abort()
+ STOP 2
END IF
basics%c = (0., 0.) ! So we see it's surely gotten re-initialized
basics = basics_t (1, 5.1)
IF (basics%i /= 1 .OR. basics%r /= 5.1 .OR. basics%c /= (0., 1.)) THEN
- CALL abort()
+ STOP 3
END IF
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/submodule_1.f08 b/gcc/testsuite/gfortran.dg/submodule_1.f08
index 2c5d373206e..826a6636f7b 100644
--- a/gcc/testsuite/gfortran.dg/submodule_1.f08
+++ b/gcc/testsuite/gfortran.dg/submodule_1.f08
@@ -77,7 +77,7 @@
message = that%greeting
! Check that descendant module procedure is correctly processed
- if (intf (77) .ne. factor*77) call abort
+ if (intf (77) .ne. factor*77) STOP 1
end subroutine
module function realf (arg) result (res)
@@ -137,33 +137,33 @@
call clear_messages
call bar%greet ! typebound call
- if (trim (message) .ne. "Hello, world!") call abort
+ if (trim (message) .ne. "Hello, world!") STOP 2
call clear_messages
bar%greeting = "G'day, world!"
call say_hello(bar) ! Checks use association of 'say_hello'
- if (trim (message) .ne. "G'day, world!") call abort
+ if (trim (message) .ne. "G'day, world!") STOP 3
call clear_messages
bar%greeting = "Hi, world!"
call bye(bar) ! Checks use association in another submodule
- if (trim (message) .ne. "Hi, world!") call abort
- if (trim (message2) .ne. "adieu, world!") call abort
+ if (trim (message) .ne. "Hi, world!") STOP 4
+ if (trim (message2) .ne. "adieu, world!") STOP 5
call clear_messages
call smurf ! Checks host association of 'say_hello'
- if (trim (message) .ne. "Hello, world!") call abort
+ if (trim (message) .ne. "Hello, world!") STOP 6
call clear_messages
bar%greeting = "farewell "
call bar%farewell
- if (trim (message) .ne. "farewell") call abort
- if (trim (message2) .ne. "adieu, world!") call abort
+ if (trim (message) .ne. "farewell") STOP 7
+ if (trim (message2) .ne. "adieu, world!") STOP 8
- if (realf(2.0) .ne. 4.0) call abort ! Check module procedure with explicit result
- if (intf(2) .ne. 10) call abort ! ditto
- if (realg(3.0) .ne. 9.0) call abort ! Check module procedure with function declaration result
- if (intg(3) .ne. 9) call abort ! ditto
+ if (realf(2.0) .ne. 4.0) STOP 9! Check module procedure with explicit result
+ if (intf(2) .ne. 10) STOP 10! ditto
+ if (realg(3.0) .ne. 9.0) STOP 11! Check module procedure with function declaration result
+ if (intg(3) .ne. 9) STOP 12! ditto
contains
subroutine clear_messages
message = ""
diff --git a/gcc/testsuite/gfortran.dg/submodule_11.f08 b/gcc/testsuite/gfortran.dg/submodule_11.f08
index 20367a9d19d..fa627405eb5 100644
--- a/gcc/testsuite/gfortran.dg/submodule_11.f08
+++ b/gcc/testsuite/gfortran.dg/submodule_11.f08
@@ -32,14 +32,14 @@ submodule (m) sm
use n
contains
module subroutine show_i
- if (i .ne. 2) call abort
- if (times_two (i) .ne. 4) call abort
+ if (i .ne. 2) STOP 1
+ if (times_two (i) .ne. 4) STOP 2
end subroutine show_i
end submodule sm
program p
use m
call show_i
- if (i .ne. -1) call abort
- if (times_two (i) .ne. 2) call abort
+ if (i .ne. -1) STOP 3
+ if (times_two (i) .ne. 2) STOP 4
end program
diff --git a/gcc/testsuite/gfortran.dg/submodule_14.f08 b/gcc/testsuite/gfortran.dg/submodule_14.f08
index bc8fd8042a7..329569966e4 100644
--- a/gcc/testsuite/gfortran.dg/submodule_14.f08
+++ b/gcc/testsuite/gfortran.dg/submodule_14.f08
@@ -42,7 +42,7 @@ end submodule testson
use test
integer :: x = 5
call sub1(x)
- if (x .ne. 10) call abort
+ if (x .ne. 10) STOP 1
x = 10
- if (fcn1 (x) .ne. 0) call abort
+ if (fcn1 (x) .ne. 0) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/submodule_15.f08 b/gcc/testsuite/gfortran.dg/submodule_15.f08
index 499bc66d5ac..ee9cc29e486 100644
--- a/gcc/testsuite/gfortran.dg/submodule_15.f08
+++ b/gcc/testsuite/gfortran.dg/submodule_15.f08
@@ -54,5 +54,5 @@ end submodule
use A
integer :: i = 1
incr = 1
- if (a3(i) .ne. 11) call abort
+ if (a3(i) .ne. 11) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/submodule_17.f08 b/gcc/testsuite/gfortran.dg/submodule_17.f08
index 8effef4b417..206ac9a6a7a 100644
--- a/gcc/testsuite/gfortran.dg/submodule_17.f08
+++ b/gcc/testsuite/gfortran.dg/submodule_17.f08
@@ -23,5 +23,5 @@ contains
end submodule
use hello_interface
- if (get() .ne. string) call abort
+ if (get() .ne. string) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/submodule_18.f08 b/gcc/testsuite/gfortran.dg/submodule_18.f08
index 14fac75635c..f8fa190b0c1 100644
--- a/gcc/testsuite/gfortran.dg/submodule_18.f08
+++ b/gcc/testsuite/gfortran.dg/submodule_18.f08
@@ -44,6 +44,6 @@ end submodule
use foo_interface
type(foo) :: a = foo (42)
type(foo) :: b = foo (99)
- if (a + b .ne. 141) call abort
- if (a * b .ne. 4158) call abort
+ if (a + b .ne. 141) STOP 1
+ if (a * b .ne. 4158) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/submodule_19.f08 b/gcc/testsuite/gfortran.dg/submodule_19.f08
index bc840081436..11ffa70c389 100644
--- a/gcc/testsuite/gfortran.dg/submodule_19.f08
+++ b/gcc/testsuite/gfortran.dg/submodule_19.f08
@@ -54,6 +54,6 @@ end submodule
use foo_interface
type(foo) :: a = foo (42)
type(foo) :: b = foo (99)
- if (a + b .ne. 141) call abort
- if (a * b .ne. 4158) call abort
+ if (a + b .ne. 141) STOP 1
+ if (a * b .ne. 4158) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/submodule_2.f08 b/gcc/testsuite/gfortran.dg/submodule_2.f08
index 43456d5fc4c..e9b4fcd4325 100644
--- a/gcc/testsuite/gfortran.dg/submodule_2.f08
+++ b/gcc/testsuite/gfortran.dg/submodule_2.f08
@@ -87,14 +87,14 @@
type (foo), dimension(:), allocatable :: arg
arg = array1(bar) ! typebound call
- if (any (arg%greeting .ne. ["adieu, world! ", "adieu, world! "])) call abort
+ if (any (arg%greeting .ne. ["adieu, world! ", "adieu, world! "])) STOP 1
deallocate (arg)
- if (trim (array2 (bar, arg)) .ne. "adieu, people!") call abort
+ if (trim (array2 (bar, arg)) .ne. "adieu, people!") STOP 2
deallocate (arg)
call array3 (bar, arg) ! typebound call
- if (any (arg%greeting .ne. ["adieu, world! ", "adieu, world! "])) call abort
+ if (any (arg%greeting .ne. ["adieu, world! ", "adieu, world! "])) STOP 3
deallocate (arg)
call array4 (bar, arg) ! typebound call
- if (any (arg%greeting .ne. ["adieu, people!", "adieu, people!"])) call abort
+ if (any (arg%greeting .ne. ["adieu, people!", "adieu, people!"])) STOP 4
contains
end program
diff --git a/gcc/testsuite/gfortran.dg/submodule_27.f08 b/gcc/testsuite/gfortran.dg/submodule_27.f08
index 1439c38cb9a..259eeb7ccff 100644
--- a/gcc/testsuite/gfortran.dg/submodule_27.f08
+++ b/gcc/testsuite/gfortran.dg/submodule_27.f08
@@ -40,5 +40,5 @@ end submodule m3clvg_sm3
external hello
greeting = "goodbye"
call cgca_clvgp (hello)
- if (trim (greeting) .ne. "hello") call abort
+ if (trim (greeting) .ne. "hello") STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/submodule_28.f08 b/gcc/testsuite/gfortran.dg/submodule_28.f08
index f7b10a6ed83..c07ea4580aa 100644
--- a/gcc/testsuite/gfortran.dg/submodule_28.f08
+++ b/gcc/testsuite/gfortran.dg/submodule_28.f08
@@ -48,5 +48,5 @@ program hello
use my_mod
implicit none
call routine1(2)
- if (answer .ne. 4) call abort
+ if (answer .ne. 4) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.dg/submodule_29.f08 b/gcc/testsuite/gfortran.dg/submodule_29.f08
index 98141cc700c..c959ade2b73 100644
--- a/gcc/testsuite/gfortran.dg/submodule_29.f08
+++ b/gcc/testsuite/gfortran.dg/submodule_29.f08
@@ -47,10 +47,10 @@ program test_submod_variable
i = 42
call write_i
read (buffer, *) j
- if (i .ne. 42) call abort
- if (j .ne. 137) call abort
+ if (i .ne. 42) STOP 1
+ if (j .ne. 137) STOP 2
call write_i_2
read (buffer, *) j
- if (i .ne. 42) call abort
- if (j .ne. 1037) call abort
+ if (i .ne. 42) STOP 3
+ if (j .ne. 1037) STOP 4
end program
diff --git a/gcc/testsuite/gfortran.dg/submodule_30.f08 b/gcc/testsuite/gfortran.dg/submodule_30.f08
index 25dcbebe656..7d59bab5271 100644
--- a/gcc/testsuite/gfortran.dg/submodule_30.f08
+++ b/gcc/testsuite/gfortran.dg/submodule_30.f08
@@ -36,7 +36,7 @@ program p_18_pos
write(*,*) 'OK'
else
write(*,*) 'FAIL'
- call abort
+ STOP 1
end if
end program p_18_pos
diff --git a/gcc/testsuite/gfortran.dg/submodule_6.f08 b/gcc/testsuite/gfortran.dg/submodule_6.f08
index ec9dfa9e725..0a5f5fb2c96 100644
--- a/gcc/testsuite/gfortran.dg/submodule_6.f08
+++ b/gcc/testsuite/gfortran.dg/submodule_6.f08
@@ -67,18 +67,18 @@ contains
type is (t_b)
this%b = q
class default
- call abort
+ STOP 1
end select
class default
- call abort
+ STOP 2
end select
end procedure p_a
module procedure print
select type (this)
type is (t_imp)
- if (any (this%b%i .ne. [3,4,5])) call abort
+ if (any (this%b%i .ne. [3,4,5])) STOP 3
class default
- call abort
+ STOP 4
end select
end procedure
end submodule imp_p_a
diff --git a/gcc/testsuite/gfortran.dg/submodule_7.f08 b/gcc/testsuite/gfortran.dg/submodule_7.f08
index fd1bee6296c..7d650bfff1d 100644
--- a/gcc/testsuite/gfortran.dg/submodule_7.f08
+++ b/gcc/testsuite/gfortran.dg/submodule_7.f08
@@ -98,16 +98,16 @@ contains
type(palette) :: MyPalette
call inquire_palette ( p, MyPalette )
! Added to example so that it does something.
- if (abs (p%x - real (p%color) * 1.0) .gt. 1.0e-6) call abort
- if (abs (p%y - real (p%color) * 2.0) .gt. 1.0e-6) call abort
+ if (abs (p%x - real (p%color) * 1.0) .gt. 1.0e-6) STOP 1
+ if (abs (p%y - real (p%color) * 2.0) .gt. 1.0e-6) STOP 2
end subroutine color_point_draw
! Invisible body for interface declared in the parent submodule
module procedure inquire_palette
!... implementation of inquire_palette
end procedure inquire_palette
module procedure verify_cleanup
- if (allocated (p1) .or. allocated (p2)) call abort
- if (instance_count .ne. 0) call abort
+ if (allocated (p1) .or. allocated (p2)) STOP 3
+ if (instance_count .ne. 0) STOP 4
end procedure
subroutine private_stuff ! not accessible from color_points_a
!...
@@ -137,7 +137,7 @@ program main
! in color_points, generic interface here.
!...
rc = color_point_dist (c_1, c_2) ! body in color_points_a, interface in color_points
- if (abs (rc - 2.23606801) .gt. 1.0e-6) call abort
+ if (abs (rc - 2.23606801) .gt. 1.0e-6) STOP 5
!...
call color_point_del (c_1)
call color_point_del (c_2)
diff --git a/gcc/testsuite/gfortran.dg/submodule_8.f08 b/gcc/testsuite/gfortran.dg/submodule_8.f08
index b3c1565bbd8..db47bd56e32 100644
--- a/gcc/testsuite/gfortran.dg/submodule_8.f08
+++ b/gcc/testsuite/gfortran.dg/submodule_8.f08
@@ -21,7 +21,7 @@ submodule (mod_a) mod_s
contains
module procedure p
if (i .ne. -2) then
- call abort
+ STOP 1
end if
end procedure
end submodule
@@ -38,6 +38,6 @@ program a_s
if (i==2) then
call p()
else
- call abort
+ STOP 2
end if
end program
diff --git a/gcc/testsuite/gfortran.dg/subnormal_1.f90 b/gcc/testsuite/gfortran.dg/subnormal_1.f90
index 4fbde58078b..d3897176c89 100644
--- a/gcc/testsuite/gfortran.dg/subnormal_1.f90
+++ b/gcc/testsuite/gfortran.dg/subnormal_1.f90
@@ -6,6 +6,6 @@ program chop
real x
x = 1.
if (tiny(x)/2. /= tiny(x)/2. - (nearest(tiny(x),1.) - tiny(x))/2.) then
- call abort
+ STOP 1
end if
end program chop
diff --git a/gcc/testsuite/gfortran.dg/subref_array_pointer_1.f90 b/gcc/testsuite/gfortran.dg/subref_array_pointer_1.f90
index 7bb0ff5e609..8db0942cb70 100644
--- a/gcc/testsuite/gfortran.dg/subref_array_pointer_1.f90
+++ b/gcc/testsuite/gfortran.dg/subref_array_pointer_1.f90
@@ -14,7 +14,7 @@ contains
b=(/"bbbb","bbbb","bbbb"/)
a=>b(:)(2:3)
a="aa"
- IF (ANY(b.NE.(/"baab","baab","baab"/))) CALL ABORT()
+ IF (ANY(b.NE.(/"baab","baab","baab"/))) STOP 1
END subroutine
subroutine pr29606
@@ -30,7 +30,7 @@ contains
ALLOCATE( array_holder%array(3) )
array_holder%array = (/ foo(1), foo(2), foo(3) /)
array_ptr => array_holder%array%value
- if (any (array_ptr .ne. (/1,2,3/))) call abort ()
+ if (any (array_ptr .ne. (/1,2,3/))) STOP 2
END subroutine
subroutine pr30625
@@ -42,7 +42,7 @@ contains
type(a), target :: dt(2)
integer, pointer :: ip(:)
ip => dt%i
- if (any (ip .ne. 42)) call abort ()
+ if (any (ip .ne. 42)) STOP 3
end subroutine
subroutine pr30871
@@ -54,6 +54,6 @@ contains
CHARACTER(LEN=1), DIMENSION(:), POINTER :: ptr
Z(:)%A="123"
ptr=>Z(:)%A(2:2)
- if (any (ptr .ne. "2")) call abort ()
+ if (any (ptr .ne. "2")) STOP 4
END subroutine
end
diff --git a/gcc/testsuite/gfortran.dg/subref_array_pointer_2.f90 b/gcc/testsuite/gfortran.dg/subref_array_pointer_2.f90
index e96d75507d9..f190fa8ca70 100644
--- a/gcc/testsuite/gfortran.dg/subref_array_pointer_2.f90
+++ b/gcc/testsuite/gfortran.dg/subref_array_pointer_2.f90
@@ -36,60 +36,60 @@
ptr => tar1%i
ptr = ptr + 1 ! check the scalarizer is OK
- if (any (ptr .ne. (/3, 5/))) call abort ()
- if (any ((/ptr(1), ptr(2)/) .ne. (/3, 5/))) call abort ()
- if (any (tar1%i .ne. (/3, 5/))) call abort ()
+ if (any (ptr .ne. (/3, 5/))) STOP 1
+ if (any ((/ptr(1), ptr(2)/) .ne. (/3, 5/))) STOP 2
+ if (any (tar1%i .ne. (/3, 5/))) STOP 3
! Make sure that the other components are not touched.
- if (any (tar1%r .ne. (/1.0, 3.0/))) call abort ()
- if (any (tar1%chr .ne. (/"abc", "efg"/))) call abort ()
+ if (any (tar1%r .ne. (/1.0, 3.0/))) STOP 4
+ if (any (tar1%chr .ne. (/"abc", "efg"/))) STOP 5
! Check that the pointer is passed correctly as an actual argument.
call foo (ptr)
- if (any (tar1%i .ne. (/2, 4/))) call abort ()
+ if (any (tar1%i .ne. (/2, 4/))) STOP 6
! And that dummy pointers are OK too.
call bar (ptr)
- if (any (tar1%i .ne. (/101, 103/))) call abort ()
+ if (any (tar1%i .ne. (/101, 103/))) STOP 7
!_______________substring subreference___________
ptr2 => tar2(:)(2:3)
ptr2 = ptr2(:)(2:2)//"z" ! again, check the scalarizer
- if (any (ptr2 .ne. (/"cz", "gz"/))) call abort ()
- if (any ((/ptr2(1), ptr2(2)/) .ne. (/"cz", "gz"/))) call abort ()
- if (any (tar2 .ne. (/"aczd", "egzh"/))) call abort ()
+ if (any (ptr2 .ne. (/"cz", "gz"/))) STOP 8
+ if (any ((/ptr2(1), ptr2(2)/) .ne. (/"cz", "gz"/))) STOP 9
+ if (any (tar2 .ne. (/"aczd", "egzh"/))) STOP 10
!_______________substring component subreference___________
ptr2 => tar1(:)%chr(1:2)
ptr2 = ptr2(:)(2:2)//"q" ! yet again, check the scalarizer
- if (any (ptr2 .ne. (/"bq","fq"/))) call abort ()
- if (any (tar1%chr .ne. (/"bqc","fqg"/))) call abort ()
+ if (any (ptr2 .ne. (/"bq","fq"/))) STOP 11
+ if (any (tar1%chr .ne. (/"bqc","fqg"/))) STOP 12
!_______________trailing array element subreference___________
ptr3 => tar5%r(1,2)
ptr3 = (/99.0, 999.0/)
- if (any (tar5(1)%r .ne. reshape ((/1.0,2.0,99.0,4.0/), sh))) call abort ()
- if (any (tar5(2)%r .ne. reshape ((/5.0,6.0,999.0,8.0/), sh))) call abort ()
+ if (any (tar5(1)%r .ne. reshape ((/1.0,2.0,99.0,4.0/), sh))) STOP 13
+ if (any (tar5(2)%r .ne. reshape ((/5.0,6.0,999.0,8.0/), sh))) STOP 14
!_______________forall assignment___________
ptr2 => tar2(:)(1:2)
forall (i = 1:2) ptr2(i)(1:1) = "z"
- if (any (tar2 .ne. (/"zczd", "zgzh"/))) call abort ()
+ if (any (tar2 .ne. (/"zczd", "zgzh"/))) STOP 15
!_______________something more complicated___________
tar3%t => tar1
ptr3 => tar3%t%r
ptr3 = cos (ptr3)
- if (any (abs(ptr3 - (/cos(1.0_4), cos(3.0_4)/)) >= epsilon(1.0_4))) call abort ()
+ if (any (abs(ptr3 - (/cos(1.0_4), cos(3.0_4)/)) >= epsilon(1.0_4))) STOP 16
ptr2 => tar3%t(:)%chr(2:3)
ptr2 = " x"
- if (any (tar1%chr .ne. (/"b x", "f x"/))) call abort ()
+ if (any (tar1%chr .ne. (/"b x", "f x"/))) STOP 17
!_______________check non-subref works still___________
ptr2 => tar4
- if (any (ptr2 .ne. (/"ab","cd"/))) call abort ()
+ if (any (ptr2 .ne. (/"ab","cd"/))) STOP 18
contains
subroutine foo (arg)
diff --git a/gcc/testsuite/gfortran.dg/subref_array_pointer_4.f90 b/gcc/testsuite/gfortran.dg/subref_array_pointer_4.f90
index 19edfdca98a..ed2e175a083 100644
--- a/gcc/testsuite/gfortran.dg/subref_array_pointer_4.f90
+++ b/gcc/testsuite/gfortran.dg/subref_array_pointer_4.f90
@@ -17,8 +17,8 @@ PROGRAM X
T1%X = SOURCE
P => T1%I
CALL Z(P)
- IF (ANY (T1%I .NE. [999, 2, 999, 4])) CALL ABORT
- IF (ANY (T1%X .NE. SOURCE)) CALL ABORT
+ IF (ANY (T1%I .NE. [999, 2, 999, 4])) STOP 1
+ IF (ANY (T1%X .NE. SOURCE)) STOP 2
CONTAINS
SUBROUTINE Z(Q)
INTEGER, POINTER :: Q(:)
diff --git a/gcc/testsuite/gfortran.dg/substr_2.f b/gcc/testsuite/gfortran.dg/substr_2.f
index a7e43b635e8..bd23cddb7e7 100644
--- a/gcc/testsuite/gfortran.dg/substr_2.f
+++ b/gcc/testsuite/gfortran.dg/substr_2.f
@@ -7,18 +7,18 @@
s = "abcdefghij"
t(:10) = s(1:)
s(6:5) = "foo"
- if (s /= t) call abort
+ if (s /= t) STOP 1
i = 2
j = -1
s(i:i+j) = "foo"
- if (s /= t) call abort
+ if (s /= t) STOP 2
i = 20
s(i+1:i) = "foo"
- if (s /= t) call abort
+ if (s /= t) STOP 3
s(6:5) = s(7:5)
- if (s /= t) call abort
+ if (s /= t) STOP 4
s = t(7:6)
- if (len(trim(s)) /= 0) call abort
- if (len(t(8:4)) /= 0) call abort
- if (len(trim(t(8:4))) /= 0) call abort
+ if (len(trim(s)) /= 0) STOP 5
+ if (len(t(8:4)) /= 0) STOP 6
+ if (len(trim(t(8:4))) /= 0) STOP 7
end
diff --git a/gcc/testsuite/gfortran.dg/substr_3.f b/gcc/testsuite/gfortran.dg/substr_3.f
index 3bb71972ff1..b7f396a17cf 100644
--- a/gcc/testsuite/gfortran.dg/substr_3.f
+++ b/gcc/testsuite/gfortran.dg/substr_3.f
@@ -8,5 +8,5 @@
t(:10) = s(1:)
s(16:15) = "foo"
s(0:-1) = "foo"
- if (s /= t) call abort
+ if (s /= t) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/substr_4.f b/gcc/testsuite/gfortran.dg/substr_4.f
index fadd5b32d2f..becddc9bdb4 100644
--- a/gcc/testsuite/gfortran.dg/substr_4.f
+++ b/gcc/testsuite/gfortran.dg/substr_4.f
@@ -19,13 +19,13 @@
zsymel(3)(lenstr(zsymel(3))+1:)='X'
write (buf,10) (trim(zsymelr(isym)),isym=1,znsymelr)
10 format(3(a,:,','))
- if (trim(buf) /= 'X,Y') call abort
+ if (trim(buf) /= 'X,Y') STOP 1
end subroutine check_zsymel
function lenstr(s)
character(len=*),intent(in) :: s
integer :: lenstr
- if (len_trim(s) /= 0) call abort
+ if (len_trim(s) /= 0) STOP 2
lenstr = len_trim(s)
end function lenstr
@@ -51,13 +51,13 @@
zsymel(3)(:lenstr(zsymel(3))+1)='X'
write (buf,20) (trim(zsymelr(isym)),isym=1,znsymelr)
20 format(3(a,:,','))
- if (trim(buf) /= 'X,Y') call abort
+ if (trim(buf) /= 'X,Y') STOP 3
end subroutine check_zsymel
function lenstr(s)
character(len=*),intent(in) :: s
integer :: lenstr
- if (len_trim(s) /= 0) call abort
+ if (len_trim(s) /= 0) STOP 4
lenstr = len_trim(s)
end function lenstr
diff --git a/gcc/testsuite/gfortran.dg/substr_5.f90 b/gcc/testsuite/gfortran.dg/substr_5.f90
index fb409ead952..77d4a70c569 100644
--- a/gcc/testsuite/gfortran.dg/substr_5.f90
+++ b/gcc/testsuite/gfortran.dg/substr_5.f90
@@ -4,19 +4,19 @@
character(*), parameter :: expr = '-+.0123456789eEdD'
integer :: i
- if (index(chrs(:), expr) /= 1) call abort
- if (index(chrs(14:), expr) /= 0) call abort
- if (index(chrs(:12), expr) /= 0) call abort
- if (index(chrs, expr(:)) /= 1) call abort
- if (index(chrs, expr(1:)) /= 1) call abort
- if (index(chrs, expr(:1)) /= 1) call abort
-
- if (foo(expr) /= 1) call abort
- if (foo(expr) /= 1) call abort
- if (foo(expr) /= 1) call abort
- if (foo(expr(:)) /= 1) call abort
- if (foo(expr(1:)) /= 1) call abort
- if (foo(expr(:1)) /= 1) call abort
+ if (index(chrs(:), expr) /= 1) STOP 1
+ if (index(chrs(14:), expr) /= 0) STOP 2
+ if (index(chrs(:12), expr) /= 0) STOP 3
+ if (index(chrs, expr(:)) /= 1) STOP 4
+ if (index(chrs, expr(1:)) /= 1) STOP 5
+ if (index(chrs, expr(:1)) /= 1) STOP 6
+
+ if (foo(expr) /= 1) STOP 7
+ if (foo(expr) /= 1) STOP 8
+ if (foo(expr) /= 1) STOP 9
+ if (foo(expr(:)) /= 1) STOP 10
+ if (foo(expr(1:)) /= 1) STOP 11
+ if (foo(expr(:1)) /= 1) STOP 12
call bar(expr)
@@ -26,12 +26,12 @@ contains
character(*), parameter :: chrs = '-+.0123456789eEdD'
integer :: foo
- if (index(chrs(:), expr) /= 1) call abort
- if (index(chrs(14:), expr) /= 0) call abort
- if (index(chrs(:12), expr) /= 0) call abort
- if (index(chrs, expr(:)) /= 1) call abort
- if (index(chrs, expr(1:)) /= 1) call abort
- if (index(chrs, expr(:1)) /= 1) call abort
+ if (index(chrs(:), expr) /= 1) STOP 13
+ if (index(chrs(14:), expr) /= 0) STOP 14
+ if (index(chrs(:12), expr) /= 0) STOP 15
+ if (index(chrs, expr(:)) /= 1) STOP 16
+ if (index(chrs, expr(1:)) /= 1) STOP 17
+ if (index(chrs, expr(:1)) /= 1) STOP 18
end subroutine bar
integer function foo(expr)
diff --git a/gcc/testsuite/gfortran.dg/substr_6.f90 b/gcc/testsuite/gfortran.dg/substr_6.f90
index a7cdc100ee6..83e788a55a6 100644
--- a/gcc/testsuite/gfortran.dg/substr_6.f90
+++ b/gcc/testsuite/gfortran.dg/substr_6.f90
@@ -7,10 +7,10 @@ CHARACTER*5 c(1)
CHARACTER(1), parameter :: c1(5) = (/ "1", "2", "3", ACHAR(0), "5" /)
c = c0(1)(-5:-8)
-if (c(1) /= " ") call abort()
+if (c(1) /= " ") STOP 1
c = (/ c0(1)(1:5) /)
do i=1,5
- if (c(1)(i:i) /= c1(i)) call abort()
+ if (c(1)(i:i) /= c1(i)) STOP 2
! Make NULs visible (and avoid corrupting text output).
if (c(1)(i:i) == ACHAR(0)) then
diff --git a/gcc/testsuite/gfortran.dg/substr_alloc_string_comp_1.f90 b/gcc/testsuite/gfortran.dg/substr_alloc_string_comp_1.f90
index 3a69a58fae3..5b1921d5d1a 100644
--- a/gcc/testsuite/gfortran.dg/substr_alloc_string_comp_1.f90
+++ b/gcc/testsuite/gfortran.dg/substr_alloc_string_comp_1.f90
@@ -18,6 +18,6 @@ program substr_derived_alloc_comp
x1%s = c
do i = 1, 36
- if (x1%s(i:) .ne. c(i:)) call abort
+ if (x1%s(i:) .ne. c(i:)) STOP 1
end do
end program
diff --git a/gcc/testsuite/gfortran.dg/sum_init_expr.f03 b/gcc/testsuite/gfortran.dg/sum_init_expr.f03
index f0cfe958b51..20fa8d52b2f 100644
--- a/gcc/testsuite/gfortran.dg/sum_init_expr.f03
+++ b/gcc/testsuite/gfortran.dg/sum_init_expr.f03
@@ -25,8 +25,8 @@
SUM( rmatrix_sum_d1 ) == rmatrix_sum])
LOGICAL, PARAMETER :: r_empty_sum = SUM(rmatrix, mask=.FALSE.) == 0.0
- IF (.NOT. ALL ([i_equal_sum, i_empty_sum])) CALL abort()
- IF (.NOT. ALL ([r_equal_sum, r_empty_sum])) CALL abort()
+ IF (.NOT. ALL ([i_equal_sum, i_empty_sum])) STOP 1
+ IF (.NOT. ALL ([r_equal_sum, r_empty_sum])) STOP 2
CALL ilib (imatrix, imatrix_sum)
CALL ilib_with_dim (imatrix, 1, imatrix_sum_d1)
@@ -39,27 +39,27 @@ CONTAINS
SUBROUTINE ilib (array, result)
INTEGER, DIMENSION(:,:), INTENT(in) :: array
INTEGER, INTENT(in) :: result
- IF (SUM(array) /= result) CALL abort()
+ IF (SUM(array) /= result) STOP 3
END SUBROUTINE
SUBROUTINE ilib_with_dim (array, dim, result)
INTEGER, DIMENSION(:,:), INTENT(in) :: array
INTEGER, INTENT(iN) :: dim
INTEGER, DIMENSION(:), INTENT(in) :: result
- IF (ANY (SUM (array, dim=dim) /= result)) CALL abort()
+ IF (ANY (SUM (array, dim=dim) /= result)) STOP 4
END SUBROUTINE
SUBROUTINE rlib (array, result)
REAL, DIMENSION(:,:), INTENT(in) :: array
REAL, INTENT(in) :: result
- IF (ABS(SUM(array) - result) > 4e-6) CALL abort()
+ IF (ABS(SUM(array) - result) > 4e-6) STOP 5
END SUBROUTINE
SUBROUTINE rlib_with_dim (array, dim, result)
REAL, DIMENSION(:,:), INTENT(in) :: array
INTEGER, INTENT(iN) :: dim
REAL, DIMENSION(:), INTENT(in) :: result
- IF (ANY (ABS(SUM (array, dim=dim) - result) > 4e-6)) CALL abort()
+ IF (ANY (ABS(SUM (array, dim=dim) - result) > 4e-6)) STOP 6
END SUBROUTINE
END
diff --git a/gcc/testsuite/gfortran.dg/sum_zero_array_1.f90 b/gcc/testsuite/gfortran.dg/sum_zero_array_1.f90
index b864bbf71a0..ec128d5cddf 100644
--- a/gcc/testsuite/gfortran.dg/sum_zero_array_1.f90
+++ b/gcc/testsuite/gfortran.dg/sum_zero_array_1.f90
@@ -7,7 +7,7 @@ program xzero
character (len=80) line
ll = .true.
write (unit=line, fmt="(I6)") sum(ii,dim=1)
- if (line /= " ") call abort
+ if (line /= " ") STOP 1
write (unit=line, fmt="(I6)") sum(ii,dim=1,mask=ll)
- if (line /= " ") call abort
+ if (line /= " ") STOP 2
end program xzero
diff --git a/gcc/testsuite/gfortran.dg/system_clock_3.f08 b/gcc/testsuite/gfortran.dg/system_clock_3.f08
index 7b822441d53..e52a51a7da4 100644
--- a/gcc/testsuite/gfortran.dg/system_clock_3.f08
+++ b/gcc/testsuite/gfortran.dg/system_clock_3.f08
@@ -8,15 +8,15 @@ program countem
real(4) :: rrate4
call system_clock(count=count1, count_rate=irate4, count_max=mymax4)
- if (count1.ne.-127.or.irate4.ne.0.or.mymax4.ne.0) call abort
+ if (count1.ne.-127.or.irate4.ne.0.or.mymax4.ne.0) STOP 1
call system_clock(count=count1, count_rate=rrate4, count_max=mymax1)
- if (count1.ne.-127.or.rrate4.ne.0.0.or.mymax4.ne.0) call abort
+ if (count1.ne.-127.or.rrate4.ne.0.0.or.mymax4.ne.0) STOP 2
call system_clock(count=count2, count_rate=irate2, count_max=mymax2)
- if (count2.ne.-32767.or.irate2.ne.0.or.mymax2.ne.0) call abort
+ if (count2.ne.-32767.or.irate2.ne.0.or.mymax2.ne.0) STOP 3
call system_clock(count=count2, count_rate=rrate4, count_max=mymax2)
- if (count2.ne.-32767.or.rrate4.ne.0.0.or.mymax2.ne.0) call abort
+ if (count2.ne.-32767.or.rrate4.ne.0.0.or.mymax2.ne.0) STOP 4
call system_clock(count=count4, count_rate=irate4, count_max=mymax4)
- if (irate4.ne.1000.or.mymax4.ne.huge(0_4)) call abort
+ if (irate4.ne.1000.or.mymax4.ne.huge(0_4)) STOP 5
call system_clock(count=count4, count_rate=rrate4, count_max=mymax4)
- if (rrate4.ne.1000.0.or.mymax4.ne.huge(0_4)) call abort
+ if (rrate4.ne.1000.0.or.mymax4.ne.huge(0_4)) STOP 6
end program countem
diff --git a/gcc/testsuite/gfortran.dg/t_editing.f b/gcc/testsuite/gfortran.dg/t_editing.f
index 6121e85845a..7f876151626 100644
--- a/gcc/testsuite/gfortran.dg/t_editing.f
+++ b/gcc/testsuite/gfortran.dg/t_editing.f
@@ -4,5 +4,5 @@
program main
character(len=10) line
write (line,'(1X,A,T1,A)') 'A','B'
- if (line.ne.'BA') call abort()
+ if (line.ne.'BA') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/team_change_1.f90 b/gcc/testsuite/gfortran.dg/team_change_1.f90
index 1dd42082b04..2e72527073b 100644
--- a/gcc/testsuite/gfortran.dg/team_change_1.f90
+++ b/gcc/testsuite/gfortran.dg/team_change_1.f90
@@ -12,7 +12,7 @@
form team (new_team,team)
change team (team)
- if (team_number()/=new_team) call abort
+ if (team_number()/=new_team) STOP 1
end team
end
diff --git a/gcc/testsuite/gfortran.dg/team_end_1.f90 b/gcc/testsuite/gfortran.dg/team_end_1.f90
index 5a05b7fc87d..02faca45a87 100644
--- a/gcc/testsuite/gfortran.dg/team_end_1.f90
+++ b/gcc/testsuite/gfortran.dg/team_end_1.f90
@@ -14,5 +14,5 @@
end team
end associate
- if (team_number()/=standard_initial_value) call abort
+ if (team_number()/=standard_initial_value) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/team_number_1.f90 b/gcc/testsuite/gfortran.dg/team_number_1.f90
index 242ea507088..e44e17b644b 100644
--- a/gcc/testsuite/gfortran.dg/team_number_1.f90
+++ b/gcc/testsuite/gfortran.dg/team_number_1.f90
@@ -9,14 +9,14 @@
integer, parameter :: standard_initial_value=-1
integer new_team
- if (team_number()/=standard_initial_value) call abort
+ if (team_number()/=standard_initial_value) STOP 1
new_team = mod(this_image(),2)+1
form team (new_team,team)
change team (team)
- if (team_number()/=new_team) call abort
+ if (team_number()/=new_team) STOP 2
end team
- if (team_number()/=standard_initial_value) call abort
+ if (team_number()/=standard_initial_value) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/temporary_1.f90 b/gcc/testsuite/gfortran.dg/temporary_1.f90
index 7bdf08d2984..20f88fa9c87 100644
--- a/gcc/testsuite/gfortran.dg/temporary_1.f90
+++ b/gcc/testsuite/gfortran.dg/temporary_1.f90
@@ -12,7 +12,7 @@ program pr27662
z = matmul (x, transpose (test ()))
do i = 1, size (x, 1)
do j = 1, size (x, 2)
- if (x (i, j) .ne. z (i, j)) call abort ()
+ if (x (i, j) .ne. z (i, j)) STOP 1
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/test_com_block.f90 b/gcc/testsuite/gfortran.dg/test_com_block.f90
index df3f643e72d..ffdd5733dbc 100644
--- a/gcc/testsuite/gfortran.dg/test_com_block.f90
+++ b/gcc/testsuite/gfortran.dg/test_com_block.f90
@@ -24,9 +24,9 @@ program testComBlock
! r and s are reals (default size) in com block, set to
! 1.0 and 2.0, respectively, in hello()
if(r .ne. 1.0) then
- call abort()
+ STOP 1
endif
if(s .ne. 2.0) then
- call abort()
+ STOP 2
endif
end program testComBlock
diff --git a/gcc/testsuite/gfortran.dg/test_only_clause.f90 b/gcc/testsuite/gfortran.dg/test_only_clause.f90
index 7c63e2be167..1de2801c6a9 100644
--- a/gcc/testsuite/gfortran.dg/test_only_clause.f90
+++ b/gcc/testsuite/gfortran.dg/test_only_clause.f90
@@ -14,7 +14,7 @@ module testOnlyClause
! f90IntPtr coming in has value of -11; this will make it -12
f90IntPtr = f90IntPtr - 1
if(f90IntPtr .ne. -12) then
- call abort()
+ STOP 1
endif
end subroutine testOnly
end module testOnlyClause
diff --git a/gcc/testsuite/gfortran.dg/tiny_1.f90 b/gcc/testsuite/gfortran.dg/tiny_1.f90
index e8bfb2d8994..b54675b4f4d 100644
--- a/gcc/testsuite/gfortran.dg/tiny_1.f90
+++ b/gcc/testsuite/gfortran.dg/tiny_1.f90
@@ -4,6 +4,6 @@
program tiny1
real(4) x4
real(8) x8
- if (minexponent(x4) /= exponent(tiny(x4))) call abort
- if (minexponent(x8) /= exponent(tiny(x8))) call abort
+ if (minexponent(x4) /= exponent(tiny(x4))) STOP 1
+ if (minexponent(x8) /= exponent(tiny(x8))) STOP 2
end program tiny1
diff --git a/gcc/testsuite/gfortran.dg/tiny_2.f90 b/gcc/testsuite/gfortran.dg/tiny_2.f90
index 194e6cd3109..b6c44e2ae0c 100644
--- a/gcc/testsuite/gfortran.dg/tiny_2.f90
+++ b/gcc/testsuite/gfortran.dg/tiny_2.f90
@@ -4,6 +4,6 @@ program tiny2
real(8) x8
x4 = tiny(x4)
x8 = tiny(x8)
- if (minexponent(x4) /= exponent(x4)) call abort
- if (minexponent(x8) /= exponent(x8)) call abort
+ if (minexponent(x4) /= exponent(x4)) STOP 1
+ if (minexponent(x8) /= exponent(x8)) STOP 2
end program tiny2
diff --git a/gcc/testsuite/gfortran.dg/tl_editing.f90 b/gcc/testsuite/gfortran.dg/tl_editing.f90
index 830c7eb71bd..509c43e135b 100644
--- a/gcc/testsuite/gfortran.dg/tl_editing.f90
+++ b/gcc/testsuite/gfortran.dg/tl_editing.f90
@@ -14,21 +14,21 @@ program tl_editting
! Character unit test
write (line, '(a10,tl6,2x,a2)') aline, bline
- if (line.ne.cline) call abort ()
+ if (line.ne.cline) STOP 1
! Character array unit test
many = "0123456789"
write(many(1:5:2), '(a10,tl6,2x,a2)') aline, bline, aline, bline, aline,&
&bline
- if (many(1).ne.cline) call abort ()
- if (many(3).ne.cline) call abort ()
- if (many(5).ne.cline) call abort ()
+ if (many(1).ne.cline) STOP 2
+ if (many(3).ne.cline) STOP 3
+ if (many(5).ne.cline) STOP 4
! File unit test
write (10, '(a10,tl6,2x,a2)') aline, bline
rewind(10)
read(10, '(a)') s
- if (s.ne.cline) call abort
+ if (s.ne.cline) STOP 1
close(10, status='delete')
end program tl_editting
diff --git a/gcc/testsuite/gfortran.dg/transfer_array_intrinsic_1.f90 b/gcc/testsuite/gfortran.dg/transfer_array_intrinsic_1.f90
index 0d828efa66b..7a24b3e6f26 100644
--- a/gcc/testsuite/gfortran.dg/transfer_array_intrinsic_1.f90
+++ b/gcc/testsuite/gfortran.dg/transfer_array_intrinsic_1.f90
@@ -16,7 +16,7 @@ contains
! The PR testcase.
cmp = transfer (z, cmp) * 2.0
- if (any (cmp .ne. (/2.0, 4.0/))) call abort ()
+ if (any (cmp .ne. (/2.0, 4.0/))) STOP 1
end subroutine test1
diff --git a/gcc/testsuite/gfortran.dg/transfer_array_intrinsic_2.f90 b/gcc/testsuite/gfortran.dg/transfer_array_intrinsic_2.f90
index ad2293d1e04..f3d86ef3a39 100644
--- a/gcc/testsuite/gfortran.dg/transfer_array_intrinsic_2.f90
+++ b/gcc/testsuite/gfortran.dg/transfer_array_intrinsic_2.f90
@@ -37,7 +37,7 @@ contains
a = reshape ((/(rand (), i = 1, 16)/), (/4,4/))
jt = transfer (a, it)
it = reshape (jt, (/4, 2, 4/))
- if (any (reshape (transfer (it, a), (/4,4/)) .ne. a)) call abort ()
+ if (any (reshape (transfer (it, a), (/4,4/)) .ne. a)) STOP 1
end subroutine test1
@@ -58,38 +58,38 @@ contains
ch = "wxyz"
ch(1:2) = transfer (y(2:4:2), ch)
- if (any (ch(1:2) .ne. (/"EFGH","MNOP"/))) call abort ()
+ if (any (ch(1:2) .ne. (/"EFGH","MNOP"/))) STOP 2
ch = "wxyz"
ch(1:2) = transfer (y(4:2:-2), ch)
- if (any (ch(1:2) .ne. (/"MNOP","EFGH"/))) call abort ()
+ if (any (ch(1:2) .ne. (/"MNOP","EFGH"/))) STOP 3
! Check that a complete array transfers with size absent.
ch = transfer (y, ch)
- if (any (ch .ne. (/"ABCD","EFGH","IJKL","MNOP"/))) call abort ()
+ if (any (ch .ne. (/"ABCD","EFGH","IJKL","MNOP"/))) STOP 4
! Check that a character array section is OK
z = transfer (ch(2:3), y)
- if (any (z .ne. y(2:3))) call abort ()
+ if (any (z .ne. y(2:3))) STOP 5
! Check dest array sections in both directions.
ch = "wxyz"
ch(3:4) = transfer (y, ch, 2)
- if (any (ch(3:4) .ne. (/"ABCD","EFGH"/))) call abort ()
+ if (any (ch(3:4) .ne. (/"ABCD","EFGH"/))) STOP 6
ch = "wxyz"
ch(3:2:-1) = transfer (y, ch, 2)
- if (any (ch(2:3) .ne. (/"EFGH","ABCD"/))) call abort ()
+ if (any (ch(2:3) .ne. (/"EFGH","ABCD"/))) STOP 7
! Make sure that character to numeric is OK.
ch = "wxyz"
ch(1:2) = transfer (y, ch, 2)
- if (any (ch(1:2) .ne. (/"ABCD","EFGH"/))) call abort ()
+ if (any (ch(1:2) .ne. (/"ABCD","EFGH"/))) STOP 8
z = transfer (ch, y, 2)
- if (any (y(1:2) .ne. z)) call abort ()
+ if (any (y(1:2) .ne. z)) STOP 9
end subroutine test2
@@ -104,15 +104,15 @@ contains
! Check assumed shape.
- if (any (ic .ne. transfer (ch1, ic))) call abort ()
+ if (any (ic .ne. transfer (ch1, ic))) STOP 10
! Check assumed character length.
- if (any (ic .ne. transfer (ch2, ic))) call abort ()
+ if (any (ic .ne. transfer (ch2, ic))) STOP 11
! Check automatic character length.
- if (any (ic .ne. transfer (ch3, ic))) call abort ()
+ if (any (ic .ne. transfer (ch3, ic))) STOP 12
end subroutine test3
diff --git a/gcc/testsuite/gfortran.dg/transfer_array_intrinsic_3.f90 b/gcc/testsuite/gfortran.dg/transfer_array_intrinsic_3.f90
index b97e840a468..81e6981bbb7 100644
--- a/gcc/testsuite/gfortran.dg/transfer_array_intrinsic_3.f90
+++ b/gcc/testsuite/gfortran.dg/transfer_array_intrinsic_3.f90
@@ -28,9 +28,9 @@ function NumOccurances (string, chr, isel) result(n)
return
end
- if (NumOccurances("abacadae", "a", 1) .ne. 4) call abort ()
- if (NumOccurances("abacadae", "a", 2) .ne. 4) call abort ()
- if (NumOccurances("abacadae", "a", 3) .ne. 4) call abort ()
- if (NumOccurances("abacadae", "a", 4) .ne. 4) call abort ()
- if (NumOccurances("abacadae", "a", 5) .ne. 4) call abort ()
+ if (NumOccurances("abacadae", "a", 1) .ne. 4) STOP 1
+ if (NumOccurances("abacadae", "a", 2) .ne. 4) STOP 2
+ if (NumOccurances("abacadae", "a", 3) .ne. 4) STOP 3
+ if (NumOccurances("abacadae", "a", 4) .ne. 4) STOP 4
+ if (NumOccurances("abacadae", "a", 5) .ne. 4) STOP 5
end
diff --git a/gcc/testsuite/gfortran.dg/transfer_array_intrinsic_4.f90 b/gcc/testsuite/gfortran.dg/transfer_array_intrinsic_4.f90
index 3a929a81446..7d8313c3947 100644
--- a/gcc/testsuite/gfortran.dg/transfer_array_intrinsic_4.f90
+++ b/gcc/testsuite/gfortran.dg/transfer_array_intrinsic_4.f90
@@ -16,12 +16,12 @@ program trf_test
ia = TRANSFER (s1, (/ 0_4 /))
s2 = TRANSFER(ba + 32_1, s2)
- if (s2 .ne. 'abcdefghijk') call abort ()
+ if (s2 .ne. 'abcdefghijk') STOP 1
s1 = 'AB'
ba = TRANSFER (trim (s1)//' JK' , (/ 0_1 /))
s2 = TRANSFER(ia, s2)
- if (trim (s1)//' JK' .ne. s2) call abort ()
+ if (trim (s1)//' JK' .ne. s2) STOP 2
end program trf_test
diff --git a/gcc/testsuite/gfortran.dg/transfer_assumed_size_1.f90 b/gcc/testsuite/gfortran.dg/transfer_assumed_size_1.f90
index c1485a65cf5..c569de6f9e7 100644
--- a/gcc/testsuite/gfortran.dg/transfer_assumed_size_1.f90
+++ b/gcc/testsuite/gfortran.dg/transfer_assumed_size_1.f90
@@ -39,5 +39,5 @@ program main
use TransferBug
character(len=100) :: str
call BytesToString( StringToBytes('Hi'), str )
- if (trim(str) .ne. "Hi") call abort ()
+ if (trim(str) .ne. "Hi") STOP 1
end program
diff --git a/gcc/testsuite/gfortran.dg/transfer_class_2.f90 b/gcc/testsuite/gfortran.dg/transfer_class_2.f90
index 476eaccc709..ee48983d1bb 100644
--- a/gcc/testsuite/gfortran.dg/transfer_class_2.f90
+++ b/gcc/testsuite/gfortran.dg/transfer_class_2.f90
@@ -33,11 +33,11 @@ program p
! (1) check CLASS-to-TYPE transfer
c%i=3
t = transfer(c, t)
- if (t%i /= 3) call abort()
+ if (t%i /= 3) STOP 1
! (2) check TYPE-to-CLASS transfer
t%i=4
c = transfer(t, c)
- if (c%i /= 4) call abort()
+ if (c%i /= 4) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/transfer_intrinsic_2.f90 b/gcc/testsuite/gfortran.dg/transfer_intrinsic_2.f90
index 686c0605df2..5edbfad24d3 100644
--- a/gcc/testsuite/gfortran.dg/transfer_intrinsic_2.f90
+++ b/gcc/testsuite/gfortran.dg/transfer_intrinsic_2.f90
@@ -9,13 +9,13 @@
character(len = 1) :: string = "z"
character(len = 20) :: tmp = ""
tmp = Upper ("abcdefgh")
- if (trim(tmp) .ne. "ab") call abort ()
+ if (trim(tmp) .ne. "ab") STOP 1
contains
Character (len = 20) Function Upper (string)
Character(len = *) string
integer :: ij
i = size (transfer (string,"xy",len (string)))
- if (i /= len (string)) call abort ()
+ if (i /= len (string)) STOP 2
Upper = ""
Upper(1:2) = &
transfer (merge (transfer (string,"xy",len (string)), &
diff --git a/gcc/testsuite/gfortran.dg/transfer_intrinsic_3.f90 b/gcc/testsuite/gfortran.dg/transfer_intrinsic_3.f90
index d993da25d8d..ae169fe4e25 100644
--- a/gcc/testsuite/gfortran.dg/transfer_intrinsic_3.f90
+++ b/gcc/testsuite/gfortran.dg/transfer_intrinsic_3.f90
@@ -16,9 +16,9 @@ contains
character(len=*), intent(in) :: uri, localname
integer, intent(in) :: n
if ((n .lt. 2) .and. (len (uri) .ne. 0)) then
- call abort
+ STOP 1
else IF ((n .ge. 2) .and. (len (uri) .ne. n - 1)) then
- call abort
+ STOP 2
end if
end subroutine
end module m
diff --git a/gcc/testsuite/gfortran.dg/transfer_intrinsic_5.f90 b/gcc/testsuite/gfortran.dg/transfer_intrinsic_5.f90
index 47be585a78a..70faa1374c7 100644
--- a/gcc/testsuite/gfortran.dg/transfer_intrinsic_5.f90
+++ b/gcc/testsuite/gfortran.dg/transfer_intrinsic_5.f90
@@ -44,7 +44,7 @@ contains
c = transfer (b, c)
if (c /= s) then
print *, "c=", c, " ", merge (" ok","BUG!", c == s)
- call abort ()
+ STOP 1
end if
end subroutine cmp
end program gfcbug
diff --git a/gcc/testsuite/gfortran.dg/transfer_resolve_1.f90 b/gcc/testsuite/gfortran.dg/transfer_resolve_1.f90
index 8d326a186a4..52afdf1592d 100644
--- a/gcc/testsuite/gfortran.dg/transfer_resolve_1.f90
+++ b/gcc/testsuite/gfortran.dg/transfer_resolve_1.f90
@@ -6,7 +6,7 @@
!
program test_elemental
-if (any (transfer_size((/0.,0./),(/'a','b'/)) .ne. [4 ,4])) call abort
+if (any (transfer_size((/0.,0./),(/'a','b'/)) .ne. [4 ,4])) STOP 1
contains
diff --git a/gcc/testsuite/gfortran.dg/transfer_simplify_1.f90 b/gcc/testsuite/gfortran.dg/transfer_simplify_1.f90
index 8a3340aae90..b62aad4d284 100644
--- a/gcc/testsuite/gfortran.dg/transfer_simplify_1.f90
+++ b/gcc/testsuite/gfortran.dg/transfer_simplify_1.f90
@@ -25,7 +25,7 @@ contains
type (t), parameter :: u = t (42)
integer, parameter :: idx_list(1) = (/ 1 /)
integer :: j(1) = transfer (u, idx_list)
- if (j(1) .ne. 42) call abort ()
+ if (j(1) .ne. 42) STOP 1
end subroutine pr18769
subroutine pr30881 ()
@@ -38,17 +38,17 @@ contains
SELECT CASE(I)
CASE(TRANSFER(.TRUE.,K))
CASE(TRANSFER(.FALSE.,K))
- CALL ABORT()
+ STOP 2
CASE DEFAULT
- CALL ABORT()
+ STOP 3
END SELECT
I=TRANSFER(.FALSE.,K)
SELECT CASE(I)
CASE(TRANSFER(.TRUE.,K))
- CALL ABORT()
+ STOP 4
CASE(TRANSFER(.FALSE.,K))
CASE DEFAULT
- CALL ABORT()
+ STOP 5
END SELECT
END subroutine pr30881
@@ -58,7 +58,7 @@ contains
!
real(kind(0d0)) :: NaN = transfer(ishft(int(z'FFF80000',8),32),0d0)
write (buffer,'(e12.5)') NaN
- if (buffer(10:12) .ne. "NaN") call abort ()
+ if (buffer(10:12) .ne. "NaN") STOP 6
end subroutine pr31194
subroutine pr31216 ()
@@ -73,7 +73,7 @@ contains
SELECT CASE(I)
CASE (TRANSFER(1.0/3.0,1))
CASE DEFAULT
- CALL ABORT()
+ STOP 7
END SELECT
END subroutine pr31216
@@ -83,6 +83,6 @@ contains
!
INTEGER(KIND=1) :: i(1)
i = (/ TRANSFER("a", 0_1) /)
- if (i(1) .ne. ichar ("a")) call abort ()
+ if (i(1) .ne. ichar ("a")) STOP 8
END subroutine pr31427
end program simplify_transfer
diff --git a/gcc/testsuite/gfortran.dg/transfer_simplify_10.f90 b/gcc/testsuite/gfortran.dg/transfer_simplify_10.f90
index 3a56e65a6cc..b368db3135f 100644
--- a/gcc/testsuite/gfortran.dg/transfer_simplify_10.f90
+++ b/gcc/testsuite/gfortran.dg/transfer_simplify_10.f90
@@ -29,6 +29,6 @@ program test5
.or. int(z'6E74656C') /= result%ecx &
.or. int(z'61626364') /= result%bbb)) then
write(*,'(5(z8.8:1x))') result
- call abort()
+ STOP 1
end if
end program test5
diff --git a/gcc/testsuite/gfortran.dg/transfer_simplify_11.f90 b/gcc/testsuite/gfortran.dg/transfer_simplify_11.f90
index ce7a4ad5e56..0911f9dba3a 100644
--- a/gcc/testsuite/gfortran.dg/transfer_simplify_11.f90
+++ b/gcc/testsuite/gfortran.dg/transfer_simplify_11.f90
@@ -4,5 +4,5 @@
integer, parameter :: N = 2
character(len=1) :: chr(N)
chr = transfer(repeat("x",ncopies=N),[character(len=1) ::], N)
- if (chr(1) /= 'x' .and. chr(2) /= 'x') call abort
+ if (chr(1) /= 'x' .and. chr(2) /= 'x') STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/transfer_simplify_2.f90 b/gcc/testsuite/gfortran.dg/transfer_simplify_2.f90
index 46052d0a0ec..e0f3f94c4ca 100644
--- a/gcc/testsuite/gfortran.dg/transfer_simplify_2.f90
+++ b/gcc/testsuite/gfortran.dg/transfer_simplify_2.f90
@@ -27,7 +27,7 @@ contains
real(4) :: r2
r2 = transfer (i2, r2);
- if (r1 .ne. r2) call abort ()
+ if (r1 .ne. r2) STOP 1
end subroutine integer4_to_real4
subroutine real4_to_integer8
@@ -37,7 +37,7 @@ contains
integer(8) :: i2
i2 = transfer (r2, 1_8);
- if (i1 .ne. i2) call abort ()
+ if (i1 .ne. i2) STOP 2
end subroutine real4_to_integer8
subroutine integer4_to_integer8
@@ -47,7 +47,7 @@ contains
integer(8) :: i4
i4 = transfer (i2, 1_8);
- if (i3 .ne. i4) call abort ()
+ if (i3 .ne. i4) STOP 3
end subroutine integer4_to_integer8
subroutine logical4_to_real8
@@ -57,7 +57,7 @@ contains
real(8) :: r2
r2 = transfer (l2, 1_8);
- if (r1 .ne. r2) call abort ()
+ if (r1 .ne. r2) STOP 4
end subroutine logical4_to_real8
subroutine real8_to_integer4
@@ -67,7 +67,7 @@ contains
integer(4) :: i2(2)
i2 = transfer (r2, i2, 2);
- if (any (i1 .ne. i2)) call abort ()
+ if (any (i1 .ne. i2)) STOP 5
end subroutine real8_to_integer4
subroutine integer8_to_real4
@@ -78,7 +78,7 @@ contains
real(4) :: r2(4)
r2 = transfer (i2, r2);
- if (any (r1 .ne. r2)) call abort ()
+ if (any (r1 .ne. r2)) STOP 6
end subroutine integer8_to_real4
subroutine integer8_to_complex4
@@ -89,7 +89,7 @@ contains
complex(4) :: z2(2)
z2 = transfer (i2, z2);
- if (any (z1 .ne. z2)) call abort ()
+ if (any (z1 .ne. z2)) STOP 7
end subroutine integer8_to_complex4
subroutine character16_to_complex8
@@ -99,7 +99,7 @@ contains
complex(8) :: z2(2)
z2 = transfer (c2, z2, 2);
- if (any (z1 .ne. z2)) call abort ()
+ if (any (z1 .ne. z2)) STOP 8
end subroutine character16_to_complex8
subroutine character16_to_real8
@@ -109,7 +109,7 @@ contains
real(8) :: r2(2)
r2 = transfer (c2, r2, 2);
- if (any (r1 .ne. r2)) call abort ()
+ if (any (r1 .ne. r2)) STOP 9
end subroutine character16_to_real8
subroutine real8_to_character2
@@ -119,7 +119,7 @@ contains
character(2) :: c2(4)
c2 = transfer (r2, "ab", 4);
- if (any (c1 .ne. c2)) call abort ()
+ if (any (c1 .ne. c2)) STOP 10
end subroutine real8_to_character2
subroutine dt_to_integer1
@@ -135,7 +135,7 @@ contains
integer(1) :: i3(32)
i3 = transfer (dt2, 1_1, 32);
- if (any (i2 .ne. i3)) call abort ()
+ if (any (i2 .ne. i3)) STOP 11
end subroutine dt_to_integer1
subroutine character16_to_dt
@@ -149,8 +149,8 @@ contains
type (mytype) :: dt2(2)
dt2 = transfer (c2, dt2);
- if (any (dt1(1)%x .ne. dt2(1)%x)) call abort ()
- if (any (dt1(2)%x .ne. dt2(2)%x)) call abort ()
+ if (any (dt1(1)%x .ne. dt2(1)%x)) STOP 12
+ if (any (dt1(2)%x .ne. dt2(2)%x)) STOP 13
end subroutine character16_to_dt
end
diff --git a/gcc/testsuite/gfortran.dg/transfer_simplify_3.f90 b/gcc/testsuite/gfortran.dg/transfer_simplify_3.f90
index 43ca1972628..d4592341898 100644
--- a/gcc/testsuite/gfortran.dg/transfer_simplify_3.f90
+++ b/gcc/testsuite/gfortran.dg/transfer_simplify_3.f90
@@ -28,26 +28,26 @@ PROGRAM TestInfinite
! not portable, replaced by:
bit_pattern_NegInf_i8_hex = ibset(bit_pattern_PosInf_i8_hex,63)
- if (bit_pattern_NegInf_i8_hex /= bit_pattern_NegInf_i8) call abort()
- if (bit_pattern_PosInf_i8_hex /= bit_pattern_PosInf_i8) call abort()
+ if (bit_pattern_NegInf_i8_hex /= bit_pattern_NegInf_i8) STOP 1
+ if (bit_pattern_PosInf_i8_hex /= bit_pattern_PosInf_i8) STOP 2
r = transfer(bit_pattern_PosInf_i8,r)
- if (r /= 1.0_r8_/0.0_r8_) call abort()
+ if (r /= 1.0_r8_/0.0_r8_) STOP 3
i = transfer(r,i)
- if (bit_pattern_PosInf_i8 /= i) call abort()
+ if (bit_pattern_PosInf_i8 /= i) STOP 4
r = transfer(bit_pattern_NegInf_i8,r)
- if (r /= -1.0_r8_/0.0_r8_) call abort()
+ if (r /= -1.0_r8_/0.0_r8_) STOP 5
i = transfer(r,i)
- if (bit_pattern_NegInf_i8 /= i) call abort()
+ if (bit_pattern_NegInf_i8 /= i) STOP 6
r = transfer(bit_pattern_PosInf_i8_p,r)
- if (r /= 1.0_r8_/0.0_r8_) call abort()
+ if (r /= 1.0_r8_/0.0_r8_) STOP 7
i = transfer(r,i)
- if (bit_pattern_PosInf_i8_p /= i) call abort()
+ if (bit_pattern_PosInf_i8_p /= i) STOP 8
r = transfer(bit_pattern_NegInf_i8_p,r)
- if (r /= -1.0_r8_/0.0_r8_) call abort()
+ if (r /= -1.0_r8_/0.0_r8_) STOP 9
i = transfer(r,i)
- if (bit_pattern_NegInf_i8_p /= i) call abort()
+ if (bit_pattern_NegInf_i8_p /= i) STOP 10
END PROGRAM TestInfinite
diff --git a/gcc/testsuite/gfortran.dg/transfer_simplify_4.f90 b/gcc/testsuite/gfortran.dg/transfer_simplify_4.f90
index 65b1e41cfdf..480c93694fd 100644
--- a/gcc/testsuite/gfortran.dg/transfer_simplify_4.f90
+++ b/gcc/testsuite/gfortran.dg/transfer_simplify_4.f90
@@ -9,20 +9,20 @@
integer :: i, ai(4)
logical :: b
- if (ip2 .ne. ip1) call abort ()
+ if (ip2 .ne. ip1) STOP 1
i = transfer(transfer(ip1, .true.), 0)
- if (i .ne. ip1) call abort ()
+ if (i .ne. ip1) STOP 2
i = 42
i = transfer(transfer(i, .true.), 0)
- if (i .ne. ip1) call abort ()
+ if (i .ne. ip1) STOP 3
b = transfer(transfer(.true., 3.1415), .true.)
- if (.not.b) call abort ()
+ if (.not.b) STOP 4
b = transfer(transfer(.false., 3.1415), .true.)
- if (b) call abort ()
+ if (b) STOP 5
i = 0
b = transfer(i, .true.)
@@ -31,9 +31,9 @@
ai = (/ 42, 42, 42, 42 /)
ai = transfer (transfer (ai, .false., 4), ai)
- if (any(ai .ne. 42)) call abort
+ if (any(ai .ne. 42)) STOP 1
ai = transfer (transfer ((/ 42, 42, 42, 42 /), &
& (/ .false., .false., .false., .false. /)), ai)
- if (any(ai .ne. 42)) call abort
+ if (any(ai .ne. 42)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/transfer_simplify_8.f90 b/gcc/testsuite/gfortran.dg/transfer_simplify_8.f90
index 75b084670ac..07edb3f9bba 100644
--- a/gcc/testsuite/gfortran.dg/transfer_simplify_8.f90
+++ b/gcc/testsuite/gfortran.dg/transfer_simplify_8.f90
@@ -10,9 +10,9 @@
character(8) :: a
allocate(ptr(9))
ptr = transfer('Sample#0'//achar(0),ptr) ! Causes ICE
- if (any (ptr .ne. ['S','a','m','p','l','e','#','0',achar(0)])) call abort
+ if (any (ptr .ne. ['S','a','m','p','l','e','#','0',achar(0)])) STOP 1
call test(a)
- if (a .ne. 'Sample#2') call abort
+ if (a .ne. 'Sample#2') STOP 2
contains
subroutine test(a)
character(len=*) :: a
diff --git a/gcc/testsuite/gfortran.dg/transfer_simplify_9.f90 b/gcc/testsuite/gfortran.dg/transfer_simplify_9.f90
index 02b86111b2b..f677426a6d0 100644
--- a/gcc/testsuite/gfortran.dg/transfer_simplify_9.f90
+++ b/gcc/testsuite/gfortran.dg/transfer_simplify_9.f90
@@ -4,20 +4,20 @@
character(len=4), parameter :: t = "xyzt"
integer, parameter :: w = transfer(t,0)
integer :: i = 1
- if (transfer(t,0) /= w) call abort
- if (transfer(t(:),0) /= w) call abort
- if (transfer(t(1:4),0) /= w) call abort
- if (transfer(t(i:i+3),0) /= w) call abort
+ if (transfer(t,0) /= w) STOP 1
+ if (transfer(t(:),0) /= w) STOP 2
+ if (transfer(t(1:4),0) /= w) STOP 3
+ if (transfer(t(i:i+3),0) /= w) STOP 4
- if (transfer(t(1:1), 0_1) /= transfer("x", 0_1)) call abort
- if (transfer(t(2:2), 0_1) /= transfer("y", 0_1)) call abort
- if (transfer(t(i:i), 0_1) /= transfer("x", 0_1)) call abort
- if (transfer(t(i+1:i+1), 0_1) /= transfer("y", 0_1)) call abort
- if (transfer(t(1:2), 0_2) /= transfer("xy", 0_2)) call abort
- if (transfer(t(3:4), 0_2) /= transfer("zt", 0_2)) call abort
+ if (transfer(t(1:1), 0_1) /= transfer("x", 0_1)) STOP 5
+ if (transfer(t(2:2), 0_1) /= transfer("y", 0_1)) STOP 6
+ if (transfer(t(i:i), 0_1) /= transfer("x", 0_1)) STOP 7
+ if (transfer(t(i+1:i+1), 0_1) /= transfer("y", 0_1)) STOP 8
+ if (transfer(t(1:2), 0_2) /= transfer("xy", 0_2)) STOP 9
+ if (transfer(t(3:4), 0_2) /= transfer("zt", 0_2)) STOP 10
- if (transfer(transfer(-1, t), 0) /= -1) call abort
- if (transfer(transfer(-1, t(:)), 0) /= -1) call abort
- if (any (transfer(transfer(-1, (/t(1:1)/)), (/0_1/)) /= -1)) call abort
- if (transfer(transfer(-1, t(1:1)), 0_1) /= -1) call abort
+ if (transfer(transfer(-1, t), 0) /= -1) STOP 11
+ if (transfer(transfer(-1, t(:)), 0) /= -1) STOP 12
+ if (any (transfer(transfer(-1, (/t(1:1)/)), (/0_1/)) /= -1)) STOP 13
+ if (transfer(transfer(-1, t(1:1)), 0_1) /= -1) STOP 14
end
diff --git a/gcc/testsuite/gfortran.dg/transpose_1.f90 b/gcc/testsuite/gfortran.dg/transpose_1.f90
index 9ad784ea7a2..3aa47183f47 100644
--- a/gcc/testsuite/gfortran.dg/transpose_1.f90
+++ b/gcc/testsuite/gfortran.dg/transpose_1.f90
@@ -15,7 +15,7 @@
a(2,2) = 11
call foo
call bar
- if (any (c .ne. b)) call abort
+ if (any (c .ne. b)) STOP 1
contains
subroutine foo
b = cos(transpose(a))
diff --git a/gcc/testsuite/gfortran.dg/transpose_3.f03 b/gcc/testsuite/gfortran.dg/transpose_3.f03
index 269db491d86..52e8fc15b1c 100644
--- a/gcc/testsuite/gfortran.dg/transpose_3.f03
+++ b/gcc/testsuite/gfortran.dg/transpose_3.f03
@@ -6,5 +6,5 @@
INTEGER, PARAMETER :: b(1,n) = TRANSPOSE(a)
INTEGER, PARAMETER :: c(n,1) = TRANSPOSE(b)
- IF (ANY(c /= a)) CALL abort()
+ IF (ANY(c /= a)) STOP 1
END
diff --git a/gcc/testsuite/gfortran.dg/transpose_4.f90 b/gcc/testsuite/gfortran.dg/transpose_4.f90
index c4db1ffeba8..41cda4979d1 100644
--- a/gcc/testsuite/gfortran.dg/transpose_4.f90
+++ b/gcc/testsuite/gfortran.dg/transpose_4.f90
@@ -45,8 +45,8 @@ program test
! print *,'Normal: ',maxval(abs(B1-B2))
! print *,B1
! print *,B2
- if (any(B1 /= R)) call abort
- if (any(B2 /= R)) call abort
+ if (any(B1 /= R)) STOP 1
+ if (any(B2 /= R)) STOP 2
! Transposed argument
B1 = 0
@@ -56,8 +56,8 @@ program test
! print *,'Transposed:',maxval(abs(B1-B2))
! print *,B1
! print *,B2
- if (any(B1 /= RT)) call abort
- if (any(B2 /= RT)) call abort
+ if (any(B1 /= RT)) STOP 3
+ if (any(B2 /= RT)) STOP 4
contains
diff --git a/gcc/testsuite/gfortran.dg/transpose_conjg_1.f90 b/gcc/testsuite/gfortran.dg/transpose_conjg_1.f90
index 3b28827b38a..8865262517c 100644
--- a/gcc/testsuite/gfortran.dg/transpose_conjg_1.f90
+++ b/gcc/testsuite/gfortran.dg/transpose_conjg_1.f90
@@ -20,18 +20,18 @@ program main
b = conjg(transpose(b))
d = a
d = transpose(conjg(d))
- if (any (b /= d)) call abort ()
+ if (any (b /= d)) STOP 1
!
d = matmul (b, a )
- if (any (d /= matmul (transpose(conjg(a)), a))) call abort ()
- if (any (d /= matmul (conjg(transpose(a)), a))) call abort ()
+ if (any (d /= matmul (transpose(conjg(a)), a))) STOP 2
+ if (any (d /= matmul (conjg(transpose(a)), a))) STOP 3
!
c = (0.0,1.0)
b = conjg(transpose(a + c))
d = transpose(conjg(a + c))
- if (any (b /= d)) call abort ()
+ if (any (b /= d)) STOP 4
!
d = matmul (b, a + c)
- if (any (d /= matmul (transpose(conjg(a + c)), a + c))) call abort ()
- if (any (d /= matmul (conjg(transpose(a + c)), a + c))) call abort ()
+ if (any (d /= matmul (transpose(conjg(a + c)), a + c))) STOP 5
+ if (any (d /= matmul (conjg(transpose(a + c)), a + c))) STOP 6
END program main
diff --git a/gcc/testsuite/gfortran.dg/transpose_intrinsic_func_call_1.f90 b/gcc/testsuite/gfortran.dg/transpose_intrinsic_func_call_1.f90
index 53d727d9b28..de6656da114 100644
--- a/gcc/testsuite/gfortran.dg/transpose_intrinsic_func_call_1.f90
+++ b/gcc/testsuite/gfortran.dg/transpose_intrinsic_func_call_1.f90
@@ -16,7 +16,7 @@ program elastic2
allocate(a(2*nno))
call two()
coor = transpose ( reshape ( a, (/2,nno/) ) )
- if (any(coor /= 12)) call abort
+ if (any(coor /= 12)) STOP 1
contains
subroutine two()
allocate(coor(3,2))
diff --git a/gcc/testsuite/gfortran.dg/transpose_optimization_2.f90 b/gcc/testsuite/gfortran.dg/transpose_optimization_2.f90
index baa9ad5fff8..84b5a9e560e 100644
--- a/gcc/testsuite/gfortran.dg/transpose_optimization_2.f90
+++ b/gcc/testsuite/gfortran.dg/transpose_optimization_2.f90
@@ -13,7 +13,7 @@ contains
integer :: x(:,:)
b(1,:) = 99
b(2,:) = x(:,1)
- if (any (b(:,1) /= [99, 1]).or.any (b(:,2) /= [99, 3])) call abort()
+ if (any (b(:,1) /= [99, 1]).or.any (b(:,2) /= [99, 3])) STOP 1
end subroutine msub
subroutine pure_msub(x, y)
integer, intent(in) :: x(:,:)
@@ -34,9 +34,9 @@ contains
subroutine purity
integer :: c(2,3)
call pure_sub(transpose(a), c)
- if (any (c .ne. a)) call abort
+ if (any (c .ne. a)) STOP 1
call pure_msub(transpose(b), c)
- if (any (c .ne. b)) call abort
+ if (any (c .ne. b)) STOP 2
end subroutine purity
!
! sub and msub both need temporaries to avoid aliasing.
@@ -49,7 +49,7 @@ contains
integer :: x(:,:)
a(1,:) = 88
a(2,:) = x(:,1)
- if (any (a(:,1) /= [88, 1]).or.any (a(:,2) /= [88, 3])) call abort()
+ if (any (a(:,1) /= [88, 1]).or.any (a(:,2) /= [88, 3])) STOP 2
end subroutine sub
subroutine pure_sub(x, y)
integer, intent(in) :: x(:,:)
diff --git a/gcc/testsuite/gfortran.dg/trim_1.f90 b/gcc/testsuite/gfortran.dg/trim_1.f90
index ac1e1f2032d..99ae550082e 100644
--- a/gcc/testsuite/gfortran.dg/trim_1.f90
+++ b/gcc/testsuite/gfortran.dg/trim_1.f90
@@ -22,7 +22,7 @@ SUBROUTINE check_trim (full_len, trimmed_len)
.OR. TRIM (string) /= string (1:trimmed_len)) THEN
PRINT *, full_len, trimmed_len
PRINT *, LEN (string), LEN_TRIM (string)
- CALL abort ()
+ STOP 1
END IF
END SUBROUTINE check_trim
diff --git a/gcc/testsuite/gfortran.dg/trim_optimize_1.f90 b/gcc/testsuite/gfortran.dg/trim_optimize_1.f90
index 6cf501e5c29..7735b62c9fc 100644
--- a/gcc/testsuite/gfortran.dg/trim_optimize_1.f90
+++ b/gcc/testsuite/gfortran.dg/trim_optimize_1.f90
@@ -7,8 +7,8 @@ program main
b = 'abcd'
a = trim(b)
c = trim(trim(a))
- if (a /= 'abc') call abort
- if (c /= 'abc') call abort
+ if (a /= 'abc') STOP 1
+ if (c /= 'abc') STOP 2
end program main
! { dg-final { scan-tree-dump-times "memmove" 3 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/trim_optimize_2.f90 b/gcc/testsuite/gfortran.dg/trim_optimize_2.f90
index 6fe9bd451c0..c90d69f462c 100644
--- a/gcc/testsuite/gfortran.dg/trim_optimize_2.f90
+++ b/gcc/testsuite/gfortran.dg/trim_optimize_2.f90
@@ -10,8 +10,8 @@ contains
b = 'abcd'
a = trim(b)
c = trim(trim(a))
- if (a /= 'abc') call abort
- if (c /= 'abc') call abort
+ if (a /= 'abc') STOP 1
+ if (c /= 'abc') STOP 2
end subroutine bar
end module faz
@@ -27,8 +27,8 @@ contains
b = 'abcd'
a = trim(b)
c = trim(trim(a))
- if (a /= 'abc') call abort
- if (c /= 'abc') call abort
+ if (a /= 'abc') STOP 3
+ if (c /= 'abc') STOP 4
end subroutine foo
end program main
diff --git a/gcc/testsuite/gfortran.dg/trim_optimize_3.f90 b/gcc/testsuite/gfortran.dg/trim_optimize_3.f90
index 45c9cd8690c..e2bc6a1f497 100644
--- a/gcc/testsuite/gfortran.dg/trim_optimize_3.f90
+++ b/gcc/testsuite/gfortran.dg/trim_optimize_3.f90
@@ -7,9 +7,9 @@ program main
character(len=100) :: line
a = 'bcd'
b = trim(a) // 'x'
- if (b /= 'bcdx') call abort
+ if (b /= 'bcdx') STOP 1
a4 = 4_"bcd"
b4 = trim(a4) // 4_'x'
- if (b4 /= 4_'bcdx') call abort
+ if (b4 /= 4_'bcdx') STOP 2
end
! { dg-final { scan-tree-dump-times "string_len_trim" 2 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/trim_optimize_4.f90 b/gcc/testsuite/gfortran.dg/trim_optimize_4.f90
index 41c65b10bcd..551489eb13b 100644
--- a/gcc/testsuite/gfortran.dg/trim_optimize_4.f90
+++ b/gcc/testsuite/gfortran.dg/trim_optimize_4.f90
@@ -7,9 +7,9 @@ program main
str = '1234567890'
call sub(trim(str), str)
! Should print '12345 '
- if (str /= '12345 ') call abort
+ if (str /= '12345 ') STOP 1
call two(trim(str))
- if (str /= '123 ') call abort
+ if (str /= '123 ') STOP 2
contains
subroutine sub(a,b)
character(len=*), intent(in) :: a
diff --git a/gcc/testsuite/gfortran.dg/trim_optimize_5.f90 b/gcc/testsuite/gfortran.dg/trim_optimize_5.f90
index 63f12584a07..74b530dcfd5 100644
--- a/gcc/testsuite/gfortran.dg/trim_optimize_5.f90
+++ b/gcc/testsuite/gfortran.dg/trim_optimize_5.f90
@@ -11,9 +11,9 @@ program main
character(len=10) :: line
a%x = 'a'
write(unit=line,fmt='(A,A)') trim(a%x),"X"
- if (line /= 'aX ') call abort
+ if (line /= 'aX ') STOP 1
b = 'ab'
write (unit=line,fmt='(A,A)') trim(b),"Y"
- if (line /= 'abY ') call abort
+ if (line /= 'abY ') STOP 2
end program main
! { dg-final { scan-tree-dump-times "string_len_trim" 2 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/trim_optimize_6.f90 b/gcc/testsuite/gfortran.dg/trim_optimize_6.f90
index 2303bb4ef78..296f72fbcca 100644
--- a/gcc/testsuite/gfortran.dg/trim_optimize_6.f90
+++ b/gcc/testsuite/gfortran.dg/trim_optimize_6.f90
@@ -20,6 +20,6 @@ program main
b(1) = 'a'
b(2) = 'bc'
write(unit=line,fmt='(A,A)') trim(b(f())), "X"
- if (line /= "aX ") call abort
- if (f() .ne. 2) call abort
+ if (line /= "aX ") STOP 1
+ if (f() .ne. 2) STOP 2
end program main
diff --git a/gcc/testsuite/gfortran.dg/trim_optimize_7.f90 b/gcc/testsuite/gfortran.dg/trim_optimize_7.f90
index a9349df58df..3c1e29ba24c 100644
--- a/gcc/testsuite/gfortran.dg/trim_optimize_7.f90
+++ b/gcc/testsuite/gfortran.dg/trim_optimize_7.f90
@@ -9,10 +9,10 @@ program main
b = 'b '
c = 'c '
d = a // b // a // trim(c) ! This should be optimized away.
- if (d /= 'a b a c ') call abort
+ if (d /= 'a b a c ') STOP 1
d = a // trim(b) // c // a ! This shouldn't.
- if (d /= 'a bc a ') call abort
+ if (d /= 'a bc a ') STOP 2
d = a // b // a // trim(trim(c)) ! This should also be optimized away.
- if (d /= 'a b a c ') call abort
+ if (d /= 'a b a c ') STOP 3
end
! { dg-final { scan-tree-dump-times "string_len_trim" 1 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/trim_optimize_8.f90 b/gcc/testsuite/gfortran.dg/trim_optimize_8.f90
index 48055ca19e1..29070fda06e 100644
--- a/gcc/testsuite/gfortran.dg/trim_optimize_8.f90
+++ b/gcc/testsuite/gfortran.dg/trim_optimize_8.f90
@@ -7,7 +7,7 @@ program main
character(8) :: d
a = 'a '
b = 'b '
- if (trim(a // trim(b)) /= 'a b ') call abort
- if (trim (trim(a) // trim(b)) /= 'ab ') call abort
+ if (trim(a // trim(b)) /= 'a b ') STOP 1
+ if (trim (trim(a) // trim(b)) /= 'ab ') STOP 2
end
! { dg-final { scan-tree-dump-times "string_len_trim" 1 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/type_to_class_1.f03 b/gcc/testsuite/gfortran.dg/type_to_class_1.f03
index 173ca3635eb..621854048d9 100644
--- a/gcc/testsuite/gfortran.dg/type_to_class_1.f03
+++ b/gcc/testsuite/gfortran.dg/type_to_class_1.f03
@@ -13,12 +13,12 @@ type(t) :: y(10)
integer :: i
allocate(x(10))
-if (size (x) /= 10) call abort ()
+if (size (x) /= 10) STOP 1
x = [(t(a=-i, B=[1*i,2*i,3*i,4*i]), i = 1, 10)]
do i = 1, 10
if (x(i)%a /= -i .or. size (x(i)%b) /= 4 &
.or. any (x(i)%b /= [1*i,2*i,3*i,4*i])) then
- call abort()
+ STOP 2
end if
end do
@@ -34,15 +34,15 @@ contains
class(t), intent(in) :: z(:)
select type(z)
type is(t)
- if (size (z) /= 10) call abort ()
+ if (size (z) /= 10) STOP 3
do i = 1, 10
if (z(i)%a /= -i .or. size (z(i)%b) /= 4 &
.or. any (z(i)%b /= [1*i,2*i,3*i,4*i])) then
- call abort()
+ STOP 4
end if
end do
class default
- call abort()
+ STOP 5
end select
end subroutine class
subroutine classExplicit(u, n)
@@ -50,15 +50,15 @@ contains
class(t), intent(in) :: u(n)
select type(u)
type is(t)
- if (size (u) /= 10) call abort ()
+ if (size (u) /= 10) STOP 6
do i = 1, 10
if (u(i)%a /= -i .or. size (u(i)%b) /= 4 &
.or. any (u(i)%b /= [1*i,2*i,3*i,4*i])) then
- call abort()
+ STOP 7
end if
end do
class default
- call abort()
+ STOP 8
end select
end subroutine classExplicit
end
diff --git a/gcc/testsuite/gfortran.dg/type_to_class_2.f03 b/gcc/testsuite/gfortran.dg/type_to_class_2.f03
index 82f98cc3f4a..2f7eaf68026 100644
--- a/gcc/testsuite/gfortran.dg/type_to_class_2.f03
+++ b/gcc/testsuite/gfortran.dg/type_to_class_2.f03
@@ -21,9 +21,9 @@
select type (y => testList%test) ! Check vptr set
type is (Test)
- if (x%i .ne. y%i) call abort
+ if (x%i .ne. y%i) STOP 1
class default
- call abort
+ STOP 2
end select
end
diff --git a/gcc/testsuite/gfortran.dg/type_to_class_3.f03 b/gcc/testsuite/gfortran.dg/type_to_class_3.f03
index 7611155a260..715312e6bfc 100644
--- a/gcc/testsuite/gfortran.dg/type_to_class_3.f03
+++ b/gcc/testsuite/gfortran.dg/type_to_class_3.f03
@@ -24,9 +24,9 @@
select type (y => testList%test) ! Check vptr set
type is (Test)
- if (any(x%i .ne. y%i)) call abort
+ if (any(x%i .ne. y%i)) STOP 1
class default
- call abort
+ STOP 2
end select
end
diff --git a/gcc/testsuite/gfortran.dg/type_to_class_4.f03 b/gcc/testsuite/gfortran.dg/type_to_class_4.f03
index 196e4481de4..d6129977ad4 100644
--- a/gcc/testsuite/gfortran.dg/type_to_class_4.f03
+++ b/gcc/testsuite/gfortran.dg/type_to_class_4.f03
@@ -15,7 +15,7 @@ contains
class(t_stv), intent(in) :: y(:)
integer :: k
do k=1,size(y)
- if (int(y(k)%f1) .ne. k) call abort
+ if (int(y(k)%f1) .ne. k) STOP 1
enddo
end subroutine
end module
diff --git a/gcc/testsuite/gfortran.dg/type_to_class_5.f03 b/gcc/testsuite/gfortran.dg/type_to_class_5.f03
index 29a4b409198..110fe835e50 100644
--- a/gcc/testsuite/gfortran.dg/type_to_class_5.f03
+++ b/gcc/testsuite/gfortran.dg/type_to_class_5.f03
@@ -22,7 +22,7 @@ contains
integer :: iarray(4)
integer :: i
do i=1,size(a)
- if (a(i)%n .ne. iarray(i)) call abort
+ if (a(i)%n .ne. iarray(i)) STOP 1
a(i)%n = a(i)%n+1
enddo
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/typebound_assignment_5.f03 b/gcc/testsuite/gfortran.dg/typebound_assignment_5.f03
index 63df50f9127..f176b841fc0 100644
--- a/gcc/testsuite/gfortran.dg/typebound_assignment_5.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_assignment_5.f03
@@ -36,7 +36,7 @@
allocate (foobar(2))
foobar = [bar(1), bar(2)]
- if (any(foobar%i /= [1, 2])) call abort
+ if (any(foobar%i /= [1, 2])) STOP 1
end program
! { dg-final { scan-tree-dump-not "_gfortran_internal_pack" "original" } }
diff --git a/gcc/testsuite/gfortran.dg/typebound_assignment_6.f03 b/gcc/testsuite/gfortran.dg/typebound_assignment_6.f03
index 43175068b7f..1dbdb0cd2c0 100644
--- a/gcc/testsuite/gfortran.dg/typebound_assignment_6.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_assignment_6.f03
@@ -31,10 +31,10 @@
ALLOCATE (A(100))
A = (/ (A_TYPE(I), I=1,SIZE(A)) /)
A(1:50) = A(51:100)
- IF (ANY(A%I /= (/ ((50+I, I=1,SIZE(A)/2), J=1,2) /))) CALL ABORT
+ IF (ANY(A%I /= (/ ((50+I, I=1,SIZE(A)/2), J=1,2) /))) STOP 1
A(::2) = A(1:50) ! pack/unpack
- IF (ANY(A( ::2)%I /= (/ (50+I, I=1,SIZE(A)/2) /))) CALL ABORT
- IF (ANY(A(2::2)%I /= (/ ((50+2*I, I=1,SIZE(A)/4), J=1,2) /))) CALL ABORT
+ IF (ANY(A( ::2)%I /= (/ (50+I, I=1,SIZE(A)/2) /))) STOP 2
+ IF (ANY(A(2::2)%I /= (/ ((50+2*I, I=1,SIZE(A)/4), J=1,2) /))) STOP 3
END PROGRAM
! { dg-final { scan-tree-dump-times "_gfortran_internal_pack" 1 "original" } }
diff --git a/gcc/testsuite/gfortran.dg/typebound_assignment_7.f90 b/gcc/testsuite/gfortran.dg/typebound_assignment_7.f90
index e297d9f8ddf..082c031ec91 100644
--- a/gcc/testsuite/gfortran.dg/typebound_assignment_7.f90
+++ b/gcc/testsuite/gfortran.dg/typebound_assignment_7.f90
@@ -56,9 +56,9 @@ program test_assign
select type (item2)
type is (myItem)
- if (item2%name /= 'abc') call abort()
+ if (item2%name /= 'abc') STOP 1
class default
- call abort()
+ STOP 2
end select
end
diff --git a/gcc/testsuite/gfortran.dg/typebound_call_1.f03 b/gcc/testsuite/gfortran.dg/typebound_call_1.f03
index 4e7797bdf52..20688635ff4 100644
--- a/gcc/testsuite/gfortran.dg/typebound_call_1.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_call_1.f03
@@ -69,17 +69,17 @@ CONTAINS
INTEGER :: x
IF (adder%func (2, 3) /= 5 .OR. muler%func (2, 3) /= 6) THEN
- CALL abort ()
+ STOP 1
END IF
CALL adder%sub (2, 3, x)
IF (x /= 5) THEN
- CALL abort ()
+ STOP 2
END IF
CALL muler%sub (2, 3, x)
IF (x /= 6) THEN
- CALL abort ()
+ STOP 3
END IF
! Check procedures without arguments.
diff --git a/gcc/testsuite/gfortran.dg/typebound_call_13.f03 b/gcc/testsuite/gfortran.dg/typebound_call_13.f03
index db220787e55..e95a268dcd9 100644
--- a/gcc/testsuite/gfortran.dg/typebound_call_13.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_call_13.f03
@@ -36,6 +36,6 @@ program test_optional
type(myobj) :: myinstance
res = myinstance%myfunc()
- if (res /= 2) call abort()
+ if (res /= 2) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.dg/typebound_call_18.f03 b/gcc/testsuite/gfortran.dg/typebound_call_18.f03
index e417ebf9189..238f8a7a525 100644
--- a/gcc/testsuite/gfortran.dg/typebound_call_18.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_call_18.f03
@@ -31,7 +31,7 @@ contains
class(trivial_vector_type), intent(inout) :: this
class(vector_class), intent(in) :: v
write (*,*) 'Oops in concrete_vector::my_assign'
- call abort ()
+ STOP 1
end subroutine
end module concrete_vector
diff --git a/gcc/testsuite/gfortran.dg/typebound_call_19.f03 b/gcc/testsuite/gfortran.dg/typebound_call_19.f03
index 3c8b7684c67..96f46d66c1b 100644
--- a/gcc/testsuite/gfortran.dg/typebound_call_19.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_call_19.f03
@@ -31,19 +31,19 @@ program test
! (1) ordinary function call
zero = tx(1)
this%x = find_x(this)
- if (this%x%i /= 1) call abort()
+ if (this%x%i /= 1) STOP 1
! (2) procedure pointer
zero = tx(2)
pp => find_x
this%x = pp(this)
- if (this%x%i /= 2) call abort()
+ if (this%x%i /= 2) STOP 2
! (3) PPC
zero = tx(3)
this%ppc => find_x
this%x = this%ppc()
- if (this%x%i /= 3) call abort()
+ if (this%x%i /= 3) STOP 3
! (4) TBP
zero = tx(4)
this%x = this%find_x()
- if (this%x%i /= 4) call abort()
+ if (this%x%i /= 4) STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/typebound_call_2.f03 b/gcc/testsuite/gfortran.dg/typebound_call_2.f03
index d0846f4149a..965a5930534 100644
--- a/gcc/testsuite/gfortran.dg/typebound_call_2.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_call_2.f03
@@ -42,7 +42,7 @@ CONTAINS
CLASS(trueOrFalse), INTENT(INOUT) :: me1, me2
IF (.NOT. me1%val .OR. me2%val) THEN
- CALL abort ()
+ STOP 1
END IF
me1%val = .FALSE.
@@ -61,12 +61,12 @@ CONTAINS
adder%wrong = 0
adder%val = 42
IF (adder%func (8) /= 50) THEN
- CALL abort ()
+ STOP 2
END IF
CALL adder%sub (x, 8)
IF (x /= 50) THEN
- CALL abort ()
+ STOP 3
END IF
t%val = .TRUE.
@@ -76,7 +76,7 @@ CONTAINS
CALL f%swap (t)
IF (.NOT. t%val .OR. f%val) THEN
- CALL abort ()
+ STOP 4
END IF
END SUBROUTINE test
diff --git a/gcc/testsuite/gfortran.dg/typebound_call_20.f03 b/gcc/testsuite/gfortran.dg/typebound_call_20.f03
index 3936dd87955..0372d796d61 100644
--- a/gcc/testsuite/gfortran.dg/typebound_call_20.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_call_20.f03
@@ -30,11 +30,11 @@ program p
this%ppc => find_y
! (1) ordinary procedure
y = find_y()
- if (y/=1) call abort()
+ if (y/=1) STOP 1
! (2) procedure pointer component
y = this%ppc()
- if (y/=2) call abort()
+ if (y/=2) STOP 2
! (3) type-bound procedure
y = this%find_y()
- if (y/=3) call abort()
+ if (y/=3) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/typebound_call_3.f03 b/gcc/testsuite/gfortran.dg/typebound_call_3.f03
index ba7188624f1..d2f91842f50 100644
--- a/gcc/testsuite/gfortran.dg/typebound_call_3.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_call_3.f03
@@ -19,7 +19,7 @@ CONTAINS
CLASS(trueOrFalse), INTENT(INOUT) :: me1, me2
IF (.NOT. me1%val .OR. me2%val) THEN
- CALL abort ()
+ STOP 1
END IF
me1%val = .FALSE.
@@ -41,6 +41,6 @@ PROGRAM main
CALL f%swap (t)
IF (.NOT. t%val .OR. f%val) THEN
- CALL abort ()
+ STOP 2
END IF
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/typebound_generic_5.f03 b/gcc/testsuite/gfortran.dg/typebound_generic_5.f03
index 561fcce1c3c..5021f9ae5c6 100644
--- a/gcc/testsuite/gfortran.dg/typebound_generic_5.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_generic_5.f03
@@ -48,6 +48,6 @@ PROGRAM main
IF (ANY (arr2 /= 2 * arr) .OR. &
ANY (arr3 /= 2 * arr) .OR. &
ANY (arr4 /= 2 * arr)) THEN
- CALL abort ()
+ STOP 1
END IF
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/typebound_generic_6.f03 b/gcc/testsuite/gfortran.dg/typebound_generic_6.f03
index d0a17567ab4..8805c39d44f 100644
--- a/gcc/testsuite/gfortran.dg/typebound_generic_6.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_generic_6.f03
@@ -58,10 +58,10 @@ program testd15
allocate(foo2 :: afab)
call af2%do()
- if (af2%i .ne. 2) call abort
- if (af2%get() .ne. 3) call abort
+ if (af2%i .ne. 2) STOP 1
+ if (af2%get() .ne. 3) STOP 2
call afab%do()
- if (afab%i .ne. 2) call abort
- if (afab%get() .ne. 3) call abort
+ if (afab%i .ne. 2) STOP 3
+ if (afab%get() .ne. 3) STOP 4
end program testd15
diff --git a/gcc/testsuite/gfortran.dg/typebound_generic_9.f03 b/gcc/testsuite/gfortran.dg/typebound_generic_9.f03
index 42be60219e5..dcd3811e32a 100644
--- a/gcc/testsuite/gfortran.dg/typebound_generic_9.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_generic_9.f03
@@ -54,8 +54,8 @@ program testd15
type(foo2) :: af2
call af2%do()
- if (af2%i .ne. 2) call abort
- if (af2%get() .ne. 3) call abort
+ if (af2%i .ne. 2) STOP 1
+ if (af2%get() .ne. 3) STOP 2
end program testd15
diff --git a/gcc/testsuite/gfortran.dg/typebound_operator_12.f03 b/gcc/testsuite/gfortran.dg/typebound_operator_12.f03
index 4f729570b00..ddc5d9b4154 100644
--- a/gcc/testsuite/gfortran.dg/typebound_operator_12.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_operator_12.f03
@@ -38,6 +38,6 @@ program main
fireworks%velocity = [4,5,6]
dt = 5
fireworks = fireworks + fireworks*dt
- if (any (fireworks%position .ne. [6, 12, 18])) call abort
- if (any (fireworks%velocity .ne. [24, 30, 36])) call abort
+ if (any (fireworks%position .ne. [6, 12, 18])) STOP 1
+ if (any (fireworks%velocity .ne. [24, 30, 36])) STOP 2
end program
diff --git a/gcc/testsuite/gfortran.dg/typebound_operator_13.f03 b/gcc/testsuite/gfortran.dg/typebound_operator_13.f03
index 49828942935..96c4f32da39 100644
--- a/gcc/testsuite/gfortran.dg/typebound_operator_13.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_operator_13.f03
@@ -52,6 +52,6 @@ program main
allocate (fireworks, source = soop_stars ([1,2,3], [4,5,6]))
dt = 5
fireworks = fireworks + fireworks*dt
- if (any (fireworks%position .ne. [6, 12, 18])) call abort
- if (any (fireworks%velocity .ne. [24, 30, 36])) call abort
+ if (any (fireworks%position .ne. [6, 12, 18])) STOP 1
+ if (any (fireworks%velocity .ne. [24, 30, 36])) STOP 2
end program
diff --git a/gcc/testsuite/gfortran.dg/typebound_operator_15.f90 b/gcc/testsuite/gfortran.dg/typebound_operator_15.f90
index ca4d45c7017..350281386fb 100644
--- a/gcc/testsuite/gfortran.dg/typebound_operator_15.f90
+++ b/gcc/testsuite/gfortran.dg/typebound_operator_15.f90
@@ -61,18 +61,18 @@ program test_override
! write(*,*) .tr. o
! write(*,*) .tr. p
- if (base_cnt /= 0 .or. ext_cnt /= 0) call abort ()
+ if (base_cnt /= 0 .or. ext_cnt /= 0) STOP 1
r = .tr. o
- if (base_cnt /= 1 .or. ext_cnt /= 0) call abort ()
+ if (base_cnt /= 1 .or. ext_cnt /= 0) STOP 2
r = .tr. p
- if (base_cnt /= 2 .or. ext_cnt /= 1) call abort ()
+ if (base_cnt /= 2 .or. ext_cnt /= 1) STOP 3
if (abs(.tr. o - 5.0 ) < 1.0e-6 .and. abs( .tr. p - (5.0,2.5)) < 1.0e-6) &
then
- if (base_cnt /= 4 .or. ext_cnt /= 2) call abort ()
+ if (base_cnt /= 4 .or. ext_cnt /= 2) STOP 4
! write(*,*) 'OK'
else
- call abort()
+ STOP 5
! write(*,*) 'FAIL'
end if
end program test_override
diff --git a/gcc/testsuite/gfortran.dg/typebound_operator_20.f90 b/gcc/testsuite/gfortran.dg/typebound_operator_20.f90
index 81fe7744a85..ed4122e4fbc 100644
--- a/gcc/testsuite/gfortran.dg/typebound_operator_20.f90
+++ b/gcc/testsuite/gfortran.dg/typebound_operator_20.f90
@@ -44,8 +44,8 @@ program drive
type(child) :: h1, h2
class(parent), pointer :: hres
- if (m1 + m2 /= 0) call abort()
- if (h1 + m2 /= 1) call abort()
- if (h1%sum(h2) /= 1) call abort()
+ if (m1 + m2 /= 0) STOP 1
+ if (h1 + m2 /= 1) STOP 2
+ if (h1%sum(h2) /= 1) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/typebound_operator_3.f03 b/gcc/testsuite/gfortran.dg/typebound_operator_3.f03
index c558dfda36b..130ee8e8adc 100644
--- a/gcc/testsuite/gfortran.dg/typebound_operator_3.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_operator_3.f03
@@ -83,7 +83,7 @@ CONTAINS
num = mynum (1.0, 2)
num = num + 7
- IF (num%num_real /= 1.0 .OR. num%num_int /= 9) CALL abort ()
+ IF (num%num_real /= 1.0 .OR. num%num_int /= 9) STOP 1
END SUBROUTINE check_in_module
END MODULE m
@@ -103,21 +103,21 @@ PROGRAM main
num2 = mynum (2.0, 3)
num3 = num1 + num2
- IF (num3%num_real /= 3.0 .OR. num3%num_int /= 5) CALL abort ()
+ IF (num3%num_real /= 3.0 .OR. num3%num_int /= 5) STOP 2
num3 = num1 + 5
- IF (num3%num_real /= 1.0 .OR. num3%num_int /= 7) CALL abort ()
+ IF (num3%num_real /= 1.0 .OR. num3%num_int /= 7) STOP 3
num3 = num1 + (-100.5)
- IF (num3%num_real /= -99.5 .OR. num3%num_int /= 2) CALL abort ()
+ IF (num3%num_real /= -99.5 .OR. num3%num_int /= 2) STOP 4
num3 = 42
num3 = -1.2
- IF (num3%num_real /= -1.2 .OR. num3%num_int /= 42) CALL abort ()
+ IF (num3%num_real /= -1.2 .OR. num3%num_int /= 42) STOP 5
real_var = num3
int_var = num3
- IF (real_var /= -1.2 .OR. int_var /= 42) CALL abort ()
+ IF (real_var /= -1.2 .OR. int_var /= 42) STOP 6
- IF (.GET. num1 /= 3.0) CALL abort ()
+ IF (.GET. num1 /= 3.0) STOP 7
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/typebound_operator_6.f03 b/gcc/testsuite/gfortran.dg/typebound_operator_6.f03
index 02bd01a948a..3360a0d89d5 100644
--- a/gcc/testsuite/gfortran.dg/typebound_operator_6.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_operator_6.f03
@@ -67,5 +67,5 @@ PROGRAM TEST
NDB%PT => POINTB
NDB%KEY = 3
- if (.NOT. NDA .LT. NDB) call abort()
+ if (.NOT. NDA .LT. NDB) STOP 1
END
diff --git a/gcc/testsuite/gfortran.dg/typebound_operator_7.f03 b/gcc/testsuite/gfortran.dg/typebound_operator_7.f03
index 280072d0ffa..88f10424f21 100644
--- a/gcc/testsuite/gfortran.dg/typebound_operator_7.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_operator_7.f03
@@ -96,6 +96,6 @@ program main
u = i_multiply_real (u, 2.0) * 4.0
select type (u)
- type is (i_field); if (u%i .ne. 152064) call abort
+ type is (i_field); if (u%i .ne. 152064) STOP 1
end select
end program
diff --git a/gcc/testsuite/gfortran.dg/typebound_operator_8.f03 b/gcc/testsuite/gfortran.dg/typebound_operator_8.f03
index 88d485d6a63..2794463b066 100644
--- a/gcc/testsuite/gfortran.dg/typebound_operator_8.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_operator_8.f03
@@ -95,5 +95,5 @@ program main
u = u%multiply_real (2.0)*4.0
u = i_multiply_real (u, 2.0) * 4.0
- if (u%i .ne. 152064) call abort
+ if (u%i .ne. 152064) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.dg/typebound_operator_9.f03 b/gcc/testsuite/gfortran.dg/typebound_operator_9.f03
index e4c6b6e4e5b..0757ecf347b 100644
--- a/gcc/testsuite/gfortran.dg/typebound_operator_9.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_operator_9.f03
@@ -159,7 +159,7 @@ contains
type is (cartesian_2d_object)
process_cart2d%c = -sign (obj%c, 1.0)*obj%c** 4
class default
- call abort
+ STOP 1
end select
end function process_cart2d
function process_cart2d_p (obj)
@@ -173,7 +173,7 @@ contains
process_cart2d_p%c = -sign (obj%c, 1.0)*obj%c** 4
end select
class default
- call abort
+ STOP 2
end select
end function process_cart2d_p
function source_cart2d (obj, time)
@@ -191,7 +191,7 @@ contains
source_cart2d%c = 0.0
if (time .lt. 5.0) source_cart2d%c(m/2, n/2) = 0.1
class default
- call abort
+ STOP 3
end select
end function source_cart2d
@@ -205,7 +205,7 @@ contains
m = size (obj%c, 1)
n = size (obj%c, 2)
class default
- call abort
+ STOP 4
end select
allocate (source_cart2d_p,source = obj)
select type (source_cart2d_p)
@@ -215,7 +215,7 @@ contains
source_cart2d_p%c = 0.0
if (time .lt. 5.0) source_cart2d_p%c(m/2, n/2) = 0.1
class default
- call abort
+ STOP 5
end select
end function source_cart2d_p
@@ -234,7 +234,7 @@ contains
obj%dx = sizes(1)/dims(1)
obj%dy = sizes(2)/dims(2)
class default
- call abort
+ STOP 6
end select
end subroutine grid_definition_cart2d
! print_cart2d --
@@ -287,7 +287,7 @@ contains
-(2.0 * obj%c(2:m-1,2:n-1) - obj%c(1:m-2,2:n-1) - obj%c(3:m,2:n-1)) / dx**2 &
-(2.0 * obj%c(2:m-1,2:n-1) - obj%c(2:m-1,1:n-2) - obj%c(2:m-1,3:n)) / dy**2
class default
- call abort
+ STOP 7
end select
end function nabla2_cart2d
function real_times_cart2d (factor, obj) result(newobj)
@@ -303,7 +303,7 @@ contains
allocate (newobj%c(m,n))
newobj%c = factor * obj%c
class default
- call abort
+ STOP 8
end select
end function real_times_cart2d
function obj_plus_cart2d (obj1, obj2) result( newobj )
@@ -321,10 +321,10 @@ contains
type is (cartesian_2d_object)
newobj%c = obj1%c + obj2%c
class default
- call abort
+ STOP 9
end select
class default
- call abort
+ STOP 10
end select
end function obj_plus_cart2d
subroutine obj_assign_cart2d (obj1, obj2)
@@ -334,7 +334,7 @@ contains
type is (cartesian_2d_object)
obj1%c = obj2%c
class default
- call abort
+ STOP 11
end select
end subroutine obj_assign_cart2d
end module cartesian_2d_objects
@@ -402,8 +402,8 @@ program test_pde_solver
deallocate (solution, deriv)
call simulation2 ! Use typebound procedures for source and process
- if (chksum(1) .ne. chksum(2)) call abort
- if ((chksum(1) - 0.881868720)**2 > 1e-4) call abort
+ if (chksum(1) .ne. chksum(2)) STOP 12
+ if ((chksum(1) - 0.881868720)**2 > 1e-4) STOP 13
contains
subroutine simulation1
!
diff --git a/gcc/testsuite/gfortran.dg/typebound_proc_19.f90 b/gcc/testsuite/gfortran.dg/typebound_proc_19.f90
index 1661ff90973..05b2a0972f8 100644
--- a/gcc/testsuite/gfortran.dg/typebound_proc_19.f90
+++ b/gcc/testsuite/gfortran.dg/typebound_proc_19.f90
@@ -34,7 +34,7 @@ subroutine test()
integer, dimension (a%i()) :: y ! #2
integer, dimension (a_const%i()) :: z ! #3
- if (size (x) /= 13 .or. size(y) /= 13 .or. size(z) /= 13) call abort()
+ if (size (x) /= 13 .or. size(y) /= 13 .or. size(z) /= 13) STOP 1
! print *, size (x), size(y), size(z)
end subroutine test
diff --git a/gcc/testsuite/gfortran.dg/typebound_proc_20.f90 b/gcc/testsuite/gfortran.dg/typebound_proc_20.f90
index 47c131c5f20..e8bb11f9130 100644
--- a/gcc/testsuite/gfortran.dg/typebound_proc_20.f90
+++ b/gcc/testsuite/gfortran.dg/typebound_proc_20.f90
@@ -23,21 +23,21 @@ contains
type(tx), target :: that
that%i = [1,2]
this%x => this%find_x(that, .true.)
- if (associated (this%x)) call abort()
+ if (associated (this%x)) STOP 1
this%x => this%find_x(that, .false.)
- if(any (this%x%i /= [5, 7])) call abort()
- if (.not.associated (this%x,that)) call abort()
+ if(any (this%x%i /= [5, 7])) STOP 2
+ if (.not.associated (this%x,that)) STOP 3
allocate(this%x)
- if (associated (this%x,that)) call abort()
- if (allocated(this%x%i)) call abort()
+ if (associated (this%x,that)) STOP 4
+ if (allocated(this%x%i)) STOP 5
this%x = this%find_x(that, .false.)
that%i = [3,4]
- if(any (this%x%i /= [5, 7])) call abort() ! FAILS
+ if(any (this%x%i /= [5, 7])) STOP 6 ! FAILS
- if (allocated (this%y%i)) call abort()
+ if (allocated (this%y%i)) STOP 7
this%y = this%find_y() ! FAILS
- if (.not.allocated (this%y%i)) call abort()
- if(any (this%y%i /= [6, 8])) call abort()
+ if (.not.allocated (this%y%i)) STOP 8
+ if(any (this%y%i /= [6, 8])) STOP 9
end subroutine calc
function find_x(this, that, l_null)
class(t), intent(in) :: this
diff --git a/gcc/testsuite/gfortran.dg/typebound_proc_23.f90 b/gcc/testsuite/gfortran.dg/typebound_proc_23.f90
index 0109c7478de..a46bc50ac6e 100644
--- a/gcc/testsuite/gfortran.dg/typebound_proc_23.f90
+++ b/gcc/testsuite/gfortran.dg/typebound_proc_23.f90
@@ -24,7 +24,7 @@ end module
use ice
type(ice_type) :: t
-if (it/=0) call abort()
+if (it/=0) STOP 1
call ice_sub(t)
-if (it/=1) call abort()
+if (it/=1) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/typebound_proc_27.f03 b/gcc/testsuite/gfortran.dg/typebound_proc_27.f03
index 06484942277..5c76feac8c8 100644
--- a/gcc/testsuite/gfortran.dg/typebound_proc_27.f03
+++ b/gcc/testsuite/gfortran.dg/typebound_proc_27.f03
@@ -46,24 +46,24 @@ program prog
this = that ! (1) direct assignment: works (deep copy)
that%i = [2, -5]
!print *,this%i
- if(any (this%i /= [3, 7])) call abort()
+ if(any (this%i /= [3, 7])) STOP 1
this = p ! (2) using a pointer works as well
that%i = [10, 1]
!print *,this%i
- if(any (this%i /= [2, -5])) call abort()
+ if(any (this%i /= [2, -5])) STOP 2
this = find_x(that) ! (3) pointer function: used to fail (deep copy missing)
that%i = [4, 6]
!print *,this%i
- if(any (this%i /= [10, 1])) call abort()
+ if(any (this%i /= [10, 1])) STOP 3
this = tab%tbp(that) ! other case: typebound procedure
that%i = [8, 9]
!print *,this%i
- if(any (this%i /= [4, 6])) call abort()
+ if(any (this%i /= [4, 6])) STOP 4
tab%ppc => find_x
this = tab%ppc(that) ! other case: procedure pointer component
that%i = [-1, 2]
!print *,this%i
- if(any (this%i /= [8, 9])) call abort()
+ if(any (this%i /= [8, 9])) STOP 5
end block
end program prog
diff --git a/gcc/testsuite/gfortran.dg/typebound_proc_35.f90 b/gcc/testsuite/gfortran.dg/typebound_proc_35.f90
index 18b1ed98668..eae73fe30c7 100644
--- a/gcc/testsuite/gfortran.dg/typebound_proc_35.f90
+++ b/gcc/testsuite/gfortran.dg/typebound_proc_35.f90
@@ -82,7 +82,7 @@ program main
type(C2) :: t2
type(C1) :: t3
- if ( t1 % test( 2. ) /= -100.) call abort()
- if ( t2 % test( 2. ) /= 4.) call abort()
- if ( t3 % test( 2. ) /= 4.) call abort()
+ if ( t1 % test( 2. ) /= -100.) STOP 1
+ if ( t2 % test( 2. ) /= 4.) STOP 2
+ if ( t3 % test( 2. ) /= 4.) STOP 3
end program
diff --git a/gcc/testsuite/gfortran.dg/typebound_proc_36.f90 b/gcc/testsuite/gfortran.dg/typebound_proc_36.f90
index 5c9193c1e70..129a321e64c 100644
--- a/gcc/testsuite/gfortran.dg/typebound_proc_36.f90
+++ b/gcc/testsuite/gfortran.dg/typebound_proc_36.f90
@@ -73,5 +73,5 @@ program main
call data_structure%a()
call data_logger%init(data_structure)
- if (ctr .ne. 1111) call abort
+ if (ctr .ne. 1111) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.dg/unf_io_convert_1.f90 b/gcc/testsuite/gfortran.dg/unf_io_convert_1.f90
index 31765699750..1baa7f5926b 100644
--- a/gcc/testsuite/gfortran.dg/unf_io_convert_1.f90
+++ b/gcc/testsuite/gfortran.dg/unf_io_convert_1.f90
@@ -50,7 +50,7 @@ program main
if (debug) then
print '(A,Z8)','m(1) incorrect. m(1) = ',m(1)
else
- call abort
+ STOP 1
endif
endif
@@ -58,7 +58,7 @@ program main
if (debug) then
print '(A,Z8)','m(2) incorrect. m(2) = ',m(2)
else
- call abort
+ STOP 2
endif
endif
@@ -66,7 +66,7 @@ program main
if (debug) then
print '(A,Z8)','n incorrect. n = ',n
else
- call abort
+ STOP 3
endif
endif
@@ -75,7 +75,7 @@ program main
if (debug) then
print*,'element ',i,' was ',r(i),' should be ',i
else
- call abort
+ STOP 4
endif
endif
end do
@@ -83,7 +83,7 @@ program main
if (debug) then
print *,'str incorrect, str = ', str
else
- call abort
+ STOP 5
endif
end if
! use hexdump to look at the file "fort.9"
diff --git a/gcc/testsuite/gfortran.dg/unf_io_convert_2.f90 b/gcc/testsuite/gfortran.dg/unf_io_convert_2.f90
index f29f6ee249e..e9092cbb560 100644
--- a/gcc/testsuite/gfortran.dg/unf_io_convert_2.f90
+++ b/gcc/testsuite/gfortran.dg/unf_io_convert_2.f90
@@ -11,7 +11,7 @@ program main
write (10) c
rewind (10)
read (10) a
- if (a(1) /= 3.14 .or. a(2) /= 2.71) call abort
+ if (a(1) /= 3.14 .or. a(2) /= 2.71) STOP 1
close(10,status="delete")
open (10, form="unformatted",convert="big_endian") ! { dg-warning "Extension: CONVERT" }
@@ -20,10 +20,10 @@ program main
rewind (10)
read (10) b
if (any(b /= (/ Z'11', Z'22', Z'33', Z'44', Z'55', Z'66', Z'77', Z'00' /))) &
- call abort
+ STOP 2
backspace 10
read (10) j
- if (j /= Z'1122334455667700') call abort
+ if (j /= Z'1122334455667700') STOP 3
close (10, status="delete")
open (10, form="unformatted", convert="little_endian") ! { dg-warning "Extension: CONVERT" }
@@ -31,10 +31,10 @@ program main
rewind (10)
read (10) b
if (any(b /= (/ Z'44', Z'33', Z'22', Z'11', Z'00', Z'77', Z'66', Z'55' /))) &
- call abort
+ STOP 4
backspace 10
read (10) j
- if (j /= Z'5566770011223344') call abort
+ if (j /= Z'5566770011223344') STOP 5
close (10, status="delete")
end program main
diff --git a/gcc/testsuite/gfortran.dg/unf_io_convert_3.f90 b/gcc/testsuite/gfortran.dg/unf_io_convert_3.f90
index 8601073544a..f39425c245a 100644
--- a/gcc/testsuite/gfortran.dg/unf_io_convert_3.f90
+++ b/gcc/testsuite/gfortran.dg/unf_io_convert_3.f90
@@ -9,11 +9,11 @@ program main
backspace 10
read (10) b
close(10,status="delete")
- if (a /= b) call abort
+ if (a /= b) STOP 1
write (11) a
backspace 11
open (11,form="unformatted")
read (11) c
- if (a .ne. c) call abort
+ if (a .ne. c) STOP 2
close (11, status="delete")
end program main
diff --git a/gcc/testsuite/gfortran.dg/unf_io_convert_4.f90 b/gcc/testsuite/gfortran.dg/unf_io_convert_4.f90
index 88cb78ff0b5..3582edaec71 100644
--- a/gcc/testsuite/gfortran.dg/unf_io_convert_4.f90
+++ b/gcc/testsuite/gfortran.dg/unf_io_convert_4.f90
@@ -4,11 +4,11 @@ program main
character (len=30) ch
open (10,form="unformatted",convert="little_endian")
inquire (10, convert=ch)
- if (ch .ne. "LITTLE_ENDIAN") call abort
+ if (ch .ne. "LITTLE_ENDIAN") STOP 1
close (10, status="delete")
open(11,form="unformatted")
inquire (11, convert=ch)
- if (ch .ne. "BIG_ENDIAN") call abort
+ if (ch .ne. "BIG_ENDIAN") STOP 2
close (11, status="delete")
end program main
diff --git a/gcc/testsuite/gfortran.dg/unf_read_corrupted_1.f90 b/gcc/testsuite/gfortran.dg/unf_read_corrupted_1.f90
index 1cf879bd10c..320a4a90a23 100644
--- a/gcc/testsuite/gfortran.dg/unf_read_corrupted_1.f90
+++ b/gcc/testsuite/gfortran.dg/unf_read_corrupted_1.f90
@@ -20,8 +20,8 @@ program main
i1 = 0
i2 = 0
read (10, iostat=ios, iomsg=msg) i1, i2
- if (ios == 0) call abort
- if (i1 /= 1) call abort
- if (msg /= "Unformatted file structure has been corrupted") call abort
+ if (ios == 0) STOP 1
+ if (i1 /= 1) STOP 2
+ if (msg /= "Unformatted file structure has been corrupted") STOP 3
close (10, status="delete")
end program main
diff --git a/gcc/testsuite/gfortran.dg/unf_read_corrupted_2.f90 b/gcc/testsuite/gfortran.dg/unf_read_corrupted_2.f90
index 1788b457d19..eae1dca4d03 100644
--- a/gcc/testsuite/gfortran.dg/unf_read_corrupted_2.f90
+++ b/gcc/testsuite/gfortran.dg/unf_read_corrupted_2.f90
@@ -21,7 +21,7 @@
read (3) a,b,c,d
close (3)
- if (d(1).ne.1) call abort
- if (d(2048).ne.2048) call abort
+ if (d(1).ne.1) STOP 1
+ if (d(2048).ne.2048) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/unf_short_record_1.f90 b/gcc/testsuite/gfortran.dg/unf_short_record_1.f90
index 45c94c29405..97a318ae622 100644
--- a/gcc/testsuite/gfortran.dg/unf_short_record_1.f90
+++ b/gcc/testsuite/gfortran.dg/unf_short_record_1.f90
@@ -9,9 +9,9 @@ program main
a = 'b'
rewind 10
read (10, err=20, iomsg=msg) a
- call abort
+ STOP 1
20 continue
- if (msg .ne. "I/O past end of record on unformatted file") call abort
- if (a(1) .ne. 'a' .or. a(2) .ne. 'b' .or. a(3) .ne. 'b') call abort
+ if (msg .ne. "I/O past end of record on unformatted file") STOP 2
+ if (a(1) .ne. 'a' .or. a(2) .ne. 'b' .or. a(3) .ne. 'b') STOP 3
close (10, status="delete")
end program main
diff --git a/gcc/testsuite/gfortran.dg/unformatted_recl_1.f90 b/gcc/testsuite/gfortran.dg/unformatted_recl_1.f90
index 9618ff27a8b..568898b9e7c 100644
--- a/gcc/testsuite/gfortran.dg/unformatted_recl_1.f90
+++ b/gcc/testsuite/gfortran.dg/unformatted_recl_1.f90
@@ -21,6 +21,6 @@ program test
read(10) a, b
read(10) a, b
read(10) a, b
- if ((a.ne.2).and.( b.ne.1)) call abort()
+ if ((a.ne.2).and.( b.ne.1)) STOP 1
end program test
diff --git a/gcc/testsuite/gfortran.dg/unformatted_subrecord_1.f90 b/gcc/testsuite/gfortran.dg/unformatted_subrecord_1.f90
index 02ed28863eb..c6eed2ef176 100644
--- a/gcc/testsuite/gfortran.dg/unformatted_subrecord_1.f90
+++ b/gcc/testsuite/gfortran.dg/unformatted_subrecord_1.f90
@@ -21,27 +21,27 @@ program main
read (10) m
if (any(m .ne. (/ -16, 1, 4, 9, 16, 16, -16, 25, 36, 49, 64, &
-16, -16, 81, 100, 121, 144, -16, -16, 169, 196, 225, &
- 256, -16, 16, 289, 324, 361, 400, -16 /))) call abort
+ 256, -16, 16, 289, 324, 361, 400, -16 /))) STOP 1
close (10)
open (10, file="f10.dat", form="unformatted", &
access="sequential")
m = 42
read (10) m(1:5)
- if (any(m(1:5) .ne. (/ 1, 4, 9, 16, 25 /))) call abort
- if (any(m(6:30) .ne. 42)) call abort
+ if (any(m(1:5) .ne. (/ 1, 4, 9, 16, 25 /))) STOP 2
+ if (any(m(6:30) .ne. 42)) STOP 3
backspace 10
n = 0
read (10) n(1:5)
- if (any(n(1:5) .ne. (/ 1, 4, 9, 16, 25 /))) call abort
- if (any(n(6:20) .ne. 0)) call abort
+ if (any(n(1:5) .ne. (/ 1, 4, 9, 16, 25 /))) STOP 4
+ if (any(n(6:20) .ne. 0)) STOP 5
! Append to the end of the file
write (10) 3.14_4
! Test multiple backspace statements
backspace 10
backspace 10
read (10) k
- if (k .ne. 1) call abort
+ if (k .ne. 1) STOP 6
read (10) r
- if (abs(r-3.14_4) .gt. 1e-7) call abort
+ if (abs(r-3.14_4) .gt. 1e-7) STOP 7
close (10, status="delete")
end program main
diff --git a/gcc/testsuite/gfortran.dg/unit_1.f90 b/gcc/testsuite/gfortran.dg/unit_1.f90
index 5233bc87019..3d7c1425d80 100644
--- a/gcc/testsuite/gfortran.dg/unit_1.f90
+++ b/gcc/testsuite/gfortran.dg/unit_1.f90
@@ -12,13 +12,13 @@
anum = 0
rewind(lun)
read (lun, *) anum
- if (anum.ne.5) call abort
+ if (anum.ne.5) STOP 1
open (looney, status='scratch')
write(looney,*)bin
bin = 0
rewind (looney)
read (looney,*)bin
- if (bin.ne.23) call abort
+ if (bin.ne.23) STOP 2
close (lun)
close (looney)
end
diff --git a/gcc/testsuite/gfortran.dg/unlimited_fmt_1.f08 b/gcc/testsuite/gfortran.dg/unlimited_fmt_1.f08
index 5089d32ff4d..51803f7a394 100644
--- a/gcc/testsuite/gfortran.dg/unlimited_fmt_1.f08
+++ b/gcc/testsuite/gfortran.dg/unlimited_fmt_1.f08
@@ -13,5 +13,5 @@ program unlimited
& "abcdefg",iarray, i,"jklmnop"
end do
if (string.ne."iarray =abcdefg,1,2,3,4,5,6,7,8,9,10,10,jklmnop") &
- & call abort
+ & STOP 1
end program unlimited
diff --git a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_1.f03 b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_1.f03
index 3ff1e551ee5..afd752242bb 100644
--- a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_1.f03
+++ b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_1.f03
@@ -23,7 +23,7 @@ contains
type is (real(8))
write (res, '(a, F4.1)') "real8", w
type is (character(*, kind = 4))
- call abort
+ STOP 1
type is (character(*))
write (res, '(a, I2, a, a)') "char(", LEN(w), ")", trim(w)
end select
@@ -67,132 +67,132 @@ END MODULE
! Test pointing to derived types.
u1 => obj1
- if (SAME_TYPE_AS (obj1, u1) .neqv. .TRUE.) call abort
+ if (SAME_TYPE_AS (obj1, u1) .neqv. .TRUE.) STOP 1
u2 => obj2
call bar (u1, res)
- if (trim (res) .ne. "type(a) 99") call abort
+ if (trim (res) .ne. "type(a) 99") STOP 1
call foo (u2, res)
- if (trim (res) .ne. "type(a) array 999 999 999") call abort
+ if (trim (res) .ne. "type(a) array 999 999 999") STOP 1
- if (SAME_TYPE_AS (obj1, u1) .neqv. .TRUE.) call abort
+ if (SAME_TYPE_AS (obj1, u1) .neqv. .TRUE.) STOP 1
! Check allocate with an array SOURCE.
allocate (u2(5), source = [(a(i), i = 1,5)])
- if (SAME_TYPE_AS (u1, a(2)) .neqv. .TRUE.) call abort
+ if (SAME_TYPE_AS (u1, a(2)) .neqv. .TRUE.) STOP 1
call foo (u2, res)
- if (trim (res) .ne. "type(a) array 1 2 3 4 5") call abort
+ if (trim (res) .ne. "type(a) array 1 2 3 4 5") STOP 1
deallocate (u2)
! Point to intrinsic targets.
u1 => obj3
call bar (u1, res)
- if (trim (res) .ne. "integer 999") call abort
+ if (trim (res) .ne. "integer 999") STOP 1
u2 => obj4
call foo (u2, res)
- if (trim (res) .ne. "real array 1.0 2.0 3.0 4.0") call abort
+ if (trim (res) .ne. "real array 1.0 2.0 3.0 4.0") STOP 1
u2 => obj5
call foo (u2, res)
- if (trim (res) .ne. "integer array 99 198 297") call abort
+ if (trim (res) .ne. "integer array 99 198 297") STOP 1
! Test allocate with source.
allocate (u1, source = sun)
call bar (u1, res)
- if (trim (res) .ne. "char( 8)sunshine") call abort
+ if (trim (res) .ne. "char( 8)sunshine") STOP 1
deallocate (u1)
allocate (u2(3), source = [7,8,9])
call foo (u2, res)
- if (trim (res) .ne. "integer array 7 8 9") call abort
+ if (trim (res) .ne. "integer array 7 8 9") STOP 1
deallocate (u2)
- if (EXTENDS_TYPE_OF (obj1, u2) .neqv. .TRUE.) call abort
- if (EXTENDS_TYPE_OF (u2, obj1) .neqv. .FALSE.) call abort
+ if (EXTENDS_TYPE_OF (obj1, u2) .neqv. .TRUE.) STOP 1
+ if (EXTENDS_TYPE_OF (u2, obj1) .neqv. .FALSE.) STOP 1
allocate (u2(3), source = [5.0,6.0,7.0])
call foo (u2, res)
- if (trim (res) .ne. "real array 5.0 6.0 7.0") call abort
+ if (trim (res) .ne. "real array 5.0 6.0 7.0") STOP 1
- if (EXTENDS_TYPE_OF (obj1, u2) .neqv. .FALSE.) call abort
- if (EXTENDS_TYPE_OF (u2, obj1) .neqv. .FALSE.) call abort
+ if (EXTENDS_TYPE_OF (obj1, u2) .neqv. .FALSE.) STOP 1
+ if (EXTENDS_TYPE_OF (u2, obj1) .neqv. .FALSE.) STOP 1
deallocate (u2)
! Check allocate with a MOLD tag.
allocate (u2(3), mold = 8.0)
call foo (u2, res)
- if (res(1:10) .ne. "real array") call abort
+ if (res(1:10) .ne. "real array") STOP 1
deallocate (u2)
! Test passing an intrinsic type to a CLASS(*) formal.
call bar(1, res)
- if (trim (res) .ne. "integer 1") call abort
+ if (trim (res) .ne. "integer 1") STOP 1
call bar(2.0, res)
- if (trim (res) .ne. "real4 2.0") call abort
+ if (trim (res) .ne. "real4 2.0") STOP 1
call bar(2d0, res)
- if (trim (res) .ne. "real8 2.0") call abort
+ if (trim (res) .ne. "real8 2.0") STOP 1
call bar(a(3), res)
- if (trim (res) .ne. "type(a) 3") call abort
+ if (trim (res) .ne. "type(a) 3") STOP 1
call bar(sun, res)
- if (trim (res) .ne. "char( 8)sunshine") call abort
+ if (trim (res) .ne. "char( 8)sunshine") STOP 1
call bar (obj3, res)
- if (trim (res) .ne. "integer 999") call abort
+ if (trim (res) .ne. "integer 999") STOP 1
call foo([4,5], res)
- if (trim (res) .ne. "integer array 4 5") call abort
+ if (trim (res) .ne. "integer array 4 5") STOP 1
call foo([6.0,7.0], res)
- if (trim (res) .ne. "real array 6.0 7.0") call abort
+ if (trim (res) .ne. "real array 6.0 7.0") STOP 1
call foo([a(8),a(9)], res)
- if (trim (res) .ne. "type(a) array 8 9") call abort
+ if (trim (res) .ne. "type(a) array 8 9") STOP 1
call foo([sun, " & rain"], res)
- if (trim (res) .ne. "char( 8, 2)sunshine & rain") call abort
+ if (trim (res) .ne. "char( 8, 2)sunshine & rain") STOP 1
call foo([sun//" never happens", " & rain always happens"], res)
- if (trim (res) .ne. "char(22, 2)sunshine never happens & rain always happens") call abort
+ if (trim (res) .ne. "char(22, 2)sunshine never happens & rain always happens") STOP 1
call foo (obj4, res)
- if (trim (res) .ne. "real array 1.0 2.0 3.0 4.0") call abort
+ if (trim (res) .ne. "real array 1.0 2.0 3.0 4.0") STOP 1
call foo (obj5, res)
- if (trim (res) .ne. "integer array 99 198 297") call abort
+ if (trim (res) .ne. "integer array 99 198 297") STOP 1
! Allocatable entities
- if (EXTENDS_TYPE_OF (obj1, u3) .neqv. .TRUE.) call abort
- if (EXTENDS_TYPE_OF (u3, obj1) .neqv. .FALSE.) call abort
- if (EXTENDS_TYPE_OF (obj1, u4) .neqv. .TRUE.) call abort
- if (EXTENDS_TYPE_OF (u4, obj1) .neqv. .FALSE.) call abort
+ if (EXTENDS_TYPE_OF (obj1, u3) .neqv. .TRUE.) STOP 1
+ if (EXTENDS_TYPE_OF (u3, obj1) .neqv. .FALSE.) STOP 1
+ if (EXTENDS_TYPE_OF (obj1, u4) .neqv. .TRUE.) STOP 1
+ if (EXTENDS_TYPE_OF (u4, obj1) .neqv. .FALSE.) STOP 1
allocate (u3, source = 2.4)
call bar (u3, res)
- if (trim (res) .ne. "real4 2.4") call abort
+ if (trim (res) .ne. "real4 2.4") STOP 1
allocate (u4(2), source = [a(88), a(99)])
call foo (u4, res)
- if (trim (res) .ne. "type(a) array 88 99") call abort
+ if (trim (res) .ne. "type(a) array 88 99") STOP 1
- if (EXTENDS_TYPE_OF (obj1, u3) .neqv. .FALSE.) call abort
- if (EXTENDS_TYPE_OF (u3, obj1) .neqv. .FALSE.) call abort
+ if (EXTENDS_TYPE_OF (obj1, u3) .neqv. .FALSE.) STOP 1
+ if (EXTENDS_TYPE_OF (u3, obj1) .neqv. .FALSE.) STOP 1
deallocate (u3)
- if (EXTENDS_TYPE_OF (obj1, u3) .neqv. .TRUE.) call abort
- if (EXTENDS_TYPE_OF (u3, obj1) .neqv. .FALSE.) call abort
+ if (EXTENDS_TYPE_OF (obj1, u3) .neqv. .TRUE.) STOP 1
+ if (EXTENDS_TYPE_OF (u3, obj1) .neqv. .FALSE.) STOP 1
- if (EXTENDS_TYPE_OF (obj1, u4) .neqv. .TRUE.) call abort
- if (EXTENDS_TYPE_OF (u4, obj1) .neqv. .TRUE.) call abort
+ if (EXTENDS_TYPE_OF (obj1, u4) .neqv. .TRUE.) STOP 1
+ if (EXTENDS_TYPE_OF (u4, obj1) .neqv. .TRUE.) STOP 1
deallocate (u4)
- if (EXTENDS_TYPE_OF (obj1, u4) .neqv. .TRUE.) call abort
- if (EXTENDS_TYPE_OF (u4, obj1) .neqv. .FALSE.) call abort
+ if (EXTENDS_TYPE_OF (obj1, u4) .neqv. .TRUE.) STOP 1
+ if (EXTENDS_TYPE_OF (u4, obj1) .neqv. .FALSE.) STOP 1
! Check assumed rank calls
@@ -205,7 +205,7 @@ contains
integer :: ranki
integer i
i = rank (arg)
- if (i .ne. ranki) call abort
+ if (i .ne. ranki) STOP 1
end subroutine
END
diff --git a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_13.f90 b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_13.f90
index 8225738e743..308ea59760d 100644
--- a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_13.f90
+++ b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_13.f90
@@ -40,26 +40,26 @@ contains
case (real_kinds(size(real_kinds)))
sz = storage_size(r4)*2
end select
- if (sz .eq. 0) call abort()
+ if (sz .eq. 0) STOP 1
- if (storage_size(o) /= sz) call abort()
+ if (storage_size(o) /= sz) STOP 2
! Break up the SELECT TYPE to pre-empt collisions in the value of 'cn'
select type (o)
type is (complex(c1))
- if (storage_size(o) /= sz) call abort()
+ if (storage_size(o) /= sz) STOP 3
end select
select type (o)
type is (complex(c2))
- if (storage_size(o) /= sz) call abort()
+ if (storage_size(o) /= sz) STOP 4
end select
select type (o)
type is (complex(c3))
- if (storage_size(o) /= sz) call abort()
+ if (storage_size(o) /= sz) STOP 5
end select
select type (o)
type is (complex(c4))
- if (storage_size(o) /= sz) call abort()
+ if (storage_size(o) /= sz) STOP 6
end select
end subroutine s
end module m
diff --git a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_14.f90 b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_14.f90
index 215b03f64ee..6bc9e34957b 100644
--- a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_14.f90
+++ b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_14.f90
@@ -9,9 +9,9 @@
program test
logical l
call up("abc", l)
- if (l) call abort
+ if (l) STOP 1
call up(3habc, l) ! { dg-warning "Legacy Extension" }
- if (.not. l) call abort
+ if (.not. l) STOP 2
contains
subroutine up(x, l)
class(*) :: x
diff --git a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_17.f90 b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_17.f90
index 0fcff74b910..8154fc14407 100644
--- a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_17.f90
+++ b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_17.f90
@@ -46,6 +46,6 @@ program test
call show_real (array)
call show_generic1 (array)
call show_generic2 (array)
- if (chksum0 .ne. chksum1) call abort
- if (chksum0 .ne. chksum2) call abort
+ if (chksum0 .ne. chksum1) STOP 1
+ if (chksum0 .ne. chksum2) STOP 2
end program test
diff --git a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_18.f90 b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_18.f90
index 345fa6203c4..532ae6d3c03 100644
--- a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_18.f90
+++ b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_18.f90
@@ -21,10 +21,10 @@ contains
select type (X)
type is (real)
if ( abs (X - this%expectedScalar) > 0.0001 ) then
- call abort()
+ STOP 1
end if
class default
- call abort ()
+ STOP 2
end select
end subroutine FCheck
diff --git a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_20.f90 b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_20.f90
index 49d35c88b6d..f0d83a3620d 100644
--- a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_20.f90
+++ b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_20.f90
@@ -34,9 +34,9 @@ program test
call sub4 (S, 4)
call sub4 ("This is a longer string.", 24)
call bar (S, res)
- if (trim (res) .NE. " 4") call abort ()
+ if (trim (res) .NE. " 4") STOP 1
call bar(ucp, res)
- if (trim (res) .NE. " 4") call abort ()
+ if (trim (res) .NE. " 4") STOP 2
contains
@@ -50,12 +50,12 @@ contains
select type (ucp)
type is (character(len=*))
- if (len(dcl) .NE. ilen) call abort ()
- if (len(ucp) .NE. ilen) call abort ()
+ if (len(dcl) .NE. ilen) STOP 3
+ if (len(ucp) .NE. ilen) STOP 4
hlp = ucp
- if (len(hlp) .NE. ilen) call abort ()
+ if (len(hlp) .NE. ilen) STOP 5
class default
- call abort()
+ STOP 6
end select
end subroutine
@@ -68,9 +68,9 @@ contains
select type (ucp)
type is (character(len=*))
- if (len(ucp) .ne. 3) call abort ()
+ if (len(ucp) .ne. 3) STOP 7
class default
- call abort()
+ STOP 8
end select
end subroutine
@@ -80,11 +80,11 @@ contains
select type (ucp)
type is (character(len=*))
- if (len(ucp) .ne. 4) call abort ()
+ if (len(ucp) .ne. 4) STOP 9
hlp = ucp
- if (len(hlp) .ne. 4) call abort ()
+ if (len(hlp) .ne. 4) STOP 10
class default
- call abort()
+ STOP 11
end select
end subroutine
@@ -95,11 +95,11 @@ contains
select type (ucp)
type is (character(len=*))
- if (len(ucp) .ne. ilen) call abort ()
+ if (len(ucp) .ne. ilen) STOP 12
hlp = ucp
- if (len(hlp) .ne. ilen) call abort ()
+ if (len(hlp) .ne. ilen) STOP 13
class default
- call abort()
+ STOP 14
end select
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_21.f90 b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_21.f90
index fecb5934007..75707481940 100644
--- a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_21.f90
+++ b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_21.f90
@@ -12,13 +12,13 @@
call associate_pointer(f,ptr)
select type (ptr)
type is (real)
- if (abs (ptr(1) - 0.99) > 1e-5) call abort
+ if (abs (ptr(1) - 0.99) > 1e-5) STOP 1
end select
ptr => return_pointer(f) ! runtime segmentation fault
- if (associated(return_pointer(f)) .neqv. .true.) call abort
+ if (associated(return_pointer(f)) .neqv. .true.) STOP 2
select type (ptr)
type is (real)
- if (abs (ptr(1) - 0.99) > 1e-5) call abort
+ if (abs (ptr(1) - 0.99) > 1e-5) STOP 3
end select
contains
subroutine associate_pointer(this, item)
diff --git a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_22.f90 b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_22.f90
index 1d44c9f8686..cf23c3afe2e 100644
--- a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_22.f90
+++ b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_22.f90
@@ -24,55 +24,55 @@ program test
select type(P1)
type is (character(*))
P1 ="some test string"
- if (P1 .ne. "some test string") call abort ()
- if (len(P1) .ne. 20) call abort ()
- if (len(P1) .eq. len("some test string")) call abort ()
+ if (P1 .ne. "some test string") STOP 1
+ if (len(P1) .ne. 20) STOP 2
+ if (len(P1) .eq. len("some test string")) STOP 3
class default
- call abort ()
+ STOP 4
end select
allocate(A1, source = P1)
select type(A1)
type is (character(*))
- if (A1 .ne. "some test string") call abort ()
- if (len(A1) .ne. 20) call abort ()
- if (len(A1) .eq. len("some test string")) call abort ()
+ if (A1 .ne. "some test string") STOP 5
+ if (len(A1) .ne. 20) STOP 6
+ if (len(A1) .eq. len("some test string")) STOP 7
class default
- call abort ()
+ STOP 8
end select
allocate(A2, source = convertType(P1))
select type(A2)
type is (character(*))
- if (A2 .ne. "some test string") call abort ()
- if (len(A2) .ne. 20) call abort ()
- if (len(A2) .eq. len("some test string")) call abort ()
+ if (A2 .ne. "some test string") STOP 9
+ if (len(A2) .ne. 20) STOP 10
+ if (len(A2) .eq. len("some test string")) STOP 11
class default
- call abort ()
+ STOP 12
end select
allocate(P2, source = str)
select type(P2)
type is (character(*))
- if (P2 .ne. "string for test") call abort ()
- if (len(P2) .eq. 20) call abort ()
- if (len(P2) .ne. len("string for test")) call abort ()
+ if (P2 .ne. "string for test") STOP 13
+ if (len(P2) .eq. 20) STOP 14
+ if (len(P2) .ne. len("string for test")) STOP 15
class default
- call abort ()
+ STOP 16
end select
allocate(P3, source = "string for test")
select type(P3)
type is (character(*))
- if (P3 .ne. "string for test") call abort ()
- if (len(P3) .eq. 20) call abort ()
- if (len(P3) .ne. len("string for test")) call abort ()
+ if (P3 .ne. "string for test") STOP 17
+ if (len(P3) .eq. 20) STOP 18
+ if (len(P3) .ne. len("string for test")) STOP 19
class default
- call abort ()
+ STOP 20
end select
allocate(character(len=10)::PA1(3))
@@ -80,15 +80,15 @@ program test
select type(PA1)
type is (character(*))
PA1(1) = "string 10 "
- if (PA1(1) .ne. "string 10 ") call abort ()
- if (any(len(PA1(:)) .ne. [10,10,10])) call abort ()
+ if (PA1(1) .ne. "string 10 ") STOP 21
+ if (any(len(PA1(:)) .ne. [10,10,10])) STOP 22
class default
- call abort ()
+ STOP 23
end select
deallocate(PA1)
deallocate(P3)
-! if (len(P3) .ne. 0) call abort() ! Can't check, because select
+! if (len(P3) .ne. 0) STOP 24 ! Can't check, because select
! type would be needed, which needs the vptr, which is 0 now.
deallocate(P2)
deallocate(A2)
@@ -102,59 +102,59 @@ program test
select type(P1)
type is (character(len=*,kind=4))
P1 ="some test string"
- if (P1 .ne. 4_"some test string") call abort ()
- if (len(P1) .ne. 20) call abort ()
- if (len(P1) .eq. len("some test string")) call abort ()
+ if (P1 .ne. 4_"some test string") STOP 25
+ if (len(P1) .ne. 20) STOP 26
+ if (len(P1) .eq. len("some test string")) STOP 27
type is (character(len=*,kind=1))
- call abort ()
+ STOP 28
class default
- call abort ()
+ STOP 29
end select
allocate(A1, source=P1)
select type(A1)
type is (character(len=*,kind=4))
- if (A1 .ne. 4_"some test string") call abort ()
- if (len(A1) .ne. 20) call abort ()
- if (len(A1) .eq. len("some test string")) call abort ()
+ if (A1 .ne. 4_"some test string") STOP 30
+ if (len(A1) .ne. 20) STOP 31
+ if (len(A1) .eq. len("some test string")) STOP 32
type is (character(len=*,kind=1))
- call abort ()
+ STOP 33
class default
- call abort ()
+ STOP 34
end select
allocate(A2, source = convertType(P1))
select type(A2)
type is (character(len=*, kind=4))
- if (A2 .ne. 4_"some test string") call abort ()
- if (len(A2) .ne. 20) call abort ()
- if (len(A2) .eq. len("some test string")) call abort ()
+ if (A2 .ne. 4_"some test string") STOP 35
+ if (len(A2) .ne. 20) STOP 36
+ if (len(A2) .eq. len("some test string")) STOP 37
class default
- call abort ()
+ STOP 38
end select
allocate(P2, source = str4)
select type(P2)
type is (character(len=*,kind=4))
- if (P2 .ne. 4_"string for test") call abort ()
- if (len(P2) .eq. 20) call abort ()
- if (len(P2) .ne. len("string for test")) call abort ()
+ if (P2 .ne. 4_"string for test") STOP 39
+ if (len(P2) .eq. 20) STOP 40
+ if (len(P2) .ne. len("string for test")) STOP 41
class default
- call abort ()
+ STOP 42
end select
allocate(P3, source = convertType(P2))
select type(P3)
type is (character(len=*, kind=4))
- if (P3 .ne. 4_"string for test") call abort ()
- if (len(P3) .eq. 20) call abort ()
- if (len(P3) .ne. len("string for test")) call abort ()
+ if (P3 .ne. 4_"string for test") STOP 43
+ if (len(P3) .eq. 20) STOP 44
+ if (len(P3) .ne. len("string for test")) STOP 45
class default
- call abort ()
+ STOP 46
end select
allocate(character(kind=4, len=10)::PA1(3))
@@ -162,10 +162,10 @@ program test
select type(PA1)
type is (character(len=*, kind=4))
PA1(1) = 4_"string 10 "
- if (PA1(1) .ne. 4_"string 10 ") call abort ()
- if (any(len(PA1(:)) .ne. [10,10,10])) call abort ()
+ if (PA1(1) .ne. 4_"string 10 ") STOP 47
+ if (any(len(PA1(:)) .ne. [10,10,10])) STOP 48
class default
- call abort ()
+ STOP 49
end select
deallocate(PA1)
@@ -179,13 +179,13 @@ program test
allocate(o2%content, source=o1%content)
select type (c => o1%content)
type is (character(*))
- if (c /= 'test string') call abort ()
+ if (c /= 'test string') STOP 50
class default
- call abort()
+ STOP 51
end select
select type (d => o2%content)
type is (character(*))
- if (d /= 'test string') call abort ()
+ if (d /= 'test string') STOP 52
class default
end select
@@ -206,9 +206,9 @@ contains
allocate(P, source=C)
select type (P)
type is (character(*))
- if (P /= 'test string') call abort()
+ if (P /= 'test string') STOP 53
class default
- call abort()
+ STOP 54
end select
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_23.f90 b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_23.f90
index 99b5f6b6962..128ae8a8fea 100644
--- a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_23.f90
+++ b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_23.f90
@@ -24,7 +24,7 @@ CONTAINS
if (.not.associated(e%info)) e%info => i ! used to ICE
select type (z => e%info)
type is (integer)
- if (z .ne.i) call abort
+ if (z .ne.i) STOP 1
end select
END SUBROUTINE
diff --git a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_24.f03 b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_24.f03
index 39937277323..5de9c69b742 100644
--- a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_24.f03
+++ b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_24.f03
@@ -202,15 +202,15 @@ program main
select case (i)
case (1:10)
read (output(i), '(i6)') j
- if (j .ne. i) call abort
+ if (j .ne. i) STOP 1
case (11)
- if (output(i) .ne. " 1.23") call abort
+ if (output(i) .ne. " 1.23") STOP 2
case (12)
- if (output(i) .ne. " A") call abort
+ if (output(i) .ne. " A") STOP 3
case (13)
- if (output(i) .ne. " BC") call abort
+ if (output(i) .ne. " BC") STOP 4
case (14)
- if (output(i) .ne. " DEF") call abort
+ if (output(i) .ne. " DEF") STOP 5
end select
end do
end program main
diff --git a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_25.f90 b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_25.f90
index d0b2a2e32d1..75fde896bcc 100644
--- a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_25.f90
+++ b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_25.f90
@@ -29,11 +29,11 @@ program test
type(base_type) :: a, b
call dict_put(t, a, b)
- if (.NOT. allocated(t%key)) call abort()
+ if (.NOT. allocated(t%key)) STOP 1
select type (x => t%key)
type is (base_type)
class default
- call abort()
+ STOP 2
end select
deallocate(t%key)
end
diff --git a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_26.f90 b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_26.f90
index 130006907a9..c3b42216ffd 100644
--- a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_26.f90
+++ b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_26.f90
@@ -26,21 +26,21 @@ program test
type(dict_entry_type) :: t
call dict_put(t, "foo", 42)
- if (.NOT. allocated(t%key)) call abort()
+ if (.NOT. allocated(t%key)) STOP 1
select type (x => t%key)
type is (CHARACTER(*))
- if (x /= "foo") call abort()
+ if (x /= "foo") STOP 2
class default
- call abort()
+ STOP 3
end select
deallocate(t%key)
- if (.NOT. allocated(t%val)) call abort()
+ if (.NOT. allocated(t%val)) STOP 4
select type (x => t%val)
type is (INTEGER)
- if (x /= 42) call abort()
+ if (x /= 42) STOP 5
class default
- call abort()
+ STOP 6
end select
deallocate(t%val)
end
diff --git a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_3.f03 b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_3.f03
index 05a4b3f54ec..075d6d727e2 100644
--- a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_3.f03
+++ b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_3.f03
@@ -28,7 +28,7 @@ contains
end type t
type(t), pointer :: x
class(*), pointer :: ptr1 => null() ! pointer initialization
- if (same_type_as (ptr1, x) .neqv. .FALSE.) call abort
+ if (same_type_as (ptr1, x) .neqv. .FALSE.) STOP 1
end subroutine bar
end program main
@@ -47,7 +47,7 @@ subroutine foo(tgt)
type(s), pointer :: ptr1
type(t), pointer :: ptr2
ptr1 => tgt ! bind(c) => unlimited allowed
- if (ptr1%k .ne. 42) call abort
+ if (ptr1%k .ne. 42) STOP 2
ptr2 => tgt ! sequence type => unlimited allowed
- if (ptr2%k .ne. 42) call abort
+ if (ptr2%k .ne. 42) STOP 3
end subroutine foo
diff --git a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_5.f90 b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_5.f90
index 12a3c4a5624..3d2b4c2abef 100644
--- a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_5.f90
+++ b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_5.f90
@@ -16,7 +16,7 @@ program mvall_03
i2 = 2
call move_alloc(i2, i1)
if (size(i1) /= n2 .or. allocated(i2)) then
- call abort
+ STOP 1
! write(*,*) 'FAIL'
else
! write(*,*) 'OK'
@@ -24,18 +24,18 @@ program mvall_03
select type (i1)
type is (integer)
- if (any (i1 /= 2)) call abort
+ if (any (i1 /= 2)) STOP 2
class default
- call abort()
+ STOP 1
end select
call move_alloc (i1, i3)
if (size(i3) /= n2 .or. allocated(i1)) then
- call abort()
+ STOP 2
end if
select type (i3)
type is (integer)
- if (any (i3 /= 2)) call abort
+ if (any (i3 /= 2)) STOP 3
class default
- call abort()
+ STOP 3
end select
end program
diff --git a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_6.f90 b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_6.f90
index a64f4e393e2..da9d1a7c29d 100644
--- a/gcc/testsuite/gfortran.dg/unlimited_polymorphic_6.f90
+++ b/gcc/testsuite/gfortran.dg/unlimited_polymorphic_6.f90
@@ -27,11 +27,11 @@ program alloc_scalar_01
if (mystuff == 4) then
! write(*,*) 'OK'
else
- call abort()
+ STOP 1
! write(*,*) 'FAIL 1'
end if
class default
- call abort()
+ STOP 2
! write(*,*) 'FAIL 2'
end select
end program
diff --git a/gcc/testsuite/gfortran.dg/unpack_init_expr.f03 b/gcc/testsuite/gfortran.dg/unpack_init_expr.f03
index 924694cadaf..87feb7a3090 100644
--- a/gcc/testsuite/gfortran.dg/unpack_init_expr.f03
+++ b/gcc/testsuite/gfortran.dg/unpack_init_expr.f03
@@ -10,6 +10,6 @@
INTEGER, PARAMETER :: r1(3,3) = UNPACK (V, MASK=Q, FIELD=M)
INTEGER, PARAMETER :: r2(3,3) = UNPACK (V, MASK=Q, FIELD=0)
- IF (ANY (r1 /= RESHAPE ([1,1,0,2,1,0,0,0,3], [3,3]))) CALL ABORT()
- IF (ANY (r2 /= RESHAPE ([0,1,0,2,0,0,0,0,3], [3,3]))) CALL ABORT()
+ IF (ANY (r1 /= RESHAPE ([1,1,0,2,1,0,0,0,3], [3,3]))) STOP 1
+ IF (ANY (r2 /= RESHAPE ([0,1,0,2,0,0,0,0,3], [3,3]))) STOP 2
END
diff --git a/gcc/testsuite/gfortran.dg/use_10.f90 b/gcc/testsuite/gfortran.dg/use_10.f90
index e52fcff7e59..1356334ac54 100644
--- a/gcc/testsuite/gfortran.dg/use_10.f90
+++ b/gcc/testsuite/gfortran.dg/use_10.f90
@@ -25,5 +25,5 @@ program test
use a, only: operator(.op.), operator(.op.), &
operator(.my.)=>operator(.op.),operator(.ops.)=>operator(.op.)
implicit none
-if (.my.2 /= -2 .or. .op.3 /= -3 .or. .ops.7 /= -7) call abort()
+if (.my.2 /= -2 .or. .op.3 /= -3 .or. .ops.7 /= -7) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/use_11.f90 b/gcc/testsuite/gfortran.dg/use_11.f90
index 13530998480..4e1561f9d0f 100644
--- a/gcc/testsuite/gfortran.dg/use_11.f90
+++ b/gcc/testsuite/gfortran.dg/use_11.f90
@@ -13,5 +13,5 @@ use m, local1 => a
use m, local2 => a
local1 = 5
local2 = 3
-if (local1 .ne. local2) call abort ()
+if (local1 .ne. local2) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/use_13.f90 b/gcc/testsuite/gfortran.dg/use_13.f90
index 2f6d4e7efcd..84e4b661739 100644
--- a/gcc/testsuite/gfortran.dg/use_13.f90
+++ b/gcc/testsuite/gfortran.dg/use_13.f90
@@ -25,17 +25,17 @@ contains
! All procedures/variables below refer to the ones in module "m"
! and not to the siblings in this module "m2".
use m
- if (fun() /= 42) call abort()
- if (var /= 43) call abort()
+ if (fun() /= 42) STOP 1
+ if (var /= 43) STOP 2
call fun2()
- if (var /= 44) call abort()
+ if (var /= 44) STOP 3
end subroutine test
integer function fun()
- call abort()
+ STOP 4
fun = -3
end function fun
subroutine fun2()
- call abort()
+ STOP 5
end subroutine fun2
end module m2
diff --git a/gcc/testsuite/gfortran.dg/use_24.f90 b/gcc/testsuite/gfortran.dg/use_24.f90
index b709347b0fd..2615ecbb199 100644
--- a/gcc/testsuite/gfortran.dg/use_24.f90
+++ b/gcc/testsuite/gfortran.dg/use_24.f90
@@ -37,7 +37,7 @@ contains
use mod1
type(t1) :: a
call a%get(j)
- if (j /= 2) call abort
+ if (j /= 2) STOP 1
end subroutine test1
subroutine test2()
@@ -45,7 +45,7 @@ contains
use mod2
type(t1) :: a
call a%get(j)
- if (j /= 2) call abort
+ if (j /= 2) STOP 2
end subroutine test2
end
diff --git a/gcc/testsuite/gfortran.dg/use_27.f90 b/gcc/testsuite/gfortran.dg/use_27.f90
index 71d77cc0180..48ebd02428e 100644
--- a/gcc/testsuite/gfortran.dg/use_27.f90
+++ b/gcc/testsuite/gfortran.dg/use_27.f90
@@ -67,14 +67,14 @@ contains
iflag = 0
call bTypeInstance%callback(iflag)
- if (iflag /= 7) call abort
+ if (iflag /= 7) STOP 1
iflag = 1
call solver( bTypeInstance, iflag )
- if (iflag /= 7) call abort
+ if (iflag /= 7) STOP 2
iflag = 2
call aTypeInstance%callback(iflag)
- if (iflag /= 3) call abort
+ if (iflag /= 3) STOP 3
end subroutine test1
subroutine test2
@@ -89,14 +89,14 @@ contains
iflag = 0
call bTypeInstance%callback(iflag)
- if (iflag /= 7) call abort
+ if (iflag /= 7) STOP 4
iflag = 1
call solver( bTypeInstance, iflag )
- if (iflag /= 7) call abort
+ if (iflag /= 7) STOP 5
iflag = 2
call aTypeInstance%callback(iflag)
- if (iflag /= 3) call abort
+ if (iflag /= 3) STOP 6
end subroutine test2
end program main
diff --git a/gcc/testsuite/gfortran.dg/use_5.f90 b/gcc/testsuite/gfortran.dg/use_5.f90
index 44f5389a381..a9c09946803 100644
--- a/gcc/testsuite/gfortran.dg/use_5.f90
+++ b/gcc/testsuite/gfortran.dg/use_5.f90
@@ -41,7 +41,7 @@ use y, operator(.my.) => operator(.addfive.)
use z
integer :: i
i = 2
- if ((.bar. i) /= 2+25) call abort ()
- if ((.my. i) /= 2+15) call abort ()
- if ((.addfive. i) /= 2+5) call abort ()
+ if ((.bar. i) /= 2+25) STOP 1
+ if ((.my. i) /= 2+15) STOP 2
+ if ((.addfive. i) /= 2+5) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/use_allocated_1.f90 b/gcc/testsuite/gfortran.dg/use_allocated_1.f90
index fb51502edc2..18bebb56504 100644
--- a/gcc/testsuite/gfortran.dg/use_allocated_1.f90
+++ b/gcc/testsuite/gfortran.dg/use_allocated_1.f90
@@ -14,5 +14,5 @@ end program main
subroutine init
use foo
- if (.not.allocated(bar)) call abort
+ if (.not.allocated(bar)) STOP 1
end subroutine init
diff --git a/gcc/testsuite/gfortran.dg/use_only_1.f90 b/gcc/testsuite/gfortran.dg/use_only_1.f90
index c40e751c658..6bfcc813ebb 100644
--- a/gcc/testsuite/gfortran.dg/use_only_1.f90
+++ b/gcc/testsuite/gfortran.dg/use_only_1.f90
@@ -64,8 +64,8 @@ contains
USE ymod, ONLY: yrenamed => y
USE ymod
implicit integer(2) (a-z)
- if (kind(xrenamed) == kind(x)) call abort ()
- if (kind(yrenamed) == kind(y)) call abort ()
+ if (kind(xrenamed) == kind(x)) STOP 1
+ if (kind(yrenamed) == kind(y)) STOP 2
end subroutine
subroutine test2 ! Test the fix applies to generic interfaces
@@ -74,8 +74,8 @@ contains
USE ymod, ONLY: yfoobar_renamed => yfoobar
USE ymod
implicit integer(4) (a-z)
- if (xfoobar_renamed (42) == xfoobar ()) call abort ()
- if (yfoobar_renamed (42) == yfoobar ()) call abort ()
+ if (xfoobar_renamed (42) == xfoobar ()) STOP 3
+ if (yfoobar_renamed (42) == yfoobar ()) STOP 4
end subroutine
subroutine test3 ! Check that USE_NAME == LOCAL_NAME is OK
@@ -83,9 +83,9 @@ contains
USE xmod, ONLY: x => x, xfoobar => xfoobar
USE ymod, ONLY: y => y, yfoobar => yfoobar
USE ymod
- if (kind (x) /= 4) call abort ()
- if (kind (y) /= 4) call abort ()
- if (xfoobar (77) /= 77_4) call abort ()
- if (yfoobar (77) /= 77_4) call abort ()
+ if (kind (x) /= 4) STOP 5
+ if (kind (y) /= 4) STOP 6
+ if (xfoobar (77) /= 77_4) STOP 7
+ if (yfoobar (77) /= 77_4) STOP 8
end subroutine
END PROGRAM test2uses
diff --git a/gcc/testsuite/gfortran.dg/use_only_4.f90 b/gcc/testsuite/gfortran.dg/use_only_4.f90
index 6a6cb067afc..cebca14b3cb 100644
--- a/gcc/testsuite/gfortran.dg/use_only_4.f90
+++ b/gcc/testsuite/gfortran.dg/use_only_4.f90
@@ -12,7 +12,7 @@ module m1
end interface
contains
subroutine one1()
- call abort
+ STOP 1
end subroutine one1
end module m1
diff --git a/gcc/testsuite/gfortran.dg/use_rename_2.f90 b/gcc/testsuite/gfortran.dg/use_rename_2.f90
index 3688bc8fd39..8ed6d4c52a4 100644
--- a/gcc/testsuite/gfortran.dg/use_rename_2.f90
+++ b/gcc/testsuite/gfortran.dg/use_rename_2.f90
@@ -18,7 +18,7 @@ contains
integer a, b
a = max (1,5)
b = min (1,5)
- if (a .ne. 1) call abort ()
- if (b .ne. 5) call abort ()
+ if (a .ne. 1) STOP 1
+ if (b .ne. 5) STOP 2
end subroutine test2
end
diff --git a/gcc/testsuite/gfortran.dg/use_rename_4.f90 b/gcc/testsuite/gfortran.dg/use_rename_4.f90
index e0e83b89181..d98d6542444 100644
--- a/gcc/testsuite/gfortran.dg/use_rename_4.f90
+++ b/gcc/testsuite/gfortran.dg/use_rename_4.f90
@@ -17,6 +17,6 @@ PROGRAM main
j = 5
IF (i /= j) THEN
- CALL abort ()
+ STOP 1
END IF
END PROGRAM main
diff --git a/gcc/testsuite/gfortran.dg/used_dummy_types_1.f90 b/gcc/testsuite/gfortran.dg/used_dummy_types_1.f90
index 30f3d4cdd1c..78abbc37e58 100644
--- a/gcc/testsuite/gfortran.dg/used_dummy_types_1.f90
+++ b/gcc/testsuite/gfortran.dg/used_dummy_types_1.f90
@@ -32,5 +32,5 @@ end module atest
type(t1) :: res = t1 (0)
call init ()
call test (res)
- if (res%a.ne.42) call abort
+ if (res%a.ne.42) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/used_interface_ref.f90 b/gcc/testsuite/gfortran.dg/used_interface_ref.f90
index 1b241e976ac..6ffd8901889 100644
--- a/gcc/testsuite/gfortran.dg/used_interface_ref.f90
+++ b/gcc/testsuite/gfortran.dg/used_interface_ref.f90
@@ -25,7 +25,7 @@
REAL :: buffer_conc(1:anzKomponenten)
buffer_conc = solveCConvert ()
if (any(buffer_conc .ne. (/(real(i), i = 1, anzKomponenten)/))) &
- call abort ()
+ STOP 1
END SUBROUTINE outDiffKoeff
program missing_ref
diff --git a/gcc/testsuite/gfortran.dg/used_types_5.f90 b/gcc/testsuite/gfortran.dg/used_types_5.f90
index 7f729b8204c..5db1987bde8 100644
--- a/gcc/testsuite/gfortran.dg/used_types_5.f90
+++ b/gcc/testsuite/gfortran.dg/used_types_5.f90
@@ -53,6 +53,6 @@ end module global
common /c/ cam
x = -42.0
call foo(x)
- if (any (x .ne. (/42.0, 42.0, -42.0, -42.0/))) call abort ()
- if (cam%i .ne. 99) call abort ()
+ if (any (x .ne. (/42.0, 42.0, -42.0, -42.0/))) STOP 1
+ if (cam%i .ne. 99) STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/utf8_1.f03 b/gcc/testsuite/gfortran.dg/utf8_1.f03
index c07a6b85ab4..e151dd5fa13 100644
--- a/gcc/testsuite/gfortran.dg/utf8_1.f03
+++ b/gcc/testsuite/gfortran.dg/utf8_1.f03
@@ -17,14 +17,14 @@ program test1
string3 = "abcdefghijklmnopqrstuvwxyz"
read(10,'(a)') string1
read(10,'(a)') string2
- if (string1 /= k4_"This is Greek: \u039f\u03cd\u03c7\u03af") call abort
- if (len(trim(string1)) /= 20) call abort
+ if (string1 /= k4_"This is Greek: \u039f\u03cd\u03c7\u03af") STOP 1
+ if (len(trim(string1)) /= 20) STOP 2
if (string2 /= k4_" Jerry in Japanese is: \u30b8\u30a8\u30ea\u30fc")&
- & call abort
- if (len(string2) /= 30) call abort
+ & STOP 3
+ if (len(string2) /= 30) STOP 4
rewind(10)
read(10,'(a)') string3
- if (string3 /= "This is Greek: ????") call abort
+ if (string3 /= "This is Greek: ????") STOP 5
end program test1
! The following examples require UTF-8 enabled editor to see correctly.
! ジエリー Sample of Japanese characters.
diff --git a/gcc/testsuite/gfortran.dg/utf8_2.f03 b/gcc/testsuite/gfortran.dg/utf8_2.f03
index 0146a2e281b..e75cd897f08 100644
--- a/gcc/testsuite/gfortran.dg/utf8_2.f03
+++ b/gcc/testsuite/gfortran.dg/utf8_2.f03
@@ -12,5 +12,5 @@ program test2
1 format(i0,a,i0,a,i0,a)
rewind(10)
read(10,'(a)') string
- if (string /= ucs4_"2008\u5e748\u670810\u65e5") call abort
+ if (string /= ucs4_"2008\u5e748\u670810\u65e5") STOP 1
end program test2
diff --git a/gcc/testsuite/gfortran.dg/value_1.f90 b/gcc/testsuite/gfortran.dg/value_1.f90
index be459b0978a..ab0d4095220 100644
--- a/gcc/testsuite/gfortran.dg/value_1.f90
+++ b/gcc/testsuite/gfortran.dg/value_1.f90
@@ -1,5 +1,5 @@
! { dg-do run }
-! { dg-options "-std=f2003 -fall-intrinsics" }
+! { dg-options "-std=f2003 " }
! Tests the functionality of the patch for PR29642, which requested the
! implementation of the F2003 VALUE attribute for gfortran.
!
@@ -13,9 +13,9 @@ module global
contains
subroutine typhoo (dt)
type(mytype), value :: dt
- if (dtne (dt, mytype (42.0, "lmno"))) call abort ()
+ if (dtne (dt, mytype (42.0, "lmno"))) STOP 1
dt = mytype (21.0, "wxyz")
- if (dtne (dt, mytype (21.0, "wxyz"))) call abort ()
+ if (dtne (dt, mytype (21.0, "wxyz"))) STOP 2
end subroutine typhoo
logical function dtne (a, b)
@@ -34,19 +34,19 @@ program test_value
type(mytype) :: dt = mytype (42.0, "lmno")
call foo (c)
- if (c /= "ab") call abort ()
+ if (c /= "ab") STOP 3
call bar (i)
- if (i /= 42) call abort ()
+ if (i /= 42) STOP 4
call foobar (r)
- if (r /= 42.0) call abort ()
+ if (r /= 42.0) STOP 5
call complex_foo (z)
- if (z /= (-99.0, 199.0)) call abort ()
+ if (z /= (-99.0, 199.0)) STOP 6
call typhoo (dt)
- if (dtne (dt, mytype (42.0, "lmno"))) call abort ()
+ if (dtne (dt, mytype (42.0, "lmno"))) STOP 7
r = 20.0
call foobar (r*2.0 + 2.0)
@@ -54,30 +54,30 @@ program test_value
contains
subroutine foo (c)
character(2), value :: c
- if (c /= "ab") call abort ()
+ if (c /= "ab") STOP 8
c = "cd"
- if (c /= "cd") call abort ()
+ if (c /= "cd") STOP 9
end subroutine foo
subroutine bar (i)
integer(8), value :: i
- if (i /= 42) call abort ()
+ if (i /= 42) STOP 10
i = 99
- if (i /= 99) call abort ()
+ if (i /= 99) STOP 11
end subroutine bar
subroutine foobar (r)
real(8), value :: r
- if (r /= 42.0) call abort ()
+ if (r /= 42.0) STOP 12
r = 99.0
- if (r /= 99.0) call abort ()
+ if (r /= 99.0) STOP 13
end subroutine foobar
subroutine complex_foo (z)
COMPLEX(8), value :: z
- if (z /= (-99.0, 199.0)) call abort ()
+ if (z /= (-99.0, 199.0)) STOP 14
z = (77.0, -42.0)
- if (z /= (77.0, -42.0)) call abort ()
+ if (z /= (77.0, -42.0)) STOP 15
end subroutine complex_foo
end program test_value
diff --git a/gcc/testsuite/gfortran.dg/value_2.f90 b/gcc/testsuite/gfortran.dg/value_2.f90
index d25683c2e50..def9c025de2 100644
--- a/gcc/testsuite/gfortran.dg/value_2.f90
+++ b/gcc/testsuite/gfortran.dg/value_2.f90
@@ -9,13 +9,13 @@ program test_value
integer(8) :: i = 42
call bar (i)
- if (i /= 42) call abort ()
+ if (i /= 42) STOP 1
contains
subroutine bar (i)
integer(8) :: i
value :: i ! { dg-error "Fortran 2003: VALUE" }
- if (i /= 42) call abort ()
+ if (i /= 42) STOP 2
i = 99
- if (i /= 99) call abort ()
+ if (i /= 99) STOP 3
end subroutine bar
end program test_value
diff --git a/gcc/testsuite/gfortran.dg/value_4.f90 b/gcc/testsuite/gfortran.dg/value_4.f90
index 473c28182d7..b12be69c2f9 100644
--- a/gcc/testsuite/gfortran.dg/value_4.f90
+++ b/gcc/testsuite/gfortran.dg/value_4.f90
@@ -67,17 +67,17 @@ program value_4
b = 0.0
c = a
b = f_to_f (a, c)
- if (delta ((2.0 * a), b)) call abort ()
+ if (delta ((2.0 * a), b)) STOP 1
i = 99
j = 0
k = i
j = i_to_i (i, k)
- if (delta ((3_4 * i), j)) call abort ()
+ if (delta ((3_4 * i), j)) STOP 2
u = (-1.0, 2.0)
v = (1.0, -2.0)
w = u
v = c_to_c (u, w)
- if (delta ((4.0 * u), v)) call abort ()
+ if (delta ((4.0 * u), v)) STOP 3
end program value_4
diff --git a/gcc/testsuite/gfortran.dg/value_6.f03 b/gcc/testsuite/gfortran.dg/value_6.f03
index 844960fe0e7..b972fd776a8 100644
--- a/gcc/testsuite/gfortran.dg/value_6.f03
+++ b/gcc/testsuite/gfortran.dg/value_6.f03
@@ -12,7 +12,7 @@ contains
end subroutine test
subroutine test2(a) bind(c)
character(kind=c_char), value :: a
- if(a /= c_char_'a') call abort ()
+ if(a /= c_char_'a') STOP 1
print *, 'a=',a
end subroutine test2
end module pr32732
diff --git a/gcc/testsuite/gfortran.dg/value_7.f03 b/gcc/testsuite/gfortran.dg/value_7.f03
index 24395778ec7..31ca0863ad5 100644
--- a/gcc/testsuite/gfortran.dg/value_7.f03
+++ b/gcc/testsuite/gfortran.dg/value_7.f03
@@ -6,7 +6,7 @@ program test
character(len=13) :: chr
chr = 'Fortran '
call sub1(chr)
- if(chr /= 'Fortran ') call abort()
+ if(chr /= 'Fortran ') STOP 1
contains
subroutine sub1(a)
character(len=13), VALUE :: a
@@ -16,7 +16,7 @@ contains
subroutine sub2(a)
character(len=13), VALUE :: a
print *, a
- if(a /= 'Fortran rules') call abort()
+ if(a /= 'Fortran rules') STOP 2
end subroutine sub2
end program test
diff --git a/gcc/testsuite/gfortran.dg/value_test.f90 b/gcc/testsuite/gfortran.dg/value_test.f90
index 12313324c4d..6de29d1062b 100644
--- a/gcc/testsuite/gfortran.dg/value_test.f90
+++ b/gcc/testsuite/gfortran.dg/value_test.f90
@@ -12,7 +12,7 @@ program valueTests
call mySub(myInt)
! myInt should be unchanged since pass-by-value
if(myInt .ne. 10) then
- call abort ()
+ STOP 1
endif
end program valueTests
diff --git a/gcc/testsuite/gfortran.dg/vect/fast-math-pr33299.f90 b/gcc/testsuite/gfortran.dg/vect/fast-math-pr33299.f90
index 8aca77d3bef..68f7969623a 100644
--- a/gcc/testsuite/gfortran.dg/vect/fast-math-pr33299.f90
+++ b/gcc/testsuite/gfortran.dg/vect/fast-math-pr33299.f90
@@ -4,7 +4,7 @@ PROGRAM test
REAL(8) :: f,dist(2)
dist = [1.0_8, 0.5_8]
if( f(1.0_8, dist) /= MINVAL(dist)) then
- call abort ()
+ STOP 1
endif
END PROGRAM test
diff --git a/gcc/testsuite/gfortran.dg/vect/no-fre-no-copy-prop-O3-pr51704.f90 b/gcc/testsuite/gfortran.dg/vect/no-fre-no-copy-prop-O3-pr51704.f90
index bbd80af92d6..bf2ca0e953d 100644
--- a/gcc/testsuite/gfortran.dg/vect/no-fre-no-copy-prop-O3-pr51704.f90
+++ b/gcc/testsuite/gfortran.dg/vect/no-fre-no-copy-prop-O3-pr51704.f90
@@ -18,18 +18,18 @@
& i=0,nx-1), j=0,ny-1) /), shape(pz))
integer, dimension(nx,ny,nz) :: a
integer, dimension(nx,ny ) :: az
- if (sum(sum(sum(a,1),2),1) /= sum(a)) call abort
- if (sum(sum(sum(a,3),1),1) /= sum(a)) call abort
+ if (sum(sum(sum(a,1),2),1) /= sum(a)) STOP 1
+ if (sum(sum(sum(a,3),1),1) /= sum(a)) STOP 2
if (any(1+sum(eid(a),1)+ax+sum( &
neid3(a), &
- 1)+1 /= 3*ax+2)) call abort
+ 1)+1 /= 3*ax+2)) STOP 3
if (any(1+eid(sum(a,2))+ay+ &
neid2( &
sum(a,2) &
- )+1 /= 3*ay+2)) call abort
+ )+1 /= 3*ay+2)) STOP 4
if (any(sum(eid(sum(a,3))+az+2* &
neid2(az) &
- ,1)+1 /= 4*sum(az,1)+1)) call abort
+ ,1)+1 /= 4*sum(az,1)+1)) STOP 5
contains
elemental function eid (x)
integer, intent(in) :: x
diff --git a/gcc/testsuite/gfortran.dg/vect/pr60510.f b/gcc/testsuite/gfortran.dg/vect/pr60510.f
index 202c1be8ee4..ecd50dd5586 100644
--- a/gcc/testsuite/gfortran.dg/vect/pr60510.f
+++ b/gcc/testsuite/gfortran.dg/vect/pr60510.f
@@ -22,7 +22,7 @@
y(i) = i+1
enddo
call foo(a,x,y,1024)
- if (a.ne.359488000.0) call abort()
+ if (a.ne.359488000.0) STOP 1
end
! If there's no longer a reduction chain detected this doesn't test what
! it was supposed to test, vectorizing a reduction chain w/o SLP.
diff --git a/gcc/testsuite/gfortran.dg/vect/pr69882.f90 b/gcc/testsuite/gfortran.dg/vect/pr69882.f90
index f77e33f11a9..3c20da78e56 100644
--- a/gcc/testsuite/gfortran.dg/vect/pr69882.f90
+++ b/gcc/testsuite/gfortran.dg/vect/pr69882.f90
@@ -22,11 +22,11 @@ subroutine foo(a, x)
PRINT *, "c=", c
IF (c(1) .gt. 0.0) THEN
- CALL ABORT
+ STOP 1
END IF
IF (c(2) .gt. 0.0) THEN
- CALL ABORT
+ STOP 2
END IF
end subroutine foo
diff --git a/gcc/testsuite/gfortran.dg/vect/pr69980.f90 b/gcc/testsuite/gfortran.dg/vect/pr69980.f90
index ec13bde7014..b9b2eb99617 100644
--- a/gcc/testsuite/gfortran.dg/vect/pr69980.f90
+++ b/gcc/testsuite/gfortran.dg/vect/pr69980.f90
@@ -4,7 +4,7 @@ subroutine check (a, b)
real *8, intent(in) :: a(4), b(4)
IF (abs(a(1)-b(1)) > 1) THEN
- CALL ABORT
+ STOP 1
END IF
end subroutine check
diff --git a/gcc/testsuite/gfortran.dg/vect/vect-5.f90 b/gcc/testsuite/gfortran.dg/vect/vect-5.f90
index 54887f9af53..de283e8b85f 100644
--- a/gcc/testsuite/gfortran.dg/vect/vect-5.f90
+++ b/gcc/testsuite/gfortran.dg/vect/vect-5.f90
@@ -20,7 +20,7 @@
do I = 1, N
do J = I, M
if (A(J,2) /= B(J)) then
- call abort ()
+ STOP 1
endif
end do
end do
diff --git a/gcc/testsuite/gfortran.dg/vect/vect-alias-check-1.F90 b/gcc/testsuite/gfortran.dg/vect/vect-alias-check-1.F90
index ea9ba85de7c..3014ff9f3b6 100644
--- a/gcc/testsuite/gfortran.dg/vect/vect-alias-check-1.F90
+++ b/gcc/testsuite/gfortran.dg/vect/vect-alias-check-1.F90
@@ -17,11 +17,11 @@ subroutine check(a, x, gap)
integer :: gap
do i = 1, N - gap
temp = a(i + gap) + x
- if (a(i) /= temp) call abort
+ if (a(i) /= temp) STOP 1
end do
do i = N - gap + 1, N
temp = TEST_VALUE(i)
- if (a(i) /= temp) call abort
+ if (a(i) /= temp) STOP 2
end do
end subroutine
diff --git a/gcc/testsuite/gfortran.dg/vector_subscript_1.f90 b/gcc/testsuite/gfortran.dg/vector_subscript_1.f90
index dd09fbb0b8a..0d0725282e8 100644
--- a/gcc/testsuite/gfortran.dg/vector_subscript_1.f90
+++ b/gcc/testsuite/gfortran.dg/vector_subscript_1.f90
@@ -89,7 +89,7 @@ program main
a (foo (5, calls)) = b (foo (5, calls))
call test (foo (5, calls), foo (5, calls))
- if (calls .ne. 8) call abort
+ if (calls .ne. 8) STOP 1
!------------------------------------------------------------------
! Tests for constant vector constructors
@@ -125,31 +125,31 @@ program main
calls = 0
a (idx (1:6)) = foo (6, calls)
- if (calls .ne. 1) call abort
+ if (calls .ne. 1) STOP 2
do i = 1, 6
- if (a (idx (i)) .ne. i + 3) call abort
+ if (a (idx (i)) .ne. i + 3) STOP 3
end do
a = 0
calls = 0
a (idx (1:6)) = foo (6, calls) * 100
- if (calls .ne. 1) call abort
+ if (calls .ne. 1) STOP 4
do i = 1, 6
- if (a (idx (i)) .ne. (i + 3) * 100) call abort
+ if (a (idx (i)) .ne. (i + 3) * 100) STOP 5
end do
a = 0
a (idx) = id + 100
do i = 1, n
- if (a (idx (i)) .ne. i + 100) call abort
+ if (a (idx (i)) .ne. i + 100) STOP 6
end do
a = 0
a (idx (1:10:3)) = (/ 20, 10, 9, 11 /)
- if (a (idx (1)) .ne. 20) call abort
- if (a (idx (4)) .ne. 10) call abort
- if (a (idx (7)) .ne. 9) call abort
- if (a (idx (10)) .ne. 11) call abort
+ if (a (idx (1)) .ne. 20) STOP 7
+ if (a (idx (4)) .ne. 10) STOP 8
+ if (a (idx (7)) .ne. 9) STOP 9
+ if (a (idx (10)) .ne. 11) STOP 10
a = 0
contains
@@ -157,9 +157,9 @@ contains
integer, dimension (:) :: lhs, rhs
integer :: i
- if (size (lhs, 1) .ne. size (rhs, 1)) call abort
+ if (size (lhs, 1) .ne. size (rhs, 1)) STOP 11
do i = 1, size (lhs, 1)
- if (a (lhs (i)) .ne. b (rhs (i))) call abort
+ if (a (lhs (i)) .ne. b (rhs (i))) STOP 12
end do
a = 0
end subroutine test
diff --git a/gcc/testsuite/gfortran.dg/vector_subscript_2.f90 b/gcc/testsuite/gfortran.dg/vector_subscript_2.f90
index a5c024a28ed..77fc6c71343 100644
--- a/gcc/testsuite/gfortran.dg/vector_subscript_2.f90
+++ b/gcc/testsuite/gfortran.dg/vector_subscript_2.f90
@@ -18,7 +18,7 @@ program main
a (foo (i1), 1, :) = b (2, :, foo (i1))
do i1 = 1, 5
do i2 = 1, 5
- if (a (idx (i1), 1, i2) .ne. b (2, i1, idx (i2))) call abort
+ if (a (idx (i1), 1, i2) .ne. b (2, i1, idx (i2))) STOP 1
end do
end do
a = 0
@@ -26,7 +26,7 @@ program main
a (1, idx (1:4), 2:4) = b (2:5, idx (3:5), 2)
do i1 = 1, 4
do i2 = 1, 3
- if (a (1, idx (i1), 1 + i2) .ne. b (1 + i1, idx (i2 + 2), 2)) call abort
+ if (a (1, idx (i1), 1 + i2) .ne. b (1 + i1, idx (i2 + 2), 2)) STOP 2
end do
end do
a = 0
diff --git a/gcc/testsuite/gfortran.dg/vector_subscript_3.f90 b/gcc/testsuite/gfortran.dg/vector_subscript_3.f90
index 3fa306e1639..cfe87a26e55 100644
--- a/gcc/testsuite/gfortran.dg/vector_subscript_3.f90
+++ b/gcc/testsuite/gfortran.dg/vector_subscript_3.f90
@@ -20,26 +20,26 @@ Program QH0008
ACTION = 'READWRITE')
ISTAT = -314
REWIND (47, IOSTAT = ISTAT)
- IF (ISTAT .NE. 0) call abort ()
+ IF (ISTAT .NE. 0) STOP 1
ISTAT = -314
! write qda1
WRITE (47,IOSTAT = ISTAT) QDA1
- IF (ISTAT .NE. 0) call abort ()
+ IF (ISTAT .NE. 0) STOP 2
ISTAT = -314
REWIND (47, IOSTAT = ISTAT)
- IF (ISTAT .NE. 0) call abort ()
+ IF (ISTAT .NE. 0) STOP 3
! Do the vector index read that used to fail
READ (47,IOSTAT = ISTAT) QDA(NFV1)
- IF (ISTAT .NE. 0) call abort ()
+ IF (ISTAT .NE. 0) STOP 4
! Unscramble qda using the vector index
IF (ANY (QDA(nfv1) .ne. QDA1) ) print *, qda, qda1
ISTAT = -314
REWIND (47, IOSTAT = ISTAT)
- IF (ISTAT .NE. 0) call abort ()
+ IF (ISTAT .NE. 0) STOP 5
qda = -200
! Do the subscript read that was OK
READ (47,IOSTAT = ISTAT) QDA(1:10)
- IF (ISTAT .NE. 0) call abort ()
- IF (ANY (QDA .ne. QDA1) ) call abort ()
+ IF (ISTAT .NE. 0) STOP 6
+ IF (ANY (QDA .ne. QDA1) ) STOP 7
END
diff --git a/gcc/testsuite/gfortran.dg/vector_subscript_5.f90 b/gcc/testsuite/gfortran.dg/vector_subscript_5.f90
index 88eb358e6bf..d69f6090261 100644
--- a/gcc/testsuite/gfortran.dg/vector_subscript_5.f90
+++ b/gcc/testsuite/gfortran.dg/vector_subscript_5.f90
@@ -22,5 +22,5 @@ end subroutine
c = 2
p = 2
call subr (3, 2, a, b, c, d, p)
- if (any (d .ne. reshape ((/(mod (i + 2, 3), i = 1, 6)/), (/3, 2/)))) call abort
+ if (any (d .ne. reshape ((/(mod (i + 2, 3), i = 1, 6)/), (/3, 2/)))) STOP 1
end
diff --git a/gcc/testsuite/gfortran.dg/verify_2.f90 b/gcc/testsuite/gfortran.dg/verify_2.f90
index 705d775047f..09f5b56f3f9 100644
--- a/gcc/testsuite/gfortran.dg/verify_2.f90
+++ b/gcc/testsuite/gfortran.dg/verify_2.f90
@@ -3,9 +3,9 @@ program verify_2
character(len=3) s1, s2
s1 = 'abc'
s2 = ''
- if (verify('ab', '') /= 1) call abort
- if (verify(s1, s2) /= 1) call abort
- if (verify('abc', '', .true.) /= 3) call abort
- if (verify(s1, s2, .true.) /= 3) call abort
+ if (verify('ab', '') /= 1) STOP 1
+ if (verify(s1, s2) /= 1) STOP 2
+ if (verify('abc', '', .true.) /= 3) STOP 3
+ if (verify(s1, s2, .true.) /= 3) STOP 4
end program verify_2
diff --git a/gcc/testsuite/gfortran.dg/volatile10.f90 b/gcc/testsuite/gfortran.dg/volatile10.f90
index 6db88694cf8..eb63e4b5b96 100644
--- a/gcc/testsuite/gfortran.dg/volatile10.f90
+++ b/gcc/testsuite/gfortran.dg/volatile10.f90
@@ -16,16 +16,16 @@ contains
subroutine test1(cmp)
logical :: cmp
volatile :: l, lv
- if (l .neqv. cmp) call abort()
- if (lv .neqv. cmp) call abort()
+ if (l .neqv. cmp) STOP 1
+ if (lv .neqv. cmp) STOP 2
l = .false.
lv = .false.
if(l .or. lv) print *, 'one_test1' ! not optimized away
end subroutine test1
subroutine test2(cmp)
logical :: cmp
- if (l .neqv. cmp) call abort()
- if (lv .neqv. cmp) call abort()
+ if (l .neqv. cmp) STOP 3
+ if (lv .neqv. cmp) STOP 4
l = .false.
if(l) print *, 'one_test2_1' ! optimized away
lv = .false.
@@ -41,8 +41,8 @@ contains
subroutine test1t(cmp)
logical :: cmp
volatile :: l, lv
- if (l .neqv. cmp) call abort()
- if (lv .neqv. cmp) call abort()
+ if (l .neqv. cmp) STOP 5
+ if (lv .neqv. cmp) STOP 6
l = .false.
if(l) print *, 'two_test1_1' ! not optimized away
lv = .false.
@@ -50,8 +50,8 @@ contains
end subroutine test1t
subroutine test2t(cmp)
logical :: cmp
- if (l .neqv. cmp) call abort()
- if (lv .neqv. cmp) call abort()
+ if (l .neqv. cmp) STOP 7
+ if (lv .neqv. cmp) STOP 8
l = .false.
if(l) print *, 'two_test2_1' ! not optimized away
lv = .false.
@@ -81,8 +81,8 @@ contains
use :: one
logical :: cmp
volatile :: lm,lmv
- if(lm .neqv. cmp) call abort()
- if(lmv .neqv. cmp) call abort()
+ if(lm .neqv. cmp) STOP 9
+ if(lmv .neqv. cmp) STOP 10
l = .false.
lv = .false.
call test1(.false.)
@@ -107,8 +107,8 @@ contains
use :: one
logical :: cmp
volatile :: lv
- if(lm .neqv. cmp) call abort
- if(lmv .neqv. cmp) call abort()
+ if(lm .neqv. cmp) STOP 1
+ if(lmv .neqv. cmp) STOP 11
l = .false.
lv = .false.
call test1(.false.)
diff --git a/gcc/testsuite/gfortran.dg/where_1.f90 b/gcc/testsuite/gfortran.dg/where_1.f90
index 0f5b5e77b75..669ed3942a0 100644
--- a/gcc/testsuite/gfortran.dg/where_1.f90
+++ b/gcc/testsuite/gfortran.dg/where_1.f90
@@ -17,7 +17,7 @@
elsewhere
la = .true.
end where
- if (any(la .eqv. lb)) call abort()
+ if (any(la .eqv. lb)) STOP 1
CONTAINS
subroutine PR35759
integer UDA1L(6)
@@ -31,7 +31,7 @@ CONTAINS
ELSEWHERE
UDA1L(2:6) = UDA1R(6:2:-1)
ENDWHERE
- if (any (expected /= uda1l)) call abort
+ if (any (expected /= uda1l)) STOP 1
END subroutine
SUBROUTINE PR35756
@@ -49,7 +49,7 @@ CONTAINS
ELSEWHERE
ILA = R_MY_MIN_I(ILA)
ENDWHERE
- IF (any (CLA /= ILA)) call abort
+ IF (any (CLA /= ILA)) STOP 2
end subroutine
INTEGER FUNCTION R_MY_MAX_I(A)
diff --git a/gcc/testsuite/gfortran.dg/where_operator_assign_1.f90 b/gcc/testsuite/gfortran.dg/where_operator_assign_1.f90
index bc4790ae719..8a38bc91c44 100644
--- a/gcc/testsuite/gfortran.dg/where_operator_assign_1.f90
+++ b/gcc/testsuite/gfortran.dg/where_operator_assign_1.f90
@@ -85,7 +85,7 @@ PROGRAM test_prog
END WHERE
END DO
- if (any (ia .ne. (/1,-1,2,-2,0,0,0,0,5,-5,6,-6/))) call abort ()
+ if (any (ia .ne. (/1,-1,2,-2,0,0,0,0,5,-5,6,-6/))) STOP 1
CONTAINS
diff --git a/gcc/testsuite/gfortran.dg/where_operator_assign_2.f90 b/gcc/testsuite/gfortran.dg/where_operator_assign_2.f90
index 52fbd276f6f..20950d639d3 100644
--- a/gcc/testsuite/gfortran.dg/where_operator_assign_2.f90
+++ b/gcc/testsuite/gfortran.dg/where_operator_assign_2.f90
@@ -49,22 +49,22 @@ program test
l1 = (/t, f, f, t/)
call test_where_1
- if (any (y .ne. (/a (2, 1),a (2, 2),a (2, 3),a (2, 4)/))) call abort ()
+ if (any (y .ne. (/a (2, 1),a (2, 2),a (2, 3),a (2, 4)/))) STOP 1
call test_where_2
- if (any (y .ne. (/a (1, 0),a (2, 2),a (2, 3),a (1, 0)/))) call abort ()
- if (any (z .ne. (/a (3, 4),a (1, 0),a (1, 0),a (3, 1)/))) call abort ()
+ if (any (y .ne. (/a (1, 0),a (2, 2),a (2, 3),a (1, 0)/))) STOP 2
+ if (any (z .ne. (/a (3, 4),a (1, 0),a (1, 0),a (3, 1)/))) STOP 3
call test_where_3
- if (any (y .ne. (/a (1, 0),a (1, 2),a (1, 3),a (1, 0)/))) call abort ()
+ if (any (y .ne. (/a (1, 0),a (1, 2),a (1, 3),a (1, 0)/))) STOP 4
y = x
call test_where_forall_1
- if (any (u(4, :) .ne. (/a (1, 4),a (2, 2),a (2, 3),a (1, 4)/))) call abort ()
+ if (any (u(4, :) .ne. (/a (1, 4),a (2, 2),a (2, 3),a (1, 4)/))) STOP 5
l1 = (/t, f, t, f/)
call test_where_4
- if (any (x .ne. (/a (1, 1),a (2, 1),a (1, 3),a (2, 3)/))) call abort ()
+ if (any (x .ne. (/a (1, 1),a (2, 1),a (1, 3),a (2, 3)/))) STOP 6
contains
!******************************************************************************
diff --git a/gcc/testsuite/gfortran.dg/where_operator_assign_3.f90 b/gcc/testsuite/gfortran.dg/where_operator_assign_3.f90
index d1b5e37c8a5..b52499f4157 100644
--- a/gcc/testsuite/gfortran.dg/where_operator_assign_3.f90
+++ b/gcc/testsuite/gfortran.dg/where_operator_assign_3.f90
@@ -62,7 +62,7 @@ program test
call test_where_char1
call test_where_char2
if (any(y .ne. &
- (/a(4, "null"), a(8, "non-null"), a(8, "non-null"), a(4, "null")/))) call abort ()
+ (/a(4, "null"), a(8, "non-null"), a(8, "non-null"), a(4, "null")/))) STOP 1
contains
subroutine test_where_char1 ! Test a WHERE blocks
where (l1)
diff --git a/gcc/testsuite/gfortran.dg/whole_file_13.f90 b/gcc/testsuite/gfortran.dg/whole_file_13.f90
index 99e3ceecb7d..d0a954f01dd 100644
--- a/gcc/testsuite/gfortran.dg/whole_file_13.f90
+++ b/gcc/testsuite/gfortran.dg/whole_file_13.f90
@@ -10,7 +10,7 @@ subroutine test(x)
integer :: i
end type myType3
type(myType3) :: x
- if(x%i /= 7) call abort()
+ if(x%i /= 7) STOP 1
x%i = 1
end subroutine test
@@ -24,5 +24,5 @@ program foo
type(myType3) :: z
z%i = 7
call test(z)
- if(z%i /= 1) call abort
+ if(z%i /= 1) STOP 1
end program foo
diff --git a/gcc/testsuite/gfortran.dg/whole_file_2.f90 b/gcc/testsuite/gfortran.dg/whole_file_2.f90
index 4e33c06b668..c5255a99ab9 100644
--- a/gcc/testsuite/gfortran.dg/whole_file_2.f90
+++ b/gcc/testsuite/gfortran.dg/whole_file_2.f90
@@ -20,6 +20,6 @@ end program gg
subroutine test (a)
character (5) :: a
- if (a .ne. 'hello') call abort
+ if (a .ne. 'hello') STOP 1
end subroutine test
diff --git a/gcc/testsuite/gfortran.dg/widechar_2.f90 b/gcc/testsuite/gfortran.dg/widechar_2.f90
index 706901e6b1c..3aae3078d9b 100644
--- a/gcc/testsuite/gfortran.dg/widechar_2.f90
+++ b/gcc/testsuite/gfortran.dg/widechar_2.f90
@@ -41,11 +41,11 @@ contains
character(kind=1,len=20) :: s1, t1
character(kind=4,len=20) :: s4
t1 = s4
- if (t1 /= s1) call abort
- if (len(s1) /= len(t1)) call abort
- if (len(s1) /= len(s4)) call abort
- if (len_trim(s1) /= len_trim(t1)) call abort
- if (len_trim(s1) /= len_trim(s4)) call abort
+ if (t1 /= s1) STOP 1
+ if (len(s1) /= len(t1)) STOP 2
+ if (len(s1) /= len(s4)) STOP 3
+ if (len_trim(s1) /= len_trim(t1)) STOP 4
+ if (len_trim(s1) /= len_trim(s4)) STOP 5
end subroutine check
subroutine check2(s1,s4)
@@ -56,14 +56,14 @@ contains
t1 = s4
t4 = s1
- if (t1 /= s1) call abort
- if (t4 /= s4) call abort
- if (len(s1) /= len(t1)) call abort
- if (len(s1) /= len(s4)) call abort
- if (len(s1) /= len(t4)) call abort
- if (len_trim(s1) /= len_trim(t1)) call abort
- if (len_trim(s1) /= len_trim(s4)) call abort
- if (len_trim(s1) /= len_trim(t4)) call abort
+ if (t1 /= s1) STOP 6
+ if (t4 /= s4) STOP 7
+ if (len(s1) /= len(t1)) STOP 8
+ if (len(s1) /= len(s4)) STOP 9
+ if (len(s1) /= len(t4)) STOP 10
+ if (len_trim(s1) /= len_trim(t1)) STOP 11
+ if (len_trim(s1) /= len_trim(s4)) STOP 12
+ if (len_trim(s1) /= len_trim(t4)) STOP 13
end subroutine check2
end
diff --git a/gcc/testsuite/gfortran.dg/widechar_4.f90 b/gcc/testsuite/gfortran.dg/widechar_4.f90
index 1166f8bfb77..1a0f45d91cc 100644
--- a/gcc/testsuite/gfortran.dg/widechar_4.f90
+++ b/gcc/testsuite/gfortran.dg/widechar_4.f90
@@ -15,132 +15,132 @@ contains
subroutine test(s4, t4, u4, v4)
character(kind=4,len=*) :: s4, t4, u4, v4
- if (.not. (s4 >= t4)) call abort
- if (.not. (s4 > t4)) call abort
- if (.not. (s4 .ge. t4)) call abort
- if (.not. (s4 .gt. t4)) call abort
- if ( (s4 == t4)) call abort
- if (.not. (s4 /= t4)) call abort
- if ( (s4 .eq. t4)) call abort
- if (.not. (s4 .ne. t4)) call abort
- if ( (s4 <= t4)) call abort
- if ( (s4 < t4)) call abort
- if ( (s4 .le. t4)) call abort
- if ( (s4 .lt. t4)) call abort
-
- if (.not. (s4 >= u4)) call abort
- if ( (s4 > u4)) call abort
- if (.not. (s4 .ge. u4)) call abort
- if ( (s4 .gt. u4)) call abort
- if (.not. (s4 == u4)) call abort
- if ( (s4 /= u4)) call abort
- if (.not. (s4 .eq. u4)) call abort
- if ( (s4 .ne. u4)) call abort
- if (.not. (s4 <= u4)) call abort
- if ( (s4 < u4)) call abort
- if (.not. (s4 .le. u4)) call abort
- if ( (s4 .lt. u4)) call abort
-
- if ( (s4 >= v4)) call abort
- if ( (s4 > v4)) call abort
- if ( (s4 .ge. v4)) call abort
- if ( (s4 .gt. v4)) call abort
- if ( (s4 == v4)) call abort
- if (.not. (s4 /= v4)) call abort
- if ( (s4 .eq. v4)) call abort
- if (.not. (s4 .ne. v4)) call abort
- if (.not. (s4 <= v4)) call abort
- if (.not. (s4 < v4)) call abort
- if (.not. (s4 .le. v4)) call abort
- if (.not. (s4 .lt. v4)) call abort
+ if (.not. (s4 >= t4)) STOP 1
+ if (.not. (s4 > t4)) STOP 2
+ if (.not. (s4 .ge. t4)) STOP 3
+ if (.not. (s4 .gt. t4)) STOP 4
+ if ( (s4 == t4)) STOP 5
+ if (.not. (s4 /= t4)) STOP 6
+ if ( (s4 .eq. t4)) STOP 7
+ if (.not. (s4 .ne. t4)) STOP 8
+ if ( (s4 <= t4)) STOP 9
+ if ( (s4 < t4)) STOP 10
+ if ( (s4 .le. t4)) STOP 11
+ if ( (s4 .lt. t4)) STOP 12
+
+ if (.not. (s4 >= u4)) STOP 13
+ if ( (s4 > u4)) STOP 14
+ if (.not. (s4 .ge. u4)) STOP 15
+ if ( (s4 .gt. u4)) STOP 16
+ if (.not. (s4 == u4)) STOP 17
+ if ( (s4 /= u4)) STOP 18
+ if (.not. (s4 .eq. u4)) STOP 19
+ if ( (s4 .ne. u4)) STOP 20
+ if (.not. (s4 <= u4)) STOP 21
+ if ( (s4 < u4)) STOP 22
+ if (.not. (s4 .le. u4)) STOP 23
+ if ( (s4 .lt. u4)) STOP 24
+
+ if ( (s4 >= v4)) STOP 25
+ if ( (s4 > v4)) STOP 26
+ if ( (s4 .ge. v4)) STOP 27
+ if ( (s4 .gt. v4)) STOP 28
+ if ( (s4 == v4)) STOP 29
+ if (.not. (s4 /= v4)) STOP 30
+ if ( (s4 .eq. v4)) STOP 31
+ if (.not. (s4 .ne. v4)) STOP 32
+ if (.not. (s4 <= v4)) STOP 33
+ if (.not. (s4 < v4)) STOP 34
+ if (.not. (s4 .le. v4)) STOP 35
+ if (.not. (s4 .lt. v4)) STOP 36
end subroutine test
subroutine test2(t4, u4, v4)
character(kind=4,len=*) :: t4, u4, v4
- if (.not. (4_" \xACp " >= t4)) call abort
- if (.not. (4_" \xACp " > t4)) call abort
- if (.not. (4_" \xACp " .ge. t4)) call abort
- if (.not. (4_" \xACp " .gt. t4)) call abort
- if ( (4_" \xACp " == t4)) call abort
- if (.not. (4_" \xACp " /= t4)) call abort
- if ( (4_" \xACp " .eq. t4)) call abort
- if (.not. (4_" \xACp " .ne. t4)) call abort
- if ( (4_" \xACp " <= t4)) call abort
- if ( (4_" \xACp " < t4)) call abort
- if ( (4_" \xACp " .le. t4)) call abort
- if ( (4_" \xACp " .lt. t4)) call abort
-
- if (.not. (4_" \xACp " >= u4)) call abort
- if ( (4_" \xACp " > u4)) call abort
- if (.not. (4_" \xACp " .ge. u4)) call abort
- if ( (4_" \xACp " .gt. u4)) call abort
- if (.not. (4_" \xACp " == u4)) call abort
- if ( (4_" \xACp " /= u4)) call abort
- if (.not. (4_" \xACp " .eq. u4)) call abort
- if ( (4_" \xACp " .ne. u4)) call abort
- if (.not. (4_" \xACp " <= u4)) call abort
- if ( (4_" \xACp " < u4)) call abort
- if (.not. (4_" \xACp " .le. u4)) call abort
- if ( (4_" \xACp " .lt. u4)) call abort
-
- if ( (4_" \xACp " >= v4)) call abort
- if ( (4_" \xACp " > v4)) call abort
- if ( (4_" \xACp " .ge. v4)) call abort
- if ( (4_" \xACp " .gt. v4)) call abort
- if ( (4_" \xACp " == v4)) call abort
- if (.not. (4_" \xACp " /= v4)) call abort
- if ( (4_" \xACp " .eq. v4)) call abort
- if (.not. (4_" \xACp " .ne. v4)) call abort
- if (.not. (4_" \xACp " <= v4)) call abort
- if (.not. (4_" \xACp " < v4)) call abort
- if (.not. (4_" \xACp " .le. v4)) call abort
- if (.not. (4_" \xACp " .lt. v4)) call abort
+ if (.not. (4_" \xACp " >= t4)) STOP 37
+ if (.not. (4_" \xACp " > t4)) STOP 38
+ if (.not. (4_" \xACp " .ge. t4)) STOP 39
+ if (.not. (4_" \xACp " .gt. t4)) STOP 40
+ if ( (4_" \xACp " == t4)) STOP 41
+ if (.not. (4_" \xACp " /= t4)) STOP 42
+ if ( (4_" \xACp " .eq. t4)) STOP 43
+ if (.not. (4_" \xACp " .ne. t4)) STOP 44
+ if ( (4_" \xACp " <= t4)) STOP 45
+ if ( (4_" \xACp " < t4)) STOP 46
+ if ( (4_" \xACp " .le. t4)) STOP 47
+ if ( (4_" \xACp " .lt. t4)) STOP 48
+
+ if (.not. (4_" \xACp " >= u4)) STOP 49
+ if ( (4_" \xACp " > u4)) STOP 50
+ if (.not. (4_" \xACp " .ge. u4)) STOP 51
+ if ( (4_" \xACp " .gt. u4)) STOP 52
+ if (.not. (4_" \xACp " == u4)) STOP 53
+ if ( (4_" \xACp " /= u4)) STOP 54
+ if (.not. (4_" \xACp " .eq. u4)) STOP 55
+ if ( (4_" \xACp " .ne. u4)) STOP 56
+ if (.not. (4_" \xACp " <= u4)) STOP 57
+ if ( (4_" \xACp " < u4)) STOP 58
+ if (.not. (4_" \xACp " .le. u4)) STOP 59
+ if ( (4_" \xACp " .lt. u4)) STOP 60
+
+ if ( (4_" \xACp " >= v4)) STOP 61
+ if ( (4_" \xACp " > v4)) STOP 62
+ if ( (4_" \xACp " .ge. v4)) STOP 63
+ if ( (4_" \xACp " .gt. v4)) STOP 64
+ if ( (4_" \xACp " == v4)) STOP 65
+ if (.not. (4_" \xACp " /= v4)) STOP 66
+ if ( (4_" \xACp " .eq. v4)) STOP 67
+ if (.not. (4_" \xACp " .ne. v4)) STOP 68
+ if (.not. (4_" \xACp " <= v4)) STOP 69
+ if (.not. (4_" \xACp " < v4)) STOP 70
+ if (.not. (4_" \xACp " .le. v4)) STOP 71
+ if (.not. (4_" \xACp " .lt. v4)) STOP 72
end subroutine test2
subroutine test3(t4, u4, v4)
character(kind=4,len=*) :: t4, u4, v4
- if (.not. (4_" \xACp " >= 4_" \x900000 ")) call abort
- if (.not. (4_" \xACp " > 4_" \x900000 ")) call abort
- if (.not. (4_" \xACp " .ge. 4_" \x900000 ")) call abort
- if (.not. (4_" \xACp " .gt. 4_" \x900000 ")) call abort
- if ( (4_" \xACp " == 4_" \x900000 ")) call abort
- if (.not. (4_" \xACp " /= 4_" \x900000 ")) call abort
- if ( (4_" \xACp " .eq. 4_" \x900000 ")) call abort
- if (.not. (4_" \xACp " .ne. 4_" \x900000 ")) call abort
- if ( (4_" \xACp " <= 4_" \x900000 ")) call abort
- if ( (4_" \xACp " < 4_" \x900000 ")) call abort
- if ( (4_" \xACp " .le. 4_" \x900000 ")) call abort
- if ( (4_" \xACp " .lt. 4_" \x900000 ")) call abort
-
- if (.not. (4_" \xACp " >= 4_" \xACp ")) call abort
- if ( (4_" \xACp " > 4_" \xACp ")) call abort
- if (.not. (4_" \xACp " .ge. 4_" \xACp ")) call abort
- if ( (4_" \xACp " .gt. 4_" \xACp ")) call abort
- if (.not. (4_" \xACp " == 4_" \xACp ")) call abort
- if ( (4_" \xACp " /= 4_" \xACp ")) call abort
- if (.not. (4_" \xACp " .eq. 4_" \xACp ")) call abort
- if ( (4_" \xACp " .ne. 4_" \xACp ")) call abort
- if (.not. (4_" \xACp " <= 4_" \xACp ")) call abort
- if ( (4_" \xACp " < 4_" \xACp ")) call abort
- if (.not. (4_" \xACp " .le. 4_" \xACp ")) call abort
- if ( (4_" \xACp " .lt. 4_" \xACp ")) call abort
-
- if ( (4_" \xACp " >= 4_"ddd")) call abort
- if ( (4_" \xACp " > 4_"ddd")) call abort
- if ( (4_" \xACp " .ge. 4_"ddd")) call abort
- if ( (4_" \xACp " .gt. 4_"ddd")) call abort
- if ( (4_" \xACp " == 4_"ddd")) call abort
- if (.not. (4_" \xACp " /= 4_"ddd")) call abort
- if ( (4_" \xACp " .eq. 4_"ddd")) call abort
- if (.not. (4_" \xACp " .ne. 4_"ddd")) call abort
- if (.not. (4_" \xACp " <= 4_"ddd")) call abort
- if (.not. (4_" \xACp " < 4_"ddd")) call abort
- if (.not. (4_" \xACp " .le. 4_"ddd")) call abort
- if (.not. (4_" \xACp " .lt. 4_"ddd")) call abort
+ if (.not. (4_" \xACp " >= 4_" \x900000 ")) STOP 73
+ if (.not. (4_" \xACp " > 4_" \x900000 ")) STOP 74
+ if (.not. (4_" \xACp " .ge. 4_" \x900000 ")) STOP 75
+ if (.not. (4_" \xACp " .gt. 4_" \x900000 ")) STOP 76
+ if ( (4_" \xACp " == 4_" \x900000 ")) STOP 77
+ if (.not. (4_" \xACp " /= 4_" \x900000 ")) STOP 78
+ if ( (4_" \xACp " .eq. 4_" \x900000 ")) STOP 79
+ if (.not. (4_" \xACp " .ne. 4_" \x900000 ")) STOP 80
+ if ( (4_" \xACp " <= 4_" \x900000 ")) STOP 81
+ if ( (4_" \xACp " < 4_" \x900000 ")) STOP 82
+ if ( (4_" \xACp " .le. 4_" \x900000 ")) STOP 83
+ if ( (4_" \xACp " .lt. 4_" \x900000 ")) STOP 84
+
+ if (.not. (4_" \xACp " >= 4_" \xACp ")) STOP 85
+ if ( (4_" \xACp " > 4_" \xACp ")) STOP 86
+ if (.not. (4_" \xACp " .ge. 4_" \xACp ")) STOP 87
+ if ( (4_" \xACp " .gt. 4_" \xACp ")) STOP 88
+ if (.not. (4_" \xACp " == 4_" \xACp ")) STOP 89
+ if ( (4_" \xACp " /= 4_" \xACp ")) STOP 90
+ if (.not. (4_" \xACp " .eq. 4_" \xACp ")) STOP 91
+ if ( (4_" \xACp " .ne. 4_" \xACp ")) STOP 92
+ if (.not. (4_" \xACp " <= 4_" \xACp ")) STOP 93
+ if ( (4_" \xACp " < 4_" \xACp ")) STOP 94
+ if (.not. (4_" \xACp " .le. 4_" \xACp ")) STOP 95
+ if ( (4_" \xACp " .lt. 4_" \xACp ")) STOP 96
+
+ if ( (4_" \xACp " >= 4_"ddd")) STOP 97
+ if ( (4_" \xACp " > 4_"ddd")) STOP 98
+ if ( (4_" \xACp " .ge. 4_"ddd")) STOP 99
+ if ( (4_" \xACp " .gt. 4_"ddd")) STOP 100
+ if ( (4_" \xACp " == 4_"ddd")) STOP 101
+ if (.not. (4_" \xACp " /= 4_"ddd")) STOP 102
+ if ( (4_" \xACp " .eq. 4_"ddd")) STOP 103
+ if (.not. (4_" \xACp " .ne. 4_"ddd")) STOP 104
+ if (.not. (4_" \xACp " <= 4_"ddd")) STOP 105
+ if (.not. (4_" \xACp " < 4_"ddd")) STOP 106
+ if (.not. (4_" \xACp " .le. 4_"ddd")) STOP 107
+ if (.not. (4_" \xACp " .lt. 4_"ddd")) STOP 108
end subroutine test3
diff --git a/gcc/testsuite/gfortran.dg/widechar_5.f90 b/gcc/testsuite/gfortran.dg/widechar_5.f90
index ece1e4d9cc7..bebe7830526 100644
--- a/gcc/testsuite/gfortran.dg/widechar_5.f90
+++ b/gcc/testsuite/gfortran.dg/widechar_5.f90
@@ -38,20 +38,20 @@ program test_modules
use outer, outer1 => my1, outer4 => my4
implicit none
- if (len (inner1) /= len(inner4)) call abort
- if (len (inner1) /= len_trim(inner1)) call abort
- if (len (inner4) /= len_trim(inner4)) call abort
+ if (len (inner1) /= len(inner4)) STOP 1
+ if (len (inner1) /= len_trim(inner1)) STOP 2
+ if (len (inner4) /= len_trim(inner4)) STOP 3
- if (len(middle1) /= len(inner1)) call abort
- if (len(outer1) /= len(inner1)) call abort
- if (len(middle4) /= len(inner4)) call abort
- if (len(outer4) /= len(inner4)) call abort
+ if (len(middle1) /= len(inner1)) STOP 4
+ if (len(outer1) /= len(inner1)) STOP 5
+ if (len(middle4) /= len(inner4)) STOP 6
+ if (len(outer4) /= len(inner4)) STOP 7
if (any (len_trim (middle1) /= reshape([len(middle1), 0, 3, 2], [2,2]))) &
- call abort
+ STOP 8
if (any (len_trim (middle4) /= reshape([len(middle4), 0, 3, 2], [2,2]))) &
- call abort
- if (any (len_trim (outer1) /= [len(outer1), 3])) call abort
- if (any (len_trim (outer4) /= [len(outer4), 3])) call abort
+ STOP 9
+ if (any (len_trim (outer1) /= [len(outer1), 3])) STOP 10
+ if (any (len_trim (outer4) /= [len(outer4), 3])) STOP 11
end program test_modules
diff --git a/gcc/testsuite/gfortran.dg/widechar_6.f90 b/gcc/testsuite/gfortran.dg/widechar_6.f90
index 799db608bb5..8f190a2ba27 100644
--- a/gcc/testsuite/gfortran.dg/widechar_6.f90
+++ b/gcc/testsuite/gfortran.dg/widechar_6.f90
@@ -28,35 +28,35 @@ end module mod
program test
use mod
- if (len (cut1("")) /= 0 .or. cut1("") /= "") call abort
- if (len (cut1("1")) /= 0 .or. cut1("") /= "") call abort
- if (len (cut1("12")) /= 0 .or. cut1("") /= "") call abort
- if (len (cut1("123")) /= 0 .or. cut1("") /= "") call abort
- if (len (cut1("1234")) /= 1 .or. cut1("4") /= "") call abort
- if (len (cut1("12345")) /= 2 .or. cut1("45") /= "") call abort
-
- if (len (cut4(4_"")) /= 0 .or. cut4(4_"") /= 4_"") call abort
- if (len (cut4(4_"1")) /= 0 .or. cut4(4_"") /= 4_"") call abort
- if (len (cut4(4_"12")) /= 0 .or. cut4(4_"") /= 4_"") call abort
- if (len (cut4(4_"123")) /= 0 .or. cut4(4_"") /= 4_"") call abort
- if (len (cut4(4_"1234")) /= 1 .or. cut4(4_"4") /= 4_"") call abort
- if (len (cut4(4_"12345")) /= 2 .or. cut4(4_"45") /= 4_"") call abort
-
- if (kind (cut("")) /= kind("")) call abort
- if (kind (cut(4_"")) /= kind(4_"")) call abort
-
- if (len (cut("")) /= 0 .or. cut("") /= "") call abort
- if (len (cut("1")) /= 0 .or. cut("") /= "") call abort
- if (len (cut("12")) /= 0 .or. cut("") /= "") call abort
- if (len (cut("123")) /= 0 .or. cut("") /= "") call abort
- if (len (cut("1234")) /= 1 .or. cut("4") /= "") call abort
- if (len (cut("12345")) /= 2 .or. cut("45") /= "") call abort
-
- if (len (cut(4_"")) /= 0 .or. cut(4_"") /= 4_"") call abort
- if (len (cut(4_"1")) /= 0 .or. cut(4_"") /= 4_"") call abort
- if (len (cut(4_"12")) /= 0 .or. cut(4_"") /= 4_"") call abort
- if (len (cut(4_"123")) /= 0 .or. cut(4_"") /= 4_"") call abort
- if (len (cut(4_"1234")) /= 1 .or. cut(4_"4") /= 4_"") call abort
- if (len (cut(4_"12345")) /= 2 .or. cut(4_"45") /= 4_"") call abort
+ if (len (cut1("")) /= 0 .or. cut1("") /= "") STOP 1
+ if (len (cut1("1")) /= 0 .or. cut1("") /= "") STOP 2
+ if (len (cut1("12")) /= 0 .or. cut1("") /= "") STOP 3
+ if (len (cut1("123")) /= 0 .or. cut1("") /= "") STOP 4
+ if (len (cut1("1234")) /= 1 .or. cut1("4") /= "") STOP 5
+ if (len (cut1("12345")) /= 2 .or. cut1("45") /= "") STOP 6
+
+ if (len (cut4(4_"")) /= 0 .or. cut4(4_"") /= 4_"") STOP 7
+ if (len (cut4(4_"1")) /= 0 .or. cut4(4_"") /= 4_"") STOP 8
+ if (len (cut4(4_"12")) /= 0 .or. cut4(4_"") /= 4_"") STOP 9
+ if (len (cut4(4_"123")) /= 0 .or. cut4(4_"") /= 4_"") STOP 10
+ if (len (cut4(4_"1234")) /= 1 .or. cut4(4_"4") /= 4_"") STOP 11
+ if (len (cut4(4_"12345")) /= 2 .or. cut4(4_"45") /= 4_"") STOP 12
+
+ if (kind (cut("")) /= kind("")) STOP 13
+ if (kind (cut(4_"")) /= kind(4_"")) STOP 14
+
+ if (len (cut("")) /= 0 .or. cut("") /= "") STOP 15
+ if (len (cut("1")) /= 0 .or. cut("") /= "") STOP 16
+ if (len (cut("12")) /= 0 .or. cut("") /= "") STOP 17
+ if (len (cut("123")) /= 0 .or. cut("") /= "") STOP 18
+ if (len (cut("1234")) /= 1 .or. cut("4") /= "") STOP 19
+ if (len (cut("12345")) /= 2 .or. cut("45") /= "") STOP 20
+
+ if (len (cut(4_"")) /= 0 .or. cut(4_"") /= 4_"") STOP 21
+ if (len (cut(4_"1")) /= 0 .or. cut(4_"") /= 4_"") STOP 22
+ if (len (cut(4_"12")) /= 0 .or. cut(4_"") /= 4_"") STOP 23
+ if (len (cut(4_"123")) /= 0 .or. cut(4_"") /= 4_"") STOP 24
+ if (len (cut(4_"1234")) /= 1 .or. cut(4_"4") /= 4_"") STOP 25
+ if (len (cut(4_"12345")) /= 2 .or. cut(4_"45") /= 4_"") STOP 26
end program test
diff --git a/gcc/testsuite/gfortran.dg/widechar_8.f90 b/gcc/testsuite/gfortran.dg/widechar_8.f90
index e61129416cf..8f397a4b3d1 100644
--- a/gcc/testsuite/gfortran.dg/widechar_8.f90
+++ b/gcc/testsuite/gfortran.dg/widechar_8.f90
@@ -15,14 +15,14 @@ open(6,encoding="UTF-8")
str = transfer(buffer, str)
!print *, str
!print *, 4_'\u039f\u03cd\u03c7\u30b8'
-if (str /= 4_'\u039f\u03cd\u03c7\u30b8') call abort()
+if (str /= 4_'\u039f\u03cd\u03c7\u30b8') STOP 1
str = transfer([int(z'039f'),int(z'03cd'),int(z'03c7'), &
int(z'30b8') ], str)
-if (str /= 4_'\u039f\u03cd\u03c7\u30b8') call abort()
+if (str /= 4_'\u039f\u03cd\u03c7\u30b8') STOP 2
buffer2 = transfer(4_'\u039f\u03cd\u03c7\u30b8', buffer2, 4)
!print *, buffer
!print *, buffer2
buffer2 = transfer(str, buffer2, 4)
-if (any(buffer2 /= buffer)) call abort()
+if (any(buffer2 /= buffer)) STOP 3
end
diff --git a/gcc/testsuite/gfortran.dg/widechar_IO_1.f90 b/gcc/testsuite/gfortran.dg/widechar_IO_1.f90
index 0fe479cda64..e4404649586 100644
--- a/gcc/testsuite/gfortran.dg/widechar_IO_1.f90
+++ b/gcc/testsuite/gfortran.dg/widechar_IO_1.f90
@@ -9,12 +9,12 @@ program test1
wide=k4_"Goodbye!"
thin="Hello!"
write(buffer, '(a)') wide
- if (buffer /= "Goodbye!") call abort
+ if (buffer /= "Goodbye!") STOP 1
open(10, form="formatted", access="stream", status="scratch")
write(10, '(a)') thin
rewind(10)
read(10, '(a)') wide
- if (wide /= k4_"Hello!") call abort
+ if (wide /= k4_"Hello!") STOP 2
write(buffer,*) thin, ">",wide,"<"
- if (buffer /= " Hello! >Hello! <") call abort
+ if (buffer /= " Hello! >Hello! <") STOP 3
end program test1
diff --git a/gcc/testsuite/gfortran.dg/widechar_IO_2.f90 b/gcc/testsuite/gfortran.dg/widechar_IO_2.f90
index 6b13e4f93f1..3f886834f13 100644
--- a/gcc/testsuite/gfortran.dg/widechar_IO_2.f90
+++ b/gcc/testsuite/gfortran.dg/widechar_IO_2.f90
@@ -10,10 +10,10 @@ program chkdata
mychar(3) = k4_"ghi9012"
buffer = ""
write(buffer,'(3(a))') mychar(2:3), mychar(1)
- if (buffer /= "def5678ghi9012abc1234") call abort
+ if (buffer /= "def5678ghi9012abc1234") STOP 1
write(buffer,'(3(a))') mychar
- if (buffer /= "abc1234def5678ghi9012") call abort
+ if (buffer /= "abc1234def5678ghi9012") STOP 2
mychar = ""
read(buffer,'(3(a))') mychar
- if (any(mychar.ne.[ k4_"abc1234",k4_"def5678",k4_"ghi9012" ])) call abort
+ if (any(mychar.ne.[ k4_"abc1234",k4_"def5678",k4_"ghi9012" ])) STOP 3
end program chkdata
diff --git a/gcc/testsuite/gfortran.dg/widechar_IO_3.f90 b/gcc/testsuite/gfortran.dg/widechar_IO_3.f90
index c09205e2d7d..615ffd68d53 100644
--- a/gcc/testsuite/gfortran.dg/widechar_IO_3.f90
+++ b/gcc/testsuite/gfortran.dg/widechar_IO_3.f90
@@ -12,12 +12,12 @@ program test1
rewind(10)
wide = "wrong"
read(10) wide
- if (wide /= k4_"abcdefg") call abort
+ if (wide /= k4_"abcdefg") STOP 1
rewind(10)
write(10) widearray(2:4,3:7)
widearray(2:4,3:7)=""
rewind(10)
read(10) widearray(2:4,3:7)
close(10)
- if (any(widearray.ne.k4_"1234abcd")) call abort
+ if (any(widearray.ne.k4_"1234abcd")) STOP 2
end program test1
diff --git a/gcc/testsuite/gfortran.dg/widechar_IO_4.f90 b/gcc/testsuite/gfortran.dg/widechar_IO_4.f90
index e108b15c4f5..6103fda073a 100644
--- a/gcc/testsuite/gfortran.dg/widechar_IO_4.f90
+++ b/gcc/testsuite/gfortran.dg/widechar_IO_4.f90
@@ -9,10 +9,10 @@ character(kind=1, len=1) :: c1, c2
character(kind=4,len=20) :: str = k4_'X\xF8öABC' ! ISO-8859-1 encoded string
buffer = ""
write(buffer,'(3a)')':',trim(str),':'
-if (buffer.ne.':X\xF8öABC: ') call abort
+if (buffer.ne.':X\xF8öABC: ') STOP 1
str = ""
read(buffer,'(3a)') c1,str(1:6),c2
-if (c1.ne.':') call abort
-if (str.ne.k4_'X\xF8öAB') call abort
-if (c2.ne.'C') call abort
+if (c1.ne.':') STOP 2
+if (str.ne.k4_'X\xF8öAB') STOP 3
+if (c2.ne.'C') STOP 4
end
diff --git a/gcc/testsuite/gfortran.dg/widechar_compare_1.f90 b/gcc/testsuite/gfortran.dg/widechar_compare_1.f90
index 44101104cc1..8c3b589e241 100644
--- a/gcc/testsuite/gfortran.dg/widechar_compare_1.f90
+++ b/gcc/testsuite/gfortran.dg/widechar_compare_1.f90
@@ -6,5 +6,5 @@ program main
c2 = 4_' '
c1(1:1) = transfer(257, mold=c1(1:1))
c2(1:1) = transfer(64, mold=c2(1:1))
- if (c1 < c2) call abort
+ if (c1 < c2) STOP 1
end program main
diff --git a/gcc/testsuite/gfortran.dg/widechar_intrinsics_10.f90 b/gcc/testsuite/gfortran.dg/widechar_intrinsics_10.f90
index c961d93cfd6..426fb2e947f 100644
--- a/gcc/testsuite/gfortran.dg/widechar_intrinsics_10.f90
+++ b/gcc/testsuite/gfortran.dg/widechar_intrinsics_10.f90
@@ -9,81 +9,81 @@
s4 = s1
s4 = [ "abc", "def", "ghi" ]
- if (any (cshift (s1, 0) /= s1)) call abort
- if (any (cshift (s4, 0) /= s4)) call abort
- if (any (cshift (s1, 3) /= s1)) call abort
- if (any (cshift (s4, 3) /= s4)) call abort
- if (any (cshift (s1, 6) /= s1)) call abort
- if (any (cshift (s4, 6) /= s4)) call abort
- if (any (cshift (s1, -3) /= s1)) call abort
- if (any (cshift (s4, -3) /= s4)) call abort
- if (any (cshift (s1, -6) /= s1)) call abort
- if (any (cshift (s4, -6) /= s4)) call abort
+ if (any (cshift (s1, 0) /= s1)) STOP 1
+ if (any (cshift (s4, 0) /= s4)) STOP 2
+ if (any (cshift (s1, 3) /= s1)) STOP 3
+ if (any (cshift (s4, 3) /= s4)) STOP 4
+ if (any (cshift (s1, 6) /= s1)) STOP 5
+ if (any (cshift (s4, 6) /= s4)) STOP 6
+ if (any (cshift (s1, -3) /= s1)) STOP 7
+ if (any (cshift (s4, -3) /= s4)) STOP 8
+ if (any (cshift (s1, -6) /= s1)) STOP 9
+ if (any (cshift (s4, -6) /= s4)) STOP 10
- if (any (cshift (s1, 1) /= [ s1(2:3), s1(1) ])) call abort
- if (any (cshift (s1, -1) /= [ s1(3), s1(1:2) ])) call abort
- if (any (cshift (s1, 4) /= [ s1(2:3), s1(1) ])) call abort
- if (any (cshift (s1, -4) /= [ s1(3), s1(1:2) ])) call abort
+ if (any (cshift (s1, 1) /= [ s1(2:3), s1(1) ])) STOP 11
+ if (any (cshift (s1, -1) /= [ s1(3), s1(1:2) ])) STOP 12
+ if (any (cshift (s1, 4) /= [ s1(2:3), s1(1) ])) STOP 13
+ if (any (cshift (s1, -4) /= [ s1(3), s1(1:2) ])) STOP 14
- if (any (cshift (s4, 1) /= [ s4(2:3), s4(1) ])) call abort
- if (any (cshift (s4, -1) /= [ s4(3), s4(1:2) ])) call abort
- if (any (cshift (s4, 4) /= [ s4(2:3), s4(1) ])) call abort
- if (any (cshift (s4, -4) /= [ s4(3), s4(1:2) ])) call abort
+ if (any (cshift (s4, 1) /= [ s4(2:3), s4(1) ])) STOP 15
+ if (any (cshift (s4, -1) /= [ s4(3), s4(1:2) ])) STOP 16
+ if (any (cshift (s4, 4) /= [ s4(2:3), s4(1) ])) STOP 17
+ if (any (cshift (s4, -4) /= [ s4(3), s4(1:2) ])) STOP 18
- if (any (cshift (s1, 2) /= [ s1(3), s1(1:2) ])) call abort
- if (any (cshift (s1, -2) /= [ s1(2:3), s1(1) ])) call abort
- if (any (cshift (s1, 5) /= [ s1(3), s1(1:2) ])) call abort
- if (any (cshift (s1, -5) /= [ s1(2:3), s1(1) ])) call abort
+ if (any (cshift (s1, 2) /= [ s1(3), s1(1:2) ])) STOP 19
+ if (any (cshift (s1, -2) /= [ s1(2:3), s1(1) ])) STOP 20
+ if (any (cshift (s1, 5) /= [ s1(3), s1(1:2) ])) STOP 21
+ if (any (cshift (s1, -5) /= [ s1(2:3), s1(1) ])) STOP 22
- if (any (cshift (s4, 2) /= [ s4(3), s4(1:2) ])) call abort
- if (any (cshift (s4, -2) /= [ s4(2:3), s4(1) ])) call abort
- if (any (cshift (s4, 5) /= [ s4(3), s4(1:2) ])) call abort
- if (any (cshift (s4, -5) /= [ s4(2:3), s4(1) ])) call abort
+ if (any (cshift (s4, 2) /= [ s4(3), s4(1:2) ])) STOP 23
+ if (any (cshift (s4, -2) /= [ s4(2:3), s4(1) ])) STOP 24
+ if (any (cshift (s4, 5) /= [ s4(3), s4(1:2) ])) STOP 25
+ if (any (cshift (s4, -5) /= [ s4(2:3), s4(1) ])) STOP 26
- if (any (eoshift (s1, 0) /= s1)) call abort
- if (any (eoshift (s4, 0) /= s4)) call abort
- if (any (eoshift (s1, 3) /= "")) call abort
- if (any (eoshift (s4, 3) /= 4_"")) call abort
- if (any (eoshift (s1, 3, " ") /= "")) call abort
- if (any (eoshift (s4, 3, 4_" ") /= 4_"")) call abort
- if (any (eoshift (s1, 3, " x ") /= " x")) call abort
- if (any (eoshift (s4, 3, 4_" x ") /= 4_" x")) call abort
- if (any (eoshift (s1, -3) /= "")) call abort
- if (any (eoshift (s4, -3) /= 4_"")) call abort
- if (any (eoshift (s1, -3, " ") /= "")) call abort
- if (any (eoshift (s4, -3, 4_" ") /= 4_"")) call abort
- if (any (eoshift (s1, -3, " x ") /= " x")) call abort
- if (any (eoshift (s4, -3, 4_" x ") /= 4_" x")) call abort
- if (any (eoshift (s1, 4) /= "")) call abort
- if (any (eoshift (s4, 4) /= 4_"")) call abort
- if (any (eoshift (s1, 4, " ") /= "")) call abort
- if (any (eoshift (s4, 4, 4_" ") /= 4_"")) call abort
- if (any (eoshift (s1, 4, " x ") /= " x")) call abort
- if (any (eoshift (s4, 4, 4_" x ") /= 4_" x")) call abort
- if (any (eoshift (s1, -4) /= "")) call abort
- if (any (eoshift (s4, -4) /= 4_"")) call abort
- if (any (eoshift (s1, -4, " ") /= "")) call abort
- if (any (eoshift (s4, -4, 4_" ") /= 4_"")) call abort
- if (any (eoshift (s1, -4, " x ") /= " x")) call abort
- if (any (eoshift (s4, -4, 4_" x ") /= 4_" x")) call abort
+ if (any (eoshift (s1, 0) /= s1)) STOP 27
+ if (any (eoshift (s4, 0) /= s4)) STOP 28
+ if (any (eoshift (s1, 3) /= "")) STOP 29
+ if (any (eoshift (s4, 3) /= 4_"")) STOP 30
+ if (any (eoshift (s1, 3, " ") /= "")) STOP 31
+ if (any (eoshift (s4, 3, 4_" ") /= 4_"")) STOP 32
+ if (any (eoshift (s1, 3, " x ") /= " x")) STOP 33
+ if (any (eoshift (s4, 3, 4_" x ") /= 4_" x")) STOP 34
+ if (any (eoshift (s1, -3) /= "")) STOP 35
+ if (any (eoshift (s4, -3) /= 4_"")) STOP 36
+ if (any (eoshift (s1, -3, " ") /= "")) STOP 37
+ if (any (eoshift (s4, -3, 4_" ") /= 4_"")) STOP 38
+ if (any (eoshift (s1, -3, " x ") /= " x")) STOP 39
+ if (any (eoshift (s4, -3, 4_" x ") /= 4_" x")) STOP 40
+ if (any (eoshift (s1, 4) /= "")) STOP 41
+ if (any (eoshift (s4, 4) /= 4_"")) STOP 42
+ if (any (eoshift (s1, 4, " ") /= "")) STOP 43
+ if (any (eoshift (s4, 4, 4_" ") /= 4_"")) STOP 44
+ if (any (eoshift (s1, 4, " x ") /= " x")) STOP 45
+ if (any (eoshift (s4, 4, 4_" x ") /= 4_" x")) STOP 46
+ if (any (eoshift (s1, -4) /= "")) STOP 47
+ if (any (eoshift (s4, -4) /= 4_"")) STOP 48
+ if (any (eoshift (s1, -4, " ") /= "")) STOP 49
+ if (any (eoshift (s4, -4, 4_" ") /= 4_"")) STOP 50
+ if (any (eoshift (s1, -4, " x ") /= " x")) STOP 51
+ if (any (eoshift (s4, -4, 4_" x ") /= 4_" x")) STOP 52
- if (any (eoshift (s1, 1) /= [ s1(2:3), " " ])) call abort
- if (any (eoshift (s1, -1) /= [ " ", s1(1:2) ])) call abort
- if (any (eoshift (s1, 1, " x ") /= [ s1(2:3), " x " ])) call abort
- if (any (eoshift (s1, -1, " x ") /= [ " x ", s1(1:2) ])) call abort
- if (any (eoshift (s4, 1) /= [ s4(2:3), 4_" " ])) call abort
- if (any (eoshift (s4, -1) /= [ 4_" ", s4(1:2) ])) call abort
- if (any (eoshift (s4, 1, 4_" x ") /= [ s4(2:3), 4_" x " ])) call abort
- if (any (eoshift (s4, -1, 4_" x ") /= [ 4_" x ", s4(1:2) ])) call abort
+ if (any (eoshift (s1, 1) /= [ s1(2:3), " " ])) STOP 53
+ if (any (eoshift (s1, -1) /= [ " ", s1(1:2) ])) STOP 54
+ if (any (eoshift (s1, 1, " x ") /= [ s1(2:3), " x " ])) STOP 55
+ if (any (eoshift (s1, -1, " x ") /= [ " x ", s1(1:2) ])) STOP 56
+ if (any (eoshift (s4, 1) /= [ s4(2:3), 4_" " ])) STOP 57
+ if (any (eoshift (s4, -1) /= [ 4_" ", s4(1:2) ])) STOP 58
+ if (any (eoshift (s4, 1, 4_" x ") /= [ s4(2:3), 4_" x " ])) STOP 59
+ if (any (eoshift (s4, -1, 4_" x ") /= [ 4_" x ", s4(1:2) ])) STOP 60
- if (any (eoshift (s1, 2) /= [ s1(3), " ", " " ])) call abort
- if (any (eoshift (s1, -2) /= [ " ", " ", s1(1) ])) call abort
- if (any (eoshift (s1, 2, " x ") /= [ s1(3), " x ", " x " ])) call abort
- if (any (eoshift (s1, -2, " x ") /= [ " x ", " x ", s1(1) ])) call abort
- if (any (eoshift (s4, 2) /= [ s4(3), 4_" ", 4_" " ])) call abort
- if (any (eoshift (s4, -2) /= [ 4_" ", 4_" ", s4(1) ])) call abort
- if (any (eoshift (s4, 2, 4_" x ") /= [ s4(3), 4_" x ", 4_" x " ])) call abort
- if (any (eoshift (s4, -2, 4_" x ") /= [ 4_" x ", 4_" x ", s4(1) ])) call abort
+ if (any (eoshift (s1, 2) /= [ s1(3), " ", " " ])) STOP 61
+ if (any (eoshift (s1, -2) /= [ " ", " ", s1(1) ])) STOP 62
+ if (any (eoshift (s1, 2, " x ") /= [ s1(3), " x ", " x " ])) STOP 63
+ if (any (eoshift (s1, -2, " x ") /= [ " x ", " x ", s1(1) ])) STOP 64
+ if (any (eoshift (s4, 2) /= [ s4(3), 4_" ", 4_" " ])) STOP 65
+ if (any (eoshift (s4, -2) /= [ 4_" ", 4_" ", s4(1) ])) STOP 66
+ if (any (eoshift (s4, 2, 4_" x ") /= [ s4(3), 4_" x ", 4_" x " ])) STOP 67
+ if (any (eoshift (s4, -2, 4_" x ") /= [ 4_" x ", 4_" x ", s4(1) ])) STOP 68
end
diff --git a/gcc/testsuite/gfortran.dg/widechar_intrinsics_4.f90 b/gcc/testsuite/gfortran.dg/widechar_intrinsics_4.f90
index c9f8e8cd26c..5aea6774c26 100644
--- a/gcc/testsuite/gfortran.dg/widechar_intrinsics_4.f90
+++ b/gcc/testsuite/gfortran.dg/widechar_intrinsics_4.f90
@@ -17,18 +17,18 @@
call test_adjust2 (s1, s4)
s4 = "\0 foo bar \xFF"
- if (adjustl (s4) /= adjustl (4_"\0 foo bar \xFF ")) call abort
- if (adjustr (s4) /= adjustr (4_"\0 foo bar \xFF ")) call abort
+ if (adjustl (s4) /= adjustl (4_"\0 foo bar \xFF ")) STOP 1
+ if (adjustr (s4) /= adjustr (4_"\0 foo bar \xFF ")) STOP 2
s4 = " \0 foo bar \xFF"
- if (adjustl (s4) /= adjustl (4_" \0 foo bar \xFF ")) call abort
- if (adjustr (s4) /= adjustr (4_" \0 foo bar \xFF ")) call abort
+ if (adjustl (s4) /= adjustl (4_" \0 foo bar \xFF ")) STOP 3
+ if (adjustr (s4) /= adjustr (4_" \0 foo bar \xFF ")) STOP 4
s4 = 4_" \U12345678\xeD bar \ufd30"
if (adjustl (s4) /= &
- adjustl (4_" \U12345678\xeD bar \ufd30 ")) call abort
+ adjustl (4_" \U12345678\xeD bar \ufd30 ")) STOP 5
if (adjustr (s4) /= &
- adjustr (4_" \U12345678\xeD bar \ufd30 ")) call abort
+ adjustr (4_" \U12345678\xeD bar \ufd30 ")) STOP 6
contains
@@ -40,38 +40,38 @@ contains
character(kind=1,len=len(s4)) :: t1
character(kind=4,len=len(s1)) :: t4
- if (len(s1) /= len(s4)) call abort
- if (len(t1) /= len(t4)) call abort
+ if (len(s1) /= len(s4)) STOP 7
+ if (len(t1) /= len(t4)) STOP 8
- if (len_trim(s1) /= len_trim (s4)) call abort
+ if (len_trim(s1) /= len_trim (s4)) STOP 9
t1 = adjustl (s4)
t4 = adjustl (s1)
- if (t1 /= adjustl (s1)) call abort
- if (t4 /= adjustl (s4)) call abort
- if (len_trim (t1) /= len_trim (t4)) call abort
- if (len_trim (adjustl (s1)) /= len_trim (t4)) call abort
- if (len_trim (adjustl (s4)) /= len_trim (t1)) call abort
+ if (t1 /= adjustl (s1)) STOP 10
+ if (t4 /= adjustl (s4)) STOP 11
+ if (len_trim (t1) /= len_trim (t4)) STOP 12
+ if (len_trim (adjustl (s1)) /= len_trim (t4)) STOP 13
+ if (len_trim (adjustl (s4)) /= len_trim (t1)) STOP 14
- if (len_trim (t1) /= len (trim (t1))) call abort
- if (len_trim (s1) /= len (trim (s1))) call abort
- if (len_trim (t4) /= len (trim (t4))) call abort
- if (len_trim (s4) /= len (trim (s4))) call abort
+ if (len_trim (t1) /= len (trim (t1))) STOP 15
+ if (len_trim (s1) /= len (trim (s1))) STOP 16
+ if (len_trim (t4) /= len (trim (t4))) STOP 17
+ if (len_trim (s4) /= len (trim (s4))) STOP 18
t1 = adjustr (s4)
t4 = adjustr (s1)
- if (t1 /= adjustr (s1)) call abort
- if (t4 /= adjustr (s4)) call abort
- if (len_trim (t1) /= len_trim (t4)) call abort
- if (len_trim (adjustr (s1)) /= len_trim (t4)) call abort
- if (len_trim (adjustr (s4)) /= len_trim (t1)) call abort
- if (len (t1) /= len_trim (t1)) call abort
- if (len (t4) /= len_trim (t4)) call abort
-
- if (len_trim (t1) /= len (trim (t1))) call abort
- if (len_trim (s1) /= len (trim (s1))) call abort
- if (len_trim (t4) /= len (trim (t4))) call abort
- if (len_trim (s4) /= len (trim (s4))) call abort
+ if (t1 /= adjustr (s1)) STOP 19
+ if (t4 /= adjustr (s4)) STOP 20
+ if (len_trim (t1) /= len_trim (t4)) STOP 21
+ if (len_trim (adjustr (s1)) /= len_trim (t4)) STOP 22
+ if (len_trim (adjustr (s4)) /= len_trim (t1)) STOP 23
+ if (len (t1) /= len_trim (t1)) STOP 24
+ if (len (t4) /= len_trim (t4)) STOP 25
+
+ if (len_trim (t1) /= len (trim (t1))) STOP 26
+ if (len_trim (s1) /= len (trim (s1))) STOP 27
+ if (len_trim (t4) /= len (trim (t4))) STOP 28
+ if (len_trim (s4) /= len (trim (s4))) STOP 29
end subroutine test_adjust1
@@ -83,38 +83,38 @@ contains
character(kind=1,len=len(s4)) :: t1
character(kind=4,len=len(s1)) :: t4
- if (len(s1) /= len(s4)) call abort
- if (len(t1) /= len(t4)) call abort
+ if (len(s1) /= len(s4)) STOP 30
+ if (len(t1) /= len(t4)) STOP 31
- if (len_trim(s1) /= len_trim (s4)) call abort
+ if (len_trim(s1) /= len_trim (s4)) STOP 32
t1 = adjustl (s4)
t4 = adjustl (s1)
- if (t1 /= adjustl (s1)) call abort
- if (t4 /= adjustl (s4)) call abort
- if (len_trim (t1) /= len_trim (t4)) call abort
- if (len_trim (adjustl (s1)) /= len_trim (t4)) call abort
- if (len_trim (adjustl (s4)) /= len_trim (t1)) call abort
+ if (t1 /= adjustl (s1)) STOP 33
+ if (t4 /= adjustl (s4)) STOP 34
+ if (len_trim (t1) /= len_trim (t4)) STOP 35
+ if (len_trim (adjustl (s1)) /= len_trim (t4)) STOP 36
+ if (len_trim (adjustl (s4)) /= len_trim (t1)) STOP 37
- if (len_trim (t1) /= len (trim (t1))) call abort
- if (len_trim (s1) /= len (trim (s1))) call abort
- if (len_trim (t4) /= len (trim (t4))) call abort
- if (len_trim (s4) /= len (trim (s4))) call abort
+ if (len_trim (t1) /= len (trim (t1))) STOP 38
+ if (len_trim (s1) /= len (trim (s1))) STOP 39
+ if (len_trim (t4) /= len (trim (t4))) STOP 40
+ if (len_trim (s4) /= len (trim (s4))) STOP 41
t1 = adjustr (s4)
t4 = adjustr (s1)
- if (t1 /= adjustr (s1)) call abort
- if (t4 /= adjustr (s4)) call abort
- if (len_trim (t1) /= len_trim (t4)) call abort
- if (len_trim (adjustr (s1)) /= len_trim (t4)) call abort
- if (len_trim (adjustr (s4)) /= len_trim (t1)) call abort
- if (len (t1) /= len_trim (t1)) call abort
- if (len (t4) /= len_trim (t4)) call abort
-
- if (len_trim (t1) /= len (trim (t1))) call abort
- if (len_trim (s1) /= len (trim (s1))) call abort
- if (len_trim (t4) /= len (trim (t4))) call abort
- if (len_trim (s4) /= len (trim (s4))) call abort
+ if (t1 /= adjustr (s1)) STOP 42
+ if (t4 /= adjustr (s4)) STOP 43
+ if (len_trim (t1) /= len_trim (t4)) STOP 44
+ if (len_trim (adjustr (s1)) /= len_trim (t4)) STOP 45
+ if (len_trim (adjustr (s4)) /= len_trim (t1)) STOP 46
+ if (len (t1) /= len_trim (t1)) STOP 47
+ if (len (t4) /= len_trim (t4)) STOP 48
+
+ if (len_trim (t1) /= len (trim (t1))) STOP 49
+ if (len_trim (s1) /= len (trim (s1))) STOP 50
+ if (len_trim (t4) /= len (trim (t4))) STOP 51
+ if (len_trim (s4) /= len (trim (s4))) STOP 52
end subroutine test_adjust2
diff --git a/gcc/testsuite/gfortran.dg/widechar_intrinsics_5.f90 b/gcc/testsuite/gfortran.dg/widechar_intrinsics_5.f90
index e388685adf6..a45216fbbc0 100644
--- a/gcc/testsuite/gfortran.dg/widechar_intrinsics_5.f90
+++ b/gcc/testsuite/gfortran.dg/widechar_intrinsics_5.f90
@@ -11,27 +11,27 @@
character(kind=4,len=5), dimension(3,3) :: m1
character(kind=4,len=5), allocatable, dimension(:,:) :: m2
- if (kind (p) /= 4) call abort
- if (kind (m1) /= 4) call abort
- if (kind (m2) /= 4) call abort
+ if (kind (p) /= 4) STOP 1
+ if (kind (m1) /= 4) STOP 2
+ if (kind (m2) /= 4) STOP 3
m1 = reshape (p, [3,3])
allocate (m2(3,3))
m2(:,:) = reshape (m1, [3,3])
- if (any (m1 /= p)) call abort
- if (any (m2 /= p)) call abort
+ if (any (m1 /= p)) STOP 4
+ if (any (m2 /= p)) STOP 5
- if (size (p) /= 9) call abort
- if (size (m1) /= 9) call abort
- if (size (m2) /= 9) call abort
- if (size (p,1) /= 3) call abort
- if (size (m1,1) /= 3) call abort
- if (size (m2,1) /= 3) call abort
- if (size (p,2) /= 3) call abort
- if (size (m1,2) /= 3) call abort
- if (size (m2,2) /= 3) call abort
+ if (size (p) /= 9) STOP 6
+ if (size (m1) /= 9) STOP 7
+ if (size (m2) /= 9) STOP 8
+ if (size (p,1) /= 3) STOP 9
+ if (size (m1,1) /= 3) STOP 10
+ if (size (m2,1) /= 3) STOP 11
+ if (size (p,2) /= 3) STOP 12
+ if (size (m1,2) /= 3) STOP 13
+ if (size (m2,2) /= 3) STOP 14
call check_shape (p, (/3,3/), 5)
call check_shape (p, shape(p), 5)
@@ -45,8 +45,8 @@
allocate (m2(3,4))
m2 = reshape (m1, [3,4], p)
- if (any (m2(1:3,1:3) /= p)) call abort
- if (any (m2(1:3,4) /= m1(1:3,1))) call abort
+ if (any (m2(1:3,1:3) /= p)) STOP 15
+ if (any (m2(1:3,4) /= m1(1:3,1))) STOP 16
call check_shape (m2, (/3,4/), 5)
deallocate (m2)
@@ -58,24 +58,24 @@
end do
m2 = transpose(m2)
- if (any(transpose(p) /= m2)) call abort
- if (any(transpose(m1) /= m2)) call abort
- if (any(transpose(m2) /= p)) call abort
- if (any(transpose(m2) /= m1)) call abort
+ if (any(transpose(p) /= m2)) STOP 17
+ if (any(transpose(m1) /= m2)) STOP 18
+ if (any(transpose(m2) /= p)) STOP 19
+ if (any(transpose(m2) /= m1)) STOP 20
m1 = transpose(p)
- if (any(transpose(p) /= m2)) call abort
- if (any(m1 /= m2)) call abort
- if (any(transpose(m2) /= p)) call abort
- if (any(transpose(m2) /= transpose(m1))) call abort
+ if (any(transpose(p) /= m2)) STOP 21
+ if (any(m1 /= m2)) STOP 22
+ if (any(transpose(m2) /= p)) STOP 23
+ if (any(transpose(m2) /= transpose(m1))) STOP 24
deallocate (m2)
allocate (m2(3,3))
m2 = p
m1 = m2
- if (any (spread ( p, 1, 2) /= spread (m1, 1, 2))) call abort
- if (any (spread ( p, 1, 2) /= spread (m2, 1, 2))) call abort
- if (any (spread (m1, 1, 2) /= spread (m2, 1, 2))) call abort
+ if (any (spread ( p, 1, 2) /= spread (m1, 1, 2))) STOP 25
+ if (any (spread ( p, 1, 2) /= spread (m2, 1, 2))) STOP 26
+ if (any (spread (m1, 1, 2) /= spread (m2, 1, 2))) STOP 27
deallocate (m2)
allocate (m2(3,3))
@@ -83,16 +83,16 @@
m1 = m2
if (any (pack (p, p /= 4_"") /= [4_" \xFF ", 4_"\0 ", 4_" foo ", &
4_"\u1230\uD67Bde\U31DC8B30", 4_"fa fe", &
- 4_"foo ", 4_"nul\0l"])) call abort
- if (any (len_trim (pack (p, p /= 4_"")) /= [2,1,4,5,5,3,5])) call abort
+ 4_"foo ", 4_"nul\0l"])) STOP 28
+ if (any (len_trim (pack (p, p /= 4_"")) /= [2,1,4,5,5,3,5])) STOP 29
if (any (pack (m1, m1 /= 4_"") /= [4_" \xFF ", 4_"\0 ", 4_" foo ", &
4_"\u1230\uD67Bde\U31DC8B30", 4_"fa fe", &
- 4_"foo ", 4_"nul\0l"])) call abort
- if (any (len_trim (pack (m1, m1 /= 4_"")) /= [2,1,4,5,5,3,5])) call abort
+ 4_"foo ", 4_"nul\0l"])) STOP 30
+ if (any (len_trim (pack (m1, m1 /= 4_"")) /= [2,1,4,5,5,3,5])) STOP 31
if (any (pack (m2, m2 /= 4_"") /= [4_" \xFF ", 4_"\0 ", 4_" foo ", &
4_"\u1230\uD67Bde\U31DC8B30", 4_"fa fe", &
- 4_"foo ", 4_"nul\0l"])) call abort
- if (any (len_trim (pack (m2, m2 /= 4_"")) /= [2,1,4,5,5,3,5])) call abort
+ 4_"foo ", 4_"nul\0l"])) STOP 32
+ if (any (len_trim (pack (m2, m2 /= 4_"")) /= [2,1,4,5,5,3,5])) STOP 33
deallocate (m2)
allocate (m2(1,7))
@@ -100,8 +100,8 @@
4_"\u1230\uD67Bde\U31DC8B30", 4_"fa fe", &
4_"foo ", 4_"nul\0l"], [1,7])
m1 = p
- if (any (unpack(m2(1,:), p /= 4_"", 4_" ") /= p)) call abort
- if (any (unpack(m2(1,:), m1 /= 4_"", 4_" ") /= m1)) call abort
+ if (any (unpack(m2(1,:), p /= 4_"", 4_" ") /= p)) STOP 34
+ if (any (unpack(m2(1,:), m1 /= 4_"", 4_" ") /= m1)) STOP 35
deallocate (m2)
contains
@@ -111,11 +111,11 @@ contains
integer, dimension(:) :: res
integer :: l
- if (kind (array) /= 4) call abort
- if (len(array) /= l) call abort
+ if (kind (array) /= 4) STOP 36
+ if (len(array) /= l) STOP 37
- if (size (res) /= size (shape (array))) call abort
- if (any (shape (array) /= res)) call abort
+ if (size (res) /= size (shape (array))) STOP 38
+ if (any (shape (array) /= res)) STOP 39
end subroutine check_shape
end
diff --git a/gcc/testsuite/gfortran.dg/widechar_intrinsics_6.f90 b/gcc/testsuite/gfortran.dg/widechar_intrinsics_6.f90
index 68b46d8f608..b80dd90db53 100644
--- a/gcc/testsuite/gfortran.dg/widechar_intrinsics_6.f90
+++ b/gcc/testsuite/gfortran.dg/widechar_intrinsics_6.f90
@@ -11,26 +11,26 @@
! Check the REPEAT intrinsic
- if (repeat (1_"foo", 2) /= 1_"foofoo") call abort
- if (repeat (1_"fo ", 2) /= 1_"fo fo ") call abort
- if (repeat (1_"fo ", 2) /= 1_"fo fo") call abort
- if (repeat (1_"fo ", 0) /= 1_"") call abort
- if (repeat (s1, 2) /= 1_"fo fo ") call abort
- if (repeat (s1, 2) /= 1_"fo fo") call abort
- if (repeat (s1, 2) /= s1 // s1) call abort
- if (repeat (s1, 3) /= s1 // s1 // s1) call abort
- if (repeat (s1, 1) /= s1) call abort
- if (repeat (s1, 0) /= "") call abort
-
- if (repeat (4_"foo", 2) /= 4_"foofoo") call abort
- if (repeat (4_"fo ", 2) /= 4_"fo fo ") call abort
- if (repeat (4_"fo ", 2) /= 4_"fo fo") call abort
- if (repeat (4_"fo ", 0) /= 4_"") call abort
- if (repeat (s4, 2) /= 4_"fo fo ") call abort
- if (repeat (s4, 2) /= 4_"fo fo") call abort
- if (repeat (s4, 3) /= s4 // s4 // s4) call abort
- if (repeat (s4, 1) /= s4) call abort
- if (repeat (s4, 0) /= 4_"") call abort
+ if (repeat (1_"foo", 2) /= 1_"foofoo") STOP 1
+ if (repeat (1_"fo ", 2) /= 1_"fo fo ") STOP 2
+ if (repeat (1_"fo ", 2) /= 1_"fo fo") STOP 3
+ if (repeat (1_"fo ", 0) /= 1_"") STOP 4
+ if (repeat (s1, 2) /= 1_"fo fo ") STOP 5
+ if (repeat (s1, 2) /= 1_"fo fo") STOP 6
+ if (repeat (s1, 2) /= s1 // s1) STOP 7
+ if (repeat (s1, 3) /= s1 // s1 // s1) STOP 8
+ if (repeat (s1, 1) /= s1) STOP 9
+ if (repeat (s1, 0) /= "") STOP 10
+
+ if (repeat (4_"foo", 2) /= 4_"foofoo") STOP 11
+ if (repeat (4_"fo ", 2) /= 4_"fo fo ") STOP 12
+ if (repeat (4_"fo ", 2) /= 4_"fo fo") STOP 13
+ if (repeat (4_"fo ", 0) /= 4_"") STOP 14
+ if (repeat (s4, 2) /= 4_"fo fo ") STOP 15
+ if (repeat (s4, 2) /= 4_"fo fo") STOP 16
+ if (repeat (s4, 3) /= s4 // s4 // s4) STOP 17
+ if (repeat (s4, 1) /= s4) STOP 18
+ if (repeat (s4, 0) /= 4_"") STOP 19
call check_repeat (s1, s4)
call check_repeat ("", 4_"")
@@ -39,37 +39,37 @@
! Check NEW_LINE
- if (ichar(new_line ("")) /= 10) call abort
- if (len(new_line ("")) /= 1) call abort
- if (ichar(new_line (s1)) /= 10) call abort
- if (len(new_line (s1)) /= 1) call abort
- if (ichar(new_line (["",""])) /= 10) call abort
- if (len(new_line (["",""])) /= 1) call abort
- if (ichar(new_line ([s1,s1])) /= 10) call abort
- if (len(new_line ([s1,s1])) /= 1) call abort
-
- if (ichar(new_line (4_"")) /= 10) call abort
- if (len(new_line (4_"")) /= 1) call abort
- if (ichar(new_line (s4)) /= 10) call abort
- if (len(new_line (s4)) /= 1) call abort
- if (ichar(new_line ([4_"",4_""])) /= 10) call abort
- if (len(new_line ([4_"",4_""])) /= 1) call abort
- if (ichar(new_line ([s4,s4])) /= 10) call abort
- if (len(new_line ([s4,s4])) /= 1) call abort
+ if (ichar(new_line ("")) /= 10) STOP 20
+ if (len(new_line ("")) /= 1) STOP 21
+ if (ichar(new_line (s1)) /= 10) STOP 22
+ if (len(new_line (s1)) /= 1) STOP 23
+ if (ichar(new_line (["",""])) /= 10) STOP 24
+ if (len(new_line (["",""])) /= 1) STOP 25
+ if (ichar(new_line ([s1,s1])) /= 10) STOP 26
+ if (len(new_line ([s1,s1])) /= 1) STOP 27
+
+ if (ichar(new_line (4_"")) /= 10) STOP 28
+ if (len(new_line (4_"")) /= 1) STOP 29
+ if (ichar(new_line (s4)) /= 10) STOP 30
+ if (len(new_line (s4)) /= 1) STOP 31
+ if (ichar(new_line ([4_"",4_""])) /= 10) STOP 32
+ if (len(new_line ([4_"",4_""])) /= 1) STOP 33
+ if (ichar(new_line ([s4,s4])) /= 10) STOP 34
+ if (len(new_line ([s4,s4])) /= 1) STOP 35
! Check SIZEOF
- if (sizeof ("") /= 0) call abort
- if (sizeof (4_"") /= 0) call abort
- if (sizeof ("x") /= 1) call abort
- if (sizeof ("\xFF") /= 1) call abort
- if (sizeof (4_"x") /= 4) call abort
- if (sizeof (4_"\UFFFFFFFF") /= 4) call abort
- if (sizeof (s1) /= 3) call abort
- if (sizeof (s4) /= 12) call abort
+ if (sizeof ("") /= 0) STOP 36
+ if (sizeof (4_"") /= 0) STOP 37
+ if (sizeof ("x") /= 1) STOP 38
+ if (sizeof ("\xFF") /= 1) STOP 39
+ if (sizeof (4_"x") /= 4) STOP 40
+ if (sizeof (4_"\UFFFFFFFF") /= 4) STOP 41
+ if (sizeof (s1) /= 3) STOP 42
+ if (sizeof (s4) /= 12) STOP 43
- if (sizeof (["a", "x", "z"]) / sizeof ("a") /= 3) call abort
- if (sizeof ([4_"a", 4_"x", 4_"z"]) / sizeof (4_"a") /= 3) call abort
+ if (sizeof (["a", "x", "z"]) / sizeof ("a") /= 3) STOP 44
+ if (sizeof ([4_"a", 4_"x", 4_"z"]) / sizeof (4_"a") /= 3) STOP 45
call check_sizeof ("", 4_"", 0)
call check_sizeof ("x", 4_"x", 1)
@@ -85,13 +85,13 @@ contains
integer :: i
do i = 0, 10
- if (len (repeat(s1, i)) /= i * len(s1)) call abort
- if (len (repeat(s4, i)) /= i * len(s4)) call abort
+ if (len (repeat(s1, i)) /= i * len(s1)) STOP 46
+ if (len (repeat(s4, i)) /= i * len(s4)) STOP 47
if (len_trim (repeat(s1, i)) &
- /= max(0, (i - 1) * len(s1) + len_trim (s1))) call abort
+ /= max(0, (i - 1) * len(s1) + len_trim (s1))) STOP 48
if (len_trim (repeat(s4, i)) &
- /= max(0, (i - 1) * len(s4) + len_trim (s4))) call abort
+ /= max(0, (i - 1) * len(s4) + len_trim (s4))) STOP 49
end do
end subroutine check_repeat
@@ -101,9 +101,9 @@ contains
character(kind=4, len=len(s4)) :: t4
integer, intent(in) :: i
- if (sizeof (s1) /= i) call abort
- if (sizeof (s4) / sizeof (4_" ") /= i) call abort
- if (sizeof (t4) / sizeof (4_" ") /= i) call abort
+ if (sizeof (s1) /= i) STOP 50
+ if (sizeof (s4) / sizeof (4_" ") /= i) STOP 51
+ if (sizeof (t4) / sizeof (4_" ") /= i) STOP 52
end subroutine check_sizeof
end
diff --git a/gcc/testsuite/gfortran.dg/widechar_intrinsics_7.f90 b/gcc/testsuite/gfortran.dg/widechar_intrinsics_7.f90
index 7971af3963e..0ad15ef1371 100644
--- a/gcc/testsuite/gfortran.dg/widechar_intrinsics_7.f90
+++ b/gcc/testsuite/gfortran.dg/widechar_intrinsics_7.f90
@@ -104,21 +104,21 @@ contains
character(kind=4, len=*) :: s4, t4
integer :: res1(6), res4(6)
- if (any (res1 /= res4)) call abort
+ if (any (res1 /= res4)) STOP 1
- if (index (s1, t1, .true.) /= res1(1)) call abort
- if (index (s1, t1, .false.) /= res1(2)) call abort
- if (scan (s1, t1, .true.) /= res1(3)) call abort
- if (scan (s1, t1, .false.) /= res1(4)) call abort
- if (verify (s1, t1, .true.) /= res1(5)) call abort
- if (verify (s1, t1, .false.) /= res1(6)) call abort
+ if (index (s1, t1, .true.) /= res1(1)) STOP 2
+ if (index (s1, t1, .false.) /= res1(2)) STOP 3
+ if (scan (s1, t1, .true.) /= res1(3)) STOP 4
+ if (scan (s1, t1, .false.) /= res1(4)) STOP 5
+ if (verify (s1, t1, .true.) /= res1(5)) STOP 6
+ if (verify (s1, t1, .false.) /= res1(6)) STOP 7
- if (index (s4, t4, .true.) /= res4(1)) call abort
- if (index (s4, t4, .false.) /= res4(2)) call abort
- if (scan (s4, t4, .true.) /= res4(3)) call abort
- if (scan (s4, t4, .false.) /= res4(4)) call abort
- if (verify (s4, t4, .true.) /= res4(5)) call abort
- if (verify (s4, t4, .false.) /= res4(6)) call abort
+ if (index (s4, t4, .true.) /= res4(1)) STOP 8
+ if (index (s4, t4, .false.) /= res4(2)) STOP 9
+ if (scan (s4, t4, .true.) /= res4(3)) STOP 10
+ if (scan (s4, t4, .false.) /= res4(4)) STOP 11
+ if (verify (s4, t4, .true.) /= res4(5)) STOP 12
+ if (verify (s4, t4, .false.) /= res4(6)) STOP 13
end subroutine check1
diff --git a/gcc/testsuite/gfortran.dg/widechar_intrinsics_8.f90 b/gcc/testsuite/gfortran.dg/widechar_intrinsics_8.f90
index eeeabbca5af..ebd6d1e8ce3 100644
--- a/gcc/testsuite/gfortran.dg/widechar_intrinsics_8.f90
+++ b/gcc/testsuite/gfortran.dg/widechar_intrinsics_8.f90
@@ -11,20 +11,20 @@
call check_merge1 ("foo", "gee", .true., .false.)
call check_merge4 (4_"foo", 4_"gee", .true., .false.)
- if (merge ("foo", "gee", .true.) /= "foo") call abort
- if (merge ("foo", "gee", .false.) /= "gee") call abort
- if (merge (4_"foo", 4_"gee", .true.) /= 4_"foo") call abort
- if (merge (4_"foo", 4_"gee", .false.) /= 4_"gee") call abort
+ if (merge ("foo", "gee", .true.) /= "foo") STOP 1
+ if (merge ("foo", "gee", .false.) /= "gee") STOP 2
+ if (merge (4_"foo", 4_"gee", .true.) /= 4_"foo") STOP 3
+ if (merge (4_"foo", 4_"gee", .false.) /= 4_"gee") STOP 4
! Test TRANSFER intrinsic
if (bigendian) then
- if (transfer (4_"x", " ") /= "\0\0\0x") call abort
+ if (transfer (4_"x", " ") /= "\0\0\0x") STOP 5
else
- if (transfer (4_"x", " ") /= "x\0\0\0") call abort
+ if (transfer (4_"x", " ") /= "x\0\0\0") STOP 6
endif
- if (transfer (4_"\U44444444", " ") /= "\x44\x44\x44\x44") call abort
- if (transfer (4_"\U3FE91B5A", 0_4) /= int(z'3FE91B5A', 4)) call abort
+ if (transfer (4_"\U44444444", " ") /= "\x44\x44\x44\x44") STOP 7
+ if (transfer (4_"\U3FE91B5A", 0_4) /= int(z'3FE91B5A', 4)) STOP 8
call check_transfer_i (4_"\U3FE91B5A", [int(z'3FE91B5A', 4)])
call check_transfer_i (4_"\u1B5A", [int(z'1B5A', 4)])
@@ -35,19 +35,19 @@ contains
character(kind=1,len=*) :: s1, t1
logical :: t, f
- if (merge (s1, t1, .true.) /= s1) call abort
- if (merge (s1, t1, .false.) /= t1) call abort
- if (len (merge (s1, t1, .true.)) /= len (s1)) call abort
- if (len (merge (s1, t1, .false.)) /= len (t1)) call abort
- if (len_trim (merge (s1, t1, .true.)) /= len_trim (s1)) call abort
- if (len_trim (merge (s1, t1, .false.)) /= len_trim (t1)) call abort
+ if (merge (s1, t1, .true.) /= s1) STOP 9
+ if (merge (s1, t1, .false.) /= t1) STOP 10
+ if (len (merge (s1, t1, .true.)) /= len (s1)) STOP 11
+ if (len (merge (s1, t1, .false.)) /= len (t1)) STOP 12
+ if (len_trim (merge (s1, t1, .true.)) /= len_trim (s1)) STOP 13
+ if (len_trim (merge (s1, t1, .false.)) /= len_trim (t1)) STOP 14
- if (merge (s1, t1, t) /= s1) call abort
- if (merge (s1, t1, f) /= t1) call abort
- if (len (merge (s1, t1, t)) /= len (s1)) call abort
- if (len (merge (s1, t1, f)) /= len (t1)) call abort
- if (len_trim (merge (s1, t1, t)) /= len_trim (s1)) call abort
- if (len_trim (merge (s1, t1, f)) /= len_trim (t1)) call abort
+ if (merge (s1, t1, t) /= s1) STOP 15
+ if (merge (s1, t1, f) /= t1) STOP 16
+ if (len (merge (s1, t1, t)) /= len (s1)) STOP 17
+ if (len (merge (s1, t1, f)) /= len (t1)) STOP 18
+ if (len_trim (merge (s1, t1, t)) /= len_trim (s1)) STOP 19
+ if (len_trim (merge (s1, t1, f)) /= len_trim (t1)) STOP 20
end subroutine check_merge1
@@ -55,19 +55,19 @@ contains
character(kind=4,len=*) :: s4, t4
logical :: t, f
- if (merge (s4, t4, .true.) /= s4) call abort
- if (merge (s4, t4, .false.) /= t4) call abort
- if (len (merge (s4, t4, .true.)) /= len (s4)) call abort
- if (len (merge (s4, t4, .false.)) /= len (t4)) call abort
- if (len_trim (merge (s4, t4, .true.)) /= len_trim (s4)) call abort
- if (len_trim (merge (s4, t4, .false.)) /= len_trim (t4)) call abort
+ if (merge (s4, t4, .true.) /= s4) STOP 21
+ if (merge (s4, t4, .false.) /= t4) STOP 22
+ if (len (merge (s4, t4, .true.)) /= len (s4)) STOP 23
+ if (len (merge (s4, t4, .false.)) /= len (t4)) STOP 24
+ if (len_trim (merge (s4, t4, .true.)) /= len_trim (s4)) STOP 25
+ if (len_trim (merge (s4, t4, .false.)) /= len_trim (t4)) STOP 26
- if (merge (s4, t4, t) /= s4) call abort
- if (merge (s4, t4, f) /= t4) call abort
- if (len (merge (s4, t4, t)) /= len (s4)) call abort
- if (len (merge (s4, t4, f)) /= len (t4)) call abort
- if (len_trim (merge (s4, t4, t)) /= len_trim (s4)) call abort
- if (len_trim (merge (s4, t4, f)) /= len_trim (t4)) call abort
+ if (merge (s4, t4, t) /= s4) STOP 27
+ if (merge (s4, t4, f) /= t4) STOP 28
+ if (len (merge (s4, t4, t)) /= len (s4)) STOP 29
+ if (len (merge (s4, t4, f)) /= len (t4)) STOP 30
+ if (len_trim (merge (s4, t4, t)) /= len_trim (s4)) STOP 31
+ if (len_trim (merge (s4, t4, f)) /= len_trim (t4)) STOP 32
end subroutine check_merge4
@@ -75,10 +75,10 @@ contains
character(kind=4,len=*) :: s
integer(kind=4), dimension(len(s)) :: i
- if (transfer (s, 0_4) /= ichar (s(1:1))) call abort
- if (transfer (s, 0_4) /= i(1)) call abort
- if (any (transfer (s, [0_4]) /= i)) call abort
- if (any (transfer (s, 0_4, len(s)) /= i)) call abort
+ if (transfer (s, 0_4) /= ichar (s(1:1))) STOP 33
+ if (transfer (s, 0_4) /= i(1)) STOP 34
+ if (any (transfer (s, [0_4]) /= i)) STOP 35
+ if (any (transfer (s, 0_4, len(s)) /= i)) STOP 36
end subroutine check_transfer_i
diff --git a/gcc/testsuite/gfortran.dg/widechar_intrinsics_9.f90 b/gcc/testsuite/gfortran.dg/widechar_intrinsics_9.f90
index ca6fa58184e..c73dce4f81f 100644
--- a/gcc/testsuite/gfortran.dg/widechar_intrinsics_9.f90
+++ b/gcc/testsuite/gfortran.dg/widechar_intrinsics_9.f90
@@ -53,18 +53,18 @@ contains
character(kind=4,len=len(s1)) :: w1, w2, wmin, wmax
w1 = s1 ; w2 = s2 ; wmin = smin ; wmax = smax
- if (min (w1, w2) /= wmin) call abort
- if (max (w1, w2) /= wmax) call abort
- if (min (s1, s2) /= smin) call abort
- if (max (s1, s2) /= smax) call abort
+ if (min (w1, w2) /= wmin) STOP 1
+ if (max (w1, w2) /= wmax) STOP 2
+ if (min (s1, s2) /= smin) STOP 3
+ if (max (s1, s2) /= smax) STOP 4
end subroutine check_minmax_1
subroutine check_minmax_2 (s1, s2, smin, smax)
implicit none
character(kind=4,len=*), intent(in) :: s1, s2, smin, smax
- if (min (s1, s2) /= smin) call abort
- if (max (s1, s2) /= smax) call abort
+ if (min (s1, s2) /= smin) STOP 5
+ if (max (s1, s2) /= smax) STOP 6
end subroutine check_minmax_2
end
diff --git a/gcc/testsuite/gfortran.dg/widechar_select_1.f90 b/gcc/testsuite/gfortran.dg/widechar_select_1.f90
index 64315af0b71..24c4b50c8fc 100644
--- a/gcc/testsuite/gfortran.dg/widechar_select_1.f90
+++ b/gcc/testsuite/gfortran.dg/widechar_select_1.f90
@@ -49,7 +49,7 @@ contains
subroutine testme(x,y,z)
integer :: x, y, z
- if (x /= y) call abort
- if (x /= z) call abort
+ if (x /= y) STOP 1
+ if (x /= z) STOP 2
end subroutine testme
end
diff --git a/gcc/testsuite/gfortran.dg/winapi.f90 b/gcc/testsuite/gfortran.dg/winapi.f90
index 0ee3920ff94..33de19c7a9c 100644
--- a/gcc/testsuite/gfortran.dg/winapi.f90
+++ b/gcc/testsuite/gfortran.dg/winapi.f90
@@ -18,6 +18,6 @@ PROGRAM winapi
END FUNCTION lstrlen
END INTERFACE
- IF (lstrlen(C_CHAR_"winapi"//C_NULL_CHAR) /= 6) CALL abort()
+ IF (lstrlen(C_CHAR_"winapi"//C_NULL_CHAR) /= 6) STOP 1
END PROGRAM winapi
diff --git a/gcc/testsuite/gfortran.dg/write_0_pe_format.f90 b/gcc/testsuite/gfortran.dg/write_0_pe_format.f90
index 3890c32ecc0..9b1eba241eb 100644
--- a/gcc/testsuite/gfortran.dg/write_0_pe_format.f90
+++ b/gcc/testsuite/gfortran.dg/write_0_pe_format.f90
@@ -4,6 +4,6 @@
character(len=10) :: c1, c2
write(c1,"(1pe9.2)") 0.0
write(c2,"(1pe9.2)") 1.0
-if (trim(adjustl(c1)) .ne. "0.00E+00") call abort()
-if (trim(adjustl(c2)) .ne. "1.00E+00") call abort()
+if (trim(adjustl(c1)) .ne. "0.00E+00") STOP 1
+if (trim(adjustl(c2)) .ne. "1.00E+00") STOP 2
end
diff --git a/gcc/testsuite/gfortran.dg/write_back.f b/gcc/testsuite/gfortran.dg/write_back.f
index a8472f7caa7..2ad9aedad25 100644
--- a/gcc/testsuite/gfortran.dg/write_back.f
+++ b/gcc/testsuite/gfortran.dg/write_back.f
@@ -19,7 +19,7 @@
read(11)idata
read(11)idata
read(11, end=250)idata
- call abort()
+ STOP 1
250 continue
close(11, status="delete")
end
diff --git a/gcc/testsuite/gfortran.dg/write_check3.f90 b/gcc/testsuite/gfortran.dg/write_check3.f90
index 802a06d27a9..cffaa9e1e0d 100644
--- a/gcc/testsuite/gfortran.dg/write_check3.f90
+++ b/gcc/testsuite/gfortran.dg/write_check3.f90
@@ -6,6 +6,6 @@ program us_recl
integer :: istatus
open(unit=10, form="unformatted", access="sequential", RECL=16)
write(10, iostat=istatus) array
- if (istatus == 0) call abort()
+ if (istatus == 0) STOP 1
close(10, status="delete")
end program us_recl
diff --git a/gcc/testsuite/gfortran.dg/write_direct_eor.f90 b/gcc/testsuite/gfortran.dg/write_direct_eor.f90
index 9044642df82..620948e2f82 100644
--- a/gcc/testsuite/gfortran.dg/write_direct_eor.f90
+++ b/gcc/testsuite/gfortran.dg/write_direct_eor.f90
@@ -6,7 +6,7 @@ program testrecl
implicit none
open(unit = 10, form = 'unformatted', access = 'direct', recl = 4)
write(unit=10,rec=1, err=100) 1d0
- call abort()
+ STOP 1
100 continue
close(unit=10, status='delete')
end
diff --git a/gcc/testsuite/gfortran.dg/write_padding.f90 b/gcc/testsuite/gfortran.dg/write_padding.f90
index e1c37917dc4..70777d65178 100644
--- a/gcc/testsuite/gfortran.dg/write_padding.f90
+++ b/gcc/testsuite/gfortran.dg/write_padding.f90
@@ -8,6 +8,6 @@ program write_padding
real :: atime
str = '123'
write( str, '(a3,i1)' ) trim(str),4
- if (str.ne."1234") call abort()
+ if (str.ne."1234") STOP 1
end program write_padding
diff --git a/gcc/testsuite/gfortran.dg/write_recursive.f90 b/gcc/testsuite/gfortran.dg/write_recursive.f90
index 20014abd228..be737baca34 100644
--- a/gcc/testsuite/gfortran.dg/write_recursive.f90
+++ b/gcc/testsuite/gfortran.dg/write_recursive.f90
@@ -6,10 +6,10 @@ program pr26766
implicit none
character (len=8) :: str, tmp
write (str, '(a)') bar (1234)
- if (str.ne."abcd") call abort()
+ if (str.ne."abcd") STOP 1
str = "wxyz"
write (str, '(2a4)') foo (1), bar (1)
- if (str.ne."abcdabcd") call abort()
+ if (str.ne."abcdabcd") STOP 2
contains
diff --git a/gcc/testsuite/gfortran.dg/write_rewind_1.f b/gcc/testsuite/gfortran.dg/write_rewind_1.f
index 94fec99df7c..716a040b7ce 100644
--- a/gcc/testsuite/gfortran.dg/write_rewind_1.f
+++ b/gcc/testsuite/gfortran.dg/write_rewind_1.f
@@ -9,7 +9,7 @@
write(11)idata
write(11)idata
read(11,end= 1000 )idata
- call abort()
+ STOP 1
1000 continue
rewind 11
write(11)idata
@@ -18,7 +18,7 @@
rewind 11
read(11)idata
read(11, end=250)idata
- call abort()
+ STOP 2
250 continue
close(11,status='delete')
end
diff --git a/gcc/testsuite/gfortran.dg/write_rewind_2.f b/gcc/testsuite/gfortran.dg/write_rewind_2.f
index 501995c6eb5..b1223cf8845 100644
--- a/gcc/testsuite/gfortran.dg/write_rewind_2.f
+++ b/gcc/testsuite/gfortran.dg/write_rewind_2.f
@@ -16,26 +16,26 @@
idata( 1011) = -708
write(11)idata
read(11,end= 1000 )idata
- call abort()
+ STOP 1
1000 continue
rewind 11
read(11,end= 1001 )idata
- if(idata(1).ne. -705.or.idata( 1011).ne. -706)call abort()
+ if(idata(1).ne. -705.or.idata( 1011).ne. -706)STOP 2
1001 continue
close(11,status='keep')
open(unit=11,form='unformatted')
rewind 11
read(11)idata
if(idata(1).ne.-705)then
- call abort()
+ STOP 3
endif
read(11)idata
if(idata(1).ne.-706)then
- call abort()
+ STOP 4
endif
read(11)idata
if(idata(1).ne.-707)then
- call abort()
+ STOP 5
endif
close(11,status='delete')
stop
diff --git a/gcc/testsuite/gfortran.dg/write_zero_array.f90 b/gcc/testsuite/gfortran.dg/write_zero_array.f90
index da7afc1426c..64846a53112 100644
--- a/gcc/testsuite/gfortran.dg/write_zero_array.f90
+++ b/gcc/testsuite/gfortran.dg/write_zero_array.f90
@@ -8,10 +8,10 @@ program zeros
integer :: ics
!This was OK
write(msg,*) 'itemp(6:0) = ',itemp(6:0),'a'
- if (msg /= " itemp(6:0) = a") call abort()
+ if (msg /= " itemp(6:0) = a") STOP 1
!This did not work before patch, segfaulted
ics=6
write(msg,*) 'itemp(ics:0) = ',itemp(ics:0),'a'
- if (msg /= " itemp(ics:0) = a") call abort()
+ if (msg /= " itemp(ics:0) = a") STOP 2
end program zeros
diff --git a/gcc/testsuite/gfortran.dg/x_slash_1.f b/gcc/testsuite/gfortran.dg/x_slash_1.f
index 435e4612227..73db12e2f24 100644
--- a/gcc/testsuite/gfortran.dg/x_slash_1.f
+++ b/gcc/testsuite/gfortran.dg/x_slash_1.f
@@ -24,14 +24,14 @@ c Line 3 has x editing finished off by a 1h*
read (10, 200) a
read (10, 200) a
do i = 1,60
- if (ichar(a(i:i)).ne.32) call abort ()
+ if (ichar(a(i:i)).ne.32) STOP 1
end do
read (10, 200) a
200 format (a60)
do i = 1,59
- if (ichar(a(i:i)).ne.32) call abort ()
+ if (ichar(a(i:i)).ne.32) STOP 2
end do
- if (a(60:60).ne."*") call abort ()
+ if (a(60:60).ne."*") STOP 3
rewind (10)
c Check that sequences of t- and x-editing generate the correct
@@ -48,15 +48,15 @@ c Line 3 has tabs to the left of present position.
read (10, 200) a
read (10, 200) a
do i = 1,59
- if (ichar(a(i:i)).ne.32) call abort ()
+ if (ichar(a(i:i)).ne.32) STOP 4
end do
- if (a(60:60).ne."$") call abort ()
+ if (a(60:60).ne."$") STOP 5
read (10, 200) a
- if (a(1:10).ne."abcdghijkl") call abort ()
+ if (a(1:10).ne."abcdghijkl") STOP 6
do i = 11,59
- if (ichar(a(i:i)).ne.32) call abort ()
+ if (ichar(a(i:i)).ne.32) STOP 7
end do
- if (a(60:60).ne."*") call abort ()
+ if (a(60:60).ne."*") STOP 8
rewind (10)
c Now repeat the first test, with the write broken up into three
@@ -73,9 +73,9 @@ c correctly reset for each statement.
read (10, 200) a
read (10, 200) a
do i = 11,59
- if (ichar(a(i:i)).ne.32) call abort ()
+ if (ichar(a(i:i)).ne.32) STOP 9
end do
- if (a(60:60).ne."$") call abort ()
+ if (a(60:60).ne."$") STOP 10
rewind (10)
c Next we check multiple read x- and t-editing.
@@ -83,7 +83,7 @@ c First, tab to the right.
read (10, 201) b, c
201 format (tr10,49x,a1,/,/,2x,t60,a1)
- if ((b.ne."#").or.(c.ne."$")) call abort ()
+ if ((b.ne."#").or.(c.ne."$")) STOP 11
rewind (10)
c Now break it up into three reads and use left tabs.
@@ -94,7 +94,7 @@ c Now break it up into three reads and use left tabs.
203 format ()
read (10, 204) c
204 format (10x,t5,55x,a1)
- if ((b.ne."#").or.(c.ne."$")) call abort ()
+ if ((b.ne."#").or.(c.ne."$")) STOP 12
close (10)
c Now, check that trailing spaces are not transmitted when we have
@@ -110,7 +110,7 @@ c http://gcc.gnu.org/ml/fortran/2005-07/msg00395.html).
rewind (10)
read (10, 205, iostat = ier) i, b
205 format (i10,a1)
- if ((ier.eq.0).or.(ichar(b).ne.0)) call abort ()
+ if ((ier.eq.0).or.(ichar(b).ne.0)) STOP 13
c That's all for now, folks!
diff --git a/gcc/testsuite/gfortran.dg/x_slash_2.f b/gcc/testsuite/gfortran.dg/x_slash_2.f
index 6023b647d24..6a186af5c8d 100644
--- a/gcc/testsuite/gfortran.dg/x_slash_2.f
+++ b/gcc/testsuite/gfortran.dg/x_slash_2.f
@@ -6,6 +6,6 @@
write (10,'(3X, A, T1, A,/)') 'aa', 'bb'
rewind(10)
read (10,'(A2,1X,A2)') b,a
- if (a /= 'aa' .or. b /= 'bb') call abort
+ if (a /= 'aa' .or. b /= 'bb') STOP 1
close(10,status="delete")
end
diff --git a/gcc/testsuite/gfortran.dg/zero_array_components_1.f90 b/gcc/testsuite/gfortran.dg/zero_array_components_1.f90
index b1b8b5c69ab..ba811f2e073 100644
--- a/gcc/testsuite/gfortran.dg/zero_array_components_1.f90
+++ b/gcc/testsuite/gfortran.dg/zero_array_components_1.f90
@@ -13,5 +13,5 @@ program test_assign
mine%b=4
mine%a=1
mine%a=0
- if (any (mine%b .ne. 4)) call abort ()
+ if (any (mine%b .ne. 4)) STOP 1
end program test_assign
diff --git a/gcc/testsuite/gfortran.dg/zero_length_1.f90 b/gcc/testsuite/gfortran.dg/zero_length_1.f90
index c76d079e597..996f98606cb 100644
--- a/gcc/testsuite/gfortran.dg/zero_length_1.f90
+++ b/gcc/testsuite/gfortran.dg/zero_length_1.f90
@@ -6,7 +6,7 @@ program test
character(len=20) :: s
write(s,'(A,I1)') foo(), 0
- if (trim(s) /= "0") call abort
+ if (trim(s) /= "0") STOP 1
contains
diff --git a/gcc/testsuite/gfortran.dg/zero_length_2.f90 b/gcc/testsuite/gfortran.dg/zero_length_2.f90
index 2cc3f2938ca..7c11e3ddcf8 100644
--- a/gcc/testsuite/gfortran.dg/zero_length_2.f90
+++ b/gcc/testsuite/gfortran.dg/zero_length_2.f90
@@ -11,6 +11,6 @@
contains
subroutine bar (s)
character(len=*), optional :: s
- if (.not. present (S)) call abort
+ if (.not. present (S)) STOP 1
end subroutine bar
end
diff --git a/gcc/testsuite/gfortran.dg/zero_sized_1.f90 b/gcc/testsuite/gfortran.dg/zero_sized_1.f90
index 85167fcca3e..55bead14f51 100644
--- a/gcc/testsuite/gfortran.dg/zero_sized_1.f90
+++ b/gcc/testsuite/gfortran.dg/zero_sized_1.f90
@@ -8,13 +8,13 @@ subroutine test_cshift
tempn = 2.0
tempm = 1.0
allocate(foo(0),bar(2,0),gee(0,7))
- if (any(cshift(foo,dim=1,shift=1)/= 0)) call abort
- if (any(cshift(tempn(2:1),dim=1,shift=1)/= 0)) call abort
- if (any(cshift(bar,shift=(/1,-1/),dim=1)/= 0)) call abort
- if (any(cshift(bar,shift=(/1,-1/),dim=2)/= 0)) call abort
- if (any(cshift(gee,shift=(/1,-1/),dim=1)/= 0)) call abort
- if (any(cshift(gee,shift=(/1,-1/),dim=2)/= 0)) call abort
- if (any(cshift(tempm(5:4,:),shift=(/1,-1/),dim=1)/= 0)) call abort
+ if (any(cshift(foo,dim=1,shift=1)/= 0)) STOP 1
+ if (any(cshift(tempn(2:1),dim=1,shift=1)/= 0)) STOP 2
+ if (any(cshift(bar,shift=(/1,-1/),dim=1)/= 0)) STOP 3
+ if (any(cshift(bar,shift=(/1,-1/),dim=2)/= 0)) STOP 4
+ if (any(cshift(gee,shift=(/1,-1/),dim=1)/= 0)) STOP 5
+ if (any(cshift(gee,shift=(/1,-1/),dim=2)/= 0)) STOP 6
+ if (any(cshift(tempm(5:4,:),shift=(/1,-1/),dim=1)/= 0)) STOP 7
deallocate(foo,bar,gee)
end
@@ -24,29 +24,29 @@ subroutine test_eoshift
tempn = 2.0
tempm = 1.0
allocate(foo(0),bar(2,0),gee(0,7))
- if (any(eoshift(foo,dim=1,shift=1)/= 0)) call abort
- if (any(eoshift(tempn(2:1),dim=1,shift=1)/= 0)) call abort
- if (any(eoshift(bar,shift=(/1,-1/),dim=1)/= 0)) call abort
- if (any(eoshift(bar,shift=(/1,-1/),dim=2)/= 0)) call abort
- if (any(eoshift(gee,shift=(/1,-1/),dim=1)/= 0)) call abort
- if (any(eoshift(gee,shift=(/1,-1/),dim=2)/= 0)) call abort
- if (any(eoshift(tempm(5:4,:),shift=(/1,-1/),dim=1)/= 0)) call abort
+ if (any(eoshift(foo,dim=1,shift=1)/= 0)) STOP 8
+ if (any(eoshift(tempn(2:1),dim=1,shift=1)/= 0)) STOP 9
+ if (any(eoshift(bar,shift=(/1,-1/),dim=1)/= 0)) STOP 10
+ if (any(eoshift(bar,shift=(/1,-1/),dim=2)/= 0)) STOP 11
+ if (any(eoshift(gee,shift=(/1,-1/),dim=1)/= 0)) STOP 12
+ if (any(eoshift(gee,shift=(/1,-1/),dim=2)/= 0)) STOP 13
+ if (any(eoshift(tempm(5:4,:),shift=(/1,-1/),dim=1)/= 0)) STOP 14
- if (any(eoshift(foo,dim=1,shift=1,boundary=42.0)/= 0)) call abort
- if (any(eoshift(tempn(2:1),dim=1,shift=1,boundary=42.0)/= 0)) call abort
- if (any(eoshift(bar,shift=(/1,-1/),dim=1,boundary=42.0)/= 0)) call abort
- if (any(eoshift(bar,shift=(/1,-1/),dim=2,boundary=42.0)/= 0)) call abort
- if (any(eoshift(gee,shift=(/1,-1/),dim=1,boundary=42.0)/= 0)) call abort
- if (any(eoshift(gee,shift=(/1,-1/),dim=2,boundary=42.0)/= 0)) call abort
- if (any(eoshift(tempm(5:4,:),shift=(/1,-1/),dim=1,boundary=42.0)/= 0)) call abort
+ if (any(eoshift(foo,dim=1,shift=1,boundary=42.0)/= 0)) STOP 15
+ if (any(eoshift(tempn(2:1),dim=1,shift=1,boundary=42.0)/= 0)) STOP 16
+ if (any(eoshift(bar,shift=(/1,-1/),dim=1,boundary=42.0)/= 0)) STOP 17
+ if (any(eoshift(bar,shift=(/1,-1/),dim=2,boundary=42.0)/= 0)) STOP 18
+ if (any(eoshift(gee,shift=(/1,-1/),dim=1,boundary=42.0)/= 0)) STOP 19
+ if (any(eoshift(gee,shift=(/1,-1/),dim=2,boundary=42.0)/= 0)) STOP 20
+ if (any(eoshift(tempm(5:4,:),shift=(/1,-1/),dim=1,boundary=42.0)/= 0)) STOP 21
- if (any(eoshift(foo,dim=1,shift=1,boundary=42.0)/= 0)) call abort
- if (any(eoshift(tempn(2:1),dim=1,shift=1,boundary=-7.0)/= 0)) call abort
- if (any(eoshift(bar,shift=(/1,-1/),dim=1,boundary=(/42.0,-7.0/))/= 0)) call abort
- if (any(eoshift(bar,shift=(/1,-1/),dim=2,boundary=(/42.0,-7.0/))/= 0)) call abort
- if (any(eoshift(gee,shift=(/1,-1/),dim=1,boundary=(/42.0,-7.0/))/= 0)) call abort
- if (any(eoshift(gee,shift=(/1,-1/),dim=2,boundary=(/42.0,-7.0/))/= 0)) call abort
- if (any(eoshift(tempm(5:4,:),shift=(/1,-1/),dim=1,boundary=(/42.0,-7.0/))/= 0)) call abort
+ if (any(eoshift(foo,dim=1,shift=1,boundary=42.0)/= 0)) STOP 22
+ if (any(eoshift(tempn(2:1),dim=1,shift=1,boundary=-7.0)/= 0)) STOP 23
+ if (any(eoshift(bar,shift=(/1,-1/),dim=1,boundary=(/42.0,-7.0/))/= 0)) STOP 24
+ if (any(eoshift(bar,shift=(/1,-1/),dim=2,boundary=(/42.0,-7.0/))/= 0)) STOP 25
+ if (any(eoshift(gee,shift=(/1,-1/),dim=1,boundary=(/42.0,-7.0/))/= 0)) STOP 26
+ if (any(eoshift(gee,shift=(/1,-1/),dim=2,boundary=(/42.0,-7.0/))/= 0)) STOP 27
+ if (any(eoshift(tempm(5:4,:),shift=(/1,-1/),dim=1,boundary=(/42.0,-7.0/))/= 0)) STOP 28
deallocate(foo,bar,gee)
end
@@ -59,14 +59,14 @@ subroutine test_transpose
allocate(foo(3,0),bar(-2:-4,7:9))
tempm = -42
allocate(x(3,0),y(-2:-4,7:9))
- if (any(transpose(tempn(-7:-8,:)) /= 'b')) call abort
- if (any(transpose(tempn(:,9:8)) /= 'b')) call abort
- if (any(transpose(foo) /= 'b')) call abort
- if (any(transpose(bar) /= 'b')) call abort
- if (any(transpose(tempm(-7:-8,:)) /= 0)) call abort
- if (any(transpose(tempm(:,9:8)) /= 0)) call abort
- if (any(transpose(x) /= 0)) call abort
- if (any(transpose(y) /= 0)) call abort
+ if (any(transpose(tempn(-7:-8,:)) /= 'b')) STOP 29
+ if (any(transpose(tempn(:,9:8)) /= 'b')) STOP 30
+ if (any(transpose(foo) /= 'b')) STOP 31
+ if (any(transpose(bar) /= 'b')) STOP 32
+ if (any(transpose(tempm(-7:-8,:)) /= 0)) STOP 33
+ if (any(transpose(tempm(:,9:8)) /= 0)) STOP 34
+ if (any(transpose(x) /= 0)) STOP 35
+ if (any(transpose(y) /= 0)) STOP 36
deallocate(foo,bar,x,y)
end
@@ -80,42 +80,42 @@ subroutine test_reshape
allocate(foo(3,0),bar(-2:-4,7:9),x(3,0),y(-2:-4,7:9))
if (size(reshape(tempn(-7:-8,:),(/3,3/),pad=(/'a'/))) /= 9 .or. &
- any(reshape(tempn(-7:-8,:),(/3,3/),pad=(/'a'/)) /= 'a')) call abort
+ any(reshape(tempn(-7:-8,:),(/3,3/),pad=(/'a'/)) /= 'a')) STOP 37
if (size(reshape(tempn(-7:-8,:),(/3,3,3/),pad=(/'a'/))) /= 27 .or. &
- any(reshape(tempn(-7:-8,:),(/3,3,3/),pad=(/'a'/)) /= 'a')) call abort
+ any(reshape(tempn(-7:-8,:),(/3,3,3/),pad=(/'a'/)) /= 'a')) STOP 38
if (size(reshape(tempn(-7:-8,:),(/3,3,3,3,3,3,3/),pad=(/'a'/))) /= 2187 .or. &
- any(reshape(tempn(-7:-8,:),(/3,3,3,3,3,3,3/),pad=(/'a'/)) /= 'a')) call abort
+ any(reshape(tempn(-7:-8,:),(/3,3,3,3,3,3,3/),pad=(/'a'/)) /= 'a')) STOP 39
if (size(reshape(foo,(/3,3/),pad=(/'a'/))) /= 9 .or. &
- any(reshape(foo,(/3,3/),pad=(/'a'/)) /= 'a')) call abort
+ any(reshape(foo,(/3,3/),pad=(/'a'/)) /= 'a')) STOP 40
if (size(reshape(foo,(/3,3,3/),pad=(/'a'/))) /= 27 .or. &
- any(reshape(foo,(/3,3,3/),pad=(/'a'/)) /= 'a')) call abort
+ any(reshape(foo,(/3,3,3/),pad=(/'a'/)) /= 'a')) STOP 41
if (size(reshape(foo,(/3,3,3,3,3,3,3/),pad=(/'a'/))) /= 2187 .or. &
- any(reshape(foo,(/3,3,3,3,3,3,3/),pad=(/'a'/)) /= 'a')) call abort
+ any(reshape(foo,(/3,3,3,3,3,3,3/),pad=(/'a'/)) /= 'a')) STOP 42
if (size(reshape(bar,(/3,3/),pad=(/'a'/))) /= 9 .or. &
- any(reshape(bar,(/3,3/),pad=(/'a'/)) /= 'a')) call abort
+ any(reshape(bar,(/3,3/),pad=(/'a'/)) /= 'a')) STOP 43
if (size(reshape(bar,(/3,3,3/),pad=(/'a'/))) /= 27 .or. &
- any(reshape(bar,(/3,3,3/),pad=(/'a'/)) /= 'a')) call abort
+ any(reshape(bar,(/3,3,3/),pad=(/'a'/)) /= 'a')) STOP 44
if (size(reshape(bar,(/3,3,3,3,3,3,3/),pad=(/'a'/))) /= 2187 .or. &
- any(reshape(bar,(/3,3,3,3,3,3,3/),pad=(/'a'/)) /= 'a')) call abort
+ any(reshape(bar,(/3,3,3,3,3,3,3/),pad=(/'a'/)) /= 'a')) STOP 45
if (size(reshape(tempm(-7:-8,:),(/3,3/),pad=(/7/))) /= 9 .or. &
- any(reshape(tempm(-7:-8,:),(/3,3/),pad=(/7/)) /= 7)) call abort
+ any(reshape(tempm(-7:-8,:),(/3,3/),pad=(/7/)) /= 7)) STOP 46
if (size(reshape(tempm(-7:-8,:),(/3,3,3/),pad=(/7/))) /= 27 .or. &
- any(reshape(tempm(-7:-8,:),(/3,3,3/),pad=(/7/)) /= 7)) call abort
+ any(reshape(tempm(-7:-8,:),(/3,3,3/),pad=(/7/)) /= 7)) STOP 47
if (size(reshape(tempm(-7:-8,:),(/3,3,3,3,3,3,3/),pad=(/7/))) /= 2187 .or. &
- any(reshape(tempm(-7:-8,:),(/3,3,3,3,3,3,3/),pad=(/7/)) /= 7)) call abort
+ any(reshape(tempm(-7:-8,:),(/3,3,3,3,3,3,3/),pad=(/7/)) /= 7)) STOP 48
if (size(reshape(x,(/3,3/),pad=(/7/))) /= 9 .or. &
- any(reshape(x,(/3,3/),pad=(/7/)) /= 7)) call abort
+ any(reshape(x,(/3,3/),pad=(/7/)) /= 7)) STOP 49
if (size(reshape(x,(/3,3,3/),pad=(/7/))) /= 27 .or. &
- any(reshape(x,(/3,3,3/),pad=(/7/)) /= 7)) call abort
+ any(reshape(x,(/3,3,3/),pad=(/7/)) /= 7)) STOP 50
if (size(reshape(x,(/3,3,3,3,3,3,3/),pad=(/7/))) /= 2187 .or. &
- any(reshape(x,(/3,3,3,3,3,3,3/),pad=(/7/)) /= 7)) call abort
+ any(reshape(x,(/3,3,3,3,3,3,3/),pad=(/7/)) /= 7)) STOP 51
if (size(reshape(y,(/3,3/),pad=(/7/))) /= 9 .or. &
- any(reshape(y,(/3,3/),pad=(/7/)) /= 7)) call abort
+ any(reshape(y,(/3,3/),pad=(/7/)) /= 7)) STOP 52
if (size(reshape(y,(/3,3,3/),pad=(/7/))) /= 27 .or. &
- any(reshape(y,(/3,3,3/),pad=(/7/)) /= 7)) call abort
+ any(reshape(y,(/3,3,3/),pad=(/7/)) /= 7)) STOP 53
if (size(reshape(y,(/3,3,3,3,3,3,3/),pad=(/7/))) /= 2187 .or. &
- any(reshape(y,(/3,3,3,3,3,3,3/),pad=(/7/)) /= 7)) call abort
+ any(reshape(y,(/3,3,3,3,3,3,3/),pad=(/7/)) /= 7)) STOP 54
deallocate(foo,bar,x,y)
end
@@ -125,22 +125,22 @@ subroutine test_pack
integer,allocatable :: foo(:,:)
tempn = 2
allocate(foo(0,1:7))
- if (size(pack(foo,foo/=0)) /= 0 .or. any(pack(foo,foo/=0) /= -42)) call abort
+ if (size(pack(foo,foo/=0)) /= 0 .or. any(pack(foo,foo/=0) /= -42)) STOP 55
if (size(pack(foo,foo/=0,(/1,3,4,5,1,0,7,9/))) /= 8 .or. &
- sum(pack(foo,foo/=0,(/1,3,4,5,1,0,7,9/))) /= 30) call abort
+ sum(pack(foo,foo/=0,(/1,3,4,5,1,0,7,9/))) /= 30) STOP 56
if (size(pack(tempn(:,-4:-5),tempn(:,-4:-5)/=0)) /= 0 .or. &
- any(pack(tempn(:,-4:-5),tempn(:,-4:-5)/=0) /= -42)) call abort
+ any(pack(tempn(:,-4:-5),tempn(:,-4:-5)/=0) /= -42)) STOP 57
if (size(pack(tempn(:,-4:-5),tempn(:,-4:-5)/=0,(/1,3,4,5,1,0,7,9/))) /= 8 .or. &
sum(pack(tempn(:,-4:-5),tempn(:,-4:-5)/=0,(/1,3,4,5,1,0,7,9/))) /= 30) &
- call abort
+ STOP 58
if (size(pack(foo,.true.)) /= 0 .or. any(pack(foo,.true.) /= -42)) &
- call abort
+ STOP 59
if (size(pack(foo,.true.,(/1,3,4,5,1,0,7,9/))) /= 8 .or. &
- sum(pack(foo,.true.,(/1,3,4,5,1,0,7,9/))) /= 30) call abort
+ sum(pack(foo,.true.,(/1,3,4,5,1,0,7,9/))) /= 30) STOP 60
if (size(pack(tempn(:,-4:-5),.true.)) /= 0 .or. &
- any(pack(foo,.true.) /= -42)) call abort
+ any(pack(foo,.true.) /= -42)) STOP 61
if (size(pack(tempn(:,-4:-5),.true.,(/1,3,4,5,1,0,7,9/))) /= 8 .or. &
- sum(pack(tempn(:,-4:-5),.true.,(/1,3,4,5,1,0,7,9/))) /= 30) call abort
+ sum(pack(tempn(:,-4:-5),.true.,(/1,3,4,5,1,0,7,9/))) /= 30) STOP 62
deallocate(foo)
end
@@ -153,12 +153,12 @@ subroutine test_unpack
zero = 0
allocate(foo(0,1:7),bar(0:-1))
if (any(unpack(tempv,tempv/=0,tempv) /= 5) .or. &
- size(unpack(tempv,tempv/=0,tempv)) /= 5) call abort
+ size(unpack(tempv,tempv/=0,tempv)) /= 5) STOP 63
if (any(unpack(tempv(1:0),tempv/=0,tempv) /= 5) .or. &
- size(unpack(tempv(1:0),tempv/=0,tempv)) /= 5) call abort
- if (any(unpack(tempv,tempv(1:zero)/=0,tempv) /= -47)) call abort
- if (any(unpack(tempv(5:4),tempv(1:zero)/=0,tempv) /= -47)) call abort
- if (any(unpack(bar,foo==foo,foo) /= -47)) call abort
+ size(unpack(tempv(1:0),tempv/=0,tempv)) /= 5) STOP 64
+ if (any(unpack(tempv,tempv(1:zero)/=0,tempv) /= -47)) STOP 65
+ if (any(unpack(tempv(5:4),tempv(1:zero)/=0,tempv) /= -47)) STOP 66
+ if (any(unpack(bar,foo==foo,foo) /= -47)) STOP 67
deallocate(foo,bar)
end
@@ -168,11 +168,11 @@ subroutine test_spread
tempn = 2.0
allocate(foo(0))
if (any(spread(1,dim=1,ncopies=0) /= -17.0) .or. &
- size(spread(1,dim=1,ncopies=0)) /= 0) call abort
+ size(spread(1,dim=1,ncopies=0)) /= 0) STOP 68
if (any(spread(foo,dim=1,ncopies=1) /= -17.0) .or. &
- size(spread(foo,dim=1,ncopies=1)) /= 0) call abort
+ size(spread(foo,dim=1,ncopies=1)) /= 0) STOP 69
if (any(spread(tempn(2:1),dim=1,ncopies=1) /= -17.0) .or. &
- size(spread(tempn(2:1),dim=1,ncopies=1)) /= 0) call abort
+ size(spread(tempn(2:1),dim=1,ncopies=1)) /= 0) STOP 70
deallocate(foo)
end
diff --git a/gcc/testsuite/gfortran.dg/zero_sized_3.f90 b/gcc/testsuite/gfortran.dg/zero_sized_3.f90
index e4e1c06d2c0..a8109b8b3d0 100644
--- a/gcc/testsuite/gfortran.dg/zero_sized_3.f90
+++ b/gcc/testsuite/gfortran.dg/zero_sized_3.f90
@@ -13,7 +13,7 @@
mask(:) = (mm == 0)
j = count (mask)
print *, pack (mm, mask)
- if (size (pack (mm, mask)) /= j) call abort
+ if (size (pack (mm, mask)) /= j) STOP 1
deallocate (mm, mask)
end do
end do
diff --git a/gcc/testsuite/gfortran.fortran-torture/compile/nested.f90 b/gcc/testsuite/gfortran.fortran-torture/compile/nested.f90
index 1059684ddd5..3b609bf3c06 100644
--- a/gcc/testsuite/gfortran.fortran-torture/compile/nested.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/compile/nested.f90
@@ -7,17 +7,17 @@ program intrinsic_pack
a = reshape (val, (/3, 3/))
b = 0
b(1:6:3) = pack (a, a .ne. 0);
- if (any (b(1:6:3) .ne. (/9, 7/))) call abort
+ if (any (b(1:6:3) .ne. (/9, 7/))) STOP 1
b = pack (a(2:3, 2:3), a(2:3, 2:3) .ne. 0, (/1, 2, 3, 4, 5, 6/));
- if (any (b .ne. (/9, 7, 3, 4, 5, 6/))) call abort
+ if (any (b .ne. (/9, 7, 3, 4, 5, 6/))) STOP 2
contains
subroutine tests_with_temp
! A few tests which involve a temporary
- if (any (pack(a, a.ne.0) .ne. (/9, 7/))) call abort
- if (any (pack(a, .true.) .ne. val)) call abort
- if (size(pack (a, .false.)) .ne. 0) call abort
- if (any (pack(a, .false., (/1,2,3/)).ne. (/1,2,3/))) call abort
+ if (any (pack(a, a.ne.0) .ne. (/9, 7/))) STOP 3
+ if (any (pack(a, .true.) .ne. val)) STOP 4
+ if (size(pack (a, .false.)) .ne. 0) STOP 5
+ if (any (pack(a, .false., (/1,2,3/)).ne. (/1,2,3/))) STOP 6
end subroutine tests_with_temp
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/compile/parameter_1.f90 b/gcc/testsuite/gfortran.fortran-torture/compile/parameter_1.f90
index 8921bcddcad..c6d501b7992 100644
--- a/gcc/testsuite/gfortran.fortran-torture/compile/parameter_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/compile/parameter_1.f90
@@ -2,6 +2,6 @@
integer, parameter :: j = huge(j)
integer i
- if (j /= huge(i)) call abort
+ if (j /= huge(i)) STOP 1
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/a_edit_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/a_edit_1.f90
index 55a6f3cdf2c..e80d9276d8a 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/a_edit_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/a_edit_1.f90
@@ -7,11 +7,11 @@
read(C,'(A7)')D
if (D.NE.'DEFG') then
! print*,D
- call abort
+ STOP 1
endif
read(C,'(A)')D
if (D.NE.'ABCD') then
! print*,D
- call abort
+ STOP 2
endif
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/adjustr.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/adjustr.f90
index 8264ba7f811..76a1742984a 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/adjustr.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/adjustr.f90
@@ -39,7 +39,7 @@
print*, 'adjustr(s1) = "', adjustr(s1(i)), '"'
if (adjustr(s1(i)).ne.s2(i)) then
print*,'fail'
- call abort
+ STOP 1
endif
enddo
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/allocate.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/allocate.f90
index 61f717da7bc..acbad303231 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/allocate.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/allocate.f90
@@ -12,11 +12,11 @@ subroutine t1(first)
logical first
if (first) then
- if (allocated (p)) call abort ()
+ if (allocated (p)) STOP 1
else
- if (.not. allocated (p)) call abort ()
+ if (.not. allocated (p)) STOP 2
end if
- if (allocated (q)) call abort ()
+ if (allocated (q)) STOP 3
if (first) then
allocate (p(5))
@@ -33,6 +33,6 @@ subroutine t2()
allocate (r(5))
pr = 1.0
deallocate (r)
- if (allocated(r)) call abort ()
+ if (allocated(r)) STOP 4
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/alternate_return.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/alternate_return.f90
index 5c77844e6da..642cf29a087 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/alternate_return.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/alternate_return.f90
@@ -3,14 +3,14 @@ program alt_return
call myproc (1, *10, 42)
20 continue
- call abort ()
+ STOP 1
10 continue
call myproc(2, *20, 42)
call myproc(3, *20, 42)
contains
subroutine myproc(n, *, i)
integer n, i
- if (i .ne. 42) call abort ()
+ if (i .ne. 42) STOP 2
if (n .eq. 1) return 1
if (n .eq. 2) return
end subroutine
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/args.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/args.f90
index 263c795ed70..994fdd57851 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/args.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/args.f90
@@ -3,7 +3,7 @@ subroutine test (a, b)
integer, intent (IN) :: a
integer, intent (OUT) :: b
- if (a .ne. 42) call abort
+ if (a .ne. 42) STOP 1
b = 43
end subroutine
@@ -15,8 +15,8 @@ program args
i = 42
j = 0
CALL test (i, j)
- if (i .ne. 42) call abort
- if (j .ne. 43) call abort
+ if (i .ne. 42) STOP 2
+ if (j .ne. 43) STOP 3
i = 41
CALL test (i + 1, j)
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/arithmeticif.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/arithmeticif.f90
index d06167e6814..db07237aadf 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/arithmeticif.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/arithmeticif.f90
@@ -19,7 +19,7 @@ program testwrite
integer i
integer testif
- if (testif (-10) .ne. -1) call abort
- if (testif (0) .ne. 0) call abort
- if (testif (10) .ne. 1) call abort
+ if (testif (-10) .ne. -1) STOP 1
+ if (testif (0) .ne. 0) STOP 2
+ if (testif (10) .ne. 1) STOP 3
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/arrayarg.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/arrayarg.f90
index b588d050b69..fa4cbe7d469 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/arrayarg.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/arrayarg.f90
@@ -10,9 +10,9 @@ subroutine f1 (a)
implicit none
integer, dimension (5, 8) :: a
- if (a(1, 1) .ne. 42) call abort
+ if (a(1, 1) .ne. 42) STOP 1
- if (a(5, 8) .ne. 43) call abort
+ if (a(5, 8) .ne. 43) STOP 2
end subroutine
@@ -67,8 +67,8 @@ subroutine test (parm)
v2 (3, 1::2) = v1 (5:1:-1)
v1 = v1 + 1
- if (v1(1) .ne. 2) call abort
- if (v2(3, 3) .ne. 4) call abort
+ if (v1(1) .ne. 2) STOP 3
+ if (v2(3, 3) .ne. 4) STOP 4
! Passing whole arrays
call f1 (a)
@@ -137,9 +137,9 @@ end subroutine
subroutine f2 (a)
integer, dimension (1:, 1:) :: a
- if (a(1, 1) .ne. 42) call abort
+ if (a(1, 1) .ne. 42) STOP 5
- if (a(5, 8) .ne. 43) call abort
+ if (a(5, 8) .ne. 43) STOP 6
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/arrayarg2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/arrayarg2.f90
index 9cb5b613d64..ceff7c6b3b0 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/arrayarg2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/arrayarg2.f90
@@ -7,7 +7,7 @@ program arrayarg2
call test (a, b)
- if (any (b .ne. (/4, 7, 10, 13, 16/))) call abort
+ if (any (b .ne. (/4, 7, 10, 13, 16/))) STOP 1
contains
subroutine test (x1, x2)
implicit none
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/arraysave.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/arraysave.f90
index 94b234bd512..6ea5382a984 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/arraysave.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/arraysave.f90
@@ -16,9 +16,9 @@ subroutine fn (a)
integer, dimension(2) :: b
b = ubound (a)
- if (any (b .ne. (/6, 5/))) call abort
- if (a(1, 1) .ne. 42) call abort
- if (a(6, 5) .ne. 43) call abort
+ if (any (b .ne. (/6, 5/))) STOP 1
+ if (a(1, 1) .ne. 42) STOP 2
+ if (a(6, 5) .ne. 43) STOP 3
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/assumed_size.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/assumed_size.f90
index b2c4657c647..ec50de00439 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/assumed_size.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/assumed_size.f90
@@ -3,7 +3,7 @@ subroutine test2(p)
integer, dimension(2, *) :: p
if (any (p(:, 1:3) .ne. reshape((/1, 2, 4, 5, 7, 8/), (/2, 3/)))) &
- call abort ()
+ STOP 1
end subroutine
program assumed_size
@@ -13,16 +13,16 @@ program assumed_size
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
call test1(a, (/1, 2, 3, 4, 5, 6/))
- if (a(1,1) .ne. 0) call abort
+ if (a(1,1) .ne. 0) STOP 1
a(1, 1) = 1
call test1(a(1:2, :), (/1, 2, 4, 5, 7, 8/))
- if (a(1,1) .ne. 0) call abort
+ if (a(1,1) .ne. 0) STOP 2
a(1, 1) = 1
call test1(a(3:1:-1, :), (/3, 2, 1, 6, 5, 4/))
- if (a(3,1) .ne. 0) call abort
+ if (a(3,1) .ne. 0) STOP 3
a(3, 1) = 3
call test1(a(:, 2:3), (/4, 5, 6, 7, 8, 9/))
- if (a(1, 2) .ne. 0) call abort
+ if (a(1, 2) .ne. 0) STOP 4
a(1, 2) = 4
call test2(a(1:2, :))
@@ -32,7 +32,7 @@ subroutine test1(p, q)
integer, dimension(*) :: p
integer, dimension(1:) :: q
- if (any (p(1:size(q)) .ne. q)) call abort ()
+ if (any (p(1:size(q)) .ne. q)) STOP 2
p(1) = 0
end subroutine
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/backspace.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/backspace.f90
index 8781fb2c996..e832b628854 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/backspace.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/backspace.f90
@@ -9,6 +9,6 @@
read(10,*)C
backspace(10)
read(10,*) C
- if (C.ne.'a') call abort
+ if (C.ne.'a') STOP 1
close(10,STATUS='DELETE')
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/bounds.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/bounds.f90
index 894cd5d56b2..fb4e8c9c585 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/bounds.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/bounds.f90
@@ -6,24 +6,24 @@ program testbounds
integer i
! Check compile time simplification
- if (lbound(j,1).ne.1 .or. ubound(j,1).ne.5) call abort ()
+ if (lbound(j,1).ne.1 .or. ubound(j,1).ne.5) STOP 1
allocate (a(3:8, 6:7))
! With one parameter
j = 0;
j(3:4) = ubound(a)
- if (j(3) .ne. 8) call abort
- if (j(4) .ne. 7) call abort
+ if (j(3) .ne. 8) STOP 1
+ if (j(4) .ne. 7) STOP 2
! With two parameters, assigning to an array
j = lbound(a, 1)
- if ((j(1) .ne. 3) .or. (j(5) .ne. 3)) call abort
+ if ((j(1) .ne. 3) .or. (j(5) .ne. 3)) STOP 3
! With a variable second parameter
i = 2
i = lbound(a, i)
- if (i .ne. 6) call abort
+ if (i .ne. 6) STOP 4
call test(a)
contains
@@ -32,7 +32,7 @@ subroutine test (a)
integer i
i = 2
- if ((ubound(a, 1) .ne. 6) .or. (ubound(a, i) .ne. 2)) call abort
+ if ((ubound(a, 1) .ne. 6) .or. (ubound(a, i) .ne. 2)) STOP 5
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/character_passing.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/character_passing.f90
index af06a84e471..896a9bc8c77 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/character_passing.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/character_passing.f90
@@ -9,7 +9,7 @@
b='B'
x = LSAME(a1,a2)
if ( .not. x ) then
- call abort ();
+ STOP 1;
endif
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/character_select_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/character_select_1.f90
index c42cea4fc21..46af8a12968 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/character_select_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/character_select_1.f90
@@ -2,11 +2,11 @@ CHARACTER(LEN=6) :: C = "STEVEN"
SELECT CASE (C)
CASE ("AAA":"EEE")
- CALL abort
+ STOP 1
CASE ("R":"T")
CONTINUE
CASE DEFAULT
- CALL abort
+ STOP 2
END SELECT
END
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/cmplx.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/cmplx.f90
index edec983d39e..d3b70c830cd 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/cmplx.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/cmplx.f90
@@ -10,39 +10,39 @@ program testcmplx
x = 3
y = 4
c = cmplx(x,y)
- if (c .ne. (3.0, 4.0)) call abort
+ if (c .ne. (3.0, 4.0)) STOP 1
x = 4
y = 3
z = cmplx(x, y, 8)
- if (z .ne. (4.0, 3.0)) call abort
+ if (z .ne. (4.0, 3.0)) STOP 2
z = c
- if (z .ne. (3.0, 4.0)) call abort
+ if (z .ne. (3.0, 4.0)) STOP 3
! dcmplx intrinsic
x = 3
y = 4
z = dcmplx (x, y)
- if (z .ne. (3.0, 4.0)) call abort
+ if (z .ne. (3.0, 4.0)) STOP 4
! conjucates and aimag
c = (1.0, 2.0)
c = conjg (c)
x = aimag (c)
- if (abs (c - (1.0, -2.0)) .gt. 0.001) call abort
- if (x .ne. -2.0) call abort
+ if (abs (c - (1.0, -2.0)) .gt. 0.001) STOP 5
+ if (x .ne. -2.0) STOP 6
z = (2.0, 1.0)
z = conjg (z)
q = aimag (z)
- if (z .ne. (2.0, -1.0)) call abort
- if (q .ne. -1.0) call abort
+ if (z .ne. (2.0, -1.0)) STOP 7
+ if (q .ne. -1.0) STOP 8
! addition, subtraction and multiplication
c = (1, 3)
d = (5, 2)
- if (c + d .ne. ( 6, 5)) call abort
- if (c - d .ne. (-4, 1)) call abort
- if (c * d .ne. (-1, 17)) call abort
+ if (c + d .ne. ( 6, 5)) STOP 9
+ if (c - d .ne. (-4, 1)) STOP 10
+ if (c * d .ne. (-1, 17)) STOP 11
! test for constant folding
- if ((35.,-10.)**0.NE.(1.,0.)) call abort
+ if ((35.,-10.)**0.NE.(1.,0.)) STOP 12
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/common.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/common.f90
index 2ea1788eb54..0533cff76d9 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/common.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/common.f90
@@ -18,15 +18,15 @@ subroutine common_pass
real (kind=8) b(5), c(5)
common /com1/b,c
equivalence (a(1), b(2))
- if (any (a .ne. (/100,100,100,100,200,200,200,200/))) call abort
+ if (any (a .ne. (/100,100,100,100,200,200,200,200/))) STOP 1
end subroutine
! Common variables as argument
subroutine common_par (a, b, c)
real (kind=8) a(8), b(5), c(5)
- if (any (a .ne. (/100,100,100,100,200,200,200,200/))) call abort
- if (any (b .ne. (/100,100,100,100,100/))) call abort
- if (any (c .ne. (/200,200,200,200,200/))) call abort
+ if (any (a .ne. (/100,100,100,100,200,200,200,200/))) STOP 2
+ if (any (b .ne. (/100,100,100,100,100/))) STOP 3
+ if (any (c .ne. (/200,200,200,200,200/))) STOP 4
end subroutine
! Global equivalence
@@ -39,8 +39,8 @@ subroutine global_equiv
c = 200
y = 300
z = 400
- if (any (a .ne. (/100,100,100,100,200,200,200,200/))) call abort
- if (any (x .ne. (/200,200,200,300,300,300,300,400/))) call abort
+ if (any (a .ne. (/100,100,100,100,200,200,200,200/))) STOP 5
+ if (any (x .ne. (/200,200,200,300,300,300,300,400/))) STOP 6
end
! Local equivalence
@@ -49,5 +49,5 @@ subroutine local_equiv
equivalence (a(1), b(3))
b(1:5) = 100
b(6:10) = 200
- if (any (a .ne. (/100,100,100,200,200,200,200,200/))) call abort
+ if (any (a .ne. (/100,100,100,200,200,200,200,200/))) STOP 7
end subroutine
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/common_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/common_2.f90
index 8bcdbb87a4f..9a3bee8ff35 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/common_2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/common_2.f90
@@ -13,8 +13,8 @@ INTEGER :: J
COMMON /X/J
j = 1
i = 2
-if (j.ne.i) call abort()
-if (j.ne.2) call abort()
+if (j.ne.i) STOP 1
+if (j.ne.2) STOP 2
call set_i()
-if (j.ne.5) call abort()
+if (j.ne.5) STOP 3
END
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/common_init_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/common_init_1.f90
index 9e5aec0f726..5b7cc638d15 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/common_init_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/common_init_1.f90
@@ -6,8 +6,8 @@ subroutine test()
common /block2/ c
common /block/ d, e, f
- if ((d .ne. 42) .or. (e .ne. 43) .or. (f .ne. 2.0)) call abort ()
- if (c .ne. "Hello World ") call abort ()
+ if ((d .ne. 42) .or. (e .ne. 43) .or. (f .ne. 2.0)) STOP 1
+ if (c .ne. "Hello World ") STOP 2
end subroutine
program prog
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/common_size.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/common_size.f90
index 936c41e3282..51adc6a693e 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/common_size.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/common_size.f90
@@ -6,5 +6,5 @@ program common_size
equivalence (a(1), b(2))
b = 100
c = 200
- if ((a (4) .ne. 100) .or. (a(5) .ne. 200)) call abort
+ if ((a (4) .ne. 100) .or. (a(5) .ne. 200)) STOP 1
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/constructor.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/constructor.f90
index 96cb89d721c..5f04de668c4 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/constructor.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/constructor.f90
@@ -6,13 +6,13 @@ program constructors
a = (/1, (i,i=2,4)/)
do i = 1, 4
- if (a(i) .ne. i) call abort
+ if (a(i) .ne. i) STOP 1
end do
b = reshape ((/0, 1, 2, 3, 4, 5/), (/3, 2/)) + 1
do i=1,3
- if (b(i, 1) .ne. i) call abort
- if (b(i, 2) .ne. i + 3) call abort
+ if (b(i, 1) .ne. i) STOP 2
+ if (b(i, 2) .ne. i + 3) STOP 3
end do
k = 1
@@ -21,9 +21,9 @@ program constructors
n = 4
! The remainder assumes constant constructors work ok.
a = (/n, m, l, k/)
- if (any (a .ne. (/4, 3, 2, 1/))) call abort
+ if (any (a .ne. (/4, 3, 2, 1/))) STOP 4
a = (/((/i+10, 42/), i = k, l)/)
- if (any (a .ne. (/11, 42, 12, 42/))) call abort
+ if (any (a .ne. (/11, 42, 12, 42/))) STOP 5
a = (/(I, I=k,l) , (J, J=m,n)/)
- if (any (a .ne. (/1, 2, 3, 4/))) call abort
+ if (any (a .ne. (/1, 2, 3, 4/))) STOP 6
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/contained.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/contained.f90
index 3c7117744dd..c6e66e88e99 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/contained.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/contained.f90
@@ -4,13 +4,13 @@ program contained
i = 0;
call testproc (40)
- if (i .ne. 42) call abort
+ if (i .ne. 42) STOP 1
contains
subroutine testproc (p)
implicit none
integer p
- if (p .ne. 40) call abort
+ if (p .ne. 40) STOP 2
i = p + 2
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/contained2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/contained2.f90
index cae94b704e1..c0793fb5b01 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/contained2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/contained2.f90
@@ -4,9 +4,9 @@ program contained2
integer var1
var1 = 42
- if (f1() .ne. 1) call abort
+ if (f1() .ne. 1) STOP 1
call f2()
- if (var1 .ne. 42) call abort
+ if (var1 .ne. 42) STOP 2
contains
function f1 ()
@@ -22,7 +22,7 @@ end function
subroutine f2()
implicit none
- if (f1() .ne. 1) call abort
+ if (f1() .ne. 1) STOP 3
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/contained_3.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/contained_3.f90
index d0de1f44913..7b6d817ae17 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/contained_3.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/contained_3.f90
@@ -5,7 +5,7 @@ program contained_3
call test
contains
subroutine test
- if (sub(3) .ne. 6) call abort
+ if (sub(3) .ne. 6) STOP 1
end subroutine
integer function sub(i)
integer i
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/csqrt_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/csqrt_1.f90
index 680449f3ede..d23112e1151 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/csqrt_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/csqrt_1.f90
@@ -6,7 +6,7 @@
common /flags/ fail
fail = .false.
call square_root
- if (fail) call abort
+ if (fail) STOP 1
end
subroutine square_root
intrinsic sqrt, dsqrt, csqrt
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/data.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/data.f90
index d2d86a2d71c..c00673a6fe5 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/data.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/data.f90
@@ -25,37 +25,37 @@
! array element reference
data tmp2(2)%t1(2)%a(3), tmp2(2)%t1(2)%a(1)/223,221/
- if (any(tmp2(1)%t1(1)%a .ne. (/111,0,113,0/))) call abort
- if (tmp2(1)%t1(1)%r .ne. 0.0) call abort
- if (tmp2(1)%b .ne. 10) call abort
+ if (any(tmp2(1)%t1(1)%a .ne. (/111,0,113,0/))) STOP 1
+ if (tmp2(1)%t1(1)%r .ne. 0.0) STOP 2
+ if (tmp2(1)%b .ne. 10) STOP 3
- if (any(tmp2(1)%t1(2)%a .ne. (/121,122,123,124/))) call abort
- if (tmp2(1)%t1(2)%r .ne. 0.0) call abort
- if (tmp2(1)%b .ne. 10) call abort
+ if (any(tmp2(1)%t1(2)%a .ne. (/121,122,123,124/))) STOP 4
+ if (tmp2(1)%t1(2)%r .ne. 0.0) STOP 5
+ if (tmp2(1)%b .ne. 10) STOP 6
- if (any(tmp2(1)%t1(3)%a .ne. (/136,137,138,139/))) call abort
- if (tmp2(1)%t1(3)%r .ne. 0.0) call abort
- if (tmp2(1)%b .ne. 10) call abort
+ if (any(tmp2(1)%t1(3)%a .ne. (/136,137,138,139/))) STOP 7
+ if (tmp2(1)%t1(3)%r .ne. 0.0) STOP 8
+ if (tmp2(1)%b .ne. 10) STOP 9
- if (any(tmp2(1)%t1(4)%a .ne. (/141,142,143,144/))) call abort
- if (tmp2(1)%t1(4)%r .ne. 0.0) call abort
- if (tmp2(1)%b .ne. 10) call abort
+ if (any(tmp2(1)%t1(4)%a .ne. (/141,142,143,144/))) STOP 10
+ if (tmp2(1)%t1(4)%r .ne. 0.0) STOP 11
+ if (tmp2(1)%b .ne. 10) STOP 12
- if (any(tmp2(2)%t1(1)%a .ne. (/0,0,0,0/))) call abort
- if (tmp2(2)%t1(1)%r .ne. 0.0) call abort
- if (tmp2(2)%b .ne. 0) call abort
+ if (any(tmp2(2)%t1(1)%a .ne. (/0,0,0,0/))) STOP 13
+ if (tmp2(2)%t1(1)%r .ne. 0.0) STOP 14
+ if (tmp2(2)%b .ne. 0) STOP 15
- if (any(tmp2(2)%t1(2)%a .ne. (/221,0,223,0/))) call abort
- if (tmp2(2)%t1(2)%r .ne. 220.0) call abort
- if (tmp2(2)%b .ne. 0) call abort
+ if (any(tmp2(2)%t1(2)%a .ne. (/221,0,223,0/))) STOP 16
+ if (tmp2(2)%t1(2)%r .ne. 220.0) STOP 17
+ if (tmp2(2)%b .ne. 0) STOP 18
- if (any(tmp2(2)%t1(3)%a .ne. (/5,5,233,234/))) call abort
- if (tmp2(2)%t1(3)%r .ne. 0.0) call abort
- if (tmp2(2)%b .ne. 0) call abort
+ if (any(tmp2(2)%t1(3)%a .ne. (/5,5,233,234/))) STOP 19
+ if (tmp2(2)%t1(3)%r .ne. 0.0) STOP 20
+ if (tmp2(2)%b .ne. 0) STOP 21
- if (any(tmp2(2)%t1(4)%a .ne. (/241,242,5,5/))) call abort
- if (tmp2(2)%t1(4)%r .ne. 0.0) call abort
- if (tmp2(2)%b .ne. 0) call abort
+ if (any(tmp2(2)%t1(4)%a .ne. (/241,242,5,5/))) STOP 22
+ if (tmp2(2)%t1(4)%r .ne. 0.0) STOP 23
+ if (tmp2(2)%b .ne. 0) STOP 24
end
subroutine sub2()
@@ -64,9 +64,9 @@
real r,t
data i,j,r,k,t,b(5),b(2),((a(i,j),i=1,4,1),j=4,1,-1)/1,2,3,4,5,5,2,&
1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16/
- if ((i.ne.1) .and. (j.ne.2).and.(k.ne.4)) call abort
- if ((r.ne.3.0).and.(t.ne.5.0)) call abort
- if (any(b.ne.(/0,2,0,0,5,0,0,0,0,0/))) call abort
- if (any(a.ne.reshape((/13,14,15,16,9,10,11,12,5,6,7,8,1,2,3,4/),(/4,4/)))) call abort
+ if ((i.ne.1) .and. (j.ne.2).and.(k.ne.4)) STOP 25
+ if ((r.ne.3.0).and.(t.ne.5.0)) STOP 26
+ if (any(b.ne.(/0,2,0,0,5,0,0,0,0,0/))) STOP 27
+ if (any(a.ne.reshape((/13,14,15,16,9,10,11,12,5,6,7,8,1,2,3,4/),(/4,4/)))) STOP 28
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/data_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/data_2.f90
index 0aa44f6052a..2c352f0fd18 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/data_2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/data_2.f90
@@ -10,8 +10,8 @@ program data_2
data a(:), b%i /1, 2, 3, 4, 5, 6/
data c(1, :), c(2, :) /7, 8, 9, 10/
- if (any (a .ne. (/1, 2, 3/))) call abort ()
- if (any (b%i .ne. (/4, 5, 6/))) call abort ()
+ if (any (a .ne. (/1, 2, 3/))) STOP 1
+ if (any (b%i .ne. (/4, 5, 6/))) STOP 2
if ((any (c(1, :) .ne. (/7, 8/))) &
- .or. (any (c(2,:) .ne. (/9, 10/)))) call abort ()
+ .or. (any (c(2,:) .ne. (/9, 10/)))) STOP 3
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/data_3.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/data_3.f90
index bdeaaa87109..1f34f6c3656 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/data_3.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/data_3.f90
@@ -11,9 +11,9 @@ DATA b(2:6), c /'AAA', '12345'/
DATA d /2*'1234'/
DATA e(4:4), e(1:3) /'45', '123A'/
-IF (a.NE.'aab ') CALL abort()
-IF (b.NE.' AAA ') CALL abort()
-IF (c.NE.'12') CALL abort()
-IF (d(1).NE.d(2) .OR. d(1).NE.'1234') CALL abort()
-IF (e.NE.'1234') CALL abort()
+IF (a.NE.'aab ') STOP 1
+IF (b.NE.' AAA ') STOP 2
+IF (c.NE.'12') STOP 3
+IF (d(1).NE.d(2) .OR. d(1).NE.'1234') STOP 4
+IF (e.NE.'1234') STOP 5
END
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/data_4.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/data_4.f90
index 4b5c10e6a8b..c05fc81f38c 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/data_4.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/data_4.f90
@@ -2,5 +2,5 @@
DATA A /'A',"A",'A'/
DATA B /3*'A'/
DATA C /'A', 2*'A'/
- IF (ANY(A.NE.B).OR.ANY(A.NE.C)) CALL ABORT
+ IF (ANY(A.NE.B).OR.ANY(A.NE.C)) STOP 1
END
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/dep_fails.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/dep_fails.f90
index c8eec5c73ac..daa9af4e32b 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/dep_fails.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/dep_fails.f90
@@ -42,7 +42,7 @@ Program Strange
Current = Perm(Current(1), Current(2))%Next
End Do
- if (any(results .ne. reshape ((/2,2,1,2,2,1,1,1/), (/2, 4/)))) call abort
+ if (any(results .ne. reshape ((/2,2,1,2,2,1,1,1/), (/2, 4/)))) STOP 1
! 100 Format( 2I3, '--->', 2I3)
DeAllocate (Perm)
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/der_init.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/der_init.f90
index 72531f9acf6..483cf41d3c5 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/der_init.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/der_init.f90
@@ -15,18 +15,18 @@ program der_init
type (t), dimension(2) :: var3
type (t), dimension(2) :: var4 = (/t(7, 9), t(8, 6)/)
- if (var%i .ne. 1 .or. var%j .ne. 2) call abort
- if (var2%j .ne. 4) call abort
+ if (var%i .ne. 1 .or. var%j .ne. 2) STOP 1
+ if (var2%j .ne. 4) STOP 2
var2 = t(6, 5)
- if (var2%i .ne. 6 .or. var2%j .ne. 5) call abort
+ if (var2%i .ne. 6 .or. var2%j .ne. 5) STOP 3
- if ((var3(1)%j .ne. 4) .or. (var3(2)%j .ne. 4)) call abort
+ if ((var3(1)%j .ne. 4) .or. (var3(2)%j .ne. 4)) STOP 4
if ((var4(1)%i .ne. 7) .or. (var4(2)%i .ne. 8) &
- .or. (var4(1)%j .ne. 9) .or. (var4(2)%j .ne. 6)) call abort
+ .or. (var4(1)%j .ne. 9) .or. (var4(2)%j .ne. 6)) STOP 5
! Non-constant constructor
n = 1
m = 5
var2 = t(n, n + m)
- if (var2%i .ne. 1 .or. var2%j .ne. 6) call abort
+ if (var2%i .ne. 1 .or. var2%j .ne. 6) STOP 6
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/der_init_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/der_init_2.f90
index d0448a55b67..cd6fc505bc1 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/der_init_2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/der_init_2.f90
@@ -10,6 +10,6 @@ program der_init_2
type (foo) :: v
- if ((v%b .ne. 123) .or. any (v%a .ne. 42)) call abort ();
+ if ((v%b .ne. 123) .or. any (v%a .ne. 42)) STOP 1;
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/der_init_3.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/der_init_3.f90
index 21b79092f74..94e0a5eb404 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/der_init_3.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/der_init_3.f90
@@ -7,6 +7,6 @@ program main
type (xyz) :: a !! ok
type (xyz) b !!! not initialized !!!
- if (a%x.ne.123) call abort
- if (b%x.ne.123) call abort
+ if (a%x.ne.123) STOP 1
+ if (b%x.ne.123) STOP 2
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/der_init_4.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/der_init_4.f90
index 644ef65e1ab..d6942a2d08f 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/der_init_4.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/der_init_4.f90
@@ -10,6 +10,6 @@ contains
subroutine foo(a)
type (t), intent(in) :: a
- if (a%i .ne. 5) call abort
+ if (a%i .ne. 5) STOP 1
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/der_init_5.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/der_init_5.f90
index c81d9260e55..7953ab6de25 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/der_init_5.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/der_init_5.f90
@@ -9,8 +9,8 @@ program der_init_5
integer, pointer, dimension(:) :: d => NULL()
end type t
type (t) :: p
- if (associated(p%a)) call abort()
- if (associated(p%b)) call abort()
-! if (associated(p%c)) call abort()
- if (associated(p%d)) call abort()
+ if (associated(p%a)) STOP 1
+ if (associated(p%b)) STOP 2
+! if (associated(p%c)) STOP 3
+ if (associated(p%d)) STOP 4
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/der_io.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/der_io.f90
index b1b421bc678..2e788cd17fb 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/der_io.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/der_io.f90
@@ -39,14 +39,14 @@ program derived_io
write (buf1, *), xyz(1)%x, xyz(1)%y, xyz(1)%z
! Use function call to ensure it is only evaluated once
write (buf2, *), xyz(bar())
- if (buf1.ne.buf2) call abort
+ if (buf1.ne.buf2) STOP 1
write (buf1, *), abcdef
write (buf2, *), abcdef%a, abcdef%b, abcdef%c, abcdef%d, abcdef%e, abcdef%f
write (buf3, *), abcdef%a, abcdef%b, abcdef%c%x, abcdef%c%y, &
abcdef%c%z, abcdef%d, abcdef%e, abcdef%f
- if (buf1.ne.buf2) call abort
- if (buf1.ne.buf3) call abort
+ if (buf1.ne.buf2) STOP 2
+ if (buf1.ne.buf3) STOP 3
call foo(xyz(1))
@@ -56,7 +56,7 @@ program derived_io
type (xyz_type) t
write (buf1, *), t%x, t%y, t%z
write (buf2, *), t
- if (buf1.ne.buf2) call abort
+ if (buf1.ne.buf2) STOP 4
end subroutine foo
integer function bar()
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/der_point.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/der_point.f90
index 1dcb07c2108..a96297dd448 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/der_point.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/der_point.f90
@@ -34,12 +34,12 @@ program nest_derived
e1%rp%value = 44
e1%rp%rp%value = 55
- if (r1%r1p%value .ne. 22) call abort
- if (r2%r2p%value .ne. 11) call abort
- if (e1%value .ne. 33) call abort
- if (e2%value .ne. 44) call abort
- if (e3%value .ne. 55) call abort
- if (r1%value .ne. 11) call abort
- if (r2%value .ne. 22) call abort
+ if (r1%r1p%value .ne. 22) STOP 1
+ if (r2%r2p%value .ne. 11) STOP 2
+ if (e1%value .ne. 33) STOP 3
+ if (e2%value .ne. 44) STOP 4
+ if (e3%value .ne. 55) STOP 5
+ if (r1%value .ne. 11) STOP 6
+ if (r2%value .ne. 22) STOP 7
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/der_type.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/der_type.f90
index 6a2716407bf..76112c9036c 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/der_type.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/der_type.f90
@@ -22,24 +22,24 @@ program der_type
type (init_type) :: is_init = init_type (10, 11)
integer i;
- if ((def_init%i .ne. 13) .or. (def_init%j .ne. 14)) call abort
- if ((is_init%i .ne. 10) .or. (is_init%j .ne. 11)) call abort
+ if ((def_init%i .ne. 13) .or. (def_init%j .ne. 14)) STOP 1
+ if ((is_init%i .ne. 10) .or. (is_init%j .ne. 11)) STOP 2
! Passing a component as a parameter tests getting the addr of a component
call test_call(def_init%i)
var%c = "Hello World"
- if (var%c .ne. "Hello World") call abort
+ if (var%c .ne. "Hello World") STOP 3
var%r%a(:, :) = 0
var%ca(:, :)%s = 0
var%r%a(1, 1) = 42
var%r%a(4, 5) = 43
var%ca(:, :)%s = var%r%a(:, 1:5:2)
- if (var%ca(1, 1)%s .ne. 42) call abort
- if (var%ca(4, 3)%s .ne. 43) call abort
+ if (var%ca(1, 1)%s .ne. 42) STOP 4
+ if (var%ca(4, 3)%s .ne. 43) STOP 5
contains
subroutine test_call (p)
integer p
- if (p .ne. 13) call abort
+ if (p .ne. 13) STOP 6
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/direct_io.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/direct_io.f90
index deba9a6bfa5..7a9e4130ff0 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/direct_io.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/direct_io.f90
@@ -10,12 +10,12 @@
READ(10,REC=I,ERR=10)J
IF (J.NE.I) THEN
! PRINT*,' READ ',J,' EXPECTED ',I
- CALL ABORT
+ STOP 1
ENDIF
ENDDO
CLOSE(10,STATUS='DELETE')
STOP
10 CONTINUE
! PRINT*,' ERR= RETURN FROM READ OR WRITE'
- CALL ABORT
+ STOP 2
END
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/elemental.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/elemental.f90
index 79a511cdee8..1f9df0da35e 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/elemental.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/elemental.f90
@@ -8,21 +8,21 @@ program test_elemental
a = reshape ((/2, 3, 4, 5, 6, 7, 8, 9/), (/2, 4/))
b = 0
b(2, :) = e_fn (a(1, :), 1)
- if (any (b .ne. reshape ((/0, 1, 0, 3, 0, 5, 0, 7/), (/2, 4/)))) call abort
+ if (any (b .ne. reshape ((/0, 1, 0, 3, 0, 5, 0, 7/), (/2, 4/)))) STOP 1
a = e_fn (a(:, 4:1:-1), 1 + b)
- if (any (a .ne. reshape ((/7, 7, 5, 3, 3, -1, 1, -5/), (/2, 4/)))) call abort
+ if (any (a .ne. reshape ((/7, 7, 5, 3, 3, -1, 1, -5/), (/2, 4/)))) STOP 2
! This tests intrinsic elemental conversion functions.
c = 2 * a(1, 1)
- if (any (c .ne. 14)) call abort
+ if (any (c .ne. 14)) STOP 3
! This triggered bug due to building ss chains in the wrong order.
b = 0;
a = a - e_fn (a, b)
- if (any (a .ne. 0)) call abort
+ if (any (a .ne. 0)) STOP 4
! Check expressions involving constants
a = e_fn (b + 1, 1)
- if (any (a .ne. 0)) call abort
+ if (any (a .ne. 0)) STOP 5
contains
elemental integer(kind=4) function e_fn (p, q)
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/empty_format.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/empty_format.f90
index 242bee8b467..d86407265e3 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/empty_format.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/empty_format.f90
@@ -9,6 +9,6 @@
!
IF (A10VK.NE.'') THEN
! PRINT*,A10VK
- CALL ABORT
+ STOP 1
ENDIF
END
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/emptyif.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/emptyif.f90
index 0c19fa57108..b5b72957b9e 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/emptyif.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/emptyif.f90
@@ -9,12 +9,12 @@ program emptyif
else
i = 2
endif
- if (i .ne. 2) call abort()
+ if (i .ne. 2) STOP 1
if (i .eq. 0) then
elseif (i .eq. 2) then
i = 3
end if
- if (i .ne. 3) call abort()
+ if (i .ne. 3) STOP 2
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/entry_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/entry_1.f90
index bef8a98dfd9..64f18eead1d 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/entry_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/entry_1.f90
@@ -52,23 +52,23 @@
integer f1, e1, f5, e5
real f2, e2, f6, e6, f7, e7, f8, e8, f9, e9
double precision f3, e3, f4, e4, d
- if (f1 (6) .ne. 21) call abort ()
- if (e1 (7) .ne. 49) call abort ()
- if (f2 () .ne. 45) call abort ()
- if (e2 () .ne. 45) call abort ()
- if (f3 () .ne. 47) call abort ()
- if (e3 () .ne. 47) call abort ()
+ if (f1 (6) .ne. 21) STOP 1
+ if (e1 (7) .ne. 49) STOP 2
+ if (f2 () .ne. 45) STOP 3
+ if (e2 () .ne. 45) STOP 4
+ if (f3 () .ne. 47) STOP 5
+ if (e3 () .ne. 47) STOP 6
d = 17
- if (f4 (d) .ne. 32) call abort ()
- if (e4 (d) .ne. 59) call abort ()
- if (f5 () .ne. 45) call abort ()
- if (e5 () .ne. 45) call abort ()
- if (f6 () .ne. 47) call abort ()
- if (e6 () .ne. 47) call abort ()
- if (f7 () .ne. 163) call abort ()
- if (e7 () .ne. 163) call abort ()
- if (f8 () .ne. 115) call abort ()
- if (e8 () .ne. 115) call abort ()
- if (f9 () .ne. 119) call abort ()
- if (e9 () .ne. 119) call abort ()
+ if (f4 (d) .ne. 32) STOP 7
+ if (e4 (d) .ne. 59) STOP 8
+ if (f5 () .ne. 45) STOP 9
+ if (e5 () .ne. 45) STOP 10
+ if (f6 () .ne. 47) STOP 11
+ if (e6 () .ne. 47) STOP 12
+ if (f7 () .ne. 163) STOP 13
+ if (e7 () .ne. 163) STOP 14
+ if (f8 () .ne. 115) STOP 15
+ if (e8 () .ne. 115) STOP 16
+ if (f9 () .ne. 119) STOP 17
+ if (e9 () .ne. 119) STOP 18
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/entry_10.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/entry_10.f90
index 0c21d76e303..289265d96ad 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/entry_10.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/entry_10.f90
@@ -8,6 +8,6 @@
end
program entrytest
- if (foo () .ne. 2) call abort ()
- if (bar () .ne. 3) call abort ()
+ if (foo () .ne. 2) STOP 1
+ if (bar () .ne. 3) STOP 2
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/entry_11.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/entry_11.f90
index 916891fdeb9..fb8267f55b1 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/entry_11.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/entry_11.f90
@@ -9,8 +9,8 @@
end
program entrytest
- if (i (8).ne.8) call abort
- if (i (4).ne.6) call abort
- if (j (0).ne.3) call abort
- if (j (7).ne.7) call abort
+ if (i (8).ne.8) STOP 1
+ if (i (4).ne.6) STOP 2
+ if (j (0).ne.3) STOP 3
+ if (j (7).ne.7) STOP 4
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/entry_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/entry_2.f90
index 5db39db6a9d..238ee8dbae3 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/entry_2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/entry_2.f90
@@ -35,17 +35,17 @@
i = 2
j = 6
ret = f1 (str, i, j)
- if ((i .ne. 2) .or. (j .ne. 6)) call abort ()
- if (ret .ne. 'BCDEF') call abort ()
+ if ((i .ne. 2) .or. (j .ne. 6)) STOP 1
+ if (ret .ne. 'BCDEF') STOP 2
ret = e1 (str, i, j)
- if ((i .ne. 3) .or. (j .ne. 5)) call abort ()
- if (ret .ne. 'CDE') call abort ()
+ if ((i .ne. 3) .or. (j .ne. 5)) STOP 3
+ if (ret .ne. 'CDE') STOP 4
ret = e2 (str, i, j)
- if ((i .ne. 3) .or. (j .ne. 4)) call abort ()
- if (ret .ne. 'CD') call abort ()
- if (f3 () .ne. 'ABCDE') call abort ()
- if (e3 (1) .ne. 'abcde') call abort ()
- if (e4 (1) .ne. 'abcde') call abort ()
- if (e3 (0) .ne. 'UVWXY') call abort ()
- if (e4 (0) .ne. 'UVWXY') call abort ()
+ if ((i .ne. 3) .or. (j .ne. 4)) STOP 5
+ if (ret .ne. 'CD') STOP 6
+ if (f3 () .ne. 'ABCDE') STOP 7
+ if (e3 (1) .ne. 'abcde') STOP 8
+ if (e4 (1) .ne. 'abcde') STOP 9
+ if (e3 (0) .ne. 'UVWXY') STOP 10
+ if (e4 (0) .ne. 'UVWXY') STOP 11
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/entry_3.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/entry_3.f90
index 7174fa878ca..d7cffea5c29 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/entry_3.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/entry_3.f90
@@ -1,16 +1,16 @@
subroutine f1 (n, *, i)
integer n, i
- if (i .ne. 42) call abort ()
+ if (i .ne. 42) STOP 1
entry e1 (n, *)
if (n .eq. 1) return 1
if (n .eq. 2) return
return
entry e2 (n, i, *, *, *)
- if (i .ne. 46) call abort ()
+ if (i .ne. 46) STOP 2
if (n .ge. 4) return
return n
entry e3 (n, i)
- if ((i .ne. 48) .or. (n .ne. 61)) call abort ()
+ if ((i .ne. 48) .or. (n .ne. 61)) STOP 3
end subroutine
program alt_return
@@ -18,22 +18,22 @@
call f1 (1, *10, 42)
20 continue
- call abort ()
+ STOP 4
10 continue
call f1 (2, *20, 42)
call f1 (3, *20, 42)
call e1 (2, *20)
call e1 (1, *30)
- call abort ()
+ STOP 5
30 continue
call e2 (1, 46, *40, *20, *20)
- call abort ()
+ STOP 6
40 continue
call e2 (2, 46, *20, *50, *20)
- call abort ()
+ STOP 7
50 continue
call e2 (3, 46, *20, *20, *60)
- call abort ()
+ STOP 8
60 continue
call e2 (4, 46, *20, *20, *20)
call e3 (61, 48)
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/entry_4.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/entry_4.f90
index f74440c13a7..f775d20dd93 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/entry_4.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/entry_4.f90
@@ -49,16 +49,16 @@
double precision e1, g4
logical e2, e3, f4
complex f2, g3
- if (f1 (6) .ne. 21) call abort ()
- if (e1 (7) .ne. 49) call abort ()
- if (f2 (0) .ne. 45) call abort ()
- if (.not. e2 (45)) call abort ()
- if (e2 (46)) call abort ()
- if (f3 (17) .ne. 32) call abort ()
- if (.not. e3 (42)) call abort ()
- if (e3 (41)) call abort ()
- if (g3 (12) .ne. 23) call abort ()
- if (.not. f4 (-5)) call abort ()
- if (e4 (0) .ne. 16) call abort ()
- if (g4 (2) .ne. 19) call abort ()
+ if (f1 (6) .ne. 21) STOP 1
+ if (e1 (7) .ne. 49) STOP 2
+ if (f2 (0) .ne. 45) STOP 3
+ if (.not. e2 (45)) STOP 4
+ if (e2 (46)) STOP 5
+ if (f3 (17) .ne. 32) STOP 6
+ if (.not. e3 (42)) STOP 7
+ if (e3 (41)) STOP 8
+ if (g3 (12) .ne. 23) STOP 9
+ if (.not. f4 (-5)) STOP 10
+ if (e4 (0) .ne. 16) STOP 11
+ if (g4 (2) .ne. 19) STOP 12
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/entry_5.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/entry_5.f90
index 2fd927f4eb3..a2e318c788e 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/entry_5.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/entry_5.f90
@@ -35,17 +35,17 @@
i = 2
j = 6
ret = f1 (str, i, j)
- if ((i .ne. 2) .or. (j .ne. 6)) call abort ()
- if (ret .ne. 'BCDEF') call abort ()
+ if ((i .ne. 2) .or. (j .ne. 6)) STOP 1
+ if (ret .ne. 'BCDEF') STOP 2
ret = e1 (str, i, j)
- if ((i .ne. 3) .or. (j .ne. 5)) call abort ()
- if (ret .ne. 'CDE') call abort ()
+ if ((i .ne. 3) .or. (j .ne. 5)) STOP 3
+ if (ret .ne. 'CDE') STOP 4
ret = e2 (str, i, j)
- if ((i .ne. 3) .or. (j .ne. 4)) call abort ()
- if (ret .ne. 'CD') call abort ()
- if (f3 () .ne. 'ABCDE') call abort ()
- if (e3 (1) .ne. 'abcde') call abort ()
- if (e4 (1) .ne. 'abcde') call abort ()
- if (e3 (0) .ne. 'UVWXY') call abort ()
- if (e4 (0) .ne. 'UVWXY') call abort ()
+ if ((i .ne. 3) .or. (j .ne. 4)) STOP 5
+ if (ret .ne. 'CD') STOP 6
+ if (f3 () .ne. 'ABCDE') STOP 7
+ if (e3 (1) .ne. 'abcde') STOP 8
+ if (e4 (1) .ne. 'abcde') STOP 9
+ if (e3 (0) .ne. 'UVWXY') STOP 10
+ if (e4 (0) .ne. 'UVWXY') STOP 11
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/entry_6.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/entry_6.f90
index a75c513a1c0..c288329ad87 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/entry_6.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/entry_6.f90
@@ -80,30 +80,30 @@
double precision, dimension (2, 2) :: d, e
i (:, :) = 6
j = f1 (i)
- if (any (j .ne. 21)) call abort ()
+ if (any (j .ne. 21)) STOP 1
i (:, :) = 7
j = e1 (i)
j (:, :) = 49
- if (any (j .ne. 49)) call abort ()
+ if (any (j .ne. 49)) STOP 2
r = f2 ()
- if (any (r .ne. 45)) call abort ()
+ if (any (r .ne. 45)) STOP 3
r = e2 ()
- if (any (r .ne. 45)) call abort ()
+ if (any (r .ne. 45)) STOP 4
e = f3 ()
- if (any (e .ne. 47)) call abort ()
+ if (any (e .ne. 47)) STOP 5
e = e3 ()
- if (any (e .ne. 47)) call abort ()
+ if (any (e .ne. 47)) STOP 6
d (:, :) = 17
e = f4 (d)
- if (any (e .ne. 32)) call abort ()
+ if (any (e .ne. 32)) STOP 7
e = e4 (d)
- if (any (e .ne. 59)) call abort ()
+ if (any (e .ne. 59)) STOP 8
j = f5 ()
- if (any (j .ne. 45)) call abort ()
+ if (any (j .ne. 45)) STOP 9
j = e5 ()
- if (any (j .ne. 45)) call abort ()
+ if (any (j .ne. 45)) STOP 10
r = f6 ()
- if (any (r .ne. 47)) call abort ()
+ if (any (r .ne. 47)) STOP 11
r = e6 ()
- if (any (r .ne. 47)) call abort ()
+ if (any (r .ne. 47)) STOP 12
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/entry_7.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/entry_7.f90
index 28a8a3f7838..75221e41c6b 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/entry_7.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/entry_7.f90
@@ -90,17 +90,17 @@
end function
end interface
double precision d
- if (f1 (6) .ne. 21) call abort ()
- if (e1 (7) .ne. 49) call abort ()
- if (f2 () .ne. 45) call abort ()
- if (e2 () .ne. 45) call abort ()
- if (f3 () .ne. 47) call abort ()
- if (e3 () .ne. 47) call abort ()
+ if (f1 (6) .ne. 21) STOP 1
+ if (e1 (7) .ne. 49) STOP 2
+ if (f2 () .ne. 45) STOP 3
+ if (e2 () .ne. 45) STOP 4
+ if (f3 () .ne. 47) STOP 5
+ if (e3 () .ne. 47) STOP 6
d = 17
- if (f4 (d) .ne. 32) call abort ()
- if (e4 (d) .ne. 59) call abort ()
- if (f5 () .ne. 45) call abort ()
- if (e5 () .ne. 45) call abort ()
- if (f6 () .ne. 47) call abort ()
- if (e6 () .ne. 47) call abort ()
+ if (f4 (d) .ne. 32) STOP 7
+ if (e4 (d) .ne. 59) STOP 8
+ if (f5 () .ne. 45) STOP 9
+ if (e5 () .ne. 45) STOP 10
+ if (f6 () .ne. 47) STOP 11
+ if (e6 () .ne. 47) STOP 12
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/entry_8.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/entry_8.f90
index c68d75af768..15f80fcc1bf 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/entry_8.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/entry_8.f90
@@ -18,7 +18,7 @@ use entry_8_m
type (t) :: f, g, res
res = f (42)
-if (res%i /= 42) call abort ()
+if (res%i /= 42) STOP 1
res = g (1.)
-if (any (res%x /= 1.)) call abort ()
+if (any (res%x /= 1.)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/entry_9.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/entry_9.f90
index d29f4b8344c..5d29fd12144 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/entry_9.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/entry_9.f90
@@ -17,8 +17,8 @@
program entrytest
integer f1, e1
real f2, e2
- if (f1 (6) .ne. 21) call abort ()
- if (e1 () .ne. 42) call abort ()
- if (f2 () .ne. 45) call abort ()
- if (e2 () .ne. 45) call abort ()
+ if (f1 (6) .ne. 21) STOP 1
+ if (e1 () .ne. 42) STOP 2
+ if (f2 () .ne. 45) STOP 3
+ if (e2 () .ne. 45) STOP 4
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/enum_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/enum_1.f90
index 838b70c38db..c53e5658d23 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/enum_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/enum_1.f90
@@ -14,15 +14,15 @@ program main
end enum
- if (red /= 0 ) call abort
- if (yellow /= 1) call abort
- if (blue /= 2) call abort
- if (green /= 3) call abort
+ if (red /= 0 ) STOP 1
+ if (yellow /= 1) STOP 2
+ if (blue /= 2) STOP 3
+ if (green /= 3) STOP 4
- if (a /= 0 ) call abort
- if (b /= 1) call abort
- if (c /= 10) call abort
- if (d /= 11) call abort
+ if (a /= 0 ) STOP 5
+ if (b /= 1) STOP 6
+ if (c /= 10) STOP 7
+ if (d /= 11) STOP 8
end program main
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/enum_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/enum_2.f90
index d0acf6595c8..fcb37036644 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/enum_2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/enum_2.f90
@@ -14,16 +14,16 @@ program main
end enum
- if (red /= 4 ) call abort
- if (yellow /= (red + 1)) call abort
- if (blue /= (yellow + 1)) call abort
- if (green /= (blue + 1)) call abort
+ if (red /= 4 ) STOP 1
+ if (yellow /= (red + 1)) STOP 2
+ if (blue /= (yellow + 1)) STOP 3
+ if (green /= (blue + 1)) STOP 4
- if (sun /= -10 ) call abort
- if (mon /= (sun + 1)) call abort
- if (tue /= (mon + 1)) call abort
- if (wed /= 10) call abort
- if (sat /= (wed+1)) call abort
+ if (sun /= -10 ) STOP 5
+ if (mon /= (sun + 1)) STOP 6
+ if (tue /= (mon + 1)) STOP 7
+ if (wed /= 10) STOP 8
+ if (sat /= (wed+1)) STOP 9
end program main
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/enum_3.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/enum_3.f90
index 71ab35d118b..ed99553695b 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/enum_3.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/enum_3.f90
@@ -21,37 +21,37 @@ program main
end enum
- if (red /= 0 ) call abort
- if (yellow /= 255) call abort
- if (blue /= 256) call abort
+ if (red /= 0 ) STOP 1
+ if (yellow /= 255) STOP 2
+ if (blue /= 256) STOP 3
- if (r /= 0 ) call abort
- if (y /= 32767) call abort
- if (b /= 32768) call abort
+ if (r /= 0 ) STOP 4
+ if (y /= 32767) STOP 5
+ if (b /= 32768) STOP 6
- if (kind (red) /= 4) call abort
- if (kind (yellow) /= 4) call abort
- if (kind (blue) /= 4) call abort
+ if (kind (red) /= 4) STOP 7
+ if (kind (yellow) /= 4) STOP 8
+ if (kind (blue) /= 4) STOP 9
- if (kind(r) /= 4 ) call abort
- if (kind(y) /= 4) call abort
- if (kind(b) /= 4) call abort
+ if (kind(r) /= 4 ) STOP 10
+ if (kind(y) /= 4) STOP 11
+ if (kind(b) /= 4) STOP 12
- if (aa /= 0 ) call abort
- if (bb /= 65535) call abort
- if (cc /= 65536) call abort
+ if (aa /= 0 ) STOP 13
+ if (bb /= 65535) STOP 14
+ if (cc /= 65536) STOP 15
- if (kind (aa) /= 4 ) call abort
- if (kind (bb) /= 4) call abort
- if (kind (cc) /= 4) call abort
+ if (kind (aa) /= 4 ) STOP 16
+ if (kind (bb) /= 4) STOP 17
+ if (kind (cc) /= 4) STOP 18
- if (m /= 0 ) call abort
- if (n /= 2147483645) call abort
- if (o /= 2147483646) call abort
+ if (m /= 0 ) STOP 19
+ if (n /= 2147483645) STOP 20
+ if (o /= 2147483646) STOP 21
- if (kind (m) /= 4 ) call abort
- if (kind (n) /= 4) call abort
- if (kind (o) /= 4) call abort
+ if (kind (m) /= 4 ) STOP 22
+ if (kind (n) /= 4) STOP 23
+ if (kind (o) /= 4) STOP 24
end program main
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/enum_4.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/enum_4.f90
index ff329dc7d41..f9032cc7f1b 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/enum_4.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/enum_4.f90
@@ -12,8 +12,8 @@ program main
use mod
implicit none
- if (red /= 0 ) call abort
- if (yellow /= 1) call abort
- if (blue /= 2) call abort
- if (green /= 3) call abort
+ if (red /= 0 ) STOP 1
+ if (yellow /= 1) STOP 2
+ if (blue /= 2) STOP 3
+ if (green /= 3) STOP 4
end program main
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/equiv_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/equiv_1.f90
index b4719fcaa4a..6fbb447dbcf 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/equiv_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/equiv_1.f90
@@ -9,7 +9,7 @@ program prog
k = 3
l = 4
- if ((a .ne. 3.0) .or. (b .ne. 3.0) .or. (c .ne. 3.0)) call abort ()
+ if ((a .ne. 3.0) .or. (b .ne. 3.0) .or. (c .ne. 3.0)) STOP 1
if ((i .ne. 4) .or. (j .ne. 4) .or. (k .ne. 4) .or. (l .ne. 4)) &
- call abort ()
+ STOP 2
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/equiv_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/equiv_2.f90
index 1c88ff99643..b9e40f88386 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/equiv_2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/equiv_2.f90
@@ -5,8 +5,8 @@
character*4 e
equivalence (c(1:1), d(1)), (c(3:5), e(2:4)), (c(6:6), f(2))
c='abcdefgh'
- if (c.ne.'abcdefgh'.or.d(1).ne.'a'.or.d(2).ne.'b') call abort
- if (e.ne.'bcde'.or.f(1).ne.'e'.or.f(2).ne.'f') call abort
+ if (c.ne.'abcdefgh'.or.d(1).ne.'a'.or.d(2).ne.'b') STOP 1
+ if (e.ne.'bcde'.or.f(1).ne.'e'.or.f(2).ne.'f') STOP 2
end subroutine test1
subroutine test2
equivalence (c(1:1), d(1)), (c(3:5), e(2:4)), (c(6:6), f(2))
@@ -15,8 +15,8 @@
dimension d(2), f(2)
character*4 e
c='abcdefgh'
- if (c.ne.'abcdefgh'.or.d(1).ne.'a'.or.d(2).ne.'b') call abort
- if (e.ne.'bcde'.or.f(1).ne.'e'.or.f(2).ne.'f') call abort
+ if (c.ne.'abcdefgh'.or.d(1).ne.'a'.or.d(2).ne.'b') STOP 3
+ if (e.ne.'bcde'.or.f(1).ne.'e'.or.f(2).ne.'f') STOP 4
end subroutine test2
subroutine test3
character*8 c
@@ -25,8 +25,8 @@
equivalence (c(1:1), d(1)), (c(3:5), e(2:4)), (c(6:6), f(2))
dimension d(2), f(2)
c='abcdefgh'
- if (c.ne.'abcdefgh'.or.d(1).ne.'a'.or.d(2).ne.'b') call abort
- if (e.ne.'bcde'.or.f(1).ne.'e'.or.f(2).ne.'f') call abort
+ if (c.ne.'abcdefgh'.or.d(1).ne.'a'.or.d(2).ne.'b') STOP 5
+ if (e.ne.'bcde'.or.f(1).ne.'e'.or.f(2).ne.'f') STOP 6
end subroutine test3
subroutine test4
dimension d(2), f(2)
@@ -35,8 +35,8 @@
character*1 d, f
character*4 e
c='abcdefgh'
- if (c.ne.'abcdefgh'.or.d(1).ne.'a'.or.d(2).ne.'b') call abort
- if (e.ne.'bcde'.or.f(1).ne.'e'.or.f(2).ne.'f') call abort
+ if (c.ne.'abcdefgh'.or.d(1).ne.'a'.or.d(2).ne.'b') STOP 7
+ if (e.ne.'bcde'.or.f(1).ne.'e'.or.f(2).ne.'f') STOP 8
end subroutine test4
program main
call test1
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/equiv_3.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/equiv_3.f90
index 75103e200fb..ba50c194c55 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/equiv_3.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/equiv_3.f90
@@ -6,7 +6,7 @@
type(t) :: tc, td
equivalence (tc, td)
tc%c='abcdefgh'
- if (tc%c.ne.'abcdefgh'.or.td%c(1:1).ne.'a') call abort
+ if (tc%c.ne.'abcdefgh'.or.td%c(1:1).ne.'a') STOP 1
end subroutine test1
program main
call test1
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/equiv_4.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/equiv_4.f90
index 9c232786dbb..0188a45ddda 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/equiv_4.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/equiv_4.f90
@@ -7,8 +7,8 @@
equivalence (c(6:6), f(2)(:))
d(1)='AB'
c='abcdefgh'
- if (c.ne.'abcdefgh'.or.d(1).ne.'Aa'.or.d(2).ne.'bc') call abort
- if (e.ne.'bcde'.or.f(1).ne.'de'.or.f(2).ne.'fg') call abort
+ if (c.ne.'abcdefgh'.or.d(1).ne.'Aa'.or.d(2).ne.'bc') STOP 1
+ if (e.ne.'bcde'.or.f(1).ne.'de'.or.f(2).ne.'fg') STOP 2
end subroutine test1
subroutine test2
equivalence (c(1:1), d(1)(2:2)), (c(3:5), e(2:4))
@@ -19,8 +19,8 @@
character*4 e
d(1)='AB'
c='abcdefgh'
- if (c.ne.'abcdefgh'.or.d(1).ne.'Aa'.or.d(2).ne.'bc') call abort
- if (e.ne.'bcde'.or.f(1).ne.'de'.or.f(2).ne.'fg') call abort
+ if (c.ne.'abcdefgh'.or.d(1).ne.'Aa'.or.d(2).ne.'bc') STOP 3
+ if (e.ne.'bcde'.or.f(1).ne.'de'.or.f(2).ne.'fg') STOP 4
end subroutine test2
subroutine test3
character*8 c
@@ -31,8 +31,8 @@
dimension d(2), f(2)
d(1)='AB'
c='abcdefgh'
- if (c.ne.'abcdefgh'.or.d(1).ne.'Aa'.or.d(2).ne.'bc') call abort
- if (e.ne.'bcde'.or.f(1).ne.'de'.or.f(2).ne.'fg') call abort
+ if (c.ne.'abcdefgh'.or.d(1).ne.'Aa'.or.d(2).ne.'bc') STOP 5
+ if (e.ne.'bcde'.or.f(1).ne.'de'.or.f(2).ne.'fg') STOP 6
end subroutine test3
subroutine test4
dimension d(2), f(2)
@@ -43,8 +43,8 @@
character*4 e
d(1)='AB'
c='abcdefgh'
- if (c.ne.'abcdefgh'.or.d(1).ne.'Aa'.or.d(2).ne.'bc') call abort
- if (e.ne.'bcde'.or.f(1).ne.'de'.or.f(2).ne.'fg') call abort
+ if (c.ne.'abcdefgh'.or.d(1).ne.'Aa'.or.d(2).ne.'bc') STOP 7
+ if (e.ne.'bcde'.or.f(1).ne.'de'.or.f(2).ne.'fg') STOP 8
end subroutine test4
program main
call test1
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/equiv_init_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/equiv_init_1.f90
index d918097c5ee..ec928d00aec 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/equiv_init_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/equiv_init_1.f90
@@ -11,16 +11,16 @@ subroutine test0s
equivalence (xs,ys)
data xs /10*"abcdefghij"/
- if (y.ne."abcdefghij") call abort
- if (ys(1).ne."abcdefghij") call abort
- if (ys(10).ne."abcdefghij") call abort
+ if (y.ne."abcdefghij") STOP 1
+ if (ys(1).ne."abcdefghij") STOP 2
+ if (ys(10).ne."abcdefghij") STOP 3
end
subroutine test0
integer :: x = 123
integer :: y
equivalence (x,y)
- if (y.ne.123) call abort
+ if (y.ne.123) STOP 4
end
subroutine test1
@@ -30,10 +30,10 @@ subroutine test1
integer :: z = 3
equivalence (a(1), x)
equivalence (a(3), z)
- if (x.ne.1) call abort
- if (z.ne.3) call abort
- if (a(1).ne.1) call abort
- if (a(3).ne.3) call abort
+ if (x.ne.1) STOP 5
+ if (z.ne.3) STOP 6
+ if (a(1).ne.1) STOP 7
+ if (a(3).ne.3) STOP 8
end
subroutine test2
@@ -42,8 +42,8 @@ subroutine test2
integer :: a(3) = 123
equivalence (a(1), x)
equivalence (a(3), z)
- if (x.ne.123) call abort
- if (z.ne.123) call abort
+ if (x.ne.123) STOP 9
+ if (z.ne.123) STOP 10
end
subroutine test3
@@ -53,9 +53,9 @@ subroutine test3
integer :: a(3)
equivalence (a(1),x), (a(2),y), (a(3),z)
data a(1) /1/, a(3) /3/
- if (x.ne.1) call abort
-!!$ if (y.ne.2) call abort
- if (z.ne.3) call abort
+ if (x.ne.1) STOP 11
+!!$ if (y.ne.2) STOP 12
+ if (z.ne.3) STOP 13
end
subroutine test4
@@ -65,8 +65,8 @@ subroutine test4
equivalence (a(2),b(1)), (b(2),c)
data a/1,2/
data c/3/
- if (b(1).ne.2) call abort
- if (b(2).ne.3) call abort
+ if (b(1).ne.2) STOP 14
+ if (b(2).ne.3) STOP 15
end
!!$subroutine test5
@@ -77,8 +77,8 @@ end
!!$ data a(1)/1/
!!$ data b(1)/2/
!!$ data c/3/
-!!$ if (a(2).ne.2) call abort
-!!$ if (b(2).ne.3) call abort
+!!$ if (a(2).ne.2) STOP 16
+!!$ if (b(2).ne.3) STOP 17
!!$ print *, "Passed test5"
!!$end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/f2_edit_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/f2_edit_1.f90
index cb2f5eacd33..333bfaefe8b 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/f2_edit_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/f2_edit_1.f90
@@ -5,6 +5,6 @@
RCON22 = .9
WRITE(LINE,'(F2.0,1H,,F2.1)')RCON21,RCON22
READ(LINE,'(F2.0,1X,F2.1)')XRCON21,XRCON22
- IF (RCON21.NE.XRCON21) CALL ABORT
- IF (RCON22.NE.XRCON22) CALL ABORT
+ IF (RCON21.NE.XRCON21) STOP 1
+ IF (RCON22.NE.XRCON22) STOP 2
END
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/forall.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/forall.f90
index b60e67fb0d7..56bf0240c24 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/forall.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/forall.f90
@@ -11,7 +11,7 @@ program testforall
b(i) = sum (a(:, i))
end forall
- if (b(1) .ne. 6) call abort
- if (b(2) .ne. 15) call abort
- if (b(3) .ne. 24) call abort
+ if (b(1) .ne. 6) STOP 1
+ if (b(2) .ne. 15) STOP 2
+ if (b(3) .ne. 24) STOP 3
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/forall_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/forall_1.f90
index 806dede70f3..b0d402fcee5 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/forall_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/forall_1.f90
@@ -15,8 +15,8 @@ contains
forall (x = 1:3, j = 1:4)
a (x,j) = j
end forall
- if (any (a.ne.reshape ((/1,1,1,2,2,2,3,3,3,4,4,4/), (/3,4/)))) call abort
- if ((x.ne.-1).or.(j.ne.100)) call abort
+ if (any (a.ne.reshape ((/1,1,1,2,2,2,3,3,3,4,4,4/), (/3,4/)))) STOP 1
+ if ((x.ne.-1).or.(j.ne.100)) STOP 2
call actual_variable_2 (x, j, a)
end subroutine
@@ -31,9 +31,9 @@ contains
b(x,j) = j
end forall
- if (any (a.ne.reshape ((/1,1,1,2,2,2,3,3,3,4,4,4/), (/3,4/)))) call abort
- if (any (b.ne.reshape ((/1,1,1,2,2,2,3,3,3,4,4,4/), (/3,4/)))) call abort
- if ((x.ne.-1).or.(j.ne.100)) call abort
+ if (any (a.ne.reshape ((/1,1,1,2,2,2,3,3,3,4,4,4/), (/3,4/)))) STOP 3
+ if (any (b.ne.reshape ((/1,1,1,2,2,2,3,3,3,4,4,4/), (/3,4/)))) STOP 4
+ if ((x.ne.-1).or.(j.ne.100)) STOP 5
end subroutine
subroutine negative_stride ()
@@ -44,7 +44,7 @@ contains
forall (x = 3:1:-1, j = 4:1:-1)
a(x,j) = j + x
end forall
- if (any (a.ne.reshape ((/2,3,4,3,4,5,4,5,6,5,6,7/), (/3,4/)))) call abort
+ if (any (a.ne.reshape ((/2,3,4,3,4,5,4,5,6,5,6,7/), (/3,4/)))) STOP 6
end subroutine
subroutine forall_index
@@ -55,7 +55,7 @@ contains
i10=1:2)
a(i1+2*i3+4*i5+8*i7+16*i9-30,i2+2*i4+4*i6+8*i8+16*i10-30) = 1
end forall
- if ((a(5,5).ne.1).or. (a(32,32).ne.1)) call abort
+ if ((a(5,5).ne.1).or. (a(32,32).ne.1)) STOP 7
end subroutine
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/forall_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/forall_2.f90
index 92a4ff102cc..074850a6fa7 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/forall_2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/forall_2.f90
@@ -15,6 +15,6 @@ program test
end forall
end forall
if (any (a.ne.reshape ((/0,1,2,3,-1,0,2,3,-2,-1,0,1,-3,-2,-1,0/),&
- (/4,4/)))) call abort
+ (/4,4/)))) STOP 1
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/forall_3.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/forall_3.f90
index cab07579539..4e6528fa3e1 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/forall_3.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/forall_3.f90
@@ -28,10 +28,10 @@ program evil_forall
v(i)%p(1:v(i)%s) = v(6-i)%p(1:v(i)%s)
end forall
- if (any(v(1)%p(:) .ne. (/11, 10/))) call abort
- if (any(v(2)%p(:) .ne. (/13, 14, 15, 16, 17, 18, 19, 20/))) call abort
- if (any(v(4)%p(:) .ne. (/1, 2, 3, 4, 5, 6, 19, 20/))) call abort
- if (any(v(5)%p(:) .ne. (/9, 10/))) call abort
+ if (any(v(1)%p(:) .ne. (/11, 10/))) STOP 1
+ if (any(v(2)%p(:) .ne. (/13, 14, 15, 16, 17, 18, 19, 20/))) STOP 2
+ if (any(v(4)%p(:) .ne. (/1, 2, 3, 4, 5, 6, 19, 20/))) STOP 3
+ if (any(v(5)%p(:) .ne. (/9, 10/))) STOP 4
! I should really free the memory I've allocated.
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/forall_4.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/forall_4.f90
index f2dded73587..98498dcf4ff 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/forall_4.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/forall_4.f90
@@ -22,6 +22,6 @@ program forall2
.ne. reshape((/ 1, 5, 9,13,&
2, 6,10, 8,&
3, 7,11,12,&
- 4,14,15,16/),(/4,4/)))) call abort
- if (any (a(:,:,2) .ne. a(:,:,1) + 16)) call abort
+ 4,14,15,16/),(/4,4/)))) STOP 1
+ if (any (a(:,:,2) .ne. a(:,:,1) + 16)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/forall_5.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/forall_5.f90
index 0595adf0c89..9b33e21e8fc 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/forall_5.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/forall_5.f90
@@ -20,9 +20,9 @@ program forall_5
t(i) = i
enddo
- if (any(q(1)%p .ne. (/1,2,3,4,5/))) call abort
- if (any(q(2)%p .ne. (/1,2,3,4,5/))) call abort
- if (any(q(3)%p .ne. (/6,7,8,9,10/))) call abort
- if (any(q(4)%p .ne. (/11,12,13,14,15/))) call abort
- if (any(q(5)%p .ne. (/16,17,18,19,20/))) call abort
+ if (any(q(1)%p .ne. (/1,2,3,4,5/))) STOP 1
+ if (any(q(2)%p .ne. (/1,2,3,4,5/))) STOP 2
+ if (any(q(3)%p .ne. (/6,7,8,9,10/))) STOP 3
+ if (any(q(4)%p .ne. (/11,12,13,14,15/))) STOP 4
+ if (any(q(5)%p .ne. (/16,17,18,19,20/))) STOP 5
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/forall_6.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/forall_6.f90
index b277814fb3f..af78ed36c61 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/forall_6.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/forall_6.f90
@@ -20,6 +20,6 @@ program forall_6
do i = 1,5
- if (q(i)%p .ne. t(6 - i)) call abort
+ if (q(i)%p .ne. t(6 - i)) STOP 1
end do
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/forall_7.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/forall_7.f90
index 4a28928109c..ac7ef38251c 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/forall_7.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/forall_7.f90
@@ -77,12 +77,12 @@ program forall_7
s = r
end if
end if
- if (a (i, j, k, l) /= r) call abort ()
- if (c (i, j, k, l) /= s) call abort ()
+ if (a (i, j, k, l) /= r) STOP 1
+ if (c (i, j, k, l) /= s) STOP 2
end do
end do
end do
end do
- if (any (a /= b .or. c /= d)) call abort ()
+ if (any (a /= b .or. c /= d)) STOP 3
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/function_module_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/function_module_1.f90
index e57ff161d29..b7b2ad8bcd9 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/function_module_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/function_module_1.f90
@@ -32,5 +32,5 @@ program P1
implicit none
p = 0
call AA ()
- if (p /= 1) call abort
+ if (p /= 1) STOP 1
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/getarg_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/getarg_1.f90
index 7189991f7eb..3cd27319949 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/getarg_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/getarg_1.f90
@@ -11,20 +11,20 @@ program getarg_1
I2 = 0
CALL GETARG(I2,ARGS2)
- if (args2.ne.args) call abort
+ if (args2.ne.args) STOP 1
- if (args.eq.'') call abort
+ if (args.eq.'') STOP 2
I = 1
CALL GETARG(I,ARGS)
- if (args.ne.'') call abort
+ if (args.ne.'') STOP 3
I = -1
CALL GETARG(I,ARGS)
- if (args.ne.'') call abort
+ if (args.ne.'') STOP 4
! Assume we won't have been called with more that 4 args.
I = 4
CALL GETARG(I,ARGS)
- if (args.ne.'') call abort
+ if (args.ne.'') STOP 5
I = 1000
CALL GETARG(I,ARGS)
- if (args.ne.'') call abort
+ if (args.ne.'') STOP 6
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/hollerith.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/hollerith.f90
index aa7b17def75..2b23f705c7a 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/hollerith.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/hollerith.f90
@@ -4,6 +4,6 @@ program hollerith
CHARACTER*4 LINE
100 FORMAT (4H12H4)
WRITE(LINE,100)
- IF (LINE .NE. '12H4') call abort ()
+ IF (LINE .NE. '12H4') STOP 1
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/in-pack.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/in-pack.f90
index b9ea2683240..62ed71dedd5 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/in-pack.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/in-pack.f90
@@ -21,27 +21,27 @@ program main
b4 = (/(2*cmplx(i,-i,kind=4),i=1,5)/)
call csub4(a4(5:1:-1),b4(5:1:-1),5)
aa4 = (/(cmplx(5-i+1,i-5-1,kind=4),i=1,5)/)
- if (any(aa4 /= a4)) call abort
+ if (any(aa4 /= a4)) STOP 1
bb4 = (/(2*cmplx(5-i+1,i-5-1,kind=4),i=1,5)/)
- if (any(bb4 /= b4)) call abort
+ if (any(bb4 /= b4)) STOP 2
a8 = (/(cmplx(i,-i,kind=8),i=1,5)/)
b8 = (/(2*cmplx(i,-i,kind=8),i=1,5)/)
call csub8(a8(5:1:-1),b8(5:1:-1),5)
aa8 = (/(cmplx(5-i+1,i-5-1,kind=8),i=1,5)/)
- if (any(aa8 /= a8)) call abort
+ if (any(aa8 /= a8)) STOP 3
bb8 = (/(2*cmplx(5-i+1,i-5-1,kind=8),i=1,5)/)
- if (any(bb8 /= b8)) call abort
+ if (any(bb8 /= b8)) STOP 4
i4 = (/(i, i=1,5)/)
call isub4(i4(5:1:-1),5)
ii4 = (/(5-i+1,i=1,5)/)
- if (any(ii4 /= i4)) call abort
+ if (any(ii4 /= i4)) STOP 5
i8 = (/(i,i=1,5)/)
call isub8(i8(5:1:-1),5)
ii8 = (/(5-i+1,i=1,5)/)
- if (any(ii8 /= i8)) call abort
+ if (any(ii8 /= i8)) STOP 6
end program main
@@ -51,9 +51,9 @@ subroutine csub4(a,b,n)
complex(kind=4), dimension(n) :: aa, bb
integer :: n, i
aa = (/(cmplx(n-i+1,i-n-1,kind=4),i=1,n)/)
- if (any(aa /= a)) call abort
+ if (any(aa /= a)) STOP 7
bb = (/(2*cmplx(n-i+1,i-n-1,kind=4),i=1,5)/)
- if (any(bb /= b)) call abort
+ if (any(bb /= b)) STOP 8
a = (/(cmplx(i,-i,kind=4),i=1,5)/)
b = (/(2*cmplx(i,-i,kind=4),i=1,5)/)
end subroutine csub4
@@ -64,9 +64,9 @@ subroutine csub8(a,b,n)
complex(kind=8), dimension(n) :: aa, bb
integer :: n, i
aa = (/(cmplx(n-i+1,i-n-1,kind=8),i=1,n)/)
- if (any(aa /= a)) call abort
+ if (any(aa /= a)) STOP 9
bb = (/(2*cmplx(n-i+1,i-n-1,kind=8),i=1,5)/)
- if (any(bb /= b)) call abort
+ if (any(bb /= b)) STOP 10
a = (/(cmplx(i,-i,kind=8),i=1,5)/)
b = (/(2*cmplx(i,-i,kind=8),i=1,5)/)
end subroutine csub8
@@ -77,7 +77,7 @@ subroutine isub4(a,n)
integer(kind=4), dimension(n) :: aa
integer :: n, i
aa = (/(n-i+1,i=1,n)/)
- if (any(aa /= a)) call abort
+ if (any(aa /= a)) STOP 11
a = (/(i,i=1,5)/)
end subroutine isub4
@@ -87,6 +87,6 @@ subroutine isub8(a,n)
integer(kind=8), dimension(n) :: aa
integer :: n, i
aa = (/(n-i+1,i=1,n)/)
- if (any(aa /= a)) call abort
+ if (any(aa /= a)) STOP 12
a = (/(i,i=1,5)/)
end subroutine isub8
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/initialization_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/initialization_1.f90
index 2ccb45a2388..0505cb0240d 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/initialization_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/initialization_1.f90
@@ -5,6 +5,6 @@ contains
subroutine x(a)
character(8), intent(in) :: a(:)
integer :: b(count(a < 'F'))
-if (size(b) /= 1) call abort()
+if (size(b) /= 1) STOP 1
end subroutine x
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/initializer.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/initializer.f90
index 55cc185f370..c480d54877c 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/initializer.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/initializer.f90
@@ -16,11 +16,11 @@ program intializer
character(15) :: d = "Teststring"
integer, dimension(3) :: a = 1
- if (any (a .ne. 1)) call abort
- if (test(11) .ne. 42) call abort
+ if (any (a .ne. 1)) STOP 1
+ if (test(11) .ne. 42) STOP 2
! The second call should return
- if (test(0) .ne. 11) call abort
+ if (test(0) .ne. 11) STOP 3
- if (c .ne. "Hello World") call abort
- if (d .ne. "Teststring") call abort
+ if (c .ne. "Hello World") STOP 4
+ if (d .ne. "Teststring") STOP 5
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/inquire_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/inquire_1.f90
index 8deb6b863b5..3e19a3c015b 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/inquire_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/inquire_1.f90
@@ -3,7 +3,7 @@
CHARACTER*10 ACCESS
OPEN(UNIT=9,ACCESS='SEQUENTIAL')
INQUIRE(UNIT=9,ACCESS=ACCESS,BLANK=BLANK)
- IF(BLANK.NE.'NULL') CALL ABORT
- IF(ACCESS.NE.'SEQUENTIAL') CALL ABORT
+ IF(BLANK.NE.'NULL') STOP 1
+ IF(ACCESS.NE.'SEQUENTIAL') STOP 2
CLOSE(UNIT=9,STATUS='DELETE')
END
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/inquire_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/inquire_2.f90
index 48105170248..ee57a1553be 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/inquire_2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/inquire_2.f90
@@ -2,6 +2,6 @@
INTEGER UNIT
OPEN(FILE='CSEQ', UNIT=23)
INQUIRE(FILE='CSEQ',NUMBER=UNIT)
- IF (UNIT.NE.23) CALL ABORT
+ IF (UNIT.NE.23) STOP 1
CLOSE(UNIT, STATUS='DELETE')
END
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/inquire_3.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/inquire_3.f90
index 29d25812ab2..685091ba215 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/inquire_3.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/inquire_3.f90
@@ -4,10 +4,10 @@
WRITE(UNIT=9,REC=5) 1
INQUIRE(UNIT=9,NEXTREC=NREC)
! PRINT*,NREC
- IF (NREC.NE.6) CALL ABORT
+ IF (NREC.NE.6) STOP 1
READ(UNIT=9,REC=1) MVI
INQUIRE(UNIT=9,NEXTREC=NREC)
- IF (NREC.NE.2) CALL ABORT
+ IF (NREC.NE.2) STOP 2
! PRINT*,NREC
CLOSE(UNIT=9,STATUS='DELETE')
END
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/inquire_4.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/inquire_4.f90
index 2fa69cc3f9f..a5702f7232e 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/inquire_4.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/inquire_4.f90
@@ -7,14 +7,14 @@
INQUIRE(UNIT=10,NEXTREC=J)
IF (J.NE.2) THEN
! PRINT*,'NEXTREC RETURNED ',J,' EXPECTED 2'
- CALL ABORT
+ STOP 1
ENDIF
200 FORMAT(I4,/,I4)
WRITE(UNIT=10,REC=2,FMT=200)2,3
INQUIRE(UNIT=10,NEXTREC=J)
IF (J.NE.4) THEN
! PRINT*,'NEXTREC RETURNED ',J,' EXPECTED 4'
- CALL ABORT
+ STOP 2
ENDIF
CLOSE(UNIT=10,STATUS='DELETE')
END
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/inquire_5.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/inquire_5.f90
index 1077650d87d..b5fd21c7931 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/inquire_5.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/inquire_5.f90
@@ -20,13 +20,13 @@ program inquire_5
unit1 = -1
exist1 = .false.
inquire (file = 'inquire_5.txt', number = unit8, exist = exist8)
- if (unit8 .ne. 78 .or. .not. exist8) call abort
+ if (unit8 .ne. 78 .or. .not. exist8) STOP 1
inquire (file = 'inquire_5.txt', number = unit4, exist = exist4)
- if (unit4 .ne. 78 .or. .not. exist4) call abort
+ if (unit4 .ne. 78 .or. .not. exist4) STOP 2
inquire (file = 'inquire_5.txt', number = unit2, exist = exist2)
- if (unit2 .ne. 78 .or. .not. exist2) call abort
+ if (unit2 .ne. 78 .or. .not. exist2) STOP 3
inquire (file = 'inquire_5.txt', number = unit1, exist = exist1)
- if (unit1 .ne. 78 .or. .not. exist1) call abort
+ if (unit1 .ne. 78 .or. .not. exist1) STOP 4
del = 'delete'
close (unit = 78, status = del)
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/integer_select.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/integer_select.f90
index 765356d2610..ef2a96e953e 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/integer_select.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/integer_select.f90
@@ -8,20 +8,20 @@ PROGRAM Test_INTEGER_select
SELECT CASE (I)
CASE (:-1)
- CALL abort
+ STOP 1
CASE (1:)
- CALL abort
+ STOP 2
CASE DEFAULT
CONTINUE
END SELECT
SELECT CASE (I)
CASE (3,2,1)
- CALL abort
+ STOP 3
CASE (0)
CONTINUE
CASE DEFAULT
- call abort
+ STOP 4
END SELECT
! Not aborted by here, so it worked
@@ -31,20 +31,20 @@ PROGRAM Test_INTEGER_select
SELECT CASE (I)
CASE (:-1)
- CALL abort
+ STOP 5
CASE (1:)
CONTINUE
CASE DEFAULT
- CALL abort
+ STOP 6
END SELECT
SELECT CASE (I)
CASE (3,2,1,:0)
- CALL abort
+ STOP 7
CASE (maxI)
CONTINUE
CASE DEFAULT
- call abort
+ STOP 8
END SELECT
I = minI
@@ -53,18 +53,18 @@ PROGRAM Test_INTEGER_select
CASE (:-1)
CONTINUE
CASE (1:)
- CALL abort
+ STOP 9
CASE DEFAULT
- CALL abort
+ STOP 10
END SELECT
SELECT CASE (I)
CASE (3:,2,1,0)
- CALL abort
+ STOP 11
CASE (minI)
CONTINUE
CASE DEFAULT
- call abort
+ STOP 12
END SELECT
END
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/integer_select_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/integer_select_1.f90
index 18bc79b4358..e1942f208b9 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/integer_select_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/integer_select_1.f90
@@ -1,17 +1,17 @@
INTEGER :: I = 1
SELECT CASE (I)
CASE (-3:-5) ! Can never be matched
- CALL abort
+ STOP 1
CASE (1)
CONTINUE
CASE DEFAULT
- CALL abort
+ STOP 2
END SELECT
I = -3
SELECT CASE (I)
CASE (-3:-5) ! Can never be matched
- CALL abort
+ STOP 3
CASE (1)
CONTINUE
CASE DEFAULT
@@ -21,11 +21,11 @@ END SELECT
I = -5
SELECT CASE (I)
CASE (-3:-5) ! Can never be matched
- CALL abort
+ STOP 4
CASE (-5)
CONTINUE
CASE DEFAULT
- CALL abort
+ STOP 5
END SELECT
END
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/internal_write.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/internal_write.f90
index 1e492977b06..71908273265 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/internal_write.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/internal_write.f90
@@ -6,6 +6,6 @@
IF (A.NE.'GCC ') THEN
! PRINT*,'A was not filled correctly by internal write'
! PRINT*,' A = ',A
- CALL ABORT
+ STOP 1
ENDIF
END
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_abs.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_abs.f90
index 9e44657bad1..0c0ff43b162 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_abs.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_abs.f90
@@ -8,26 +8,26 @@ program intrinsic_abs
i = 42
i = abs(i)
- if (i .ne. 42) call abort
+ if (i .ne. 42) STOP 1
i = -43
i = abs(i)
- if (i .ne. 43) call abort
+ if (i .ne. 43) STOP 2
r = 42.0
r = abs(r)
- if (r .ne. 42.0) call abort
+ if (r .ne. 42.0) STOP 3
r = -43.0
r = abs(r)
- if (r .ne. 43.0) call abort
+ if (r .ne. 43.0) STOP 4
q = 42.0_8
q = abs(q)
- if (q .ne. 42.0_8) call abort
+ if (q .ne. 42.0_8) STOP 5
q = -43.0_8
q = abs(q)
- if (q .ne. 43.0_8) call abort
+ if (q .ne. 43.0_8) STOP 6
z = (3, 4)
r = abs(z)
- if (r .ne. 5) call abort
+ if (r .ne. 5) STOP 7
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_achar.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_achar.f90
index fba0a08974f..78597f64434 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_achar.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_achar.f90
@@ -3,7 +3,7 @@ program intrinsic_achar
integer i
i = 32
- if (achar(i) .ne. " ") call abort
+ if (achar(i) .ne. " ") STOP 1
i = iachar("A")
- if ((i .ne. 65) .or. char(i) .ne. "A") call abort
+ if ((i .ne. 65) .or. char(i) .ne. "A") STOP 2
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_aint_anint.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_aint_anint.f90
index 16e816c6bd0..9b386e51c42 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_aint_anint.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_aint_anint.f90
@@ -6,7 +6,7 @@ subroutine real4test (op, res1, res2)
real(kind=4) :: res1, res2
if (diff(aint(op), res1) .or. &
- diff(anint(op), res2)) call abort
+ diff(anint(op), res2)) STOP 1
contains
function diff(a, b)
real(kind=4) :: a, b
@@ -22,7 +22,7 @@ subroutine real8test (op, res1, res2)
real(kind=8) :: res1, res2
if (diff(aint(op), res1) .or. &
- diff(anint(op), res2)) call abort
+ diff(anint(op), res2)) STOP 2
contains
function diff(a, b)
real(kind=8) :: a, b
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_anyall.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_anyall.f90
index 4e392c56960..fdfc7900c34 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_anyall.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_anyall.f90
@@ -6,36 +6,36 @@ program anyall
character(len=10) line
a = .false.
- if (any(a)) call abort
+ if (any(a)) STOP 1
a(1, 1) = .true.
a(2, 3) = .true.
- if (.not. any(a)) call abort
+ if (.not. any(a)) STOP 2
b = any(a, 1)
- if (.not. b(1)) call abort
- if (b(2)) call abort
- if (.not. b(3)) call abort
+ if (.not. b(1)) STOP 3
+ if (b(2)) STOP 4
+ if (.not. b(3)) STOP 5
b = .false.
write (line, 9000) any(a,1)
read (line, 9000) b
- if (.not. b(1)) call abort
- if (b(2)) call abort
- if (.not. b(3)) call abort
+ if (.not. b(1)) STOP 6
+ if (b(2)) STOP 7
+ if (.not. b(3)) STOP 8
a = .true.
- if (.not. all(a)) call abort
+ if (.not. all(a)) STOP 9
a(1, 1) = .false.
a(2, 3) = .false.
- if (all(a)) call abort
+ if (all(a)) STOP 10
b = all(a, 1)
- if (b(1)) call abort
- if (.not. b(2)) call abort
- if (b(3)) call abort
+ if (b(1)) STOP 11
+ if (.not. b(2)) STOP 12
+ if (b(3)) STOP 13
b = .false.
write (line, 9000) all(a,1)
read (line, 9000) b
- if (b(1)) call abort
- if (.not. b(2)) call abort
- if (b(3)) call abort
+ if (b(1)) STOP 14
+ if (.not. b(2)) STOP 15
+ if (b(3)) STOP 16
9000 format (9L1)
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_associated.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_associated.f90
index 22ea6f0a62a..812fb7b6097 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_associated.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_associated.f90
@@ -20,17 +20,17 @@ subroutine pointer_to_section ()
window (1, 2) = 0161
t = associated (window, xy(2:4, 3:4))
- if (.not.t) call abort ()
+ if (.not.t) STOP 1
! Check that none of the array got mangled
if ((xy(2, 3) .ne. 0101) .or. (xy (4, 4) .ne. 4161) &
- .or. (xy(4, 3) .ne. 4101) .or. (xy (2, 4) .ne. 0161)) call abort ()
- if (any (xy(:, 1:2) .ne. 0)) call abort ()
- if (any (xy(:, 5) .ne. 0)) call abort ()
- if (any (xy (1, 3:4) .ne. 0)) call abort ()
- if (any (xy (5, 3:4) .ne. 0)) call abort ()
- if (xy(3, 3) .ne. 10) call abort ()
- if (xy(3, 4) .ne. 10) call abort ()
- if (any (xy(2:4, 3:4) .ne. window)) call abort ()
+ .or. (xy(4, 3) .ne. 4101) .or. (xy (2, 4) .ne. 0161)) STOP 2
+ if (any (xy(:, 1:2) .ne. 0)) STOP 3
+ if (any (xy(:, 5) .ne. 0)) STOP 4
+ if (any (xy (1, 3:4) .ne. 0)) STOP 5
+ if (any (xy (5, 3:4) .ne. 0)) STOP 6
+ if (xy(3, 3) .ne. 10) STOP 7
+ if (xy(3, 4) .ne. 10) STOP 8
+ if (any (xy(2:4, 3:4) .ne. window)) STOP 9
end
subroutine sub1 (a, ap)
@@ -43,7 +43,7 @@ end
subroutine nullify_pp (a)
integer, pointer :: a(:, :)
- if (.not. associated (a)) call abort ()
+ if (.not. associated (a)) STOP 10
nullify (a)
end
@@ -57,11 +57,11 @@ subroutine associate_1 ()
allocate (a(80, 80))
b => a
- if (.not. associated(a)) call abort ()
- if (.not. associated(b)) call abort ()
+ if (.not. associated(a)) STOP 11
+ if (.not. associated(b)) STOP 12
call nullify_pp (a)
- if (associated (a)) call abort ()
- if (.not. associated (b)) call abort ()
+ if (associated (a)) STOP 13
+ if (.not. associated (b)) STOP 14
end
subroutine pointer_to_derived_1 ()
@@ -85,11 +85,11 @@ subroutine pointer_to_derived_1 ()
type(record2), target :: r2
nullify (r1%r1p, r2%r2p, e1%rp, e2%rp, e3%rp)
- if (associated (r1%r1p)) call abort ()
- if (associated (r2%r2p)) call abort ()
- if (associated (e2%rp)) call abort ()
- if (associated (e1%rp)) call abort ()
- if (associated (e3%rp)) call abort ()
+ if (associated (r1%r1p)) STOP 15
+ if (associated (r2%r2p)) STOP 16
+ if (associated (e2%rp)) STOP 17
+ if (associated (e1%rp)) STOP 18
+ if (associated (e3%rp)) STOP 19
r1%r1p => r2
r2%r2p => r1
r1%value = 11
@@ -99,18 +99,18 @@ subroutine pointer_to_derived_1 ()
e1%value = 33
e1%rp%value = 44
e1%rp%rp%value = 55
- if (.not. associated (r1%r1p)) call abort ()
- if (.not. associated (r2%r2p)) call abort ()
- if (.not. associated (e1%rp)) call abort ()
- if (.not. associated (e2%rp)) call abort ()
- if (associated (e3%rp)) call abort ()
- if (r1%r1p%value .ne. 22) call abort ()
- if (r2%r2p%value .ne. 11) call abort ()
- if (e1%value .ne. 33) call abort ()
- if (e2%value .ne. 44) call abort ()
- if (e3%value .ne. 55) call abort ()
- if (r1%value .ne. 11) call abort ()
- if (r2%value .ne. 22) call abort ()
+ if (.not. associated (r1%r1p)) STOP 20
+ if (.not. associated (r2%r2p)) STOP 21
+ if (.not. associated (e1%rp)) STOP 22
+ if (.not. associated (e2%rp)) STOP 23
+ if (associated (e3%rp)) STOP 24
+ if (r1%r1p%value .ne. 22) STOP 25
+ if (r2%r2p%value .ne. 11) STOP 26
+ if (e1%value .ne. 33) STOP 27
+ if (e2%value .ne. 44) STOP 28
+ if (e3%value .ne. 55) STOP 29
+ if (r1%value .ne. 11) STOP 30
+ if (r2%value .ne. 22) STOP 31
end
@@ -126,9 +126,9 @@ subroutine associated_2 ()
endinterface
xp => y
- if (.not. associated (xp)) call abort ()
+ if (.not. associated (xp)) STOP 32
call sub1 (x, xp)
- if (associated (xp, y)) call abort ()
- if (.not. associated (xp, x)) call abort ()
+ if (associated (xp, y)) STOP 33
+ if (.not. associated (xp, x)) STOP 34
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_associated_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_associated_2.f90
index 5f353b2f85b..c7ed8509b29 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_associated_2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_associated_2.f90
@@ -16,14 +16,14 @@ program intrinsic_associated_2
L84 = t8 .and. associated (a4p, a4)
L48 = t4 .and. associated (a8p, a8)
L88 = t8 .and. associated (a8p, a8)
- if (.not. (L44 .and. L84 .and. L48 .and. L88)) call abort ()
+ if (.not. (L44 .and. L84 .and. L48 .and. L88)) STOP 1
nullify (a4p, a8p)
L44 = t4 .and. associated (a4p, a4)
L84 = t8 .and. associated (a4p, a4)
L48 = t4 .and. associated (a8p, a8)
L88 = t8 .and. associated (a8p, a8)
- if (L44 .and. L84 .and. L48 .and. L88) call abort ()
+ if (L44 .and. L84 .and. L48 .and. L88) STOP 2
a4p => a4(1:10:2, 1:10:2)
a8p => a8(1:4, 1:4)
@@ -31,6 +31,6 @@ program intrinsic_associated_2
L84 = t8 .and. associated (a4p, a4(1:10:2, 1:10:2))
L48 = t4 .and. associated (a8p, a8(1:4, 1:4))
L88 = t8 .and. associated (a8p, a8(1:4, 1:4))
- if (.not. (L44 .and. L84 .and. L48 .and. L88)) call abort ()
+ if (.not. (L44 .and. L84 .and. L48 .and. L88)) STOP 3
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_bitops.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_bitops.f90
index 7dcda255b96..3b7d0bd2d3b 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_bitops.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_bitops.f90
@@ -10,23 +10,23 @@ program intrinsic_bitops
k = 12
a = 5
- if (.not. btest (i, o+1)) call abort
- if (btest (i, o+2)) call abort
- if (iand (i, j) .ne. 2) call abort
- if (ibclr (j, o+1) .ne. 1) call abort
- if (ibclr (j, o+2) .ne. 3) call abort
- if (ibits (k, o+1, o+2) .ne. 2) call abort
- if (ibset (j, o+1) .ne. 3) call abort
- if (ibset (j, o+2) .ne. 7) call abort
- if (ieor (i, j) .ne. 1) call abort
- if (ior (i, j) .ne. 3) call abort
- if (ishft (k, o+2) .ne. 48) call abort
- if (ishft (k, o-3) .ne. 1) call abort
- if (ishft (k, o) .ne. 12) call abort
- if (ishftc (k, o+30) .ne. 3) call abort
- if (ishftc (k, o-30) .ne. 48) call abort
- if (ishftc (k, o+1, o+3) .ne. 9) call abort
- if (not (i) .ne. -3) call abort
- if (ishftc (a, 1, bit_size(a)) .ne. 10) call abort
- if (ishftc (1, 1, 32) .ne. 2) call abort
+ if (.not. btest (i, o+1)) STOP 1
+ if (btest (i, o+2)) STOP 2
+ if (iand (i, j) .ne. 2) STOP 3
+ if (ibclr (j, o+1) .ne. 1) STOP 4
+ if (ibclr (j, o+2) .ne. 3) STOP 5
+ if (ibits (k, o+1, o+2) .ne. 2) STOP 6
+ if (ibset (j, o+1) .ne. 3) STOP 7
+ if (ibset (j, o+2) .ne. 7) STOP 8
+ if (ieor (i, j) .ne. 1) STOP 9
+ if (ior (i, j) .ne. 3) STOP 10
+ if (ishft (k, o+2) .ne. 48) STOP 11
+ if (ishft (k, o-3) .ne. 1) STOP 12
+ if (ishft (k, o) .ne. 12) STOP 13
+ if (ishftc (k, o+30) .ne. 3) STOP 14
+ if (ishftc (k, o-30) .ne. 48) STOP 15
+ if (ishftc (k, o+1, o+3) .ne. 9) STOP 16
+ if (not (i) .ne. -3) STOP 17
+ if (ishftc (a, 1, bit_size(a)) .ne. 10) STOP 18
+ if (ishftc (1, 1, 32) .ne. 2) STOP 19
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_count.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_count.f90
index 0892d629c04..1c1c8f90912 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_count.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_count.f90
@@ -7,27 +7,27 @@ program intrinsic_count
character(len=10) line
a = .false.
- if (count(a) .ne. 0) call abort
+ if (count(a) .ne. 0) STOP 1
a = .true.
- if (count(a) .ne. 15) call abort
+ if (count(a) .ne. 15) STOP 2
a(1, 1) = .false.
a(2, 2) = .false.
a(2, 5) = .false.
- if (count(a) .ne. 12) call abort
+ if (count(a) .ne. 12) STOP 3
write (line, 9000) count(a)
read (line, 9000) i
- if (i .ne. 12) call abort
+ if (i .ne. 12) STOP 4
b(1:3) = count(a, 2);
- if (b(1) .ne. 4) call abort
- if (b(2) .ne. 3) call abort
- if (b(3) .ne. 5) call abort
+ if (b(1) .ne. 4) STOP 5
+ if (b(2) .ne. 3) STOP 6
+ if (b(3) .ne. 5) STOP 7
b = 0
write (line, 9000) count(a,2)
read (line, 9000) b
- if (b(1) .ne. 4) call abort
- if (b(2) .ne. 3) call abort
- if (b(3) .ne. 5) call abort
+ if (b(1) .ne. 4) STOP 8
+ if (b(2) .ne. 3) STOP 9
+ if (b(3) .ne. 5) STOP 10
9000 format(3I3)
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_cshift.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_cshift.f90
index f188cd8f4bb..df4305e0e47 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_cshift.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_cshift.f90
@@ -7,23 +7,23 @@ program intrinsic_cshift
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
a = cshift (a, 1, 1)
if (any (a .ne. reshape ((/2, 3, 1, 5, 6, 4, 8, 9, 7/), (/3, 3/)))) &
- call abort
+ STOP 1
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
a = cshift (a, -2, dim = 2)
if (any (a .ne. reshape ((/4, 5, 6, 7, 8, 9, 1, 2, 3/), (/3, 3/)))) &
- call abort
+ STOP 2
! Array shift
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
a = cshift (a, (/1, 0, -1/))
if (any (a .ne. reshape ((/2, 3, 1, 4, 5, 6, 9, 7, 8/), (/3, 3/)))) &
- call abort
+ STOP 3
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
a = cshift (a, (/2, -2, 0/), dim = 2)
if (any (a .ne. reshape ((/7, 5, 3, 1, 8, 6, 4, 2, 9/), (/3, 3/)))) &
- call abort
+ STOP 4
! Test arrays > rank 2
b = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17,&
@@ -31,13 +31,13 @@ program intrinsic_cshift
b = cshift (b, 1)
if (any (b .ne. reshape ((/2, 3, 1, 5, 6, 4, 8, 9, 7, 12, 13, 11, 15,&
16, 14, 18, 19, 17/), (/3, 3, 2/)))) &
- call abort
+ STOP 5
b = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17,&
18, 19/), (/3, 3, 2/))
b = cshift (b, reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/)), 3)
if (any (b .ne. reshape ((/11, 2, 13, 4, 15, 6, 17, 8, 19, 1, 12, 3,&
14, 5, 16, 7, 18, 9/), (/3, 3, 2/)))) &
- call abort
+ STOP 6
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dim.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dim.f90
index 4753de3606d..8464931bf79 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dim.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dim.f90
@@ -7,14 +7,14 @@ program intrinsic_dim
i = 1
j = 4
- if (dim (i, j) .ne. 0) call abort
- if (dim (j, i) .ne. 3) call abort
+ if (dim (i, j) .ne. 0) STOP 1
+ if (dim (j, i) .ne. 3) STOP 2
r = 1.0
s = 4.0
- if (dim (r, s) .ne. 0.0) call abort
- if (dim (s, r) .ne. 3.0) call abort
+ if (dim (r, s) .ne. 0.0) STOP 3
+ if (dim (s, r) .ne. 3.0) STOP 4
p = 1.0
q = 4.0
- if (dim (p, q) .ne. 0.0) call abort
- if (dim (q, p) .ne. 3.0) call abort
+ if (dim (p, q) .ne. 0.0) STOP 5
+ if (dim (q, p) .ne. 3.0) STOP 6
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dotprod.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dotprod.f90
index 5444dd6dac1..fbf18bb6a02 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dotprod.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dotprod.f90
@@ -13,13 +13,13 @@ program testforall
b = (/4, 5, 6/);
c = (/4, 5, 6/);
- if (dot_product(a, b) .ne. 32) call abort
+ if (dot_product(a, b) .ne. 32) STOP 1
r = dot_product(a, c)
- if (abs(r - 32.0) .gt. 0.001) call abort
+ if (abs(r - 32.0) .gt. 0.001) STOP 2
z1 = (/(1.0, 2.0), (2.0, 3.0)/)
z2 = (/(3.0, 4.0), (4.0, 5.0)/)
z = dot_product (z1, z2)
- if (abs (z - (34.0, -4.0)) .gt. 0.001) call abort
+ if (abs (z - (34.0, -4.0)) .gt. 0.001) STOP 3
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dprod.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dprod.f90
index feb3367934b..a0b5406717e 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dprod.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dprod.f90
@@ -8,6 +8,6 @@ program intrinsic_dprod
r = 2e30
s = 4e30
dp = dprod (r, s)
- if ((dp .gt. 8.001d60) .or. (dp .lt. 7.999d60)) call abort
+ if ((dp .gt. 8.001d60) .or. (dp .lt. 7.999d60)) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dummy.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dummy.f90
index 2e8a3401492..404d323ec93 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dummy.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_dummy.f90
@@ -9,7 +9,7 @@ subroutine test (proc)
b = sin (a)
c = proc (a)
- if (abs (b - c) .gt. 0.001) call abort
+ if (abs (b - c) .gt. 0.001) STOP 1
end subroutine
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_eoshift.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_eoshift.f90
index c4bbcdd689c..9fb91a4e890 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_eoshift.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_eoshift.f90
@@ -8,95 +8,95 @@ program intrinsic_eoshift
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
a = eoshift (a, 1, 99, 1)
if (any (a .ne. reshape ((/2, 3, 99, 5, 6, 99, 8, 9, 99/), (/3, 3/)))) &
- call abort
+ STOP 1
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
a = eoshift (a, 9999, 99, 1)
- if (any (a .ne. 99)) call abort
+ if (any (a .ne. 99)) STOP 2
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
a = eoshift (a, -2, dim = 2)
if (any (a .ne. reshape ((/0, 0, 0, 0, 0, 0, 1, 2, 3/), (/3, 3/)))) &
- call abort
+ STOP 3
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
a = eoshift (a, -9999, 99, 1)
- if (any (a .ne. 99)) call abort
+ if (any (a .ne. 99)) STOP 4
! Array shift and scalar bound.
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
a = eoshift (a, (/1, 0, -1/), 99, 1)
if (any (a .ne. reshape ((/2, 3, 99, 4, 5, 6, 99, 7, 8/), (/3, 3/)))) &
- call abort
+ STOP 5
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
a = eoshift (a, (/9999, 0, -9999/), 99, 1)
if (any (a .ne. reshape ((/99, 99, 99, 4, 5, 6, 99, 99, 99/), (/3, 3/)))) &
- call abort
+ STOP 6
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
a = eoshift (a, (/2, -2, 0/), dim = 2)
if (any (a .ne. reshape ((/7, 0, 3, 0, 0, 6, 0, 2, 9/), (/3, 3/)))) &
- call abort
+ STOP 7
! Scalar shift and array bound.
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
a = eoshift (a, 1, (/99, -1, 42/), 1)
if (any (a .ne. reshape ((/2, 3, 99, 5, 6, -1, 8, 9, 42/), (/3, 3/)))) &
- call abort
+ STOP 8
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
a = eoshift (a, 9999, (/99, -1, 42/), 1)
if (any (a .ne. reshape ((/99, 99, 99, -1, -1, -1, 42, 42, 42/), &
- (/3, 3/)))) call abort
+ (/3, 3/)))) STOP 9
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
a = eoshift (a, -9999, (/99, -1, 42/), 1)
if (any (a .ne. reshape ((/99, 99, 99, -1, -1, -1, 42, 42, 42/), &
- (/3, 3/)))) call abort
+ (/3, 3/)))) STOP 10
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
a = eoshift (a, -2, (/99, -1, 42/), 2)
if (any (a .ne. reshape ((/99, -1, 42, 99, -1, 42, 1, 2, 3/), (/3, 3/)))) &
- call abort
+ STOP 11
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
bo = (/99, -1, 42/)
a = eoshift (a, -2, bo, 2)
if (any (a .ne. reshape ((/99, -1, 42, 99, -1, 42, 1, 2, 3/), (/3, 3/)))) &
- call abort
+ STOP 12
! Array shift and array bound.
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
a = eoshift (a, (/1, 0, -1/), (/99, -1, 42/), 1)
if (any (a .ne. reshape ((/2, 3, 99, 4, 5, 6, 42, 7, 8/), (/3, 3/)))) &
- call abort
+ STOP 13
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
a = eoshift (a, (/2, -2, 0/), (/99, -1, 42/), 2)
if (any (a .ne. reshape ((/7, -1, 3, 99, -1, 6, 99, 2, 9/), (/3, 3/)))) &
- call abort
+ STOP 14
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
sh = (/ 3, -1, -3 /)
bo = (/-999, -99, -9 /)
a = eoshift(a, shift=sh, boundary=bo)
if (any (a .ne. reshape ((/ -999, -999, -999, -99, 4, 5, -9, -9, -9 /), &
- shape(a)))) call abort
+ shape(a)))) STOP 15
a = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
a = eoshift (a, (/9999, -9999, 0/), (/99, -1, 42/), 2)
if (any (a .ne. reshape ((/99, -1, 3, 99, -1, 6, 99, -1, 9/), (/3, 3/)))) &
- call abort
+ STOP 16
! Test arrays > rank 2
b(:, :, 1) = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
b(:, :, 2) = 10 + reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
b = eoshift (b, 1, 99, 1)
if (any (b(:, :, 1) .ne. reshape ((/2, 3, 99, 5, 6, 99, 8, 9, 99/), (/3, 3/)))) &
- call abort
+ STOP 17
if (any (b(:, :, 2) .ne. reshape ((/12, 13, 99, 15, 16, 99, 18, 19, 99/), (/3, 3/)))) &
- call abort
+ STOP 18
! TODO: Test array sections
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_fraction_exponent.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_fraction_exponent.f90
index c469cb4340b..ed7e2f1521d 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_fraction_exponent.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_fraction_exponent.f90
@@ -66,7 +66,7 @@ if (z .gt. 0) then
else
y = (y / 2.) * (2. ** (z + 1))
end if
-if (abs (x - y) .gt. spacing (max (abs (x), abs (y)))) call abort()
+if (abs (x - y) .gt. spacing (max (abs (x), abs (y)))) STOP 1
end
subroutine test_8(x)
@@ -79,6 +79,6 @@ if (z .gt. 0) then
else
y = (y / 2._8) * (2._8 ** (z + 1))
end if
-if (abs (x - y) .gt. spacing (max (abs (x), abs(y)))) call abort()
+if (abs (x - y) .gt. spacing (max (abs (x), abs(y)))) STOP 2
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_index.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_index.f90
index 76f0aae532a..bbfe0bf5a5e 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_index.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_index.f90
@@ -2,9 +2,9 @@
program test
character(len=10) a
integer w
- if (index("FORTRAN", "R") .ne. 3) call abort
- if (index("FORTRAN", "R", .TRUE.) .ne. 5) call abort
- if (w ("FORTRAN") .ne. 3) call abort
+ if (index("FORTRAN", "R") .ne. 3) STOP 1
+ if (index("FORTRAN", "R", .TRUE.) .ne. 5) STOP 2
+ if (w ("FORTRAN") .ne. 3) STOP 3
end
function w(str)
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_integer.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_integer.f90
index 43578ed54a7..e8b3f53e8e4 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_integer.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_integer.f90
@@ -13,6 +13,6 @@ subroutine test(val, res)
integer, dimension(4) :: res
if ((floor(val) .ne. res(1)) .or. (ceiling(val) .ne. res(2)) &
- .or. (int(val) .ne. res(3)) .or. (nint(val) .ne. res(4))) call abort
+ .or. (int(val) .ne. res(3)) .or. (nint(val) .ne. res(4))) STOP 1
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_leadz.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_leadz.f90
index 80b61c83d29..0bb40e9b7ea 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_leadz.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_leadz.f90
@@ -12,35 +12,35 @@ program test_intrinsic_leadz
integer(kind=4) :: z4, i4, e4
integer(kind=8) :: z8, i8, e8
- if (leadz(0_1) /= 8) call abort()
- if (leadz(0_2) /= 16) call abort()
- if (leadz(0_4) /= 32) call abort()
- if (leadz(0_8) /= 64) call abort()
-
- if (leadz(1_1) /= 7) call abort()
- if (leadz(1_2) /= 15) call abort()
- if (leadz(1_4) /= 31) call abort()
- if (leadz(1_8) /= 63) call abort()
-
- if (leadz(8_1) /= 4) call abort()
- if (leadz(8_2) /= 12) call abort()
- if (leadz(8_4) /= 28) call abort()
- if (leadz(8_8) /= 60) call abort()
-
- if (leadz(z1) /= 8) call abort()
- if (leadz(z2) /= 16) call abort()
- if (leadz(z4) /= 32) call abort()
- if (leadz(z8) /= 64) call abort()
-
- if (leadz(i1) /= 7) call abort()
- if (leadz(i2) /= 15) call abort()
- if (leadz(i4) /= 31) call abort()
- if (leadz(i8) /= 63) call abort()
-
- if (leadz(e1) /= 4) call abort()
- if (leadz(e2) /= 12) call abort()
- if (leadz(e4) /= 28) call abort()
- if (leadz(e8) /= 60) call abort()
+ if (leadz(0_1) /= 8) STOP 1
+ if (leadz(0_2) /= 16) STOP 2
+ if (leadz(0_4) /= 32) STOP 3
+ if (leadz(0_8) /= 64) STOP 4
+
+ if (leadz(1_1) /= 7) STOP 5
+ if (leadz(1_2) /= 15) STOP 6
+ if (leadz(1_4) /= 31) STOP 7
+ if (leadz(1_8) /= 63) STOP 8
+
+ if (leadz(8_1) /= 4) STOP 9
+ if (leadz(8_2) /= 12) STOP 10
+ if (leadz(8_4) /= 28) STOP 11
+ if (leadz(8_8) /= 60) STOP 12
+
+ if (leadz(z1) /= 8) STOP 13
+ if (leadz(z2) /= 16) STOP 14
+ if (leadz(z4) /= 32) STOP 15
+ if (leadz(z8) /= 64) STOP 16
+
+ if (leadz(i1) /= 7) STOP 17
+ if (leadz(i2) /= 15) STOP 18
+ if (leadz(i4) /= 31) STOP 19
+ if (leadz(i8) /= 63) STOP 20
+
+ if (leadz(e1) /= 4) STOP 21
+ if (leadz(e2) /= 12) STOP 22
+ if (leadz(e4) /= 28) STOP 23
+ if (leadz(e8) /= 60) STOP 24
end subroutine test_leadz
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_len.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_len.f90
index 9db8d407a94..8cc87c93476 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_len.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_len.f90
@@ -10,8 +10,8 @@ program test
integer n
a = w (n)
- if ((a .ne. "01234567") .or. (n .ne. 8)) call abort
- if (len(Tom%name) .ne. 10) call abort
+ if ((a .ne. "01234567") .or. (n .ne. 8)) STOP 1
+ if (len(Tom%name) .ne. 10) STOP 2
call array_test()
end
@@ -26,6 +26,6 @@ end
subroutine array_test
implicit none
character(len=10) a(4)
- if (len(a) .NE. 10) call abort()
+ if (len(a) .NE. 10) STOP 1
end subroutine array_test
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_matmul.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_matmul.f90
index 9364f1e1d8b..fb95132e784 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_matmul.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_matmul.f90
@@ -16,17 +16,17 @@ program intrinsic_matmul
y = (/1, 2, 3/)
r = matmul(a, b)
- if (any(r .ne. reshape((/14, 20, 26, 38/), (/2, 2/)))) call abort
+ if (any(r .ne. reshape((/14, 20, 26, 38/), (/2, 2/)))) STOP 1
v = matmul(x, a)
- if (any(v .ne. (/5, 8, 11/))) call abort
+ if (any(v .ne. (/5, 8, 11/))) STOP 2
v(1:2) = matmul(a, y)
- if (any(v(1:2) .ne. (/14, 20/))) call abort
+ if (any(v(1:2) .ne. (/14, 20/))) STOP 3
aa = reshape((/ 1.0, 1.0, 0.0, 1.0/), shape(aa))
cc = 42.
cc(1:2,1:2) = matmul(aa, transpose(aa))
- if (any(cc(1:2,1:2) .ne. reshape((/ 1.0, 1.0, 1.0, 2.0 /), (/2,2/)))) call abort
- if (any(cc(3:4,1:2) .ne. 42.)) call abort
+ if (any(cc(1:2,1:2) .ne. reshape((/ 1.0, 1.0, 1.0, 2.0 /), (/2,2/)))) STOP 4
+ if (any(cc(3:4,1:2) .ne. 42.)) STOP 5
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_merge.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_merge.f90
index b4fc18f4dd6..2353f311b13 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_merge.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_merge.f90
@@ -6,10 +6,10 @@ program intrinsic_merge
a = (/-1, 2, 3/)
i = 5
- if (merge (-1, 1, i .gt. 3) .ne. -1) call abort
+ if (merge (-1, 1, i .gt. 3) .ne. -1) STOP 1
i = 1
- if (merge (-1, 1, i .ge. 3) .ne. 1) call abort
+ if (merge (-1, 1, i .ge. 3) .ne. 1) STOP 2
b = merge(a, 0, a .ge. 0)
- if (any (b .ne. (/0, 2, 3/))) call abort
+ if (any (b .ne. (/0, 2, 3/))) STOP 3
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_minmax.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_minmax.f90
index 02feaad1523..af91fda4f96 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_minmax.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_minmax.f90
@@ -8,30 +8,30 @@ program intrinsic_minmax
j = -2
k = 3
m = 4
- if (min (i, k) .ne. 1) call abort
- if (min (i, j, k, m) .ne. -2) call abort
- if (max (i, k) .ne. 3) call abort
- if (max (i, j, k, m) .ne. 4) call abort
- if (max (i+1, j) .ne. 2) call abort
+ if (min (i, k) .ne. 1) STOP 1
+ if (min (i, j, k, m) .ne. -2) STOP 2
+ if (max (i, k) .ne. 3) STOP 3
+ if (max (i, j, k, m) .ne. 4) STOP 4
+ if (max (i+1, j) .ne. 2) STOP 5
r = 1
s = -2
t = 3
u = 4
- if (min (r, t) .ne. 1) call abort
- if (min (r, s, t, u) .ne. -2) call abort
- if (max (r, t) .ne. 3) call abort
- if (max (r, s, t, u) .ne. 4) call abort
+ if (min (r, t) .ne. 1) STOP 6
+ if (min (r, s, t, u) .ne. -2) STOP 7
+ if (max (r, t) .ne. 3) STOP 8
+ if (max (r, s, t, u) .ne. 4) STOP 9
- if (max (4d0, r) .ne. 4d0) call abort
- if (amax0 (i, j) .ne. 1.0) call abort
- if (min1 (r, s) .ne. -2) call abort
+ if (max (4d0, r) .ne. 4d0) STOP 10
+ if (amax0 (i, j) .ne. 1.0) STOP 11
+ if (min1 (r, s) .ne. -2) STOP 12
! Test simplify.
- if (min (1, -2, 3, 4) .ne. -2) call abort
- if (max (1, -2, 3, 4) .ne. 4) call abort
- if (amax0 (1, -2) .ne. 1.0) call abort
- if (min1 (1., -2.) .ne. -2) call abort
+ if (min (1, -2, 3, 4) .ne. -2) STOP 13
+ if (max (1, -2, 3, 4) .ne. 4) STOP 14
+ if (amax0 (1, -2) .ne. 1.0) STOP 15
+ if (min1 (1., -2.) .ne. -2) STOP 16
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc.f90
index 03273e1b22c..a58bdeb68ea 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc.f90
@@ -11,107 +11,107 @@ program testmmloc
tr = .true.
b = minloc (a, 1)
- if (b(1) .ne. 1) call abort
- if (b(2) .ne. 2) call abort
- if (b(3) .ne. 3) call abort
+ if (b(1) .ne. 1) STOP 1
+ if (b(2) .ne. 2) STOP 2
+ if (b(3) .ne. 3) STOP 3
b = -1
write (line, 9000) minloc(a,1)
read (line, 9000) b
- if (b(1) .ne. 1) call abort
- if (b(2) .ne. 2) call abort
- if (b(3) .ne. 3) call abort
+ if (b(1) .ne. 1) STOP 4
+ if (b(2) .ne. 2) STOP 5
+ if (b(3) .ne. 3) STOP 6
m = .true.
m(1, 1) = .false.
m(1, 2) = .false.
b = minloc (a, 1, m)
- if (b(1) .ne. 2) call abort
- if (b(2) .ne. 2) call abort
- if (b(3) .ne. 3) call abort
+ if (b(1) .ne. 2) STOP 7
+ if (b(2) .ne. 2) STOP 8
+ if (b(3) .ne. 3) STOP 9
b = minloc (a, 1, m .and. tr)
- if (b(1) .ne. 2) call abort
- if (b(2) .ne. 2) call abort
- if (b(3) .ne. 3) call abort
+ if (b(1) .ne. 2) STOP 10
+ if (b(2) .ne. 2) STOP 11
+ if (b(3) .ne. 3) STOP 12
b = -1
write (line, 9000) minloc(a, 1, m)
read (line, 9000) b
- if (b(1) .ne. 2) call abort
- if (b(2) .ne. 2) call abort
- if (b(3) .ne. 3) call abort
+ if (b(1) .ne. 2) STOP 13
+ if (b(2) .ne. 2) STOP 14
+ if (b(3) .ne. 3) STOP 15
b(1:2) = minloc(a)
- if (b(1) .ne. 1) call abort
- if (b(2) .ne. 1) call abort
+ if (b(1) .ne. 1) STOP 16
+ if (b(2) .ne. 1) STOP 17
b = -1
write (line, 9000) minloc(a)
read (line, 9000) b
- if (b(1) .ne. 1) call abort
- if (b(2) .ne. 1) call abort
- if (b(3) .ne. 0) call abort
+ if (b(1) .ne. 1) STOP 18
+ if (b(2) .ne. 1) STOP 19
+ if (b(3) .ne. 0) STOP 20
b(1:2) = minloc(a, mask=m)
- if (b(1) .ne. 2) call abort
- if (b(2) .ne. 1) call abort
+ if (b(1) .ne. 2) STOP 21
+ if (b(2) .ne. 1) STOP 22
b(1:2) = minloc(a, mask=m .and. tr)
- if (b(1) .ne. 2) call abort
- if (b(2) .ne. 1) call abort
+ if (b(1) .ne. 2) STOP 23
+ if (b(2) .ne. 1) STOP 24
b = -1
write (line, 9000) minloc(a, mask=m)
read (line, 9000) b
- if (b(1) .ne. 2) call abort
- if (b(2) .ne. 1) call abort
- if (b(3) .ne. 0) call abort
+ if (b(1) .ne. 2) STOP 25
+ if (b(2) .ne. 1) STOP 26
+ if (b(3) .ne. 0) STOP 27
b = maxloc (a, 1)
- if (b(1) .ne. 3) call abort
- if (b(2) .ne. 3) call abort
- if (b(3) .ne. 1) call abort
+ if (b(1) .ne. 3) STOP 28
+ if (b(2) .ne. 3) STOP 29
+ if (b(3) .ne. 1) STOP 30
b = -1
write (line, 9000) maxloc(a, 1)
read (line, 9000) b
- if (b(1) .ne. 3) call abort
- if (b(2) .ne. 3) call abort
- if (b(3) .ne. 1) call abort
+ if (b(1) .ne. 3) STOP 31
+ if (b(2) .ne. 3) STOP 32
+ if (b(3) .ne. 1) STOP 33
m = .true.
m(1, 2) = .false.
m(1, 3) = .false.
b = maxloc (a, 1, m)
- if (b(1) .ne. 3) call abort
- if (b(2) .ne. 3) call abort
- if (b(3) .ne. 2) call abort
+ if (b(1) .ne. 3) STOP 34
+ if (b(2) .ne. 3) STOP 35
+ if (b(3) .ne. 2) STOP 36
b = maxloc (a, 1, m .and. tr)
- if (b(1) .ne. 3) call abort
- if (b(2) .ne. 3) call abort
- if (b(3) .ne. 2) call abort
+ if (b(1) .ne. 3) STOP 37
+ if (b(2) .ne. 3) STOP 38
+ if (b(3) .ne. 2) STOP 39
b = -1
write (line, 9000) maxloc(a, 1, m)
read (line, 9000) b
- if (b(1) .ne. 3) call abort
- if (b(2) .ne. 3) call abort
- if (b(3) .ne. 2) call abort
+ if (b(1) .ne. 3) STOP 40
+ if (b(2) .ne. 3) STOP 41
+ if (b(3) .ne. 2) STOP 42
b(1:2) = maxloc(a)
- if (b(1) .ne. 1) call abort
- if (b(2) .ne. 3) call abort
+ if (b(1) .ne. 1) STOP 43
+ if (b(2) .ne. 3) STOP 44
b = -1
write (line, 9000) maxloc(a)
read (line, 9000) b
- if (b(1) .ne. 1) call abort
- if (b(2) .ne. 3) call abort
+ if (b(1) .ne. 1) STOP 45
+ if (b(2) .ne. 3) STOP 46
b(1:2) = maxloc(a, mask=m)
- if (b(1) .ne. 2) call abort
- if (b(2) .ne. 3) call abort
+ if (b(1) .ne. 2) STOP 47
+ if (b(2) .ne. 3) STOP 48
b(1:2) = maxloc(a, mask=m .and. tr)
- if (b(1) .ne. 2) call abort
- if (b(2) .ne. 3) call abort
+ if (b(1) .ne. 2) STOP 49
+ if (b(2) .ne. 3) STOP 50
b = -1
write (line, 9000) maxloc(a, mask=m)
read (line, 9000) b
- if (b(1) .ne. 2) call abort
- if (b(2) .ne. 3) call abort
- if (b(3) .ne. 0) call abort
+ if (b(1) .ne. 2) STOP 51
+ if (b(2) .ne. 3) STOP 52
+ if (b(3) .ne. 0) STOP 53
9000 format (3I3)
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc_2.f90
index 5f0b5b5da1d..d363f23e514 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc_2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc_2.f90
@@ -10,13 +10,13 @@ program intrinsic_mmloc_2
b(2) = 1
c(1) = 1
- if (maxloc (a, 1) .ne. 1) call abort()
- if (maxloc (b, 1) .ne. 1) call abort()
- if (maxloc (c, 1) .ne. 1) call abort()
+ if (maxloc (a, 1) .ne. 1) STOP 1
+ if (maxloc (b, 1) .ne. 1) STOP 2
+ if (maxloc (c, 1) .ne. 1) STOP 3
! We were giving MINLOC and MAXLOC the wrong return type
vc = (/4.0d0, 2.50d1, 1.0d1/)
i = minloc (vc)
- if (i(1) .ne. 1) call abort()
+ if (i(1) .ne. 1) STOP 4
END PROGRAM
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc_3.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc_3.f90
index 078a08d70b4..7cce0bc2c76 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc_3.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc_3.f90
@@ -10,31 +10,31 @@ program intrinsic_mmloc_3
l = .true.
d = -huge (d)
- if (maxloc (d, 1) .ne. 1) call abort ()
+ if (maxloc (d, 1) .ne. 1) STOP 1
d = huge (d)
- if (minloc (d, 1) .ne. 1) call abort ()
+ if (minloc (d, 1) .ne. 1) STOP 2
d = -huge (d)
- if (maxloc (d, 1, k) .ne. 1) call abort ()
+ if (maxloc (d, 1, k) .ne. 1) STOP 3
d = huge (d)
- if (minloc (d, 1, k) .ne. 1) call abort ()
+ if (minloc (d, 1, k) .ne. 1) STOP 4
a = -huge (a)
d = maxloc (a)
- if (any (d .ne. 1)) call abort ()
+ if (any (d .ne. 1)) STOP 5
a = huge (a)
d = minloc (a)
- if (any (d .ne. 1)) call abort ()
+ if (any (d .ne. 1)) STOP 6
a = -huge (a)
d = maxloc (a, l)
- if (any (d .ne. 1)) call abort ()
+ if (any (d .ne. 1)) STOP 7
a = huge (a)
d = minloc (a, l)
- if (any (d .ne. 1)) call abort ()
+ if (any (d .ne. 1)) STOP 8
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc_4.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc_4.f90
index 2a53fb0124a..22b6afdebfe 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc_4.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmloc_4.f90
@@ -6,8 +6,8 @@ program intrinsic_mmloc_4
integer, dimension(2) :: b
allocate (d(0))
- if (maxloc (d, 1) .ne. 0) call abort()
+ if (maxloc (d, 1) .ne. 0) STOP 1
allocate (a(1, 0))
b = minloc (a)
- if (any (b .ne. 0)) call abort()
+ if (any (b .ne. 0)) STOP 2
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmval.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmval.f90
index cfd1a5b2d74..5b2058335ee 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmval.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mmval.f90
@@ -12,34 +12,34 @@ program testmmval
tr = .true.
b = minval (a, 1)
- if (any(b .ne. (/1, 4, 7/))) call abort
+ if (any(b .ne. (/1, 4, 7/))) STOP 1
write (line, 9000) minval (a, 1)
- if (line .ne. ' 1 4 7') call abort
+ if (line .ne. ' 1 4 7') STOP 2
m = .true.
m(1, 1) = .false.
m(1, 2) = .false.
b = minval (a, 1, m)
- if (any(b .ne. (/2, 4, 7/))) call abort
+ if (any(b .ne. (/2, 4, 7/))) STOP 3
b = minval (a, 1, m .and. tr)
- if (any(b .ne. (/2, 4, 7/))) call abort
+ if (any(b .ne. (/2, 4, 7/))) STOP 4
write (line, 9000) minval(a, 1, m)
- if (line .ne. ' 2 4 7') call abort
+ if (line .ne. ' 2 4 7') STOP 5
b = maxval (a, 1)
- if (any(b .ne. (/3, 6, 9/))) call abort
+ if (any(b .ne. (/3, 6, 9/))) STOP 6
write (line, 9000) maxval (a, 1)
- if (line .ne. ' 3 6 9') call abort
+ if (line .ne. ' 3 6 9') STOP 7
m = .true.
m(1, 2) = .false.
m(1, 3) = .false.
b = maxval (a, 1, m)
- if (any(b .ne. (/3, 6, 8/))) call abort
+ if (any(b .ne. (/3, 6, 8/))) STOP 8
b = maxval (a, 1, m .and. tr)
- if (any(b .ne. (/3, 6, 8/))) call abort
+ if (any(b .ne. (/3, 6, 8/))) STOP 9
write (line, 9000) maxval(a, 1, m)
- if (line .ne. ' 3 6 8') call abort
+ if (line .ne. ' 3 6 8') STOP 10
9000 format(3I3)
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mod_ulo.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mod_ulo.f90
index 4fdf42c37d7..c073e873942 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mod_ulo.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mod_ulo.f90
@@ -5,7 +5,7 @@ subroutine integertest (ops, res)
integer, dimension(2) :: res
if ((mod(ops(1), ops(2)) .ne. res(1)) .or. &
- (modulo(ops(1), ops(2)) .ne. res(2))) call abort
+ (modulo(ops(1), ops(2)) .ne. res(2))) STOP 1
end subroutine
subroutine real4test (ops, res)
@@ -14,7 +14,7 @@ subroutine real4test (ops, res)
real(kind=4), dimension(2) :: res
if (diff(mod(ops(1), ops(2)), res(1)) .or. &
- diff(modulo(ops(1), ops(2)), res(2))) call abort
+ diff(modulo(ops(1), ops(2)), res(2))) STOP 2
contains
function diff(a, b)
real(kind=4) :: a, b
@@ -30,7 +30,7 @@ subroutine real8test (ops, res)
real(kind=8), dimension(2) :: res
if (diff(mod(ops(1), ops(2)), res(1)) .or. &
- diff(modulo(ops(1), ops(2)), res(2))) call abort
+ diff(modulo(ops(1), ops(2)), res(2))) STOP 3
contains
function diff(a, b)
real(kind=8) :: a, b
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mvbits.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mvbits.f90
index 3437e9f0c9d..c423d4fe71c 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mvbits.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_mvbits.f90
@@ -7,10 +7,10 @@ DATA to / z'77760000' /
DATA result / z'7777FFFE' /
CALL mvbits(from, 2, 16, to, 1)
-if (to /= result) CALL abort()
+if (to /= result) STOP 1
to8 = 0_8
from8 = b'1011'*2_8**32
call mvbits (from8, 33, 3, to8, 2)
-if (to8 /= b'10100') call abort
+if (to8 /= b'10100') STOP 1
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_nearest.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_nearest.f90
index 364a3ac345e..ec2bc186094 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_nearest.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_nearest.f90
@@ -23,7 +23,7 @@ program test_nearest
s = 0
x = nearest(s, r)
y = nearest(s, -r)
- if (.not. (x .gt. s .and. y .lt. s )) call abort()
+ if (.not. (x .gt. s .and. y .lt. s )) STOP 1
! ??? This is pretty sketchy, but passes on most targets.
infi = z'7f800000'
@@ -51,27 +51,27 @@ subroutine test_up(s, e)
real s, e, x
x = nearest(s, 1.0)
- if (x .ne. e) call abort()
+ if (x .ne. e) STOP 2
end
subroutine test_down(s, e)
real s, e, x
x = nearest(s, -1.0)
- if (x .ne. e) call abort()
+ if (x .ne. e) STOP 3
end
subroutine test_n(s1, r)
real r, s1, x
x = nearest(s1, r)
- if (nearest(x, -r) .ne. s1) call abort()
+ if (nearest(x, -r) .ne. s1) STOP 4
x = nearest(s1, -r)
- if (nearest(x, r) .ne. s1) call abort()
+ if (nearest(x, r) .ne. s1) STOP 5
s1 = -s1
x = nearest(s1, r)
- if (nearest(x, -r) .ne. s1) call abort()
+ if (nearest(x, -r) .ne. s1) STOP 6
x = nearest(s1, -r)
- if (nearest(x, r) .ne. s1) call abort()
+ if (nearest(x, r) .ne. s1) STOP 7
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_pack.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_pack.f90
index 28cd1cd8f03..96831a8de82 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_pack.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_pack.f90
@@ -7,18 +7,18 @@ program intrinsic_pack
a = reshape (val, (/3, 3/))
b = 0
b(1:6:3) = pack (a, a .ne. 0);
- if (any (b(1:6:3) .ne. (/9, 7/))) call abort
+ if (any (b(1:6:3) .ne. (/9, 7/))) STOP 1
b = pack (a(2:3, 2:3), a(2:3, 2:3) .ne. 0, (/1, 2, 3, 4, 5, 6/));
- if (any (b .ne. (/9, 7, 3, 4, 5, 6/))) call abort
+ if (any (b .ne. (/9, 7, 3, 4, 5, 6/))) STOP 2
call tests_with_temp()
contains
subroutine tests_with_temp
! A few tests which involve a temporary
- if (any (pack(a, a.ne.0) .ne. (/9, 7/))) call abort
- if (any (pack(a, .true.) .ne. val)) call abort
- if (size(pack (a, .false.)) .ne. 0) call abort
- if (any (pack(a, .false., (/1,2,3/)).ne. (/1,2,3/))) call abort
+ if (any (pack(a, a.ne.0) .ne. (/9, 7/))) STOP 3
+ if (any (pack(a, .true.) .ne. val)) STOP 4
+ if (size(pack (a, .false.)) .ne. 0) STOP 5
+ if (any (pack(a, .false., (/1,2,3/)).ne. (/1,2,3/))) STOP 6
end subroutine tests_with_temp
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_present.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_present.f90
index d2e9981353d..7a16e902537 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_present.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_present.f90
@@ -6,14 +6,14 @@ program intrinsic_present
integer, dimension(10) :: c
integer, pointer, dimension(:) :: d
- if (testvar()) call abort ()
- if (.not. testvar(a)) call abort ()
- if (testptr()) call abort ()
- if (.not. testptr(b)) call abort ()
- if (testarray()) call abort ()
- if (.not. testarray(c)) call abort ()
- if (testparray()) call abort ()
- if (.not. testparray(d)) call abort ()
+ if (testvar()) STOP 1
+ if (.not. testvar(a)) STOP 2
+ if (testptr()) STOP 3
+ if (.not. testptr(b)) STOP 4
+ if (testarray()) STOP 5
+ if (.not. testarray(c)) STOP 6
+ if (testparray()) STOP 7
+ if (.not. testparray(d)) STOP 8
contains
logical function testvar (p)
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_product.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_product.f90
index 6ada0a42191..88162ca2cb2 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_product.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_product.f90
@@ -12,35 +12,35 @@ program testproduct
tr = .true.
- if (any(b .ne. (/6, 120, 504/))) call abort
+ if (any(b .ne. (/6, 120, 504/))) STOP 1
write (line, 9000) product(a,1)
- if (line .ne. ' 6 120 504') call abort
+ if (line .ne. ' 6 120 504') STOP 2
- if (product (a) .ne. 362880) call abort
+ if (product (a) .ne. 362880) STOP 3
write (line, 9010) product(a)
- if (line .ne. '362880') call abort
+ if (line .ne. '362880') STOP 4
m = .true.
m(1, 1) = .false.
m(2, 1) = .false.
b = product (a, 2, m)
- if (any(b .ne. (/28, 40, 162/))) call abort
+ if (any(b .ne. (/28, 40, 162/))) STOP 5
b = product (a, 2, m .and. tr)
- if (any(b .ne. (/28, 40, 162/))) call abort
+ if (any(b .ne. (/28, 40, 162/))) STOP 6
write (line, 9000) product(a, 2, m)
- if (line .ne. ' 28 40 162') call abort
+ if (line .ne. ' 28 40 162') STOP 7
- if (product (a, mask=m) .ne. 181440) call abort
+ if (product (a, mask=m) .ne. 181440) STOP 8
- if (product (a, mask=m .and. tr) .ne. 181440) call abort
+ if (product (a, mask=m .and. tr) .ne. 181440) STOP 9
write (line, 9010) product(a, mask=m)
- if (line .ne. '181440') call abort
+ if (line .ne. '181440') STOP 10
9000 format (3I4)
9010 format (I6)
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_rrspacing.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_rrspacing.f90
index e74cf6494fc..fd65bce2032 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_rrspacing.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_rrspacing.f90
@@ -15,7 +15,7 @@ subroutine test_real4(orig)
p = 24
y = abs (x * 2.0 ** (- exponent (x))) * (2.0 ** p)
x = rrspacing(x)
- if (abs (x - y) .gt. abs(x * 1e-6)) call abort
+ if (abs (x - y) .gt. abs(x * 1e-6)) STOP 1
end
subroutine test_real8(orig)
@@ -25,5 +25,5 @@ subroutine test_real8(orig)
p = 53
y = abs (x * 2.0 ** (- exponent (x))) * (2.0 ** p)
x = rrspacing(x)
- if (abs (x - y) .gt. abs(x * 1e-6)) call abort
+ if (abs (x - y) .gt. abs(x * 1e-6)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_scale.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_scale.f90
index 775c4d7b4b5..0fef35e1b37 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_scale.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_scale.f90
@@ -16,7 +16,7 @@ subroutine test_real4 (orig, i)
x = orig
y = x * (2.0 ** i)
x = scale (x, i)
- if (abs (x - y) .gt. abs(x * 1e-6)) call abort
+ if (abs (x - y) .gt. abs(x * 1e-6)) STOP 1
end
subroutine test_real8 (orig, i)
@@ -25,5 +25,5 @@ subroutine test_real8 (orig, i)
x = orig
y = x * (2.0 ** i)
x = scale (x, i)
- if (abs (x - y) .gt. abs(x * 1e-6)) call abort
+ if (abs (x - y) .gt. abs(x * 1e-6)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_set_exponent.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_set_exponent.f90
index 6f934e591c0..b6ccaa56c44 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_set_exponent.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_set_exponent.f90
@@ -13,35 +13,35 @@ subroutine test_real4()
n = -148
x = 1024.0
y = set_exponent (x, n)
- if ((y .ne. 0.0) .and. (exponent (y) .ne. n)) call abort()
+ if ((y .ne. 0.0) .and. (exponent (y) .ne. n)) STOP 1
n = 8
x = 1024.0
y = set_exponent (x, n)
- if (exponent (y) .ne. n) call abort()
+ if (exponent (y) .ne. n) STOP 2
n = 128
i = 8388607
x = transfer (i, x) ! z'007fffff' Positive denormalized floating-point.
y = set_exponent (x, n)
- if (exponent (y) .ne. n) call abort()
+ if (exponent (y) .ne. n) STOP 3
n = -148
x = -1024.0
y = set_exponent (x, n)
- if ((y .ne. 0.0) .and. (exponent (y) .ne. n)) call abort()
+ if ((y .ne. 0.0) .and. (exponent (y) .ne. n)) STOP 4
n = 8
x = -1024.0
y = set_exponent (x, n)
- if (y .ne. -128.0) call abort()
- if (exponent (y) .ne. n) call abort()
+ if (y .ne. -128.0) STOP 5
+ if (exponent (y) .ne. n) STOP 6
n = 128
i = -2139095041
x = transfer (i, x) ! z'807fffff' Negative denormalized floating-point.
y = set_exponent (x, n)
- if (exponent (y) .ne. n) call abort()
+ if (exponent (y) .ne. n) STOP 7
end
@@ -54,34 +54,34 @@ subroutine test_real8()
n = -1073
x = 1024.0_8
y = set_exponent (x, n)
- if ((y .ne. 0.0_8) .and. (exponent (y) .ne. n)) call abort()
+ if ((y .ne. 0.0_8) .and. (exponent (y) .ne. n)) STOP 8
n = 8
x = 1024.0_8
y = set_exponent (x, n)
- if (y .ne. 128.0) call abort()
- if (exponent (y) .ne. n) call abort()
+ if (y .ne. 128.0) STOP 9
+ if (exponent (y) .ne. n) STOP 10
n = 1024
i = 4503599627370495_8
x = transfer (i, x) !z'000fffffffffffff' Positive denormalized floating-point.
y = set_exponent (x, n)
- if (exponent (y) .ne. n) call abort()
+ if (exponent (y) .ne. n) STOP 11
n = -1073
x = -1024.0
y = set_exponent (x, n)
- if ((y .ne. 0.0) .and. (exponent (y) .ne. n)) call abort()
+ if ((y .ne. 0.0) .and. (exponent (y) .ne. n)) STOP 12
n = 8
x = -1024.0
y = set_exponent (x, n)
- if (y .ne. -128.0) call abort()
- if (exponent (y) .ne. n) call abort()
+ if (y .ne. -128.0) STOP 13
+ if (exponent (y) .ne. n) STOP 14
n = 1024
i = -9218868437227405313_8
x = transfer (i, x)!z'800fffffffffffff' Negative denormalized floating-point.
y = set_exponent (x, n)
- if (exponent (y) .ne. n) call abort()
+ if (exponent (y) .ne. n) STOP 15
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_shape.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_shape.f90
index e1c5f7b4ba1..eefd0ce64e8 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_shape.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_shape.f90
@@ -8,7 +8,7 @@ program testbounds
allocate (a(3:8, 6:7))
j = shape (a);
- if (any (j .ne. (/ 6, 2 /))) call abort
+ if (any (j .ne. (/ 6, 2 /))) STOP 1
call test(a)
contains
@@ -16,7 +16,7 @@ contains
subroutine test (a)
real, dimension (1:, 1:) :: a
- if (any (shape (a) .ne. (/ 6, 2 /))) call abort
+ if (any (shape (a) .ne. (/ 6, 2 /))) STOP 2
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_si_kind.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_si_kind.f90
index b231dc66ebe..b9a0773a04c 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_si_kind.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_si_kind.f90
@@ -10,26 +10,26 @@ Program test_si_kind
t = huge (i1)
t = log10 (t)
res = selected_int_kind (int (t))
- if (res .ne. 1) call abort
+ if (res .ne. 1) STOP 1
t = huge (i2)
t = log10 (t)
res = selected_int_kind (int (t))
- if (res .ne. 2) call abort
+ if (res .ne. 2) STOP 2
t = huge (i4)
t = log10 (t)
res = selected_int_kind (int (t))
- if (res .ne. 4) call abort
+ if (res .ne. 4) STOP 3
t = huge (i8)
t = log10 (t)
res = selected_int_kind (int (t))
- if (res .ne. 8) call abort
+ if (res .ne. 8) STOP 4
i4 = huge (i4)
res = selected_int_kind (i4)
- if (res .ne. (-1)) call abort
+ if (res .ne. (-1)) STOP 5
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_sign.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_sign.f90
index fbc457d917c..f5e717853e1 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_sign.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_sign.f90
@@ -6,26 +6,26 @@ program intrinsic_sign
i = 2
j = 3
- if (sign (i, j) .ne. 2) call abort
+ if (sign (i, j) .ne. 2) STOP 1
i = 4
j = -5
- if (sign (i, j) .ne. -4) call abort
+ if (sign (i, j) .ne. -4) STOP 2
i = -6
j = 7
- if (sign (i, j) .ne. 6) call abort
+ if (sign (i, j) .ne. 6) STOP 3
i = -8
j = -9
- if (sign (i, j) .ne. -8) call abort
+ if (sign (i, j) .ne. -8) STOP 4
r = 1
s = 2
- if (sign (r, s) .ne. 1) call abort
+ if (sign (r, s) .ne. 1) STOP 5
r = 1
s = -2
- if (sign (r, s) .ne. -1) call abort
+ if (sign (r, s) .ne. -1) STOP 6
s = 0
- if (sign (r, s) .ne. 1) call abort
+ if (sign (r, s) .ne. 1) STOP 7
! Will fail on machines which cannot represent negative zero.
s = -s ! Negative zero
- if (sign (r, s) .ne. -1) call abort
+ if (sign (r, s) .ne. -1) STOP 8
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_size.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_size.f90
index 729c55f2283..d84e7e6dcae 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_size.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_size.f90
@@ -6,21 +6,21 @@ program testsize
integer, dimension(2, 3) :: b
integer i
- if (size (b(2, :), 1) .ne. 3) call abort
+ if (size (b(2, :), 1) .ne. 3) STOP 1
allocate (a(3:8, 5:7))
! With one parameter
- if (size(a) .ne. 18) call abort
+ if (size(a) .ne. 18) STOP 2
! With two parameters, assigning to an array
j = size(a, 1)
- if (any (j .ne. (/6, 6, 6, 6, 6/))) call abort
+ if (any (j .ne. (/6, 6, 6, 6, 6/))) STOP 3
! With a variable second parameter
i = 2
i = size(a, i)
- if (i .ne. 3) call abort
+ if (i .ne. 3) STOP 4
call test(a)
contains
@@ -30,8 +30,8 @@ subroutine test (a)
integer i
i = 2
- if ((size(a, 1) .ne. 6) .or. (size(a, i) .ne. 3)) call abort
- if (size (a) .ne. 18 ) call abort
+ if ((size(a, 1) .ne. 6) .or. (size(a, i) .ne. 3)) STOP 5
+ if (size (a) .ne. 18 ) STOP 6
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_spacing.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_spacing.f90
index 24b31dac2a6..0685717c38a 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_spacing.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_spacing.f90
@@ -19,7 +19,7 @@ subroutine test_real4(orig)
t = tiny(x)
x = spacing(x)
if ((abs (x - y) .gt. abs(x * 1e-6)) &
- .and. (abs (x - t) .gt. abs(x * 1e-6)))call abort
+ .and. (abs (x - t) .gt. abs(x * 1e-6)))STOP 1
end
subroutine test_real8(orig)
@@ -31,5 +31,5 @@ subroutine test_real8(orig)
t = tiny (x)
x = spacing(x)
if ((abs (x - y) .gt. abs(x * 1e-6)) &
- .and. (abs (x - t) .gt. abs(x * 1e-6)))call abort
+ .and. (abs (x - t) .gt. abs(x * 1e-6)))STOP 2
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_spread.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_spread.f90
index 8a89b2d731a..b1d8940ac25 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_spread.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_spread.f90
@@ -7,11 +7,11 @@ program foo
b = spread (a, 1, 2)
if (any (b .ne. reshape ((/1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6/), &
(/2, 2, 3/)))) &
- call abort
+ STOP 1
write(line1, 9000) b
write(line2, 9000) spread (a, 1, 2)
- if (line1 /= line2) call abort
+ if (line1 /= line2) STOP 2
write(line3, 9000) spread (a, 1, 2) + 0
- if (line1 /= line3) call abort
+ if (line1 /= line3) STOP 3
9000 format(12I3)
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_sr_kind.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_sr_kind.f90
index c34a6ca5568..317e494445c 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_sr_kind.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_sr_kind.f90
@@ -13,50 +13,50 @@ Program test_sr_kind
if (i8 .gt. t) i8 = t
res = selected_real_kind (r = i4)
- if (res .ne. 4) call abort
+ if (res .ne. 4) STOP 1
res = selected_real_kind (r = i8)
- if (res .ne. 8) call abort
+ if (res .ne. 8) STOP 2
! We can in fact have kinds wider than r8. How do we want to check?
! res = selected_real_kind (r = (i8 + 1))
-! if (res .ne. -2) call abort
+! if (res .ne. -2) STOP 3
res = selected_real_kind (p = precision (r4))
- if (res .ne. 4) call abort
+ if (res .ne. 4) STOP 4
res = selected_real_kind (p = precision (r4), r = i4)
- if (res .ne. 4) call abort
+ if (res .ne. 4) STOP 5
res = selected_real_kind (p = precision (r4), r = i8)
- if (res .ne. 8) call abort
+ if (res .ne. 8) STOP 6
! res = selected_real_kind (p = precision (r4), r = i8 + 1)
-! if (res .ne. -2) call abort
+! if (res .ne. -2) STOP 7
res = selected_real_kind (p = precision (r8))
- if (res .ne. 8) call abort
+ if (res .ne. 8) STOP 8
res = selected_real_kind (p = precision (r8), r = i4)
- if (res .ne. 8) call abort
+ if (res .ne. 8) STOP 9
res = selected_real_kind (p = precision (r8), r = i8)
- if (res .ne. 8) call abort
+ if (res .ne. 8) STOP 10
! res = selected_real_kind (p = precision (r8), r = i8 + 1)
-! if (res .ne. -2) call abort
+! if (res .ne. -2) STOP 11
! res = selected_real_kind (p = (precision (r8) + 1))
-! if (res .ne. -1) call abort
+! if (res .ne. -1) STOP 12
! res = selected_real_kind (p = (precision (r8) + 1), r = i4)
-! if (res .ne. -1) call abort
+! if (res .ne. -1) STOP 13
! res = selected_real_kind (p = (precision (r8) + 1), r = i8)
-! if (res .ne. -1) call abort
+! if (res .ne. -1) STOP 14
! res = selected_real_kind (p = (precision (r8) + 1), r = i8 + 1)
-! if (res .ne. -3) call abort
+! if (res .ne. -3) STOP 15
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_sum.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_sum.f90
index 879fa0320dd..9a32b75e1ca 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_sum.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_sum.f90
@@ -11,37 +11,37 @@ program testforall
tr = .true.
- if (sum(a) .ne. 45) call abort
+ if (sum(a) .ne. 45) STOP 1
write (line, 9000) sum(a)
- if (line .ne. ' 45 ') call abort
+ if (line .ne. ' 45 ') STOP 2
b = sum (a, 1)
- if (b(1) .ne. 6) call abort
- if (b(2) .ne. 15) call abort
- if (b(3) .ne. 24) call abort
+ if (b(1) .ne. 6) STOP 3
+ if (b(2) .ne. 15) STOP 4
+ if (b(3) .ne. 24) STOP 5
write (line, 9000) sum (a, 1)
- if (line .ne. ' 6 15 24') call abort
+ if (line .ne. ' 6 15 24') STOP 6
m = .true.
m(1, 1) = .false.
m(2, 1) = .false.
- if (sum (a, mask=m) .ne. 42) call abort
- if (sum (a, mask=m .and. tr) .ne. 42) call abort
+ if (sum (a, mask=m) .ne. 42) STOP 7
+ if (sum (a, mask=m .and. tr) .ne. 42) STOP 8
write(line, 9000) sum (a, mask=m)
- if (line .ne. ' 42 ') call abort
+ if (line .ne. ' 42 ') STOP 9
b = sum (a, 2, m)
- if (b(1) .ne. 11) call abort
- if (b(2) .ne. 13) call abort
- if (b(3) .ne. 18) call abort
+ if (b(1) .ne. 11) STOP 10
+ if (b(2) .ne. 13) STOP 11
+ if (b(3) .ne. 18) STOP 12
b = sum (a, 2, m .and. tr)
- if (b(1) .ne. 11) call abort
- if (b(2) .ne. 13) call abort
- if (b(3) .ne. 18) call abort
+ if (b(1) .ne. 11) STOP 13
+ if (b(2) .ne. 13) STOP 14
+ if (b(3) .ne. 18) STOP 15
write (line, 9000) sum (a, 2, m)
- if (line .ne. ' 11 13 18') call abort
+ if (line .ne. ' 11 13 18') STOP 16
9000 format(3I3)
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_trailz.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_trailz.f90
index 948c806b4ac..82b41e545a4 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_trailz.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_trailz.f90
@@ -12,35 +12,35 @@ program test_intrinsic_trailz
integer(kind=4) :: z4, i4, e4
integer(kind=8) :: z8, i8, e8
- if (trailz(0_1) /= 8) call abort()
- if (trailz(0_2) /= 16) call abort()
- if (trailz(0_4) /= 32) call abort()
- if (trailz(0_8) /= 64) call abort()
-
- if (trailz(1_1) /= 0) call abort()
- if (trailz(1_2) /= 0) call abort()
- if (trailz(1_4) /= 0) call abort()
- if (trailz(1_8) /= 0) call abort()
-
- if (trailz(8_1) /= 3) call abort()
- if (trailz(8_2) /= 3) call abort()
- if (trailz(8_4) /= 3) call abort()
- if (trailz(8_8) /= 3) call abort()
-
- if (trailz(z1) /= 8) call abort()
- if (trailz(z2) /= 16) call abort()
- if (trailz(z4) /= 32) call abort()
- if (trailz(z8) /= 64) call abort()
-
- if (trailz(i1) /= 0) call abort()
- if (trailz(i2) /= 0) call abort()
- if (trailz(i4) /= 0) call abort()
- if (trailz(i8) /= 0) call abort()
-
- if (trailz(e1) /= 3) call abort()
- if (trailz(e2) /= 3) call abort()
- if (trailz(e4) /= 3) call abort()
- if (trailz(e8) /= 3) call abort()
+ if (trailz(0_1) /= 8) STOP 1
+ if (trailz(0_2) /= 16) STOP 2
+ if (trailz(0_4) /= 32) STOP 3
+ if (trailz(0_8) /= 64) STOP 4
+
+ if (trailz(1_1) /= 0) STOP 5
+ if (trailz(1_2) /= 0) STOP 6
+ if (trailz(1_4) /= 0) STOP 7
+ if (trailz(1_8) /= 0) STOP 8
+
+ if (trailz(8_1) /= 3) STOP 9
+ if (trailz(8_2) /= 3) STOP 10
+ if (trailz(8_4) /= 3) STOP 11
+ if (trailz(8_8) /= 3) STOP 12
+
+ if (trailz(z1) /= 8) STOP 13
+ if (trailz(z2) /= 16) STOP 14
+ if (trailz(z4) /= 32) STOP 15
+ if (trailz(z8) /= 64) STOP 16
+
+ if (trailz(i1) /= 0) STOP 17
+ if (trailz(i2) /= 0) STOP 18
+ if (trailz(i4) /= 0) STOP 19
+ if (trailz(i8) /= 0) STOP 20
+
+ if (trailz(e1) /= 3) STOP 21
+ if (trailz(e2) /= 3) STOP 22
+ if (trailz(e4) /= 3) STOP 23
+ if (trailz(e8) /= 3) STOP 24
end subroutine test_trailz
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_transpose.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_transpose.f90
index e1f268e310d..3393b279430 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_transpose.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_transpose.f90
@@ -8,17 +8,17 @@ program intrinsic_transpose
b = reshape ((/1, 2, 3, 4, 5, 6, 7, 8, 9/), (/3, 3/))
a = transpose (b)
if (any (a .ne. reshape ((/1, 4, 7, 2, 5, 8, 3, 6, 9/), (/3, 3/)))) &
- call abort
+ STOP 1
c = (0.0, 0.0)
d = reshape ((/(1d0,2d0), (3d0, 4d0), (5d0, 6d0), (7d0, 8d0)/), (/2, 2/))
c = transpose (d);
if (any (c .ne. reshape ((/(1d0, 2d0), (5d0, 6d0), &
(3d0, 4d0), (7d0, 8d0)/), (/2, 2/)))) &
- call abort ();
+ STOP 1;
e = reshape ((/(1.0,2.0), (3.0, 4.0), (5.0, 6.0), (7.0, 8.0)/), (/2, 2/))
e = transpose (e);
if (any (e .ne. reshape ((/(1.0, 2.0), (5.0, 6.0), &
(3.0, 4.0), (7.0, 8.0)/), (/2, 2/)))) &
- call abort ();
+ STOP 2;
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_trim.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_trim.f90
index d57610cca52..6db36ff6874 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_trim.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_trim.f90
@@ -4,15 +4,15 @@ program intrinsic_trim
character(len=4) b,work
a='1234 '
b=work(8,a)
- if (llt(b,"1234")) call abort()
+ if (llt(b,"1234")) STOP 1
a=' '
b=trim(a)
- if (b .gt. "") call abort()
+ if (b .gt. "") STOP 2
b='12'
a=repeat(b,0)
- if (a .gt. "") call abort()
+ if (a .gt. "") STOP 3
a=repeat(b,2)
- if (a .ne. "12 12 ") call abort()
+ if (a .ne. "12 12 ") STOP 4
end
function work(i,a)
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_unpack.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_unpack.f90
index 88f09c321b4..1e2e4f7c736 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_unpack.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/intrinsic_unpack.f90
@@ -10,12 +10,12 @@ program intrinsic_unpack
a = reshape ((/1, 0, 0, 0, 1, 0, 0, 0, 1/), (/3, 3/));
b = unpack ((/2, 3, 4/), mask, a)
if (any (b .ne. reshape ((/1, 2, 0, 3, 1, 0, 0, 0, 4/), (/3, 3/)))) &
- call abort
+ STOP 1
write (line1,'(10I4)') b
write (line2,'(10I4)') unpack((/2, 3, 4/), mask, a)
- if (line1 .ne. line2) call abort
+ if (line1 .ne. line2) STOP 2
b = -1
b = unpack ((/2, 3, 4/), mask, 0)
if (any (b .ne. reshape ((/0, 2, 0, 3, 0, 0, 0, 0, 4/), (/3, 3/)))) &
- call abort
+ STOP 3
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/iolength_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/iolength_1.f90
index 8b22b03a7ce..749da00e8cd 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/iolength_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/iolength_1.f90
@@ -11,6 +11,6 @@ program iolength_1
allocate(a(alength))
inquire (iolength = iol) a
if ( 4*alength /= iol) then
- call abort
+ STOP 1
end if
end program iolength_1
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/iolength_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/iolength_2.f90
index ac65778639e..19065e63961 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/iolength_2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/iolength_2.f90
@@ -19,6 +19,6 @@ program iolength_2
type(foo) :: d
inquire (iolength = iol) d
if ( 32 /= iol) then
- call abort
+ STOP 1
end if
end program iolength_2
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/iolength_3.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/iolength_3.f90
index 23f14c63660..28b0495095a 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/iolength_3.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/iolength_3.f90
@@ -10,6 +10,6 @@ program iolength_3
real(dp) :: c
inquire (iolength = iol) a, b, c
if ( 16 /= iol) then
- call abort
+ STOP 1
end if
end program iolength_3
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/list_read_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/list_read_1.f90
index 0a20b4bde83..886d031c693 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/list_read_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/list_read_1.f90
@@ -33,7 +33,7 @@
read(nin, fmt = *) (x(i,j), j=1, n)
if (debug) write(*, *) (x(i,j), j=1, n)
do K = 1,n
- if (x(i,k).ne.y(i,k)) call abort
+ if (x(i,k).ne.y(i,k)) STOP 1
end do
end do
m = 0
@@ -47,7 +47,7 @@
read(nin, fmt = *) (x(i,j), j=1, n)
if (debug) write(*, *) (x(i,j), j=1, n)
do K = 1,n
- if (x(i,k).ne.y(i,k)) call abort
+ if (x(i,k).ne.y(i,k)) STOP 2
end do
end do
close(nin, status='delete')
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/logical_select_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/logical_select_1.f90
index 60c077c4347..5481578ef10 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/logical_select_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/logical_select_1.f90
@@ -2,46 +2,46 @@ LOGICAL :: L = .FALSE.
SELECT CASE (L)
CASE (.TRUE.)
- CALL abort
+ STOP 1
CASE (.FALSE.)
CONTINUE
CASE DEFAULT
- CALL abort
+ STOP 2
END SELECT
SELECT CASE (L)
CASE (.TRUE., .FALSE.)
CONTINUE
CASE DEFAULT
- CALL abort
+ STOP 3
END SELECT
SELECT CASE (L)
CASE (.FALSE.)
CONTINUE
CASE DEFAULT
- CALL abort
+ STOP 4
END SELECT
SELECT CASE (L)
CASE (.NOT. .TRUE.)
CONTINUE
CASE DEFAULT
- CALL abort
+ STOP 5
END SELECT
SELECT CASE (.NOT. L)
CASE (.TRUE.)
CONTINUE
CASE DEFAULT
- CALL abort
+ STOP 6
END SELECT
SELECT CASE (Truth_or_Dare() .OR. L)
CASE (.TRUE.)
CONTINUE
CASE DEFAULT
- CALL abort
+ STOP 7
END SELECT
CONTAINS
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/mainsub.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/mainsub.f90
index f84e91f2525..522e31c1c96 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/mainsub.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/mainsub.f90
@@ -6,7 +6,7 @@ program mainsub
i = 0
call test (i)
- if (i .ne. 42) call abort
+ if (i .ne. 42) STOP 1
end program
subroutine test (p)
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/math.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/math.f90
index c21da09da21..17cc78f7a10 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/math.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/math.f90
@@ -5,8 +5,8 @@ subroutine dotest (n, val4, val8, known)
real(kind=8) val8
integer n
- if (abs (val4 - known) .gt. 0.001) call abort
- if (abs (real (val8, kind=4) - known) .gt. 0.001) call abort
+ if (abs (val4 - known) .gt. 0.001) STOP 1
+ if (abs (real (val8, kind=4) - known) .gt. 0.001) STOP 2
end subroutine
subroutine dotestc (n, val4, val8, known)
@@ -14,8 +14,8 @@ subroutine dotestc (n, val4, val8, known)
complex(kind=4) val4, known
complex(kind=8) val8
integer n
- if (abs (val4 - known) .gt. 0.001) call abort
- if (abs (cmplx (val8, kind=4) - known) .gt. 0.001) call abort
+ if (abs (val4 - known) .gt. 0.001) STOP 3
+ if (abs (cmplx (val8, kind=4) - known) .gt. 0.001) STOP 4
end subroutine
program testmath
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/module_init_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/module_init_1.f90
index 9996935f69e..216052ef6ed 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/module_init_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/module_init_1.f90
@@ -4,6 +4,6 @@ real, dimension(4) :: a
data a(1:3:2) /2*1.0/
end module m1
use m1
-if (a(1).NE.1.) call abort()
-if (a(1).NE.a(3)) call abort()
+if (a(1).NE.1.) STOP 1
+if (a(1).NE.a(3)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/module_interface_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/module_interface_2.f90
index dba736654c4..20f3933da1c 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/module_interface_2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/module_interface_2.f90
@@ -11,14 +11,14 @@ contains
subroutine bar (r)
real r
- if (r .ne. 1.0) call abort ()
+ if (r .ne. 1.0) STOP 1
end subroutine
end module
subroutine myfoo (i)
integer i
- if (i .ne. 42) call abort ()
+ if (i .ne. 42) STOP 2
end subroutine
program test
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/nan_inf_fmt.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/nan_inf_fmt.f90
index 2ded0cbbb62..4da41236db2 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/nan_inf_fmt.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/nan_inf_fmt.f90
@@ -16,73 +16,73 @@
! check a field width = 0
fmt = '(F0.0)'
write(l,fmt=fmt)pos_inf
- if (l.ne.'Inf') call abort
+ if (l.ne.'Inf') STOP 1
write(l,fmt=fmt)neg_inf
- if (l.ne.'-Inf') call abort
+ if (l.ne.'-Inf') STOP 2
write(l,fmt=fmt)nan
- if (l.ne.'NaN') call abort
+ if (l.ne.'NaN') STOP 3
! check a field width < 3
fmt = '(F2.0)'
write(l,fmt=fmt)pos_inf
- if (l.ne.'**') call abort
+ if (l.ne.'**') STOP 4
write(l,fmt=fmt)neg_inf
- if (l.ne.'**') call abort
+ if (l.ne.'**') STOP 5
write(l,fmt=fmt)nan
- if (l.ne.'**') call abort
+ if (l.ne.'**') STOP 6
! check a field width = 3
fmt = '(F3.0)'
write(l,fmt=fmt)pos_inf
- if (l.ne.'Inf') call abort
+ if (l.ne.'Inf') STOP 7
write(l,fmt=fmt)neg_inf
- if (l.ne.'***') call abort
+ if (l.ne.'***') STOP 8
write(l,fmt=fmt)nan
- if (l.ne.'NaN') call abort
+ if (l.ne.'NaN') STOP 9
! check a field width > 3
fmt = '(F4.0)'
write(l,fmt=fmt)pos_inf
- if (l.ne.' Inf') call abort
+ if (l.ne.' Inf') STOP 10
write(l,fmt=fmt)neg_inf
- if (l.ne.'-Inf') call abort
+ if (l.ne.'-Inf') STOP 11
write(l,fmt=fmt)nan
- if (l.ne.' NaN') call abort
+ if (l.ne.' NaN') STOP 12
! check a field width = 7
fmt = '(F7.0)'
write(l,fmt=fmt)pos_inf
- if (l.ne.' Inf') call abort
+ if (l.ne.' Inf') STOP 13
write(l,fmt=fmt)neg_inf
- if (l.ne.' -Inf') call abort
+ if (l.ne.' -Inf') STOP 14
write(l,fmt=fmt)nan
- if (l.ne.' NaN') call abort
+ if (l.ne.' NaN') STOP 15
! check a field width = 8
fmt = '(F8.0)'
write(l,fmt=fmt)pos_inf
- if (l.ne.'Infinity') call abort
+ if (l.ne.'Infinity') STOP 16
write(l,fmt=fmt)neg_inf
- if (l.ne.' -Inf') call abort
+ if (l.ne.' -Inf') STOP 17
write(l,fmt=fmt)nan
- if (l.ne.' NaN') call abort
+ if (l.ne.' NaN') STOP 18
! check a field width = 9
fmt = '(F9.0)'
write(l,fmt=fmt)pos_inf
- if (l.ne.' Infinity') call abort
+ if (l.ne.' Infinity') STOP 19
write(l,fmt=fmt)neg_inf
- if (l.ne.'-Infinity') call abort
+ if (l.ne.'-Infinity') STOP 20
write(l,fmt=fmt)nan
- if (l.ne.' NaN') call abort
+ if (l.ne.' NaN') STOP 21
! check a field width = 14
fmt = '(F14.0)'
write(l,fmt=fmt)pos_inf
- if (l.ne.' Infinity') call abort
+ if (l.ne.' Infinity') STOP 22
write(l,fmt=fmt)neg_inf
- if (l.ne.' -Infinity') call abort
+ if (l.ne.' -Infinity') STOP 23
write(l,fmt=fmt)nan
- if (l.ne.' NaN') call abort
+ if (l.ne.' NaN') STOP 24
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/nestcons.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/nestcons.f90
index d2d54562503..6fd801da2e0 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/nestcons.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/nestcons.f90
@@ -5,5 +5,5 @@ program nestcons
integer, dimension(6) :: w2
w2 = (/ 1, 2, w1(3:1:-1), 3 /)
- if (any (w2 .ne. (/ 1, 2, 7, 6, 5, 3/))) call abort
+ if (any (w2 .ne. (/ 1, 2, 7, 6, 5, 3/))) STOP 1
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/nullarg.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/nullarg.f90
index 67e65f81f6c..30db4012f46 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/nullarg.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/nullarg.f90
@@ -5,7 +5,7 @@
CONTAINS
SUBROUTINE A(B)
REAL, POINTER :: B
- IF (ASSOCIATED(B)) CALL ABORT()
+ IF (ASSOCIATED(B)) STOP 1
END SUBROUTINE A
END MODULE T
USE T
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/optstring_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/optstring_1.f90
index 58c397d1647..bf68bfbf5b3 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/optstring_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/optstring_1.f90
@@ -12,10 +12,10 @@ subroutine test(i, a, b, c)
character(len=*), optional :: b
integer, optional :: c
if (i .eq. 1) then
- if (a .ne. "test") call abort
+ if (a .ne. "test") STOP 1
else
- if (b .ne. "Hello World") call abort
- if (c .ne. 42) call abort
+ if (b .ne. "Hello World") STOP 2
+ if (c .ne. 42) STOP 3
end if
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/parameter_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/parameter_1.f90
index 8a8af73851d..c08501ee993 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/parameter_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/parameter_1.f90
@@ -6,7 +6,7 @@ program parameter_1
REAL, PARAMETER :: rr(10) = ii
do i = 1, 10
- if (ii(i) /= i) call abort()
- if (rr(i) /= i) call abort()
+ if (ii(i) /= i) STOP 1
+ if (rr(i) /= i) STOP 2
end do
end program parameter_1
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/parameter_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/parameter_2.f90
index 1e971047242..4500aa80784 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/parameter_2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/parameter_2.f90
@@ -3,5 +3,5 @@ module m
end module m
use m
-if (p .ne. -1.) CALL abort()
+if (p .ne. -1.) STOP 1
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/partparm.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/partparm.f90
index 839ecf02f69..9e3de3d651c 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/partparm.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/partparm.f90
@@ -2,7 +2,7 @@
subroutine test (p)
integer, dimension (3) :: p
- if (any (p .ne. (/ 2, 4, 6/))) call abort
+ if (any (p .ne. (/ 2, 4, 6/))) STOP 1
end subroutine
program partparm
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/plusconst_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/plusconst_1.f90
index 7fc3eebb15b..bce2131a48f 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/plusconst_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/plusconst_1.f90
@@ -10,6 +10,6 @@ program plusconst_1
integer :: j = +100
if ((p .ne. 3.1415) .or. (i .ne. 42) .or. (q .ne. 1.234) .or. (j .ne. 100)) &
- call abort
+ STOP 1
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/power.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/power.f90
index 6866470dd6a..8fcda5ffa75 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/power.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/power.f90
@@ -9,67 +9,67 @@ program testpow
i = 2
j = i ** 10
- if (abs (j - 1024) .gt. del) call abort
+ if (abs (j - 1024) .gt. del) STOP 1
j = i ** (-10)
- if (abs (j - 0) .gt. del) call abort
+ if (abs (j - 0) .gt. del) STOP 2
j = i ** 0
- if (abs (j - 1) .gt. del) call abort
+ if (abs (j - 1) .gt. del) STOP 3
i = 1
j = i ** 10
- if (abs (j - 1) .gt. del) call abort
+ if (abs (j - 1) .gt. del) STOP 4
j = i ** (-10)
- if (abs (j - 1) .gt. del) call abort
+ if (abs (j - 1) .gt. del) STOP 5
j = i ** 0
- if (abs (j - 1) .gt. del) call abort
+ if (abs (j - 1) .gt. del) STOP 6
i = -1
j = i ** 10
- if (abs (j - 1) .gt. del) call abort
+ if (abs (j - 1) .gt. del) STOP 7
j = i ** (-10)
- if (abs (j - 1) .gt. del) call abort
+ if (abs (j - 1) .gt. del) STOP 8
j = i ** 0
- if (abs (j - 1) .gt. del) call abort
+ if (abs (j - 1) .gt. del) STOP 9
j = i ** 11
- if (abs (j - (-1)) .gt. del) call abort
+ if (abs (j - (-1)) .gt. del) STOP 10
j = i ** (-11)
- if (abs (j - (-1)) .gt. del) call abort
+ if (abs (j - (-1)) .gt. del) STOP 11
c = (2.0, 3.0)
z = c ** 2
- if (abs(z - (-5.0, 12.0)) .gt. del) call abort
+ if (abs(z - (-5.0, 12.0)) .gt. del) STOP 12
z = c ** 7
- if (abs(z - (6554.0, 4449.0)) .gt. del) call abort
+ if (abs(z - (6554.0, 4449.0)) .gt. del) STOP 13
two = 2.0
r = two ** 1
- if (abs (r - 2.0) .gt. del) call abort
+ if (abs (r - 2.0) .gt. del) STOP 14
r = two ** 2
- if (abs (r - 4.0) .gt. del) call abort
+ if (abs (r - 4.0) .gt. del) STOP 15
r = two ** 3
- if (abs (r - 8.0) .gt. del) call abort
+ if (abs (r - 8.0) .gt. del) STOP 16
r = two ** 4
- if (abs (r - 16.0) .gt. del) call abort
+ if (abs (r - 16.0) .gt. del) STOP 17
r = two ** 0
- if (abs (r - 1.0) .gt. del) call abort
+ if (abs (r - 1.0) .gt. del) STOP 18
r = two ** (-1)
- if (abs (r - 0.5) .gt. del) call abort
+ if (abs (r - 0.5) .gt. del) STOP 19
r = two ** (-2)
- if (abs (r - 0.25) .gt. del) call abort
+ if (abs (r - 0.25) .gt. del) STOP 20
r = two ** (-4)
- if (abs (r - 0.0625) .gt. del) call abort
+ if (abs (r - 0.0625) .gt. del) STOP 21
s = 3.0
r = two ** s
- if (abs (r - 8.0) .gt. del) call abort
+ if (abs (r - 8.0) .gt. del) STOP 22
s = -3.0
r = two ** s
- if (abs (r - 0.125) .gt. del) call abort
+ if (abs (r - 0.125) .gt. del) STOP 23
i = 3
r = two ** i
- if (abs (r - 8.0) .gt. del) call abort
+ if (abs (r - 8.0) .gt. del) STOP 24
i = -3
r = two ** i
- if (abs (r - 0.125) .gt. del) call abort
+ if (abs (r - 0.125) .gt. del) STOP 25
c = (2.0, 3.0)
c = c ** two
- if (abs(c - (-5.0, 12.0)) .gt. del) call abort
+ if (abs(c - (-5.0, 12.0)) .gt. del) STOP 26
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/pr19269-1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/pr19269-1.f90
index 03224c38085..fb3bcc9ab83 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/pr19269-1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/pr19269-1.f90
@@ -4,13 +4,13 @@ contains
subroutine test (a)
character (len = *), dimension (:, :) :: a
- if (size (a, 1) .ne. 2) call abort
- if (size (a, 2) .ne. 2) call abort
- if (len (a) .ne. 1) call abort
+ if (size (a, 1) .ne. 2) STOP 1
+ if (size (a, 2) .ne. 2) STOP 2
+ if (len (a) .ne. 1) STOP 3
- if (a (1, 1) .ne. 'a') call abort
- if (a (2, 1) .ne. 'b') call abort
- if (a (1, 2) .ne. 'c') call abort
- if (a (2, 2) .ne. 'd') call abort
+ if (a (1, 1) .ne. 'a') STOP 4
+ if (a (2, 1) .ne. 'b') STOP 5
+ if (a (1, 2) .ne. 'c') STOP 6
+ if (a (2, 2) .ne. 'd') STOP 7
end subroutine test
end program main
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/pr23373-1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/pr23373-1.f90
index 8d5ee658df5..a6421e6de3e 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/pr23373-1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/pr23373-1.f90
@@ -3,13 +3,13 @@ program main
real, dimension (:), pointer :: x
x => null ()
x => test (x)
- if (.not. associated (x)) call abort
- if (size (x) .ne. 10) call abort
+ if (.not. associated (x)) STOP 1
+ if (size (x) .ne. 10) STOP 2
contains
function test (p)
real, dimension (:), pointer :: p, test
- if (associated (p)) call abort
+ if (associated (p)) STOP 3
allocate (test (10))
- if (associated (p)) call abort
+ if (associated (p)) STOP 4
end function test
end program main
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/pr23373-2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/pr23373-2.f90
index f90a7357756..a1717074a16 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/pr23373-2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/pr23373-2.f90
@@ -3,13 +3,13 @@ program main
real, dimension (:), pointer :: x
x => null ()
x => test ()
- if (.not. associated (x)) call abort
- if (size (x) .ne. 10) call abort
+ if (.not. associated (x)) STOP 1
+ if (size (x) .ne. 10) STOP 2
contains
function test()
real, dimension (:), pointer :: test
- if (associated (x)) call abort
+ if (associated (x)) STOP 3
allocate (test (10))
- if (associated (x)) call abort
+ if (associated (x)) STOP 4
end function test
end program main
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/pr32140.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/pr32140.f90
index a756e27792f..556de23a45f 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/pr32140.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/pr32140.f90
@@ -11,6 +11,6 @@ END MODULE
USE TEST
character(len=12) :: line
write(line,'(3A4)') s2a_3("a","bb","ccc")
-IF (line.NE."a bb ccc") CALL ABORT()
+IF (line.NE."a bb ccc") STOP 1
END
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/pr40021.f b/gcc/testsuite/gfortran.fortran-torture/execute/pr40021.f
index ddd269f2a46..d61c48e9f4f 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/pr40021.f
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/pr40021.f
@@ -11,7 +11,7 @@ C Derived from lapack
DATA DY/0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0/
CALL DAXPY (N,DA,DX,DY)
DO 10 I = 1, N
- if (DX(I).ne.DY(I)) call abort
+ if (DX(I).ne.DY(I)) STOP 1
10 CONTINUE
STOP
END
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/pr43390.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/pr43390.f90
index b54eef99f24..4c4c790d160 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/pr43390.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/pr43390.f90
@@ -2,8 +2,8 @@
logical :: l2(4)
l1 = (/.TRUE.,.FALSE.,.TRUE.,.FALSE./)
l2 = (/.FALSE.,.TRUE.,.FALSE.,.TRUE./)
- if (dot_product (l1, l2)) call abort ()
+ if (dot_product (l1, l2)) STOP 1
l2 = .TRUE.
- if (.not.dot_product (l1, l2)) call abort ()
+ if (.not.dot_product (l1, l2)) STOP 2
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/pr54767.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/pr54767.f90
index f95bff1b338..048e8021338 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/pr54767.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/pr54767.f90
@@ -21,7 +21,7 @@ SUBROUTINE XXX (IL, IU)
ENDDO
IF (ivvv.NE.2) THEN
- call abort
+ STOP 1
ENDIF
END subroutine
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/pr57396.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/pr57396.f90
index 8ea92924ad8..8be01c98208 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/pr57396.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/pr57396.f90
@@ -20,7 +20,7 @@ module testmod
r(k,k) = a(k, k - 1) * dj
enddo
- if (r(0,0) .ne. -2.) call abort
+ if (r(0,0) .ne. -2.) STOP 1
end subroutine
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/procarg.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/procarg.f90
index 37718f5fc43..46f3e37de51 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/procarg.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/procarg.f90
@@ -3,7 +3,7 @@ subroutine myp (a)
implicit none
integer a
- if (a .ne. 42) call abort
+ if (a .ne. 42) STOP 1
end subroutine
subroutine test2 (p)
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/ptr.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/ptr.f90
index 2675f0866c2..2c2f8f6f568 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/ptr.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/ptr.f90
@@ -8,13 +8,13 @@ program ptr
a = (/ 1, 2, 3, 4, 5, 6 /)
b => a
- if (any (b .ne. (/ 1, 2, 3, 4, 5, 6 /))) call abort
+ if (any (b .ne. (/ 1, 2, 3, 4, 5, 6 /))) STOP 1
b => a(1:6:2)
- if (any (b .ne. (/ 1, 3, 5/))) call abort
+ if (any (b .ne. (/ 1, 3, 5/))) STOP 2
p => i
i = 42
- if (p .ne. 42) call abort
+ if (p .ne. 42) STOP 3
p => a(4)
- if (p .ne. 4) call abort
+ if (p .ne. 4) STOP 4
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/random_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/random_1.f90
index 900a724da6c..bbbc91d0aaf 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/random_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/random_1.f90
@@ -22,12 +22,12 @@ program test_random
call random_number (b(1:5))
call random_seed(get=seed)
call random_number (b(6:10))
- if (any (a .ne. b)) call abort
+ if (any (a .ne. b)) STOP 1
! Get the last 5 numbers again.
call random_seed (put=seed)
call random_number (b(6:10))
- if (any (a .ne. b)) call abort
+ if (any (a .ne. b)) STOP 2
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/random_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/random_2.f90
index 16668330589..2558b6aaf9f 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/random_2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/random_2.f90
@@ -19,6 +19,6 @@ program random_4
call random_number(r8)
call random_number (r8(10))
- if (any ((r4 - r8) .gt. delta)) call abort
+ if (any ((r4 - r8) .gt. delta)) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/random_init.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/random_init.f90
index 36394589d8b..e7a3b8e2eb4 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/random_init.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/random_init.f90
@@ -5,7 +5,7 @@
real :: r(5) = 0.0
call random_number(r)
- if (all (r .eq. 0)) call abort
+ if (all (r .eq. 0)) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/read_eof.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/read_eof.f90
index b4bc8239b23..f472e9b444b 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/read_eof.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/read_eof.f90
@@ -1,6 +1,6 @@
! PR 13919, segfault when file is empty
open(unit=8,status='scratch')
read(8,*,end=1)i
- call abort
+ STOP 1
1 continue
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/read_null_string.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/read_null_string.f90
index 7cf949204dc..c67433475ed 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/read_null_string.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/read_null_string.f90
@@ -11,5 +11,5 @@
rewind(7)
read(7, *) t
read(7, *) temp_name
- if (temp_name.ne.'') call abort
+ if (temp_name.ne.'') STOP 1
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/retarray.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/retarray.f90
index a0bdc97c47d..f0d02c22300 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/retarray.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/retarray.f90
@@ -8,19 +8,19 @@ program testfnarray
! These first two shouldn't require a temporary.
a = 0
a = test(6, 5)
- if (a(1,1) .ne. 42) call abort
- if (a(6,5) .ne. 43) call abort
+ if (a(1,1) .ne. 42) STOP 1
+ if (a(6,5) .ne. 43) STOP 2
a = 0
a(1:6:2, 2:5) = test2()
- if (a(1,2) .ne. 42) call abort
- if (a(5,5) .ne. 43) call abort
+ if (a(1,2) .ne. 42) STOP 3
+ if (a(5,5) .ne. 43) STOP 4
a = 1
! This requires a temporary
a = test(6, 5) - a
- if (a(1,1) .ne. 41) call abort
- if (a(6,5) .ne. 42) call abort
+ if (a(1,1) .ne. 41) STOP 5
+ if (a(6,5) .ne. 42) STOP 6
contains
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/retarray_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/retarray_2.f90
index ab14dd03caf..c6f6d800c1b 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/retarray_2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/retarray_2.f90
@@ -15,6 +15,6 @@ program retarray
use retarray_2
integer, dimension(4) :: b, a=(/1,2,3,4/)
b = z(a)
- if (any (b .ne. (/1, 2, 3, 4/))) call abort
+ if (any (b .ne. (/1, 2, 3, 4/))) STOP 1
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/save_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/save_1.f90
index c838baa9874..499bda55a91 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/save_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/save_1.f90
@@ -8,13 +8,13 @@
j = 131
s = 'This is a test string'
else
- if (i .ne. 26 .or. j .ne. 131) call abort
- if (s .ne. 'This is a test string') call abort
+ if (i .ne. 26 .or. j .ne. 131) STOP 1
+ if (s .ne. 'This is a test string') STOP 2
end if
end subroutine foo
subroutine bar (s)
character*42 s
- if (s .ne. '0123456789012345678901234567890123456') call abort
+ if (s .ne. '0123456789012345678901234567890123456') STOP 3
call foo (.false.)
end subroutine bar
subroutine baz
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/save_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/save_2.f90
index c3775bbecc3..d99a3eb0c37 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/save_2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/save_2.f90
@@ -14,7 +14,7 @@
i = 1
h = 12345
end if
- if (h .ne. 12345) call abort
+ if (h .ne. 12345) STOP 1
end subroutine foo
subroutine bar
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/scalarize.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/scalarize.f90
index 63004c82797..a23ae38ea63 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/scalarize.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/scalarize.f90
@@ -16,8 +16,8 @@ program testarray
a(:, 2:4) = a(:, 1:3)
do n = 1, 5
- if (a(n, 3) .ne. (n + 1)) call abort
- if (b(4, n) .ne. (6 - n)) call abort
+ if (a(n, 3) .ne. (n + 1)) STOP 1
+ if (b(4, n) .ne. (6 - n)) STOP 2
end do
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/scalarize2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/scalarize2.f90
index 608c051d31c..819a3428e3d 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/scalarize2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/scalarize2.f90
@@ -17,8 +17,8 @@ program testarray
a(:, 2:4) = a(:, 1:3)
do n = 1, 5
- if (a(n, 3) .ne. (n + 1)) call abort
- if (b(4, n) .ne. (6 - n)) call abort
+ if (a(n, 3) .ne. (n + 1)) STOP 1
+ if (b(4, n) .ne. (6 - n)) STOP 2
end do
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/scalarize3.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/scalarize3.f90
index 76d41484c70..a4bc28ebc55 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/scalarize3.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/scalarize3.f90
@@ -4,5 +4,5 @@ program foo
a = reshape ((/1, 2, 3, 4, 5, 6/), (/3, 2/))
a = a(3:1:-1, 2:1:-1);
- if (any (a .ne. reshape ((/6, 5, 4, 3, 2, 1/), (/3, 2/)))) call abort
+ if (any (a .ne. reshape ((/6, 5, 4, 3, 2, 1/), (/3, 2/)))) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/select_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/select_1.f90
index 2fe5b6847d8..8243a4d4aee 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/select_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/select_1.f90
@@ -13,5 +13,5 @@ case default
end select
end function
-if (j(2).NE.2 .OR. j(11).NE.0) call abort()
+if (j(2).NE.2 .OR. j(11).NE.0) STOP 1
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/seq_io.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/seq_io.f90
index e1688882989..dadab921437 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/seq_io.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/seq_io.f90
@@ -43,7 +43,7 @@
if (debug) then
print '(A,Z8)','m(1) incorrect. m(1) = ',m(1)
else
- call abort
+ STOP 1
endif
endif
@@ -51,7 +51,7 @@
if (debug) then
print '(A,Z8)','m(2) incorrect. m(2) = ',m(2)
else
- call abort
+ STOP 2
endif
endif
@@ -59,7 +59,7 @@
if (debug) then
print '(A,Z8)','n incorrect. n = ',n
else
- call abort
+ STOP 3
endif
endif
@@ -68,7 +68,7 @@
if (debug) then
print*,'element ',i,' was ',r(i),' should be ',i
else
- call abort
+ STOP 4
endif
endif
end do
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/slash_edit.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/slash_edit.f90
index 29f44a7dd4e..406db9bf319 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/slash_edit.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/slash_edit.f90
@@ -9,6 +9,6 @@
200 FORMAT(I4,///I4)
READ(7,200)I,J
CLOSE(7, STATUS='DELETE')
- IF (I.NE.1) CALL ABORT
- IF (J.NE.4) CALL ABORT
+ IF (I.NE.1) STOP 1
+ IF (J.NE.4) STOP 2
END
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/spec_abs.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/spec_abs.f90
index be8e3f7487b..029c0958392 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/spec_abs.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/spec_abs.f90
@@ -2,7 +2,7 @@
INTRINSIC IABS
INTEGER FF324
IVCOMP = FF324(IABS,-7)
- IF (IVCOMP.NE.8) CALL ABORT
+ IF (IVCOMP.NE.8) STOP 1
END
INTEGER FUNCTION FF324(NINT, IDON03)
FF324 = NINT(IDON03) + 1
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/specifics.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/specifics.f90
index 96977fd11ae..e6aa5e78df3 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/specifics.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/specifics.f90
@@ -5,7 +5,7 @@ subroutine test_c(fn, val, res)
complex fn
complex val, res
- if (diff(fn(val),res)) call abort
+ if (diff(fn(val),res)) STOP 1
contains
function diff(a,b)
complex a,b
@@ -18,7 +18,7 @@ subroutine test_z(fn, val, res)
double complex fn
double complex val, res
- if (diff(fn(val),res)) call abort
+ if (diff(fn(val),res)) STOP 2
contains
function diff(a,b)
double complex a,b
@@ -31,7 +31,7 @@ subroutine test_cabs(fn, val, res)
real fn, res
complex val
- if (diff(fn(val),res)) call abort
+ if (diff(fn(val),res)) STOP 3
contains
function diff(a,b)
real a,b
@@ -44,7 +44,7 @@ subroutine test_cdabs(fn, val, res)
double precision fn, res
double complex val
- if (diff(fn(val),res)) call abort
+ if (diff(fn(val),res)) STOP 4
contains
function diff(a,b)
double precision a,b
@@ -57,7 +57,7 @@ subroutine test_r(fn, val, res)
real fn
real val, res
- if (diff(fn(val), res)) call abort
+ if (diff(fn(val), res)) STOP 5
contains
function diff(a, b)
real a, b
@@ -70,7 +70,7 @@ subroutine test_d(fn, val, res)
double precision fn
double precision val, res
- if (diff(fn(val), res)) call abort
+ if (diff(fn(val), res)) STOP 6
contains
function diff(a, b)
double precision a, b
@@ -83,7 +83,7 @@ subroutine test_r2(fn, val1, val2, res)
real fn
real val1, val2, res
- if (diff(fn(val1, val2), res)) call abort
+ if (diff(fn(val1, val2), res)) STOP 7
contains
function diff(a, b)
real a, b
@@ -96,7 +96,7 @@ subroutine test_d2(fn, val1, val2, res)
double precision fn
double precision val1, val2, res
- if (diff(fn(val1, val2), res)) call abort
+ if (diff(fn(val1, val2), res)) STOP 8
contains
function diff(a, b)
double precision a, b
@@ -107,41 +107,41 @@ end subroutine
subroutine test_dprod(fn)
double precision fn
- if (abs (fn (2.0, 3.0) - 6d0) .gt. 0.00001) call abort
+ if (abs (fn (2.0, 3.0) - 6d0) .gt. 0.00001) STOP 9
end subroutine
subroutine test_nint(fn,val,res)
integer fn, res
real val
- if (res .ne. fn(val)) call abort
+ if (res .ne. fn(val)) STOP 10
end subroutine
subroutine test_idnint(fn,val,res)
integer fn, res
double precision val
- if (res .ne. fn(val)) call abort
+ if (res .ne. fn(val)) STOP 11
end subroutine
subroutine test_idim(fn,val1,val2,res)
integer fn, res, val1, val2
- if (res .ne. fn(val1,val2)) call abort
+ if (res .ne. fn(val1,val2)) STOP 12
end subroutine
subroutine test_iabs(fn,val,res)
integer fn, res, val
- if (res .ne. fn(val)) call abort
+ if (res .ne. fn(val)) STOP 13
end subroutine
subroutine test_len(fn,val,res)
integer fn, res
character(len=*) val
- if (res .ne. fn(val)) call abort
+ if (res .ne. fn(val)) STOP 14
end subroutine
subroutine test_index(fn,val1,val2,res)
integer fn, res
character(len=*) val1, val2
- if (fn(val1,val2) .ne. res) call abort
+ if (fn(val1,val2) .ne. res) STOP 15
end subroutine
program specifics
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/st_function.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/st_function.f90
index e8788025ad8..998adfd6e94 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/st_function.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/st_function.f90
@@ -14,16 +14,16 @@ contains
st1 (i, j) = i + j
st2 (i, j) = c(i, j)
- if (st1 (1, 2) .ne. 3) call abort
+ if (st1 (1, 2) .ne. 3) STOP 1
c = 3
- if (st2 (1, 2) .ne. 3 .or. st2 (2, 3) .ne. 3) call abort
+ if (st2 (1, 2) .ne. 3 .or. st2 (2, 3) .ne. 3) STOP 2
end subroutine
subroutine with_function_call
integer fun, st3
st3 (i, j) = fun (i) + fun (j)
- if (st3 (fun (2), 4) .ne. 16) call abort
+ if (st3 (fun (2), 4) .ne. 16) STOP 3
end subroutine
subroutine with_character_dummy
@@ -32,8 +32,8 @@ contains
st4 (i, j) = "0123456789"(i:j)
st5 (s1, s2) = s1 // s2
- if (st4 (1, 4) .ne. "0123" ) call abort
- if (st5 ("01", "02") .ne. "01 02 ") call abort ! { dg-warning "Character length of actual argument shorter" }
+ if (st4 (1, 4) .ne. "0123" ) STOP 4
+ if (st5 ("01", "02") .ne. "01 02 ") STOP 5! { dg-warning "Character length of actual argument shorter" }
end subroutine
subroutine with_derived_type_dummy
@@ -48,8 +48,8 @@ contains
me%age = 5
me%name = "Tom"
tom = st6 (me)
- if (tom%age .ne. 5) call abort
- if (tom%name .gt. "Tom") call abort
+ if (tom%age .ne. 5) STOP 6
+ if (tom%name .gt. "Tom") STOP 7
end subroutine
subroutine with_pointer_dummy
@@ -60,7 +60,7 @@ contains
p1 => i
i = '1234'
- if (a (p1) .ne. '123410') call abort
+ if (a (p1) .ne. '123410') STOP 8
end subroutine
subroutine multiple_eval
@@ -68,7 +68,7 @@ contains
st7(i) = i + fun(i)
- if (st7(fun2(10)) .ne. 3) call abort
+ if (st7(fun2(10)) .ne. 3) STOP 9
end subroutine
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/st_function_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/st_function_1.f90
index b851a942e3d..4bda696e9b2 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/st_function_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/st_function_1.f90
@@ -18,6 +18,6 @@ contains
subroutine check(a, b)
character (len=*) :: a, b
- if ((a .ne. b) .or. (len(a) .ne. len(b))) call abort ()
+ if ((a .ne. b) .or. (len(a) .ne. len(b))) STOP 1
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/st_function_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/st_function_2.f90
index 2dec735625f..417756ce9d6 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/st_function_2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/st_function_2.f90
@@ -4,12 +4,12 @@
program st_function_2
integer fn, a, b
fn(a, b) = a + b
- if (foo(1) .ne. 43) call abort
+ if (foo(1) .ne. 43) STOP 1
! Check that values aren't modified when avaluating the arguments.
a = 1
b = 5
- if (fn (b + 2, a + 3) .ne. 11) call abort
+ if (fn (b + 2, a + 3) .ne. 11) STOP 2
contains
function foo (x)
integer z, y, foo, x
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/stack_varsize.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/stack_varsize.f90
index 6342e1a406e..4e6c0544c02 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/stack_varsize.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/stack_varsize.f90
@@ -15,8 +15,8 @@ contains
m = 10
n = 20
k = 30
- if ((a .ne. 10.0).or.(b(1) .ne. 20.0).or.(c(1) .ne. 30.0)) call abort
- if ((m .ne. 10).or.(n(256,4) .ne. 20).or.(k(1,1024) .ne. 30)) call abort
+ if ((a .ne. 10.0).or.(b(1) .ne. 20.0).or.(c(1) .ne. 30.0)) STOP 1
+ if ((m .ne. 10).or.(n(256,4) .ne. 20).or.(k(1,1024) .ne. 30)) STOP 2
end subroutine
! Local variables defined in recursive subroutine are always put on stack.
@@ -24,7 +24,7 @@ contains
real a (32769)
a (1) = 42
if (n .ge. 1) call sub2 (n-1)
- if (a(1) .ne. 42) call abort
+ if (a(1) .ne. 42) STOP 3
a (1) = 0
end subroutine
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/straret.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/straret.f90
index 579e35a70a4..3f9a71ba74d 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/straret.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/straret.f90
@@ -14,5 +14,5 @@ program straret
v = f() // g()
- if (v .ne. "Hello World ") call abort ()
+ if (v .ne. "Hello World ") STOP 1
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/strarray_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/strarray_1.f90
index 95e9b038559..de440f729b7 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/strarray_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/strarray_1.f90
@@ -5,7 +5,7 @@ character(1),parameter :: hex_chars(0:15)=&
(/'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'/)
c = hex_chars(i)
-if (c.ne.'3') call abort()
+if (c.ne.'3') STOP 1
end
program strarray_1
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/strarray_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/strarray_2.f90
index dbb3b89e43f..23bf7c48bdd 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/strarray_2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/strarray_2.f90
@@ -10,5 +10,5 @@ end
program strarray_2
character c
call foo(3,c)
- if (c.ne.'3') call abort()
+ if (c.ne.'3') STOP 1
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/strarray_3.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/strarray_3.f90
index 9d369c7f196..637c1df94f0 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/strarray_3.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/strarray_3.f90
@@ -14,7 +14,7 @@ subroutine foo1(a)
implicit none
character(len=5), dimension(2) :: a
- if ((a(1) .ne. "Hello") .or. (a(2) .ne. "World")) call abort
+ if ((a(1) .ne. "Hello") .or. (a(2) .ne. "World")) STOP 1
end subroutine
subroutine foo2(a, m)
@@ -22,7 +22,7 @@ subroutine foo2(a, m)
integer m
character(len=5), dimension(m) :: a
- if ((a(1) .ne. "Hello") .or. (a(2) .ne. "World")) call abort
+ if ((a(1) .ne. "Hello") .or. (a(2) .ne. "World")) STOP 2
end subroutine
subroutine foo3(a, n)
@@ -30,7 +30,7 @@ subroutine foo3(a, n)
integer n
character(len=n), dimension(:) :: a
- if ((a(1) .ne. "Hello") .or. (a(2) .ne. "World")) call abort
+ if ((a(1) .ne. "Hello") .or. (a(2) .ne. "World")) STOP 3
end subroutine
subroutine foo4(a, n, m)
@@ -38,13 +38,13 @@ subroutine foo4(a, n, m)
integer n, m
character(len=n), dimension(m) :: a
- if ((a(1) .ne. "Hello") .or. (a(2) .ne. "World")) call abort
+ if ((a(1) .ne. "Hello") .or. (a(2) .ne. "World")) STOP 4
end subroutine
subroutine foo5(a)
implicit none
character(len=2), dimension(5) :: a
- if ((a(1) .ne. "Wo") .or. (a(3) .ne. "dH") .or. (a(5) .ne. "lo")) call abort
+ if ((a(1) .ne. "Wo") .or. (a(3) .ne. "dH") .or. (a(5) .ne. "lo")) STOP 5
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/strarray_4.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/strarray_4.f90
index c33f4b53d69..29eac73e0ea 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/strarray_4.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/strarray_4.f90
@@ -14,7 +14,7 @@ subroutine foo1(a)
character(len=5), dimension(2) :: b
b = a;
- if ((b(1) .ne. "Hello") .or. (b(2) .ne. "World")) call abort
+ if ((b(1) .ne. "Hello") .or. (b(2) .ne. "World")) STOP 1
end subroutine
subroutine foo2(a, m)
@@ -24,7 +24,7 @@ subroutine foo2(a, m)
character(len=5), dimension(m) :: b
b = a
- if ((b(1) .ne. "Hello") .or. (b(2) .ne. "World")) call abort
+ if ((b(1) .ne. "Hello") .or. (b(2) .ne. "World")) STOP 2
end subroutine
subroutine foo3(a, n, m)
@@ -34,6 +34,6 @@ subroutine foo3(a, n, m)
character(len=n), dimension(m) :: b
b = a
- if ((b(1) .ne. "Hello") .or. (b(2) .ne. "World")) call abort
+ if ((b(1) .ne. "Hello") .or. (b(2) .ne. "World")) STOP 3
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/strcmp.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/strcmp.f90
index 26980901c7e..af4be53fbb6 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/strcmp.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/strcmp.f90
@@ -4,13 +4,13 @@ program test
foo="hello"
- if (llt(foo, "hello")) call abort
- if (.not. lle(foo, "hello")) call abort
- if (lgt("hello", foo)) call abort
- if (.not. lge("hello", foo)) call abort
+ if (llt(foo, "hello")) STOP 1
+ if (.not. lle(foo, "hello")) STOP 2
+ if (lgt("hello", foo)) STOP 3
+ if (.not. lge("hello", foo)) STOP 4
- if (.not. llt(foo, "world")) call abort
- if (.not. lle(foo, "world")) call abort
- if (lgt(foo, "world")) call abort
- if (lge(foo, "world")) call abort
+ if (.not. llt(foo, "world")) STOP 5
+ if (.not. lle(foo, "world")) STOP 6
+ if (lgt(foo, "world")) STOP 7
+ if (lge(foo, "world")) STOP 8
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/strcommon_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/strcommon_1.f90
index aa51ccf4bae..a3459f464c7 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/strcommon_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/strcommon_1.f90
@@ -5,7 +5,7 @@ subroutine test1
common /block/ c
character(len=12) :: c
- if (c .ne. "Hello World") call abort
+ if (c .ne. "Hello World") STOP 1
end subroutine
subroutine test2
@@ -13,7 +13,7 @@ subroutine test2
common /block/ a
character(len=6), dimension(2) :: a
- if ((a(1) .ne. "Hello") .or. (a(2) .ne. "World")) call abort
+ if ((a(1) .ne. "Hello") .or. (a(2) .ne. "World")) STOP 2
end subroutine
program strcommon_1
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/string.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/string.f90
index f220f4a477b..c6aa9b2af4d 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/string.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/string.f90
@@ -8,8 +8,8 @@ program string
b = 'World'
c = a//b
- if (c .ne. 'HelloWorld') call abort
- if (c .eq. 'WorldHello') call abort
- if (a//'World' .ne. 'HelloWorld') call abort
- if (a .ge. b) call abort
+ if (c .ne. 'HelloWorld') STOP 1
+ if (c .eq. 'WorldHello') STOP 2
+ if (a//'World' .ne. 'HelloWorld') STOP 3
+ if (a .ge. b) STOP 4
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/strlen.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/strlen.f90
index 17f9aa277b6..85f233ff751 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/strlen.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/strlen.f90
@@ -4,8 +4,8 @@ subroutine test (c)
character(len(c)) d
d = c
- if (len(d) .ne. 20) call abort
- if (d .ne. "Longer Test String") call abort
+ if (len(d) .ne. 20) STOP 1
+ if (d .ne. "Longer Test String") STOP 2
c = "Hello World"
end subroutine
@@ -14,8 +14,8 @@ subroutine test2 (c)
character(len(c)) d
d = c
- if (len(d) .ne. 6) call abort
- if (d .ne. "Foobar") call abort
+ if (len(d) .ne. 6) STOP 3
+ if (d .ne. "Foobar") STOP 4
end subroutine
program strlen
@@ -27,8 +27,8 @@ program strlen
c = "Longer Test String"
call test (c)
- if (len(c) .ne. 20) call abort
- if (len_trim(c) .ne. 11) call abort
+ if (len(c) .ne. 20) STOP 5
+ if (len_trim(c) .ne. 11) STOP 6
call test2 ("Foobar");
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/strret.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/strret.f90
index 7346fff5df7..cf560091c3d 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/strret.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/strret.f90
@@ -18,8 +18,8 @@ program strret
character(len=5) :: test2
s = test ()
- if (s .ne. "World") call abort
+ if (s .ne. "World") STOP 1
s = "Hello " // test ()
- if (s .ne. test2 () //" World") call abort
+ if (s .ne. test2 () //" World") STOP 2
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/t_edit.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/t_edit.f90
index 9746f31947a..dcfb0f9e50a 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/t_edit.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/t_edit.f90
@@ -2,9 +2,9 @@
implicit none
character*80 line
WRITE(line,'(T5,A,T10,A,T15,A)')'AA','BB','CC'
- if (line.ne.' AA BB CC ') call abort
+ if (line.ne.' AA BB CC ') STOP 1
WRITE(line,'(5HAAAAA,TL4,4HABCD)')
- if (line.ne.'AABCD') call abort
+ if (line.ne.'AABCD') STOP 2
END
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/test_slice.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/test_slice.f90
index f2291cd832a..942d3a6497a 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/test_slice.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/test_slice.f90
@@ -7,11 +7,11 @@ program test_slice
real (kind = 8) :: min, max
x = 1.0
- if (minval(x(1, 1:2, 1:1)) .ne. 1.0) call abort ()
- if (maxval(x(1, 1:2, 1:1)) .ne. 1.0) call abort ()
- if (any (shape(x(1, 1:2, 1:1)) .ne. (/2, 1/))) call abort ()
+ if (minval(x(1, 1:2, 1:1)) .ne. 1.0) STOP 1
+ if (maxval(x(1, 1:2, 1:1)) .ne. 1.0) STOP 2
+ if (any (shape(x(1, 1:2, 1:1)) .ne. (/2, 1/))) STOP 3
- if (any (shape(x(1, 1:2, 1)) .ne. (/2/))) call abort ()
- if (any (shape(x(1:1, 1:2, 1:1)) .ne. (/1, 2, 1/))) call abort ()
+ if (any (shape(x(1, 1:2, 1)) .ne. (/2/))) STOP 4
+ if (any (shape(x(1:1, 1:2, 1:1)) .ne. (/1, 2, 1/))) STOP 5
end program test_slice
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/transfer1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/transfer1.f90
index 855fe9df17a..9779f6b8c67 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/transfer1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/transfer1.f90
@@ -6,5 +6,5 @@ program chop
ix = transfer(x,ix)
iy = transfer(y,iy)
print '(2z20.8)', ix, iy
- if (ix /= iy) call abort
+ if (ix /= iy) STOP 1
end program chop
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/transfer2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/transfer2.f90
index b57841c30f0..464bdeadefa 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/transfer2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/transfer2.f90
@@ -15,5 +15,5 @@ program test_convert
value = transfer(byte_string(1:4),value)
value1 = transfer(byte_array(1:4),value1)
- if (value .ne. value1) call abort()
+ if (value .ne. value1) STOP 1
end program test_convert
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/unopened_unit_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/unopened_unit_1.f90
index 66895b02af1..0ca4f08d7e1 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/unopened_unit_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/unopened_unit_1.f90
@@ -7,7 +7,7 @@ program unopened_unit_1
Rewind(99)
Do I = 1,10
Read(99,*)J
- If (J.ne.I) Call abort
+ If (J.ne.I) STOP 1
End Do
Close(99, Status='Delete')
End program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/userop.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/userop.f90
index 4fceb476685..7fd4ffa45c5 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/userop.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/userop.f90
@@ -47,21 +47,21 @@ program me
b = .true.
c = .true.
- if (b * c) call abort
+ if (b * c) STOP 1
c = .false.
- if (.not. (b * c)) call abort
- if (c * b) call abort
+ if (.not. (b * c)) STOP 2
+ if (c * b) STOP 3
b = .false.
- if (b * c) call abort
+ if (b * c) STOP 4
i = 0
b = i
- if (b) call abort
+ if (b) STOP 5
i = 2
b = i
- if (.not. b) call abort
+ if (.not. b) STOP 6
j = 3
- if ((i .foo. j) .ne. 5) call abort
+ if ((i .foo. j) .ne. 5) STOP 7
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/where17.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/where17.f90
index b4323ca81fb..a9582c18402 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/where17.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/where17.f90
@@ -11,5 +11,5 @@ program where_17
elsewhere (a .le. 3)
a = 4
endwhere
- if (any (a .ne. (/2, 3, 4/))) call abort
+ if (any (a .ne. (/2, 3, 4/))) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/where18.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/where18.f90
index 403646460b8..88bdb744e7d 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/where18.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/where18.f90
@@ -13,7 +13,7 @@ program where_18
c = 3
endwhere
if (any (a .ne. (/1, 2, 2, 2/))) &
- call abort
+ STOP 1
a = (/1, 1, 1, 1/)
where (c .eq. 1)
@@ -22,5 +22,5 @@ program where_18
b = 3
endwhere
if (any (a .ne. (/2, 2, 2, 1/))) &
- call abort
+ STOP 2
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/where19.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/where19.f90
index 3c41b89978c..76672fa1da8 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/where19.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/where19.f90
@@ -11,13 +11,13 @@ program where_19
c = b
endwhere
if (any (a .ne. (/1, 2, 2, 3/))) &
- call abort ()
+ STOP 1
a = (/1, 2, 3, 4/)
where (c .gt. 1)
b = c
endwhere
if (any (a .ne. (/2, 3, 4, 4/))) &
- call abort ()
+ STOP 2
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/where20.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/where20.f90
index b0456500d13..9a1e1630e01 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/where20.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/where20.f90
@@ -12,7 +12,7 @@ program where_20
! This classic case worked before the patch.
a = (/1, 2, 3, 4/)
where (b .gt. 1) a(2:4) = a(1:3)
- if (any(a .ne. (/1,2,2,3/))) call abort ()
+ if (any(a .ne. (/1,2,2,3/))) STOP 1
! This is the original manifestation of the problem
! and is repeated in where_19.f90.
@@ -20,26 +20,26 @@ program where_20
where (b .gt. 1)
c = b
endwhere
- if (any(a .ne. (/1,2,2,3/))) call abort ()
+ if (any(a .ne. (/1,2,2,3/))) STOP 2
! Mask to.destination dependency.
a = (/1, 2, 3, 4/)
where (b .gt. 1)
c = d
endwhere
- if (any(a .ne. (/1,2,2,3/))) call abort ()
+ if (any(a .ne. (/1,2,2,3/))) STOP 3
! Source to.destination dependency.
a = (/1, 2, 3, 4/)
where (d .gt. 1)
c = b
endwhere
- if (any(a .ne. (/1,2,2,3/))) call abort ()
+ if (any(a .ne. (/1,2,2,3/))) STOP 4
! Check the simple where.
a = (/1, 2, 3, 4/)
where (b .gt. 1) c = b
- if (any(a .ne. (/1,2,2,3/))) call abort ()
+ if (any(a .ne. (/1,2,2,3/))) STOP 5
! This was OK before the patch.
a = (/1, 2, 3, 4/)
@@ -48,7 +48,7 @@ program where_20
c = b
end where
endwhere
- if (any(a .ne. (/1,2,2,3/))) call abort ()
+ if (any(a .ne. (/1,2,2,3/))) STOP 6
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/where21.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/where21.f90
index 6826b87b688..0fbdc9ad099 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/where21.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/where21.f90
@@ -5,5 +5,5 @@ program a
integer, parameter :: i(4) = (/ 1, 1, 1, 1 /)
integer :: z(4) = (/ 1, 1, -1, -1 /)
where(z < 0) z(:) = 1
- if (any(z /= i)) call abort
+ if (any(z /= i)) STOP 1
end program a
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/where_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/where_1.f90
index ba1f8a62579..c4ea9712430 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/where_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/where_1.f90
@@ -19,7 +19,7 @@ program where_1
end forall
if (any (A .ne. reshape ((/1, 1, 1, 1, 1, 0, 1, 2, 1, 2, 0, 1, 2, 3, 0, &
- 0, 1, 4, 2, 0, 0, 5, 6, 6, 5/), (/5, 5/)))) call abort
+ 0, 1, 4, 2, 0, 0, 5, 6, 6, 5/), (/5, 5/)))) STOP 1
! Where inside DO
A(1,:) = (/1,0,0,0,0/)
@@ -37,5 +37,5 @@ program where_1
enddo
if (any (A .ne. reshape ((/1, 1, 1, 1, 1, 0, 1, 2, 1, 2, 0, 1, 2, 6, 0, &
- 0, 1, 0, 2, 0, 0, 0, 5, 5, 5/), (/5, 5/)))) call abort
+ 0, 1, 0, 2, 0, 0, 0, 5, 5, 5/), (/5, 5/)))) STOP 2
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/where_10.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/where_10.f90
index c5a85cec8b7..09dcd3e91b9 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/where_10.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/where_10.f90
@@ -18,6 +18,6 @@ program where_10
b = 5
endwhere
if (any (b .ne. (/3, 1, 4, 1, 5/))) &
- call abort
+ STOP 1
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/where_11.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/where_11.f90
index f2eb69f2ebe..7de0b856c97 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/where_11.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/where_11.f90
@@ -18,6 +18,6 @@ program where_11
b = 5
endwhere
if (any (b .ne. (/3, 1, 4, 1, 5/))) &
- call abort
+ STOP 1
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/where_14.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/where_14.f90
index 640bdf574a6..f02b73ef698 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/where_14.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/where_14.f90
@@ -10,6 +10,6 @@ program where_14
elsewhere
endwhere
if (any (b .ne. (/3, 0, 0, 0, 0/))) &
- call abort
+ STOP 1
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/where_15.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/where_15.f90
index ffbebb728aa..633c4a2260c 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/where_15.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/where_15.f90
@@ -10,6 +10,6 @@ program where_15
b = 2
endwhere
if (any (b .ne. (/0, 2, 2, 2, 2/))) &
- call abort
+ STOP 1
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/where_16.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/where_16.f90
index 19f012a11ad..97279106c49 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/where_16.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/where_16.f90
@@ -34,6 +34,6 @@ program where_16
endwhere
endwhere
if (any (c .ne. (/1, 2, 3, 4, 5, 6, 7, 8, 9/))) &
- call abort
+ STOP 1
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/where_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/where_2.f90
index 25a8dc9e7a8..256f95533e4 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/where_2.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/where_2.f90
@@ -18,5 +18,5 @@ program where_2
END WHERE
if (any (temp .ne. (/100, 100, 100, 210, 210, 210, 310, 310, 337, 337/))) &
- call abort
+ STOP 1
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/where_3.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/where_3.f90
index a9f7ef7bc08..fbe29611264 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/where_3.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/where_3.f90
@@ -16,6 +16,6 @@ subroutine sub(B)
B(:,1) = B(:,1) + 10
endwhere
if (any (B .ne. reshape ((/0, 0, 0, 0, 0, 15, 15, 15, 15, 15, &
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/), (/10, 2/)))) call abort
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0/), (/10, 2/)))) STOP 1
end subroutine
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/where_4.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/where_4.f90
index 104096b356a..737b0073b30 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/where_4.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/where_4.f90
@@ -9,5 +9,5 @@ program where_4
where (b .ne. 0)
a(:) = a(5:1:-1)
endwhere
- if (any (a .ne. (/5, 2, 3, 4, 1/))) call abort
+ if (any (a .ne. (/5, 2, 3, 4, 1/))) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/where_5.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/where_5.f90
index 58d24ecbb30..c21706c857d 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/where_5.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/where_5.f90
@@ -9,5 +9,5 @@ program where_5
where (b .ne. 0d0)
a(:) = a(:) + 10
endwhere
- if (any (a .ne. (/11, 2, 13, 4, 15/))) call abort
+ if (any (a .ne. (/11, 2, 13, 4, 15/))) STOP 1
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/where_6.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/where_6.f90
index 274598b8d77..911196e78fb 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/where_6.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/where_6.f90
@@ -19,5 +19,5 @@ program where_6
endwhere
end forall
if (any (A .ne. reshape ((/1,2,6,2,1,0,1,2,1,2,0,1,2,5,0,0,1,6,2,0,0,0,2,&
- 6,0/), (/5, 5/)))) call abort
+ 6,0/), (/5, 5/)))) STOP 1
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/where_7.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/where_7.f90
index 49dc5952a9f..99e60bf2463 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/where_7.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/where_7.f90
@@ -28,10 +28,10 @@ program evil_where
end where
end forall
- if (any(v(1)%p(:) .ne. (/11, 10/))) call abort
- if (any(v(2)%p(:) .ne. (/1, 2, 3, 4, 17, 18, 19, 20/))) call abort
- if (any(v(4)%p(:) .ne. (/1, 2, 3, 4, 5, 6, 19, 20/))) call abort
- if (any(v(5)%p(:) .ne. (/9, 10/))) call abort
+ if (any(v(1)%p(:) .ne. (/11, 10/))) STOP 1
+ if (any(v(2)%p(:) .ne. (/1, 2, 3, 4, 17, 18, 19, 20/))) STOP 2
+ if (any(v(4)%p(:) .ne. (/1, 2, 3, 4, 5, 6, 19, 20/))) STOP 3
+ if (any(v(5)%p(:) .ne. (/9, 10/))) STOP 4
v(1)%p(:) = (/9, 10/)
v(2)%p(:) = (/1, 2, 3, 4, 5, 6, 7, 8/)
@@ -44,10 +44,10 @@ program evil_where
end where
end forall
- if (any(v(1)%p(:) .ne. (/9, 10/))) call abort
- if (any(v(2)%p(:) .ne. (/13, 14, 15, 16, 5, 6, 7, 8/))) call abort
- if (any(v(4)%p(:) .ne. (/13, 14, 15, 16, 17, 18, 19, 20/))) call abort
- if (any(v(5)%p(:) .ne. (/11, 12/))) call abort
+ if (any(v(1)%p(:) .ne. (/9, 10/))) STOP 5
+ if (any(v(2)%p(:) .ne. (/13, 14, 15, 16, 5, 6, 7, 8/))) STOP 6
+ if (any(v(4)%p(:) .ne. (/13, 14, 15, 16, 17, 18, 19, 20/))) STOP 7
+ if (any(v(5)%p(:) .ne. (/11, 12/))) STOP 8
! I should really free the memory I've allocated.
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/where_8.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/where_8.f90
index 58a26bd3483..c811c93124b 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/where_8.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/where_8.f90
@@ -21,8 +21,8 @@ program where_8
end where
end forall
- if (any(v(1)%p(:) .ne. (/21, 10, 0, 0, 0, 0, 0, 0/))) call abort
- if (any(v(2)%p(:) .ne. (/1, 2, 3, 4, 21, 21, 21, 21/))) call abort
- if (any(v(4)%p(:) .ne. (/21, 21, 21, 21, 21, 21, 19, 20/))) call abort
- if (any(v(5)%p(:) .ne. (/21, 21, 0, 0, 0, 0, 0, 0/))) call abort
+ if (any(v(1)%p(:) .ne. (/21, 10, 0, 0, 0, 0, 0, 0/))) STOP 1
+ if (any(v(2)%p(:) .ne. (/1, 2, 3, 4, 21, 21, 21, 21/))) STOP 2
+ if (any(v(4)%p(:) .ne. (/21, 21, 21, 21, 21, 21, 19, 20/))) STOP 3
+ if (any(v(5)%p(:) .ne. (/21, 21, 0, 0, 0, 0, 0, 0/))) STOP 4
end program
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/write_a_1.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/write_a_1.f90
index 18cb103cbe7..ff1e58923c8 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/write_a_1.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/write_a_1.f90
@@ -4,11 +4,11 @@
character*25 s
! string = format
write(s,'(A11)') "hello world"
- if (s.ne."hello world") call abort
+ if (s.ne."hello world") STOP 1
! string < format
write(s,'(A2)') "hello world"
- if (s.ne."he") call abort
+ if (s.ne."he") STOP 2
! string > format
write(s,'(A18)') "hello world"
- if (s.ne." hello world") call abort
+ if (s.ne." hello world") STOP 3
end
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/write_logical.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/write_logical.f90
index 4e0060702f3..4a3a70e1d28 100644
--- a/gcc/testsuite/gfortran.fortran-torture/execute/write_logical.f90
+++ b/gcc/testsuite/gfortran.fortran-torture/execute/write_logical.f90
@@ -7,17 +7,17 @@
false = .FALSE.
b = ''
write (b, '(L1)') true
- if (b(1:1) .ne. 'T') call abort
+ if (b(1:1) .ne. 'T') STOP 1
b = ''
write (b, '(L1)') false
- if (b(1:1) .ne. 'F') call abort
+ if (b(1:1) .ne. 'F') STOP 2
b = ''
write(b, '(L4)') true
- if (b(1:4) .ne. ' T') call abort
+ if (b(1:4) .ne. ' T') STOP 3
b = ''
write(b, '(L4)') false
- if (b(1:4) .ne. ' F') call abort
+ if (b(1:4) .ne. ' F') STOP 4
end
diff --git a/gcc/testsuite/gnat.dg/array11.adb b/gcc/testsuite/gnat.dg/array11.adb
index 7be61c4b631..aab73470092 100644
--- a/gcc/testsuite/gnat.dg/array11.adb
+++ b/gcc/testsuite/gnat.dg/array11.adb
@@ -1,15 +1,17 @@
-- { dg-do compile }
+with System;
+
procedure Array11 is
type Rec is null record;
- type Ptr is access all Rec;
+ type Index_T is mod System.Memory_Size;
- type Arr1 is array (1..8) of aliased Rec; -- { dg-warning "padded" }
- type Arr2 is array (Long_Integer) of aliased Rec; -- { dg-warning "padded" }
+ type Arr1 is array (1 .. 8) of aliased Rec; -- { dg-warning "padded" }
+ type Arr2 is array (Index_T) of aliased Rec; -- { dg-warning "padded" }
A1 : Arr1;
- A2 : Arr2; -- { dg-warning "Storage_Error" }
+ A2 : Arr2;
begin
null;
diff --git a/gcc/testsuite/gnat.dg/dispatch1.adb b/gcc/testsuite/gnat.dg/disp1.adb
index 28e97e6e7e7..2fcefeafb42 100644
--- a/gcc/testsuite/gnat.dg/dispatch1.adb
+++ b/gcc/testsuite/gnat.dg/disp1.adb
@@ -1,7 +1,8 @@
-- { dg-do run }
-with dispatch1_p; use dispatch1_p;
-procedure dispatch1 is
+with Disp1_Pkg; use Disp1_Pkg;
+
+procedure Disp1 is
O : DT_I1;
Ptr : access I1'Class;
begin
diff --git a/gcc/testsuite/gnat.dg/dispatch1_p.ads b/gcc/testsuite/gnat.dg/disp1_pkg.ads
index 73de627516a..4d80e7655e1 100644
--- a/gcc/testsuite/gnat.dg/dispatch1_p.ads
+++ b/gcc/testsuite/gnat.dg/disp1_pkg.ads
@@ -1,4 +1,6 @@
-package dispatch1_p is
+package Disp1_Pkg is
+
type I1 is interface;
type DT_I1 is new I1 with null record;
-end;
+
+end Disp1_Pkg;
diff --git a/gcc/testsuite/gnat.dg/dispatch2.adb b/gcc/testsuite/gnat.dg/disp2.adb
index ed57b13359e..2e1e6226080 100644
--- a/gcc/testsuite/gnat.dg/dispatch2.adb
+++ b/gcc/testsuite/gnat.dg/disp2.adb
@@ -1,7 +1,8 @@
-- { dg-do run }
-with dispatch2_p; use dispatch2_p;
-procedure dispatch2 is
+with Disp2_Pkg; use Disp2_Pkg;
+
+procedure Disp2 is
Obj : Object_Ptr := new Object;
begin
if Obj.Get_Ptr /= Obj.Impl_Of then
diff --git a/gcc/testsuite/gnat.dg/dispatch2_p.adb b/gcc/testsuite/gnat.dg/disp2_pkg.adb
index 243c3ca977a..ed460ec453f 100644
--- a/gcc/testsuite/gnat.dg/dispatch2_p.adb
+++ b/gcc/testsuite/gnat.dg/disp2_pkg.adb
@@ -1,7 +1,8 @@
---
-package body dispatch2_p is
+package body Disp2_Pkg is
+
function Impl_Of (Self : access Object) return Object_Ptr is
begin
return Object_Ptr (Self);
end Impl_Of;
-end;
+
+end Disp2_Pkg;
diff --git a/gcc/testsuite/gnat.dg/dispatch2_p.ads b/gcc/testsuite/gnat.dg/disp2_pkg.ads
index e7852b446b5..0b4903abe34 100644
--- a/gcc/testsuite/gnat.dg/dispatch2_p.ads
+++ b/gcc/testsuite/gnat.dg/disp2_pkg.ads
@@ -1,8 +1,11 @@
-package dispatch2_p is
+package Disp2_Pkg is
+
type Object is tagged null record;
type Object_Ptr is access all Object'CLASS;
---
+
function Impl_Of (Self : access Object) return Object_Ptr;
function Get_Ptr (Self : access Object) return Object_Ptr
renames Impl_Of;
-end;
+
+end Disp2_Pkg;
+
diff --git a/gcc/testsuite/gnat.dg/generic_dispatch.adb b/gcc/testsuite/gnat.dg/generic_disp.adb
index a22e495f451..2f828ff1b1b 100644
--- a/gcc/testsuite/gnat.dg/generic_dispatch.adb
+++ b/gcc/testsuite/gnat.dg/generic_disp.adb
@@ -1,9 +1,10 @@
-- { dg-do run }
-with generic_dispatch_p; use generic_dispatch_p;
-procedure generic_dispatch is
+with Generic_Disp_Pkg; use Generic_Disp_Pkg;
+
+procedure Generic_Disp is
I : aliased Integer := 0;
D : Iface'Class := Dispatching_Constructor (DT'Tag, I'access);
begin
null;
-end generic_dispatch;
+end Generic_Disp;
diff --git a/gcc/testsuite/gnat.dg/generic_dispatch_p.adb b/gcc/testsuite/gnat.dg/generic_disp_pkg.adb
index 7a4bbbd8a2b..b3aeb3ff078 100644
--- a/gcc/testsuite/gnat.dg/generic_dispatch_p.adb
+++ b/gcc/testsuite/gnat.dg/generic_disp_pkg.adb
@@ -1,7 +1,9 @@
-package body generic_dispatch_p is
+package body Generic_Disp_Pkg is
+
function Constructor (I : not null access Integer) return DT is
R : DT;
- begin
+ begin
return R;
end Constructor;
-end;
+
+end Generic_Disp_Pkg;
diff --git a/gcc/testsuite/gnat.dg/generic_dispatch_p.ads b/gcc/testsuite/gnat.dg/generic_disp_pkg.ads
index fe6115dd9c7..5be54921d83 100644
--- a/gcc/testsuite/gnat.dg/generic_dispatch_p.ads
+++ b/gcc/testsuite/gnat.dg/generic_disp_pkg.ads
@@ -1,5 +1,6 @@
with Ada.Tags.Generic_Dispatching_Constructor;
-package generic_dispatch_p is
+
+package Generic_Disp_Pkg is
type Iface is interface;
function Constructor (I : not null access Integer) return Iface is abstract;
function Dispatching_Constructor
@@ -10,4 +11,4 @@ package generic_dispatch_p is
type DT is new Iface with null record;
overriding
function Constructor (I : not null access Integer) return DT;
-end;
+end Generic_Disp_Pkg;
diff --git a/gcc/testsuite/gnat.dg/null_pointer_deref1.adb b/gcc/testsuite/gnat.dg/null_pointer_deref1.adb
index 6e7bf14e5df..ec7f9460559 100644
--- a/gcc/testsuite/gnat.dg/null_pointer_deref1.adb
+++ b/gcc/testsuite/gnat.dg/null_pointer_deref1.adb
@@ -17,5 +17,5 @@ procedure Null_Pointer_Deref1 is
begin
Data.all := 1;
exception
- when Constraint_Error | Storage_Error => null;
+ when others => null;
end;
diff --git a/gcc/testsuite/gnat.dg/null_pointer_deref2.adb b/gcc/testsuite/gnat.dg/null_pointer_deref2.adb
index 63e2dd11f39..284762216c5 100644
--- a/gcc/testsuite/gnat.dg/null_pointer_deref2.adb
+++ b/gcc/testsuite/gnat.dg/null_pointer_deref2.adb
@@ -20,7 +20,7 @@ procedure Null_Pointer_Deref2 is
begin
Data.all := 1;
exception
- when Constraint_Error | Storage_Error => null;
+ when others => null;
end T;
begin
diff --git a/gcc/testsuite/gnat.dg/object_overflow1.adb b/gcc/testsuite/gnat.dg/object_overflow1.adb
index ba7f657e710..d972f24a1fe 100644
--- a/gcc/testsuite/gnat.dg/object_overflow1.adb
+++ b/gcc/testsuite/gnat.dg/object_overflow1.adb
@@ -1,10 +1,12 @@
-- { dg-do compile }
+with Interfaces.C; use Interfaces.C;
+
procedure Object_Overflow1 is
procedure Proc (x : Boolean) is begin null; end;
- type Arr is array(Long_Integer) of Boolean;
+ type Arr is array(ptrdiff_t) of Boolean;
Obj : Arr; -- { dg-warning "Storage_Error" }
begin
diff --git a/gcc/testsuite/gnat.dg/object_overflow2.adb b/gcc/testsuite/gnat.dg/object_overflow2.adb
index 9601c563b2a..a429291e80a 100644
--- a/gcc/testsuite/gnat.dg/object_overflow2.adb
+++ b/gcc/testsuite/gnat.dg/object_overflow2.adb
@@ -1,10 +1,12 @@
-- { dg-do compile }
+with Interfaces.C; use Interfaces.C;
+
procedure Object_Overflow2 is
procedure Proc (x : Boolean) is begin null; end;
- type Arr is array(0 .. Long_Integer'Last) of Boolean;
+ type Arr is array(0 .. ptrdiff_t'Last) of Boolean;
Obj : Arr; -- { dg-warning "Storage_Error" }
begin
diff --git a/gcc/testsuite/gnat.dg/object_overflow3.adb b/gcc/testsuite/gnat.dg/object_overflow3.adb
index 5e27b4f0d81..d3c0c17c57d 100644
--- a/gcc/testsuite/gnat.dg/object_overflow3.adb
+++ b/gcc/testsuite/gnat.dg/object_overflow3.adb
@@ -1,10 +1,12 @@
-- { dg-do compile }
+with Interfaces.C; use Interfaces.C;
+
procedure Object_Overflow3 is
procedure Proc (x : Boolean) is begin null; end;
- type Arr is array(0 .. Long_Integer'Last) of Boolean;
+ type Arr is array(0 .. ptrdiff_t'Last) of Boolean;
type Rec is record
A : Arr;
diff --git a/gcc/testsuite/gnat.dg/object_overflow4.adb b/gcc/testsuite/gnat.dg/object_overflow4.adb
index 643989d348c..0e320e265ad 100644
--- a/gcc/testsuite/gnat.dg/object_overflow4.adb
+++ b/gcc/testsuite/gnat.dg/object_overflow4.adb
@@ -1,14 +1,16 @@
-- { dg-do compile }
+with Interfaces.C; use Interfaces.C;
+
procedure Object_Overflow4 is
procedure Proc (x : Integer) is begin null; end;
- type Index is new Long_Integer range 0 .. Long_Integer'Last;
+ type Index_T is new ptrdiff_t range 0 .. ptrdiff_t'Last;
- type Arr is array(Index range <>) of Integer;
+ type Arr is array(Index_T range <>) of Integer;
- type Rec (Size: Index := 6) is record -- { dg-warning "Storage_Error" }
+ type Rec (Size: Index_T := 6) is record -- { dg-warning "Storage_Error" }
A: Arr (0..Size);
end record;
diff --git a/gcc/testsuite/gnat.dg/object_overflow5.adb b/gcc/testsuite/gnat.dg/object_overflow5.adb
index 4a4f6cfe30e..42d00b24b95 100644
--- a/gcc/testsuite/gnat.dg/object_overflow5.adb
+++ b/gcc/testsuite/gnat.dg/object_overflow5.adb
@@ -1,14 +1,16 @@
-- { dg-do compile }
+with Interfaces.C; use Interfaces.C;
+
procedure Object_Overflow5 is
procedure Proc (c : Character) is begin null; end;
- type Index is new Long_Integer range 0 .. Long_Integer'Last;
+ type Index_T is new ptrdiff_t range 0 .. ptrdiff_t'Last;
- type Arr is array(Index range <>) of Character;
+ type Arr is array(Index_T range <>) of Character;
- type Rec (Size: Index := 6) is record -- { dg-warning "Storage_Error" }
+ type Rec (Size: Index_T := 6) is record -- { dg-warning "Storage_Error" }
A: Arr (0..Size);
end record;
diff --git a/gcc/testsuite/go.test/go-test.exp b/gcc/testsuite/go.test/go-test.exp
index 1c83ba11080..cab0d0e2fbb 100644
--- a/gcc/testsuite/go.test/go-test.exp
+++ b/gcc/testsuite/go.test/go-test.exp
@@ -246,6 +246,9 @@ proc go-set-goarch { } {
}
}
}
+ "riscv64-*-*" {
+ set goarch "riscv64"
+ }
"s390*-*-*" {
if [check_effective_target_ilp32] {
set goarch "s390"
diff --git a/gcc/tree-data-ref.c b/gcc/tree-data-ref.c
index fdb2ac1b845..a886329966c 100644
--- a/gcc/tree-data-ref.c
+++ b/gcc/tree-data-ref.c
@@ -2200,13 +2200,10 @@ object_address_invariant_in_loop_p (const struct loop *loop, const_tree obj)
{
if (TREE_CODE (obj) == ARRAY_REF)
{
- /* Index of the ARRAY_REF was zeroed in analyze_indices, thus we only
- need to check the stride and the lower bound of the reference. */
- if (chrec_contains_symbols_defined_in_loop (TREE_OPERAND (obj, 2),
- loop->num)
- || chrec_contains_symbols_defined_in_loop (TREE_OPERAND (obj, 3),
- loop->num))
- return false;
+ for (int i = 1; i < 4; ++i)
+ if (chrec_contains_symbols_defined_in_loop (TREE_OPERAND (obj, i),
+ loop->num))
+ return false;
}
else if (TREE_CODE (obj) == COMPONENT_REF)
{
diff --git a/gcc/tree-ssa-strlen.c b/gcc/tree-ssa-strlen.c
index 94ed2bedc03..71ed0ff1b45 100644
--- a/gcc/tree-ssa-strlen.c
+++ b/gcc/tree-ssa-strlen.c
@@ -44,6 +44,7 @@ along with GCC; see the file COPYING3. If not see
#include "domwalk.h"
#include "tree-ssa-alias.h"
#include "tree-ssa-propagate.h"
+#include "tree-ssa-strlen.h"
#include "params.h"
#include "ipa-chkp.h"
#include "tree-hash-traits.h"
@@ -1780,11 +1781,12 @@ is_strlen_related_p (tree src, tree len)
return false;
}
-/* A helper of handle_builtin_stxncpy. Check to see if the specified
- bound is a) equal to the size of the destination DST and if so, b)
- if it's immediately followed by DST[CNT - 1] = '\0'. If a) holds
- and b) does not, warn. Otherwise, do nothing. Return true if
- diagnostic has been issued.
+/* Called by handle_builtin_stxncpy and by gimple_fold_builtin_strncpy
+ in gimple-fold.c.
+ Check to see if the specified bound is a) equal to the size of
+ the destination DST and if so, b) if it's immediately followed by
+ DST[CNT - 1] = '\0'. If a) holds and b) does not, warn. Otherwise,
+ do nothing. Return true if diagnostic has been issued.
The purpose is to diagnose calls to strncpy and stpncpy that do
not nul-terminate the copy while allowing for the idiom where
@@ -1795,7 +1797,7 @@ is_strlen_related_p (tree src, tree len)
a[sizeof a - 1] = '\0';
*/
-static bool
+bool
maybe_diag_stxncpy_trunc (gimple_stmt_iterator gsi, tree src, tree cnt)
{
gimple *stmt = gsi_stmt (gsi);
@@ -1831,8 +1833,11 @@ maybe_diag_stxncpy_trunc (gimple_stmt_iterator gsi, tree src, tree cnt)
return false;
/* Negative value is the constant string length. If it's less than
- the lower bound there is no truncation. */
- int sidx = get_stridx (src);
+ the lower bound there is no truncation. Avoid calling get_stridx()
+ when ssa_ver_to_stridx is empty. That implies the caller isn't
+ running under the control of this pass and ssa_ver_to_stridx hasn't
+ been created yet. */
+ int sidx = ssa_ver_to_stridx.length () ? get_stridx (src) : 0;
if (sidx < 0 && wi::gtu_p (cntrange[0], ~sidx))
return false;
@@ -1878,6 +1883,7 @@ maybe_diag_stxncpy_trunc (gimple_stmt_iterator gsi, tree src, tree cnt)
poly_int64 lhsoff;
tree lhsbase = get_addr_base_and_unit_offset (lhs, &lhsoff);
if (lhsbase
+ && dstbase
&& known_eq (dstoff, lhsoff)
&& operand_equal_p (dstbase, lhsbase, 0))
return false;
@@ -1934,23 +1940,35 @@ maybe_diag_stxncpy_trunc (gimple_stmt_iterator gsi, tree src, tree cnt)
lenrange[0] = wi::shwi (0, prec);
}
- if (wi::geu_p (lenrange[0], cntrange[1]))
+ gcall *call = as_a <gcall *> (stmt);
+
+ if (lenrange[0] == cntrange[1] && cntrange[0] == cntrange[1])
+ return warning_at (callloc, OPT_Wstringop_truncation,
+ (integer_onep (cnt)
+ ? G_("%G%qD output truncated before terminating "
+ "nul copying %E byte from a string of the "
+ "same length")
+ : G_("%G%qD output truncated before terminating nul "
+ "copying %E bytes from a string of the same "
+ "length")),
+ call, func, cnt);
+ else if (wi::geu_p (lenrange[0], cntrange[1]))
{
/* The shortest string is longer than the upper bound of
the count so the truncation is certain. */
if (cntrange[0] == cntrange[1])
return warning_at (callloc, OPT_Wstringop_truncation,
integer_onep (cnt)
- ? G_("%qD output truncated copying %E byte "
+ ? G_("%G%qD output truncated copying %E byte "
"from a string of length %wu")
- : G_("%qD output truncated copying %E bytes "
+ : G_("%G%qD output truncated copying %E bytes "
"from a string of length %wu"),
- func, cnt, lenrange[0].to_uhwi ());
+ call, func, cnt, lenrange[0].to_uhwi ());
return warning_at (callloc, OPT_Wstringop_truncation,
- "%qD output truncated copying between %wu "
+ "%G%qD output truncated copying between %wu "
"and %wu bytes from a string of length %wu",
- func, cntrange[0].to_uhwi (),
+ call, func, cntrange[0].to_uhwi (),
cntrange[1].to_uhwi (), lenrange[0].to_uhwi ());
}
else if (wi::geu_p (lenrange[1], cntrange[1]))
@@ -1960,16 +1978,16 @@ maybe_diag_stxncpy_trunc (gimple_stmt_iterator gsi, tree src, tree cnt)
if (cntrange[0] == cntrange[1])
return warning_at (callloc, OPT_Wstringop_truncation,
integer_onep (cnt)
- ? G_("%qD output may be truncated copying %E "
+ ? G_("%G%qD output may be truncated copying %E "
"byte from a string of length %wu")
- : G_("%qD output may be truncated copying %E "
+ : G_("%G%qD output may be truncated copying %E "
"bytes from a string of length %wu"),
- func, cnt, lenrange[1].to_uhwi ());
+ call, func, cnt, lenrange[1].to_uhwi ());
return warning_at (callloc, OPT_Wstringop_truncation,
- "%qD output may be truncated copying between %wu "
+ "%G%qD output may be truncated copying between %wu "
"and %wu bytes from a string of length %wu",
- func, cntrange[0].to_uhwi (),
+ call, func, cntrange[0].to_uhwi (),
cntrange[1].to_uhwi (), lenrange[1].to_uhwi ());
}
@@ -1981,9 +1999,9 @@ maybe_diag_stxncpy_trunc (gimple_stmt_iterator gsi, tree src, tree cnt)
the lower bound of the specified count but shorter than the
upper bound the copy may (but need not) be truncated. */
return warning_at (callloc, OPT_Wstringop_truncation,
- "%qD output may be truncated copying between %wu "
- "and %wu bytes from a string of length %wu",
- func, cntrange[0].to_uhwi (),
+ "%G%qD output may be truncated copying between "
+ "%wu and %wu bytes from a string of length %wu",
+ call, func, cntrange[0].to_uhwi (),
cntrange[1].to_uhwi (), lenrange[0].to_uhwi ());
}
}
@@ -2002,8 +2020,8 @@ maybe_diag_stxncpy_trunc (gimple_stmt_iterator gsi, tree src, tree cnt)
if (cntrange[0] == cntrange[1])
return warning_at (callloc, OPT_Wstringop_truncation,
- "%qD specified bound %E equals destination size",
- func, cnt);
+ "%G%qD specified bound %E equals destination size",
+ as_a <gcall *> (stmt), func, cnt);
}
return false;
@@ -2102,14 +2120,15 @@ handle_builtin_stxncpy (built_in_function, gimple_stmt_iterator *gsi)
if (sisrc == silen
&& is_strlen_related_p (src, len)
&& warning_at (callloc, OPT_Wstringop_truncation,
- "%qD output truncated before terminating nul "
+ "%G%qD output truncated before terminating nul "
"copying as many bytes from a string as its length",
- func))
+ as_a <gcall *>(stmt), func))
warned = true;
else if (silen && is_strlen_related_p (src, silen->ptr))
warned = warning_at (callloc, OPT_Wstringop_overflow_,
- "%qD specified bound depends on the length "
- "of the source argument", func);
+ "%G%qD specified bound depends on the length "
+ "of the source argument",
+ as_a <gcall *>(stmt), func);
if (warned)
{
location_t strlenloc = pss->second;
diff --git a/gcc/tree-ssa-strlen.h b/gcc/tree-ssa-strlen.h
new file mode 100644
index 00000000000..1399a7819eb
--- /dev/null
+++ b/gcc/tree-ssa-strlen.h
@@ -0,0 +1,26 @@
+/* Declarations of tree-ssa-strlen API.
+
+ Copyright (C) 2018 Free Software Foundation, Inc.
+
+ This file is part of GCC.
+
+ GCC is free software; you can redistribute it and/or modify it under
+ the terms of the GNU General Public License as published by the Free
+ Software Foundation; either version 3, or (at your option) any later
+ version.
+
+ GCC is distributed in the hope that it will be useful, but WITHOUT ANY
+ WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with GCC; see the file COPYING3. If not see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef GCC_TREE_SSA_STRLEN_H
+#define GCC_TREE_SSA_STRLEN_H
+
+extern bool maybe_diag_stxncpy_trunc (gimple_stmt_iterator, tree, tree);
+
+#endif // GCC_TREE_SSA_STRLEN_H
diff --git a/gcc/tree-ssa.c b/gcc/tree-ssa.c
index ee311ce9758..d197f99bdd2 100644
--- a/gcc/tree-ssa.c
+++ b/gcc/tree-ssa.c
@@ -1427,12 +1427,14 @@ non_rewritable_mem_ref_base (tree ref)
if (! DECL_P (decl))
return NULL_TREE;
if (! is_gimple_reg_type (TREE_TYPE (base))
- || VOID_TYPE_P (TREE_TYPE (base)))
+ || VOID_TYPE_P (TREE_TYPE (base))
+ || TREE_THIS_VOLATILE (decl) != TREE_THIS_VOLATILE (base))
return decl;
if ((TREE_CODE (TREE_TYPE (decl)) == VECTOR_TYPE
|| TREE_CODE (TREE_TYPE (decl)) == COMPLEX_TYPE)
&& useless_type_conversion_p (TREE_TYPE (base),
TREE_TYPE (TREE_TYPE (decl)))
+ && known_ge (mem_ref_offset (base), 0)
&& known_gt (wi::to_poly_offset (TYPE_SIZE_UNIT (TREE_TYPE (decl))),
mem_ref_offset (base))
&& multiple_of_p (sizetype, TREE_OPERAND (base, 1),
@@ -1515,11 +1517,11 @@ non_rewritable_lvalue_p (tree lhs)
&& TYPE_MODE (TREE_TYPE (decl)) != BLKmode
&& operand_equal_p (TYPE_SIZE_UNIT (TREE_TYPE (lhs)),
TYPE_SIZE_UNIT (TREE_TYPE (TREE_TYPE (decl))), 0)
- && tree_fits_uhwi_p (TREE_OPERAND (lhs, 1))
- && tree_int_cst_lt (TREE_OPERAND (lhs, 1),
- TYPE_SIZE_UNIT (TREE_TYPE (decl)))
- && (tree_to_uhwi (TREE_OPERAND (lhs, 1))
- % tree_to_uhwi (TYPE_SIZE_UNIT (TREE_TYPE (lhs)))) == 0)
+ && known_ge (mem_ref_offset (lhs), 0)
+ && known_gt (wi::to_poly_offset (TYPE_SIZE_UNIT (TREE_TYPE (decl))),
+ mem_ref_offset (lhs))
+ && multiple_of_p (sizetype, TREE_OPERAND (lhs, 1),
+ TYPE_SIZE_UNIT (TREE_TYPE (lhs))))
return false;
}
diff --git a/gcc/tree-vect-patterns.c b/gcc/tree-vect-patterns.c
index 25a2efb21f8..34f69e9843d 100644
--- a/gcc/tree-vect-patterns.c
+++ b/gcc/tree-vect-patterns.c
@@ -1113,7 +1113,8 @@ vect_recog_pow_pattern (vec<gimple *> *stmts, tree *type_in,
cgraph_node *node = cgraph_node::get_create (exp_decl);
if (node->simd_clones == NULL)
{
- if (node->definition)
+ if (targetm.simd_clone.compute_vecsize_and_simdlen == NULL
+ || node->definition)
return NULL;
expand_simd_clones (node);
if (node->simd_clones == NULL)
diff --git a/gcc/var-tracking.c b/gcc/var-tracking.c
index fb30ec223ef..56a701c283e 100644
--- a/gcc/var-tracking.c
+++ b/gcc/var-tracking.c
@@ -8860,14 +8860,12 @@ emit_note_insn_var_location (variable **varp, emit_note_data *data)
/* Make sure that the call related notes come first. */
while (NEXT_INSN (insn)
&& NOTE_P (insn)
- && ((NOTE_KIND (insn) == NOTE_INSN_VAR_LOCATION
- && NOTE_DURING_CALL_P (insn))
- || NOTE_KIND (insn) == NOTE_INSN_CALL_ARG_LOCATION))
+ && NOTE_KIND (insn) == NOTE_INSN_VAR_LOCATION
+ && NOTE_DURING_CALL_P (insn))
insn = NEXT_INSN (insn);
if (NOTE_P (insn)
- && ((NOTE_KIND (insn) == NOTE_INSN_VAR_LOCATION
- && NOTE_DURING_CALL_P (insn))
- || NOTE_KIND (insn) == NOTE_INSN_CALL_ARG_LOCATION))
+ && NOTE_KIND (insn) == NOTE_INSN_VAR_LOCATION
+ && NOTE_DURING_CALL_P (insn))
note = emit_note_after (NOTE_INSN_VAR_LOCATION, insn);
else
note = emit_note_before (NOTE_INSN_VAR_LOCATION, insn);
@@ -9210,7 +9208,6 @@ emit_notes_in_bb (basic_block bb, dataflow_set *set)
emit_notes_for_changes (insn, EMIT_NOTE_AFTER_CALL_INSN, set->vars);
{
rtx arguments = mo->u.loc, *p = &arguments;
- rtx_note *note;
while (*p)
{
XEXP (XEXP (*p, 0), 1)
@@ -9218,7 +9215,11 @@ emit_notes_in_bb (basic_block bb, dataflow_set *set)
shared_hash_htab (set->vars));
/* If expansion is successful, keep it in the list. */
if (XEXP (XEXP (*p, 0), 1))
- p = &XEXP (*p, 1);
+ {
+ XEXP (XEXP (*p, 0), 1)
+ = copy_rtx_if_shared (XEXP (XEXP (*p, 0), 1));
+ p = &XEXP (*p, 1);
+ }
/* Otherwise, if the following item is data_value for it,
drop it too too. */
else if (XEXP (*p, 1)
@@ -9234,8 +9235,7 @@ emit_notes_in_bb (basic_block bb, dataflow_set *set)
else
*p = XEXP (*p, 1);
}
- note = emit_note_after (NOTE_INSN_CALL_ARG_LOCATION, insn);
- NOTE_VAR_LOCATION (note) = arguments;
+ add_reg_note (insn, REG_CALL_ARG_LOCATION, arguments);
}
break;
diff --git a/gcc/vec.h b/gcc/vec.h
index 24f57b183a3..c707bccf51c 100644
--- a/gcc/vec.h
+++ b/gcc/vec.h
@@ -490,8 +490,12 @@ template <typename T>
inline void
vec_default_construct (T *dst, unsigned n)
{
+#ifndef BROKEN_VALUE_INITIALIZATION
for ( ; n; ++dst, --n)
::new (static_cast<void*>(dst)) T ();
+#else
+ memset (dst, '\0', sizeof (T) * n);
+#endif
}
/* Copy-construct N elements in DST from *SRC. */
diff --git a/libatomic/ChangeLog b/libatomic/ChangeLog
index c64a1aaa225..231270776a7 100644
--- a/libatomic/ChangeLog
+++ b/libatomic/ChangeLog
@@ -1,3 +1,8 @@
+2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
+
+ PR target/84148
+ * configure: Regenerate.
+
2018-01-03 Jakub Jelinek <jakub@redhat.com>
Update copyright years.
diff --git a/libatomic/configure b/libatomic/configure
index 47a9b985450..9445aee1291 100755
--- a/libatomic/configure
+++ b/libatomic/configure
@@ -15314,18 +15314,28 @@ else
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
case "$host" in
i[34567]86-*-linux* | x86_64-*-linux*)
case "$enable_cet" in
default)
- # Check if assembler supports CET.
+ # Check if target supports multi-byte NOPs
+ # and if assembler supports CET insn.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
main ()
{
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
asm ("setssbsy");
+#endif
+
;
return 0;
}
@@ -15365,6 +15375,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
esac
if test x$enable_cet = xyes; then
CET_FLAGS="-fcf-protection -mcet"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
XCFLAGS="$XCFLAGS $CET_FLAGS"
diff --git a/libbacktrace/ChangeLog b/libbacktrace/ChangeLog
index 9ebce200e37..64733a82ca2 100644
--- a/libbacktrace/ChangeLog
+++ b/libbacktrace/ChangeLog
@@ -1,3 +1,23 @@
+2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
+
+ PR target/84148
+ * configure: Regenerate.
+
+2018-02-15 Jakub Jelinek <jakub@redhat.com>
+
+ PR other/82368
+ * elf.c (SHT_PROGBITS): Undefine and define.
+
+2018-02-14 Jakub Jelinek <jakub@redhat.com>
+
+ PR other/82368
+ * elf.c (EM_PPC64, EF_PPC64_ABI): Undefine and define.
+ (struct elf_ppc64_opd_data): New type.
+ (elf_initialize_syminfo): Add opd argument, handle symbols
+ pointing into the PowerPC64 ELFv1 .opd section.
+ (elf_add): Read .opd section on PowerPC64 ELFv1, pass pointer
+ to structure with .opd data to elf_initialize_syminfo.
+
2018-01-31 Ian Lance Taylor <iant@golang.org>
* elf.c (elf_add): Close descriptor if we use a debugfile.
diff --git a/libbacktrace/configure b/libbacktrace/configure
index 8943b0ca7fd..77c6fe34d1e 100755
--- a/libbacktrace/configure
+++ b/libbacktrace/configure
@@ -11802,18 +11802,28 @@ else
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
case "$host" in
i[34567]86-*-linux* | x86_64-*-linux*)
case "$enable_cet" in
default)
- # Check if assembler supports CET.
+ # Check if target supports multi-byte NOPs
+ # and if assembler supports CET insn.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
main ()
{
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
asm ("setssbsy");
+#endif
+
;
return 0;
}
@@ -11853,6 +11863,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
esac
if test x$enable_cet = xyes; then
CET_FLAGS="-fcf-protection -mcet"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
EXTRA_FLAGS="$EXTRA_FLAGS $CET_FLAGS"
diff --git a/libbacktrace/elf.c b/libbacktrace/elf.c
index 3ee1dbeaf79..19da5a97b23 100644
--- a/libbacktrace/elf.c
+++ b/libbacktrace/elf.c
@@ -165,9 +165,12 @@ dl_iterate_phdr (int (*callback) (struct dl_phdr_info *,
#undef ELFDATA2MSB
#undef EV_CURRENT
#undef ET_DYN
+#undef EM_PPC64
+#undef EF_PPC64_ABI
#undef SHN_LORESERVE
#undef SHN_XINDEX
#undef SHN_UNDEF
+#undef SHT_PROGBITS
#undef SHT_SYMTAB
#undef SHT_STRTAB
#undef SHT_DYNSYM
@@ -245,6 +248,9 @@ typedef struct {
#define ET_DYN 3
+#define EM_PPC64 21
+#define EF_PPC64_ABI 3
+
typedef struct {
b_elf_word sh_name; /* Section name, index in string tbl */
b_elf_word sh_type; /* Type of section */
@@ -262,6 +268,7 @@ typedef struct {
#define SHN_LORESERVE 0xFF00 /* Begin range of reserved indices */
#define SHN_XINDEX 0xFFFF /* Section index is held elsewhere */
+#define SHT_PROGBITS 1
#define SHT_SYMTAB 2
#define SHT_STRTAB 3
#define SHT_DYNSYM 11
@@ -405,6 +412,20 @@ struct elf_syminfo_data
size_t count;
};
+/* Information about PowerPC64 ELFv1 .opd section. */
+
+struct elf_ppc64_opd_data
+{
+ /* Address of the .opd section. */
+ b_elf_addr addr;
+ /* Section data. */
+ const char *data;
+ /* Size of the .opd section. */
+ size_t size;
+ /* Corresponding section view. */
+ struct backtrace_view view;
+};
+
/* Compute the CRC-32 of BUF/LEN. This uses the CRC used for
.gnu_debuglink files. */
@@ -569,7 +590,8 @@ elf_initialize_syminfo (struct backtrace_state *state,
const unsigned char *symtab_data, size_t symtab_size,
const unsigned char *strtab, size_t strtab_size,
backtrace_error_callback error_callback,
- void *data, struct elf_syminfo_data *sdata)
+ void *data, struct elf_syminfo_data *sdata,
+ struct elf_ppc64_opd_data *opd)
{
size_t sym_count;
const b_elf_sym *sym;
@@ -620,7 +642,17 @@ elf_initialize_syminfo (struct backtrace_state *state,
return 0;
}
elf_symbols[j].name = (const char *) strtab + sym->st_name;
- elf_symbols[j].address = sym->st_value + base_address;
+ /* Special case PowerPC64 ELFv1 symbols in .opd section, if the symbol
+ is a function descriptor, read the actual code address from the
+ descriptor. */
+ if (opd
+ && sym->st_value >= opd->addr
+ && sym->st_value < opd->addr + opd->size)
+ elf_symbols[j].address
+ = *(const b_elf_addr *) (opd->data + (sym->st_value - opd->addr));
+ else
+ elf_symbols[j].address = sym->st_value;
+ elf_symbols[j].address += base_address;
elf_symbols[j].size = sym->st_size;
++j;
}
@@ -2637,6 +2669,7 @@ elf_add (struct backtrace_state *state, const char *filename, int descriptor,
int debug_view_valid;
unsigned int using_debug_view;
uint16_t *zdebug_table;
+ struct elf_ppc64_opd_data opd_data, *opd;
if (!debuginfo)
{
@@ -2655,6 +2688,7 @@ elf_add (struct backtrace_state *state, const char *filename, int descriptor,
debuglink_name = NULL;
debuglink_crc = 0;
debug_view_valid = 0;
+ opd = NULL;
if (!backtrace_get_view (state, descriptor, 0, sizeof ehdr, error_callback,
data, &ehdr_view))
@@ -2857,6 +2891,23 @@ elf_add (struct backtrace_state *state, const char *filename, int descriptor,
debuglink_crc = *(const uint32_t*)(debuglink_data + crc_offset);
}
}
+
+ /* Read the .opd section on PowerPC64 ELFv1. */
+ if (ehdr.e_machine == EM_PPC64
+ && (ehdr.e_flags & EF_PPC64_ABI) < 2
+ && shdr->sh_type == SHT_PROGBITS
+ && strcmp (name, ".opd") == 0)
+ {
+ if (!backtrace_get_view (state, descriptor, shdr->sh_offset,
+ shdr->sh_size, error_callback, data,
+ &opd_data.view))
+ goto fail;
+
+ opd = &opd_data;
+ opd->addr = shdr->sh_addr;
+ opd->data = (const char *) opd_data.view.data;
+ opd->size = shdr->sh_size;
+ }
}
if (symtab_shndx == 0)
@@ -2898,7 +2949,7 @@ elf_add (struct backtrace_state *state, const char *filename, int descriptor,
if (!elf_initialize_syminfo (state, base_address,
symtab_view.data, symtab_shdr->sh_size,
strtab_view.data, strtab_shdr->sh_size,
- error_callback, data, sdata))
+ error_callback, data, sdata, opd))
{
backtrace_free (state, sdata, sizeof *sdata, error_callback, data);
goto fail;
@@ -2951,6 +3002,12 @@ elf_add (struct backtrace_state *state, const char *filename, int descriptor,
buildid_view_valid = 0;
}
+ if (opd)
+ {
+ backtrace_release_view (state, &opd->view, error_callback, data);
+ opd = NULL;
+ }
+
if (debuglink_name != NULL)
{
int d;
@@ -3139,6 +3196,8 @@ elf_add (struct backtrace_state *state, const char *filename, int descriptor,
backtrace_release_view (state, &buildid_view, error_callback, data);
if (debug_view_valid)
backtrace_release_view (state, &debug_view, error_callback, data);
+ if (opd)
+ backtrace_release_view (state, &opd->view, error_callback, data);
if (descriptor != -1)
backtrace_close (descriptor, error_callback, data);
return 0;
diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog
index 9c675a52d0c..39e8895aeb1 100644
--- a/libcpp/ChangeLog
+++ b/libcpp/ChangeLog
@@ -1,3 +1,23 @@
+2018-02-16 Richard Biener <rguenther@suse.de>
+
+ PR bootstrap/82939
+ * line-map.c (linemap_init): Avoid broken value-init when compiling
+ with GCC 4.2.
+
+2018-02-15 Jason Merrill <jason@redhat.com>
+ Jakub Jelinek <jakub@redhat.com>
+
+ PR preprocessor/83063 - __VA_OPT__ and ##
+ PR preprocessor/83708
+ * macro.c (vaopt_state): Reorder m_last_was_paste before m_state.
+ (vaopt_state::vaopt_state): Adjust.
+ (vaopt_state::update_flags): Add BEGIN and END.
+ (vaopt_state::update): Return them.
+ (copy_paste_flag): Factor out of replace_args.
+ (last_token_is): New.
+ (replace_args): Handle BEGIN and END. Avoid padding there.
+ (tokens_buff_last_token_ptr): Return NULL if no tokens.
+
2018-01-31 Jakub Jelinek <jakub@redhat.com>
PR preprocessor/69869
diff --git a/libcpp/line-map.c b/libcpp/line-map.c
index 677acd6dd92..a84084c99f0 100644
--- a/libcpp/line-map.c
+++ b/libcpp/line-map.c
@@ -344,7 +344,12 @@ void
linemap_init (struct line_maps *set,
source_location builtin_location)
{
+#if __GNUC__ == 4 && __GNUC_MINOR__ == 2 && !defined (__clang__)
+ /* PR33916, needed to fix PR82939. */
+ memset (set, 0, sizeof (struct line_maps));
+#else
*set = line_maps ();
+#endif
set->highest_location = RESERVED_LOCATION_COUNT - 1;
set->highest_line = RESERVED_LOCATION_COUNT - 1;
set->location_adhoc_data_map.htab =
diff --git a/libcpp/macro.c b/libcpp/macro.c
index c5f3ffde722..776af7bd00e 100644
--- a/libcpp/macro.c
+++ b/libcpp/macro.c
@@ -51,7 +51,7 @@ struct macro_arg
enum macro_arg_token_kind {
MACRO_ARG_TOKEN_NORMAL,
/* This is a macro argument token that got transformed into a string
- litteral, e.g. #foo. */
+ literal, e.g. #foo. */
MACRO_ARG_TOKEN_STRINGIFIED,
/* This is a token resulting from the expansion of a macro
argument that was itself a macro. */
@@ -105,8 +105,8 @@ class vaopt_state {
: m_pfile (pfile),
m_allowed (any_args),
m_variadic (is_variadic),
- m_state (0),
m_last_was_paste (false),
+ m_state (0),
m_paste_location (0),
m_location (0)
{
@@ -116,7 +116,9 @@ class vaopt_state {
{
ERROR,
DROP,
- INCLUDE
+ INCLUDE,
+ BEGIN,
+ END
};
/* Given a token, update the state of this tracker and return a
@@ -139,7 +141,7 @@ class vaopt_state {
}
++m_state;
m_location = token->src_loc;
- return DROP;
+ return BEGIN;
}
else if (m_state == 1)
{
@@ -191,7 +193,7 @@ class vaopt_state {
return ERROR;
}
- return DROP;
+ return END;
}
}
return m_allowed ? INCLUDE : DROP;
@@ -220,6 +222,9 @@ class vaopt_state {
bool m_allowed;
/* True if the macro is variadic. */
bool m_variadic;
+ /* If true, the previous token was ##. This is used to detect when
+ a paste occurs at the end of the sequence. */
+ bool m_last_was_paste;
/* The state variable:
0 means not parsing
@@ -228,9 +233,6 @@ class vaopt_state {
>= 3 means looking for ")", the number encodes the paren depth. */
int m_state;
- /* If true, the previous token was ##. This is used to detect when
- a paste occurs at the end of the sequence. */
- bool m_last_was_paste;
/* The location of the paste token. */
source_location m_paste_location;
@@ -1701,6 +1703,30 @@ expanded_token_index (cpp_reader *pfile, cpp_macro *macro,
return cur_replacement_token - macro->exp.tokens;
}
+/* Copy whether PASTE_LEFT is set from SRC to *PASTE_FLAG. */
+
+static void
+copy_paste_flag (cpp_reader *pfile, const cpp_token **paste_flag,
+ const cpp_token *src)
+{
+ cpp_token *token = _cpp_temp_token (pfile);
+ token->type = (*paste_flag)->type;
+ token->val = (*paste_flag)->val;
+ if (src->flags & PASTE_LEFT)
+ token->flags = (*paste_flag)->flags | PASTE_LEFT;
+ else
+ token->flags = (*paste_flag)->flags & ~PASTE_LEFT;
+ *paste_flag = token;
+}
+
+/* True IFF the last token emitted into BUFF (if any) is PTR. */
+
+static bool
+last_token_is (_cpp_buff *buff, const cpp_token **ptr)
+{
+ return (ptr && tokens_buff_last_token_ptr (buff) == ptr);
+}
+
/* Replace the parameters in a function-like macro of NODE with the
actual ARGS, and place the result in a newly pushed token context.
Expand each argument before replacing, unless it is operated upon
@@ -1819,9 +1845,9 @@ replace_args (cpp_reader *pfile, cpp_hashnode *node, cpp_macro *macro,
multiple tokens. This is to save memory at the expense of
accuracy.
- Suppose we have #define SQARE(A) A * A
+ Suppose we have #define SQUARE(A) A * A
- And then we do SQARE(2+3)
+ And then we do SQUARE(2+3)
Then the tokens 2, +, 3, will have the same location,
saying they come from the expansion of the argument A. */
@@ -1833,6 +1859,7 @@ replace_args (cpp_reader *pfile, cpp_hashnode *node, cpp_macro *macro,
i = 0;
vaopt_state vaopt_tracker (pfile, macro->variadic,
args[macro->paramc - 1].count > 0);
+ const cpp_token **vaopt_start = NULL;
for (src = macro->exp.tokens; src < limit; src++)
{
unsigned int arg_tokens_count;
@@ -1841,8 +1868,58 @@ replace_args (cpp_reader *pfile, cpp_hashnode *node, cpp_macro *macro,
const cpp_token **tmp_token_ptr;
/* __VA_OPT__ handling. */
- if (vaopt_tracker.update (src) != vaopt_state::INCLUDE)
- continue;
+ vaopt_state::update_type vostate = vaopt_tracker.update (src);
+ if (vostate != vaopt_state::INCLUDE)
+ {
+ if (vostate == vaopt_state::BEGIN)
+ {
+ /* Padding on the left of __VA_OPT__ (unless RHS of ##). */
+ if (src != macro->exp.tokens && !(src[-1].flags & PASTE_LEFT))
+ {
+ const cpp_token *t = padding_token (pfile, src);
+ unsigned index = expanded_token_index (pfile, macro, src, i);
+ /* Allocate a virtual location for the padding token and
+ append the token and its location to BUFF and
+ VIRT_LOCS. */
+ tokens_buff_add_token (buff, virt_locs, t,
+ t->src_loc, t->src_loc,
+ map, index);
+ }
+ vaopt_start = tokens_buff_last_token_ptr (buff);
+ }
+ else if (vostate == vaopt_state::END)
+ {
+ const cpp_token **start = vaopt_start;
+ vaopt_start = NULL;
+
+ /* Remove any tail padding from inside the __VA_OPT__. */
+ paste_flag = tokens_buff_last_token_ptr (buff);
+ while (paste_flag && paste_flag != start
+ && (*paste_flag)->type == CPP_PADDING)
+ {
+ tokens_buff_remove_last_token (buff);
+ paste_flag = tokens_buff_last_token_ptr (buff);
+ }
+
+ if (src->flags & PASTE_LEFT)
+ {
+ /* With a non-empty __VA_OPT__ on the LHS of ##, the last
+ token should be flagged PASTE_LEFT. */
+ if (paste_flag && (*paste_flag)->type != CPP_PADDING)
+ copy_paste_flag (pfile, paste_flag, src);
+ }
+ else
+ {
+ /* Otherwise, avoid paste on RHS, __VA_OPT__(c)d or
+ __VA_OPT__(c)__VA_OPT__(d). */
+ const cpp_token *t = &pfile->avoid_paste;
+ tokens_buff_add_token (buff, virt_locs,
+ t, t->src_loc, t->src_loc,
+ NULL, 0);
+ }
+ }
+ continue;
+ }
if (src->type != CPP_MACRO_ARG)
{
@@ -1921,8 +1998,11 @@ replace_args (cpp_reader *pfile, cpp_hashnode *node, cpp_macro *macro,
else
paste_flag = tmp_token_ptr;
}
- /* Remove the paste flag if the RHS is a placemarker. */
- else if (arg_tokens_count == 0)
+ /* Remove the paste flag if the RHS is a placemarker, unless the
+ previous emitted token is at the beginning of __VA_OPT__;
+ placemarkers within __VA_OPT__ are ignored in that case. */
+ else if (arg_tokens_count == 0
+ && tmp_token_ptr != vaopt_start)
paste_flag = tmp_token_ptr;
}
}
@@ -1934,11 +2014,26 @@ replace_args (cpp_reader *pfile, cpp_hashnode *node, cpp_macro *macro,
track_macro_expansion),
MACRO_ARG_TOKEN_EXPANDED,
arg, arg->expanded);
+
+ if (last_token_is (buff, vaopt_start))
+ {
+ /* We're expanding an arg at the beginning of __VA_OPT__.
+ Skip padding. */
+ while (arg_tokens_count)
+ {
+ const cpp_token *t = macro_arg_token_iter_get_token (&from);
+ if (t->type != CPP_PADDING)
+ break;
+ macro_arg_token_iter_forward (&from);
+ --arg_tokens_count;
+ }
+ }
}
/* Padding on the left of an argument (unless RHS of ##). */
if ((!pfile->state.in_directive || pfile->state.directive_wants_padding)
- && src != macro->exp.tokens && !(src[-1].flags & PASTE_LEFT))
+ && src != macro->exp.tokens && !(src[-1].flags & PASTE_LEFT)
+ && !last_token_is (buff, vaopt_start))
{
const cpp_token *t = padding_token (pfile, src);
unsigned index = expanded_token_index (pfile, macro, src, i);
@@ -1962,9 +2057,9 @@ replace_args (cpp_reader *pfile, cpp_hashnode *node, cpp_macro *macro,
save extra memory while tracking macro expansion
locations. So in that case here is what we do:
- Suppose we have #define SQARE(A) A * A
+ Suppose we have #define SQUARE(A) A * A
- And then we do SQARE(2+3)
+ And then we do SQUARE(2+3)
Then the tokens 2, +, 3, will have the same location,
saying they come from the expansion of the argument
@@ -1972,9 +2067,9 @@ replace_args (cpp_reader *pfile, cpp_hashnode *node, cpp_macro *macro,
So that means we are going to ignore the COUNT tokens
resulting from the expansion of the current macro
- arugment. In other words all the ARG_TOKENS_COUNT tokens
+ argument. In other words all the ARG_TOKENS_COUNT tokens
resulting from the expansion of the macro argument will
- have the index I. Normally, each of those token should
+ have the index I. Normally, each of those tokens should
have index I+J. */
unsigned token_index = i;
unsigned index;
@@ -1992,8 +2087,8 @@ replace_args (cpp_reader *pfile, cpp_hashnode *node, cpp_macro *macro,
/* With a non-empty argument on the LHS of ##, the last
token should be flagged PASTE_LEFT. */
if (src->flags & PASTE_LEFT)
- paste_flag =
- (const cpp_token **) tokens_buff_last_token_ptr (buff);
+ paste_flag
+ = (const cpp_token **) tokens_buff_last_token_ptr (buff);
}
else if (CPP_PEDANTIC (pfile) && ! CPP_OPTION (pfile, c99)
&& ! macro->syshdr && ! cpp_in_system_header (pfile))
@@ -2023,7 +2118,8 @@ replace_args (cpp_reader *pfile, cpp_hashnode *node, cpp_macro *macro,
NODE_NAME (node), src->val.macro_arg.arg_no);
/* Avoid paste on RHS (even case count == 0). */
- if (!pfile->state.in_directive && !(src->flags & PASTE_LEFT))
+ if (!pfile->state.in_directive && !(src->flags & PASTE_LEFT)
+ && !last_token_is (buff, vaopt_start))
{
const cpp_token *t = &pfile->avoid_paste;
tokens_buff_add_token (buff, virt_locs,
@@ -2033,16 +2129,7 @@ replace_args (cpp_reader *pfile, cpp_hashnode *node, cpp_macro *macro,
/* Add a new paste flag, or remove an unwanted one. */
if (paste_flag)
- {
- cpp_token *token = _cpp_temp_token (pfile);
- token->type = (*paste_flag)->type;
- token->val = (*paste_flag)->val;
- if (src->flags & PASTE_LEFT)
- token->flags = (*paste_flag)->flags | PASTE_LEFT;
- else
- token->flags = (*paste_flag)->flags & ~PASTE_LEFT;
- *paste_flag = token;
- }
+ copy_paste_flag (pfile, paste_flag, src);
i += arg_tokens_count;
}
@@ -2213,6 +2300,8 @@ tokens_buff_count (_cpp_buff *buff)
static const cpp_token **
tokens_buff_last_token_ptr (_cpp_buff *buff)
{
+ if (BUFF_FRONT (buff) == buff->base)
+ return NULL;
return &((const cpp_token **) BUFF_FRONT (buff))[-1];
}
diff --git a/libdecnumber/ChangeLog b/libdecnumber/ChangeLog
index bc86f268a26..ab463f57eba 100644
--- a/libdecnumber/ChangeLog
+++ b/libdecnumber/ChangeLog
@@ -1,3 +1,9 @@
+2018-02-19 Martin Liska <mliska@suse.cz>
+
+ PR c/81272
+ * decNumber.c (decCompareOp): Do not use bit and
+ for conjunction of predicates.
+
2018-01-03 Jakub Jelinek <jakub@redhat.com>
Update copyright years.
diff --git a/libdecnumber/decNumber.c b/libdecnumber/decNumber.c
index ebfb6c5dd96..e4194211fdc 100644
--- a/libdecnumber/decNumber.c
+++ b/libdecnumber/decNumber.c
@@ -6029,11 +6029,11 @@ decNumber * decCompareOp(decNumber *res, const decNumber *lhs,
/* If total ordering then handle differing signs 'up front' */
if (op==COMPTOTAL) { /* total ordering */
- if (decNumberIsNegative(lhs) & !decNumberIsNegative(rhs)) {
+ if (decNumberIsNegative(lhs) && !decNumberIsNegative(rhs)) {
result=-1;
break;
}
- if (!decNumberIsNegative(lhs) & decNumberIsNegative(rhs)) {
+ if (!decNumberIsNegative(lhs) && decNumberIsNegative(rhs)) {
result=+1;
break;
}
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index 1eb16631e03..0e9e7759f62 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,3 +1,26 @@
+2018-02-20 Max Filippov <jcmvbkbc@gmail.com>
+
+ * config/xtensa/ieee754-df.S (__adddf3_aux): Add
+ .literal_position directive.
+ * config/xtensa/ieee754-sf.S (__addsf3_aux): Likewise.
+
+2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
+
+ PR target/84148
+ * configure: Regenerate.
+
+2018-02-16 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
+
+ PR target/84239
+ * config/i386/shadow-stack-unwind.h (_Unwind_Frames_Extra):
+ Include cetintrin.h not x86intrin.h.
+
+2018-02-08 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
+
+ PR target/84239
+ * config/i386/shadow-stack-unwind.h (_Unwind_Frames_Extra):
+ Use new _get_ssp and _inc_ssp intrinsics.
+
2018-02-02 Julia Koval <julia.koval@intel.com>
* config/i386/cpuinfo.h (processor_subtypes): Add INTEL_COREI7_ICELAKE.
diff --git a/libgcc/config/i386/shadow-stack-unwind.h b/libgcc/config/i386/shadow-stack-unwind.h
index ef75d97aa2f..b7c3d98a9dc 100644
--- a/libgcc/config/i386/shadow-stack-unwind.h
+++ b/libgcc/config/i386/shadow-stack-unwind.h
@@ -22,30 +22,30 @@ a copy of the GCC Runtime Library Exception along with this program;
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
<http://www.gnu.org/licenses/>. */
-#ifdef __x86_64__
-# define incssp(x) __builtin_ia32_incsspq ((x))
-# define rdssp(x) __builtin_ia32_rdsspq (x)
-#else
-# define incssp(x) __builtin_ia32_incsspd ((x))
-# define rdssp(x) __builtin_ia32_rdsspd (x)
-#endif
+/* NB: We need _get_ssp and _inc_ssp from <cetintrin.h>. But we can't
+ include <x86intrin.h> which ends up including <mm_malloc.h>, which
+ includes <stdlib.h> and <errno.h> unconditionally. But we can't
+ include any libc system headers unconditionally from libgcc. Avoid
+ including <mm_malloc.h> here by defining _IMMINTRIN_H_INCLUDED. */
+#define _IMMINTRIN_H_INCLUDED
+#include <cetintrin.h>
+#undef _IMMINTRIN_H_INCLUDED
/* Unwind the shadow stack for EH. */
#undef _Unwind_Frames_Extra
#define _Unwind_Frames_Extra(x) \
do \
{ \
- unsigned long ssp = 0; \
- ssp = rdssp (ssp); \
+ _Unwind_Word ssp = _get_ssp (); \
if (ssp != 0) \
{ \
- unsigned long tmp = (x); \
+ _Unwind_Word tmp = (x); \
while (tmp > 255) \
{ \
- incssp (tmp); \
+ _inc_ssp (tmp); \
tmp -= 255; \
} \
- incssp (tmp); \
+ _inc_ssp (tmp); \
} \
} \
while (0)
diff --git a/libgcc/config/xtensa/ieee754-df.S b/libgcc/config/xtensa/ieee754-df.S
index 2662a660075..a997c1b4263 100644
--- a/libgcc/config/xtensa/ieee754-df.S
+++ b/libgcc/config/xtensa/ieee754-df.S
@@ -55,6 +55,7 @@ __negdf2:
#ifdef L_addsubdf3
+ .literal_position
/* Addition */
__adddf3_aux:
diff --git a/libgcc/config/xtensa/ieee754-sf.S b/libgcc/config/xtensa/ieee754-sf.S
index d48b230a758..695c67b0fc8 100644
--- a/libgcc/config/xtensa/ieee754-sf.S
+++ b/libgcc/config/xtensa/ieee754-sf.S
@@ -55,6 +55,7 @@ __negsf2:
#ifdef L_addsubsf3
+ .literal_position
/* Addition */
__addsf3_aux:
diff --git a/libgcc/configure b/libgcc/configure
index 38a28c2a48f..3241f19ab67 100644
--- a/libgcc/configure
+++ b/libgcc/configure
@@ -4790,18 +4790,28 @@ else
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
case "$host" in
i[34567]86-*-linux* | x86_64-*-linux*)
case "$enable_cet" in
default)
- # Check if assembler supports CET.
+ # Check if target supports multi-byte NOPs
+ # and if assembler supports CET insn.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
main ()
{
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
asm ("setssbsy");
+#endif
+
;
return 0;
}
@@ -4841,6 +4851,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
esac
if test x$enable_cet = xyes; then
CET_FLAGS="-fcf-protection -mcet"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
index 2220ec2bae6..eb94ebb5191 100644
--- a/libgfortran/ChangeLog
+++ b/libgfortran/ChangeLog
@@ -1,3 +1,109 @@
+2018-02-23 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR fortran/84519
+ * caf/libcaf.h (_gfortran_caf_stop_numeric): Add bool argument.
+ (_gfortran_caf_stop_str): Likewise.
+ (_gfortran_caf_error_stop_str): Likewise.
+ (_gfortran_caf_error_stop): Likewise.
+ * caf/mpi.c (_gfortran_caf_error_stop_str): Handle new argument.
+ (_gfortran_caf_error_stop): Likewise.
+ * caf/single.c (_gfortran_caf_stop_numeric): Likewise.
+ (_gfortran_caf_stop_str): Likewise.
+ (_gfortran_caf_error_stop_str): Likewise.
+ (_gfortran_caf_error_stop): Likewise.
+ (_gfortran_caf_lock): Likewise.
+ (_gfortran_caf_unlock): Likewise.
+ * libgfortran.h (stop_string): Add bool argument.
+ * runtime/pause.c (do_pause): Add false argument.
+ * runtime/stop.c (stop_numeric): Handle new argument.
+ (stop_string): Likewise.
+ (error_stop_string): Likewise.
+ (error_stop_numeric): Likewise.
+
+2018-02-22 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR 78534
+ PR 84509
+ * runtime/pause.c (pause_numeric): Modify to take GFC_INTEGER_8
+ argument.
+ (pause_string): Modify to take size_t character length argument.
+
+2018-02-22 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * libgfortran.h (stop_string): Use size_t for character length.
+ * runtime/stop.c (stop_string): Likewise.
+ (error_stop_string): Likewise.
+ (stop_numeric): Use int for exit code.
+ (error_stop_numeric): Likewise.
+ * caf/libcaf.h: Remove stdint.h include.
+ (_gfortran_caf_register): Use size_t for character length.
+ (_gfortran_caf_deregister): Likewise.
+ (_gfortran_caf_sync_all): Likewise.
+ (_gfortran_caf_sync_memory): Likewise.
+ (_gfortran_caf_sync_images): Likewise.
+ (_gfortran_caf_stop_numeric): Use int for exit code.
+ (_gfortran_caf_stop_str): Use size_t for character length.
+ (_gfortran_caf_error_stop_str): Likewise.
+ (_gfortran_caf_error_stop): Use int for exit code.
+ (_gfortran_caf_co_broadcast): Use size_t for character length.
+ (_gfortran_caf_co_sum): Likewise.
+ (_gfortran_caf_co_min): Likewise.
+ (_gfortran_caf_co_max): Likewise.
+ (_gfortran_caf_co_reduce): Likewise.
+ (_gfortran_caf_lock): Likewise.
+ (_gfortran_caf_unlock): Likewise.
+ (_gfortran_caf_event_post): Likewise.
+ (_gfortran_caf_event_wait): Likewise.
+ * caf/mpi.c (_gfortran_caf_register): Update implementation to
+ match prototype.
+ (_gfortran_caf_deregister): Likewise.
+ (_gfortran_caf_sync_all): Likewise.
+ (_gfortran_caf_sync_images): Likewise.
+ (_gfortran_caf_error_stop_str): Likewise.
+ (_gfortran_caf_error_stop): Likewise.
+ * caf/single.c (caf_internal_error): Likewise.
+ (_gfortran_caf_register): Likewise.
+ (_gfortran_caf_deregister): Likewise.
+ (_gfortran_caf_sync_all): Likewise.
+ (_gfortran_caf_sync_memory): Likewise.
+ (_gfortran_caf_sync_images): Likewise.
+ (_gfortran_caf_stop_numeric): Likewise.
+ (_gfortran_caf_stop_str): Likewise.
+ (_gfortran_caf_error_stop_str): Likewise.
+ (_gfortran_caf_error_stop): Likewise.
+ (_gfortran_caf_co_broadcast): Likewise.
+ (_gfortran_caf_co_sum): Likewise.
+ (_gfortran_caf_co_min): Likewise.
+ (_gfortran_caf_co_max): Likewise.
+ (_gfortran_caf_co_reduce): Likewise.
+ (_gfortran_caf_event_post): Likewise.
+ (_gfortran_caf_event_wait): Likewise.
+ (_gfortran_caf_lock): Likewise.
+ (_gfortran_caf_unlock): Likewise.
+
+2018-02-19 Andre Vehreschild <vehre@gcc.gnu.org>
+
+ * caf/libcaf.h: Add type parameters to the caf_*_by_ref prototypes.
+ * caf/single.c (get_for_ref): Simplifications and now respecting
+ the type argument.
+ (_gfortran_caf_get_by_ref): Added source type handing to get_for_ref().
+ (send_by_ref): Simplifications and respecting the dst_type now.
+ (_gfortran_caf_send_by_ref): Added destination type hand over to
+ send_by_ref().
+ (_gfortran_caf_sendget_by_ref): Added general support and fixed stack
+ corruption. The function is now really usable.
+
+2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
+
+ PR target/84148
+ * configure: Regenerate.
+
+2018-02-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libgfortran/84412
+ * io/transfer.c (finalize_transfer): After completng an internal unit
+ I/O operation, clear internal_unit_kind.
+
2018-02-12 Thomas Koenig <tkoenig@gcc.gnu.org>
* libgfortran.h (GFC_ARRAY_DESCRIPTOR): Remove dimension
diff --git a/libgfortran/caf/libcaf.h b/libgfortran/caf/libcaf.h
index 12c73de8479..dd97166952c 100644
--- a/libgfortran/caf/libcaf.h
+++ b/libgfortran/caf/libcaf.h
@@ -28,7 +28,6 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#include <stdbool.h>
#include <stddef.h> /* For size_t. */
-#include <stdint.h> /* For int32_t. */
#include "libgfortran.h"
@@ -190,29 +189,29 @@ int _gfortran_caf_this_image (int);
int _gfortran_caf_num_images (int, int);
void _gfortran_caf_register (size_t, caf_register_t, caf_token_t *,
- gfc_descriptor_t *, int *, char *, int);
+ gfc_descriptor_t *, int *, char *, size_t);
void _gfortran_caf_deregister (caf_token_t *, caf_deregister_t, int *, char *,
- int);
+ size_t);
-void _gfortran_caf_sync_all (int *, char *, int);
-void _gfortran_caf_sync_memory (int *, char *, int);
-void _gfortran_caf_sync_images (int, int[], int *, char *, int);
+void _gfortran_caf_sync_all (int *, char *, size_t);
+void _gfortran_caf_sync_memory (int *, char *, size_t);
+void _gfortran_caf_sync_images (int, int[], int *, char *, size_t);
-void _gfortran_caf_stop_numeric (int32_t)
+void _gfortran_caf_stop_numeric (int, bool)
__attribute__ ((noreturn));
-void _gfortran_caf_stop_str (const char *, int32_t)
+void _gfortran_caf_stop_str (const char *, size_t, bool)
__attribute__ ((noreturn));
-void _gfortran_caf_error_stop_str (const char *, int32_t)
+void _gfortran_caf_error_stop_str (const char *, size_t, bool)
__attribute__ ((noreturn));
-void _gfortran_caf_error_stop (int32_t) __attribute__ ((noreturn));
+void _gfortran_caf_error_stop (int, bool) __attribute__ ((noreturn));
void _gfortran_caf_fail_image (void) __attribute__ ((noreturn));
-void _gfortran_caf_co_broadcast (gfc_descriptor_t *, int, int *, char *, int);
-void _gfortran_caf_co_sum (gfc_descriptor_t *, int, int *, char *, int);
-void _gfortran_caf_co_min (gfc_descriptor_t *, int, int *, char *, int, int);
-void _gfortran_caf_co_max (gfc_descriptor_t *, int, int *, char *, int, int);
+void _gfortran_caf_co_broadcast (gfc_descriptor_t *, int, int *, char *, size_t);
+void _gfortran_caf_co_sum (gfc_descriptor_t *, int, int *, char *, size_t);
+void _gfortran_caf_co_min (gfc_descriptor_t *, int, int *, char *, int, size_t);
+void _gfortran_caf_co_max (gfc_descriptor_t *, int, int *, char *, int, size_t);
void _gfortran_caf_co_reduce (gfc_descriptor_t *, void* (*) (void *, void*),
- int, int, int *, char *, int, int);
+ int, int, int *, char *, int, size_t);
void _gfortran_caf_get (caf_token_t, size_t, int, gfc_descriptor_t *,
caf_vector_t *, gfc_descriptor_t *, int, int, bool,
@@ -226,15 +225,17 @@ void _gfortran_caf_sendget (caf_token_t, size_t, int, gfc_descriptor_t *,
void _gfortran_caf_get_by_ref (caf_token_t token, int image_idx,
gfc_descriptor_t *dst, caf_reference_t *refs, int dst_kind,
- int src_kind, bool may_require_tmp, bool dst_reallocatable, int *stat);
+ int src_kind, bool may_require_tmp, bool dst_reallocatable, int *stat,
+ int src_type);
void _gfortran_caf_send_by_ref (caf_token_t token, int image_index,
gfc_descriptor_t *src, caf_reference_t *refs, int dst_kind,
- int src_kind, bool may_require_tmp, bool dst_reallocatable, int *stat);
+ int src_kind, bool may_require_tmp, bool dst_reallocatable, int *stat,
+ int dst_type);
void _gfortran_caf_sendget_by_ref (
caf_token_t dst_token, int dst_image_index, caf_reference_t *dst_refs,
caf_token_t src_token, int src_image_index, caf_reference_t *src_refs,
int dst_kind, int src_kind, bool may_require_tmp, int *dst_stat,
- int *src_stat);
+ int *src_stat, int dst_type, int src_type);
void _gfortran_caf_atomic_define (caf_token_t, size_t, int, void *, int *,
int, int);
@@ -245,10 +246,10 @@ void _gfortran_caf_atomic_cas (caf_token_t, size_t, int, void *, void *,
void _gfortran_caf_atomic_op (int, caf_token_t, size_t, int, void *, void *,
int *, int, int);
-void _gfortran_caf_lock (caf_token_t, size_t, int, int *, int *, char *, int);
-void _gfortran_caf_unlock (caf_token_t, size_t, int, int *, char *, int);
-void _gfortran_caf_event_post (caf_token_t, size_t, int, int *, char *, int);
-void _gfortran_caf_event_wait (caf_token_t, size_t, int, int *, char *, int);
+void _gfortran_caf_lock (caf_token_t, size_t, int, int *, int *, char *, size_t);
+void _gfortran_caf_unlock (caf_token_t, size_t, int, int *, char *, size_t);
+void _gfortran_caf_event_post (caf_token_t, size_t, int, int *, char *, size_t);
+void _gfortran_caf_event_wait (caf_token_t, size_t, int, int *, char *, size_t);
void _gfortran_caf_event_query (caf_token_t, size_t, int, int *, int *);
void _gfortran_caf_failed_images (gfc_descriptor_t *,
diff --git a/libgfortran/caf/mpi.c b/libgfortran/caf/mpi.c
index 0f7977fc007..55d9908b8de 100644
--- a/libgfortran/caf/mpi.c
+++ b/libgfortran/caf/mpi.c
@@ -131,7 +131,7 @@ _gfortran_caf_num_images (int distance __attribute__ ((unused)),
void *
_gfortran_caf_register (size_t size, caf_register_t type, caf_token_t *token,
- int *stat, char *errmsg, int errmsg_len,
+ int *stat, char *errmsg, size_t errmsg_len,
int num_alloc_comps __attribute__ ((unused)))
{
void *local;
@@ -189,8 +189,8 @@ error:
*stat = caf_is_finalized ? STAT_STOPPED_IMAGE : 1;
if (errmsg_len > 0)
{
- int len = ((int) strlen (msg) > errmsg_len) ? errmsg_len
- : (int) strlen (msg);
+ size_t len = (strlen (msg) > errmsg_len) ? errmsg_len
+ : strlen (msg);
memcpy (errmsg, msg, len);
if (errmsg_len > len)
memset (&errmsg[len], ' ', errmsg_len-len);
@@ -205,7 +205,7 @@ error:
void
-_gfortran_caf_deregister (caf_token_t *token, int *stat, char *errmsg, int errmsg_len)
+_gfortran_caf_deregister (caf_token_t *token, int *stat, char *errmsg, size_t errmsg_len)
{
if (unlikely (caf_is_finalized))
{
@@ -217,8 +217,8 @@ _gfortran_caf_deregister (caf_token_t *token, int *stat, char *errmsg, int errms
if (errmsg_len > 0)
{
- int len = ((int) sizeof (msg) - 1 > errmsg_len)
- ? errmsg_len : (int) sizeof (msg) - 1;
+ size_t len = (sizeof (msg) - 1 > errmsg_len)
+ ? errmsg_len : sizeof (msg) - 1;
memcpy (errmsg, msg, len);
if (errmsg_len > len)
memset (&errmsg[len], ' ', errmsg_len-len);
@@ -239,7 +239,7 @@ _gfortran_caf_deregister (caf_token_t *token, int *stat, char *errmsg, int errms
void
-_gfortran_caf_sync_all (int *stat, char *errmsg, int errmsg_len)
+_gfortran_caf_sync_all (int *stat, char *errmsg, size_t errmsg_len)
{
int ierr;
@@ -261,8 +261,8 @@ _gfortran_caf_sync_all (int *stat, char *errmsg, int errmsg_len)
if (errmsg_len > 0)
{
- int len = ((int) strlen (msg) > errmsg_len) ? errmsg_len
- : (int) strlen (msg);
+ size_t len = (strlen (msg) > errmsg_len) ? errmsg_len
+ : strlen (msg);
memcpy (errmsg, msg, len);
if (errmsg_len > len)
memset (&errmsg[len], ' ', errmsg_len-len);
@@ -278,7 +278,7 @@ _gfortran_caf_sync_all (int *stat, char *errmsg, int errmsg_len)
is not equivalent to SYNC ALL. */
void
_gfortran_caf_sync_images (int count, int images[], int *stat, char *errmsg,
- int errmsg_len)
+ size_t errmsg_len)
{
int ierr;
if (count == 0 || (count == 1 && images[0] == caf_this_image))
@@ -329,8 +329,8 @@ _gfortran_caf_sync_images (int count, int images[], int *stat, char *errmsg,
if (errmsg_len > 0)
{
- int len = ((int) strlen (msg) > errmsg_len) ? errmsg_len
- : (int) strlen (msg);
+ size_t len = (strlen (msg) > errmsg_len) ? errmsg_len
+ : strlen (msg);
memcpy (errmsg, msg, len);
if (errmsg_len > len)
memset (&errmsg[len], ' ', errmsg_len-len);
@@ -358,13 +358,15 @@ error_stop (int error)
/* ERROR STOP function for string arguments. */
void
-_gfortran_caf_error_stop_str (const char *string, int32_t len)
+_gfortran_caf_error_stop_str (const char *string, size_t len, bool quiet)
{
- fputs ("ERROR STOP ", stderr);
- while (len--)
- fputc (*(string++), stderr);
- fputs ("\n", stderr);
-
+ if (!quiet)
+ {
+ fputs ("ERROR STOP ", stderr);
+ while (len--)
+ fputc (*(string++), stderr);
+ fputs ("\n", stderr);
+ }
error_stop (1);
}
@@ -372,8 +374,9 @@ _gfortran_caf_error_stop_str (const char *string, int32_t len)
/* ERROR STOP function for numerical arguments. */
void
-_gfortran_caf_error_stop (int32_t error)
+_gfortran_caf_error_stop (int error, bool quiet)
{
- fprintf (stderr, "ERROR STOP %d\n", error);
+ if (!quiet)
+ fprintf (stderr, "ERROR STOP %d\n", error);
error_stop (error);
}
diff --git a/libgfortran/caf/single.c b/libgfortran/caf/single.c
index bead09a386f..1ad13bd5643 100644
--- a/libgfortran/caf/single.c
+++ b/libgfortran/caf/single.c
@@ -28,6 +28,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#include <stdlib.h> /* For exit and malloc. */
#include <string.h> /* For memcpy and memset. */
#include <stdarg.h> /* For variadic arguments. */
+#include <stdint.h>
#include <assert.h>
/* Define GFC_CAF_CHECK to enable run-time checking. */
@@ -74,7 +75,7 @@ caf_runtime_error (const char *message, ...)
/* Error handling is similar everytime. */
static void
caf_internal_error (const char *msg, int *stat, char *errmsg,
- int errmsg_len, ...)
+ size_t errmsg_len, ...)
{
va_list args;
va_start (args, errmsg_len);
@@ -83,8 +84,8 @@ caf_internal_error (const char *msg, int *stat, char *errmsg,
*stat = 1;
if (errmsg_len > 0)
{
- size_t len = snprintf (errmsg, errmsg_len, msg, args);
- if ((size_t)errmsg_len > len)
+ int len = snprintf (errmsg, errmsg_len, msg, args);
+ if (len >= 0 && errmsg_len > (size_t) len)
memset (&errmsg[len], ' ', errmsg_len - len);
}
va_end (args);
@@ -134,7 +135,7 @@ _gfortran_caf_num_images (int distance __attribute__ ((unused)),
void
_gfortran_caf_register (size_t size, caf_register_t type, caf_token_t *token,
gfc_descriptor_t *data, int *stat, char *errmsg,
- int errmsg_len)
+ size_t errmsg_len)
{
const char alloc_fail_msg[] = "Failed to allocate coarray";
void *local;
@@ -195,7 +196,7 @@ _gfortran_caf_register (size_t size, caf_register_t type, caf_token_t *token,
void
_gfortran_caf_deregister (caf_token_t *token, caf_deregister_t type, int *stat,
char *errmsg __attribute__ ((unused)),
- int errmsg_len __attribute__ ((unused)))
+ size_t errmsg_len __attribute__ ((unused)))
{
caf_single_token_t single_token = TOKEN (*token);
@@ -221,7 +222,7 @@ _gfortran_caf_deregister (caf_token_t *token, caf_deregister_t type, int *stat,
void
_gfortran_caf_sync_all (int *stat,
char *errmsg __attribute__ ((unused)),
- int errmsg_len __attribute__ ((unused)))
+ size_t errmsg_len __attribute__ ((unused)))
{
__asm__ __volatile__ ("":::"memory");
if (stat)
@@ -232,7 +233,7 @@ _gfortran_caf_sync_all (int *stat,
void
_gfortran_caf_sync_memory (int *stat,
char *errmsg __attribute__ ((unused)),
- int errmsg_len __attribute__ ((unused)))
+ size_t errmsg_len __attribute__ ((unused)))
{
__asm__ __volatile__ ("":::"memory");
if (stat)
@@ -245,7 +246,7 @@ _gfortran_caf_sync_images (int count __attribute__ ((unused)),
int images[] __attribute__ ((unused)),
int *stat,
char *errmsg __attribute__ ((unused)),
- int errmsg_len __attribute__ ((unused)))
+ size_t errmsg_len __attribute__ ((unused)))
{
#ifdef GFC_CAF_CHECK
int i;
@@ -266,33 +267,38 @@ _gfortran_caf_sync_images (int count __attribute__ ((unused)),
void
-_gfortran_caf_stop_numeric(int32_t stop_code)
+_gfortran_caf_stop_numeric(int stop_code, bool quiet)
{
- fprintf (stderr, "STOP %d\n", stop_code);
+ if (!quiet)
+ fprintf (stderr, "STOP %d\n", stop_code);
exit (0);
}
void
-_gfortran_caf_stop_str(const char *string, int32_t len)
+_gfortran_caf_stop_str(const char *string, size_t len, bool quiet)
{
- fputs ("STOP ", stderr);
- while (len--)
- fputc (*(string++), stderr);
- fputs ("\n", stderr);
-
+ if (!quiet)
+ {
+ fputs ("STOP ", stderr);
+ while (len--)
+ fputc (*(string++), stderr);
+ fputs ("\n", stderr);
+ }
exit (0);
}
void
-_gfortran_caf_error_stop_str (const char *string, int32_t len)
+_gfortran_caf_error_stop_str (const char *string, size_t len, bool quiet)
{
- fputs ("ERROR STOP ", stderr);
- while (len--)
- fputc (*(string++), stderr);
- fputs ("\n", stderr);
-
+ if (!quiet)
+ {
+ fputs ("ERROR STOP ", stderr);
+ while (len--)
+ fputc (*(string++), stderr);
+ fputs ("\n", stderr);
+ }
exit (1);
}
@@ -366,9 +372,10 @@ _gfortran_caf_stopped_images (gfc_descriptor_t *array,
void
-_gfortran_caf_error_stop (int32_t error)
+_gfortran_caf_error_stop (int error, bool quiet)
{
- fprintf (stderr, "ERROR STOP %d\n", error);
+ if (!quiet)
+ fprintf (stderr, "ERROR STOP %d\n", error);
exit (error);
}
@@ -377,7 +384,7 @@ void
_gfortran_caf_co_broadcast (gfc_descriptor_t *a __attribute__ ((unused)),
int source_image __attribute__ ((unused)),
int *stat, char *errmsg __attribute__ ((unused)),
- int errmsg_len __attribute__ ((unused)))
+ size_t errmsg_len __attribute__ ((unused)))
{
if (stat)
*stat = 0;
@@ -387,7 +394,7 @@ void
_gfortran_caf_co_sum (gfc_descriptor_t *a __attribute__ ((unused)),
int result_image __attribute__ ((unused)),
int *stat, char *errmsg __attribute__ ((unused)),
- int errmsg_len __attribute__ ((unused)))
+ size_t errmsg_len __attribute__ ((unused)))
{
if (stat)
*stat = 0;
@@ -398,7 +405,7 @@ _gfortran_caf_co_min (gfc_descriptor_t *a __attribute__ ((unused)),
int result_image __attribute__ ((unused)),
int *stat, char *errmsg __attribute__ ((unused)),
int a_len __attribute__ ((unused)),
- int errmsg_len __attribute__ ((unused)))
+ size_t errmsg_len __attribute__ ((unused)))
{
if (stat)
*stat = 0;
@@ -409,7 +416,7 @@ _gfortran_caf_co_max (gfc_descriptor_t *a __attribute__ ((unused)),
int result_image __attribute__ ((unused)),
int *stat, char *errmsg __attribute__ ((unused)),
int a_len __attribute__ ((unused)),
- int errmsg_len __attribute__ ((unused)))
+ size_t errmsg_len __attribute__ ((unused)))
{
if (stat)
*stat = 0;
@@ -424,7 +431,7 @@ _gfortran_caf_co_reduce (gfc_descriptor_t *a __attribute__ ((unused)),
int result_image __attribute__ ((unused)),
int *stat, char *errmsg __attribute__ ((unused)),
int a_len __attribute__ ((unused)),
- int errmsg_len __attribute__ ((unused)))
+ size_t errmsg_len __attribute__ ((unused)))
{
if (stat)
*stat = 0;
@@ -1194,7 +1201,7 @@ get_for_ref (caf_reference_t *ref, size_t *i, size_t *dst_index,
caf_single_token_t single_token, gfc_descriptor_t *dst,
gfc_descriptor_t *src, void *ds, void *sr,
int dst_kind, int src_kind, size_t dst_dim, size_t src_dim,
- size_t num, int *stat)
+ size_t num, int *stat, int src_type)
{
ptrdiff_t extent_src = 1, array_offset_src = 0, stride_src;
size_t next_dst_dim;
@@ -1209,25 +1216,24 @@ get_for_ref (caf_reference_t *ref, size_t *i, size_t *dst_index,
size_t dst_size = GFC_DESCRIPTOR_SIZE (dst);
ptrdiff_t array_offset_dst = 0;;
size_t dst_rank = GFC_DESCRIPTOR_RANK (dst);
- int src_type = -1;
switch (ref->type)
{
case CAF_REF_COMPONENT:
/* Because the token is always registered after the component, its
- offset is always greater zeor. */
+ offset is always greater zero. */
if (ref->u.c.caf_token_offset > 0)
+ /* Note, that sr is dereffed here. */
copy_data (ds, *(void **)(sr + ref->u.c.offset),
- GFC_DESCRIPTOR_TYPE (dst), GFC_DESCRIPTOR_TYPE (dst),
+ GFC_DESCRIPTOR_TYPE (dst), src_type,
dst_kind, src_kind, dst_size, ref->item_size, 1, stat);
else
copy_data (ds, sr + ref->u.c.offset,
- GFC_DESCRIPTOR_TYPE (dst), GFC_DESCRIPTOR_TYPE (src),
+ GFC_DESCRIPTOR_TYPE (dst), src_type,
dst_kind, src_kind, dst_size, ref->item_size, 1, stat);
++(*i);
return;
case CAF_REF_STATIC_ARRAY:
- src_type = ref->u.a.static_array_type;
/* Intentionally fall through. */
case CAF_REF_ARRAY:
if (ref->u.a.mode[src_dim] == CAF_ARR_REF_NONE)
@@ -1235,8 +1241,7 @@ get_for_ref (caf_reference_t *ref, size_t *i, size_t *dst_index,
for (size_t d = 0; d < dst_rank; ++d)
array_offset_dst += dst_index[d];
copy_data (ds + array_offset_dst * dst_size, sr,
- GFC_DESCRIPTOR_TYPE (dst),
- src_type == -1 ? GFC_DESCRIPTOR_TYPE (src) : src_type,
+ GFC_DESCRIPTOR_TYPE (dst), src_type,
dst_kind, src_kind, dst_size, ref->item_size, num,
stat);
*i += num;
@@ -1252,23 +1257,39 @@ get_for_ref (caf_reference_t *ref, size_t *i, size_t *dst_index,
{
case CAF_REF_COMPONENT:
if (ref->u.c.caf_token_offset > 0)
- get_for_ref (ref->next, i, dst_index,
- *(caf_single_token_t*)(sr + ref->u.c.caf_token_offset), dst,
- (*(caf_single_token_t*)(sr + ref->u.c.caf_token_offset))->desc,
- ds, sr + ref->u.c.offset, dst_kind, src_kind, dst_dim, 0,
- 1, stat);
+ {
+ single_token = *(caf_single_token_t*)(sr + ref->u.c.caf_token_offset);
+
+ if (ref->next && ref->next->type == CAF_REF_ARRAY)
+ src = single_token->desc;
+ else
+ src = NULL;
+
+ if (ref->next && ref->next->type == CAF_REF_COMPONENT)
+ /* The currently ref'ed component was allocatabe (caf_token_offset
+ > 0) and the next ref is a component, too, then the new sr has to
+ be dereffed. (static arrays can not be allocatable or they
+ become an array with descriptor. */
+ sr = *(void **)(sr + ref->u.c.offset);
+ else
+ sr += ref->u.c.offset;
+
+ get_for_ref (ref->next, i, dst_index, single_token, dst, src,
+ ds, sr, dst_kind, src_kind, dst_dim, 0,
+ 1, stat, src_type);
+ }
else
get_for_ref (ref->next, i, dst_index, single_token, dst,
(gfc_descriptor_t *)(sr + ref->u.c.offset), ds,
sr + ref->u.c.offset, dst_kind, src_kind, dst_dim, 0, 1,
- stat);
+ stat, src_type);
return;
case CAF_REF_ARRAY:
if (ref->u.a.mode[src_dim] == CAF_ARR_REF_NONE)
{
get_for_ref (ref->next, i, dst_index, single_token, dst,
src, ds, sr, dst_kind, src_kind,
- dst_dim, 0, 1, stat);
+ dst_dim, 0, 1, stat, src_type);
return;
}
/* Only when on the left most index switch the data pointer to
@@ -1311,7 +1332,7 @@ get_for_ref (caf_reference_t *ref, size_t *i, size_t *dst_index,
get_for_ref (ref, i, dst_index, single_token, dst, src,
ds, sr + array_offset_src * ref->item_size,
dst_kind, src_kind, dst_dim + 1, src_dim + 1,
- 1, stat);
+ 1, stat, src_type);
dst_index[dst_dim]
+= GFC_DIMENSION_STRIDE (dst->dim[dst_dim]);
}
@@ -1331,7 +1352,7 @@ get_for_ref (caf_reference_t *ref, size_t *i, size_t *dst_index,
get_for_ref (ref, i, dst_index, single_token, dst, src,
ds, sr + array_offset_src * ref->item_size,
dst_kind, src_kind, dst_dim + 1, src_dim + 1,
- 1, stat);
+ 1, stat, src_type);
dst_index[dst_dim]
+= GFC_DIMENSION_STRIDE (dst->dim[dst_dim]);
}
@@ -1358,7 +1379,7 @@ get_for_ref (caf_reference_t *ref, size_t *i, size_t *dst_index,
get_for_ref (ref, i, dst_index, single_token, dst, src,
ds, sr + array_offset_src * ref->item_size,
dst_kind, src_kind, next_dst_dim, src_dim + 1,
- 1, stat);
+ 1, stat, src_type);
dst_index[dst_dim]
+= GFC_DIMENSION_STRIDE (dst->dim[dst_dim]);
array_offset_src += stride_src;
@@ -1372,7 +1393,7 @@ get_for_ref (caf_reference_t *ref, size_t *i, size_t *dst_index,
get_for_ref (ref, i, dst_index, single_token, dst, src, ds,
sr + array_offset_src * ref->item_size,
dst_kind, src_kind, dst_dim, src_dim + 1, 1,
- stat);
+ stat, src_type);
return;
case CAF_ARR_REF_OPEN_END:
COMPUTE_NUM_ITEMS (extent_src,
@@ -1390,7 +1411,7 @@ get_for_ref (caf_reference_t *ref, size_t *i, size_t *dst_index,
get_for_ref (ref, i, dst_index, single_token, dst, src,
ds, sr + array_offset_src * ref->item_size,
dst_kind, src_kind, dst_dim + 1, src_dim + 1,
- 1, stat);
+ 1, stat, src_type);
dst_index[dst_dim]
+= GFC_DIMENSION_STRIDE (dst->dim[dst_dim]);
array_offset_src += stride_src;
@@ -1410,7 +1431,7 @@ get_for_ref (caf_reference_t *ref, size_t *i, size_t *dst_index,
get_for_ref (ref, i, dst_index, single_token, dst, src,
ds, sr + array_offset_src * ref->item_size,
dst_kind, src_kind, dst_dim + 1, src_dim + 1,
- 1, stat);
+ 1, stat, src_type);
dst_index[dst_dim]
+= GFC_DIMENSION_STRIDE (dst->dim[dst_dim]);
array_offset_src += stride_src;
@@ -1425,7 +1446,7 @@ get_for_ref (caf_reference_t *ref, size_t *i, size_t *dst_index,
{
get_for_ref (ref->next, i, dst_index, single_token, dst,
NULL, ds, sr, dst_kind, src_kind,
- dst_dim, 0, 1, stat);
+ dst_dim, 0, 1, stat, src_type);
return;
}
switch (ref->u.a.mode[src_dim])
@@ -1460,7 +1481,7 @@ get_for_ref (caf_reference_t *ref, size_t *i, size_t *dst_index,
get_for_ref (ref, i, dst_index, single_token, dst, NULL,
ds, sr + array_offset_src * ref->item_size,
dst_kind, src_kind, dst_dim + 1, src_dim + 1,
- 1, stat);
+ 1, stat, src_type);
dst_index[dst_dim]
+= GFC_DIMENSION_STRIDE (dst->dim[dst_dim]);
}
@@ -1474,7 +1495,7 @@ get_for_ref (caf_reference_t *ref, size_t *i, size_t *dst_index,
get_for_ref (ref, i, dst_index, single_token, dst, NULL,
ds, sr + array_offset_src * ref->item_size,
dst_kind, src_kind, dst_dim + 1, src_dim + 1,
- 1, stat);
+ 1, stat, src_type);
dst_index[dst_dim]
+= GFC_DIMENSION_STRIDE (dst->dim[dst_dim]);
}
@@ -1491,7 +1512,7 @@ get_for_ref (caf_reference_t *ref, size_t *i, size_t *dst_index,
get_for_ref (ref, i, dst_index, single_token, dst, NULL,
ds, sr + array_offset_src * ref->item_size,
dst_kind, src_kind, dst_dim + 1, src_dim + 1,
- 1, stat);
+ 1, stat, src_type);
dst_index[dst_dim]
+= GFC_DIMENSION_STRIDE (dst->dim[dst_dim]);
array_offset_src += ref->u.a.dim[src_dim].s.stride;
@@ -1502,7 +1523,7 @@ get_for_ref (caf_reference_t *ref, size_t *i, size_t *dst_index,
get_for_ref (ref, i, dst_index, single_token, dst, NULL, ds,
sr + array_offset_src * ref->item_size,
dst_kind, src_kind, dst_dim, src_dim + 1, 1,
- stat);
+ stat, src_type);
return;
/* The OPEN_* are mapped to a RANGE and therefore can not occur. */
case CAF_ARR_REF_OPEN_END:
@@ -1523,7 +1544,8 @@ _gfortran_caf_get_by_ref (caf_token_t token,
gfc_descriptor_t *dst, caf_reference_t *refs,
int dst_kind, int src_kind,
bool may_require_tmp __attribute__ ((unused)),
- bool dst_reallocatable, int *stat)
+ bool dst_reallocatable, int *stat,
+ int src_type)
{
const char vecrefunknownkind[] = "libcaf_single::caf_get_by_ref(): "
"unknown kind in vector-ref.\n";
@@ -1585,7 +1607,13 @@ _gfortran_caf_get_by_ref (caf_token_t token,
else
{
memptr += riter->u.c.offset;
- src = (gfc_descriptor_t *)memptr;
+ /* When the next ref is an array ref, assume there is an
+ array descriptor at memptr. Note, static arrays do not have
+ a descriptor. */
+ if (riter->next && riter->next->type == CAF_REF_ARRAY)
+ src = (gfc_descriptor_t *)memptr;
+ else
+ src = NULL;
}
break;
case CAF_REF_ARRAY:
@@ -1677,6 +1705,13 @@ _gfortran_caf_get_by_ref (caf_token_t token,
caf_internal_error (extentoutofrange, stat, NULL, 0);
return;
}
+ /* Special mode when called by __caf_sendget_by_ref (). */
+ if (dst_rank == -1 && GFC_DESCRIPTOR_DATA (dst) == NULL)
+ {
+ dst_rank = dst_cur_dim + 1;
+ GFC_DESCRIPTOR_RANK (dst) = dst_rank;
+ GFC_DESCRIPTOR_SIZE (dst) = dst_kind;
+ }
/* When dst is an array. */
if (dst_rank > 0)
{
@@ -1845,6 +1880,13 @@ _gfortran_caf_get_by_ref (caf_token_t token,
caf_internal_error (extentoutofrange, stat, NULL, 0);
return;
}
+ /* Special mode when called by __caf_sendget_by_ref (). */
+ if (dst_rank == -1 && GFC_DESCRIPTOR_DATA (dst) == NULL)
+ {
+ dst_rank = dst_cur_dim + 1;
+ GFC_DESCRIPTOR_RANK (dst) = dst_rank;
+ GFC_DESCRIPTOR_SIZE (dst) = dst_kind;
+ }
/* When dst is an array. */
if (dst_rank > 0)
{
@@ -1946,6 +1988,13 @@ _gfortran_caf_get_by_ref (caf_token_t token,
if (!array_extent_fixed)
{
assert (size == 1);
+ /* Special mode when called by __caf_sendget_by_ref (). */
+ if (dst_rank == -1 && GFC_DESCRIPTOR_DATA (dst) == NULL)
+ {
+ dst_rank = dst_cur_dim + 1;
+ GFC_DESCRIPTOR_RANK (dst) = dst_rank;
+ GFC_DESCRIPTOR_SIZE (dst) = dst_kind;
+ }
/* This can happen only, when the result is scalar. */
for (dst_cur_dim = 0; dst_cur_dim < dst_rank; ++dst_cur_dim)
GFC_DIMENSION_SET (dst->dim[dst_cur_dim], 1, 1, 1);
@@ -1967,7 +2016,7 @@ _gfortran_caf_get_by_ref (caf_token_t token,
i = 0;
get_for_ref (refs, &i, dst_index, single_token, dst, src,
GFC_DESCRIPTOR_DATA (dst), memptr, dst_kind, src_kind, 0, 0,
- 1, stat);
+ 1, stat, src_type);
}
@@ -1976,7 +2025,7 @@ send_by_ref (caf_reference_t *ref, size_t *i, size_t *src_index,
caf_single_token_t single_token, gfc_descriptor_t *dst,
gfc_descriptor_t *src, void *ds, void *sr,
int dst_kind, int src_kind, size_t dst_dim, size_t src_dim,
- size_t num, size_t size, int *stat)
+ size_t num, size_t size, int *stat, int dst_type)
{
const char vecrefunknownkind[] = "libcaf_single::caf_send_by_ref(): "
"unknown kind in vector-ref.\n";
@@ -1992,7 +2041,6 @@ send_by_ref (caf_reference_t *ref, size_t *i, size_t *src_index,
{
size_t src_size = GFC_DESCRIPTOR_SIZE (src);
ptrdiff_t array_offset_src = 0;;
- int dst_type = -1;
switch (ref->type)
{
@@ -2036,26 +2084,18 @@ send_by_ref (caf_reference_t *ref, size_t *i, size_t *src_index,
dst_type = GFC_DESCRIPTOR_TYPE (dst);
}
else
- {
- /* When no destination descriptor is present, assume that
- source and dest type are identical. */
- dst_type = GFC_DESCRIPTOR_TYPE (src);
- ds = *(void **)(ds + ref->u.c.offset);
- }
+ ds = *(void **)(ds + ref->u.c.offset);
}
copy_data (ds, sr, dst_type, GFC_DESCRIPTOR_TYPE (src),
dst_kind, src_kind, ref->item_size, src_size, 1, stat);
}
else
- copy_data (ds + ref->u.c.offset, sr,
- dst != NULL ? GFC_DESCRIPTOR_TYPE (dst)
- : GFC_DESCRIPTOR_TYPE (src),
+ copy_data (ds + ref->u.c.offset, sr, dst_type,
GFC_DESCRIPTOR_TYPE (src),
dst_kind, src_kind, ref->item_size, src_size, 1, stat);
++(*i);
return;
case CAF_REF_STATIC_ARRAY:
- dst_type = ref->u.a.static_array_type;
/* Intentionally fall through. */
case CAF_REF_ARRAY:
if (ref->u.a.mode[dst_dim] == CAF_ARR_REF_NONE)
@@ -2064,18 +2104,14 @@ send_by_ref (caf_reference_t *ref, size_t *i, size_t *src_index,
{
for (size_t d = 0; d < src_rank; ++d)
array_offset_src += src_index[d];
- copy_data (ds, sr + array_offset_src * ref->item_size,
- dst_type == -1 ? GFC_DESCRIPTOR_TYPE (dst)
- : dst_type,
- GFC_DESCRIPTOR_TYPE (src), dst_kind, src_kind,
- ref->item_size, src_size, num, stat);
+ copy_data (ds, sr + array_offset_src * src_size,
+ dst_type, GFC_DESCRIPTOR_TYPE (src), dst_kind,
+ src_kind, ref->item_size, src_size, num, stat);
}
else
- copy_data (ds, sr,
- dst_type == -1 ? GFC_DESCRIPTOR_TYPE (dst)
- : dst_type,
- GFC_DESCRIPTOR_TYPE (src), dst_kind, src_kind,
- ref->item_size, src_size, num, stat);
+ copy_data (ds, sr, dst_type, GFC_DESCRIPTOR_TYPE (src),
+ dst_kind, src_kind, ref->item_size, src_size, num,
+ stat);
*i += num;
return;
}
@@ -2123,22 +2159,30 @@ send_by_ref (caf_reference_t *ref, size_t *i, size_t *src_index,
return;
}
single_token = *(caf_single_token_t*)(ds + ref->u.c.caf_token_offset);
+ /* When a component is allocatable (caf_token_offset != 0) and not an
+ array (ref->next->type == CAF_REF_COMPONENT), then ds has to be
+ dereffed. */
+ if (ref->next && ref->next->type == CAF_REF_COMPONENT)
+ ds = *(void **)(ds + ref->u.c.offset);
+ else
+ ds += ref->u.c.offset;
+
send_by_ref (ref->next, i, src_index, single_token,
- single_token->desc, src, ds + ref->u.c.offset, sr,
- dst_kind, src_kind, 0, src_dim, 1, size, stat);
+ single_token->desc, src, ds, sr,
+ dst_kind, src_kind, 0, src_dim, 1, size, stat, dst_type);
}
else
send_by_ref (ref->next, i, src_index, single_token,
(gfc_descriptor_t *)(ds + ref->u.c.offset), src,
ds + ref->u.c.offset, sr, dst_kind, src_kind, 0, src_dim,
- 1, size, stat);
+ 1, size, stat, dst_type);
return;
case CAF_REF_ARRAY:
if (ref->u.a.mode[dst_dim] == CAF_ARR_REF_NONE)
{
send_by_ref (ref->next, i, src_index, single_token,
(gfc_descriptor_t *)ds, src, ds, sr, dst_kind, src_kind,
- 0, src_dim, 1, size, stat);
+ 0, src_dim, 1, size, stat, dst_type);
return;
}
/* Only when on the left most index switch the data pointer to
@@ -2180,7 +2224,7 @@ send_by_ref (caf_reference_t *ref, size_t *i, size_t *src_index,
send_by_ref (ref, i, src_index, single_token, dst, src,
ds + array_offset_dst * ref->item_size, sr,
dst_kind, src_kind, dst_dim + 1, src_dim + 1,
- 1, size, stat);
+ 1, size, stat, dst_type);
if (src_rank > 0)
src_index[src_dim]
+= GFC_DIMENSION_STRIDE (src->dim[src_dim]);
@@ -2201,7 +2245,7 @@ send_by_ref (caf_reference_t *ref, size_t *i, size_t *src_index,
send_by_ref (ref, i, src_index, single_token, dst, src,
ds + array_offset_dst * ref->item_size, sr,
dst_kind, src_kind, dst_dim + 1, src_dim + 1,
- 1, size, stat);
+ 1, size, stat, dst_type);
if (src_rank > 0)
src_index[src_dim]
+= GFC_DIMENSION_STRIDE (src->dim[src_dim]);
@@ -2222,7 +2266,7 @@ send_by_ref (caf_reference_t *ref, size_t *i, size_t *src_index,
send_by_ref (ref, i, src_index, single_token, dst, src,
ds + array_offset_dst * ref->item_size, sr,
dst_kind, src_kind, dst_dim + 1, src_dim + 1,
- 1, size, stat);
+ 1, size, stat, dst_type);
if (src_rank > 0)
src_index[src_dim]
+= GFC_DIMENSION_STRIDE (src->dim[src_dim]);
@@ -2236,7 +2280,7 @@ send_by_ref (caf_reference_t *ref, size_t *i, size_t *src_index,
send_by_ref (ref, i, src_index, single_token, dst, src, ds
+ array_offset_dst * ref->item_size, sr,
dst_kind, src_kind, dst_dim + 1, src_dim, 1,
- size, stat);
+ size, stat, dst_type);
return;
case CAF_ARR_REF_OPEN_END:
COMPUTE_NUM_ITEMS (extent_dst,
@@ -2253,7 +2297,7 @@ send_by_ref (caf_reference_t *ref, size_t *i, size_t *src_index,
send_by_ref (ref, i, src_index, single_token, dst, src,
ds + array_offset_dst * ref->item_size, sr,
dst_kind, src_kind, dst_dim + 1, src_dim + 1,
- 1, size, stat);
+ 1, size, stat, dst_type);
if (src_rank > 0)
src_index[src_dim]
+= GFC_DIMENSION_STRIDE (src->dim[src_dim]);
@@ -2274,7 +2318,7 @@ send_by_ref (caf_reference_t *ref, size_t *i, size_t *src_index,
send_by_ref (ref, i, src_index, single_token, dst, src,
ds + array_offset_dst * ref->item_size, sr,
dst_kind, src_kind, dst_dim + 1, src_dim + 1,
- 1, size, stat);
+ 1, size, stat, dst_type);
if (src_rank > 0)
src_index[src_dim]
+= GFC_DIMENSION_STRIDE (src->dim[src_dim]);
@@ -2290,7 +2334,7 @@ send_by_ref (caf_reference_t *ref, size_t *i, size_t *src_index,
{
send_by_ref (ref->next, i, src_index, single_token, NULL,
src, ds, sr, dst_kind, src_kind,
- 0, src_dim, 1, size, stat);
+ 0, src_dim, 1, size, stat, dst_type);
return;
}
switch (ref->u.a.mode[dst_dim])
@@ -2325,7 +2369,7 @@ send_by_ref (caf_reference_t *ref, size_t *i, size_t *src_index,
send_by_ref (ref, i, src_index, single_token, NULL, src,
ds + array_offset_dst * ref->item_size, sr,
dst_kind, src_kind, dst_dim + 1, src_dim + 1,
- 1, size, stat);
+ 1, size, stat, dst_type);
src_index[src_dim]
+= GFC_DIMENSION_STRIDE (src->dim[src_dim]);
}
@@ -2339,7 +2383,7 @@ send_by_ref (caf_reference_t *ref, size_t *i, size_t *src_index,
send_by_ref (ref, i, src_index, single_token, NULL, src,
ds + array_offset_dst * ref->item_size, sr,
dst_kind, src_kind, dst_dim + 1, src_dim + 1,
- 1, size, stat);
+ 1, size, stat, dst_type);
if (src_rank > 0)
src_index[src_dim]
+= GFC_DIMENSION_STRIDE (src->dim[src_dim]);
@@ -2357,7 +2401,7 @@ send_by_ref (caf_reference_t *ref, size_t *i, size_t *src_index,
send_by_ref (ref, i, src_index, single_token, NULL, src,
ds + array_offset_dst * ref->item_size, sr,
dst_kind, src_kind, dst_dim + 1, src_dim + 1,
- 1, size, stat);
+ 1, size, stat, dst_type);
if (src_rank > 0)
src_index[src_dim]
+= GFC_DIMENSION_STRIDE (src->dim[src_dim]);
@@ -2369,7 +2413,7 @@ send_by_ref (caf_reference_t *ref, size_t *i, size_t *src_index,
send_by_ref (ref, i, src_index, single_token, NULL, src,
ds + array_offset_dst * ref->item_size, sr,
dst_kind, src_kind, dst_dim + 1, src_dim, 1,
- size, stat);
+ size, stat, dst_type);
return;
/* The OPEN_* are mapped to a RANGE and therefore can not occur. */
case CAF_ARR_REF_OPEN_END:
@@ -2390,7 +2434,7 @@ _gfortran_caf_send_by_ref (caf_token_t token,
gfc_descriptor_t *src, caf_reference_t *refs,
int dst_kind, int src_kind,
bool may_require_tmp __attribute__ ((unused)),
- bool dst_reallocatable, int *stat)
+ bool dst_reallocatable, int *stat, int dst_type)
{
const char vecrefunknownkind[] = "libcaf_single::caf_get_by_ref(): "
"unknown kind in vector-ref.\n";
@@ -2748,7 +2792,7 @@ _gfortran_caf_send_by_ref (caf_token_t token,
i = 0;
send_by_ref (refs, &i, dst_index, single_token, dst, src,
memptr, GFC_DESCRIPTOR_DATA (src), dst_kind, src_kind, 0, 0,
- 1, size, stat);
+ 1, size, stat, dst_type);
assert (i == size);
}
@@ -2759,20 +2803,23 @@ _gfortran_caf_sendget_by_ref (caf_token_t dst_token, int dst_image_index,
int src_image_index,
caf_reference_t *src_refs, int dst_kind,
int src_kind, bool may_require_tmp, int *dst_stat,
- int *src_stat)
+ int *src_stat, int dst_type, int src_type)
{
- gfc_array_void temp;
+ GFC_FULL_ARRAY_DESCRIPTOR (GFC_MAX_DIMENSIONS, void) temp;
+ GFC_DESCRIPTOR_DATA (&temp) = NULL;
+ GFC_DESCRIPTOR_RANK (&temp) = -1;
+ GFC_DESCRIPTOR_TYPE (&temp) = dst_type;
_gfortran_caf_get_by_ref (src_token, src_image_index, &temp, src_refs,
dst_kind, src_kind, may_require_tmp, true,
- src_stat);
+ src_stat, src_type);
if (src_stat && *src_stat != 0)
return;
_gfortran_caf_send_by_ref (dst_token, dst_image_index, &temp, dst_refs,
- dst_kind, src_kind, may_require_tmp, true,
- dst_stat);
+ dst_kind, dst_kind, may_require_tmp, true,
+ dst_stat, dst_type);
if (GFC_DESCRIPTOR_DATA (&temp))
free (GFC_DESCRIPTOR_DATA (&temp));
}
@@ -2870,7 +2917,7 @@ void
_gfortran_caf_event_post (caf_token_t token, size_t index,
int image_index __attribute__ ((unused)),
int *stat, char *errmsg __attribute__ ((unused)),
- int errmsg_len __attribute__ ((unused)))
+ size_t errmsg_len __attribute__ ((unused)))
{
uint32_t value = 1;
uint32_t *event = (uint32_t *) ((char *) MEMTOK (token) + index
@@ -2885,7 +2932,7 @@ void
_gfortran_caf_event_wait (caf_token_t token, size_t index,
int until_count, int *stat,
char *errmsg __attribute__ ((unused)),
- int errmsg_len __attribute__ ((unused)))
+ size_t errmsg_len __attribute__ ((unused)))
{
uint32_t *event = (uint32_t *) ((char *) MEMTOK (token) + index
* sizeof (uint32_t));
@@ -2912,7 +2959,7 @@ _gfortran_caf_event_query (caf_token_t token, size_t index,
void
_gfortran_caf_lock (caf_token_t token, size_t index,
int image_index __attribute__ ((unused)),
- int *aquired_lock, int *stat, char *errmsg, int errmsg_len)
+ int *aquired_lock, int *stat, char *errmsg, size_t errmsg_len)
{
const char *msg = "Already locked";
bool *lock = &((bool *) MEMTOK (token))[index];
@@ -2941,22 +2988,22 @@ _gfortran_caf_lock (caf_token_t token, size_t index,
*stat = 1;
if (errmsg_len > 0)
{
- int len = ((int) sizeof (msg) > errmsg_len) ? errmsg_len
- : (int) sizeof (msg);
+ size_t len = (sizeof (msg) > errmsg_len) ? errmsg_len
+ : sizeof (msg);
memcpy (errmsg, msg, len);
if (errmsg_len > len)
memset (&errmsg[len], ' ', errmsg_len-len);
}
return;
}
- _gfortran_caf_error_stop_str (msg, (int32_t) strlen (msg));
+ _gfortran_caf_error_stop_str (msg, strlen (msg), false);
}
void
_gfortran_caf_unlock (caf_token_t token, size_t index,
int image_index __attribute__ ((unused)),
- int *stat, char *errmsg, int errmsg_len)
+ int *stat, char *errmsg, size_t errmsg_len)
{
const char *msg = "Variable is not locked";
bool *lock = &((bool *) MEMTOK (token))[index];
@@ -2974,15 +3021,15 @@ _gfortran_caf_unlock (caf_token_t token, size_t index,
*stat = 1;
if (errmsg_len > 0)
{
- int len = ((int) sizeof (msg) > errmsg_len) ? errmsg_len
- : (int) sizeof (msg);
+ size_t len = (sizeof (msg) > errmsg_len) ? errmsg_len
+ : sizeof (msg);
memcpy (errmsg, msg, len);
if (errmsg_len > len)
memset (&errmsg[len], ' ', errmsg_len-len);
}
return;
}
- _gfortran_caf_error_stop_str (msg, (int32_t) strlen (msg));
+ _gfortran_caf_error_stop_str (msg, strlen (msg), false);
}
int
diff --git a/libgfortran/configure b/libgfortran/configure
index 60e18a7b3e8..86904ef7eea 100755
--- a/libgfortran/configure
+++ b/libgfortran/configure
@@ -5804,18 +5804,28 @@ else
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
case "$host" in
i[34567]86-*-linux* | x86_64-*-linux*)
case "$enable_cet" in
default)
- # Check if assembler supports CET.
+ # Check if target supports multi-byte NOPs
+ # and if assembler supports CET insn.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
main ()
{
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
asm ("setssbsy");
+#endif
+
;
return 0;
}
@@ -5855,6 +5865,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
esac
if test x$enable_cet = xyes; then
CET_FLAGS="-fcf-protection -mcet"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
AM_FCFLAGS="$AM_FCFLAGS $CET_FLAGS"
@@ -12498,7 +12513,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 12501 "configure"
+#line 12516 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -12604,7 +12619,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 12607 "configure"
+#line 12622 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
diff --git a/libgfortran/io/transfer.c b/libgfortran/io/transfer.c
index 8bc828c0214..df33bed1561 100644
--- a/libgfortran/io/transfer.c
+++ b/libgfortran/io/transfer.c
@@ -3993,6 +3993,10 @@ finalize_transfer (st_parameter_dt *dtp)
if (dtp->u.p.unit_is_internal)
{
+ /* The unit structure may be reused later so clear the
+ internal unit kind. */
+ dtp->u.p.current_unit->internal_unit_kind = 0;
+
fbuf_destroy (dtp->u.p.current_unit);
if (dtp->u.p.current_unit
&& (dtp->u.p.current_unit->child_dtio == 0)
diff --git a/libgfortran/libgfortran.h b/libgfortran/libgfortran.h
index 38e364f1012..ca06e6db620 100644
--- a/libgfortran/libgfortran.h
+++ b/libgfortran/libgfortran.h
@@ -888,7 +888,7 @@ internal_proto(filename_from_unit);
/* stop.c */
-extern _Noreturn void stop_string (const char *, GFC_INTEGER_4);
+extern _Noreturn void stop_string (const char *, size_t, bool);
export_proto(stop_string);
/* reshape_packed.c */
diff --git a/libgfortran/runtime/pause.c b/libgfortran/runtime/pause.c
index 25690d8319e..37672d4a02c 100644
--- a/libgfortran/runtime/pause.c
+++ b/libgfortran/runtime/pause.c
@@ -40,29 +40,29 @@ do_pause (void)
fgets(buff, 4, stdin);
if (strncmp(buff, "go\n", 3) != 0)
- stop_string ('\0', 0);
+ stop_string ('\0', 0, false);
estr_write ("RESUMED\n");
}
/* A numeric PAUSE statement. */
-extern void pause_numeric (GFC_INTEGER_4);
+extern void pause_numeric (GFC_INTEGER_8);
export_proto(pause_numeric);
void
-pause_numeric (GFC_INTEGER_4 code)
+pause_numeric (GFC_INTEGER_8 code)
{
- st_printf ("PAUSE %d\n", (int) code);
+ st_printf ("PAUSE %ld\n", (long) code);
do_pause ();
}
/* A character string or blank PAUSE statement. */
-extern void pause_string (char *string, GFC_INTEGER_4 len);
+extern void pause_string (char *string, size_t len);
export_proto(pause_string);
void
-pause_string (char *string, GFC_INTEGER_4 len)
+pause_string (char *string, size_t len)
{
estr_write ("PAUSE ");
ssize_t w = write (STDERR_FILENO, string, len);
diff --git a/libgfortran/runtime/stop.c b/libgfortran/runtime/stop.c
index 6f8b62f8385..1e6dd8c28d0 100644
--- a/libgfortran/runtime/stop.c
+++ b/libgfortran/runtime/stop.c
@@ -81,14 +81,17 @@ report_exception (void)
/* A numeric STOP statement. */
-extern _Noreturn void stop_numeric (GFC_INTEGER_4);
+extern _Noreturn void stop_numeric (int, bool);
export_proto(stop_numeric);
void
-stop_numeric (GFC_INTEGER_4 code)
+stop_numeric (int code, bool quiet)
{
- report_exception ();
- st_printf ("STOP %d\n", (int)code);
+ if (!quiet)
+ {
+ report_exception ();
+ st_printf ("STOP %d\n", code);
+ }
exit (code);
}
@@ -96,14 +99,17 @@ stop_numeric (GFC_INTEGER_4 code)
/* A character string or blank STOP statement. */
void
-stop_string (const char *string, GFC_INTEGER_4 len)
+stop_string (const char *string, size_t len, bool quiet)
{
- report_exception ();
- if (string)
+ if (!quiet)
{
- estr_write ("STOP ");
- (void) write (STDERR_FILENO, string, len);
- estr_write ("\n");
+ report_exception ();
+ if (string)
+ {
+ estr_write ("STOP ");
+ (void) write (STDERR_FILENO, string, len);
+ estr_write ("\n");
+ }
}
exit (0);
}
@@ -114,30 +120,35 @@ stop_string (const char *string, GFC_INTEGER_4 len)
initiates error termination of execution." Thus, error_stop_string returns
a nonzero exit status code. */
-extern _Noreturn void error_stop_string (const char *, GFC_INTEGER_4);
+extern _Noreturn void error_stop_string (const char *, size_t, bool);
export_proto(error_stop_string);
void
-error_stop_string (const char *string, GFC_INTEGER_4 len)
+error_stop_string (const char *string, size_t len, bool quiet)
{
- report_exception ();
- estr_write ("ERROR STOP ");
- (void) write (STDERR_FILENO, string, len);
- estr_write ("\n");
-
+ if (!quiet)
+ {
+ report_exception ();
+ estr_write ("ERROR STOP ");
+ (void) write (STDERR_FILENO, string, len);
+ estr_write ("\n");
+ }
exit_error (1);
}
/* A numeric ERROR STOP statement. */
-extern _Noreturn void error_stop_numeric (GFC_INTEGER_4);
+extern _Noreturn void error_stop_numeric (int, bool);
export_proto(error_stop_numeric);
void
-error_stop_numeric (GFC_INTEGER_4 code)
+error_stop_numeric (int code, bool quiet)
{
- report_exception ();
- st_printf ("ERROR STOP %d\n", (int) code);
+ if (!quiet)
+ {
+ report_exception ();
+ st_printf ("ERROR STOP %d\n", code);
+ }
exit_error (code);
}
diff --git a/libgo/configure b/libgo/configure
index aba4dc396fc..c5f8e8a3763 100755
--- a/libgo/configure
+++ b/libgo/configure
@@ -13653,10 +13653,10 @@ esac
# - libgo/go/syscall/endian_XX.go
# - possibly others
# - possibly update files in libgo/go/internal/syscall/unix
-ALLGOARCH="386 alpha amd64 amd64p32 arm armbe arm64 arm64be ia64 m68k mips mipsle mips64 mips64le mips64p32 mips64p32le ppc ppc64 ppc64le s390 s390x sh shbe sparc sparc64"
+ALLGOARCH="386 alpha amd64 amd64p32 arm armbe arm64 arm64be ia64 m68k mips mipsle mips64 mips64le mips64p32 mips64p32le ppc ppc64 ppc64le riscv64 s390 s390x sh shbe sparc sparc64"
# All known GOARCH family values.
-ALLGOARCHFAMILY="I386 ALPHA AMD64 ARM ARM64 IA64 M68K MIPS MIPS64 PPC PPC64 S390 S390X SH SPARC SPARC64"
+ALLGOARCHFAMILY="I386 ALPHA AMD64 ARM ARM64 IA64 M68K MIPS MIPS64 PPC PPC64 RISCV64 S390 S390X SH SPARC SPARC64"
GOARCH=unknown
case ${host} in
@@ -13773,6 +13773,9 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
;;
+ riscv64-*-*)
+ GOARCH=riscv64
+ ;;
s390*-*-*)
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -14209,7 +14212,7 @@ if test "${libgo_cv_lib_pthread+set}" = set; then :
$as_echo_n "(cached) " >&6
else
CFLAGS_hold=$CFLAGS
-CFLAGS="$CFLAGS -pthread"
+CFLAGS="$CFLAGS -pthread -L../libatomic/.libs"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int i;
@@ -14226,7 +14229,8 @@ fi
$as_echo "$libgo_cv_lib_pthread" >&6; }
PTHREAD_CFLAGS=
if test "$libgo_cv_lib_pthread" = yes; then
- PTHREAD_CFLAGS=-pthread
+ # RISC-V apparently adds -latomic when using -pthread.
+ PTHREAD_CFLAGS="-pthread -L../libatomic/.libs"
fi
diff --git a/libgo/configure.ac b/libgo/configure.ac
index 1264a1d2524..eabe294afa9 100644
--- a/libgo/configure.ac
+++ b/libgo/configure.ac
@@ -224,10 +224,10 @@ AC_SUBST(USE_DEJAGNU)
# - libgo/go/syscall/endian_XX.go
# - possibly others
# - possibly update files in libgo/go/internal/syscall/unix
-ALLGOARCH="386 alpha amd64 amd64p32 arm armbe arm64 arm64be ia64 m68k mips mipsle mips64 mips64le mips64p32 mips64p32le ppc ppc64 ppc64le s390 s390x sh shbe sparc sparc64"
+ALLGOARCH="386 alpha amd64 amd64p32 arm armbe arm64 arm64be ia64 m68k mips mipsle mips64 mips64le mips64p32 mips64p32le ppc ppc64 ppc64le riscv64 s390 s390x sh shbe sparc sparc64"
# All known GOARCH family values.
-ALLGOARCHFAMILY="I386 ALPHA AMD64 ARM ARM64 IA64 M68K MIPS MIPS64 PPC PPC64 S390 S390X SH SPARC SPARC64"
+ALLGOARCHFAMILY="I386 ALPHA AMD64 ARM ARM64 IA64 M68K MIPS MIPS64 PPC PPC64 RISCV64 S390 S390X SH SPARC SPARC64"
GOARCH=unknown
case ${host} in
@@ -304,6 +304,9 @@ AC_COMPILE_IFELSE([
[GOARCH=ppc64le],
[GOARCH=ppc64])])
;;
+ riscv64-*-*)
+ GOARCH=riscv64
+ ;;
s390*-*-*)
AC_COMPILE_IFELSE([
#if defined(__s390x__)
@@ -493,14 +496,15 @@ dnl Test whether the compiler supports the -pthread option.
AC_CACHE_CHECK([whether -pthread is supported],
[libgo_cv_lib_pthread],
[CFLAGS_hold=$CFLAGS
-CFLAGS="$CFLAGS -pthread"
+CFLAGS="$CFLAGS -pthread -L../libatomic/.libs"
AC_COMPILE_IFELSE([[int i;]],
[libgo_cv_lib_pthread=yes],
[libgo_cv_lib_pthread=no])
CFLAGS=$CFLAGS_hold])
PTHREAD_CFLAGS=
if test "$libgo_cv_lib_pthread" = yes; then
- PTHREAD_CFLAGS=-pthread
+ # RISC-V apparently adds -latomic when using -pthread.
+ PTHREAD_CFLAGS="-pthread -L../libatomic/.libs"
fi
AC_SUBST(PTHREAD_CFLAGS)
diff --git a/libgo/go/cmd/cgo/main.go b/libgo/go/cmd/cgo/main.go
index f5c231ced6d..6baabfd1336 100644
--- a/libgo/go/cmd/cgo/main.go
+++ b/libgo/go/cmd/cgo/main.go
@@ -168,6 +168,7 @@ var ptrSizeMap = map[string]int64{
"ppc": 4,
"ppc64": 8,
"ppc64le": 8,
+ "riscv64": 8,
"s390": 4,
"s390x": 8,
"sh": 4,
@@ -192,6 +193,7 @@ var intSizeMap = map[string]int64{
"ppc": 4,
"ppc64": 8,
"ppc64le": 8,
+ "riscv64": 8,
"s390": 4,
"s390x": 8,
"sh": 4,
diff --git a/libgo/go/go/build/syslist.go b/libgo/go/go/build/syslist.go
index 6bf72630e7c..679d195025e 100644
--- a/libgo/go/go/build/syslist.go
+++ b/libgo/go/go/build/syslist.go
@@ -5,4 +5,4 @@
package build
const goosList = "aix android darwin dragonfly freebsd linux nacl netbsd openbsd plan9 solaris windows zos "
-const goarchList = "386 amd64 amd64p32 arm armbe arm64 arm64be alpha m68k ppc64 ppc64le mips mipsle mips64 mips64le mips64p32 mips64p32le ppc s390 s390x sh shbe sparc sparc64"
+const goarchList = "386 amd64 amd64p32 arm armbe arm64 arm64be alpha m68k ppc64 ppc64le mips mipsle mips64 mips64le mips64p32 mips64p32le ppc riscv64 s390 s390x sh shbe sparc sparc64"
diff --git a/libgo/go/internal/syscall/unix/getrandom_linux_generic.go b/libgo/go/internal/syscall/unix/getrandom_linux_generic.go
index 8425800b6da..d6af3dea8d7 100644
--- a/libgo/go/internal/syscall/unix/getrandom_linux_generic.go
+++ b/libgo/go/internal/syscall/unix/getrandom_linux_generic.go
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
-// +build arm64
+// +build arm64 riscv64
package unix
diff --git a/libgo/go/runtime/chan.go b/libgo/go/runtime/chan.go
index bf708aec5c4..87f7879e6f5 100644
--- a/libgo/go/runtime/chan.go
+++ b/libgo/go/runtime/chan.go
@@ -148,6 +148,11 @@ func chansend1(c *hchan, elem unsafe.Pointer) {
* the operation; we'll see that it's now closed.
*/
func chansend(c *hchan, ep unsafe.Pointer, block bool, callerpc uintptr) bool {
+ // Check preemption, since unlike gc we don't check on every call.
+ if getg().preempt {
+ checkPreempt()
+ }
+
if c == nil {
if !block {
return false
@@ -430,6 +435,11 @@ func chanrecv(c *hchan, ep unsafe.Pointer, block bool) (selected, received bool)
print("chanrecv: chan=", c, "\n")
}
+ // Check preemption, since unlike gc we don't check on every call.
+ if getg().preempt {
+ checkPreempt()
+ }
+
if c == nil {
if !block {
return
diff --git a/libgo/go/runtime/hash64.go b/libgo/go/runtime/hash64.go
index 5912943a4e9..74775a88f26 100644
--- a/libgo/go/runtime/hash64.go
+++ b/libgo/go/runtime/hash64.go
@@ -6,7 +6,7 @@
// xxhash: https://code.google.com/p/xxhash/
// cityhash: https://code.google.com/p/cityhash/
-// +build amd64 amd64p32 arm64 mips64 mips64le ppc64 ppc64le s390x alpha arm64be ia64 mips64p32 mips64p32le sparc64
+// +build amd64 amd64p32 arm64 mips64 mips64le ppc64 ppc64le s390x alpha arm64be ia64 mips64p32 mips64p32le sparc64 riscv64
package runtime
diff --git a/libgo/go/runtime/hashmap.go b/libgo/go/runtime/hashmap.go
index a1fe49e9305..aba9abd7aab 100644
--- a/libgo/go/runtime/hashmap.go
+++ b/libgo/go/runtime/hashmap.go
@@ -356,6 +356,11 @@ func makemap(t *maptype, hint int, h *hmap) *hmap {
// NOTE: The returned pointer may keep the whole map live, so don't
// hold onto it for very long.
func mapaccess1(t *maptype, h *hmap, key unsafe.Pointer) unsafe.Pointer {
+ // Check preemption, since unlike gc we don't check on every call.
+ if getg().preempt {
+ checkPreempt()
+ }
+
if raceenabled && h != nil {
callerpc := getcallerpc()
pc := funcPC(mapaccess1)
@@ -409,6 +414,11 @@ func mapaccess1(t *maptype, h *hmap, key unsafe.Pointer) unsafe.Pointer {
}
func mapaccess2(t *maptype, h *hmap, key unsafe.Pointer) (unsafe.Pointer, bool) {
+ // Check preemption, since unlike gc we don't check on every call.
+ if getg().preempt {
+ checkPreempt()
+ }
+
if raceenabled && h != nil {
callerpc := getcallerpc()
pc := funcPC(mapaccess2)
@@ -463,6 +473,11 @@ func mapaccess2(t *maptype, h *hmap, key unsafe.Pointer) (unsafe.Pointer, bool)
// returns both key and value. Used by map iterator
func mapaccessK(t *maptype, h *hmap, key unsafe.Pointer) (unsafe.Pointer, unsafe.Pointer) {
+ // Check preemption, since unlike gc we don't check on every call.
+ if getg().preempt {
+ checkPreempt()
+ }
+
if h == nil || h.count == 0 {
return nil, nil
}
@@ -521,6 +536,11 @@ func mapaccess2_fat(t *maptype, h *hmap, key, zero unsafe.Pointer) (unsafe.Point
// Like mapaccess, but allocates a slot for the key if it is not present in the map.
func mapassign(t *maptype, h *hmap, key unsafe.Pointer) unsafe.Pointer {
+ // Check preemption, since unlike gc we don't check on every call.
+ if getg().preempt {
+ checkPreempt()
+ }
+
if h == nil {
panic(plainError("assignment to entry in nil map"))
}
@@ -772,6 +792,11 @@ func mapiterinit(t *maptype, h *hmap, it *hiter) {
}
func mapiternext(it *hiter) {
+ // Check preemption, since unlike gc we don't check on every call.
+ if getg().preempt {
+ checkPreempt()
+ }
+
h := it.h
if raceenabled {
callerpc := getcallerpc()
diff --git a/libgo/go/runtime/lfstack_64bit.go b/libgo/go/runtime/lfstack_64bit.go
index 95d0eba57a6..dca17181e3e 100644
--- a/libgo/go/runtime/lfstack_64bit.go
+++ b/libgo/go/runtime/lfstack_64bit.go
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
-// +build amd64 arm64 mips64 mips64le ppc64 ppc64le s390x arm64be alpha sparc64 ia64
+// +build amd64 arm64 mips64 mips64le ppc64 ppc64le s390x arm64be alpha sparc64 ia64 riscv64
package runtime
diff --git a/libgo/go/runtime/malloc.go b/libgo/go/runtime/malloc.go
index 88e4ba3657b..c27aa487df3 100644
--- a/libgo/go/runtime/malloc.go
+++ b/libgo/go/runtime/malloc.go
@@ -826,6 +826,7 @@ func mallocgc(size uintptr, typ *_type, needzero bool) unsafe.Pointer {
}
}
+ // Check preemption, since unlike gc we don't check on every call.
if getg().preempt {
checkPreempt()
}
diff --git a/libgo/go/runtime/proc.go b/libgo/go/runtime/proc.go
index edf41405c1c..20fa0ad05be 100644
--- a/libgo/go/runtime/proc.go
+++ b/libgo/go/runtime/proc.go
@@ -2794,6 +2794,13 @@ func exitsyscall(dummy int32) {
exitsyscallclear(_g_)
_g_.m.locks--
_g_.throwsplit = false
+
+ // Check preemption, since unlike gc we don't check on
+ // every call.
+ if getg().preempt {
+ checkPreempt()
+ }
+
return
}
@@ -4084,8 +4091,9 @@ func preemptone(_p_ *p) bool {
// setting a global variable and figuring out a way to efficiently
// check that global variable.
//
- // For now we check gp.preempt in schedule and mallocgc,
- // which is at least better than doing nothing at all.
+ // For now we check gp.preempt in schedule, mallocgc, selectgo,
+ // and a few other places, which is at least better than doing
+ // nothing at all.
return true
}
diff --git a/libgo/go/runtime/select.go b/libgo/go/runtime/select.go
index 096af52be35..1c5124b4704 100644
--- a/libgo/go/runtime/select.go
+++ b/libgo/go/runtime/select.go
@@ -584,6 +584,13 @@ retc:
if cas.releasetime > 0 {
blockevent(cas.releasetime-t0, 1)
}
+
+ // Check preemption, since unlike gc we don't check on every call.
+ // A test case for this one is BenchmarkPingPongHog in proc_test.go.
+ if dfl != nil && getg().preempt {
+ checkPreempt()
+ }
+
return casi
sclose:
diff --git a/libgo/go/runtime/unaligned1.go b/libgo/go/runtime/unaligned1.go
index c94f19eeb94..2f5b63a4c7c 100644
--- a/libgo/go/runtime/unaligned1.go
+++ b/libgo/go/runtime/unaligned1.go
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
-// +build 386 amd64 amd64p32 arm64 ppc64 ppc64le s390x ppc s390 arm64be
+// +build 386 amd64 amd64p32 arm64 ppc64 ppc64le s390x ppc s390 arm64be riscv64
package runtime
diff --git a/libgo/go/syscall/endian_little.go b/libgo/go/syscall/endian_little.go
index b91d4bb72de..4a7312198f5 100644
--- a/libgo/go/syscall/endian_little.go
+++ b/libgo/go/syscall/endian_little.go
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
//
-// +build 386 amd64 amd64p32 arm arm64 ppc64le mips64le mipsle alpha ia64 mips64p32le sh
+// +build 386 amd64 amd64p32 arm arm64 ppc64le mips64le mipsle alpha ia64 mips64p32le sh riscv64
package syscall
diff --git a/libgo/go/syscall/libcall_linux_ustat.go b/libgo/go/syscall/libcall_linux_ustat.go
index 261f086f47e..3aff344f25c 100644
--- a/libgo/go/syscall/libcall_linux_ustat.go
+++ b/libgo/go/syscall/libcall_linux_ustat.go
@@ -4,7 +4,7 @@
// GNU/Linux library ustat call.
// This is not supported on some kernels, such as arm64.
-// +build !arm64
+// +build !arm64,!riscv64
package syscall
diff --git a/libgo/goarch.sh b/libgo/goarch.sh
index 9165e6a19a3..c63cbbaa76b 100755
--- a/libgo/goarch.sh
+++ b/libgo/goarch.sh
@@ -146,6 +146,10 @@ case $goarch in
;;
esac
;;
+ riscv64)
+ family=RISCV64
+ pcquantum=2
+ ;;
s390)
family=S390
bigendian=true
diff --git a/libgo/match.sh b/libgo/match.sh
index 62405556ede..9247ec6f40d 100755
--- a/libgo/match.sh
+++ b/libgo/match.sh
@@ -116,7 +116,7 @@ for f in $gofiles; do
aix | android | darwin | dragonfly | freebsd | linux | nacl | netbsd | openbsd | plan9 | solaris | windows)
tag1=nonmatchingtag
;;
- 386 | amd64 | amd64p32 | arm | armbe | arm64 | arm64be | alpha | ia64 | m68k | ppc64 | ppc64le | mips | mipsle | mips64 | mips64le | mips64p32 | mips64p32le | ppc | s390 | s390x | sh | shbe | sparc | sparc64)
+ 386 | amd64 | amd64p32 | arm | armbe | arm64 | arm64be | alpha | ia64 | m68k | ppc64 | ppc64le | mips | mipsle | mips64 | mips64le | mips64p32 | mips64p32le | ppc | riscv64 | s390 | s390x | sh | shbe | sparc | sparc64)
tag1=nonmatchingtag
;;
esac
@@ -128,7 +128,7 @@ for f in $gofiles; do
aix | android | darwin | dragonfly | freebsd | linux | nacl | netbsd | openbsd | plan9 | solaris | windows)
tag2=nonmatchingtag
;;
- 386 | amd64 | amd64p32 | arm | armbe | arm64 | arm64be | alpha | ia64 | m68k | ppc64 | ppc64le | mips | mipsle | mips64 | mips64le | mips64p32 | mips64p32le | ppc | s390 | s390x | sh | shbe | sparc | sparc64)
+ 386 | amd64 | amd64p32 | arm | armbe | arm64 | arm64be | alpha | ia64 | m68k | ppc64 | ppc64le | mips | mipsle | mips64 | mips64le | mips64p32 | mips64p32le | ppc | riscv64 | s390 | s390x | sh | shbe | sparc | sparc64)
tag2=nonmatchingtag
;;
esac
diff --git a/libgo/misc/cgo/testcshared/src/libgo2/dup2.go b/libgo/misc/cgo/testcshared/src/libgo2/dup2.go
index d18f0b130d3..d343aa54d9a 100644
--- a/libgo/misc/cgo/testcshared/src/libgo2/dup2.go
+++ b/libgo/misc/cgo/testcshared/src/libgo2/dup2.go
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
-// +build darwin dragonfly freebsd linux,!arm64 netbsd openbsd
+// +build darwin dragonfly freebsd linux,!arm64,!riscv64 netbsd openbsd
package main
diff --git a/libgo/misc/cgo/testcshared/src/libgo2/dup3.go b/libgo/misc/cgo/testcshared/src/libgo2/dup3.go
index c9c65a6e3c1..459f0dc1968 100644
--- a/libgo/misc/cgo/testcshared/src/libgo2/dup3.go
+++ b/libgo/misc/cgo/testcshared/src/libgo2/dup3.go
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
-// +build linux,arm64
+// +build linux,arm64 linux,riscv64
package main
diff --git a/libgo/runtime/go-caller.c b/libgo/runtime/go-caller.c
index ee8abdc67fe..6b26ddccbcf 100644
--- a/libgo/runtime/go-caller.c
+++ b/libgo/runtime/go-caller.c
@@ -129,18 +129,26 @@ __go_get_backtrace_state ()
is the entry on the stack of inlined functions; -1 means the last
one. */
-_Bool
+static _Bool
__go_file_line (uintptr pc, int index, String *fn, String *file, intgo *line)
{
struct caller c;
+ struct backtrace_state *state;
runtime_memclr (&c, sizeof c);
c.index = index;
- backtrace_pcinfo (__go_get_backtrace_state (), pc, callback,
- error_callback, &c);
+ state = __go_get_backtrace_state ();
+ backtrace_pcinfo (state, pc, callback, error_callback, &c);
*fn = c.fn;
*file = c.file;
*line = c.line;
+
+ // If backtrace_pcinfo didn't get the function name from the debug
+ // info, try to get it from the symbol table.
+ if (fn->len == 0)
+ backtrace_syminfo (state, pc, __go_syminfo_fnname_callback,
+ error_callback, fn);
+
return c.file.len > 0;
}
diff --git a/libgo/runtime/go-callers.c b/libgo/runtime/go-callers.c
index 590315376e3..b16ae0c4036 100644
--- a/libgo/runtime/go-callers.c
+++ b/libgo/runtime/go-callers.c
@@ -145,16 +145,17 @@ callback (void *data, uintptr_t pc, const char *filename, int lineno,
/* Syminfo callback. */
-static void
-syminfo_fnname_callback (void *data, uintptr_t pc __attribute__ ((unused)),
- const char *symname,
- uintptr_t address __attribute__ ((unused)),
- uintptr_t size __attribute__ ((unused)))
+void
+__go_syminfo_fnname_callback (void *data,
+ uintptr_t pc __attribute__ ((unused)),
+ const char *symname,
+ uintptr_t address __attribute__ ((unused)),
+ uintptr_t size __attribute__ ((unused)))
{
- Location* locptr = (Location*) data;
+ String* strptr = (String*) data;
if (symname != NULL)
- locptr->function = runtime_gostringnocopy ((const byte *) symname);
+ *strptr = runtime_gostringnocopy ((const byte *) symname);
}
/* Error callback. */
@@ -228,8 +229,8 @@ runtime_callers (int32 skip, Location *locbuf, int32 m, bool keep_thunks)
for (i = 0; i < data.index; ++i)
{
if (locbuf[i].function.len == 0 && locbuf[i].pc != 0)
- backtrace_syminfo (state, locbuf[i].pc, syminfo_fnname_callback,
- error_callback, &locbuf[i]);
+ backtrace_syminfo (state, locbuf[i].pc, __go_syminfo_fnname_callback,
+ error_callback, &locbuf[i].function);
}
return data.index;
diff --git a/libgo/runtime/runtime.h b/libgo/runtime/runtime.h
index 0fafe821441..0ffcf4bde9e 100644
--- a/libgo/runtime/runtime.h
+++ b/libgo/runtime/runtime.h
@@ -456,7 +456,8 @@ extern uintptr runtime_stacks_sys;
struct backtrace_state;
extern struct backtrace_state *__go_get_backtrace_state(void);
-extern _Bool __go_file_line(uintptr, int, String*, String*, intgo *);
+extern void __go_syminfo_fnname_callback(void*, uintptr_t, const char*,
+ uintptr_t, uintptr_t);
extern void runtime_main(void*)
__asm__(GOSYM_PREFIX "runtime.main");
diff --git a/libgo/testsuite/gotest b/libgo/testsuite/gotest
index f978042cccc..06848fdb1f0 100755
--- a/libgo/testsuite/gotest
+++ b/libgo/testsuite/gotest
@@ -314,7 +314,7 @@ x)
aix | android | darwin | dragonfly | freebsd | linux | nacl | netbsd | openbsd | plan9 | solaris | windows)
tag1=nonmatchingtag
;;
- 386 | amd64 | amd64p32 | arm | armbe | arm64 | arm64be | alpha | ia64 | m68k | ppc64 | ppc64le | mips | mipsle | mips64 | mips64le | mips64p32 | mips64p32le | ppc | s390 | s390x | sh | shbe | sparc | sparc64)
+ 386 | amd64 | amd64p32 | arm | armbe | arm64 | arm64be | alpha | ia64 | m68k | ppc64 | ppc64le | mips | mipsle | mips64 | mips64le | mips64p32 | mips64p32le | ppc | riscv64 | s390 | s390x | sh | shbe | sparc | sparc64)
tag1=nonmatchingtag
;;
esac
@@ -326,7 +326,7 @@ x)
aix | android | darwin | dragonfly | freebsd | linux | nacl | netbsd | openbsd | plan9 | solaris | windows)
tag2=nonmatchingtag
;;
- 386 | amd64 | amd64p32 | arm | armbe | arm64 | arm64be | alpha | ia64 | m68k | ppc64 | ppc64le | mips | mipsle | mips64 | mips64le | mips64p32 | mips64p32le | ppc | s390 | s390x | sh | shbe | sparc | sparc64)
+ 386 | amd64 | amd64p32 | arm | armbe | arm64 | arm64be | alpha | ia64 | m68k | ppc64 | ppc64le | mips | mipsle | mips64 | mips64le | mips64p32 | mips64p32le | ppc | riscv64 | s390 | s390x | sh | shbe | sparc | sparc64)
tag2=nonmatchingtag
;;
esac
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index a620923729b..ccc77006c5a 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -1,3 +1,20 @@
+2018-02-19 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
+
+ PR target/84148
+ * configure: Regenerate.
+
+2018-02-16 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/84418
+ * libgomp.fortran/pr84418-1.f90: New test.
+ * libgomp.fortran/pr84418-2.f90: New test.
+
+2018-02-14 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/84313
+ * testsuite/libgomp.fortran/threadprivate4.f90: Add
+ -std=f2003 -fall-intrinsics into dg-additional-options.
+
2018-02-08 Martin Jambor <mjambor@suse.cz>
* testsuite/libgomp.hsa.c/pr82416.c: Make the function with target
diff --git a/libgomp/configure b/libgomp/configure
index e7842b5519f..92b8142b0b1 100755
--- a/libgomp/configure
+++ b/libgomp/configure
@@ -15142,7 +15142,7 @@ fi
# Plugins for offload execution, configure.ac fragment. -*- mode: autoconf -*-
#
-# Copyright (C) 2014-2017 Free Software Foundation, Inc.
+# Copyright (C) 2014-2018 Free Software Foundation, Inc.
#
# Contributed by Mentor Embedded.
#
@@ -16633,18 +16633,28 @@ else
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
case "$host" in
i[34567]86-*-linux* | x86_64-*-linux*)
case "$enable_cet" in
default)
- # Check if assembler supports CET.
+ # Check if target supports multi-byte NOPs
+ # and if assembler supports CET insn.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
main ()
{
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
asm ("setssbsy");
+#endif
+
;
return 0;
}
@@ -16684,6 +16694,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
esac
if test x$enable_cet = xyes; then
CET_FLAGS="-fcf-protection -mcet"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
XCFLAGS="$XCFLAGS $CET_FLAGS"
diff --git a/libgomp/testsuite/libgomp.fortran/pr84418-1.f90 b/libgomp/testsuite/libgomp.fortran/pr84418-1.f90
new file mode 100644
index 00000000000..e56c022446c
--- /dev/null
+++ b/libgomp/testsuite/libgomp.fortran/pr84418-1.f90
@@ -0,0 +1,26 @@
+! PR fortran/84418
+! { dg-do run { target vect_simd_clones } }
+! { dg-options "-fno-inline" }
+! { dg-additional-options "-msse2" { target sse2_runtime } }
+! { dg-additional-options "-mavx" { target avx_runtime } }
+
+ real :: a(1024), b(1024), c(1024)
+ integer :: i
+ do i = 1, 1024
+ a(i) = 0.5 * i
+ b(i) = 1.5 * i
+ end do
+ !$omp simd
+ do i = 1, 1024
+ c(i) = foo (a(i), b(i))
+ end do
+ do i = 1, 1024
+ if (c(i).ne.(2 * i)) call abort
+ end do
+contains
+ real function foo (x, y)
+ real :: x, y
+ !$omp declare simd linear (ref (x, y))
+ foo = x + y
+ end function
+end
diff --git a/libgomp/testsuite/libgomp.fortran/pr84418-2.f90 b/libgomp/testsuite/libgomp.fortran/pr84418-2.f90
new file mode 100644
index 00000000000..a6657d18095
--- /dev/null
+++ b/libgomp/testsuite/libgomp.fortran/pr84418-2.f90
@@ -0,0 +1,35 @@
+! PR fortran/84418
+! { dg-do run { target vect_simd_clones } }
+! { dg-options "-fno-inline" }
+! { dg-additional-options "-msse2" { target sse2_runtime } }
+! { dg-additional-options "-mavx" { target avx_runtime } }
+
+ type p
+ integer :: i, j
+ end type
+ type(p) :: a(1024)
+ integer :: b(4,1024), c(1024)
+ integer :: i
+ do i = 1, 1024
+ a(i)%i = 2 * i
+ a(i)%j = 3 * i
+ b(1,i) = 4 * i
+ b(2,i) = 5 * i
+ b(3,i) = 6 * i
+ b(4,i) = 7 * i
+ end do
+ !$omp simd
+ do i = 1, 1024
+ c(i) = foo (a(i), b(:,i))
+ end do
+ do i = 1, 1024
+ if (c(i).ne.(6 * i)) call abort
+ end do
+contains
+ function foo (x, y)
+ type (p) :: x
+ integer :: y(4), foo
+ !$omp declare simd linear (ref (x, y))
+ foo = x%i + y(1)
+ end function
+end
diff --git a/libgomp/testsuite/libgomp.fortran/threadprivate4.f90 b/libgomp/testsuite/libgomp.fortran/threadprivate4.f90
index b5fb10bfee7..c86cac72305 100644
--- a/libgomp/testsuite/libgomp.fortran/threadprivate4.f90
+++ b/libgomp/testsuite/libgomp.fortran/threadprivate4.f90
@@ -1,4 +1,5 @@
! { dg-do run }
+! { dg-additional-options "-std=f2003 -fall-intrinsics" }
! { dg-require-effective-target tls_runtime }
module threadprivate4
diff --git a/libitm/ChangeLog b/libitm/ChangeLog
index f335144443a..c5ca3875fa5 100644
--- a/libitm/ChangeLog
+++ b/libitm/ChangeLog
@@ -1,3 +1,8 @@
+2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
+
+ PR target/84148
+ * configure: Regenerate.
+
2018-01-03 Jakub Jelinek <jakub@redhat.com>
Update copyright years.
diff --git a/libitm/configure b/libitm/configure
index d061c8c2659..a57805e20df 100644
--- a/libitm/configure
+++ b/libitm/configure
@@ -17603,18 +17603,28 @@ else
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
case "$host" in
i[34567]86-*-linux* | x86_64-*-linux*)
case "$enable_cet" in
default)
- # Check if assembler supports CET.
+ # Check if target supports multi-byte NOPs
+ # and if assembler supports CET insn.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
main ()
{
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
asm ("setssbsy");
+#endif
+
;
return 0;
}
@@ -17654,6 +17664,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
esac
if test x$enable_cet = xyes; then
CET_FLAGS="-fcf-protection -mcet"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
XCFLAGS="$XCFLAGS $CET_FLAGS"
diff --git a/libmpx/ChangeLog b/libmpx/ChangeLog
index 9ae654270b7..f8cc639fd0d 100644
--- a/libmpx/ChangeLog
+++ b/libmpx/ChangeLog
@@ -1,4 +1,9 @@
- 2017-11-17 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
+2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
+
+ PR target/84148
+ * configure: Regenerate.
+
+2017-11-17 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
* Makefile.in: Regenerate.
* acinclude.m4: Add enable.m4 and cet.m4.
diff --git a/libmpx/configure b/libmpx/configure
index 7bc68b81e4f..dfa4419b840 100644
--- a/libmpx/configure
+++ b/libmpx/configure
@@ -11598,18 +11598,28 @@ else
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
case "$host" in
i[34567]86-*-linux* | x86_64-*-linux*)
case "$enable_cet" in
default)
- # Check if assembler supports CET.
+ # Check if target supports multi-byte NOPs
+ # and if assembler supports CET insn.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
main ()
{
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
asm ("setssbsy");
+#endif
+
;
return 0;
}
@@ -11649,6 +11659,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
esac
if test x$enable_cet = xyes; then
CET_FLAGS="-fcf-protection -mcet"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
XCFLAGS="$XCFLAGS $CET_FLAGS"
diff --git a/libobjc/ChangeLog b/libobjc/ChangeLog
index 50d07690e71..b5422e3845f 100644
--- a/libobjc/ChangeLog
+++ b/libobjc/ChangeLog
@@ -1,3 +1,8 @@
+2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
+
+ PR target/84148
+ * configure: Regenerate.
+
2018-01-03 Jakub Jelinek <jakub@redhat.com>
Update copyright years.
diff --git a/libobjc/configure b/libobjc/configure
index 3a2b2e36634..ce52fab100c 100755
--- a/libobjc/configure
+++ b/libobjc/configure
@@ -3369,18 +3369,28 @@ else
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
case "$host" in
i[34567]86-*-linux* | x86_64-*-linux*)
case "$enable_cet" in
default)
- # Check if assembler supports CET.
+ # Check if target supports multi-byte NOPs
+ # and if assembler supports CET insn.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
main ()
{
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
asm ("setssbsy");
+#endif
+
;
return 0;
}
@@ -3420,6 +3430,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
esac
if test x$enable_cet = xyes; then
CET_FLAGS="-fcf-protection -mcet"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
XCFLAGS="$XCFLAGS $CET_FLAGS"
@@ -10668,7 +10683,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 10671 "configure"
+#line 10686 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -10774,7 +10789,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 10777 "configure"
+#line 10792 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
diff --git a/libquadmath/ChangeLog b/libquadmath/ChangeLog
index a55492321ab..33ca15f0555 100644
--- a/libquadmath/ChangeLog
+++ b/libquadmath/ChangeLog
@@ -1,3 +1,8 @@
+2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
+
+ PR target/84148
+ * configure: Regenerate.
+
2018-01-03 Jakub Jelinek <jakub@redhat.com>
* libquadmath.texi: Bump @copying's copyright year.
diff --git a/libquadmath/configure b/libquadmath/configure
index b32dcbc8e03..2a694799596 100755
--- a/libquadmath/configure
+++ b/libquadmath/configure
@@ -12837,18 +12837,28 @@ else
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
case "$host" in
i[34567]86-*-linux* | x86_64-*-linux*)
case "$enable_cet" in
default)
- # Check if assembler supports CET.
+ # Check if target supports multi-byte NOPs
+ # and if assembler supports CET insn.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
main ()
{
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
asm ("setssbsy");
+#endif
+
;
return 0;
}
@@ -12888,6 +12898,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
esac
if test x$enable_cet = xyes; then
CET_FLAGS="-fcf-protection -mcet"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
XCFLAGS="$XCFLAGS $CET_FLAGS"
diff --git a/libsanitizer/ChangeLog b/libsanitizer/ChangeLog
index ebb8866bc13..b6250839281 100644
--- a/libsanitizer/ChangeLog
+++ b/libsanitizer/ChangeLog
@@ -1,3 +1,8 @@
+2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
+
+ PR target/84148
+ * configure: Regenerate.
+
2018-02-05 Martin Liska <mliska@suse.cz>
* asan/asan_flags.inc: Cherry-pick upstream r323995.
diff --git a/libsanitizer/configure b/libsanitizer/configure
index a0104d8c2ab..3b61a1f7537 100755
--- a/libsanitizer/configure
+++ b/libsanitizer/configure
@@ -16539,18 +16539,28 @@ else
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
case "$host" in
i[34567]86-*-linux* | x86_64-*-linux*)
case "$enable_cet" in
default)
- # Check if assembler supports CET.
+ # Check if target supports multi-byte NOPs
+ # and if assembler supports CET insn.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
main ()
{
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
asm ("setssbsy");
+#endif
+
;
return 0;
}
@@ -16590,6 +16600,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
esac
if test x$enable_cet = xyes; then
CET_FLAGS="-fcf-protection -mcet"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
EXTRA_CFLAGS="$EXTRA_CFLAGS $CET_FLAGS"
diff --git a/libssp/ChangeLog b/libssp/ChangeLog
index 66254feafd9..b5e81131f25 100644
--- a/libssp/ChangeLog
+++ b/libssp/ChangeLog
@@ -1,3 +1,8 @@
+2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
+
+ PR target/84148
+ * configure: Regenerate.
+
2018-01-03 Jakub Jelinek <jakub@redhat.com>
Update copyright years.
diff --git a/libssp/configure b/libssp/configure
index a96b39197ff..df7bff70ba1 100755
--- a/libssp/configure
+++ b/libssp/configure
@@ -4095,18 +4095,28 @@ else
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
case "$host" in
i[34567]86-*-linux* | x86_64-*-linux*)
case "$enable_cet" in
default)
- # Check if assembler supports CET.
+ # Check if target supports multi-byte NOPs
+ # and if assembler supports CET insn.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
main ()
{
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
asm ("setssbsy");
+#endif
+
;
return 0;
}
@@ -4146,6 +4156,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
esac
if test x$enable_cet = xyes; then
CET_FLAGS="-fcf-protection -mcet"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
XCFLAGS="$XCFLAGS $CET_FLAGS"
@@ -10745,7 +10760,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 10748 "configure"
+#line 10763 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -10851,7 +10866,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 10854 "configure"
+#line 10869 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 98b4295d87d..a0bee0e048a 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,22 @@
+2018-02-20 François Dumont <fdumont@gcc.gnu.org>
+
+ * include/ext/aligned_buffer.h [_GLIBCXX_INLINE_VERSION]
+ (template<> __aligned_buffer): Define as __aligned_membuf alias.
+
+2018-02-19 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
+
+ PR target/84148
+ * configure: Regenerate.
+
+2018-02-15 Jonathan Wakely <jwakely@redhat.com>
+
+ PR libstdc++/81797
+ * configure.ac (INCLUDE_DIR_NOTPARALLEL): Define.
+ * configure: Regenerate.
+ * include/Makefile.am (INCLUDE_DIR_NOTPARALLEL): Add .NOTPARALLEL when
+ defined.
+ * include/Makefile.in: Regenerate.
+
2018-01-29 Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/83833
diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure
index 69845f486f0..54dd7cef4e1 100755
--- a/libstdc++-v3/configure
+++ b/libstdc++-v3/configure
@@ -621,6 +621,8 @@ CPU_DEFINES_SRCDIR
ATOMIC_FLAGS
ATOMIC_WORD_SRCDIR
ATOMICITY_SRCDIR
+INCLUDE_DIR_NOTPARALLEL_FALSE
+INCLUDE_DIR_NOTPARALLEL_TRUE
BUILD_PDF_FALSE
BUILD_PDF_TRUE
PDFLATEX
@@ -11605,7 +11607,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 11608 "configure"
+#line 11610 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -11711,7 +11713,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 11714 "configure"
+#line 11716 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -15397,7 +15399,7 @@ $as_echo "$glibcxx_cv_atomic_long_long" >&6; }
# Fake what AC_TRY_COMPILE does.
cat > conftest.$ac_ext << EOF
-#line 15400 "configure"
+#line 15402 "configure"
int main()
{
typedef bool atomic_type;
@@ -15432,7 +15434,7 @@ $as_echo "$glibcxx_cv_atomic_bool" >&6; }
rm -f conftest*
cat > conftest.$ac_ext << EOF
-#line 15435 "configure"
+#line 15437 "configure"
int main()
{
typedef short atomic_type;
@@ -15467,7 +15469,7 @@ $as_echo "$glibcxx_cv_atomic_short" >&6; }
rm -f conftest*
cat > conftest.$ac_ext << EOF
-#line 15470 "configure"
+#line 15472 "configure"
int main()
{
// NB: _Atomic_word not necessarily int.
@@ -15503,7 +15505,7 @@ $as_echo "$glibcxx_cv_atomic_int" >&6; }
rm -f conftest*
cat > conftest.$ac_ext << EOF
-#line 15506 "configure"
+#line 15508 "configure"
int main()
{
typedef long long atomic_type;
@@ -15584,7 +15586,7 @@ $as_echo "$as_me: WARNING: Performance of certain classes will degrade as a resu
# unnecessary for this test.
cat > conftest.$ac_ext << EOF
-#line 15587 "configure"
+#line 15589 "configure"
int main()
{
_Decimal32 d1;
@@ -15626,7 +15628,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
# unnecessary for this test.
cat > conftest.$ac_ext << EOF
-#line 15629 "configure"
+#line 15631 "configure"
template<typename T1, typename T2>
struct same
{ typedef T2 type; };
@@ -15660,7 +15662,7 @@ $as_echo "$enable_int128" >&6; }
rm -f conftest*
cat > conftest.$ac_ext << EOF
-#line 15663 "configure"
+#line 15665 "configure"
template<typename T1, typename T2>
struct same
{ typedef T2 type; };
@@ -81079,6 +81081,18 @@ else
fi
+case "$build" in
+ *-*-darwin* ) glibcxx_include_dir_notparallel=yes ;;
+ * ) glibcxx_include_dir_notparallel=no ;;
+esac
+ if test $glibcxx_include_dir_notparallel = "yes"; then
+ INCLUDE_DIR_NOTPARALLEL_TRUE=
+ INCLUDE_DIR_NOTPARALLEL_FALSE='#'
+else
+ INCLUDE_DIR_NOTPARALLEL_TRUE='#'
+ INCLUDE_DIR_NOTPARALLEL_FALSE=
+fi
+
# Propagate the target-specific source directories through the build chain.
ATOMICITY_SRCDIR=config/${atomicity_dir}
@@ -81115,18 +81129,28 @@ else
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
case "$host" in
i[34567]86-*-linux* | x86_64-*-linux*)
case "$enable_cet" in
default)
- # Check if assembler supports CET.
+ # Check if target supports multi-byte NOPs
+ # and if assembler supports CET insn.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
main ()
{
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
asm ("setssbsy");
+#endif
+
;
return 0;
}
@@ -81166,6 +81190,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
esac
if test x$enable_cet = xyes; then
CET_FLAGS="-fcf-protection -mcet"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
EXTRA_CXX_FLAGS="$EXTRA_CXX_FLAGS $CET_FLAGS"
@@ -81845,6 +81874,10 @@ if test -z "${BUILD_PDF_TRUE}" && test -z "${BUILD_PDF_FALSE}"; then
as_fn_error "conditional \"BUILD_PDF\" was never defined.
Usually this means the macro was only invoked conditionally." "$LINENO" 5
fi
+if test -z "${INCLUDE_DIR_NOTPARALLEL_TRUE}" && test -z "${INCLUDE_DIR_NOTPARALLEL_FALSE}"; then
+ as_fn_error "conditional \"INCLUDE_DIR_NOTPARALLEL\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
: ${CONFIG_STATUS=./config.status}
ac_write_fail=0
diff --git a/libstdc++-v3/configure.ac b/libstdc++-v3/configure.ac
index e110f579917..0ef96270c9c 100644
--- a/libstdc++-v3/configure.ac
+++ b/libstdc++-v3/configure.ac
@@ -473,6 +473,12 @@ AM_CONDITIONAL(BUILD_PDF,
test $ac_cv_prog_DBLATEX = "yes" &&
test $ac_cv_prog_PDFLATEX = "yes")
+case "$build" in
+ *-*-darwin* ) glibcxx_include_dir_notparallel=yes ;;
+ * ) glibcxx_include_dir_notparallel=no ;;
+esac
+AM_CONDITIONAL(INCLUDE_DIR_NOTPARALLEL,
+ test $glibcxx_include_dir_notparallel = "yes")
# Propagate the target-specific source directories through the build chain.
ATOMICITY_SRCDIR=config/${atomicity_dir}
diff --git a/libstdc++-v3/include/Makefile.am b/libstdc++-v3/include/Makefile.am
index 7cf0ef93eb4..70a662fa2f9 100644
--- a/libstdc++-v3/include/Makefile.am
+++ b/libstdc++-v3/include/Makefile.am
@@ -1479,3 +1479,8 @@ $(decimal_headers): ; @:
$(ext_headers): ; @:
$(experimental_headers): ; @:
$(experimental_bits_headers): ; @:
+
+if INCLUDE_DIR_NOTPARALLEL
+# See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81797
+.NOTPARALLEL:
+endif
diff --git a/libstdc++-v3/include/Makefile.in b/libstdc++-v3/include/Makefile.in
index 068ffd018f1..790887a259c 100644
--- a/libstdc++-v3/include/Makefile.in
+++ b/libstdc++-v3/include/Makefile.in
@@ -1903,6 +1903,9 @@ $(ext_headers): ; @:
$(experimental_headers): ; @:
$(experimental_bits_headers): ; @:
+# See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81797
+@INCLUDE_DIR_NOTPARALLEL_TRUE@.NOTPARALLEL:
+
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/libstdc++-v3/include/ext/aligned_buffer.h b/libstdc++-v3/include/ext/aligned_buffer.h
index 94a2ff0e67a..81fb797723c 100644
--- a/libstdc++-v3/include/ext/aligned_buffer.h
+++ b/libstdc++-v3/include/ext/aligned_buffer.h
@@ -75,6 +75,10 @@ namespace __gnu_cxx
{ return static_cast<const _Tp*>(_M_addr()); }
};
+#if _GLIBCXX_INLINE_VERSION
+ template<typename _Tp>
+ using __aligned_buffer = __aligned_membuf<_Tp>;
+#else
// Similar to __aligned_membuf but aligned for complete objects, not members.
// This type is used in <forward_list>, <future>, <bits/shared_ptr_base.h>
// and <bits/hashtable_policy.h>, but ideally they would use __aligned_membuf
@@ -113,6 +117,7 @@ namespace __gnu_cxx
_M_ptr() const noexcept
{ return static_cast<const _Tp*>(_M_addr()); }
};
+#endif
} // namespace
diff --git a/libvtv/ChangeLog b/libvtv/ChangeLog
index 3425da29a11..82b52bc4845 100644
--- a/libvtv/ChangeLog
+++ b/libvtv/ChangeLog
@@ -1,3 +1,8 @@
+2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
+
+ PR target/84148
+ * configure: Regenerate.
+
2018-01-03 Jakub Jelinek <jakub@redhat.com>
Update copyright years.
diff --git a/libvtv/configure b/libvtv/configure
index aa8a30133ad..1cd1f70cd76 100755
--- a/libvtv/configure
+++ b/libvtv/configure
@@ -15473,18 +15473,28 @@ else
fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
case "$host" in
i[34567]86-*-linux* | x86_64-*-linux*)
case "$enable_cet" in
default)
- # Check if assembler supports CET.
+ # Check if target supports multi-byte NOPs
+ # and if assembler supports CET insn.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
main ()
{
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
asm ("setssbsy");
+#endif
+
;
return 0;
}
@@ -15524,6 +15534,11 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
esac
if test x$enable_cet = xyes; then
CET_FLAGS="-fcf-protection -mcet"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
fi
XCFLAGS="$XCFLAGS $CET_FLAGS"