Skip to content
  • dearblue's avatar
    2a1ea7d6
    Inherit `MRB_FL_UNDEF_ALLOCATE` in subclasses · 2a1ea7d6
    dearblue authored
    If `Class#allocate` is prohibited, subclasses should also be implicitly prohibited.
    
    ```ruby
    p Class.new(Struct).allocate.class
    # => #<Class:0x82362ac00>                                             by #6122
    # => allocator undefined for #<Class:0x000000083a983220> (TypeError)  by Ruby 3.2
    ```
    
    Added `MRB_DEFINE_ALLOCATOR()` to allow subclasses to use `Class#allocate`.
    
    Supplement to #6122.
    2a1ea7d6
    Inherit `MRB_FL_UNDEF_ALLOCATE` in subclasses
    dearblue authored
    If `Class#allocate` is prohibited, subclasses should also be implicitly prohibited.
    
    ```ruby
    p Class.new(Struct).allocate.class
    # => #<Class:0x82362ac00>                                             by #6122
    # => allocator undefined for #<Class:0x000000083a983220> (TypeError)  by Ruby 3.2
    ```
    
    Added `MRB_DEFINE_ALLOCATOR()` to allow subclasses to use `Class#allocate`.
    
    Supplement to #6122.
Loading