bison-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Preparing 3.4.2


From: Akim Demaille
Subject: Preparing 3.4.2
Date: Sun, 8 Sep 2019 10:25:11 +0200

Hi all,

There have been quite a few fixes since 3.4.1, some of them truly embarrassing 
(the one where diagnostics print tons of spaces).  I think we should make a bug 
fix release, since 3.5 is far from complete.

I have pushed in 'maint' the following commits from the master branch.  Please, 
let me know asap if I should include something else.

Here's the NEWS:

** Bug fixes

  In some cases, when warnings are disabled, bison could emit tons of white
  spaces as diagnostics.

  When running out of memory, bison could crash (found by fuzzing).

  When defining twice the EOF token, bison would crash.



commit cc10f9ab24312ac78313d2cf249c691c9995c948
Author: Akim Demaille <address@hidden>
Date:   Sun Jun 9 08:43:43 2019 +0200

    CI: factor
    
    * .travis.yml (Clang 7 libc++ and ASAN part 2): Reuse bits from "Clang
    7 libc++ and ASAN part 1".

commit feeacc2d57de3b2efd0ef69dd1af947600c53504
Author: Akim Demaille <address@hidden>
Date:   Fri Jun 14 18:30:25 2019 +0200

    CI: avoid useless git costs
    
    Travis answered favorably to my suggestion to provide a means to
    disable git clone on some jobs (issue 7542).  See
    https://docs.travis-ci.com/user/customizing-the-build/#disabling-git-clone.
    
    * .travis.yml: Disable git globally, enable it for i. the compile job,
    and ii. the test job on ICC which needs the install-icc.sh script.

commit de7c66ab41ec24a318c1ae46c3fa1cb05b4c78e0
Author: Akim Demaille <address@hidden>
Date:   Sat Jun 22 08:28:29 2019 +0200

    CI: propagate sftp failures
    
    * .travis.yml (stage: "compile"): here.

commit 2663035ea54d2ed540ed7c2b3728d9e73abe4dc7
Author: Akim Demaille <address@hidden>
Date:   Mon Sep 2 23:22:01 2019 +0200

    CI: fail fast

commit 12c412f6bbd091f71fb0a925d8c265e6ee3aa283
Author: Akim Demaille <address@hidden>
Date:   Mon Sep 2 19:09:58 2019 +0200

    CI: more compilers
    
    * .travis.yml: Bionic is now available, with GCC8.
    GCC7 sanitizers work, but they are too longer: cover only part 1.
    Redefine part 1 and part 2 so that part 1 is really the core of the
    tests: not playing with POSIX and C++ compiler for C code.

commit ed796869bb0f2d0531e0de367737e18ccaf43016
Author: Akim Demaille <address@hidden>
Date:   Sun Sep 1 17:56:38 2019 +0200

    gnulib: update
    
    This update brings file from Gettext 0.20, which is not available on
    the CI yet.
    
    .travis.yml: Adjust.
    Use Bionic now that it's available.

commit 1e452b1553d888ee42643ac591b2627d8de6649f
Author: Akim Demaille <address@hidden>
Date:   Sun Jun 30 19:19:43 2019 +0200

    c++: avoid duplicate definition of YYUSE
    
    Reported by Frank Heckenbach.
    https://lists.gnu.org/archive/html/bug-bison/2019-06/msg00009.html
    
    * data/skeletons/lalr1.cc (b4_shared_declarations): Remove the
    duplicate definition of YYUSE, the other one coming from
    b4_attribute_define.

commit 9c1480467664577982f753414d56c84b67352737
Author: Akim Demaille <address@hidden>
Date:   Sat Jul 6 09:09:51 2019 +0200

    doc: fix inaccuracies wrt --define and --force-define
    
    The doc says that -Dfoo=bar is the same as %define foo "bar".  It is
    not: the quotes are not added (and it makes a difference).
    
    * doc/bison.texi (Tuning the Parser): Fix the definition of -D/-F
    * src/getargs.c (usage): Likewise.

commit 64c1d4662a7fbfeb671d32bfb0f17c752a6ea451
Author: Akim Demaille <address@hidden>
Date:   Fri Aug 9 04:36:55 2019 -0500

    git: ignore files generated in gnulib-po
    
    Because of them, the CI generates "-dirty" tarballs.

commit d1e57ca65ed5de1a9762fc210bd3398a4b0a8be5
Author: László Várady <address@hidden>
Date:   Fri Aug 9 14:24:14 2019 +0200

    diagnostics: fix invalid error message indentation
    
    https://lists.gnu.org/archive/html/bison-patches/2019-08/msg00007.html
    
    When Bison is started with a flag that suppresses warning messages, the
    error_message() function can produce a few gigabytes of indentation
    because of a dangling pointer.
    
    * src/complain.c (error_message): Don't reset indent_ptr here, but...
    (complain_indent): here.
    * tests/diagnostics.at (Indentation with message suppression): Check
    this case.

