xref: /netbsd-src/external/gpl3/gdb.old/dist/gdb/testsuite/gdb.ada/exprs/p.adb (revision cc576e1d8e4f4078fd4e81238abca9fca216f6ec)
1--  Copyright 2008-2015 Free Software Foundation, Inc.
2--
3--  This program is free software; you can redistribute it and/or modify
4--  it under the terms of the GNU General Public License as published by
5--  the Free Software Foundation; either version 3 of the License, or
6--  (at your option) any later version.
7--
8--  This program is distributed in the hope that it will be useful,
9--  but WITHOUT ANY WARRANTY; without even the implied warranty of
10--  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11--  GNU General Public License for more details.
12--
13--  You should have received a copy of the GNU General Public License
14--  along with this program.  If not, see <http://www.gnu.org/licenses/>.
15
16--  Test Ada additions to core GDB evaluation.
17
18with System;
19with Text_IO; use Text_IO;
20
21procedure P is
22   type Int is range System.Min_Int .. System.Max_Int;
23
24   X, Z : Int;
25   Y : Integer;
26
27begin
28   X := 0;
29   -- Set X to 7 by disguised means lest a future optimizer interfere.
30   for I in 1 .. 7 loop
31      X := X + 1;
32   end loop;
33   Z := 1;
34   Y := 0;
35   while Z < Int'Last / X loop
36      Z := Z * X;
37      Y := Y + 1;
38   end loop;
39
40   Put_Line (Int'Image (X ** Y));  -- START
41end P;
42