CristinaCristescu
0381b517c1
Glue the cling tab completion to ROOT.
2016-07-18 14:29:13 +02:00
CristinaCristescu
cc5da51f21
Cling patch for code completion.
2016-07-18 14:29:13 +02:00
CristinaCristescu
95e3dcf8ef
Check for invalid pointer address access.
2015-12-15 20:24:16 +01:00
Axel Naumann
923b4ce39b
Also strip the "runtime" part of the Interpreter exception here.
2015-12-15 20:24:16 +01:00
CristinaCristescu
1d46fe88d8
Remove runtime namespace from NullDerefException and rename RuntimeException.h to Exception.h.
...
(cherry picked from commit 234da8bfedce8661c2b8bc50f72632c240c4dfd8)
2015-12-15 20:24:16 +01:00
CristinaCristescu
8ab37ec3d6
Enable Baozeng Ding's NullDeref protection for ROOT; use exceptions.
...
The function HandleInterpreterException catches the NullDerefException.
Remove pre-exception longjmp code.
2015-12-15 20:24:15 +01:00
Vassil Vassilev
96b189e8d7
Remove new lines.
2015-12-15 20:24:15 +01:00
Axel Naumann
faf2b44a0d
Tell which language is enabled (ROOT-7090).
2015-02-21 23:15:27 +01:00
Vassil Vassilev
22f891e9be
llvm::OwningPtr to std::unique_ptr.
2014-08-14 14:56:38 +02:00
Philippe Canal
576ca3ca96
Remove trailing spaces
2014-08-13 16:08:36 +02:00
Axel Naumann
0f77b4ff1b
Less mem leaks.
2014-07-01 16:10:07 +02:00
Axel Naumann
93970e8c35
Replace StoredValueRef by Value.
2014-04-01 18:31:58 +02:00
Axel Naumann
c36da12a79
Disable history if envvar CLING_NOHISTORY is set - for fixed memory address.
2014-02-06 17:40:54 +01:00
CristinaCristescu
6296b84ab3
Changes to redirection.
2014-01-15 12:02:03 +01:00
CristinaCristescu
0ec0ba48b6
Change redirection from Interpreter to MetaProcessor.
2014-01-15 12:02:03 +01:00
Axel Naumann
44481ace1e
Fix license; remove $Id$ version.
2014-01-07 11:14:04 +01:00
Axel Naumann
5706d4bdef
Workaround broken JIT exceptions, use longjmp instead.
2013-10-03 09:54:00 +02:00
Axel Naumann
95c14596f0
Fix small string / $HOME mess.
2013-09-26 17:54:18 +02:00
Axel Naumann
6c0e0a2103
Reimplement GetUserHomeDirectory().
2013-09-26 17:54:16 +02:00
Axel Naumann
37e58b7dba
Typo
2013-09-11 10:11:04 +02:00
Axel Naumann
3a8534d285
Improve exception reporting.
2013-09-11 09:41:52 +02:00
Axel Naumann
0782d4d515
Make CompilationException public, (also) use new cling runtime exception as base.
2013-09-09 18:02:53 +02:00
Axel Naumann
0a9be4bfd1
Install fatal error handler throwing an exception. Yes that is dangerous.
2013-09-09 18:02:53 +02:00
Vassil Vassilev
5873981203
File was renamed.
2013-09-09 17:31:53 +02:00
Vassil Vassilev
0c4a39f10f
Handle better the exceptions.
2013-09-07 10:46:54 +02:00
Vassil Vassilev
34d2c33c18
Handle the default interpreter's runtime exception.
2013-09-06 23:47:55 +02:00
Vassil Vassilev
683a11e9e9
Use default cling style for naming classes.
2013-09-06 23:47:55 +02:00
Baozeng Ding
2224bba3a7
Synthesize throwing of exception to handle the null deref.
2013-09-06 23:47:54 +02:00
Vassil Vassilev
f282a9a7b9
Add proper handling of the runtime exception.
2013-09-05 19:08:56 +02:00
Vassil Vassilev
7179804c46
Move the handling of unhandled exceptions in the loop.
...
Indeed if the UserInterface.cpp is compiled without -fno-exceptions I get:
****************** CLING ******************
* Type C++ code and press enter to run it *
* Type .q to exit *
*******************************************
[cling]$ throw 12;
Exception occurred. Recovering...
[cling]$ .q
So the issue is still in the build system, because I built UserInterface.cpp 'by hand'.
2013-08-27 23:46:41 +02:00
Vassil Vassilev
dc47e5f3b5
The standard said use catch(...) and not catch()
2013-08-27 23:42:03 +02:00
Vassil Vassilev
77b0bb0a30
Try to handle exceptions coming from the JIT.
...
The idea is whenever there is an exception cling to be able to recover from it
and continue working. For example:
[cling] throw 12;
shouldn't crash the current session in the interpreter. Now that we have compiled
the UserInterface with exceptions on, I hoped to be able to catch exceptions
coming from the JIT easily, but obviously I am still missing something.
2013-08-27 23:05:53 +02:00
Axel Naumann
11e71f5c76
Make result evaluation optional again.
2013-06-10 17:12:50 +02:00
Axel Naumann
0c1c22f002
Return action result and Value from all interfaces. Force callers to rpovide them, to make them handle errors etc.
2013-06-07 15:19:51 +02:00
Axel Naumann
dd845ce3d9
We use HAVE_UNISTD_H, so #include config.h which defines it.
...
git-svn-id: http://root.cern.ch/svn/root/trunk@48369 27541ba8-7e3a-0410-8455-c3a389f83636
2013-01-22 13:56:38 +00:00
Vassil Vassilev
0e031fd7c8
We have HAVE_UNISTD_H through LLVM buildsystem.
...
git-svn-id: http://root.cern.ch/svn/root/trunk@48339 27541ba8-7e3a-0410-8455-c3a389f83636
2013-01-18 16:20:34 +00:00
Vassil Vassilev
bac91929b7
"So far so good..." said the falling man...
...
N-th try. I think now windows will be happy.
git-svn-id: http://root.cern.ch/svn/root/trunk@48322 27541ba8-7e3a-0410-8455-c3a389f83636
2013-01-18 10:00:00 +00:00
Vassil Vassilev
1de2e123a0
In our buildsystem nobody defines HAVE_UNISTD_H yet.
...
git-svn-id: http://root.cern.ch/svn/root/trunk@48320 27541ba8-7e3a-0410-8455-c3a389f83636
2013-01-18 09:30:58 +00:00
Vassil Vassilev
6aaa61468b
Fix windows.
...
git-svn-id: http://root.cern.ch/svn/root/trunk@48319 27541ba8-7e3a-0410-8455-c3a389f83636
2013-01-18 09:02:46 +00:00
Vassil Vassilev
fe01b22527
Try to Windows for cling standalone.
...
git-svn-id: http://root.cern.ch/svn/root/trunk@48318 27541ba8-7e3a-0410-8455-c3a389f83636
2013-01-17 16:40:33 +00:00
Vassil Vassilev
1ae610b211
Fix savannah #99234 .
...
The issue we experienced is that we couldn't pipe the output in the terminal.
The reason is that we were using llvm::outs() which closes explicitly the file
descriptor (thanks Axel for the help debugging).
We introduce our custom stream, which keeps the file descriptor open so that
we can use it in pipes. For debugging purposes, however we use/should use llvm::errs()
The lesson learned:
DONT USE LLVM::OUTS() ANYMORE!
git-svn-id: http://root.cern.ch/svn/root/trunk@48316 27541ba8-7e3a-0410-8455-c3a389f83636
2013-01-17 15:27:14 +00:00
Vassil Vassilev
9881b59a06
Get rid of meta processor options and various improvements.
...
git-svn-id: http://root.cern.ch/svn/root/trunk@47889 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-06 11:47:24 +00:00
Vassil Vassilev
ad0cfca9a6
Get rid of another use of meta processor option.
...
git-svn-id: http://root.cern.ch/svn/root/trunk@47885 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-06 10:52:01 +00:00
Vassil Vassilev
fc6f865dfb
Use contemporary cling coding style :)
...
git-svn-id: http://root.cern.ch/svn/root/trunk@47876 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-06 09:54:20 +00:00
Axel Naumann
05ba8a3a07
Move cling from cint/ to interpreter/ (Will add a "we have moved" readme to cint/cling.)
...
git-svn-id: http://root.cern.ch/svn/root/trunk@45844 27541ba8-7e3a-0410-8455-c3a389f83636
2012-09-05 09:37:39 +00:00