@Override
 public void configure(ICPPTemplateParameter param) {
   try {
     ICPPTemplateArgument val = param.getDefaultValue();
     if (val != null) {
       IType dflt = val.getTypeValue();
       if (dflt != null) {
         getLinkage().storeType(record + DEFAULT_TYPE, dflt);
       }
     }
   } catch (CoreException e) {
     CCorePlugin.log(e);
   }
 }
 @Override
 public boolean isSameValue(ICPPTemplateArgument arg) {
   return getNonTypeValue().equals(arg.getNonTypeValue());
 }
 public boolean isSameValue(ICPPTemplateArgument arg) {
   if (fValue != null) {
     return fValue.equals(arg.getNonTypeValue());
   }
   return fType.isSameType(arg.getTypeValue());
 }