- Jul 09, 2014
-
-
Alp Toker authored
This flag is set by most other tools and avoids extra stat() calls. The frontend will diagnose anyway as it performs the check atomically while opening files at point of use. We could probably make Driver::CheckInputsExist default to false and only enable it in the main 'clang' binary, or even better only perform the checks if we know the tool is external but that needs more thought. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212585 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alp Toker authored
Also give the field it a more appropriate name and improve the docs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212584 91177308-0d34-0410-b5e6-96231b3b80d8
-
Nico Weber authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212578 91177308-0d34-0410-b5e6-96231b3b80d8
-
Nico Weber authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212574 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Jul 08, 2014
-
-
Reid Kleckner authored
If we want to resolve the remaining FIXMEs here, we probably want to extend the main lookup mechanism to perform lookup into dependent bases, but we would have to tread lightly. Adding more name lookup has major impact on compile time. If we did extend the main mechanism, we would add a flag to LookupResult that allows us to find names from dependent base classes where the base is a specialization of a known template. The final LookupResult would still return LookupResult::NotFoundInCurrentInstantiation, but it would have a collection of Decls. If we find a real lookup result, we would clear the flag and the existing lookup results and begin accumulating only real lookup results. We would structure the lookup as a secondary lookup between normal lookup and typo correction for normal compilation, but for MSVC compatibility mode, we would always enable this extra lookup into dependent bases. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212566 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alexey Samsonov authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212564 91177308-0d34-0410-b5e6-96231b3b80d8
-
Saleem Abdulrasool authored
This merges the two tests into one since there is no real reason to separate them. It also fixes the test invocation to specify -fms-compatibility without which we would end up without an Intrin.h header. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212563 91177308-0d34-0410-b5e6-96231b3b80d8
-
Reid Kleckner authored
MSVC appears to perform name lookup into dependent base classes when the dependent base class has a known primary template. This allows them to know whether some unqualified ids are types or not, which allows them to parse more class templates without typename keywords. We can do the same thing when type name lookup fails, and if we find a single type decl in one of our dependent base classes, recover as though the user wrote 'typename MyClass::TypeFromBase'. This allows us to parse some COM smart pointer classes in wrl/client.h from the Windows 8 SDK. Reviewers: rsmith Differential Revision: http://reviews.llvm.org/D4237 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212561 91177308-0d34-0410-b5e6-96231b3b80d8
-
Nico Weber authored
Also provide _setjmpex(). r200243 put in _setjmp() and _setjmpex() behind a comment since jmp_buf wasn't available. r200344 added jmp_buf and put in _setjmp(), but missed _setjmpex(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212557 91177308-0d34-0410-b5e6-96231b3b80d8
-
Nico Weber authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212556 91177308-0d34-0410-b5e6-96231b3b80d8
-
David Majnemer authored
We would silently accept volatile ~S() when the user probably intended to write virtual ~S(). This fixes PR20238. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212555 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
reference type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212551 91177308-0d34-0410-b5e6-96231b3b80d8
-
Benjamin Kramer authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212545 91177308-0d34-0410-b5e6-96231b3b80d8
-
Benjamin Kramer authored
No functionality change, just stylistic cleanup. Change made by clang-tidy and clang-format. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212544 91177308-0d34-0410-b5e6-96231b3b80d8
-
David Blaikie authored
Spotted after a memory leak (due to the complexities of manual memory management) was fixed in 212466. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212541 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alexander Musman authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212525 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Sandiford authored
r184166 added an X86_32 function in the middle of the SystemZ code. The SystemZ port had been added only a couple of weeks earlier and the original patch probably predated that. No behavioral change intended. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212524 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alexey Bataev authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212516 91177308-0d34-0410-b5e6-96231b3b80d8
-
Saleem Abdulrasool authored
Protect MMX specific declarations under a __MMX__ guard. This header can be included on non-x86 architectures (e.g. ARM) which do not support the MMX ISA. Use the preprocessor to prevent these declarations from being processed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212512 91177308-0d34-0410-b5e6-96231b3b80d8
-
Saleem Abdulrasool authored
Although the functions are marked as always_inline, the compiler with which they are used may not honour the extended attributes and emit them as functions. In such a case, indicate that they should have extern "C" linkage and should not be mangled in C++ style if used within C++. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212511 91177308-0d34-0410-b5e6-96231b3b80d8
-
Reid Kleckner authored
Of course, such code is horribly broken and will explode on impact. That said, ATL does it, and we have to support them, at least a little bit. Fixes PR20191. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212508 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alexey Samsonov authored
All blacklisting logic is now moved to the frontend (Clang). If a function (or source file it is in) is blacklisted, it doesn't get sanitize_address attribute and is therefore not instrumented. If a global variable (or source file it is in) is blacklisted, it is reported to be blacklisted by the entry in llvm.asan.globals metadata, and is not modified by the instrumentation. The latter may lead to certain false positives - not all the globals created by Clang are described in llvm.asan.globals metadata (e.g, RTTI descriptors are not), so we may start reporting errors on them even if "module" they appear in is blacklisted. We assume it's fine to take such risk: 1) errors on these globals are rare and usually indicate wild memory access 2) we can lazily add descriptors for these globals into llvm.asan.globals lazily. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212505 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alp Toker authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212502 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alexey Samsonov authored
Now CodeGenFunction is responsible for looking at sanitizer blacklist (in CodeGenFunction::StartFunction) and turning off instrumentation, if necessary. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212501 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alexey Samsonov authored
Get rid of cached CodeGenModule::SanOpts, which was used to turn off sanitizer codegen options if current LLVM Module is blacklisted, and use plain LangOpts.Sanitize instead. 1) Some codegen decisions (turning TBAA or writable strings on/off) shouldn't depend on the contents of blacklist. 2) llvm.asan.globals should *always* be created, even if the module is blacklisted - soon Clang's CodeGen where we read sanitizer blacklist files, so we should properly report which globals are blacklisted to the backend. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212499 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alp Toker authored
r212427 formalized the message-passing pattern by making these argument structures const. This commit changes output arguments to get passed by reference so we can eliminate mutable fields. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212497 91177308-0d34-0410-b5e6-96231b3b80d8
-
Joe Groff authored
It is useful to get the property encoding for an ObjC type without a full ObjCPropertyDecl. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212496 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Jul 07, 2014
-
-
Alp Toker authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212494 91177308-0d34-0410-b5e6-96231b3b80d8
-
Reid Kleckner authored
Assertion failures call abort(), which return an exit code of 3 on Windows. The 'not' utility has the same check. Unfortunately, the crash-report.c test requires a shell, so it does not run for me locally, so I can only test this manually. There's still more work to be done here: we should generate a batch script instead of a shell script on Windows. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212481 91177308-0d34-0410-b5e6-96231b3b80d8
-
Justin Bogner authored
If there isn't a VFS to overlay we shouldn't be adding a -ivfsoverlay flag. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212468 91177308-0d34-0410-b5e6-96231b3b80d8
-
Ben Langmuir authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212467 91177308-0d34-0410-b5e6-96231b3b80d8
-
Manuel Klimek authored
Patch by Guochun Shi. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212466 91177308-0d34-0410-b5e6-96231b3b80d8
-
Anders Carlsson authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212464 91177308-0d34-0410-b5e6-96231b3b80d8
-
David Majnemer authored
If we are in MicrosoftCXXABI, we don't need to use CGM to get a TypeDescriptor. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212463 91177308-0d34-0410-b5e6-96231b3b80d8
-
David Majnemer authored
No functionality changed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212462 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alp Toker authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212458 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alp Toker authored
Cleanup only. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212457 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alexey Bataev authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212453 91177308-0d34-0410-b5e6-96231b3b80d8
-
Manuel Klimek authored
Patch by Alexey Sokolov. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212452 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alp Toker authored
This doesn't need to be in the headers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212451 91177308-0d34-0410-b5e6-96231b3b80d8
-