dotnet/roslyn
View on GitHubTypedConstant.ToCSharpString/ToVisualBasicString should exclude bitwise or value of 0
Open
#74,326 opened on Jul 10, 2024
Area-CompilersBughelp wanted
Repository metrics
- Stars
- (20,414 stars)
- PR merge metrics
- (Avg merge 6d 17h) (256 merged PRs in 30d)
Description
Version Used: 4.7.0
Steps to Reproduce:
- Define
FlagEnum:
[Flags]
public enum FlagEnum
{
None = 0,
Flag1 = 1,
Flag2 = 2,
Flag3 = 4,
}
- Get an instance of
TypedConstantwith valueFlagEnum.Flag1 | FlagEnum.Flag3; - Call
TypedConstant.ToCSharpString()/ToVisualBasicString().
Expected Behavior:
Returns FlagEnum.Flag1 | FlagEnum.Flag3 in C#, or FlagEnum.Flag1 Or FlagEnum.Flag3 in VisualBasic.
Actual Behavior:
Returns FlagsEnum.None | FlagEnum.Flag1 | FlagEnum.Flag3 in C#, or FlagEnum.None Or FlagEnum.Flag1 Or FlagEnum.Flag3 in VisualBasic.