Help and Support

Numéro d'article: 111500 - Dernière mise à jour: mardi 14 octobre 2003 - Version: 1.1

BOGUE : fin points-virgules peut provoquer des messages d'erreur incorrect

Sommaire

Agrandir tout | Réduire tout

Symptômes

Si extra fin des virgules sont placés à la fin d'une instruction de déclaration de données, l'assembleur de macros Microsoft (MASM) peut générer des messages d'erreur incorrect, qui peuvent inclure :
erreur A2207 : manquante parenthèse de droite dans l'expression
erreur A2081 : manquant opérande après opérateurs unaires
erreur A2206 : opérateur manquant dans l'expression
erreur A2050 : réel ou le numéro anglais interdit
Le message donné peut dépendent le code adjacentes. Dans certains cas incorrect est attribué au message seulement lorsqu'un fichier de liste est généré (le commutateur /fl est utilisé). Dans d'autres cas les messages d'erreur peuvent marquer la ligne incorrecte.

Résolution

Si un message d'erreur semble incorrect, vérifiez la ligne indiquée et les lignes adjacentes de virgule supplémentaire ou mal placés.

Statut

Microsoft confirmé a l'existence de ce problème dans MASM versions 6.1 x. Nous sont recherche ce problème et validez nouvelles informations ici, dans la Base de connaissances Microsoft. comme il devient disponible.

Plus d'informations

Le message d'erreur attendu pour virgule supplémentaire à la fin d'une instruction de déclaration de données est :
erreur A2009 : erreur de syntaxe dans l'expression
Notez que les erreurs incorrects s'uniquement produisent lorsque plusieurs virgules fin est utilisé.

Si une virgule fin unique et la ligne suivante est vide ou un commentaire puis aucune erreur n'est signalée. La virgule fin indique que les données de la ligne suivante doivent être concaténées pour les données précédentes. Un espace ou un commentaire ligne est ignorée par MASM et donc rien n'est effectuée. Toutefois, si une virgule unique se produit et la ligne suivante n'est pas vide ou un commentaire et ne contient les données correctes pour le type est affectée, la approprié erreur est générée. Par exemple
   db "Hello",
   nop
				
génère correctement :
erreur A2008 : erreur de syntaxe : nop
L'exemple suivant montre plusieurs messages de possible erreur incorrect lorsque compilés avec MASM 6.1 x. Les messages d'erreur et de leur emplacement pas figurent dans l'exemple de code en tant que commentaires car ajouter des commentaires les risque de changer le comportement de MASM.

Exemple de code

;Assembly options needed: /c /Fl

.model small

.data
   db "1",,

   db "1",
      "2",,

   db "1",,
      "2",

   db "1",
      "2",,
      "!"

end
				

Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Macro Assembler 6.1 Standard Edition
  • Microsoft Macro Assembler 6.1a
  • Microsoft Macro Assembler 6.11 Standard Edition
Mots-clés : 
kbmt KB111500 KbMtfr
Traduction automatiqueTraduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 111500  (http://support.microsoft.com/kb/111500/en-us/ )
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.
Retired KB ArticleExclusion de responsabilité concernant les contenus obsolètes dans la Base de connaissances
Cet article concerne des produits pour lesquels Microsoft n'offre plus de support. Il est par conséquent fourni « en l'état » et ne sera plus mis à jour.

Traductions disponibles