On 06/11/2011 11:18 PM, Jeremy Huddleston wrote:
Module: Mesa
Branch: master
Commit: 85937f4c0d4a78d3a11e3c1fa6148640f2a9ad7b
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=85937f4c0d4a78d3a11e3c1fa6148640f2a9ad7b

Author: Jeremy Huddleston<jerem...@apple.com>
Date:   Thu Jun  9 16:59:49 2011 -0700

glapi: Add API that can create a _glapi_table from a dlfcn handle

Example usage:

void *handle = dlopen(opengl_library_path, RTLD_LOCAL);
struct _glapi_table *disp = _glapi_create_table_from_handle(handle, "gl");

Signed-off-by: Jeremy Huddleston<jerem...@apple.com>

---

  src/mapi/glapi/gen/Makefile       |    9 +-
  src/mapi/glapi/gen/gl_gentable.py |  131 +
  src/mapi/glapi/glapi.h            |    4 +
  src/mapi/glapi/glapi_gentable.c   | 7804 +++++++++++++++++++++++++++++++++++++
  src/mapi/glapi/sources.mak        |    1 +
  5 files changed, 7947 insertions(+), 2 deletions(-)

Diff:   
http://cgit.freedesktop.org/mesa/mesa/diff/?id=85937f4c0d4a78d3a11e3c1fa6148640f2a9ad7b
_______________________________________________
mesa-commit mailing list
mesa-com...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-commit


Jeremy,

I'm getting a ton of warnings when glapi_gentable.c is compiled:

glapi_gentable.c: In function ‘_glapi_create_table_from_handle’:
glapi_gentable.c:52:10: warning: ISO C forbids passing argument 2 of ‘SET_NewLis
t’ between function pointer and ‘void *’
../../../src/mesa/main/dispatch.h:2055:20: note: expected ‘void (*)(GLuint, GLe
num)’ but argument is of type ‘void *’
glapi_gentable.c:58:10: warning: ISO C forbids passing argument 2 of ‘SET_EndLis
t’ between function pointer and ‘void *’
../../../src/mesa/main/dispatch.h:2066:20: note: expected ‘void (*)(void)’ but a
rgument is of type ‘void *’
glapi_gentable.c:64:10: warning: ISO C forbids passing argument 2 of ‘SET_CallLi
st’ between function pointer and ‘void *’
../../../src/mesa/main/dispatch.h:2077:20: note: expected ‘void (*)(GLuint)’ but
argument is of type ‘void *’
glapi_gentable.c:70:10: warning: ISO C forbids passing argument 2 of ‘SET_CallLi
sts’ between function pointer and ‘void *’
../../../src/mesa/main/dispatch.h:2088:20: note: expected ‘void (*)(GLsizei, GL
enum, const GLvoid *)’ but argument is of type ‘void *’
glapi_gentable.c:76:10: warning: ISO C forbids passing argument 2 of ‘SET_Delete
Lists’ between function pointer and ‘void *’
../../../src/mesa/main/dispatch.h:2099:20: note: expected ‘void (*)(GLuint, GLs
izei)’ but argument is of type ‘void *’


I think the generator needs to insert some casts to pass the right function pointer type rather than void *.

-Brian

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to