Commit Graph

2066 Commits

Author SHA1 Message Date
Vassil Vassilev
e587158b03 Add the Interpreter* to the cling::Value. We can afford it, because its actual size is 24 and it anyway gets aligned to 32 (except on a few old washing machines). 2014-05-18 18:08:58 +02:00
Vassil Vassilev
7b18586fa9 Extend the lifetime of the temporaries up to the function call using them.
Results in move of ExprWithCleanups, which is responsible for the lifetime
of the temporaries.
2014-05-18 18:08:58 +02:00
Vassil Vassilev
b9cc758195 Allow simplisticCastAs to work on ptr types. 2014-05-18 18:08:58 +02:00
Vassil Vassilev
ca50db4ec7 Remove the const so that the proper overload can be picked up. 2014-05-18 18:08:58 +02:00
Vassil Vassilev
39f42b02cd Instead of passing the Expr*, which is being value printed, pass the Interpreter* and deduce the expr. 2014-05-18 18:08:58 +02:00
Vassil Vassilev
cb29e6e529 Add printing utility functions to the cling::Value. 2014-05-18 18:08:58 +02:00
Vassil Vassilev
db0c7200db Use the short more meaningful function. 2014-05-18 18:08:58 +02:00
Vassil Vassilev
9b009e02a6 Hide codegen from external users. 2014-05-18 18:08:58 +02:00
Vassil Vassilev
250dbcf655 Collapse the tests into one. 2014-05-18 18:08:58 +02:00
Fons Rademakers
bb72260cfc Changes related to the use of gendered or binary language in the code.
The changes are all related to the use of gendered or binary language in
the comments, messages, and documents (e.g. referring to the user explicitly
as "he" or "he/she").  I searched for thse instances and changed them to
the gender-neutral singular they (http://en.wikipedia.org/wiki/Singular_they).
In the process I fixed quite a few typos that would show up in the
auto-generated documentation.

By Jean-François Caron jfcaron@phas.ubc.ca).
2014-05-17 15:04:59 +02:00
Axel Naumann
0a0a1d6cbd Fix doxygen. 2014-05-16 18:35:58 +02:00
Axel Naumann
b29245024c Ignore #line directives in ShouldWrapInput(). 2014-05-15 17:53:03 +02:00
Anirudha Bose
7658828d0d Fix wrong path of VERSION in Makefile 2014-05-15 13:51:55 +02:00
Pere Mato
8d43694e85 Another attempt for CLING_VERSION with proper scape characters (CMake) 2014-05-14 15:39:01 +02:00
Axel Naumann
4dfe5ee75a Make interpreter available to callbacks. 2014-05-14 15:32:58 +02:00
Axel Naumann
af66248191 Accessor to current transaction, useful e.g. for callbacks. 2014-05-14 15:32:58 +02:00
Philippe Canal
f7aaac2c07 Avoid the risk of type creation if we can 2014-05-14 09:03:56 +02:00
Philippe Canal
d1e545b60d In Partial desugar add support for array type 2014-05-14 09:03:56 +02:00
Pere Mato
45635cf4a2 Pass the CLING_VERSION as compiler flag and remove it from cling_compiledata.h file 2014-05-13 16:47:56 +02:00
Bertrand Bellenot
709f085345 Pass the CLING_VERSION as compiler flag 2014-05-13 15:41:10 +02:00
Vassil Vassilev
575bf01e31 Use debian style version naming. 2014-05-11 18:27:58 +02:00
Vassil Vassilev
a1c9e12809 Remove old code and dir. 2014-05-09 22:59:55 +02:00
Vassil Vassilev
cefb472b5f Update the test to more generically 'detect' the version. 2014-05-09 15:28:06 +02:00
Vassil Vassilev
764f126c70 Simplify. 2014-05-09 15:28:06 +02:00
Vassil Vassilev
7ce34cdf3c Propagate the version to the executable code. 2014-05-09 15:28:06 +02:00
Vassil Vassilev
5bea5d34ec Add the notion of version in both build systems. Remove redundant code. 2014-05-09 14:52:57 +02:00
Vassil Vassilev
839b1bbee5 After the 'tag' switch to the 'right' dev version. 2014-05-08 20:26:02 +02:00
Vassil Vassilev
155412ede2 After the 'tag' switch to a dev version. 2014-05-08 20:26:02 +02:00
Vassil Vassilev
c625a7b349 Add versioning. 2014-05-08 20:26:01 +02:00
Axel Naumann
961cc8d7bf Add protection against missing CodeGen. 2014-05-06 12:18:00 +02:00
Lukas Vacek
1346b05af4 Adding test for ROOT-6244 (test_exec_in_same_dir.C) 2014-05-02 19:01:01 +02:00
Lukas Vacek
ce008b07fc Fix input files processing (cling foo.c should work now) 2014-05-02 19:01:01 +02:00
Axel Naumann
b8c48f15f8 CLING_CXXABI* is unused for MSVC. 2014-04-30 15:27:01 +02:00
Bertrand Bellenot
a39879b286 Check in the system registry for the version of Visual Studio with which we compiled cling (instead of the highest version) 2014-04-30 15:27:01 +02:00
Bertrand Bellenot
a172bc0e07 Fix some of the error messages when starting cling.exe on Windows
Fixes the following error messages:
The system cannot find the path specified.
ERROR in cling::CIFactory::createCI(): cannot extract standard library include paths!
Invoking:
    echo | LC_ALL=C C:/Program Files (x86)/Microsoft Visual Studio 11.0/VC/bin/cl.exe  /DWIN32 /D_WINDOWS /W3    -xc++ -E -v - 2>&1 >/dev/null | awk '/^#include
 </,/^End of search/{if (!/^#include </ && !/^End of search/){ print }}' | grep -E "(c|g)\+\+"
results in
The system cannot find the path specified.
with exit code 255
Warning in cling::CIFactory::createCI():
  C++ ABI check not implemented for this standard library

Note there are still a few remaining errors at startup time:

error: cannot mangle RTTI descriptors for type 'exception' yet
error: cannot mangle the name of type 'exception' into RTTI descriptors yet

Apparently coming from the following statement (at line 284 in Interpreter.cpp, in Interpreter::IncludeCXXRuntime()):

    declare("#include \"cling/Interpreter/ValuePrinter.h\"");
2014-04-30 15:27:01 +02:00
Axel Naumann
5a63dff8e9 Survive lookup in a forward declared context. 2014-04-29 17:47:58 +02:00
Axel Naumann
8b60eaf361 Survive and signal non-unique lookup results. 2014-04-29 17:47:58 +02:00
Axel Naumann
04d0d17f3e Protect from missing CodeGen. 2014-04-29 17:47:57 +02:00
Philippe Canal
94219bdc83 Work-around transaction unload not informing MetaSema.
When a file is unloaded its entry should be removed from MetaSema::m_WaterMarks.
At the moment the corresponding callback is not implemented.

Instead, we also record the relation <Transaction*,Entry*>, so that upon
MetaSema requesting an unload, we can clean-out the corresponding data
from m_WaterMarks.

In addition, to catch the case where the target transaction (unloadPoint)
is not longer present we issue an error and do not unload anything.
2014-04-29 03:46:59 +02:00
Axel Naumann
ed65edecb3 Fix func/ptr cast warning; work around MSVC2012 lack of C++11. 2014-04-28 15:55:58 +02:00
Axel Naumann
05e3be6503 Fix non-GCC (and non-thread-safe!) case. 2014-04-28 15:13:57 +02:00
Axel Naumann
e85b873a26 Also replace boost::detail::atomic_exchange_and_add for the interpreter.
Generalize the __cxa_atexit replacement to cover more symbols.
Because the JIT cannot handle inline asm, provide compiled symbols for relevant
functions until cling has switched to MCJIT.
This fixes the use of many boost libraries (e.g. regex) in cling on x86_64/i386.
Kudos to Marco Clemencic for the idea!
2014-04-28 12:38:15 +02:00
CristinaCristescu
bd47ead006 Multiple line of leading comments. (ROOT-5930 and ROOT-4791). 2014-04-23 15:47:55 +02:00
CristinaCristescu
d0a4c2c819 Unanamed macros not detecting leading and trailing comments. (ROOT-5930 and ROOT-4791). 2014-04-23 15:47:55 +02:00
Axel Naumann
ae53222221 Fix warning. 2014-04-22 10:53:56 +02:00
Axel Naumann
f0f8fe0fae Disable inliner/CallGraph pass where not needed: it is slow. 2014-04-22 09:14:57 +02:00
Axel Naumann
d736e5d862 Skip trailing space, we never need it. Fixes cling tests. 2014-04-18 00:06:46 +02:00
Axel Naumann
fd7790dc53 Use actual class name to make it easier to find the source of errors. 2014-04-16 17:41:08 +02:00
Axel Naumann
a1bf77d47a If we cannot find the canonical file, try to load the original one. 2014-04-16 17:33:59 +02:00
Axel Naumann
e45cfd1afa Enable parsing of ".L ./dir with space/foo.C" 2014-04-16 17:33:59 +02:00