! Test the default setting. Emit warnings only. ! RUN: %flang -c %s 2>&1 | FileCheck %s -check-prefix=DEFAULT ! Test that the warnings are not generated with `-w` option. ! RUN: %flang -c -w %s 2>&1 | FileCheck --allow-empty %s -check-prefix=WARNING ! Test that the warnings are not generated with `--no-warnings` option. ! RUN: %flang -c --no-warnings %s 2>&1 | FileCheck --allow-empty %s -check-prefix=WARNING ! Test that warnings are portability messages are generated. ! RUN: %flang -c -pedantic %s 2>&1 | FileCheck %s -check-prefixes=DEFAULT,PORTABILITY ! Test that warnings and portability messages are not generated. ! TODO: Support the last flag wins behaviour. ! RUN: %flang -c -pedantic -w %s 2>&1 | FileCheck --allow-empty %s -check-prefixes=WARNING,PORTABILITY-WARNING ! RUN: %flang -c -w -pedantic %s 2>&1 | FileCheck --allow-empty %s -check-prefixes=WARNING,PORTABILITY-WARNING ! DEFAULT: warning: Label '40' is in a construct that should not be used as a branch target here ! DEFAULT: warning: Label '50' is in a construct that should not be used as a branch target here ! WARNING-NOT: warning ! PORTABILITY: portability: Statement function 'sf1' should not contain an array constructor ! PORTABILITY-WARNING-NOT: portability subroutine sub01(n) integer n GOTO (40,50,60) n if (n .eq. 1) then 40 print *, "xyz" 50 end if 60 continue end subroutine sub01 subroutine sub02 sf1(n) = sum([(j,j=1,n)]) end subroutine sub02