-
🔭 I’m currently working on lcc
-
🌱 I’m currently learning LLVM IR, C++ templates and generic programming
-
👨💻 All of my projects are available at https://github.com/iiicp
-
💬 Ask me about C C++
-
📫 How to reach me [email protected]
llvm-based c compiler
License: MIT License
🔭 I’m currently working on lcc
🌱 I’m currently learning LLVM IR, C++ templates and generic programming
👨💻 All of my projects are available at https://github.com/iiicp
💬 Ask me about C C++
📫 How to reach me [email protected]
Building CXX object CMakeFiles/lcc.dir/src/Lexer.cc.o
FAILED: CMakeFiles/lcc.dir/src/Lexer.cc.o
/usr/bin/c++ -I/home/kazen/dev/lcc/src -I/home/kazen/dev/lcc/build/src -I/usr/lib/llvm-14/include -std=gnu++20 -MD -MT C MakeFiles/lcc.dir/src/Lexer.cc.o -MF CMakeFiles/lcc.dir/src/Lexer.cc.o.d -o CMakeFiles/lcc.dir/src/Lexer.cc.o -c /home/ka zen/dev/lcc/src/Lexer.cc
In file included from /home/kazen/dev/lcc/src/Utilities.h:19,
from /home/kazen/dev/lcc/src/Lexer.cc:12:
/home/kazen/dev/lcc/src/Syntax.h:141:8: error: ‘unique_ptr’ in namespace ‘std’ does not name a template type
141 | std::unique_ptr<Expr> mExpr;
| ^~~~~~~~~~
/home/kazen/dev/lcc/src/Syntax.h:1:1: note: ‘std::unique_ptr’ is defined in header ‘<memory>’; did you forget to ‘#includ e <memory>’?
+++ |+#include <memory>
1 | /***********************************
/home/kazen/dev/lcc/src/Syntax.h: In constructor ‘lcc::Syntax::PrimaryExprParent::PrimaryExprParent(lcc::Syntax::Expr&&)’ :
...
error includes
从 B 站来的。大致浏览了下代码,发现代码里大量出现了 return 时加 move,这有点 “负优化”
可以读下这篇知乎回答:
我按照mysy下载了相应包以及添加了环境变量
可是却没有编译成功,出现了多处问题以及note提醒,主要有
![efc208ff0e685bfccbd5866738d8182](https://user-images.githubusercontent.com/112836831/218121607-623c3524-deab-4477-a738-cc274529
62df.png)
我发现主要与c++的头文件有关,想请问是因为版本不同出现的问题还是我自己有某处操作不当?
效果描述
最好能有高亮终结符的效果,这样可能看得更清晰。
举例来说:对于测试文件 ../tests/c/lex_01.c
的控制台输出
int printf(const char *f, ...);
输出效果如下:
TranslationUnit 0x7ffe92a5fc80 1
Declaration 0x55800381aef0
DeclarationSpecifiers 0x55800381aef8
TypeSpecifier 0x55800381be20
PrimitiveTypeSpecifier 0x55800381be28
+ Int
Declarator 0x55800381bfb0
DirectDeclaratorParamTypeList 0x55800381bfd0
DirectDeclaratorIdent 0x55800381ae10
+ printf
ParamTypeList 0x55800381bfe0
ParamList 0x55800381bfe8
DeclarationSpecifiers 0x55800381ae68
TypeQualifier 0x55800381a8e0
+ Const
TypeSpecifier 0x55800381be50
PrimitiveTypeSpecifier 0x55800381be58
+ Char
Declarator 0x55800381b620
Pointer 0x55800381be80
DirectDeclaratorIdent 0x55800381b640
+ f
+ ...
[4/9] Building CXX object lib/Sema/CMakeFiles/lccSema.dir/Scope.cc.o
FAILED: lib/Sema/CMakeFiles/lccSema.dir/Scope.cc.o
/usr/bin/c++ -DGTEST_HAS_RTTI=0 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/limuy/桌面/src/lcc/include -I/home/limuy/桌面/src/lcc/build/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -fno-lifetime-dse -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -Wimplicit-fallthrough -Wno-class-memaccess -Wno-redundant-move -Wno-pessimizing-move -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -std=gnu++20 -fno-exceptions -funwind-tables -fno-rtti -Werror -MD -MT lib/Sema/CMakeFiles/lccSema.dir/Scope.cc.o -MF lib/Sema/CMakeFiles/lccSema.dir/Scope.cc.o.d -o lib/Sema/CMakeFiles/lccSema.dir/Scope.cc.o -c '/home/limuy/桌面/src/lcc/lib/Sema/Scope.cc'
/home/limuy/桌面/src/lcc/lib/Sema/Scope.cc: In member function ‘const lcc::Scope::DeclarationSymbol* lcc::Scope::FindDeclSymbol(std::string_view, size_t)’:
/home/limuy/桌面/src/lcc/lib/Sema/Scope.cc:19:15: 错误:comparison of unsigned expression in ‘>= 0’ is always true [-Werror=type-limits]
19 | while (curr >= 0) {
| ~~~~~^~~~
cc1plus:所有的警告都被当作是错误[5/9] Building CXX object lib/Support/CMakeFiles/lccSupport.dir/DumpTool.cc.o
FAILED: lib/Support/CMakeFiles/lccSupport.dir/DumpTool.cc.o
/usr/bin/c++ -DGTEST_HAS_RTTI=0 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/limuy/桌面/src/lcc/include -I/home/limuy/桌面/src/lcc/build/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -fno-lifetime-dse -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -Wimplicit-fallthrough -Wno-class-memaccess -Wno-redundant-move -Wno-pessimizing-move -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -std=gnu++20 -fno-exceptions -funwind-tables -fno-rtti -Werror -MD -MT lib/Support/CMakeFiles/lccSupport.dir/DumpTool.cc.o -MF lib/Support/CMakeFiles/lccSupport.dir/DumpTool.cc.o.d -o lib/Support/CMakeFiles/lccSupport.dir/DumpTool.cc.o -c '/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc'
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:69:48: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
69 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:69:48: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:73:48: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
73 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:73:48: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::Declaration&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:81:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
81 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:81:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::FunctionDefinition&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:94:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
94 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:94:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::DeclSpec&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:102:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
102 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:102:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::Declarator&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:116:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
116 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:116:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::AbstractDeclarator&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:126:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
126 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:126:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::Initializer&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:138:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
138 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:138:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::InitializerList&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:150:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
150 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:150:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:160:52: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
160 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:160:52: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::StorageClsSpec&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:172:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
172 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:172:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::TypeQualifier&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:194:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
194 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:194:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::TypeSpec&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:210:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
210 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:210:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:216:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
216 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:216:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:266:48: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
266 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:266:48: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:287:48: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
287 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:287:48: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::FunctionSpecifier&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:303:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
303 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:303:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::Pointer&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:310:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
310 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:310:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:325:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
325 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:325:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:332:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
332 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:332:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:339:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
339 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:339:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:356:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
356 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:356:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:364:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
364 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:364:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::DirectAbstractDeclarator&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:376:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
376 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:376:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:383:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
383 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:383:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:390:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
390 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:390:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:410:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
410 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:410:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:423:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
423 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:423:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::ParamTypeList&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:434:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
434 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:434:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::ParamList&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:444:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
444 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:444:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::BlockItem&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:469:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
469 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:469:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::IfStmt&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:498:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
498 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:498:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::ForStmt&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:508:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
508 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:508:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::WhileStmt&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:525:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
525 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:525:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::DoWhileStmt&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:532:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
532 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:532:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::SwitchStmt&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:547:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
547 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:547:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::CaseStmt&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:554:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
554 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:554:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::DefaultStmt&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:561:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
561 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:561:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::GotoStmt&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:567:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
567 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:567:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::LabelStmt&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:573:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
573 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:573:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::ReturnStmt&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:587:40: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
587 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:587:40: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::Expr&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:595:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
595 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:595:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::AssignExpr&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:604:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
604 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:604:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::ConstantExpr&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:661:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
661 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:661:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::LogOrExpr&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:673:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
673 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:673:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::LogAndExpr&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:681:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
681 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:681:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::BitOrExpr&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:689:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
689 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:689:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::BitXorExpr&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:697:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
697 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:697:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::BitAndExpr&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:705:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
705 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:705:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::EqualExpr&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:713:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
713 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:713:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::RelationalExpr&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:732:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
732 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:732:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::ShiftExpr&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:759:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
759 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:759:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::AdditiveExpr&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:778:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
778 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:778:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::MultiExpr&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:797:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
797 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:797:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::CastExpr&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:820:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
820 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:820:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:840:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
840 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:840:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:880:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
880 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:880:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In function ‘void lcc::dump::visit(const lcc::Syntax::TypeName&)’:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:890:38: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
890 | ValueReset v(LeftAlign, LeftAlign+1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:890:38: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:900:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
900 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:900:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:906:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
906 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:906:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:913:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
913 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:913:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:923:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
923 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:923:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:930:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
930 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:930:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:937:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
937 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:937:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:943:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
943 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:943:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:949:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
949 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:949:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:960:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
960 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:960:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:964:48: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
964 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:964:48: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:969:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
969 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:969:46: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In instantiation of ‘lcc::dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const lcc::Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> [with auto:49 = const int&]’:
/usr/include/c++/13.1.1/type_traits:2558:26: required by substitution of ‘template<class _Fn, class ... _Args> static std::__result_of_success<decltype (declval<_Fn>()((declval<_Args>)()...)), std::__invoke_other> std::__result_of_other_impl::_S_test(int) [with _Fn = lcc::overload<lcc::dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const lcc::Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> >; _Args = {const int&}]’
/usr/include/c++/13.1.1/type_traits:2569:55: required from ‘struct std::__result_of_impl<false, false, lcc::overload<lcc::dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const lcc::Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> >, const int&>’
/usr/include/c++/13.1.1/type_traits:2574:12: required from ‘struct std::__invoke_result<lcc::overload<lcc::dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const lcc::Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> >, const int&>’
/usr/include/c++/13.1.1/type_traits:3061:12: required from ‘struct std::invoke_result<lcc::overload<lcc::dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const lcc::Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> >, const int&>’
/usr/include/c++/13.1.1/type_traits:3073:11: required by substitution of ‘template<class _Fn, class ... _Args> using std::invoke_result_t = typename std::invoke_result::type [with _Fn = lcc::overload<lcc::dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const lcc::Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> >; _Args = {const int&}]’
/usr/include/c++/13.1.1/variant:1094:11: required by substitution of ‘template<class _Visitor, class ... _Variants> using std::__detail::__variant::__visit_result_t = std::invoke_result_t<_Visitor, std::__detail::__variant::__get_t<0, _Variants, decltype (std::__detail::__variant::__as(declval<_Variants>())), typename std::variant_alternative<0, typename std::remove_reference<decltype (std::__detail::__variant::__as(declval<_Variants>()))>::type>::type>...> [with _Visitor = lcc::overload<lcc::dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const lcc::Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> >; _Variants = {const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&}]’
/usr/include/c++/13.1.1/variant:1827:5: required by substitution of ‘template<class _Visitor, class ... _Variants> constexpr std::__detail::__variant::__visit_result_t<_Visitor, _Variants ...> std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = lcc::overload<lcc::dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const lcc::Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> >; _Variants = {const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&}]’
/home/limuy/桌面/src/lcc/include/lcc/Basic/Match.h:265:15: required from ‘constexpr decltype(auto) lcc::match(Variant&&, Matchers&& ...) [with Variant = const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&; Matchers = {dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)>}]’
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:972:14: required from here
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:973:22: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
973 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:973:22: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In instantiation of ‘lcc::dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const lcc::Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> [with auto:49 = const unsigned int&]’:
/home/limuy/桌面/src/lcc/include/lcc/Basic/Match.h:166:44: required from ‘constexpr decltype(auto) lcc::visit_imp(Callable&&, Variant&&, std::enable_if_t<(i == 6)>) [with long unsigned int i = 6; Callable = overload<dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> >; Variant = const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&; std::enable_if_t<(i == 6)> = void]’
/home/limuy/桌面/src/lcc/include/lcc/Basic/Match.h:259:67: required from ‘constexpr decltype(auto) lcc::visit(Callable&&, Variant&&) [with Callable = overload<dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> >; Variant = const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&]’
/home/limuy/桌面/src/lcc/include/lcc/Basic/Match.h:265:15: required from ‘constexpr decltype(auto) lcc::match(Variant&&, Matchers&& ...) [with Variant = const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&; Matchers = {dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)>}]’
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:972:14: required from here
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:973:22: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:973:22: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In instantiation of ‘lcc::dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const lcc::Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> [with auto:49 = const long int&]’:
/home/limuy/桌面/src/lcc/include/lcc/Basic/Match.h:169:44: required from ‘constexpr decltype(auto) lcc::visit_imp(Callable&&, Variant&&, std::enable_if_t<(i == 6)>) [with long unsigned int i = 6; Callable = overload<dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> >; Variant = const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&; std::enable_if_t<(i == 6)> = void]’
/home/limuy/桌面/src/lcc/include/lcc/Basic/Match.h:259:67: required from ‘constexpr decltype(auto) lcc::visit(Callable&&, Variant&&) [with Callable = overload<dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> >; Variant = const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&]’
/home/limuy/桌面/src/lcc/include/lcc/Basic/Match.h:265:15: required from ‘constexpr decltype(auto) lcc::match(Variant&&, Matchers&& ...) [with Variant = const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&; Matchers = {dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)>}]’
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:972:14: required from here
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:973:22: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:973:22: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In instantiation of ‘lcc::dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const lcc::Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> [with auto:49 = const long unsigned int&]’:
/home/limuy/桌面/src/lcc/include/lcc/Basic/Match.h:172:44: required from ‘constexpr decltype(auto) lcc::visit_imp(Callable&&, Variant&&, std::enable_if_t<(i == 6)>) [with long unsigned int i = 6; Callable = overload<dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> >; Variant = const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&; std::enable_if_t<(i == 6)> = void]’
/home/limuy/桌面/src/lcc/include/lcc/Basic/Match.h:259:67: required from ‘constexpr decltype(auto) lcc::visit(Callable&&, Variant&&) [with Callable = overload<dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> >; Variant = const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&]’
/home/limuy/桌面/src/lcc/include/lcc/Basic/Match.h:265:15: required from ‘constexpr decltype(auto) lcc::match(Variant&&, Matchers&& ...) [with Variant = const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&; Matchers = {dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)>}]’
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:972:14: required from here
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:973:22: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:973:22: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In instantiation of ‘lcc::dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const lcc::Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> [with auto:49 = const float&]’:
/home/limuy/桌面/src/lcc/include/lcc/Basic/Match.h:175:44: required from ‘constexpr decltype(auto) lcc::visit_imp(Callable&&, Variant&&, std::enable_if_t<(i == 6)>) [with long unsigned int i = 6; Callable = overload<dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> >; Variant = const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&; std::enable_if_t<(i == 6)> = void]’
/home/limuy/桌面/src/lcc/include/lcc/Basic/Match.h:259:67: required from ‘constexpr decltype(auto) lcc::visit(Callable&&, Variant&&) [with Callable = overload<dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> >; Variant = const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&]’
/home/limuy/桌面/src/lcc/include/lcc/Basic/Match.h:265:15: required from ‘constexpr decltype(auto) lcc::match(Variant&&, Matchers&& ...) [with Variant = const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&; Matchers = {dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)>}]’
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:972:14: required from here
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:973:22: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:973:22: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In instantiation of ‘lcc::dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const lcc::Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> [with auto:49 = const double&]’:
/home/limuy/桌面/src/lcc/include/lcc/Basic/Match.h:178:44: required from ‘constexpr decltype(auto) lcc::visit_imp(Callable&&, Variant&&, std::enable_if_t<(i == 6)>) [with long unsigned int i = 6; Callable = overload<dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> >; Variant = const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&; std::enable_if_t<(i == 6)> = void]’
/home/limuy/桌面/src/lcc/include/lcc/Basic/Match.h:259:67: required from ‘constexpr decltype(auto) lcc::visit(Callable&&, Variant&&) [with Callable = overload<dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> >; Variant = const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&]’
/home/limuy/桌面/src/lcc/include/lcc/Basic/Match.h:265:15: required from ‘constexpr decltype(auto) lcc::match(Variant&&, Matchers&& ...) [with Variant = const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&; Matchers = {dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)>}]’
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:972:14: required from here
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:973:22: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:973:22: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: In instantiation of ‘lcc::dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const lcc::Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> [with auto:49 = const std::__cxx11::basic_string&]’:
/home/limuy/桌面/src/lcc/include/lcc/Basic/Match.h:181:44: required from ‘constexpr decltype(auto) lcc::visit_imp(Callable&&, Variant&&, std::enable_if_t<(i == 6)>) [with long unsigned int i = 6; Callable = overload<dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> >; Variant = const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&; std::enable_if_t<(i == 6)> = void]’
/home/limuy/桌面/src/lcc/include/lcc/Basic/Match.h:259:67: required from ‘constexpr decltype(auto) lcc::visit(Callable&&, Variant&&) [with Callable = overload<dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)> >; Variant = const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&]’
/home/limuy/桌面/src/lcc/include/lcc/Basic/Match.h:265:15: required from ‘constexpr decltype(auto) lcc::match(Variant&&, Matchers&& ...) [with Variant = const std::variant<int, unsigned int, long int, long unsigned int, float, double, std::__cxx11::basic_string<char, std::char_traits, std::allocator > >&; Matchers = {dump::visit(const lcc::Syntax::PrimaryExpr&)::<lambda(const Syntax::PrimaryExprConstant&)>::<lambda(auto:49&&)>}]’
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:972:14: required from here
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:973:22: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:973:22: 附注:add a deduction guide to suppress this warning
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc: 在 lambda 函数中:
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:983:46: 错误:‘ValueReset’ may not intend to support class template argument deduction [-Werror=ctad-maybe-unsupported]
983 | ValueReset v(LeftAlign, LeftAlign + 1);
| ^
/home/limuy/桌面/src/lcc/lib/Support/DumpTool.cc:983:46: 附注:add a deduction guide to suppress this warning
cc1plus:所有的警告都被当作是错误
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.