tree.c (cp_build_qualified_type_real): Use CP_TYPE_QUALS to check whether we already have the type.
cp: * tree.c (cp_build_qualified_type_real): Use CP_TYPE_QUALS to check whether we already have the type. testsuite: * g++.old-deja/g++.pt/deduct5.C: New test. From-SVN: r39665
This commit is contained in:
parent
837a680a7a
commit
7773899b5f
@ -1,3 +1,8 @@
|
||||
2001-02-14 Nathan Sidwell <nathan@codesourcery.com>
|
||||
|
||||
* tree.c (cp_build_qualified_type_real): Use CP_TYPE_QUALS to
|
||||
check whether we already have the type.
|
||||
|
||||
2001-02-13 Mark Mitchell <mark@codesourcery.com>
|
||||
|
||||
* cp-tree.h (CLASSTYPE_DESTRUCTORS): Fix typo in comment.
|
||||
|
@ -516,7 +516,7 @@ cp_build_qualified_type_real (type, type_quals, complain)
|
||||
if (type == error_mark_node)
|
||||
return type;
|
||||
|
||||
if (type_quals == TYPE_QUALS (type))
|
||||
if (type_quals == CP_TYPE_QUALS (type))
|
||||
return type;
|
||||
|
||||
/* A restrict-qualified pointer type must be a pointer (or reference)
|
||||
|
@ -1,3 +1,7 @@
|
||||
2001-02-14 Nathan Sidwell <nathan@codesourcery.com>
|
||||
|
||||
* g++.old-deja/g++.pt/deduct5.C: New test.
|
||||
|
||||
2001-02-14 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* gcc.c-torture/execute/20010209-1.c: New test.
|
||||
|
33
gcc/testsuite/g++.old-deja/g++.pt/deduct5.C
Normal file
33
gcc/testsuite/g++.old-deja/g++.pt/deduct5.C
Normal file
@ -0,0 +1,33 @@
|
||||
// Copyright (C) 2000 Free Software Foundation, Inc.
|
||||
// Contributed by Nathan Sidwell 13 Feb 2001 <nathan@codesourcery.com>
|
||||
|
||||
// Bug 1960. We were not dealing with qualified array types properly.
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
template <typename T> int Foo (T const *ptr)
|
||||
{
|
||||
static int count = 0;
|
||||
|
||||
printf ("%s\n", __PRETTY_FUNCTION__);
|
||||
count++;
|
||||
|
||||
return count;
|
||||
}
|
||||
|
||||
int main ()
|
||||
{
|
||||
static int const cs = 1;
|
||||
static int const ca[1] = {1};
|
||||
static int s = 1;
|
||||
static int a[1] = {1};
|
||||
|
||||
Foo (&cs);
|
||||
Foo (&ca);
|
||||
if (Foo (&s) != 2)
|
||||
return 1;
|
||||
if (Foo (&a) != 2)
|
||||
return 2;
|
||||
|
||||
return 0;
|
||||
}
|
Loading…
Reference in New Issue
Block a user