'declaration1' conflicts with the declaration 'declaration2'
The compiler does not allow name hiding, which commonly leads to logic errors in your code. Consider the following sample:
public class MyClass2 { public static int i = 0; public static void Main() { { int i = 4; i++; } i = 0; // CS0135 } }