summaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.chill/pr-4975.ch
blob: dbba064a728f5aa20af828d1db6b0a5e1bf29ee3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
/*
>Number:         4975
>Category:       chill
>Synopsis:       Segmentation fault of gdb 4.12.1
>Description:

    Problem: gdb 4.12.1 segment faults with following chill program.
*/

gdb_bug: MODULE

<> USE_SEIZE_FILE "pr-4975-grt.grt" <>
SEIZE is_channel_type;

  SYNMODE chan_type = POWERSET is_channel_type;
  SYN     hugo chan_type = [chan_1, chan_3];

DCL otto is_channel_type := chan_2;

x: PROC ();

  IF otto IN hugo THEN
    WRITETEXT (STDOUT, "otto IN hugo%/");
  ELSE
    WRITETEXT (STDOUT, "You loose%/");
  FI;
END x;

x ();

END gdb_bug;
/*
Compiled with:

   chill -S -fgrant-only pr-315-grt.ch
   chill -g -o pr-315 pr-315.ch

Run gdb with

   gdb pr-315 --readnow

will result in a sigsegv in file gdbtypes.c function force_to_range_type.
*/