summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNobuyoshi Nakada <nobu@ruby-lang.org>2025-07-29 13:25:09 +0900
committerNobuyoshi Nakada <nobu@ruby-lang.org>2025-07-29 13:25:09 +0900
commitd9a14c299f884ceba2b06ea1f722cdc494c05d42 (patch)
treea1baa683aa2bf6337de6ab902ba4fbb5cc73869c
parent2a6b469f0387ddbd5437c8a7728c721fcc87dc27 (diff)
Fix ext/-test-/namespace/yay{1,2} for mswin
Visual C: ``` compiling ../../../../../src/ext/-test-/namespace/yay1/yay1.c yay1.c ../../../../../src/ext/-test-/namespace/yay1/yay1.c(4): warning C4273: 'yay_value': inconsistent dll linkage C:\a\ruby\ruby\src\ext\-test-\namespace\yay1\yay1.h(4): note: see previous definition of 'yay_value' linking shared-object -test-/namespace/yay1.so Creating library yay1-arm64-mswin64_140.lib and object yay1-arm64-mswin64_140.exp yay1-arm64-mswin64_140.exp : warning LNK4070: /OUT:yay1.dll directive in .EXP differs from output filename '..\..\..\..\.ext\arm64-mswin64_140\-test-\namespace\yay1.so'; ignoring directive compiling ../../../../../src/ext/-test-/namespace/yay2/yay2.c yay2.c ../../../../../src/ext/-test-/namespace/yay2/yay2.c(4): warning C4273: 'yay_value': inconsistent dll linkage C:\a\ruby\ruby\src\ext\-test-\namespace\yay2\yay2.h(4): note: see previous definition of 'yay_value' linking shared-object -test-/namespace/yay2.so Creating library yay2-arm64-mswin64_140.lib and object yay2-arm64-mswin64_140.exp yay2-arm64-mswin64_140.exp : warning LNK4070: /OUT:yay2.dll directive in .EXP differs from output filename '..\..\..\..\.ext\arm64-mswin64_140\-test-\namespace\yay2.so'; ignoring directive ``` From MinGW gcc: ``` ../../../../../src/ext/-test-/namespace/yay1/yay1.c:4:1: warning: 'yay_value' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes] 4 | yay_value(void) | ^~~~~~~~~ ../../../../../src/ext/-test-/namespace/yay2/yay2.c:4:1: warning: 'yay_value' redeclared without dllimport attribute: previous dllimport ignored [-Wattributes] 4 | yay_value(void) | ^~~~~~~~~ ```
-rw-r--r--ext/-test-/namespace/yay1/yay1.def1
-rw-r--r--ext/-test-/namespace/yay1/yay1.h2
-rw-r--r--ext/-test-/namespace/yay2/yay2.def1
-rw-r--r--ext/-test-/namespace/yay2/yay2.h2
4 files changed, 2 insertions, 4 deletions
diff --git a/ext/-test-/namespace/yay1/yay1.def b/ext/-test-/namespace/yay1/yay1.def
index edbae87312..510fbe7017 100644
--- a/ext/-test-/namespace/yay1/yay1.def
+++ b/ext/-test-/namespace/yay1/yay1.def
@@ -1,4 +1,3 @@
-LIBRARY yay1
EXPORTS
Init_yay1
yay_value
diff --git a/ext/-test-/namespace/yay1/yay1.h b/ext/-test-/namespace/yay1/yay1.h
index d68f8b5523..c4dade928a 100644
--- a/ext/-test-/namespace/yay1/yay1.h
+++ b/ext/-test-/namespace/yay1/yay1.h
@@ -1,4 +1,4 @@
#include <ruby.h>
#include "ruby/internal/dllexport.h"
-RUBY_EXTERN VALUE yay_value(void);
+RUBY_FUNC_EXPORTED VALUE yay_value(void);
diff --git a/ext/-test-/namespace/yay2/yay2.def b/ext/-test-/namespace/yay2/yay2.def
index 6bb6011f4b..163fc44c04 100644
--- a/ext/-test-/namespace/yay2/yay2.def
+++ b/ext/-test-/namespace/yay2/yay2.def
@@ -1,4 +1,3 @@
-LIBRARY yay2
EXPORTS
Init_yay2
yay_value
diff --git a/ext/-test-/namespace/yay2/yay2.h b/ext/-test-/namespace/yay2/yay2.h
index d68f8b5523..c4dade928a 100644
--- a/ext/-test-/namespace/yay2/yay2.h
+++ b/ext/-test-/namespace/yay2/yay2.h
@@ -1,4 +1,4 @@
#include <ruby.h>
#include "ruby/internal/dllexport.h"
-RUBY_EXTERN VALUE yay_value(void);
+RUBY_FUNC_EXPORTED VALUE yay_value(void);