https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104552
--- Comment #33 from rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> --- (In reply to Eric Gallager from comment #28) > (In reply to Roland Illig from comment #10) > > From aarch64-sve-builtins.cc: > > > error_at (location, "passing single vector %qT to argument %d" > > > " of %qE, which expects a tuple of %d vectors", > > > actual, argno + 1, fndecl, num_vectors); > > > > "%d vectors" must use the correct plural form, for the benefit of Polish, > > Russian, Arabic and several more. > > Richard Sandiford's string (624d0f07) OK, will fix. > (In reply to Roland Illig from comment #11) > > From aarch64-sve-builtins.cc: > > > passing %qT to argument %d of %qE, which expects a scalar integer > > > > "scalar integer" sounds redundant, this may be a copy-and-paste mistake from > > the message directly above, which says "scalar element". > > Likewise. I think it's worth keeping, at least in English. The error could otherwise end up being something like: passing “svint32_t” to argument 2 of foo, which expects an integer which IMO isn't as obvious: the crucial scalar vs. vector distinction is now implicit rather than explicit. > (In reply to Roland Illig from comment #12) > > From aarch64-sve-builtins.cc: > > > "capture by copy of SVE type %qT" > > > > This message should use the same grammar as the related ones, the word > > "cannot" is a useful indicator of the general error condition. > > Same author, different commit (02a32ab4) This follows the style of the corresponding error for incomplete types (cp/lambda.cc:add_capture). It seems OK to me, so I'd prefer to keep it for consistency. The “cannot” errors are for actions like new, delete and throw, so I think saying “the program cannot do this” makes sense there. But IMO it's at least borderline whether lambda captures are declarative or imperative. IMO they're more akin to parameter declarations. > (In reply to Roland Illig from comment #14) > > From aarch64.cc: > > > "invalid name (%qs) in %<target(\"arch=\")%> pragma or attribute" > > > > What is the point of having parentheses around %qs? That seems redundant to > > me. Not my string, but I quite like the parentheses TBH. :-) Translations don't need to keep them if they aren't natural for the target language.