Browse Source

[Semantic] Handled default parameter value conversion in default

unresolved parameter.
newNRvisualizers
Mike Krüger 13 years ago
parent
commit
3acaf5eca2
  1. 7
      ICSharpCode.NRefactory/Semantics/ConversionResolveResult.cs
  2. 5
      ICSharpCode.NRefactory/TypeSystem/Implementation/DefaultUnresolvedParameter.cs

7
ICSharpCode.NRefactory/Semantics/ConversionResolveResult.cs

@ -64,12 +64,5 @@ namespace ICSharpCode.NRefactory.Semantics
return new [] { Input }; return new [] { Input };
} }
public override object ConstantValue {
get {
if (Conversion.IsNullableConversion)
return Input.ConstantValue;
return null;
}
}
} }
} }

5
ICSharpCode.NRefactory/TypeSystem/Implementation/DefaultUnresolvedParameter.cs

@ -235,6 +235,11 @@ namespace ICSharpCode.NRefactory.TypeSystem.Implementation
public object ConstantValue { public object ConstantValue {
get { get {
ResolveResult rr = LazyInit.VolatileRead(ref this.resolvedDefaultValue); ResolveResult rr = LazyInit.VolatileRead(ref this.resolvedDefaultValue);
if (rr is ConversionResolveResult) {
var crr = (ConversionResolveResult)rr;
if (crr.Conversion.IsNullableConversion)
return crr.Input.ConstantValue;
}
if (rr != null) { if (rr != null) {
return rr.ConstantValue; return rr.ConstantValue;
} else { } else {

Loading…
Cancel
Save