Open ElectricRCAircraftGuy opened 1 year ago
Will the 8-bit AVRs ever support this?
For that, I think avr-gcc should be compiled with libstdc++, see #89 for that. I'm not sure if libstdc++ on AVR already has support for atomic, though, since AFAIK nobody (at least not Arduino and I think also not atmel) builds libstdc++ for AVR, so it probably has some bitrot and lack of testing / demand, but I've seen some reports of people compiling it succesfully (see #89 for links).
Godbolt seems to think the latest AVR gcc version is 13.1.0: https://godbolt.org/z/z1a386vc1
I guess the latest gcc can just be compiled for avr, but the arduino version applies patches from atmel, which were often very much behind (I haven't checked current status, though).
See my answer here, under the section "Why not just use the
atomic_*
types offered by C11 and C++11 or later?". See my comments under that answer and under this answer too.Will the 8-bit AVRs ever support this?
Currently my work-around is the decades-old one described in my "Full example usage: how to efficiently, atomically, read shared volatile variables" here.
See also my comment:
Godbolt seems to think the latest AVR gcc version is 13.1.0: https://godbolt.org/z/z1a386vc1