Merge pull request #5675 from mono/glib-debug-symbols
[mono.git] / po / mcs / pt_BR.po
index a7fa9cafa9646e72b56d667add83daf8db89fb8f..8a10ddbbdbe9b6bcead5c96d3e275ec7d08c3bcb 100644 (file)
@@ -7,28 +7,28 @@ msgid ""
 msgstr ""
 "Project-Id-Version: mono 2.1\n"
 "Report-Msgid-Bugs-To: http://www.mono-project.com/Bugs\n"
-"POT-Creation-Date: 2011-02-15 12:49+0000\n"
+"POT-Creation-Date: 2014-04-16 14:52+0200\n"
 "PO-Revision-Date: 2009-03-01 07:52-0300\n"
 "Last-Translator: Rodrigo Luiz Marques Flores <mail@rodrigoflores.org>\n"
 "Language-Team: pt-BR <mono-list@lists.ximian.com>\n"
-"Language: \n"
+"Language: pt_BR\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: mcs/mcs/anonymous.cs:880
+#: mcs/mcs/anonymous.cs:1025
 #, csharp-format
 msgid "Cannot convert `{0}' to an expression tree of non-delegate type `{1}'"
 msgstr ""
 "Não foi possível converter \"{0}\" para uma árvore de expressão de um tipo "
 "não-delegate \"{1}\""
 
-#: mcs/mcs/anonymous.cs:885
+#: mcs/mcs/anonymous.cs:1030
 #, csharp-format
 msgid "Cannot convert `{0}' to non-delegate type `{1}'"
 msgstr "Não foi possível converter \"{0}\" para um tipo não-delegate \"{1}\""
 
-#: mcs/mcs/anonymous.cs:897
+#: mcs/mcs/anonymous.cs:1042
 #, csharp-format
 msgid ""
 "Cannot convert `{0}' to delegate type `{1}' since there is a parameter "
@@ -37,32 +37,39 @@ msgstr ""
 "Não foi possível converter \"{0}\" para um tipo delegate \"{1}\"pois os "
 "parâmetros não conferem"
 
-#: mcs/mcs/anonymous.cs:909 mcs/mcs/ecore.cs:4518
+#: mcs/mcs/anonymous.cs:1054 mcs/mcs/ecore.cs:5483
 #, csharp-format
 msgid "Delegate `{0}' does not take `{1}' arguments"
 msgstr "Delegate \"{0}\" não recebe \"{1}\" argumentos"
 
-#: mcs/mcs/anonymous.cs:924
+#: mcs/mcs/anonymous.cs:1069
 #, csharp-format
 msgid "Parameter `{0}' should not be declared with the `{1}' keyword"
 msgstr "O parâmetro \"{0}\" não deve ser declarado com a palavra chave \"{1}\""
 
-#: mcs/mcs/anonymous.cs:927
+#: mcs/mcs/anonymous.cs:1072
 #, csharp-format
 msgid "Parameter `{0}' must be declared with the `{1}' keyword"
 msgstr "O parâmetro \"{0}\" deve ser declarado com a palavra chave \"{1}\""
 
-#: mcs/mcs/anonymous.cs:948
+#: mcs/mcs/anonymous.cs:1089
 #, csharp-format
 msgid "Parameter `{0}' is declared as type `{1}' but should be `{2}'"
 msgstr ""
 "O parâmetro \"{0}\" é declarado como tipo \"{1}\" mas deveria ser \"{2}\""
 
-#: mcs/mcs/anonymous.cs:1103
+#: mcs/mcs/anonymous.cs:1235
+#, fuzzy
+msgid "Async lambda expressions cannot be converted to expression trees"
+msgstr ""
+"Uma expressão lambda com um corpo de declarações não pode ser convertida "
+"para uma árvore de expressão"
+
+#: mcs/mcs/anonymous.cs:1284
 msgid "An anonymous method cannot be converted to an expression tree"
 msgstr "Um método anônimo não pode ser convertido para uma árvore de expressão"
 
-#: mcs/mcs/anonymous.cs:1122
+#: mcs/mcs/anonymous.cs:1303
 #, fuzzy, csharp-format
 msgid ""
 "Cannot convert anonymous method block without a parameter list to delegate "
@@ -72,7 +79,7 @@ msgstr ""
 "parâmetros para representar o tipo \"{0}\" por que este possui um ou mais "
 "parâmetros \"externos\"."
 
-#: mcs/mcs/anonymous.cs:1146
+#: mcs/mcs/anonymous.cs:1327
 msgid ""
 "Anonymous methods and lambda expressions cannot be used in the current "
 "context"
@@ -80,35 +87,47 @@ msgstr ""
 "Métodos anônimos ou expressões lambdas não podem ser utilizados no contexto "
 "atual"
 
-#: mcs/mcs/anonymous.cs:1188
-#, csharp-format
+#: mcs/mcs/anonymous.cs:1363
+#, fuzzy, csharp-format
 msgid ""
 "Local variable or parameter `{0}' cannot have their address taken and be "
-"used inside an anonymous method or lambda expression"
+"used inside an anonymous method, lambda expression or query expression"
 msgstr ""
 "A variável local ou parâmetro \"{0}\" não pode ter seu endereço obtido e ser "
 "utilizado dentro de um método anônimo ou expressão lambda"
 
-#: mcs/mcs/anonymous.cs:1438
+#: mcs/mcs/anonymous.cs:1383
+#, fuzzy, csharp-format
+msgid "Cannot convert async {0} to delegate type `{1}'"
+msgstr "Não foi possível converter \"{0}\" para um tipo não-delegate \"{1}\""
+
+#: mcs/mcs/anonymous.cs:1693
 msgid "An expression tree cannot contain an anonymous method expression"
 msgstr ""
 "Uma árvore de expressão não pode conter uma expressão que seja um método "
 "anônimo"
 
-#: mcs/mcs/argument.cs:101
+#: mcs/mcs/anonymous.cs:1983
+#, csharp-format
+msgid ""
+"`{0}': An anonymous type cannot have multiple properties with the same name"
+msgstr ""
+"\"{0}\": Um tipo anônimo não pode ter múltiplas propriedades com o mesmo nome"
+
+#: mcs/mcs/argument.cs:99
 #, fuzzy
 msgid ""
 "An expression tree cannot contain an invocation which uses optional parameter"
 msgstr ""
 "Uma árvore de expressão não pode conter um método com argumentos variáveis"
 
-#: mcs/mcs/argument.cs:184
+#: mcs/mcs/argument.cs:252
 #, fuzzy
 msgid "An expression tree cannot contain named argument"
 msgstr ""
 "Uma árvore de expressão não pode conter um método com argumentos variáveis"
 
-#: mcs/mcs/argument.cs:303
+#: mcs/mcs/argument.cs:363
 #, fuzzy, csharp-format
 msgid ""
 "The method group `{0}' cannot be used as an argument of dynamic operation. "
@@ -117,7 +136,7 @@ msgstr ""
 "Não foi possível converter o grupo de método \"{0}\" para o tipo não-"
 "delegate \"{1}\". Consider a utilização de parênteses quando chamar o método"
 
-#: mcs/mcs/argument.cs:307
+#: mcs/mcs/argument.cs:367
 #, fuzzy
 msgid ""
 "An anonymous method or lambda expression cannot be used as an argument of "
@@ -126,654 +145,353 @@ msgstr ""
 "Métodos anônimos ou expressões lambdas não podem ser utilizados no contexto "
 "atual"
 
-#: mcs/mcs/argument.cs:310
+#: mcs/mcs/argument.cs:370
 #, fuzzy, csharp-format
 msgid ""
 "An expression of type `{0}' cannot be used as an argument of dynamic "
 "operation"
 msgstr "Uma árvore de expressão não pode conter um operador de atribuição"
 
-#: mcs/mcs/assign.cs:299
+#: mcs/mcs/assign.cs:326
 msgid "An expression tree cannot contain an assignment operator"
 msgstr "Uma árvore de expressão não pode conter um operador de atribuição"
 
-#: mcs/mcs/assign.cs:627
+#: mcs/mcs/assign.cs:779
 #, csharp-format
 msgid "Cannot assign to `{0}' because it is a `{1}'"
 msgstr "Não foi possível atribuir a \"{0}\" por que este é um \"{1}\""
 
-#: mcs/mcs/attribute.cs:201
-#, csharp-format
-msgid ""
-"`{0}' is not a valid named attribute argument. Named attribute arguments "
-"must be fields which are not readonly, static, const or read-write "
-"properties which are public and not static"
+#: mcs/mcs/assembly.cs:286
+msgid "Invalid type specified as an argument for TypeForwardedTo attribute"
 msgstr ""
-"\"{0}\" não é um argumento de atributo nomeado válido. Argumentos de "
-"atributo nomeado devem ser campos que não são somente leitura, estáticos, "
-"constantes ou possuir propriedades de leitura-escrita que são públicas e não "
-"estáticas"
+"Tipo inválido especificado com um argumento para um atributo TypeForwardedTo"
 
-#: mcs/mcs/attribute.cs:210
+#: mcs/mcs/assembly.cs:294
 #, csharp-format
-msgid ""
-"`{0}' is not a valid named attribute argument because it is not a valid "
-"attribute parameter type"
-msgstr ""
-"\"{0}\" não é um atributo nomeado válida para um argumento de atributo por "
-"quê não é um tipo de parâmetro de atributo válido"
-
-#: mcs/mcs/attribute.cs:216
-#, fuzzy
-msgid "An attribute argument cannot be dynamic expression"
-msgstr "\"{0}\": um argumento de atributo não pode usar parâmetros de tipo"
-
-#: mcs/mcs/attribute.cs:221
-msgid "The Guid attribute must be specified with the ComImport attribute"
-msgstr "O atributo Guid deve ser especificado com o atributo ComImport"
+msgid "A duplicate type forward of type `{0}'"
+msgstr "Um encaminhamento de tipo duplicado do tipo \"{0}\""
 
-#: mcs/mcs/attribute.cs:226
+#: mcs/mcs/assembly.cs:303
 #, csharp-format
-msgid "Do not use `{0}' directly. Use parameter modifier `this' instead"
-msgstr ""
-"Não use \"{0}\" diretamente. Ao invés disso, use o modificador de parâmetro "
-"\"this\""
-
-#: mcs/mcs/attribute.cs:231
-#, fuzzy, csharp-format
-msgid "Do not use `{0}' directly. Use `dynamic' keyword instead"
+msgid "Cannot forward type `{0}' because it is defined in this assembly"
 msgstr ""
-"Não use \"{0}\" diretamente. Ao invés disso, use o modificador de parâmetro "
-"\"this\""
+"Não foi possível encaminhar o tipo \"{0}\" porque este está definido neste "
+"assembly"
 
-#: mcs/mcs/attribute.cs:240
+#: mcs/mcs/assembly.cs:309
 #, csharp-format
-msgid "Error during emitting `{0}' attribute. The reason is `{1}'"
-msgstr "Erro enquanto emitia o atributo \"{0}\". O motivo é \"{1}\""
+msgid "Cannot forward type `{0}' because it is a nested type"
+msgstr "Não foi possível encaminhar tipo \"{0}\" por que é um tipo aninhado"
 
-#: mcs/mcs/attribute.cs:271
+#: mcs/mcs/assembly.cs:338
 #, csharp-format
-msgid "`{0}': is not an attribute class"
-msgstr "\"{0}\" não é uma classe de atributos"
-
-#: mcs/mcs/attribute.cs:307
-#, fuzzy, csharp-format
 msgid ""
-"`{0}' is ambiguous between `{1}' and `{2}'. Use either `@{0}' or `{0}"
-"Attribute'"
+"Friend assembly reference `{0}' is invalid. InternalsVisibleTo declarations "
+"cannot have a version, culture or processor architecture specified"
 msgstr ""
-"\"{0}\" está ambíguo entre \"{0}\" e \"{0}Atributo\". Utilize \"@{0}\" ou "
-"\"{0}Atributo\""
-
-#: mcs/mcs/attribute.cs:390
-#, csharp-format
-msgid "Cannot apply attribute class `{0}' because it is abstract"
-msgstr ""
-"Não foi possível aplicar a classe de atributo \"{0}\" por que esta é abstrata"
-
-#: mcs/mcs/attribute.cs:454
-#, fuzzy, csharp-format
-msgid "Duplicate named attribute `{0}' argument"
-msgstr "argumento de atributo nomeado \"{0}\" duplicado"
 
-#: mcs/mcs/attribute.cs:731
+#: mcs/mcs/assembly.cs:346
 #, csharp-format
 msgid ""
-"`{0}' is not a valid attribute location for this declaration. Valid "
-"attribute locations for this declaration are `{1}'"
+"Friend assembly reference `{0}' is invalid. Strong named assemblies must "
+"specify a public key in their InternalsVisibleTo declarations"
 msgstr ""
-"\"{0}\" não é uma localização de atributo válido para esta declaração. "
-"Localizações de atributos válidos para esta declaração são \"{1}\""
 
-#: mcs/mcs/attribute.cs:1002
+#: mcs/mcs/assembly.cs:392
 #, csharp-format
-msgid ""
-"The attribute `{0}' is not valid on this declaration type. It is valid on `"
-"{1}' declarations only"
+msgid "Referenced assembly `{0}' does not have a strong name"
 msgstr ""
-"O atributo \"{0}\" não é válido neste tipo de declaração. Isso é válido "
-"somente nas declarações \"{1}\""
 
-#: mcs/mcs/attribute.cs:1024
+#: mcs/mcs/assembly.cs:398
 #, csharp-format
-msgid "The argument to the `{0}' attribute must be a valid identifier"
-msgstr "O argumento para o atributo \"{0}\" deve ser um identificador válido"
-
-#: mcs/mcs/attribute.cs:1037
-#, fuzzy, csharp-format
-msgid "Invalid value for argument to `{0}' attribute"
+msgid "Referenced assembly `{0}' has different culture setting of `{1}'"
 msgstr ""
-"Valor inválido para o argumento para o atributo \"System.AttributeUsage\""
 
-#: mcs/mcs/attribute.cs:1344
+#: mcs/mcs/assembly.cs:413
 #, csharp-format
-msgid "The attribute `{0}' cannot be applied multiple times"
-msgstr "O atributo \"{0}\" não pode ser aplicado múltiplas vezes"
-
-#: mcs/mcs/attribute.cs:1672
-#, csharp-format
-msgid "`{0}' is obsolete: `{1}'"
-msgstr "\"{0}\" é obsoleto: \"{1}\""
-
-#: mcs/mcs/cs-parser.jay:471
-#, fuzzy
-msgid "A namespace declaration cannot have modifiers or attributes"
-msgstr "Um parâmetro externo não pode ter o atributo \"In\""
-
-#: mcs/mcs/cs-parser.jay:567
 msgid ""
-"Namespace elements cannot be explicitly declared as private, protected or "
-"protected internal"
+"Friend access was granted to `{0}', but the output assembly is named `{1}'. "
+"Try adding a reference to `{0}' or change the output assembly name to match "
+"it"
 msgstr ""
+"Acesso amigável foi permitido para \"{0}\", mas a saída do assembly é "
+"nomeada \"{1}\".  Tente adicionar uma referência para \"{0}\"  ou alterar a "
+"saída do assembly para igualar isso"
 
-#: mcs/mcs/cs-parser.jay:610
-#, fuzzy
+#: mcs/mcs/assembly.cs:427
 msgid ""
-"Assembly and module attributes must precede all other elements except using "
-"clauses and extern alias declarations"
-msgstr ""
-"Uma cláusula em uso deve preceder todos os outros elementos do namespace, "
-"exceto declarações de alias externos"
-
-#: mcs/mcs/cs-parser.jay:749
-msgid "'<' unexpected: attributes cannot be generic"
+"Could not sign the assembly. ECMA key can only be used to delay-sign "
+"assemblies"
 msgstr ""
+"Não foi possível assinar o assembly. Chave ECMA pode apenas ser utilizada "
+"para assinar o adiamento do assembly"
 
-#: mcs/mcs/cs-parser.jay:797
-msgid "Named attribute arguments must appear after the positional arguments"
+#: mcs/mcs/assembly.cs:681
+msgid ""
+"Added modules must be marked with the CLSCompliant attribute to match the "
+"assembly"
 msgstr ""
+"Módulos adicionados devem ser marcados com o atributo CLSCompliant para "
+"coincidir com o assembly"
 
-#: mcs/mcs/cs-parser.jay:889
+#: mcs/mcs/assembly.cs:716 mcs/mcs/assembly.cs:731
 #, csharp-format
 msgid ""
-"Unexpected symbol `{0}' in class, struct, or interface member declaration"
+"Option `{0}' overrides attribute `{1}' given in a source file or added module"
 msgstr ""
+"Opção \"{0}\" sobrescreve atributo \"{1}\" dado num código-fonte ou módulo "
+"adicionado"
 
-#: mcs/mcs/cs-parser.jay:989
-#, fuzzy, csharp-format
-msgid "The constant `{0}' cannot be marked static"
-msgstr "O método abstrato \"{0}\" não pode ser marcado como virtual"
-
-#: mcs/mcs/cs-parser.jay:1044 mcs/mcs/cs-parser.jay:4798
-msgid "A const field requires a value to be provided"
+#: mcs/mcs/assembly.cs:766
+msgid "Delay signing was requested but no key file was given"
 msgstr ""
 
-#: mcs/mcs/cs-parser.jay:1063
-#, fuzzy
-msgid "Fields cannot have void type"
-msgstr "Campo ou propriedade não podem ser do tipo \"{0}\""
-
-#: mcs/mcs/cs-parser.jay:1113
-msgid ""
-"A fixed size buffer field must have the array size specifier after the field "
-"name"
+#: mcs/mcs/assembly.cs:787
+msgid "Cannot link resource file when building a module"
 msgstr ""
+"Não é possível apontar arquivo de recursos quando estiver compilando um "
+"módulo"
 
-#: mcs/mcs/cs-parser.jay:1208
-#, fuzzy
-msgid "Value or constant expected"
-msgstr "Um valor constante é esperado"
-
-#: mcs/mcs/cs-parser.jay:1239 mcs/mcs/cs-parser.jay:1800
-#: mcs/mcs/cs-parser.jay:1848 mcs/mcs/cs-parser.jay:2433
-#: mcs/mcs/cs-parser.jay:2461
-#, fuzzy, csharp-format
-msgid "`{0}': interface members cannot have a definition"
-msgstr "\"{0}\": evento abstrato não pode ter um inicializador"
-
-#: mcs/mcs/cs-parser.jay:1276 mcs/mcs/cs-parser.jay:1316 mcs/mcs/decl.cs:1410
-msgid "Constraints are not allowed on non-generic declarations"
-msgstr "Restrições não são permitidas em declarações não genéricas"
+#: mcs/mcs/assembly.cs:792
+#, csharp-format
+msgid "Error reading resource file `{0}'"
+msgstr "Erro ao ler arquivo de recurso \"{0}\""
 
-#: mcs/mcs/cs-parser.jay:1284
-#, fuzzy, csharp-format
-msgid ""
-"`{0}': Cannot specify constraints for overrides and explicit interface "
-"implementation methods"
-msgstr ""
-"\"{0}\": Não foi possível especificar restrições para sobrescritos ou "
-"métodos de implementação explícitos de interface"
+#: mcs/mcs/assembly.cs:862
+msgid "Could not write to file `"
+msgstr "Não foi possível escrever para o arquivo \""
 
-#: mcs/mcs/cs-parser.jay:1335
-msgid ""
-"A partial method cannot define access modifier or any of abstract, extern, "
-"new, override, sealed, or virtual modifiers"
+#: mcs/mcs/assembly.cs:906
+msgid "Cannot specify -main if building a module or library"
 msgstr ""
+"Não é possível especificar -main se estiver compilando um módulo ou "
+"biblioteca"
 
-#: mcs/mcs/cs-parser.jay:1341
-msgid ""
-"A partial method must be declared within a partial class or partial struct"
-msgstr ""
+#: mcs/mcs/assembly.cs:932
+#, csharp-format
+msgid "Could not find `{0}' specified for Main method"
+msgstr "Não foi possível encontrar o \"{0}\" especificado para o método Main"
 
-#: mcs/mcs/cs-parser.jay:1365
+#: mcs/mcs/assembly.cs:938
 #, csharp-format
-msgid "Member modifier `{0}' must precede the member type and name"
+msgid "`{0}' specified for Main method must be a valid class or struct"
 msgstr ""
+"\"{0}\" especificado para o método Main deve ser uma classe válida ou struct"
 
-#: mcs/mcs/cs-parser.jay:1411 mcs/mcs/cs-parser.jay:1418
-#, fuzzy
-msgid ""
-"A params parameter must be the last parameter in a formal parameter list"
-msgstr "O parâmetro params deve ser um array de uma dimensão"
+#: mcs/mcs/assembly.cs:942
+#, csharp-format
+msgid "`{0}' does not have a suitable static Main method"
+msgstr "\"{0}\" não possue um método Main estático apropriado"
 
-#: mcs/mcs/cs-parser.jay:1427 mcs/mcs/cs-parser.jay:1433
+#: mcs/mcs/assembly.cs:945
+#, csharp-format
 msgid ""
-"An __arglist parameter must be the last parameter in a formal parameter list"
+"Program `{0}' does not contain a static `Main' method suitable for an entry "
+"point"
 msgstr ""
+"Programa \"{0}\" não contém um método estático \"Main\" apropriado para um "
+"ponto de entrada"
 
-#: mcs/mcs/cs-parser.jay:1471
-msgid "The parameter modifier `this' can only be used on the first parameter"
-msgstr ""
-
-#: mcs/mcs/cs-parser.jay:1473
-#, fuzzy
-msgid "Optional parameter cannot precede required parameters"
-msgstr "Iteradores não podem ter parâmetros ref ou out"
-
-#: mcs/mcs/cs-parser.jay:1500
-msgid "Array type specifier, [], must appear before parameter name"
-msgstr ""
+#: mcs/mcs/assembly.cs:964
+msgid "Error during assembly signing. "
+msgstr "Erro durante a assinatura do assembly. "
 
-#: mcs/mcs/cs-parser.jay:1532 mcs/mcs/cs-parser.jay:1537
+#: mcs/mcs/assembly.cs:1149
 #, fuzzy, csharp-format
-msgid "Cannot specify a default value for the `{0}' parameter"
-msgstr ""
-"Não foi possível especificar o atributo \"DefaultMember\" no tipo contendo "
-"um indexador"
-
-#: mcs/mcs/cs-parser.jay:1548
-#, fuzzy
-msgid "Optional parameter is not valid in this context"
-msgstr "Uso do null é inválido neste contexto"
-
-#: mcs/mcs/cs-parser.jay:1578
-msgid "The parameter modifiers `this' and `ref' cannot be used altogether"
-msgstr ""
-
-#: mcs/mcs/cs-parser.jay:1581
-msgid "The parameter modifiers `this' and `out' cannot be used altogether"
-msgstr ""
-
-#: mcs/mcs/cs-parser.jay:1584
-#, fuzzy
-msgid "A parameter cannot have specified more than one modifier"
-msgstr ""
-"Um parâmetro de árvore de expressão não pode usar modificadores \"ref\" ou "
-"\"out\""
-
-#: mcs/mcs/cs-parser.jay:1627
-#, fuzzy
-msgid "Cannot specify a default value for a parameter array"
-msgstr ""
-"Não foi possível especificar o atributo \"DefaultMember\" no tipo contendo "
-"um indexador"
-
-#: mcs/mcs/cs-parser.jay:1643
-#, fuzzy
-msgid "The `params' modifier is not allowed in current context"
-msgstr "O nome \"{0}\" não existe no contexto atual"
-
-#: mcs/mcs/cs-parser.jay:1649
-msgid "The parameter modifiers `this' and `params' cannot be used altogether"
-msgstr ""
-
-#: mcs/mcs/cs-parser.jay:1651
-#, fuzzy
-msgid "The params parameter cannot be declared as ref or out"
-msgstr "O tipo \"{0}\" não pode ser declarado const"
-
-#: mcs/mcs/cs-parser.jay:1664
-#, fuzzy
-msgid "__arglist is not valid in this context"
-msgstr "Uso do null é inválido neste contexto"
+msgid "Metadata file `{0}' could not be found"
+msgstr "Arquivo fonte \"{0}\" não pôde ser encontrado"
 
-#: mcs/mcs/cs-parser.jay:1683
+#: mcs/mcs/assembly.cs:1154
 #, fuzzy, csharp-format
-msgid "`{0}': property or indexer cannot have void type"
-msgstr ""
-"A propriedade ou o indexador somente leitura \"{0}\" não pôde ser atribuído"
-
-#: mcs/mcs/cs-parser.jay:1724
-#, csharp-format
-msgid "`{0}': indexer return type cannot be `void'"
-msgstr ""
-
-#: mcs/mcs/cs-parser.jay:1727
-msgid "Indexers must have at least one parameter"
-msgstr ""
+msgid "Metadata file `{0}' does not contain valid metadata"
+msgstr "arquivo \"{0}\" possui metadados inválidos \"{1}\""
 
-#: mcs/mcs/cs-parser.jay:1760
+#: mcs/mcs/assembly.cs:1160
 #, fuzzy, csharp-format
-msgid "`{0}': property or indexer must have at least one accessor"
-msgstr "\"{0}\": propriedades abstratas não podem ter acessores privados"
-
-#: mcs/mcs/cs-parser.jay:1763
-msgid "Semicolon after method or accessor block is not valid"
+msgid ""
+"Referenced assembly file `{0}' is a module. Consider using `-addmodule' "
+"option to add the module"
 msgstr ""
+"Arquivo referenciado \"{0}\" não é um assembly. Considere, ao invés disso, "
+"utilizar a opção \"-addmodule\""
 
-#: mcs/mcs/cs-parser.jay:1765
-#, fuzzy
-msgid "A get or set accessor expected"
-msgstr "Um valor constante é esperado"
-
-#: mcs/mcs/cs-parser.jay:1778 mcs/mcs/cs-parser.jay:1821
-msgid "Property accessor already defined"
+#: mcs/mcs/assembly.cs:1167
+#, fuzzy, csharp-format
+msgid ""
+"Added module file `{0}' is an assembly. Consider using `-r' option to "
+"reference the file"
 msgstr ""
+"Arquivo referenciado \"{0}\" não é um assembly. Considere, ao invés disso, "
+"utilizar a opção \"-addmodule\""
 
-#: mcs/mcs/cs-parser.jay:1931 mcs/mcs/cs-parser.jay:1935
+#: mcs/mcs/async.cs:78
 #, fuzzy
-msgid "Interfaces cannot contain fields or constants"
-msgstr "Structs não podem conter construtores explícitos sem parâmetros"
+msgid "The `await' operator cannot be used in the body of a finally clause"
+msgstr "O controle não pode deixar o corpo de uma cláusula final"
 
-#: mcs/mcs/cs-parser.jay:1943
+#: mcs/mcs/async.cs:83
 #, fuzzy
-msgid "Interfaces cannot contain operators"
+msgid "The `await' operator cannot be used in the body of a lock statement"
 msgstr ""
-"\"{0}\": Classes estáticas não podem conter operadores definidos pelo usuário"
+"O operador \"{0}\" não pode ser aplicado a um operando de tipo estático"
 
-#: mcs/mcs/cs-parser.jay:1947
+#: mcs/mcs/async.cs:88
 #, fuzzy
-msgid "Interfaces cannot contain contructors"
-msgstr "\"{0}\": Classes estáticas não podem conter um destrutor"
+msgid "The `await' operator cannot be used in an unsafe context"
+msgstr "O controle não pode deixar o corpo de uma cláusula final"
 
-#: mcs/mcs/cs-parser.jay:1951
+#: mcs/mcs/async.cs:164
+#, csharp-format
 msgid ""
-"Interfaces cannot declare classes, structs, interfaces, delegates, or "
-"enumerations"
-msgstr ""
-
-#: mcs/mcs/cs-parser.jay:1992
-#, fuzzy
-msgid "User-defined operators cannot return void"
-msgstr ""
-"Operador definido pelo usuário \"{0}\" deve ser declarado estático e público"
-
-#: mcs/mcs/cs-parser.jay:2020
-msgid "Overloadable binary operator expected"
+"Cannot await void method `{0}'. Consider changing method return type to "
+"`Task'"
 msgstr ""
 
-#: mcs/mcs/cs-parser.jay:2022
-#, fuzzy, csharp-format
-msgid "Overloaded unary operator `{0}' takes one parameter"
-msgstr "Sem sobrecarga para o método \"{0}\" aceitar os argumentos \"{1}\""
-
-#: mcs/mcs/cs-parser.jay:2027
-#, fuzzy, csharp-format
-msgid "Overloaded binary operator `{0}' takes two parameters"
-msgstr "Sem sobrecarga para o método \"{0}\" aceitar os argumentos \"{1}\""
-
-#: mcs/mcs/cs-parser.jay:2030
-msgid "Overloadable unary operator expected"
+#: mcs/mcs/async.cs:167
+#, csharp-format
+msgid "Cannot await `{0}' expression"
 msgstr ""
 
-#: mcs/mcs/cs-parser.jay:2177
-msgid "Class, struct, or interface method must have a return type"
-msgstr "Classes, structs ou métodos de interface devem ter um tipo de retorno"
-
-#: mcs/mcs/cs-parser.jay:2181
-#, fuzzy, csharp-format
-msgid "`{0}': static constructor cannot have an access modifier"
-msgstr "\"{0}\": propriedades abstratas não podem ter acessores privados"
-
-#: mcs/mcs/cs-parser.jay:2186
-#, fuzzy, csharp-format
+#: mcs/mcs/async.cs:315
+#, csharp-format
 msgid ""
-"`{0}': static constructor cannot have an explicit `this' or `base' "
-"constructor call"
-msgstr "\"{0}\": Construtores de structs não podem chamar construtores da base"
-
-#: mcs/mcs/cs-parser.jay:2249
-msgid "Name of destructor must match name of class"
+"The awaiter type `{0}' must have suitable IsCompleted and GetResult members"
 msgstr ""
 
-#: mcs/mcs/cs-parser.jay:2251
-#, fuzzy
-msgid "Only class types can contain destructor"
-msgstr "\"{0}\": Classes estáticas não podem conter um destrutor"
-
-#: mcs/mcs/cs-parser.jay:2276
-#, fuzzy, csharp-format
+#: mcs/mcs/async.cs:323
 msgid ""
-"`{0}': An explicit interface implementation of an event must use property "
-"syntax"
-msgstr ""
-"\"{0}\": a implementação explicita da interface não pode fornecer o "
-"modificador de parâmetros"
-
-#: mcs/mcs/cs-parser.jay:2308
-msgid "Event in interface cannot have add or remove accessors"
-msgstr ""
-
-#: mcs/mcs/cs-parser.jay:2377
-#, fuzzy, csharp-format
-msgid "`{0}': event in interface cannot have an initializer"
-msgstr "\"{0}\": evento abstrato não pode ter um inicializador"
-
-#: mcs/mcs/cs-parser.jay:2382
-#, csharp-format
-msgid "`{0}': abstract event cannot have an initializer"
-msgstr "\"{0}\": evento abstrato não pode ter um inicializador"
-
-#: mcs/mcs/cs-parser.jay:2397 mcs/mcs/cs-parser.jay:2402
-#, fuzzy, csharp-format
-msgid "`{0}': event property must have both add and remove accessors"
-msgstr "\"{0}\": propriedades abstratas não podem ter acessores privados"
-
-#: mcs/mcs/cs-parser.jay:2407
-msgid "An add or remove accessor expected"
-msgstr ""
-
-#: mcs/mcs/cs-parser.jay:2416 mcs/mcs/cs-parser.jay:2444
-msgid "Modifiers cannot be placed on event accessor declarations"
+"The `await' operator may only be used in a query expression within the first "
+"collection expression of the initial `from' clause or within the collection "
+"expression of a `join' clause"
 msgstr ""
 
-#: mcs/mcs/cs-parser.jay:2471
-msgid "An add or remove accessor must have a body"
-msgstr ""
-
-#: mcs/mcs/cs-parser.jay:2493
+#: mcs/mcs/async.cs:328
 #, fuzzy
-msgid "Enums cannot have type parameters"
-msgstr "Iteradores não podem ter parâmetros ref ou out"
-
-#: mcs/mcs/cs-parser.jay:2824
-msgid "Type parameter declaration must be an identifier not a type"
+msgid "The `await' operator cannot be used in a catch clause"
 msgstr ""
-"A declaração de um tipo parâmetro deve ser um identificador e não um tipo"
-
-#: mcs/mcs/cs-parser.jay:2875
-msgid "Invalid parameter type `void'"
-msgstr "Tipo de parâmetro inválido \"void\""
-
-#: mcs/mcs/cs-parser.jay:2940
-#, fuzzy, csharp-format
-msgid "Invalid base type `{0}'"
-msgstr "Tipo de parâmetro inválido \"void\""
+"O operador \"{0}\" não pode ser aplicado a um operando de tipo estático"
 
