[cfe-dev] Bug 18275 - Incorrect const qualifier behavior in definition.

Richard Smith metafoo at gmail.com
Tue Feb 18 10:56:07 PST 2014


This patch needs testcases.

Also, the way in which you're updating the type of the parameter doesn't
look correct -- there's no reason to think that the qualifiers will be
local.

We discussed cases like this at the WG21 meeting in Issaquah last week, and
decided that cv-stripping should *not* be applied to dependent parameter
types when determining whether two function templates are redeclarations.
Therefore:

  template<typename T> void f(T);
  template<typename T> void f(const T);

... are not redeclarations (because, for instance, they have different
parameter types when T = int[]).

That makes this problem easier to fix: if the parameter type within
PatternDecl is not dependent, set the type of the parameter in the
instantiated function to that type. Otherwise, leave it alone, since we
already know it will match.

On Tue Feb 18 2014 at 6:02:55 AM, suyog sarda <sardask01 at gmail.com> wrote:

> Gentle Ping !! Please help in reviewing the patch for bug 18275.
>
>
>
> --
> With regards,
> Suyog Sarda
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20140218/6ba95849/attachment.html>


More information about the cfe-commits mailing list