[Bf-blender-cvs] [b09563c] master: Cleanup: fixes for building with recent clang

Campbell Barton noreply at git.blender.org
Tue Jan 13 19:12:02 CET 2015


Commit: b09563ca8c42f46233bd104e30812e4fc7322ba3
Author: Campbell Barton
Date:   Wed Jan 14 05:10:18 2015 +1100
Branches: master
https://developer.blender.org/rBb09563ca8c42f46233bd104e30812e4fc7322ba3

Cleanup: fixes for building with recent clang

===================================================================

M	source/blender/blenkernel/intern/DerivedMesh.c
M	source/blender/blenkernel/intern/modifier.c
M	source/blender/blenkernel/intern/subsurf_ccg.c
M	source/blender/blenlib/BLI_bitmap.h
M	source/blender/blenlib/BLI_ghash.h
M	source/blender/blenlib/BLI_utildefines.h
M	source/blender/bmesh/tools/bmesh_beautify.c
M	source/blender/bmesh/tools/bmesh_intersect.c
M	source/blender/editors/include/BIF_gl.h
M	source/blender/editors/sculpt_paint/paint_image_proj.c
M	source/blender/editors/space_logic/logic_window.c
M	source/blender/editors/transform/transform_conversions.c
M	source/blender/editors/uvedit/uvedit_parametrizer.c
M	source/blender/freestyle/intern/winged_edge/Curvature.cpp
M	source/blender/makesdna/DNA_ID.h
M	source/blender/makesrna/intern/makesrna.c
M	source/blender/windowmanager/intern/wm_event_system.c

===================================================================

diff --git a/source/blender/blenkernel/intern/DerivedMesh.c b/source/blender/blenkernel/intern/DerivedMesh.c
index abc544e..07051e3 100644
--- a/source/blender/blenkernel/intern/DerivedMesh.c
+++ b/source/blender/blenkernel/intern/DerivedMesh.c
@@ -3327,7 +3327,7 @@ static void dm_debug_info_layers(DynStr *dynstr, DerivedMesh *dm, CustomData *cd
 			CustomData_file_write_info(type, &structname, &structnum);
 			BLI_dynstr_appendf(dynstr,
 			                   "        dict(name='%s', struct='%s', type=%d, ptr='%p', elem=%d, length=%d),\n",
-			                   name, structname, type, (void *)pt, size, pt_size);
+			                   name, structname, type, (const void *)pt, size, pt_size);
 		}
 	}
 }
@@ -3391,7 +3391,7 @@ void DM_debug_print(DerivedMesh *dm)
 void DM_debug_print_cdlayers(CustomData *data)
 {
 	int i;
-	CustomDataLayer *layer;
+	const CustomDataLayer *layer;
 
 	printf("{\n");
 
@@ -3403,7 +3403,7 @@ void DM_debug_print_cdlayers(CustomData *data)
 		int structnum;
 		CustomData_file_write_info(layer->type, &structname, &structnum);
 		printf("        dict(name='%s', struct='%s', type=%d, ptr='%p', elem=%d, length=%d),\n",
-		       name, structname, layer->type, (void *)layer->data, size, (int)(MEM_allocN_len(layer->data) / size));
+		       name, structname, layer->type, (const void *)layer->data, size, (int)(MEM_allocN_len(layer->data) / size));
 	}
 
 	printf("}\n");
diff --git a/source/blender/blenkernel/intern/modifier.c b/source/blender/blenkernel/intern/modifier.c
index 54ab5a8..021e564 100644
--- a/source/blender/blenkernel/intern/modifier.c
+++ b/source/blender/blenkernel/intern/modifier.c
@@ -262,8 +262,8 @@ void modifier_copyData_generic(const ModifierData *md_src, ModifierData *md_dst)
 {
 	ModifierTypeInfo *mti = modifierType_getInfo(md_src->type);
 	const size_t data_size = sizeof(ModifierData);
-	const char *md_src_data = ((char *)md_src) + data_size;
-	char       *md_dst_data = ((char *)md_dst) + data_size;
+	const char *md_src_data = ((const char *)md_src) + data_size;
+	char       *md_dst_data =       ((char *)md_dst) + data_size;
 	BLI_assert(data_size <= (size_t)mti->structSize);
 	memcpy(md_dst_data, md_src_data, (size_t)mti->structSize - data_size);
 }