-#: mcs/mcs/cs-parser.jay:3189
-msgid "An element initializer cannot be empty"
+#: mcs/mcs/async.cs:360
+#, csharp-format
+msgid "The `await' operand type `{0}' must have suitable GetAwaiter method"
 msgstr ""
 
-#: mcs/mcs/cs-parser.jay:3227
+#: mcs/mcs/async.cs:376
 #, fuzzy, csharp-format
-msgid "Named argument `{0}' specified multiple times"
-msgstr "Arquivo de código fonte \"{0}\" especificado múltiplas vezes"
-
-#: mcs/mcs/cs-parser.jay:3236 mcs/mcs/cs-parser.jay:3241
-#, fuzzy
-msgid "An argument is missing"
-msgstr "Argumento \"#{0}\" não encontrou o modificador \"{1}\""
-
-#: mcs/mcs/cs-parser.jay:3410
-msgid "Array creation must have array size or array initializer"
-msgstr ""
-
-#: mcs/mcs/cs-parser.jay:3423
-msgid "Invalid rank specifier, expecting `,' or `]'"
-msgstr ""
+msgid "The awaiter type `{0}' must implement interface `{1}'"
+msgstr "\"{0}\" não implementa o membro da interface \"{1}\""
 
-#: mcs/mcs/cs-parser.jay:3503
+#: mcs/mcs/async.cs:658
 msgid ""
-"Invalid anonymous type member declarator. Anonymous type members must be a "
-"member assignment, simple name or member access expression"
-msgstr ""
-
-#: mcs/mcs/cs-parser.jay:4033
-msgid "All lambda parameters must be typed either explicitly or implicitly"
+"Cannot find compiler required types for asynchronous functions support. Are "
+"you targeting the wrong framework version?"
 msgstr ""
 
-#: mcs/mcs/cs-parser.jay:4219
+#: mcs/mcs/attribute.cs:228
 #, csharp-format
-msgid "Duplicate `{0}' modifier"
-msgstr ""
-
-#: mcs/mcs/cs-parser.jay:4223
-msgid "More than one protection modifier specified"
-msgstr "Mais de um modificador de proteção especificado"
-
-#: mcs/mcs/cs-parser.jay:4237
-#, fuzzy
-msgid "Keyword `new' is not allowed on namespace elements"
-msgstr "Palavra chave \"new\" não é permitida em elementos do namespace"
-
-#: mcs/mcs/cs-parser.jay:4349
-#, fuzzy, csharp-format
-msgid "A constraint clause has already been specified for type parameter `{0}'"
-msgstr ""
-"Um tipo aninhado não pode ser especificado através de um tipo parâmetro "
-"\"{0}\""
-
-#: mcs/mcs/cs-parser.jay:4379
-#, fuzzy
-msgid "The `new()' constraint must be the last constraint specified"
-msgstr "A restrição new() deve ser a última restrição especificada"
-
-#: mcs/mcs/cs-parser.jay:4385
 msgid ""
-"The `class' or `struct' constraint must be the first constraint specified"
-msgstr ""
-"As restrições \"class\" ou \"struct\" devem ser as primeiras restrições "
-"especificadas"
-
-#: mcs/mcs/cs-parser.jay:4389
-msgid "The `new()' constraint cannot be used with the `struct' constraint"
-msgstr ""
-"A restrição \"new()\" não pode ser utilizada com a restrição \"struct\""
-
-#: mcs/mcs/cs-parser.jay:4403
-#, fuzzy, csharp-format
-msgid "Invalid constraint type `{0}'"
-msgstr "Símbolo de definição condicional \"{0}\" inválido"
-
-#: mcs/mcs/cs-parser.jay:4585 mcs/mcs/cs-parser.jay:4590
-msgid "An embedded statement may not be a declaration or labeled statement"
+"`{0}' is not a valid named attribute argument. Named attribute arguments "
+"must be fields which are not readonly, static, const or read-write "
+"properties which are public and not static"
 msgstr ""
+"\"{0}\" não é um argumento de atributo nomeado válido. Argumentos de "
+"atributo nomeado devem ser campos que não são somente leitura, estáticos, "
+"constantes ou possuir propriedades de leitura-escrita que são públicas e não "
+"estáticas"
 
-#: mcs/mcs/cs-parser.jay:4757
+#: mcs/mcs/attribute.cs:237
+#, csharp-format
 msgid ""
-"Syntax error, bad array declarator. To declare a managed array the rank "
-"specifier precedes the variable's identifier. To declare a fixed size buffer "
-"field, use the fixed keyword before the field type"
-msgstr ""
-
-#: mcs/mcs/cs-parser.jay:4837
-msgid "A stackalloc expression requires [] after type"
-msgstr ""
-
-#: mcs/mcs/cs-parser.jay:5119
-msgid "Type and identifier are both required in a foreach statement"
+"`{0}' is not a valid named attribute argument because it is not a valid "
+"attribute parameter type"
 msgstr ""
+"\"{0}\" não é um atributo nomeado válida para um argumento de atributo por "
+"quê não é um tipo de parâmetro de atributo válido"
 
-#: mcs/mcs/cs-parser.jay:5211 mcs/mcs/cs-parser.jay:5227
+#: mcs/mcs/attribute.cs:243
 #, fuzzy
-msgid "; expected"
-msgstr "Nome do método esperado"
-
-#: mcs/mcs/cs-parser.jay:5213
-msgid "Expression expected after yield return"
-msgstr ""
-
-#: mcs/mcs/cs-parser.jay:5260
-msgid "Expected catch or finally"
-msgstr ""
-
-#: mcs/mcs/cs-parser.jay:5279
-msgid "Try statement already has an empty catch block"
-msgstr "A declaração do try já tem um bloco catch vazio"
+msgid "An attribute argument cannot be dynamic expression"
+msgstr "\"{0}\": um argumento de atributo não pode usar parâmetros de tipo"
 
-#: mcs/mcs/cs-parser.jay:5324
-msgid ""
-"A type that derives from `System.Exception', `object', or `string' expected"
-msgstr ""
+#: mcs/mcs/attribute.cs:248
+msgid "The Guid attribute must be specified with the ComImport attribute"
+msgstr "O atributo Guid deve ser especificado com o atributo ComImport"
 
-#: mcs/mcs/cs-parser.jay:5434
-msgid ""
-"You must provide an initializer in a fixed or using statement declaration"
+#: mcs/mcs/attribute.cs:253
+#, csharp-format
+msgid "Do not use `{0}' directly. Use parameter modifier `this' instead"
 msgstr ""
+"Não use \"{0}\" diretamente. Ao invés disso, use o modificador de parâmetro "
+"\"this\""
 
-#: mcs/mcs/cs-parser.jay:6018
-msgid "Expecting `;'"
+#: mcs/mcs/attribute.cs:258
+#, fuzzy, csharp-format
+msgid "Do not use `{0}' directly. Use `dynamic' keyword instead"
 msgstr ""
+"Não use \"{0}\" diretamente. Ao invés disso, use o modificador de parâmetro "
+"\"this\""
 
-#: mcs/mcs/cs-parser.jay:6026
-#, fuzzy, csharp-format
-msgid "The parameter modifier `{0}' is not valid in this context"
-msgstr "Código de página \"{0}\" é inválido ou não está instalado"
+#: mcs/mcs/attribute.cs:267
+#, csharp-format
+msgid "Error during emitting `{0}' attribute. The reason is `{1}'"
+msgstr "Erro enquanto emitia o atributo \"{0}\". O motivo é \"{1}\""
 
-#: mcs/mcs/cs-parser.jay:6032
+#: mcs/mcs/attribute.cs:327
 #, fuzzy, csharp-format
-msgid "Duplicate parameter modifier `{0}'"
-msgstr "Tipo de parâmetro duplicado \"{0}\""
-
-#: mcs/mcs/cs-parser.jay:6038
-#, fuzzy
-msgid "Type expected"
-msgstr "Nome do método esperado"
-
-#: mcs/mcs/cs-parser.jay:6043
-msgid "Unsafe code requires the `unsafe' command line option to be specified"
+msgid ""
+"`{0}' is ambiguous between `{1}' and `{2}'. Use either `@{0}' or `{0}"
+"Attribute'"
 msgstr ""
-"Código inseguro requer a opção de linha de comando \"unsafe\" para ser "
-"especificada"
+"\"{0}\" está ambíguo entre \"{0}\" e \"{0}Atributo\". Utilize \"@{0}\" ou "
+"\"{0}Atributo\""
 
-#: mcs/mcs/cs-parser.jay:6053
-msgid "Named arguments must appear after the positional arguments"
-msgstr ""
+#: mcs/mcs/attribute.cs:353 mcs/mcs/attribute.cs:364
+#, csharp-format
+msgid "`{0}': is not an attribute class"
+msgstr "\"{0}\" não é uma classe de atributos"
 
-#: mcs/mcs/cs-parser.jay:6144
-msgid "Syntax error, "
+#: mcs/mcs/attribute.cs:473
+#, csharp-format
+msgid "Cannot apply attribute class `{0}' because it is abstract"
 msgstr ""
+"Não foi possível aplicar a classe de atributo \"{0}\" por que esta é abstrata"
 
-#: mcs/mcs/cs-parser.jay:6203
-#, fuzzy
-msgid "Parsing error"
-msgstr "Erro na Análise de Detecção"
+#: mcs/mcs/attribute.cs:544
+#, fuzzy, csharp-format
+msgid "Duplicate named attribute `{0}' argument"
+msgstr "argumento de atributo nomeado \"{0}\" duplicado"
 
-#: mcs/mcs/cs-parser.jay:6209
-msgid "Internal compiler error during parsing"
+#: mcs/mcs/attribute.cs:1003
+#, csharp-format
+msgid ""
+"The attribute `{0}' is not valid on this declaration type. It is valid on `"
+"{1}' declarations only"
 msgstr ""
+"O atributo \"{0}\" não é válido neste tipo de declaração. Isso é válido "
+"somente nas declarações \"{1}\""
 
-#: mcs/mcs/cs-parser.jay:6220
+#: mcs/mcs/attribute.cs:1025
 #, csharp-format
-msgid "{0}: `{1}' is a keyword"
-msgstr ""
+msgid "The argument to the `{0}' attribute must be a valid identifier"
+msgstr "O argumento para o atributo \"{0}\" deve ser um identificador válido"
 
-#: mcs/mcs/cs-parser.jay:6347
+#: mcs/mcs/attribute.cs:1039
 #, fuzzy, csharp-format
-msgid "Identifier expected, `{0}' is a keyword"
-msgstr "Identificador esperado: {0}"
+msgid "Invalid value for argument to `{0}' attribute"
+msgstr ""
+"Valor inválido para o argumento para o atributo \"System.AttributeUsage\""
 
-#: mcs/mcs/cs-parser.jay:6361
+#: mcs/mcs/attribute.cs:1307
 #, csharp-format
-msgid "{1} `{0}'"
-msgstr ""
+msgid "The attribute `{0}' cannot be applied multiple times"
+msgstr "O atributo \"{0}\" não pode ser aplicado múltiplas vezes"
 
-#: mcs/mcs/cs-parser.jay:6363
+#: mcs/mcs/attribute.cs:1613
 #, csharp-format
-msgid "{2} `{0}', expecting {1}"
-msgstr ""
+msgid "`{0}' is obsolete: `{1}'"
+msgstr "\"{0}\" é obsoleto: \"{1}\""
 
-#: mcs/mcs/cs-tokenizer.cs:760
+#: mcs/mcs/cs-tokenizer.cs:811
 msgid ""
 "The `partial' modifier can be used only immediately before `class', "
 "`struct', `interface', or `void' keyword"
@@ -781,50 +499,55 @@ msgstr ""
 "O modificador \"parcial\" pode ser utilizado somente imediatamente antesdas "
 "palavras chave \"class\", \"struct\", \"interface\" ou \"void\""
 
-#: mcs/mcs/cs-tokenizer.cs:1395 mcs/mcs/cs-tokenizer.cs:1462
+#: mcs/mcs/cs-tokenizer.cs:1515 mcs/mcs/cs-tokenizer.cs:1578
 msgid "Invalid number"
 msgstr "Número inválido"
 
-#: mcs/mcs/cs-tokenizer.cs:1647
+#: mcs/mcs/cs-tokenizer.cs:1793
 #, csharp-format
 msgid "Unrecognized escape sequence `\\{0}'"
 msgstr "Sequência de escape não reconhecida \"\\{0}\""
 
-#: mcs/mcs/cs-tokenizer.cs:1666
+#: mcs/mcs/cs-tokenizer.cs:1812
 msgid "Unrecognized escape sequence"
 msgstr "Sequência de escape não reconhecida"
 
-#: mcs/mcs/cs-tokenizer.cs:1887
+#: mcs/mcs/cs-tokenizer.cs:2077
+#, fuzzy
+msgid "Filename, single-line comment or end-of-line expected"
+msgstr "Comentário de linha única ou fim-de-linha esperado"
+
+#: mcs/mcs/cs-tokenizer.cs:2125
 msgid "Missing identifier to pre-processor directive"
 msgstr "Identificador faltando para a diretiva do pré-processador"
 
-#: mcs/mcs/cs-tokenizer.cs:1897 mcs/mcs/cs-tokenizer.cs:1901
+#: mcs/mcs/cs-tokenizer.cs:2135 mcs/mcs/cs-tokenizer.cs:2139
 #, csharp-format
 msgid "Identifier expected: {0}"
 msgstr "Identificador esperado: {0}"
 
-#: mcs/mcs/cs-tokenizer.cs:2373
+#: mcs/mcs/cs-tokenizer.cs:2647
 #, fuzzy
 msgid "Integral constant is too large"
 msgstr "Constante numérica muito longa"
 
-#: mcs/mcs/cs-tokenizer.cs:2378
+#: mcs/mcs/cs-tokenizer.cs:2652
 msgid "Invalid preprocessor directive"
 msgstr "Diretiva de pré-processador inválida"
 
-#: mcs/mcs/cs-tokenizer.cs:2385
+#: mcs/mcs/cs-tokenizer.cs:2659
 #, csharp-format
 msgid "Unexpected processor directive ({0})"
 msgstr "Diretiva de processador inesperada ({0})"
 
-#: mcs/mcs/cs-tokenizer.cs:2391
+#: mcs/mcs/cs-tokenizer.cs:2665
 msgid ""
 "Cannot define or undefine preprocessor symbols after first token in file"
 msgstr ""
 "Não foi possível definir ou indefinir símbolos depois do primeiro token no "
 "arquivo"
 
-#: mcs/mcs/cs-tokenizer.cs:2397
+#: mcs/mcs/cs-tokenizer.cs:2671
 msgid ""
 "Preprocessor directives must appear as the first non-whitespace character on "
 "a line"
@@ -832,78 +555,83 @@ msgstr ""
 "Diretivas de pré-processador devem aparecer como o primeiro caractere não-"
 "branco na linha"
 
-#: mcs/mcs/cs-tokenizer.cs:2402
+#: mcs/mcs/cs-tokenizer.cs:2676
 msgid "Single-line comment or end-of-line expected"
 msgstr "Comentário de linha única ou fim-de-linha esperado"
 
-#: mcs/mcs/cs-tokenizer.cs:2435 mcs/mcs/cs-tokenizer.cs:3431
+#: mcs/mcs/cs-tokenizer.cs:2721 mcs/mcs/cs-tokenizer.cs:3760
 msgid "Expected `#endif' directive"
 msgstr "Esperada diretiva \"#endif\""
 
-#: mcs/mcs/cs-tokenizer.cs:2468 mcs/mcs/cs-tokenizer.cs:2489
-#: mcs/mcs/cs-tokenizer.cs:2520 mcs/mcs/cs-tokenizer.cs:3429
+#: mcs/mcs/cs-tokenizer.cs:2754 mcs/mcs/cs-tokenizer.cs:2775
+#: mcs/mcs/cs-tokenizer.cs:2806 mcs/mcs/cs-tokenizer.cs:3758
 msgid "#endregion directive expected"
 msgstr "diretiva #endregion esperada"
 
-#: mcs/mcs/cs-tokenizer.cs:2567
+#: mcs/mcs/cs-tokenizer.cs:2855
 msgid "Wrong preprocessor directive"
 msgstr "Diretiva do pré-processador incorreta"
 
-#: mcs/mcs/cs-tokenizer.cs:2579
+#: mcs/mcs/cs-tokenizer.cs:2867
 #, csharp-format
 msgid "#error: '{0}'"
 msgstr "#erro: \"{0}\""
 
-#: mcs/mcs/cs-tokenizer.cs:2598
+#: mcs/mcs/cs-tokenizer.cs:2885
 msgid "The line number specified for #line directive is missing or invalid"
 msgstr ""
 "O número da linha especificada para a diretiva #line está faltando ou está "
 "inválida"
 
-#: mcs/mcs/cs-tokenizer.cs:2625 mcs/mcs/cs-tokenizer.cs:3243
+#: mcs/mcs/cs-tokenizer.cs:2947 mcs/mcs/cs-tokenizer.cs:3599
 msgid "Newline in constant"
 msgstr "Quebra de linha em constante"
 
-#: mcs/mcs/cs-tokenizer.cs:2636
+#: mcs/mcs/cs-tokenizer.cs:2974
 msgid "Unterminated string literal"
 msgstr "Literal de string não terminada"
 
-#: mcs/mcs/cs-tokenizer.cs:2705
+#: mcs/mcs/cs-tokenizer.cs:3051
 msgid "Identifier too long (limit is 512 chars)"
 msgstr "Identificador muito longo (o limite é 512 caracteres)"
 
-#: mcs/mcs/cs-tokenizer.cs:3092
+#: mcs/mcs/cs-tokenizer.cs:3437
 msgid "End-of-file found, '*/' expected"
 msgstr "Fim de arquivo encontrado, \"*/\" esperado"
 
-#: mcs/mcs/cs-tokenizer.cs:3201
+#: mcs/mcs/cs-tokenizer.cs:3548
 msgid "Keyword, identifier, or string expected after verbatim specifier: @"
 msgstr ""
 "Palavra-chave, identificador ou string esperado depois do especificador "
 "verbatim: @"
 
-#: mcs/mcs/cs-tokenizer.cs:3217
+#: mcs/mcs/cs-tokenizer.cs:3569
 #, fuzzy, csharp-format
 msgid "Unexpected character `{0}'"
 msgstr "Experado \"{0}\""
 
-#: mcs/mcs/cs-tokenizer.cs:3238
+#: mcs/mcs/cs-tokenizer.cs:3594
 msgid "Empty character literal"
 msgstr ""
 
-#: mcs/mcs/cs-tokenizer.cs:3258
+#: mcs/mcs/cs-tokenizer.cs:3615
 msgid "Too many characters in character literal"
 msgstr ""
 
-#: mcs/mcs/cfold.cs:84
+#: mcs/mcs/cfold.cs:73
 msgid "The operation overflows at compile time in checked mode"
 msgstr "A operação estoura em tempo de compilação no modo marcado"
 
-#: mcs/mcs/cfold.cs:764 mcs/mcs/cfold.cs:849
+#: mcs/mcs/cfold.cs:329 mcs/mcs/expression.cs:4145
+#, csharp-format
+msgid "Operator `{0}' is ambiguous on operands of type `{1}' and `{2}'"
+msgstr "O operador \"{0}\" é ambíguo em operandos do tipo \"{1}\" e \"{2}\""
+
+#: mcs/mcs/cfold.cs:782 mcs/mcs/cfold.cs:868
 msgid "Division by constant zero"
 msgstr "Divisão pela constante zero"
 
-#: mcs/mcs/class.cs:371
+#: mcs/mcs/class.cs:142
 #, csharp-format
 msgid ""
 "Partial declarations of `{0}' must be all classes, all structs or all "
@@ -912,14 +640,41 @@ msgstr ""
 "Declarações parciais de \"{0}\" devem ser todas as classes, todas structs ou "
 "todas as interfaces"
 
-#: mcs/mcs/class.cs:380
+#: mcs/mcs/class.cs:151
 #, csharp-format
 msgid "Partial declarations of `{0}' have conflicting accessibility modifiers"
 msgstr ""
 "Declarações parciais de \"{0}\" possuim modificadores de acessibilidade "
 "conflitantes"
 
-#: mcs/mcs/class.cs:433
+#: mcs/mcs/class.cs:161
+#, csharp-format
+msgid ""
+"Partial declarations of `{0}' must have the same type parameter names in the "
+"same order"
+msgstr ""
+"Declarações parciais de \"{0}\" devem ter o mesmo nome de tipos de "
+"parâmetros na mesma ordem"
+
+#: mcs/mcs/class.cs:168
+#, fuzzy, csharp-format
+msgid ""
+"Partial declarations of `{0}' must have the same type parameter variance "
+"modifiers"
+msgstr ""
+"Declarações parciais de \"{0}\" devem ter o mesmo nome de tipos de "
+"parâmetros na mesma ordem"
+
+#: mcs/mcs/class.cs:346
+#, csharp-format
+msgid ""
+"Missing partial modifier on declaration of type `{0}'. Another partial "
+"declaration of this type exists"
+msgstr ""
+"Está faltando o modificador parcial na declaração do tipo \"{0}\". Outra "
+"declaração parcial deste tipo existe"
+
+#: mcs/mcs/class.cs:759
 #, csharp-format
 msgid ""
 "`{0}': explicit interface declaration can only be declared in a class or "
@@ -928,37 +683,47 @@ msgstr ""
 "\"{0}\": declaração explícita de interface pode apenas ser declarada em uma "
 "classe ou struct"
 
-#: mcs/mcs/class.cs:470 mcs/mcs/membercache.cs:1380
+#: mcs/mcs/class.cs:814
 #, csharp-format
+msgid "Duplicate type parameter `{0}'"
+msgstr "Tipo de parâmetro duplicado \"{0}\""
+
+#: mcs/mcs/class.cs:816
+#, fuzzy, csharp-format
 msgid ""
-"A member `{0}' is already defined. Rename this member or use different "
-"parameter types"
+"Primary constructor of type `{0}' has parameter of same name as type "
+"parameter `{1}'"
 msgstr ""
-"Um membro \"{0}\" já está definido. Renomeie esse membro ou use tipos de "
-"parâmetros distintos"
+"Declarações parciais \"{0}\" possuem restrições inconsistentes para o tipo "
+"de parâmetro \"{1}\""
+
+#: mcs/mcs/class.cs:820
+#, csharp-format
+msgid "The type `{0}' already contains a definition for `{1}'"
+msgstr "O tipo \"{0}\" já contém uma definição para \"{1}\""
 
-#: mcs/mcs/class.cs:578
+#: mcs/mcs/class.cs:897
 msgid ""
 "Cannot specify the `DefaultMember' attribute on type containing an indexer"
 msgstr ""
 "Não foi possível especificar o atributo \"DefaultMember\" no tipo contendo "
 "um indexador"
 
-#: mcs/mcs/class.cs:584
+#: mcs/mcs/class.cs:902
 msgid "The RequiredAttribute attribute is not permitted on C# types"
 msgstr "O atributo RequiredAttribute não é permitido em tipos de C#"
 
-#: mcs/mcs/class.cs:855
+#: mcs/mcs/class.cs:1142
 #, fuzzy, csharp-format
 msgid "Class `{0}' cannot derive from the dynamic type"
 msgstr "\"{0}\": não foi possível declarar variáveis de tipo estático"
 
-#: mcs/mcs/class.cs:872
+#: mcs/mcs/class.cs:1159
 #, csharp-format
 msgid "`{0}' is already listed in interface list"
 msgstr "\"{0}\" já está listado na lista de interfaces"
 
-#: mcs/mcs/class.cs:880
+#: mcs/mcs/class.cs:1167
 #, csharp-format
 msgid ""
 "Inconsistent accessibility: base interface `{0}' is less accessible than "
@@ -967,29 +732,23 @@ msgstr ""
 "Acessibilidade inconsistente: interface base \"{0}\" é menos acessível que a "
 "interface \"{1}\""
 
-#: mcs/mcs/class.cs:886
+#: mcs/mcs/class.cs:1173
 #, csharp-format
 msgid "Type `{0}' in interface list is not an interface"
 msgstr "Tipo \"{0}\" na lista de interfaces não é uma interface"
 
-#: mcs/mcs/class.cs:888
+#: mcs/mcs/class.cs:1175
 #, csharp-format
 msgid "`{0}': Classes cannot have multiple base classes (`{1}' and `{2}')"
 msgstr ""
 "\"{0}\": Classes não podem ter múltiplas classes base (\"{1}\" e \"{2}\")"
 
-#: mcs/mcs/class.cs:891
+#: mcs/mcs/class.cs:1178
 #, csharp-format
 msgid "`{0}': Base class `{1}' must be specified as first"
 msgstr "\"{0}\": Classe base \"{1}\" deve ser especificada como primeira"
 
-#: mcs/mcs/class.cs:915
-#, csharp-format
-msgid "Partial declarations of `{0}' must not specify different base classes"
-msgstr ""
-"Declarações parciais de \"{0}\" não devem especificar diferentes classes base"
-
-#: mcs/mcs/class.cs:996
+#: mcs/mcs/class.cs:1239
 #, csharp-format
 msgid ""
 "The operator `{0}' requires a matching operator `{1}' to also be defined"
@@ -997,12 +756,18 @@ msgstr ""
 "O operador `{0}' necessita um operador correspondente \"{1}\" para também "
 "ser definido"
 
-#: mcs/mcs/class.cs:1021
+#: mcs/mcs/class.cs:1494
 #, csharp-format
-msgid "`{0}' clashes with a predefined namespace"
+msgid "Partial declarations of `{0}' must not specify different base classes"
+msgstr ""
+"Declarações parciais de \"{0}\" não devem especificar diferentes classes base"
+
+#: mcs/mcs/class.cs:1529
+msgid ""
+"Only one part of a partial type can declare primary constructor parameters"
 msgstr ""
 
-#: mcs/mcs/class.cs:1153
+#: mcs/mcs/class.cs:1546
 #, csharp-format
 msgid ""
 "Inherited interface `{0}' causes a cycle in the interface hierarchy of `{1}'"
@@ -1010,12 +775,17 @@ msgstr ""
 "Interface herdada \"{0}\" causa um ciclo na hierarquia de interfaces de "
 "\"{1}\""
 
-#: mcs/mcs/class.cs:1159
+#: mcs/mcs/class.cs:1553
 #, csharp-format
 msgid "Circular base class dependency involving `{0}' and `{1}'"
 msgstr "Dependência circular na classe base envolvendo \"{0}\" e \"{1}\""
 
-#: mcs/mcs/class.cs:1186
+#: mcs/mcs/class.cs:1865
+#, fuzzy, csharp-format
+msgid "`{0}': cannot implement a dynamic interface `{1}'"
+msgstr "\"{0}\": tipo contendo não implementa interface \"{1}\""
+
+#: mcs/mcs/class.cs:1880
 #, csharp-format
 msgid ""
 "`{0}' cannot implement both `{1}' and `{2}' because they may unify for some "
@@ -1024,39 +794,14 @@ msgstr ""
 "\"{0}\" não pode implementar ambos \"{1}\" e \"{2}\" por que estes devem "
 "unificar para alguma substituição de tipo de parâmetro"
 
-#: mcs/mcs/class.cs:1334
-#, csharp-format
-msgid ""
-"Partial declarations of `{0}' must have the same type parameter names in the "
-"same order"
-msgstr ""
-"Declarações parciais de \"{0}\" devem ter o mesmo nome de tipos de "
-"parâmetros na mesma ordem"
-
-#: mcs/mcs/class.cs:1341
-#, fuzzy, csharp-format
-msgid ""
-"Partial declarations of `{0}' must have the same type parameter variance "
-"modifiers"
-msgstr ""
-"Declarações parciais de \"{0}\" devem ter o mesmo nome de tipos de "
-"parâmetros na mesma ordem"
-
-#: mcs/mcs/class.cs:1379
+#: mcs/mcs/class.cs:1904
 #, csharp-format
 msgid ""
-"Partial declarations of `{0}' have inconsistent constraints for type "
-"parameter `{1}'"
+"A generic type cannot derive from `{0}' because it is an attribute class"
 msgstr ""
-"Declarações parciais \"{0}\" possuem restrições inconsistentes para o tipo "
-"de parâmetro \"{1}\""
-
-#: mcs/mcs/class.cs:1518
-#, fuzzy, csharp-format
-msgid "`{0}': cannot implement a dynamic interface `{1}'"
-msgstr "\"{0}\": tipo contendo não implementa interface \"{1}\""
+"Um tipo genérico não pode derivar de \"{0}\" por que é uma classe de atributo"
 
-#: mcs/mcs/class.cs:1640
+#: mcs/mcs/class.cs:2008
 msgid ""
 "Two indexers have different names; the IndexerName attribute must be used "
 "with the same name on every indexer within a type"
@@ -1064,82 +809,90 @@ msgstr ""
 "Dois indexadores tem nomes diferentes; o atributo IndexerName deve ser "
 "utilizado com o mesmo nome em todo indexador de um tipo"
 
-#: mcs/mcs/class.cs:1979
+#: mcs/mcs/class.cs:2263
 #, csharp-format
 msgid "A static member `{0}' cannot be marked as override, virtual or abstract"
 msgstr ""
 "Um membro estático \"{0}\" não pode ser marcado como sobrescrito, virtual ou "
 "abstrato"
 
-#: mcs/mcs/class.cs:1986
+#: mcs/mcs/class.cs:2270
 #, csharp-format
 msgid "A member `{0}' marked as override cannot be marked as new or virtual"
 msgstr ""
 "Um membro \"{0}\" marcado como sobrescrito não pode ser marcado como novo ou "
 "virtual"
 
-#: mcs/mcs/class.cs:1998
+#: mcs/mcs/class.cs:2282
 #, csharp-format
 msgid "`{0}' cannot be both extern and abstract"
 msgstr "\"{0}\" não pode ser externo e abstrato ao mesmo tempo"
 
-#: mcs/mcs/class.cs:2003
+#: mcs/mcs/class.cs:2287
 #, csharp-format
 msgid "`{0}' cannot be both abstract and sealed"
 msgstr "\"{0}\" não pode ser abstrato e selado"
 
-#: mcs/mcs/class.cs:2008
+#: mcs/mcs/class.cs:2292
 #, csharp-format
 msgid "The abstract method `{0}' cannot be marked virtual"
 msgstr "O método abstrato \"{0}\" não pode ser marcado como virtual"
 
-#: mcs/mcs/class.cs:2014
+#: mcs/mcs/class.cs:2298
 #, csharp-format
 msgid "`{0}' is abstract but it is declared in the non-abstract class `{1}'"
 msgstr "\"{0}\" é abstrato mas está declarado na classe não-abstrata \"{1}\""
 
-#: mcs/mcs/class.cs:2022
+#: mcs/mcs/class.cs:2306
 #, csharp-format
 msgid "`{0}': virtual or abstract members cannot be private"
 msgstr "\"{0}\": membros virtuais ou abstratos não podem ser privados"
 
-#: mcs/mcs/class.cs:2029
+#: mcs/mcs/class.cs:2313
 #, csharp-format
 msgid "`{0}' cannot be sealed because it is not an override"
 msgstr "\"{0}\" não pode ser selado por que não é um sobrescrito"
 
-#: mcs/mcs/class.cs:2076
+#: mcs/mcs/class.cs:2362
 #, csharp-format
 msgid "`{0}': containing type does not implement interface `{1}'"
 msgstr "\"{0}\": tipo contendo não implementa interface \"{1}\""
 
-#: mcs/mcs/class.cs:2252
+#: mcs/mcs/class.cs:2559
 #, csharp-format
 msgid "Type parameter `{0}' has same name as containing type, or method"
 msgstr ""
 "Parâmetro de tipo \"{0}\" tem o mesmo nome que o tipo contendo, ou método"
 
-#: mcs/mcs/class.cs:2260
+#: mcs/mcs/class.cs:2565
+#, fuzzy, csharp-format
+msgid ""
+"Primary constructor of type `{0}' has parameter of same name as containing "
+"type"
+msgstr ""
+"Parâmetro de tipo \"{0}\" tem o mesmo nome que o tipo contendo, ou método"
+
+#: mcs/mcs/class.cs:2573
 #, csharp-format
 msgid "`{0}': member names cannot be the same as their enclosing type"
 msgstr ""
 "\"{0}\": nomes de membros não podem ser os mesmos que seus tipos de "
 "fechamento"
 
-#: mcs/mcs/class.cs:2426
+#: mcs/mcs/class.cs:2709
 msgid ""
 "The class System.Object cannot have a base class or implement an interface."
 msgstr ""
 "A classe System.Object não pode ter uma classe base ou implementar uma "
 "interface."
 
-#: mcs/mcs/class.cs:2434
+#: mcs/mcs/class.cs:2718
 #, csharp-format
 msgid "Attribute `{0}' is only valid on classes derived from System.Attribute"
 msgstr ""
 "Atributo \"{0}\" é válido somente em classes derivadas de System.Attribute"
 
