mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-06-05 08:46:02 +02:00
Bug 550397 - Fix a logic error in instantiateConversionTemplates()
Change-Id: If4cb26e3b392e65ffbcb53514db67c1065aa9c79
This commit is contained in:
parent
77f853e077
commit
15dbbb8304
2 changed files with 20 additions and 1 deletions
|
@ -4653,6 +4653,24 @@ public class AST2TemplateTests extends AST2CPPTestBase {
|
||||||
parseAndCheckBindings();
|
parseAndCheckBindings();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// class Mat {};
|
||||||
|
//
|
||||||
|
// template <typename T>
|
||||||
|
// class Mat_ {};
|
||||||
|
//
|
||||||
|
// class MatExpr {
|
||||||
|
// public:
|
||||||
|
// operator Mat();
|
||||||
|
//
|
||||||
|
// template <typename T>
|
||||||
|
// operator Mat_<T>();
|
||||||
|
// };
|
||||||
|
//
|
||||||
|
// Mat x = MatExpr();
|
||||||
|
public void testOverloadedConversionOperators_550397() throws Exception {
|
||||||
|
parseAndCheckImplicitNameBindings();
|
||||||
|
}
|
||||||
|
|
||||||
// template<unsigned int> struct ST{};
|
// template<unsigned int> struct ST{};
|
||||||
// template<template<unsigned int> class T> class CT {};
|
// template<template<unsigned int> class T> class CT {};
|
||||||
// typedef CT<ST> TDef;
|
// typedef CT<ST> TDef;
|
||||||
|
|
|
@ -2455,8 +2455,9 @@ public class CPPTemplates {
|
||||||
result = new ICPPFunction[functions.length];
|
result = new ICPPFunction[functions.length];
|
||||||
System.arraycopy(functions, 0, result, 0, i);
|
System.arraycopy(functions, 0, result, 0, i);
|
||||||
}
|
}
|
||||||
result[i++] = inst;
|
result[i] = inst;
|
||||||
}
|
}
|
||||||
|
i++;
|
||||||
if (done)
|
if (done)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue