std.format doesn't want to work

jfondren julian.fondren at gmail.com
Sun Oct 17 13:03:46 UTC 2021


On Sunday, 17 October 2021 at 12:53:07 UTC, solidstate1991 wrote:
> On Sunday, 17 October 2021 at 05:22:17 UTC, russhy wrote:
>> On Saturday, 16 October 2021 at 22:47:09 UTC, solidstate1991 
>> wrote:
>>> When I make this call
>>> ```
>>> format(" %3.3f"w, avgFPS);
>>> ```
>>> my program immediately crashes with an access violation 
>>> error. The debugger out is different between x86 and x86-64.
>>>
>>> I've made all sanity checks, so I need some other suggestions.
>>
>> what is the type of avgFPS?
>
> I's a double, but I've tried to pass it as real and float too, 
> with the same exact error being generated.

then it's likely that some memory corruption prior to format() 
has broken the GC, and format's allocation of a string is what's 
failing. Try sprinkling `@safe` and and see what it complains 
about; try valgrind; try reducing your problem. I don't think we 
can help you more without a way to replicate the fault.


More information about the Digitalmars-d-learn mailing list