Hello Charles, im trying to fix the associative array feature, so, 
I have a class module that is supposed to return a string pointer. like this:
    function pStr(string k) as sys
        int i = this.getindex(k)
        return this.hBuffer + (i * 8)
    end function
When i use the class like this:
somefunction(byval asr.pStr("key"))
And try to print the value like this:
sub somefunction(string *a)
    print @a cr
    print a cr
end sub
 I get the address to a completely new variable that holds the address to the original string. What am i doing wrong?