1. 21 Mar, 2021 4 commits
  2. 20 Mar, 2021 3 commits
  3. 18 Mar, 2021 2 commits
    • Marius Gerbershagen's avatar
      cmp: fix evaluation order of multiple-value-setq with symbol-macrolet · b1ea49e1
      Marius Gerbershagen authored
      If a variable which is set with multiple-value-setq is bound to a
      symbol-macro, we need to handle the order of side-effects as in setf.
      
      Previously, we were first evaluating the value generating form
      of the multiple-value-setq before setting the places from the
      symbol-macro. The correct order is to first evaluate the forms from
      the symbol macro giving the places to set, then evaluate the value
      generating form from the multiple-value-setq and then set the places
      to the generated values.
      b1ea49e1
    • Marius Gerbershagen's avatar
      cmp: fix (values (values)) · 80c53f0e
      Marius Gerbershagen authored
      This must return nil as a single value while we were returning no
      values.
      80c53f0e
  4. 12 Mar, 2021 1 commit
  5. 11 Mar, 2021 1 commit
    • Marius Gerbershagen's avatar
      cmp: be more strict with symbol-macrolet · e466823a
      Marius Gerbershagen authored
      The ansi standard specifies that declaring symbols bound with
      symbol-macrolet to be special or binding symbols that are defined as
      global variables must signal a program-error. Previously, we simply
      ignored this issues.
      
      Also fix an issue with cmp-env-search-variables which would wrongly
      return variables when searching for symbol macros. This allows us to
      remove another check in symbol-macro-declaration-p.
      e466823a
  6. 10 Mar, 2021 1 commit
  7. 07 Mar, 2021 2 commits
    • Marius Gerbershagen's avatar
      cl_parse_key: correctly handle literal allow-other-keys keyword arguments · a7e1bf6c
      Marius Gerbershagen authored
      When parsing keyword arguments of functions like
      
      (defun f (&key allow-other-keys) allow-other-keys)
      
      (note that `&key allow-other-keys` is not `&allow-other-keys`!), we
      were incorrectly handling the case in which this function was called
      like
      
      (f :some-unknown-keyword x :allow-other-keys non-nil-value)
      
      In this case, the spec (CLHS 3.4.1.4) says that the function has to
      ignore the unknown keyword and return the non-nil-value, while we were
      signaling an "unknown keyword" error.
      a7e1bf6c
    • Marius Gerbershagen's avatar
      interpreter: simplify handling of :allow-other-keys parsing a bit · 3ec1ed2c
      Marius Gerbershagen authored
      Get rid of the unnecessary mask (which wouldn't have worked correctly
      anyway if somebody passed more than 32 :allow-other-keys arguments).
      3ec1ed2c
  8. 04 Mar, 2021 2 commits
  9. 03 Mar, 2021 2 commits
  10. 27 Feb, 2021 1 commit
  11. 23 Feb, 2021 1 commit
  12. 15 Feb, 2021 1 commit
  13. 14 Feb, 2021 2 commits
  14. 13 Feb, 2021 4 commits
  15. 10 Feb, 2021 4 commits
    • Marius Gerbershagen's avatar
      7ddb4ada
    • Marius Gerbershagen's avatar
      tests: fix mix.0016.fifo-tests · f0afa57b
      Marius Gerbershagen authored
      Use new :nonblock open flag, only test standard POSIX
      behaviour (POSIX leaves it undefined what happens when
      opening a fifo for writing in nonblocking mode while
      there are no readers available. Previously we were
      testing for behaviour as implemented by Linux).
      
      Windows has no equivalent of a named pipe that can be
      opened like a regular file, thus we disable the test
      there.
      f0afa57b
    • Marius Gerbershagen's avatar
      file.d: introduce :nonblock and :close-on-exec options for open · da26facf
      Marius Gerbershagen authored
      Maps directly to flags for open syscall. Ignored on Windows. We now
      let the user decide whether to open fifos in nonblocking mode or not.
      Manual has been extended to document the new extensions and slightly
      rearranged to put the important information first.
      da26facf
    • Marius Gerbershagen's avatar
      file.d: clean up ecl_stream_open · 3827daf4
      Marius Gerbershagen authored
      Previous implementation was messy and contained several race
      conditions (multiple open/close operations on the same file, first
      checking whether the file exists before opening it). We now always use
      a single open call and then optionally do an fdopen later
      on (exception being :rename which contains an unavoidable race
      condition between checking whether the file exists and then renaming
      it later on). Also improve error messages.
      3827daf4
  16. 06 Feb, 2021 1 commit
    • Florian Margaine's avatar
      improve makefiles · f914171e
      Florian Margaine authored and Marius Gerbershagen's avatar Marius Gerbershagen committed
      Fix copy of header files. This was accidentally working thanks to the
      `cp -rf $(srcdir)/h/*.h` that existed, but it means that editing any
      header file (except the internal.h one) would not recompile
      appropriately.
      
      Replace deprecated suffix rules with modern equivalents, list header
      files as dependencies for .d files.
      f914171e
  17. 30 Jan, 2021 2 commits
  18. 29 Jan, 2021 1 commit
  19. 24 Jan, 2021 2 commits
  20. 16 Jan, 2021 2 commits
  21. 02 Jan, 2021 1 commit