mirror of https://github.com/swig/swig
31 lines
681 B
OpenEdge ABL
31 lines
681 B
OpenEdge ABL
// Test that was failing for PHP - the value of the -prefix option was
|
|
// ignored
|
|
%module prefix
|
|
|
|
%inline %{
|
|
|
|
class Foo {
|
|
public:
|
|
Foo *get_self() {
|
|
return this;
|
|
}
|
|
};
|
|
|
|
// This failed in git pre 4.1.0 - the calls to the parent class' magic __get,
|
|
// __set and __isset methods weren't getting the prefix.
|
|
class Bar : public Foo {
|
|
public:
|
|
Bar *get_self() {
|
|
return this;
|
|
}
|
|
};
|
|
|
|
// This failed in git pre 4.1.0 with PHP 8.x because we weren't adding the
|
|
// prefix to class names in type declarations. Error was at extension load
|
|
// time:
|
|
//
|
|
// Fatal error: Bar must be registered before ProjectBar in Unknown on line 0
|
|
Bar* self(Bar* bar) { return bar->get_self(); }
|
|
|
|
%}
|