¿Son los dos punteros de función a la misma función siempre iguales?

¿El estándar de C ++ garantiza que dos punteros a una función siempre se comparan igual? Entiendo que esto normalmente será cierto para las funciones no en línea. Pero si hay una función en línea y se crea un puntero a la función en dos unidades de compilación separadas, ¿el vinculador combinará las dos instancias, o se le permite emitir funciones duplicadas?

Si la respuesta a lo anterior es "son iguales": ¿Esto sigue siendo válido si hay un encabezado común con una función en línea, y tanto el programa principal como un complemento cargado dinámicamente (objeto compartido / DLL) crean un puntero a la función ?

Respuestas a la pregunta(2)

Su respuesta a la pregunta