# Messages français pour GNU concernant cpplib.
# Copyright © 2001, 2008 Free Software Foundation, Inc.
# This file is distributed under the same license as the gcc package.
# Michel Robitaille <robitail@IRO.UMontreal.CA>, traducteur depuis/since 1996.
# François-Xavier Coudert <fxcoudert@gcc.gnu.org>, 2008.
# Stéphane Aulery <lkppo@free.fr>, 2015, 2016, 2017.
#
# Vocabulaire utilisé
# 	lvalue	 	= membre gauche
# 	deprecated	= obsolète
# 	out of range	= hors des limites
# 	range		= gamme
# 	scope		= porté, champ
# 	shadowing	= masquer
# 	embedded PIC	= PIC enchâssé
# 	CPU		= processeur
# 	structure with flexible member
# 			= structure ayant un membre flexible
# 	flag		= fanion
# 	forward declaration
# 			= déclaration anticipée
# 	token 		= élément lexical (dans le contexte du parsing)
# 	to subscript	= indicer
# 	top-level	= hors de toute fonction
# 	member function	= fonction membre
#
# Pas traduit:
# 	thread
#
# J'ai des doutes pour :
# 	inline 		= enligne (pas systématiquement)
#                         oui dans le contexte du langage C par exemple MR
#                         non autrement ...de manière générale MR
# 	section attribute	attribut de section OK MR
# 	wide char		caractère long  ...non mieux caractère large MR 
#                               plus conforme à l'esprit.
#
# ------
# 	literals		littéral, ou mot composé ?
# msgid "ISO C89 forbids compound literals"
# msgstr "le C89 ISO interdit les mots composés"
#
# 	symbol table		table des symboles ou table de symbole
# 	command map		carte des commandes
# 	Combiner		combinateur
# msgid ""
# ";; Combiner statistics: %d attempts, %d substitutions (%d requiring new space),\n"
# ";; %d successes.\n"
# "\n"
# msgstr ""
# ";; Statistiques du combinateur : %d tentatives, %d substitutions (%d requérant un nouvel espace),\n"
# ";; %d succès.\n"
# "\n"
#
# 	promote			promouvoir
# msgid "the left operand of \"%s\" changes sign when promoted"
# msgstr "L'opérande gauche de « %s » change de signe lors de sa promotion"
#
#        include guards	       ???
# msgid "Multiple include guards may be useful for:\n"
# msgstr "De multiples balises pour les inclusions peuvent être utiles pour :\n"
#
#
#        universal-character-name ???
# msgid "incomplete universal-character-name"
# msgid "non-hex digit '%c' in universal-character-name"
# msgid "universal-character-name on EBCDIC target"
#
#       poisoning			empoisonnement
# msgid "poisoning existing macro \"%s\""
# msgstr "empoisonnement de la macro existente « %s »"
# MR  9-jan 2004: poisoning etc... transformé par corruption corrompu etc..
# MR 24-mai 2004: poison etc...suite au msg concernant le #pragma once et #pragma poison 
#
# Autres règles:
# 	- j'ai ajouté un adjectif par rapport à l'anglais si le message est
#    	  une phrase avec verbe conjugé. 
# 	- ISO est considéré comme un adjectif dans « C ISO »
#         
# Erreurs corrigées:
# 	librairies, assumer
#
# A faire:
#   - s/en ligne/en-ligne/  modifié 9-janv-2004 MR
#   - s/en-ligne/enligne/  modifié 18-février-2004 MR pcq expression ou terme enlignage vs inlining
#   - hors gamme  a été changé pour hors limite ...MR 09-jan-2004
#   - literal
#   - chaîne de format => formatage
#   - scope
#   - supporté est un faux ami
#
# A rapporter upstream:
# <<<<<<<<
# In c-opts.c, begining line 1732, a lot of options are of the kind:
#    "  -W[no-]trigraphs          Warn if trigraphs are encountered\n"
# I guess it would be better to change them all to something like
#    "  -W[no-]trigraphs          Warn [or not] if trigraphs are encountered\n"
#
#
# #: c-opts.c:1759
# "  -MP\t\t\t    Generate phony targets for all headers\n"
# you may want to change the \t to spaces, as it is done for the other lines.
#
# #: c-typeck.c:3166 c-typeck.c:4632 c-typeck.c:4648 c-typeck.c:4664
# #: final.c:3146 final.c:3148 gcc.c:4397 rtl-error.c:122 toplev.c:1694
# #: config/cris/cris.c:529 cp/typeck.c:4341 java/expr.c:364 java/verify.c:1467
# #: java/verify.c:1468 java/verify.c:1483
# #, c-format
# msgid "%s"
# msgstr "%s"
#
# Are you sure you want to translate the messages in cfgrtl.c, or are they
#  debugging informations ?
#
# You may want to use ngettext instead of putting (s) in text.
# msgid "null character(s) preserved in literal"
#
# >>>>>>>>>
#
msgid ""
msgstr ""
"Project-Id-Version: GNU cpplib 7.1-b20170101\n"
"Report-Msgid-Bugs-To: http://gcc.gnu.org/bugs.html\n"
"POT-Creation-Date: 2017-01-01 00:51+0000\n"
"PO-Revision-Date: 2017-04-29 19:28+0200\n"
"Last-Translator: Stéphane Aulery <lkppo@free.fr>\n"
"Language-Team: French <traduc@traduc.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8-bit\n"
"X-Bugs: Report translation errors to the Language-Team address.\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"

