added types in C backend