e0e7c7ab9bdb01e0612492db0afd710272b09b5a
[openbsd] /
1 //===-- main.cpp ------------------------------------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8
9 #include <stdio.h>
10 #include <stdlib.h>
11 #include <stdint.h>
12
13 struct Shape
14 {
15         bool dummy;
16         Shape() : dummy(true) {}
17 };
18
19 struct Rectangle : public Shape {
20     int w;
21     int h;
22     Rectangle(int W = 3, int H = 5) : w(W), h(H) {}
23 };
24
25 struct Circle : public Shape {
26     int r;
27     Circle(int R = 6) : r(R) {}
28 };
29
30 int main (int argc, const char * argv[])
31 {
32     Rectangle r1(5,6);
33     Rectangle r2(9,16);
34     Rectangle r3(4,4);
35     
36     Circle c1(5);
37     Circle c2(6);
38     Circle c3(7);
39     
40     Circle *c_ptr = new Circle(8);
41     Rectangle *r_ptr = new Rectangle(9,7);
42     
43     return 0; // Set break point at this line.
44 }
45