-#: mcs/mcs/class.cs:2439
+#: mcs/mcs/class.cs:2723
 msgid ""
 "Attribute `System.Diagnostics.ConditionalAttribute' is only valid on methods "
 "or attribute classes"
@@ -1147,72 +900,65 @@ msgstr ""
 "Atributo \"System.Diagnostics.ConditionalAttribute\" é somente válido em "
 "métodos ou classes de atributos"
 
-#: mcs/mcs/class.cs:2477
+#: mcs/mcs/class.cs:2752
+#, csharp-format
+msgid "`{0}': an abstract class cannot be sealed or static"
+msgstr "\"{0}\": uma classe abstrata não pode ser selada ou estática"
+
+#: mcs/mcs/class.cs:2756
+#, csharp-format
+msgid "`{0}': a class cannot be both static and sealed"
+msgstr "\"{0}\": uma classe não pode ser estática e selada ao mesmo tempo"
+
+#: mcs/mcs/class.cs:2761
+#, fuzzy, csharp-format
+msgid "`{0}': Static classes cannot have primary constructor"
+msgstr "\"{0}\": Classes estáticas não podem ter construtores de instâncias"
+
+#: mcs/mcs/class.cs:2767
 #, csharp-format
 msgid "`{0}': Static classes cannot contain user-defined operators"
 msgstr ""
 "\"{0}\": Classes estáticas não podem conter operadores definidos pelo usuário"
 
-#: mcs/mcs/class.cs:2482
+#: mcs/mcs/class.cs:2772
 #, csharp-format
 msgid "`{0}': Static classes cannot contain destructor"
 msgstr "\"{0}\": Classes estáticas não podem conter um destrutor"
 
-#: mcs/mcs/class.cs:2487
+#: mcs/mcs/class.cs:2777
 #, csharp-format
 msgid "`{0}': cannot declare indexers in a static class"
 msgstr "\"{0}\": não é possível declarar indexadores como uma classe estática"
 
-#: mcs/mcs/class.cs:2495
+#: mcs/mcs/class.cs:2785
 #, csharp-format
 msgid "`{0}': Static classes cannot have instance constructors"
 msgstr "\"{0}\": Classes estáticas não podem ter construtores de instâncias"
 
-#: mcs/mcs/class.cs:2501
-#, csharp-format
-msgid "`{0}': Extension methods must be declared static"
-msgstr "\"{0}\": Métodos de extensão devem ser declarados como estáticos"
-
-#: mcs/mcs/class.cs:2505
+#: mcs/mcs/class.cs:2789
 #, csharp-format
 msgid "`{0}': cannot declare instance members in a static class"
 msgstr ""
 "\"{0}\": não foi possível declarar membros de instâncias em uma classe "
 "estática"
 
-#: mcs/mcs/class.cs:2514
-#, csharp-format
-msgid "`{0}': an abstract class cannot be sealed or static"
-msgstr "\"{0}\": uma classe abstrata não pode ser selada ou estática"
-
-#: mcs/mcs/class.cs:2518
-#, csharp-format
-msgid "`{0}': a class cannot be both static and sealed"
-msgstr "\"{0}\": uma classe não pode ser estática e selada ao mesmo tempo"
-
-#: mcs/mcs/class.cs:2548
+#: mcs/mcs/class.cs:2831
 #, fuzzy, csharp-format
 msgid "`{0}': Cannot derive from type parameter `{1}'"
 msgstr "\"{0}\": Não foi possível derivar da classe estática \"{1}\""
 
-#: mcs/mcs/class.cs:2552
-#, csharp-format
-msgid ""
-"A generic type cannot derive from `{0}' because it is an attribute class"
-msgstr ""
-"Um tipo genérico não pode derivar de \"{0}\" por que é uma classe de atributo"
-
-#: mcs/mcs/class.cs:2556
+#: mcs/mcs/class.cs:2835
 #, csharp-format
 msgid "`{0}': Cannot derive from static class `{1}'"
 msgstr "\"{0}\": Não foi possível derivar da classe estática \"{1}\""
 
-#: mcs/mcs/class.cs:2560
+#: mcs/mcs/class.cs:2839
 #, fuzzy, csharp-format
 msgid "`{0}': cannot derive from sealed type `{1}'"
 msgstr "\"{0}\": não foi possível derivar da classe selada \"{1}\""
 
-#: mcs/mcs/class.cs:2563
+#: mcs/mcs/class.cs:2842
 #, csharp-format
 msgid ""
 "Static class `{0}' cannot derive from type `{1}'. Static classes must derive "
@@ -1221,12 +967,12 @@ msgstr ""
 "Classe estática \"{0}\" não pode derivar do tipo \"{1}\". Classes estáticas "
 "devem derivar de objetos"
 
-#: mcs/mcs/class.cs:2570
+#: mcs/mcs/class.cs:2853
 #, csharp-format
 msgid "`{0}' cannot derive from special class `{1}'"
 msgstr "\"{0}\" não foi possível derivar da classe especial \"{1}\""
 
-#: mcs/mcs/class.cs:2578
+#: mcs/mcs/class.cs:2863
 #, csharp-format
 msgid ""
 "Inconsistent accessibility: base class `{0}' is less accessible than class `"
@@ -1235,59 +981,68 @@ msgstr ""
 "Acessibilidade inconsistente: classe base \"{0}\" é menos acessível que a "
 "classe \"{1}\""
 
-#: mcs/mcs/class.cs:2586
+#: mcs/mcs/class.cs:2871
 #, csharp-format
 msgid "Static class `{0}' cannot implement interfaces"
 msgstr "Classe estática \"{0}\" não pode implementar interfaces"
 
-#: mcs/mcs/class.cs:2705 mcs/mcs/class.cs:2716
+#: mcs/mcs/class.cs:2982 mcs/mcs/class.cs:2996
 #, csharp-format
 msgid "Struct member `{0}' of type `{1}' causes a cycle in the struct layout"
 msgstr ""
 "Membro da estrutura \"{0}\" do tipo \"{1}\" causou um ciclo na disposição de "
 "structs"
 
-#: mcs/mcs/class.cs:2806
+#: mcs/mcs/class.cs:3086
 #, csharp-format
 msgid "`{0}': Structs cannot have instance field initializers"
 msgstr "\"{0}\": Structs não podem ter inicializadores de campos de instância"
 
-#: mcs/mcs/class.cs:2987
+#: mcs/mcs/class.cs:3274
 #, fuzzy, csharp-format
 msgid "Do not override `{0}'. Use destructor syntax instead"
 msgstr ""
 "Não use \"{0}\" diretamente. Ao invés disso, use o modificador de parâmetro "
 "\"this\""
 
-#: mcs/mcs/class.cs:2990
+#: mcs/mcs/class.cs:3277
 #, csharp-format
 msgid "`{0}' is marked as an override but no suitable {1} found to override"
 msgstr ""
 "\"{0}\" está marcado como uma sobrescrita mas nenhuma {1} foi encontrada "
 "para substituir"
 
-#: mcs/mcs/class.cs:2996
+#: mcs/mcs/class.cs:3283
 #, csharp-format
 msgid "`{0}': cannot override because `{1}' is not an event"
 msgstr "\"{0}\": não foi possível sobrescrever pois \"{1}\" não é um evento"
 
-#: mcs/mcs/class.cs:2999
+#: mcs/mcs/class.cs:3286
 #, csharp-format
 msgid "`{0}': cannot override because `{1}' is not a property"
 msgstr ""
 "\"{0}\": não foi possível sobrescrever pois \"{1}\" não é uma propriedade"
 
-#: mcs/mcs/class.cs:3002
+#: mcs/mcs/class.cs:3289
 #, csharp-format
 msgid "`{0}': cannot override because `{1}' is not a method"
 msgstr "\"{0}\": não foi possível sobrescrever pois \"{1}\" não é um método"
 
-#: mcs/mcs/class.cs:3058 mcs/mcs/field.cs:187
+#: mcs/mcs/class.cs:3308
+#, fuzzy, csharp-format
+msgid ""
+"`{0}' cannot override inherited members `{1}' and `{2}' because they have "
+"the same signature when used in type `{3}'"
+msgstr ""
+"\"{0}\": não foi possível sobrescrever membro herdado \"{1}\" por que está "
+"selado"
+
+#: mcs/mcs/class.cs:3361 mcs/mcs/field.cs:203
 #, csharp-format
 msgid "`{0}' hides inherited abstract member `{1}'"
 msgstr "\"{0}\" esconde membro abstrato herdado \"{1}\""
 
-#: mcs/mcs/class.cs:3082
+#: mcs/mcs/class.cs:3385
 #, csharp-format
 msgid ""
 "`{0}': cannot override inherited member `{1}' because it is not marked "
@@ -1296,39 +1051,39 @@ msgstr ""
 "\"{0}\": não foi possível sobrescrever membro herdado \"{1}\" porque este "
 "não está marcado como virtual, abstrato ou substituto"
 
-#: mcs/mcs/class.cs:3090
+#: mcs/mcs/class.cs:3393
 #, csharp-format
 msgid "`{0}': cannot override inherited member `{1}' because it is sealed"
 msgstr ""
 "\"{0}\": não foi possível sobrescrever membro herdado \"{1}\" por que está "
 "selado"
 
-#: mcs/mcs/class.cs:3099
+#: mcs/mcs/class.cs:3402
 #, csharp-format
 msgid "`{0}': type must be `{1}' to match overridden member `{2}'"
 msgstr ""
 "\"{0}\": o tipo deve ser \"{1}\" para corresponder com o membro da "
 "substituição \"{2}\""
 
-#: mcs/mcs/class.cs:3102
+#: mcs/mcs/class.cs:3405
 #, csharp-format
 msgid "`{0}': return type must be `{1}' to match overridden member `{2}'"
 msgstr ""
 "\"{0}\": tipo de retorno deve ser \"{1}\" para corresponder com o membro da "
 "substituição \"{2}\""
 
-#: mcs/mcs/class.cs:3170
+#: mcs/mcs/class.cs:3473
 #, csharp-format
 msgid "A partial method `{0}' cannot explicitly implement an interface"
 msgstr ""
 "Um método parcial \"{0}\" não pode implementar uma interface explicitamente"
 
-#: mcs/mcs/class.cs:3178
+#: mcs/mcs/class.cs:3479
 #, fuzzy, csharp-format
 msgid "The type `{0}' in explicit interface declaration is not an interface"
 msgstr "\"{0}\" na declaração explícita da interface não é uma interface"
 
-#: mcs/mcs/class.cs:3209
+#: mcs/mcs/class.cs:3514
 #, csharp-format
 msgid ""
 "Inconsistent accessibility: parameter type `{0}' is less accessible than "
@@ -1337,7 +1092,7 @@ msgstr ""
 "Acessibilidade inconsistente: tipo de parâmetro \"{0}\" é menos acessível "
 "que o indexador \"{1}\""
 
-#: mcs/mcs/class.cs:3213
+#: mcs/mcs/class.cs:3518
 #, csharp-format
 msgid ""
 "Inconsistent accessibility: parameter type `{0}' is less accessible than "
@@ -1346,7 +1101,7 @@ msgstr ""
 "Acessibilidade inconsistente: tipo de parâmetro \"{0}\" é menos acessível "
 "que o operador \"{1}\""
 
-#: mcs/mcs/class.cs:3217
+#: mcs/mcs/class.cs:3522
 #, csharp-format
 msgid ""
 "Inconsistent accessibility: parameter type `{0}' is less accessible than "
@@ -1355,7 +1110,7 @@ msgstr ""
 "Acessibilidade inconsistente: tipo de parâmetro \"{0}\" é menos acessível "
 "que o método \"{1}\""
 
-#: mcs/mcs/class.cs:3270
+#: mcs/mcs/class.cs:3582
 #, csharp-format
 msgid ""
 "`{0}': cannot change access modifiers when overriding `{1}' inherited member "
@@ -1364,33 +1119,58 @@ msgstr ""
 "\"{0}\": não foi possível alterar modificadores de acesso ao substituir "
 "\"{1}\" membro herdado \"{2}\""
 
-#: mcs/mcs/class.cs:3279
+#: mcs/mcs/class.cs:3591
 #, fuzzy, csharp-format
 msgid "`{0}': static types cannot be used as return types"
 msgstr "\"{0}\": tipos estáticos não podem ser utilizados como parâmetros"
 
-#: mcs/mcs/class.cs:3404
+#: mcs/mcs/class.cs:3652
+#, fuzzy, csharp-format
+msgid ""
+"`{0}': Cannot specify constraints for overrides and explicit interface "
+"implementation methods"
+msgstr ""
+"\"{0}\": Não foi possível especificar restrições para sobrescritos ou "
+"métodos de implementação explícitos de interface"
+
+#: mcs/mcs/class.cs:3716
 #, csharp-format
 msgid "New virtual member `{0}' is declared in a sealed class `{1}'"
 msgstr "Novo membro virtual \"{0}\" é declarado em uma classe selada \"{1}\""
 
-#: mcs/mcs/class.cs:3419
+#: mcs/mcs/class.cs:3731
 msgid "Inconsistent accessibility: property type `"
 msgstr "Acessibilidade inconsistente: tipo da propriedade \""
 
-#: mcs/mcs/class.cs:3424
+#: mcs/mcs/class.cs:3736
 msgid "Inconsistent accessibility: indexer return type `"
 msgstr "Acessibilidade inconsistente: tipo de retorno do indexador \""
 
-#: mcs/mcs/class.cs:3430 mcs/mcs/class.cs:3435 mcs/mcs/delegate.cs:159
+#: mcs/mcs/class.cs:3742 mcs/mcs/class.cs:3747 mcs/mcs/delegate.cs:171
 msgid "Inconsistent accessibility: return type `"
 msgstr "Acessibilidade inconsistente: tipo de retorno \""
 
-#: mcs/mcs/class.cs:3440
+#: mcs/mcs/class.cs:3752
 msgid "Inconsistent accessibility: field type `"
 msgstr "Acessibilidade inconsistente: tipo de campo \""
 
-#: mcs/mcs/class.cs:3453
+#: mcs/mcs/class.cs:3764
+#, csharp-format
+msgid ""
+"Parameters or local variables of type `{0}' cannot be declared in async "
+"methods or iterators"
+msgstr ""
+
+#: mcs/mcs/class.cs:3768
+#, fuzzy, csharp-format
+msgid ""
+"Local variables of type `{0}' cannot be used inside anonymous methods, "
+"lambda expressions or query expressions"
+msgstr ""
+"A variável local ou parâmetro \"{0}\" não pode ter seu endereço obtido e ser "
+"utilizado dentro de um método anônimo ou expressão lambda"
+
+#: mcs/mcs/class.cs:3772
 #, csharp-format
 msgid "Field or property cannot be of type `{0}'"
 msgstr "Campo ou propriedade não podem ser do tipo \"{0}\""
@@ -1405,19 +1185,19 @@ msgstr "O tipo \"{0}\" não pode ser declarado const"
 msgid "The type `{0}' cannot be declared const"
 msgstr "O tipo \"{0}\" não pode ser declarado const"
 
-#: mcs/mcs/const.cs:181
+#: mcs/mcs/const.cs:186
 #, csharp-format
 msgid ""
 "The evaluation of the constant value for `{0}' involves a circular definition"
 msgstr ""
 "O cálculo do valor constante para \"{0}\" involve uma definição circular"
 
-#: mcs/mcs/constant.cs:60 mcs/mcs/constant.cs:312
+#: mcs/mcs/constant.cs:66 mcs/mcs/constant.cs:480
 #, csharp-format
 msgid "Constant value `{0}' cannot be converted to a `{1}'"
 msgstr "Valor constante \"{0}\" não pode ser convertido para um \"{1}\""
 
-#: mcs/mcs/constant.cs:180
+#: mcs/mcs/constant.cs:343
 #, csharp-format
 msgid ""
 "Constant value `{0}' cannot be converted to a `{1}' (use `unchecked' syntax "
@@ -1426,24 +1206,24 @@ msgstr ""
 "Valor constante \"{0}\" não pode ser convertido para um \"{1}\" (use a "
 "sintaxe \"unchecked\" para sobrescrever)"
 
-#: mcs/mcs/convert.cs:1158
+#: mcs/mcs/convert.cs:1200
 #, csharp-format
 msgid ""
 "Ambiguous user defined operators `{0}' and `{1}' when converting from `{2}' "
 "to `{3}'"
 msgstr ""
 
-#: mcs/mcs/decl.cs:376
+#: mcs/mcs/decl.cs:331
 #, csharp-format
 msgid "`{0}' cannot declare a body because it is marked extern"
 msgstr "\"{0}\" não pode declarar um corpo porque está marcada como externa"
 
-#: mcs/mcs/decl.cs:382
+#: mcs/mcs/decl.cs:337
 #, csharp-format
 msgid "`{0}' cannot declare a body because it is marked abstract"
 msgstr "\"{0}\" nao pode declarar um corpo porque está marcada como abstrato"
 
-#: mcs/mcs/decl.cs:395
+#: mcs/mcs/decl.cs:350
 #, csharp-format
 msgid ""
 "`{0}' must have a body because it is not marked abstract or extern. The "
@@ -1453,7 +1233,7 @@ msgstr ""
 "A propriedade pode ser automaticamente implementada quando você define ambos "
 "os acessores"
 
-#: mcs/mcs/decl.cs:401
+#: mcs/mcs/decl.cs:356
 #, csharp-format
 msgid ""
 "`{0}' must have a body because it is not marked abstract, extern, or partial"
@@ -1461,50 +1241,26 @@ msgstr ""
 "\"{0}\" deve ter um corpo porquê não está marcada como abstrato, externo ou "
 "parcial"
 
-#: mcs/mcs/decl.cs:416
+#: mcs/mcs/decl.cs:371
 #, csharp-format
 msgid "`{0}': Structs cannot contain protected members"
 msgstr "\"{0}\": Structs não podem conter membros protegidos"
 
-#: mcs/mcs/decl.cs:422
+#: mcs/mcs/decl.cs:377
 #, csharp-format
 msgid "`{0}': Static classes cannot contain protected members"
 msgstr "\"{0}\": Classes estáticas não podem conter membros protegidos"
 
-#: mcs/mcs/decl.cs:1303
-#, csharp-format
-msgid "The namespace `{0}' already contains a definition for `{1}'"
-msgstr "O namespace \"{0}\" já contém uma definição para \"{1}\""
-
-#: mcs/mcs/decl.cs:1307
-#, csharp-format
-msgid "Duplicate type parameter `{0}'"
-msgstr "Tipo de parâmetro duplicado \"{0}\""
-
-#: mcs/mcs/decl.cs:1310
-#, csharp-format
-msgid "The type `{0}' already contains a definition for `{1}'"
-msgstr "O tipo \"{0}\" já contém uma definição para \"{1}\""
-
-#: mcs/mcs/decl.cs:1358
-#, csharp-format
-msgid ""
-"Missing partial modifier on declaration of type `{0}'. Another partial "
-"declaration of this type exists"
-msgstr ""
-"Está faltando o modificador parcial na declaração do tipo \"{0}\". Outra "
-"declaração parcial deste tipo existe"
-
-#: mcs/mcs/decl.cs:1447
-msgid "Variant type parameters can only be used with interfaces and delegates"
-msgstr ""
+#: mcs/mcs/decl.cs:474
+msgid "Constraints are not allowed on non-generic declarations"
+msgstr "Restrições não são permitidas em declarações não genéricas"
 
-#: mcs/mcs/decl.cs:1459
+#: mcs/mcs/decl.cs:481
 #, csharp-format
 msgid "`{0}': A constraint references nonexistent type parameter `{1}'"
 msgstr "\"{0}\": Uma referência restritiva não existente no parâmetro \"{1}\""
 
-#: mcs/mcs/delegate.cs:141
+#: mcs/mcs/delegate.cs:155
 #, csharp-format
 msgid ""
 "Inconsistent accessibility: parameter type `{0}' is less accessible than "
@@ -1513,7 +1269,7 @@ msgstr ""
 "Acessibilidade inconsiste: tipo de parâmetro \"{0}\" é menos acessível que o "
 "delegate \"{1}\""
 
-#: mcs/mcs/delegate.cs:487
+#: mcs/mcs/delegate.cs:517
 #, csharp-format
 msgid ""
 "Cannot create delegate from method `{0}' because it is a member of System."
@@ -1522,7 +1278,7 @@ msgstr ""
 "Não foi possível criar delegate do método \"{0}\" porque este é um membro do "
 "tipo do System.Nullable<T>"
 
-#: mcs/mcs/delegate.cs:499
+#: mcs/mcs/delegate.cs:530
 #, csharp-format
 msgid ""
 "Extension method `{0}' of value type `{1}' cannot be used to create delegates"
@@ -1530,13 +1286,13 @@ msgstr ""
 "Método de extensão \"{0}\" de tipo de valor \"{1}\" não pode ser utilizado "
 "para criar delegates"
 
-#: mcs/mcs/delegate.cs:514
+#: mcs/mcs/delegate.cs:548
 #, csharp-format
 msgid "Cannot create delegate from partial method declaration `{0}'"
 msgstr ""
 "Não foi possível criar delegate da declaração de método parcial \"{0}\""
 
-#: mcs/mcs/delegate.cs:517
+#: mcs/mcs/delegate.cs:551
 #, csharp-format
 msgid ""
 "Cannot create delegate with `{0}' because it has a Conditional attribute"
@@ -1544,7 +1300,7 @@ msgstr ""
 "Não foi possível criar delegate com \"{0}\" porque este contém um atributo "
 "Conditional"
 
-#: mcs/mcs/delegate.cs:560
+#: mcs/mcs/delegate.cs:599
 #, csharp-format
 msgid ""
 "A method or delegate `{0} {1}' parameters and return type must be same as "
@@ -1554,7 +1310,7 @@ msgstr ""
 "devem ser os mesmos dos parâmetros do delegate \"{2} {3}\" e dos tipos de "
 "retorno"
 
-#: mcs/mcs/delegate.cs:567
+#: mcs/mcs/delegate.cs:606
 #, csharp-format
 msgid ""
 "A method or delegate `{0}' parameters do not match delegate `{1}' parameters"
@@ -1562,7 +1318,7 @@ msgstr ""
 "Os parâmetros do método ou do delegate \"{0}\" não coincidem com os "
 "parâmetros do delegate \"{1}\""
 
-#: mcs/mcs/delegate.cs:572
+#: mcs/mcs/delegate.cs:611
 #, csharp-format
 msgid ""
 "A method or delegate `{0} {1}' return type does not match delegate `{2} {3}' "
@@ -1571,290 +1327,78 @@ msgstr ""
 "Os tipos de retorno do método o do delegate \"{0} {1}\" não coincidem com o "
 "tipo de retorno do delegate \"{2} {3}\""
 
-#: mcs/mcs/delegate.cs:655
+#: mcs/mcs/delegate.cs:787
 msgid "Method name expected"
 msgstr "Nome do método esperado"
 
-#: mcs/mcs/doc.cs:914
+#: mcs/mcs/doc.cs:627
 #, csharp-format
 msgid "Error generating XML documentation file `{0}' (`{1}')"
 msgstr "Erro ao gerar arquivo de documentação XML \"{0}\" (\"{1}\")"
 
-#: mcs/mcs/driver.cs:64 mcs/mcs/driver.cs:442 mcs/mcs/driver.cs:445
+#: mcs/mcs/driver.cs:52
 msgid "Source file `"
 msgstr "Arquivo fonte \""
 
-#: mcs/mcs/driver.cs:91
-#, csharp-format
-msgid "Source file `{0}' could not be found"
-msgstr "Arquivo fonte \"{0}\" não pôde ser encontrado"
-
-#: mcs/mcs/driver.cs:97
-#, csharp-format
-msgid "Source file `{0}' is a binary file and not a text file"
-msgstr "Arquivo fonte \"{0}\" é um arquivo binário e não um arquivo texto"
-
-#: mcs/mcs/driver.cs:183
-msgid ""
-"Invalid target type for -target. Valid options are `exe', `winexe', "
-"`library' or `module'"
-msgstr ""
-"Tipo alvo inválido para -target. Opções válidas são \"exe\", \"winexe\", "
-"\"library\" ou \"module\""
-
-#: mcs/mcs/driver.cs:330
-msgid "Response file `"
-msgstr "Arquivo de resposta \""
-
-#: mcs/mcs/driver.cs:339
-msgid "Unable to open response file: "
-msgstr "Não foi possível abrir arquivo de resposta: "
-
-#: mcs/mcs/driver.cs:397 mcs/mcs/driver.cs:407
+#: mcs/mcs/driver.cs:258
 msgid "No files to compile were specified"
 msgstr "Nenhum arquivo para compilar foi especificado"
 
-#: mcs/mcs/driver.cs:479
-msgid "Warning level must be in the range 0-4"
-msgstr "Nível de avisis deve estar no intervalo 0-4"
-
-#: mcs/mcs/driver.cs:513
-msgid "Compatibility: Use -main:CLASS instead of --main CLASS or -m CLASS"
-msgstr ""
-"Compatibilidade: Utilize -main:CLASSE ao invés de --main CLASSE ou -m CLASSE"
-
-#: mcs/mcs/driver.cs:522
-msgid "Compatibility: Use -unsafe instead of --unsafe"
-msgstr "Compatibilidade: Utilize -unsafe ao invés de --unsafe"
-
-#: mcs/mcs/driver.cs:533
-msgid "Compatibility: Use -d:SYMBOL instead of --define SYMBOL"
-msgstr "Compatibilidade: Utilize -d:SÍMBOLO ao invés de --define SÍMBOLO"
-
-#: mcs/mcs/driver.cs:547
-msgid "Compatibility: Use -out:FILE instead of --output FILE or -o FILE"
-msgstr ""
-"Compatibilidade: Utilize -out ARQUIVO ao invés de --output ARQUIVO ou -o "
-"ARQUIVO"
-
-#: mcs/mcs/driver.cs:556
-msgid "Compatibility: Use -checked instead of --checked"
-msgstr "Compatibilidade: Utilize -checked ao invés de --checked"
-
-#: mcs/mcs/driver.cs:566
-msgid "Compatibility: Use -linkres:VALUE instead of --linkres VALUE"
-msgstr "Compatibilidade: Utilize -linkres:VALOR ao invés de --linkres VALOR"
-
-#: mcs/mcs/driver.cs:569
-msgid "Missing argument to --linkres"
-msgstr "Argumento faltando para --linkres"
-
-#: mcs/mcs/driver.cs:578
-msgid "Compatibility: Use -res:VALUE instead of --res VALUE"
-msgstr "Compatibilidade: Utilize -res:VALOR ao invés de --res VALOR"
-
-#: mcs/mcs/driver.cs:581
-msgid "Missing argument to --resource"
-msgstr "Argumento faltando para --resource"
-
-#: mcs/mcs/driver.cs:589
-msgid "Compatibility: Use -target:KIND instead of --target KIND"
-msgstr "Compatibilidade: Utilize -target:KIND ao invés de --target KIND"
-
-#: mcs/mcs/driver.cs:621
-msgid "Compatibility: Use -r:LIBRARY instead of -r library"
-msgstr "Compatibilidade: Utilize -r:BIBLIOTECA ao invés de -r biblioteca"
-
-#: mcs/mcs/driver.cs:640
-msgid "Compatibility: Use -lib:ARG instead of --L arg"
-msgstr "Compatibilidade: Utilize -lib:ARG ao invés de --L arg"
-
-#: mcs/mcs/driver.cs:653
-msgid "Compatibility: Use -nostdlib instead of --nostdlib"
-msgstr "Compatibilidade: Utilize -nostdlib ao invés de --nostdlib"
-
-#: mcs/mcs/driver.cs:658
-msgid "Compatibility: Use -nowarn instead of --nowarn"
-msgstr "Compatibilidade: Utilize -nowarn ao invés de --nowarn"
-
-#: mcs/mcs/driver.cs:675
-msgid "Compatibility: Use -warn:LEVEL instead of --wlevel LEVEL"
-msgstr "Compatibilidade: Utilize -warn:NÍVEL ao invés de --wlevel NÍVEL"
-
-#: mcs/mcs/driver.cs:679
-msgid "--wlevel requires a value from 0 to 4"
-msgstr "--wlevel requer um valor de 0 a 4"
-
-#: mcs/mcs/driver.cs:688
-msgid "--mcs-debug requires an argument"
-msgstr "--mcs-debug requer um argumento"
-
-#: mcs/mcs/driver.cs:695
-msgid "Invalid argument to --mcs-debug"
-msgstr "Argumento inválido para --mcs-debug"
-
-#: mcs/mcs/driver.cs:705
-msgid "Compatibility: Use -recurse:PATTERN option instead --recurse PATTERN"
-msgstr ""
-"Compatibilidade: Utilize a opção -recurse:PADRÂO ao invés de --recurse PADRÃO"
-
-#: mcs/mcs/driver.cs:707
-msgid "--recurse requires an argument"
-msgstr "--recurse requer um argumento"
-
-#: mcs/mcs/driver.cs:718
-msgid "Compatibility: Use -debug option instead of -g or --debug"
-msgstr "Compatibilidade: Utilize a opção -debug ao invés de -g ou --debug"
-
-#: mcs/mcs/driver.cs:723
-msgid "Compatibility: Use -noconfig option instead of --noconfig"
-msgstr "Compatibilidade: Utilize a opção -noconfig ao invés de --noconfig"
-
-#: mcs/mcs/driver.cs:885
-#, csharp-format
-msgid "Invalid conditional define symbol `{0}'"
-msgstr "Símbolo de definição condicional \"{0}\" inválido"
-
-#: mcs/mcs/driver.cs:936
-#, csharp-format
-msgid ""
-"Invalid resource visibility option `{0}'. Use either `public' or `private' "
-"instead"
-msgstr ""
-"Opção de visibilidade de recurso \"{0}\" inválida. Utilize, ao invés disto, "
-"\"public\" ou \"private\""
-
-#: mcs/mcs/driver.cs:942
-#, csharp-format
-msgid "Wrong number of arguments for option `{0}'"
-msgstr "Número de argumentos incorreto para a opção \"{0}\""
-
-#: mcs/mcs/driver.cs:980
-msgid "Cannot specify multiple aliases using single /reference option"
-msgstr ""
-
-#: mcs/mcs/driver.cs:1008 mcs/mcs/driver.cs:1020
-msgid ""
-"Cannot specify the `win32res' and the `win32ico' compiler option at the same "
-"time"
-msgstr ""
-"Não se pode especificar as opções de compilador \"win32res\" e o \"win32ico"
-"\" ao mesmo tempo"
-
-#: mcs/mcs/driver.cs:1135
-#, csharp-format
-msgid "`{0}' is not a valid warning number"
-msgstr ""
-
-#: mcs/mcs/driver.cs:1165
-#, fuzzy
-msgid ""
-"Invalid platform type for -platform. Valid options are `anycpu', `x86', "
-"`x64' or `itanium'"
+#: mcs/mcs/driver.cs:263
+msgid "Platform option `anycpu32bitpreferred' is valid only for executables"
 msgstr ""
-"Tipo alvo inválido para -target. Opções válidas são \"exe\", \"winexe\", "
-"\"library\" ou \"module\""
 
-#: mcs/mcs/driver.cs:1273
-#, fuzzy, csharp-format
-msgid ""
-"Invalid -langversion option `{0}'. It must be `ISO-1', `ISO-2', `3' or "
-"`Default'"
-msgstr ""
-"Opção \"{0}\" inválida para /langversion. Este deve ser \"ISO-1\" ou "
-"\"ISO-2\" ou \"Default\""
-
-#: mcs/mcs/driver.cs:1293
-#, csharp-format
-msgid "Code page `{0}' is invalid or not installed"
-msgstr "Código de página \"{0}\" é inválido ou não está instalado"
-
-#: mcs/mcs/driver.cs:1308
-#, csharp-format
-msgid "Unrecognized command-line option: `{0}'"
-msgstr "Opção de linha de comando não reconhecida: \"{0}\""
-
-#: mcs/mcs/driver.cs:1313
-#, csharp-format
-msgid "Missing file specification for `{0}' option"
-msgstr ""
-
-#: mcs/mcs/driver.cs:1318
-#, fuzzy, csharp-format
-msgid "Missing argument for `{0}' option"
-msgstr "Argumento faltando para --linkres"
-
-#: mcs/mcs/driver.cs:1353
-#, fuzzy, csharp-format
-msgid "Invalid reference alias `{0}='. Missing filename"
-msgstr "Apelido de referência inválido"
-
-#: mcs/mcs/driver.cs:1358
-#, fuzzy, csharp-format
-msgid ""
-"Invalid extern alias for -reference. Alias `{0}' is not a valid identifier"
-msgstr "Apelido externo inválido para /reference. Apelido \"'"
-
-#: mcs/mcs/driver.cs:1374
-#, csharp-format
-msgid "The resource identifier `{0}' has already been used in this assembly"
-msgstr "O identificador do recurso \"{0}\" já foi utilizado neste assembly"
-
-#: mcs/mcs/driver.cs:1435
+#: mcs/mcs/driver.cs:293
 msgid ""
 "If no source files are specified you must specify the output file with -out:"
 msgstr ""
 "Se nenhum código fonte for especificado você deve especificar o arquivo de "
 "saída com -out:"
 
