Partager via


Erreurs du compilateur C2100 à C2199

Les articles de cette section de la documentation décrivent un sous-ensemble de messages d’erreur générés par le compilateur.

Important

Les compilateurs et outils de génération Visual Studio peuvent signaler de nombreux types d’erreurs et d’avertissements. Une fois qu’une erreur ou un avertissement a été détecté, les outils de génération peuvent faire des hypothèses sur l’intention du code, et tenter de poursuivre leur tâche, pour signaler un plus grand nombre de problèmes en même temps. Si les outils suivent une hypothèse incorrecte, les erreurs ou avertissements ultérieurs peuvent ne pas s'appliquer à votre projet. Lors de la résolution de problèmes dans votre projet, démarrez toujours par la première erreur ou le premier avertissement signalé et effectuez régulièrement une régénération. Un seul correctif peut permettre d’éliminer de nombreuses erreurs à venir.

Pour obtenir de l’aide sur un message de diagnostic particulier dans Visual Studio, sélectionnez-le dans la fenêtre Sortie, puis appuyez sur la touche F1. Visual Studio ouvre la page de documentation relative à cette erreur, le cas échéant. Vous pouvez également utiliser l’outil de recherche en haut de la page pour rechercher des articles sur des erreurs ou des avertissements spécifiques. Vous pouvez également parcourir la liste des erreurs et des avertissements par outil et par type dans la table des matières de cette page.

Remarque

Les erreurs et les avertissements Visual Studio ne sont pas documentés en totalité. Dans de nombreux cas, le message de diagnostic fournit toutes les informations disponibles. Si vous êtes arrivé sur cette page quand vous avez utilisé F1, et si vous pensez que le message d’erreur ou d’avertissement nécessite une explication supplémentaire, faites-le nous savoir. Vous pouvez utiliser les boutons de commentaires de cette page pour signaler un problème de documentation sur GitHub. Si vous pensez que l’erreur ou l’avertissement est incorrect, ou si vous avez trouvé un autre problème relatif à l’ensemble d’outils, signalez un problème de produit sur le site Developer Community. Vous pouvez également envoyer des commentaires et entrer des bogues dans l’IDE. Dans Visual Studio, accédez à la barre de menus, puis choisissez Aide > Envoyer des commentaires > Signaler un problème, ou envoyez une suggestion via Aide > Envoyer des commentaires > Envoyer une suggestion. Certaines rubriques d’erreur du compilateur qui ne sont pas émises par le compilateur ont été créées et redirigent maintenant vers cette page à la place.

Vous trouverez peut-être une aide supplémentaire sur les erreurs et les avertissements dans les forums de Q&A Microsoft Learn. Vous pouvez également rechercher le numéro d’erreur ou d’avertissement sur le site Developer Community de Visual Studio C++. Vous pouvez également effectuer des recherches sur Stack Overflow pour trouver des solutions.

Pour obtenir des liens vers d’autres ressources d’aide et de communauté, consultez Aide et communauté Visual C++.

Messages d’erreur

