Don't forget to add the old ExternalSemaSource.


git-svn-id: https://root.cern.ch/svn/root/trunk@46434 27541ba8-7e3a-0410-8455-c3a389f83636
*The JIT is configured to compile with RTTI so when we #include the SymbolResolverCallback
it looks for typeinfo of the InterpreterCallbacks (compiled with fno-rtti).

*Move the SymbolResolverCallback into InterpreterCallbacks.(h,cpp). Ideally it is 
used only in the testsuite so we could hack in the build system to build the 
SymbolResolverCallback with fno-rtti and include just the header file but that's
for later.
*Set the symbol resolver callback in enableDynamicLookup for now.
*Clear up the logic behind InterpreterExternalSemaSource and InterpreterCallbacks.
*Now the DynamicIDHandler derives from InterpreterExternalSemaSource.
*Adapt the testsuite to the change.
*Request the InterpreterCallback constructor to be put in the binary.


git-svn-id: https://root.cern.ch/svn/root/trunk@46435 27541ba8-7e3a-0410-8455-c3a389f83636
Don't forget to add the old ExternalSemaSource.


git-svn-id: https://root.cern.ch/svn/root/trunk@46436 27541ba8-7e3a-0410-8455-c3a389f83636
Add initial version of DisplayClass for cling/clang.


git-svn-id: https://root.cern.ch/svn/root/trunk@46437 27541ba8-7e3a-0410-8455-c3a389f83636
Usually we have to distinguish between lookup failures. Eg. there are certain
lookups that are expected (by the compiler) to fail and those which should not fail.

I was misled (wasn't thinking at all: Thanks Axel for questioning the checkin) 
because I thought we cannot distinguish those two different cases in the test
callback. 
Silly mistake:
  Revert the changes in the testsuite.
  Revert the default setup of the test callback in enableDynamicLookup

The problem is solved by extracting out the function which determines whether
a lookup is not expected to fail. (It still needs better place.)


git-svn-id: https://root.cern.ch/svn/root/trunk@46438 27541ba8-7e3a-0410-8455-c3a389f83636
Fix an issue with fSumw2 not being told how many bins there are when going via default c'tor, as in the case of CreateHn.
Zero-initialize fCoordBuf to make Dump() valgrind-happy: accesses uninitialized memory otherwise to print the value that fCoordBuf points at.


git-svn-id: https://root.cern.ch/svn/root/trunk@46439 27541ba8-7e3a-0410-8455-c3a389f83636
No need to enable/disable, check for enabled/disabled callback. Either they are
there and we use them or not.


git-svn-id: https://root.cern.ch/svn/root/trunk@46440 27541ba8-7e3a-0410-8455-c3a389f83636
Adapt ROOT to the new changes in cling.


git-svn-id: https://root.cern.ch/svn/root/trunk@46442 27541ba8-7e3a-0410-8455-c3a389f83636
Cleanup the workaround. We have properly implemented MultiplexExternalSemaSource in clang.


git-svn-id: https://root.cern.ch/svn/root/trunk@46443 27541ba8-7e3a-0410-8455-c3a389f83636
* SymbolResolverCallback should create DynamicIDHandler as its InterpreterExternalSemaSource.
* InterpreterExternalSemaSource::setCallbacks is not needed any more. 
  It can be set in the constructor instead.


git-svn-id: https://root.cern.ch/svn/root/trunk@46444 27541ba8-7e3a-0410-8455-c3a389f83636
Make sure the std::string and Double32_t are known before creation the normalization context


git-svn-id: https://root.cern.ch/svn/root/trunk@46445 27541ba8-7e3a-0410-8455-c3a389f83636
Implement lifetime handling of temporaries for cling; simply no-ops as StoredValueRef gets rid of temporary management where possible, leaving only fTemporaries.


git-svn-id: https://root.cern.ch/svn/root/trunk@46446 27541ba8-7e3a-0410-8455-c3a389f83636
Remove obsolete code, add not yet implemented msg


git-svn-id: https://root.cern.ch/svn/root/trunk@46447 27541ba8-7e3a-0410-8455-c3a389f83636
Set the iterator only when using the default constructor


git-svn-id: https://root.cern.ch/svn/root/trunk@46448 27541ba8-7e3a-0410-8455-c3a389f83636
Avoid constructing TClass objects before their 'dictionary' is loaded


git-svn-id: https://root.cern.ch/svn/root/trunk@46449 27541ba8-7e3a-0410-8455-c3a389f83636
Remove obsolete code, handle the case of empty scope being iterated over


git-svn-id: https://root.cern.ch/svn/root/trunk@46450 27541ba8-7e3a-0410-8455-c3a389f83636
Remove commented code.


git-svn-id: https://root.cern.ch/svn/root/trunk@46451 27541ba8-7e3a-0410-8455-c3a389f83636
80 column.


git-svn-id: https://root.cern.ch/svn/root/trunk@46452 27541ba8-7e3a-0410-8455-c3a389f83636
Make findFunctionProto() do overload resolution, same as
findFuntionArgs().

These two functions are now so similar they can be combined
or turned into small wrappers around a common part.


git-svn-id: https://root.cern.ch/svn/root/trunk@46453 27541ba8-7e3a-0410-8455-c3a389f83636
Remove IsOverload() and FuncArgTypesMatch(),
they are no longer needed.

The referenceness of a dummy arg passed by reference
is carried in the value kind, and must be removed from
the type.


git-svn-id: https://root.cern.ch/svn/root/trunk@46454 27541ba8-7e3a-0410-8455-c3a389f83636