Assert only on valid decls.
determine C++ std lib include path at run-time. Fixes ROOT-5550.

Based on the compiler specified in compiledata.h the c++ std lib include path
to be used by rootcling and cling is determined at run-time. This makes
these modules independent of the compile time compiler location and allows
compiler relocation.
backport OS X 10.9 handling code from LLVM trunk.
Another attempt to fix a buffer overflow error on ubuntu (optimized mode only, making it hard to debug...)
Add parenthesis.
Fix ROOT-5690

The template template arguments were not properly qualified.
In this case, we had a __pool instead of __gnu_cxx::__pool which
was not of course compiled correctly.
The fix introduces a special treatment of template template
argument to add to them their NestedNameSpecifier if not already
qualified.
If some case if2 was <0 which is invalid. That's causes the bug described here ROOT-5635
TGaxis
In TViewPubFunctions prevent FindObject(name) from returning the wrong function
Remove unnecessary const_cast
CheckClassInfo no longer modify its argument
Remove a few static string usage.

Backward incompatible change in TInterpreter::GetInterpreterTypeName
and change in the internal interface for name retrievals
(TClingClassInfo and TClingBaseClassInfo's FullName)
which now takes a modifiable std::string to send back the result.
Add TMethodCall constructor from a TFunction.
Allow findAnyFunction to discover a template instance without any argument hints

This allows to find an existing function template instance even based on only
the template name (of course, in this case, no instantiation is done, only already
existing ones can be returned).

This allows add there same features to TListOfFunctions::FindObject and
TViewAllPublicFunctions::FindObject.
Add cling::LookupHelper::findFunctionTemplate

Given a context and a name (and a constness), return the corresponding
function template decl.
Move ConstructorName to TCling, add TCling::GetFunctionName
Add TClingClassInfo::GetFunctionTemplate
Add TInterpreter::GetFunctionTemplate and FuncTempInfo_t support.

FuncTempInfo_t represent a Function Template Declaration.
We preserve the pattern of the other Info (i.e. it looks like to
the user as an opaque class that can be constructed and deleted)
but the implementation is simply to return (and never allocated
or dealloacte directly) the clang decl address.  Thus all
the implmenentation of 'TClingFunctionTemplate' is currently
directly into the implementation of the TCling::FuncTempInfo_*.
Doc slight update
Add TFunctionTemplate class