2950 Commits

Author SHA1 Message Date
Axel Naumann
a754fcc65e Update to Jupyter 4.1 binary names. 2016-02-08 11:44:07 +01:00
Axel Naumann
cc2ca03981 Fix cling GitHub Issue #1: libclingJupyter might be called .so 2016-02-08 11:44:07 +01:00
Axel Naumann
4dd09de012 Missing include on Windows; fix preproc indentation. 2016-02-05 17:29:32 +01:00
Axel Naumann
14e101a3b1 Windows needs Windows.h instead of unidist.h. 2016-02-05 17:29:32 +01:00
Axel Naumann
8af1646f97 Better formulation of "integer of potr size". 2016-02-05 16:14:04 +01:00
Axel Naumann
21588e64c2 This test is a no-op in CMake - we need to fix that. 2016-02-05 16:14:04 +01:00
Axel Naumann
2b58f4ad21 Rename to match more generic content. 2016-02-05 11:59:04 +01:00
CristinaCristescu
2906250d08 Add lambda test for null deref. 2016-02-05 11:59:04 +01:00
Axel Naumann
66736733d9 sizeof(pointer) != sizeof(long) on Windows. 2016-02-05 11:44:09 +01:00
Axel Naumann
a306d87760 Add santity check - compiled programs should not see this. 2016-02-05 11:44:09 +01:00
Axel Naumann
a14f305911 Clarify at compile-time that cling cannot handle the new GCC ABI yet. 2016-02-04 20:29:06 +01:00
Axel Naumann
a8dcd932fe Fix expected enum value printing (underlying type). 2016-02-04 18:14:08 +01:00
Axel Naumann
c2172523f4 Add missing #include <tuple>.
The tuple part will be moved to a separate header in the cling extra / overriding include path,
behind a #include_next <tuple>.
2016-02-04 18:14:08 +01:00
Danilo Piparo
359515e06e Remove usage of stringstream and reformulate iteration on tuple elements
in order to  stop the iteration and account for the empty tuple case with
one single specialisation.
We loop at compile time from element 0 to element TUPLE_SIZE - 1
of the tuple. The running index is N which has as initial value
TUPLE_SIZE.
2016-02-04 15:29:16 +01:00
Danilo Piparo
c07e92e42d Add test for empty tuple. 2016-02-04 15:29:16 +01:00
CristinaCristescu
4dd9c812d8 Synthesize InvalidPointerCheck call to take function parameters.
Creating the call for the cling invalid check function required that
the function have a const void *, thus a cast was injected.
Also renamed some of the variable to be more specific and
self-explanatory.
2016-02-04 09:59:06 +01:00
Axel Naumann
692dd6d7ee Use typical sub-llvm path. 2016-02-02 23:14:06 +01:00
Axel Naumann
8621eb091a Simplify regex; #includes; std::. 2016-02-02 20:59:04 +01:00
Axel Naumann
8843128773 Clarify the Jupyter kernel install procedure. 2016-02-02 20:14:09 +01:00
Axel Naumann
95bba98231 Remove unused LICENSE file (kernel uses LICENSE from cling). 2016-02-02 20:14:09 +01:00
Danilo Piparo
90fe0e262e Add to cling value printing capabilities for std::tuple and std::pair. 2016-02-02 12:59:25 +01:00
Axel Naumann
5587ae57e6 Test for ROOT-7918. 2016-01-31 21:29:07 +01:00
Axel Naumann
6a4196e7c8 Do not assume int as underlying enum type (ROOT-7918). 2016-01-31 21:29:07 +01:00
Philippe Canal
7bcebf40ad Fix fatal typo.
The closing of the anonymous namespace was conditional (only if NDEBUG was not defined)
2016-01-28 22:59:07 +01:00
Axel Naumann
0e2029a0e4 Fix ROOT-7837 by silencing diagnostics.
Still assert if the failure is not because of an unparsable type name.
2016-01-28 20:44:08 +01:00
Axel Naumann
ba2d25f20a No diags! Really do iter deref. User fwd decl. 2016-01-28 15:12:50 +01:00
CristinaCristescu
0329828fd8 Add tests for cling NullDeref.
If stmt testing and checking that the execution is stopped after
a null deref warning.
2016-01-28 15:12:50 +01:00
CristinaCristescu
6ade14763f Replaced the PointerCheckInjector's std::map data member with a llvm::DenseMap for efficiency reasons. 2016-01-28 15:12:50 +01:00
Axel Naumann
5fb064400f Add test for ROOT-7426. 2016-01-28 15:12:50 +01:00
Axel Naumann
83ca41354e Disable access checks for value printing (ROOT-7426). 2016-01-16 20:29:05 +01:00
Axel Naumann
fd8be83d46 Revert unintentional add. 2016-01-14 20:59:08 +01:00
Elisavet Sakellari
e6487af04a Forgot to remove commented code 2016-01-14 20:44:14 +01:00
Elisavet Sakellari
ef6320070f Additional minor changes 2016-01-14 20:44:14 +01:00
Elisavet Sakellari
e9f1240015 Small change in ASTImportSource.cpp 2016-01-14 20:44:14 +01:00
Elisavet Sakellari
01a4526fc6 Edited test for Multiple Interps, and added some fixes 2016-01-14 20:44:14 +01:00
Elisavet Sakellari
4ac0a10a3e Added test for MultipleInterpreters, and some changes. 2016-01-14 20:44:14 +01:00
Elisavet Sakellari
8f51dd1617 Remove default values in IncrementalParser functions 2016-01-14 20:44:14 +01:00
Elisavet Sakellari
b0bdcf4c56 First commit for the Multiple Interpreters. 2016-01-14 20:44:14 +01:00
Elisavet Sakellari
ee92892ad4 First commit for the Multiple Interpreters 2016-01-14 20:44:14 +01:00
CristinaCristescu
8495dc7dd8 Cosmetics of NullDerefProtectionTransformer + isDeclCandidate CXXMemberCallExpr case.
If we have a CXXMemberCallExpr we do not check the arguments of the call,
we only check the callee.
2016-01-14 20:44:14 +01:00
CristinaCristescu
b5594df690 Refactor NullDerefProtectionTransformer.
The class NodeContext was removed since collecting individual Stmts
is not necessary, due to the change of how the visiting of one
single Stmt is done, which now recurses on the children of the Stmt.
Thus, the AST is changed directly by the VisitX methods.

