]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix compilation problems with 64-bit MSVC compiler.
authorFabrice Popineau <fabrice.popineau@gmail.com>
Fri, 30 Nov 2012 15:14:22 +0000 (17:14 +0200)
committerEli Zaretskii <eliz@gnu.org>
Fri, 30 Nov 2012 15:14:22 +0000 (17:14 +0200)
 src/w32fns.c: Remove prototype of atof.
 (syspage_mask): Declared DWORD_PTR, for compatibility with 64-bit
 builds.
 (file_dialog_callback): Declared UINT_PTR.
 src/w32common.h (syspage_mask): Declare DWORD_PTR, for compatibility
 with 64-bit builds.
 src/w32.c (FILE_DEVICE_FILE_SYSTEM, METHOD_BUFFERED)
 (FILE_ANY_ACCESS, CTL_CODE) [_MSC_VER]: Define only if not already
 defined.

src/ChangeLog
src/w32.c
src/w32common.h
src/w32fns.c

index a1d09e683c3b705d9deba11bc3cc7c5068bcbc02..48776fcbdc73777fc1600957d081b8e3c372ff05 100644 (file)
@@ -1,3 +1,17 @@
+2012-11-30  Fabrice Popineau  <fabrice.popineau@gmail.com>
+
+       * w32fns.c: Remove prototype of atof.
+       (syspage_mask): Declared DWORD_PTR, for compatibility with 64-bit
+       builds.
+       (file_dialog_callback): Declared UINT_PTR.
+
+       * w32common.h (syspage_mask): Declare DWORD_PTR, for compatibility
+       with 64-bit builds.
+
+       * w32.c (FILE_DEVICE_FILE_SYSTEM, METHOD_BUFFERED)
+       (FILE_ANY_ACCESS, CTL_CODE) [_MSC_VER]: Define only if not already
+       defined.
+
 2012-11-27  Glenn Morris  <rgm@gnu.org>
 
        * data.c (Fboundp, Fsymbol_value): Doc fix re lexical-binding.
index 1c3331516d4f036d5b5474482613bdde7de3c128..f5630993d43bbbe4ec728b0d20fc959e56a00719 100644 (file)
--- a/src/w32.c
+++ b/src/w32.c
@@ -150,10 +150,18 @@ typedef struct _REPARSE_DATA_BUFFER {
     } DUMMYUNIONNAME;
 } REPARSE_DATA_BUFFER, *PREPARSE_DATA_BUFFER;
 
+#ifndef FILE_DEVICE_FILE_SYSTEM
 #define FILE_DEVICE_FILE_SYSTEM        9
+#endif
+#ifndef METHOD_BUFFERED
 #define METHOD_BUFFERED                0
+#endif
+#ifndef FILE_ANY_ACCESS
 #define FILE_ANY_ACCESS                0x00000000
+#endif
+#ifndef CTL_CODE
 #define CTL_CODE(t,f,m,a)       (((t)<<16)|((a)<<14)|((f)<<2)|(m))
+#endif
 #define FSCTL_GET_REPARSE_POINT \
   CTL_CODE(FILE_DEVICE_FILE_SYSTEM, 42, METHOD_BUFFERED, FILE_ANY_ACCESS)
 #endif
index 50724e5553ce9c67d222067c2aef1772aed2f3c5..5e9b61824aef243c21c976c4b79bc5863a71bad8 100644 (file)
@@ -34,7 +34,7 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
 
 extern SYSTEM_INFO    sysinfo_cache;
 extern OSVERSIONINFO  osinfo_cache;
-extern unsigned long  syspage_mask;
+extern DWORD_PTR      syspage_mask;
 
 extern int           w32_major_version;
 extern int           w32_minor_version;
index d598d66b3a5ece5f28ecf384f1c416002606e0c1..8e1ecc1cb00a823386a13014c2592de384f3ac6e 100644 (file)
@@ -80,7 +80,6 @@ void syms_of_w32fns (void);
 void globals_of_w32fns (void);
 
 extern void free_frame_menubar (struct frame *);
-extern double atof (const char *);
 extern int w32_console_toggle_lock_key (int, Lisp_Object);
 extern void w32_menu_display_help (HWND, HMENU, UINT, UINT);
 extern void w32_free_menu_strings (HWND);
@@ -221,7 +220,7 @@ SYSTEM_INFO sysinfo_cache;
 /* This gives us version, build, and platform identification.  */
 OSVERSIONINFO osinfo_cache;
 
-unsigned long syspage_mask = 0;
+DWORD_PTR syspage_mask = 0;
 
 /* The major and minor versions of NT.  */
 int w32_major_version;
@@ -6019,7 +6018,7 @@ typedef char guichar_t;
    read-only when "Directories" is selected in the filter.  This
    allows us to work around the fact that the standard Open File
    dialog does not support directories.  */
-static UINT CALLBACK
+static UINT_PTR CALLBACK
 file_dialog_callback (HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
 {
   if (msg == WM_NOTIFY)