diff --git a/src/Generator/Passes/MoveFunctionToClassPass.cs b/src/Generator/Passes/MoveFunctionToClassPass.cs index 07fff615..5e5d295a 100644 --- a/src/Generator/Passes/MoveFunctionToClassPass.cs +++ b/src/Generator/Passes/MoveFunctionToClassPass.cs @@ -24,8 +24,7 @@ namespace CppSharp.Passes Class @class = FindClassToMoveFunctionTo(function); - if (@class == null || - @class.TranslationUnit.Module != function.TranslationUnit.Module) + if (@class == null) return false; // Create a new fake method so it acts as a static method. diff --git a/tests/NamespacesDerived/NamespacesDerived.cpp b/tests/NamespacesDerived/NamespacesDerived.cpp index c403ec9f..51740df9 100644 --- a/tests/NamespacesDerived/NamespacesDerived.cpp +++ b/tests/NamespacesDerived/NamespacesDerived.cpp @@ -92,3 +92,8 @@ DerivedFromSecondaryBaseInDependency::DerivedFromSecondaryBaseInDependency() DerivedFromSecondaryBaseInDependency::~DerivedFromSecondaryBaseInDependency() { } + +bool operator<<(const Base& b, const char* str) +{ + return false; +} diff --git a/tests/NamespacesDerived/NamespacesDerived.h b/tests/NamespacesDerived/NamespacesDerived.h index a2a7b490..a5a66d43 100644 --- a/tests/NamespacesDerived/NamespacesDerived.h +++ b/tests/NamespacesDerived/NamespacesDerived.h @@ -87,6 +87,8 @@ public: ~DerivedFromSecondaryBaseInDependency(); }; +DLL_API bool operator<<(const Base& b, const char* str); + namespace NamespacesBase { class DLL_API ClassInNamespaceNamedAfterDependency