Commit Graph

1912 Commits

Author SHA1 Message Date
Axel Naumann
164686caf1 Fix assert. Thanks, Timur! 2014-04-16 09:13:07 +02:00
Axel Naumann
cc04f68f1d Assert consistency: if we get a canonical name it must exist. 2014-04-15 18:22:55 +02:00
Bertrand Bellenot
ecd7f64941 Add missing cast from DyLibHandle (const void *) to HMODULE
This should fix the following compilation error on Windows:
error C2664: 'FreeLibrary' : cannot convert parameter 1 from 'cling::DynamicLibraryManager::DyLibHandle' to 'HMODULE'
2014-04-15 17:50:57 +02:00
Vassil Vassilev
d5cfd91025 Disable assertion and add an FIXME explaining why. 2014-04-15 17:33:00 +02:00
Vassil Vassilev
818d9826cd Implement a debug mode for the transaction pool, which can be enabled in gdb. This happens by altering the m_Debug value. 2014-04-15 17:33:00 +02:00
Vassil Vassilev
047391706d Return don't break, because it causes #including of so files. 2014-04-15 17:32:59 +02:00
Axel Naumann
1f9a259c33 Propagate cache flags from LookupFile() to FileManager::getFile(). 2014-04-15 17:32:59 +02:00
Vassil Vassilev
40db9f5903 Unload decls came from parseForModule. 2014-04-14 22:48:56 +02:00
Vassil Vassilev
f75cef233f Implement callbacks for the DynamicLibraryManager. 2014-04-14 20:58:15 +02:00
Vassil Vassilev
e52457601c No need of flagging which is library and which not. The lib manager knows. 2014-04-14 20:58:14 +02:00
Vassil Vassilev
68a0a45eab Use normalized filenames. 2014-04-14 20:58:13 +02:00
Vassil Vassilev
3d0ba9aed3 Do not use translateFile, because it pulls in parts of the pch. 2014-04-14 20:58:13 +02:00
Axel Naumann
c46a539b2f Before deleting, make the parent forget. 2014-04-14 17:53:00 +02:00
Vassil Vassilev
362480a7c9 Revert unintentionally checked in code. 2014-04-14 13:57:57 +02:00
Vassil Vassilev
d4df15ee88 Fix windows. 2014-04-14 12:59:58 +02:00
Vassil Vassilev
f4d3356515 Use the canonical path. 2014-04-14 12:59:58 +02:00
Vassil Vassilev
9b353ee8a5 Normalize the file names. 2014-04-14 12:59:58 +02:00
Vassil Vassilev
bf1031a840 Fix error msg. 2014-04-14 12:59:57 +02:00
Vassil Vassilev
37e234c715 Name order. 2014-04-14 12:59:57 +02:00
Vassil Vassilev
c3eced298a Typo. 2014-04-14 11:15:00 +02:00
Vassil Vassilev
9b4ea193c0 If cling::Value is provided turn result evaluation on. 2014-04-14 09:09:01 +02:00
Vassil Vassilev
59c7b7b2d7 Coding convention. 2014-04-14 09:09:00 +02:00
Vassil Vassilev
6bb29c9130 Consistent argument names. 2014-04-14 09:09:00 +02:00
Vassil Vassilev
ebad01a510 Simplify and extend the dynamic library manager.
Now it provides an interface which can lookup library names. It can unload a
library and the implementation of loading and resolving a library name is much
simpler.

The extensions are greatly used by the unloading facilities in cling its users.
2014-04-14 09:09:00 +02:00
Vassil Vassilev
5b49009ec8 Use the canonical paths to the files/libraries to unload. 2014-04-14 09:09:00 +02:00
Vassil Vassilev
0abad4f1ff Implement an interface for file/librarly lookup, given the interpreter and system inc paths. 2014-04-14 09:09:00 +02:00
Vassil Vassilev
e9b2e010a6 Style. 2014-04-14 09:08:59 +02:00
Vassil Vassilev
c44b4a3803 Move the restore point before the actual unload, i.e exclusive restore point.
Thus we can handle the cases where libraries are loaded. That case is tricky
because during library's static initialization, header parsing might occur (resulting
in more decls that need to be unloaded). With the exclusive restore point, we
will undo everything up to it, which implicitly will unload the library and
it's friends.
2014-04-14 09:08:59 +02:00
Vassil Vassilev
0ebd74dcfc Don't unload decls came from vtable emission. 2014-04-14 09:08:59 +02:00
Timur Pocheptsov
035f23752b Clean up. 2014-04-14 09:08:59 +02:00
Timur Pocheptsov
cc6ae43942 .namespace command. 2014-04-14 08:55:03 +02:00
Axel Naumann
628618f2b9 Add test for copy ctor and dtor in Value for array-of-structs. 2014-04-11 09:00:01 +02:00
Axel Naumann
1b9910ea28 Fix destruction of array-of-structs.
Iterate over the elements, calling the dtor on each.
Requires two more fields in the AllocatedValue to track the array size and
element offset.
Note that this is only implemented for constant size arrays; all others are expected to not be returned (and thus not stored) by value.
2014-04-11 09:00:01 +02:00
Axel Naumann
895e8eaf51 Init member (thanks, valgrind). 2014-04-11 09:00:00 +02:00
Vassil Vassilev
76f9617076 Doxygen. 2014-04-09 18:36:04 +02:00
Pere Mato
b4baf22be7 Fix for ROOT-6194 - ROOT6 build for LHCb seems to have hardcoded dependencies on AFS 2014-04-09 18:19:03 +02:00
Axel Naumann
83722a7084 Include etc/cling headers in PCH; improve dependencies. 2014-04-09 12:08:10 +02:00
Vassil Vassilev
05c66f769b Style. 2014-04-09 11:19:00 +02:00
Vassil Vassilev
0314a15148 Shorten the unnecessary long interface name. 2014-04-09 11:19:00 +02:00
Vassil Vassilev
522b254345 Move the typedef definition before private section. 2014-04-09 11:19:00 +02:00
Vassil Vassilev
d4da070504 Improve doc style. 2014-04-09 11:18:59 +02:00
Vassil Vassilev
d4299217d4 Improve encapsulation. 2014-04-09 11:18:59 +02:00
Vassil Vassilev
da8237fb86 Use comparison not assignment. 2014-04-09 11:18:59 +02:00
Vassil Vassilev
40b3940666 Adapt to the new (non-const) interface. 2014-04-09 09:27:09 +02:00
Vassil Vassilev
e740840388 Skip removing the system function _Unwind_Resume, needed by the JIT. 2014-04-09 09:27:09 +02:00
Vassil Vassilev
d49c03b10c Files that are .x-ed must be unloadable too. Simplify. 2014-04-09 09:27:08 +02:00
Vassil Vassilev
a85e45178e Unload all kinds of decls that came in. 2014-04-04 17:31:57 +02:00
Vassil Vassilev
198e89d305 Run caching before using the cached vars. 2014-04-04 15:22:00 +02:00
Vassil Vassilev
d1a416ddc0 When variadic return stmt doesn't have a return value, invalidate the calculation of the last expr for evaluation.
In the same cases we still need to synthesize the setValueNoAlloc, to initialize
the cling::Value to void.
2014-04-04 09:42:07 +02:00
Vassil Vassilev
529088b816 There might be returns without return values. 2014-04-03 13:56:59 +02:00