NVKM_LAYOUT_ONCE
#define NVKM_LAYOUT_ONCE(type,data,ptr,...) \
#undef NVKM_LAYOUT_ONCE
#define NVKM_LAYOUT_ONCE(type,data,ptr) data *ptr;
#undef NVKM_LAYOUT_ONCE
#undef NVKM_LAYOUT_ONCE
#define NVKM_LAYOUT_ONCE(t,s,p,...) t,
#define NVKM_LAYOUT_INST NVKM_LAYOUT_ONCE
#define NVKM_LAYOUT_ONCE(type,data,ptr,...) [type] = #ptr,
#undef NVKM_LAYOUT_ONCE
#define NVKM_LAYOUT_ONCE(type,data,ptr) \
#undef NVKM_LAYOUT_ONCE