Gdy używam następujący kod:Dlaczego pole nie referowanie dozwolone w enum (lub jest to kompilator bug?)
using System;
namespace Foo {
[Flags]
public enum Bar : ulong {
None = 0x0000000000000000,
A = 0x8000000000000000,
B = 0x0000000000000001L | A,
C = 0x0000000000000002L | B,
D = 0x0000000000000004L | A,
All = A | B | C | D
}
}
wywala kompilator mono. Czy jest to spowodowane błędem semantycznym (coś, co nie jest dozwolone w języku), ale nie jest zauważane przez kompilator lub jest to błąd kompilatora?
Wersja: Mono 2.10.8.1
Mam złożył raport o błędzie na Bugzilla (https://bugzilla.xamarin.com/show_bug.cgi?id=15801)
W porządku, co jest nie tak z tym pytaniem? Nie rozumiem, dlaczego jest to odrzucane? Zapewniam MWE ... –
Kompiluje się dobrze w VS2012, więc powiedziałbym, że jest to problem z kompilatorem mono. – MarcinJuraszek
Czy jest skompilowany i czy jest poprawny? – Rob