#: charset.c:674
#, c-format
msgid "conversion from %s to %s not supported by iconv"
msgstr "la conversion de %s vers %s n’est pas prise en charge par iconv"

#: charset.c:677
msgid "iconv_open"
msgstr "iconv_open"

#: charset.c:685
#, c-format
msgid "no iconv implementation, cannot convert from %s to %s"
msgstr "pas d’implantation iconv, impossible de convertir %s vers %s"

#: charset.c:781
#, c-format
msgid "character 0x%lx is not in the basic source character set\n"
msgstr "le caractère 0x%lx n’est pas dans le jeu de caractères source de base\n"

#: charset.c:798 charset.c:1677
msgid "converting to execution character set"
msgstr "conversion vers un jeu de caractères d’exécution"

#: charset.c:804
#, c-format
msgid "character 0x%lx is not unibyte in execution character set"
msgstr "le caractère 0x%lx n’est pas un octet unique dans le jeu de caractères d’exécution"

#: charset.c:1047
msgid "universal character names are only valid in C++ and C99"
msgstr "les noms de caractères universels sont seulement valides en C++ et C99"

#: charset.c:1051
msgid "C99's universal character names are incompatible with C90"
msgstr "les noms de caractère universel C99 sont incompatibles avec C90"

#: charset.c:1054
#, c-format
msgid "the meaning of '\\%c' is different in traditional C"
msgstr "la signification de « \\%c » est différente en C traditionnel"

#: charset.c:1063
msgid "In _cpp_valid_ucn but not a UCN"
msgstr "Dans _cpp_valid_ucn mais n'est pas un UCN"

# FIXME
#: charset.c:1096
#, c-format
msgid "incomplete universal character name %.*s"
msgstr "nom de caractère universel incomplet %.*s"

#: charset.c:1111
#, c-format
msgid "%.*s is not a valid universal character"
msgstr "%.*s n’est pas un caractère universel valide"

#: charset.c:1121 lex.c:1333
msgid "'$' in identifier or number"
msgstr "« $ » dans un identificateur ou un nombre"

#: charset.c:1131
#, c-format
msgid "universal character %.*s is not valid in an identifier"
msgstr "le caractère universel %.*s n’est pas valide dans un identificateur"

#: charset.c:1135
#, c-format
msgid "universal character %.*s is not valid at the start of an identifier"
msgstr "le caractère universel %.*s n’est pas valide au début d’un identificateur"

#: charset.c:1181 charset.c:2000
msgid "converting UCN to source character set"
msgstr "conversion UCN vers le jeu de caractères source"

#: charset.c:1188
msgid "converting UCN to execution character set"
msgstr "conversion UCN vers le jeu de caractères d’exécution"

#: charset.c:1277
msgid "the meaning of '\\x' is different in traditional C"
msgstr "la signification de « \\x » est différente en C traditionnel"

#: charset.c:1302
msgid "\\x used with no following hex digits"
msgstr "\\x utilisé sans être suivi de chiffres hexadécimaux"

#: charset.c:1309
msgid "hex escape sequence out of range"
msgstr "séquence d’échappement hexadécimale hors intervalle"

#: charset.c:1361
msgid "octal escape sequence out of range"
msgstr "séquence d’échappement octale hors intervalle"

#: charset.c:1443
msgid "the meaning of '\\a' is different in traditional C"
msgstr "la signification de « \\a » est différente en C traditionnel"

#: charset.c:1450
#, c-format
msgid "non-ISO-standard escape sequence, '\\%c'"
msgstr "séquence d’échappement « \\%c » non conforme au standard ISO"

#: charset.c:1458
#, c-format
msgid "unknown escape sequence: '\\%c'"
msgstr "séquence d'échappement inconnue : « \\%c »"

#: charset.c:1466
#, c-format
msgid "unknown escape sequence: '\\%s'"
msgstr "séquence d’échappement « \\%s » inconnue"

#: charset.c:1474
msgid "converting escape sequence to execution character set"
msgstr "conversion d’une séquence d’échappement vers le jeu de caractères d’exécution"

