[前][次][番号順一覧][スレッド一覧]

ruby-changes:64124

From: Nobuyoshi <ko1@a...>
Date: Sun, 13 Dec 2020 13:11:43 +0900 (JST)
Subject: [ruby-changes:64124] 97e6c28db4 (master): Narrowed down unaligned member access region in RB_OBJ_WRITE

https://git.ruby-lang.org/ruby.git/commit/?id=97e6c28db4

From 97e6c28db4cfb2b383870769940ade08cbe1a6bf Mon Sep 17 00:00:00 2001
From: Nobuyoshi Nakada <nobu@r...>
Date: Sun, 13 Dec 2020 11:34:57 +0900
Subject: Narrowed down unaligned member access region in RB_OBJ_WRITE

Since UNALIGNED_MEMBER_ACCESS assigns to an intermediate variable,
it can cause unused-value warnings.

diff --git a/internal/gc.h b/internal/gc.h
index ed8616d..a602f0c 100644
--- a/internal/gc.h
+++ b/internal/gc.h
@@ -58,8 +58,8 @@ struct rb_objspace; /* in vm_core.h */ https://github.com/ruby/ruby/blob/trunk/internal/gc.h#L58
 
 #define UNALIGNED_MEMBER_PTR(ptr, mem) UNALIGNED_MEMBER_ACCESS(&(ptr)->mem)
 #define RB_OBJ_WRITE(a, slot, b) \
-    UNALIGNED_MEMBER_ACCESS(\
-        rb_obj_write((VALUE)(a), (VALUE *)(slot), (VALUE)(b), __FILE__, __LINE__))
+    rb_obj_write((VALUE)(a), UNALIGNED_MEMBER_ACCESS((VALUE *)(slot)), \
+                 (VALUE)(b), __FILE__, __LINE__)
 
 /* gc.c */
 extern VALUE *ruby_initial_gc_stress_ptr;
-- 
cgit v0.10.2


--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]