# --- T2-COPYRIGHT-BEGIN --- # t2/package/*/vim/fix-w-lto.patch # Copyright (C) 2026 The T2 SDE Project # SPDX-License-Identifier: GPL-2.0 or patched project license # --- T2-COPYRIGHT-END --- --- vim-9.2.0/src/globals.h.vanilla 2026-06-07 18:50:44.090283307 +0200 +++ vim-9.2.0/src/globals.h 2026-06-07 18:54:53.422464460 +0200 @@ -1654,8 +1654,10 @@ * When a string option is NULL (which only happens in out-of-memory * situations), it is set to empty_option, to avoid having to check for NULL * everywhere. + * Label volatile to keep buggy GCC LTO -fwhole-program from aliasing it to + * a different "" pointer in .rodata. */ -EXTERN char_u *empty_option INIT(= (char_u *)""); +EXTERN char_u * volatile empty_option INIT(= (char_u *)""); EXTERN int redir_off INIT(= FALSE); // no redirection for a moment EXTERN FILE *redir_fd INIT(= NULL); // message redirection file