there appears to be some issue when a type parameter is a ref parameter to a generic type's method. test case below.
import System.Collections.Generic
class Foo:
a as string
dict = Dictionary [of string, Foo]()
dict["cow"] = Foo()
bar as Foo
dict.TryGetValue("cow", bar)
compilation results in:
"boo.sample(10,17): BCE0017: The best overload for the method 'System.Collections.Generic.Dictionary`2[[System.String], [Foo]].TryGetValue(string, ref System.Collections.Generic.Dictionary`2.TValue)' is not compatible with the argument list '(string, Foo)'."