]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/testsuite/gm2/extensions/run/pass/int8field.mod
Merge modula-2 front end onto gcc.
[thirdparty/gcc.git] / gcc / testsuite / gm2 / extensions / run / pass / int8field.mod
1 (* Copyright (C) 2010 Free Software Foundation, Inc. *)
2 (* This file is part of GNU Modula-2.
3
4 GNU Modula-2 is free software; you can redistribute it and/or modify it under
5 the terms of the GNU General Public License as published by the Free
6 Software Foundation; either version 2, or (at your option) any later
7 version.
8
9 GNU Modula-2 is distributed in the hope that it will be useful, but WITHOUT ANY
10 WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 for more details.
13
14 You should have received a copy of the GNU General Public License along
15 with gm2; see the file COPYING. If not, write to the Free Software
16 Foundation, 51 Franklin Street, Fifth Floor,
17 Boston, MA 02110-1301, USA. *)
18
19 MODULE int8field ;
20
21 IMPORT SYSTEM ;
22 FROM libc IMPORT exit ;
23 FROM NumberIO IMPORT WriteCard ;
24 FROM StrIO IMPORT WriteLn ;
25
26 PROCEDURE assert (a, b: CARDINAL) ;
27 BEGIN
28 WriteCard(a, 1) ; WriteLn ;
29 IF a#b
30 THEN
31 exit(1)
32 END
33 END assert ;
34
35 TYPE
36 Version = RECORD
37 major : SYSTEM.CARDINAL8;
38 minor : SYSTEM.CARDINAL8;
39 path : SYSTEM.CARDINAL8;
40 END ;
41
42 VAR
43 v: Version ;
44 BEGIN
45 v.major := 1 ;
46 v.minor := 2 ;
47 v.path := 3 ;
48 assert(v.major, 1) ;
49 assert(v.minor, 2) ;
50 assert(v.path, 3)
51 END int8field.