Commit Graph

2066 Commits

Author SHA1 Message Date
CristinaCristescu
e41ba01959 ValueExtractionSynthesizer: check for the existance and accessibility of copy constructor. (ROOT-6185). 2014-05-26 18:30:56 +02:00
Axel Naumann
39ed28c03e Void has no address. 2014-05-26 17:37:57 +02:00
Vassil Vassilev
6e9cd68cb2 Construct a library call example. The full reflection-based call still to come. 2014-05-23 12:36:01 +02:00
Vassil Vassilev
6d8b154f7f Fix broken by constrution test. 2014-05-23 12:36:01 +02:00
Vassil Vassilev
73752eff5e Bring to more up-to-date an xfailure. 2014-05-23 12:36:01 +02:00
Vassil Vassilev
ec31eb9db8 Test value printing of template constructs 2014-05-22 11:13:55 +02:00
Vassil Vassilev
ee9fc709ab We don't need the ValuePrinter.h 2014-05-21 18:11:58 +02:00
Vassil Vassilev
d03ba0fb9f Reduce cling's runtime overhead. 2014-05-21 18:11:58 +02:00
Vassil Vassilev
b563268f19 Typo. 2014-05-21 18:11:58 +02:00
Vassil Vassilev
b855d1111c Use proper indents. 2014-05-21 18:11:58 +02:00
Vassil Vassilev
e1c16dec1b Move the documentation at the accurate place. 2014-05-21 18:11:58 +02:00
Vassil Vassilev
0d05ab5145 Remove unused function. 2014-05-21 18:11:57 +02:00
Bertrand Bellenot
2b34bf819e Update cling test using .help to match the new help format 2014-05-21 17:18:57 +02:00
Vassil Vassilev
168a59dbf9 Try to print the fully qualified name if possible. 2014-05-21 15:39:55 +02:00
Bertrand Bellenot
94dd34f0bd Another '.' to metaString replacement 2014-05-21 15:13:56 +02:00
Bertrand Bellenot
04e8f11529 Use the metaString variable instead of .(dot), since in cling one can override the '.' with something else (thanks Vassil for the feedback) 2014-05-21 15:05:57 +02:00
Bertrand Bellenot
a7000c871c Improve the cling .help output (Jira #ROOT-5844) 2014-05-21 14:26:59 +02:00
Vassil Vassilev
d44612a63c Add a filename to the unnamed macro handling. Fixes ROOT-4760. 2014-05-21 12:44:57 +02:00
Vassil Vassilev
de3809bb51 Rely on the expr kind, instead of some compiler generated exprs which can be missing. 2014-05-21 09:36:56 +02:00
Vassil Vassilev
c1411a261b Remove obsolete config switches.
Fixes:
Warning: Tag `SYMBOL_CACHE_SIZE' at line 290 of file /mnt/vdb/lsf/cling-37f64ff95641-full-1498388/obj/tools/cling/docs/doxygen.cfg has become obsolete.
To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
Warning: Tag `SHOW_DIRECTORIES' at line 490 of file /mnt/vdb/lsf/cling-37f64ff95641-full-1498388/obj/tools/cling/docs/doxygen.cfg has become obsolete.
To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
Warning: Tag `HTML_ALIGN_MEMBERS' at line 819 of file /mnt/vdb/lsf/cling-37f64ff95641-full-1498388/obj/tools/cling/docs/doxygen.cfg has become obsolete.
To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
Warning: Tag `USE_INLINE_TREES' at line 989 of file /mnt/vdb/lsf/cling-37f64ff95641-full-1498388/obj/tools/cling/docs/doxygen.cfg has become obsolete.
To avoid this warning please remove this line from your configuration file or upgrade it using "doxygen -u"
Warning: doxygen no longer ships with the FreeSans font.
You may want to clear or change DOT_FONTNAME.
2014-05-21 09:36:56 +02:00
Vassil Vassilev
51b55438a1 Before proceeding to call the special user-specific function check for the right overload.
This implementation is a bit cumbersome, but the key advantage is that we do not
create AST nodes on the heap. We create some nodes which will help the overload
candidate selector to do the selection. After it returned true/false (there is/isn't
proper function to call) we free all the used memory and proceed in calling the
user defined function.
2014-05-20 13:54:58 +02:00
Vassil Vassilev
7b9f839ef5 Get the ptr type of a non reference type, in order to meet the special printValue/Type function convention. 2014-05-20 13:54:57 +02:00
Vassil Vassilev
afae38d98c Use ticks instead of quotes when printing a single char. 2014-05-20 13:54:57 +02:00
Vassil Vassilev
a6eedd674b Extract out common implementation. 2014-05-20 10:40:58 +02:00
Vassil Vassilev
66faddd2db Style. 2014-05-20 10:40:57 +02:00
Vassil Vassilev
37f64ff956 Typo. 2014-05-19 16:27:54 +02:00
Vassil Vassilev
2b9860162e Typo. 2014-05-19 16:27:54 +02:00
Vassil Vassilev
7ae23a4831 Disable C specific code, it needs more work in order to make the value printing in C work. 2014-05-19 16:27:54 +02:00
Vassil Vassilev
729d8da586 Inconsistently to named macros with return stmts we don't print the result of unnamed macros. 2014-05-19 16:05:57 +02:00
Vassil Vassilev
e5a04f9375 Expand 'properly' VPAuto into whatever the value printer synthesizer desided to do. 2014-05-19 16:05:57 +02:00
Vassil Vassilev
5deb236214 Dump only if value printing was enabled. Add assertion. 2014-05-19 16:05:57 +02:00
Vassil Vassilev
68d86e2537 Add proper assert. 2014-05-19 16:05:57 +02:00
Vassil Vassilev
58b76265fa Forget about ValuePrinterInfo. 2014-05-18 20:45:56 +02:00
Vassil Vassilev
711e39e092 Pass in the transaction ptr, whoose value we print out. 2014-05-18 18:08:59 +02:00
Vassil Vassilev
5bdf863d5f Do not dump for void, resetting the value of the value. 2014-05-18 18:08:59 +02:00
Vassil Vassilev
5167e8f992 Improve the C version of the value printing. 2014-05-18 18:08:59 +02:00
Vassil Vassilev
e1367a1f17 Add a simple overload candidate selector. 2014-05-18 18:08:59 +02:00
Vassil Vassilev
74ad676363 Allow handling of ptr types by the non-specialized version. 2014-05-18 18:08:59 +02:00
Vassil Vassilev
10259542d2 Add some future reference for the C runtime. 2014-05-18 18:08:59 +02:00
Vassil Vassilev
9b5c844b9b Change the wrapper signature to take a void* (useful for the C mode) 2014-05-18 18:08:59 +02:00
Vassil Vassilev
46636a18d3 No need to pass the interpreter. We have it. 2014-05-18 18:08:59 +02:00
Vassil Vassilev
28de2c1cc2 No need to pass in the ASTContext, we have it. 2014-05-18 18:08:59 +02:00
Vassil Vassilev
47a0d9e5e8 No need of complex indirections and 'fancy' function signatures. Simplify. 2014-05-18 18:08:59 +02:00
Vassil Vassilev
3dc52b1e5f No need of 'public' StreamClingValue. 2014-05-18 18:08:58 +02:00
Vassil Vassilev
96be4e98c5 Remove dangling comment. 2014-05-18 18:08:58 +02:00
Vassil Vassilev
3e5af816aa No need to synthesize anything anymore. 2014-05-18 18:08:58 +02:00
Vassil Vassilev
3dfc56637b Get rid of redundant class. 2014-05-18 18:08:58 +02:00
Vassil Vassilev
c86fbc27b9 Rewire the dumping on cling::Value to its new implementation.
Dump cling::Value within setNoAlloc routines because this is its lifespan,
otherwise gets deleted if nobody requested it. I.e it was created only for
value printing purposes.

Dump cling::Value outside setWithAlloc because the actual value is not put inside
until the call to ::new finishes, thus we need to do it outside, i.e in EvaluateInternal.

Switch on the ValueExtraction synthesizer even when 'just' value printing. We
depend on it. Must be factored out properly in one class.

Stop attaching the value printing template magic, which didn't work in some cases.

Update the ref file, because now there is better type information.

Adapt the user-defined printout functions (TDatime).
2014-05-18 18:08:58 +02:00
Vassil Vassilev
245f098fe1 Record the outcome of VPAuto (auto detection if a value should be printed out). 2014-05-18 18:08:58 +02:00
Vassil Vassilev
214376a899 Implement cling::Value dump as a 'static' operation.
We need to look for a user overload of cling::printValue and printType and give
the control to it. If not specified, fallback into the default implementation.
2014-05-18 18:08:58 +02:00