Fix Clang warning with offsetof() macro? Added -Wall in OpenGL 3 example.
diff --git a/examples/opengl3_example/Makefile b/examples/opengl3_example/Makefile
index 027fc15..ae08a23 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 @@
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 @@
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 9ccc8ab..2ab11b0 100644
--- a/examples/opengl3_example/main.cpp
+++ b/examples/opengl3_example/main.cpp
@@ -12,6 +12,7 @@
#define GLEW_STATIC
#include <GL/glew.h>
#include <GLFW/glfw3.h>
+#define OFFSETOF(TYPE, ELEMENT) ((size_t)&(((TYPE *)0)->ELEMENT))
static GLFWwindow* window;
static GLuint fontTex;
@@ -233,9 +234,9 @@
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 df0e4ec..ae08a23 100644
--- a/examples/opengl_example/Makefile
+++ b/examples/opengl_example/Makefile
@@ -35,7 +35,6 @@
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 db11612..eea1479 100644
--- a/examples/opengl_example/main.cpp
+++ b/examples/opengl_example/main.cpp
@@ -12,6 +12,7 @@
#define GLEW_STATIC
#include <GL/glew.h>
#include <GLFW/glfw3.h>
+#define OFFSETOF(TYPE, ELEMENT) ((size_t)&(((TYPE *)0)->ELEMENT))
static GLFWwindow* window;
static GLuint fontTex;
@@ -60,9 +61,9 @@
{
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++)