Bonjour,

J'ai du mal à comprendre si la norme ANSI est adoptée "de base" par les compilateurs "modernes" d'aujourd'hui et plus précisement par GCC.

Car si j'ai bien compris, à partir de 1998 (je suis pas sûr de la date), ISO C++ a intégré la norme ANSI.
Ainsi, si je compile avec GCC, suis-je par default en ANSI-C++ (ou ISO/ANSI-C++) ?
Si oui, pourquoi existe-t-il des flags pour tels que std=c++98 -pedantic, surtout que par default c'est le flag std=gnu++98 qui est utilisé.

Je m'embrouille et n'y vois pas très clair.

D'où les questions suivantes:

1. Comment s'avoir si son code respecte la norme ANSI ou non? (faut-il mettre le flag ou pas)
2. Que préconise ou spécifie a la norme ANSI au juste (y a un document payant qui décrit ça je crois, à voir)
3. Et par default, quel impact à le flag std=gnu++98 ?

Merci de votre aide.