-#: mcs/mcs/dynamic.cs:272
+#: mcs/mcs/driver.cs:310
+msgid "Output file name is not valid"
+msgstr ""
+
+#: mcs/mcs/dynamic.cs:278
 #, fuzzy
 msgid "An expression tree cannot contain a dynamic operation"
 msgstr ""
 "Uma árvore de expressão não pode conter uma operação de ponteiro insegura"
 
-#: mcs/mcs/dynamic.cs:302
+#: mcs/mcs/dynamic.cs:311
 msgid ""
 "Dynamic operation cannot be compiled without `Microsoft.CSharp.dll' assembly "
 "reference"
 msgstr ""
 
-#: mcs/mcs/ecore.cs:248
+#: mcs/mcs/ecore.cs:243
 #, csharp-format
 msgid "`{0}' is inaccessible due to its protection level"
 msgstr "\"{0}\" está inacessível devido ao nível de proteção"
 
-#: mcs/mcs/ecore.cs:253
+#: mcs/mcs/ecore.cs:248
 #, csharp-format
 msgid "The expression being assigned to `{0}' must be constant"
 msgstr "A expressão sendo atribuída a \"{0}\" deve ser constante"
 
-#: mcs/mcs/ecore.cs:258
+#: mcs/mcs/ecore.cs:253
 #, csharp-format
 msgid ""
 "A constant `{0}' of reference type `{1}' can only be initialized with null"
 msgstr ""
-"A constante \"{0}\" do tipo de referência \"{1}\" só pode ser inicializada "
-"com null"
-
-#: mcs/mcs/ecore.cs:264
-msgid ""
-"Only assignment, call, increment, decrement, and new object expressions can "
-"be used as a statement"
-msgstr ""
-"Apenas expressões de atribuição, chamada, incremento, decretomento e novos "
-"elementos podem ser usadas como uma declaração"
+"A constante \"{0}\" do tipo de referência \"{1}\" só pode ser inicializada "
+"com null"
 
-#: mcs/mcs/ecore.cs:275
+#: mcs/mcs/ecore.cs:274
 msgid "Keyword `void' cannot be used in this context"
 msgstr "Palavra chave \"void\" não pode ser utilizada neste contexto"
 
-#: mcs/mcs/ecore.cs:297
+#: mcs/mcs/ecore.cs:299
 #, csharp-format
 msgid "Cannot convert type `{0}' to `{1}'"
 msgstr "Não foi possível converter o tipo \"{0}\" para \"{1}\""
 
-#: mcs/mcs/ecore.cs:308
+#: mcs/mcs/ecore.cs:310
 #, csharp-format
 msgid ""
 "Cannot implicitly convert type `{0}' to `{1}'. An explicit conversion exists "
@@ -1863,17 +1407,26 @@ msgstr ""
 "Não foi possível converter implicitamente o tipo \"{0}\" para \"{1}\". Uma "
 "conversão explícita já existe (você não está esquecendo de um cast?)"
 
-#: mcs/mcs/ecore.cs:311
+#: mcs/mcs/ecore.cs:313
 #, csharp-format
 msgid "Cannot implicitly convert type `{0}' to `{1}'"
 msgstr "Não foi possível converter implicitamente o tipo \"{0}\" para \"{1}\""
 
-#: mcs/mcs/ecore.cs:353
+#: mcs/mcs/ecore.cs:344
+#, fuzzy, csharp-format
+msgid "The {0} `{1}' cannot be used with type arguments"
+msgstr "A variável \"{0}\" não pode ser utilizada com argumentos de tipo"
+
+#: mcs/mcs/ecore.cs:356
 #, csharp-format
 msgid "`{0}' does not contain a definition for `{1}'"
 msgstr "\"{0}\" não contém uma definição para \"{1}\""
 
-#: mcs/mcs/ecore.cs:359
+#: mcs/mcs/ecore.cs:365
+msgid "A ref or out argument must be an assignable variable"
+msgstr "Um argumento ref ou out deve ser uma variável atribuível"
+
+#: mcs/mcs/ecore.cs:367
 msgid ""
 "The left-hand side of an assignment must be a variable, a property or an "
 "indexer"
@@ -1881,20 +1434,20 @@ msgstr ""
 "O lado esquerdo de uma atribuição deve ser uma variável, uma propriedade ou "
 "um indexador"
 
-#: mcs/mcs/ecore.cs:364
+#: mcs/mcs/ecore.cs:373
 msgid "The operation in question is undefined on void pointers"
 msgstr ""
 
-#: mcs/mcs/ecore.cs:426 mcs/mcs/statement.cs:2559 mcs/mcs/statement.cs:2561
+#: mcs/mcs/ecore.cs:473 mcs/mcs/statement.cs:3810 mcs/mcs/statement.cs:3812
 #, csharp-format
 msgid "Internal compiler error: {0}"
 msgstr ""
 
-#: mcs/mcs/ecore.cs:466
-msgid "A ref or out argument must be an assignable variable"
-msgstr "Um argumento ref ou out deve ser uma variável atribuível"
+#: mcs/mcs/ecore.cs:535 mcs/mcs/expression.cs:7041 mcs/mcs/expression.cs:7049
+msgid "A constant value is expected"
+msgstr "Um valor constante é esperado"
 
-#: mcs/mcs/ecore.cs:485
+#: mcs/mcs/ecore.cs:546
 msgid ""
 "An attribute argument must be a constant expression, typeof expression or "
 "array creation expression"
@@ -1902,51 +1455,38 @@ msgstr ""
 "Um argumento de atributo deve ser uma expressão constante, typeof ou "
 "expressão de criação de array"
 
-#: mcs/mcs/ecore.cs:556
+#: mcs/mcs/ecore.cs:726
 #, csharp-format
 msgid "The class `{0}' has no constructors defined"
 msgstr ""
 
-#: mcs/mcs/ecore.cs:641
+#: mcs/mcs/ecore.cs:924
 #, csharp-format
-msgid "Ambiguity between `{0}' and `{1}'"
-msgstr "Ambiguidade entre \"{0}\" e \"{1}\""
+msgid "The `{0}' operator cannot be applied to operand of type `{1}'"
+msgstr "O operador \"{0}\" não pode ser aplicado ao operando de tipo \"{1}\""
 
-#: mcs/mcs/ecore.cs:668
+#: mcs/mcs/ecore.cs:930
 msgid "An expression tree cannot contain an unsafe pointer operation"
 msgstr ""
 "Uma árvore de expressão não pode conter uma operação de ponteiro insegura"
 
-#: mcs/mcs/ecore.cs:789
+#: mcs/mcs/ecore.cs:1012
+#, csharp-format
+msgid "`{0}' is a `{1}' but a `{2}' was expected"
+msgstr "\"{0}\" é um \"{1}\" mas um \"{2}\" era esperado"
+
+#: mcs/mcs/ecore.cs:1045
 #, csharp-format
 msgid "Expression denotes a `{0}', where a `{1}' was expected"
 msgstr "A expressão denota um \"{0}\", onde um \"{1}\" era esperado"
 
-#: mcs/mcs/ecore.cs:799
+#: mcs/mcs/ecore.cs:1055
 msgid "Pointers and fixed size buffers may only be used in an unsafe context"
 msgstr ""
 "Ponteiros e buffers de tamanho fixo devem apenas ser utilizados num contexto "
 "inseguro"
 
-#: mcs/mcs/ecore.cs:834
-#, csharp-format
-msgid ""
-"Members of value type `{0}' cannot be assigned using a property `{1}' object "
-"initializer"
-msgstr ""
-"Membros do tipo de valor \"{0}\" não podem ser atribuidos usando uma "
-"propriedade \"{1}\" inicializadora de objeto"
-
-#: mcs/mcs/ecore.cs:837
-#, csharp-format
-msgid ""
-"Cannot modify a value type return value of `{0}'. Consider storing the value "
-"in a temporary variable"
-msgstr ""
-"Não foi possível modificar o valor do retorno do tipo de valor de \"{0}\". "
-"Considere guardar o valor em uma variável temporária"
-
-#: mcs/mcs/ecore.cs:2271
+#: mcs/mcs/ecore.cs:2616
 #, fuzzy, csharp-format
 msgid ""
 "Dynamic keyword requires `{0}' to be defined. Are you missing System.Core."
@@ -1955,7 +1495,7 @@ msgstr ""
 "O tipo ou nome de namespace \"{0}\" não pôde ser encontrado. Você está "
 "esquecendo de uma diretiva em uso ou uma referência do assembly?"
 
-#: mcs/mcs/ecore.cs:2345
+#: mcs/mcs/ecore.cs:2692
 #, fuzzy, csharp-format
 msgid ""
 "A local variable `{0}' cannot be used before it is declared. Consider "
@@ -1964,23 +1504,59 @@ msgstr ""
 "A variável local \"{0}\" não pode ser utilizada antes de ser declarada. "
 "Considere renomear a variável local quando esta esconder o campo \"{1}\""
 
-#: mcs/mcs/ecore.cs:2360 mcs/mcs/ecore.cs:2404
+#: mcs/mcs/ecore.cs:2707 mcs/mcs/ecore.cs:2750
 #, csharp-format
 msgid "`{0}' conflicts with a declaration in a child block"
 msgstr "\"{0}\" conflita com uma declaração em um bloco filho"
 
-#: mcs/mcs/ecore.cs:2413
+#: mcs/mcs/ecore.cs:2759
 #, csharp-format
 msgid "A local variable `{0}' cannot be used before it is declared"
 msgstr ""
 "Uma variável local \"{0}\" não pode ser utilizada antes de ser declarada"
 
-#: mcs/mcs/ecore.cs:2415
+#: mcs/mcs/ecore.cs:2788
+#, fuzzy, csharp-format
+msgid ""
+"Primary constructor parameter `{0}' is not available in this context when "
+"using ref or out modifier"
+msgstr ""
+"Parâmetro \"{0}\" não pôde ser utilizado dentro de \"{1}\" quando estiver "
+"usando modificadores \"ref\" ou \"out\""
+
+#: mcs/mcs/ecore.cs:2827
 #, csharp-format
 msgid "The name `{0}' does not exist in the current context"
 msgstr "O nome \"{0}\" não existe no contexto atual"
 
-#: mcs/mcs/ecore.cs:2665
+#: mcs/mcs/ecore.cs:2923
+msgid "System.Void cannot be used from C#. Consider using `void'"
+msgstr ""
+
+#: mcs/mcs/ecore.cs:3086
+#, fuzzy, csharp-format
+msgid ""
+"The type or namespace name `{0}' could not be found in the global namespace. "
+"Are you missing {1} assembly reference?"
+msgstr ""
+"O tipo ou nome de namespace \"{0}\" não pôde ser encontrado no namespace "
+"global (você não está esquecendo de uma referência do assembly?)"
+
+#: mcs/mcs/ecore.cs:3090
+#, fuzzy, csharp-format
+msgid ""
+"The type or namespace name `{0}' does not exist in the namespace `{1}'. Are "
+"you missing {2} assembly reference?"
+msgstr ""
+"O tipo ou nome do namespace \"{0}\" não existe no namespace \"{1}\". Você "
+"não está esquecendo de uma referência do assembly?"
+
+#: mcs/mcs/ecore.cs:3330
+#, csharp-format
+msgid "Cannot call an abstract base member `{0}'"
+msgstr "Não foi possível chamar um membro abstrato da base \"{0}\""
+
+#: mcs/mcs/ecore.cs:3337
 #, csharp-format
 msgid ""
 "Cannot access protected member `{0}' via a qualifier of type `{1}'. The "
@@ -1990,12 +1566,48 @@ msgstr ""
 "qualificador do tipo \"{1}\". O qualificador deve ser do tipo \"{2}\" ou "
 "derivado deste"
 
-#: mcs/mcs/ecore.cs:2714
+#: mcs/mcs/ecore.cs:3362
+#, fuzzy, csharp-format
+msgid ""
+"Fields of static readonly field `{0}' cannot be assigned to (except in a "
+"static constructor or a variable initializer)"
+msgstr ""
+" Campo estático ou propriedade \"{0}\" não podem ser atribuídas a um "
+"inicializador de objeto"
+
+#: mcs/mcs/ecore.cs:3365
+#, fuzzy, csharp-format
+msgid ""
+"Members of readonly field `{0}' cannot be modified (except in a constructor "
+"or a variable initializer)"
+msgstr ""
+"Membros do tipo de valor \"{0}\" não podem ser atribuidos usando uma "
+"propriedade \"{1}\" inicializadora de objeto"
+
+#: mcs/mcs/ecore.cs:3374
 #, csharp-format
-msgid "Cannot call an abstract base member `{0}'"
-msgstr "Não foi possível chamar um membro abstrato da base \"{0}\""
+msgid ""
+"Members of value type `{0}' cannot be assigned using a property `{1}' object "
+"initializer"
+msgstr ""
+"Membros do tipo de valor \"{0}\" não podem ser atribuidos usando uma "
+"propriedade \"{1}\" inicializadora de objeto"
+
+#: mcs/mcs/ecore.cs:3378
+#, csharp-format
+msgid ""
+"Cannot modify a value type return value of `{0}'. Consider storing the value "
+"in a temporary variable"
+msgstr ""
+"Não foi possível modificar o valor do retorno do tipo de valor de \"{0}\". "
+"Considere guardar o valor em uma variável temporária"
 
-#: mcs/mcs/ecore.cs:2758
+#: mcs/mcs/ecore.cs:3391
+#, fuzzy, csharp-format
+msgid "Cannot assign to members of `{0}' because it is a `{1}'"
+msgstr "Não foi possível atribuir a \"{0}\" por que este é um \"{1}\""
+
+#: mcs/mcs/ecore.cs:3417
 #, csharp-format
 msgid ""
 "Static member `{0}' cannot be accessed with an instance reference, qualify "
@@ -2004,7 +1616,7 @@ msgstr ""
 "O membro estático \"{0}\" não pode ser acessado com uma referência de "
 "instância, ao invés disso, qualifique com um nome de tipo"
 
-#: mcs/mcs/ecore.cs:2773
+#: mcs/mcs/ecore.cs:3432
 #, csharp-format
 msgid ""
 "A field initializer cannot reference the nonstatic field, method, or "
@@ -2013,14 +1625,26 @@ msgstr ""
 "Um inicializador de campo não pode referenciar um campo não estático, método "
 "ou propriedade \"{0}\""
 
-#: mcs/mcs/ecore.cs:2777
+#: mcs/mcs/ecore.cs:3438
+msgid "Constructor initializer cannot access primary constructor parameters"
+msgstr ""
+
+#: mcs/mcs/ecore.cs:3440
+#, fuzzy, csharp-format
+msgid ""
+"An object reference is required to access primary constructor parameter `{0}'"
+msgstr ""
+"Uma referência de objeto é necessária para acessar o membro não estático "
+"\"{0}\""
+
+#: mcs/mcs/ecore.cs:3445
 #, csharp-format
 msgid "An object reference is required to access non-static member `{0}'"
 msgstr ""
 "Uma referência de objeto é necessária para acessar o membro não estático "
 "\"{0}\""
 
-#: mcs/mcs/ecore.cs:2785
+#: mcs/mcs/ecore.cs:3456
 #, csharp-format
 msgid ""
 "Cannot access a nonstatic member of outer type `{0}' via nested type `{1}'"
@@ -2028,11 +1652,11 @@ msgstr ""
 "Não foi possível acessar um membro não estático de um tipo externo \"{0}\" "
 "de um tipo aninhado \"{1}\""
 
-#: mcs/mcs/ecore.cs:2833
+#: mcs/mcs/ecore.cs:3484
 msgid "Cannot modify the result of an unboxing conversion"
 msgstr "Não foi possível modificar o resultado de uma conversão unboxing"
 
-#: mcs/mcs/ecore.cs:2954
+#: mcs/mcs/ecore.cs:3662
 #, csharp-format
 msgid ""
 "Type `{0}' does not contain a member `{1}' and the best extension method "
@@ -2041,19 +1665,19 @@ msgstr ""
 "Tipo \"{0}\" não contém um membro \"{1}\" e o melhor método de extensão "
 "sobrecarregado \"{2}\" tem alguns argumentos inválidos"
 
-#: mcs/mcs/ecore.cs:2959
+#: mcs/mcs/ecore.cs:3667
 #, csharp-format
 msgid "Extension method instance type `{0}' cannot be converted to `{1}'"
 msgstr ""
 "Tipo de instância do método de extensão \"{0}\" não pode ser convertido para "
 "\"{1}\""
 
-#: mcs/mcs/ecore.cs:3083
+#: mcs/mcs/ecore.cs:3815
 msgid "An expression tree cannot contain an expression with method group"
 msgstr ""
 "Uma árvore de expressão não pode conter uma expressão com um grupo de método"
 
-#: mcs/mcs/ecore.cs:3089
+#: mcs/mcs/ecore.cs:3821
 msgid ""
 "Partial methods with only a defining declaration or removed conditional "
 "methods cannot be used in an expression tree"
@@ -2061,7 +1685,7 @@ msgstr ""
 "Métodos parciais com somente uma declaração de definição ou métodos com "
 "condicionais removidos não podem ser utilizados em uma árvore de expressão"
 
-#: mcs/mcs/ecore.cs:3119
+#: mcs/mcs/ecore.cs:3853
 #, csharp-format
 msgid ""
 "Cannot convert method group `{0}' to non-delegate type `{1}'. Consider using "
@@ -2070,14 +1694,14 @@ msgstr ""
 "Não foi possível converter o grupo de método \"{0}\" para o tipo não-"
 "delegate \"{1}\". Consider a utilização de parênteses quando chamar o método"
 
-#: mcs/mcs/ecore.cs:3715
+#: mcs/mcs/ecore.cs:4577
 #, csharp-format
 msgid ""
 "The type `{0}' does not contain a constructor that takes `{1}' arguments"
 msgstr ""
 "O tipo \"{0}\" não contém um construtor que aceite os argumentos \"{1}\""
 
-#: mcs/mcs/ecore.cs:4328
+#: mcs/mcs/ecore.cs:5264
 #, fuzzy, csharp-format
 msgid ""
 "Type `{0}' does not contain a member `{1}' and the best extension method "
@@ -2087,7 +1711,7 @@ msgstr ""
 "Tipo \"{0}\" não contém um membro \"{1}\" e o melhor método de extensão "
 "sobrecarregado \"{2}\" tem alguns argumentos inválidos"
 
-#: mcs/mcs/ecore.cs:4349
+#: mcs/mcs/ecore.cs:5303
 #, csharp-format
 msgid ""
 "The call is ambiguous between the following methods or properties: `{0}' and "
@@ -2096,16 +1720,16 @@ msgstr ""
 "Essa chamada é ambígua entre os seguintes métodos ou propriedades: \"{0}\" e "
 "\"{1}\""
 
-#: mcs/mcs/ecore.cs:4409
-#, csharp-format
+#: mcs/mcs/ecore.cs:5366
+#, fuzzy, csharp-format
 msgid ""
-"The best overloaded collection initalizer method `{0}' cannot have 'ref', or "
+"The best overloaded collection initalizer method `{0}' cannot have `ref' or "
 "`out' modifier"
 msgstr ""
 "O melhor método sobrecarregado de coleção \"{0}\" não pode ter o modificador "
 "\"ref\" ou \"out\""
 
-#: mcs/mcs/ecore.cs:4413
+#: mcs/mcs/ecore.cs:5370
 #, csharp-format
 msgid ""
 "The best overloaded collection initalizer method `{0}' has some invalid "
@@ -2114,18 +1738,18 @@ msgstr ""
 "O melhor método sobrecarregado inicializador de coleção \"{0}\" tem alguns "
 "argumentos inválidos"
 
-#: mcs/mcs/ecore.cs:4416
+#: mcs/mcs/ecore.cs:5373
 #, csharp-format
 msgid "Delegate `{0}' has some invalid arguments"
 msgstr "Delegate \"{0}\" tem alguns argumentos inválidos"
 
-#: mcs/mcs/ecore.cs:4420
+#: mcs/mcs/ecore.cs:5377
 #, csharp-format
 msgid "The best overloaded method match for `{0}' has some invalid arguments"
 msgstr ""
 "O melhor método sobrecarregado para \"{0}\" tem alguns argumentos inválidos"
 
-#: mcs/mcs/ecore.cs:4430
+#: mcs/mcs/ecore.cs:5386
 #, csharp-format
 msgid ""
 "Argument `#{0}' does not require `{1}' modifier. Consider removing `{1}' "
@@ -2134,18 +1758,18 @@ msgstr ""
 "Argumento \"#{0}\" não requer o modificador \"{1}\". Considere remover o "
 "modificador \"{1}\""
 
-#: mcs/mcs/ecore.cs:4433
+#: mcs/mcs/ecore.cs:5389
 #, csharp-format
 msgid "Argument `#{0}' is missing `{1}' modifier"
 msgstr "Argumento \"#{0}\" não encontrou o modificador \"{1}\""
 
-#: mcs/mcs/ecore.cs:4446
+#: mcs/mcs/ecore.cs:5406
 #, csharp-format
 msgid "Argument `#{0}' cannot convert `{1}' expression to type `{2}'"
 msgstr ""
 "Argumento \"#{0}\" não pôde converter a expressão \"{1}\" para o tipo \"{2}\""
 
-#: mcs/mcs/ecore.cs:4494
+#: mcs/mcs/ecore.cs:5459
 #, csharp-format
 msgid ""
 "The type arguments for method `{0}' cannot be inferred from the usage. Try "
@@ -2154,17 +1778,17 @@ msgstr ""
 "O argumentos de tipo para o método \"{0}\" não pôde ser inferido do uso. "
 "Tente especificar os tipos dos argumentos explicitamente"
 
-#: mcs/mcs/ecore.cs:4523
+#: mcs/mcs/ecore.cs:5488
 #, csharp-format
 msgid "No overload for method `{0}' takes `{1}' arguments"
 msgstr "Sem sobrecarga para o método \"{0}\" aceitar os argumentos \"{1}\""
 
-#: mcs/mcs/ecore.cs:4576
+#: mcs/mcs/ecore.cs:5544
 #, fuzzy, csharp-format
 msgid "The delegate `{0}' does not contain a parameter named `{1}'"
 msgstr "O tipo aninhado \"{0}\" não existe no tipo \"{1}\""
 
-#: mcs/mcs/ecore.cs:4581
+#: mcs/mcs/ecore.cs:5549
 #, fuzzy, csharp-format
 msgid ""
 "The best overloaded method match for `{0}' does not contain a parameter "
@@ -2172,14 +1796,14 @@ msgid ""
 msgstr ""
 "O melhor método sobrecarregado para \"{0}\" tem alguns argumentos inválidos"
 
-#: mcs/mcs/ecore.cs:4591
+#: mcs/mcs/ecore.cs:5559
 #, csharp-format
 msgid ""
 "Named argument `{0}' cannot be used for a parameter which has positional "
 "argument specified"
 msgstr ""
 
-#: mcs/mcs/ecore.cs:4904
+#: mcs/mcs/ecore.cs:5898
 msgid ""
 "You cannot use fixed size buffers contained in unfixed expressions. Try "
 "using the fixed statement"
@@ -2187,28 +1811,80 @@ msgstr ""
 "Você não pode usar buffers de tamanho fixo contidos em expressões não "
 "fixadas. Tente utilizar a declaração fixa"
 
-#: mcs/mcs/ecore.cs:4909
+#: mcs/mcs/ecore.cs:5903
 #, csharp-format
 msgid "`{0}': Fixed size buffers can only be accessed through locals or fields"
 msgstr ""
 "\"{0}\": Buffers de tamanho fixo podem apenas ser acessados atravéis de "
 "locais ou campos"
 
-#: mcs/mcs/ecore.cs:5304
+#: mcs/mcs/ecore.cs:5977
+#, csharp-format
+msgid ""
+"A static readonly field `{0}' cannot be passed ref or out (except in a "
+"static constructor)"
+msgstr ""
+
+#: mcs/mcs/ecore.cs:5980
+#, fuzzy, csharp-format
+msgid ""
+"A readonly field `{0}' cannot be passed ref or out (except in a constructor)"
+msgstr ""
+"Uma variável de intervalo \"{0}\" não deve ser passada como parâmetros \"ref"
+"\" ou \"out\""
+
+#: mcs/mcs/ecore.cs:5994
+#, csharp-format
+msgid ""
+"Fields of static readonly field `{0}' cannot be passed ref or out (except in "
+"a static constructor)"
+msgstr ""
+
+#: mcs/mcs/ecore.cs:5997
+#, csharp-format
+msgid ""
+"Members of readonly field `{0}' cannot be passed ref or out (except in a "
+"constructor)"
+msgstr ""
+
+#: mcs/mcs/ecore.cs:6004
+#, fuzzy, csharp-format
+msgid ""
+"A static readonly field `{0}' cannot be assigned to (except in a static "
+"constructor or a variable initializer)"
+msgstr ""
+" Campo estático ou propriedade \"{0}\" não podem ser atribuídas a um "
+"inicializador de objeto"
+
+#: mcs/mcs/ecore.cs:6007
+#, fuzzy, csharp-format
+msgid ""
+"A readonly field `{0}' cannot be assigned to (except in a constructor or a "
+"variable initializer)"
+msgstr ""
+" Campo estático ou propriedade \"{0}\" não podem ser atribuídas a um "
+"inicializador de objeto"
+
+#: mcs/mcs/ecore.cs:6071
+#, fuzzy, csharp-format
+msgid "Use of possibly unassigned field `{0}'"
+msgstr "Uso de campo possivelmente não atribuído \""
+
+#: mcs/mcs/ecore.cs:6429
 #, fuzzy, csharp-format
 msgid "Property or event `{0}' is not supported by the C# language"
 msgstr ""
 "A propriedade \"{0}\" não tem suporte na linguagem C#. Tente chamar o método "
 "acessor \"{1}\" diretamente"
 
-#: mcs/mcs/ecore.cs:5465
+#: mcs/mcs/ecore.cs:6625
 #, csharp-format
 msgid "A range variable `{0}' may not be passes as `ref' or `out' parameter"
 msgstr ""
 "Uma variável de intervalo \"{0}\" não deve ser passada como parâmetros \"ref"
 "\" ou \"out\""
 
-#: mcs/mcs/ecore.cs:5513
+#: mcs/mcs/ecore.cs:6700
 #, csharp-format
 msgid ""
 "The property or indexer `{0}' cannot be used in this context because it "
@@ -2217,7 +1893,7 @@ msgstr ""
 "A propriedade ou indexador \"{0}\" não pôde ser utilizada nesse contexto "
 "porque falta o acessor \"get\""
 
-#: mcs/mcs/ecore.cs:5520
+#: mcs/mcs/ecore.cs:6707
 #, csharp-format
 msgid ""
 "The property or indexer `{0}' cannot be used in this context because the get "
@@ -2226,14 +1902,14 @@ msgstr ""
 "A propriedade ou indexador \"{0}\" não pôde ser utilizada nesse contexto "
 "porque o acessor get está inacessível"
 
-#: mcs/mcs/ecore.cs:5539
+#: mcs/mcs/ecore.cs:6726
 #, fuzzy, csharp-format
 msgid "Property or indexer `{0}' cannot be assigned to (it is read-only)"
 msgstr ""
 "Propriedade ou indexador \"{0}\" não pôde ser atribuida (ela é somente "
 "leitura)"
 
-#: mcs/mcs/ecore.cs:5547
+#: mcs/mcs/ecore.cs:6734
 #, csharp-format
 msgid ""
 "The property or indexer `{0}' cannot be used in this context because the set "
@@ -2242,7 +1918,7 @@ msgstr ""
 "A propriedade ou indexador \"{0}\" não pôde ser utilizada neste contexto por "
 "que o acessor do conjunto está inacessível"
 
-#: mcs/mcs/ecore.cs:5708
+#: mcs/mcs/ecore.cs:6902
 #, csharp-format
 msgid ""
 "The event `{0}' can only appear on the left hand side of `+=' or `-=' "
@@ -2251,7 +1927,7 @@ msgstr ""
 "O evento \"{0}\" pode apenas aparecer no lado esquerdo do operador \"+=\" ou "
 "\"-=\""
 
-#: mcs/mcs/ecore.cs:5712
+#: mcs/mcs/ecore.cs:6906
 #, csharp-format
 msgid ""
 "The event `{0}' can only appear on the left hand side of += or -= when used "
@@ -2260,7 +1936,7 @@ msgstr ""
 "O evento \"{0}\" pode apenas aparecer no lado esquerdo do operador += ou -= "
 "quando utilizado fora do tipo \"{1}\""
 
-#: mcs/mcs/ecore.cs:5876
+#: mcs/mcs/ecore.cs:7078
 #, csharp-format
 msgid ""
 "An implicitly typed local variable declaration cannot be initialized with `"
@@ -2269,7 +1945,7 @@ msgstr ""
 "Uma declaração de variável local tipada implicitamente não pode ser "
 "inicializada com \"{0}\""
 
-#: mcs/mcs/ecore.cs:5890
+#: mcs/mcs/ecore.cs:7092
 msgid ""
 "The contextual keyword `var' may only appear within a local variable "
 "declaration"
@@ -2277,7 +1953,7 @@ msgstr ""
 "A palavra chave contextual \"var\" deve apenas aparecer dentro de uma "
 "declaração de variável local"
 
-#: mcs/mcs/enum.cs:125
+#: mcs/mcs/enum.cs:143
 #, fuzzy, csharp-format
 msgid ""
 "The enumerator value `{0}' is outside the range of enumerator underlying "
@@ -2285,49 +1961,44 @@ msgid ""
 msgstr ""
 "O valor enumerador \"{0}\" é muito grande para caber no seu tipo \"{1}\""
 
-#: mcs/mcs/enum.cs:189
+#: mcs/mcs/enum.cs:212
 #, csharp-format
 msgid "An item in an enumeration cannot have an identifier `{0}'"
 msgstr "Um ítem em uma enumeração não pode ter um identificador \"{0}\""
 
-#: mcs/mcs/enum.cs:200
+#: mcs/mcs/enum.cs:223
 msgid "Type byte, sbyte, short, ushort, int, uint, long or ulong expected"
 msgstr "Tipo byte, sbyte, short, ushort, int, uint, long ou ulong esperado"
 
-#: mcs/mcs/eval.cs:630
+#: mcs/mcs/eval.cs:587
 msgid "Detection Parsing Error"
 msgstr "Erro na Análise de Detecção"
 
-#: mcs/mcs/expression.cs:542
+#: mcs/mcs/expression.cs:582
 #, csharp-format
-msgid "The `{0}' operator cannot be applied to operand of type `{1}'"
-msgstr "O operador \"{0}\" não pode ser aplicado ao operando de tipo \"{1}\""
+msgid "Operator `{0}' is ambiguous on an operand of type `{1}'"
+msgstr "Operador \"{0}\" é ambíguo em um operando de tipo \"{1}\""
 
-#: mcs/mcs/expression.cs:622
+#: mcs/mcs/expression.cs:676
 #, fuzzy
 msgid "Cannot take the address of the given expression"
 msgstr ""
 "Não foi possível encontrar o endereço de \"this\" por que este é somente "
 "leitura"
 
-#: mcs/mcs/expression.cs:656
+#: mcs/mcs/expression.cs:699
 msgid ""
 "You can only take the address of unfixed expression inside of a fixed "
 "statement initializer"
 msgstr ""
 
-#: mcs/mcs/expression.cs:745
-#, csharp-format
-msgid "Operator `{0}' is ambiguous on an operand of type `{1}'"
-msgstr "Operador \"{0}\" é ambíguo em um operando de tipo \"{1}\""
-
-#: mcs/mcs/expression.cs:868
+#: mcs/mcs/expression.cs:943
 #, fuzzy
 msgid "The * or -> operator must be applied to a pointer"
 msgstr ""
 "O operador \"{0}\" não pode ser aplicado em um operando de tipo ponteiro"
 
-#: mcs/mcs/expression.cs:1070
+#: mcs/mcs/expression.cs:1166
 msgid ""
 "The operand of an increment or decrement operator must be a variable, "
 "property or indexer"
@@ -2335,19 +2006,19 @@ msgstr ""
 "O operando de um operador de incremento ou decremento deve ser uma variável, "
 "propriedade ou indexador"
 
-#: mcs/mcs/expression.cs:1260
+#: mcs/mcs/expression.cs:1409
 #, csharp-format
 msgid "The `{0}' operator cannot be applied to an operand of a static type"
 msgstr ""
 "O operador \"{0}\" não pode ser aplicado a um operando de tipo estático"
 
