svn commit: samba r22227 - in branches/SAMBA_3_0/source/lib/replace: .

metze at samba.org metze at samba.org
Sun Apr 15 21:13:48 GMT 2007


Author: metze
Date: 2007-04-15 21:13:48 +0000 (Sun, 15 Apr 2007)
New Revision: 22227

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=22227

Log:
merge from samba4:

move discard_const macros to librelace

metze
Modified:
   branches/SAMBA_3_0/source/lib/replace/replace.h
   branches/SAMBA_3_0/source/lib/replace/strptime.c


Changeset:
Modified: branches/SAMBA_3_0/source/lib/replace/replace.h
===================================================================
--- branches/SAMBA_3_0/source/lib/replace/replace.h	2007-04-15 21:13:13 UTC (rev 22226)
+++ branches/SAMBA_3_0/source/lib/replace/replace.h	2007-04-15 21:13:48 UTC (rev 22227)
@@ -79,6 +79,29 @@
 #include <stddef.h>
 #endif
 
+/**
+  this is a warning hack. The idea is to use this everywhere that we
+  get the "discarding const" warning from gcc. That doesn't actually
+  fix the problem of course, but it means that when we do get to
+  cleaning them up we can do it by searching the code for
+  discard_const.
+
+  It also means that other error types aren't as swamped by the noise
+  of hundreds of const warnings, so we are more likely to notice when
+  we get new errors.
+
+  Please only add more uses of this macro when you find it
+  _really_ hard to fix const warnings. Our aim is to eventually use
+  this function in only a very few places.
+
+  Also, please call this via the discard_const_p() macro interface, as that
+  makes the return type safe.
+*/
+#define discard_const(ptr) ((void *)((intptr_t)(ptr)))
+
+/** Type-safe version of discard_const */
+#define discard_const_p(type, ptr) ((type *)discard_const(ptr))
+
 #ifndef HAVE_STRERROR
 extern char *sys_errlist[];
 #define strerror(i) sys_errlist[i]

Modified: branches/SAMBA_3_0/source/lib/replace/strptime.c
===================================================================
--- branches/SAMBA_3_0/source/lib/replace/strptime.c	2007-04-15 21:13:13 UTC (rev 22226)
+++ branches/SAMBA_3_0/source/lib/replace/strptime.c	2007-04-15 21:13:48 UTC (rev 22227)
@@ -974,7 +974,7 @@
   if (want_xday && !have_yday)
     day_of_the_year (tm);
 
-  return (char *) rp;
+  return discard_const_p(char, rp);
 }
 
 



More information about the samba-cvs mailing list