diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPClassTemplate.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPClassTemplate.java index 3d0c769f867..e0fa963acb1 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPClassTemplate.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPClassTemplate.java @@ -237,7 +237,7 @@ public class PDOMCPPClassTemplate extends PDOMCPPClassType public ICPPTemplateParameter adaptTemplateParameter(ICPPTemplateParameter param) { // Template parameters are identified by their position in the parameter list. - int pos = param.getParameterPosition() & 0xff; + int pos = param.getParameterPosition() & 0xFFFF; if (params != null) { return pos < params.length ? params[pos] : null; } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPFunctionTemplate.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPFunctionTemplate.java index dff57c80870..ec200d59513 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPFunctionTemplate.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/pdom/dom/cpp/PDOMCPPFunctionTemplate.java @@ -128,7 +128,7 @@ class PDOMCPPFunctionTemplate extends PDOMCPPFunction public ICPPTemplateParameter adaptTemplateParameter(ICPPTemplateParameter param) { // Template parameters are identified by their position in the parameter list. - int pos = param.getParameterPosition() & 0xff; + int pos = param.getParameterPosition() & 0xFFFF; try { PDOMNodeLinkedList list = new PDOMNodeLinkedList(pdom, record + TEMPLATE_PARAMS, getLinkageImpl()); return (ICPPTemplateParameter) list.getNodeAt(pos);