Commit Graph

1841 Commits

Author SHA1 Message Date
Axel Naumann
32852bd800 Missing curly!
git-svn-id: http://root.cern.ch/svn/root/trunk@47001 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-02 12:56:40 +00:00
Axel Naumann
c68930cc52 Make the cxa_atexit replacements more C-like (e.g. don't put them into namespaces).
git-svn-id: http://root.cern.ch/svn/root/trunk@46997 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-02 11:51:05 +00:00
Axel Naumann
0b5e5bda73 Export all symbols from the cling binary, such that the JIT can find them.
git-svn-id: http://root.cern.ch/svn/root/trunk@46996 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-02 11:50:17 +00:00
Axel Naumann
4e90ca5b42 Hopefully last change to RequiredSymbols: given that they are required by the interpreter runtime they should all be symbols from libclingInterpreter. Move it there.
git-svn-id: http://root.cern.ch/svn/root/trunk@46990 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-02 08:11:24 +00:00
Axel Naumann
6035382bb5 Put the symbol requester func into the proper namespace!
git-svn-id: http://root.cern.ch/svn/root/trunk@46987 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-01 19:46:32 +00:00
Axel Naumann
0dea9a66f6 Updated location of RequiredSymbols.cpp
git-svn-id: http://root.cern.ch/svn/root/trunk@46986 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-01 19:38:15 +00:00
Axel Naumann
bf31a650a9 Fix symbol requesting.
git-svn-id: http://root.cern.ch/svn/root/trunk@46983 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-01 19:10:12 +00:00
Axel Naumann
b4a8dcde49 Everyone wants these symbols; for now put the symbol request through static init into UserInterface
git-svn-id: http://root.cern.ch/svn/root/trunk@46982 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-01 16:51:59 +00:00
Axel Naumann
ee3b83e48a Implement unnamed macros:
* MetaProcessor::readInputFromFile passes the content to the Interpreter as if typed at the prompt
* they do not get passed to CINT in TCintWithCling


git-svn-id: http://root.cern.ch/svn/root/trunk@46898 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-30 13:40:25 +00:00
Axel Naumann
5bb394667e Doc fix
git-svn-id: http://root.cern.ch/svn/root/trunk@46897 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-30 13:34:09 +00:00
Axel Naumann
a62cc82f24 Pass CompilationResult through
* MetaProcessor
* loadFile
* TCintWithCling::ProcessLine().
Second part of fixing #98499.

Also fix a few dubious "return 0" instead of returnign the indent in MetaProcessor.


git-svn-id: http://root.cern.ch/svn/root/trunk@46873 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-29 14:23:53 +00:00
Vassil Vassilev
583aceae08 In interactive mode act as a compiler - return !=0 if there were errors.
git-svn-id: http://root.cern.ch/svn/root/trunk@46869 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-29 10:24:14 +00:00
Vassil Vassilev
e5b8645bda Disable test for now.
Right now the issue is not that urgent. We will have to revisit and rethink the
test case.


git-svn-id: http://root.cern.ch/svn/root/trunk@46859 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-27 22:20:01 +00:00
Vassil Vassilev
d70f4b6173 Fix broken by construction test.
git-svn-id: http://root.cern.ch/svn/root/trunk@46858 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-27 21:42:00 +00:00
Vassil Vassilev
f7da8da78f End close the file for diagnostics at proper time.
git-svn-id: http://root.cern.ch/svn/root/trunk@46857 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-27 21:41:21 +00:00
Vassil Vassilev
2908e7f9e4 Do not issue error in case: .x MyFile() - where no string is between the parenthesis.
git-svn-id: http://root.cern.ch/svn/root/trunk@46851 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-27 19:57:29 +00:00
Philippe Canal
c926ac116c Add support for string arguments (allow spaces in them) for example: build.C("dummy18381.C"," " , "customConstructor.o customConstructorDict.o")
git-svn-id: http://root.cern.ch/svn/root/trunk@46847 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-27 01:09:08 +00:00
Philippe Canal
d1f4b8c39e Add code and testing for classes declared inside an anymous namespace
git-svn-id: http://root.cern.ch/svn/root/trunk@46841 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-26 19:51:56 +00:00
Vassil Vassilev
e979b92b16 Return 1 if the VerifyDiagnosticConsumer finds errors (eg. something seen but not
expected or expected but not seen).
Note this is going to break some of the tests, because there are some issues
with the way cling uses the VerifyDiagnosticClient.


git-svn-id: http://root.cern.ch/svn/root/trunk@46832 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-26 14:27:54 +00:00
Vassil Vassilev
516844befe Revert the parser cleanups. The RAII object is not sufficient for some routines.
Add BeginSourceFile so that the RAII object is happy when we do additional parser
recovery.


git-svn-id: http://root.cern.ch/svn/root/trunk@46828 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-26 13:32:41 +00:00
Vassil Vassilev
530c500d15 Add file to cmake build system.
git-svn-id: http://root.cern.ch/svn/root/trunk@46827 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-26 13:21:09 +00:00
Vassil Vassilev
4fd8ccc00d Rollback the transaction if there is an error occurred in one of the transformers.
git-svn-id: http://root.cern.ch/svn/root/trunk@46826 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-26 12:56:49 +00:00
Vassil Vassilev
b07eb9a4ec Move begin/end source file in commitCurrentTransaction to make sure that we
get relevant diagnostics from the transformers.
Fixes the text diagnostic printer bug #98434.


git-svn-id: http://root.cern.ch/svn/root/trunk@46822 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-26 10:08:00 +00:00
Vassil Vassilev
93adbbf34b Remove redundant cleanups.
git-svn-id: http://root.cern.ch/svn/root/trunk@46821 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-26 10:05:51 +00:00
Vassil Vassilev
e92073ebaf Think before commit - it helps... Fixes cling's testsuite.
git-svn-id: http://root.cern.ch/svn/root/trunk@46813 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-25 14:50:54 +00:00
Vassil Vassilev
b978876705 Flip the flag, because of the name change.
git-svn-id: http://root.cern.ch/svn/root/trunk@46810 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-25 14:10:41 +00:00
Vassil Vassilev
8c385cf901 Use better naming.
git-svn-id: http://root.cern.ch/svn/root/trunk@46809 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-25 14:07:19 +00:00
Vassil Vassilev
326c0b21b0 Give a chance to the eventual lazy function creators to do their job. (Thanks Philippe)
git-svn-id: http://root.cern.ch/svn/root/trunk@46804 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-25 12:58:50 +00:00
Vassil Vassilev
5d4af3ddc7 Add a way to disable the complaints of HandleMissing symbol, when it is ok for
the symbol to be missing.


git-svn-id: http://root.cern.ch/svn/root/trunk@46795 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-25 09:17:45 +00:00
Vassil Vassilev
f398425dbb Add note.
git-svn-id: http://root.cern.ch/svn/root/trunk@46791 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-25 08:33:40 +00:00
Philippe Canal
4215db4407 Always return the canonical decl of a function to ease comparison
git-svn-id: http://root.cern.ch/svn/root/trunk@46787 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-24 20:28:03 +00:00
Vassil Vassilev
09ca68c259 Don't dereference null ptr if the transaction has 0 decls
git-svn-id: http://root.cern.ch/svn/root/trunk@46753 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-24 07:34:53 +00:00
Vassil Vassilev
88bd362c63 Keep the const version only for now.
git-svn-id: http://root.cern.ch/svn/root/trunk@46742 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-23 13:03:08 +00:00
Vassil Vassilev
71ccaf68b7 Fix a typo, which will silence doxygen warnings.
git-svn-id: http://root.cern.ch/svn/root/trunk@46734 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-23 08:52:48 +00:00
Vassil Vassilev
10a8ff762d Protect in case no global variable is found.
git-svn-id: http://root.cern.ch/svn/root/trunk@46733 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-23 08:46:38 +00:00
Axel Naumann
835bb9fa1c Try to fix intermittent test failure (library not yet built)
git-svn-id: http://root.cern.ch/svn/root/trunk@46730 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-23 07:25:45 +00:00
Vassil Vassilev
314d9a362c The decls for a transactions should be collected using single interface.
git-svn-id: http://root.cern.ch/svn/root/trunk@46724 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-22 16:43:57 +00:00
Vassil Vassilev
50027e07fc std::vector::data() is not standartized and on windows it cause build failure.
GCC implements it but there is a comment saying:
// _GLIBCXX_RESOLVE_LIB_DEFECTS
// DR 464. Suggestion for new member functions in standard containers.
// data access
Use standartized alternative.


git-svn-id: http://root.cern.ch/svn/root/trunk@46710 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-22 12:35:32 +00:00
Axel Naumann
8e78058564 Revert r46665 until ROOT has an updated llvm == LastKnownGood is bumped.
git-svn-id: http://root.cern.ch/svn/root/trunk@46692 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-19 15:57:14 +00:00
Vassil Vassilev
cbd2ae5bac Keep just the head and the tail of the single-linked list.
git-svn-id: http://root.cern.ch/svn/root/trunk@46683 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-19 14:17:20 +00:00
Vassil Vassilev
acef61e88f Fix not only the address but the string too.
git-svn-id: http://root.cern.ch/svn/root/trunk@46681 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-19 13:49:34 +00:00
Philippe Canal
e60b8ce424 extend testing of typedef to reference
git-svn-id: http://root.cern.ch/svn/root/trunk@46679 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-19 13:33:38 +00:00
Vassil Vassilev
94994c05dc Publish the head of the transaction list so that the transactions become
iteratable. (We will use it in TCintWithCling)


git-svn-id: http://root.cern.ch/svn/root/trunk@46677 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-19 13:30:06 +00:00
Vassil Vassilev
da3a51f5f8 Make the transaction class single list.
git-svn-id: http://root.cern.ch/svn/root/trunk@46676 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-19 13:29:03 +00:00
Philippe Canal
51a176173b Use llvm::isa rathen that QualType::isXYZ as the later reports about the canonical type while we are interested in the direct type. Make sure to recurse if needed after removing the typedefs
git-svn-id: http://root.cern.ch/svn/root/trunk@46675 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-19 13:24:46 +00:00
Vassil Vassilev
d132d3d5ba evaluate now builds DeclRefExpr if there is DeclStmt.
Don't run the wrapper function when the transaction was rolled back.


git-svn-id: http://root.cern.ch/svn/root/trunk@46674 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-19 12:23:34 +00:00
Vassil Vassilev
d916876642 RunFunction takes FunctionDecl as an argument. Thus it avoids a lookup and
simplifies the implementation.


git-svn-id: http://root.cern.ch/svn/root/trunk@46673 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-19 11:56:52 +00:00
Vassil Vassilev
dac353c6df Each transaction has one wrapper function that we use all over.
Register the wrapper function in the transaction so that we can find it without
having to iterate over the rest of the declarations.


git-svn-id: http://root.cern.ch/svn/root/trunk@46672 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-19 11:49:49 +00:00
Vassil Vassilev
3fa63ae560 Make certain tests from the testsuite happy.
The issue was assert in codegen where the DeclRefExpr was built after the
declaration was extracted.


git-svn-id: http://root.cern.ch/svn/root/trunk@46671 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-19 10:46:53 +00:00
Vassil Vassilev
5b30c1e744 Why we didn't see that before. FileCheck is consuming the issued diagnostics,
which per se is terrible...


git-svn-id: http://root.cern.ch/svn/root/trunk@46669 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-19 10:07:41 +00:00