diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPTemplateParameter.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPTemplateParameter.java index 2f1ef12b6de..43954502856 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPTemplateParameter.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPTemplateParameter.java @@ -32,18 +32,18 @@ public interface ICPPTemplateParameter extends ICPPBinding { * Example: *
* namespace ns { - * template* @since 5.1 diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPTemplateDefinition.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPTemplateDefinition.java index 7a2f607a973..f6d246fa610 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPTemplateDefinition.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPTemplateDefinition.java @@ -247,7 +247,7 @@ public abstract class CPPTemplateDefinition extends PlatformObject implements IC } public IBinding resolveTemplateParameter(ICPPTemplateParameter templateParameter) { - int pos= templateParameter.getParameterPosition() & 0xff; + int pos= templateParameter.getParameterPosition() & 0xffff; int tdeclLen= declarations == null ? 0 : declarations.length; for (int i= -1; i < tdeclLen; i++) { diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPTemplateParameter.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPTemplateParameter.java index b28909cbee3..875bbad1189 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPTemplateParameter.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPTemplateParameter.java @@ -239,7 +239,7 @@ public abstract class CPPTemplateParameter extends PlatformObject // use parameter from the index try { ICPPTemplateParameter[] params = template.getTemplateParameters(); - final int pos= position & 0xff; + final int pos= position & 0xffff; if (pos < params.length) return params[pos]; } catch (DOMException e) {class X { // parameter position: 0x0000 - * template class Y1 { // parameter position: 0x0100 + * template class X { // parameter position: 0x00000000 + * template class Y1 { // parameter position: 0x00010000 * }; * class Y2 { - * template typename class Z { // parameter position: 0x0100 + * template typename class Z { // parameter position: 0x00010000 * void m(); * }; * }; * }; * } - * template // parameter position 0x0000 - * template // parameter position 0x0100 + * template // parameter position 0x00000000 + * template // parameter position 0x00010000 * void ns::X ::Y2::Z ::m() {} *