diff --git a/source/blender/blenkernel/intern/subsurf_ccg.c b/source/blender/blenkernel/intern/subsurf_ccg.c
index c777fcd..961a66f 100644
--- a/source/blender/blenkernel/intern/subsurf_ccg.c
+++ b/source/blender/blenkernel/intern/subsurf_ccg.c
@@ -1059,8 +1059,9 @@ void subsurf_copy_grid_hidden(DerivedMesh *dm, const MPoly *mpoly,
 			const MDisps *md = &mdisps[mpoly[i].loopstart + j];
 			int hidden_gridsize = BKE_ccg_gridsize(md->level);
 			int factor = BKE_ccg_factor(level, md->level);
+			BLI_bitmap *hidden = md->hidden;
 			
-			if (!md->hidden)
+			if (!hidden)
 				continue;
 			
 			for (y = 0; y < gridSize; y++) {
@@ -1069,7 +1070,7 @@ void subsurf_copy_grid_hidden(DerivedMesh *dm, const MPoly *mpoly,
 					
 					vndx = getFaceIndex(ss, f, j, x, y, edgeSize, gridSize);
 					offset = (y * factor) * hidden_gridsize + (x * factor);
-					if (BLI_BITMAP_TEST(md->hidden, offset))
+					if (BLI_BITMAP_TEST(hidden, offset))
 						mvert[vndx].flag |= ME_HIDE;
 				}
 			}
diff --git a/source/blender/blenlib/BLI_bitmap.h b/source/blender/blenlib/BLI_bitmap.h
index e9a828c..60fc143 100644
--- a/source/blender/blenlib/BLI_bitmap.h
+++ b/source/blender/blenlib/BLI_bitmap.h
@@ -66,23 +66,23 @@ typedef unsigned int BLI_bitmap;
 
 /* get the value of a single bit at '_index' */
 #define BLI_BITMAP_TEST(_bitmap, _index) \
-	(CHECK_TYPE_INLINE(_bitmap, BLI_bitmap *), \
+	(CHECK_TYPE_ANY(_bitmap, BLI_bitmap *, const BLI_bitmap *), \
 	 ((_bitmap)[(_index) >> _BITMAP_POWER] & \
 	  (1u << ((_index) & _BITMAP_MASK))))
 
 #define BLI_BITMAP_TEST_BOOL(_bitmap, _index) \
-	(CHECK_TYPE_INLINE(_bitmap, BLI_bitmap *), \
+	(CHECK_TYPE_ANY(_bitmap, BLI_bitmap *, const BLI_bitmap *), \
 	 (BLI_BITMAP_TEST(_bitmap, _index) != 0))
 
 /* set the value of a single bit at '_index' */
 #define BLI_BITMAP_ENABLE(_bitmap, _index) \
-	(CHECK_TYPE_INLINE(_bitmap, BLI_bitmap *), \
+	(CHECK_TYPE_ANY(_bitmap, BLI_bitmap *, const BLI_bitmap *), \
 	 ((_bitmap)[(_index) >> _BITMAP_POWER] |= \
 	  (1u << ((_index) & _BITMAP_MASK))))
 
 /* clear the value of a single bit at '_index' */
 #define BLI_BITMAP_DISABLE(_bitmap, _index) \
-	(CHECK_TYPE_INLINE(_bitmap, BLI_bitmap *), \
+	(CHECK_TYPE_ANY(_bitmap, BLI_bitmap *, const BLI_bitmap *), \
 	 ((_bitmap)[(_index) >> _BITMAP_POWER] &= \
 	  ~(1u << ((_index) & _BITMAP_MASK))))
 
diff --git a/source/blender/blenlib/BLI_ghash.h b/source/blender/blenlib/BLI_ghash.h
index e9f83e7..bf2b412 100644
--- a/source/blender/blenlib/BLI_ghash.h
+++ b/source/blender/blenlib/BLI_ghash.h
@@ -124,17 +124,17 @@ bool            BLI_ghashutil_ptrcmp(const void *a, const void *b);
 
 unsigned int    BLI_ghashutil_strhash_n(const char *key, size_t n);
 #define         BLI_ghashutil_strhash(key) ( \
-                CHECK_TYPE_INLINE(key, char *), \
+                CHECK_TYPE_ANY(key, char *, const char *, const char * const), \
                 BLI_ghashutil_strhash_p(key))
 unsigned int    BLI_ghashutil_strhash_p(const void *key);
 bool            BLI_ghashutil_strcmp(const void *a, const void *b);
 
 #define         BLI_ghashutil_inthash(key) ( \
-                CHECK_TYPE_INLINE(&(key), int *), \
+                CHECK_TYPE_ANY(&(key), int *, const int *), \
                 BLI_ghashutil_uinthash((unsigned int)key))
 unsigned int    BLI_ghashutil_uinthash(unsigned int key);
 #define         BLI_ghashutil_inthash_v4(key) ( \
-                CHECK_TYPE_INLINE(key, int *), \
+                CHECK_TYPE_ANY(key, int *, const int *), \
                 BLI_ghashutil_uinthash_v4((const unsigned int *)key))
 unsigned int    BLI_ghashutil_uinthash_v4(const unsigned int key[4]);
 #define         BLI_ghashutil_inthash_v4_p \
diff --git a/source/blender/blenlib/BLI_utildefines.h b/source/blender/blenlib/BLI_utildefines.h
index 470219b..b1b2250 100644
--- a/source/blender/blenlib/BLI_utildefines.h
+++ b/source/blender/blenlib/BLI_utildefines.h
@@ -436,8 +436,8 @@ extern "C" {
 
 /* assuming a static array */
 #if defined(__GNUC__) && !defined(__cplusplus)
-#  define ARRAY_SIZE(arr)                                                     \
-	((sizeof(struct {int isnt_array : ((void *)&(arr) == &(arr)[0]);}) * 0) + \
+#  define ARRAY_SIZE(arr) \
+	((sizeof(struct {int isnt_array : ((const void *)&(arr) == &(arr)[0]);}) * 0) + \
 	 (sizeof(arr) / sizeof(*(arr))))
 #else
 #  define ARRAY_SIZE(arr)  (sizeof(arr) / sizeof(*(arr)))
diff --git a/source/blender/bmesh/tools/bmesh_beautify.c b/source/blender/bmesh/tools/bmesh_beautify.c
index e531db1..990a210 100644
--- a/source/blender/bmesh/tools/bmesh_beautify.c
+++ b/source/blender/bmesh/tools/bmesh_beautify.c
@@ -97,7 +97,7 @@ static GSet *erot_gset_new(void)
 
 static void erot_state_ex(const BMEdge *e, int v_index[2], int f_index[2])
 {
-	BLI_assert(BM_edge_is_manifold((BMEdge *)e));
+	BLI_assert(BM_edge_is_manifold(e));
 	BLI_assert(BM_vert_in_edge(e, e->l->prev->v)              == false);
 	BLI_assert(BM_vert_in_edge(e, e->l->radial_next->prev->v) == false);
 
diff --git a/source/blender/bmesh/tools/bmesh_intersect.c b/source/blender/bmesh/tools/bmesh_intersect.c
index 4d87c3e..8a15696 100644
--- a/source/blender/bmesh/tools/bmesh_intersect.c
+++ b/source/blender/bmesh/tools/bmesh_intersect.c
@@ -857,7 +857,7 @@ bool BM_mesh_intersect(
 					{UNPACK3(looptris[i][2]->v->co)},
 				};
 
-				BLI_bvhtree_insert(tree_a, i, (float *)t_cos, 3);
+				BLI_bvhtree_insert(tree_a, i, (const float *)t_cos, 3);
 			}
 		}
 		BLI_bvhtree_balance(tree_a);
@@ -874,7 +874,7 @@ bool BM_mesh_intersect(
 					{UNPACK3(looptris[i][2]->v->co)},
 				};
 
-				BLI_bvhtree_insert(tree_b, i, (float *)t_cos, 3);
+				BLI_bvhtree_insert(tree_b, i, (const float *)t_cos, 3);
 			}
 		}
 		BLI_bvhtree_balance(tree_b);
diff --git a/source/blender/editors/include/BIF_gl.h b/source/blender/editors/include/BIF_gl.h
index 2acba04..b06af01 100644
--- a/source/blender/editors/include/BIF_gl.h
+++ b/source/blender/editors/include/BIF_gl.h
@@ -56,14 +56,20 @@ void cpack(unsigned int x);
 #  define glMultMatrixf(x)  \
 	glMultMatrixf(_Generic((x), \
 	        float *:      (float *)(x), \
+	        float [16]:   (float *)(x), \
 	        float (*)[4]: (float *)(x), \
+	        float [4][4]: (float *)(x), \
 	        const float *:      (float *)(x), \
-	        const float (*)[4]: (float *)(x)) \
+	        const float [16]:   (float *)(x), \
+	        const float (*)[4]: (float *)(x), \
+	        const float [4][4]: (float *)(x)) \
 )
 #  define glLoadMatrixf(x)  \
 	glLoadMatrixf(_Generic((x), \
 	        float *:      (float *)(x), \
-	        float (*)[4]: (float *)(x)) \
+	        float [16]:   (float *)(x), \
+	        float (*)[4]: (float *)(x), \
+	        float [4][4]: (float *)(x)) \
 )
 #else
 #  define glMultMatrixf(x)  glMultMatrixf((float *)(x))
