OSDN Git Service

2012-01-16 Pedro Alves <palves@redhat.com>
[pf3gnuchains/pf3gnuchains4x.git] / gdb / testsuite / gdb.pascal / types.exp
1 # Copyright 1994-1995, 1997-1998, 2007-2012 Free Software Foundation,
2 # Inc.
3 # Copyright 2007 Free Software Foundation, Inc.
4 #
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 3 of the License, or
8 # (at your option) any later version.
9 #
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 # GNU General Public License for more details.
14 #
15 # You should have received a copy of the GNU General Public License
16 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
17
18 # This file was adapted from old Chill tests by Stan Shebs
19 # (shebs@cygnus.com).
20 # Adapted to pascal by Pierre Muller
21
22 load_lib "pascal.exp"
23
24 proc test_integer_literal_types_accepted {} {
25     global gdb_prompt
26
27     # Test various decimal values.
28     # Should be integer*4 probably.
29     gdb_test "pt 123" "type = int" 
30 }
31 proc test_character_literal_types_accepted {} {
32     global gdb_prompt
33
34     # Test various character values.
35
36     gdb_test "pt 'a'" "type = char"
37 }
38
39 proc test_string_literal_types_accepted {} {
40     global gdb_prompt
41
42     # Test various character values.
43
44     setup_kfail gdb/2326 *-*-*
45     gdb_test "pt 'a simple string'" "type = string"
46 }
47
48 proc test_logical_literal_types_accepted {} {
49     global gdb_prompt
50
51     # Test the only possible values for a logical, TRUE and FALSE.
52
53     gdb_test "pt TRUE" "type = bool"
54     gdb_test "pt FALSE" "type = bool"
55 }
56
57 proc test_float_literal_types_accepted {} {
58     global gdb_prompt
59
60     # Test various floating point formats
61
62     # this used to guess whether to look for "real*4" or
63     # "real*8" based on a target config variable, but noone
64     # maintained it properly.
65
66     gdb_test "pt .44" "type = double"
67     gdb_test "pt 44.0" "type = double"
68     gdb_test "pt 10e20" "type = double"
69     gdb_test "pt 10E20" "type = double"
70 }
71
72 # Start with a fresh gdb.
73
74 gdb_exit
75 gdb_start
76 gdb_reinitialize_dir $srcdir/$subdir
77
78 if [set_lang_pascal] then {
79     test_integer_literal_types_accepted
80     test_logical_literal_types_accepted
81     test_character_literal_types_accepted
82     test_string_literal_types_accepted
83     test_float_literal_types_accepted
84 } else {
85     warning "$test_name tests suppressed." 0
86 }