and repeated the recipe. IIRC the segfault didn't happen in step 8 the first time; I had to repeat steps 7-8 a few times before it did, and this generated a lot of output. Here are the last few lines: --8<---------------cut here---------------start------------->8--- glyph 7 row 0 col 7 nrows 1 m 0x5555561a7660 r 0x555556495210 c 0x555556495256 glyph 7 row 0 col 7 nrows 1 m 0x5555561a7660 r 0x555556495210 c 0x555556495256 glyph 63 row 0 col 63 nrows 1 m 0x5555561a7660 r 0x555556495210 c 0x555556495486 sz 24 len 1 from 0 i 0 glyph 3 row 0 col 3 nrows 1 m 0x5555561a7660 r 0x555556495210 c 0x55555649522e sz 24 len 1 from 0 i 0 glyph 1135 row 8 col 111 nrows 10 m 0x5555562304d0 r 0x2073756c50656d55 c 0x2073756c506571ab --8<---------------cut here---------------end--------------->8--- IIRC step 8 segfaulted every time after I removed some of the printfs. Either way, the pattern is always the same: 'glyph' goes from being a small number to 1135 or 1153, and the address of ftcrfont_info->metrics changes. Any ideas? Thanks, -- Basil In GNU Emacs 28.0.50 (build 9, x86_64-pc-linux-gnu, X toolkit, cairo version 1.16.0, Xaw3d scroll bars) of 2020-08-20 built on tabos Repository revision: f8d3d18168a742691d095a3f0c83512f19621725 Repository branch: master Windowing system distributor 'The X.Org Foundation', version 11.0.12008000 System Description: Debian GNU/Linux bullseye/sid Configured using: 'configure 'CC=ccache gcc' 'CFLAGS=-O0 -g3 -ggdb -gdwarf-4' --config-cache --prefix=/home/blc/.local --program-suffix=-dbg --enable-checking=yes,glyphs --enable-check-lisp-object-type --with-x-toolkit=lucid --with-file-notification=yes --with-x' Configured features: XAW3D XPM JPEG TIFF GIF PNG RSVG CAIRO SOUND GPM DBUS GSETTINGS GLIB NOTIFY INOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE HARFBUZZ M17N_FLT LIBOTF ZLIB TOOLKIT_SCROLL_BARS LUCID X11 XDBE XIM MODULES THREADS LIBSYSTEMD JSON PDUMPER LCMS2 Important settings: value of $LANG: en_IE.UTF-8 locale-coding-system: utf-8-unix