Go to file
Richard Smith 17965d42f4 C++ DR712 and others: handle non-odr-use resulting from an lvalue-to-rvalue conversion applied to a member access or similar not-quite-trivial lvalue expression.
Summary:
When a variable is named in a context where we can't directly emit a
reference to it (because we don't know for sure that it's going to be
defined, or it's from an enclosing function and not captured, or the
reference might not "work" for some reason), we emit a copy of the
variable as a global and use that for the known-to-be-read-only access.

Reviewers: rjmccall

Subscribers: jdoerfert, cfe-commits

Tags: #clang

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

llvm-svn: 363295
2019-06-13 19:00:16 +00:00
clang C++ DR712 and others: handle non-odr-use resulting from an lvalue-to-rvalue conversion applied to a member access or similar not-quite-trivial lvalue expression. 2019-06-13 19:00:16 +00:00
clang-tools-extra [clang-tidy] Made abseil-faster-strsplit-delimiter tests pass on C++17 2019-06-13 15:16:44 +00:00
compiler-rt [compiler-rt] Fix name_to_handle_at.cc test on Overlay2 (for Docker) 2019-06-12 14:19:24 +00:00
debuginfo-tests Add cdb test for global constants 2019-06-06 20:23:05 +00:00
libclc travis: Add LLVM-8 build 2019-03-27 21:28:31 +00:00
libcxx [libc++] Add missing #include in <cwchar> tests 2019-06-13 18:24:28 +00:00
libcxxabi [demangle] Vendor extended types shouldn't be considered substitution candidates 2019-06-10 21:02:39 +00:00
libunwind [Docs] Modernize references to macOS 2019-05-30 16:46:22 +00:00
lld [lld][ELF] Add tests for bad subsection length in .ARM.attributes 2019-06-13 13:41:28 +00:00
lldb [CMake] Fix generated Xcode-project ignoring output directory setting for LLDB.framework 2019-06-13 17:35:50 +00:00
llgo IR: Support parsing numeric block ids, and emit them in textual output. 2019-03-22 18:27:13 +00:00
llvm [docs] Fix TableGen/LangRef typos 2019-06-13 18:42:30 +00:00
openmp Added propagation of not big initial stack size of master thread to workers. 2019-06-05 16:14:47 +00:00
parallel-libs Fix typos throughout the license files that somehow I and my reviewers 2019-01-21 09:52:34 +00:00
polly [ScopBuilder] Move addInvariantLoads to ScopBuilder. NFC. 2019-06-12 22:51:56 +00:00
pstl [pstl] The optimized parallel versions of sort, stable_sort algorithms, TBB parallel backend. 2019-06-06 07:34:46 +00:00
.arcconfig Update monorepo .arcconfig with new project callsign. 2019-01-31 14:34:59 +00:00
.clang-format Add .clang-tidy and .clang-format files to the toplevel of the 2019-01-29 16:43:16 +00:00
.clang-tidy Disable tidy checks with too many hits 2019-02-01 11:20:13 +00:00
.gitignore Add a reduced copy of the llvm .gitignore 2019-04-09 00:52:49 +00:00
README.md

README.md

The LLVM Compiler Infrastructure

This directory and its subdirectories contain source code for LLVM, a toolkit for the construction of highly optimized compilers, optimizers, and runtime environments.