* pr-5016.ch, pr-5016.exp, Makefile.in: New testcase.
* Makefile.in (.exe.check): New rule, to run just one test.
This commit is contained in:
parent
b19d7c45d7
commit
16654bbe99
4 changed files with 95 additions and 2 deletions
|
@ -31,6 +31,8 @@ configure.in
|
|||
pr-4975.ch
|
||||
pr-4975-grt.ch
|
||||
pr-4975.exp
|
||||
pr-5016.ch
|
||||
pr-5016.exp
|
||||
pr-5020.ch
|
||||
pr-5020.exp
|
||||
pr-5022.ch
|
||||
|
|
|
@ -103,7 +103,7 @@ GDBFLAGS = -nx
|
|||
#### host, target, and site specific Makefile frags come in here.
|
||||
|
||||
EXECUTABLES = chillvars.exe result.exe \
|
||||
pr-4975.exe pr-5020.exe pr-5022.exe
|
||||
pr-4975.exe pr-5016.exe pr-5020.exe pr-5022.exe
|
||||
|
||||
# To force pr-4975-grt to be compiled before pr-4975, so the
|
||||
# latter can use the former's grant file.
|
||||
|
@ -111,7 +111,7 @@ pr-4975.o: pr-4975-grt.o
|
|||
|
||||
all: $(EXECUTABLES)
|
||||
|
||||
.SUFFIXES: .ch .exe
|
||||
.SUFFIXES: .ch .exe .check
|
||||
|
||||
.o.exe:
|
||||
$(CHILL_FOR_TARGET) $(CHILLFLAGS) $(LDFLAGS) -o $*.exe $*.o $(CHILL_LIB) $(LIBS)
|
||||
|
@ -119,6 +119,14 @@ all: $(EXECUTABLES)
|
|||
.ch.o:
|
||||
$(CHILL_FOR_TARGET) $(CHILLFLAGS) -fspecial_UC -c $<
|
||||
|
||||
# Do 'make chillvars.check' to run just the chillvars.{ch,exp} test.
|
||||
|
||||
.exe.check:
|
||||
rootme=`pwd`/; export rootme; \
|
||||
cd .. ; \
|
||||
$(MAKE) just-check RUNTESTFLAGS="${RUNTESTFLAGS} $*.exp" \
|
||||
GDB=${GDB} EXPECT=${EXPECT}
|
||||
|
||||
.NOEXPORT:
|
||||
INFODIRS=doc
|
||||
info:
|
||||
|
|
24
gdb/testsuite/gdb.chill/pr-5016.ch
Normal file
24
gdb/testsuite/gdb.chill/pr-5016.ch
Normal file
|
@ -0,0 +1,24 @@
|
|||
vector: MODULE
|
||||
|
||||
SYNMODE m_index = RANGE(1:10);
|
||||
NEWMODE vector = ARRAY (m_index) INT;
|
||||
|
||||
DCL a, b, c vector;
|
||||
|
||||
dump: PROC( a vector LOC, c CHAR );
|
||||
DCL i m_index;
|
||||
DO FOR i IN m_index;
|
||||
WRITETEXT( STDOUT, "%C(%C)=%C ", c, i, a(i) );
|
||||
OD;
|
||||
WRITETEXT( STDOUT, "%/" );
|
||||
END dump;
|
||||
|
||||
a := vector [ 1, -1, 2, -2, 3, -3, 4, -4, 5, -5 ];
|
||||
b := a;
|
||||
b(4) := 4;
|
||||
b(7) := 7;
|
||||
c := vector [(*): 0];
|
||||
|
||||
dump(a,'a');
|
||||
|
||||
END vector;
|
59
gdb/testsuite/gdb.chill/pr-5016.exp
Normal file
59
gdb/testsuite/gdb.chill/pr-5016.exp
Normal file
|
@ -0,0 +1,59 @@
|
|||
# Copyright (C) 1992 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-gdb@prep.ai.mit.edu
|
||||
|
||||
# This file was written by Per Bothner. (bothner@cygnus.com)
|
||||
|
||||
if $tracelevel then {
|
||||
strace $tracelevel
|
||||
}
|
||||
|
||||
proc do_tests {} {
|
||||
global prms_id bug_id subdir objdir srcdir binfile prompt
|
||||
|
||||
set prms_id 0
|
||||
set bug_id 0
|
||||
|
||||
# Start with a fresh gdb.
|
||||
|
||||
gdb_exit
|
||||
gdb_start
|
||||
gdb_reinitialize_dir $srcdir/$subdir
|
||||
gdb_load $objdir/$subdir/$binfile
|
||||
|
||||
send "set language chill\n" ; expect -re "$prompt $"
|
||||
|
||||
runto dump
|
||||
gdb_test "whatis i" "type = m_index" "whatis int-range"
|
||||
gdb_test_exact "ptype m_index" "type = RANGE (1:10)" "ptype m_index"
|
||||
gdb_test_exact "whatis a" "type = /*LOC*/ vector"
|
||||
gdb_test_exact "ptype a" "type = /*LOC*/ ARRAY (1:10) INT"
|
||||
}
|
||||
|
||||
# Check to see if we have an executable to test. If not, then either we
|
||||
# haven't tried to compile one, or the compilation failed for some reason.
|
||||
# In either case, just notify the user and skip the tests in this file.
|
||||
|
||||
set binfile "pr-5016.exe"
|
||||
set srcfile $binfile.ch
|
||||
|
||||
if ![file exists $objdir/$subdir/$binfile] then {
|
||||
warning "$binfile does not exist; tests suppressed."
|
||||
} else {
|
||||
do_tests
|
||||
}
|
Loading…
Add table
Reference in a new issue