* pr-8405.ch, pr-8405.exp, Makefile.in: New test case.
authorPer Bothner <per@bothner.com>
Fri, 1 Dec 1995 22:17:42 +0000 (22:17 +0000)
committerPer Bothner <per@bothner.com>
Fri, 1 Dec 1995 22:17:42 +0000 (22:17 +0000)
gdb/testsuite/gdb.chill/.Sanitize
gdb/testsuite/gdb.chill/ChangeLog
gdb/testsuite/gdb.chill/Makefile.in
gdb/testsuite/gdb.chill/pr-8405.ch [new file with mode: 0644]
gdb/testsuite/gdb.chill/pr-8405.exp [new file with mode: 0644]

index 90627482172e5a7c274e6dccab0d5a41b5398d80..cb8773b485c26af4b3adcb46c8ab88f7654cf151 100644 (file)
@@ -56,6 +56,8 @@ pr-6632.exp
 pr-8134.exp
 pr-8136.ch
 pr-8136.exp
+pr-8405.ch
+pr-8405.exp
 result.ch
 result.exp
 string.ch
index dfe4e07b5e7abfb82081b1b72ab04ff43c60421c..a65b586f8dc2f6c68941fe2ed2723ea0dde1bb6e 100644 (file)
@@ -1,5 +1,7 @@
 Fri Dec  1 00:08:37 1995  Per Bothner  <bothner@kalessin.cygnus.com>
 
+       * pr-8405.ch, pr-8405.exp, Makefile.in:  New test case.
+
        * tests1.exp, tests2.exp (test_print_reject):  Remove;  causes
        conflicts with later tests using test_print_reject in ../lib/gdb.exp.
        (passcount):  Remove.
index 31899100a7f46a62dd3a71df75f815a34b704292..23f125184339604514a7ed7f9f2c97b0a7136c14 100644 (file)
@@ -4,7 +4,7 @@ VPATH = @srcdir@
 PROGS = callch.exe chillvars.exe misc.exe result.exe string.exe \
        tests1.exe tests2.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-6632.exe pr-8136.exe
+       pr-5984.exe pr-6292.exe pr-6632.exe pr-8136.exe pr-8405.exe
 
 all: 
        @echo "Nothing to be done for all..."
diff --git a/gdb/testsuite/gdb.chill/pr-8405.ch b/gdb/testsuite/gdb.chill/pr-8405.ch
new file mode 100644 (file)
index 0000000..a9b2531
--- /dev/null
@@ -0,0 +1,19 @@
+emptybit: MODULE
+
+SYNMODE b8 = BOOLS(8);
+SYN bit8 b8 = B'00000000';
+
+SYNMODE char_m = CHARS(40) VARYING;
+
+SYNMODE stru_m = STRUCT (c char_m, b b8, boo BOOL);
+DCL xx stru_m;
+
+SYNMODE m_stru = STRUCT (c char_m, i LONG, boo BOOL);
+DCL yy m_stru;
+
+SYNMODE m_arr = ARRAY (1:10) LONG;
+DCL zz m_arr;
+
+WRITETEXT (stdout, "%C%/", bit8);
+
+END emptybit;
diff --git a/gdb/testsuite/gdb.chill/pr-8405.exp b/gdb/testsuite/gdb.chill/pr-8405.exp
new file mode 100644 (file)
index 0000000..4557969
--- /dev/null
@@ -0,0 +1,57 @@
+# 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, 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 $"
+    send "set var \$i:=xx\n" ;  expect -re "$prompt $"
+    gdb_test "print \$i" {= \[.c: "", .b: B'00000000', .boo: FALSE\]}
+}
+
+# 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-8405.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." 0
+} else {
+    do_tests
+}