From 987188d437efb14e65e5b90b467aac5c23940d05 Mon Sep 17 00:00:00 2001 From: ocornut Date: Sun, 7 Dec 2014 09:58:45 +0000 Subject: [PATCH] Fix Clang warning with offsetof() macro? Added -Wall in OpenGL 3 example. --- examples/opengl3_example/Makefile | 9 ++++----- examples/opengl3_example/main.cpp | 7 ++++--- examples/opengl_example/Makefile | 1 - examples/opengl_example/main.cpp | 7 ++++--- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/examples/opengl3_example/Makefile b/examples/opengl3_example/Makefile index 027fc151..ae08a231 100644 --- a/examples/opengl3_example/Makefile +++ b/examples/opengl3_example/Makefile @@ -11,7 +11,7 @@ # http://www.glfw.org # -CXX = g++ +#CXX = g++ OBJS = main.o OBJS += ../../imgui.o @@ -22,6 +22,7 @@ UNAME_S := $(shell uname -s) ifeq ($(UNAME_S), Linux) #LINUX ECHO_MESSAGE = "Linux" CXXFLAGS = -I../../ `pkg-config --cflags glfw3` + CXXFLAGS += -Wall LIBS = `pkg-config --static --libs glfw3` -lGLEW endif @@ -32,11 +33,9 @@ ifeq ($(UNAME_S), Darwin) #APPLE LIBS += -L/usr/local/Cellar/glew/1.10.0/lib -L/usr/local/lib LIBS += -lglew -lglfw3 - CXXFLAGS = -I/usr/local/Cellar/glew/1.10.0/include -I/usr/local/include - CXXFLAGS += -I../../ - + CXXFLAGS = -I../../ -I/usr/local/Cellar/glew/1.10.0/include -I/usr/local/include + CXXFLAGS += -Wall # CXXFLAGS += -D__APPLE__ - endif .cpp.o: diff --git a/examples/opengl3_example/main.cpp b/examples/opengl3_example/main.cpp index 9ccc8ab6..2ab11b08 100644 --- a/examples/opengl3_example/main.cpp +++ b/examples/opengl3_example/main.cpp @@ -12,6 +12,7 @@ #define GLEW_STATIC #include #include +#define OFFSETOF(TYPE, ELEMENT) ((size_t)&(((TYPE *)0)->ELEMENT)) static GLFWwindow* window; static GLuint fontTex; @@ -233,9 +234,9 @@ void InitGL() glEnableVertexAttribArray(uv_location); glEnableVertexAttribArray(colour_location); - glVertexAttribPointer(position_location, 2, GL_FLOAT, GL_FALSE, sizeof(ImDrawVert), (GLvoid*) offsetof(ImDrawVert, pos)); - glVertexAttribPointer(uv_location, 2, GL_FLOAT, GL_FALSE, sizeof(ImDrawVert), (GLvoid*) offsetof(ImDrawVert, uv)); - glVertexAttribPointer(colour_location, 4, GL_UNSIGNED_BYTE, GL_TRUE, sizeof(ImDrawVert), (GLvoid*) offsetof(ImDrawVert, col)); + glVertexAttribPointer(position_location, 2, GL_FLOAT, GL_FALSE, sizeof(ImDrawVert), (GLvoid*)OFFSETOF(ImDrawVert, pos)); + glVertexAttribPointer(uv_location, 2, GL_FLOAT, GL_FALSE, sizeof(ImDrawVert), (GLvoid*)OFFSETOF(ImDrawVert, uv)); + glVertexAttribPointer(colour_location, 4, GL_UNSIGNED_BYTE, GL_TRUE, sizeof(ImDrawVert), (GLvoid*)OFFSETOF(ImDrawVert, col)); glBindVertexArray(0); glBindBuffer(GL_ARRAY_BUFFER, 0); } diff --git a/examples/opengl_example/Makefile b/examples/opengl_example/Makefile index df0e4ece..ae08a231 100644 --- a/examples/opengl_example/Makefile +++ b/examples/opengl_example/Makefile @@ -35,7 +35,6 @@ ifeq ($(UNAME_S), Darwin) #APPLE CXXFLAGS = -I../../ -I/usr/local/Cellar/glew/1.10.0/include -I/usr/local/include CXXFLAGS += -Wall - # CXXFLAGS += -D__APPLE__ endif diff --git a/examples/opengl_example/main.cpp b/examples/opengl_example/main.cpp index db116123..eea14791 100644 --- a/examples/opengl_example/main.cpp +++ b/examples/opengl_example/main.cpp @@ -12,6 +12,7 @@ #define GLEW_STATIC #include #include +#define OFFSETOF(TYPE, ELEMENT) ((size_t)&(((TYPE *)0)->ELEMENT)) static GLFWwindow* window; static GLuint fontTex; @@ -60,9 +61,9 @@ static void ImImpl_RenderDrawLists(ImDrawList** const cmd_lists, int cmd_lists_c { const ImDrawList* cmd_list = cmd_lists[n]; const unsigned char* vtx_buffer = (const unsigned char*)&cmd_list->vtx_buffer.front(); - glVertexPointer(2, GL_FLOAT, sizeof(ImDrawVert), (void*)(vtx_buffer + offsetof(ImDrawVert, pos))); - glTexCoordPointer(2, GL_FLOAT, sizeof(ImDrawVert), (void*)(vtx_buffer + offsetof(ImDrawVert, uv))); - glColorPointer(4, GL_UNSIGNED_BYTE, sizeof(ImDrawVert), (void*)(vtx_buffer + offsetof(ImDrawVert, col))); + glVertexPointer(2, GL_FLOAT, sizeof(ImDrawVert), (void*)(vtx_buffer + OFFSETOF(ImDrawVert, pos))); + glTexCoordPointer(2, GL_FLOAT, sizeof(ImDrawVert), (void*)(vtx_buffer + OFFSETOF(ImDrawVert, uv))); + glColorPointer(4, GL_UNSIGNED_BYTE, sizeof(ImDrawVert), (void*)(vtx_buffer + OFFSETOF(ImDrawVert, col))); int vtx_offset = 0; for (size_t cmd_i = 0; cmd_i < cmd_list->commands.size(); cmd_i++)