<html><head><style type='text/css'>p { margin: 0; }</style></head><body><div style='font-family: Times New Roman; font-size: 12pt; color: #000000'>I agree with Patrick concerning the int casts.<div><br></div><div>Zhigang, I've commited your changes have tweaking the int casts. Plus a few other warning fixes.</div><div><br></div><div>I did only a test compile here, so let me know if I broke anything.</div><div><br></div><div>Jose</div><div><br><br><hr id="zwchr"><blockquote style="border-left:2px solid rgb(16, 16, 255);margin-left:5px;padding-left:5px;color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt;">I would be wary of assuming you can typecast long -&gt; pointer, or pointer -&gt; long. On 64-bit Windows, &nbsp;sizeof(int) == sizeof(long) == 4 but sizeof(void*) == 8. On 64-bit Linux (gcc), sizeof(int) == 4, sizeof(long) == sizeof(void*) == 8. It would be better to use &lt;stdint.h&gt; with uintptr_t -- it was designed to solve this problem exactly. If you insist on using long, why not use long long (C99) which is 64-bits on both platforms.<div>
<br></div><div><br><div><br><div class="gmail_quote">On Thu, May 12, 2011 at 3:49 AM, zhigang gong <span dir="ltr">&lt;<a href="mailto:zhigang.gong@gmail.com" target="_blank">zhigang.gong@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
glu.h: typedef void (GLAPIENTRYP _GLUfuncptr)(); causes the following<br>
 &nbsp; &nbsp; &nbsp; warning: function declaration isn't a prototype.<br>
egl: &nbsp; When convert a (void *) to a int type, it's better to<br>
 &nbsp; &nbsp; &nbsp; convert to long firstly, otherwise in 64 bit envirnonment, it<br>
 &nbsp; &nbsp; &nbsp; causes compilation warning.<br>
