aboutsummaryrefslogtreecommitdiffstats
path: root/sources
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2019-11-14 08:59:46 +0100
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2019-11-14 08:59:46 +0100
commit259c8245ef6d9c2d6f0e1abd0983338d87ddb09a (patch)
treebc672eb387fca9c9dcbcb13dd78aa15bc279481b /sources
parent1704567d7ad0d21dd3b588af7aad40cd244c1799 (diff)
parentda5f43b6cbecac437f80fbb1b1405292b3962d3b (diff)
Merge remote-tracking branch 'origin/5.14' into 5.15
Diffstat (limited to 'sources')
-rw-r--r--sources/pyside2/tests/registry/existence_test.py7
-rw-r--r--sources/pyside2/tests/registry/init_platform.py1
-rw-r--r--sources/shiboken2/ApiExtractor/abstractmetabuilder.cpp7
-rw-r--r--sources/shiboken2/ApiExtractor/abstractmetalang.cpp1
-rw-r--r--sources/shiboken2/ApiExtractor/abstractmetalang.h17
-rw-r--r--sources/shiboken2/ApiExtractor/clangparser/compilersupport.cpp2
-rw-r--r--sources/shiboken2/ApiExtractor/typesystem.cpp13
-rw-r--r--sources/shiboken2/ApiExtractor/typesystem.h2
-rw-r--r--sources/shiboken2/libshiboken/signature_doc.rst11
9 files changed, 21 insertions, 40 deletions
diff --git a/sources/pyside2/tests/registry/existence_test.py b/sources/pyside2/tests/registry/existence_test.py
index 0313bd9f8..6db88a818 100644
--- a/sources/pyside2/tests/registry/existence_test.py
+++ b/sources/pyside2/tests/registry/existence_test.py
@@ -100,6 +100,13 @@ except SyntaxError:
print("*** not a python file, removed:", shortpath)
os.unlink(effectiveRefPath)
have_refmodule = False
+except NameError as e:
+ if "recreate" in e.args[0]:
+ print("*** explicit request to recreate:", shortpath)
+ else:
+ print("*** unexpected NameError:", e, "- creating", shortpath)
+ os.unlink(effectiveRefPath)
+ have_refmodule = False
dict_name = "sig_dict"
if have_refmodule and not hasattr(sig_exists, dict_name):
print("*** wrong module without '{dict_name}', removed:"
diff --git a/sources/pyside2/tests/registry/init_platform.py b/sources/pyside2/tests/registry/init_platform.py
index 61964a3c1..a690a3120 100644
--- a/sources/pyside2/tests/registry/init_platform.py
+++ b/sources/pyside2/tests/registry/init_platform.py
@@ -219,6 +219,7 @@ def generate_all():
lines = f.readlines()
license_line = next((lno for lno, line in enumerate(lines)
if "$QT_END_LICENSE$" in line))
+ fmt.print("#recreate # uncomment this to enforce generation")
fmt.print("".join(lines[:license_line + 3]))
version = sys.version.replace('\n', ' ')
build = qt_build()
diff --git a/sources/shiboken2/ApiExtractor/abstractmetabuilder.cpp b/sources/shiboken2/ApiExtractor/abstractmetabuilder.cpp
index ae3cdd86b..73a887577 100644
--- a/sources/shiboken2/ApiExtractor/abstractmetabuilder.cpp
+++ b/sources/shiboken2/ApiExtractor/abstractmetabuilder.cpp
@@ -1418,13 +1418,6 @@ void AbstractMetaBuilderPrivate::traverseFunctions(ScopeModelItem scopeItem,
metaClass->setHasNonPrivateConstructor(true);
}
- // Classes with virtual destructors should always have a shell class
- // (since we aren't registering the destructors, we need this extra check)
- if (metaFunction->isDestructor() && metaFunction->isVirtual()
- && metaFunction->visibility() != AbstractMetaAttributes::Private) {
- metaClass->setForceShellClass(true);
- }
-
if (!metaFunction->isDestructor()
&& !(metaFunction->isPrivate() && metaFunction->functionType() == AbstractMetaFunction::ConstructorFunction)) {
diff --git a/sources/shiboken2/ApiExtractor/abstractmetalang.cpp b/sources/shiboken2/ApiExtractor/abstractmetalang.cpp
index 99e9d01a3..a040f3caa 100644
--- a/sources/shiboken2/ApiExtractor/abstractmetalang.cpp
+++ b/sources/shiboken2/ApiExtractor/abstractmetalang.cpp
@@ -1326,7 +1326,6 @@ AbstractMetaClass::AbstractMetaClass()
m_hasPrivateDestructor(false),
m_hasProtectedDestructor(false),
m_hasVirtualDestructor(false),
- m_forceShellClass(false),
m_hasHashFunction(false),
m_hasEqualsOperator(false),
m_hasCloneOperator(false),
diff --git a/sources/shiboken2/ApiExtractor/abstractmetalang.h b/sources/shiboken2/ApiExtractor/abstractmetalang.h
index 077191471..e9ce4d71b 100644
--- a/sources/shiboken2/ApiExtractor/abstractmetalang.h
+++ b/sources/shiboken2/ApiExtractor/abstractmetalang.h
@@ -249,21 +249,11 @@ public:
return m_originalAttributes & Private;
}
- bool wasProtected() const
- {
- return m_originalAttributes & Protected;
- }
-
bool wasPublic() const
{
return m_originalAttributes & Public;
}
- bool wasFriendly() const
- {
- return m_originalAttributes & Friendly;
- }
-
void setDocumentation(const Documentation& doc)
{
m_doc = doc;
@@ -892,7 +882,6 @@ public:
QString minimalSignature() const;
QString debugSignature() const; // including virtual/override/final, etc., for debugging only.
- QStringList possibleIntrospectionCompatibleSignatures() const;
bool isModifiedRemoved(int types = TypeSystem::All) const;
@@ -1530,11 +1519,6 @@ public:
bool hasSignals() const;
bool inheritsFrom(const AbstractMetaClass *other) const;
- void setForceShellClass(bool on)
- {
- m_forceShellClass = on;
- }
-
/**
* Says if the class that declares or inherits a virtual function.
* \return true if the class implements or inherits any virtual methods
@@ -1732,7 +1716,6 @@ private:
uint m_hasPrivateDestructor : 1;
uint m_hasProtectedDestructor : 1;
uint m_hasVirtualDestructor : 1;
- uint m_forceShellClass : 1;
uint m_hasHashFunction : 1;
uint m_hasEqualsOperator : 1;
uint m_hasCloneOperator : 1;
diff --git a/sources/shiboken2/ApiExtractor/clangparser/compilersupport.cpp b/sources/shiboken2/ApiExtractor/clangparser/compilersupport.cpp
index f301733fe..d3e5e212f 100644
--- a/sources/shiboken2/ApiExtractor/clangparser/compilersupport.cpp
+++ b/sources/shiboken2/ApiExtractor/clangparser/compilersupport.cpp
@@ -309,6 +309,8 @@ QByteArrayList emulatedCompilerOptions()
HeaderPaths headerPaths;
result.append(QByteArrayLiteral("-fms-compatibility-version=19"));
result.append(QByteArrayLiteral("-Wno-microsoft-enum-value"));
+ // Fix yvals_core.h: STL1000: Unexpected compiler version, expected Clang 7 or newer (MSVC2017 update)
+ result.append(QByteArrayLiteral("-D_ALLOW_COMPILER_AND_STL_VERSION_MISMATCH"));
#elif defined(Q_CC_CLANG)
HeaderPaths headerPaths = gppInternalIncludePaths(compilerFromCMake(QStringLiteral("clang++")));
result.append(noStandardIncludeOption());
diff --git a/sources/shiboken2/ApiExtractor/typesystem.cpp b/sources/shiboken2/ApiExtractor/typesystem.cpp
index fa141670c..a1b98cd45 100644
--- a/sources/shiboken2/ApiExtractor/typesystem.cpp
+++ b/sources/shiboken2/ApiExtractor/typesystem.cpp
@@ -241,19 +241,6 @@ QString FlagsTypeEntry::targetLangName() const
return m_targetLangName;
}
-/*!
- * The Visual Studio 2002 compiler doesn't support these symbols,
- * which our typedefs unforntuatly expand to.
- */
-QString fixCppTypeName(const QString &name)
-{
- if (name == QLatin1String("long long"))
- return QLatin1String("qint64");
- if (name == QLatin1String("unsigned long long"))
- return QLatin1String("quint64");
- return name;
-}
-
QString TemplateInstance::expandCode() const
{
TemplateEntry *templateEntry = TypeDatabase::instance()->findTemplate(m_name);
diff --git a/sources/shiboken2/ApiExtractor/typesystem.h b/sources/shiboken2/ApiExtractor/typesystem.h
index 6a88ecd4d..48733053d 100644
--- a/sources/shiboken2/ApiExtractor/typesystem.h
+++ b/sources/shiboken2/ApiExtractor/typesystem.h
@@ -1684,8 +1684,6 @@ struct TypeRejection
QDebug operator<<(QDebug d, const TypeRejection &r);
#endif
-QString fixCppTypeName(const QString &name);
-
class CustomConversion
{
public:
diff --git a/sources/shiboken2/libshiboken/signature_doc.rst b/sources/shiboken2/libshiboken/signature_doc.rst
index a984de4ce..cb9041d0c 100644
--- a/sources/shiboken2/libshiboken/signature_doc.rst
+++ b/sources/shiboken2/libshiboken/signature_doc.rst
@@ -265,6 +265,17 @@ we can now capture the error output of COIN and check the generated module
in.
+Explicitly Enforcing Recreation
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The former way to regenerate the registry files was to remove the files
+and check that in. This has the desired effect, but creates huge deltas.
+As a more efficient way, we have prepared a comment in the first line
+that contains the word "recreate".
+By uncommenting this line, a NameError is triggered, which has the same
+effect.
+
+
init_platform.py
~~~~~~~~~~~~~~~~