# 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.
# Frédéric Marchal <fmarchal@perso.be>, 2022.
#
# 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-12.1-b20220213\n"
"Report-Msgid-Bugs-To: https://gcc.gnu.org/bugs/\n"
"POT-Creation-Date: 2022-02-11 23:02+0000\n"
"PO-Revision-Date: 2022-02-15 11:31+0100\n"
"Last-Translator: Frédéric Marchal <fmarchal@perso.be>\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 >= 2);\n"

#: charset.cc:683
#, 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.cc:686
msgid "iconv_open"
msgstr "iconv_open"

#: charset.cc:696
#, c-format
msgid "no iconv implementation, cannot convert from %s to %s"
msgstr "pas d’implémentation iconv, impossible de convertir %s vers %s"

#: charset.cc:794
#, 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.cc:811 charset.cc:1800
msgid "converting to execution character set"
msgstr "conversion vers un jeu de caractères d’exécution"

#: charset.cc:817
#, 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.cc:1087
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.cc:1091
msgid "C99's universal character names are incompatible with C90"
msgstr "les noms de caractères universels du C99 sont incompatibles avec ceux du C90"

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

#: charset.cc:1103
msgid "In _cpp_valid_ucn but not a UCN"
msgstr "Est dans _cpp_valid_ucn mais n'est pas un UCN"

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

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

#: charset.cc:1161 lex.cc:1876
msgid "'$' in identifier or number"
msgstr "« $ » dans un identificateur ou un nombre"

#: charset.cc:1171
#, 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.cc:1175
#, 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.cc:1182
#, c-format
msgid "%.*s is outside the UCS codespace"
msgstr "%.*s est en dehors de l'espace de code UCS"

#: charset.cc:1227 charset.cc:2145
msgid "converting UCN to source character set"
msgstr "conversion d'un UCN vers le jeu de caractères source"

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

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

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

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

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

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

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

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

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

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

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

#: charset.cc:1597
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.cc:1737
msgid "missing open quote"
msgstr "guillemet ouvrant de chaîne de caractères manquant"

#: charset.cc:1955 charset.cc:2034
msgid "character constant too long for its type"
msgstr "constante caractère trop longue pour son type"

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

#: charset.cc:2074
msgid "empty character constant"
msgstr "constante caractère vide"

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

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

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

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

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

#: directives.cc:408
#, 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.cc:412
#, 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.cc:438
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.cc:466
msgid "style of line directive is a GCC extension"
msgstr "la directive de style de ligne est une extension GCC"

#: directives.cc:541
#, c-format
msgid "invalid preprocessing directive #%s; did you mean #%s?"
msgstr "la directive de pré-traitement #%s est invalide ; vouliez-vous utiliser #%s ?"

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

#: directives.cc:617
#, c-format
msgid "\"%s\" cannot be used as a macro name"
msgstr "« %s » ne peut être utilisé comme nom de macro"

#: directives.cc:624
#, 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.cc:627
#, c-format
msgid "no macro name given in #%s directive"
msgstr "aucun nom de macro donné dans la directive #%s"

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

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

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

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

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

#: directives.cc:855
#, c-format
msgid "#include nested depth %u exceeds maximum of %u (use -fmax-include-depth=DEPTH to increase the maximum)"
msgstr "la profondeur d'imbrication %u des #include dépasse le maximum %u (utilisez -fmax-include-depth=PROFONDEUR pour augmenter le maximum)"

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

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

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

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

#: directives.cc:1002 directives.cc:1004
msgid "line number out of range"
msgstr "numéro de ligne hors intervalle"

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

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

#: directives.cc:1125
#, c-format
msgid "file \"%s\" linemarker ignored due to incorrect nesting"
msgstr "le marqueur de ligne du fichier « %s » est ignoré à cause d’une imbrication incorrecte"

#: directives.cc:1203 directives.cc:1205 directives.cc:1207 directives.cc:1795
#, c-format
msgid "%s"
msgstr "%s"

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

#: directives.cc:1294
#, 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"

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

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

#: directives.cc:1324
#, c-format
msgid "#pragma %s %s is already registered"
msgstr "le #pragma %s %s est déjà enregistré"

#: directives.cc:1327
#, c-format
msgid "#pragma %s is already registered"
msgstr "le #pragma %s est déjà enregistré"

#: directives.cc:1357
msgid "registering pragma with NULL handler"
msgstr "enregistrement d’un pragma avec un handler NULL"

#: directives.cc:1574
msgid "#pragma once in main file"
msgstr "#pragma once utilisé une seule fois dans le fichier principal"

