Complete.Org: Mailing Lists: Archives: freeciv-dev: February 2002:
[Freeciv-Dev] Re: warnings when compiling with NDEBUG (PR#1216)
Home

[Freeciv-Dev] Re: warnings when compiling with NDEBUG (PR#1216)

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: Freeciv-Dev <freeciv-dev@xxxxxxxxxxx>
Subject: [Freeciv-Dev] Re: warnings when compiling with NDEBUG (PR#1216)
From: Jason Short <vze2zq63@xxxxxxxxxxx>
Date: Mon, 04 Feb 2002 20:13:38 -0500
Reply-to: jdorje@xxxxxxxxxxxx

Reinier Post wrote:

On Mon, Feb 04, 2002 at 10:23:39AM +0000, Ben Webb wrote:

On Mon, 4 Feb 2002, Reinier Post wrote:


On Sun, Feb 03, 2002 at 09:18:42PM +0100, Raimar Falke wrote:

NDEBUG disables assert which should make freeciv faster. I'm not sure
how much. So I don't see the benefit of removing it.

The name is confusing (it appears to mean !DEBUG).

Not much we can do about that, as (according to the assert manpage) NDEBUG is defined to have this assert-disabling behaviour in the ANSI C spec.

Thanks.  I didn't even know NDEBUG is standard ANSI C (see

  http://www.lysator.liu.se/c/rat/d2.html

) now I wonder if anything is assumed about DEBUG in ANSI C.
Searching for that, I found

  http://users.powernet.co.uk/eton/unleashed/errata/ech07.html

which describes the problem exactly.  Guides such as

  http://www.dpunkt.de/leseproben/3-932588-67-3/Kapitel%207.pdf

suggest to use DEBUG for debug levels, which is what Freeciv does.

So I suppose Freeciv uses NDEBUG and DEBUG in the usual way after all.

The gist of all that seems to be that DEBUG == !NDEBUG. This is not the case in FreeCiv: there is the additional case where neither DEBUG nor NDEBUG are defined.

My preference would be to drop this third case. Then either NDEBUG would be defined xor DEBUG would be defined. configure would take either --enable-debug=yes or --enable-debug=no.

Not that this really affects the original patch I submitted, since it should be dependent on NDEBUG in any case.

jason



[Prev in Thread] Current Thread [Next in Thread]