cppfront
cppfront copied to clipboard
[BUG] Variable initialized after equally named capture rejected
trafficstars
Title: Variable initialized after equally named capture rejected.
Minimal reproducer (https://cpp2.godbolt.org/z/MPYnY1qbM):
main: () = {
test_overloads := 0;
_ = :() = { test_overloads := test_overloads$; };
}
Commands:
cppfront main.cpp2
clang++-18 -std=c++26 -stdlib=libc++ -lc++abi -pedantic-errors -Wall -Wextra -Wconversion -Werror=unused-result -Werror=unused-value -Werror=unused-parameter -Werror=unused-variable -I . main.cpp
Expected result: A working program.
Actual result and error:
Output:main.cpp2...
main.cpp2(3,33): error: local variable test_overloads cannot be used in its own initializer
See also:
- #880.
- #1311.