PageRenderTime 22ms CodeModel.GetById 0ms RepoModel.GetById 1ms app.codeStats 0ms

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

#
Swig | 21 lines | 17 code | 4 blank | 0 comment | 0 complexity | 5d2d1aed5dcdf5b2ee96146b2c216f92 MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
  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. // Test overloaded methods #1508327 (requires a scripting language runtime test)
  5. %inline %{
  6. class Node {
  7. public:
  8. virtual int addChild( Node *child ) { return 1; }
  9. virtual ~Node() {}
  10. };
  11. class NodeSwitch : public Node {
  12. public :
  13. virtual int addChild( Node *child ) { return 2; } // This was hidden with -fvirtual
  14. virtual int addChild( Node *child, bool value ) { return 3; }
  15. virtual ~NodeSwitch() {}
  16. };
  17. %}