Skip to content
Snippets Groups Projects
  1. May 26, 2009
    • Erwan Jahier's avatar
      Attach the clock of Eff.val_exp to the val_exp itself, instead of · e7ef1b90
      Erwan Jahier authored
      maintaining (ugly and error-prone) hash tables.
      
      That change revealed an untriggered bug in EvalClock.check_args: it was wrong
      to add in subst the substitutions made of the parameters and the arguments (it
      is enough to unify the clocks of the pars and of the args). For instance, consider
      the node (in should_work/clock/clock.lus)
      
         node clock5(x :  bool; y:  bool when x; z: bool when y)
      
      and the call
      
        z2 = clock5(a, b when a, c when e);
      
      I was adding y/b in the subst, which was wrong.
      
      Other minor changes:
       - move const_to_val_eff from Eff to UnifyClock.
       - GetEff.translate_val_exp now returns a substitution, in order to be able
         to unify clock vars and propagate the resulting substitution.
      e7ef1b90
  2. Mar 12, 2009
  3. Mar 11, 2009
  4. Mar 03, 2009
  5. Feb 25, 2009
  6. Feb 11, 2009
    • Erwan Jahier's avatar
      Various fixes for the lv4 backend: · 672af392
      Erwan Jahier authored
       - expr such as "current x,y" should be written "current (x,y)"
       - abstract   struct  or   array   types  were   handled  as   extern
         types, which  prevent the struct  and array expanser to  work them
         out. In order to fix that, I have added an Abstract_type_eff variant
         to Eff.type_ which contains the concerte type.
      672af392
  7. Feb 10, 2009
  8. Feb 06, 2009
  9. Feb 05, 2009
  10. Feb 03, 2009
    • Erwan Jahier's avatar
      The structure and array expanser was buggy in presence of polymorphic · cdb52a14
      Erwan Jahier authored
      nodes (e.g., map<<+,2>>). While fixing  that, I put all the functions
      that deals with polymorphism into a new (Eponymous) dedicated module.
      
      The idea to be able to expand polymorphic node is basically the same,
      as the one for printing polymorphic  nodes: we need to wait until the
      type is instanciated (in GetEff).  That delay is implemented by using
      a stack of nodes.
      cdb52a14
  11. Jan 30, 2009
  12. Dec 08, 2008
Loading