#: charset.c:1614
msgid "missing open quote"
msgstr "guillemet ouvrant de chaîne de caractères manquant"

#: charset.c:1827 charset.c:1891
msgid "character constant too long for its type"
msgstr "constante caractère trop longue pour son type"

#: charset.c:1830
msgid "multi-character character constant"
msgstr "constante caractère multi-caractères"

#: charset.c:1931
msgid "empty character constant"
msgstr "constante caractère vide"

#: charset.c:2047
#, c-format
msgid "failure to convert %s to %s"
msgstr "échec de conversion de %s vers %s"

#: directives.c:235 directives.c:278
#, c-format
msgid "extra tokens at end of #%s directive"
msgstr "éléments lexicaux superflus à la fin de la directive #%s"

#: directives.c:385
#, c-format
msgid "#%s is a GCC extension"
msgstr "#%s est une extension GCC"

#: directives.c:390
#, c-format
msgid "#%s is a deprecated GCC extension"
msgstr "#%s est une extension obsolète de GCC"

#: directives.c:403
msgid "suggest not using #elif in traditional C"
msgstr "il est suggéré de ne pas utiliser #elif en C traditionnel"

#: directives.c:406
#, c-format
msgid "traditional C ignores #%s with the # indented"
msgstr "le C traditionnel ignore la directive #%s si le caractère # est indenté"

#: directives.c:410
#, c-format
msgid "suggest hiding #%s from traditional C with an indented #"
msgstr "il est suggéré de cacher #%s au C traditionnel en indentant le « # »"

#: directives.c:436
msgid "embedding a directive within macro arguments is not portable"
msgstr "placer une directive dans les arguments d’une macro n’est pas portable"

#: directives.c:456
msgid "style of line directive is a GCC extension"
msgstr "la directive de style de ligne est une extension GCC"

#: directives.c:537
#, c-format
msgid "invalid preprocessing directive #%s"
msgstr "directive de pré-traitement #%s invalide"

#: directives.c:606
msgid "\"defined\" cannot be used as a macro name"
msgstr "« defined » ne peut être utilisé comme nom de macro"

#: directives.c:611
msgid "\"__has_include__\" cannot be used as a macro name"
msgstr "« __has_include__ » ne peut être utilisé comme nom de macro"

#: directives.c:617
#, c-format
msgid "\"%s\" cannot be used as a macro name as it is an operator in C++"
msgstr "« %s » ne peut être utilisé comme nom de macro car c’est un opérateur C++"

#: directives.c:620
#, c-format
msgid "no macro name given in #%s directive"
msgstr "aucun nom de macro donné dans la directive #%s"

#: directives.c:623
msgid "macro names must be identifiers"
msgstr "les noms de macro doivent être des identificateurs"

#: directives.c:672 directives.c:677
#, c-format
msgid "undefining \"%s\""
msgstr "suppression de la définition de « %s »"

#: directives.c:732
msgid "missing terminating > character"
msgstr "caractère > de terminaison manquant"

#: directives.c:791
#, c-format
msgid "#%s expects \"FILENAME\" or <FILENAME>"
msgstr "#%s attend \"NOM_DE_FICHIER\" ou <NOM_DE_FICHIER>"

#: directives.c:837
#, c-format
msgid "empty filename in #%s"
msgstr "nom de fichier vide dans #%s"

#: directives.c:847
msgid "#include nested too deeply"
msgstr "#include imbriqué trop profondément"

#: directives.c:888
msgid "#include_next in primary source file"
msgstr "#include_next dans un fichier source primaire"

#: directives.c:914
#, c-format
msgid "invalid flag \"%s\" in line directive"
msgstr "drapeau « %s » invalide dans la ligne de directive"

#: directives.c:974
msgid "unexpected end of file after #line"
msgstr "fin de fichier inattendue après #ligne"

#: directives.c:977
#, c-format
msgid "\"%s\" after #line is not a positive integer"
msgstr "« %s » après #ligne n’est pas un nombre entier positif"

#: directives.c:983 directives.c:985
msgid "line number out of range"
msgstr "numéro de ligne hors intervalle"

#: directives.c:998 directives.c:1079
#, c-format
msgid "\"%s\" is not a valid filename"
msgstr "« %s » n’est pas un nom de fichier valide"

#: directives.c:1039
#, c-format
msgid "\"%s\" after # is not a positive integer"
msgstr "« %s » après # n’est pas un nombre entier positif"

#: directives.c:1098
#, c-format
msgid "file \"%s\" linemarker ignored due to incorrect nesting"
msgstr "fichier linemarker « %s » ignoré à cause d’une imbriquation incorrecte"

#: directives.c:1157 directives.c:1159 directives.c:1161 directives.c:1747
#, c-format
msgid "%s"
msgstr "%s"

