Subject: CVS commit: pkgsrc/lang/sbcl
From: Robert Swindells
Date: 2021-01-18 00:00:18
Message id: 20210117230019.0481DFA9D@cvs.NetBSD.org

Log Message:
Update to version 2.1.0.

Changes since version 2.0.7

New in version 2.1.0

    * minor incompatible change: the MAKE-EA internal function, used
      in the assembler, has been removed (affecting some libraries
      defining their own Virtual Operations)
    * new feature: SB-EXT:PRIMITIVE-OBJECT-SIZE can be used to
      interrogate the low-level size in memory of objects. (#1636910,
      reported by anquegi)
    * platform support:
        * pass required -std argument to the compiler on Solaris
          (#1885751, thanks to Jesse Off)
        * better treatment of non-ASCII program arguments on Windows
          (#1907970, reported by Timofei Shatrov)
        * implement the improved TYPEP with structure types on all
          other supported platforms (32-bit PowerPC, ARM, ARM64, MIPS,
          SPARC, RISC-V)
    * enhancement: stream dispatch (to vanilla ANSI / Gray / Simple
      variants) has been rewritten and optimized, fixing a number of
      bugs including:
        * performance of WRITE-SEQUENCE on composite streams (#309136)
        * handling of CLOSE on SYNONYM-STREAM (#1904257, reported by
          Richard M Kreuter)
        * handling of CLOSE on BROADCAST-STREAM with no components
          (#1904722, reported by Richard M Kreuter)
        * loading SB-SIMPLE-STREAMS breaks functionality of other
          stream classes (#1908132)
        * some excessive consing in READ-LINE
    * enhancements related to RUN-PROGRAM:
        * improved the documentation related to the ARGS argument
          (#806733, reported by mon_key)
        * added a PRESERVE-FDS argument
    * bug fix: ensure that TYPE-OF returns something even on internal
      instances, which may become visible in the debugger. (#1908261,
      reported by Philipp Marek)
    * bug fix: iteration variables established by standard forms
      should always be considered used by the compiler. (#719585,
      reported by Roman Marynchak)
    * bug fix: don't allow compiler transformations to weaken the
      requirement against extended (list-form) function names in
      FUNCALL and related operators. (#310069)
    * bug fix: improve automated version number generation in
      branches. (#897867, thanks to Martin Cracauer)
    * bug fix: add possibly-spurious futex wakes when unwinding from a
      call to futex-wait, to avoid deadlocks from interrupted
      waits. (#1038034)
    * bug fixes in the compiler:
        * error on malformed DESTRUCTURING-BIND (#1738638)
        * error on malformed SPECIAL declaration (#1740756)
        * error from use of VALUES type in COERCE (#1887712)
        * enforcement of FTYPE types involving &OPTIONAL (#1903932)
        * checking for proper-list-ness before applying transforms (#1905512)
        * compilation of LAMBDA form including a malformed DEFUN (#1906056)
        * memory fault from VALUES-related handling in high DEBUG code
          (#1906563)
        * transforms handle explicit NIL arguments in :END arguments
          to SEARCH (#1907924)
    * bug fix: return COMPILED-FUNCTION for TYPE-OF on compiled
      functions. (#1906583)
    * some bugs were also closed in this release cycle as obsolete,
      having been fixed by the passage of time or other change in the
      environment:
        * floating point error reporting on OS X (#309454)
        * load-shared-library not working from non-main threads on OS
          X (#592425)
    * optimization: CONSTANTLY on constant arguments returns a more
      efficient function. (#1852585)
    * optimization: perform fewer Lisp/Alien representation
      conversions in callbacks.
    * optimization: perform fewer redundant widetag tests when doing
      type tests of complicated union types.
    * optimization: signed-integer division on machine-word sized
      operands is now implemented using multiplication, affecting
      TRUNCATE, FLOOR, CEILING, MOD and REM. (This optimization was
      already performed on unsigned-integer division)

New in version 2.0.11

    * minor incompatible change: (ARRAY NIL (*)) is not a subtype of
      STRING, as is consistent with a majority of maintained CL
      implementations.
    * minor incompatible change: ARRAY-RANK-LIMIT is decreased from
      65529 to 256
    * optimization: TYPEP on structure types is faster and more
      compact on x86[-64] and ppc64.
    * optimization: LOGCOUNT is faster on arm64.
    * optimization: SIGNUM can be inlined if its argument type is
      known. (#1903533)
    * bug fix: compiler crash in tail call handling. (#1903938)
    * bug fix: crash in traceroot. (#1903419, reported by Michal Herda)
    * bug fix: DESCRIBE called with a string as second argument no
      longer mutates that string. (#1903901, reported by Michal Herda)
    * bug fix: stack clobbering by 256-bit SIMD packs on
      x86-64. (#1901685, reported by Marco Heisig)

New in version 2.0.10

    * minor incompatible change: the funarg given to
      SB-SPROF:MAP-TRACES does not receive a wallclock time with each
      trace.
    * minor incompatible change: INTERNAL-TIME-UNITS-PER-SECOND has
      been increased to 10^6 on 64-bit architectures.
    * minor incompatible change: SIGPIPE is ignored by default again. (#1897624)
    * minor incompatible change: the system code compiled under the
      :LINKAGE-TABLE feature is now unconditionally compiled in, and
      the corresponding entry in *FEATURES* has been removed.
    * enhancement: style-warnings are issued for variables which have
      an assignment but no "for-value reference" (per CLHS glossary
      entry)
    * bug fix: SB-CLTL2:MACROEXPAND-ALL did not expand
      MULTIPLE-VALUE-BIND and MULTIPLE-VALUE-SETQ
    * bug fix: CPUID-based feature detection had an index/mask
      confusion (#1899239)
    * bug fix: fix a deadlock on Windows (#1896802)
    * bug fix: eliminate type errors when wall clocks go back
      (#1028026, #1032111)
    * bug fix: fix EOF handling in read-char-no-hang on concatenenated
      streams (#690408, reported by Willem Broekema)
    * bug fix: fix MAP-INTO on extended sequences (#1855375, thanks to
      James Kalenius)
    * bug fix: SB-GMP can now raise -1, 0 and 1 to the power of a
      bignum. (thanks to Aaron Chen)
    * bug fixes in tests:
        * add a C function declaration (#1897627, thanks to Bob Felts)
        * parse vmmap output more liberally (#1897722, reported by Bob Felts)

New in version 2.0.9

    * incompatible change: HPPA and DEC Alpha architecture support has
      been removed.
    * minor incompatible change: the compiler signals a warning at
      compile-time when an initform of T, NIL or 0 does not match a
      STANDARD-CLASS slot's declared type.
    * minor incompatible change: the runtime no longer uses SIGPIPE
      internally, so the signal is deliverable to user code as is
      customary. Ignoring the signal - in lieu of the OS default of
      process termination - is obtainable via (SB-SYS:ENABLE-INTERRUPT
      SB-UNIX:SIGPIPE :IGNORE).
    * platform support:
        * a number of obsolete portability layers (particularly on the
          Windows platform) have been removed in favour of direct
          calling of the native interfaces.
        * RUN-PROGRAM now accepts a :WINDOW argument to control
          whether a subprocess window should be displayed. (Thanks to
          Luis Borges de Oliveira)
        * the use of futexes implied by :SB-FUTEX is now implemented on FreeBSD.
    * bug fix: SB-SPROF can distinguish between SBCL-internal assembly routines.
    * bug fix: SB-SPROF has better output in its reports for anonymous
      functions.
    * optimization: CALL-NEXT-METHOD with supplied arguments in
      required positions is now faster if the supplied arguments are
      EQL to the original arguments.

New in version 2.0.8

    * platform support:
        * added support for NetBSD/aarch64;
        * threads on Linux now have OS-visible names;
        * removed unnecessary emulation of pthread functions on Windows;
        * work around a sigwait() bug on Mac OS X;
        * allow safepoint build on Mac OS X, though it probably
          doesn't work very well (reported by Chris Wagner, #1382811)
        * removed stub support for HPUX.
    * optimization: SB-THREAD:MAKE-THREAD is faster on most platforms.
    * optimization: faster RATIONAL when the result is a RATIO.
    * optimization: improved cross-type comparisons (float/ratio/bignum).
    * bug fix: EQUALP on pathnames was wrong
    * bug fixes: fix compiler issues in:
        * COUNT (#1889391)
        * VECTOR-LENGTH (#1888919)
        * constant-folding (#1888384)
        * FIND and POSITION (#1887316)

Files:
RevisionActionfile
1.90modifypkgsrc/lang/sbcl/Makefile
1.66modifypkgsrc/lang/sbcl/distinfo
1.4modifypkgsrc/lang/sbcl/patches/patch-src_runtime_run-program.c