Erreur Message
Erreur du compilateur C2100 indirection illégale
Erreur du compilateur C2101 '&' sur constante
Erreur du compilateur C2102 '&' nécessite une l-value
Erreur du compilateur C2103 '&' sur variable de registre
Erreur du compilateur C2104 '&' ignoré dans le champ de bit
Erreur du compilateur C2105 'operator' nécessite une l-value
Erreur du compilateur C2106 'operator' : l'opérande gauche doit être une l-value
Erreur du compilateur C2107 index illégal, indirection interdite
Erreur du compilateur C2108 l'indice n'est pas de type intégral
Erreur du compilateur C2109 un indice nécessite un type tableau ou pointeur
Erreur du compilateur C2110 '+' : impossible d’ajouter deux pointeurs
Erreur du compilateur C2111 '+' : l’ajout d’un pointeur exige un opérande de type intégral
Erreur du compilateur C2112 '-' : la soustraction d'un pointeur nécessite un opérande intégral ou de pointeur
Erreur du compilateur C2113 '-' : le pointeur peut uniquement être soustrait d’un autre pointeur
Erreur du compilateur C2114 'operator' : pointeur à gauche ; nécessite une valeur intégrale à droite
Erreur du compilateur C2115 'operator' : types incompatibles
Erreur du compilateur C2116 listes de paramètres de fonctions différentes
Erreur du compilateur C2117 'identifier' : dépassement des limites du tableau
Erreur du compilateur C2118 indice négatif
Erreur du compilateur C2119 'identifier' : le type de 'type' ne peut pas être déduit à partir d’un initialiseur vide
Erreur du compilateur C2120 'void' illégal avec tous les types
Erreur du compilateur C2121 '#' : caractère non valable ; peut résulter d'une expansion macro
Erreur du compilateur C2122 'identifier' : paramètre de prototype illégal dans la liste de noms
Erreur du compilateur C2123 'identifier' : les modèles d'alias ne peuvent pas être spécialisés explicitement ou partiellement
Erreur du compilateur C2124 division ou modulo par zéro
Erreur du compilateur C2125 'constexpr' n'est pas compatible avec 'token'
Erreur du compilateur C2126 'identifier' ne peut pas être déclaré avec le spécificateur 'constexpr'
Erreur du compilateur C2127 'identifier' : initialisation illégale de l'entité 'constexpr' avec une expression non constante
Erreur du compilateur C2128 'function' : alloc_text/same_seg applicable uniquement aux fonctions avec une liaison C
Erreur du compilateur C2129 fonction statique 'identifier' déclarée, mais non définie
Erreur du compilateur C2130 #line attendait une chaîne contenant le nom du fichier et a trouvé 'token'
Erreur du compilateur C2131 l'expression n'a pas été évaluée en tant que constante
Erreur du compilateur C2132 erreur de syntaxe : identificateur inattendu
Erreur du compilateur C2133 'identifier' : taille inconnue
Erreur du compilateur C2134 'function' : l'appel ne produit pas une expression constante
Erreur du compilateur C2135 'operator' : opération illégale de champ de bit
Erreur du compilateur C2136 création de contrat d'API non autorisée
Erreur du compilateur C2137 constante caractère vide
Erreur du compilateur C2138 la définition d’une énumération sans membre est illégale
Erreur du compilateur C2139 'class' : une classe non définie n'est pas autorisée en tant qu'argument pour un trait de type intrinsèque du compilateur 'trait'
Erreur du compilateur C2140 'type' : un type dépendant d'un paramètre de type générique n'est pas autorisé en tant qu'argument pour un trait de type intrinsèque du compilateur 'trait'
Erreur du compilateur C2141 dépassement de capacité du tableau
Erreur du compilateur C2142 les déclarations de fonction diffèrent, les paramètres de variable sont uniquement spécifiés dans l'une d'entre elles
Erreur du compilateur C2143 erreur de syntaxe : absence de 'token1' avant 'token2'
Erreur du compilateur C2144 erreur de syntaxe : 'type' doit être précédé de 'token2'
Erreur du compilateur C2145 erreur de syntaxe : absence de 'token' avant l’identificateur
Erreur du compilateur C2146 erreur de syntaxe : absence de 'token' avant l’identificateur 'identifier'
Erreur du compilateur C2147 erreur de syntaxe : 'token' est un nouveau mot clé
Erreur du compilateur C2148 la taille totale du tableau ne doit pas dépasser 0xvalue octets
Erreur du compilateur C2149 'identifier' : un champ de bit nommé ne peut pas avoir une largeur égale à zéro
Erreur du compilateur C2150 'identifier' : un champ de bit doit être du type 'int', 'signed int' ou 'unsigned int'
Erreur du compilateur C2151 plus d'un attribut de langage
Erreur du compilateur C2152 'identifier' : pointeurs vers des fonctions avec différents attributs
Erreur du compilateur C2153 les littéraux d'entiers doivent comporter au moins un chiffre
Erreur du compilateur C2154 'type' : seul le type énumération est autorisé en tant qu'argument pour un trait de type intrinsèque du compilateur 'trait'
Erreur du compilateur C2155 '?' : opérande de gauche non valide, type arithmétique ou de pointeur attendu
Erreur du compilateur C2156 pragma doit être à l'extérieur de la fonction
Erreur du compilateur C2157 'identifier' : doit être déclaré avant d’être utilisé dans une liste pragma
Erreur du compilateur C2158 'type' : la directive #pragma make_public est actuellement prise en charge uniquement pour les types natifs sans modèle
Erreur du compilateur C2159 plus d'une classe de stockage spécifiée
Erreur du compilateur C2160 '##' ne peut se trouver au début de la définition d'une macro
Erreur du compilateur C2161 '##' ne peut se trouver à la fin de la définition d’une macro
Erreur du compilateur C2162 paramètre formel de macro attendu
Erreur du compilateur C2163 'function' : non disponible comme fonction intrinsèque
Erreur du compilateur C2164 « fonction » : fonction intrinsèque non déclarée
Erreur du compilateur C2165 'modifier' : impossible de modifier les pointeurs vers les données
Erreur du compilateur C2166 l-value définit un objet const
Erreur du compilateur C2167 'function' : paramètres réels de fonction intrinsèque trop nombreux
Erreur du compilateur C2168 'function' : nombre insuffisant de paramètres réels de fonction intrinsèque
Erreur du compilateur C2169 'function' : fonction intrinsèque, ne peut pas être définie
Erreur du compilateur C2170 'identifier' : non déclaré comme fonction, ne peut pas être intrinsèque
Erreur du compilateur C2171 'operator' : illégal sur les opérandes de type 'type'
Erreur du compilateur C2172 'function' : le paramètre réel n’est pas un pointeur ; nombre de paramètre
Erreur du compilateur C2173 'function' : le paramètre réel n’est pas un pointeur ; nombre de paramètre, nombre de liste de paramètre
Erreur du compilateur C2174 'function' : le paramètre réel dispose du type 'void' ; nombre de paramètre, nombre de liste de paramètre
Erreur du compilateur C2175 'locale' : paramètres régionaux non valides
Erreur du compilateur C2176 une instruction return ne peut pas apparaître dans le gestionnaire d'un bloc d’essai de fonction associé à un constructeur
Erreur du compilateur C2177 constante trop grande
Erreur du compilateur C2178 'identifier' ne peut pas être déclaré avec le déterminant 'specifier'
Erreur du compilateur C2179 'type' : un argument d'attribut ne peut pas utiliser de paramètres de type
Erreur du compilateur C2180 l'expression de contrôle dispose du type 'type'
Erreur du compilateur C2181 instruction else sans if correspondant non conforme
Erreur du compilateur C2182 'identifier' : utilisation illégale du type 'void'
Erreur du compilateur C2183 erreur de syntaxe : unité de traduction vide
Erreur du compilateur C2184 'type' : type illégal pour l’expression __except
Erreur du compilateur C2185 'identifier' : allocation de base illégale
Erreur du compilateur C2186 'operator' : opérande de type 'void' illégal
Erreur du compilateur C2187 erreur de syntaxe : 'token' inattendu ici
Erreur du compilateur C2188 'number' : trop grand pour un caractère large
Erreur du compilateur C2189 l'attribut 'alignas' ne peut pas être appliqué à un champ de bit, un paramètre de fonction, une déclaration d'exception ou une variable déclarée avec la classe de stockage 'register'
Erreur du compilateur C2190 première liste de paramètres plus longue que la seconde
Erreur du compilateur C2191 seconde liste de paramètres plus longue que la première
Erreur du compilateur C2192 déclaration différente du paramètre 'number'
Erreur du compilateur C2193 'identifier' : déjà dans un segment
Erreur du compilateur C2194 'identifier' : est un segment de texte
Erreur du compilateur C2195 'identifier' : est un segment de données
Erreur du compilateur C2196 valeur de cas 'value' déjà utilisée
Erreur du compilateur C2197 'function' : trop d’arguments pour l’appel
Erreur du compilateur C2198 'function' : pas assez d’arguments pour l’appel
Erreur du compilateur C2199 erreur de syntaxe : 'identifier' trouvé (au niveau de l’étendue globale (une déclaration était-elle envisagée ?)

Voir aussi

Erreurs et avertissements du compilateur C/C++ et des outils de génération
Erreurs du compilateur C2001 – C3999, C7000 – C7999