* pr-6632.ch, pr-6632-grt.ch, pr-6632.exp, Makefile.in: New test case.

This commit is contained in:
Per Bothner 1995-03-29 01:15:04 +00:00
parent e55a579687
commit 09dde10060
6 changed files with 138 additions and 1 deletions

View File

@ -46,6 +46,9 @@ pr-5646-grt.ch
pr-5646.exp
pr-6292.ch
pr-6292.exp
pr-6632.ch
pr-6632-grt.ch
pr-6632.exp
result.ch
result.exp
string.ch

View File

@ -1,3 +1,7 @@
Tue Mar 28 17:13:13 1995 Per Bothner <bothner@kalessin.cygnus.com>
* pr-6632.ch, pr-6632-grt.ch, pr-6632.exp, Makefile.in: New test case.
Tue Mar 21 12:10:06 1995 Jim Kingdon (kingdon@lioth.cygnus.com)
* tuples.exp (do_tests): Make names of "print v_ps" test unique.

View File

@ -97,7 +97,7 @@ CHILL_LIB = ` \
EXECUTABLES = callch.exe chillvars.exe misc.exe \
result.exe string.exe tuples.exe \
pr-4975.exe pr-5016.exe pr-5020.exe pr-5022.exe pr-5646.exe pr-5984.exe \
pr-6292.exe
pr-6292.exe pr-6632.exe
all: $(EXECUTABLES)
@ -105,9 +105,14 @@ all: $(EXECUTABLES)
# latter can use the former's grant file.
pr-4975.o: pr-4975-grt.o
pr-5646.o: pr-5646-grt.o
pr-6632.o: pr-6632-grt.o
.SUFFIXES: .ch .exe .check
pr-6632.exe: pr-6632.o pr-6632-grt.o
$(CHILL_FOR_TARGET) $(CHILLFLAGS) $(LDFLAGS) -o pr-6632.exe \
pr-6632.o pr-6632-grt.o $(CHILL_LIB) $(LIBS)
.o.exe:
$(CHILL_FOR_TARGET) $(CHILLFLAGS) $(LDFLAGS) -o $*.exe $*.o $(CHILL_LIB) $(LIBS)

View File

@ -0,0 +1,34 @@
markus1: MODULE
SYNMODE m_dummy = SET (dummy_1,
dummy_2,
dummy_3,
dummy_4,
dummy_5,
dummy_6,
dummy_7,
dummy_8,
dummy_9,
dummy_10,
dummy_11,
dummy_12,
dummy_13,
dummy_14,
dummy_15,
dummy_16,
dummy_17,
dummy_18,
dummy_19,
dummy_20,
dummy_21,
dummy_22,
dummy_23,
dummy_24,
dummy_25,
dummy_26);
SYNMODE m_dummy_range = m_dummy(dummy_6 : dummy_22);
GRANT m_dummy, m_dummy_range;
END markus1;

View File

@ -0,0 +1,31 @@
markus: MODULE
<> USE_SEIZE_FILE "pr-6632-grt.grt" <>
SEIZE m_dummy, m_dummy_range;
DCL v m_dummy_range;
NEWMODE is_str_descr = STRUCT (p PTR,
l INT,
flag STRUCT (x UBYTE,
y SET (aa, bb, cc, dd, ee, ff)));
DCL des is_str_descr;
NEWMODE is_cb_debug = STRUCT (i INT,
channel m_dummy_range,
p PTR);
NEWMODE is_cb_debug_array = ARRAY (0:20) is_cb_debug;
DCL cb_debug is_cb_debug_array;
DCL cb_debug_index INT := 0;
p: PROC (pp is_str_descr IN, x m_dummy_range IN)
DO WITH cb_debug(cb_debug_index);
channel := x;
OD;
END p;
p (des, dummy_10);
WRITETEXT (stdout, "cb_debug(%C).channel := %C%/",
cb_debug_index, cb_debug(cb_debug_index).channel);
END markus;

View File

@ -0,0 +1,60 @@
# Copyright (C) 1995 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 p
gdb_test "whatis x" {type = m_dummy_range}
gdb_test_exact "ptype x" {type = m_dummy (dummy_6:dummy_22)}
gdb_test "print x" { = dummy_10}
}
# 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-6632.exe"
set srcfile $binfile.ch
if [skip_chill_tests] then { continue }
if ![file exists $objdir/$subdir/$binfile] then {
warning "$binfile does not exist; tests suppressed."
} else {
do_tests
}