John Marriott wrote:

> On 17-Jan-2016 7:27 AM, Bram Moolenaar wrote:
> > Patch 7.4.1107
> > Problem:    Vim can create a directory but not delete it.
> > Solution:   Add an argument to delete() to make it possible to delete a
> >              directory, also recursively.
> > Files:      src/fileio.c, src/eval.c, src/proto/fileio.pro,
> >              src/testdir/test_delete.vim, src/testdir/test_alot.vim,
> >              runtime/doc/eval.txt
> This patch fails to build on Windows x64 (mingw gcc 5.3.0 64bit build), 
> with this error:
> <snip>
> gcc -Iproto -DWIN32 -DWINVER=0x0603 -D_WIN32_WINNT=0x0603 -DHAVE_PATHDEF 
> -DFEAT_BIG -DMS_WIN64 -DFEAT_DIRECTX -DDYNAMIC_
> DIRECTX -DFEAT_GUI_W32 -DFEAT_CLIPBOARD -DFEAT_MBYTE -pipe -w 
> -march=x86-64 -Wall -O3 -fomit-frame-pointer -freg-struct-
> return -s -mwindows -o gvim.exe gobjx86-64/blowfish.o 
> gobjx86-64/buffer.o gobjx86-64/charset.o gobjx86-64/crypt.o gobjx8
> 6-64/crypt_zip.o gobjx86-64/diff.o gobjx86-64/digraph.o 
> gobjx86-64/edit.o gobjx86-64/eval.o gobjx86-64/ex_cmds.o gobjx86
> -64/ex_cmds2.o gobjx86-64/ex_docmd.o gobjx86-64/ex_eval.o 
> gobjx86-64/ex_getln.o gobjx86-64/fileio.o gobjx86-64/fold.o go
> bjx86-64/getchar.o gobjx86-64/hardcopy.o gobjx86-64/hashtab.o 
> gobjx86-64/main.o gobjx86-64/mark.o gobjx86-64/memfile.o g
> objx86-64/memline.o gobjx86-64/menu.o gobjx86-64/message.o 
> gobjx86-64/misc1.o gobjx86-64/misc2.o gobjx86-64/move.o gobjx
> 86-64/mbyte.o gobjx86-64/normal.o gobjx86-64/ops.o gobjx86-64/option.o 
> gobjx86-64/os_win32.o gobjx86-64/os_mswin.o gobjx
> 86-64/winclip.o gobjx86-64/pathdef.o gobjx86-64/popupmnu.o 
> gobjx86-64/quickfix.o gobjx86-64/regexp.o gobjx86-64/screen.o
>   gobjx86-64/search.o gobjx86-64/sha256.o gobjx86-64/spell.o 
> gobjx86-64/syntax.o gobjx86-64/tag.o gobjx86-64/term.o gobjx
> 86-64/ui.o gobjx86-64/undo.o gobjx86-64/version.o gobjx86-64/vimrc.o 
> gobjx86-64/window.o gobjx86-64/gui_dwrite.o gobjx86
> -64/gui.o gobjx86-64/gui_w32.o gobjx86-64/gui_beval.o 
> gobjx86-64/os_w32exe.o -lkernel32 -luser32 -lgdi32 -ladvapi32 -lco
> mdlg32 -lcomctl32 -lversion -ld2d1 -ldwrite -lstdc++ -lole32 -luuid
> gobjx86-64/eval.o:eval.c:(.text+0x3e32): undefined reference to `mch_rmdir'
> gobjx86-64/fileio.o:fileio.c:(.text+0x1ec3): undefined reference to 
> `mch_rmdir'
> collect2.exe: error: ld returned 1 exit status
> Make_cyg_ming.mak:777: recipe for target 'gvim.exe' failed
> make: *** [gvim.exe] Error 1
> 
> mch_rmdir() is defined in os_msdos.h, which is only included in vim.h if 
> MSDOS is defined.
> 
> I'm not sure what the best solution is here. Perhaps os_msdos.h should 
> be included in os_win32.h?
> Given that both os_msdos.h and os_win32.h include os_dos.h, maybe the 
> definition of mch_rmdir should be placed there?

We have mch_mkdir(), so we should have a similar mch_rmdir().
I'll do that, looks simple enough.

-- 
Scientists decoded the first message from an alien civilization:
        SIMPLY SEND 6 TIMES 10 TO THE 50 ATOMS OF HYDROGEN TO THE STAR
SYSTEM AT THE TOP OF THE LIST, CROSS OFF THAT STAR SYSTEM, THEN PUT
YOUR STAR SYSTEM AT THE BOTTOM OF THE LIST AND SEND IT TO 100 OTHER
STAR SYSTEMS.  WITHIN ONE TENTH GALACTIC ROTATION YOU WILL RECEIVE
ENOUGH HYDROGREN TO POWER YOUR CIVILIZATION UNTIL ENTROPY REACHES ITS
MAXIMUM!  IT REALLY WORKS!

 /// 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].
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui