summaryrefslogtreecommitdiff
path: root/www
Commit message (Collapse)AuthorAgeFilesLines
...
* Revert r359048: C++ DR2387: a variable template declared wthiIlya Biryukov2019-04-241-14232/+14172
| | | | | | | | | | | | | | The change breaks libc++ with the follwing error: In file included from valarray:4: .../include/c++/v1/valarray:1062:60: error: explicit instantiation declaration of 'valarray<_Tp>' with internal linkage _LIBCPP_EXTERN_TEMPLATE(_LIBCPP_FUNC_VIS valarray<size_t>::valarray(size_t)) ^ .../include/c++/v1/valarray:1063:60: error: explicit instantiation declaration of '~valarray<_Tp>' with internal linkage _LIBCPP_EXTERN_TEMPLATE(_LIBCPP_FUNC_VIS valarray<size_t>::~valarray()) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@359076 91177308-0d34-0410-b5e6-96231b3b80d8
* C++ DR2387: a variable template declared wtih (or instantiated with) aRichard Smith2019-04-231-14172/+14232
| | | | | | | const-qualified type is not implicitly given internal linkage. But a variable template declared 'static' is. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@359048 91177308-0d34-0410-b5e6-96231b3b80d8
* [analyzer][www] Moving MoveChecker out of alpha is no longer an open project.Kristof Umann2019-04-221-10/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@358877 91177308-0d34-0410-b5e6-96231b3b80d8
* [analyzer] Move UninitializedObjectChecker out of alphaKristof Umann2019-04-192-114/+113
| | | | | | | | | | Moved UninitializedObjectChecker from the 'alpha.cplusplus' to the 'optin.cplusplus' package. Differential Revision: https://reviews.llvm.org/D58573 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@358797 91177308-0d34-0410-b5e6-96231b3b80d8
* [Analyzer] Checker for non-determinism caused by sorting of pointer-like ↵Mandeep Singh Grang2019-03-081-0/+23
| | | | | | | | | | | | | | | | | | | | elements Summary: Added a new category of checkers for non-determinism. Added a checker for non-determinism caused due to sorting containers with pointer-like elements. Reviewers: NoQ, george.karpenkov, whisperity, Szelethus Reviewed By: NoQ, Szelethus Subscribers: Charusso, baloghadamsoftware, jdoerfert, donat.nagy, dkrupp, martong, dblaikie, MTC, Szelethus, mgorny, xazax.hun, szepet, rnkovacs, a.sidorin, mikhail.ramalho, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D50488 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@355720 91177308-0d34-0410-b5e6-96231b3b80d8
* Enable coroutines under -std=c++2a.Richard Smith2019-02-231-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@354736 91177308-0d34-0410-b5e6-96231b3b80d8
* [cxx_status] Update to match Kona motions.Richard Smith2019-02-231-8/+59
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@354735 91177308-0d34-0410-b5e6-96231b3b80d8
* [analyzer] Document RetainCountChecker behavior and annotationsGeorge Karpenkov2019-02-051-1/+187
| | | | | | Differential Revision: https://reviews.llvm.org/D57721 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@353229 91177308-0d34-0410-b5e6-96231b3b80d8
* Adjust documentation for git migration.James Y Knight2019-01-294-86/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes most references to the paths: llvm.org/svn/ llvm.org/git/ llvm.org/viewvc/ github.com/llvm-mirror/ github.com/llvm-project/ reviews.llvm.org/diffusion/ to instead point to https://github.com/llvm/llvm-project. This is *not* a trivial substitution, because additionally, all the checkout instructions had to be migrated to instruct users on how to use the monorepo layout, setting LLVM_ENABLE_PROJECTS instead of checking out various projects into various subdirectories. I've attempted to not change any scripts here, only documentation. The scripts will have to be addressed separately. Additionally, I've deleted one document which appeared to be outdated and unneeded: lldb/docs/building-with-debug-llvm.txt Differential Revision: https://reviews.llvm.org/D57330 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@352514 91177308-0d34-0410-b5e6-96231b3b80d8
* [analyzer] Added a checklist to help checker authors and reviewersGabor Horvath2019-01-291-0/+105
| | | | | | | Differential Revision: https://reviews.llvm.org/D52984 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@352470 91177308-0d34-0410-b5e6-96231b3b80d8
* Mark the lambda function pointer conversion operator as noexcept.Aaron Ballman2019-01-211-1/+1
| | | | | | This implements CWG DR 1722 and fixes PR40309. Patch by Ignat Loskutov. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@351750 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerating the C++ DR status page from the latest Core issues list.Aaron Ballman2019-01-211-14010/+14172
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@351749 91177308-0d34-0410-b5e6-96231b3b80d8
* Implementation Feature Test Macros for P0722R3Chris Kennelly2019-01-111-3/+8
| | | | | | | | | | | | | | | | | Summary: P1353R0, adopted in San Diego, specified an implementation feature test macro for destroying delete (P0722R3). The implementation of the feature (https://reviews.llvm.org/rL315662) is not guarded behind a flag, so the macro is not conditional on language version. Reviewers: rsmith Reviewed By: rsmith Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D55741 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@350934 91177308-0d34-0410-b5e6-96231b3b80d8
* DR674, PR38883, PR40238: Qualified friend lookup should look for aRichard Smith2019-01-071-1/+1
| | | | | | | | | | | | | | | | | | template specialization if there is no matching non-template function. This exposed a couple of related bugs: - we would sometimes substitute into a friend template instead of a suitable non-friend declaration; this would now crash because we'd decide the specialization of the friend is a redeclaration of itself - ADL failed to properly handle the case where an invisible local extern declaration redeclares an invisible friend Both are fixed herein: in particular, we now never make invisible friends or local extern declarations visible to name lookup unless they are the only declaration of the entity. (We already mostly did this for local extern declarations.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@350505 91177308-0d34-0410-b5e6-96231b3b80d8
* Allow direct navigation to static analysis checker documentation through ↵Aaron Ballman2018-12-202-259/+259
| | | | | | | | SARIF exports. This adds anchors to all of the documented checks so that you can directly link to a check by a stable name. This is useful because the SARIF file format has a field for specifying a URI to documentation for a rule and some viewers, like CodeSonar, make use of this information. These links are then exposed through the SARIF exporter. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@349812 91177308-0d34-0410-b5e6-96231b3b80d8
* Portable Python script across Python versionSerge Guelton2018-12-181-1/+1
| | | | | | | | | | | In Python3, dict.items, dict.keys, dict.values, zip, map and filter no longer return lists, they create generator instead. The portability patch consists in forcing an extra `list` call if the result is actually used as a list. `map` are replaced by list comprehension and `filter` by filtered list comprehension. Differential Revision: https://reviews.llvm.org/D55197 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@349501 91177308-0d34-0410-b5e6-96231b3b80d8
* [constexpr][c++2a] Try-catch blocks in constexpr functionsBruno Cardoso Lopes2018-12-101-1/+3
| | | | | | | | | | | | | | | | | | | | | | Implement support for try-catch blocks in constexpr functions, as proposed in http://wg21.link/P1002 and voted in San Diego for c++20. The idea is that we can still never throw inside constexpr, so the catch block is never entered. A try-catch block like this: try { f(); } catch (...) { } is then morally equivalent to just { f(); } Same idea should apply for function/constructor try blocks. rdar://problem/45530773 Differential Revision: https://reviews.llvm.org/D55097 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@348789 91177308-0d34-0410-b5e6-96231b3b80d8
* [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checkerKristof Umann2018-11-241-0/+18
| | | | | | | | | | | | | | | | This checker implements a solution to the "INT50-CPP. Do not cast to an out-of-range enumeration value" rule [1]. It lands in alpha for now, and a number of followup patches are planned in order to enable it by default. [1] https://www.securecoding.cert.org/confluence/display/cplusplus/INT50-CPP.+Do+not+cast+to+an+out-of-range+enumeration+value Patch by: Endre Fülöp and Alexander Zaitsev! Differential Revision: https://reviews.llvm.org/D33672 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@347513 91177308-0d34-0410-b5e6-96231b3b80d8
* [c++20] Implement P0482R6: enable -fchar8_t by default in C++20 mode.Richard Smith2018-11-141-1/+7
| | | | | | | | | | | | | This unfortunately results in a substantial breaking change when switching to C++20, but it's not yet clear what / how much we should do about that. We may want to add a compatibility conversion from u8 string literals to const char*, similar to how C++98 provided a compatibility conversion from string literals to non-const char*, but that's not handled by this patch. The feature can be disabled in C++20 mode with -fno-char8_t. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@346892 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement P1094R2 (nested inline namespaces)Erich Keane2018-11-121-1/+1
| | | | | | | | | As approved for the Working Paper in San Diego, support annotating inline namespaces with 'inline'. Change-Id: I51a654e11ffb475bf27cccb2458768151619e384 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@346677 91177308-0d34-0410-b5e6-96231b3b80d8
* [cxx_status] Update for San Diego motions.Richard Smith2018-11-101-7/+51
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@346591 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert r345562: "PR23833, DR2140: an lvalue-to-rvalue conversion on a ↵Richard Smith2018-11-031-1/+1
| | | | | | | | | | | | glvalue of type" This exposes a (known) CodeGen bug: it can't cope with emitting lvalue expressions that denote non-odr-used but usable-in-constant-expression variables. See PR39528 for a testcase. Reverted for now until that issue can be fixed. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@346065 91177308-0d34-0410-b5e6-96231b3b80d8
* [analyzer] Put llvm.Conventions back in alphaKristof Umann2018-11-021-0/+26
| | | | | | | | | | | | | Interestingly, this many year old (when I last looked I remember 2010ish) checker was committed without any tests, so I thought I'd implement them, but I was shocked to see how I barely managed to get it working. The code is severely outdated, I'm not even sure it has ever been used, so I'd propose to move it back into alpha, and possibly even remove it. Differential Revision: https://reviews.llvm.org/D53856 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@345990 91177308-0d34-0410-b5e6-96231b3b80d8
* PR23833, DR2140: an lvalue-to-rvalue conversion on a glvalue of typeRichard Smith2018-10-301-1/+1
| | | | | | | | | nullptr_t does not access memory. We now reuse CK_NullToPointer to represent a conversion from a glvalue of type nullptr_t to a prvalue of nullptr_t where necessary. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@345562 91177308-0d34-0410-b5e6-96231b3b80d8
* [C++17] Reject shadowing of capture by parameter in lambdaNicolas Lesser2018-10-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: This change rejects the shadowing of a capture by a parameter in lambdas in C++17. ``` int main() { int a; auto f = [a](int a) { return a; }; } ``` results in: ``` main.cpp:3:20: error: a lambda parameter cannot shadow an explicitly captured entity auto f = [a](int a) { return a; }; ^ main.cpp:3:13: note: variable a is explicitly captured here auto f = [a](int a) { return a; }; ^ ``` Reviewers: rsmith Reviewed By: rsmith Subscribers: lebedev.ri, erik.pilkington, cfe-commits Differential Revision: https://reviews.llvm.org/D53595 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@345308 91177308-0d34-0410-b5e6-96231b3b80d8
* Rebase defect report list.Nicolas Lesser2018-10-251-118/+172
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@345303 91177308-0d34-0410-b5e6-96231b3b80d8
* update the clang doc about contributionsSylvestre Ledru2018-10-251-3/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@345267 91177308-0d34-0410-b5e6-96231b3b80d8
* [analyzer] [www] Drop references to GC mode, which was deprecated years agoGeorge Karpenkov2018-10-232-46/+10
| | | | | | Differential Revision: https://reviews.llvm.org/D53302 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@344991 91177308-0d34-0410-b5e6-96231b3b80d8
* [analyzer][www] Update alpha_checks.htmlKristof Umann2018-10-212-112/+220
| | | | | | | | | I added some missing doc. I have not developed any of these checkers, it might worth really inspecting whether I wrote something terribly incorrect. Differential Revision: https://reviews.llvm.org/D52969 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@344878 91177308-0d34-0410-b5e6-96231b3b80d8
* [analyzer] [www] Minor improvements to the text in open_projectsGeorge Karpenkov2018-10-171-21/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@344664 91177308-0d34-0410-b5e6-96231b3b80d8
* [analyzer] [www] Updated a list of open projectsGeorge Karpenkov2018-10-171-128/+185
| | | | | | Differential Revision: https://reviews.llvm.org/D53024 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@344663 91177308-0d34-0410-b5e6-96231b3b80d8
* [analyzer][www] Add more useful linksKristof Umann2018-10-091-14/+23
| | | | | | | Differential Revision: https://reviews.llvm.org/D52993 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@344031 91177308-0d34-0410-b5e6-96231b3b80d8
* Update Clang Windows getting started docsReid Kleckner2018-10-041-33/+66
| | | | | | | | | | | | | | | | | | Summary: - Update the example VS project generation to use VS2017. - Add docs for generating ninja build files, since they are popular. - Remove reference to "make update" which no longer exists. Mention the monorepo instead. - Try to explain gnuwin32/coreutils requirements better. - Use https:// links where possible Reviewers: zturner, STL_MSFT Subscribers: jfb, cfe-commits Differential Revision: https://reviews.llvm.org/D52843 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@343809 91177308-0d34-0410-b5e6-96231b3b80d8
* [clang][www] Fix typo. NFCKristina Brooks2018-09-291-3/+3
| | | | | | | | | | | | | Fix a one letter typo in diagnostics.html. (Wanted to try it with arcanist). Patch by king6cong Differential Revision: https://reviews.llvm.org/D52511 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@343372 91177308-0d34-0410-b5e6-96231b3b80d8
* [cxx2a] P0614R1: Support init-statements in range-based for loops.Richard Smith2018-09-281-1/+1
| | | | | | | We don't yet support this for the case where a range-based for loop is implicitly rewritten to an ObjC for..in statement. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@343350 91177308-0d34-0410-b5e6-96231b3b80d8
* [cxx2a] P0641R2: (Some) type mismatches on defaulted functions onlyRichard Smith2018-09-281-1/+1
| | | | | | | | | | | | | | | | render the function deleted instead of rendering the program ill-formed. This change also adds an enabled-by-default warning for the case where an explicitly-defaulted special member function of a non-template class is implicitly deleted by the type checking rules. (This fires either due to this language change or due to pre-C++20 reasons for the member being implicitly deleted). I've tested this on a large codebase and found only bugs (where the program means something that's clearly different from what the programmer intended), so this is enabled by default, but we should revisit this if there are problems with this being enabled by default. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@343285 91177308-0d34-0410-b5e6-96231b3b80d8
* [cxx2a] P0624R2: Lambdas with no capture-default areRichard Smith2018-09-271-1/+1
| | | | | | default-constructible and assignable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@343279 91177308-0d34-0410-b5e6-96231b3b80d8
* P1008R1 Classes with user-declared constructors are never aggregates inRichard Smith2018-09-261-1/+1
| | | | | | C++20. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@343131 91177308-0d34-0410-b5e6-96231b3b80d8
* P0859R0: List-initialization is potentially-constant-evaluated andRichard Smith2018-09-261-1/+1
| | | | | | | | | | | | triggers instantiation of constexpr functions. We mostly implemented this since Clang 6, but missed the template instantiation case. We do not implement the '&cast-expression' special case. It appears to be a mistake / oversight. I've mailed CWG to see if we can remove it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@343064 91177308-0d34-0410-b5e6-96231b3b80d8
* P0969R0: allow structured binding of accessible members, not only public ↵Richard Smith2018-09-251-1/+1
| | | | | | members. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@343036 91177308-0d34-0410-b5e6-96231b3b80d8
* [www] Change 'Clang 7' items from yellow to green now Clang 7 isRichard Smith2018-09-243-14/+11
| | | | | | released. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@342927 91177308-0d34-0410-b5e6-96231b3b80d8
* [www] Update cxx_status to mark P0962R1 as done.Richard Smith2018-09-241-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@342926 91177308-0d34-0410-b5e6-96231b3b80d8
* use the current url for bugzillaSylvestre Ledru2018-09-223-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@342802 91177308-0d34-0410-b5e6-96231b3b80d8
* update the links to use httpsSylvestre Ledru2018-09-221-6/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@342801 91177308-0d34-0410-b5e6-96231b3b80d8
* redirecting to llvm.org/devmtgSylvestre Ledru2018-09-192-31/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@342568 91177308-0d34-0410-b5e6-96231b3b80d8
* [analyzer][UninitializedObjectChecker] New flag to ignore records based on ↵Kristof Umann2018-09-141-0/+7
| | | | | | | | | | | | | | | | | | it's fields Based on a suggestion from @george.karpenkov. In some cases, structs are used as unions with a help of a tag/kind field. This patch adds a new string flag (a pattern), that is matched against the fields of a record, and should a match be found, the entire record is ignored. For more info refer to http://lists.llvm.org/pipermail/cfe-dev/2018-August/058906.html and to the responses to that, especially http://lists.llvm.org/pipermail/cfe-dev/2018-August/059215.html. Differential Revision: https://reviews.llvm.org/D51680 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@342220 91177308-0d34-0410-b5e6-96231b3b80d8
* Use Chrome and Firefox as example of success for clangSylvestre Ledru2018-09-141-5/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@342216 91177308-0d34-0410-b5e6-96231b3b80d8
* remove 11 years old videos from the homepage. if you have a suggestion, ↵Sylvestre Ledru2018-09-141-10/+0
| | | | | | please drop me an email git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@342214 91177308-0d34-0410-b5e6-96231b3b80d8
* update the doc to compare with gcc 4.9 instead of 4.2Sylvestre Ledru2018-09-141-2/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@342212 91177308-0d34-0410-b5e6-96231b3b80d8
* gcc is now returning the same output on this example, removing this exampleSylvestre Ledru2018-09-141-6/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@342211 91177308-0d34-0410-b5e6-96231b3b80d8