#: directives.cc:1597
msgid "invalid #pragma push_macro directive"
msgstr "directive #pragma push_macro invalide"

#: directives.cc:1654
msgid "invalid #pragma pop_macro directive"
msgstr "directive #pragma pop_macro invalide"

#: directives.cc:1709
msgid "invalid #pragma GCC poison directive"
msgstr "directive #pragma GCC poison invalide"

#: directives.cc:1718
#, c-format
msgid "poisoning existing macro \"%s\""
msgstr "empoisonnement de la macro existante « %s »"

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

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

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

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

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

#: directives.cc:2075
msgid "#else without #if"
msgstr "#else sans #if"

#: directives.cc:2080
msgid "#else after #else"
msgstr "#else après #else"

#: directives.cc:2082 directives.cc:2116
msgid "the conditional began here"
msgstr "la condition débute ici"

#: directives.cc:2108
#, c-format
msgid "#%s without #if"
msgstr "#%s sans #if"

#: directives.cc:2113
#, c-format
msgid "#%s after #else"
msgstr "#%s après #else"

#: directives.cc:2136 directives.cc:2175
#, c-format
msgid "#%s before C++23 is a GCC extension"
msgstr "#%s avant C++23 est une extension GCC"

#: directives.cc:2140 directives.cc:2179
#, c-format
msgid "#%s before C2X is a GCC extension"
msgstr "#%s avant C2X est une extension GCC"

#: directives.cc:2215
msgid "#endif without #if"
msgstr "#endif sans #if"

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

#: directives.cc:2309
msgid "missing ')' to complete answer"
msgstr "« ) » manquante pour compléter la réponse"

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

#: directives.cc:2351
msgid "assertion without predicate"
msgstr "assertion sans prédicat"

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

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

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

#: errors.cc:335 errors.cc:350
#, c-format
msgid "%s: %s"
msgstr "%s : %s"

#: errors.cc:348
msgid "stdout"
msgstr "sortie standard"

#: expr.cc:632 expr.cc:749
msgid "fixed-point constants are a GCC extension"
msgstr "les constantes à virgule fixe sont une extension GCC"

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

#: expr.cc:670
msgid "use of C++17 hexadecimal floating constant"
msgstr "utilisation d’une constante flottante hexadécimale C++17"

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

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

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

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

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

#: expr.cc:755 expr.cc:759
msgid "decimal float constants are a C2X feature"
msgstr "les constantes flottantes décimales sont une fonctionnalité de C2X"

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

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

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

#: expr.cc:818
msgid "use of C++23 %<size_t%> integer constant"
msgstr "utilisation d’une constante entière %<size_t%> C++23"

#: expr.cc:819
msgid "use of C++23 %<make_signed_t<size_t>%> integer constant"
msgstr "utilisation d’une constante entière %<make_signed_t<size_t>%> C++23"

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

#: expr.cc:837
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.cc:839
msgid "binary constants are a C2X feature or GCC extension"
msgstr "les constantes binaires sont une fonctionnalité de C2X ou une extension GCC"

#: expr.cc:844
msgid "binary constants are a C2X feature"
msgstr "les constantes binaires sont une fonctionnalité de C2X"

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

#: expr.cc:971
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.cc:1066
msgid "missing ')' after \"defined\""
msgstr "« ) » manquante après « defined »"

#: expr.cc:1073
msgid "operator \"defined\" requires an identifier"
msgstr "l'opérateur « defined » requiert un identificateur"

#: expr.cc:1081
#, 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.cc:1094
msgid "this use of \"defined\" may not be portable"
msgstr "cette utilisation de « defined » peut ne pas être portable"

#: expr.cc:1139
msgid "user-defined literal in preprocessor expression"
msgstr "chaîne définie par l'utilisateur dans une expression pour le préprocesseur"

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

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

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

#: expr.cc:1212
msgid "assertions are a GCC extension"
msgstr "les assertions sont une extension GCC"

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

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

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

#: expr.cc:1582
msgid "missing ')' in expression"
msgstr "« ) » manquante dans l'expression"

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

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

#: expr.cc:1626
msgid "missing '(' in expression"
msgstr "« ( » manquante dans l'expression"

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

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

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

#: expr.cc:2020
msgid "comma operator in operand of #if"
msgstr "opérateur virgule dans l'opérande de #if"

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

#: files.cc:516
msgid "NULL directory in find_file"
msgstr "répertoire NULL dans find_file"

#: files.cc:570
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.cc:574
msgid "use -Winvalid-pch for more information"
msgstr "utilisez -Winvalid-pch pour plus d’informations"

