[#111121] [Ruby master Bug#19165] Method (with no param) delegation with *, **, and ... is slow — "matsuda (Akira Matsuda)" <noreply@...>

Issue #19165 has been reported by matsuda (Akira Matsuda).

9 messages 2022/12/01

[#111135] [Ruby master Bug#19167] Object#inspect does not correctly show NilClass TrueClass and FalseClass stored in instance variables — "tompng (tomoya ishida)" <noreply@...>

Issue #19167 has been reported by tompng (tomoya ishida).

7 messages 2022/12/01

[#111183] [Ruby master Misc#19178] How does CRuby handle CVE issues in stdlib gems which get patched? — "Segaja (Andreas Schleifer)" <noreply@...>

Issue #19178 has been reported by Segaja (Andreas Schleifer).

14 messages 2022/12/03

[#111220] [Ruby master Bug#19187] Ruby 3.1.3 testsuite fails after timezone 2022g update is applied — "coolo (Stephan Kulow)" <noreply@...>

Issue #19187 has been reported by coolo (Stephan Kulow).

11 messages 2022/12/06

[#111264] [Ruby master Feature#19197] Add Exception#root_cause — "AMomchilov (Alexander Momchilov)" <noreply@...>

Issue #19197 has been reported by AMomchilov (Alexander Momchilov).

8 messages 2022/12/12

[#111272] [Ruby master Bug#19231] Integer#step and Float::INFINITY - inconsistent behaviour when called with and without a block — "andrykonchin (Andrew Konchin)" <noreply@...>

Issue #19231 has been reported by andrykonchin (Andrew Konchin).

7 messages 2022/12/13

[#111279] [Ruby master Bug#19233] Failed to install sqlite3 gem since 7f1ca666424849134990d022266bcd4d6636465f using Docker — "yahonda (Yasuo Honda)" <noreply@...>

Issue #19233 has been reported by yahonda (Yasuo Honda).

9 messages 2022/12/14

[#111306] [Ruby master Feature#19236] Allow to create hashes with a specific capacity from Ruby — "byroot (Jean Boussier)" <noreply@...>

Issue #19236 has been reported by byroot (Jean Boussier).

15 messages 2022/12/15

[#111318] [Ruby master Misc#19240] DevMeeting-2023-01-19 — "mame (Yusuke Endoh) via ruby-core" <ruby-core@...>

Issue #19240 has been reported by mame (Yusuke Endoh).

14 messages 2022/12/16

[#111339] [Ruby master Feature#19245] Strict mode for Array#pack that doesn't silently truncate numbers that are too large for the given directive — "byroot (Jean Boussier) via ruby-core" <ruby-core@...>

Issue #19245 has been reported by byroot (Jean Boussier).

8 messages 2022/12/20

[#111342] [Ruby master Bug#19246] Rebuilding the loaded feature index much slower in Ruby 3.1 — "thomthom (Thomas Thomassen) via ruby-core" <ruby-core@...>

Issue #19246 has been reported by thomthom (Thomas Thomassen).

22 messages 2022/12/20

[#111361] [Ruby master Bug#19248] TestGCCompact#test_moving_objects_between_size_pools test failure — "vo.x (Vit Ondruch) via ruby-core" <ruby-core@...>

Issue #19248 has been reported by vo.x (Vit Ondruch).

25 messages 2022/12/21

[#111400] [Ruby master Bug#19254] Enabling YJIT configuration option breaks rspec-core test suite — "vo.x (Vit Ondruch) via ruby-core" <ruby-core@...>

Issue #19254 has been reported by vo.x (Vit Ondruch).

7 messages 2022/12/23

[#111448] [Ruby master Bug#19266] URI::Generic should use URI::RFC3986_PARSER instead of URI::DEFAULT_PARSER — "gareth (Gareth Adams) via ruby-core" <ruby-core@...>

Issue #19266 has been reported by gareth (Gareth Adams).

9 messages 2022/12/26

[#111456] [Ruby master Bug#19271] irb ignores rbs and debug with YJIT enabled — "olivierlacan (Olivier Lacan) via ruby-core" <ruby-core@...>

Issue #19271 has been reported by olivierlacan (Olivier Lacan).

9 messages 2022/12/27

[#111461] [Ruby master Feature#19272] Hash#merge: smarter protocol depending on passed block arity — "zverok (Victor Shepelev) via ruby-core" <ruby-core@...>

Issue #19272 has been reported by zverok (Victor Shepelev).

9 messages 2022/12/27

[#111465] [Ruby master Bug#19273] [Regexp] regexp does not does not match expected — "taichi730 (Taichi Ishitani) via ruby-core" <ruby-core@...>

Issue #19273 has been reported by taichi730 (Taichi Ishitani).

8 messages 2022/12/28

[#111477] [Ruby master Bug#19275] Bundled gems extensions are not installed with 3.2.0 release tarball — "xtkoba (Tee KOBAYASHI) via ruby-core" <ruby-core@...>

Issue #19275 has been reported by xtkoba (Tee KOBAYASHI).

8 messages 2022/12/28

[#111480] [Ruby master Misc#19276] It is not possible to reply to emails from rubymine — "graywolf (Gray Wolf) via ruby-core" <ruby-core@...>

Issue #19276 has been reported by graywolf (Gray Wolf).

8 messages 2022/12/28

[#111484] [Ruby master Bug#19278] Constructing subclasses of Data with positional arguments — "tenderlovemaking (Aaron Patterson) via ruby-core" <ruby-core@...>

Issue #19278 has been reported by tenderlovemaking (Aaron Patterson).

16 messages 2022/12/28

[#111485] [Ruby master Bug#19279] Allow `Coverage.supported?` to recognize oneshot lines mode — "kevin-j-m (Kevin Murphy) via ruby-core" <ruby-core@...>

SXNzdWUgIzE5Mjc5IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IGtldmluLWotbSAoS2V2aW4gTXVycGh5

7 messages 2022/12/28

[#111526] [Ruby master Bug#19288] Ractor JSON parsing significantly slower than linear parsing — "maciej.mensfeld (Maciej Mensfeld) via ruby-core" <ruby-core@...>

Issue #19288 has been reported by maciej.mensfeld (Maciej Mensfeld).

24 messages 2022/12/30

[#111529] [Ruby master Bug#19289] RbConfig::CONFIG["STRIP"] should keep `rb_abi_version` and `rb_abi_version` should always be part of Ruby — "Eregon (Benoit Daloze) via ruby-core" <ruby-core@...>

Issue #19289 has been reported by Eregon (Benoit Daloze).

8 messages 2022/12/30

[ruby-core:111462] [Ruby master Bug#19267] Compile fails when enabling YJIT on x64-mingw-ucrt

From: "k0kubun (Takashi Kokubun) via ruby-core" <ruby-core@...>
Date: 2022-12-27 21:31:51 UTC
List: ruby-core #111462
Issue #19267 has been updated by k0kubun (Takashi Kokubun).

Status changed from Open to Feedback

> https://github.com/ruby/ruby/blob/master/doc/yjit/yjit.md
> It currently only supports macOS and Linux on x86-64 and arm64/aarch64 CPUs.

I'm not sure if YJIT supports msys2/ucrt64. If you manually passed `--enable-yjit` to ./configure, you might want to stop doing so until the platform gets supported. 

----------------------------------------
Bug #19267: Compile fails when enabling YJIT on x64-mingw-ucrt
https://bugs.ruby-lang.org/issues/19267#change-100833

* Author: cfis (Charlie Savage)
* Status: Feedback
* Priority: Normal
* ruby -v: ruby 3.1.3p185 (2022-11-24 revision 1a6b16756e) [x64-mingw-ucrt]
* Backport: 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: UNKNOWN
----------------------------------------
Ruby fails to compile with msys2/ucrt64 when enabling yjit. 

Error:
``` c
In file included from ./include/ruby/defines.h:72,
                 from ./include/ruby/ruby.h:25,
                 from eval_intern.h:4,
                 from vm.c:13:
vm.c: In function 'mjit_check_iseq':
vm.c:393:12: warning: implicit declaration of function 'MJIT_FUNC_STATE_P' [-Wimplicit-function-declaration]
  393 |     ASSUME(MJIT_FUNC_STATE_P(mjit_state));
      |            ^~~~~~~~~~~~~~~~~
./include/ruby/backward/2/assume.h:43:46: note: in definition of macro 'RB_LIKELY'
   43 | # define RB_LIKELY(x)   (__builtin_expect(!!(x), 1))
      |                                              ^
./include/ruby/backward/2/assume.h:27:28: note: in expansion of macro 'RBIMPL_ASSUME'
   27 | #define ASSUME             RBIMPL_ASSUME             /**< @old{RBIMPL_ASSUME} */
      |                            ^~~~~~~~~~~~~
vm.c:393:5: note: in expansion of macro 'ASSUME'
  393 |     ASSUME(MJIT_FUNC_STATE_P(mjit_state));
      |     ^~~~~~
vm.c:394:19: error: conversion to incomplete type
  394 |     switch ((enum rb_mjit_func_state)mjit_state) {
      |                   ^~~~~~~~~~~~~~~~~~
vm.c:395:12: error: 'MJIT_FUNC_NOT_COMPILED' undeclared (first use in this function)
  395 |       case MJIT_FUNC_NOT_COMPILED:
```

The problem:

In ruby-3.2.0\.ext\include\x64-mingw-ucrt\ruby\config.h

``` c
#define USE_MJIT 0
#define USE_YJIT 1
```

But in mjit.h:

``` c
# if USE_MJIT
...
// Return true if jit_func is part of enum rb_mjit_func_state
#define MJIT_FUNC_STATE_P(jit_func) ((uintptr_t)(jit_func) <= (uintptr_t)MJIT_FUNC_FAILED)
...
# end
```

So MJIT_FUNC_STATE_P is never defined.

Then in vm.c:

``` c
#if USE_MJIT || USE_YJIT
# ifdef MJIT_HEADER
NOINLINE(static COLDFUNC VALUE mjit_check_iseq(rb_execution_context_t *ec, const rb_iseq_t *iseq, struct rb_iseq_constant_body *body));
# else
static inline VALUE mjit_check_iseq(rb_execution_context_t *ec, const rb_iseq_t *iseq, struct rb_iseq_constant_body *body);
# endif
static VALUE
mjit_check_iseq(rb_execution_context_t *ec, const rb_iseq_t *iseq, struct rb_iseq_constant_body *body)
{
    uintptr_t mjit_state = (uintptr_t)(body->jit_func);
    ASSUME(MJIT_FUNC_STATE_P(mjit_state));
 etc
```

Note that MJIT_HEADER is not defined.

Note this is just the first of many errors that you will encounter.

To get Ruby 3.2.0 to compile, I had to do a significant rearrangement of mjit.h which I have attached.

However, when yjit.c then compiles:

``` c
yjit.c: In function 'rb_yjit_mark_unused':
yjit.c:93:5: warning: implicit declaration of function 'madvise'; did you mean 'raise'? [-Wimplicit-function-declaratio
]
   93 |     madvise(mem_block, mem_size, MADV_DONTNEED);
      |     ^~~~~~~
      |     raise
yjit.c:93:34: error: 'MADV_DONTNEED' undeclared (first use in this function)
   93 |     madvise(mem_block, mem_size, MADV_DONTNEED);
```

This is because the check in yjit.c (line 32) is:

``` c
// For mmapp(), sysconf()
#if defined _WIN32
#include <unistd.h>
#include <sys/mman.h>
#endif
```

UCRT doesn't define _WIN32, it defines _WIN64


However, then the next issue - there is no sys/mman.h header with mingw.

So enabling yjit on mingw breaks the compile and is apparently unsupported.


---Files--------------------------------
mjit.h (5.71 KB)


-- 
https://bugs.ruby-lang.org/
 ______________________________________________
 ruby-core mailing list -- [email protected]
 To unsubscribe send an email to [email protected]
 ruby-core info -- https://ml.ruby-lang.org/mailman3/postorius/lists/ruby-core.ml.ruby-lang.org/

In This Thread