In WorkingDirectory() don't use fWdpath as working directory cache anyore
as a user can call chdir() directly somewhere else. Fixes issue 96278.


git-svn-id: https://root.cern.ch/svn/root/trunk@46262 27541ba8-7e3a-0410-8455-c3a389f83636
* Implement interpreter callbacks, which the Interpreter owns.
* Implement new callback functions - on transaction committed and transaction unloaded.
* Publish the Transaction class so that it can be visible by TCintWithCling.
* Publish the CompilationOptions needed by Transaction.
* Fix the references of Transaction and CompilationOptions.
* Forward declare where possible.
* Add missing keywords.
* Improve include style.


git-svn-id: https://root.cern.ch/svn/root/trunk@46264 27541ba8-7e3a-0410-8455-c3a389f83636
Include the transaction where needed (caused by the forward declares in prev commit.)


git-svn-id: https://root.cern.ch/svn/root/trunk@46265 27541ba8-7e3a-0410-8455-c3a389f83636
Fix computation of underflow/overflows in statistic box displayed for 2d histogram.
This was broken after changes in TAxis::SetRange, when setting ranges including underflow/overflows


git-svn-id: https://root.cern.ch/svn/root/trunk@46268 27541ba8-7e3a-0410-8455-c3a389f83636
Implement UpdateListOfGlobals using callback provided by cling. Now the list of
globals in ROOT gets updated every time a new transaction is committed or unloaded.
The implementation of the function UpdateListOfGlobals will be no op.


git-svn-id: https://root.cern.ch/svn/root/trunk@46269 27541ba8-7e3a-0410-8455-c3a389f83636
Update comments in TMath::Landau and TRandom::Landau


git-svn-id: https://root.cern.ch/svn/root/trunk@46270 27541ba8-7e3a-0410-8455-c3a389f83636
add parameter bounds in the FitResult
See https://savannah.cern.ch/bugs/?94994


git-svn-id: https://root.cern.ch/svn/root/trunk@46271 27541ba8-7e3a-0410-8455-c3a389f83636
Fix compilation problems with latest glibc headers (on Fedora 18). Fixes
issue 95267.


git-svn-id: https://root.cern.ch/svn/root/trunk@46272 27541ba8-7e3a-0410-8455-c3a389f83636
One and the same declaration could reside in multiple PCMs so cling/clang merges
the same decls in a (redecl) chain. However the annotation of comments might be
in one of the previous declaration in the chain. In that case we have to first 
scan the chain and look for declaration which has annotations.


git-svn-id: https://root.cern.ch/svn/root/trunk@46277 27541ba8-7e3a-0410-8455-c3a389f83636
add a TH1::GetNcells() method to return fNCells, so no need to cast from a TH1 to a TArray to iterate over all histogram bins


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


git-svn-id: https://root.cern.ch/svn/root/trunk@46279 27541ba8-7e3a-0410-8455-c3a389f83636
Update llvm / clang to r165095.
Update cling to follow interface changes; make note of it in cling/LastKnownGoodLLVMSVNRevision.txt.

Remove all (!) patches from ROOT's version of clang; they are all integrated into clang mainline.
ROOT now starts up with modules without errors; doing almost anything hits
root.exe: /home/axel/build/root/llvmvendor/roottrunk/interpreter/llvm/inst/include/clang/AST/RecordLayout.h:199: clang::CharUnits clang::ASTRecordLayout::getBaseClassOffset(const clang::CXXRecordDecl*) const: Assertion `CXXInfo->BaseOffsets.count(Base) && "Did not find base!"' failed.
or a "corrupt" vtable due to base class definitions being replaced by later PCMs; to be worked-around soon.


git-svn-id: https://root.cern.ch/svn/root/trunk@46280 27541ba8-7e3a-0410-8455-c3a389f83636
Work around vtable index issue due to base class definition being replaced by later PCM.
Mark llvm/clang patch by putting it into a separate ROOT-patches dir; makes it easier to revert later.


git-svn-id: https://root.cern.ch/svn/root/trunk@46281 27541ba8-7e3a-0410-8455-c3a389f83636
Already merged into cling.


git-svn-id: https://root.cern.ch/svn/root/trunk@46282 27541ba8-7e3a-0410-8455-c3a389f83636
* Remove the craftwork from dealing with setting callbacks.
* Simplify the impelentation of DynIDHandler.
* Create a shortcut for getting the semantic analysis object.


git-svn-id: https://root.cern.ch/svn/root/trunk@46287 27541ba8-7e3a-0410-8455-c3a389f83636
Add non-const getter.


git-svn-id: https://root.cern.ch/svn/root/trunk@46288 27541ba8-7e3a-0410-8455-c3a389f83636
remove the inclusion of CompilerInstance


git-svn-id: https://root.cern.ch/svn/root/trunk@46289 27541ba8-7e3a-0410-8455-c3a389f83636
Accelerate startup of ROOT by a factor of 3:
TClingClassInfo::TClingClassInfo(Interp*, name) is lookup up a decl by name, and then setting up its iterator by iterating over (almost) all decls until the matching decl is found.
This took 66% of the startup time (optimized) accoding to callgrind.
Now ROOT is more fun to debug again...


git-svn-id: https://root.cern.ch/svn/root/trunk@46293 27541ba8-7e3a-0410-8455-c3a389f83636
Improve const-correctness in casts.


git-svn-id: https://root.cern.ch/svn/root/trunk@46294 27541ba8-7e3a-0410-8455-c3a389f83636
Fix internal iterator starts at second member problem.
During construction we must move to the first data member
in the decl context of the class, and then we must set
the first time flag so that we stay there on the first
call to Next().  Silly cint iterator semantics.


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