function creation question

I have an AST, and I walk it to generate llvm-IR. For function definitions, I need to be able to generate functions :

vector foo (param_list)

i.e. my return value is a vector of different datatype.s, similar to the param list.

My question is, what do i put my elelment type in the vector? It can be a vector of any of the element types… i.e. the first value can be a float, the second char* etc…

VectorType* vt = VectorType::get(…)
FunctionType* ft = FunctionType::get (vt,…)
Function *f = Function::Create (…)

A vector type in LLVM can only have a single element type. You’ll have to return a struct type.