On Tue, May 09, 2017 at 11:43:49AM +0200, Mkrtchyan, Tigran wrote: > just out of curiosity: you are talking about increasing type safety, but > at the same time replaces arguments to 'const void *data', which will accept > everything. Is there something special which I don't understand? Nothing special - cast are potentially dangerous in general, and function pointer cases are especially dangerous as there is no verify the caller and callee signatures match at all. As generic method call patterns need to have private data of some points they need to have a void pointer somewhere - either in the signature or as a pointer from a passed structure. For those the compiler at least can do some basic sanity checking, and good static analysis tools can even verify we get the proper object using whole program analysis. -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html