I had no compiler error in developing the project: I'm using cvi 6.0, which compiler are you using?
As per the address subject, I should be passing and using the pointer returned by malloc function. Infact, to address internal components of the structure I am using the indirect selector '->' instead of the direct selector '.'. According to C syntax, the expression dd->Dprm is precisely equivalent to the expression (*dd).Dprm.
But anyway, when treating pointers there always seems to be something too thin for me to catch...