VisitCompoundStmt is not necessary since the CompoundStmt derives from
Stmt and the collection of Stmt of the CompounStmt is visited
through the children visitation.

VisitCXXMemberCallExpr is now covered by the recursive visiting in the
VisitCallExpr method.
2016-01-14 20:44:14 +01:00
CristinaCristescu
94dd1ea523 Visit Stmt children for null deref check.
The previous version of the Null deref visitor was defaulting to
VisitStmt when the Stmt type was unknown, thus allowing for some
types of Stmt X for which a VisitX was not implemented to default
to VisitStmt and not check the content of it. In order to check
any type of Stmt for possible subexpressions which contain s Stmt
that derefrences a Null, the VisitStmt was extended to check its
children.

Only the Stmt types, X, which directly containing a null deref expression
have an explicit VisitX with the exception of CXXMemberCallExpr,
because this type would otherwise default to VisitCallExpr which has
a different check for its structure.
2016-01-14 20:44:14 +01:00
Axel Naumann
abf65cb689 Typo. 2016-01-13 10:14:06 +01:00
Axel Naumann
62ea6ec80a Do not rely on init_list intricacies. 2016-01-13 09:59:04 +01:00
Axel Naumann
1044052eed Range-based for loop requires type for loop variable. 2016-01-13 09:59:04 +01:00
CristinaCristescu
932860cbb2 Replace AST node with node containing NullDeref check and fix NullDeref/Iterator.C test.
Initially the NullDerefProtectionTransformer was prepending a
If statement before the possible Null derefrencing. This was
chenged by a runtime function call which included the check
for Null and invalid address memory, but was replacing the
whole AST node so the parent node of the Expr type would disappear,
resulting in a wrong AST. The correct solution was to replace the
SubExpr of the Expr that contained a possible Null derefrencing.
This was done by using the specific setters for each Expr type
that is detailed in the NullDeref Visiting.
2016-01-12 15:14:08 +01:00
Axel Naumann
d60d4e76be Two missing CMake vars for lit.cfg. 2016-01-12 12:27:43 +01:00
Axel Naumann
b6c236f345 Find doxygen.intro. 2016-01-12 11:29:12 +01:00
CristinaCristescu
44aa4a6180 Add parameter description to avoid warning generation. 2016-01-07 16:29:07 +01:00
Axel Naumann
2670c5e923 Mention Jupyter. Now that we have root-mirror/cling.git, use that as the default repo. 2016-01-07 16:14:07 +01:00