Commit Graph

703 Commits

Author SHA1 Message Date
Yuka Takahashi
9c7abadde0 Implement toString interface to gInterpreter
This is the final version of "printValue" discussion.

We agreed that printValue interface should be altered to ToString
interface, which can be invoked `gInterpreter->ToString(XYZ)`. (ToString is in TCling and toString is in Interpreter :D)

This patch contains:

- Implementation of toString in Interpreter.cpp
- Re-Implementation of ClingPrintValue to use ToString because I changed to use Evaluate some time ago.
- Removing of RVec version of printValue which wasn't used at all
- Fix test/vecops_rvec.cxx, printValue is never supposed to be called by a normal user.
2018-10-04 17:13:34 +02:00
Danilo Piparo
a9160b6374 Fix tag lookup test 2018-09-24 09:58:50 +02:00
Danilo Piparo
f2b6205182 Remove fatal typo in tag lookup tests 2018-09-24 09:13:47 +02:00
Danilo Piparo
333bf59b14 Fix Tag test: the test failed because of a typo
the tag called "E" was looked for but its name tested against the
string "N"
2018-09-22 09:59:07 +02:00
Danilo Piparo
4d3fa7427b Add test for the Tag lookup helpers. 2018-09-22 09:14:48 +02:00
Vassil Vassilev
272905eced Implement clang plugin support.
Clang allows third party shared libraries to provide user-defined
extensions. For example, a custom libTemplateInstantiation.so can
visualize all template instantiation chains in clang. To enable it
one needs to pass a set of options such as -fplugin.

Cling should be able to inherently work with clang plugins. However,
cling still does not make full use of the clang driver where the plugin
setup is handled.

This patch enables plugins in cling and extends them in some aspects.
In particular, cling allows loading of plugins from shared libraries
but also if they are linked to the same library where cling is. This is
very useful in cases where cling runs itself in a shared library (eg
libCling). Users of libCling (such as ROOT) prefer to keep all llvm and
clang related symbols local to avoid symbol clashes if there is another
version of clang and llvm linked against a package. This can be done by
dlopen-ing libCling with RTLD_LOCAL visibility mode. Then the only way
for clang plugins to work in this scenario is to be linked to libCling.

