Граф коммитов

780 Коммитов

Автор SHA1 Сообщение Дата
Kevin Newton 6d81ae3f01 [PRISM] Properly support 'it' 2024-05-22 16:34:04 -04:00
Kevin Newton e575954887 [ruby/prism] Fix support for 'it' implicit local variable
https://github.com/ruby/prism/commit/53bbcfe513
2024-05-22 16:34:04 -04:00
Kevin Newton 89efb94fec [ruby/prism] Reconfigure rationals
This eliminates the subnode on RationalNode and replaces it with two
integer fields, which represent the ratio for the rational. It also
reduces those two integers if they both fit into 32 bits.

Importantly, this PR does not implement bignum reduction. That's something
I'd like to consider for the future, but it's simple enough for now to
leave them unreduced, which makes it more useful than it used to be.

https://github.com/ruby/prism/commit/86e06c7068
2024-05-21 14:27:46 -04:00
Kevin Newton ff43b4a28b [ruby/prism] Add error for numbered parameter used in inner block
https://github.com/ruby/prism/commit/c386ba6d48
2024-05-21 15:46:45 +00:00
Kevin Newton 7c2c528d35 [ruby/prism] Fix up regexp escapes with control/meta
https://github.com/ruby/prism/commit/8a7afa6988
2024-05-20 19:39:21 +00:00
Kevin Newton 012b764f7c [ruby/prism] Fix up regexp escapes with control/meta and x
https://github.com/ruby/prism/commit/1dbbbedf55
2024-05-20 19:39:21 +00:00
Kevin Newton ca5b458044 [PRISM] Match CRuby line semantics for evstr 2024-05-20 11:28:53 -04:00
Kevin Newton 2e8ae13974 [ruby/prism] Fix invalid read at EOF
https://github.com/ruby/prism/commit/dddaf67c34
2024-05-20 14:42:58 +00:00
Kevin Newton e90e8f8bd3 [ruby/prism] Implement ambiguous binary operator warning
https://github.com/ruby/prism/commit/6258c3695f
2024-05-20 14:01:05 +00:00
Kevin Newton 0649c1e3bc [ruby/prism] Revert incorrect synthesized true node change
https://github.com/ruby/prism/commit/31ef81fd06
2024-05-17 14:47:18 +00:00
S-H-GAMELINKS aed93ba19e [ruby/prism] Replace and Use PM_LOCATION_NULL_VALUE macro
https://github.com/ruby/prism/commit/50e188b168
2024-05-17 14:45:42 +00:00
Kevin Newton 92af705498 [ruby/prism] Truncate source lines in errors messages when too long
https://github.com/ruby/prism/commit/72518f5716
2024-05-16 19:35:10 +00:00
Kevin Newton 98e1e610f6 [ruby/prism] Update more escape error messages to match CRuby
https://github.com/ruby/prism/commit/ab43b3ab66
2024-05-16 18:40:20 +00:00
Kevin Newton 286d3032a7 [ruby/prism] More mixed encoding errors
https://github.com/ruby/prism/commit/2a43b4f55c
2024-05-16 17:22:14 +00:00
Kevin Newton d314d976d4 [ruby/prism] Match CRuby invalid escape character syntax error message
https://github.com/ruby/prism/commit/0ef5658dcc
2024-05-16 15:10:49 +00:00
Kevin Newton 0e11781f21 [ruby/prism] Match CRuby invalid character error message
https://github.com/ruby/prism/commit/8d4c5c2bca
2024-05-16 15:10:03 +00:00
Kevin Newton 910bb49230 [ruby/prism] Update error message for invalid % at EOF
https://github.com/ruby/prism/commit/178d4f66fd
2024-05-16 14:52:34 +00:00
Kevin Newton 7a4b9d1614 [ruby/prism] Match CRuby error message for unknown % string
https://github.com/ruby/prism/commit/863197629c
2024-05-16 14:23:36 +00:00
Kevin Newton 011668883c [ruby/prism] Always go to string lex mode even if EOF
https://github.com/ruby/prism/commit/57d5c9be2c
2024-05-16 14:16:32 +00:00
Kevin Newton 477b13ba17 [ruby/prism] Update unterminated string error location
https://github.com/ruby/prism/commit/33d12afa60
2024-05-16 14:00:18 +00:00
Kevin Newton cbd1553800 [ruby/prism] Extend the bounds of the invalid global variable name error
https://github.com/ruby/prism/commit/89d0d9851a
2024-05-15 15:53:24 +00:00
Kevin Newton c4a5866798 [ruby/prism] Replace end of file with end-of-input
https://github.com/ruby/prism/commit/dd532ded95
2024-05-15 15:44:16 +00:00
Kevin Newton e6340258f8 [ruby/prism] Autoload newlines and comment visitors
Having the @newline instance variable in every node adds up, and
since it is so rarely used, we only want to add it when necessary.

Moving this into an autoloaded file and moving the instance variable
out of the default initializers reduces allocated memory because the
nodes are now smaller and some fit into the compact list. On my
machine, I'm seeing about an 8% drop.

