lp:~pali/llvm/clang-tools-extra-trunk

Created by Pali on 2014-04-12 and last modified on 2018-05-24
Get this branch:
bzr branch lp:~pali/llvm/clang-tools-extra-trunk

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Pali
Project:
LLVM
Status:
Development

Import details

Import Status: Reviewed

This branch is an import of the Subversion branch from http://llvm.org/svn/llvm-project/clang-tools-extra/trunk.

The next import is scheduled to run in 3 hours.

Last successful import was 2 hours ago.

Import started 2 hours ago on izar and finished 2 hours ago taking 25 seconds — see the log
Import started 8 hours ago on alnitak and finished 8 hours ago taking 20 seconds — see the log
Import started 14 hours ago on alnitak and finished 14 hours ago taking 20 seconds — see the log
Import started 20 hours ago on izar and finished 20 hours ago taking 30 seconds — see the log
Import started on 2018-05-24 on alnitak and finished on 2018-05-24 taking 20 seconds — see the log
Import started on 2018-05-24 on alnitak and finished on 2018-05-24 taking 20 seconds — see the log
Import started on 2018-05-23 on alnitak and finished on 2018-05-23 taking 30 seconds — see the log
Import started on 2018-05-23 on izar and finished on 2018-05-23 taking 30 seconds — see the log
Import started on 2018-05-23 on alnitak and finished on 2018-05-23 taking 30 seconds — see the log
Import started on 2018-05-23 on izar and finished on 2018-05-23 taking 20 seconds — see the log

Recent revisions

3343. By ioeric 20 hours ago

[clangd] Add clangDriver dependency after r333188

3342. By ibiryukov 20 hours ago

[clangd] Build index on preamble changes instead of the AST changes

Summary:
This is more efficient and avoids data races when reading files that
come from the preamble. The staleness can occur when reading a file
from disk that changed after the preamble was built. This can lead to
crashes, e.g. when parsing comments.

We do not to rely on symbols from the main file anyway, since any info
that those provide can always be taken from the AST.

Reviewers: ioeric, sammccall

Reviewed By: ioeric

Subscribers: malaperle, klimek, javed.absar, MaskRay, jkorous, cfe-commits

Differential Revision: https://reviews.llvm.org/D47272

3341. By ibiryukov 21 hours ago

[clangd] Serve comments for headers decls from dynamic index only

Summary:
To fix a crash in code completion that occurrs when reading doc
comments from files that were updated after the preamble was
computed. In that case, the files on disk could've been changed and we
can't rely on finding the comment text with the same range anymore.

The current workaround is to not provide comments from the headers at
all and rely on the dynamic index instead.

A more principled solution would be to store contents of the files
read inside the preamble, but it is way harder to implement properly,
given that it would definitely increase the sizes of the preamble.

Together with D47272, this should fix all preamble-related crashes
we're aware of.

Reviewers: sammccall

Reviewed By: sammccall

Subscribers: klimek, ioeric, MaskRay, jkorous, cfe-commits

Differential Revision: https://reviews.llvm.org/D47274

3340. By ioeric 22 hours ago

[clangd] Skip .inc headers when canonicalizing header #include.

Summary:
This assumes that .inc files are supposed to be included via headers
that include them.

Reviewers: sammccall

Reviewed By: sammccall

Subscribers: klimek, ilya-biryukov, MaskRay, jkorous, cfe-commits

Differential Revision: https://reviews.llvm.org/D47187

3339. By ioeric on 2018-05-24

[clangd] Fix code completion in MACROs with stringification.

Summary:
Currently, we only handle the first callback from sema code completion
and ignore results from potential following callbacks. This causes
causes loss of completion results when multiple contexts are tried by Sema.

For example, we wouldn't get any completion result in the following completion
as the first attemped context is natural language which has no
candidate. The parser would backtrack and tried a completion with AST
semantic, which would find candidate "::x".

```
void f(const char*, int);
#define F(x) f(#x, x)
int x;
void main() {
 F(::^);
}
```

To fix this, we only process a sema callback when it gives completion results or
the context supports index-based completion.

Reviewers: ilya-biryukov

Reviewed By: ilya-biryukov

Subscribers: klimek, MaskRay, jkorous, cfe-commits

Differential Revision: https://reviews.llvm.org/D47256

3338. By eugenezelenko on 2018-05-23

[Documentation] Fix link syntax in Release Notes.

3337. By eugenezelenko on 2018-05-23

[Documentation] Move some Clang-tidy changes to proper sections.

3336. By nzaghen on 2018-05-23

Replace last DEBUG occurrence with LLVM_DEBUG.

3335. By courbet on 2018-05-23

[clang-tidy] new cppcoreguidelines-narrowing-conversions check.

Summary:
Checks for narrowing conversions, e.g.

int i = 0;
i += 0.1;

This has what some might consider false positives for:
i += ceil(d);

Reviewers: alexfh, hokein

Subscribers: srhines, nemanjai, mgorny, JDevlieghere, xazax.hun, kbarton

Differential Revision: https://reviews.llvm.org/D38455

3334. By zinovy.nis on 2018-05-22

[clang-tidy] SimplifyBoolenExpr doesn't add parens if unary negotiation is of ExprWithCleanups type

bool foo(A &S) {
  if (S != (A)S)
    return false;
  return true;
}
is fixed into (w/o this patch)

...
return !S != (A)S; // negotiation affects first operand only
}
instead of (with this patch)

...
return S == (A)S; // note == instead of !=
}

Differential Revision: https://reviews.llvm.org/D47122

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
This branch contains Public information 
Everyone can see this information.

Subscribers

No subscribers.