Patch by Aleksandr Efremov and me.
2018-07-28 13:17:44 +02:00
Axel Naumann
5e0ff39cd8 Test printValue on unutterable types. 2018-06-27 08:45:21 +02:00
Simeon Ehrig
9a4418b3c0 Improvements for Pull Request #240
- little changes at comments and code style
- try to use const in IncrementalCUDADeviceCompiler, where is possible
- move CUDA device code compiler instance to IncrementalParser
- change the members of CuArgs to const and adjust the setCuArgs method
- use std::vector<string> instead llvm::Smallvector<const char *> to build argv for executeAndWait
- improve the error messages of generatePCH(), generatePTX() and generateFatbinary()
- replace m_Counter with a copy in IncrementalCUDADeviceCompiler to avoid involuntary changes
2018-06-25 08:29:07 +02:00
Simeon Ehrig
68cffbb853 Improve CUDA device code testcases. 2018-06-25 08:29:07 +02:00
Simeon Ehrig
50bc19f6b5 Add some complex cuda template kernel test cases. 2018-06-25 08:29:07 +02:00
Simeon Ehrig
2011246c17 Overwork CUDA device tests.
- add cudaDeviceSynchronize() at every kernel launch
- remove small address bug at cudaMemcpy, if host array is used
- in parallel test cases, replace fixes thread number with variable
- overworked shared memory kernel
2018-06-25 08:29:07 +02:00
Simeon Ehrig
e7b0e22ae8 Add test cases for CUDA features.
- CUDA __constant__ memory
- CUDA global __device__ memory
- CUDA __host__ prefix
- CUDA kernel launch with arguments
- CUDA templated kernels
- CUDA shared memory with dynamic runtime
- CUDA Streams
- test if CUDA device is available
2018-06-25 08:29:07 +02:00
Axel Naumann
673a1d63a4 cling PR 233 (#2038)
Add llvm module pass to generate unique cuda module ctor/dtor names.

This llvm module pass address the follow problem. Every llvm module has a cuda ctor and dtor (if a cuda fatbinary exist), with at least a function call to register the fatbinary. The ctor/dtor can also include function calls to register global functions and variables at runtime, depending on user's code. The lazy compilation detects functions by the name. If the name (symbol) already exists it uses the existing translation. Otherwise it translates the function on first use (but it never translates twice). Without the module pass, Cling will always use the translation of the first module.

The testcase use the reflection of the gCling interpreter object. It takes two random modules and compare the symbols of the cuda module ctor and dtor.

Also add function, which change the symbol of the cuda module ctor and dtor to preprocessor compliant symbols.
2018-05-18 11:14:07 +02:00
Axel Naumann
855d7224ae cling can now print lamda-dependent types! 2018-04-30 16:29:42 +02:00
Axel Naumann
e39e1baf94 Do not rely on value printer to side-#include <string>. 2018-04-30 16:29:42 +02:00
Vassil Vassilev
c2ce10091f Fix the expected fully qualified type. 2018-04-21 16:14:23 +02:00
Vassil Vassilev
4a226ee47a Desugar auto types allowing to print the full qualification of a type. 2018-04-19 17:59:08 +02:00
Vassil Vassilev
f70caf92b4 Check if targets exist and then add a dependency on them.
Fixes -Dclingtest=On; make check-cling.
2018-04-19 14:29:07 +02:00
Axel Naumann
febddd23bc Update test to follow new output. 2018-04-17 13:59:31 +02:00
Simeon Ehrig
3b656d1d3f add automatic load of libcudart.so at start of cling -xcuda 2018-03-23 18:29:07 +01:00
Simeon Ehrig
4f73d1b93d reduce arguments at start of cling -xcling
the argument --cuda-host-only and the default c++ stardard will be set at start of cling -xcuda
2018-03-23 18:29:07 +01:00
Vassil Vassilev
c2bda52ba2 The test is expected to fail on cling standalone. 2018-03-11 17:14:05 +01:00
Vassil Vassilev
7b70052776 Add forgotten to commit protection and check clause.
This should have landed in 7554be9571.
2018-03-10 10:29:05 +01:00
Vassil Vassilev
01dbb6d9d5 Use a stable way to determine the address of printed objects.
Using unary operator address of (eg. MyClass m; &m) takes into account
overloaded operators which may not give us the precide address of the
allocated storage.

This patch teaches cling to use std::addressof instead.
2018-03-08 22:44:16 +01:00
Vassil Vassilev
6eca8bd693 Revert "Silence cling test error until after the break."
This reverts commit 16b0a0b8bb2aa4415a9a40138b70406f4c2b6c20.

The error seems to be fixed but we forgot to update the test.
2018-03-08 22:44:15 +01:00
Vassil Vassilev
e9c073dbd0 Remove outdated and commented cmake arg. 2018-02-20 13:44:05 +01:00
Vassil Vassilev
53c9768f20 Remove redundant dependency 'count'. 2018-02-20 13:44:05 +01:00
Axel Naumann
b302a6bcfe Silence cling test error until after the break. 2017-12-21 10:48:27 +01:00
Axel Naumann
88edc07e65 Adjust after increased fp precision. 2017-12-05 15:40:37 +01:00
Axel Naumann
1ac9f65512 Update to new output format. Use CHECK-NEXT. 2017-12-05 15:40:37 +01:00
Axel Naumann
25849d68c4 Update ref to include <invalid memory address> 2017-12-05 15:40:37 +01:00
Axel Naumann
a662db9c4c Adapt to new=old value printer: "1.000000" for a double 1 instead of "1".
Revert "Adapt to format changes in floating point value printing."

This reverts commit a15ef54fb4c5152eeff740cc1f3be6249ede26e6.
2017-12-05 15:40:37 +01:00
Axel Naumann
315dfad70e Adapt to new default opt level.
As the default opt level decides which user-set opt levels cling will complain about, "control flow" changes were needed for the tests.
2017-11-07 19:44:33 +01:00
Axel Naumann
a9808afd40 Adapt to format changes in floating point value printing. 2017-11-07 19:44:33 +01:00
Vassil Vassilev
c912c9437d Switch back to O0.
We have a suboptimal behavior in the way cling optimizes code in O2 mode.
Disable it until the issue is understood and fixed.
2017-11-03 16:19:32 +01:00
Axel Naumann
9f6e4d0ba0 Add test for "Also recognize templates as identifier." 2017-09-13 18:38:18 +02:00
Philippe Canal
f715135d1c Don't clang-format cling test script.
Since the test script is not a fully compliant C++ file, clang-format can not
(be expected to) follow its unusual conventions/requirements.
2017-08-24 18:59:04 +02:00
Philippe Canal
6c368913e7 clang-format suggestion 2017-08-24 17:03:58 +02:00
Frederich Munch
38c4b902cf Fix registration of other atexit functions during an atexit handler. Recursive registration of atexit handlers is legal and should be handled, not ignored. 2017-08-24 17:03:58 +02:00
Frederich Munch
fb2e8fc7a4 Fixes for CERN-LLVM. 2017-07-15 10:14:38 +02:00
Frederich Munch
eba5ccd09a Update DeclCollectorPPAdapter to allow unloading of #undef command. 2017-07-15 10:14:38 +02:00
Roman Zulak
4a8d300bb1 When looking for the end of a block comment, really don’t bother with nesting. Finding the first end is good enough, the real parser can warn about any balancing issues. 2017-07-13 10:21:58 +02:00
Roman Zulak
6f5594ab4d Fix block comments greedily looking for the next asterisk. 2017-07-13 10:21:58 +02:00
Bertrand Bellenot
8720965ee5 Dont pass -fPIC flag on Windows (unsupported option) 2017-07-06 16:59:40 +02:00
Bertrand Bellenot
5947e13cb9 Don't run Gnu.C test on Windows... 2017-07-06 16:44:06 +02:00
Frederich Munch
cdf5c72f1d Fix tests on platforms with __float128 without forcing C++14.
This reverts commit c11224dce0.
2017-07-05 10:00:05 +02:00
Frederich Munch
aad084a75a UserInterface: cling is discarding the last line if it does not have a newline. 2017-07-04 15:29:09 +02:00
Axel Naumann
c11224dce0 Force -std=c++14 to enable __STRICT_ANSI__.
This removes __float128 warnings (enabled when building cling, disabled at runtime due to missing
support in clang) on MacOS with GCC.
2017-07-04 11:29:45 +02:00
Frederich Munch
4739761b89 Don’t clear GNUMode when user has specifically asked for it. There are uses that are valid even if the host compiled with _GLIBCXX_USE_FLOAT128. 2017-06-28 16:15:10 +02:00
Axel Naumann
6ec2c42b3c Reflect updated function name in error message. 2017-06-26 17:44:07 +02:00
Axel Naumann
c283f26a8a Fix test to check the right thing. 2017-06-26 17:44:07 +02:00
Axel Naumann
bef7762723 Remove outdated comment.
clang does warn about backslash-followed-by-tab.
2017-06-23 15:14:10 +02:00
Frederich Munch
df4aea2fb0 Add continuation support for comma and backslash characters. 2017-06-23 15:14:10 +02:00
Frederich Munch
7825094907 Fix test for CERN/master. 2017-06-23 10:44:12 +02:00
Frederich Munch
137e1a48af Cleanup test formatting. 2017-06-23 10:44:12 +02:00
Frederich Munch
522b5f491c Add support for multiple arguments in one pragma call. Add support for multiple styles: 2017-06-23 10:44:12 +02:00
Frederich Munch
955b5423e4 Make sure to declare gCling in C-mode. Skip failing test in AtExit.C. 2017-06-22 20:30:27 +02:00
Frederich Munch
8f29132120 Fix -fsyntax-only flag which changed in 0d15357 and to allow usage of gCling.
0d15357 unintentionally blocked inclusion of RuntimeUniverse.h when using -fsyntax-only.
2017-06-22 16:39:14 +02:00
Frederich Munch
ffa8f951ce Combine similar tests into one file. 2017-06-21 08:29:11 +02:00
Frederich Munch
e641e0e837 Compress bools into bitfields. 2017-06-21 08:29:11 +02:00
Frederich Munch
1cc08e2cbe Windows: Fix type printed for test/Utils/Transform.C 2017-06-21 08:29:10 +02:00
Frederich Munch
981e2f61f3 Fix typo. 2017-06-14 11:29:05 +02:00
Roman Zulak
2806ec0f61 Warn if lambdas in global scope use copy capture.
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2017-06-12 18:14:31 +02:00
Roman Zulak
6a8632d451 Fix trying to destruct C structs after printing on prompt. Don't bother destructing C++ objects who have trivial destructors.
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2017-06-12 18:14:30 +02:00
Roman Zulak
9ea5a480da Remove dead code from LLVM upgrade.
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2017-06-09 17:45:50 +02:00
Vassil Vassilev
f10a89efb1 Remove on_clone, it doesn't exist anymore in llvm. 2017-06-08 10:29:13 +02:00
Vassil Vassilev
8f257e74d3 Create a virtual file entry for each input line.
This is the only way not to confuse the diagnostics engine of upgraded clang.

Also, this gives us a few advantages:
  * We can compare more precisely the source locations of diagnostics;
  * We can merge the code completion code path which works with file entries;
  * We can rely better when specifying //expected-note-s in different files.
2017-06-08 10:29:13 +02:00
Vassil Vassilev
a1bd767b6b Adapt to interface changes due to upgrade to r302975. 2017-06-08 10:29:13 +02:00
Frederich Munch
77bda84fb2 Destroy elements in reverse order of construction.
Prevents possibility of last element referencing now invalid first element.
2017-06-06 13:59:18 +02:00
Frederich Munch
2d141ff840 Change evaluation test to track instances better. 2017-06-06 13:59:18 +02:00
Axel Naumann
4922050e9b Create lit feature for stand-alone / non-embedded cling and use it! 2017-05-11 16:44:31 +02:00
Axel Naumann
a3b7f8b2b5 Fix C comments with slash. By Roman Zulak! 2017-05-11 09:00:00 +02:00
Axel Naumann
c7fcec5a46 Typo causing unrelated failure. 2017-05-09 08:59:40 +02:00
Axel Naumann
93869de6c7 Test ROOT-7016. 2017-05-05 12:14:05 +02:00
Axel Naumann
52d32de70c Add tests for #pragma cling optimize and .O 2017-04-12 15:44:35 +02:00
Philippe Canal
f5c7037763 Fix ROOT-8739: Lookup of symbol inside of namespace shadowed by function (in another 'used' namespace).
This was happening when a namespace had the same as the function in a namespace that was 'used'.  Namely,
in the issue report it was the 'next' namespace and the function std::next.

This required the quick search function in LookupHelper.cxx to properly handle the return value of utils::Lookup::Named.
2017-04-07 21:14:06 +02:00
Philippe Canal
3a1db539f6 Revert "Fix ROOT-8739: Lookup of symbol inside of namespace shadowed by function (in another 'used' namespace)."
This reverts commit 0728f30ead6c1cca74bf31b93dc9a1cb616a3e35.
2017-04-07 20:44:04 +02:00
Philippe Canal
68283cac47 Fix ROOT-8739: Lookup of symbol inside of namespace shadowed by function (in another 'used' namespace).
This was happening when a namespace had the same as the function in a namespace that was 'used'.  Namely,
in the issue report it was the 'next' namespace and the function std::next.

This required the quick search function in LookupHelper.cxx to properly handle the return value of utils::Lookup::Named.
2017-04-07 20:29:17 +02:00
Axel Naumann
b266e2e5fc Implement first ".trace" command. From Viktor Khristenko! 2017-04-04 15:14:05 +02:00
Frederich Munch
0d42a482e0 Add test of function level static variables. 2017-03-31 10:29:22 +02:00
Frederich Munch
165e7ea0b5 Fix collection printing for pairs, recursion, and std::vector<bool>. 2017-03-24 14:59:07 +01:00
Frederich Munch
f28c04c1a2 Add Interpreter::getMacroValue method. 2017-03-23 15:59:04 +01:00
Axel Naumann
7c1fbfcf9f Require ">" after ".5" to accept it as redirection (ROOT-8696). 2017-03-22 21:14:29 +01:00
Frederich Munch
00ffd4c420 CMake: Remove extraneous dependencies for CLING_TEST_DEPS. 2017-02-21 16:34:19 +01:00
Frederich Munch
2a41c186d8 Lit: Add IsWindows variable. 2017-02-21 16:34:19 +01:00
Frederich Munch
42971e42cd Lit: Add %mkdir, %rm, and %rmdir substitutions. 2017-02-21 16:34:19 +01:00
Frederich Munch
fa5c74997b Lit: Fixup Windows cling_obj_root path when built with CMake. 2017-02-21 16:34:19 +01:00
Frederich Munch
a939c253d8 Lit: Use LLCM/Clang way of testing ‘execute_external’. Fix-up Windows paths based on this. 2017-02-21 16:34:19 +01:00
Axel Naumann
2785a7c105 Remove debug breakage. 2017-02-21 15:14:05 +01:00
Axel Naumann
9588c52a43 Make it actually fail. 2017-02-21 14:14:05 +01:00
Axel Naumann
1ea1ac2d44 Temporary breakage to debug cont integration. 2017-02-21 11:44:30 +01:00
Frederich Munch
311a557be1 Windows: Interpret -nostdinc++ as -nostdinc which clang does not use on Windows backend. Fixes ABI and NoStdInc tests. 2017-02-17 15:14:06 +01:00
Frederich Munch
15c1247a44 Windows: Fix byte dumping to non UTF-8 codepage and Strings.C test. 2017-02-17 15:14:06 +01:00
Frederich Munch
3bde3e4404 Windows: Trivial fix for initorder.C. 2017-02-17 15:14:06 +01:00
Axel Naumann
40bc805952 Revert "Fix unloading of friend declarations."
This reverts commit 1cf955ae4504d8cdb6d87c70d4331806c9861255.
2017-02-10 08:44:05 +01:00
Axel Naumann
7bcbdf120b Revert "Call VisitRedeclarable before VisitDeclContext to avoid any recursion that might occur."
This reverts commit 1d1d8fd511a4ec621a92628462142cb8d9356b70.
2017-02-10 08:44:05 +01:00
Axel Naumann
71187acfba Revert "Fix unloading of using namespace declarations. Add test/CodeUnloading/UsingShadows.C"
This reverts commit f5287603e6502c07f76a7f5a599aa6faae005327.
2017-02-10 08:44:05 +01:00
Axel Naumann
86de616002 Revert "Fix unloading of types in a namespace declared as using. This fixes triggering an assert in clang caused by trying to remove a declaration too many times."
This reverts commit c1574e399ae2e46fd0400d49c45eb48875995775.
2017-02-10 08:44:05 +01:00
Axel Naumann
9f5820a693 Revert "Fix unloading declarations in std namespace that were declared in an inline namespace, but referenced in the std namespace itself. Cling would crash or complain about forward declarations not being the same later."
This reverts commit 200ac7c6e64923f42023cc7324cab6ea7ebd3616.
2017-02-10 08:44:05 +01:00
Axel Naumann
3addec52ea Revert "Fix unloading from inline namespaces other than std."
This reverts commit 1e9984a65312b07f39760f6aec88b0b246fe3d94.
2017-02-10 08:44:05 +01:00
Frederich Munch
185b905525 Fix unloading from inline namespaces other than std. 2017-02-09 17:14:20 +01:00
Frederich Munch
87c97bab0d Fix unloading declarations in std namespace that were declared in an inline namespace, but referenced in the std namespace itself. Cling would crash or complain about forward declarations not being the same later. 2017-02-09 17:14:20 +01:00
Frederich Munch
1cc55d32ea Fix unloading of types in a namespace declared as using. This fixes triggering an assert in clang caused by trying to remove a declaration too many times. 2017-02-09 17:14:19 +01:00
Frederich Munch
14aaa3995e Fix unloading of using namespace declarations. Add test/CodeUnloading/UsingShadows.C 2017-02-09 17:14:19 +01:00
Frederich Munch
8957d2b84e Call VisitRedeclarable before VisitDeclContext to avoid any recursion that might occur.
This should have been included in the prior commit, but as it affects [ordering in] other DeclUnloader functions;
the ability to back it out separately is better.

Also exposes a bug/change necessary in clang when building in Debug mode to avoid an infinite loop.
2017-02-09 17:14:19 +01:00
Frederich Munch
f87922659d Fix unloading of friend declarations. 2017-02-09 17:14:19 +01:00
Frederich Munch
eb40609ab2 Add -noruntime flag to force cling not load or use support for value-printing or null dereferencing. This makes it tons easier to debug DeclUnload and discover what isn't being unloaded. 2017-02-09 16:45:11 +01:00
Frederich Munch
630abbf855 Windows: Fix preprocessor output test. 2017-02-09 16:45:10 +01:00
Frederich Munch
a91b83632e Use std::find_if when searching m_StoredStates. 2017-02-07 16:59:09 +01:00
Frederich Munch
4dd1ce8e56 Fix for Interpreter hanging on to states that can refer to a deleted llvm::Module. 2017-02-07 16:59:09 +01:00
Frederich Munch
f057cf9b0c Fix ExternC test on Linux. 2017-02-07 16:44:05 +01:00
Frederich Munch
efd446871c Fix LLVM API misuse when trying to replace and keep a DiagnosticConsumer. 2017-02-02 11:44:05 +01:00
Frederich Munch
72ed42670a Add inline unloading test. 2017-02-02 10:14:15 +01:00
Frederich Munch
94672dd0d0 Fix unloading functions declared external "C". Refactor VisitRedeclarable. 2017-02-02 08:30:01 +01:00
Frederich Munch
afb2746b64 Fix unloading global variables declared extern "C". Add test that demonstrated failure. 2017-02-02 08:30:01 +01:00
Frederich Munch
14437862ef Handle -E flag to dump preprocessor definitions. 2017-02-01 13:14:11 +01:00
Frederich Munch
592e61ba1e Feature to generate precompiled headers. 2017-02-01 13:14:11 +01:00
Frederich Munch
e10447fe92 Support inclusion of precompiled header from header search paths. 2017-02-01 13:14:10 +01:00
Frederich Munch
8daa5bcf11 Fix atexit function declarations for gcc and add test. Fix mangling issues for at_quick_exit and g++ headers. 2017-01-25 11:14:11 +01:00
Frederich Munch
7bf90d02f3 Comment redirection test and restore its previous glory.
This reverts commit f1538c4f30.
2017-01-25 08:14:56 +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
f1538c4f30 Test for ROOT-8399. 2017-01-17 14:29:07 +01:00
Axel Naumann
b3c0b92872 Add test for ROOT-7354.
(cherry picked from commit 1cc79b53c9289cf7f5f63a96d98ed2da741af41a)
2017-01-17 08:59:30 +01:00
Axel Naumann
03c2b3ea09 Test ROOT-8529. 2017-01-13 11:59:10 +01:00
Axel Naumann
3e22e9e78e Move from KnownFail, now that it works! 2017-01-12 11:14:34 +01:00
Axel Naumann
478a2e8646 This is now passing, actually.
For some reason that was not visible before the change to the prompt diag suppression.
2017-01-12 11:14:34 +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
Frederich Munch
340f6b897b Fix setenv declaration for gcc on OS X. 2016-12-15 14:29:09 +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
64b89f34a7 Randomize and speed up OutputRedirect.C. 2016-12-14 09:29:10 +01:00
Frederich Munch
3a519fe9cd Windows: Get RunAgainstClangTestSuite.C working. 2016-12-12 12:44:10 +01:00
Frederich Munch
12ebdf3686 Change PCH test to generated C++14.
This allows the test to pass on VStudio 2015 and seems like a good thing
to test on other platforms.
2016-12-12 12:44:10 +01:00
Frederich Munch
bf3c8052d8 Windows: Fix various test failures. 2016-12-12 12:44:09 +01:00
Frederich Munch
705e2b2a7e Windows: Fix test failure because path has backslashes. 2016-12-12 12:44:09 +01:00
Frederich Munch
d4aed2527d Add CLING_EXPORT macro. 2016-12-12 12:44:09 +01:00
Frederich Munch
52cd30dbef Lit: Add setenv transformation to use export/set on Unix/Windows. 2016-12-12 12:44:09 +01:00
Frederich Munch
e8cade29c7 Lit: Quote paths for Windows. 2016-12-12 12:44:09 +01:00
Frederich Munch
e265a84fef Lit: Use proper Windows paths for easier copy/paste. 2016-12-12 12:44:09 +01:00
Frederich Munch
960f6e4be7 Lit: Propagate LIB & LIBPATH env-vars on Windows. 2016-12-12 12:44:09 +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
Frederich Munch
4b6ae92419 Split getcwd tests into two files as Windows cannot pass one of the tests. 2016-12-06 20:44:05 +01:00
Frederich Munch
0a995d8b3d Revert "Simplify; make Windows compatible (cannot delete cwd)."
This reverts commit 2459221755.
2016-12-06 20:44:05 +01:00
Bertrand Bellenot
2459221755 Simplify; make Windows compatible (cannot delete cwd). 2016-12-06 16:14:25 +01:00
Axel Naumann
372c3243bf MacOS messes up unicode file names with old git. 2016-12-02 11:29:08 +01:00