Quick question, Manu. What are referring to when you say
"uninitialized data"? Do you mean:
int n = void;
n++; //Undefined behaviour
Struct S { int getVal() { return 1; } }
S s = void;
s.getVal(); //Undefined behaviour
Or do you mean:
int n;
n++;
S s;
s.getVal();