Étrange gcc error: stray '\NNN' dans le programme

Le problème suivant a surgi dans ma bibliothèque open source, et je ne peux pas comprendre ce qu'il se passe.

Deux de mes utilisateurs ont (gcc) des erreurs de compilation qui ressemblent à:

/home/someone/Source/src/._regex.cpp:1:1: warning: null character(s) ignored
/home/someone/Source/src/._regex.cpp:1: error: stray  in program
/home/someone/Source/src/._regex.cpp:1: error: stray 6 in program
/home/someone/Source/src/._regex.cpp:1: error: stray  in program
/home/someone/Source/src/._regex.cpp:1:5: warning: null character(s) ignored
/home/someone/Source/src/._regex.cpp:1: error: stray  in program
...

Je ne peux pas reproduire ces erreurs; le code se compile correctement sur toutes les machines que j'ai testé.

Googler autour semblait indiquer que ce qui est souvent le résultat d'une étrange codage ou la mise en forme étrange, mais j'ai couru tous les source par l'intermédiaire d'un éditeur hexadécimal, et tous les personnages sont soit ASCII imprimables (0x20 - 0x7E), ou un onglet, ou retour à la ligne. C'est tout.

Aussi, les deux utilisateurs compilé avec succès de la précédente version de la bibliothèque; mais le fichier en question (regex.cpp) et ses fichiers d'en-tête n'ont pas été modifiés depuis cette époque!

Veuillez voir ici pour plus de détails, y compris les liens pour télécharger le code si vous le souhaitez. Mais je serais heureux avec un pointeur dans une direction possible.

  • S'il vous plaît!!! LIRE la Version du Logiciel HOWTO (en.tldp.org/HOWTO/Software-Release-Practice-HOWTO/index.html) - vous toujours déballer des trucs dans un sous-répertoire (yaml-rpc-0.2.3) et de ne pas disperser votre code autour du répertoire courant...Zut! (OK: je devrais le savoir mieux, mais vous devriez en faire autant!)
  • Désolé, vous avez raison. Je suis juste tellement l'habitude de se faire défoncer par d'autres de cette façon que je le fais toujours un nouveau répertoire de toute façon lors de la décompression. Mais ouais, désolé, je vais corriger ça pour la prochaine fois. Merci pour le lien, trop.
  • ne pas accepter d'être vissé par d'autres de cette façon. Tolérer qu'une fois, souligner l'erreur de leurs manières à eux, et de refuser ensuite plus rien avoir à faire avec un logiciel qui ne traitent pas le problème.
InformationsquelleAutor Jesse Beder | 2009-10-25