<div dir="ltr"><div>Exhibit A:</div><div><br></div>> With -XDeriveDataTypeable, you can derive instances of the class Data, defined in Data.Data. See "Deriving Typeable instances" for deriving Typeable.<div><br></div><div>Exhibit B:<br></div><div><br></div><div>> -XDeriveDataTypeable</div><div>> Enable automatic deriving of instances for the Typeable typeclass</div><div><br></div><div>Exhibit C:</div><div><br></div><div>> Derived instances of Typeable are ignored, and may be reported as an error in a later version of the compiler.</div><div><br></div><div>----------------</div><div><br></div><div>A and B seem contradictory: Is this extension for deriving Data, or for deriving Typeable?</div><div><br></div><div>B and C seem... not technically contradictory, but why is there an extension that enables the deriving of instances that will just be ignored?</div><div><br></div><div>Is this extension meant to be deprecated?</div><div><br></div><div>From experimentation, it seems like all types automatically get Typeable instances whether you declare it or not. Is that accurate?</div></div>