Ça va dépendre des langages, mais certains autorise les types unions. Ici, ça dira que ça retourne soit une chaîne de caractères, soit un entier, soit null. J'imagine que d'autres langages peuvent essayer de trouver un ancêtre commun, genre Object (je n'ai pas d'exemple d'un tel langage en tête). Enfin, certains langages vont juste donner une erreur à la compilation.
Globalement, ça dépend surtout de la manière dont les types sont définis par le langage, pas vraiment de l'inférence de type. Même sur un tel exemple, le type donné par l'inférence de type sera très certainement le même que celui qu'un humain aurait donné.
[^] # Re: et si plusieurs return avec différents types
Posté par Bruno Michel (site web personnel) . En réponse au journal Non, l'inférence de types n'est pas du typage faible. Oui, elle rend les programmes plus lisibles. Évalué à 6.
Ça va dépendre des langages, mais certains autorise les types unions. Ici, ça dira que ça retourne soit une chaîne de caractères, soit un entier, soit null. J'imagine que d'autres langages peuvent essayer de trouver un ancêtre commun, genre
Object(je n'ai pas d'exemple d'un tel langage en tête). Enfin, certains langages vont juste donner une erreur à la compilation.Globalement, ça dépend surtout de la manière dont les types sont définis par le langage, pas vraiment de l'inférence de type. Même sur un tel exemple, le type donné par l'inférence de type sera très certainement le même que celui qu'un humain aurait donné.