Envoyé par
Jean-Marc.Bourguet
Pas sûr. J'ai pas été faire une exégèse mais à mon avis la lecture d'un champs autre que le dernier écrit d'une union me semble être un comportement indéfini même dans le cas où les deux champs sont de même type tandis que le résultat de memcpy n'est du comportement indéfini que une lecture a lieu par après et si le motif de bits écrits n'est pas un motif valide pour le type lu (raisonnement: un memcpy vers un tableau d'unsigned char est bien défini, un memcpy depuis un tel tableau l'est aussi si le motif de bits copié est un motif valide et je ne vois pas de raison pour laquelle avoir la source d'un autre type poserait problème).
En passant, corrector, tu as une partie de la réponse que je ne t'ai jamais donnée sur la manière d'utiliser de manière conforme certaines garanties en matière de représentation.