John Marriott wrote:

> On 12-May-2019 03:15, Bram Moolenaar wrote:
> > Patch 8.1.1320
> > Problem:    It is not possible to track changes to a buffer.
> > Solution:   Add listener_add() and listener_remove(). No docs or tests yet.
> > Files:      src/structs.h, src/change.c, src/proto/change.pro
> >
> >
> After this patch I get this linker error from mingw64 (gcc 9.1.1):
> <snip>
> gcc -I. -Iproto -DWIN32 -DWINVER=0x0603 -D_WIN32_WINNT=0x0603 
> -DHAVE_PATHDEF -DFEAT_NORMAL -DHAVE_STDINT_H -DFEAT_GUI_MSWIN 
> -DFEAT_CLIPBOARD -pipe -march=native -Wall -O3 -fomit-frame-pointer 
> -freg-struct-return -Wl,-nxcompat,-dynamicbase -mwindows -municode -s -o 
> gvim.exe gobjnative/arabic.o gobjnative/autocmd.o gobjnative/beval.o 
> gobjnative/blob.o gobjnative/blowfish.o gobjnative/buffer.o 
> gobjnative/change.o gobjnative/charset.o gobjnative/crypt.o 
> gobjnative/crypt_zip.o gobjnative/debugger.o gobjnative/dict.o 
> gobjnative/diff.o gobjnative/digraph.o gobjnative/edit.o 
> gobjnative/eval.o gobjnative/evalfunc.o gobjnative/ex_cmds.o 
> gobjnative/ex_cmds2.o gobjnative/ex_docmd.o gobjnative/ex_eval.o 
> gobjnative/ex_getln.o gobjnative/fileio.o gobjnative/findfile.o 
> gobjnative/fold.o gobjnative/getchar.o gobjnative/hardcopy.o 
> gobjnative/hashtab.o gobjnative/indent.o gobjnative/insexpand.o 
> gobjnative/json.o gobjnative/list.o gobjnative/main.o gobjnative/mark.o 
> gobjnative/memfile.o gobjnative/memline.o gobjnative/menu.o 
> gobjnative/message.o gobjnative/misc1.o gobjnative/misc2.o 
> gobjnative/move.o gobjnative/mbyte.o gobjnative/normal.o 
> gobjnative/ops.o gobjnative/option.o gobjnative/os_mswin.o 
> gobjnative/os_win32.o gobjnative/pathdef.o gobjnative/popupmnu.o 
> gobjnative/quickfix.o gobjnative/regexp.o gobjnative/screen.o 
> gobjnative/search.o gobjnative/sha256.o gobjnative/sign.o 
> gobjnative/spell.o gobjnative/spellfile.o gobjnative/syntax.o 
> gobjnative/tag.o gobjnative/term.o gobjnative/textprop.o gobjnative/ui.o 
> gobjnative/undo.o gobjnative/usercmd.o gobjnative/userfunc.o 
> gobjnative/version.o gobjnative/winclip.o gobjnative/window.o 
> gobjnative/os_w32exe.o gobjnative/vimrc.o gobjnative/xdiffi.o 
> gobjnative/xemit.o gobjnative/xprepare.o gobjnative/xutils.o 
> gobjnative/xhistogram.o gobjnative/xpatience.o gobjnative/gui.o 
> gobjnative/gui_w32.o gobjnative/gui_beval.o -lkernel32 -luser32 -lgdi32 
> -ladvapi32 -lcomdlg32 -lcomctl32 -lnetapi32 -lversion -lole32 -luuid
> gobjnative/change.o:change.c:(.text+0x87f): undefined reference to 
> `get_callback'
> gobjnative/change.o:change.c:(.text+0x918): undefined reference to 
> `free_callback'
> gobjnative/change.o:change.c:(.text+0x972): undefined reference to 
> `free_callback'
> collect2.exe: error: ld returned 1 exit status
> make: *** [Make_cyg_ming.mak:1012: gvim.exe] Error 1
> </snip>
> 
> It seems we have a mismatch of FEAT_* symbols.
> In change.c, get_callback() is called from f_listener_add(). 
> free_callback() is called from f_listener_add() and f_listener_remove(). 
> These two f_listener*() functions are defined if FEAT_EVAL is set (line 
> 154 to line 289).
> In evalfunc.c get_callback() and free_callback() are defined if 
> FEAT_JOB_CHANNEL or FEAT_TIMERS or PROTO are set (line 14678 to line 14719).
> 
> Note that these line numbers are after the inclusion of patch 8.1.1321.

That appears to happen with building with +eval but without +channel and
+timer.  A bit unusual, but it should build.

-- 
ARTHUR: The swallow may fly south with the sun, or the house martin or the
        plover seek warmer hot lands in winter, yet these are not strangers to
        our land.
SOLDIER: Are you suggesting coconuts migrate?
                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/201905121107.x4CB7WO1019660%40masaka.moolenaar.net.
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui