worawit/blutter

Dart 2.10.5,Unable to run successfully

Opened this issue · 4 comments

环境:
environment:
图片

ql@ql-None:~/桌面/blutter$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-linux-gnu/13/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.2.0-4ubuntu3' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-13 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-13-XYspKM/gcc-13-13.2.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-13-XYspKM/gcc-13-13.2.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 13.2.0 (Ubuntu 13.2.0-4ubuntu3) 

出错的命令:
Command in error:

Dart version: 2.10.5, Snapshot: 8ee4ef7a67df9845fba331734198a953, Target: android arm64

....

[256/256] Linking CXX static library libdartvm2.10.5_android_arm64.a
-- Install configuration: "Release"

...

-- Build files have been written to: /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64
[2/22] Building CXX object CMakeFiles/...android_arm64.dir/src/DartLoader.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLoader.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLoader.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLoader.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLoader.cpp.o -c '/home/ql/桌面/blutter/blutter/src/DartLoader.cpp'

...

FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer_arm64.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer_arm64.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer_arm64.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer_arm64.cpp.o -c '/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp'
In file included from /home/ql/桌面/blutter/blutter/src/Disassembler.h:5,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:2,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:2:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:84:59: error: ‘HEAP_BITS’ is not a member of ‘dart’
   84 | constexpr arm64_reg CSREG_DART_HEAP = ToCapstoneReg(dart::HEAP_BITS);
      |                                                           ^~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:88:71: error: ‘dart::AllocateObjectABI’ has not been declared
   88 | constexpr arm64_reg CSREG_ALLOCATE_OBJ_TYPEARGS = ToCapstoneReg(dart::AllocateObjectABI::kTypeArgumentsReg);
      |                                                                       ^~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:89:75: error: ‘dart::AllocateClosureABI’ has not been declared
   89 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_FUNCTION = ToCapstoneReg(dart::AllocateClosureABI::kFunctionReg);
      |                                                                           ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:90:74: error: ‘dart::AllocateClosureABI’ has not been declared
   90 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_CONTEXT = ToCapstoneReg(dart::AllocateClosureABI::kContextReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:91:74: error: ‘dart::AllocateClosureABI’ has not been declared
   91 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_SCRATCH = ToCapstoneReg(dart::AllocateClosureABI::kScratchReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
In file included from /home/ql/桌面/blutter/blutter/src/DartField.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartClass.h:3,
                 from /home/ql/桌面/blutter/blutter/src/VarValue.h:2,
                 from /home/ql/桌面/blutter/blutter/src/il.h:3,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:3:
/home/ql/桌面/blutter/blutter/src/DartTypes.h:218:37: error: ‘dart::FunctionTypePtr’ has not been declared
  218 |         DartFunctionType* FindOrAdd(dart::FunctionTypePtr fnTypePtr);
      |                                     ^~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:164:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  164 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarGrowableArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:186:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  186 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarFunctionType::VarFunctionType(const DartFunctionType&)’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:246:83: error: ‘kFunctionTypeCid’ is not a member of ‘dart’; did you mean ‘kFunctionCid’?
  246 |         explicit VarFunctionType(const DartFunctionType& fnType) : VarValue(dart::kFunctionTypeCid, true), fnType(fnType) {}
      |                                                                                   ^~~~~~~~~~~~~~~~
      |                                                                                   kFunctionCid
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarSentinel::VarSentinel()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:261:49: error: ‘kSentinelCid’ is not a member of ‘dart’
  261 |         explicit VarSentinel() : VarValue(dart::kSentinelCid, false) {}
      |                                                 ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp: In function ‘VarValue* getPoolObject(DartApp&, intptr_t, A64::Register)’:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:69:67: error: ‘class dart::ClassPtr’ has no member named ‘untag’
   69 |                         auto dartCls = app.GetClass(field.Owner().untag()->id());
      |                                                                   ^~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:76:68: error: ‘const class dart::Array’ has no member named ‘ptr’
   76 |                         return new VarArray(dart::Array::Cast(obj).ptr());
      |                                                                    ^~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:80:28: error: ‘kConstMapCid’ is not a member of ‘dart’; did you mean ‘kContextCid’?
   80 |                 case dart::kConstMapCid:
      |                            ^~~~~~~~~~~~
      |                            kContextCid
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:82:28: error: ‘kConstSetCid’ is not a member of ‘dart’; did you mean ‘kContextCid’?
   82 |                 case dart::kConstSetCid:
      |                            ^~~~~~~~~~~~
      |                            kContextCid
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:92:28: error: ‘kTypeParametersCid’ is not a member of ‘dart’; did you mean ‘kTypeParameterCid’?
   92 |                 case dart::kTypeParametersCid:
      |                            ^~~~~~~~~~~~~~~~~~
      |                            kTypeParameterCid
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:95:91: error: ‘const class dart::Type’ has no member named ‘ptr’
   95 |                         return new VarType(*app.TypeDb()->FindOrAdd(dart::Type::Cast(obj).ptr()));
      |                                                                                           ^~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:101:109: error: ‘const class dart::TypeParameter’ has no member named ‘ptr’
  101 |                         return new VarTypeParameter(*app.TypeDb()->FindOrAdd(dart::TypeParameter::Cast(obj).ptr()));
      |                                                                                                             ^~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:102:28: error: ‘kFunctionTypeCid’ is not a member of ‘dart’; did you mean ‘kFunctionCid’?
  102 |                 case dart::kFunctionTypeCid:
      |                            ^~~~~~~~~~~~~~~~
      |                            kFunctionCid
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:103:83: error: ‘dart::FunctionType’ has not been declared
  103 |                         return new VarFunctionType(*app.TypeDb()->FindOrAdd(dart::FunctionType::Cast(obj).ptr()));
      |                                                                                   ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:105:108: error: ‘const class dart::TypeArguments’ has no member named ‘ptr’
  105 |                         return new VarTypeArgument(*app.TypeDb()->FindOrAdd(dart::TypeArguments::Cast(obj).ptr()));
      |                                                                                                            ^~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:107:28: error: ‘kSentinelCid’ is not a member of ‘dart’
  107 |                 case dart::kSentinelCid:
      |                            ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp: In member function ‘ILResult FunctionAnalyzer::processLoadFieldTableInstr(AsmInstruction)’:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1186:137: error: ‘kSentinelCid’ is not a member of ‘dart’
 1186 |                         if (objPoolInstr.insCnt == 0 || objPoolInstr.dstReg != A64::TMP_REG || objPoolInstr.item.ValueTypeId() != dart::kSentinelCid) {
      |                                                                                                                                         ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1218:83: error: ‘InitLateStaticFieldStub’ is not a member of ‘DartStub’
 1218 |                                                 INSN_ASSERT(stubKind == DartStub::InitLateStaticFieldStub || stubKind == DartStub::InitLateFinalStaticFieldStub);
      |                                                                                   ^~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1218:132: error: ‘InitLateFinalStaticFieldStub’ is not a member of ‘DartStub’
 1218 |                                                 INSN_ASSERT(stubKind == DartStub::InitLateStaticFieldStub || stubKind == DartStub::InitLateFinalStaticFieldStub);
      |                                                                                                                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1251:108: error: ‘LateInitializationErrorABI’ is not a member of ‘dart’
 1251 |                                 if (objPoolInstr.insCnt > 0 && objPoolInstr.dstReg == A64::Register{ dart::LateInitializationErrorABI::kFieldReg } && objPoolInstr.item.ValueTypeId() == dart::kFieldCid) {
      |                                                                                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1251:108: error: no matching function for call to ‘A64::Register::Register(<brace-enclosed initializer list>)’
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:230:19: note: candidate: ‘constexpr A64::Register::Register(arm64_reg)’
  230 |         constexpr Register(arm64_reg r) {
      |                   ^~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:230:19: note:   conversion of argument 1 would be ill-formed:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:206:19: note: candidate: ‘constexpr A64::Register::Register(dart::Register)’
  206 |         constexpr Register(dart::Register r) {
      |                   ^~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:206:19: note:   conversion of argument 1 would be ill-formed:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:204:19: note: candidate: ‘constexpr A64::Register::Register(Value)’
  204 |         constexpr Register(Value reg) : reg(reg) {}
      |                   ^~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:204:19: note:   conversion of argument 1 would be ill-formed:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:203:19: note: candidate: ‘constexpr A64::Register::Register()’
  203 |         constexpr Register() : reg(kNoRegister) {}
      |                   ^~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:203:19: note:   candidate expects 0 arguments, 1 provided
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:106:24: note: candidate: ‘constexpr A64::Register::Register(const A64::Register&)’
  106 | class alignas(int32_t) Register {
      |                        ^~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:106:24: note:   conversion of argument 1 would be ill-formed:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:106:24: note: candidate: ‘constexpr A64::Register::Register(A64::Register&&)’
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:106:24: note:   conversion of argument 1 would be ill-formed:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1251:100: error: expected primary-expression before ‘{’ token
 1251 |                                 if (objPoolInstr.insCnt > 0 && objPoolInstr.dstReg == A64::Register{ dart::LateInitializationErrorABI::kFieldReg } && objPoolInstr.item.ValueTypeId() == dart::kFieldCid) {
      |                                                                                                    ^
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1251:100: error: expected ‘)’ before ‘{’ token
 1251 |                                 if (objPoolInstr.insCnt > 0 && objPoolInstr.dstReg == A64::Register{ dart::LateInitializationErrorABI::kFieldReg } && objPoolInstr.item.ValueTypeId() == dart::kFieldCid) {
      |                                    ~                                                               ^
      |                                                                                                    )
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1259:77: error: ‘LateInitializationErrorSharedWithoutFPURegsStub’ is not a member of ‘DartStub’
 1259 |                                         INSN_ASSERT(stub->kind == DartStub::LateInitializationErrorSharedWithoutFPURegsStub || stub->kind == DartStub::LateInitializationErrorSharedWithFPURegsStub);
      |                                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1259:152: error: ‘LateInitializationErrorSharedWithFPURegsStub’ is not a member of ‘DartStub’
 1259 |                                         INSN_ASSERT(stub->kind == DartStub::LateInitializationErrorSharedWithoutFPURegsStub || stub->kind == DartStub::LateInitializationErrorSharedWithFPURegsStub);
      |                                                                                                                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp: In member function ‘ILResult FunctionAnalyzer::processGdtCallInstr(AsmInstruction)’:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1326:56: error: ‘dart::DispatchTableNullErrorABI’ has not been declared
 1326 |                 insn.ops[1].reg == ToCapstoneReg(dart::DispatchTableNullErrorABI::kClassIdReg))
      |                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp: In member function ‘ILResult FunctionAnalyzer::processBranchIfSmiInstr(AsmInstruction)’:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1482:85: error: ‘kCompressedWordSize’ is not a member of ‘dart’
 1482 |         if (insn.id() == ARM64_INS_TBZ && insn.ops[1].imm == dart::kSmiTag && dart::kCompressedWordSize == GetCsRegSize(insn.ops[0].reg)) {
      |                                                                                     ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp: In member function ‘ILResult FunctionAnalyzer::processLoadClassIdInstr(AsmInstruction)’:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1492:80: error: ‘dart::UntaggedObject’ has not been declared
 1492 |         if (insn.id() == ARM64_INS_LDUR && insn.ops[1].mem.disp == -1 && dart::UntaggedObject::kClassIdTagPos == 12) {
      |                                                                                ^~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1504:54: error: ‘dart::UntaggedObject’ has not been declared
 1504 |                 INSN_ASSERT(insn.ops[2].imm == dart::UntaggedObject::kClassIdTagPos);
      |                                                      ^~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1505:54: error: ‘dart::UntaggedObject’ has not been declared
 1505 |                 INSN_ASSERT(insn.ops[3].imm == dart::UntaggedObject::kClassIdTagSize);
      |                                                      ^~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1508:85: error: ‘dart::UntaggedObject’ has not been declared
 1508 |         else if (insn.id() == ARM64_INS_LDURH && insn.ops[1].mem.disp == 1 && dart::UntaggedObject::kClassIdTagPos == 16) {
      |                                                                                     ^~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp: In member function ‘ILResult FunctionAnalyzer::processLoadStore(AsmInstruction)’:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1921:132: error: ‘kCompressedWordSize’ is not a member of ‘dart’
 1921 |                                 const auto arr_idx = (insn.ops[2].imm + dart::kHeapObjectTag - dart::Array::data_offset()) / dart::kCompressedWordSize;
      |                                                                                                                                    ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1929:75: error: ‘kCompressedWordSizeLog2’ is not a member of ‘dart’
 1929 |                                         (insn.ops[2].shift.value == dart::kCompressedWordSizeLog2 ||
      |                                                                           ^~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1930:83: error: ‘kCompressedWordSizeLog2’ is not a member of ‘dart’
 1930 |                                                 (insn.ops[2].shift.value == dart::kCompressedWordSizeLog2 - 1 || insn.ops[2].ext == ARM64_EXT_SXTW)));
      |                                                                                   ^~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1942:122: error: ‘kCompressedWordSize’ is not a member of ‘dart’
 1942 |                         INSN_ASSERT(A64::Register{ insn.ops[0].reg } == valReg && GetCsRegSize(insn.ops[0].reg) == dart::kCompressedWordSize);
      |                                                                                                                          ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1951:47: error: ‘kCompressedWordSize’ is not a member of ‘dart’
 1951 |                         ArrayOp arrayOp(dart::kCompressedWordSize, false, ArrayOp::List);
      |                                               ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1995:50: error: ‘dart::UntaggedTypedData’ has not been declared
 1995 |                         bool isTypedData = dart::UntaggedTypedData::payload_offset() - dart::kHeapObjectTag == arr_data_offset;
      |                                                  ^~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:2046:113: error: ‘dart::UntaggedTypedData’ has not been declared
 2046 |                                 const auto idx = VarStorage::NewSmallImm((offset + dart::kHeapObjectTag - dart::UntaggedTypedData::payload_offset()) / arrayOp.size);
      |                                                                                                                 ^~~~~~~~~~~~~~~~~
ninja: build stopped: subcommand failed.
Traceback (most recent call last):
  File "/home/ql/桌面/blutter/blutter.py", line 138, in <module>
    main(args.indir, args.outdir, args.rebuild, args.vs_sln)
  File "/home/ql/桌面/blutter/blutter.py", line 120, in main
    cmake_blutter(blutter_name, dartlib_name, macros)
  File "/home/ql/桌面/blutter/blutter.py", line 76, in cmake_blutter
    subprocess.run([NINJA_CMD], cwd=builddir, check=True)
  File "/usr/lib/python3.11/subprocess.py", line 571, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['ninja']' returned non-zero exit status 1.

我在win,kali,ubuntu均报该问题
I have this problem at win,kali,ubuntu.

[2/22] Building CXX object CMakeFiles/...android_arm64.dir/src/DartLoader.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLoader.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLoader.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLoader.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLoader.cpp.o -c '/home/ql/桌面/blutter/blutter/src/DartLoader.cpp'
/home/ql/桌面/blutter/blutter/src/DartLoader.cpp: In function ‘_Dart_Isolate* load_isolate(const uint8_t*, const uint8_t*)’:
/home/ql/桌面/blutter/blutter/src/DartLoader.cpp:45:15: error: ‘struct Dart_IsolateFlags’ has no member named ‘snapshot_is_dontneed_safe’
   45 |         flags.snapshot_is_dontneed_safe = true;
      |               ^~~~~~~~~~~~~~~~~~~~~~~~~
[4/22] Building CXX object CMakeFiles/..._android_arm64.dir/src/DartField.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartField.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartField.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartField.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartField.cpp.o -c '/home/ql/桌面/blutter/blutter/src/DartField.cpp'
In file included from /home/ql/桌面/blutter/blutter/src/DartField.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartField.cpp:2:
/home/ql/桌面/blutter/blutter/src/DartTypes.h:218:37: error: ‘dart::FunctionTypePtr’ has not been declared
  218 |         DartFunctionType* FindOrAdd(dart::FunctionTypePtr fnTypePtr);
      |                                     ^~~~
[5/22] Building CXX object CMakeFiles/...droid_arm64.dir/src/CodeAnalyzer.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer.cpp.o -c '/home/ql/桌面/blutter/blutter/src/CodeAnalyzer.cpp'
In file included from /home/ql/桌面/blutter/blutter/src/Disassembler.h:5,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:2,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.cpp:2:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:84:59: error: ‘HEAP_BITS’ is not a member of ‘dart’
   84 | constexpr arm64_reg CSREG_DART_HEAP = ToCapstoneReg(dart::HEAP_BITS);
      |                                                           ^~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:88:71: error: ‘dart::AllocateObjectABI’ has not been declared
   88 | constexpr arm64_reg CSREG_ALLOCATE_OBJ_TYPEARGS = ToCapstoneReg(dart::AllocateObjectABI::kTypeArgumentsReg);
      |                                                                       ^~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:89:75: error: ‘dart::AllocateClosureABI’ has not been declared
   89 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_FUNCTION = ToCapstoneReg(dart::AllocateClosureABI::kFunctionReg);
      |                                                                           ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:90:74: error: ‘dart::AllocateClosureABI’ has not been declared
   90 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_CONTEXT = ToCapstoneReg(dart::AllocateClosureABI::kContextReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:91:74: error: ‘dart::AllocateClosureABI’ has not been declared
   91 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_SCRATCH = ToCapstoneReg(dart::AllocateClosureABI::kScratchReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
In file included from /home/ql/桌面/blutter/blutter/src/DartField.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartClass.h:3,
                 from /home/ql/桌面/blutter/blutter/src/VarValue.h:2,
                 from /home/ql/桌面/blutter/blutter/src/il.h:3,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:3:
/home/ql/桌面/blutter/blutter/src/DartTypes.h:218:37: error: ‘dart::FunctionTypePtr’ has not been declared
  218 |         DartFunctionType* FindOrAdd(dart::FunctionTypePtr fnTypePtr);
      |                                     ^~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:164:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  164 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarGrowableArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:186:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  186 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarFunctionType::VarFunctionType(const DartFunctionType&)’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:246:83: error: ‘kFunctionTypeCid’ is not a member of ‘dart’; did you mean ‘kFunctionCid’?
  246 |         explicit VarFunctionType(const DartFunctionType& fnType) : VarValue(dart::kFunctionTypeCid, true), fnType(fnType) {}
      |                                                                                   ^~~~~~~~~~~~~~~~
      |                                                                                   kFunctionCid
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarSentinel::VarSentinel()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:261:49: error: ‘kSentinelCid’ is not a member of ‘dart’
  261 |         explicit VarSentinel() : VarValue(dart::kSentinelCid, false) {}
      |                                                 ^~~~~~~~~~~~
[6/22] Building CXX object CMakeFiles/...ndroid_arm64.dir/src/DartLibrary.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLibrary.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLibrary.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLibrary.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLibrary.cpp.o -c '/home/ql/桌面/blutter/blutter/src/DartLibrary.cpp'
In file included from /home/ql/桌面/blutter/blutter/src/DartField.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartClass.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartLibrary.cpp:3:
/home/ql/桌面/blutter/blutter/src/DartTypes.h:218:37: error: ‘dart::FunctionTypePtr’ has not been declared
  218 |         DartFunctionType* FindOrAdd(dart::FunctionTypePtr fnTypePtr);
      |                                     ^~~~
/home/ql/桌面/blutter/blutter/src/DartLibrary.cpp: In constructor ‘DartLibrary::DartLibrary(const dart::Library&)’:
/home/ql/桌面/blutter/blutter/src/DartLibrary.cpp:6:62: error: ‘const class dart::Library’ has no member named ‘ptr’
    6 | DartLibrary::DartLibrary(const dart::Library& lib) : ptr(lib.ptr()), topClass(NULL)
      |                                                              ^~~
[7/22] Building CXX object CMakeFiles/...droid_arm64.dir/src/DartFunction.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartFunction.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartFunction.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartFunction.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartFunction.cpp.o -c '/home/ql/桌面/blutter/blutter/src/DartFunction.cpp'
In file included from /home/ql/桌面/blutter/blutter/src/Disassembler.h:5,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:2,
                 from /home/ql/桌面/blutter/blutter/src/DartFunction.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartFunction.cpp:2:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:84:59: error: ‘HEAP_BITS’ is not a member of ‘dart’
   84 | constexpr arm64_reg CSREG_DART_HEAP = ToCapstoneReg(dart::HEAP_BITS);
      |                                                           ^~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:88:71: error: ‘dart::AllocateObjectABI’ has not been declared
   88 | constexpr arm64_reg CSREG_ALLOCATE_OBJ_TYPEARGS = ToCapstoneReg(dart::AllocateObjectABI::kTypeArgumentsReg);
      |                                                                       ^~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:89:75: error: ‘dart::AllocateClosureABI’ has not been declared
   89 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_FUNCTION = ToCapstoneReg(dart::AllocateClosureABI::kFunctionReg);
      |                                                                           ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:90:74: error: ‘dart::AllocateClosureABI’ has not been declared
   90 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_CONTEXT = ToCapstoneReg(dart::AllocateClosureABI::kContextReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:91:74: error: ‘dart::AllocateClosureABI’ has not been declared
   91 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_SCRATCH = ToCapstoneReg(dart::AllocateClosureABI::kScratchReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
In file included from /home/ql/桌面/blutter/blutter/src/DartField.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartClass.h:3,
                 from /home/ql/桌面/blutter/blutter/src/VarValue.h:2,
                 from /home/ql/桌面/blutter/blutter/src/il.h:3,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:3:
/home/ql/桌面/blutter/blutter/src/DartTypes.h:218:37: error: ‘dart::FunctionTypePtr’ has not been declared
  218 |         DartFunctionType* FindOrAdd(dart::FunctionTypePtr fnTypePtr);
      |                                     ^~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:164:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  164 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarGrowableArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:186:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  186 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarFunctionType::VarFunctionType(const DartFunctionType&)’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:246:83: error: ‘kFunctionTypeCid’ is not a member of ‘dart’; did you mean ‘kFunctionCid’?
  246 |         explicit VarFunctionType(const DartFunctionType& fnType) : VarValue(dart::kFunctionTypeCid, true), fnType(fnType) {}
      |                                                                                   ^~~~~~~~~~~~~~~~
      |                                                                                   kFunctionCid
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarSentinel::VarSentinel()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:261:49: error: ‘kSentinelCid’ is not a member of ‘dart’
  261 |         explicit VarSentinel() : VarValue(dart::kSentinelCid, false) {}
      |                                                 ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp: In constructor ‘DartFunction::DartFunction(DartClass&, dart::FunctionPtr)’:
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:38:28: error: ‘dart::UntaggedFunction’ has not been declared
   38 |                 case dart::UntaggedFunction::kConstructor:
      |                            ^~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:41:28: error: ‘dart::UntaggedFunction’ has not been declared
   41 |                 case dart::UntaggedFunction::kSetterFunction:
      |                            ^~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:42:28: error: ‘dart::UntaggedFunction’ has not been declared
   42 |                 case dart::UntaggedFunction::kImplicitSetter:
      |                            ^~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:45:28: error: ‘dart::UntaggedFunction’ has not been declared
   45 |                 case dart::UntaggedFunction::kGetterFunction:
      |                            ^~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:46:28: error: ‘dart::UntaggedFunction’ has not been declared
   46 |                 case dart::UntaggedFunction::kImplicitGetter:
      |                            ^~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:47:28: error: ‘dart::UntaggedFunction’ has not been declared
   47 |                 case dart::UntaggedFunction::kImplicitStaticGetter:
      |                            ^~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:69:30: error: ‘const class dart::Function’ has no member named ‘entry_point’
   69 |         const auto ep = func.entry_point() - lib_base;
      |                              ^~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp: In member function ‘void DartFunction::PrintHead(std::ostream&) const’:
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:207:33: error: ‘dart::FunctionType’ has not been declared
  207 |         const auto& sig = dart::FunctionType::Handle(zone, func.signature());
      |                                 ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:207:65: error: ‘class dart::Function’ has no member named ‘signature’; did you mean ‘Signature’?
  207 |         const auto& sig = dart::FunctionType::Handle(zone, func.signature());
      |                                                                 ^~~~~~~~~
      |                                                                 Signature
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:250:49: error: ‘dart::TypeParameters’ has not been declared
  250 |                 const auto& type_params = dart::TypeParameters::Handle(zone, sig.type_parameters());
      |                                                 ^~~~~~~~~~~~~~
[8/22] Building CXX object CMakeFiles/..._android_arm64.dir/src/DartClass.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartClass.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartClass.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartClass.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartClass.cpp.o -c '/home/ql/桌面/blutter/blutter/src/DartClass.cpp'
In file included from /home/ql/桌面/blutter/blutter/src/DartField.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartClass.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartClass.cpp:2:
/home/ql/桌面/blutter/blutter/src/DartTypes.h:218:37: error: ‘dart::FunctionTypePtr’ has not been declared
  218 |         DartFunctionType* FindOrAdd(dart::FunctionTypePtr fnTypePtr);
      |                                     ^~~~
In file included from /home/ql/桌面/blutter/blutter/src/Disassembler.h:5,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:2,
                 from /home/ql/桌面/blutter/blutter/src/DartFunction.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartClass.cpp:4:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:84:59: error: ‘HEAP_BITS’ is not a member of ‘dart’
   84 | constexpr arm64_reg CSREG_DART_HEAP = ToCapstoneReg(dart::HEAP_BITS);
      |                                                           ^~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:88:71: error: ‘dart::AllocateObjectABI’ has not been declared
   88 | constexpr arm64_reg CSREG_ALLOCATE_OBJ_TYPEARGS = ToCapstoneReg(dart::AllocateObjectABI::kTypeArgumentsReg);
      |                                                                       ^~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:89:75: error: ‘dart::AllocateClosureABI’ has not been declared
   89 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_FUNCTION = ToCapstoneReg(dart::AllocateClosureABI::kFunctionReg);
      |                                                                           ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:90:74: error: ‘dart::AllocateClosureABI’ has not been declared
   90 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_CONTEXT = ToCapstoneReg(dart::AllocateClosureABI::kContextReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:91:74: error: ‘dart::AllocateClosureABI’ has not been declared
   91 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_SCRATCH = ToCapstoneReg(dart::AllocateClosureABI::kScratchReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
In file included from /home/ql/桌面/blutter/blutter/src/il.h:3,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:3:
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:164:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  164 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarGrowableArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:186:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  186 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarFunctionType::VarFunctionType(const DartFunctionType&)’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:246:83: error: ‘kFunctionTypeCid’ is not a member of ‘dart’; did you mean ‘kFunctionCid’?
  246 |         explicit VarFunctionType(const DartFunctionType& fnType) : VarValue(dart::kFunctionTypeCid, true), fnType(fnType) {}
      |                                                                                   ^~~~~~~~~~~~~~~~
      |                                                                                   kFunctionCid
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarSentinel::VarSentinel()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:261:49: error: ‘kSentinelCid’ is not a member of ‘dart’
  261 |         explicit VarSentinel() : VarValue(dart::kSentinelCid, false) {}
      |                                                 ^~~~~~~~~~~~
In file included from /home/ql/桌面/blutter/blutter/src/DartClass.cpp:5:
/home/ql/桌面/blutter/blutter/src/HtArrayIterator.h: In member function ‘bool HtArrayIterator::MoveNext()’:
/home/ql/桌面/blutter/blutter/src/HtArrayIterator.h:17:58: error: ‘kSentinelCid’ is not a member of ‘dart’
   17 |                         if (objPtr.GetClassId() != dart::kSentinelCid)
      |                                                          ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartClass.cpp: In constructor ‘DartClass::DartClass(const DartLibrary&, const dart::Class&)’:
/home/ql/桌面/blutter/blutter/src/DartClass.cpp:9:73: error: ‘const class dart::Class’ has no member named ‘ptr’
    9 |         lib(lib_), unboxed_fields_bitmap(0), superCls(nullptr), ptr(cls.ptr()), declarationType(nullptr), type(CLASS),
      |                                                                         ^~~
/home/ql/桌面/blutter/blutter/src/DartClass.cpp:37:45: error: ‘kLastInternalOnlyCid’ is not a member of ‘dart’
   37 |         if (!cls.is_loaded() || id <= dart::kLastInternalOnlyCid) {
      |                                             ^~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartClass.cpp:47:43: error: ‘class dart::ClassPtr’ has no member named ‘untag’
   47 |                 auto superCid = supClsPtr.untag()->id();
      |                                           ^~~~~
[9/22] Building CXX object CMakeFiles/....5_android_arm64.dir/src/DartApp.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartApp.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartApp.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartApp.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartApp.cpp.o -c '/home/ql/桌面/blutter/blutter/src/DartApp.cpp'
In file included from /home/ql/桌面/blutter/blutter/src/DartField.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartClass.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartApp.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartApp.cpp:2:
/home/ql/桌面/blutter/blutter/src/DartTypes.h:218:37: error: ‘dart::FunctionTypePtr’ has not been declared
  218 |         DartFunctionType* FindOrAdd(dart::FunctionTypePtr fnTypePtr);
      |                                     ^~~~
In file included from /home/ql/桌面/blutter/blutter/src/Disassembler.h:5,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:2,
                 from /home/ql/桌面/blutter/blutter/src/DartFunction.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartApp.h:4:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:84:59: error: ‘HEAP_BITS’ is not a member of ‘dart’
   84 | constexpr arm64_reg CSREG_DART_HEAP = ToCapstoneReg(dart::HEAP_BITS);
      |                                                           ^~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:88:71: error: ‘dart::AllocateObjectABI’ has not been declared
   88 | constexpr arm64_reg CSREG_ALLOCATE_OBJ_TYPEARGS = ToCapstoneReg(dart::AllocateObjectABI::kTypeArgumentsReg);
      |                                                                       ^~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:89:75: error: ‘dart::AllocateClosureABI’ has not been declared
   89 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_FUNCTION = ToCapstoneReg(dart::AllocateClosureABI::kFunctionReg);
      |                                                                           ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:90:74: error: ‘dart::AllocateClosureABI’ has not been declared
   90 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_CONTEXT = ToCapstoneReg(dart::AllocateClosureABI::kContextReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:91:74: error: ‘dart::AllocateClosureABI’ has not been declared
   91 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_SCRATCH = ToCapstoneReg(dart::AllocateClosureABI::kScratchReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
In file included from /home/ql/桌面/blutter/blutter/src/il.h:3,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:3:
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:164:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  164 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarGrowableArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:186:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  186 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarFunctionType::VarFunctionType(const DartFunctionType&)’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:246:83: error: ‘kFunctionTypeCid’ is not a member of ‘dart’; did you mean ‘kFunctionCid’?
  246 |         explicit VarFunctionType(const DartFunctionType& fnType) : VarValue(dart::kFunctionTypeCid, true), fnType(fnType) {}
      |                                                                                   ^~~~~~~~~~~~~~~~
      |                                                                                   kFunctionCid
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarSentinel::VarSentinel()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:261:49: error: ‘kSentinelCid’ is not a member of ‘dart’
  261 |         explicit VarSentinel() : VarValue(dart::kSentinelCid, false) {}
      |                                                 ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp: In constructor ‘DartApp::DartApp(const char*)’:
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:23:47: error: ‘class dart::Thread’ has no member named ‘heap_base’; did you mean ‘heap_offset’?
   23 |         heap_base_ = dart::Thread::Current()->heap_base();
      |                                               ^~~~~~~~~
      |                                               heap_offset
/home/ql/桌面/blutter/blutter/src/DartApp.cpp: In member function ‘DartLibrary* DartApp::addLibraryClass(const dart::Library&, const dart::Class&)’:
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:110:54: error: ‘class dart::ClassPtr’ has no member named ‘untag’
  110 |         const auto topCid = library.toplevel_class().untag()->id();
      |                                                      ^~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp: In member function ‘void DartApp::loadStubs(dart::ObjectStore*)’:
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:310:12: error: ‘class dart::ObjectStore’ has no member named ‘build_nongeneric_method_extractor_code’; did you mean ‘build_method_extractor_code’?
  310 |         DO(build_nongeneric_method_extractor_code, BuildNonGenericMethodExtractor);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:303:22: note: in definition of macro ‘DO’
  303 |         ptr = store->member(); \
      |                      ^~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:311:12: error: ‘class dart::ObjectStore’ has no member named ‘build_generic_method_extractor_code’; did you mean ‘build_method_extractor_code’?
  311 |         DO(build_generic_method_extractor_code, BuildGenericMethodExtractor);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:303:22: note: in definition of macro ‘DO’
  303 |         ptr = store->member(); \
      |                      ^~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:13:3: note: in expansion of macro ‘DO’
   13 |   V(GetCStackPointer)                                                          \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:14:3: note: in expansion of macro ‘DO’
   14 |   V(JumpToFrame)                                                               \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:15:3: note: in expansion of macro ‘DO’
   15 |   V(RunExceptionHandler)                                                       \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:16:3: note: in expansion of macro ‘DO’
   16 |   V(DeoptForRewind)                                                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:17:3: note: in expansion of macro ‘DO’
   17 |   V(WriteBarrier)                                                              \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:18:3: note: in expansion of macro ‘DO’
   18 |   V(WriteBarrierWrappers)                                                      \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:19:3: note: in expansion of macro ‘DO’
   19 |   V(ArrayWriteBarrier)                                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:20:3: note: in expansion of macro ‘DO’
   20 |   V(AllocateArray)                                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:21:3: note: in expansion of macro ‘DO’
   21 |   V(AllocateMintSharedWithFPURegs)                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:22:3: note: in expansion of macro ‘DO’
   22 |   V(AllocateMintSharedWithoutFPURegs)                                          \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:23:3: note: in expansion of macro ‘DO’
   23 |   V(AllocateContext)                                                           \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:24:3: note: in expansion of macro ‘DO’
   24 |   V(AllocateObject)                                                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:25:3: note: in expansion of macro ‘DO’
   25 |   V(AllocateObjectParameterized)                                               \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:26:3: note: in expansion of macro ‘DO’
   26 |   V(AllocateObjectSlow)                                                        \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:27:3: note: in expansion of macro ‘DO’
   27 |   V(AllocateUnhandledException)                                                \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:28:3: note: in expansion of macro ‘DO’
   28 |   V(CloneContext)                                                              \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:29:3: note: in expansion of macro ‘DO’
   29 |   V(CallToRuntime)                                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:30:3: note: in expansion of macro ‘DO’
   30 |   V(LazyCompile)                                                               \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:31:3: note: in expansion of macro ‘DO’
   31 |   V(InterpretCall)                                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:32:3: note: in expansion of macro ‘DO’
   32 |   V(CallBootstrapNative)                                                       \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:33:3: note: in expansion of macro ‘DO’
   33 |   V(CallNoScopeNative)                                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:34:3: note: in expansion of macro ‘DO’
   34 |   V(CallAutoScopeNative)                                                       \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:35:3: note: in expansion of macro ‘DO’
   35 |   V(FixCallersTarget)                                                          \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:36:3: note: in expansion of macro ‘DO’
   36 |   V(CallStaticFunction)                                                        \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:37:3: note: in expansion of macro ‘DO’
   37 |   V(OptimizeFunction)                                                          \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:38:3: note: in expansion of macro ‘DO’
   38 |   V(InvokeDartCode)                                                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:39:3: note: in expansion of macro ‘DO’
   39 |   V(InvokeDartCodeFromBytecode)                                                \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:40:3: note: in expansion of macro ‘DO’
   40 |   V(DebugStepCheck)                                                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:41:3: note: in expansion of macro ‘DO’
   41 |   V(SwitchableCallMiss)                                                        \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:42:3: note: in expansion of macro ‘DO’
   42 |   V(MonomorphicSmiableCheck)                                                   \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:43:3: note: in expansion of macro ‘DO’
   43 |   V(SingleTargetCall)                                                          \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:44:3: note: in expansion of macro ‘DO’
   44 |   V(ICCallThroughCode)                                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:45:3: note: in expansion of macro ‘DO’
   45 |   V(MegamorphicCall)                                                           \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:46:3: note: in expansion of macro ‘DO’
   46 |   V(FixAllocationStubTarget)                                                   \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:47:3: note: in expansion of macro ‘DO’
   47 |   V(Deoptimize)                                                                \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:48:3: note: in expansion of macro ‘DO’
   48 |   V(DeoptimizeLazyFromReturn)                                                  \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:49:3: note: in expansion of macro ‘DO’
   49 |   V(DeoptimizeLazyFromThrow)                                                   \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:50:3: note: in expansion of macro ‘DO’
   50 |   V(UnoptimizedIdenticalWithNumberCheck)                                       \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:51:3: note: in expansion of macro ‘DO’
   51 |   V(OptimizedIdenticalWithNumberCheck)                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:52:3: note: in expansion of macro ‘DO’
   52 |   V(ICCallBreakpoint)                                                          \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:53:3: note: in expansion of macro ‘DO’
   53 |   V(UnoptStaticCallBreakpoint)                                                 \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:54:3: note: in expansion of macro ‘DO’
   54 |   V(RuntimeCallBreakpoint)                                                     \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:55:3: note: in expansion of macro ‘DO’
   55 |   V(OneArgCheckInlineCache)                                                    \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:56:3: note: in expansion of macro ‘DO’
   56 |   V(TwoArgsCheckInlineCache)                                                   \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:57:3: note: in expansion of macro ‘DO’
   57 |   V(SmiAddInlineCache)                                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:58:3: note: in expansion of macro ‘DO’
   58 |   V(SmiLessInlineCache)                                                        \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:59:3: note: in expansion of macro ‘DO’
   59 |   V(SmiEqualInlineCache)                                                       \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:60:3: note: in expansion of macro ‘DO’
   60 |   V(OneArgOptimizedCheckInlineCache)                                           \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:61:3: note: in expansion of macro ‘DO’
   61 |   V(TwoArgsOptimizedCheckInlineCache)                                          \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:62:3: note: in expansion of macro ‘DO’
   62 |   V(ZeroArgsUnoptimizedStaticCall)                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:63:3: note: in expansion of macro ‘DO’
   63 |   V(OneArgUnoptimizedStaticCall)                                               \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:64:3: note: in expansion of macro ‘DO’
   64 |   V(TwoArgsUnoptimizedStaticCall)                                              \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:65:3: note: in expansion of macro ‘DO’
   65 |   V(Subtype1TestCache)                                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:66:3: note: in expansion of macro ‘DO’
   66 |   V(Subtype2TestCache)                                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:67:3: note: in expansion of macro ‘DO’
   67 |   V(Subtype4TestCache)                                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:68:3: note: in expansion of macro ‘DO’
   68 |   V(Subtype6TestCache)                                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:69:3: note: in expansion of macro ‘DO’
   69 |   V(DefaultTypeTest)                                                           \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:70:3: note: in expansion of macro ‘DO’
   70 |   V(DefaultNullableTypeTest)                                                   \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:71:3: note: in expansion of macro ‘DO’
   71 |   V(TopTypeTypeTest)                                                           \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:72:3: note: in expansion of macro ‘DO’
   72 |   V(UnreachableTypeTest)                                                       \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:73:3: note: in expansion of macro ‘DO’
   73 |   V(TypeParameterTypeTest)                                                     \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:74:3: note: in expansion of macro ‘DO’
   74 |   V(NullableTypeParameterTypeTest)                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:75:3: note: in expansion of macro ‘DO’
   75 |   V(SlowTypeTest)                                                              \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:76:3: note: in expansion of macro ‘DO’
   76 |   V(LazySpecializeTypeTest)                                                    \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:77:3: note: in expansion of macro ‘DO’
   77 |   V(LazySpecializeNullableTypeTest)                                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:78:3: note: in expansion of macro ‘DO’
   78 |   V(CallClosureNoSuchMethod)                                                   \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:79:3: note: in expansion of macro ‘DO’
   79 |   V(FrameAwaitingMaterialization)                                              \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:80:3: note: in expansion of macro ‘DO’
   80 |   V(AsynchronousGapMarker)                                                     \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:81:3: note: in expansion of macro ‘DO’
   81 |   V(NotLoaded)                                                                 \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:82:3: note: in expansion of macro ‘DO’
   82 |   V(DispatchTableNullError)                                                    \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:83:3: note: in expansion of macro ‘DO’
   83 |   V(NullErrorSharedWithFPURegs)                                                \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:84:3: note: in expansion of macro ‘DO’
   84 |   V(NullErrorSharedWithoutFPURegs)                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:85:3: note: in expansion of macro ‘DO’
   85 |   V(NullArgErrorSharedWithFPURegs)                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:86:3: note: in expansion of macro ‘DO’
   86 |   V(NullArgErrorSharedWithoutFPURegs)                                          \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:87:3: note: in expansion of macro ‘DO’
   87 |   V(NullCastErrorSharedWithFPURegs)                                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:88:3: note: in expansion of macro ‘DO’
   88 |   V(NullCastErrorSharedWithoutFPURegs)                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:89:3: note: in expansion of macro ‘DO’
   89 |   V(RangeErrorSharedWithFPURegs)                                               \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:90:3: note: in expansion of macro ‘DO’
   90 |   V(RangeErrorSharedWithoutFPURegs)                                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:91:3: note: in expansion of macro ‘DO’
   91 |   V(StackOverflowSharedWithFPURegs)                                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:92:3: note: in expansion of macro ‘DO’
   92 |   V(StackOverflowSharedWithoutFPURegs)                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:93:3: note: in expansion of macro ‘DO’
   93 |   V(OneArgCheckInlineCacheWithExactnessCheck)                                  \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:94:3: note: in expansion of macro ‘DO’
   94 |   V(OneArgOptimizedCheckInlineCacheWithExactnessCheck)                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:95:3: note: in expansion of macro ‘DO’
   95 |   V(EnterSafepoint)                                                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:96:3: note: in expansion of macro ‘DO’
   96 |   V(ExitSafepoint)                                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:97:3: note: in expansion of macro ‘DO’
   97 |   V(CallNativeThroughSafepoint)                                                \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:98:3: note: in expansion of macro ‘DO’
   98 |   V(InitStaticField)                                                           \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:99:3: note: in expansion of macro ‘DO’
   99 |   V(InitInstanceField)                                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:100:3: note: in expansion of macro ‘DO’
  100 |   V(InitLateInstanceField)                                                     \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:101:3: note: in expansion of macro ‘DO’
  101 |   V(InitLateFinalInstanceField)                                                \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:102:3: note: in expansion of macro ‘DO’
  102 |   V(Throw)                                                                     \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:103:3: note: in expansion of macro ‘DO’
  103 |   V(ReThrow)                                                                   \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:104:3: note: in expansion of macro ‘DO’
  104 |   V(AssertBoolean)                                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:105:3: note: in expansion of macro ‘DO’
  105 |   V(InstanceOf)                                                                \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:106:3: note: in expansion of macro ‘DO’
  106 |   V(InstantiateTypeArguments)                                                  \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:107:3: note: in expansion of macro ‘DO’
  107 |   V(InstantiateTypeArgumentsMayShareInstantiatorTA)                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:108:3: note: in expansion of macro ‘DO’
  108 |   V(InstantiateTypeArgumentsMayShareFunctionTA)                                \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:109:3: note: in expansion of macro ‘DO’
  109 |   V(NoSuchMethodDispatcher)
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp: In member function ‘DartFunction* DartApp::addFunctionNoCheck(const dart::Function&)’:
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:345:34: error: ‘const class dart::ClassPtr’ has no member named ‘untag’
  345 |         const auto cid = cls_ptr.untag()->id();
      |                                  ^~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:364:38: error: ‘const class dart::Function’ has no member named ‘ptr’
  364 |         return cls->AddFunction(func.ptr());
      |                                      ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp: In member function ‘void DartApp::findFunctionInHeap()’:
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:476:89: error: ‘const class dart::AbstractType’ has no member named ‘ptr’
  476 |                         auto dartType = typeDb->FindOrAdd(dart::AbstractType::Cast(obj).ptr());
      |                                                                                         ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp: In member function ‘void DartApp::finalizeFunctionsInfo()’:
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:516:55: error: ‘class dart::Function’ has no member named ‘entry_point’
  516 |                         const auto ep_addr = parentFn.entry_point() - base();
      |                                                       ^~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:541:63: error: ‘class dart::Function’ has no member named ‘entry_point’
  541 |                                 const auto ep_addr = parentFn.entry_point() - base();
      |                                                               ^~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp: In member function ‘void DartApp::walkObject(dart::Object&)’:
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:586:71: error: ‘const class dart::Array’ has no member named ‘ptr’
  586 |                                 auto arrPtr = dart::Array::DataOf(arr.ptr());
      |                                                                       ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:596:39: error: ‘kConstMapCid’ is not a member of ‘dart’; did you mean ‘kContextCid’?
  596 |                 else if (cid == dart::kConstMapCid || cid == dart::kMapCid) {
      |                                       ^~~~~~~~~~~~
      |                                       kContextCid
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:596:68: error: ‘kMapCid’ is not a member of ‘dart’
  596 |                 else if (cid == dart::kConstMapCid || cid == dart::kMapCid) {
      |                                                                    ^~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:597:43: error: ‘dart::Map’ has not been declared
  597 |                         auto& map = dart::Map::Cast(obj);
      |                                           ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:598:31: error: ‘dart::Map’ has not been declared
  598 |                         dart::Map::Iterator iter(map);
      |                               ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:600:32: error: ‘iter’ was not declared in this scope
  600 |                         while (iter.MoveNext()) {
      |                                ^~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:607:39: error: ‘kConstSetCid’ is not a member of ‘dart’; did you mean ‘kContextCid’?
  607 |                 else if (cid == dart::kConstSetCid || cid == dart::kSetCid) {
      |                                       ^~~~~~~~~~~~
      |                                       kContextCid
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:607:68: error: ‘kSetCid’ is not a member of ‘dart’; did you mean ‘kSmiCid’?
  607 |                 else if (cid == dart::kConstSetCid || cid == dart::kSetCid) {
      |                                                                    ^~~~~~~
      |                                                                    kSmiCid
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:608:43: error: ‘dart::Set’ has not been declared
  608 |                         auto& set = dart::Set::Cast(obj);
      |                                           ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:609:31: error: ‘dart::Set’ has not been declared
  609 |                         dart::Set::Iterator iter(set);
      |                               ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:611:32: error: ‘iter’ was not declared in this scope
  611 |                         while (iter.MoveNext()) {
      |                                ^~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:617:76: error: ‘class dart::Object’ has no member named ‘ptr’
  617 |                         typeDb->FindOrAdd(dart::TypeArguments::RawCast(obj.ptr()));
      |                                                                            ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:620:67: error: ‘class dart::Object’ has no member named ‘ptr’
  620 |                         typeDb->FindOrAdd(dart::Type::RawCast(obj.ptr()));
      |                                                                   ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:623:76: error: ‘class dart::Object’ has no member named ‘ptr’
  623 |                         typeDb->FindOrAdd(dart::TypeParameter::RawCast(obj.ptr()));
      |                                                                            ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:625:30: error: ‘class dart::Object’ has no member named ‘IsFunctionType’; did you mean ‘IsFunction’?
  625 |                 else if (obj.IsFunctionType()) {
      |                              ^~~~~~~~~~~~~~
      |                              IsFunction
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:626:49: error: ‘dart::FunctionType’ has not been declared
  626 |                         typeDb->FindOrAdd(dart::FunctionType::RawCast(obj.ptr()));
      |                                                 ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:626:75: error: ‘class dart::Object’ has no member named ‘ptr’
  626 |                         typeDb->FindOrAdd(dart::FunctionType::RawCast(obj.ptr()));
      |                                                                           ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:630:51: error: ‘const class dart::Function’ has no member named ‘entry_point’
  630 |                         const auto ep_addr = func.entry_point() - base();
      |                                                   ^~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:635:54: error: ‘const class dart::Closure’ has no member named ‘entry_point’
  635 |                         const auto ep_addr = closure.entry_point() - base();
      |                                                      ^~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:650:32: error: ‘dart::UntaggedObject’ has not been declared
  650 |         const auto ptr = dart::UntaggedObject::ToAddr(obj.ptr());
      |                                ^~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:650:59: error: ‘class dart::Object’ has no member named ‘ptr’
  650 |         const auto ptr = dart::UntaggedObject::ToAddr(obj.ptr());
      |                                                           ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:653:47: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  653 |                 if (bitmap.Get(offset / dart::kCompressedWordSize)) {
      |                                               ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:656:35: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  656 |                         if (dart::kCompressedWordSize == 4) {
      |                                   ^~~~~~~~~~~~~~~~~~~
In file included from /home/ql/桌面/blutter/packages/include/dartvm2.10.5/platform/allocation.h:8,
                 from /home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/allocation.h:8,
                 from /home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/dart_entry.h:8,
                 from /home/ql/桌面/blutter/blutter/src/pch.h:26,
                 from /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx:5,
                 from <command-line>:
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:657:75: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  657 |                                 RELEASE_ASSERT(bitmap.Get((offset + dart::kCompressedWordSize) / dart::kCompressedWordSize));
      |                                                                           ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:657:104: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  657 |                                 RELEASE_ASSERT(bitmap.Get((offset + dart::kCompressedWordSize) / dart::kCompressedWordSize));
      |                                                                                                        ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:670:41: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  670 |                         offset += dart::kCompressedWordSize * 2;
      |                                         ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:673:57: error: ‘CompressedObjectPtr’ in namespace ‘dart’ does not name a type
  673 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                         ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:673:76: error: expected ‘>’ before ‘*’ token
  673 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                                            ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:673:76: error: expected ‘(’ before ‘*’ token
  673 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                                            ^
      |                                                                            (
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:673:77: error: expected primary-expression before ‘>’ token
  673 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                                             ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:673:92: error: expected ‘)’ before ‘;’ token
  673 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                                                            ^
      |                                                                                            )
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:701:41: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  701 |                         offset += dart::kCompressedWordSize;
      |                                         ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp: In member function ‘void DartApp::loadFromObjectPool()’:
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:720:71: error: ‘class dart::ClassPtr’ has no member named ‘untag’
  720 |                                 auto dartCls = GetClass(field.Owner().untag()->id());
      |                                                                       ^~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:721:74: error: ‘const class dart::Field’ has no member named ‘ptr’
  721 |                                 auto dartField = dartCls->AddField(field.ptr());
      |                                                                          ^~~
[10/22] Building CXX object CMakeFiles...android_arm64.dir/src/DartDumper.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartDumper.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartDumper.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartDumper.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartDumper.cpp.o -c '/home/ql/桌面/blutter/blutter/src/DartDumper.cpp'
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:631:97: error: macro "FATAL" passed 3 arguments, but takes just 1
  631 |                 FATAL("Unhandle internal class %s (%ld)", app.GetClass(cid)->Name().c_str(), cid);
      |                                                                                                 ^
In file included from /home/ql/桌面/blutter/packages/include/dartvm2.10.5/platform/allocation.h:8,
                 from /home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/allocation.h:8,
                 from /home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/dart_entry.h:8,
                 from /home/ql/桌面/blutter/blutter/src/pch.h:26,
                 from /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx:5,
                 from <command-line>:
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/platform/assert.h:211: note: macro "FATAL" defined here
  211 | #define FATAL(error) dart::Assert(__FILE__, __LINE__).Fail("%s", error)
      | 
In file included from /home/ql/桌面/blutter/blutter/src/DartField.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartClass.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartApp.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartDumper.h:2,
                 from /home/ql/桌面/blutter/blutter/src/DartDumper.cpp:2:
/home/ql/桌面/blutter/blutter/src/DartTypes.h:218:37: error: ‘dart::FunctionTypePtr’ has not been declared
  218 |         DartFunctionType* FindOrAdd(dart::FunctionTypePtr fnTypePtr);
      |                                     ^~~~
In file included from /home/ql/桌面/blutter/blutter/src/Disassembler.h:5,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:2,
                 from /home/ql/桌面/blutter/blutter/src/DartFunction.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartApp.h:4:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:84:59: error: ‘HEAP_BITS’ is not a member of ‘dart’
   84 | constexpr arm64_reg CSREG_DART_HEAP = ToCapstoneReg(dart::HEAP_BITS);
      |                                                           ^~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:88:71: error: ‘dart::AllocateObjectABI’ has not been declared
   88 | constexpr arm64_reg CSREG_ALLOCATE_OBJ_TYPEARGS = ToCapstoneReg(dart::AllocateObjectABI::kTypeArgumentsReg);
      |                                                                       ^~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:89:75: error: ‘dart::AllocateClosureABI’ has not been declared
   89 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_FUNCTION = ToCapstoneReg(dart::AllocateClosureABI::kFunctionReg);
      |                                                                           ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:90:74: error: ‘dart::AllocateClosureABI’ has not been declared
   90 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_CONTEXT = ToCapstoneReg(dart::AllocateClosureABI::kContextReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:91:74: error: ‘dart::AllocateClosureABI’ has not been declared
   91 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_SCRATCH = ToCapstoneReg(dart::AllocateClosureABI::kScratchReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
In file included from /home/ql/桌面/blutter/blutter/src/il.h:3,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:3:
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:164:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  164 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarGrowableArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:186:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  186 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarFunctionType::VarFunctionType(const DartFunctionType&)’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:246:83: error: ‘kFunctionTypeCid’ is not a member of ‘dart’; did you mean ‘kFunctionCid’?
  246 |         explicit VarFunctionType(const DartFunctionType& fnType) : VarValue(dart::kFunctionTypeCid, true), fnType(fnType) {}
      |                                                                                   ^~~~~~~~~~~~~~~~
      |                                                                                   kFunctionCid
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarSentinel::VarSentinel()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:261:49: error: ‘kSentinelCid’ is not a member of ‘dart’
  261 |         explicit VarSentinel() : VarValue(dart::kSentinelCid, false) {}
      |                                                 ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp: In member function ‘const std::string& DartDumper::getQuoteString(dart::Object&)’:
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:258:40: error: ‘class dart::Object’ has no member named ‘ptr’
  258 |         const auto ptr = (intptr_t)obj.ptr();
      |                                        ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp: In member function ‘std::string DartDumper::ObjectToString(dart::Object&, bool, bool, int)’:
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:453:20: error: ‘kSentinelCid’ is not a member of ‘dart’
  453 |         case dart::kSentinelCid:
      |                    ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:459:73: error: ‘const class dart::Function’ has no member named ‘entry_point’
  459 |                 auto dartFn = app.GetFunction(dart::Function::Cast(obj).entry_point() - app.base())->AsFunction();
      |                                                                         ^~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:479:53: error: ‘const class dart::Closure’ has no member named ‘entry_point’
  479 |                 if (!app.functions.contains(closure.entry_point() - app.base())) {
      |                                                     ^~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:480:92: error: ‘const class dart::Closure’ has no member named ‘entry_point’
  480 |                         std::cout << std::format("[!] missing closure at {:#x}\n", closure.entry_point() - app.base());
      |                                                                                            ^~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:483:79: error: ‘const class dart::Closure’ has no member named ‘entry_point’
  483 |                 return std::format("{} ({:#x})", closure.ToCString(), closure.entry_point());
      |                                                                               ^~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:507:63: error: ‘const class dart::Array’ has no member named ‘ptr’
  507 |                         auto arrPtr = dart::Array::DataOf(arr.ptr());
      |                                                               ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:543:99: error: ‘class dart::Object’ has no member named ‘ptr’
  543 |                 return "TypeArguments: " + app.typeDb->FindOrAdd(dart::TypeArguments::RawCast(obj.ptr()))->ToString();
      |                                                                                                   ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:545:81: error: ‘class dart::Object’ has no member named ‘ptr’
  545 |                 return "Type: " + app.typeDb->FindOrAdd(dart::Type::RawCast(obj.ptr()))->ToString();
      |                                                                                 ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:551:99: error: ‘class dart::Object’ has no member named ‘ptr’
  551 |                 return "TypeParameter: " + app.typeDb->FindOrAdd(dart::TypeParameter::RawCast(obj.ptr()))->ToString();
      |                                                                                                   ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:552:20: error: ‘kFunctionTypeCid’ is not a member of ‘dart’; did you mean ‘kFunctionCid’?
  552 |         case dart::kFunctionTypeCid:
      |                    ^~~~~~~~~~~~~~~~
      |                    kFunctionCid
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:553:71: error: ‘dart::FunctionType’ has not been declared
  553 |                 return "FunctionType: " + app.typeDb->FindOrAdd(dart::FunctionType::RawCast(obj.ptr()))->ToString();
      |                                                                       ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:553:97: error: ‘class dart::Object’ has no member named ‘ptr’
  553 |                 return "FunctionType: " + app.typeDb->FindOrAdd(dart::FunctionType::RawCast(obj.ptr()))->ToString();
      |                                                                                                 ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:557:20: error: ‘kTypeParametersCid’ is not a member of ‘dart’; did you mean ‘kTypeParameterCid’?
  557 |         case dart::kTypeParametersCid:
      |                    ^~~~~~~~~~~~~~~~~~
      |                    kTypeParameterCid
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:559:86: error: ‘class dart::Object’ has no member named ‘ptr’
  559 |                 return std::format("{} (ptr: {:#x})", obj.ToCString(), (uint64_t)obj.ptr());
      |                                                                                      ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:564:20: error: ‘kConstMapCid’ is not a member of ‘dart’; did you mean ‘kContextCid’?
  564 |         case dart::kConstMapCid: {
      |                    ^~~~~~~~~~~~
      |                    kContextCid
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:565:35: error: ‘dart::Map’ has not been declared
  565 |                 auto& map = dart::Map::Cast(obj);
      |                                   ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:573:23: error: ‘dart::Map’ has not been declared
  573 |                 dart::Map::Iterator iter(map);
      |                       ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:577:24: error: ‘iter’ was not declared in this scope
  577 |                 while (iter.MoveNext()) {
      |                        ^~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:588:20: error: ‘kConstSetCid’ is not a member of ‘dart’; did you mean ‘kContextCid’?
  588 |         case dart::kConstSetCid: {
      |                    ^~~~~~~~~~~~
      |                    kContextCid
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:589:35: error: ‘dart::Set’ has not been declared
  589 |                 auto& set = dart::Set::Cast(obj);
      |                                   ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:596:23: error: ‘dart::Set’ has not been declared
  596 |                 dart::Set::Iterator iter(set);
      |                       ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:599:24: error: ‘iter’ was not declared in this scope
  599 |                 while (iter.MoveNext()) {
      |                        ^~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:618:60: error: ‘const class dart::Namespace’ has no member named ‘target’
  618 |                 const auto& lib = dart::Library::Handle(ns.target());
      |                                                            ^~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:623:79: error: ‘class dart::Object’ has no member named ‘ptr’
  623 |                 return std::format("Obj!Object@{:x}", (uint32_t)(intptr_t)obj.ptr());
      |                                                                               ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:631:17: error: ‘FATAL’ was not declared in this scope
  631 |                 FATAL("Unhandle internal class %s (%ld)", app.GetClass(cid)->Name().c_str(), cid);
      |                 ^~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:635:46: error: ‘class dart::Object’ has no member named ‘ptr’
  635 |         knownObjectPtrs.insert((intptr_t)obj.ptr());
      |                                              ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp: In member function ‘std::string DartDumper::dumpInstance(dart::Object&, bool, bool, int)’:
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:647:32: error: ‘dart::UntaggedObject’ has not been declared
  647 |         const auto ptr = dart::UntaggedObject::ToAddr(obj.ptr());
      |                                ^~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:647:59: error: ‘class dart::Object’ has no member named ‘ptr’
  647 |         const auto ptr = dart::UntaggedObject::ToAddr(obj.ptr());
      |                                                           ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:650:94: error: ‘class dart::Object’ has no member named ‘ptr’
  650 |                 return std::format("Obj!{}@{:x}", dtype->ToString(), (uint32_t)(intptr_t)obj.ptr());
      |                                                                                              ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:662:92: error: ‘class dart::Object’ has no member named ‘ptr’
  662 |         ss << std::format("Obj!{}@{:x} : {{\n", dtype->ToString(), (uint32_t)(intptr_t)obj.ptr());
      |                                                                                            ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp: In member function ‘std::string DartDumper::dumpInstanceFields(dart::Object&, DartClass&, intptr_t, intptr_t, bool, bool, int)’:
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:701:47: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  701 |                 if (bitmap.Get(offset / dart::kCompressedWordSize)) {
      |                                               ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:704:35: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  704 |                         if (dart::kCompressedWordSize == 4)
      |                                   ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:705:75: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  705 |                                 RELEASE_ASSERT(bitmap.Get((offset + dart::kCompressedWordSize) / dart::kCompressedWordSize));
      |                                                                           ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:705:104: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  705 |                                 RELEASE_ASSERT(bitmap.Get((offset + dart::kCompressedWordSize) / dart::kCompressedWordSize));
      |                                                                                                        ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:714:41: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  714 |                         offset += dart::kCompressedWordSize;
      |                                         ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:718:57: error: ‘CompressedObjectPtr’ in namespace ‘dart’ does not name a type
  718 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                         ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:718:76: error: expected ‘>’ before ‘*’ token
  718 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                                            ^
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:718:76: error: expected ‘(’ before ‘*’ token
  718 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                                            ^
      |                                                                            (
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:718:77: error: expected primary-expression before ‘>’ token
  718 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                                             ^
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:718:92: error: expected ‘)’ before ‘;’ token
  718 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                                                            ^
      |                                                                                            )
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:719:41: error: ‘CompressedObjectPtr’ is not a member of ‘dart’
  719 |                         if (*p != dart::CompressedObjectPtr(0)) {
      |                                         ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:736:33: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  736 |                 offset += dart::kCompressedWordSize;
      |                                 ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp: In member function ‘void DartDumper::DumpObjectPool(const char*)’:
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:797:35: error: ‘const class dart::ObjectPool’ has no member named ‘ptr’
  797 |         const auto& rawObj = pool.ptr()->untag();
      |                                   ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:798:37: error: ‘dart::UntaggedObject’ has not been declared
  798 |         const auto raw_addr = dart::UntaggedObject::ToAddr(rawObj);
      |                                     ^~~~~~~~~~~~~~
[11/22] Building CXX object CMakeFiles...arm64.dir/src/CodeAnalyzer_arm64.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer_arm64.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer_arm64.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer_arm64.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer_arm64.cpp.o -c '/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp'
In file included from /home/ql/桌面/blutter/blutter/src/Disassembler.h:5,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:2,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:2:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:84:59: error: ‘HEAP_BITS’ is not a member of ‘dart’
   84 | constexpr arm64_reg CSREG_DART_HEAP = ToCapstoneReg(dart::HEAP_BITS);
      |                                                           ^~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:88:71: error: ‘dart::AllocateObjectABI’ has not been declared
   88 | constexpr arm64_reg CSREG_ALLOCATE_OBJ_TYPEARGS = ToCapstoneReg(dart::AllocateObjectABI::kTypeArgumentsReg);
      |                                                                       ^~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:89:75: error: ‘dart::AllocateClosureABI’ has not been declared
   89 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_FUNCTION = ToCapstoneReg(dart::AllocateClosureABI::kFunctionReg);
      |                                                                           ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:90:74: error: ‘dart::AllocateClosureABI’ has not been declared
   90 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_CONTEXT = ToCapstoneReg(dart::AllocateClosureABI::kContextReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:91:74: error: ‘dart::AllocateClosureABI’ has not been declared
   91 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_SCRATCH = ToCapstoneReg(dart::AllocateClosureABI::kScratchReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
In file included from /home/ql/桌面/blutter/blutter/src/DartField.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartClass.h:3,
                 from /home/ql/桌面/blutter/blutter/src/VarValue.h:2,
                 from /home/ql/桌面/blutter/blutter/src/il.h:3,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:3:
/home/ql/桌面/blutter/blutter/src/DartTypes.h:218:37: error: ‘dart::FunctionTypePtr’ has not been declared
  218 |         DartFunctionType* FindOrAdd(dart::FunctionTypePtr fnTypePtr);
      |                                     ^~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:164:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  164 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarGrowableArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:186:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  186 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarFunctionType::VarFunctionType(const DartFunctionType&)’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:246:83: error: ‘kFunctionTypeCid’ is not a member of ‘dart’; did you mean ‘kFunctionCid’?
  246 |         explicit VarFunctionType(const DartFunctionType& fnType) : VarValue(dart::kFunctionTypeCid, true), fnType(fnType) {}
      |                                                                                   ^~~~~~~~~~~~~~~~
      |                                                                                   kFunctionCid
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarSentinel::VarSentinel()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:261:49: error: ‘kSentinelCid’ is not a member of ‘dart’
  261 |         explicit VarSentinel() : VarValue(dart::kSentinelCid, false) {}
      |                                                 ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp: In function ‘VarValue* getPoolObject(DartApp&, intptr_t, A64::Register)’:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:69:67: error: ‘class dart::ClassPtr’ has no member named ‘untag’
   69 |                         auto dartCls = app.GetClass(field.Owner().untag()->id());
      |                                                                   ^~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:76:68: error: ‘const class dart::Array’ has no member named ‘ptr’
   76 |                         return new VarArray(dart::Array::Cast(obj).ptr());
      |                                                                    ^~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:80:28: error: ‘kConstMapCid’ is not a member of ‘dart’; did you mean ‘kContextCid’?
   80 |                 case dart::kConstMapCid:
      |                            ^~~~~~~~~~~~
      |                            kContextCid
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:82:28: error: ‘kConstSetCid’ is not a member of ‘dart’; did you mean ‘kContextCid’?
   82 |                 case dart::kConstSetCid:
      |                            ^~~~~~~~~~~~
      |                            kContextCid
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:92:28: error: ‘kTypeParametersCid’ is not a member of ‘dart’; did you mean ‘kTypeParameterCid’?
   92 |                 case dart::kTypeParametersCid:
      |                            ^~~~~~~~~~~~~~~~~~
      |                            kTypeParameterCid
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:95:91: error: ‘const class dart::Type’ has no member named ‘ptr’
   95 |                         return new VarType(*app.TypeDb()->FindOrAdd(dart::Type::Cast(obj).ptr()));
      |                                                                                           ^~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:101:109: error: ‘const class dart::TypeParameter’ has no member named ‘ptr’
  101 |                         return new VarTypeParameter(*app.TypeDb()->FindOrAdd(dart::TypeParameter::Cast(obj).ptr()));
      |                                                                                                             ^~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:102:28: error: ‘kFunctionTypeCid’ is not a member of ‘dart’; did you mean ‘kFunctionCid’?
  102 |                 case dart::kFunctionTypeCid:
      |                            ^~~~~~~~~~~~~~~~
      |                            kFunctionCid
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:103:83: error: ‘dart::FunctionType’ has not been declared
  103 |                         return new VarFunctionType(*app.TypeDb()->FindOrAdd(dart::FunctionType::Cast(obj).ptr()));
      |                                                                                   ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:105:108: error: ‘const class dart::TypeArguments’ has no member named ‘ptr’
  105 |                         return new VarTypeArgument(*app.TypeDb()->FindOrAdd(dart::TypeArguments::Cast(obj).ptr()));
      |                                                                                                            ^~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:107:28: error: ‘kSentinelCid’ is not a member of ‘dart’
  107 |                 case dart::kSentinelCid:
      |                            ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp: In member function ‘ILResult FunctionAnalyzer::processLoadFieldTableInstr(AsmInstruction)’:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1186:137: error: ‘kSentinelCid’ is not a member of ‘dart’
 1186 |                         if (objPoolInstr.insCnt == 0 || objPoolInstr.dstReg != A64::TMP_REG || objPoolInstr.item.ValueTypeId() != dart::kSentinelCid) {
      |                                                                                                                                         ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1218:83: error: ‘InitLateStaticFieldStub’ is not a member of ‘DartStub’
 1218 |                                                 INSN_ASSERT(stubKind == DartStub::InitLateStaticFieldStub || stubKind == DartStub::InitLateFinalStaticFieldStub);
      |                                                                                   ^~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1218:132: error: ‘InitLateFinalStaticFieldStub’ is not a member of ‘DartStub’
 1218 |                                                 INSN_ASSERT(stubKind == DartStub::InitLateStaticFieldStub || stubKind == DartStub::InitLateFinalStaticFieldStub);
      |                                                                                                                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1251:108: error: ‘LateInitializationErrorABI’ is not a member of ‘dart’
 1251 |                                 if (objPoolInstr.insCnt > 0 && objPoolInstr.dstReg == A64::Register{ dart::LateInitializationErrorABI::kFieldReg } && objPoolInstr.item.ValueTypeId() == dart::kFieldCid) {
      |                                                                                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1251:108: error: no matching function for call to ‘A64::Register::Register(<brace-enclosed initializer list>)’
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:230:19: note: candidate: ‘constexpr A64::Register::Register(arm64_reg)’
  230 |         constexpr Register(arm64_reg r) {
      |                   ^~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:230:19: note:   conversion of argument 1 would be ill-formed:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:206:19: note: candidate: ‘constexpr A64::Register::Register(dart::Register)’
  206 |         constexpr Register(dart::Register r) {
      |                   ^~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:206:19: note:   conversion of argument 1 would be ill-formed:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:204:19: note: candidate: ‘constexpr A64::Register::Register(Value)’
  204 |         constexpr Register(Value reg) : reg(reg) {}
      |                   ^~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:204:19: note:   conversion of argument 1 would be ill-formed:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:203:19: note: candidate: ‘constexpr A64::Register::Register()’
  203 |         constexpr Register() : reg(kNoRegister) {}
      |                   ^~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:203:19: note:   candidate expects 0 arguments, 1 provided
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:106:24: note: candidate: ‘constexpr A64::Register::Register(const A64::Register&)’
  106 | class alignas(int32_t) Register {
      |                        ^~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:106:24: note:   conversion of argument 1 would be ill-formed:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:106:24: note: candidate: ‘constexpr A64::Register::Register(A64::Register&&)’
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:106:24: note:   conversion of argument 1 would be ill-formed:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1251:100: error: expected primary-expression before ‘{’ token
 1251 |                                 if (objPoolInstr.insCnt > 0 && objPoolInstr.dstReg == A64::Register{ dart::LateInitializationErrorABI::kFieldReg } && objPoolInstr.item.ValueTypeId() == dart::kFieldCid) {
      |                                                                                                    ^
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1251:100: error: expected ‘)’ before ‘{’ token
 1251 |                                 if (objPoolInstr.insCnt > 0 && objPoolInstr.dstReg == A64::Register{ dart::LateInitializationErrorABI::kFieldReg } && objPoolInstr.item.ValueTypeId() == dart::kFieldCid) {
      |                                    ~                                                               ^
      |                                                                                                    )
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1259:77: error: ‘LateInitializationErrorSharedWithoutFPURegsStub’ is not a member of ‘DartStub’
 1259 |                                         INSN_ASSERT(stub->kind == DartStub::LateInitializationErrorSharedWithoutFPURegsStub || stub->kind == DartStub::LateInitializationErrorSharedWithFPURegsStub);
      |                                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1259:152: error: ‘LateInitializationErrorSharedWithFPURegsStub’ is not a member of ‘DartStub’
 1259 |                                         INSN_ASSERT(stub->kind == DartStub::LateInitializationErrorSharedWithoutFPURegsStub || stub->kind == DartStub::LateInitializationErrorSharedWithFPURegsStub);
      |                                                                                                                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp: In member function ‘ILResult FunctionAnalyzer::processGdtCallInstr(AsmInstruction)’:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1326:56: error: ‘dart::DispatchTableNullErrorABI’ has not been declared
 1326 |                 insn.ops[1].reg == ToCapstoneReg(dart::DispatchTableNullErrorABI::kClassIdReg))
      |                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp: In member function ‘ILResult FunctionAnalyzer::processBranchIfSmiInstr(AsmInstruction)’:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1482:85: error: ‘kCompressedWordSize’ is not a member of ‘dart’
 1482 |         if (insn.id() == ARM64_INS_TBZ && insn.ops[1].imm == dart::kSmiTag && dart::kCompressedWordSize == GetCsRegSize(insn.ops[0].reg)) {
      |                                                                                     ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp: In member function ‘ILResult FunctionAnalyzer::processLoadClassIdInstr(AsmInstruction)’:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1492:80: error: ‘dart::UntaggedObject’ has not been declared
 1492 |         if (insn.id() == ARM64_INS_LDUR && insn.ops[1].mem.disp == -1 && dart::UntaggedObject::kClassIdTagPos == 12) {
      |                                                                                ^~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1504:54: error: ‘dart::UntaggedObject’ has not been declared
 1504 |                 INSN_ASSERT(insn.ops[2].imm == dart::UntaggedObject::kClassIdTagPos);
      |                                                      ^~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1505:54: error: ‘dart::UntaggedObject’ has not been declared
 1505 |                 INSN_ASSERT(insn.ops[3].imm == dart::UntaggedObject::kClassIdTagSize);
      |                                                      ^~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1508:85: error: ‘dart::UntaggedObject’ has not been declared
 1508 |         else if (insn.id() == ARM64_INS_LDURH && insn.ops[1].mem.disp == 1 && dart::UntaggedObject::kClassIdTagPos == 16) {
      |                                                                                     ^~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp: In member function ‘ILResult FunctionAnalyzer::processLoadStore(AsmInstruction)’:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1921:132: error: ‘kCompressedWordSize’ is not a member of ‘dart’
 1921 |                                 const auto arr_idx = (insn.ops[2].imm + dart::kHeapObjectTag - dart::Array::data_offset()) / dart::kCompressedWordSize;
      |                                                                                                                                    ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1929:75: error: ‘kCompressedWordSizeLog2’ is not a member of ‘dart’
 1929 |                                         (insn.ops[2].shift.value == dart::kCompressedWordSizeLog2 ||
      |                                                                           ^~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1930:83: error: ‘kCompressedWordSizeLog2’ is not a member of ‘dart’
 1930 |                                                 (insn.ops[2].shift.value == dart::kCompressedWordSizeLog2 - 1 || insn.ops[2].ext == ARM64_EXT_SXTW)));
      |                                                                                   ^~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1942:122: error: ‘kCompressedWordSize’ is not a member of ‘dart’
 1942 |                         INSN_ASSERT(A64::Register{ insn.ops[0].reg } == valReg && GetCsRegSize(insn.ops[0].reg) == dart::kCompressedWordSize);
      |                                                                                                                          ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1951:47: error: ‘kCompressedWordSize’ is not a member of ‘dart’
 1951 |                         ArrayOp arrayOp(dart::kCompressedWordSize, false, ArrayOp::List);
      |                                               ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1995:50: error: ‘dart::UntaggedTypedData’ has not been declared
 1995 |                         bool isTypedData = dart::UntaggedTypedData::payload_offset() - dart::kHeapObjectTag == arr_data_offset;
      |                                                  ^~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:2046:113: error: ‘dart::UntaggedTypedData’ has not been declared
 2046 |                                 const auto idx = VarStorage::NewSmallImm((offset + dart::kHeapObjectTag - dart::UntaggedTypedData::payload_offset()) / arrayOp.size);
      |                                                                                                                 ^~~~~~~~~~~~~~~~~
ninja: build stopped: subcommand failed.
Traceback (most recent call last):
  File "/home/ql/桌面/blutter/blutter.py", line 138, in <module>
    main(args.indir, args.outdir, args.rebuild, args.vs_sln)
  File "/home/ql/桌面/blutter/blutter.py", line 120, in main
    cmake_blutter(blutter_name, dartlib_name, macros)
  File "/home/ql/桌面/blutter/blutter.py", line 76, in cmake_blutter
    subprocess.run([NINJA_CMD], cwd=builddir, check=True)
  File "/usr/lib/python3.11/subprocess.py", line 571, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['ninja']' returned non-zero exit status 1.

重新运行:
rerun:

ql@ql-None:~/桌面/blutter$ python3 blutter.py  ./arm64-v8a ./out
Dart version: 2.10.5, Snapshot: 8ee4ef7a67df9845fba331734198a953, Target: android arm64
-- Configuring done (0.0s)
-- Generating done (0.0s)
-- Build files have been written to: /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64
[1/20] Building CXX object CMakeFiles/...oid_arm64.dir/src/DartThreadInfo.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartThreadInfo.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartThreadInfo.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartThreadInfo.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartThreadInfo.cpp.o -c '/home/ql/桌面/blutter/blutter/src/DartThreadInfo.cpp'
/home/ql/桌面/blutter/blutter/src/DartThreadInfo.cpp: In function ‘void initThreadOffsetNames()’:
/home/ql/桌面/blutter/blutter/src/DartThreadInfo.cpp:39:41: error: ‘heap_base_offset’ is not a member of ‘dart::Thread’
   39 |         threadOffsetNames[dart::Thread::heap_base_offset()] = "heap_base";
      |                                         ^~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartThreadInfo.cpp:47:41: error: ‘double_truncate_round_supported_offset’ is not a member of ‘dart::Thread’
   47 |         threadOffsetNames[dart::Thread::double_truncate_round_supported_offset()] = "double_truncate_round_supported";
      |                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartThreadInfo.cpp:50:41: error: ‘isolate_group_offset’ is not a member of ‘dart::Thread’
   50 |         threadOffsetNames[dart::Thread::isolate_group_offset()] = "isolate_group";
      |                                         ^~~~~~~~~~~~~~~~~~~~
[2/20] Building CXX object CMakeFiles/...android_arm64.dir/src/DartLoader.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLoader.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLoader.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLoader.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLoader.cpp.o -c '/home/ql/桌面/blutter/blutter/src/DartLoader.cpp'
/home/ql/桌面/blutter/blutter/src/DartLoader.cpp: In function ‘_Dart_Isolate* load_isolate(const uint8_t*, const uint8_t*)’:
/home/ql/桌面/blutter/blutter/src/DartLoader.cpp:45:15: error: ‘struct Dart_IsolateFlags’ has no member named ‘snapshot_is_dontneed_safe’
   45 |         flags.snapshot_is_dontneed_safe = true;
      |               ^~~~~~~~~~~~~~~~~~~~~~~~~
[3/20] Building CXX object CMakeFiles/..._android_arm64.dir/src/DartField.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartField.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartField.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartField.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartField.cpp.o -c '/home/ql/桌面/blutter/blutter/src/DartField.cpp'
In file included from /home/ql/桌面/blutter/blutter/src/DartField.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartField.cpp:2:
/home/ql/桌面/blutter/blutter/src/DartTypes.h:218:37: error: ‘dart::FunctionTypePtr’ has not been declared
  218 |         DartFunctionType* FindOrAdd(dart::FunctionTypePtr fnTypePtr);
      |                                     ^~~~
[4/20] Building CXX object CMakeFiles/...droid_arm64.dir/src/CodeAnalyzer.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer.cpp.o -c '/home/ql/桌面/blutter/blutter/src/CodeAnalyzer.cpp'
In file included from /home/ql/桌面/blutter/blutter/src/Disassembler.h:5,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:2,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.cpp:2:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:84:59: error: ‘HEAP_BITS’ is not a member of ‘dart’
   84 | constexpr arm64_reg CSREG_DART_HEAP = ToCapstoneReg(dart::HEAP_BITS);
      |                                                           ^~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:88:71: error: ‘dart::AllocateObjectABI’ has not been declared
   88 | constexpr arm64_reg CSREG_ALLOCATE_OBJ_TYPEARGS = ToCapstoneReg(dart::AllocateObjectABI::kTypeArgumentsReg);
      |                                                                       ^~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:89:75: error: ‘dart::AllocateClosureABI’ has not been declared
   89 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_FUNCTION = ToCapstoneReg(dart::AllocateClosureABI::kFunctionReg);
      |                                                                           ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:90:74: error: ‘dart::AllocateClosureABI’ has not been declared
   90 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_CONTEXT = ToCapstoneReg(dart::AllocateClosureABI::kContextReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:91:74: error: ‘dart::AllocateClosureABI’ has not been declared
   91 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_SCRATCH = ToCapstoneReg(dart::AllocateClosureABI::kScratchReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
In file included from /home/ql/桌面/blutter/blutter/src/DartField.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartClass.h:3,
                 from /home/ql/桌面/blutter/blutter/src/VarValue.h:2,
                 from /home/ql/桌面/blutter/blutter/src/il.h:3,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:3:
/home/ql/桌面/blutter/blutter/src/DartTypes.h:218:37: error: ‘dart::FunctionTypePtr’ has not been declared
  218 |         DartFunctionType* FindOrAdd(dart::FunctionTypePtr fnTypePtr);
      |                                     ^~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:164:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  164 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarGrowableArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:186:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  186 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarFunctionType::VarFunctionType(const DartFunctionType&)’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:246:83: error: ‘kFunctionTypeCid’ is not a member of ‘dart’; did you mean ‘kFunctionCid’?
  246 |         explicit VarFunctionType(const DartFunctionType& fnType) : VarValue(dart::kFunctionTypeCid, true), fnType(fnType) {}
      |                                                                                   ^~~~~~~~~~~~~~~~
      |                                                                                   kFunctionCid
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarSentinel::VarSentinel()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:261:49: error: ‘kSentinelCid’ is not a member of ‘dart’
  261 |         explicit VarSentinel() : VarValue(dart::kSentinelCid, false) {}
      |                                                 ^~~~~~~~~~~~
[5/20] Building CXX object CMakeFiles/...droid_arm64.dir/src/DartFunction.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartFunction.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartFunction.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartFunction.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartFunction.cpp.o -c '/home/ql/桌面/blutter/blutter/src/DartFunction.cpp'
In file included from /home/ql/桌面/blutter/blutter/src/Disassembler.h:5,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:2,
                 from /home/ql/桌面/blutter/blutter/src/DartFunction.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartFunction.cpp:2:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:84:59: error: ‘HEAP_BITS’ is not a member of ‘dart’
   84 | constexpr arm64_reg CSREG_DART_HEAP = ToCapstoneReg(dart::HEAP_BITS);
      |                                                           ^~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:88:71: error: ‘dart::AllocateObjectABI’ has not been declared
   88 | constexpr arm64_reg CSREG_ALLOCATE_OBJ_TYPEARGS = ToCapstoneReg(dart::AllocateObjectABI::kTypeArgumentsReg);
      |                                                                       ^~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:89:75: error: ‘dart::AllocateClosureABI’ has not been declared
   89 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_FUNCTION = ToCapstoneReg(dart::AllocateClosureABI::kFunctionReg);
      |                                                                           ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:90:74: error: ‘dart::AllocateClosureABI’ has not been declared
   90 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_CONTEXT = ToCapstoneReg(dart::AllocateClosureABI::kContextReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:91:74: error: ‘dart::AllocateClosureABI’ has not been declared
   91 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_SCRATCH = ToCapstoneReg(dart::AllocateClosureABI::kScratchReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
In file included from /home/ql/桌面/blutter/blutter/src/DartField.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartClass.h:3,
                 from /home/ql/桌面/blutter/blutter/src/VarValue.h:2,
                 from /home/ql/桌面/blutter/blutter/src/il.h:3,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:3:
/home/ql/桌面/blutter/blutter/src/DartTypes.h:218:37: error: ‘dart::FunctionTypePtr’ has not been declared
  218 |         DartFunctionType* FindOrAdd(dart::FunctionTypePtr fnTypePtr);
      |                                     ^~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:164:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  164 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarGrowableArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:186:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  186 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarFunctionType::VarFunctionType(const DartFunctionType&)’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:246:83: error: ‘kFunctionTypeCid’ is not a member of ‘dart’; did you mean ‘kFunctionCid’?
  246 |         explicit VarFunctionType(const DartFunctionType& fnType) : VarValue(dart::kFunctionTypeCid, true), fnType(fnType) {}
      |                                                                                   ^~~~~~~~~~~~~~~~
      |                                                                                   kFunctionCid
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarSentinel::VarSentinel()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:261:49: error: ‘kSentinelCid’ is not a member of ‘dart’
  261 |         explicit VarSentinel() : VarValue(dart::kSentinelCid, false) {}
      |                                                 ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp: In constructor ‘DartFunction::DartFunction(DartClass&, dart::FunctionPtr)’:
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:38:28: error: ‘dart::UntaggedFunction’ has not been declared
   38 |                 case dart::UntaggedFunction::kConstructor:
      |                            ^~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:41:28: error: ‘dart::UntaggedFunction’ has not been declared
   41 |                 case dart::UntaggedFunction::kSetterFunction:
      |                            ^~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:42:28: error: ‘dart::UntaggedFunction’ has not been declared
   42 |                 case dart::UntaggedFunction::kImplicitSetter:
      |                            ^~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:45:28: error: ‘dart::UntaggedFunction’ has not been declared
   45 |                 case dart::UntaggedFunction::kGetterFunction:
      |                            ^~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:46:28: error: ‘dart::UntaggedFunction’ has not been declared
   46 |                 case dart::UntaggedFunction::kImplicitGetter:
      |                            ^~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:47:28: error: ‘dart::UntaggedFunction’ has not been declared
   47 |                 case dart::UntaggedFunction::kImplicitStaticGetter:
      |                            ^~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:69:30: error: ‘const class dart::Function’ has no member named ‘entry_point’
   69 |         const auto ep = func.entry_point() - lib_base;
      |                              ^~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp: In member function ‘void DartFunction::PrintHead(std::ostream&) const’:
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:207:33: error: ‘dart::FunctionType’ has not been declared
  207 |         const auto& sig = dart::FunctionType::Handle(zone, func.signature());
      |                                 ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:207:65: error: ‘class dart::Function’ has no member named ‘signature’; did you mean ‘Signature’?
  207 |         const auto& sig = dart::FunctionType::Handle(zone, func.signature());
      |                                                                 ^~~~~~~~~
      |                                                                 Signature
/home/ql/桌面/blutter/blutter/src/DartFunction.cpp:250:49: error: ‘dart::TypeParameters’ has not been declared
  250 |                 const auto& type_params = dart::TypeParameters::Handle(zone, sig.type_parameters());
      |                                                 ^~~~~~~~~~~~~~
[6/20] Building CXX object CMakeFiles/..._android_arm64.dir/src/DartClass.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartClass.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartClass.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartClass.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartClass.cpp.o -c '/home/ql/桌面/blutter/blutter/src/DartClass.cpp'
In file included from /home/ql/桌面/blutter/blutter/src/DartField.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartClass.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartClass.cpp:2:
/home/ql/桌面/blutter/blutter/src/DartTypes.h:218:37: error: ‘dart::FunctionTypePtr’ has not been declared
  218 |         DartFunctionType* FindOrAdd(dart::FunctionTypePtr fnTypePtr);
      |                                     ^~~~
In file included from /home/ql/桌面/blutter/blutter/src/Disassembler.h:5,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:2,
                 from /home/ql/桌面/blutter/blutter/src/DartFunction.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartClass.cpp:4:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:84:59: error: ‘HEAP_BITS’ is not a member of ‘dart’
   84 | constexpr arm64_reg CSREG_DART_HEAP = ToCapstoneReg(dart::HEAP_BITS);
      |                                                           ^~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:88:71: error: ‘dart::AllocateObjectABI’ has not been declared
   88 | constexpr arm64_reg CSREG_ALLOCATE_OBJ_TYPEARGS = ToCapstoneReg(dart::AllocateObjectABI::kTypeArgumentsReg);
      |                                                                       ^~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:89:75: error: ‘dart::AllocateClosureABI’ has not been declared
   89 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_FUNCTION = ToCapstoneReg(dart::AllocateClosureABI::kFunctionReg);
      |                                                                           ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:90:74: error: ‘dart::AllocateClosureABI’ has not been declared
   90 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_CONTEXT = ToCapstoneReg(dart::AllocateClosureABI::kContextReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:91:74: error: ‘dart::AllocateClosureABI’ has not been declared
   91 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_SCRATCH = ToCapstoneReg(dart::AllocateClosureABI::kScratchReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
In file included from /home/ql/桌面/blutter/blutter/src/il.h:3,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:3:
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:164:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  164 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarGrowableArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:186:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  186 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarFunctionType::VarFunctionType(const DartFunctionType&)’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:246:83: error: ‘kFunctionTypeCid’ is not a member of ‘dart’; did you mean ‘kFunctionCid’?
  246 |         explicit VarFunctionType(const DartFunctionType& fnType) : VarValue(dart::kFunctionTypeCid, true), fnType(fnType) {}
      |                                                                                   ^~~~~~~~~~~~~~~~
      |                                                                                   kFunctionCid
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarSentinel::VarSentinel()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:261:49: error: ‘kSentinelCid’ is not a member of ‘dart’
  261 |         explicit VarSentinel() : VarValue(dart::kSentinelCid, false) {}
      |                                                 ^~~~~~~~~~~~
In file included from /home/ql/桌面/blutter/blutter/src/DartClass.cpp:5:
/home/ql/桌面/blutter/blutter/src/HtArrayIterator.h: In member function ‘bool HtArrayIterator::MoveNext()’:
/home/ql/桌面/blutter/blutter/src/HtArrayIterator.h:17:58: error: ‘kSentinelCid’ is not a member of ‘dart’
   17 |                         if (objPtr.GetClassId() != dart::kSentinelCid)
      |                                                          ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartClass.cpp: In constructor ‘DartClass::DartClass(const DartLibrary&, const dart::Class&)’:
/home/ql/桌面/blutter/blutter/src/DartClass.cpp:9:73: error: ‘const class dart::Class’ has no member named ‘ptr’
    9 |         lib(lib_), unboxed_fields_bitmap(0), superCls(nullptr), ptr(cls.ptr()), declarationType(nullptr), type(CLASS),
      |                                                                         ^~~
/home/ql/桌面/blutter/blutter/src/DartClass.cpp:37:45: error: ‘kLastInternalOnlyCid’ is not a member of ‘dart’
   37 |         if (!cls.is_loaded() || id <= dart::kLastInternalOnlyCid) {
      |                                             ^~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartClass.cpp:47:43: error: ‘class dart::ClassPtr’ has no member named ‘untag’
   47 |                 auto superCid = supClsPtr.untag()->id();
      |                                           ^~~~~
[7/20] Building CXX object CMakeFiles/...ndroid_arm64.dir/src/DartLibrary.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLibrary.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLibrary.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLibrary.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartLibrary.cpp.o -c '/home/ql/桌面/blutter/blutter/src/DartLibrary.cpp'
In file included from /home/ql/桌面/blutter/blutter/src/DartField.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartClass.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartLibrary.cpp:3:
/home/ql/桌面/blutter/blutter/src/DartTypes.h:218:37: error: ‘dart::FunctionTypePtr’ has not been declared
  218 |         DartFunctionType* FindOrAdd(dart::FunctionTypePtr fnTypePtr);
      |                                     ^~~~
/home/ql/桌面/blutter/blutter/src/DartLibrary.cpp: In constructor ‘DartLibrary::DartLibrary(const dart::Library&)’:
/home/ql/桌面/blutter/blutter/src/DartLibrary.cpp:6:62: error: ‘const class dart::Library’ has no member named ‘ptr’
    6 | DartLibrary::DartLibrary(const dart::Library& lib) : ptr(lib.ptr()), topClass(NULL)
      |                                                              ^~~
[8/20] Building CXX object CMakeFiles/....5_android_arm64.dir/src/DartApp.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartApp.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartApp.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartApp.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartApp.cpp.o -c '/home/ql/桌面/blutter/blutter/src/DartApp.cpp'
In file included from /home/ql/桌面/blutter/blutter/src/DartField.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartClass.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartApp.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartApp.cpp:2:
/home/ql/桌面/blutter/blutter/src/DartTypes.h:218:37: error: ‘dart::FunctionTypePtr’ has not been declared
  218 |         DartFunctionType* FindOrAdd(dart::FunctionTypePtr fnTypePtr);
      |                                     ^~~~
In file included from /home/ql/桌面/blutter/blutter/src/Disassembler.h:5,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:2,
                 from /home/ql/桌面/blutter/blutter/src/DartFunction.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartApp.h:4:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:84:59: error: ‘HEAP_BITS’ is not a member of ‘dart’
   84 | constexpr arm64_reg CSREG_DART_HEAP = ToCapstoneReg(dart::HEAP_BITS);
      |                                                           ^~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:88:71: error: ‘dart::AllocateObjectABI’ has not been declared
   88 | constexpr arm64_reg CSREG_ALLOCATE_OBJ_TYPEARGS = ToCapstoneReg(dart::AllocateObjectABI::kTypeArgumentsReg);
      |                                                                       ^~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:89:75: error: ‘dart::AllocateClosureABI’ has not been declared
   89 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_FUNCTION = ToCapstoneReg(dart::AllocateClosureABI::kFunctionReg);
      |                                                                           ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:90:74: error: ‘dart::AllocateClosureABI’ has not been declared
   90 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_CONTEXT = ToCapstoneReg(dart::AllocateClosureABI::kContextReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:91:74: error: ‘dart::AllocateClosureABI’ has not been declared
   91 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_SCRATCH = ToCapstoneReg(dart::AllocateClosureABI::kScratchReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
In file included from /home/ql/桌面/blutter/blutter/src/il.h:3,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:3:
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:164:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  164 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarGrowableArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:186:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  186 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarFunctionType::VarFunctionType(const DartFunctionType&)’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:246:83: error: ‘kFunctionTypeCid’ is not a member of ‘dart’; did you mean ‘kFunctionCid’?
  246 |         explicit VarFunctionType(const DartFunctionType& fnType) : VarValue(dart::kFunctionTypeCid, true), fnType(fnType) {}
      |                                                                                   ^~~~~~~~~~~~~~~~
      |                                                                                   kFunctionCid
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarSentinel::VarSentinel()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:261:49: error: ‘kSentinelCid’ is not a member of ‘dart’
  261 |         explicit VarSentinel() : VarValue(dart::kSentinelCid, false) {}
      |                                                 ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp: In constructor ‘DartApp::DartApp(const char*)’:
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:23:47: error: ‘class dart::Thread’ has no member named ‘heap_base’; did you mean ‘heap_offset’?
   23 |         heap_base_ = dart::Thread::Current()->heap_base();
      |                                               ^~~~~~~~~
      |                                               heap_offset
/home/ql/桌面/blutter/blutter/src/DartApp.cpp: In member function ‘DartLibrary* DartApp::addLibraryClass(const dart::Library&, const dart::Class&)’:
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:110:54: error: ‘class dart::ClassPtr’ has no member named ‘untag’
  110 |         const auto topCid = library.toplevel_class().untag()->id();
      |                                                      ^~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp: In member function ‘void DartApp::loadStubs(dart::ObjectStore*)’:
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:310:12: error: ‘class dart::ObjectStore’ has no member named ‘build_nongeneric_method_extractor_code’; did you mean ‘build_method_extractor_code’?
  310 |         DO(build_nongeneric_method_extractor_code, BuildNonGenericMethodExtractor);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:303:22: note: in definition of macro ‘DO’
  303 |         ptr = store->member(); \
      |                      ^~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:311:12: error: ‘class dart::ObjectStore’ has no member named ‘build_generic_method_extractor_code’; did you mean ‘build_method_extractor_code’?
  311 |         DO(build_generic_method_extractor_code, BuildGenericMethodExtractor);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:303:22: note: in definition of macro ‘DO’
  303 |         ptr = store->member(); \
      |                      ^~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:13:3: note: in expansion of macro ‘DO’
   13 |   V(GetCStackPointer)                                                          \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:14:3: note: in expansion of macro ‘DO’
   14 |   V(JumpToFrame)                                                               \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:15:3: note: in expansion of macro ‘DO’
   15 |   V(RunExceptionHandler)                                                       \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:16:3: note: in expansion of macro ‘DO’
   16 |   V(DeoptForRewind)                                                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:17:3: note: in expansion of macro ‘DO’
   17 |   V(WriteBarrier)                                                              \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:18:3: note: in expansion of macro ‘DO’
   18 |   V(WriteBarrierWrappers)                                                      \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:19:3: note: in expansion of macro ‘DO’
   19 |   V(ArrayWriteBarrier)                                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:20:3: note: in expansion of macro ‘DO’
   20 |   V(AllocateArray)                                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:21:3: note: in expansion of macro ‘DO’
   21 |   V(AllocateMintSharedWithFPURegs)                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:22:3: note: in expansion of macro ‘DO’
   22 |   V(AllocateMintSharedWithoutFPURegs)                                          \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:23:3: note: in expansion of macro ‘DO’
   23 |   V(AllocateContext)                                                           \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:24:3: note: in expansion of macro ‘DO’
   24 |   V(AllocateObject)                                                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:25:3: note: in expansion of macro ‘DO’
   25 |   V(AllocateObjectParameterized)                                               \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:26:3: note: in expansion of macro ‘DO’
   26 |   V(AllocateObjectSlow)                                                        \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:27:3: note: in expansion of macro ‘DO’
   27 |   V(AllocateUnhandledException)                                                \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:28:3: note: in expansion of macro ‘DO’
   28 |   V(CloneContext)                                                              \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:29:3: note: in expansion of macro ‘DO’
   29 |   V(CallToRuntime)                                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:30:3: note: in expansion of macro ‘DO’
   30 |   V(LazyCompile)                                                               \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:31:3: note: in expansion of macro ‘DO’
   31 |   V(InterpretCall)                                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:32:3: note: in expansion of macro ‘DO’
   32 |   V(CallBootstrapNative)                                                       \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:33:3: note: in expansion of macro ‘DO’
   33 |   V(CallNoScopeNative)                                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:34:3: note: in expansion of macro ‘DO’
   34 |   V(CallAutoScopeNative)                                                       \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:35:3: note: in expansion of macro ‘DO’
   35 |   V(FixCallersTarget)                                                          \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:36:3: note: in expansion of macro ‘DO’
   36 |   V(CallStaticFunction)                                                        \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:37:3: note: in expansion of macro ‘DO’
   37 |   V(OptimizeFunction)                                                          \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:38:3: note: in expansion of macro ‘DO’
   38 |   V(InvokeDartCode)                                                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:39:3: note: in expansion of macro ‘DO’
   39 |   V(InvokeDartCodeFromBytecode)                                                \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:40:3: note: in expansion of macro ‘DO’
   40 |   V(DebugStepCheck)                                                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:41:3: note: in expansion of macro ‘DO’
   41 |   V(SwitchableCallMiss)                                                        \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:42:3: note: in expansion of macro ‘DO’
   42 |   V(MonomorphicSmiableCheck)                                                   \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:43:3: note: in expansion of macro ‘DO’
   43 |   V(SingleTargetCall)                                                          \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:44:3: note: in expansion of macro ‘DO’
   44 |   V(ICCallThroughCode)                                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:45:3: note: in expansion of macro ‘DO’
   45 |   V(MegamorphicCall)                                                           \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:46:3: note: in expansion of macro ‘DO’
   46 |   V(FixAllocationStubTarget)                                                   \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:47:3: note: in expansion of macro ‘DO’
   47 |   V(Deoptimize)                                                                \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:48:3: note: in expansion of macro ‘DO’
   48 |   V(DeoptimizeLazyFromReturn)                                                  \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:49:3: note: in expansion of macro ‘DO’
   49 |   V(DeoptimizeLazyFromThrow)                                                   \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:50:3: note: in expansion of macro ‘DO’
   50 |   V(UnoptimizedIdenticalWithNumberCheck)                                       \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:51:3: note: in expansion of macro ‘DO’
   51 |   V(OptimizedIdenticalWithNumberCheck)                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:52:3: note: in expansion of macro ‘DO’
   52 |   V(ICCallBreakpoint)                                                          \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:53:3: note: in expansion of macro ‘DO’
   53 |   V(UnoptStaticCallBreakpoint)                                                 \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:54:3: note: in expansion of macro ‘DO’
   54 |   V(RuntimeCallBreakpoint)                                                     \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:55:3: note: in expansion of macro ‘DO’
   55 |   V(OneArgCheckInlineCache)                                                    \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:56:3: note: in expansion of macro ‘DO’
   56 |   V(TwoArgsCheckInlineCache)                                                   \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:57:3: note: in expansion of macro ‘DO’
   57 |   V(SmiAddInlineCache)                                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:58:3: note: in expansion of macro ‘DO’
   58 |   V(SmiLessInlineCache)                                                        \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:59:3: note: in expansion of macro ‘DO’
   59 |   V(SmiEqualInlineCache)                                                       \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:60:3: note: in expansion of macro ‘DO’
   60 |   V(OneArgOptimizedCheckInlineCache)                                           \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:61:3: note: in expansion of macro ‘DO’
   61 |   V(TwoArgsOptimizedCheckInlineCache)                                          \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:62:3: note: in expansion of macro ‘DO’
   62 |   V(ZeroArgsUnoptimizedStaticCall)                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:63:3: note: in expansion of macro ‘DO’
   63 |   V(OneArgUnoptimizedStaticCall)                                               \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:64:3: note: in expansion of macro ‘DO’
   64 |   V(TwoArgsUnoptimizedStaticCall)                                              \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:65:3: note: in expansion of macro ‘DO’
   65 |   V(Subtype1TestCache)                                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:66:3: note: in expansion of macro ‘DO’
   66 |   V(Subtype2TestCache)                                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:67:3: note: in expansion of macro ‘DO’
   67 |   V(Subtype4TestCache)                                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:68:3: note: in expansion of macro ‘DO’
   68 |   V(Subtype6TestCache)                                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:69:3: note: in expansion of macro ‘DO’
   69 |   V(DefaultTypeTest)                                                           \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:70:3: note: in expansion of macro ‘DO’
   70 |   V(DefaultNullableTypeTest)                                                   \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:71:3: note: in expansion of macro ‘DO’
   71 |   V(TopTypeTypeTest)                                                           \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:72:3: note: in expansion of macro ‘DO’
   72 |   V(UnreachableTypeTest)                                                       \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:73:3: note: in expansion of macro ‘DO’
   73 |   V(TypeParameterTypeTest)                                                     \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:74:3: note: in expansion of macro ‘DO’
   74 |   V(NullableTypeParameterTypeTest)                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:75:3: note: in expansion of macro ‘DO’
   75 |   V(SlowTypeTest)                                                              \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:76:3: note: in expansion of macro ‘DO’
   76 |   V(LazySpecializeTypeTest)                                                    \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:77:3: note: in expansion of macro ‘DO’
   77 |   V(LazySpecializeNullableTypeTest)                                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:78:3: note: in expansion of macro ‘DO’
   78 |   V(CallClosureNoSuchMethod)                                                   \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:79:3: note: in expansion of macro ‘DO’
   79 |   V(FrameAwaitingMaterialization)                                              \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:80:3: note: in expansion of macro ‘DO’
   80 |   V(AsynchronousGapMarker)                                                     \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:81:3: note: in expansion of macro ‘DO’
   81 |   V(NotLoaded)                                                                 \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:82:3: note: in expansion of macro ‘DO’
   82 |   V(DispatchTableNullError)                                                    \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:83:3: note: in expansion of macro ‘DO’
   83 |   V(NullErrorSharedWithFPURegs)                                                \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:84:3: note: in expansion of macro ‘DO’
   84 |   V(NullErrorSharedWithoutFPURegs)                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:85:3: note: in expansion of macro ‘DO’
   85 |   V(NullArgErrorSharedWithFPURegs)                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:86:3: note: in expansion of macro ‘DO’
   86 |   V(NullArgErrorSharedWithoutFPURegs)                                          \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:87:3: note: in expansion of macro ‘DO’
   87 |   V(NullCastErrorSharedWithFPURegs)                                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:88:3: note: in expansion of macro ‘DO’
   88 |   V(NullCastErrorSharedWithoutFPURegs)                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:89:3: note: in expansion of macro ‘DO’
   89 |   V(RangeErrorSharedWithFPURegs)                                               \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:90:3: note: in expansion of macro ‘DO’
   90 |   V(RangeErrorSharedWithoutFPURegs)                                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:91:3: note: in expansion of macro ‘DO’
   91 |   V(StackOverflowSharedWithFPURegs)                                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:92:3: note: in expansion of macro ‘DO’
   92 |   V(StackOverflowSharedWithoutFPURegs)                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:93:3: note: in expansion of macro ‘DO’
   93 |   V(OneArgCheckInlineCacheWithExactnessCheck)                                  \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:94:3: note: in expansion of macro ‘DO’
   94 |   V(OneArgOptimizedCheckInlineCacheWithExactnessCheck)                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:95:3: note: in expansion of macro ‘DO’
   95 |   V(EnterSafepoint)                                                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:96:3: note: in expansion of macro ‘DO’
   96 |   V(ExitSafepoint)                                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:97:3: note: in expansion of macro ‘DO’
   97 |   V(CallNativeThroughSafepoint)                                                \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:98:3: note: in expansion of macro ‘DO’
   98 |   V(InitStaticField)                                                           \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:99:3: note: in expansion of macro ‘DO’
   99 |   V(InitInstanceField)                                                         \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:100:3: note: in expansion of macro ‘DO’
  100 |   V(InitLateInstanceField)                                                     \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:101:3: note: in expansion of macro ‘DO’
  101 |   V(InitLateFinalInstanceField)                                                \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:102:3: note: in expansion of macro ‘DO’
  102 |   V(Throw)                                                                     \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:103:3: note: in expansion of macro ‘DO’
  103 |   V(ReThrow)                                                                   \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:104:3: note: in expansion of macro ‘DO’
  104 |   V(AssertBoolean)                                                             \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:105:3: note: in expansion of macro ‘DO’
  105 |   V(InstanceOf)                                                                \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:106:3: note: in expansion of macro ‘DO’
  106 |   V(InstantiateTypeArguments)                                                  \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:107:3: note: in expansion of macro ‘DO’
  107 |   V(InstantiateTypeArgumentsMayShareInstantiatorTA)                            \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:108:3: note: in expansion of macro ‘DO’
  108 |   V(InstantiateTypeArgumentsMayShareFunctionTA)                                \
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:327:50: error: ‘const class dart::Code’ has no member named ‘ptr’
  327 |                         stub = new DartStub(code.ptr(), DartStub::name ## VMStub, ep_addr, code.Size(), #name); \
      |                                                  ^~~
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/stub_code_list.h:109:3: note: in expansion of macro ‘DO’
  109 |   V(NoSuchMethodDispatcher)
      |   ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp: In member function ‘DartFunction* DartApp::addFunctionNoCheck(const dart::Function&)’:
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:345:34: error: ‘const class dart::ClassPtr’ has no member named ‘untag’
  345 |         const auto cid = cls_ptr.untag()->id();
      |                                  ^~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:364:38: error: ‘const class dart::Function’ has no member named ‘ptr’
  364 |         return cls->AddFunction(func.ptr());
      |                                      ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp: In member function ‘void DartApp::findFunctionInHeap()’:
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:476:89: error: ‘const class dart::AbstractType’ has no member named ‘ptr’
  476 |                         auto dartType = typeDb->FindOrAdd(dart::AbstractType::Cast(obj).ptr());
      |                                                                                         ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp: In member function ‘void DartApp::finalizeFunctionsInfo()’:
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:516:55: error: ‘class dart::Function’ has no member named ‘entry_point’
  516 |                         const auto ep_addr = parentFn.entry_point() - base();
      |                                                       ^~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:541:63: error: ‘class dart::Function’ has no member named ‘entry_point’
  541 |                                 const auto ep_addr = parentFn.entry_point() - base();
      |                                                               ^~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp: In member function ‘void DartApp::walkObject(dart::Object&)’:
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:586:71: error: ‘const class dart::Array’ has no member named ‘ptr’
  586 |                                 auto arrPtr = dart::Array::DataOf(arr.ptr());
      |                                                                       ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:596:39: error: ‘kConstMapCid’ is not a member of ‘dart’; did you mean ‘kContextCid’?
  596 |                 else if (cid == dart::kConstMapCid || cid == dart::kMapCid) {
      |                                       ^~~~~~~~~~~~
      |                                       kContextCid
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:596:68: error: ‘kMapCid’ is not a member of ‘dart’
  596 |                 else if (cid == dart::kConstMapCid || cid == dart::kMapCid) {
      |                                                                    ^~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:597:43: error: ‘dart::Map’ has not been declared
  597 |                         auto& map = dart::Map::Cast(obj);
      |                                           ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:598:31: error: ‘dart::Map’ has not been declared
  598 |                         dart::Map::Iterator iter(map);
      |                               ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:600:32: error: ‘iter’ was not declared in this scope
  600 |                         while (iter.MoveNext()) {
      |                                ^~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:607:39: error: ‘kConstSetCid’ is not a member of ‘dart’; did you mean ‘kContextCid’?
  607 |                 else if (cid == dart::kConstSetCid || cid == dart::kSetCid) {
      |                                       ^~~~~~~~~~~~
      |                                       kContextCid
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:607:68: error: ‘kSetCid’ is not a member of ‘dart’; did you mean ‘kSmiCid’?
  607 |                 else if (cid == dart::kConstSetCid || cid == dart::kSetCid) {
      |                                                                    ^~~~~~~
      |                                                                    kSmiCid
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:608:43: error: ‘dart::Set’ has not been declared
  608 |                         auto& set = dart::Set::Cast(obj);
      |                                           ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:609:31: error: ‘dart::Set’ has not been declared
  609 |                         dart::Set::Iterator iter(set);
      |                               ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:611:32: error: ‘iter’ was not declared in this scope
  611 |                         while (iter.MoveNext()) {
      |                                ^~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:617:76: error: ‘class dart::Object’ has no member named ‘ptr’
  617 |                         typeDb->FindOrAdd(dart::TypeArguments::RawCast(obj.ptr()));
      |                                                                            ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:620:67: error: ‘class dart::Object’ has no member named ‘ptr’
  620 |                         typeDb->FindOrAdd(dart::Type::RawCast(obj.ptr()));
      |                                                                   ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:623:76: error: ‘class dart::Object’ has no member named ‘ptr’
  623 |                         typeDb->FindOrAdd(dart::TypeParameter::RawCast(obj.ptr()));
      |                                                                            ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:625:30: error: ‘class dart::Object’ has no member named ‘IsFunctionType’; did you mean ‘IsFunction’?
  625 |                 else if (obj.IsFunctionType()) {
      |                              ^~~~~~~~~~~~~~
      |                              IsFunction
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:626:49: error: ‘dart::FunctionType’ has not been declared
  626 |                         typeDb->FindOrAdd(dart::FunctionType::RawCast(obj.ptr()));
      |                                                 ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:626:75: error: ‘class dart::Object’ has no member named ‘ptr’
  626 |                         typeDb->FindOrAdd(dart::FunctionType::RawCast(obj.ptr()));
      |                                                                           ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:630:51: error: ‘const class dart::Function’ has no member named ‘entry_point’
  630 |                         const auto ep_addr = func.entry_point() - base();
      |                                                   ^~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:635:54: error: ‘const class dart::Closure’ has no member named ‘entry_point’
  635 |                         const auto ep_addr = closure.entry_point() - base();
      |                                                      ^~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:650:32: error: ‘dart::UntaggedObject’ has not been declared
  650 |         const auto ptr = dart::UntaggedObject::ToAddr(obj.ptr());
      |                                ^~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:650:59: error: ‘class dart::Object’ has no member named ‘ptr’
  650 |         const auto ptr = dart::UntaggedObject::ToAddr(obj.ptr());
      |                                                           ^~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:653:47: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  653 |                 if (bitmap.Get(offset / dart::kCompressedWordSize)) {
      |                                               ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:656:35: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  656 |                         if (dart::kCompressedWordSize == 4) {
      |                                   ^~~~~~~~~~~~~~~~~~~
In file included from /home/ql/桌面/blutter/packages/include/dartvm2.10.5/platform/allocation.h:8,
                 from /home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/allocation.h:8,
                 from /home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/dart_entry.h:8,
                 from /home/ql/桌面/blutter/blutter/src/pch.h:26,
                 from /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx:5,
                 from <command-line>:
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:657:75: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  657 |                                 RELEASE_ASSERT(bitmap.Get((offset + dart::kCompressedWordSize) / dart::kCompressedWordSize));
      |                                                                           ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:657:104: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  657 |                                 RELEASE_ASSERT(bitmap.Get((offset + dart::kCompressedWordSize) / dart::kCompressedWordSize));
      |                                                                                                        ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:670:41: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  670 |                         offset += dart::kCompressedWordSize * 2;
      |                                         ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:673:57: error: ‘CompressedObjectPtr’ in namespace ‘dart’ does not name a type
  673 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                         ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:673:76: error: expected ‘>’ before ‘*’ token
  673 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                                            ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:673:76: error: expected ‘(’ before ‘*’ token
  673 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                                            ^
      |                                                                            (
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:673:77: error: expected primary-expression before ‘>’ token
  673 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                                             ^
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:673:92: error: expected ‘)’ before ‘;’ token
  673 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                                                            ^
      |                                                                                            )
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:701:41: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  701 |                         offset += dart::kCompressedWordSize;
      |                                         ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp: In member function ‘void DartApp::loadFromObjectPool()’:
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:720:71: error: ‘class dart::ClassPtr’ has no member named ‘untag’
  720 |                                 auto dartCls = GetClass(field.Owner().untag()->id());
      |                                                                       ^~~~~
/home/ql/桌面/blutter/blutter/src/DartApp.cpp:721:74: error: ‘const class dart::Field’ has no member named ‘ptr’
  721 |                                 auto dartField = dartCls->AddField(field.ptr());
      |                                                                          ^~~
[9/20] Building CXX object CMakeFiles/...arm64.dir/src/CodeAnalyzer_arm64.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer_arm64.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer_arm64.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer_arm64.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/CodeAnalyzer_arm64.cpp.o -c '/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp'
In file included from /home/ql/桌面/blutter/blutter/src/Disassembler.h:5,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:2,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:2:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:84:59: error: ‘HEAP_BITS’ is not a member of ‘dart’
   84 | constexpr arm64_reg CSREG_DART_HEAP = ToCapstoneReg(dart::HEAP_BITS);
      |                                                           ^~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:88:71: error: ‘dart::AllocateObjectABI’ has not been declared
   88 | constexpr arm64_reg CSREG_ALLOCATE_OBJ_TYPEARGS = ToCapstoneReg(dart::AllocateObjectABI::kTypeArgumentsReg);
      |                                                                       ^~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:89:75: error: ‘dart::AllocateClosureABI’ has not been declared
   89 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_FUNCTION = ToCapstoneReg(dart::AllocateClosureABI::kFunctionReg);
      |                                                                           ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:90:74: error: ‘dart::AllocateClosureABI’ has not been declared
   90 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_CONTEXT = ToCapstoneReg(dart::AllocateClosureABI::kContextReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:91:74: error: ‘dart::AllocateClosureABI’ has not been declared
   91 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_SCRATCH = ToCapstoneReg(dart::AllocateClosureABI::kScratchReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
In file included from /home/ql/桌面/blutter/blutter/src/DartField.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartClass.h:3,
                 from /home/ql/桌面/blutter/blutter/src/VarValue.h:2,
                 from /home/ql/桌面/blutter/blutter/src/il.h:3,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:3:
/home/ql/桌面/blutter/blutter/src/DartTypes.h:218:37: error: ‘dart::FunctionTypePtr’ has not been declared
  218 |         DartFunctionType* FindOrAdd(dart::FunctionTypePtr fnTypePtr);
      |                                     ^~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:164:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  164 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarGrowableArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:186:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  186 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarFunctionType::VarFunctionType(const DartFunctionType&)’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:246:83: error: ‘kFunctionTypeCid’ is not a member of ‘dart’; did you mean ‘kFunctionCid’?
  246 |         explicit VarFunctionType(const DartFunctionType& fnType) : VarValue(dart::kFunctionTypeCid, true), fnType(fnType) {}
      |                                                                                   ^~~~~~~~~~~~~~~~
      |                                                                                   kFunctionCid
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarSentinel::VarSentinel()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:261:49: error: ‘kSentinelCid’ is not a member of ‘dart’
  261 |         explicit VarSentinel() : VarValue(dart::kSentinelCid, false) {}
      |                                                 ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp: In function ‘VarValue* getPoolObject(DartApp&, intptr_t, A64::Register)’:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:69:67: error: ‘class dart::ClassPtr’ has no member named ‘untag’
   69 |                         auto dartCls = app.GetClass(field.Owner().untag()->id());
      |                                                                   ^~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:76:68: error: ‘const class dart::Array’ has no member named ‘ptr’
   76 |                         return new VarArray(dart::Array::Cast(obj).ptr());
      |                                                                    ^~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:80:28: error: ‘kConstMapCid’ is not a member of ‘dart’; did you mean ‘kContextCid’?
   80 |                 case dart::kConstMapCid:
      |                            ^~~~~~~~~~~~
      |                            kContextCid
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:82:28: error: ‘kConstSetCid’ is not a member of ‘dart’; did you mean ‘kContextCid’?
   82 |                 case dart::kConstSetCid:
      |                            ^~~~~~~~~~~~
      |                            kContextCid
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:92:28: error: ‘kTypeParametersCid’ is not a member of ‘dart’; did you mean ‘kTypeParameterCid’?
   92 |                 case dart::kTypeParametersCid:
      |                            ^~~~~~~~~~~~~~~~~~
      |                            kTypeParameterCid
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:95:91: error: ‘const class dart::Type’ has no member named ‘ptr’
   95 |                         return new VarType(*app.TypeDb()->FindOrAdd(dart::Type::Cast(obj).ptr()));
      |                                                                                           ^~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:101:109: error: ‘const class dart::TypeParameter’ has no member named ‘ptr’
  101 |                         return new VarTypeParameter(*app.TypeDb()->FindOrAdd(dart::TypeParameter::Cast(obj).ptr()));
      |                                                                                                             ^~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:102:28: error: ‘kFunctionTypeCid’ is not a member of ‘dart’; did you mean ‘kFunctionCid’?
  102 |                 case dart::kFunctionTypeCid:
      |                            ^~~~~~~~~~~~~~~~
      |                            kFunctionCid
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:103:83: error: ‘dart::FunctionType’ has not been declared
  103 |                         return new VarFunctionType(*app.TypeDb()->FindOrAdd(dart::FunctionType::Cast(obj).ptr()));
      |                                                                                   ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:105:108: error: ‘const class dart::TypeArguments’ has no member named ‘ptr’
  105 |                         return new VarTypeArgument(*app.TypeDb()->FindOrAdd(dart::TypeArguments::Cast(obj).ptr()));
      |                                                                                                            ^~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:107:28: error: ‘kSentinelCid’ is not a member of ‘dart’
  107 |                 case dart::kSentinelCid:
      |                            ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp: In member function ‘ILResult FunctionAnalyzer::processLoadFieldTableInstr(AsmInstruction)’:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1186:137: error: ‘kSentinelCid’ is not a member of ‘dart’
 1186 |                         if (objPoolInstr.insCnt == 0 || objPoolInstr.dstReg != A64::TMP_REG || objPoolInstr.item.ValueTypeId() != dart::kSentinelCid) {
      |                                                                                                                                         ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1218:83: error: ‘InitLateStaticFieldStub’ is not a member of ‘DartStub’
 1218 |                                                 INSN_ASSERT(stubKind == DartStub::InitLateStaticFieldStub || stubKind == DartStub::InitLateFinalStaticFieldStub);
      |                                                                                   ^~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1218:132: error: ‘InitLateFinalStaticFieldStub’ is not a member of ‘DartStub’
 1218 |                                                 INSN_ASSERT(stubKind == DartStub::InitLateStaticFieldStub || stubKind == DartStub::InitLateFinalStaticFieldStub);
      |                                                                                                                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1251:108: error: ‘LateInitializationErrorABI’ is not a member of ‘dart’
 1251 |                                 if (objPoolInstr.insCnt > 0 && objPoolInstr.dstReg == A64::Register{ dart::LateInitializationErrorABI::kFieldReg } && objPoolInstr.item.ValueTypeId() == dart::kFieldCid) {
      |                                                                                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1251:108: error: no matching function for call to ‘A64::Register::Register(<brace-enclosed initializer list>)’
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:230:19: note: candidate: ‘constexpr A64::Register::Register(arm64_reg)’
  230 |         constexpr Register(arm64_reg r) {
      |                   ^~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:230:19: note:   conversion of argument 1 would be ill-formed:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:206:19: note: candidate: ‘constexpr A64::Register::Register(dart::Register)’
  206 |         constexpr Register(dart::Register r) {
      |                   ^~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:206:19: note:   conversion of argument 1 would be ill-formed:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:204:19: note: candidate: ‘constexpr A64::Register::Register(Value)’
  204 |         constexpr Register(Value reg) : reg(reg) {}
      |                   ^~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:204:19: note:   conversion of argument 1 would be ill-formed:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:203:19: note: candidate: ‘constexpr A64::Register::Register()’
  203 |         constexpr Register() : reg(kNoRegister) {}
      |                   ^~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:203:19: note:   candidate expects 0 arguments, 1 provided
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:106:24: note: candidate: ‘constexpr A64::Register::Register(const A64::Register&)’
  106 | class alignas(int32_t) Register {
      |                        ^~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:106:24: note:   conversion of argument 1 would be ill-formed:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:106:24: note: candidate: ‘constexpr A64::Register::Register(A64::Register&&)’
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:106:24: note:   conversion of argument 1 would be ill-formed:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1251:100: error: expected primary-expression before ‘{’ token
 1251 |                                 if (objPoolInstr.insCnt > 0 && objPoolInstr.dstReg == A64::Register{ dart::LateInitializationErrorABI::kFieldReg } && objPoolInstr.item.ValueTypeId() == dart::kFieldCid) {
      |                                                                                                    ^
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1251:100: error: expected ‘)’ before ‘{’ token
 1251 |                                 if (objPoolInstr.insCnt > 0 && objPoolInstr.dstReg == A64::Register{ dart::LateInitializationErrorABI::kFieldReg } && objPoolInstr.item.ValueTypeId() == dart::kFieldCid) {
      |                                    ~                                                               ^
      |                                                                                                    )
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1259:77: error: ‘LateInitializationErrorSharedWithoutFPURegsStub’ is not a member of ‘DartStub’
 1259 |                                         INSN_ASSERT(stub->kind == DartStub::LateInitializationErrorSharedWithoutFPURegsStub || stub->kind == DartStub::LateInitializationErrorSharedWithFPURegsStub);
      |                                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1259:152: error: ‘LateInitializationErrorSharedWithFPURegsStub’ is not a member of ‘DartStub’
 1259 |                                         INSN_ASSERT(stub->kind == DartStub::LateInitializationErrorSharedWithoutFPURegsStub || stub->kind == DartStub::LateInitializationErrorSharedWithFPURegsStub);
      |                                                                                                                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp: In member function ‘ILResult FunctionAnalyzer::processGdtCallInstr(AsmInstruction)’:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1326:56: error: ‘dart::DispatchTableNullErrorABI’ has not been declared
 1326 |                 insn.ops[1].reg == ToCapstoneReg(dart::DispatchTableNullErrorABI::kClassIdReg))
      |                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp: In member function ‘ILResult FunctionAnalyzer::processBranchIfSmiInstr(AsmInstruction)’:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1482:85: error: ‘kCompressedWordSize’ is not a member of ‘dart’
 1482 |         if (insn.id() == ARM64_INS_TBZ && insn.ops[1].imm == dart::kSmiTag && dart::kCompressedWordSize == GetCsRegSize(insn.ops[0].reg)) {
      |                                                                                     ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp: In member function ‘ILResult FunctionAnalyzer::processLoadClassIdInstr(AsmInstruction)’:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1492:80: error: ‘dart::UntaggedObject’ has not been declared
 1492 |         if (insn.id() == ARM64_INS_LDUR && insn.ops[1].mem.disp == -1 && dart::UntaggedObject::kClassIdTagPos == 12) {
      |                                                                                ^~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1504:54: error: ‘dart::UntaggedObject’ has not been declared
 1504 |                 INSN_ASSERT(insn.ops[2].imm == dart::UntaggedObject::kClassIdTagPos);
      |                                                      ^~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1505:54: error: ‘dart::UntaggedObject’ has not been declared
 1505 |                 INSN_ASSERT(insn.ops[3].imm == dart::UntaggedObject::kClassIdTagSize);
      |                                                      ^~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1508:85: error: ‘dart::UntaggedObject’ has not been declared
 1508 |         else if (insn.id() == ARM64_INS_LDURH && insn.ops[1].mem.disp == 1 && dart::UntaggedObject::kClassIdTagPos == 16) {
      |                                                                                     ^~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp: In member function ‘ILResult FunctionAnalyzer::processLoadStore(AsmInstruction)’:
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1921:132: error: ‘kCompressedWordSize’ is not a member of ‘dart’
 1921 |                                 const auto arr_idx = (insn.ops[2].imm + dart::kHeapObjectTag - dart::Array::data_offset()) / dart::kCompressedWordSize;
      |                                                                                                                                    ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1929:75: error: ‘kCompressedWordSizeLog2’ is not a member of ‘dart’
 1929 |                                         (insn.ops[2].shift.value == dart::kCompressedWordSizeLog2 ||
      |                                                                           ^~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1930:83: error: ‘kCompressedWordSizeLog2’ is not a member of ‘dart’
 1930 |                                                 (insn.ops[2].shift.value == dart::kCompressedWordSizeLog2 - 1 || insn.ops[2].ext == ARM64_EXT_SXTW)));
      |                                                                                   ^~~~~~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1942:122: error: ‘kCompressedWordSize’ is not a member of ‘dart’
 1942 |                         INSN_ASSERT(A64::Register{ insn.ops[0].reg } == valReg && GetCsRegSize(insn.ops[0].reg) == dart::kCompressedWordSize);
      |                                                                                                                          ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:20:15: note: in definition of macro ‘INSN_ASSERT’
   20 |         if (!(cond)) throw InsnException(#cond, insn.ptr()); \
      |               ^~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1951:47: error: ‘kCompressedWordSize’ is not a member of ‘dart’
 1951 |                         ArrayOp arrayOp(dart::kCompressedWordSize, false, ArrayOp::List);
      |                                               ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:1995:50: error: ‘dart::UntaggedTypedData’ has not been declared
 1995 |                         bool isTypedData = dart::UntaggedTypedData::payload_offset() - dart::kHeapObjectTag == arr_data_offset;
      |                                                  ^~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/CodeAnalyzer_arm64.cpp:2046:113: error: ‘dart::UntaggedTypedData’ has not been declared
 2046 |                                 const auto idx = VarStorage::NewSmallImm((offset + dart::kHeapObjectTag - dart::UntaggedTypedData::payload_offset()) / arrayOp.size);
      |                                                                                                                 ^~~~~~~~~~~~~~~~~
[10/20] Building CXX object CMakeFiles...android_arm64.dir/src/DartDumper.cpp.o
FAILED: CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartDumper.cpp.o 
/usr/bin/c++ -DDART_COMPRESSED_POINTERS -DDART_PRECOMPILED_RUNTIME -DDART_TARGET_OS_ANDROID -DDART_TARGET_OS_WINDOWS_UWP -DEXCLUDE_CFE_AND_KERNEL_PLATFORM -DFRIDA_TEMPLATE_DIR=\"/home/ql/桌面/blutter/scripts\" -DHAS_SHARED_CLASS_TABLE -DHAS_TYPE_REF -DNDEBUG -DPRODUCT -DTARGET_ARCH_ARM64 -DU_USING_ICU_NAMESPACE=0 -D_HAS_EXCEPTIONS=0 -I/usr/include/capstone -isystem /home/ql/桌面/blutter/packages/include/dartvm2.10.5 -O3 -DNDEBUG -std=c++20 -O3 -fno-rtti -fvisibility=hidden -fvisibility-inlines-hidden -fno-omit-frame-pointer -Winvalid-pch -include /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx -MD -MT CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartDumper.cpp.o -MF CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartDumper.cpp.o.d -o CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/src/DartDumper.cpp.o -c '/home/ql/桌面/blutter/blutter/src/DartDumper.cpp'
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:631:97: error: macro "FATAL" passed 3 arguments, but takes just 1
  631 |                 FATAL("Unhandle internal class %s (%ld)", app.GetClass(cid)->Name().c_str(), cid);
      |                                                                                                 ^
In file included from /home/ql/桌面/blutter/packages/include/dartvm2.10.5/platform/allocation.h:8,
                 from /home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/allocation.h:8,
                 from /home/ql/桌面/blutter/packages/include/dartvm2.10.5/vm/dart_entry.h:8,
                 from /home/ql/桌面/blutter/blutter/src/pch.h:26,
                 from /home/ql/桌面/blutter/build/blutter_dartvm2.10.5_android_arm64/CMakeFiles/blutter_dartvm2.10.5_android_arm64.dir/cmake_pch.hxx:5,
                 from <command-line>:
/home/ql/桌面/blutter/packages/include/dartvm2.10.5/platform/assert.h:211: note: macro "FATAL" defined here
  211 | #define FATAL(error) dart::Assert(__FILE__, __LINE__).Fail("%s", error)
      | 
In file included from /home/ql/桌面/blutter/blutter/src/DartField.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartClass.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartApp.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartDumper.h:2,
                 from /home/ql/桌面/blutter/blutter/src/DartDumper.cpp:2:
/home/ql/桌面/blutter/blutter/src/DartTypes.h:218:37: error: ‘dart::FunctionTypePtr’ has not been declared
  218 |         DartFunctionType* FindOrAdd(dart::FunctionTypePtr fnTypePtr);
      |                                     ^~~~
In file included from /home/ql/桌面/blutter/blutter/src/Disassembler.h:5,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:2,
                 from /home/ql/桌面/blutter/blutter/src/DartFunction.h:3,
                 from /home/ql/桌面/blutter/blutter/src/DartApp.h:4:
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:84:59: error: ‘HEAP_BITS’ is not a member of ‘dart’
   84 | constexpr arm64_reg CSREG_DART_HEAP = ToCapstoneReg(dart::HEAP_BITS);
      |                                                           ^~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:88:71: error: ‘dart::AllocateObjectABI’ has not been declared
   88 | constexpr arm64_reg CSREG_ALLOCATE_OBJ_TYPEARGS = ToCapstoneReg(dart::AllocateObjectABI::kTypeArgumentsReg);
      |                                                                       ^~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:89:75: error: ‘dart::AllocateClosureABI’ has not been declared
   89 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_FUNCTION = ToCapstoneReg(dart::AllocateClosureABI::kFunctionReg);
      |                                                                           ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:90:74: error: ‘dart::AllocateClosureABI’ has not been declared
   90 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_CONTEXT = ToCapstoneReg(dart::AllocateClosureABI::kContextReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/Disassembler_arm64.h:91:74: error: ‘dart::AllocateClosureABI’ has not been declared
   91 | constexpr arm64_reg CSREG_ALLOCATE_CLOSURE_SCRATCH = ToCapstoneReg(dart::AllocateClosureABI::kScratchReg);
      |                                                                          ^~~~~~~~~~~~~~~~~~
In file included from /home/ql/桌面/blutter/blutter/src/il.h:3,
                 from /home/ql/桌面/blutter/blutter/src/CodeAnalyzer.h:3:
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:164:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  164 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In member function ‘int VarGrowableArray::ElementSize()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:186:30: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  186 |                 return dart::kCompressedWordSize;
      |                              ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarFunctionType::VarFunctionType(const DartFunctionType&)’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:246:83: error: ‘kFunctionTypeCid’ is not a member of ‘dart’; did you mean ‘kFunctionCid’?
  246 |         explicit VarFunctionType(const DartFunctionType& fnType) : VarValue(dart::kFunctionTypeCid, true), fnType(fnType) {}
      |                                                                                   ^~~~~~~~~~~~~~~~
      |                                                                                   kFunctionCid
/home/ql/桌面/blutter/blutter/src/VarValue.h: In constructor ‘VarSentinel::VarSentinel()’:
/home/ql/桌面/blutter/blutter/src/VarValue.h:261:49: error: ‘kSentinelCid’ is not a member of ‘dart’
  261 |         explicit VarSentinel() : VarValue(dart::kSentinelCid, false) {}
      |                                                 ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp: In member function ‘const std::string& DartDumper::getQuoteString(dart::Object&)’:
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:258:40: error: ‘class dart::Object’ has no member named ‘ptr’
  258 |         const auto ptr = (intptr_t)obj.ptr();
      |                                        ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp: In member function ‘std::string DartDumper::ObjectToString(dart::Object&, bool, bool, int)’:
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:453:20: error: ‘kSentinelCid’ is not a member of ‘dart’
  453 |         case dart::kSentinelCid:
      |                    ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:459:73: error: ‘const class dart::Function’ has no member named ‘entry_point’
  459 |                 auto dartFn = app.GetFunction(dart::Function::Cast(obj).entry_point() - app.base())->AsFunction();
      |                                                                         ^~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:479:53: error: ‘const class dart::Closure’ has no member named ‘entry_point’
  479 |                 if (!app.functions.contains(closure.entry_point() - app.base())) {
      |                                                     ^~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:480:92: error: ‘const class dart::Closure’ has no member named ‘entry_point’
  480 |                         std::cout << std::format("[!] missing closure at {:#x}\n", closure.entry_point() - app.base());
      |                                                                                            ^~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:483:79: error: ‘const class dart::Closure’ has no member named ‘entry_point’
  483 |                 return std::format("{} ({:#x})", closure.ToCString(), closure.entry_point());
      |                                                                               ^~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:507:63: error: ‘const class dart::Array’ has no member named ‘ptr’
  507 |                         auto arrPtr = dart::Array::DataOf(arr.ptr());
      |                                                               ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:543:99: error: ‘class dart::Object’ has no member named ‘ptr’
  543 |                 return "TypeArguments: " + app.typeDb->FindOrAdd(dart::TypeArguments::RawCast(obj.ptr()))->ToString();
      |                                                                                                   ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:545:81: error: ‘class dart::Object’ has no member named ‘ptr’
  545 |                 return "Type: " + app.typeDb->FindOrAdd(dart::Type::RawCast(obj.ptr()))->ToString();
      |                                                                                 ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:551:99: error: ‘class dart::Object’ has no member named ‘ptr’
  551 |                 return "TypeParameter: " + app.typeDb->FindOrAdd(dart::TypeParameter::RawCast(obj.ptr()))->ToString();
      |                                                                                                   ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:552:20: error: ‘kFunctionTypeCid’ is not a member of ‘dart’; did you mean ‘kFunctionCid’?
  552 |         case dart::kFunctionTypeCid:
      |                    ^~~~~~~~~~~~~~~~
      |                    kFunctionCid
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:553:71: error: ‘dart::FunctionType’ has not been declared
  553 |                 return "FunctionType: " + app.typeDb->FindOrAdd(dart::FunctionType::RawCast(obj.ptr()))->ToString();
      |                                                                       ^~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:553:97: error: ‘class dart::Object’ has no member named ‘ptr’
  553 |                 return "FunctionType: " + app.typeDb->FindOrAdd(dart::FunctionType::RawCast(obj.ptr()))->ToString();
      |                                                                                                 ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:557:20: error: ‘kTypeParametersCid’ is not a member of ‘dart’; did you mean ‘kTypeParameterCid’?
  557 |         case dart::kTypeParametersCid:
      |                    ^~~~~~~~~~~~~~~~~~
      |                    kTypeParameterCid
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:559:86: error: ‘class dart::Object’ has no member named ‘ptr’
  559 |                 return std::format("{} (ptr: {:#x})", obj.ToCString(), (uint64_t)obj.ptr());
      |                                                                                      ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:564:20: error: ‘kConstMapCid’ is not a member of ‘dart’; did you mean ‘kContextCid’?
  564 |         case dart::kConstMapCid: {
      |                    ^~~~~~~~~~~~
      |                    kContextCid
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:565:35: error: ‘dart::Map’ has not been declared
  565 |                 auto& map = dart::Map::Cast(obj);
      |                                   ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:573:23: error: ‘dart::Map’ has not been declared
  573 |                 dart::Map::Iterator iter(map);
      |                       ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:577:24: error: ‘iter’ was not declared in this scope
  577 |                 while (iter.MoveNext()) {
      |                        ^~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:588:20: error: ‘kConstSetCid’ is not a member of ‘dart’; did you mean ‘kContextCid’?
  588 |         case dart::kConstSetCid: {
      |                    ^~~~~~~~~~~~
      |                    kContextCid
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:589:35: error: ‘dart::Set’ has not been declared
  589 |                 auto& set = dart::Set::Cast(obj);
      |                                   ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:596:23: error: ‘dart::Set’ has not been declared
  596 |                 dart::Set::Iterator iter(set);
      |                       ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:599:24: error: ‘iter’ was not declared in this scope
  599 |                 while (iter.MoveNext()) {
      |                        ^~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:618:60: error: ‘const class dart::Namespace’ has no member named ‘target’
  618 |                 const auto& lib = dart::Library::Handle(ns.target());
      |                                                            ^~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:623:79: error: ‘class dart::Object’ has no member named ‘ptr’
  623 |                 return std::format("Obj!Object@{:x}", (uint32_t)(intptr_t)obj.ptr());
      |                                                                               ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:631:17: error: ‘FATAL’ was not declared in this scope
  631 |                 FATAL("Unhandle internal class %s (%ld)", app.GetClass(cid)->Name().c_str(), cid);
      |                 ^~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:635:46: error: ‘class dart::Object’ has no member named ‘ptr’
  635 |         knownObjectPtrs.insert((intptr_t)obj.ptr());
      |                                              ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp: In member function ‘std::string DartDumper::dumpInstance(dart::Object&, bool, bool, int)’:
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:647:32: error: ‘dart::UntaggedObject’ has not been declared
  647 |         const auto ptr = dart::UntaggedObject::ToAddr(obj.ptr());
      |                                ^~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:647:59: error: ‘class dart::Object’ has no member named ‘ptr’
  647 |         const auto ptr = dart::UntaggedObject::ToAddr(obj.ptr());
      |                                                           ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:650:94: error: ‘class dart::Object’ has no member named ‘ptr’
  650 |                 return std::format("Obj!{}@{:x}", dtype->ToString(), (uint32_t)(intptr_t)obj.ptr());
      |                                                                                              ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:662:92: error: ‘class dart::Object’ has no member named ‘ptr’
  662 |         ss << std::format("Obj!{}@{:x} : {{\n", dtype->ToString(), (uint32_t)(intptr_t)obj.ptr());
      |                                                                                            ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp: In member function ‘std::string DartDumper::dumpInstanceFields(dart::Object&, DartClass&, intptr_t, intptr_t, bool, bool, int)’:
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:701:47: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  701 |                 if (bitmap.Get(offset / dart::kCompressedWordSize)) {
      |                                               ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:704:35: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  704 |                         if (dart::kCompressedWordSize == 4)
      |                                   ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:705:75: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  705 |                                 RELEASE_ASSERT(bitmap.Get((offset + dart::kCompressedWordSize) / dart::kCompressedWordSize));
      |                                                                           ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:705:104: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  705 |                                 RELEASE_ASSERT(bitmap.Get((offset + dart::kCompressedWordSize) / dart::kCompressedWordSize));
      |                                                                                                        ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:714:41: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  714 |                         offset += dart::kCompressedWordSize;
      |                                         ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:718:57: error: ‘CompressedObjectPtr’ in namespace ‘dart’ does not name a type
  718 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                         ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:718:76: error: expected ‘>’ before ‘*’ token
  718 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                                            ^
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:718:76: error: expected ‘(’ before ‘*’ token
  718 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                                            ^
      |                                                                            (
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:718:77: error: expected primary-expression before ‘>’ token
  718 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                                             ^
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:718:92: error: expected ‘)’ before ‘;’ token
  718 |                         auto p = reinterpret_cast<dart::CompressedObjectPtr*>(ptr + offset);
      |                                                                                            ^
      |                                                                                            )
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:719:41: error: ‘CompressedObjectPtr’ is not a member of ‘dart’
  719 |                         if (*p != dart::CompressedObjectPtr(0)) {
      |                                         ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:736:33: error: ‘kCompressedWordSize’ is not a member of ‘dart’
  736 |                 offset += dart::kCompressedWordSize;
      |                                 ^~~~~~~~~~~~~~~~~~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp: In member function ‘void DartDumper::DumpObjectPool(const char*)’:
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:797:35: error: ‘const class dart::ObjectPool’ has no member named ‘ptr’
  797 |         const auto& rawObj = pool.ptr()->untag();
      |                                   ^~~
/home/ql/桌面/blutter/blutter/src/DartDumper.cpp:798:37: error: ‘dart::UntaggedObject’ has not been declared
  798 |         const auto raw_addr = dart::UntaggedObject::ToAddr(rawObj);
      |                                     ^~~~~~~~~~~~~~
ninja: build stopped: subcommand failed.
Traceback (most recent call last):
  File "/home/ql/桌面/blutter/blutter.py", line 138, in <module>
    main(args.indir, args.outdir, args.rebuild, args.vs_sln)
  File "/home/ql/桌面/blutter/blutter.py", line 120, in main
    cmake_blutter(blutter_name, dartlib_name, macros)
  File "/home/ql/桌面/blutter/blutter.py", line 76, in cmake_blutter
    subprocess.run([NINJA_CMD], cwd=builddir, check=True)
  File "/usr/lib/python3.11/subprocess.py", line 571, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['ninja']' returned non-zero exit status 1.

Dart version 2.10 is too old for this project. The oldest version I test for this project is Dart version 2.16.

Dart version 2.10 is too old for this project. The oldest version I test for this project is Dart version 2.16.

所以我如果要解密这个版本的,我需要切换到旧分支?还是怎么操作?
So if I want to decrypt this version, do I need to switch to the old branch? Or how?