diff --git a/src/proto/fold.pro b/src/proto/fold.pro
index cda536b..d8e3494 100644
--- a/src/proto/fold.pro
+++ b/src/proto/fold.pro
@@ -31,12 +31,12 @@
 int find_wl_entry(win_T *win, linenr_T lnum);
 void foldAdjustVisual(void);
 void foldAdjustCursor(void);
-void foldMoveRange(garray_T *gap, linenr_T line1, linenr_T line2, linenr_T dest);
 void cloneFoldGrowArray(garray_T *from, garray_T *to);
 void deleteFoldRecurse(garray_T *gap);
 void foldMarkAdjust(win_T *wp, linenr_T line1, linenr_T line2, long amount, long amount_after);
 int getDeepestNesting(void);
 char_u *get_foldtext(win_T *wp, linenr_T lnum, linenr_T lnume, foldinfo_T *foldinfo, char_u *buf);
 void foldtext_cleanup(char_u *str);
+void foldMoveRange(garray_T *gap, linenr_T line1, linenr_T line2, linenr_T dest);
 int put_folds(FILE *fd, win_T *wp);
 /* vim: set ft=c : */
