packages feed

camfort 1.0.1 → 1.1.0

raw patch · 6 files changed

+54/−34 lines, 6 filesdep ~fortran-srcdep ~ghc-primdep ~lensPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: fortran-src, ghc-prim, lens, singletons

API changes (from Hackage documentation)

- Language.Fortran.Model.Singletons: [Compare_6989586621679388653Sym0KindInference] :: SameKind (Apply Compare_6989586621679388653Sym0 arg_a1AyJ) (Compare_6989586621679388653Sym1 arg_a1AyJ) => Compare_6989586621679388653Sym0 a6989586621679388658
- Language.Fortran.Model.Singletons: [Compare_6989586621679388653Sym1KindInference] :: SameKind (Apply (Compare_6989586621679388653Sym1 a6989586621679388658) arg_a1AyJ) (Compare_6989586621679388653Sym2 a6989586621679388658 arg_a1AyJ) => Compare_6989586621679388653Sym1 a6989586621679388658 a6989586621679388659
- Language.Fortran.Model.Singletons: [Compare_6989586621679388662Sym0KindInference] :: SameKind (Apply Compare_6989586621679388662Sym0 arg_a1AyS) (Compare_6989586621679388662Sym1 arg_a1AyS) => Compare_6989586621679388662Sym0 a6989586621679388667
- Language.Fortran.Model.Singletons: [Compare_6989586621679388662Sym1KindInference] :: SameKind (Apply (Compare_6989586621679388662Sym1 a6989586621679388667) arg_a1AyS) (Compare_6989586621679388662Sym2 a6989586621679388667 arg_a1AyS) => Compare_6989586621679388662Sym1 a6989586621679388667 a6989586621679388668
- Language.Fortran.Model.Singletons: data Compare_6989586621679388653Sym0 a6989586621679388658
- Language.Fortran.Model.Singletons: data Compare_6989586621679388653Sym1 a6989586621679388658 a6989586621679388659
- Language.Fortran.Model.Singletons: data Compare_6989586621679388662Sym0 a6989586621679388667
- Language.Fortran.Model.Singletons: data Compare_6989586621679388662Sym1 a6989586621679388667 a6989586621679388668
- Language.Fortran.Model.Singletons: instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Language.Fortran.Model.Singletons.BasicTypeMaxSym1 a6989586621679387419)
- Language.Fortran.Model.Singletons: instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Language.Fortran.Model.Singletons.Compare_6989586621679388653Sym1 a6989586621679388658)
- Language.Fortran.Model.Singletons: instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Language.Fortran.Model.Singletons.Compare_6989586621679388662Sym1 a6989586621679388667)
- Language.Fortran.Model.Singletons: instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Language.Fortran.Model.Singletons.PrecMaxSym1 a6989586621679387430)
- Language.Fortran.Model.Singletons: instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Language.Fortran.Model.Singletons.Compare_6989586621679388653Sym0
- Language.Fortran.Model.Singletons: instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Language.Fortran.Model.Singletons.Compare_6989586621679388662Sym0
- Language.Fortran.Model.Singletons: type Compare_6989586621679388653Sym2 (a6989586621679388658 :: Precision) (a6989586621679388659 :: Precision) = Compare_6989586621679388653 a6989586621679388658 a6989586621679388659 :: Ordering
- Language.Fortran.Model.Singletons: type Compare_6989586621679388662Sym2 (a6989586621679388667 :: BasicType) (a6989586621679388668 :: BasicType) = Compare_6989586621679388662 a6989586621679388667 a6989586621679388668 :: Ordering
+ Camfort.Helpers.Syntax: instance GHC.Classes.Eq (Camfort.Helpers.Syntax.AnnotationFree Language.Fortran.Analysis.SemanticTypes.SemType)
+ Language.Fortran.Model.Singletons: [Compare_6989586621679390227Sym0KindInference] :: SameKind (Apply Compare_6989586621679390227Sym0 arg_a1AY7) (Compare_6989586621679390227Sym1 arg_a1AY7) => Compare_6989586621679390227Sym0 a6989586621679390232
+ Language.Fortran.Model.Singletons: [Compare_6989586621679390227Sym1KindInference] :: SameKind (Apply (Compare_6989586621679390227Sym1 a6989586621679390232) arg_a1AY7) (Compare_6989586621679390227Sym2 a6989586621679390232 arg_a1AY7) => Compare_6989586621679390227Sym1 a6989586621679390232 a6989586621679390233
+ Language.Fortran.Model.Singletons: [Compare_6989586621679390236Sym0KindInference] :: SameKind (Apply Compare_6989586621679390236Sym0 arg_a1AYg) (Compare_6989586621679390236Sym1 arg_a1AYg) => Compare_6989586621679390236Sym0 a6989586621679390241
+ Language.Fortran.Model.Singletons: [Compare_6989586621679390236Sym1KindInference] :: SameKind (Apply (Compare_6989586621679390236Sym1 a6989586621679390241) arg_a1AYg) (Compare_6989586621679390236Sym2 a6989586621679390241 arg_a1AYg) => Compare_6989586621679390236Sym1 a6989586621679390241 a6989586621679390242
+ Language.Fortran.Model.Singletons: data Compare_6989586621679390227Sym0 a6989586621679390232
+ Language.Fortran.Model.Singletons: data Compare_6989586621679390227Sym1 a6989586621679390232 a6989586621679390233
+ Language.Fortran.Model.Singletons: data Compare_6989586621679390236Sym0 a6989586621679390241
+ Language.Fortran.Model.Singletons: data Compare_6989586621679390236Sym1 a6989586621679390241 a6989586621679390242
+ Language.Fortran.Model.Singletons: instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Language.Fortran.Model.Singletons.BasicTypeMaxSym1 a6989586621679388993)
+ Language.Fortran.Model.Singletons: instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Language.Fortran.Model.Singletons.Compare_6989586621679390227Sym1 a6989586621679390232)
+ Language.Fortran.Model.Singletons: instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Language.Fortran.Model.Singletons.Compare_6989586621679390236Sym1 a6989586621679390241)
+ Language.Fortran.Model.Singletons: instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Language.Fortran.Model.Singletons.PrecMaxSym1 a6989586621679389004)
+ Language.Fortran.Model.Singletons: instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Language.Fortran.Model.Singletons.Compare_6989586621679390227Sym0
+ Language.Fortran.Model.Singletons: instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Language.Fortran.Model.Singletons.Compare_6989586621679390236Sym0
+ Language.Fortran.Model.Singletons: type Compare_6989586621679390227Sym2 (a6989586621679390232 :: Precision) (a6989586621679390233 :: Precision) = Compare_6989586621679390227 a6989586621679390232 a6989586621679390233 :: Ordering
+ Language.Fortran.Model.Singletons: type Compare_6989586621679390236Sym2 (a6989586621679390241 :: BasicType) (a6989586621679390242 :: BasicType) = Compare_6989586621679390236 a6989586621679390241 a6989586621679390242 :: Ordering
- Camfort.Analysis: _ARFailure :: forall e_ayPM r_ayPN e_aA4f. Prism (AnalysisResult e_aA4f r_ayPN) (AnalysisResult e_ayPM r_ayPN) (Origin, e_aA4f) (Origin, e_ayPM)
+ Camfort.Analysis: _ARFailure :: forall e_aAxw r_aziN e_aziM. Prism (AnalysisResult e_aAxw r_aziN) (AnalysisResult e_aziM r_aziN) (Origin, e_aAxw) (Origin, e_aziM)
- Camfort.Analysis: _ARSuccess :: forall e_ayPM r_ayPN r_aA4m. Prism (AnalysisResult e_ayPM r_aA4m) (AnalysisResult e_ayPM r_ayPN) r_aA4m r_ayPN
+ Camfort.Analysis: _ARSuccess :: forall e_aziM r_aAxD r_aziN. Prism (AnalysisResult e_aziM r_aAxD) (AnalysisResult e_aziM r_aziN) r_aAxD r_aziN
- Camfort.Analysis: arMessages :: forall e_aA4z w_aA4A r_aA4B w_aAf4. Lens (AnalysisReport e_aA4z w_aA4A r_aA4B) (AnalysisReport e_aA4z w_aAf4 r_aA4B) [SomeMessage e_aA4z w_aA4A] [SomeMessage e_aA4z w_aAf4]
+ Camfort.Analysis: arMessages :: forall e_aAxQ w_aAxR r_aAxS w_aAIl. Lens (AnalysisReport e_aAxQ w_aAxR r_aAxS) (AnalysisReport e_aAxQ w_aAIl r_aAxS) [SomeMessage e_aAxQ w_aAxR] [SomeMessage e_aAxQ w_aAIl]
- Camfort.Analysis: arResult :: forall e_aA4z w_aA4A r_aA4B r_aAf5. Lens (AnalysisReport e_aA4z w_aA4A r_aA4B) (AnalysisReport e_aA4z w_aA4A r_aAf5) (AnalysisResult e_aA4z r_aA4B) (AnalysisResult e_aA4z r_aAf5)
+ Camfort.Analysis: arResult :: forall e_aAxQ w_aAxR r_aAxS r_aAIm. Lens (AnalysisReport e_aAxQ w_aAxR r_aAxS) (AnalysisReport e_aAxQ w_aAxR r_aAIm) (AnalysisResult e_aAxQ r_aAxS) (AnalysisResult e_aAxQ r_aAIm)
- Camfort.Analysis.Logger: _MsgDebug :: forall e_ahFL w_ahFM. Prism' (SomeMessage e_ahFL w_ahFM) (LogMessage Text)
+ Camfort.Analysis.Logger: _MsgDebug :: forall e_ai1y w_ai1z. Prism' (SomeMessage e_ai1y w_ai1z) (LogMessage Text)
- Camfort.Analysis.Logger: _MsgError :: forall e_ahFL w_ahFM e_ahRd. Prism (SomeMessage e_ahRd w_ahFM) (SomeMessage e_ahFL w_ahFM) (LogMessage e_ahRd) (LogMessage e_ahFL)
+ Camfort.Analysis.Logger: _MsgError :: forall e_aid4 w_ai1z e_ai1y. Prism (SomeMessage e_aid4 w_ai1z) (SomeMessage e_ai1y w_ai1z) (LogMessage e_aid4) (LogMessage e_ai1y)
- Camfort.Analysis.Logger: _MsgInfo :: forall e_ahFL w_ahFM. Prism' (SomeMessage e_ahFL w_ahFM) (LogMessage Text)
+ Camfort.Analysis.Logger: _MsgInfo :: forall e_ai1y w_ai1z. Prism' (SomeMessage e_ai1y w_ai1z) (LogMessage Text)
- Camfort.Analysis.Logger: _MsgWarn :: forall e_ahFL w_ahFM w_ahRk. Prism (SomeMessage e_ahFL w_ahRk) (SomeMessage e_ahFL w_ahFM) (LogMessage w_ahRk) (LogMessage w_ahFM)
+ Camfort.Analysis.Logger: _MsgWarn :: forall e_ai1y w_aidb w_ai1z. Prism (SomeMessage e_ai1y w_aidb) (SomeMessage e_ai1y w_ai1z) (LogMessage w_aidb) (LogMessage w_ai1z)
- Camfort.Analysis.Logger: lmMsg :: forall a_agoA a_ahFv. Lens (LogMessage a_agoA) (LogMessage a_ahFv) a_agoA a_ahFv
+ Camfort.Analysis.Logger: lmMsg :: forall a_agJU a_ai1i. Lens (LogMessage a_agJU) (LogMessage a_ai1i) a_agJU a_ai1i
- Camfort.Analysis.Logger: lmOrigin :: forall a_agoA. Lens' (LogMessage a_agoA) (Maybe Origin)
+ Camfort.Analysis.Logger: lmOrigin :: forall a_agJU. Lens' (LogMessage a_agJU) (Maybe Origin)
- Camfort.Specification.Hoare.Annotation: hoarePUName :: forall a_a15CM. Lens' (HoareAnnotation a_a15CM) (Maybe ProgramUnitName)
+ Camfort.Specification.Hoare.Annotation: hoarePUName :: forall a_a166e. Lens' (HoareAnnotation a_a166e) (Maybe ProgramUnitName)
- Camfort.Specification.Hoare.Annotation: hoarePrevAnnotation :: forall a_a15CM a_a15Lm. Lens (HoareAnnotation a_a15CM) (HoareAnnotation a_a15Lm) a_a15CM a_a15Lm
+ Camfort.Specification.Hoare.Annotation: hoarePrevAnnotation :: forall a_a166e a_a16eI. Lens (HoareAnnotation a_a166e) (HoareAnnotation a_a16eI) a_a166e a_a16eI
- Camfort.Specification.Hoare.Annotation: hoareSod :: forall a_a15CM. Lens' (HoareAnnotation a_a15CM) (Maybe (SpecOrDecl InnerHA))
+ Camfort.Specification.Hoare.Annotation: hoareSod :: forall a_a166e. Lens' (HoareAnnotation a_a166e) (Maybe (SpecOrDecl InnerHA))
- Camfort.Specification.Hoare.Syntax: _SodDecl :: forall ann_aRGk. Prism' (SpecOrDecl ann_aRGk) (AuxDecl ann_aRGk)
+ Camfort.Specification.Hoare.Syntax: _SodDecl :: forall ann_aS3K. Prism' (SpecOrDecl ann_aS3K) (AuxDecl ann_aS3K)
- Camfort.Specification.Hoare.Syntax: _SodSpec :: forall ann_aRGk. Prism' (SpecOrDecl ann_aRGk) (PrimSpec ann_aRGk)
+ Camfort.Specification.Hoare.Syntax: _SodSpec :: forall ann_aS3K. Prism' (SpecOrDecl ann_aS3K) (PrimSpec ann_aS3K)
- Camfort.Specification.Hoare.Syntax: _Specification :: forall a_aRGn a_aSLk. Iso (Specification a_aSLk) (Specification a_aRGn) (SpecKind, a_aSLk) (SpecKind, a_aRGn)
+ Camfort.Specification.Hoare.Syntax: _Specification :: forall a_aT8K a_aS3N. Iso (Specification a_aT8K) (Specification a_aS3N) (SpecKind, a_aT8K) (SpecKind, a_aS3N)
- Camfort.Specification.Hoare.Syntax: adName :: forall ann_aRGm. Lens' (AuxDecl ann_aRGm) Name
+ Camfort.Specification.Hoare.Syntax: adName :: forall ann_aS3M. Lens' (AuxDecl ann_aS3M) Name
- Camfort.Specification.Hoare.Syntax: adTy :: forall ann_aRGm ann_aSK7. Lens (AuxDecl ann_aRGm) (AuxDecl ann_aSK7) (TypeSpec ann_aRGm) (TypeSpec ann_aSK7)
+ Camfort.Specification.Hoare.Syntax: adTy :: forall ann_aS3M ann_aT7x. Lens (AuxDecl ann_aS3M) (AuxDecl ann_aT7x) (TypeSpec ann_aS3M) (TypeSpec ann_aT7x)
- Camfort.Specification.Hoare.Syntax: specFormula :: forall a_aRGn a_aSIU. Lens (Specification a_aRGn) (Specification a_aSIU) a_aRGn a_aSIU
+ Camfort.Specification.Hoare.Syntax: specFormula :: forall a_aS3N a_aT6k. Lens (Specification a_aS3N) (Specification a_aT6k) a_aS3N a_aT6k
- Camfort.Specification.Hoare.Syntax: specType :: forall a_aRGn. Lens' (Specification a_aRGn) SpecKind
+ Camfort.Specification.Hoare.Syntax: specType :: forall a_aS3N. Lens' (Specification a_aS3N) SpecKind
- Language.Fortran.Model.Repr.Prim: prhKind :: forall a_a1VYH. Lens' (PrimReprHandler a_a1VYH) Kind
+ Language.Fortran.Model.Repr.Prim: prhKind :: forall a_a1Woz. Lens' (PrimReprHandler a_a1Woz) Kind
- Language.Fortran.Model.Repr.Prim: prhLiteral :: forall a_a1VYH a_a1W9b. Lens (PrimReprHandler a_a1VYH) (PrimReprHandler a_a1W9b) (a_a1VYH -> SVal) (a_a1W9b -> SVal)
+ Language.Fortran.Model.Repr.Prim: prhLiteral :: forall a_a1Woz a_a1Wz3. Lens (PrimReprHandler a_a1Woz) (PrimReprHandler a_a1Wz3) (a_a1Woz -> SVal) (a_a1Wz3 -> SVal)
- Language.Fortran.Model.Repr.Prim: prhSymbolic :: forall a_a1VYH. Lens' (PrimReprHandler a_a1VYH) (String -> Symbolic SVal)
+ Language.Fortran.Model.Repr.Prim: prhSymbolic :: forall a_a1Woz. Lens' (PrimReprHandler a_a1Woz) (String -> Symbolic SVal)
- Language.Fortran.Model.Singletons: [BasicTypeMaxSym0KindInference] :: SameKind (Apply BasicTypeMaxSym0 arg_a1AeK) (BasicTypeMaxSym1 arg_a1AeK) => BasicTypeMaxSym0 a6989586621679387419
+ Language.Fortran.Model.Singletons: [BasicTypeMaxSym0KindInference] :: SameKind (Apply BasicTypeMaxSym0 arg_a1AE8) (BasicTypeMaxSym1 arg_a1AE8) => BasicTypeMaxSym0 a6989586621679388993
- Language.Fortran.Model.Singletons: [BasicTypeMaxSym1KindInference] :: SameKind (Apply (BasicTypeMaxSym1 a6989586621679387419) arg_a1AeK) (BasicTypeMaxSym2 a6989586621679387419 arg_a1AeK) => BasicTypeMaxSym1 a6989586621679387419 a6989586621679387420
+ Language.Fortran.Model.Singletons: [BasicTypeMaxSym1KindInference] :: SameKind (Apply (BasicTypeMaxSym1 a6989586621679388993) arg_a1AE8) (BasicTypeMaxSym2 a6989586621679388993 arg_a1AE8) => BasicTypeMaxSym1 a6989586621679388993 a6989586621679388994
- Language.Fortran.Model.Singletons: [PrecMaxSym0KindInference] :: SameKind (Apply PrecMaxSym0 arg_a1AeV) (PrecMaxSym1 arg_a1AeV) => PrecMaxSym0 a6989586621679387430
+ Language.Fortran.Model.Singletons: [PrecMaxSym0KindInference] :: SameKind (Apply PrecMaxSym0 arg_a1AEj) (PrecMaxSym1 arg_a1AEj) => PrecMaxSym0 a6989586621679389004
- Language.Fortran.Model.Singletons: [PrecMaxSym1KindInference] :: SameKind (Apply (PrecMaxSym1 a6989586621679387430) arg_a1AeV) (PrecMaxSym2 a6989586621679387430 arg_a1AeV) => PrecMaxSym1 a6989586621679387430 a6989586621679387431
+ Language.Fortran.Model.Singletons: [PrecMaxSym1KindInference] :: SameKind (Apply (PrecMaxSym1 a6989586621679389004) arg_a1AEj) (PrecMaxSym2 a6989586621679389004 arg_a1AEj) => PrecMaxSym1 a6989586621679389004 a6989586621679389005
- Language.Fortran.Model.Singletons: data BasicTypeMaxSym0 a6989586621679387419
+ Language.Fortran.Model.Singletons: data BasicTypeMaxSym0 a6989586621679388993
- Language.Fortran.Model.Singletons: data BasicTypeMaxSym1 a6989586621679387419 a6989586621679387420
+ Language.Fortran.Model.Singletons: data BasicTypeMaxSym1 a6989586621679388993 a6989586621679388994
- Language.Fortran.Model.Singletons: data PrecMaxSym0 a6989586621679387430
+ Language.Fortran.Model.Singletons: data PrecMaxSym0 a6989586621679389004
- Language.Fortran.Model.Singletons: data PrecMaxSym1 a6989586621679387430 a6989586621679387431
+ Language.Fortran.Model.Singletons: data PrecMaxSym1 a6989586621679389004 a6989586621679389005
- Language.Fortran.Model.Singletons: sBasicTypeMax :: forall (t_a1Az3 :: BasicType) (t_a1Az4 :: BasicType). Sing t_a1Az3 -> Sing t_a1Az4 -> Sing (Apply (Apply BasicTypeMaxSym0 t_a1Az3) t_a1Az4 :: BasicType)
+ Language.Fortran.Model.Singletons: sBasicTypeMax :: forall (t_a1AYr :: BasicType) (t_a1AYs :: BasicType). Sing t_a1AYr -> Sing t_a1AYs -> Sing (Apply (Apply BasicTypeMaxSym0 t_a1AYr) t_a1AYs :: BasicType)
- Language.Fortran.Model.Singletons: sPrecMax :: forall (t_a1Az7 :: Precision) (t_a1Az8 :: Precision). Sing t_a1Az7 -> Sing t_a1Az8 -> Sing (Apply (Apply PrecMaxSym0 t_a1Az7) t_a1Az8 :: Precision)
+ Language.Fortran.Model.Singletons: sPrecMax :: forall (t_a1AYv :: Precision) (t_a1AYw :: Precision). Sing t_a1AYv -> Sing t_a1AYw -> Sing (Apply (Apply PrecMaxSym0 t_a1AYv) t_a1AYw :: Precision)
- Language.Fortran.Model.Singletons: type BasicTypeMaxSym2 (a6989586621679387419 :: BasicType) (a6989586621679387420 :: BasicType) = BasicTypeMax a6989586621679387419 a6989586621679387420 :: BasicType
+ Language.Fortran.Model.Singletons: type BasicTypeMaxSym2 (a6989586621679388993 :: BasicType) (a6989586621679388994 :: BasicType) = BasicTypeMax a6989586621679388993 a6989586621679388994 :: BasicType
- Language.Fortran.Model.Singletons: type PrecMaxSym2 (a6989586621679387430 :: Precision) (a6989586621679387431 :: Precision) = PrecMax a6989586621679387430 a6989586621679387431 :: Precision
+ Language.Fortran.Model.Singletons: type PrecMaxSym2 (a6989586621679389004 :: Precision) (a6989586621679389005 :: Precision) = PrecMax a6989586621679389004 a6989586621679389005 :: Precision
- Language.Fortran.Model.Singletons: type family Equals_6989586621679388673 a_a1Az1 b_a1Az2
+ Language.Fortran.Model.Singletons: type family Equals_6989586621679390247 a_a1AYp b_a1AYq
- Language.Fortran.Model.Translate: tiAttributes :: forall ann_a3n1c. Lens' (TypeInfo ann_a3n1c) (Maybe (AList Attribute ann_a3n1c))
+ Language.Fortran.Model.Translate: tiAttributes :: forall ann_a3nrv. Lens' (TypeInfo ann_a3nrv) (Maybe (AList Attribute ann_a3nrv))
- Language.Fortran.Model.Translate: tiBaseType :: forall ann_a3n1c. Lens' (TypeInfo ann_a3n1c) BaseType
+ Language.Fortran.Model.Translate: tiBaseType :: forall ann_a3nrv. Lens' (TypeInfo ann_a3nrv) BaseType
- Language.Fortran.Model.Translate: tiDeclaratorLength :: forall ann_a3n1c. Lens' (TypeInfo ann_a3n1c) (Maybe (Expression ann_a3n1c))
+ Language.Fortran.Model.Translate: tiDeclaratorLength :: forall ann_a3nrv. Lens' (TypeInfo ann_a3nrv) (Maybe (Expression ann_a3nrv))
- Language.Fortran.Model.Translate: tiDimensionDeclarators :: forall ann_a3n1c. Lens' (TypeInfo ann_a3n1c) (Maybe (AList DimensionDeclarator ann_a3n1c))
+ Language.Fortran.Model.Translate: tiDimensionDeclarators :: forall ann_a3nrv. Lens' (TypeInfo ann_a3nrv) (Maybe (AList DimensionDeclarator ann_a3nrv))
- Language.Fortran.Model.Translate: tiSelectorKind :: forall ann_a3n1c. Lens' (TypeInfo ann_a3n1c) (Maybe (Expression ann_a3n1c))
+ Language.Fortran.Model.Translate: tiSelectorKind :: forall ann_a3nrv. Lens' (TypeInfo ann_a3nrv) (Maybe (Expression ann_a3nrv))
- Language.Fortran.Model.Translate: tiSelectorLength :: forall ann_a3n1c. Lens' (TypeInfo ann_a3n1c) (Maybe (Expression ann_a3n1c))
+ Language.Fortran.Model.Translate: tiSelectorLength :: forall ann_a3nrv. Lens' (TypeInfo ann_a3nrv) (Maybe (Expression ann_a3nrv))
- Language.Fortran.Model.Translate: tiSrcSpan :: forall ann_a3n1c. Lens' (TypeInfo ann_a3n1c) SrcSpan
+ Language.Fortran.Model.Translate: tiSrcSpan :: forall ann_a3nrv. Lens' (TypeInfo ann_a3nrv) SrcSpan

