bc18a88f10
Add cling::StoredValueRef: a ref-counted value with automatic storage management. Update Interpreter to use that instead of cling::Value. This fixes an issue where the called neded to guess the return type of the wrapper function, such that for instance Interpreter::Evaluate() has storage for the wrapper's aggregate SRet return value if needed. Instead, the Interpreter now allocates the proper storage for return values, and hands out references to it. StoredValueRef is tiny (8bytes on 64bit Linux); default allocation is cheap. git-svn-id: http://root.cern.ch/svn/root/trunk@46335 27541ba8-7e3a-0410-8455-c3a389f83636