https://github.com/ruby/prism/commit/eea92c07d2
2024-05-13 15:34:47 +00:00
Kevin Newton afdfff933f
[PRISM] Bump to version 0.29.0 2024-05-10 13:09:45 -04:00
Kevin Newton 83f481ebf0 [ruby/prism] Enhance parameter forwarding error messages
https://github.com/ruby/prism/commit/826657232e
2024-05-10 15:54:15 +00:00
Kevin Newton 2e44664547 [ruby/prism] operator rename
https://github.com/ruby/prism/commit/b5e47f5c42
2024-05-10 11:47:48 -04:00
Kevin Newton 346f7bf33e [ruby/prism] Fix escaping control+x
https://github.com/ruby/prism/commit/0f0b4c1161
2024-05-10 00:54:31 -04:00
Kevin Newton 442e398e62 [ruby/prism] Ensure keyword parameters are not constants
https://github.com/ruby/prism/commit/fd210115c1
2024-05-08 18:56:14 +00:00
Kevin Newton 128c9a92dd [ruby/prism] Enhance def params term error message
https://github.com/ruby/prism/commit/3af1acd5da
2024-05-08 17:58:46 +00:00
Kevin Newton 2d631cf428 [ruby/prism] Fix line number of unreachable statement warning
https://github.com/ruby/prism/commit/62f6b1f2e2
2024-05-08 17:30:18 +00:00
Kevin Newton 61829eec65 [ruby/prism] Ensure keyword parameters do not end in ! or ?
https://github.com/ruby/prism/commit/57d86a8545
2024-05-08 16:52:07 +00:00
Kevin Newton 84ba35e8c2 [ruby/prism] Invalid escape character syntax for nested unicode escapes
https://github.com/ruby/prism/commit/623a0bb995
2024-05-08 16:38:22 +00:00
Kevin Newton 7c1e11fe02 [ruby/prism] Validate Unicode escape sequences are not surrogates
https://github.com/ruby/prism/commit/64d2ce2622
2024-05-08 16:26:50 +00:00
Kevin Newton 548a72e537
[PRISM] Sync prism version bump 2024-05-08 10:20:48 -04:00
Kevin Newton 74d948a617 [ruby/prism] Better error message on missing hash value
https://github.com/ruby/prism/commit/b20e37e82e
2024-05-08 12:52:54 +00:00
Kevin Newton 21b94ae0d1 [ruby/prism] Extend error message for unterminated HEREDOC
https://github.com/ruby/prism/commit/c1b07ec11b
2024-05-07 18:03:03 +00:00
Kevin Newton dcbe0edb83 [ruby/prism] Better error message for contents of hash pattern
https://github.com/ruby/prism/commit/60dbf60f48
2024-05-07 17:22:50 +00:00
Kevin Newton 5d44846815 [ruby/prism] Disallow implicit hash in array pattern
https://github.com/ruby/prism/commit/bdd509c6ac
2024-05-07 17:15:14 +00:00
Kevin Newton 8ec1c416f7 [ruby/prism] Specific error message for symbol literal with interpolation in hash patterns
https://github.com/ruby/prism/commit/31f0201bae
2024-05-07 16:31:05 +00:00
Kevin Newton 8cc733dff7 [ruby/prism] Add error for invalid implicit local writes
https://github.com/ruby/prism/commit/ab21882561
2024-05-07 16:31:05 +00:00
Kevin Newton eb8efa42f0 [ruby/prism] shareable_constant_value line warnings
https://github.com/ruby/prism/commit/8c984b6922
2024-05-07 14:56:48 +00:00
Kevin Newton d4fdc45953 [ruby/prism] Unexpected fractional component error messages
https://github.com/ruby/prism/commit/e893bc2230
2024-05-06 12:09:48 -04:00
Kevin Newton f92d82ef06 [ruby/prism] More specific error for conflicting forwarding parameters
https://github.com/ruby/prism/commit/1c3b48fedb
2024-05-06 12:09:30 -04:00
Kevin Newton 5909186d02 [ruby/prism] Fix up error message for unexpected {
https://github.com/ruby/prism/commit/80dbe035ba
2024-05-06 15:09:20 +00:00
Kevin Newton d4a6d0c177 [ruby/prism] Prism::Location#adjoin
https://github.com/ruby/prism/commit/a298db68e3
2024-05-03 19:14:03 +00:00
Kevin Newton 7a49edcf1f [ruby/prism] Prism::Node#tunnel
https://github.com/ruby/prism/commit/0bf5d651da
2024-05-03 18:37:19 +00:00
Kevin Newton 1af2dead5a [ruby/prism] Disallow *a&.x=0
https://github.com/ruby/prism/commit/624fdf74bd
2024-05-03 18:14:55 +00:00
Vinicius Stock 4fbb208185 [ruby/prism] Create specialized `ASCIISource` with asciionly optimizations
https://github.com/ruby/prism/commit/40993166a8
2024-05-03 18:10:21 +00:00
Kevin Newton 31361aeca3 [ruby/prism] Disallow safe navigation in a call target node
https://github.com/ruby/prism/commit/b1917adac7
2024-05-03 18:09:35 +00:00
Kevin Newton 2368dab1fa [ruby/prism] Disallow **nil after keyword parameters
https://github.com/ruby/prism/commit/5beeae076f
2024-05-03 13:32:32 -04:00