If there are pointers "A" and "B", with a requirement such that any writes to "A" should be made visible before any writes to "B" are made visible. If I am not allowed to use locks and if I am not allowed to declare these variables as "volatile", will the following code guarantee that, the above requirement will be met?

```
volatile temp;

*A = value1;
temp = *A;

if (temp == value1) {
    *B = value2
}

```