Table of contents
Collapse the table of content
Expand the table of content


Last Updated: 11/22/2016

warning C28127: The function being used as a routine does not exactly match the type expected.

Additional information

It is likely that the difference is that the actual function returns a value, and the expected function type is void

The driver is passing or assigning a function (pointer) of an unexpected type (that is, function signature). This often occurs in C when the expected return type of a function is VOID and a function with an (implied) int return value is actually supplied. It can also happen when the parameters are compatible but not identical. In general, callback functions should match the expected type exactly, which is most easily accomplished using a function typedef.

This type mismatch message is designed primarily to verify that the Code Analysis tool can recognize callbacks.

Send comments about this topic to Microsoft

© 2017 Microsoft