brintos

brintos / llvm-project-archived public Read only

0
0
Text · 7.2 KiB · c985428 Raw
260 lines · plain
1! XFAIL: *2! Test that Clang can forward all of the flags which are documented as3! being supported by gfortran to GCC when falling back to GCC for4! a fortran input file.5!6! RUN: %clang --target=i386-linux -### %s 2>&1 \7! RUN:     -Aquestion=answer \8! RUN:     -A-question=answer \9! RUN:     -C \10! RUN:     -CC \11! RUN:     -Dmacro \12! RUN:     -Dmacro=value \13! RUN:     -H \14! RUN:     -Isome/directory \15! RUN:     -Jsome/other/directory \16! RUN:     -P \17! RUN:     -Umacro \18! RUN:     -Waliasing \19! RUN:     -Walign-commons \20! RUN:     -Wall \21! RUN:     -Wampersand \22! RUN:     -Warray-bounds \23! RUN:     -Wc-binding-type \24! RUN:     -Wcharacter-truncation \25! RUN:     -Wconversion \26! RUN:     -Wfunction-elimination \27! RUN:     -Wimplicit-interface \28! RUN:     -Wimplicit-procedure \29! RUN:     -Wintrinsic-shadow \30! RUN:     -Wintrinsics-std \31! RUN:     -Wline-truncation \32! RUN:     -Wreal-q-constant \33! RUN:     -Wrealloc-lhs \34! RUN:     -Wsurprising \35! RUN:     -Wtabs \36! RUN:     -Wtarget-lifetime \37! RUN:     -Wunderflow \38! RUN:     -Wunused-parameter \39! RUN:     -cpp \40! RUN:     -dD \41! RUN:     -dI \42! RUN:     -dM \43! RUN:     -dN \44! RUN:     -dU \45! RUN:     -faggressive-function-elimination \46! RUN:     -falign-commons \47! RUN:     -fall-intrinsics \48! RUN:     -fautomatic \49! RUN:     -fbackslash \50! RUN:     -fbacktrace \51! RUN:     -fblas-matmul-limit=42 \52! RUN:     -fbounds-check \53! RUN:     -fcheck-array-temporaries \54! RUN:     -fcheck=all \55! RUN:     -fcoarray=none \56! RUN:     -fconvert=foobar \57! RUN:     -fcray-pointer \58! RUN:     -fd-lines-as-code \59! RUN:     -fd-lines-as-comments \60! RUN:     -fdefault-double-8 \61! RUN:     -fdefault-integer-8 \62! RUN:     -fdefault-real-8 \63! RUN:     -fdollar-ok \64! RUN:     -fdump-fortran-optimized \65! RUN:     -fdump-fortran-original \66! RUN:     -fdump-parse-tree \67! RUN:     -fexternal-blas \68! RUN:     -ff2c \69! RUN:     -ffixed-form \70! RUN:     -ffixed-line-length-42 \71! RUN:     -ffpe-trap=list \72! RUN:     -ffree-form \73! RUN:     -ffree-line-length-42 \74! RUN:     -ffrontend-optimize \75! RUN:     -fimplicit-none \76! RUN:     -finit-character=n \77! RUN:     -finit-integer=n \78! RUN:     -finit-local-zero \79! RUN:     -finit-logical=false \80! RUN:     -finit-real=zero \81! RUN:     -finteger-4-integer-8 \82! RUN:     -fintrinsic-modules-path \83! RUN:     -fmax-array-constructor=42 \84! RUN:     -fmax-errors=42 \85! RUN:     -fmax-identifier-length \86! RUN:     -fmax-stack-var-size=42 \87! RUN:     -fmax-subrecord-length=42 \88! RUN:     -fmodule-private \89! RUN:     -fopenmp \90! RUN:     -fpack-derived \91! RUN:     -fprotect-parens \92! RUN:     -frange-check \93! RUN:     -freal-4-real-10 \94! RUN:     -freal-4-real-16 \95! RUN:     -freal-4-real-8 \96! RUN:     -freal-8-real-10 \97! RUN:     -freal-8-real-16 \98! RUN:     -freal-8-real-4 \99! RUN:     -frealloc-lhs \100! RUN:     -frecord-marker=42 \101! RUN:     -frecursive \102! RUN:     -frepack-arrays \103! RUN:     -fsecond-underscore \104! RUN:     -fshort-enums \105! RUN:     -fsign-zero \106! RUN:     -fstack-arrays \107! RUN:     -fsyntax-only \108! RUN:     -funderscoring \109! RUN:     -fwhole-file \110! RUN:     -imultilib \111! RUN:     -iprefix \112! RUN:     -iquote \113! RUN:     -isysroot \114! RUN:     -isystem \115! RUN:     -nocpp \116! RUN:     -nostdinc \117! RUN:     -pedantic \118! RUN:     -pedantic-errors \119! RUN:     -static-libgfortran \120! RUN:     -std=f90 \121! RUN:     -undef \122! RUN:   | FileCheck %s123!124! FIXME: Several of these shouldn't necessarily be rendered separately125! when passing to GCC... Hopefully their driver handles this.126!127! CHECK: "-Aquestion=answer"128! CHECK: "-A-question=answer"129! CHECK: "-C"130! CHECK: "-CC"131! CHECK: "-D" "macro"132! CHECK: "-D" "macro=value"133! CHECK: "-H"134! CHECK: "-I" "some/directory"135! CHECK: "-Jsome/other/directory"136! CHECK: "-P"137! CHECK: "-U" "macro"138! CHECK: "-Waliasing"139! CHECK: "-Walign-commons"140! CHECK: "-Wall"141! CHECK: "-Wampersand"142! CHECK: "-Warray-bounds"143! CHECK: "-Wc-binding-type"144! CHECK: "-Wcharacter-truncation"145! CHECK: "-Wconversion"146! CHECK: "-Wfunction-elimination"147! CHECK: "-Wimplicit-interface"148! CHECK: "-Wimplicit-procedure"149! CHECK: "-Wintrinsic-shadow"150! CHECK: "-Wintrinsics-std"151! CHECK: "-Wline-truncation"152! CHECK: "-Wreal-q-constant"153! CHECK: "-Wrealloc-lhs"154! CHECK: "-Wsurprising"155! CHECK: "-Wtabs"156! CHECK: "-Wtarget-lifetime"157! CHECK: "-Wunderflow"158! CHECK: "-Wunused-parameter"159! CHECK: "-cpp"160! CHECK: "-dD"161! CHECK: "-dI"162! CHECK: "-dM"163! CHECK: "-dN"164! CHECK: "-dU"165! CHECK: "-faggressive-function-elimination"166! CHECK: "-falign-commons"167! CHECK: "-fall-intrinsics"168! CHECK: "-fautomatic"169! CHECK: "-fbackslash"170! CHECK: "-fbacktrace"171! CHECK: "-fblas-matmul-limit=42"172! CHECK: "-fbounds-check"173! CHECK: "-fcheck-array-temporaries"174! CHECK: "-fcheck=all"175! CHECK: "-fcoarray=none"176! CHECK: "-fconvert=foobar"177! CHECK: "-fcray-pointer"178! CHECK: "-fd-lines-as-code"179! CHECK: "-fd-lines-as-comments"180! CHECK: "-fdefault-double-8"181! CHECK: "-fdefault-integer-8"182! CHECK: "-fdefault-real-8"183! CHECK: "-fdollar-ok"184! CHECK: "-fdump-fortran-optimized"185! CHECK: "-fdump-fortran-original"186! CHECK: "-fdump-parse-tree"187! CHECK: "-fexternal-blas"188! CHECK: "-ff2c"189! CHECK: "-ffixed-form"190! CHECK: "-ffixed-line-length-42"191! CHECK: "-ffpe-trap=list"192! CHECK: "-ffree-form"193! CHECK: "-ffree-line-length-42"194! CHECK: "-ffrontend-optimize"195! CHECK: "-fimplicit-none"196! CHECK: "-finit-character=n"197! CHECK: "-finit-integer=n"198! CHECK: "-finit-local-zero"199! CHECK: "-finit-logical=false"200! CHECK: "-finit-real=zero"201! CHECK: "-finteger-4-integer-8"202! CHECK: "-fintrinsic-modules-path"203! CHECK: "-fmax-array-constructor=42"204! CHECK: "-fmax-errors=42"205! CHECK: "-fmax-identifier-length"206! CHECK: "-fmax-stack-var-size=42"207! CHECK: "-fmax-subrecord-length=42"208! CHECK: "-fmodule-private"209! CHECK: "-fopenmp"210! CHECK: "-fpack-derived"211! CHECK: "-fprotect-parens"212! CHECK: "-frange-check"213! CHECK: "-freal-4-real-10"214! CHECK: "-freal-4-real-16"215! CHECK: "-freal-4-real-8"216! CHECK: "-freal-8-real-10"217! CHECK: "-freal-8-real-16"218! CHECK: "-freal-8-real-4"219! CHECK: "-frealloc-lhs"220! CHECK: "-frecord-marker=42"221! CHECK: "-frecursive"222! CHECK: "-frepack-arrays"223! CHECK: "-fsecond-underscore"224! CHECK: "-fshort-enums"225! CHECK: "-fsign-zero"226! CHECK: "-fstack-arrays"227! CHECK: "-funderscoring"228! CHECK: "-fwhole-file"229! CHECK: "-imultilib"230! CHECK: "-iprefix"231! CHECK: "-iquote"232! CHECK: "-isysroot"233! CHECK: "-isystem"234! CHECK: "-nocpp"235! CHECK: "-nostdinc"236! CHECK: "-pedantic"237! CHECK: "-pedantic-errors"238! CHECK: "-static-libgfortran"239! CHECK: "-std=f90"240! CHECK: "-undef"241!242! Clang understands this one and orders it weirdly.243! CHECK: "-fsyntax-only"244!245! PR22234: Ensure that -fsyntax-only doesn't complain about output types and246!          passes along correctly.247! RUN: %clang --target=i386-linux -fsyntax-only -### %s 2>&1 | \248! grep for error message and command-line249! RUN: grep -e error: -e -fsyntax-only | FileCheck %s --check-prefix=CHECK-PR22234250!251! CHECK-PR22234-NOT: clang: error: invalid output type252! CHECK-PR22234: "-fsyntax-only"253!254! Regression test for the bug introduced with PR22234 fix.255! Make sure -fsyntax-only is not passed to gfortran during normal compilation.256!257! RUN: %clang --target=i386-linux -### %s 2>&1 \258! RUN: | FileCheck %s --check-prefix=CHECK-PR22234-R259! CHECK-PR22234-R-NOT: "-fsyntax-only"260