MPS issue job003680

TitleCan't assert in external interface
Statusclosed
Priorityoptional
Assigned userGareth Rees
OrganizationRavenbrook
DescriptionThe external interface contains macros that ought to assert, but these are commented out. For example:

    #define MPS_ARGS_ADD_FIELD(_var, _key, _field, _val) \
      MPS_BEGIN \
        /* TODO: AVER(_var##_i < MPS_ARGS_MAX); */ \
AnalysisThe reason for this is that the symbol AVER is not exposed in the external interface. There needs to be something corresponding to it, for example _mps_aver.
How foundinspection
Evidence[1] //info.ravenbrook.com/project/mps/master/code/mps.h
Created byGareth Rees
Created on2014-02-21 14:16:06
Last modified byGareth Rees
Last modified on2014-05-02 11:34:54
History2014-02-21 GDR Created.

Fixes

Change Effect Date User Description
185938 closed 2014-05-02 11:34:38 Gareth Rees The MPS_ARGS_ADD_FIELD and MPS_ARGS_DONE now check that the number of arguments is in bounds.