diff options
author | Douglas Gregor <dgregor@apple.com> | 2009-05-13 18:28:20 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2009-05-13 18:28:20 +0000 |
commit | f61eca93c05f788ac53cd34e02be82761c2e1b9c (patch) | |
tree | 25c5ab69c8d8cac2dd70358bca7656055119beeb /clang/test/CodeGen/x86_32-arguments.c | |
parent | 69921959b417f9c64727aaef41147b067bc890d7 (diff) | |
download | bcm5719-llvm-f61eca93c05f788ac53cd34e02be82761c2e1b9c.tar.gz bcm5719-llvm-f61eca93c05f788ac53cd34e02be82761c2e1b9c.zip |
Improve the semantic checking for explicit instantiations of
templates. In particular:
- An explicit instantiation can follow an implicit instantiation (we
were improperly diagnosing this as an error, previously).
- In C++0x, an explicit instantiation that follows an explicit
specialization of the same template specialization is ignored. In
C++98, we just emit an extension warning.
- In C++0x, an explicit instantiation must be in a namespace
enclosing the original template. C++98 has no such requirement.
Also, fixed a longstanding FIXME regarding the integral type that is
used for the size of a constant array type when it is being instantiated.
llvm-svn: 71689
Diffstat (limited to 'clang/test/CodeGen/x86_32-arguments.c')
0 files changed, 0 insertions, 0 deletions