Skip to content
Snippets Groups Projects
This project is mirrored from https://www-csr.bessy.de/control/SoftDist/sequencer/repo/branch-2-2.git. Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer or owner.
Last successful update .
  1. Oct 27, 2013
  2. Oct 17, 2013
    • benjamin.franksen's avatar
      snc: restructured parsing of types · 971a23dc
      benjamin.franksen authored
      We now build normal syntax nodes during parsing, re-using node types from
      the expression syntax (E_VAR, E_BINOP, E_PRE, E_SUBSCR, E_FUNC). Together
      with the recent change in generating types, this means we no longer need the
      backward parent links in the type structure. Most of the code in var_types.c
      is now much easier to understand and modify.
      
      Also made the tentative change to represent "const" not as a type node with
      a child pointer, but rather with a boolean flag. This is in anticipation of
      adding the "pv" type operator in the hope that using yet another flag to
      represent it will make analysis of a type easier. It could well be that I
      revert this change if it turns out that this makes things more difficult. A
      first indication is that in var_types.c this already complicates some of the
      routines. So I left most of the T_CONST cases in there, only disabled them
      with #if 0...#endif.
      971a23dc
  3. Oct 14, 2013
  4. Oct 13, 2013
  5. Oct 09, 2013
    • benjamin.franksen's avatar
    • benjamin.franksen's avatar
      snc: removed keyword "connect" (alias for assign) · a32a34b8
      benjamin.franksen authored
      There are three reasons for this move:
      - the change in terminology never cought on
      - it causes unnecessary naming conflicts, especially now since many more
        things that previously were in escaed C code can now be coded in SNL
      - the next version will introduce new and better syntax for this anyway
      a32a34b8
    • benjamin.franksen's avatar
      snc: re-factored and polished function definitions · dff3aa9a
      benjamin.franksen authored
      This came out of the desire to allow function definitions intermixed
      with c code and other definitions, and not only at the end of the
      program but also in the initial definition section. Some amount of
      re-factoring was necessary in the analysis part to make this possible,
      since previously we had only one definition list per scope and now the
      program has two. More changes were needed in the code generation, mostly
      to pick apart the stuff that the parser now mixes together, and also to
      beautify the generated code. The separate declarations for function
      definitions are no longer in the header file; they are static anyway.
      
      One difference in behaviour is that now the extra escaped C code
      sections at the end of a program are paced *before* the state set code.
      The advantage is that extra prototypes are no longer needed (except if
      the functions call each other resursively). This change should not break
      existing programs, since C functions cannot call state set functions. 
      dff3aa9a
  6. Oct 08, 2013
  7. Oct 07, 2013
  8. Oct 05, 2013
  9. Oct 04, 2013
    • benjamin.franksen's avatar
      snc: deprecated foreign declarations · 0601a21c
      benjamin.franksen authored
      Foreign declarations have been a bad idea. This became clear after
      implementing indirect calls, because as a consequence you get 'used but
      not declared' warnings for calls to foreign functions, too. I could
      'fix' that with a bit of effort, but that would be misplaced. The C
      compiler will warn about undeclared variables and functions anyway, so
      why bother? If you really want to know, perhaps for debugging, use -W
      option for extra warnings. If you do, you'll now get the more precise
      waring 'treating undeclared object xxx as foreign'.
      0601a21c
  10. Oct 02, 2013
  11. Sep 28, 2013
  12. Sep 24, 2013
    • benjamin.franksen's avatar
      snc: new syntax nodes for struct or union member selection · b0a2ebb0
      benjamin.franksen authored
      Members are no longer identified with variables in the syntax. Member
      selection "operators" ('.' and '->') are no longer treated as binary
      operators. Instead, member selection gets a new syntax node type E_SELECT,
      and members (only allowed as rhs of a member selection) are not E_VAR, but
      E_MEMBER. This all works because members are not first class in C, that is
      "x.(name)" is a syntax error.
      
      This is a simple solution for the recurring annoyance of snc issuing
      "undefined variable" warnings.
      
      Declaring members in a foreign declaration becomes obsolete.
      b0a2ebb0
    • benjamin.franksen's avatar
      snc: added sizeof · 1868c7e1
      benjamin.franksen authored
      1868c7e1
  13. May 12, 2013
  14. Jun 11, 2012
  15. Jun 08, 2012
  16. Jun 04, 2012
  17. May 14, 2012
  18. Jan 08, 2012
  19. Aug 22, 2011
  20. Aug 05, 2011
  21. May 24, 2011
  22. May 20, 2011
    • benjamin.franksen's avatar
      snc: allow syncq w/o associated event flag · 15b9cb65
      benjamin.franksen authored
      Associating a queue with an event flag is unnecessary. An event
      flag can be sync'ed with the variable or not; we can regard
      the old form for the syncq clause as syntactic sugar for the new
      form plus an additional sync clause.
      15b9cb65
  23. Apr 09, 2011
    • ben.franksen's avatar
      added exactly sized integer types to compiler and runtime · e6fa3254
      ben.franksen authored
      These types are named like the standard C99 types, but are
      implemented using epicsTypes.h since the C99 inttypes.h cannot
      be assumed to be available on all platforms. We only add
      integer types with sizes up to 32, since 64 bit types are not
      supported by CA and epicsTypes defines them only if C99 is enabled.
      e6fa3254
  24. Apr 02, 2011
  25. Mar 29, 2011
  26. Dec 13, 2010
  27. Nov 18, 2010
Loading