gadtSyntaxFail002.hs:8:5: Data constructor `C2' has existential type variables, a context, or a specialised result type (Use -XExistentialQuantification or -XGADTs to allow this) In the definition of data constructor `C2' In the data type declaration for `Foo'