summaryrefslogtreecommitdiff
path: root/Examples/test-suite/octave/smart_pointer_extend_runme.m
blob: cf82f735036b48a569b72473e48de48e6eb2439e (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
44
45
46
# do not dump Octave core
if exist("crash_dumps_octave_core", "builtin")
  crash_dumps_octave_core(0);
endif

smart_pointer_extend

f = Foo();
b = Bar(f);

if (b.extension() != f.extension())
  error("failed");
endif


b = CBase();
d = CDerived();
p = CPtr();

if (b.bar() != p.bar())
  error("failed");
endif

if (d.foo() != p.foo())
  error("failed");
endif

if (b.hello() != p.hello())
  error("failed");
endif



d = DFoo();

dp = DPtrFoo(d);

if (d.SExt(1) != dp.SExt(1))
  error("failed");
endif

if (d.Ext(1) != dp.Ext(1))
  error("failed");
endif