I think we're down to minor cosmetic issues:
On 10/21/2011 03:55 PM, Tom Tromey wrote:
There are a few spots like this that are missing a space before an open
paren.
+ if (DECL_LANGUAGE(decl) == lang_c)
Another one.
- if (warn_cxx0x_compat
- && C_RID_CODE (token->u.value) >= RID_FIRST_CXX0X
- && C_RID_CODE (token->u.value) <= RID_LAST_CXX0X)
....
This code doesn't seem to have actually changed, so let's not adjust
its whitespace.
+ /* Fill in PARMVEC with all of the parameters. */
+ parmvec = make_tree_vec (len);
Let's call it 'charvec'; the characters are template arguments, not
parameters.
+/* Parse a user-defined numeric constant. returns a call to a
user-defined
+ literal operator. */
+static tree
+cp_parser_userdef_numeric_literal (cp_parser *parser)
Add a blank line between comment and function.
While looking at the embedded string issue I found that if you apply
the suffix of a raw literal to a string it errors as it should but
the error complained that there were too many arguments for the
function. This was not helpful so I made a nicer error message.
+ if (result == error_mark_node)
+ error ("invalid string literal prefix %<\"%s\"%> for user-defined"
+ " raw literal operator %qD", TREE_STRING_POINTER (value),
name);
I think that we want a combination of the two errors; the new error
doesn't help the user to fix their code as much. It should remind
them that for a string literal the function is called with a length
argument as well.