diff --git a/source/blender/editors/sculpt_paint/paint_image_proj.c b/source/blender/editors/sculpt_paint/paint_image_proj.c
index 9d05827..3e67501 100644
--- a/source/blender/editors/sculpt_paint/paint_image_proj.c
+++ b/source/blender/editors/sculpt_paint/paint_image_proj.c
@@ -1334,7 +1334,7 @@ static float project_paint_uvpixel_mask(
 
 		/* now we can use the normal as a mask */
 		if (ps->is_ortho) {
-			angle = angle_normalized_v3v3((float *)ps->viewDir, no);
+			angle = angle_normalized_v3v3(ps->viewDir, no);
 		}
 		else {
 			/* Annoying but for the perspective view we need to get the pixels location in 3D space :/ */
diff --git a/source/blender/editors/space_logic/logic_window.c b/source/blender/editors/space_logic/logic_window.c
index 5464449..21a9246 100644
--- a/source/blender/editors/space_logic/logic_window.c
+++ b/source/blender/editors/space_logic/logic_window.c
@@ -96,11 +96,7 @@ static ID **get_selected_and_linked_obs(bContext *C, short *count, short scavisf
 
 static int vergname(const void *v1, const void *v2)
 {
-	char **x1, **x2;
-	
-	x1 = (char **)v1;
-	x2 = (char **)v2;
-	
+	const char * const *x1 = v1, * const *x2 = v2;
 	return BLI_natstrcmp(*x1, *x2);
 }
 
diff --git a/source

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list