ApiAnnotations : BooleanFormula construction discards original
ClosedPublic

Authored by alanz on Apr 12 2015, 7:17 AM.

Details

Summary

The MINIMAL pragma is captured in the parser using a BooleanFormula.

The constructors (mkBool,mkAnd,mkOr) are smart and try to minimise the
boolean formula as it is constructed.

This discards the original information, making round tripping
impossible.

Note: there is another version which provides a more API Annotations
friendly version of the MINIMAL pragma, but this requires changes to
haddock, which will cause problems for 7.10.2.

See https://github.com/alanz/ghc/tree/wip/10287

Test Plan

./validate

Diff Detail

Repository
rGHC Glasgow Haskell Compiler
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
alanz updated this revision to Diff 2726.Apr 12 2015, 7:17 AM
alanz retitled this revision from to ApiAnnotations : BooleanFormula construction discards original.
alanz updated this object.
alanz edited the test plan for this revision. (Show Details)
alanz added reviewers: hvr, austin.
alanz updated the Trac tickets for this revision.
alanz added a subscriber: mpickering.
alanz updated this revision to Diff 2734.Apr 12 2015, 3:47 PM

Fixing test file names

alanz added a comment.Apr 14 2015, 9:19 AM

I will be putting up an alternate diff for this shortly that changes the AST and has haddock changes. As long as one of them hits 7.10.2 I will be happy

alanz added a subscriber: Fuuzetsu.Apr 14 2015, 9:21 AM
austin accepted this revision.May 11 2015, 3:33 AM
austin edited edge metadata.

lgtm

This revision is now accepted and ready to land.May 11 2015, 3:33 AM
alanz updated this revision to Diff 2913.May 11 2015, 4:47 AM
alanz edited edge metadata.

Rebase against master

alanz updated this revision to Diff 2914.May 11 2015, 5:58 AM

Clean up commit message to make git linter happy

alanz updated this revision to Diff 2915.May 11 2015, 6:01 AM

More commit lint cleanups

alanz updated this object.May 11 2015, 7:18 AM
This revision was automatically updated to reflect the committed changes.