-#: mcs/mcs/expression.cs:1265
+#: mcs/mcs/expression.cs:1414
 #, csharp-format
 msgid "The `{0}' operator cannot be applied to an operand of pointer type"
 msgstr ""
 "O operador \"{0}\" não pode ser aplicado em um operando de tipo ponteiro"
 
-#: mcs/mcs/expression.cs:1271
+#: mcs/mcs/expression.cs:1420
 #, csharp-format
 msgid ""
 "The `{0}' operator cannot be applied to a lambda expression or anonymous "
@@ -2356,7 +2027,7 @@ msgstr ""
 "O operador \"{0}\" não pode ser aplicado a uma expressão lambda ou método "
 "anônimo"
 
-#: mcs/mcs/expression.cs:1505
+#: mcs/mcs/expression.cs:1709
 #, fuzzy, csharp-format
 msgid ""
 "The `as' operator cannot be used with a non-reference type parameter `{0}'. "
@@ -2365,60 +2036,55 @@ msgstr ""
 "O operador \"as\" não pode ser utilizada com um parâmetro de tipo não "
 "referência \"{0}\""
 
-#: mcs/mcs/expression.cs:1509
+#: mcs/mcs/expression.cs:1713
 #, csharp-format
 msgid "The `as' operator cannot be used with a non-nullable value type `{0}'"
 msgstr ""
 "O operador \"as\" não pode ser utilizado com um valor não de tipo não NULL "
 "\"{0}\""
 
-#: mcs/mcs/expression.cs:1542
+#: mcs/mcs/expression.cs:1747
 #, csharp-format
 msgid "Cannot convert type `{0}' to `{1}' via a built-in conversion"
 msgstr ""
 "Não foi possível converter o tipo \"{0}\" para \"{1}\" através de uma "
 "conversão inclusa"
 
-#: mcs/mcs/expression.cs:1583
+#: mcs/mcs/expression.cs:1788
 #, csharp-format
 msgid "Cannot convert to static type `{0}'"
 msgstr "Não foi possível converter para o tipo estático \"{0}\""
 
-#: mcs/mcs/expression.cs:1673
+#: mcs/mcs/expression.cs:1898
 msgid ""
 "The `default value' operator cannot be applied to an operand of a static type"
 msgstr ""
 "O operador \"valor padrão\" não pode ser aplicado a um operando de um tipo "
 "estático"
 
-#: mcs/mcs/expression.cs:2178
+#: mcs/mcs/expression.cs:2575
 #, csharp-format
 msgid "Operator `{0}' cannot be applied to operands of type `{1}' and `{2}'"
 msgstr ""
 "O operador \"{0}\" não pode ser aplicado aos operados do tipo \"{1}\" e "
 "\"{2}\""
 
-#: mcs/mcs/expression.cs:2741
+#: mcs/mcs/expression.cs:3363
 msgid "To cast a negative value, you must enclose the value in parentheses"
 msgstr ""
 "Para fazer o cast do valor negativo, você deve colocar o valor em parênteses"
 
-#: mcs/mcs/expression.cs:3394
-#, csharp-format
-msgid "Operator `{0}' is ambiguous on operands of type `{1}' and `{2}'"
-msgstr "O operador \"{0}\" é ambíguo em operandos do tipo \"{1}\" e \"{2}\""
-
-#: mcs/mcs/expression.cs:4146
-#, csharp-format
+#: mcs/mcs/expression.cs:5034
+#, fuzzy, csharp-format
 msgid ""
-"A user-defined operator `{0}' must have parameters and return values of the "
-"same type in order to be applicable as a short circuit operator"
+"A user-defined operator `{0}' must have each parameter type and return type "
+"of the same type in order to be applicable as a short circuit operator"
 msgstr ""
 "O operador definido pelo usuário \"{0}\" deve ter parâmetros e valores de "
 "retorno do mesmo tipo, para que seja aplicável como um operador de curto "
 "circuito"
 
-#: mcs/mcs/expression.cs:4156
+#: mcs/mcs/expression.cs:5044
 #, csharp-format
 msgid ""
 "The type `{0}' must have operator `true' and operator `false' defined when `"
@@ -2427,7 +2093,7 @@ msgstr ""
 "O tipo \"{0}\" deve ter operadores \"true\" e \"false\" definidos quando "
 "\"{1}\" é utilizado como um operador curto circuito"
 
-#: mcs/mcs/expression.cs:4466
+#: mcs/mcs/expression.cs:5419
 #, fuzzy, csharp-format
 msgid ""
 "Type of conditional expression cannot be determined as `{0}' and `{1}' "
@@ -2436,7 +2102,7 @@ msgstr ""
 "Tipo da expressão condicional não pôde ser determinada por que não há uma "
 "conversão implícita entre \"{0}\" e \"{1}\""
 
-#: mcs/mcs/expression.cs:4476
+#: mcs/mcs/expression.cs:5431
 #, csharp-format
 msgid ""
 "Type of conditional expression cannot be determined because there is no "
@@ -2445,12 +2111,19 @@ msgstr ""
 "Tipo da expressão condicional não pôde ser determinada por que não há uma "
 "conversão implícita entre \"{0}\" e \"{1}\""
 
-#: mcs/mcs/expression.cs:4930
+#: mcs/mcs/expression.cs:5763
+#, fuzzy, csharp-format
+msgid "Use of unassigned local variable `{0}'"
+msgstr "Uso de variável não atríbuida \""
+
+#: mcs/mcs/expression.cs:5783
 #, csharp-format
-msgid "Use of unassigned out parameter `{0}'"
-msgstr "Uso do parâmetro removido \"{0}\""
+msgid ""
+"Cannot use fixed local `{0}' inside an anonymous method, lambda expression "
+"or query expression"
+msgstr ""
 
-#: mcs/mcs/expression.cs:4960
+#: mcs/mcs/expression.cs:5968
 #, csharp-format
 msgid ""
 "Parameter `{0}' cannot be used inside `{1}' when using `ref' or `out' "
@@ -2459,17 +2132,22 @@ msgstr ""
 "Parâmetro \"{0}\" não pôde ser utilizado dentro de \"{1}\" quando estiver "
 "usando modificadores \"ref\" ou \"out\""
 
-#: mcs/mcs/expression.cs:5161
+#: mcs/mcs/expression.cs:6038
+#, csharp-format
+msgid "Use of unassigned out parameter `{0}'"
+msgstr "Uso do parâmetro removido \"{0}\""
+
+#: mcs/mcs/expression.cs:6200
 #, fuzzy, csharp-format
 msgid "Cannot invoke a non-delegate type `{0}'"
 msgstr "Não foi possível converter \"{0}\" para um tipo não-delegate \"{1}\""
 
-#: mcs/mcs/expression.cs:5172
+#: mcs/mcs/expression.cs:6211
 #, csharp-format
 msgid "The member `{0}' cannot be used as method or delegate"
 msgstr "O membro \"{0}\" não pode ser utilizado como método ou delegate"
 
-#: mcs/mcs/expression.cs:5192
+#: mcs/mcs/expression.cs:6231
 msgid ""
 "Do not directly call your base class Finalize method. It is called "
 "automatically from your destructor"
@@ -2477,7 +2155,7 @@ msgstr ""
 "Não chame diretamente seu método Finalize da classe base. Este é chamado "
 "automaticamente de seu destrutor"
 
-#: mcs/mcs/expression.cs:5194
+#: mcs/mcs/expression.cs:6233
 msgid ""
 "Destructors and object.Finalize cannot be called directly. Consider calling "
 "IDisposable.Dispose if available"
@@ -2485,71 +2163,62 @@ msgstr ""
 "Destrutores e o object.Finalize não podem ser chamados diretamente. "
 "Considere chamar IDisposable.Dispose se disponível"
 
-#: mcs/mcs/expression.cs:5223
+#: mcs/mcs/expression.cs:6262
 #, csharp-format
 msgid ""
 "The base call to method `{0}' cannot be dynamically dispatched. Consider "
 "casting the dynamic arguments or eliminating the base access"
 msgstr ""
 
-#: mcs/mcs/expression.cs:5300
+#: mcs/mcs/expression.cs:6346
 #, csharp-format
 msgid "`{0}': cannot explicitly call operator or accessor"
 msgstr "\"{0}\": não foi possível chamar explicitamente operador ou acessor"
 
-#: mcs/mcs/expression.cs:5627
+#: mcs/mcs/expression.cs:6533
 #, csharp-format
 msgid "Unsafe type `{0}' cannot be used in an object creation expression"
 msgstr ""
 "Tipo inseguro \"{0}\" não pode ser utilizado em uma expressão criadora de "
 "objetos"
 
-#: mcs/mcs/expression.cs:5650
+#: mcs/mcs/expression.cs:6556
 #, csharp-format
 msgid ""
 "Cannot create an instance of the variable type `{0}' because it does not "
 "have the new() constraint"
 msgstr ""
 
-#: mcs/mcs/expression.cs:5656
+#: mcs/mcs/expression.cs:6562
 #, csharp-format
 msgid ""
 "`{0}': cannot provide arguments when creating an instance of a variable type"
 msgstr ""
 
-#: mcs/mcs/expression.cs:5665
+#: mcs/mcs/expression.cs:6571
 #, csharp-format
 msgid "Cannot create an instance of the static class `{0}'"
 msgstr "Não foi possível criar uma instância da classe estática \"{0}\""
 
-#: mcs/mcs/expression.cs:5677
+#: mcs/mcs/expression.cs:6583
 #, csharp-format
 msgid "Cannot create an instance of the abstract class or interface `{0}'"
 msgstr ""
 "Não foi possível criar uma instância da classe abstrata ou interface \"{0}\""
 
-#: mcs/mcs/expression.cs:5973
+#: mcs/mcs/expression.cs:6892
 msgid ""
 "An implicitly typed local variable declarator cannot use an array initializer"
 msgstr ""
 "Um declarador de variável local tipada implícitamente não pode usar um "
 "inicializador de array"
 
-#: mcs/mcs/expression.cs:6066
-msgid "Cannot create an array with a negative size"
-msgstr "Não foi possível criar um array com um tamanho negativo"
-
-#: mcs/mcs/expression.cs:6098 mcs/mcs/expression.cs:6106
-#: mcs/mcs/statement.cs:1002 mcs/mcs/statement.cs:3056
-msgid "A constant value is expected"
-msgstr "Um valor constante é esperado"
-
-#: mcs/mcs/expression.cs:6112
+#: mcs/mcs/expression.cs:7055 mcs/mcs/expression.cs:7080
 #, csharp-format
 msgid "An array initializer of length `{0}' was expected"
 msgstr ""
 
-#: mcs/mcs/expression.cs:6128
+#: mcs/mcs/expression.cs:7071
 #, fuzzy
 msgid ""
 "Array initializers can only be used in a variable or field initializer. Try "
@@ -2559,18 +2228,22 @@ msgstr ""
 "atríbui-la a tipos de array. Tente, ao invés disso, utilizar uma nova "
 "expressão"
 
-#: mcs/mcs/expression.cs:6136
+#: mcs/mcs/expression.cs:7088
 #, fuzzy
 msgid "A nested array initializer was expected"
 msgstr "Um valor constante é esperado"
 
-#: mcs/mcs/expression.cs:6173
+#: mcs/mcs/expression.cs:7135
 msgid "An expression tree cannot contain a multidimensional array initializer"
 msgstr ""
 "Uma árvore de expressão não pode contar um inicializador de array "
 "multidimensional"
 
-#: mcs/mcs/expression.cs:6275
+#: mcs/mcs/expression.cs:7171
+msgid "Cannot create an array with a negative size"
+msgstr "Não foi possível criar um array com um tamanho negativo"
+
+#: mcs/mcs/expression.cs:7263
 msgid ""
 "Can only use array initializer expressions to assign to array types. Try "
 "using a new expression instead"
@@ -2579,7 +2252,7 @@ msgstr ""
 "atríbui-la a tipos de array. Tente, ao invés disso, utilizar uma nova "
 "expressão"
 
-#: mcs/mcs/expression.cs:6716
+#: mcs/mcs/expression.cs:7685
 msgid ""
 "The type of an implicitly typed array cannot be inferred from the "
 "initializer. Try specifying array type explicitly"
@@ -2587,18 +2260,18 @@ msgstr ""
 "O tipo de um array tipado implicitamente não pode ser inferido do "
 "inicializador. Tente especificar o tipo de array explicitamente"
 
-#: mcs/mcs/expression.cs:6853
+#: mcs/mcs/expression.cs:7826
 msgid ""
 "The `this' object cannot be used before all of its fields are assigned to"
 msgstr ""
 
-#: mcs/mcs/expression.cs:6860
+#: mcs/mcs/expression.cs:7832
 msgid ""
 "Keyword `this' is not valid in a static property, static method, or static "
 "field initializer"
 msgstr ""
 
-#: mcs/mcs/expression.cs:6863
+#: mcs/mcs/expression.cs:7835
 msgid ""
 "Anonymous methods inside structs cannot access instance members of `this'. "
 "Consider copying `this' to a local variable outside the anonymous method and "
@@ -2608,54 +2281,48 @@ msgstr ""
 "Considere copiar \"this\" para um variável local fora do método anônimo e "
 "utilizar, ao invés disso, o local"
 
-#: mcs/mcs/expression.cs:6866
+#: mcs/mcs/expression.cs:7838
 #, fuzzy
 msgid "Keyword `this' is not available in the current context"
 msgstr "O nome \"{0}\" não existe no contexto atual"
 
-#: mcs/mcs/expression.cs:6953
+#: mcs/mcs/expression.cs:7914
 msgid "Cannot take the address of `this' because it is read-only"
 msgstr ""
 "Não foi possível encontrar o endereço de \"this\" por que este é somente "
 "leitura"
 
-#: mcs/mcs/expression.cs:6955
+#: mcs/mcs/expression.cs:7916
 msgid "Cannot pass `this' as a ref or out argument because it is read-only"
 msgstr ""
 "Não foi possível passar \"thus\" com uma ref ou argumento out por que este é "
 "somente leitura"
 
-#: mcs/mcs/expression.cs:6957
+#: mcs/mcs/expression.cs:7918
 msgid "Cannot assign to `this' because it is read-only"
 msgstr "Não foi possível atribuir para \"this\" por que este é somente leitura"
 
-#: mcs/mcs/expression.cs:7010
+#: mcs/mcs/expression.cs:7986
 msgid "The __arglist construct is valid only within a variable argument method"
 msgstr ""
 
-#: mcs/mcs/expression.cs:7060
+#: mcs/mcs/expression.cs:8047
 msgid "An expression tree cannot contain a method with variable arguments"
 msgstr ""
 "Uma árvore de expressão não pode conter um método com argumentos variáveis"
 
-#: mcs/mcs/expression.cs:7144
-msgid ""
-"System.Void cannot be used from C#. Use typeof (void) to get the void type "
-"object"
-msgstr ""
-
-#: mcs/mcs/expression.cs:7147
+#: mcs/mcs/expression.cs:8315
 #, fuzzy
 msgid "The typeof operator cannot be used on the dynamic type"
 msgstr ""
 "O operador \"{0}\" não pode ser aplicado a um operando de tipo estático"
 
-#: mcs/mcs/expression.cs:7198
+#: mcs/mcs/expression.cs:8356
 #, csharp-format
 msgid "`{0}': an attribute argument cannot use type parameters"
 msgstr "\"{0}\": um argumento de atributo não pode usar parâmetros de tipo"
 
-#: mcs/mcs/expression.cs:7452
+#: mcs/mcs/expression.cs:8571
 #, csharp-format
 msgid ""
 "`{0}' does not have a predefined size, therefore sizeof can only be used in "
@@ -2666,103 +2333,105 @@ msgstr ""
 "utilizado em um contexto inseguro (consider utilizar System.Runtime."
 "InteropServices.Marshal.SizeOf)"
 
-#: mcs/mcs/expression.cs:7508
+#: mcs/mcs/expression.cs:8638
 #, csharp-format
 msgid "Alias `{0}' not found"
 msgstr "Apelido \"{0}\" não encontrado"
 
-#: mcs/mcs/expression.cs:7519
-#, csharp-format
-msgid ""
-"Alias `{0}' cannot be used with '::' since it denotes a type. Consider "
-"replacing '::' with '.'"
-msgstr ""
-"Apelido \"{0}\" não pôde ser utilizado com \"::\" pois denota um tipo. "
-"Considere substituir \"::\" com \".\""
-
-#: mcs/mcs/expression.cs:7535
-#, csharp-format
+#: mcs/mcs/expression.cs:8664
+#, fuzzy
 msgid ""
-"A namespace alias qualifier `{0}' did not resolve to a namespace or a type"
+"The namespace alias qualifier `::' cannot be used to invoke a method. "
+"Consider using `.' instead"
 msgstr ""
 "O qualificador de apelidos do namespace \"{0}\" não resolveu para um "
 "namespace ou um tipo"
 
-#: mcs/mcs/expression.cs:7692
+#: mcs/mcs/expression.cs:8754
 msgid "Cannot perform member binding on `null' value"
 msgstr ""
 
-#: mcs/mcs/expression.cs:7759
-#, csharp-format
-msgid "`{0}': cannot reference a type through an expression; try `{1}' instead"
+#: mcs/mcs/expression.cs:8885
+#, fuzzy, csharp-format
+msgid ""
+"`{0}': cannot reference a type through an expression. Consider using `{1}' "
+"instead"
 msgstr ""
 "\"{0}\" não pôde referenciar um tipo através de uma expressão; tente, ao "
 "invés, \"{1}\""
 
-#: mcs/mcs/expression.cs:7835
+#: mcs/mcs/expression.cs:8954
 #, csharp-format
 msgid "A nested type cannot be specified through a type parameter `{0}'"
 msgstr ""
 "Um tipo aninhado não pode ser especificado através de um tipo parâmetro "
 "\"{0}\""
 
-#: mcs/mcs/expression.cs:7894
+#: mcs/mcs/expression.cs:8962
+#, fuzzy, csharp-format
+msgid ""
+"Alias `{0}' cannot be used with `::' since it denotes a type. Consider "
+"replacing `::' with `.'"
+msgstr ""
+"Apelido \"{0}\" não pôde ser utilizado com \"::\" pois denota um tipo. "
+"Considere substituir \"::\" com \".\""
+
+#: mcs/mcs/expression.cs:9027
 #, csharp-format
 msgid "The nested type `{0}' does not exist in the type `{1}'"
 msgstr "O tipo aninhado \"{0}\" não existe no tipo \"{1}\""
 
-#: mcs/mcs/expression.cs:7903
-#, csharp-format
+#: mcs/mcs/expression.cs:9051
+#, fuzzy, csharp-format
 msgid ""
 "Type `{0}' does not contain a definition for `{1}' and no extension method `"
-"{1}' of type `{0}' could be found (are you missing a using directive or an "
-"assembly reference?)"
+"{1}' of type `{0}' could be found. Are you missing {2}?"
 msgstr ""
 "O tipo \"{0}\" não contém uma definição para \"{1}\" e nenhuma extensão de "
 "método \"{1}\" do tipo \"{0}\" pôde ser encontrada (você está esquecendo uma "
 "diretiva em uso ou uma referência do assembly?)"
 
-#: mcs/mcs/expression.cs:8083
+#: mcs/mcs/expression.cs:9279
 #, csharp-format
 msgid "Cannot apply indexing with [] to an expression of type `{0}'"
 msgstr ""
 "Não foi possível aplicar uma indexação com [] para uma expressão do tipo "
 "\"{0}\""
 
-#: mcs/mcs/expression.cs:8099
+#: mcs/mcs/expression.cs:9297
 msgid "A pointer must be indexed by only one value"
 msgstr ""
 
-#: mcs/mcs/expression.cs:8148
+#: mcs/mcs/expression.cs:9353
 msgid "An element access expression cannot use named argument"
 msgstr ""
 
-#: mcs/mcs/expression.cs:8204
+#: mcs/mcs/expression.cs:9437
 #, csharp-format
 msgid "Wrong number of indexes `{0}' inside [], expected `{1}'"
 msgstr "Número incorreto de índices \"{0}\" dentro de [], esperados \"{1}\""
 
-#: mcs/mcs/expression.cs:8540
+#: mcs/mcs/expression.cs:9837
 msgid ""
 "The indexer base access cannot be dynamically dispatched. Consider casting "
 "the dynamic arguments or eliminating the base access"
 msgstr ""
 
-#: mcs/mcs/expression.cs:8621
+#: mcs/mcs/expression.cs:9922
 msgid "An expression tree may not contain a base access"
 msgstr "Uma árvore de expressão não deve conter uma acesso de base"
 
-#: mcs/mcs/expression.cs:8639
+#: mcs/mcs/expression.cs:9940
 #, fuzzy
 msgid "Keyword `base' is not available in a static method"
 msgstr "Palavra chave \"new\" não é permitida em elementos do namespace"
 
-#: mcs/mcs/expression.cs:8641
+#: mcs/mcs/expression.cs:9942
 #, fuzzy
 msgid "Keyword `base' is not available in the current context"
 msgstr "O nome \"{0}\" não existe no contexto atual"
 
-#: mcs/mcs/expression.cs:8672
+#: mcs/mcs/expression.cs:9980
 #, fuzzy
 msgid ""
 "A property, indexer or dynamic member access may not be passed as `ref' or "
@@ -2771,25 +2440,25 @@ msgstr ""
 "Uma propriedade ou indexador \"{0}\" não deve ser passada como parâmetos "
 "\"ref\" ou \"out\""
 
-#: mcs/mcs/expression.cs:8949
+#: mcs/mcs/expression.cs:10318
 #, csharp-format
 msgid "Array elements cannot be of type `{0}'"
 msgstr "Elementos de array não podem ser do tipo \"{0}\""
 
-#: mcs/mcs/expression.cs:8952
+#: mcs/mcs/expression.cs:10321
 #, csharp-format
 msgid "Array elements cannot be of static type `{0}'"
 msgstr "Elementos de array não podem ser do tipo estático \"{0}\""
 
-#: mcs/mcs/expression.cs:9102
+#: mcs/mcs/expression.cs:10497
 msgid "Cannot use a negative size with stackalloc"
 msgstr "Não é possível utilizar um tamanho negativo com stackalloc"
 
-#: mcs/mcs/expression.cs:9106
+#: mcs/mcs/expression.cs:10501
 msgid "Cannot use stackalloc in finally or catch"
 msgstr ""
 
-#: mcs/mcs/expression.cs:9211
+#: mcs/mcs/expression.cs:10618
 #, csharp-format
 msgid ""
 "Member `{0}' cannot be initialized. An object initializer may only be used "
@@ -2798,7 +2467,7 @@ msgstr ""
 "Membro \"{0}\" não pode ser inicializado. Um inicializador de objetos pode "
 "apenas ser utilizado para campos, ou propriedades"
 
-#: mcs/mcs/expression.cs:9220
+#: mcs/mcs/expression.cs:10627
 #, fuzzy, csharp-format
 msgid ""
 "Static field or property `{0}' cannot be assigned in an object initializer"
@@ -2806,7 +2475,7 @@ msgstr ""
 " Campo estático ou propriedade \"{0}\" não podem ser atribuídas a um "
 "inicializador de objeto"
 
-#: mcs/mcs/expression.cs:9395
+#: mcs/mcs/expression.cs:10834
 #, csharp-format
 msgid ""
 "A field or property `{0}' cannot be initialized with a collection object "
@@ -2816,43 +2485,48 @@ msgstr ""
 "inicializador de coleção de objetos porque o tipo \"{1}\" não implementa a "
 "interface \"{2}\""
 
-#: mcs/mcs/expression.cs:9406
+#: mcs/mcs/expression.cs:10845
 #, csharp-format
 msgid "Inconsistent `{0}' member declaration"
 msgstr "Declaração do membro \"{0}\" inconsistente"
 
-#: mcs/mcs/expression.cs:9414
+#: mcs/mcs/expression.cs:10853
 #, csharp-format
 msgid ""
 "An object initializer includes more than one member `{0}' initialization"
 msgstr ""
 "Um inicializador de objeto inclui mais que um membro \"{0}\" de inicialização"
 
-#: mcs/mcs/expression.cs:9432
+#: mcs/mcs/expression.cs:10871
 #, csharp-format
 msgid "Cannot initialize object of type `{0}' with a collection initializer"
 msgstr ""
 "Não foi possível inicializar objetos do tipo \"{0}\" com um inicializador de "
 "coleções"
 
-#: mcs/mcs/expression.cs:9669
+#: mcs/mcs/expression.cs:11014
+msgid ""
+"Object and collection initializers cannot be used to instantiate a delegate"
+msgstr ""
+
+#: mcs/mcs/expression.cs:11185
 msgid "Anonymous types cannot be used in this expression"
 msgstr "Tipos anônimos não podem ser utilizados nesta expressão"
 
-#: mcs/mcs/expression.cs:9757
+#: mcs/mcs/expression.cs:11279
 #, csharp-format
 msgid "An anonymous type property `{0}' cannot be initialized with `{1}'"
 msgstr ""
 "Uma propriedade anônima de tipo \"{0}\" não pode ser inicializada com \"{1}\""
 
-#: mcs/mcs/field.cs:70
+#: mcs/mcs/field.cs:74
 msgid ""
 "The modifier 'abstract' is not valid on fields. Try using a property instead"
 msgstr ""
 "O modificador \"abstract\" não é válido em campos. Tente, ao invés disso, "
 "utilizar uma propriedade"
 
-#: mcs/mcs/field.cs:121
+#: mcs/mcs/field.cs:136
 msgid ""
 "The FieldOffset attribute can only be placed on members of types marked with "
 "the StructLayout(LayoutKind.Explicit)"
@@ -2860,12 +2534,12 @@ msgstr ""
 "O atributo FieldOffset pode apenas ser colocado em membros de tipos marcados "
 "com o StructLayout(LayoutKind.Explicit)"
 
-#: mcs/mcs/field.cs:126
+#: mcs/mcs/field.cs:141
 msgid "The FieldOffset attribute is not allowed on static or const fields"
 msgstr ""
 "O atributo FieldOffset não é permitido em campos estáticos ou constantes"
 
-#: mcs/mcs/field.cs:132
+#: mcs/mcs/field.cs:147
 msgid ""
 "Do not use 'System.Runtime.CompilerServices.FixedBuffer' attribute. Use the "
 "'fixed' field modifier instead"
@@ -2873,7 +2547,7 @@ msgstr ""
 "Não utilize o atributo \"System.Runtime.CompilerServices.FixedBuffer\". "
 "Utilize, ao invés desse, o campo modificador \"fixed\""
 
-#: mcs/mcs/field.cs:237
+#: mcs/mcs/field.cs:255
 #, csharp-format
 msgid ""
 "`{0}': Instance field types marked with StructLayout(LayoutKind.Explicit) "
@@ -2882,12 +2556,12 @@ msgstr ""
 "\"{0}\": Tipo de campo de instância marcado com StructLayout(LayoutKind."
 "Explicit) deve ter um atributo FieldOffset"
 
-#: mcs/mcs/field.cs:246
+#: mcs/mcs/field.cs:266
 #, csharp-format
 msgid "`{0}': cannot declare variables of static types"
 msgstr "\"{0}\": não foi possível declarar variáveis de tipo estático"
 
-#: mcs/mcs/field.cs:393
+#: mcs/mcs/field.cs:413
 #, csharp-format
 msgid ""
 "`{0}': Fixed size buffers type must be one of the following: bool, byte, "
@@ -2896,20 +2570,20 @@ msgstr ""
 "\"{0}\": Buffers de tamanho fixo deve ser algum desses: bool, byte, short, "
 "int, long, char, sbyte, ushort, uint, ulong, float or double"
 
-#: mcs/mcs/field.cs:429
+#: mcs/mcs/field.cs:450
 #, csharp-format
 msgid "`{0}': Fixed size buffer fields may only be members of structs"
 msgstr ""
 "\"{0}\": Campos de buffer de tamanho fixo devem ser somente membros de "
 "structs"
 
-#: mcs/mcs/field.cs:444
+#: mcs/mcs/field.cs:465
 #, csharp-format
 msgid "`{0}': Fixed size buffers must have a length greater than zero"
 msgstr ""
 "\"{0}\": Buffers de tamanho fixo devem ter um comprimento maior que zero"
 
-#: mcs/mcs/field.cs:451
+#: mcs/mcs/field.cs:488
 #, csharp-format
 msgid ""
 "Fixed size buffer `{0}' of length `{1}' and type `{2}' exceeded 2^31 limit"
@@ -2917,71 +2591,18 @@ msgstr ""
 "Buffer de tamanho fixo \"{0}\" de comprimento \"{1}\" e tipo \"{2}\" excedeu "
 "o limite de 2^31"
 
-#: mcs/mcs/field.cs:638
+#: mcs/mcs/field.cs:669
 #, csharp-format
 msgid "`{0}': A volatile field cannot be of the type `{1}'"
 msgstr "\"{0}\": Um campo volátil não pode ser do tipo \"{1}\""
 
-#: mcs/mcs/field.cs:643
+#: mcs/mcs/field.cs:674
 #, csharp-format
 msgid "`{0}': A field cannot be both volatile and readonly"
 msgstr ""
 "\"{0}\": Um campo não pode ser volátil e somente leitura ao mesmo tempo"
 
-#: mcs/mcs/flowanalysis.cs:307
-msgid "Control cannot fall through from one case label to another"
-msgstr "Controle não pode passar de um rótulo de caso para outro"
-
-#: mcs/mcs/flowanalysis.cs:536
-#, csharp-format
-msgid ""
-"The label `{0}:' could not be found within the scope of the goto statement"
-msgstr ""
-"O rótulo \"{0}:\" não pôde ser encontrado no escopo do declaração do goto"
-
-#: mcs/mcs/flowanalysis.cs:664
-msgid ""
-"A throw statement with no arguments is not allowed outside of a catch clause"
-msgstr ""
-"Uma declaração throw sem argumentos não é permitida fora de uma cláusula "
-"catch"
-
-#: mcs/mcs/flowanalysis.cs:675 mcs/mcs/flowanalysis.cs:681
-msgid "No enclosing loop out of which to break or continue"
-msgstr "Sem fechamento de loop para break ou continue"
-
-#: mcs/mcs/flowanalysis.cs:709
-msgid "Control cannot leave the body of an anonymous method"
-msgstr "Controle não pode deixar o corpo de um método anônimo"
-
-#: mcs/mcs/flowanalysis.cs:750
-msgid "Cannot yield a value in the body of a try block with a catch clause"
-msgstr ""
-"Não foi possível deixar um valor no corpo de um bloco try com uma cláusula "
-"catch"
-
-#: mcs/mcs/flowanalysis.cs:752
-msgid "Cannot yield a value in the body of a catch clause"
-msgstr "Não foi possível deixar um valor no corpo de um cláusula catch"
-
-#: mcs/mcs/flowanalysis.cs:904
-msgid ""
-"A throw statement with no arguments is not allowed inside of a finally "
-"clause nested inside of the innermost catch clause"
-msgstr ""
-"Uma declaração throw sem argumentos não é permitida dentro de uma clálculsa "
-"finalmente aninhada dentro da cláusula de catch mais interna"
-
-#: mcs/mcs/flowanalysis.cs:916 mcs/mcs/iterators.cs:102
-msgid "Cannot yield in the body of a finally clause"
-msgstr "Não foi possível deixar no corpo uma cláusula final"
-
-#: mcs/mcs/flowanalysis.cs:927 mcs/mcs/flowanalysis.cs:943
-#: mcs/mcs/flowanalysis.cs:979 mcs/mcs/statement.cs:687
-msgid "Control cannot leave the body of a finally clause"
-msgstr "O controle não pode deixar o corpo de uma cláusula final"
-
-#: mcs/mcs/flowanalysis.cs:1130
+#: mcs/mcs/flowanalysis.cs:144
 #, fuzzy, csharp-format
 msgid ""
 "An automatically implemented property `{0}' must be fully assigned before "
@@ -2992,7 +2613,7 @@ msgstr ""
 "atríbuida antes que o controle deixe o construtor. Considere chamar o "
 "construtor padrão"
 
-#: mcs/mcs/flowanalysis.cs:1134
+#: mcs/mcs/flowanalysis.cs:148
 #, csharp-format
 msgid ""
 "Field `{0}' must be fully assigned before control leaves the constructor"
@@ -3000,27 +2621,19 @@ msgstr ""
 "Campo \"{0}\" deve ser inteiramente atríbuido antes que o controle deixe o "
 "construtor"
 
-#: mcs/mcs/flowanalysis.cs:1376
-msgid "Use of unassigned local variable `"
-msgstr "Uso de variável não atríbuida \""
-
-#: mcs/mcs/flowanalysis.cs:1446
-msgid "Use of possibly unassigned field `"
-msgstr "Uso de campo possivelmente não atribuído \""
-
-#: mcs/mcs/generic.cs:102 mcs/mcs/generic.cs:120
+#: mcs/mcs/generic.cs:159 mcs/mcs/generic.cs:183
 #, csharp-format
 msgid "Type parameter `{0}' inherits conflicting constraints `{1}' and `{2}'"
 msgstr ""
 "O tipo de parâmetro \"{0}\" herda as restrições conflitantes \"{1}\" e "
 "\"{2}\""
 
