Das wird so nicht funktionieren. Rückgabewerte von Funktionen sind compilerabhängig sobald Structs etc ins Spiel kommen.
Das einzige was Du machen kannst ist eine wrapper
Dll in c zu schreiben die Dir die Rückgabe als Parameter erlaubt also so etwas wie
function gsl_complex_rect (x: double; y: double; var result gsl_complex): integer ; cdecl;
Aus einer
Dll heraus funktionieren in der Regel nur einfache Typen wie integer, double etc.