diff options
author | Alan Wu <[email protected]> | 2024-07-23 18:14:45 -0400 |
---|---|---|
committer | Benoit Daloze <[email protected]> | 2024-07-24 18:20:30 +0200 |
commit | 12e6cf77efae6804063dbebe84e4080ca78958e7 (patch) | |
tree | 010d5b0b824fb53722df576de43de8bd80d032cd /spec/mspec/lib/mspec/helpers/numeric.rb | |
parent | 1a18b03ee7b14771eae9eafa3c85a6bf5ccd9502 (diff) |
Add "c_long_size" guard, supplanting "wordsize" and stop using Integer#size
What a "word" is when talking about sizes is confusing because it's a
highly overloaded term. Intel, Microsoft, and GDB are just a few vendors
that have their own definition of what a "word" is. Specs that used the
"wordsize" guard actually were mostly testing for the size of the C
`long` fundamental type, so rename the guard for clarity.
Also, get the size of `long` directly from RbConfig instead of guessing
using Integer#size. Integer#size is not guaranteed to have anything to
do with the `long` type.
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/11130
Diffstat (limited to 'spec/mspec/lib/mspec/helpers/numeric.rb')
-rw-r--r-- | spec/mspec/lib/mspec/helpers/numeric.rb | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/spec/mspec/lib/mspec/helpers/numeric.rb b/spec/mspec/lib/mspec/helpers/numeric.rb index c1ed81a233..46d3d7b182 100644 --- a/spec/mspec/lib/mspec/helpers/numeric.rb +++ b/spec/mspec/lib/mspec/helpers/numeric.rb @@ -28,7 +28,7 @@ end # specs based on the relationship between values rather than specific # values. if PlatformGuard.standard? or PlatformGuard.implementation? :topaz - if PlatformGuard.wordsize? 32 + if PlatformGuard.c_long_size? 32 def fixnum_max (2**30) - 1 end @@ -36,7 +36,7 @@ if PlatformGuard.standard? or PlatformGuard.implementation? :topaz def fixnum_min -(2**30) end - elsif PlatformGuard.wordsize? 64 + elsif PlatformGuard.c_long_size? 64 def fixnum_max (2**62) - 1 end |