t :: {CompileError, term, term, term, term}
options :: [__exception__: term, file: term, line: term, description: term] | [{String.t, term}]