• Russ Cox's avatar
    runtime: make SetFinalizer(x, f) accept any f for which f(x) is valid · 5822e784
    Russ Cox authored
    Originally the requirement was f(x) where f's argument is
    exactly x's type.
    
    CL 11858043 relaxed the requirement in a non-standard
    way: f's argument must be exactly x's type or interface{}.
    
    If we're going to relax the requirement, it should be done
    in a way consistent with the rest of Go. This CL allows f's
    argument to have any type for which x is assignable;
    that's the same requirement the compiler would impose
    if compiling f(x) directly.
    
    Fixes #5368.
    
    R=dvyukov, bradfitz, pieter
    CC=golang-dev
    https://golang.org/cl/12895043
    5822e784
mfinal.c 4.5 KB