| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 263896
|
|
|
|
|
|
| |
loops to differ.
llvm-svn: 263895
|
|
|
|
|
|
| |
support for unused, and treat it as an extension pre-C++1z. This also means extending the existing unused attribute so that it can be placed on an enum and enumerator, in addition to the other subjects.
llvm-svn: 263025
|
|
|
|
|
|
| |
classes; these are initialized as if they were data members.
llvm-svn: 262963
|
|
|
|
| |
llvm-svn: 262889
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
exactly the same as clang's existing [[clang::fallthrough]] attribute, which
has been updated to have the same semantics. The one significant difference
is that [[fallthrough]] is ill-formed if it's not used immediately before a
switch label (even when -Wimplicit-fallthrough is disabled). To support that,
we now build a CFG of any function that uses a '[[fallthrough]];' statement
to check.
In passing, fix some bugs with our support for statement attributes -- in
particular, diagnose their use on declarations, rather than asserting.
llvm-svn: 262881
|
|
|
|
|
|
| |
support for warn_unused_result, and treat it as an extension pre-C++1z. This also means extending the existing warn_unused_result attribute so that it can be placed on an enum as well as a class.
llvm-svn: 262872
|
|
|
|
| |
llvm-svn: 262747
|
|
|
|
| |
llvm-svn: 262743
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
C++11 requires const objects to have a user-provided constructor, even for
classes without any fields. DR 253 relaxes this to say "If the implicit default
constructor initializes all subobjects, no initializer should be required."
clang is currently the only compiler that implements this C++11 rule, and e.g.
libstdc++ relies on something like DR 253 to compile in newer versions. This
change makes it possible to build code that says `const vector<int> v;' again
when using libstdc++5.2 and _GLIBCXX_DEBUG
(https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60284).
Fixes PR23381.
http://reviews.llvm.org/D16552
llvm-svn: 261297
|
|
|
|
|
|
|
|
|
| |
Created by:
cd www
curl -O http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_index.html
./make_cxx_dr_status
llvm-svn: 261295
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to force debug build and hopefully enable more precise warnings.
Static Analyzer is much more efficient when built in debug mode
(-UNDEBUG) so we advice users to enable it manually. This may be
inconvenient in case of large complex projects (think about Linux
distros e.g. Android or Tizen). This patch adds a flag to scan-build
which inserts -UNDEBUG automatically.
Differential Revision: http://reviews.llvm.org/D16200
llvm-svn: 261204
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: weimingz
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D17085
llvm-svn: 260433
|
|
|
|
|
|
| |
(and has for quite a while). Also document that we have not yet implemented the new inheriting constructor rules.
llvm-svn: 260311
|
|
|
|
|
|
| |
This is not the future.
llvm-svn: 259969
|
|
|
|
| |
llvm-svn: 259967
|
|
|
|
|
|
|
| |
We implemented this DR back in r258768 but forgot to mark it as
implemented.
llvm-svn: 259335
|
|
|
|
| |
llvm-svn: 259278
|
|
|
|
| |
llvm-svn: 257698
|
|
|
|
| |
llvm-svn: 257695
|
|
|
|
| |
llvm-svn: 257652
|
|
|
|
| |
llvm-svn: 255727
|
|
|
|
|
|
| |
improvements to GCC.
llvm-svn: 255726
|
|
|
|
| |
llvm-svn: 255723
|
|
|
|
|
|
|
| |
Since the instructions use cmake, we should probably refer to the
cmake flags and not the configure ones.
llvm-svn: 255297
|
|
|
|
| |
llvm-svn: 254123
|
|
|
|
| |
llvm-svn: 254122
|
|
|
|
|
|
|
| |
We will still allow it in system headers, in macros from system headers, when
combined with an 'asm' label, and under the flag -Wno-register.
llvm-svn: 254097
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
DR407, the C++ standard doesn't really say how this should work. Here's what we
do (which is consistent with DR407 as far as I can tell):
* When performing name lookup for an elaborated-type-specifier, a tag
declaration hides a typedef declaration that names the same type.
* When performing any other kind of lookup, a typedef declaration hides
a tag declaration that names the same type.
In any other case where lookup finds both a typedef and a tag (that is, when
they name different types), the lookup will be ambiguous. If lookup finds a
tag and a typedef that name the same type, and finds anything else, the lookup
will always be ambiguous (even if the other entity would hide the tag, it does
not also hide the typedef).
llvm-svn: 252959
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
std::initializer_list<T> type. Instead, the list must contain a single element
and the type is deduced from that.
In Clang 3.7, we warned by default on all the cases that would change meaning
due to this change. In Clang 3.8, we will support only the new rules -- per
the request in N3922, this change is applied as a Defect Report against earlier
versions of the C++ standard.
This change is not entirely trivial, because for lambda init-captures we
previously did not track the difference between direct-list-initialization and
copy-list-initialization. The difference was not previously observable, because
the two forms of initialization always did the same thing (the elements of the
initializer list were always copy-initialized regardless of the initialization
style used for the init-capture).
llvm-svn: 252688
|
|
|
|
|
|
| |
http://reviews.llvm.org/D14403
llvm-svn: 252474
|
|
|
|
| |
llvm-svn: 252223
|
|
|
|
| |
llvm-svn: 252216
|
|
|
|
| |
llvm-svn: 252215
|
|
|
|
| |
llvm-svn: 252214
|
|
|
|
|
|
|
|
| |
DXR is a project developed at Mozilla that implements a code indexing
and browsing utility on top of libclang that has features such as
call graph querying.
llvm-svn: 251638
|
|
|
|
| |
llvm-svn: 251591
|
|
|
|
| |
llvm-svn: 251448
|
|
|
|
|
|
|
| |
The content at the new links is /also/ a little dated, but that's our
(Apple's) problem.
llvm-svn: 247999
|
|
|
|
| |
llvm-svn: 247696
|
|
|
|
| |
llvm-svn: 244000
|
|
|
|
|
|
| |
Until I figure out what's the right way of updating this file.
llvm-svn: 243840
|
|
|
|
| |
llvm-svn: 243827
|
|
|
|
| |
llvm-svn: 242244
|
|
|
|
|
|
| |
the class.
llvm-svn: 241425
|
|
|
|
| |
llvm-svn: 240110
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
in-progress implementation of the Concepts TS. The recommended feature
test macro __cpp_experimental_concepts is set to 1 (as opposed to
201501) to indicate that the feature is enabled, but the
implementation is incomplete.
The link to the Concepts TS in cxx_status is updated to refer to the
PDTS (N4377). Additional changes related to __has_feature and
__has_extension are to follow in a later change.
Relevant tests include:
test/Lexer/cxx-features.cpp
The test file is updated with testing of the C++14 + Concepts TS mode.
The expected behaviour is the same as that of the C++14 modes except
for the case of __cpp_experimental_concepts."
- Hubert Tong.
Being committed for Hubert (as per his understanding with Richard Smith) as we start work on the concepts-ts following our preliminary strategy session earlier today.
The patch is tiny and seems quite standard.
Thanks Hubert!
llvm-svn: 237982
|
|
|
|
|
|
| |
Patch by Jon Eyolfson!
llvm-svn: 237713
|
|
|
|
| |
llvm-svn: 237383
|
|
|
|
| |
llvm-svn: 237382
|