-#: mcs/mcs/generic.cs:173
+#: mcs/mcs/generic.cs:245
 #, fuzzy, csharp-format
 msgid "A constraint cannot be the dynamic type `{0}'"
 msgstr "Uma restrição não pode ser a classe especial \"{0}\""
 
-#: mcs/mcs/generic.cs:182
+#: mcs/mcs/generic.cs:252
 #, csharp-format
 msgid ""
 "Inconsistent accessibility: constraint type `{0}' is less accessible than `"
@@ -3029,17 +2642,17 @@ msgstr ""
 "Accessibilidade inconsistente: tipo de restrição \"{0}\" é menos acessível "
 "que \"{1}\""
 
-#: mcs/mcs/generic.cs:189 mcs/mcs/generic.cs:203
+#: mcs/mcs/generic.cs:259 mcs/mcs/generic.cs:273
 #, fuzzy, csharp-format
 msgid "Duplicate constraint `{0}' for type parameter `{1}'"
 msgstr "Restrição duplicada \"{0}\" para o tipo de parâmetro \"{1}\"."
 
-#: mcs/mcs/generic.cs:218
+#: mcs/mcs/generic.cs:288
 #, csharp-format
 msgid "Circular constraint dependency involving `{0}' and `{1}'"
 msgstr "Dependência circular de restrições envolvendo \"{0}\" e \"{1}\""
 
-#: mcs/mcs/generic.cs:249
+#: mcs/mcs/generic.cs:319
 #, csharp-format
 msgid ""
 "Type parameter `{0}' has the `struct' constraint, so it cannot be used as a "
@@ -3048,7 +2661,7 @@ msgstr ""
 "O tipo de parâmetro \"{0}\" tem a \"struct\" constraint, então não pode ser "
 "utilizada como restrição para \"{1}\""
 
-#: mcs/mcs/generic.cs:260
+#: mcs/mcs/generic.cs:330
 #, csharp-format
 msgid ""
 "The class type constraint `{0}' must be listed before any other constraints. "
@@ -3058,7 +2671,7 @@ msgstr ""
 "outras restrições. Considere mover a restrição de tipo para o início da "
 "lista de restrições"
 
-#: mcs/mcs/generic.cs:266
+#: mcs/mcs/generic.cs:336
 #, csharp-format
 msgid ""
 "`{0}': cannot specify both a constraint class and the `class' or `struct' "
@@ -3067,12 +2680,17 @@ msgstr ""
 "\"{0}\": não foi possível especificar uma classe de restrição e a \"classe\" "
 "ou \"struct\" restrita"
 
-#: mcs/mcs/generic.cs:271
+#: mcs/mcs/generic.cs:348
+#, csharp-format
+msgid "A constraint cannot be special class `{0}'"
+msgstr "Uma restrição não pode ser a classe especial \"{0}\""
+
+#: mcs/mcs/generic.cs:352
 #, fuzzy
 msgid "A constraint cannot be the dynamic type"
 msgstr "Uma restrição não pode ser a classe especial \"{0}\""
 
-#: mcs/mcs/generic.cs:277
+#: mcs/mcs/generic.cs:358
 #, csharp-format
 msgid ""
 "`{0}' is not a valid constraint. A constraint must be an interface, a non-"
@@ -3081,7 +2699,7 @@ msgstr ""
 "\"{0}\" não é uma restrição válida. Uma restrição deve ser uma interface, "
 "uma classe não selada ou um tipo parâmetro"
 
-#: mcs/mcs/generic.cs:284
+#: mcs/mcs/generic.cs:365
 #, csharp-format
 msgid ""
 "`{0}' is not a valid constraint. Static classes cannot be used as constraints"
@@ -3089,28 +2707,45 @@ msgstr ""
 "\"{0}\" não é uma restrição válida. Classes estáticas não pode ser "
 "utilizadas como restrições"
 
-#: mcs/mcs/generic.cs:290
-#, csharp-format
-msgid "A constraint cannot be special class `{0}'"
-msgstr "Uma restrição não pode ser a classe especial \"{0}\""
-
-#: mcs/mcs/generic.cs:538
+#: mcs/mcs/generic.cs:684
 #, fuzzy, csharp-format
 msgid "The {2} type parameter `{0}' must be {3} valid on `{1}{4}'"
 msgstr "O nome do tipo parâmetro \"{0}\" é o mesmo que \"{1}\""
 
-#: mcs/mcs/generic.cs:1741
+#: mcs/mcs/generic.cs:2166
 #, csharp-format
 msgid "`{0}': static classes cannot be used as generic arguments"
 msgstr ""
-"\"{0}\": classes estáticas não podem ser utilizadas como argumentos genéricos"
+"\"{0}\": classes estáticas não podem ser utilizadas como argumentos genéricos"
+
+#: mcs/mcs/generic.cs:2173
+#, csharp-format
+msgid "The type `{0}' may not be used as a type argument"
+msgstr "O tipo \"{0}\" não deve ser utilizado como um tipo argumento"
+
+#: mcs/mcs/generic.cs:2267
+msgid "Variant type parameters can only be used with interfaces and delegates"
+msgstr ""
+
+#: mcs/mcs/generic.cs:2336
+#, fuzzy, csharp-format
+msgid ""
+"Partial method declarations of `{0}' have inconsistent constraints for type "
+"parameter `{1}'"
+msgstr ""
+"Declarações parciais \"{0}\" possuem restrições inconsistentes para o tipo "
+"de parâmetro \"{1}\""
 
-#: mcs/mcs/generic.cs:1748
+#: mcs/mcs/generic.cs:2352
 #, csharp-format
-msgid "The type `{0}' may not be used as a type argument"
-msgstr "O tipo \"{0}\" não deve ser utilizado como um tipo argumento"
+msgid ""
+"Partial declarations of `{0}' have inconsistent constraints for type "
+"parameter `{1}'"
+msgstr ""
+"Declarações parciais \"{0}\" possuem restrições inconsistentes para o tipo "
+"de parâmetro \"{1}\""
 
-#: mcs/mcs/generic.cs:2003
+#: mcs/mcs/generic.cs:2534
 #, fuzzy, csharp-format
 msgid ""
 "The type `{0}' must be a reference type in order to use it as type parameter "
@@ -3119,7 +2754,7 @@ msgstr ""
 "O tipo \"{0}\" deve ser uma refêrencia de tipo para poder utilizá-lo como o "
 "tipo parâmetro \"{1}\" no tipo genérico ou método \"{2}\"."
 
-#: mcs/mcs/generic.cs:2013
+#: mcs/mcs/generic.cs:2544
 #, fuzzy, csharp-format
 msgid ""
 "The type `{0}' must be a non-nullable value type in order to use it as type "
@@ -3128,17 +2763,7 @@ msgstr ""
 "O tipo \"{0}\" deve ser um tipo de valor não NULL para poder utilizá-lo como "
 "tipo parâmetro \"{1}\" no tipo genérico ou método \"{2}\"."
 
-#: mcs/mcs/generic.cs:2052
-#, fuzzy, csharp-format
-msgid ""
-"The type `{0}' cannot be used as type parameter `{1}' in the generic type or "
-"method `{2}'. The nullable type `{0}' never satisfies interface constraint"
-msgstr ""
-"O tipo \"{0}\" não pode ser utilizado como tipo parâmetro \"{1}\" no tipo "
-"genérico ou método \"{2}\". O tipo anulável \"{0}\" nunca satisfaz a "
-"restrição de interface do tipo \"{3}\""
-
-#: mcs/mcs/generic.cs:2104
+#: mcs/mcs/generic.cs:2605
 #, csharp-format
 msgid ""
 "The type `{0}' must have a public parameterless constructor in order to use "
@@ -3147,64 +2772,78 @@ msgstr ""
 "O tipo \"{0}\" deve ter um construtor público sem parâmetros para poder "
 "utilizá-lo como parâmetro \"{1}\" no tipo genérico ou método \"{2}\""
 
-#: mcs/mcs/generic.cs:2156
+#: mcs/mcs/generic.cs:2661
 #, fuzzy, csharp-format
 msgid ""
 "The type `{0}' cannot be used as type parameter `{1}' in the generic type or "
-"method `{2}'. There is no boxing conversion from `{0}' to `{3}'"
+"method `{2}'. There is no boxing or type parameter conversion from `{0}' to `"
+"{3}'"
 msgstr ""
 "O tipo \"{0}\" não pode ser utilizado como tipo parâmetro \"{1}\" no tipo "
 "genérico ou método \"{2}\". O tipo anulável \"{0}\" nunca satisfaz a "
 "restrição de interface do tipo \"{3}\""
 
-#: mcs/mcs/generic.cs:2160
+#: mcs/mcs/generic.cs:2667
 #, fuzzy, csharp-format
 msgid ""
 "The type `{0}' cannot be used as type parameter `{1}' in the generic type or "
-"method `{2}'. There is no boxing or type parameter conversion from `{0}' to `"
+"method `{2}'. The nullable type `{0}' never satisfies interface constraint `"
 "{3}'"
 msgstr ""
 "O tipo \"{0}\" não pode ser utilizado como tipo parâmetro \"{1}\" no tipo "
 "genérico ou método \"{2}\". O tipo anulável \"{0}\" nunca satisfaz a "
 "restrição de interface do tipo \"{3}\""
 
-#: mcs/mcs/generic.cs:2164
+#: mcs/mcs/generic.cs:2671
 #, fuzzy, csharp-format
 msgid ""
 "The type `{0}' cannot be used as type parameter `{1}' in the generic type or "
-"method `{2}'. There is no implicit reference conversion from `{0}' to `{3}'"
+"method `{2}'. The nullable type `{0}' does not satisfy constraint `{3}'"
 msgstr ""
 "O tipo \"{0}\" não pode ser utilizado como tipo parâmetro \"{1}\" no tipo "
 "genérico ou método \"{2}\". O tipo anulável \"{0}\" nunca satisfaz a "
 "restrição de interface do tipo \"{3}\""
 
-#: mcs/mcs/import.cs:1758
-#, csharp-format
-msgid ""
-"Reference to type `{0}' claims it is defined in this assembly, but it is not "
-"defined in source or any added modules"
-msgstr ""
-
-#: mcs/mcs/import.cs:1762
-#, csharp-format
+#: mcs/mcs/generic.cs:2676
+#, fuzzy, csharp-format
 msgid ""
-"The type `{0}' is defined in an assembly that is not referenced. Consider "
-"adding a reference to assembly `{1}'"
+"The type `{0}' cannot be used as type parameter `{1}' in the generic type or "
+"method `{2}'. There is no boxing conversion from `{0}' to `{3}'"
 msgstr ""
+"O tipo \"{0}\" não pode ser utilizado como tipo parâmetro \"{1}\" no tipo "
+"genérico ou método \"{2}\". O tipo anulável \"{0}\" nunca satisfaz a "
+"restrição de interface do tipo \"{3}\""
 
-#: mcs/mcs/import.cs:1766
-#, csharp-format
+#: mcs/mcs/generic.cs:2681
+#, fuzzy, csharp-format
 msgid ""
-"Reference to type `{0}' claims it is defined assembly `{1}', but it could "
-"not be found"
+"The type `{0}' cannot be used as type parameter `{1}' in the generic type or "
+"method `{2}'. There is no implicit reference conversion from `{0}' to `{3}'"
 msgstr ""
+"O tipo \"{0}\" não pode ser utilizado como tipo parâmetro \"{1}\" no tipo "
+"genérico ou método \"{2}\". O tipo anulável \"{0}\" nunca satisfaz a "
+"restrição de interface do tipo \"{3}\""
 
-#: mcs/mcs/iterators.cs:44
+#: mcs/mcs/iterators.cs:98
 msgid "The yield statement cannot be used inside anonymous method blocks"
 msgstr ""
 "Declaração yield não pode ser utilizada dentro de blocos de método anônimo"
 
-#: mcs/mcs/iterators.cs:856
+#: mcs/mcs/iterators.cs:103
+msgid "Cannot yield in the body of a finally clause"
+msgstr "Não foi possível deixar no corpo uma cláusula final"
+
+#: mcs/mcs/iterators.cs:116
+msgid "Cannot yield a value in the body of a try block with a catch clause"
+msgstr ""
+"Não foi possível deixar um valor no corpo de um bloco try com uma cláusula "
+"catch"
+
+#: mcs/mcs/iterators.cs:120
+msgid "Cannot yield a value in the body of a catch clause"
+msgstr "Não foi possível deixar um valor no corpo de um cláusula catch"
+
+#: mcs/mcs/iterators.cs:1185
 #, csharp-format
 msgid ""
 "The body of `{0}' cannot be an iterator block because `{1}' is not an "
@@ -3213,23 +2852,55 @@ msgstr ""
 "O corpo de \"{0}\" não pode ser um bloco iterador porque \"{1}\" não é um "
 "tipo de interface iteradora"
 
-#: mcs/mcs/iterators.cs:869
+#: mcs/mcs/iterators.cs:1198
 msgid "Iterators cannot have ref or out parameters"
 msgstr "Iteradores não podem ter parâmetros ref ou out"
 
-#: mcs/mcs/iterators.cs:875
+#: mcs/mcs/iterators.cs:1204
 msgid "__arglist is not allowed in parameter list of iterators"
 msgstr "__arglist não é permitida em parâmetros de listas de iteradores"
 
-#: mcs/mcs/iterators.cs:881
+#: mcs/mcs/iterators.cs:1210
 msgid "Iterators cannot have unsafe parameters or yield types"
 msgstr "Iteradores não podem ter parâmetros inseguros ou tipos yield"
 
-#: mcs/mcs/iterators.cs:888 mcs/mcs/statement.cs:4325
+#: mcs/mcs/iterators.cs:1216 mcs/mcs/statement.cs:5917
 msgid "Unsafe code may not appear in iterators"
 msgstr "Código inseguro não pode aparecer em iteradores"
 
-#: mcs/mcs/linq.cs:68
+#: mcs/mcs/ikvm.cs:274
+msgid "SDK path could not be resolved"
+msgstr ""
+
+#: mcs/mcs/ikvm.cs:354
+#, csharp-format
+msgid ""
+"Assembly `{0}' references `{1}' which has a higher version number than "
+"imported assembly `{2}'"
+msgstr ""
+
+#: mcs/mcs/ikvm.cs:363 mcs/mcs/ikvm.cs:367
+#, csharp-format
+msgid ""
+"Assuming assembly reference `{0}' matches assembly `{1}'. You may need to "
+"supply runtime policy"
+msgstr ""
+
+#: mcs/mcs/ikvm.cs:462
+#, csharp-format
+msgid ""
+"An assembly with the same name `{0}' has already been imported. Consider "
+"removing one of the references or sign the assembly"
+msgstr ""
+
+#: mcs/mcs/ikvm.cs:471
+#, csharp-format
+msgid ""
+"An assembly `{0}' with the same identity has already been imported. Consider "
+"removing one of the references"
+msgstr ""
+
+#: mcs/mcs/linq.cs:69
 #, csharp-format
 msgid ""
 "An implementation of `{0}' query expression pattern could not be found. Are "
@@ -3240,7 +2911,13 @@ msgstr ""
 "encontrada. Você está esquecendo da diretiva de uso \"System.Linq\" ou da "
 "referência do assembly \"System.Core.dll\" ?"
 
-#: mcs/mcs/linq.cs:93
+#: mcs/mcs/linq.cs:91
+msgid ""
+"Query expressions with a source or join sequence of type `dynamic' are not "
+"allowed"
+msgstr ""
+
+#: mcs/mcs/linq.cs:101
 #, fuzzy, csharp-format
 msgid ""
 "Ambiguous implementation of the query pattern `{0}' for source type `{1}'"
@@ -3248,7 +2925,7 @@ msgstr ""
 "Uma implementação da consulta de padrão de expressão \"{0}\" para um código "
 "fonte do tipo \"{1}\" não pôde ser encontrada"
 
-#: mcs/mcs/linq.cs:124
+#: mcs/mcs/linq.cs:132
 #, csharp-format
 msgid ""
 "An implementation of `{0}' query expression pattern for source type `{1}' "
@@ -3257,45 +2934,45 @@ msgstr ""
 "Uma implementação da consulta de padrão de expressão \"{0}\" para um código "
 "fonte do tipo \"{1}\" não pôde ser encontrada"
 
-#: mcs/mcs/linq.cs:132
+#: mcs/mcs/linq.cs:140
 #, csharp-format
 msgid ""
 "An expression type is incorrect in a subsequent `from' clause in a query "
 "expression with source type `{0}'"
 msgstr ""
 
-#: mcs/mcs/linq.cs:136
+#: mcs/mcs/linq.cs:144
 #, csharp-format
 msgid ""
 "An expression type in `{0}' clause is incorrect. Type inference failed in "
 "the call to `{1}'"
 msgstr ""
 
-#: mcs/mcs/linq.cs:248
+#: mcs/mcs/linq.cs:256
 #, csharp-format
 msgid "A range variable `{0}' cannot be initialized with `{1}'"
 msgstr ""
 "Uma variável de intervalo \"{0}\" nâo pode ser inicializada com \"{1}\""
 
-#: mcs/mcs/linq.cs:747
+#: mcs/mcs/linq.cs:827
 #, csharp-format
 msgid "A range variable `{0}' conflicts with a previous declaration of `{0}'"
 msgstr ""
 "Uma variável de intervalo \"{0}\" conflita com um declaração anterior de "
 "\"{0}\""
 
-#: mcs/mcs/linq.cs:754
+#: mcs/mcs/linq.cs:834
 #, csharp-format
 msgid "A range variable `{0}' has already been declared in this scope"
 msgstr "Uma variável de intervalor \"{0}\" já foi declarada neste escopo"
 
-#: mcs/mcs/linq.cs:761
+#: mcs/mcs/linq.cs:841
 #, csharp-format
 msgid "A range variable `{0}' conflicts with a method type parameter"
 msgstr ""
 "Uma variável de intervalor \"{0}\" conflita com um método de tipo parâmetro"
 
-#: mcs/mcs/linq.cs:793
+#: mcs/mcs/linq.cs:873
 #, csharp-format
 msgid ""
 "A range variable `{0}' cannot be assigned to. Consider using `let' clause to "
@@ -3304,7 +2981,7 @@ msgstr ""
 "Uma variável de intervalo \"{0}\" não pôde ser atribuida. Considere a "
 "utilização da claúsula \"let\" para armazenar o valor"
 
-#: mcs/mcs/literal.cs:49
+#: mcs/mcs/literal.cs:57
 #, csharp-format
 msgid ""
 "Cannot convert null to the type parameter `{0}' because it could be a value "
@@ -3314,13 +2991,13 @@ msgstr ""
 "pode ser um tipo de valor. Considere utilizar, ao invés disso, \"default "
 "({0})\""
 
-#: mcs/mcs/literal.cs:55
+#: mcs/mcs/literal.cs:63
 #, csharp-format
 msgid "Cannot convert null to `{0}' because it is a value type"
 msgstr ""
 "Não foi possível converter null para \"{0}\" porque este é um tipo de valor"
 
-#: mcs/mcs/literal.cs:209
+#: mcs/mcs/literal.cs:274
 #, csharp-format
 msgid ""
 "Literal of type double cannot be implicitly converted to type `{0}'. Add "
@@ -3329,7 +3006,7 @@ msgstr ""
 "Literal do tipo double não pode ser implicitamente convertido para o tipo "
 "\"{0}\". Adicione o sufixo \"{1}\" para criar um literal desse tipo"
 
-#: mcs/mcs/membercache.cs:1294
+#: mcs/mcs/membercache.cs:1405
 msgid ""
 "A partial method declaration and partial method implementation cannot differ "
 "on use of `params' modifier"
@@ -3337,7 +3014,7 @@ msgstr ""
 "Uma declaração de método parcial e uma implementação de método parcial não "
 "podem diferir no uso do modificador \"params\""
 
-#: mcs/mcs/membercache.cs:1297
+#: mcs/mcs/membercache.cs:1408
 msgid ""
 "A partial method declaration and partial method implementation must be both "
 "an extension method or neither"
@@ -3345,7 +3022,7 @@ msgstr ""
 "Uma declaração de método parcial e uma implementação de método parcial ou "
 "devem ser ambas um método de extenção ou ambas não serem"
 
-#: mcs/mcs/membercache.cs:1301
+#: mcs/mcs/membercache.cs:1412
 #, fuzzy, csharp-format
 msgid ""
 "Overloaded contructor `{0}' cannot differ on use of parameter modifiers only"
@@ -3353,7 +3030,7 @@ msgstr ""
 "Um método sobrecarregado \"{0}\" não pode diferir no uso de modificadores de "
 "parâmetros somente"
 
-#: mcs/mcs/membercache.cs:1305
+#: mcs/mcs/membercache.cs:1416
 #, fuzzy, csharp-format
 msgid ""
 "Overloaded method `{0}' cannot differ on use of parameter modifiers only"
@@ -3361,7 +3038,7 @@ msgstr ""
 "Um método sobrecarregado \"{0}\" não pode diferir no uso de modificadores de "
 "parâmetros somente"
 
-#: mcs/mcs/membercache.cs:1337
+#: mcs/mcs/membercache.cs:1448
 msgid ""
 "A partial method declaration and partial method implementation must be both "
 "`static' or neither"
@@ -3369,7 +3046,7 @@ msgstr ""
 "Uma declaração de método parcial e uma implementação de método parcial ou "
 "devem ser ambas estáticas ou ambas não serem"
 
-#: mcs/mcs/membercache.cs:1342
+#: mcs/mcs/membercache.cs:1454
 msgid ""
 "A partial method declaration and partial method implementation must be both "
 "`unsafe' or neither"
@@ -3377,27 +3054,41 @@ msgstr ""
 "Uma declaração de método parcial e uma implementação de método parcial ou "
 "devem ser ambas inseguras ou ambas não serem"
 
-#: mcs/mcs/membercache.cs:1348
+#: mcs/mcs/membercache.cs:1462
 #, csharp-format
 msgid "A partial method `{0}' declaration is already defined"
 msgstr "Uma declaração do método parcial \"{0}\" já está definida"
 
-#: mcs/mcs/membercache.cs:1352
+#: mcs/mcs/membercache.cs:1466
 #, csharp-format
 msgid "A partial method `{0}' implementation is already defined"
 msgstr "Uma implementação do método parcial \"{0}\" já esa definido"
 
-#: mcs/mcs/membercache.cs:1363 mcs/mcs/property.cs:81
+#: mcs/mcs/membercache.cs:1477 mcs/mcs/property.cs:81
 #, csharp-format
 msgid "A member `{0}' is already reserved"
 msgstr "Um membro \"{0}\" já está reservado"
 
-#: mcs/mcs/membercache.cs:1374
+#: mcs/mcs/membercache.cs:1488
 #, csharp-format
 msgid "Duplicate user-defined conversion in type `{0}'"
 msgstr "Conversão definida pelo usuário duplicada no topo \"{0}\""
 
-#: mcs/mcs/method.cs:512
+#: mcs/mcs/membercache.cs:1494
+#, csharp-format
+msgid ""
+"A member `{0}' is already defined. Rename this member or use different "
+"parameter types"
+msgstr ""
+"Um membro \"{0}\" já está definido. Renomeie esse membro ou use tipos de "
+"parâmetros distintos"
+
+#: mcs/mcs/method.cs:556
+#, csharp-format
+msgid "`{0}': Async methods cannot use `MethodImplOptions.Synchronized'"
+msgstr ""
+
+#: mcs/mcs/method.cs:564
 msgid ""
 "The DllImport attribute must be specified on a method marked `static' and "
 "`extern'"
@@ -3405,14 +3096,14 @@ msgstr ""
 "O atributo DllImport deve ser especificado em um método marcado \"estático\" "
 "e \"externo\""
 
-#: mcs/mcs/method.cs:600
+#: mcs/mcs/method.cs:665
 #, csharp-format
 msgid "`{0}': A partial method parameters cannot use `out' modifier"
 msgstr ""
 "\"{0}\": Os parâmetros parciais de um método não podem utilizar o "
 "modificador \"out\""
 
-#: mcs/mcs/method.cs:659
+#: mcs/mcs/method.cs:729
 #, csharp-format
 msgid ""
 "Conditional not valid on `{0}' because it is a constructor, destructor, "
@@ -3421,37 +3112,53 @@ msgstr ""
 "Condicional inválido em \"{0}\" por que é um construtor, destrutor, operador "
 "ou interface explícita de implementação"
 
-#: mcs/mcs/method.cs:877
+#: mcs/mcs/method.cs:899
+msgid ""
+"A partial method cannot define access modifier or any of abstract, extern, "
+"new, override, sealed, or virtual modifiers"
+msgstr ""
+
+#: mcs/mcs/method.cs:905
+msgid ""
+"A partial method must be declared within a partial class or partial struct"
+msgstr ""
+
+#: mcs/mcs/method.cs:910
+#, csharp-format
+msgid "`{0}': Extension methods must be declared static"
+msgstr "\"{0}\": Métodos de extensão devem ser declarados como estáticos"
+
+#: mcs/mcs/method.cs:926
 #, csharp-format
 msgid "Program `{0}' has more than one entry point defined: `{1}'"
 msgstr "Programa \"{0}\" possue mais que um ponto de entrada definido \"{1}\""
 
-#: mcs/mcs/method.cs:921
+#: mcs/mcs/method.cs:969
 #, csharp-format
 msgid "Conditional not valid on `{0}' because it is an override method"
 msgstr "Condicional inválido em \"{0}\" por que este é um método sobrescrito"
 
-#: mcs/mcs/method.cs:926
+#: mcs/mcs/method.cs:974
 #, csharp-format
 msgid "Conditional not valid on `{0}' because its return type is not void"
 msgstr "Condicional inválido em \"{0}\" porque seu tipo de retorno não é void"
 
-#: mcs/mcs/method.cs:931
+#: mcs/mcs/method.cs:979
 msgid "Conditional not valid on interface members"
 msgstr "Condicional inválido em membros de interface"
 
-#: mcs/mcs/method.cs:937
+#: mcs/mcs/method.cs:985
 #, csharp-format
 msgid "Conditional member `{0}' cannot implement interface member `{1}'"
 msgstr ""
 "Membro condicional \"{0}\" não podem implementar membros de interface \"{1}\""
 
-#: mcs/mcs/method.cs:944
+#: mcs/mcs/method.cs:992
 #, csharp-format
 msgid "Conditional method `{0}' cannot have an out parameter"
 msgstr "Método condicional \"{0}\" não pode ter um parâmetro externo"
 
-#: mcs/mcs/method.cs:1067
+#: mcs/mcs/method.cs:1180
 #, csharp-format
 msgid ""
 "The constraints for type parameter `{0}' of method `{1}' must match the "
@@ -3463,31 +3170,37 @@ msgstr ""
 "\"{3}\". Considere, ao invés disso, utilizar uma implementação de interface "
 "explícita"
 
-#: mcs/mcs/method.cs:1121
+#: mcs/mcs/method.cs:1235
+msgid "The return type of an async method must be void, Task, or Task<T>"
+msgstr ""
+
+#: mcs/mcs/method.cs:1252
 #, csharp-format
 msgid "`{0}': Extension methods cannot be defined in a nested class"
 msgstr ""
 "\"{0}\": Métodos de extensão não podem ser definidos em uma classe aninhada"
 
-#: mcs/mcs/method.cs:1127
+#: mcs/mcs/method.cs:1258
 #, csharp-format
 msgid ""
-"`{0}': Extension methods cannot be declared without a reference to System."
-"Core.dll assembly. Add the assembly reference or remove `this' modifer from "
-"the first parameter"
+"`{0}': Extension methods require `System.Runtime.CompilerServices."
+"ExtensionAttribute' type to be available. Are you missing an assembly "
+"reference?"
 msgstr ""
-"\"{0}\": Métodos de extensão não podem ser declarados sem uma referência ao "
-"assembly System.Core.dll. Adicione a referência do assembly ou remova o "
-"modificador \"this\" do primeiro parâmetro"
 
-#: mcs/mcs/method.cs:1136
+#: mcs/mcs/method.cs:1267
 #, csharp-format
 msgid "`{0}': Extension methods must be defined in a non-generic static class"
 msgstr ""
 "\"{0}\": Métodos de estensão devem ser definidos em uma classe estática não-"
 "genérica"
 
-#: mcs/mcs/method.cs:1189
+#: mcs/mcs/method.cs:1283
+#, fuzzy, csharp-format
+msgid "`{0}': an entry point cannot be async method"
+msgstr "\"{0}\": tipos estáticos não podem ser utilizados como parâmetros"
+
+#: mcs/mcs/method.cs:1333
 #, csharp-format
 msgid ""
 "A partial method `{0}' implementation is missing a partial method declaration"
@@ -3495,37 +3208,50 @@ msgstr ""
 "Na implementação do método parcial \"{0}\" está faltando a declaração do "
 "método parcial"
 
-#: mcs/mcs/method.cs:1236
+#: mcs/mcs/method.cs:1371
 #, csharp-format
 msgid "Method or delegate cannot return type `{0}'"
 msgstr "Método ou delegate não podem ter um tipo de retorno \"{0}\""
 
-#: mcs/mcs/method.cs:1311
+#: mcs/mcs/method.cs:1449
 msgid ""
 "The constructor call cannot be dynamically dispatched within constructor "
 "initializer"
 msgstr ""
 
-#: mcs/mcs/method.cs:1325
+#: mcs/mcs/method.cs:1463
 #, csharp-format
 msgid "`{0}': Struct constructors cannot call base constructors"
 msgstr "\"{0}\": Construtores de structs não podem chamar construtores da base"
 
-#: mcs/mcs/method.cs:1344
+#: mcs/mcs/method.cs:1481
 #, csharp-format
 msgid "Constructor `{0}' cannot call itself"
 msgstr "Construtor \"{0}\" não pode chamar a si mesmo"
 
-#: mcs/mcs/method.cs:1463
+#: mcs/mcs/method.cs:1633
 #, csharp-format
 msgid "`{0}': The static constructor must be parameterless"
 msgstr "\"{0}\": O construtor estático não deve ter parâmetros"
 
-#: mcs/mcs/method.cs:1481
+#: mcs/mcs/method.cs:1654
 msgid "Structs cannot contain explicit parameterless constructors"
 msgstr "Structs não podem conter construtores explícitos sem parâmetros"
 
-#: mcs/mcs/method.cs:1537
+#: mcs/mcs/method.cs:1680
+#, fuzzy, csharp-format
+msgid ""
+"`{0}': Structs with primary constructor cannot have explicit constructor"
+msgstr "\"{0}\": Construtores de structs não podem chamar construtores da base"
+
+#: mcs/mcs/method.cs:1683
+#, fuzzy, csharp-format
+msgid ""
+"`{0}': Instance constructor of type with primary constructor must specify "
+"`this' constructor initializer"
+msgstr "\"{0}\": Construtores de structs não podem chamar construtores da base"
+
+#: mcs/mcs/method.cs:1719
 #, csharp-format
 msgid ""
 "`{0}': A class with the ComImport attribute cannot have a user-defined "
@@ -3534,19 +3260,19 @@ msgstr ""
 "\"{0}\": Uma classe com o atributo ComImport não pode ter um construtor "
 "definido pelo usuário"
 
-#: mcs/mcs/method.cs:1780
+#: mcs/mcs/method.cs:1971
 #, csharp-format
 msgid "`{0}' is an accessor not found in interface member `{1}{2}'"
 msgstr "\"{0}\" é um acessor não encontrado no membro da interface \"{1}{2}\""
 
-#: mcs/mcs/method.cs:1786
+#: mcs/mcs/method.cs:1977
 #, csharp-format
 msgid ""
 "`{0}.{1}' in explicit interface declaration is not a member of interface"
 msgstr ""
 "\"{0}.{1}\" na declaração da interface explícita não é um membro da interface"
 
-#: mcs/mcs/method.cs:1793
+#: mcs/mcs/method.cs:1985
 #, csharp-format
 msgid ""
 "`{0}' explicit method implementation cannot implement `{1}' because it is an "
@@ -3555,12 +3281,12 @@ msgstr ""
 "\"{0}\" implementação de método explícito não pode implementar \"{1}\" "
 "porque é um acessor"
 
-#: mcs/mcs/method.cs:1803
+#: mcs/mcs/method.cs:1995
 #, fuzzy, csharp-format
 msgid "Method `{0}' cannot implement interface accessor `{1}'"
 msgstr "Método \"{0}\" não pode implementar acessor de interface \"{1}.{2}\""
 
-#: mcs/mcs/method.cs:1809
+#: mcs/mcs/method.cs:2002
 #, csharp-format
 msgid ""
 "Accessor `{0}' cannot implement interface member `{1}' for type `{2}'. Use "
