Ravenbrook / Projects / Memory Pool System / Issues


MPS issue job001157

Title:[INVALID] variety white-hot has asserts; hot has none
Status:closed
Priority:essential
Assigned user:Richard Kistruck
Organization:Ravenbrook
Description:[INVALID] variety white-hot has asserts; hot has none (we suspect; not yet categorically confirmed).
Analysis:[INVALID] this bug was never present; see analysis below. RHSK 2005-10-11
Related bugs:
  Note that the Variety system needs rethink, see job001158
  Macros CHECK, CHECK_NONE, and CheckNONE are badly named, see job001248

This should be simple to confirm and fix.

RHSK 2005-10-07
Which platform was DRJ looking at? Check comm.gmk, then check commpre/post.nmk.
comm.gmk
 $VARIETY -> $CFxx = -DCONFIG_VAR_xx -D[nil/NDEBUG] $CFLAGS[DEBUG/OPT/OPTNODEBUG]
commpre.nmk
 $VARIETY -> $CFxx = /DCONFIG_VAR_xx /D[nil/NDEBUG] ...

config.h
 assume CONFIG_VAR_Hx:
 (line 32ff, from +CONFIG_VAR_Hx)
 -CONFIG_ASSERT
 +CHECK_DEFAULT=CheckNONE
 (line 49, from -CONFIG_ASSERT)
 +CHECK_NONE


 assume CONFIG_VAR_Wx; CONFIG_PROD_MPS:
 (line 32ff, from +CONFIG_VAR_Wx)
 -CONFIG_ASSERT
 -CHECK_DEFAULT
 (line 49, from -CONFIG_ASSERT)
 +CHECK_NONE
 (line 277, from +CONFIG_PROD_MPS)
 +PROD_CHECK_DEFAULT=CheckSHALLOW
 (line 301, from -CHECK_DEFAULT)
 +CHECK_DEFAULT=PROD_CHECK_DEFAULT=CheckSHALLOW

   In white-hot, +CHECK_NONE will (check.h) make all AVERs and CHECKs (but not CHECKT) be compiled away to DISCARD(). So even though white-hot MPS defines CheckSHALLOW, it should not have any assert code.

   In hot, +CHECK_NONE similarly makes AVERs and CHECKs compile away to nothing. It defines CHECK_DEFAULT=CheckNONE, but that has no effect. (See check.h).

   So, I think this job is a false alarm. I will check actual output first though. RHSK 2005-10-07.

RHSK 2005-10-11
I have not checked binaries, but agreed with DRJ that his only evidence was config.h.
DRJ concurs with the above analysis of config.h.
So: this was never a bug.
How found:unknown
Evidence:DRJ looked, [at config.h -RHSK], 2005-02-25.
Raw notes from Configura workshop <http:/​/​info.ravenbrook.com/​mail/​2005/​02/​28/​12-40-49/​0.txt>.
Observed in:1.105.0
Introduced in:1.105.0
Created by:Richard Kistruck
Created on:2005‑03‑10 03:19:28
Last modified by:Richard Kistruck
Last modified on:2005‑10‑11 11:31:30
History:2005-03-10 RHSK create
2005-10-07 RHSK start analysis
2005-10-07 RHSK looking at code suggests this is a false alarm; need to check binaries.
2005-10-11 RHSK did not check binaries, but agreed with DRJ that his only evidence was config.h.
2005-10-11 RHSK INVALID: was never a bug. Created job001248 to fix confusing macro names.

Fixes

Change Effect Date User Description
155333 closed 2005‑10‑11 11:30:23 Richard Kistruck MPS: empty-change to config.h, to close invalid job001157 (was never a bug)

Generated at 2013-05-21 17:52:15 by $Id: //info.ravenbrook.com/infosys/cgi/issue.cgi#476 $

Copyright © Ravenbrook Limited. This document is provided "as is", without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this document. You may not duplicate or reproduce this document in any form without the express permission of the copyright holder.

Ravenbrook / Projects / Memory Pool System / Issues