PageRenderTime 7ms CodeModel.GetById 2ms app.highlight 1ms RepoModel.GetById 2ms app.codeStats 0ms

/trunk/Examples/test-suite/fvirtual.i

#
Swig | 21 lines | 17 code | 4 blank | 0 comment | 0 complexity | 5d2d1aed5dcdf5b2ee96146b2c216f92 MD5 | raw file
 1// This testcase tests corner cases for the -fvirtual optimisation flag.
 2// Note that the test-suite does not actually run with -fvirtual at any point, but this can be tested using the SWIG_FEATURES=-fvirtual env variable.
 3%module fvirtual
 4
 5// Test overloaded methods #1508327 (requires a scripting language runtime test)
 6%inline %{
 7  class Node {
 8    public:
 9      virtual int addChild( Node *child ) { return 1; }
10      virtual ~Node() {}
11  };
12
13  class NodeSwitch : public Node {
14    public :
15      virtual int addChild( Node *child ) { return 2; } // This was hidden with -fvirtual
16      virtual int addChild( Node *child, bool value ) { return 3; }
17      virtual ~NodeSwitch() {}
18  };
19%}
20
21