# Copyright (C) 1988, 90-96, 1997 Free Software Foundation, Inc. # This program 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 2 of the License, or # (at your option) any later version. # # This program 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 this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. # Please email any bugs, comments, and/or additions to this file to: # bug-gcc@prep.ai.mit.edu # This file was written by Rob Savoye. (rob@cygnus.com) # # These tests come from Torbjorn Granlund (tege@cygnus.com) # C torture test suite. # if $tracelevel then { strace $tracelevel } # load support procs load_lib c-torture.exp load_lib gcc-dg.exp ################## ADD NEXT CASE HERE (NOT AT THE END) ################## # 981006-1 # For MIPS at least, pic is needed to trigger the problem. dg-init if { [istarget rs6000-*-aix*] || [istarget powerpc*-*-aix*] || [istarget arm*-*-*] } { set extra_flags "" } else { set extra_flags "-fpic" } dg-runtest $srcdir/$subdir/981006-1.c "-Wuninitialized -O2 $extra_flags" "" dg-finish # 921210-1 set lines [gcc_target_compile $srcdir/$subdir/921210-1.c "" preprocess ""] set lines [prune [split [prune_warnings [prune_gcc_output $lines]] "\n"] ""] set line [lindex $lines [expr [llength $lines]-1]] regsub -all " " $line "" clean if [expr [string compare $clean "(a->f+1)+1"]==0] then { pass "921210-1.c" } else { fail "921210-1.c" } # 920521-1 c-torture 920521-1.c "-S" # 920520-1 c-torture 920520-1.c "-S" # 920717-1 if [isnative] then { set lines [gcc_target_compile "$srcdir/$subdir/920717-x.c" "920717-x.o" object {additional_flags="-w"}] if ![string match "" $lines] then { fail "920717-x.c" } else { # This is a completely bogus test. Sorry. catch exec "rm -f 920717-y.o" send_log "cc -c $srcdir/$subdir/920717-y.c 2>/dev/null >/dev/null\n" catch exec "cc -c $srcdir/$subdir/920717-y.c 2>/dev/null >/dev/null" if ![file exists "920717-y.o"] then { send_log "c89 -c $srcdir/$subdir/920717-y.c 2>/dev/null >/dev/null\n" catch exec "c89 -c $srcdir/$subdir/920717-y.c 2>/dev/null >/dev/null" } if [file exists "920717-y.o"] then { set lines [gcc_target_compile "920717-y.o x.o" "x" executable ""] if [string match "" $lines] then { pass "920717-1.c" } else { fail "920717-1.c" } } } } # 920730-1 if [isnative] then { c-torture "920730-1.c" c-torture "920730-1.c" "-traditional" } # 920413-1 c-torture 920413-1.c "-Wtraditional" # 930510-1 dg-init dg-runtest $srcdir/$subdir/930510-1.c "" "" dg-finish # 951130-1 c-torture 951130-1.c "-Werror" # 960224-1 c-torture 960224-1.c "-E -ansi -pedantic-errors" # 960224-2 #c-torture 960224-2.c "-E -ansi -pedantic-errors" c-torture-execute $srcdir/$subdir/eeprof-1.c "-finstrument-functions"