#: directives.c:1185
#, c-format
msgid "invalid #%s directive"
msgstr "directive #%s invalide"

#: directives.c:1248
#, c-format
msgid "registering pragmas in namespace \"%s\" with mismatched name expansion"
msgstr "enregistrement des pragmas dans l’espace de nom « %s » avec une expansion de nom ne correspondant pas"

# FIXME
#: directives.c:1257
#, c-format
msgid "registering pragma \"%s\" with name expansion and no namespace"
msgstr "enregistrement de la pragma « %s » avec une expansion de nom mais pas d’espace de nom"

# FIXME
#: directives.c:1275
#, c-format
msgid "registering \"%s\" as both a pragma and a pragma namespace"
msgstr "enregistrement de « %s » à la fois comme une pragma et un espace de nom de pragma"

#: directives.c:1278
#, c-format
msgid "#pragma %s %s is already registered"
msgstr "la #pragma %s %s est déjà enregistrée"

#: directives.c:1281
#, c-format
msgid "#pragma %s is already registered"
msgstr "la #pragma %s est déjà enregistrée"

#: directives.c:1311
msgid "registering pragma with NULL handler"
msgstr "enregistrement d’une pragma avec un handler NULL"

# FIXME
#: directives.c:1528
msgid "#pragma once in main file"
msgstr "#pragma once utilisée une seule fois dans le fichier principal"

# FIXME
#: directives.c:1551
msgid "invalid #pragma push_macro directive"
msgstr "directive #pragma push_macro invalide"

# FIXME
#: directives.c:1606
msgid "invalid #pragma pop_macro directive"
msgstr "directive #pragma pop_macro invalide"

# FIXME
#: directives.c:1661
msgid "invalid #pragma GCC poison directive"
msgstr "directive GCC #pragma poison invalide"

# FIXME
#: directives.c:1670
#, c-format
msgid "poisoning existing macro \"%s\""
msgstr "élimination de la macro existante « %s »"

#: directives.c:1689
msgid "#pragma system_header ignored outside include file"
msgstr "#pragma system_header ignorée en dehors du fichier d'inclusion"

#: directives.c:1714
#, c-format
msgid "cannot find source file %s"
msgstr "impossible de trouver le fichier source %s"

#: directives.c:1718
#, c-format
msgid "current file is older than %s"
msgstr "le fichier courant est plus vieux que %s"

# FIXME
#: directives.c:1742
#, c-format
msgid "invalid \"#pragma GCC %s\" directive"
msgstr "directive « #pragma GCC %s » invalide"

#: directives.c:1943
msgid "_Pragma takes a parenthesized string literal"
msgstr "_Pragma attend une chaîne entourée de parenthèses"

#: directives.c:2064
msgid "#else without #if"
msgstr "#else sans #if"

#: directives.c:2069
msgid "#else after #else"
msgstr "#else après #else"

#: directives.c:2071 directives.c:2104
msgid "the conditional began here"
msgstr "la condition débute ici"

#: directives.c:2097
msgid "#elif without #if"
msgstr "#elif sans #if"

#: directives.c:2102
msgid "#elif after #else"
msgstr "#elif après #else"

#: directives.c:2133
msgid "#endif without #if"
msgstr "#endif sans #if"

#: directives.c:2213
msgid "missing '(' after predicate"
msgstr "« ( » manquante après le prédicat"

#: directives.c:2228
msgid "missing ')' to complete answer"
msgstr "« ) » manquante pour completer la réponse"

#: directives.c:2248
msgid "predicate's answer is empty"
msgstr "la réponse du prédicat est vide"

#: directives.c:2275
msgid "assertion without predicate"
msgstr "assertion sans prédicat"

#: directives.c:2278
msgid "predicate must be an identifier"
msgstr "le prédicat doit être un identificateur"

# FIXME
#: directives.c:2364
#, c-format
msgid "\"%s\" re-asserted"
msgstr "assertion « %s » redondante"

#: directives.c:2656
#, c-format
msgid "unterminated #%s"
msgstr "#%s non terminé"

#: directives-only.c:221 lex.c:2819 traditional.c:167
msgid "unterminated comment"
msgstr "commentaire non terminé"

#: errors.c:300
#, c-format
msgid "%s: %s"
msgstr "%s : %s"

#: errors.c:312
msgid "stdout"
msgstr "sortie standard"

#: expr.c:601 expr.c:718
msgid "fixed-point constants are a GCC extension"
msgstr "les constantes à virgule fixe sont une extension GCC"

#: expr.c:626
msgid "invalid prefix \"0b\" for floating constant"
msgstr "préfixe « 0b » invalide pour une constante flottante"

