anonymous union defines protected/private member 'identifier'
A member of an anonymous union must have public access.
Example
void main() { union { public: int i; // OK, i is public protected: int j; // error, j is protected private: int k; // error, k is private }; }