@@ -3569,7 +3295,7 @@ msgstr ""
 "Acessor \"{0}\" não pode implementar o membro da interface \"{1}\" para o "
 "tipo \"{2}\". Utilize uma implementação explícita da interface"
 
-#: mcs/mcs/method.cs:1815
+#: mcs/mcs/method.cs:2009
 #, csharp-format
 msgid ""
 "Accessor `{0}' must be declared public to implement interface member `{1}'"
@@ -3577,7 +3303,7 @@ msgstr ""
 "Acessor \"{0}\" deve ser declarado público para implementar o membro da "
 "interface \"{1}\""
 
-#: mcs/mcs/method.cs:1839
+#: mcs/mcs/method.cs:2029
 #, csharp-format
 msgid ""
 "`{0}': the explicit interface implementation cannot introduce the params "
@@ -3586,7 +3312,7 @@ msgstr ""
 "\"{0}\": a implementação explicita da interface não pode fornecer o "
 "modificador de parâmetros"
 
-#: mcs/mcs/method.cs:2157
+#: mcs/mcs/method.cs:2370
 #, csharp-format
 msgid ""
 "Attribute `{0}' is not valid on property or event accessors. It is valid on `"
@@ -3595,13 +3321,13 @@ msgstr ""
 "Atributo \"{0}\" não é válido em propriedade ou acessores de evento. É "
 "válido nas declarações \"{1}\" somente"
 
-#: mcs/mcs/method.cs:2368
+#: mcs/mcs/method.cs:2598
 #, csharp-format
 msgid "User-defined operator `{0}' must be declared static and public"
 msgstr ""
 "Operador definido pelo usuário \"{0}\" deve ser declarado estático e público"
 
-#: mcs/mcs/method.cs:2407
+#: mcs/mcs/method.cs:2642
 msgid ""
 "User-defined operator cannot take an object of the enclosing type and "
 "convert to an object of the enclosing type"
@@ -3609,13 +3335,13 @@ msgstr ""
 "Operador definido pelo usuário não pode pegar um objeto de um tipo no qual "
 "está definido e converter para um objeto deste tipo"
 
-#: mcs/mcs/method.cs:2418
+#: mcs/mcs/method.cs:2653
 msgid "User-defined conversion must convert to or from the enclosing type"
 msgstr ""
 "Converção definida pela usuário deve conver para ou a partir de um tipo no "
 "qual está definido"
 
-#: mcs/mcs/method.cs:2424
+#: mcs/mcs/method.cs:2659
 #, fuzzy, csharp-format
 msgid ""
 "User-defined conversion `{0}' cannot convert to or from the dynamic type"
@@ -3623,7 +3349,7 @@ msgstr ""
 "Conversão definida pelo usuário \"{0}\" não pode converter para ou a partir "
 "de um tipo de interface"
 
-#: mcs/mcs/method.cs:2431
+#: mcs/mcs/method.cs:2666
 #, csharp-format
 msgid ""
 "User-defined conversion `{0}' cannot convert to or from an interface type"
@@ -3631,21 +3357,21 @@ msgstr ""
 "Conversão definida pelo usuário \"{0}\" não pode converter para ou a partir "
 "de um tipo de interface"
 
-#: mcs/mcs/method.cs:2438
+#: mcs/mcs/method.cs:2673
 #, csharp-format
 msgid "User-defined conversion `{0}' cannot convert to or from a base class"
 msgstr ""
 "Conversão definida pelo usuário \"{0}\" não pode converter para ou a partir "
 "de uma classe base"
 
-#: mcs/mcs/method.cs:2444
+#: mcs/mcs/method.cs:2679
 #, csharp-format
 msgid "User-defined conversion `{0}' cannot convert to or from a derived class"
 msgstr ""
 "Conversão definida pelo usuário \"{0}\" não pode converter para ou a partir "
 "de uma classe derivada"
 
-#: mcs/mcs/method.cs:2451
+#: mcs/mcs/method.cs:2686
 msgid ""
 "Overloaded shift operator must have the type of the first operand be the "
 "containing type, and the type of the second operand must be int"
@@ -3653,7 +3379,7 @@ msgstr ""
 "Operador de shift sobrecarregado deve ter o tipo do primeiro operando como "
 "sendo o próprio tipo, e o tipo do segundo operando deve ser int"
 
-#: mcs/mcs/method.cs:2460
+#: mcs/mcs/method.cs:2695
 msgid ""
 "The return type for ++ or -- operator must be the containing type or derived "
 "from the containing type"
@@ -3661,65 +3387,33 @@ msgstr ""
 "O tipo de retorno para o operador ++ ou -- deve ser do próprio tipo ou "
 "derivadodo próprio tipo"
 
-#: mcs/mcs/method.cs:2465
+#: mcs/mcs/method.cs:2700
 msgid "The parameter type for ++ or -- operator must be the containing type"
 msgstr "O tipo de parâmetro para o operador ++ ou -- deve ser do próprio tipo"
 
-#: mcs/mcs/method.cs:2472
+#: mcs/mcs/method.cs:2707
 msgid "The parameter type of a unary operator must be the containing type"
 msgstr "O tipo de parâmetro de um operador unário deve ser do próprio tipo"
 
-#: mcs/mcs/method.cs:2480
+#: mcs/mcs/method.cs:2715
 msgid "The return type of operator True or False must be bool"
 msgstr "O tipo de retorno do operador True ou False deve ser bool"
 
-#: mcs/mcs/method.cs:2495
+#: mcs/mcs/method.cs:2730
 msgid "One of the parameters of a binary operator must be the containing type"
 msgstr "Um dos parâmetros de um operador binário deve ser do próprio tipo"
 
-#: mcs/mcs/modifiers.cs:275
+#: mcs/mcs/modifiers.cs:278
 #, fuzzy, csharp-format
 msgid "The modifier `{0}' is not valid for this item"
 msgstr "Código de página \"{0}\" é inválido ou não está instalado"
 
-#: mcs/mcs/namespace.cs:70
-#, csharp-format
-msgid ""
-"The type or namespace name `{0}' could not be found in the global namespace "
-"(are you missing an assembly reference?)"
-msgstr ""
-"O tipo ou nome de namespace \"{0}\" não pôde ser encontrado no namespace "
-"global (você não está esquecendo de uma referência do assembly?)"
-
-#: mcs/mcs/namespace.cs:177
-#, csharp-format
-msgid ""
-"The type or namespace name `{0}' does not exist in the namespace `{1}'. Are "
-"you missing an assembly reference?"
-msgstr ""
-"O tipo ou nome do namespace \"{0}\" não existe no namespace \"{1}\". Você "
-"não está esquecendo de uma referência do assembly?"
-
-#: mcs/mcs/namespace.cs:256
+#: mcs/mcs/namespace.cs:273
 #, csharp-format
 msgid "The imported type `{0}' is defined multiple times"
 msgstr "O tipo importado \"{0}\" é definido múltiplas vezes"
 
-#: mcs/mcs/namespace.cs:583
-#, csharp-format
-msgid ""
-"`{0}' is a type not a namespace. A using namespace directive can only be "
-"applied to namespaces"
-msgstr ""
-"\"{0}\" é um tipo e não um namespace. Uma diretiva de namespace em uso pode "
-"apenas ser aplicado a namespaces"
-
-#: mcs/mcs/namespace.cs:610
-#, csharp-format
-msgid "The extern alias `{0}' was not specified in -reference option"
-msgstr "O alias externo \"{0}\" não foi especificado na opção -reference"
-
-#: mcs/mcs/namespace.cs:805 mcs/mcs/namespace.cs:827
+#: mcs/mcs/namespace.cs:741 mcs/mcs/namespace.cs:753
 msgid ""
 "A using clause must precede all other namespace elements except extern alias "
 "declarations"
@@ -3727,62 +3421,64 @@ msgstr ""
 "Uma cláusula em uso deve preceder todos os outros elementos do namespace, "
 "exceto declarações de alias externos"
 
-#: mcs/mcs/namespace.cs:851
-msgid "An extern alias declaration must precede all other elements"
-msgstr "Um alias externo deve preceder todos os outros elementos"
-
-#: mcs/mcs/namespace.cs:869
+#: mcs/mcs/namespace.cs:769
 #, csharp-format
 msgid "The using alias `{0}' appeared previously in this namespace"
 msgstr "O alias em uso \"{0}\" apareceu antes neste namespace"
 
-#: mcs/mcs/namespace.cs:990
+#: mcs/mcs/namespace.cs:807 mcs/mcs/namespace.cs:830
+#, csharp-format
+msgid "The namespace `{0}' already contains a definition for `{1}'"
+msgstr "O namespace \"{0}\" já contém uma definição para \"{1}\""
+
+#: mcs/mcs/namespace.cs:1052
 #, csharp-format
 msgid "Namespace `{0}' contains a definition with same name as alias `{1}'"
 msgstr ""
 "O namespace \"{0}\" contém uma definição com o mesmo nome do alias \"{1}\""
 
-#: mcs/mcs/namespace.cs:1044
+#: mcs/mcs/namespace.cs:1105
 #, csharp-format
 msgid "`{0}' is an ambiguous reference between `{1}' and `{2}'"
 msgstr "\"{0}\" é uma referência ambígua entre \"{1}\" e \"{2}\""
 
-#: mcs/mcs/namespace.cs:1112
-msgid "The global extern alias cannot be redefined"
-msgstr ""
-
-#: mcs/mcs/namespace.cs:1117
+#: mcs/mcs/namespace.cs:1301
 #, csharp-format
 msgid ""
-"The type or namespace name `{0}' could not be found. Are you missing a using "
-"directive or an assembly reference?"
+"`{0}' is a type not a namespace. A using namespace directive can only be "
+"applied to namespaces"
 msgstr ""
-"O tipo ou nome de namespace \"{0}\" não pôde ser encontrado. Você está "
-"esquecendo de uma diretiva em uso ou uma referência do assembly?"
+"\"{0}\" é um tipo e não um namespace. Uma diretiva de namespace em uso pode "
+"apenas ser aplicado a namespaces"
 
-#: mcs/mcs/nullable.cs:1036
+#: mcs/mcs/namespace.cs:1325
+#, csharp-format
+msgid "The extern alias `{0}' was not specified in -reference option"
+msgstr "O alias externo \"{0}\" não foi especificado na opção -reference"
+
+#: mcs/mcs/nullable.cs:1077
 msgid ""
 "An expression tree cannot contain a coalescing operator with null left side"
 msgstr ""
 "Uma árvore de expressão não pode conter um operador crescente com null no "
 "lado esquerdo"
 
-#: mcs/mcs/parameter.cs:156
+#: mcs/mcs/parameter.cs:157
 msgid "The params parameter must be a single dimensional array"
 msgstr "O parâmetro params deve ser um array de uma dimensão"
 
-#: mcs/mcs/parameter.cs:301
+#: mcs/mcs/parameter.cs:327
 msgid "An out parameter cannot have the `In' attribute"
 msgstr "Um parâmetro externo não pode ter o atributo \"In\""
 
-#: mcs/mcs/parameter.cs:306
+#: mcs/mcs/parameter.cs:332
 msgid ""
 "Do not use `System.ParamArrayAttribute'. Use the `params' keyword instead"
 msgstr ""
 "Não use \"System.ParamArrayAttribute\". Ao invés disso, use a palavra chave "
 "\"params\""
 
-#: mcs/mcs/parameter.cs:313
+#: mcs/mcs/parameter.cs:339
 msgid ""
 "Cannot specify only `Out' attribute on a ref parameter. Use both `In' and "
 "`Out' attributes or neither"
@@ -3790,73 +3486,109 @@ msgstr ""
 "Não foi possível especificar somente o atributo \"Out\" em um parâmetro ref. "
 "Utilize ambos os atributos \"In\" e \"Out\" ou nenhum"
 
-#: mcs/mcs/parameter.cs:324
+#: mcs/mcs/parameter.cs:348
 #, fuzzy, csharp-format
 msgid "Cannot specify `{0}' attribute on optional parameter `{1}'"
 msgstr ""
 "Não foi possível especificar o atributo \"DefaultMember\" no tipo contendo "
 "um indexador"
 
-#: mcs/mcs/parameter.cs:369
+#: mcs/mcs/parameter.cs:357
+msgid ""
+"The CallerMemberName attribute can only be applied to parameters with "
+"default value"
+msgstr ""
+
+#: mcs/mcs/parameter.cs:362
+msgid ""
+"The CallerLineNumber attribute can only be applied to parameters with "
+"default value"
+msgstr ""
+
+#: mcs/mcs/parameter.cs:367
+msgid ""
+"The CallerFilePath attribute can only be applied to parameters with default "
+"value"
+msgstr ""
+
+#: mcs/mcs/parameter.cs:404
 #, csharp-format
 msgid "Method or delegate parameter cannot be of type `{0}'"
 msgstr "Método ou parâmetro delegate não pode ser do tipo \"{0}\""
 
-#: mcs/mcs/parameter.cs:379
+#: mcs/mcs/parameter.cs:414
 #, csharp-format
 msgid "`{0}': static types cannot be used as parameters"
 msgstr "\"{0}\": tipos estáticos não podem ser utilizados como parâmetros"
 
-#: mcs/mcs/parameter.cs:385
+#: mcs/mcs/parameter.cs:420
 #, fuzzy, csharp-format
 msgid "The extension method cannot be of type `{0}'"
 msgstr "O tipo do método de extenção não pode ser \"{0}\""
 
-#: mcs/mcs/parameter.cs:425
+#: mcs/mcs/parameter.cs:441 mcs/mcs/parameter.cs:453
+#, fuzzy, csharp-format
+msgid ""
+"The CallerMemberName attribute cannot be applied because there is no "
+"standard conversion from `{0}' to `{1}'"
+msgstr ""
+"Tipo da expressão condicional não pôde ser determinada por que não há uma "
+"conversão implícita entre \"{0}\" e \"{1}\""
+
+#: mcs/mcs/parameter.cs:465
+#, fuzzy, csharp-format
+msgid ""
+"The CallerFilePath attribute cannot be applied because there is no standard "
+"conversion from `{0}' to `{1}'"
+msgstr ""
+"Tipo da expressão condicional não pôde ser determinada por que não há uma "
+"conversão implícita entre \"{0}\" e \"{1}\""
+
+#: mcs/mcs/parameter.cs:511
 #, fuzzy, csharp-format
 msgid ""
 "Argument of type `{0}' is not applicable for the DefaultParameterValue "
 "attribute"
 msgstr "Argumento do tipo \"{0}\" não é aplicável para o atributo DefaultValue"
 
-#: mcs/mcs/parameter.cs:429
+#: mcs/mcs/parameter.cs:515
 #, fuzzy, csharp-format
 msgid ""
 "The DefaultParameterValue attribute is not applicable on parameters of type `"
 "{0}'"
 msgstr "O atributo DefaultValue não é aplicável em parâmetros do tipo \"{0}\""
 
-#: mcs/mcs/parameter.cs:457
+#: mcs/mcs/parameter.cs:543
 msgid "The type of the default value should match the type of the parameter"
 msgstr "O tipo de valor padrão deve ter o mesmo tipo do parâmetro"
 
-#: mcs/mcs/parameter.cs:602
+#: mcs/mcs/parameter.cs:694
 msgid "An expression tree parameter cannot use `ref' or `out' modifier"
 msgstr ""
 "Um parâmetro de árvore de expressão não pode usar modificadores \"ref\" ou "
 "\"out\""
 
-#: mcs/mcs/parameter.cs:1074
+#: mcs/mcs/parameter.cs:1203
 #, csharp-format
 msgid "The parameter name `{0}' conflicts with a compiler generated name"
 msgstr ""
 "O nome do parâmetro \"{0}\" conflita com um nome gerado pelo compilador"
 
-#: mcs/mcs/parameter.cs:1220
+#: mcs/mcs/parameter.cs:1360
 #, fuzzy, csharp-format
 msgid ""
 "The expression being assigned to optional parameter `{0}' must be a constant "
 "or default value"
 msgstr "A expressão sendo atribuída a \"{0}\" deve ser constante"
 
-#: mcs/mcs/parameter.cs:1237
+#: mcs/mcs/parameter.cs:1377
 #, fuzzy, csharp-format
 msgid ""
 "The expression being assigned to nullable optional parameter `{0}' must be "
 "default value"
 msgstr "A expressão sendo atribuída a \"{0}\" deve ser constante"
 
-#: mcs/mcs/parameter.cs:1245
+#: mcs/mcs/parameter.cs:1385
 #, fuzzy, csharp-format
 msgid ""
 "Optional parameter `{0}' of type `{1}' can only be initialized with `null'"
@@ -3864,7 +3596,7 @@ msgstr ""
 "A constante \"{0}\" do tipo de referência \"{1}\" só pode ser inicializada "
 "com null"
 
-#: mcs/mcs/parameter.cs:1256
+#: mcs/mcs/parameter.cs:1396
 #, fuzzy, csharp-format
 msgid ""
 "Optional parameter expression of type `{0}' cannot be converted to parameter "
@@ -3873,7 +3605,14 @@ msgstr ""
 "Tipo de instância do método de extensão \"{0}\" não pode ser convertido para "
 "\"{1}\""
 
-#: mcs/mcs/pending.cs:443
+#: mcs/mcs/pending.cs:326
+#, csharp-format
+msgid ""
+"Cannot implement interface `{0}' with the specified type parameters because "
+"it causes method `{1}' to differ on parameter modifiers only"
+msgstr ""
+
+#: mcs/mcs/pending.cs:707
 #, csharp-format
 msgid ""
 "`{0}' does not implement interface member `{1}' and the best implementing "
@@ -3882,16 +3621,16 @@ msgstr ""
 "O \"{0}\" não implementa o membro da interface \"{1}\" e o melhor candidato "
 "a implementação \"{2}\" é estático"
 
-#: mcs/mcs/pending.cs:447
+#: mcs/mcs/pending.cs:711
 #, csharp-format
 msgid ""
 "`{0}' does not implement interface member `{1}' and the best implementing "
-"candidate `{2}' in not public"
+"candidate `{2}' is not public"
 msgstr ""
 "O \"{0}\" não implementa o membro da interface \"{1}\" e o melhor candidato "
 "a implementação \"{2}\" não é público"
 
-#: mcs/mcs/pending.cs:451
+#: mcs/mcs/pending.cs:715
 #, csharp-format
 msgid ""
 "`{0}' does not implement interface member `{1}' and the best implementing "
@@ -3902,17 +3641,17 @@ msgstr ""
 "a implementação \"{2}\" devolve o tipo \"{3}\" o que não é o mesmo tipo de "
 "retorno \"{4}\" do membro da interface"
 
-#: mcs/mcs/pending.cs:456
+#: mcs/mcs/pending.cs:720
 #, csharp-format
 msgid "`{0}' does not implement interface member `{1}'"
 msgstr "\"{0}\" não implementa o membro da interface \"{1}\""
 
-#: mcs/mcs/pending.cs:461
+#: mcs/mcs/pending.cs:725
 #, csharp-format
 msgid "`{0}' does not implement inherited abstract member `{1}'"
 msgstr "\"{0}\" não implementa o membro abstrato herdado \"{1}\""
 
-#: mcs/mcs/property.cs:357
+#: mcs/mcs/property.cs:349
 #, csharp-format
 msgid ""
 "`{0}': accessibility modifiers may not be used on accessors in an interface"
@@ -3920,12 +3659,12 @@ msgstr ""
 "\"{0}\": modificadores de acessibilidade não devem ser utilizados em "
 "acessores dentro de uma interface"
 
-#: mcs/mcs/property.cs:361
+#: mcs/mcs/property.cs:352
 #, csharp-format
 msgid "`{0}': abstract properties cannot have private accessors"
 msgstr "\"{0}\": propriedades abstratas não podem ter acessores privados"
 
-#: mcs/mcs/property.cs:406
+#: mcs/mcs/property.cs:402
 #, csharp-format
 msgid ""
 "The accessibility modifier of the `{0}' accessor must be more restrictive "
@@ -3934,13 +3673,13 @@ msgstr ""
 "O modificador de acessibilidade do acessor \"{0}\" deve ser mais restritivo "
 "que o modificador da propriedade ou indexador \"{1}\""
 
-#: mcs/mcs/property.cs:507
+#: mcs/mcs/property.cs:511
 #, csharp-format
 msgid "Explicit interface implementation `{0}' is missing accessor `{1}'"
 msgstr ""
 "Implementação explícita de interface \"{0}\" está faltando acessor \"{1}\""
 
-#: mcs/mcs/property.cs:526
+#: mcs/mcs/property.cs:530
 #, fuzzy, csharp-format
 msgid ""
 "`{0}': cannot override because `{1}' does not have an overridable get "
@@ -3949,7 +3688,7 @@ msgstr ""
 "\"{0}.get\": não foi possível sobrescrever porque \"{1}\" não possui um "
 "acessor get que pode ser sobrescrito"
 
-#: mcs/mcs/property.cs:543
+#: mcs/mcs/property.cs:547
 #, fuzzy, csharp-format
 msgid ""
 "`{0}': cannot override because `{1}' does not have an overridable set "
@@ -3958,7 +3697,7 @@ msgstr ""
 "\"{0}.set\": não foi possível substituir porque \"{1}\" não possui um "
 "acessor set que pode ser sobrescrito"
 
-#: mcs/mcs/property.cs:584
+#: mcs/mcs/property.cs:588
 #, csharp-format
 msgid ""
 "`{0}': Cannot specify accessibility modifiers for both accessors of the "
@@ -3967,7 +3706,7 @@ msgstr ""
 "\"{0}\": Não foi possível especificar modificadores de acessibilidade para "
 "ambos os acessores de propriedade ou indexadores"
 
-#: mcs/mcs/property.cs:591
+#: mcs/mcs/property.cs:595
 #, csharp-format
 msgid ""
 "`{0}': accessibility modifiers on accessors may only be used if the property "
@@ -3976,7 +3715,7 @@ msgstr ""
 "\"{0}\": modificadores de acessibilidade em acessores devem apenas ser "
 "utilizados se a propriedade ou indexador tiverem, ambas, um acessor get e set"
 
-#: mcs/mcs/property.cs:788
+#: mcs/mcs/property.cs:836
 #, csharp-format
 msgid ""
 "Automatically implemented property `{0}' cannot be used inside a type with "
@@ -3985,12 +3724,12 @@ msgstr ""
 "Propriedade implementada automaticamente \"{0}\" não pode ser utilizada "
 "dentro de um tipo com um atributo StructLayout explícito"
 
-#: mcs/mcs/property.cs:1279
+#: mcs/mcs/property.cs:1332
 #, csharp-format
 msgid "`{0}': event must be of a delegate type"
 msgstr "\"{0}\": evento deve ser de um tipo delegate"
 
-#: mcs/mcs/property.cs:1492
+#: mcs/mcs/property.cs:1608
 #, fuzzy, csharp-format
 msgid ""
 "The `{0}' attribute is valid only on an indexer that is not an explicit "
@@ -3999,24 +3738,20 @@ msgstr ""
 "O atributo \"IndexerName\" é válido somente em um indexador que não seja uma "
 "declaração explícita de um membro da interface"
 
-#: mcs/mcs/property.cs:1526
+#: mcs/mcs/property.cs:1612
 msgid "Cannot set the `IndexerName' attribute on an indexer marked override"
 msgstr ""
 "Não foi possível definir o atributo \"IndexerName\" em um indexador marcado "
 "como sobrescrito"
 
-#: mcs/mcs/reflection.cs:238
-msgid "Could not access the key inside the container `"
-msgstr "Não foi possível acessar a chave dentro do tipo no qual está definido"
-
-#: mcs/mcs/roottypes.cs:282
+#: mcs/mcs/module.cs:338
 #, fuzzy, csharp-format
 msgid "Value specified for the argument to `{0}' is not valid"
 msgstr ""
 "Valor especificado para o argumento ao \"System.Runtime.InteropServices."
 "DefaultCharSetAttribute\" não é válido"
 
-#: mcs/mcs/statement.cs:87
+#: mcs/mcs/statement.cs:74
 msgid ""
 "A lambda expression with statement body cannot be converted to an expresion "
 "tree"
@@ -4024,13 +3759,21 @@ msgstr ""
 "Uma expressão lambda com um corpo de declarações não pode ser convertida "
 "para uma árvore de expressão"
 
-#: mcs/mcs/statement.cs:733
+#: mcs/mcs/statement.cs:126
+msgid "Control cannot leave the body of an anonymous method"
+msgstr "Controle não pode deixar o corpo de um método anônimo"
+
+#: mcs/mcs/statement.cs:140
+msgid "Control cannot leave the body of a finally clause"
+msgstr "O controle não pode deixar o corpo de uma cláusula final"
+
+#: mcs/mcs/statement.cs:1174
 #, csharp-format
 msgid ""
 "An object of a type convertible to `{0}' is required for the return statement"
 msgstr ""
 
-#: mcs/mcs/statement.cs:746
+#: mcs/mcs/statement.cs:1187 mcs/mcs/statement.cs:1211
 #, csharp-format
 msgid ""
 "`{0}': A return keyword must not be followed by any expression when method "
@@ -4039,7 +3782,41 @@ msgstr ""
 "\"{0}\": Uma palavra chave return não deve ser seguida por nenhuma expressão "
 "quando o método retornar void"
 
-#: mcs/mcs/statement.cs:771
+#: mcs/mcs/statement.cs:1224
+#, fuzzy, csharp-format
+msgid ""
+"`{0}': A return keyword must not be followed by an expression when async "
+"delegate returns `Task'. Consider using `Task<T>' return type"
+msgstr ""
+"\"{0}\": Uma palavra chave return não deve ser seguida por nenhuma expressão "
+"quando o método retornar void"
+
+#: mcs/mcs/statement.cs:1228
+#, fuzzy, csharp-format
+msgid ""
+"`{0}': A return keyword must not be followed by an expression when async "
+"method returns `Task'. Consider using `Task<T>' return type"
+msgstr ""
+"\"{0}\": Uma palavra chave return não deve ser seguida por nenhuma expressão "
+"quando o método retornar void"
+
+#: mcs/mcs/statement.cs:1241
+#, csharp-format
+msgid ""
+"`{0}': The return expression type of async method must be `{1}' rather than "
+"`Task<{1}>'"
+msgstr ""
+
+#: mcs/mcs/statement.cs:1251
+#, fuzzy, csharp-format
+msgid ""
+"`{0}': A return keyword must not be followed by any expression when delegate "
+"returns void"
+msgstr ""
+"\"{0}\": Uma palavra chave return não deve ser seguida por nenhuma expressão "
+"quando o método retornar void"
+
+#: mcs/mcs/statement.cs:1284
 #, csharp-format
 msgid ""
 "Cannot convert `{0}' to delegate type `{1}' because some of the return types "
@@ -4049,7 +3826,7 @@ msgstr ""
 "alguns dos tipos de retorno no bloco não são implicitamente conversíveis no "
 "tipo de retorno delegate"
 
-#: mcs/mcs/statement.cs:799
+#: mcs/mcs/statement.cs:1341
 msgid ""
 "Cannot return a value from iterators. Use the yield return statement to "
 "return a value, or yield break to end the iteration"
@@ -4057,32 +3834,58 @@ msgstr ""
 "Não foi possível devolver um valor de iteradores. Use a declaração yield do "
 "return para devolver um valor, ou yield break para terminar a iteração"
 
-#: mcs/mcs/statement.cs:956 mcs/mcs/statement.cs:990
+#: mcs/mcs/statement.cs:1403
+#, csharp-format
+msgid ""
+"The label `{0}:' could not be found within the scope of the goto statement"
+msgstr ""
+"O rótulo \"{0}:\" não pôde ser encontrado no escopo do declaração do goto"
+
+#: mcs/mcs/statement.cs:1741
 msgid "A goto case is only valid inside a switch statement"
 msgstr "Um case do goto é válido somente dentro de uma declaração switch"
 
-#: mcs/mcs/statement.cs:1069 mcs/mcs/statement.cs:4727
+#: mcs/mcs/statement.cs:1764
+msgid ""
+"A throw statement with no arguments is not allowed outside of a catch clause"
+msgstr ""
+"Uma declaração throw sem argumentos não é permitida fora de uma cláusula "
+"catch"
+
+#: mcs/mcs/statement.cs:1769
+msgid ""
+"A throw statement with no arguments is not allowed inside of a finally "
+"clause nested inside of the innermost catch clause"
+msgstr ""
+"Uma declaração throw sem argumentos não é permitida dentro de uma clálculsa "
+"finalmente aninhada dentro da cláusula de catch mais interna"
+
+#: mcs/mcs/statement.cs:1787 mcs/mcs/statement.cs:6421
 msgid "The type caught or thrown must be derived from System.Exception"
 msgstr ""
 
-#: mcs/mcs/statement.cs:1291
+#: mcs/mcs/statement.cs:1929
+msgid "No enclosing loop out of which to break or continue"
+msgstr "Sem fechamento de loop para break ou continue"
+
+#: mcs/mcs/statement.cs:2098
 msgid "A fixed statement cannot use an implicitly typed local variable"
 msgstr ""
 "Uma declaração fixa não pode utilizar uma variável local tipada "
 "implicitamente"
 
-#: mcs/mcs/statement.cs:1296
+#: mcs/mcs/statement.cs:2103
 msgid "An implicitly typed local variable cannot be a constant"
 msgstr "Uma variável local implicitamente tipada não pode ser uma constante"
 
-#: mcs/mcs/statement.cs:1301
+#: mcs/mcs/statement.cs:2108
 msgid ""
 "An implicitly typed local variable declarator must include an initializer"
 msgstr ""
 "Uma declaração de variável local tipada implicitamente deve incluir um "
 "inicializador"
 
-#: mcs/mcs/statement.cs:1306
+#: mcs/mcs/statement.cs:2113
 msgid ""
 "An implicitly typed local variable declaration cannot include multiple "
 "declarators"
@@ -4090,7 +3893,7 @@ msgstr ""
 "Uma declaração de variável local tipada implicitamente não pode incluir "
 "múltiplos declaradores"
 
-#: mcs/mcs/statement.cs:1876
+#: mcs/mcs/statement.cs:2754
 #, csharp-format
 msgid ""
 "A local variable named `{0}' cannot be declared in this scope because it "
@@ -4101,30 +3904,18 @@ msgstr ""
 "esta daria um significado distinto para \"{0}\", que já é usada em um escopo "
 "\"{1}\" para denotar outra coisa"
 
-#: mcs/mcs/statement.cs:1887
-#, csharp-format
-msgid ""
-"`{0}': An anonymous type cannot have multiple properties with the same name"
-msgstr ""
-"\"{0}\": Um tipo anônimo não pode ter múltiplas propriedades com o mesmo nome"
-
-#: mcs/mcs/statement.cs:1890
-#, csharp-format
-msgid "The parameter name `{0}' is a duplicate"
-msgstr "O nome do parâmetro \"{0}\" é uma duplicata"
-
-#: mcs/mcs/statement.cs:1897
+#: mcs/mcs/statement.cs:2766
 #, csharp-format
 msgid "A local variable named `{0}' is already defined in this scope"
 msgstr "Uma variável local nomeada \"{0}\" já foi definida neste escopo"
 
-#: mcs/mcs/statement.cs:1903
+#: mcs/mcs/statement.cs:2773
 #, fuzzy, csharp-format
 msgid ""
 "The type parameter name `{0}' is the same as local variable or parameter name"
 msgstr "O nome do tipo parâmetro \"{0}\" é o mesmo que \"{1}\""
 
-#: mcs/mcs/statement.cs:2477
+#: mcs/mcs/statement.cs:3612
 #, csharp-format
 msgid ""
 "The out parameter `{0}' must be assigned to before control leaves the "
@@ -4133,60 +3924,73 @@ msgstr ""
 "O parâmetro externo \"{0}\" deve estar atribuída para antes que o controle "
 "deixe o método atual"
 
-#: mcs/mcs/statement.cs:2574
-#, csharp-format
-msgid "`{0}': not all code paths return a value"
-msgstr "\"{0}\": nem todos caminhos de códigos devolvem um valor"
+#: mcs/mcs/statement.cs:3866
+#, fuzzy
+msgid "Async methods cannot have ref or out parameters"
+msgstr "Iteradores não podem ter parâmetros ref ou out"
 
-#: mcs/mcs/statement.cs:2578
-#, csharp-format
-msgid "Not all code paths return a value in anonymous method of type `{0}'"
-msgstr ""
-"Nem todos os caminhos de código devolvem um valor num método anônimo do tipo "
-"\"{0}\""
+#: mcs/mcs/statement.cs:3872
+#, fuzzy
+msgid "__arglist is not allowed in parameter list of async methods"
+msgstr "__arglist não é permitida em parâmetros de listas de iteradores"
+
+#: mcs/mcs/statement.cs:3878
+#, fuzzy
+msgid "Async methods cannot have unsafe parameters"
+msgstr "Iteradores não podem ter parâmetros ref ou out"
 
