- Jun 08, 2016
-
-
George Burgess IV authored
Given the following C++: ``` void foo(); void foo() __attribute__((enable_if(false, ""))); bool bar() { auto P = foo; return P == foo; } ``` We'll currently happily (and correctly) resolve `foo` to the `foo` overload without `enable_if` when assigning to `P`. However, we'll complain about an ambiguous overload on the `P == foo` line, because `Sema::CheckPlaceholderExpr` doesn't recognize that there's only one `foo` that could possibly work here. This patch teaches `Sema::CheckPlaceholderExpr` how to properly deal with such cases. Grepping for other callers of things like `Sema::ResolveAndFixSingleFunctionTemplateSpecialization`, it *looks* like this is the last place that needed to be fixed up. If I'm wrong, I'll see if there's something we can do that beats what amounts to whack-a-mole with bugs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272080 91177308-0d34-0410-b5e6-96231b3b80d8
-
David Majnemer authored
We attempted to use the UnaryTransformType's UnderlyingType instead of it's BaseType. This is not correct for dependent UnaryTransformType because the have no underlying type. This fixes PR28045. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272079 91177308-0d34-0410-b5e6-96231b3b80d8
-
Vedant Kumar authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272067 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Jun 07, 2016
-
-
Aaron Ballman authored
Make isNoThrow and hasDynamicExceptionSpec polymorphic so they can be used with both functionDecl and functionPrototype matchers. Patch by Don Hinton. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272028 91177308-0d34-0410-b5e6-96231b3b80d8
-
Michael Zuckerman authored
Differential Revision: http://reviews.llvm.org/D21014 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272012 91177308-0d34-0410-b5e6-96231b3b80d8
-
Igor Kudrin authored
Reapply [Coverage] Fix an assertion failure if the definition of an unused function spans multiple files. We have an assertion failure if, for example, the definition of an unused inline function starts in one macro and ends in another. This patch fixes the issue by finding the common ancestor of the start and end locations of that function's body and changing the locations accordingly. Thanks to NAKAMURA Takumi for helping with fixing the test failure on Windows. Differential Revision: http://reviews.llvm.org/D20997 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271995 91177308-0d34-0410-b5e6-96231b3b80d8
-
Devin Coughlin authored
Even with the fix in r271981, ASan is finding a stack use after return. This reverts commits r271977 and r271981. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271984 91177308-0d34-0410-b5e6-96231b3b80d8
-
Devin Coughlin authored
Fix a compilation error on the bots involving brace initialization. Differential Revision: http://reviews.llvm.org/D12761 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271981 91177308-0d34-0410-b5e6-96231b3b80d8
-
Xiuli Pan authored
Summary: OpenCL should support array with const value size length, those const varibale in global and constant address space and variable in constant address space. Fixed test case error. Reviewers: Anastasia, yaxunl, bader Subscribers: bader, cfe-commits Differential Revision: http://reviews.llvm.org/D20090 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271978 91177308-0d34-0410-b5e6-96231b3b80d8
-
Devin Coughlin authored
Second try at reapplying "[analyzer] Add checker for correct usage of MPI API in C and C++." Special thanks to Dan Liew for helping test the fix for the template specialization compiler error with gcc. The original patch is by Alexander Droste! Differential Revision: http://reviews.llvm.org/D12761 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271977 91177308-0d34-0410-b5e6-96231b3b80d8
-
Igor Kudrin authored
Revert [Coverage] Fix an assertion failure if the definition of an unused function spans multiple files. r271969 The test case fails on Windows. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271976 91177308-0d34-0410-b5e6-96231b3b80d8
-
Xiuli Pan authored
Test case break on system-z. This reverts commit 9a7212e1. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271975 91177308-0d34-0410-b5e6-96231b3b80d8
-
Xiuli Pan authored
Summary: OpenCL should support array with const value size length, those const varibale in global and constant address space and variable in constant address space. Reviewers: Anastasia, yaxunl, bader Subscribers: bader, cfe-commits Differential Revision: http://reviews.llvm.org/D20090 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271971 91177308-0d34-0410-b5e6-96231b3b80d8
-
Igor Kudrin authored
We have an assertion failure if, for example, the definition of an unused inline function starts in one macro and ends in another. This patch fixes the issue by finding the common ancestor of the start and end locations of that function's body and changing the locations accordingly. Differential Revision: http://reviews.llvm.org/D20997 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271969 91177308-0d34-0410-b5e6-96231b3b80d8
-
Mike Spertus authored
With this change, you can now expand its name and type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271966 91177308-0d34-0410-b5e6-96231b3b80d8
-
Artem Belevich authored
Fixes clang crash reported in PR27778. Differential Revision: http://reviews.llvm.org/D20985 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271951 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Jun 06, 2016
-
-
Mike Spertus authored
Improved the visualizer for TemplateArgumentList to show type arguments in the DisplayString. E.g., <double, long>. Added a visualizer for MultiLevelTemplateArgumentList. I decided to display them by how they would appear in a template with the (non-existent) template-id's omitted, so the DisplayString naturally presents as something like <double, long>::<char *>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271944 91177308-0d34-0410-b5e6-96231b3b80d8
-
Chris Bieneman authored
CMake defines are set with -D, forgetting the D doesn’t work. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271937 91177308-0d34-0410-b5e6-96231b3b80d8
-
Aaron Ballman authored
Adding an AST matcher to ignore parenthesis in *types* (rather than expressions). This is required for traversing certain types (like function pointer types). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271927 91177308-0d34-0410-b5e6-96231b3b80d8
-
Devin Coughlin authored
This reverts commit r271914. It is still breaking bots. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271920 91177308-0d34-0410-b5e6-96231b3b80d8
-
Rafael Espindola authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271918 91177308-0d34-0410-b5e6-96231b3b80d8
-
Devin Coughlin authored
Reapply r271907 with a fix for the compiler error with gcc about specializing clang::ento::ProgramStateTrait in a different namespace. Differential Revision: http://reviews.llvm.org/D12761 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271914 91177308-0d34-0410-b5e6-96231b3b80d8
-
Mike Spertus authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271911 91177308-0d34-0410-b5e6-96231b3b80d8
-
Mike Spertus authored
For pack TemplateArguments, visualize all of the items in the pack Visualize a TemplateArgumentList as a template argument list. E.g., <int, double> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271910 91177308-0d34-0410-b5e6-96231b3b80d8
-
Devin Coughlin authored
This reverts commit r271907. It broke a bunch of bots with compile errors about specializations in different namespaces. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271909 91177308-0d34-0410-b5e6-96231b3b80d8
-
Devin Coughlin authored
This commit adds a static analysis checker to check for the correct usage of the MPI API in C and C++. 3 path-sensitive checks are included: - Double nonblocking: Double request usage by nonblocking calls without intermediate wait. - Missing wait: Nonblocking call without matching wait. - Unmatched wait: Waiting for a request that was never used by a nonblocking call. Examples of how to use the checker can be found at https://github.com/0ax1/MPI-Checker Reviewers: zaks.anna A patch by Alexander Droste! Differential Revision: http://reviews.llvm.org/D12761 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271907 91177308-0d34-0410-b5e6-96231b3b80d8
-
Vedant Kumar authored
Mention that the code coverage tool becomes less precise whenever unpredictable changes in control flow occur. Thanks to Sean Silva for pointing this out! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271902 91177308-0d34-0410-b5e6-96231b3b80d8
-
Joerg Sonnenberger authored
match was the ld.elf_so that should be matched in a second step. Add one of the ever-present-but-irrelevant-for-this-test arguments to the pattern to force matching the right argument. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271893 91177308-0d34-0410-b5e6-96231b3b80d8
-
Daniel Sanders authored
Summary: 32-bit CPU's default to O32. 64-bit CPU's default to N64. The default CPU (mips32r2/mips64r2) still depends on the arch so there's no functional change when the CPU isn't specified but commands like: clang -target mips-mti-linux-gnu -mips64r2 will now default to a 64-bit ABI like our gcc toolchains do* instead of asserting in the backend**. Other vendors (including Triple::UnknownVendor) still derive the default ABI from the arch. * Although not the same one as our gcc toolchains, clang has historically defaulted to N64 where gcc defaults to N32. ** Mixing O32 and a 64-bit CPU causing assertions is a long-standing bug. Reviewers: atanasyan Subscribers: sdardis, cfe-commits Differential Revision: http://reviews.llvm.org/D21016 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271884 91177308-0d34-0410-b5e6-96231b3b80d8
-
Eric Liu authored
Summary: make header guard identification stricter with Lexer. Reviewers: djasper Subscribers: klimek, cfe-commits Differential Revision: http://reviews.llvm.org/D20959 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271883 91177308-0d34-0410-b5e6-96231b3b80d8
-
Daniel Sanders authored
Summary: Reviewers: atanasyan Subscribers: cfe-commits, sdardis Differential Revision: http://reviews.llvm.org/D20963 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271877 91177308-0d34-0410-b5e6-96231b3b80d8
-
Daniel Sanders authored
Summary: setABI() is still tied to the Arch component of the Triple to preserve existing behaviour. Reviewers: atanasyan Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D20961 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271875 91177308-0d34-0410-b5e6-96231b3b80d8
-
Craig Topper authored
[AVX512] Convert masked palignr builtins directly to native IR similar to the other palignr builtins, but with a select to handle masking. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271873 91177308-0d34-0410-b5e6-96231b3b80d8
-
Mike Spertus authored
Now it gives the StmtClass of the Expr as well as the type. It's still a long way from full visualization of expressions, but I have found that having the class really helps when debugging, so definitely worth submitting. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271866 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Jun 05, 2016
-
-
Michael Zuckerman authored
maskz_rsqrt28_sd mapped to mask_rsqrt28_sd and not to the maskz. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271836 91177308-0d34-0410-b5e6-96231b3b80d8
-
Michael Zuckerman authored
Differential Revision: http://reviews.llvm.org/D20866 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271835 91177308-0d34-0410-b5e6-96231b3b80d8
-
Michael Zuckerman authored
Differential Revision: http://reviews.llvm.org/D20871 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271832 91177308-0d34-0410-b5e6-96231b3b80d8
-
NAKAMURA Takumi authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271818 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Jun 04, 2016
-
-
Joerg Sonnenberger authored
non-shared, PIE and shared output mode. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271801 91177308-0d34-0410-b5e6-96231b3b80d8
-
Craig Topper authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271795 91177308-0d34-0410-b5e6-96231b3b80d8
-