Fix warnings on linux build (strict aliasing, cons init order, vars used only in asserts)



git-svn-id: http://skia.googlecode.com/svn/trunk@756 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/gpu/src/GrGLUtil.cpp b/gpu/src/GrGLUtil.cpp
index 360e84e..a8f06ba 100644
--- a/gpu/src/GrGLUtil.cpp
+++ b/gpu/src/GrGLUtil.cpp
@@ -15,6 +15,7 @@
  */

 

 #include "GrGLConfig.h"

+#include "GrTypes.h"

 #include <stdio.h>

 

 bool has_gl_extension(const char* ext) {

@@ -74,11 +75,11 @@
 typedef void (*glProc)(void);

 

 #define GET_PROC(EXT_STRUCT, PROC_NAME) \

-    *((glProc*) &(EXT_STRUCT-> PROC_NAME)) = (glProc) GR_GL_PROC_ADDRESS((gl ## PROC_NAME)); \

+    *(GrTCast<glProc*>(&(EXT_STRUCT-> PROC_NAME))) = (glProc)GR_GL_PROC_ADDRESS((gl ## PROC_NAME)); \

     GrAssert(NULL != EXT_STRUCT-> PROC_NAME)

 

 #define GET_SUFFIX_PROC(EXT_STRUCT, PROC_NAME, SUFFIX) \

-    *((glProc*) &(EXT_STRUCT-> PROC_NAME)) = (glProc) GR_GL_PROC_ADDRESS((gl ## PROC_NAME ## SUFFIX)); \

+    *(GrTCast<glProc*>(&(EXT_STRUCT-> PROC_NAME))) = (glProc)GR_GL_PROC_ADDRESS((gl ## PROC_NAME ## SUFFIX)); \

     GrAssert(NULL != EXT_STRUCT-> PROC_NAME)

 

 extern void GrGLInitExtensions(GrGLExts* exts) {