[m-rev.] for review: update to Boehm GC v8.2.4

Julien Fischer jfischer at opturion.com
Tue Jul 11 12:16:56 AEST 2023



On Tue, 11 Jul 2023, Julien Fischer wrote:

> There is an issue with the 64-bit version of MSVC:
>
> ../scripts/ml --grade hlc.gc    --no-mercury-stdlib-dir
> --trace-init-file ../browser/mer_browser.init --trace-init-file
> ../mdbcomp/mer_mdbcomp.init --ssdb-init-file ../ssdb/mer_ssdb.init
> --    -Fechoose_grade.exe choose_grade_init.obj \
>        choose_grade.obj grade_lib.obj grade_lib.grade_setup.obj
> grade_lib.grade_solver.obj grade_lib.grade_spec.obj
> grade_lib.grade_state.obj grade_lib.grade_string.obj
> grade_lib.grade_structure.obj grade_lib.grade_vars.obj
> var_value_names.obj \
>        ../trace/libmer_trace.lib ../trace/libmer_eventspec.lib
> ../ssdb/libmer_ssdb.lib ../browser/libmer_browser.lib
> ../mdbcomp/libmer_mdbcomp.lib ../library/libmer_std.lib
> ../runtime/libmer_rt.lib ../boehm_gc/libgc.lib
> libgc.lib(misc.obj) : error LNK2019: unresolved external symbol
> __imp_MessageBoxA referenced in function GC_win32_MessageBoxA

The following diff for boehm_gc/NT_MAKEFILE will resolve it.
(I don't now why message box in the fatal error handler is now the
default.)

diff --git a/NT_MAKEFILE b/NT_MAKEFILE
index 41608188..22920339 100644
--- a/NT_MAKEFILE
+++ b/NT_MAKEFILE
@@ -22,7 +22,7 @@ CPU = AMD64
  NMAKE_WINVER = 0x0600
  !ENDIF

-cflags = $(cflags) -c -DCRTAPI1=_cdecl -DCRTAPI2=_cdecl -GS -D_WINNT -W4
+cflags = $(cflags) -c -DCRTAPI1=_cdecl -DCRTAPI2=_cdecl -GS -D_WINNT -W4 -DNO_MSGBOX_ON_ERROR
  !IF "$(CPU)" == "i386"
  cflags = $(cflags) -D_X86_=1  -DWIN32 -D_WIN32
  !ELSEIF "$(CPU)" == "AMD64"

Julien.


More information about the reviews mailing list