<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in instantiate-declref.cpp</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>f623c962 - Implement DR1330 in C++11 mode, to support libstdc++4.7 which uses it.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp#f623c962</link>
        <description>Implement DR1330 in C++11 mode, to support libstdc++4.7 which uses it.We have a new flavor of exception specification, EST_Uninstantiated. A functiontype with this exception specification carries a pointer to a FunctionDecl, andthe exception specification for that FunctionDecl is instantiated (if needed)and used in the place of the function type&apos;s exception specification.When a function template declaration with a non-trivial exception specificationis instantiated, the specialization&apos;s exception specification is set to thisnew &apos;uninstantiated&apos; kind rather than being instantiated immediately.Expr::CanThrow has migrated onto Sema, so it can instantiate exception specson-demand. Also, any odr-use of a function triggers the instantiation of itsexception specification (the exception specification could be needed by IRGen).In passing, fix two places where a DeclRefExpr was created but the correspondingfunction was not actually marked odr-used. We used to get away with this, butdon&apos;t any more.Also fix a bug where instantiating an exception specification which refers tofunction parameters resulted in a crash. We still have the same bug in defaultarguments, which I&apos;ll be looking into next.This, plus a tiny patch to fix libstdc++&apos;s common_type, is enough for clang toparse (and, in very limited testing, support) all of libstdc++4.7&apos;s standardheaders.llvm-svn: 154886

            List of files:
            /llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp</description>
        <pubDate>Tue, 17 Apr 2012 00:58:00 +0000</pubDate>
        <dc:creator>Richard Smith &lt;richard-llvm@metafoo.co.uk&gt;</dc:creator>
    </item>
<item>
        <title>815039af - Implicit decl ref expressions might not have name locations;  don&apos;t silently</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp#815039af</link>
        <description>Implicit decl ref expressions might not have name locations;  don&apos;t silentlyfail to instantiate them.llvm-svn: 111293

            List of files:
            /llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp</description>
        <pubDate>Tue, 17 Aug 2010 21:27:17 +0000</pubDate>
        <dc:creator>John McCall &lt;rjmccall@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>f5af3584 - Improve diagnostics when an elaborated-type-specifer containing a</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp#f5af3584</link>
        <description>Improve diagnostics when an elaborated-type-specifer containing anested-name-specifier (e.g., &quot;class T::foo&quot;) fails to find a tagmember in the scope nominated by thenested-name-specifier. Previously, we gave a bland  error: &apos;Nested&apos; does not name a tag member in the specified scopewhich didn&apos;t actually say where we were looking, which was ratherhorrible when the nested-name-specifier was instantiated. Now, we givesomething a bit better:  error: no class named &apos;Nested&apos; in &apos;NoDepBase&lt;T&gt;&apos;llvm-svn: 100060

            List of files:
            /llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp</description>
        <pubDate>Wed, 31 Mar 2010 23:17:41 +0000</pubDate>
        <dc:creator>Douglas Gregor &lt;dgregor@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>ce410662 - Teach Sema how to instantiate a local function declaration properly.  Fixes</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp#ce410662</link>
        <description>Teach Sema how to instantiate a local function declaration properly.  FixesPR 5517.llvm-svn: 95470

            List of files:
            /llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp</description>
        <pubDate>Sat, 06 Feb 2010 01:50:47 +0000</pubDate>
        <dc:creator>John McCall &lt;rjmccall@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>8fbe78f6 - Update tests to use %clang_cc1 instead of &apos;clang-cc&apos; or &apos;clang -cc1&apos;.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp#8fbe78f6</link>
        <description>Update tests to use %clang_cc1 instead of &apos;clang-cc&apos; or &apos;clang -cc1&apos;. - This is designed to make it obvious that %clang_cc1 is a &quot;test variable&quot;   which is substituted. It is &apos;%clang_cc1&apos; instead of &apos;%clang -cc1&apos; because it   can be useful to redefine what gets run as &apos;clang -cc1&apos; (for example, to set   a default target).llvm-svn: 91446

            List of files:
            /llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp</description>
        <pubDate>Tue, 15 Dec 2009 20:14:24 +0000</pubDate>
        <dc:creator>Daniel Dunbar &lt;daniel@zuster.org&gt;</dc:creator>
    </item>
