diff --git a/src/CppParser/Parser.cpp b/src/CppParser/Parser.cpp index fbc93bd0..a71d227f 100644 --- a/src/CppParser/Parser.cpp +++ b/src/CppParser/Parser.cpp @@ -1627,6 +1627,8 @@ static const clang::Type* GetFinalType(const clang::Type* Ty) bool Parser::ShouldCompleteType(const clang::QualType& QualType, bool LocValid) { + // HACK: the completion of types is temporarily suspended because of problems with QtWidgets; will restore when it's time to wrap functions in template types + return false; auto FinalType = GetFinalType(QualType.getTypePtr()); if (auto Tag = FinalType->getAsTagDecl()) { diff --git a/src/Generator.Tests/AST/TestAST.cs b/src/Generator.Tests/AST/TestAST.cs index 58b3eb90..2b1d8ecb 100644 --- a/src/Generator.Tests/AST/TestAST.cs +++ b/src/Generator.Tests/AST/TestAST.cs @@ -226,8 +226,7 @@ namespace CppSharp.Generator.Tests.AST Assert.AreEqual(3, template.Specializations.Count); Assert.AreEqual(TemplateSpecializationKind.ExplicitInstantiationDefinition, template.Specializations[0].SpecializationKind); Assert.AreEqual(TemplateSpecializationKind.ExplicitInstantiationDefinition, template.Specializations[1].SpecializationKind); - // the instantian is not declared in the header but we force the completion the types in our parser - Assert.AreEqual(TemplateSpecializationKind.ImplicitInstantiation, template.Specializations[2].SpecializationKind); + Assert.AreEqual(TemplateSpecializationKind.Undeclared, template.Specializations[2].SpecializationKind); var typeDef = AstContext.FindTypedef("TestTemplateClassInt").FirstOrDefault(); Assert.IsNotNull(typeDef, "Couldn't find TestTemplateClassInt typedef."); var integerInst = typeDef.Type as TemplateSpecializationType; diff --git a/tests/CSharp/CSharp.Tests.cs b/tests/CSharp/CSharp.Tests.cs index 8dcd38ea..e4b1feeb 100644 --- a/tests/CSharp/CSharp.Tests.cs +++ b/tests/CSharp/CSharp.Tests.cs @@ -503,7 +503,8 @@ public class CSharpTests : GeneratorTestFixture Assert.IsTrue(VirtualDtorAddedInDerived.DtorCalled); } - [Test] + // HACK: the completion of types is temporarily suspended because of problems with QtWidgets + [Test, Ignore] public void TestTemplateInternals() { foreach (var internalType in new[]