llvm-project/clang/lib
Denys Petrov e37726beb2 [analyzer] Implemented RangeSet::Factory::castTo function to perform promotions, truncations and conversions.
Summary: Handle casts for ranges working similarly to APSIntType::apply function but for the whole range set. Support promotions, truncations and conversions.
Example:
promotion: char [0, 42] -> short [0, 42] -> int [0, 42] -> llong [0, 42]
truncation: llong [4295033088, 4295033130] -> int [65792, 65834] -> short [256, 298] -> char [0, 42]
conversion: char [-42, 42] -> uint [0, 42]U[4294967254, 4294967295] -> short[-42, 42]

Differential Revision: https://reviews.llvm.org/D103094
2022-04-19 22:34:03 +03:00
..
APINotes [clang][APINotes] Fix -Wunused-function warning (NFC) 2021-04-01 09:52:43 +08:00
ARCMigrate [clang] Use true/false instead of 1/0 (NFC) 2022-01-09 00:19:47 -08:00
AST [NFC] Remove unused variable 2022-04-19 15:19:40 +08:00
ASTMatchers Reland "[ASTMatchers] Output currently matching node on crash" 2022-04-05 21:47:16 +01:00
Analysis Treat `std::move`, `forward`, etc. as builtins. 2022-04-17 13:26:16 -07:00
Basic [SystemZ] Handle SystemZ specific inline assembly address operands. 2022-04-19 16:55:45 +02:00
CodeGen [CUDA][HIP] Fix gpu.used.external 2022-04-18 23:10:31 -04:00
CrossTU [analyzer][ctu] Only import const and trivial VarDecls 2022-04-01 13:49:39 +02:00
DirectoryWatcher [clang] [DirectoryWatcher] Remove leading \\?\ from GetFinalPathNameByHandleW 2021-11-08 22:21:30 +02:00
Driver [OpenMP] Make the new offloading driver the default 2022-04-18 15:05:09 -04:00
Edit [clang] Use true/false instead of 1/0 (NFC) 2022-01-09 00:19:47 -08:00
ExtractAPI [clang][extract-api] Add support for true anonymous enums 2022-04-12 20:42:17 +01:00
Format [clang-format] Skip preprocessor lines when finding the record lbrace 2022-04-14 09:31:15 -07:00
Frontend [clang] NFCI: Use DirectoryEntryRef in collectIncludePCH 2022-04-15 15:16:17 +02:00
FrontendTool [C++20][Modules][HU 1/5] Introduce header units as a module type. 2022-03-25 09:17:14 +00:00
Headers [clang] Adding Platform/Architecture Specific Resource Header Installation Targets 2022-04-19 10:10:07 -04:00
Index [clang] Reformat 2022-03-24 05:56:23 -07:00
IndexSerialization
Interpreter [clang-repl] Add an accessor to our underlying execution engine 2022-03-11 09:24:47 +00:00
Lex [clang][lexer] Allow u8 character literal prefixes in C2x 2022-04-19 09:57:51 +02:00
Parse [Clang] Use of decltype(capture) in parameter-declaration-clause 2022-04-18 15:58:25 +02:00
Rewrite Add assert on End iteration distance to Rewriter::getRewrittenText. 2022-01-25 17:26:13 +00:00
Sema [CUDA][HIP] Fix delete operator for -fopenmp 2022-04-19 14:28:03 -04:00
Serialization [Clang][OpenMP] Use bitfields for flags in `OMPAtomicDirective` 2022-04-15 21:34:28 -04:00
StaticAnalyzer [analyzer] Implemented RangeSet::Factory::castTo function to perform promotions, truncations and conversions. 2022-04-19 22:34:03 +03:00
Testing
Tooling [clang][deps] NFC: Inline function with single caller 2022-04-15 16:24:40 +02:00
CMakeLists.txt [clang][extract-api] Refactor ExtractAPI and improve docs 2022-03-22 13:21:57 -07:00