dotnet/roslyn
View on GitHubMove static members to another type does not use the correct visibility
Open
#58,502 opened on Dec 27, 2021
Area-IDEBughelp wanted
Repository metrics
- Stars
- (20,414 stars)
- PR merge metrics
- (Avg merge 6d 17h) (256 merged PRs in 30d)
Description
Related to https://github.com/dotnet/roslyn/issues/55127
Version Used: Version 17.1.0 Preview 1.1
Steps to Reproduce:
- Create a new class library, paste the following code in:
class Test
{
private const string TestConstant = "";
void M()
{
_ = TestConstant;
}
}
- Ctrl+. on TestConstant, select "Move static members to another type..."
- Hit enter to accept the refactoring
Expected Behavior:
Generated code visibility allows for Test to see the constant.
Actual Behavior:
The following code is generated:
internal static class TestHelpers
{
private const string TestConstant = "";
}
The constant is private, and compilation errors result as the original location cannot see the moved constant.