aboutsummaryrefslogtreecommitdiffstats
path: root/parse.y
Commit message (Collapse)AuthorAgeFilesLines
* [Bug #19877] Flip-flop needs to be direct conditionNobuyoshi Nakada2023-12-081-11/+12
|
* Revert "Warn `it` only with -W:deprecated"Takashi Kokubun2023-12-071-3/+1
| | | | | | | | | | This reverts commit 5458252bb0edcd498e6bd4bea57fd7500bacd54c. Revert "Fallback rb_warn_deprecated for UNIVERSAL_PARSER" This reverts commit 680be886f4d807073f24beed36648ef76219e4f7. matz actually preferred always warning `it`.
* Fallback rb_warn_deprecated for UNIVERSAL_PARSERTakashi Kokubun2023-12-071-0/+2
|
* Warn `it` only with -W:deprecatedTakashi Kokubun2023-12-061-1/+1
|
* Warn `it` (#9152)Takashi Kokubun2023-12-071-0/+5
| | | https://bugs.ruby-lang.org/issues/18980
* [Bug #20033] Dynamic regexp should not assign capturesNobuyoshi Nakada2023-12-021-2/+2
|
* [Bug #19838] Flush delayed token nonconsecutive with the next tokenNobuyoshi Nakada2023-12-021-0/+8
|
* Extract `end_with_newline_p`Nobuyoshi Nakada2023-12-021-1/+7
|
* Prefer proper enum over bare intNobuyoshi Nakada2023-12-021-3/+3
|
* Dispatch invalid hex escape content tooNobuyoshi Nakada2023-12-011-1/+1
|
* [Bug #20030] dispatch invalid escaped character without ignoring itNobuyoshi Nakada2023-12-011-2/+16
|
* [Bug #19877] Assign captures for direct regexp literal onlyNobuyoshi Nakada2023-11-301-5/+15
|
* Reject 'class << (return); end` by "void value expression"TSUYUSATO Kitsune2023-11-211-5/+5
|
* Keep unused literal nodesyui-knk2023-10-311-8/+0
| | | | | | | | | | | | For static analysis, it’s better to keep unused literal nodes. If simply change `block_append` to fall through, both "unused literal ignored" and "possibly useless use of a literal in void context" warnings are shown for the same line. But it’s verbose then remove "unused literal ignored" warning. This kind of optimization is already implemented on compile.c. `compile_block` calls `iseq_compile_each0` with `popped = 1` when NODE_BLOCK has next.
* Embed `rb_args_info` in `rb_node_args_t`Nobuyoshi Nakada2023-10-301-11/+10
|
* [Bug #19973] Warn duplicated keyword arguments after keyword splatNobuyoshi Nakada2023-10-261-4/+7
|
* Removed unused argumentNobuyoshi Nakada2023-10-251-8/+8
| | | | Eventually, `read_escape` does not use `encp`.
* Use named reference for dyna_pushNobuyoshi Nakada2023-10-231-1/+1
|
* Extract p_in_kwarg to save and update lexer contextsNobuyoshi Nakada2023-10-231-17/+11
|
* Move push_pvtbl and push_pktbl in ntermsNobuyoshi Nakada2023-10-231-77/+53
|
* Extract p_assoc and p_in to save lexer contextsNobuyoshi Nakada2023-10-231-8/+9
|
* Expand OP_ASGN1 nd_args to nd_index and nd_rvalueyui-knk2023-10-201-11/+6
| | | | | | ARGSCAT has been used for nd_args to hold index and rvalue, because there was limitation on the number of members for Node. We can easily change structure of node now, let's expand it.
* Remove not used fields from STRyui-knk2023-10-151-2/+0
|
* Check node type before accessing nd_nextyui-knk2023-10-151-1/+1
| | | | | | | | This is also a preparation for removing not_used members from STR NODE. Current codes work without node type check because NODE_STR has not_used2 member corresponding to nd_next of NODE_LIST and NODE_DSTR. However it causes problme once not_used members are removed from NODE_STR.
* Stop updating node type from NODE_STR to NODE_DSTRyui-knk2023-10-151-5/+27
| | | | | | This is a preparation for removing not_used members from STR NODE. Once not_used members are removed from STR NODE, STR NODE is smaller than DSTR NODE. Therefore allocate NODE_DSTR instead of reusing NODE_STR.
* Remove not used fields from XSTRyui-knk2023-10-151-2/+0
|
* Remove not used fields from LITyui-knk2023-10-151-2/+0
|
* Fix node type castsyui-knk2023-10-141-4/+4
| | | | Use new node type set by nd_set_type.
* Delete heredoc line mark referencesNobuyoshi Nakada2023-10-141-0/+1
|
* Shorten `rb_strterm_literal_t` membersNobuyoshi Nakada2023-10-141-3/+3
|
* Manage `rb_strterm_t` without imemoNobuyoshi Nakada2023-10-141-37/+36
|
* Remove unions in `rb_strterm` structs for alignmentNobuyoshi Nakada2023-10-141-10/+10
|
* [Bug #19919] Warn class variable assignment and constant declaration in ↵yui-knk2023-10-131-0/+6
| | | | condition
* Use `lex_eol` macrosNobuyoshi Nakada2023-10-131-2/+2
|
* [Bug #19924] Source code should be unsigned char streamNobuyoshi Nakada2023-10-131-5/+5
| | | | | Use `peekc` or `nextc` to fetch the next character, instead of reading from `lex.pcur` directly, for compilers that plain char is signed.
* Extract NODE_FL_NEWLINE access to macroyui-knk2023-10-111-9/+9
|
* Semicolon after `SWITCH_BY_COND_TYPE` for auto-indent [ci skip]Nobuyoshi Nakada2023-10-111-7/+8
|
* Extract numparam ntermsNobuyoshi Nakada2023-10-101-31/+26
|
* Use `rb_node_exits_t` instead of `NODE`Nobuyoshi Nakada2023-10-101-49/+46
|
* Forward declaration of `struct RNode_DEF_TEMP` and its typedefNobuyoshi Nakada2023-10-101-3/+5
|
* Remove not used fields from DEFNyui-knk2023-10-101-1/+0
|
* Pre-allocate `NODE_DEFN`/`NODE_DEFS` nodesNobuyoshi Nakada2023-10-101-10/+17
| | | | To fix the order of node IDs, for typeprof tests.
* Refactor NODE_DEF_TEMPNobuyoshi Nakada2023-10-101-80/+91
| | | | | Use `NODE_DEF_TEMP` as the wrapper of `NODE_DEFS` in ripper, not only of `NODE_DEFN`, so that `endless_method_name` works consistently.
* Take care of internal node typeyui-knk2023-10-091-7/+20
| | | | | | | In parse.y, node can be NODE_DEF_TEMP or NODE_EXITS. Hit "unknown node" without taking care of them. For example `ruby --dump=y lib/cgi/util.rb` causes "[BUG] unknown node: 107".
* Remove not used fields from EVSTRyui-knk2023-10-081-2/+0
|
* Remove not used fields from asgn nodesyui-knk2023-10-071-5/+0
|
* Correctly casting node for accessing nd_value and nd_vid in parse.yyui-knk2023-10-071-12/+85
|
* Pass nd_value to NODE_REQUIRED_KEYWORD_Pyui-knk2023-10-071-2/+2
|
* Use rb_node_masgn_t instead of NODEyui-knk2023-10-071-13/+16
|
* Remove not used fields from MATCH3yui-knk2023-10-061-1/+0
|