diff options
author | Denys Petrov <dpetrov@accesssoftek.com> | 2021-05-25 18:24:48 +0300 |
---|---|---|
committer | Denys Petrov <dpetrov@accesssoftek.com> | 2022-04-19 22:34:03 +0300 |
commit | e37726beb22a8e3865e1f6fcdbb5cd4262786903 (patch) | |
tree | 1b4c1083a399b797bfb00e63724c3464d92852aa /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | 25c218be36d73bb3e6ddd3f3b441b508ab5ff66f (diff) | |
download | llvm-e37726beb22a8e3865e1f6fcdbb5cd4262786903.zip llvm-e37726beb22a8e3865e1f6fcdbb5cd4262786903.tar.gz llvm-e37726beb22a8e3865e1f6fcdbb5cd4262786903.tar.bz2 |
[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
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions