Fix parameter count bug in ambiguity checking for overloaded function matching under implicit conversions.

git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@23827 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich 2013-10-31 18:05:50 +00:00
parent 0d22e31c75
commit 83a6b1edfc
2 changed files with 13 additions and 1 deletions

View file

@ -2596,8 +2596,13 @@ const TFunction* TParseContext::findFunction120(TSourceLoc loc, const TFunction&
int numPossibleMatches = 0;
for (TVector<TFunction*>::const_iterator it = candidateList.begin(); it != candidateList.end(); ++it) {
bool possibleMatch = true;
const TFunction& function = *(*it);
// to even be a potential match, number of arguments has to match
if (call.getParamCount() != function.getParamCount())
continue;
bool possibleMatch = true;
for (int i = 0; i < function.getParamCount(); ++i) {
// same types is easy
if (*function[i].type == *call[i].type)