llvm with tablegen backend for capstone disassembler
Go to file
Faisal Vali 18d3598ed0 Fix PCH bug with member templates of local classes in nontemplate functions.
As noted by Richard in the post:
http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20130624/082605.html, the following code should not add an entry
into PendingLocalImplicitInstantiations, since local instantiations
should only occur within the context of other instantiations:

int foo(double y) {
   struct Lambda {
      template<class T> T operator()(T t) const { return t; };
   } lambda;
   return lambda(y);
}

Hence the attached code does the following:
  1) In MarkFunctionReferenced, check if ActiveInstantiations.size() 
      is non-zero before adding to PendingLocalImplicitInstantiations.
  2) In InstantiateFunctionDefinition, we swap out/in
      PendingLocalImplicitInstantiations so that only those 
      pending local instantiations that are added during the instantiation
      of the current function are instantiated recursively.

llvm-svn: 184903
2013-06-26 02:34:24 +00:00
clang Fix PCH bug with member templates of local classes in nontemplate functions. 2013-06-26 02:34:24 +00:00
clang-tools-extra cpp11-migrate: Really fixing doxygen warning 2013-06-25 19:01:18 +00:00
compiler-rt Fix a use after free I introduced and that Bill caught in code review 2013-06-26 00:26:16 +00:00
debuginfo-tests Now that we get non-trivial value parameters locations correct, un-XFAIL these tests. 2013-06-19 22:07:11 +00:00
libclc Update the copyright coredits -- Happy new year 2013! 2013-01-01 10:00:19 +00:00
libcxx Implement full support for non-pointer pointers in custom allocators for list. 2013-06-25 16:08:47 +00:00
libcxxabi I'd no sooner made the last commit when Matthew Dempsky sent me another test case that led me to yet another closely related test case that the current design could not handle. I've now changed the way forward references are handled completely. It wasn't that much code to change. The demangler, when confronted with a forward reference to a template parameter, now parses things twice. During the second parse, all forward references are remembered from the first parse. Test suite updated with new case. 2013-06-23 19:52:45 +00:00
lld [lld] rename member variable name. 2013-06-24 03:22:51 +00:00
lldb Remove ifdef LLDB_CONFIGURATION_DEBUG directives around the formatter 2013-06-26 01:51:03 +00:00
llvm dbgs() << Instruction doesn't print a newline on the end any more. Update these 2013-06-26 00:30:18 +00:00
polly Update CLooG such that the isl test cases are really up to date 2013-06-24 07:38:29 +00:00