[Rene]

 

Fair, not knowing (e.g. incertitude) is different from assertion of impossibility (certitude of the impossible), which made me think you had access to something else that I didn’t have, which is why I was asking for elaboration on your assertion so I could understand.

 

 

I didn’t claim I knew of the proof of the assertion that you made.  Rather, I was asking to elaborate on your assertion so I could understand it.  Turning the question around doesn’t achieve any of that.   I would be content if your  answer were “I don’t know”.

 

 

For the interest of the conversation, I would confess upfront that I don’t know everything (unlike some among us in this august forum).

One way I know of protecting my macros from interference from the “outside” is to use #pragma push_macro, supported by GCC, Clang, and MSVC, to protect my macro definitions.  Then interfering with it would require any of similar means as interfering with any other portion of the code that I author without macros.  But, then again, I didn’t make the claim of the impossibility you made earlier.

 

-- Gaby

 

From: René Ferdinand Rivera Morell <grafikrobot@gmail.com>
Sent: Tuesday, October 14, 2025 11:41 AM
To: Gabriel Dos Reis <gdr@microsoft.com>
Cc: sg15@lists.isocpp.org; SG21 - Contracts <sg21@lists.isocpp.org>; John Spicer <jhs@edg.com>
Subject: Re: [isocpp-sg15] [isocpp-sg21] P3835 -- Different contract checking for different libraries

 

 

 

On Tue, Oct 14, 2025 at 10:09AM Gabriel Dos Reis <gdr@microsoft.com> wrote:

I am not quite sure I see how the impossibility follows from that statement, though.  Are there some other assumptions at play?

 

Perhaps there's some method I don't know about. So I'll ask you.. Given what John said:

 

> The reason for this is that if you currently use a macro like MY_LIB_ASSERT(x), then you have control over what it does, even when your header is used by someone else.

 

Can you think of a way to guarantee the above is true?

 

--

-- René Ferdinand Rivera Morell
-- Don't Assume Anything  -- No Supongas Nada
-- Robot Dreams - http://robot-dreams.net