[PATCH] Remove some template instantiations to reduce the number of symbols.

Reid Kleckner rnk at google.com
Thu Aug 28 10:53:07 PDT 2014


The always inline macro should be defined pretty on MinGW and pretty much everywhere. It was introduced in gcc 4.0 and we already require gcc 4.7 at a minimum.

BTW, I think the ASTMatchersInternal.h change is a solid compile time win at very low cost. Using always_inline there would still cause us to perform instantiation, so I like this change better.

The unique_ptr change is more questionable, because now the ownership is unmanaged and you would have to implement reset manually in the future. Also consider that the definition of unique_ptr::reset is something like:
  void reset(T *New) {
    T *Tmp = Out;
    Out = New;
    delete Tmp;
  }

http://reviews.llvm.org/D5072






More information about the cfe-commits mailing list