On Tuesday, 15 July 2014 at 17:13:09 UTC, Johannes Pfau wrote:
Why do shared variables have the privilege to prevent accessing shared memory in inappropriate ways but it's fine to place the burden of checking that all accesses to volatile memory are backed by compiler
barriers to the user? How is that 'first class' support?

Maybe it can be automated by a wrapper template?

struct Volatile(T)
{
  T val;
  void opAssign(T v)
  {
    volatile_store(val, v);
  }
}

extern(C) Volatile!byte led;

foreach(i;0..10)
{
  led=0;
  led=1; //blink
}

Reply via email to