I’ve noticed that the following code crashes silently, with no exception thrown on the host:
class A {
public:
int *data = 0;
};
RT_PROGRAM void generate_ray() {
A a;
printf("a: %s\n", a.data[0]); // Silent crash
printf("a: %s\n", a.data[1]); // Illegal access exception
}
Context context = Context::create();
...
context->launch(0, 1);
Why is this the case?
Changing the data index to 1 causes an illegal access exception as expected.
I’m using OptiX 6, driver 418.39, CUDA 10.1, RTX 1080 Ti.