aboutsummaryrefslogtreecommitdiffstats
path: root/abstractmetalang.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'abstractmetalang.cpp')
-rw-r--r--abstractmetalang.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/abstractmetalang.cpp b/abstractmetalang.cpp
index 2724d6ce4..94114e3e9 100644
--- a/abstractmetalang.cpp
+++ b/abstractmetalang.cpp
@@ -1104,13 +1104,14 @@ AbstractMetaFunctionList AbstractMetaClass::implicitConversions() const
{
AbstractMetaFunctionList list = queryFunctions(Constructors);
AbstractMetaFunctionList returned;
+ if (!hasCloneOperator())
+ return returned;
foreach (AbstractMetaFunction *f, list) {
if ((f->actualMinimumArgumentCount() == 1 || f->arguments().size() == 1)
&& !f->isExplicit()
&& !f->isCopyConstructor()
&& !f->isModifiedRemoved()
- && !f->isUserAdded()
- && hasCloneOperator()) {
+ && (f->originalAttributes() & Public)) {
returned += f;
}
}