• Stephan Bergmann's avatar
    Gradually typed Link · 3ead3ad5
    Stephan Bergmann yazdı
    Turn the Link class into a template abstracting over the link's argument and
    return types, but provide default template arguments that keep the generic,
    unsafe "void* in, sal_IntPtr out" behvior.  That way, individual uses of the
    Link class can be updated over time.
    
    All the related macros are duplicated with ..._TYPED counterparts, that
    additionally take the RetType (except for LINK_TYPED, which manages to infer the
    relevant types from the supplied Member).
    
    (It would have been attractive to change the "untyped" LinkStubs from taking a
    void* to a properly typed ArgType parameter, too, but that would cause
    -fsanitize=function to flag uses of "untyped" Link::Call.)
    
    Change-Id: I3b0140378bad99abbf240140ebb4a46a05d2d2f8
    3ead3ad5
accessibility.cxx 58.6 KB