On Mon, Feb 11, 2019 at 10:51 AM Vivek Subramanian via Boost-users <boost-users@lists.boost.org> wrote:
Hello,
              I did #define new for debugging memory leaks, and I get this error:


Sigh. I would have hoped that your compiler would have rejected the code out of hand.

[macro.names]/2:
A translation unit shall not #define or #undef names lexically identical to keywords, to the identifiers listed in Table 4, to the attribute-tokens described in 9.11, or to the identifiers expects or ensures, except that the names likely and unlikely may be defined as function-like macros (14.3).

'new' is a keyword listed in Table 4.

-- Marshall