-#: mcs/mcs/statement.cs:2749
+#: mcs/mcs/statement.cs:4075
 #, csharp-format
 msgid "The label `{0}' is a duplicate"
 msgstr "O rótulo \"{0}\" é uma duplicata"
 
-#: mcs/mcs/statement.cs:2758 mcs/mcs/statement.cs:2769
+#: mcs/mcs/statement.cs:4084 mcs/mcs/statement.cs:4095
 #, csharp-format
 msgid ""
 "The label `{0}' shadows another label by the same name in a contained scope"
 msgstr ""
 "O rótulo \"{0}\" esconde outro rótulo pelo mesmo nome em um escopo contido"
 
-#: mcs/mcs/statement.cs:3089
+#: mcs/mcs/statement.cs:4298
 #, csharp-format
-msgid "The label `case {0}:' already occurs in this switch statement"
+msgid "`{0}': not all code paths return a value"
+msgstr "\"{0}\": nem todos caminhos de códigos devolvem um valor"
+
+#: mcs/mcs/statement.cs:4416
+#, fuzzy, csharp-format
+msgid "The label `{0}' already occurs in this switch statement"
 msgstr "O rótulo \"case {0}:\" já ocorre nesta declaração de switch"
 
-#: mcs/mcs/statement.cs:3630
+#: mcs/mcs/statement.cs:4540
+#, fuzzy, csharp-format
+msgid "Control cannot fall through from one case label `{0}' to another"
+msgstr "Controle não pode passar de um rótulo de caso para outro"
+
+#: mcs/mcs/statement.cs:4919
 #, csharp-format
 msgid ""
 "A switch expression of type `{0}' cannot be converted to an integral type, "
 "bool, char, string, enum or nullable type"
 msgstr ""
 
-#: mcs/mcs/statement.cs:4115
+#: mcs/mcs/statement.cs:5683
 #, csharp-format
 msgid "`{0}' is not a reference type as required by the lock statement"
 msgstr ""
 "\"{0}\" não é um tipo de referência como necessário para a declaração lock"
 
-#: mcs/mcs/statement.cs:4456
+#: mcs/mcs/statement.cs:6064
 msgid "The type of locals declared in a fixed statement must be a pointer type"
 msgstr ""
 "O tipo de locais declarados em uma declaração fixa devem ser tipos ponteiros"
 
-#: mcs/mcs/statement.cs:4472
+#: mcs/mcs/statement.cs:6080
 msgid ""
 "The right hand side of a fixed statement assignment may not be a cast "
 "expression"
 msgstr "O lado direito de uma declaração fixa não deve ser uma expressão cast"
 
-#: mcs/mcs/statement.cs:4543
+#: mcs/mcs/statement.cs:6150
 msgid ""
 "You cannot use the fixed statement to take the address of an already fixed "
 "expression"
@@ -4194,7 +3998,7 @@ msgstr ""
 "Você não pode usar a declaração fixa para pegar o endereço de uma expressão "
 "já fixa"
 
-#: mcs/mcs/statement.cs:4857
+#: mcs/mcs/statement.cs:6673
 #, csharp-format
 msgid ""
 "A previous catch clause already catches all exceptions of this or a super "
@@ -4203,7 +4007,7 @@ msgstr ""
 "Uma cláusula catch anterior já pega todas as exceções do this ou um tipo "
 "super \"{0}\""
 
-#: mcs/mcs/statement.cs:5030
+#: mcs/mcs/statement.cs:6851
 #, csharp-format
 msgid ""
 "`{0}': type used in a using statement must be implicitly convertible to "
@@ -4212,7 +4016,7 @@ msgstr ""
 "\"{0}\": tipo utilizado em uma declaração em uso deve ser implicitamente "
 "conversível para \"System.IDisposable\""
 
-#: mcs/mcs/statement.cs:5452
+#: mcs/mcs/statement.cs:7252
 #, csharp-format
 msgid ""
 "foreach statement requires that the return type `{0}' of `{1}' must have a "
@@ -4221,7 +4025,7 @@ msgstr ""
 "declaração do foreach requer que o tipo de retorno \"{0}\" de \"{1}\" deve "
 "ter um método apropriado público MoveNext e a propriedade pública Current"
 
-#: mcs/mcs/statement.cs:5492
+#: mcs/mcs/statement.cs:7296
 #, csharp-format
 msgid ""
 "foreach statement cannot operate on variables of type `{0}' because it "
@@ -4232,7 +4036,7 @@ msgstr ""
 "estas contém múltiplas implementações de \"{1}\". Tente um casting para uma "
 "implementação específica"
 
-#: mcs/mcs/statement.cs:5517
+#: mcs/mcs/statement.cs:7318
 #, fuzzy, csharp-format
 msgid ""
 "foreach statement cannot operate on variables of type `{0}' because it does "
@@ -4241,26 +4045,40 @@ msgstr ""
 "declaração do foreach não pode operar em variáveis do tipo \"{0}\" pois "
 "estas não contém uma definição para \"GetEnumerator\" ou não estão acessíveis"
 
-#: mcs/mcs/statement.cs:5723
+#: mcs/mcs/statement.cs:7553
 msgid "Use of null is not valid in this context"
 msgstr "Uso do null é inválido neste contexto"
 
-#: mcs/mcs/statement.cs:5733
+#: mcs/mcs/statement.cs:7565
 #, csharp-format
 msgid "Foreach statement cannot operate on a `{0}'"
 msgstr "Declaração do foreach não pode operar em um \"{0}\""
 
-#: mcs/mcs/typemanager.cs:396
+#: mcs/mcs/typemanager.cs:796
 #, csharp-format
 msgid "The predefined type `{0}.{1}' is not defined or imported"
 msgstr "O tipo predefinido \"{0}.{1}\" não está definido ou importado"
 
-#: mcs/mcs/typemanager.cs:402
+#: mcs/mcs/typemanager.cs:841
+#, fuzzy, csharp-format
+msgid ""
+"The predefined type `{0}.{1}' is defined multiple times. Using definition "
+"from `{2}'"
+msgstr "O tipo importado \"{0}\" é definido múltiplas vezes"
+
+#: mcs/mcs/typemanager.cs:852
+#, fuzzy, csharp-format
+msgid ""
+"The predefined type `{0}.{1}' is defined in an assembly that is not "
+"referenced."
+msgstr "O tipo predefinido \"{0}.{1}\" não está definido ou importado"
+
+#: mcs/mcs/typemanager.cs:862
 #, csharp-format
 msgid "The predefined type `{0}.{1}' is not declared correctly"
 msgstr "O tipo predefinido \"{0}.{1}\" não está declarado corretamente"
 
-#: mcs/mcs/typemanager.cs:581
+#: mcs/mcs/typemanager.cs:988
 #, csharp-format
 msgid ""
 "The compiler required member `{0}.{1}{2}' could not be found or is "
@@ -4269,7 +4087,7 @@ msgstr ""
 "O membro necessário para o compilador \"{0}.{1}{2}\" não pode ser encontrado "
 "ou é inacessível"
 
-#: mcs/mcs/typemanager.cs:889
+#: mcs/mcs/typemanager.cs:1107
 #, csharp-format
 msgid ""
 "Cannot take the address of, get the size of, or declare a pointer to a "
@@ -4278,6 +4096,439 @@ msgstr ""
 "Não foi possível obter o acesso de, conseguir o tamanho de, ou declarar um "
 "ponteiro para um tipo gerenciado \"{0}\""
 
+#~ msgid "Not all code paths return a value in anonymous method of type `{0}'"
+#~ msgstr ""
+#~ "Nem todos os caminhos de código devolvem um valor num método anônimo do "
+#~ "tipo \"{0}\""
+
+#, fuzzy
+#~ msgid ""
+#~ "Only assignment, call, increment, decrement, await, and new object "
+#~ "expressions can be used as a statement"
+#~ msgstr ""
+#~ "Apenas expressões de atribuição, chamada, incremento, decretomento e "
+#~ "novos elementos podem ser usadas como uma declaração"
+
+#~ msgid "Source file `{0}' could not be found"
+#~ msgstr "Arquivo fonte \"{0}\" não pôde ser encontrado"
+
+#~ msgid "Source file `{0}' is a binary file and not a text file"
+#~ msgstr "Arquivo fonte \"{0}\" é um arquivo binário e não um arquivo texto"
+
+#~ msgid ""
+#~ "The type or namespace name `{0}' could not be found. Are you missing a "
+#~ "using directive or an assembly reference?"
+#~ msgstr ""
+#~ "O tipo ou nome de namespace \"{0}\" não pôde ser encontrado. Você está "
+#~ "esquecendo de uma diretiva em uso ou uma referência do assembly?"
+
+#, fuzzy
+#~ msgid "An expression tree cannot contain an await operator"
+#~ msgstr "Uma árvore de expressão não pode conter um operador de atribuição"
+
+#~ msgid ""
+#~ "`{0}': Extension methods cannot be declared without a reference to System."
+#~ "Core.dll assembly. Add the assembly reference or remove `this' modifer "
+#~ "from the first parameter"
+#~ msgstr ""
+#~ "\"{0}\": Métodos de extensão não podem ser declarados sem uma referência "
+#~ "ao assembly System.Core.dll. Adicione a referência do assembly ou remova "
+#~ "o modificador \"this\" do primeiro parâmetro"
+
+#~ msgid "An extern alias declaration must precede all other elements"
+#~ msgstr "Um alias externo deve preceder todos os outros elementos"
+
+#~ msgid ""
+#~ "`{0}' is not a valid attribute location for this declaration. Valid "
+#~ "attribute locations for this declaration are `{1}'"
+#~ msgstr ""
+#~ "\"{0}\" não é uma localização de atributo válido para esta declaração. "
+#~ "Localizações de atributos válidos para esta declaração são \"{1}\""
+
+#, fuzzy
+#~ msgid "A namespace declaration cannot have modifiers or attributes"
+#~ msgstr "Um parâmetro externo não pode ter o atributo \"In\""
+
+#, fuzzy
+#~ msgid ""
+#~ "Assembly and module attributes must precede all other elements except "
+#~ "using clauses and extern alias declarations"
+#~ msgstr ""
+#~ "Uma cláusula em uso deve preceder todos os outros elementos do namespace, "
+#~ "exceto declarações de alias externos"
+
+#, fuzzy
+#~ msgid "The constant `{0}' cannot be marked static"
+#~ msgstr "O método abstrato \"{0}\" não pode ser marcado como virtual"
+
+#, fuzzy
+#~ msgid "Fields cannot have void type"
+#~ msgstr "Campo ou propriedade não podem ser do tipo \"{0}\""
+
+#, fuzzy
+#~ msgid "Value or constant expected"
+#~ msgstr "Um valor constante é esperado"
+
+#, fuzzy
+#~ msgid "`{0}': interface members cannot have a definition"
+#~ msgstr "\"{0}\": evento abstrato não pode ter um inicializador"
+
+#, fuzzy
+#~ msgid ""
+#~ "A params parameter must be the last parameter in a formal parameter list"
+#~ msgstr "O parâmetro params deve ser um array de uma dimensão"
+
+#, fuzzy
+#~ msgid "Optional parameter cannot precede required parameters"
+#~ msgstr "Iteradores não podem ter parâmetros ref ou out"
+
+#, fuzzy
+#~ msgid "Cannot specify a default value for the `{0}' parameter"
+#~ msgstr ""
+#~ "Não foi possível especificar o atributo \"DefaultMember\" no tipo "
+#~ "contendo um indexador"
+
+#, fuzzy
+#~ msgid "Optional parameter is not valid in this context"
+#~ msgstr "Uso do null é inválido neste contexto"
+
+#, fuzzy
+#~ msgid "A parameter cannot have specified more than one modifier"
+#~ msgstr ""
+#~ "Um parâmetro de árvore de expressão não pode usar modificadores \"ref\" "
+#~ "ou \"out\""
+
+#, fuzzy
+#~ msgid "Cannot specify a default value for a parameter array"
+#~ msgstr ""
+#~ "Não foi possível especificar o atributo \"DefaultMember\" no tipo "
+#~ "contendo um indexador"
+
+#, fuzzy
+#~ msgid "The `params' modifier is not allowed in current context"
+#~ msgstr "O nome \"{0}\" não existe no contexto atual"
+
+#, fuzzy
+#~ msgid "The params parameter cannot be declared as ref or out"
+#~ msgstr "O tipo \"{0}\" não pode ser declarado const"
+
+#, fuzzy
+#~ msgid "__arglist is not valid in this context"
+#~ msgstr "Uso do null é inválido neste contexto"
+
+#, fuzzy
+#~ msgid "`{0}': property or indexer cannot have void type"
+#~ msgstr ""
+#~ "A propriedade ou o indexador somente leitura \"{0}\" não pôde ser "
+#~ "atribuído"
+
+#, fuzzy
+#~ msgid "`{0}': property or indexer must have at least one accessor"
+#~ msgstr "\"{0}\": propriedades abstratas não podem ter acessores privados"
+
+#, fuzzy
+#~ msgid "A get or set accessor expected"
+#~ msgstr "Um valor constante é esperado"
+
+#, fuzzy
+#~ msgid "Interfaces cannot contain fields or constants"
+#~ msgstr "Structs não podem conter construtores explícitos sem parâmetros"
+
+#, fuzzy
+#~ msgid "Interfaces cannot contain operators"
+#~ msgstr ""
+#~ "\"{0}\": Classes estáticas não podem conter operadores definidos pelo "
+#~ "usuário"
+
+#, fuzzy
+#~ msgid "Interfaces cannot contain contructors"
+#~ msgstr "\"{0}\": Classes estáticas não podem conter um destrutor"
+
+#, fuzzy
+#~ msgid "User-defined operators cannot return void"
+#~ msgstr ""
+#~ "Operador definido pelo usuário \"{0}\" deve ser declarado estático e "
+#~ "público"
+
+#, fuzzy
+#~ msgid "Overloaded unary operator `{0}' takes one parameter"
+#~ msgstr "Sem sobrecarga para o método \"{0}\" aceitar os argumentos \"{1}\""
+
+#, fuzzy
+#~ msgid "Overloaded binary operator `{0}' takes two parameters"
+#~ msgstr "Sem sobrecarga para o método \"{0}\" aceitar os argumentos \"{1}\""
+
+#~ msgid "Class, struct, or interface method must have a return type"
+#~ msgstr ""
+#~ "Classes, structs ou métodos de interface devem ter um tipo de retorno"
+
+#, fuzzy
+#~ msgid "`{0}': static constructor cannot have an access modifier"
+#~ msgstr "\"{0}\": propriedades abstratas não podem ter acessores privados"
+
+#, fuzzy
+#~ msgid "Only class types can contain destructor"
+#~ msgstr "\"{0}\": Classes estáticas não podem conter um destrutor"
+
+#, fuzzy
+#~ msgid ""
+#~ "`{0}': An explicit interface implementation of an event must use property "
+#~ "syntax"
+#~ msgstr ""
+#~ "\"{0}\": a implementação explicita da interface não pode fornecer o "
+#~ "modificador de parâmetros"
+
+#, fuzzy
+#~ msgid "`{0}': event in interface cannot have an initializer"
+#~ msgstr "\"{0}\": evento abstrato não pode ter um inicializador"
+
+#~ msgid "`{0}': abstract event cannot have an initializer"
+#~ msgstr "\"{0}\": evento abstrato não pode ter um inicializador"
+
+#, fuzzy
+#~ msgid "`{0}': event property must have both add and remove accessors"
+#~ msgstr "\"{0}\": propriedades abstratas não podem ter acessores privados"
+
+#~ msgid "Type parameter declaration must be an identifier not a type"
+#~ msgstr ""
+#~ "A declaração de um tipo parâmetro deve ser um identificador e não um tipo"
+
+#~ msgid "Invalid parameter type `void'"
+#~ msgstr "Tipo de parâmetro inválido \"void\""
+
+#, fuzzy
+#~ msgid "Invalid base type `{0}'"
+#~ msgstr "Tipo de parâmetro inválido \"void\""
+
+#, fuzzy
+#~ msgid "Named argument `{0}' specified multiple times"
+#~ msgstr "Arquivo de código fonte \"{0}\" especificado múltiplas vezes"
+
+#, fuzzy
+#~ msgid "An argument is missing"
+#~ msgstr "Argumento \"#{0}\" não encontrou o modificador \"{1}\""
+
+#~ msgid "More than one protection modifier specified"
+#~ msgstr "Mais de um modificador de proteção especificado"
+
+#, fuzzy
+#~ msgid "Keyword `new' is not allowed on namespace elements"
+#~ msgstr "Palavra chave \"new\" não é permitida em elementos do namespace"
+
+#, fuzzy
+#~ msgid ""
+#~ "A constraint clause has already been specified for type parameter `{0}'"
+#~ msgstr ""
+#~ "Um tipo aninhado não pode ser especificado através de um tipo parâmetro "
+#~ "\"{0}\""
+
+#, fuzzy
+#~ msgid "The `new()' constraint must be the last constraint specified"
+#~ msgstr "A restrição new() deve ser a última restrição especificada"
+
+#~ msgid ""
+#~ "The `class' or `struct' constraint must be the first constraint specified"
+#~ msgstr ""
+#~ "As restrições \"class\" ou \"struct\" devem ser as primeiras restrições "
+#~ "especificadas"
+
+#~ msgid "The `new()' constraint cannot be used with the `struct' constraint"
+#~ msgstr ""
+#~ "A restrição \"new()\" não pode ser utilizada com a restrição \"struct\""
+
+#, fuzzy
+#~ msgid "Invalid constraint type `{0}'"
+#~ msgstr "Símbolo de definição condicional \"{0}\" inválido"
+
+#, fuzzy
+#~ msgid "; expected"
+#~ msgstr "Nome do método esperado"
+
+#~ msgid "Try statement already has an empty catch block"
+#~ msgstr "A declaração do try já tem um bloco catch vazio"
+
+#, fuzzy
+#~ msgid "The parameter modifier `{0}' is not valid in this context"
+#~ msgstr "Código de página \"{0}\" é inválido ou não está instalado"
+
+#, fuzzy
+#~ msgid "Duplicate parameter modifier `{0}'"
+#~ msgstr "Tipo de parâmetro duplicado \"{0}\""
+
+#, fuzzy
+#~ msgid "Type expected"
+#~ msgstr "Nome do método esperado"
+
+#~ msgid ""
+#~ "Unsafe code requires the `unsafe' command line option to be specified"
+#~ msgstr ""
+#~ "Código inseguro requer a opção de linha de comando \"unsafe\" para ser "
+#~ "especificada"
+
+#, fuzzy
+#~ msgid "Parsing error"
+#~ msgstr "Erro na Análise de Detecção"
+
+#, fuzzy
+#~ msgid "Identifier expected, `{0}' is a keyword"
+#~ msgstr "Identificador esperado: {0}"
+
+#~ msgid ""
+#~ "Invalid target type for -target. Valid options are `exe', `winexe', "
+#~ "`library' or `module'"
+#~ msgstr ""
+#~ "Tipo alvo inválido para -target. Opções válidas são \"exe\", \"winexe\", "
+#~ "\"library\" ou \"module\""
+
+#~ msgid "Response file `"
+#~ msgstr "Arquivo de resposta \""
+
+#~ msgid "Unable to open response file: "
+#~ msgstr "Não foi possível abrir arquivo de resposta: "
+
+#~ msgid "Warning level must be in the range 0-4"
+#~ msgstr "Nível de avisis deve estar no intervalo 0-4"
+
+#~ msgid "Compatibility: Use -main:CLASS instead of --main CLASS or -m CLASS"
+#~ msgstr ""
+#~ "Compatibilidade: Utilize -main:CLASSE ao invés de --main CLASSE ou -m "
+#~ "CLASSE"
+
+#~ msgid "Compatibility: Use -unsafe instead of --unsafe"
+#~ msgstr "Compatibilidade: Utilize -unsafe ao invés de --unsafe"
+
+#~ msgid "Compatibility: Use -d:SYMBOL instead of --define SYMBOL"
+#~ msgstr "Compatibilidade: Utilize -d:SÍMBOLO ao invés de --define SÍMBOLO"
+
+#~ msgid "Compatibility: Use -out:FILE instead of --output FILE or -o FILE"
+#~ msgstr ""
+#~ "Compatibilidade: Utilize -out ARQUIVO ao invés de --output ARQUIVO ou -o "
+#~ "ARQUIVO"
+
+#~ msgid "Compatibility: Use -checked instead of --checked"
+#~ msgstr "Compatibilidade: Utilize -checked ao invés de --checked"
+
+#~ msgid "Compatibility: Use -linkres:VALUE instead of --linkres VALUE"
+#~ msgstr "Compatibilidade: Utilize -linkres:VALOR ao invés de --linkres VALOR"
+
+#~ msgid "Missing argument to --linkres"
+#~ msgstr "Argumento faltando para --linkres"
+
+#~ msgid "Compatibility: Use -res:VALUE instead of --res VALUE"
+#~ msgstr "Compatibilidade: Utilize -res:VALOR ao invés de --res VALOR"
+
+#~ msgid "Missing argument to --resource"
+#~ msgstr "Argumento faltando para --resource"
+
+#~ msgid "Compatibility: Use -target:KIND instead of --target KIND"
+#~ msgstr "Compatibilidade: Utilize -target:KIND ao invés de --target KIND"
+
+#~ msgid "Compatibility: Use -r:LIBRARY instead of -r library"
+#~ msgstr "Compatibilidade: Utilize -r:BIBLIOTECA ao invés de -r biblioteca"
+
+#~ msgid "Compatibility: Use -lib:ARG instead of --L arg"
+#~ msgstr "Compatibilidade: Utilize -lib:ARG ao invés de --L arg"
+
+#~ msgid "Compatibility: Use -nostdlib instead of --nostdlib"
+#~ msgstr "Compatibilidade: Utilize -nostdlib ao invés de --nostdlib"
+
+#~ msgid "Compatibility: Use -nowarn instead of --nowarn"
+#~ msgstr "Compatibilidade: Utilize -nowarn ao invés de --nowarn"
+
+#~ msgid "Compatibility: Use -warn:LEVEL instead of --wlevel LEVEL"
+#~ msgstr "Compatibilidade: Utilize -warn:NÍVEL ao invés de --wlevel NÍVEL"
+
+#~ msgid "--wlevel requires a value from 0 to 4"
+#~ msgstr "--wlevel requer um valor de 0 a 4"
+
+#~ msgid "--mcs-debug requires an argument"
+#~ msgstr "--mcs-debug requer um argumento"
+
+#~ msgid "Invalid argument to --mcs-debug"
+#~ msgstr "Argumento inválido para --mcs-debug"
+
+#~ msgid "Compatibility: Use -recurse:PATTERN option instead --recurse PATTERN"
+#~ msgstr ""
+#~ "Compatibilidade: Utilize a opção -recurse:PADRÂO ao invés de --recurse "
+#~ "PADRÃO"
+
+#~ msgid "--recurse requires an argument"
+#~ msgstr "--recurse requer um argumento"
+
+#~ msgid "Compatibility: Use -debug option instead of -g or --debug"
+#~ msgstr "Compatibilidade: Utilize a opção -debug ao invés de -g ou --debug"
+
+#~ msgid "Compatibility: Use -noconfig option instead of --noconfig"
+#~ msgstr "Compatibilidade: Utilize a opção -noconfig ao invés de --noconfig"
+
+#~ msgid "Invalid conditional define symbol `{0}'"
+#~ msgstr "Símbolo de definição condicional \"{0}\" inválido"
+
+#~ msgid ""
+#~ "Invalid resource visibility option `{0}'. Use either `public' or "
+#~ "`private' instead"
+#~ msgstr ""
+#~ "Opção de visibilidade de recurso \"{0}\" inválida. Utilize, ao invés "
+#~ "disto, \"public\" ou \"private\""
+
+#~ msgid "Wrong number of arguments for option `{0}'"
+#~ msgstr "Número de argumentos incorreto para a opção \"{0}\""
+
+#~ msgid ""
+#~ "Cannot specify the `win32res' and the `win32ico' compiler option at the "
+#~ "same time"
+#~ msgstr ""
+#~ "Não se pode especificar as opções de compilador \"win32res\" e o "
+#~ "\"win32ico\" ao mesmo tempo"
+
+#, fuzzy
+#~ msgid ""
+#~ "Invalid platform type for -platform. Valid options are `anycpu', `x86', "
+#~ "`x64' or `itanium'"
+#~ msgstr ""
+#~ "Tipo alvo inválido para -target. Opções válidas são \"exe\", \"winexe\", "
+#~ "\"library\" ou \"module\""
+
+#, fuzzy
+#~ msgid ""
+#~ "Invalid -langversion option `{0}'. It must be `ISO-1', `ISO-2', `3' or "
+#~ "`Default'"
+#~ msgstr ""
+#~ "Opção \"{0}\" inválida para /langversion. Este deve ser \"ISO-1\" ou "
+#~ "\"ISO-2\" ou \"Default\""
+
+#~ msgid "Code page `{0}' is invalid or not installed"
+#~ msgstr "Código de página \"{0}\" é inválido ou não está instalado"
+
+#~ msgid "Unrecognized command-line option: `{0}'"
+#~ msgstr "Opção de linha de comando não reconhecida: \"{0}\""
+
+#, fuzzy
+#~ msgid "Missing argument for `{0}' option"
+#~ msgstr "Argumento faltando para --linkres"
+
+#, fuzzy
+#~ msgid "Invalid reference alias `{0}='. Missing filename"
+#~ msgstr "Apelido de referência inválido"
+
+#, fuzzy
+#~ msgid ""
+#~ "Invalid extern alias for -reference. Alias `{0}' is not a valid identifier"
+#~ msgstr "Apelido externo inválido para /reference. Apelido \"'"
+
+#~ msgid "The resource identifier `{0}' has already been used in this assembly"
+#~ msgstr "O identificador do recurso \"{0}\" já foi utilizado neste assembly"
+
+#~ msgid "Ambiguity between `{0}' and `{1}'"
+#~ msgstr "Ambiguidade entre \"{0}\" e \"{1}\""
+
+#~ msgid "Could not access the key inside the container `"
+#~ msgstr ""
+#~ "Não foi possível acessar a chave dentro do tipo no qual está definido"
+
+#~ msgid "The parameter name `{0}' is a duplicate"
+#~ msgstr "O nome do parâmetro \"{0}\" é uma duplicata"
+
 #~ msgid ""
 #~ "`{0}' is marked as an external but has no DllImport attribute. Consider "
 #~ "adding a DllImport attribute to specify the external implementation"
@@ -4297,13 +4548,6 @@ msgstr ""
 #~ msgid "Can not use a type parameter in an attribute"
 #~ msgstr "Não é possível usar um parâmetro de tipo em um atributo"
 
-#~ msgid ""
-#~ "Added modules must be marked with the CLSCompliant attribute to match the "
-#~ "assembly"
-#~ msgstr ""
-#~ "Módulos adicionados devem ser marcados com o atributo CLSCompliant para "
-#~ "coincidir com o assembly"
-
 #~ msgid ""
 #~ "`{0}': Any identifier with double underscores cannot be used when ISO "
 #~ "language version mode is specified"
@@ -4343,45 +4587,9 @@ msgstr ""
 #~ msgid "Couldn't delay-sign the assembly with the '"
 #~ msgstr "Não foi possível fazer o delay-sign do assembly com o \""
 
-#~ msgid "Could not write to file `"
-#~ msgstr "Não foi possível escrever para o arquivo \""
-
-#~ msgid ""
-#~ "Option `{0}' overrides attribute `{1}' given in a source file or added "
-#~ "module"
-#~ msgstr ""
-#~ "Opção \"{0}\" sobrescreve atributo \"{1}\" dado num código-fonte ou "
-#~ "módulo adicionado"
-
-#~ msgid ""
-#~ "Could not sign the assembly. ECMA key can only be used to delay-sign "
-#~ "assemblies"
-#~ msgstr ""
-#~ "Não foi possível assinar o assembly. Chave ECMA pode apenas ser utilizada "
-#~ "para assinar o adiamento do assembly"
-
-#~ msgid "Error during assembly signing. "
-#~ msgstr "Erro durante a assinatura do assembly. "
-
 #~ msgid "Friend assembly reference `"
 #~ msgstr "Referência amiga do assembly \""
 
-#~ msgid "Invalid type specified as an argument for TypeForwardedTo attribute"
-#~ msgstr ""
-#~ "Tipo inválido especificado com um argumento para um atributo "
-#~ "TypeForwardedTo"
-
-#~ msgid "A duplicate type forward of type `{0}'"
-#~ msgstr "Um encaminhamento de tipo duplicado do tipo \"{0}\""
-
-#~ msgid "Cannot forward type `{0}' because it is defined in this assembly"
-#~ msgstr ""
-#~ "Não foi possível encaminhar o tipo \"{0}\" porque este está definido "
-#~ "neste assembly"
-
-#~ msgid "Cannot forward type `{0}' because it is a nested type"
-#~ msgstr "Não foi possível encaminhar tipo \"{0}\" por que é um tipo aninhado"
-
 #~ msgid "Cannot forward generic type `{0}'"
 #~ msgstr "Não foi possível encaminhar tipo genérico \"{0}\""
 
@@ -4397,16 +4605,6 @@ msgstr ""
 #~ msgid "cannot find metadata file `{0}'"
 #~ msgstr "não foi possível encontrar arquivo de metadados \"{0}\""
 
-#~ msgid "file `{0}' has invalid `{1}' metadata"
-#~ msgstr "arquivo \"{0}\" possui metadados inválidos \"{1}\""
-
-#~ msgid ""
-#~ "Referenced file `{0}' is not an assembly. Consider using `-addmodule' "
-#~ "option instead"
-#~ msgstr ""
-#~ "Arquivo referenciado \"{0}\" não é um assembly. Considere, ao invés "
-#~ "disso, utilizar a opção \"-addmodule\""
-
 #~ msgid "Compatibility: Use -warnaserror: option instead of --werror"
 #~ msgstr "Compatibilidade: Utilize a opção -warnaserror: ao invés de --werror"
 
@@ -4434,47 +4632,9 @@ msgstr ""
 #~ msgid "/nowarn requires an argument"
 #~ msgstr "/nowarn requer um argumento"
 
-#~ msgid "Could not find `{0}' specified for Main method"
-#~ msgstr ""
-#~ "Não foi possível encontrar o \"{0}\" especificado para o método Main"
-
-#~ msgid "`{0}' specified for Main method must be a valid class or struct"
-#~ msgstr ""
-#~ "\"{0}\" especificado para o método Main deve ser uma classe válida ou "
-#~ "struct"
-
-#~ msgid "`{0}' does not have a suitable static Main method"
-#~ msgstr "\"{0}\" não possue um método Main estático apropriado"
-
-#~ msgid ""
-#~ "Program `{0}' does not contain a static `Main' method suitable for an "
-#~ "entry point"
-#~ msgstr ""
-#~ "Programa \"{0}\" não contém um método estático \"Main\" apropriado para "
-#~ "um ponto de entrada"
-
-#~ msgid "Cannot specify -main if building a module or library"
-#~ msgstr ""
-#~ "Não é possível especificar -main se estiver compilando um módulo ou "
-#~ "biblioteca"
-
-#~ msgid "Cannot link resource file when building a module"
-#~ msgstr ""
-#~ "Não é possível apontar arquivo de recursos quando estiver compilando um "
-#~ "módulo"
-
-#~ msgid "Error reading resource file `{0}'"
-#~ msgstr "Erro ao ler arquivo de recurso \"{0}\""
-
 #~ msgid "Using the generic type `{0}' requires {1} type arguments"
 #~ msgstr "Usar o tipo genérico \"{0}\" requer {1} argumentos de tipo"
 
-#~ msgid "`{0}' is a `{1}' but a `{2}' was expected"
-#~ msgstr "\"{0}\" é um \"{1}\" mas um \"{2}\" era esperado"
-
-#~ msgid "The variable `{0}' cannot be used with type arguments"
-#~ msgstr "A variável \"{0}\" não pode ser utilizada com argumentos de tipo"
-
 #~ msgid "The property `{0}' cannot be used with type arguments"
 #~ msgstr "A propriedade \"{0}\" não pode ser utilizada com argumentos de tipo"
 
@@ -4591,15 +4751,6 @@ msgstr ""
 #~ msgid "Internal error: No Dispose method which takes 0 parameters."
 #~ msgstr "Erro interno: Nenhum método Dispose que pegue 0 parâmetros."
 
-#~ msgid ""
-#~ "Friend access was granted to `{0}', but the output assembly is named `"
-#~ "{1}'. Try adding a reference to `{0}' or change the output assembly name "
-#~ "to match it"
-#~ msgstr ""
-#~ "Acesso amigável foi permitido para \"{0}\", mas a saída do assembly é "
-#~ "nomeada \"{1}\".  Tente adicionar uma referência para \"{0}\"  ou alterar "
-#~ "a saída do assembly para igualar isso"
-
 #~ msgid ""
 #~ "Struct member `{0}.{1}' of type `{2}' causes a cycle in the struct layout"
 #~ msgstr ""