Skip to content

Commit 336f480

Browse files
Fix Windows extension feature detection
1 parent 142da3f commit 336f480

4 files changed

Lines changed: 9 additions & 4 deletions

File tree

.github/workflows/test.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ jobs:
1616
os:
1717
- ubuntu
1818
- macos
19+
- windows
1920

2021
ruby:
2122
- "3.3"

ext/extconf.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
$LDFLAGS << " -fsanitize=address -fsanitize=undefined"
2828
end
2929

30-
have_func("rb_tracearg_instruction_sequence", "ruby/debug.h")
30+
have_func("rb_tracearg_instruction_sequence((rb_trace_arg_t *)0)", "ruby/debug.h")
3131

3232
create_header
3333

ext/ruby/coverage/tracer.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -291,9 +291,6 @@ static void Ruby_Coverage_Tracer_on_line(VALUE data, const rb_trace_arg_t *trace
291291

292292
static VALUE Ruby_Coverage_Tracer_start(VALUE self)
293293
{
294-
struct Ruby_Coverage_Tracer *tracer;
295-
TypedData_Get_Struct(self, struct Ruby_Coverage_Tracer, &Ruby_Coverage_Tracer_type, tracer);
296-
297294
#ifdef HAVE_RB_TRACEARG_INSTRUCTION_SEQUENCE
298295
rb_add_event_hook2(
299296
(rb_event_hook_func_t)Ruby_Coverage_Tracer_on_script_compiled,
@@ -302,6 +299,9 @@ static VALUE Ruby_Coverage_Tracer_start(VALUE self)
302299
RUBY_EVENT_HOOK_FLAG_SAFE | RUBY_EVENT_HOOK_FLAG_RAW_ARG
303300
);
304301
#else
302+
struct Ruby_Coverage_Tracer *tracer;
303+
TypedData_Get_Struct(self, struct Ruby_Coverage_Tracer, &Ruby_Coverage_Tracer_type, tracer);
304+
305305
if (NIL_P(tracer->script_compiled_tracepoint)) {
306306
RB_OBJ_WRITE(self, &tracer->script_compiled_tracepoint,
307307
rb_tracepoint_new(Qnil, RUBY_EVENT_SCRIPT_COMPILED,

releases.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
# Releases
22

3+
## Unreleased
4+
5+
- Fix native extension builds on Windows when `rb_tracearg_instruction_sequence` is not declared by Ruby's public headers, and avoid an unused variable compiler warning.
6+
37
## v0.1.1
48

59
- Fix an unused variable compiler warning in the native extension.

0 commit comments

Comments
 (0)