// file cpp2011-7-6-4-tua.cpp
/* Translation unit A. */

#include <iostream>
using namespace std;

struct foo { int* a; int* b; };
std::atomic<struct foo *> foo_head[10];
int foo_array[10][10];
[[carries_dependency]] struct foo* f(int i) {
return foo_head[i].load(memory_order_consume);
}
[[carries_dependency]] int g(int* x, int* y) {
return kill_dependency(foo_array[*x][*y]);
}