<item>
        <title>c95a1fa7 - When performing template instantiation (transformation) of</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp#c95a1fa7</link>
        <description>When performing template instantiation (transformation) ofexpressions, keep track of whether we are immediately taking theaddress of the expression. Pass this flag when building a declarationname expression so that we handle pointer-to-member constantsproperly.llvm-svn: 86017

            List of files:
            /llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp</description>
        <pubDate>Wed, 04 Nov 2009 07:01:15 +0000</pubDate>
        <dc:creator>Douglas Gregor &lt;dgregor@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>05580944 - Follow-on test case for template instantiation of interesting DeclGroups</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp#05580944</link>
        <description>Follow-on test case for template instantiation of interesting DeclGroupsllvm-svn: 72569

            List of files:
            /llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp</description>
        <pubDate>Fri, 29 May 2009 14:26:40 +0000</pubDate>
        <dc:creator>Douglas Gregor &lt;dgregor@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>8157b07c - Now that we have declared/defined tag types within DeclGroups,</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp#8157b07c</link>
        <description>Now that we have declared/defined tag types within DeclGroups,instantiation of tags local to member functions of class templates(and, eventually, function templates) works when the tag is defined aspart of the decl-specifier-seq, e.g.,  struct S { T x, y; } s1;Also, make sure that we don&apos;t try to default-initialize a dependenttype.llvm-svn: 72568

            List of files:
            /llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp</description>
        <pubDate>Fri, 29 May 2009 14:25:00 +0000</pubDate>
        <dc:creator>Douglas Gregor &lt;dgregor@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>9e927abc - Introduced DeclContext::isDependentContext, which determines whether a</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp#9e927abc</link>
        <description>Introduced DeclContext::isDependentContext, which determines whether agiven DeclContext is dependent on type parameters. Use this toproperly determine whether a TagDecl is dependent; previously, we weremissing the case where the TagDecl is a local class of a memberfunction of a class template (phew!).Also, make sure that, when we instantiate declarations within a memberfunction of a class template (or a function template, eventually),that we add those declarations to the &quot;instantiated locals&quot; map sothat they can be found when instantiating declaration references.Unfortunately, I was not able to write a useful test for this change,although the assert() that fires when uncommenting the FIXME&apos;d line intest/SemaTemplate/instantiate-declref.cpp tells the &quot;experienced user&quot;that we&apos;re now doing the right thing.llvm-svn: 72526

            List of files:
            /llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp</description>
        <pubDate>Thu, 28 May 2009 16:34:51 +0000</pubDate>
        <dc:creator>Douglas Gregor &lt;dgregor@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>e44a2adf - Reimplement much of the way that we track nested classes in the</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp#e44a2adf</link>
        <description>Reimplement much of the way that we track nested classes in theparser. Rather than placing all of the delayed member functiondeclarations and inline definitions into a single bucket correspondingto the top-level class, we instead mirror the nesting structure of thenested classes and place the delayed member functions into theirappropriate place. Then, when we actually parse the delayed memberfunction declarations, set up the scope stack the same way as it waswhen we originally saw the declaration, so that we can find, e.g.,template parameters that are in scope.llvm-svn: 72502

            List of files:
            /llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp</description>
        <pubDate>Wed, 27 May 2009 23:11:45 +0000</pubDate>
        <dc:creator>Douglas Gregor &lt;dgregor@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>cd3a0979 - Simplify, and improve the performance of, template instantiation for</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp#cd3a0979</link>
        <description>Simplify, and improve the performance of, template instantiation fordeclaration references. The key realization is that dependent Decls,which actually require instantiation, can only refer to the currentinstantiation or members thereof. And, since the current contextduring instantiation contains all of those members of the currentinstantiation, we can simply find the real instantiate that matches upwith the &quot;current instantiation&quot; template.llvm-svn: 72486

            List of files:
            /llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp</description>
        <pubDate>Wed, 27 May 2009 17:54:46 +0000</pubDate>
        <dc:creator>Douglas Gregor &lt;dgregor@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>b8006faf - Add some more tests for instantiation of declaration references. Also,</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp#b8006faf</link>
        <description>Add some more tests for instantiation of declaration references. Also,improve some error recovery with explicit template instantiation.llvm-svn: 72484

            List of files:
            /llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp</description>
        <pubDate>Wed, 27 May 2009 17:30:49 +0000</pubDate>
        <dc:creator>Douglas Gregor &lt;dgregor@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>7a74938f - Enumeration declarations that were instantiated from an enumeration</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp#7a74938f</link>
        <description>Enumeration declarations that were instantiated from an enumerationwithin a template now have a link back to the enumeration from whichthey were instantiated. This means that we can now find theinstantiation of an anonymous enumeration.llvm-svn: 72482

            List of files:
            /llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp</description>
        <pubDate>Wed, 27 May 2009 17:20:35 +0000</pubDate>
        <dc:creator>Douglas Gregor &lt;dgregor@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>f98d9b60 - Improve name lookup for and template instantiation of declaration</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp#f98d9b60</link>
        <description>Improve name lookup for and template instantiation of declarationreferences. There are several smallish fixes here:  - Make sure we look through template parameter scope when    determining whether we&apos;re parsing a nested class (or nested class    *template*). This makes sure that we delay parsing the bodies of    inline member functions until after we&apos;re out of the outermost    class (template) scope.  - Since the bodies of member functions are always parsed    &quot;out-of-line&quot;, even when they were declared in-line, teach    unqualified name lookup to look into the (semantic) parents.  - Use the new InstantiateDeclRef to handle the instantiation of a    reference to a declaration (in DeclRefExpr), which drastically    simplifies template instantiation for DeclRefExprs.  - When we&apos;re instantiating a ParmVarDecl, it must be in the current    instantiation scope, so only look there.Also, remove the #if 0&apos;s and FIXME&apos;s from the dynarray example, whichnow compiles and executes thanks to Anders and Eli.llvm-svn: 72481

            List of files:
            /llvm-project-15.0.7/clang/test/SemaTemplate/instantiate-declref.cpp</description>
        <pubDate>Wed, 27 May 2009 17:07:49 +0000</pubDate>
        <dc:creator>Douglas Gregor &lt;dgregor@apple.com&gt;</dc:creator>
    </item>
</channel>
</rss>
