[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Building the igc branch on MS-Windows
From: |
Eli Zaretskii |
Subject: |
Re: Building the igc branch on MS-Windows |
Date: |
Fri, 26 Apr 2024 10:41:38 +0300 |
> From: Helmut Eller <eller.helmut@gmail.com>
> Cc: Eli Zaretskii <eliz@gnu.org>, emacs-devel@gnu.org
> Date: Fri, 26 Apr 2024 09:18:59 +0200
>
> >> ./src/emacs -Q src/xdisp.c -eval '(igc--collect)'
> >
> > I would start by investigating what stuff reachable from struct frame
> > is and is not traced, which depends a bit on the platform. Also font
> > stuff probably, terminals, scroll bar things (at least in NS I know
> > there is something), and I don't know what else.
>
> The problem was a corrupted font. I added the code below and it now
> survives the first GC cycle. In general, fix_frame must scan the same
> fields as mark_frame in alloc.c does. Is that about right? Since MPS
> wants the address of the fields (instead the value), some creativity may
> be required. Is that also right? Or can I stupidly copy what
> mark_frame does?
Thanks, I cannot answer all of the questions above, but I nevertheless
installed this in your name, with one difference:
> + if (FRAME_WINDOW_P (f) && FRAME_OUTPUT_DATA (f))
> + {
> + struct font *font = FRAME_FONT (f);
> + if (font)
> + IGC_FIX12_RAW(ss, &FRAME_FONT (f));
You already used FRAME_FONT, so not necessary to use it again:
if (FRAME_WINDOW_P (f) && FRAME_OUTPUT_DATA (f))
{
struct font *font = FRAME_FONT (f);
if (font)
IGC_FIX12_RAW(ss, &font); <<<<<<<<<<<<<<<<<<<<<
}
However, the crashes while scrolling through xdisp.c are still there.
I just had 2 of them; backtraces below. It sounds like the first one
is due to Lisp strings, but the second one is related to markers.
igc.c:1584: Emacs fatal error: assertion failed: !"other"
Thread 1 hit Breakpoint 1, terminate_due_to_signal (sig=sig@entry=22,
backtrace_limit=backtrace_limit@entry=2147483647) at emacs.c:442
442 {
(gdb) bt
#0 terminate_due_to_signal (sig=sig@entry=22,
backtrace_limit=backtrace_limit@entry=2147483647) at emacs.c:442
#1 0x00858430 in die (msg=msg@entry=0xde4937 <i_fwd+1479> "!\"other\"",
file=file@entry=0xde4500 <i_fwd+400> "igc.c", line=line@entry=1584)
at alloc.c:8334
#2 0x00911482 in igc_assert_fail (msg=0xde4937 <i_fwd+1479> "!\"other\"",
line=1584, file=0xde4500 <i_fwd+400> "igc.c") at igc.c:84
#3 fix_other (o=0x13ca4008, ss=0x6fb83c8) at igc.c:1584
#4 fix_vector (v=0x13ca4008, ss=0x6fb83c8) at igc.c:1661
#5 dflt_scanx (ss=ss@entry=0x6fb83c8, base_start=<optimized out>,
base_start@entry=0x13ca4000, base_limit=base_limit@entry=0x13ca6000,
closure=closure@entry=0x0) at igc.c:1202
#6 0x009116c2 in dflt_scan (ss=0x6fb83c8, base_start=0x13ca4000,
base_limit=0x13ca6000) at igc.c:1245
#7 0x009defa6 in TraceScanFormat (limit=0x13ca6000, base=0x13ca4000,
ss=0x6fb83c4) at trace.c:1539
#8 amcSegScan (totalReturn=0x6fb83c0, seg=0xa4b538c, ss=0x6fb83c4)
at poolamc.c:1440
#9 0x009feb25 in traceScanSegRes (seg=0xa4b538c, arena=0x1f0000,
rank=<optimized out>, ts=1) at trace.c:1205
#10 traceScanSegRes (ts=1, rank=<optimized out>, arena=0x1f0000,
seg=0xa4b538c)
at trace.c:1182
#11 0x009fecf9 in traceScanSeg (ts=1, rank=1, arena=0x1f0000, seg=0xa4b538c)
at trace.c:1267
#12 0x009ff5a2 in TraceAdvance (trace=<optimized out>) at trace.c:1728
#13 0x00a0c6ef in TracePoll (workReturn=workReturn@entry=0x6fb850c,
collectWorldReturn=collectWorldReturn@entry=0x6fb8508,
globals=globals@entry=0x1f0008, collectWorldAllowed=1) at trace.c:1849
#14 0x00a0c8b7 in ArenaPoll (globals=globals@entry=0x1f0008) at global.c:745
#15 0x00a0d047 in mps_ap_fill (p_o=p_o@entry=0x6fb85dc,
mps_ap=mps_ap@entry=0xa306c88, size=size@entry=480) at mpsi.c:1097
#16 0x0090fbe8 in alloc (size=480, size@entry=468,
type=type@entry=IGC_OBJ_STRING_DATA, pvec_type=pvec_type@entry=PVEC_FREE)
at igc.c:2590
#17 0x00911ded in alloc_string_data (clear=false, nbytes=467) at igc.c:2638
#18 igc_make_string (nchars=nchars@entry=467, nbytes=nbytes@entry=467,
unibyte=unibyte@entry=false, clear=clear@entry=false) at igc.c:2683
#19 0x00911e36 in igc_make_multibyte_string (nchars=nchars@entry=467,
nbytes=nbytes@entry=467, clear=clear@entry=false) at igc.c:2690
#20 0x00858799 in make_clear_multibyte_string (clearit=false, nbytes=467,
nchars=467) at alloc.c:2633
#21 make_clear_string (length=length@entry=467, clearit=clearit@entry=false)
at alloc.c:2610
#22 0x008587dc in make_clear_string (clearit=<optimized out>,
length=<optimized out>) at alloc.c:2619
#23 0x0088e42d in Fcopy_sequence (arg=arg@entry=XIL(0xade568c)) at fns.c:791
#24 0x0084096d in compile_pattern_1 (posix=<optimized out>, translate=XIL(0),
pattern=XIL(0xade568c), cp=0xe76f5c <searchbufs+3388>) at search.c:131
#25 compile_pattern (pattern=XIL(0xade568c), regp=0xd9cbf4 <main_thread+84>,
translate=XIL(0), posix=posix@entry=false, multibyte=multibyte@entry=true)
at search.c:236
#26 0x00840bb8 in looking_at_1 (string=<optimized out>, posix=<optimized out>,
modify_data=<optimized out>) at search.c:281
#27 0x008d60b5 in exec_byte_code (fun=XIL(0xda3f25),
fun@entry=XIL(0x134c2b85), args_template=513, nargs=nargs@entry=1,
args=0x1a9fa50c, args@entry=0x1a9fa100) at lisp.h:751
#28 0x008882b8 in funcall_lambda (fun=XIL(0x134c2b85), nargs=nargs@entry=1,
arg_vector=arg_vector@entry=0x1a9fa100) at eval.c:3200
#29 0x008887da in funcall_general (fun=<optimized out>,
numargs=numargs@entry=1, args=args@entry=0x1a9fa100) at eval.c:2994
#30 0x00883f45 in Ffuncall (args=0x1a9fa0fc, nargs=2) at eval.c:3032
#31 Ffuncall (nargs=2, args=0x1a9fa0fc) at eval.c:3006
#32 0x00884733 in run_hook_wrapped_funcall (nargs=nargs@entry=2,
args=args@entry=0x1a9fa0fc) at eval.c:2810
#33 0x00882c6f in run_hook_with_args (nargs=2, args=0x1a9fa0fc,
funcall=0x884710 <run_hook_wrapped_funcall>) at eval.c:2891
#34 0x00882f2d in Frun_hook_wrapped (nargs=2, args=0x1a9fa0fc) at eval.c:2825
#35 0x008d60b5 in exec_byte_code (fun=XIL(0xda5d45),
fun@entry=XIL(0x1a28a13d), args_template=514, nargs=2, nargs@entry=1,
args=0x1a9fa0fc, args@entry=0x6fb8adc) at lisp.h:751
#36 0x008882b8 in funcall_lambda (fun=XIL(0x1a28a13d), nargs=nargs@entry=1,
arg_vector=arg_vector@entry=0x6fb8adc) at eval.c:3200
#37 0x008887da in funcall_general (fun=<optimized out>,
numargs=numargs@entry=1, args=args@entry=0x6fb8adc) at eval.c:2994
#38 0x00883f45 in Ffuncall (args=0x6fb8ad8, nargs=2) at eval.c:3032
#39 Ffuncall (nargs=2, args=0x6fb8ad8) at eval.c:3006
#40 0x00882605 in internal_condition_case_n (
bfun=bfun@entry=0x883e4a <Ffuncall>, nargs=nargs@entry=2,
args=args@entry=0x6fb8ad8, handlers=handlers@entry=XIL(0x18),
hfun=hfun@entry=0x72a268 <dsafe_eval_handler>) at eval.c:1624
#41 0x00710eef in dsafe__call (inhibit_quit=inhibit_quit@entry=false,
f=0x883e4a <Ffuncall>, nargs=nargs@entry=2, args=args@entry=0x6fb8ad8)
at lisp.h:1178
#42 0x00710f55 in dsafe__call (args=0x6fb8ad8, nargs=2, f=<optimized out>,
inhibit_quit=false) at xdisp.c:3056
#43 dsafe_call1 (f=f@entry=XIL(0x193da700), arg=arg@entry=make_fixnum(371707))
at xdisp.c:3097
#44 0x00728f47 in handle_fontified_prop (it=0x6fba6d0) at xdisp.c:4616
#45 handle_fontified_prop (it=<optimized out>) at xdisp.c:4532
#46 0x0072d708 in handle_stop (it=it@entry=0x6fba6d0) at xdisp.c:4136
#47 0x0073983e in next_element_from_buffer (it=0x6fba6d0) at xdisp.c:9643
#48 0x007370ab in get_next_display_element (it=it@entry=0x6fba6d0)
at xdisp.c:8209
#49 0x00740d46 in display_line (it=it@entry=0x6fba6d0,
cursor_vpos=cursor_vpos@entry=0) at xdisp.c:25295
#50 0x007475c1 in try_window (window=<optimized out>,
window@entry=XIL(0xaa1c62d), pos=..., flags=<optimized out>,
flags@entry=0)
at xdisp.c:21136
#51 0x00768505 in redisplay_window (window=window@entry=XIL(0xaa1c62d),
just_this_one_p=just_this_one_p@entry=true) at xdisp.c:20245
#52 0x0076cab8 in redisplay_window_1 (window=XIL(0xaa1c62d)) at xdisp.c:18023
#53 0x008824bb in internal_condition_case_1 (
bfun=bfun@entry=0x76ca80 <redisplay_window_1>, arg=XIL(0xaa1c62d),
handlers=XIL(0x1a471243),
hfun=hfun@entry=0x716297 <redisplay_window_error>) at eval.c:1568
#54 0x0075124e in redisplay_internal () at xdisp.c:17512
#55 0x00752463 in redisplay () at xdisp.c:16562
#56 0x007f6088 in read_char (commandflag=<optimized out>, commandflag@entry=1,
map=<optimized out>, map@entry=XIL(0x134c1bd3),
prev_event=<optimized out>, used_mouse_menu=<optimized out>,
used_mouse_menu@entry=0x6fbf7fb, end_time=<optimized out>,
end_time@entry=0x0) at keyboard.c:2678
#57 0x007f96bd in read_key_sequence (keybuf=keybuf@entry=0x6fbf8d8,
prompt=prompt@entry=XIL(0),
dont_downcase_last=dont_downcase_last@entry=false,
can_return_switch_frame=<optimized out>,
can_return_switch_frame@entry=true, fix_current_buffer=<optimized out>,
fix_current_buffer@entry=true, prevent_redisplay=<optimized out>,
prevent_redisplay@entry=false, disable_text_conversion_p=false)
at keyboard.c:10727
#58 0x007fb24b in command_loop_1 () at lisp.h:1178
#59 0x0088241d in internal_condition_case (
bfun=bfun@entry=0x7fb090 <command_loop_1>,
handlers=handlers@entry=XIL(0x48), hfun=hfun@entry=0x7ee3d6 <cmd_error>)
at eval.c:1544
#60 0x007e46eb in command_loop_2 (handlers=XIL(0x48)) at keyboard.c:1168
#61 0x00882337 in internal_catch (tag=tag@entry=XIL(0x8790),
func=func@entry=0x7e46cb <command_loop_2>, arg=arg@entry=XIL(0x48))
at eval.c:1224
#62 0x007e468b in command_loop () at lisp.h:1178
#63 0x007edf91 in recursive_edit_1 () at keyboard.c:754
#64 0x007ee281 in Frecursive_edit () at keyboard.c:837
#65 0x00a1dcff in main (argc=<optimized out>, argv=<optimized out>)
at emacs.c:2626
Lisp Backtrace:
eval.c:120: Emacs fatal error: assertion failed: pdl->kind ==
SPECPDL_BACKTRACE
Thread 1 hit Breakpoint 1, terminate_due_to_signal (sig=sig@entry=22,
backtrace_limit=backtrace_limit@entry=2147483647) at emacs.c:442
442 {
The program being debugged stopped while in a function called from GDB.
Evaluation of the expression containing the function
(backtrace_function) will be abandoned.
When the function is done executing, GDB will silently stop.
igc.c:1598: Emacs fatal error: assertion failed: !"other"
Thread 1 hit Breakpoint 1, terminate_due_to_signal (sig=sig@entry=22,
backtrace_limit=backtrace_limit@entry=2147483647) at emacs.c:442
442 {
(gdb) bt
#0 terminate_due_to_signal (sig=sig@entry=22,
backtrace_limit=backtrace_limit@entry=2147483647) at emacs.c:442
#1 0x00f987e0 in die (msg=msg@entry=0x152ea77 <i_fwd+1479> "!\"other\"",
file=file@entry=0x152e640 <i_fwd+400> "igc.c", line=line@entry=1598)
at alloc.c:8334
#2 0x01051a92 in igc_assert_fail (msg=0x152ea77 <i_fwd+1479> "!\"other\"",
line=1598, file=0x152e640 <i_fwd+400> "igc.c") at igc.c:87
#3 fix_other (o=0x13cac008, ss=0xbf8478) at igc.c:1598
#4 fix_vector (v=0x13cac008, ss=0xbf8478) at igc.c:1675
#5 dflt_scanx (ss=ss@entry=0xbf8478, base_start=<optimized out>,
base_start@entry=0x13cac000, base_limit=base_limit@entry=0x13cae000,
closure=closure@entry=0x0) at igc.c:1207
#6 0x01051d1d in dflt_scan (ss=0xbf8478, base_start=0x13cac000,
base_limit=0x13cae000) at igc.c:1250
#7 0x01128ea6 in TraceScanFormat (limit=0x13cae000, base=0x13cac000,
ss=0xbf8474) at trace.c:1539
#8 amcSegScan (totalReturn=0xbf8470, seg=0xa47cf34, ss=0xbf8474)
at poolamc.c:1440
#9 0x01148a25 in traceScanSegRes (seg=0xa47cf34, arena=0x1f0000,
rank=<optimized out>, ts=1) at trace.c:1205
#10 traceScanSegRes (ts=1, rank=<optimized out>, arena=0x1f0000,
seg=0xa47cf34)
at trace.c:1182
#11 0x01148bf9 in traceScanSeg (ts=1, rank=1, arena=0x1f0000, seg=0xa47cf34)
at trace.c:1267
#12 0x011494a2 in TraceAdvance (trace=<optimized out>) at trace.c:1728
#13 0x011565ef in TracePoll (workReturn=workReturn@entry=0xbf85bc,
collectWorldReturn=collectWorldReturn@entry=0xbf85b8,
globals=globals@entry=0x1f0008, collectWorldAllowed=1) at trace.c:1849
#14 0x011567b7 in ArenaPoll (globals=globals@entry=0x1f0008) at global.c:745
#15 0x01156f47 in mps_ap_fill (p_o=p_o@entry=0xbf868c,
mps_ap=mps_ap@entry=0xa2d6c10, size=size@entry=32) at mpsi.c:1097
#16 0x010501d8 in alloc (size=32, size@entry=24,
type=type@entry=IGC_OBJ_VECTOR, pvec_type=pvec_type@entry=PVEC_MARKER)
at igc.c:2604
#17 0x01052500 in igc_alloc_pseudovector (nwords_mem=5, nwords_lisp=0,
nwords_zero=0, tag=PVEC_MARKER) at igc.c:2724
#18 0x00f99644 in allocate_pseudovector (memlen=<optimized out>,
memlen@entry=5, lisplen=<optimized out>, lisplen@entry=0,
zerolen=<optimized out>, zerolen@entry=0, tag=<optimized out>,
tag@entry=PVEC_MARKER) at alloc.c:3782
#19 0x00f999de in build_marker (buf=0xac4fcf8, charpos=373093, bytepos=373093)
at alloc.c:4173
#20 0x00fbe591 in Fpoint_marker () at editfns.c:202
#21 save_excursion_save (pdl=0x1ba190b0) at editfns.c:782
#22 0x00fc3c24 in record_unwind_protect_excursion () at eval.c:3600
#23 0x010160ac in exec_byte_code (fun=XIL(0x14edf25),
fun@entry=XIL(0x1349542d), args_template=256, nargs=nargs@entry=1,
args=0x1a9c13b8, args@entry=0x1a9c1100) at bytecode.c:944
#24 0x00fc86b8 in funcall_lambda (fun=XIL(0x1349542d), nargs=nargs@entry=1,
arg_vector=arg_vector@entry=0x1a9c1100) at eval.c:3200
#25 0x00fc8bda in funcall_general (fun=<optimized out>,
numargs=numargs@entry=1, args=args@entry=0x1a9c1100) at eval.c:2994
#26 0x00fc4345 in Ffuncall (args=0x1a9c10fc, nargs=2) at eval.c:3032
#27 Ffuncall (nargs=2, args=0x1a9c10fc) at eval.c:3006
#28 0x00fc4b33 in run_hook_wrapped_funcall (nargs=nargs@entry=2,
args=args@entry=0x1a9c10fc) at eval.c:2810
#29 0x00fc306f in run_hook_with_args (nargs=2, args=0x1a9c10fc,
funcall=0xfc4b10 <run_hook_wrapped_funcall>) at eval.c:2891
#30 0x00fc332d in Frun_hook_wrapped (nargs=2, args=0x1a9c10fc) at eval.c:2825
#31 0x010166a5 in exec_byte_code (fun=XIL(0x14efd45),
fun@entry=XIL(0x1a25a1b5), args_template=514, nargs=2, nargs@entry=1,
args=0x1a9c10fc, args@entry=0xbf8adc) at lisp.h:751
#32 0x00fc86b8 in funcall_lambda (fun=XIL(0x1a25a1b5), nargs=nargs@entry=1,
arg_vector=arg_vector@entry=0xbf8adc) at eval.c:3200
#33 0x00fc8bda in funcall_general (fun=<optimized out>,
numargs=numargs@entry=1, args=args@entry=0xbf8adc) at eval.c:2994
#34 0x00fc4345 in Ffuncall (args=0xbf8ad8, nargs=2) at eval.c:3032
#35 Ffuncall (nargs=2, args=0xbf8ad8) at eval.c:3006
#36 0x00fc2a05 in internal_condition_case_n (
bfun=bfun@entry=0xfc424a <Ffuncall>, nargs=nargs@entry=2,
args=args@entry=0xbf8ad8, handlers=handlers@entry=XIL(0x18),
hfun=hfun@entry=0xe6a268 <dsafe_eval_handler>) at eval.c:1624
#37 0x00e50eef in dsafe__call (inhibit_quit=inhibit_quit@entry=false,
f=0xfc424a <Ffuncall>, nargs=nargs@entry=2, args=args@entry=0xbf8ad8)
at lisp.h:1178
#38 0x00e50f55 in dsafe__call (args=0xbf8ad8, nargs=2, f=<optimized out>,
inhibit_quit=false) at xdisp.c:3056
#39 dsafe_call1 (f=f@entry=XIL(0x18c5d618), arg=arg@entry=make_fixnum(371707))
at xdisp.c:3097
#40 0x00e68f47 in handle_fontified_prop (it=0xbfa6d0) at xdisp.c:4616
#41 handle_fontified_prop (it=<optimized out>) at xdisp.c:4532
#42 0x00e6d708 in handle_stop (it=it@entry=0xbfa6d0) at xdisp.c:4136
#43 0x00e7983e in next_element_from_buffer (it=0xbfa6d0) at xdisp.c:9643
#44 0x00e770ab in get_next_display_element (it=it@entry=0xbfa6d0)
at xdisp.c:8209
#45 0x00e80d46 in display_line (it=it@entry=0xbfa6d0,
cursor_vpos=cursor_vpos@entry=0) at xdisp.c:25295
#46 0x00e875c1 in try_window (window=<optimized out>,
window@entry=XIL(0xaa1c62d), pos=..., flags=<optimized out>,
flags@entry=0)
at xdisp.c:21136
#47 0x00ea8505 in redisplay_window (window=window@entry=XIL(0xaa1c62d),
just_this_one_p=just_this_one_p@entry=true) at xdisp.c:20245
#48 0x00eacab8 in redisplay_window_1 (window=XIL(0xaa1c62d)) at xdisp.c:18023
#49 0x00fc28bb in internal_condition_case_1 (
bfun=bfun@entry=0xeaca80 <redisplay_window_1>, arg=XIL(0xaa1c62d),
handlers=XIL(0x1a4410b3),
hfun=hfun@entry=0xe56297 <redisplay_window_error>) at eval.c:1568
#50 0x00e9124e in redisplay_internal () at xdisp.c:17512
#51 0x00e92463 in redisplay () at xdisp.c:16562
#52 0x00f36088 in read_char (commandflag=<optimized out>, commandflag@entry=1,
map=<optimized out>, map@entry=XIL(0x13494483),
prev_event=<optimized out>, used_mouse_menu=<optimized out>,
used_mouse_menu@entry=0xbff7fb, end_time=<optimized out>,
end_time@entry=0x0) at keyboard.c:2678
#53 0x00f396bd in read_key_sequence (keybuf=keybuf@entry=0xbff8d8,
prompt=prompt@entry=XIL(0),
dont_downcase_last=dont_downcase_last@entry=false,
can_return_switch_frame=<optimized out>,
can_return_switch_frame@entry=true, fix_current_buffer=<optimized out>,
fix_current_buffer@entry=true, prevent_redisplay=<optimized out>,
prevent_redisplay@entry=false, disable_text_conversion_p=false)
at keyboard.c:10727
#54 0x00f3b24b in command_loop_1 () at lisp.h:1178
#55 0x00fc281d in internal_condition_case (
bfun=bfun@entry=0xf3b090 <command_loop_1>,
handlers=handlers@entry=XIL(0x48), hfun=hfun@entry=0xf2e3d6 <cmd_error>)
at eval.c:1544
#56 0x00f246eb in command_loop_2 (handlers=XIL(0x48)) at keyboard.c:1168
#57 0x00fc2737 in internal_catch (tag=tag@entry=XIL(0x8790),
func=func@entry=0xf246cb <command_loop_2>, arg=arg@entry=XIL(0x48))
at eval.c:1224
#58 0x00f2468b in command_loop () at lisp.h:1178
#59 0x00f2df91 in recursive_edit_1 () at keyboard.c:754
#60 0x00f2e281 in Frecursive_edit () at keyboard.c:837
#61 0x01167bff in main (argc=<optimized out>, argv=<optimized out>)
at emacs.c:2626
[New Thread 106112.0x1a944]
Lisp Backtrace:
[New Thread 106112.0x1956c]
eval.c:120: Emacs fatal error: assertion failed: pdl->kind ==
SPECPDL_BACKTRACE
Thread 1 hit Breakpoint 1, terminate_due_to_signal (sig=sig@entry=22,
backtrace_limit=backtrace_limit@entry=2147483647) at emacs.c:442
442 {
The program being debugged stopped while in a function called from GDB.
Evaluation of the expression containing the function
(backtrace_function) will be abandoned.
When the function is done executing, GDB will silently stop.
(gdb)
- Re: Building the igc branch on MS-Windows, (continued)
- Re: Building the igc branch on MS-Windows, Gerd Möllmann, 2024/04/25
- Re: Building the igc branch on MS-Windows, Gerd Möllmann, 2024/04/25
- Re: Building the igc branch on MS-Windows, Eli Zaretskii, 2024/04/25
- Re: Building the igc branch on MS-Windows, Gerd Möllmann, 2024/04/25
- Re: Building the igc branch on MS-Windows, Eli Zaretskii, 2024/04/25
- Re: Building the igc branch on MS-Windows, Gerd Möllmann, 2024/04/25
- Re: Building the igc branch on MS-Windows, Helmut Eller, 2024/04/25
- Re: Building the igc branch on MS-Windows, Gerd Möllmann, 2024/04/25
- Re: Building the igc branch on MS-Windows, Helmut Eller, 2024/04/26
- Re: Building the igc branch on MS-Windows, Gerd Möllmann, 2024/04/26
- Re: Building the igc branch on MS-Windows,
Eli Zaretskii <=
- Re: Building the igc branch on MS-Windows, Gerd Möllmann, 2024/04/26
- Re: Building the igc branch on MS-Windows, Helmut Eller, 2024/04/26
- Re: Building the igc branch on MS-Windows, Gerd Möllmann, 2024/04/26
- Re: Building the igc branch on MS-Windows, Eli Zaretskii, 2024/04/26
- Re: Building the igc branch on MS-Windows, Po Lu, 2024/04/26
- Re: Building the igc branch on MS-Windows, Gerd Möllmann, 2024/04/26
- Re: Building the igc branch on MS-Windows, Po Lu, 2024/04/26
- Re: Building the igc branch on MS-Windows, Gerd Möllmann, 2024/04/26
- Re: Building the igc branch on MS-Windows, Gerd Möllmann, 2024/04/26
- Re: Building the igc branch on MS-Windows, Eli Zaretskii, 2024/04/26