Daniel Shahaf wrote on Tue, Apr 24, 2012 at 18:15:22 +0300: > stef...@apache.org wrote on Sun, Apr 15, 2012 at 13:42:44 -0000: > > Author: stefan2 > > Date: Sun Apr 15 13:42:44 2012 > > New Revision: 1326337 > > > > URL: http://svn.apache.org/viewvc?rev=1326337&view=rev > > Log: > > Fix a macro redefinition warning for SYNCHRONIZE under Windows. > > > > * subversion/libsvn_subr/svn_named_atomic.c > > (SYNCHRONIZE): undefine pre-existing definitions > > > > Modified: > > subversion/trunk/subversion/libsvn_subr/svn_named_atomic.c > > > > Modified: subversion/trunk/subversion/libsvn_subr/svn_named_atomic.c > > URL: > > http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/svn_named_atomic.c?rev=1326337&r1=1326336&r2=1326337&view=diff > > ============================================================================== > > --- subversion/trunk/subversion/libsvn_subr/svn_named_atomic.c (original) > > +++ subversion/trunk/subversion/libsvn_subr/svn_named_atomic.c Sun Apr 15 > > 13:42:44 2012 > > @@ -88,6 +88,12 @@ > > */ > > #define SHM_NAME_SUFFIX "Shm" > > > > +/* Prevent macro re-definition warning (on Windows in particluar). > > + */ > > +#ifdef SYNCHRONIZE > > +#undef SYNCHRONIZE > > +#endif > > Is this a safe change? Experimenting shows that if later in the file > a macro is used which is defined in terms of SYNCHRONIZE, the file-local > definition (below the diff context) would be used even for macros > defined while the previous definition was effective. > > Shouldn't you rename the macro? >
With Greg's +1, and since this was cluttering my mailbox, I went ahead and made this change in r1330268. Let me know if it's not ok. > > > + > > /* Platform-dependent implementations of our basic atomic operations. > > * SYNCHRONIZE(op) will ensure that the OP gets executed atomically. > > * This will be zero-overhead if OP itself is already atomic. > > > >