Skip to content
Snippets Groups Projects
  1. Aug 28, 2019
  2. Aug 27, 2019
  3. Aug 23, 2019
  4. Aug 02, 2019
    • Julien Signoles's avatar
    • Julien Signoles's avatar
      [rational] rename Libr to Real · 0324062d
      Julien Signoles authored
      0324062d
    • Julien Signoles's avatar
      11b9381a
    • Fonenantsoa Maurica's avatar
      Extend Interval, Typing and Translate: · ad8d968c
      Fonenantsoa Maurica authored and Julien Signoles's avatar Julien Signoles committed
        - Interval:
          - Not_an_integer -> Is_a_real|Not_a_number.
          - infer -> infer_with_real
            because Not_a_number has priority over Is_a_real
          - Ival.bottom when Is_a_real
            because the interval is for integers
        - Typing:
          - integer_ty -> number_ty=Cty|Gmpz|Libr|Nan
          - Other -> 'Other (Oreal|Onan)'
        - Translate:
          Encode real constants into strings:
            - **NO** conversion to float-point type
            - strnum_ty=StrZ|StrR|Not_a_strnum
              for tracking the type of the string
      Add Libr:
        - Gmpz -> Gmp=Gmpz+Gmpq
        - Libr=ref to Gmpq
      Add Gmpq builtins:
        - Custom mini-gmp -> libgmp
          because mini-gmp has no support for Q
        - Add arithmetic over Q in e_acsl_gmp_api.h
      Misc:
        - dec_to_frac: decimal expansion to fractional representation
          because decimal expansion is interpreted as double by Gmpq
      Tests:
        - BTS 1307 has an assertion wrongly evaluated, fixed
        - Add tests/gmp/reals.c
      THE MOST IMPORTANT TODO:
        - Completely hide the library for numbers (currently Gmp)
          inside Libr: Typing, Env and Translate should only know
          Libr and never directly call Gmp.
          This is crucial for extending E-ACSL in the future
          (eg: Gmp has no support for elementary functions), and
          also for using it as part of an abstract compiler
          (eg: with Fldlib)
          For the time being, in Translate,
          we have something as ugly as:
            let init_set =
              if Libr.is_t ty then Libr.init_set
              else Gmp.init_set
      ad8d968c
    • Julien Signoles's avatar
      Merge branch 'kernel/visitor_behavior' into 'master' · 3a1240c2
      Julien Signoles authored
      Replaces calls to deprecated functions related to Visitor_behavior
      
      See merge request frama-c/e-acsl!295
      3a1240c2
    • François Bobot's avatar
      Update .gitlab-ci.yml · 78f38877
      François Bobot authored
      78f38877
    • François Bobot's avatar
      Update .gitlab-ci.yml · 22aa3c4e
      François Bobot authored
      22aa3c4e
    • Julien Signoles's avatar
      nix · be8b3ed1
      Julien Signoles authored
      be8b3ed1
  5. Jul 15, 2019
Loading