Commit Graph

2427 Commits

Author SHA1 Message Date
Frederich Munch
b012e3950c Fix return value for __cxa_atexit. 2017-01-25 11:14:10 +01:00
Frederich Munch
4b1389bf38 Add platform::Demangle function. 2017-01-24 12:29:35 +01:00
Frederich Munch
2e2d44e995 Fix API usage error in LLVM unicode routines. Use reinterpret_cast to force compile time errors. 2017-01-20 20:59:08 +01:00
Frederich Munch
811840740d Windows: Force console output to UTF-8. 2017-01-18 16:43:26 +01:00
Frederich Munch
de5363ee63 Fix UTF-8 output when using g++ on OS X. 2017-01-18 15:59:12 +01:00
Frederich Munch
5e0a4b1fb1 Use LLVM for Unicode conversion on gcc < 5. Force export of toUTF8 specializations otherwise. 2017-01-18 15:59:12 +01:00
Frederich Munch
b48d0c3779 Windows: Fix wchar_t and wstring_convert on MSVC. 2017-01-18 15:59:12 +01:00
Frederich Munch
08f8c4fa80 Move to UTF-8 string conversion into separate module. Support UTF-8 output on Windows. 2017-01-18 15:59:12 +01:00
Frederich Munch
7eea9235da Have Value::dump write unicode and strings with embedded data properly. 2017-01-18 15:59:12 +01:00
Frederich Munch
f39f1f7318 Fix C-string printing for safety, speed, and data loss. Prior behavior assumed both pointer and pointer+10000 were valid memory. Add override for const char arrays so that they can be printed faster. Make cling::printValue a lossless operation. Previously strings with non-ASCII printable chars were transformed into an invalid c-string and the data could not be used to recreate the string. 2017-01-18 15:59:11 +01:00
Frederich Munch
fb96f9c040 Support unicode std::strings. 2017-01-18 15:59:11 +01:00
Axel Naumann
63482c499d Do not wait for a "*" if there is any other token after the "/" (ROOT-8529). 2017-01-13 11:59:10 +01:00
Axel Naumann
cfbf9ee8c8 Return whether there was a (non-punct) token between now and next (ROOT-8529). 2017-01-13 11:59:10 +01:00
Vassil Vassilev
bb2de6d3b0 Disambiguate which TargetOptions class we need.
Improves readability and works around a subtle modules bug.
2017-01-12 17:14:07 +01:00
Axel Naumann
8579aea04d Style. 2017-01-12 11:14:34 +01:00
Axel Naumann
bfe5e722e4 Grab the diag count from the target. 2017-01-12 11:14:34 +01:00
Axel Naumann
d02d88ac18 Turn on prompt diags if not raw input. 2017-01-12 11:14:34 +01:00
Axel Naumann
a5581de0fd Fix warning: moving a temporary object prevents copy elision. Thanks, clang! 2017-01-10 16:14:10 +01:00
Axel Naumann
8c3e5b2e2b Reset error count when hitting ext_return_has_expr. 2017-01-10 15:59:34 +01:00
Axel Naumann
4b78d08dfa Use a filtering diagclient for prompt input.
Before, cling was thrashing the location specific diag map making any diag emission really slow.
2017-01-10 15:59:34 +01:00
Axel Naumann
2c0cad5b49 Whitespace. 2016-12-20 14:14:04 +01:00
Frederich Munch
dbb5aa6186 Remove ForceSymbolsAsUsed from Interpreter.h. 2016-12-20 14:14:04 +01:00
Frederich Munch
f846990f8d Windows: Fix InterpreterException not being caught and terminating. 2016-12-20 12:59:08 +01:00
Frederich Munch
4d41bd315f Make InterpreterException::diagnose virtual and return a boolean. Refactor inheritance chain for InterpreterException. 2016-12-20 12:59:08 +01:00
Frederich Munch
d68ef916ac Use LLVM stream wrappers to reduce complexity and line counts. 2016-12-20 12:29:06 +01:00
Axel Naumann
c1e79e499d From Roman Zulak: Flush stdout less (textinput part). 2016-12-19 15:04:23 +01:00
Axel Naumann
43fe0be0a0 From Roman Zulak: Flush stdout less (cling). 2016-12-19 13:59:11 +01:00
Frederich Munch
1aabc2dbe0 Add simple wrappers for buffered LLVM streams. Use them to control Value printing format. 2016-12-19 13:59:11 +01:00
Frederich Munch
075f4ffa83 Add cling output streams to cling/Utils/Output.h 2016-12-19 13:59:11 +01:00
Bertrand Bellenot
ddca7a12a2 Speling. 2016-12-19 12:14:26 +01:00
Vassil Vassilev
06704a97fb Tabs. 2016-12-17 21:14:25 +01:00
Frederich Munch
2897531390 Windows: Fix crash on aliased globals 2016-12-15 14:29:09 +01:00
Frederich Munch
7ee942f14e Windows: Avoid mangling Dtor_Comdat 2016-12-15 14:29:09 +01:00
Frederich Munch
8644c890f4 Windows: Fix crash on unloading of Dtor_Comdat destructors. 2016-12-15 14:29:09 +01:00
Axel Naumann
b6114f10e1 Fix logic precedence, as in sort of: if not assert-test then message. 2016-12-14 18:29:07 +01:00
Danilo Piparo
7d9d012893 Remove warning 2016-12-14 17:14:21 +01:00
Frederich Munch
4427d1a5c2 Have .> cmd expand env-vars. Fixes OutputRedirect test on Windows. 2016-12-14 09:29:10 +01:00
Frederich Munch
1bf0e16d7f Redirect to file properly when no space between > and filename. 2016-12-14 09:29:10 +01:00
Frederich Munch
e0ddb56b20 Fixes for output redirection.
Decouple redirection state from MetaProcessor and MaybeRedirectOutputRAII.
Only suspend redirection when writing to the prompt.
Allow user to redirect to files named 1, 2, &1, &2.
Allow stderr and stdout to be redirected to one another.
Don't create _IO_2_1_stdout_ file.
2016-12-14 09:29:10 +01:00
Frederich Munch
0fce2df9ed Only initialize redirection state if used. 2016-12-14 09:29:10 +01:00
Frederich Munch
bedf4302e4 Avoid unnecessary string allocations. 2016-12-14 09:29:10 +01:00
Frederich Munch
f7e4bb2615 Add default for MetaProcessor::process Value argument. 2016-12-14 09:29:10 +01:00
Frederich Munch
d4aed2527d Add CLING_EXPORT macro. 2016-12-12 12:44:09 +01:00
Frederich Munch
73b7f6d911 MetaProcessor::process requires single line input. 2016-12-12 12:29:38 +01:00
Frederich Munch
9becb2a25c Remove unused members of MetaProcessor in Release. 2016-12-12 12:29:38 +01:00
Frederich Munch
b7bdd91739 Add error handling to MetaProcessor::readInputFromFile. 2016-12-12 12:29:38 +01:00
Frederich Munch
178c33e251 Optimize InputValidator to avoid unnecessary copy when retrieving the input directly before a reset, and to release memory when reset. 2016-12-12 12:29:38 +01:00
Frederich Munch
91c925632c Add template keyword support to InputValidator. 2016-12-12 12:29:38 +01:00
Frederich Munch
723bed09d5 Add preprocessor #if conditional support to InputValidator. 2016-12-12 12:29:38 +01:00
Frederich Munch
72c3eac1e1 Add block comment support to InputValidator. 2016-12-12 12:29:38 +01:00