#: expr.c:639
msgid "use of C++1z hexadecimal floating constant"
msgstr "utilisation d’une constante flottante hexadécimale C++1z"

#: expr.c:642
msgid "use of C99 hexadecimal floating constant"
msgstr "utilisation d’une constante flottante hexadécimale C99"

#: expr.c:686
#, c-format
msgid "invalid suffix \"%.*s\" on floating constant"
msgstr "suffixe « %.*s » invalide pour une constante flottante"

#: expr.c:697 expr.c:757
#, c-format
msgid "traditional C rejects the \"%.*s\" suffix"
msgstr "le C traditionnel interdit le suffixe « %.*s »"

#: expr.c:705
msgid "suffix for double constant is a GCC extension"
msgstr "le suffixe pour les constantes double est une extension GCC"

#: expr.c:711
#, c-format
msgid "invalid suffix \"%.*s\" with hexadecimal floating constant"
msgstr "suffixe « %.*s » invalide pour une constante flottante hexadécimale"

#: expr.c:722
msgid "decimal float constants are a GCC extension"
msgstr "les constantes flottantes décimales sont une extension GCC"

#: expr.c:740
#, c-format
msgid "invalid suffix \"%.*s\" on integer constant"
msgstr "suffixe « %.*s » invalide pour une constante entière"

#: expr.c:765
msgid "use of C++11 long long integer constant"
msgstr "utilisation d’une constante entière « long long » C++11"

#: expr.c:766
msgid "use of C99 long long integer constant"
msgstr "utilisation d’une constante entière « long long » C99"

#: expr.c:782
msgid "imaginary constants are a GCC extension"
msgstr "les constantes imaginaires sont une extension GCC"

#: expr.c:788
msgid "binary constants are a C++14 feature or GCC extension"
msgstr "les constantes binaires sont une fonctionnalité de C++14 ou une extension GCC"

#: expr.c:790
msgid "binary constants are a GCC extension"
msgstr "les constantes binaires sont une extension GCC"

#: expr.c:885
msgid "integer constant is too large for its type"
msgstr "constante entière trop grande pour tenir dans son type"

#: expr.c:916
msgid "integer constant is so large that it is unsigned"
msgstr "cette constante entière est si grande qu’elle est non signée"

#: expr.c:1011
msgid "missing ')' after \"defined\""
msgstr "« ) » manquant après « defined »"

#: expr.c:1018
msgid "operator \"defined\" requires an identifier"
msgstr "l’opérateur « defined » requiert un identificateur"

#: expr.c:1026
#, c-format
msgid "(\"%s\" is an alternative token for \"%s\" in C++)"
msgstr "(« %s » est un élément lexical alternatif pour « %s » en C++)"

#: expr.c:1038
msgid "this use of \"defined\" may not be portable"
msgstr "cette utilisation de « defined » peut ne pas être portable"

#: expr.c:1098
msgid "user-defined literal in preprocessor expression"
msgstr "chaîne défini par l’utilisateur dans une expression pour le préprocesseur"

#: expr.c:1103
msgid "floating constant in preprocessor expression"
msgstr "constante flottante dans une expression pour le préprocesseur"

#: expr.c:1109
msgid "imaginary number in preprocessor expression"
msgstr "constante complexe dans une expression pour le préprocesseur"

#: expr.c:1162
#, c-format
msgid "\"%s\" is not defined, evaluates to 0"
msgstr "« %s » n’est pas défini, évalué à 0"

#: expr.c:1175
msgid "assertions are a GCC extension"
msgstr "les assertions sont une extension GCC"

#: expr.c:1178
msgid "assertions are a deprecated extension"
msgstr "les assertions sont une extension obsolète"

#: expr.c:1424
#, c-format
msgid "unbalanced stack in %s"
msgstr "pile non balancée dans %s"

#: expr.c:1444
#, c-format
msgid "impossible operator '%u'"
msgstr "opérateur « %u » impossible"

#: expr.c:1545
msgid "missing ')' in expression"
msgstr "« ) » manquante dans l’expression"

#: expr.c:1574
msgid "'?' without following ':'"
msgstr "« ? » n’est pas suivi de « : »"

#: expr.c:1584
msgid "integer overflow in preprocessor expression"
msgstr "débordement d’entier dans l’expression pour le préprocesseur"

#: expr.c:1589
msgid "missing '(' in expression"
msgstr "« ( » manquante dans l’expression"

#: expr.c:1621
#, c-format
msgid "the left operand of \"%s\" changes sign when promoted"
msgstr "L’opérande gauche de « %s » change de signe lors de sa promotion"

#: expr.c:1626
#, c-format
msgid "the right operand of \"%s\" changes sign when promoted"
msgstr "L’opérande droite de « %s » change de signe lors de sa promotion"

