| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Revert "Mark instantiated function decls as inline specified if any pattern is" | Reid Kleckner | 2015-04-07 | 1 | -33/+0 |
| | | | | | | | | | | | | | | | | | | | | It breaks down on this test case: void foo(); template <typename T> class C { friend void foo(); }; inline void foo() {} C<int> c; We shouldn't be marking the instantiation of the friend decl of foo as inline-specified. It may be possible to fix this by determining if the full definition is part of the current template, but it seems better to rever tot green until we come up with a full solution. This reverts commit r233817, as well as follow-ups r233820 and r233821. llvm-svn: 234355 | ||||
| * | Fix inlinehint.cpp with an explicit triple to avoid x86_thiscallcc problems | Reid Kleckner | 2015-04-01 | 1 | -2/+1 |
| | | | | | llvm-svn: 233821 | ||||
| * | Remove comdats from inlinehint.cpp to pass test on Darwin | Reid Kleckner | 2015-04-01 | 1 | -5/+6 |
| | | | | | llvm-svn: 233820 | ||||
| * | Mark instantiated function decls as inline specified if any pattern is | Reid Kleckner | 2015-04-01 | 1 | -0/+33 |
| A function template pattern can be declared without the 'inline' specifier and defined later with the 'inline' specifier. However, during instantiation, we were only looking at the canonical decl to see if we should mark the instantiated decl as inline specified. Since the instantiated decl actually represents many pattern declarations, put the inline specifier on the instantiation decl if any of the pattern decls have it. llvm-svn: 233817 | |||||