#: files.cc:688
#, c-format
msgid "%s is a block device"
msgstr "%s est un périphérique bloc"

#: files.cc:707
#, c-format
msgid "%s is too large"
msgstr "%s est trop grand"

#: files.cc:748
#, c-format
msgid "%s is shorter than expected"
msgstr "%s est plus court qu'attendu"

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

#: files.cc:1578
msgid "Multiple include guards may be useful for:\n"
msgstr "Des garde-fous contre les inclusions multiples peuvent être utiles pour :\n"

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

#: init.cc:622
#, 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.cc:629
msgid "CPP arithmetic must be at least as precise as a target int"
msgstr "l'arithmétique du CPP doit être au moins aussi précise que le type int de la cible"

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

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

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

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

#: init.cc:649
#, 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.cc:1126
msgid "backslash and newline separated by space"
msgstr "\\ et retour de chariot séparés par un blanc"

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

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

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

#: lex.cc:1536
msgid "end of bidirectional context"
msgstr "fin du contexte bidirectionnel"

#: lex.cc:1577
msgid "unpaired UTF-8 bidirectional control characters detected"
msgstr "caractères de contrôle bidirectionnel UTF-8 non appariés détectés"

#: lex.cc:1581
msgid "unpaired UTF-8 bidirectional control character detected"
msgstr "caractère de contrôle bidirectionnel UTF-8 non apparié détecté"

#: lex.cc:1619
#, c-format
msgid "UTF-8 vs UCN mismatch when closing a context by \"%s\""
msgstr "désaccord entre UTF-8 et UCN lors de la fermeture du contexte par « %s »"

#: lex.cc:1628
#, c-format
msgid "\"%s\" is closing an unopened context"
msgstr "« %s » ferme un contexte non ouvert"

#: lex.cc:1632
#, c-format
msgid "found problematic Unicode character \"%s\""
msgstr "caractère unicode problématique « %s » rencontré"

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

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

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

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

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

#: lex.cc:1932
msgid "__VA_OPT__ is not available until C++20"
msgstr "__VA_OPT__ n'est pas disponible avant C++20"

#: lex.cc:1939
msgid "__VA_OPT__ can only appear in the expansion of a C++20 variadic macro"
msgstr "« __VA_OPT__ » peut seulement apparaître dans l'expansion de macros C++20 à nombre variable d’arguments"

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

#: lex.cc:1980 lex.cc:2076
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.cc:1984 lex.cc:2080
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.cc:1994 lex.cc:2092
#, 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.cc:2132
msgid "adjacent digit separators"
msgstr "séparateurs de chiffres adjacents"

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

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

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

#: lex.cc:2497 lex.cc:2520
msgid "unterminated raw string"
msgstr "chaîne brute non terminée"

#: lex.cc:2552 lex.cc:2701
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.cc:2684
msgid "null character(s) preserved in literal"
msgstr "caractère(s) nul préservé(s) dans la chaîne"

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

#: lex.cc:2719
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.cc:3312
msgid "module control-line cannot be in included file"
msgstr "la ligne de contrôle du module ne peut pas être dans un fichier inclus"

#: lex.cc:3326
#, c-format
msgid "module control-line \"%s\" cannot be an object-like macro"
msgstr "la ligne de contrôle du module « %s » ne peut pas être un objet similaire à une macro"

#: lex.cc:3714 lex.cc:5090 traditional.cc:174
msgid "unterminated comment"
msgstr "commentaire non terminé"

#: lex.cc:3728 lex.cc:3762
msgid "C++ style comments are not allowed in ISO C90"
msgstr "La syntaxe des commentaires du C++ n’est pas permise en C90 ISO"

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

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

#: lex.cc:3771
msgid "multi-line comment"
msgstr "commentaire multi-lignes"

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

#: lex.cc:5245
#, c-format
msgid "raw string delimiter longer than %d characters"
msgstr "délimiteur de chaîne brute plus long que %d caractères"

#: lex.cc:5315
msgid "unterminated literal"
msgstr "littéral non terminé"

#: macro.cc:94
msgid "'##' cannot appear at either end of __VA_OPT__"
msgstr "« ## » ne peut apparaître à aucune extrémité de __VA_OPT__"

#: macro.cc:144
msgid "__VA_OPT__ may not appear in a __VA_OPT__"
msgstr "__VA_OPT__ ne peut apparaître dans un __VA_OPT__"

#: macro.cc:157
msgid "__VA_OPT__ must be followed by an open parenthesis"
msgstr "__VA_OPT__ doit être suivi d'une parenthèse ouvrante"