#: expr.c:1885
msgid "traditional C rejects the unary plus operator"
msgstr "le C traditionnel rejette l’opérateur d'addition unaire"

#: expr.c:1983
msgid "comma operator in operand of #if"
msgstr "opérateur virgule dans l’opérande de #if"

#: expr.c:2119
msgid "division by zero in #if"
msgstr "division par zéro dans #if"

#: expr.c:2216
msgid "operator \"__has_include__\" requires a header string"
msgstr "l’opérateur « __has_include__ » requiert un chaîne d'entête"

#: expr.c:2232
msgid "missing ')' after \"__has_include__\""
msgstr "« ) » manquant après « __has_include__ »"

#: files.c:573
msgid "one or more PCH files were found, but they were invalid"
msgstr "un ou plusieurs fichiers PCH ont été trouvés, mais ils étaient invalides"

#: files.c:576
msgid "use -Winvalid-pch for more information"
msgstr "utiliser -Winvalid-pch pour plus d’informations"

#: files.c:981
#, c-format
msgid "no include path in which to search for %s"
msgstr "aucun chemin d’inclusion dans lequel on pourrait rechercher %s"

# FIXME
#: files.c:1441
msgid "Multiple include guards may be useful for:\n"
msgstr "De multiples balises pour les inclusions peuvent être utiles pour :\n"

#: init.c:553
msgid "cppchar_t must be an unsigned type"
msgstr "cppchar_t doit être d’un type non signé"

#: init.c:557
#, c-format
msgid "preprocessor arithmetic has maximum precision of %lu bits; target requires %lu bits"
msgstr "l’arithmétique du préprocesseur a une précision maximale de %lu bits ; la cible requière %lu bits"

#: init.c:564
msgid "CPP arithmetic must be at least as precise as a target int"
msgstr "l’arithmétique de CPP doit être au moins aussi précise que le type int de la cible"

#: init.c:567
msgid "target char is less than 8 bits wide"
msgstr "sur la cible, char fait moins de 8 bits"

#: init.c:571
msgid "target wchar_t is narrower than target char"
msgstr "sur la cible, wchar_t est plus petit que char"

#: init.c:575
msgid "target int is narrower than target char"
msgstr "sur la cible, int est plus petit que char"

#: init.c:580
msgid "CPP half-integer narrower than CPP character"
msgstr "les demi-entiers de CPP sont plus petits que les caractères de CPP"

#: init.c:584
#, c-format
msgid "CPP on this host cannot handle wide character constants over %lu bits, but the target requires %lu bits"
msgstr "CPP sur cette machine ne peut gérer les constantes de caractères larges de plus de %lu bits, mais la cible requière %lu bits"

#: lex.c:1126
msgid "backslash and newline separated by space"
msgstr "\\ et retour de chariot séparés par un blanc"

#: lex.c:1131
msgid "backslash-newline at end of file"
msgstr "\\ en fin de ligne à la fin du fichier"

#: lex.c:1147
#, c-format
msgid "trigraph ??%c converted to %c"
msgstr "trigraphe ??%c converti en %c"

#: lex.c:1155
#, c-format
msgid "trigraph ??%c ignored, use -trigraphs to enable"
msgstr "trigraphe ??%c ignoré, utilisez -trigraphs pour l’activer"

#: lex.c:1204
msgid "\"/*\" within comment"
msgstr "« /* » à l’intérieur d’un commentaire"

#: lex.c:1262
#, c-format
msgid "%s in preprocessing directive"
msgstr "%s dans la directive du préprocesseur"

# I18N
#: lex.c:1271
msgid "null character(s) ignored"
msgstr "caractère(s) nul(s) ignoré(s)"

#: lex.c:1308
#, c-format
msgid "`%.*s' is not in NFKC"
msgstr "« %.*s » n’est pas normalisée NFKC"

#: lex.c:1311
#, c-format
msgid "`%.*s' is not in NFC"
msgstr "« %.*s » n'est pas normalisée NFC"

# FIXME
#: lex.c:1381 lex.c:1470
#, c-format
msgid "attempt to use poisoned \"%s\""
msgstr "tentative d'utilisation d’un « %s » corrompu"

#: lex.c:1391 lex.c:1480
msgid "__VA_ARGS__ can only appear in the expansion of a C++11 variadic macro"
msgstr "« __VA_ARGS__ » peut seulement apparaître dans l’expansion de macros C++11 à nombre variable d’arguments"

#: lex.c:1395 lex.c:1484
msgid "__VA_ARGS__ can only appear in the expansion of a C99 variadic macro"
msgstr "« __VA_ARGS__ » peut seulement apparaître dans l’expansion des macros C99 à nombre variable d’arguments"

#: lex.c:1402 lex.c:1491
#, c-format
msgid "identifier \"%s\" is a special operator name in C++"
msgstr "l’identifiant « %s » est un nom d’opérateur spécial en C++"

