diff options
author | Renato Filho <renato.filho@openbossa.org> | 2010-02-01 14:40:24 -0300 |
---|---|---|
committer | Hugo Lima <hugo.lima@openbossa.org> | 2010-02-01 14:54:55 -0200 |
commit | e476e135cc1732e0a8879f015aa0e35319cfebf8 (patch) | |
tree | 9c728b493209e6fa80e689994aae82a6594a1566 /overloaddata.cpp | |
parent | b281b75fb73895b0f1d73da3403d8b5faf2da759 (diff) |
Fixed overload function generation for fuctions with removed arguments.
Diffstat (limited to 'overloaddata.cpp')
-rw-r--r-- | overloaddata.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/overloaddata.cpp b/overloaddata.cpp index 18200f5a0..c658d0daa 100644 --- a/overloaddata.cpp +++ b/overloaddata.cpp @@ -123,15 +123,16 @@ OverloadData::OverloadData(const AbstractMetaFunctionList overloads, const Shibo { foreach (const AbstractMetaFunction* func, overloads) { m_overloads.append(func); - int argSize = func->arguments().size(); + int argSize = func->arguments().size() - numberOfRemovedArguments(func); if (m_minArgs > argSize) m_minArgs = argSize; else if (m_maxArgs < argSize) m_maxArgs = argSize; OverloadData* currentOverloadData = this; foreach (const AbstractMetaArgument* arg, func->arguments()) { - if (func->argumentRemoved(arg->argumentIndex() + 1)) + if (func->argumentRemoved(arg->argumentIndex() + 1)) { continue; + } currentOverloadData = currentOverloadData->addOverloadData(func, arg->type()); } } |