commit b6f663d73f1cbcc376c6e786621a438df108a40d
Author: László Várady <address@hidden>
Date:   Fri Aug 9 14:24:15 2019 +0200

    diagnostics: avoid global variables
    
    * src/complain.c (indent_ptr): Remove.
    (error_message, complains): Take indent as an argument.
    Adjust callers.

commit 94c6dec284dbf6ddaf8cb236bcfa21d48ed87ddd
Author: Akim Demaille <address@hidden>
Date:   Sat Aug 31 18:07:26 2019 -0500

    check for memory exhaustion
    
    hash_initialize returns NULL when out of memory.  Check for it, and
    die cleanly instead of crashing.
    
    Reported by 江 祖铭 (Zu-Ming Jiang).
    https://lists.gnu.org/archive/html/bug-bison/2019-08/msg00015.html
    
    * src/muscle-tab.c, src/state.c, src/symtab.c, src/uniqstr.c:
    Check the value returned by hash_initialize.

commit 53c505e3a2c3733cbf0360a62b17183c9a5f0c67
Author: Akim Demaille <address@hidden>
Date:   Thu Sep 5 11:38:02 2019 +0200

    gnulib: update
    
    Contains a fix for
    https://lists.gnu.org/archive/html/bug-bison/2019-08/msg00016.html.
    See
    https://lists.gnu.org/archive/html/bug-gnulib/2019-09/msg00005.html.
    Reported by 江 祖铭 (Zu-Ming Jiang).

commit d6012704151ca865f492b4277f6a633702428574
Author: Akim Demaille <address@hidden>
Date:   Fri Sep 6 07:37:26 2019 +0200

    glr.c: initialize vector of bools
    
    The CI, with CC='gcc-7 -fsanitize=undefined,address
    -fno-omit-frame-pointer', reports:
    
        calc.cc:1652:50: runtime error: load of value 190, which is not a valid 
value for type 'bool'
        ../../tests/calc.at:867: cat stderr
        --- expout  2019-09-05 20:30:37.887257545 +0000
        +++ 
/home/travis/build/bison-3.4.1.72-79a1-dirty/_build/tests/testsuite.dir/at-groups/438/stdout
    2019-09-05 20:30:37.887257545 +0000
        @@ -1 +1,2 @@
         syntax error
        +calc.cc:1652:50: runtime error: load of value 190, which is not a 
valid value for type 'bool'
        438. calc.at:867: 438. Calculator glr.cc  (calc.at:867): FAILED 
(calc.at:867)
    
    The problem is that yylookaheadNeeds is not initialized in
    yyinitStateSet, and when it is copied, the value is not 0 or 1.
    
    * data/skeletons/glr.c (yylookaheadNeeds): Initialize yylookaheadNeeds.

commit 97cb2927501cff46c4143887160b49fcf8cb3e8e
Author: Akim Demaille <address@hidden>
Date:   Fri Sep 6 17:47:16 2019 +0200

    tests: check token redeclaration
    
    * src/symtab.c (symbol_class_set): Report previous definitions when
    redeclared.
    * tests/input.at (Symbol redeclared): New.

commit 4ec59bf456dbeebefc0903a338c09ebafdf0d417
Author: Akim Demaille <address@hidden>
Date:   Sat Sep 7 16:32:20 2019 +0200

    fix: don't die when EOF token is defined twice
    
    With
    
        %token EOF 0 EOF 0
    
    we get
    
        input.y:3.14-16: warning: symbol EOF redeclared [-Wother]
            3 | %token EOF 0 EOF 0
              |              ^~~
        input.y:3.8-10: previous declaration
            3 | %token EOF 0 EOF 0
              |        ^~~
        Assertion failed: (nsyms == ntokens + nvars), function 
check_and_convert_grammar,
            file /Users/akim/src/gnu/bison/src/reader.c, line 839.
    
    Reported by Marc Schönefeld.
    
    * src/symtab.c (symbol_user_token_number_set): Register only the
    first definition of the end of input token.
    * tests/input.at (Symbol redeclared): Check that case.

commit 438c543b01edd46e15a4eea3e6e3557d26981d91
Author: Akim Demaille <address@hidden>
Date:   Sun Sep 8 09:17:48 2019 +0200

    news: update




reply via email to

[Prev in Thread] Current Thread [Next in Thread]