#: lex.c:1781
msgid "raw string delimiter longer than 16 characters"
msgstr "délimiteur de chaîne brute de plus de 16 caractères"

#: lex.c:1785
msgid "invalid new-line in raw string delimiter"
msgstr "caractère de nouvelle ligne invalide dans un délimiteur de chaîne brute"

#: lex.c:1789
#, c-format
msgid "invalid character '%c' in raw string delimiter"
msgstr "caractère « %c » invalide dans un délimiteur de chaîne brute"

#: lex.c:1838 lex.c:1860
msgid "unterminated raw string"
msgstr "chaîne brute non terminée"

#: lex.c:1881 lex.c:2011
msgid "invalid suffix on literal; C++11 requires a space between literal and string macro"
msgstr "suffixe de chaîne invalide ; C++11 requière un espace entre une chaîne et une macro de chaîne"

#: lex.c:1993
msgid "null character(s) preserved in literal"
msgstr "caractère(s) nul préservé(s) dans la chaîne"

#: lex.c:1996
#, c-format
msgid "missing terminating %c character"
msgstr "caractère %c de terminaison manquant"

#: lex.c:2029
msgid "C++11 requires a space between string literal and macro"
msgstr "C++11 requière un espace entre une chaîne et une macro"

#: lex.c:2833 lex.c:2867
msgid "C++ style comments are not allowed in ISO C90"
msgstr "La syntaxe des commentaires C++ n’est pas permise en C90 ISO"

#: lex.c:2835 lex.c:2846 lex.c:2869
msgid "(this will be reported only once per input file)"
msgstr "(ceci sera rapporté une seule fois seulement par fichier d'entrée)"

#: lex.c:2844
msgid "C++ style comments are incompatible with C90"
msgstr "La syntaxe des commentaires C++ n’est pas permise en C90"

#: lex.c:2875
msgid "multi-line comment"
msgstr "commentaire multi-lignes"

#: lex.c:3248
#, c-format
msgid "unspellable token %s"
msgstr "l’élément lexical %s ne peut être épelé"

#: macro.c:203
#, c-format
msgid "macro \"%s\" is not used"
msgstr "la macro « %s » n’est pas utilisée"

#: macro.c:242 macro.c:488
#, c-format
msgid "invalid built-in macro \"%s\""
msgstr "macro interne « %s » invalide"

#: macro.c:249 macro.c:349
#, c-format
msgid "macro \"%s\" might prevent reproducible builds"
msgstr "la macro « %s » empêchera toute compilation reproductible"

#: macro.c:280
msgid "could not determine file timestamp"
msgstr "date de modification du fichier indéterminable"

#: macro.c:395
msgid "could not determine date and time"
msgstr "date et heure indéterminable"

#: macro.c:411
msgid "__COUNTER__ expanded inside directive with -fdirectives-only"
msgstr "Expansion de __COUNTER__ à l’intérieur d’une directive avec -fdirectives-only"

#: macro.c:599
msgid "invalid string literal, ignoring final '\\'"
msgstr "chaîne invalide, « \\ » final ignoré"

#: macro.c:661
#, c-format
msgid "pasting \"%s\" and \"%s\" does not give a valid preprocessing token"
msgstr "le collage de « %s » et de « %s » ne donne pas d’élément lexical de pré-traitement valide"

#: macro.c:785
msgid "ISO C++11 requires at least one argument for the \"...\" in a variadic macro"
msgstr "ISO C++11 requiert au moins un argument pour « ... » dans une macro à nombre variable d’arguments"

#: macro.c:789
msgid "ISO C99 requires at least one argument for the \"...\" in a variadic macro"
msgstr "ISO C99 requiert au moins un argument pour « ... » dans une macro à nombre variable d’arguments"

#: macro.c:796
#, c-format
msgid "macro \"%s\" requires %u arguments, but only %u given"
msgstr "la macro « %s » requiert %u arguments, mais seulement %u ont été passés"

#: macro.c:801
#, c-format
msgid "macro \"%s\" passed %u arguments, but takes just %u"
msgstr "la macro « %s » a reçu %u arguments, mais elle n’en prend que %u"

#: macro.c:995 traditional.c:819
#, c-format
msgid "unterminated argument list invoking macro \"%s\""
msgstr "liste d'arguments non terminée invoquant la macro « %s »"

#: macro.c:1146
#, c-format
msgid "function-like macro \"%s\" must be used with arguments in traditional C"
msgstr "la macro « %s » ressemblant à une fonction doit être utilisée avec des arguments en C traditionnel"

#: macro.c:1836
#, c-format
msgid "invoking macro %s argument %d: empty macro arguments are undefined in ISO C++98"
msgstr "appel de la macro %s avec l'argument %d : les arguments de macro vides sont indéfinis en ISO C++98"