---<br>
&nbsp;include/GL/glu.h &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| &nbsp; &nbsp;2 +-<br>
&nbsp;src/egl/drivers/dri2/egl_dri2.c &nbsp; &nbsp; | &nbsp; &nbsp;4 ++--<br>
&nbsp;src/egl/drivers/dri2/platform_drm.c | &nbsp; &nbsp;4 ++--<br>
&nbsp;src/egl/drivers/dri2/platform_x11.c | &nbsp; &nbsp;2 +-<br>
&nbsp;src/egl/main/eglapi.c &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; &nbsp;2 +-<br>
&nbsp;5 files changed, 7 insertions(+), 7 deletions(-)<br>
<br>
diff --git a/include/GL/glu.h b/include/GL/glu.h<br>
index cd967ac..ba2228d 100644<br>
--- a/include/GL/glu.h<br>
+++ b/include/GL/glu.h<br>
@@ -284,7 +284,7 @@ typedef GLUtesselator GLUtriangulatorObj;<br>
&nbsp;#define GLU_TESS_MAX_COORD 1.0e150<br>
<br>
&nbsp;/* Internal convenience typedefs */<br>
-typedef void (GLAPIENTRYP _GLUfuncptr)();<br>
+typedef void (GLAPIENTRYP _GLUfuncptr)(void);<br>
<br>
&nbsp;GLAPI void GLAPIENTRY gluBeginCurve (GLUnurbs* nurb);<br>
&nbsp;GLAPI void GLAPIENTRY gluBeginPolygon (GLUtesselator* tess);<br>
diff --git a/src/egl/drivers/dri2/egl_dri2.c b/src/egl/drivers/dri2/egl_dri2.c<br>
index afab679..f5f5ac3 100644<br>
--- a/src/egl/drivers/dri2/egl_dri2.c<br>
+++ b/src/egl/drivers/dri2/egl_dri2.c<br>
@@ -835,7 +835,7 @@ dri2_create_image_khr_renderbuffer(_EGLDisplay<br>
*disp, _EGLContext *ctx,<br>
 &nbsp; &nbsp;struct dri2_egl_display *dri2_dpy = dri2_egl_display(disp);<br>
 &nbsp; &nbsp;struct dri2_egl_context *dri2_ctx = dri2_egl_context(ctx);<br>
 &nbsp; &nbsp;struct dri2_egl_image *dri2_img;<br>
- &nbsp; GLuint renderbuffer = (GLuint) buffer;<br>
+ &nbsp; GLuint renderbuffer = &nbsp;(unsigned long) buffer;<br>
<br>
 &nbsp; &nbsp;if (renderbuffer == 0) {<br>
 &nbsp; &nbsp; &nbsp; _eglError(EGL_BAD_PARAMETER, "dri2_create_image_khr");<br>
@@ -870,7 +870,7 @@ dri2_create_image_mesa_drm_buffer(_EGLDisplay<br>
*disp, _EGLContext *ctx,<br>
<br>
 &nbsp; &nbsp;(void) ctx;<br>
<br>
- &nbsp; name = (EGLint) buffer;<br>
+ &nbsp; name = (unsigned long) buffer;<br>
<br>
 &nbsp; &nbsp;err = _eglParseImageAttribList(&amp;attrs, disp, attr_list);<br>
 &nbsp; &nbsp;if (err != EGL_SUCCESS)<br>
diff --git a/src/egl/drivers/dri2/platform_drm.c<br>
b/src/egl/drivers/dri2/platform_drm.c<br>
index 68912e3..cea8418 100644<br>
--- a/src/egl/drivers/dri2/platform_drm.c<br>
+++ b/src/egl/drivers/dri2/platform_drm.c<br>
@@ -596,7 +596,7 @@ dri2_get_device_name(int fd)<br>
 &nbsp; &nbsp; &nbsp; goto out;<br>
 &nbsp; &nbsp;}<br>
<br>
- &nbsp; device_name = udev_device_get_devnode(device);<br>
+ &nbsp; device_name = (char*)udev_device_get_devnode(device);<br>
 &nbsp; &nbsp;if (!device_name)<br>
 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; goto out;<br>
 &nbsp; &nbsp;device_name = strdup(device_name);<br>
@@ -690,7 +690,7 @@ dri2_initialize_drm(_EGLDriver *drv, _EGLDisplay *disp)<br>
 &nbsp; &nbsp;memset(dri2_dpy, 0, sizeof *dri2_dpy);<br>
<br>
 &nbsp; &nbsp;disp-&gt;DriverData = (void *) dri2_dpy;<br>
- &nbsp; dri2_dpy-&gt;fd = (int) disp-&gt;PlatformDisplay;<br>
+ &nbsp; dri2_dpy-&gt;fd = (long) disp-&gt;PlatformDisplay;<br>
<br>
 &nbsp; &nbsp;dri2_dpy-&gt;driver_name = dri2_get_driver_for_fd(dri2_dpy-&gt;fd);<br>
 &nbsp; &nbsp;if (dri2_dpy-&gt;driver_name == NULL)<br>
diff --git a/src/egl/drivers/dri2/platform_x11.c<br>
b/src/egl/drivers/dri2/platform_x11.c<br>
index 5d4ac6a..90136f4 100644<br>
--- a/src/egl/drivers/dri2/platform_x11.c<br>
+++ b/src/egl/drivers/dri2/platform_x11.c<br>
@@ -784,7 +784,7 @@ dri2_create_image_khr_pixmap(_EGLDisplay *disp,<br>
_EGLContext *ctx,<br>
<br>
 &nbsp; &nbsp;(void) ctx;<br>
<br>
- &nbsp; drawable = (xcb_drawable_t) buffer;<br>
+ &nbsp; drawable = (xcb_drawable_t) (long)buffer;<br>
 &nbsp; &nbsp;xcb_dri2_create_drawable (dri2_dpy-&gt;conn, drawable);<br>
 &nbsp; &nbsp;attachments[0] = XCB_DRI2_ATTACHMENT_BUFFER_FRONT_LEFT;<br>
 &nbsp; &nbsp;buffers_cookie =<br>
diff --git a/src/egl/main/eglapi.c b/src/egl/main/eglapi.c<br>
index 336ec23..9063752 100644<br>
--- a/src/egl/main/eglapi.c<br>
+++ b/src/egl/main/eglapi.c<br>
@@ -1168,7 +1168,7 @@ eglQueryModeStringMESA(EGLDisplay dpy, EGLModeMESA mode)<br>
&nbsp;EGLDisplay EGLAPIENTRY<br>
&nbsp;eglGetDRMDisplayMESA(int fd)<br>
&nbsp;{<br>
- &nbsp; _EGLDisplay *dpy = _eglFindDisplay(_EGL_PLATFORM_DRM, (void *) fd);<br>
+ &nbsp; _EGLDisplay *dpy = _eglFindDisplay(_EGL_PLATFORM_DRM, (void *) (long)fd);<br>
 &nbsp; &nbsp;return _eglGetDisplayHandle(dpy);<br>
&nbsp;}<br>
<font color="#888888"><br>
--<br>
1.7.3.1<br>
_______________________________________________<br>
mesa-dev mailing list<br>
<a href="mailto:mesa-dev@lists.freedesktop.org" target="_blank">mesa-dev@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/mesa-dev" target="_blank">http://lists.freedesktop.org/mailman/listinfo/mesa-dev</a><br>
</font></blockquote></div><br></div></div>
<br>_______________________________________________<br>mesa-dev mailing list<br>mesa-dev@lists.freedesktop.org<br>http://lists.freedesktop.org/mailman/listinfo/mesa-dev<br></blockquote><br></div></div></body></html>