/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. // 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. %}