aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Bitcode/Reader/MetadataLoader.cpp
diff options
context:
space:
mode:
authorGuillot Tony <tony.guillot@protonmail.com>2023-10-05 08:08:37 -0400
committerAaron Ballman <aaron@aaronballman.com>2023-10-05 08:11:02 -0400
commit5d78b78c853830516e734cfa64bfba70479e35dc (patch)
tree2e4862b41f81c5332b9158619418c37d126d6ed1 /llvm/lib/Bitcode/Reader/MetadataLoader.cpp
parent58678d3bcf32bada15d6286dff4abfdbf40bfc21 (diff)
downloadllvm-5d78b78c853830516e734cfa64bfba70479e35dc.zip
llvm-5d78b78c853830516e734cfa64bfba70479e35dc.tar.gz
llvm-5d78b78c853830516e734cfa64bfba70479e35dc.tar.bz2
[C2X] N3007 Type inference for object definitions
This patches implements the auto keyword from the N3007 standard specification. This allows deducing the type of the variable like in C++: ``` auto nb = 1; auto chr = 'A'; auto str = "String"; ``` The list of statements which allows the usage of auto: * Basic variables declarations (int, float, double, char, char*...) * Macros declaring a variable with the auto type The list of statements which will not work with the auto keyword: * auto arrays * sizeof(), alignas() * auto parameters, auto return type * auto as a struct/typedef member * uninitialized auto variables * auto in an union * auto as a enum type specifier * auto casts * auto in an compound literals Differential Revision: https://reviews.llvm.org/D133289
Diffstat (limited to 'llvm/lib/Bitcode/Reader/MetadataLoader.cpp')
0 files changed, 0 insertions, 0 deletions