lkml.org 
[lkml]   [2018]   [Dec]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH 00/27] kconfig: remove all reduce/shift conflicts, refactor lexer, fix various issues
    Date

    When I tryed to change something, I was often hit by annoying
    shift/reduce conflicts in the parser.

    The lexer and parser are too cluttered.

    So, I decided to clean-up now.

    - Fix all shift/reduce conflicts in the parser

    - Rewrite the lexer. The linear keyword search was removed.
    The number of states descreased from 6 to 4.

    - Fix various subtle issues



    Masahiro Yamada (27):
    kconfig: fix file name and line number of warn_ignored_character()
    kconfig: fix memory leak when EOF is encountered in quotation
    kconfig: require T_EOL to reduce visible statement
    kconfig: remove unneeded pattern matching to whitespaces
    kconfig: refactor pattern matching in STRING state
    kconfig: fix ambiguous grammar in terms of new lines
    kconfig: clean up EOF handling in the lexer
    kconfig: warn no new line at end of file
    kconfig: remove grammatically ambiguous "unexpected option" diagnostic
    kconfig: remove grammatically ambiguous option_error
    kconfig: remove redundant if_block rule
    kconfig: remove redundant menu_block rule
    kconfig: loosen the order of "visible" and "depends on" in menu entry
    kconfig: rename depends_list to comment_option_list
    kconfig: remove redundant token defines
    kconfig: use distinct tokens for type and default properties
    kconfig: refactor scanning and parsing "option" properties
    kconfig: use specific tokens instead of T_ASSIGN for assignments
    kconfig: use T_WORD instead of T_VARIABLE for variables
    microblaze: surround string default in Kconfig with double quotes
    treewide: surround file paths in Kconfig files with double quotes
    kconfig: ban the use of '.' and '/' in unquoted words
    kconfig: refactor end token rules
    kconfig: stop associating kconf_id with yylval
    kconfig: switch to ASSIGN_VAL state in the second lexer
    kconfig: update current_pos in the second lexer
    kconfig: remove keyword lookup table entirely

    arch/arm/Kconfig | 2 +-
    arch/arm/kvm/Kconfig | 2 +-
    arch/arm64/Kconfig | 2 +-
    arch/arm64/kvm/Kconfig | 2 +-
    arch/ia64/Kconfig | 2 +-
    arch/m68k/Kconfig | 6 +-
    arch/microblaze/Kconfig.platform | 2 +-
    arch/mips/kvm/Kconfig | 2 +-
    arch/openrisc/Kconfig | 2 +-
    arch/powerpc/Kconfig | 4 +-
    arch/powerpc/kvm/Kconfig | 2 +-
    arch/riscv/Kconfig | 2 +-
    arch/s390/Kconfig | 2 +-
    arch/s390/kvm/Kconfig | 2 +-
    arch/sh/Kconfig | 2 +-
    arch/sparc/Kconfig | 2 +-
    arch/x86/Kconfig | 2 +-
    arch/x86/kvm/Kconfig | 2 +-
    block/Kconfig | 2 +-
    crypto/Kconfig | 4 +-
    drivers/crypto/Kconfig | 2 +-
    drivers/gpu/drm/i915/Kconfig | 2 +-
    drivers/hwmon/Kconfig | 2 +-
    drivers/i2c/Kconfig | 6 +-
    drivers/pps/Kconfig | 4 +-
    drivers/ras/Kconfig | 2 +-
    drivers/thermal/Kconfig | 2 +-
    drivers/w1/Kconfig | 4 +-
    kernel/Kconfig.preempt | 2 +-
    lib/Kconfig.debug | 4 +-
    scripts/kconfig/kconf_id.c | 52 --------
    scripts/kconfig/lkc.h | 19 +--
    scripts/kconfig/menu.c | 43 +++---
    scripts/kconfig/preprocess.c | 3 +-
    scripts/kconfig/zconf.l | 232 +++++++++++++++++---------------
    scripts/kconfig/zconf.y | 280 ++++++++++++++++-----------------------
    security/Kconfig | 16 +--
    security/integrity/Kconfig | 4 +-
    38 files changed, 313 insertions(+), 414 deletions(-)
    delete mode 100644 scripts/kconfig/kconf_id.c

    --
    2.7.4

    \
     
     \ /
      Last update: 2018-12-11 12:04    [W:4.108 / U:0.064 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site