While helping Ad Rienks with a problem today, I inadvertently stumbled on a serious UCRT problem.
I provided Ad with a short demo that uses DIM DYNAMIC on a UDT. The sample that I provided to
Ad is fine. It is instructive, it compiles with everything, it runs correctly. No Worries.
ALMOST.
I decided to test it with the new Visual C UCRT and MINGW UCRT assembly. Both compiled Ad's sample with no warnings or errors. But when I attempted to RUN the sample, bad things showed up. The executable produced by the MSVC UCRT batch file displayed garbage on the screen where the reallocated -blank- cells should have been.
The executable produced by the Mingw UCRT batch file simply crashed on impact.
I conferred with OpenAI and Bard and came up with a revised version of BCX's dynamic allocation engine. That revision simply added a handful of memset commands right after the calloc and realloc commands. In other words, I was EXPLICITLY zeroing the new memory. That didn't help.
This suddenly all went in the opposite direction of the UCRT promises of increased security, etc. I'm frustrated at this point and I'm not going to waste anymore effort on UCRT at this time.
The work I did to BED, adding support for MSVC UCRT and MINGW UCRT, will be undone.