Files

CHANGELOG.md view
@@ -1,3 +1,7 @@+## 1.1.0 (July 06, 2021)++* Update fortran-src+ ## 1.0.1 (March 08, 2021)  * Update fortran-src, verifiable-expressions versions
camfort.cabal view
@@ -1,13 +1,11 @@ cabal-version: 1.12 --- This file has been generated from package.yaml by hpack version 0.33.0.+-- This file has been generated from package.yaml by hpack version 0.34.4. -- -- see: https://github.com/sol/hpack------ hash: f20fef0bb3b68d25b23be09a7e5d81ecbc6c11a1fdbf47381807b55a5043774b  name:           camfort-version:        1.0.1+version:        1.1.0 synopsis:       CamFort - Cambridge Fortran infrastructure description:    CamFort is a tool for the analysis, transformation, verification of Fortran code. category:       Language@@ -19,8 +17,9 @@ copyright:      2012-2019 University of Cambridge license:        Apache-2.0 license-file:   LICENSE-tested-with:    GHC >= 8.6 build-type:     Simple+tested-with:+    GHC >= 8.6 extra-source-files:     tests/fixtures/Specification/Stencils/example10.expected.f     tests/fixtures/Specification/Stencils/example10.f@@ -190,26 +189,26 @@     , binary >=0.8.3.0 && <0.11     , bytestring >=0.10 && <0.12     , containers >=0.5.0.0 && <0.7-    , deepseq >=1.4 && <1.5+    , deepseq ==1.4.*     , directory >=1.2 && <1.4     , fgl >=5.6 && <5.8-    , filepath >=1.4 && <1.5-    , fortran-src >=0.4 && <0.5-    , ghc-prim >=0.3.1.0 && <0.7-    , hmatrix >=0.20 && <0.21+    , filepath ==1.4.*+    , fortran-src ==0.5.*+    , ghc-prim >=0.3.1.0 && <0.8+    , hmatrix ==0.20.*     , lattices >=2.0.0 && <2.1     , lens >=4.15.1 && <6     , matrix >=0.2.2 && <0.4     , mmorph >=1.0.9 && <2     , mtl >=2.1 && <2.3-    , parallel >=3.2 && <3.3-    , pipes >=4.3 && <4.4+    , parallel ==3.2.*+    , pipes ==4.3.*     , pretty >=1.1 && <2     , sbv >=8.0 && <9-    , singletons >=2.2 && <3+    , singletons >=2.2 && <2.8     , strict >=0.3.2 && <1     , syb >=0.4 && <0.8-    , syz >=0.2 && <0.3+    , syz ==0.2.*     , template-haskell >=2.11 && <3     , text >=0.11.2.3 && <1.3     , transformers >=0.5.5.0 && <0.6@@ -226,7 +225,7 @@       base >=4.6 && <5     , camfort     , directory >=1.2 && <2-    , fortran-src >=0.4 && <0.5+    , fortran-src ==0.5.*     , optparse-applicative >=0.14 && <0.16   default-language: Haskell2010 @@ -272,15 +271,15 @@     , containers >=0.5.0.0 && <0.7     , directory >=1.2 && <2     , fgl >=5.6 && <5.8-    , filepath >=1.4 && <1.5-    , fortran-src >=0.4 && <0.5-    , hmatrix >=0.20 && <0.21+    , filepath ==1.4.*+    , fortran-src ==0.5.*+    , hmatrix ==0.20.*     , hspec >=2.2 && <3     , lattices >=2.0.0 && <2.1-    , lens >=4.15.1 && <5+    , lens >=4.15.1 && <5.1     , mtl >=2.1 && <2.3     , sbv >=8.0 && <9-    , silently >=1.2 && <1.3+    , silently ==1.2.*     , temporary >=1.2.0.4 && <1.4     , text >=0.11.2.3 && <1.3     , time >=1.8 && <1.12
src/Camfort/Analysis/Simple.hs view
@@ -19,6 +19,7 @@ {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE TupleSections #-} {-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE LambdaCase #-}  {- Simple syntactic analysis on Fortran programs -} @@ -53,6 +54,7 @@ import Data.Graph.Inductive  import qualified Language.Fortran.AST as F+import qualified Language.Fortran.Analysis.SemanticTypes as FAS import qualified Language.Fortran.Util.Position as F import qualified Language.Fortran.Analysis as F import qualified Language.Fortran.Analysis.DataFlow as F@@ -229,16 +231,19 @@           candidates :: [F.Expression (F.Analysis a)]           candidates = [ e | e@(F.ExpBinary _ _ op x y) <- universeBi (F.programUnitBody pu)                            , op `elem` [F.EQ, F.NE]-                           , Just (F.IDType (Just bt) _) <- [F.idType (F.getAnnotation x), F.idType (F.getAnnotation y)]-                           , bt `elem` floatingPointTypes ]+                           , Just (F.IDType (Just st) _) <- [F.idType (F.getAnnotation x), F.idType (F.getAnnotation y)]+                           , isFloatingPointType st ]           badEquality = nub [ (F.getName pu, atSpannedInFile file e) | e <- candidates ]    let reports = map checkPU (universeBi pf'')    return $!! mconcat reports -floatingPointTypes :: [F.BaseType]-floatingPointTypes = [F.TypeReal, F.TypeDoubleComplex, F.TypeComplex, F.TypeDoublePrecision]+isFloatingPointType :: FAS.SemType -> Bool+isFloatingPointType = \case+  FAS.TReal    _ -> True+  FAS.TComplex _ -> True+  _              -> False  instance Describe CheckFPReport where   describeBuilder (CheckFPReport {..})
src/Camfort/Helpers/Syntax.hs view
@@ -52,6 +52,7 @@  import qualified Language.Fortran.AST as F import qualified Language.Fortran.Analysis as FA+import qualified Language.Fortran.Analysis.SemanticTypes as FAS import qualified Language.Fortran.Util.Position as FU  -- * Comparison and ordering@@ -95,6 +96,9 @@                  where pos0 = FU.Position 0 0 0 "" Nothing  instance Eq (AnnotationFree F.BaseType) where+    (AnnotationFree x) == (AnnotationFree y) = x == y++instance Eq (AnnotationFree FAS.SemType) where     (AnnotationFree x) == (AnnotationFree y) = x == y  instance Eq (AnnotationFree FA.ConstructType) where
src/Camfort/Specification/Units/Analysis.hs view
@@ -9,6 +9,7 @@ -}  {-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE LambdaCase        #-}  module Camfort.Specification.Units.Analysis   ( UnitAnalysis@@ -54,6 +55,7 @@ import qualified Language.Fortran.AST as F import           Language.Fortran.Analysis (constExp, varName, srcName) import qualified Language.Fortran.Analysis as FA+import qualified Language.Fortran.Analysis.SemanticTypes as FAS import qualified Language.Fortran.Analysis.BBlocks as FAB import qualified Language.Fortran.Analysis.DataFlow as FAD import           Language.Fortran.Parser.Utils (readReal, readInteger)@@ -183,8 +185,8 @@ -- Specifically handle variables insertUndeterminedUnitVar :: DeclMap -> F.Expression UA -> UnitSolver (F.Expression UA) insertUndeterminedUnitVar dmap v@(F.ExpValue _ _ (F.ValVariable _))-  | Just (FA.IDType { FA.idVType = Just bty }) <- FA.idType (F.getAnnotation v)-  , bty `elem` acceptableTypes = do+  | Just (FA.IDType { FA.idVType = Just sty }) <- FA.idType (F.getAnnotation v)+  , isAcceptableType sty = do   let vname = varName v   let sname = srcName v   let unit  = toUnitVar dmap (vname, sname)@@ -202,8 +204,12 @@       _                                                    -> UnitVar (vname, sname)  -- Insert undetermined units annotations on the following types of variables.-acceptableTypes :: [F.BaseType]-acceptableTypes = [F.TypeReal, F.TypeDoublePrecision, F.TypeComplex, F.TypeDoubleComplex, F.TypeInteger]+isAcceptableType :: FAS.SemType -> Bool+isAcceptableType = \case+  FAS.TReal    _ -> True+  FAS.TComplex _ -> True+  FAS.TInteger _ -> True+  _              -> False  -------------------------------------------------- 
src/Camfort/Transformation/CommonBlockElim.hs view
@@ -18,6 +18,7 @@ {-# LANGUAGE PolyKinds #-} {-# LANGUAGE TypeSynonymInstances #-} {-# LANGUAGE MonoLocalBinds #-}+{-# LANGUAGE LambdaCase #-}  module Camfort.Transformation.CommonBlockElim   ( commonElimToModules@@ -39,6 +40,7 @@ import           Data.Void import qualified Language.Fortran.AST as F import qualified Language.Fortran.Analysis as FA+import qualified Language.Fortran.Analysis.SemanticTypes as FAS import qualified Language.Fortran.Analysis.Renaming as FAR import qualified Language.Fortran.Analysis.Types as FAT import qualified Language.Fortran.ParserMonad as PM@@ -50,7 +52,7 @@ -- Tuple of: --     * a (possible) common block name --     * map from names to their types-type TypeInfo = (F.BaseType, FA.ConstructType)+type TypeInfo = (FAS.SemType, FA.ConstructType) type TCommon p = (Maybe F.Name, [(F.Name, TypeInfo)])  -- Typed and "located" common block representation@@ -454,19 +456,19 @@     modname = commonName name     path = dir ++ modname ++ ".f90"     r = "Creating module " ++ modname ++ " at " ++ path ++ "\n"-    mod = mkModule modname varTys modname+    mod = mkModule (F.miVersion meta) modname varTys modname -mkModule :: String -> [(F.Name, TypeInfo)] -> String -> F.ProgramUnit A-mkModule name vtys fname =+mkModule :: PM.FortranVersion -> String -> [(F.Name, TypeInfo)] -> String -> F.ProgramUnit A+mkModule v name vtys fname =     F.PUModule a sp (caml fname) decls Nothing   where     a = unitAnnotation { refactored = Just loc, newNode = True }     loc = FU.Position 0 0 0 "" Nothing     sp = FU.SrcSpan loc loc     toDeclBlock (v, t) = F.BlStatement a sp Nothing (toStmt (v, t))-    toStmt (v, (bt, ct)) = F.StDeclaration a sp (toTypeSpec bt) attrs (toDeclarator (v, ct))+    toStmt (v, (st, ct)) = F.StDeclaration a sp (typespec st) attrs (toDeclarator (v, ct))     attrs = Just $ F.AList a sp [F.AttrSave a sp]-    toTypeSpec t = F.TypeSpec a sp t Nothing+    typespec = FAS.recoverSemTypeTypeSpec a sp v     toDeclarator (v, FA.CTVariable) = F.AList a sp        [F.DeclVariable a sp           (F.ExpValue a sp (F.ValVariable (caml name ++ "_" ++ v))) Nothing Nothing]