[m-rev.] diff: fix bug in runtime/mercury_signal.h

Fergus Henderson fjh at cs.mu.OZ.AU
Fri Feb 1 16:42:25 AEDT 2002


On 01-Feb-2002, Simon Taylor <stayl at cs.mu.OZ.AU> wrote:
> 
> Index: mercury_signal.h
> ===================================================================
> RCS file: /home/mercury1/repository/mercury/runtime/mercury_signal.h,v
> retrieving revision 1.6
> diff -u -u -r1.6 mercury_signal.h
> --- mercury_signal.h	30 Jan 2002 14:51:08 -0000	1.6
> +++ mercury_signal.h	31 Jan 2002 15:43:51 -0000
> @@ -17,6 +17,35 @@
...
> +  ** This stuff must come before anything else that might include <signal.h>,
> +  ** otherwise the #define __KERNEL__ may not work.

This is very fragile.  There are lots of places that include
mercury_signal.h.  Have you checked that none of them include
anything which includes <signal.h> before they include mercury_signal.h?

If you're going to put this in mercury_signal.h,
then you should add comments at every place which includes
mercury_signal.h saying that <signal.h> must not be included
before mercury_signal.h.  Also mercury_signal.h itself should
make this very clear in comments at the very start of that file.

Note that this problem will only show up on certain versions of Linux,
so it may not show up in testing.

-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "I have always known that the pursuit
The University of Melbourne         |  of excellence is a lethal habit"
WWW: <http://www.cs.mu.oz.au/~fjh>  |     -- the last words of T. S. Garp.
--------------------------------------------------------------------------
mercury-reviews mailing list
post:  mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the reviews mailing list