forked from OSchip/llvm-project
b5f2c4e45b
parameters with default arguments. Directly follow the wording by relaxing the AST invariant that all parameters after one with a default arguemnt also have default arguments, and removing the diagnostic on missing default arguments on a pack-expanded parameter following a parameter with a default argument. Testing also revealed that we need to special-case explicit specializations of templates with a pack following a parameter with a default argument, as such explicit specializations are otherwise impossible to write. The standard wording doesn't address this case; a issue has been filed. This exposed a bug where we would briefly consider a parameter to have no default argument while we parse a delay-parsed default argument for that parameter, which is also fixed. Partially incorporates a patch by Raul Tambre. |
||
---|---|---|
.. | ||
expr.call | ||
expr.const.cast | ||
expr.dynamic.cast | ||
expr.ref | ||
expr.reinterpret.cast | ||
expr.static.cast | ||
expr.type.conv |