X-Spam-Check-By: sourceware.org Date: Mon, 13 Feb 2006 23:24:06 +0900 (JST) Message-Id: <20060213.232406.226775084.hashiz@tomba.cskk-sv.co.jp> To: skaller AT users DOT sourceforge DOT net Cc: cygwin AT cygwin DOT com Subject: Re: wrong macro definition in pthread.h From: HASHI Hiroaki In-Reply-To: <1139836005.8591.384.camel@rosella.wigram> References: <20060213 DOT 212717 DOT 193713030 DOT hasi AT cskk-sv DOT co DOT jp> <1139836005 DOT 8591 DOT 384 DOT camel AT rosella DOT wigram> Mime-Version: 1.0 Content-Type: Text/Plain; charset=iso-2022-jp Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com > > In cvs head. > > > > winsup/cygwin/include/pthread.h > > > > #define pthread_cleanup_push(_fn, _arg) { __pthread_cleanup_handler __cleanup_handler = \ > > { _fn, _arg, NULL }; \ > > _pthread_cleanup_push( &__cleanup_handler ); > > #define pthread_cleanup_pop(_execute) _pthread_cleanup_pop( _execute ); } > > > > incorrect '}' position. > > > > >From my man pthread_cleanup_push: > > Matching pairs of !pthread_cleanup_push! and !pthread_cleanup_pop! > must occur in the same function, at the same level of block nest‐ > ing. Actually, !pthread_cleanup_push! and !pthread_cleanup_pop! > are macros, and the expansion of !pthread_cleanup_push! introduces > an open brace !{! with the matching closing brace !}! being intro‐ > duced by the expansion of the matching !pthread_cleanup_pop!. OK. I understand. I will use '_pthread_cleanup_push'. > SO if this is a bug .. it is shared by Linux..:) > > -- > John Skaller > Felix, successor to C++: http://felix.sf.net > > > -- > Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple > Problem reports: http://cygwin.com/problems.html > Documentation: http://cygwin.com/docs.html > FAQ: http://cygwin.com/faq/ > -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/