#: macro.cc:235
msgid "unterminated __VA_OPT__"
msgstr "__VA_OPT__ non terminé"

#: macro.cc:397
#, c-format
msgid "\"%s\" used outside of preprocessing directive"
msgstr "« %s » utilisé en dehors d'une directive du préprocesseur"

#: macro.cc:407
#, c-format
msgid "missing '(' before \"%s\" operand"
msgstr "« ( » manquante avant l'opérande « %s »"

#: macro.cc:422
#, c-format
msgid "operator \"%s\" requires a header-name"
msgstr "l'opérateur « %s » requiert un nom d'entête"

#: macro.cc:439
#, c-format
msgid "missing ')' after \"%s\" operand"
msgstr "« ) » manquante après l'opérande « %s »"

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

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

#: macro.cc:505 macro.cc:613
#, c-format
msgid "macro \"%s\" might prevent reproducible builds"
msgstr "la macro « %s » pourrait empêcher les compilations reproductibles"

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

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

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

#: macro.cc:916
msgid "invalid string literal, ignoring final '\\'"
msgstr "chaîne invalide, le « \\ » final est ignoré"

#: macro.cc:980
#, 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 un élément lexical de pré-traitement valide"

#: macro.cc:1112
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.cc:1116
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.cc:1123
#, 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.cc:1128
#, 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.cc:1132
#, c-format
msgid "macro \"%s\" defined here"
msgstr "la macro « %s » est définie ici"

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

#: macro.cc:1472
#, 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.cc:2307
#, 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.cc:2315 macro.cc:2324
#, 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.cc:3375
#, c-format
msgid "duplicate macro parameter \"%s\""
msgstr "paramètre de macro « %s » dupliqués"

#: macro.cc:3457
#, c-format
msgid "expected parameter name, found \"%s\""
msgstr "nom de paramètre attendu, « %s » rencontré"

#: macro.cc:3458
#, c-format
msgid "expected ',' or ')', found \"%s\""
msgstr "« , » ou « ) » attendue, « %s » rencontré"

#: macro.cc:3459
msgid "expected parameter name before end of line"
msgstr "nom de paramètre attendu avant la fin de la ligne"

#: macro.cc:3460
msgid "expected ')' before end of line"
msgstr "« ) » attendue avant la fin de la ligne"

#: macro.cc:3461
msgid "expected ')' after \"...\""
msgstr "« ) » attendue après « ... »"

#: macro.cc:3518
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.cc:3519 macro.cc:3523
msgid "anonymous variadic macros were introduced in C99"
msgstr "les macros anonymes à nombre variable d’arguments ont été introduites avec le C99"

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

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

#: macro.cc:3576
msgid "'##' cannot appear at either end of a macro expansion"
msgstr "« ## » ne peut apparaître à aucune des extrémités d’une expansion de macro"

#: macro.cc:3614
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.cc:3615
msgid "ISO C99 requires whitespace after the macro name"
msgstr "ISO C99 requiert un blanc après le nom de la macro"

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

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

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

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

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

#: pch.cc:90 pch.cc:342 pch.cc:356 pch.cc:374 pch.cc:380 pch.cc:389 pch.cc:396
msgid "while writing precompiled header"
msgstr "lors de l'écriture de l'en-tête pré-compilée"

#: pch.cc:616
#, c-format
msgid "%s: not used because `%.*s' is poisoned"
msgstr "%s: n'est pas utilisé parce que « %.*s » est empoisonné"

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

#: pch.cc:650
#, 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.cc:691
#, c-format
msgid "%s: not used because `%s' is defined"
msgstr "%s: n'est pas utilisé parce que « %s » est défini"

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

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

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

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

#~ msgid "#elif without #if"
#~ msgstr "#elif sans #if"

#~ msgid "#elif after #else"
#~ msgstr "#elif après #else"

#~ msgid "binary constants are a GCC extension"
#~ msgstr "les constantes binaires sont une extension GCC"

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

#~ msgid "#include nested too deeply"
#~ msgstr "#include imbriqué trop profondément"

#~ msgid "missing ')' after \"__has_include__\""
#~ msgstr "« ) » manquante après « __has_include__ »"

#~ msgid "\"%s\" may not appear in macro parameter list"
#~ msgstr "« %s » ne peut pas apparaître parmi la liste des paramètres de macro"

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

#~ msgid "parameter name missing"
#~ msgstr "nom de paramètre manquant"

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

#~ msgid "invalid hash type %d in cpp_macro_definition"
#~ msgstr "type de hachage %d invalide dans cpp_macro_definition"