#: macro.c:1844 macro.c:1853
#, c-format
msgid "invoking macro %s argument %d: empty macro arguments are undefined in ISO C90"
msgstr "appel de la macro %s avec l'argument %d : les arguments de macro vides sont indéfinis en ISO C++90"

#: macro.c:2817
#, c-format
msgid "duplicate macro parameter \"%s\""
msgstr "paramètre de macro « %s » dupliqués"

#: macro.c:2866
#, c-format
msgid "\"%s\" may not appear in macro parameter list"
msgstr "« %s » peut ne pas apparaître parmi la liste des paramètres de macro"

#: macro.c:2874
msgid "macro parameters must be comma-separated"
msgstr "les paramètres de macro doivent être séparés par des virgules"

#: macro.c:2893
msgid "parameter name missing"
msgstr "nom de paramètre manquant"

#: macro.c:2914
msgid "anonymous variadic macros were introduced in C++11"
msgstr "les macros anonymes à nombre variable d’arguments ont été introduites avec le C++11"

#: macro.c:2918 macro.c:2923
msgid "anonymous variadic macros were introduced in C99"
msgstr "les macros anonymes à nombre variable d’arguments ont été introduites avec le C99"

#: macro.c:2930
msgid "ISO C++ does not permit named variadic macros"
msgstr "ISO C++ ne permet pas les macros nommées à nombre variable d’arguments"

#: macro.c:2933
msgid "ISO C does not permit named variadic macros"
msgstr "ISO C ne permet pas les macros nommées à nombre variable d’arguments"

#: macro.c:2943
msgid "missing ')' in macro parameter list"
msgstr "« ) » manquante dans la liste des paramètres de macro"

# FIXME
#: macro.c:2994
msgid "'##' cannot appear at either end of a macro expansion"
msgstr "« ## » ne peut apparaître à chacune des fins d’une expansion de macro"

#: macro.c:3031
msgid "ISO C++11 requires whitespace after the macro name"
msgstr "ISO C++11 requiert un blanc après le nom de la macro"

#: macro.c:3034
msgid "ISO C99 requires whitespace after the macro name"
msgstr "ISO C99 requiert un blanc après le nom de la macro"

#: macro.c:3059
msgid "missing whitespace after the macro name"
msgstr "espacement manquant après le nom de la macro"

#: macro.c:3093
msgid "'#' is not followed by a macro parameter"
msgstr "« # » n'est pas suivi d’un paramètre de macro"

#: macro.c:3254
#, c-format
msgid "\"%s\" redefined"
msgstr "« %s » redéfini"

#: macro.c:3259
msgid "this is the location of the previous definition"
msgstr "ceci est l’emplacement d’une précédente définition"

#: macro.c:3320
#, c-format
msgid "macro argument \"%s\" would be stringified in traditional C"
msgstr "l’argument de macro « %s » serait changé en chaine C traditionnel"

#: macro.c:3356
#, c-format
msgid "invalid hash type %d in cpp_macro_definition"
msgstr "type de hachage %d invalide dans cpp_macro_definition"

#: pch.c:89 pch.c:347 pch.c:361 pch.c:379 pch.c:385 pch.c:394 pch.c:401
msgid "while writing precompiled header"
msgstr "lors de l’écriture de l’en-tête pré-compilée"

#: pch.c:621
#, c-format
msgid "%s: not used because `%.*s' is poisoned"
msgstr "%s : non utilisé parce que « %.*s » est défini"

#: pch.c:643
#, c-format
msgid "%s: not used because `%.*s' not defined"
msgstr "%s : n'est pas utilisé parce que « %.*s » n’est pas définie"

#: pch.c:655
#, c-format
msgid "%s: not used because `%.*s' defined as `%s' not `%.*s'"
msgstr "%s : n’est pas utilisé parce que « %.*s » est défini en tant « %s » et non pas « %.*s »"

#: pch.c:696
#, c-format
msgid "%s: not used because `%s' is defined"
msgstr "%s : non utilisé parce que « %s » est défini"

#: pch.c:716
#, c-format
msgid "%s: not used because `__COUNTER__' is invalid"
msgstr "%s : non utilisé parce que « __COUNTER__ » est invalide"

#: pch.c:725 pch.c:902
msgid "while reading precompiled header"
msgstr "lors de la lecture d’un entête pré-compilée"

#: traditional.c:889
#, c-format
msgid "detected recursion whilst expanding macro \"%s\""
msgstr "récursion détectée lors de l’expansion de la macro « %s »"

#: traditional.c:1108
msgid "syntax error in macro parameter list"
msgstr "erreur de syntaxe dans la liste des paramètres de macro"
