Oh, "conflicting types for parameter 'T' ('T2' vs. 'T1')". I'm surprised but it's a nice surprise. Finally something in c++ where safety is valued more than implicit dangerous magic.
int* x = malloc(5 * sizeof (int));
because in C++ you cannot implicitly cast a void pointer.